@valtimo/task 12.5.1 → 12.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/assign-user-to-task/assign-user-to-task.component.mjs +3 -3
- package/esm2022/lib/components/task-detail-content/task-detail-content.component.mjs +145 -73
- package/esm2022/lib/components/task-detail-intermediate-save/task-detail-intermediate-save.component.mjs +29 -5
- package/esm2022/lib/components/task-detail-modal/task-detail-modal.component.mjs +18 -3
- package/esm2022/lib/models/task.model.mjs +1 -1
- package/esm2022/lib/services/task-intermediate-save.service.mjs +6 -4
- package/esm2022/lib/services/task.service.mjs +1 -1
- package/esm2022/lib/task.module.mjs +2 -2
- package/fesm2022/valtimo-task.mjs +196 -83
- package/fesm2022/valtimo-task.mjs.map +1 -1
- package/lib/components/task-detail-content/task-detail-content.component.d.ts +22 -11
- package/lib/components/task-detail-content/task-detail-content.component.d.ts.map +1 -1
- package/lib/components/task-detail-intermediate-save/task-detail-intermediate-save.component.d.ts +4 -1
- package/lib/components/task-detail-intermediate-save/task-detail-intermediate-save.component.d.ts.map +1 -1
- package/lib/components/task-detail-modal/task-detail-modal.component.d.ts +6 -1
- package/lib/components/task-detail-modal/task-detail-modal.component.d.ts.map +1 -1
- package/lib/models/task.model.d.ts +1 -17
- package/lib/models/task.model.d.ts.map +1 -1
- package/lib/services/task-intermediate-save.service.d.ts +1 -1
- package/lib/services/task-intermediate-save.service.d.ts.map +1 -1
- package/lib/services/task.service.d.ts +2 -1
- package/lib/services/task.service.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -37,8 +37,7 @@ export class TaskDetailIntermediateSaveComponent {
|
|
|
37
37
|
.getTaskProcessLink(value.id)
|
|
38
38
|
.pipe(take(1))
|
|
39
39
|
.subscribe(res => {
|
|
40
|
-
|
|
41
|
-
this.formFlowInstanceId$.next(res.properties.formFlowInstanceId);
|
|
40
|
+
this.setFormFlow(res);
|
|
42
41
|
});
|
|
43
42
|
this.taskValue.set(value);
|
|
44
43
|
this.page.set({
|
|
@@ -47,6 +46,17 @@ export class TaskDetailIntermediateSaveComponent {
|
|
|
47
46
|
});
|
|
48
47
|
this.getCurrentProgress(value);
|
|
49
48
|
}
|
|
49
|
+
set taskAndProcessLink(value) {
|
|
50
|
+
if (!value)
|
|
51
|
+
return;
|
|
52
|
+
this.setFormFlow(value.processLinkActivityResult);
|
|
53
|
+
this.taskValue.set(value.task);
|
|
54
|
+
this.page.set({
|
|
55
|
+
title: value?.task.name,
|
|
56
|
+
subtitle: `${this.translateService.instant('taskDetail.taskCreated')} ${value?.task.created}`,
|
|
57
|
+
});
|
|
58
|
+
this.getCurrentProgress(value.task);
|
|
59
|
+
}
|
|
50
60
|
constructor(configService, iconService, translateService, taskIntermediateSaveService, taskService, toastr) {
|
|
51
61
|
this.configService = configService;
|
|
52
62
|
this.iconService = iconService;
|
|
@@ -105,6 +115,11 @@ export class TaskDetailIntermediateSaveComponent {
|
|
|
105
115
|
this.currentIntermediateSaveEvent.emit(this.currentIntermediateSave);
|
|
106
116
|
});
|
|
107
117
|
}
|
|
118
|
+
setFormFlow(processLink) {
|
|
119
|
+
if (processLink !== null && processLink.type === 'form-flow') {
|
|
120
|
+
this.formFlowInstanceId$.next(processLink.properties.formFlowInstanceId);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
108
123
|
formatIntermediateSubmission(intermediateSubmission) {
|
|
109
124
|
intermediateSubmission.createdOn = moment(intermediateSubmission.createdOn).format('DD MMM YYYY HH:mm');
|
|
110
125
|
if (intermediateSubmission.editedOn) {
|
|
@@ -117,11 +132,18 @@ export class TaskDetailIntermediateSaveComponent {
|
|
|
117
132
|
.getIntermediateSubmission(task.id ?? '')
|
|
118
133
|
.pipe(take(1))
|
|
119
134
|
.subscribe(intermediateSave => {
|
|
120
|
-
|
|
135
|
+
if (intermediateSave !== null) {
|
|
136
|
+
this.currentIntermediateSave = this.formatIntermediateSubmission(intermediateSave);
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
this.currentIntermediateSave = null;
|
|
140
|
+
this.taskIntermediateSaveService.setSubmission({});
|
|
141
|
+
}
|
|
142
|
+
this.currentIntermediateSaveEvent.emit(this.currentIntermediateSave);
|
|
121
143
|
});
|
|
122
144
|
}
|
|
123
145
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskDetailIntermediateSaveComponent, deps: [{ token: i1.ConfigService }, { token: i2.IconService }, { token: i3.TranslateService }, { token: i4.TaskIntermediateSaveService }, { token: i4.TaskService }, { token: i5.ToastrService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
124
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TaskDetailIntermediateSaveComponent, isStandalone: true, selector: "valtimo-task-detail-intermediate-save", inputs: { task: "task" }, outputs: { currentIntermediateSaveEvent: "currentIntermediateSaveEvent", showModalEvent: "showModalEvent" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n@if (intermediateSaveEnabled && (formFlowInstanceId$ | async) === undefined) {\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"save\"\n [vTooltip]=\"'formManagement.intermediateSave.save' | translate\"\n (click)=\"saveCurrentProgress()\"\n ></button>\n\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"recently-viewed\"\n [disabled]=\"!currentIntermediateSave\"\n [vTooltip]=\"'formManagement.intermediateSave.clear' | translate\"\n (click)=\"revertSaveClick()\"\n ></button>\n}\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showConfirmationModal$\"\n (confirmEvent)=\"clearCurrentProgress()\"\n (cancelEvent)=\"showConfirmationModal$.next(false)\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.confirm\"\n titleTranslationKey=\"formManagement.intermediateSave.clear\"\n contentTranslationKey=\"formManagement.intermediateSave.clearConfirm\"\n></valtimo-confirmation-modal>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: ModalModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i7.TooltipDirective, selector: "[vTooltip]", inputs: ["vTooltip", "onBottom", "tooltipDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
146
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TaskDetailIntermediateSaveComponent, isStandalone: true, selector: "valtimo-task-detail-intermediate-save", inputs: { task: "task", taskAndProcessLink: "taskAndProcessLink" }, outputs: { currentIntermediateSaveEvent: "currentIntermediateSaveEvent", showModalEvent: "showModalEvent" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n@if (intermediateSaveEnabled && (formFlowInstanceId$ | async) === undefined) {\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"save\"\n [vTooltip]=\"'formManagement.intermediateSave.save' | translate\"\n (click)=\"saveCurrentProgress()\"\n ></button>\n\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"recently-viewed\"\n [disabled]=\"!currentIntermediateSave\"\n [vTooltip]=\"'formManagement.intermediateSave.clear' | translate\"\n (click)=\"revertSaveClick()\"\n ></button>\n}\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showConfirmationModal$\"\n (confirmEvent)=\"clearCurrentProgress()\"\n (cancelEvent)=\"showConfirmationModal$.next(false)\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.confirm\"\n titleTranslationKey=\"formManagement.intermediateSave.clear\"\n contentTranslationKey=\"formManagement.intermediateSave.clearConfirm\"\n></valtimo-confirmation-modal>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: ModalModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i7.TooltipDirective, selector: "[vTooltip]", inputs: ["vTooltip", "onBottom", "tooltipDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
125
147
|
}
|
|
126
148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskDetailIntermediateSaveComponent, decorators: [{
|
|
127
149
|
type: Component,
|
|
@@ -136,9 +158,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
136
158
|
], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n@if (intermediateSaveEnabled && (formFlowInstanceId$ | async) === undefined) {\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"save\"\n [vTooltip]=\"'formManagement.intermediateSave.save' | translate\"\n (click)=\"saveCurrentProgress()\"\n ></button>\n\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n cdsIcon=\"recently-viewed\"\n [disabled]=\"!currentIntermediateSave\"\n [vTooltip]=\"'formManagement.intermediateSave.clear' | translate\"\n (click)=\"revertSaveClick()\"\n ></button>\n}\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showConfirmationModal$\"\n (confirmEvent)=\"clearCurrentProgress()\"\n (cancelEvent)=\"showConfirmationModal$.next(false)\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.confirm\"\n titleTranslationKey=\"formManagement.intermediateSave.clear\"\n contentTranslationKey=\"formManagement.intermediateSave.clearConfirm\"\n></valtimo-confirmation-modal>\n" }]
|
|
137
159
|
}], ctorParameters: () => [{ type: i1.ConfigService }, { type: i2.IconService }, { type: i3.TranslateService }, { type: i4.TaskIntermediateSaveService }, { type: i4.TaskService }, { type: i5.ToastrService }], propDecorators: { task: [{
|
|
138
160
|
type: Input
|
|
161
|
+
}], taskAndProcessLink: [{
|
|
162
|
+
type: Input
|
|
139
163
|
}], currentIntermediateSaveEvent: [{
|
|
140
164
|
type: Output
|
|
141
165
|
}], showModalEvent: [{
|
|
142
166
|
type: Output
|
|
143
167
|
}] } });
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1kZXRhaWwtaW50ZXJtZWRpYXRlLXNhdmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvY29tcG9uZW50cy90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL3Rhc2svc3JjL2xpYi9jb21wb25lbnRzL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsYUFBYSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0UsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQWUsV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0YsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQW1CckUsTUFBTSxPQUFPLG1DQUFtQztJQUM5QyxJQUFvQixJQUFJLENBQUMsS0FBa0I7UUFDekMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBQ25CLElBQUksQ0FBQyxXQUFXO2FBQ2Isa0JBQWtCLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssV0FBVztnQkFDMUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckUsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNaLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNqQixRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLHdCQUF3QixDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtTQUN4RixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQWlCRCxZQUNtQixhQUE0QixFQUM1QixXQUF3QixFQUN4QixnQkFBa0MsRUFDbEMsMkJBQXdELEVBQ3hELFdBQXdCLEVBQ3hCLE1BQXFCO1FBTHJCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQUN4RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBdEJkLGlDQUE0QixHQUNwRCxJQUFJLFlBQVksRUFBaUMsQ0FBQztRQUMxQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUMsd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQXFCLFNBQVMsQ0FBQyxDQUFDO1FBQ3pFLDJCQUFzQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRTdELGNBQVMsR0FBRyxNQUFNLENBQWMsSUFBSSxDQUFDLENBQUM7UUFDdEMsU0FBSSxHQUFHLE1BQU0sQ0FBMkMsSUFBSSxDQUFDLENBQUM7UUFDOUQsd0JBQW1CLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzdDLGdCQUFXLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBQztRQUMzRCxvQkFBZSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxlQUFlLENBQUM7UUFFNUUsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLDRCQUF1QixHQUFrQyxJQUFJLENBQUM7UUFVbkUsSUFBSSxDQUFDLHVCQUF1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQztRQUMzRixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQ3BELElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsRUFBRSxFQUFFO1lBQ3pDLE1BQU0sdUJBQXVCLEdBQTRCO2dCQUN2RCxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYztnQkFDL0QsY0FBYyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRTthQUMzQyxDQUFDO1lBRUYsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsMkJBQTJCLENBQ2pFLHVCQUF1QixDQUN4QixDQUFDO1FBQ0osQ0FBQyxDQUFDLEVBQ0YsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNSO2FBQ0EsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUNqQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxDQUFDLENBQ3pFLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUN6RixJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ3ZFLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxDQUFDO1lBQzVGLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLG9CQUFvQjtRQUN6QixJQUFJLENBQUMsMkJBQTJCO2FBQzdCLDJCQUEyQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO2FBQ3ZELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDYixTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDO1lBQ3BDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sNEJBQTRCLENBQ2xDLHNCQUE4QztRQUU5QyxzQkFBc0IsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FDaEYsbUJBQW1CLENBQ3BCLENBQUM7UUFDRixJQUFJLHNCQUFzQixDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3BDLHNCQUFzQixDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQ3hGLG1CQUFtQixDQUNwQixDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVU7UUFDbkMsSUFBSSxDQUFDLDJCQUEyQjthQUM3Qix5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLGdCQUFnQixDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JGLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0FySFUsbUNBQW1DO21HQUFuQyxtQ0FBbUMsd09DbERoRCw4bURBNENBLDJDREhJLFlBQVksbUZBQ1osZUFBZSwyRkFDZixZQUFZLGdNQUNaLHVCQUF1QiwrbEJBQ3ZCLFVBQVUsNE5BQ1YsV0FBVyw4QkFDWCxhQUFhOzs0RkFHSixtQ0FBbUM7a0JBZi9DLFNBQVM7K0JBQ0UsdUNBQXVDLG1CQUVoQyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLFVBQVU7d0JBQ1YsV0FBVzt3QkFDWCxhQUFhO3FCQUNkOzJPQUdtQixJQUFJO3NCQUF2QixLQUFLO2dCQWlCb0IsNEJBQTRCO3NCQUFyRCxNQUFNO2dCQUVtQixjQUFjO3NCQUF2QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSZWNlbnRseVZpZXdlZDE2fSBmcm9tICdAY2FyYm9uL2ljb25zJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Q29uZmlybWF0aW9uTW9kYWxNb2R1bGUsIFRvb2x0aXBNb2R1bGV9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtCdXR0b25Nb2R1bGUsIEljb25Nb2R1bGUsIEljb25TZXJ2aWNlLCBNb2RhbE1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIHN3aXRjaE1hcCwgdGFrZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0ludGVybWVkaWF0ZVNhdmVSZXF1ZXN0LCBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uLCBUYXNrfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtUYXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2UsIFRhc2tTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tdGFzay1kZXRhaWwtaW50ZXJtZWRpYXRlLXNhdmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFzay1kZXRhaWwtaW50ZXJtZWRpYXRlLXNhdmUuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgTW9kYWxNb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGFza0RldGFpbEludGVybWVkaWF0ZVNhdmVDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IHRhc2sodmFsdWU6IFRhc2sgfCBudWxsKSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuO1xuICAgIHRoaXMudGFza1NlcnZpY2VcbiAgICAgIC5nZXRUYXNrUHJvY2Vzc0xpbmsodmFsdWUuaWQpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICBpZiAocmVzICE9PSBudWxsICYmIHJlcy50eXBlID09PSAnZm9ybS1mbG93JylcbiAgICAgICAgICB0aGlzLmZvcm1GbG93SW5zdGFuY2VJZCQubmV4dChyZXMucHJvcGVydGllcy5mb3JtRmxvd0luc3RhbmNlSWQpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLnRhc2tWYWx1ZS5zZXQodmFsdWUpO1xuICAgIHRoaXMucGFnZS5zZXQoe1xuICAgICAgdGl0bGU6IHZhbHVlLm5hbWUsXG4gICAgICBzdWJ0aXRsZTogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tEZXRhaWwudGFza0NyZWF0ZWQnKX0gJHt2YWx1ZS5jcmVhdGVkfWAsXG4gICAgfSk7XG4gICAgdGhpcy5nZXRDdXJyZW50UHJvZ3Jlc3ModmFsdWUpO1xuICB9XG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudCA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHwgbnVsbD4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBzaG93TW9kYWxFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZm9ybUZsb3dJbnN0YW5jZUlkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwdWJsaWMgcmVhZG9ubHkgc2hvd0NvbmZpcm1hdGlvbk1vZGFsJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSB0YXNrVmFsdWUgPSBzaWduYWw8VGFzayB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgcmVhZG9ubHkgcGFnZSA9IHNpZ25hbDx7dGl0bGU6IHN0cmluZzsgc3VidGl0bGU6IHN0cmluZ30gfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IGNhbkFzc2lnblVzZXJUb1Rhc2sgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgc3VibWlzc2lvbiQgPSB0aGlzLnRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZS5zdWJtaXNzaW9uJDtcbiAgcHVibGljIHJlYWRvbmx5IGZvcm1Jb0Zvcm1EYXRhJCA9IHRoaXMudGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlLmZvcm1Jb0Zvcm1EYXRhJDtcblxuICBwdWJsaWMgaW50ZXJtZWRpYXRlU2F2ZUVuYWJsZWQgPSBmYWxzZTtcbiAgcHVibGljIGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlOiBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWNvblNlcnZpY2U6IEljb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZTogVGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFza1NlcnZpY2U6IFRhc2tTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaW50ZXJtZWRpYXRlU2F2ZUVuYWJsZWQgPSAhIXRoaXMuY29uZmlnU2VydmljZS5mZWF0dXJlVG9nZ2xlcz8uZW5hYmxlSW50ZXJtZWRpYXRlU2F2ZTtcbiAgICB0aGlzLmljb25TZXJ2aWNlLnJlZ2lzdGVyQWxsKFtSZWNlbnRseVZpZXdlZDE2XSk7XG4gIH1cblxuICBwdWJsaWMgc2F2ZUN1cnJlbnRQcm9ncmVzcygpOiB2b2lkIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnN1Ym1pc3Npb24kLCB0aGlzLmZvcm1Jb0Zvcm1EYXRhJF0pXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChbc3VibWlzc2lvbiwgZm9ybUlvRm9ybURhdGFdKSA9PiB7XG4gICAgICAgICAgY29uc3QgaW50ZXJtZWRpYXRlU2F2ZVJlcXVlc3Q6IEludGVybWVkaWF0ZVNhdmVSZXF1ZXN0ID0ge1xuICAgICAgICAgICAgc3VibWlzc2lvbjogc3VibWlzc2lvbj8uZGF0YSA/IHN1Ym1pc3Npb24uZGF0YSA6IGZvcm1Jb0Zvcm1EYXRhLFxuICAgICAgICAgICAgdGFza0luc3RhbmNlSWQ6IHRoaXMudGFza1ZhbHVlKCk/LmlkID8/ICcnLFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICByZXR1cm4gdGhpcy50YXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2Uuc3RvcmVJbnRlcm1lZGlhdGVTdWJtaXNzaW9uKFxuICAgICAgICAgICAgaW50ZXJtZWRpYXRlU2F2ZVJlcXVlc3RcbiAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZSgxKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IGludGVybWVkaWF0ZVN1Ym1pc3Npb24gPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RyLnN1Y2Nlc3MoXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZm9ybU1hbmFnZW1lbnQuaW50ZXJtZWRpYXRlU2F2ZS5zdWNjZXNzJylcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmUgPSB0aGlzLmZvcm1hdEludGVybWVkaWF0ZVN1Ym1pc3Npb24oaW50ZXJtZWRpYXRlU3VibWlzc2lvbik7XG4gICAgICAgICAgdGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZUV2ZW50LmVtaXQodGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgdGhpcy50b2FzdHIuZXJyb3IodGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2Zvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuZXJyb3InKSk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZXZlcnRTYXZlQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2hvd01vZGFsRXZlbnQub2JzZXJ2ZWQpIHtcbiAgICAgIHRoaXMuc2hvd01vZGFsRXZlbnQuZW1pdCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbk1vZGFsJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyQ3VycmVudFByb2dyZXNzKCk6IHZvaWQge1xuICAgIHRoaXMudGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlXG4gICAgICAuY2xlYXJJbnRlcm1lZGlhdGVTdWJtaXNzaW9uKHRoaXMudGFza1ZhbHVlKCk/LmlkID8/ICcnKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZS5zZXRTdWJtaXNzaW9uKHt9KTtcbiAgICAgICAgdGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSA9IG51bGw7XG4gICAgICAgIHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudC5lbWl0KHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmUpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdEludGVybWVkaWF0ZVN1Ym1pc3Npb24oXG4gICAgaW50ZXJtZWRpYXRlU3VibWlzc2lvbjogSW50ZXJtZWRpYXRlU3VibWlzc2lvblxuICApOiBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHtcbiAgICBpbnRlcm1lZGlhdGVTdWJtaXNzaW9uLmNyZWF0ZWRPbiA9IG1vbWVudChpbnRlcm1lZGlhdGVTdWJtaXNzaW9uLmNyZWF0ZWRPbikuZm9ybWF0KFxuICAgICAgJ0REIE1NTSBZWVlZIEhIOm1tJ1xuICAgICk7XG4gICAgaWYgKGludGVybWVkaWF0ZVN1Ym1pc3Npb24uZWRpdGVkT24pIHtcbiAgICAgIGludGVybWVkaWF0ZVN1Ym1pc3Npb24uZWRpdGVkT24gPSBtb21lbnQobmV3IERhdGUoaW50ZXJtZWRpYXRlU3VibWlzc2lvbi5lZGl0ZWRPbikpLmZvcm1hdChcbiAgICAgICAgJ0REIE1NTSBZWVlZIEhIOm1tJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaW50ZXJtZWRpYXRlU3VibWlzc2lvbjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q3VycmVudFByb2dyZXNzKHRhc2s6IFRhc2spOiB2b2lkIHtcbiAgICB0aGlzLnRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZVxuICAgICAgLmdldEludGVybWVkaWF0ZVN1Ym1pc3Npb24odGFzay5pZCA/PyAnJylcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKGludGVybWVkaWF0ZVNhdmUgPT4ge1xuICAgICAgICB0aGlzLmN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlID0gdGhpcy5mb3JtYXRJbnRlcm1lZGlhdGVTdWJtaXNzaW9uKGludGVybWVkaWF0ZVNhdmUpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuQGlmIChpbnRlcm1lZGlhdGVTYXZlRW5hYmxlZCAmJiAoZm9ybUZsb3dJbnN0YW5jZUlkJCB8IGFzeW5jKSA9PT0gdW5kZWZpbmVkKSB7XG4gIDxidXR0b25cbiAgICBjZHNCdXR0b249XCJnaG9zdFwiXG4gICAgaWNvbk9ubHk9XCJ0cnVlXCJcbiAgICBjZHNJY29uPVwic2F2ZVwiXG4gICAgW3ZUb29sdGlwXT1cIidmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLnNhdmUnIHwgdHJhbnNsYXRlXCJcbiAgICAoY2xpY2spPVwic2F2ZUN1cnJlbnRQcm9ncmVzcygpXCJcbiAgPjwvYnV0dG9uPlxuXG4gIDxidXR0b25cbiAgICBjZHNCdXR0b249XCJnaG9zdFwiXG4gICAgaWNvbk9ubHk9XCJ0cnVlXCJcbiAgICBjZHNJY29uPVwicmVjZW50bHktdmlld2VkXCJcbiAgICBbZGlzYWJsZWRdPVwiIWN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlXCJcbiAgICBbdlRvb2x0aXBdPVwiJ2Zvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuY2xlYXInIHwgdHJhbnNsYXRlXCJcbiAgICAoY2xpY2spPVwicmV2ZXJ0U2F2ZUNsaWNrKClcIlxuICA+PC9idXR0b24+XG59XG5cbjx2YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbFxuICBbc2hvd01vZGFsU3ViamVjdCRdPVwic2hvd0NvbmZpcm1hdGlvbk1vZGFsJFwiXG4gIChjb25maXJtRXZlbnQpPVwiY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKVwiXG4gIChjYW5jZWxFdmVudCk9XCJzaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQoZmFsc2UpXCJcbiAgY2FuY2VsQnV0dG9uVHlwZT1cImdob3N0XCJcbiAgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5jb25maXJtXCJcbiAgdGl0bGVUcmFuc2xhdGlvbktleT1cImZvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuY2xlYXJcIlxuICBjb250ZW50VHJhbnNsYXRpb25LZXk9XCJmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLmNsZWFyQ29uZmlybVwiXG4+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cbiJdfQ==
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1kZXRhaWwtaW50ZXJtZWRpYXRlLXNhdmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvY29tcG9uZW50cy90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL3Rhc2svc3JjL2xpYi9jb21wb25lbnRzL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsYUFBYSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0UsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQWUsV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0YsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQW9CckUsTUFBTSxPQUFPLG1DQUFtQztJQUM5QyxJQUFv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Z0JjLGtCQUFrQjtzQkFBckMsS0FBSztnQkFXb0IsNEJBQTRCO3NCQUFyRCxNQUFNO2dCQUVtQixjQUFjO3NCQUF2QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSZWNlbnRseVZpZXdlZDE2fSBmcm9tICdAY2FyYm9uL2ljb25zJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Q29uZmlybWF0aW9uTW9kYWxNb2R1bGUsIFRvb2x0aXBNb2R1bGV9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtCdXR0b25Nb2R1bGUsIEljb25Nb2R1bGUsIEljb25TZXJ2aWNlLCBNb2RhbE1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIHN3aXRjaE1hcCwgdGFrZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0ludGVybWVkaWF0ZVNhdmVSZXF1ZXN0LCBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uLCBUYXNrfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtUYXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2UsIFRhc2tTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQge1Rhc2tQcm9jZXNzTGlua1Jlc3VsdCwgVGFza1dpdGhQcm9jZXNzTGlua30gZnJvbSAnQHZhbHRpbW8vcHJvY2Vzcy1saW5rJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby10YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgQ29uZmlybWF0aW9uTW9kYWxNb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBNb2RhbE1vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUYXNrRGV0YWlsSW50ZXJtZWRpYXRlU2F2ZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgdGFzayh2YWx1ZTogVGFzayB8IG51bGwpIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm47XG4gICAgdGhpcy50YXNrU2VydmljZVxuICAgICAgLmdldFRhc2tQcm9jZXNzTGluayh2YWx1ZS5pZClcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMuc2V0Rm9ybUZsb3cocmVzKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy50YXNrVmFsdWUuc2V0KHZhbHVlKTtcbiAgICB0aGlzLnBhZ2Uuc2V0KHtcbiAgICAgIHRpdGxlOiB2YWx1ZS5uYW1lLFxuICAgICAgc3VidGl0bGU6IGAke3RoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd0YXNrRGV0YWlsLnRhc2tDcmVhdGVkJyl9ICR7dmFsdWUuY3JlYXRlZH1gLFxuICAgIH0pO1xuICAgIHRoaXMuZ2V0Q3VycmVudFByb2dyZXNzKHZhbHVlKTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHRhc2tBbmRQcm9jZXNzTGluayh2YWx1ZTogVGFza1dpdGhQcm9jZXNzTGluayB8IG51bGwpIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm47XG5cbiAgICB0aGlzLnNldEZvcm1GbG93KHZhbHVlLnByb2Nlc3NMaW5rQWN0aXZpdHlSZXN1bHQpO1xuICAgIHRoaXMudGFza1ZhbHVlLnNldCh2YWx1ZS50YXNrIGFzIGFueSk7XG4gICAgdGhpcy5wYWdlLnNldCh7XG4gICAgICB0aXRsZTogdmFsdWU/LnRhc2submFtZSxcbiAgICAgIHN1YnRpdGxlOiBgJHt0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndGFza0RldGFpbC50YXNrQ3JlYXRlZCcpfSAke3ZhbHVlPy50YXNrLmNyZWF0ZWR9YCxcbiAgICB9KTtcbiAgICB0aGlzLmdldEN1cnJlbnRQcm9ncmVzcyh2YWx1ZS50YXNrIGFzIGFueSk7XG4gIH1cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZUV2ZW50ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEludGVybWVkaWF0ZVN1Ym1pc3Npb24gfCBudWxsPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHNob3dNb2RhbEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBmb3JtRmxvd0luc3RhbmNlSWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHB1YmxpYyByZWFkb25seSBzaG93Q29uZmlybWF0aW9uTW9kYWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRhc2tWYWx1ZSA9IHNpZ25hbDxUYXNrIHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBwYWdlID0gc2lnbmFsPHt0aXRsZTogc3RyaW5nOyBzdWJ0aXRsZTogc3RyaW5nfSB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgcmVhZG9ubHkgY2FuQXNzaWduVXNlclRvVGFzayA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBzdWJtaXNzaW9uJCA9IHRoaXMudGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlLnN1Ym1pc3Npb24kO1xuICBwdWJsaWMgcmVhZG9ubHkgZm9ybUlvRm9ybURhdGEkID0gdGhpcy50YXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2UuZm9ybUlvRm9ybURhdGEkO1xuXG4gIHB1YmxpYyBpbnRlcm1lZGlhdGVTYXZlRW5hYmxlZCA9IGZhbHNlO1xuICBwdWJsaWMgY3VycmVudEludGVybWVkaWF0ZVNhdmU6IEludGVybWVkaWF0ZVN1Ym1pc3Npb24gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpY29uU2VydmljZTogSWNvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlOiBUYXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0YXNrU2VydmljZTogVGFza1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdHI6IFRvYXN0clNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pbnRlcm1lZGlhdGVTYXZlRW5hYmxlZCA9ICEhdGhpcy5jb25maWdTZXJ2aWNlLmZlYXR1cmVUb2dnbGVzPy5lbmFibGVJbnRlcm1lZGlhdGVTYXZlO1xuICAgIHRoaXMuaWNvblNlcnZpY2UucmVnaXN0ZXJBbGwoW1JlY2VudGx5Vmlld2VkMTZdKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlQ3VycmVudFByb2dyZXNzKCk6IHZvaWQge1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3VibWlzc2lvbiQsIHRoaXMuZm9ybUlvRm9ybURhdGEkXSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKFtzdWJtaXNzaW9uLCBmb3JtSW9Gb3JtRGF0YV0pID0+IHtcbiAgICAgICAgICBjb25zdCBpbnRlcm1lZGlhdGVTYXZlUmVxdWVzdDogSW50ZXJtZWRpYXRlU2F2ZVJlcXVlc3QgPSB7XG4gICAgICAgICAgICBzdWJtaXNzaW9uOiBzdWJtaXNzaW9uPy5kYXRhID8gc3VibWlzc2lvbi5kYXRhIDogZm9ybUlvRm9ybURhdGEsXG4gICAgICAgICAgICB0YXNrSW5zdGFuY2VJZDogdGhpcy50YXNrVmFsdWUoKT8uaWQgPz8gJycsXG4gICAgICAgICAgfTtcblxuICAgICAgICAgIHJldHVybiB0aGlzLnRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZS5zdG9yZUludGVybWVkaWF0ZVN1Ym1pc3Npb24oXG4gICAgICAgICAgICBpbnRlcm1lZGlhdGVTYXZlUmVxdWVzdFxuICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlKDEpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogaW50ZXJtZWRpYXRlU3VibWlzc2lvbiA9PiB7XG4gICAgICAgICAgdGhpcy50b2FzdHIuc3VjY2VzcyhcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLnN1Y2Nlc3MnKVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSA9IHRoaXMuZm9ybWF0SW50ZXJtZWRpYXRlU3VibWlzc2lvbihpbnRlcm1lZGlhdGVTdWJtaXNzaW9uKTtcbiAgICAgICAgICB0aGlzLmN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlRXZlbnQuZW1pdCh0aGlzLmN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLnRvYXN0ci5lcnJvcih0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZm9ybU1hbmFnZW1lbnQuaW50ZXJtZWRpYXRlU2F2ZS5lcnJvcicpKTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJldmVydFNhdmVDbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zaG93TW9kYWxFdmVudC5vYnNlcnZlZCkge1xuICAgICAgdGhpcy5zaG93TW9kYWxFdmVudC5lbWl0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKTogdm9pZCB7XG4gICAgdGhpcy50YXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2VcbiAgICAgIC5jbGVhckludGVybWVkaWF0ZVN1Ym1pc3Npb24odGhpcy50YXNrVmFsdWUoKT8uaWQgPz8gJycpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlLnNldFN1Ym1pc3Npb24oe30pO1xuICAgICAgICB0aGlzLmN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlID0gbnVsbDtcbiAgICAgICAgdGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZUV2ZW50LmVtaXQodGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Rm9ybUZsb3cocHJvY2Vzc0xpbms6IFRhc2tQcm9jZXNzTGlua1Jlc3VsdCk6IHZvaWQge1xuICAgIGlmIChwcm9jZXNzTGluayAhPT0gbnVsbCAmJiBwcm9jZXNzTGluay50eXBlID09PSAnZm9ybS1mbG93Jykge1xuICAgICAgdGhpcy5mb3JtRmxvd0luc3RhbmNlSWQkLm5leHQocHJvY2Vzc0xpbmsucHJvcGVydGllcy5mb3JtRmxvd0luc3RhbmNlSWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0SW50ZXJtZWRpYXRlU3VibWlzc2lvbihcbiAgICBpbnRlcm1lZGlhdGVTdWJtaXNzaW9uOiBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uXG4gICk6IEludGVybWVkaWF0ZVN1Ym1pc3Npb24ge1xuICAgIGludGVybWVkaWF0ZVN1Ym1pc3Npb24uY3JlYXRlZE9uID0gbW9tZW50KGludGVybWVkaWF0ZVN1Ym1pc3Npb24uY3JlYXRlZE9uKS5mb3JtYXQoXG4gICAgICAnREQgTU1NIFlZWVkgSEg6bW0nXG4gICAgKTtcbiAgICBpZiAoaW50ZXJtZWRpYXRlU3VibWlzc2lvbi5lZGl0ZWRPbikge1xuICAgICAgaW50ZXJtZWRpYXRlU3VibWlzc2lvbi5lZGl0ZWRPbiA9IG1vbWVudChuZXcgRGF0ZShpbnRlcm1lZGlhdGVTdWJtaXNzaW9uLmVkaXRlZE9uKSkuZm9ybWF0KFxuICAgICAgICAnREQgTU1NIFlZWVkgSEg6bW0nXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBpbnRlcm1lZGlhdGVTdWJtaXNzaW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50UHJvZ3Jlc3ModGFzazogVGFzayk6IHZvaWQge1xuICAgIHRoaXMudGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlXG4gICAgICAuZ2V0SW50ZXJtZWRpYXRlU3VibWlzc2lvbih0YXNrLmlkID8/ICcnKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoaW50ZXJtZWRpYXRlU2F2ZSA9PiB7XG4gICAgICAgIGlmIChpbnRlcm1lZGlhdGVTYXZlICE9PSBudWxsKSB7XG4gICAgICAgICAgdGhpcy5jdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSA9IHRoaXMuZm9ybWF0SW50ZXJtZWRpYXRlU3VibWlzc2lvbihpbnRlcm1lZGlhdGVTYXZlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZS5zZXRTdWJtaXNzaW9uKHt9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudC5lbWl0KHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmUpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuQGlmIChpbnRlcm1lZGlhdGVTYXZlRW5hYmxlZCAmJiAoZm9ybUZsb3dJbnN0YW5jZUlkJCB8IGFzeW5jKSA9PT0gdW5kZWZpbmVkKSB7XG4gIDxidXR0b25cbiAgICBjZHNCdXR0b249XCJnaG9zdFwiXG4gICAgaWNvbk9ubHk9XCJ0cnVlXCJcbiAgICBjZHNJY29uPVwic2F2ZVwiXG4gICAgW3ZUb29sdGlwXT1cIidmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLnNhdmUnIHwgdHJhbnNsYXRlXCJcbiAgICAoY2xpY2spPVwic2F2ZUN1cnJlbnRQcm9ncmVzcygpXCJcbiAgPjwvYnV0dG9uPlxuXG4gIDxidXR0b25cbiAgICBjZHNCdXR0b249XCJnaG9zdFwiXG4gICAgaWNvbk9ubHk9XCJ0cnVlXCJcbiAgICBjZHNJY29uPVwicmVjZW50bHktdmlld2VkXCJcbiAgICBbZGlzYWJsZWRdPVwiIWN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlXCJcbiAgICBbdlRvb2x0aXBdPVwiJ2Zvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuY2xlYXInIHwgdHJhbnNsYXRlXCJcbiAgICAoY2xpY2spPVwicmV2ZXJ0U2F2ZUNsaWNrKClcIlxuICA+PC9idXR0b24+XG59XG5cbjx2YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbFxuICBbc2hvd01vZGFsU3ViamVjdCRdPVwic2hvd0NvbmZpcm1hdGlvbk1vZGFsJFwiXG4gIChjb25maXJtRXZlbnQpPVwiY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKVwiXG4gIChjYW5jZWxFdmVudCk9XCJzaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQoZmFsc2UpXCJcbiAgY2FuY2VsQnV0dG9uVHlwZT1cImdob3N0XCJcbiAgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5jb25maXJtXCJcbiAgdGl0bGVUcmFuc2xhdGlvbktleT1cImZvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuY2xlYXJcIlxuICBjb250ZW50VHJhbnNsYXRpb25LZXk9XCJmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLmNsZWFyQ29uZmlybVwiXG4+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cbiJdfQ==
|
|
@@ -46,12 +46,16 @@ export class TaskDetailModalComponent {
|
|
|
46
46
|
this.formSubmit = new EventEmitter();
|
|
47
47
|
this.assignmentOfTaskChanged = new EventEmitter();
|
|
48
48
|
this.currentIntermediateSave$ = new BehaviorSubject(null);
|
|
49
|
+
this.processLinkPreloaded$ = new BehaviorSubject(false);
|
|
49
50
|
this.task$ = new BehaviorSubject(null);
|
|
51
|
+
this.taskAndProcessLink$ = new BehaviorSubject(null);
|
|
52
|
+
this.task = new BehaviorSubject(null);
|
|
50
53
|
this.submission$ = new BehaviorSubject({});
|
|
51
54
|
this.page$ = new BehaviorSubject(null);
|
|
52
55
|
this.showConfirmationModal$ = new BehaviorSubject(false);
|
|
53
56
|
this.size$ = new BehaviorSubject('md');
|
|
54
57
|
this.canAssignUserToTask$ = new BehaviorSubject(false);
|
|
58
|
+
this.modalCloseEvent$ = new BehaviorSubject(false);
|
|
55
59
|
this._subscriptions = new Subscription();
|
|
56
60
|
}
|
|
57
61
|
ngOnInit() {
|
|
@@ -84,6 +88,16 @@ export class TaskDetailModalComponent {
|
|
|
84
88
|
});
|
|
85
89
|
this.openModal();
|
|
86
90
|
}
|
|
91
|
+
openTaskAndProcessLinkDetails(taskWithProcessLink) {
|
|
92
|
+
this.processLinkPreloaded$.next(true);
|
|
93
|
+
this.taskAndProcessLink$.next(taskWithProcessLink);
|
|
94
|
+
this.task$.next({ ...taskWithProcessLink.task });
|
|
95
|
+
this.page$.next({
|
|
96
|
+
title: taskWithProcessLink.task?.name,
|
|
97
|
+
subtitle: `${this.translateService.instant('taskDetail.taskCreated')} ${taskWithProcessLink.task?.created}`,
|
|
98
|
+
});
|
|
99
|
+
this.openModal();
|
|
100
|
+
}
|
|
87
101
|
gotoProcessLinkScreen() {
|
|
88
102
|
this.closeModal();
|
|
89
103
|
this.router.navigate(['process-links']);
|
|
@@ -100,16 +114,17 @@ export class TaskDetailModalComponent {
|
|
|
100
114
|
closeModal() {
|
|
101
115
|
this._modal.open = false;
|
|
102
116
|
this.taskIntermediateSaveService.setSubmission({});
|
|
117
|
+
this.modalCloseEvent$.next(!this.modalCloseEvent$.getValue());
|
|
103
118
|
}
|
|
104
119
|
openModal() {
|
|
105
120
|
this._modal.open = true;
|
|
106
121
|
}
|
|
107
122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskDetailModalComponent, deps: [{ token: i1.Router }, { token: i2.TranslateService }, { token: i3.PermissionService }, { token: i4.NGXLogger }, { token: i5.TaskIntermediateSaveService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
108
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
123
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TaskDetailModalComponent, selector: "valtimo-task-detail-modal", inputs: { modalSize: "modalSize" }, outputs: { formSubmit: "formSubmit", assignmentOfTaskChanged: "assignmentOfTaskChanged" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["taskDetailModal"], descendants: true }, { propertyName: "_intermediateSaveComponent", first: true, predicate: TaskDetailIntermediateSaveComponent, descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal #taskDetailModal id=\"taskDetailModal\" [size]=\"size$ | async\">\n <cds-modal-header (closeSelect)=\"closeModal()\">\n <div class=\"title-container\">\n <p class=\"cds--modal-header__heading cds--type-beta\">{{ (page$ | async)?.title }}</p>\n\n <p class=\"cds--modal-header__label cds--type-delta\">{{ (page$ | async)?.subtitle }}</p>\n\n <p\n class=\"cds--modal-header__label cds--type-delta\"\n *ngIf=\"currentIntermediateSave$ | async as currentIntermediateSave\"\n >\n {{ 'formManagement.intermediateSave.lastSavedBy' | translate }}:\n\n {{\n currentIntermediateSave?.editedBy\n ? currentIntermediateSave?.editedBy\n : currentIntermediateSave.createdBy\n }}\n\n {{ 'formManagement.intermediateSave.on' | translate }}:\n\n {{\n currentIntermediateSave?.editedOn\n ? currentIntermediateSave?.editedOn\n : currentIntermediateSave.createdOn\n }}\n </p>\n\n <ng-container *ngTemplateOutlet=\"assignUserToTask\"></ng-container>\n </div>\n\n @if (processLinkPreloaded$ | async) {\n <valtimo-task-detail-intermediate-save\n class=\"save-buttons-margin\"\n [taskAndProcessLink]=\"taskAndProcessLink$ | async\"\n (currentIntermediateSaveEvent)=\"onCurrentIntermediateSaveEvent($event)\"\n (showModalEvent)=\"onShowModalEvent()\"\n ></valtimo-task-detail-intermediate-save>\n } @else {\n <valtimo-task-detail-intermediate-save\n class=\"save-buttons-margin\"\n [task]=\"task$ | async\"\n (currentIntermediateSaveEvent)=\"onCurrentIntermediateSaveEvent($event)\"\n (showModalEvent)=\"onShowModalEvent()\"\n ></valtimo-task-detail-intermediate-save>\n }\n </cds-modal-header>\n\n <div body class=\"cds--modal-content pb-1\">\n @if (processLinkPreloaded$ | async) {\n <valtimo-task-detail-content\n [taskAndProcessLink]=\"taskAndProcessLink$ | async\"\n [modalClosed]=\"modalCloseEvent$ | async\"\n (formSubmit)=\"onFormSubmit()\"\n (closeModalEvent)=\"closeModal()\"\n ></valtimo-task-detail-content>\n } @else {\n <valtimo-task-detail-content\n [task]=\"task$ | async\"\n [modalClosed]=\"modalCloseEvent$ | async\"\n (formSubmit)=\"onFormSubmit()\"\n (closeModalEvent)=\"closeModal()\"\n ></valtimo-task-detail-content>\n }\n </div>\n</cds-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showConfirmationModal$\"\n (confirmEvent)=\"clearCurrentProgress()\"\n (cancelEvent)=\"showConfirmationModal$.next(false)\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.confirm\"\n titleTranslationKey=\"formManagement.intermediateSave.clear\"\n contentTranslationKey=\"formManagement.intermediateSave.clearConfirm\"\n></valtimo-confirmation-modal>\n\n<ng-template #assignUserToTask>\n <ng-container\n *ngIf=\"{\n task: task$ | async,\n canAssignUserToTask: canAssignUserToTask$ | async,\n } as obs\"\n >\n <valtimo-assign-user-to-task\n *ngIf=\"obs.task && obs.canAssignUserToTask && assignmentOfTaskChanged\"\n [taskId]=\"obs.task.id\"\n [assigneeId]=\"obs.task.assignee\"\n (assignmentOfTaskChanged)=\"assignmentOfTaskChanged.emit()\"\n ></valtimo-assign-user-to-task>\n </ng-container>\n</ng-template>\n", styles: ["#taskDetailModal .formio-component-submit{text-align:right}cds-modal-header .cds--modal-header{display:flex;justify-content:space-between}.save-buttons-margin{margin-top:-15px}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i7.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i7.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i8.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i9.AssignUserToTaskComponent, selector: "valtimo-assign-user-to-task", inputs: ["taskId", "assigneeId"], outputs: ["assignmentOfTaskChanged"] }, { kind: "component", type: i10.TaskDetailContentComponent, selector: "valtimo-task-detail-content", inputs: ["task", "taskAndProcessLink", "modalClosed"], outputs: ["closeModalEvent", "formSubmit", "activeChange"] }, { kind: "component", type: i11.TaskDetailIntermediateSaveComponent, selector: "valtimo-task-detail-intermediate-save", inputs: ["task", "taskAndProcessLink"], outputs: ["currentIntermediateSaveEvent", "showModalEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
109
124
|
}
|
|
110
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskDetailModalComponent, decorators: [{
|
|
111
126
|
type: Component,
|
|
112
|
-
args: [{ selector: 'valtimo-task-detail-modal', encapsulation: ViewEncapsulation.None, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal #taskDetailModal id=\"taskDetailModal\" [size]=\"size$ | async\">\n <cds-modal-header (closeSelect)=\"closeModal()\">\n <div class=\"title-container\">\n <p class=\"cds--modal-header__heading cds--type-beta\">{{ (page$ | async)?.title }}</p>\n\n <p class=\"cds--modal-header__label cds--type-delta\">{{ (page$ | async)?.subtitle }}</p>\n\n <p\n class=\"cds--modal-header__label cds--type-delta\"\n *ngIf=\"currentIntermediateSave$ | async as currentIntermediateSave\"\n >\n {{ 'formManagement.intermediateSave.lastSavedBy' | translate }}:\n\n {{\n currentIntermediateSave?.editedBy\n ? currentIntermediateSave?.editedBy\n : currentIntermediateSave.createdBy\n }}\n\n {{ 'formManagement.intermediateSave.on' | translate }}:\n\n {{\n currentIntermediateSave?.editedOn\n ? currentIntermediateSave?.editedOn\n : currentIntermediateSave.createdOn\n }}\n </p>\n\n <ng-container *ngTemplateOutlet=\"assignUserToTask\"></ng-container>\n </div>\n\n <valtimo-task-detail-intermediate-save\n class=\"save-buttons-margin\"\n
|
|
127
|
+
args: [{ selector: 'valtimo-task-detail-modal', encapsulation: ViewEncapsulation.None, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<cds-modal #taskDetailModal id=\"taskDetailModal\" [size]=\"size$ | async\">\n <cds-modal-header (closeSelect)=\"closeModal()\">\n <div class=\"title-container\">\n <p class=\"cds--modal-header__heading cds--type-beta\">{{ (page$ | async)?.title }}</p>\n\n <p class=\"cds--modal-header__label cds--type-delta\">{{ (page$ | async)?.subtitle }}</p>\n\n <p\n class=\"cds--modal-header__label cds--type-delta\"\n *ngIf=\"currentIntermediateSave$ | async as currentIntermediateSave\"\n >\n {{ 'formManagement.intermediateSave.lastSavedBy' | translate }}:\n\n {{\n currentIntermediateSave?.editedBy\n ? currentIntermediateSave?.editedBy\n : currentIntermediateSave.createdBy\n }}\n\n {{ 'formManagement.intermediateSave.on' | translate }}:\n\n {{\n currentIntermediateSave?.editedOn\n ? currentIntermediateSave?.editedOn\n : currentIntermediateSave.createdOn\n }}\n </p>\n\n <ng-container *ngTemplateOutlet=\"assignUserToTask\"></ng-container>\n </div>\n\n @if (processLinkPreloaded$ | async) {\n <valtimo-task-detail-intermediate-save\n class=\"save-buttons-margin\"\n [taskAndProcessLink]=\"taskAndProcessLink$ | async\"\n (currentIntermediateSaveEvent)=\"onCurrentIntermediateSaveEvent($event)\"\n (showModalEvent)=\"onShowModalEvent()\"\n ></valtimo-task-detail-intermediate-save>\n } @else {\n <valtimo-task-detail-intermediate-save\n class=\"save-buttons-margin\"\n [task]=\"task$ | async\"\n (currentIntermediateSaveEvent)=\"onCurrentIntermediateSaveEvent($event)\"\n (showModalEvent)=\"onShowModalEvent()\"\n ></valtimo-task-detail-intermediate-save>\n }\n </cds-modal-header>\n\n <div body class=\"cds--modal-content pb-1\">\n @if (processLinkPreloaded$ | async) {\n <valtimo-task-detail-content\n [taskAndProcessLink]=\"taskAndProcessLink$ | async\"\n [modalClosed]=\"modalCloseEvent$ | async\"\n (formSubmit)=\"onFormSubmit()\"\n (closeModalEvent)=\"closeModal()\"\n ></valtimo-task-detail-content>\n } @else {\n <valtimo-task-detail-content\n [task]=\"task$ | async\"\n [modalClosed]=\"modalCloseEvent$ | async\"\n (formSubmit)=\"onFormSubmit()\"\n (closeModalEvent)=\"closeModal()\"\n ></valtimo-task-detail-content>\n }\n </div>\n</cds-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showConfirmationModal$\"\n (confirmEvent)=\"clearCurrentProgress()\"\n (cancelEvent)=\"showConfirmationModal$.next(false)\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.confirm\"\n titleTranslationKey=\"formManagement.intermediateSave.clear\"\n contentTranslationKey=\"formManagement.intermediateSave.clearConfirm\"\n></valtimo-confirmation-modal>\n\n<ng-template #assignUserToTask>\n <ng-container\n *ngIf=\"{\n task: task$ | async,\n canAssignUserToTask: canAssignUserToTask$ | async,\n } as obs\"\n >\n <valtimo-assign-user-to-task\n *ngIf=\"obs.task && obs.canAssignUserToTask && assignmentOfTaskChanged\"\n [taskId]=\"obs.task.id\"\n [assigneeId]=\"obs.task.assignee\"\n (assignmentOfTaskChanged)=\"assignmentOfTaskChanged.emit()\"\n ></valtimo-assign-user-to-task>\n </ng-container>\n</ng-template>\n", styles: ["#taskDetailModal .formio-component-submit{text-align:right}cds-modal-header .cds--modal-header{display:flex;justify-content:space-between}.save-buttons-margin{margin-top:-15px}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
113
128
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.TranslateService }, { type: i3.PermissionService }, { type: i4.NGXLogger }, { type: i5.TaskIntermediateSaveService }], propDecorators: { _modal: [{
|
|
114
129
|
type: ViewChild,
|
|
115
130
|
args: ['taskDetailModal']
|
|
@@ -123,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
123
138
|
}], modalSize: [{
|
|
124
139
|
type: Input
|
|
125
140
|
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1kZXRhaWwtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvY29tcG9uZW50cy90YXNrLWRldGFpbC1tb2RhbC90YXNrLWRldGFpbC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL3Rhc2svc3JjL2xpYi9jb21wb25lbnRzL3Rhc2stZGV0YWlsLW1vZGFsL3Rhc2stZGV0YWlsLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBVyw0QkFBNEIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTdFLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUMsZUFBZSxFQUFFLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUduRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUUsK0JBQStCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRyxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSwwRUFBMEUsQ0FBQzs7Ozs7Ozs7Ozs7OztBQUU3SCxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFRckQsTUFBTSxPQUFPLHdCQUF3QjtJQVFuQyxJQUFhLFNBQVMsQ0FBQyxLQUFlO1FBQ3BDLElBQUksS0FBSztZQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFD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SSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsMkJBQTJCLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7K0dBNUZVLHdCQUF3QjttR0FBeEIsd0JBQXdCLHdWQUV4QixtQ0FBbUMsZ0RDaERoRCwwc0dBeUZBOzs0RkQzQ2Esd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLDJCQUEyQixpQkFHdEIsaUJBQWlCLENBQUMsSUFBSTs0TUFHVSxNQUFNO3NCQUFwRCxTQUFTO3VCQUFDLGlCQUFpQjtnQkFFWCwwQkFBMEI7c0JBRDFDLFNBQVM7dUJBQUMsbUNBQW1DO2dCQUdwQyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFFTSxTQUFTO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtQZXJtaXNzaW9uU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vYWNjZXNzLWNvbnRyb2wnO1xuaW1wb3J0IHtDYXJib25Nb2RhbFNpemV9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtGb3JtU2l6ZSwgZm9ybVNpemVUb0NhcmJvbk1vZGFsU2l6ZU1hcH0gZnJvbSAnQHZhbHRpbW8vcHJvY2Vzcy1saW5rJztcbmltcG9ydCB7TW9kYWx9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtOR1hMb2dnZXJ9IGZyb20gJ25neC1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0ludGVybWVkaWF0ZVN1Ym1pc3Npb24sIFRhc2t9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1Rhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtDQU5fQVNTSUdOX1RBU0tfUEVSTUlTU0lPTiwgVEFTS19ERVRBSUxfUEVSTUlTU0lPTl9SRVNPVVJDRX0gZnJvbSAnLi4vLi4vdGFzay1wZXJtaXNzaW9ucyc7XG5pbXBvcnQge1Rhc2tEZXRhaWxJbnRlcm1lZGlhdGVTYXZlQ29tcG9uZW50fSBmcm9tICcuLi90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS5jb21wb25lbnQnO1xuXG5tb21lbnQubG9jYWxlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nS2V5JykgfHwgJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXRhc2stZGV0YWlsLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rhc2stZGV0YWlsLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFzay1kZXRhaWwtbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVGFza0RldGFpbE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgndGFza0RldGFpbE1vZGFsJykgcHJpdmF0ZSByZWFkb25seSBfbW9kYWw6IE1vZGFsO1xuICBAVmlld0NoaWxkKFRhc2tEZXRhaWxJbnRlcm1lZGlhdGVTYXZlQ29tcG9uZW50KVxuICBwcml2YXRlIHJlYWRvbmx5IF9pbnRlcm1lZGlhdGVTYXZlQ29tcG9uZW50OiBUYXNrRGV0YWlsSW50ZXJtZWRpYXRlU2F2ZUNvbXBvbmVudDtcblxuICBAT3V0cHV0KCkgZm9ybVN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGFzc2lnbm1lbnRPZlRhc2tDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBJbnB1dCgpIHNldCBtb2RhbFNpemUodmFsdWU6IEZvcm1TaXplKSB7XG4gICAgaWYgKHZhbHVlKSB0aGlzLnNpemUkLm5leHQoZm9ybVNpemVUb0NhcmJvbk1vZGFsU2l6ZU1hcFt2YWx1ZV0pO1xuICB9XG5cbiAgcHVibGljIGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SW50ZXJtZWRpYXRlU3VibWlzc2lvbiB8IG51bGw+KG51bGwpO1xuXG4gIHB1YmxpYyByZWFkb25seSB0YXNrJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGFzayB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgcmVhZG9ubHkgc3VibWlzc2lvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4oe30pO1xuICBwdWJsaWMgcmVhZG9ubHkgcGFnZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBzaG93Q29uZmlybWF0aW9uTW9kYWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDYXJib25Nb2RhbFNpemU+KCdtZCcpO1xuXG4gIHB1YmxpYyByZWFkb25seSBjYW5Bc3NpZ25Vc2VyVG9UYXNrJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IE5HWExvZ2dlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZTogVGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnRhc2skLnN1YnNjcmliZSh0YXNrID0+IHtcbiAgICAgICAgaWYgKHRhc2spIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2hlY2tpbmcgaWYgdXNlciBhbGxvd2VkIHRvIGFzc2lnbiBhIHVzZXIgdG8gVGFzayB3aXRoIGlkOicsIHRhc2suaWQpO1xuICAgICAgICAgIHRoaXMucGVybWlzc2lvblNlcnZpY2VcbiAgICAgICAgICAgIC5yZXF1ZXN0UGVybWlzc2lvbihDQU5fQVNTSUdOX1RBU0tfUEVSTUlTU0lPTiwge1xuICAgICAgICAgICAgICByZXNvdXJjZTogVEFTS19ERVRBSUxfUEVSTUlTU0lPTl9SRVNPVVJDRS50YXNrLFxuICAgICAgICAgICAgICBpZGVudGlmaWVyOiB0YXNrLmlkLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGFsbG93ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5jYW5Bc3NpZ25Vc2VyVG9UYXNrJC5uZXh0KGFsbG93ZWQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ1Jlc2V0IGlzIHVzZXIgYWxsb3dlZCB0byBhc3NpZ24gYSB1c2VyIHRvIFRhc2sgYXMgdGFzayBpcyBudWxsJyk7XG4gICAgICAgICAgdGhpcy5jYW5Bc3NpZ25Vc2VyVG9UYXNrJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGNsZWFyQ3VycmVudFByb2dyZXNzKCk6IHZvaWQge1xuICAgIHRoaXMuX2ludGVybWVkaWF0ZVNhdmVDb21wb25lbnQuY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuVGFza0RldGFpbHModGFzazogVGFzayB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnRhc2skLm5leHQoey4uLnRhc2t9KTtcbiAgICB0aGlzLnBhZ2UkLm5leHQoe1xuICAgICAgdGl0bGU6IHRhc2s/Lm5hbWUsXG4gICAgICBzdWJ0aXRsZTogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tEZXRhaWwudGFza0NyZWF0ZWQnKX0gJHt0YXNrPy5jcmVhdGVkfWAsXG4gICAgfSk7XG5cbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgcHVibGljIGdvdG9Qcm9jZXNzTGlua1NjcmVlbigpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlTW9kYWwoKTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3Byb2Nlc3MtbGlua3MnXSk7XG4gIH1cblxuICBwdWJsaWMgb25DdXJyZW50SW50ZXJtZWRpYXRlU2F2ZUV2ZW50KHZhbHVlOiBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHwgbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmUkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG9uRm9ybVN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1TdWJtaXQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uU2hvd01vZGFsRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VNb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tb2RhbC5vcGVuID0gZmFsc2U7XG4gICAgdGhpcy50YXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2Uuc2V0U3VibWlzc2lvbih7fSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5Nb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tb2RhbC5vcGVuID0gdHJ1ZTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48Y2RzLW1vZGFsICN0YXNrRGV0YWlsTW9kYWwgaWQ9XCJ0YXNrRGV0YWlsTW9kYWxcIiBbc2l6ZV09XCJzaXplJCB8IGFzeW5jXCI+XG4gIDxjZHMtbW9kYWwtaGVhZGVyIChjbG9zZVNlbGVjdCk9XCJjbG9zZU1vZGFsKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGUtY29udGFpbmVyXCI+XG4gICAgICA8cCBjbGFzcz1cImNkcy0tbW9kYWwtaGVhZGVyX19oZWFkaW5nIGNkcy0tdHlwZS1iZXRhXCI+e3sgKHBhZ2UkIHwgYXN5bmMpPy50aXRsZSB9fTwvcD5cblxuICAgICAgPHAgY2xhc3M9XCJjZHMtLW1vZGFsLWhlYWRlcl9fbGFiZWwgY2RzLS10eXBlLWRlbHRhXCI+e3sgKHBhZ2UkIHwgYXN5bmMpPy5zdWJ0aXRsZSB9fTwvcD5cblxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJjZHMtLW1vZGFsLWhlYWRlcl9fbGFiZWwgY2RzLS10eXBlLWRlbHRhXCJcbiAgICAgICAgKm5nSWY9XCJjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZSQgfCBhc3luYyBhcyBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLmxhc3RTYXZlZEJ5JyB8IHRyYW5zbGF0ZSB9fTpcblxuICAgICAgICB7e1xuICAgICAgICAgIGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlPy5lZGl0ZWRCeVxuICAgICAgICAgICAgPyBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZT8uZWRpdGVkQnlcbiAgICAgICAgICAgIDogY3VycmVudEludGVybWVkaWF0ZVNhdmUuY3JlYXRlZEJ5XG4gICAgICAgIH19XG5cbiAgICAgICAge3sgJ2Zvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUub24nIHwgdHJhbnNsYXRlIH19OlxuXG4gICAgICAgIHt7XG4gICAgICAgICAgY3VycmVudEludGVybWVkaWF0ZVNhdmU/LmVkaXRlZE9uXG4gICAgICAgICAgICA/IGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlPy5lZGl0ZWRPblxuICAgICAgICAgICAgOiBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZS5jcmVhdGVkT25cbiAgICAgICAgfX1cbiAgICAgIDwvcD5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFzc2lnblVzZXJUb1Rhc2tcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDx2YWx0aW1vLXRhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlXG4gICAgICBjbGFzcz1cInNhdmUtYnV0dG9ucy1tYXJnaW5cIlxuICAgICAgW3Rhc2tdPVwidGFzayQgfCBhc3luY1wiXG4gICAgICAoY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudCk9XCJvbkN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlRXZlbnQoJGV2ZW50KVwiXG4gICAgICAoc2hvd01vZGFsRXZlbnQpPVwib25TaG93TW9kYWxFdmVudCgpXCJcbiAgICA+PC92YWx0aW1vLXRhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlPlxuICA8L2Nkcy1tb2RhbC1oZWFkZXI+XG5cbiAgPGRpdiBib2R5IGNsYXNzPVwiY2RzLS1tb2RhbC1jb250ZW50IHBiLTFcIj5cbiAgICA8dmFsdGltby10YXNrLWRldGFpbC1jb250ZW50XG4gICAgICBbdGFza109XCJ0YXNrJCB8IGFzeW5jXCJcbiAgICAgIChmb3JtU3VibWl0KT1cIm9uRm9ybVN1Ym1pdCgpXCJcbiAgICAgIChjbG9zZU1vZGFsRXZlbnQpPVwiY2xvc2VNb2RhbCgpXCJcbiAgICA+PC92YWx0aW1vLXRhc2stZGV0YWlsLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9jZHMtbW9kYWw+XG5cbjx2YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbFxuICBbc2hvd01vZGFsU3ViamVjdCRdPVwic2hvd0NvbmZpcm1hdGlvbk1vZGFsJFwiXG4gIChjb25maXJtRXZlbnQpPVwiY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKVwiXG4gIChjYW5jZWxFdmVudCk9XCJzaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQoZmFsc2UpXCJcbiAgY2FuY2VsQnV0dG9uVHlwZT1cImdob3N0XCJcbiAgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5jb25maXJtXCJcbiAgdGl0bGVUcmFuc2xhdGlvbktleT1cImZvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUuY2xlYXJcIlxuICBjb250ZW50VHJhbnNsYXRpb25LZXk9XCJmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLmNsZWFyQ29uZmlybVwiXG4+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cblxuPG5nLXRlbXBsYXRlICNhc3NpZ25Vc2VyVG9UYXNrPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJ7XG4gICAgICB0YXNrOiB0YXNrJCB8IGFzeW5jLFxuICAgICAgY2FuQXNzaWduVXNlclRvVGFzazogY2FuQXNzaWduVXNlclRvVGFzayQgfCBhc3luYyxcbiAgICB9IGFzIG9ic1wiXG4gID5cbiAgICA8dmFsdGltby1hc3NpZ24tdXNlci10by10YXNrXG4gICAgICAqbmdJZj1cIm9icy50YXNrICYmIG9icy5jYW5Bc3NpZ25Vc2VyVG9UYXNrICYmIGFzc2lnbm1lbnRPZlRhc2tDaGFuZ2VkXCJcbiAgICAgIFt0YXNrSWRdPVwib2JzLnRhc2suaWRcIlxuICAgICAgW2Fzc2lnbmVlSWRdPVwib2JzLnRhc2suYXNzaWduZWVcIlxuICAgICAgKGFzc2lnbm1lbnRPZlRhc2tDaGFuZ2VkKT1cImFzc2lnbm1lbnRPZlRhc2tDaGFuZ2VkLmVtaXQoKVwiXG4gICAgPjwvdmFsdGltby1hc3NpZ24tdXNlci10by10YXNrPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1kZXRhaWwtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvY29tcG9uZW50cy90YXNrLWRldGFpbC1tb2RhbC90YXNrLWRldGFpbC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL3Rhc2svc3JjL2xpYi9jb21wb25lbnRzL3Rhc2stZGV0YWlsLW1vZGFsL3Rhc2stZGV0YWlsLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBVyw0QkFBNEIsRUFBc0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRyxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHbkQsT0FBTyxFQUFDLDBCQUEwQixFQUFFLCtCQUErQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbkcsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sMEVBQTBFLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFN0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBUXJELE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsSUFBYSxTQUFTLENBQUMsS0FBZTtRQUNwQyxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lB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QUFDLDJCQUEyQixDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQzsrR0E5R1Usd0JBQXdCO21HQUF4Qix3QkFBd0Isd1ZBRXhCLG1DQUFtQyxnRENoRGhELGcvSEE0R0E7OzRGRDlEYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0UsMkJBQTJCLGlCQUd0QixpQkFBaUIsQ0FBQyxJQUFJOzRNQUdVLE1BQU07c0JBQXBELFNBQVM7dUJBQUMsaUJBQWlCO2dCQUVYLDBCQUEwQjtzQkFEMUMsU0FBUzt1QkFBQyxtQ0FBbUM7Z0JBR3BDLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csdUJBQXVCO3NCQUFoQyxNQUFNO2dCQUVNLFNBQVM7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1Blcm1pc3Npb25TZXJ2aWNlfSBmcm9tICdAdmFsdGltby9hY2Nlc3MtY29udHJvbCc7XG5pbXBvcnQge0NhcmJvbk1vZGFsU2l6ZX0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge0Zvcm1TaXplLCBmb3JtU2l6ZVRvQ2FyYm9uTW9kYWxTaXplTWFwLCBUYXNrV2l0aFByb2Nlc3NMaW5rfSBmcm9tICdAdmFsdGltby9wcm9jZXNzLWxpbmsnO1xuaW1wb3J0IHtNb2RhbH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge05HWExvZ2dlcn0gZnJvbSAnbmd4LWxvZ2dlcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7SW50ZXJtZWRpYXRlU3VibWlzc2lvbiwgVGFza30gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7VGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQge0NBTl9BU1NJR05fVEFTS19QRVJNSVNTSU9OLCBUQVNLX0RFVEFJTF9QRVJNSVNTSU9OX1JFU09VUkNFfSBmcm9tICcuLi8uLi90YXNrLXBlcm1pc3Npb25zJztcbmltcG9ydCB7VGFza0RldGFpbEludGVybWVkaWF0ZVNhdmVDb21wb25lbnR9IGZyb20gJy4uL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlL3Rhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlLmNvbXBvbmVudCc7XG5cbm1vbWVudC5sb2NhbGUobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmdLZXknKSB8fCAnJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tdGFzay1kZXRhaWwtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFzay1kZXRhaWwtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YXNrLWRldGFpbC1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBUYXNrRGV0YWlsTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCd0YXNrRGV0YWlsTW9kYWwnKSBwcml2YXRlIHJlYWRvbmx5IF9tb2RhbDogTW9kYWw7XG4gIEBWaWV3Q2hpbGQoVGFza0RldGFpbEludGVybWVkaWF0ZVNhdmVDb21wb25lbnQpXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ludGVybWVkaWF0ZVNhdmVDb21wb25lbnQ6IFRhc2tEZXRhaWxJbnRlcm1lZGlhdGVTYXZlQ29tcG9uZW50O1xuXG4gIEBPdXRwdXQoKSBmb3JtU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgYXNzaWdubWVudE9mVGFza0NoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQElucHV0KCkgc2V0IG1vZGFsU2l6ZSh2YWx1ZTogRm9ybVNpemUpIHtcbiAgICBpZiAodmFsdWUpIHRoaXMuc2l6ZSQubmV4dChmb3JtU2l6ZVRvQ2FyYm9uTW9kYWxTaXplTWFwW3ZhbHVlXSk7XG4gIH1cblxuICBwdWJsaWMgY3VycmVudEludGVybWVkaWF0ZVNhdmUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHwgbnVsbD4obnVsbCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHByb2Nlc3NMaW5rUHJlbG9hZGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgdGFzayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRhc2sgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHRhc2tBbmRQcm9jZXNzTGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRhc2tXaXRoUHJvY2Vzc0xpbmsgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHRhc2sgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRhc2sgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHN1Ym1pc3Npb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KHt9KTtcbiAgcHVibGljIHJlYWRvbmx5IHBhZ2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xuICBwdWJsaWMgcmVhZG9ubHkgc2hvd0NvbmZpcm1hdGlvbk1vZGFsJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBzaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q2FyYm9uTW9kYWxTaXplPignbWQnKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgY2FuQXNzaWduVXNlclRvVGFzayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbW9kYWxDbG9zZUV2ZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IE5HWExvZ2dlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhc2tJbnRlcm1lZGlhdGVTYXZlU2VydmljZTogVGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnRhc2skLnN1YnNjcmliZSh0YXNrID0+IHtcbiAgICAgICAgaWYgKHRhc2spIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2hlY2tpbmcgaWYgdXNlciBhbGxvd2VkIHRvIGFzc2lnbiBhIHVzZXIgdG8gVGFzayB3aXRoIGlkOicsIHRhc2suaWQpO1xuICAgICAgICAgIHRoaXMucGVybWlzc2lvblNlcnZpY2VcbiAgICAgICAgICAgIC5yZXF1ZXN0UGVybWlzc2lvbihDQU5fQVNTSUdOX1RBU0tfUEVSTUlTU0lPTiwge1xuICAgICAgICAgICAgICByZXNvdXJjZTogVEFTS19ERVRBSUxfUEVSTUlTU0lPTl9SRVNPVVJDRS50YXNrLFxuICAgICAgICAgICAgICBpZGVudGlmaWVyOiB0YXNrLmlkLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGFsbG93ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5jYW5Bc3NpZ25Vc2VyVG9UYXNrJC5uZXh0KGFsbG93ZWQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ1Jlc2V0IGlzIHVzZXIgYWxsb3dlZCB0byBhc3NpZ24gYSB1c2VyIHRvIFRhc2sgYXMgdGFzayBpcyBudWxsJyk7XG4gICAgICAgICAgdGhpcy5jYW5Bc3NpZ25Vc2VyVG9UYXNrJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGNsZWFyQ3VycmVudFByb2dyZXNzKCk6IHZvaWQge1xuICAgIHRoaXMuX2ludGVybWVkaWF0ZVNhdmVDb21wb25lbnQuY2xlYXJDdXJyZW50UHJvZ3Jlc3MoKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuVGFza0RldGFpbHModGFzazogVGFzayB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnRhc2skLm5leHQoey4uLnRhc2t9KTtcbiAgICB0aGlzLnBhZ2UkLm5leHQoe1xuICAgICAgdGl0bGU6IHRhc2s/Lm5hbWUsXG4gICAgICBzdWJ0aXRsZTogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tEZXRhaWwudGFza0NyZWF0ZWQnKX0gJHt0YXNrPy5jcmVhdGVkfWAsXG4gICAgfSk7XG5cbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgcHVibGljIG9wZW5UYXNrQW5kUHJvY2Vzc0xpbmtEZXRhaWxzKHRhc2tXaXRoUHJvY2Vzc0xpbms6IFRhc2tXaXRoUHJvY2Vzc0xpbmsgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5wcm9jZXNzTGlua1ByZWxvYWRlZCQubmV4dCh0cnVlKTtcbiAgICB0aGlzLnRhc2tBbmRQcm9jZXNzTGluayQubmV4dCh0YXNrV2l0aFByb2Nlc3NMaW5rKTtcbiAgICB0aGlzLnRhc2skLm5leHQoey4uLih0YXNrV2l0aFByb2Nlc3NMaW5rLnRhc2sgYXMgYW55KX0pO1xuICAgIHRoaXMucGFnZSQubmV4dCh7XG4gICAgICB0aXRsZTogdGFza1dpdGhQcm9jZXNzTGluay50YXNrPy5uYW1lLFxuICAgICAgc3VidGl0bGU6IGAke3RoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd0YXNrRGV0YWlsLnRhc2tDcmVhdGVkJyl9ICR7dGFza1dpdGhQcm9jZXNzTGluay50YXNrPy5jcmVhdGVkfWAsXG4gICAgfSk7XG5cbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgcHVibGljIGdvdG9Qcm9jZXNzTGlua1NjcmVlbigpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlTW9kYWwoKTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3Byb2Nlc3MtbGlua3MnXSk7XG4gIH1cblxuICBwdWJsaWMgb25DdXJyZW50SW50ZXJtZWRpYXRlU2F2ZUV2ZW50KHZhbHVlOiBJbnRlcm1lZGlhdGVTdWJtaXNzaW9uIHwgbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudEludGVybWVkaWF0ZVNhdmUkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG9uRm9ybVN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1TdWJtaXQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uU2hvd01vZGFsRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q29uZmlybWF0aW9uTW9kYWwkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VNb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tb2RhbC5vcGVuID0gZmFsc2U7XG4gICAgdGhpcy50YXNrSW50ZXJtZWRpYXRlU2F2ZVNlcnZpY2Uuc2V0U3VibWlzc2lvbih7fSk7XG4gICAgdGhpcy5tb2RhbENsb3NlRXZlbnQkLm5leHQoIXRoaXMubW9kYWxDbG9zZUV2ZW50JC5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgb3Blbk1vZGFsKCk6IHZvaWQge1xuICAgIHRoaXMuX21vZGFsLm9wZW4gPSB0cnVlO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxjZHMtbW9kYWwgI3Rhc2tEZXRhaWxNb2RhbCBpZD1cInRhc2tEZXRhaWxNb2RhbFwiIFtzaXplXT1cInNpemUkIHwgYXN5bmNcIj5cbiAgPGNkcy1tb2RhbC1oZWFkZXIgKGNsb3NlU2VsZWN0KT1cImNsb3NlTW9kYWwoKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0aXRsZS1jb250YWluZXJcIj5cbiAgICAgIDxwIGNsYXNzPVwiY2RzLS1tb2RhbC1oZWFkZXJfX2hlYWRpbmcgY2RzLS10eXBlLWJldGFcIj57eyAocGFnZSQgfCBhc3luYyk/LnRpdGxlIH19PC9wPlxuXG4gICAgICA8cCBjbGFzcz1cImNkcy0tbW9kYWwtaGVhZGVyX19sYWJlbCBjZHMtLXR5cGUtZGVsdGFcIj57eyAocGFnZSQgfCBhc3luYyk/LnN1YnRpdGxlIH19PC9wPlxuXG4gICAgICA8cFxuICAgICAgICBjbGFzcz1cImNkcy0tbW9kYWwtaGVhZGVyX19sYWJlbCBjZHMtLXR5cGUtZGVsdGFcIlxuICAgICAgICAqbmdJZj1cImN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlJCB8IGFzeW5jIGFzIGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlXCJcbiAgICAgID5cbiAgICAgICAge3sgJ2Zvcm1NYW5hZ2VtZW50LmludGVybWVkaWF0ZVNhdmUubGFzdFNhdmVkQnknIHwgdHJhbnNsYXRlIH19OlxuXG4gICAgICAgIHt7XG4gICAgICAgICAgY3VycmVudEludGVybWVkaWF0ZVNhdmU/LmVkaXRlZEJ5XG4gICAgICAgICAgICA/IGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlPy5lZGl0ZWRCeVxuICAgICAgICAgICAgOiBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZS5jcmVhdGVkQnlcbiAgICAgICAgfX1cblxuICAgICAgICB7eyAnZm9ybU1hbmFnZW1lbnQuaW50ZXJtZWRpYXRlU2F2ZS5vbicgfCB0cmFuc2xhdGUgfX06XG5cbiAgICAgICAge3tcbiAgICAgICAgICBjdXJyZW50SW50ZXJtZWRpYXRlU2F2ZT8uZWRpdGVkT25cbiAgICAgICAgICAgID8gY3VycmVudEludGVybWVkaWF0ZVNhdmU/LmVkaXRlZE9uXG4gICAgICAgICAgICA6IGN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlLmNyZWF0ZWRPblxuICAgICAgICB9fVxuICAgICAgPC9wPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXNzaWduVXNlclRvVGFza1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChwcm9jZXNzTGlua1ByZWxvYWRlZCQgfCBhc3luYykge1xuICAgICAgPHZhbHRpbW8tdGFzay1kZXRhaWwtaW50ZXJtZWRpYXRlLXNhdmVcbiAgICAgICAgY2xhc3M9XCJzYXZlLWJ1dHRvbnMtbWFyZ2luXCJcbiAgICAgICAgW3Rhc2tBbmRQcm9jZXNzTGlua109XCJ0YXNrQW5kUHJvY2Vzc0xpbmskIHwgYXN5bmNcIlxuICAgICAgICAoY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudCk9XCJvbkN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIChzaG93TW9kYWxFdmVudCk9XCJvblNob3dNb2RhbEV2ZW50KClcIlxuICAgICAgPjwvdmFsdGltby10YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZT5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDx2YWx0aW1vLXRhc2stZGV0YWlsLWludGVybWVkaWF0ZS1zYXZlXG4gICAgICAgIGNsYXNzPVwic2F2ZS1idXR0b25zLW1hcmdpblwiXG4gICAgICAgIFt0YXNrXT1cInRhc2skIHwgYXN5bmNcIlxuICAgICAgICAoY3VycmVudEludGVybWVkaWF0ZVNhdmVFdmVudCk9XCJvbkN1cnJlbnRJbnRlcm1lZGlhdGVTYXZlRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIChzaG93TW9kYWxFdmVudCk9XCJvblNob3dNb2RhbEV2ZW50KClcIlxuICAgICAgPjwvdmFsdGltby10YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZT5cbiAgICB9XG4gIDwvY2RzLW1vZGFsLWhlYWRlcj5cblxuICA8ZGl2IGJvZHkgY2xhc3M9XCJjZHMtLW1vZGFsLWNvbnRlbnQgcGItMVwiPlxuICAgIEBpZiAocHJvY2Vzc0xpbmtQcmVsb2FkZWQkIHwgYXN5bmMpIHtcbiAgICAgIDx2YWx0aW1vLXRhc2stZGV0YWlsLWNvbnRlbnRcbiAgICAgICAgW3Rhc2tBbmRQcm9jZXNzTGlua109XCJ0YXNrQW5kUHJvY2Vzc0xpbmskIHwgYXN5bmNcIlxuICAgICAgICBbbW9kYWxDbG9zZWRdPVwibW9kYWxDbG9zZUV2ZW50JCB8IGFzeW5jXCJcbiAgICAgICAgKGZvcm1TdWJtaXQpPVwib25Gb3JtU3VibWl0KClcIlxuICAgICAgICAoY2xvc2VNb2RhbEV2ZW50KT1cImNsb3NlTW9kYWwoKVwiXG4gICAgICA+PC92YWx0aW1vLXRhc2stZGV0YWlsLWNvbnRlbnQ+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8dmFsdGltby10YXNrLWRldGFpbC1jb250ZW50XG4gICAgICAgIFt0YXNrXT1cInRhc2skIHwgYXN5bmNcIlxuICAgICAgICBbbW9kYWxDbG9zZWRdPVwibW9kYWxDbG9zZUV2ZW50JCB8IGFzeW5jXCJcbiAgICAgICAgKGZvcm1TdWJtaXQpPVwib25Gb3JtU3VibWl0KClcIlxuICAgICAgICAoY2xvc2VNb2RhbEV2ZW50KT1cImNsb3NlTW9kYWwoKVwiXG4gICAgICA+PC92YWx0aW1vLXRhc2stZGV0YWlsLWNvbnRlbnQ+XG4gICAgfVxuICA8L2Rpdj5cbjwvY2RzLW1vZGFsPlxuXG48dmFsdGltby1jb25maXJtYXRpb24tbW9kYWxcbiAgW3Nob3dNb2RhbFN1YmplY3QkXT1cInNob3dDb25maXJtYXRpb25Nb2RhbCRcIlxuICAoY29uZmlybUV2ZW50KT1cImNsZWFyQ3VycmVudFByb2dyZXNzKClcIlxuICAoY2FuY2VsRXZlbnQpPVwic2hvd0NvbmZpcm1hdGlvbk1vZGFsJC5uZXh0KGZhbHNlKVwiXG4gIGNhbmNlbEJ1dHRvblR5cGU9XCJnaG9zdFwiXG4gIGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuY29uZmlybVwiXG4gIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJmb3JtTWFuYWdlbWVudC5pbnRlcm1lZGlhdGVTYXZlLmNsZWFyXCJcbiAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwiZm9ybU1hbmFnZW1lbnQuaW50ZXJtZWRpYXRlU2F2ZS5jbGVhckNvbmZpcm1cIlxuPjwvdmFsdGltby1jb25maXJtYXRpb24tbW9kYWw+XG5cbjxuZy10ZW1wbGF0ZSAjYXNzaWduVXNlclRvVGFzaz5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwie1xuICAgICAgdGFzazogdGFzayQgfCBhc3luYyxcbiAgICAgIGNhbkFzc2lnblVzZXJUb1Rhc2s6IGNhbkFzc2lnblVzZXJUb1Rhc2skIHwgYXN5bmMsXG4gICAgfSBhcyBvYnNcIlxuICA+XG4gICAgPHZhbHRpbW8tYXNzaWduLXVzZXItdG8tdGFza1xuICAgICAgKm5nSWY9XCJvYnMudGFzayAmJiBvYnMuY2FuQXNzaWduVXNlclRvVGFzayAmJiBhc3NpZ25tZW50T2ZUYXNrQ2hhbmdlZFwiXG4gICAgICBbdGFza0lkXT1cIm9icy50YXNrLmlkXCJcbiAgICAgIFthc3NpZ25lZUlkXT1cIm9icy50YXNrLmFzc2lnbmVlXCJcbiAgICAgIChhc3NpZ25tZW50T2ZUYXNrQ2hhbmdlZCk9XCJhc3NpZ25tZW50T2ZUYXNrQ2hhbmdlZC5lbWl0KClcIlxuICAgID48L3ZhbHRpbW8tYXNzaWduLXVzZXItdG8tdGFzaz5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -14,4 +14,4 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
export {};
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vdGFzay9zcmMvbGliL21vZGVscy90YXNrLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtVc2VyfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuXG5pbnRlcmZhY2UgVGFzayB7XG4gIGFzc2lnbmVlOiBzdHJpbmc7XG4gIGNhc2VEZWZpbml0aW9uSWQ6IHN0cmluZztcbiAgY2FzZUV4ZWN1dGlvbklkOiBzdHJpbmc7XG4gIGNhc2VJbnN0YW5jZUlkOiBzdHJpbmc7XG4gIGNyZWF0ZWQ6IHN0cmluZztcbiAgZGVsZWdhdGlvblN0YXRlOiBhbnk7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIGR1ZTogc3RyaW5nO1xuICBleGVjdXRpb25JZDogc3RyaW5nO1xuICBmb2xsb3dVcDogYW55O1xuICBmb3JtS2V5OiBzdHJpbmc7XG4gIGZvcm1sZXNzOiBib29sZWFuO1xuICBpZDogc3RyaW5nO1xuICBsaXN0SXRlbUZpZWxkczogTGlzdEl0ZW1GaWVsZFtdO1xuICBuYW1lOiBzdHJpbmc7XG4gIG93bmVyOiBzdHJpbmc7XG4gIHBhcmVudFRhc2tJZDogc3RyaW5nO1xuICBwcmlvcml0eTogbnVtYmVyO1xuICBwcm9jZXNzRGVmaW5pdGlvbklkOiBzdHJpbmc7XG4gIHByb2Nlc3NJbnN0YW5jZUlkOiBzdHJpbmc7XG4gIHN1c3BlbmRlZDogYm9vbGVhbjtcbiAgdGFza0RlZmluaXRpb25LZXk6IHN0cmluZztcbiAgdGVuYW50SWQ6IHN0cmluZztcbiAgZm9ybUxvY2F0aW9uOiBzdHJpbmc7XG4gIGJ1c2luZXNzS2V5OiBzdHJpbmc7XG4gIHByb2Nlc3NEZWZpbml0aW9uS2V5OiBzdHJpbmc7XG4gIHZhbHRpbW9Bc3NpZ25lZTogVXNlcjtcbiAgbG9ja2VkPzogYm9vbGVhbjtcbiAgY2FzZUxvY2tlZD86IGJvb2xlYW47XG59XG5cbmludGVyZmFjZSBMaXN0SXRlbUZpZWxkIHtcbiAga2V5OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBBc3NpZ25lZVJlcXVlc3Qge1xuICBhc3NpZ25lZTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgU3BlY2lmaWVkVGFzayB7XG4gIGlkOiBzdHJpbmc7XG4gIGJ1c2luZXNzS2V5OiBzdHJpbmc7XG4gIHByb2Nlc3NJbnN0YW5jZUlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgY3JlYXRlZDogRGF0ZTtcbiAgaXRlbXM6IHtrZXk6IHN0cmluZzsgdmFsdWU6IGFueX1bXTtcbn1cblxuaW50ZXJmYWNlIE1hcHBlZFNwZWNpZmllZFRhc2sge1xuICBpZDogc3RyaW5nO1xuICBidXNpbmVzc0tleTogc3RyaW5nO1xuICBwcm9jZXNzSW5zdGFuY2VJZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGNyZWF0ZWQ/OiBzdHJpbmc7XG4gIGxvY2tlZD86IGJvb2xlYW47XG4gIGNhc2VMb2NrZWQ/OiBib29sZWFuO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCB7QXNzaWduZWVSZXF1ZXN0LCBMaXN0SXRlbUZpZWxkLCBUYXNrLCBTcGVjaWZpZWRUYXNrLCBNYXBwZWRTcGVjaWZpZWRUYXNrfTtcbiJdfQ==
|
|
@@ -17,7 +17,7 @@ import { HttpHeaders } from '@angular/common/http';
|
|
|
17
17
|
import { Injectable } from '@angular/core';
|
|
18
18
|
import { BaseApiService } from '@valtimo/config';
|
|
19
19
|
import { InterceptorSkip } from '@valtimo/security';
|
|
20
|
-
import { BehaviorSubject, filter } from 'rxjs';
|
|
20
|
+
import { BehaviorSubject, catchError, filter, of } from 'rxjs';
|
|
21
21
|
import * as i0 from "@angular/core";
|
|
22
22
|
import * as i1 from "@angular/common/http";
|
|
23
23
|
import * as i2 from "@valtimo/config";
|
|
@@ -36,12 +36,14 @@ export class TaskIntermediateSaveService extends BaseApiService {
|
|
|
36
36
|
this._formIoFormData$ = new BehaviorSubject({});
|
|
37
37
|
}
|
|
38
38
|
getIntermediateSubmission(taskInstanceId) {
|
|
39
|
-
return this.httpClient
|
|
39
|
+
return this.httpClient
|
|
40
|
+
.get(this.getApiUrl('/v1/form/intermediate/submission'), {
|
|
40
41
|
params: {
|
|
41
42
|
taskInstanceId,
|
|
42
43
|
},
|
|
43
44
|
headers: new HttpHeaders().set(InterceptorSkip, '404'),
|
|
44
|
-
})
|
|
45
|
+
})
|
|
46
|
+
.pipe(catchError(() => of(null)));
|
|
45
47
|
}
|
|
46
48
|
storeIntermediateSubmission(request) {
|
|
47
49
|
return this.httpClient.post(this.getApiUrl('/v1/form/intermediate/submission'), request, {
|
|
@@ -68,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
68
70
|
type: Injectable,
|
|
69
71
|
args: [{ providedIn: 'root' }]
|
|
70
72
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1pbnRlcm1lZGlhdGUtc2F2ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvc2VydmljZXMvdGFzay1pbnRlcm1lZGlhdGUtc2F2ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFhLFdBQVcsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGNBQWMsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFDLGVBQWUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7OztBQUl6RSxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsY0FBYztJQUk3RCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELFlBQ3FCLFVBQXNCLEVBQ3RCLGFBQTRCO1FBRS9DLEtBQUssQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFIZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBWmhDLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBRSxDQUFDLENBQUM7UUFDNUMscUJBQWdCLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBRSxDQUFDLENBQUM7SUFjakUsQ0FBQztJQUVNLHlCQUF5QixDQUM5QixjQUFzQjtRQUV0QixPQUFPLElBQUksQ0FBQyxVQUFVO2FBQ25CLEdBQUcsQ0FBeUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFO1lBQy9FLE1BQU0sRUFBRTtnQkFDTixjQUFjO2FBQ2Y7WUFDRCxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQztTQUN2RCxDQUFDO2FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSwyQkFBMkIsQ0FDaEMsT0FBZ0M7UUFFaEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQ0FBa0MsQ0FBQyxFQUNsRCxPQUFPLEVBQ1A7WUFDRSxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQztTQUN2RCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sMkJBQTJCLENBQUMsY0FBc0I7UUFDdkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGtDQUFrQyxDQUFDLEVBQUU7WUFDdEYsTUFBTSxFQUFFO2dCQUNOLGNBQWM7YUFDZjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBVTtRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ00saUJBQWlCLENBQUMsS0FBVTtRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7K0dBeERVLDJCQUEyQjttSEFBM0IsMkJBQTJCLGNBRGYsTUFBTTs7NEZBQ2xCLDJCQUEyQjtrQkFEdkMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHtIdHRwQ2xpZW50LCBIdHRwSGVhZGVyc30gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmFzZUFwaVNlcnZpY2UsIENvbmZpZ1NlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5pbXBvcnQge0ludGVyY2VwdG9yU2tpcH0gZnJvbSAnQHZhbHRpbW8vc2VjdXJpdHknO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZpbHRlciwgT2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtJbnRlcm1lZGlhdGVTYXZlUmVxdWVzdCwgSW50ZXJtZWRpYXRlU3VibWlzc2lvbn0gZnJvbSAnLi4vbW9kZWxzJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgVGFza0ludGVybWVkaWF0ZVNhdmVTZXJ2aWNlIGV4dGVuZHMgQmFzZUFwaVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdWJtaXNzaW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7fSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Zvcm1Jb0Zvcm1EYXRhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7fSk7XG5cbiAgcHVibGljIGdldCBzdWJtaXNzaW9uJCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9zdWJtaXNzaW9uJC5waXBlKGZpbHRlcigodmFsdWU6IGFueSkgPT4gISF2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgZm9ybUlvRm9ybURhdGEkKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1Jb0Zvcm1EYXRhJC5waXBlKGZpbHRlcigodmFsdWU6IGFueSkgPT4gISF2YWx1ZSkpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoaHR0cENsaWVudCwgY29uZmlnU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SW50ZXJtZWRpYXRlU3VibWlzc2lvbihcbiAgICB0YXNrSW5zdGFuY2VJZDogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8SW50ZXJtZWRpYXRlU3VibWlzc2lvbiB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0PEludGVybWVkaWF0ZVN1Ym1pc3Npb24+KHRoaXMuZ2V0QXBpVXJsKCcvdjEvZm9ybS9pbnRlcm1lZGlhdGUvc3VibWlzc2lvbicpLCB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIHRhc2tJbnN0YW5jZUlkLFxuICAgICAgICB9LFxuICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoSW50ZXJjZXB0b3JTa2lwLCAnNDA0JyksXG4gICAgICB9KVxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZihudWxsKSkpO1xuICB9XG5cbiAgcHVibGljIHN0b3JlSW50ZXJtZWRpYXRlU3VibWlzc2lvbihcbiAgICByZXF1ZXN0OiBJbnRlcm1lZGlhdGVTYXZlUmVxdWVzdFxuICApOiBPYnNlcnZhYmxlPEludGVybWVkaWF0ZVN1Ym1pc3Npb24+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8SW50ZXJtZWRpYXRlU3VibWlzc2lvbj4oXG4gICAgICB0aGlzLmdldEFwaVVybCgnL3YxL2Zvcm0vaW50ZXJtZWRpYXRlL3N1Ym1pc3Npb24nKSxcbiAgICAgIHJlcXVlc3QsXG4gICAgICB7XG4gICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldChJbnRlcmNlcHRvclNraXAsICc0MDAnKSxcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHVibGljIGNsZWFySW50ZXJtZWRpYXRlU3VibWlzc2lvbih0YXNrSW5zdGFuY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5kZWxldGU8dm9pZD4odGhpcy5nZXRBcGlVcmwoJy92MS9mb3JtL2ludGVybWVkaWF0ZS9zdWJtaXNzaW9uJyksIHtcbiAgICAgIHBhcmFtczoge1xuICAgICAgICB0YXNrSW5zdGFuY2VJZCxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2V0U3VibWlzc2lvbih2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fc3VibWlzc2lvbiQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgcHVibGljIHNldEZvcm1Jb0Zvcm1EYXRhKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9mb3JtSW9Gb3JtRGF0YSQubmV4dCh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
95
95
|
type: Injectable,
|
|
96
96
|
args: [{ providedIn: 'root' }]
|
|
97
97
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvc2VydmljZXMvdGFzay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQWEsV0FBVyxFQUFFLFVBQVUsRUFBZSxNQUFNLHNCQUFzQixDQUFDO0FBWXZGLE9BQU8sRUFDTCxjQUFjLEVBS2QsV0FBVyxHQUNaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1CQUFtQixDQUFDOzs7O0FBR2xELE1BQU0sT0FBTyxXQUFZLFNBQVEsY0FBYztJQUM3QyxZQUNxQixVQUFzQixFQUN0QixhQUE0QjtRQUUvQyxLQUFLLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBSGQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUdqRCxDQUFDO0lBRU0sVUFBVSxDQUFDLE1BQVk7UUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBYyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2xFLE9BQU8sRUFBRSxVQUFVO1lBQ25CLE1BQU07U0FDUCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLE1BQVk7UUFDaEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBYSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pFLE1BQU07U0FDUCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLGlCQUE4QixXQUFXLENBQUMsR0FBRyxFQUM3QyxVQUEwQixFQUMxQixrQkFBMkIsRUFDM0Is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QUFDLE1BQWM7UUFDdEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsTUFBTSxFQUFFLENBQUMsRUFDakQsRUFBQyxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFDLENBQ3pELENBQUM7SUFDSixDQUFDO0lBRU0sa0JBQWtCLENBQUMsa0JBQTBCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxrQkFBa0IsbUJBQW1CLENBQUMsQ0FDbEUsQ0FBQztJQUNKLENBQUM7SUFFTSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDbEQsQ0FBQztJQUVNLHVCQUF1QixDQUFDLGtCQUEwQjtRQUN2RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLHlDQUF5QyxrQkFBa0IsRUFBRSxDQUFDLENBQzlFLENBQUM7SUFDSixDQUFDOytHQS9HVSxXQUFXO21IQUFYLFdBQVcsY0FEQyxNQUFNOzs0RkFDbEIsV0FBVztrQkFEdkIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcywgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQXNzaWduZWVSZXF1ZXN0LFxuICBTcGVjaWZpZWRUYXNrLFxuICBUYXNrLFxuICBUYXNrTGlzdENvbHVtbixcbiAgVGFza0xpc3RPdGhlckZpbHRlcnMsXG4gIFRhc2tMaXN0U2VhcmNoRmllbGQsXG4gIFRhc2tQYWdlUGFyYW1zLFxuICBUYXNrUHJvY2Vzc0xpbmtSZXN1bHQsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge1xuICBCYXNlQXBpU2VydmljZSxcbiAgQ29uZmlnU2VydmljZSxcbiAgQ3VzdG9tVGFza0xpc3QsXG4gIE5hbWVkVXNlcixcbiAgUGFnZSxcbiAgVGFza0xpc3RUYWIsXG59IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5pbXBvcnQge0ludGVyY2VwdG9yU2tpcH0gZnJvbSAnQHZhbHRpbW8vc2VjdXJpdHknO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUYXNrU2VydmljZSBleHRlbmRzIEJhc2VBcGlTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoaHR0cENsaWVudCwgY29uZmlnU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlUYXNrcyhwYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxBcnJheTxUYXNrPj4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxBcnJheTxUYXNrPj4odGhpcy5nZXRBcGlVcmwoJy92MS90YXNrJyksIHtcbiAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlUYXNrc1BhZ2UocGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxQYWdlPFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8UGFnZTxUYXNrPj4odGhpcy5nZXRBcGlVcmwoJy92Mi90YXNrJyksIHtcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBxdWVyeVRhc2tzUGFnZVYzKFxuICAgIGFzc2lnbmVlRmlsdGVyOiBUYXNrTGlzdFRhYiA9IFRhc2tMaXN0VGFiLkFMTCxcbiAgICBwYWdlUGFyYW1zOiBUYXNrUGFnZVBhcmFtcyxcbiAgICBjYXNlRGVmaW5pdGlvbk5hbWU/OiBzdHJpbmcsXG4gICAgb3RoZXJGaWx0ZXJzPzogVGFza0xpc3RPdGhlckZpbHRlcnNcbiAgKTogT2JzZXJ2YWJsZTxQYWdlPFRhc2s+IHwgUGFnZTxTcGVjaWZpZWRUYXNrPj4ge1xuICAgIGxldCBodHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3BhZ2UnLCBwYWdlUGFyYW1zLnBhZ2UpLnNldCgnc2l6ZScsIHBhZ2VQYXJhbXMuc2l6ZSk7XG5cbiAgICBpZiAocGFnZVBhcmFtcy5zb3J0KSB7XG4gICAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5hcHBlbmQoJ3NvcnQnLCBwYWdlUGFyYW1zLnNvcnQpO1xuICAgIH1cblxuICAgIGlmIChjYXNlRGVmaW5pdGlvbk5hbWUgJiYgKG90aGVyRmlsdGVycyB8fCBbXSkubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoVGFza3MoaHR0cFBhcmFtcywgY2FzZURlZmluaXRpb25OYW1lLCBvdGhlckZpbHRlcnMsIGFzc2lnbmVlRmlsdGVyKTtcbiAgICB9XG5cbiAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5hcHBlbmQoJ2ZpbHRlcicsIGFzc2lnbmVlRmlsdGVyLnRvVXBwZXJDYXNlKCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFBhZ2U8VGFzaz4+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoJy92My90YXNrJyksXG4gICAgICB7Li4uKGNhc2VEZWZpbml0aW9uTmFtZSAmJiB7Y2FzZURlZmluaXRpb25OYW1lfSl9LFxuICAgICAge3BhcmFtczogaHR0cFBhcmFtc31cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWFyY2hUYXNrcyhcbiAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcsXG4gICAgb3RoZXJGaWx0ZXJzOiBUYXNrTGlzdE90aGVyRmlsdGVycyxcbiAgICBhc3NpZ25lZUZpbHRlcjogVGFza0xpc3RUYWIgPSBUYXNrTGlzdFRhYi5BTExcbiAgKTogT2JzZXJ2YWJsZTxQYWdlPFNwZWNpZmllZFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFBhZ2U8U3BlY2lmaWVkVGFzaz4+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoYC92MS9kb2N1bWVudC1kZWZpbml0aW9uLyR7Y2FzZURlZmluaXRpb25OYW1lfS90YXNrL3NlYXJjaGApLFxuICAgICAge1xuICAgICAgICBjYXNlRGVmaW5pdGlvbk5hbWUsXG4gICAgICAgIGFzc2lnbmVlRmlsdGVyOiBhc3NpZ25lZUZpbHRlci50b1VwcGVyQ2FzZSgpLFxuICAgICAgICAuLi4ob3RoZXJGaWx0ZXJzICYmIHtvdGhlckZpbHRlcnN9KSxcbiAgICAgIH0sXG4gICAgICB7cGFyYW1zfVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza3MoKTogT2JzZXJ2YWJsZTxUYXNrW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrW10+KHRoaXMuZ2V0QXBpVXJsKCcvdjEvdGFzaz9maWx0ZXI9YWxsJykpO1xuICB9XG5cbiAgcHVibGljIGdldFRhc2soaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9YCkpO1xuICB9XG5cbiAgcHVibGljIGdldENhbmRpZGF0ZVVzZXJzKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE5hbWVkVXNlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8TmFtZWRVc2VyW10+KHRoaXMuZ2V0QXBpVXJsKGAvdjIvdGFzay8ke2lkfS9jYW5kaWRhdGUtdXNlcmApKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3NpZ25UYXNrKGlkOiBzdHJpbmcsIGFzc2lnbmVlUmVxdWVzdDogQXNzaWduZWVSZXF1ZXN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9L2Fzc2lnbmApLCBhc3NpZ25lZVJlcXVlc3QpO1xuICB9XG5cbiAgcHVibGljIHVuYXNzaWduVGFzayhpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9L3VuYXNzaWduYCksIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGNvbXBsZXRlVGFzayhpZDogc3RyaW5nLCB2YXJpYWJsZXM6IE1hcDxzdHJpbmcsIGFueT4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh0aGlzLmdldEFwaVVybChgL3YxL3Rhc2svJHtpZH0vY29tcGxldGVgKSwge1xuICAgICAgdmFyaWFibGVzLFxuICAgICAgZmlsZXNUb0RlbGV0ZTogW10sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza1Byb2Nlc3NMaW5rKHRhc2tJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxUYXNrUHJvY2Vzc0xpbmtSZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrUHJvY2Vzc0xpbmtSZXN1bHQ+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoYC92Mi9wcm9jZXNzLWxpbmsvdGFzay8ke3Rhc2tJZH1gKSxcbiAgICAgIHtoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoSW50ZXJjZXB0b3JTa2lwLCAnNDA0Jyl9XG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUYXNrTGlzdENvbHVtbnMoY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRhc2tMaXN0Q29sdW1uW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrTGlzdENvbHVtbltdPihcbiAgICAgIHRoaXMuZ2V0QXBpVXJsKGAvdjEvY2FzZS8ke2Nhc2VEZWZpbml0aW9uTmFtZX0vdGFzay1saXN0LWNvbHVtbmApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb25maWdDdXN0b21UYXNrTGlzdCgpOiBDdXN0b21UYXNrTGlzdCB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZS5jb25maWcuY3VzdG9tVGFza0xpc3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza0xpc3RTZWFyY2hGaWVsZHMoY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRhc2tMaXN0U2VhcmNoRmllbGRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PFRhc2tMaXN0U2VhcmNoRmllbGRbXT4oXG4gICAgICB0aGlzLmdldEFwaVVybChgdjEvc2VhcmNoL2ZpZWxkL1Rhc2tMaXN0U2VhcmNoQ29sdW1ucy8ke2Nhc2VEZWZpbml0aW9uTmFtZX1gKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby90YXNrL3NyYy9saWIvc2VydmljZXMvdGFzay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQWEsV0FBVyxFQUFFLFVBQVUsRUFBZSxNQUFNLHNCQUFzQixDQUFDO0FBV3ZGLE9BQU8sRUFDTCxjQUFjLEVBS2QsV0FBVyxHQUNaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1CQUFtQixDQUFDOzs7O0FBSWxELE1BQU0sT0FBTyxXQUFZLFNBQVEsY0FBYztJQUM3QyxZQUNxQixVQUFzQixFQUN0QixhQUE0QjtRQUUvQyxLQUFLLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBSGQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUdqRCxDQUFDO0lBRU0sVUFBVSxDQUFDLE1BQVk7UUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBYyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2xFLE9BQU8sRUFBRSxVQUFVO1lBQ25CLE1BQU07U0FDUCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLE1BQVk7UUFDaEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBYSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pFLE1BQU07U0FDUCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLGlCQUE4QixXQUFXLENBQUMsR0FBRyxFQUM3QyxVQUEwQixFQUMxQixrQkFBMkIsRUFDM0Is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QUFDLE1BQWM7UUFDdEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsTUFBTSxFQUFFLENBQUMsRUFDakQsRUFBQyxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFDLENBQ3pELENBQUM7SUFDSixDQUFDO0lBRU0sa0JBQWtCLENBQUMsa0JBQTBCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxrQkFBa0IsbUJBQW1CLENBQUMsQ0FDbEUsQ0FBQztJQUNKLENBQUM7SUFFTSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDbEQsQ0FBQztJQUVNLHVCQUF1QixDQUFDLGtCQUEwQjtRQUN2RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLHlDQUF5QyxrQkFBa0IsRUFBRSxDQUFDLENBQzlFLENBQUM7SUFDSixDQUFDOytHQS9HVSxXQUFXO21IQUFYLFdBQVcsY0FEQyxNQUFNOzs0RkFDbEIsV0FBVztrQkFEdkIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcywgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQXNzaWduZWVSZXF1ZXN0LFxuICBTcGVjaWZpZWRUYXNrLFxuICBUYXNrLFxuICBUYXNrTGlzdENvbHVtbixcbiAgVGFza0xpc3RPdGhlckZpbHRlcnMsXG4gIFRhc2tMaXN0U2VhcmNoRmllbGQsXG4gIFRhc2tQYWdlUGFyYW1zLFxufSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgQmFzZUFwaVNlcnZpY2UsXG4gIENvbmZpZ1NlcnZpY2UsXG4gIEN1c3RvbVRhc2tMaXN0LFxuICBOYW1lZFVzZXIsXG4gIFBhZ2UsXG4gIFRhc2tMaXN0VGFiLFxufSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtJbnRlcmNlcHRvclNraXB9IGZyb20gJ0B2YWx0aW1vL3NlY3VyaXR5JztcbmltcG9ydCB7VGFza1Byb2Nlc3NMaW5rUmVzdWx0fSBmcm9tICdAdmFsdGltby9wcm9jZXNzLWxpbmsnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUYXNrU2VydmljZSBleHRlbmRzIEJhc2VBcGlTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoaHR0cENsaWVudCwgY29uZmlnU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlUYXNrcyhwYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxBcnJheTxUYXNrPj4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxBcnJheTxUYXNrPj4odGhpcy5nZXRBcGlVcmwoJy92MS90YXNrJyksIHtcbiAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlUYXNrc1BhZ2UocGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxQYWdlPFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8UGFnZTxUYXNrPj4odGhpcy5nZXRBcGlVcmwoJy92Mi90YXNrJyksIHtcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBxdWVyeVRhc2tzUGFnZVYzKFxuICAgIGFzc2lnbmVlRmlsdGVyOiBUYXNrTGlzdFRhYiA9IFRhc2tMaXN0VGFiLkFMTCxcbiAgICBwYWdlUGFyYW1zOiBUYXNrUGFnZVBhcmFtcyxcbiAgICBjYXNlRGVmaW5pdGlvbk5hbWU/OiBzdHJpbmcsXG4gICAgb3RoZXJGaWx0ZXJzPzogVGFza0xpc3RPdGhlckZpbHRlcnNcbiAgKTogT2JzZXJ2YWJsZTxQYWdlPFRhc2s+IHwgUGFnZTxTcGVjaWZpZWRUYXNrPj4ge1xuICAgIGxldCBodHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3BhZ2UnLCBwYWdlUGFyYW1zLnBhZ2UpLnNldCgnc2l6ZScsIHBhZ2VQYXJhbXMuc2l6ZSk7XG5cbiAgICBpZiAocGFnZVBhcmFtcy5zb3J0KSB7XG4gICAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5hcHBlbmQoJ3NvcnQnLCBwYWdlUGFyYW1zLnNvcnQpO1xuICAgIH1cblxuICAgIGlmIChjYXNlRGVmaW5pdGlvbk5hbWUgJiYgKG90aGVyRmlsdGVycyB8fCBbXSkubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoVGFza3MoaHR0cFBhcmFtcywgY2FzZURlZmluaXRpb25OYW1lLCBvdGhlckZpbHRlcnMsIGFzc2lnbmVlRmlsdGVyKTtcbiAgICB9XG5cbiAgICBodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5hcHBlbmQoJ2ZpbHRlcicsIGFzc2lnbmVlRmlsdGVyLnRvVXBwZXJDYXNlKCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFBhZ2U8VGFzaz4+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoJy92My90YXNrJyksXG4gICAgICB7Li4uKGNhc2VEZWZpbml0aW9uTmFtZSAmJiB7Y2FzZURlZmluaXRpb25OYW1lfSl9LFxuICAgICAge3BhcmFtczogaHR0cFBhcmFtc31cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWFyY2hUYXNrcyhcbiAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcsXG4gICAgb3RoZXJGaWx0ZXJzOiBUYXNrTGlzdE90aGVyRmlsdGVycyxcbiAgICBhc3NpZ25lZUZpbHRlcjogVGFza0xpc3RUYWIgPSBUYXNrTGlzdFRhYi5BTExcbiAgKTogT2JzZXJ2YWJsZTxQYWdlPFNwZWNpZmllZFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFBhZ2U8U3BlY2lmaWVkVGFzaz4+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoYC92MS9kb2N1bWVudC1kZWZpbml0aW9uLyR7Y2FzZURlZmluaXRpb25OYW1lfS90YXNrL3NlYXJjaGApLFxuICAgICAge1xuICAgICAgICBjYXNlRGVmaW5pdGlvbk5hbWUsXG4gICAgICAgIGFzc2lnbmVlRmlsdGVyOiBhc3NpZ25lZUZpbHRlci50b1VwcGVyQ2FzZSgpLFxuICAgICAgICAuLi4ob3RoZXJGaWx0ZXJzICYmIHtvdGhlckZpbHRlcnN9KSxcbiAgICAgIH0sXG4gICAgICB7cGFyYW1zfVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza3MoKTogT2JzZXJ2YWJsZTxUYXNrW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrW10+KHRoaXMuZ2V0QXBpVXJsKCcvdjEvdGFzaz9maWx0ZXI9YWxsJykpO1xuICB9XG5cbiAgcHVibGljIGdldFRhc2soaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9YCkpO1xuICB9XG5cbiAgcHVibGljIGdldENhbmRpZGF0ZVVzZXJzKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE5hbWVkVXNlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8TmFtZWRVc2VyW10+KHRoaXMuZ2V0QXBpVXJsKGAvdjIvdGFzay8ke2lkfS9jYW5kaWRhdGUtdXNlcmApKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3NpZ25UYXNrKGlkOiBzdHJpbmcsIGFzc2lnbmVlUmVxdWVzdDogQXNzaWduZWVSZXF1ZXN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9L2Fzc2lnbmApLCBhc3NpZ25lZVJlcXVlc3QpO1xuICB9XG5cbiAgcHVibGljIHVuYXNzaWduVGFzayhpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy5nZXRBcGlVcmwoYC92MS90YXNrLyR7aWR9L3VuYXNzaWduYCksIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGNvbXBsZXRlVGFzayhpZDogc3RyaW5nLCB2YXJpYWJsZXM6IE1hcDxzdHJpbmcsIGFueT4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh0aGlzLmdldEFwaVVybChgL3YxL3Rhc2svJHtpZH0vY29tcGxldGVgKSwge1xuICAgICAgdmFyaWFibGVzLFxuICAgICAgZmlsZXNUb0RlbGV0ZTogW10sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza1Byb2Nlc3NMaW5rKHRhc2tJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxUYXNrUHJvY2Vzc0xpbmtSZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrUHJvY2Vzc0xpbmtSZXN1bHQ+KFxuICAgICAgdGhpcy5nZXRBcGlVcmwoYC92Mi9wcm9jZXNzLWxpbmsvdGFzay8ke3Rhc2tJZH1gKSxcbiAgICAgIHtoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoSW50ZXJjZXB0b3JTa2lwLCAnNDA0Jyl9XG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUYXNrTGlzdENvbHVtbnMoY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRhc2tMaXN0Q29sdW1uW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUYXNrTGlzdENvbHVtbltdPihcbiAgICAgIHRoaXMuZ2V0QXBpVXJsKGAvdjEvY2FzZS8ke2Nhc2VEZWZpbml0aW9uTmFtZX0vdGFzay1saXN0LWNvbHVtbmApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb25maWdDdXN0b21UYXNrTGlzdCgpOiBDdXN0b21UYXNrTGlzdCB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZS5jb25maWcuY3VzdG9tVGFza0xpc3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGFza0xpc3RTZWFyY2hGaWVsZHMoY2FzZURlZmluaXRpb25OYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRhc2tMaXN0U2VhcmNoRmllbGRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PFRhc2tMaXN0U2VhcmNoRmllbGRbXT4oXG4gICAgICB0aGlzLmdldEFwaVVybChgdjEvc2VhcmNoL2ZpZWxkL1Rhc2tMaXN0U2VhcmNoQ29sdW1ucy8ke2Nhc2VEZWZpbml0aW9uTmFtZX1gKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -145,7 +145,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
145
145
|
TaskDetailContentComponent,
|
|
146
146
|
TaskDetailIntermediateSaveComponent,
|
|
147
147
|
],
|
|
148
|
-
exports: [TaskListComponent, TaskDetailModalComponent]
|
|
148
|
+
exports: [TaskListComponent, TaskDetailModalComponent],
|
|
149
149
|
}]
|
|
150
150
|
}] });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL3Rhc2svc3JjL2xpYi90YXNrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUUsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsaUNBQWlDLEVBQ2pDLDhCQUE4QixFQUM5QixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLFlBQVksR0FDYixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFDTCxZQUFZLEVBQ1oscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxVQUFVLEVBQ1YsYUFBYSxHQUNkLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUMs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Q2IsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLHlCQUF5Qjt3QkFDekIsMEJBQTBCO3dCQUMxQixtQ0FBbUM7cUJBQ3BDO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDO2lCQUN2RCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Jyb3dzZXJBbmltYXRpb25zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtOZ2JNb2R1bGV9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7VHJhbnNsYXRlTG9hZGVyLCBUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ2FtdW5kYUZvcm1Nb2R1bGUsXG4gIENhcmJvbkxpc3RNb2R1bGUsXG4gIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICBGb3JtSW9Nb2R1bGUsXG4gIFBhZ2VIZWFkZXJNb2R1bGUsXG4gIFJlbmRlckluUGFnZUhlYWRlckRpcmVjdGl2ZU1vZHVsZSxcbiAgU2VhcmNoYWJsZURyb3Bkb3duU2VsZWN0TW9kdWxlLFxuICBTZWFyY2hGaWVsZHNNb2R1bGUsXG4gIFNwaW5uZXJNb2R1bGUsXG4gIFdpZGdldE1vZHVsZSxcbn0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge0h0dHBMb2FkZXJGYWN0b3J5fSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuaW1wb3J0IHtQcm9jZXNzTGlua01vZHVsZX0gZnJvbSAnQHZhbHRpbW8vcHJvY2Vzcy1saW5rJztcbmltcG9ydCB7XG4gIEJ1dHRvbk1vZHVsZSxcbiAgQ29udGVudFN3aXRjaGVyTW9kdWxlLFxuICBEcm9wZG93bk1vZHVsZSxcbiAgSWNvbk1vZHVsZSxcbiAgTGlua01vZHVsZSxcbiAgTW9kYWxNb2R1bGUsXG4gIFRhYnNNb2R1bGUsXG4gIFRvb2x0aXBNb2R1bGUsXG59IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuaW1wb3J0IHtUb2FzdHJNb2R1bGV9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHtBc3NpZ25Vc2VyVG9UYXNrQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYXNzaWduLXVzZXItdG8tdGFzay9hc3NpZ24tdXNlci10by10YXNrLmNvbXBvbmVudCc7XG5pbXBvcnQge1Rhc2tEZXRhaWxNb2RhbENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3Rhc2stZGV0YWlsLW1vZGFsL3Rhc2stZGV0YWlsLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQge1Rhc2tMaXN0Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvdGFzay1saXN0L3Rhc2stbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtUYXNrUm91dGluZ01vZHVsZX0gZnJvbSAnLi90YXNrLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7VGFza0RldGFpbENvbnRlbnRDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy90YXNrLWRldGFpbC1jb250ZW50L3Rhc2stZGV0YWlsLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7VGFza0RldGFpbEludGVybWVkaWF0ZVNhdmVDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS90YXNrLWRldGFpbC1pbnRlcm1lZGlhdGUtc2F2ZS5jb21wb25lbnQnO1xuaW1wb3J0IHtVcmxSZXNvbHZlclNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3Byb2Nlc3MtbGluayc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1Rhc2tMaXN0Q29tcG9uZW50LCBUYXNrRGV0YWlsTW9kYWxDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRhc2tSb3V0aW5nTW9kdWxlLFxuICAgIENhcmJvbkxpc3RNb2R1bGUsXG4gICAgUGFnZUhlYWRlck1vZHVsZSxcbiAgICBXaWRnZXRNb2R1bGUsXG4gICAgU3Bpbm5lck1vZHVsZSxcbiAgICBTZWFyY2hhYmxlRHJvcGRvd25TZWxlY3RNb2R1bGUsXG4gICAgQ2FtdW5kYUZvcm1Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgVG9hc3RyTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgcG9zaXRpb25DbGFzczogJ3RvYXN0LWJvdHRvbS1mdWxsLXdpZHRoJyxcbiAgICAgIHByZXZlbnREdXBsaWNhdGVzOiB0cnVlLFxuICAgIH0pLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JSb290KHtcbiAgICAgIGxvYWRlcjoge1xuICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXG4gICAgICAgIHVzZUZhY3Rvcnk6IEh0dHBMb2FkZXJGYWN0b3J5LFxuICAgICAgICBkZXBzOiBbSHR0cENsaWVudF0sXG4gICAgICB9LFxuICAgIH0pLFxuICAgIE5nYk1vZHVsZSxcbiAgICBGb3JtSW9Nb2R1bGUsXG4gICAgTW9kYWxNb2R1bGUsXG4gICAgTGlua01vZHVsZSxcbiAgICBQcm9jZXNzTGlua01vZHVsZSxcbiAgICBUYWJzTW9kdWxlLFxuICAgIENvbnRlbnRTd2l0Y2hlck1vZHVsZSxcbiAgICBSZW5kZXJJblBhZ2VIZWFkZXJEaXJlY3RpdmVNb2R1bGUsXG4gICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBDb25maXJtYXRpb25Nb2RhbE1vZHVsZSxcbiAgICBTZWFyY2hGaWVsZHNNb2R1bGUsXG4gICAgQXNzaWduVXNlclRvVGFza0NvbXBvbmVudCxcbiAgICBUYXNrRGV0YWlsQ29udGVudENvbXBvbmVudCxcbiAgICBUYXNrRGV0YWlsSW50ZXJtZWRpYXRlU2F2ZUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1Rhc2tMaXN0Q29tcG9uZW50LCBUYXNrRGV0YWlsTW9kYWxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUYXNrTW9kdWxlIHt9XG4iXX0=
|