@valtimo/dossier 10.3.0 → 10.5.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 (56) hide show
  1. package/esm2020/lib/components/note-modal/note-modal.component.mjs +4 -4
  2. package/esm2020/lib/dossier-assign-user/dossier-assign-user.component.mjs +4 -4
  3. package/esm2020/lib/dossier-detail/dossier-detail.component.mjs +4 -4
  4. package/esm2020/lib/dossier-detail/tab/audit/audit.component.mjs +4 -4
  5. package/esm2020/lib/dossier-detail/tab/contact-moments/contact-moments.component.mjs +4 -4
  6. package/esm2020/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.mjs +29 -48
  7. package/esm2020/lib/dossier-detail/tab/documents/documents.component.mjs +4 -4
  8. package/esm2020/lib/dossier-detail/tab/notes/notes.component.mjs +4 -4
  9. package/esm2020/lib/dossier-detail/tab/object-type/object-type.component.mjs +4 -4
  10. package/esm2020/lib/dossier-detail/tab/progress/progress.component.mjs +4 -4
  11. package/esm2020/lib/dossier-detail/tab/s3-documents/s3-documents.component.mjs +12 -10
  12. package/esm2020/lib/dossier-detail/tab/summary/summary.component.mjs +4 -4
  13. package/esm2020/lib/dossier-detail/tab/zaakobjecten/zaakobjecten.component.mjs +4 -4
  14. package/esm2020/lib/dossier-detail-tab-enum.mjs +2 -2
  15. package/esm2020/lib/dossier-list/dossier-list.component.mjs +11 -6
  16. package/esm2020/lib/dossier-process-start-modal/dossier-process-start-modal.component.mjs +4 -4
  17. package/esm2020/lib/dossier-routing.module.mjs +2 -2
  18. package/esm2020/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.mjs +4 -4
  19. package/esm2020/lib/dossier-update/dossier-update.component.mjs +4 -4
  20. package/esm2020/lib/dossier.config.mjs +2 -2
  21. package/esm2020/lib/dossier.module.mjs +9 -5
  22. package/esm2020/lib/dossier.service.mjs +2 -2
  23. package/esm2020/lib/models/dossier-parameters.model.mjs +2 -2
  24. package/esm2020/lib/models/index.mjs +2 -2
  25. package/esm2020/lib/models/notes.model.mjs +2 -2
  26. package/esm2020/lib/models/search.model.mjs +16 -1
  27. package/esm2020/lib/models/tabs.model.mjs +2 -2
  28. package/esm2020/lib/models/zaakobjecten.model.mjs +2 -2
  29. package/esm2020/lib/services/dossier-column.service.mjs +16 -1
  30. package/esm2020/lib/services/dossier-parameter.service.mjs +4 -7
  31. package/esm2020/lib/services/file-sort.service.mjs +39 -0
  32. package/esm2020/lib/services/index.mjs +17 -1
  33. package/esm2020/lib/services/notes.service.mjs +2 -2
  34. package/esm2020/lib/services/zaakobjecten.service.mjs +2 -2
  35. package/esm2020/lib/tab.service.mjs +2 -2
  36. package/esm2020/public_api.mjs +2 -2
  37. package/fesm2015/valtimo-dossier.mjs +170 -121
  38. package/fesm2015/valtimo-dossier.mjs.map +1 -1
  39. package/fesm2020/valtimo-dossier.mjs +191 -123
  40. package/fesm2020/valtimo-dossier.mjs.map +1 -1
  41. package/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts +9 -11
  42. package/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts.map +1 -1
  43. package/lib/dossier-detail/tab/s3-documents/s3-documents.component.d.ts +3 -1
  44. package/lib/dossier-detail/tab/s3-documents/s3-documents.component.d.ts.map +1 -1
  45. package/lib/dossier-list/dossier-list.component.d.ts +1 -0
  46. package/lib/dossier-list/dossier-list.component.d.ts.map +1 -1
  47. package/lib/dossier.module.d.ts +2 -1
  48. package/lib/dossier.module.d.ts.map +1 -1
  49. package/lib/models/search.model.d.ts.map +1 -1
  50. package/lib/services/dossier-column.service.d.ts.map +1 -1
  51. package/lib/services/dossier-parameter.service.d.ts.map +1 -1
  52. package/lib/services/file-sort.service.d.ts +11 -0
  53. package/lib/services/file-sort.service.d.ts.map +1 -0
  54. package/lib/services/index.d.ts +1 -0
  55. package/lib/services/index.d.ts.map +1 -1
  56. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2021 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2023 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -75,12 +75,12 @@ export class DossierDetailTabContactMomentsComponent {
75
75
  }
76
76
  }
77
77
  DossierDetailTabContactMomentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, deps: [{ token: i1.ContactMomentService }, { token: i2.AlertService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
78
- DossierDetailTabContactMomentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabContactMomentsComponent, selector: "valtimo-dossier-detail-tab-contact-moments", viewQueries: [{ propertyName: "modal", first: true, predicate: ["contactMomentsNoteModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2021 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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: ["/*!\n * Copyright 2015-2021 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"], dependencies: [{ 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: i2.TimelineComponent, selector: "valtimo-timeline", inputs: ["items"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "component", type: i2.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
78
+ DossierDetailTabContactMomentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabContactMomentsComponent, selector: "valtimo-dossier-detail-tab-contact-moments", viewQueries: [{ propertyName: "modal", first: true, predicate: ["contactMomentsNoteModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"], dependencies: [{ 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: i2.TimelineComponent, selector: "valtimo-timeline", inputs: ["items"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "component", type: i2.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
79
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabContactMomentsComponent, decorators: [{
80
80
  type: Component,
81
- args: [{ selector: 'valtimo-dossier-detail-tab-contact-moments', template: "<!--\n ~ Copyright 2015-2021 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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: ["/*!\n * Copyright 2015-2021 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"] }]
81
+ args: [{ selector: 'valtimo-dossier-detail-tab-contact-moments', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.contact-moments-container{display:flex;flex-direction:column}.button-container{display:inline;align-self:flex-end}\n"] }]
82
82
  }], ctorParameters: function () { return [{ type: i1.ContactMomentService }, { type: i2.AlertService }, { type: i3.TranslateService }]; }, propDecorators: { modal: [{
83
83
  type: ViewChild,
84
84
  args: ['contactMomentsNoteModal']
85
85
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9jb250YWN0LW1vbWVudHMvY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9jb250YWN0LW1vbWVudHMvY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFzQixNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQStCLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDbkYsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFJcEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBT3JELE1BQU0sT0FBTyx1Q0FBdUM7SUE2QmxELFlBQ21CLG9CQUEwQyxFQUMxQyxZQUEwQixFQUMxQixnQkFBa0M7UUFGbEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBN0I1QywyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMs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QUFFLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7cUlBOUVVLHVDQUF1Qzt5SEFBdkMsdUNBQXVDLG9NQ2hDcEQsaXNGQW9GQTs0RkRwRGEsdUNBQXVDO2tCQUxuRCxTQUFTOytCQUNFLDRDQUE0QztxS0FLaEIsS0FBSztzQkFBMUMsU0FBUzt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMSBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udGFjdE1vbWVudFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbnRhY3QtbW9tZW50JztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7TW9kYWxDb21wb25lbnQsIFRpbWVsaW5lSXRlbSwgVGltZWxpbmVJdGVtSW1wbH0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge21hcCwgc3dpdGNoTWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0FsZXJ0U2VydmljZX0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5tb21lbnQubG9jYWxlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nS2V5JykgfHwgJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1jb250YWN0LW1vbWVudHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvc3NpZXJEZXRhaWxUYWJDb250YWN0TW9tZW50c0NvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhY3RNb21lbnRzTm90ZU1vZGFsJykgbW9kYWw6IE1vZGFsQ29tcG9uZW50O1xuXG4gIHJlYWRvbmx5IHJlZmV0Y2hDb250YWN0TW9tZW50cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKTtcbiAgcmVhZG9ubHkgY29udGFjdE1vbWVudHMkOiBPYnNlcnZhYmxlPEFycmF5PFRpbWVsaW5lSXRlbT4+ID0gdGhpcy5yZWZldGNoQ29udGFjdE1vbWVudHMkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY29udGFjdE1vbWVudFNlcnZpY2UuZ2V0Q29udGFjdE1vbWVudHMoKSksXG4gICAgbWFwKGNvbnRhY3RNb21lbnRzID0+XG4gICAgICBjb250YWN0TW9tZW50cy5tYXAoY29udGFjdE1vbWVudCA9PiB7XG4gICAgICAgIGNvbnN0IHJlZ2lzdHJhdGllRGF0dW0gPSBtb21lbnQoY29udGFjdE1vbWVudC5yZWdpc3RyYXRpZWRhdHVtKTtcbiAgICAgICAgcmV0dXJuIG5ldyBUaW1lbGluZUl0ZW1JbXBsKFxuICAgICAgICAgIHJlZ2lzdHJhdGllRGF0dW0uZm9ybWF0KCdERCBNTU0gWVlZWScpLFxuICAgICAgICAgIHJlZ2lzdHJhdGllRGF0dW0uZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgIGNvbnRhY3RNb21lbnQubWVkZXdlcmtlcklkZW50aWZpY2F0aWUuYWNodGVybmFhbSxcbiAgICAgICAgICBjb250YWN0TW9tZW50LmthbmFhbCxcbiAgICAgICAgICBjb250YWN0TW9tZW50LnRla3N0LFxuICAgICAgICAgIG51bGxcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIHJlYWRvbmx5IHRleHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcmVhZG9ubHkgY2hhbm5lbCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ01BSUwnKTtcbiAgcmVhZG9ubHkgcmVxdWVzdERhdGEkOiBPYnNlcnZhYmxlPEFycmF5PHN0cmluZz4+ID0gY29tYmluZUxhdGVzdChbdGhpcy50ZXh0JCwgdGhpcy5jaGFubmVsJF0pO1xuICByZWFkb25seSB2YWxpZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnJlcXVlc3REYXRhJC5waXBlKFxuICAgIG1hcCgoW3RleHQsIGNoYW5uZWxdKSA9PiAhISh0ZXh0ICYmIGNoYW5uZWwpKVxuICApO1xuICByZWFkb25seSBkaXNhYmxlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhY3RNb21lbnRTZXJ2aWNlOiBDb250YWN0TW9tZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgdGV4dENoYW5nZSh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnRleHQkLm5leHQodGV4dCk7XG4gIH1cblxuICBidXR0b25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsLnNob3coKTtcbiAgfVxuXG4gIHNhdmVOb3RlKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZSgpO1xuXG4gICAgdGhpcy5yZXF1ZXN0RGF0YSQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKFt0ZXh0LCBjaGFubmVsXSkgPT4ge1xuICAgICAgdGhpcy5jb250YWN0TW9tZW50U2VydmljZS5zYXZlQ29udGFjdE1vbWVudCh7a2FuYWFsOiBjaGFubmVsLCB0ZWtzdDogdGV4dH0pLnN1YnNjcmliZShcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZG9zc2llci5jb250YWN0TW9tZW50cy5zYXZlU3VjY2VzcycpXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0aGlzLmVuYWJsZSgpO1xuICAgICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcbiAgICAgICAgICB0aGlzLnJlZmV0Y2hDb250YWN0TW9tZW50cygpO1xuICAgICAgICB9LFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5lbmFibGUoKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbmFibGUoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMudGV4dCQubmV4dCgnJyk7XG4gIH1cblxuICBwcml2YXRlIHJlZmV0Y2hDb250YWN0TW9tZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLnJlZmV0Y2hDb250YWN0TW9tZW50cyQubmV4dCgnJyk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIxIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdiBjbGFzcz1cImNvbnRhY3QtbW9tZW50cy1jb250YWluZXJcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIm1vbWVudHNcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48dmFsdGltby1tb2RhbFxuICAjY29udGFjdE1vbWVudHNOb3RlTW9kYWxcbiAgW3RpdGxlXT1cIidkb3NzaWVyLmNvbnRhY3RNb21lbnRzLnBvcHVwVGl0bGUnIHwgdHJhbnNsYXRlXCJcbiAgW3Nob3dGb290ZXJdPVwidHJ1ZVwiXG4gIFtlbGVtZW50SWRdPVwiJ2NvbnRhY3QtbW9tZW50cy1tb2RhbCdcIlxuPlxuICA8ZGl2IGNsYXNzPVwibXQtMlwiIGJvZHk+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJvZHlcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXYgZm9vdGVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L3ZhbHRpbW8tbW9kYWw+XG5cbjxuZy10ZW1wbGF0ZSAjYm9keT5cbiAgPGZvcm0+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgcm93XCI+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtMTIgY29sLXNtLTMgY29sLWZvcm0tbGFiZWwgdGV4dC1zbS1yaWdodFwiIGZvcj1cImJvZHlcIj5cbiAgICAgICAge3sgJ2Rvc3NpZXIuY29udGFjdE1vbWVudHMubm90ZVRleHQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtc20tOCBjb2wtbGctNlwiPlxuICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICBpZD1cImJvZHlcIlxuICAgICAgICAgIG5hbWU9XCJib2R5XCJcbiAgICAgICAgICBbbmdNb2RlbF09XCJ0ZXh0JCB8IGFzeW5jXCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ0ZXh0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2Zvb3Rlcj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiKGRpc2FibGVkJCB8IGFzeW5jKSA9PT0gZmFsc2U7IGVsc2UgbG9hZGluZ1wiXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgIFtkaXNhYmxlZF09XCIodmFsaWQkIHwgYXN5bmMpID09PSBmYWxzZSB8fCAoZGlzYWJsZWQkIHwgYXN5bmMpXCJcbiAgICAoY2xpY2spPVwic2F2ZU5vdGUoKVwiXG4gID5cbiAgICB7eyAnZG9zc2llci5jb250YWN0TW9tZW50cy5zYXZlQnV0dG9uVGV4dCcgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gIDx2YWx0aW1vLXNwaW5uZXIgW25vTWFyZ2luVG9wXT1cInRydWVcIj48L3ZhbHRpbW8tc3Bpbm5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPGRpdiBjbGFzcz1cImJ0bi1ncm91cCBtdC1tM3B4IG1iLTMgYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXNwYWNlXCIgKGNsaWNrKT1cImJ1dHRvbkNsaWNrKClcIj5cbiAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLW5vdGUtcGx1c1wiPjwvaT5cbiAgICAgICZuYnNwO3t7ICdkb3NzaWVyLmNvbnRhY3RNb21lbnRzLm1ha2VOb3RlQnV0dG9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9tZW50cz5cbiAgPGRpdiAqbmdJZj1cImNvbnRhY3RNb21lbnRzJCB8IGFzeW5jIGFzIGNvbnRhY3RNb21lbnRzOyBlbHNlIGxvYWRpbmdcIj5cbiAgICA8dmFsdGltby10aW1lbGluZSBbaXRlbXNdPVwiY29udGFjdE1vbWVudHNcIj48L3ZhbHRpbW8tdGltZWxpbmU+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9jb250YWN0LW1vbWVudHMvY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9jb250YWN0LW1vbWVudHMvY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFzQixNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQStCLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDbkYsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFJcEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBT3JELE1BQU0sT0FBTyx1Q0FBdUM7SUE2QmxELFlBQ21CLG9CQUEwQyxFQUMxQyxZQUEwQixFQUMxQixnQkFBa0M7UUFGbEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBN0I1QywyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMs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QUFFLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7cUlBOUVVLHVDQUF1Qzt5SEFBdkMsdUNBQXVDLG9NQ2hDcEQsaXNGQW9GQTs0RkRwRGEsdUNBQXVDO2tCQUxuRCxTQUFTOytCQUNFLDRDQUE0QztxS0FLaEIsS0FBSztzQkFBMUMsU0FBUzt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udGFjdE1vbWVudFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbnRhY3QtbW9tZW50JztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7TW9kYWxDb21wb25lbnQsIFRpbWVsaW5lSXRlbSwgVGltZWxpbmVJdGVtSW1wbH0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge21hcCwgc3dpdGNoTWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0FsZXJ0U2VydmljZX0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5tb21lbnQubG9jYWxlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nS2V5JykgfHwgJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1jb250YWN0LW1vbWVudHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGFjdC1tb21lbnRzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvc3NpZXJEZXRhaWxUYWJDb250YWN0TW9tZW50c0NvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhY3RNb21lbnRzTm90ZU1vZGFsJykgbW9kYWw6IE1vZGFsQ29tcG9uZW50O1xuXG4gIHJlYWRvbmx5IHJlZmV0Y2hDb250YWN0TW9tZW50cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKTtcbiAgcmVhZG9ubHkgY29udGFjdE1vbWVudHMkOiBPYnNlcnZhYmxlPEFycmF5PFRpbWVsaW5lSXRlbT4+ID0gdGhpcy5yZWZldGNoQ29udGFjdE1vbWVudHMkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY29udGFjdE1vbWVudFNlcnZpY2UuZ2V0Q29udGFjdE1vbWVudHMoKSksXG4gICAgbWFwKGNvbnRhY3RNb21lbnRzID0+XG4gICAgICBjb250YWN0TW9tZW50cy5tYXAoY29udGFjdE1vbWVudCA9PiB7XG4gICAgICAgIGNvbnN0IHJlZ2lzdHJhdGllRGF0dW0gPSBtb21lbnQoY29udGFjdE1vbWVudC5yZWdpc3RyYXRpZWRhdHVtKTtcbiAgICAgICAgcmV0dXJuIG5ldyBUaW1lbGluZUl0ZW1JbXBsKFxuICAgICAgICAgIHJlZ2lzdHJhdGllRGF0dW0uZm9ybWF0KCdERCBNTU0gWVlZWScpLFxuICAgICAgICAgIHJlZ2lzdHJhdGllRGF0dW0uZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgIGNvbnRhY3RNb21lbnQubWVkZXdlcmtlcklkZW50aWZpY2F0aWUuYWNodGVybmFhbSxcbiAgICAgICAgICBjb250YWN0TW9tZW50LmthbmFhbCxcbiAgICAgICAgICBjb250YWN0TW9tZW50LnRla3N0LFxuICAgICAgICAgIG51bGxcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIHJlYWRvbmx5IHRleHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcmVhZG9ubHkgY2hhbm5lbCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ01BSUwnKTtcbiAgcmVhZG9ubHkgcmVxdWVzdERhdGEkOiBPYnNlcnZhYmxlPEFycmF5PHN0cmluZz4+ID0gY29tYmluZUxhdGVzdChbdGhpcy50ZXh0JCwgdGhpcy5jaGFubmVsJF0pO1xuICByZWFkb25seSB2YWxpZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnJlcXVlc3REYXRhJC5waXBlKFxuICAgIG1hcCgoW3RleHQsIGNoYW5uZWxdKSA9PiAhISh0ZXh0ICYmIGNoYW5uZWwpKVxuICApO1xuICByZWFkb25seSBkaXNhYmxlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhY3RNb21lbnRTZXJ2aWNlOiBDb250YWN0TW9tZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgdGV4dENoYW5nZSh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnRleHQkLm5leHQodGV4dCk7XG4gIH1cblxuICBidXR0b25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsLnNob3coKTtcbiAgfVxuXG4gIHNhdmVOb3RlKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZSgpO1xuXG4gICAgdGhpcy5yZXF1ZXN0RGF0YSQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKFt0ZXh0LCBjaGFubmVsXSkgPT4ge1xuICAgICAgdGhpcy5jb250YWN0TW9tZW50U2VydmljZS5zYXZlQ29udGFjdE1vbWVudCh7a2FuYWFsOiBjaGFubmVsLCB0ZWtzdDogdGV4dH0pLnN1YnNjcmliZShcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZG9zc2llci5jb250YWN0TW9tZW50cy5zYXZlU3VjY2VzcycpXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0aGlzLmVuYWJsZSgpO1xuICAgICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcbiAgICAgICAgICB0aGlzLnJlZmV0Y2hDb250YWN0TW9tZW50cygpO1xuICAgICAgICB9LFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5lbmFibGUoKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbmFibGUoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMudGV4dCQubmV4dCgnJyk7XG4gIH1cblxuICBwcml2YXRlIHJlZmV0Y2hDb250YWN0TW9tZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLnJlZmV0Y2hDb250YWN0TW9tZW50cyQubmV4dCgnJyk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdiBjbGFzcz1cImNvbnRhY3QtbW9tZW50cy1jb250YWluZXJcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIm1vbWVudHNcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48dmFsdGltby1tb2RhbFxuICAjY29udGFjdE1vbWVudHNOb3RlTW9kYWxcbiAgW3RpdGxlXT1cIidkb3NzaWVyLmNvbnRhY3RNb21lbnRzLnBvcHVwVGl0bGUnIHwgdHJhbnNsYXRlXCJcbiAgW3Nob3dGb290ZXJdPVwidHJ1ZVwiXG4gIFtlbGVtZW50SWRdPVwiJ2NvbnRhY3QtbW9tZW50cy1tb2RhbCdcIlxuPlxuICA8ZGl2IGNsYXNzPVwibXQtMlwiIGJvZHk+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJvZHlcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXYgZm9vdGVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L3ZhbHRpbW8tbW9kYWw+XG5cbjxuZy10ZW1wbGF0ZSAjYm9keT5cbiAgPGZvcm0+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgcm93XCI+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtMTIgY29sLXNtLTMgY29sLWZvcm0tbGFiZWwgdGV4dC1zbS1yaWdodFwiIGZvcj1cImJvZHlcIj5cbiAgICAgICAge3sgJ2Rvc3NpZXIuY29udGFjdE1vbWVudHMubm90ZVRleHQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtc20tOCBjb2wtbGctNlwiPlxuICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICBpZD1cImJvZHlcIlxuICAgICAgICAgIG5hbWU9XCJib2R5XCJcbiAgICAgICAgICBbbmdNb2RlbF09XCJ0ZXh0JCB8IGFzeW5jXCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ0ZXh0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2Zvb3Rlcj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiKGRpc2FibGVkJCB8IGFzeW5jKSA9PT0gZmFsc2U7IGVsc2UgbG9hZGluZ1wiXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgIFtkaXNhYmxlZF09XCIodmFsaWQkIHwgYXN5bmMpID09PSBmYWxzZSB8fCAoZGlzYWJsZWQkIHwgYXN5bmMpXCJcbiAgICAoY2xpY2spPVwic2F2ZU5vdGUoKVwiXG4gID5cbiAgICB7eyAnZG9zc2llci5jb250YWN0TW9tZW50cy5zYXZlQnV0dG9uVGV4dCcgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gIDx2YWx0aW1vLXNwaW5uZXIgW25vTWFyZ2luVG9wXT1cInRydWVcIj48L3ZhbHRpbW8tc3Bpbm5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPGRpdiBjbGFzcz1cImJ0bi1ncm91cCBtdC1tM3B4IG1iLTMgYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXNwYWNlXCIgKGNsaWNrKT1cImJ1dHRvbkNsaWNrKClcIj5cbiAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLW5vdGUtcGx1c1wiPjwvaT5cbiAgICAgICZuYnNwO3t7ICdkb3NzaWVyLmNvbnRhY3RNb21lbnRzLm1ha2VOb3RlQnV0dG9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9tZW50cz5cbiAgPGRpdiAqbmdJZj1cImNvbnRhY3RNb21lbnRzJCB8IGFzeW5jIGFzIGNvbnRhY3RNb21lbnRzOyBlbHNlIGxvYWRpbmdcIj5cbiAgICA8dmFsdGltby10aW1lbGluZSBbaXRlbXNdPVwiY29udGFjdE1vbWVudHNcIj48L3ZhbHRpbW8tdGltZWxpbmU+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2023 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -14,8 +14,9 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { Component } from '@angular/core';
17
- import { map, switchMap, take, tap } from 'rxjs/operators';
18
- import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
17
+ import { catchError, map, switchMap, take, tap } from 'rxjs/operators';
18
+ import { BehaviorSubject, combineLatest, of, Subject } from 'rxjs';
19
+ import moment from 'moment';
19
20
  import * as i0 from "@angular/core";
20
21
  import * as i1 from "@angular/router";
21
22
  import * as i2 from "@valtimo/document";
@@ -25,10 +26,11 @@ import * as i5 from "@valtimo/user-interface";
25
26
  import * as i6 from "@ngx-translate/core";
26
27
  import * as i7 from "@valtimo/config";
27
28
  import * as i8 from "@valtimo/security";
28
- import * as i9 from "@angular/common";
29
- import * as i10 from "@valtimo/components";
29
+ import * as i9 from "../../../services";
30
+ import * as i10 from "@angular/common";
31
+ import * as i11 from "@valtimo/components";
30
32
  export class DossierDetailTabDocumentenApiDocumentsComponent {
31
- constructor(route, documentService, toastrService, uploadProviderService, downloadService, promptService, translateService, configService, userProviderService) {
33
+ constructor(route, documentService, toastrService, uploadProviderService, downloadService, promptService, translateService, configService, userProviderService, fileSortService) {
32
34
  this.route = route;
33
35
  this.documentService = documentService;
34
36
  this.toastrService = toastrService;
@@ -38,12 +40,13 @@ export class DossierDetailTabDocumentenApiDocumentsComponent {
38
40
  this.translateService = translateService;
39
41
  this.configService = configService;
40
42
  this.userProviderService = userProviderService;
43
+ this.fileSortService = fileSortService;
41
44
  this.maxFileSize = this.configService?.config?.caseFileSizeUploadLimitMB || 5;
42
45
  this.acceptedFiles = this.configService?.config?.caseFileUploadAcceptedFiles || null;
43
46
  this.fields = [
44
47
  { key: 'fileName', label: 'File name' },
45
48
  { key: 'sizeInBytes', label: 'Size in bytes' },
46
- { key: 'createdOn', label: 'Created on', viewType: 'date' },
49
+ { key: 'createdOn', label: 'Created on' },
47
50
  { key: 'createdBy', label: 'Created by' },
48
51
  ];
49
52
  this.actions = [
@@ -52,11 +55,6 @@ export class DossierDetailTabDocumentenApiDocumentsComponent {
52
55
  iconClass: 'mdi mdi-open-in-new',
53
56
  callback: this.downloadDocument.bind(this),
54
57
  },
55
- {
56
- columnName: '',
57
- iconClass: 'mdi mdi-delete',
58
- callback: this.removeRelatedFile.bind(this),
59
- },
60
58
  ];
61
59
  this.uploadProcessLinkedSet = false;
62
60
  this.uploading$ = new BehaviorSubject(false);
@@ -64,17 +62,26 @@ export class DossierDetailTabDocumentenApiDocumentsComponent {
64
62
  this.hideModal$ = new Subject();
65
63
  this.modalDisabled$ = new BehaviorSubject(false);
66
64
  this.fileToBeUploaded$ = new BehaviorSubject(null);
65
+ this.loading$ = new BehaviorSubject(true);
67
66
  this.refetch$ = new BehaviorSubject(null);
68
67
  this.relatedFiles$ = this.refetch$.pipe(switchMap(() => combineLatest([
69
- this.documentService.getDocument(this.documentId),
68
+ this.documentService.getZakenApiDocuments(this.documentId),
70
69
  this.translateService.stream('key'),
71
- ])), map(([document]) => {
72
- const relatedFiles = document?.relatedFiles || [];
73
- const translatedFiles = relatedFiles.map(file => ({
70
+ ])), map(([relatedFiles]) => {
71
+ const translatedFiles = relatedFiles?.map(file => ({
74
72
  ...file,
75
73
  createdBy: file.createdBy || this.translateService.instant('list.automaticallyGenerated'),
76
74
  }));
77
75
  return translatedFiles || [];
76
+ }), map(relatedFiles => this.fileSortService.sortRelatedFilesByDateDescending(relatedFiles)), map(relatedFiles => {
77
+ moment.locale(this.translateService.currentLang);
78
+ return relatedFiles.map(file => ({
79
+ ...file,
80
+ createdOn: moment(new Date(file.createdOn)).format('L'),
81
+ }));
82
+ }), tap(() => this.loading$.next(false)), catchError(() => {
83
+ this.showZaakLinkWarning = true;
84
+ return of([]);
78
85
  }));
79
86
  const snapshot = this.route.snapshot.paramMap;
80
87
  this.documentId = snapshot.get('documentId') || '';
@@ -90,33 +97,7 @@ export class DossierDetailTabDocumentenApiDocumentsComponent {
90
97
  this.showModal$.next(null);
91
98
  }
92
99
  downloadDocument(relatedFile) {
93
- this.uploadProviderService
94
- .getResource(relatedFile.fileId)
95
- .subscribe((resource) => {
96
- this.downloadService.downloadFile(resource.url, resource.resource.name);
97
- });
98
- }
99
- removeRelatedFile(relatedFile) {
100
- this.promptService.openPrompt({
101
- headerText: this.translateService.instant('dossier.deleteConfirmation.title'),
102
- bodyText: this.translateService.instant('dossier.deleteConfirmation.description'),
103
- cancelButtonText: this.translateService.instant('dossier.deleteConfirmation.cancel'),
104
- confirmButtonText: this.translateService.instant('dossier.deleteConfirmation.delete'),
105
- cancelMdiIcon: 'cancel',
106
- confirmMdiIcon: 'delete',
107
- cancelButtonType: 'secondary',
108
- confirmButtonType: 'primary',
109
- closeOnConfirm: true,
110
- closeOnCancel: true,
111
- confirmCallBackFunction: () => {
112
- this.documentService.removeResource(this.documentId, relatedFile.fileId).subscribe(() => {
113
- this.toastrService.success('Successfully removed document from dossier');
114
- this.refetchDocuments();
115
- }, () => {
116
- this.toastrService.error('Failed to remove document from dossier');
117
- });
118
- },
119
- });
100
+ this.downloadService.downloadFile(`/api/v1/documenten-api/${relatedFile.pluginConfigurationId}/files/${relatedFile.fileId}/download`, relatedFile.fileName);
120
101
  }
121
102
  metadataSet(metadata) {
122
103
  this.uploading$.next(true);
@@ -153,10 +134,10 @@ export class DossierDetailTabDocumentenApiDocumentsComponent {
153
134
  });
154
135
  }
155
136
  }
156
- DossierDetailTabDocumentenApiDocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.DocumentService }, { token: i3.ToastrService }, { token: i4.UploadProviderService }, { token: i4.DownloadService }, { token: i5.PromptService }, { token: i6.TranslateService }, { token: i7.ConfigService }, { token: i8.UserProviderService }], target: i0.ɵɵFactoryTarget.Component });
157
- DossierDetailTabDocumentenApiDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabDocumentenApiDocumentsComponent, selector: "valtimo-dossier-detail-tab-documenten-api-documents", ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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 *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"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=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n</div>\n\n<valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"!uploadProcessLinkedSet || !uploadProcessLinked\"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n></valtimo-dropzone>\n\n<valtimo-widget>\n <valtimo-list\n [actions]=\"actions\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n</valtimo-widget>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n", styles: [""], dependencies: [{ kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10.ListComponent, selector: "valtimo-list", inputs: ["items", "fields", "pagination", "viewMode", "isSearchable", "header", "actions", "paginationIdentifier", "initialSortState", "lastColumnTemplate"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged"] }, { kind: "component", type: i10.WidgetComponent, selector: "valtimo-widget", inputs: ["type", "name", "icon", "contrast", "divider", "title", "subtitle", "collapseAble", "collapse", "additionalClasses"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i10.DropzoneComponent, selector: "valtimo-dropzone", inputs: ["title", "hideTitle", "subtitle", "externalError$", "maxFileSize", "showMaxFileSize", "acceptedFiles", "clear$", "disabled", "hideFilePreview", "uploading", "camera", "maxFiles"], outputs: ["fileSelected"] }, { kind: "component", type: i10.DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["show$", "hide$", "disabled$", "file$", "documentTitle", "disableDocumentTitle", "filename", "disableFilename", "author", "disableAuthor", "status", "disableStatus", "language", "disableLanguage", "documentType", "disableDocumentType", "description", "disableDescription", "confidentialityLevel", "disableConfidentialityLevel"], outputs: ["metadata"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
137
+ DossierDetailTabDocumentenApiDocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.DocumentService }, { token: i3.ToastrService }, { token: i4.UploadProviderService }, { token: i4.DownloadService }, { token: i5.PromptService }, { token: i6.TranslateService }, { token: i7.ConfigService }, { token: i8.UserProviderService }, { token: i9.FileSortService }], target: i0.ɵɵFactoryTarget.Component });
138
+ DossierDetailTabDocumentenApiDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabDocumentenApiDocumentsComponent, selector: "valtimo-dossier-detail-tab-documenten-api-documents", ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"{loading: loading$ | async} as obs\">\n <div *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"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=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <div *ngIf=\"showZaakLinkWarning\">\n <div\n [translate]=\"'dossier.documenten.noZaakFound'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n\n <valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"\n !uploadProcessLinkedSet || !uploadProcessLinked || obs.loading || showZaakLinkWarning\n \"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n\n <valtimo-widget>\n <valtimo-list\n [actions]=\"actions\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n</ng-container>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF 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: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i11.ListComponent, selector: "valtimo-list", inputs: ["items", "fields", "pagination", "viewMode", "isSearchable", "header", "actions", "paginationIdentifier", "initialSortState", "lastColumnTemplate"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged"] }, { kind: "component", type: i11.WidgetComponent, selector: "valtimo-widget", inputs: ["type", "name", "icon", "contrast", "divider", "title", "subtitle", "collapseAble", "collapse", "additionalClasses"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i11.DropzoneComponent, selector: "valtimo-dropzone", inputs: ["title", "hideTitle", "subtitle", "externalError$", "maxFileSize", "showMaxFileSize", "acceptedFiles", "clear$", "disabled", "hideFilePreview", "uploading", "camera", "maxFiles"], outputs: ["fileSelected"] }, { kind: "component", type: i11.DocumentenApiMetadataModalComponent, selector: "valtimo-documenten-api-metadata-modal", inputs: ["show$", "hide$", "disabled$", "file$", "documentTitle", "disableDocumentTitle", "filename", "disableFilename", "author", "disableAuthor", "status", "disableStatus", "language", "disableLanguage", "documentType", "disableDocumentType", "description", "disableDescription", "confidentialityLevel", "disableConfidentialityLevel"], outputs: ["metadata"] }, { kind: "pipe", type: i10.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
158
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabDocumentenApiDocumentsComponent, decorators: [{
159
140
  type: Component,
160
- args: [{ selector: 'valtimo-dossier-detail-tab-documenten-api-documents', template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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 *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"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=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n</div>\n\n<valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"!uploadProcessLinkedSet || !uploadProcessLinked\"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n></valtimo-dropzone>\n\n<valtimo-widget>\n <valtimo-list\n [actions]=\"actions\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n</valtimo-widget>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n" }]
161
- }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.DocumentService }, { type: i3.ToastrService }, { type: i4.UploadProviderService }, { type: i4.DownloadService }, { type: i5.PromptService }, { type: i6.TranslateService }, { type: i7.ConfigService }, { type: i8.UserProviderService }]; } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMvZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMvZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUtoRCxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7QUFZekUsTUFBTSxPQUFPLCtDQUErQztJQW1EMUQsWUFDbUIsS0FBcUIsRUFDckIsZUFBZ0MsRUFDaEMsYUFBNEIsRUFDNUIscUJBQTRDLEVBQzVDLGVBQWdDLEVBQ2hDLGFBQTRCLEVBQzVCLGdCQUFrQyxFQUNsQyxhQUE0QixFQUM1QixtQkFBd0M7UUFSeEMsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLGtCQUFhLEdB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RUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQ2pELFlBQVksQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRCxDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsU0FBUyxDQUN0RixNQUFNLENBQUMsRUFBRTtZQUNQLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUM7WUFDbEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDLEVBQ0QsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7OzZJQTdKVSwrQ0FBK0M7aUlBQS9DLCtDQUErQywyRkNsQzVELHlvRUFrRUE7NEZEaENhLCtDQUErQztrQkFMM0QsU0FBUzsrQkFDRSxxREFBcUQiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0RvY3VtZW50U2VydmljZSwgUmVsYXRlZEZpbGV9IGZyb20gJ0B2YWx0aW1vL2RvY3VtZW50JztcbmltcG9ydCB7RG93bmxvYWRTZXJ2aWNlLCBSZXNvdXJjZUR0bywgVXBsb2FkUHJvdmlkZXJTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9yZXNvdXJjZSc7XG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtEb2N1bWVudGVuQXBpTWV0YWRhdGF9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtVc2VyUHJvdmlkZXJTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9zZWN1cml0eSc7XG5pbXBvcnQge1Byb21wdFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3VzZXItaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50ZW4tYXBpLWRvY3VtZW50cy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyRGV0YWlsVGFiRG9jdW1lbnRlbkFwaURvY3VtZW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBkb2N1bWVudElkOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBkb2N1bWVudERlZmluaXRpb25OYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtYXhGaWxlU2l6ZTogbnVtYmVyID0gdGhpcy5jb25maWdTZXJ2aWNlPy5jb25maWc/LmNhc2VGaWxlU2l6ZVVwbG9hZExpbWl0TUIgfHwgNTtcbiAgcHVibGljIHJlYWRvbmx5IGFjY2VwdGVkRmlsZXM6IHN0cmluZyA9XG4gICAgdGhpcy5jb25maWdTZXJ2aWNlPy5jb25maWc/LmNhc2VGaWxlVXBsb2FkQWNjZXB0ZWRGaWxlcyB8fCBudWxsO1xuICBwdWJsaWMgZmllbGRzID0gW1xuICAgIHtrZXk6ICdmaWxlTmFtZScsIGxhYmVsOiAnRmlsZSBuYW1lJ30sXG4gICAge2tleTogJ3NpemVJbkJ5dGVzJywgbGFiZWw6ICdTaXplIGluIGJ5dGVzJ30sXG4gICAge2tleTogJ2NyZWF0ZWRPbicsIGxhYmVsOiAnQ3JlYXRlZCBvbicsIHZpZXdUeXBlOiAnZGF0ZSd9LFxuICAgIHtrZXk6ICdjcmVhdGVkQnknLCBsYWJlbDogJ0NyZWF0ZWQgYnknfSxcbiAgXTtcbiAgcHVibGljIGFjdGlvbnMgPSBbXG4gICAge1xuICAgICAgY29sdW1uTmFtZTogJycsXG4gICAgICBpY29uQ2xhc3M6ICdtZGkgbWRpLW9wZW4taW4tbmV3JyxcbiAgICAgIGNhbGxiYWNrOiB0aGlzLmRvd25sb2FkRG9jdW1lbnQuYmluZCh0aGlzKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvbHVtbk5hbWU6ICcnLFxuICAgICAgaWNvbkNsYXNzOiAnbWRpIG1kaS1kZWxldGUnLFxuICAgICAgY2FsbGJhY2s6IHRoaXMucmVtb3ZlUmVsYXRlZEZpbGUuYmluZCh0aGlzKSxcbiAgICB9LFxuICBdO1xuICBwdWJsaWMgaXNBZG1pbjogYm9vbGVhbjtcbiAgcHVibGljIHVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgPSBmYWxzZTtcbiAgcHVibGljIHVwbG9hZFByb2Nlc3NMaW5rZWQhOiBib29sZWFuO1xuICByZWFkb25seSB1cGxvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHNob3dNb2RhbCQgPSBuZXcgU3ViamVjdDxudWxsPigpO1xuICByZWFkb25seSBoaWRlTW9kYWwkID0gbmV3IFN1YmplY3Q8bnVsbD4oKTtcbiAgcmVhZG9ubHkgbW9kYWxEaXNhYmxlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgZmlsZVRvQmVVcGxvYWRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpbGUgfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSByZWFkb25seSByZWZldGNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWxhdGVkRmlsZXMkOiBPYnNlcnZhYmxlPEFycmF5PFJlbGF0ZWRGaWxlPj4gPSB0aGlzLnJlZmV0Y2gkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0RG9jdW1lbnQodGhpcy5kb2N1bWVudElkKSxcbiAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgna2V5JyksXG4gICAgICBdKVxuICAgICksXG4gICAgbWFwKChbZG9jdW1lbnRdKSA9PiB7XG4gICAgICBjb25zdCByZWxhdGVkRmlsZXMgPSBkb2N1bWVudD8ucmVsYXRlZEZpbGVzIHx8IFtdO1xuICAgICAgY29uc3QgdHJhbnNsYXRlZEZpbGVzID0gcmVsYXRlZEZpbGVzLm1hcChmaWxlID0+ICh7XG4gICAgICAgIC4uLmZpbGUsXG4gICAgICAgIGNyZWF0ZWRCeTogZmlsZS5jcmVhdGVkQnkgfHwgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2xpc3QuYXV0b21hdGljYWxseUdlbmVyYXRlZCcpLFxuICAgICAgfSkpO1xuXG4gICAgICByZXR1cm4gdHJhbnNsYXRlZEZpbGVzIHx8IFtdO1xuICAgIH0pXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudFNlcnZpY2U6IERvY3VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0clNlcnZpY2U6IFRvYXN0clNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1cGxvYWRQcm92aWRlclNlcnZpY2U6IFVwbG9hZFByb3ZpZGVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRvd25sb2FkU2VydmljZTogRG93bmxvYWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvbXB0U2VydmljZTogUHJvbXB0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlclByb3ZpZGVyU2VydmljZTogVXNlclByb3ZpZGVyU2VydmljZVxuICApIHtcbiAgICBjb25zdCBzbmFwc2hvdCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXA7XG4gICAgdGhpcy5kb2N1bWVudElkID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudElkJykgfHwgJyc7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudERlZmluaXRpb25OYW1lJykgfHwgJyc7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlZmV0Y2hEb2N1bWVudHMoKTtcbiAgICB0aGlzLnNldFVwbG9hZFByb2Nlc3NMaW5rZWQoKTtcbiAgICB0aGlzLmlzVXNlckFkbWluKCk7XG4gIH1cblxuICBmaWxlU2VsZWN0ZWQoZmlsZTogRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZVRvQmVVcGxvYWRlZCQubmV4dChmaWxlKTtcbiAgICB0aGlzLnNob3dNb2RhbCQubmV4dChudWxsKTtcbiAgfVxuXG4gIGRvd25sb2FkRG9jdW1lbnQocmVsYXRlZEZpbGU6IFJlbGF0ZWRGaWxlKTogdm9pZCB7XG4gICAgdGhpcy51cGxvYWRQcm92aWRlclNlcnZpY2VcbiAgICAgIC5nZXRSZXNvdXJjZShyZWxhdGVkRmlsZS5maWxlSWQpXG4gICAgICAuc3Vic2NyaWJlKChyZXNvdXJjZTogUmVzb3VyY2VEdG8pID0+IHtcbiAgICAgICAgdGhpcy5kb3dubG9hZFNlcnZpY2UuZG93bmxvYWRGaWxlKHJlc291cmNlLnVybCwgcmVzb3VyY2UucmVzb3VyY2UubmFtZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHJlbW92ZVJlbGF0ZWRGaWxlKHJlbGF0ZWRGaWxlOiBSZWxhdGVkRmlsZSkge1xuICAgIHRoaXMucHJvbXB0U2VydmljZS5vcGVuUHJvbXB0KHtcbiAgICAgIGhlYWRlclRleHQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdkb3NzaWVyLmRlbGV0ZUNvbmZpcm1hdGlvbi50aXRsZScpLFxuICAgICAgYm9keVRleHQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdkb3NzaWVyLmRlbGV0ZUNvbmZpcm1hdGlvbi5kZXNjcmlwdGlvbicpLFxuICAgICAgY2FuY2VsQnV0dG9uVGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2Rvc3NpZXIuZGVsZXRlQ29uZmlybWF0aW9uLmNhbmNlbCcpLFxuICAgICAgY29uZmlybUJ1dHRvblRleHQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdkb3NzaWVyLmRlbGV0ZUNvbmZpcm1hdGlvbi5kZWxldGUnKSxcbiAgICAgIGNhbmNlbE1kaUljb246ICdjYW5jZWwnLFxuICAgICAgY29uZmlybU1kaUljb246ICdkZWxldGUnLFxuICAgICAgY2FuY2VsQnV0dG9uVHlwZTogJ3NlY29uZGFyeScsXG4gICAgICBjb25maXJtQnV0dG9uVHlwZTogJ3ByaW1hcnknLFxuICAgICAgY2xvc2VPbkNvbmZpcm06IHRydWUsXG4gICAgICBjbG9zZU9uQ2FuY2VsOiB0cnVlLFxuICAgICAgY29uZmlybUNhbGxCYWNrRnVuY3Rpb246ICgpID0+IHtcbiAgICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UucmVtb3ZlUmVzb3VyY2UodGhpcy5kb2N1bWVudElkLCByZWxhdGVkRmlsZS5maWxlSWQpLnN1YnNjcmliZShcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0clNlcnZpY2Uuc3VjY2VzcygnU3VjY2Vzc2Z1bGx5IHJlbW92ZWQgZG9jdW1lbnQgZnJvbSBkb3NzaWVyJyk7XG4gICAgICAgICAgICB0aGlzLnJlZmV0Y2hEb2N1bWVudHMoKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RyU2VydmljZS5lcnJvcignRmFpbGVkIHRvIHJlbW92ZSBkb2N1bWVudCBmcm9tIGRvc3NpZXInKTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgbWV0YWRhdGFTZXQobWV0YWRhdGE6IERvY3VtZW50ZW5BcGlNZXRhZGF0YSk6IHZvaWQge1xuICAgIHRoaXMudXBsb2FkaW5nJC5uZXh0KHRydWUpO1xuICAgIHRoaXMuaGlkZU1vZGFsJC5uZXh0KG51bGwpO1xuXG4gICAgdGhpcy5maWxlVG9CZVVwbG9hZGVkJFxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoZmlsZSA9PiB7XG4gICAgICAgICAgdGhpcy51cGxvYWRQcm92aWRlclNlcnZpY2VcbiAgICAgICAgICAgIC51cGxvYWRGaWxlV2l0aE1ldGFkYXRhKGZpbGUsIHRoaXMuZG9jdW1lbnRJZCwgbWV0YWRhdGEpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucmVmZXRjaERvY3VtZW50cygpO1xuICAgICAgICAgICAgICB0aGlzLnVwbG9hZGluZyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgIHRoaXMuZmlsZVRvQmVVcGxvYWRlZCQubmV4dChudWxsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGlzVXNlckFkbWluKCkge1xuICAgIHRoaXMudXNlclByb3ZpZGVyU2VydmljZS5nZXRVc2VyU3ViamVjdCgpLnN1YnNjcmliZShcbiAgICAgIHVzZXJJZGVudGl0eSA9PiB7XG4gICAgICAgIHRoaXMuaXNBZG1pbiA9IHVzZXJJZGVudGl0eS5yb2xlcy5pbmNsdWRlcygnUk9MRV9BRE1JTicpO1xuICAgICAgfSxcbiAgICAgIGVycm9yID0+IHtcbiAgICAgICAgdGhpcy5pc0FkbWluID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVmZXRjaERvY3VtZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLnJlZmV0Y2gkLm5leHQobnVsbCk7XG4gIH1cblxuICBwcml2YXRlIHNldFVwbG9hZFByb2Nlc3NMaW5rZWQoKTogdm9pZCB7XG4gICAgdGhpcy51cGxvYWRQcm92aWRlclNlcnZpY2UuY2hlY2tVcGxvYWRQcm9jZXNzTGluayh0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUpLnN1YnNjcmliZShcbiAgICAgIGxpbmtlZCA9PiB7XG4gICAgICAgIHRoaXMudXBsb2FkUHJvY2Vzc0xpbmtlZCA9IGxpbmtlZDtcbiAgICAgICAgdGhpcy51cGxvYWRQcm9jZXNzTGlua2VkU2V0ID0gdHJ1ZTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMudXBsb2FkUHJvY2Vzc0xpbmtlZFNldCA9IHRydWU7XG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuPGRpdiAqbmdJZj1cInVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgJiYgIXVwbG9hZFByb2Nlc3NMaW5rZWRcIj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiaXNBZG1pblwiXG4gICAgW3RyYW5zbGF0ZV09XCInZG9zc2llci5kb2N1bWVudGVuLm5vUHJvY2Vzc0xpbmtlZC5hZG1pblJvbGUnXCJcbiAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0yIHAtMyB0ZXh0LWNlbnRlclwiXG4gID48L2Rpdj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiIWlzQWRtaW5cIlxuICAgIFt0cmFuc2xhdGVdPVwiJ2Rvc3NpZXIuZG9jdW1lbnRlbi5ub1Byb2Nlc3NMaW5rZWQucmVndWxhclVzZXInXCJcbiAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0yIHAtMyB0ZXh0LWNlbnRlclwiXG4gID48L2Rpdj5cbjwvZGl2PlxuXG48dmFsdGltby1kcm9wem9uZVxuICAoZmlsZVNlbGVjdGVkKT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcbiAgW2FjY2VwdGVkRmlsZXNdPVwiYWNjZXB0ZWRGaWxlc1wiXG4gIFtjYW1lcmFdPVwiZmFsc2VcIlxuICBbZGlzYWJsZWRdPVwiIXVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgfHwgIXVwbG9hZFByb2Nlc3NMaW5rZWRcIlxuICBbaGlkZUZpbGVQcmV2aWV3XT1cInRydWVcIlxuICBbaGlkZVRpdGxlXT1cInRydWVcIlxuICBbbWF4RmlsZVNpemVdPVwibWF4RmlsZVNpemVcIlxuICBbbWF4RmlsZXNdPVwiMVwiXG4gIFtzaG93TWF4RmlsZVNpemVdPVwidHJ1ZVwiXG4gIFt1cGxvYWRpbmddPVwidXBsb2FkaW5nJCB8IGFzeW5jXCJcbj48L3ZhbHRpbW8tZHJvcHpvbmU+XG5cbjx2YWx0aW1vLXdpZGdldD5cbiAgPHZhbHRpbW8tbGlzdFxuICAgIFthY3Rpb25zXT1cImFjdGlvbnNcIlxuICAgIFtmaWVsZHNdPVwiZmllbGRzXCJcbiAgICBbaGVhZGVyXT1cInRydWVcIlxuICAgIFtpc1NlYXJjaGFibGVdPVwidHJ1ZVwiXG4gICAgW2l0ZW1zXT1cInJlbGF0ZWRGaWxlcyQgfCBhc3luY1wiXG4gICAgW3ZpZXdNb2RlXT1cInRydWVcIlxuICA+XG4gICAgPGRpdiBoZWFkZXI+XG4gICAgICA8aDMgY2xhc3M9XCJsaXN0LWhlYWRlci10aXRsZVwiPnt7ICdSZWxhdGVkIGRvY3VtZW50cycgfCB0cmFuc2xhdGUgfX08L2gzPlxuICAgICAgPGg1IGNsYXNzPVwibGlzdC1oZWFkZXItZGVzY3JpcHRpb25cIj5cbiAgICAgICAge3sgJ092ZXJ2aWV3IG9mIGFsbCBkb2N1bWVudHMgaW4gdGhpcyBkb3NzaWVyJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9oNT5cbiAgICA8L2Rpdj5cbiAgPC92YWx0aW1vLWxpc3Q+XG48L3ZhbHRpbW8td2lkZ2V0PlxuXG48dmFsdGltby1kb2N1bWVudGVuLWFwaS1tZXRhZGF0YS1tb2RhbFxuICAobWV0YWRhdGEpPVwibWV0YWRhdGFTZXQoJGV2ZW50KVwiXG4gIFtkaXNhYmxlZCRdPVwibW9kYWxEaXNhYmxlZCRcIlxuICBbZmlsZSRdPVwiZmlsZVRvQmVVcGxvYWRlZCRcIlxuICBbaGlkZSRdPVwiaGlkZU1vZGFsJFwiXG4gIFtzaG93JF09XCJzaG93TW9kYWwkXCJcbj48L3ZhbHRpbW8tZG9jdW1lbnRlbi1hcGktbWV0YWRhdGEtbW9kYWw+XG4iXX0=
141
+ args: [{ selector: 'valtimo-dossier-detail-tab-documenten-api-documents', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"{loading: loading$ | async} as obs\">\n <div *ngIf=\"uploadProcessLinkedSet && !uploadProcessLinked\">\n <div\n *ngIf=\"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=\"!isAdmin\"\n [translate]=\"'dossier.documenten.noProcessLinked.regularUser'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n <div *ngIf=\"showZaakLinkWarning\">\n <div\n [translate]=\"'dossier.documenten.noZaakFound'\"\n class=\"bg-warning text-black mb-2 p-3 text-center\"\n ></div>\n </div>\n\n <valtimo-dropzone\n (fileSelected)=\"fileSelected($event)\"\n [acceptedFiles]=\"acceptedFiles\"\n [camera]=\"false\"\n [disabled]=\"\n !uploadProcessLinkedSet || !uploadProcessLinked || obs.loading || showZaakLinkWarning\n \"\n [hideFilePreview]=\"true\"\n [hideTitle]=\"true\"\n [maxFileSize]=\"maxFileSize\"\n [maxFiles]=\"1\"\n [showMaxFileSize]=\"true\"\n [uploading]=\"uploading$ | async\"\n ></valtimo-dropzone>\n\n <valtimo-widget>\n <valtimo-list\n [actions]=\"actions\"\n [fields]=\"fields\"\n [header]=\"true\"\n [isSearchable]=\"true\"\n [items]=\"relatedFiles$ | async\"\n [viewMode]=\"true\"\n >\n <div header>\n <h3 class=\"list-header-title\">{{ 'Related documents' | translate }}</h3>\n <h5 class=\"list-header-description\">\n {{ 'Overview of all documents in this dossier' | translate }}\n </h5>\n </div>\n </valtimo-list>\n </valtimo-widget>\n</ng-container>\n\n<valtimo-documenten-api-metadata-modal\n (metadata)=\"metadataSet($event)\"\n [disabled$]=\"modalDisabled$\"\n [file$]=\"fileToBeUploaded$\"\n [hide$]=\"hideModal$\"\n [show$]=\"showModal$\"\n></valtimo-documenten-api-metadata-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
142
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.DocumentService }, { type: i3.ToastrService }, { type: i4.UploadProviderService }, { type: i4.DownloadService }, { type: i5.PromptService }, { type: i6.TranslateService }, { type: i7.ConfigService }, { type: i8.UserProviderService }, { type: i9.FileSortService }]; } });
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMvZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMvZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUtoRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFPN0UsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7Ozs7O0FBTzVCLE1BQU0sT0FBTywrQ0FBK0M7SUE4RDFELFlBQ21CLEtBQXFCLEVBQ3JCLGVBQWdDLEVBQ2hDLGFBQTRCLEVBQzVCLHFCQUE0QyxFQUM1QyxlQUFnQyxFQUNoQyxhQUE0QixFQUM1QixnQkFBa0MsRUFDbEMsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLGVBQWdDO1FBVGhDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QiwwQkFB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QixJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsU0FBUyxDQUN0RixNQUFNLENBQUMsRUFBRTtZQUNQLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUM7WUFDbEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDLEVBQ0QsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7OzZJQTlJVSwrQ0FBK0M7aUlBQS9DLCtDQUErQywyRkNwQzVELDJoRkE2RUE7NEZEekNhLCtDQUErQztrQkFMM0QsU0FBUzsrQkFDRSxxREFBcUQiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0RvY3VtZW50U2VydmljZSwgUmVsYXRlZEZpbGUsIFJlbGF0ZWRGaWxlTGlzdEl0ZW19IGZyb20gJ0B2YWx0aW1vL2RvY3VtZW50JztcbmltcG9ydCB7RG93bmxvYWRTZXJ2aWNlLCBVcGxvYWRQcm92aWRlclNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3Jlc291cmNlJztcbmltcG9ydCB7VG9hc3RyU2VydmljZX0gZnJvbSAnbmd4LXRvYXN0cic7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcCwgc3dpdGNoTWFwLCB0YWtlLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtEb2N1bWVudGVuQXBpTWV0YWRhdGF9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtVc2VyUHJvdmlkZXJTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9zZWN1cml0eSc7XG5pbXBvcnQge1Byb21wdFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3VzZXItaW50ZXJmYWNlJztcbmltcG9ydCB7RmlsZVNvcnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1kZXRhaWwtdGFiLWRvY3VtZW50ZW4tYXBpLWRvY3VtZW50cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llckRldGFpbFRhYkRvY3VtZW50ZW5BcGlEb2N1bWVudHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRJZDogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnREZWZpbml0aW9uTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgbWF4RmlsZVNpemU6IG51bWJlciA9IHRoaXMuY29uZmlnU2VydmljZT8uY29uZmlnPy5jYXNlRmlsZVNpemVVcGxvYWRMaW1pdE1CIHx8IDU7XG4gIHB1YmxpYyByZWFkb25seSBhY2NlcHRlZEZpbGVzOiBzdHJpbmcgPVxuICAgIHRoaXMuY29uZmlnU2VydmljZT8uY29uZmlnPy5jYXNlRmlsZVVwbG9hZEFjY2VwdGVkRmlsZXMgfHwgbnVsbDtcbiAgcHVibGljIGZpZWxkcyA9IFtcbiAgICB7a2V5OiAnZmlsZU5hbWUnLCBsYWJlbDogJ0ZpbGUgbmFtZSd9LFxuICAgIHtrZXk6ICdzaXplSW5CeXRlcycsIGxhYmVsOiAnU2l6ZSBpbiBieXRlcyd9LFxuICAgIHtrZXk6ICdjcmVhdGVkT24nLCBsYWJlbDogJ0NyZWF0ZWQgb24nfSxcbiAgICB7a2V5OiAnY3JlYXRlZEJ5JywgbGFiZWw6ICdDcmVhdGVkIGJ5J30sXG4gIF07XG4gIHB1YmxpYyBhY3Rpb25zID0gW1xuICAgIHtcbiAgICAgIGNvbHVtbk5hbWU6ICcnLFxuICAgICAgaWNvbkNsYXNzOiAnbWRpIG1kaS1vcGVuLWluLW5ldycsXG4gICAgICBjYWxsYmFjazogdGhpcy5kb3dubG9hZERvY3VtZW50LmJpbmQodGhpcyksXG4gICAgfSxcbiAgXTtcbiAgcHVibGljIHNob3daYWFrTGlua1dhcm5pbmc6IGJvb2xlYW47XG4gIHB1YmxpYyBpc0FkbWluOiBib29sZWFuO1xuICBwdWJsaWMgdXBsb2FkUHJvY2Vzc0xpbmtlZFNldCA9IGZhbHNlO1xuICBwdWJsaWMgdXBsb2FkUHJvY2Vzc0xpbmtlZCE6IGJvb2xlYW47XG4gIHJlYWRvbmx5IHVwbG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgc2hvd01vZGFsJCA9IG5ldyBTdWJqZWN0PG51bGw+KCk7XG4gIHJlYWRvbmx5IGhpZGVNb2RhbCQgPSBuZXcgU3ViamVjdDxudWxsPigpO1xuICByZWFkb25seSBtb2RhbERpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBmaWxlVG9CZVVwbG9hZGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmlsZSB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBsb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVmZXRjaCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bGw+KG51bGwpO1xuXG4gIHB1YmxpYyByZWxhdGVkRmlsZXMkOiBPYnNlcnZhYmxlPEFycmF5PFJlbGF0ZWRGaWxlTGlzdEl0ZW0+PiA9IHRoaXMucmVmZXRjaCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRaYWtlbkFwaURvY3VtZW50cyh0aGlzLmRvY3VtZW50SWQpLFxuICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgICAgIF0pXG4gICAgKSxcbiAgICBtYXAoKFtyZWxhdGVkRmlsZXNdKSA9PiB7XG4gICAgICBjb25zdCB0cmFuc2xhdGVkRmlsZXMgPSByZWxhdGVkRmlsZXM/Lm1hcChmaWxlID0+ICh7XG4gICAgICAgIC4uLmZpbGUsXG4gICAgICAgIGNyZWF0ZWRCeTogZmlsZS5jcmVhdGVkQnkgfHwgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2xpc3QuYXV0b21hdGljYWxseUdlbmVyYXRlZCcpLFxuICAgICAgfSkpO1xuXG4gICAgICByZXR1cm4gdHJhbnNsYXRlZEZpbGVzIHx8IFtdO1xuICAgIH0pLFxuICAgIG1hcChyZWxhdGVkRmlsZXMgPT4gdGhpcy5maWxlU29ydFNlcnZpY2Uuc29ydFJlbGF0ZWRGaWxlc0J5RGF0ZURlc2NlbmRpbmcocmVsYXRlZEZpbGVzKSksXG4gICAgbWFwKHJlbGF0ZWRGaWxlcyA9PiB7XG4gICAgICBtb21lbnQubG9jYWxlKHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyk7XG5cbiAgICAgIHJldHVybiByZWxhdGVkRmlsZXMubWFwKGZpbGUgPT4gKHtcbiAgICAgICAgLi4uZmlsZSxcbiAgICAgICAgY3JlYXRlZE9uOiBtb21lbnQobmV3IERhdGUoZmlsZS5jcmVhdGVkT24pKS5mb3JtYXQoJ0wnKSxcbiAgICAgIH0pKTtcbiAgICB9KSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nJC5uZXh0KGZhbHNlKSksXG4gICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICB0aGlzLnNob3daYWFrTGlua1dhcm5pbmcgPSB0cnVlO1xuICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdHJTZXJ2aWNlOiBUb2FzdHJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXBsb2FkUHJvdmlkZXJTZXJ2aWNlOiBVcGxvYWRQcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb3dubG9hZFNlcnZpY2U6IERvd25sb2FkU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb21wdFNlcnZpY2U6IFByb21wdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQcm92aWRlclNlcnZpY2U6IFVzZXJQcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWxlU29ydFNlcnZpY2U6IEZpbGVTb3J0U2VydmljZVxuICApIHtcbiAgICBjb25zdCBzbmFwc2hvdCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXA7XG4gICAgdGhpcy5kb2N1bWVudElkID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudElkJykgfHwgJyc7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudERlZmluaXRpb25OYW1lJykgfHwgJyc7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlZmV0Y2hEb2N1bWVudHMoKTtcbiAgICB0aGlzLnNldFVwbG9hZFByb2Nlc3NMaW5rZWQoKTtcbiAgICB0aGlzLmlzVXNlckFkbWluKCk7XG4gIH1cblxuICBmaWxlU2VsZWN0ZWQoZmlsZTogRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZVRvQmVVcGxvYWRlZCQubmV4dChmaWxlKTtcbiAgICB0aGlzLnNob3dNb2RhbCQubmV4dChudWxsKTtcbiAgfVxuXG4gIGRvd25sb2FkRG9jdW1lbnQocmVsYXRlZEZpbGU6IFJlbGF0ZWRGaWxlKTogdm9pZCB7XG4gICAgdGhpcy5kb3dubG9hZFNlcnZpY2UuZG93bmxvYWRGaWxlKFxuICAgICAgYC9hcGkvdjEvZG9jdW1lbnRlbi1hcGkvJHtyZWxhdGVkRmlsZS5wbHVnaW5Db25maWd1cmF0aW9uSWR9L2ZpbGVzLyR7cmVsYXRlZEZpbGUuZmlsZUlkfS9kb3dubG9hZGAsXG4gICAgICByZWxhdGVkRmlsZS5maWxlTmFtZVxuICAgICk7XG4gIH1cblxuICBtZXRhZGF0YVNldChtZXRhZGF0YTogRG9jdW1lbnRlbkFwaU1ldGFkYXRhKTogdm9pZCB7XG4gICAgdGhpcy51cGxvYWRpbmckLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5oaWRlTW9kYWwkLm5leHQobnVsbCk7XG5cbiAgICB0aGlzLmZpbGVUb0JlVXBsb2FkZWQkXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChmaWxlID0+IHtcbiAgICAgICAgICB0aGlzLnVwbG9hZFByb3ZpZGVyU2VydmljZVxuICAgICAgICAgICAgLnVwbG9hZEZpbGVXaXRoTWV0YWRhdGEoZmlsZSwgdGhpcy5kb2N1bWVudElkLCBtZXRhZGF0YSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5yZWZldGNoRG9jdW1lbnRzKCk7XG4gICAgICAgICAgICAgIHRoaXMudXBsb2FkaW5nJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgICAgdGhpcy5maWxlVG9CZVVwbG9hZGVkJC5uZXh0KG51bGwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgaXNVc2VyQWRtaW4oKSB7XG4gICAgdGhpcy51c2VyUHJvdmlkZXJTZXJ2aWNlLmdldFVzZXJTdWJqZWN0KCkuc3Vic2NyaWJlKFxuICAgICAgdXNlcklkZW50aXR5ID0+IHtcbiAgICAgICAgdGhpcy5pc0FkbWluID0gdXNlcklkZW50aXR5LnJvbGVzLmluY2x1ZGVzKCdST0xFX0FETUlOJyk7XG4gICAgICB9LFxuICAgICAgZXJyb3IgPT4ge1xuICAgICAgICB0aGlzLmlzQWRtaW4gPSBmYWxzZTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZWZldGNoRG9jdW1lbnRzKCk6IHZvaWQge1xuICAgIHRoaXMucmVmZXRjaCQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VXBsb2FkUHJvY2Vzc0xpbmtlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwbG9hZFByb3ZpZGVyU2VydmljZS5jaGVja1VwbG9hZFByb2Nlc3NMaW5rKHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSkuc3Vic2NyaWJlKFxuICAgICAgbGlua2VkID0+IHtcbiAgICAgICAgdGhpcy51cGxvYWRQcm9jZXNzTGlua2VkID0gbGlua2VkO1xuICAgICAgICB0aGlzLnVwbG9hZFByb2Nlc3NMaW5rZWRTZXQgPSB0cnVlO1xuICAgICAgfSxcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy51cGxvYWRQcm9jZXNzTGlua2VkU2V0ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJ7bG9hZGluZzogbG9hZGluZyQgfCBhc3luY30gYXMgb2JzXCI+XG4gIDxkaXYgKm5nSWY9XCJ1cGxvYWRQcm9jZXNzTGlua2VkU2V0ICYmICF1cGxvYWRQcm9jZXNzTGlua2VkXCI+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJpc0FkbWluXCJcbiAgICAgIFt0cmFuc2xhdGVdPVwiJ2Rvc3NpZXIuZG9jdW1lbnRlbi5ub1Byb2Nlc3NMaW5rZWQuYWRtaW5Sb2xlJ1wiXG4gICAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0yIHAtMyB0ZXh0LWNlbnRlclwiXG4gICAgPjwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiIWlzQWRtaW5cIlxuICAgICAgW3RyYW5zbGF0ZV09XCInZG9zc2llci5kb2N1bWVudGVuLm5vUHJvY2Vzc0xpbmtlZC5yZWd1bGFyVXNlcidcIlxuICAgICAgY2xhc3M9XCJiZy13YXJuaW5nIHRleHQtYmxhY2sgbWItMiBwLTMgdGV4dC1jZW50ZXJcIlxuICAgID48L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93WmFha0xpbmtXYXJuaW5nXCI+XG4gICAgPGRpdlxuICAgICAgW3RyYW5zbGF0ZV09XCInZG9zc2llci5kb2N1bWVudGVuLm5vWmFha0ZvdW5kJ1wiXG4gICAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0yIHAtMyB0ZXh0LWNlbnRlclwiXG4gICAgPjwvZGl2PlxuICA8L2Rpdj5cblxuICA8dmFsdGltby1kcm9wem9uZVxuICAgIChmaWxlU2VsZWN0ZWQpPVwiZmlsZVNlbGVjdGVkKCRldmVudClcIlxuICAgIFthY2NlcHRlZEZpbGVzXT1cImFjY2VwdGVkRmlsZXNcIlxuICAgIFtjYW1lcmFdPVwiZmFsc2VcIlxuICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICF1cGxvYWRQcm9jZXNzTGlua2VkU2V0IHx8ICF1cGxvYWRQcm9jZXNzTGlua2VkIHx8IG9icy5sb2FkaW5nIHx8IHNob3daYWFrTGlua1dhcm5pbmdcbiAgICBcIlxuICAgIFtoaWRlRmlsZVByZXZpZXddPVwidHJ1ZVwiXG4gICAgW2hpZGVUaXRsZV09XCJ0cnVlXCJcbiAgICBbbWF4RmlsZVNpemVdPVwibWF4RmlsZVNpemVcIlxuICAgIFttYXhGaWxlc109XCIxXCJcbiAgICBbc2hvd01heEZpbGVTaXplXT1cInRydWVcIlxuICAgIFt1cGxvYWRpbmddPVwidXBsb2FkaW5nJCB8IGFzeW5jXCJcbiAgPjwvdmFsdGltby1kcm9wem9uZT5cblxuICA8dmFsdGltby13aWRnZXQ+XG4gICAgPHZhbHRpbW8tbGlzdFxuICAgICAgW2FjdGlvbnNdPVwiYWN0aW9uc1wiXG4gICAgICBbZmllbGRzXT1cImZpZWxkc1wiXG4gICAgICBbaGVhZGVyXT1cInRydWVcIlxuICAgICAgW2lzU2VhcmNoYWJsZV09XCJ0cnVlXCJcbiAgICAgIFtpdGVtc109XCJyZWxhdGVkRmlsZXMkIHwgYXN5bmNcIlxuICAgICAgW3ZpZXdNb2RlXT1cInRydWVcIlxuICAgID5cbiAgICAgIDxkaXYgaGVhZGVyPlxuICAgICAgICA8aDMgY2xhc3M9XCJsaXN0LWhlYWRlci10aXRsZVwiPnt7ICdSZWxhdGVkIGRvY3VtZW50cycgfCB0cmFuc2xhdGUgfX08L2gzPlxuICAgICAgICA8aDUgY2xhc3M9XCJsaXN0LWhlYWRlci1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgIHt7ICdPdmVydmlldyBvZiBhbGwgZG9jdW1lbnRzIGluIHRoaXMgZG9zc2llcicgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9oNT5cbiAgICAgIDwvZGl2PlxuICAgIDwvdmFsdGltby1saXN0PlxuICA8L3ZhbHRpbW8td2lkZ2V0PlxuPC9uZy1jb250YWluZXI+XG5cbjx2YWx0aW1vLWRvY3VtZW50ZW4tYXBpLW1ldGFkYXRhLW1vZGFsXG4gIChtZXRhZGF0YSk9XCJtZXRhZGF0YVNldCgkZXZlbnQpXCJcbiAgW2Rpc2FibGVkJF09XCJtb2RhbERpc2FibGVkJFwiXG4gIFtmaWxlJF09XCJmaWxlVG9CZVVwbG9hZGVkJFwiXG4gIFtoaWRlJF09XCJoaWRlTW9kYWwkXCJcbiAgW3Nob3ckXT1cInNob3dNb2RhbCRcIlxuPjwvdmFsdGltby1kb2N1bWVudGVuLWFwaS1tZXRhZGF0YS1tb2RhbD5cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2023 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -33,9 +33,9 @@ export class DossierDetailTabDocumentsComponent {
33
33
  }
34
34
  }
35
35
  DossierDetailTabDocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabDocumentsComponent, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
36
- DossierDetailTabDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabDocumentsComponent, selector: "valtimo-dossier-detail-tab-documents", ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-dossier-detail-tab-s3-documents\n *ngIf=\"s3UploadProvider || openZaakUploadProvider\"\n></valtimo-dossier-detail-tab-s3-documents>\n<valtimo-dossier-detail-tab-documenten-api-documents *ngIf=\"documentenApiUploadProvider\">\n</valtimo-dossier-detail-tab-documenten-api-documents>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.DossierDetailTabDocumentenApiDocumentsComponent, selector: "valtimo-dossier-detail-tab-documenten-api-documents" }, { kind: "component", type: i4.DossierDetailTabS3DocumentsComponent, selector: "valtimo-dossier-detail-tab-s3-documents" }] });
36
+ DossierDetailTabDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabDocumentsComponent, selector: "valtimo-dossier-detail-tab-documents", ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-dossier-detail-tab-s3-documents\n *ngIf=\"s3UploadProvider || openZaakUploadProvider\"\n></valtimo-dossier-detail-tab-s3-documents>\n<valtimo-dossier-detail-tab-documenten-api-documents *ngIf=\"documentenApiUploadProvider\">\n</valtimo-dossier-detail-tab-documenten-api-documents>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.DossierDetailTabDocumentenApiDocumentsComponent, selector: "valtimo-dossier-detail-tab-documenten-api-documents" }, { kind: "component", type: i4.DossierDetailTabS3DocumentsComponent, selector: "valtimo-dossier-detail-tab-s3-documents" }] });
37
37
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabDocumentsComponent, decorators: [{
38
38
  type: Component,
39
- args: [{ selector: 'valtimo-dossier-detail-tab-documents', template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-dossier-detail-tab-s3-documents\n *ngIf=\"s3UploadProvider || openZaakUploadProvider\"\n></valtimo-dossier-detail-tab-s3-documents>\n<valtimo-dossier-detail-tab-documenten-api-documents *ngIf=\"documentenApiUploadProvider\">\n</valtimo-dossier-detail-tab-documenten-api-documents>\n" }]
39
+ args: [{ selector: 'valtimo-dossier-detail-tab-documents', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-dossier-detail-tab-s3-documents\n *ngIf=\"s3UploadProvider || openZaakUploadProvider\"\n></valtimo-dossier-detail-tab-s3-documents>\n<valtimo-dossier-detail-tab-documenten-api-documents *ngIf=\"documentenApiUploadProvider\">\n</valtimo-dossier-detail-tab-documenten-api-documents>\n" }]
40
40
  }], ctorParameters: function () { return [{ type: i1.ConfigService }]; } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudHMvZG9jdW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudHMvZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQWdCLGNBQWMsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBTzdFLE1BQU0sT0FBTyxrQ0FBa0M7SUFLN0MsWUFBNkIsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDdkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxNQUFxQjtRQUNyQyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzdDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxjQUFjLEtBQUssY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUMxRSxJQUFJLENBQUMsMkJBQTJCLEdBQUcsY0FBYyxLQUFLLGNBQWMsQ0FBQyxjQUFjLENBQUM7UUFDcEYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxjQUFjLEtBQUssY0FBYyxDQUFDLEVBQUUsQ0FBQztJQUN0RSxDQUFDOztnSUFkVSxrQ0FBa0M7b0hBQWxDLGtDQUFrQyw0RUN4Qi9DLHM3QkFxQkE7NEZER2Esa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNFLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIwIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uZmlnU2VydmljZSwgVXBsb2FkUHJvdmlkZXIsIFZhbHRpbW9Db25maWd9IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1kZXRhaWwtdGFiLWRvY3VtZW50cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2N1bWVudHMuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyRGV0YWlsVGFiRG9jdW1lbnRzQ29tcG9uZW50IHtcbiAgb3BlblphYWtVcGxvYWRQcm92aWRlciE6IGJvb2xlYW47XG4gIHMzVXBsb2FkUHJvdmlkZXIhOiBib29sZWFuO1xuICBkb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXIhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSkge1xuICAgIHRoaXMuc2V0Q29uZmlnKGNvbmZpZ1NlcnZpY2UuY29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q29uZmlnKGNvbmZpZzogVmFsdGltb0NvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IHVwbG9hZFByb3ZpZGVyID0gY29uZmlnLnVwbG9hZFByb3ZpZGVyO1xuICAgIHRoaXMub3BlblphYWtVcGxvYWRQcm92aWRlciA9IHVwbG9hZFByb3ZpZGVyID09PSBVcGxvYWRQcm92aWRlci5PUEVOX1pBQUs7XG4gICAgdGhpcy5kb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXIgPSB1cGxvYWRQcm92aWRlciA9PT0gVXBsb2FkUHJvdmlkZXIuRE9DVU1FTlRFTl9BUEk7XG4gICAgdGhpcy5zM1VwbG9hZFByb3ZpZGVyID0gY29uZmlnLnVwbG9hZFByb3ZpZGVyID09PSBVcGxvYWRQcm92aWRlci5TMztcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48dmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItczMtZG9jdW1lbnRzXG4gICpuZ0lmPVwiczNVcGxvYWRQcm92aWRlciB8fCBvcGVuWmFha1VwbG9hZFByb3ZpZGVyXCJcbj48L3ZhbHRpbW8tZG9zc2llci1kZXRhaWwtdGFiLXMzLWRvY3VtZW50cz5cbjx2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMgKm5nSWY9XCJkb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXJcIj5cbjwvdmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzPlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudHMvZG9jdW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9kb2N1bWVudHMvZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQWdCLGNBQWMsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBTzdFLE1BQU0sT0FBTyxrQ0FBa0M7SUFLN0MsWUFBNkIsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDdkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxNQUFxQjtRQUNyQyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzdDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxjQUFjLEtBQUssY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUMxRSxJQUFJLENBQUMsMkJBQTJCLEdBQUcsY0FBYyxLQUFLLGNBQWMsQ0FBQyxjQUFjLENBQUM7UUFDcEYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxjQUFjLEtBQUssY0FBYyxDQUFDLEVBQUUsQ0FBQztJQUN0RSxDQUFDOztnSUFkVSxrQ0FBa0M7b0hBQWxDLGtDQUFrQyw0RUN4Qi9DLHM3QkFxQkE7NEZER2Esa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNFLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uZmlnU2VydmljZSwgVXBsb2FkUHJvdmlkZXIsIFZhbHRpbW9Db25maWd9IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1kZXRhaWwtdGFiLWRvY3VtZW50cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2N1bWVudHMuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyRGV0YWlsVGFiRG9jdW1lbnRzQ29tcG9uZW50IHtcbiAgb3BlblphYWtVcGxvYWRQcm92aWRlciE6IGJvb2xlYW47XG4gIHMzVXBsb2FkUHJvdmlkZXIhOiBib29sZWFuO1xuICBkb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXIhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSkge1xuICAgIHRoaXMuc2V0Q29uZmlnKGNvbmZpZ1NlcnZpY2UuY29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q29uZmlnKGNvbmZpZzogVmFsdGltb0NvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IHVwbG9hZFByb3ZpZGVyID0gY29uZmlnLnVwbG9hZFByb3ZpZGVyO1xuICAgIHRoaXMub3BlblphYWtVcGxvYWRQcm92aWRlciA9IHVwbG9hZFByb3ZpZGVyID09PSBVcGxvYWRQcm92aWRlci5PUEVOX1pBQUs7XG4gICAgdGhpcy5kb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXIgPSB1cGxvYWRQcm92aWRlciA9PT0gVXBsb2FkUHJvdmlkZXIuRE9DVU1FTlRFTl9BUEk7XG4gICAgdGhpcy5zM1VwbG9hZFByb3ZpZGVyID0gY29uZmlnLnVwbG9hZFByb3ZpZGVyID09PSBVcGxvYWRQcm92aWRlci5TMztcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48dmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItczMtZG9jdW1lbnRzXG4gICpuZ0lmPVwiczNVcGxvYWRQcm92aWRlciB8fCBvcGVuWmFha1VwbG9hZFByb3ZpZGVyXCJcbj48L3ZhbHRpbW8tZG9zc2llci1kZXRhaWwtdGFiLXMzLWRvY3VtZW50cz5cbjx2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1kb2N1bWVudGVuLWFwaS1kb2N1bWVudHMgKm5nSWY9XCJkb2N1bWVudGVuQXBpVXBsb2FkUHJvdmlkZXJcIj5cbjwvdmFsdGltby1kb3NzaWVyLWRldGFpbC10YWItZG9jdW1lbnRlbi1hcGktZG9jdW1lbnRzPlxuIl19
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
2
+ * Copyright 2015-2023 Ritense BV, the Netherlands.
3
3
  *
4
4
  * Licensed under EUPL, Version 1.2 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -94,9 +94,9 @@ export class DossierDetailTabNotesComponent {
94
94
  }
95
95
  }
96
96
  DossierDetailTabNotesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabNotesComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.NotesService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
97
- DossierDetailTabNotesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabNotesComponent, selector: "valtimo-dossier-detail-tab-notes", ngImport: i0, template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"notes\"\n *ngIf=\"{\n notes: notes$ | async,\n pagination: pagination$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <button\n class=\"btn btn-space btn-primary mr-1 add-note\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"showAddModal()\"\n [disabled]=\"obs.loading\"\n >\n <span>{{ 'dossier.notes.addNote' | translate }}</span>\n <i class=\"ml-1 icon mdi mdi-plus\"></i>\n </button>\n\n <div *ngIf=\"timelineItems\">\n <valtimo-timeline [items]=\"timelineItems\"></valtimo-timeline>\n </div>\n\n <valtimo-spinner\n [useBootstrapSpinner]=\"false\"\n name=\"auditSpinner\"\n bdColor=\"rgba(125, 125, 125, 0.35)\"\n color=\"#264251\"\n type=\"square-jelly-box\"\n >\n </valtimo-spinner>\n\n <div class=\"d-flex justify-content-end row mr-0 ml-0\" *ngIf=\"obs.pagination\">\n <ngb-pagination\n *ngIf=\"obs.pagination.collectionSize > obs.pagination.size\"\n [collectionSize]=\"obs.pagination.collectionSize\"\n [(page)]=\"obs.pagination.page\"\n [pageSize]=\"obs.pagination.size\"\n [maxSize]=\"obs.pagination.size\"\n [rotate]=\"true\"\n (pageChange)=\"paginationClicked($event)\"\n ></ngb-pagination>\n </div>\n</div>\n\n<valtimo-note-modal (createNoteEvent)=\"createNewNote($event)\"></valtimo-note-modal>\n", styles: ["/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.notes{position:relative}.add-note{position:absolute;right:0}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.TimelineComponent, selector: "valtimo-timeline", inputs: ["items"] }, { kind: "component", type: i5.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "component", type: i6.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "component", type: i7.NoteModalComponent, selector: "valtimo-note-modal", outputs: ["createNoteEvent"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
97
+ DossierDetailTabNotesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierDetailTabNotesComponent, selector: "valtimo-dossier-detail-tab-notes", ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"notes\"\n *ngIf=\"{\n notes: notes$ | async,\n pagination: pagination$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <button\n class=\"btn btn-space btn-primary mr-1 add-note\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"showAddModal()\"\n [disabled]=\"obs.loading\"\n >\n <span>{{ 'dossier.notes.addNote' | translate }}</span>\n <i class=\"ml-1 icon mdi mdi-plus\"></i>\n </button>\n\n <div *ngIf=\"timelineItems\">\n <valtimo-timeline [items]=\"timelineItems\"></valtimo-timeline>\n </div>\n\n <valtimo-spinner\n [useBootstrapSpinner]=\"false\"\n name=\"auditSpinner\"\n bdColor=\"rgba(125, 125, 125, 0.35)\"\n color=\"#264251\"\n type=\"square-jelly-box\"\n >\n </valtimo-spinner>\n\n <div class=\"d-flex justify-content-end row mr-0 ml-0\" *ngIf=\"obs.pagination\">\n <ngb-pagination\n *ngIf=\"obs.pagination.collectionSize > obs.pagination.size\"\n [collectionSize]=\"obs.pagination.collectionSize\"\n [(page)]=\"obs.pagination.page\"\n [pageSize]=\"obs.pagination.size\"\n [maxSize]=\"obs.pagination.size\"\n [rotate]=\"true\"\n (pageChange)=\"paginationClicked($event)\"\n ></ngb-pagination>\n </div>\n</div>\n\n<valtimo-note-modal (createNoteEvent)=\"createNewNote($event)\"></valtimo-note-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.notes{position:relative}.add-note{position:absolute;right:0}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.TimelineComponent, selector: "valtimo-timeline", inputs: ["items"] }, { kind: "component", type: i5.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "component", type: i6.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { kind: "component", type: i7.NoteModalComponent, selector: "valtimo-note-modal", outputs: ["createNoteEvent"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
98
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierDetailTabNotesComponent, decorators: [{
99
99
  type: Component,
100
- args: [{ selector: 'valtimo-dossier-detail-tab-notes', template: "<!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"notes\"\n *ngIf=\"{\n notes: notes$ | async,\n pagination: pagination$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <button\n class=\"btn btn-space btn-primary mr-1 add-note\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"showAddModal()\"\n [disabled]=\"obs.loading\"\n >\n <span>{{ 'dossier.notes.addNote' | translate }}</span>\n <i class=\"ml-1 icon mdi mdi-plus\"></i>\n </button>\n\n <div *ngIf=\"timelineItems\">\n <valtimo-timeline [items]=\"timelineItems\"></valtimo-timeline>\n </div>\n\n <valtimo-spinner\n [useBootstrapSpinner]=\"false\"\n name=\"auditSpinner\"\n bdColor=\"rgba(125, 125, 125, 0.35)\"\n color=\"#264251\"\n type=\"square-jelly-box\"\n >\n </valtimo-spinner>\n\n <div class=\"d-flex justify-content-end row mr-0 ml-0\" *ngIf=\"obs.pagination\">\n <ngb-pagination\n *ngIf=\"obs.pagination.collectionSize > obs.pagination.size\"\n [collectionSize]=\"obs.pagination.collectionSize\"\n [(page)]=\"obs.pagination.page\"\n [pageSize]=\"obs.pagination.size\"\n [maxSize]=\"obs.pagination.size\"\n [rotate]=\"true\"\n (pageChange)=\"paginationClicked($event)\"\n ></ngb-pagination>\n </div>\n</div>\n\n<valtimo-note-modal (createNoteEvent)=\"createNewNote($event)\"></valtimo-note-modal>\n", styles: ["/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.notes{position:relative}.add-note{position:absolute;right:0}\n"] }]
100
+ args: [{ selector: 'valtimo-dossier-detail-tab-notes', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF 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=\"notes\"\n *ngIf=\"{\n notes: notes$ | async,\n pagination: pagination$ | async,\n loading: loading$ | async\n } as obs\"\n>\n <button\n class=\"btn btn-space btn-primary mr-1 add-note\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"showAddModal()\"\n [disabled]=\"obs.loading\"\n >\n <span>{{ 'dossier.notes.addNote' | translate }}</span>\n <i class=\"ml-1 icon mdi mdi-plus\"></i>\n </button>\n\n <div *ngIf=\"timelineItems\">\n <valtimo-timeline [items]=\"timelineItems\"></valtimo-timeline>\n </div>\n\n <valtimo-spinner\n [useBootstrapSpinner]=\"false\"\n name=\"auditSpinner\"\n bdColor=\"rgba(125, 125, 125, 0.35)\"\n color=\"#264251\"\n type=\"square-jelly-box\"\n >\n </valtimo-spinner>\n\n <div class=\"d-flex justify-content-end row mr-0 ml-0\" *ngIf=\"obs.pagination\">\n <ngb-pagination\n *ngIf=\"obs.pagination.collectionSize > obs.pagination.size\"\n [collectionSize]=\"obs.pagination.collectionSize\"\n [(page)]=\"obs.pagination.page\"\n [pageSize]=\"obs.pagination.size\"\n [maxSize]=\"obs.pagination.size\"\n [rotate]=\"true\"\n (pageChange)=\"paginationClicked($event)\"\n ></ngb-pagination>\n </div>\n</div>\n\n<valtimo-note-modal (createNoteEvent)=\"createNewNote($event)\"></valtimo-note-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.notes{position:relative}.add-note{position:absolute;right:0}\n"] }]
101
101
  }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.NotesService }, { type: i3.TranslateService }]; } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1kZXRhaWwvdGFiL25vdGVzL25vdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9ub3Rlcy9ub3Rlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFFaEQsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRXJFLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXBELE9BQU8sRUFBMkIsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7OztBQVE1QixNQUFNLE9BQU8sOEJBQThCO0lBaUV6QyxZQUNtQixLQUFxQixFQUM5QixZQUEwQixFQUMxQixnQkFBa0M7UUFGekIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5FckMsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQXNDLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELGdCQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxD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MjAxNS0yMDIwIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOb3Rlc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25vdGVzLnNlcnZpY2UnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge05vdGV9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ub3Rlcy5tb2RlbCc7XG5pbXBvcnQge3N3aXRjaE1hcCwgdGFrZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQYWdpbmF0aW9uLCBUaW1lbGluZUl0ZW0sIFRpbWVsaW5lSXRlbUltcGx9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtQYWdlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtMYW5nQ2hhbmdlRXZlbnQsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1ub3RlcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3Rlcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGVzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvc3NpZXJEZXRhaWxUYWJOb3Rlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyB0aW1lbGluZUl0ZW1zOiBUaW1lbGluZUl0ZW1bXSA9IFtdO1xuICByZWFkb25seSBsb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHJlYWRvbmx5IGZpZWxkcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PHtrZXk6IHN0cmluZzsgbGFiZWw6IHN0cmluZ30+PihbXSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRJZCQgPSB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKG1hcChwYXJhbXMgPT4gcGFyYW1zLmRvY3VtZW50SWQpKTtcblxuICByZWFkb25seSBjdXJyZW50UGFnZUFuZFNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQYXJ0aWFsPFBhZ2luYXRpb24+Pih7XG4gICAgcGFnZTogMCxcbiAgICBzaXplOiAxMCxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcGFnZVNpemVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UGFydGlhbDxQYWdpbmF0aW9uPj4oe1xuICAgIGNvbGxlY3Rpb25TaXplOiAwLFxuICAgIG1heFBhZ2luYXRpb25JdGVtU2l6ZTogNSxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcGFnaW5hdGlvbiQ6IE9ic2VydmFibGU8UGFnaW5hdGlvbj4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQsXG4gICAgdGhpcy5wYWdlU2l6ZXMkLFxuICBdKS5waXBlKFxuICAgIG1hcChcbiAgICAgIChbY3VycmVudFBhZ2UsIHNpemVzXSkgPT5cbiAgICAgICAgKHsuLi5jdXJyZW50UGFnZSwgLi4uc2l6ZXMsIHBhZ2U6IGN1cnJlbnRQYWdlLnBhZ2UgKyAxfSBhcyBQYWdpbmF0aW9uKVxuICAgIClcbiAgKTtcblxuICByZWFkb25seSBub3RlcyQ6IE9ic2VydmFibGU8QXJyYXk8Tm90ZT4+ID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5kb2N1bWVudElkJCxcbiAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQsXG4gICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCQsXG4gIF0pLnBpcGUoXG4gICAgdGFwKCgpID0+ICh0aGlzLnRpbWVsaW5lSXRlbXMgPSBbXSkpLFxuICAgIHN3aXRjaE1hcCgoW2RvY3VtZW50SWQsIGN1cnJlbnRQYWdlXSkgPT5cbiAgICAgIHRoaXMubm90ZXNTZXJ2aWNlLmdldERvY3VtZW50Tm90ZXMoZG9jdW1lbnRJZCwge1xuICAgICAgICBwYWdlOiBjdXJyZW50UGFnZS5wYWdlLFxuICAgICAgICBzaXplOiBjdXJyZW50UGFnZS5zaXplLFxuICAgICAgfSlcbiAgICApLFxuICAgIHRhcCgocmVzOiBQYWdlPE5vdGU+KSA9PiB7XG4gICAgICB0aGlzLnRpbWVsaW5lSXRlbXMgPSBbXTtcbiAgICAgIHRoaXMucGFnZVNpemVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzaXplcyA9PiB7XG4gICAgICAgIHRoaXMucGFnZVNpemVzJC5uZXh0KHsuLi5zaXplcywgY29sbGVjdGlvblNpemU6IHJlcy50b3RhbEVsZW1lbnRzfSk7XG4gICAgICB9KTtcbiAgICB9KSxcbiAgICBtYXAocmVzID0+XG4gICAgICByZXMuY29udGVudC5tYXAoKG5vdGU6IE5vdGUpID0+IHtcbiAgICAgICAgY29uc3Qgbm90ZUNyZWF0ZWREYXRlID0gbW9tZW50KG5vdGUuY3JlYXRlZERhdGUpLmxvY2FsZSh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcpO1xuICAgICAgICB0aGlzLnRpbWVsaW5lSXRlbXMucHVzaChcbiAgICAgICAgICBuZXcgVGltZWxpbmVJdGVtSW1wbChcbiAgICAgICAgICAgIG5vdGVDcmVhdGVkRGF0ZS5mb3JtYXQoJ0REIE1NTSBZWVlZJyksXG4gICAgICAgICAgICBub3RlQ3JlYXRlZERhdGUuZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgICAgbm90ZS5jcmVhdGVkQnlVc2VyRnVsbE5hbWUsXG4gICAgICAgICAgICBub3RlQ3JlYXRlZERhdGUuZnJvbU5vdygpLFxuICAgICAgICAgICAgbm90ZS5jb250ZW50LFxuICAgICAgICAgICAge31cbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ubm90ZSxcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nJC5uZXh0KGZhbHNlKSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIG5vdGVzU2VydmljZTogTm90ZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcGFnaW5hdGlvbkNsaWNrZWQobmV3UGFnZU51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFBhZ2VBbmRTaXplJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShjdXJyZW50UGFnZSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQubmV4dCh7Li4uY3VycmVudFBhZ2UsIHBhZ2U6IG5ld1BhZ2VOdW1iZXIgLSAxfSk7XG4gICAgfSk7XG4gIH1cblxuICBzaG93QWRkTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy5ub3Rlc1NlcnZpY2Uuc2V0TW9kYWxUeXBlKCdhZGQnKTtcbiAgICB0aGlzLm5vdGVzU2VydmljZS5zaG93TW9kYWwoKTtcbiAgfVxuXG4gIGNyZWF0ZU5ld05vdGUoY29udGVudCkge1xuICAgIHRoaXMuZG9jdW1lbnRJZCRcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKGRvY3VtZW50SWQgPT4ge1xuICAgICAgICAgIHRoaXMubm90ZXNTZXJ2aWNlLmNyZWF0ZURvY3VtZW50Tm90ZShkb2N1bWVudElkLCBjb250ZW50KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCgpO1xuICAgICAgICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UuaGlkZU1vZGFsKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIwIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cbjxkaXZcbiAgY2xhc3M9XCJub3Rlc1wiXG4gICpuZ0lmPVwie1xuICAgIG5vdGVzOiBub3RlcyQgfCBhc3luYyxcbiAgICBwYWdpbmF0aW9uOiBwYWdpbmF0aW9uJCB8IGFzeW5jLFxuICAgIGxvYWRpbmc6IGxvYWRpbmckIHwgYXN5bmNcbiAgfSBhcyBvYnNcIlxuPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLXNwYWNlIGJ0bi1wcmltYXJ5IG1yLTEgYWRkLW5vdGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcbiAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxuICAgIChjbGljayk9XCJzaG93QWRkTW9kYWwoKVwiXG4gICAgW2Rpc2FibGVkXT1cIm9icy5sb2FkaW5nXCJcbiAgPlxuICAgIDxzcGFuPnt7ICdkb3NzaWVyLm5vdGVzLmFkZE5vdGUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIDxpIGNsYXNzPVwibWwtMSBpY29uIG1kaSBtZGktcGx1c1wiPjwvaT5cbiAgPC9idXR0b24+XG5cbiAgPGRpdiAqbmdJZj1cInRpbWVsaW5lSXRlbXNcIj5cbiAgICA8dmFsdGltby10aW1lbGluZSBbaXRlbXNdPVwidGltZWxpbmVJdGVtc1wiPjwvdmFsdGltby10aW1lbGluZT5cbiAgPC9kaXY+XG5cbiAgPHZhbHRpbW8tc3Bpbm5lclxuICAgIFt1c2VCb290c3RyYXBTcGlubmVyXT1cImZhbHNlXCJcbiAgICBuYW1lPVwiYXVkaXRTcGlubmVyXCJcbiAgICBiZENvbG9yPVwicmdiYSgxMjUsIDEyNSwgMTI1LCAwLjM1KVwiXG4gICAgY29sb3I9XCIjMjY0MjUxXCJcbiAgICB0eXBlPVwic3F1YXJlLWplbGx5LWJveFwiXG4gID5cbiAgPC92YWx0aW1vLXNwaW5uZXI+XG5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIHJvdyBtci0wIG1sLTBcIiAqbmdJZj1cIm9icy5wYWdpbmF0aW9uXCI+XG4gICAgPG5nYi1wYWdpbmF0aW9uXG4gICAgICAqbmdJZj1cIm9icy5wYWdpbmF0aW9uLmNvbGxlY3Rpb25TaXplID4gb2JzLnBhZ2luYXRpb24uc2l6ZVwiXG4gICAgICBbY29sbGVjdGlvblNpemVdPVwib2JzLnBhZ2luYXRpb24uY29sbGVjdGlvblNpemVcIlxuICAgICAgWyhwYWdlKV09XCJvYnMucGFnaW5hdGlvbi5wYWdlXCJcbiAgICAgIFtwYWdlU2l6ZV09XCJvYnMucGFnaW5hdGlvbi5zaXplXCJcbiAgICAgIFttYXhTaXplXT1cIm9icy5wYWdpbmF0aW9uLnNpemVcIlxuICAgICAgW3JvdGF0ZV09XCJ0cnVlXCJcbiAgICAgIChwYWdlQ2hhbmdlKT1cInBhZ2luYXRpb25DbGlja2VkKCRldmVudClcIlxuICAgID48L25nYi1wYWdpbmF0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48dmFsdGltby1ub3RlLW1vZGFsIChjcmVhdGVOb3RlRXZlbnQpPVwiY3JlYXRlTmV3Tm90ZSgkZXZlbnQpXCI+PC92YWx0aW1vLW5vdGUtbW9kYWw+XG4iXX0=
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1kZXRhaWwvdGFiL25vdGVzL25vdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItZGV0YWlsL3RhYi9ub3Rlcy9ub3Rlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFFaEQsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRXJFLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXBELE9BQU8sRUFBMkIsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7OztBQVE1QixNQUFNLE9BQU8sOEJBQThCO0lBaUV6QyxZQUNtQixLQUFxQixFQUM5QixZQUEwQixFQUMxQixnQkFBa0M7UUFGekIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5FckMsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQXNDLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELGdCQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxD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MjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOb3Rlc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25vdGVzLnNlcnZpY2UnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge05vdGV9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ub3Rlcy5tb2RlbCc7XG5pbXBvcnQge3N3aXRjaE1hcCwgdGFrZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQYWdpbmF0aW9uLCBUaW1lbGluZUl0ZW0sIFRpbWVsaW5lSXRlbUltcGx9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtQYWdlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtMYW5nQ2hhbmdlRXZlbnQsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRvc3NpZXItZGV0YWlsLXRhYi1ub3RlcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3Rlcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGVzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvc3NpZXJEZXRhaWxUYWJOb3Rlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyB0aW1lbGluZUl0ZW1zOiBUaW1lbGluZUl0ZW1bXSA9IFtdO1xuICByZWFkb25seSBsb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHJlYWRvbmx5IGZpZWxkcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PHtrZXk6IHN0cmluZzsgbGFiZWw6IHN0cmluZ30+PihbXSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRJZCQgPSB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKG1hcChwYXJhbXMgPT4gcGFyYW1zLmRvY3VtZW50SWQpKTtcblxuICByZWFkb25seSBjdXJyZW50UGFnZUFuZFNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQYXJ0aWFsPFBhZ2luYXRpb24+Pih7XG4gICAgcGFnZTogMCxcbiAgICBzaXplOiAxMCxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcGFnZVNpemVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UGFydGlhbDxQYWdpbmF0aW9uPj4oe1xuICAgIGNvbGxlY3Rpb25TaXplOiAwLFxuICAgIG1heFBhZ2luYXRpb25JdGVtU2l6ZTogNSxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcGFnaW5hdGlvbiQ6IE9ic2VydmFibGU8UGFnaW5hdGlvbj4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQsXG4gICAgdGhpcy5wYWdlU2l6ZXMkLFxuICBdKS5waXBlKFxuICAgIG1hcChcbiAgICAgIChbY3VycmVudFBhZ2UsIHNpemVzXSkgPT5cbiAgICAgICAgKHsuLi5jdXJyZW50UGFnZSwgLi4uc2l6ZXMsIHBhZ2U6IGN1cnJlbnRQYWdlLnBhZ2UgKyAxfSBhcyBQYWdpbmF0aW9uKVxuICAgIClcbiAgKTtcblxuICByZWFkb25seSBub3RlcyQ6IE9ic2VydmFibGU8QXJyYXk8Tm90ZT4+ID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5kb2N1bWVudElkJCxcbiAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQsXG4gICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCQsXG4gIF0pLnBpcGUoXG4gICAgdGFwKCgpID0+ICh0aGlzLnRpbWVsaW5lSXRlbXMgPSBbXSkpLFxuICAgIHN3aXRjaE1hcCgoW2RvY3VtZW50SWQsIGN1cnJlbnRQYWdlXSkgPT5cbiAgICAgIHRoaXMubm90ZXNTZXJ2aWNlLmdldERvY3VtZW50Tm90ZXMoZG9jdW1lbnRJZCwge1xuICAgICAgICBwYWdlOiBjdXJyZW50UGFnZS5wYWdlLFxuICAgICAgICBzaXplOiBjdXJyZW50UGFnZS5zaXplLFxuICAgICAgfSlcbiAgICApLFxuICAgIHRhcCgocmVzOiBQYWdlPE5vdGU+KSA9PiB7XG4gICAgICB0aGlzLnRpbWVsaW5lSXRlbXMgPSBbXTtcbiAgICAgIHRoaXMucGFnZVNpemVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzaXplcyA9PiB7XG4gICAgICAgIHRoaXMucGFnZVNpemVzJC5uZXh0KHsuLi5zaXplcywgY29sbGVjdGlvblNpemU6IHJlcy50b3RhbEVsZW1lbnRzfSk7XG4gICAgICB9KTtcbiAgICB9KSxcbiAgICBtYXAocmVzID0+XG4gICAgICByZXMuY29udGVudC5tYXAoKG5vdGU6IE5vdGUpID0+IHtcbiAgICAgICAgY29uc3Qgbm90ZUNyZWF0ZWREYXRlID0gbW9tZW50KG5vdGUuY3JlYXRlZERhdGUpLmxvY2FsZSh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcpO1xuICAgICAgICB0aGlzLnRpbWVsaW5lSXRlbXMucHVzaChcbiAgICAgICAgICBuZXcgVGltZWxpbmVJdGVtSW1wbChcbiAgICAgICAgICAgIG5vdGVDcmVhdGVkRGF0ZS5mb3JtYXQoJ0REIE1NTSBZWVlZJyksXG4gICAgICAgICAgICBub3RlQ3JlYXRlZERhdGUuZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgICAgbm90ZS5jcmVhdGVkQnlVc2VyRnVsbE5hbWUsXG4gICAgICAgICAgICBub3RlQ3JlYXRlZERhdGUuZnJvbU5vdygpLFxuICAgICAgICAgICAgbm90ZS5jb250ZW50LFxuICAgICAgICAgICAge31cbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ubm90ZSxcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nJC5uZXh0KGZhbHNlKSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIG5vdGVzU2VydmljZTogTm90ZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcGFnaW5hdGlvbkNsaWNrZWQobmV3UGFnZU51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFBhZ2VBbmRTaXplJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShjdXJyZW50UGFnZSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlQW5kU2l6ZSQubmV4dCh7Li4uY3VycmVudFBhZ2UsIHBhZ2U6IG5ld1BhZ2VOdW1iZXIgLSAxfSk7XG4gICAgfSk7XG4gIH1cblxuICBzaG93QWRkTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy5ub3Rlc1NlcnZpY2Uuc2V0TW9kYWxUeXBlKCdhZGQnKTtcbiAgICB0aGlzLm5vdGVzU2VydmljZS5zaG93TW9kYWwoKTtcbiAgfVxuXG4gIGNyZWF0ZU5ld05vdGUoY29udGVudCkge1xuICAgIHRoaXMuZG9jdW1lbnRJZCRcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKGRvY3VtZW50SWQgPT4ge1xuICAgICAgICAgIHRoaXMubm90ZXNTZXJ2aWNlLmNyZWF0ZURvY3VtZW50Tm90ZShkb2N1bWVudElkLCBjb250ZW50KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UucmVmcmVzaCgpO1xuICAgICAgICAgICAgdGhpcy5ub3Rlc1NlcnZpY2UuaGlkZU1vZGFsKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cbjxkaXZcbiAgY2xhc3M9XCJub3Rlc1wiXG4gICpuZ0lmPVwie1xuICAgIG5vdGVzOiBub3RlcyQgfCBhc3luYyxcbiAgICBwYWdpbmF0aW9uOiBwYWdpbmF0aW9uJCB8IGFzeW5jLFxuICAgIGxvYWRpbmc6IGxvYWRpbmckIHwgYXN5bmNcbiAgfSBhcyBvYnNcIlxuPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLXNwYWNlIGJ0bi1wcmltYXJ5IG1yLTEgYWRkLW5vdGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcbiAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxuICAgIChjbGljayk9XCJzaG93QWRkTW9kYWwoKVwiXG4gICAgW2Rpc2FibGVkXT1cIm9icy5sb2FkaW5nXCJcbiAgPlxuICAgIDxzcGFuPnt7ICdkb3NzaWVyLm5vdGVzLmFkZE5vdGUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIDxpIGNsYXNzPVwibWwtMSBpY29uIG1kaSBtZGktcGx1c1wiPjwvaT5cbiAgPC9idXR0b24+XG5cbiAgPGRpdiAqbmdJZj1cInRpbWVsaW5lSXRlbXNcIj5cbiAgICA8dmFsdGltby10aW1lbGluZSBbaXRlbXNdPVwidGltZWxpbmVJdGVtc1wiPjwvdmFsdGltby10aW1lbGluZT5cbiAgPC9kaXY+XG5cbiAgPHZhbHRpbW8tc3Bpbm5lclxuICAgIFt1c2VCb290c3RyYXBTcGlubmVyXT1cImZhbHNlXCJcbiAgICBuYW1lPVwiYXVkaXRTcGlubmVyXCJcbiAgICBiZENvbG9yPVwicmdiYSgxMjUsIDEyNSwgMTI1LCAwLjM1KVwiXG4gICAgY29sb3I9XCIjMjY0MjUxXCJcbiAgICB0eXBlPVwic3F1YXJlLWplbGx5LWJveFwiXG4gID5cbiAgPC92YWx0aW1vLXNwaW5uZXI+XG5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIHJvdyBtci0wIG1sLTBcIiAqbmdJZj1cIm9icy5wYWdpbmF0aW9uXCI+XG4gICAgPG5nYi1wYWdpbmF0aW9uXG4gICAgICAqbmdJZj1cIm9icy5wYWdpbmF0aW9uLmNvbGxlY3Rpb25TaXplID4gb2JzLnBhZ2luYXRpb24uc2l6ZVwiXG4gICAgICBbY29sbGVjdGlvblNpemVdPVwib2JzLnBhZ2luYXRpb24uY29sbGVjdGlvblNpemVcIlxuICAgICAgWyhwYWdlKV09XCJvYnMucGFnaW5hdGlvbi5wYWdlXCJcbiAgICAgIFtwYWdlU2l6ZV09XCJvYnMucGFnaW5hdGlvbi5zaXplXCJcbiAgICAgIFttYXhTaXplXT1cIm9icy5wYWdpbmF0aW9uLnNpemVcIlxuICAgICAgW3JvdGF0ZV09XCJ0cnVlXCJcbiAgICAgIChwYWdlQ2hhbmdlKT1cInBhZ2luYXRpb25DbGlja2VkKCRldmVudClcIlxuICAgID48L25nYi1wYWdpbmF0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48dmFsdGltby1ub3RlLW1vZGFsIChjcmVhdGVOb3RlRXZlbnQpPVwiY3JlYXRlTmV3Tm90ZSgkZXZlbnQpXCI+PC92YWx0aW1vLW5vdGUtbW9kYWw+XG4iXX0=