@valtimo/dossier 10.5.1 → 10.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.mjs +16 -12
- package/esm2020/lib/dossier-detail/tab/summary/summary.component.mjs +1 -1
- package/esm2020/lib/dossier-list/dossier-list.component.mjs +153 -281
- package/esm2020/lib/dossier-list-actions/dossier-list-actions.component.mjs +86 -0
- package/esm2020/lib/dossier-process-start-modal/dossier-process-start-modal.component.mjs +113 -45
- package/esm2020/lib/dossier-routing.module.mjs +2 -2
- package/esm2020/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.mjs +107 -50
- package/esm2020/lib/dossier.module.mjs +17 -4
- package/esm2020/lib/models/dossier-parameters.model.mjs +1 -1
- package/esm2020/lib/services/dossier-column.service.mjs +24 -9
- package/esm2020/lib/services/dossier-list-assignee.service.mjs +82 -0
- package/esm2020/lib/services/dossier-list-pagination.service.mjs +116 -0
- package/esm2020/lib/services/dossier-list-search.service.mjs +66 -0
- package/esm2020/lib/services/dossier-list.service.mjs +60 -0
- package/esm2020/lib/services/dossier-parameter.service.mjs +71 -31
- package/esm2020/lib/services/index.mjs +5 -1
- package/fesm2015/valtimo-dossier.mjs +906 -457
- package/fesm2015/valtimo-dossier.mjs.map +1 -1
- package/fesm2020/valtimo-dossier.mjs +906 -460
- package/fesm2020/valtimo-dossier.mjs.map +1 -1
- package/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts +3 -6
- package/lib/dossier-detail/tab/documenten-api-documents/documenten-api-documents.component.d.ts.map +1 -1
- package/lib/dossier-detail/tab/summary/summary.component.d.ts +9 -9
- package/lib/dossier-detail/tab/summary/summary.component.d.ts.map +1 -1
- package/lib/dossier-list/dossier-list.component.d.ts +45 -56
- package/lib/dossier-list/dossier-list.component.d.ts.map +1 -1
- package/lib/dossier-list-actions/dossier-list-actions.component.d.ts +28 -0
- package/lib/dossier-list-actions/dossier-list-actions.component.d.ts.map +1 -0
- package/lib/dossier-process-start-modal/dossier-process-start-modal.component.d.ts +14 -5
- package/lib/dossier-process-start-modal/dossier-process-start-modal.component.d.ts.map +1 -1
- package/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts +12 -5
- package/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts.map +1 -1
- package/lib/dossier.module.d.ts +31 -29
- package/lib/dossier.module.d.ts.map +1 -1
- package/lib/models/dossier-parameters.model.d.ts +1 -0
- package/lib/models/dossier-parameters.model.d.ts.map +1 -1
- package/lib/services/dossier-column.service.d.ts +5 -1
- package/lib/services/dossier-column.service.d.ts.map +1 -1
- package/lib/services/dossier-list-assignee.service.d.ts +27 -0
- package/lib/services/dossier-list-assignee.service.d.ts.map +1 -0
- package/lib/services/dossier-list-pagination.service.d.ts +30 -0
- package/lib/services/dossier-list-pagination.service.d.ts.map +1 -0
- package/lib/services/dossier-list-search.service.d.ts +22 -0
- package/lib/services/dossier-list-search.service.d.ts.map +1 -0
- package/lib/services/dossier-list.service.d.ts +17 -0
- package/lib/services/dossier-list.service.d.ts.map +1 -0
- package/lib/services/dossier-parameter.service.d.ts +9 -1
- package/lib/services/dossier-parameter.service.d.ts.map +1 -1
- package/lib/services/index.d.ts +4 -0
- package/lib/services/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2015-2023 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, Input, Output, ViewChild } from '@angular/core';
|
|
17
|
+
import { map, of, switchMap, tap } from 'rxjs';
|
|
18
|
+
import * as i0 from "@angular/core";
|
|
19
|
+
import * as i1 from "@valtimo/document";
|
|
20
|
+
import * as i2 from "@angular/router";
|
|
21
|
+
import * as i3 from "../services";
|
|
22
|
+
import * as i4 from "@angular/common";
|
|
23
|
+
import * as i5 from "@ng-bootstrap/ng-bootstrap";
|
|
24
|
+
import * as i6 from "../dossier-process-start-modal/dossier-process-start-modal.component";
|
|
25
|
+
import * as i7 from "@ngx-translate/core";
|
|
26
|
+
export class DossierListActionsComponent {
|
|
27
|
+
constructor(documentService, route, listService) {
|
|
28
|
+
this.documentService = documentService;
|
|
29
|
+
this.route = route;
|
|
30
|
+
this.listService = listService;
|
|
31
|
+
this.formFlowComplete = new EventEmitter();
|
|
32
|
+
this.selectedProcessDocumentDefinition = null;
|
|
33
|
+
this.modalListenerAdded = false;
|
|
34
|
+
this._cachedAssociatedProcessDocumentDefinitions = [];
|
|
35
|
+
this.associatedProcessDocumentDefinitions$ = this.listService.documentDefinitionName$.pipe(switchMap(documentDefinitionName => documentDefinitionName
|
|
36
|
+
? this.documentService.findProcessDocumentDefinitions(documentDefinitionName)
|
|
37
|
+
: of([])), map(processDocumentDefinitions => processDocumentDefinitions.filter(definition => definition.canInitializeDocument)), tap(processDocumentDefinitions => {
|
|
38
|
+
this._cachedAssociatedProcessDocumentDefinitions = processDocumentDefinitions;
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
ngOnInit() {
|
|
42
|
+
this.modalListenerAdded = false;
|
|
43
|
+
}
|
|
44
|
+
startDossier() {
|
|
45
|
+
const associatedProcessDocumentDefinitions = this._cachedAssociatedProcessDocumentDefinitions;
|
|
46
|
+
if (associatedProcessDocumentDefinitions.length > 1) {
|
|
47
|
+
$('#startProcess').modal('show');
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.selectedProcessDocumentDefinition = associatedProcessDocumentDefinitions[0];
|
|
51
|
+
this.showStartProcessModal();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
selectProcess(processDocumentDefinition) {
|
|
55
|
+
const modal = $('#startProcess');
|
|
56
|
+
if (!this.modalListenerAdded) {
|
|
57
|
+
modal.on('hidden.bs.modal', this.showStartProcessModal.bind(this));
|
|
58
|
+
this.modalListenerAdded = true;
|
|
59
|
+
}
|
|
60
|
+
this.selectedProcessDocumentDefinition = processDocumentDefinition;
|
|
61
|
+
modal.modal('hide');
|
|
62
|
+
}
|
|
63
|
+
onFormFlowComplete() {
|
|
64
|
+
this.formFlowComplete.emit(null);
|
|
65
|
+
}
|
|
66
|
+
showStartProcessModal() {
|
|
67
|
+
if (this.selectedProcessDocumentDefinition !== null) {
|
|
68
|
+
this.processStart.openModal(this.selectedProcessDocumentDefinition);
|
|
69
|
+
this.selectedProcessDocumentDefinition = null;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
DossierListActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierListActionsComponent, deps: [{ token: i1.DocumentService }, { token: i2.ActivatedRoute }, { token: i3.DossierListService }], target: i0.ɵɵFactoryTarget.Component });
|
|
74
|
+
DossierListActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierListActionsComponent, selector: "valtimo-dossier-list-actions", inputs: { loading: "loading" }, outputs: { formFlowComplete: "formFlowComplete" }, viewQueries: [{ propertyName: "processStart", first: true, predicate: ["processStartModal"], 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 *ngIf=\"associatedProcessDocumentDefinitions$ | async as associatedProcessDocumentDefinitions\">\n <div class=\"text-right mt-m3px mb-3\">\n <button\n type=\"button\"\n class=\"btn btn-space btn-primary mr-0\"\n (click)=\"startDossier()\"\n [ngbTooltip]=\"associatedProcessDocumentDefinitions.length === 0 ? 'No action' : null\"\n placement=\"bottom\"\n [disabled]=\"associatedProcessDocumentDefinitions.length === 0 || loading\"\n >\n <i class=\"icon mdi mdi-plus mr-1\"></i>\n {{ 'Start Dossier' | translate }}\n </button>\n </div>\n <div\n class=\"modal fade\"\n id=\"startProcess\"\n tabindex=\"-1\"\n role=\"dialog\"\n aria-labelledby=\"startProcessLabel\"\n aria-hidden=\"true\"\n >\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\" id=\"startProcessLabel\">\n {{ 'dashboard.startProcess.title' | translate }}\n </h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"table-responsive\">\n <table class=\"table m-0\">\n <tr\n *ngFor=\"let processDocumentDefinition of associatedProcessDocumentDefinitions\"\n (click)=\"selectProcess(processDocumentDefinition)\"\n style=\"cursor: pointer\"\n >\n <td>{{ processDocumentDefinition.processName }}</td>\n </tr>\n </table>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">\n {{ 'cta.close' | translate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<valtimo-dossier-process-start-modal\n #processStartModal\n (formFlowComplete)=\"onFormFlowComplete()\"\n></valtimo-dossier-process-start-modal>\n", styles: [""], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: i6.DossierProcessStartModalComponent, selector: "valtimo-dossier-process-start-modal", outputs: ["formFlowComplete"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierListActionsComponent, decorators: [{
|
|
76
|
+
type: Component,
|
|
77
|
+
args: [{ selector: 'valtimo-dossier-list-actions', 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 *ngIf=\"associatedProcessDocumentDefinitions$ | async as associatedProcessDocumentDefinitions\">\n <div class=\"text-right mt-m3px mb-3\">\n <button\n type=\"button\"\n class=\"btn btn-space btn-primary mr-0\"\n (click)=\"startDossier()\"\n [ngbTooltip]=\"associatedProcessDocumentDefinitions.length === 0 ? 'No action' : null\"\n placement=\"bottom\"\n [disabled]=\"associatedProcessDocumentDefinitions.length === 0 || loading\"\n >\n <i class=\"icon mdi mdi-plus mr-1\"></i>\n {{ 'Start Dossier' | translate }}\n </button>\n </div>\n <div\n class=\"modal fade\"\n id=\"startProcess\"\n tabindex=\"-1\"\n role=\"dialog\"\n aria-labelledby=\"startProcessLabel\"\n aria-hidden=\"true\"\n >\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\" id=\"startProcessLabel\">\n {{ 'dashboard.startProcess.title' | translate }}\n </h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"table-responsive\">\n <table class=\"table m-0\">\n <tr\n *ngFor=\"let processDocumentDefinition of associatedProcessDocumentDefinitions\"\n (click)=\"selectProcess(processDocumentDefinition)\"\n style=\"cursor: pointer\"\n >\n <td>{{ processDocumentDefinition.processName }}</td>\n </tr>\n </table>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">\n {{ 'cta.close' | translate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<valtimo-dossier-process-start-modal\n #processStartModal\n (formFlowComplete)=\"onFormFlowComplete()\"\n></valtimo-dossier-process-start-modal>\n" }]
|
|
78
|
+
}], ctorParameters: function () { return [{ type: i1.DocumentService }, { type: i2.ActivatedRoute }, { type: i3.DossierListService }]; }, propDecorators: { processStart: [{
|
|
79
|
+
type: ViewChild,
|
|
80
|
+
args: ['processStartModal']
|
|
81
|
+
}], loading: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], formFlowComplete: [{
|
|
84
|
+
type: Output
|
|
85
|
+
}] } });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1saXN0LWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1saXN0LWFjdGlvbnMvZG9zc2llci1saXN0LWFjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1saXN0LWFjdGlvbnMvZG9zc2llci1saXN0LWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFhekQsTUFBTSxPQUFPLDJCQUEyQjtJQTRCdEMsWUFDbUIsZUFBZ0MsRUFDaEMsS0FBcUIsRUFDckIsV0FBK0I7UUFGL0Isb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQTFCeEMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV4QyxzQ0FBaUMsR0FBcUMsSUFBSSxDQUFDO1FBRTNFLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUUzQixnREFBMkMsR0FBcUMsRUFBRSxDQUFDO1FBRWxGLDBDQUFxQyxHQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FDM0MsU0FBUyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FDakMsc0JBQXNCO1lBQ3BCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDhCQUE4QixDQUFDLHNCQUFzQixDQUFDO1lBQzdFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQ1gsRUFDRCxHQUFHLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUMvQiwwQkFBMEIsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FDbEYsRUFDRCxHQUFHLENBQUMsMEJBQTBCLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsMkNBQTJDLEdBQUcsMEJBQTBCLENBQUM7UUFDaEYsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQU1ELENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sb0NBQW9DLEdBQUcsSUFBSSxDQUFDLDJDQUEyQyxDQUFDO1FBRTlGLElBQUksb0NBQW9DLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNuRCxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2xDO2FBQU07WUFDTCxJQUFJLENBQUMsaUNBQWlDLEdBQUcsb0NBQW9DLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakYsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLHlCQUFvRDtRQUNoRSxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUM1QixLQUFLLENBQUMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1NBQ2hDO1FBQ0QsSUFBSSxDQUFDLGlDQUFpQyxHQUFHLHlCQUF5QixDQUFDO1FBQ25FLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsaUNBQWlDLEtBQUssSUFBSSxFQUFFO1lBQ25ELElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxpQ0FBaUMsR0FBRyxJQUFJLENBQUM7U0FDL0M7SUFDSCxDQUFDOzt5SEFwRVUsMkJBQTJCOzZHQUEzQiwyQkFBMkIsMFFDOUJ4Qyxpd0ZBMkVBOzRGRDdDYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsOEJBQThCO29LQUtSLFlBQVk7c0JBQTNDLFNBQVM7dUJBQUMsbUJBQW1CO2dCQUVyQixPQUFPO3NCQUFmLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHttYXAsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0RvY3VtZW50U2VydmljZSwgUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbn0gZnJvbSAnQHZhbHRpbW8vZG9jdW1lbnQnO1xuaW1wb3J0IHtEb3NzaWVyUHJvY2Vzc1N0YXJ0TW9kYWxDb21wb25lbnR9IGZyb20gJy4uL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC9kb3NzaWVyLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0Rvc3NpZXJMaXN0U2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMnO1xuXG5kZWNsYXJlIGNvbnN0ICQ7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1saXN0LWFjdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1saXN0LWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb3NzaWVyLWxpc3QtYWN0aW9ucy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyTGlzdEFjdGlvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCdwcm9jZXNzU3RhcnRNb2RhbCcpIHByb2Nlc3NTdGFydDogRG9zc2llclByb2Nlc3NTdGFydE1vZGFsQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIGxvYWRpbmchOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBmb3JtRmxvd0NvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgc2VsZWN0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uOiBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBtb2RhbExpc3RlbmVyQWRkZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIF9jYWNoZWRBc3NvY2lhdGVkUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbnM6IEFycmF5PFByb2Nlc3NEb2N1bWVudERlZmluaXRpb24+ID0gW107XG5cbiAgcmVhZG9ubHkgYXNzb2NpYXRlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zJDogT2JzZXJ2YWJsZTxBcnJheTxQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uPj4gPVxuICAgIHRoaXMubGlzdFNlcnZpY2UuZG9jdW1lbnREZWZpbml0aW9uTmFtZSQucGlwZShcbiAgICAgIHN3aXRjaE1hcChkb2N1bWVudERlZmluaXRpb25OYW1lID0+XG4gICAgICAgIGRvY3VtZW50RGVmaW5pdGlvbk5hbWVcbiAgICAgICAgICA/IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmZpbmRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ucyhkb2N1bWVudERlZmluaXRpb25OYW1lKVxuICAgICAgICAgIDogb2YoW10pXG4gICAgICApLFxuICAgICAgbWFwKHByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zID0+XG4gICAgICAgIHByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zLmZpbHRlcihkZWZpbml0aW9uID0+IGRlZmluaXRpb24uY2FuSW5pdGlhbGl6ZURvY3VtZW50KVxuICAgICAgKSxcbiAgICAgIHRhcChwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ucyA9PiB7XG4gICAgICAgIHRoaXMuX2NhY2hlZEFzc29jaWF0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ucyA9IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zO1xuICAgICAgfSlcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaXN0U2VydmljZTogRG9zc2llckxpc3RTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsTGlzdGVuZXJBZGRlZCA9IGZhbHNlO1xuICB9XG5cbiAgc3RhcnREb3NzaWVyKCk6IHZvaWQge1xuICAgIGNvbnN0IGFzc29jaWF0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ucyA9IHRoaXMuX2NhY2hlZEFzc29jaWF0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ucztcblxuICAgIGlmIChhc3NvY2lhdGVkUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbnMubGVuZ3RoID4gMSkge1xuICAgICAgJCgnI3N0YXJ0UHJvY2VzcycpLm1vZGFsKCdzaG93Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uID0gYXNzb2NpYXRlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zWzBdO1xuICAgICAgdGhpcy5zaG93U3RhcnRQcm9jZXNzTW9kYWwoKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RQcm9jZXNzKHByb2Nlc3NEb2N1bWVudERlZmluaXRpb246IFByb2Nlc3NEb2N1bWVudERlZmluaXRpb24pOiB2b2lkIHtcbiAgICBjb25zdCBtb2RhbCA9ICQoJyNzdGFydFByb2Nlc3MnKTtcbiAgICBpZiAoIXRoaXMubW9kYWxMaXN0ZW5lckFkZGVkKSB7XG4gICAgICBtb2RhbC5vbignaGlkZGVuLmJzLm1vZGFsJywgdGhpcy5zaG93U3RhcnRQcm9jZXNzTW9kYWwuYmluZCh0aGlzKSk7XG4gICAgICB0aGlzLm1vZGFsTGlzdGVuZXJBZGRlZCA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbjtcbiAgICBtb2RhbC5tb2RhbCgnaGlkZScpO1xuICB9XG5cbiAgb25Gb3JtRmxvd0NvbXBsZXRlKCkge1xuICAgIHRoaXMuZm9ybUZsb3dDb21wbGV0ZS5lbWl0KG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93U3RhcnRQcm9jZXNzTW9kYWwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uICE9PSBudWxsKSB7XG4gICAgICB0aGlzLnByb2Nlc3NTdGFydC5vcGVuTW9kYWwodGhpcy5zZWxlY3RlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb24pO1xuICAgICAgdGhpcy5zZWxlY3RlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb24gPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48ZGl2ICpuZ0lmPVwiYXNzb2NpYXRlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0ZWRQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uc1wiPlxuICA8ZGl2IGNsYXNzPVwidGV4dC1yaWdodCBtdC1tM3B4IG1iLTNcIj5cbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zcGFjZSBidG4tcHJpbWFyeSBtci0wXCJcbiAgICAgIChjbGljayk9XCJzdGFydERvc3NpZXIoKVwiXG4gICAgICBbbmdiVG9vbHRpcF09XCJhc3NvY2lhdGVkUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbnMubGVuZ3RoID09PSAwID8gJ05vIGFjdGlvbicgOiBudWxsXCJcbiAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICBbZGlzYWJsZWRdPVwiYXNzb2NpYXRlZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zLmxlbmd0aCA9PT0gMCB8fCBsb2FkaW5nXCJcbiAgICA+XG4gICAgICA8aSBjbGFzcz1cImljb24gbWRpIG1kaS1wbHVzIG1yLTFcIj48L2k+XG4gICAgICB7eyAnU3RhcnQgRG9zc2llcicgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm1vZGFsIGZhZGVcIlxuICAgIGlkPVwic3RhcnRQcm9jZXNzXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICByb2xlPVwiZGlhbG9nXCJcbiAgICBhcmlhLWxhYmVsbGVkYnk9XCJzdGFydFByb2Nlc3NMYWJlbFwiXG4gICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1kaWFsb2cgbW9kYWwtZGlhbG9nLWNlbnRlcmVkXCIgcm9sZT1cImRvY3VtZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGgzIGNsYXNzPVwibW9kYWwtdGl0bGVcIiBpZD1cInN0YXJ0UHJvY2Vzc0xhYmVsXCI+XG4gICAgICAgICAgICB7eyAnZGFzaGJvYXJkLnN0YXJ0UHJvY2Vzcy50aXRsZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2gzPlxuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiY2xvc2VcIiBkYXRhLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPlxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIj5cbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIG0tMFwiPlxuICAgICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbiBvZiBhc3NvY2lhdGVkUHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbnNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RQcm9jZXNzKHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24pXCJcbiAgICAgICAgICAgICAgICBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dGQ+e3sgcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5wcm9jZXNzTmFtZSB9fTwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiBkYXRhLWRpc21pc3M9XCJtb2RhbFwiPlxuICAgICAgICAgICAge3sgJ2N0YS5jbG9zZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPHZhbHRpbW8tZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsXG4gICNwcm9jZXNzU3RhcnRNb2RhbFxuICAoZm9ybUZsb3dDb21wbGV0ZSk9XCJvbkZvcm1GbG93Q29tcGxldGUoKVwiXG4+PC92YWx0aW1vLWRvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbD5cbiJdfQ==
|
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { Component, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
16
|
+
import { Component, EventEmitter, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
17
17
|
import { FormioOptionsImpl, } from '@valtimo/components';
|
|
18
|
+
import { take } from 'rxjs/operators';
|
|
18
19
|
import * as i0 from "@angular/core";
|
|
19
20
|
import * as i1 from "@angular/router";
|
|
20
21
|
import * as i2 from "@valtimo/process";
|
|
@@ -26,45 +27,90 @@ import * as i7 from "@angular/common";
|
|
|
26
27
|
import * as i8 from "@valtimo/components";
|
|
27
28
|
import * as i9 from "@ngx-translate/core";
|
|
28
29
|
export class DossierProcessStartModalComponent {
|
|
29
|
-
constructor(route, router, processService, documentService, formLinkService, userProviderService, logger) {
|
|
30
|
+
constructor(route, router, processService, documentService, formLinkService, processLinkService, formFlowService, userProviderService, logger) {
|
|
30
31
|
this.route = route;
|
|
31
32
|
this.router = router;
|
|
32
33
|
this.processService = processService;
|
|
33
34
|
this.documentService = documentService;
|
|
34
35
|
this.formLinkService = formLinkService;
|
|
36
|
+
this.processLinkService = processLinkService;
|
|
37
|
+
this.formFlowService = formFlowService;
|
|
35
38
|
this.userProviderService = userProviderService;
|
|
36
39
|
this.logger = logger;
|
|
40
|
+
this.formFlowComplete = new EventEmitter();
|
|
37
41
|
}
|
|
38
42
|
ngOnInit() {
|
|
39
43
|
this.isUserAdmin();
|
|
40
44
|
}
|
|
41
|
-
|
|
45
|
+
loadProcessLink() {
|
|
46
|
+
this.formAssociation = null;
|
|
47
|
+
this.processLinkId = null;
|
|
42
48
|
this.formDefinition = null;
|
|
43
|
-
this.
|
|
44
|
-
|
|
45
|
-
.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
49
|
+
this.formFlowInstanceId = null;
|
|
50
|
+
this.processService
|
|
51
|
+
.getProcessDefinitionStartProcessLink(this.processDefinitionId, null, this.documentDefinitionName)
|
|
52
|
+
.pipe(take(1))
|
|
53
|
+
.subscribe(startProcessResult => {
|
|
54
|
+
if (startProcessResult) {
|
|
55
|
+
switch (startProcessResult.type) {
|
|
56
|
+
case 'form':
|
|
57
|
+
this.formDefinition = startProcessResult.properties.prefilledForm;
|
|
58
|
+
this.processLinkId = startProcessResult.processLinkId;
|
|
59
|
+
break;
|
|
60
|
+
case 'form-flow':
|
|
61
|
+
this.formFlowInstanceId = startProcessResult.properties.formFlowInstanceId;
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
this.modal.show();
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
// backwards compatibility for form associations
|
|
68
|
+
this.formLinkService
|
|
69
|
+
.getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey, null)
|
|
70
|
+
.pipe(take(1))
|
|
71
|
+
.subscribe({
|
|
72
|
+
next: formDefinitionWithFormAssociation => this.openFormAssociation(formDefinitionWithFormAssociation),
|
|
73
|
+
error: error => {
|
|
74
|
+
this.modal.show();
|
|
75
|
+
},
|
|
76
|
+
});
|
|
63
77
|
}
|
|
64
|
-
}, errors => {
|
|
65
|
-
this.modal.show();
|
|
66
78
|
});
|
|
67
79
|
}
|
|
80
|
+
openFormAssociation(formDefinitionWithFormAssociation) {
|
|
81
|
+
this.formAssociation = formDefinitionWithFormAssociation.formAssociation;
|
|
82
|
+
const className = this.formAssociation.formLink.className.split('.');
|
|
83
|
+
const linkType = className[className.length - 1];
|
|
84
|
+
switch (linkType) {
|
|
85
|
+
case 'BpmnElementFormIdLink':
|
|
86
|
+
this.formDefinition = formDefinitionWithFormAssociation;
|
|
87
|
+
this.modal.show();
|
|
88
|
+
break;
|
|
89
|
+
case 'BpmnElementFormFlowIdLink':
|
|
90
|
+
this.formFlowService
|
|
91
|
+
.createInstanceForNewProcess(this.processDefinitionKey, {
|
|
92
|
+
documentId: null,
|
|
93
|
+
documentDefinitionName: this.documentDefinitionName,
|
|
94
|
+
})
|
|
95
|
+
.subscribe(result => (this.formFlowInstanceId = result.formFlowInstanceId));
|
|
96
|
+
this.modal.show();
|
|
97
|
+
break;
|
|
98
|
+
case 'BpmnElementUrlLink':
|
|
99
|
+
const url = this.router.serializeUrl(this.router.createUrlTree([this.formAssociation.formLink.url]));
|
|
100
|
+
window.open(url, '_blank');
|
|
101
|
+
break;
|
|
102
|
+
case 'BpmnElementAngularStateUrlLink':
|
|
103
|
+
this.route.params.pipe(take(1)).subscribe(params => {
|
|
104
|
+
const documentId = params?.documentId;
|
|
105
|
+
this.router.navigate([this.formAssociation.formLink.url], {
|
|
106
|
+
state: { ...(documentId && { documentId }) },
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
break;
|
|
110
|
+
default:
|
|
111
|
+
this.logger.fatal('Unsupported class name');
|
|
112
|
+
}
|
|
113
|
+
}
|
|
68
114
|
gotoFormLinkScreen() {
|
|
69
115
|
this.modal.hide();
|
|
70
116
|
this.router.navigate(['form-links'], { queryParams: { process: this.processDefinitionKey } });
|
|
@@ -74,6 +120,7 @@ export class DossierProcessStartModalComponent {
|
|
|
74
120
|
}
|
|
75
121
|
openModal(processDocumentDefinition) {
|
|
76
122
|
this.processDefinitionKey = processDocumentDefinition.id.processDefinitionKey;
|
|
123
|
+
this.processDefinitionId = processDocumentDefinition.latestVersionId;
|
|
77
124
|
this.documentDefinitionName = processDocumentDefinition.id.documentDefinitionId.name;
|
|
78
125
|
this.processName = processDocumentDefinition.processName;
|
|
79
126
|
this.options = new FormioOptionsImpl();
|
|
@@ -82,24 +129,33 @@ export class DossierProcessStartModalComponent {
|
|
|
82
129
|
callback(null, submission);
|
|
83
130
|
};
|
|
84
131
|
this.options.setHooks(formioBeforeSubmit);
|
|
85
|
-
this.
|
|
132
|
+
this.loadProcessLink();
|
|
86
133
|
}
|
|
87
134
|
onSubmit(submission) {
|
|
88
135
|
this.formioSubmission = submission;
|
|
89
|
-
this.
|
|
90
|
-
.
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
136
|
+
if (this.processLinkId) {
|
|
137
|
+
this.processLinkService.submitForm(this.processLinkId, submission.data).subscribe({
|
|
138
|
+
next: (formSubmissionResult) => {
|
|
139
|
+
this.submitCompleted(formSubmissionResult);
|
|
140
|
+
},
|
|
141
|
+
error: errors => {
|
|
142
|
+
this.form.showErrors(errors);
|
|
143
|
+
},
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
this.formLinkService
|
|
148
|
+
.onSubmit(this.processDefinitionKey, this.formAssociation.formLink.id, submission.data)
|
|
149
|
+
.subscribe((formSubmissionResult) => {
|
|
150
|
+
this.submitCompleted(formSubmissionResult);
|
|
151
|
+
}, errors => {
|
|
152
|
+
this.form.showErrors(errors);
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
formFlowSubmitted() {
|
|
157
|
+
this.formFlowComplete.emit(null);
|
|
158
|
+
this.modal.hide();
|
|
103
159
|
}
|
|
104
160
|
isUserAdmin() {
|
|
105
161
|
this.userProviderService.getUserSubject().subscribe(userIdentity => {
|
|
@@ -108,17 +164,29 @@ export class DossierProcessStartModalComponent {
|
|
|
108
164
|
this.isAdmin = false;
|
|
109
165
|
});
|
|
110
166
|
}
|
|
167
|
+
submitCompleted(formSubmissionResult) {
|
|
168
|
+
this.modal.hide();
|
|
169
|
+
this.router.navigate([
|
|
170
|
+
'dossiers',
|
|
171
|
+
this.documentDefinitionName,
|
|
172
|
+
'document',
|
|
173
|
+
formSubmissionResult.documentId,
|
|
174
|
+
'summary',
|
|
175
|
+
]);
|
|
176
|
+
}
|
|
111
177
|
}
|
|
112
|
-
DossierProcessStartModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierProcessStartModalComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.ProcessService }, { token: i3.DocumentService }, { token: i4.FormLinkService }, { token: i5.UserProviderService }, { token: i6.NGXLogger }], target: i0.ɵɵFactoryTarget.Component });
|
|
113
|
-
DossierProcessStartModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierProcessStartModalComponent, selector: "valtimo-dossier-process-start-modal", viewQueries: [{ propertyName: "form", first: true, predicate: ["form"], descendants: true }, { propertyName: "modal", first: true, predicate: ["processStartModal"], 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<valtimo-modal #processStartModal elementId=\"processStartModal\" [title]=\"modalTitle\">\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io #form [form]=\"formDefinition\" [options]=\"options\" (submit)=\"onSubmit($event)\">\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"!formDefinition && isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundAdmin'\"\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 <div body *ngIf=\"!formDefinition && !isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundUser'\"\n ></div>\n </div>\n</valtimo-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 */#processStartModal .formio-component-submit{text-align:right}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.FormioComponent, selector: "valtimo-form-io", inputs: ["form", "options", "submission", "readOnly", "formRefresh$"], outputs: ["submit", "change"] }, { kind: "component", type: i8.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "directive", type: i9.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
178
|
+
DossierProcessStartModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierProcessStartModalComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.ProcessService }, { token: i3.DocumentService }, { token: i4.FormLinkService }, { token: i4.ProcessLinkService }, { token: i4.FormFlowService }, { token: i5.UserProviderService }, { token: i6.NGXLogger }], target: i0.ɵɵFactoryTarget.Component });
|
|
179
|
+
DossierProcessStartModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DossierProcessStartModalComponent, selector: "valtimo-dossier-process-start-modal", outputs: { formFlowComplete: "formFlowComplete" }, viewQueries: [{ propertyName: "form", first: true, predicate: ["form"], descendants: true }, { propertyName: "modal", first: true, predicate: ["processStartModal"], 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<valtimo-modal #processStartModal elementId=\"processStartModal\" [title]=\"modalTitle\">\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io #form [form]=\"formDefinition\" [options]=\"options\" (submit)=\"onSubmit($event)\">\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"formFlowInstanceId\">\n <valtimo-form-flow\n [formFlowInstanceId]=\"formFlowInstanceId\"\n (formFlowComplete)=\"formFlowSubmitted()\"\n ></valtimo-form-flow>\n </div>\n <div body *ngIf=\"!formFlowInstanceId && !formDefinition && isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundAdmin'\"\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 <div body *ngIf=\"!formFlowInstanceId && !formDefinition && !isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundUser'\"\n ></div>\n </div>\n</valtimo-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 */#processStartModal .formio-component-submit{text-align:right}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.FormioComponent, selector: "valtimo-form-io", inputs: ["form", "options", "submission", "readOnly", "formRefresh$"], outputs: ["submit", "change"] }, { kind: "component", type: i8.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "directive", type: i9.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.FormFlowComponent, selector: "valtimo-form-flow", inputs: ["formIoFormData", "formFlowInstanceId"], outputs: ["formFlowComplete"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
114
180
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DossierProcessStartModalComponent, decorators: [{
|
|
115
181
|
type: Component,
|
|
116
|
-
args: [{ selector: 'valtimo-dossier-process-start-modal', encapsulation: ViewEncapsulation.None, 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-modal #processStartModal elementId=\"processStartModal\" [title]=\"modalTitle\">\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io #form [form]=\"formDefinition\" [options]=\"options\" (submit)=\"onSubmit($event)\">\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"!formDefinition && isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundAdmin'\"\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 <div body *ngIf=\"!formDefinition && !isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundUser'\"\n ></div>\n </div>\n</valtimo-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 */#processStartModal .formio-component-submit{text-align:right}\n"] }]
|
|
117
|
-
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.ProcessService }, { type: i3.DocumentService }, { type: i4.FormLinkService }, { type: i5.UserProviderService }, { type: i6.NGXLogger }]; }, propDecorators: { form: [{
|
|
182
|
+
args: [{ selector: 'valtimo-dossier-process-start-modal', encapsulation: ViewEncapsulation.None, 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-modal #processStartModal elementId=\"processStartModal\" [title]=\"modalTitle\">\n <div body *ngIf=\"formDefinition\">\n <valtimo-form-io #form [form]=\"formDefinition\" [options]=\"options\" (submit)=\"onSubmit($event)\">\n </valtimo-form-io>\n </div>\n <div body *ngIf=\"formFlowInstanceId\">\n <valtimo-form-flow\n [formFlowInstanceId]=\"formFlowInstanceId\"\n (formFlowComplete)=\"formFlowSubmitted()\"\n ></valtimo-form-flow>\n </div>\n <div body *ngIf=\"!formFlowInstanceId && !formDefinition && isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundAdmin'\"\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 <div body *ngIf=\"!formFlowInstanceId && !formDefinition && !isAdmin\">\n <div\n class=\"bg-warning text-black mb-0 p-3 text-center\"\n [translate]=\"'formManagement.noFormDefinitionFoundUser'\"\n ></div>\n </div>\n</valtimo-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 */#processStartModal .formio-component-submit{text-align:right}\n"] }]
|
|
183
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.ProcessService }, { type: i3.DocumentService }, { type: i4.FormLinkService }, { type: i4.ProcessLinkService }, { type: i4.FormFlowService }, { type: i5.UserProviderService }, { type: i6.NGXLogger }]; }, propDecorators: { form: [{
|
|
118
184
|
type: ViewChild,
|
|
119
185
|
args: ['form', { static: false }]
|
|
120
186
|
}], modal: [{
|
|
121
187
|
type: ViewChild,
|
|
122
188
|
args: ['processStartModal', { static: false }]
|
|
189
|
+
}], formFlowComplete: [{
|
|
190
|
+
type: Output
|
|
123
191
|
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC9kb3NzaWVyLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQVUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSzlFLE9BQU8sRUFFTCxpQkFBaUIsR0FJbEIsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLGlDQUFpQztJQVk1QyxZQUNVLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxjQUE4QixFQUM5QixlQUFnQyxFQUNoQyxlQUFnQyxFQUNoQyxtQkFBd0MsRUFDeEMsTUFBaUI7UUFOakIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztJQUN4QixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxjQUFj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WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9jdW1lbnRTZXJ2aWNlLCBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ufSBmcm9tICdAdmFsdGltby9kb2N1bWVudCc7XG5pbXBvcnQge0Zvcm1Bc3NvY2lhdGlvbiwgRm9ybUxpbmtTZXJ2aWNlLCBGb3JtU3VibWlzc2lvblJlc3VsdH0gZnJvbSAnQHZhbHRpbW8vZm9ybS1saW5rJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7UHJvY2Vzc1NlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3Byb2Nlc3MnO1xuaW1wb3J0IHtcbiAgRm9ybWlvQ29tcG9uZW50LFxuICBGb3JtaW9PcHRpb25zSW1wbCxcbiAgRm9ybWlvU3VibWlzc2lvbixcbiAgTW9kYWxDb21wb25lbnQsXG4gIFZhbHRpbW9Gb3JtaW9PcHRpb25zLFxufSBmcm9tICdAdmFsdGltby9jb21wb25lbnRzJztcbmltcG9ydCB7Rm9ybWlvQmVmb3JlU3VibWl0fSBmcm9tICdAZm9ybWlvL2FuZ3VsYXIvZm9ybWlvLmNvbW1vbic7XG5pbXBvcnQge0Zvcm1pb0Zvcm19IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge05HWExvZ2dlcn0gZnJvbSAnbmd4LWxvZ2dlcic7XG5pbXBvcnQge1VzZXJQcm92aWRlclNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3NlY3VyaXR5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLXByb2Nlc3Mtc3RhcnQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIERvc3NpZXJQcm9jZXNzU3RhcnRNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBwcm9jZXNzRGVmaW5pdGlvbktleTogc3RyaW5nO1xuICBwdWJsaWMgZG9jdW1lbnREZWZpbml0aW9uTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcHJvY2Vzc05hbWU6IHN0cmluZztcbiAgcHVibGljIGZvcm1EZWZpbml0aW9uOiBGb3JtaW9Gb3JtO1xuICBwdWJsaWMgZm9ybWlvU3VibWlzc2lvbjogRm9ybWlvU3VibWlzc2lvbjtcbiAgcHJpdmF0ZSBmb3JtQXNzb2NpYXRpb246IEZvcm1Bc3NvY2lhdGlvbjtcbiAgcHVibGljIG9wdGlvbnM6IFZhbHRpbW9Gb3JtaW9PcHRpb25zO1xuICBwdWJsaWMgaXNBZG1pbjogYm9vbGVhbjtcbiAgQFZpZXdDaGlsZCgnZm9ybScsIHtzdGF0aWM6IGZhbHNlfSkgZm9ybTogRm9ybWlvQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdwcm9jZXNzU3RhcnRNb2RhbCcsIHtzdGF0aWM6IGZhbHNlfSkgbW9kYWw6IE1vZGFsQ29tcG9uZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBwcm9jZXNzU2VydmljZTogUHJvY2Vzc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBkb2N1bWVudFNlcnZpY2U6IERvY3VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1MaW5rU2VydmljZTogRm9ybUxpbmtTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclByb3ZpZGVyU2VydmljZTogVXNlclByb3ZpZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGxvZ2dlcjogTkdYTG9nZ2VyXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmlzVXNlckFkbWluKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRGb3JtRGVmaW5pdGlvbigpIHtcbiAgICB0aGlzLmZvcm1EZWZpbml0aW9uID0gbnVsbDtcbiAgICB0aGlzLmZvcm1MaW5rU2VydmljZVxuICAgICAgLmdldFN0YXJ0RXZlbnRGb3JtRGVmaW5pdGlvbkJ5UHJvY2Vzc0RlZmluaXRpb25LZXkodGhpcy5wcm9jZXNzRGVmaW5pdGlvbktleSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIGZvcm1EZWZpbml0aW9uID0+IHtcbiAgICAgICAgICB0aGlzLmZvcm1Bc3NvY2lhdGlvbiA9IGZvcm1EZWZpbml0aW9uLmZvcm1Bc3NvY2lhdGlvbjtcbiAgICAgICAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay5jbGFzc05hbWUuc3BsaXQoJy4nKTtcbiAgICAgICAgICBjb25zdCBsaW5rVHlwZSA9IGNsYXNzTmFtZVtjbGFzc05hbWUubGVuZ3RoIC0gMV07XG4gICAgICAgICAgc3dpdGNoIChsaW5rVHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnQnBtbkVsZW1lbnRGb3JtSWRMaW5rJzpcbiAgICAgICAgICAgICAgdGhpcy5mb3JtRGVmaW5pdGlvbiA9IGZvcm1EZWZpbml0aW9uO1xuICAgICAgICAgICAgICB0aGlzLm1vZGFsLnNob3coKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdCcG1uRWxlbWVudFVybExpbmsnOlxuICAgICAgICAgICAgICBjb25zdCB1cmwgPSB0aGlzLnJvdXRlci5zZXJpYWxpemVVcmwoXG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbZm9ybURlZmluaXRpb24uZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLnVybF0pXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIHdpbmRvdy5vcGVuKHVybCwgJ19ibGFuaycpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0JwbW5FbGVtZW50QW5ndWxhclN0YXRlVXJsTGluayc6XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtmb3JtRGVmaW5pdGlvbi5mb3JtQXNzb2NpYXRpb24uZm9ybUxpbmsudXJsXSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZmF0YWwoJ1Vuc3VwcG9ydGVkIGNsYXNzIG5hbWUnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9ycyA9PiB7XG4gICAgICAgICAgdGhpcy5tb2RhbC5zaG93KCk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ290b0Zvcm1MaW5rU2NyZWVuKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnZm9ybS1saW5rcyddLCB7cXVlcnlQYXJhbXM6IHtwcm9jZXNzOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5fX0pO1xuICB9XG5cbiAgcHVibGljIGdldCBtb2RhbFRpdGxlKCkge1xuICAgIHJldHVybiBgU3RhcnQgLSAke3RoaXMucHJvY2Vzc05hbWV9YDtcbiAgfVxuXG4gIG9wZW5Nb2RhbChwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uOiBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uKSB7XG4gICAgdGhpcy5wcm9jZXNzRGVmaW5pdGlvbktleSA9IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQucHJvY2Vzc0RlZmluaXRpb25LZXk7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5pZC5kb2N1bWVudERlZmluaXRpb25JZC5uYW1lO1xuICAgIHRoaXMucHJvY2Vzc05hbWUgPSBwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uLnByb2Nlc3NOYW1lO1xuICAgIHRoaXMub3B0aW9ucyA9IG5ldyBGb3JtaW9PcHRpb25zSW1wbCgpO1xuICAgIHRoaXMub3B0aW9ucy5kaXNhYmxlQWxlcnRzID0gdHJ1ZTtcbiAgICBjb25zdCBmb3JtaW9CZWZvcmVTdWJtaXQ6IEZvcm1pb0JlZm9yZVN1Ym1pdCA9IGZ1bmN0aW9uIChzdWJtaXNzaW9uLCBjYWxsYmFjaykge1xuICAgICAgY2FsbGJhY2sobnVsbCwgc3VibWlzc2lvbik7XG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMuc2V0SG9va3MoZm9ybWlvQmVmb3JlU3VibWl0KTtcbiAgICB0aGlzLmxvYWRGb3JtRGVmaW5pdGlvbigpO1xuICB9XG5cbiAgcHVibGljIG9uU3VibWl0KHN1Ym1pc3Npb246IEZvcm1pb1N1Ym1pc3Npb24pIHtcbiAgICB0aGlzLmZvcm1pb1N1Ym1pc3Npb24gPSBzdWJtaXNzaW9uO1xuICAgIHRoaXMuZm9ybUxpbmtTZXJ2aWNlXG4gICAgICAub25TdWJtaXQodGhpcy5wcm9jZXNzRGVmaW5pdGlvbktleSwgdGhpcy5mb3JtQXNzb2NpYXRpb24uZm9ybUxpbmsuaWQsIHN1Ym1pc3Npb24uZGF0YSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChmb3JtU3VibWlzc2lvblJlc3VsdDogRm9ybVN1Ym1pc3Npb25SZXN1bHQpID0+IHtcbiAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXG4gICAgICAgICAgICAnZG9zc2llcnMnLFxuICAgICAgICAgICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lLFxuICAgICAgICAgICAgJ2RvY3VtZW50JyxcbiAgICAgICAgICAgIGZvcm1TdWJtaXNzaW9uUmVzdWx0LmRvY3VtZW50SWQsXG4gICAgICAgICAgICAnc3VtbWFyeScsXG4gICAgICAgICAgXSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9ycyA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtLnNob3dFcnJvcnMoZXJyb3JzKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1VzZXJBZG1pbigpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXJQcm92aWRlclNlcnZpY2UuZ2V0VXNlclN1YmplY3QoKS5zdWJzY3JpYmUoXG4gICAgICB1c2VySWRlbnRpdHkgPT4ge1xuICAgICAgICB0aGlzLmlzQWRtaW4gPSB1c2VySWRlbnRpdHkucm9sZXMuaW5jbHVkZXMoJ1JPTEVfQURNSU4nKTtcbiAgICAgIH0sXG4gICAgICBlcnJvciA9PiB7XG4gICAgICAgIHRoaXMuaXNBZG1pbiA9IGZhbHNlO1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPHZhbHRpbW8tbW9kYWwgI3Byb2Nlc3NTdGFydE1vZGFsIGVsZW1lbnRJZD1cInByb2Nlc3NTdGFydE1vZGFsXCIgW3RpdGxlXT1cIm1vZGFsVGl0bGVcIj5cbiAgPGRpdiBib2R5ICpuZ0lmPVwiZm9ybURlZmluaXRpb25cIj5cbiAgICA8dmFsdGltby1mb3JtLWlvICNmb3JtIFtmb3JtXT1cImZvcm1EZWZpbml0aW9uXCIgW29wdGlvbnNdPVwib3B0aW9uc1wiIChzdWJtaXQpPVwib25TdWJtaXQoJGV2ZW50KVwiPlxuICAgIDwvdmFsdGltby1mb3JtLWlvPlxuICA8L2Rpdj5cbiAgPGRpdiBib2R5ICpuZ0lmPVwiIWZvcm1EZWZpbml0aW9uICYmIGlzQWRtaW5cIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImJnLXdhcm5pbmcgdGV4dC1ibGFjayBtYi0wIHAtMyB0ZXh0LWNlbnRlclwiXG4gICAgICBbdHJhbnNsYXRlXT1cIidmb3JtTWFuYWdlbWVudC5ub0Zvcm1EZWZpbml0aW9uRm91bmRBZG1pbidcIlxuICAgID48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWItMCBtdC00IHAtMyB0ZXh0LWNlbnRlclwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zcGFjZVwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZ290b0Zvcm1MaW5rU2NyZWVuKClcIlxuICAgICAgICBpZD1cImZvcm0tbGluay1idXR0b25cIlxuICAgICAgPlxuICAgICAgICB7eyAnZm9ybU1hbmFnZW1lbnQuZ290b0Zvcm1MaW5rc0J1dHRvbicgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBib2R5ICpuZ0lmPVwiIWZvcm1EZWZpbml0aW9uICYmICFpc0FkbWluXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJiZy13YXJuaW5nIHRleHQtYmxhY2sgbWItMCBwLTMgdGV4dC1jZW50ZXJcIlxuICAgICAgW3RyYW5zbGF0ZV09XCInZm9ybU1hbmFnZW1lbnQubm9Gb3JtRGVmaW5pdGlvbkZvdW5kVXNlcidcIlxuICAgID48L2Rpdj5cbiAgPC9kaXY+XG48L3ZhbHRpbW8tbW9kYWw+XG4iXX0=
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC9kb3NzaWVyLXByb2Nlc3Mtc3RhcnQtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyL3NyYy9saWIvZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFXcEcsT0FBTyxFQUVMLGlCQUFpQixHQUlsQixNQUFNLHFCQUFxQixDQUFDO0FBSzdCLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFRcEMsTUFBTSxPQUFPLGlDQUFpQztJQWdCNUMsWUFDVSxLQUFxQixFQUNyQixNQUFjLEVBQ2QsY0FBOEIsRUFDOUIsZUFBZ0MsRUFDaEMsZUFBZ0MsRUFDaEMsa0JBQXNDLEVBQ3RDLGVBQWdDLEVBQ2hDLG1CQUF3QyxFQUN4QyxNQUFpQjtRQVJqQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBWGpCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFZN0MsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUMvQixJQUFJLENBQUMsY0FBYzthQUNoQixvQ0FBb0MsQ0FDbkMsSUFBSSxDQUFDLG1CQUFtQixFQUN4QixJQUFJLEVBQ0osSUFBSSxDQUFDLHNCQUFzQixDQUM1QjthQUNBLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDYixTQUFTLENBQUMsa0JBQWtCLENBQUMsRUFBRTtZQUM5QixJQUFJLGtCQUFrQixFQUFFO2dCQUN0QixRQUFRLGtCQUFrQixDQUFDLElBQUksRUFBRTtvQkFDL0IsS0FBSyxNQUFNO3dCQUNULElBQUksQ0FBQyxjQUFjLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQzt3QkFDbEUsSUFBSSxDQUFDLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQyxhQUFhLENBQUM7d0JBQ3RELE1BQU07b0JBQ1IsS0FBSyxXQUFXO3dCQUNkLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUM7d0JBQzNFLE1BQU07aUJBQ1Q7Z0JBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNuQjtpQkFBTTtnQkFDTCxnREFBZ0Q7Z0JBQ2hELElBQUksQ0FBQyxlQUFlO3FCQUNqQixpREFBaUQsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDO3FCQUNsRixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNiLFNBQVMsQ0FBQztvQkFDVCxJQUFJLEVBQUUsaUNBQWlDLENBQUMsRUFBRSxDQUN4QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUNBQWlDLENBQUM7b0JBQzdELEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRTt3QkFDYixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNwQixDQUFDO2lCQUNGLENBQUMsQ0FBQzthQUNOO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsaUNBQXNDO1FBQ2hFLElBQUksQ0FBQyxlQUFlLEdBQUcsaUNBQWlDLENBQUMsZUFBZSxDQUFDO1FBQ3pFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckUsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakQsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyx1QkFBdUI7Z0JBQzFCLElBQUksQ0FBQyxjQUFjLEdBQUcsaUNBQWlDLENBQUM7Z0JBQ3hELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2xCLE1BQU07WUFDUixLQUFLLDJCQUEyQjtnQkFDOUIsSUFBSSxDQUFDLGVBQWU7cUJBQ2pCLDJCQUEyQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtvQkFDdEQsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLHNCQUFzQixFQUFFLElBQUksQ0FBQyxzQkFBc0I7aUJBQ3BELENBQUM7cUJBQ0QsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztnQkFDOUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbEIsTUFBTTtZQUNSLEtBQUssb0JBQW9CO2dCQUN2QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUMvRCxDQUFDO2dCQUNGLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1IsS0FBSyxnQ0FBZ0M7Z0JBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7b0JBQ2pELE1BQU0sVUFBVSxHQUFHLE1BQU0sRUFBRSxVQUFVLENBQUM7b0JBRXRDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7d0JBQ3hELEtBQUssRUFBRSxFQUFDLEdBQUcsQ0FBQyxVQUFVLElBQUksRUFBQyxVQUFVLEVBQUMsQ0FBQyxFQUFDO3FCQUN6QyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFDLFdBQVcsRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsb0JBQW9CLEVBQUMsRUFBQyxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLFdBQVcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxTQUFTLENBQUMseUJBQW9EO1FBQzVELElBQUksQ0FBQyxvQkFBb0IsR0FBRyx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDOUUsSUFBSSxDQUFDLG1CQUFtQixHQUFHLHlCQUF5QixDQUFDLGVBQWUsQ0FBQztRQUNyRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcseUJBQXlCLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQztRQUNyRixJQUFJLENBQUMsV0FBVyxHQUFHLHlCQUF5QixDQUFDLFdBQVcsQ0FBQztRQUN6RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDbEMsTUFBTSxrQkFBa0IsR0FBdUIsVUFBVSxVQUFVLEVBQUUsUUFBUTtZQUMzRSxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxRQUFRLENBQUMsVUFBNEI7UUFDMUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFVBQVUsQ0FBQztRQUVuQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ2hGLElBQUksRUFBRSxDQUFDLG9CQUEwQyxFQUFFLEVBQUU7b0JBQ25ELElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDN0MsQ0FBQztnQkFDRCxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9CLENBQUM7YUFDRixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLGVBQWU7aUJBQ2pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUM7aUJBQ3RGLFNBQVMsQ0FDUixDQUFDLG9CQUEwQyxFQUFFLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUM3QyxDQUFDLEVBQ0QsTUFBTSxDQUFDLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxDQUNGLENBQUM7U0FDTDtJQUNILENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQ2pELFlBQVksQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRCxDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxlQUFlLENBQUMsb0JBQTBDO1FBQ2hFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDbkIsVUFBVTtZQUNWLElBQUksQ0FBQyxzQkFBc0I7WUFDM0IsVUFBVTtZQUNWLG9CQUFvQixDQUFDLFVBQVU7WUFDL0IsU0FBUztTQUNWLENBQUMsQ0FBQztJQUNMLENBQUM7OytIQXhMVSxpQ0FBaUM7bUhBQWpDLGlDQUFpQyx5VEM5QzlDLDI0REFrREE7NEZESmEsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNFLHFDQUFxQyxpQkFHaEMsaUJBQWlCLENBQUMsSUFBSTs0VUFjRCxJQUFJO3NCQUF2QyxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBQ2UsS0FBSztzQkFBckQsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBQ3JDLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9jdW1lbnRTZXJ2aWNlLCBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9ufSBmcm9tICdAdmFsdGltby9kb2N1bWVudCc7XG5pbXBvcnQge1xuICBGb3JtQXNzb2NpYXRpb24sXG4gIEZvcm1GbG93U2VydmljZSxcbiAgRm9ybUxpbmtTZXJ2aWNlLFxuICBGb3JtU3VibWlzc2lvblJlc3VsdCxcbiAgUHJvY2Vzc0xpbmtTZXJ2aWNlLFxufSBmcm9tICdAdmFsdGltby9mb3JtLWxpbmsnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQcm9jZXNzU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vcHJvY2Vzcyc7XG5pbXBvcnQge1xuICBGb3JtaW9Db21wb25lbnQsXG4gIEZvcm1pb09wdGlvbnNJbXBsLFxuICBGb3JtaW9TdWJtaXNzaW9uLFxuICBNb2RhbENvbXBvbmVudCxcbiAgVmFsdGltb0Zvcm1pb09wdGlvbnMsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtGb3JtaW9CZWZvcmVTdWJtaXR9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhci9mb3JtaW8uY29tbW9uJztcbmltcG9ydCB7Rm9ybWlvRm9ybX0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7TkdYTG9nZ2VyfSBmcm9tICduZ3gtbG9nZ2VyJztcbmltcG9ydCB7VXNlclByb3ZpZGVyU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vc2VjdXJpdHknO1xuaW1wb3J0IHt0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1wcm9jZXNzLXN0YXJ0LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Rvc3NpZXItcHJvY2Vzcy1zdGFydC1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyUHJvY2Vzc1N0YXJ0TW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgcHJvY2Vzc0RlZmluaXRpb25LZXk6IHN0cmluZztcbiAgcHVibGljIHByb2Nlc3NEZWZpbml0aW9uSWQ6IHN0cmluZztcbiAgcHVibGljIGRvY3VtZW50RGVmaW5pdGlvbk5hbWU6IHN0cmluZztcbiAgcHVibGljIHByb2Nlc3NOYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBmb3JtRGVmaW5pdGlvbjogRm9ybWlvRm9ybTtcbiAgcHVibGljIGZvcm1GbG93SW5zdGFuY2VJZDogc3RyaW5nO1xuICBwdWJsaWMgZm9ybWlvU3VibWlzc2lvbjogRm9ybWlvU3VibWlzc2lvbjtcbiAgcHJpdmF0ZSBmb3JtQXNzb2NpYXRpb246IEZvcm1Bc3NvY2lhdGlvbjtcbiAgcHJpdmF0ZSBwcm9jZXNzTGlua0lkOiBzdHJpbmc7XG4gIHB1YmxpYyBvcHRpb25zOiBWYWx0aW1vRm9ybWlvT3B0aW9ucztcbiAgcHVibGljIGlzQWRtaW46IGJvb2xlYW47XG4gIEBWaWV3Q2hpbGQoJ2Zvcm0nLCB7c3RhdGljOiBmYWxzZX0pIGZvcm06IEZvcm1pb0NvbXBvbmVudDtcbiAgQFZpZXdDaGlsZCgncHJvY2Vzc1N0YXJ0TW9kYWwnLCB7c3RhdGljOiBmYWxzZX0pIG1vZGFsOiBNb2RhbENvbXBvbmVudDtcbiAgQE91dHB1dCgpIGZvcm1GbG93Q29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHByb2Nlc3NTZXJ2aWNlOiBQcm9jZXNzU2VydmljZSxcbiAgICBwcml2YXRlIGRvY3VtZW50U2VydmljZTogRG9jdW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZm9ybUxpbmtTZXJ2aWNlOiBGb3JtTGlua1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9jZXNzTGlua1NlcnZpY2U6IFByb2Nlc3NMaW5rU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1GbG93U2VydmljZTogRm9ybUZsb3dTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclByb3ZpZGVyU2VydmljZTogVXNlclByb3ZpZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGxvZ2dlcjogTkdYTG9nZ2VyXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmlzVXNlckFkbWluKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRQcm9jZXNzTGluaygpIHtcbiAgICB0aGlzLmZvcm1Bc3NvY2lhdGlvbiA9IG51bGw7XG4gICAgdGhpcy5wcm9jZXNzTGlua0lkID0gbnVsbDtcbiAgICB0aGlzLmZvcm1EZWZpbml0aW9uID0gbnVsbDtcbiAgICB0aGlzLmZvcm1GbG93SW5zdGFuY2VJZCA9IG51bGw7XG4gICAgdGhpcy5wcm9jZXNzU2VydmljZVxuICAgICAgLmdldFByb2Nlc3NEZWZpbml0aW9uU3RhcnRQcm9jZXNzTGluayhcbiAgICAgICAgdGhpcy5wcm9jZXNzRGVmaW5pdGlvbklkLFxuICAgICAgICBudWxsLFxuICAgICAgICB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWVcbiAgICAgIClcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKHN0YXJ0UHJvY2Vzc1Jlc3VsdCA9PiB7XG4gICAgICAgIGlmIChzdGFydFByb2Nlc3NSZXN1bHQpIHtcbiAgICAgICAgICBzd2l0Y2ggKHN0YXJ0UHJvY2Vzc1Jlc3VsdC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdmb3JtJzpcbiAgICAgICAgICAgICAgdGhpcy5mb3JtRGVmaW5pdGlvbiA9IHN0YXJ0UHJvY2Vzc1Jlc3VsdC5wcm9wZXJ0aWVzLnByZWZpbGxlZEZvcm07XG4gICAgICAgICAgICAgIHRoaXMucHJvY2Vzc0xpbmtJZCA9IHN0YXJ0UHJvY2Vzc1Jlc3VsdC5wcm9jZXNzTGlua0lkO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Zvcm0tZmxvdyc6XG4gICAgICAgICAgICAgIHRoaXMuZm9ybUZsb3dJbnN0YW5jZUlkID0gc3RhcnRQcm9jZXNzUmVzdWx0LnByb3BlcnRpZXMuZm9ybUZsb3dJbnN0YW5jZUlkO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5tb2RhbC5zaG93KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgZm9yIGZvcm0gYXNzb2NpYXRpb25zXG4gICAgICAgICAgdGhpcy5mb3JtTGlua1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRTdGFydEV2ZW50Rm9ybURlZmluaXRpb25CeVByb2Nlc3NEZWZpbml0aW9uS2V5KHRoaXMucHJvY2Vzc0RlZmluaXRpb25LZXksIG51bGwpXG4gICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgIG5leHQ6IGZvcm1EZWZpbml0aW9uV2l0aEZvcm1Bc3NvY2lhdGlvbiA9PlxuICAgICAgICAgICAgICAgIHRoaXMub3BlbkZvcm1Bc3NvY2lhdGlvbihmb3JtRGVmaW5pdGlvbldpdGhGb3JtQXNzb2NpYXRpb24pLFxuICAgICAgICAgICAgICBlcnJvcjogZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kYWwuc2hvdygpO1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRm9ybUFzc29jaWF0aW9uKGZvcm1EZWZpbml0aW9uV2l0aEZvcm1Bc3NvY2lhdGlvbjogYW55KSB7XG4gICAgdGhpcy5mb3JtQXNzb2NpYXRpb24gPSBmb3JtRGVmaW5pdGlvbldpdGhGb3JtQXNzb2NpYXRpb24uZm9ybUFzc29jaWF0aW9uO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuZm9ybUFzc29jaWF0aW9uLmZvcm1MaW5rLmNsYXNzTmFtZS5zcGxpdCgnLicpO1xuICAgIGNvbnN0IGxpbmtUeXBlID0gY2xhc3NOYW1lW2NsYXNzTmFtZS5sZW5ndGggLSAxXTtcbiAgICBzd2l0Y2ggKGxpbmtUeXBlKSB7XG4gICAgICBjYXNlICdCcG1uRWxlbWVudEZvcm1JZExpbmsnOlxuICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uID0gZm9ybURlZmluaXRpb25XaXRoRm9ybUFzc29jaWF0aW9uO1xuICAgICAgICB0aGlzLm1vZGFsLnNob3coKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdCcG1uRWxlbWVudEZvcm1GbG93SWRMaW5rJzpcbiAgICAgICAgdGhpcy5mb3JtRmxvd1NlcnZpY2VcbiAgICAgICAgICAuY3JlYXRlSW5zdGFuY2VGb3JOZXdQcm9jZXNzKHRoaXMucHJvY2Vzc0RlZmluaXRpb25LZXksIHtcbiAgICAgICAgICAgIGRvY3VtZW50SWQ6IG51bGwsXG4gICAgICAgICAgICBkb2N1bWVudERlZmluaXRpb25OYW1lOiB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUsXG4gICAgICAgICAgfSlcbiAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiAodGhpcy5mb3JtRmxvd0luc3RhbmNlSWQgPSByZXN1bHQuZm9ybUZsb3dJbnN0YW5jZUlkKSk7XG4gICAgICAgIHRoaXMubW9kYWwuc2hvdygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0JwbW5FbGVtZW50VXJsTGluayc6XG4gICAgICAgIGNvbnN0IHVybCA9IHRoaXMucm91dGVyLnNlcmlhbGl6ZVVybChcbiAgICAgICAgICB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFt0aGlzLmZvcm1Bc3NvY2lhdGlvbi5mb3JtTGluay51cmxdKVxuICAgICAgICApO1xuICAgICAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdCcG1uRWxlbWVudEFuZ3VsYXJTdGF0ZVVybExpbmsnOlxuICAgICAgICB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgIGNvbnN0IGRvY3VtZW50SWQgPSBwYXJhbXM/LmRvY3VtZW50SWQ7XG5cbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5mb3JtQXNzb2NpYXRpb24uZm9ybUxpbmsudXJsXSwge1xuICAgICAgICAgICAgc3RhdGU6IHsuLi4oZG9jdW1lbnRJZCAmJiB7ZG9jdW1lbnRJZH0pfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5sb2dnZXIuZmF0YWwoJ1Vuc3VwcG9ydGVkIGNsYXNzIG5hbWUnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ290b0Zvcm1MaW5rU2NyZWVuKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnZm9ybS1saW5rcyddLCB7cXVlcnlQYXJhbXM6IHtwcm9jZXNzOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uS2V5fX0pO1xuICB9XG5cbiAgcHVibGljIGdldCBtb2RhbFRpdGxlKCkge1xuICAgIHJldHVybiBgU3RhcnQgLSAke3RoaXMucHJvY2Vzc05hbWV9YDtcbiAgfVxuXG4gIG9wZW5Nb2RhbChwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uOiBQcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uKSB7XG4gICAgdGhpcy5wcm9jZXNzRGVmaW5pdGlvbktleSA9IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQucHJvY2Vzc0RlZmluaXRpb25LZXk7XG4gICAgdGhpcy5wcm9jZXNzRGVmaW5pdGlvbklkID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5sYXRlc3RWZXJzaW9uSWQ7XG4gICAgdGhpcy5kb2N1bWVudERlZmluaXRpb25OYW1lID0gcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbi5pZC5kb2N1bWVudERlZmluaXRpb25JZC5uYW1lO1xuICAgIHRoaXMucHJvY2Vzc05hbWUgPSBwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uLnByb2Nlc3NOYW1lO1xuICAgIHRoaXMub3B0aW9ucyA9IG5ldyBGb3JtaW9PcHRpb25zSW1wbCgpO1xuICAgIHRoaXMub3B0aW9ucy5kaXNhYmxlQWxlcnRzID0gdHJ1ZTtcbiAgICBjb25zdCBmb3JtaW9CZWZvcmVTdWJtaXQ6IEZvcm1pb0JlZm9yZVN1Ym1pdCA9IGZ1bmN0aW9uIChzdWJtaXNzaW9uLCBjYWxsYmFjaykge1xuICAgICAgY2FsbGJhY2sobnVsbCwgc3VibWlzc2lvbik7XG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMuc2V0SG9va3MoZm9ybWlvQmVmb3JlU3VibWl0KTtcbiAgICB0aGlzLmxvYWRQcm9jZXNzTGluaygpO1xuICB9XG5cbiAgcHVibGljIG9uU3VibWl0KHN1Ym1pc3Npb246IEZvcm1pb1N1Ym1pc3Npb24pIHtcbiAgICB0aGlzLmZvcm1pb1N1Ym1pc3Npb24gPSBzdWJtaXNzaW9uO1xuXG4gICAgaWYgKHRoaXMucHJvY2Vzc0xpbmtJZCkge1xuICAgICAgdGhpcy5wcm9jZXNzTGlua1NlcnZpY2Uuc3VibWl0Rm9ybSh0aGlzLnByb2Nlc3NMaW5rSWQsIHN1Ym1pc3Npb24uZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKGZvcm1TdWJtaXNzaW9uUmVzdWx0OiBGb3JtU3VibWlzc2lvblJlc3VsdCkgPT4ge1xuICAgICAgICAgIHRoaXMuc3VibWl0Q29tcGxldGVkKGZvcm1TdWJtaXNzaW9uUmVzdWx0KTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IGVycm9ycyA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtLnNob3dFcnJvcnMoZXJyb3JzKTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1MaW5rU2VydmljZVxuICAgICAgICAub25TdWJtaXQodGhpcy5wcm9jZXNzRGVmaW5pdGlvbktleSwgdGhpcy5mb3JtQXNzb2NpYXRpb24uZm9ybUxpbmsuaWQsIHN1Ym1pc3Npb24uZGF0YSlcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAoZm9ybVN1Ym1pc3Npb25SZXN1bHQ6IEZvcm1TdWJtaXNzaW9uUmVzdWx0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN1Ym1pdENvbXBsZXRlZChmb3JtU3VibWlzc2lvblJlc3VsdCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcnMgPT4ge1xuICAgICAgICAgICAgdGhpcy5mb3JtLnNob3dFcnJvcnMoZXJyb3JzKTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZvcm1GbG93U3VibWl0dGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybUZsb3dDb21wbGV0ZS5lbWl0KG51bGwpO1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICB9XG5cbiAgcHVibGljIGlzVXNlckFkbWluKCk6IHZvaWQge1xuICAgIHRoaXMudXNlclByb3ZpZGVyU2VydmljZS5nZXRVc2VyU3ViamVjdCgpLnN1YnNjcmliZShcbiAgICAgIHVzZXJJZGVudGl0eSA9PiB7XG4gICAgICAgIHRoaXMuaXNBZG1pbiA9IHVzZXJJZGVudGl0eS5yb2xlcy5pbmNsdWRlcygnUk9MRV9BRE1JTicpO1xuICAgICAgfSxcbiAgICAgIGVycm9yID0+IHtcbiAgICAgICAgdGhpcy5pc0FkbWluID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3VibWl0Q29tcGxldGVkKGZvcm1TdWJtaXNzaW9uUmVzdWx0OiBGb3JtU3VibWlzc2lvblJlc3VsdCk6IHZvaWQge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcbiAgICAgICdkb3NzaWVycycsXG4gICAgICB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUsXG4gICAgICAnZG9jdW1lbnQnLFxuICAgICAgZm9ybVN1Ym1pc3Npb25SZXN1bHQuZG9jdW1lbnRJZCxcbiAgICAgICdzdW1tYXJ5JyxcbiAgICBdKTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48dmFsdGltby1tb2RhbCAjcHJvY2Vzc1N0YXJ0TW9kYWwgZWxlbWVudElkPVwicHJvY2Vzc1N0YXJ0TW9kYWxcIiBbdGl0bGVdPVwibW9kYWxUaXRsZVwiPlxuICA8ZGl2IGJvZHkgKm5nSWY9XCJmb3JtRGVmaW5pdGlvblwiPlxuICAgIDx2YWx0aW1vLWZvcm0taW8gI2Zvcm0gW2Zvcm1dPVwiZm9ybURlZmluaXRpb25cIiBbb3B0aW9uc109XCJvcHRpb25zXCIgKHN1Ym1pdCk9XCJvblN1Ym1pdCgkZXZlbnQpXCI+XG4gICAgPC92YWx0aW1vLWZvcm0taW8+XG4gIDwvZGl2PlxuICA8ZGl2IGJvZHkgKm5nSWY9XCJmb3JtRmxvd0luc3RhbmNlSWRcIj5cbiAgICA8dmFsdGltby1mb3JtLWZsb3dcbiAgICAgIFtmb3JtRmxvd0luc3RhbmNlSWRdPVwiZm9ybUZsb3dJbnN0YW5jZUlkXCJcbiAgICAgIChmb3JtRmxvd0NvbXBsZXRlKT1cImZvcm1GbG93U3VibWl0dGVkKClcIlxuICAgID48L3ZhbHRpbW8tZm9ybS1mbG93PlxuICA8L2Rpdj5cbiAgPGRpdiBib2R5ICpuZ0lmPVwiIWZvcm1GbG93SW5zdGFuY2VJZCAmJiAhZm9ybURlZmluaXRpb24gJiYgaXNBZG1pblwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYmctd2FybmluZyB0ZXh0LWJsYWNrIG1iLTAgcC0zIHRleHQtY2VudGVyXCJcbiAgICAgIFt0cmFuc2xhdGVdPVwiJ2Zvcm1NYW5hZ2VtZW50Lm5vRm9ybURlZmluaXRpb25Gb3VuZEFkbWluJ1wiXG4gICAgPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJtYi0wIG10LTQgcC0zIHRleHQtY2VudGVyXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNwYWNlXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJnb3RvRm9ybUxpbmtTY3JlZW4oKVwiXG4gICAgICAgIGlkPVwiZm9ybS1saW5rLWJ1dHRvblwiXG4gICAgICA+XG4gICAgICAgIHt7ICdmb3JtTWFuYWdlbWVudC5nb3RvRm9ybUxpbmtzQnV0dG9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGJvZHkgKm5nSWY9XCIhZm9ybUZsb3dJbnN0YW5jZUlkICYmICFmb3JtRGVmaW5pdGlvbiAmJiAhaXNBZG1pblwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYmctd2FybmluZyB0ZXh0LWJsYWNrIG1iLTAgcC0zIHRleHQtY2VudGVyXCJcbiAgICAgIFt0cmFuc2xhdGVdPVwiJ2Zvcm1NYW5hZ2VtZW50Lm5vRm9ybURlZmluaXRpb25Gb3VuZFVzZXInXCJcbiAgICA+PC9kaXY+XG4gIDwvZGl2PlxuPC92YWx0aW1vLW1vZGFsPlxuIl19
|
|
@@ -17,10 +17,10 @@ import { NgModule } from '@angular/core';
|
|
|
17
17
|
import { RouterModule } from '@angular/router';
|
|
18
18
|
import { CommonModule } from '@angular/common';
|
|
19
19
|
import { AuthGuardService } from '@valtimo/security';
|
|
20
|
-
import { DossierListComponent } from './dossier-list/dossier-list.component';
|
|
21
20
|
import { DossierDetailComponent } from './dossier-detail/dossier-detail.component';
|
|
22
21
|
import { DossierUpdateComponent } from './dossier-update/dossier-update.component';
|
|
23
22
|
import { ROLE_USER } from '@valtimo/config';
|
|
23
|
+
import { DossierListComponent } from './dossier-list/dossier-list.component';
|
|
24
24
|
import * as i0 from "@angular/core";
|
|
25
25
|
import * as i1 from "@angular/router";
|
|
26
26
|
const routes = [
|
|
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
59
59
|
exports: [RouterModule],
|
|
60
60
|
}]
|
|
61
61
|
}] });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci9zcmMvbGliL2Rvc3NpZXItcm91dGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVDQUF1QyxDQUFDOzs7QUFFM0UsTUFBTSxNQUFNLEdBQVc7SUFDckI7UUFDRSxJQUFJLEVBQUUsa0NBQWtDO1FBQ3hDLFNBQVMsRUFBRSxvQkFBb0I7UUFDL0IsV0FBVyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsSUFBSSxFQUFFLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBQztLQUM5QztJQUNEO1FBQ0UsSUFBSSxFQUFFLDREQUE0RDtRQUNsRSxTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLFdBQVcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLElBQUksRUFBRSxFQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGtDQUFrQyxFQUFFLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFDO0tBQzlGO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsMEVBQTBFO1FBQ2hGLFNBQVMsRUFBRSxzQkFBc0I7UUFDakMsV0FBVyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsSUFBSSxFQUFFO1lBQ0osS0FBSyxFQUFFLGNBQWM7WUFDckIsVUFBVSxFQUFFLDREQUE0RDtZQUN4RSxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkI7S0FDRjtDQUNGLENBQUM7QUFNRixNQUFNLE9BQU8sb0JBQW9COztrSEFBcEIsb0JBQW9CO21IQUFwQixvQkFBb0IsWUFIckIsWUFBWSw4QkFDWixZQUFZO21IQUVYLG9CQUFvQixZQUhyQixZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFDM0MsWUFBWTs0RkFFWCxvQkFBb0I7a0JBSmhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyTW9kdWxlLCBSb3V0ZXN9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7QXV0aEd1YXJkU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vc2VjdXJpdHknO1xuaW1wb3J0IHtEb3NzaWVyRGV0YWlsQ29tcG9uZW50fSBmcm9tICcuL2Rvc3NpZXItZGV0YWlsL2Rvc3NpZXItZGV0YWlsLmNvbXBvbmVudCc7XG5pbXBvcnQge0Rvc3NpZXJVcGRhdGVDb21wb25lbnR9IGZyb20gJy4vZG9zc2llci11cGRhdGUvZG9zc2llci11cGRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7Uk9MRV9VU0VSfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtEb3NzaWVyTGlzdENvbXBvbmVudH0gZnJvbSAnLi9kb3NzaWVyLWxpc3QvZG9zc2llci1saXN0LmNvbXBvbmVudCc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICB7XG4gICAgcGF0aDogJ2Rvc3NpZXJzLzpkb2N1bWVudERlZmluaXRpb25OYW1lJyxcbiAgICBjb21wb25lbnQ6IERvc3NpZXJMaXN0Q29tcG9uZW50LFxuICAgIGNhbkFjdGl2YXRlOiBbQXV0aEd1YXJkU2VydmljZV0sXG4gICAgZGF0YToge3RpdGxlOiAnRG9zc2llcnMnLCByb2xlczogW1JPTEVfVVNFUl19LFxuICB9LFxuICB7XG4gICAgcGF0aDogJ2Rvc3NpZXJzLzpkb2N1bWVudERlZmluaXRpb25OYW1lL2RvY3VtZW50Lzpkb2N1bWVudElkLzp0YWInLFxuICAgIGNvbXBvbmVudDogRG9zc2llckRldGFpbENvbXBvbmVudCxcbiAgICBjYW5BY3RpdmF0ZTogW0F1dGhHdWFyZFNlcnZpY2VdLFxuICAgIGRhdGE6IHt0aXRsZTogJ0Rvc3NpZXJzJywgcGFyZW50UGF0aDogJ2Rvc3NpZXJzLzpkb2N1bWVudERlZmluaXRpb25OYW1lJywgcm9sZXM6IFtST0xFX1VTRVJdfSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdkb3NzaWVycy86ZG9jdW1lbnREZWZpbml0aW9uTmFtZS9kb2N1bWVudC86ZG9jdW1lbnRJZC86dGFiL3Rhc2tzLzp0YXNrSWQnLFxuICAgIGNvbXBvbmVudDogRG9zc2llclVwZGF0ZUNvbXBvbmVudCxcbiAgICBjYW5BY3RpdmF0ZTogW0F1dGhHdWFyZFNlcnZpY2VdLFxuICAgIGRhdGE6IHtcbiAgICAgIHRpdGxlOiAnVGFzayBkZXRhaWxzJyxcbiAgICAgIHBhcmVudFBhdGg6ICdkb3NzaWVycy86ZG9jdW1lbnREZWZpbml0aW9uTmFtZS9kb2N1bWVudC86ZG9jdW1lbnRJZC86dGFiJyxcbiAgICAgIHJvbGVzOiBbUk9MRV9VU0VSXSxcbiAgICB9LFxuICB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llclJvdXRpbmdNb2R1bGUge31cbiJdfQ==
|