@valtimo/zgw 12.14.1 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/valtimo-zgw.mjs +696 -1166
- 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/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, createCustomFormioComponent, registerCustomFormioComponentWithClass, 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({
|
|
@@ -1349,11 +1380,8 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1349
1380
|
}
|
|
1350
1381
|
openDocumentDefinitionSubscription() {
|
|
1351
1382
|
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);
|
|
1383
|
+
.pipe(map(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter(caseDefinitionKey => !!caseDefinitionKey))
|
|
1384
|
+
.subscribe(caseDefinitionKey => this.valtimoModalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
1357
1385
|
}
|
|
1358
1386
|
areAllFieldsHidden() {
|
|
1359
1387
|
return (this.hideFields.includes('aanvullendeDatum') &&
|
|
@@ -1368,10 +1396,10 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1368
1396
|
this.hideFields.includes('status') &&
|
|
1369
1397
|
this.hideFields.includes('trefwoorden'));
|
|
1370
1398
|
}
|
|
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"] }] }); }
|
|
1399
|
+
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 }); }
|
|
1400
|
+
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
1401
|
}
|
|
1374
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1402
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiMetadataModalComponent, decorators: [{
|
|
1375
1403
|
type: Component,
|
|
1376
1404
|
args: [{ selector: 'valtimo-documenten-api-metadata-modal', standalone: true, imports: [
|
|
1377
1405
|
ButtonModule,
|
|
@@ -1392,8 +1420,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1392
1420
|
TranslateModule,
|
|
1393
1421
|
VModalModule,
|
|
1394
1422
|
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:
|
|
1423
|
+
], 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"] }]
|
|
1424
|
+
}], 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
1425
|
type: ViewChild,
|
|
1398
1426
|
args: ['metadataModal']
|
|
1399
1427
|
}], disabled$: [{
|
|
@@ -1435,7 +1463,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1435
1463
|
}] } });
|
|
1436
1464
|
|
|
1437
1465
|
/*
|
|
1438
|
-
* Copyright 2015-
|
|
1466
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1439
1467
|
*
|
|
1440
1468
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1441
1469
|
* you may not use this file except in compliance with the License.
|
|
@@ -1449,25 +1477,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1449
1477
|
* See the License for the specific language governing permissions and
|
|
1450
1478
|
* limitations under the License.
|
|
1451
1479
|
*/
|
|
1452
|
-
class
|
|
1453
|
-
constructor(
|
|
1454
|
-
this.route = route;
|
|
1455
|
-
this.router = router;
|
|
1456
|
-
this.uploadProviderService = uploadProviderService;
|
|
1457
|
-
this.downloadService = downloadService;
|
|
1458
|
-
this.translateService = translateService;
|
|
1480
|
+
class CaseDetailTabDocumentenApiDocumentsComponent {
|
|
1481
|
+
constructor(configService, documentenApiColumnService, documentenApiDocumentService, documentenApiVersionService, documentService, downloadService, iconService, permissionService, route, router, translateService, uploadProviderService, userProviderService) {
|
|
1459
1482
|
this.configService = configService;
|
|
1460
|
-
this.userProviderService = userProviderService;
|
|
1461
|
-
this.iconService = iconService;
|
|
1462
|
-
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1463
1483
|
this.documentenApiColumnService = documentenApiColumnService;
|
|
1484
|
+
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1464
1485
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1486
|
+
this.documentService = documentService;
|
|
1487
|
+
this.downloadService = downloadService;
|
|
1488
|
+
this.iconService = iconService;
|
|
1465
1489
|
this.permissionService = permissionService;
|
|
1466
|
-
this.
|
|
1490
|
+
this.route = route;
|
|
1491
|
+
this.router = router;
|
|
1492
|
+
this.translateService = translateService;
|
|
1493
|
+
this.uploadProviderService = uploadProviderService;
|
|
1494
|
+
this.userProviderService = userProviderService;
|
|
1495
|
+
this._caseDefinitionKey$ = this.route.params.pipe(map$1(params => params?.caseDefinitionKey ?? ''), filter$1((caseDefinitionKey) => !!caseDefinitionKey));
|
|
1496
|
+
this._caseSettings$ = this._caseDefinitionKey$.pipe(switchMap$1((caseDefinitionKey) => this.documentService.getCaseSettings(caseDefinitionKey)));
|
|
1467
1497
|
this.supportedDocumentenApiFeatures$ = new BehaviorSubject(null);
|
|
1468
|
-
this._supportedDocumentenApiFeatures$ = this.
|
|
1469
|
-
this.fields$ = this.
|
|
1470
|
-
this.documentenApiColumnService.getConfiguredColumns(
|
|
1498
|
+
this._supportedDocumentenApiFeatures$ = this._caseDefinitionKey$.pipe(switchMap$1(caseDefinitionName => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionName)), tap$1(supportedDocumentenApiFeatures => this.supportedDocumentenApiFeatures$.next(supportedDocumentenApiFeatures)));
|
|
1499
|
+
this.fields$ = this._caseDefinitionKey$.pipe(tap$1(() => this.fieldsLoading$.next(true)), switchMap$1(caseDefinitionKey => combineLatest([
|
|
1500
|
+
this.documentenApiColumnService.getConfiguredColumns(caseDefinitionKey),
|
|
1471
1501
|
this._supportedDocumentenApiFeatures$,
|
|
1472
1502
|
this._sort$,
|
|
1473
1503
|
])), map$1(([columns, supportedDocumentenApiFeatures, sort]) => {
|
|
@@ -1509,7 +1539,6 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1509
1539
|
type: 'danger',
|
|
1510
1540
|
},
|
|
1511
1541
|
];
|
|
1512
|
-
this.documentDefinitionName$ = this.route.params.pipe(map$1(params => params?.documentDefinitionName), filter$1(documentDefinitionName => !!documentDefinitionName));
|
|
1513
1542
|
this.documentId$ = this.route.params.pipe(map$1(params => params?.documentId), filter$1(documentId => !!documentId));
|
|
1514
1543
|
this.uploadProcessLinkedSet = false;
|
|
1515
1544
|
this.isEditMode$ = new BehaviorSubject(false);
|
|
@@ -1651,14 +1680,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1651
1680
|
return 'Upload';
|
|
1652
1681
|
}
|
|
1653
1682
|
else if (this.isAdmin) {
|
|
1654
|
-
return '
|
|
1683
|
+
return 'case.documenten.noProcessLinked.adminRole';
|
|
1655
1684
|
}
|
|
1656
|
-
return '
|
|
1685
|
+
return 'case.documenten.noProcessLinked.regularUser';
|
|
1657
1686
|
}
|
|
1658
1687
|
isUserAdmin() {
|
|
1659
1688
|
this.userProviderService
|
|
1660
1689
|
.getUserSubject()
|
|
1661
|
-
.pipe(take
|
|
1690
|
+
.pipe(take(1))
|
|
1662
1691
|
.subscribe(userIdentity => {
|
|
1663
1692
|
this.isAdmin = userIdentity.roles.includes('ROLE_ADMIN');
|
|
1664
1693
|
}, () => {
|
|
@@ -1668,7 +1697,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1668
1697
|
metadataSet(metadata) {
|
|
1669
1698
|
this.uploading$.next(true);
|
|
1670
1699
|
combineLatest([this.fileToBeUploaded$, this.documentId$])
|
|
1671
|
-
.pipe(take
|
|
1700
|
+
.pipe(take(1))
|
|
1672
1701
|
.pipe(tap$1(([file, documentId]) => {
|
|
1673
1702
|
if (!file)
|
|
1674
1703
|
return;
|
|
@@ -1711,8 +1740,10 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1711
1740
|
this.resetFileInput();
|
|
1712
1741
|
}
|
|
1713
1742
|
onNavigateToCaseAdminClick() {
|
|
1714
|
-
this.
|
|
1715
|
-
this.router.navigate([
|
|
1743
|
+
this._caseSettings$.pipe(take(1)).subscribe((caseSettings) => {
|
|
1744
|
+
this.router.navigate([
|
|
1745
|
+
`/case-management/case/${caseSettings.caseDefinitionKey}/version/${caseSettings.caseDefinitionVersionTag}/zgw`,
|
|
1746
|
+
]);
|
|
1716
1747
|
});
|
|
1717
1748
|
}
|
|
1718
1749
|
onRowClick(event) {
|
|
@@ -1761,14 +1792,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1761
1792
|
}
|
|
1762
1793
|
openQueryParamsSubscription() {
|
|
1763
1794
|
this._subscriptions.add(combineLatest([
|
|
1764
|
-
this.
|
|
1795
|
+
this._caseDefinitionKey$,
|
|
1765
1796
|
this.documentId$,
|
|
1766
1797
|
this.filter$,
|
|
1767
1798
|
this._sort$,
|
|
1768
1799
|
this.pagination$,
|
|
1769
1800
|
]).subscribe(([definitionName, documentId, filter, sort, pagination]) => {
|
|
1770
1801
|
const { size, page } = pagination;
|
|
1771
|
-
this.router.navigate([`/
|
|
1802
|
+
this.router.navigate([`/cases/${definitionName}/document/${documentId}/documents`], {
|
|
1772
1803
|
queryParams: { ...filter, ...sort, size, page: page - 1 },
|
|
1773
1804
|
});
|
|
1774
1805
|
}));
|
|
@@ -1777,8 +1808,8 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1777
1808
|
this.fileInput.nativeElement.value = '';
|
|
1778
1809
|
}
|
|
1779
1810
|
setUploadProcessLinked() {
|
|
1780
|
-
this.
|
|
1781
|
-
.pipe(switchMap$1(
|
|
1811
|
+
this._caseDefinitionKey$
|
|
1812
|
+
.pipe(switchMap$1(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), take(1), tap$1(() => {
|
|
1782
1813
|
this.uploadProcessLinkedSet = true;
|
|
1783
1814
|
}))
|
|
1784
1815
|
.subscribe((linked) => {
|
|
@@ -1787,7 +1818,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1787
1818
|
}
|
|
1788
1819
|
setInitialParams() {
|
|
1789
1820
|
this.route.queryParamMap
|
|
1790
|
-
.pipe(take
|
|
1821
|
+
.pipe(take(1), map$1(queryParams => {
|
|
1791
1822
|
const { sort, size, page, ...filter } = queryParams['params'];
|
|
1792
1823
|
return { sort, filter, size, page };
|
|
1793
1824
|
}))
|
|
@@ -1829,12 +1860,12 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1829
1860
|
return this.permissionService.requestPermission(permissionRequest, context);
|
|
1830
1861
|
}));
|
|
1831
1862
|
}
|
|
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"] }] }); }
|
|
1863
|
+
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 }); }
|
|
1864
|
+
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
1865
|
}
|
|
1835
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1866
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabDocumentenApiDocumentsComponent, decorators: [{
|
|
1836
1867
|
type: Component,
|
|
1837
|
-
args: [{ selector: 'valtimo-
|
|
1868
|
+
args: [{ selector: 'valtimo-case-detail-tab-documenten-api-documents', standalone: true, imports: [
|
|
1838
1869
|
CommonModule,
|
|
1839
1870
|
CarbonListModule,
|
|
1840
1871
|
DocumentenApiMetadataModalComponent,
|
|
@@ -1844,8 +1875,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1844
1875
|
DocumentenApiFilterComponent,
|
|
1845
1876
|
DialogModule,
|
|
1846
1877
|
ConfirmationModalModule,
|
|
1847
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
1848
|
-
}], ctorParameters: () => [{ type:
|
|
1878
|
+
], 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"] }]
|
|
1879
|
+
}], 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
1880
|
type: ViewChild,
|
|
1850
1881
|
args: ['fileInput']
|
|
1851
1882
|
}], translationTemplate: [{
|
|
@@ -1854,7 +1885,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1854
1885
|
}] } });
|
|
1855
1886
|
|
|
1856
1887
|
/*
|
|
1857
|
-
* Copyright 2015-
|
|
1888
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1858
1889
|
*
|
|
1859
1890
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1860
1891
|
* you may not use this file except in compliance with the License.
|
|
@@ -1868,14 +1899,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1868
1899
|
* See the License for the specific language governing permissions and
|
|
1869
1900
|
* limitations under the License.
|
|
1870
1901
|
*/
|
|
1871
|
-
class
|
|
1902
|
+
class CaseManagementLinkProcessComponent {
|
|
1903
|
+
//Necessary to trigger outside click detection for combo-box
|
|
1904
|
+
emptyCallback() {
|
|
1905
|
+
return;
|
|
1906
|
+
}
|
|
1872
1907
|
constructor(configService, route, documentenApiLinkProcessService, documentenApiVersionService) {
|
|
1873
1908
|
this.configService = configService;
|
|
1874
1909
|
this.route = route;
|
|
1875
1910
|
this.documentenApiLinkProcessService = documentenApiLinkProcessService;
|
|
1876
1911
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1877
1912
|
this.documentenApiUploadProviders$ = new BehaviorSubject(false);
|
|
1878
|
-
this._documentDefinitionName$ = this.route.params.pipe(map(params => params?.name), filter$1(name => !!name));
|
|
1879
1913
|
this.selectedProcessKey$ = new BehaviorSubject('');
|
|
1880
1914
|
this.processItems$ = combineLatest([
|
|
1881
1915
|
this.documentenApiLinkProcessService.getProcessDefinitions(),
|
|
@@ -1887,32 +1921,40 @@ class DossierManagementLinkProcessComponent {
|
|
|
1887
1921
|
id: process.key,
|
|
1888
1922
|
selected: selectedProcessKey === process.key,
|
|
1889
1923
|
}))), tap(() => this.documentenApiVersionService.refresh()));
|
|
1924
|
+
this._caseParams$ = getCaseManagementRouteParams(this.route);
|
|
1925
|
+
this._subscriptions = new Subscription();
|
|
1890
1926
|
this.disabled$ = new BehaviorSubject(false);
|
|
1891
1927
|
}
|
|
1892
1928
|
ngOnInit() {
|
|
1893
1929
|
this.setDocumentenApiUploaderProvider(this.configService.config);
|
|
1894
1930
|
}
|
|
1931
|
+
ngOnDestroy() {
|
|
1932
|
+
this._subscriptions.unsubscribe();
|
|
1933
|
+
}
|
|
1895
1934
|
selectProcess(item) {
|
|
1896
1935
|
const processDefinitionKey = item?.id;
|
|
1897
1936
|
this.disabled$.next(true);
|
|
1898
1937
|
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
|
-
|
|
1938
|
+
if (processDefinitionKey && processDefinitionKey !== currentSelectionId)
|
|
1939
|
+
this.updateProcess(processDefinitionKey);
|
|
1940
|
+
else if (!processDefinitionKey)
|
|
1941
|
+
this.deleteProcess();
|
|
1942
|
+
}
|
|
1943
|
+
deleteProcess() {
|
|
1944
|
+
this._caseParams$
|
|
1945
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.deleteLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1946
|
+
.subscribe(() => {
|
|
1947
|
+
this.selectedProcessKey$.next('');
|
|
1948
|
+
this.disabled$.next(false);
|
|
1949
|
+
});
|
|
1950
|
+
}
|
|
1951
|
+
updateProcess(processDefinitionKey) {
|
|
1952
|
+
this._caseParams$
|
|
1953
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.updateLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '', processDefinitionKey)))
|
|
1954
|
+
.subscribe(processLink => {
|
|
1955
|
+
this.selectedProcessKey$.next(processLink.processDefinitionKey);
|
|
1956
|
+
this.disabled$.next(false);
|
|
1957
|
+
});
|
|
1916
1958
|
}
|
|
1917
1959
|
setDocumentenApiUploaderProvider(config) {
|
|
1918
1960
|
const hasDocumentenApiUploadProvider = config.uploadProvider === UploadProvider.DOCUMENTEN_API;
|
|
@@ -1921,24 +1963,27 @@ class DossierManagementLinkProcessComponent {
|
|
|
1921
1963
|
this.getDefaultSelection();
|
|
1922
1964
|
}
|
|
1923
1965
|
getDefaultSelection() {
|
|
1924
|
-
this.
|
|
1925
|
-
.pipe(switchMap(
|
|
1966
|
+
this._subscriptions.add(this._caseParams$
|
|
1967
|
+
.pipe(switchMap((params) => this.documentenApiLinkProcessService.getLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1926
1968
|
.subscribe(linkedUploadProcess => {
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
}
|
|
1930
|
-
});
|
|
1969
|
+
this.selectedProcessKey$.next(linkedUploadProcess?.processDefinitionKey ?? '');
|
|
1970
|
+
}));
|
|
1931
1971
|
}
|
|
1932
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1933
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1972
|
+
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 }); }
|
|
1973
|
+
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
1974
|
}
|
|
1935
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1975
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementLinkProcessComponent, decorators: [{
|
|
1936
1976
|
type: Component,
|
|
1937
|
-
args: [{ selector: 'valtimo-
|
|
1938
|
-
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }]
|
|
1977
|
+
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"] }]
|
|
1978
|
+
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }], propDecorators: { isReadOnly$: [{
|
|
1979
|
+
type: Input
|
|
1980
|
+
}], emptyCallback: [{
|
|
1981
|
+
type: HostListener,
|
|
1982
|
+
args: ['document:click', ['$event']]
|
|
1983
|
+
}] } });
|
|
1939
1984
|
|
|
1940
1985
|
/*
|
|
1941
|
-
* Copyright 2015-
|
|
1986
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1942
1987
|
*
|
|
1943
1988
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1944
1989
|
* you may not use this file except in compliance with the License.
|
|
@@ -1981,9 +2026,7 @@ class DocumentenApiTagModalComponent {
|
|
|
1981
2026
|
}
|
|
1982
2027
|
addTag() {
|
|
1983
2028
|
this.disable();
|
|
1984
|
-
this.documentenApiTagService
|
|
1985
|
-
.createTag(this.documentDefinitionName, this.value.value)
|
|
1986
|
-
.subscribe({
|
|
2029
|
+
this.documentenApiTagService.createTag(this.caseDefinitionKey, this.value.value).subscribe({
|
|
1987
2030
|
next: () => {
|
|
1988
2031
|
this.enable();
|
|
1989
2032
|
this.closeAndRefresh();
|
|
@@ -2015,10 +2058,10 @@ class DocumentenApiTagModalComponent {
|
|
|
2015
2058
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2016
2059
|
this.resetForm();
|
|
2017
2060
|
}
|
|
2018
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2019
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2061
|
+
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 }); }
|
|
2062
|
+
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
2063
|
}
|
|
2021
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2064
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagModalComponent, decorators: [{
|
|
2022
2065
|
type: Component,
|
|
2023
2066
|
args: [{ selector: 'valtimo-documenten-api-tag-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2024
2067
|
CommonModule,
|
|
@@ -2031,8 +2074,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2031
2074
|
DropdownModule,
|
|
2032
2075
|
ToggleModule,
|
|
2033
2076
|
LayerModule,
|
|
2034
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2035
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: {
|
|
2077
|
+
], 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" }]
|
|
2078
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: { caseDefinitionKey: [{
|
|
2036
2079
|
type: Input
|
|
2037
2080
|
}], open: [{
|
|
2038
2081
|
type: Input
|
|
@@ -2041,7 +2084,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2041
2084
|
}] } });
|
|
2042
2085
|
|
|
2043
2086
|
/*
|
|
2044
|
-
* Copyright 2015-
|
|
2087
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2045
2088
|
*
|
|
2046
2089
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2047
2090
|
* you may not use this file except in compliance with the License.
|
|
@@ -2056,14 +2099,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2056
2099
|
* limitations under the License.
|
|
2057
2100
|
*/
|
|
2058
2101
|
class DocumentenApiTagsComponent {
|
|
2059
|
-
get documentDefinitionName$() {
|
|
2060
|
-
return this._documentDefinitionName$;
|
|
2061
|
-
}
|
|
2062
2102
|
constructor(route, documentenApiTagService) {
|
|
2063
2103
|
this.route = route;
|
|
2064
2104
|
this.documentenApiTagService = documentenApiTagService;
|
|
2065
2105
|
this._reload$ = new BehaviorSubject(null);
|
|
2066
|
-
this.
|
|
2106
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey));
|
|
2067
2107
|
this.loading$ = new BehaviorSubject(true);
|
|
2068
2108
|
this.fields$ = new BehaviorSubject([]);
|
|
2069
2109
|
this.addModalClosed$ = new BehaviorSubject(true);
|
|
@@ -2073,14 +2113,13 @@ class DocumentenApiTagsComponent {
|
|
|
2073
2113
|
this.searchTerm$ = new BehaviorSubject('');
|
|
2074
2114
|
this.tagToDelete$ = new BehaviorSubject(null);
|
|
2075
2115
|
this.documentTags$ = combineLatest([
|
|
2076
|
-
this.
|
|
2116
|
+
this.caseDefinitionKey$,
|
|
2077
2117
|
this.searchTerm$,
|
|
2078
2118
|
this._reload$,
|
|
2079
2119
|
]).pipe(tap(([_1, _2, reload]) => {
|
|
2080
|
-
if (reload === null)
|
|
2120
|
+
if (reload === null)
|
|
2081
2121
|
this.loading$.next(true);
|
|
2082
|
-
|
|
2083
|
-
}), switchMap(([documentDefinitionName, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(documentDefinitionName, {
|
|
2122
|
+
}), switchMap(([caseDefinitionKey, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(caseDefinitionKey, {
|
|
2084
2123
|
page: this.pagination.page - 1,
|
|
2085
2124
|
size: this.pagination.size,
|
|
2086
2125
|
search: searchTerm,
|
|
@@ -2121,9 +2160,8 @@ class DocumentenApiTagsComponent {
|
|
|
2121
2160
|
this.addModalClosed$.next(false);
|
|
2122
2161
|
}
|
|
2123
2162
|
closeModal(closeModalEvent) {
|
|
2124
|
-
if (closeModalEvent === 'closeAndRefresh')
|
|
2163
|
+
if (closeModalEvent === 'closeAndRefresh')
|
|
2125
2164
|
this.reload();
|
|
2126
|
-
}
|
|
2127
2165
|
this.addModalClosed$.next(true);
|
|
2128
2166
|
}
|
|
2129
2167
|
showDeleteMultipleModal() {
|
|
@@ -2142,15 +2180,15 @@ class DocumentenApiTagsComponent {
|
|
|
2142
2180
|
this.reload();
|
|
2143
2181
|
}
|
|
2144
2182
|
confirmDeleteTag(tag) {
|
|
2145
|
-
this.
|
|
2146
|
-
.pipe(switchMap(
|
|
2183
|
+
this.caseDefinitionKey$
|
|
2184
|
+
.pipe(switchMap(caseDefinitionKey => this.documentenApiTagService.deleteTag(caseDefinitionKey, tag.value)))
|
|
2147
2185
|
.subscribe(() => {
|
|
2148
2186
|
this.reload();
|
|
2149
2187
|
});
|
|
2150
2188
|
}
|
|
2151
2189
|
confirmDeleteMultipleTag(tagsToDelete) {
|
|
2152
2190
|
this.documentenApiTagService
|
|
2153
|
-
.deleteTags(tagsToDelete.
|
|
2191
|
+
.deleteTags(tagsToDelete.caseDefinitionKey, tagsToDelete.tagIds)
|
|
2154
2192
|
.subscribe(() => {
|
|
2155
2193
|
const lastPage = Math.ceil(this.pagination.collectionSize / this.pagination.size);
|
|
2156
2194
|
if (tagsToDelete.itemsOnCurrentPage <= tagsToDelete.tagIds.length &&
|
|
@@ -2168,10 +2206,10 @@ class DocumentenApiTagsComponent {
|
|
|
2168
2206
|
reload(noAnimation = false) {
|
|
2169
2207
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2170
2208
|
}
|
|
2171
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2172
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2209
|
+
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 }); }
|
|
2210
|
+
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
2211
|
}
|
|
2174
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2212
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiTagsComponent, decorators: [{
|
|
2175
2213
|
type: Component,
|
|
2176
2214
|
args: [{ selector: 'valtimo-documenten-api-tags', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2177
2215
|
CommonModule,
|
|
@@ -2182,14 +2220,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2182
2220
|
ButtonModule,
|
|
2183
2221
|
DocumentenApiTagModalComponent,
|
|
2184
2222
|
IconModule,
|
|
2185
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2223
|
+
], 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
2224
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiTagService }], propDecorators: { carbonList: [{
|
|
2187
2225
|
type: ViewChild,
|
|
2188
2226
|
args: [CarbonListComponent]
|
|
2189
2227
|
}] } });
|
|
2190
2228
|
|
|
2191
2229
|
/*
|
|
2192
|
-
* Copyright 2015-
|
|
2230
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2193
2231
|
*
|
|
2194
2232
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2195
2233
|
* you may not use this file except in compliance with the License.
|
|
@@ -2227,11 +2265,12 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2227
2265
|
get invalid() {
|
|
2228
2266
|
return !!this.formGroup?.invalid;
|
|
2229
2267
|
}
|
|
2230
|
-
constructor(fb, documentenApiDocumentService, translateService, documentService) {
|
|
2268
|
+
constructor(fb, documentenApiDocumentService, translateService, documentService, route) {
|
|
2231
2269
|
this.fb = fb;
|
|
2232
2270
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2233
2271
|
this.translateService = translateService;
|
|
2234
2272
|
this.documentService = documentService;
|
|
2273
|
+
this.route = route;
|
|
2235
2274
|
this.closeModalEvent = new EventEmitter();
|
|
2236
2275
|
this.formGroup = this.fb.group({
|
|
2237
2276
|
defaultValue: this.fb.control('', [Validators.maxLength(256)]),
|
|
@@ -2264,11 +2303,13 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2264
2303
|
content: this.translateService.instant(`document.${item}`),
|
|
2265
2304
|
selected: selectedItem === item,
|
|
2266
2305
|
}))));
|
|
2306
|
+
this._context = getCaseManagementRouteParams(this.route);
|
|
2267
2307
|
this.documentTypeItems$ = combineLatest([
|
|
2308
|
+
this._context,
|
|
2268
2309
|
this.defaultValue.valueChanges,
|
|
2269
2310
|
this.translateService.stream('key'),
|
|
2270
|
-
]).pipe(switchMap(([selectedItem]) => combineLatest([
|
|
2271
|
-
this.documentService.
|
|
2311
|
+
]).pipe(switchMap(([params, selectedItem]) => combineLatest([
|
|
2312
|
+
this.documentService.getDocumentTypesForCase(params.caseDefinitionKey, params.caseDefinitionVersionTag),
|
|
2272
2313
|
of(selectedItem),
|
|
2273
2314
|
])), map(([documentTypes, selectedItem]) => documentTypes.map(item => ({
|
|
2274
2315
|
id: item.url,
|
|
@@ -2296,7 +2337,7 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2296
2337
|
readonly: this.readonly.value,
|
|
2297
2338
|
};
|
|
2298
2339
|
this.documentenApiDocumentService
|
|
2299
|
-
.updateUploadField(this.
|
|
2340
|
+
.updateUploadField(this.caseDefinitionKey, formField)
|
|
2300
2341
|
.subscribe({
|
|
2301
2342
|
next: () => {
|
|
2302
2343
|
this.enable();
|
|
@@ -2329,10 +2370,10 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2329
2370
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2330
2371
|
this.resetForm();
|
|
2331
2372
|
}
|
|
2332
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2333
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2373
|
+
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 }); }
|
|
2374
|
+
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
2375
|
}
|
|
2335
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, decorators: [{
|
|
2336
2377
|
type: Component,
|
|
2337
2378
|
args: [{ selector: 'valtimo-documenten-api-upload-field-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2338
2379
|
CommonModule,
|
|
@@ -2345,8 +2386,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2345
2386
|
CheckboxModule,
|
|
2346
2387
|
ComboBoxModule,
|
|
2347
2388
|
LayerModule,
|
|
2348
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2349
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type:
|
|
2389
|
+
], 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"] }]
|
|
2390
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i4$1.DocumentService }, { type: i1$2.ActivatedRoute }], propDecorators: { caseDefinitionKey: [{
|
|
2350
2391
|
type: Input
|
|
2351
2392
|
}], type: [{
|
|
2352
2393
|
type: Input
|
|
@@ -2357,7 +2398,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2357
2398
|
}] } });
|
|
2358
2399
|
|
|
2359
2400
|
/*
|
|
2360
|
-
* Copyright 2015-
|
|
2401
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2361
2402
|
*
|
|
2362
2403
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2363
2404
|
* you may not use this file except in compliance with the License.
|
|
@@ -2372,33 +2413,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2372
2413
|
* limitations under the License.
|
|
2373
2414
|
*/
|
|
2374
2415
|
class DocumentenApiUploadFieldsComponent {
|
|
2375
|
-
|
|
2376
|
-
return this._documentDefinitionName$;
|
|
2377
|
-
}
|
|
2378
|
-
constructor(route, documentenApiDocumentService, translateService) {
|
|
2416
|
+
constructor(route, documentenApiDocumentService, translateService, editPermissionsService) {
|
|
2379
2417
|
this.route = route;
|
|
2380
2418
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2381
2419
|
this.translateService = translateService;
|
|
2420
|
+
this.editPermissionsService = editPermissionsService;
|
|
2382
2421
|
this._reload$ = new BehaviorSubject(null);
|
|
2383
|
-
this.
|
|
2422
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter(caseDefinitionKey => !!caseDefinitionKey));
|
|
2384
2423
|
this.loading$ = new BehaviorSubject(true);
|
|
2385
2424
|
this.fields$ = new BehaviorSubject([]);
|
|
2386
2425
|
this.uploadFieldModalType$ = new BehaviorSubject('closed');
|
|
2387
2426
|
this.prefill$ = new BehaviorSubject(undefined);
|
|
2388
2427
|
this.documentUploadFields$ = combineLatest([
|
|
2389
|
-
this.
|
|
2428
|
+
this.caseDefinitionKey$,
|
|
2390
2429
|
this._reload$,
|
|
2391
2430
|
this.translateService.stream('key'),
|
|
2392
2431
|
]).pipe(tap(([_, reload]) => {
|
|
2393
2432
|
if (reload === null) {
|
|
2394
2433
|
this.loading$.next(true);
|
|
2395
2434
|
}
|
|
2396
|
-
}), switchMap(([
|
|
2435
|
+
}), switchMap(([caseDefinitionKey]) => this.documentenApiDocumentService.getUploadFields(caseDefinitionKey)), map(fields => fields.map(field => ({
|
|
2397
2436
|
...field,
|
|
2398
2437
|
field: this.translateService.instant(`zgw.uploadFields.keys.${field.key}`),
|
|
2399
2438
|
}))), startWith([]), tap(() => {
|
|
2400
2439
|
this.loading$.next(false);
|
|
2401
2440
|
}));
|
|
2441
|
+
this.hasEditPermissions$ = getCaseManagementRouteParams(this.route).pipe(switchMap(params => this.editPermissionsService.hasEditPermissions(params?.caseDefinitionKey, params?.caseDefinitionVersionTag)));
|
|
2402
2442
|
this.ACTION_ITEMS = [
|
|
2403
2443
|
{
|
|
2404
2444
|
label: 'interface.edit',
|
|
@@ -2430,8 +2470,13 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2430
2470
|
];
|
|
2431
2471
|
}
|
|
2432
2472
|
openEditModal(uploadField) {
|
|
2433
|
-
this.
|
|
2434
|
-
|
|
2473
|
+
this.hasEditPermissions$.pipe(take(1)).subscribe(hasPermission => {
|
|
2474
|
+
if (!hasPermission && uploadField.key !== 'informatieobjecttype') {
|
|
2475
|
+
return;
|
|
2476
|
+
}
|
|
2477
|
+
this.prefill$.next(uploadField);
|
|
2478
|
+
this.uploadFieldModalType$.next('edit');
|
|
2479
|
+
});
|
|
2435
2480
|
}
|
|
2436
2481
|
closeModal(closeModalEvent) {
|
|
2437
2482
|
if (closeModalEvent === 'closeAndRefresh') {
|
|
@@ -2442,10 +2487,10 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2442
2487
|
reload(noAnimation = false) {
|
|
2443
2488
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2444
2489
|
}
|
|
2445
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2446
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2490
|
+
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 }); }
|
|
2491
|
+
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
2492
|
}
|
|
2448
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2493
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploadFieldsComponent, decorators: [{
|
|
2449
2494
|
type: Component,
|
|
2450
2495
|
args: [{ selector: 'valtimo-documenten-api-upload-fields', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2451
2496
|
CommonModule,
|
|
@@ -2455,14 +2500,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2455
2500
|
ButtonModule,
|
|
2456
2501
|
IconModule,
|
|
2457
2502
|
DocumentenApiUploadFieldModalComponent,
|
|
2458
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2459
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type:
|
|
2503
|
+
], 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"] }]
|
|
2504
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i2.EditPermissionsService }], propDecorators: { carbonList: [{
|
|
2460
2505
|
type: ViewChild,
|
|
2461
2506
|
args: [CarbonListComponent]
|
|
2462
2507
|
}] } });
|
|
2463
2508
|
|
|
2464
2509
|
/*
|
|
2465
|
-
* Copyright 2015-
|
|
2510
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2466
2511
|
*
|
|
2467
2512
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2468
2513
|
* you may not use this file except in compliance with the License.
|
|
@@ -2481,19 +2526,19 @@ class DocumentenApiVersionComponent {
|
|
|
2481
2526
|
this.route = route;
|
|
2482
2527
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
2483
2528
|
this.loading$ = new BehaviorSubject(true);
|
|
2484
|
-
this.
|
|
2485
|
-
this.documentenApiVersion$ = combineLatest([this.
|
|
2529
|
+
this.caseManagementRouteParams$ = getCaseManagementRouteParams(this.route);
|
|
2530
|
+
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
2531
|
}
|
|
2487
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2488
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2532
|
+
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 }); }
|
|
2533
|
+
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
2534
|
}
|
|
2490
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2535
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiVersionComponent, decorators: [{
|
|
2491
2536
|
type: Component,
|
|
2492
|
-
args: [{ selector: 'valtimo-documenten-api-version', standalone: true, imports: [CommonModule, TranslateModule, LoadingModule, NotificationModule], template: "<!--\n ~ Copyright 2015-
|
|
2537
|
+
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
2538
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }] });
|
|
2494
2539
|
|
|
2495
2540
|
/*
|
|
2496
|
-
* Copyright 2015-
|
|
2541
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2497
2542
|
*
|
|
2498
2543
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2499
2544
|
* you may not use this file except in compliance with the License.
|
|
@@ -2509,7 +2554,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2509
2554
|
*/
|
|
2510
2555
|
|
|
2511
2556
|
/*
|
|
2512
|
-
* Copyright 2015-
|
|
2557
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2513
2558
|
*
|
|
2514
2559
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2515
2560
|
* you may not use this file except in compliance with the License.
|
|
@@ -3063,7 +3108,7 @@ const documentenApiUploaderEditForm = () => ({
|
|
|
3063
3108
|
});
|
|
3064
3109
|
|
|
3065
3110
|
/*
|
|
3066
|
-
* Copyright 2015-
|
|
3111
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3067
3112
|
*
|
|
3068
3113
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3069
3114
|
* you may not use this file except in compliance with the License.
|
|
@@ -3145,11 +3190,9 @@ class DocumentenApiUploaderComponent {
|
|
|
3145
3190
|
set hideTags(hide) {
|
|
3146
3191
|
this.hideField(hide, 'trefwoorden');
|
|
3147
3192
|
}
|
|
3148
|
-
constructor(uploadProviderService,
|
|
3193
|
+
constructor(uploadProviderService, domService, modalService, userProviderService, route, documentenApiVersionService) {
|
|
3149
3194
|
this.uploadProviderService = uploadProviderService;
|
|
3150
|
-
this.stateService = stateService;
|
|
3151
3195
|
this.domService = domService;
|
|
3152
|
-
this.downloadService = downloadService;
|
|
3153
3196
|
this.modalService = modalService;
|
|
3154
3197
|
this.userProviderService = userProviderService;
|
|
3155
3198
|
this.route = route;
|
|
@@ -3159,18 +3202,18 @@ class DocumentenApiUploaderComponent {
|
|
|
3159
3202
|
this.fileToBeUploaded$ = new BehaviorSubject(null);
|
|
3160
3203
|
this.modalDisabled$ = new BehaviorSubject(false);
|
|
3161
3204
|
this.showModal = signal(false);
|
|
3162
|
-
this.uploadProcessLinked$ = this.modalService.
|
|
3205
|
+
this.uploadProcessLinked$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), startWith('loading'));
|
|
3163
3206
|
this.isAdmin$ = this.userProviderService
|
|
3164
3207
|
.getUserSubject()
|
|
3165
3208
|
.pipe(map$1(userIdentity => userIdentity?.roles.includes('ROLE_ADMIN')));
|
|
3166
|
-
this.supportedDocumentenApiFeatures$ = this.modalService.
|
|
3209
|
+
this.supportedDocumentenApiFeatures$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey)));
|
|
3167
3210
|
this.defaultValues = {};
|
|
3168
3211
|
this.hideFields = [];
|
|
3169
3212
|
this._subscriptions = new Subscription();
|
|
3170
3213
|
this._value = [];
|
|
3171
3214
|
}
|
|
3172
3215
|
ngOnInit() {
|
|
3173
|
-
this.
|
|
3216
|
+
this.openCaseDefinitionKeySubscription();
|
|
3174
3217
|
}
|
|
3175
3218
|
ngOnDestroy() {
|
|
3176
3219
|
this._subscriptions.unsubscribe();
|
|
@@ -3200,7 +3243,7 @@ class DocumentenApiUploaderComponent {
|
|
|
3200
3243
|
this.showModal.set(false);
|
|
3201
3244
|
this.domService.toggleSubmitButton(true);
|
|
3202
3245
|
this.fileToBeUploaded$
|
|
3203
|
-
.pipe(take
|
|
3246
|
+
.pipe(take(1), switchMap(file => this.uploadProviderService.uploadTempFileWithMetadata(file, metadata)), tap$1(result => {
|
|
3204
3247
|
this.domService.toggleSubmitButton(false);
|
|
3205
3248
|
this.uploading$.next(false);
|
|
3206
3249
|
this._value.push(result);
|
|
@@ -3208,10 +3251,10 @@ class DocumentenApiUploaderComponent {
|
|
|
3208
3251
|
}))
|
|
3209
3252
|
.subscribe();
|
|
3210
3253
|
}
|
|
3211
|
-
|
|
3254
|
+
openCaseDefinitionKeySubscription() {
|
|
3212
3255
|
this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
|
|
3213
|
-
.pipe(map$1(([params, firstChildParams]) => (params?.
|
|
3214
|
-
.subscribe(
|
|
3256
|
+
.pipe(map$1(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter$1(caseDefinitionKey => !!caseDefinitionKey))
|
|
3257
|
+
.subscribe(caseDefinitionKey => this.modalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
3215
3258
|
}
|
|
3216
3259
|
hideField(hide, field) {
|
|
3217
3260
|
const exists = this.hideFields.includes(field);
|
|
@@ -3222,13 +3265,13 @@ class DocumentenApiUploaderComponent {
|
|
|
3222
3265
|
delete this.hideFields[field];
|
|
3223
3266
|
}
|
|
3224
3267
|
}
|
|
3225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3268
|
+
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 }); }
|
|
3269
|
+
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
3270
|
}
|
|
3228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentenApiUploaderComponent, decorators: [{
|
|
3229
3272
|
type: Component,
|
|
3230
|
-
args: [{ selector: 'valtimo-documenten-api-formio-uploader', template: "<!--\n ~ Copyright 2015-
|
|
3231
|
-
}], ctorParameters: () => [{ type:
|
|
3273
|
+
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"] }]
|
|
3274
|
+
}], ctorParameters: () => [{ type: i5$3.UploadProviderService }, { type: i3.FormIoDomService }, { type: i3.ValtimoModalService }, { type: i10.UserProviderService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }], propDecorators: { disabled: [{
|
|
3232
3275
|
type: Input
|
|
3233
3276
|
}], title: [{
|
|
3234
3277
|
type: Input
|
|
@@ -3307,7 +3350,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3307
3350
|
}] } });
|
|
3308
3351
|
|
|
3309
3352
|
/*
|
|
3310
|
-
* Copyright 2015-
|
|
3353
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3311
3354
|
*
|
|
3312
3355
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3313
3356
|
* you may not use this file except in compliance with the License.
|
|
@@ -3350,7 +3393,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3350
3393
|
}
|
|
3351
3394
|
|
|
3352
3395
|
/*
|
|
3353
|
-
* Copyright 2015-
|
|
3396
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3354
3397
|
*
|
|
3355
3398
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3356
3399
|
* you may not use this file except in compliance with the License.
|
|
@@ -3366,7 +3409,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3366
3409
|
*/
|
|
3367
3410
|
|
|
3368
3411
|
/*
|
|
3369
|
-
* Copyright 2015-
|
|
3412
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3370
3413
|
*
|
|
3371
3414
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3372
3415
|
* you may not use this file except in compliance with the License.
|
|
@@ -3382,7 +3425,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3382
3425
|
*/
|
|
3383
3426
|
|
|
3384
3427
|
/*
|
|
3385
|
-
* Copyright 2015-
|
|
3428
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3386
3429
|
*
|
|
3387
3430
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3388
3431
|
* you may not use this file except in compliance with the License.
|
|
@@ -3398,7 +3441,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3398
3441
|
*/
|
|
3399
3442
|
|
|
3400
3443
|
/*
|
|
3401
|
-
* Copyright 2015-
|
|
3444
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3402
3445
|
*
|
|
3403
3446
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3404
3447
|
* you may not use this file except in compliance with the License.
|
|
@@ -3414,7 +3457,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3414
3457
|
*/
|
|
3415
3458
|
|
|
3416
3459
|
/*
|
|
3417
|
-
* Copyright 2015-
|
|
3460
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3418
3461
|
*
|
|
3419
3462
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3420
3463
|
* you may not use this file except in compliance with the License.
|
|
@@ -3430,7 +3473,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3430
3473
|
*/
|
|
3431
3474
|
|
|
3432
3475
|
/*
|
|
3433
|
-
* Copyright 2015-
|
|
3476
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3434
3477
|
*
|
|
3435
3478
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3436
3479
|
* you may not use this file except in compliance with the License.
|
|
@@ -3459,10 +3502,10 @@ class ZaakobjectenService {
|
|
|
3459
3502
|
getObjectTypeForm(documentId, objectUrl) {
|
|
3460
3503
|
return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}v1/document/${documentId}/zaak/object/form?objectUrl=${objectUrl}`);
|
|
3461
3504
|
}
|
|
3462
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3463
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3505
|
+
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 }); }
|
|
3506
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZaakobjectenService, providedIn: 'root' }); }
|
|
3464
3507
|
}
|
|
3465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZaakobjectenService, decorators: [{
|
|
3466
3509
|
type: Injectable,
|
|
3467
3510
|
args: [{
|
|
3468
3511
|
providedIn: 'root',
|
|
@@ -3470,7 +3513,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3470
3513
|
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1.HttpClient }] });
|
|
3471
3514
|
|
|
3472
3515
|
/*
|
|
3473
|
-
* Copyright 2015-
|
|
3516
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3474
3517
|
*
|
|
3475
3518
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3476
3519
|
* you may not use this file except in compliance with the License.
|
|
@@ -3486,7 +3529,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3486
3529
|
*/
|
|
3487
3530
|
|
|
3488
3531
|
/*
|
|
3489
|
-
* Copyright 2015-
|
|
3532
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3490
3533
|
*
|
|
3491
3534
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3492
3535
|
* you may not use this file except in compliance with the License.
|
|
@@ -3500,7 +3543,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3500
3543
|
* See the License for the specific language governing permissions and
|
|
3501
3544
|
* limitations under the License.
|
|
3502
3545
|
*/
|
|
3503
|
-
class
|
|
3546
|
+
class CaseDetailTabZaakobjectenComponent {
|
|
3504
3547
|
constructor(route, zaakobjectenService, modalService) {
|
|
3505
3548
|
this.route = route;
|
|
3506
3549
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3519,15 +3562,15 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3519
3562
|
: of(null)));
|
|
3520
3563
|
this.columns$ = new BehaviorSubject([
|
|
3521
3564
|
{
|
|
3522
|
-
labelTranslationKey: '
|
|
3565
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3523
3566
|
dataKey: 'index',
|
|
3524
3567
|
},
|
|
3525
3568
|
{
|
|
3526
|
-
labelTranslationKey: '
|
|
3569
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3527
3570
|
dataKey: 'registrationAt',
|
|
3528
3571
|
},
|
|
3529
3572
|
{
|
|
3530
|
-
labelTranslationKey: '
|
|
3573
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3531
3574
|
dataKey: 'title',
|
|
3532
3575
|
},
|
|
3533
3576
|
]);
|
|
@@ -3539,7 +3582,7 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3539
3582
|
this.selectedObjecttypeUrl$.next(objectTypeUrl);
|
|
3540
3583
|
}
|
|
3541
3584
|
rowClicked(object, objectTypeSelectItems) {
|
|
3542
|
-
this.documentId$.pipe(take
|
|
3585
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3543
3586
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3544
3587
|
const definition = res.formDefinition;
|
|
3545
3588
|
definition.components = definition.components.map(component => ({
|
|
@@ -3577,29 +3620,28 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3577
3620
|
this.objectName$.next(this.getObjectTypeName(objectTypeSelectItems));
|
|
3578
3621
|
this.show();
|
|
3579
3622
|
}
|
|
3580
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3581
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3623
|
+
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 }); }
|
|
3624
|
+
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
3625
|
}
|
|
3583
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3626
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabZaakobjectenComponent, decorators: [{
|
|
3584
3627
|
type: Component,
|
|
3585
|
-
args: [{ selector: 'valtimo-
|
|
3628
|
+
args: [{ selector: 'valtimo-case-detail-tab-zaakobjecten', standalone: true, imports: [
|
|
3586
3629
|
CommonModule,
|
|
3587
3630
|
SelectModule,
|
|
3588
3631
|
InputLabelModule,
|
|
3589
3632
|
ParagraphModule,
|
|
3590
3633
|
TableModule,
|
|
3591
3634
|
VModalModule,
|
|
3592
|
-
TitleModule,
|
|
3593
3635
|
FormIoModule,
|
|
3594
3636
|
TranslateModule,
|
|
3595
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
3596
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3
|
|
3637
|
+
], 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"] }]
|
|
3638
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewZaakobjectModal: [{
|
|
3597
3639
|
type: ViewChild,
|
|
3598
3640
|
args: ['viewZaakobjectModal']
|
|
3599
3641
|
}] } });
|
|
3600
3642
|
|
|
3601
3643
|
/*
|
|
3602
|
-
* Copyright 2015-
|
|
3644
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3603
3645
|
*
|
|
3604
3646
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3605
3647
|
* you may not use this file except in compliance with the License.
|
|
@@ -3613,7 +3655,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3613
3655
|
* See the License for the specific language governing permissions and
|
|
3614
3656
|
* limitations under the License.
|
|
3615
3657
|
*/
|
|
3616
|
-
class
|
|
3658
|
+
class CaseDetailTabObjectTypeComponent {
|
|
3617
3659
|
constructor(route, zaakobjectenService, modalService) {
|
|
3618
3660
|
this.route = route;
|
|
3619
3661
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3652,15 +3694,15 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3652
3694
|
}))));
|
|
3653
3695
|
this.columns$ = new BehaviorSubject([
|
|
3654
3696
|
{
|
|
3655
|
-
labelTranslationKey: '
|
|
3697
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3656
3698
|
dataKey: 'index',
|
|
3657
3699
|
},
|
|
3658
3700
|
{
|
|
3659
|
-
labelTranslationKey: '
|
|
3701
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3660
3702
|
dataKey: 'registrationAt',
|
|
3661
3703
|
},
|
|
3662
3704
|
{
|
|
3663
|
-
labelTranslationKey: '
|
|
3705
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3664
3706
|
dataKey: 'title',
|
|
3665
3707
|
},
|
|
3666
3708
|
]);
|
|
@@ -3668,7 +3710,7 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3668
3710
|
this.noFormDefinitionComponent$ = new BehaviorSubject(false);
|
|
3669
3711
|
}
|
|
3670
3712
|
rowClicked(object) {
|
|
3671
|
-
this.documentId$.pipe(take
|
|
3713
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3672
3714
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3673
3715
|
const definition = res.formDefinition;
|
|
3674
3716
|
definition.components = definition.components.map(component => ({
|
|
@@ -3699,51 +3741,19 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3699
3741
|
}
|
|
3700
3742
|
this.show();
|
|
3701
3743
|
}
|
|
3702
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3703
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3744
|
+
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 }); }
|
|
3745
|
+
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
3746
|
}
|
|
3705
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3747
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseDetailTabObjectTypeComponent, decorators: [{
|
|
3706
3748
|
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
|
|
3749
|
+
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"] }]
|
|
3750
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewObjectModal: [{
|
|
3709
3751
|
type: ViewChild,
|
|
3710
3752
|
args: ['viewObjectModal']
|
|
3711
3753
|
}] } });
|
|
3712
3754
|
|
|
3713
3755
|
/*
|
|
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.
|
|
3756
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3747
3757
|
*
|
|
3748
3758
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3749
3759
|
* you may not use this file except in compliance with the License.
|
|
@@ -3759,7 +3769,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3759
3769
|
*/
|
|
3760
3770
|
|
|
3761
3771
|
/*
|
|
3762
|
-
* Copyright 2015-
|
|
3772
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3763
3773
|
*
|
|
3764
3774
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3765
3775
|
* you may not use this file except in compliance with the License.
|
|
@@ -3775,7 +3785,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3775
3785
|
*/
|
|
3776
3786
|
|
|
3777
3787
|
/*
|
|
3778
|
-
* Copyright 2015-
|
|
3788
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3779
3789
|
*
|
|
3780
3790
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3781
3791
|
* you may not use this file except in compliance with the License.
|
|
@@ -3789,24 +3799,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3789
3799
|
* See the License for the specific language governing permissions and
|
|
3790
3800
|
* limitations under the License.
|
|
3791
3801
|
*/
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3802
|
+
class DocumentObjectenApiSyncService extends BaseApiService {
|
|
3803
|
+
constructor(httpClient, configService) {
|
|
3804
|
+
super(httpClient, configService);
|
|
3805
|
+
this.httpClient = httpClient;
|
|
3806
|
+
this.configService = configService;
|
|
3807
|
+
}
|
|
3808
|
+
getObjectManagementConfigurations() {
|
|
3809
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/object/management/configuration`));
|
|
3810
|
+
}
|
|
3811
|
+
getDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3812
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3799
3813
|
}
|
|
3800
|
-
|
|
3801
|
-
return this.
|
|
3814
|
+
updateDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag, request) {
|
|
3815
|
+
return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`), request);
|
|
3802
3816
|
}
|
|
3803
|
-
|
|
3804
|
-
return this.
|
|
3817
|
+
deleteDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3818
|
+
return this.httpClient.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3805
3819
|
}
|
|
3806
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3807
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3820
|
+
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 }); }
|
|
3821
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncService, providedIn: 'root' }); }
|
|
3808
3822
|
}
|
|
3809
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3823
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncService, decorators: [{
|
|
3810
3824
|
type: Injectable,
|
|
3811
3825
|
args: [{
|
|
3812
3826
|
providedIn: 'root',
|
|
@@ -3814,7 +3828,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3814
3828
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3815
3829
|
|
|
3816
3830
|
/*
|
|
3817
|
-
* Copyright 2015-
|
|
3831
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3818
3832
|
*
|
|
3819
3833
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3820
3834
|
* you may not use this file except in compliance with the License.
|
|
@@ -3830,7 +3844,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3830
3844
|
*/
|
|
3831
3845
|
|
|
3832
3846
|
/*
|
|
3833
|
-
* Copyright 2015-
|
|
3847
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3834
3848
|
*
|
|
3835
3849
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3836
3850
|
* you may not use this file except in compliance with the License.
|
|
@@ -3844,68 +3858,119 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3844
3858
|
* See the License for the specific language governing permissions and
|
|
3845
3859
|
* limitations under the License.
|
|
3846
3860
|
*/
|
|
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);
|
|
3861
|
+
class DocumentObjectenApiSyncComponent {
|
|
3862
|
+
get objectManagementConfigurationId() {
|
|
3863
|
+
return this.formGroup.get('objectManagementConfigurationId') ?? null;
|
|
3863
3864
|
}
|
|
3864
|
-
|
|
3865
|
-
this.
|
|
3865
|
+
get enabled() {
|
|
3866
|
+
return this.formGroup.get('enabled') ?? null;
|
|
3866
3867
|
}
|
|
3867
|
-
|
|
3868
|
-
this.
|
|
3868
|
+
constructor(route, documentObjectenApiSyncService, documentService, cdsThemeService, iconService, draftVersionService) {
|
|
3869
|
+
this.route = route;
|
|
3870
|
+
this.documentObjectenApiSyncService = documentObjectenApiSyncService;
|
|
3871
|
+
this.documentService = documentService;
|
|
3872
|
+
this.cdsThemeService = cdsThemeService;
|
|
3873
|
+
this.iconService = iconService;
|
|
3874
|
+
this.draftVersionService = draftVersionService;
|
|
3875
|
+
this.loading$ = new BehaviorSubject(true);
|
|
3876
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
3877
|
+
this._documentDefinition$ = this._params$.pipe(switchMap(params => this.documentService.getDocumentDefinitionByVersion(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')));
|
|
3878
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
3879
|
+
? of(false)
|
|
3880
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
3881
|
+
this.documentObjectenApiSync$ = new BehaviorSubject(null);
|
|
3882
|
+
this.objectManagementConfigurationItems$ = this.documentObjectenApiSyncService.getObjectManagementConfigurations().pipe(map(results => results?.map(configuration => ({
|
|
3883
|
+
id: configuration.id,
|
|
3884
|
+
text: configuration.title,
|
|
3885
|
+
}))));
|
|
3886
|
+
this.modalShowing$ = new BehaviorSubject(false);
|
|
3887
|
+
this.currentTheme$ = this.cdsThemeService.currentTheme$;
|
|
3888
|
+
this.formGroup = new FormGroup({
|
|
3889
|
+
objectManagementConfigurationId: new FormControl('', Validators.required),
|
|
3890
|
+
enabled: new FormControl(true),
|
|
3891
|
+
});
|
|
3892
|
+
this.valid$ = new BehaviorSubject(false);
|
|
3893
|
+
this.iconService.registerAll([TrashCan16, Edit16]);
|
|
3869
3894
|
}
|
|
3870
|
-
|
|
3871
|
-
this.
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3880
|
-
|
|
3881
|
-
});
|
|
3895
|
+
ngOnInit() {
|
|
3896
|
+
this.loadDocumentenObjectenApiSync();
|
|
3897
|
+
}
|
|
3898
|
+
loadDocumentenObjectenApiSync() {
|
|
3899
|
+
this._documentDefinition$
|
|
3900
|
+
.pipe(switchMap((documentDefinition) => this.documentObjectenApiSyncService.getDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)))
|
|
3901
|
+
.subscribe(documentObjectenApiSync => {
|
|
3902
|
+
this.loading$.next(false);
|
|
3903
|
+
this.configSelected(documentObjectenApiSync?.objectManagementConfigurationId);
|
|
3904
|
+
this.enabled?.patchValue(documentObjectenApiSync?.enabled);
|
|
3905
|
+
this.documentObjectenApiSync$.next(documentObjectenApiSync);
|
|
3882
3906
|
});
|
|
3883
3907
|
}
|
|
3884
|
-
|
|
3885
|
-
this.
|
|
3908
|
+
remove() {
|
|
3909
|
+
this._documentDefinition$
|
|
3910
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.deleteDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)), tap(() => {
|
|
3911
|
+
this.documentObjectenApiSync$.next(null);
|
|
3912
|
+
}))
|
|
3913
|
+
.subscribe();
|
|
3914
|
+
}
|
|
3915
|
+
submit() {
|
|
3916
|
+
const formValues = this.formGroup.getRawValue();
|
|
3917
|
+
this._documentDefinition$
|
|
3918
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.updateDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag, {
|
|
3919
|
+
objectManagementConfigurationId: formValues.objectManagementConfigurationId ?? '',
|
|
3920
|
+
enabled: !!formValues.enabled,
|
|
3921
|
+
})))
|
|
3922
|
+
.subscribe(() => {
|
|
3923
|
+
this.loadDocumentenObjectenApiSync();
|
|
3924
|
+
this.hideModal();
|
|
3925
|
+
});
|
|
3886
3926
|
}
|
|
3887
|
-
|
|
3888
|
-
this.
|
|
3927
|
+
onModalClose() {
|
|
3928
|
+
this.hideModal();
|
|
3889
3929
|
}
|
|
3890
|
-
|
|
3891
|
-
this.
|
|
3930
|
+
showModal() {
|
|
3931
|
+
this.modalShowing$.next(true);
|
|
3932
|
+
}
|
|
3933
|
+
configSelected(selectedId) {
|
|
3934
|
+
if (!this.objectManagementConfigurationId)
|
|
3935
|
+
return;
|
|
3936
|
+
if (!selectedId) {
|
|
3937
|
+
this.objectManagementConfigurationId.patchValue('');
|
|
3938
|
+
}
|
|
3939
|
+
else {
|
|
3940
|
+
this.objectManagementConfigurationId.patchValue(selectedId);
|
|
3941
|
+
}
|
|
3892
3942
|
}
|
|
3893
|
-
|
|
3894
|
-
this.
|
|
3943
|
+
hideModal() {
|
|
3944
|
+
this.modalShowing$.next(false);
|
|
3895
3945
|
}
|
|
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"] }] }); }
|
|
3946
|
+
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 }); }
|
|
3947
|
+
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: ["enableOverflow"] }, { kind: "component", type: RenderInBodyComponent, selector: "valtimo-render-in-body" }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }] }); }
|
|
3898
3948
|
}
|
|
3899
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3949
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
|
|
3900
3950
|
type: Component,
|
|
3901
|
-
args: [{ selector: 'valtimo-
|
|
3902
|
-
|
|
3903
|
-
|
|
3904
|
-
|
|
3905
|
-
|
|
3951
|
+
args: [{ selector: 'valtimo-document-objecten-api-sync', standalone: true, imports: [
|
|
3952
|
+
ButtonModule,
|
|
3953
|
+
CheckboxModule,
|
|
3954
|
+
CommonModule,
|
|
3955
|
+
FormModule,
|
|
3956
|
+
FormsModule,
|
|
3957
|
+
IconModule,
|
|
3958
|
+
InputModule$1,
|
|
3959
|
+
LayerModule,
|
|
3960
|
+
ModalModule,
|
|
3961
|
+
ReactiveFormsModule,
|
|
3962
|
+
SelectModule,
|
|
3963
|
+
SpinnerModule,
|
|
3964
|
+
TilesModule,
|
|
3965
|
+
TranslateModule,
|
|
3966
|
+
ValtimoCdsModalDirective,
|
|
3967
|
+
RenderInBodyComponent,
|
|
3968
|
+
CaseManagementDraftWarningComponent,
|
|
3969
|
+
], 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"] }]
|
|
3970
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i4$1.DocumentService }, { type: i3.CdsThemeService }, { type: i5$1.IconService }, { type: i2.DraftVersionService }] });
|
|
3906
3971
|
|
|
3907
3972
|
/*
|
|
3908
|
-
* Copyright 2015-
|
|
3973
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3909
3974
|
*
|
|
3910
3975
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3911
3976
|
* you may not use this file except in compliance with the License.
|
|
@@ -3921,7 +3986,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3921
3986
|
*/
|
|
3922
3987
|
|
|
3923
3988
|
/*
|
|
3924
|
-
* Copyright 2015-
|
|
3989
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3925
3990
|
*
|
|
3926
3991
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3927
3992
|
* you may not use this file except in compliance with the License.
|
|
@@ -3937,7 +4002,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3937
4002
|
*/
|
|
3938
4003
|
|
|
3939
4004
|
/*
|
|
3940
|
-
* Copyright 2015-
|
|
4005
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3941
4006
|
*
|
|
3942
4007
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3943
4008
|
* you may not use this file except in compliance with the License.
|
|
@@ -3951,32 +4016,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3951
4016
|
* See the License for the specific language governing permissions and
|
|
3952
4017
|
* limitations under the License.
|
|
3953
4018
|
*/
|
|
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
4019
|
|
|
3978
4020
|
/*
|
|
3979
|
-
* Copyright 2015-
|
|
4021
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3980
4022
|
*
|
|
3981
4023
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3982
4024
|
* you may not use this file except in compliance with the License.
|
|
@@ -3990,9 +4032,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3990
4032
|
* See the License for the specific language governing permissions and
|
|
3991
4033
|
* limitations under the License.
|
|
3992
4034
|
*/
|
|
4035
|
+
class ZakenApiZaaktypeLinkService extends BaseApiService {
|
|
4036
|
+
constructor(httpClient, configService) {
|
|
4037
|
+
super(httpClient, configService);
|
|
4038
|
+
this.httpClient = httpClient;
|
|
4039
|
+
this.configService = configService;
|
|
4040
|
+
}
|
|
4041
|
+
getPluginConfigurationsByPluginDefinitionKey(pluginDefinitionKey) {
|
|
4042
|
+
return this.httpClient.get(this.getApiUrl(`/v1/plugin/configuration?pluginDefinitionKey=${pluginDefinitionKey}`));
|
|
4043
|
+
}
|
|
4044
|
+
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 }); }
|
|
4045
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkService, providedIn: 'root' }); }
|
|
4046
|
+
}
|
|
4047
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkService, decorators: [{
|
|
4048
|
+
type: Injectable,
|
|
4049
|
+
args: [{
|
|
4050
|
+
providedIn: 'root',
|
|
4051
|
+
}]
|
|
4052
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3993
4053
|
|
|
3994
4054
|
/*
|
|
3995
|
-
* Copyright 2015-
|
|
4055
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3996
4056
|
*
|
|
3997
4057
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3998
4058
|
* you may not use this file except in compliance with the License.
|
|
@@ -4008,605 +4068,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4008
4068
|
*/
|
|
4009
4069
|
|
|
4010
4070
|
/*
|
|
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.
|
|
4071
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4610
4072
|
*
|
|
4611
4073
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4612
4074
|
* you may not use this file except in compliance with the License.
|
|
@@ -4621,33 +4083,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4621
4083
|
* limitations under the License.
|
|
4622
4084
|
*/
|
|
4623
4085
|
class ZakenApiZaaktypeLinkComponent {
|
|
4624
|
-
constructor(
|
|
4625
|
-
this.
|
|
4086
|
+
constructor(globalNotificationService, iconService, openZaakService, route, translateService, zakenApiZaaktypeLinkService) {
|
|
4087
|
+
this.globalNotificationService = globalNotificationService;
|
|
4088
|
+
this.iconService = iconService;
|
|
4626
4089
|
this.openZaakService = openZaakService;
|
|
4627
|
-
this.
|
|
4628
|
-
this.toasterService = toasterService;
|
|
4090
|
+
this.route = route;
|
|
4629
4091
|
this.translateService = translateService;
|
|
4630
4092
|
this.zakenApiZaaktypeLinkService = zakenApiZaaktypeLinkService;
|
|
4631
|
-
this.configService = configService;
|
|
4632
4093
|
this.selectedZaakType = null;
|
|
4633
4094
|
this.selectedPluginConfiguration = null;
|
|
4634
4095
|
this.selectedInformatieObjectTypeUrl = null;
|
|
4635
4096
|
this.loading$ = new BehaviorSubject(true);
|
|
4636
4097
|
this.zaakTypeLink$ = new BehaviorSubject(null);
|
|
4637
|
-
this.
|
|
4638
|
-
this.
|
|
4639
|
-
this.informatieObjectTypeSelectionEnabled =
|
|
4640
|
-
this.configService.config.uploadProvider === UploadProvider.OPEN_ZAAK;
|
|
4098
|
+
this.modalOpen$ = new BehaviorSubject(false);
|
|
4099
|
+
this.iconService.registerAll([Edit16, TrashCan16, Save16]);
|
|
4641
4100
|
}
|
|
4642
4101
|
ngOnInit() {
|
|
4643
|
-
this.
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4647
|
-
|
|
4102
|
+
getCaseManagementRouteParams(this.route)
|
|
4103
|
+
.pipe(switchMap((params) => {
|
|
4104
|
+
this._caseDefinitionKey = params?.caseDefinitionKey ?? '';
|
|
4105
|
+
this._caseVersionTag = params?.caseDefinitionVersionTag ?? '';
|
|
4106
|
+
this.zaakTypeLinkRequest = {
|
|
4107
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4108
|
+
caseVersionTag: this._caseVersionTag,
|
|
4109
|
+
createWithDossier: false,
|
|
4110
|
+
};
|
|
4111
|
+
return this.openZaakService.getZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag);
|
|
4112
|
+
}))
|
|
4113
|
+
.subscribe(zaakTypeLink => {
|
|
4648
4114
|
if (zaakTypeLink !== null) {
|
|
4649
4115
|
this.zaakTypeLinkRequest = {
|
|
4650
|
-
|
|
4116
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4117
|
+
caseVersionTag: this._caseVersionTag,
|
|
4651
4118
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4652
4119
|
rsin: zaakTypeLink?.rsin,
|
|
4653
4120
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
@@ -4657,28 +4124,22 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4657
4124
|
this.zaakTypeLink$.next(zaakTypeLink);
|
|
4658
4125
|
this.loadZaakTypes();
|
|
4659
4126
|
this.loadZakenApiPluginConfigurations();
|
|
4127
|
+
this.loading$.next(false);
|
|
4660
4128
|
});
|
|
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
4129
|
}
|
|
4669
4130
|
loadZaakTypes() {
|
|
4670
|
-
|
|
4131
|
+
this.openZaakService.getZaakTypes().subscribe((zaakTypes) => {
|
|
4671
4132
|
this.zaakTypes = zaakTypes;
|
|
4672
|
-
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl);
|
|
4133
|
+
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl ?? '');
|
|
4673
4134
|
this.loading$.next(false);
|
|
4674
4135
|
});
|
|
4675
4136
|
}
|
|
4676
4137
|
loadZakenApiPluginConfigurations() {
|
|
4677
|
-
|
|
4138
|
+
this.zakenApiZaaktypeLinkService
|
|
4678
4139
|
.getPluginConfigurationsByPluginDefinitionKey('zakenapi')
|
|
4679
4140
|
.subscribe((plugins) => {
|
|
4680
4141
|
this.pluginConfigurations = plugins;
|
|
4681
|
-
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId);
|
|
4142
|
+
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId ?? '');
|
|
4682
4143
|
});
|
|
4683
4144
|
}
|
|
4684
4145
|
loadInformatieObjectTypeUrls() {
|
|
@@ -4688,90 +4149,120 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4688
4149
|
this.informatieObjectTypes = informatieObjectTypes;
|
|
4689
4150
|
});
|
|
4690
4151
|
}
|
|
4152
|
+
closeModal() {
|
|
4153
|
+
this.modalOpen$.next(false);
|
|
4154
|
+
}
|
|
4691
4155
|
openModal(zaakTypeLink) {
|
|
4692
4156
|
this.zaakTypeLinkRequest = {
|
|
4693
|
-
|
|
4157
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4158
|
+
caseVersionTag: this._caseVersionTag,
|
|
4694
4159
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4695
4160
|
rsin: zaakTypeLink?.rsin,
|
|
4696
4161
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
4697
4162
|
zaakTypeUrl: zaakTypeLink?.zaakTypeUrl,
|
|
4698
4163
|
};
|
|
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
|
-
}
|
|
4164
|
+
this.modalOpen$.next(true);
|
|
4165
|
+
}
|
|
4166
|
+
onCheckedChange(checked) {
|
|
4167
|
+
this.zaakTypeLinkRequest.createWithDossier = checked;
|
|
4721
4168
|
}
|
|
4722
4169
|
removeZaakTypeLink() {
|
|
4723
|
-
this.openZaakService
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4170
|
+
this.openZaakService
|
|
4171
|
+
.deleteZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag)
|
|
4172
|
+
.subscribe({
|
|
4173
|
+
next: () => {
|
|
4174
|
+
this.globalNotificationService.showToast({
|
|
4175
|
+
title: this.translateService.instant('openZaak.delinkSuccessful'),
|
|
4176
|
+
type: 'success',
|
|
4177
|
+
});
|
|
4178
|
+
this.zaakTypeLink$.next(null);
|
|
4179
|
+
},
|
|
4180
|
+
error: () => {
|
|
4181
|
+
this.globalNotificationService.showToast({
|
|
4182
|
+
title: this.translateService.instant('openZaak.delinkFailed'),
|
|
4183
|
+
type: 'error',
|
|
4184
|
+
});
|
|
4185
|
+
},
|
|
4731
4186
|
});
|
|
4732
4187
|
}
|
|
4733
4188
|
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');
|
|
4189
|
+
this.openZaakService
|
|
4190
|
+
.createZaakTypeLink(this.zaakTypeLinkRequest)
|
|
4191
|
+
.pipe(finalize(() => this.modalOpen$.next(false)))
|
|
4192
|
+
.subscribe({
|
|
4193
|
+
next: linkResult => {
|
|
4194
|
+
this.zaakTypeLink$.next(linkResult);
|
|
4195
|
+
this.zaakTypeLinkRequest = {
|
|
4196
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4197
|
+
caseVersionTag: this._caseVersionTag,
|
|
4198
|
+
createWithDossier: linkResult?.createWithDossier,
|
|
4199
|
+
rsin: linkResult?.rsin,
|
|
4200
|
+
zakenApiPluginConfigurationId: linkResult?.zakenApiPluginConfigurationId,
|
|
4201
|
+
zaakTypeUrl: linkResult?.zaakTypeUrl,
|
|
4202
|
+
};
|
|
4203
|
+
this.findZaakType(linkResult.zaakTypeUrl);
|
|
4204
|
+
this.findPluginConfiguration(linkResult.zakenApiPluginConfigurationId);
|
|
4205
|
+
this.globalNotificationService.showToast({
|
|
4206
|
+
title: this.translateService.instant('openZaak.linkSuccessful'),
|
|
4207
|
+
type: 'success',
|
|
4755
4208
|
});
|
|
4756
|
-
}
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4209
|
+
},
|
|
4210
|
+
error: () => {
|
|
4211
|
+
this.globalNotificationService.showToast({
|
|
4212
|
+
title: this.translateService.instant('openZaak.linkFailed'),
|
|
4213
|
+
type: 'error',
|
|
4214
|
+
});
|
|
4215
|
+
},
|
|
4760
4216
|
});
|
|
4761
4217
|
}
|
|
4762
|
-
|
|
4763
|
-
|
|
4218
|
+
findZaakType(zaakTypeUrl) {
|
|
4219
|
+
this.selectedZaakType = this.zaakTypes.find(zaakType => zaakType.url === zaakTypeUrl) ?? null;
|
|
4220
|
+
}
|
|
4221
|
+
findPluginConfiguration(pluginConfigurationId) {
|
|
4222
|
+
this.selectedPluginConfiguration =
|
|
4223
|
+
this.pluginConfigurations.find(pluginConfiguration => pluginConfiguration.id === pluginConfigurationId) ?? null;
|
|
4224
|
+
}
|
|
4225
|
+
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 }); }
|
|
4226
|
+
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
4227
|
}
|
|
4765
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, decorators: [{
|
|
4766
4229
|
type: Component,
|
|
4767
|
-
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4230
|
+
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4231
|
+
CommonModule,
|
|
4232
|
+
FormsModule,
|
|
4233
|
+
NotificationModule,
|
|
4234
|
+
TranslateModule,
|
|
4235
|
+
ButtonModule,
|
|
4236
|
+
IconModule,
|
|
4237
|
+
TilesModule,
|
|
4238
|
+
LayerModule,
|
|
4239
|
+
SpinnerModule,
|
|
4240
|
+
ModalModule,
|
|
4241
|
+
SelectModule$1,
|
|
4242
|
+
InputModule,
|
|
4243
|
+
ToggleModule,
|
|
4244
|
+
RenderInBodyComponent,
|
|
4245
|
+
], 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"] }]
|
|
4246
|
+
}], ctorParameters: () => [{ type: i2.GlobalNotificationService }, { type: i5$1.IconService }, { type: i5$3.OpenZaakService }, { type: i1$2.ActivatedRoute }, { type: i5.TranslateService }, { type: ZakenApiZaaktypeLinkService }] });
|
|
4247
|
+
|
|
4248
|
+
/*
|
|
4249
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4250
|
+
*
|
|
4251
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4252
|
+
* you may not use this file except in compliance with the License.
|
|
4253
|
+
* You may obtain a copy of the License at
|
|
4254
|
+
*
|
|
4255
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4256
|
+
*
|
|
4257
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4258
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4259
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4260
|
+
* See the License for the specific language governing permissions and
|
|
4261
|
+
* limitations under the License.
|
|
4262
|
+
*/
|
|
4772
4263
|
|
|
4773
4264
|
/*
|
|
4774
|
-
* Copyright 2015-
|
|
4265
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4775
4266
|
*
|
|
4776
4267
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4777
4268
|
* you may not use this file except in compliance with the License.
|
|
@@ -4787,7 +4278,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4787
4278
|
*/
|
|
4788
4279
|
|
|
4789
4280
|
/*
|
|
4790
|
-
* Copyright 2015-
|
|
4281
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4791
4282
|
*
|
|
4792
4283
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4793
4284
|
* you may not use this file except in compliance with the License.
|
|
@@ -4803,7 +4294,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4803
4294
|
*/
|
|
4804
4295
|
|
|
4805
4296
|
/*
|
|
4806
|
-
* Copyright 2015-
|
|
4297
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4807
4298
|
*
|
|
4808
4299
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4809
4300
|
* you may not use this file except in compliance with the License.
|
|
@@ -4819,7 +4310,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4819
4310
|
*/
|
|
4820
4311
|
|
|
4821
4312
|
/*
|
|
4822
|
-
* Copyright 2015-
|
|
4313
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4823
4314
|
*
|
|
4824
4315
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4825
4316
|
* you may not use this file except in compliance with the License.
|
|
@@ -4835,7 +4326,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4835
4326
|
*/
|
|
4836
4327
|
|
|
4837
4328
|
/*
|
|
4838
|
-
* Copyright 2015-
|
|
4329
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4839
4330
|
*
|
|
4840
4331
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4841
4332
|
* you may not use this file except in compliance with the License.
|
|
@@ -4849,9 +4340,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4849
4340
|
* See the License for the specific language governing permissions and
|
|
4850
4341
|
* limitations under the License.
|
|
4851
4342
|
*/
|
|
4852
|
-
class
|
|
4343
|
+
class CaseManagementZgwGeneralComponent {
|
|
4344
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwGeneralComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4345
|
+
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 }); }
|
|
4346
|
+
}
|
|
4347
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwGeneralComponent, decorators: [{
|
|
4348
|
+
type: Component,
|
|
4349
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
4350
|
+
CommonModule,
|
|
4351
|
+
ZakenApiZaaktypeLinkComponent,
|
|
4352
|
+
DocumentObjectenApiSyncComponent,
|
|
4353
|
+
MuuriDirectiveModule,
|
|
4354
|
+
DocumentenApiVersionComponent,
|
|
4355
|
+
], 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"] }]
|
|
4356
|
+
}] });
|
|
4357
|
+
|
|
4358
|
+
/*
|
|
4359
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4360
|
+
*
|
|
4361
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4362
|
+
* you may not use this file except in compliance with the License.
|
|
4363
|
+
* You may obtain a copy of the License at
|
|
4364
|
+
*
|
|
4365
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4366
|
+
*
|
|
4367
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4368
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4369
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4370
|
+
* See the License for the specific language governing permissions and
|
|
4371
|
+
* limitations under the License.
|
|
4372
|
+
*/
|
|
4373
|
+
class CaseManagementZgwService {
|
|
4853
4374
|
constructor() {
|
|
4854
|
-
this._DEFAULT_TAB = ZgwTabEnum.
|
|
4375
|
+
this._DEFAULT_TAB = ZgwTabEnum.GENERAL;
|
|
4855
4376
|
this._currentTab$ = new BehaviorSubject(this._DEFAULT_TAB);
|
|
4856
4377
|
}
|
|
4857
4378
|
get currentTab$() {
|
|
@@ -4863,10 +4384,10 @@ class DossierManagementZgwService {
|
|
|
4863
4384
|
resetToDefaultTab() {
|
|
4864
4385
|
this._currentTab$.next(this._DEFAULT_TAB);
|
|
4865
4386
|
}
|
|
4866
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4867
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4387
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4388
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, providedIn: 'root' }); }
|
|
4868
4389
|
}
|
|
4869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4390
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwService, decorators: [{
|
|
4870
4391
|
type: Injectable,
|
|
4871
4392
|
args: [{
|
|
4872
4393
|
providedIn: 'root',
|
|
@@ -4874,7 +4395,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4874
4395
|
}] });
|
|
4875
4396
|
|
|
4876
4397
|
/*
|
|
4877
|
-
* Copyright 2015-
|
|
4398
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4878
4399
|
*
|
|
4879
4400
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4880
4401
|
* you may not use this file except in compliance with the License.
|
|
@@ -4890,7 +4411,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4890
4411
|
*/
|
|
4891
4412
|
|
|
4892
4413
|
/*
|
|
4893
|
-
* Copyright 2015-
|
|
4414
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4894
4415
|
*
|
|
4895
4416
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4896
4417
|
* you may not use this file except in compliance with the License.
|
|
@@ -4904,19 +4425,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4904
4425
|
* See the License for the specific language governing permissions and
|
|
4905
4426
|
* limitations under the License.
|
|
4906
4427
|
*/
|
|
4907
|
-
class
|
|
4908
|
-
constructor(
|
|
4909
|
-
this.
|
|
4428
|
+
class CaseManagementZgwComponent {
|
|
4429
|
+
constructor(caseManagementZgwService, cdr, documentenApiVersionService, draftVersionService, route) {
|
|
4430
|
+
this.caseManagementZgwService = caseManagementZgwService;
|
|
4910
4431
|
this.cdr = cdr;
|
|
4911
4432
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
4433
|
+
this.draftVersionService = draftVersionService;
|
|
4912
4434
|
this.route = route;
|
|
4913
4435
|
this._viewInitialized$ = new BehaviorSubject(false);
|
|
4914
|
-
this.
|
|
4436
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
4437
|
+
this._supportedDocumentenApiFeatures$ = this._params$.pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey), switchMap((caseDefinitionKey) => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey ?? '')));
|
|
4438
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
4439
|
+
? of(false)
|
|
4440
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
4441
|
+
this.currentTab$ = this.caseManagementZgwService.currentTab$;
|
|
4915
4442
|
this.zgwTabs$ = combineLatest([
|
|
4916
4443
|
this._viewInitialized$,
|
|
4917
|
-
this.
|
|
4444
|
+
this.currentTab$,
|
|
4918
4445
|
this._supportedDocumentenApiFeatures$,
|
|
4919
4446
|
]).pipe(filter(([viewInitialized]) => viewInitialized), map(([_, currentTab, supportedDocumentenApiFeatures]) => [
|
|
4447
|
+
{
|
|
4448
|
+
class: 'no-padding-left-right no-padding-top-bottom',
|
|
4449
|
+
headingTranslationKey: 'caseManagement.tabs.general',
|
|
4450
|
+
tab: ZgwTabEnum.GENERAL,
|
|
4451
|
+
component: CaseManagementZgwGeneralComponent,
|
|
4452
|
+
},
|
|
4920
4453
|
{
|
|
4921
4454
|
class: 'no-padding-left-right no-padding-top-bottom',
|
|
4922
4455
|
headingTranslationKey: 'zgw.tabs.documentColumns',
|
|
@@ -4941,33 +4474,41 @@ class DossierManagementZgwComponent {
|
|
|
4941
4474
|
: []),
|
|
4942
4475
|
].map(zgwTab => ({ ...zgwTab, active: currentTab === zgwTab.tab }))), tap(zgwTabs => {
|
|
4943
4476
|
const activeTab = zgwTabs.length > 1 ? zgwTabs.find(tab => tab.active) : zgwTabs[0];
|
|
4477
|
+
if (!activeTab)
|
|
4478
|
+
return;
|
|
4944
4479
|
this._zgwTabContent.clear();
|
|
4945
4480
|
this._zgwTabContent.createComponent(activeTab.component);
|
|
4946
4481
|
this.cdr.detectChanges();
|
|
4947
4482
|
}));
|
|
4483
|
+
this.ZgwTabEnum = ZgwTabEnum;
|
|
4484
|
+
this.DRAFT_WARNING_MESSAGE = {
|
|
4485
|
+
[ZgwTabEnum.DOCUMENTEN_API_COLUMNS]: 'zgw.tabs.documentColumns',
|
|
4486
|
+
[ZgwTabEnum.DOCUMENTEN_API_UPLOAD_FIELDS]: 'zgw.tabs.documentUploadFields',
|
|
4487
|
+
[ZgwTabEnum.DOCUMENTEN_API_TAGS]: 'zgw.tabs.documentUploadFields',
|
|
4488
|
+
};
|
|
4948
4489
|
}
|
|
4949
4490
|
ngAfterViewInit() {
|
|
4950
4491
|
this._viewInitialized$.next(true);
|
|
4951
4492
|
}
|
|
4952
4493
|
ngOnDestroy() {
|
|
4953
|
-
this.
|
|
4494
|
+
this.caseManagementZgwService.resetToDefaultTab();
|
|
4954
4495
|
}
|
|
4955
4496
|
displayTab(tab) {
|
|
4956
|
-
this.
|
|
4497
|
+
this.caseManagementZgwService.currentTab = tab;
|
|
4957
4498
|
}
|
|
4958
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4959
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
4499
|
+
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 }); }
|
|
4500
|
+
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
4501
|
}
|
|
4961
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4502
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CaseManagementZgwComponent, decorators: [{
|
|
4962
4503
|
type: Component,
|
|
4963
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TabsModule, TranslateModule], template: "<!--\n ~ Copyright 2015-
|
|
4964
|
-
}], ctorParameters: () => [{ type:
|
|
4504
|
+
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"] }]
|
|
4505
|
+
}], ctorParameters: () => [{ type: CaseManagementZgwService }, { type: i0.ChangeDetectorRef }, { type: DocumentenApiVersionService }, { type: i2.DraftVersionService }, { type: i1$2.ActivatedRoute }], propDecorators: { _zgwTabContent: [{
|
|
4965
4506
|
type: ViewChild,
|
|
4966
4507
|
args: ['zgwTabContent', { read: ViewContainerRef }]
|
|
4967
4508
|
}] } });
|
|
4968
4509
|
|
|
4969
4510
|
/*
|
|
4970
|
-
* Copyright 2015-
|
|
4511
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4971
4512
|
*
|
|
4972
4513
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4973
4514
|
* you may not use this file except in compliance with the License.
|
|
@@ -4983,7 +4524,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4983
4524
|
*/
|
|
4984
4525
|
|
|
4985
4526
|
/*
|
|
4986
|
-
* Copyright 2015-
|
|
4527
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4987
4528
|
*
|
|
4988
4529
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4989
4530
|
* you may not use this file except in compliance with the License.
|
|
@@ -4998,8 +4539,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4998
4539
|
* limitations under the License.
|
|
4999
4540
|
*/
|
|
5000
4541
|
class ZgwModule {
|
|
5001
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5002
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4542
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4543
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, declarations: [DocumentenApiUploaderComponent], imports: [CommonModule,
|
|
5003
4544
|
FormioModule,
|
|
5004
4545
|
DropzoneModule,
|
|
5005
4546
|
TranslateModule,
|
|
@@ -5007,33 +4548,28 @@ class ZgwModule {
|
|
|
5007
4548
|
FileSizeModule,
|
|
5008
4549
|
ResourceModule,
|
|
5009
4550
|
RouterModule,
|
|
5010
|
-
DocumentenApiMetadataModalComponent,
|
|
5011
|
-
|
|
5012
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZgwModule, providers: [
|
|
4551
|
+
DocumentenApiMetadataModalComponent], exports: [DocumentenApiUploaderComponent] }); }
|
|
4552
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, providers: [
|
|
5013
4553
|
{
|
|
5014
4554
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5015
4555
|
useValue: {
|
|
5016
|
-
translationKey: '
|
|
5017
|
-
component:
|
|
4556
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4557
|
+
component: CaseManagementZgwComponent,
|
|
4558
|
+
tabRoute: 'zgw',
|
|
5018
4559
|
},
|
|
5019
4560
|
multi: true,
|
|
5020
4561
|
},
|
|
5021
4562
|
{
|
|
5022
4563
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5023
|
-
useValue:
|
|
4564
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5024
4565
|
},
|
|
5025
4566
|
{
|
|
5026
4567
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5027
|
-
useValue:
|
|
4568
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5028
4569
|
},
|
|
5029
4570
|
{
|
|
5030
|
-
provide:
|
|
5031
|
-
useValue: [
|
|
5032
|
-
DossierManagementLinkProcessComponent,
|
|
5033
|
-
DocumentenApiVersionComponent,
|
|
5034
|
-
DocumentObjectenApiSyncComponent,
|
|
5035
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5036
|
-
],
|
|
4571
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4572
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5037
4573
|
},
|
|
5038
4574
|
], imports: [CommonModule,
|
|
5039
4575
|
FormioModule,
|
|
@@ -5043,10 +4579,9 @@ class ZgwModule {
|
|
|
5043
4579
|
FileSizeModule,
|
|
5044
4580
|
ResourceModule,
|
|
5045
4581
|
RouterModule,
|
|
5046
|
-
DocumentenApiMetadataModalComponent
|
|
5047
|
-
CustomerModule] }); }
|
|
4582
|
+
DocumentenApiMetadataModalComponent] }); }
|
|
5048
4583
|
}
|
|
5049
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZgwModule, decorators: [{
|
|
5050
4585
|
type: NgModule,
|
|
5051
4586
|
args: [{
|
|
5052
4587
|
imports: [
|
|
@@ -5059,7 +4594,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5059
4594
|
ResourceModule,
|
|
5060
4595
|
RouterModule,
|
|
5061
4596
|
DocumentenApiMetadataModalComponent,
|
|
5062
|
-
CustomerModule,
|
|
5063
4597
|
],
|
|
5064
4598
|
declarations: [DocumentenApiUploaderComponent],
|
|
5065
4599
|
exports: [DocumentenApiUploaderComponent],
|
|
@@ -5067,34 +4601,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5067
4601
|
{
|
|
5068
4602
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5069
4603
|
useValue: {
|
|
5070
|
-
translationKey: '
|
|
5071
|
-
component:
|
|
4604
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4605
|
+
component: CaseManagementZgwComponent,
|
|
4606
|
+
tabRoute: 'zgw',
|
|
5072
4607
|
},
|
|
5073
4608
|
multi: true,
|
|
5074
4609
|
},
|
|
5075
4610
|
{
|
|
5076
4611
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5077
|
-
useValue:
|
|
4612
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5078
4613
|
},
|
|
5079
4614
|
{
|
|
5080
4615
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5081
|
-
useValue:
|
|
4616
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5082
4617
|
},
|
|
5083
4618
|
{
|
|
5084
|
-
provide:
|
|
5085
|
-
useValue: [
|
|
5086
|
-
DossierManagementLinkProcessComponent,
|
|
5087
|
-
DocumentenApiVersionComponent,
|
|
5088
|
-
DocumentObjectenApiSyncComponent,
|
|
5089
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5090
|
-
],
|
|
4619
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4620
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5091
4621
|
},
|
|
5092
4622
|
],
|
|
5093
4623
|
}]
|
|
5094
4624
|
}] });
|
|
5095
4625
|
|
|
5096
4626
|
/*
|
|
5097
|
-
* Copyright 2015-
|
|
4627
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5098
4628
|
*
|
|
5099
4629
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5100
4630
|
* you may not use this file except in compliance with the License.
|
|
@@ -5116,5 +4646,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5116
4646
|
* Generated bundle index. Do not edit.
|
|
5117
4647
|
*/
|
|
5118
4648
|
|
|
5119
|
-
export { COLUMN_VIEW_TYPES, CONFIDENTIALITY_LEVELS,
|
|
4649
|
+
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
4650
|
//# sourceMappingURL=valtimo-zgw.mjs.map
|