@valtimo/zgw 12.14.1 → 13.0.1
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-zgw.mjs +701 -1181
- package/fesm2022/valtimo-zgw.mjs.map +1 -1
- package/lib/components/case-management-zgw/case-management-zgw.component.d.ts +35 -0
- package/lib/components/case-management-zgw/case-management-zgw.component.d.ts.map +1 -0
- package/lib/components/case-management-zgw-general/case-management-zgw-general.component.d.ts +6 -0
- package/lib/components/case-management-zgw-general/case-management-zgw-general.component.d.ts.map +1 -0
- package/lib/components/index.d.ts +1 -1
- package/lib/components/index.d.ts.map +1 -1
- package/lib/models/{dossier-management-zgw.model.d.ts → case-management-zgw.model.d.ts} +3 -2
- package/lib/models/case-management-zgw.model.d.ts.map +1 -0
- package/lib/models/index.d.ts +1 -1
- package/lib/models/index.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-column-modal/documenten-api-column-modal.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-columns/documenten-api-columns.component.d.ts +6 -4
- package/lib/modules/documenten-api/components/documenten-api-columns/documenten-api-columns.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.d.ts +19 -17
- package/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-filter/documenten-api-filter.component.d.ts +2 -1
- package/lib/modules/documenten-api/components/documenten-api-filter/documenten-api-filter.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/{documenten-api-link-upload-process/dossier-management-link-process.component.d.ts → documenten-api-link-process/case-management-link-process.component.d.ts} +15 -9
- package/lib/modules/documenten-api/components/documenten-api-link-process/case-management-link-process.component.d.ts.map +1 -0
- package/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts +5 -3
- package/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-tag-modal/documenten-api-tag-modal.component.d.ts +2 -2
- package/lib/modules/documenten-api/components/documenten-api-tag-modal/documenten-api-tag-modal.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-tags/documenten-api-tags.component.d.ts +5 -6
- package/lib/modules/documenten-api/components/documenten-api-tags/documenten-api-tags.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.d.ts +6 -3
- package/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.d.ts +8 -6
- package/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/documenten-api-version/documenten-api-version.component.d.ts +1 -1
- package/lib/modules/documenten-api/components/documenten-api-version/documenten-api-version.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/components/index.d.ts +1 -1
- package/lib/modules/documenten-api/components/index.d.ts.map +1 -1
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts +7 -9
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.formio.d.ts.map +1 -1
- package/lib/modules/documenten-api/services/documenten-api-column.service.d.ts +2 -2
- package/lib/modules/documenten-api/services/documenten-api-column.service.d.ts.map +1 -1
- package/lib/modules/documenten-api/services/documenten-api-document.service.d.ts +1 -1
- package/lib/modules/documenten-api/services/documenten-api-link-process.service.d.ts +4 -4
- package/lib/modules/documenten-api/services/documenten-api-link-process.service.d.ts.map +1 -1
- package/lib/modules/documenten-api/services/documenten-api-tag.service.d.ts +1 -1
- package/lib/modules/documenten-api/services/documenten-api-version.service.d.ts +2 -2
- package/lib/modules/documenten-api/services/documenten-api-version.service.d.ts.map +1 -1
- package/lib/modules/index.d.ts +0 -2
- package/lib/modules/index.d.ts.map +1 -1
- package/lib/modules/objecten-api/components/object-type/object-type.component.d.ts +3 -3
- package/lib/modules/objecten-api/components/object-type/object-type.component.d.ts.map +1 -1
- package/lib/modules/objecten-api/components/zaakobjecten/zaakobjecten.component.d.ts +3 -3
- package/lib/modules/objecten-api/components/zaakobjecten/zaakobjecten.component.d.ts.map +1 -1
- package/lib/modules/objecten-api/services/zaakobjecten.service.d.ts +1 -1
- package/lib/modules/zaakdetails/components/document-objecten-api-sync/document-objecten-api-sync.component.d.ts +14 -7
- package/lib/modules/zaakdetails/components/document-objecten-api-sync/document-objecten-api-sync.component.d.ts.map +1 -1
- package/lib/modules/zaakdetails/services/document-objecten-api-sync.service.d.ts +4 -6
- package/lib/modules/zaakdetails/services/document-objecten-api-sync.service.d.ts.map +1 -1
- package/lib/modules/zaken-api/components/zaken-api-zaaktype-link/zaken-api-zaaktype-link.component.d.ts +20 -21
- package/lib/modules/zaken-api/components/zaken-api-zaaktype-link/zaken-api-zaaktype-link.component.d.ts.map +1 -1
- package/lib/modules/zaken-api/models/zaken-api-zaaktype-link.model.d.ts.map +1 -1
- package/lib/modules/zaken-api/services/zaken-api-zaaktype-link.service.d.ts +1 -1
- package/lib/services/{dossier-management-zgw.service.d.ts → case-management-zgw.service.d.ts} +4 -4
- package/lib/services/case-management-zgw.service.d.ts.map +1 -0
- package/lib/services/index.d.ts +1 -1
- package/lib/services/index.d.ts.map +1 -1
- package/lib/zgw.module.d.ts +1 -2
- package/lib/zgw.module.d.ts.map +1 -1
- package/package.json +7 -9
- package/public_api.d.ts +0 -2
- package/public_api.d.ts.map +1 -1
- package/esm2022/lib/components/dossier-management-zgw/dossier-management-zgw.component.mjs +0 -91
- package/esm2022/lib/components/index.mjs +0 -17
- package/esm2022/lib/models/dossier-management-zgw.model.mjs +0 -23
- package/esm2022/lib/models/index.mjs +0 -17
- package/esm2022/lib/modules/contactmomenten/components/contact-moments/contact-moments.component.mjs +0 -89
- package/esm2022/lib/modules/contactmomenten/components/index.mjs +0 -17
- package/esm2022/lib/modules/contactmomenten/index.mjs +0 -19
- package/esm2022/lib/modules/contactmomenten/models/contact-moment.model.mjs +0 -17
- package/esm2022/lib/modules/contactmomenten/models/index.mjs +0 -17
- package/esm2022/lib/modules/contactmomenten/services/contact-moment.service.mjs +0 -43
- package/esm2022/lib/modules/contactmomenten/services/index.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/components/documenten-api-column-modal/documenten-api-column-modal.component.mjs +0 -175
- package/esm2022/lib/modules/documenten-api/components/documenten-api-columns/documenten-api-columns.component.mjs +0 -142
- package/esm2022/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.mjs +0 -443
- package/esm2022/lib/modules/documenten-api/components/documenten-api-filter/documenten-api-filter.component.mjs +0 -174
- package/esm2022/lib/modules/documenten-api/components/documenten-api-link-upload-process/dossier-management-link-process.component.mjs +0 -100
- package/esm2022/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.mjs +0 -541
- package/esm2022/lib/modules/documenten-api/components/documenten-api-tag-modal/documenten-api-tag-modal.component.mjs +0 -116
- package/esm2022/lib/modules/documenten-api/components/documenten-api-tags/documenten-api-tags.component.mjs +0 -162
- package/esm2022/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.mjs +0 -183
- package/esm2022/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.mjs +0 -118
- package/esm2022/lib/modules/documenten-api/components/documenten-api-version/documenten-api-version.component.mjs +0 -43
- package/esm2022/lib/modules/documenten-api/components/index.mjs +0 -27
- package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader-edit-form.mjs +0 -554
- package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.mjs +0 -256
- package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.formio.mjs +0 -46
- package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/index.mjs +0 -19
- package/esm2022/lib/modules/documenten-api/formio/index.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/index.mjs +0 -20
- package/esm2022/lib/modules/documenten-api/models/configured-column.model.mjs +0 -27
- package/esm2022/lib/modules/documenten-api/models/documenten-api-column-modal.model.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/models/documenten-api-filter.model.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/models/documenten-api-link-process.model.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/models/documenten-api-metadata.model.mjs +0 -34
- package/esm2022/lib/modules/documenten-api/models/documenten-api-tag.model.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/models/documenten-api-upload-field.model.mjs +0 -33
- package/esm2022/lib/modules/documenten-api/models/documenten-api-version.model.mjs +0 -17
- package/esm2022/lib/modules/documenten-api/models/documenten-api.model.mjs +0 -37
- package/esm2022/lib/modules/documenten-api/models/index.mjs +0 -23
- package/esm2022/lib/modules/documenten-api/services/documenten-api-column.service.mjs +0 -38
- package/esm2022/lib/modules/documenten-api/services/documenten-api-document.service.mjs +0 -58
- package/esm2022/lib/modules/documenten-api/services/documenten-api-link-process.service.mjs +0 -51
- package/esm2022/lib/modules/documenten-api/services/documenten-api-tag.service.mjs +0 -36
- package/esm2022/lib/modules/documenten-api/services/documenten-api-version.service.mjs +0 -50
- package/esm2022/lib/modules/documenten-api/services/index.mjs +0 -21
- package/esm2022/lib/modules/haalcentraal-brp/components/cases-list/cases-list.component.mjs +0 -56
- package/esm2022/lib/modules/haalcentraal-brp/components/customer-list/customer-list.component.mjs +0 -133
- package/esm2022/lib/modules/haalcentraal-brp/customer-routing.module.mjs +0 -51
- package/esm2022/lib/modules/haalcentraal-brp/customer.module.mjs +0 -76
- package/esm2022/lib/modules/haalcentraal-brp/index.mjs +0 -19
- package/esm2022/lib/modules/haalcentraal-brp/models/case.mjs +0 -17
- package/esm2022/lib/modules/haalcentraal-brp/models/customer.mjs +0 -17
- package/esm2022/lib/modules/haalcentraal-brp/models/index.mjs +0 -18
- package/esm2022/lib/modules/haalcentraal-brp/services/customer.service.mjs +0 -43
- package/esm2022/lib/modules/haalcentraal-brp/services/index.mjs +0 -17
- package/esm2022/lib/modules/index.mjs +0 -22
- package/esm2022/lib/modules/objecten-api/components/index.mjs +0 -18
- package/esm2022/lib/modules/objecten-api/components/object-type/object-type.component.mjs +0 -122
- package/esm2022/lib/modules/objecten-api/components/zaakobjecten/zaakobjecten.component.mjs +0 -125
- package/esm2022/lib/modules/objecten-api/index.mjs +0 -19
- package/esm2022/lib/modules/objecten-api/models/index.mjs +0 -17
- package/esm2022/lib/modules/objecten-api/models/zaakobjecten.model.mjs +0 -17
- package/esm2022/lib/modules/objecten-api/services/index.mjs +0 -17
- package/esm2022/lib/modules/objecten-api/services/zaakobjecten.service.mjs +0 -44
- package/esm2022/lib/modules/zaakdetails/components/document-objecten-api-sync/document-objecten-api-sync.component.mjs +0 -127
- package/esm2022/lib/modules/zaakdetails/components/index.mjs +0 -17
- package/esm2022/lib/modules/zaakdetails/index.mjs +0 -19
- package/esm2022/lib/modules/zaakdetails/models/document-objecten-api-sync.model.mjs +0 -2
- package/esm2022/lib/modules/zaakdetails/models/index.mjs +0 -17
- package/esm2022/lib/modules/zaakdetails/services/document-objecten-api-sync.service.mjs +0 -51
- package/esm2022/lib/modules/zaakdetails/services/index.mjs +0 -17
- package/esm2022/lib/modules/zaken-api/components/index.mjs +0 -17
- package/esm2022/lib/modules/zaken-api/components/zaken-api-zaaktype-link/zaken-api-zaaktype-link.component.mjs +0 -183
- package/esm2022/lib/modules/zaken-api/index.mjs +0 -19
- package/esm2022/lib/modules/zaken-api/models/index.mjs +0 -17
- package/esm2022/lib/modules/zaken-api/models/zaken-api-zaaktype-link.model.mjs +0 -2
- package/esm2022/lib/modules/zaken-api/services/index.mjs +0 -17
- package/esm2022/lib/modules/zaken-api/services/zaken-api-zaaktype-link.service.mjs +0 -39
- package/esm2022/lib/services/dossier-management-zgw.service.mjs +0 -43
- package/esm2022/lib/services/index.mjs +0 -17
- package/esm2022/lib/zgw.module.mjs +0 -123
- package/esm2022/public_api.mjs +0 -27
- package/esm2022/valtimo-zgw.mjs +0 -5
- package/lib/components/dossier-management-zgw/dossier-management-zgw.component.d.ts +0 -24
- package/lib/components/dossier-management-zgw/dossier-management-zgw.component.d.ts.map +0 -1
- package/lib/models/dossier-management-zgw.model.d.ts.map +0 -1
- package/lib/modules/contactmomenten/components/contact-moments/contact-moments.component.d.ts +0 -29
- package/lib/modules/contactmomenten/components/contact-moments/contact-moments.component.d.ts.map +0 -1
- package/lib/modules/contactmomenten/components/index.d.ts +0 -2
- package/lib/modules/contactmomenten/components/index.d.ts.map +0 -1
- package/lib/modules/contactmomenten/index.d.ts +0 -4
- package/lib/modules/contactmomenten/index.d.ts.map +0 -1
- package/lib/modules/contactmomenten/models/contact-moment.model.d.ts +0 -14
- package/lib/modules/contactmomenten/models/contact-moment.model.d.ts.map +0 -1
- package/lib/modules/contactmomenten/models/index.d.ts +0 -2
- package/lib/modules/contactmomenten/models/index.d.ts.map +0 -1
- package/lib/modules/contactmomenten/services/contact-moment.service.d.ts +0 -18
- package/lib/modules/contactmomenten/services/contact-moment.service.d.ts.map +0 -1
- package/lib/modules/contactmomenten/services/index.d.ts +0 -2
- package/lib/modules/contactmomenten/services/index.d.ts.map +0 -1
- package/lib/modules/documenten-api/components/documenten-api-link-upload-process/dossier-management-link-process.component.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/components/cases-list/cases-list.component.d.ts +0 -20
- package/lib/modules/haalcentraal-brp/components/cases-list/cases-list.component.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/components/customer-list/customer-list.component.d.ts +0 -39
- package/lib/modules/haalcentraal-brp/components/customer-list/customer-list.component.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/customer-routing.module.d.ts +0 -9
- package/lib/modules/haalcentraal-brp/customer-routing.module.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/customer.module.d.ts +0 -17
- package/lib/modules/haalcentraal-brp/customer.module.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/index.d.ts +0 -4
- package/lib/modules/haalcentraal-brp/index.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/models/case.d.ts +0 -8
- package/lib/modules/haalcentraal-brp/models/case.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/models/customer.d.ts +0 -22
- package/lib/modules/haalcentraal-brp/models/customer.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/models/index.d.ts +0 -3
- package/lib/modules/haalcentraal-brp/models/index.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/services/customer.service.d.ts +0 -18
- package/lib/modules/haalcentraal-brp/services/customer.service.d.ts.map +0 -1
- package/lib/modules/haalcentraal-brp/services/index.d.ts +0 -2
- package/lib/modules/haalcentraal-brp/services/index.d.ts.map +0 -1
- package/lib/services/dossier-management-zgw.service.d.ts.map +0 -1
package/fesm2022/valtimo-zgw.mjs
CHANGED
|
@@ -1,39 +1,38 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, EventEmitter, Output, Input, ChangeDetectionStrategy, Component, ViewChild, signal, NgModule, ViewContainerRef } from '@angular/core';
|
|
3
|
-
import * as i6 from 'carbon-components-angular';
|
|
4
|
-
import { ModalModule, InputModule, ButtonModule, DropdownModule, RadioModule, NotificationModule, LayerModule, TagModule, IconModule, DatePickerInputModule, DatePickerModule, ComboBoxModule, TooltipModule, DialogModule, ToggleModule, CheckboxModule, LoadingModule, TabsModule } from 'carbon-components-angular';
|
|
5
|
-
import * as i3 from '@ngx-translate/core';
|
|
6
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
7
1
|
import * as i4 from '@angular/common';
|
|
8
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Injectable, EventEmitter, Output, Input, ChangeDetectionStrategy, Component, ViewChild, HostListener, signal, ViewContainerRef, NgModule } from '@angular/core';
|
|
5
|
+
import * as i5 from '@ngx-translate/core';
|
|
6
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
7
|
+
import { CaseManagementDraftWarningComponent } from '@valtimo/case-management';
|
|
8
|
+
import * as i2 from '@valtimo/shared';
|
|
9
|
+
import { BaseApiService, getCaseManagementRouteParams, UploadProvider, CASE_MANAGEMENT_TAB_TOKEN, ZGW_OBJECT_TYPE_COMPONENT_TOKEN, ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN, CASE_CONFIGURATION_EXTENSIONS_TOKEN } from '@valtimo/shared';
|
|
10
|
+
import * as i5$1 from 'carbon-components-angular';
|
|
11
|
+
import { ModalModule, InputModule, ButtonModule, DropdownModule, RadioModule, NotificationModule, LayerModule, TagModule, IconModule, DatePickerInputModule, DatePickerModule, ComboBoxModule, TooltipModule, DialogModule, ToggleModule, CheckboxModule, LoadingModule, TilesModule, SelectModule as SelectModule$1, TabsModule } from 'carbon-components-angular';
|
|
12
|
+
import { BehaviorSubject, combineLatest, map, Subscription, switchMap, filter, tap, startWith, debounceTime, Subject, take as take$1, of, from, ReplaySubject, finalize, distinctUntilChanged } from 'rxjs';
|
|
9
13
|
import * as i1$1 from '@angular/forms';
|
|
10
|
-
import { Validators, ReactiveFormsModule,
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import { CARBON_CONSTANTS, ViewType, CarbonListModule, ConfirmationModalModule, InputLabelModule, InputModule as InputModule$1, SelectModule, VModalModule, DEFAULT_PAGINATION, DEFAULT_PAGINATOR_CONFIG, ParagraphModule, CarbonListComponent, createCustomFormioComponent, registerCustomFormioComponentWithClass, TableModule, TitleModule, FormIoModule, TimelineItemImpl, ModalModule as ModalModule$1, SpinnerModule, TimelineModule, WidgetModule, ListModule, FilterSidebarModule, PageModule, FormModule, ValtimoCdsModalDirectiveModule, DropzoneModule, FileSizeModule } from '@valtimo/components';
|
|
14
|
-
import * as i2 from '@valtimo/config';
|
|
15
|
-
import { BaseApiService, UploadProvider, ROLE_USER, CASE_MANAGEMENT_TAB_TOKEN, ZGW_OBJECT_TYPE_COMPONENT_TOKEN, ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN, ZGW_CASE_CONFIGURATION_EXTENSIONS_TOKEN } from '@valtimo/config';
|
|
14
|
+
import { Validators, ReactiveFormsModule, FormGroup, FormControl, FormsModule } from '@angular/forms';
|
|
15
|
+
import * as i3 from '@valtimo/components';
|
|
16
|
+
import { CARBON_CONSTANTS, ViewType, CarbonListModule, ConfirmationModalModule, InputLabelModule, InputModule as InputModule$1, SelectModule, VModalModule, DEFAULT_PAGINATION, DEFAULT_PAGINATOR_CONFIG, CarbonListComponent, registerCustomFormioComponent, ParagraphModule, TableModule, FormIoModule, FormModule, SpinnerModule, ValtimoCdsModalDirective, RenderInBodyComponent, MuuriDirectiveModule, DropzoneModule, FileSizeModule } from '@valtimo/components';
|
|
16
17
|
import * as i1 from '@angular/common/http';
|
|
17
18
|
import { HttpParams } from '@angular/common/http';
|
|
19
|
+
import { take, tap as tap$1, map as map$1, filter as filter$1, switchMap as switchMap$1, catchError } from 'rxjs/operators';
|
|
18
20
|
import * as i1$2 from '@angular/router';
|
|
19
|
-
import { RouterModule } from '@angular/router';
|
|
20
|
-
import { TrashCan16, Filter16, TagGroup16, Upload16 } from '@carbon/icons';
|
|
21
|
-
import * as
|
|
21
|
+
import { NavigationEnd, RouterModule } from '@angular/router';
|
|
22
|
+
import { TrashCan16, Filter16, TagGroup16, Upload16, Edit16, Save16 } from '@carbon/icons';
|
|
23
|
+
import * as i5$3 from '@valtimo/resource';
|
|
22
24
|
import { CAN_CREATE_RESOURCE_PERMISSION, RESOURCE_PERMISSION_RESOURCE, CAN_DELETE_RESOURCE_PERMISSION, CAN_MODIFY_RESOURCE_PERMISSION, CAN_VIEW_RESOURCE_PERMISSION, ResourceModule } from '@valtimo/resource';
|
|
23
|
-
import { tap as tap$1, map as map$1, filter as filter$1, switchMap as switchMap$1, catchError, take as take$1, debounceTime as debounceTime$1 } from 'rxjs/operators';
|
|
24
25
|
import flatpickr from 'flatpickr';
|
|
25
|
-
import * as
|
|
26
|
+
import * as i4$1 from '@valtimo/document';
|
|
26
27
|
import { DocumentModule } from '@valtimo/document';
|
|
27
28
|
import moment from 'moment';
|
|
28
|
-
import * as i5 from 'keycloak-angular';
|
|
29
|
-
import * as
|
|
30
|
-
import
|
|
31
|
-
import * as i9 from '@valtimo/access-control';
|
|
32
|
-
import * as i4$1 from 'ngx-toastr';
|
|
29
|
+
import * as i5$2 from 'keycloak-angular';
|
|
30
|
+
import * as i7 from '@valtimo/access-control';
|
|
31
|
+
import * as i10 from '@valtimo/security';
|
|
33
32
|
import { FormioModule } from '@formio/angular';
|
|
34
33
|
|
|
35
34
|
/*
|
|
36
|
-
* Copyright 2015-
|
|
35
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
37
36
|
*
|
|
38
37
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
39
38
|
* you may not use this file except in compliance with the License.
|
|
@@ -52,10 +51,11 @@ var ZgwTabEnum;
|
|
|
52
51
|
ZgwTabEnum["DOCUMENTEN_API_COLUMNS"] = "documentenApiColumns";
|
|
53
52
|
ZgwTabEnum["DOCUMENTEN_API_TAGS"] = "documentenApiTags";
|
|
54
53
|
ZgwTabEnum["DOCUMENTEN_API_UPLOAD_FIELDS"] = "documentenApiUploadFields";
|
|
54
|
+
ZgwTabEnum["GENERAL"] = "general";
|
|
55
55
|
})(ZgwTabEnum || (ZgwTabEnum = {}));
|
|
56
56
|
|
|
57
57
|
/*
|
|
58
|
-
* Copyright 2015-
|
|
58
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
59
59
|
*
|
|
60
60
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
61
61
|
* you may not use this file except in compliance with the License.
|
|
@@ -75,8 +75,8 @@ class DocumentenApiColumnService extends BaseApiService {
|
|
|
75
75
|
super(http, configService);
|
|
76
76
|
this.http = http;
|
|
77
77
|
}
|
|
78
|
-
getConfiguredColumns(
|
|
79
|
-
return this.http.get(this.getApiUrl(`/v1/case-definition/${
|
|
78
|
+
getConfiguredColumns(caseDefinitionKey) {
|
|
79
|
+
return this.http.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/zgw-document-column`));
|
|
80
80
|
}
|
|
81
81
|
getAdminConfiguredColumns(caseDefinitionName) {
|
|
82
82
|
return this.http.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document-column`));
|
|
@@ -93,10 +93,10 @@ class DocumentenApiColumnService extends BaseApiService {
|
|
|
93
93
|
updateConfiguredColumns(caseDefinitionKey, orderColumns) {
|
|
94
94
|
return this.http.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/zgw-document-column`), orderColumns);
|
|
95
95
|
}
|
|
96
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
97
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
96
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
97
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnService, providedIn: 'root' }); }
|
|
98
98
|
}
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnService, decorators: [{
|
|
100
100
|
type: Injectable,
|
|
101
101
|
args: [{
|
|
102
102
|
providedIn: 'root',
|
|
@@ -104,7 +104,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
104
104
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
105
105
|
|
|
106
106
|
/*
|
|
107
|
-
* Copyright 2015-
|
|
107
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
108
108
|
*
|
|
109
109
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
110
110
|
* you may not use this file except in compliance with the License.
|
|
@@ -145,10 +145,10 @@ class DocumentenApiDocumentService extends BaseApiService {
|
|
|
145
145
|
updateUploadField(caseDefinitionName, uploadField) {
|
|
146
146
|
return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/upload-field`), uploadField);
|
|
147
147
|
}
|
|
148
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
149
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
148
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiDocumentService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
149
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiDocumentService, providedIn: 'root' }); }
|
|
150
150
|
}
|
|
151
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
151
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiDocumentService, decorators: [{
|
|
152
152
|
type: Injectable,
|
|
153
153
|
args: [{
|
|
154
154
|
providedIn: 'root',
|
|
@@ -156,7 +156,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
156
156
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
157
157
|
|
|
158
158
|
/*
|
|
159
|
-
* Copyright 2015-
|
|
159
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
160
160
|
*
|
|
161
161
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
162
162
|
* you may not use this file except in compliance with the License.
|
|
@@ -179,22 +179,22 @@ class DocumentenApiLinkProcessService extends BaseApiService {
|
|
|
179
179
|
getProcessDefinitions() {
|
|
180
180
|
return this.httpClient.get(this.getApiUrl('/v1/process/definition'));
|
|
181
181
|
}
|
|
182
|
-
getLinkedUploadProcess(
|
|
183
|
-
return this.httpClient.get(this.getApiUrl(
|
|
182
|
+
getLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
183
|
+
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process/DOCUMENT_UPLOAD`));
|
|
184
184
|
}
|
|
185
|
-
updateLinkedUploadProcess(
|
|
186
|
-
return this.httpClient.put(this.getApiUrl(
|
|
185
|
+
updateLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag, processDefinitionKey) {
|
|
186
|
+
return this.httpClient.put(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process`), {
|
|
187
187
|
processDefinitionKey,
|
|
188
188
|
linkType: 'DOCUMENT_UPLOAD',
|
|
189
189
|
});
|
|
190
190
|
}
|
|
191
|
-
deleteLinkedUploadProcess(
|
|
192
|
-
return this.httpClient.delete(this.getApiUrl(
|
|
191
|
+
deleteLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
192
|
+
return this.httpClient.delete(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process/DOCUMENT_UPLOAD`));
|
|
193
193
|
}
|
|
194
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
195
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
194
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiLinkProcessService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
195
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiLinkProcessService, providedIn: 'root' }); }
|
|
196
196
|
}
|
|
197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
197
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiLinkProcessService, decorators: [{
|
|
198
198
|
type: Injectable,
|
|
199
199
|
args: [{
|
|
200
200
|
providedIn: 'root',
|
|
@@ -222,10 +222,10 @@ class DocumentenApiTagService extends BaseApiService {
|
|
|
222
222
|
deleteTags(caseDefinitionName, tagKeys) {
|
|
223
223
|
return this.http.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/trefwoord`), { body: tagKeys });
|
|
224
224
|
}
|
|
225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
226
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
226
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagService, providedIn: 'root' }); }
|
|
227
227
|
}
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagService, decorators: [{
|
|
229
229
|
type: Injectable,
|
|
230
230
|
args: [{
|
|
231
231
|
providedIn: 'root',
|
|
@@ -233,7 +233,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
233
233
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
234
234
|
|
|
235
235
|
/*
|
|
236
|
-
* Copyright 2015-
|
|
236
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
237
237
|
*
|
|
238
238
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
239
239
|
* you may not use this file except in compliance with the License.
|
|
@@ -260,16 +260,16 @@ class DocumentenApiVersionService extends BaseApiService {
|
|
|
260
260
|
getManagementApiVersion(caseDefinitionName) {
|
|
261
261
|
return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/documenten-api/version`));
|
|
262
262
|
}
|
|
263
|
-
getSupportedApiFeatures(
|
|
264
|
-
return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${
|
|
263
|
+
getSupportedApiFeatures(caseDefinitionKey) {
|
|
264
|
+
return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/documenten-api/version`));
|
|
265
265
|
}
|
|
266
266
|
refresh() {
|
|
267
267
|
this._refresh$.next(null);
|
|
268
268
|
}
|
|
269
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
270
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
269
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
270
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionService, providedIn: 'root' }); }
|
|
271
271
|
}
|
|
272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionService, decorators: [{
|
|
273
273
|
type: Injectable,
|
|
274
274
|
args: [{
|
|
275
275
|
providedIn: 'root',
|
|
@@ -277,7 +277,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
277
277
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
278
278
|
|
|
279
279
|
/*
|
|
280
|
-
* Copyright 2015-
|
|
280
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
281
281
|
*
|
|
282
282
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
283
283
|
* you may not use this file except in compliance with the License.
|
|
@@ -293,7 +293,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
293
293
|
*/
|
|
294
294
|
|
|
295
295
|
/*
|
|
296
|
-
* Copyright 2015-
|
|
296
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
297
297
|
*
|
|
298
298
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
299
299
|
* you may not use this file except in compliance with the License.
|
|
@@ -423,10 +423,10 @@ class DocumentenApiColumnModalComponent {
|
|
|
423
423
|
this._notificationMessage$.next(this.showRadioButtons ? 'zgw.columns.defaultWarning' : 'zgw.columns.notSortable');
|
|
424
424
|
}));
|
|
425
425
|
}
|
|
426
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
427
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
426
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: i5.TranslateService }, { token: DocumentenApiColumnService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
427
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiColumnModalComponent, isStandalone: true, selector: "valtimo-documenten-api-column-modal", inputs: { definitionName: "definitionName", prefillColumn: "prefillColumn", type: "type", availableColumns: "availableColumns", configuredColumns: "configuredColumns" }, 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 valtimoCdsModal [open]=\"type !== 'closed'\" size=\"sm\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ (type === 'add' ? 'zgw.columns.add' : 'zgw.columns.edit') | translate }}\n </h3>\n </cds-modal-header>\n\n <form\n class=\"valtimo-documenten-api-column-modal__content\"\n cdsModalContent\n [formGroup]=\"formGroup\"\n [cdsLayer]=\"1\"\n >\n <cds-dropdown\n formControlName=\"column\"\n [label]=\"'zgw.columns.column' | translate\"\n [dropUp]=\"false\"\n >\n <cds-dropdown-list\n [items]=\"!prefillColumn ? (availableColumns$ | async) : prefillColumn\"\n ></cds-dropdown-list>\n </cds-dropdown>\n\n <cds-radio-group *ngIf=\"showRadioButtons\" legend=\"Default sort\" formControlName=\"defaultSort\">\n <cds-radio value=\"noDefault\"> {{ 'interface.sorting.noDefault' | translate }} </cds-radio>\n\n <cds-radio value=\"DESC\"> {{ 'interface.sorting.descending' | translate }} </cds-radio>\n\n <cds-radio value=\"ASC\"> {{ 'interface.sorting.ascending' | translate }} </cds-radio>\n </cds-radio-group>\n\n <cds-inline-notification [notificationObj]=\"notificationObj$ | async\"></cds-inline-notification>\n </form>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"formGroup.invalid\" (click)=\"updateColumn()\">\n {{ (type === 'add' ? 'interface.add' : 'interface.save') | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-documenten-api-column-modal__content{display:flex;flex-direction:column;gap: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: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i5$1.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5$1.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5$1.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5$1.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: InputModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i5$1.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "readonly", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp", "fluid"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i5$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: RadioModule }, { kind: "component", type: i5$1.Radio, selector: "cds-radio, ibm-radio", inputs: ["checked", "name", "disabled", "labelPlacement", "ariaLabelledby", "ariaLabel", "required", "value", "skeleton", "id"], outputs: ["change"] }, { kind: "component", type: i5$1.RadioGroup, selector: "cds-radio-group, ibm-radio-group", inputs: ["selected", "value", "name", "disabled", "skeleton", "orientation", "labelPlacement", "legend", "ariaLabel", "ariaLabelledby", "helperText", "invalid", "invalidText", "warn", "warnText"], outputs: ["change"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "component", type: i5$1.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
428
428
|
}
|
|
429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnModalComponent, decorators: [{
|
|
430
430
|
type: Component,
|
|
431
431
|
args: [{ selector: 'valtimo-documenten-api-column-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
432
432
|
CommonModule,
|
|
@@ -439,8 +439,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
439
439
|
RadioModule,
|
|
440
440
|
NotificationModule,
|
|
441
441
|
LayerModule,
|
|
442
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
443
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type:
|
|
442
|
+
], 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 [open]=\"type !== 'closed'\" size=\"sm\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ (type === 'add' ? 'zgw.columns.add' : 'zgw.columns.edit') | translate }}\n </h3>\n </cds-modal-header>\n\n <form\n class=\"valtimo-documenten-api-column-modal__content\"\n cdsModalContent\n [formGroup]=\"formGroup\"\n [cdsLayer]=\"1\"\n >\n <cds-dropdown\n formControlName=\"column\"\n [label]=\"'zgw.columns.column' | translate\"\n [dropUp]=\"false\"\n >\n <cds-dropdown-list\n [items]=\"!prefillColumn ? (availableColumns$ | async) : prefillColumn\"\n ></cds-dropdown-list>\n </cds-dropdown>\n\n <cds-radio-group *ngIf=\"showRadioButtons\" legend=\"Default sort\" formControlName=\"defaultSort\">\n <cds-radio value=\"noDefault\"> {{ 'interface.sorting.noDefault' | translate }} </cds-radio>\n\n <cds-radio value=\"DESC\"> {{ 'interface.sorting.descending' | translate }} </cds-radio>\n\n <cds-radio value=\"ASC\"> {{ 'interface.sorting.ascending' | translate }} </cds-radio>\n </cds-radio-group>\n\n <cds-inline-notification [notificationObj]=\"notificationObj$ | async\"></cds-inline-notification>\n </form>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"formGroup.invalid\" (click)=\"updateColumn()\">\n {{ (type === 'add' ? 'interface.add' : 'interface.save') | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-documenten-api-column-modal__content{display:flex;flex-direction:column;gap: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"] }]
|
|
443
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i5.TranslateService }, { type: DocumentenApiColumnService }], propDecorators: { definitionName: [{
|
|
444
444
|
type: Input
|
|
445
445
|
}], prefillColumn: [{
|
|
446
446
|
type: Input
|
|
@@ -455,7 +455,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
455
455
|
}] } });
|
|
456
456
|
|
|
457
457
|
/*
|
|
458
|
-
* Copyright 2015-
|
|
458
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
459
459
|
*
|
|
460
460
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
461
461
|
* you may not use this file except in compliance with the License.
|
|
@@ -470,26 +470,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
470
470
|
* limitations under the License.
|
|
471
471
|
*/
|
|
472
472
|
class DocumentenApiColumnsComponent {
|
|
473
|
-
|
|
474
|
-
return this._documentDefinitionName$;
|
|
475
|
-
}
|
|
476
|
-
constructor(route, zgwDocumentColumnService) {
|
|
473
|
+
constructor(route, zgwDocumentColumnService, editPermissionsService) {
|
|
477
474
|
this.route = route;
|
|
478
475
|
this.zgwDocumentColumnService = zgwDocumentColumnService;
|
|
476
|
+
this.editPermissionsService = editPermissionsService;
|
|
479
477
|
this._reload$ = new BehaviorSubject(null);
|
|
480
|
-
this.
|
|
478
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey));
|
|
479
|
+
this.caseDefinitionVersionTag$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionVersionTag ?? ''));
|
|
480
|
+
this.hasEditPermissions$ = combineLatest([
|
|
481
|
+
this.caseDefinitionKey$,
|
|
482
|
+
this.caseDefinitionVersionTag$,
|
|
483
|
+
]).pipe(switchMap(([caseDefinitionKey, caseDefinitionVersionTag]) => this.editPermissionsService.hasEditPermissions(caseDefinitionKey, caseDefinitionVersionTag)));
|
|
481
484
|
this.loading$ = new BehaviorSubject(true);
|
|
482
485
|
this.configuredColumns$ = combineLatest([
|
|
483
|
-
this.
|
|
486
|
+
this.caseDefinitionKey$,
|
|
484
487
|
this._reload$,
|
|
485
488
|
]).pipe(tap(([_, reload]) => {
|
|
486
489
|
if (reload === null)
|
|
487
490
|
this.loading$.next(true);
|
|
488
|
-
}), switchMap(([
|
|
491
|
+
}), switchMap(([caseDefinitionKey]) => this.zgwDocumentColumnService.getAdminConfiguredColumns(caseDefinitionKey)), tap(() => {
|
|
489
492
|
this.loading$.next(false);
|
|
490
493
|
}));
|
|
491
|
-
this.configurableColumns$ = this.
|
|
492
|
-
this.zgwDocumentColumnService.getAdminConfigurableColumns(
|
|
494
|
+
this.configurableColumns$ = this.caseDefinitionKey$.pipe(switchMap((caseDefinitionKey) => combineLatest([
|
|
495
|
+
this.zgwDocumentColumnService.getAdminConfigurableColumns(caseDefinitionKey),
|
|
493
496
|
this.configuredColumns$,
|
|
494
497
|
])), map(([configurableColumns, configuredColumns]) => {
|
|
495
498
|
const configuredKeys = configuredColumns.map((column) => column.key);
|
|
@@ -507,7 +510,6 @@ class DocumentenApiColumnsComponent {
|
|
|
507
510
|
type: 'danger',
|
|
508
511
|
},
|
|
509
512
|
];
|
|
510
|
-
this.CARBON_THEME = 'g10';
|
|
511
513
|
this.columnModalType$ = new BehaviorSubject('closed');
|
|
512
514
|
this.prefillColumn$ = new BehaviorSubject(undefined);
|
|
513
515
|
this.columnToUpdate$ = new BehaviorSubject(undefined);
|
|
@@ -534,8 +536,12 @@ class DocumentenApiColumnsComponent {
|
|
|
534
536
|
this.showDeleteModal$.next(true);
|
|
535
537
|
}
|
|
536
538
|
openEditModal(column) {
|
|
537
|
-
this.
|
|
538
|
-
|
|
539
|
+
this.hasEditPermissions$
|
|
540
|
+
.pipe(filter(hasPermission => hasPermission), take(1))
|
|
541
|
+
.subscribe(() => {
|
|
542
|
+
this.prefillColumn$.next(column);
|
|
543
|
+
this.columnModalType$.next('edit');
|
|
544
|
+
});
|
|
539
545
|
}
|
|
540
546
|
openAddModal() {
|
|
541
547
|
this.columnModalType$.next('add');
|
|
@@ -559,10 +565,10 @@ class DocumentenApiColumnsComponent {
|
|
|
559
565
|
reload(noAnimation = false) {
|
|
560
566
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
561
567
|
}
|
|
562
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
563
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
568
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiColumnService }, { token: i2.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
569
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiColumnsComponent, isStandalone: true, selector: "valtimo-documenten-api-columns", viewQueries: [{ propertyName: "columnKeyTemplate", first: true, predicate: ["columnKeyTemplate"], descendants: true }, { propertyName: "defaultSortTemplate", first: true, predicate: ["defaultSortTemplate"], 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<ng-container\n *ngIf=\"{\n columnModalType: columnModalType$ | async,\n columnToUpdate: columnToUpdate$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n configuredColumns: configuredColumns$ | async,\n configurableColumns: configurableColumns$ | async,\n loading: loading$ | async,\n prefillColumn: prefillColumn$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"ACTION_ITEMS\"\n [fields]=\"fields\"\n [header]=\"false\"\n [items]=\"obs.configuredColumns\"\n [loading]=\"obs.loading || !fields\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"!(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReordered(obs.caseDefinitionKey, $event)\"\n (rowClicked)=\"openEditModal($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container *ngTemplateOutlet=\"addButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-column-modal\n [availableColumns]=\"obs.configurableColumns\"\n [configuredColumns]=\"obs.configuredColumns\"\n [definitionName]=\"obs.caseDefinitionKey\"\n [prefillColumn]=\"obs.prefillColumn\"\n [type]=\"obs.columnModalType\"\n (closeModal)=\"onCloseModal($event)\"\n ></valtimo-documenten-api-column-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"zgw.columns.deleteText\"\n [outputOnConfirm]=\"columnToUpdate$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteStatus($event, obs.caseDefinitionKey)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n\n<ng-template #addButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n\n {{ 'zgw.columns.add' | translate }}\n </button>\n</ng-template>\n\n<ng-template #columnKeyTemplate let-data=\"data\">\n {{ 'zgw.documentColumns.' + data.item.key | translate }}\n</ng-template>\n\n<ng-template #defaultSortTemplate let-data=\"data\">\n {{\n data.item.defaultSort === null\n ? '-'\n : ('interface.sorting.' + (data.item.defaultSort === 'ASC' ? 'ascending' : 'descending')\n | translate)\n }}\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "component", type: DocumentenApiColumnModalComponent, selector: "valtimo-documenten-api-column-modal", inputs: ["definitionName", "prefillColumn", "type", "availableColumns", "configuredColumns"], outputs: ["closeModal"] }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "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: i3.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i3.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: TagModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
564
570
|
}
|
|
565
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
571
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiColumnsComponent, decorators: [{
|
|
566
572
|
type: Component,
|
|
567
573
|
args: [{ selector: 'valtimo-documenten-api-columns', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
568
574
|
CommonModule,
|
|
@@ -573,8 +579,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
573
579
|
TagModule,
|
|
574
580
|
ButtonModule,
|
|
575
581
|
IconModule,
|
|
576
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
577
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiColumnService }], propDecorators: { columnKeyTemplate: [{
|
|
582
|
+
], 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<ng-container\n *ngIf=\"{\n columnModalType: columnModalType$ | async,\n columnToUpdate: columnToUpdate$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n configuredColumns: configuredColumns$ | async,\n configurableColumns: configurableColumns$ | async,\n loading: loading$ | async,\n prefillColumn: prefillColumn$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"ACTION_ITEMS\"\n [fields]=\"fields\"\n [header]=\"false\"\n [items]=\"obs.configuredColumns\"\n [loading]=\"obs.loading || !fields\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"!(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReordered(obs.caseDefinitionKey, $event)\"\n (rowClicked)=\"openEditModal($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container *ngTemplateOutlet=\"addButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-column-modal\n [availableColumns]=\"obs.configurableColumns\"\n [configuredColumns]=\"obs.configuredColumns\"\n [definitionName]=\"obs.caseDefinitionKey\"\n [prefillColumn]=\"obs.prefillColumn\"\n [type]=\"obs.columnModalType\"\n (closeModal)=\"onCloseModal($event)\"\n ></valtimo-documenten-api-column-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"zgw.columns.deleteText\"\n [outputOnConfirm]=\"columnToUpdate$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteStatus($event, obs.caseDefinitionKey)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n\n<ng-template #addButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n\n {{ 'zgw.columns.add' | translate }}\n </button>\n</ng-template>\n\n<ng-template #columnKeyTemplate let-data=\"data\">\n {{ 'zgw.documentColumns.' + data.item.key | translate }}\n</ng-template>\n\n<ng-template #defaultSortTemplate let-data=\"data\">\n {{\n data.item.defaultSort === null\n ? '-'\n : ('interface.sorting.' + (data.item.defaultSort === 'ASC' ? 'ascending' : 'descending')\n | translate)\n }}\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"] }]
|
|
583
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiColumnService }, { type: i2.EditPermissionsService }], propDecorators: { columnKeyTemplate: [{
|
|
578
584
|
type: ViewChild,
|
|
579
585
|
args: ['columnKeyTemplate']
|
|
580
586
|
}], defaultSortTemplate: [{
|
|
@@ -583,7 +589,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
583
589
|
}] } });
|
|
584
590
|
|
|
585
591
|
/*
|
|
586
|
-
* Copyright 2015-
|
|
592
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
587
593
|
*
|
|
588
594
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
589
595
|
* you may not use this file except in compliance with the License.
|
|
@@ -616,7 +622,7 @@ const STATUS_ITEMS = [
|
|
|
616
622
|
const LANGUAGE_ITEMS = ['nld', 'eng', 'deu'];
|
|
617
623
|
|
|
618
624
|
/*
|
|
619
|
-
* Copyright 2015-
|
|
625
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
620
626
|
*
|
|
621
627
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
622
628
|
* you may not use this file except in compliance with the License.
|
|
@@ -652,7 +658,7 @@ var DOCUMENTEN_COLUMN_KEYS;
|
|
|
652
658
|
})(DOCUMENTEN_COLUMN_KEYS || (DOCUMENTEN_COLUMN_KEYS = {}));
|
|
653
659
|
|
|
654
660
|
/*
|
|
655
|
-
* Copyright 2015-
|
|
661
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
656
662
|
*
|
|
657
663
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
658
664
|
* you may not use this file except in compliance with the License.
|
|
@@ -676,7 +682,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
676
682
|
};
|
|
677
683
|
|
|
678
684
|
/*
|
|
679
|
-
* Copyright 2015-
|
|
685
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
680
686
|
*
|
|
681
687
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
682
688
|
* you may not use this file except in compliance with the License.
|
|
@@ -692,7 +698,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
692
698
|
*/
|
|
693
699
|
|
|
694
700
|
/*
|
|
695
|
-
* Copyright 2015-
|
|
701
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
696
702
|
*
|
|
697
703
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
698
704
|
* you may not use this file except in compliance with the License.
|
|
@@ -708,7 +714,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
708
714
|
*/
|
|
709
715
|
|
|
710
716
|
/*
|
|
711
|
-
* Copyright 2015-
|
|
717
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
712
718
|
*
|
|
713
719
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
714
720
|
* you may not use this file except in compliance with the License.
|
|
@@ -724,7 +730,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
724
730
|
*/
|
|
725
731
|
|
|
726
732
|
/*
|
|
727
|
-
* Copyright 2015-
|
|
733
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
728
734
|
*
|
|
729
735
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
730
736
|
* you may not use this file except in compliance with the License.
|
|
@@ -740,7 +746,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
740
746
|
*/
|
|
741
747
|
|
|
742
748
|
/*
|
|
743
|
-
* Copyright 2015-
|
|
749
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
744
750
|
*
|
|
745
751
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
746
752
|
* you may not use this file except in compliance with the License.
|
|
@@ -755,6 +761,21 @@ const COLUMN_VIEW_TYPES = {
|
|
|
755
761
|
* limitations under the License.
|
|
756
762
|
*/
|
|
757
763
|
|
|
764
|
+
/*
|
|
765
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
766
|
+
*
|
|
767
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
768
|
+
* you may not use this file except in compliance with the License.
|
|
769
|
+
* You may obtain a copy of the License at
|
|
770
|
+
*
|
|
771
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
772
|
+
*
|
|
773
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
774
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
775
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
776
|
+
* See the License for the specific language governing permissions and
|
|
777
|
+
* limitations under the License.
|
|
778
|
+
*/
|
|
758
779
|
class DocumentenApiFilterComponent {
|
|
759
780
|
constructor(documentService, fb, iconService, route, translateService, documentenApiTagService) {
|
|
760
781
|
this.documentService = documentService;
|
|
@@ -793,16 +814,17 @@ class DocumentenApiFilterComponent {
|
|
|
793
814
|
selected: filter?.vertrouwelijkheidaanduiding === confidentialityLevel,
|
|
794
815
|
id: confidentialityLevel,
|
|
795
816
|
}))), startWith([]));
|
|
796
|
-
this.
|
|
797
|
-
|
|
817
|
+
this._context = getCaseManagementRouteParams(this.route);
|
|
818
|
+
this.informationObjectTypes$ = this._context.pipe(switchMap(params => combineLatest([
|
|
819
|
+
this.documentService.getDocumentTypesForCase(params.caseDefinitionKey, params.caseDefinitionVersionTag),
|
|
798
820
|
this._filter$,
|
|
799
821
|
])), map(([types, filter]) => types.map((type) => ({
|
|
800
822
|
content: type.name,
|
|
801
823
|
selected: filter?.informatieobjecttype === type.url,
|
|
802
824
|
id: type.url,
|
|
803
825
|
}))), startWith([]));
|
|
804
|
-
this.tags$ = this.route.paramMap.pipe(filter((paramMap) => !!paramMap.get('
|
|
805
|
-
this.documentenApiTagService.getTags(paramMap.get('
|
|
826
|
+
this.tags$ = this.route.paramMap.pipe(filter((paramMap) => !!paramMap.get('caseDefinitionKey')), switchMap((paramMap) => combineLatest([
|
|
827
|
+
this.documentenApiTagService.getTags(paramMap.get('caseDefinitionKey') ?? ''),
|
|
806
828
|
this.route.queryParamMap,
|
|
807
829
|
])), map(([tags, queryParamMap]) => {
|
|
808
830
|
const selectedTags = this.convertTrefwoordenParam(queryParamMap['params']?.trefwoorden).map((item) => item.content);
|
|
@@ -887,12 +909,12 @@ class DocumentenApiFilterComponent {
|
|
|
887
909
|
selected: true,
|
|
888
910
|
}));
|
|
889
911
|
}
|
|
890
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
891
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
912
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiFilterComponent, deps: [{ token: i4$1.DocumentService }, { token: i1$1.FormBuilder }, { token: i5$1.IconService }, { token: i1$2.ActivatedRoute }, { token: i5.TranslateService }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
913
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiFilterComponent, isStandalone: true, selector: "valtimo-case-detail-tab-documenten-api-filter", outputs: { filterEvent: "filterEvent" }, viewQueries: [{ propertyName: "creationDateFromPicker", first: true, predicate: ["creationDateFrom"], descendants: true }, { propertyName: "creationDateToPicker", first: true, predicate: ["creationDateTo"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"valtimo-documenten-api-filter\" (click)=\"$event.stopImmediatePropagation()\">\n <form\n *ngIf=\"{\n confidentialityLevels: confidentialityLevels$ | async,\n informationObjectTypes: informationObjectTypes$ | async,\n tags: tags$ | async,\n } as obs\"\n class=\"valtimo-documenten-api-filter__form\"\n [formGroup]=\"formGroup\"\n >\n <cds-text-label>\n {{ 'zgw.documentColumns.titel' | translate }}\n\n <input cdsText formControlName=\"titel\" />\n </cds-text-label>\n\n <cds-dropdown\n [disabled]=\"!obs.informationObjectTypes?.length\"\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.informatieobjecttype' | translate\"\n formControlName=\"informatieObjectType\"\n >\n <cds-dropdown-list [items]=\"obs.informationObjectTypes\"></cds-dropdown-list>\n </cds-dropdown>\n\n <div class=\"valtimo-documenten-api-filter__dates\">\n <cds-date-picker\n #creationDateFrom\n [label]=\"'interface.labels.dateCreationFrom' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdFrom', $event)\"\n ></cds-date-picker>\n\n <cds-date-picker\n #creationDateTo\n [label]=\"'interface.labels.dateCreationTo' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdTo', $event)\"\n ></cds-date-picker>\n </div>\n\n <cds-text-label>\n {{ 'zgw.documentColumns.auteur' | translate }}\n\n <input cdsText formControlName=\"auteur\" />\n </cds-text-label>\n\n <cds-dropdown\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.vertrouwelijkheidaanduiding' | translate\"\n formControlName=\"vertrouwelijkHeidaanduiding\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevels\"></cds-dropdown-list>\n </cds-dropdown>\n\n <cds-dropdown\n [label]=\"'zgw.documentColumns.trefwoorden' | translate\"\n formControlName=\"trefwoorden\"\n type=\"multi\"\n >\n <cds-dropdown-list [items]=\"obs.tags\"></cds-dropdown-list>\n </cds-dropdown>\n </form>\n\n <footer class=\"valtimo-documenten-api-filter__footer\">\n <button cdsButton=\"tertiary\" (click)=\"resetFilter()\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </footer>\n</div>\n", styles: [":host .valtimo-documenten-api-filter{display:flex;flex-direction:column;max-width:880px}:host .valtimo-documenten-api-filter__form{display:grid;grid-template-columns:repeat(3,1fr);align-items:flex-end;padding:16px;gap:16px}:host .valtimo-documenten-api-filter__dates{display:flex;gap:16px}:host .valtimo-documenten-api-filter__footer{display:flex;padding:0 16px 16px}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:unset!important;padding: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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DatePickerInputModule }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i5$1.DatePicker, selector: "cds-date-picker, ibm-date-picker", inputs: ["range", "dateFormat", "language", "label", "helperText", "rangeHelperText", "rangeLabel", "placeholder", "ariaLabel", "inputPattern", "id", "value", "theme", "disabled", "readonly", "invalid", "invalidText", "warn", "warnText", "size", "rangeInvalid", "rangeInvalidText", "rangeWarn", "rangeWarnText", "skeleton", "plugins", "flatpickrOptions"], outputs: ["valueChange", "onClose"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i5$1.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "readonly", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp", "fluid"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i5$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i5$1.TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "directive", type: i5$1.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
892
914
|
}
|
|
893
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
915
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiFilterComponent, decorators: [{
|
|
894
916
|
type: Component,
|
|
895
|
-
args: [{ selector: 'valtimo-
|
|
917
|
+
args: [{ selector: 'valtimo-case-detail-tab-documenten-api-filter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
896
918
|
CommonModule,
|
|
897
919
|
ButtonModule,
|
|
898
920
|
DatePickerInputModule,
|
|
@@ -902,8 +924,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
902
924
|
InputModule,
|
|
903
925
|
TranslateModule,
|
|
904
926
|
ReactiveFormsModule,
|
|
905
|
-
], template: "<div class=\"valtimo-documenten-api-filter\" (click)=\"$event.stopImmediatePropagation()\">\n <form\n *ngIf=\"{\n confidentialityLevels: confidentialityLevels$ | async,\n informationObjectTypes: informationObjectTypes$ | async,\n tags: tags$ | async,\n } as obs\"\n class=\"valtimo-documenten-api-filter__form\"\n [formGroup]=\"formGroup\"\n >\n <cds-text-label>\n {{ 'zgw.documentColumns.titel' | translate }}\n\n <input cdsText formControlName=\"titel\" />\n </cds-text-label>\n\n <cds-dropdown\n [disabled]=\"!obs.informationObjectTypes?.length\"\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.informatieobjecttype' | translate\"\n formControlName=\"informatieObjectType\"\n >\n <cds-dropdown-list [items]=\"obs.informationObjectTypes\"></cds-dropdown-list>\n </cds-dropdown>\n\n <div class=\"valtimo-documenten-api-filter__dates\">\n <cds-date-picker\n #creationDateFrom\n [label]=\"'interface.labels.dateCreationFrom' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdFrom', $event)\"\n ></cds-date-picker>\n\n <cds-date-picker\n #creationDateTo\n [label]=\"'interface.labels.dateCreationTo' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdTo', $event)\"\n ></cds-date-picker>\n </div>\n\n <cds-text-label>\n {{ 'zgw.documentColumns.auteur' | translate }}\n\n <input cdsText formControlName=\"auteur\" />\n </cds-text-label>\n\n <cds-dropdown\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.vertrouwelijkheidaanduiding' | translate\"\n formControlName=\"vertrouwelijkHeidaanduiding\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevels\"></cds-dropdown-list>\n </cds-dropdown>\n\n <cds-dropdown\n [label]=\"'zgw.documentColumns.trefwoorden' | translate\"\n formControlName=\"trefwoorden\"\n type=\"multi\"\n >\n <cds-dropdown-list [items]=\"obs.tags\"></cds-dropdown-list>\n </cds-dropdown>\n </form>\n\n <footer class=\"valtimo-documenten-api-filter__footer\">\n <button cdsButton=\"tertiary\" (click)=\"resetFilter()\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </footer>\n</div>\n", styles: [":host .valtimo-documenten-api-filter{display:flex;flex-direction:column;max-width:880px}:host .valtimo-documenten-api-filter__form{display:grid;grid-template-columns:repeat(3,1fr);align-items:flex-end;padding:16px;gap:16px}:host .valtimo-documenten-api-filter__dates{display:flex;gap:16px}:host .valtimo-documenten-api-filter__footer{display:flex;padding:0 16px 16px}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:unset!important;padding:0!important}\n"] }]
|
|
906
|
-
}], ctorParameters: () => [{ type:
|
|
927
|
+
], 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-documenten-api-filter\" (click)=\"$event.stopImmediatePropagation()\">\n <form\n *ngIf=\"{\n confidentialityLevels: confidentialityLevels$ | async,\n informationObjectTypes: informationObjectTypes$ | async,\n tags: tags$ | async,\n } as obs\"\n class=\"valtimo-documenten-api-filter__form\"\n [formGroup]=\"formGroup\"\n >\n <cds-text-label>\n {{ 'zgw.documentColumns.titel' | translate }}\n\n <input cdsText formControlName=\"titel\" />\n </cds-text-label>\n\n <cds-dropdown\n [disabled]=\"!obs.informationObjectTypes?.length\"\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.informatieobjecttype' | translate\"\n formControlName=\"informatieObjectType\"\n >\n <cds-dropdown-list [items]=\"obs.informationObjectTypes\"></cds-dropdown-list>\n </cds-dropdown>\n\n <div class=\"valtimo-documenten-api-filter__dates\">\n <cds-date-picker\n #creationDateFrom\n [label]=\"'interface.labels.dateCreationFrom' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdFrom', $event)\"\n ></cds-date-picker>\n\n <cds-date-picker\n #creationDateTo\n [label]=\"'interface.labels.dateCreationTo' | translate\"\n placeholder=\"DD-MM-YYYY\"\n [dateFormat]=\"'d-m-Y'\"\n (valueChange)=\"onDateSelected('createdTo', $event)\"\n ></cds-date-picker>\n </div>\n\n <cds-text-label>\n {{ 'zgw.documentColumns.auteur' | translate }}\n\n <input cdsText formControlName=\"auteur\" />\n </cds-text-label>\n\n <cds-dropdown\n [dropUp]=\"false\"\n [label]=\"'zgw.documentColumns.vertrouwelijkheidaanduiding' | translate\"\n formControlName=\"vertrouwelijkHeidaanduiding\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevels\"></cds-dropdown-list>\n </cds-dropdown>\n\n <cds-dropdown\n [label]=\"'zgw.documentColumns.trefwoorden' | translate\"\n formControlName=\"trefwoorden\"\n type=\"multi\"\n >\n <cds-dropdown-list [items]=\"obs.tags\"></cds-dropdown-list>\n </cds-dropdown>\n </form>\n\n <footer class=\"valtimo-documenten-api-filter__footer\">\n <button cdsButton=\"tertiary\" (click)=\"resetFilter()\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </footer>\n</div>\n", styles: [":host .valtimo-documenten-api-filter{display:flex;flex-direction:column;max-width:880px}:host .valtimo-documenten-api-filter__form{display:grid;grid-template-columns:repeat(3,1fr);align-items:flex-end;padding:16px;gap:16px}:host .valtimo-documenten-api-filter__dates{display:flex;gap:16px}:host .valtimo-documenten-api-filter__footer{display:flex;padding:0 16px 16px}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:unset!important;padding: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"] }]
|
|
928
|
+
}], ctorParameters: () => [{ type: i4$1.DocumentService }, { type: i1$1.FormBuilder }, { type: i5$1.IconService }, { type: i1$2.ActivatedRoute }, { type: i5.TranslateService }, { type: DocumentenApiTagService }], propDecorators: { creationDateFromPicker: [{
|
|
907
929
|
type: ViewChild,
|
|
908
930
|
args: ['creationDateFrom']
|
|
909
931
|
}], creationDateToPicker: [{
|
|
@@ -914,7 +936,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
914
936
|
}] } });
|
|
915
937
|
|
|
916
938
|
/*
|
|
917
|
-
* Copyright 2015-
|
|
939
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
918
940
|
*
|
|
919
941
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
920
942
|
* you may not use this file except in compliance with the License.
|
|
@@ -1052,7 +1074,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1052
1074
|
get bestandsnaam() {
|
|
1053
1075
|
return this.documentenApiMetadataForm.get('bestandsnaam');
|
|
1054
1076
|
}
|
|
1055
|
-
constructor(route, documentService, documentenApiTagService, fb, keycloakService, modalService, translateService, valtimoModalService, documentenApiVersionService) {
|
|
1077
|
+
constructor(route, documentService, documentenApiTagService, fb, keycloakService, modalService, translateService, valtimoModalService, documentenApiVersionService, router) {
|
|
1056
1078
|
this.route = route;
|
|
1057
1079
|
this.documentService = documentService;
|
|
1058
1080
|
this.documentenApiTagService = documentenApiTagService;
|
|
@@ -1062,6 +1084,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1062
1084
|
this.translateService = translateService;
|
|
1063
1085
|
this.valtimoModalService = valtimoModalService;
|
|
1064
1086
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1087
|
+
this.router = router;
|
|
1065
1088
|
this.hideFields = [];
|
|
1066
1089
|
this.defaultValues = {};
|
|
1067
1090
|
this.supportsTrefwoorden = false;
|
|
@@ -1132,7 +1155,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1132
1155
|
this.translateService.stream('key'),
|
|
1133
1156
|
]).pipe(tap$1(([additionalDocumentDate, currentStatus]) => {
|
|
1134
1157
|
this.formData$
|
|
1135
|
-
.pipe(filter(formData => !!formData), take(1))
|
|
1158
|
+
.pipe(filter(formData => !!formData), take$1(1))
|
|
1136
1159
|
.subscribe(formData => {
|
|
1137
1160
|
if (additionalDocumentDate === 'received' &&
|
|
1138
1161
|
(formData.status === 'in_bewerking' || formData.status === 'ter_vaststelling')) {
|
|
@@ -1145,10 +1168,10 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1145
1168
|
selected: currentStatus === status,
|
|
1146
1169
|
}))));
|
|
1147
1170
|
this.tagItems$ = combineLatest([
|
|
1148
|
-
this.valtimoModalService.
|
|
1171
|
+
this.valtimoModalService.caseDefinitionKey$,
|
|
1149
1172
|
this.tagFormControl.valueChanges.pipe(startWith(this.tagFormControl.value)),
|
|
1150
|
-
]).pipe(filter(([
|
|
1151
|
-
this.documentenApiTagService.getTags(
|
|
1173
|
+
]).pipe(filter(([caseDefinitionKey]) => !!caseDefinitionKey), switchMap(([caseDefinitionKey, tagFormControlValue]) => combineLatest([
|
|
1174
|
+
this.documentenApiTagService.getTags(caseDefinitionKey),
|
|
1152
1175
|
of(tagFormControlValue),
|
|
1153
1176
|
])), map(([tags, tagFormControlValue]) => tags.map(tag => ({
|
|
1154
1177
|
id: tag.value,
|
|
@@ -1166,11 +1189,16 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1166
1189
|
selected: currentLanguage === language,
|
|
1167
1190
|
}));
|
|
1168
1191
|
}));
|
|
1192
|
+
this.documentId$ = this.router.events.pipe(filter(event => event instanceof NavigationEnd), startWith(null), map(() => {
|
|
1193
|
+
const segments = window.location.pathname.split('/');
|
|
1194
|
+
const i = segments.indexOf('document');
|
|
1195
|
+
return i !== -1 && segments.length > i + 1 ? segments[i + 1] : null;
|
|
1196
|
+
}));
|
|
1169
1197
|
this.documentTypeItems$ = combineLatest([
|
|
1170
|
-
this.
|
|
1198
|
+
this.documentId$,
|
|
1171
1199
|
this.informatieobjecttypeFormControl.valueChanges.pipe(startWith(this.informatieobjecttypeFormControl.value)),
|
|
1172
|
-
]).pipe(switchMap(([
|
|
1173
|
-
this.documentService.
|
|
1200
|
+
]).pipe(filter(([documentId]) => !!documentId), switchMap(([documentId, informatieobjecttypeValue]) => combineLatest([
|
|
1201
|
+
this.documentService.getDocumentTypesForDocument(documentId),
|
|
1174
1202
|
of(informatieobjecttypeValue),
|
|
1175
1203
|
])), map(([documentTypes, informatieobjecttypeValue]) => documentTypes.map((type) => ({
|
|
1176
1204
|
id: type.url,
|
|
@@ -1178,7 +1206,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1178
1206
|
selected: informatieobjecttypeValue === type.url,
|
|
1179
1207
|
}))));
|
|
1180
1208
|
this.userEmail$ = from(this.keycloakService.loadUserProfile()).pipe(map(userProfile => userProfile?.email || ''));
|
|
1181
|
-
this._supportedDocumentenApiFeatures$ = this.valtimoModalService.
|
|
1209
|
+
this._supportedDocumentenApiFeatures$ = this.valtimoModalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey)));
|
|
1182
1210
|
this._subscriptions = new Subscription();
|
|
1183
1211
|
}
|
|
1184
1212
|
ngOnInit() {
|
|
@@ -1203,6 +1231,9 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1203
1231
|
tagsSelected(event) {
|
|
1204
1232
|
this.tagFormControl.patchValue(event.filter(tag => tag.selected).map(tag => tag.id));
|
|
1205
1233
|
}
|
|
1234
|
+
setAdditionalDate(value) {
|
|
1235
|
+
this.additionalDocumentDate$.next(value);
|
|
1236
|
+
}
|
|
1206
1237
|
confidentialityLevelSelected(event) {
|
|
1207
1238
|
if (event.id) {
|
|
1208
1239
|
this.documentenApiMetadataForm.patchValue({
|
|
@@ -1234,13 +1265,14 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1234
1265
|
this.additionalDocumentDate$.next('received');
|
|
1235
1266
|
else
|
|
1236
1267
|
this.additionalDocumentDate$.next('neither');
|
|
1237
|
-
const
|
|
1238
|
-
const
|
|
1268
|
+
const defaultStatus = this.defaultValues.status;
|
|
1269
|
+
const validDefaultStatus = this.STATUSES.includes(defaultStatus) && defaultStatus;
|
|
1270
|
+
const validPrefillStatus = this.STATUSES.includes(status) && status;
|
|
1239
1271
|
this.documentenApiMetadataForm.patchValue({
|
|
1240
1272
|
beschrijving: beschrijving || this.defaultValues.beschrijving,
|
|
1241
1273
|
taal: taal || this.defaultValues.taal,
|
|
1242
1274
|
informatieobjecttype: informatieobjecttype || this.defaultValues.informatieobjecttype,
|
|
1243
|
-
status: validPrefillStatus,
|
|
1275
|
+
status: validPrefillStatus || validDefaultStatus || null,
|
|
1244
1276
|
vertrouwelijkheidaanduiding: vertrouwelijkheidaanduiding || this.defaultValues.vertrouwelijkheidaanduiding,
|
|
1245
1277
|
ontvangstdatum: ontvangstdatum ? new Date(ontvangstdatum) : null,
|
|
1246
1278
|
verzenddatum: verzenddatum ? new Date(verzenddatum) : null,
|
|
@@ -1349,11 +1381,8 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1349
1381
|
}
|
|
1350
1382
|
openDocumentDefinitionSubscription() {
|
|
1351
1383
|
this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
|
|
1352
|
-
.pipe(map(([params, firstChildParams]) => (params?.
|
|
1353
|
-
.subscribe(
|
|
1354
|
-
}
|
|
1355
|
-
setAdditionalDate(value) {
|
|
1356
|
-
this.additionalDocumentDate$.next(value);
|
|
1384
|
+
.pipe(map(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter(caseDefinitionKey => !!caseDefinitionKey))
|
|
1385
|
+
.subscribe(caseDefinitionKey => this.valtimoModalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
1357
1386
|
}
|
|
1358
1387
|
areAllFieldsHidden() {
|
|
1359
1388
|
return (this.hideFields.includes('aanvullendeDatum') &&
|
|
@@ -1368,10 +1397,10 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1368
1397
|
this.hideFields.includes('status') &&
|
|
1369
1398
|
this.hideFields.includes('trefwoorden'));
|
|
1370
1399
|
}
|
|
1371
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1372
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DocumentenApiMetadataModalComponent, isStandalone: true, selector: "valtimo-documenten-api-metadata-modal", inputs: { disabled$: "disabled$", file$: "file$", hideFields: "hideFields", defaultValues: "defaultValues", disableAuthor: "disableAuthor", disableConfidentialityLevel: "disableConfidentialityLevel", disableDescription: "disableDescription", disableDocumentTitle: "disableDocumentTitle", disableDocumentType: "disableDocumentType", disableFilename: "disableFilename", disableLanguage: "disableLanguage", disableStatus: "disableStatus", supportsTrefwoorden: "supportsTrefwoorden", disableCreationDate: "disableCreationDate", isEditMode: "isEditMode", open: "open" }, outputs: { metadata: "metadata", modalClose: "modalClose" }, viewQueries: [{ propertyName: "metadataModal", first: true, predicate: ["metadataModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width:100%}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i6.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i6.TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i6.TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i6.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i6.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "ngmodule", type: ComboBoxModule }, { kind: "component", type: i6.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"], outputs: ["selected", "submit", "close", "search", "clear"] }, { kind: "component", type: i6.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i6.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i6.DatePicker, selector: "cds-date-picker, ibm-date-picker", inputs: ["range", "dateFormat", "language", "label", "helperText", "rangeHelperText", "rangeLabel", "placeholder", "ariaLabel", "inputPattern", "id", "value", "theme", "disabled", "invalid", "invalidText", "warn", "warnText", "size", "rangeInvalid", "rangeInvalidText", "rangeWarn", "rangeWarnText", "skeleton", "plugins", "flatpickrOptions"], outputs: ["valueChange", "onClose"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "ngmodule", type: IconModule }, { kind: "ngmodule", type: InputLabelModule }, { kind: "ngmodule", type: InputModule$1 }, { kind: "ngmodule", type: ModalModule }, { kind: "directive", type: i6.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: RadioModule }, { kind: "component", type: i6.Radio, selector: "cds-radio, ibm-radio", inputs: ["checked", "name", "disabled", "labelPlacement", "ariaLabelledby", "ariaLabel", "required", "value", "skeleton", "id"], outputs: ["change"] }, { kind: "component", type: i6.RadioGroup, selector: "cds-radio-group, ibm-radio-group", inputs: ["selected", "value", "name", "disabled", "skeleton", "orientation", "labelPlacement", "legend", "ariaLabel", "ariaLabelledby", "helperText", "invalid", "invalidText", "warn", "warnText"], outputs: ["change"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: SelectModule }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "component", type: i6.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3$1.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i6.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }] }); }
|
|
1400
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiMetadataModalComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i4$1.DocumentService }, { token: DocumentenApiTagService }, { token: i1$1.FormBuilder }, { token: i5$2.KeycloakService }, { token: i3.ModalService }, { token: i5.TranslateService }, { token: i3.ValtimoModalService }, { token: DocumentenApiVersionService }, { token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1401
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: DocumentenApiMetadataModalComponent, isStandalone: true, selector: "valtimo-documenten-api-metadata-modal", inputs: { disabled$: "disabled$", file$: "file$", hideFields: "hideFields", defaultValues: "defaultValues", disableAuthor: "disableAuthor", disableConfidentialityLevel: "disableConfidentialityLevel", disableDescription: "disableDescription", disableDocumentTitle: "disableDocumentTitle", disableDocumentType: "disableDocumentType", disableFilename: "disableFilename", disableLanguage: "disableLanguage", disableStatus: "disableStatus", supportsTrefwoorden: "supportsTrefwoorden", disableCreationDate: "disableCreationDate", isEditMode: "isEditMode", open: "open" }, outputs: { metadata: "metadata", modalClose: "modalClose" }, viewQueries: [{ propertyName: "metadataModal", first: true, predicate: ["metadataModal"], 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<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width: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: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i5$1.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i5$1.TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "component", type: i5$1.TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "directive", type: i5$1.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i5$1.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "ngmodule", type: ComboBoxModule }, { kind: "component", type: i5$1.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: i5$1.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "readonly", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp", "fluid"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i5$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i5$1.DatePicker, selector: "cds-date-picker, ibm-date-picker", inputs: ["range", "dateFormat", "language", "label", "helperText", "rangeHelperText", "rangeLabel", "placeholder", "ariaLabel", "inputPattern", "id", "value", "theme", "disabled", "readonly", "invalid", "invalidText", "warn", "warnText", "size", "rangeInvalid", "rangeInvalidText", "rangeWarn", "rangeWarnText", "skeleton", "plugins", "flatpickrOptions"], outputs: ["valueChange", "onClose"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "ngmodule", type: IconModule }, { kind: "ngmodule", type: InputLabelModule }, { kind: "ngmodule", type: InputModule$1 }, { kind: "ngmodule", type: ModalModule }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: RadioModule }, { kind: "component", type: i5$1.Radio, selector: "cds-radio, ibm-radio", inputs: ["checked", "name", "disabled", "labelPlacement", "ariaLabelledby", "ariaLabel", "required", "value", "skeleton", "id"], outputs: ["change"] }, { kind: "component", type: i5$1.RadioGroup, selector: "cds-radio-group, ibm-radio-group", inputs: ["selected", "value", "name", "disabled", "skeleton", "orientation", "labelPlacement", "legend", "ariaLabel", "ariaLabelledby", "helperText", "invalid", "invalidText", "warn", "warnText"], outputs: ["change"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: SelectModule }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "component", type: i5$1.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }] }); }
|
|
1373
1402
|
}
|
|
1374
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1403
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiMetadataModalComponent, decorators: [{
|
|
1375
1404
|
type: Component,
|
|
1376
1405
|
args: [{ selector: 'valtimo-documenten-api-metadata-modal', standalone: true, imports: [
|
|
1377
1406
|
ButtonModule,
|
|
@@ -1392,8 +1421,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1392
1421
|
TranslateModule,
|
|
1393
1422
|
VModalModule,
|
|
1394
1423
|
LayerModule,
|
|
1395
|
-
], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width:100%}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
1396
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type:
|
|
1424
|
+
], 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<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width: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"] }]
|
|
1425
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i4$1.DocumentService }, { type: DocumentenApiTagService }, { type: i1$1.FormBuilder }, { type: i5$2.KeycloakService }, { type: i3.ModalService }, { type: i5.TranslateService }, { type: i3.ValtimoModalService }, { type: DocumentenApiVersionService }, { type: i1$2.Router }], propDecorators: { metadataModal: [{
|
|
1397
1426
|
type: ViewChild,
|
|
1398
1427
|
args: ['metadataModal']
|
|
1399
1428
|
}], disabled$: [{
|
|
@@ -1435,7 +1464,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1435
1464
|
}] } });
|
|
1436
1465
|
|
|
1437
1466
|
/*
|
|
1438
|
-
* Copyright 2015-
|
|
1467
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1439
1468
|
*
|
|
1440
1469
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1441
1470
|
* you may not use this file except in compliance with the License.
|
|
@@ -1449,25 +1478,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1449
1478
|
* See the License for the specific language governing permissions and
|
|
1450
1479
|
* limitations under the License.
|
|
1451
1480
|
*/
|
|
1452
|
-
class
|
|
1453
|
-
constructor(
|
|
1454
|
-
this.route = route;
|
|
1455
|
-
this.router = router;
|
|
1456
|
-
this.uploadProviderService = uploadProviderService;
|
|
1457
|
-
this.downloadService = downloadService;
|
|
1458
|
-
this.translateService = translateService;
|
|
1481
|
+
class CaseDetailTabDocumentenApiDocumentsComponent {
|
|
1482
|
+
constructor(configService, documentenApiColumnService, documentenApiDocumentService, documentenApiVersionService, documentService, downloadService, iconService, permissionService, route, router, translateService, uploadProviderService, userProviderService) {
|
|
1459
1483
|
this.configService = configService;
|
|
1460
|
-
this.userProviderService = userProviderService;
|
|
1461
|
-
this.iconService = iconService;
|
|
1462
|
-
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1463
1484
|
this.documentenApiColumnService = documentenApiColumnService;
|
|
1485
|
+
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1464
1486
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1487
|
+
this.documentService = documentService;
|
|
1488
|
+
this.downloadService = downloadService;
|
|
1489
|
+
this.iconService = iconService;
|
|
1465
1490
|
this.permissionService = permissionService;
|
|
1466
|
-
this.
|
|
1491
|
+
this.route = route;
|
|
1492
|
+
this.router = router;
|
|
1493
|
+
this.translateService = translateService;
|
|
1494
|
+
this.uploadProviderService = uploadProviderService;
|
|
1495
|
+
this.userProviderService = userProviderService;
|
|
1496
|
+
this._caseDefinitionKey$ = this.route.params.pipe(map$1(params => params?.caseDefinitionKey ?? ''), filter$1((caseDefinitionKey) => !!caseDefinitionKey));
|
|
1497
|
+
this._caseSettings$ = this._caseDefinitionKey$.pipe(switchMap$1((caseDefinitionKey) => this.documentService.getCaseSettings(caseDefinitionKey)));
|
|
1467
1498
|
this.supportedDocumentenApiFeatures$ = new BehaviorSubject(null);
|
|
1468
|
-
this._supportedDocumentenApiFeatures$ = this.
|
|
1469
|
-
this.fields$ = this.
|
|
1470
|
-
this.documentenApiColumnService.getConfiguredColumns(
|
|
1499
|
+
this._supportedDocumentenApiFeatures$ = this._caseDefinitionKey$.pipe(switchMap$1(caseDefinitionName => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionName)), tap$1(supportedDocumentenApiFeatures => this.supportedDocumentenApiFeatures$.next(supportedDocumentenApiFeatures)));
|
|
1500
|
+
this.fields$ = this._caseDefinitionKey$.pipe(tap$1(() => this.fieldsLoading$.next(true)), switchMap$1(caseDefinitionKey => combineLatest([
|
|
1501
|
+
this.documentenApiColumnService.getConfiguredColumns(caseDefinitionKey),
|
|
1471
1502
|
this._supportedDocumentenApiFeatures$,
|
|
1472
1503
|
this._sort$,
|
|
1473
1504
|
])), map$1(([columns, supportedDocumentenApiFeatures, sort]) => {
|
|
@@ -1509,7 +1540,6 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1509
1540
|
type: 'danger',
|
|
1510
1541
|
},
|
|
1511
1542
|
];
|
|
1512
|
-
this.documentDefinitionName$ = this.route.params.pipe(map$1(params => params?.documentDefinitionName), filter$1(documentDefinitionName => !!documentDefinitionName));
|
|
1513
1543
|
this.documentId$ = this.route.params.pipe(map$1(params => params?.documentId), filter$1(documentId => !!documentId));
|
|
1514
1544
|
this.uploadProcessLinkedSet = false;
|
|
1515
1545
|
this.isEditMode$ = new BehaviorSubject(false);
|
|
@@ -1651,14 +1681,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1651
1681
|
return 'Upload';
|
|
1652
1682
|
}
|
|
1653
1683
|
else if (this.isAdmin) {
|
|
1654
|
-
return '
|
|
1684
|
+
return 'case.documenten.noProcessLinked.adminRole';
|
|
1655
1685
|
}
|
|
1656
|
-
return '
|
|
1686
|
+
return 'case.documenten.noProcessLinked.regularUser';
|
|
1657
1687
|
}
|
|
1658
1688
|
isUserAdmin() {
|
|
1659
1689
|
this.userProviderService
|
|
1660
1690
|
.getUserSubject()
|
|
1661
|
-
.pipe(take
|
|
1691
|
+
.pipe(take(1))
|
|
1662
1692
|
.subscribe(userIdentity => {
|
|
1663
1693
|
this.isAdmin = userIdentity.roles.includes('ROLE_ADMIN');
|
|
1664
1694
|
}, () => {
|
|
@@ -1668,7 +1698,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1668
1698
|
metadataSet(metadata) {
|
|
1669
1699
|
this.uploading$.next(true);
|
|
1670
1700
|
combineLatest([this.fileToBeUploaded$, this.documentId$])
|
|
1671
|
-
.pipe(take
|
|
1701
|
+
.pipe(take(1))
|
|
1672
1702
|
.pipe(tap$1(([file, documentId]) => {
|
|
1673
1703
|
if (!file)
|
|
1674
1704
|
return;
|
|
@@ -1711,8 +1741,10 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1711
1741
|
this.resetFileInput();
|
|
1712
1742
|
}
|
|
1713
1743
|
onNavigateToCaseAdminClick() {
|
|
1714
|
-
this.
|
|
1715
|
-
this.router.navigate([
|
|
1744
|
+
this._caseSettings$.pipe(take(1)).subscribe((caseSettings) => {
|
|
1745
|
+
this.router.navigate([
|
|
1746
|
+
`/case-management/case/${caseSettings.caseDefinitionKey}/version/${caseSettings.caseDefinitionVersionTag}/zgw`,
|
|
1747
|
+
]);
|
|
1716
1748
|
});
|
|
1717
1749
|
}
|
|
1718
1750
|
onRowClick(event) {
|
|
@@ -1761,14 +1793,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1761
1793
|
}
|
|
1762
1794
|
openQueryParamsSubscription() {
|
|
1763
1795
|
this._subscriptions.add(combineLatest([
|
|
1764
|
-
this.
|
|
1796
|
+
this._caseDefinitionKey$,
|
|
1765
1797
|
this.documentId$,
|
|
1766
1798
|
this.filter$,
|
|
1767
1799
|
this._sort$,
|
|
1768
1800
|
this.pagination$,
|
|
1769
1801
|
]).subscribe(([definitionName, documentId, filter, sort, pagination]) => {
|
|
1770
1802
|
const { size, page } = pagination;
|
|
1771
|
-
this.router.navigate([`/
|
|
1803
|
+
this.router.navigate([`/cases/${definitionName}/document/${documentId}/documents`], {
|
|
1772
1804
|
queryParams: { ...filter, ...sort, size, page: page - 1 },
|
|
1773
1805
|
});
|
|
1774
1806
|
}));
|
|
@@ -1777,8 +1809,8 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1777
1809
|
this.fileInput.nativeElement.value = '';
|
|
1778
1810
|
}
|
|
1779
1811
|
setUploadProcessLinked() {
|
|
1780
|
-
this.
|
|
1781
|
-
.pipe(switchMap$1(
|
|
1812
|
+
this._caseDefinitionKey$
|
|
1813
|
+
.pipe(switchMap$1(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), take(1), tap$1(() => {
|
|
1782
1814
|
this.uploadProcessLinkedSet = true;
|
|
1783
1815
|
}))
|
|
1784
1816
|
.subscribe((linked) => {
|
|
@@ -1787,7 +1819,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1787
1819
|
}
|
|
1788
1820
|
setInitialParams() {
|
|
1789
1821
|
this.route.queryParamMap
|
|
1790
|
-
.pipe(take
|
|
1822
|
+
.pipe(take(1), map$1(queryParams => {
|
|
1791
1823
|
const { sort, size, page, ...filter } = queryParams['params'];
|
|
1792
1824
|
return { sort, filter, size, page };
|
|
1793
1825
|
}))
|
|
@@ -1829,12 +1861,12 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1829
1861
|
return this.permissionService.requestPermission(permissionRequest, context);
|
|
1830
1862
|
}));
|
|
1831
1863
|
}
|
|
1832
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1833
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierDetailTabDocumentenApiDocumentsComponent, isStandalone: true, selector: "valtimo-dossier-detail-tab-documenten-api-documents", viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "translationTemplate", first: true, predicate: ["translationTemplate"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<div\n class=\"carbon-document-table-wrapper\"\n *ngIf=\"{\n loading: loading$ | async,\n fieldsLoading: fieldsLoading$ | async,\n uploading: uploading$ | async,\n relatedFiles: relatedFiles$ | async,\n fields: fields$ | async,\n supportedDocumentenApiFeatures: supportedDocumentenApiFeatures$ | async,\n pagination: pagination$ | async,\n sortState: sortState$ | async,\n uploadFields: uploadFields$ | async,\n defaultValues: defaultValues$ | async,\n hideFields: hideFields$ | async,\n } as obs\"\n>\n @if ((!obs.fieldsLoading && obs.fields.length) || obs.fieldsLoading) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.relatedFiles\"\n [fields]=\"obs.fields\"\n [initialSortState]=\"obs.sortState\"\n [loading]=\"obs.loading\"\n [pagination]=\"obs.pagination\"\n [paginatorConfig]=\"paginatorConfig\"\n paginationIdentifier=\"documentenApi\"\n (rowClicked)=\"onRowClick($event)\"\n (sortChanged)=\"\n obs?.supportedDocumentenApiFeatures?.supportsSortableColumns && onSortChanged($event)\n \"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n hideColumnHeader\n >\n <div carbonToolbarContent>\n <input\n [accept]=\"acceptedFiles\"\n (change)=\"onFileSelected($event)\"\n hidden\n type=\"file\"\n #fileInput\n />\n\n <button\n *ngIf=\"obs?.supportedDocumentenApiFeatures?.supportsFilterableColumns\"\n [cdsOverflowMenu]=\"overflowFilter\"\n [customPane]=\"true\"\n [iconOnly]=\"true\"\n [flip]=\"true\"\n [offset]=\"{x: 0, y: 47}\"\n cdsButton=\"ghost\"\n placement=\"bottom\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"filter\" size=\"16\"></svg>\n </button>\n\n <ng-container *ngTemplateOutlet=\"uploadButton\"></ng-container>\n </div>\n\n <ng-container *ngTemplateOutlet=\"noResults\"></ng-container>\n </valtimo-carbon-list>\n } @else {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n }\n\n <valtimo-documenten-api-metadata-modal\n [defaultValues]=\"obs.defaultValues\"\n [disableAuthor]=\"obs.uploadFields?.auteur?.readonly\"\n [disableConfidentialityLevel]=\"obs.uploadFields?.vertrouwelijkheidaanduiding?.readonly\"\n [disableCreationDate]=\"obs.uploadFields?.creatiedatum?.readonly\"\n [disableDescription]=\"obs.uploadFields?.beschrijving?.readonly\"\n [disableDocumentTitle]=\"obs.uploadFields?.titel?.readonly\"\n [disableDocumentType]=\"obs.uploadFields?.informatieobjecttype?.readonly\"\n [disableFilename]=\"obs.uploadFields?.bestandsnaam?.readonly\"\n [disableLanguage]=\"obs.uploadFields?.taal?.readonly\"\n [disableStatus]=\"obs.uploadFields?.status?.readonly\"\n [hideFields]=\"obs.hideFields\"\n [open]=\"showUploadModal$ | async\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [isEditMode]=\"isEditMode$ | async\"\n [supportsTrefwoorden]=\"obs?.supportedDocumentenApiFeatures?.supportsTrefwoorden\"\n (modalClose)=\"closeMetadataModal()\"\n (metadata)=\"metadataSet($event)\"\n ></valtimo-documenten-api-metadata-modal>\n</div>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"dashboardManagement.deleteModal.confirm\"\n contentTranslationKey=\"dossier.documenten.deleteConfirmationModal.content\"\n confirmButtonType=\"danger\"\n titleTranslationKey=\"dossier.documenten.deleteConfirmationModal.title\"\n [showModalSubject$]=\"showDeleteConfirmationModal$\"\n (confirmEvent)=\"deleteDocument()\"\n>\n</valtimo-confirmation-modal>\n\n<ng-template #noResults>\n @if ((filter$ | async | keyvalue)?.length) {\n <valtimo-no-results\n [action]=\"resetFilterButton\"\n [description]=\"'zgw.documents.noResults.filterDescription' | translate\"\n [title]=\"'zgw.documents.noResults.filterTitle' | translate\"\n ></valtimo-no-results>\n } @else if (showZaakLinkWarning && isAdmin) {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'dossier.documenten.noZaakFound' | translate\"\n [title]=\"'dossier.documenten.noZaakFoundTitle' | translate\"\n ></valtimo-no-results>\n } @else {\n <valtimo-no-results\n [action]=\"uploadButton\"\n [description]=\"'dossier.documenten.noFiles' | translate\"\n [title]=\"'dossier.documenten.noFilesTitle' | translate\"\n ></valtimo-no-results>\n }\n</ng-template>\n\n<ng-template #overflowFilter>\n <valtimo-dossier-detail-tab-documenten-api-filter\n [prefillFilter]=\"filter$ | async\"\n (filterEvent)=\"onFilterEvent($event)\"\n ></valtimo-dossier-detail-tab-documenten-api-filter>\n</ng-template>\n\n<ng-template #resetFilterButton>\n <button cdsButton=\"primary\" (click)=\"onFilterEvent(null)\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #uploadButton let-disabled=\"disabled\">\n <button\n [disabled]=\"\n (uploadProcessLinkedSet && !uploadProcessLinked) ||\n showZaakLinkWarning ||\n disabled ||\n (canCreateResource$ | async) === false\n \"\n [vTooltip]=\"getUploadButtonTooltip() | translate\"\n (click)=\"onUploadButtonClick()\"\n cdsButton=\"primary\"\n >\n {{ 'Upload' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"upload\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #translationTemplate let-data=\"data\">\n @if (data.item[data.key]) {\n {{ 'document.' + data.item[data.key] | translate }}\n } @else {\n -\n }\n</ng-template>\n\n<ng-template #navigateToCaseAdminButton>\n <button (click)=\"onNavigateToCaseAdminClick()\" cdsButton=\"primary\">\n {{ 'dossier.documenten.navigateToCaseAdmin' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"settings\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: [".hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.carbon-document-table-wrapper{margin:0}.documenten-api-documents-filesize-template{text-align:right}::ng-deep .cds--overflow-menu-options.cds--overflow-menu-options--open{max-width:max-content!important;width:max-content!important}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3$1.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "actions", "actionItems", "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: i3$1.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["disabled$", "file$", "hideFields", "defaultValues", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "supportsTrefwoorden", "disableCreationDate", "isEditMode", "open"], outputs: ["metadata", "modalClose"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i6.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: DocumentenApiFilterComponent, selector: "valtimo-dossier-detail-tab-documenten-api-filter", outputs: ["filterEvent"] }, { kind: "ngmodule", type: DialogModule }, { kind: "directive", type: i6.OverflowMenuDirective, selector: "[cdsOverflowMenu], [ibmOverflowMenu]", inputs: ["ibmOverflowMenu", "cdsOverflowMenu", "flip", "offset", "wrapperClass", "customPane"], exportAs: ["overflowMenu"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i3$1.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"] }] }); }
|
|
1864
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i2.ConfigService }, { token: DocumentenApiColumnService }, { token: DocumentenApiDocumentService }, { token: DocumentenApiVersionService }, { token: i4$1.DocumentService }, { token: i5$3.DownloadService }, { token: i5$1.IconService }, { token: i7.PermissionService }, { token: i1$2.ActivatedRoute }, { token: i1$2.Router }, { token: i5.TranslateService }, { token: i5$3.UploadProviderService }, { token: i10.UserProviderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1865
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: CaseDetailTabDocumentenApiDocumentsComponent, isStandalone: true, selector: "valtimo-case-detail-tab-documenten-api-documents", viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "translationTemplate", first: true, predicate: ["translationTemplate"], 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<div\n class=\"carbon-document-table-wrapper\"\n *ngIf=\"{\n loading: loading$ | async,\n fieldsLoading: fieldsLoading$ | async,\n uploading: uploading$ | async,\n relatedFiles: relatedFiles$ | async,\n fields: fields$ | async,\n supportedDocumentenApiFeatures: supportedDocumentenApiFeatures$ | async,\n pagination: pagination$ | async,\n sortState: sortState$ | async,\n uploadFields: uploadFields$ | async,\n defaultValues: defaultValues$ | async,\n hideFields: hideFields$ | async,\n } as obs\"\n>\n @if ((!obs.fieldsLoading && obs.fields.length) || obs.fieldsLoading) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.relatedFiles\"\n [fields]=\"obs.fields\"\n [initialSortState]=\"obs.sortState\"\n [loading]=\"obs.loading\"\n [pagination]=\"obs.pagination\"\n [paginatorConfig]=\"paginatorConfig\"\n paginationIdentifier=\"documentenApi\"\n (rowClicked)=\"onRowClick($event)\"\n (sortChanged)=\"\n obs?.supportedDocumentenApiFeatures?.supportsSortableColumns && onSortChanged($event)\n \"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n hideColumnHeader\n >\n <div carbonToolbarContent>\n <input\n [accept]=\"acceptedFiles\"\n (change)=\"onFileSelected($event)\"\n hidden\n type=\"file\"\n #fileInput\n />\n\n <button\n *ngIf=\"obs?.supportedDocumentenApiFeatures?.supportsFilterableColumns\"\n [cdsOverflowMenu]=\"overflowFilter\"\n [customPane]=\"true\"\n [flip]=\"true\"\n [offset]=\"{x: 0, y: 47}\"\n cdsButton=\"ghost\"\n placement=\"bottom\"\n >\n <svg cdsIcon=\"filter\" size=\"16\"></svg>\n </button>\n\n <ng-container *ngTemplateOutlet=\"uploadButton\"></ng-container>\n </div>\n\n <ng-container *ngTemplateOutlet=\"noResults\"></ng-container>\n </valtimo-carbon-list>\n } @else {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n }\n\n <valtimo-documenten-api-metadata-modal\n [defaultValues]=\"obs.defaultValues\"\n [disableAuthor]=\"obs.uploadFields?.auteur?.readonly\"\n [disableConfidentialityLevel]=\"obs.uploadFields?.vertrouwelijkheidaanduiding?.readonly\"\n [disableCreationDate]=\"obs.uploadFields?.creatiedatum?.readonly\"\n [disableDescription]=\"obs.uploadFields?.beschrijving?.readonly\"\n [disableDocumentTitle]=\"obs.uploadFields?.titel?.readonly\"\n [disableDocumentType]=\"obs.uploadFields?.informatieobjecttype?.readonly\"\n [disableFilename]=\"obs.uploadFields?.bestandsnaam?.readonly\"\n [disableLanguage]=\"obs.uploadFields?.taal?.readonly\"\n [disableStatus]=\"obs.uploadFields?.status?.readonly\"\n [hideFields]=\"obs.hideFields\"\n [open]=\"showUploadModal$ | async\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [isEditMode]=\"isEditMode$ | async\"\n [supportsTrefwoorden]=\"obs?.supportedDocumentenApiFeatures?.supportsTrefwoorden\"\n (modalClose)=\"closeMetadataModal()\"\n (metadata)=\"metadataSet($event)\"\n ></valtimo-documenten-api-metadata-modal>\n</div>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"dashboardManagement.deleteModal.confirm\"\n contentTranslationKey=\"case.documenten.deleteConfirmationModal.content\"\n confirmButtonType=\"danger\"\n titleTranslationKey=\"case.documenten.deleteConfirmationModal.title\"\n [showModalSubject$]=\"showDeleteConfirmationModal$\"\n (confirmEvent)=\"deleteDocument()\"\n>\n</valtimo-confirmation-modal>\n\n<ng-template #noResults>\n @if ((filter$ | async | keyvalue)?.length) {\n <valtimo-no-results\n [action]=\"resetFilterButton\"\n [description]=\"'zgw.documents.noResults.filterDescription' | translate\"\n [title]=\"'zgw.documents.noResults.filterTitle' | translate\"\n ></valtimo-no-results>\n } @else if (showZaakLinkWarning && isAdmin) {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'case.documenten.noZaakFound' | translate\"\n [title]=\"'case.documenten.noZaakFoundTitle' | translate\"\n ></valtimo-no-results>\n } @else {\n <valtimo-no-results\n [action]=\"uploadButton\"\n [description]=\"'case.documenten.noFiles' | translate\"\n [title]=\"'case.documenten.noFilesTitle' | translate\"\n ></valtimo-no-results>\n }\n</ng-template>\n\n<ng-template #overflowFilter>\n <valtimo-case-detail-tab-documenten-api-filter\n [prefillFilter]=\"filter$ | async\"\n (filterEvent)=\"onFilterEvent($event)\"\n ></valtimo-case-detail-tab-documenten-api-filter>\n</ng-template>\n\n<ng-template #resetFilterButton>\n <button cdsButton=\"primary\" (click)=\"onFilterEvent(null)\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #uploadButton let-disabled=\"disabled\">\n <button\n [disabled]=\"\n (uploadProcessLinkedSet && !uploadProcessLinked) ||\n showZaakLinkWarning ||\n disabled ||\n (canCreateResource$ | async) === false\n \"\n [vTooltip]=\"getUploadButtonTooltip() | translate\"\n (click)=\"onUploadButtonClick()\"\n cdsButton=\"primary\"\n >\n {{ 'Upload' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"upload\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #translationTemplate let-data=\"data\">\n @if (data.item[data.key]) {\n {{ 'document.' + data.item[data.key] | translate }}\n } @else {\n -\n }\n</ng-template>\n\n<ng-template #navigateToCaseAdminButton>\n <button (click)=\"onNavigateToCaseAdminClick()\" cdsButton=\"primary\">\n {{ 'case.documenten.navigateToCaseAdmin' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"settings\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: [".hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.carbon-document-table-wrapper{margin:0}.documenten-api-documents-filesize-template{text-align:right}::ng-deep .cds--overflow-menu-options.cds--overflow-menu-options--open{max-width:max-content!important;width:max-content!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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "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: i3.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["disabled$", "file$", "hideFields", "defaultValues", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "supportsTrefwoorden", "disableCreationDate", "isEditMode", "open"], outputs: ["metadata", "modalClose"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: DocumentenApiFilterComponent, selector: "valtimo-case-detail-tab-documenten-api-filter", outputs: ["filterEvent"] }, { kind: "ngmodule", type: DialogModule }, { kind: "directive", type: i5$1.OverflowMenuDirective, selector: "[cdsOverflowMenu], [ibmOverflowMenu]", inputs: ["ibmOverflowMenu", "cdsOverflowMenu", "flip", "offset", "wrapperClass", "customPane"], exportAs: ["overflowMenu"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i3.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"] }] }); }
|
|
1834
1866
|
}
|
|
1835
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1867
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabDocumentenApiDocumentsComponent, decorators: [{
|
|
1836
1868
|
type: Component,
|
|
1837
|
-
args: [{ selector: 'valtimo-
|
|
1869
|
+
args: [{ selector: 'valtimo-case-detail-tab-documenten-api-documents', standalone: true, imports: [
|
|
1838
1870
|
CommonModule,
|
|
1839
1871
|
CarbonListModule,
|
|
1840
1872
|
DocumentenApiMetadataModalComponent,
|
|
@@ -1844,8 +1876,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1844
1876
|
DocumentenApiFilterComponent,
|
|
1845
1877
|
DialogModule,
|
|
1846
1878
|
ConfirmationModalModule,
|
|
1847
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
1848
|
-
}], ctorParameters: () => [{ type:
|
|
1879
|
+
], 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<div\n class=\"carbon-document-table-wrapper\"\n *ngIf=\"{\n loading: loading$ | async,\n fieldsLoading: fieldsLoading$ | async,\n uploading: uploading$ | async,\n relatedFiles: relatedFiles$ | async,\n fields: fields$ | async,\n supportedDocumentenApiFeatures: supportedDocumentenApiFeatures$ | async,\n pagination: pagination$ | async,\n sortState: sortState$ | async,\n uploadFields: uploadFields$ | async,\n defaultValues: defaultValues$ | async,\n hideFields: hideFields$ | async,\n } as obs\"\n>\n @if ((!obs.fieldsLoading && obs.fields.length) || obs.fieldsLoading) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.relatedFiles\"\n [fields]=\"obs.fields\"\n [initialSortState]=\"obs.sortState\"\n [loading]=\"obs.loading\"\n [pagination]=\"obs.pagination\"\n [paginatorConfig]=\"paginatorConfig\"\n paginationIdentifier=\"documentenApi\"\n (rowClicked)=\"onRowClick($event)\"\n (sortChanged)=\"\n obs?.supportedDocumentenApiFeatures?.supportsSortableColumns && onSortChanged($event)\n \"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n hideColumnHeader\n >\n <div carbonToolbarContent>\n <input\n [accept]=\"acceptedFiles\"\n (change)=\"onFileSelected($event)\"\n hidden\n type=\"file\"\n #fileInput\n />\n\n <button\n *ngIf=\"obs?.supportedDocumentenApiFeatures?.supportsFilterableColumns\"\n [cdsOverflowMenu]=\"overflowFilter\"\n [customPane]=\"true\"\n [flip]=\"true\"\n [offset]=\"{x: 0, y: 47}\"\n cdsButton=\"ghost\"\n placement=\"bottom\"\n >\n <svg cdsIcon=\"filter\" size=\"16\"></svg>\n </button>\n\n <ng-container *ngTemplateOutlet=\"uploadButton\"></ng-container>\n </div>\n\n <ng-container *ngTemplateOutlet=\"noResults\"></ng-container>\n </valtimo-carbon-list>\n } @else {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n }\n\n <valtimo-documenten-api-metadata-modal\n [defaultValues]=\"obs.defaultValues\"\n [disableAuthor]=\"obs.uploadFields?.auteur?.readonly\"\n [disableConfidentialityLevel]=\"obs.uploadFields?.vertrouwelijkheidaanduiding?.readonly\"\n [disableCreationDate]=\"obs.uploadFields?.creatiedatum?.readonly\"\n [disableDescription]=\"obs.uploadFields?.beschrijving?.readonly\"\n [disableDocumentTitle]=\"obs.uploadFields?.titel?.readonly\"\n [disableDocumentType]=\"obs.uploadFields?.informatieobjecttype?.readonly\"\n [disableFilename]=\"obs.uploadFields?.bestandsnaam?.readonly\"\n [disableLanguage]=\"obs.uploadFields?.taal?.readonly\"\n [disableStatus]=\"obs.uploadFields?.status?.readonly\"\n [hideFields]=\"obs.hideFields\"\n [open]=\"showUploadModal$ | async\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [isEditMode]=\"isEditMode$ | async\"\n [supportsTrefwoorden]=\"obs?.supportedDocumentenApiFeatures?.supportsTrefwoorden\"\n (modalClose)=\"closeMetadataModal()\"\n (metadata)=\"metadataSet($event)\"\n ></valtimo-documenten-api-metadata-modal>\n</div>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"dashboardManagement.deleteModal.confirm\"\n contentTranslationKey=\"case.documenten.deleteConfirmationModal.content\"\n confirmButtonType=\"danger\"\n titleTranslationKey=\"case.documenten.deleteConfirmationModal.title\"\n [showModalSubject$]=\"showDeleteConfirmationModal$\"\n (confirmEvent)=\"deleteDocument()\"\n>\n</valtimo-confirmation-modal>\n\n<ng-template #noResults>\n @if ((filter$ | async | keyvalue)?.length) {\n <valtimo-no-results\n [action]=\"resetFilterButton\"\n [description]=\"'zgw.documents.noResults.filterDescription' | translate\"\n [title]=\"'zgw.documents.noResults.filterTitle' | translate\"\n ></valtimo-no-results>\n } @else if (showZaakLinkWarning && isAdmin) {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'case.documenten.noZaakFound' | translate\"\n [title]=\"'case.documenten.noZaakFoundTitle' | translate\"\n ></valtimo-no-results>\n } @else {\n <valtimo-no-results\n [action]=\"uploadButton\"\n [description]=\"'case.documenten.noFiles' | translate\"\n [title]=\"'case.documenten.noFilesTitle' | translate\"\n ></valtimo-no-results>\n }\n</ng-template>\n\n<ng-template #overflowFilter>\n <valtimo-case-detail-tab-documenten-api-filter\n [prefillFilter]=\"filter$ | async\"\n (filterEvent)=\"onFilterEvent($event)\"\n ></valtimo-case-detail-tab-documenten-api-filter>\n</ng-template>\n\n<ng-template #resetFilterButton>\n <button cdsButton=\"primary\" (click)=\"onFilterEvent(null)\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #uploadButton let-disabled=\"disabled\">\n <button\n [disabled]=\"\n (uploadProcessLinkedSet && !uploadProcessLinked) ||\n showZaakLinkWarning ||\n disabled ||\n (canCreateResource$ | async) === false\n \"\n [vTooltip]=\"getUploadButtonTooltip() | translate\"\n (click)=\"onUploadButtonClick()\"\n cdsButton=\"primary\"\n >\n {{ 'Upload' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"upload\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #translationTemplate let-data=\"data\">\n @if (data.item[data.key]) {\n {{ 'document.' + data.item[data.key] | translate }}\n } @else {\n -\n }\n</ng-template>\n\n<ng-template #navigateToCaseAdminButton>\n <button (click)=\"onNavigateToCaseAdminClick()\" cdsButton=\"primary\">\n {{ 'case.documenten.navigateToCaseAdmin' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"settings\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: [".hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.carbon-document-table-wrapper{margin:0}.documenten-api-documents-filesize-template{text-align:right}::ng-deep .cds--overflow-menu-options.cds--overflow-menu-options--open{max-width:max-content!important;width:max-content!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"] }]
|
|
1880
|
+
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: DocumentenApiColumnService }, { type: DocumentenApiDocumentService }, { type: DocumentenApiVersionService }, { type: i4$1.DocumentService }, { type: i5$3.DownloadService }, { type: i5$1.IconService }, { type: i7.PermissionService }, { type: i1$2.ActivatedRoute }, { type: i1$2.Router }, { type: i5.TranslateService }, { type: i5$3.UploadProviderService }, { type: i10.UserProviderService }], propDecorators: { fileInput: [{
|
|
1849
1881
|
type: ViewChild,
|
|
1850
1882
|
args: ['fileInput']
|
|
1851
1883
|
}], translationTemplate: [{
|
|
@@ -1854,7 +1886,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1854
1886
|
}] } });
|
|
1855
1887
|
|
|
1856
1888
|
/*
|
|
1857
|
-
* Copyright 2015-
|
|
1889
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1858
1890
|
*
|
|
1859
1891
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1860
1892
|
* you may not use this file except in compliance with the License.
|
|
@@ -1868,14 +1900,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1868
1900
|
* See the License for the specific language governing permissions and
|
|
1869
1901
|
* limitations under the License.
|
|
1870
1902
|
*/
|
|
1871
|
-
class
|
|
1903
|
+
class CaseManagementLinkProcessComponent {
|
|
1904
|
+
//Necessary to trigger outside click detection for combo-box
|
|
1905
|
+
emptyCallback() {
|
|
1906
|
+
return;
|
|
1907
|
+
}
|
|
1872
1908
|
constructor(configService, route, documentenApiLinkProcessService, documentenApiVersionService) {
|
|
1873
1909
|
this.configService = configService;
|
|
1874
1910
|
this.route = route;
|
|
1875
1911
|
this.documentenApiLinkProcessService = documentenApiLinkProcessService;
|
|
1876
1912
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1877
1913
|
this.documentenApiUploadProviders$ = new BehaviorSubject(false);
|
|
1878
|
-
this._documentDefinitionName$ = this.route.params.pipe(map(params => params?.name), filter$1(name => !!name));
|
|
1879
1914
|
this.selectedProcessKey$ = new BehaviorSubject('');
|
|
1880
1915
|
this.processItems$ = combineLatest([
|
|
1881
1916
|
this.documentenApiLinkProcessService.getProcessDefinitions(),
|
|
@@ -1887,32 +1922,40 @@ class DossierManagementLinkProcessComponent {
|
|
|
1887
1922
|
id: process.key,
|
|
1888
1923
|
selected: selectedProcessKey === process.key,
|
|
1889
1924
|
}))), tap(() => this.documentenApiVersionService.refresh()));
|
|
1925
|
+
this._caseParams$ = getCaseManagementRouteParams(this.route);
|
|
1926
|
+
this._subscriptions = new Subscription();
|
|
1890
1927
|
this.disabled$ = new BehaviorSubject(false);
|
|
1891
1928
|
}
|
|
1892
1929
|
ngOnInit() {
|
|
1893
1930
|
this.setDocumentenApiUploaderProvider(this.configService.config);
|
|
1894
1931
|
}
|
|
1932
|
+
ngOnDestroy() {
|
|
1933
|
+
this._subscriptions.unsubscribe();
|
|
1934
|
+
}
|
|
1895
1935
|
selectProcess(item) {
|
|
1896
1936
|
const processDefinitionKey = item?.id;
|
|
1897
1937
|
this.disabled$.next(true);
|
|
1898
1938
|
const currentSelectionId = this.selectedProcessKey$.getValue();
|
|
1899
|
-
if (processDefinitionKey && processDefinitionKey !== currentSelectionId)
|
|
1900
|
-
this.
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
this.
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1939
|
+
if (processDefinitionKey && processDefinitionKey !== currentSelectionId)
|
|
1940
|
+
this.updateProcess(processDefinitionKey);
|
|
1941
|
+
else if (!processDefinitionKey)
|
|
1942
|
+
this.deleteProcess();
|
|
1943
|
+
}
|
|
1944
|
+
deleteProcess() {
|
|
1945
|
+
this._caseParams$
|
|
1946
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.deleteLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1947
|
+
.subscribe(() => {
|
|
1948
|
+
this.selectedProcessKey$.next('');
|
|
1949
|
+
this.disabled$.next(false);
|
|
1950
|
+
});
|
|
1951
|
+
}
|
|
1952
|
+
updateProcess(processDefinitionKey) {
|
|
1953
|
+
this._caseParams$
|
|
1954
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.updateLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '', processDefinitionKey)))
|
|
1955
|
+
.subscribe(processLink => {
|
|
1956
|
+
this.selectedProcessKey$.next(processLink.processDefinitionKey);
|
|
1957
|
+
this.disabled$.next(false);
|
|
1958
|
+
});
|
|
1916
1959
|
}
|
|
1917
1960
|
setDocumentenApiUploaderProvider(config) {
|
|
1918
1961
|
const hasDocumentenApiUploadProvider = config.uploadProvider === UploadProvider.DOCUMENTEN_API;
|
|
@@ -1921,24 +1964,27 @@ class DossierManagementLinkProcessComponent {
|
|
|
1921
1964
|
this.getDefaultSelection();
|
|
1922
1965
|
}
|
|
1923
1966
|
getDefaultSelection() {
|
|
1924
|
-
this.
|
|
1925
|
-
.pipe(switchMap(
|
|
1967
|
+
this._subscriptions.add(this._caseParams$
|
|
1968
|
+
.pipe(switchMap((params) => this.documentenApiLinkProcessService.getLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1926
1969
|
.subscribe(linkedUploadProcess => {
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
}
|
|
1930
|
-
});
|
|
1970
|
+
this.selectedProcessKey$.next(linkedUploadProcess?.processDefinitionKey ?? '');
|
|
1971
|
+
}));
|
|
1931
1972
|
}
|
|
1932
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1933
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1973
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementLinkProcessComponent, deps: [{ token: i2.ConfigService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiLinkProcessService }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1974
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CaseManagementLinkProcessComponent, isStandalone: true, selector: "valtimo-case-management-link-process", inputs: { isReadOnly$: "isReadOnly$" }, host: { listeners: { "document:click": "emptyCallback($event)" } }, 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<div\n *ngIf=\"{\n processItems: processItems$ | async,\n disabled: disabled$ | async,\n isReadOnly: isReadOnly$ | async,\n } as obs\"\n class=\"link-upload-process\"\n>\n <p class=\"link-upload-process__title\">\n {{ 'caseManagement.tabs.generalTab.linkUploadProcess.title' | translate }}\n </p>\n\n <cds-combo-box\n [cdsLayer]=\"1\"\n valtimoReadOnly\n [isReadOnly]=\"obs.isReadOnly\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [label]=\"'caseManagement.tabs.generalTab.linkUploadProcess.label' | translate\"\n [placeholder]=\"\n 'processLinkConfiguration.' + (obs.isReadOnly ? 'noProcess' : 'selectProcess') | translate\n \"\n [disabled]=\"obs.disabled || !obs.processItems || obs.isReadOnly\"\n (selected)=\"selectProcess($event)\"\n >\n <cds-dropdown-list [items]=\"obs.processItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n</div>\n", styles: [".link-upload-process{background-color:var(--cds-layer);padding:24px}.link-upload-process__title{font-size:16px;line-height:24px;font-weight:600;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: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ComboBoxModule }, { kind: "component", type: i5$1.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: i5$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1934
1975
|
}
|
|
1935
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1976
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementLinkProcessComponent, decorators: [{
|
|
1936
1977
|
type: Component,
|
|
1937
|
-
args: [{ selector: 'valtimo-
|
|
1938
|
-
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }]
|
|
1978
|
+
args: [{ selector: 'valtimo-case-management-link-process', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, TranslateModule, ComboBoxModule, LayerModule], 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<div\n *ngIf=\"{\n processItems: processItems$ | async,\n disabled: disabled$ | async,\n isReadOnly: isReadOnly$ | async,\n } as obs\"\n class=\"link-upload-process\"\n>\n <p class=\"link-upload-process__title\">\n {{ 'caseManagement.tabs.generalTab.linkUploadProcess.title' | translate }}\n </p>\n\n <cds-combo-box\n [cdsLayer]=\"1\"\n valtimoReadOnly\n [isReadOnly]=\"obs.isReadOnly\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [label]=\"'caseManagement.tabs.generalTab.linkUploadProcess.label' | translate\"\n [placeholder]=\"\n 'processLinkConfiguration.' + (obs.isReadOnly ? 'noProcess' : 'selectProcess') | translate\n \"\n [disabled]=\"obs.disabled || !obs.processItems || obs.isReadOnly\"\n (selected)=\"selectProcess($event)\"\n >\n <cds-dropdown-list [items]=\"obs.processItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n</div>\n", styles: [".link-upload-process{background-color:var(--cds-layer);padding:24px}.link-upload-process__title{font-size:16px;line-height:24px;font-weight:600;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"] }]
|
|
1979
|
+
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }], propDecorators: { isReadOnly$: [{
|
|
1980
|
+
type: Input
|
|
1981
|
+
}], emptyCallback: [{
|
|
1982
|
+
type: HostListener,
|
|
1983
|
+
args: ['document:click', ['$event']]
|
|
1984
|
+
}] } });
|
|
1939
1985
|
|
|
1940
1986
|
/*
|
|
1941
|
-
* Copyright 2015-
|
|
1987
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1942
1988
|
*
|
|
1943
1989
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1944
1990
|
* you may not use this file except in compliance with the License.
|
|
@@ -1981,9 +2027,7 @@ class DocumentenApiTagModalComponent {
|
|
|
1981
2027
|
}
|
|
1982
2028
|
addTag() {
|
|
1983
2029
|
this.disable();
|
|
1984
|
-
this.documentenApiTagService
|
|
1985
|
-
.createTag(this.documentDefinitionName, this.value.value)
|
|
1986
|
-
.subscribe({
|
|
2030
|
+
this.documentenApiTagService.createTag(this.caseDefinitionKey, this.value.value).subscribe({
|
|
1987
2031
|
next: () => {
|
|
1988
2032
|
this.enable();
|
|
1989
2033
|
this.closeAndRefresh();
|
|
@@ -2015,10 +2059,10 @@ class DocumentenApiTagModalComponent {
|
|
|
2015
2059
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2016
2060
|
this.resetForm();
|
|
2017
2061
|
}
|
|
2018
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2019
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2062
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2063
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiTagModalComponent, isStandalone: true, selector: "valtimo-documenten-api-tag-modal", inputs: { caseDefinitionKey: "caseDefinitionKey", 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\n valtimoCdsModal\n *ngIf=\"{\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"open\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ 'zgw.tags.addModal.header' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"tagFormGroup\" class=\"tag-form\">\n <cds-label\n [invalidText]=\"\n (value?.errors?.['required']\n ? 'zgw.tags.fields.valueRequired'\n : 'zgw.tags.fields.valueMaxLength'\n ) | translate: {maxlength: value?.errors?.maxlength?.requiredLength}\n \"\n [invalid]=\"value.dirty && value.invalid\"\n >\n {{ 'zgw.tags.fields.value' | translate }}\n\n <input\n cdsText\n formControlName=\"value\"\n [attr.modal-primary-focus]=\"true\"\n [invalid]=\"value.dirty && value.invalid\"\n />\n </cds-label>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || pristine || obs.disabled\" (click)=\"addTag()\">\n {{ 'interface.add' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i5$1.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5$1.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5$1.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5$1.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i5$1.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i5$1.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "ngmodule", type: ToggleModule }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2020
2064
|
}
|
|
2021
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2065
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagModalComponent, decorators: [{
|
|
2022
2066
|
type: Component,
|
|
2023
2067
|
args: [{ selector: 'valtimo-documenten-api-tag-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2024
2068
|
CommonModule,
|
|
@@ -2031,8 +2075,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2031
2075
|
DropdownModule,
|
|
2032
2076
|
ToggleModule,
|
|
2033
2077
|
LayerModule,
|
|
2034
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2035
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: {
|
|
2078
|
+
], 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 disabled: disabled$ | async,\n } as obs\"\n [open]=\"open\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ 'zgw.tags.addModal.header' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"tagFormGroup\" class=\"tag-form\">\n <cds-label\n [invalidText]=\"\n (value?.errors?.['required']\n ? 'zgw.tags.fields.valueRequired'\n : 'zgw.tags.fields.valueMaxLength'\n ) | translate: {maxlength: value?.errors?.maxlength?.requiredLength}\n \"\n [invalid]=\"value.dirty && value.invalid\"\n >\n {{ 'zgw.tags.fields.value' | translate }}\n\n <input\n cdsText\n formControlName=\"value\"\n [attr.modal-primary-focus]=\"true\"\n [invalid]=\"value.dirty && value.invalid\"\n />\n </cds-label>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || pristine || obs.disabled\" (click)=\"addTag()\">\n {{ 'interface.add' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n" }]
|
|
2079
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: { caseDefinitionKey: [{
|
|
2036
2080
|
type: Input
|
|
2037
2081
|
}], open: [{
|
|
2038
2082
|
type: Input
|
|
@@ -2041,7 +2085,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2041
2085
|
}] } });
|
|
2042
2086
|
|
|
2043
2087
|
/*
|
|
2044
|
-
* Copyright 2015-
|
|
2088
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2045
2089
|
*
|
|
2046
2090
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2047
2091
|
* you may not use this file except in compliance with the License.
|
|
@@ -2056,14 +2100,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2056
2100
|
* limitations under the License.
|
|
2057
2101
|
*/
|
|
2058
2102
|
class DocumentenApiTagsComponent {
|
|
2059
|
-
get documentDefinitionName$() {
|
|
2060
|
-
return this._documentDefinitionName$;
|
|
2061
|
-
}
|
|
2062
2103
|
constructor(route, documentenApiTagService) {
|
|
2063
2104
|
this.route = route;
|
|
2064
2105
|
this.documentenApiTagService = documentenApiTagService;
|
|
2065
2106
|
this._reload$ = new BehaviorSubject(null);
|
|
2066
|
-
this.
|
|
2107
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey));
|
|
2067
2108
|
this.loading$ = new BehaviorSubject(true);
|
|
2068
2109
|
this.fields$ = new BehaviorSubject([]);
|
|
2069
2110
|
this.addModalClosed$ = new BehaviorSubject(true);
|
|
@@ -2073,14 +2114,13 @@ class DocumentenApiTagsComponent {
|
|
|
2073
2114
|
this.searchTerm$ = new BehaviorSubject('');
|
|
2074
2115
|
this.tagToDelete$ = new BehaviorSubject(null);
|
|
2075
2116
|
this.documentTags$ = combineLatest([
|
|
2076
|
-
this.
|
|
2117
|
+
this.caseDefinitionKey$,
|
|
2077
2118
|
this.searchTerm$,
|
|
2078
2119
|
this._reload$,
|
|
2079
2120
|
]).pipe(tap(([_1, _2, reload]) => {
|
|
2080
|
-
if (reload === null)
|
|
2121
|
+
if (reload === null)
|
|
2081
2122
|
this.loading$.next(true);
|
|
2082
|
-
|
|
2083
|
-
}), switchMap(([documentDefinitionName, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(documentDefinitionName, {
|
|
2123
|
+
}), switchMap(([caseDefinitionKey, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(caseDefinitionKey, {
|
|
2084
2124
|
page: this.pagination.page - 1,
|
|
2085
2125
|
size: this.pagination.size,
|
|
2086
2126
|
search: searchTerm,
|
|
@@ -2121,9 +2161,8 @@ class DocumentenApiTagsComponent {
|
|
|
2121
2161
|
this.addModalClosed$.next(false);
|
|
2122
2162
|
}
|
|
2123
2163
|
closeModal(closeModalEvent) {
|
|
2124
|
-
if (closeModalEvent === 'closeAndRefresh')
|
|
2164
|
+
if (closeModalEvent === 'closeAndRefresh')
|
|
2125
2165
|
this.reload();
|
|
2126
|
-
}
|
|
2127
2166
|
this.addModalClosed$.next(true);
|
|
2128
2167
|
}
|
|
2129
2168
|
showDeleteMultipleModal() {
|
|
@@ -2142,15 +2181,15 @@ class DocumentenApiTagsComponent {
|
|
|
2142
2181
|
this.reload();
|
|
2143
2182
|
}
|
|
2144
2183
|
confirmDeleteTag(tag) {
|
|
2145
|
-
this.
|
|
2146
|
-
.pipe(switchMap(
|
|
2184
|
+
this.caseDefinitionKey$
|
|
2185
|
+
.pipe(switchMap(caseDefinitionKey => this.documentenApiTagService.deleteTag(caseDefinitionKey, tag.value)))
|
|
2147
2186
|
.subscribe(() => {
|
|
2148
2187
|
this.reload();
|
|
2149
2188
|
});
|
|
2150
2189
|
}
|
|
2151
2190
|
confirmDeleteMultipleTag(tagsToDelete) {
|
|
2152
2191
|
this.documentenApiTagService
|
|
2153
|
-
.deleteTags(tagsToDelete.
|
|
2192
|
+
.deleteTags(tagsToDelete.caseDefinitionKey, tagsToDelete.tagIds)
|
|
2154
2193
|
.subscribe(() => {
|
|
2155
2194
|
const lastPage = Math.ceil(this.pagination.collectionSize / this.pagination.size);
|
|
2156
2195
|
if (tagsToDelete.itemsOnCurrentPage <= tagsToDelete.tagIds.length &&
|
|
@@ -2168,10 +2207,10 @@ class DocumentenApiTagsComponent {
|
|
|
2168
2207
|
reload(noAnimation = false) {
|
|
2169
2208
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2170
2209
|
}
|
|
2171
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2172
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2210
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2211
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiTagsComponent, isStandalone: true, selector: "valtimo-documenten-api-tags", viewQueries: [{ propertyName: "carbonList", first: true, predicate: CarbonListComponent, 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 loading: loading$ | async,\n documentTags: documentTags$ | async,\n addModalClosed: addModalClosed$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n selectedRowKeys: selectedRowKeys$ | async,\n searchTerm: searchTerm$ | async,\n showDeleteModal: showDeleteModal$ | async,\n tagToDelete: tagToDelete$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentTags\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [showSelectionColumn]=\"true\"\n [isSearchable]=\"true\"\n [pagination]=\"pagination\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n (search)=\"searchTermEntered($event)\"\n >\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addButtton\"></ng-container>\n\n <ng-container carbonToolbarActions>\n <button cdsButton=\"primary\" (click)=\"showDeleteMultipleModal()\">\n {{ 'interface.delete' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm === ''\"\n [action]=\"addButtton\"\n title=\"{{ 'zgw.tags.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm !== ''\"\n title=\"{{ 'zgw.tags.search.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.search.noResultsDescription' | translate }}\"\n illustration=\"valtimo-layout/img/emptystate-no-result.svg\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-tag-modal\n [open]=\"!obs.addModalClosed\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-tag-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"zgw.tags.deleteText\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"obs.tagToDelete\"\n (confirmEvent)=\"confirmDeleteTag($event)\"\n ></valtimo-confirmation-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n [contentTranslationKey]=\"\n obs.selectedRowKeys.length > 1 ? 'zgw.tags.deleteMultipleText' : 'zgw.tags.deleteText'\n \"\n [showModalSubject$]=\"showDeleteMultipleModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"{\n caseDefinitionKey: obs.caseDefinitionKey,\n tagIds: obs.selectedRowKeys,\n itemsOnCurrentPage: obs.documentTags.length,\n }\"\n (confirmEvent)=\"confirmDeleteMultipleTag($event)\"\n ></valtimo-confirmation-modal>\n\n <ng-template #addButtton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"openAddModal()\">\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n {{ 'zgw.tags.add' | translate }}\n </button>\n </ng-template>\n</ng-container>\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "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: i3.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i3.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: TagModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: DocumentenApiTagModalComponent, selector: "valtimo-documenten-api-tag-modal", inputs: ["caseDefinitionKey", "open"], outputs: ["closeModalEvent"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2173
2212
|
}
|
|
2174
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2213
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagsComponent, decorators: [{
|
|
2175
2214
|
type: Component,
|
|
2176
2215
|
args: [{ selector: 'valtimo-documenten-api-tags', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2177
2216
|
CommonModule,
|
|
@@ -2182,14 +2221,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2182
2221
|
ButtonModule,
|
|
2183
2222
|
DocumentenApiTagModalComponent,
|
|
2184
2223
|
IconModule,
|
|
2185
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2224
|
+
], 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 loading: loading$ | async,\n documentTags: documentTags$ | async,\n addModalClosed: addModalClosed$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n selectedRowKeys: selectedRowKeys$ | async,\n searchTerm: searchTerm$ | async,\n showDeleteModal: showDeleteModal$ | async,\n tagToDelete: tagToDelete$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentTags\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [showSelectionColumn]=\"true\"\n [isSearchable]=\"true\"\n [pagination]=\"pagination\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n (search)=\"searchTermEntered($event)\"\n >\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addButtton\"></ng-container>\n\n <ng-container carbonToolbarActions>\n <button cdsButton=\"primary\" (click)=\"showDeleteMultipleModal()\">\n {{ 'interface.delete' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm === ''\"\n [action]=\"addButtton\"\n title=\"{{ 'zgw.tags.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm !== ''\"\n title=\"{{ 'zgw.tags.search.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.search.noResultsDescription' | translate }}\"\n illustration=\"valtimo-layout/img/emptystate-no-result.svg\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-tag-modal\n [open]=\"!obs.addModalClosed\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-tag-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"zgw.tags.deleteText\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"obs.tagToDelete\"\n (confirmEvent)=\"confirmDeleteTag($event)\"\n ></valtimo-confirmation-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n [contentTranslationKey]=\"\n obs.selectedRowKeys.length > 1 ? 'zgw.tags.deleteMultipleText' : 'zgw.tags.deleteText'\n \"\n [showModalSubject$]=\"showDeleteMultipleModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"{\n caseDefinitionKey: obs.caseDefinitionKey,\n tagIds: obs.selectedRowKeys,\n itemsOnCurrentPage: obs.documentTags.length,\n }\"\n (confirmEvent)=\"confirmDeleteMultipleTag($event)\"\n ></valtimo-confirmation-modal>\n\n <ng-template #addButtton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"openAddModal()\">\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n {{ 'zgw.tags.add' | translate }}\n </button>\n </ng-template>\n</ng-container>\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"] }]
|
|
2186
2225
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiTagService }], propDecorators: { carbonList: [{
|
|
2187
2226
|
type: ViewChild,
|
|
2188
2227
|
args: [CarbonListComponent]
|
|
2189
2228
|
}] } });
|
|
2190
2229
|
|
|
2191
2230
|
/*
|
|
2192
|
-
* Copyright 2015-
|
|
2231
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2193
2232
|
*
|
|
2194
2233
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2195
2234
|
* you may not use this file except in compliance with the License.
|
|
@@ -2227,11 +2266,12 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2227
2266
|
get invalid() {
|
|
2228
2267
|
return !!this.formGroup?.invalid;
|
|
2229
2268
|
}
|
|
2230
|
-
constructor(fb, documentenApiDocumentService, translateService, documentService) {
|
|
2269
|
+
constructor(fb, documentenApiDocumentService, translateService, documentService, route) {
|
|
2231
2270
|
this.fb = fb;
|
|
2232
2271
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2233
2272
|
this.translateService = translateService;
|
|
2234
2273
|
this.documentService = documentService;
|
|
2274
|
+
this.route = route;
|
|
2235
2275
|
this.closeModalEvent = new EventEmitter();
|
|
2236
2276
|
this.formGroup = this.fb.group({
|
|
2237
2277
|
defaultValue: this.fb.control('', [Validators.maxLength(256)]),
|
|
@@ -2264,11 +2304,13 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2264
2304
|
content: this.translateService.instant(`document.${item}`),
|
|
2265
2305
|
selected: selectedItem === item,
|
|
2266
2306
|
}))));
|
|
2307
|
+
this._context = getCaseManagementRouteParams(this.route);
|
|
2267
2308
|
this.documentTypeItems$ = combineLatest([
|
|
2309
|
+
this._context,
|
|
2268
2310
|
this.defaultValue.valueChanges,
|
|
2269
2311
|
this.translateService.stream('key'),
|
|
2270
|
-
]).pipe(switchMap(([selectedItem]) => combineLatest([
|
|
2271
|
-
this.documentService.
|
|
2312
|
+
]).pipe(switchMap(([params, selectedItem]) => combineLatest([
|
|
2313
|
+
this.documentService.getDocumentTypesForCase(params.caseDefinitionKey, params.caseDefinitionVersionTag),
|
|
2272
2314
|
of(selectedItem),
|
|
2273
2315
|
])), map(([documentTypes, selectedItem]) => documentTypes.map(item => ({
|
|
2274
2316
|
id: item.url,
|
|
@@ -2296,7 +2338,7 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2296
2338
|
readonly: this.readonly.value,
|
|
2297
2339
|
};
|
|
2298
2340
|
this.documentenApiDocumentService
|
|
2299
|
-
.updateUploadField(this.
|
|
2341
|
+
.updateUploadField(this.caseDefinitionKey, formField)
|
|
2300
2342
|
.subscribe({
|
|
2301
2343
|
next: () => {
|
|
2302
2344
|
this.enable();
|
|
@@ -2329,10 +2371,10 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2329
2371
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2330
2372
|
this.resetForm();
|
|
2331
2373
|
}
|
|
2332
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2333
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2374
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiDocumentService }, { token: i5.TranslateService }, { token: i4$1.DocumentService }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2375
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: DocumentenApiUploadFieldModalComponent, isStandalone: true, selector: "valtimo-documenten-api-upload-field-modal", inputs: { caseDefinitionKey: "caseDefinitionKey", type: "type", prefill: "prefill" }, 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 disabled: disabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n statusItems: statusItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n } as obs\"\n [open]=\"type !== 'closed'\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n ('zgw.uploadFields.editModal.header' | translate) +\n ' - ' +\n ('zgw.uploadFields.keys.' + key | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"formGroup\" class=\"uploadField-form\">\n @if (key === 'taal') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'vertrouwelijkheidaanduiding') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'status') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'informatieobjecttype') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (\n key === 'filename' ||\n key === 'bestandsnaam' ||\n key === 'titel' ||\n key === 'beschrijving' ||\n key === 'trefwoorden'\n ) {\n <cds-label>\n {{ 'zgw.uploadFields.fields.defaultValue' | translate }}\n <input cdsText formControlName=\"defaultValue\" />\n </cds-label>\n }\n <div class=\"toggle-group\">\n <cds-toggle\n formControlName=\"visible\"\n [label]=\"'zgw.uploadFields.fields.visible' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n <cds-toggle\n formControlName=\"readonly\"\n [label]=\"'zgw.uploadFields.fields.readonly' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n </div>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || obs.disabled\" (click)=\"saveUploadField()\">\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".toggle-group{display:flex;flex-direction:column;margin-top:16px;gap: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: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i5$1.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5$1.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5$1.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5$1.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i5$1.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i5$1.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: ToggleModule }, { kind: "component", type: i5$1.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "ngmodule", type: ComboBoxModule }, { kind: "component", type: i5$1.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: i5$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2334
2376
|
}
|
|
2335
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2377
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, decorators: [{
|
|
2336
2378
|
type: Component,
|
|
2337
2379
|
args: [{ selector: 'valtimo-documenten-api-upload-field-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2338
2380
|
CommonModule,
|
|
@@ -2345,8 +2387,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2345
2387
|
CheckboxModule,
|
|
2346
2388
|
ComboBoxModule,
|
|
2347
2389
|
LayerModule,
|
|
2348
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2349
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type:
|
|
2390
|
+
], 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 disabled: disabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n statusItems: statusItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n } as obs\"\n [open]=\"type !== 'closed'\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n ('zgw.uploadFields.editModal.header' | translate) +\n ' - ' +\n ('zgw.uploadFields.keys.' + key | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"formGroup\" class=\"uploadField-form\">\n @if (key === 'taal') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'vertrouwelijkheidaanduiding') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'status') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'informatieobjecttype') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (\n key === 'filename' ||\n key === 'bestandsnaam' ||\n key === 'titel' ||\n key === 'beschrijving' ||\n key === 'trefwoorden'\n ) {\n <cds-label>\n {{ 'zgw.uploadFields.fields.defaultValue' | translate }}\n <input cdsText formControlName=\"defaultValue\" />\n </cds-label>\n }\n <div class=\"toggle-group\">\n <cds-toggle\n formControlName=\"visible\"\n [label]=\"'zgw.uploadFields.fields.visible' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n <cds-toggle\n formControlName=\"readonly\"\n [label]=\"'zgw.uploadFields.fields.readonly' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n </div>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || obs.disabled\" (click)=\"saveUploadField()\">\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".toggle-group{display:flex;flex-direction:column;margin-top:16px;gap: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"] }]
|
|
2391
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i4$1.DocumentService }, { type: i1$2.ActivatedRoute }], propDecorators: { caseDefinitionKey: [{
|
|
2350
2392
|
type: Input
|
|
2351
2393
|
}], type: [{
|
|
2352
2394
|
type: Input
|
|
@@ -2357,7 +2399,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2357
2399
|
}] } });
|
|
2358
2400
|
|
|
2359
2401
|
/*
|
|
2360
|
-
* Copyright 2015-
|
|
2402
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2361
2403
|
*
|
|
2362
2404
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2363
2405
|
* you may not use this file except in compliance with the License.
|
|
@@ -2372,33 +2414,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2372
2414
|
* limitations under the License.
|
|
2373
2415
|
*/
|
|
2374
2416
|
class DocumentenApiUploadFieldsComponent {
|
|
2375
|
-
|
|
2376
|
-
return this._documentDefinitionName$;
|
|
2377
|
-
}
|
|
2378
|
-
constructor(route, documentenApiDocumentService, translateService) {
|
|
2417
|
+
constructor(route, documentenApiDocumentService, translateService, editPermissionsService) {
|
|
2379
2418
|
this.route = route;
|
|
2380
2419
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2381
2420
|
this.translateService = translateService;
|
|
2421
|
+
this.editPermissionsService = editPermissionsService;
|
|
2382
2422
|
this._reload$ = new BehaviorSubject(null);
|
|
2383
|
-
this.
|
|
2423
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter(caseDefinitionKey => !!caseDefinitionKey));
|
|
2384
2424
|
this.loading$ = new BehaviorSubject(true);
|
|
2385
2425
|
this.fields$ = new BehaviorSubject([]);
|
|
2386
2426
|
this.uploadFieldModalType$ = new BehaviorSubject('closed');
|
|
2387
2427
|
this.prefill$ = new BehaviorSubject(undefined);
|
|
2388
2428
|
this.documentUploadFields$ = combineLatest([
|
|
2389
|
-
this.
|
|
2429
|
+
this.caseDefinitionKey$,
|
|
2390
2430
|
this._reload$,
|
|
2391
2431
|
this.translateService.stream('key'),
|
|
2392
2432
|
]).pipe(tap(([_, reload]) => {
|
|
2393
2433
|
if (reload === null) {
|
|
2394
2434
|
this.loading$.next(true);
|
|
2395
2435
|
}
|
|
2396
|
-
}), switchMap(([
|
|
2436
|
+
}), switchMap(([caseDefinitionKey]) => this.documentenApiDocumentService.getUploadFields(caseDefinitionKey)), map(fields => fields.map(field => ({
|
|
2397
2437
|
...field,
|
|
2398
2438
|
field: this.translateService.instant(`zgw.uploadFields.keys.${field.key}`),
|
|
2399
2439
|
}))), startWith([]), tap(() => {
|
|
2400
2440
|
this.loading$.next(false);
|
|
2401
2441
|
}));
|
|
2442
|
+
this.hasEditPermissions$ = getCaseManagementRouteParams(this.route).pipe(switchMap(params => this.editPermissionsService.hasEditPermissions(params?.caseDefinitionKey, params?.caseDefinitionVersionTag)));
|
|
2402
2443
|
this.ACTION_ITEMS = [
|
|
2403
2444
|
{
|
|
2404
2445
|
label: 'interface.edit',
|
|
@@ -2430,8 +2471,13 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2430
2471
|
];
|
|
2431
2472
|
}
|
|
2432
2473
|
openEditModal(uploadField) {
|
|
2433
|
-
this.
|
|
2434
|
-
|
|
2474
|
+
this.hasEditPermissions$.pipe(take(1)).subscribe(hasPermission => {
|
|
2475
|
+
if (!hasPermission && uploadField.key !== 'informatieobjecttype') {
|
|
2476
|
+
return;
|
|
2477
|
+
}
|
|
2478
|
+
this.prefill$.next(uploadField);
|
|
2479
|
+
this.uploadFieldModalType$.next('edit');
|
|
2480
|
+
});
|
|
2435
2481
|
}
|
|
2436
2482
|
closeModal(closeModalEvent) {
|
|
2437
2483
|
if (closeModalEvent === 'closeAndRefresh') {
|
|
@@ -2442,10 +2488,10 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2442
2488
|
reload(noAnimation = false) {
|
|
2443
2489
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2444
2490
|
}
|
|
2445
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2446
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2491
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiDocumentService }, { token: i5.TranslateService }, { token: i2.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2492
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiUploadFieldsComponent, isStandalone: true, selector: "valtimo-documenten-api-upload-fields", viewQueries: [{ propertyName: "carbonList", first: true, predicate: CarbonListComponent, 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 loading: loading$ | async,\n documentUploadFields: documentUploadFields$ | async,\n uploadFieldModalType: uploadFieldModalType$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n prefill: prefill$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentUploadFields\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n >\n <valtimo-no-results\n title=\"{{ 'zgw.uploadFields.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.uploadFields.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-upload-field-modal\n [prefill]=\"obs.prefill\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [type]=\"obs.uploadFieldModalType\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-upload-field-modal>\n</ng-container>\n", styles: ["::ng-deep .cds-upload-field--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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "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: i3.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: DocumentenApiUploadFieldModalComponent, selector: "valtimo-documenten-api-upload-field-modal", inputs: ["caseDefinitionKey", "type", "prefill"], outputs: ["closeModalEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2447
2493
|
}
|
|
2448
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2494
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldsComponent, decorators: [{
|
|
2449
2495
|
type: Component,
|
|
2450
2496
|
args: [{ selector: 'valtimo-documenten-api-upload-fields', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2451
2497
|
CommonModule,
|
|
@@ -2455,14 +2501,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2455
2501
|
ButtonModule,
|
|
2456
2502
|
IconModule,
|
|
2457
2503
|
DocumentenApiUploadFieldModalComponent,
|
|
2458
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2459
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type:
|
|
2504
|
+
], 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 loading: loading$ | async,\n documentUploadFields: documentUploadFields$ | async,\n uploadFieldModalType: uploadFieldModalType$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n prefill: prefill$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentUploadFields\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n >\n <valtimo-no-results\n title=\"{{ 'zgw.uploadFields.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.uploadFields.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-upload-field-modal\n [prefill]=\"obs.prefill\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [type]=\"obs.uploadFieldModalType\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-upload-field-modal>\n</ng-container>\n", styles: ["::ng-deep .cds-upload-field--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"] }]
|
|
2505
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i2.EditPermissionsService }], propDecorators: { carbonList: [{
|
|
2460
2506
|
type: ViewChild,
|
|
2461
2507
|
args: [CarbonListComponent]
|
|
2462
2508
|
}] } });
|
|
2463
2509
|
|
|
2464
2510
|
/*
|
|
2465
|
-
* Copyright 2015-
|
|
2511
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2466
2512
|
*
|
|
2467
2513
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2468
2514
|
* you may not use this file except in compliance with the License.
|
|
@@ -2481,19 +2527,19 @@ class DocumentenApiVersionComponent {
|
|
|
2481
2527
|
this.route = route;
|
|
2482
2528
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
2483
2529
|
this.loading$ = new BehaviorSubject(true);
|
|
2484
|
-
this.
|
|
2485
|
-
this.documentenApiVersion$ = combineLatest([this.
|
|
2530
|
+
this.caseManagementRouteParams$ = getCaseManagementRouteParams(this.route);
|
|
2531
|
+
this.documentenApiVersion$ = combineLatest([this.caseManagementRouteParams$, this.documentenApiVersionService.refresh$]).pipe(tap(() => this.loading$.next(true)), switchMap(([params]) => this.documentenApiVersionService.getManagementApiVersion(params?.caseDefinitionKey ?? '')), tap(() => this.loading$.next(false)));
|
|
2486
2532
|
}
|
|
2487
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2488
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2533
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2534
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiVersionComponent, isStandalone: true, selector: "valtimo-documenten-api-version", 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 *ngIf=\"{loading: loading$ | async, documentenApiVersion: documentenApiVersion$ | async} as obs\"\n>\n <h2 class=\"documenten-api-version__title\">{{ 'openZaak.documentenApi.title' | translate }}</h2>\n\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container\n *ngIf=\"obs.documentenApiVersion.selectedVersion; else noDocumentenApiVersionWarning\"\n >\n <ng-container\n *ngIf=\"\n obs.documentenApiVersion.detectedVersions.length === 1;\n else multipleDocumentenApiVersionsWarning\n \"\n >\n {{ 'openZaak.documentenApi.documentenApiVersion' | translate }}\n <strong> {{ obs.documentenApiVersion.selectedVersion }} </strong>\n </ng-container>\n </ng-container>\n </ng-container>\n</cds-tile>\n\n<ng-template #noDocumentenApiVersionWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.noVersionWarningTitle' | translate,\n message: 'openZaak.documentenApi.noVersionWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #multipleDocumentenApiVersionsWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.multipleVersionsWarningTitle' | translate,\n message: 'openZaak.documentenApi.multipleVersionsWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"loading-container pb-2\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.documenten-api-version__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.loading-container{display:flex;width:100%;justify-content:center}\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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: LoadingModule }, { kind: "component", type: i5$1.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "component", type: i5$1.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "ngmodule", type: TilesModule }, { kind: "component", type: i5$1.Tile, selector: "cds-tile, ibm-tile", inputs: ["theme"] }] }); }
|
|
2489
2535
|
}
|
|
2490
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionComponent, decorators: [{
|
|
2491
2537
|
type: Component,
|
|
2492
|
-
args: [{ selector: 'valtimo-documenten-api-version', standalone: true, imports: [CommonModule, TranslateModule, LoadingModule, NotificationModule], template: "<!--\n ~ Copyright 2015-
|
|
2538
|
+
args: [{ selector: 'valtimo-documenten-api-version', standalone: true, imports: [CommonModule, TranslateModule, LoadingModule, NotificationModule, TilesModule], 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 *ngIf=\"{loading: loading$ | async, documentenApiVersion: documentenApiVersion$ | async} as obs\"\n>\n <h2 class=\"documenten-api-version__title\">{{ 'openZaak.documentenApi.title' | translate }}</h2>\n\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container\n *ngIf=\"obs.documentenApiVersion.selectedVersion; else noDocumentenApiVersionWarning\"\n >\n <ng-container\n *ngIf=\"\n obs.documentenApiVersion.detectedVersions.length === 1;\n else multipleDocumentenApiVersionsWarning\n \"\n >\n {{ 'openZaak.documentenApi.documentenApiVersion' | translate }}\n <strong> {{ obs.documentenApiVersion.selectedVersion }} </strong>\n </ng-container>\n </ng-container>\n </ng-container>\n</cds-tile>\n\n<ng-template #noDocumentenApiVersionWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.noVersionWarningTitle' | translate,\n message: 'openZaak.documentenApi.noVersionWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #multipleDocumentenApiVersionsWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.multipleVersionsWarningTitle' | translate,\n message: 'openZaak.documentenApi.multipleVersionsWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"loading-container pb-2\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.documenten-api-version__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.loading-container{display:flex;width:100%;justify-content:center}\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"] }]
|
|
2493
2539
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }] });
|
|
2494
2540
|
|
|
2495
2541
|
/*
|
|
2496
|
-
* Copyright 2015-
|
|
2542
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2497
2543
|
*
|
|
2498
2544
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2499
2545
|
* you may not use this file except in compliance with the License.
|
|
@@ -2509,7 +2555,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2509
2555
|
*/
|
|
2510
2556
|
|
|
2511
2557
|
/*
|
|
2512
|
-
* Copyright 2015-
|
|
2558
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2513
2559
|
*
|
|
2514
2560
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2515
2561
|
* you may not use this file except in compliance with the License.
|
|
@@ -3063,7 +3109,7 @@ const documentenApiUploaderEditForm = () => ({
|
|
|
3063
3109
|
});
|
|
3064
3110
|
|
|
3065
3111
|
/*
|
|
3066
|
-
* Copyright 2015-
|
|
3112
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3067
3113
|
*
|
|
3068
3114
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3069
3115
|
* you may not use this file except in compliance with the License.
|
|
@@ -3145,11 +3191,9 @@ class DocumentenApiUploaderComponent {
|
|
|
3145
3191
|
set hideTags(hide) {
|
|
3146
3192
|
this.hideField(hide, 'trefwoorden');
|
|
3147
3193
|
}
|
|
3148
|
-
constructor(uploadProviderService,
|
|
3194
|
+
constructor(uploadProviderService, domService, modalService, userProviderService, route, documentenApiVersionService) {
|
|
3149
3195
|
this.uploadProviderService = uploadProviderService;
|
|
3150
|
-
this.stateService = stateService;
|
|
3151
3196
|
this.domService = domService;
|
|
3152
|
-
this.downloadService = downloadService;
|
|
3153
3197
|
this.modalService = modalService;
|
|
3154
3198
|
this.userProviderService = userProviderService;
|
|
3155
3199
|
this.route = route;
|
|
@@ -3159,18 +3203,18 @@ class DocumentenApiUploaderComponent {
|
|
|
3159
3203
|
this.fileToBeUploaded$ = new BehaviorSubject(null);
|
|
3160
3204
|
this.modalDisabled$ = new BehaviorSubject(false);
|
|
3161
3205
|
this.showModal = signal(false);
|
|
3162
|
-
this.uploadProcessLinked$ = this.modalService.
|
|
3206
|
+
this.uploadProcessLinked$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), startWith('loading'));
|
|
3163
3207
|
this.isAdmin$ = this.userProviderService
|
|
3164
3208
|
.getUserSubject()
|
|
3165
3209
|
.pipe(map$1(userIdentity => userIdentity?.roles.includes('ROLE_ADMIN')));
|
|
3166
|
-
this.supportedDocumentenApiFeatures$ = this.modalService.
|
|
3210
|
+
this.supportedDocumentenApiFeatures$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey)));
|
|
3167
3211
|
this.defaultValues = {};
|
|
3168
3212
|
this.hideFields = [];
|
|
3169
3213
|
this._subscriptions = new Subscription();
|
|
3170
3214
|
this._value = [];
|
|
3171
3215
|
}
|
|
3172
3216
|
ngOnInit() {
|
|
3173
|
-
this.
|
|
3217
|
+
this.openCaseDefinitionKeySubscription();
|
|
3174
3218
|
}
|
|
3175
3219
|
ngOnDestroy() {
|
|
3176
3220
|
this._subscriptions.unsubscribe();
|
|
@@ -3200,7 +3244,7 @@ class DocumentenApiUploaderComponent {
|
|
|
3200
3244
|
this.showModal.set(false);
|
|
3201
3245
|
this.domService.toggleSubmitButton(true);
|
|
3202
3246
|
this.fileToBeUploaded$
|
|
3203
|
-
.pipe(take
|
|
3247
|
+
.pipe(take(1), switchMap(file => this.uploadProviderService.uploadTempFileWithMetadata(file, metadata)), tap$1(result => {
|
|
3204
3248
|
this.domService.toggleSubmitButton(false);
|
|
3205
3249
|
this.uploading$.next(false);
|
|
3206
3250
|
this._value.push(result);
|
|
@@ -3208,10 +3252,10 @@ class DocumentenApiUploaderComponent {
|
|
|
3208
3252
|
}))
|
|
3209
3253
|
.subscribe();
|
|
3210
3254
|
}
|
|
3211
|
-
|
|
3255
|
+
openCaseDefinitionKeySubscription() {
|
|
3212
3256
|
this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
|
|
3213
|
-
.pipe(map$1(([params, firstChildParams]) => (params?.
|
|
3214
|
-
.subscribe(
|
|
3257
|
+
.pipe(map$1(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter$1(caseDefinitionKey => !!caseDefinitionKey))
|
|
3258
|
+
.subscribe(caseDefinitionKey => this.modalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
3215
3259
|
}
|
|
3216
3260
|
hideField(hide, field) {
|
|
3217
3261
|
const exists = this.hideFields.includes(field);
|
|
@@ -3222,13 +3266,13 @@ class DocumentenApiUploaderComponent {
|
|
|
3222
3266
|
delete this.hideFields[field];
|
|
3223
3267
|
}
|
|
3224
3268
|
}
|
|
3225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3269
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploaderComponent, deps: [{ token: i5$3.UploadProviderService }, { token: i3.FormIoDomService }, { token: i3.ValtimoModalService }, { token: i10.UserProviderService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3270
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentenApiUploaderComponent, isStandalone: false, selector: "valtimo-documenten-api-formio-uploader", inputs: { disabled: "disabled", title: "title", hideTitle: "hideTitle", subtitle: "subtitle", maxFileSize: "maxFileSize", hideMaxFileSize: "hideMaxFileSize", camera: "camera", documentTitle: "documentTitle", hideDocumentTitle: "hideDocumentTitle", disableDocumentTitle: "disableDocumentTitle", filename: "filename", hideFilename: "hideFilename", disableFilename: "disableFilename", author: "author", hideAuthor: "hideAuthor", disableAuthor: "disableAuthor", status: "status", hideStatus: "hideStatus", disableStatus: "disableStatus", language: "language", hideLanguage: "hideLanguage", disableLanguage: "disableLanguage", documentType: "documentType", hideDocumentType: "hideDocumentType", disableDocumentType: "disableDocumentType", description: "description", hideDescription: "hideDescription", disableDescription: "disableDescription", confidentialityLevel: "confidentialityLevel", hideConfidentialityLevel: "hideConfidentialityLevel", disableConfidentialityLevel: "disableConfidentialityLevel", hideCreationDate: "hideCreationDate", disableCreationDate: "disableCreationDate", hideAdditionalDate: "hideAdditionalDate", tags: "tags", hideTags: "hideTags", value: "value" }, outputs: { valueChange: "valueChange" }, 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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'case.documenten.noProcessLinked.adminRole'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n <div\n *ngIf=\"!obs.isAdmin\"\n [translate]=\"'case.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"null\"\n [camera]=\"camera\"\n [disabled]=\"disabled || obs.linked === false || obs.linked === 'loading'\"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"hideTitle\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"!hideMaxFileSize\"\n [subtitle]=\"subtitle\"\n [title]=\"title\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n</ng-container>\n\n<div *ngFor=\"let resource of _value\" class=\"file-preview\">\n <div class=\"file-preview-name\">\n <span>\n {{ resource.filename }}\n </span>\n </div>\n <div class=\"file-preview-size\">\n <span>\n {{ resource.sizeInBytes | filesize }}\n </span>\n </div>\n <div *ngIf=\"!disabled\" class=\"file-preview-delete\">\n <a (click)=\"deleteFile(resource.id)\">\n <i class=\"icon mdi mdi-delete\"></i>\n </a>\n </div>\n</div>\n\n<valtimo-documenten-api-metadata-modal\n class=\"documenten-api-uploader-metadata-modal\"\n (metadata)=\"metadataSet($event)\"\n (modalClose)=\"closeMetadataModal()\"\n [defaultValues]=\"defaultValues\"\n [disableAuthor]=\"disableAuthor\"\n [disableConfidentialityLevel]=\"disableConfidentialityLevel\"\n [disableCreationDate]=\"disableCreationDate\"\n [disableDescription]=\"disableDescription\"\n [disableDocumentTitle]=\"disableDocumentTitle\"\n [disableDocumentType]=\"disableDocumentType\"\n [disableFilename]=\"disableFilename\"\n [disableLanguage]=\"disableLanguage\"\n [disableStatus]=\"disableStatus\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hideFields]=\"hideFields\"\n [supportsTrefwoorden]=\"(supportedDocumentenApiFeatures$ | async)?.supportsTrefwoorden\"\n [open]=\"showModal()\"\n></valtimo-documenten-api-metadata-modal>\n", styles: [".progress-bar-container{padding:15px 20px}::ng-deep .formio-component-valtimo-file .formio-button-add-another,::ng-deep .formio-component-valtimo-file .btn-secondary{display:none}::ng-deep .formio-component-valtimo-file td{padding:0!important;border:none}::ng-deep .formio-component-valtimo-file .table{border-collapse:collapse;border:none;margin:10px 0}.dropzone-container{margin-bottom:12px}.file-preview{margin-top:-1px;display:flex;border:1px solid #dee2e6}.file-preview div{padding:12px 10px}.file-preview .file-preview-name{width:65%}.file-preview .file-preview-size{width:35%}.file-preview .icon{color:#a1a1a1;font-size:1.3846rem;line-height:18px;cursor:pointer}.file-preview .icon:hover{color:gray}\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: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.DropzoneComponent, selector: "valtimo-dropzone", inputs: ["title", "hideTitle", "subtitle", "externalError$", "maxFileSize", "showMaxFileSize", "acceptedFiles", "clear$", "disabled", "hideFilePreview", "uploading", "camera", "maxFiles"], outputs: ["fileSelected"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["disabled$", "file$", "hideFields", "defaultValues", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "supportsTrefwoorden", "disableCreationDate", "isEditMode", "open"], outputs: ["metadata", "modalClose"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.FileSizePipe, name: "filesize" }] }); }
|
|
3227
3271
|
}
|
|
3228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploaderComponent, decorators: [{
|
|
3229
3273
|
type: Component,
|
|
3230
|
-
args: [{ selector: 'valtimo-documenten-api-formio-uploader', template: "<!--\n ~ Copyright 2015-
|
|
3231
|
-
}], ctorParameters: () => [{ type:
|
|
3274
|
+
args: [{ standalone: false, selector: 'valtimo-documenten-api-formio-uploader', 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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'case.documenten.noProcessLinked.adminRole'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n <div\n *ngIf=\"!obs.isAdmin\"\n [translate]=\"'case.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"null\"\n [camera]=\"camera\"\n [disabled]=\"disabled || obs.linked === false || obs.linked === 'loading'\"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"hideTitle\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"!hideMaxFileSize\"\n [subtitle]=\"subtitle\"\n [title]=\"title\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n</ng-container>\n\n<div *ngFor=\"let resource of _value\" class=\"file-preview\">\n <div class=\"file-preview-name\">\n <span>\n {{ resource.filename }}\n </span>\n </div>\n <div class=\"file-preview-size\">\n <span>\n {{ resource.sizeInBytes | filesize }}\n </span>\n </div>\n <div *ngIf=\"!disabled\" class=\"file-preview-delete\">\n <a (click)=\"deleteFile(resource.id)\">\n <i class=\"icon mdi mdi-delete\"></i>\n </a>\n </div>\n</div>\n\n<valtimo-documenten-api-metadata-modal\n class=\"documenten-api-uploader-metadata-modal\"\n (metadata)=\"metadataSet($event)\"\n (modalClose)=\"closeMetadataModal()\"\n [defaultValues]=\"defaultValues\"\n [disableAuthor]=\"disableAuthor\"\n [disableConfidentialityLevel]=\"disableConfidentialityLevel\"\n [disableCreationDate]=\"disableCreationDate\"\n [disableDescription]=\"disableDescription\"\n [disableDocumentTitle]=\"disableDocumentTitle\"\n [disableDocumentType]=\"disableDocumentType\"\n [disableFilename]=\"disableFilename\"\n [disableLanguage]=\"disableLanguage\"\n [disableStatus]=\"disableStatus\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hideFields]=\"hideFields\"\n [supportsTrefwoorden]=\"(supportedDocumentenApiFeatures$ | async)?.supportsTrefwoorden\"\n [open]=\"showModal()\"\n></valtimo-documenten-api-metadata-modal>\n", styles: [".progress-bar-container{padding:15px 20px}::ng-deep .formio-component-valtimo-file .formio-button-add-another,::ng-deep .formio-component-valtimo-file .btn-secondary{display:none}::ng-deep .formio-component-valtimo-file td{padding:0!important;border:none}::ng-deep .formio-component-valtimo-file .table{border-collapse:collapse;border:none;margin:10px 0}.dropzone-container{margin-bottom:12px}.file-preview{margin-top:-1px;display:flex;border:1px solid #dee2e6}.file-preview div{padding:12px 10px}.file-preview .file-preview-name{width:65%}.file-preview .file-preview-size{width:35%}.file-preview .icon{color:#a1a1a1;font-size:1.3846rem;line-height:18px;cursor:pointer}.file-preview .icon:hover{color:gray}\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"] }]
|
|
3275
|
+
}], ctorParameters: () => [{ type: i5$3.UploadProviderService }, { type: i3.FormIoDomService }, { type: i3.ValtimoModalService }, { type: i10.UserProviderService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }], propDecorators: { disabled: [{
|
|
3232
3276
|
type: Input
|
|
3233
3277
|
}], title: [{
|
|
3234
3278
|
type: Input
|
|
@@ -3307,7 +3351,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3307
3351
|
}] } });
|
|
3308
3352
|
|
|
3309
3353
|
/*
|
|
3310
|
-
* Copyright 2015-
|
|
3354
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3311
3355
|
*
|
|
3312
3356
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3313
3357
|
* you may not use this file except in compliance with the License.
|
|
@@ -3333,24 +3377,13 @@ const COMPONENT_OPTIONS = {
|
|
|
3333
3377
|
editForm: documentenApiUploaderEditForm,
|
|
3334
3378
|
};
|
|
3335
3379
|
function registerDocumentenApiFormioUploadComponent(injector) {
|
|
3336
|
-
const originalUploadComponent = createCustomFormioComponent(COMPONENT_OPTIONS);
|
|
3337
|
-
// override setValue function to allow for setting an array value
|
|
3338
|
-
class UploaderComponent extends originalUploadComponent {
|
|
3339
|
-
setValue(value) {
|
|
3340
|
-
if (!this._customAngularElement) {
|
|
3341
|
-
return false;
|
|
3342
|
-
}
|
|
3343
|
-
this._customAngularElement.value = value;
|
|
3344
|
-
return true;
|
|
3345
|
-
}
|
|
3346
|
-
}
|
|
3347
3380
|
if (!customElements.get(COMPONENT_OPTIONS.selector)) {
|
|
3348
|
-
|
|
3381
|
+
registerCustomFormioComponent(COMPONENT_OPTIONS, DocumentenApiUploaderComponent, injector);
|
|
3349
3382
|
}
|
|
3350
3383
|
}
|
|
3351
3384
|
|
|
3352
3385
|
/*
|
|
3353
|
-
* Copyright 2015-
|
|
3386
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3354
3387
|
*
|
|
3355
3388
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3356
3389
|
* you may not use this file except in compliance with the License.
|
|
@@ -3366,7 +3399,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3366
3399
|
*/
|
|
3367
3400
|
|
|
3368
3401
|
/*
|
|
3369
|
-
* Copyright 2015-
|
|
3402
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3370
3403
|
*
|
|
3371
3404
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3372
3405
|
* you may not use this file except in compliance with the License.
|
|
@@ -3382,7 +3415,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3382
3415
|
*/
|
|
3383
3416
|
|
|
3384
3417
|
/*
|
|
3385
|
-
* Copyright 2015-
|
|
3418
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3386
3419
|
*
|
|
3387
3420
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3388
3421
|
* you may not use this file except in compliance with the License.
|
|
@@ -3398,7 +3431,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3398
3431
|
*/
|
|
3399
3432
|
|
|
3400
3433
|
/*
|
|
3401
|
-
* Copyright 2015-
|
|
3434
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3402
3435
|
*
|
|
3403
3436
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3404
3437
|
* you may not use this file except in compliance with the License.
|
|
@@ -3414,7 +3447,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3414
3447
|
*/
|
|
3415
3448
|
|
|
3416
3449
|
/*
|
|
3417
|
-
* Copyright 2015-
|
|
3450
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3418
3451
|
*
|
|
3419
3452
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3420
3453
|
* you may not use this file except in compliance with the License.
|
|
@@ -3430,7 +3463,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3430
3463
|
*/
|
|
3431
3464
|
|
|
3432
3465
|
/*
|
|
3433
|
-
* Copyright 2015-
|
|
3466
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3434
3467
|
*
|
|
3435
3468
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3436
3469
|
* you may not use this file except in compliance with the License.
|
|
@@ -3459,10 +3492,10 @@ class ZaakobjectenService {
|
|
|
3459
3492
|
getObjectTypeForm(documentId, objectUrl) {
|
|
3460
3493
|
return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}v1/document/${documentId}/zaak/object/form?objectUrl=${objectUrl}`);
|
|
3461
3494
|
}
|
|
3462
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3463
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3495
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZaakobjectenService, deps: [{ token: i2.ConfigService }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3496
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZaakobjectenService, providedIn: 'root' }); }
|
|
3464
3497
|
}
|
|
3465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3498
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZaakobjectenService, decorators: [{
|
|
3466
3499
|
type: Injectable,
|
|
3467
3500
|
args: [{
|
|
3468
3501
|
providedIn: 'root',
|
|
@@ -3470,7 +3503,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3470
3503
|
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1.HttpClient }] });
|
|
3471
3504
|
|
|
3472
3505
|
/*
|
|
3473
|
-
* Copyright 2015-
|
|
3506
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3474
3507
|
*
|
|
3475
3508
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3476
3509
|
* you may not use this file except in compliance with the License.
|
|
@@ -3486,7 +3519,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3486
3519
|
*/
|
|
3487
3520
|
|
|
3488
3521
|
/*
|
|
3489
|
-
* Copyright 2015-
|
|
3522
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3490
3523
|
*
|
|
3491
3524
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3492
3525
|
* you may not use this file except in compliance with the License.
|
|
@@ -3500,7 +3533,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3500
3533
|
* See the License for the specific language governing permissions and
|
|
3501
3534
|
* limitations under the License.
|
|
3502
3535
|
*/
|
|
3503
|
-
class
|
|
3536
|
+
class CaseDetailTabZaakobjectenComponent {
|
|
3504
3537
|
constructor(route, zaakobjectenService, modalService) {
|
|
3505
3538
|
this.route = route;
|
|
3506
3539
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3519,15 +3552,15 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3519
3552
|
: of(null)));
|
|
3520
3553
|
this.columns$ = new BehaviorSubject([
|
|
3521
3554
|
{
|
|
3522
|
-
labelTranslationKey: '
|
|
3555
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3523
3556
|
dataKey: 'index',
|
|
3524
3557
|
},
|
|
3525
3558
|
{
|
|
3526
|
-
labelTranslationKey: '
|
|
3559
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3527
3560
|
dataKey: 'registrationAt',
|
|
3528
3561
|
},
|
|
3529
3562
|
{
|
|
3530
|
-
labelTranslationKey: '
|
|
3563
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3531
3564
|
dataKey: 'title',
|
|
3532
3565
|
},
|
|
3533
3566
|
]);
|
|
@@ -3539,7 +3572,7 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3539
3572
|
this.selectedObjecttypeUrl$.next(objectTypeUrl);
|
|
3540
3573
|
}
|
|
3541
3574
|
rowClicked(object, objectTypeSelectItems) {
|
|
3542
|
-
this.documentId$.pipe(take
|
|
3575
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3543
3576
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3544
3577
|
const definition = res.formDefinition;
|
|
3545
3578
|
definition.components = definition.components.map(component => ({
|
|
@@ -3577,29 +3610,28 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3577
3610
|
this.objectName$.next(this.getObjectTypeName(objectTypeSelectItems));
|
|
3578
3611
|
this.show();
|
|
3579
3612
|
}
|
|
3580
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3581
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3613
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabZaakobjectenComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3614
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CaseDetailTabZaakobjectenComponent, isStandalone: true, selector: "valtimo-case-detail-tab-zaakobjecten", viewQueries: [{ propertyName: "viewZaakobjectModal", first: true, predicate: ["viewZaakobjectModal"], 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 objecttypeSelectItems: objecttypeSelectItems$ | async,\n objects: objects$ | async,\n columns: columns$ | async,\n selectedObjectTypeUrl: selectedObjecttypeUrl$ | async,\n } as obs\"\n>\n <v-select\n [items]=\"obs.objecttypeSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"objecttypes\"\n [title]=\"'case.zaakobjecten.objecttype' | translate\"\n [placeholder]=\"'case.zaakobjecten.objecttypePlaceholder' | translate\"\n [loading]=\"!obs.objecttypeSelectItems\"\n (selectedChange)=\"selectObjectType($event)\"\n ></v-select>\n <v-input-label\n titleTranslationKey=\"case.zaakobjecten.objecten\"\n [largeMargin]=\"!!obs.selectedObjectTypeUrl\"\n ></v-input-label>\n <v-paragraph *ngIf=\"!obs.selectedObjectTypeUrl\">{{\n 'case.zaakobjecten.objectenPlaceholder' | translate\n }}</v-paragraph>\n <v-table\n *ngIf=\"obs.selectedObjectTypeUrl\"\n [loading]=\"!obs.objects\"\n [items]=\"obs.objects\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"true\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n editButtonTranslationKey=\"case.zaakobjecten.objectType.viewObject\"\n (editButtonClicked)=\"rowClicked($event, obs.objecttypeSelectItems)\"\n ></v-table>\n</ng-container>\n\n<v-modal #viewZaakobjectModal (closeEvent)=\"hide()\" [hideFooter]=\"true\" [maxWidthPx]=\"750\">\n <div role=\"header\">\n <h4>{{ objectName$ | async }}</h4>\n </div>\n\n <div role=\"content\">\n <valtimo-form-io\n *ngIf=\"(noFormDefinitionComponent$ | async) === false\"\n [form]=\"objectForm$ | async\"\n ></valtimo-form-io>\n <v-paragraph *ngIf=\"noFormDefinitionComponent$ | async\" [center]=\"true\">{{\n 'case.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i3.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "dataTestId"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: InputLabelModule }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "ngmodule", type: ParagraphModule }, { kind: "component", type: i3.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: FormIoModule }, { kind: "component", type: i3.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change", "event"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
|
|
3582
3615
|
}
|
|
3583
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3616
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabZaakobjectenComponent, decorators: [{
|
|
3584
3617
|
type: Component,
|
|
3585
|
-
args: [{ selector: 'valtimo-
|
|
3618
|
+
args: [{ selector: 'valtimo-case-detail-tab-zaakobjecten', standalone: true, imports: [
|
|
3586
3619
|
CommonModule,
|
|
3587
3620
|
SelectModule,
|
|
3588
3621
|
InputLabelModule,
|
|
3589
3622
|
ParagraphModule,
|
|
3590
3623
|
TableModule,
|
|
3591
3624
|
VModalModule,
|
|
3592
|
-
TitleModule,
|
|
3593
3625
|
FormIoModule,
|
|
3594
3626
|
TranslateModule,
|
|
3595
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
3596
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3
|
|
3627
|
+
], 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 objecttypeSelectItems: objecttypeSelectItems$ | async,\n objects: objects$ | async,\n columns: columns$ | async,\n selectedObjectTypeUrl: selectedObjecttypeUrl$ | async,\n } as obs\"\n>\n <v-select\n [items]=\"obs.objecttypeSelectItems\"\n [margin]=\"true\"\n [widthInPx]=\"350\"\n name=\"objecttypes\"\n [title]=\"'case.zaakobjecten.objecttype' | translate\"\n [placeholder]=\"'case.zaakobjecten.objecttypePlaceholder' | translate\"\n [loading]=\"!obs.objecttypeSelectItems\"\n (selectedChange)=\"selectObjectType($event)\"\n ></v-select>\n <v-input-label\n titleTranslationKey=\"case.zaakobjecten.objecten\"\n [largeMargin]=\"!!obs.selectedObjectTypeUrl\"\n ></v-input-label>\n <v-paragraph *ngIf=\"!obs.selectedObjectTypeUrl\">{{\n 'case.zaakobjecten.objectenPlaceholder' | translate\n }}</v-paragraph>\n <v-table\n *ngIf=\"obs.selectedObjectTypeUrl\"\n [loading]=\"!obs.objects\"\n [items]=\"obs.objects\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"true\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n editButtonTranslationKey=\"case.zaakobjecten.objectType.viewObject\"\n (editButtonClicked)=\"rowClicked($event, obs.objecttypeSelectItems)\"\n ></v-table>\n</ng-container>\n\n<v-modal #viewZaakobjectModal (closeEvent)=\"hide()\" [hideFooter]=\"true\" [maxWidthPx]=\"750\">\n <div role=\"header\">\n <h4>{{ objectName$ | async }}</h4>\n </div>\n\n <div role=\"content\">\n <valtimo-form-io\n *ngIf=\"(noFormDefinitionComponent$ | async) === false\"\n [form]=\"objectForm$ | async\"\n ></valtimo-form-io>\n <v-paragraph *ngIf=\"noFormDefinitionComponent$ | async\" [center]=\"true\">{{\n 'case.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-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"] }]
|
|
3628
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewZaakobjectModal: [{
|
|
3597
3629
|
type: ViewChild,
|
|
3598
3630
|
args: ['viewZaakobjectModal']
|
|
3599
3631
|
}] } });
|
|
3600
3632
|
|
|
3601
3633
|
/*
|
|
3602
|
-
* Copyright 2015-
|
|
3634
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3603
3635
|
*
|
|
3604
3636
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3605
3637
|
* you may not use this file except in compliance with the License.
|
|
@@ -3613,7 +3645,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3613
3645
|
* See the License for the specific language governing permissions and
|
|
3614
3646
|
* limitations under the License.
|
|
3615
3647
|
*/
|
|
3616
|
-
class
|
|
3648
|
+
class CaseDetailTabObjectTypeComponent {
|
|
3617
3649
|
constructor(route, zaakobjectenService, modalService) {
|
|
3618
3650
|
this.route = route;
|
|
3619
3651
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3652,15 +3684,15 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3652
3684
|
}))));
|
|
3653
3685
|
this.columns$ = new BehaviorSubject([
|
|
3654
3686
|
{
|
|
3655
|
-
labelTranslationKey: '
|
|
3687
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3656
3688
|
dataKey: 'index',
|
|
3657
3689
|
},
|
|
3658
3690
|
{
|
|
3659
|
-
labelTranslationKey: '
|
|
3691
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3660
3692
|
dataKey: 'registrationAt',
|
|
3661
3693
|
},
|
|
3662
3694
|
{
|
|
3663
|
-
labelTranslationKey: '
|
|
3695
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3664
3696
|
dataKey: 'title',
|
|
3665
3697
|
},
|
|
3666
3698
|
]);
|
|
@@ -3668,7 +3700,7 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3668
3700
|
this.noFormDefinitionComponent$ = new BehaviorSubject(false);
|
|
3669
3701
|
}
|
|
3670
3702
|
rowClicked(object) {
|
|
3671
|
-
this.documentId$.pipe(take
|
|
3703
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3672
3704
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3673
3705
|
const definition = res.formDefinition;
|
|
3674
3706
|
definition.components = definition.components.map(component => ({
|
|
@@ -3699,51 +3731,19 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3699
3731
|
}
|
|
3700
3732
|
this.show();
|
|
3701
3733
|
}
|
|
3702
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3703
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3734
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabObjectTypeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3735
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CaseDetailTabObjectTypeComponent, isStandalone: true, selector: "valtimo-object-type", viewQueries: [{ propertyName: "viewObjectModal", first: true, predicate: ["viewObjectModal"], 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 objects: objects$ | async,\n columns: columns$ | async,\n loading: loading$ | async,\n hasData: hasData$ | async,\n } as obs\"\n>\n <v-table\n *ngIf=\"obs.hasData || obs.loading\"\n [loading]=\"obs.loading\"\n [items]=\"obs.objects\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"true\"\n editButtonTranslationKey=\"case.zaakobjecten.objectType.viewObject\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n (editButtonClicked)=\"rowClicked($event)\"\n ></v-table>\n\n <v-paragraph *ngIf=\"!obs.hasData && !obs.loading\" [center]=\"true\">{{\n 'case.zaakobjecten.noObjectType' | translate\n }}</v-paragraph>\n</ng-container>\n\n<v-modal #viewObjectModal (closeEvent)=\"hide()\" [hideFooter]=\"true\" [maxWidthPx]=\"750\">\n <div role=\"header\">\n <h4>{{ objectName$ | async }}</h4>\n </div>\n\n <div role=\"content\">\n <valtimo-form-io\n *ngIf=\"(noFormDefinitionComponent$ | async) === false\"\n [form]=\"objectForm$ | async\"\n ></valtimo-form-io>\n <v-paragraph *ngIf=\"noFormDefinitionComponent$ | async\" [center]=\"true\">{{\n 'case.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "ngmodule", type: ParagraphModule }, { kind: "component", type: i3.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: FormIoModule }, { kind: "component", type: i3.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change", "event"] }] }); }
|
|
3704
3736
|
}
|
|
3705
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3737
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabObjectTypeComponent, decorators: [{
|
|
3706
3738
|
type: Component,
|
|
3707
|
-
args: [{ selector: 'valtimo-object-type', standalone: true, imports: [CommonModule, TableModule, ParagraphModule, VModalModule,
|
|
3708
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3
|
|
3739
|
+
args: [{ selector: 'valtimo-object-type', standalone: true, imports: [CommonModule, TableModule, ParagraphModule, VModalModule, FormIoModule], 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 objects: objects$ | async,\n columns: columns$ | async,\n loading: loading$ | async,\n hasData: hasData$ | async,\n } as obs\"\n>\n <v-table\n *ngIf=\"obs.hasData || obs.loading\"\n [loading]=\"obs.loading\"\n [items]=\"obs.objects\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"true\"\n editButtonTranslationKey=\"case.zaakobjecten.objectType.viewObject\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'pluginManagement.tableItemsText'\"\n [showPagination]=\"false\"\n (editButtonClicked)=\"rowClicked($event)\"\n ></v-table>\n\n <v-paragraph *ngIf=\"!obs.hasData && !obs.loading\" [center]=\"true\">{{\n 'case.zaakobjecten.noObjectType' | translate\n }}</v-paragraph>\n</ng-container>\n\n<v-modal #viewObjectModal (closeEvent)=\"hide()\" [hideFooter]=\"true\" [maxWidthPx]=\"750\">\n <div role=\"header\">\n <h4>{{ objectName$ | async }}</h4>\n </div>\n\n <div role=\"content\">\n <valtimo-form-io\n *ngIf=\"(noFormDefinitionComponent$ | async) === false\"\n [form]=\"objectForm$ | async\"\n ></valtimo-form-io>\n <v-paragraph *ngIf=\"noFormDefinitionComponent$ | async\" [center]=\"true\">{{\n 'case.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-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"] }]
|
|
3740
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewObjectModal: [{
|
|
3709
3741
|
type: ViewChild,
|
|
3710
3742
|
args: ['viewObjectModal']
|
|
3711
3743
|
}] } });
|
|
3712
3744
|
|
|
3713
3745
|
/*
|
|
3714
|
-
* Copyright 2015-
|
|
3715
|
-
*
|
|
3716
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3717
|
-
* you may not use this file except in compliance with the License.
|
|
3718
|
-
* You may obtain a copy of the License at
|
|
3719
|
-
*
|
|
3720
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3721
|
-
*
|
|
3722
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3723
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3724
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3725
|
-
* See the License for the specific language governing permissions and
|
|
3726
|
-
* limitations under the License.
|
|
3727
|
-
*/
|
|
3728
|
-
|
|
3729
|
-
/*
|
|
3730
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3731
|
-
*
|
|
3732
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3733
|
-
* you may not use this file except in compliance with the License.
|
|
3734
|
-
* You may obtain a copy of the License at
|
|
3735
|
-
*
|
|
3736
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3737
|
-
*
|
|
3738
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3739
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3740
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3741
|
-
* See the License for the specific language governing permissions and
|
|
3742
|
-
* limitations under the License.
|
|
3743
|
-
*/
|
|
3744
|
-
|
|
3745
|
-
/*
|
|
3746
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3746
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3747
3747
|
*
|
|
3748
3748
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3749
3749
|
* you may not use this file except in compliance with the License.
|
|
@@ -3759,7 +3759,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3759
3759
|
*/
|
|
3760
3760
|
|
|
3761
3761
|
/*
|
|
3762
|
-
* Copyright 2015-
|
|
3762
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3763
3763
|
*
|
|
3764
3764
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3765
3765
|
* you may not use this file except in compliance with the License.
|
|
@@ -3775,7 +3775,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3775
3775
|
*/
|
|
3776
3776
|
|
|
3777
3777
|
/*
|
|
3778
|
-
* Copyright 2015-
|
|
3778
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3779
3779
|
*
|
|
3780
3780
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3781
3781
|
* you may not use this file except in compliance with the License.
|
|
@@ -3789,24 +3789,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3789
3789
|
* See the License for the specific language governing permissions and
|
|
3790
3790
|
* limitations under the License.
|
|
3791
3791
|
*/
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3792
|
+
class DocumentObjectenApiSyncService extends BaseApiService {
|
|
3793
|
+
constructor(httpClient, configService) {
|
|
3794
|
+
super(httpClient, configService);
|
|
3795
|
+
this.httpClient = httpClient;
|
|
3796
|
+
this.configService = configService;
|
|
3797
|
+
}
|
|
3798
|
+
getObjectManagementConfigurations() {
|
|
3799
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/object/management/configuration`));
|
|
3799
3800
|
}
|
|
3800
|
-
|
|
3801
|
-
return this.
|
|
3801
|
+
getDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3802
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3802
3803
|
}
|
|
3803
|
-
|
|
3804
|
-
return this.
|
|
3804
|
+
updateDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag, request) {
|
|
3805
|
+
return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`), request);
|
|
3805
3806
|
}
|
|
3806
|
-
|
|
3807
|
-
|
|
3807
|
+
deleteDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3808
|
+
return this.httpClient.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3809
|
+
}
|
|
3810
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3811
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncService, providedIn: 'root' }); }
|
|
3808
3812
|
}
|
|
3809
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3813
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncService, decorators: [{
|
|
3810
3814
|
type: Injectable,
|
|
3811
3815
|
args: [{
|
|
3812
3816
|
providedIn: 'root',
|
|
@@ -3814,7 +3818,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3814
3818
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3815
3819
|
|
|
3816
3820
|
/*
|
|
3817
|
-
* Copyright 2015-
|
|
3821
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3818
3822
|
*
|
|
3819
3823
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3820
3824
|
* you may not use this file except in compliance with the License.
|
|
@@ -3830,7 +3834,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3830
3834
|
*/
|
|
3831
3835
|
|
|
3832
3836
|
/*
|
|
3833
|
-
* Copyright 2015-
|
|
3837
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3834
3838
|
*
|
|
3835
3839
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3836
3840
|
* you may not use this file except in compliance with the License.
|
|
@@ -3844,68 +3848,119 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3844
3848
|
* See the License for the specific language governing permissions and
|
|
3845
3849
|
* limitations under the License.
|
|
3846
3850
|
*/
|
|
3847
|
-
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
this.contactMomentService = contactMomentService;
|
|
3851
|
-
this.alertService = alertService;
|
|
3852
|
-
this.translateService = translateService;
|
|
3853
|
-
this.refetchContactMoments$ = new BehaviorSubject('');
|
|
3854
|
-
this.contactMoments$ = this.refetchContactMoments$.pipe(switchMap$1(() => this.contactMomentService.getContactMoments()), map$1(contactMoments => contactMoments.map(contactMoment => {
|
|
3855
|
-
const registratieDatum = moment(contactMoment.registratiedatum);
|
|
3856
|
-
return new TimelineItemImpl(registratieDatum.format('DD MMM YYYY'), registratieDatum.format('HH:mm'), contactMoment.medewerkerIdentificatie.achternaam, contactMoment.kanaal, contactMoment.tekst, null);
|
|
3857
|
-
})));
|
|
3858
|
-
this.text$ = new BehaviorSubject('');
|
|
3859
|
-
this.channel$ = new BehaviorSubject('MAIL');
|
|
3860
|
-
this.requestData$ = combineLatest([this.text$, this.channel$]);
|
|
3861
|
-
this.valid$ = this.requestData$.pipe(map$1(([text, channel]) => !!(text && channel)));
|
|
3862
|
-
this.disabled$ = new BehaviorSubject(false);
|
|
3851
|
+
class DocumentObjectenApiSyncComponent {
|
|
3852
|
+
get objectManagementConfigurationId() {
|
|
3853
|
+
return this.formGroup.get('objectManagementConfigurationId') ?? null;
|
|
3863
3854
|
}
|
|
3864
|
-
|
|
3865
|
-
this.
|
|
3855
|
+
get enabled() {
|
|
3856
|
+
return this.formGroup.get('enabled') ?? null;
|
|
3866
3857
|
}
|
|
3867
|
-
|
|
3868
|
-
this.
|
|
3858
|
+
constructor(route, documentObjectenApiSyncService, documentService, cdsThemeService, iconService, draftVersionService) {
|
|
3859
|
+
this.route = route;
|
|
3860
|
+
this.documentObjectenApiSyncService = documentObjectenApiSyncService;
|
|
3861
|
+
this.documentService = documentService;
|
|
3862
|
+
this.cdsThemeService = cdsThemeService;
|
|
3863
|
+
this.iconService = iconService;
|
|
3864
|
+
this.draftVersionService = draftVersionService;
|
|
3865
|
+
this.loading$ = new BehaviorSubject(true);
|
|
3866
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
3867
|
+
this._documentDefinition$ = this._params$.pipe(switchMap(params => this.documentService.getDocumentDefinitionByVersion(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')));
|
|
3868
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
3869
|
+
? of(false)
|
|
3870
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
3871
|
+
this.documentObjectenApiSync$ = new BehaviorSubject(null);
|
|
3872
|
+
this.objectManagementConfigurationItems$ = this.documentObjectenApiSyncService.getObjectManagementConfigurations().pipe(map(results => results?.map(configuration => ({
|
|
3873
|
+
id: configuration.id,
|
|
3874
|
+
text: configuration.title,
|
|
3875
|
+
}))));
|
|
3876
|
+
this.modalShowing$ = new BehaviorSubject(false);
|
|
3877
|
+
this.currentTheme$ = this.cdsThemeService.currentTheme$;
|
|
3878
|
+
this.formGroup = new FormGroup({
|
|
3879
|
+
objectManagementConfigurationId: new FormControl('', Validators.required),
|
|
3880
|
+
enabled: new FormControl(true),
|
|
3881
|
+
});
|
|
3882
|
+
this.valid$ = new BehaviorSubject(false);
|
|
3883
|
+
this.iconService.registerAll([TrashCan16, Edit16]);
|
|
3869
3884
|
}
|
|
3870
|
-
|
|
3871
|
-
this.
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3880
|
-
|
|
3881
|
-
});
|
|
3885
|
+
ngOnInit() {
|
|
3886
|
+
this.loadDocumentenObjectenApiSync();
|
|
3887
|
+
}
|
|
3888
|
+
loadDocumentenObjectenApiSync() {
|
|
3889
|
+
this._documentDefinition$
|
|
3890
|
+
.pipe(switchMap((documentDefinition) => this.documentObjectenApiSyncService.getDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)))
|
|
3891
|
+
.subscribe(documentObjectenApiSync => {
|
|
3892
|
+
this.loading$.next(false);
|
|
3893
|
+
this.configSelected(documentObjectenApiSync?.objectManagementConfigurationId);
|
|
3894
|
+
this.enabled?.patchValue(documentObjectenApiSync?.enabled);
|
|
3895
|
+
this.documentObjectenApiSync$.next(documentObjectenApiSync);
|
|
3882
3896
|
});
|
|
3883
3897
|
}
|
|
3884
|
-
|
|
3885
|
-
this.
|
|
3898
|
+
remove() {
|
|
3899
|
+
this._documentDefinition$
|
|
3900
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.deleteDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)), tap(() => {
|
|
3901
|
+
this.documentObjectenApiSync$.next(null);
|
|
3902
|
+
}))
|
|
3903
|
+
.subscribe();
|
|
3886
3904
|
}
|
|
3887
|
-
|
|
3888
|
-
this.
|
|
3905
|
+
submit() {
|
|
3906
|
+
const formValues = this.formGroup.getRawValue();
|
|
3907
|
+
this._documentDefinition$
|
|
3908
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.updateDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag, {
|
|
3909
|
+
objectManagementConfigurationId: formValues.objectManagementConfigurationId ?? '',
|
|
3910
|
+
enabled: !!formValues.enabled,
|
|
3911
|
+
})))
|
|
3912
|
+
.subscribe(() => {
|
|
3913
|
+
this.loadDocumentenObjectenApiSync();
|
|
3914
|
+
this.hideModal();
|
|
3915
|
+
});
|
|
3889
3916
|
}
|
|
3890
|
-
|
|
3891
|
-
this.
|
|
3917
|
+
onModalClose() {
|
|
3918
|
+
this.hideModal();
|
|
3919
|
+
}
|
|
3920
|
+
showModal() {
|
|
3921
|
+
this.modalShowing$.next(true);
|
|
3922
|
+
}
|
|
3923
|
+
configSelected(selectedId) {
|
|
3924
|
+
if (!this.objectManagementConfigurationId)
|
|
3925
|
+
return;
|
|
3926
|
+
if (!selectedId) {
|
|
3927
|
+
this.objectManagementConfigurationId.patchValue('');
|
|
3928
|
+
}
|
|
3929
|
+
else {
|
|
3930
|
+
this.objectManagementConfigurationId.patchValue(selectedId);
|
|
3931
|
+
}
|
|
3892
3932
|
}
|
|
3893
|
-
|
|
3894
|
-
this.
|
|
3933
|
+
hideModal() {
|
|
3934
|
+
this.modalShowing$.next(false);
|
|
3895
3935
|
}
|
|
3896
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3897
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierDetailTabContactMomentsComponent, isStandalone: true, selector: "valtimo-dossier-detail-tab-contact-moments", viewQueries: [{ propertyName: "modal", first: true, predicate: ["contactMomentsNoteModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"contact-moments-container\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n <ng-container *ngTemplateOutlet=\"moments\"></ng-container>\n</div>\n\n<valtimo-modal\n #contactMomentsNoteModal\n [title]=\"'dossier.contactMoments.popupTitle' | translate\"\n [showFooter]=\"true\"\n [elementId]=\"'contact-moments-modal'\"\n>\n <div class=\"mt-2\" body>\n <ng-container *ngTemplateOutlet=\"body\"></ng-container>\n </div>\n <div footer>\n <ng-container *ngTemplateOutlet=\"footer\"></ng-container>\n </div>\n</valtimo-modal>\n\n<ng-template #body>\n <form>\n <div class=\"form-group row\">\n <label class=\"col-12 col-sm-3 col-form-label text-sm-right\" for=\"body\">\n {{ 'dossier.contactMoments.noteText' | translate }}\n </label>\n <div class=\"col-12 col-sm-8 col-lg-6\">\n <textarea\n [disabled]=\"disabled$ | async\"\n class=\"form-control\"\n id=\"body\"\n name=\"body\"\n [ngModel]=\"text$ | async\"\n (ngModelChange)=\"textChange($event)\"\n ></textarea>\n </div>\n </div>\n </form>\n</ng-template>\n\n<ng-template #footer>\n <button\n *ngIf=\"(disabled$ | async) === false; else loading\"\n class=\"btn btn-primary\"\n [disabled]=\"(valid$ | async) === false || (disabled$ | async)\"\n (click)=\"saveNote()\"\n >\n {{ 'dossier.contactMoments.saveButtonText' | translate }}\n </button>\n</ng-template>\n\n<ng-template #loading>\n <valtimo-spinner [noMarginTop]=\"true\"></valtimo-spinner>\n</ng-template>\n\n<ng-template #buttons>\n <div class=\"btn-group mt-m3px mb-3 button-container\">\n <button class=\"btn btn-primary btn-space\" (click)=\"buttonClick()\">\n <i class=\"icon mdi mdi-note-plus\"></i>\n {{ 'dossier.contactMoments.makeNoteButton' | translate }}\n </button>\n </div>\n</ng-template>\n\n<ng-template #moments>\n <div *ngIf=\"contactMoments$ | async as contactMoments; else loading\">\n <valtimo-timeline [items]=\"contactMoments\"></valtimo-timeline>\n </div>\n</ng-template>\n", styles: [".contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ModalModule$1 }, { kind: "component", type: i3$1.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3$1.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: TimelineModule }, { kind: "component", type: i3$1.TimelineComponent, selector: "valtimo-timeline", inputs: ["items", "actions"] }] }); }
|
|
3936
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentObjectenApiSyncService }, { token: i4$1.DocumentService }, { token: i3.CdsThemeService }, { token: i5$1.IconService }, { token: i2.DraftVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3937
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: DocumentObjectenApiSyncComponent, isStandalone: true, selector: "valtimo-document-objecten-api-sync", 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 <valtimo-case-management-draft-warning\n *ngIf=\"isDraftVersion$ | async\"\n [name]=\"'zaakdetails.title' | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <h2 class=\"valtimo-objecten-sync__title\">{{ 'zaakdetails.title' | translate }}</h2>\n\n @if (loading$ | async) {\n <valtimo-spinner></valtimo-spinner>\n } @else {\n @if (documentObjectenApiSync$ | async; as documentObjectenApiSync) {\n <section class=\"valtimo-objecten-sync__card-header\">\n <span class=\"valtimo-objecten-sync__card-title\">\n {{ documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </span>\n\n <div class=\"valtimo-objecten-sync__card-controls\">\n <button cdsButton=\"tertiary\" (click)=\"showModal()\">\n {{ 'interface.edit' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n\n <button cdsButton=\"danger\" (click)=\"remove()\">\n {{ 'interface.delete' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </div>\n </section>\n\n <section class=\"valtimo-objecten-sync__card-body\">\n <div>\n <strong>{{ 'zaakdetails.enabled' | translate }}</strong>\n\n {{\n documentObjectenApiSync.enabled\n ? ('zaakdetails.yes' | translate)\n : ('zaakdetails.no' | translate)\n }}\n </div>\n\n <div>\n <strong>{{ 'zaakdetails.objectManagementConfigurationTitle' | translate }}</strong>\n\n {{ documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n </section>\n } @else {\n <button cdsButton=\"primary\" (click)=\"showModal()\">\n {{ 'zaakdetails.submitButton' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n }\n }\n</cds-tile>\n\n<valtimo-render-in-body>\n <cds-modal\n valtimoCdsModal\n [title]=\"'zaakdetails.editModal.title' | translate\"\n [open]=\"modalShowing$ | async\"\n showFooter=\"true\"\n (close)=\"onModalClose()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zaakdetails.editModal.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"formGroup\">\n <v-select\n *ngIf=\"objectManagementConfigurationItems$ | async as objectManagementConfigurations\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n [items]=\"objectManagementConfigurations\"\n [defaultSelectionId]=\"objectManagementConfigurationId.getRawValue()\"\n [placeholder]=\"\n 'zaakdetails.editModal.objectManagementConfigurationPlaceholder' | translate\n \"\n [title]=\"'zaakdetails.editModal.objectManagementConfiguration' | translate\"\n [disabled]=\"false\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"objectManagementConfigurationId\"\n [carbonTheme]=\"currentTheme$ | async\"\n (selectedChange)=\"configSelected($event)\"\n ></v-select>\n\n <cds-checkbox formControlName=\"enabled\"\n >{{ 'zaakdetails.editModal.enabled' | translate }}\n </cds-checkbox>\n </form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onModalClose()\" [disabled]=\"false\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"!formGroup.valid\" (click)=\"submit()\">\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n </cds-modal-footer>\n </cds-modal>\n</valtimo-render-in-body>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.valtimo-objecten-sync__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.valtimo-objecten-sync__card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:20px}.valtimo-objecten-sync__card-title{font-size:18px}.valtimo-objecten-sync__card-controls{display:flex;align-items:center;gap:16px}.valtimo-objecten-sync__card-body{display:flex;flex-direction:column;gap:16px}.valtimo-objecten-sync__card-body>div{display:grid;grid-template-columns:repeat(3,1fr);font-size: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: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5$1.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.LowerCasePipe, name: "lowercase" }, { kind: "ngmodule", type: FormModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: InputModule$1 }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i5$1.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5$1.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5$1.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5$1.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i3.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "dataTestId"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: TilesModule }, { kind: "component", type: i5$1.Tile, selector: "cds-tile, ibm-tile", inputs: ["theme"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "directive", type: ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: RenderInBodyComponent, selector: "valtimo-render-in-body" }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }] }); }
|
|
3898
3938
|
}
|
|
3899
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3939
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
|
|
3900
3940
|
type: Component,
|
|
3901
|
-
args: [{ selector: 'valtimo-
|
|
3902
|
-
|
|
3903
|
-
|
|
3904
|
-
|
|
3905
|
-
|
|
3941
|
+
args: [{ selector: 'valtimo-document-objecten-api-sync', standalone: true, imports: [
|
|
3942
|
+
ButtonModule,
|
|
3943
|
+
CheckboxModule,
|
|
3944
|
+
CommonModule,
|
|
3945
|
+
FormModule,
|
|
3946
|
+
FormsModule,
|
|
3947
|
+
IconModule,
|
|
3948
|
+
InputModule$1,
|
|
3949
|
+
LayerModule,
|
|
3950
|
+
ModalModule,
|
|
3951
|
+
ReactiveFormsModule,
|
|
3952
|
+
SelectModule,
|
|
3953
|
+
SpinnerModule,
|
|
3954
|
+
TilesModule,
|
|
3955
|
+
TranslateModule,
|
|
3956
|
+
ValtimoCdsModalDirective,
|
|
3957
|
+
RenderInBodyComponent,
|
|
3958
|
+
CaseManagementDraftWarningComponent,
|
|
3959
|
+
], 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 <valtimo-case-management-draft-warning\n *ngIf=\"isDraftVersion$ | async\"\n [name]=\"'zaakdetails.title' | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <h2 class=\"valtimo-objecten-sync__title\">{{ 'zaakdetails.title' | translate }}</h2>\n\n @if (loading$ | async) {\n <valtimo-spinner></valtimo-spinner>\n } @else {\n @if (documentObjectenApiSync$ | async; as documentObjectenApiSync) {\n <section class=\"valtimo-objecten-sync__card-header\">\n <span class=\"valtimo-objecten-sync__card-title\">\n {{ documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </span>\n\n <div class=\"valtimo-objecten-sync__card-controls\">\n <button cdsButton=\"tertiary\" (click)=\"showModal()\">\n {{ 'interface.edit' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n\n <button cdsButton=\"danger\" (click)=\"remove()\">\n {{ 'interface.delete' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </div>\n </section>\n\n <section class=\"valtimo-objecten-sync__card-body\">\n <div>\n <strong>{{ 'zaakdetails.enabled' | translate }}</strong>\n\n {{\n documentObjectenApiSync.enabled\n ? ('zaakdetails.yes' | translate)\n : ('zaakdetails.no' | translate)\n }}\n </div>\n\n <div>\n <strong>{{ 'zaakdetails.objectManagementConfigurationTitle' | translate }}</strong>\n\n {{ documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n </section>\n } @else {\n <button cdsButton=\"primary\" (click)=\"showModal()\">\n {{ 'zaakdetails.submitButton' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n }\n }\n</cds-tile>\n\n<valtimo-render-in-body>\n <cds-modal\n valtimoCdsModal\n [title]=\"'zaakdetails.editModal.title' | translate\"\n [open]=\"modalShowing$ | async\"\n showFooter=\"true\"\n (close)=\"onModalClose()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zaakdetails.editModal.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"formGroup\">\n <v-select\n *ngIf=\"objectManagementConfigurationItems$ | async as objectManagementConfigurations\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n [items]=\"objectManagementConfigurations\"\n [defaultSelectionId]=\"objectManagementConfigurationId.getRawValue()\"\n [placeholder]=\"\n 'zaakdetails.editModal.objectManagementConfigurationPlaceholder' | translate\n \"\n [title]=\"'zaakdetails.editModal.objectManagementConfiguration' | translate\"\n [disabled]=\"false\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"objectManagementConfigurationId\"\n [carbonTheme]=\"currentTheme$ | async\"\n (selectedChange)=\"configSelected($event)\"\n ></v-select>\n\n <cds-checkbox formControlName=\"enabled\"\n >{{ 'zaakdetails.editModal.enabled' | translate }}\n </cds-checkbox>\n </form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onModalClose()\" [disabled]=\"false\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"!formGroup.valid\" (click)=\"submit()\">\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n </cds-modal-footer>\n </cds-modal>\n</valtimo-render-in-body>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.valtimo-objecten-sync__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.valtimo-objecten-sync__card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:20px}.valtimo-objecten-sync__card-title{font-size:18px}.valtimo-objecten-sync__card-controls{display:flex;align-items:center;gap:16px}.valtimo-objecten-sync__card-body{display:flex;flex-direction:column;gap:16px}.valtimo-objecten-sync__card-body>div{display:grid;grid-template-columns:repeat(3,1fr);font-size: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"] }]
|
|
3960
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i4$1.DocumentService }, { type: i3.CdsThemeService }, { type: i5$1.IconService }, { type: i2.DraftVersionService }] });
|
|
3906
3961
|
|
|
3907
3962
|
/*
|
|
3908
|
-
* Copyright 2015-
|
|
3963
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3909
3964
|
*
|
|
3910
3965
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3911
3966
|
* you may not use this file except in compliance with the License.
|
|
@@ -3921,7 +3976,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3921
3976
|
*/
|
|
3922
3977
|
|
|
3923
3978
|
/*
|
|
3924
|
-
* Copyright 2015-
|
|
3979
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3925
3980
|
*
|
|
3926
3981
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3927
3982
|
* you may not use this file except in compliance with the License.
|
|
@@ -3937,7 +3992,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3937
3992
|
*/
|
|
3938
3993
|
|
|
3939
3994
|
/*
|
|
3940
|
-
* Copyright 2015-
|
|
3995
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3941
3996
|
*
|
|
3942
3997
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3943
3998
|
* you may not use this file except in compliance with the License.
|
|
@@ -3951,32 +4006,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3951
4006
|
* See the License for the specific language governing permissions and
|
|
3952
4007
|
* limitations under the License.
|
|
3953
4008
|
*/
|
|
3954
|
-
/**
|
|
3955
|
-
* @deprecated Will be replace by new plugins
|
|
3956
|
-
*/
|
|
3957
|
-
class CustomerService {
|
|
3958
|
-
constructor(http, configService) {
|
|
3959
|
-
this.http = http;
|
|
3960
|
-
this.valtimoEndpointUri = configService.config.valtimoApi.endpointUri;
|
|
3961
|
-
}
|
|
3962
|
-
getCustomers(request) {
|
|
3963
|
-
return this.http.post(`${this.valtimoEndpointUri}v1/haalcentraal/personen`, request);
|
|
3964
|
-
}
|
|
3965
|
-
getCustomerCases(bsn) {
|
|
3966
|
-
return this.http.get(`${this.valtimoEndpointUri}v1/zaken/${bsn}`);
|
|
3967
|
-
}
|
|
3968
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3969
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerService, providedIn: 'root' }); }
|
|
3970
|
-
}
|
|
3971
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerService, decorators: [{
|
|
3972
|
-
type: Injectable,
|
|
3973
|
-
args: [{
|
|
3974
|
-
providedIn: 'root',
|
|
3975
|
-
}]
|
|
3976
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3977
4009
|
|
|
3978
4010
|
/*
|
|
3979
|
-
* Copyright 2015-
|
|
4011
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3980
4012
|
*
|
|
3981
4013
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3982
4014
|
* you may not use this file except in compliance with the License.
|
|
@@ -3990,9 +4022,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3990
4022
|
* See the License for the specific language governing permissions and
|
|
3991
4023
|
* limitations under the License.
|
|
3992
4024
|
*/
|
|
4025
|
+
class ZakenApiZaaktypeLinkService extends BaseApiService {
|
|
4026
|
+
constructor(httpClient, configService) {
|
|
4027
|
+
super(httpClient, configService);
|
|
4028
|
+
this.httpClient = httpClient;
|
|
4029
|
+
this.configService = configService;
|
|
4030
|
+
}
|
|
4031
|
+
getPluginConfigurationsByPluginDefinitionKey(pluginDefinitionKey) {
|
|
4032
|
+
return this.httpClient.get(this.getApiUrl(`/v1/plugin/configuration?pluginDefinitionKey=${pluginDefinitionKey}`));
|
|
4033
|
+
}
|
|
4034
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4035
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkService, providedIn: 'root' }); }
|
|
4036
|
+
}
|
|
4037
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkService, decorators: [{
|
|
4038
|
+
type: Injectable,
|
|
4039
|
+
args: [{
|
|
4040
|
+
providedIn: 'root',
|
|
4041
|
+
}]
|
|
4042
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3993
4043
|
|
|
3994
4044
|
/*
|
|
3995
|
-
* Copyright 2015-
|
|
4045
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3996
4046
|
*
|
|
3997
4047
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3998
4048
|
* you may not use this file except in compliance with the License.
|
|
@@ -4008,605 +4058,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4008
4058
|
*/
|
|
4009
4059
|
|
|
4010
4060
|
/*
|
|
4011
|
-
* Copyright 2015-
|
|
4012
|
-
*
|
|
4013
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4014
|
-
* you may not use this file except in compliance with the License.
|
|
4015
|
-
* You may obtain a copy of the License at
|
|
4016
|
-
*
|
|
4017
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4018
|
-
*
|
|
4019
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4020
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4021
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4022
|
-
* See the License for the specific language governing permissions and
|
|
4023
|
-
* limitations under the License.
|
|
4024
|
-
*/
|
|
4025
|
-
|
|
4026
|
-
/*
|
|
4027
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4028
|
-
*
|
|
4029
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4030
|
-
* you may not use this file except in compliance with the License.
|
|
4031
|
-
* You may obtain a copy of the License at
|
|
4032
|
-
*
|
|
4033
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4034
|
-
*
|
|
4035
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4036
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4037
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4038
|
-
* See the License for the specific language governing permissions and
|
|
4039
|
-
* limitations under the License.
|
|
4040
|
-
*/
|
|
4041
|
-
|
|
4042
|
-
/*
|
|
4043
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4044
|
-
*
|
|
4045
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4046
|
-
* you may not use this file except in compliance with the License.
|
|
4047
|
-
* You may obtain a copy of the License at
|
|
4048
|
-
*
|
|
4049
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4050
|
-
*
|
|
4051
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4052
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4053
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4054
|
-
* See the License for the specific language governing permissions and
|
|
4055
|
-
* limitations under the License.
|
|
4056
|
-
*/
|
|
4057
|
-
/**
|
|
4058
|
-
* @deprecated Will be replace by new plugins
|
|
4059
|
-
*/
|
|
4060
|
-
class CustomerListComponent {
|
|
4061
|
-
constructor(customerService, translateService, configService, router) {
|
|
4062
|
-
this.customerService = customerService;
|
|
4063
|
-
this.translateService = translateService;
|
|
4064
|
-
this.configService = configService;
|
|
4065
|
-
this.router = router;
|
|
4066
|
-
this.fields$ = combineLatest([
|
|
4067
|
-
this.translateService.stream('customers.name'),
|
|
4068
|
-
this.translateService.stream('customers.citizenServiceNumber'),
|
|
4069
|
-
this.translateService.stream('customers.dateOfBirth'),
|
|
4070
|
-
]).pipe(map$1(([nameLabel, numberLabel, dateOfBirthLabel]) => [
|
|
4071
|
-
{
|
|
4072
|
-
label: numberLabel,
|
|
4073
|
-
key: 'citizenServiceNumber',
|
|
4074
|
-
},
|
|
4075
|
-
{
|
|
4076
|
-
label: nameLabel,
|
|
4077
|
-
key: 'name',
|
|
4078
|
-
},
|
|
4079
|
-
{
|
|
4080
|
-
label: dateOfBirthLabel,
|
|
4081
|
-
key: 'dateOfBirth',
|
|
4082
|
-
},
|
|
4083
|
-
]));
|
|
4084
|
-
this.bsn$ = new BehaviorSubject('');
|
|
4085
|
-
this.bsnValid$ = this.bsn$.pipe(map$1(bsn => {
|
|
4086
|
-
const regex = new RegExp(/^[0-9]{9}$/gm);
|
|
4087
|
-
return regex.test(bsn);
|
|
4088
|
-
}));
|
|
4089
|
-
this.dateOfBirth$ = new BehaviorSubject('');
|
|
4090
|
-
this.dateOfBirthValid$ = this.dateOfBirth$.pipe(map$1(dateOfBirth => {
|
|
4091
|
-
const regex = new RegExp(/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/gm);
|
|
4092
|
-
return regex.test(dateOfBirth);
|
|
4093
|
-
}));
|
|
4094
|
-
this.familyName$ = new BehaviorSubject('');
|
|
4095
|
-
this.searchParameters$ = combineLatest([this.bsn$, this.dateOfBirth$, this.familyName$, this.bsnValid$, this.dateOfBirthValid$]).pipe(map$1(([bsn, dateOfBirth, familyName, bsnValid, dateOfBirthValid]) => {
|
|
4096
|
-
if (bsn && bsnValid) {
|
|
4097
|
-
this.loading$.next(true);
|
|
4098
|
-
return { bsn };
|
|
4099
|
-
}
|
|
4100
|
-
else if (dateOfBirth && familyName && dateOfBirthValid) {
|
|
4101
|
-
this.loading$.next(true);
|
|
4102
|
-
return {
|
|
4103
|
-
geslachtsnaam: familyName,
|
|
4104
|
-
geboortedatum: dateOfBirth,
|
|
4105
|
-
};
|
|
4106
|
-
}
|
|
4107
|
-
return undefined;
|
|
4108
|
-
}));
|
|
4109
|
-
this.customers$ = this.searchParameters$.pipe(debounceTime$1(500), switchMap$1(searchParameters => {
|
|
4110
|
-
if (searchParameters?.bsn ||
|
|
4111
|
-
(searchParameters?.geslachtsnaam &&
|
|
4112
|
-
searchParameters?.geboortedatum)) {
|
|
4113
|
-
return this.customerService
|
|
4114
|
-
.getCustomers(searchParameters)
|
|
4115
|
-
.pipe(catchError(() => of([])));
|
|
4116
|
-
}
|
|
4117
|
-
return of([]);
|
|
4118
|
-
}), map$1(customers => customers.map(customer => ({
|
|
4119
|
-
citizenServiceNumber: customer.burgerservicenummer,
|
|
4120
|
-
dateOfBirth: customer.geboorteDatum,
|
|
4121
|
-
name: `${customer.geslachtsnaam}, ${customer.voornamen} ${customer.voorletters}`,
|
|
4122
|
-
}))), tap$1(() => {
|
|
4123
|
-
this.loading$.next(false);
|
|
4124
|
-
}));
|
|
4125
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4126
|
-
}
|
|
4127
|
-
bsnChange(bsn) {
|
|
4128
|
-
this.clearDateOfBirth();
|
|
4129
|
-
this.clearFamilyName();
|
|
4130
|
-
this.bsn$.next(bsn);
|
|
4131
|
-
}
|
|
4132
|
-
dateOfBirthChange(dateOfBirth) {
|
|
4133
|
-
this.clearBsn();
|
|
4134
|
-
this.dateOfBirth$.next(dateOfBirth);
|
|
4135
|
-
}
|
|
4136
|
-
familyNameChange(familyName) {
|
|
4137
|
-
this.clearBsn();
|
|
4138
|
-
this.familyName$.next(familyName);
|
|
4139
|
-
}
|
|
4140
|
-
rowClick(customer) {
|
|
4141
|
-
const config = this.configService.config;
|
|
4142
|
-
const bsn = customer?.citizenServiceNumber;
|
|
4143
|
-
if (bsn && config?.featureToggles?.enableHackathonCasesPage) {
|
|
4144
|
-
this.router.navigate([`/klanten/klant/${bsn}`]);
|
|
4145
|
-
}
|
|
4146
|
-
}
|
|
4147
|
-
clearBsn() {
|
|
4148
|
-
this.bsn$.next('');
|
|
4149
|
-
}
|
|
4150
|
-
clearDateOfBirth() {
|
|
4151
|
-
this.dateOfBirth$.next('');
|
|
4152
|
-
}
|
|
4153
|
-
clearFamilyName() {
|
|
4154
|
-
this.familyName$.next('');
|
|
4155
|
-
}
|
|
4156
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerListComponent, deps: [{ token: CustomerService }, { token: i3.TranslateService }, { token: i2.ConfigService }, { token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4157
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CustomerListComponent, selector: "valtimo-customer-list", ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngTemplateOutlet=\"sidebar\"></ng-container>\n\n<div\n class=\"main-content pt-0\"\n *ngIf=\"{customers: customers$ | async, fields: fields$ | async} as obs\"\n>\n <div class=\"container-fluid\">\n <div class=\"col-12 px-0 mb-5\">\n <ng-container *ngIf=\"(loading$ | async) === false; else loading\">\n <ng-container\n *ngTemplateOutlet=\"list; context: {customers: obs.customers, fields: obs.fields}\"\n ></ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-template #list let-customers=\"customers\" let-fields=\"fields\">\n <valtimo-widget>\n <valtimo-list\n [items]=\"customers\"\n [fields]=\"fields\"\n [header]=\"true\"\n (rowClicked)=\"rowClick($event)\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'customers.title' | translate }}</h3>\n <h5 class=\"list-header-description\">{{ 'customers.subtitle' | translate }}</h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n</ng-template>\n\n<ng-template #loading>\n <valtimo-spinner></valtimo-spinner>\n</ng-template>\n\n<ng-template #sidebar>\n <valtimo-filter-sidebar>\n <h4 class=\"title\">{{ 'customers.searchBasedOn' | translate }}</h4>\n <div class=\"tab-container\">\n <ul class=\"nav nav-tabs nav-tabs-classic\" role=\"tablist\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link active\"\n href=\"#search_bsn\"\n data-toggle=\"tab\"\n role=\"tab\"\n aria-selected=\"true\"\n ><b>{{ 'customers.citizenServiceNumber' | translate }}</b></a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n href=\"#search_birth_data\"\n data-toggle=\"tab\"\n role=\"tab\"\n aria-selected=\"false\"\n ><b>{{ 'customers.lastNameAndDateOfBirth' | translate }}</b></a\n >\n </li>\n </ul>\n <div class=\"tab-content\">\n <div class=\"tab-pane active\" id=\"search_bsn\" role=\"tabpanel\">\n <ng-container *ngTemplateOutlet=\"bsnTab\"></ng-container>\n </div>\n <div class=\"tab-pane\" id=\"search_birth_data\" role=\"tabpanel\">\n <ng-container *ngTemplateOutlet=\"birthDataTab\"></ng-container>\n </div>\n </div>\n </div>\n </valtimo-filter-sidebar>\n</ng-template>\n\n<ng-template #bsnTab>\n <form>\n <div class=\"form-group pt-2\">\n <label for=\"inputBsn\">{{ 'customers.citizenServiceNumber' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputBsn\"\n type=\"text\"\n name=\"bsn\"\n [placeholder]=\"'customers.citizenServiceNumberPlaceholder' | translate\"\n [ngModel]=\"bsn$ | async\"\n (ngModelChange)=\"bsnChange($event)\"\n [ngClass]=\"{'is-valid': bsnValid$ | async}\"\n />\n </div>\n </form>\n</ng-template>\n\n<ng-template #birthDataTab>\n <form>\n <div class=\"form-group pt-2\">\n <label for=\"inputDateOfBirth\">{{ 'customers.dateOfBirth' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputDateOfBirth\"\n type=\"text\"\n name=\"dateOfBirth\"\n [placeholder]=\"'customers.dateOfBirthPlaceholder' | translate\"\n [ngModel]=\"dateOfBirth$ | async\"\n (ngModelChange)=\"dateOfBirthChange($event)\"\n [ngClass]=\"{'is-valid': dateOfBirthValid$ | async}\"\n />\n </div>\n <div class=\"form-group\">\n <label for=\"inputFamilyName\">{{ 'customers.familyName' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputFamilyName\"\n type=\"text\"\n name=\"familyName\"\n [placeholder]=\"'customers.familyNamePlaceholder' | translate\"\n [ngModel]=\"familyName$ | async\"\n (ngModelChange)=\"familyNameChange($event)\"\n [ngClass]=\"{'is-valid': familyName$ | async}\"\n />\n </div>\n </form>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.WidgetComponent, selector: "valtimo-widget", inputs: ["type", "name", "icon", "contrast", "divider", "title", "subtitle", "collapseAble", "collapse", "additionalClasses"] }, { kind: "component", type: i3$1.ListComponent, selector: "valtimo-list", inputs: ["items", "fields", "pagination", "viewMode", "isSearchable", "header", "actions", "paginationIdentifier", "initialSortState", "lastColumnTemplate"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged"] }, { kind: "component", type: i3$1.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "component", type: i3$1.FilterSidebarComponent, selector: "valtimo-filter-sidebar" }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4158
|
-
}
|
|
4159
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerListComponent, decorators: [{
|
|
4160
|
-
type: Component,
|
|
4161
|
-
args: [{ selector: 'valtimo-customer-list', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngTemplateOutlet=\"sidebar\"></ng-container>\n\n<div\n class=\"main-content pt-0\"\n *ngIf=\"{customers: customers$ | async, fields: fields$ | async} as obs\"\n>\n <div class=\"container-fluid\">\n <div class=\"col-12 px-0 mb-5\">\n <ng-container *ngIf=\"(loading$ | async) === false; else loading\">\n <ng-container\n *ngTemplateOutlet=\"list; context: {customers: obs.customers, fields: obs.fields}\"\n ></ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-template #list let-customers=\"customers\" let-fields=\"fields\">\n <valtimo-widget>\n <valtimo-list\n [items]=\"customers\"\n [fields]=\"fields\"\n [header]=\"true\"\n (rowClicked)=\"rowClick($event)\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'customers.title' | translate }}</h3>\n <h5 class=\"list-header-description\">{{ 'customers.subtitle' | translate }}</h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n</ng-template>\n\n<ng-template #loading>\n <valtimo-spinner></valtimo-spinner>\n</ng-template>\n\n<ng-template #sidebar>\n <valtimo-filter-sidebar>\n <h4 class=\"title\">{{ 'customers.searchBasedOn' | translate }}</h4>\n <div class=\"tab-container\">\n <ul class=\"nav nav-tabs nav-tabs-classic\" role=\"tablist\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link active\"\n href=\"#search_bsn\"\n data-toggle=\"tab\"\n role=\"tab\"\n aria-selected=\"true\"\n ><b>{{ 'customers.citizenServiceNumber' | translate }}</b></a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n href=\"#search_birth_data\"\n data-toggle=\"tab\"\n role=\"tab\"\n aria-selected=\"false\"\n ><b>{{ 'customers.lastNameAndDateOfBirth' | translate }}</b></a\n >\n </li>\n </ul>\n <div class=\"tab-content\">\n <div class=\"tab-pane active\" id=\"search_bsn\" role=\"tabpanel\">\n <ng-container *ngTemplateOutlet=\"bsnTab\"></ng-container>\n </div>\n <div class=\"tab-pane\" id=\"search_birth_data\" role=\"tabpanel\">\n <ng-container *ngTemplateOutlet=\"birthDataTab\"></ng-container>\n </div>\n </div>\n </div>\n </valtimo-filter-sidebar>\n</ng-template>\n\n<ng-template #bsnTab>\n <form>\n <div class=\"form-group pt-2\">\n <label for=\"inputBsn\">{{ 'customers.citizenServiceNumber' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputBsn\"\n type=\"text\"\n name=\"bsn\"\n [placeholder]=\"'customers.citizenServiceNumberPlaceholder' | translate\"\n [ngModel]=\"bsn$ | async\"\n (ngModelChange)=\"bsnChange($event)\"\n [ngClass]=\"{'is-valid': bsnValid$ | async}\"\n />\n </div>\n </form>\n</ng-template>\n\n<ng-template #birthDataTab>\n <form>\n <div class=\"form-group pt-2\">\n <label for=\"inputDateOfBirth\">{{ 'customers.dateOfBirth' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputDateOfBirth\"\n type=\"text\"\n name=\"dateOfBirth\"\n [placeholder]=\"'customers.dateOfBirthPlaceholder' | translate\"\n [ngModel]=\"dateOfBirth$ | async\"\n (ngModelChange)=\"dateOfBirthChange($event)\"\n [ngClass]=\"{'is-valid': dateOfBirthValid$ | async}\"\n />\n </div>\n <div class=\"form-group\">\n <label for=\"inputFamilyName\">{{ 'customers.familyName' | translate }}</label>\n <input\n class=\"form-control\"\n id=\"inputFamilyName\"\n type=\"text\"\n name=\"familyName\"\n [placeholder]=\"'customers.familyNamePlaceholder' | translate\"\n [ngModel]=\"familyName$ | async\"\n (ngModelChange)=\"familyNameChange($event)\"\n [ngClass]=\"{'is-valid': familyName$ | async}\"\n />\n </div>\n </form>\n</ng-template>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
4162
|
-
}], ctorParameters: () => [{ type: CustomerService }, { type: i3.TranslateService }, { type: i2.ConfigService }, { type: i1$2.Router }] });
|
|
4163
|
-
|
|
4164
|
-
/*
|
|
4165
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4166
|
-
*
|
|
4167
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4168
|
-
* you may not use this file except in compliance with the License.
|
|
4169
|
-
* You may obtain a copy of the License at
|
|
4170
|
-
*
|
|
4171
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4172
|
-
*
|
|
4173
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4174
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4175
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4176
|
-
* See the License for the specific language governing permissions and
|
|
4177
|
-
* limitations under the License.
|
|
4178
|
-
*/
|
|
4179
|
-
/**
|
|
4180
|
-
* @deprecated Will be replace by new plugins
|
|
4181
|
-
*/
|
|
4182
|
-
class CasesListComponent {
|
|
4183
|
-
constructor(route, customerService) {
|
|
4184
|
-
this.route = route;
|
|
4185
|
-
this.customerService = customerService;
|
|
4186
|
-
this.customerCases$ = this.route.params.pipe(switchMap$1(params => (params?.bsn ? this.customerService.getCustomerCases(params.bsn) : of([]))), tap$1(() => this.loading$.next(false)));
|
|
4187
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4188
|
-
this.columns$ = new BehaviorSubject([
|
|
4189
|
-
{
|
|
4190
|
-
labelTranslationKey: 'customerCases.labels.zaakNummer',
|
|
4191
|
-
dataKey: 'zaakNummer',
|
|
4192
|
-
},
|
|
4193
|
-
{
|
|
4194
|
-
labelTranslationKey: 'customerCases.labels.zaakStatus',
|
|
4195
|
-
dataKey: 'zaakStatus',
|
|
4196
|
-
},
|
|
4197
|
-
{
|
|
4198
|
-
labelTranslationKey: 'customerCases.labels.zaakType',
|
|
4199
|
-
dataKey: 'zaakType',
|
|
4200
|
-
},
|
|
4201
|
-
]);
|
|
4202
|
-
}
|
|
4203
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CasesListComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: CustomerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4204
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CasesListComponent, selector: "valtimo-cases-list", ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-page-container\n *ngIf=\"{\n customerCases: customerCases$ | async,\n columns: columns$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <v-page-header>\n <v-page-header-introduction>\n <v-title>{{ 'pages.customercases.title' | translate }}</v-title>\n <v-paragraph>{{ 'pages.customercases.description' | translate }}</v-paragraph>\n </v-page-header-introduction>\n </v-page-header>\n <v-page-content>\n <v-table\n [loading]=\"obs.loading\"\n [items]=\"obs.customerCases\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"false\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'customerCases.tableItemsText'\"\n [showPagination]=\"false\"\n ></v-table>\n </v-page-content>\n</v-page-container>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.PageContainerComponent, selector: "v-page-container" }, { kind: "component", type: i3$1.PageContentComponent, selector: "v-page-content" }, { kind: "component", type: i3$1.VPageHeaderComponent, selector: "v-page-header" }, { kind: "component", type: i3$1.PageHeaderIntroductionComponent, selector: "v-page-header-introduction" }, { kind: "component", type: i3$1.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "component", type: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "component", type: i3$1.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4205
|
-
}
|
|
4206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CasesListComponent, decorators: [{
|
|
4207
|
-
type: Component,
|
|
4208
|
-
args: [{ selector: 'valtimo-cases-list', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-page-container\n *ngIf=\"{\n customerCases: customerCases$ | async,\n columns: columns$ | async,\n loading: loading$ | async,\n } as obs\"\n>\n <v-page-header>\n <v-page-header-introduction>\n <v-title>{{ 'pages.customercases.title' | translate }}</v-title>\n <v-paragraph>{{ 'pages.customercases.description' | translate }}</v-paragraph>\n </v-page-header-introduction>\n </v-page-header>\n <v-page-content>\n <v-table\n [loading]=\"obs.loading\"\n [items]=\"obs.customerCases\"\n [columns]=\"obs.columns\"\n [showEditButtons]=\"false\"\n [amountOfLoadingRows]=\"2\"\n [itemsTranslationKey]=\"'customerCases.tableItemsText'\"\n [showPagination]=\"false\"\n ></v-table>\n </v-page-content>\n</v-page-container>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
4209
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: CustomerService }] });
|
|
4210
|
-
|
|
4211
|
-
/*
|
|
4212
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4213
|
-
*
|
|
4214
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4215
|
-
* you may not use this file except in compliance with the License.
|
|
4216
|
-
* You may obtain a copy of the License at
|
|
4217
|
-
*
|
|
4218
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4219
|
-
*
|
|
4220
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4221
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4222
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4223
|
-
* See the License for the specific language governing permissions and
|
|
4224
|
-
* limitations under the License.
|
|
4225
|
-
*/
|
|
4226
|
-
const routes = [
|
|
4227
|
-
{
|
|
4228
|
-
path: 'klanten',
|
|
4229
|
-
component: CustomerListComponent,
|
|
4230
|
-
canActivate: [AuthGuardService],
|
|
4231
|
-
data: { title: 'Customers', roles: [ROLE_USER] },
|
|
4232
|
-
},
|
|
4233
|
-
{
|
|
4234
|
-
path: 'klanten/klant/:bsn',
|
|
4235
|
-
component: CasesListComponent,
|
|
4236
|
-
canActivate: [AuthGuardService],
|
|
4237
|
-
data: { title: 'customerCases', roles: [ROLE_USER] },
|
|
4238
|
-
},
|
|
4239
|
-
];
|
|
4240
|
-
class CustomerRoutingModule {
|
|
4241
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4242
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, imports: [CommonModule, i1$2.RouterModule], exports: [RouterModule] }); }
|
|
4243
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, imports: [CommonModule, RouterModule.forChild(routes), RouterModule] }); }
|
|
4244
|
-
}
|
|
4245
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, decorators: [{
|
|
4246
|
-
type: NgModule,
|
|
4247
|
-
args: [{
|
|
4248
|
-
imports: [CommonModule, RouterModule.forChild(routes)],
|
|
4249
|
-
exports: [RouterModule],
|
|
4250
|
-
}]
|
|
4251
|
-
}] });
|
|
4252
|
-
|
|
4253
|
-
/*
|
|
4254
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4255
|
-
*
|
|
4256
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4257
|
-
* you may not use this file except in compliance with the License.
|
|
4258
|
-
* You may obtain a copy of the License at
|
|
4259
|
-
*
|
|
4260
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4261
|
-
*
|
|
4262
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4263
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4264
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4265
|
-
* See the License for the specific language governing permissions and
|
|
4266
|
-
* limitations under the License.
|
|
4267
|
-
*/
|
|
4268
|
-
/**
|
|
4269
|
-
* @deprecated Will be replace by new plugins
|
|
4270
|
-
*/
|
|
4271
|
-
class CustomerModule {
|
|
4272
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4273
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, declarations: [CustomerListComponent, CasesListComponent], imports: [CommonModule,
|
|
4274
|
-
WidgetModule,
|
|
4275
|
-
CustomerRoutingModule,
|
|
4276
|
-
ListModule,
|
|
4277
|
-
SpinnerModule,
|
|
4278
|
-
TranslateModule,
|
|
4279
|
-
FilterSidebarModule,
|
|
4280
|
-
FormsModule,
|
|
4281
|
-
PageModule,
|
|
4282
|
-
TitleModule,
|
|
4283
|
-
ParagraphModule,
|
|
4284
|
-
TableModule], exports: [CustomerListComponent, CasesListComponent] }); }
|
|
4285
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, imports: [CommonModule,
|
|
4286
|
-
WidgetModule,
|
|
4287
|
-
CustomerRoutingModule,
|
|
4288
|
-
ListModule,
|
|
4289
|
-
SpinnerModule,
|
|
4290
|
-
TranslateModule,
|
|
4291
|
-
FilterSidebarModule,
|
|
4292
|
-
FormsModule,
|
|
4293
|
-
PageModule,
|
|
4294
|
-
TitleModule,
|
|
4295
|
-
ParagraphModule,
|
|
4296
|
-
TableModule] }); }
|
|
4297
|
-
}
|
|
4298
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, decorators: [{
|
|
4299
|
-
type: NgModule,
|
|
4300
|
-
args: [{
|
|
4301
|
-
imports: [
|
|
4302
|
-
CommonModule,
|
|
4303
|
-
WidgetModule,
|
|
4304
|
-
CustomerRoutingModule,
|
|
4305
|
-
ListModule,
|
|
4306
|
-
SpinnerModule,
|
|
4307
|
-
TranslateModule,
|
|
4308
|
-
FilterSidebarModule,
|
|
4309
|
-
FormsModule,
|
|
4310
|
-
PageModule,
|
|
4311
|
-
TitleModule,
|
|
4312
|
-
ParagraphModule,
|
|
4313
|
-
TableModule,
|
|
4314
|
-
],
|
|
4315
|
-
declarations: [CustomerListComponent, CasesListComponent],
|
|
4316
|
-
exports: [CustomerListComponent, CasesListComponent],
|
|
4317
|
-
}]
|
|
4318
|
-
}] });
|
|
4319
|
-
|
|
4320
|
-
/*
|
|
4321
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4322
|
-
*
|
|
4323
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4324
|
-
* you may not use this file except in compliance with the License.
|
|
4325
|
-
* You may obtain a copy of the License at
|
|
4326
|
-
*
|
|
4327
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4328
|
-
*
|
|
4329
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4330
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4331
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4332
|
-
* See the License for the specific language governing permissions and
|
|
4333
|
-
* limitations under the License.
|
|
4334
|
-
*/
|
|
4335
|
-
|
|
4336
|
-
/*
|
|
4337
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4338
|
-
*
|
|
4339
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4340
|
-
* you may not use this file except in compliance with the License.
|
|
4341
|
-
* You may obtain a copy of the License at
|
|
4342
|
-
*
|
|
4343
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4344
|
-
*
|
|
4345
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4346
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4347
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4348
|
-
* See the License for the specific language governing permissions and
|
|
4349
|
-
* limitations under the License.
|
|
4350
|
-
*/
|
|
4351
|
-
class DocumentObjectenApiSyncService extends BaseApiService {
|
|
4352
|
-
constructor(httpClient, configService) {
|
|
4353
|
-
super(httpClient, configService);
|
|
4354
|
-
this.httpClient = httpClient;
|
|
4355
|
-
this.configService = configService;
|
|
4356
|
-
}
|
|
4357
|
-
getDocumentDefinition(documentDefinitionName) {
|
|
4358
|
-
return this.httpClient.get(this.getApiUrl(`/v1/document-definition/${documentDefinitionName}`));
|
|
4359
|
-
}
|
|
4360
|
-
getObjectManagementConfigurations() {
|
|
4361
|
-
return this.httpClient.get(this.getApiUrl(`/management/v1/object/management/configuration`));
|
|
4362
|
-
}
|
|
4363
|
-
getDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion) {
|
|
4364
|
-
return this.httpClient.get(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`));
|
|
4365
|
-
}
|
|
4366
|
-
updateDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion, request) {
|
|
4367
|
-
return this.httpClient.put(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`), request);
|
|
4368
|
-
}
|
|
4369
|
-
deleteDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion) {
|
|
4370
|
-
return this.httpClient.delete(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`));
|
|
4371
|
-
}
|
|
4372
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4373
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncService, providedIn: 'root' }); }
|
|
4374
|
-
}
|
|
4375
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncService, decorators: [{
|
|
4376
|
-
type: Injectable,
|
|
4377
|
-
args: [{
|
|
4378
|
-
providedIn: 'root',
|
|
4379
|
-
}]
|
|
4380
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
4381
|
-
|
|
4382
|
-
/*
|
|
4383
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4384
|
-
*
|
|
4385
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4386
|
-
* you may not use this file except in compliance with the License.
|
|
4387
|
-
* You may obtain a copy of the License at
|
|
4388
|
-
*
|
|
4389
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4390
|
-
*
|
|
4391
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4392
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4393
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4394
|
-
* See the License for the specific language governing permissions and
|
|
4395
|
-
* limitations under the License.
|
|
4396
|
-
*/
|
|
4397
|
-
|
|
4398
|
-
/*
|
|
4399
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4400
|
-
*
|
|
4401
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4402
|
-
* you may not use this file except in compliance with the License.
|
|
4403
|
-
* You may obtain a copy of the License at
|
|
4404
|
-
*
|
|
4405
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4406
|
-
*
|
|
4407
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4408
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4409
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4410
|
-
* See the License for the specific language governing permissions and
|
|
4411
|
-
* limitations under the License.
|
|
4412
|
-
*/
|
|
4413
|
-
class DocumentObjectenApiSyncComponent {
|
|
4414
|
-
get objectManagementConfigurationId() {
|
|
4415
|
-
return this.formGroup.get('objectManagementConfigurationId');
|
|
4416
|
-
}
|
|
4417
|
-
get enabled() {
|
|
4418
|
-
return this.formGroup.get('enabled');
|
|
4419
|
-
}
|
|
4420
|
-
constructor(route, documentObjectenApiSyncService, cdsThemeService) {
|
|
4421
|
-
this.route = route;
|
|
4422
|
-
this.documentObjectenApiSyncService = documentObjectenApiSyncService;
|
|
4423
|
-
this.cdsThemeService = cdsThemeService;
|
|
4424
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4425
|
-
this.documentDefinitionName$ = this.route.params.pipe(map(params => params.name || ''));
|
|
4426
|
-
this.documentDefinition$ = this.documentDefinitionName$.pipe(switchMap(documentDefinitionName => this.documentObjectenApiSyncService.getDocumentDefinition(documentDefinitionName)));
|
|
4427
|
-
this.documentObjectenApiSync$ = new BehaviorSubject(null);
|
|
4428
|
-
this.objectManagementConfigurationItems$ = this.documentObjectenApiSyncService.getObjectManagementConfigurations().pipe(map(results => results?.map(configuration => ({
|
|
4429
|
-
id: configuration.id,
|
|
4430
|
-
text: configuration.title,
|
|
4431
|
-
}))));
|
|
4432
|
-
this.modalShowing$ = new BehaviorSubject(false);
|
|
4433
|
-
this.currentTheme$ = this.cdsThemeService.currentTheme$;
|
|
4434
|
-
this.formGroup = new FormGroup({
|
|
4435
|
-
objectManagementConfigurationId: new FormControl('', Validators.required),
|
|
4436
|
-
enabled: new FormControl(true),
|
|
4437
|
-
});
|
|
4438
|
-
this.valid$ = new BehaviorSubject(false);
|
|
4439
|
-
}
|
|
4440
|
-
ngOnInit() {
|
|
4441
|
-
this.loadDocumentenObjectenApiSync();
|
|
4442
|
-
}
|
|
4443
|
-
loadDocumentenObjectenApiSync() {
|
|
4444
|
-
this.documentDefinition$
|
|
4445
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.getDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version)))
|
|
4446
|
-
.subscribe(documentObjectenApiSync => {
|
|
4447
|
-
this.loading$.next(false);
|
|
4448
|
-
this.configSelected(documentObjectenApiSync?.objectManagementConfigurationId);
|
|
4449
|
-
this.enabled.patchValue(documentObjectenApiSync?.enabled);
|
|
4450
|
-
this.documentObjectenApiSync$.next(documentObjectenApiSync);
|
|
4451
|
-
});
|
|
4452
|
-
}
|
|
4453
|
-
remove() {
|
|
4454
|
-
this.documentDefinition$
|
|
4455
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.deleteDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version)), tap(() => {
|
|
4456
|
-
this.documentObjectenApiSync$.next(null);
|
|
4457
|
-
}))
|
|
4458
|
-
.subscribe();
|
|
4459
|
-
}
|
|
4460
|
-
submit() {
|
|
4461
|
-
const formValues = this.formGroup.getRawValue();
|
|
4462
|
-
this.documentDefinition$
|
|
4463
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.updateDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version, {
|
|
4464
|
-
objectManagementConfigurationId: formValues.objectManagementConfigurationId,
|
|
4465
|
-
enabled: formValues.enabled,
|
|
4466
|
-
})))
|
|
4467
|
-
.subscribe(() => {
|
|
4468
|
-
this.loadDocumentenObjectenApiSync();
|
|
4469
|
-
this.hideModal();
|
|
4470
|
-
});
|
|
4471
|
-
}
|
|
4472
|
-
onModalClose() {
|
|
4473
|
-
this.hideModal();
|
|
4474
|
-
}
|
|
4475
|
-
showModal() {
|
|
4476
|
-
this.modalShowing$.next(true);
|
|
4477
|
-
}
|
|
4478
|
-
configSelected(selectedId) {
|
|
4479
|
-
if (!selectedId) {
|
|
4480
|
-
this.objectManagementConfigurationId.patchValue('');
|
|
4481
|
-
}
|
|
4482
|
-
else {
|
|
4483
|
-
this.objectManagementConfigurationId.patchValue(selectedId);
|
|
4484
|
-
}
|
|
4485
|
-
}
|
|
4486
|
-
hideModal() {
|
|
4487
|
-
this.modalShowing$.next(false);
|
|
4488
|
-
}
|
|
4489
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentObjectenApiSyncService }, { token: i3$1.CdsThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4490
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentObjectenApiSyncComponent, isStandalone: true, selector: "valtimo-document-objecten-api-sync", ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'zaakdetails.title' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentObjectenApiSync: documentObjectenApiSync$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container *ngIf=\"obs.documentObjectenApiSync; else addSync\">\n <div class=\"card card-border card-contrast\">\n <div class=\"card-header card-header-contrast card-header-featured\">\n <div>\n {{ obs.documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n <div class=\"controls\">\n <button class=\"btn btn-danger ml-3\" (click)=\"showModal()\">\n <i class=\"icon mdi mdi-pencil\"></i>\n </button>\n <button class=\"btn btn-danger ml-3\" (click)=\"remove()\">\n <i class=\"icon mdi mdi-delete\"></i>\n </button>\n </div>\n </div>\n <div class=\"card-body\">\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'zaakdetails.enabled' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{\n obs.documentObjectenApiSync?.enabled\n ? ('zaakdetails.yes' | translate)\n : ('zaakdetails.no' | translate)\n }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'zaakdetails.objectManagementConfigurationTitle' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ obs.documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"modal; context: {obs: obs}\"></ng-container>\n</ng-container>\n\n<ng-template #addSync>\n <div class=\"text-right mt-5\">\n <button class=\"btn btn-primary\" (click)=\"showModal()\">\n <i class=\"icon mdi mdi-plus mr-1\"></i>{{ 'zaakdetails.submitButton' | translate }}\n </button>\n </div>\n</ng-template>\n\n<ng-template #modal let-obs=\"obs\">\n <cds-modal\n valtimoCdsModal\n [title]=\"'zaakdetails.editModal.title' | translate\"\n [open]=\"modalShowing$ | async\"\n [showFooter]=\"true\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zaakdetails.editModal.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\n <form [formGroup]=\"formGroup\">\n <v-select\n *ngIf=\"objectManagementConfigurationItems$ | async as objectManagementConfigurations\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n [items]=\"objectManagementConfigurations\"\n [defaultSelectionId]=\"objectManagementConfigurationId.getRawValue()\"\n [placeholder]=\"\n 'zaakdetails.editModal.objectManagementConfigurationPlaceholder' | translate\n \"\n [title]=\"'zaakdetails.editModal.objectManagementConfiguration' | translate\"\n [disabled]=\"false\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"objectManagementConfigurationId\"\n [carbonTheme]=\"currentTheme$ | async\"\n (selectedChange)=\"configSelected($event)\"\n ></v-select>\n\n <cds-checkbox formControlName=\"enabled\"\n >{{ 'zaakdetails.editModal.enabled' | translate }}\n </cds-checkbox>\n </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 cdsButton=\"secondary\" (click)=\"onModalClose()\" [disabled]=\"false\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"!formGroup.valid\" (click)=\"submit()\">\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"mb-8\">\n <valtimo-spinner></valtimo-spinner>\n </div>\n</ng-template>\n\n<ng-template #noConfigAvailable>\n <div class=\"mb-8\">\n <h4>{{ 'zaakdetails.error.configNotFound' | translate }}</h4>\n </div>\n</ng-template>\n", styles: [".card-header,.setting-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.controls{display:flex;align-items:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3$1.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: FormModule }, { kind: "ngmodule", type: InputModule$1 }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i3$1.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "dataTestId"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: ValtimoCdsModalDirectiveModule }, { kind: "directive", type: i3$1.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["enableOverflow"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i6.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i6.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i6.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i6.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i6.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i6.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }] }); }
|
|
4491
|
-
}
|
|
4492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
|
|
4493
|
-
type: Component,
|
|
4494
|
-
args: [{ selector: 'valtimo-document-objecten-api-sync', standalone: true, imports: [
|
|
4495
|
-
CommonModule,
|
|
4496
|
-
FormsModule,
|
|
4497
|
-
TranslateModule,
|
|
4498
|
-
SpinnerModule,
|
|
4499
|
-
FormModule,
|
|
4500
|
-
InputModule$1,
|
|
4501
|
-
SelectModule,
|
|
4502
|
-
ValtimoCdsModalDirectiveModule,
|
|
4503
|
-
CheckboxModule,
|
|
4504
|
-
ReactiveFormsModule,
|
|
4505
|
-
ButtonModule,
|
|
4506
|
-
ModalModule,
|
|
4507
|
-
], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'zaakdetails.title' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentObjectenApiSync: documentObjectenApiSync$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container *ngIf=\"obs.documentObjectenApiSync; else addSync\">\n <div class=\"card card-border card-contrast\">\n <div class=\"card-header card-header-contrast card-header-featured\">\n <div>\n {{ obs.documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n <div class=\"controls\">\n <button class=\"btn btn-danger ml-3\" (click)=\"showModal()\">\n <i class=\"icon mdi mdi-pencil\"></i>\n </button>\n <button class=\"btn btn-danger ml-3\" (click)=\"remove()\">\n <i class=\"icon mdi mdi-delete\"></i>\n </button>\n </div>\n </div>\n <div class=\"card-body\">\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'zaakdetails.enabled' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{\n obs.documentObjectenApiSync?.enabled\n ? ('zaakdetails.yes' | translate)\n : ('zaakdetails.no' | translate)\n }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'zaakdetails.objectManagementConfigurationTitle' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ obs.documentObjectenApiSync.objectManagementConfigurationTitle || '-' }}\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"modal; context: {obs: obs}\"></ng-container>\n</ng-container>\n\n<ng-template #addSync>\n <div class=\"text-right mt-5\">\n <button class=\"btn btn-primary\" (click)=\"showModal()\">\n <i class=\"icon mdi mdi-plus mr-1\"></i>{{ 'zaakdetails.submitButton' | translate }}\n </button>\n </div>\n</ng-template>\n\n<ng-template #modal let-obs=\"obs\">\n <cds-modal\n valtimoCdsModal\n [title]=\"'zaakdetails.editModal.title' | translate\"\n [open]=\"modalShowing$ | async\"\n [showFooter]=\"true\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zaakdetails.editModal.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\n <form [formGroup]=\"formGroup\">\n <v-select\n *ngIf=\"objectManagementConfigurationItems$ | async as objectManagementConfigurations\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n [items]=\"objectManagementConfigurations\"\n [defaultSelectionId]=\"objectManagementConfigurationId.getRawValue()\"\n [placeholder]=\"\n 'zaakdetails.editModal.objectManagementConfigurationPlaceholder' | translate\n \"\n [title]=\"'zaakdetails.editModal.objectManagementConfiguration' | translate\"\n [disabled]=\"false\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"objectManagementConfigurationId\"\n [carbonTheme]=\"currentTheme$ | async\"\n (selectedChange)=\"configSelected($event)\"\n ></v-select>\n\n <cds-checkbox formControlName=\"enabled\"\n >{{ 'zaakdetails.editModal.enabled' | translate }}\n </cds-checkbox>\n </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 cdsButton=\"secondary\" (click)=\"onModalClose()\" [disabled]=\"false\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"!formGroup.valid\" (click)=\"submit()\">\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"mb-8\">\n <valtimo-spinner></valtimo-spinner>\n </div>\n</ng-template>\n\n<ng-template #noConfigAvailable>\n <div class=\"mb-8\">\n <h4>{{ 'zaakdetails.error.configNotFound' | translate }}</h4>\n </div>\n</ng-template>\n", styles: [".card-header,.setting-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.controls{display:flex;align-items:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
4508
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i3$1.CdsThemeService }] });
|
|
4509
|
-
|
|
4510
|
-
/*
|
|
4511
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4512
|
-
*
|
|
4513
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4514
|
-
* you may not use this file except in compliance with the License.
|
|
4515
|
-
* You may obtain a copy of the License at
|
|
4516
|
-
*
|
|
4517
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4518
|
-
*
|
|
4519
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4520
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4521
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4522
|
-
* See the License for the specific language governing permissions and
|
|
4523
|
-
* limitations under the License.
|
|
4524
|
-
*/
|
|
4525
|
-
|
|
4526
|
-
/*
|
|
4527
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4528
|
-
*
|
|
4529
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4530
|
-
* you may not use this file except in compliance with the License.
|
|
4531
|
-
* You may obtain a copy of the License at
|
|
4532
|
-
*
|
|
4533
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4534
|
-
*
|
|
4535
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4536
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4537
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4538
|
-
* See the License for the specific language governing permissions and
|
|
4539
|
-
* limitations under the License.
|
|
4540
|
-
*/
|
|
4541
|
-
|
|
4542
|
-
/*
|
|
4543
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4544
|
-
*
|
|
4545
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4546
|
-
* you may not use this file except in compliance with the License.
|
|
4547
|
-
* You may obtain a copy of the License at
|
|
4548
|
-
*
|
|
4549
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4550
|
-
*
|
|
4551
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4552
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4553
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4554
|
-
* See the License for the specific language governing permissions and
|
|
4555
|
-
* limitations under the License.
|
|
4556
|
-
*/
|
|
4557
|
-
|
|
4558
|
-
/*
|
|
4559
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4560
|
-
*
|
|
4561
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4562
|
-
* you may not use this file except in compliance with the License.
|
|
4563
|
-
* You may obtain a copy of the License at
|
|
4564
|
-
*
|
|
4565
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4566
|
-
*
|
|
4567
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4568
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4569
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4570
|
-
* See the License for the specific language governing permissions and
|
|
4571
|
-
* limitations under the License.
|
|
4572
|
-
*/
|
|
4573
|
-
class ZakenApiZaaktypeLinkService extends BaseApiService {
|
|
4574
|
-
constructor(httpClient, configService) {
|
|
4575
|
-
super(httpClient, configService);
|
|
4576
|
-
this.httpClient = httpClient;
|
|
4577
|
-
this.configService = configService;
|
|
4578
|
-
}
|
|
4579
|
-
getPluginConfigurationsByPluginDefinitionKey(pluginDefinitionKey) {
|
|
4580
|
-
return this.httpClient.get(this.getApiUrl(`/v1/plugin/configuration?pluginDefinitionKey=${pluginDefinitionKey}`));
|
|
4581
|
-
}
|
|
4582
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4583
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkService, providedIn: 'root' }); }
|
|
4584
|
-
}
|
|
4585
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkService, decorators: [{
|
|
4586
|
-
type: Injectable,
|
|
4587
|
-
args: [{
|
|
4588
|
-
providedIn: 'root',
|
|
4589
|
-
}]
|
|
4590
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
4591
|
-
|
|
4592
|
-
/*
|
|
4593
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4594
|
-
*
|
|
4595
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4596
|
-
* you may not use this file except in compliance with the License.
|
|
4597
|
-
* You may obtain a copy of the License at
|
|
4598
|
-
*
|
|
4599
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4600
|
-
*
|
|
4601
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4602
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4603
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4604
|
-
* See the License for the specific language governing permissions and
|
|
4605
|
-
* limitations under the License.
|
|
4606
|
-
*/
|
|
4607
|
-
|
|
4608
|
-
/*
|
|
4609
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4061
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4610
4062
|
*
|
|
4611
4063
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4612
4064
|
* you may not use this file except in compliance with the License.
|
|
@@ -4621,33 +4073,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4621
4073
|
* limitations under the License.
|
|
4622
4074
|
*/
|
|
4623
4075
|
class ZakenApiZaaktypeLinkComponent {
|
|
4624
|
-
constructor(
|
|
4625
|
-
this.
|
|
4076
|
+
constructor(globalNotificationService, iconService, openZaakService, route, translateService, zakenApiZaaktypeLinkService) {
|
|
4077
|
+
this.globalNotificationService = globalNotificationService;
|
|
4078
|
+
this.iconService = iconService;
|
|
4626
4079
|
this.openZaakService = openZaakService;
|
|
4627
|
-
this.
|
|
4628
|
-
this.toasterService = toasterService;
|
|
4080
|
+
this.route = route;
|
|
4629
4081
|
this.translateService = translateService;
|
|
4630
4082
|
this.zakenApiZaaktypeLinkService = zakenApiZaaktypeLinkService;
|
|
4631
|
-
this.configService = configService;
|
|
4632
4083
|
this.selectedZaakType = null;
|
|
4633
4084
|
this.selectedPluginConfiguration = null;
|
|
4634
4085
|
this.selectedInformatieObjectTypeUrl = null;
|
|
4635
4086
|
this.loading$ = new BehaviorSubject(true);
|
|
4636
4087
|
this.zaakTypeLink$ = new BehaviorSubject(null);
|
|
4637
|
-
this.
|
|
4638
|
-
this.
|
|
4639
|
-
this.informatieObjectTypeSelectionEnabled =
|
|
4640
|
-
this.configService.config.uploadProvider === UploadProvider.OPEN_ZAAK;
|
|
4088
|
+
this.modalOpen$ = new BehaviorSubject(false);
|
|
4089
|
+
this.iconService.registerAll([Edit16, TrashCan16, Save16]);
|
|
4641
4090
|
}
|
|
4642
4091
|
ngOnInit() {
|
|
4643
|
-
this.
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4647
|
-
|
|
4092
|
+
getCaseManagementRouteParams(this.route)
|
|
4093
|
+
.pipe(switchMap((params) => {
|
|
4094
|
+
this._caseDefinitionKey = params?.caseDefinitionKey ?? '';
|
|
4095
|
+
this._caseVersionTag = params?.caseDefinitionVersionTag ?? '';
|
|
4096
|
+
this.zaakTypeLinkRequest = {
|
|
4097
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4098
|
+
caseVersionTag: this._caseVersionTag,
|
|
4099
|
+
createWithDossier: false,
|
|
4100
|
+
};
|
|
4101
|
+
return this.openZaakService.getZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag);
|
|
4102
|
+
}))
|
|
4103
|
+
.subscribe(zaakTypeLink => {
|
|
4648
4104
|
if (zaakTypeLink !== null) {
|
|
4649
4105
|
this.zaakTypeLinkRequest = {
|
|
4650
|
-
|
|
4106
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4107
|
+
caseVersionTag: this._caseVersionTag,
|
|
4651
4108
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4652
4109
|
rsin: zaakTypeLink?.rsin,
|
|
4653
4110
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
@@ -4657,28 +4114,22 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4657
4114
|
this.zaakTypeLink$.next(zaakTypeLink);
|
|
4658
4115
|
this.loadZaakTypes();
|
|
4659
4116
|
this.loadZakenApiPluginConfigurations();
|
|
4117
|
+
this.loading$.next(false);
|
|
4660
4118
|
});
|
|
4661
|
-
this.loading$.next(false);
|
|
4662
|
-
}
|
|
4663
|
-
findZaakType(zaakTypeUrl) {
|
|
4664
|
-
this.selectedZaakType = this.zaakTypes.find(zaakType => zaakType.url === zaakTypeUrl);
|
|
4665
|
-
}
|
|
4666
|
-
findPluginConfiguration(pluginConfigurationId) {
|
|
4667
|
-
this.selectedPluginConfiguration = this.pluginConfigurations.find(pluginConfiguration => pluginConfiguration.id === pluginConfigurationId);
|
|
4668
4119
|
}
|
|
4669
4120
|
loadZaakTypes() {
|
|
4670
|
-
|
|
4121
|
+
this.openZaakService.getZaakTypes().subscribe((zaakTypes) => {
|
|
4671
4122
|
this.zaakTypes = zaakTypes;
|
|
4672
|
-
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl);
|
|
4123
|
+
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl ?? '');
|
|
4673
4124
|
this.loading$.next(false);
|
|
4674
4125
|
});
|
|
4675
4126
|
}
|
|
4676
4127
|
loadZakenApiPluginConfigurations() {
|
|
4677
|
-
|
|
4128
|
+
this.zakenApiZaaktypeLinkService
|
|
4678
4129
|
.getPluginConfigurationsByPluginDefinitionKey('zakenapi')
|
|
4679
4130
|
.subscribe((plugins) => {
|
|
4680
4131
|
this.pluginConfigurations = plugins;
|
|
4681
|
-
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId);
|
|
4132
|
+
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId ?? '');
|
|
4682
4133
|
});
|
|
4683
4134
|
}
|
|
4684
4135
|
loadInformatieObjectTypeUrls() {
|
|
@@ -4688,90 +4139,120 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4688
4139
|
this.informatieObjectTypes = informatieObjectTypes;
|
|
4689
4140
|
});
|
|
4690
4141
|
}
|
|
4142
|
+
closeModal() {
|
|
4143
|
+
this.modalOpen$.next(false);
|
|
4144
|
+
}
|
|
4691
4145
|
openModal(zaakTypeLink) {
|
|
4692
4146
|
this.zaakTypeLinkRequest = {
|
|
4693
|
-
|
|
4147
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4148
|
+
caseVersionTag: this._caseVersionTag,
|
|
4694
4149
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4695
4150
|
rsin: zaakTypeLink?.rsin,
|
|
4696
4151
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
4697
4152
|
zaakTypeUrl: zaakTypeLink?.zaakTypeUrl,
|
|
4698
4153
|
};
|
|
4699
|
-
|
|
4700
|
-
|
|
4701
|
-
|
|
4702
|
-
|
|
4703
|
-
}
|
|
4704
|
-
else {
|
|
4705
|
-
this.loadInformatieObjectTypeUrls();
|
|
4706
|
-
this.openZaakService
|
|
4707
|
-
.getInformatieObjectTypeLink(this.documentDefinitionName)
|
|
4708
|
-
.subscribe(informatieObjectTypeLink => {
|
|
4709
|
-
if (informatieObjectTypeLink !== null) {
|
|
4710
|
-
this.selectedInformatieObjectTypeUrl =
|
|
4711
|
-
informatieObjectTypeLink.informatieObjectType;
|
|
4712
|
-
}
|
|
4713
|
-
});
|
|
4714
|
-
}
|
|
4715
|
-
this.modal.show();
|
|
4716
|
-
});
|
|
4717
|
-
}
|
|
4718
|
-
else {
|
|
4719
|
-
this.modal.show();
|
|
4720
|
-
}
|
|
4154
|
+
this.modalOpen$.next(true);
|
|
4155
|
+
}
|
|
4156
|
+
onCheckedChange(checked) {
|
|
4157
|
+
this.zaakTypeLinkRequest.createWithDossier = checked;
|
|
4721
4158
|
}
|
|
4722
4159
|
removeZaakTypeLink() {
|
|
4723
|
-
this.openZaakService
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4160
|
+
this.openZaakService
|
|
4161
|
+
.deleteZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag)
|
|
4162
|
+
.subscribe({
|
|
4163
|
+
next: () => {
|
|
4164
|
+
this.globalNotificationService.showToast({
|
|
4165
|
+
title: this.translateService.instant('openZaak.delinkSuccessful'),
|
|
4166
|
+
type: 'success',
|
|
4167
|
+
});
|
|
4168
|
+
this.zaakTypeLink$.next(null);
|
|
4169
|
+
},
|
|
4170
|
+
error: () => {
|
|
4171
|
+
this.globalNotificationService.showToast({
|
|
4172
|
+
title: this.translateService.instant('openZaak.delinkFailed'),
|
|
4173
|
+
type: 'error',
|
|
4174
|
+
});
|
|
4175
|
+
},
|
|
4731
4176
|
});
|
|
4732
4177
|
}
|
|
4733
4178
|
submit() {
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
|
|
4752
|
-
|
|
4753
|
-
.subscribe(() => {
|
|
4754
|
-
this.toasterService.success('Successfully linked object informatie type to dossier');
|
|
4179
|
+
this.openZaakService
|
|
4180
|
+
.createZaakTypeLink(this.zaakTypeLinkRequest)
|
|
4181
|
+
.pipe(finalize(() => this.modalOpen$.next(false)))
|
|
4182
|
+
.subscribe({
|
|
4183
|
+
next: linkResult => {
|
|
4184
|
+
this.zaakTypeLink$.next(linkResult);
|
|
4185
|
+
this.zaakTypeLinkRequest = {
|
|
4186
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4187
|
+
caseVersionTag: this._caseVersionTag,
|
|
4188
|
+
createWithDossier: linkResult?.createWithDossier,
|
|
4189
|
+
rsin: linkResult?.rsin,
|
|
4190
|
+
zakenApiPluginConfigurationId: linkResult?.zakenApiPluginConfigurationId,
|
|
4191
|
+
zaakTypeUrl: linkResult?.zaakTypeUrl,
|
|
4192
|
+
};
|
|
4193
|
+
this.findZaakType(linkResult.zaakTypeUrl);
|
|
4194
|
+
this.findPluginConfiguration(linkResult.zakenApiPluginConfigurationId);
|
|
4195
|
+
this.globalNotificationService.showToast({
|
|
4196
|
+
title: this.translateService.instant('openZaak.linkSuccessful'),
|
|
4197
|
+
type: 'success',
|
|
4755
4198
|
});
|
|
4756
|
-
}
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4199
|
+
},
|
|
4200
|
+
error: () => {
|
|
4201
|
+
this.globalNotificationService.showToast({
|
|
4202
|
+
title: this.translateService.instant('openZaak.linkFailed'),
|
|
4203
|
+
type: 'error',
|
|
4204
|
+
});
|
|
4205
|
+
},
|
|
4760
4206
|
});
|
|
4761
4207
|
}
|
|
4762
|
-
|
|
4763
|
-
|
|
4208
|
+
findZaakType(zaakTypeUrl) {
|
|
4209
|
+
this.selectedZaakType = this.zaakTypes.find(zaakType => zaakType.url === zaakTypeUrl) ?? null;
|
|
4210
|
+
}
|
|
4211
|
+
findPluginConfiguration(pluginConfigurationId) {
|
|
4212
|
+
this.selectedPluginConfiguration =
|
|
4213
|
+
this.pluginConfigurations.find(pluginConfiguration => pluginConfiguration.id === pluginConfigurationId) ?? null;
|
|
4214
|
+
}
|
|
4215
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, deps: [{ token: i2.GlobalNotificationService }, { token: i5$1.IconService }, { token: i5$3.OpenZaakService }, { token: i1$2.ActivatedRoute }, { token: i5.TranslateService }, { token: ZakenApiZaaktypeLinkService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4216
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: ZakenApiZaaktypeLinkComponent, isStandalone: true, selector: "valtimo-zaken-api-zaaktype-link", 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 <h2 class=\"valtimo-zaak-type-link__title\">{{ 'openZaak.links' | translate }}</h2>\n\n @if (loading$ | async) {\n <valtimo-spinner></valtimo-spinner>\n } @else {\n @if (zaakTypeLink$ | async; as zaakTypeLink) {\n <section class=\"valtimo-zaak-type-link__card-header\">\n <span class=\"valtimo-zaak-type-link__card-title\">\n {{ this.selectedZaakType?.omschrijving || '-' }}\n </span>\n\n <div class=\"valtimo-zaak-type-link__card-controls\">\n <button cdsButton=\"tertiary\" (click)=\"openModal(zaakTypeLink)\">\n {{ 'interface.edit' | translate }}\n\n <svg cdsIcon=\"edit\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button cdsButton=\"danger\" (click)=\"removeZaakTypeLink()\">\n {{ 'interface.delete' | translate }}\n\n <svg cdsIcon=\"trash-can\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n </section>\n\n <section class=\"valtimo-zaak-type-link__card-body\">\n <div>\n <strong>{{ 'openZaak.autoCreateForCase' | translate }}</strong>\n\n {{\n zaakTypeLink?.createWithDossier\n ? ('viewTypeConverter.Yes' | translate)\n : ('viewTypeConverter.No' | translate)\n }}\n </div>\n\n <div>\n <strong>{{ 'openZaak.zakenApiPlugin' | translate }}</strong>\n\n {{ this.selectedPluginConfiguration?.title || '-' }}\n </div>\n\n <div>\n <strong>{{ 'openZaak.rsin' | translate }}</strong>\n\n {{ zaakTypeLink?.rsin || '-' }}\n </div>\n </section>\n } @else {\n <button\n cdsButton=\"primary\"\n class=\"valtimo-zaak-type-link__link-button\"\n (click)=\"openModal(null)\"\n >\n {{ 'openZaak.linkZaakType' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n }\n }\n</cds-tile>\n\n<valtimo-render-in-body>\n <cds-modal showFooter=\"true\" valtimoCdsModal [open]=\"modalOpen$ | async\" (close)=\"closeModal()\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"closeModal()\">\n <h3 cdsModalHeaderHeading>Zaak types</h3>\n\n <span> Connect Zaak type to Dossier</span>\n </cds-modal-header>\n\n <section cdsModalContent class=\"valtimo-zaak-type-link-modal__content\">\n <cds-select\n [label]=\"'openZaak.selectZaakTypeForCase' | translate\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zaakTypeUrl\"\n >\n <option value=\"default\">{{ 'openZaak.selectZaakType' | translate }}</option>\n\n @for (zaakType of zaakTypes; track zaakType.url) {\n <option [value]=\"zaakType.url\">\n {{ zaakType.omschrijving || '-' }}\n </option>\n }\n </cds-select>\n\n <cds-select\n [label]=\"'openZaak.selectZakenApiPluginForCase' | translate\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zakenApiPluginConfigurationId\"\n >\n <option value=\"default\">{{ 'openZaak.selectZakenApiPlugin' | translate }}</option>\n\n @for (pluginConfiguration of pluginConfigurations; track pluginConfiguration.id) {\n <option [value]=\"pluginConfiguration.id\">\n {{ pluginConfiguration?.title || '-' }}\n </option>\n }\n </cds-select>\n\n <cds-text-label>\n {{ 'openZaak.rsin' | translate }}\n\n <input\n cdsText\n cdsLayer=\"1\"\n placeholder=\"RSIN\"\n type=\"text\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.rsin\"\n />\n </cds-text-label>\n\n <cds-toggle\n [label]=\"'openZaak.autoCreateForCase' | translate\"\n [checked]=\"this.zaakTypeLinkRequest.createWithDossier\"\n (checkedChange)=\"onCheckedChange($event)\"\n >\n </cds-toggle>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"closeModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [disabled]=\"!this.zaakTypeLinkRequest.zaakTypeUrl\"\n (click)=\"submit()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n </cds-modal>\n</valtimo-render-in-body>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.valtimo-zaak-type-link__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.valtimo-zaak-type-link__link-button{align-self:flex-end}.valtimo-zaak-type-link__card-title{font-size:18px}.valtimo-zaak-type-link__card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:20px}.valtimo-zaak-type-link__card-controls{display:flex;align-items:center;gap:16px}.valtimo-zaak-type-link__card-body{display:flex;flex-direction:column;gap:16px}.valtimo-zaak-type-link__card-body>div{display:grid;grid-template-columns:repeat(3,1fr);font-size:16px}.valtimo-zaak-type-link-modal__content{display:flex;flex-direction:column;gap: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: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5$1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TilesModule }, { kind: "component", type: i5$1.Tile, selector: "cds-tile, ibm-tile", inputs: ["theme"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i5$1.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i5$1.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i5$1.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i5$1.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i5$1.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i5$1.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: SelectModule$1 }, { kind: "component", type: i5$1.Select, selector: "cds-select, ibm-select", inputs: ["value", "display", "label", "helperText", "invalidText", "warn", "warnText", "id", "size", "disabled", "skeleton", "invalid", "readonly", "theme", "ariaLabel", "fluid"], outputs: ["valueChange"] }, { kind: "directive", type: i5$1.Option, selector: "option" }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i5$1.TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "directive", type: i5$1.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: ToggleModule }, { kind: "component", type: i5$1.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "component", type: RenderInBodyComponent, selector: "valtimo-render-in-body" }] }); }
|
|
4764
4217
|
}
|
|
4765
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4218
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, decorators: [{
|
|
4766
4219
|
type: Component,
|
|
4767
|
-
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4220
|
+
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4221
|
+
CommonModule,
|
|
4222
|
+
FormsModule,
|
|
4223
|
+
NotificationModule,
|
|
4224
|
+
TranslateModule,
|
|
4225
|
+
ButtonModule,
|
|
4226
|
+
IconModule,
|
|
4227
|
+
TilesModule,
|
|
4228
|
+
LayerModule,
|
|
4229
|
+
SpinnerModule,
|
|
4230
|
+
ModalModule,
|
|
4231
|
+
SelectModule$1,
|
|
4232
|
+
InputModule,
|
|
4233
|
+
ToggleModule,
|
|
4234
|
+
RenderInBodyComponent,
|
|
4235
|
+
], 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 <h2 class=\"valtimo-zaak-type-link__title\">{{ 'openZaak.links' | translate }}</h2>\n\n @if (loading$ | async) {\n <valtimo-spinner></valtimo-spinner>\n } @else {\n @if (zaakTypeLink$ | async; as zaakTypeLink) {\n <section class=\"valtimo-zaak-type-link__card-header\">\n <span class=\"valtimo-zaak-type-link__card-title\">\n {{ this.selectedZaakType?.omschrijving || '-' }}\n </span>\n\n <div class=\"valtimo-zaak-type-link__card-controls\">\n <button cdsButton=\"tertiary\" (click)=\"openModal(zaakTypeLink)\">\n {{ 'interface.edit' | translate }}\n\n <svg cdsIcon=\"edit\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button cdsButton=\"danger\" (click)=\"removeZaakTypeLink()\">\n {{ 'interface.delete' | translate }}\n\n <svg cdsIcon=\"trash-can\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n </section>\n\n <section class=\"valtimo-zaak-type-link__card-body\">\n <div>\n <strong>{{ 'openZaak.autoCreateForCase' | translate }}</strong>\n\n {{\n zaakTypeLink?.createWithDossier\n ? ('viewTypeConverter.Yes' | translate)\n : ('viewTypeConverter.No' | translate)\n }}\n </div>\n\n <div>\n <strong>{{ 'openZaak.zakenApiPlugin' | translate }}</strong>\n\n {{ this.selectedPluginConfiguration?.title || '-' }}\n </div>\n\n <div>\n <strong>{{ 'openZaak.rsin' | translate }}</strong>\n\n {{ zaakTypeLink?.rsin || '-' }}\n </div>\n </section>\n } @else {\n <button\n cdsButton=\"primary\"\n class=\"valtimo-zaak-type-link__link-button\"\n (click)=\"openModal(null)\"\n >\n {{ 'openZaak.linkZaakType' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n }\n }\n</cds-tile>\n\n<valtimo-render-in-body>\n <cds-modal showFooter=\"true\" valtimoCdsModal [open]=\"modalOpen$ | async\" (close)=\"closeModal()\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"closeModal()\">\n <h3 cdsModalHeaderHeading>Zaak types</h3>\n\n <span> Connect Zaak type to Dossier</span>\n </cds-modal-header>\n\n <section cdsModalContent class=\"valtimo-zaak-type-link-modal__content\">\n <cds-select\n [label]=\"'openZaak.selectZaakTypeForCase' | translate\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zaakTypeUrl\"\n >\n <option value=\"default\">{{ 'openZaak.selectZaakType' | translate }}</option>\n\n @for (zaakType of zaakTypes; track zaakType.url) {\n <option [value]=\"zaakType.url\">\n {{ zaakType.omschrijving || '-' }}\n </option>\n }\n </cds-select>\n\n <cds-select\n [label]=\"'openZaak.selectZakenApiPluginForCase' | translate\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zakenApiPluginConfigurationId\"\n >\n <option value=\"default\">{{ 'openZaak.selectZakenApiPlugin' | translate }}</option>\n\n @for (pluginConfiguration of pluginConfigurations; track pluginConfiguration.id) {\n <option [value]=\"pluginConfiguration.id\">\n {{ pluginConfiguration?.title || '-' }}\n </option>\n }\n </cds-select>\n\n <cds-text-label>\n {{ 'openZaak.rsin' | translate }}\n\n <input\n cdsText\n cdsLayer=\"1\"\n placeholder=\"RSIN\"\n type=\"text\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.rsin\"\n />\n </cds-text-label>\n\n <cds-toggle\n [label]=\"'openZaak.autoCreateForCase' | translate\"\n [checked]=\"this.zaakTypeLinkRequest.createWithDossier\"\n (checkedChange)=\"onCheckedChange($event)\"\n >\n </cds-toggle>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"closeModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [disabled]=\"!this.zaakTypeLinkRequest.zaakTypeUrl\"\n (click)=\"submit()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n </cds-modal>\n</valtimo-render-in-body>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.valtimo-zaak-type-link__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.valtimo-zaak-type-link__link-button{align-self:flex-end}.valtimo-zaak-type-link__card-title{font-size:18px}.valtimo-zaak-type-link__card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:20px}.valtimo-zaak-type-link__card-controls{display:flex;align-items:center;gap:16px}.valtimo-zaak-type-link__card-body{display:flex;flex-direction:column;gap:16px}.valtimo-zaak-type-link__card-body>div{display:grid;grid-template-columns:repeat(3,1fr);font-size:16px}.valtimo-zaak-type-link-modal__content{display:flex;flex-direction:column;gap: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"] }]
|
|
4236
|
+
}], ctorParameters: () => [{ type: i2.GlobalNotificationService }, { type: i5$1.IconService }, { type: i5$3.OpenZaakService }, { type: i1$2.ActivatedRoute }, { type: i5.TranslateService }, { type: ZakenApiZaaktypeLinkService }] });
|
|
4237
|
+
|
|
4238
|
+
/*
|
|
4239
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4240
|
+
*
|
|
4241
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4242
|
+
* you may not use this file except in compliance with the License.
|
|
4243
|
+
* You may obtain a copy of the License at
|
|
4244
|
+
*
|
|
4245
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4246
|
+
*
|
|
4247
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4248
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4249
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4250
|
+
* See the License for the specific language governing permissions and
|
|
4251
|
+
* limitations under the License.
|
|
4252
|
+
*/
|
|
4772
4253
|
|
|
4773
4254
|
/*
|
|
4774
|
-
* Copyright 2015-
|
|
4255
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4775
4256
|
*
|
|
4776
4257
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4777
4258
|
* you may not use this file except in compliance with the License.
|
|
@@ -4787,7 +4268,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4787
4268
|
*/
|
|
4788
4269
|
|
|
4789
4270
|
/*
|
|
4790
|
-
* Copyright 2015-
|
|
4271
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4791
4272
|
*
|
|
4792
4273
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4793
4274
|
* you may not use this file except in compliance with the License.
|
|
@@ -4803,7 +4284,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4803
4284
|
*/
|
|
4804
4285
|
|
|
4805
4286
|
/*
|
|
4806
|
-
* Copyright 2015-
|
|
4287
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4807
4288
|
*
|
|
4808
4289
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4809
4290
|
* you may not use this file except in compliance with the License.
|
|
@@ -4819,7 +4300,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4819
4300
|
*/
|
|
4820
4301
|
|
|
4821
4302
|
/*
|
|
4822
|
-
* Copyright 2015-
|
|
4303
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4823
4304
|
*
|
|
4824
4305
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4825
4306
|
* you may not use this file except in compliance with the License.
|
|
@@ -4835,7 +4316,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4835
4316
|
*/
|
|
4836
4317
|
|
|
4837
4318
|
/*
|
|
4838
|
-
* Copyright 2015-
|
|
4319
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4839
4320
|
*
|
|
4840
4321
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4841
4322
|
* you may not use this file except in compliance with the License.
|
|
@@ -4849,9 +4330,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4849
4330
|
* See the License for the specific language governing permissions and
|
|
4850
4331
|
* limitations under the License.
|
|
4851
4332
|
*/
|
|
4852
|
-
class
|
|
4333
|
+
class CaseManagementZgwGeneralComponent {
|
|
4334
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwGeneralComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4335
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CaseManagementZgwGeneralComponent, isStandalone: true, 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<div class=\"muuri-container\">\n <div muuri [columnMinWidth]=\"450\">\n <valtimo-muuri-item>\n <valtimo-document-objecten-api-sync></valtimo-document-objecten-api-sync>\n </valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-documenten-api-version></valtimo-documenten-api-version\n ></valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-zaken-api-zaaktype-link></valtimo-zaken-api-zaaktype-link>\n </valtimo-muuri-item>\n </div>\n</div>\n", styles: [".muuri-container{margin-bottom:-16px;padding:16px;background-color: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: "ngmodule", type: CommonModule }, { kind: "component", type: ZakenApiZaaktypeLinkComponent, selector: "valtimo-zaken-api-zaaktype-link" }, { kind: "component", type: DocumentObjectenApiSyncComponent, selector: "valtimo-document-objecten-api-sync" }, { kind: "ngmodule", type: MuuriDirectiveModule }, { kind: "directive", type: i3.MuuriDirective, selector: "[muuri]", inputs: ["columnMinWidth"] }, { kind: "component", type: i3.MuuriItemComponent, selector: "valtimo-muuri-item" }, { kind: "component", type: DocumentenApiVersionComponent, selector: "valtimo-documenten-api-version" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4336
|
+
}
|
|
4337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwGeneralComponent, decorators: [{
|
|
4338
|
+
type: Component,
|
|
4339
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
4340
|
+
CommonModule,
|
|
4341
|
+
ZakenApiZaaktypeLinkComponent,
|
|
4342
|
+
DocumentObjectenApiSyncComponent,
|
|
4343
|
+
MuuriDirectiveModule,
|
|
4344
|
+
DocumentenApiVersionComponent,
|
|
4345
|
+
], 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=\"muuri-container\">\n <div muuri [columnMinWidth]=\"450\">\n <valtimo-muuri-item>\n <valtimo-document-objecten-api-sync></valtimo-document-objecten-api-sync>\n </valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-documenten-api-version></valtimo-documenten-api-version\n ></valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-zaken-api-zaaktype-link></valtimo-zaken-api-zaaktype-link>\n </valtimo-muuri-item>\n </div>\n</div>\n", styles: [".muuri-container{margin-bottom:-16px;padding:16px;background-color: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"] }]
|
|
4346
|
+
}] });
|
|
4347
|
+
|
|
4348
|
+
/*
|
|
4349
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4350
|
+
*
|
|
4351
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4352
|
+
* you may not use this file except in compliance with the License.
|
|
4353
|
+
* You may obtain a copy of the License at
|
|
4354
|
+
*
|
|
4355
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4356
|
+
*
|
|
4357
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4358
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4359
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4360
|
+
* See the License for the specific language governing permissions and
|
|
4361
|
+
* limitations under the License.
|
|
4362
|
+
*/
|
|
4363
|
+
class CaseManagementZgwService {
|
|
4853
4364
|
constructor() {
|
|
4854
|
-
this._DEFAULT_TAB = ZgwTabEnum.
|
|
4365
|
+
this._DEFAULT_TAB = ZgwTabEnum.GENERAL;
|
|
4855
4366
|
this._currentTab$ = new BehaviorSubject(this._DEFAULT_TAB);
|
|
4856
4367
|
}
|
|
4857
4368
|
get currentTab$() {
|
|
@@ -4863,10 +4374,10 @@ class DossierManagementZgwService {
|
|
|
4863
4374
|
resetToDefaultTab() {
|
|
4864
4375
|
this._currentTab$.next(this._DEFAULT_TAB);
|
|
4865
4376
|
}
|
|
4866
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4867
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4377
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4378
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, providedIn: 'root' }); }
|
|
4868
4379
|
}
|
|
4869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4380
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, decorators: [{
|
|
4870
4381
|
type: Injectable,
|
|
4871
4382
|
args: [{
|
|
4872
4383
|
providedIn: 'root',
|
|
@@ -4874,7 +4385,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4874
4385
|
}] });
|
|
4875
4386
|
|
|
4876
4387
|
/*
|
|
4877
|
-
* Copyright 2015-
|
|
4388
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4878
4389
|
*
|
|
4879
4390
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4880
4391
|
* you may not use this file except in compliance with the License.
|
|
@@ -4890,7 +4401,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4890
4401
|
*/
|
|
4891
4402
|
|
|
4892
4403
|
/*
|
|
4893
|
-
* Copyright 2015-
|
|
4404
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4894
4405
|
*
|
|
4895
4406
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4896
4407
|
* you may not use this file except in compliance with the License.
|
|
@@ -4904,19 +4415,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4904
4415
|
* See the License for the specific language governing permissions and
|
|
4905
4416
|
* limitations under the License.
|
|
4906
4417
|
*/
|
|
4907
|
-
class
|
|
4908
|
-
constructor(
|
|
4909
|
-
this.
|
|
4418
|
+
class CaseManagementZgwComponent {
|
|
4419
|
+
constructor(caseManagementZgwService, cdr, documentenApiVersionService, draftVersionService, route) {
|
|
4420
|
+
this.caseManagementZgwService = caseManagementZgwService;
|
|
4910
4421
|
this.cdr = cdr;
|
|
4911
4422
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
4423
|
+
this.draftVersionService = draftVersionService;
|
|
4912
4424
|
this.route = route;
|
|
4913
4425
|
this._viewInitialized$ = new BehaviorSubject(false);
|
|
4914
|
-
this.
|
|
4426
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
4427
|
+
this._supportedDocumentenApiFeatures$ = this._params$.pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey), switchMap((caseDefinitionKey) => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey ?? '')));
|
|
4428
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
4429
|
+
? of(false)
|
|
4430
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
4431
|
+
this.currentTab$ = this.caseManagementZgwService.currentTab$;
|
|
4915
4432
|
this.zgwTabs$ = combineLatest([
|
|
4916
4433
|
this._viewInitialized$,
|
|
4917
|
-
this.
|
|
4434
|
+
this.currentTab$,
|
|
4918
4435
|
this._supportedDocumentenApiFeatures$,
|
|
4919
4436
|
]).pipe(filter(([viewInitialized]) => viewInitialized), map(([_, currentTab, supportedDocumentenApiFeatures]) => [
|
|
4437
|
+
{
|
|
4438
|
+
class: 'no-padding-left-right no-padding-top-bottom',
|
|
4439
|
+
headingTranslationKey: 'caseManagement.tabs.general',
|
|
4440
|
+
tab: ZgwTabEnum.GENERAL,
|
|
4441
|
+
component: CaseManagementZgwGeneralComponent,
|
|
4442
|
+
},
|
|
4920
4443
|
{
|
|
4921
4444
|
class: 'no-padding-left-right no-padding-top-bottom',
|
|
4922
4445
|
headingTranslationKey: 'zgw.tabs.documentColumns',
|
|
@@ -4941,33 +4464,41 @@ class DossierManagementZgwComponent {
|
|
|
4941
4464
|
: []),
|
|
4942
4465
|
].map(zgwTab => ({ ...zgwTab, active: currentTab === zgwTab.tab }))), tap(zgwTabs => {
|
|
4943
4466
|
const activeTab = zgwTabs.length > 1 ? zgwTabs.find(tab => tab.active) : zgwTabs[0];
|
|
4467
|
+
if (!activeTab)
|
|
4468
|
+
return;
|
|
4944
4469
|
this._zgwTabContent.clear();
|
|
4945
4470
|
this._zgwTabContent.createComponent(activeTab.component);
|
|
4946
4471
|
this.cdr.detectChanges();
|
|
4947
4472
|
}));
|
|
4473
|
+
this.ZgwTabEnum = ZgwTabEnum;
|
|
4474
|
+
this.DRAFT_WARNING_MESSAGE = {
|
|
4475
|
+
[ZgwTabEnum.DOCUMENTEN_API_COLUMNS]: 'zgw.tabs.documentColumns',
|
|
4476
|
+
[ZgwTabEnum.DOCUMENTEN_API_UPLOAD_FIELDS]: 'zgw.tabs.documentUploadFields',
|
|
4477
|
+
[ZgwTabEnum.DOCUMENTEN_API_TAGS]: 'zgw.tabs.documentUploadFields',
|
|
4478
|
+
};
|
|
4948
4479
|
}
|
|
4949
4480
|
ngAfterViewInit() {
|
|
4950
4481
|
this._viewInitialized$.next(true);
|
|
4951
4482
|
}
|
|
4952
4483
|
ngOnDestroy() {
|
|
4953
|
-
this.
|
|
4484
|
+
this.caseManagementZgwService.resetToDefaultTab();
|
|
4954
4485
|
}
|
|
4955
4486
|
displayTab(tab) {
|
|
4956
|
-
this.
|
|
4487
|
+
this.caseManagementZgwService.currentTab = tab;
|
|
4957
4488
|
}
|
|
4958
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4959
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
4489
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwComponent, deps: [{ token: CaseManagementZgwService }, { token: i0.ChangeDetectorRef }, { token: DocumentenApiVersionService }, { token: i2.DraftVersionService }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4490
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: CaseManagementZgwComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "_zgwTabContent", first: true, predicate: ["zgwTabContent"], 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@if (currentTab$ | async; as currentTab) {\n <valtimo-case-management-draft-warning\n *ngIf=\"(isDraftVersion$ | async) === true && currentTab !== ZgwTabEnum.GENERAL\"\n [name]=\"DRAFT_WARNING_MESSAGE[currentTab] | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n}\n\n<cds-tabs class=\"case-management-tabs\" type=\"contained\">\n @for (zgwTab of (zgwTabs$ | async) || []; track zgwTab.tab) {\n <cds-tab\n [class]=\"zgwTab.class\"\n [active]=\"zgwTab.active\"\n [heading]=\"zgwTab.headingTranslationKey | translate\"\n (selected)=\"displayTab(zgwTab.tab)\"\n ></cds-tab>\n }\n</cds-tabs>\n\n<ng-template #zgwTabContent></ng-template>\n", styles: [".case-management-tabs ::ng-deep .cds--tab-content{margin-top: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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.LowerCasePipe, name: "lowercase" }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: i5$1.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i5$1.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4960
4491
|
}
|
|
4961
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4492
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwComponent, decorators: [{
|
|
4962
4493
|
type: Component,
|
|
4963
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TabsModule, TranslateModule], template: "<!--\n ~ Copyright 2015-
|
|
4964
|
-
}], ctorParameters: () => [{ type:
|
|
4494
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TabsModule, TranslateModule, CaseManagementDraftWarningComponent], 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 !== ZgwTabEnum.GENERAL\"\n [name]=\"DRAFT_WARNING_MESSAGE[currentTab] | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n}\n\n<cds-tabs class=\"case-management-tabs\" type=\"contained\">\n @for (zgwTab of (zgwTabs$ | async) || []; track zgwTab.tab) {\n <cds-tab\n [class]=\"zgwTab.class\"\n [active]=\"zgwTab.active\"\n [heading]=\"zgwTab.headingTranslationKey | translate\"\n (selected)=\"displayTab(zgwTab.tab)\"\n ></cds-tab>\n }\n</cds-tabs>\n\n<ng-template #zgwTabContent></ng-template>\n", styles: [".case-management-tabs ::ng-deep .cds--tab-content{margin-top: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"] }]
|
|
4495
|
+
}], ctorParameters: () => [{ type: CaseManagementZgwService }, { type: i0.ChangeDetectorRef }, { type: DocumentenApiVersionService }, { type: i2.DraftVersionService }, { type: i1$2.ActivatedRoute }], propDecorators: { _zgwTabContent: [{
|
|
4965
4496
|
type: ViewChild,
|
|
4966
4497
|
args: ['zgwTabContent', { read: ViewContainerRef }]
|
|
4967
4498
|
}] } });
|
|
4968
4499
|
|
|
4969
4500
|
/*
|
|
4970
|
-
* Copyright 2015-
|
|
4501
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4971
4502
|
*
|
|
4972
4503
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4973
4504
|
* you may not use this file except in compliance with the License.
|
|
@@ -4983,7 +4514,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4983
4514
|
*/
|
|
4984
4515
|
|
|
4985
4516
|
/*
|
|
4986
|
-
* Copyright 2015-
|
|
4517
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4987
4518
|
*
|
|
4988
4519
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4989
4520
|
* you may not use this file except in compliance with the License.
|
|
@@ -4998,8 +4529,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4998
4529
|
* limitations under the License.
|
|
4999
4530
|
*/
|
|
5000
4531
|
class ZgwModule {
|
|
5001
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5002
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4532
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4533
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, declarations: [DocumentenApiUploaderComponent], imports: [CommonModule,
|
|
5003
4534
|
FormioModule,
|
|
5004
4535
|
DropzoneModule,
|
|
5005
4536
|
TranslateModule,
|
|
@@ -5007,33 +4538,28 @@ class ZgwModule {
|
|
|
5007
4538
|
FileSizeModule,
|
|
5008
4539
|
ResourceModule,
|
|
5009
4540
|
RouterModule,
|
|
5010
|
-
DocumentenApiMetadataModalComponent,
|
|
5011
|
-
|
|
5012
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZgwModule, providers: [
|
|
4541
|
+
DocumentenApiMetadataModalComponent], exports: [DocumentenApiUploaderComponent] }); }
|
|
4542
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, providers: [
|
|
5013
4543
|
{
|
|
5014
4544
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5015
4545
|
useValue: {
|
|
5016
|
-
translationKey: '
|
|
5017
|
-
component:
|
|
4546
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4547
|
+
component: CaseManagementZgwComponent,
|
|
4548
|
+
tabRoute: 'zgw',
|
|
5018
4549
|
},
|
|
5019
4550
|
multi: true,
|
|
5020
4551
|
},
|
|
5021
4552
|
{
|
|
5022
4553
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5023
|
-
useValue:
|
|
4554
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5024
4555
|
},
|
|
5025
4556
|
{
|
|
5026
4557
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5027
|
-
useValue:
|
|
4558
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5028
4559
|
},
|
|
5029
4560
|
{
|
|
5030
|
-
provide:
|
|
5031
|
-
useValue: [
|
|
5032
|
-
DossierManagementLinkProcessComponent,
|
|
5033
|
-
DocumentenApiVersionComponent,
|
|
5034
|
-
DocumentObjectenApiSyncComponent,
|
|
5035
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5036
|
-
],
|
|
4561
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4562
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5037
4563
|
},
|
|
5038
4564
|
], imports: [CommonModule,
|
|
5039
4565
|
FormioModule,
|
|
@@ -5043,10 +4569,9 @@ class ZgwModule {
|
|
|
5043
4569
|
FileSizeModule,
|
|
5044
4570
|
ResourceModule,
|
|
5045
4571
|
RouterModule,
|
|
5046
|
-
DocumentenApiMetadataModalComponent
|
|
5047
|
-
CustomerModule] }); }
|
|
4572
|
+
DocumentenApiMetadataModalComponent] }); }
|
|
5048
4573
|
}
|
|
5049
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4574
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, decorators: [{
|
|
5050
4575
|
type: NgModule,
|
|
5051
4576
|
args: [{
|
|
5052
4577
|
imports: [
|
|
@@ -5059,7 +4584,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5059
4584
|
ResourceModule,
|
|
5060
4585
|
RouterModule,
|
|
5061
4586
|
DocumentenApiMetadataModalComponent,
|
|
5062
|
-
CustomerModule,
|
|
5063
4587
|
],
|
|
5064
4588
|
declarations: [DocumentenApiUploaderComponent],
|
|
5065
4589
|
exports: [DocumentenApiUploaderComponent],
|
|
@@ -5067,34 +4591,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5067
4591
|
{
|
|
5068
4592
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5069
4593
|
useValue: {
|
|
5070
|
-
translationKey: '
|
|
5071
|
-
component:
|
|
4594
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4595
|
+
component: CaseManagementZgwComponent,
|
|
4596
|
+
tabRoute: 'zgw',
|
|
5072
4597
|
},
|
|
5073
4598
|
multi: true,
|
|
5074
4599
|
},
|
|
5075
4600
|
{
|
|
5076
4601
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5077
|
-
useValue:
|
|
4602
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5078
4603
|
},
|
|
5079
4604
|
{
|
|
5080
4605
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5081
|
-
useValue:
|
|
4606
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5082
4607
|
},
|
|
5083
4608
|
{
|
|
5084
|
-
provide:
|
|
5085
|
-
useValue: [
|
|
5086
|
-
DossierManagementLinkProcessComponent,
|
|
5087
|
-
DocumentenApiVersionComponent,
|
|
5088
|
-
DocumentObjectenApiSyncComponent,
|
|
5089
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5090
|
-
],
|
|
4609
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4610
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5091
4611
|
},
|
|
5092
4612
|
],
|
|
5093
4613
|
}]
|
|
5094
4614
|
}] });
|
|
5095
4615
|
|
|
5096
4616
|
/*
|
|
5097
|
-
* Copyright 2015-
|
|
4617
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5098
4618
|
*
|
|
5099
4619
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5100
4620
|
* you may not use this file except in compliance with the License.
|
|
@@ -5116,5 +4636,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5116
4636
|
* Generated bundle index. Do not edit.
|
|
5117
4637
|
*/
|
|
5118
4638
|
|
|
5119
|
-
export { COLUMN_VIEW_TYPES, CONFIDENTIALITY_LEVELS,
|
|
4639
|
+
export { COLUMN_VIEW_TYPES, CONFIDENTIALITY_LEVELS, CaseDetailTabDocumentenApiDocumentsComponent, CaseDetailTabObjectTypeComponent, CaseDetailTabZaakobjectenComponent, CaseManagementLinkProcessComponent, CaseManagementZgwComponent, CaseManagementZgwService, DOCUMENTEN_COLUMN_KEYS, DocumentObjectenApiSyncComponent, DocumentObjectenApiSyncService, DocumentenApiColumnModalComponent, DocumentenApiColumnService, DocumentenApiColumnsComponent, DocumentenApiDocumentService, DocumentenApiFilterComponent, DocumentenApiLinkProcessService, DocumentenApiMetadataModalComponent, DocumentenApiTagModalComponent, DocumentenApiTagService, DocumentenApiTagsComponent, DocumentenApiUploadFieldModalComponent, DocumentenApiUploadFieldsComponent, DocumentenApiUploaderComponent, DocumentenApiVersionComponent, DocumentenApiVersionService, LANGUAGE_ITEMS, STATUS_ITEMS, ZaakobjectenService, ZakenApiZaaktypeLinkComponent, ZakenApiZaaktypeLinkService, ZgwModule, ZgwTabEnum, customDocumentApiUploaderType, documentenApiUploaderEditForm, registerDocumentenApiFormioUploadComponent };
|
|
5120
4640
|
//# sourceMappingURL=valtimo-zgw.mjs.map
|