@valtimo/zgw 12.19.0 → 13.0.1-next-minor.81
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 +749 -1201
- 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-edit-form.d.ts.map +1 -1
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts +5 -4
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts.map +1 -1
- package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.formio.d.ts.map +1 -1
- package/lib/modules/documenten-api/models/documenten-api-metadata.model.d.ts +2 -0
- package/lib/modules/documenten-api/models/documenten-api-metadata.model.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/notificaties-api/components/failed-notification-detail/failed-notification-detail.component.d.ts.map +1 -1
- package/lib/modules/notificaties-api/components/failed-notifications-page/failed-notifications-page.component.d.ts +3 -3
- package/lib/modules/notificaties-api/components/failed-notifications-page/failed-notifications-page.component.d.ts.map +1 -1
- package/lib/modules/notificaties-api/services/failed-notifications.service.d.ts +1 -1
- package/lib/modules/notificaties-api/services/failed-notifications.service.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 +2 -3
- 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 -542
- 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 -268
- 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 -23
- package/esm2022/lib/modules/notificaties-api/components/failed-notification-detail/failed-notification-detail.component.mjs +0 -85
- package/esm2022/lib/modules/notificaties-api/components/failed-notifications-page/failed-notifications-page.component.mjs +0 -123
- package/esm2022/lib/modules/notificaties-api/components/index.mjs +0 -3
- package/esm2022/lib/modules/notificaties-api/index.mjs +0 -5
- package/esm2022/lib/modules/notificaties-api/models/failed-notification.model.mjs +0 -23
- package/esm2022/lib/modules/notificaties-api/models/index.mjs +0 -2
- package/esm2022/lib/modules/notificaties-api/notificaties-api-routing.module.mjs +0 -47
- package/esm2022/lib/modules/notificaties-api/services/failed-notifications.service.mjs +0 -56
- package/esm2022/lib/modules/notificaties-api/services/index.mjs +0 -2
- 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 -126
- 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,39 @@
|
|
|
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, NgModule, ViewContainerRef } 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, ROLE_ADMIN, 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, EMPTY, 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, ROLE_ADMIN, CASE_MANAGEMENT_TAB_TOKEN, ZGW_OBJECT_TYPE_COMPONENT_TOKEN, ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN, ZGW_CASE_CONFIGURATION_EXTENSIONS_TOKEN } from '@valtimo/config';
|
|
14
|
+
import { Validators, ReactiveFormsModule, FormGroup, FormControl, FormsModule } from '@angular/forms';
|
|
15
|
+
import * as i3 from '@valtimo/components';
|
|
16
|
+
import { CARBON_CONSTANTS, ViewType, CarbonListModule, ConfirmationModalModule, InputLabelModule, InputModule as InputModule$1, SelectModule, VModalModule, DEFAULT_PAGINATION, DEFAULT_PAGINATOR_CONFIG, CarbonListComponent, registerCustomFormioComponent, ParagraphModule, TableModule, FormIoModule, FormModule, SpinnerModule, ValtimoCdsModalDirective, RenderInBodyComponent, MuuriDirectiveModule, DropzoneModule, FileSizeModule } from '@valtimo/components';
|
|
16
17
|
import * as i1 from '@angular/common/http';
|
|
17
18
|
import { HttpParams } from '@angular/common/http';
|
|
19
|
+
import { take, tap as tap$1, map as map$1, filter as filter$1, switchMap as switchMap$1, catchError, shareReplay } from 'rxjs/operators';
|
|
18
20
|
import * as i1$2 from '@angular/router';
|
|
19
21
|
import { RouterModule } from '@angular/router';
|
|
20
|
-
import { TrashCan16, Filter16, TagGroup16, Upload16 } from '@carbon/icons';
|
|
21
|
-
import * as
|
|
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
|
|
29
|
+
import * as i5$2 from 'keycloak-angular';
|
|
30
|
+
import * as i7 from '@valtimo/access-control';
|
|
31
|
+
import * as i10 from '@valtimo/security';
|
|
30
32
|
import { AuthGuardService } from '@valtimo/security';
|
|
31
|
-
import * as i9 from '@valtimo/access-control';
|
|
32
|
-
import * as i4$1 from 'ngx-toastr';
|
|
33
33
|
import { FormioModule } from '@formio/angular';
|
|
34
34
|
|
|
35
35
|
/*
|
|
36
|
-
* Copyright 2015-
|
|
36
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
37
37
|
*
|
|
38
38
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
39
39
|
* you may not use this file except in compliance with the License.
|
|
@@ -52,10 +52,11 @@ var ZgwTabEnum;
|
|
|
52
52
|
ZgwTabEnum["DOCUMENTEN_API_COLUMNS"] = "documentenApiColumns";
|
|
53
53
|
ZgwTabEnum["DOCUMENTEN_API_TAGS"] = "documentenApiTags";
|
|
54
54
|
ZgwTabEnum["DOCUMENTEN_API_UPLOAD_FIELDS"] = "documentenApiUploadFields";
|
|
55
|
+
ZgwTabEnum["GENERAL"] = "general";
|
|
55
56
|
})(ZgwTabEnum || (ZgwTabEnum = {}));
|
|
56
57
|
|
|
57
58
|
/*
|
|
58
|
-
* Copyright 2015-
|
|
59
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
59
60
|
*
|
|
60
61
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
61
62
|
* you may not use this file except in compliance with the License.
|
|
@@ -75,8 +76,8 @@ class DocumentenApiColumnService extends BaseApiService {
|
|
|
75
76
|
super(http, configService);
|
|
76
77
|
this.http = http;
|
|
77
78
|
}
|
|
78
|
-
getConfiguredColumns(
|
|
79
|
-
return this.http.get(this.getApiUrl(`/v1/case-definition/${
|
|
79
|
+
getConfiguredColumns(caseDefinitionKey) {
|
|
80
|
+
return this.http.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/zgw-document-column`));
|
|
80
81
|
}
|
|
81
82
|
getAdminConfiguredColumns(caseDefinitionName) {
|
|
82
83
|
return this.http.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document-column`));
|
|
@@ -93,10 +94,10 @@ class DocumentenApiColumnService extends BaseApiService {
|
|
|
93
94
|
updateConfiguredColumns(caseDefinitionKey, orderColumns) {
|
|
94
95
|
return this.http.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/zgw-document-column`), orderColumns);
|
|
95
96
|
}
|
|
96
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
97
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
97
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
98
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnService, providedIn: 'root' }); }
|
|
98
99
|
}
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnService, decorators: [{
|
|
100
101
|
type: Injectable,
|
|
101
102
|
args: [{
|
|
102
103
|
providedIn: 'root',
|
|
@@ -104,7 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
104
105
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
105
106
|
|
|
106
107
|
/*
|
|
107
|
-
* Copyright 2015-
|
|
108
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
108
109
|
*
|
|
109
110
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
110
111
|
* you may not use this file except in compliance with the License.
|
|
@@ -145,10 +146,10 @@ class DocumentenApiDocumentService extends BaseApiService {
|
|
|
145
146
|
updateUploadField(caseDefinitionName, uploadField) {
|
|
146
147
|
return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/upload-field`), uploadField);
|
|
147
148
|
}
|
|
148
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
149
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
149
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiDocumentService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
150
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiDocumentService, providedIn: 'root' }); }
|
|
150
151
|
}
|
|
151
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiDocumentService, decorators: [{
|
|
152
153
|
type: Injectable,
|
|
153
154
|
args: [{
|
|
154
155
|
providedIn: 'root',
|
|
@@ -156,7 +157,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
156
157
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
157
158
|
|
|
158
159
|
/*
|
|
159
|
-
* Copyright 2015-
|
|
160
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
160
161
|
*
|
|
161
162
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
162
163
|
* you may not use this file except in compliance with the License.
|
|
@@ -179,22 +180,22 @@ class DocumentenApiLinkProcessService extends BaseApiService {
|
|
|
179
180
|
getProcessDefinitions() {
|
|
180
181
|
return this.httpClient.get(this.getApiUrl('/v1/process/definition'));
|
|
181
182
|
}
|
|
182
|
-
getLinkedUploadProcess(
|
|
183
|
-
return this.httpClient.get(this.getApiUrl(
|
|
183
|
+
getLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
184
|
+
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process/DOCUMENT_UPLOAD`));
|
|
184
185
|
}
|
|
185
|
-
updateLinkedUploadProcess(
|
|
186
|
-
return this.httpClient.put(this.getApiUrl(
|
|
186
|
+
updateLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag, processDefinitionKey) {
|
|
187
|
+
return this.httpClient.put(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process`), {
|
|
187
188
|
processDefinitionKey,
|
|
188
189
|
linkType: 'DOCUMENT_UPLOAD',
|
|
189
190
|
});
|
|
190
191
|
}
|
|
191
|
-
deleteLinkedUploadProcess(
|
|
192
|
-
return this.httpClient.delete(this.getApiUrl(
|
|
192
|
+
deleteLinkedUploadProcess(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
193
|
+
return this.httpClient.delete(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/feature-process/DOCUMENT_UPLOAD`));
|
|
193
194
|
}
|
|
194
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
195
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
195
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiLinkProcessService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
196
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiLinkProcessService, providedIn: 'root' }); }
|
|
196
197
|
}
|
|
197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiLinkProcessService, decorators: [{
|
|
198
199
|
type: Injectable,
|
|
199
200
|
args: [{
|
|
200
201
|
providedIn: 'root',
|
|
@@ -222,10 +223,10 @@ class DocumentenApiTagService extends BaseApiService {
|
|
|
222
223
|
deleteTags(caseDefinitionName, tagKeys) {
|
|
223
224
|
return this.http.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/trefwoord`), { body: tagKeys });
|
|
224
225
|
}
|
|
225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
226
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
226
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
227
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagService, providedIn: 'root' }); }
|
|
227
228
|
}
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
229
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagService, decorators: [{
|
|
229
230
|
type: Injectable,
|
|
230
231
|
args: [{
|
|
231
232
|
providedIn: 'root',
|
|
@@ -233,7 +234,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
233
234
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
234
235
|
|
|
235
236
|
/*
|
|
236
|
-
* Copyright 2015-
|
|
237
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
237
238
|
*
|
|
238
239
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
239
240
|
* you may not use this file except in compliance with the License.
|
|
@@ -260,16 +261,16 @@ class DocumentenApiVersionService extends BaseApiService {
|
|
|
260
261
|
getManagementApiVersion(caseDefinitionName) {
|
|
261
262
|
return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/documenten-api/version`));
|
|
262
263
|
}
|
|
263
|
-
getSupportedApiFeatures(
|
|
264
|
-
return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${
|
|
264
|
+
getSupportedApiFeatures(caseDefinitionKey) {
|
|
265
|
+
return this.httpClient.get(this.getApiUrl(`/v1/case-definition/${caseDefinitionKey}/documenten-api/version`));
|
|
265
266
|
}
|
|
266
267
|
refresh() {
|
|
267
268
|
this._refresh$.next(null);
|
|
268
269
|
}
|
|
269
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
270
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
270
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiVersionService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
271
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiVersionService, providedIn: 'root' }); }
|
|
271
272
|
}
|
|
272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiVersionService, decorators: [{
|
|
273
274
|
type: Injectable,
|
|
274
275
|
args: [{
|
|
275
276
|
providedIn: 'root',
|
|
@@ -277,7 +278,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
277
278
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
278
279
|
|
|
279
280
|
/*
|
|
280
|
-
* Copyright 2015-
|
|
281
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
281
282
|
*
|
|
282
283
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
283
284
|
* you may not use this file except in compliance with the License.
|
|
@@ -293,7 +294,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
293
294
|
*/
|
|
294
295
|
|
|
295
296
|
/*
|
|
296
|
-
* Copyright 2015-
|
|
297
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
297
298
|
*
|
|
298
299
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
299
300
|
* you may not use this file except in compliance with the License.
|
|
@@ -423,10 +424,10 @@ class DocumentenApiColumnModalComponent {
|
|
|
423
424
|
this._notificationMessage$.next(this.showRadioButtons ? 'zgw.columns.defaultWarning' : 'zgw.columns.notSortable');
|
|
424
425
|
}));
|
|
425
426
|
}
|
|
426
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
427
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
427
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: i5.TranslateService }, { token: DocumentenApiColumnService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
428
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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
429
|
}
|
|
429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnModalComponent, decorators: [{
|
|
430
431
|
type: Component,
|
|
431
432
|
args: [{ selector: 'valtimo-documenten-api-column-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
432
433
|
CommonModule,
|
|
@@ -439,8 +440,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
439
440
|
RadioModule,
|
|
440
441
|
NotificationModule,
|
|
441
442
|
LayerModule,
|
|
442
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
443
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type:
|
|
443
|
+
], 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"] }]
|
|
444
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i5.TranslateService }, { type: DocumentenApiColumnService }], propDecorators: { definitionName: [{
|
|
444
445
|
type: Input
|
|
445
446
|
}], prefillColumn: [{
|
|
446
447
|
type: Input
|
|
@@ -455,7 +456,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
455
456
|
}] } });
|
|
456
457
|
|
|
457
458
|
/*
|
|
458
|
-
* Copyright 2015-
|
|
459
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
459
460
|
*
|
|
460
461
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
461
462
|
* you may not use this file except in compliance with the License.
|
|
@@ -470,26 +471,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
470
471
|
* limitations under the License.
|
|
471
472
|
*/
|
|
472
473
|
class DocumentenApiColumnsComponent {
|
|
473
|
-
|
|
474
|
-
return this._documentDefinitionName$;
|
|
475
|
-
}
|
|
476
|
-
constructor(route, zgwDocumentColumnService) {
|
|
474
|
+
constructor(route, zgwDocumentColumnService, editPermissionsService) {
|
|
477
475
|
this.route = route;
|
|
478
476
|
this.zgwDocumentColumnService = zgwDocumentColumnService;
|
|
477
|
+
this.editPermissionsService = editPermissionsService;
|
|
479
478
|
this._reload$ = new BehaviorSubject(null);
|
|
480
|
-
this.
|
|
479
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey));
|
|
480
|
+
this.caseDefinitionVersionTag$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionVersionTag ?? ''));
|
|
481
|
+
this.hasEditPermissions$ = combineLatest([
|
|
482
|
+
this.caseDefinitionKey$,
|
|
483
|
+
this.caseDefinitionVersionTag$,
|
|
484
|
+
]).pipe(switchMap(([caseDefinitionKey, caseDefinitionVersionTag]) => this.editPermissionsService.hasEditPermissions(caseDefinitionKey, caseDefinitionVersionTag)));
|
|
481
485
|
this.loading$ = new BehaviorSubject(true);
|
|
482
486
|
this.configuredColumns$ = combineLatest([
|
|
483
|
-
this.
|
|
487
|
+
this.caseDefinitionKey$,
|
|
484
488
|
this._reload$,
|
|
485
489
|
]).pipe(tap(([_, reload]) => {
|
|
486
490
|
if (reload === null)
|
|
487
491
|
this.loading$.next(true);
|
|
488
|
-
}), switchMap(([
|
|
492
|
+
}), switchMap(([caseDefinitionKey]) => this.zgwDocumentColumnService.getAdminConfiguredColumns(caseDefinitionKey)), tap(() => {
|
|
489
493
|
this.loading$.next(false);
|
|
490
494
|
}));
|
|
491
|
-
this.configurableColumns$ = this.
|
|
492
|
-
this.zgwDocumentColumnService.getAdminConfigurableColumns(
|
|
495
|
+
this.configurableColumns$ = this.caseDefinitionKey$.pipe(switchMap((caseDefinitionKey) => combineLatest([
|
|
496
|
+
this.zgwDocumentColumnService.getAdminConfigurableColumns(caseDefinitionKey),
|
|
493
497
|
this.configuredColumns$,
|
|
494
498
|
])), map(([configurableColumns, configuredColumns]) => {
|
|
495
499
|
const configuredKeys = configuredColumns.map((column) => column.key);
|
|
@@ -507,7 +511,6 @@ class DocumentenApiColumnsComponent {
|
|
|
507
511
|
type: 'danger',
|
|
508
512
|
},
|
|
509
513
|
];
|
|
510
|
-
this.CARBON_THEME = 'g10';
|
|
511
514
|
this.columnModalType$ = new BehaviorSubject('closed');
|
|
512
515
|
this.prefillColumn$ = new BehaviorSubject(undefined);
|
|
513
516
|
this.columnToUpdate$ = new BehaviorSubject(undefined);
|
|
@@ -534,8 +537,12 @@ class DocumentenApiColumnsComponent {
|
|
|
534
537
|
this.showDeleteModal$.next(true);
|
|
535
538
|
}
|
|
536
539
|
openEditModal(column) {
|
|
537
|
-
this.
|
|
538
|
-
|
|
540
|
+
this.hasEditPermissions$
|
|
541
|
+
.pipe(filter(hasPermission => hasPermission), take(1))
|
|
542
|
+
.subscribe(() => {
|
|
543
|
+
this.prefillColumn$.next(column);
|
|
544
|
+
this.columnModalType$.next('edit');
|
|
545
|
+
});
|
|
539
546
|
}
|
|
540
547
|
openAddModal() {
|
|
541
548
|
this.columnModalType$.next('add');
|
|
@@ -559,10 +566,10 @@ class DocumentenApiColumnsComponent {
|
|
|
559
566
|
reload(noAnimation = false) {
|
|
560
567
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
561
568
|
}
|
|
562
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
563
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
569
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiColumnService }, { token: i2.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
570
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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
571
|
}
|
|
565
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
572
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiColumnsComponent, decorators: [{
|
|
566
573
|
type: Component,
|
|
567
574
|
args: [{ selector: 'valtimo-documenten-api-columns', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
568
575
|
CommonModule,
|
|
@@ -573,8 +580,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
573
580
|
TagModule,
|
|
574
581
|
ButtonModule,
|
|
575
582
|
IconModule,
|
|
576
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
577
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiColumnService }], propDecorators: { columnKeyTemplate: [{
|
|
583
|
+
], 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"] }]
|
|
584
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiColumnService }, { type: i2.EditPermissionsService }], propDecorators: { columnKeyTemplate: [{
|
|
578
585
|
type: ViewChild,
|
|
579
586
|
args: ['columnKeyTemplate']
|
|
580
587
|
}], defaultSortTemplate: [{
|
|
@@ -583,7 +590,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
583
590
|
}] } });
|
|
584
591
|
|
|
585
592
|
/*
|
|
586
|
-
* Copyright 2015-
|
|
593
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
587
594
|
*
|
|
588
595
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
589
596
|
* you may not use this file except in compliance with the License.
|
|
@@ -616,7 +623,7 @@ const STATUS_ITEMS = [
|
|
|
616
623
|
const LANGUAGE_ITEMS = ['nld', 'eng', 'deu'];
|
|
617
624
|
|
|
618
625
|
/*
|
|
619
|
-
* Copyright 2015-
|
|
626
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
620
627
|
*
|
|
621
628
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
622
629
|
* you may not use this file except in compliance with the License.
|
|
@@ -652,7 +659,7 @@ var DOCUMENTEN_COLUMN_KEYS;
|
|
|
652
659
|
})(DOCUMENTEN_COLUMN_KEYS || (DOCUMENTEN_COLUMN_KEYS = {}));
|
|
653
660
|
|
|
654
661
|
/*
|
|
655
|
-
* Copyright 2015-
|
|
662
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
656
663
|
*
|
|
657
664
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
658
665
|
* you may not use this file except in compliance with the License.
|
|
@@ -676,7 +683,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
676
683
|
};
|
|
677
684
|
|
|
678
685
|
/*
|
|
679
|
-
* Copyright 2015-
|
|
686
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
680
687
|
*
|
|
681
688
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
682
689
|
* you may not use this file except in compliance with the License.
|
|
@@ -692,7 +699,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
692
699
|
*/
|
|
693
700
|
|
|
694
701
|
/*
|
|
695
|
-
* Copyright 2015-
|
|
702
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
696
703
|
*
|
|
697
704
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
698
705
|
* you may not use this file except in compliance with the License.
|
|
@@ -708,7 +715,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
708
715
|
*/
|
|
709
716
|
|
|
710
717
|
/*
|
|
711
|
-
* Copyright 2015-
|
|
718
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
712
719
|
*
|
|
713
720
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
714
721
|
* you may not use this file except in compliance with the License.
|
|
@@ -724,7 +731,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
724
731
|
*/
|
|
725
732
|
|
|
726
733
|
/*
|
|
727
|
-
* Copyright 2015-
|
|
734
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
728
735
|
*
|
|
729
736
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
730
737
|
* you may not use this file except in compliance with the License.
|
|
@@ -740,7 +747,7 @@ const COLUMN_VIEW_TYPES = {
|
|
|
740
747
|
*/
|
|
741
748
|
|
|
742
749
|
/*
|
|
743
|
-
* Copyright 2015-
|
|
750
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
744
751
|
*
|
|
745
752
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
746
753
|
* you may not use this file except in compliance with the License.
|
|
@@ -755,6 +762,21 @@ const COLUMN_VIEW_TYPES = {
|
|
|
755
762
|
* limitations under the License.
|
|
756
763
|
*/
|
|
757
764
|
|
|
765
|
+
/*
|
|
766
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
767
|
+
*
|
|
768
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
769
|
+
* you may not use this file except in compliance with the License.
|
|
770
|
+
* You may obtain a copy of the License at
|
|
771
|
+
*
|
|
772
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
773
|
+
*
|
|
774
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
775
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
776
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
777
|
+
* See the License for the specific language governing permissions and
|
|
778
|
+
* limitations under the License.
|
|
779
|
+
*/
|
|
758
780
|
class DocumentenApiFilterComponent {
|
|
759
781
|
constructor(documentService, fb, iconService, route, translateService, documentenApiTagService) {
|
|
760
782
|
this.documentService = documentService;
|
|
@@ -793,16 +815,17 @@ class DocumentenApiFilterComponent {
|
|
|
793
815
|
selected: filter?.vertrouwelijkheidaanduiding === confidentialityLevel,
|
|
794
816
|
id: confidentialityLevel,
|
|
795
817
|
}))), startWith([]));
|
|
796
|
-
this.
|
|
797
|
-
|
|
818
|
+
this._context = getCaseManagementRouteParams(this.route);
|
|
819
|
+
this.informationObjectTypes$ = this._context.pipe(switchMap(params => combineLatest([
|
|
820
|
+
this.documentService.getDocumentTypesForCase(params.caseDefinitionKey, params.caseDefinitionVersionTag),
|
|
798
821
|
this._filter$,
|
|
799
822
|
])), map(([types, filter]) => types.map((type) => ({
|
|
800
823
|
content: type.name,
|
|
801
824
|
selected: filter?.informatieobjecttype === type.url,
|
|
802
825
|
id: type.url,
|
|
803
826
|
}))), startWith([]));
|
|
804
|
-
this.tags$ = this.route.paramMap.pipe(filter((paramMap) => !!paramMap.get('
|
|
805
|
-
this.documentenApiTagService.getTags(paramMap.get('
|
|
827
|
+
this.tags$ = this.route.paramMap.pipe(filter((paramMap) => !!paramMap.get('caseDefinitionKey')), switchMap((paramMap) => combineLatest([
|
|
828
|
+
this.documentenApiTagService.getTags(paramMap.get('caseDefinitionKey') ?? ''),
|
|
806
829
|
this.route.queryParamMap,
|
|
807
830
|
])), map(([tags, queryParamMap]) => {
|
|
808
831
|
const selectedTags = this.convertTrefwoordenParam(queryParamMap['params']?.trefwoorden).map((item) => item.content);
|
|
@@ -887,12 +910,12 @@ class DocumentenApiFilterComponent {
|
|
|
887
910
|
selected: true,
|
|
888
911
|
}));
|
|
889
912
|
}
|
|
890
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
891
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
913
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", 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 }); }
|
|
914
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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}::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: "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
915
|
}
|
|
893
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
916
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiFilterComponent, decorators: [{
|
|
894
917
|
type: Component,
|
|
895
|
-
args: [{ selector: 'valtimo-
|
|
918
|
+
args: [{ selector: 'valtimo-case-detail-tab-documenten-api-filter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
896
919
|
CommonModule,
|
|
897
920
|
ButtonModule,
|
|
898
921
|
DatePickerInputModule,
|
|
@@ -902,8 +925,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
902
925
|
InputModule,
|
|
903
926
|
TranslateModule,
|
|
904
927
|
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:
|
|
928
|
+
], 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}::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"] }]
|
|
929
|
+
}], 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
930
|
type: ViewChild,
|
|
908
931
|
args: ['creationDateFrom']
|
|
909
932
|
}], creationDateToPicker: [{
|
|
@@ -914,7 +937,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
914
937
|
}] } });
|
|
915
938
|
|
|
916
939
|
/*
|
|
917
|
-
* Copyright 2015-
|
|
940
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
918
941
|
*
|
|
919
942
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
920
943
|
* you may not use this file except in compliance with the License.
|
|
@@ -1052,7 +1075,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1052
1075
|
get bestandsnaam() {
|
|
1053
1076
|
return this.documentenApiMetadataForm.get('bestandsnaam');
|
|
1054
1077
|
}
|
|
1055
|
-
constructor(route, documentService, documentenApiTagService, fb, keycloakService, modalService, translateService, valtimoModalService, documentenApiVersionService) {
|
|
1078
|
+
constructor(route, documentService, documentenApiTagService, fb, keycloakService, modalService, translateService, valtimoModalService, documentenApiVersionService, formioStateService) {
|
|
1056
1079
|
this.route = route;
|
|
1057
1080
|
this.documentService = documentService;
|
|
1058
1081
|
this.documentenApiTagService = documentenApiTagService;
|
|
@@ -1062,6 +1085,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1062
1085
|
this.translateService = translateService;
|
|
1063
1086
|
this.valtimoModalService = valtimoModalService;
|
|
1064
1087
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1088
|
+
this.formioStateService = formioStateService;
|
|
1065
1089
|
this.hideFields = [];
|
|
1066
1090
|
this.defaultValues = {};
|
|
1067
1091
|
this.supportsTrefwoorden = false;
|
|
@@ -1132,7 +1156,7 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1132
1156
|
this.translateService.stream('key'),
|
|
1133
1157
|
]).pipe(tap$1(([additionalDocumentDate, currentStatus]) => {
|
|
1134
1158
|
this.formData$
|
|
1135
|
-
.pipe(filter(formData => !!formData), take(1))
|
|
1159
|
+
.pipe(filter(formData => !!formData), take$1(1))
|
|
1136
1160
|
.subscribe(formData => {
|
|
1137
1161
|
if (additionalDocumentDate === 'received' &&
|
|
1138
1162
|
(formData.status === 'in_bewerking' || formData.status === 'ter_vaststelling')) {
|
|
@@ -1145,10 +1169,10 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1145
1169
|
selected: currentStatus === status,
|
|
1146
1170
|
}))));
|
|
1147
1171
|
this.tagItems$ = combineLatest([
|
|
1148
|
-
this.valtimoModalService.
|
|
1172
|
+
this.valtimoModalService.caseDefinitionKey$,
|
|
1149
1173
|
this.tagFormControl.valueChanges.pipe(startWith(this.tagFormControl.value)),
|
|
1150
|
-
]).pipe(filter(([
|
|
1151
|
-
this.documentenApiTagService.getTags(
|
|
1174
|
+
]).pipe(filter(([caseDefinitionKey]) => !!caseDefinitionKey), switchMap(([caseDefinitionKey, tagFormControlValue]) => combineLatest([
|
|
1175
|
+
this.documentenApiTagService.getTags(caseDefinitionKey),
|
|
1152
1176
|
of(tagFormControlValue),
|
|
1153
1177
|
])), map(([tags, tagFormControlValue]) => tags.map(tag => ({
|
|
1154
1178
|
id: tag.value,
|
|
@@ -1166,11 +1190,15 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1166
1190
|
selected: currentLanguage === language,
|
|
1167
1191
|
}));
|
|
1168
1192
|
}));
|
|
1193
|
+
this.documentId$ = combineLatest([
|
|
1194
|
+
this.formioStateService.documentId$,
|
|
1195
|
+
this.route.params.pipe(map(params => params?.documentId ?? null)),
|
|
1196
|
+
]).pipe(map(([formIoDocumentId, routeDocumentId]) => formIoDocumentId || routeDocumentId));
|
|
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({
|
|
@@ -1350,11 +1381,8 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1350
1381
|
}
|
|
1351
1382
|
openDocumentDefinitionSubscription() {
|
|
1352
1383
|
this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
|
|
1353
|
-
.pipe(map(([params, firstChildParams]) => (params?.
|
|
1354
|
-
.subscribe(
|
|
1355
|
-
}
|
|
1356
|
-
setAdditionalDate(value) {
|
|
1357
|
-
this.additionalDocumentDate$.next(value);
|
|
1384
|
+
.pipe(map(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter(caseDefinitionKey => !!caseDefinitionKey))
|
|
1385
|
+
.subscribe(caseDefinitionKey => this.valtimoModalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
1358
1386
|
}
|
|
1359
1387
|
areAllFieldsHidden() {
|
|
1360
1388
|
return (this.hideFields.includes('aanvullendeDatum') &&
|
|
@@ -1369,10 +1397,10 @@ class DocumentenApiMetadataModalComponent {
|
|
|
1369
1397
|
this.hideFields.includes('status') &&
|
|
1370
1398
|
this.hideFields.includes('trefwoorden'));
|
|
1371
1399
|
}
|
|
1372
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1373
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DocumentenApiMetadataModalComponent, isStandalone: true, selector: "valtimo-documenten-api-metadata-modal", inputs: { disabled$: "disabled$", file$: "file$", hideFields: "hideFields", defaultValues: "defaultValues", disableAuthor: "disableAuthor", disableConfidentialityLevel: "disableConfidentialityLevel", disableDescription: "disableDescription", disableDocumentTitle: "disableDocumentTitle", disableDocumentType: "disableDocumentType", disableFilename: "disableFilename", disableLanguage: "disableLanguage", disableStatus: "disableStatus", supportsTrefwoorden: "supportsTrefwoorden", disableCreationDate: "disableCreationDate", isEditMode: "isEditMode", open: "open" }, outputs: { metadata: "metadata", modalClose: "modalClose" }, viewQueries: [{ propertyName: "metadataModal", first: true, predicate: ["metadataModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width:100%}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i6.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i6.TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i6.TextInputLabelComponent, selector: "cds-text-label, ibm-text-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textInputTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i6.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i6.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "ngmodule", type: ComboBoxModule }, { kind: "component", type: i6.ComboBox, selector: "cds-combo-box, ibm-combo-box", inputs: ["placeholder", "openMenuAria", "closeMenuAria", "clearSelectionsTitle", "clearSelectionsAria", "clearSelectionTitle", "clearSelectionAria", "id", "labelId", "items", "type", "size", "itemValueKey", "label", "hideLabel", "helperText", "appendInline", "invalid", "invalidText", "warn", "warnText", "maxLength", "theme", "selectionFeedback", "autocomplete", "dropUp", "disabled"], outputs: ["selected", "submit", "close", "search", "clear"] }, { kind: "component", type: i6.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i6.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i6.DatePicker, selector: "cds-date-picker, ibm-date-picker", inputs: ["range", "dateFormat", "language", "label", "helperText", "rangeHelperText", "rangeLabel", "placeholder", "ariaLabel", "inputPattern", "id", "value", "theme", "disabled", "invalid", "invalidText", "warn", "warnText", "size", "rangeInvalid", "rangeInvalidText", "rangeWarn", "rangeWarnText", "skeleton", "plugins", "flatpickrOptions"], outputs: ["valueChange", "onClose"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "ngmodule", type: IconModule }, { kind: "ngmodule", type: InputLabelModule }, { kind: "ngmodule", type: InputModule$1 }, { kind: "ngmodule", type: ModalModule }, { kind: "directive", type: i6.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "ngmodule", type: RadioModule }, { kind: "component", type: i6.Radio, selector: "cds-radio, ibm-radio", inputs: ["checked", "name", "disabled", "labelPlacement", "ariaLabelledby", "ariaLabel", "required", "value", "skeleton", "id"], outputs: ["change"] }, { kind: "component", type: i6.RadioGroup, selector: "cds-radio-group, ibm-radio-group", inputs: ["selected", "value", "name", "disabled", "skeleton", "orientation", "labelPlacement", "legend", "ariaLabel", "ariaLabelledby", "helperText", "invalid", "invalidText", "warn", "warnText"], outputs: ["change"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: SelectModule }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "component", type: i6.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3$1.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: LayerModule }, { kind: "directive", type: i6.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }] }); }
|
|
1400
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", 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: i3.FormIoStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1401
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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 <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"] }] }); }
|
|
1374
1402
|
}
|
|
1375
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1403
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiMetadataModalComponent, decorators: [{
|
|
1376
1404
|
type: Component,
|
|
1377
1405
|
args: [{ selector: 'valtimo-documenten-api-metadata-modal', standalone: true, imports: [
|
|
1378
1406
|
ButtonModule,
|
|
@@ -1393,8 +1421,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1393
1421
|
TranslateModule,
|
|
1394
1422
|
VModalModule,
|
|
1395
1423
|
LayerModule,
|
|
1396
|
-
], 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"] }]
|
|
1397
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type:
|
|
1424
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal\n #metadataModal\n *ngIf=\"{\n file: file$ | async,\n disabled: disabled$ | async,\n editDisabled: editDisabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n statusItems: statusItems$ | async,\n tagItems: tagItems$ | async,\n userEmail: userEmail$ | async,\n open: open$ | async,\n additionalDate: additionalDocumentDate$ | async,\n } as obs\"\n [maxWidthPx]=\"1280\"\n (closeEvent)=\"closeModal()\"\n [cdsLayer]=\"1\"\n>\n <div role=\"header\">\n @if (isEditMode) {\n <h3 cdsModalHeaderHeading>\n {{ 'document.editMetadata' | translate }}\n </h3>\n } @else {\n <h3 cdsModalHeaderHeading>\n {{ 'document.fillInMetadata' | translate }}\n </h3>\n }\n </div>\n\n <div role=\"content\">\n @if (obs.open) {\n <ng-container *ngTemplateOutlet=\"metadataForm; context: {obs: obs}\"></ng-container>\n }\n </div>\n\n <div role=\"footer\" class=\"metadata-modal-footer\">\n <button cdsButton=\"ghost\" (click)=\"closeModal()\" [disabled]=\"obs.disabled\">\n {{ 'document.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"obs.disabled || !documentenApiMetadataForm.valid || obs.editDisabled\"\n (click)=\"save()\"\n >\n {{ 'document.save' | translate }}\n </button>\n </div>\n</v-modal>\n\n<ng-template #metadataForm let-obs=\"obs\">\n <form [formGroup]=\"documentenApiMetadataForm\">\n <div class=\"documenten-metadata-form-columns-container\">\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('bestandsnaam')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.filename' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.filenameTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.bestandsnaam\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('auteur')) {\n <cds-text-label class=\"documenten-metada-form-input\">\n {{ 'document.author' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.authorTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <input\n [value]=\"defaultValues.auteur\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\n }\n @if (!hideFields.includes('taal')) {\n <cds-text-label>\n {{ 'document.language' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.languageTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [disabled]=\"obs.disabled || (languageDisabled$ | async)\"\n [appendInline]=\"true\"\n [placeholder]=\"'document.languagePlaceholder' | translate\"\n id=\"language\"\n (selected)=\"languageSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('vertrouwelijkheidaanduiding')) {\n <cds-label>\n {{ 'document.confidentialityLevel' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.confidentialityLevelTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n (clear)=\"confidentialityLevelFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('informatieobjecttype')) {\n <cds-label>\n {{ 'document.informatieobjecttype' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.informatieobjecttypeTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-dropdown\n [placeholder]=\"'document.informatieobjecttypePlaceholder' | translate\"\n [disabled]=\"obs.disabled || (informatieobjecttypeDisabled$ | async)\"\n id=\"informatieobjecttype\"\n [appendInline]=\"true\"\n (selected)=\"informatieobjecttypeSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-text-label name=\"'additionalDate'\">\n {{ 'document.additionalDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.additionalDateTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <cds-radio-group [orientation]=\"'horizontal'\" class=\"documenten-metada-form-input\">\n <cds-radio\n *ngFor=\"let option of ADDITONAL_DOCUMENT_DATE_OPTIONS\"\n [value]=\"option.value\"\n [checked]=\"obs.additionalDate === option.value\"\n [required]=\"true\"\n (click)=\"setAdditionalDate(option.value)\"\n name=\"radio-inline\"\n >\n {{ option.translationKey | translate }}\n </cds-radio>\n </cds-radio-group>\n }\n @if (supportsTrefwoorden && !hideFields.includes('trefwoorden')) {\n <cds-text-label>\n {{ 'document.tags' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.tagsTooltip' | translate\"\n [align]=\"'bottom-left'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [type]=\"'multi'\"\n [placeholder]=\"'document.tagsPlaceholder' | translate\"\n [disabled]=\"obs.disabled || obs.tagItems?.length === 0\"\n [appendInline]=\"true\"\n (selected)=\"tagsSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.tagItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n </div>\n\n <div class=\"documenten-metadata-form-column\">\n @if (!hideFields.includes('titel')) {\n <cds-text-label>\n {{ 'document.inputTitle' | translate }}\n <input\n [placeholder]=\"'document.inputTitlePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n class=\"documenten-metada-form-input\"\n id=\"titel\"\n formControlName=\"titel\"\n />\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputTitleTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-text-label>\n }\n @if (!hideFields.includes('beschrijving')) {\n <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"false\"\n [rows]=\"5\"\n cdsTextArea\n class=\"documenten-metada-form-description-input documenten-metada-form-input\"\n id=\"beschrijving\"\n formControlName=\"beschrijving\"\n ></textarea>\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.inputDescriptionTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-textarea-label>\n }\n @if (!hideFields.includes('creatiedatum')) {\n <cds-label>\n {{ 'document.creationDate' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.creationDateTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n <div class=\"documenten-metada-form-input\">\n <cds-date-picker\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"creatiedatum\"\n formControlName=\"creatiedatum\"\n >\n </cds-date-picker>\n </div>\n </cds-label>\n }\n @if (!hideFields.includes('status')) {\n <cds-label>\n {{ 'document.status' | translate }}\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"'document.statusTooltip' | translate\"\n [align]=\"'bottom'\"\n >\n <i class=\"mdi mdi-help-circle-outline\"></i>\n </cds-tooltip>\n </cds-label>\n <div class=\"documenten-metada-form-input\">\n <cds-combo-box\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n (clear)=\"statusFormControl.setValue(null)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </div>\n }\n @if (!hideFields.includes('aanvullendeDatum')) {\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'received'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"ontvangstdatum\"\n formControlName=\"ontvangstdatum\"\n ></cds-date-picker>\n <cds-date-picker\n *ngIf=\"obs.additionalDate === 'sent'\"\n [label]=\"'document.additionalDate' | translate\"\n [placeholder]=\"'DD-MM-YYYY'\"\n [dateFormat]=\"'d-m-Y'\"\n id=\"verzenddatum\"\n formControlName=\"verzenddatum\"\n ></cds-date-picker>\n }\n </div>\n </div>\n </form>\n</ng-template>\n", styles: [".documenten-metadata-form-columns-container{display:flex;justify-content:space-between}.documenten-metadata-form-column{flex:1;margin-right:1rem}.documenten-metada-form-input{margin-bottom:18px!important;width:100%!important}.documenten-metada-form-description-input{width:100%}::ng-deep .cds--date-picker,::ng-deep .cds--date-picker-container,::ng-deep .cds--date-picker__input,::ng-deep .cds--date-picker-input__wrapper,::ng-deep .cds--date-picker-input__wrapper>span{width:100%}::ng-deep .cds--date-picker.cds--date-picker--single .cds--date-picker__input{inline-size:100%}.metadata-modal-footer{display:flex;justify-content:flex-end}.metadata-modal-footer button{width:100%}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
1425
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i4$1.DocumentService }, { type: DocumentenApiTagService }, { type: i1$1.FormBuilder }, { type: i5$2.KeycloakService }, { type: i3.ModalService }, { type: i5.TranslateService }, { type: i3.ValtimoModalService }, { type: DocumentenApiVersionService }, { type: i3.FormIoStateService }], propDecorators: { metadataModal: [{
|
|
1398
1426
|
type: ViewChild,
|
|
1399
1427
|
args: ['metadataModal']
|
|
1400
1428
|
}], disabled$: [{
|
|
@@ -1436,7 +1464,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1436
1464
|
}] } });
|
|
1437
1465
|
|
|
1438
1466
|
/*
|
|
1439
|
-
* Copyright 2015-
|
|
1467
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1440
1468
|
*
|
|
1441
1469
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1442
1470
|
* you may not use this file except in compliance with the License.
|
|
@@ -1450,25 +1478,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1450
1478
|
* See the License for the specific language governing permissions and
|
|
1451
1479
|
* limitations under the License.
|
|
1452
1480
|
*/
|
|
1453
|
-
class
|
|
1454
|
-
constructor(
|
|
1455
|
-
this.route = route;
|
|
1456
|
-
this.router = router;
|
|
1457
|
-
this.uploadProviderService = uploadProviderService;
|
|
1458
|
-
this.downloadService = downloadService;
|
|
1459
|
-
this.translateService = translateService;
|
|
1481
|
+
class CaseDetailTabDocumentenApiDocumentsComponent {
|
|
1482
|
+
constructor(configService, documentenApiColumnService, documentenApiDocumentService, documentenApiVersionService, documentService, downloadService, iconService, permissionService, route, router, translateService, uploadProviderService, userProviderService) {
|
|
1460
1483
|
this.configService = configService;
|
|
1461
|
-
this.userProviderService = userProviderService;
|
|
1462
|
-
this.iconService = iconService;
|
|
1463
|
-
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1464
1484
|
this.documentenApiColumnService = documentenApiColumnService;
|
|
1485
|
+
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
1465
1486
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1487
|
+
this.documentService = documentService;
|
|
1488
|
+
this.downloadService = downloadService;
|
|
1489
|
+
this.iconService = iconService;
|
|
1466
1490
|
this.permissionService = permissionService;
|
|
1467
|
-
this.
|
|
1491
|
+
this.route = route;
|
|
1492
|
+
this.router = router;
|
|
1493
|
+
this.translateService = translateService;
|
|
1494
|
+
this.uploadProviderService = uploadProviderService;
|
|
1495
|
+
this.userProviderService = userProviderService;
|
|
1496
|
+
this._caseDefinitionKey$ = this.route.params.pipe(map$1(params => params?.caseDefinitionKey ?? ''), filter$1((caseDefinitionKey) => !!caseDefinitionKey));
|
|
1497
|
+
this._caseSettings$ = this._caseDefinitionKey$.pipe(switchMap$1((caseDefinitionKey) => this.documentService.getCaseSettings(caseDefinitionKey)));
|
|
1468
1498
|
this.supportedDocumentenApiFeatures$ = new BehaviorSubject(null);
|
|
1469
|
-
this._supportedDocumentenApiFeatures$ = this.
|
|
1470
|
-
this.fields$ = this.
|
|
1471
|
-
this.documentenApiColumnService.getConfiguredColumns(
|
|
1499
|
+
this._supportedDocumentenApiFeatures$ = this._caseDefinitionKey$.pipe(switchMap$1(caseDefinitionName => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionName)), tap$1(supportedDocumentenApiFeatures => this.supportedDocumentenApiFeatures$.next(supportedDocumentenApiFeatures)));
|
|
1500
|
+
this.fields$ = this._caseDefinitionKey$.pipe(tap$1(() => this.fieldsLoading$.next(true)), switchMap$1(caseDefinitionKey => combineLatest([
|
|
1501
|
+
this.documentenApiColumnService.getConfiguredColumns(caseDefinitionKey),
|
|
1472
1502
|
this._supportedDocumentenApiFeatures$,
|
|
1473
1503
|
this._sort$,
|
|
1474
1504
|
])), map$1(([columns, supportedDocumentenApiFeatures, sort]) => {
|
|
@@ -1510,7 +1540,6 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1510
1540
|
type: 'danger',
|
|
1511
1541
|
},
|
|
1512
1542
|
];
|
|
1513
|
-
this.documentDefinitionName$ = this.route.params.pipe(map$1(params => params?.documentDefinitionName), filter$1(documentDefinitionName => !!documentDefinitionName));
|
|
1514
1543
|
this.documentId$ = this.route.params.pipe(map$1(params => params?.documentId), filter$1(documentId => !!documentId));
|
|
1515
1544
|
this.uploadProcessLinkedSet = false;
|
|
1516
1545
|
this.isEditMode$ = new BehaviorSubject(false);
|
|
@@ -1590,7 +1619,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1590
1619
|
this.showZaakLinkWarning = true;
|
|
1591
1620
|
this._itemsLoading$.next(false);
|
|
1592
1621
|
return of([]);
|
|
1593
|
-
}));
|
|
1622
|
+
}), shareReplay({ bufferSize: 1, refCount: true }));
|
|
1594
1623
|
this.enablePbacDocumentenApiDocuments$ = this.configService.getFeatureToggleObservable('enablePbacDocumentenApiDocuments');
|
|
1595
1624
|
this.filePermissions = {};
|
|
1596
1625
|
this.canCreateResource$ = this.documentId$.pipe(switchMap$1(documentId => this.getPermission(CAN_CREATE_RESOURCE_PERMISSION, {
|
|
@@ -1652,14 +1681,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1652
1681
|
return 'Upload';
|
|
1653
1682
|
}
|
|
1654
1683
|
else if (this.isAdmin) {
|
|
1655
|
-
return '
|
|
1684
|
+
return 'case.documenten.noProcessLinked.adminRole';
|
|
1656
1685
|
}
|
|
1657
|
-
return '
|
|
1686
|
+
return 'case.documenten.noProcessLinked.regularUser';
|
|
1658
1687
|
}
|
|
1659
1688
|
isUserAdmin() {
|
|
1660
1689
|
this.userProviderService
|
|
1661
1690
|
.getUserSubject()
|
|
1662
|
-
.pipe(take
|
|
1691
|
+
.pipe(take(1))
|
|
1663
1692
|
.subscribe(userIdentity => {
|
|
1664
1693
|
this.isAdmin = userIdentity.roles.includes('ROLE_ADMIN');
|
|
1665
1694
|
}, () => {
|
|
@@ -1669,7 +1698,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1669
1698
|
metadataSet(metadata) {
|
|
1670
1699
|
this.uploading$.next(true);
|
|
1671
1700
|
combineLatest([this.fileToBeUploaded$, this.documentId$])
|
|
1672
|
-
.pipe(take
|
|
1701
|
+
.pipe(take(1))
|
|
1673
1702
|
.pipe(tap$1(([file, documentId]) => {
|
|
1674
1703
|
if (!file)
|
|
1675
1704
|
return;
|
|
@@ -1712,8 +1741,10 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1712
1741
|
this.resetFileInput();
|
|
1713
1742
|
}
|
|
1714
1743
|
onNavigateToCaseAdminClick() {
|
|
1715
|
-
this.
|
|
1716
|
-
this.router.navigate([
|
|
1744
|
+
this._caseSettings$.pipe(take(1)).subscribe((caseSettings) => {
|
|
1745
|
+
this.router.navigate([
|
|
1746
|
+
`/case-management/case/${caseSettings.caseDefinitionKey}/version/${caseSettings.caseDefinitionVersionTag}/zgw`,
|
|
1747
|
+
]);
|
|
1717
1748
|
});
|
|
1718
1749
|
}
|
|
1719
1750
|
onRowClick(event) {
|
|
@@ -1762,14 +1793,14 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1762
1793
|
}
|
|
1763
1794
|
openQueryParamsSubscription() {
|
|
1764
1795
|
this._subscriptions.add(combineLatest([
|
|
1765
|
-
this.
|
|
1796
|
+
this._caseDefinitionKey$,
|
|
1766
1797
|
this.documentId$,
|
|
1767
1798
|
this.filter$,
|
|
1768
1799
|
this._sort$,
|
|
1769
1800
|
this.pagination$,
|
|
1770
1801
|
]).subscribe(([definitionName, documentId, filter, sort, pagination]) => {
|
|
1771
1802
|
const { size, page } = pagination;
|
|
1772
|
-
this.router.navigate([`/
|
|
1803
|
+
this.router.navigate([`/cases/${definitionName}/document/${documentId}/documents`], {
|
|
1773
1804
|
queryParams: { ...filter, ...sort, size, page: page - 1 },
|
|
1774
1805
|
});
|
|
1775
1806
|
}));
|
|
@@ -1778,8 +1809,8 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1778
1809
|
this.fileInput.nativeElement.value = '';
|
|
1779
1810
|
}
|
|
1780
1811
|
setUploadProcessLinked() {
|
|
1781
|
-
this.
|
|
1782
|
-
.pipe(switchMap$1(
|
|
1812
|
+
this._caseDefinitionKey$
|
|
1813
|
+
.pipe(switchMap$1(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), take(1), tap$1(() => {
|
|
1783
1814
|
this.uploadProcessLinkedSet = true;
|
|
1784
1815
|
}))
|
|
1785
1816
|
.subscribe((linked) => {
|
|
@@ -1788,7 +1819,7 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1788
1819
|
}
|
|
1789
1820
|
setInitialParams() {
|
|
1790
1821
|
this.route.queryParamMap
|
|
1791
|
-
.pipe(take
|
|
1822
|
+
.pipe(take(1), map$1(queryParams => {
|
|
1792
1823
|
const { sort, size, page, ...filter } = queryParams['params'];
|
|
1793
1824
|
return { sort, filter, size, page };
|
|
1794
1825
|
}))
|
|
@@ -1830,12 +1861,12 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
|
|
|
1830
1861
|
return this.permissionService.requestPermission(permissionRequest, context);
|
|
1831
1862
|
}));
|
|
1832
1863
|
}
|
|
1833
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1834
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierDetailTabDocumentenApiDocumentsComponent, isStandalone: true, selector: "valtimo-dossier-detail-tab-documenten-api-documents", viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "translationTemplate", first: true, predicate: ["translationTemplate"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<div\n class=\"carbon-document-table-wrapper\"\n *ngIf=\"{\n loading: loading$ | async,\n fieldsLoading: fieldsLoading$ | async,\n uploading: uploading$ | async,\n relatedFiles: relatedFiles$ | async,\n fields: fields$ | async,\n supportedDocumentenApiFeatures: supportedDocumentenApiFeatures$ | async,\n pagination: pagination$ | async,\n sortState: sortState$ | async,\n uploadFields: uploadFields$ | async,\n defaultValues: defaultValues$ | async,\n hideFields: hideFields$ | async,\n } as obs\"\n>\n @if ((!obs.fieldsLoading && obs.fields.length) || obs.fieldsLoading) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.relatedFiles\"\n [fields]=\"obs.fields\"\n [initialSortState]=\"obs.sortState\"\n [loading]=\"obs.loading\"\n [pagination]=\"obs.pagination\"\n [paginatorConfig]=\"paginatorConfig\"\n paginationIdentifier=\"documentenApi\"\n (rowClicked)=\"onRowClick($event)\"\n (sortChanged)=\"\n obs?.supportedDocumentenApiFeatures?.supportsSortableColumns && onSortChanged($event)\n \"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n hideColumnHeader\n >\n <div carbonToolbarContent>\n <input\n [accept]=\"acceptedFiles\"\n (change)=\"onFileSelected($event)\"\n hidden\n type=\"file\"\n #fileInput\n />\n\n <button\n *ngIf=\"obs?.supportedDocumentenApiFeatures?.supportsFilterableColumns\"\n [cdsOverflowMenu]=\"overflowFilter\"\n [customPane]=\"true\"\n [iconOnly]=\"true\"\n [flip]=\"true\"\n [offset]=\"{x: 0, y: 47}\"\n cdsButton=\"ghost\"\n placement=\"bottom\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"filter\" size=\"16\"></svg>\n </button>\n\n <ng-container *ngTemplateOutlet=\"uploadButton\"></ng-container>\n </div>\n\n <ng-container *ngTemplateOutlet=\"noResults\"></ng-container>\n </valtimo-carbon-list>\n } @else {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n }\n\n <valtimo-documenten-api-metadata-modal\n [defaultValues]=\"obs.defaultValues\"\n [disableAuthor]=\"obs.uploadFields?.auteur?.readonly\"\n [disableConfidentialityLevel]=\"obs.uploadFields?.vertrouwelijkheidaanduiding?.readonly\"\n [disableCreationDate]=\"obs.uploadFields?.creatiedatum?.readonly\"\n [disableDescription]=\"obs.uploadFields?.beschrijving?.readonly\"\n [disableDocumentTitle]=\"obs.uploadFields?.titel?.readonly\"\n [disableDocumentType]=\"obs.uploadFields?.informatieobjecttype?.readonly\"\n [disableFilename]=\"obs.uploadFields?.bestandsnaam?.readonly\"\n [disableLanguage]=\"obs.uploadFields?.taal?.readonly\"\n [disableStatus]=\"obs.uploadFields?.status?.readonly\"\n [hideFields]=\"obs.hideFields\"\n [open]=\"showUploadModal$ | async\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [isEditMode]=\"isEditMode$ | async\"\n [supportsTrefwoorden]=\"obs?.supportedDocumentenApiFeatures?.supportsTrefwoorden\"\n (modalClose)=\"closeMetadataModal()\"\n (metadata)=\"metadataSet($event)\"\n ></valtimo-documenten-api-metadata-modal>\n</div>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"dashboardManagement.deleteModal.confirm\"\n contentTranslationKey=\"dossier.documenten.deleteConfirmationModal.content\"\n confirmButtonType=\"danger\"\n titleTranslationKey=\"dossier.documenten.deleteConfirmationModal.title\"\n [showModalSubject$]=\"showDeleteConfirmationModal$\"\n (confirmEvent)=\"deleteDocument()\"\n>\n</valtimo-confirmation-modal>\n\n<ng-template #noResults>\n @if ((filter$ | async | keyvalue)?.length) {\n <valtimo-no-results\n [action]=\"resetFilterButton\"\n [description]=\"'zgw.documents.noResults.filterDescription' | translate\"\n [title]=\"'zgw.documents.noResults.filterTitle' | translate\"\n ></valtimo-no-results>\n } @else if (showZaakLinkWarning && isAdmin) {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'dossier.documenten.noZaakFound' | translate\"\n [title]=\"'dossier.documenten.noZaakFoundTitle' | translate\"\n ></valtimo-no-results>\n } @else {\n <valtimo-no-results\n [action]=\"uploadButton\"\n [description]=\"'dossier.documenten.noFiles' | translate\"\n [title]=\"'dossier.documenten.noFilesTitle' | translate\"\n ></valtimo-no-results>\n }\n</ng-template>\n\n<ng-template #overflowFilter>\n <valtimo-dossier-detail-tab-documenten-api-filter\n [prefillFilter]=\"filter$ | async\"\n (filterEvent)=\"onFilterEvent($event)\"\n ></valtimo-dossier-detail-tab-documenten-api-filter>\n</ng-template>\n\n<ng-template #resetFilterButton>\n <button cdsButton=\"primary\" (click)=\"onFilterEvent(null)\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #uploadButton let-disabled=\"disabled\">\n <button\n [disabled]=\"\n (uploadProcessLinkedSet && !uploadProcessLinked) ||\n showZaakLinkWarning ||\n disabled ||\n (canCreateResource$ | async) === false\n \"\n [vTooltip]=\"getUploadButtonTooltip() | translate\"\n (click)=\"onUploadButtonClick()\"\n cdsButton=\"primary\"\n >\n {{ 'Upload' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"upload\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #translationTemplate let-data=\"data\">\n @if (data.item[data.key]) {\n {{ 'document.' + data.item[data.key] | translate }}\n } @else {\n -\n }\n</ng-template>\n\n<ng-template #navigateToCaseAdminButton>\n <button (click)=\"onNavigateToCaseAdminClick()\" cdsButton=\"primary\">\n {{ 'dossier.documenten.navigateToCaseAdmin' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"settings\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: [".hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.carbon-document-table-wrapper{margin:0}.documenten-api-documents-filesize-template{text-align:right}::ng-deep .cds--overflow-menu-options.cds--overflow-menu-options--open{max-width:max-content!important;width:max-content!important}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i3$1.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "actions", "actionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i3$1.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["disabled$", "file$", "hideFields", "defaultValues", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "supportsTrefwoorden", "disableCreationDate", "isEditMode", "open"], outputs: ["metadata", "modalClose"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i6.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: DocumentenApiFilterComponent, selector: "valtimo-dossier-detail-tab-documenten-api-filter", outputs: ["filterEvent"] }, { kind: "ngmodule", type: DialogModule }, { kind: "directive", type: i6.OverflowMenuDirective, selector: "[cdsOverflowMenu], [ibmOverflowMenu]", inputs: ["ibmOverflowMenu", "cdsOverflowMenu", "flip", "offset", "wrapperClass", "customPane"], exportAs: ["overflowMenu"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i3$1.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }] }); }
|
|
1864
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i2.ConfigService }, { token: DocumentenApiColumnService }, { token: DocumentenApiDocumentService }, { token: DocumentenApiVersionService }, { token: i4$1.DocumentService }, { token: i5$3.DownloadService }, { token: i5$1.IconService }, { token: i7.PermissionService }, { token: i1$2.ActivatedRoute }, { token: i1$2.Router }, { token: i5.TranslateService }, { token: i5$3.UploadProviderService }, { token: i10.UserProviderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1865
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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}\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"] }] }); }
|
|
1835
1866
|
}
|
|
1836
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1867
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabDocumentenApiDocumentsComponent, decorators: [{
|
|
1837
1868
|
type: Component,
|
|
1838
|
-
args: [{ selector: 'valtimo-
|
|
1869
|
+
args: [{ selector: 'valtimo-case-detail-tab-documenten-api-documents', standalone: true, imports: [
|
|
1839
1870
|
CommonModule,
|
|
1840
1871
|
CarbonListModule,
|
|
1841
1872
|
DocumentenApiMetadataModalComponent,
|
|
@@ -1845,8 +1876,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1845
1876
|
DocumentenApiFilterComponent,
|
|
1846
1877
|
DialogModule,
|
|
1847
1878
|
ConfirmationModalModule,
|
|
1848
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
1849
|
-
}], ctorParameters: () => [{ type:
|
|
1879
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<div\n class=\"carbon-document-table-wrapper\"\n *ngIf=\"{\n loading: loading$ | async,\n fieldsLoading: fieldsLoading$ | async,\n uploading: uploading$ | async,\n relatedFiles: relatedFiles$ | async,\n fields: fields$ | async,\n supportedDocumentenApiFeatures: supportedDocumentenApiFeatures$ | async,\n pagination: pagination$ | async,\n sortState: sortState$ | async,\n uploadFields: uploadFields$ | async,\n defaultValues: defaultValues$ | async,\n hideFields: hideFields$ | async,\n } as obs\"\n>\n @if ((!obs.fieldsLoading && obs.fields.length) || obs.fieldsLoading) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.relatedFiles\"\n [fields]=\"obs.fields\"\n [initialSortState]=\"obs.sortState\"\n [loading]=\"obs.loading\"\n [pagination]=\"obs.pagination\"\n [paginatorConfig]=\"paginatorConfig\"\n paginationIdentifier=\"documentenApi\"\n (rowClicked)=\"onRowClick($event)\"\n (sortChanged)=\"\n obs?.supportedDocumentenApiFeatures?.supportsSortableColumns && onSortChanged($event)\n \"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n hideColumnHeader\n >\n <div carbonToolbarContent>\n <input\n [accept]=\"acceptedFiles\"\n (change)=\"onFileSelected($event)\"\n hidden\n type=\"file\"\n #fileInput\n />\n\n <button\n *ngIf=\"obs?.supportedDocumentenApiFeatures?.supportsFilterableColumns\"\n [cdsOverflowMenu]=\"overflowFilter\"\n [customPane]=\"true\"\n [flip]=\"true\"\n [offset]=\"{x: 0, y: 47}\"\n cdsButton=\"ghost\"\n placement=\"bottom\"\n >\n <svg cdsIcon=\"filter\" size=\"16\"></svg>\n </button>\n\n <ng-container *ngTemplateOutlet=\"uploadButton\"></ng-container>\n </div>\n\n <ng-container *ngTemplateOutlet=\"noResults\"></ng-container>\n </valtimo-carbon-list>\n } @else {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'zgw.documents.noColumns.description' | translate\"\n [title]=\"'zgw.documents.noColumns.title' | translate\"\n ></valtimo-no-results>\n }\n\n <valtimo-documenten-api-metadata-modal\n [defaultValues]=\"obs.defaultValues\"\n [disableAuthor]=\"obs.uploadFields?.auteur?.readonly\"\n [disableConfidentialityLevel]=\"obs.uploadFields?.vertrouwelijkheidaanduiding?.readonly\"\n [disableCreationDate]=\"obs.uploadFields?.creatiedatum?.readonly\"\n [disableDescription]=\"obs.uploadFields?.beschrijving?.readonly\"\n [disableDocumentTitle]=\"obs.uploadFields?.titel?.readonly\"\n [disableDocumentType]=\"obs.uploadFields?.informatieobjecttype?.readonly\"\n [disableFilename]=\"obs.uploadFields?.bestandsnaam?.readonly\"\n [disableLanguage]=\"obs.uploadFields?.taal?.readonly\"\n [disableStatus]=\"obs.uploadFields?.status?.readonly\"\n [hideFields]=\"obs.hideFields\"\n [open]=\"showUploadModal$ | async\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [isEditMode]=\"isEditMode$ | async\"\n [supportsTrefwoorden]=\"obs?.supportedDocumentenApiFeatures?.supportsTrefwoorden\"\n (modalClose)=\"closeMetadataModal()\"\n (metadata)=\"metadataSet($event)\"\n ></valtimo-documenten-api-metadata-modal>\n</div>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"dashboardManagement.deleteModal.confirm\"\n contentTranslationKey=\"case.documenten.deleteConfirmationModal.content\"\n confirmButtonType=\"danger\"\n titleTranslationKey=\"case.documenten.deleteConfirmationModal.title\"\n [showModalSubject$]=\"showDeleteConfirmationModal$\"\n (confirmEvent)=\"deleteDocument()\"\n>\n</valtimo-confirmation-modal>\n\n<ng-template #noResults>\n @if ((filter$ | async | keyvalue)?.length) {\n <valtimo-no-results\n [action]=\"resetFilterButton\"\n [description]=\"'zgw.documents.noResults.filterDescription' | translate\"\n [title]=\"'zgw.documents.noResults.filterTitle' | translate\"\n ></valtimo-no-results>\n } @else if (showZaakLinkWarning && isAdmin) {\n <valtimo-no-results\n [action]=\"navigateToCaseAdminButton\"\n [description]=\"'case.documenten.noZaakFound' | translate\"\n [title]=\"'case.documenten.noZaakFoundTitle' | translate\"\n ></valtimo-no-results>\n } @else {\n <valtimo-no-results\n [action]=\"uploadButton\"\n [description]=\"'case.documenten.noFiles' | translate\"\n [title]=\"'case.documenten.noFilesTitle' | translate\"\n ></valtimo-no-results>\n }\n</ng-template>\n\n<ng-template #overflowFilter>\n <valtimo-case-detail-tab-documenten-api-filter\n [prefillFilter]=\"filter$ | async\"\n (filterEvent)=\"onFilterEvent($event)\"\n ></valtimo-case-detail-tab-documenten-api-filter>\n</ng-template>\n\n<ng-template #resetFilterButton>\n <button cdsButton=\"primary\" (click)=\"onFilterEvent(null)\">\n {{ 'Reset filter' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #uploadButton let-disabled=\"disabled\">\n <button\n [disabled]=\"\n (uploadProcessLinkedSet && !uploadProcessLinked) ||\n showZaakLinkWarning ||\n disabled ||\n (canCreateResource$ | async) === false\n \"\n [vTooltip]=\"getUploadButtonTooltip() | translate\"\n (click)=\"onUploadButtonClick()\"\n cdsButton=\"primary\"\n >\n {{ 'Upload' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"upload\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #translationTemplate let-data=\"data\">\n @if (data.item[data.key]) {\n {{ 'document.' + data.item[data.key] | translate }}\n } @else {\n -\n }\n</ng-template>\n\n<ng-template #navigateToCaseAdminButton>\n <button (click)=\"onNavigateToCaseAdminClick()\" cdsButton=\"primary\">\n {{ 'case.documenten.navigateToCaseAdmin' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"settings\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: [".hidden{display:none}.loading-container{padding:var(--cds-grid-margin);display:flex;align-items:center;justify-content:center}.carbon-document-table-wrapper{margin:0}.documenten-api-documents-filesize-template{text-align:right}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
1880
|
+
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: DocumentenApiColumnService }, { type: DocumentenApiDocumentService }, { type: DocumentenApiVersionService }, { type: i4$1.DocumentService }, { type: i5$3.DownloadService }, { type: i5$1.IconService }, { type: i7.PermissionService }, { type: i1$2.ActivatedRoute }, { type: i1$2.Router }, { type: i5.TranslateService }, { type: i5$3.UploadProviderService }, { type: i10.UserProviderService }], propDecorators: { fileInput: [{
|
|
1850
1881
|
type: ViewChild,
|
|
1851
1882
|
args: ['fileInput']
|
|
1852
1883
|
}], translationTemplate: [{
|
|
@@ -1855,7 +1886,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1855
1886
|
}] } });
|
|
1856
1887
|
|
|
1857
1888
|
/*
|
|
1858
|
-
* Copyright 2015-
|
|
1889
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1859
1890
|
*
|
|
1860
1891
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1861
1892
|
* you may not use this file except in compliance with the License.
|
|
@@ -1869,14 +1900,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1869
1900
|
* See the License for the specific language governing permissions and
|
|
1870
1901
|
* limitations under the License.
|
|
1871
1902
|
*/
|
|
1872
|
-
class
|
|
1903
|
+
class CaseManagementLinkProcessComponent {
|
|
1904
|
+
//Necessary to trigger outside click detection for combo-box
|
|
1905
|
+
emptyCallback() {
|
|
1906
|
+
return;
|
|
1907
|
+
}
|
|
1873
1908
|
constructor(configService, route, documentenApiLinkProcessService, documentenApiVersionService) {
|
|
1874
1909
|
this.configService = configService;
|
|
1875
1910
|
this.route = route;
|
|
1876
1911
|
this.documentenApiLinkProcessService = documentenApiLinkProcessService;
|
|
1877
1912
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
1878
1913
|
this.documentenApiUploadProviders$ = new BehaviorSubject(false);
|
|
1879
|
-
this._documentDefinitionName$ = this.route.params.pipe(map(params => params?.name), filter$1(name => !!name));
|
|
1880
1914
|
this.selectedProcessKey$ = new BehaviorSubject('');
|
|
1881
1915
|
this.processItems$ = combineLatest([
|
|
1882
1916
|
this.documentenApiLinkProcessService.getProcessDefinitions(),
|
|
@@ -1888,32 +1922,40 @@ class DossierManagementLinkProcessComponent {
|
|
|
1888
1922
|
id: process.key,
|
|
1889
1923
|
selected: selectedProcessKey === process.key,
|
|
1890
1924
|
}))), tap(() => this.documentenApiVersionService.refresh()));
|
|
1925
|
+
this._caseParams$ = getCaseManagementRouteParams(this.route);
|
|
1926
|
+
this._subscriptions = new Subscription();
|
|
1891
1927
|
this.disabled$ = new BehaviorSubject(false);
|
|
1892
1928
|
}
|
|
1893
1929
|
ngOnInit() {
|
|
1894
1930
|
this.setDocumentenApiUploaderProvider(this.configService.config);
|
|
1895
1931
|
}
|
|
1932
|
+
ngOnDestroy() {
|
|
1933
|
+
this._subscriptions.unsubscribe();
|
|
1934
|
+
}
|
|
1896
1935
|
selectProcess(item) {
|
|
1897
1936
|
const processDefinitionKey = item?.id;
|
|
1898
1937
|
this.disabled$.next(true);
|
|
1899
1938
|
const currentSelectionId = this.selectedProcessKey$.getValue();
|
|
1900
|
-
if (processDefinitionKey && processDefinitionKey !== currentSelectionId)
|
|
1901
|
-
this.
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
this.
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1939
|
+
if (processDefinitionKey && processDefinitionKey !== currentSelectionId)
|
|
1940
|
+
this.updateProcess(processDefinitionKey);
|
|
1941
|
+
else if (!processDefinitionKey)
|
|
1942
|
+
this.deleteProcess();
|
|
1943
|
+
}
|
|
1944
|
+
deleteProcess() {
|
|
1945
|
+
this._caseParams$
|
|
1946
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.deleteLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1947
|
+
.subscribe(() => {
|
|
1948
|
+
this.selectedProcessKey$.next('');
|
|
1949
|
+
this.disabled$.next(false);
|
|
1950
|
+
});
|
|
1951
|
+
}
|
|
1952
|
+
updateProcess(processDefinitionKey) {
|
|
1953
|
+
this._caseParams$
|
|
1954
|
+
.pipe(take$1(1), switchMap((params) => this.documentenApiLinkProcessService.updateLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '', processDefinitionKey)))
|
|
1955
|
+
.subscribe(processLink => {
|
|
1956
|
+
this.selectedProcessKey$.next(processLink.processDefinitionKey);
|
|
1957
|
+
this.disabled$.next(false);
|
|
1958
|
+
});
|
|
1917
1959
|
}
|
|
1918
1960
|
setDocumentenApiUploaderProvider(config) {
|
|
1919
1961
|
const hasDocumentenApiUploadProvider = config.uploadProvider === UploadProvider.DOCUMENTEN_API;
|
|
@@ -1922,24 +1964,27 @@ class DossierManagementLinkProcessComponent {
|
|
|
1922
1964
|
this.getDefaultSelection();
|
|
1923
1965
|
}
|
|
1924
1966
|
getDefaultSelection() {
|
|
1925
|
-
this.
|
|
1926
|
-
.pipe(switchMap(
|
|
1967
|
+
this._subscriptions.add(this._caseParams$
|
|
1968
|
+
.pipe(switchMap((params) => this.documentenApiLinkProcessService.getLinkedUploadProcess(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')))
|
|
1927
1969
|
.subscribe(linkedUploadProcess => {
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
}
|
|
1931
|
-
});
|
|
1970
|
+
this.selectedProcessKey$.next(linkedUploadProcess?.processDefinitionKey ?? '');
|
|
1971
|
+
}));
|
|
1932
1972
|
}
|
|
1933
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1934
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1973
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementLinkProcessComponent, deps: [{ token: i2.ConfigService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiLinkProcessService }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1974
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
|
|
1935
1975
|
}
|
|
1936
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1976
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementLinkProcessComponent, decorators: [{
|
|
1937
1977
|
type: Component,
|
|
1938
|
-
args: [{ selector: 'valtimo-
|
|
1939
|
-
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }]
|
|
1978
|
+
args: [{ selector: 'valtimo-case-management-link-process', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, TranslateModule, ComboBoxModule, LayerModule], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n<div\n *ngIf=\"{\n processItems: processItems$ | async,\n disabled: disabled$ | async,\n isReadOnly: isReadOnly$ | async,\n } as obs\"\n class=\"link-upload-process\"\n>\n <p class=\"link-upload-process__title\">\n {{ 'caseManagement.tabs.generalTab.linkUploadProcess.title' | translate }}\n </p>\n\n <cds-combo-box\n [cdsLayer]=\"1\"\n valtimoReadOnly\n [isReadOnly]=\"obs.isReadOnly\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [label]=\"'caseManagement.tabs.generalTab.linkUploadProcess.label' | translate\"\n [placeholder]=\"\n 'processLinkConfiguration.' + (obs.isReadOnly ? 'noProcess' : 'selectProcess') | translate\n \"\n [disabled]=\"obs.disabled || !obs.processItems || obs.isReadOnly\"\n (selected)=\"selectProcess($event)\"\n >\n <cds-dropdown-list [items]=\"obs.processItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n</div>\n", styles: [".link-upload-process{background-color:var(--cds-layer);padding:24px}.link-upload-process__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
1979
|
+
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiLinkProcessService }, { type: DocumentenApiVersionService }], propDecorators: { isReadOnly$: [{
|
|
1980
|
+
type: Input
|
|
1981
|
+
}], emptyCallback: [{
|
|
1982
|
+
type: HostListener,
|
|
1983
|
+
args: ['document:click', ['$event']]
|
|
1984
|
+
}] } });
|
|
1940
1985
|
|
|
1941
1986
|
/*
|
|
1942
|
-
* Copyright 2015-
|
|
1987
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1943
1988
|
*
|
|
1944
1989
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1945
1990
|
* you may not use this file except in compliance with the License.
|
|
@@ -1982,9 +2027,7 @@ class DocumentenApiTagModalComponent {
|
|
|
1982
2027
|
}
|
|
1983
2028
|
addTag() {
|
|
1984
2029
|
this.disable();
|
|
1985
|
-
this.documentenApiTagService
|
|
1986
|
-
.createTag(this.documentDefinitionName, this.value.value)
|
|
1987
|
-
.subscribe({
|
|
2030
|
+
this.documentenApiTagService.createTag(this.caseDefinitionKey, this.value.value).subscribe({
|
|
1988
2031
|
next: () => {
|
|
1989
2032
|
this.enable();
|
|
1990
2033
|
this.closeAndRefresh();
|
|
@@ -2016,10 +2059,10 @@ class DocumentenApiTagModalComponent {
|
|
|
2016
2059
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2017
2060
|
this.resetForm();
|
|
2018
2061
|
}
|
|
2019
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2020
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2062
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2063
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
|
|
2021
2064
|
}
|
|
2022
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2065
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagModalComponent, decorators: [{
|
|
2023
2066
|
type: Component,
|
|
2024
2067
|
args: [{ selector: 'valtimo-documenten-api-tag-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2025
2068
|
CommonModule,
|
|
@@ -2032,8 +2075,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2032
2075
|
DropdownModule,
|
|
2033
2076
|
ToggleModule,
|
|
2034
2077
|
LayerModule,
|
|
2035
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2036
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: {
|
|
2078
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"open\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ 'zgw.tags.addModal.header' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"tagFormGroup\" class=\"tag-form\">\n <cds-label\n [invalidText]=\"\n (value?.errors?.['required']\n ? 'zgw.tags.fields.valueRequired'\n : 'zgw.tags.fields.valueMaxLength'\n ) | translate: {maxlength: value?.errors?.maxlength?.requiredLength}\n \"\n [invalid]=\"value.dirty && value.invalid\"\n >\n {{ 'zgw.tags.fields.value' | translate }}\n\n <input\n cdsText\n formControlName=\"value\"\n [attr.modal-primary-focus]=\"true\"\n [invalid]=\"value.dirty && value.invalid\"\n />\n </cds-label>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || pristine || obs.disabled\" (click)=\"addTag()\">\n {{ 'interface.add' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n" }]
|
|
2079
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiTagService }], propDecorators: { caseDefinitionKey: [{
|
|
2037
2080
|
type: Input
|
|
2038
2081
|
}], open: [{
|
|
2039
2082
|
type: Input
|
|
@@ -2042,7 +2085,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2042
2085
|
}] } });
|
|
2043
2086
|
|
|
2044
2087
|
/*
|
|
2045
|
-
* Copyright 2015-
|
|
2088
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2046
2089
|
*
|
|
2047
2090
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2048
2091
|
* you may not use this file except in compliance with the License.
|
|
@@ -2057,14 +2100,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2057
2100
|
* limitations under the License.
|
|
2058
2101
|
*/
|
|
2059
2102
|
class DocumentenApiTagsComponent {
|
|
2060
|
-
get documentDefinitionName$() {
|
|
2061
|
-
return this._documentDefinitionName$;
|
|
2062
|
-
}
|
|
2063
2103
|
constructor(route, documentenApiTagService) {
|
|
2064
2104
|
this.route = route;
|
|
2065
2105
|
this.documentenApiTagService = documentenApiTagService;
|
|
2066
2106
|
this._reload$ = new BehaviorSubject(null);
|
|
2067
|
-
this.
|
|
2107
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey));
|
|
2068
2108
|
this.loading$ = new BehaviorSubject(true);
|
|
2069
2109
|
this.fields$ = new BehaviorSubject([]);
|
|
2070
2110
|
this.addModalClosed$ = new BehaviorSubject(true);
|
|
@@ -2074,14 +2114,13 @@ class DocumentenApiTagsComponent {
|
|
|
2074
2114
|
this.searchTerm$ = new BehaviorSubject('');
|
|
2075
2115
|
this.tagToDelete$ = new BehaviorSubject(null);
|
|
2076
2116
|
this.documentTags$ = combineLatest([
|
|
2077
|
-
this.
|
|
2117
|
+
this.caseDefinitionKey$,
|
|
2078
2118
|
this.searchTerm$,
|
|
2079
2119
|
this._reload$,
|
|
2080
2120
|
]).pipe(tap(([_1, _2, reload]) => {
|
|
2081
|
-
if (reload === null)
|
|
2121
|
+
if (reload === null)
|
|
2082
2122
|
this.loading$.next(true);
|
|
2083
|
-
|
|
2084
|
-
}), switchMap(([documentDefinitionName, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(documentDefinitionName, {
|
|
2123
|
+
}), switchMap(([caseDefinitionKey, searchTerm]) => this.documentenApiTagService.getTagsForAdmin(caseDefinitionKey, {
|
|
2085
2124
|
page: this.pagination.page - 1,
|
|
2086
2125
|
size: this.pagination.size,
|
|
2087
2126
|
search: searchTerm,
|
|
@@ -2122,9 +2161,8 @@ class DocumentenApiTagsComponent {
|
|
|
2122
2161
|
this.addModalClosed$.next(false);
|
|
2123
2162
|
}
|
|
2124
2163
|
closeModal(closeModalEvent) {
|
|
2125
|
-
if (closeModalEvent === 'closeAndRefresh')
|
|
2164
|
+
if (closeModalEvent === 'closeAndRefresh')
|
|
2126
2165
|
this.reload();
|
|
2127
|
-
}
|
|
2128
2166
|
this.addModalClosed$.next(true);
|
|
2129
2167
|
}
|
|
2130
2168
|
showDeleteMultipleModal() {
|
|
@@ -2143,15 +2181,15 @@ class DocumentenApiTagsComponent {
|
|
|
2143
2181
|
this.reload();
|
|
2144
2182
|
}
|
|
2145
2183
|
confirmDeleteTag(tag) {
|
|
2146
|
-
this.
|
|
2147
|
-
.pipe(switchMap(
|
|
2184
|
+
this.caseDefinitionKey$
|
|
2185
|
+
.pipe(switchMap(caseDefinitionKey => this.documentenApiTagService.deleteTag(caseDefinitionKey, tag.value)))
|
|
2148
2186
|
.subscribe(() => {
|
|
2149
2187
|
this.reload();
|
|
2150
2188
|
});
|
|
2151
2189
|
}
|
|
2152
2190
|
confirmDeleteMultipleTag(tagsToDelete) {
|
|
2153
2191
|
this.documentenApiTagService
|
|
2154
|
-
.deleteTags(tagsToDelete.
|
|
2192
|
+
.deleteTags(tagsToDelete.caseDefinitionKey, tagsToDelete.tagIds)
|
|
2155
2193
|
.subscribe(() => {
|
|
2156
2194
|
const lastPage = Math.ceil(this.pagination.collectionSize / this.pagination.size);
|
|
2157
2195
|
if (tagsToDelete.itemsOnCurrentPage <= tagsToDelete.tagIds.length &&
|
|
@@ -2169,10 +2207,10 @@ class DocumentenApiTagsComponent {
|
|
|
2169
2207
|
reload(noAnimation = false) {
|
|
2170
2208
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2171
2209
|
}
|
|
2172
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2173
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2210
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2211
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
|
|
2174
2212
|
}
|
|
2175
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2213
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiTagsComponent, decorators: [{
|
|
2176
2214
|
type: Component,
|
|
2177
2215
|
args: [{ selector: 'valtimo-documenten-api-tags', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2178
2216
|
CommonModule,
|
|
@@ -2183,14 +2221,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2183
2221
|
ButtonModule,
|
|
2184
2222
|
DocumentenApiTagModalComponent,
|
|
2185
2223
|
IconModule,
|
|
2186
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2224
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentTags: documentTags$ | async,\n addModalClosed: addModalClosed$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n selectedRowKeys: selectedRowKeys$ | async,\n searchTerm: searchTerm$ | async,\n showDeleteModal: showDeleteModal$ | async,\n tagToDelete: tagToDelete$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentTags\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [showSelectionColumn]=\"true\"\n [isSearchable]=\"true\"\n [pagination]=\"pagination\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n (search)=\"searchTermEntered($event)\"\n >\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addButtton\"></ng-container>\n\n <ng-container carbonToolbarActions>\n <button cdsButton=\"primary\" (click)=\"showDeleteMultipleModal()\">\n {{ 'interface.delete' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"trash-can\" size=\"16\"></svg>\n </button>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm === ''\"\n [action]=\"addButtton\"\n title=\"{{ 'zgw.tags.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n\n <valtimo-no-results\n *ngIf=\"obs.searchTerm !== ''\"\n title=\"{{ 'zgw.tags.search.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.tags.search.noResultsDescription' | translate }}\"\n illustration=\"valtimo-layout/img/emptystate-no-result.svg\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-tag-modal\n [open]=\"!obs.addModalClosed\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-tag-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"zgw.tags.deleteText\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"obs.tagToDelete\"\n (confirmEvent)=\"confirmDeleteTag($event)\"\n ></valtimo-confirmation-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n [contentTranslationKey]=\"\n obs.selectedRowKeys.length > 1 ? 'zgw.tags.deleteMultipleText' : 'zgw.tags.deleteText'\n \"\n [showModalSubject$]=\"showDeleteMultipleModal$\"\n titleTranslationKey=\"interface.delete\"\n [outputOnConfirm]=\"{\n caseDefinitionKey: obs.caseDefinitionKey,\n tagIds: obs.selectedRowKeys,\n itemsOnCurrentPage: obs.documentTags.length,\n }\"\n (confirmEvent)=\"confirmDeleteMultipleTag($event)\"\n ></valtimo-confirmation-modal>\n\n <ng-template #addButtton>\n <button cdsButton=\"primary\" [disabled]=\"obs.loading\" (click)=\"openAddModal()\">\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n {{ 'zgw.tags.add' | translate }}\n </button>\n </ng-template>\n</ng-container>\n", styles: ["::ng-deep .cds-tag--no-margin{margin:0}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
2187
2225
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiTagService }], propDecorators: { carbonList: [{
|
|
2188
2226
|
type: ViewChild,
|
|
2189
2227
|
args: [CarbonListComponent]
|
|
2190
2228
|
}] } });
|
|
2191
2229
|
|
|
2192
2230
|
/*
|
|
2193
|
-
* Copyright 2015-
|
|
2231
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2194
2232
|
*
|
|
2195
2233
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2196
2234
|
* you may not use this file except in compliance with the License.
|
|
@@ -2228,11 +2266,12 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2228
2266
|
get invalid() {
|
|
2229
2267
|
return !!this.formGroup?.invalid;
|
|
2230
2268
|
}
|
|
2231
|
-
constructor(fb, documentenApiDocumentService, translateService, documentService) {
|
|
2269
|
+
constructor(fb, documentenApiDocumentService, translateService, documentService, route) {
|
|
2232
2270
|
this.fb = fb;
|
|
2233
2271
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2234
2272
|
this.translateService = translateService;
|
|
2235
2273
|
this.documentService = documentService;
|
|
2274
|
+
this.route = route;
|
|
2236
2275
|
this.closeModalEvent = new EventEmitter();
|
|
2237
2276
|
this.formGroup = this.fb.group({
|
|
2238
2277
|
defaultValue: this.fb.control('', [Validators.maxLength(256)]),
|
|
@@ -2265,11 +2304,13 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2265
2304
|
content: this.translateService.instant(`document.${item}`),
|
|
2266
2305
|
selected: selectedItem === item,
|
|
2267
2306
|
}))));
|
|
2307
|
+
this._context = getCaseManagementRouteParams(this.route);
|
|
2268
2308
|
this.documentTypeItems$ = combineLatest([
|
|
2309
|
+
this._context,
|
|
2269
2310
|
this.defaultValue.valueChanges,
|
|
2270
2311
|
this.translateService.stream('key'),
|
|
2271
|
-
]).pipe(switchMap(([selectedItem]) => combineLatest([
|
|
2272
|
-
this.documentService.
|
|
2312
|
+
]).pipe(switchMap(([params, selectedItem]) => combineLatest([
|
|
2313
|
+
this.documentService.getDocumentTypesForCase(params.caseDefinitionKey, params.caseDefinitionVersionTag),
|
|
2273
2314
|
of(selectedItem),
|
|
2274
2315
|
])), map(([documentTypes, selectedItem]) => documentTypes.map(item => ({
|
|
2275
2316
|
id: item.url,
|
|
@@ -2297,7 +2338,7 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2297
2338
|
readonly: this.readonly.value,
|
|
2298
2339
|
};
|
|
2299
2340
|
this.documentenApiDocumentService
|
|
2300
|
-
.updateUploadField(this.
|
|
2341
|
+
.updateUploadField(this.caseDefinitionKey, formField)
|
|
2301
2342
|
.subscribe({
|
|
2302
2343
|
next: () => {
|
|
2303
2344
|
this.enable();
|
|
@@ -2330,10 +2371,10 @@ class DocumentenApiUploadFieldModalComponent {
|
|
|
2330
2371
|
this.closeModalEvent.emit('closeAndRefresh');
|
|
2331
2372
|
this.resetForm();
|
|
2332
2373
|
}
|
|
2333
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2334
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2374
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiDocumentService }, { token: i5.TranslateService }, { token: i4$1.DocumentService }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2375
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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 }); }
|
|
2335
2376
|
}
|
|
2336
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2377
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, decorators: [{
|
|
2337
2378
|
type: Component,
|
|
2338
2379
|
args: [{ selector: 'valtimo-documenten-api-upload-field-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2339
2380
|
CommonModule,
|
|
@@ -2346,8 +2387,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2346
2387
|
CheckboxModule,
|
|
2347
2388
|
ComboBoxModule,
|
|
2348
2389
|
LayerModule,
|
|
2349
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2350
|
-
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type:
|
|
2390
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n disabled: disabled$ | async,\n languageItems: languageItems$ | async,\n confidentialityLevelItems: confidentialityLevelItems$ | async,\n statusItems: statusItems$ | async,\n documentTypeItems: documentTypeItems$ | async,\n } as obs\"\n [open]=\"type !== 'closed'\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n ('zgw.uploadFields.editModal.header' | translate) +\n ' - ' +\n ('zgw.uploadFields.keys.' + key | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"formGroup\" class=\"uploadField-form\">\n @if (key === 'taal') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.languageItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'vertrouwelijkheidaanduiding') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.confidentialityLevelItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'status') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (key === 'informatieobjecttype') {\n <cds-combo-box\n formControlName=\"selectedDefaultValue\"\n [label]=\"'zgw.uploadFields.fields.defaultValue' | translate\"\n [dropUp]=\"false\"\n (clear)=\"clear()\"\n >\n <cds-dropdown-list [items]=\"obs.documentTypeItems\"></cds-dropdown-list>\n </cds-combo-box>\n } @else if (\n key === 'filename' ||\n key === 'bestandsnaam' ||\n key === 'titel' ||\n key === 'beschrijving' ||\n key === 'trefwoorden'\n ) {\n <cds-label>\n {{ 'zgw.uploadFields.fields.defaultValue' | translate }}\n <input cdsText formControlName=\"defaultValue\" />\n </cds-label>\n }\n <div class=\"toggle-group\">\n <cds-toggle\n formControlName=\"visible\"\n [label]=\"'zgw.uploadFields.fields.visible' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n <cds-toggle\n formControlName=\"readonly\"\n [label]=\"'zgw.uploadFields.fields.readonly' | translate\"\n [onText]=\"'interface.on' | translate\"\n [offText]=\"'interface.off' | translate\"\n ></cds-toggle>\n </div>\n </form>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <button cdsButton=\"secondary\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"invalid || obs.disabled\" (click)=\"saveUploadField()\">\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".toggle-group{display:flex;flex-direction:column;margin-top:16px;gap:16px}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
2391
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i4$1.DocumentService }, { type: i1$2.ActivatedRoute }], propDecorators: { caseDefinitionKey: [{
|
|
2351
2392
|
type: Input
|
|
2352
2393
|
}], type: [{
|
|
2353
2394
|
type: Input
|
|
@@ -2358,7 +2399,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2358
2399
|
}] } });
|
|
2359
2400
|
|
|
2360
2401
|
/*
|
|
2361
|
-
* Copyright 2015-
|
|
2402
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2362
2403
|
*
|
|
2363
2404
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2364
2405
|
* you may not use this file except in compliance with the License.
|
|
@@ -2373,33 +2414,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2373
2414
|
* limitations under the License.
|
|
2374
2415
|
*/
|
|
2375
2416
|
class DocumentenApiUploadFieldsComponent {
|
|
2376
|
-
|
|
2377
|
-
return this._documentDefinitionName$;
|
|
2378
|
-
}
|
|
2379
|
-
constructor(route, documentenApiDocumentService, translateService) {
|
|
2417
|
+
constructor(route, documentenApiDocumentService, translateService, editPermissionsService) {
|
|
2380
2418
|
this.route = route;
|
|
2381
2419
|
this.documentenApiDocumentService = documentenApiDocumentService;
|
|
2382
2420
|
this.translateService = translateService;
|
|
2421
|
+
this.editPermissionsService = editPermissionsService;
|
|
2383
2422
|
this._reload$ = new BehaviorSubject(null);
|
|
2384
|
-
this.
|
|
2423
|
+
this.caseDefinitionKey$ = getCaseManagementRouteParams(this.route).pipe(map((params) => params?.caseDefinitionKey ?? ''), filter(caseDefinitionKey => !!caseDefinitionKey));
|
|
2385
2424
|
this.loading$ = new BehaviorSubject(true);
|
|
2386
2425
|
this.fields$ = new BehaviorSubject([]);
|
|
2387
2426
|
this.uploadFieldModalType$ = new BehaviorSubject('closed');
|
|
2388
2427
|
this.prefill$ = new BehaviorSubject(undefined);
|
|
2389
2428
|
this.documentUploadFields$ = combineLatest([
|
|
2390
|
-
this.
|
|
2429
|
+
this.caseDefinitionKey$,
|
|
2391
2430
|
this._reload$,
|
|
2392
2431
|
this.translateService.stream('key'),
|
|
2393
2432
|
]).pipe(tap(([_, reload]) => {
|
|
2394
2433
|
if (reload === null) {
|
|
2395
2434
|
this.loading$.next(true);
|
|
2396
2435
|
}
|
|
2397
|
-
}), switchMap(([
|
|
2436
|
+
}), switchMap(([caseDefinitionKey]) => this.documentenApiDocumentService.getUploadFields(caseDefinitionKey)), map(fields => fields.map(field => ({
|
|
2398
2437
|
...field,
|
|
2399
2438
|
field: this.translateService.instant(`zgw.uploadFields.keys.${field.key}`),
|
|
2400
2439
|
}))), startWith([]), tap(() => {
|
|
2401
2440
|
this.loading$.next(false);
|
|
2402
2441
|
}));
|
|
2442
|
+
this.hasEditPermissions$ = getCaseManagementRouteParams(this.route).pipe(switchMap(params => this.editPermissionsService.hasEditPermissions(params?.caseDefinitionKey, params?.caseDefinitionVersionTag)));
|
|
2403
2443
|
this.ACTION_ITEMS = [
|
|
2404
2444
|
{
|
|
2405
2445
|
label: 'interface.edit',
|
|
@@ -2431,8 +2471,13 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2431
2471
|
];
|
|
2432
2472
|
}
|
|
2433
2473
|
openEditModal(uploadField) {
|
|
2434
|
-
this.
|
|
2435
|
-
|
|
2474
|
+
this.hasEditPermissions$.pipe(take(1)).subscribe(hasPermission => {
|
|
2475
|
+
if (!hasPermission && uploadField.key !== 'informatieobjecttype') {
|
|
2476
|
+
return;
|
|
2477
|
+
}
|
|
2478
|
+
this.prefill$.next(uploadField);
|
|
2479
|
+
this.uploadFieldModalType$.next('edit');
|
|
2480
|
+
});
|
|
2436
2481
|
}
|
|
2437
2482
|
closeModal(closeModalEvent) {
|
|
2438
2483
|
if (closeModalEvent === 'closeAndRefresh') {
|
|
@@ -2443,10 +2488,10 @@ class DocumentenApiUploadFieldsComponent {
|
|
|
2443
2488
|
reload(noAnimation = false) {
|
|
2444
2489
|
this._reload$.next(noAnimation ? 'noAnimation' : null);
|
|
2445
2490
|
}
|
|
2446
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2447
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2491
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploadFieldsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiDocumentService }, { token: i5.TranslateService }, { token: i2.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2492
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
|
|
2448
2493
|
}
|
|
2449
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2494
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploadFieldsComponent, decorators: [{
|
|
2450
2495
|
type: Component,
|
|
2451
2496
|
args: [{ selector: 'valtimo-documenten-api-upload-fields', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
2452
2497
|
CommonModule,
|
|
@@ -2456,14 +2501,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2456
2501
|
ButtonModule,
|
|
2457
2502
|
IconModule,
|
|
2458
2503
|
DocumentenApiUploadFieldModalComponent,
|
|
2459
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
2460
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type:
|
|
2504
|
+
], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentUploadFields: documentUploadFields$ | async,\n uploadFieldModalType: uploadFieldModalType$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n prefill: prefill$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n [items]=\"obs.documentUploadFields\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n >\n <valtimo-no-results\n title=\"{{ 'zgw.uploadFields.list.noResultsTitle' | translate }}\"\n description=\"{{ 'zgw.uploadFields.list.noResultsDescription' | translate }}\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-documenten-api-upload-field-modal\n [prefill]=\"obs.prefill\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [type]=\"obs.uploadFieldModalType\"\n (closeModalEvent)=\"closeModal($event)\"\n ></valtimo-documenten-api-upload-field-modal>\n</ng-container>\n", styles: ["::ng-deep .cds-upload-field--no-margin{margin:0}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
2505
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type: i5.TranslateService }, { type: i2.EditPermissionsService }], propDecorators: { carbonList: [{
|
|
2461
2506
|
type: ViewChild,
|
|
2462
2507
|
args: [CarbonListComponent]
|
|
2463
2508
|
}] } });
|
|
2464
2509
|
|
|
2465
2510
|
/*
|
|
2466
|
-
* Copyright 2015-
|
|
2511
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2467
2512
|
*
|
|
2468
2513
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2469
2514
|
* you may not use this file except in compliance with the License.
|
|
@@ -2482,19 +2527,19 @@ class DocumentenApiVersionComponent {
|
|
|
2482
2527
|
this.route = route;
|
|
2483
2528
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
2484
2529
|
this.loading$ = new BehaviorSubject(true);
|
|
2485
|
-
this.
|
|
2486
|
-
this.documentenApiVersion$ = combineLatest([this.
|
|
2530
|
+
this.caseManagementRouteParams$ = getCaseManagementRouteParams(this.route);
|
|
2531
|
+
this.documentenApiVersion$ = combineLatest([this.caseManagementRouteParams$, this.documentenApiVersionService.refresh$]).pipe(tap(() => this.loading$.next(true)), switchMap(([params]) => this.documentenApiVersionService.getManagementApiVersion(params?.caseDefinitionKey ?? '')), tap(() => this.loading$.next(false)));
|
|
2487
2532
|
}
|
|
2488
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2489
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2533
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiVersionComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2534
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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"] }] }); }
|
|
2490
2535
|
}
|
|
2491
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiVersionComponent, decorators: [{
|
|
2492
2537
|
type: Component,
|
|
2493
|
-
args: [{ selector: 'valtimo-documenten-api-version', standalone: true, imports: [CommonModule, TranslateModule, LoadingModule, NotificationModule], template: "<!--\n ~ Copyright 2015-
|
|
2538
|
+
args: [{ selector: 'valtimo-documenten-api-version', standalone: true, imports: [CommonModule, TranslateModule, LoadingModule, NotificationModule, TilesModule], template: "<!--\n ~ Copyright 2015-2025 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-tile\n *ngIf=\"{loading: loading$ | async, documentenApiVersion: documentenApiVersion$ | async} as obs\"\n>\n <h2 class=\"documenten-api-version__title\">{{ 'openZaak.documentenApi.title' | translate }}</h2>\n\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container\n *ngIf=\"obs.documentenApiVersion.selectedVersion; else noDocumentenApiVersionWarning\"\n >\n <ng-container\n *ngIf=\"\n obs.documentenApiVersion.detectedVersions.length === 1;\n else multipleDocumentenApiVersionsWarning\n \"\n >\n {{ 'openZaak.documentenApi.documentenApiVersion' | translate }}\n <strong> {{ obs.documentenApiVersion.selectedVersion }} </strong>\n </ng-container>\n </ng-container>\n </ng-container>\n</cds-tile>\n\n<ng-template #noDocumentenApiVersionWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.noVersionWarningTitle' | translate,\n message: 'openZaak.documentenApi.noVersionWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #multipleDocumentenApiVersionsWarning>\n <div class=\"pb-2\">\n <cds-notification\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'openZaak.documentenApi.multipleVersionsWarningTitle' | translate,\n message: 'openZaak.documentenApi.multipleVersionsWarningMessage' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <div class=\"loading-container pb-2\">\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n", styles: ["cds-tile{background:var(--cds-layer-02);width:100%}.documenten-api-version__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.loading-container{display:flex;width:100%;justify-content:center}\n/*!\n * Copyright 2015-2025 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
2494
2539
|
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }] });
|
|
2495
2540
|
|
|
2496
2541
|
/*
|
|
2497
|
-
* Copyright 2015-
|
|
2542
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2498
2543
|
*
|
|
2499
2544
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2500
2545
|
* you may not use this file except in compliance with the License.
|
|
@@ -2510,7 +2555,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2510
2555
|
*/
|
|
2511
2556
|
|
|
2512
2557
|
/*
|
|
2513
|
-
* Copyright 2015-
|
|
2558
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2514
2559
|
*
|
|
2515
2560
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2516
2561
|
* you may not use this file except in compliance with the License.
|
|
@@ -2632,6 +2677,25 @@ const documentenApiUploaderEditForm = () => ({
|
|
|
2632
2677
|
required: false,
|
|
2633
2678
|
},
|
|
2634
2679
|
},
|
|
2680
|
+
{
|
|
2681
|
+
label: 'HTML',
|
|
2682
|
+
tag: 'div',
|
|
2683
|
+
content: '<h3>Process variables</h3>',
|
|
2684
|
+
refreshOnChange: false,
|
|
2685
|
+
type: 'htmlelement',
|
|
2686
|
+
input: false,
|
|
2687
|
+
tableView: false,
|
|
2688
|
+
},
|
|
2689
|
+
{
|
|
2690
|
+
type: 'textfield',
|
|
2691
|
+
input: true,
|
|
2692
|
+
key: 'customOptions.documentUrlProcessVariable',
|
|
2693
|
+
label: 'Document URL',
|
|
2694
|
+
tooltip: "Specify the process variable name where the Documenten API document URL will be stored. Defaults to 'documentUrl' if left empty.",
|
|
2695
|
+
validate: {
|
|
2696
|
+
required: false,
|
|
2697
|
+
},
|
|
2698
|
+
},
|
|
2635
2699
|
{
|
|
2636
2700
|
label: 'HTML',
|
|
2637
2701
|
tag: 'div',
|
|
@@ -3064,7 +3128,7 @@ const documentenApiUploaderEditForm = () => ({
|
|
|
3064
3128
|
});
|
|
3065
3129
|
|
|
3066
3130
|
/*
|
|
3067
|
-
* Copyright 2015-
|
|
3131
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3068
3132
|
*
|
|
3069
3133
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3070
3134
|
* you may not use this file except in compliance with the License.
|
|
@@ -3112,7 +3176,7 @@ class DocumentenApiUploaderComponent {
|
|
|
3112
3176
|
set documentType(defaultValue) {
|
|
3113
3177
|
this.defaultValues['informatieobjecttype'] = defaultValue;
|
|
3114
3178
|
this.stateService.documentDefinitionName$
|
|
3115
|
-
.pipe(switchMap(documentDefinitionName => this.documentService.
|
|
3179
|
+
.pipe(filter$1(documentDefinitionName => !!documentDefinitionName), switchMap(documentDefinitionName => this.documentService.getCaseSettings(documentDefinitionName)), switchMap(caseDefinition => this.documentService.getDocumentTypesForCase(String(caseDefinition.caseDefinitionKey), String(caseDefinition.caseDefinitionVersionTag))), catchError(() => {
|
|
3116
3180
|
this.defaultValues['informatieobjecttype'] = defaultValue;
|
|
3117
3181
|
return EMPTY;
|
|
3118
3182
|
}))
|
|
@@ -3171,18 +3235,18 @@ class DocumentenApiUploaderComponent {
|
|
|
3171
3235
|
this.fileToBeUploaded$ = new BehaviorSubject(null);
|
|
3172
3236
|
this.modalDisabled$ = new BehaviorSubject(false);
|
|
3173
3237
|
this.showModal = signal(false);
|
|
3174
|
-
this.uploadProcessLinked$ = this.modalService.
|
|
3238
|
+
this.uploadProcessLinked$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.uploadProviderService.checkUploadProcessLink(caseDefinitionKey)), startWith('loading'));
|
|
3175
3239
|
this.isAdmin$ = this.userProviderService
|
|
3176
3240
|
.getUserSubject()
|
|
3177
3241
|
.pipe(map$1(userIdentity => userIdentity?.roles.includes('ROLE_ADMIN')));
|
|
3178
|
-
this.supportedDocumentenApiFeatures$ = this.modalService.
|
|
3242
|
+
this.supportedDocumentenApiFeatures$ = this.modalService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey)));
|
|
3179
3243
|
this.defaultValues = {};
|
|
3180
3244
|
this.hideFields = [];
|
|
3181
3245
|
this._subscriptions = new Subscription();
|
|
3182
3246
|
this._value = [];
|
|
3183
3247
|
}
|
|
3184
3248
|
ngOnInit() {
|
|
3185
|
-
this.
|
|
3249
|
+
this.openCaseDefinitionKeySubscription();
|
|
3186
3250
|
}
|
|
3187
3251
|
ngOnDestroy() {
|
|
3188
3252
|
this._subscriptions.unsubscribe();
|
|
@@ -3212,18 +3276,22 @@ class DocumentenApiUploaderComponent {
|
|
|
3212
3276
|
this.showModal.set(false);
|
|
3213
3277
|
this.domService.toggleSubmitButton(true);
|
|
3214
3278
|
this.fileToBeUploaded$
|
|
3215
|
-
.pipe(take
|
|
3279
|
+
.pipe(take(1), switchMap(file => this.uploadProviderService.uploadTempFileWithMetadata(file, {
|
|
3280
|
+
...metadata,
|
|
3281
|
+
processInstanceId: this.stateService.processInstanceId,
|
|
3282
|
+
documentUrlProcessVariable: this.documentUrlProcessVariable || null,
|
|
3283
|
+
})), tap$1(result => {
|
|
3216
3284
|
this.domService.toggleSubmitButton(false);
|
|
3217
3285
|
this.uploading$.next(false);
|
|
3218
|
-
this._value.
|
|
3286
|
+
this._value = [...this._value, result];
|
|
3219
3287
|
this.valueChange.emit(this._value);
|
|
3220
3288
|
}))
|
|
3221
3289
|
.subscribe();
|
|
3222
3290
|
}
|
|
3223
|
-
|
|
3291
|
+
openCaseDefinitionKeySubscription() {
|
|
3224
3292
|
this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
|
|
3225
|
-
.pipe(map$1(([params, firstChildParams]) => (params?.
|
|
3226
|
-
.subscribe(
|
|
3293
|
+
.pipe(map$1(([params, firstChildParams]) => (params?.caseDefinitionKey || firstChildParams?.caseDefinitionKey)), filter$1(caseDefinitionKey => !!caseDefinitionKey))
|
|
3294
|
+
.subscribe(caseDefinitionKey => this.modalService.setCaseDefinitionKey(caseDefinitionKey)));
|
|
3227
3295
|
}
|
|
3228
3296
|
hideField(hide, field) {
|
|
3229
3297
|
const exists = this.hideFields.includes(field);
|
|
@@ -3234,13 +3302,13 @@ class DocumentenApiUploaderComponent {
|
|
|
3234
3302
|
delete this.hideFields[field];
|
|
3235
3303
|
}
|
|
3236
3304
|
}
|
|
3237
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3238
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3305
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploaderComponent, deps: [{ token: i5$3.UploadProviderService }, { token: i3.FormIoDomService }, { token: i3.ValtimoModalService }, { token: i10.UserProviderService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }, { token: i3.FormIoStateService }, { token: i4$1.DocumentService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3306
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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", documentUrlProcessVariable: "documentUrlProcessVariable", 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" }] }); }
|
|
3239
3307
|
}
|
|
3240
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3308
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentenApiUploaderComponent, decorators: [{
|
|
3241
3309
|
type: Component,
|
|
3242
|
-
args: [{ selector: 'valtimo-documenten-api-formio-uploader', template: "<!--\n ~ Copyright 2015-
|
|
3243
|
-
}], ctorParameters: () => [{ type:
|
|
3310
|
+
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"] }]
|
|
3311
|
+
}], ctorParameters: () => [{ type: i5$3.UploadProviderService }, { type: i3.FormIoDomService }, { type: i3.ValtimoModalService }, { type: i10.UserProviderService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }, { type: i3.FormIoStateService }, { type: i4$1.DocumentService }], propDecorators: { disabled: [{
|
|
3244
3312
|
type: Input
|
|
3245
3313
|
}], title: [{
|
|
3246
3314
|
type: Input
|
|
@@ -3312,6 +3380,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3312
3380
|
type: Input
|
|
3313
3381
|
}], hideTags: [{
|
|
3314
3382
|
type: Input
|
|
3383
|
+
}], documentUrlProcessVariable: [{
|
|
3384
|
+
type: Input
|
|
3315
3385
|
}], valueChange: [{
|
|
3316
3386
|
type: Output
|
|
3317
3387
|
}], value: [{
|
|
@@ -3319,7 +3389,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3319
3389
|
}] } });
|
|
3320
3390
|
|
|
3321
3391
|
/*
|
|
3322
|
-
* Copyright 2015-
|
|
3392
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3323
3393
|
*
|
|
3324
3394
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3325
3395
|
* you may not use this file except in compliance with the License.
|
|
@@ -3345,24 +3415,13 @@ const COMPONENT_OPTIONS = {
|
|
|
3345
3415
|
editForm: documentenApiUploaderEditForm,
|
|
3346
3416
|
};
|
|
3347
3417
|
function registerDocumentenApiFormioUploadComponent(injector) {
|
|
3348
|
-
const originalUploadComponent = createCustomFormioComponent(COMPONENT_OPTIONS);
|
|
3349
|
-
// override setValue function to allow for setting an array value
|
|
3350
|
-
class UploaderComponent extends originalUploadComponent {
|
|
3351
|
-
setValue(value) {
|
|
3352
|
-
if (!this._customAngularElement) {
|
|
3353
|
-
return false;
|
|
3354
|
-
}
|
|
3355
|
-
this._customAngularElement.value = value;
|
|
3356
|
-
return true;
|
|
3357
|
-
}
|
|
3358
|
-
}
|
|
3359
3418
|
if (!customElements.get(COMPONENT_OPTIONS.selector)) {
|
|
3360
|
-
|
|
3419
|
+
registerCustomFormioComponent(COMPONENT_OPTIONS, DocumentenApiUploaderComponent, injector);
|
|
3361
3420
|
}
|
|
3362
3421
|
}
|
|
3363
3422
|
|
|
3364
3423
|
/*
|
|
3365
|
-
* Copyright 2015-
|
|
3424
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3366
3425
|
*
|
|
3367
3426
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3368
3427
|
* you may not use this file except in compliance with the License.
|
|
@@ -3378,7 +3437,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3378
3437
|
*/
|
|
3379
3438
|
|
|
3380
3439
|
/*
|
|
3381
|
-
* Copyright 2015-
|
|
3440
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3382
3441
|
*
|
|
3383
3442
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3384
3443
|
* you may not use this file except in compliance with the License.
|
|
@@ -3394,7 +3453,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3394
3453
|
*/
|
|
3395
3454
|
|
|
3396
3455
|
/*
|
|
3397
|
-
* Copyright 2015-
|
|
3456
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3398
3457
|
*
|
|
3399
3458
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3400
3459
|
* you may not use this file except in compliance with the License.
|
|
@@ -3410,7 +3469,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3410
3469
|
*/
|
|
3411
3470
|
|
|
3412
3471
|
/*
|
|
3413
|
-
* Copyright 2015-
|
|
3472
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3414
3473
|
*
|
|
3415
3474
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3416
3475
|
* you may not use this file except in compliance with the License.
|
|
@@ -3426,7 +3485,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3426
3485
|
*/
|
|
3427
3486
|
|
|
3428
3487
|
/*
|
|
3429
|
-
* Copyright 2015-
|
|
3488
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3430
3489
|
*
|
|
3431
3490
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3432
3491
|
* you may not use this file except in compliance with the License.
|
|
@@ -3442,7 +3501,7 @@ function registerDocumentenApiFormioUploadComponent(injector) {
|
|
|
3442
3501
|
*/
|
|
3443
3502
|
|
|
3444
3503
|
/*
|
|
3445
|
-
* Copyright 2015-
|
|
3504
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3446
3505
|
*
|
|
3447
3506
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3448
3507
|
* you may not use this file except in compliance with the License.
|
|
@@ -3471,10 +3530,10 @@ class ZaakobjectenService {
|
|
|
3471
3530
|
getObjectTypeForm(documentId, objectUrl) {
|
|
3472
3531
|
return this.http.get(`${this.VALTIMO_API_ENDPOINT_URI}v1/document/${documentId}/zaak/object/form?objectUrl=${objectUrl}`);
|
|
3473
3532
|
}
|
|
3474
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3475
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3533
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZaakobjectenService, deps: [{ token: i2.ConfigService }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3534
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZaakobjectenService, providedIn: 'root' }); }
|
|
3476
3535
|
}
|
|
3477
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZaakobjectenService, decorators: [{
|
|
3478
3537
|
type: Injectable,
|
|
3479
3538
|
args: [{
|
|
3480
3539
|
providedIn: 'root',
|
|
@@ -3482,7 +3541,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3482
3541
|
}], ctorParameters: () => [{ type: i2.ConfigService }, { type: i1.HttpClient }] });
|
|
3483
3542
|
|
|
3484
3543
|
/*
|
|
3485
|
-
* Copyright 2015-
|
|
3544
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3486
3545
|
*
|
|
3487
3546
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3488
3547
|
* you may not use this file except in compliance with the License.
|
|
@@ -3498,7 +3557,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3498
3557
|
*/
|
|
3499
3558
|
|
|
3500
3559
|
/*
|
|
3501
|
-
* Copyright 2015-
|
|
3560
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3502
3561
|
*
|
|
3503
3562
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3504
3563
|
* you may not use this file except in compliance with the License.
|
|
@@ -3512,7 +3571,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3512
3571
|
* See the License for the specific language governing permissions and
|
|
3513
3572
|
* limitations under the License.
|
|
3514
3573
|
*/
|
|
3515
|
-
class
|
|
3574
|
+
class CaseDetailTabZaakobjectenComponent {
|
|
3516
3575
|
constructor(route, zaakobjectenService, modalService) {
|
|
3517
3576
|
this.route = route;
|
|
3518
3577
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3531,15 +3590,15 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3531
3590
|
: of(null)));
|
|
3532
3591
|
this.columns$ = new BehaviorSubject([
|
|
3533
3592
|
{
|
|
3534
|
-
labelTranslationKey: '
|
|
3593
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3535
3594
|
dataKey: 'index',
|
|
3536
3595
|
},
|
|
3537
3596
|
{
|
|
3538
|
-
labelTranslationKey: '
|
|
3597
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3539
3598
|
dataKey: 'registrationAt',
|
|
3540
3599
|
},
|
|
3541
3600
|
{
|
|
3542
|
-
labelTranslationKey: '
|
|
3601
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3543
3602
|
dataKey: 'title',
|
|
3544
3603
|
},
|
|
3545
3604
|
]);
|
|
@@ -3551,7 +3610,7 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3551
3610
|
this.selectedObjecttypeUrl$.next(objectTypeUrl);
|
|
3552
3611
|
}
|
|
3553
3612
|
rowClicked(object, objectTypeSelectItems) {
|
|
3554
|
-
this.documentId$.pipe(take
|
|
3613
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3555
3614
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3556
3615
|
const definition = res.formDefinition;
|
|
3557
3616
|
definition.components = definition.components.map(component => ({
|
|
@@ -3589,29 +3648,28 @@ class DossierDetailTabZaakobjectenComponent {
|
|
|
3589
3648
|
this.objectName$.next(this.getObjectTypeName(objectTypeSelectItems));
|
|
3590
3649
|
this.show();
|
|
3591
3650
|
}
|
|
3592
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3593
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3651
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabZaakobjectenComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3652
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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", "invalid", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "clearable", "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", "tooltipTranslationKey", "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" }] }); }
|
|
3594
3653
|
}
|
|
3595
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3654
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabZaakobjectenComponent, decorators: [{
|
|
3596
3655
|
type: Component,
|
|
3597
|
-
args: [{ selector: 'valtimo-
|
|
3656
|
+
args: [{ selector: 'valtimo-case-detail-tab-zaakobjecten', standalone: true, imports: [
|
|
3598
3657
|
CommonModule,
|
|
3599
3658
|
SelectModule,
|
|
3600
3659
|
InputLabelModule,
|
|
3601
3660
|
ParagraphModule,
|
|
3602
3661
|
TableModule,
|
|
3603
3662
|
VModalModule,
|
|
3604
|
-
TitleModule,
|
|
3605
3663
|
FormIoModule,
|
|
3606
3664
|
TranslateModule,
|
|
3607
|
-
], template: "<!--\n ~ Copyright 2015-
|
|
3608
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3
|
|
3665
|
+
], 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"] }]
|
|
3666
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewZaakobjectModal: [{
|
|
3609
3667
|
type: ViewChild,
|
|
3610
3668
|
args: ['viewZaakobjectModal']
|
|
3611
3669
|
}] } });
|
|
3612
3670
|
|
|
3613
3671
|
/*
|
|
3614
|
-
* Copyright 2015-
|
|
3672
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3615
3673
|
*
|
|
3616
3674
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3617
3675
|
* you may not use this file except in compliance with the License.
|
|
@@ -3625,7 +3683,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3625
3683
|
* See the License for the specific language governing permissions and
|
|
3626
3684
|
* limitations under the License.
|
|
3627
3685
|
*/
|
|
3628
|
-
class
|
|
3686
|
+
class CaseDetailTabObjectTypeComponent {
|
|
3629
3687
|
constructor(route, zaakobjectenService, modalService) {
|
|
3630
3688
|
this.route = route;
|
|
3631
3689
|
this.zaakobjectenService = zaakobjectenService;
|
|
@@ -3664,15 +3722,15 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3664
3722
|
}))));
|
|
3665
3723
|
this.columns$ = new BehaviorSubject([
|
|
3666
3724
|
{
|
|
3667
|
-
labelTranslationKey: '
|
|
3725
|
+
labelTranslationKey: 'case.zaakobjecten.index',
|
|
3668
3726
|
dataKey: 'index',
|
|
3669
3727
|
},
|
|
3670
3728
|
{
|
|
3671
|
-
labelTranslationKey: '
|
|
3729
|
+
labelTranslationKey: 'case.zaakobjecten.registrationAt',
|
|
3672
3730
|
dataKey: 'registrationAt',
|
|
3673
3731
|
},
|
|
3674
3732
|
{
|
|
3675
|
-
labelTranslationKey: '
|
|
3733
|
+
labelTranslationKey: 'case.zaakobjecten.title',
|
|
3676
3734
|
dataKey: 'title',
|
|
3677
3735
|
},
|
|
3678
3736
|
]);
|
|
@@ -3680,7 +3738,7 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3680
3738
|
this.noFormDefinitionComponent$ = new BehaviorSubject(false);
|
|
3681
3739
|
}
|
|
3682
3740
|
rowClicked(object) {
|
|
3683
|
-
this.documentId$.pipe(take
|
|
3741
|
+
this.documentId$.pipe(take(1)).subscribe(documentId => {
|
|
3684
3742
|
this.zaakobjectenService.getObjectTypeForm(documentId, object.url).subscribe(res => {
|
|
3685
3743
|
const definition = res.formDefinition;
|
|
3686
3744
|
definition.components = definition.components.map(component => ({
|
|
@@ -3711,19 +3769,19 @@ class DossierDetailTabObjectTypeComponent {
|
|
|
3711
3769
|
}
|
|
3712
3770
|
this.show();
|
|
3713
3771
|
}
|
|
3714
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3715
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3772
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabObjectTypeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3773
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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"] }] }); }
|
|
3716
3774
|
}
|
|
3717
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3775
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseDetailTabObjectTypeComponent, decorators: [{
|
|
3718
3776
|
type: Component,
|
|
3719
|
-
args: [{ selector: 'valtimo-object-type', standalone: true, imports: [CommonModule, TableModule, ParagraphModule, VModalModule,
|
|
3720
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3
|
|
3777
|
+
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"] }]
|
|
3778
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewObjectModal: [{
|
|
3721
3779
|
type: ViewChild,
|
|
3722
3780
|
args: ['viewObjectModal']
|
|
3723
3781
|
}] } });
|
|
3724
3782
|
|
|
3725
3783
|
/*
|
|
3726
|
-
* Copyright 2015-
|
|
3784
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3727
3785
|
*
|
|
3728
3786
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3729
3787
|
* you may not use this file except in compliance with the License.
|
|
@@ -3739,7 +3797,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3739
3797
|
*/
|
|
3740
3798
|
|
|
3741
3799
|
/*
|
|
3742
|
-
* Copyright 2015-
|
|
3800
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3743
3801
|
*
|
|
3744
3802
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3745
3803
|
* you may not use this file except in compliance with the License.
|
|
@@ -3755,7 +3813,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3755
3813
|
*/
|
|
3756
3814
|
|
|
3757
3815
|
/*
|
|
3758
|
-
* Copyright 2015-
|
|
3816
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3759
3817
|
*
|
|
3760
3818
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3761
3819
|
* you may not use this file except in compliance with the License.
|
|
@@ -3769,9 +3827,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3769
3827
|
* See the License for the specific language governing permissions and
|
|
3770
3828
|
* limitations under the License.
|
|
3771
3829
|
*/
|
|
3830
|
+
class DocumentObjectenApiSyncService extends BaseApiService {
|
|
3831
|
+
constructor(httpClient, configService) {
|
|
3832
|
+
super(httpClient, configService);
|
|
3833
|
+
this.httpClient = httpClient;
|
|
3834
|
+
this.configService = configService;
|
|
3835
|
+
}
|
|
3836
|
+
getObjectManagementConfigurations() {
|
|
3837
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/object/management/configuration`));
|
|
3838
|
+
}
|
|
3839
|
+
getDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3840
|
+
return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3841
|
+
}
|
|
3842
|
+
updateDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag, request) {
|
|
3843
|
+
return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`), request);
|
|
3844
|
+
}
|
|
3845
|
+
deleteDocumentObjectenApiSync(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
3846
|
+
return this.httpClient.delete(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/objecten-api-sync`));
|
|
3847
|
+
}
|
|
3848
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentObjectenApiSyncService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3849
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentObjectenApiSyncService, providedIn: 'root' }); }
|
|
3850
|
+
}
|
|
3851
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentObjectenApiSyncService, decorators: [{
|
|
3852
|
+
type: Injectable,
|
|
3853
|
+
args: [{
|
|
3854
|
+
providedIn: 'root',
|
|
3855
|
+
}]
|
|
3856
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3772
3857
|
|
|
3773
3858
|
/*
|
|
3774
|
-
* Copyright 2015-
|
|
3859
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3775
3860
|
*
|
|
3776
3861
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3777
3862
|
* you may not use this file except in compliance with the License.
|
|
@@ -3787,7 +3872,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3787
3872
|
*/
|
|
3788
3873
|
|
|
3789
3874
|
/*
|
|
3790
|
-
* Copyright 2015-
|
|
3875
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3791
3876
|
*
|
|
3792
3877
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3793
3878
|
* you may not use this file except in compliance with the License.
|
|
@@ -3801,32 +3886,119 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3801
3886
|
* See the License for the specific language governing permissions and
|
|
3802
3887
|
* limitations under the License.
|
|
3803
3888
|
*/
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
this.
|
|
3810
|
-
|
|
3889
|
+
class DocumentObjectenApiSyncComponent {
|
|
3890
|
+
get objectManagementConfigurationId() {
|
|
3891
|
+
return this.formGroup.get('objectManagementConfigurationId') ?? null;
|
|
3892
|
+
}
|
|
3893
|
+
get enabled() {
|
|
3894
|
+
return this.formGroup.get('enabled') ?? null;
|
|
3895
|
+
}
|
|
3896
|
+
constructor(route, documentObjectenApiSyncService, documentService, cdsThemeService, iconService, draftVersionService) {
|
|
3897
|
+
this.route = route;
|
|
3898
|
+
this.documentObjectenApiSyncService = documentObjectenApiSyncService;
|
|
3899
|
+
this.documentService = documentService;
|
|
3900
|
+
this.cdsThemeService = cdsThemeService;
|
|
3901
|
+
this.iconService = iconService;
|
|
3902
|
+
this.draftVersionService = draftVersionService;
|
|
3903
|
+
this.loading$ = new BehaviorSubject(true);
|
|
3904
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
3905
|
+
this._documentDefinition$ = this._params$.pipe(switchMap(params => this.documentService.getDocumentDefinitionByVersion(params?.caseDefinitionKey ?? '', params?.caseDefinitionVersionTag ?? '')));
|
|
3906
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
3907
|
+
? of(false)
|
|
3908
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
3909
|
+
this.documentObjectenApiSync$ = new BehaviorSubject(null);
|
|
3910
|
+
this.objectManagementConfigurationItems$ = this.documentObjectenApiSyncService.getObjectManagementConfigurations().pipe(map(results => results?.map(configuration => ({
|
|
3911
|
+
id: configuration.id,
|
|
3912
|
+
text: configuration.title,
|
|
3913
|
+
}))));
|
|
3914
|
+
this.modalShowing$ = new BehaviorSubject(false);
|
|
3915
|
+
this.currentTheme$ = this.cdsThemeService.currentTheme$;
|
|
3916
|
+
this.formGroup = new FormGroup({
|
|
3917
|
+
objectManagementConfigurationId: new FormControl('', Validators.required),
|
|
3918
|
+
enabled: new FormControl(true),
|
|
3919
|
+
});
|
|
3920
|
+
this.valid$ = new BehaviorSubject(false);
|
|
3921
|
+
this.iconService.registerAll([TrashCan16, Edit16]);
|
|
3922
|
+
}
|
|
3923
|
+
ngOnInit() {
|
|
3924
|
+
this.loadDocumentenObjectenApiSync();
|
|
3925
|
+
}
|
|
3926
|
+
loadDocumentenObjectenApiSync() {
|
|
3927
|
+
this._documentDefinition$
|
|
3928
|
+
.pipe(switchMap((documentDefinition) => this.documentObjectenApiSyncService.getDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)))
|
|
3929
|
+
.subscribe(documentObjectenApiSync => {
|
|
3930
|
+
this.loading$.next(false);
|
|
3931
|
+
this.configSelected(documentObjectenApiSync?.objectManagementConfigurationId);
|
|
3932
|
+
this.enabled?.patchValue(documentObjectenApiSync?.enabled);
|
|
3933
|
+
this.documentObjectenApiSync$.next(documentObjectenApiSync);
|
|
3934
|
+
});
|
|
3935
|
+
}
|
|
3936
|
+
remove() {
|
|
3937
|
+
this._documentDefinition$
|
|
3938
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.deleteDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag)), tap(() => {
|
|
3939
|
+
this.documentObjectenApiSync$.next(null);
|
|
3940
|
+
}))
|
|
3941
|
+
.subscribe();
|
|
3942
|
+
}
|
|
3943
|
+
submit() {
|
|
3944
|
+
const formValues = this.formGroup.getRawValue();
|
|
3945
|
+
this._documentDefinition$
|
|
3946
|
+
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.updateDocumentObjectenApiSync(documentDefinition.id.caseDefinitionId.key, documentDefinition.id.caseDefinitionId.versionTag, {
|
|
3947
|
+
objectManagementConfigurationId: formValues.objectManagementConfigurationId ?? '',
|
|
3948
|
+
enabled: !!formValues.enabled,
|
|
3949
|
+
})))
|
|
3950
|
+
.subscribe(() => {
|
|
3951
|
+
this.loadDocumentenObjectenApiSync();
|
|
3952
|
+
this.hideModal();
|
|
3953
|
+
});
|
|
3954
|
+
}
|
|
3955
|
+
onModalClose() {
|
|
3956
|
+
this.hideModal();
|
|
3957
|
+
}
|
|
3958
|
+
showModal() {
|
|
3959
|
+
this.modalShowing$.next(true);
|
|
3811
3960
|
}
|
|
3812
|
-
|
|
3813
|
-
|
|
3961
|
+
configSelected(selectedId) {
|
|
3962
|
+
if (!this.objectManagementConfigurationId)
|
|
3963
|
+
return;
|
|
3964
|
+
if (!selectedId) {
|
|
3965
|
+
this.objectManagementConfigurationId.patchValue('');
|
|
3966
|
+
}
|
|
3967
|
+
else {
|
|
3968
|
+
this.objectManagementConfigurationId.patchValue(selectedId);
|
|
3969
|
+
}
|
|
3814
3970
|
}
|
|
3815
|
-
|
|
3816
|
-
|
|
3971
|
+
hideModal() {
|
|
3972
|
+
this.modalShowing$.next(false);
|
|
3817
3973
|
}
|
|
3818
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3819
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ContactMomentService, providedIn: 'root' }); }
|
|
3974
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", 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 }); }
|
|
3975
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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", "invalid", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "clearable", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "dataTestId"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: TilesModule }, { kind: "component", type: i5$1.Tile, selector: "cds-tile, ibm-tile", inputs: ["theme"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "directive", type: ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: RenderInBodyComponent, selector: "valtimo-render-in-body" }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }] }); }
|
|
3820
3976
|
}
|
|
3821
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3822
|
-
type:
|
|
3823
|
-
args: [{
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3977
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
|
|
3978
|
+
type: Component,
|
|
3979
|
+
args: [{ selector: 'valtimo-document-objecten-api-sync', standalone: true, imports: [
|
|
3980
|
+
ButtonModule,
|
|
3981
|
+
CheckboxModule,
|
|
3982
|
+
CommonModule,
|
|
3983
|
+
FormModule,
|
|
3984
|
+
FormsModule,
|
|
3985
|
+
IconModule,
|
|
3986
|
+
InputModule$1,
|
|
3987
|
+
LayerModule,
|
|
3988
|
+
ModalModule,
|
|
3989
|
+
ReactiveFormsModule,
|
|
3990
|
+
SelectModule,
|
|
3991
|
+
SpinnerModule,
|
|
3992
|
+
TilesModule,
|
|
3993
|
+
TranslateModule,
|
|
3994
|
+
ValtimoCdsModalDirective,
|
|
3995
|
+
RenderInBodyComponent,
|
|
3996
|
+
CaseManagementDraftWarningComponent,
|
|
3997
|
+
], 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"] }]
|
|
3998
|
+
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i4$1.DocumentService }, { type: i3.CdsThemeService }, { type: i5$1.IconService }, { type: i2.DraftVersionService }] });
|
|
3827
3999
|
|
|
3828
4000
|
/*
|
|
3829
|
-
* Copyright 2015-
|
|
4001
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
3830
4002
|
*
|
|
3831
4003
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3832
4004
|
* you may not use this file except in compliance with the License.
|
|
@@ -3842,701 +4014,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3842
4014
|
*/
|
|
3843
4015
|
|
|
3844
4016
|
/*
|
|
3845
|
-
* Copyright 2015-
|
|
3846
|
-
*
|
|
3847
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3848
|
-
* you may not use this file except in compliance with the License.
|
|
3849
|
-
* You may obtain a copy of the License at
|
|
3850
|
-
*
|
|
3851
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3852
|
-
*
|
|
3853
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3854
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3855
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3856
|
-
* See the License for the specific language governing permissions and
|
|
3857
|
-
* limitations under the License.
|
|
3858
|
-
*/
|
|
3859
|
-
moment.locale(localStorage.getItem('langKey') || '');
|
|
3860
|
-
class DossierDetailTabContactMomentsComponent {
|
|
3861
|
-
constructor(contactMomentService, alertService, translateService) {
|
|
3862
|
-
this.contactMomentService = contactMomentService;
|
|
3863
|
-
this.alertService = alertService;
|
|
3864
|
-
this.translateService = translateService;
|
|
3865
|
-
this.refetchContactMoments$ = new BehaviorSubject('');
|
|
3866
|
-
this.contactMoments$ = this.refetchContactMoments$.pipe(switchMap$1(() => this.contactMomentService.getContactMoments()), map$1(contactMoments => contactMoments.map(contactMoment => {
|
|
3867
|
-
const registratieDatum = moment(contactMoment.registratiedatum);
|
|
3868
|
-
return new TimelineItemImpl(registratieDatum.format('DD MMM YYYY'), registratieDatum.format('HH:mm'), contactMoment.medewerkerIdentificatie.achternaam, contactMoment.kanaal, contactMoment.tekst, null);
|
|
3869
|
-
})));
|
|
3870
|
-
this.text$ = new BehaviorSubject('');
|
|
3871
|
-
this.channel$ = new BehaviorSubject('MAIL');
|
|
3872
|
-
this.requestData$ = combineLatest([this.text$, this.channel$]);
|
|
3873
|
-
this.valid$ = this.requestData$.pipe(map$1(([text, channel]) => !!(text && channel)));
|
|
3874
|
-
this.disabled$ = new BehaviorSubject(false);
|
|
3875
|
-
}
|
|
3876
|
-
textChange(text) {
|
|
3877
|
-
this.text$.next(text);
|
|
3878
|
-
}
|
|
3879
|
-
buttonClick() {
|
|
3880
|
-
this.modal.show();
|
|
3881
|
-
}
|
|
3882
|
-
saveNote() {
|
|
3883
|
-
this.disable();
|
|
3884
|
-
this.requestData$.pipe(take$1(1)).subscribe(([text, channel]) => {
|
|
3885
|
-
this.contactMomentService.saveContactMoment({ kanaal: channel, tekst: text }).subscribe(() => {
|
|
3886
|
-
this.alertService.success(this.translateService.instant('dossier.contactMoments.saveSuccess'));
|
|
3887
|
-
this.enable();
|
|
3888
|
-
this.clear();
|
|
3889
|
-
this.modal.hide();
|
|
3890
|
-
this.refetchContactMoments();
|
|
3891
|
-
}, () => {
|
|
3892
|
-
this.enable();
|
|
3893
|
-
});
|
|
3894
|
-
});
|
|
3895
|
-
}
|
|
3896
|
-
disable() {
|
|
3897
|
-
this.disabled$.next(true);
|
|
3898
|
-
}
|
|
3899
|
-
enable() {
|
|
3900
|
-
this.disabled$.next(false);
|
|
3901
|
-
}
|
|
3902
|
-
clear() {
|
|
3903
|
-
this.text$.next('');
|
|
3904
|
-
}
|
|
3905
|
-
refetchContactMoments() {
|
|
3906
|
-
this.refetchContactMoments$.next('');
|
|
3907
|
-
}
|
|
3908
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, deps: [{ token: ContactMomentService }, { token: i3$1.AlertService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3909
|
-
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"] }] }); }
|
|
3910
|
-
}
|
|
3911
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, decorators: [{
|
|
3912
|
-
type: Component,
|
|
3913
|
-
args: [{ selector: 'valtimo-dossier-detail-tab-contact-moments', standalone: true, imports: [CommonModule, ModalModule$1, TranslateModule, FormsModule, SpinnerModule, TimelineModule], 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"] }]
|
|
3914
|
-
}], ctorParameters: () => [{ type: ContactMomentService }, { type: i3$1.AlertService }, { type: i3.TranslateService }], propDecorators: { modal: [{
|
|
3915
|
-
type: ViewChild,
|
|
3916
|
-
args: ['contactMomentsNoteModal']
|
|
3917
|
-
}] } });
|
|
3918
|
-
|
|
3919
|
-
/*
|
|
3920
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3921
|
-
*
|
|
3922
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3923
|
-
* you may not use this file except in compliance with the License.
|
|
3924
|
-
* You may obtain a copy of the License at
|
|
3925
|
-
*
|
|
3926
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3927
|
-
*
|
|
3928
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3929
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3930
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3931
|
-
* See the License for the specific language governing permissions and
|
|
3932
|
-
* limitations under the License.
|
|
3933
|
-
*/
|
|
3934
|
-
|
|
3935
|
-
/*
|
|
3936
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3937
|
-
*
|
|
3938
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3939
|
-
* you may not use this file except in compliance with the License.
|
|
3940
|
-
* You may obtain a copy of the License at
|
|
3941
|
-
*
|
|
3942
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3943
|
-
*
|
|
3944
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3945
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3946
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3947
|
-
* See the License for the specific language governing permissions and
|
|
3948
|
-
* limitations under the License.
|
|
3949
|
-
*/
|
|
3950
|
-
|
|
3951
|
-
/*
|
|
3952
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3953
|
-
*
|
|
3954
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3955
|
-
* you may not use this file except in compliance with the License.
|
|
3956
|
-
* You may obtain a copy of the License at
|
|
3957
|
-
*
|
|
3958
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3959
|
-
*
|
|
3960
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3961
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
3962
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3963
|
-
* See the License for the specific language governing permissions and
|
|
3964
|
-
* limitations under the License.
|
|
3965
|
-
*/
|
|
3966
|
-
/**
|
|
3967
|
-
* @deprecated Will be replace by new plugins
|
|
3968
|
-
*/
|
|
3969
|
-
class CustomerService {
|
|
3970
|
-
constructor(http, configService) {
|
|
3971
|
-
this.http = http;
|
|
3972
|
-
this.valtimoEndpointUri = configService.config.valtimoApi.endpointUri;
|
|
3973
|
-
}
|
|
3974
|
-
getCustomers(request) {
|
|
3975
|
-
return this.http.post(`${this.valtimoEndpointUri}v1/haalcentraal/personen`, request);
|
|
3976
|
-
}
|
|
3977
|
-
getCustomerCases(bsn) {
|
|
3978
|
-
return this.http.get(`${this.valtimoEndpointUri}v1/zaken/${bsn}`);
|
|
3979
|
-
}
|
|
3980
|
-
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 }); }
|
|
3981
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerService, providedIn: 'root' }); }
|
|
3982
|
-
}
|
|
3983
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerService, decorators: [{
|
|
3984
|
-
type: Injectable,
|
|
3985
|
-
args: [{
|
|
3986
|
-
providedIn: 'root',
|
|
3987
|
-
}]
|
|
3988
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
3989
|
-
|
|
3990
|
-
/*
|
|
3991
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3992
|
-
*
|
|
3993
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3994
|
-
* you may not use this file except in compliance with the License.
|
|
3995
|
-
* You may obtain a copy of the License at
|
|
3996
|
-
*
|
|
3997
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
3998
|
-
*
|
|
3999
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4000
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4001
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4002
|
-
* See the License for the specific language governing permissions and
|
|
4003
|
-
* limitations under the License.
|
|
4004
|
-
*/
|
|
4005
|
-
|
|
4006
|
-
/*
|
|
4007
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4008
|
-
*
|
|
4009
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4010
|
-
* you may not use this file except in compliance with the License.
|
|
4011
|
-
* You may obtain a copy of the License at
|
|
4012
|
-
*
|
|
4013
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4014
|
-
*
|
|
4015
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4016
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4017
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4018
|
-
* See the License for the specific language governing permissions and
|
|
4019
|
-
* limitations under the License.
|
|
4020
|
-
*/
|
|
4021
|
-
|
|
4022
|
-
/*
|
|
4023
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4024
|
-
*
|
|
4025
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4026
|
-
* you may not use this file except in compliance with the License.
|
|
4027
|
-
* You may obtain a copy of the License at
|
|
4028
|
-
*
|
|
4029
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4030
|
-
*
|
|
4031
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4032
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4033
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4034
|
-
* See the License for the specific language governing permissions and
|
|
4035
|
-
* limitations under the License.
|
|
4036
|
-
*/
|
|
4037
|
-
|
|
4038
|
-
/*
|
|
4039
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4040
|
-
*
|
|
4041
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4042
|
-
* you may not use this file except in compliance with the License.
|
|
4043
|
-
* You may obtain a copy of the License at
|
|
4044
|
-
*
|
|
4045
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4046
|
-
*
|
|
4047
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4048
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4049
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4050
|
-
* See the License for the specific language governing permissions and
|
|
4051
|
-
* limitations under the License.
|
|
4052
|
-
*/
|
|
4053
|
-
|
|
4054
|
-
/*
|
|
4055
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4056
|
-
*
|
|
4057
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4058
|
-
* you may not use this file except in compliance with the License.
|
|
4059
|
-
* You may obtain a copy of the License at
|
|
4060
|
-
*
|
|
4061
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4062
|
-
*
|
|
4063
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4064
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4065
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4066
|
-
* See the License for the specific language governing permissions and
|
|
4067
|
-
* limitations under the License.
|
|
4068
|
-
*/
|
|
4069
|
-
/**
|
|
4070
|
-
* @deprecated Will be replace by new plugins
|
|
4071
|
-
*/
|
|
4072
|
-
class CustomerListComponent {
|
|
4073
|
-
constructor(customerService, translateService, configService, router) {
|
|
4074
|
-
this.customerService = customerService;
|
|
4075
|
-
this.translateService = translateService;
|
|
4076
|
-
this.configService = configService;
|
|
4077
|
-
this.router = router;
|
|
4078
|
-
this.fields$ = combineLatest([
|
|
4079
|
-
this.translateService.stream('customers.name'),
|
|
4080
|
-
this.translateService.stream('customers.citizenServiceNumber'),
|
|
4081
|
-
this.translateService.stream('customers.dateOfBirth'),
|
|
4082
|
-
]).pipe(map$1(([nameLabel, numberLabel, dateOfBirthLabel]) => [
|
|
4083
|
-
{
|
|
4084
|
-
label: numberLabel,
|
|
4085
|
-
key: 'citizenServiceNumber',
|
|
4086
|
-
},
|
|
4087
|
-
{
|
|
4088
|
-
label: nameLabel,
|
|
4089
|
-
key: 'name',
|
|
4090
|
-
},
|
|
4091
|
-
{
|
|
4092
|
-
label: dateOfBirthLabel,
|
|
4093
|
-
key: 'dateOfBirth',
|
|
4094
|
-
},
|
|
4095
|
-
]));
|
|
4096
|
-
this.bsn$ = new BehaviorSubject('');
|
|
4097
|
-
this.bsnValid$ = this.bsn$.pipe(map$1(bsn => {
|
|
4098
|
-
const regex = new RegExp(/^[0-9]{9}$/gm);
|
|
4099
|
-
return regex.test(bsn);
|
|
4100
|
-
}));
|
|
4101
|
-
this.dateOfBirth$ = new BehaviorSubject('');
|
|
4102
|
-
this.dateOfBirthValid$ = this.dateOfBirth$.pipe(map$1(dateOfBirth => {
|
|
4103
|
-
const regex = new RegExp(/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/gm);
|
|
4104
|
-
return regex.test(dateOfBirth);
|
|
4105
|
-
}));
|
|
4106
|
-
this.familyName$ = new BehaviorSubject('');
|
|
4107
|
-
this.searchParameters$ = combineLatest([this.bsn$, this.dateOfBirth$, this.familyName$, this.bsnValid$, this.dateOfBirthValid$]).pipe(map$1(([bsn, dateOfBirth, familyName, bsnValid, dateOfBirthValid]) => {
|
|
4108
|
-
if (bsn && bsnValid) {
|
|
4109
|
-
this.loading$.next(true);
|
|
4110
|
-
return { bsn };
|
|
4111
|
-
}
|
|
4112
|
-
else if (dateOfBirth && familyName && dateOfBirthValid) {
|
|
4113
|
-
this.loading$.next(true);
|
|
4114
|
-
return {
|
|
4115
|
-
geslachtsnaam: familyName,
|
|
4116
|
-
geboortedatum: dateOfBirth,
|
|
4117
|
-
};
|
|
4118
|
-
}
|
|
4119
|
-
return undefined;
|
|
4120
|
-
}));
|
|
4121
|
-
this.customers$ = this.searchParameters$.pipe(debounceTime$1(500), switchMap$1(searchParameters => {
|
|
4122
|
-
if (searchParameters?.bsn ||
|
|
4123
|
-
(searchParameters?.geslachtsnaam &&
|
|
4124
|
-
searchParameters?.geboortedatum)) {
|
|
4125
|
-
return this.customerService
|
|
4126
|
-
.getCustomers(searchParameters)
|
|
4127
|
-
.pipe(catchError(() => of([])));
|
|
4128
|
-
}
|
|
4129
|
-
return of([]);
|
|
4130
|
-
}), map$1(customers => customers.map(customer => ({
|
|
4131
|
-
citizenServiceNumber: customer.burgerservicenummer,
|
|
4132
|
-
dateOfBirth: customer.geboorteDatum,
|
|
4133
|
-
name: `${customer.geslachtsnaam}, ${customer.voornamen} ${customer.voorletters}`,
|
|
4134
|
-
}))), tap$1(() => {
|
|
4135
|
-
this.loading$.next(false);
|
|
4136
|
-
}));
|
|
4137
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4138
|
-
}
|
|
4139
|
-
bsnChange(bsn) {
|
|
4140
|
-
this.clearDateOfBirth();
|
|
4141
|
-
this.clearFamilyName();
|
|
4142
|
-
this.bsn$.next(bsn);
|
|
4143
|
-
}
|
|
4144
|
-
dateOfBirthChange(dateOfBirth) {
|
|
4145
|
-
this.clearBsn();
|
|
4146
|
-
this.dateOfBirth$.next(dateOfBirth);
|
|
4147
|
-
}
|
|
4148
|
-
familyNameChange(familyName) {
|
|
4149
|
-
this.clearBsn();
|
|
4150
|
-
this.familyName$.next(familyName);
|
|
4151
|
-
}
|
|
4152
|
-
rowClick(customer) {
|
|
4153
|
-
const config = this.configService.config;
|
|
4154
|
-
const bsn = customer?.citizenServiceNumber;
|
|
4155
|
-
if (bsn && config?.featureToggles?.enableHackathonCasesPage) {
|
|
4156
|
-
this.router.navigate([`/klanten/klant/${bsn}`]);
|
|
4157
|
-
}
|
|
4158
|
-
}
|
|
4159
|
-
clearBsn() {
|
|
4160
|
-
this.bsn$.next('');
|
|
4161
|
-
}
|
|
4162
|
-
clearDateOfBirth() {
|
|
4163
|
-
this.dateOfBirth$.next('');
|
|
4164
|
-
}
|
|
4165
|
-
clearFamilyName() {
|
|
4166
|
-
this.familyName$.next('');
|
|
4167
|
-
}
|
|
4168
|
-
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 }); }
|
|
4169
|
-
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" }] }); }
|
|
4170
|
-
}
|
|
4171
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerListComponent, decorators: [{
|
|
4172
|
-
type: Component,
|
|
4173
|
-
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"] }]
|
|
4174
|
-
}], ctorParameters: () => [{ type: CustomerService }, { type: i3.TranslateService }, { type: i2.ConfigService }, { type: i1$2.Router }] });
|
|
4175
|
-
|
|
4176
|
-
/*
|
|
4177
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4178
|
-
*
|
|
4179
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4180
|
-
* you may not use this file except in compliance with the License.
|
|
4181
|
-
* You may obtain a copy of the License at
|
|
4182
|
-
*
|
|
4183
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4184
|
-
*
|
|
4185
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4186
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4187
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4188
|
-
* See the License for the specific language governing permissions and
|
|
4189
|
-
* limitations under the License.
|
|
4190
|
-
*/
|
|
4191
|
-
/**
|
|
4192
|
-
* @deprecated Will be replace by new plugins
|
|
4193
|
-
*/
|
|
4194
|
-
class CasesListComponent {
|
|
4195
|
-
constructor(route, customerService) {
|
|
4196
|
-
this.route = route;
|
|
4197
|
-
this.customerService = customerService;
|
|
4198
|
-
this.customerCases$ = this.route.params.pipe(switchMap$1(params => (params?.bsn ? this.customerService.getCustomerCases(params.bsn) : of([]))), tap$1(() => this.loading$.next(false)));
|
|
4199
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4200
|
-
this.columns$ = new BehaviorSubject([
|
|
4201
|
-
{
|
|
4202
|
-
labelTranslationKey: 'customerCases.labels.zaakNummer',
|
|
4203
|
-
dataKey: 'zaakNummer',
|
|
4204
|
-
},
|
|
4205
|
-
{
|
|
4206
|
-
labelTranslationKey: 'customerCases.labels.zaakStatus',
|
|
4207
|
-
dataKey: 'zaakStatus',
|
|
4208
|
-
},
|
|
4209
|
-
{
|
|
4210
|
-
labelTranslationKey: 'customerCases.labels.zaakType',
|
|
4211
|
-
dataKey: 'zaakType',
|
|
4212
|
-
},
|
|
4213
|
-
]);
|
|
4214
|
-
}
|
|
4215
|
-
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 }); }
|
|
4216
|
-
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" }] }); }
|
|
4217
|
-
}
|
|
4218
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CasesListComponent, decorators: [{
|
|
4219
|
-
type: Component,
|
|
4220
|
-
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"] }]
|
|
4221
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: CustomerService }] });
|
|
4222
|
-
|
|
4223
|
-
/*
|
|
4224
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4225
|
-
*
|
|
4226
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4227
|
-
* you may not use this file except in compliance with the License.
|
|
4228
|
-
* You may obtain a copy of the License at
|
|
4229
|
-
*
|
|
4230
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4231
|
-
*
|
|
4232
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4233
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4234
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4235
|
-
* See the License for the specific language governing permissions and
|
|
4236
|
-
* limitations under the License.
|
|
4237
|
-
*/
|
|
4238
|
-
const routes$1 = [
|
|
4239
|
-
{
|
|
4240
|
-
path: 'klanten',
|
|
4241
|
-
component: CustomerListComponent,
|
|
4242
|
-
canActivate: [AuthGuardService],
|
|
4243
|
-
data: { title: 'Customers', roles: [ROLE_USER] },
|
|
4244
|
-
},
|
|
4245
|
-
{
|
|
4246
|
-
path: 'klanten/klant/:bsn',
|
|
4247
|
-
component: CasesListComponent,
|
|
4248
|
-
canActivate: [AuthGuardService],
|
|
4249
|
-
data: { title: 'customerCases', roles: [ROLE_USER] },
|
|
4250
|
-
},
|
|
4251
|
-
];
|
|
4252
|
-
class CustomerRoutingModule {
|
|
4253
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4254
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, imports: [CommonModule, i1$2.RouterModule], exports: [RouterModule] }); }
|
|
4255
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, imports: [CommonModule, RouterModule.forChild(routes$1), RouterModule] }); }
|
|
4256
|
-
}
|
|
4257
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerRoutingModule, decorators: [{
|
|
4258
|
-
type: NgModule,
|
|
4259
|
-
args: [{
|
|
4260
|
-
imports: [CommonModule, RouterModule.forChild(routes$1)],
|
|
4261
|
-
exports: [RouterModule],
|
|
4262
|
-
}]
|
|
4263
|
-
}] });
|
|
4264
|
-
|
|
4265
|
-
/*
|
|
4266
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4267
|
-
*
|
|
4268
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4269
|
-
* you may not use this file except in compliance with the License.
|
|
4270
|
-
* You may obtain a copy of the License at
|
|
4271
|
-
*
|
|
4272
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4273
|
-
*
|
|
4274
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4275
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4276
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4277
|
-
* See the License for the specific language governing permissions and
|
|
4278
|
-
* limitations under the License.
|
|
4279
|
-
*/
|
|
4280
|
-
/**
|
|
4281
|
-
* @deprecated Will be replace by new plugins
|
|
4282
|
-
*/
|
|
4283
|
-
class CustomerModule {
|
|
4284
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4285
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, declarations: [CustomerListComponent, CasesListComponent], imports: [CommonModule,
|
|
4286
|
-
WidgetModule,
|
|
4287
|
-
CustomerRoutingModule,
|
|
4288
|
-
ListModule,
|
|
4289
|
-
SpinnerModule,
|
|
4290
|
-
TranslateModule,
|
|
4291
|
-
FilterSidebarModule,
|
|
4292
|
-
FormsModule,
|
|
4293
|
-
PageModule,
|
|
4294
|
-
TitleModule,
|
|
4295
|
-
ParagraphModule,
|
|
4296
|
-
TableModule], exports: [CustomerListComponent, CasesListComponent] }); }
|
|
4297
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, imports: [CommonModule,
|
|
4298
|
-
WidgetModule,
|
|
4299
|
-
CustomerRoutingModule,
|
|
4300
|
-
ListModule,
|
|
4301
|
-
SpinnerModule,
|
|
4302
|
-
TranslateModule,
|
|
4303
|
-
FilterSidebarModule,
|
|
4304
|
-
FormsModule,
|
|
4305
|
-
PageModule,
|
|
4306
|
-
TitleModule,
|
|
4307
|
-
ParagraphModule,
|
|
4308
|
-
TableModule] }); }
|
|
4309
|
-
}
|
|
4310
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerModule, decorators: [{
|
|
4311
|
-
type: NgModule,
|
|
4312
|
-
args: [{
|
|
4313
|
-
imports: [
|
|
4314
|
-
CommonModule,
|
|
4315
|
-
WidgetModule,
|
|
4316
|
-
CustomerRoutingModule,
|
|
4317
|
-
ListModule,
|
|
4318
|
-
SpinnerModule,
|
|
4319
|
-
TranslateModule,
|
|
4320
|
-
FilterSidebarModule,
|
|
4321
|
-
FormsModule,
|
|
4322
|
-
PageModule,
|
|
4323
|
-
TitleModule,
|
|
4324
|
-
ParagraphModule,
|
|
4325
|
-
TableModule,
|
|
4326
|
-
],
|
|
4327
|
-
declarations: [CustomerListComponent, CasesListComponent],
|
|
4328
|
-
exports: [CustomerListComponent, CasesListComponent],
|
|
4329
|
-
}]
|
|
4330
|
-
}] });
|
|
4331
|
-
|
|
4332
|
-
/*
|
|
4333
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4334
|
-
*
|
|
4335
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4336
|
-
* you may not use this file except in compliance with the License.
|
|
4337
|
-
* You may obtain a copy of the License at
|
|
4338
|
-
*
|
|
4339
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4340
|
-
*
|
|
4341
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4342
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4343
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4344
|
-
* See the License for the specific language governing permissions and
|
|
4345
|
-
* limitations under the License.
|
|
4346
|
-
*/
|
|
4347
|
-
|
|
4348
|
-
/*
|
|
4349
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4350
|
-
*
|
|
4351
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4352
|
-
* you may not use this file except in compliance with the License.
|
|
4353
|
-
* You may obtain a copy of the License at
|
|
4354
|
-
*
|
|
4355
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4356
|
-
*
|
|
4357
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4358
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4359
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4360
|
-
* See the License for the specific language governing permissions and
|
|
4361
|
-
* limitations under the License.
|
|
4362
|
-
*/
|
|
4363
|
-
class DocumentObjectenApiSyncService extends BaseApiService {
|
|
4364
|
-
constructor(httpClient, configService) {
|
|
4365
|
-
super(httpClient, configService);
|
|
4366
|
-
this.httpClient = httpClient;
|
|
4367
|
-
this.configService = configService;
|
|
4368
|
-
}
|
|
4369
|
-
getDocumentDefinition(documentDefinitionName) {
|
|
4370
|
-
return this.httpClient.get(this.getApiUrl(`/v1/document-definition/${documentDefinitionName}`));
|
|
4371
|
-
}
|
|
4372
|
-
getObjectManagementConfigurations() {
|
|
4373
|
-
return this.httpClient.get(this.getApiUrl(`/management/v1/object/management/configuration`));
|
|
4374
|
-
}
|
|
4375
|
-
getDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion) {
|
|
4376
|
-
return this.httpClient.get(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`));
|
|
4377
|
-
}
|
|
4378
|
-
updateDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion, request) {
|
|
4379
|
-
return this.httpClient.put(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`), request);
|
|
4380
|
-
}
|
|
4381
|
-
deleteDocumentObjectenApiSync(documentDefinitionName, documentDefinitionVersion) {
|
|
4382
|
-
return this.httpClient.delete(this.getApiUrl(`/management/v1/document-definition/${documentDefinitionName}/version/${documentDefinitionVersion}/objecten-api-sync`));
|
|
4383
|
-
}
|
|
4384
|
-
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 }); }
|
|
4385
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncService, providedIn: 'root' }); }
|
|
4386
|
-
}
|
|
4387
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncService, decorators: [{
|
|
4388
|
-
type: Injectable,
|
|
4389
|
-
args: [{
|
|
4390
|
-
providedIn: 'root',
|
|
4391
|
-
}]
|
|
4392
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
4393
|
-
|
|
4394
|
-
/*
|
|
4395
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4396
|
-
*
|
|
4397
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4398
|
-
* you may not use this file except in compliance with the License.
|
|
4399
|
-
* You may obtain a copy of the License at
|
|
4400
|
-
*
|
|
4401
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4402
|
-
*
|
|
4403
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4404
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4405
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4406
|
-
* See the License for the specific language governing permissions and
|
|
4407
|
-
* limitations under the License.
|
|
4408
|
-
*/
|
|
4409
|
-
|
|
4410
|
-
/*
|
|
4411
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4412
|
-
*
|
|
4413
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4414
|
-
* you may not use this file except in compliance with the License.
|
|
4415
|
-
* You may obtain a copy of the License at
|
|
4416
|
-
*
|
|
4417
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4418
|
-
*
|
|
4419
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4420
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4421
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4422
|
-
* See the License for the specific language governing permissions and
|
|
4423
|
-
* limitations under the License.
|
|
4424
|
-
*/
|
|
4425
|
-
class DocumentObjectenApiSyncComponent {
|
|
4426
|
-
get objectManagementConfigurationId() {
|
|
4427
|
-
return this.formGroup.get('objectManagementConfigurationId');
|
|
4428
|
-
}
|
|
4429
|
-
get enabled() {
|
|
4430
|
-
return this.formGroup.get('enabled');
|
|
4431
|
-
}
|
|
4432
|
-
constructor(route, documentObjectenApiSyncService, cdsThemeService) {
|
|
4433
|
-
this.route = route;
|
|
4434
|
-
this.documentObjectenApiSyncService = documentObjectenApiSyncService;
|
|
4435
|
-
this.cdsThemeService = cdsThemeService;
|
|
4436
|
-
this.loading$ = new BehaviorSubject(true);
|
|
4437
|
-
this.documentDefinitionName$ = this.route.params.pipe(map(params => params.name || ''));
|
|
4438
|
-
this.documentDefinition$ = this.documentDefinitionName$.pipe(switchMap(documentDefinitionName => this.documentObjectenApiSyncService.getDocumentDefinition(documentDefinitionName)));
|
|
4439
|
-
this.documentObjectenApiSync$ = new BehaviorSubject(null);
|
|
4440
|
-
this.objectManagementConfigurationItems$ = this.documentObjectenApiSyncService.getObjectManagementConfigurations().pipe(map(results => results?.map(configuration => ({
|
|
4441
|
-
id: configuration.id,
|
|
4442
|
-
text: configuration.title,
|
|
4443
|
-
}))));
|
|
4444
|
-
this.modalShowing$ = new BehaviorSubject(false);
|
|
4445
|
-
this.currentTheme$ = this.cdsThemeService.currentTheme$;
|
|
4446
|
-
this.formGroup = new FormGroup({
|
|
4447
|
-
objectManagementConfigurationId: new FormControl('', Validators.required),
|
|
4448
|
-
enabled: new FormControl(true),
|
|
4449
|
-
});
|
|
4450
|
-
this.valid$ = new BehaviorSubject(false);
|
|
4451
|
-
}
|
|
4452
|
-
ngOnInit() {
|
|
4453
|
-
this.loadDocumentenObjectenApiSync();
|
|
4454
|
-
}
|
|
4455
|
-
loadDocumentenObjectenApiSync() {
|
|
4456
|
-
this.documentDefinition$
|
|
4457
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.getDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version)))
|
|
4458
|
-
.subscribe(documentObjectenApiSync => {
|
|
4459
|
-
this.loading$.next(false);
|
|
4460
|
-
this.configSelected(documentObjectenApiSync?.objectManagementConfigurationId);
|
|
4461
|
-
this.enabled.patchValue(documentObjectenApiSync?.enabled);
|
|
4462
|
-
this.documentObjectenApiSync$.next(documentObjectenApiSync);
|
|
4463
|
-
});
|
|
4464
|
-
}
|
|
4465
|
-
remove() {
|
|
4466
|
-
this.documentDefinition$
|
|
4467
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.deleteDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version)), tap(() => {
|
|
4468
|
-
this.documentObjectenApiSync$.next(null);
|
|
4469
|
-
}))
|
|
4470
|
-
.subscribe();
|
|
4471
|
-
}
|
|
4472
|
-
submit() {
|
|
4473
|
-
const formValues = this.formGroup.getRawValue();
|
|
4474
|
-
this.documentDefinition$
|
|
4475
|
-
.pipe(switchMap(documentDefinition => this.documentObjectenApiSyncService.updateDocumentObjectenApiSync(documentDefinition.id.name, documentDefinition.id.version, {
|
|
4476
|
-
objectManagementConfigurationId: formValues.objectManagementConfigurationId,
|
|
4477
|
-
enabled: formValues.enabled,
|
|
4478
|
-
})))
|
|
4479
|
-
.subscribe(() => {
|
|
4480
|
-
this.loadDocumentenObjectenApiSync();
|
|
4481
|
-
this.hideModal();
|
|
4482
|
-
});
|
|
4483
|
-
}
|
|
4484
|
-
onModalClose() {
|
|
4485
|
-
this.hideModal();
|
|
4486
|
-
}
|
|
4487
|
-
showModal() {
|
|
4488
|
-
this.modalShowing$.next(true);
|
|
4489
|
-
}
|
|
4490
|
-
configSelected(selectedId) {
|
|
4491
|
-
if (!selectedId) {
|
|
4492
|
-
this.objectManagementConfigurationId.patchValue('');
|
|
4493
|
-
}
|
|
4494
|
-
else {
|
|
4495
|
-
this.objectManagementConfigurationId.patchValue(selectedId);
|
|
4496
|
-
}
|
|
4497
|
-
}
|
|
4498
|
-
hideModal() {
|
|
4499
|
-
this.modalShowing$.next(false);
|
|
4500
|
-
}
|
|
4501
|
-
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 }); }
|
|
4502
|
-
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]" }] }); }
|
|
4503
|
-
}
|
|
4504
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
|
|
4505
|
-
type: Component,
|
|
4506
|
-
args: [{ selector: 'valtimo-document-objecten-api-sync', standalone: true, imports: [
|
|
4507
|
-
CommonModule,
|
|
4508
|
-
FormsModule,
|
|
4509
|
-
TranslateModule,
|
|
4510
|
-
SpinnerModule,
|
|
4511
|
-
FormModule,
|
|
4512
|
-
InputModule$1,
|
|
4513
|
-
SelectModule,
|
|
4514
|
-
ValtimoCdsModalDirectiveModule,
|
|
4515
|
-
CheckboxModule,
|
|
4516
|
-
ReactiveFormsModule,
|
|
4517
|
-
ButtonModule,
|
|
4518
|
-
ModalModule,
|
|
4519
|
-
], 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"] }]
|
|
4520
|
-
}], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i3$1.CdsThemeService }] });
|
|
4521
|
-
|
|
4522
|
-
/*
|
|
4523
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4524
|
-
*
|
|
4525
|
-
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4526
|
-
* you may not use this file except in compliance with the License.
|
|
4527
|
-
* You may obtain a copy of the License at
|
|
4528
|
-
*
|
|
4529
|
-
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4530
|
-
*
|
|
4531
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
4532
|
-
* distributed under the License is distributed on an "AS IS" basis,
|
|
4533
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4534
|
-
* See the License for the specific language governing permissions and
|
|
4535
|
-
* limitations under the License.
|
|
4536
|
-
*/
|
|
4537
|
-
|
|
4538
|
-
/*
|
|
4539
|
-
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
4017
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4540
4018
|
*
|
|
4541
4019
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4542
4020
|
* you may not use this file except in compliance with the License.
|
|
@@ -4552,7 +4030,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4552
4030
|
*/
|
|
4553
4031
|
|
|
4554
4032
|
/*
|
|
4555
|
-
* Copyright 2015-
|
|
4033
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4556
4034
|
*
|
|
4557
4035
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4558
4036
|
* you may not use this file except in compliance with the License.
|
|
@@ -4568,7 +4046,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4568
4046
|
*/
|
|
4569
4047
|
|
|
4570
4048
|
/*
|
|
4571
|
-
* Copyright 2015-
|
|
4049
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4572
4050
|
*
|
|
4573
4051
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4574
4052
|
* you may not use this file except in compliance with the License.
|
|
@@ -4591,10 +4069,10 @@ class ZakenApiZaaktypeLinkService extends BaseApiService {
|
|
|
4591
4069
|
getPluginConfigurationsByPluginDefinitionKey(pluginDefinitionKey) {
|
|
4592
4070
|
return this.httpClient.get(this.getApiUrl(`/v1/plugin/configuration?pluginDefinitionKey=${pluginDefinitionKey}`));
|
|
4593
4071
|
}
|
|
4594
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4595
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4072
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZakenApiZaaktypeLinkService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4073
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZakenApiZaaktypeLinkService, providedIn: 'root' }); }
|
|
4596
4074
|
}
|
|
4597
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4075
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZakenApiZaaktypeLinkService, decorators: [{
|
|
4598
4076
|
type: Injectable,
|
|
4599
4077
|
args: [{
|
|
4600
4078
|
providedIn: 'root',
|
|
@@ -4602,7 +4080,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4602
4080
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
4603
4081
|
|
|
4604
4082
|
/*
|
|
4605
|
-
* Copyright 2015-
|
|
4083
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4606
4084
|
*
|
|
4607
4085
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4608
4086
|
* you may not use this file except in compliance with the License.
|
|
@@ -4618,7 +4096,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4618
4096
|
*/
|
|
4619
4097
|
|
|
4620
4098
|
/*
|
|
4621
|
-
* Copyright 2015-
|
|
4099
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4622
4100
|
*
|
|
4623
4101
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4624
4102
|
* you may not use this file except in compliance with the License.
|
|
@@ -4633,33 +4111,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4633
4111
|
* limitations under the License.
|
|
4634
4112
|
*/
|
|
4635
4113
|
class ZakenApiZaaktypeLinkComponent {
|
|
4636
|
-
constructor(
|
|
4637
|
-
this.
|
|
4114
|
+
constructor(globalNotificationService, iconService, openZaakService, route, translateService, zakenApiZaaktypeLinkService) {
|
|
4115
|
+
this.globalNotificationService = globalNotificationService;
|
|
4116
|
+
this.iconService = iconService;
|
|
4638
4117
|
this.openZaakService = openZaakService;
|
|
4639
|
-
this.
|
|
4640
|
-
this.toasterService = toasterService;
|
|
4118
|
+
this.route = route;
|
|
4641
4119
|
this.translateService = translateService;
|
|
4642
4120
|
this.zakenApiZaaktypeLinkService = zakenApiZaaktypeLinkService;
|
|
4643
|
-
this.configService = configService;
|
|
4644
4121
|
this.selectedZaakType = null;
|
|
4645
4122
|
this.selectedPluginConfiguration = null;
|
|
4646
4123
|
this.selectedInformatieObjectTypeUrl = null;
|
|
4647
4124
|
this.loading$ = new BehaviorSubject(true);
|
|
4648
4125
|
this.zaakTypeLink$ = new BehaviorSubject(null);
|
|
4649
|
-
this.
|
|
4650
|
-
this.
|
|
4651
|
-
this.informatieObjectTypeSelectionEnabled =
|
|
4652
|
-
this.configService.config.uploadProvider === UploadProvider.OPEN_ZAAK;
|
|
4126
|
+
this.modalOpen$ = new BehaviorSubject(false);
|
|
4127
|
+
this.iconService.registerAll([Edit16, TrashCan16, Save16]);
|
|
4653
4128
|
}
|
|
4654
4129
|
ngOnInit() {
|
|
4655
|
-
this.
|
|
4656
|
-
|
|
4657
|
-
|
|
4658
|
-
|
|
4659
|
-
|
|
4130
|
+
getCaseManagementRouteParams(this.route)
|
|
4131
|
+
.pipe(switchMap((params) => {
|
|
4132
|
+
this._caseDefinitionKey = params?.caseDefinitionKey ?? '';
|
|
4133
|
+
this._caseVersionTag = params?.caseDefinitionVersionTag ?? '';
|
|
4134
|
+
this.zaakTypeLinkRequest = {
|
|
4135
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4136
|
+
caseVersionTag: this._caseVersionTag,
|
|
4137
|
+
createWithDossier: false,
|
|
4138
|
+
};
|
|
4139
|
+
return this.openZaakService.getZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag);
|
|
4140
|
+
}))
|
|
4141
|
+
.subscribe(zaakTypeLink => {
|
|
4660
4142
|
if (zaakTypeLink !== null) {
|
|
4661
4143
|
this.zaakTypeLinkRequest = {
|
|
4662
|
-
|
|
4144
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4145
|
+
caseVersionTag: this._caseVersionTag,
|
|
4663
4146
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4664
4147
|
rsin: zaakTypeLink?.rsin,
|
|
4665
4148
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
@@ -4669,28 +4152,22 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4669
4152
|
this.zaakTypeLink$.next(zaakTypeLink);
|
|
4670
4153
|
this.loadZaakTypes();
|
|
4671
4154
|
this.loadZakenApiPluginConfigurations();
|
|
4155
|
+
this.loading$.next(false);
|
|
4672
4156
|
});
|
|
4673
|
-
this.loading$.next(false);
|
|
4674
|
-
}
|
|
4675
|
-
findZaakType(zaakTypeUrl) {
|
|
4676
|
-
this.selectedZaakType = this.zaakTypes.find(zaakType => zaakType.url === zaakTypeUrl);
|
|
4677
|
-
}
|
|
4678
|
-
findPluginConfiguration(pluginConfigurationId) {
|
|
4679
|
-
this.selectedPluginConfiguration = this.pluginConfigurations.find(pluginConfiguration => pluginConfiguration.id === pluginConfigurationId);
|
|
4680
4157
|
}
|
|
4681
4158
|
loadZaakTypes() {
|
|
4682
|
-
|
|
4159
|
+
this.openZaakService.getZaakTypes().subscribe((zaakTypes) => {
|
|
4683
4160
|
this.zaakTypes = zaakTypes;
|
|
4684
|
-
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl);
|
|
4161
|
+
this.findZaakType(this.zaakTypeLink$.getValue()?.zaakTypeUrl ?? '');
|
|
4685
4162
|
this.loading$.next(false);
|
|
4686
4163
|
});
|
|
4687
4164
|
}
|
|
4688
4165
|
loadZakenApiPluginConfigurations() {
|
|
4689
|
-
|
|
4166
|
+
this.zakenApiZaaktypeLinkService
|
|
4690
4167
|
.getPluginConfigurationsByPluginDefinitionKey('zakenapi')
|
|
4691
4168
|
.subscribe((plugins) => {
|
|
4692
4169
|
this.pluginConfigurations = plugins;
|
|
4693
|
-
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId);
|
|
4170
|
+
this.findPluginConfiguration(this.zaakTypeLink$.getValue()?.zakenApiPluginConfigurationId ?? '');
|
|
4694
4171
|
});
|
|
4695
4172
|
}
|
|
4696
4173
|
loadInformatieObjectTypeUrls() {
|
|
@@ -4700,90 +4177,104 @@ class ZakenApiZaaktypeLinkComponent {
|
|
|
4700
4177
|
this.informatieObjectTypes = informatieObjectTypes;
|
|
4701
4178
|
});
|
|
4702
4179
|
}
|
|
4180
|
+
closeModal() {
|
|
4181
|
+
this.modalOpen$.next(false);
|
|
4182
|
+
}
|
|
4703
4183
|
openModal(zaakTypeLink) {
|
|
4704
4184
|
this.zaakTypeLinkRequest = {
|
|
4705
|
-
|
|
4185
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4186
|
+
caseVersionTag: this._caseVersionTag,
|
|
4706
4187
|
createWithDossier: zaakTypeLink?.createWithDossier,
|
|
4707
4188
|
rsin: zaakTypeLink?.rsin,
|
|
4708
4189
|
zakenApiPluginConfigurationId: zaakTypeLink?.zakenApiPluginConfigurationId,
|
|
4709
4190
|
zaakTypeUrl: zaakTypeLink?.zaakTypeUrl,
|
|
4710
4191
|
};
|
|
4711
|
-
|
|
4712
|
-
|
|
4713
|
-
|
|
4714
|
-
|
|
4715
|
-
}
|
|
4716
|
-
else {
|
|
4717
|
-
this.loadInformatieObjectTypeUrls();
|
|
4718
|
-
this.openZaakService
|
|
4719
|
-
.getInformatieObjectTypeLink(this.documentDefinitionName)
|
|
4720
|
-
.subscribe(informatieObjectTypeLink => {
|
|
4721
|
-
if (informatieObjectTypeLink !== null) {
|
|
4722
|
-
this.selectedInformatieObjectTypeUrl =
|
|
4723
|
-
informatieObjectTypeLink.informatieObjectType;
|
|
4724
|
-
}
|
|
4725
|
-
});
|
|
4726
|
-
}
|
|
4727
|
-
this.modal.show();
|
|
4728
|
-
});
|
|
4729
|
-
}
|
|
4730
|
-
else {
|
|
4731
|
-
this.modal.show();
|
|
4732
|
-
}
|
|
4192
|
+
this.modalOpen$.next(true);
|
|
4193
|
+
}
|
|
4194
|
+
onCheckedChange(checked) {
|
|
4195
|
+
this.zaakTypeLinkRequest.createWithDossier = checked;
|
|
4733
4196
|
}
|
|
4734
4197
|
removeZaakTypeLink() {
|
|
4735
|
-
this.openZaakService
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4198
|
+
this.openZaakService
|
|
4199
|
+
.deleteZaakTypeLink(this._caseDefinitionKey, this._caseVersionTag)
|
|
4200
|
+
.subscribe({
|
|
4201
|
+
next: () => {
|
|
4202
|
+
this.globalNotificationService.showToast({
|
|
4203
|
+
title: this.translateService.instant('openZaak.delinkSuccessful'),
|
|
4204
|
+
type: 'success',
|
|
4205
|
+
});
|
|
4206
|
+
this.zaakTypeLink$.next(null);
|
|
4207
|
+
},
|
|
4208
|
+
error: () => {
|
|
4209
|
+
this.globalNotificationService.showToast({
|
|
4210
|
+
title: this.translateService.instant('openZaak.delinkFailed'),
|
|
4211
|
+
type: 'error',
|
|
4212
|
+
});
|
|
4213
|
+
},
|
|
4743
4214
|
});
|
|
4744
4215
|
}
|
|
4745
4216
|
submit() {
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
|
|
4752
|
-
|
|
4753
|
-
|
|
4754
|
-
|
|
4755
|
-
|
|
4756
|
-
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
|
|
4764
|
-
|
|
4765
|
-
.subscribe(() => {
|
|
4766
|
-
this.toasterService.success('Successfully linked object informatie type to dossier');
|
|
4217
|
+
this.openZaakService
|
|
4218
|
+
.createZaakTypeLink(this.zaakTypeLinkRequest)
|
|
4219
|
+
.pipe(finalize(() => this.modalOpen$.next(false)))
|
|
4220
|
+
.subscribe({
|
|
4221
|
+
next: linkResult => {
|
|
4222
|
+
this.zaakTypeLink$.next(linkResult);
|
|
4223
|
+
this.zaakTypeLinkRequest = {
|
|
4224
|
+
caseDefinitionKey: this._caseDefinitionKey,
|
|
4225
|
+
caseVersionTag: this._caseVersionTag,
|
|
4226
|
+
createWithDossier: linkResult?.createWithDossier,
|
|
4227
|
+
rsin: linkResult?.rsin,
|
|
4228
|
+
zakenApiPluginConfigurationId: linkResult?.zakenApiPluginConfigurationId,
|
|
4229
|
+
zaakTypeUrl: linkResult?.zaakTypeUrl,
|
|
4230
|
+
};
|
|
4231
|
+
this.findZaakType(linkResult.zaakTypeUrl);
|
|
4232
|
+
this.findPluginConfiguration(linkResult.zakenApiPluginConfigurationId);
|
|
4233
|
+
this.globalNotificationService.showToast({
|
|
4234
|
+
title: this.translateService.instant('openZaak.linkSuccessful'),
|
|
4235
|
+
type: 'success',
|
|
4767
4236
|
});
|
|
4768
|
-
}
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4237
|
+
},
|
|
4238
|
+
error: () => {
|
|
4239
|
+
this.globalNotificationService.showToast({
|
|
4240
|
+
title: this.translateService.instant('openZaak.linkFailed'),
|
|
4241
|
+
type: 'error',
|
|
4242
|
+
});
|
|
4243
|
+
},
|
|
4772
4244
|
});
|
|
4773
4245
|
}
|
|
4774
|
-
|
|
4775
|
-
|
|
4246
|
+
findZaakType(zaakTypeUrl) {
|
|
4247
|
+
this.selectedZaakType = this.zaakTypes.find(zaakType => zaakType.url === zaakTypeUrl) ?? null;
|
|
4248
|
+
}
|
|
4249
|
+
findPluginConfiguration(pluginConfigurationId) {
|
|
4250
|
+
this.selectedPluginConfiguration =
|
|
4251
|
+
this.pluginConfigurations.find(pluginConfiguration => pluginConfiguration.id === pluginConfigurationId) ?? null;
|
|
4252
|
+
}
|
|
4253
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", 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 }); }
|
|
4254
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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" }] }); }
|
|
4776
4255
|
}
|
|
4777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4256
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, decorators: [{
|
|
4778
4257
|
type: Component,
|
|
4779
|
-
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4780
|
-
|
|
4781
|
-
|
|
4782
|
-
|
|
4783
|
-
|
|
4258
|
+
args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [
|
|
4259
|
+
CommonModule,
|
|
4260
|
+
FormsModule,
|
|
4261
|
+
NotificationModule,
|
|
4262
|
+
TranslateModule,
|
|
4263
|
+
ButtonModule,
|
|
4264
|
+
IconModule,
|
|
4265
|
+
TilesModule,
|
|
4266
|
+
LayerModule,
|
|
4267
|
+
SpinnerModule,
|
|
4268
|
+
ModalModule,
|
|
4269
|
+
SelectModule$1,
|
|
4270
|
+
InputModule,
|
|
4271
|
+
ToggleModule,
|
|
4272
|
+
RenderInBodyComponent,
|
|
4273
|
+
], 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"] }]
|
|
4274
|
+
}], ctorParameters: () => [{ type: i2.GlobalNotificationService }, { type: i5$1.IconService }, { type: i5$3.OpenZaakService }, { type: i1$2.ActivatedRoute }, { type: i5.TranslateService }, { type: ZakenApiZaaktypeLinkService }] });
|
|
4784
4275
|
|
|
4785
4276
|
/*
|
|
4786
|
-
* Copyright 2015-
|
|
4277
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4787
4278
|
*
|
|
4788
4279
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4789
4280
|
* you may not use this file except in compliance with the License.
|
|
@@ -4799,7 +4290,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4799
4290
|
*/
|
|
4800
4291
|
|
|
4801
4292
|
/*
|
|
4802
|
-
* Copyright 2015-
|
|
4293
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4803
4294
|
*
|
|
4804
4295
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4805
4296
|
* you may not use this file except in compliance with the License.
|
|
@@ -4815,7 +4306,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4815
4306
|
*/
|
|
4816
4307
|
|
|
4817
4308
|
/*
|
|
4818
|
-
* Copyright 2015-
|
|
4309
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4310
|
+
*
|
|
4311
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4312
|
+
* you may not use this file except in compliance with the License.
|
|
4313
|
+
* You may obtain a copy of the License at
|
|
4314
|
+
*
|
|
4315
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4316
|
+
*
|
|
4317
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4318
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4319
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4320
|
+
* See the License for the specific language governing permissions and
|
|
4321
|
+
* limitations under the License.
|
|
4322
|
+
*/
|
|
4323
|
+
|
|
4324
|
+
/*
|
|
4325
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4819
4326
|
*
|
|
4820
4327
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4821
4328
|
* you may not use this file except in compliance with the License.
|
|
@@ -4874,24 +4381,20 @@ class FailedNotificationDetailComponent {
|
|
|
4874
4381
|
if (!value)
|
|
4875
4382
|
return '-';
|
|
4876
4383
|
try {
|
|
4877
|
-
return moment(value)
|
|
4384
|
+
return moment(value)
|
|
4385
|
+
.locale(localStorage.getItem('langKey') ?? 'nl')
|
|
4386
|
+
.format('DD-MM-YYYY, HH:mm:ss');
|
|
4878
4387
|
}
|
|
4879
4388
|
catch (error) {
|
|
4880
4389
|
return value;
|
|
4881
4390
|
}
|
|
4882
4391
|
}
|
|
4883
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4884
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
4392
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationDetailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4393
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: FailedNotificationDetailComponent, isStandalone: true, selector: "valtimo-notificaties-api-failed-notification-detail", inputs: { open: "open", notification: "notification", retryInProgress: "retryInProgress" }, outputs: { closeModalEvent: "closeModalEvent", retryEvent: "retryEvent" }, ngImport: i0, template: "<cds-modal [open]=\"open\" size=\"lg\" valtimoCdsModal>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onClose()\">\n {{ 'zgw.notifications.failed.detail.title' | translate }}\n </cds-modal-header>\n\n <section cdsModalContent class=\"failed-notification-detail__content\">\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.metadataTitle' | translate }}\n </h4>\n\n <dl class=\"detail-metadata\">\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.status' | translate }}</dt>\n <dd>{{ notification?.status || '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.pendingRetries' | translate }}</dt>\n <dd>{{ notification?.pendingRetries ?? '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.receivedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.receivedAt) }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.lastProcessedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.lastProcessedAt) }}</dd>\n </div>\n </dl>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.payloadTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"formattedPayload; else noPayload\">\n <pre class=\"detail-pre\">{{ formattedPayload }}</pre>\n </div>\n <ng-template #noPayload>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noPayload' | translate }}\n </div>\n </ng-template>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.errorTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"notification?.lastErrorMessage; else noError\">\n <pre class=\"detail-pre\">{{ notification?.lastErrorMessage }}</pre>\n </div>\n <ng-template #noError>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noError' | translate }}\n </div>\n </ng-template>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" type=\"button\" (click)=\"onClose()\">\n {{ 'interface.close' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n type=\"button\"\n (click)=\"onRetry()\"\n [disabled]=\"retryInProgress || !notification\"\n >\n {{ 'zgw.notifications.failed.detail.retry' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".failed-notification-detail__content{padding:32px}.detail-heading{padding-top:24px;padding-bottom:12px;color:var(--cds-text-primary);font-weight:600;font-size:16px;line-height:24px}.detail-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 24px;margin:0}.detail-metadata div{background-color:var(--cds-layer-01);border-radius:4px;padding:12px}.detail-metadata dt{color:var(--cds-text-secondary)}.detail-metadata dd{color:var(--cds-text-primary);word-break:break-word}.detail-block{background-color:var(--cds-layer-01);border-radius:4px;padding:16px;color:var(--cds-text-primary);max-height:none;overflow:visible}.detail-block--empty{color:var(--cds-text-disabled);font-style:italic}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { 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: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4885
4394
|
}
|
|
4886
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4395
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationDetailComponent, decorators: [{
|
|
4887
4396
|
type: Component,
|
|
4888
|
-
args: [{ selector: 'valtimo-notificaties-api-failed-notification-detail', standalone: true, imports: [
|
|
4889
|
-
CommonModule,
|
|
4890
|
-
TranslateModule,
|
|
4891
|
-
ModalModule,
|
|
4892
|
-
ButtonModule,
|
|
4893
|
-
ValtimoCdsModalDirectiveModule,
|
|
4894
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cds-modal [open]=\"open\" size=\"lg\" valtimoCdsModal>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onClose()\">\n {{ 'zgw.notifications.failed.detail.title' | translate }}\n </cds-modal-header>\n\n <section cdsModalContent class=\"failed-notification-detail__content\">\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.metadataTitle' | translate }}\n </h4>\n\n <dl class=\"detail-metadata\">\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.status' | translate }}</dt>\n <dd>{{ notification?.status || '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.pendingRetries' | translate }}</dt>\n <dd>{{ notification?.pendingRetries ?? '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.receivedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.receivedAt) }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.lastProcessedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.lastProcessedAt) }}</dd>\n </div>\n </dl>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.payloadTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"formattedPayload; else noPayload\">\n <pre class=\"detail-pre\">{{ formattedPayload }}</pre>\n </div>\n <ng-template #noPayload>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noPayload' | translate }}\n </div>\n </ng-template>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.errorTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"notification?.lastErrorMessage; else noError\">\n <pre class=\"detail-pre\">{{ notification?.lastErrorMessage }}</pre>\n </div>\n <ng-template #noError>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noError' | translate }}\n </div>\n </ng-template>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" type=\"button\" (click)=\"onClose()\">\n {{ 'interface.close' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n type=\"button\"\n (click)=\"onRetry()\"\n [disabled]=\"retryInProgress || !notification\"\n >\n {{ 'zgw.notifications.failed.detail.retry' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".failed-notification-detail__content{padding:32px}.detail-heading{padding-top:24px;padding-bottom:12px;color:var(--cds-text-primary);font-weight:600;font-size:16px;line-height:24px}.detail-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 24px;margin:0}.detail-metadata div{background-color:var(--cds-layer-01);border-radius:4px;padding:12px}.detail-metadata dt{color:var(--cds-text-secondary)}.detail-metadata dd{color:var(--cds-text-primary);word-break:break-word}.detail-block{background-color:var(--cds-layer-01);border-radius:4px;padding:16px;color:var(--cds-text-primary);max-height:none;overflow:visible}.detail-block--empty{color:var(--cds-text-disabled);font-style:italic}\n"] }]
|
|
4397
|
+
args: [{ selector: 'valtimo-notificaties-api-failed-notification-detail', standalone: true, imports: [CommonModule, TranslateModule, ModalModule, ButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cds-modal [open]=\"open\" size=\"lg\" valtimoCdsModal>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onClose()\">\n {{ 'zgw.notifications.failed.detail.title' | translate }}\n </cds-modal-header>\n\n <section cdsModalContent class=\"failed-notification-detail__content\">\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.metadataTitle' | translate }}\n </h4>\n\n <dl class=\"detail-metadata\">\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.status' | translate }}</dt>\n <dd>{{ notification?.status || '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.pendingRetries' | translate }}</dt>\n <dd>{{ notification?.pendingRetries ?? '-' }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.receivedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.receivedAt) }}</dd>\n </div>\n <div>\n <dt>{{ 'zgw.notifications.failed.detail.lastProcessedAt' | translate }}</dt>\n <dd>{{ formatDateValue(notification?.lastProcessedAt) }}</dd>\n </div>\n </dl>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.payloadTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"formattedPayload; else noPayload\">\n <pre class=\"detail-pre\">{{ formattedPayload }}</pre>\n </div>\n <ng-template #noPayload>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noPayload' | translate }}\n </div>\n </ng-template>\n\n <h4 class=\"detail-heading\">\n {{ 'zgw.notifications.failed.detail.errorTitle' | translate }}\n </h4>\n <div class=\"detail-block\" *ngIf=\"notification?.lastErrorMessage; else noError\">\n <pre class=\"detail-pre\">{{ notification?.lastErrorMessage }}</pre>\n </div>\n <ng-template #noError>\n <div class=\"detail-block detail-block--empty\">\n {{ 'zgw.notifications.failed.detail.noError' | translate }}\n </div>\n </ng-template>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" type=\"button\" (click)=\"onClose()\">\n {{ 'interface.close' | translate }}\n </button>\n <button\n cdsButton=\"primary\"\n type=\"button\"\n (click)=\"onRetry()\"\n [disabled]=\"retryInProgress || !notification\"\n >\n {{ 'zgw.notifications.failed.detail.retry' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".failed-notification-detail__content{padding:32px}.detail-heading{padding-top:24px;padding-bottom:12px;color:var(--cds-text-primary);font-weight:600;font-size:16px;line-height:24px}.detail-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 24px;margin:0}.detail-metadata div{background-color:var(--cds-layer-01);border-radius:4px;padding:12px}.detail-metadata dt{color:var(--cds-text-secondary)}.detail-metadata dd{color:var(--cds-text-primary);word-break:break-word}.detail-block{background-color:var(--cds-layer-01);border-radius:4px;padding:16px;color:var(--cds-text-primary);max-height:none;overflow:visible}.detail-block--empty{color:var(--cds-text-disabled);font-style:italic}\n"] }]
|
|
4895
4398
|
}], propDecorators: { open: [{
|
|
4896
4399
|
type: Input
|
|
4897
4400
|
}], notification: [{
|
|
@@ -4943,10 +4446,10 @@ class FailedNotificationsService extends BaseApiService {
|
|
|
4943
4446
|
.get(this.getApiUrl('management/v1/notificatiesapi/inbound-events/failed/count'))
|
|
4944
4447
|
.pipe(map(response => response.count ?? 0));
|
|
4945
4448
|
}
|
|
4946
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4947
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4449
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationsService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4450
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationsService, providedIn: 'root' }); }
|
|
4948
4451
|
}
|
|
4949
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4452
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationsService, decorators: [{
|
|
4950
4453
|
type: Injectable,
|
|
4951
4454
|
args: [{
|
|
4952
4455
|
providedIn: 'root',
|
|
@@ -4969,9 +4472,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4969
4472
|
* limitations under the License.
|
|
4970
4473
|
*/
|
|
4971
4474
|
class FailedNotificationsPageComponent {
|
|
4972
|
-
constructor(failedNotificationsService,
|
|
4475
|
+
constructor(failedNotificationsService, globalNotificationService, translateService) {
|
|
4973
4476
|
this.failedNotificationsService = failedNotificationsService;
|
|
4974
|
-
this.
|
|
4477
|
+
this.globalNotificationService = globalNotificationService;
|
|
4975
4478
|
this.translateService = translateService;
|
|
4976
4479
|
this._DEFAULT_SORT = 'receivedAt,desc';
|
|
4977
4480
|
this.loading$ = new BehaviorSubject(false);
|
|
@@ -5046,23 +4549,29 @@ class FailedNotificationsPageComponent {
|
|
|
5046
4549
|
.subscribe({
|
|
5047
4550
|
next: () => {
|
|
5048
4551
|
const message = this.translateService.instant('zgw.notifications.failed.retrySuccess');
|
|
5049
|
-
this.
|
|
4552
|
+
this.globalNotificationService.showToast({
|
|
4553
|
+
title: message,
|
|
4554
|
+
type: 'success',
|
|
4555
|
+
});
|
|
5050
4556
|
this.selectedNotification$.next(null);
|
|
5051
4557
|
this._pageRequest$.next({ ...this._pageRequest$.getValue() });
|
|
5052
4558
|
},
|
|
5053
4559
|
error: () => {
|
|
5054
4560
|
const message = this.translateService.instant('zgw.notifications.failed.retryError');
|
|
5055
|
-
this.
|
|
4561
|
+
this.globalNotificationService.showToast({
|
|
4562
|
+
title: message,
|
|
4563
|
+
type: 'error',
|
|
4564
|
+
});
|
|
5056
4565
|
},
|
|
5057
4566
|
});
|
|
5058
4567
|
}
|
|
5059
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5060
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
4568
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationsPageComponent, deps: [{ token: FailedNotificationsService }, { token: i2.GlobalNotificationService }, { token: i5.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4569
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: FailedNotificationsPageComponent, isStandalone: true, selector: "valtimo-notificaties-api-failed-notifications-page", ngImport: i0, template: "<div class=\"failed-notifications-page\">\n <valtimo-carbon-list\n *ngIf=\"{items: notifications$ | async} as obs\"\n [items]=\"obs.items || []\"\n [fields]=\"FIELDS\"\n [loading]=\"loading$ | async\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"zgw-notificaties-api-failed\"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n (rowClicked)=\"onRowClicked($event)\"\n >\n <valtimo-no-results\n [title]=\"'zgw.notifications.failed.noResults.title' | translate\"\n [description]=\"'zgw.notifications.failed.noResults.description' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-notificaties-api-failed-notification-detail\n [open]=\"(selectedNotification$ | async) !== null\"\n [notification]=\"selectedNotification$ | async\"\n [retryInProgress]=\"retryInProgress$ | async\"\n (closeModalEvent)=\"onCloseModal()\"\n (retryEvent)=\"onRetry()\"\n ></valtimo-notificaties-api-failed-notification-detail>\n</div>\n", styles: [""], 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: 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: FailedNotificationDetailComponent, selector: "valtimo-notificaties-api-failed-notification-detail", inputs: ["open", "notification", "retryInProgress"], outputs: ["closeModalEvent", "retryEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5061
4570
|
}
|
|
5062
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4571
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FailedNotificationsPageComponent, decorators: [{
|
|
5063
4572
|
type: Component,
|
|
5064
4573
|
args: [{ selector: 'valtimo-notificaties-api-failed-notifications-page', standalone: true, imports: [CommonModule, TranslateModule, CarbonListModule, FailedNotificationDetailComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"failed-notifications-page\">\n <valtimo-carbon-list\n *ngIf=\"{items: notifications$ | async} as obs\"\n [items]=\"obs.items || []\"\n [fields]=\"FIELDS\"\n [loading]=\"loading$ | async\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"zgw-notificaties-api-failed\"\n (paginationClicked)=\"onPaginationClicked($event)\"\n (paginationSet)=\"onPaginationSet($event)\"\n (rowClicked)=\"onRowClicked($event)\"\n >\n <valtimo-no-results\n [title]=\"'zgw.notifications.failed.noResults.title' | translate\"\n [description]=\"'zgw.notifications.failed.noResults.description' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <valtimo-notificaties-api-failed-notification-detail\n [open]=\"(selectedNotification$ | async) !== null\"\n [notification]=\"selectedNotification$ | async\"\n [retryInProgress]=\"retryInProgress$ | async\"\n (closeModalEvent)=\"onCloseModal()\"\n (retryEvent)=\"onRetry()\"\n ></valtimo-notificaties-api-failed-notification-detail>\n</div>\n" }]
|
|
5065
|
-
}], ctorParameters: () => [{ type: FailedNotificationsService }, { type:
|
|
4574
|
+
}], ctorParameters: () => [{ type: FailedNotificationsService }, { type: i2.GlobalNotificationService }, { type: i5.TranslateService }] });
|
|
5066
4575
|
|
|
5067
4576
|
/*
|
|
5068
4577
|
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
@@ -5113,11 +4622,11 @@ const routes = [
|
|
|
5113
4622
|
},
|
|
5114
4623
|
];
|
|
5115
4624
|
class NotificatiesApiRoutingModule {
|
|
5116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5117
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5118
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4625
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NotificatiesApiRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4626
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: NotificatiesApiRoutingModule, imports: [CommonModule, i1$2.RouterModule], exports: [RouterModule] }); }
|
|
4627
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NotificatiesApiRoutingModule, imports: [CommonModule, RouterModule.forChild(routes), RouterModule] }); }
|
|
5119
4628
|
}
|
|
5120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4629
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NotificatiesApiRoutingModule, decorators: [{
|
|
5121
4630
|
type: NgModule,
|
|
5122
4631
|
args: [{
|
|
5123
4632
|
imports: [CommonModule, RouterModule.forChild(routes)],
|
|
@@ -5126,7 +4635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5126
4635
|
}] });
|
|
5127
4636
|
|
|
5128
4637
|
/*
|
|
5129
|
-
* Copyright 2015-
|
|
4638
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5130
4639
|
*
|
|
5131
4640
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5132
4641
|
* you may not use this file except in compliance with the License.
|
|
@@ -5142,7 +4651,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5142
4651
|
*/
|
|
5143
4652
|
|
|
5144
4653
|
/*
|
|
5145
|
-
* Copyright 2015-
|
|
4654
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
4655
|
+
*
|
|
4656
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4657
|
+
* you may not use this file except in compliance with the License.
|
|
4658
|
+
* You may obtain a copy of the License at
|
|
4659
|
+
*
|
|
4660
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4661
|
+
*
|
|
4662
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4663
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4664
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4665
|
+
* See the License for the specific language governing permissions and
|
|
4666
|
+
* limitations under the License.
|
|
4667
|
+
*/
|
|
4668
|
+
class CaseManagementZgwGeneralComponent {
|
|
4669
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwGeneralComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4670
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
|
|
4671
|
+
}
|
|
4672
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwGeneralComponent, decorators: [{
|
|
4673
|
+
type: Component,
|
|
4674
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
4675
|
+
CommonModule,
|
|
4676
|
+
ZakenApiZaaktypeLinkComponent,
|
|
4677
|
+
DocumentObjectenApiSyncComponent,
|
|
4678
|
+
MuuriDirectiveModule,
|
|
4679
|
+
DocumentenApiVersionComponent,
|
|
4680
|
+
], 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"] }]
|
|
4681
|
+
}] });
|
|
4682
|
+
|
|
4683
|
+
/*
|
|
4684
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5146
4685
|
*
|
|
5147
4686
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5148
4687
|
* you may not use this file except in compliance with the License.
|
|
@@ -5156,9 +4695,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5156
4695
|
* See the License for the specific language governing permissions and
|
|
5157
4696
|
* limitations under the License.
|
|
5158
4697
|
*/
|
|
5159
|
-
class
|
|
4698
|
+
class CaseManagementZgwService {
|
|
5160
4699
|
constructor() {
|
|
5161
|
-
this._DEFAULT_TAB = ZgwTabEnum.
|
|
4700
|
+
this._DEFAULT_TAB = ZgwTabEnum.GENERAL;
|
|
5162
4701
|
this._currentTab$ = new BehaviorSubject(this._DEFAULT_TAB);
|
|
5163
4702
|
}
|
|
5164
4703
|
get currentTab$() {
|
|
@@ -5170,10 +4709,10 @@ class DossierManagementZgwService {
|
|
|
5170
4709
|
resetToDefaultTab() {
|
|
5171
4710
|
this._currentTab$.next(this._DEFAULT_TAB);
|
|
5172
4711
|
}
|
|
5173
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5174
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4712
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4713
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwService, providedIn: 'root' }); }
|
|
5175
4714
|
}
|
|
5176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4715
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwService, decorators: [{
|
|
5177
4716
|
type: Injectable,
|
|
5178
4717
|
args: [{
|
|
5179
4718
|
providedIn: 'root',
|
|
@@ -5181,7 +4720,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5181
4720
|
}] });
|
|
5182
4721
|
|
|
5183
4722
|
/*
|
|
5184
|
-
* Copyright 2015-
|
|
4723
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5185
4724
|
*
|
|
5186
4725
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5187
4726
|
* you may not use this file except in compliance with the License.
|
|
@@ -5197,7 +4736,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5197
4736
|
*/
|
|
5198
4737
|
|
|
5199
4738
|
/*
|
|
5200
|
-
* Copyright 2015-
|
|
4739
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5201
4740
|
*
|
|
5202
4741
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5203
4742
|
* you may not use this file except in compliance with the License.
|
|
@@ -5211,19 +4750,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5211
4750
|
* See the License for the specific language governing permissions and
|
|
5212
4751
|
* limitations under the License.
|
|
5213
4752
|
*/
|
|
5214
|
-
class
|
|
5215
|
-
constructor(
|
|
5216
|
-
this.
|
|
4753
|
+
class CaseManagementZgwComponent {
|
|
4754
|
+
constructor(caseManagementZgwService, cdr, documentenApiVersionService, draftVersionService, route) {
|
|
4755
|
+
this.caseManagementZgwService = caseManagementZgwService;
|
|
5217
4756
|
this.cdr = cdr;
|
|
5218
4757
|
this.documentenApiVersionService = documentenApiVersionService;
|
|
4758
|
+
this.draftVersionService = draftVersionService;
|
|
5219
4759
|
this.route = route;
|
|
5220
4760
|
this._viewInitialized$ = new BehaviorSubject(false);
|
|
5221
|
-
this.
|
|
4761
|
+
this._params$ = getCaseManagementRouteParams(this.route);
|
|
4762
|
+
this._supportedDocumentenApiFeatures$ = this._params$.pipe(map((params) => params?.caseDefinitionKey ?? ''), filter((caseDefinitionKey) => !!caseDefinitionKey), switchMap((caseDefinitionKey) => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionKey ?? '')));
|
|
4763
|
+
this.isDraftVersion$ = this._params$.pipe(switchMap((params) => !params
|
|
4764
|
+
? of(false)
|
|
4765
|
+
: this.draftVersionService.isDraftVersion(params.caseDefinitionKey, params.caseDefinitionVersionTag)));
|
|
4766
|
+
this.currentTab$ = this.caseManagementZgwService.currentTab$;
|
|
5222
4767
|
this.zgwTabs$ = combineLatest([
|
|
5223
4768
|
this._viewInitialized$,
|
|
5224
|
-
this.
|
|
4769
|
+
this.currentTab$,
|
|
5225
4770
|
this._supportedDocumentenApiFeatures$,
|
|
5226
4771
|
]).pipe(filter(([viewInitialized]) => viewInitialized), map(([_, currentTab, supportedDocumentenApiFeatures]) => [
|
|
4772
|
+
{
|
|
4773
|
+
class: 'no-padding-left-right no-padding-top-bottom',
|
|
4774
|
+
headingTranslationKey: 'caseManagement.tabs.general',
|
|
4775
|
+
tab: ZgwTabEnum.GENERAL,
|
|
4776
|
+
component: CaseManagementZgwGeneralComponent,
|
|
4777
|
+
},
|
|
5227
4778
|
{
|
|
5228
4779
|
class: 'no-padding-left-right no-padding-top-bottom',
|
|
5229
4780
|
headingTranslationKey: 'zgw.tabs.documentColumns',
|
|
@@ -5248,33 +4799,41 @@ class DossierManagementZgwComponent {
|
|
|
5248
4799
|
: []),
|
|
5249
4800
|
].map(zgwTab => ({ ...zgwTab, active: currentTab === zgwTab.tab }))), tap(zgwTabs => {
|
|
5250
4801
|
const activeTab = zgwTabs.length > 1 ? zgwTabs.find(tab => tab.active) : zgwTabs[0];
|
|
4802
|
+
if (!activeTab)
|
|
4803
|
+
return;
|
|
5251
4804
|
this._zgwTabContent.clear();
|
|
5252
4805
|
this._zgwTabContent.createComponent(activeTab.component);
|
|
5253
4806
|
this.cdr.detectChanges();
|
|
5254
4807
|
}));
|
|
4808
|
+
this.ZgwTabEnum = ZgwTabEnum;
|
|
4809
|
+
this.DRAFT_WARNING_MESSAGE = {
|
|
4810
|
+
[ZgwTabEnum.DOCUMENTEN_API_COLUMNS]: 'zgw.tabs.documentColumns',
|
|
4811
|
+
[ZgwTabEnum.DOCUMENTEN_API_UPLOAD_FIELDS]: 'zgw.tabs.documentUploadFields',
|
|
4812
|
+
[ZgwTabEnum.DOCUMENTEN_API_TAGS]: 'zgw.tabs.documentUploadFields',
|
|
4813
|
+
};
|
|
5255
4814
|
}
|
|
5256
4815
|
ngAfterViewInit() {
|
|
5257
4816
|
this._viewInitialized$.next(true);
|
|
5258
4817
|
}
|
|
5259
4818
|
ngOnDestroy() {
|
|
5260
|
-
this.
|
|
4819
|
+
this.caseManagementZgwService.resetToDefaultTab();
|
|
5261
4820
|
}
|
|
5262
4821
|
displayTab(tab) {
|
|
5263
|
-
this.
|
|
4822
|
+
this.caseManagementZgwService.currentTab = tab;
|
|
5264
4823
|
}
|
|
5265
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5266
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
4824
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwComponent, deps: [{ token: CaseManagementZgwService }, { token: i0.ChangeDetectorRef }, { token: DocumentenApiVersionService }, { token: i2.DraftVersionService }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4825
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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 }); }
|
|
5267
4826
|
}
|
|
5268
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4827
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: CaseManagementZgwComponent, decorators: [{
|
|
5269
4828
|
type: Component,
|
|
5270
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TabsModule, TranslateModule], template: "<!--\n ~ Copyright 2015-
|
|
5271
|
-
}], ctorParameters: () => [{ type:
|
|
4829
|
+
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"] }]
|
|
4830
|
+
}], ctorParameters: () => [{ type: CaseManagementZgwService }, { type: i0.ChangeDetectorRef }, { type: DocumentenApiVersionService }, { type: i2.DraftVersionService }, { type: i1$2.ActivatedRoute }], propDecorators: { _zgwTabContent: [{
|
|
5272
4831
|
type: ViewChild,
|
|
5273
4832
|
args: ['zgwTabContent', { read: ViewContainerRef }]
|
|
5274
4833
|
}] } });
|
|
5275
4834
|
|
|
5276
4835
|
/*
|
|
5277
|
-
* Copyright 2015-
|
|
4836
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5278
4837
|
*
|
|
5279
4838
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5280
4839
|
* you may not use this file except in compliance with the License.
|
|
@@ -5290,7 +4849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5290
4849
|
*/
|
|
5291
4850
|
|
|
5292
4851
|
/*
|
|
5293
|
-
* Copyright 2015-
|
|
4852
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5294
4853
|
*
|
|
5295
4854
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5296
4855
|
* you may not use this file except in compliance with the License.
|
|
@@ -5305,8 +4864,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5305
4864
|
* limitations under the License.
|
|
5306
4865
|
*/
|
|
5307
4866
|
class ZgwModule {
|
|
5308
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5309
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4867
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZgwModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4868
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: ZgwModule, declarations: [DocumentenApiUploaderComponent], imports: [CommonModule,
|
|
5310
4869
|
FormioModule,
|
|
5311
4870
|
DropzoneModule,
|
|
5312
4871
|
TranslateModule,
|
|
@@ -5315,33 +4874,28 @@ class ZgwModule {
|
|
|
5315
4874
|
ResourceModule,
|
|
5316
4875
|
RouterModule,
|
|
5317
4876
|
DocumentenApiMetadataModalComponent,
|
|
5318
|
-
CustomerModule,
|
|
5319
4877
|
NotificatiesApiRoutingModule], exports: [DocumentenApiUploaderComponent] }); }
|
|
5320
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4878
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZgwModule, providers: [
|
|
5321
4879
|
{
|
|
5322
4880
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5323
4881
|
useValue: {
|
|
5324
|
-
translationKey: '
|
|
5325
|
-
component:
|
|
4882
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4883
|
+
component: CaseManagementZgwComponent,
|
|
4884
|
+
tabRoute: 'zgw',
|
|
5326
4885
|
},
|
|
5327
4886
|
multi: true,
|
|
5328
4887
|
},
|
|
5329
4888
|
{
|
|
5330
4889
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5331
|
-
useValue:
|
|
4890
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5332
4891
|
},
|
|
5333
4892
|
{
|
|
5334
4893
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5335
|
-
useValue:
|
|
4894
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5336
4895
|
},
|
|
5337
4896
|
{
|
|
5338
|
-
provide:
|
|
5339
|
-
useValue: [
|
|
5340
|
-
DossierManagementLinkProcessComponent,
|
|
5341
|
-
DocumentenApiVersionComponent,
|
|
5342
|
-
DocumentObjectenApiSyncComponent,
|
|
5343
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5344
|
-
],
|
|
4897
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4898
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5345
4899
|
},
|
|
5346
4900
|
], imports: [CommonModule,
|
|
5347
4901
|
FormioModule,
|
|
@@ -5352,10 +4906,9 @@ class ZgwModule {
|
|
|
5352
4906
|
ResourceModule,
|
|
5353
4907
|
RouterModule,
|
|
5354
4908
|
DocumentenApiMetadataModalComponent,
|
|
5355
|
-
CustomerModule,
|
|
5356
4909
|
NotificatiesApiRoutingModule] }); }
|
|
5357
4910
|
}
|
|
5358
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4911
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ZgwModule, decorators: [{
|
|
5359
4912
|
type: NgModule,
|
|
5360
4913
|
args: [{
|
|
5361
4914
|
imports: [
|
|
@@ -5368,7 +4921,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5368
4921
|
ResourceModule,
|
|
5369
4922
|
RouterModule,
|
|
5370
4923
|
DocumentenApiMetadataModalComponent,
|
|
5371
|
-
CustomerModule,
|
|
5372
4924
|
NotificatiesApiRoutingModule,
|
|
5373
4925
|
],
|
|
5374
4926
|
declarations: [DocumentenApiUploaderComponent],
|
|
@@ -5377,34 +4929,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5377
4929
|
{
|
|
5378
4930
|
provide: CASE_MANAGEMENT_TAB_TOKEN,
|
|
5379
4931
|
useValue: {
|
|
5380
|
-
translationKey: '
|
|
5381
|
-
component:
|
|
4932
|
+
translationKey: 'caseManagement.tabs.zgw',
|
|
4933
|
+
component: CaseManagementZgwComponent,
|
|
4934
|
+
tabRoute: 'zgw',
|
|
5382
4935
|
},
|
|
5383
4936
|
multi: true,
|
|
5384
4937
|
},
|
|
5385
4938
|
{
|
|
5386
4939
|
provide: ZGW_OBJECT_TYPE_COMPONENT_TOKEN,
|
|
5387
|
-
useValue:
|
|
4940
|
+
useValue: CaseDetailTabObjectTypeComponent,
|
|
5388
4941
|
},
|
|
5389
4942
|
{
|
|
5390
4943
|
provide: ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN,
|
|
5391
|
-
useValue:
|
|
4944
|
+
useValue: CaseDetailTabDocumentenApiDocumentsComponent,
|
|
5392
4945
|
},
|
|
5393
4946
|
{
|
|
5394
|
-
provide:
|
|
5395
|
-
useValue: [
|
|
5396
|
-
DossierManagementLinkProcessComponent,
|
|
5397
|
-
DocumentenApiVersionComponent,
|
|
5398
|
-
DocumentObjectenApiSyncComponent,
|
|
5399
|
-
ZakenApiZaaktypeLinkComponent,
|
|
5400
|
-
],
|
|
4947
|
+
provide: CASE_CONFIGURATION_EXTENSIONS_TOKEN,
|
|
4948
|
+
useValue: [CaseManagementLinkProcessComponent],
|
|
5401
4949
|
},
|
|
5402
4950
|
],
|
|
5403
4951
|
}]
|
|
5404
4952
|
}] });
|
|
5405
4953
|
|
|
5406
4954
|
/*
|
|
5407
|
-
* Copyright 2015-
|
|
4955
|
+
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
5408
4956
|
*
|
|
5409
4957
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5410
4958
|
* you may not use this file except in compliance with the License.
|
|
@@ -5426,5 +4974,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5426
4974
|
* Generated bundle index. Do not edit.
|
|
5427
4975
|
*/
|
|
5428
4976
|
|
|
5429
|
-
export { COLUMN_VIEW_TYPES, CONFIDENTIALITY_LEVELS,
|
|
4977
|
+
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, FailedNotificationDetailComponent, FailedNotificationsPageComponent, FailedNotificationsService, LANGUAGE_ITEMS, NotificatiesApiInboundEventStatus, NotificatiesApiRoutingModule, STATUS_ITEMS, ZaakobjectenService, ZakenApiZaaktypeLinkComponent, ZakenApiZaaktypeLinkService, ZgwModule, ZgwTabEnum, customDocumentApiUploaderType, documentenApiUploaderEditForm, registerDocumentenApiFormioUploadComponent };
|
|
5430
4978
|
//# sourceMappingURL=valtimo-zgw.mjs.map
|