@valtimo/dossier 4.15.3-next-main.16 → 4.17.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 (48) hide show
  1. package/bundles/valtimo-dossier.umd.js +1820 -1675
  2. package/bundles/valtimo-dossier.umd.js.map +1 -1
  3. package/bundles/valtimo-dossier.umd.min.js +1 -15
  4. package/bundles/valtimo-dossier.umd.min.js.map +1 -1
  5. package/esm2015/lib/dossier-detail/dossier-detail.component.js +92 -92
  6. package/esm2015/lib/dossier-detail/tab/audit/audit.component.js +79 -79
  7. package/esm2015/lib/dossier-detail/tab/contact-moments/contact-moments.component.js +90 -91
  8. package/esm2015/lib/dossier-detail/tab/documents/documents.component.js +122 -119
  9. package/esm2015/lib/dossier-detail/tab/progress/progress.component.js +49 -49
  10. package/esm2015/lib/dossier-detail/tab/summary/summary.component.js +126 -126
  11. package/esm2015/lib/dossier-detail-tab-enum.js +24 -24
  12. package/esm2015/lib/dossier-list/dossier-list.component.js +216 -216
  13. package/esm2015/lib/dossier-process-start-modal/dossier-process-start-modal.component.js +130 -131
  14. package/esm2015/lib/dossier-routing.module.js +58 -58
  15. package/esm2015/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.js +125 -126
  16. package/esm2015/lib/dossier-update/dossier-update.component.js +121 -121
  17. package/esm2015/lib/dossier.config.js +29 -29
  18. package/esm2015/lib/dossier.module.js +121 -121
  19. package/esm2015/lib/dossier.service.js +53 -53
  20. package/esm2015/lib/models/index.js +19 -0
  21. package/esm2015/lib/models/tabs.model.js +104 -0
  22. package/esm2015/lib/tab.service.js +44 -44
  23. package/esm2015/public_api.js +32 -31
  24. package/esm2015/valtimo-dossier.js +9 -9
  25. package/fesm2015/valtimo-dossier.js +1457 -1333
  26. package/fesm2015/valtimo-dossier.js.map +1 -1
  27. package/lib/dossier-detail/dossier-detail.component.d.ts +34 -34
  28. package/lib/dossier-detail/tab/audit/audit.component.d.ts +21 -21
  29. package/lib/dossier-detail/tab/contact-moments/contact-moments.component.d.ts +26 -27
  30. package/lib/dossier-detail/tab/documents/documents.component.d.ts +43 -44
  31. package/lib/dossier-detail/tab/progress/progress.component.d.ts +14 -14
  32. package/lib/dossier-detail/tab/summary/summary.component.d.ts +37 -37
  33. package/lib/dossier-detail-tab-enum.d.ts +7 -7
  34. package/lib/dossier-list/dossier-list.component.d.ts +64 -65
  35. package/lib/dossier-process-start-modal/dossier-process-start-modal.component.d.ts +36 -37
  36. package/lib/dossier-routing.module.d.ts +2 -2
  37. package/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts +34 -35
  38. package/lib/dossier-update/dossier-update.component.d.ts +33 -33
  39. package/lib/dossier.config.d.ts +3 -3
  40. package/lib/dossier.module.d.ts +5 -5
  41. package/lib/dossier.service.d.ts +10 -10
  42. package/lib/models/index.d.ts +1 -0
  43. package/lib/models/tabs.model.d.ts +50 -0
  44. package/lib/tab.service.d.ts +7 -7
  45. package/package.json +1 -1
  46. package/public_api.d.ts +13 -12
  47. package/valtimo-dossier.d.ts +8 -8
  48. package/valtimo-dossier.metadata.json +1 -1
@@ -1,126 +1,125 @@
1
- /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, EventEmitter, Output, ViewChild, ViewEncapsulation } from '@angular/core';
17
- import { FormioComponent, ModalComponent } from '@valtimo/components';
18
- import { ActivatedRoute, Router } from '@angular/router';
19
- import { ProcessService } from '@valtimo/process';
20
- import { DocumentService } from '@valtimo/document';
21
- import { FormLinkService } from '@valtimo/form-link';
22
- import { NGXLogger } from 'ngx-logger';
23
- import { FormioOptionsImpl, } from '@valtimo/contract';
24
- import { noop } from 'rxjs';
25
- import { take } from 'rxjs/operators';
26
- export class DossierSupportingProcessStartModalComponent {
27
- constructor(route, router, processService, documentService, formLinkService, logger) {
28
- this.route = route;
29
- this.router = router;
30
- this.processService = processService;
31
- this.documentService = documentService;
32
- this.formLinkService = formLinkService;
33
- this.logger = logger;
34
- this.formSubmit = new EventEmitter();
35
- }
36
- loadFormDefinition() {
37
- this.formDefinition = null;
38
- this.formLinkService
39
- .getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey)
40
- .subscribe(formDefinition => {
41
- this.formAssociation = formDefinition.formAssociation;
42
- const className = this.formAssociation.formLink.className.split('.');
43
- const linkType = className[className.length - 1];
44
- switch (linkType) {
45
- case 'BpmnElementFormIdLink':
46
- this.formDefinition = formDefinition;
47
- this.documentService.getDocument(this.documentId).subscribe(document => {
48
- this.submission = {
49
- data: document.content,
50
- };
51
- }, () => noop());
52
- this.modal.show();
53
- break;
54
- case 'BpmnElementUrlLink':
55
- const url = this.router.serializeUrl(this.router.createUrlTree([formDefinition.formAssociation.formLink.url]));
56
- window.open(url, '_blank');
57
- break;
58
- case 'BpmnElementAngularStateUrlLink':
59
- this.route.params.pipe(take(1)).subscribe(params => {
60
- const documentId = params === null || params === void 0 ? void 0 : params.documentId;
61
- this.router.navigate([formDefinition.formAssociation.formLink.url], {
62
- state: Object.assign({}, (documentId && { documentId })),
63
- });
64
- });
65
- break;
66
- default:
67
- this.logger.fatal('Unsupported class name');
68
- }
69
- }, errors => {
70
- this.modal.show();
71
- });
72
- }
73
- get modalTitle() {
74
- return `Start - ${this.processName}`;
75
- }
76
- openModal(processDocumentDefinition, documentId) {
77
- this.documentId = documentId;
78
- this.documentDefinitionName = processDocumentDefinition.id.documentDefinitionId.name;
79
- this.processDefinitionKey = processDocumentDefinition.id.processDefinitionKey;
80
- this.processName = processDocumentDefinition.processName;
81
- this.options = new FormioOptionsImpl();
82
- this.options.disableAlerts = true;
83
- const formioBeforeSubmit = function (submission, callback) {
84
- callback(null, submission);
85
- };
86
- this.options.setHooks(formioBeforeSubmit);
87
- this.loadFormDefinition();
88
- }
89
- onSubmit(submission) {
90
- this.formioSubmission = submission;
91
- this.formLinkService
92
- .onSubmit(this.processDefinitionKey, this.formAssociation.formLink.id, submission.data, this.documentId)
93
- .subscribe((formSubmissionResult) => {
94
- this.modal.hide();
95
- this.formSubmit.emit();
96
- }, errors => {
97
- this.form.showErrors(errors);
98
- });
99
- }
100
- gotoFormLinkScreen() {
101
- this.modal.hide();
102
- this.router.navigate(['form-links'], { queryParams: { process: this.processDefinitionKey } });
103
- }
104
- }
105
- DossierSupportingProcessStartModalComponent.decorators = [
106
- { type: Component, args: [{
107
- selector: 'valtimo-dossier-supporting-process-start-modal',
108
- 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-modal\n #supportingProcessStartModal\n elementId=\"supportingProcessStartModal\"\n [title]=\"modalTitle\"\n>\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io\n #form\n [submission]=\"submission\"\n [form]=\"formDefinition\"\n [options]=\"options\"\n (submit)=\"onSubmit($event)\"\n >\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"!formDefinition\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFound'\"\n ></div>\n <div class=\"mb-0 mt-4 p-3 text-center\">\n <button\n class=\"btn btn-secondary btn-space\"\n type=\"button\"\n (click)=\"gotoFormLinkScreen()\"\n id=\"form-link-button\"\n >\n {{ 'formManagement.gotoFormLinksButton' | translate }}\n </button>\n </div>\n </div>\n</valtimo-modal>\n",
109
- encapsulation: ViewEncapsulation.None,
110
- 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 */#supportingProcessStartModal .formio-component-submit{text-align:right}"]
111
- },] }
112
- ];
113
- DossierSupportingProcessStartModalComponent.ctorParameters = () => [
114
- { type: ActivatedRoute },
115
- { type: Router },
116
- { type: ProcessService },
117
- { type: DocumentService },
118
- { type: FormLinkService },
119
- { type: NGXLogger }
120
- ];
121
- DossierSupportingProcessStartModalComponent.propDecorators = {
122
- form: [{ type: ViewChild, args: ['form', { static: false },] }],
123
- modal: [{ type: ViewChild, args: ['supportingProcessStartModal', { static: false },] }],
124
- formSubmit: [{ type: Output }]
125
- };
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1dvcmtzcGFjZS92YWx0aW1vL3ZhbHRpbW8tZnJvbnRlbmQtbGlicmFyaWVzL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvIiwic291cmNlcyI6WyJsaWIvZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwvZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1RixPQUFPLEVBQUMsZUFBZSxFQUFFLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxjQUFjLEVBQUUsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNyQyxPQUFPLEVBRUwsaUJBQWlCLEdBS2xCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFRcEMsTUFBTSxPQUFPLDJDQUEyQztJQWV0RCxZQUNVLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxjQUE4QixFQUM5QixlQUFnQyxFQUNoQyxlQUFnQyxFQUNo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QztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBQyxXQUFXLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQzVGLENBQUM7OztZQXRIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdEQUFnRDtnQkFDMUQsMmhEQUFzRTtnQkFFdEUsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O2FBQ3RDOzs7WUFyQk8sY0FBYztZQUFFLE1BQU07WUFDdEIsY0FBYztZQUNkLGVBQWU7WUFDZixlQUFlO1lBQ2YsU0FBUzs7O21CQTRCZCxTQUFTLFNBQUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztvQkFDakMsU0FBUyxTQUFDLDZCQUE2QixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQzt5QkFFeEQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIwIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1pb0JlZm9yZVN1Ym1pdCwgRm9ybWlvRm9ybX0gZnJvbSAnYW5ndWxhci1mb3JtaW8nO1xuaW1wb3J0IHtGb3JtaW9Db21wb25lbnQsIE1vZGFsQ29tcG9uZW50fSBmcm9tICdAdmFsdGltby9jb21wb25lbnRzJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7UHJvY2Vzc1NlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3Byb2Nlc3MnO1xuaW1wb3J0IHtEb2N1bWVudFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2RvY3VtZW50JztcbmltcG9ydCB7Rm9ybUxpbmtTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9mb3JtLWxpbmsnO1xuaW1wb3J0IHtOR1hMb2dnZXJ9IGZyb20gJ25neC1sb2dnZXInO1xuaW1wb3J0IHtcbiAgRm9ybUFzc29jaWF0aW9uLFxuICBGb3JtaW9PcHRpb25zSW1wbCxcbiAgRm9ybWlvU3VibWlzc2lvbixcbiAgRm9ybVN1Ym1pc3Npb25SZXN1bHQsXG4gIFByb2Nlc3NEb2N1bWVudERlZmluaXRpb24sXG4gIFZhbHRpbW9Gb3JtaW9PcHRpb25zLFxufSBmcm9tICdAdmFsdGltby9jb250cmFjdCc7XG5pbXBvcnQge25vb3B9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb3NzaWVyLXN1cHBvcnRpbmctcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyU3VwcG9ydGluZ1Byb2Nlc3NTdGFydE1vZGFsQ29tcG9uZW50IHtcbiAgcHVibGljIHByb2Nlc3NEZWZpbml0aW9uS2V5OiBzdHJpbmc7XG4gIHB1YmxpYyBkb2N1bWVudERlZmluaXRpb25OYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBwcm9jZXNzTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgZm9ybURlZmluaXRpb246IEZvcm1pb0Zvcm07XG4gIHB1YmxpYyBmb3JtaW9TdWJtaXNzaW9uOiBGb3JtaW9TdWJtaXNzaW9uO1xuICBwcml2YXRlIGZvcm1Bc3NvY2lhdGlvbjogRm9ybUFzc29jaWF0aW9uO1xuICBwdWJsaWMgb3B0aW9uczogVmFsdGltb0Zvcm1pb09wdGlvbnM7XG4gIHB1YmxpYyBzdWJtaXNzaW9uOiBvYmplY3Q7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybScsIHtzdGF0aWM6IGZhbHNlfSkgZm9ybTogRm9ybWlvQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdzdXBwb3J0aW5nUHJvY2Vzc1N0YXJ0TW9kYWwnLCB7c3RhdGljOiBmYWxzZX0pIG1vZGFsOiBNb2RhbENvbXBvbmVudDtcbiAgcHJpdmF0ZSBkb2N1bWVudElkOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBmb3JtU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBwcm9jZXNzU2VydmljZTogUHJvY2Vzc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBkb2N1bWVudFNlcnZpY2U6IERvY3VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1MaW5rU2VydmljZTogRm9ybUxpbmtTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nZ2VyOiBOR1hMb2dnZXJcbiAgKSB7fVxuXG4gIHByaXZhdGUgbG9hZEZvcm1EZWZpbml0aW9uKCkge1xuICAgIHRoaXMuZm9ybURlZmluaXRpb24gPSBudWxsO1xuICAgIHRoaXMuZm9ybUxpbmtTZXJ2aWNlXG4gICAgICAuZ2V0U3RhcnRFdmVudEZvcm1EZWZpbml0aW9uQnlQcm9jZXNzRGVmaW5pdGlvbktleSh0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5KVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgZm9ybURlZmluaXRpb24gPT4ge1xuICAgICAgICAgIHRoaXMuZm9ybUFzc29jaWF0aW9uID0gZm9ybURlZmluaXRpb24uZm9ybUFzc29jaWF0aW9uO1xuICAgICAgICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLmNsYXNzTmFtZS5zcGxpdCgnLicpO1xuICAgICAgICAgIGNvbnN0IGxpbmtUeXBlID0gY2xhc3NOYW1lW2NsYXNzTmFtZS5sZW5ndGggLSAxXTtcbiAgICAgICAgICBzd2l0Y2ggKGxpbmtUeXBlKSB7XG4gICAgICAgICAgICBjYXNlICdCcG1uRWxlbWVudEZvcm1JZExpbmsnOlxuICAgICAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uID0gZm9ybURlZmluaXRpb247XG4gICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldERvY3VtZW50KHRoaXMuZG9jdW1lbnRJZCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIGRvY3VtZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuc3VibWlzc2lvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogZG9jdW1lbnQuY29udGVudCxcbiAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoKSA9PiBub29wKClcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgdGhpcy5tb2RhbC5zaG93KCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnQnBtbkVsZW1lbnRVcmxMaW5rJzpcbiAgICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5yb3V0ZXIuc2VyaWFsaXplVXJsKFxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoW2Zvcm1EZWZpbml0aW9uLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay51cmxdKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdCcG1uRWxlbWVudEFuZ3VsYXJTdGF0ZVVybExpbmsnOlxuICAgICAgICAgICAgICB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRvY3VtZW50SWQgPSBwYXJhbXM/LmRvY3VtZW50SWQ7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZm9ybURlZmluaXRpb24uZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLnVybF0sIHtcbiAgICAgICAgICAgICAgICAgIHN0YXRlOiB7Li4uKGRvY3VtZW50SWQgJiYge2RvY3VtZW50SWR9KX0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmZhdGFsKCdVbnN1cHBvcnRlZCBjbGFzcyBuYW1lJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBlcnJvcnMgPT4ge1xuICAgICAgICAgIHRoaXMubW9kYWwuc2hvdygpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBtb2RhbFRpdGxlKCkge1xuICAgIHJldHVybiBgU3RhcnQgLSAke3RoaXMucHJvY2Vzc05hbWV9YDtcbiAgfVxuXG4gIG9wZW5Nb2RhbChwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uOiBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uLCBkb2N1bWVudElkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRvY3VtZW50SWQgPSBkb2N1bWVudElkO1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSA9IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQuZG9jdW1lbnREZWZpbml0aW9uSWQubmFtZTtcbiAgICB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5ID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5pZC5wcm9jZXNzRGVmaW5pdGlvbktleTtcbiAgICB0aGlzLnByb2Nlc3NOYW1lID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5wcm9jZXNzTmFtZTtcbiAgICB0aGlzLm9wdGlvbnMgPSBuZXcgRm9ybWlvT3B0aW9uc0ltcGwoKTtcbiAgICB0aGlzLm9wdGlvbnMuZGlzYWJsZUFsZXJ0cyA9IHRydWU7XG4gICAgY29uc3QgZm9ybWlvQmVmb3JlU3VibWl0OiBGb3JtaW9CZWZvcmVTdWJtaXQgPSBmdW5jdGlvbiAoc3VibWlzc2lvbiwgY2FsbGJhY2spIHtcbiAgICAgIGNhbGxiYWNrKG51bGwsIHN1Ym1pc3Npb24pO1xuICAgIH07XG4gICAgdGhpcy5vcHRpb25zLnNldEhvb2tzKGZvcm1pb0JlZm9yZVN1Ym1pdCk7XG4gICAgdGhpcy5sb2FkRm9ybURlZmluaXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBvblN1Ym1pdChzdWJtaXNzaW9uOiBGb3JtaW9TdWJtaXNzaW9uKSB7XG4gICAgdGhpcy5mb3JtaW9TdWJtaXNzaW9uID0gc3VibWlzc2lvbjtcbiAgICB0aGlzLmZvcm1MaW5rU2VydmljZVxuICAgICAgLm9uU3VibWl0KFxuICAgICAgICB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5LFxuICAgICAgICB0aGlzLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay5pZCxcbiAgICAgICAgc3VibWlzc2lvbi5kYXRhLFxuICAgICAgICB0aGlzLmRvY3VtZW50SWRcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChmb3JtU3VibWlzc2lvblJlc3VsdDogRm9ybVN1Ym1pc3Npb25SZXN1bHQpID0+IHtcbiAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcbiAgICAgICAgICB0aGlzLmZvcm1TdWJtaXQuZW1pdCgpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcnMgPT4ge1xuICAgICAgICAgIHRoaXMuZm9ybS5zaG93RXJyb3JzKGVycm9ycyk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ290b0Zvcm1MaW5rU2NyZWVuKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnZm9ybS1saW5rcyddLCB7cXVlcnlQYXJhbXM6IHtwcm9jZXNzOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5fX0pO1xuICB9XG59XG4iXX0=
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component, EventEmitter, Output, ViewChild, ViewEncapsulation } from '@angular/core';
17
+ import { FormioComponent, ModalComponent, FormioOptionsImpl, } from '@valtimo/components';
18
+ import { ActivatedRoute, Router } from '@angular/router';
19
+ import { ProcessService } from '@valtimo/process';
20
+ import { DocumentService } from '@valtimo/document';
21
+ import { FormLinkService } from '@valtimo/form-link';
22
+ import { NGXLogger } from 'ngx-logger';
23
+ import { noop } from 'rxjs';
24
+ import { take } from 'rxjs/operators';
25
+ export class DossierSupportingProcessStartModalComponent {
26
+ constructor(route, router, processService, documentService, formLinkService, logger) {
27
+ this.route = route;
28
+ this.router = router;
29
+ this.processService = processService;
30
+ this.documentService = documentService;
31
+ this.formLinkService = formLinkService;
32
+ this.logger = logger;
33
+ this.formSubmit = new EventEmitter();
34
+ }
35
+ loadFormDefinition() {
36
+ this.formDefinition = null;
37
+ this.formLinkService
38
+ .getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey)
39
+ .subscribe(formDefinition => {
40
+ this.formAssociation = formDefinition.formAssociation;
41
+ const className = this.formAssociation.formLink.className.split('.');
42
+ const linkType = className[className.length - 1];
43
+ switch (linkType) {
44
+ case 'BpmnElementFormIdLink':
45
+ this.formDefinition = formDefinition;
46
+ this.documentService.getDocument(this.documentId).subscribe(document => {
47
+ this.submission = {
48
+ data: document.content,
49
+ };
50
+ }, () => noop());
51
+ this.modal.show();
52
+ break;
53
+ case 'BpmnElementUrlLink':
54
+ const url = this.router.serializeUrl(this.router.createUrlTree([formDefinition.formAssociation.formLink.url]));
55
+ window.open(url, '_blank');
56
+ break;
57
+ case 'BpmnElementAngularStateUrlLink':
58
+ this.route.params.pipe(take(1)).subscribe(params => {
59
+ const documentId = params === null || params === void 0 ? void 0 : params.documentId;
60
+ this.router.navigate([formDefinition.formAssociation.formLink.url], {
61
+ state: Object.assign({}, (documentId && { documentId })),
62
+ });
63
+ });
64
+ break;
65
+ default:
66
+ this.logger.fatal('Unsupported class name');
67
+ }
68
+ }, errors => {
69
+ this.modal.show();
70
+ });
71
+ }
72
+ get modalTitle() {
73
+ return `Start - ${this.processName}`;
74
+ }
75
+ openModal(processDocumentDefinition, documentId) {
76
+ this.documentId = documentId;
77
+ this.documentDefinitionName = processDocumentDefinition.id.documentDefinitionId.name;
78
+ this.processDefinitionKey = processDocumentDefinition.id.processDefinitionKey;
79
+ this.processName = processDocumentDefinition.processName;
80
+ this.options = new FormioOptionsImpl();
81
+ this.options.disableAlerts = true;
82
+ const formioBeforeSubmit = function (submission, callback) {
83
+ callback(null, submission);
84
+ };
85
+ this.options.setHooks(formioBeforeSubmit);
86
+ this.loadFormDefinition();
87
+ }
88
+ onSubmit(submission) {
89
+ this.formioSubmission = submission;
90
+ this.formLinkService
91
+ .onSubmit(this.processDefinitionKey, this.formAssociation.formLink.id, submission.data, this.documentId)
92
+ .subscribe((formSubmissionResult) => {
93
+ this.modal.hide();
94
+ this.formSubmit.emit();
95
+ }, errors => {
96
+ this.form.showErrors(errors);
97
+ });
98
+ }
99
+ gotoFormLinkScreen() {
100
+ this.modal.hide();
101
+ this.router.navigate(['form-links'], { queryParams: { process: this.processDefinitionKey } });
102
+ }
103
+ }
104
+ DossierSupportingProcessStartModalComponent.decorators = [
105
+ { type: Component, args: [{
106
+ selector: 'valtimo-dossier-supporting-process-start-modal',
107
+ 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-modal\n #supportingProcessStartModal\n elementId=\"supportingProcessStartModal\"\n [title]=\"modalTitle\"\n>\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io\n #form\n [submission]=\"submission\"\n [form]=\"formDefinition\"\n [options]=\"options\"\n (submit)=\"onSubmit($event)\"\n >\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"!formDefinition\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFound'\"\n ></div>\n <div class=\"mb-0 mt-4 p-3 text-center\">\n <button\n class=\"btn btn-secondary btn-space\"\n type=\"button\"\n (click)=\"gotoFormLinkScreen()\"\n id=\"form-link-button\"\n >\n {{ 'formManagement.gotoFormLinksButton' | translate }}\n </button>\n </div>\n </div>\n</valtimo-modal>\n",
108
+ encapsulation: ViewEncapsulation.None,
109
+ 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 */#supportingProcessStartModal .formio-component-submit{text-align:right}"]
110
+ },] }
111
+ ];
112
+ DossierSupportingProcessStartModalComponent.ctorParameters = () => [
113
+ { type: ActivatedRoute },
114
+ { type: Router },
115
+ { type: ProcessService },
116
+ { type: DocumentService },
117
+ { type: FormLinkService },
118
+ { type: NGXLogger }
119
+ ];
120
+ DossierSupportingProcessStartModalComponent.propDecorators = {
121
+ form: [{ type: ViewChild, args: ['form', { static: false },] }],
122
+ modal: [{ type: ViewChild, args: ['supportingProcessStartModal', { static: false },] }],
123
+ formSubmit: [{ type: Output }]
124
+ };
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii90bXAvamVua2lucy0zZmYzYTE5YS93b3Jrc3BhY2Uvcm9udGVuZF9saWJyYXJpZXNfLV9yZWxlYXNlX21haW4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kb3NzaWVyLXN1cHBvcnRpbmctcHJvY2Vzcy1zdGFydC1tb2RhbC9kb3NzaWVyLXN1cHBvcnRpbmctcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFDTCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGlCQUFpQixHQUdsQixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxjQUFjLEVBQUUsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxlQUFlLEVBQTRCLE1BQU0sbUJBQW1CLENBQUM7QUFDN0UsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFckMsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFRcEMsTUFBTSxPQUFPLDJDQUEyQztJQWV0RCxZQUNVLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxjQUE4QixFQUM5QixlQUFnQyxFQUNoQyxlQUFnQyxFQUNoQyxNQUFpQjtRQUxqQixV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QUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBQyxXQUFXLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQzVGLENBQUM7OztZQXRIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdEQUFnRDtnQkFDMUQsMmhEQUFzRTtnQkFFdEUsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O2FBQ3RDOzs7WUFkTyxjQUFjO1lBQUUsTUFBTTtZQUN0QixjQUFjO1lBQ2QsZUFBZTtZQUNmLGVBQWU7WUFDZixTQUFTOzs7bUJBcUJkLFNBQVMsU0FBQyxNQUFNLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO29CQUNqQyxTQUFTLFNBQUMsNkJBQTZCLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO3lCQUV4RCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybWlvQmVmb3JlU3VibWl0LCBGb3JtaW9Gb3JtfSBmcm9tICdhbmd1bGFyLWZvcm1pbyc7XG5pbXBvcnQge1xuICBGb3JtaW9Db21wb25lbnQsXG4gIE1vZGFsQ29tcG9uZW50LFxuICBGb3JtaW9PcHRpb25zSW1wbCxcbiAgRm9ybWlvU3VibWlzc2lvbixcbiAgVmFsdGltb0Zvcm1pb09wdGlvbnMsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQcm9jZXNzU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vcHJvY2Vzcyc7XG5pbXBvcnQge0RvY3VtZW50U2VydmljZSwgUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbn0gZnJvbSAnQHZhbHRpbW8vZG9jdW1lbnQnO1xuaW1wb3J0IHtGb3JtTGlua1NlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2Zvcm0tbGluayc7XG5pbXBvcnQge05HWExvZ2dlcn0gZnJvbSAnbmd4LWxvZ2dlcic7XG5pbXBvcnQge0Zvcm1Bc3NvY2lhdGlvbiwgRm9ybVN1Ym1pc3Npb25SZXN1bHR9IGZyb20gJ0B2YWx0aW1vL2Zvcm0tbGluayc7XG5pbXBvcnQge25vb3B9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1zdXBwb3J0aW5nLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb3NzaWVyLXN1cHBvcnRpbmctcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyU3VwcG9ydGluZ1Byb2Nlc3NTdGFydE1vZGFsQ29tcG9uZW50IHtcbiAgcHVibGljIHByb2Nlc3NEZWZpbml0aW9uS2V5OiBzdHJpbmc7XG4gIHB1YmxpYyBkb2N1bWVudERlZmluaXRpb25OYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBwcm9jZXNzTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgZm9ybURlZmluaXRpb246IEZvcm1pb0Zvcm07XG4gIHB1YmxpYyBmb3JtaW9TdWJtaXNzaW9uOiBGb3JtaW9TdWJtaXNzaW9uO1xuICBwcml2YXRlIGZvcm1Bc3NvY2lhdGlvbjogRm9ybUFzc29jaWF0aW9uO1xuICBwdWJsaWMgb3B0aW9uczogVmFsdGltb0Zvcm1pb09wdGlvbnM7XG4gIHB1YmxpYyBzdWJtaXNzaW9uOiBvYmplY3Q7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybScsIHtzdGF0aWM6IGZhbHNlfSkgZm9ybTogRm9ybWlvQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdzdXBwb3J0aW5nUHJvY2Vzc1N0YXJ0TW9kYWwnLCB7c3RhdGljOiBmYWxzZX0pIG1vZGFsOiBNb2RhbENvbXBvbmVudDtcbiAgcHJpdmF0ZSBkb2N1bWVudElkOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBmb3JtU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBwcm9jZXNzU2VydmljZTogUHJvY2Vzc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBkb2N1bWVudFNlcnZpY2U6IERvY3VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1MaW5rU2VydmljZTogRm9ybUxpbmtTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nZ2VyOiBOR1hMb2dnZXJcbiAgKSB7fVxuXG4gIHByaXZhdGUgbG9hZEZvcm1EZWZpbml0aW9uKCkge1xuICAgIHRoaXMuZm9ybURlZmluaXRpb24gPSBudWxsO1xuICAgIHRoaXMuZm9ybUxpbmtTZXJ2aWNlXG4gICAgICAuZ2V0U3RhcnRFdmVudEZvcm1EZWZpbml0aW9uQnlQcm9jZXNzRGVmaW5pdGlvbktleSh0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5KVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgZm9ybURlZmluaXRpb24gPT4ge1xuICAgICAgICAgIHRoaXMuZm9ybUFzc29jaWF0aW9uID0gZm9ybURlZmluaXRpb24uZm9ybUFzc29jaWF0aW9uO1xuICAgICAgICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLmNsYXNzTmFtZS5zcGxpdCgnLicpO1xuICAgICAgICAgIGNvbnN0IGxpbmtUeXBlID0gY2xhc3NOYW1lW2NsYXNzTmFtZS5sZW5ndGggLSAxXTtcbiAgICAgICAgICBzd2l0Y2ggKGxpbmtUeXBlKSB7XG4gICAgICAgICAgICBjYXNlICdCcG1uRWxlbWVudEZvcm1JZExpbmsnOlxuICAgICAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uID0gZm9ybURlZmluaXRpb247XG4gICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldERvY3VtZW50KHRoaXMuZG9jdW1lbnRJZCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIGRvY3VtZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuc3VibWlzc2lvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogZG9jdW1lbnQuY29udGVudCxcbiAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoKSA9PiBub29wKClcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgdGhpcy5tb2RhbC5zaG93KCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnQnBtbkVsZW1lbnRVcmxMaW5rJzpcbiAgICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5yb3V0ZXIuc2VyaWFsaXplVXJsKFxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoW2Zvcm1EZWZpbml0aW9uLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay51cmxdKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdCcG1uRWxlbWVudEFuZ3VsYXJTdGF0ZVVybExpbmsnOlxuICAgICAgICAgICAgICB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRvY3VtZW50SWQgPSBwYXJhbXM/LmRvY3VtZW50SWQ7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZm9ybURlZmluaXRpb24uZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLnVybF0sIHtcbiAgICAgICAgICAgICAgICAgIHN0YXRlOiB7Li4uKGRvY3VtZW50SWQgJiYge2RvY3VtZW50SWR9KX0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmZhdGFsKCdVbnN1cHBvcnRlZCBjbGFzcyBuYW1lJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBlcnJvcnMgPT4ge1xuICAgICAgICAgIHRoaXMubW9kYWwuc2hvdygpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBtb2RhbFRpdGxlKCkge1xuICAgIHJldHVybiBgU3RhcnQgLSAke3RoaXMucHJvY2Vzc05hbWV9YDtcbiAgfVxuXG4gIG9wZW5Nb2RhbChwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uOiBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uLCBkb2N1bWVudElkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRvY3VtZW50SWQgPSBkb2N1bWVudElkO1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSA9IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQuZG9jdW1lbnREZWZpbml0aW9uSWQubmFtZTtcbiAgICB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5ID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5pZC5wcm9jZXNzRGVmaW5pdGlvbktleTtcbiAgICB0aGlzLnByb2Nlc3NOYW1lID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5wcm9jZXNzTmFtZTtcbiAgICB0aGlzLm9wdGlvbnMgPSBuZXcgRm9ybWlvT3B0aW9uc0ltcGwoKTtcbiAgICB0aGlzLm9wdGlvbnMuZGlzYWJsZUFsZXJ0cyA9IHRydWU7XG4gICAgY29uc3QgZm9ybWlvQmVmb3JlU3VibWl0OiBGb3JtaW9CZWZvcmVTdWJtaXQgPSBmdW5jdGlvbiAoc3VibWlzc2lvbiwgY2FsbGJhY2spIHtcbiAgICAgIGNhbGxiYWNrKG51bGwsIHN1Ym1pc3Npb24pO1xuICAgIH07XG4gICAgdGhpcy5vcHRpb25zLnNldEhvb2tzKGZvcm1pb0JlZm9yZVN1Ym1pdCk7XG4gICAgdGhpcy5sb2FkRm9ybURlZmluaXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBvblN1Ym1pdChzdWJtaXNzaW9uOiBGb3JtaW9TdWJtaXNzaW9uKSB7XG4gICAgdGhpcy5mb3JtaW9TdWJtaXNzaW9uID0gc3VibWlzc2lvbjtcbiAgICB0aGlzLmZvcm1MaW5rU2VydmljZVxuICAgICAgLm9uU3VibWl0KFxuICAgICAgICB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5LFxuICAgICAgICB0aGlzLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay5pZCxcbiAgICAgICAgc3VibWlzc2lvbi5kYXRhLFxuICAgICAgICB0aGlzLmRvY3VtZW50SWRcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChmb3JtU3VibWlzc2lvblJlc3VsdDogRm9ybVN1Ym1pc3Npb25SZXN1bHQpID0+IHtcbiAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcbiAgICAgICAgICB0aGlzLmZvcm1TdWJtaXQuZW1pdCgpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcnMgPT4ge1xuICAgICAgICAgIHRoaXMuZm9ybS5zaG93RXJyb3JzKGVycm9ycyk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ290b0Zvcm1MaW5rU2NyZWVuKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnZm9ybS1saW5rcyddLCB7cXVlcnlQYXJhbXM6IHtwcm9jZXNzOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5fX0pO1xuICB9XG59XG4iXX0=
@@ -1,121 +1,121 @@
1
- /*
2
- * Copyright 2015-2020 Ritense BV, the Netherlands.
3
- *
4
- * Licensed under EUPL, Version 1.2 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" basis,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component } from '@angular/core';
17
- import { TaskService } from '@valtimo/task';
18
- import { ActivatedRoute } from '@angular/router';
19
- import { ToastrService } from 'ngx-toastr';
20
- import { Location } from '@angular/common';
21
- import * as momentImported from 'moment';
22
- import { DocumentService } from '@valtimo/document';
23
- import { DossierService } from '../dossier.service';
24
- const moment = momentImported;
25
- moment.locale(localStorage.getItem('langKey') || '');
26
- export class DossierUpdateComponent {
27
- constructor(taskService, documentService, route, toastr, location, dossierService) {
28
- this.taskService = taskService;
29
- this.documentService = documentService;
30
- this.route = route;
31
- this.toastr = toastr;
32
- this.location = location;
33
- this.customDefinitions = {};
34
- const snapshot = this.route.snapshot.paramMap;
35
- this.documentDefinitionName = snapshot.get('documentDefinitionName') || '';
36
- this.documentId = snapshot.get('documentId') || '';
37
- this.taskId = snapshot.get('taskId') || '';
38
- this.implementationDefinitions = dossierService.getImplementationEnvironmentDefinitions(this.documentDefinitionName);
39
- this.loadDocumentDefinition(this.documentDefinitionName);
40
- this.loadDocument(this.documentId);
41
- }
42
- ngOnInit() {
43
- this.getTask(this.taskId);
44
- if (this.implementationDefinitions.definitions.detail.summary) {
45
- this.customDefinitions = this.implementationDefinitions.definitions.detail.summary;
46
- }
47
- }
48
- loadDocumentDefinition(name) {
49
- this.documentService.getDocumentDefinition(name).subscribe(definition => {
50
- this.schema = definition.schema;
51
- });
52
- }
53
- loadDocument(id) {
54
- this.documentService.getDocument(id).subscribe(document => {
55
- this.document = document;
56
- });
57
- }
58
- getTask(id) {
59
- this.taskService.getTask(id).subscribe(task => {
60
- this.task = task;
61
- this.task.task.created = moment(this.task.task.created).format('DD MMM YYYY HH:mm');
62
- this.page = {
63
- title: this.task.task.name,
64
- subtitle: `Created ${moment(this.task.task.created).fromNow()}`,
65
- };
66
- });
67
- }
68
- reset() {
69
- this.loadDocument(this.documentId);
70
- }
71
- back() {
72
- this.location.back();
73
- }
74
- save() {
75
- const document = {
76
- documentId: this.document.id,
77
- content: this.document.content,
78
- versionBasedOn: this.document.version,
79
- };
80
- this.documentService.modifyDocument(document).subscribe(result => {
81
- this.document = result.document;
82
- this.toastr.success('Document aangepast');
83
- this.location.back();
84
- });
85
- }
86
- submit(data) {
87
- // merge document content with formdata
88
- const mergedData = Object.assign({}, this.document.content, data);
89
- const documentData = {
90
- request: {
91
- documentId: this.document.id,
92
- content: mergedData,
93
- versionBasedOn: this.document.version,
94
- },
95
- taskId: this.task.task.id,
96
- };
97
- this.documentService.modifyDocumentAndCompleteTask(documentData).subscribe(result => {
98
- this.toastr.success(this.task.task.name + ' has successfully been completed');
99
- this.location.back();
100
- });
101
- }
102
- returnZero() {
103
- return 0;
104
- }
105
- }
106
- DossierUpdateComponent.decorators = [
107
- { type: Component, args: [{
108
- selector: 'valtimo-dossier-update',
109
- 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<div class=\"main-content\">\n <div class=\"container-fluid\">\n <div class=\"col-12 px-0 mb-5\">\n <valtimo-widget [title]=\"page?.title\" [subtitle]=\"page?.subtitle\" [divider]=\"true\">\n <div class=\"card-body\">\n <!--view with custom definitions-->\n <div *ngIf=\"this.customDefinitions\">\n <div\n class=\"mb-4\"\n *ngFor=\"let definition of this.customDefinitions | keyvalue: returnZero\"\n ></div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-sm-12\">\n <div class=\"text-right\">\n <button\n class=\"btn btn-space btn-default float-left\"\n type=\"button\"\n (click)=\"back()\"\n id=\"back-button\"\n >\n Back\n </button>\n <button\n class=\"btn btn-space btn-secondary\"\n type=\"button\"\n (click)=\"reset()\"\n id=\"reset-button\"\n >\n Reset\n </button>\n <button\n class=\"btn btn-space btn-primary\"\n type=\"button\"\n (click)=\"save()\"\n id=\"save-button\"\n >\n Save\n </button>\n <button\n class=\"btn btn-space btn-primary\"\n type=\"submit\"\n (click)=\"submit({})\"\n id=\"submit-button\"\n >\n Submit\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <valtimo-camunda-form\n *ngIf=\"task?.formFields && !this.customDefinitions\"\n (submitted)=\"submit($event)\"\n [formFields]=\"task.formFields\"\n [componentName]=\"task.formLocation\"\n ></valtimo-camunda-form>\n </div>\n </valtimo-widget>\n </div>\n </div>\n</div>\n",
110
- styles: [""]
111
- },] }
112
- ];
113
- DossierUpdateComponent.ctorParameters = () => [
114
- { type: TaskService },
115
- { type: DocumentService },
116
- { type: ActivatedRoute },
117
- { type: ToastrService },
118
- { type: Location },
119
- { type: DossierService }
120
- ];
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci11cGRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1dvcmtzcGFjZS92YWx0aW1vL3ZhbHRpbW8tZnJvbnRlbmQtbGlicmFyaWVzL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvIiwic291cmNlcyI6WyJsaWIvZG9zc2llci11cGRhdGUvZG9zc2llci11cGRhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQztBQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFPckQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQyxZQUNVLFdBQXdCLEVBQ3hCLGVBQWdDLEVBQ2hDLEtBQXFCLEVBQ3JCLE1BQXFCLEVBQ3JCLFFBQWtCLEVBQzFCLGNBQThCO1FBTHRCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JC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QztJQUNYLENBQUM7OztZQTFHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMscXlGQUE4Qzs7YUFFL0M7OztZQWZPLFdBQVc7WUFLWCxlQUFlO1lBSmYsY0FBYztZQUNkLGFBQWE7WUFDYixRQUFRO1lBR1IsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIwIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUYXNrU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vdGFzayc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtUb2FzdHJTZXJ2aWNlfSBmcm9tICduZ3gtdG9hc3RyJztcbmltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgKiBhcyBtb21lbnRJbXBvcnRlZCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtEb2N1bWVudFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2RvY3VtZW50JztcbmltcG9ydCB7RG9zc2llclNlcnZpY2V9IGZyb20gJy4uL2Rvc3NpZXIuc2VydmljZSc7XG5cbmNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xubW9tZW50LmxvY2FsZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ0tleScpIHx8ICcnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLXVwZGF0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb3NzaWVyLXVwZGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Rvc3NpZXItdXBkYXRlLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llclVwZGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyB0YXNrOiBhbnk7XG4gIHB1YmxpYyB0YXNrSWQ6IHN0cmluZztcbiAgcHVibGljIHNjaGVtYTogYW55O1xuICBwdWJsaWMgZG9jdW1lbnRJZDogc3RyaW5nO1xuICBwdWJsaWMgZG9jdW1lbnQ6IGFueTtcbiAgcHVibGljIHBhZ2U6IGFueTtcbiAgcHVibGljIGRvY3VtZW50RGVmaW5pdGlvbk5hbWU6IHN0cmluZztcbiAgcHVibGljIGltcGxlbWVudGF0aW9uRGVmaW5pdGlvbnM6IGFueTtcbiAgcHVibGljIGN1c3RvbURlZmluaXRpb25zOiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRhc2tTZXJ2aWNlOiBUYXNrU2VydmljZSxcbiAgICBwcml2YXRlIGRvY3VtZW50U2VydmljZTogRG9jdW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxuICAgIGRvc3NpZXJTZXJ2aWNlOiBEb3NzaWVyU2VydmljZVxuICApIHtcbiAgICBjb25zdCBzbmFwc2hvdCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXA7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudERlZmluaXRpb25OYW1lJykgfHwgJyc7XG4gICAgdGhpcy5kb2N1bWVudElkID0gc25hcHNob3QuZ2V0KCdkb2N1bWVudElkJykgfHwgJyc7XG4gICAgdGhpcy50YXNrSWQgPSBzbmFwc2hvdC5nZXQoJ3Rhc2tJZCcpIHx8ICcnO1xuICAgIHRoaXMuaW1wbGVtZW50YXRpb25EZWZpbml0aW9ucyA9IGRvc3NpZXJTZXJ2aWNlLmdldEltcGxlbWVudGF0aW9uRW52aXJvbm1lbnREZWZpbml0aW9ucyhcbiAgICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZVxuICAgICk7XG4gICAgdGhpcy5sb2FkRG9jdW1lbnREZWZpbml0aW9uKHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSk7XG4gICAgdGhpcy5sb2FkRG9jdW1lbnQodGhpcy5kb2N1bWVudElkKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZ2V0VGFzayh0aGlzLnRhc2tJZCk7XG4gICAgaWYgKHRoaXMuaW1wbGVtZW50YXRpb25EZWZpbml0aW9ucy5kZWZpbml0aW9ucy5kZXRhaWwuc3VtbWFyeSkge1xuICAgICAgdGhpcy5jdXN0b21EZWZpbml0aW9ucyA9IHRoaXMuaW1wbGVtZW50YXRpb25EZWZpbml0aW9ucy5kZWZpbml0aW9ucy5kZXRhaWwuc3VtbWFyeTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxvYWREb2N1bWVudERlZmluaXRpb24obmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0RG9jdW1lbnREZWZpbml0aW9uKG5hbWUpLnN1YnNjcmliZShkZWZpbml0aW9uID0+IHtcbiAgICAgIHRoaXMuc2NoZW1hID0gZGVmaW5pdGlvbi5zY2hlbWE7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxvYWREb2N1bWVudChpZDogc3RyaW5nKSB7XG4gICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0RG9jdW1lbnQoaWQpLnN1YnNjcmliZShkb2N1bWVudCA9PiB7XG4gICAgICB0aGlzLmRvY3VtZW50ID0gZG9jdW1lbnQ7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFzayhpZDogc3RyaW5nKSB7XG4gICAgdGhpcy50YXNrU2VydmljZS5nZXRUYXNrKGlkKS5zdWJzY3JpYmUodGFzayA9PiB7XG4gICAgICB0aGlzLnRhc2sgPSB0YXNrO1xuICAgICAgdGhpcy50YXNrLnRhc2suY3JlYXRlZCA9IG1vbWVudCh0aGlzLnRhc2sudGFzay5jcmVhdGVkKS5mb3JtYXQoJ0REIE1NTSBZWVlZIEhIOm1tJyk7XG4gICAgICB0aGlzLnBhZ2UgPSB7XG4gICAgICAgIHRpdGxlOiB0aGlzLnRhc2sudGFzay5uYW1lLFxuICAgICAgICBzdWJ0aXRsZTogYENyZWF0ZWQgJHttb21lbnQodGhpcy50YXNrLnRhc2suY3JlYXRlZCkuZnJvbU5vdygpfWAsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCkge1xuICAgIHRoaXMubG9hZERvY3VtZW50KHRoaXMuZG9jdW1lbnRJZCk7XG4gIH1cblxuICBwdWJsaWMgYmFjaygpIHtcbiAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlKCkge1xuICAgIGNvbnN0IGRvY3VtZW50ID0ge1xuICAgICAgZG9jdW1lbnRJZDogdGhpcy5kb2N1bWVudC5pZCxcbiAgICAgIGNvbnRlbnQ6IHRoaXMuZG9jdW1lbnQuY29udGVudCxcbiAgICAgIHZlcnNpb25CYXNlZE9uOiB0aGlzLmRvY3VtZW50LnZlcnNpb24sXG4gICAgfTtcbiAgICB0aGlzLmRvY3VtZW50U2VydmljZS5tb2RpZnlEb2N1bWVudChkb2N1bWVudCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICB0aGlzLmRvY3VtZW50ID0gcmVzdWx0LmRvY3VtZW50O1xuICAgICAgdGhpcy50b2FzdHIuc3VjY2VzcygnRG9jdW1lbnQgYWFuZ2VwYXN0Jyk7XG4gICAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdWJtaXQoZGF0YTogb2JqZWN0KSB7XG4gICAgLy8gbWVyZ2UgZG9jdW1lbnQgY29udGVudCB3aXRoIGZvcm1kYXRhXG4gICAgY29uc3QgbWVyZ2VkRGF0YSA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZG9jdW1lbnQuY29udGVudCwgZGF0YSk7XG4gICAgY29uc3QgZG9jdW1lbnREYXRhID0ge1xuICAgICAgcmVxdWVzdDoge1xuICAgICAgICBkb2N1bWVudElkOiB0aGlzLmRvY3VtZW50LmlkLFxuICAgICAgICBjb250ZW50OiBtZXJnZWREYXRhLFxuICAgICAgICB2ZXJzaW9uQmFzZWRPbjogdGhpcy5kb2N1bWVudC52ZXJzaW9uLFxuICAgICAgfSxcbiAgICAgIHRhc2tJZDogdGhpcy50YXNrLnRhc2suaWQsXG4gICAgfTtcblxuICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLm1vZGlmeURvY3VtZW50QW5kQ29tcGxldGVUYXNrKGRvY3VtZW50RGF0YSkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICB0aGlzLnRvYXN0ci5zdWNjZXNzKHRoaXMudGFzay50YXNrLm5hbWUgKyAnIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiBjb21wbGV0ZWQnKTtcbiAgICAgIHRoaXMubG9jYXRpb24uYmFjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJldHVyblplcm8oKSB7XG4gICAgcmV0dXJuIDA7XG4gIH1cbn1cbiJdfQ==
1
+ /*
2
+ * Copyright 2015-2020 Ritense BV, the Netherlands.
3
+ *
4
+ * Licensed under EUPL, Version 1.2 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" basis,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { Component } from '@angular/core';
17
+ import { TaskService } from '@valtimo/task';
18
+ import { ActivatedRoute } from '@angular/router';
19
+ import { ToastrService } from 'ngx-toastr';
20
+ import { Location } from '@angular/common';
21
+ import * as momentImported from 'moment';
22
+ import { DocumentService } from '@valtimo/document';
23
+ import { DossierService } from '../dossier.service';
24
+ const moment = momentImported;
25
+ moment.locale(localStorage.getItem('langKey') || '');
26
+ export class DossierUpdateComponent {
27
+ constructor(taskService, documentService, route, toastr, location, dossierService) {
28
+ this.taskService = taskService;
29
+ this.documentService = documentService;
30
+ this.route = route;
31
+ this.toastr = toastr;
32
+ this.location = location;
33
+ this.customDefinitions = {};
34
+ const snapshot = this.route.snapshot.paramMap;
35
+ this.documentDefinitionName = snapshot.get('documentDefinitionName') || '';
36
+ this.documentId = snapshot.get('documentId') || '';
37
+ this.taskId = snapshot.get('taskId') || '';
38
+ this.implementationDefinitions = dossierService.getImplementationEnvironmentDefinitions(this.documentDefinitionName);
39
+ this.loadDocumentDefinition(this.documentDefinitionName);
40
+ this.loadDocument(this.documentId);
41
+ }
42
+ ngOnInit() {
43
+ this.getTask(this.taskId);
44
+ if (this.implementationDefinitions.definitions.detail.summary) {
45
+ this.customDefinitions = this.implementationDefinitions.definitions.detail.summary;
46
+ }
47
+ }
48
+ loadDocumentDefinition(name) {
49
+ this.documentService.getDocumentDefinition(name).subscribe(definition => {
50
+ this.schema = definition.schema;
51
+ });
52
+ }
53
+ loadDocument(id) {
54
+ this.documentService.getDocument(id).subscribe(document => {
55
+ this.document = document;
56
+ });
57
+ }
58
+ getTask(id) {
59
+ this.taskService.getTask(id).subscribe(task => {
60
+ this.task = task;
61
+ this.task.task.created = moment(this.task.task.created).format('DD MMM YYYY HH:mm');
62
+ this.page = {
63
+ title: this.task.task.name,
64
+ subtitle: `Created ${moment(this.task.task.created).fromNow()}`,
65
+ };
66
+ });
67
+ }
68
+ reset() {
69
+ this.loadDocument(this.documentId);
70
+ }
71
+ back() {
72
+ this.location.back();
73
+ }
74
+ save() {
75
+ const document = {
76
+ documentId: this.document.id,
77
+ content: this.document.content,
78
+ versionBasedOn: this.document.version,
79
+ };
80
+ this.documentService.modifyDocument(document).subscribe(result => {
81
+ this.document = result.document;
82
+ this.toastr.success('Document aangepast');
83
+ this.location.back();
84
+ });
85
+ }
86
+ submit(data) {
87
+ // merge document content with formdata
88
+ const mergedData = Object.assign({}, this.document.content, data);
89
+ const documentData = {
90
+ request: {
91
+ documentId: this.document.id,
92
+ content: mergedData,
93
+ versionBasedOn: this.document.version,
94
+ },
95
+ taskId: this.task.task.id,
96
+ };
97
+ this.documentService.modifyDocumentAndCompleteTask(documentData).subscribe(result => {
98
+ this.toastr.success(this.task.task.name + ' has successfully been completed');
99
+ this.location.back();
100
+ });
101
+ }
102
+ returnZero() {
103
+ return 0;
104
+ }
105
+ }
106
+ DossierUpdateComponent.decorators = [
107
+ { type: Component, args: [{
108
+ selector: 'valtimo-dossier-update',
109
+ 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<div class=\"main-content\">\n <div class=\"container-fluid\">\n <div class=\"col-12 px-0 mb-5\">\n <valtimo-widget [title]=\"page?.title\" [subtitle]=\"page?.subtitle\" [divider]=\"true\">\n <div class=\"card-body\">\n <!--view with custom definitions-->\n <div *ngIf=\"this.customDefinitions\">\n <div\n class=\"mb-4\"\n *ngFor=\"let definition of this.customDefinitions | keyvalue: returnZero\"\n ></div>\n <div class=\"row pt-3 mt-1\">\n <div class=\"col-sm-12\">\n <div class=\"text-right\">\n <button\n class=\"btn btn-space btn-default float-left\"\n type=\"button\"\n (click)=\"back()\"\n id=\"back-button\"\n >\n Back\n </button>\n <button\n class=\"btn btn-space btn-secondary\"\n type=\"button\"\n (click)=\"reset()\"\n id=\"reset-button\"\n >\n Reset\n </button>\n <button\n class=\"btn btn-space btn-primary\"\n type=\"button\"\n (click)=\"save()\"\n id=\"save-button\"\n >\n Save\n </button>\n <button\n class=\"btn btn-space btn-primary\"\n type=\"submit\"\n (click)=\"submit({})\"\n id=\"submit-button\"\n >\n Submit\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <valtimo-camunda-form\n *ngIf=\"task?.formFields && !this.customDefinitions\"\n (submitted)=\"submit($event)\"\n [formFields]=\"task.formFields\"\n [componentName]=\"task.formLocation\"\n ></valtimo-camunda-form>\n </div>\n </valtimo-widget>\n </div>\n </div>\n</div>\n",
110
+ styles: [""]
111
+ },] }
112
+ ];
113
+ DossierUpdateComponent.ctorParameters = () => [
114
+ { type: TaskService },
115
+ { type: DocumentService },
116
+ { type: ActivatedRoute },
117
+ { type: ToastrService },
118
+ { type: Location },
119
+ { type: DossierService }
120
+ ];
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci11cGRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii90bXAvamVua2lucy0zZmYzYTE5YS93b3Jrc3BhY2Uvcm9udGVuZF9saWJyYXJpZXNfLV9yZWxlYXNlX21haW4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kb3NzaWVyLXVwZGF0ZS9kb3NzaWVyLXVwZGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxjQUFjLE1BQU0sUUFBUSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDO0FBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQU9yRCxNQUFNLE9BQU8sc0JBQXNCO0lBV2pDLFlBQ1UsV0FBd0IsRUFDeEIsZUFBZ0MsRUFDaEMsS0FBcUIsRUFDckIsTUFBcUIsRUFDckIsUUFBa0IsRUFDMUIsY0FBOEI7UUFMdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FB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QUNmLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7O1lBMUdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2dCQUNsQyxxeUZBQThDOzthQUUvQzs7O1lBZk8sV0FBVztZQUtYLGVBQWU7WUFKZixjQUFjO1lBQ2QsYUFBYTtZQUNiLFFBQVE7WUFHUixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjAgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Rhc2tTZXJ2aWNlfSBmcm9tICdAdmFsdGltby90YXNrJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XG5pbXBvcnQge0RvY3VtZW50U2VydmljZX0gZnJvbSAnQHZhbHRpbW8vZG9jdW1lbnQnO1xuaW1wb3J0IHtEb3NzaWVyU2VydmljZX0gZnJvbSAnLi4vZG9zc2llci5zZXJ2aWNlJztcblxuY29uc3QgbW9tZW50ID0gbW9tZW50SW1wb3J0ZWQ7XG5tb21lbnQubG9jYWxlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nS2V5JykgfHwgJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWRvc3NpZXItdXBkYXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvc3NpZXItdXBkYXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZG9zc2llci11cGRhdGUuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyVXBkYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIHRhc2s6IGFueTtcbiAgcHVibGljIHRhc2tJZDogc3RyaW5nO1xuICBwdWJsaWMgc2NoZW1hOiBhbnk7XG4gIHB1YmxpYyBkb2N1bWVudElkOiBzdHJpbmc7XG4gIHB1YmxpYyBkb2N1bWVudDogYW55O1xuICBwdWJsaWMgcGFnZTogYW55O1xuICBwdWJsaWMgZG9jdW1lbnREZWZpbml0aW9uTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgaW1wbGVtZW50YXRpb25EZWZpbml0aW9uczogYW55O1xuICBwdWJsaWMgY3VzdG9tRGVmaW5pdGlvbnM6IGFueSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdGFza1NlcnZpY2U6IFRhc2tTZXJ2aWNlLFxuICAgIHByaXZhdGUgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSB0b2FzdHI6IFRvYXN0clNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb24sXG4gICAgZG9zc2llclNlcnZpY2U6IERvc3NpZXJTZXJ2aWNlXG4gICkge1xuICAgIGNvbnN0IHNuYXBzaG90ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbU1hcDtcbiAgICB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUgPSBzbmFwc2hvdC5nZXQoJ2RvY3VtZW50RGVmaW5pdGlvbk5hbWUnKSB8fCAnJztcbiAgICB0aGlzLmRvY3VtZW50SWQgPSBzbmFwc2hvdC5nZXQoJ2RvY3VtZW50SWQnKSB8fCAnJztcbiAgICB0aGlzLnRhc2tJZCA9IHNuYXBzaG90LmdldCgndGFza0lkJykgfHwgJyc7XG4gICAgdGhpcy5pbXBsZW1lbnRhdGlvbkRlZmluaXRpb25zID0gZG9zc2llclNlcnZpY2UuZ2V0SW1wbGVtZW50YXRpb25FbnZpcm9ubWVudERlZmluaXRpb25zKFxuICAgICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lXG4gICAgKTtcbiAgICB0aGlzLmxvYWREb2N1bWVudERlZmluaXRpb24odGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lKTtcbiAgICB0aGlzLmxvYWREb2N1bWVudCh0aGlzLmRvY3VtZW50SWQpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5nZXRUYXNrKHRoaXMudGFza0lkKTtcbiAgICBpZiAodGhpcy5pbXBsZW1lbnRhdGlvbkRlZmluaXRpb25zLmRlZmluaXRpb25zLmRldGFpbC5zdW1tYXJ5KSB7XG4gICAgICB0aGlzLmN1c3RvbURlZmluaXRpb25zID0gdGhpcy5pbXBsZW1lbnRhdGlvbkRlZmluaXRpb25zLmRlZmluaXRpb25zLmRldGFpbC5zdW1tYXJ5O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9hZERvY3VtZW50RGVmaW5pdGlvbihuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXREb2N1bWVudERlZmluaXRpb24obmFtZSkuc3Vic2NyaWJlKGRlZmluaXRpb24gPT4ge1xuICAgICAgdGhpcy5zY2hlbWEgPSBkZWZpbml0aW9uLnNjaGVtYTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZERvY3VtZW50KGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXREb2N1bWVudChpZCkuc3Vic2NyaWJlKGRvY3VtZW50ID0+IHtcbiAgICAgIHRoaXMuZG9jdW1lbnQgPSBkb2N1bWVudDtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUYXNrKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnRhc2tTZXJ2aWNlLmdldFRhc2soaWQpLnN1YnNjcmliZSh0YXNrID0+IHtcbiAgICAgIHRoaXMudGFzayA9IHRhc2s7XG4gICAgICB0aGlzLnRhc2sudGFzay5jcmVhdGVkID0gbW9tZW50KHRoaXMudGFzay50YXNrLmNyZWF0ZWQpLmZvcm1hdCgnREQgTU1NIFlZWVkgSEg6bW0nKTtcbiAgICAgIHRoaXMucGFnZSA9IHtcbiAgICAgICAgdGl0bGU6IHRoaXMudGFzay50YXNrLm5hbWUsXG4gICAgICAgIHN1YnRpdGxlOiBgQ3JlYXRlZCAke21vbWVudCh0aGlzLnRhc2sudGFzay5jcmVhdGVkKS5mcm9tTm93KCl9YCxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKSB7XG4gICAgdGhpcy5sb2FkRG9jdW1lbnQodGhpcy5kb2N1bWVudElkKTtcbiAgfVxuXG4gIHB1YmxpYyBiYWNrKCkge1xuICAgIHRoaXMubG9jYXRpb24uYmFjaygpO1xuICB9XG5cbiAgcHVibGljIHNhdmUoKSB7XG4gICAgY29uc3QgZG9jdW1lbnQgPSB7XG4gICAgICBkb2N1bWVudElkOiB0aGlzLmRvY3VtZW50LmlkLFxuICAgICAgY29udGVudDogdGhpcy5kb2N1bWVudC5jb250ZW50LFxuICAgICAgdmVyc2lvbkJhc2VkT246IHRoaXMuZG9jdW1lbnQudmVyc2lvbixcbiAgICB9O1xuICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLm1vZGlmeURvY3VtZW50KGRvY3VtZW50KS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIHRoaXMuZG9jdW1lbnQgPSByZXN1bHQuZG9jdW1lbnQ7XG4gICAgICB0aGlzLnRvYXN0ci5zdWNjZXNzKCdEb2N1bWVudCBhYW5nZXBhc3QnKTtcbiAgICAgIHRoaXMubG9jYXRpb24uYmFjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdChkYXRhOiBvYmplY3QpIHtcbiAgICAvLyBtZXJnZSBkb2N1bWVudCBjb250ZW50IHdpdGggZm9ybWRhdGFcbiAgICBjb25zdCBtZXJnZWREYXRhID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kb2N1bWVudC5jb250ZW50LCBkYXRhKTtcbiAgICBjb25zdCBkb2N1bWVudERhdGEgPSB7XG4gICAgICByZXF1ZXN0OiB7XG4gICAgICAgIGRvY3VtZW50SWQ6IHRoaXMuZG9jdW1lbnQuaWQsXG4gICAgICAgIGNvbnRlbnQ6IG1lcmdlZERhdGEsXG4gICAgICAgIHZlcnNpb25CYXNlZE9uOiB0aGlzLmRvY3VtZW50LnZlcnNpb24sXG4gICAgICB9LFxuICAgICAgdGFza0lkOiB0aGlzLnRhc2sudGFzay5pZCxcbiAgICB9O1xuXG4gICAgdGhpcy5kb2N1bWVudFNlcnZpY2UubW9kaWZ5RG9jdW1lbnRBbmRDb21wbGV0ZVRhc2soZG9jdW1lbnREYXRhKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIHRoaXMudG9hc3RyLnN1Y2Nlc3ModGhpcy50YXNrLnRhc2submFtZSArICcgaGFzIHN1Y2Nlc3NmdWxseSBiZWVuIGNvbXBsZXRlZCcpO1xuICAgICAgdGhpcy5sb2NhdGlvbi5iYWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmV0dXJuWmVybygpIHtcbiAgICByZXR1cm4gMDtcbiAgfVxufVxuIl19