@valtimo/zgw 12.5.1 → 12.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/esm2022/lib/components/dossier-management-zgw/dossier-management-zgw.component.mjs +9 -9
  2. package/esm2022/lib/models/dossier-management-zgw.model.mjs +2 -1
  3. package/esm2022/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.mjs +32 -3
  4. package/esm2022/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.mjs +95 -61
  5. package/esm2022/lib/modules/documenten-api/components/documenten-api-tags/documenten-api-tags.component.mjs +1 -3
  6. package/esm2022/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.mjs +182 -0
  7. package/esm2022/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.mjs +118 -0
  8. package/esm2022/lib/modules/documenten-api/components/index.mjs +4 -2
  9. package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader-edit-form.mjs +298 -49
  10. package/esm2022/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.mjs +122 -15
  11. package/esm2022/lib/modules/documenten-api/models/documenten-api-metadata.model.mjs +19 -2
  12. package/esm2022/lib/modules/documenten-api/models/documenten-api-upload-field.model.mjs +33 -0
  13. package/esm2022/lib/modules/documenten-api/services/documenten-api-document.service.mjs +10 -1
  14. package/fesm2022/valtimo-zgw.mjs +892 -176
  15. package/fesm2022/valtimo-zgw.mjs.map +1 -1
  16. package/lib/components/dossier-management-zgw/dossier-management-zgw.component.d.ts.map +1 -1
  17. package/lib/models/dossier-management-zgw.model.d.ts +2 -1
  18. package/lib/models/dossier-management-zgw.model.d.ts.map +1 -1
  19. package/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.d.ts +4 -0
  20. package/lib/modules/documenten-api/components/documenten-api-documents/documenten-api-documents.component.d.ts.map +1 -1
  21. package/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts +17 -21
  22. package/lib/modules/documenten-api/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts.map +1 -1
  23. package/lib/modules/documenten-api/components/documenten-api-tags/documenten-api-tags.component.d.ts.map +1 -1
  24. package/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.d.ts +51 -0
  25. package/lib/modules/documenten-api/components/documenten-api-upload-field-model/documenten-api-upload-field-modal.component.d.ts.map +1 -0
  26. package/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.d.ts +31 -0
  27. package/lib/modules/documenten-api/components/documenten-api-upload-fields/documenten-api-upload-fields.component.d.ts.map +1 -0
  28. package/lib/modules/documenten-api/components/index.d.ts +3 -1
  29. package/lib/modules/documenten-api/components/index.d.ts.map +1 -1
  30. package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts +62 -0
  31. package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts.map +1 -1
  32. package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts +31 -12
  33. package/lib/modules/documenten-api/formio/documenten-api-uploader/documenten-api-uploader.component.d.ts.map +1 -1
  34. package/lib/modules/documenten-api/models/documenten-api-metadata.model.d.ts +11 -8
  35. package/lib/modules/documenten-api/models/documenten-api-metadata.model.d.ts.map +1 -1
  36. package/lib/modules/documenten-api/models/documenten-api-upload-field.model.d.ts +45 -0
  37. package/lib/modules/documenten-api/models/documenten-api-upload-field.model.d.ts.map +1 -0
  38. package/lib/modules/documenten-api/services/documenten-api-document.service.d.ts +4 -0
  39. package/lib/modules/documenten-api/services/documenten-api-document.service.d.ts.map +1 -1
  40. package/package.json +1 -1
@@ -1,15 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, EventEmitter, Component, ChangeDetectionStrategy, Input, Output, ViewChild, signal, NgModule, ViewContainerRef } from '@angular/core';
3
- import * as i5$1 from 'carbon-components-angular';
4
- import { ModalModule, InputModule, ButtonModule, DropdownModule, RadioModule, NotificationModule, TagModule, IconModule, DatePickerInputModule, DatePickerModule, ComboBoxModule, TooltipModule, DialogModule, ToggleModule, LoadingModule, CheckboxModule, TabsModule } from 'carbon-components-angular';
5
- import * as i5 from '@ngx-translate/core';
3
+ import * as i6 from 'carbon-components-angular';
4
+ import { ModalModule, InputModule, ButtonModule, DropdownModule, RadioModule, NotificationModule, TagModule, IconModule, DatePickerInputModule, DatePickerModule, ComboBoxModule, TooltipModule, DialogModule, ToggleModule, CheckboxModule, LoadingModule, TabsModule } from 'carbon-components-angular';
5
+ import * as i3 from '@ngx-translate/core';
6
6
  import { TranslateModule } from '@ngx-translate/core';
7
7
  import * as i4 from '@angular/common';
8
8
  import { CommonModule } from '@angular/common';
9
9
  import * as i1$1 from '@angular/forms';
10
10
  import { Validators, ReactiveFormsModule, FormsModule, FormGroup, FormControl } from '@angular/forms';
11
- import { BehaviorSubject, combineLatest, map, Subscription, switchMap, filter, tap, startWith, debounceTime, Subject, take, from, of, ReplaySubject, distinctUntilChanged } from 'rxjs';
12
- import * as i3 from '@valtimo/components';
11
+ import { BehaviorSubject, combineLatest, map, Subscription, switchMap, filter, tap, startWith, debounceTime, Subject, take, of, from, ReplaySubject, distinctUntilChanged } from 'rxjs';
12
+ import * as i3$1 from '@valtimo/components';
13
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
14
  import * as i2 from '@valtimo/config';
15
15
  import { BaseApiService, UploadProvider, ROLE_USER, CASE_MANAGEMENT_TAB_TOKEN, ZGW_OBJECT_TYPE_COMPONENT_TOKEN, ZGW_DOCUMENTEN_API_DOCUMENTS_COMPONENT_TOKEN, ZGW_CASE_CONFIGURATION_EXTENSIONS_TOKEN } from '@valtimo/config';
@@ -22,12 +22,12 @@ import { tap as tap$1, map as map$1, filter as filter$1, switchMap as switchMap$
22
22
  import flatpickr from 'flatpickr';
23
23
  import * as i1$3 from '@valtimo/document';
24
24
  import { DocumentModule } from '@valtimo/document';
25
- import * as i5$2 from 'keycloak-angular';
25
+ import moment from 'moment';
26
+ import * as i5 from 'keycloak-angular';
26
27
  import * as i2$1 from '@valtimo/resource';
27
28
  import { ResourceModule } from '@valtimo/resource';
28
- import * as i5$3 from '@valtimo/security';
29
+ import * as i5$1 from '@valtimo/security';
29
30
  import { AuthGuardService } from '@valtimo/security';
30
- import moment from 'moment';
31
31
  import * as i4$1 from 'ngx-toastr';
32
32
  import { FormioModule } from '@formio/angular';
33
33
 
@@ -50,6 +50,7 @@ var ZgwTabEnum;
50
50
  (function (ZgwTabEnum) {
51
51
  ZgwTabEnum["DOCUMENTEN_API_COLUMNS"] = "documentenApiColumns";
52
52
  ZgwTabEnum["DOCUMENTEN_API_TAGS"] = "documentenApiTags";
53
+ ZgwTabEnum["DOCUMENTEN_API_UPLOAD_FIELDS"] = "documentenApiUploadFields";
53
54
  })(ZgwTabEnum || (ZgwTabEnum = {}));
54
55
 
55
56
  /*
@@ -134,6 +135,15 @@ class DocumentenApiDocumentService extends BaseApiService {
134
135
  deleteDocument(file) {
135
136
  return this.httpClient.delete(this.getApiUrl(`/v1/documenten-api/${file.pluginConfigurationId}/files/${file.fileId}`));
136
137
  }
138
+ getPrefilledUploadFields(documentId) {
139
+ return this.httpClient.get(this.getApiUrl(`/v1/document/${documentId}/zgw-document/upload-field`));
140
+ }
141
+ getUploadFields(caseDefinitionName) {
142
+ return this.httpClient.get(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/upload-field`));
143
+ }
144
+ updateUploadField(caseDefinitionName, uploadField) {
145
+ return this.httpClient.put(this.getApiUrl(`/management/v1/case-definition/${caseDefinitionName}/zgw-document/upload-field`), uploadField);
146
+ }
137
147
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiDocumentService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
138
148
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiDocumentService, providedIn: 'root' }); }
139
149
  }
@@ -412,8 +422,8 @@ class DocumentenApiColumnModalComponent {
412
422
  this._notificationMessage$.next(this.showRadioButtons ? 'zgw.columns.defaultWarning' : 'zgw.columns.notSortable');
413
423
  }));
414
424
  }
415
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiColumnModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: i5.TranslateService }, { token: DocumentenApiColumnService }], target: i0.ɵɵFactoryTarget.Component }); }
416
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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-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<cds-modal valtimoCdsModal [open]=\"type !== 'closed'\" size=\"sm\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\">\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 >\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>\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-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: "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", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
425
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiColumnModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: i3.TranslateService }, { token: DocumentenApiColumnService }], target: i0.ɵɵFactoryTarget.Component }); }
426
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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-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<cds-modal valtimoCdsModal [open]=\"type !== 'closed'\" size=\"sm\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\">\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 >\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>\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-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: "pipe", type: i4.AsyncPipe, name: "async" }, { 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]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.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: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DropdownModule }, { 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: 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: NotificationModule }, { kind: "component", type: i6.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
417
427
  }
418
428
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiColumnModalComponent, decorators: [{
419
429
  type: Component,
@@ -428,7 +438,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
428
438
  RadioModule,
429
439
  NotificationModule,
430
440
  ], 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<cds-modal valtimoCdsModal [open]=\"type !== 'closed'\" size=\"sm\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\">\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 >\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>\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-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"] }]
431
- }], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i5.TranslateService }, { type: DocumentenApiColumnService }], propDecorators: { definitionName: [{
441
+ }], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i3.TranslateService }, { type: DocumentenApiColumnService }], propDecorators: { definitionName: [{
432
442
  type: Input
433
443
  }], prefillColumn: [{
434
444
  type: Input
@@ -548,7 +558,7 @@ class DocumentenApiColumnsComponent {
548
558
  this._reload$.next(noAnimation ? 'noAnimation' : null);
549
559
  }
550
560
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiColumnsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiColumnService }], target: i0.ɵɵFactoryTarget.Component }); }
551
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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-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\n *ngIf=\"{\n columnModalType: columnModalType$ | async,\n columnToUpdate: columnToUpdate$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 [movingRowsEnabled]=\"true\"\n (itemsReordered)=\"onItemsReordered(obs.documentDefinitionName, $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.documentDefinitionName\"\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.documentDefinitionName)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n\n<ng-template #addButton>\n <button cdsButton=\"primary\" [disabled]=\"loading$ | async\" (click)=\"openAddModal()\">\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-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: "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", "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 }); }
561
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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-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\n *ngIf=\"{\n columnModalType: columnModalType$ | async,\n columnToUpdate: columnToUpdate$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 [movingRowsEnabled]=\"true\"\n (itemsReordered)=\"onItemsReordered(obs.documentDefinitionName, $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.documentDefinitionName\"\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.documentDefinitionName)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n\n<ng-template #addButton>\n <button cdsButton=\"primary\" [disabled]=\"loading$ | async\" (click)=\"openAddModal()\">\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-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: "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$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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { 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"] }, { kind: "ngmodule", type: TagModule }, { 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
552
562
  }
553
563
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiColumnsComponent, decorators: [{
554
564
  type: Component,
@@ -585,6 +595,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
585
595
  * See the License for the specific language governing permissions and
586
596
  * limitations under the License.
587
597
  */
598
+ const CONFIDENTIALITY_LEVELS = [
599
+ 'openbaar',
600
+ 'beperkt_openbaar',
601
+ 'intern',
602
+ 'zaakvertrouwelijk',
603
+ 'vertrouwelijk',
604
+ 'confidentieel',
605
+ 'geheim',
606
+ 'zeer_geheim',
607
+ ];
608
+ const STATUS_ITEMS = [
609
+ 'in_bewerking',
610
+ 'ter_vaststelling',
611
+ 'definitief',
612
+ 'gearchiveerd',
613
+ ];
614
+ const LANGUAGE_ITEMS = ['nld', 'eng', 'deu'];
588
615
 
589
616
  /*
590
617
  * Copyright 2015-2024 Ritense BV, the Netherlands.
@@ -858,8 +885,8 @@ class DocumentenApiFilterComponent {
858
885
  selected: true,
859
886
  }));
860
887
  }
861
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiFilterComponent, deps: [{ token: i1$3.DocumentService }, { token: i1$1.FormBuilder }, { token: i5$1.IconService }, { token: i1$2.ActivatedRoute }, { token: i5.TranslateService }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
862
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiFilterComponent, isStandalone: true, selector: "valtimo-dossier-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: "<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"], 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", "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", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], 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"] }, { 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 }); }
888
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiFilterComponent, deps: [{ token: i1$3.DocumentService }, { token: i1$1.FormBuilder }, { token: i6.IconService }, { token: i1$2.ActivatedRoute }, { token: i3.TranslateService }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
889
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiFilterComponent, isStandalone: true, selector: "valtimo-dossier-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: "<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"], 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: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DatePickerInputModule }, { 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: "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: IconModule }, { kind: "directive", type: i6.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: InputModule }, { 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.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 }); }
863
890
  }
864
891
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiFilterComponent, decorators: [{
865
892
  type: Component,
@@ -874,7 +901,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
874
901
  TranslateModule,
875
902
  ReactiveFormsModule,
876
903
  ], 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"] }]
877
- }], ctorParameters: () => [{ type: i1$3.DocumentService }, { type: i1$1.FormBuilder }, { type: i5$1.IconService }, { type: i1$2.ActivatedRoute }, { type: i5.TranslateService }, { type: DocumentenApiTagService }], propDecorators: { creationDateFromPicker: [{
904
+ }], ctorParameters: () => [{ type: i1$3.DocumentService }, { type: i1$1.FormBuilder }, { type: i6.IconService }, { type: i1$2.ActivatedRoute }, { type: i3.TranslateService }, { type: DocumentenApiTagService }], propDecorators: { creationDateFromPicker: [{
878
905
  type: ViewChild,
879
906
  args: ['creationDateFrom']
880
907
  }], creationDateToPicker: [{
@@ -964,12 +991,12 @@ class DocumentenApiMetadataModalComponent {
964
991
  this.statusFormControl.enable();
965
992
  }
966
993
  }
967
- set disableTrefwoorden(value) {
994
+ set disableCreationDate(value) {
968
995
  if (value) {
969
- this.tagFormControl.disable();
996
+ this.creatiedatum.disable();
970
997
  }
971
998
  else {
972
- this.tagFormControl.enable();
999
+ this.creatiedatum.enable();
973
1000
  }
974
1001
  }
975
1002
  set open(value) {
@@ -1008,6 +1035,9 @@ class DocumentenApiMetadataModalComponent {
1008
1035
  get tagFormControl() {
1009
1036
  return this.documentenApiMetadataForm.get('trefwoorden');
1010
1037
  }
1038
+ get creatiedatum() {
1039
+ return this.documentenApiMetadataForm.get('creatiedatum');
1040
+ }
1011
1041
  get titel() {
1012
1042
  return this.documentenApiMetadataForm.get('titel');
1013
1043
  }
@@ -1029,20 +1059,22 @@ class DocumentenApiMetadataModalComponent {
1029
1059
  this.modalService = modalService;
1030
1060
  this.translateService = translateService;
1031
1061
  this.valtimoModalService = valtimoModalService;
1032
- this.documentTitle = '';
1033
- this.open$ = new BehaviorSubject(false);
1062
+ this.hideFields = [];
1063
+ this.defaultValues = {};
1034
1064
  this.supportsTrefwoorden = false;
1065
+ this.open$ = new BehaviorSubject(false);
1035
1066
  this.metadata = new EventEmitter();
1036
1067
  this.modalClose = new EventEmitter();
1068
+ this.filenameExtension = '';
1037
1069
  this.documentenApiMetadataForm = this.fb.group({
1038
- bestandsnaam: this.fb.control('', Validators.required),
1070
+ bestandsnaam: this.fb.control(''),
1039
1071
  titel: this.fb.control('', Validators.required),
1040
1072
  auteur: this.fb.control('', Validators.required),
1041
- beschrijving: this.fb.control('', Validators.required),
1073
+ beschrijving: this.fb.control(''),
1042
1074
  taal: this.fb.control('', Validators.required),
1043
1075
  informatieobjecttype: this.fb.control('', Validators.required),
1044
- status: this.fb.control('', Validators.required),
1045
- vertrouwelijkheidaanduiding: this.fb.control('', Validators.required),
1076
+ status: this.fb.control(''),
1077
+ vertrouwelijkheidaanduiding: this.fb.control(''),
1046
1078
  creatiedatum: this.fb.control('', Validators.required),
1047
1079
  ontvangstdatum: this.fb.control(''),
1048
1080
  verzenddatum: this.fb.control(''),
@@ -1107,9 +1139,8 @@ class DocumentenApiMetadataModalComponent {
1107
1139
  content: this.translateService.instant(`document.${status}`),
1108
1140
  selected: currentStatus === status,
1109
1141
  }))));
1110
- this.documentDefinitionName$ = from(this.route.params.pipe(map(params => params?.documentDefinitionName)));
1111
1142
  this.tagItems$ = combineLatest([
1112
- this.documentDefinitionName$,
1143
+ this.valtimoModalService.documentDefinitionName$,
1113
1144
  this.tagFormControl.valueChanges.pipe(startWith(this.tagFormControl.value)),
1114
1145
  ]).pipe(filter(([documentDefinitionName]) => !!documentDefinitionName), switchMap(([documentDefinitionName, tagFormControlValue]) => combineLatest([
1115
1146
  this.documentenApiTagService.getTags(documentDefinitionName),
@@ -1131,16 +1162,10 @@ class DocumentenApiMetadataModalComponent {
1131
1162
  }));
1132
1163
  }));
1133
1164
  this.documentTypeItems$ = combineLatest([
1134
- this.route?.params || of(null),
1135
- this.route?.firstChild?.params || of(null),
1136
1165
  this.valtimoModalService.documentDefinitionName$,
1137
1166
  this.informatieobjecttypeFormControl.valueChanges.pipe(startWith(this.informatieobjecttypeFormControl.value)),
1138
- ]).pipe(filter(([params, firstChildParams, documentDefinitionName]) => !!(params?.documentDefinitionName ||
1139
- firstChildParams?.documentDefinitionName ||
1140
- documentDefinitionName)), switchMap(([params, firstChildParams, documentDefinitionName, informatieobjecttypeValue]) => combineLatest([
1141
- this.documentService.getDocumentTypes(params?.documentDefinitionName ||
1142
- firstChildParams?.documentDefinitionName ||
1143
- documentDefinitionName),
1167
+ ]).pipe(switchMap(([documentDefinitionName, informatieobjecttypeValue]) => combineLatest([
1168
+ this.documentService.getDocumentTypes(documentDefinitionName),
1144
1169
  of(informatieobjecttypeValue),
1145
1170
  ])), map(([documentTypes, informatieobjecttypeValue]) => documentTypes.map((type) => ({
1146
1171
  id: type.url,
@@ -1153,12 +1178,12 @@ class DocumentenApiMetadataModalComponent {
1153
1178
  ngOnInit() {
1154
1179
  this.openFileSubscription();
1155
1180
  this.openDisabledSubscription();
1156
- }
1157
- ngOnChanges() {
1158
- this.openFileSubscription();
1181
+ this.openFilenameSubscription();
1182
+ this.openDocumentDefinitionSubscription();
1159
1183
  }
1160
1184
  ngOnDestroy() {
1161
1185
  this._subscriptions.unsubscribe();
1186
+ this._fileSubscription?.unsubscribe();
1162
1187
  this.isDefinitiveStatus$.next(false);
1163
1188
  }
1164
1189
  languageSelected(event) {
@@ -1172,16 +1197,16 @@ class DocumentenApiMetadataModalComponent {
1172
1197
  this.tagFormControl.patchValue(event.filter(tag => tag.selected).map(tag => tag.id));
1173
1198
  }
1174
1199
  confidentialityLevelSelected(event) {
1175
- if (event.item.id) {
1200
+ if (event.id) {
1176
1201
  this.documentenApiMetadataForm.patchValue({
1177
- vertrouwelijkheidaanduiding: event.item.id,
1202
+ vertrouwelijkheidaanduiding: event.id,
1178
1203
  });
1179
1204
  }
1180
1205
  }
1181
1206
  statusSelected(event) {
1182
- if (event.item.id) {
1207
+ if (event.id) {
1183
1208
  this.documentenApiMetadataForm.patchValue({
1184
- status: event.item.id,
1209
+ status: event.id,
1185
1210
  });
1186
1211
  }
1187
1212
  }
@@ -1195,28 +1220,24 @@ class DocumentenApiMetadataModalComponent {
1195
1220
  prefillForm(file) {
1196
1221
  this.prefillFilenameAndAuthor();
1197
1222
  if (file) {
1198
- const { bestandsnaam, titel, auteur, beschrijving, taal, informatieobjecttype, status, vertrouwelijkheidaanduiding, creatiedatum, ontvangstdatum, verzenddatum, trefwoorden, } = file;
1223
+ const { beschrijving, taal, informatieobjecttype, status, vertrouwelijkheidaanduiding, ontvangstdatum, verzenddatum, trefwoorden, } = file;
1199
1224
  if (verzenddatum)
1200
1225
  this.additionalDocumentDate$.next('sent');
1201
1226
  else if (ontvangstdatum)
1202
1227
  this.additionalDocumentDate$.next('received');
1203
1228
  else
1204
1229
  this.additionalDocumentDate$.next('neither');
1205
- const prefillStatus = this.status || status;
1230
+ const prefillStatus = this.defaultValues.status || status;
1206
1231
  const validPrefillStatus = this.STATUSES.includes(prefillStatus) ? prefillStatus : '';
1207
1232
  this.documentenApiMetadataForm.patchValue({
1208
- bestandsnaam: this.filename || bestandsnaam,
1209
- titel: this.documentTitle || titel,
1210
- auteur: this.author || auteur,
1211
- beschrijving: this.description || beschrijving,
1212
- taal: this.language || taal,
1213
- informatieobjecttype: this.documentType || informatieobjecttype,
1233
+ beschrijving: beschrijving || this.defaultValues.beschrijving,
1234
+ taal: taal || this.defaultValues.taal,
1235
+ informatieobjecttype: informatieobjecttype || this.defaultValues.informatieobjecttype,
1214
1236
  status: validPrefillStatus,
1215
- vertrouwelijkheidaanduiding: this.confidentialityLevel || vertrouwelijkheidaanduiding,
1216
- creatiedatum,
1237
+ vertrouwelijkheidaanduiding: vertrouwelijkheidaanduiding || this.defaultValues.vertrouwelijkheidaanduiding,
1217
1238
  ontvangstdatum,
1218
1239
  verzenddatum,
1219
- trefwoorden,
1240
+ trefwoorden: trefwoorden || this.defaultValues.trefwoorden,
1220
1241
  });
1221
1242
  }
1222
1243
  }
@@ -1243,22 +1264,43 @@ class DocumentenApiMetadataModalComponent {
1243
1264
  prefillFilenameAndAuthor() {
1244
1265
  this._subscriptions.add(combineLatest([this.file$, this.userEmail$])
1245
1266
  .pipe(tap$1(([file, userEmail]) => {
1267
+ const filename = file?.bestandsnaam || this.defaultValues.bestandsnaam || file?.name;
1268
+ this.filenameExtension = filename?.split('.')?.pop() || '';
1269
+ if (this.filenameExtension.length === filename?.length) {
1270
+ this.filenameExtension = '';
1271
+ }
1246
1272
  this.documentenApiMetadataForm.patchValue({
1247
- bestandsnaam: this.filename || file?.name || file?.bestandsnaam,
1248
- auteur: this.author || userEmail,
1273
+ bestandsnaam: filename,
1274
+ auteur: file?.auteur || this.defaultValues.auteur || userEmail,
1275
+ creatiedatum: file?.creatiedatum || new Date(Date.now()),
1276
+ titel: file?.titel ||
1277
+ this.defaultValues.titel ||
1278
+ this.filenameToTitle(file?.name || this.defaultValues.bestandsnaam),
1249
1279
  });
1280
+ if (this.areAllFieldsHidden()) {
1281
+ this.save();
1282
+ }
1250
1283
  }))
1251
1284
  .subscribe());
1252
1285
  }
1286
+ filenameToTitle(filename) {
1287
+ if (!filename) {
1288
+ return null;
1289
+ }
1290
+ filename = filename.replace(/\.[^/.]+$/, '').replace(/[^a-zA-Z0-9]+/g, ' ');
1291
+ return filename.charAt(0).toUpperCase() + filename.slice(1);
1292
+ }
1253
1293
  formatDate(controlName) {
1254
1294
  const control = this.documentenApiMetadataForm.controls[controlName];
1255
1295
  if (control.value) {
1256
- const date = new Date(control.value);
1257
1296
  this.documentenApiMetadataForm.patchValue({
1258
- [controlName]: `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`,
1297
+ [controlName]: this.toFormattedDate(control.value),
1259
1298
  });
1260
1299
  }
1261
1300
  }
1301
+ toFormattedDate(date) {
1302
+ return moment(new Date(date)).format('YYYY-MM-DD');
1303
+ }
1262
1304
  openFileSubscription() {
1263
1305
  this._fileSubscription?.unsubscribe();
1264
1306
  if (this.file$) {
@@ -1280,11 +1322,41 @@ class DocumentenApiMetadataModalComponent {
1280
1322
  }
1281
1323
  }));
1282
1324
  }
1325
+ openFilenameSubscription() {
1326
+ this._subscriptions.add(this.bestandsnaam.valueChanges.subscribe(bestandsnaam => {
1327
+ if (bestandsnaam && this.filenameExtension) {
1328
+ let correctBestandsnaam = bestandsnaam.replace(/\.[^/.]+$/, '') + '.' + this.filenameExtension;
1329
+ if (correctBestandsnaam != bestandsnaam) {
1330
+ this.documentenApiMetadataForm.patchValue({
1331
+ bestandsnaam: correctBestandsnaam,
1332
+ });
1333
+ }
1334
+ }
1335
+ }));
1336
+ }
1337
+ openDocumentDefinitionSubscription() {
1338
+ this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
1339
+ .pipe(map(([params, firstChildParams]) => (params?.documentDefinitionName || firstChildParams?.documentDefinitionName)), filter(documentDefinitionName => !!documentDefinitionName))
1340
+ .subscribe(documentDefinitionName => this.valtimoModalService.setDocumentDefinitionName(documentDefinitionName)));
1341
+ }
1283
1342
  setAdditionalDate(value) {
1284
1343
  this.additionalDocumentDate$.next(value);
1285
1344
  }
1286
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiMetadataModalComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i1$3.DocumentService }, { token: DocumentenApiTagService }, { token: i1$1.FormBuilder }, { token: i5$2.KeycloakService }, { token: i3.ModalService }, { token: i5.TranslateService }, { token: i3.ValtimoModalService }], target: i0.ɵɵFactoryTarget.Component }); }
1287
- 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$", author: "author", confidentialityLevel: "confidentialityLevel", description: "description", disableAuthor: "disableAuthor", disableConfidentialityLevel: "disableConfidentialityLevel", disableDescription: "disableDescription", disableDocumentTitle: "disableDocumentTitle", disableDocumentType: "disableDocumentType", disableFilename: "disableFilename", disableLanguage: "disableLanguage", disableStatus: "disableStatus", disableTrefwoorden: "disableTrefwoorden", documentTitle: "documentTitle", documentType: "documentType", filename: "filename", isEditMode: "isEditMode", language: "language", open: "open", status: "status", supportsTrefwoorden: "supportsTrefwoorden" }, outputs: { metadata: "metadata", modalClose: "modalClose" }, viewQueries: [{ propertyName: "metadataModal", first: true, predicate: ["metadataModal"], descendants: true }], usesOnChanges: 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 isDefinitiveStatus: isDefinitiveStatus$ | async,\n languageItems: languageItems$ | 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>\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.isDefinitiveStatus\"\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 <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]=\"filename\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\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]=\"author\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\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 *ngIf=\"obs.languageItems\"\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 <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-dropdown\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n >\n <cds-dropdown-list [items]=\"confidentialityLevelItems$ | async\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n <ng-container *ngIf=\"{documentTypeItems: documentTypeItems$ | async} as obs\">\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 </ng-container>\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 @if (supportsTrefwoorden) {\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 <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 <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"true\"\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 <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 <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-dropdown\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\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 </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: 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"] }, { 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"] }, { 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"], 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", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp"], 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", "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"] }] }); }
1345
+ areAllFieldsHidden() {
1346
+ return (this.hideFields.includes('aanvullendeDatum') &&
1347
+ this.hideFields.includes('auteur') &&
1348
+ this.hideFields.includes('vertrouwelijkheidaanduiding') &&
1349
+ this.hideFields.includes('creatiedatum') &&
1350
+ this.hideFields.includes('beschrijving') &&
1351
+ this.hideFields.includes('titel') &&
1352
+ this.hideFields.includes('informatieobjecttype') &&
1353
+ this.hideFields.includes('bestandsnaam') &&
1354
+ this.hideFields.includes('taal') &&
1355
+ this.hideFields.includes('status') &&
1356
+ this.hideFields.includes('trefwoorden'));
1357
+ }
1358
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiMetadataModalComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i1$3.DocumentService }, { token: DocumentenApiTagService }, { token: i1$1.FormBuilder }, { token: i5.KeycloakService }, { token: i3$1.ModalService }, { token: i3.TranslateService }, { token: i3$1.ValtimoModalService }], target: i0.ɵɵFactoryTarget.Component }); }
1359
+ 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 isDefinitiveStatus: isDefinitiveStatus$ | 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>\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.isDefinitiveStatus\"\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"] }] }); }
1288
1360
  }
1289
1361
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiMetadataModalComponent, decorators: [{
1290
1362
  type: Component,
@@ -1306,19 +1378,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
1306
1378
  TooltipModule,
1307
1379
  TranslateModule,
1308
1380
  VModalModule,
1309
- ], 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 isDefinitiveStatus: isDefinitiveStatus$ | async,\n languageItems: languageItems$ | 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>\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.isDefinitiveStatus\"\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 <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]=\"filename\"\n [placeholder]=\"'document.filenamePlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n type=\"text\"\n id=\"bestandsnaam\"\n formControlName=\"bestandsnaam\"\n />\n </cds-text-label>\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]=\"author\"\n [placeholder]=\"'document.authorPlaceholder' | translate\"\n [required]=\"true\"\n cdsText\n id=\"auteur\"\n formControlName=\"auteur\"\n />\n </cds-text-label>\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 *ngIf=\"obs.languageItems\"\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 <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-dropdown\n [placeholder]=\"'document.confidentialityPlaceholder' | translate\"\n id=\"vertrouwelijkheidaanduiding\"\n [appendInline]=\"true\"\n [disabled]=\"obs.disabled || (confidentialityLevelDisabled$ | async)\"\n (selected)=\"confidentialityLevelSelected($event)\"\n >\n <cds-dropdown-list [items]=\"confidentialityLevelItems$ | async\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\n <ng-container *ngIf=\"{documentTypeItems: documentTypeItems$ | async} as obs\">\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 </ng-container>\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 @if (supportsTrefwoorden) {\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 <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 <cds-textarea-label>\n {{ 'document.inputDescription' | translate }}\n <textarea\n [placeholder]=\"'document.inputDescriptionPlaceholder' | translate\"\n [required]=\"true\"\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 <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 <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-dropdown\n [placeholder]=\"'document.statusPlaceholder' | translate\"\n [disabled]=\"obs.disabled || (statusDisabled$ | async)\"\n id=\"status\"\n [appendInline]=\"true\"\n (selected)=\"statusSelected($event)\"\n >\n <cds-dropdown-list [items]=\"obs.statusItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </div>\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 </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"] }]
1310
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i1$3.DocumentService }, { type: DocumentenApiTagService }, { type: i1$1.FormBuilder }, { type: i5$2.KeycloakService }, { type: i3.ModalService }, { type: i5.TranslateService }, { type: i3.ValtimoModalService }], propDecorators: { metadataModal: [{
1381
+ ], 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 isDefinitiveStatus: isDefinitiveStatus$ | 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>\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.isDefinitiveStatus\"\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"] }]
1382
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i1$3.DocumentService }, { type: DocumentenApiTagService }, { type: i1$1.FormBuilder }, { type: i5.KeycloakService }, { type: i3$1.ModalService }, { type: i3.TranslateService }, { type: i3$1.ValtimoModalService }], propDecorators: { metadataModal: [{
1311
1383
  type: ViewChild,
1312
1384
  args: ['metadataModal']
1313
1385
  }], disabled$: [{
1314
1386
  type: Input
1315
1387
  }], file$: [{
1316
1388
  type: Input
1317
- }], author: [{
1318
- type: Input
1319
- }], confidentialityLevel: [{
1389
+ }], hideFields: [{
1320
1390
  type: Input
1321
- }], description: [{
1391
+ }], defaultValues: [{
1322
1392
  type: Input
1323
1393
  }], disableAuthor: [{
1324
1394
  type: Input
@@ -1336,24 +1406,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
1336
1406
  type: Input
1337
1407
  }], disableStatus: [{
1338
1408
  type: Input
1339
- }], disableTrefwoorden: [{
1340
- type: Input
1341
- }], documentTitle: [{
1342
- type: Input
1343
- }], documentType: [{
1409
+ }], supportsTrefwoorden: [{
1344
1410
  type: Input
1345
- }], filename: [{
1411
+ }], disableCreationDate: [{
1346
1412
  type: Input
1347
1413
  }], isEditMode: [{
1348
1414
  type: Input
1349
- }], language: [{
1350
- type: Input
1351
1415
  }], open: [{
1352
1416
  type: Input
1353
- }], status: [{
1354
- type: Input
1355
- }], supportsTrefwoorden: [{
1356
- type: Input
1357
1417
  }], metadata: [{
1358
1418
  type: Output
1359
1419
  }], modalClose: [{
@@ -1458,6 +1518,35 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
1458
1518
  ...DEFAULT_PAGINATOR_CONFIG,
1459
1519
  itemsPerPageOptions: [5, 10, 20, 50, 100],
1460
1520
  };
1521
+ this.uploadFields$ = this.documentId$.pipe(switchMap$1(documentId => this.documentenApiDocumentService.getPrefilledUploadFields(documentId)), map$1(uploadFields => uploadFields.reduce((acc, curr) => ({
1522
+ ...acc,
1523
+ [curr.key]: {
1524
+ key: curr.key,
1525
+ defaultValue: curr.defaultValue,
1526
+ visible: curr.visible,
1527
+ readonly: curr.readonly,
1528
+ },
1529
+ }), {})));
1530
+ this.defaultValues$ = this.uploadFields$.pipe(map$1(formFields => ({
1531
+ auteur: formFields?.auteur?.defaultValue,
1532
+ vertrouwelijkheidaanduiding: formFields?.vertrouwelijkheidaanduiding?.defaultValue,
1533
+ beschrijving: formFields?.beschrijving?.defaultValue,
1534
+ titel: formFields?.titel?.defaultValue,
1535
+ informatieobjecttype: formFields?.informatieobjecttype?.defaultValue,
1536
+ bestandsnaam: formFields?.bestandsnaam?.defaultValue,
1537
+ taal: formFields?.taal?.defaultValue,
1538
+ status: formFields?.status?.defaultValue,
1539
+ trefwoorden: formFields?.trefwoorden?.defaultValue
1540
+ ?.split(',')
1541
+ ?.map(tag => tag.trim())
1542
+ ?.filter(tag => !!tag),
1543
+ })));
1544
+ this.hideFields$ = this.uploadFields$.pipe(map$1(formFields => {
1545
+ if (formFields) {
1546
+ return Object.keys(formFields).filter(field => !formFields[field]?.visible);
1547
+ }
1548
+ return [];
1549
+ }));
1461
1550
  this.relatedFiles$ = combineLatest([
1462
1551
  this.documentId$,
1463
1552
  this.route.queryParamMap,
@@ -1680,8 +1769,8 @@ class DossierDetailTabDocumentenApiDocumentsComponent {
1680
1769
  }
1681
1770
  return null;
1682
1771
  }
1683
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i1$2.Router }, { token: i2$1.UploadProviderService }, { token: i2$1.DownloadService }, { token: i5.TranslateService }, { token: i2.ConfigService }, { token: i5$3.UserProviderService }, { token: i5$1.IconService }, { token: DocumentenApiDocumentService }, { token: DocumentenApiColumnService }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
1684
- 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 } 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 [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 #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n class=\"download-button-container\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\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]=\"(uploadProcessLinkedSet && !uploadProcessLinked) || showZaakLinkWarning || disabled\"\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 {{ 'document.' + data.item[data.key] | translate }}\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.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.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$", "author", "confidentialityLevel", "description", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "disableTrefwoorden", "documentTitle", "documentType", "filename", "isEditMode", "language", "open", "status", "supportsTrefwoorden"], 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-dossier-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"] }] }); }
1772
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i1$2.Router }, { token: i2$1.UploadProviderService }, { token: i2$1.DownloadService }, { token: i3.TranslateService }, { token: i2.ConfigService }, { token: i5$1.UserProviderService }, { token: i6.IconService }, { token: DocumentenApiDocumentService }, { token: DocumentenApiColumnService }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
1773
+ 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 #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n class=\"download-button-container\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\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]=\"(uploadProcessLinkedSet && !uploadProcessLinked) || showZaakLinkWarning || disabled\"\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"] }] }); }
1685
1774
  }
1686
1775
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, decorators: [{
1687
1776
  type: Component,
@@ -1695,8 +1784,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
1695
1784
  DocumentenApiFilterComponent,
1696
1785
  DialogModule,
1697
1786
  ConfirmationModalModule,
1698
- ], 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 } 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 [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 #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n class=\"download-button-container\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\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]=\"(uploadProcessLinkedSet && !uploadProcessLinked) || showZaakLinkWarning || disabled\"\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 {{ 'document.' + data.item[data.key] | translate }}\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"] }]
1699
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i1$2.Router }, { type: i2$1.UploadProviderService }, { type: i2$1.DownloadService }, { type: i5.TranslateService }, { type: i2.ConfigService }, { type: i5$3.UserProviderService }, { type: i5$1.IconService }, { type: DocumentenApiDocumentService }, { type: DocumentenApiColumnService }, { type: DocumentenApiVersionService }], propDecorators: { fileInput: [{
1787
+ ], 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 #downloadButton let-index=\"index\" let-item=\"item\">\n <div\n *ngIf=\"{isDownloading: indexesIncludeIndex(downloadingFileIndexes$ | async, index)} as vars\"\n class=\"download-button-container\"\n >\n <button\n *ngIf=\"!vars.isDownloading\"\n cdsButton=\"primary\"\n size=\"sm\"\n (click)=\"downloadDocument(item, index)\"\n >\n {{ 'interface.download' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n\n <cds-loading size=\"sm\" *ngIf=\"vars.isDownloading\"></cds-loading>\n </div>\n</ng-template>\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]=\"(uploadProcessLinkedSet && !uploadProcessLinked) || showZaakLinkWarning || disabled\"\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"] }]
1788
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i1$2.Router }, { type: i2$1.UploadProviderService }, { type: i2$1.DownloadService }, { type: i3.TranslateService }, { type: i2.ConfigService }, { type: i5$1.UserProviderService }, { type: i6.IconService }, { type: DocumentenApiDocumentService }, { type: DocumentenApiColumnService }, { type: DocumentenApiVersionService }], propDecorators: { fileInput: [{
1700
1789
  type: ViewChild,
1701
1790
  args: ['fileInput']
1702
1791
  }], translationTemplate: [{
@@ -1781,7 +1870,7 @@ class DossierManagementLinkProcessComponent {
1781
1870
  });
1782
1871
  }
1783
1872
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementLinkProcessComponent, deps: [{ token: i2.ConfigService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiLinkProcessService }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
1784
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierManagementLinkProcessComponent, isStandalone: true, selector: "valtimo-dossier-management-link-process", 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 *ngIf=\"documentenApiUploadProviders$ | async\">\n <h2 class=\"mb-4\">{{ 'dossierManagement.linkProcess.title' | translate }}</h2>\n\n <v-paragraph [margin]=\"true\">{{\n 'dossierManagement.linkProcess.description' | translate\n }}</v-paragraph>\n\n <ng-container\n *ngIf=\"{\n processItems: processItems$ | async,\n disabled: disabled$ | async,\n } as obs\"\n >\n <cds-combo-box\n [appendInline]=\"true\"\n (selected)=\"selectProcess($event)\"\n [disabled]=\"obs.disabled || !obs.processItems\"\n >\n <cds-dropdown-list [items]=\"obs.processItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n</ng-container>\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: ParagraphModule }, { kind: "component", type: i3.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { 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"], 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"] }] }); }
1873
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierManagementLinkProcessComponent, isStandalone: true, selector: "valtimo-dossier-management-link-process", 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 *ngIf=\"documentenApiUploadProviders$ | async\">\n <h2 class=\"mb-4\">{{ 'dossierManagement.linkProcess.title' | translate }}</h2>\n\n <v-paragraph [margin]=\"true\">{{\n 'dossierManagement.linkProcess.description' | translate\n }}</v-paragraph>\n\n <ng-container\n *ngIf=\"{\n processItems: processItems$ | async,\n disabled: disabled$ | async,\n } as obs\"\n >\n <cds-combo-box\n [appendInline]=\"true\"\n (selected)=\"selectProcess($event)\"\n [disabled]=\"obs.disabled || !obs.processItems\"\n >\n <cds-dropdown-list [items]=\"obs.processItems || []\"></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n</ng-container>\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: ParagraphModule }, { kind: "component", type: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { 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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }] }); }
1785
1874
  }
1786
1875
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementLinkProcessComponent, decorators: [{
1787
1876
  type: Component,
@@ -1867,7 +1956,7 @@ class DocumentenApiTagModalComponent {
1867
1956
  this.resetForm();
1868
1957
  }
1869
1958
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiTagModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
1870
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiTagModalComponent, isStandalone: true, selector: "valtimo-documenten-api-tag-modal", inputs: { documentDefinitionName: "documentDefinitionName", open: "open" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"open\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zgw.tags.addModal.header' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\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>\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 }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1959
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiTagModalComponent, isStandalone: true, selector: "valtimo-documenten-api-tag-modal", inputs: { documentDefinitionName: "documentDefinitionName", open: "open" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"open\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\">\n <h3 cdsModalHeaderHeading>\n {{ 'zgw.tags.addModal.header' | translate }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\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>\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: 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]" }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { 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: "directive", type: i6.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: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "ngmodule", type: ToggleModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1871
1960
  }
1872
1961
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiTagModalComponent, decorators: [{
1873
1962
  type: Component,
@@ -2019,13 +2108,12 @@ class DocumentenApiTagsComponent {
2019
2108
  this._reload$.next(noAnimation ? 'noAnimation' : null);
2020
2109
  }
2021
2110
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiTagsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiTagService }], target: i0.ɵɵFactoryTarget.Component }); }
2022
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiTagsComponent, isStandalone: true, selector: "valtimo-documenten-api-tags", viewQueries: [{ propertyName: "carbonList", first: true, predicate: CarbonListComponent, 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<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentTags: documentTags$ | async,\n addModalClosed: addModalClosed$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 [documentDefinitionName]=\"obs.documentDefinitionName\"\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 documentDefinitionName: obs.documentDefinitionName,\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-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: CarbonListModule }, { kind: "component", type: i3.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.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: ["documentDefinitionName", "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 }); }
2111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiTagsComponent, isStandalone: true, selector: "valtimo-documenten-api-tags", viewQueries: [{ propertyName: "carbonList", first: true, predicate: CarbonListComponent, 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<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentTags: documentTags$ | async,\n addModalClosed: addModalClosed$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 [documentDefinitionName]=\"obs.documentDefinitionName\"\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 documentDefinitionName: obs.documentDefinitionName,\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-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: 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { 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"] }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: DocumentenApiTagModalComponent, selector: "valtimo-documenten-api-tag-modal", inputs: ["documentDefinitionName", "open"], outputs: ["closeModalEvent"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i6.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2023
2112
  }
2024
2113
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiTagsComponent, decorators: [{
2025
2114
  type: Component,
2026
2115
  args: [{ selector: 'valtimo-documenten-api-tags', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
2027
2116
  CommonModule,
2028
- DocumentenApiColumnModalComponent,
2029
2117
  CarbonListModule,
2030
2118
  TranslateModule,
2031
2119
  ConfirmationModalModule,
@@ -2039,6 +2127,278 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
2039
2127
  args: [CarbonListComponent]
2040
2128
  }] } });
2041
2129
 
2130
+ /*
2131
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
2132
+ *
2133
+ * Licensed under EUPL, Version 1.2 (the "License");
2134
+ * you may not use this file except in compliance with the License.
2135
+ * You may obtain a copy of the License at
2136
+ *
2137
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
2138
+ *
2139
+ * Unless required by applicable law or agreed to in writing, software
2140
+ * distributed under the License is distributed on an "AS IS" basis,
2141
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2142
+ * See the License for the specific language governing permissions and
2143
+ * limitations under the License.
2144
+ */
2145
+ class DocumentenApiUploadFieldModalComponent {
2146
+ set prefill(field) {
2147
+ if (field) {
2148
+ this.key = field.key;
2149
+ this.defaultValue.setValue(field.defaultValue);
2150
+ this.visible.setValue(field.visible);
2151
+ this.readonly.setValue(field.readonly);
2152
+ }
2153
+ }
2154
+ get defaultValue() {
2155
+ return this.formGroup?.get('defaultValue');
2156
+ }
2157
+ get selectedDefaultValue() {
2158
+ return this.formGroup?.get('selectedDefaultValue');
2159
+ }
2160
+ get visible() {
2161
+ return this.formGroup?.get('visible');
2162
+ }
2163
+ get readonly() {
2164
+ return this.formGroup?.get('readonly');
2165
+ }
2166
+ get invalid() {
2167
+ return !!this.formGroup?.invalid;
2168
+ }
2169
+ constructor(fb, documentenApiDocumentService, translateService, documentService) {
2170
+ this.fb = fb;
2171
+ this.documentenApiDocumentService = documentenApiDocumentService;
2172
+ this.translateService = translateService;
2173
+ this.documentService = documentService;
2174
+ this.closeModalEvent = new EventEmitter();
2175
+ this.formGroup = this.fb.group({
2176
+ defaultValue: this.fb.control('', [Validators.maxLength(256)]),
2177
+ selectedDefaultValue: this.fb.control(null),
2178
+ visible: this.fb.control(true, [Validators.required]),
2179
+ readonly: this.fb.control(false, [Validators.required]),
2180
+ });
2181
+ this.disabled$ = new BehaviorSubject(false);
2182
+ this.confidentialityLevelItems$ = combineLatest([
2183
+ this.defaultValue.valueChanges,
2184
+ this.translateService.stream('key'),
2185
+ ]).pipe(map(([selectedItem]) => CONFIDENTIALITY_LEVELS.map(item => ({
2186
+ id: item,
2187
+ content: this.translateService.instant(`document.${item}`),
2188
+ selected: selectedItem === item,
2189
+ }))));
2190
+ this.languageItems$ = combineLatest([
2191
+ this.defaultValue.valueChanges,
2192
+ this.translateService.stream('key'),
2193
+ ]).pipe(map(([selectedItem]) => LANGUAGE_ITEMS.map(item => ({
2194
+ id: item,
2195
+ content: this.translateService.instant(`document.${item}`),
2196
+ selected: selectedItem === item,
2197
+ }))));
2198
+ this.statusItems$ = combineLatest([
2199
+ this.defaultValue.valueChanges,
2200
+ this.translateService.stream('key'),
2201
+ ]).pipe(map(([selectedItem]) => STATUS_ITEMS.map(item => ({
2202
+ id: item,
2203
+ content: this.translateService.instant(`document.${item}`),
2204
+ selected: selectedItem === item,
2205
+ }))));
2206
+ this.documentTypeItems$ = combineLatest([
2207
+ this.defaultValue.valueChanges,
2208
+ this.translateService.stream('key'),
2209
+ ]).pipe(switchMap(([selectedItem]) => combineLatest([
2210
+ this.documentService.getDocumentTypes(this.documentDefinitionName),
2211
+ of(selectedItem),
2212
+ ])), map(([documentTypes, selectedItem]) => documentTypes.map(item => ({
2213
+ id: item.url,
2214
+ content: item.name,
2215
+ selected: selectedItem === item.url,
2216
+ }))));
2217
+ this._subscriptions = new Subscription();
2218
+ }
2219
+ ngOnDestroy() {
2220
+ this._subscriptions.unsubscribe();
2221
+ }
2222
+ onClose() {
2223
+ this.close();
2224
+ }
2225
+ clear() {
2226
+ this.selectedDefaultValue.setValue(null);
2227
+ this.defaultValue.setValue(null);
2228
+ }
2229
+ saveUploadField() {
2230
+ this.disable();
2231
+ const formField = {
2232
+ key: this.key,
2233
+ defaultValue: this.selectedDefaultValue?.value?.id || this.defaultValue.value,
2234
+ visible: this.visible.value,
2235
+ readonly: this.readonly.value,
2236
+ };
2237
+ this.documentenApiDocumentService
2238
+ .updateUploadField(this.documentDefinitionName, formField)
2239
+ .subscribe({
2240
+ next: () => {
2241
+ this.enable();
2242
+ this.closeAndRefresh();
2243
+ this.resetForm();
2244
+ },
2245
+ error: () => {
2246
+ this.enable(false);
2247
+ },
2248
+ });
2249
+ }
2250
+ resetForm() {
2251
+ this.formGroup.reset();
2252
+ }
2253
+ disable() {
2254
+ this.disabled$.next(true);
2255
+ this.formGroup.disable();
2256
+ }
2257
+ enable(delay = true) {
2258
+ setTimeout(() => {
2259
+ this.disabled$.next(false);
2260
+ this.formGroup.enable();
2261
+ }, delay ? CARBON_CONSTANTS.modalAnimationMs : 0);
2262
+ }
2263
+ close() {
2264
+ this.closeModalEvent.emit('close');
2265
+ this.resetForm();
2266
+ }
2267
+ closeAndRefresh() {
2268
+ this.closeModalEvent.emit('closeAndRefresh');
2269
+ this.resetForm();
2270
+ }
2271
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, deps: [{ token: i1$1.FormBuilder }, { token: DocumentenApiDocumentService }, { token: i3.TranslateService }, { token: i1$3.DocumentService }], target: i0.ɵɵFactoryTarget.Component }); }
2272
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DocumentenApiUploadFieldModalComponent, isStandalone: true, selector: "valtimo-documenten-api-upload-field-modal", inputs: { documentDefinitionName: "documentDefinitionName", type: "type", prefill: "prefill" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<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()\">\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>\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>\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}\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: "pipe", type: i4.AsyncPipe, name: "async" }, { 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]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { 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: "directive", type: i6.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: i6.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: ToggleModule }, { kind: "component", type: i6.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "skeleton"] }, { kind: "ngmodule", type: CheckboxModule }, { 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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2273
+ }
2274
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploadFieldModalComponent, decorators: [{
2275
+ type: Component,
2276
+ args: [{ selector: 'valtimo-documenten-api-upload-field-modal', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
2277
+ CommonModule,
2278
+ ModalModule,
2279
+ TranslateModule,
2280
+ InputModule,
2281
+ ReactiveFormsModule,
2282
+ ButtonModule,
2283
+ ToggleModule,
2284
+ CheckboxModule,
2285
+ ComboBoxModule,
2286
+ ], 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<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()\">\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>\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>\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}\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"] }]
2287
+ }], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DocumentenApiDocumentService }, { type: i3.TranslateService }, { type: i1$3.DocumentService }], propDecorators: { documentDefinitionName: [{
2288
+ type: Input
2289
+ }], type: [{
2290
+ type: Input
2291
+ }], prefill: [{
2292
+ type: Input
2293
+ }], closeModalEvent: [{
2294
+ type: Output
2295
+ }] } });
2296
+
2297
+ /*
2298
+ * Copyright 2015-2024 Ritense BV, the Netherlands.
2299
+ *
2300
+ * Licensed under EUPL, Version 1.2 (the "License");
2301
+ * you may not use this file except in compliance with the License.
2302
+ * You may obtain a copy of the License at
2303
+ *
2304
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
2305
+ *
2306
+ * Unless required by applicable law or agreed to in writing, software
2307
+ * distributed under the License is distributed on an "AS IS" basis,
2308
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2309
+ * See the License for the specific language governing permissions and
2310
+ * limitations under the License.
2311
+ */
2312
+ class DocumentenApiUploadFieldsComponent {
2313
+ get documentDefinitionName$() {
2314
+ return this._documentDefinitionName$;
2315
+ }
2316
+ constructor(route, documentenApiDocumentService, translateService) {
2317
+ this.route = route;
2318
+ this.documentenApiDocumentService = documentenApiDocumentService;
2319
+ this.translateService = translateService;
2320
+ this._reload$ = new BehaviorSubject(null);
2321
+ this._documentDefinitionName$ = this.route.params.pipe(map(params => params?.name), filter(docDefName => !!docDefName));
2322
+ this.loading$ = new BehaviorSubject(true);
2323
+ this.fields$ = new BehaviorSubject([]);
2324
+ this.uploadFieldModalType$ = new BehaviorSubject('closed');
2325
+ this.prefill$ = new BehaviorSubject(undefined);
2326
+ this.documentUploadFields$ = combineLatest([
2327
+ this._documentDefinitionName$,
2328
+ this._reload$,
2329
+ this.translateService.stream('key'),
2330
+ ]).pipe(tap(([_, reload]) => {
2331
+ if (reload === null) {
2332
+ this.loading$.next(true);
2333
+ }
2334
+ }), switchMap(([documentDefinitionName]) => this.documentenApiDocumentService.getUploadFields(documentDefinitionName)), map(fields => fields.map(field => ({
2335
+ ...field,
2336
+ field: this.translateService.instant(`zgw.uploadFields.keys.${field.key}`),
2337
+ }))), startWith([]), tap(() => {
2338
+ this.loading$.next(false);
2339
+ }));
2340
+ this.ACTION_ITEMS = [
2341
+ {
2342
+ label: 'interface.edit',
2343
+ callback: this.openEditModal.bind(this),
2344
+ type: 'normal',
2345
+ },
2346
+ ];
2347
+ this.FIELDS = [
2348
+ {
2349
+ key: 'field',
2350
+ label: 'zgw.uploadFields.fields.field',
2351
+ viewType: ViewType.TEXT,
2352
+ },
2353
+ {
2354
+ key: 'defaultValue',
2355
+ label: 'zgw.uploadFields.fields.defaultValue',
2356
+ viewType: ViewType.TEXT,
2357
+ },
2358
+ {
2359
+ key: 'visible',
2360
+ label: 'zgw.uploadFields.fields.visible',
2361
+ viewType: ViewType.BOOLEAN,
2362
+ },
2363
+ {
2364
+ key: 'readonly',
2365
+ label: 'zgw.uploadFields.fields.readonly',
2366
+ viewType: ViewType.BOOLEAN,
2367
+ },
2368
+ ];
2369
+ }
2370
+ openEditModal(uploadField) {
2371
+ this.prefill$.next(uploadField);
2372
+ this.uploadFieldModalType$.next('edit');
2373
+ }
2374
+ closeModal(closeModalEvent) {
2375
+ if (closeModalEvent === 'closeAndRefresh') {
2376
+ this.reload();
2377
+ }
2378
+ this.uploadFieldModalType$.next('closed');
2379
+ }
2380
+ reload(noAnimation = false) {
2381
+ this._reload$.next(noAnimation ? 'noAnimation' : null);
2382
+ }
2383
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploadFieldsComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiDocumentService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
2384
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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-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\n *ngIf=\"{\n loading: loading$ | async,\n documentUploadFields: documentUploadFields$ | async,\n uploadFieldModalType: uploadFieldModalType$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 >\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 [documentDefinitionName]=\"obs.documentDefinitionName\"\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-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: "pipe", type: i4.AsyncPipe, name: "async" }, { 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.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: ["documentDefinitionName", "type", "prefill"], outputs: ["closeModalEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2385
+ }
2386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploadFieldsComponent, decorators: [{
2387
+ type: Component,
2388
+ args: [{ selector: 'valtimo-documenten-api-upload-fields', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
2389
+ CommonModule,
2390
+ CarbonListModule,
2391
+ TranslateModule,
2392
+ ConfirmationModalModule,
2393
+ ButtonModule,
2394
+ IconModule,
2395
+ DocumentenApiUploadFieldModalComponent,
2396
+ ], 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\n *ngIf=\"{\n loading: loading$ | async,\n documentUploadFields: documentUploadFields$ | async,\n uploadFieldModalType: uploadFieldModalType$ | async,\n documentDefinitionName: documentDefinitionName$ | 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 >\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 [documentDefinitionName]=\"obs.documentDefinitionName\"\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-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"] }]
2397
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentenApiDocumentService }, { type: i3.TranslateService }], propDecorators: { carbonList: [{
2398
+ type: ViewChild,
2399
+ args: [CarbonListComponent]
2400
+ }] } });
2401
+
2042
2402
  /*
2043
2403
  * Copyright 2015-2024 Ritense BV, the Netherlands.
2044
2404
  *
@@ -2063,7 +2423,7 @@ class DocumentenApiVersionComponent {
2063
2423
  this.documentenApiVersion$ = combineLatest([this.documentDefinitionName$, this.documentenApiVersionService.refresh$]).pipe(tap(() => this.loading$.next(true)), switchMap(([documentDefinitionName]) => this.documentenApiVersionService.getManagementApiVersion(documentDefinitionName)), tap(() => this.loading$.next(false)));
2064
2424
  }
2065
2425
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiVersionComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
2066
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiVersionComponent, isStandalone: true, selector: "valtimo-documenten-api-version", 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 class=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'openZaak.documentenApi.title' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentenApiVersion: documentenApiVersion$ | async,\n } as obs\"\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</ng-container>\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: [".loading-container{display:flex;width:100%;justify-content: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: "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"] }] }); }
2426
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiVersionComponent, isStandalone: true, selector: "valtimo-documenten-api-version", 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 class=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'openZaak.documentenApi.title' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n documentenApiVersion: documentenApiVersion$ | async,\n } as obs\"\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</ng-container>\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: [".loading-container{display:flex;width:100%;justify-content: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: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: LoadingModule }, { kind: "component", type: i6.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "component", type: i6.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }] }); }
2067
2427
  }
2068
2428
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiVersionComponent, decorators: [{
2069
2429
  type: Component,
@@ -2198,12 +2558,41 @@ const documentenApiUploaderEditForm = () => ({
2198
2558
  required: false,
2199
2559
  },
2200
2560
  },
2561
+ {
2562
+ type: 'checkbox',
2563
+ input: true,
2564
+ inputType: 'checkbox',
2565
+ key: 'disabled',
2566
+ label: 'Disabled',
2567
+ tooltip: 'Disable the upload field',
2568
+ validate: {
2569
+ required: false,
2570
+ },
2571
+ },
2572
+ {
2573
+ label: 'HTML',
2574
+ tag: 'div',
2575
+ content: '<h3>Documenten API metadata</h3>',
2576
+ refreshOnChange: false,
2577
+ type: 'htmlelement',
2578
+ input: false,
2579
+ tableView: false,
2580
+ },
2581
+ {
2582
+ label: 'HTML',
2583
+ tag: 'div',
2584
+ content: '<h4>Filename</h4>',
2585
+ refreshOnChange: false,
2586
+ type: 'htmlelement',
2587
+ input: false,
2588
+ tableView: false,
2589
+ },
2201
2590
  {
2202
2591
  type: 'textfield',
2203
2592
  input: true,
2204
- key: 'customOptions.documentTitle',
2205
- label: 'Default document title',
2206
- tooltip: 'Leave empty to let the user input their own title',
2593
+ key: 'customOptions.filename',
2594
+ label: 'Default filename',
2595
+ tooltip: 'Leave empty to let the user input their own filename',
2207
2596
  validate: {
2208
2597
  required: false,
2209
2598
  },
@@ -2212,18 +2601,37 @@ const documentenApiUploaderEditForm = () => ({
2212
2601
  type: 'checkbox',
2213
2602
  input: true,
2214
2603
  inputType: 'checkbox',
2215
- key: 'customOptions.disableDocumentTitle',
2216
- label: 'Disable document title input',
2604
+ key: 'customOptions.disableFilename',
2605
+ label: 'Disable filename input',
2217
2606
  validate: {
2218
2607
  required: false,
2219
2608
  },
2220
2609
  },
2610
+ {
2611
+ type: 'checkbox',
2612
+ input: true,
2613
+ inputType: 'checkbox',
2614
+ key: 'customOptions.hideFilename',
2615
+ label: 'Hide filename input',
2616
+ validate: {
2617
+ required: false,
2618
+ },
2619
+ },
2620
+ {
2621
+ label: 'HTML',
2622
+ tag: 'div',
2623
+ content: '<h4>Title</h4>',
2624
+ refreshOnChange: false,
2625
+ type: 'htmlelement',
2626
+ input: false,
2627
+ tableView: false,
2628
+ },
2221
2629
  {
2222
2630
  type: 'textfield',
2223
2631
  input: true,
2224
- key: 'customOptions.filename',
2225
- label: 'Default filename',
2226
- tooltip: 'Leave empty to let the user input their own filename',
2632
+ key: 'customOptions.documentTitle',
2633
+ label: 'Default document title',
2634
+ tooltip: 'Leave empty to let the user input their own title',
2227
2635
  validate: {
2228
2636
  required: false,
2229
2637
  },
@@ -2232,12 +2640,31 @@ const documentenApiUploaderEditForm = () => ({
2232
2640
  type: 'checkbox',
2233
2641
  input: true,
2234
2642
  inputType: 'checkbox',
2235
- key: 'customOptions.disableFilename',
2236
- label: 'Disable filename input',
2643
+ key: 'customOptions.disableDocumentTitle',
2644
+ label: 'Disable document title input',
2645
+ validate: {
2646
+ required: false,
2647
+ },
2648
+ },
2649
+ {
2650
+ type: 'checkbox',
2651
+ input: true,
2652
+ inputType: 'checkbox',
2653
+ key: 'customOptions.hideDocumentTitle',
2654
+ label: 'Hide document title input',
2237
2655
  validate: {
2238
2656
  required: false,
2239
2657
  },
2240
2658
  },
2659
+ {
2660
+ label: 'HTML',
2661
+ tag: 'div',
2662
+ content: '<h4>Author</h4>',
2663
+ refreshOnChange: false,
2664
+ type: 'htmlelement',
2665
+ input: false,
2666
+ tableView: false,
2667
+ },
2241
2668
  {
2242
2669
  type: 'textfield',
2243
2670
  input: true,
@@ -2259,20 +2686,30 @@ const documentenApiUploaderEditForm = () => ({
2259
2686
  },
2260
2687
  },
2261
2688
  {
2262
- type: 'select',
2263
- label: 'Default status',
2264
- key: 'customOptions.status',
2265
- placeholder: 'Select a default status',
2266
- data: {
2267
- values: [
2268
- { value: 'in_bewerking', label: 'In editing' },
2269
- { value: 'ter_vaststelling', label: 'To be confirmed' },
2270
- { value: 'definitief', label: 'Definitive' },
2271
- { value: 'gearchiveerd', label: 'Archived' },
2272
- ],
2689
+ type: 'checkbox',
2690
+ input: true,
2691
+ inputType: 'checkbox',
2692
+ key: 'customOptions.hideAuthor',
2693
+ label: 'Hide author input',
2694
+ validate: {
2695
+ required: false,
2273
2696
  },
2274
- dataSrc: 'values',
2697
+ },
2698
+ {
2699
+ label: 'HTML',
2700
+ tag: 'div',
2701
+ content: '<h4>Description</h4>',
2702
+ refreshOnChange: false,
2703
+ type: 'htmlelement',
2704
+ input: false,
2705
+ tableView: false,
2706
+ },
2707
+ {
2708
+ type: 'textfield',
2275
2709
  input: true,
2710
+ key: 'customOptions.description',
2711
+ label: 'Default description',
2712
+ tooltip: 'Leave empty to let the user input their own description',
2276
2713
  validate: {
2277
2714
  required: false,
2278
2715
  },
@@ -2281,12 +2718,31 @@ const documentenApiUploaderEditForm = () => ({
2281
2718
  type: 'checkbox',
2282
2719
  input: true,
2283
2720
  inputType: 'checkbox',
2284
- key: 'customOptions.disableStatus',
2285
- label: 'Disable status input',
2721
+ key: 'customOptions.disableDescription',
2722
+ label: 'Disable description input',
2723
+ validate: {
2724
+ required: false,
2725
+ },
2726
+ },
2727
+ {
2728
+ type: 'checkbox',
2729
+ input: true,
2730
+ inputType: 'checkbox',
2731
+ key: 'customOptions.hideDescription',
2732
+ label: 'Hide description input',
2286
2733
  validate: {
2287
2734
  required: false,
2288
2735
  },
2289
2736
  },
2737
+ {
2738
+ label: 'HTML',
2739
+ tag: 'div',
2740
+ content: '<h4>Language</h4>',
2741
+ refreshOnChange: false,
2742
+ type: 'htmlelement',
2743
+ input: false,
2744
+ tableView: false,
2745
+ },
2290
2746
  {
2291
2747
  type: 'select',
2292
2748
  label: 'Default language',
@@ -2316,11 +2772,43 @@ const documentenApiUploaderEditForm = () => ({
2316
2772
  },
2317
2773
  },
2318
2774
  {
2319
- type: 'textfield',
2775
+ type: 'checkbox',
2776
+ input: true,
2777
+ inputType: 'checkbox',
2778
+ key: 'customOptions.hideLanguage',
2779
+ label: 'Hide language input',
2780
+ validate: {
2781
+ required: false,
2782
+ },
2783
+ },
2784
+ {
2785
+ label: 'HTML',
2786
+ tag: 'div',
2787
+ content: '<h4>Confidentiality level</h4>',
2788
+ refreshOnChange: false,
2789
+ type: 'htmlelement',
2790
+ input: false,
2791
+ tableView: false,
2792
+ },
2793
+ {
2794
+ type: 'select',
2795
+ label: 'Default confidentiality level',
2796
+ key: 'customOptions.confidentialityLevel',
2797
+ placeholder: 'Select a default confidentiality level',
2798
+ data: {
2799
+ values: [
2800
+ { value: 'openbaar', label: 'Public' },
2801
+ { value: 'beperkt_openbaar', label: 'Restricted public' },
2802
+ { value: 'intern', label: 'Internal' },
2803
+ { value: 'zaakvertrouwelijk', label: 'Case confidential' },
2804
+ { value: 'vertrouwelijk', label: 'Private' },
2805
+ { value: 'confidentieel', label: 'Confidential' },
2806
+ { value: 'geheim', label: 'Secret' },
2807
+ { value: 'zeer_geheim', label: 'Very secret' },
2808
+ ],
2809
+ },
2810
+ dataSrc: 'values',
2320
2811
  input: true,
2321
- key: 'customOptions.documentType',
2322
- label: 'Default document type url',
2323
- tooltip: 'Must match the document type url exactly. Leave empty to let the user input their own document type',
2324
2812
  validate: {
2325
2813
  required: false,
2326
2814
  },
@@ -2329,18 +2817,66 @@ const documentenApiUploaderEditForm = () => ({
2329
2817
  type: 'checkbox',
2330
2818
  input: true,
2331
2819
  inputType: 'checkbox',
2332
- key: 'customOptions.disableDocumentType',
2333
- label: 'Disable document type input',
2820
+ key: 'customOptions.disableConfidentialityLevel',
2821
+ label: 'Disable confidentiality level input',
2822
+ validate: {
2823
+ required: false,
2824
+ },
2825
+ },
2826
+ {
2827
+ type: 'checkbox',
2828
+ input: true,
2829
+ inputType: 'checkbox',
2830
+ key: 'customOptions.hideConfidentialityLevel',
2831
+ label: 'Hide confidentiality level input',
2832
+ validate: {
2833
+ required: false,
2834
+ },
2835
+ },
2836
+ {
2837
+ label: 'HTML',
2838
+ tag: 'div',
2839
+ content: '<h4>Creation date</h4>',
2840
+ refreshOnChange: false,
2841
+ type: 'htmlelement',
2842
+ input: false,
2843
+ tableView: false,
2844
+ },
2845
+ {
2846
+ type: 'checkbox',
2847
+ input: true,
2848
+ inputType: 'checkbox',
2849
+ key: 'customOptions.disableCreationDate',
2850
+ label: 'Disable creation date input',
2851
+ validate: {
2852
+ required: false,
2853
+ },
2854
+ },
2855
+ {
2856
+ type: 'checkbox',
2857
+ input: true,
2858
+ inputType: 'checkbox',
2859
+ key: 'customOptions.hideCreationDate',
2860
+ label: 'Hide creation date input',
2334
2861
  validate: {
2335
2862
  required: false,
2336
2863
  },
2337
2864
  },
2865
+ {
2866
+ label: 'HTML',
2867
+ tag: 'div',
2868
+ content: '<h4>Informatieobjecttype</h4>',
2869
+ refreshOnChange: false,
2870
+ type: 'htmlelement',
2871
+ input: false,
2872
+ tableView: false,
2873
+ },
2338
2874
  {
2339
2875
  type: 'textfield',
2340
2876
  input: true,
2341
- key: 'customOptions.description',
2342
- label: 'Default description',
2343
- tooltip: 'Leave empty to let the user input their own description',
2877
+ key: 'customOptions.documentType',
2878
+ label: 'Default informatieobjecttype url',
2879
+ tooltip: "Sometimes referred to as the 'document-type'. Must match the informatieobjecttype url exactly. Leave empty to let the user input their own informatieobjecttype",
2344
2880
  validate: {
2345
2881
  required: false,
2346
2882
  },
@@ -2349,27 +2885,42 @@ const documentenApiUploaderEditForm = () => ({
2349
2885
  type: 'checkbox',
2350
2886
  input: true,
2351
2887
  inputType: 'checkbox',
2352
- key: 'customOptions.disableDescription',
2353
- label: 'Disable description input',
2888
+ key: 'customOptions.disableDocumentType',
2889
+ label: 'Disable informatieobjecttype input',
2890
+ validate: {
2891
+ required: false,
2892
+ },
2893
+ },
2894
+ {
2895
+ type: 'checkbox',
2896
+ input: true,
2897
+ inputType: 'checkbox',
2898
+ key: 'customOptions.hideDocumentType',
2899
+ label: 'Hide informatieobjecttype input',
2354
2900
  validate: {
2355
2901
  required: false,
2356
2902
  },
2357
2903
  },
2904
+ {
2905
+ label: 'HTML',
2906
+ tag: 'div',
2907
+ content: '<h4>Status</h4>',
2908
+ refreshOnChange: false,
2909
+ type: 'htmlelement',
2910
+ input: false,
2911
+ tableView: false,
2912
+ },
2358
2913
  {
2359
2914
  type: 'select',
2360
- label: 'Default confidentiality level',
2361
- key: 'customOptions.confidentialityLevel',
2362
- placeholder: 'Select a default confidentiality level',
2915
+ label: 'Default status',
2916
+ key: 'customOptions.status',
2917
+ placeholder: 'Select a default status',
2363
2918
  data: {
2364
2919
  values: [
2365
- { value: 'openbaar', label: 'Public' },
2366
- { value: 'beperkt_openbaar', label: 'Restricted public' },
2367
- { value: 'intern', label: 'Internal' },
2368
- { value: 'zaakvertrouwelijk', label: 'Case confidential' },
2369
- { value: 'vertrouwelijk', label: 'Private' },
2370
- { value: 'confidentieel', label: 'Confidential' },
2371
- { value: 'geheim', label: 'Secret' },
2372
- { value: 'zeer_geheim', label: 'Very secret' },
2920
+ { value: 'in_bewerking', label: 'In editing' },
2921
+ { value: 'ter_vaststelling', label: 'To be confirmed' },
2922
+ { value: 'definitief', label: 'Definitive' },
2923
+ { value: 'gearchiveerd', label: 'Archived' },
2373
2924
  ],
2374
2925
  },
2375
2926
  dataSrc: 'values',
@@ -2382,8 +2933,66 @@ const documentenApiUploaderEditForm = () => ({
2382
2933
  type: 'checkbox',
2383
2934
  input: true,
2384
2935
  inputType: 'checkbox',
2385
- key: 'customOptions.disableConfidentialityLevel',
2386
- label: 'Disable confidentiality level input',
2936
+ key: 'customOptions.disableStatus',
2937
+ label: 'Disable status input',
2938
+ validate: {
2939
+ required: false,
2940
+ },
2941
+ },
2942
+ {
2943
+ type: 'checkbox',
2944
+ input: true,
2945
+ inputType: 'checkbox',
2946
+ key: 'customOptions.hideStatus',
2947
+ label: 'Hide status input',
2948
+ validate: {
2949
+ required: false,
2950
+ },
2951
+ },
2952
+ {
2953
+ label: 'HTML',
2954
+ tag: 'div',
2955
+ content: '<h4>Additional date</h4>',
2956
+ refreshOnChange: false,
2957
+ type: 'htmlelement',
2958
+ input: false,
2959
+ tableView: false,
2960
+ },
2961
+ {
2962
+ type: 'checkbox',
2963
+ input: true,
2964
+ inputType: 'checkbox',
2965
+ key: 'customOptions.hideAdditionalDate',
2966
+ label: 'Hide additional date input',
2967
+ validate: {
2968
+ required: false,
2969
+ },
2970
+ },
2971
+ {
2972
+ label: 'HTML',
2973
+ tag: 'div',
2974
+ content: '<h4>Tags</h4>',
2975
+ refreshOnChange: false,
2976
+ type: 'htmlelement',
2977
+ input: false,
2978
+ tableView: false,
2979
+ },
2980
+ {
2981
+ type: 'textfield',
2982
+ input: true,
2983
+ key: 'customOptions.tags',
2984
+ label: 'Default tags',
2985
+ tooltip: 'A comma separated list of tags. Leave empty to let the user input their own tags',
2986
+ validate: {
2987
+ required: false,
2988
+ },
2989
+ },
2990
+ {
2991
+ type: 'checkbox',
2992
+ input: true,
2993
+ inputType: 'checkbox',
2994
+ key: 'customOptions.hideTags',
2995
+ label: 'Hide tags input',
2387
2996
  validate: {
2388
2997
  required: false,
2389
2998
  },
@@ -2407,6 +3016,73 @@ const documentenApiUploaderEditForm = () => ({
2407
3016
  * limitations under the License.
2408
3017
  */
2409
3018
  class DocumentenApiUploaderComponent {
3019
+ set documentTitle(defaultValue) {
3020
+ this.defaultValues['titel'] = defaultValue;
3021
+ }
3022
+ set hideDocumentTitle(hide) {
3023
+ this.hideField(hide, 'titel');
3024
+ }
3025
+ set filename(defaultValue) {
3026
+ this.defaultValues['bestandsnaam'] = defaultValue;
3027
+ }
3028
+ set hideFilename(hide) {
3029
+ this.hideField(hide, 'bestandsnaam');
3030
+ }
3031
+ set author(defaultValue) {
3032
+ this.defaultValues['auteur'] = defaultValue;
3033
+ }
3034
+ set hideAuthor(hide) {
3035
+ this.hideField(hide, 'auteur');
3036
+ }
3037
+ set status(defaultValue) {
3038
+ this.defaultValues['status'] = defaultValue;
3039
+ }
3040
+ set hideStatus(hide) {
3041
+ this.hideField(hide, 'status');
3042
+ }
3043
+ set language(defaultValue) {
3044
+ this.defaultValues['taal'] = defaultValue;
3045
+ }
3046
+ set hideLanguage(hide) {
3047
+ this.hideField(hide, 'taal');
3048
+ }
3049
+ set documentType(defaultValue) {
3050
+ this.defaultValues['informatieobjecttype'] = defaultValue;
3051
+ }
3052
+ set hideDocumentType(hide) {
3053
+ this.hideField(hide, 'informatieobjecttype');
3054
+ }
3055
+ set description(defaultValue) {
3056
+ this.defaultValues['beschrijving'] = defaultValue;
3057
+ }
3058
+ set hideDescription(hide) {
3059
+ this.hideField(hide, 'beschrijving');
3060
+ }
3061
+ set confidentialityLevel(defaultValue) {
3062
+ this.defaultValues['vertrouwelijkheidaanduiding'] = defaultValue;
3063
+ }
3064
+ set hideConfidentialityLevel(hide) {
3065
+ this.hideField(hide, 'vertrouwelijkheidaanduiding');
3066
+ }
3067
+ set hideCreationDate(hide) {
3068
+ this.hideField(hide, 'creatiedatum');
3069
+ }
3070
+ set hideAdditionalDate(hide) {
3071
+ this.hideField(hide, 'aanvullendeDatum');
3072
+ }
3073
+ set tags(tags) {
3074
+ let _tags = tags
3075
+ ?.split(',')
3076
+ ?.map(tag => tag.trim())
3077
+ ?.filter(tag => !!tag);
3078
+ if (_tags?.length === 0) {
3079
+ _tags = null;
3080
+ }
3081
+ this.defaultValues['trefwoorden'] = tags;
3082
+ }
3083
+ set hideTags(hide) {
3084
+ this.hideField(hide, 'trefwoorden');
3085
+ }
2410
3086
  constructor(uploadProviderService, stateService, domService, downloadService, modalService, userProviderService, route, documentenApiVersionService) {
2411
3087
  this.uploadProviderService = uploadProviderService;
2412
3088
  this.stateService = stateService;
@@ -2421,22 +3097,22 @@ class DocumentenApiUploaderComponent {
2421
3097
  this.fileToBeUploaded$ = new BehaviorSubject(null);
2422
3098
  this.modalDisabled$ = new BehaviorSubject(false);
2423
3099
  this.showModal = signal(false);
2424
- this.uploadProcessLinked$ = combineLatest([
2425
- this.route?.params || of(null),
2426
- this.route?.firstChild?.params || of(null),
2427
- this.modalService.documentDefinitionName$,
2428
- ]).pipe(filter$1(([params, firstChildParams, documentDefinitionName]) => !!(params?.documentDefinitionName ||
2429
- firstChildParams?.documentDefinitionName ||
2430
- documentDefinitionName)), switchMap(([params, firstChildParams, documentDefinitionName]) => this.uploadProviderService.checkUploadProcessLink(params?.documentDefinitionName ||
2431
- firstChildParams?.documentDefinitionName ||
2432
- documentDefinitionName)), startWith('loading'));
3100
+ this.uploadProcessLinked$ = this.modalService.documentDefinitionName$.pipe(switchMap(documentDefinitionName => this.uploadProviderService.checkUploadProcessLink(documentDefinitionName)), startWith('loading'));
2433
3101
  this.isAdmin$ = this.userProviderService
2434
3102
  .getUserSubject()
2435
3103
  .pipe(map$1(userIdentity => userIdentity?.roles.includes('ROLE_ADMIN')));
2436
- this._documentDefinitionName$ = this.route.params.pipe(map$1(params => params?.documentDefinitionName), filter$1(caseDefinitionName => !!caseDefinitionName));
2437
- this.supportedDocumentenApiFeatures$ = this._documentDefinitionName$.pipe(switchMap(caseDefinitionName => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionName)));
3104
+ this.supportedDocumentenApiFeatures$ = this.modalService.documentDefinitionName$.pipe(switchMap(caseDefinitionName => this.documentenApiVersionService.getSupportedApiFeatures(caseDefinitionName)));
3105
+ this.defaultValues = {};
3106
+ this.hideFields = [];
3107
+ this._subscriptions = new Subscription();
2438
3108
  this._value = [];
2439
3109
  }
3110
+ ngOnInit() {
3111
+ this.openDocumentDefinitionSubscription();
3112
+ }
3113
+ ngOnDestroy() {
3114
+ this._subscriptions.unsubscribe();
3115
+ }
2440
3116
  get value() {
2441
3117
  return this._value;
2442
3118
  }
@@ -2470,13 +3146,27 @@ class DocumentenApiUploaderComponent {
2470
3146
  }))
2471
3147
  .subscribe();
2472
3148
  }
2473
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploaderComponent, deps: [{ token: i2$1.UploadProviderService }, { token: i3.FormIoStateService }, { token: i3.FormIoDomService }, { token: i2$1.DownloadService }, { token: i3.ValtimoModalService }, { token: i5$3.UserProviderService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
2474
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiUploaderComponent, selector: "valtimo-documenten-api-formio-uploader", inputs: { disabled: "disabled", title: "title", hideTitle: "hideTitle", subtitle: "subtitle", maxFileSize: "maxFileSize", hideMaxFileSize: "hideMaxFileSize", camera: "camera", documentTitle: "documentTitle", disableDocumentTitle: "disableDocumentTitle", filename: "filename", disableFilename: "disableFilename", author: "author", disableAuthor: "disableAuthor", status: "status", disableStatus: "disableStatus", language: "language", disableLanguage: "disableLanguage", documentType: "documentType", disableDocumentType: "disableDocumentType", description: "description", disableDescription: "disableDescription", confidentialityLevel: "confidentialityLevel", disableConfidentialityLevel: "disableConfidentialityLevel", value: "value" }, outputs: { valueChange: "valueChange" }, 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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'dossier.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]=\"'dossier.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 [author]=\"author\"\n [confidentialityLevel]=\"confidentialityLevel\"\n [description]=\"description\"\n [disableAuthor]=\"disableAuthor\"\n [disableConfidentialityLevel]=\"disableConfidentialityLevel\"\n [disableDescription]=\"disableDescription\"\n [disableDocumentTitle]=\"disableDocumentTitle\"\n [disableDocumentType]=\"disableDocumentType\"\n [disableFilename]=\"disableFilename\"\n [disableLanguage]=\"disableLanguage\"\n [disableStatus]=\"disableStatus\"\n [disabled$]=\"modalDisabled$\"\n [documentTitle]=\"documentTitle\"\n [documentType]=\"documentType\"\n [file$]=\"fileToBeUploaded$\"\n [filename]=\"filename\"\n [language]=\"language\"\n [status]=\"status\"\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-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.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$", "author", "confidentialityLevel", "description", "disableAuthor", "disableConfidentialityLevel", "disableDescription", "disableDocumentTitle", "disableDocumentType", "disableFilename", "disableLanguage", "disableStatus", "disableTrefwoorden", "documentTitle", "documentType", "filename", "isEditMode", "language", "open", "status", "supportsTrefwoorden"], outputs: ["metadata", "modalClose"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.FileSizePipe, name: "filesize" }] }); }
3149
+ openDocumentDefinitionSubscription() {
3150
+ this._subscriptions.add(combineLatest([this.route?.params || of(null), this.route?.firstChild?.params || of(null)])
3151
+ .pipe(map$1(([params, firstChildParams]) => (params?.documentDefinitionName || firstChildParams?.documentDefinitionName)), filter$1(documentDefinitionName => !!documentDefinitionName))
3152
+ .subscribe(documentDefinitionName => this.modalService.setDocumentDefinitionName(documentDefinitionName)));
3153
+ }
3154
+ hideField(hide, field) {
3155
+ const exists = this.hideFields.includes(field);
3156
+ if (!exists && hide) {
3157
+ this.hideFields.push(field);
3158
+ }
3159
+ else if (exists && !hide) {
3160
+ delete this.hideFields[field];
3161
+ }
3162
+ }
3163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploaderComponent, deps: [{ token: i2$1.UploadProviderService }, { token: i3$1.FormIoStateService }, { token: i3$1.FormIoDomService }, { token: i2$1.DownloadService }, { token: i3$1.ValtimoModalService }, { token: i5$1.UserProviderService }, { token: i1$2.ActivatedRoute }, { token: DocumentenApiVersionService }], target: i0.ɵɵFactoryTarget.Component }); }
3164
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DocumentenApiUploaderComponent, selector: "valtimo-documenten-api-formio-uploader", inputs: { disabled: "disabled", title: "title", hideTitle: "hideTitle", subtitle: "subtitle", maxFileSize: "maxFileSize", hideMaxFileSize: "hideMaxFileSize", camera: "camera", documentTitle: "documentTitle", hideDocumentTitle: "hideDocumentTitle", disableDocumentTitle: "disableDocumentTitle", filename: "filename", hideFilename: "hideFilename", disableFilename: "disableFilename", author: "author", hideAuthor: "hideAuthor", disableAuthor: "disableAuthor", status: "status", hideStatus: "hideStatus", disableStatus: "disableStatus", language: "language", hideLanguage: "hideLanguage", disableLanguage: "disableLanguage", documentType: "documentType", hideDocumentType: "hideDocumentType", disableDocumentType: "disableDocumentType", description: "description", hideDescription: "hideDescription", disableDescription: "disableDescription", confidentialityLevel: "confidentialityLevel", hideConfidentialityLevel: "hideConfidentialityLevel", disableConfidentialityLevel: "disableConfidentialityLevel", hideCreationDate: "hideCreationDate", disableCreationDate: "disableCreationDate", hideAdditionalDate: "hideAdditionalDate", tags: "tags", hideTags: "hideTags", value: "value" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'dossier.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]=\"'dossier.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-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.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.DropzoneComponent, selector: "valtimo-dropzone", inputs: ["title", "hideTitle", "subtitle", "externalError$", "maxFileSize", "showMaxFileSize", "acceptedFiles", "clear$", "disabled", "hideFilePreview", "uploading", "camera", "maxFiles"], outputs: ["fileSelected"] }, { kind: "directive", type: i3.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$1.FileSizePipe, name: "filesize" }] }); }
2475
3165
  }
2476
3166
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentenApiUploaderComponent, decorators: [{
2477
3167
  type: Component,
2478
- args: [{ selector: 'valtimo-documenten-api-formio-uploader', 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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'dossier.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]=\"'dossier.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 [author]=\"author\"\n [confidentialityLevel]=\"confidentialityLevel\"\n [description]=\"description\"\n [disableAuthor]=\"disableAuthor\"\n [disableConfidentialityLevel]=\"disableConfidentialityLevel\"\n [disableDescription]=\"disableDescription\"\n [disableDocumentTitle]=\"disableDocumentTitle\"\n [disableDocumentType]=\"disableDocumentType\"\n [disableFilename]=\"disableFilename\"\n [disableLanguage]=\"disableLanguage\"\n [disableStatus]=\"disableStatus\"\n [disabled$]=\"modalDisabled$\"\n [documentTitle]=\"documentTitle\"\n [documentType]=\"documentType\"\n [file$]=\"fileToBeUploaded$\"\n [filename]=\"filename\"\n [language]=\"language\"\n [status]=\"status\"\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-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"] }]
2479
- }], ctorParameters: () => [{ type: i2$1.UploadProviderService }, { type: i3.FormIoStateService }, { type: i3.FormIoDomService }, { type: i2$1.DownloadService }, { type: i3.ValtimoModalService }, { type: i5$3.UserProviderService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }], propDecorators: { disabled: [{
3168
+ args: [{ selector: 'valtimo-documenten-api-formio-uploader', 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 *ngIf=\"{linked: uploadProcessLinked$ | async, isAdmin: isAdmin$ | async} as obs\">\n <div *ngIf=\"obs.linked === false\">\n <div\n *ngIf=\"obs.isAdmin\"\n [translate]=\"'dossier.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]=\"'dossier.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-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"] }]
3169
+ }], ctorParameters: () => [{ type: i2$1.UploadProviderService }, { type: i3$1.FormIoStateService }, { type: i3$1.FormIoDomService }, { type: i2$1.DownloadService }, { type: i3$1.ValtimoModalService }, { type: i5$1.UserProviderService }, { type: i1$2.ActivatedRoute }, { type: DocumentenApiVersionService }], propDecorators: { disabled: [{
2480
3170
  type: Input
2481
3171
  }], title: [{
2482
3172
  type: Input
@@ -2492,36 +3182,62 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
2492
3182
  type: Input
2493
3183
  }], documentTitle: [{
2494
3184
  type: Input
3185
+ }], hideDocumentTitle: [{
3186
+ type: Input
2495
3187
  }], disableDocumentTitle: [{
2496
3188
  type: Input
2497
3189
  }], filename: [{
2498
3190
  type: Input
3191
+ }], hideFilename: [{
3192
+ type: Input
2499
3193
  }], disableFilename: [{
2500
3194
  type: Input
2501
3195
  }], author: [{
2502
3196
  type: Input
3197
+ }], hideAuthor: [{
3198
+ type: Input
2503
3199
  }], disableAuthor: [{
2504
3200
  type: Input
2505
3201
  }], status: [{
2506
3202
  type: Input
3203
+ }], hideStatus: [{
3204
+ type: Input
2507
3205
  }], disableStatus: [{
2508
3206
  type: Input
2509
3207
  }], language: [{
2510
3208
  type: Input
3209
+ }], hideLanguage: [{
3210
+ type: Input
2511
3211
  }], disableLanguage: [{
2512
3212
  type: Input
2513
3213
  }], documentType: [{
2514
3214
  type: Input
3215
+ }], hideDocumentType: [{
3216
+ type: Input
2515
3217
  }], disableDocumentType: [{
2516
3218
  type: Input
2517
3219
  }], description: [{
2518
3220
  type: Input
3221
+ }], hideDescription: [{
3222
+ type: Input
2519
3223
  }], disableDescription: [{
2520
3224
  type: Input
2521
3225
  }], confidentialityLevel: [{
2522
3226
  type: Input
3227
+ }], hideConfidentialityLevel: [{
3228
+ type: Input
2523
3229
  }], disableConfidentialityLevel: [{
2524
3230
  type: Input
3231
+ }], hideCreationDate: [{
3232
+ type: Input
3233
+ }], disableCreationDate: [{
3234
+ type: Input
3235
+ }], hideAdditionalDate: [{
3236
+ type: Input
3237
+ }], tags: [{
3238
+ type: Input
3239
+ }], hideTags: [{
3240
+ type: Input
2525
3241
  }], valueChange: [{
2526
3242
  type: Output
2527
3243
  }], value: [{
@@ -2799,8 +3515,8 @@ class DossierDetailTabZaakobjectenComponent {
2799
3515
  this.objectName$.next(this.getObjectTypeName(objectTypeSelectItems));
2800
3516
  this.show();
2801
3517
  }
2802
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabZaakobjectenComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
2803
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierDetailTabZaakobjectenComponent, isStandalone: true, selector: "valtimo-dossier-detail-tab-zaakobjecten", viewQueries: [{ propertyName: "viewZaakobjectModal", first: true, predicate: ["viewZaakobjectModal"], 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<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]=\"'dossier.zaakobjecten.objecttype' | translate\"\n [placeholder]=\"'dossier.zaakobjecten.objecttypePlaceholder' | translate\"\n [loading]=\"!obs.objecttypeSelectItems\"\n (selectedChange)=\"selectObjectType($event)\"\n ></v-select>\n <v-input-label\n titleTranslationKey=\"dossier.zaakobjecten.objecten\"\n [largeMargin]=\"!!obs.selectedObjectTypeUrl\"\n ></v-input-label>\n <v-paragraph *ngIf=\"!obs.selectedObjectTypeUrl\">{{\n 'dossier.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=\"dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i3.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "dataTestId"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: InputLabelModule }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "ngmodule", type: ParagraphModule }, { kind: "component", type: i3.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: TitleModule }, { kind: "component", type: i3.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { 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" }] }); }
3518
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabZaakobjectenComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3$1.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
3519
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierDetailTabZaakobjectenComponent, isStandalone: true, selector: "valtimo-dossier-detail-tab-zaakobjecten", viewQueries: [{ propertyName: "viewZaakobjectModal", first: true, predicate: ["viewZaakobjectModal"], 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<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]=\"'dossier.zaakobjecten.objecttype' | translate\"\n [placeholder]=\"'dossier.zaakobjecten.objecttypePlaceholder' | translate\"\n [loading]=\"!obs.objecttypeSelectItems\"\n (selectedChange)=\"selectObjectType($event)\"\n ></v-select>\n <v-input-label\n titleTranslationKey=\"dossier.zaakobjecten.objecten\"\n [largeMargin]=\"!!obs.selectedObjectTypeUrl\"\n ></v-input-label>\n <v-paragraph *ngIf=\"!obs.selectedObjectTypeUrl\">{{\n 'dossier.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=\"dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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: "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$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: InputLabelModule }, { kind: "component", type: i3$1.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "ngmodule", type: ParagraphModule }, { kind: "component", type: i3$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: TableModule }, { 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: "ngmodule", type: VModalModule }, { kind: "component", type: i3$1.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: TitleModule }, { kind: "component", type: i3$1.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "ngmodule", type: FormIoModule }, { kind: "component", type: i3$1.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change", "event"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
2804
3520
  }
2805
3521
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabZaakobjectenComponent, decorators: [{
2806
3522
  type: Component,
@@ -2815,7 +3531,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
2815
3531
  FormIoModule,
2816
3532
  TranslateModule,
2817
3533
  ], 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\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]=\"'dossier.zaakobjecten.objecttype' | translate\"\n [placeholder]=\"'dossier.zaakobjecten.objecttypePlaceholder' | translate\"\n [loading]=\"!obs.objecttypeSelectItems\"\n (selectedChange)=\"selectObjectType($event)\"\n ></v-select>\n <v-input-label\n titleTranslationKey=\"dossier.zaakobjecten.objecten\"\n [largeMargin]=\"!!obs.selectedObjectTypeUrl\"\n ></v-input-label>\n <v-paragraph *ngIf=\"!obs.selectedObjectTypeUrl\">{{\n 'dossier.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=\"dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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"] }]
2818
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewZaakobjectModal: [{
3534
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3$1.ModalService }], propDecorators: { viewZaakobjectModal: [{
2819
3535
  type: ViewChild,
2820
3536
  args: ['viewZaakobjectModal']
2821
3537
  }] } });
@@ -2921,13 +3637,13 @@ class DossierDetailTabObjectTypeComponent {
2921
3637
  }
2922
3638
  this.show();
2923
3639
  }
2924
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabObjectTypeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
2925
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierDetailTabObjectTypeComponent, isStandalone: true, selector: "valtimo-object-type", viewQueries: [{ propertyName: "viewObjectModal", first: true, predicate: ["viewObjectModal"], 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<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=\"dossier.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 'dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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: "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: TitleModule }, { kind: "component", type: i3.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "ngmodule", type: FormIoModule }, { kind: "component", type: i3.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change", "event"] }] }); }
3640
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabObjectTypeComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: ZaakobjectenService }, { token: i3$1.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
3641
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierDetailTabObjectTypeComponent, isStandalone: true, selector: "valtimo-object-type", viewQueries: [{ propertyName: "viewObjectModal", first: true, predicate: ["viewObjectModal"], 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<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=\"dossier.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 'dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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: "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$1.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$1.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { kind: "ngmodule", type: VModalModule }, { kind: "component", type: i3$1.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter", "parentId"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: TitleModule }, { kind: "component", type: i3$1.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "ngmodule", type: FormIoModule }, { kind: "component", type: i3$1.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change", "event"] }] }); }
2926
3642
  }
2927
3643
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabObjectTypeComponent, decorators: [{
2928
3644
  type: Component,
2929
3645
  args: [{ selector: 'valtimo-object-type', standalone: true, imports: [CommonModule, TableModule, ParagraphModule, VModalModule, TitleModule, FormIoModule], 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\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=\"dossier.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 'dossier.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 <v-title [margin]=\"false\" type=\"h2\" [fullWidth]=\"true\" [center]=\"true\">{{\n objectName$ | async\n }}</v-title>\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 'dossier.zaakobjecten.noFormDefinitionComponent' | translate\n }}</v-paragraph>\n </div>\n</v-modal>\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"] }]
2930
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3.ModalService }], propDecorators: { viewObjectModal: [{
3646
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: ZaakobjectenService }, { type: i3$1.ModalService }], propDecorators: { viewObjectModal: [{
2931
3647
  type: ViewChild,
2932
3648
  args: ['viewObjectModal']
2933
3649
  }] } });
@@ -3115,13 +3831,13 @@ class DossierDetailTabContactMomentsComponent {
3115
3831
  refetchContactMoments() {
3116
3832
  this.refetchContactMoments$.next('');
3117
3833
  }
3118
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, deps: [{ token: ContactMomentService }, { token: i3.AlertService }, { token: i5.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
3119
- 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 &nbsp;{{ '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.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.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.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "ngmodule", type: TimelineModule }, { kind: "component", type: i3.TimelineComponent, selector: "valtimo-timeline", inputs: ["items", "actions"] }] }); }
3834
+ 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 }); }
3835
+ 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 &nbsp;{{ '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"] }] }); }
3120
3836
  }
3121
3837
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, decorators: [{
3122
3838
  type: Component,
3123
3839
  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 &nbsp;{{ '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"] }]
3124
- }], ctorParameters: () => [{ type: ContactMomentService }, { type: i3.AlertService }, { type: i5.TranslateService }], propDecorators: { modal: [{
3840
+ }], ctorParameters: () => [{ type: ContactMomentService }, { type: i3$1.AlertService }, { type: i3.TranslateService }], propDecorators: { modal: [{
3125
3841
  type: ViewChild,
3126
3842
  args: ['contactMomentsNoteModal']
3127
3843
  }] } });
@@ -3375,13 +4091,13 @@ class CustomerListComponent {
3375
4091
  clearFamilyName() {
3376
4092
  this.familyName$.next('');
3377
4093
  }
3378
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerListComponent, deps: [{ token: CustomerService }, { token: i5.TranslateService }, { token: i2.ConfigService }, { token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
3379
- 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.WidgetComponent, selector: "valtimo-widget", inputs: ["type", "name", "icon", "contrast", "divider", "title", "subtitle", "collapseAble", "collapse", "additionalClasses"] }, { kind: "component", type: i3.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.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "component", type: i3.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: i5.TranslatePipe, name: "translate" }] }); }
4094
+ 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 }); }
4095
+ 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" }] }); }
3380
4096
  }
3381
4097
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomerListComponent, decorators: [{
3382
4098
  type: Component,
3383
4099
  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"] }]
3384
- }], ctorParameters: () => [{ type: CustomerService }, { type: i5.TranslateService }, { type: i2.ConfigService }, { type: i1$2.Router }] });
4100
+ }], ctorParameters: () => [{ type: CustomerService }, { type: i3.TranslateService }, { type: i2.ConfigService }, { type: i1$2.Router }] });
3385
4101
 
3386
4102
  /*
3387
4103
  * Copyright 2015-2024 Ritense BV, the Netherlands.
@@ -3423,7 +4139,7 @@ class CasesListComponent {
3423
4139
  ]);
3424
4140
  }
3425
4141
  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 }); }
3426
- 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.PageContainerComponent, selector: "v-page-container" }, { kind: "component", type: i3.PageContentComponent, selector: "v-page-content" }, { kind: "component", type: i3.VPageHeaderComponent, selector: "v-page-header" }, { kind: "component", type: i3.PageHeaderIntroductionComponent, selector: "v-page-header-introduction" }, { kind: "component", type: i3.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "component", type: i3.ParagraphComponent, selector: "v-paragraph", inputs: ["center", "fullWidth", "margin", "italic", "loading", "dataTestId"] }, { 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: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
4142
+ 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" }] }); }
3427
4143
  }
3428
4144
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CasesListComponent, decorators: [{
3429
4145
  type: Component,
@@ -3708,8 +4424,8 @@ class DocumentObjectenApiSyncComponent {
3708
4424
  hideModal() {
3709
4425
  this.modalShowing$.next(false);
3710
4426
  }
3711
- 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.CdsThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
3712
- 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: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i3.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.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.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]" }, { 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: 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: i5$1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { 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]" }] }); }
4427
+ 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 }); }
4428
+ 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]" }, { 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]" }] }); }
3713
4429
  }
3714
4430
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DocumentObjectenApiSyncComponent, decorators: [{
3715
4431
  type: Component,
@@ -3727,7 +4443,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
3727
4443
  ButtonModule,
3728
4444
  ModalModule,
3729
4445
  ], 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"] }]
3730
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i3.CdsThemeService }] });
4446
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: DocumentObjectenApiSyncService }, { type: i3$1.CdsThemeService }] });
3731
4447
 
3732
4448
  /*
3733
4449
  * Copyright 2015-2024 Ritense BV, the Netherlands.
@@ -3981,13 +4697,13 @@ class ZakenApiZaaktypeLinkComponent {
3981
4697
  this.toasterService.error('Failed to link zaaktype to dossier');
3982
4698
  });
3983
4699
  }
3984
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i2$1.OpenZaakService }, { token: i3.AlertService }, { token: i4$1.ToastrService }, { token: i5.TranslateService }, { token: ZakenApiZaaktypeLinkService }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
3985
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ZakenApiZaaktypeLinkComponent, isStandalone: true, selector: "valtimo-zaken-api-zaaktype-link", viewQueries: [{ propertyName: "modal", first: true, predicate: ["openZaakTypeLinkModal"], 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=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'openZaak.links' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n zaakTypeLink: zaakTypeLink$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container *ngIf=\"obs.zaakTypeLink; else addSync\">\n <div class=\"card card-border card-contrast\">\n <div class=\"card-header card-header-contrast card-header-featured\">\n <div>\n {{ this.selectedZaakType?.omschrijving || '-' }}\n </div>\n <div class=\"controls\">\n <button class=\"btn btn-danger ml-3\" (click)=\"openModal(obs.zaakTypeLink)\">\n <i class=\"icon mdi mdi-pencil\"></i>\n </button>\n <button class=\"btn btn-danger ml-3\" (click)=\"removeZaakTypeLink()\">\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>{{ 'openZaak.autoCreateForCase' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{\n obs.zaakTypeLink?.createWithDossier\n ? ('viewTypeConverter.Yes' | translate)\n : ('viewTypeConverter.No' | translate)\n }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.zakenApiPlugin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ this.selectedPluginConfiguration?.title || '-' }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.rsin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ obs.zaakTypeLink?.rsin || '-' }}\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n</ng-container>\n\n<ng-template #addSync>\n <div class=\"text-right mt-5\">\n <button class=\"btn btn-primary\" (click)=\"openModal(null)\">\n <i class=\"icon mdi mdi-plus mr-1\"></i>{{ 'openZaak.linkZaakType' | translate }}\n </button>\n </div>\n</ng-template>\n\n<valtimo-modal\n #openZaakTypeLinkModal\n elementId=\"openZaakTypeLinkModal\"\n [title]=\"'Zaak types'\"\n subtitle=\"Connect Zaak type to Dossier\"\n showFooter=\"true\"\n>\n <div body>\n <p>{{ 'openZaak.selectZaakTypeForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"this.zaakTypeLinkRequest.zaakTypeUrl\">\n <option [ngValue]=\"null\">{{ 'openZaak.selectZaakType' | translate }}</option>\n <option *ngFor=\"let zaakType of zaakTypes\" [ngValue]=\"zaakType.url\">\n {{ zaakType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.selectZakenApiPluginForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select\n class=\"form-control\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zakenApiPluginConfigurationId\"\n >\n <option [ngValue]=\"null\">{{ 'openZaak.selectZakenApiPlugin' | translate }}</option>\n <option\n *ngFor=\"let pluginConfiguration of pluginConfigurations\"\n [ngValue]=\"pluginConfiguration.id\"\n >\n {{ pluginConfiguration?.title || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.rsin' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <input\n type=\"text\"\n id=\"name\"\n class=\"form-control\"\n placeholder=\"RSIN\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.rsin\"\n />\n </div>\n\n <div class=\"setting-row\">\n <p>{{ 'openZaak.autoCreateForCase' | translate }}</p>\n <div class=\"controls\">\n <div class=\"switch-button switch-button-success\">\n <input\n type=\"checkbox\"\n [checked]=\"this.zaakTypeLinkRequest.createWithDossier\"\n name=\"createWithDossier\"\n id=\"createWithDossier\"\n (change)=\"\n this.zaakTypeLinkRequest.createWithDossier =\n !this.zaakTypeLinkRequest.createWithDossier\n \"\n />\n <span><label for=\"createWithDossier\"></label></span>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"informatieObjectTypeSelectionEnabled && selectedZaakType\"\n class=\"input-group mb-3 align-items-center\"\n >\n <select class=\"form-control\" [(ngModel)]=\"selectedInformatieObjectTypeUrl\">\n <option [ngValue]=\"null\" selected>{{ 'openZaak.selectInfoObjectType' | translate }}</option>\n <option\n *ngFor=\"let informatieObjectType of informatieObjectTypes\"\n [ngValue]=\"informatieObjectType.url\"\n >\n {{ informatieObjectType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!this.zaakTypeLinkRequest.zaakTypeUrl\"\n >\n <i class=\"icon mdi mdi-save\"></i>\n {{ 'openZaak.save' | translate }}\n </button>\n </div>\n</valtimo-modal>\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>{{ 'openZaak.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}.full-width-notification{max-inline-size:100%;min-inline-size: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: 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: "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.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { 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: ModalModule$1 }, { kind: "component", type: i3.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
4700
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, deps: [{ token: i1$2.ActivatedRoute }, { token: i2$1.OpenZaakService }, { token: i3$1.AlertService }, { token: i4$1.ToastrService }, { token: i3.TranslateService }, { token: ZakenApiZaaktypeLinkService }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
4701
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ZakenApiZaaktypeLinkComponent, isStandalone: true, selector: "valtimo-zaken-api-zaaktype-link", viewQueries: [{ propertyName: "modal", first: true, predicate: ["openZaakTypeLinkModal"], 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=\"input-group mt-4 mb-2 align-items-center\">\n <div>\n <h2>{{ 'openZaak.links' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n zaakTypeLink: zaakTypeLink$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container *ngIf=\"obs.zaakTypeLink; else addSync\">\n <div class=\"card card-border card-contrast\">\n <div class=\"card-header card-header-contrast card-header-featured\">\n <div>\n {{ this.selectedZaakType?.omschrijving || '-' }}\n </div>\n <div class=\"controls\">\n <button class=\"btn btn-danger ml-3\" (click)=\"openModal(obs.zaakTypeLink)\">\n <i class=\"icon mdi mdi-pencil\"></i>\n </button>\n <button class=\"btn btn-danger ml-3\" (click)=\"removeZaakTypeLink()\">\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>{{ 'openZaak.autoCreateForCase' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{\n obs.zaakTypeLink?.createWithDossier\n ? ('viewTypeConverter.Yes' | translate)\n : ('viewTypeConverter.No' | translate)\n }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.zakenApiPlugin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ this.selectedPluginConfiguration?.title || '-' }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.rsin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ obs.zaakTypeLink?.rsin || '-' }}\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n</ng-container>\n\n<ng-template #addSync>\n <div class=\"text-right mt-5\">\n <button class=\"btn btn-primary\" (click)=\"openModal(null)\">\n <i class=\"icon mdi mdi-plus mr-1\"></i>{{ 'openZaak.linkZaakType' | translate }}\n </button>\n </div>\n</ng-template>\n\n<valtimo-modal\n #openZaakTypeLinkModal\n elementId=\"openZaakTypeLinkModal\"\n [title]=\"'Zaak types'\"\n subtitle=\"Connect Zaak type to Dossier\"\n showFooter=\"true\"\n>\n <div body>\n <p>{{ 'openZaak.selectZaakTypeForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"this.zaakTypeLinkRequest.zaakTypeUrl\">\n <option [ngValue]=\"null\">{{ 'openZaak.selectZaakType' | translate }}</option>\n <option *ngFor=\"let zaakType of zaakTypes\" [ngValue]=\"zaakType.url\">\n {{ zaakType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.selectZakenApiPluginForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select\n class=\"form-control\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zakenApiPluginConfigurationId\"\n >\n <option [ngValue]=\"null\">{{ 'openZaak.selectZakenApiPlugin' | translate }}</option>\n <option\n *ngFor=\"let pluginConfiguration of pluginConfigurations\"\n [ngValue]=\"pluginConfiguration.id\"\n >\n {{ pluginConfiguration?.title || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.rsin' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <input\n type=\"text\"\n id=\"name\"\n class=\"form-control\"\n placeholder=\"RSIN\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.rsin\"\n />\n </div>\n\n <div class=\"setting-row\">\n <p>{{ 'openZaak.autoCreateForCase' | translate }}</p>\n <div class=\"controls\">\n <div class=\"switch-button switch-button-success\">\n <input\n type=\"checkbox\"\n [checked]=\"this.zaakTypeLinkRequest.createWithDossier\"\n name=\"createWithDossier\"\n id=\"createWithDossier\"\n (change)=\"\n this.zaakTypeLinkRequest.createWithDossier =\n !this.zaakTypeLinkRequest.createWithDossier\n \"\n />\n <span><label for=\"createWithDossier\"></label></span>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"informatieObjectTypeSelectionEnabled && selectedZaakType\"\n class=\"input-group mb-3 align-items-center\"\n >\n <select class=\"form-control\" [(ngModel)]=\"selectedInformatieObjectTypeUrl\">\n <option [ngValue]=\"null\" selected>{{ 'openZaak.selectInfoObjectType' | translate }}</option>\n <option\n *ngFor=\"let informatieObjectType of informatieObjectTypes\"\n [ngValue]=\"informatieObjectType.url\"\n >\n {{ informatieObjectType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!this.zaakTypeLinkRequest.zaakTypeUrl\"\n >\n <i class=\"icon mdi mdi-save\"></i>\n {{ 'openZaak.save' | translate }}\n </button>\n </div>\n</valtimo-modal>\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>{{ 'openZaak.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}.full-width-notification{max-inline-size:100%;min-inline-size: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: 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: "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.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { 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: ModalModule$1 }, { kind: "component", type: i3$1.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "ngmodule", type: NotificationModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
3986
4702
  }
3987
4703
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ZakenApiZaaktypeLinkComponent, decorators: [{
3988
4704
  type: Component,
3989
4705
  args: [{ selector: 'valtimo-zaken-api-zaaktype-link', standalone: true, imports: [CommonModule, FormsModule, ModalModule$1, NotificationModule, TranslateModule], 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>{{ 'openZaak.links' | translate }}</h2>\n </div>\n</div>\n\n<ng-container\n *ngIf=\"{\n loading: loading$ | async,\n zaakTypeLink: zaakTypeLink$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <ng-container *ngIf=\"obs.zaakTypeLink; else addSync\">\n <div class=\"card card-border card-contrast\">\n <div class=\"card-header card-header-contrast card-header-featured\">\n <div>\n {{ this.selectedZaakType?.omschrijving || '-' }}\n </div>\n <div class=\"controls\">\n <button class=\"btn btn-danger ml-3\" (click)=\"openModal(obs.zaakTypeLink)\">\n <i class=\"icon mdi mdi-pencil\"></i>\n </button>\n <button class=\"btn btn-danger ml-3\" (click)=\"removeZaakTypeLink()\">\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>{{ 'openZaak.autoCreateForCase' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{\n obs.zaakTypeLink?.createWithDossier\n ? ('viewTypeConverter.Yes' | translate)\n : ('viewTypeConverter.No' | translate)\n }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.zakenApiPlugin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ this.selectedPluginConfiguration?.title || '-' }}\n </div>\n </div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-3\">\n <strong>{{ 'openZaak.rsin' | translate }}</strong>\n </div>\n <div class=\"col-3\">\n {{ obs.zaakTypeLink?.rsin || '-' }}\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n</ng-container>\n\n<ng-template #addSync>\n <div class=\"text-right mt-5\">\n <button class=\"btn btn-primary\" (click)=\"openModal(null)\">\n <i class=\"icon mdi mdi-plus mr-1\"></i>{{ 'openZaak.linkZaakType' | translate }}\n </button>\n </div>\n</ng-template>\n\n<valtimo-modal\n #openZaakTypeLinkModal\n elementId=\"openZaakTypeLinkModal\"\n [title]=\"'Zaak types'\"\n subtitle=\"Connect Zaak type to Dossier\"\n showFooter=\"true\"\n>\n <div body>\n <p>{{ 'openZaak.selectZaakTypeForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"this.zaakTypeLinkRequest.zaakTypeUrl\">\n <option [ngValue]=\"null\">{{ 'openZaak.selectZaakType' | translate }}</option>\n <option *ngFor=\"let zaakType of zaakTypes\" [ngValue]=\"zaakType.url\">\n {{ zaakType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.selectZakenApiPluginForCase' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <select\n class=\"form-control\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.zakenApiPluginConfigurationId\"\n >\n <option [ngValue]=\"null\">{{ 'openZaak.selectZakenApiPlugin' | translate }}</option>\n <option\n *ngFor=\"let pluginConfiguration of pluginConfigurations\"\n [ngValue]=\"pluginConfiguration.id\"\n >\n {{ pluginConfiguration?.title || '-' }}\n </option>\n </select>\n </div>\n\n <p>{{ 'openZaak.rsin' | translate }}</p>\n <div class=\"input-group mb-3 mr-3 align-items-center\">\n <input\n type=\"text\"\n id=\"name\"\n class=\"form-control\"\n placeholder=\"RSIN\"\n [(ngModel)]=\"this.zaakTypeLinkRequest.rsin\"\n />\n </div>\n\n <div class=\"setting-row\">\n <p>{{ 'openZaak.autoCreateForCase' | translate }}</p>\n <div class=\"controls\">\n <div class=\"switch-button switch-button-success\">\n <input\n type=\"checkbox\"\n [checked]=\"this.zaakTypeLinkRequest.createWithDossier\"\n name=\"createWithDossier\"\n id=\"createWithDossier\"\n (change)=\"\n this.zaakTypeLinkRequest.createWithDossier =\n !this.zaakTypeLinkRequest.createWithDossier\n \"\n />\n <span><label for=\"createWithDossier\"></label></span>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"informatieObjectTypeSelectionEnabled && selectedZaakType\"\n class=\"input-group mb-3 align-items-center\"\n >\n <select class=\"form-control\" [(ngModel)]=\"selectedInformatieObjectTypeUrl\">\n <option [ngValue]=\"null\" selected>{{ 'openZaak.selectInfoObjectType' | translate }}</option>\n <option\n *ngFor=\"let informatieObjectType of informatieObjectTypes\"\n [ngValue]=\"informatieObjectType.url\"\n >\n {{ informatieObjectType?.omschrijving || '-' }}\n </option>\n </select>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!this.zaakTypeLinkRequest.zaakTypeUrl\"\n >\n <i class=\"icon mdi mdi-save\"></i>\n {{ 'openZaak.save' | translate }}\n </button>\n </div>\n</valtimo-modal>\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>{{ 'openZaak.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}.full-width-notification{max-inline-size:100%;min-inline-size: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"] }]
3990
- }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i2$1.OpenZaakService }, { type: i3.AlertService }, { type: i4$1.ToastrService }, { type: i5.TranslateService }, { type: ZakenApiZaaktypeLinkService }, { type: i2.ConfigService }], propDecorators: { modal: [{
4706
+ }], ctorParameters: () => [{ type: i1$2.ActivatedRoute }, { type: i2$1.OpenZaakService }, { type: i3$1.AlertService }, { type: i4$1.ToastrService }, { type: i3.TranslateService }, { type: ZakenApiZaaktypeLinkService }, { type: i2.ConfigService }], propDecorators: { modal: [{
3991
4707
  type: ViewChild,
3992
4708
  args: ['openZaakTypeLinkModal']
3993
4709
  }] } });
@@ -4145,6 +4861,12 @@ class DossierManagementZgwComponent {
4145
4861
  tab: ZgwTabEnum.DOCUMENTEN_API_COLUMNS,
4146
4862
  component: DocumentenApiColumnsComponent,
4147
4863
  },
4864
+ {
4865
+ class: 'no-padding-left-right no-padding-top-bottom',
4866
+ headingTranslationKey: 'zgw.tabs.documentUploadFields',
4867
+ tab: ZgwTabEnum.DOCUMENTEN_API_UPLOAD_FIELDS,
4868
+ component: DocumentenApiUploadFieldsComponent,
4869
+ },
4148
4870
  ...(supportedDocumentenApiFeatures.supportsTrefwoorden
4149
4871
  ? [
4150
4872
  {
@@ -4172,17 +4894,11 @@ class DossierManagementZgwComponent {
4172
4894
  this.dossierManagementZgwService.currentTab = tab;
4173
4895
  }
4174
4896
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementZgwComponent, deps: [{ token: DossierManagementZgwService }, { token: i0.ChangeDetectorRef }, { token: DocumentenApiVersionService }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
4175
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierManagementZgwComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "_zgwTabContent", first: true, predicate: ["zgwTabContent"], descendants: true, read: ViewContainerRef }], 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<cds-tabs class=\"dossier-management-tabs\">\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<div class=\"dossier-management-zgw__content\">\n <ng-template #zgwTabContent></ng-template>\n</div>\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: "ngmodule", type: CommonModule }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { 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" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4897
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierManagementZgwComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "_zgwTabContent", first: true, predicate: ["zgwTabContent"], descendants: true, read: ViewContainerRef }], 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<cds-tabs class=\"dossier-management-tabs\">\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<div class=\"dossier-management-zgw__content\">\n <ng-template #zgwTabContent></ng-template>\n</div>\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: "ngmodule", type: CommonModule }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: i6.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i6.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: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4176
4898
  }
4177
4899
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementZgwComponent, decorators: [{
4178
4900
  type: Component,
4179
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
4180
- CommonModule,
4181
- TabsModule,
4182
- TranslateModule,
4183
- DocumentenApiTagsComponent,
4184
- DocumentenApiColumnsComponent,
4185
- ], 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<cds-tabs class=\"dossier-management-tabs\">\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<div class=\"dossier-management-zgw__content\">\n <ng-template #zgwTabContent></ng-template>\n</div>\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"] }]
4901
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TabsModule, TranslateModule], 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<cds-tabs class=\"dossier-management-tabs\">\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<div class=\"dossier-management-zgw__content\">\n <ng-template #zgwTabContent></ng-template>\n</div>\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"] }]
4186
4902
  }], ctorParameters: () => [{ type: DossierManagementZgwService }, { type: i0.ChangeDetectorRef }, { type: DocumentenApiVersionService }, { type: i1$2.ActivatedRoute }], propDecorators: { _zgwTabContent: [{
4187
4903
  type: ViewChild,
4188
4904
  args: ['zgwTabContent', { read: ViewContainerRef }]
@@ -4338,5 +5054,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
4338
5054
  * Generated bundle index. Do not edit.
4339
5055
  */
4340
5056
 
4341
- export { COLUMN_VIEW_TYPES, CasesListComponent, ContactMomentService, CustomerListComponent, CustomerModule, CustomerService, DOCUMENTEN_COLUMN_KEYS, DocumentObjectenApiSyncComponent, DocumentObjectenApiSyncService, DocumentenApiColumnModalComponent, DocumentenApiColumnService, DocumentenApiColumnsComponent, DocumentenApiDocumentService, DocumentenApiFilterComponent, DocumentenApiLinkProcessService, DocumentenApiMetadataModalComponent, DocumentenApiTagModalComponent, DocumentenApiTagService, DocumentenApiTagsComponent, DocumentenApiUploaderComponent, DocumentenApiVersionComponent, DocumentenApiVersionService, DossierDetailTabContactMomentsComponent, DossierDetailTabDocumentenApiDocumentsComponent, DossierDetailTabObjectTypeComponent, DossierDetailTabZaakobjectenComponent, DossierManagementLinkProcessComponent, DossierManagementZgwComponent, DossierManagementZgwService, ZaakobjectenService, ZakenApiZaaktypeLinkComponent, ZakenApiZaaktypeLinkService, ZgwModule, ZgwTabEnum, customDocumentApiUploaderType, documentenApiUploaderEditForm, registerDocumentenApiFormioUploadComponent };
5057
+ export { COLUMN_VIEW_TYPES, CONFIDENTIALITY_LEVELS, CasesListComponent, ContactMomentService, CustomerListComponent, CustomerModule, CustomerService, DOCUMENTEN_COLUMN_KEYS, DocumentObjectenApiSyncComponent, DocumentObjectenApiSyncService, DocumentenApiColumnModalComponent, DocumentenApiColumnService, DocumentenApiColumnsComponent, DocumentenApiDocumentService, DocumentenApiFilterComponent, DocumentenApiLinkProcessService, DocumentenApiMetadataModalComponent, DocumentenApiTagModalComponent, DocumentenApiTagService, DocumentenApiTagsComponent, DocumentenApiUploadFieldModalComponent, DocumentenApiUploadFieldsComponent, DocumentenApiUploaderComponent, DocumentenApiVersionComponent, DocumentenApiVersionService, DossierDetailTabContactMomentsComponent, DossierDetailTabDocumentenApiDocumentsComponent, DossierDetailTabObjectTypeComponent, DossierDetailTabZaakobjectenComponent, DossierManagementLinkProcessComponent, DossierManagementZgwComponent, DossierManagementZgwService, LANGUAGE_ITEMS, STATUS_ITEMS, ZaakobjectenService, ZakenApiZaaktypeLinkComponent, ZakenApiZaaktypeLinkService, ZgwModule, ZgwTabEnum, customDocumentApiUploaderType, documentenApiUploaderEditForm, registerDocumentenApiFormioUploadComponent };
4342
5058
  //# sourceMappingURL=valtimo-zgw.mjs.map