@valtimo/connector-management 12.1.1 → 12.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. package/esm2022/lib/components/add-connector-configure/add-connector-configure.component.mjs +4 -4
  2. package/esm2022/lib/components/add-connector-select/add-connector-select.component.mjs +4 -4
  3. package/esm2022/lib/components/connector-link-extension/connector-link-extension.component.mjs +4 -4
  4. package/esm2022/lib/components/connector-link-extension-modal/connector-link-extension-modal.component.mjs +4 -4
  5. package/esm2022/lib/components/connector-management/connector-management.component.mjs +4 -4
  6. package/esm2022/lib/components/connector-modal/connector-modal.component.mjs +4 -4
  7. package/esm2022/lib/components/edit-connector-form/edit-connector-form.component.mjs +4 -4
  8. package/esm2022/lib/components/edit-connector-properties/edit-connector-properties.component.mjs +4 -4
  9. package/esm2022/lib/components/edit-product-aanvragen-connector/edit-product-aanvragen-connector.component.mjs +4 -4
  10. package/esm2022/lib/components/edit-taak-connector/edit-taak-connector.component.mjs +4 -4
  11. package/esm2022/lib/components/modify-connector/modify-connector.component.mjs +4 -4
  12. package/esm2022/lib/components/multi-value-connector-property/multi-value-connector-property.component.mjs +4 -4
  13. package/esm2022/lib/connector-management-routing.mjs +5 -5
  14. package/esm2022/lib/connector-management.module.mjs +5 -5
  15. package/esm2022/lib/services/connector-management/connector-management.service.mjs +4 -4
  16. package/esm2022/lib/services/connector-management-state/connector-management-state.service.mjs +4 -4
  17. package/esm2022/lib/services/object-api-sync/object-api-sync.service.mjs +4 -4
  18. package/fesm2022/valtimo-connector-management.mjs +53 -53
  19. package/fesm2022/valtimo-connector-management.mjs.map +1 -1
  20. package/package.json +1 -1
@@ -82,10 +82,10 @@ export class ConnectorModalComponent {
82
82
  }
83
83
  });
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ConnectorModalComponent, deps: [{ token: i1.ConnectorManagementStateService }, { token: i2.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: ConnectorModalComponent, selector: "valtimo-connector-modal", viewQueries: [{ propertyName: "connectorCreateModal", first: true, predicate: ["connectorCreateModal"], descendants: true }, { propertyName: "connectorEditModal", first: true, predicate: ["connectorEditModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal #connectorEditModal>\n <div role=\"header\">\n <div class=\"edit-connector-title\">\n <v-title [margin]=\"false\">{{ 'connectorManagement.modify' | translate }}</v-title>\n </div>\n </div>\n <div role=\"content\">\n <valtimo-modify-connector\n [showSaveButton]=\"false\"\n [showDeleteButton]=\"false\"\n ></valtimo-modify-connector>\n </div>\n <div role=\"footer\">\n <div class=\"edit-connector-buttons\">\n <v-button\n [disabled]=\"inputDisabled$ | async\"\n (clickEvent)=\"delete()\"\n [mdiIcon]=\"'delete'\"\n type=\"danger\"\n >{{ 'connectorManagement.remove' | translate }}</v-button\n >\n <v-button\n *ngIf=\"(hideModalSaveButton$ | async) === false\"\n [disabled]=\"(saveButtonDisabled$ | async) || (inputDisabled$ | async)\"\n (clickEvent)=\"complete()\"\n [mdiIcon]=\"'check'\"\n type=\"success\"\n >{{ 'connectorManagement.save' | translate }}</v-button\n >\n </div>\n </div>\n</v-modal>\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <v-modal #connectorCreateModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step0\">\n <valtimo-add-connector-select></valtimo-add-connector-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step1\">\n <valtimo-add-connector-configure\n [showSaveButton]=\"false\"\n ></valtimo-add-connector-configure>\n </v-stepper-step>\n </v-stepper-content>\n </div>\n <div role=\"footer\">\n <v-stepper-footer>\n <v-stepper-footer-step\n nextButtonTranslationKey=\"addConnectorSteps.step1\"\n [nextButtonEnabled]=\"connectorTypeSelected$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"addConnectorSteps.complete\"\n [completeButtonEnabled]=\"(saveButtonDisabled$ | async) === false\"\n [showCompleteButton]=\"(hideModalSaveButton$ | async) === false\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </div>\n </v-modal>\n</v-stepper-container>\n", styles: [".edit-connector-buttons,.edit-connector-title{width:100%;display:flex;flex-direction:row;justify-content:space-between}.edit-connector-title{justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "v-button", inputs: ["type", "mdiIcon", "disabled", "title", "titleTranslationKey"], outputs: ["clickEvent"] }, { kind: "component", type: i2.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter"], outputs: ["closeEvent"] }, { kind: "component", type: i2.StepperContainerComponent, selector: "v-stepper-container", inputs: ["returnToFirstStepSubject$", "disabled"], outputs: ["cancelClickEvent", "completeEvent", "nextStepEvent"] }, { kind: "component", type: i2.StepperContentComponent, selector: "v-stepper-content" }, { kind: "component", type: i2.StepperFooterComponent, selector: "v-stepper-footer" }, { kind: "component", type: i2.StepperHeaderComponent, selector: "v-stepper-header" }, { kind: "component", type: i2.StepperStepComponent, selector: "v-stepper-step", inputs: ["titleTranslationKey"] }, { kind: "component", type: i2.StepperFooterStepComponent, selector: "v-stepper-footer-step", inputs: ["nextButtonEnabled", "completeButtonEnabled", "nextButtonTranslationKey", "cancelButtonTranslationKey", "completeButtonTranslationKey", "completeButtonMdiIcon", "showCompleteButton"] }, { kind: "component", type: i2.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "component", type: i4.AddConnectorSelectComponent, selector: "valtimo-add-connector-select" }, { kind: "component", type: i5.AddConnectorConfigureComponent, selector: "valtimo-add-connector-configure", inputs: ["showSaveButton"] }, { kind: "component", type: i6.ModifyConnectorComponent, selector: "valtimo-modify-connector", inputs: ["showSaveButton", "showDeleteButton"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ConnectorModalComponent, deps: [{ token: i1.ConnectorManagementStateService }, { token: i2.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ConnectorModalComponent, selector: "valtimo-connector-modal", viewQueries: [{ propertyName: "connectorCreateModal", first: true, predicate: ["connectorCreateModal"], descendants: true }, { propertyName: "connectorEditModal", first: true, predicate: ["connectorEditModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal #connectorEditModal>\n <div role=\"header\">\n <div class=\"edit-connector-title\">\n <v-title [margin]=\"false\">{{ 'connectorManagement.modify' | translate }}</v-title>\n </div>\n </div>\n <div role=\"content\">\n <valtimo-modify-connector\n [showSaveButton]=\"false\"\n [showDeleteButton]=\"false\"\n ></valtimo-modify-connector>\n </div>\n <div role=\"footer\">\n <div class=\"edit-connector-buttons\">\n <v-button\n [disabled]=\"inputDisabled$ | async\"\n (clickEvent)=\"delete()\"\n [mdiIcon]=\"'delete'\"\n type=\"danger\"\n >{{ 'connectorManagement.remove' | translate }}</v-button\n >\n <v-button\n *ngIf=\"(hideModalSaveButton$ | async) === false\"\n [disabled]=\"(saveButtonDisabled$ | async) || (inputDisabled$ | async)\"\n (clickEvent)=\"complete()\"\n [mdiIcon]=\"'check'\"\n type=\"success\"\n >{{ 'connectorManagement.save' | translate }}</v-button\n >\n </div>\n </div>\n</v-modal>\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <v-modal #connectorCreateModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step0\">\n <valtimo-add-connector-select></valtimo-add-connector-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step1\">\n <valtimo-add-connector-configure\n [showSaveButton]=\"false\"\n ></valtimo-add-connector-configure>\n </v-stepper-step>\n </v-stepper-content>\n </div>\n <div role=\"footer\">\n <v-stepper-footer>\n <v-stepper-footer-step\n nextButtonTranslationKey=\"addConnectorSteps.step1\"\n [nextButtonEnabled]=\"connectorTypeSelected$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"addConnectorSteps.complete\"\n [completeButtonEnabled]=\"(saveButtonDisabled$ | async) === false\"\n [showCompleteButton]=\"(hideModalSaveButton$ | async) === false\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </div>\n </v-modal>\n</v-stepper-container>\n", styles: [".edit-connector-buttons,.edit-connector-title{width:100%;display:flex;flex-direction:row;justify-content:space-between}.edit-connector-title{justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "v-button", inputs: ["type", "mdiIcon", "disabled", "title", "titleTranslationKey"], outputs: ["clickEvent"] }, { kind: "component", type: i2.VModalComponent, selector: "v-modal", inputs: ["appearingDelayMs", "maxWidthPx", "hideFooter"], outputs: ["closeEvent"] }, { kind: "component", type: i2.StepperContainerComponent, selector: "v-stepper-container", inputs: ["returnToFirstStepSubject$", "disabled"], outputs: ["cancelClickEvent", "completeEvent", "nextStepEvent"] }, { kind: "component", type: i2.StepperContentComponent, selector: "v-stepper-content" }, { kind: "component", type: i2.StepperFooterComponent, selector: "v-stepper-footer" }, { kind: "component", type: i2.StepperHeaderComponent, selector: "v-stepper-header" }, { kind: "component", type: i2.StepperStepComponent, selector: "v-stepper-step", inputs: ["titleTranslationKey"] }, { kind: "component", type: i2.StepperFooterStepComponent, selector: "v-stepper-footer-step", inputs: ["nextButtonEnabled", "completeButtonEnabled", "nextButtonTranslationKey", "cancelButtonTranslationKey", "completeButtonTranslationKey", "completeButtonMdiIcon", "showCompleteButton"] }, { kind: "component", type: i2.TitleComponent, selector: "v-title", inputs: ["type", "margin", "fullWidth", "center"] }, { kind: "component", type: i4.AddConnectorSelectComponent, selector: "valtimo-add-connector-select" }, { kind: "component", type: i5.AddConnectorConfigureComponent, selector: "valtimo-add-connector-configure", inputs: ["showSaveButton"] }, { kind: "component", type: i6.ModifyConnectorComponent, selector: "valtimo-modify-connector", inputs: ["showSaveButton", "showDeleteButton"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ConnectorModalComponent, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ConnectorModalComponent, decorators: [{
89
89
  type: Component,
90
90
  args: [{ selector: 'valtimo-connector-modal', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<v-modal #connectorEditModal>\n <div role=\"header\">\n <div class=\"edit-connector-title\">\n <v-title [margin]=\"false\">{{ 'connectorManagement.modify' | translate }}</v-title>\n </div>\n </div>\n <div role=\"content\">\n <valtimo-modify-connector\n [showSaveButton]=\"false\"\n [showDeleteButton]=\"false\"\n ></valtimo-modify-connector>\n </div>\n <div role=\"footer\">\n <div class=\"edit-connector-buttons\">\n <v-button\n [disabled]=\"inputDisabled$ | async\"\n (clickEvent)=\"delete()\"\n [mdiIcon]=\"'delete'\"\n type=\"danger\"\n >{{ 'connectorManagement.remove' | translate }}</v-button\n >\n <v-button\n *ngIf=\"(hideModalSaveButton$ | async) === false\"\n [disabled]=\"(saveButtonDisabled$ | async) || (inputDisabled$ | async)\"\n (clickEvent)=\"complete()\"\n [mdiIcon]=\"'check'\"\n type=\"success\"\n >{{ 'connectorManagement.save' | translate }}</v-button\n >\n </div>\n </div>\n</v-modal>\n\n<v-stepper-container\n (completeEvent)=\"complete()\"\n (cancelClickEvent)=\"hide()\"\n [disabled]=\"inputDisabled$ | async\"\n [returnToFirstStepSubject$]=\"returnToFirstStepSubject$\"\n>\n <v-modal #connectorCreateModal (closeEvent)=\"hide()\">\n <div role=\"header\">\n <v-stepper-header></v-stepper-header>\n </div>\n <div role=\"content\">\n <v-stepper-content>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step0\">\n <valtimo-add-connector-select></valtimo-add-connector-select>\n </v-stepper-step>\n <v-stepper-step titleTranslationKey=\"addConnectorSteps.step1\">\n <valtimo-add-connector-configure\n [showSaveButton]=\"false\"\n ></valtimo-add-connector-configure>\n </v-stepper-step>\n </v-stepper-content>\n </div>\n <div role=\"footer\">\n <v-stepper-footer>\n <v-stepper-footer-step\n nextButtonTranslationKey=\"addConnectorSteps.step1\"\n [nextButtonEnabled]=\"connectorTypeSelected$ | async\"\n ></v-stepper-footer-step>\n <v-stepper-footer-step\n completeButtonTranslationKey=\"addConnectorSteps.complete\"\n [completeButtonEnabled]=\"(saveButtonDisabled$ | async) === false\"\n [showCompleteButton]=\"(hideModalSaveButton$ | async) === false\"\n ></v-stepper-footer-step>\n </v-stepper-footer>\n </div>\n </v-modal>\n</v-stepper-container>\n", styles: [".edit-connector-buttons,.edit-connector-title{width:100%;display:flex;flex-direction:row;justify-content:space-between}.edit-connector-title{justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
91
91
  }], ctorParameters: () => [{ type: i1.ConnectorManagementStateService }, { type: i2.ModalService }], propDecorators: { connectorCreateModal: [{
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
95
95
  type: ViewChild,
96
96
  args: ['connectorEditModal']
97
97
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29ubmVjdG9yLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Nvbm5lY3Rvci1tb2RhbC9jb25uZWN0b3ItbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvY29ubmVjdG9yLW1vZGFsL2Nvbm5lY3Rvci1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBZ0IsU0FBUyxFQUFhLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQWEsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBR3ZELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBR3BDOztHQUVHO0FBTUgsTUFBTSxPQUFPLHVCQUF1QjtJQWFsQyxZQUNtQixZQUE2QyxFQUM3QyxZQUEwQjtRQUQxQixpQkFBWSxHQUFaLFlBQVksQ0FBaUM7UUFDN0MsaUJBQVksR0FBWixZQUFZLENBQWM7UUFScEMsMkJBQXNCLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUM7UUFDekYsd0JBQW1CLEdBQXdCLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFDakYsbUJBQWMsR0FBd0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7UUFDdkUseUJBQW9CLEdBQXdCLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUM7UUFDbkYsOEJBQXlCLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztJQUt6RCxDQUFDO0lBRUosZUFBZTtRQUNiLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2xFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNsRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxTQUFTLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3pELENBQUM7aUJBQU0sSUFBSSxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBckVVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLHdTQy9CcEMsNGxHQXNGQTs7MkZEdkRhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSx5QkFBeUI7K0hBS0Esb0JBQW9CO3NCQUF0RCxTQUFTO3VCQUFDLHNCQUFzQjtnQkFDQSxrQkFBa0I7c0JBQWxELFNBQVM7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uRGVzdHJveSwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29ubmVjdG9yVHlwZX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQge3Rha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Vk1vZGFsQ29tcG9uZW50LCBNb2RhbFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgbmV3IHBsdWdpbiBmcmFtZXdvcmtcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1jb25uZWN0b3ItbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbm5lY3Rvck1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnY29ubmVjdG9yQ3JlYXRlTW9kYWwnKSBjb25uZWN0b3JDcmVhdGVNb2RhbDogVk1vZGFsQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdjb25uZWN0b3JFZGl0TW9kYWwnKSBjb25uZWN0b3JFZGl0TW9kYWw6IFZNb2RhbENvbXBvbmVudDtcblxuICBzaG93U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICBoaWRlU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIHJlYWRvbmx5IGNvbm5lY3RvclR5cGVTZWxlY3RlZCQ6IE9ic2VydmFibGU8Q29ubmVjdG9yVHlwZT4gPSB0aGlzLnN0YXRlU2VydmljZS5zZWxlY3RlZENvbm5lY3RvciQ7XG4gIHJlYWRvbmx5IHNhdmVCdXR0b25EaXNhYmxlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0YXRlU2VydmljZS5zYXZlQnV0dG9uRGlzYWJsZWQkO1xuICByZWFkb25seSBpbnB1dERpc2FibGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmlucHV0RGlzYWJsZWQkO1xuICByZWFkb25seSBoaWRlTW9kYWxTYXZlQnV0dG9uJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmhpZGVNb2RhbFNhdmVCdXR0b24kO1xuICByZWFkb25seSByZXR1cm5Ub0ZpcnN0U3RlcFN1YmplY3QkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXRlU2VydmljZTogQ29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGFsU2VydmljZTogTW9kYWxTZXJ2aWNlXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuU2hvd1N1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3BlbkhpZGVTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmhpZGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBoaWRlKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLmRpc2FibGVJbnB1dCgpO1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLmNsb3NlTW9kYWwoKCkgPT4ge1xuICAgICAgdGhpcy5yZXR1cm5Ub0ZpcnN0U3RlcCgpO1xuICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZW5hYmxlSW5wdXQoKTtcbiAgICAgIHRoaXMuc3RhdGVTZXJ2aWNlLmNsZWFyU2VsZWN0ZWRDb25uZWN0b3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGNvbXBsZXRlKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNhdmUoKTtcbiAgfVxuXG4gIGRlbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblNob3dTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zaG93U3Vic2NyaXB0aW9uID0gdGhpcy5zdGF0ZVNlcnZpY2Uuc2hvd01vZGFsJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5IaWRlU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuaGlkZVN1YnNjcmlwdGlvbiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmhpZGVNb2RhbCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZXR1cm5Ub0ZpcnN0U3RlcCgpOiB2b2lkIHtcbiAgICB0aGlzLnJldHVyblRvRmlyc3RTdGVwU3ViamVjdCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hvdygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5tb2RhbFR5cGUkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKG1vZGFsVHlwZSA9PiB7XG4gICAgICBpZiAobW9kYWxUeXBlID09PSAnYWRkJykge1xuICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuTW9kYWwodGhpcy5jb25uZWN0b3JDcmVhdGVNb2RhbCk7XG4gICAgICB9IGVsc2UgaWYgKG1vZGFsVHlwZSA9PT0gJ21vZGlmeScpIHtcbiAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2Uub3Blbk1vZGFsKHRoaXMuY29ubmVjdG9yRWRpdE1vZGFsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48di1tb2RhbCAjY29ubmVjdG9yRWRpdE1vZGFsPlxuICA8ZGl2IHJvbGU9XCJoZWFkZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZWRpdC1jb25uZWN0b3ItdGl0bGVcIj5cbiAgICAgIDx2LXRpdGxlIFttYXJnaW5dPVwiZmFsc2VcIj57eyAnY29ubmVjdG9yTWFuYWdlbWVudC5tb2RpZnknIHwgdHJhbnNsYXRlIH19PC92LXRpdGxlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiByb2xlPVwiY29udGVudFwiPlxuICAgIDx2YWx0aW1vLW1vZGlmeS1jb25uZWN0b3JcbiAgICAgIFtzaG93U2F2ZUJ1dHRvbl09XCJmYWxzZVwiXG4gICAgICBbc2hvd0RlbGV0ZUJ1dHRvbl09XCJmYWxzZVwiXG4gICAgPjwvdmFsdGltby1tb2RpZnktY29ubmVjdG9yPlxuICA8L2Rpdj5cbiAgPGRpdiByb2xlPVwiZm9vdGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImVkaXQtY29ubmVjdG9yLWJ1dHRvbnNcIj5cbiAgICAgIDx2LWJ1dHRvblxuICAgICAgICBbZGlzYWJsZWRdPVwiaW5wdXREaXNhYmxlZCQgfCBhc3luY1wiXG4gICAgICAgIChjbGlja0V2ZW50KT1cImRlbGV0ZSgpXCJcbiAgICAgICAgW21kaUljb25dPVwiJ2RlbGV0ZSdcIlxuICAgICAgICB0eXBlPVwiZGFuZ2VyXCJcbiAgICAgICAgPnt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX08L3YtYnV0dG9uXG4gICAgICA+XG4gICAgICA8di1idXR0b25cbiAgICAgICAgKm5nSWY9XCIoaGlkZU1vZGFsU2F2ZUJ1dHRvbiQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIihzYXZlQnV0dG9uRGlzYWJsZWQkIHwgYXN5bmMpIHx8IChpbnB1dERpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgICAgIChjbGlja0V2ZW50KT1cImNvbXBsZXRlKClcIlxuICAgICAgICBbbWRpSWNvbl09XCInY2hlY2snXCJcbiAgICAgICAgdHlwZT1cInN1Y2Nlc3NcIlxuICAgICAgICA+e3sgJ2Nvbm5lY3Rvck1hbmFnZW1lbnQuc2F2ZScgfCB0cmFuc2xhdGUgfX08L3YtYnV0dG9uXG4gICAgICA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC92LW1vZGFsPlxuXG48di1zdGVwcGVyLWNvbnRhaW5lclxuICAoY29tcGxldGVFdmVudCk9XCJjb21wbGV0ZSgpXCJcbiAgKGNhbmNlbENsaWNrRXZlbnQpPVwiaGlkZSgpXCJcbiAgW2Rpc2FibGVkXT1cImlucHV0RGlzYWJsZWQkIHwgYXN5bmNcIlxuICBbcmV0dXJuVG9GaXJzdFN0ZXBTdWJqZWN0JF09XCJyZXR1cm5Ub0ZpcnN0U3RlcFN1YmplY3QkXCJcbj5cbiAgPHYtbW9kYWwgI2Nvbm5lY3RvckNyZWF0ZU1vZGFsIChjbG9zZUV2ZW50KT1cImhpZGUoKVwiPlxuICAgIDxkaXYgcm9sZT1cImhlYWRlclwiPlxuICAgICAgPHYtc3RlcHBlci1oZWFkZXI+PC92LXN0ZXBwZXItaGVhZGVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgcm9sZT1cImNvbnRlbnRcIj5cbiAgICAgIDx2LXN0ZXBwZXItY29udGVudD5cbiAgICAgICAgPHYtc3RlcHBlci1zdGVwIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMFwiPlxuICAgICAgICAgIDx2YWx0aW1vLWFkZC1jb25uZWN0b3Itc2VsZWN0PjwvdmFsdGltby1hZGQtY29ubmVjdG9yLXNlbGVjdD5cbiAgICAgICAgPC92LXN0ZXBwZXItc3RlcD5cbiAgICAgICAgPHYtc3RlcHBlci1zdGVwIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMVwiPlxuICAgICAgICAgIDx2YWx0aW1vLWFkZC1jb25uZWN0b3ItY29uZmlndXJlXG4gICAgICAgICAgICBbc2hvd1NhdmVCdXR0b25dPVwiZmFsc2VcIlxuICAgICAgICAgID48L3ZhbHRpbW8tYWRkLWNvbm5lY3Rvci1jb25maWd1cmU+XG4gICAgICAgIDwvdi1zdGVwcGVyLXN0ZXA+XG4gICAgICA8L3Ytc3RlcHBlci1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgcm9sZT1cImZvb3RlclwiPlxuICAgICAgPHYtc3RlcHBlci1mb290ZXI+XG4gICAgICAgIDx2LXN0ZXBwZXItZm9vdGVyLXN0ZXBcbiAgICAgICAgICBuZXh0QnV0dG9uVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMVwiXG4gICAgICAgICAgW25leHRCdXR0b25FbmFibGVkXT1cImNvbm5lY3RvclR5cGVTZWxlY3RlZCQgfCBhc3luY1wiXG4gICAgICAgID48L3Ytc3RlcHBlci1mb290ZXItc3RlcD5cbiAgICAgICAgPHYtc3RlcHBlci1mb290ZXItc3RlcFxuICAgICAgICAgIGNvbXBsZXRlQnV0dG9uVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5jb21wbGV0ZVwiXG4gICAgICAgICAgW2NvbXBsZXRlQnV0dG9uRW5hYmxlZF09XCIoc2F2ZUJ1dHRvbkRpc2FibGVkJCB8IGFzeW5jKSA9PT0gZmFsc2VcIlxuICAgICAgICAgIFtzaG93Q29tcGxldGVCdXR0b25dPVwiKGhpZGVNb2RhbFNhdmVCdXR0b24kIHwgYXN5bmMpID09PSBmYWxzZVwiXG4gICAgICAgID48L3Ytc3RlcHBlci1mb290ZXItc3RlcD5cbiAgICAgIDwvdi1zdGVwcGVyLWZvb3Rlcj5cbiAgICA8L2Rpdj5cbiAgPC92LW1vZGFsPlxuPC92LXN0ZXBwZXItY29udGFpbmVyPlxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29ubmVjdG9yLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Nvbm5lY3Rvci1tb2RhbC9jb25uZWN0b3ItbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvY29ubmVjdG9yLW1vZGFsL2Nvbm5lY3Rvci1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBZ0IsU0FBUyxFQUFhLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQWEsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBR3ZELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBR3BDOztHQUVHO0FBTUgsTUFBTSxPQUFPLHVCQUF1QjtJQWFsQyxZQUNtQixZQUE2QyxFQUM3QyxZQUEwQjtRQUQxQixpQkFBWSxHQUFaLFlBQVksQ0FBaUM7UUFDN0MsaUJBQVksR0FBWixZQUFZLENBQWM7UUFScEMsMkJBQXNCLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUM7UUFDekYsd0JBQW1CLEdBQXdCLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFDakYsbUJBQWMsR0FBd0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7UUFDdkUseUJBQW9CLEdBQXdCLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUM7UUFDbkYsOEJBQXlCLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztJQUt6RCxDQUFDO0lBRUosZUFBZTtRQUNiLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2xFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNsRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxTQUFTLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3pELENBQUM7aUJBQU0sSUFBSSxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckVVLHVCQUF1QjttR0FBdkIsdUJBQXVCLHdTQy9CcEMsNGxHQXNGQTs7NEZEdkRhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSx5QkFBeUI7K0hBS0Esb0JBQW9CO3NCQUF0RCxTQUFTO3VCQUFDLHNCQUFzQjtnQkFDQSxrQkFBa0I7c0JBQWxELFNBQVM7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uRGVzdHJveSwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29ubmVjdG9yVHlwZX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQge3Rha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Vk1vZGFsQ29tcG9uZW50LCBNb2RhbFNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgbmV3IHBsdWdpbiBmcmFtZXdvcmtcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1jb25uZWN0b3ItbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29ubmVjdG9yLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbm5lY3Rvck1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnY29ubmVjdG9yQ3JlYXRlTW9kYWwnKSBjb25uZWN0b3JDcmVhdGVNb2RhbDogVk1vZGFsQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdjb25uZWN0b3JFZGl0TW9kYWwnKSBjb25uZWN0b3JFZGl0TW9kYWw6IFZNb2RhbENvbXBvbmVudDtcblxuICBzaG93U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICBoaWRlU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIHJlYWRvbmx5IGNvbm5lY3RvclR5cGVTZWxlY3RlZCQ6IE9ic2VydmFibGU8Q29ubmVjdG9yVHlwZT4gPSB0aGlzLnN0YXRlU2VydmljZS5zZWxlY3RlZENvbm5lY3RvciQ7XG4gIHJlYWRvbmx5IHNhdmVCdXR0b25EaXNhYmxlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0YXRlU2VydmljZS5zYXZlQnV0dG9uRGlzYWJsZWQkO1xuICByZWFkb25seSBpbnB1dERpc2FibGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmlucHV0RGlzYWJsZWQkO1xuICByZWFkb25seSBoaWRlTW9kYWxTYXZlQnV0dG9uJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmhpZGVNb2RhbFNhdmVCdXR0b24kO1xuICByZWFkb25seSByZXR1cm5Ub0ZpcnN0U3RlcFN1YmplY3QkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXRlU2VydmljZTogQ29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGFsU2VydmljZTogTW9kYWxTZXJ2aWNlXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuU2hvd1N1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3BlbkhpZGVTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmhpZGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBoaWRlKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLmRpc2FibGVJbnB1dCgpO1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLmNsb3NlTW9kYWwoKCkgPT4ge1xuICAgICAgdGhpcy5yZXR1cm5Ub0ZpcnN0U3RlcCgpO1xuICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZW5hYmxlSW5wdXQoKTtcbiAgICAgIHRoaXMuc3RhdGVTZXJ2aWNlLmNsZWFyU2VsZWN0ZWRDb25uZWN0b3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGNvbXBsZXRlKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNhdmUoKTtcbiAgfVxuXG4gIGRlbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblNob3dTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zaG93U3Vic2NyaXB0aW9uID0gdGhpcy5zdGF0ZVNlcnZpY2Uuc2hvd01vZGFsJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5IaWRlU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuaGlkZVN1YnNjcmlwdGlvbiA9IHRoaXMuc3RhdGVTZXJ2aWNlLmhpZGVNb2RhbCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZXR1cm5Ub0ZpcnN0U3RlcCgpOiB2b2lkIHtcbiAgICB0aGlzLnJldHVyblRvRmlyc3RTdGVwU3ViamVjdCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hvdygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5tb2RhbFR5cGUkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKG1vZGFsVHlwZSA9PiB7XG4gICAgICBpZiAobW9kYWxUeXBlID09PSAnYWRkJykge1xuICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuTW9kYWwodGhpcy5jb25uZWN0b3JDcmVhdGVNb2RhbCk7XG4gICAgICB9IGVsc2UgaWYgKG1vZGFsVHlwZSA9PT0gJ21vZGlmeScpIHtcbiAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2Uub3Blbk1vZGFsKHRoaXMuY29ubmVjdG9yRWRpdE1vZGFsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48di1tb2RhbCAjY29ubmVjdG9yRWRpdE1vZGFsPlxuICA8ZGl2IHJvbGU9XCJoZWFkZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZWRpdC1jb25uZWN0b3ItdGl0bGVcIj5cbiAgICAgIDx2LXRpdGxlIFttYXJnaW5dPVwiZmFsc2VcIj57eyAnY29ubmVjdG9yTWFuYWdlbWVudC5tb2RpZnknIHwgdHJhbnNsYXRlIH19PC92LXRpdGxlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiByb2xlPVwiY29udGVudFwiPlxuICAgIDx2YWx0aW1vLW1vZGlmeS1jb25uZWN0b3JcbiAgICAgIFtzaG93U2F2ZUJ1dHRvbl09XCJmYWxzZVwiXG4gICAgICBbc2hvd0RlbGV0ZUJ1dHRvbl09XCJmYWxzZVwiXG4gICAgPjwvdmFsdGltby1tb2RpZnktY29ubmVjdG9yPlxuICA8L2Rpdj5cbiAgPGRpdiByb2xlPVwiZm9vdGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImVkaXQtY29ubmVjdG9yLWJ1dHRvbnNcIj5cbiAgICAgIDx2LWJ1dHRvblxuICAgICAgICBbZGlzYWJsZWRdPVwiaW5wdXREaXNhYmxlZCQgfCBhc3luY1wiXG4gICAgICAgIChjbGlja0V2ZW50KT1cImRlbGV0ZSgpXCJcbiAgICAgICAgW21kaUljb25dPVwiJ2RlbGV0ZSdcIlxuICAgICAgICB0eXBlPVwiZGFuZ2VyXCJcbiAgICAgICAgPnt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX08L3YtYnV0dG9uXG4gICAgICA+XG4gICAgICA8di1idXR0b25cbiAgICAgICAgKm5nSWY9XCIoaGlkZU1vZGFsU2F2ZUJ1dHRvbiQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIihzYXZlQnV0dG9uRGlzYWJsZWQkIHwgYXN5bmMpIHx8IChpbnB1dERpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgICAgIChjbGlja0V2ZW50KT1cImNvbXBsZXRlKClcIlxuICAgICAgICBbbWRpSWNvbl09XCInY2hlY2snXCJcbiAgICAgICAgdHlwZT1cInN1Y2Nlc3NcIlxuICAgICAgICA+e3sgJ2Nvbm5lY3Rvck1hbmFnZW1lbnQuc2F2ZScgfCB0cmFuc2xhdGUgfX08L3YtYnV0dG9uXG4gICAgICA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC92LW1vZGFsPlxuXG48di1zdGVwcGVyLWNvbnRhaW5lclxuICAoY29tcGxldGVFdmVudCk9XCJjb21wbGV0ZSgpXCJcbiAgKGNhbmNlbENsaWNrRXZlbnQpPVwiaGlkZSgpXCJcbiAgW2Rpc2FibGVkXT1cImlucHV0RGlzYWJsZWQkIHwgYXN5bmNcIlxuICBbcmV0dXJuVG9GaXJzdFN0ZXBTdWJqZWN0JF09XCJyZXR1cm5Ub0ZpcnN0U3RlcFN1YmplY3QkXCJcbj5cbiAgPHYtbW9kYWwgI2Nvbm5lY3RvckNyZWF0ZU1vZGFsIChjbG9zZUV2ZW50KT1cImhpZGUoKVwiPlxuICAgIDxkaXYgcm9sZT1cImhlYWRlclwiPlxuICAgICAgPHYtc3RlcHBlci1oZWFkZXI+PC92LXN0ZXBwZXItaGVhZGVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgcm9sZT1cImNvbnRlbnRcIj5cbiAgICAgIDx2LXN0ZXBwZXItY29udGVudD5cbiAgICAgICAgPHYtc3RlcHBlci1zdGVwIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMFwiPlxuICAgICAgICAgIDx2YWx0aW1vLWFkZC1jb25uZWN0b3Itc2VsZWN0PjwvdmFsdGltby1hZGQtY29ubmVjdG9yLXNlbGVjdD5cbiAgICAgICAgPC92LXN0ZXBwZXItc3RlcD5cbiAgICAgICAgPHYtc3RlcHBlci1zdGVwIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMVwiPlxuICAgICAgICAgIDx2YWx0aW1vLWFkZC1jb25uZWN0b3ItY29uZmlndXJlXG4gICAgICAgICAgICBbc2hvd1NhdmVCdXR0b25dPVwiZmFsc2VcIlxuICAgICAgICAgID48L3ZhbHRpbW8tYWRkLWNvbm5lY3Rvci1jb25maWd1cmU+XG4gICAgICAgIDwvdi1zdGVwcGVyLXN0ZXA+XG4gICAgICA8L3Ytc3RlcHBlci1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgcm9sZT1cImZvb3RlclwiPlxuICAgICAgPHYtc3RlcHBlci1mb290ZXI+XG4gICAgICAgIDx2LXN0ZXBwZXItZm9vdGVyLXN0ZXBcbiAgICAgICAgICBuZXh0QnV0dG9uVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5zdGVwMVwiXG4gICAgICAgICAgW25leHRCdXR0b25FbmFibGVkXT1cImNvbm5lY3RvclR5cGVTZWxlY3RlZCQgfCBhc3luY1wiXG4gICAgICAgID48L3Ytc3RlcHBlci1mb290ZXItc3RlcD5cbiAgICAgICAgPHYtc3RlcHBlci1mb290ZXItc3RlcFxuICAgICAgICAgIGNvbXBsZXRlQnV0dG9uVHJhbnNsYXRpb25LZXk9XCJhZGRDb25uZWN0b3JTdGVwcy5jb21wbGV0ZVwiXG4gICAgICAgICAgW2NvbXBsZXRlQnV0dG9uRW5hYmxlZF09XCIoc2F2ZUJ1dHRvbkRpc2FibGVkJCB8IGFzeW5jKSA9PT0gZmFsc2VcIlxuICAgICAgICAgIFtzaG93Q29tcGxldGVCdXR0b25dPVwiKGhpZGVNb2RhbFNhdmVCdXR0b24kIHwgYXN5bmMpID09PSBmYWxzZVwiXG4gICAgICAgID48L3Ytc3RlcHBlci1mb290ZXItc3RlcD5cbiAgICAgIDwvdi1zdGVwcGVyLWZvb3Rlcj5cbiAgICA8L2Rpdj5cbiAgPC92LW1vZGFsPlxuPC92LXN0ZXBwZXItY29udGFpbmVyPlxuIl19
@@ -33,10 +33,10 @@ export class EditConnectorFormComponent {
33
33
  this.taakName = 'Taak';
34
34
  this.customConnectorNames = [this.productAanvragenName, this.taakName];
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditConnectorFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: EditConnectorFormComponent, selector: "valtimo-edit-connector-form", inputs: { properties: "properties", withDefaults: "withDefaults", showDeleteButton: "showDeleteButton", showSaveButton: "showSaveButton", defaultName: "defaultName", connectorName: "connectorName" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, 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<valtimo-edit-connector-properties\n *ngIf=\"!customConnectorNames.includes(connectorName)\"\n [properties]=\"properties\"\n [withDefaults]=\"withDefaults\"\n [defaultName]=\"defaultName\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n [showSaveButton]=\"showSaveButton\"\n>\n</valtimo-edit-connector-properties>\n\n<valtimo-edit-product-aanvragen-connector\n *ngIf=\"connectorName === productAanvragenName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-product-aanvragen-connector>\n\n<valtimo-edit-taak-connector\n *ngIf=\"connectorName === taakName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-taak-connector>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EditConnectorPropertiesComponent, selector: "valtimo-edit-connector-properties", inputs: ["properties", "withDefaults", "showDeleteButton", "showSaveButton", "defaultName"], outputs: ["propertiesSave", "connectorDelete"] }, { kind: "component", type: i3.EditProductAanvragenConnectorComponent, selector: "valtimo-edit-product-aanvragen-connector", inputs: ["properties", "defaultName", "showDeleteButton"], outputs: ["propertiesSave", "connectorDelete"] }, { kind: "component", type: i4.EditTaakConnectorComponent, selector: "valtimo-edit-taak-connector", inputs: ["properties", "defaultName", "showDeleteButton"], outputs: ["propertiesSave", "connectorDelete"] }] }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditConnectorFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: EditConnectorFormComponent, selector: "valtimo-edit-connector-form", inputs: { properties: "properties", withDefaults: "withDefaults", showDeleteButton: "showDeleteButton", showSaveButton: "showSaveButton", defaultName: "defaultName", connectorName: "connectorName" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, 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<valtimo-edit-connector-properties\n *ngIf=\"!customConnectorNames.includes(connectorName)\"\n [properties]=\"properties\"\n [withDefaults]=\"withDefaults\"\n [defaultName]=\"defaultName\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n [showSaveButton]=\"showSaveButton\"\n>\n</valtimo-edit-connector-properties>\n\n<valtimo-edit-product-aanvragen-connector\n *ngIf=\"connectorName === productAanvragenName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-product-aanvragen-connector>\n\n<valtimo-edit-taak-connector\n *ngIf=\"connectorName === taakName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-taak-connector>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EditConnectorPropertiesComponent, selector: "valtimo-edit-connector-properties", inputs: ["properties", "withDefaults", "showDeleteButton", "showSaveButton", "defaultName"], outputs: ["propertiesSave", "connectorDelete"] }, { kind: "component", type: i3.EditProductAanvragenConnectorComponent, selector: "valtimo-edit-product-aanvragen-connector", inputs: ["properties", "defaultName", "showDeleteButton"], outputs: ["propertiesSave", "connectorDelete"] }, { kind: "component", type: i4.EditTaakConnectorComponent, selector: "valtimo-edit-taak-connector", inputs: ["properties", "defaultName", "showDeleteButton"], outputs: ["propertiesSave", "connectorDelete"] }] }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditConnectorFormComponent, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditConnectorFormComponent, decorators: [{
40
40
  type: Component,
41
41
  args: [{ selector: 'valtimo-edit-connector-form', 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<valtimo-edit-connector-properties\n *ngIf=\"!customConnectorNames.includes(connectorName)\"\n [properties]=\"properties\"\n [withDefaults]=\"withDefaults\"\n [defaultName]=\"defaultName\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n [showSaveButton]=\"showSaveButton\"\n>\n</valtimo-edit-connector-properties>\n\n<valtimo-edit-product-aanvragen-connector\n *ngIf=\"connectorName === productAanvragenName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-product-aanvragen-connector>\n\n<valtimo-edit-taak-connector\n *ngIf=\"connectorName === taakName\"\n [defaultName]=\"defaultName\"\n [properties]=\"properties\"\n [showDeleteButton]=\"showDeleteButton\"\n (propertiesSave)=\"propertiesSave.emit($event)\"\n (connectorDelete)=\"connectorDelete.emit()\"\n>\n</valtimo-edit-taak-connector>\n", styles: ["/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
42
42
  }], propDecorators: { properties: [{
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
56
56
  }], connectorDelete: [{
57
57
  type: Output
58
58
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1jb25uZWN0b3ItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2Nvbm5lY3Rvci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9lZGl0LWNvbm5lY3Rvci1mb3JtL2VkaXQtY29ubmVjdG9yLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1jb25uZWN0b3ItZm9ybS9lZGl0LWNvbm5lY3Rvci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBR3JFOztHQUVHO0FBTUgsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU9XLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUlyQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFtRCxDQUFDO1FBQ3JGLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUzQyx5QkFBb0IsR0FBRyxrQkFBa0IsQ0FBQztRQUMxQyxhQUFRLEdBQUcsTUFBTSxDQUFDO1FBQ2xCLHlCQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUM1RTs4R0FkWSwwQkFBMEI7a0dBQTFCLDBCQUEwQiw4VkMzQnZDLDZzREErQ0E7OzJGRHBCYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsNkJBQTZCOzhCQUs5QixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb25uZWN0b3JQcm9wZXJ0aWVzfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgbmV3IHBsdWdpbiBmcmFtZXdvcmtcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1lZGl0LWNvbm5lY3Rvci1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtY29ubmVjdG9yLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZGl0LWNvbm5lY3Rvci1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRDb25uZWN0b3JGb3JtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgd2l0aERlZmF1bHRzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBkZWZhdWx0TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgY29ubmVjdG9yTmFtZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSBwcm9wZXJ0aWVzU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8e3Byb3BlcnRpZXM6IENvbm5lY3RvclByb3BlcnRpZXM7IG5hbWU6IHN0cmluZ30+KCk7XG4gIEBPdXRwdXQoKSBjb25uZWN0b3JEZWxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICByZWFkb25seSBwcm9kdWN0QWFudnJhZ2VuTmFtZSA9ICdQcm9kdWN0QWFudnJhZ2VuJztcbiAgcmVhZG9ubHkgdGFha05hbWUgPSAnVGFhayc7XG4gIHJlYWRvbmx5IGN1c3RvbUNvbm5lY3Rvck5hbWVzID0gW3RoaXMucHJvZHVjdEFhbnZyYWdlbk5hbWUsIHRoaXMudGFha05hbWVdO1xufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48dmFsdGltby1lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzXG4gICpuZ0lmPVwiIWN1c3RvbUNvbm5lY3Rvck5hbWVzLmluY2x1ZGVzKGNvbm5lY3Rvck5hbWUpXCJcbiAgW3Byb3BlcnRpZXNdPVwicHJvcGVydGllc1wiXG4gIFt3aXRoRGVmYXVsdHNdPVwid2l0aERlZmF1bHRzXCJcbiAgW2RlZmF1bHROYW1lXT1cImRlZmF1bHROYW1lXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuICBbc2hvd1NhdmVCdXR0b25dPVwic2hvd1NhdmVCdXR0b25cIlxuPlxuPC92YWx0aW1vLWVkaXQtY29ubmVjdG9yLXByb3BlcnRpZXM+XG5cbjx2YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yXG4gICpuZ0lmPVwiY29ubmVjdG9yTmFtZSA9PT0gcHJvZHVjdEFhbnZyYWdlbk5hbWVcIlxuICBbZGVmYXVsdE5hbWVdPVwiZGVmYXVsdE5hbWVcIlxuICBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuPlxuPC92YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yPlxuXG48dmFsdGltby1lZGl0LXRhYWstY29ubmVjdG9yXG4gICpuZ0lmPVwiY29ubmVjdG9yTmFtZSA9PT0gdGFha05hbWVcIlxuICBbZGVmYXVsdE5hbWVdPVwiZGVmYXVsdE5hbWVcIlxuICBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuPlxuPC92YWx0aW1vLWVkaXQtdGFhay1jb25uZWN0b3I+XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1jb25uZWN0b3ItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2Nvbm5lY3Rvci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9lZGl0LWNvbm5lY3Rvci1mb3JtL2VkaXQtY29ubmVjdG9yLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1jb25uZWN0b3ItZm9ybS9lZGl0LWNvbm5lY3Rvci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBR3JFOztHQUVHO0FBTUgsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU9XLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUlyQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFtRCxDQUFDO1FBQ3JGLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUzQyx5QkFBb0IsR0FBRyxrQkFBa0IsQ0FBQztRQUMxQyxhQUFRLEdBQUcsTUFBTSxDQUFDO1FBQ2xCLHlCQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUM1RTsrR0FkWSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw4VkMzQnZDLDZzREErQ0E7OzRGRHBCYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsNkJBQTZCOzhCQUs5QixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb25uZWN0b3JQcm9wZXJ0aWVzfSBmcm9tICdAdmFsdGltby9jb25maWcnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSB0aGUgbmV3IHBsdWdpbiBmcmFtZXdvcmtcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1lZGl0LWNvbm5lY3Rvci1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtY29ubmVjdG9yLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZGl0LWNvbm5lY3Rvci1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRDb25uZWN0b3JGb3JtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgd2l0aERlZmF1bHRzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBkZWZhdWx0TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgY29ubmVjdG9yTmFtZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSBwcm9wZXJ0aWVzU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8e3Byb3BlcnRpZXM6IENvbm5lY3RvclByb3BlcnRpZXM7IG5hbWU6IHN0cmluZ30+KCk7XG4gIEBPdXRwdXQoKSBjb25uZWN0b3JEZWxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICByZWFkb25seSBwcm9kdWN0QWFudnJhZ2VuTmFtZSA9ICdQcm9kdWN0QWFudnJhZ2VuJztcbiAgcmVhZG9ubHkgdGFha05hbWUgPSAnVGFhayc7XG4gIHJlYWRvbmx5IGN1c3RvbUNvbm5lY3Rvck5hbWVzID0gW3RoaXMucHJvZHVjdEFhbnZyYWdlbk5hbWUsIHRoaXMudGFha05hbWVdO1xufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48dmFsdGltby1lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzXG4gICpuZ0lmPVwiIWN1c3RvbUNvbm5lY3Rvck5hbWVzLmluY2x1ZGVzKGNvbm5lY3Rvck5hbWUpXCJcbiAgW3Byb3BlcnRpZXNdPVwicHJvcGVydGllc1wiXG4gIFt3aXRoRGVmYXVsdHNdPVwid2l0aERlZmF1bHRzXCJcbiAgW2RlZmF1bHROYW1lXT1cImRlZmF1bHROYW1lXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuICBbc2hvd1NhdmVCdXR0b25dPVwic2hvd1NhdmVCdXR0b25cIlxuPlxuPC92YWx0aW1vLWVkaXQtY29ubmVjdG9yLXByb3BlcnRpZXM+XG5cbjx2YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yXG4gICpuZ0lmPVwiY29ubmVjdG9yTmFtZSA9PT0gcHJvZHVjdEFhbnZyYWdlbk5hbWVcIlxuICBbZGVmYXVsdE5hbWVdPVwiZGVmYXVsdE5hbWVcIlxuICBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuPlxuPC92YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yPlxuXG48dmFsdGltby1lZGl0LXRhYWstY29ubmVjdG9yXG4gICpuZ0lmPVwiY29ubmVjdG9yTmFtZSA9PT0gdGFha05hbWVcIlxuICBbZGVmYXVsdE5hbWVdPVwiZGVmYXVsdE5hbWVcIlxuICBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCJcbiAgW3Nob3dEZWxldGVCdXR0b25dPVwic2hvd0RlbGV0ZUJ1dHRvblwiXG4gIChwcm9wZXJ0aWVzU2F2ZSk9XCJwcm9wZXJ0aWVzU2F2ZS5lbWl0KCRldmVudClcIlxuICAoY29ubmVjdG9yRGVsZXRlKT1cImNvbm5lY3RvckRlbGV0ZS5lbWl0KClcIlxuPlxuPC92YWx0aW1vLWVkaXQtdGFhay1jb25uZWN0b3I+XG4iXX0=
@@ -164,10 +164,10 @@ export class EditConnectorPropertiesComponent {
164
164
  this.onDelete();
165
165
  });
166
166
  }
167
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditConnectorPropertiesComponent, deps: [{ token: i1.ConnectorManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
168
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: EditConnectorPropertiesComponent, selector: "valtimo-edit-connector-properties", inputs: { properties: "properties", withDefaults: "withDefaults", showDeleteButton: "showDeleteButton", showSaveButton: "showSaveButton", defaultName: "defaultName" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"edit-fields\"\n *ngIf=\"{editFields: editFields$ | async, disabled: disabled$ | async} as obs\"\n>\n <ng-container *ngTemplateOutlet=\"nameInput; context: {disabled: obs.disabled}\"></ng-container>\n <ng-container *ngFor=\"let editField of obs.editFields\">\n <ng-container *ngIf=\"editField.editType === 'string' || editField.editType === 'number'\">\n <ng-container\n *ngTemplateOutlet=\"singleInput; context: {editField: editField, disabled: obs.disabled}\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"editField.editType === 'string[]' || editField.editType === 'number[]'\">\n <valtimo-multi-value-connector-property\n [editField]=\"editField\"\n (valuesSet)=\"multiFieldValuesSet($event)\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"withDefaults && editField.defaultValue\"\n >\n </valtimo-multi-value-connector-property>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"buttons; context: {disabled: obs.disabled}\"></ng-container>\n</div>\n\n<ng-template #nameInput let-disabled=\"disabled\">\n <v-input\n name=\"name\"\n titleTranslationKey=\"connectorManagement.inputLabels.connectorName\"\n [defaultValue]=\"withDefaults && defaultName ? defaultName : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onNameValueChange($event)\"\n ></v-input>\n</ng-template>\n\n<ng-template #singleInput let-editField=\"editField\" let-disabled=\"disabled\">\n <v-input\n *ngIf=\"editField.editType === 'string'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n ></v-input>\n <v-input\n *ngIf=\"editField.editType === 'number'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n [step]=\"1\"\n [min]=\"0\"\n ></v-input>\n</ng-template>\n\n<ng-template #buttons let-disabled=\"disabled\">\n <div class=\"border-top mt-3 pt-6\" *ngIf=\"showDeleteButton || showSaveButton\">\n <div class=\"button-container\">\n <button\n *ngIf=\"showSaveButton\"\n class=\"btn btn-primary\"\n [disabled]=\"disabled || (saveButtonDisabled$ | async)\"\n (click)=\"onSave()\"\n >\n <i class=\"icon mdi mdi-save mr-1\"></i>\n {{ 'connectorManagement.save' | translate }}\n </button>\n <button\n *ngIf=\"showDeleteButton\"\n class=\"btn btn-danger btn-space\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n >\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [".button-container{flex-flow:row-reverse;width:100%;display:flex;justify-content:space-between}\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: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "smallMargin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "smallLabel", "rows", "clear$", "carbonTheme", "placeholder"], outputs: ["valueChange"] }, { kind: "component", type: i4.MultiValueConnectorPropertyComponent, selector: "valtimo-multi-value-connector-property", inputs: ["editField", "disabled", "defaultValue"], outputs: ["valuesSet"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
167
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditConnectorPropertiesComponent, deps: [{ token: i1.ConnectorManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
168
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: EditConnectorPropertiesComponent, selector: "valtimo-edit-connector-properties", inputs: { properties: "properties", withDefaults: "withDefaults", showDeleteButton: "showDeleteButton", showSaveButton: "showSaveButton", defaultName: "defaultName" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"edit-fields\"\n *ngIf=\"{editFields: editFields$ | async, disabled: disabled$ | async} as obs\"\n>\n <ng-container *ngTemplateOutlet=\"nameInput; context: {disabled: obs.disabled}\"></ng-container>\n <ng-container *ngFor=\"let editField of obs.editFields\">\n <ng-container *ngIf=\"editField.editType === 'string' || editField.editType === 'number'\">\n <ng-container\n *ngTemplateOutlet=\"singleInput; context: {editField: editField, disabled: obs.disabled}\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"editField.editType === 'string[]' || editField.editType === 'number[]'\">\n <valtimo-multi-value-connector-property\n [editField]=\"editField\"\n (valuesSet)=\"multiFieldValuesSet($event)\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"withDefaults && editField.defaultValue\"\n >\n </valtimo-multi-value-connector-property>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"buttons; context: {disabled: obs.disabled}\"></ng-container>\n</div>\n\n<ng-template #nameInput let-disabled=\"disabled\">\n <v-input\n name=\"name\"\n titleTranslationKey=\"connectorManagement.inputLabels.connectorName\"\n [defaultValue]=\"withDefaults && defaultName ? defaultName : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onNameValueChange($event)\"\n ></v-input>\n</ng-template>\n\n<ng-template #singleInput let-editField=\"editField\" let-disabled=\"disabled\">\n <v-input\n *ngIf=\"editField.editType === 'string'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n ></v-input>\n <v-input\n *ngIf=\"editField.editType === 'number'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n [step]=\"1\"\n [min]=\"0\"\n ></v-input>\n</ng-template>\n\n<ng-template #buttons let-disabled=\"disabled\">\n <div class=\"border-top mt-3 pt-6\" *ngIf=\"showDeleteButton || showSaveButton\">\n <div class=\"button-container\">\n <button\n *ngIf=\"showSaveButton\"\n class=\"btn btn-primary\"\n [disabled]=\"disabled || (saveButtonDisabled$ | async)\"\n (click)=\"onSave()\"\n >\n <i class=\"icon mdi mdi-save mr-1\"></i>\n {{ 'connectorManagement.save' | translate }}\n </button>\n <button\n *ngIf=\"showDeleteButton\"\n class=\"btn btn-danger btn-space\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n >\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [".button-container{flex-flow:row-reverse;width:100%;display:flex;justify-content:space-between}\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: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "smallMargin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "smallLabel", "rows", "clear$", "carbonTheme", "placeholder"], outputs: ["valueChange"] }, { kind: "component", type: i4.MultiValueConnectorPropertyComponent, selector: "valtimo-multi-value-connector-property", inputs: ["editField", "disabled", "defaultValue"], outputs: ["valuesSet"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
169
169
  }
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditConnectorPropertiesComponent, decorators: [{
170
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditConnectorPropertiesComponent, decorators: [{
171
171
  type: Component,
172
172
  args: [{ selector: 'valtimo-edit-connector-properties', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n class=\"edit-fields\"\n *ngIf=\"{editFields: editFields$ | async, disabled: disabled$ | async} as obs\"\n>\n <ng-container *ngTemplateOutlet=\"nameInput; context: {disabled: obs.disabled}\"></ng-container>\n <ng-container *ngFor=\"let editField of obs.editFields\">\n <ng-container *ngIf=\"editField.editType === 'string' || editField.editType === 'number'\">\n <ng-container\n *ngTemplateOutlet=\"singleInput; context: {editField: editField, disabled: obs.disabled}\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"editField.editType === 'string[]' || editField.editType === 'number[]'\">\n <valtimo-multi-value-connector-property\n [editField]=\"editField\"\n (valuesSet)=\"multiFieldValuesSet($event)\"\n [disabled]=\"obs.disabled\"\n [defaultValue]=\"withDefaults && editField.defaultValue\"\n >\n </valtimo-multi-value-connector-property>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"buttons; context: {disabled: obs.disabled}\"></ng-container>\n</div>\n\n<ng-template #nameInput let-disabled=\"disabled\">\n <v-input\n name=\"name\"\n titleTranslationKey=\"connectorManagement.inputLabels.connectorName\"\n [defaultValue]=\"withDefaults && defaultName ? defaultName : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onNameValueChange($event)\"\n ></v-input>\n</ng-template>\n\n<ng-template #singleInput let-editField=\"editField\" let-disabled=\"disabled\">\n <v-input\n *ngIf=\"editField.editType === 'string'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n ></v-input>\n <v-input\n *ngIf=\"editField.editType === 'number'\"\n [name]=\"editField.key\"\n [titleTranslationKey]=\"'connectorManagement.inputLabels.' + editField.key\"\n [defaultValue]=\"withDefaults ? editField.defaultValue : ''\"\n [fullWidth]=\"true\"\n [margin]=\"true\"\n [disabled]=\"disabled\"\n (valueChange)=\"onSingleValueChange($event, editField)\"\n [step]=\"1\"\n [min]=\"0\"\n ></v-input>\n</ng-template>\n\n<ng-template #buttons let-disabled=\"disabled\">\n <div class=\"border-top mt-3 pt-6\" *ngIf=\"showDeleteButton || showSaveButton\">\n <div class=\"button-container\">\n <button\n *ngIf=\"showSaveButton\"\n class=\"btn btn-primary\"\n [disabled]=\"disabled || (saveButtonDisabled$ | async)\"\n (click)=\"onSave()\"\n >\n <i class=\"icon mdi mdi-save mr-1\"></i>\n {{ 'connectorManagement.save' | translate }}\n </button>\n <button\n *ngIf=\"showDeleteButton\"\n class=\"btn btn-danger btn-space\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n >\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [".button-container{flex-flow:row-reverse;width:100%;display:flex;justify-content:space-between}\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"] }]
173
173
  }], ctorParameters: () => [{ type: i1.ConnectorManagementStateService }], propDecorators: { properties: [{
@@ -185,4 +185,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
185
185
  }], connectorDelete: [{
186
186
  type: Output
187
187
  }] } });
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2Nvbm5lY3Rvci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzL2VkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy9lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFNbkcsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQTJCLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7O0FBRzNDOztHQUVHO0FBTUgsTUFBTSxPQUFPLGdDQUFnQztJQXdCM0MsWUFBNkIsWUFBNkM7UUFBN0MsaUJBQVksR0FBWixZQUFZLENBQWlDO1FBdEJqRSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFHckIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBbUQsQ0FBQztRQUNyRixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJM0Msd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQXNCLFNBQVMsQ0FBQyxDQUFDO1FBRTFFLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQW9DLEVBQUUsQ0FBQyxDQUFDO1FBRXpFLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFakQsd0JBQW1CLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztRQU9uRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDO0lBQ3BELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsOEJBQThCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBb0U7UUFDdEYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUQsR0FBRyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQVUsRUFBRSxTQUFxQztRQUNuRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM1RCxHQUFHLENBQ0QsVUFBVSxFQUNWLFNBQVMsQ0FBQyxHQUFHLEVBQ2IsU0FBUyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FDckUsQ0FBQztZQUNGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFakMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUMzRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLE9BQU87UUFDYixJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCLENBQUMsVUFBNkM7UUFDekUsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQzdCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUNoRCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxhQUFhO1FBQ25CLE1BQU0sVUFBVSxHQUFzQyxFQUFFLENBQUM7UUFDekQsTUFBTSxZQUFZLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsYUFBa0MsRUFBRSxZQUFvQixFQUFFLEVBQUU7WUFDdkYsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FDekQsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQ25DLENBQUM7WUFFRixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzlCLE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDekMsTUFBTSxhQUFhLEdBQUc7b0JBQ3BCLEdBQUcsRUFBRSxZQUFZLEdBQUcsR0FBRztvQkFDdkIsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksRUFBQyxZQUFZLEVBQUUsYUFBMkMsRUFBQyxDQUFDO2lCQUN0RixDQUFDO2dCQUVGLElBQUksT0FBTyxhQUFhLEtBQUssUUFBUSxFQUFFLENBQUM7b0JBQ3RDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLGFBQWEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQztnQkFDMUQsQ0FBQztxQkFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztvQkFDeEMsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7d0JBQzdELFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLGFBQWEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztvQkFDNUQsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLGFBQWEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztvQkFDNUQsQ0FBQztnQkFDSCxDQUFDO3FCQUFNLElBQUksT0FBTyxhQUFhLEtBQUssUUFBUSxFQUFFLENBQUM7b0JBQzdDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLGFBQWEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQztnQkFDMUQsQ0FBQztxQkFBTSxJQUFJLE9BQU8sYUFBYSxLQUFLLFFBQVEsRUFBRSxDQUFDO29CQUM3QyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsR0FBRyxZQUFZLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztnQkFDL0QsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUYsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLGtDQUFrQztRQUN4QyxJQUFJLENBQUMsOEJBQThCLEdBQUcsYUFBYSxDQUFDO1lBQ2xELElBQUksQ0FBQyxXQUFXO1lBQ2hCLElBQUksQ0FBQyxtQkFBbUI7WUFDeEIsSUFBSSxDQUFDLGNBQWM7U0FDcEIsQ0FBQzthQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxhQUFhLENBQUMsRUFBRSxFQUFFO1lBQ3RELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDM0UsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUN4QyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQy9ELENBQUM7WUFDRixNQUFNLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxNQUFNLEtBQUssV0FBVyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUVyRixJQUFJLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUN4QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNqRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWpMVSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQyx5VkNuQzdDLDh4SEFxR0E7OzJGRGxFYSxnQ0FBZ0M7a0JBTDVDLFNBQVM7K0JBQ0UsbUNBQW1DO29HQUtwQyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENvbm5lY3RvclByb3BlcnRpZXMsXG4gIENvbm5lY3RvclByb3BlcnR5RWRpdEZpZWxkLFxuICBDb25uZWN0b3JQcm9wZXJ0eVZhbHVlVHlwZSxcbn0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Y2xvbmVEZWVwLCBnZXQsIHNldH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBuZXcgcGx1Z2luIGZyYW1ld29ya1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWVkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdENvbm5lY3RvclByb3BlcnRpZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgd2l0aERlZmF1bHRzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBkZWZhdWx0TmFtZSE6IHN0cmluZztcblxuICBAT3V0cHV0KCkgcHJvcGVydGllc1NhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHtwcm9wZXJ0aWVzOiBDb25uZWN0b3JQcm9wZXJ0aWVzOyBuYW1lOiBzdHJpbmd9PigpO1xuICBAT3V0cHV0KCkgY29ubmVjdG9yRGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWQkITogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICByZWFkb25seSBtb2RpZmllZFByb3BlcnRpZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb25uZWN0b3JQcm9wZXJ0aWVzPih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IGVkaXRGaWVsZHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4+KFtdKTtcblxuICByZWFkb25seSBjb25uZWN0b3JOYW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG5cbiAgcmVhZG9ubHkgc2F2ZUJ1dHRvbkRpc2FibGVkJCA9IHRoaXMuc3RhdGVTZXJ2aWNlLnNhdmVCdXR0b25EaXNhYmxlZCQ7XG5cbiAgcHJpdmF0ZSBzYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc2F2ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBkZWxldGVTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdGF0ZVNlcnZpY2U6IENvbm5lY3Rvck1hbmFnZW1lbnRTdGF0ZVNlcnZpY2UpIHtcbiAgICB0aGlzLmRpc2FibGVkJCA9IHRoaXMuc3RhdGVTZXJ2aWNlLmlucHV0RGlzYWJsZWQkO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRFZGl0RmllbGRzKCk7XG4gICAgdGhpcy5zZXROYW1lKCk7XG4gICAgdGhpcy5vcGVuU2F2ZUJ1dHRvbkRpc2FibGVkU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5vcGVuU2F2ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3BlbkRlbGV0ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNob3dNb2RhbFNhdmVCdXR0b24oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0RWRpdEZpZWxkcygpO1xuICAgIHRoaXMuc2V0TmFtZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zYXZlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZGVsZXRlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbXVsdGlGaWVsZFZhbHVlc1NldChldmVudDoge2VkaXRGaWVsZEtleTogc3RyaW5nOyB2YWx1ZXM6IEFycmF5PHN0cmluZz4gfCBBcnJheTxudW1iZXI+fSk6IHZvaWQge1xuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwcm9wZXJ0aWVzID0+IHtcbiAgICAgIHNldChwcm9wZXJ0aWVzLCBldmVudC5lZGl0RmllbGRLZXksIGV2ZW50LnZhbHVlcyk7XG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQubmV4dChwcm9wZXJ0aWVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uU2luZ2xlVmFsdWVDaGFuZ2UodmFsdWU6IGFueSwgZWRpdEZpZWxkOiBDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZCk6IHZvaWQge1xuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwcm9wZXJ0aWVzID0+IHtcbiAgICAgIHNldChcbiAgICAgICAgcHJvcGVydGllcyxcbiAgICAgICAgZWRpdEZpZWxkLmtleSxcbiAgICAgICAgZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnc3RyaW5nJyA/IHZhbHVlLnRyaW0oKSA6IHBhcnNlSW50KHZhbHVlLCAxMClcbiAgICAgICk7XG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQubmV4dChwcm9wZXJ0aWVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uTmFtZVZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvbm5lY3Rvck5hbWUkLm5leHQodmFsdWUudHJpbSgpKTtcbiAgfVxuXG4gIG9uU2F2ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kaXNhYmxlSW5wdXQoKTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJCwgdGhpcy5jb25uZWN0b3JOYW1lJF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW3Byb3BlcnRpZXMsIG5hbWVdKSA9PiB7XG4gICAgICAgIHRoaXMucHJvcGVydGllc1NhdmUuZW1pdCh7cHJvcGVydGllcywgbmFtZX0pO1xuICAgICAgfSk7XG4gIH1cblxuICBvbkRlbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kaXNhYmxlSW5wdXQoKTtcbiAgICB0aGlzLmNvbm5lY3RvckRlbGV0ZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIHNldE5hbWUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMud2l0aERlZmF1bHRzICYmIHRoaXMuZGVmYXVsdE5hbWUpIHtcbiAgICAgIHRoaXMuY29ubmVjdG9yTmFtZSQubmV4dCh0aGlzLmRlZmF1bHROYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb25uZWN0b3JOYW1lJC5uZXh0KCcnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldE1vZGlmaWVkUHJvcGVydGllcyhlZGl0RmllbGRzOiBBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4pOiB2b2lkIHtcbiAgICBjb25zdCBwcm9wZXJ0aWVzQ29weSA9IGNsb25lRGVlcCh0aGlzLnByb3BlcnRpZXMpO1xuXG4gICAgaWYgKCF0aGlzLndpdGhEZWZhdWx0cykge1xuICAgICAgZWRpdEZpZWxkcy5mb3JFYWNoKGVkaXRGaWVsZCA9PiB7XG4gICAgICAgIHNldChwcm9wZXJ0aWVzQ29weSwgZWRpdEZpZWxkLmtleSwgdW5kZWZpbmVkKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5uZXh0KHByb3BlcnRpZXNDb3B5KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RWRpdEZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCBlZGl0RmllbGRzOiBBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4gPSBbXTtcbiAgICBjb25zdCBrZXlzVG9GaWx0ZXIgPSBbJ2NsYXNzTmFtZSddO1xuXG4gICAgY29uc3QgaGFuZGxlUHJvcGVydHlMZXZlbCA9IChwcm9wZXJ0eUxldmVsOiBDb25uZWN0b3JQcm9wZXJ0aWVzLCBwcmV2aW91c0tleXM6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcHJvcGVydHlMZXZlbEtleXMgPSBPYmplY3Qua2V5cyhwcm9wZXJ0eUxldmVsKS5maWx0ZXIoXG4gICAgICAgIGtleSA9PiAha2V5c1RvRmlsdGVyLmluY2x1ZGVzKGtleSlcbiAgICAgICk7XG5cbiAgICAgIHByb3BlcnR5TGV2ZWxLZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZSA9IHByb3BlcnR5TGV2ZWxba2V5XTtcbiAgICAgICAgY29uc3QgYmFzZUVkaXRGaWVsZCA9IHtcbiAgICAgICAgICBrZXk6IHByZXZpb3VzS2V5cyArIGtleSxcbiAgICAgICAgICAuLi4odGhpcy53aXRoRGVmYXVsdHMgJiYge2RlZmF1bHRWYWx1ZTogcHJvcGVydHlWYWx1ZSBhcyBDb25uZWN0b3JQcm9wZXJ0eVZhbHVlVHlwZX0pLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICBlZGl0RmllbGRzLnB1c2goey4uLmJhc2VFZGl0RmllbGQsIGVkaXRUeXBlOiAnbnVtYmVyJ30pO1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlWYWx1ZSkpIHtcbiAgICAgICAgICBpZiAocHJvcGVydHlWYWx1ZVswXSAmJiB0eXBlb2YgcHJvcGVydHlWYWx1ZVswXSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIGVkaXRGaWVsZHMucHVzaCh7Li4uYmFzZUVkaXRGaWVsZCwgZWRpdFR5cGU6ICdudW1iZXJbXSd9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWRpdEZpZWxkcy5wdXNoKHsuLi5iYXNlRWRpdEZpZWxkLCBlZGl0VHlwZTogJ3N0cmluZ1tdJ30pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICBlZGl0RmllbGRzLnB1c2goey4uLmJhc2VFZGl0RmllbGQsIGVkaXRUeXBlOiAnc3RyaW5nJ30pO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9wZXJ0eVZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGhhbmRsZVByb3BlcnR5TGV2ZWwocHJvcGVydHlWYWx1ZSwgYCR7cHJldmlvdXNLZXlzfSR7a2V5fS5gKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVByb3BlcnR5TGV2ZWwodGhpcy5wcm9wZXJ0aWVzLCAnJyk7XG5cbiAgICB0aGlzLmVkaXRGaWVsZHMkLm5leHQoZWRpdEZpZWxkcyk7XG4gICAgdGhpcy5zZXRNb2RpZmllZFByb3BlcnRpZXMoZWRpdEZpZWxkcyk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5TYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZWRpdEZpZWxkcyQsXG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQsXG4gICAgICB0aGlzLmNvbm5lY3Rvck5hbWUkLFxuICAgIF0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbZWRpdEZpZWxkcywgbW9kaWZpZWRQcm9wZXJ0aWVzLCBjb25uZWN0b3JOYW1lXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IGVkaXRGaWVsZHMubWFwKGZpZWxkID0+IGdldChtb2RpZmllZFByb3BlcnRpZXMsIGZpZWxkLmtleSkpO1xuICAgICAgICAgIGNvbnN0IHZhbGlkVmFsdWVzID0gdmFsdWVzLmZpbHRlcih2YWx1ZSA9PlxuICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5sZW5ndGggPiAwIDogdmFsdWUgPT09IDAgfHwgdmFsdWVcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IGludmFsaWRQcm9wZXJ0aWVzID0gZWRpdEZpZWxkcy5sZW5ndGggIT09IHZhbGlkVmFsdWVzLmxlbmd0aCB8fCAhY29ubmVjdG9yTmFtZTtcblxuICAgICAgICAgIGlmIChpbnZhbGlkUHJvcGVydGllcykge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZGlzYWJsZVNhdmVCdXR0b24oKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZW5hYmxlU2F2ZUJ1dHRvbigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblNhdmVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlU3Vic2NyaXB0aW9uID0gdGhpcy5zdGF0ZVNlcnZpY2Uuc2F2ZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMub25TYXZlKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5EZWxldGVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVTdWJzY3JpcHRpb24gPSB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uRGVsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICBjbGFzcz1cImVkaXQtZmllbGRzXCJcbiAgKm5nSWY9XCJ7ZWRpdEZpZWxkczogZWRpdEZpZWxkcyQgfCBhc3luYywgZGlzYWJsZWQ6IGRpc2FibGVkJCB8IGFzeW5jfSBhcyBvYnNcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibmFtZUlucHV0OyBjb250ZXh0OiB7ZGlzYWJsZWQ6IG9icy5kaXNhYmxlZH1cIj48L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZWRpdEZpZWxkIG9mIG9icy5lZGl0RmllbGRzXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ3N0cmluZycgfHwgZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnbnVtYmVyJ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInNpbmdsZUlucHV0OyBjb250ZXh0OiB7ZWRpdEZpZWxkOiBlZGl0RmllbGQsIGRpc2FibGVkOiBvYnMuZGlzYWJsZWR9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnc3RyaW5nW10nIHx8IGVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ251bWJlcltdJ1wiPlxuICAgICAgPHZhbHRpbW8tbXVsdGktdmFsdWUtY29ubmVjdG9yLXByb3BlcnR5XG4gICAgICAgIFtlZGl0RmllbGRdPVwiZWRpdEZpZWxkXCJcbiAgICAgICAgKHZhbHVlc1NldCk9XCJtdWx0aUZpZWxkVmFsdWVzU2V0KCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwib2JzLmRpc2FibGVkXCJcbiAgICAgICAgW2RlZmF1bHRWYWx1ZV09XCJ3aXRoRGVmYXVsdHMgJiYgZWRpdEZpZWxkLmRlZmF1bHRWYWx1ZVwiXG4gICAgICA+XG4gICAgICA8L3ZhbHRpbW8tbXVsdGktdmFsdWUtY29ubmVjdG9yLXByb3BlcnR5PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnM7IGNvbnRleHQ6IHtkaXNhYmxlZDogb2JzLmRpc2FibGVkfVwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbmFtZUlucHV0IGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDx2LWlucHV0XG4gICAgbmFtZT1cIm5hbWVcIlxuICAgIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLmNvbm5lY3Rvck5hbWVcIlxuICAgIFtkZWZhdWx0VmFsdWVdPVwid2l0aERlZmF1bHRzICYmIGRlZmF1bHROYW1lID8gZGVmYXVsdE5hbWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uTmFtZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICA+PC92LWlucHV0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzaW5nbGVJbnB1dCBsZXQtZWRpdEZpZWxkPVwiZWRpdEZpZWxkXCIgbGV0LWRpc2FibGVkPVwiZGlzYWJsZWRcIj5cbiAgPHYtaW5wdXRcbiAgICAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ3N0cmluZydcIlxuICAgIFtuYW1lXT1cImVkaXRGaWVsZC5rZXlcIlxuICAgIFt0aXRsZVRyYW5zbGF0aW9uS2V5XT1cIidjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLicgKyBlZGl0RmllbGQua2V5XCJcbiAgICBbZGVmYXVsdFZhbHVlXT1cIndpdGhEZWZhdWx0cyA/IGVkaXRGaWVsZC5kZWZhdWx0VmFsdWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2luZ2xlVmFsdWVDaGFuZ2UoJGV2ZW50LCBlZGl0RmllbGQpXCJcbiAgPjwvdi1pbnB1dD5cbiAgPHYtaW5wdXRcbiAgICAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ251bWJlcidcIlxuICAgIFtuYW1lXT1cImVkaXRGaWVsZC5rZXlcIlxuICAgIFt0aXRsZVRyYW5zbGF0aW9uS2V5XT1cIidjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLicgKyBlZGl0RmllbGQua2V5XCJcbiAgICBbZGVmYXVsdFZhbHVlXT1cIndpdGhEZWZhdWx0cyA/IGVkaXRGaWVsZC5kZWZhdWx0VmFsdWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2luZ2xlVmFsdWVDaGFuZ2UoJGV2ZW50LCBlZGl0RmllbGQpXCJcbiAgICBbc3RlcF09XCIxXCJcbiAgICBbbWluXT1cIjBcIlxuICA+PC92LWlucHV0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNidXR0b25zIGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDxkaXYgY2xhc3M9XCJib3JkZXItdG9wIG10LTMgcHQtNlwiICpuZ0lmPVwic2hvd0RlbGV0ZUJ1dHRvbiB8fCBzaG93U2F2ZUJ1dHRvblwiPlxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwic2hvd1NhdmVCdXR0b25cIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCAoc2F2ZUJ1dHRvbkRpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgICAgIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICA+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLXNhdmUgbXItMVwiPjwvaT5cbiAgICAgICAge3sgJ2Nvbm5lY3Rvck1hbmFnZW1lbnQuc2F2ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cInNob3dEZWxldGVCdXR0b25cIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIGJ0bi1zcGFjZVwiXG4gICAgICAgIChjbGljayk9XCJvbkRlbGV0ZSgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgID5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29uIG1kaSBtZGktZGVsZXRlIG1yLTFcIj48L2k+XG4gICAgICAgIHt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2Nvbm5lY3Rvci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzL2VkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy9lZGl0LWNvbm5lY3Rvci1wcm9wZXJ0aWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFNbkcsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQTJCLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7O0FBRzNDOztHQUVHO0FBTUgsTUFBTSxPQUFPLGdDQUFnQztJQXdCM0MsWUFBNkIsWUFBNkM7UUFBN0MsaUJBQVksR0FBWixZQUFZLENBQWlDO1FBdEJqRSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFHckIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBbUQsQ0FBQztRQUNyRixvQkFBZSxHQUFHLElBQUksWUFBWSxF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LFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNqRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQWpMVSxnQ0FBZ0M7bUdBQWhDLGdDQUFnQyx5VkNuQzdDLDh4SEFxR0E7OzRGRGxFYSxnQ0FBZ0M7a0JBTDVDLFNBQVM7K0JBQ0UsbUNBQW1DO29HQUtwQyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENvbm5lY3RvclByb3BlcnRpZXMsXG4gIENvbm5lY3RvclByb3BlcnR5RWRpdEZpZWxkLFxuICBDb25uZWN0b3JQcm9wZXJ0eVZhbHVlVHlwZSxcbn0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Y2xvbmVEZWVwLCBnZXQsIHNldH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBuZXcgcGx1Z2luIGZyYW1ld29ya1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWVkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdC1jb25uZWN0b3ItcHJvcGVydGllcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VkaXQtY29ubmVjdG9yLXByb3BlcnRpZXMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdENvbm5lY3RvclByb3BlcnRpZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgd2l0aERlZmF1bHRzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBkZWZhdWx0TmFtZSE6IHN0cmluZztcblxuICBAT3V0cHV0KCkgcHJvcGVydGllc1NhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHtwcm9wZXJ0aWVzOiBDb25uZWN0b3JQcm9wZXJ0aWVzOyBuYW1lOiBzdHJpbmd9PigpO1xuICBAT3V0cHV0KCkgY29ubmVjdG9yRGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWQkITogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICByZWFkb25seSBtb2RpZmllZFByb3BlcnRpZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb25uZWN0b3JQcm9wZXJ0aWVzPih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IGVkaXRGaWVsZHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4+KFtdKTtcblxuICByZWFkb25seSBjb25uZWN0b3JOYW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG5cbiAgcmVhZG9ubHkgc2F2ZUJ1dHRvbkRpc2FibGVkJCA9IHRoaXMuc3RhdGVTZXJ2aWNlLnNhdmVCdXR0b25EaXNhYmxlZCQ7XG5cbiAgcHJpdmF0ZSBzYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc2F2ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBkZWxldGVTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdGF0ZVNlcnZpY2U6IENvbm5lY3Rvck1hbmFnZW1lbnRTdGF0ZVNlcnZpY2UpIHtcbiAgICB0aGlzLmRpc2FibGVkJCA9IHRoaXMuc3RhdGVTZXJ2aWNlLmlucHV0RGlzYWJsZWQkO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRFZGl0RmllbGRzKCk7XG4gICAgdGhpcy5zZXROYW1lKCk7XG4gICAgdGhpcy5vcGVuU2F2ZUJ1dHRvbkRpc2FibGVkU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5vcGVuU2F2ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3BlbkRlbGV0ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNob3dNb2RhbFNhdmVCdXR0b24oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0RWRpdEZpZWxkcygpO1xuICAgIHRoaXMuc2V0TmFtZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zYXZlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZGVsZXRlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbXVsdGlGaWVsZFZhbHVlc1NldChldmVudDoge2VkaXRGaWVsZEtleTogc3RyaW5nOyB2YWx1ZXM6IEFycmF5PHN0cmluZz4gfCBBcnJheTxudW1iZXI+fSk6IHZvaWQge1xuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwcm9wZXJ0aWVzID0+IHtcbiAgICAgIHNldChwcm9wZXJ0aWVzLCBldmVudC5lZGl0RmllbGRLZXksIGV2ZW50LnZhbHVlcyk7XG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQubmV4dChwcm9wZXJ0aWVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uU2luZ2xlVmFsdWVDaGFuZ2UodmFsdWU6IGFueSwgZWRpdEZpZWxkOiBDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZCk6IHZvaWQge1xuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwcm9wZXJ0aWVzID0+IHtcbiAgICAgIHNldChcbiAgICAgICAgcHJvcGVydGllcyxcbiAgICAgICAgZWRpdEZpZWxkLmtleSxcbiAgICAgICAgZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnc3RyaW5nJyA/IHZhbHVlLnRyaW0oKSA6IHBhcnNlSW50KHZhbHVlLCAxMClcbiAgICAgICk7XG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQubmV4dChwcm9wZXJ0aWVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uTmFtZVZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvbm5lY3Rvck5hbWUkLm5leHQodmFsdWUudHJpbSgpKTtcbiAgfVxuXG4gIG9uU2F2ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kaXNhYmxlSW5wdXQoKTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJCwgdGhpcy5jb25uZWN0b3JOYW1lJF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW3Byb3BlcnRpZXMsIG5hbWVdKSA9PiB7XG4gICAgICAgIHRoaXMucHJvcGVydGllc1NhdmUuZW1pdCh7cHJvcGVydGllcywgbmFtZX0pO1xuICAgICAgfSk7XG4gIH1cblxuICBvbkRlbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5kaXNhYmxlSW5wdXQoKTtcbiAgICB0aGlzLmNvbm5lY3RvckRlbGV0ZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIHNldE5hbWUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMud2l0aERlZmF1bHRzICYmIHRoaXMuZGVmYXVsdE5hbWUpIHtcbiAgICAgIHRoaXMuY29ubmVjdG9yTmFtZSQubmV4dCh0aGlzLmRlZmF1bHROYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb25uZWN0b3JOYW1lJC5uZXh0KCcnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldE1vZGlmaWVkUHJvcGVydGllcyhlZGl0RmllbGRzOiBBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4pOiB2b2lkIHtcbiAgICBjb25zdCBwcm9wZXJ0aWVzQ29weSA9IGNsb25lRGVlcCh0aGlzLnByb3BlcnRpZXMpO1xuXG4gICAgaWYgKCF0aGlzLndpdGhEZWZhdWx0cykge1xuICAgICAgZWRpdEZpZWxkcy5mb3JFYWNoKGVkaXRGaWVsZCA9PiB7XG4gICAgICAgIHNldChwcm9wZXJ0aWVzQ29weSwgZWRpdEZpZWxkLmtleSwgdW5kZWZpbmVkKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMubW9kaWZpZWRQcm9wZXJ0aWVzJC5uZXh0KHByb3BlcnRpZXNDb3B5KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RWRpdEZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCBlZGl0RmllbGRzOiBBcnJheTxDb25uZWN0b3JQcm9wZXJ0eUVkaXRGaWVsZD4gPSBbXTtcbiAgICBjb25zdCBrZXlzVG9GaWx0ZXIgPSBbJ2NsYXNzTmFtZSddO1xuXG4gICAgY29uc3QgaGFuZGxlUHJvcGVydHlMZXZlbCA9IChwcm9wZXJ0eUxldmVsOiBDb25uZWN0b3JQcm9wZXJ0aWVzLCBwcmV2aW91c0tleXM6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcHJvcGVydHlMZXZlbEtleXMgPSBPYmplY3Qua2V5cyhwcm9wZXJ0eUxldmVsKS5maWx0ZXIoXG4gICAgICAgIGtleSA9PiAha2V5c1RvRmlsdGVyLmluY2x1ZGVzKGtleSlcbiAgICAgICk7XG5cbiAgICAgIHByb3BlcnR5TGV2ZWxLZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZSA9IHByb3BlcnR5TGV2ZWxba2V5XTtcbiAgICAgICAgY29uc3QgYmFzZUVkaXRGaWVsZCA9IHtcbiAgICAgICAgICBrZXk6IHByZXZpb3VzS2V5cyArIGtleSxcbiAgICAgICAgICAuLi4odGhpcy53aXRoRGVmYXVsdHMgJiYge2RlZmF1bHRWYWx1ZTogcHJvcGVydHlWYWx1ZSBhcyBDb25uZWN0b3JQcm9wZXJ0eVZhbHVlVHlwZX0pLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICBlZGl0RmllbGRzLnB1c2goey4uLmJhc2VFZGl0RmllbGQsIGVkaXRUeXBlOiAnbnVtYmVyJ30pO1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlWYWx1ZSkpIHtcbiAgICAgICAgICBpZiAocHJvcGVydHlWYWx1ZVswXSAmJiB0eXBlb2YgcHJvcGVydHlWYWx1ZVswXSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIGVkaXRGaWVsZHMucHVzaCh7Li4uYmFzZUVkaXRGaWVsZCwgZWRpdFR5cGU6ICdudW1iZXJbXSd9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWRpdEZpZWxkcy5wdXNoKHsuLi5iYXNlRWRpdEZpZWxkLCBlZGl0VHlwZTogJ3N0cmluZ1tdJ30pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICBlZGl0RmllbGRzLnB1c2goey4uLmJhc2VFZGl0RmllbGQsIGVkaXRUeXBlOiAnc3RyaW5nJ30pO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9wZXJ0eVZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGhhbmRsZVByb3BlcnR5TGV2ZWwocHJvcGVydHlWYWx1ZSwgYCR7cHJldmlvdXNLZXlzfSR7a2V5fS5gKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVByb3BlcnR5TGV2ZWwodGhpcy5wcm9wZXJ0aWVzLCAnJyk7XG5cbiAgICB0aGlzLmVkaXRGaWVsZHMkLm5leHQoZWRpdEZpZWxkcyk7XG4gICAgdGhpcy5zZXRNb2RpZmllZFByb3BlcnRpZXMoZWRpdEZpZWxkcyk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5TYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWRTdWJzY3JpcHRpb24gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZWRpdEZpZWxkcyQsXG4gICAgICB0aGlzLm1vZGlmaWVkUHJvcGVydGllcyQsXG4gICAgICB0aGlzLmNvbm5lY3Rvck5hbWUkLFxuICAgIF0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbZWRpdEZpZWxkcywgbW9kaWZpZWRQcm9wZXJ0aWVzLCBjb25uZWN0b3JOYW1lXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IGVkaXRGaWVsZHMubWFwKGZpZWxkID0+IGdldChtb2RpZmllZFByb3BlcnRpZXMsIGZpZWxkLmtleSkpO1xuICAgICAgICAgIGNvbnN0IHZhbGlkVmFsdWVzID0gdmFsdWVzLmZpbHRlcih2YWx1ZSA9PlxuICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5sZW5ndGggPiAwIDogdmFsdWUgPT09IDAgfHwgdmFsdWVcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IGludmFsaWRQcm9wZXJ0aWVzID0gZWRpdEZpZWxkcy5sZW5ndGggIT09IHZhbGlkVmFsdWVzLmxlbmd0aCB8fCAhY29ubmVjdG9yTmFtZTtcblxuICAgICAgICAgIGlmIChpbnZhbGlkUHJvcGVydGllcykge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZGlzYWJsZVNhdmVCdXR0b24oKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2UuZW5hYmxlU2F2ZUJ1dHRvbigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlblNhdmVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlU3Vic2NyaXB0aW9uID0gdGhpcy5zdGF0ZVNlcnZpY2Uuc2F2ZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMub25TYXZlKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5EZWxldGVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVTdWJzY3JpcHRpb24gPSB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uRGVsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICBjbGFzcz1cImVkaXQtZmllbGRzXCJcbiAgKm5nSWY9XCJ7ZWRpdEZpZWxkczogZWRpdEZpZWxkcyQgfCBhc3luYywgZGlzYWJsZWQ6IGRpc2FibGVkJCB8IGFzeW5jfSBhcyBvYnNcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibmFtZUlucHV0OyBjb250ZXh0OiB7ZGlzYWJsZWQ6IG9icy5kaXNhYmxlZH1cIj48L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZWRpdEZpZWxkIG9mIG9icy5lZGl0RmllbGRzXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ3N0cmluZycgfHwgZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnbnVtYmVyJ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInNpbmdsZUlucHV0OyBjb250ZXh0OiB7ZWRpdEZpZWxkOiBlZGl0RmllbGQsIGRpc2FibGVkOiBvYnMuZGlzYWJsZWR9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdEZpZWxkLmVkaXRUeXBlID09PSAnc3RyaW5nW10nIHx8IGVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ251bWJlcltdJ1wiPlxuICAgICAgPHZhbHRpbW8tbXVsdGktdmFsdWUtY29ubmVjdG9yLXByb3BlcnR5XG4gICAgICAgIFtlZGl0RmllbGRdPVwiZWRpdEZpZWxkXCJcbiAgICAgICAgKHZhbHVlc1NldCk9XCJtdWx0aUZpZWxkVmFsdWVzU2V0KCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwib2JzLmRpc2FibGVkXCJcbiAgICAgICAgW2RlZmF1bHRWYWx1ZV09XCJ3aXRoRGVmYXVsdHMgJiYgZWRpdEZpZWxkLmRlZmF1bHRWYWx1ZVwiXG4gICAgICA+XG4gICAgICA8L3ZhbHRpbW8tbXVsdGktdmFsdWUtY29ubmVjdG9yLXByb3BlcnR5PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnM7IGNvbnRleHQ6IHtkaXNhYmxlZDogb2JzLmRpc2FibGVkfVwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbmFtZUlucHV0IGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDx2LWlucHV0XG4gICAgbmFtZT1cIm5hbWVcIlxuICAgIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLmNvbm5lY3Rvck5hbWVcIlxuICAgIFtkZWZhdWx0VmFsdWVdPVwid2l0aERlZmF1bHRzICYmIGRlZmF1bHROYW1lID8gZGVmYXVsdE5hbWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uTmFtZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICA+PC92LWlucHV0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzaW5nbGVJbnB1dCBsZXQtZWRpdEZpZWxkPVwiZWRpdEZpZWxkXCIgbGV0LWRpc2FibGVkPVwiZGlzYWJsZWRcIj5cbiAgPHYtaW5wdXRcbiAgICAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ3N0cmluZydcIlxuICAgIFtuYW1lXT1cImVkaXRGaWVsZC5rZXlcIlxuICAgIFt0aXRsZVRyYW5zbGF0aW9uS2V5XT1cIidjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLicgKyBlZGl0RmllbGQua2V5XCJcbiAgICBbZGVmYXVsdFZhbHVlXT1cIndpdGhEZWZhdWx0cyA/IGVkaXRGaWVsZC5kZWZhdWx0VmFsdWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2luZ2xlVmFsdWVDaGFuZ2UoJGV2ZW50LCBlZGl0RmllbGQpXCJcbiAgPjwvdi1pbnB1dD5cbiAgPHYtaW5wdXRcbiAgICAqbmdJZj1cImVkaXRGaWVsZC5lZGl0VHlwZSA9PT0gJ251bWJlcidcIlxuICAgIFtuYW1lXT1cImVkaXRGaWVsZC5rZXlcIlxuICAgIFt0aXRsZVRyYW5zbGF0aW9uS2V5XT1cIidjb25uZWN0b3JNYW5hZ2VtZW50LmlucHV0TGFiZWxzLicgKyBlZGl0RmllbGQua2V5XCJcbiAgICBbZGVmYXVsdFZhbHVlXT1cIndpdGhEZWZhdWx0cyA/IGVkaXRGaWVsZC5kZWZhdWx0VmFsdWUgOiAnJ1wiXG4gICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICBbbWFyZ2luXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2luZ2xlVmFsdWVDaGFuZ2UoJGV2ZW50LCBlZGl0RmllbGQpXCJcbiAgICBbc3RlcF09XCIxXCJcbiAgICBbbWluXT1cIjBcIlxuICA+PC92LWlucHV0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNidXR0b25zIGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDxkaXYgY2xhc3M9XCJib3JkZXItdG9wIG10LTMgcHQtNlwiICpuZ0lmPVwic2hvd0RlbGV0ZUJ1dHRvbiB8fCBzaG93U2F2ZUJ1dHRvblwiPlxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwic2hvd1NhdmVCdXR0b25cIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCAoc2F2ZUJ1dHRvbkRpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgICAgIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICA+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLXNhdmUgbXItMVwiPjwvaT5cbiAgICAgICAge3sgJ2Nvbm5lY3Rvck1hbmFnZW1lbnQuc2F2ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cInNob3dEZWxldGVCdXR0b25cIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIGJ0bi1zcGFjZVwiXG4gICAgICAgIChjbGljayk9XCJvbkRlbGV0ZSgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgID5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29uIG1kaSBtZGktZGVsZXRlIG1yLTFcIj48L2k+XG4gICAgICAgIHt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -156,10 +156,10 @@ export class EditProductAanvragenConnectorComponent {
156
156
  this.onDelete();
157
157
  });
158
158
  }
159
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditProductAanvragenConnectorComponent, deps: [{ token: i1.FormTranslationService }, { token: i1.FormMappingService }, { token: i2.DocumentService }, { token: i3.TranslateService }, { token: i4.ConnectorManagementService }, { token: i5.ConnectorManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
160
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: EditProductAanvragenConnectorComponent, selector: "valtimo-edit-product-aanvragen-connector", inputs: { properties: "properties", defaultName: "defaultName", showDeleteButton: "showDeleteButton" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n *ngIf=\"translatedFormDefinition$ | async as definition\"\n class=\"edit-product-request\"\n [ngClass]=\"{'has-delete': showDeleteButton}\"\n>\n <valtimo-form-io\n [form]=\"definition\"\n [formRefresh$]=\"formRefresh$\"\n [options]=\"options\"\n (submit)=\"onSubmit($event)\"\n >\n </valtimo-form-io>\n\n <button *ngIf=\"showDeleteButton\" class=\"btn btn-danger btn-space\" (click)=\"onDelete()\">\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n</div>\n", styles: [".edit-product-request ::ng-deep .btn-wizard-nav-cancel{display:none}.edit-product-request ::ng-deep .list-inline{display:flex;flex-direction:row;justify-content:flex-end}.edit-product-request ::ng-deep .col-sm-2{flex:0 0 25%;max-width:25%}.edit-product-request ::ng-deep .edit-grid-component>label{display:none}.edit-product-request.has-delete ::ng-deep .list-inline{margin-bottom:-30px}.edit-product-request .btn-danger{position:relative}\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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
159
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditProductAanvragenConnectorComponent, deps: [{ token: i1.FormTranslationService }, { token: i1.FormMappingService }, { token: i2.DocumentService }, { token: i3.TranslateService }, { token: i4.ConnectorManagementService }, { token: i5.ConnectorManagementStateService }], target: i0.ɵɵFactoryTarget.Component }); }
160
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: EditProductAanvragenConnectorComponent, selector: "valtimo-edit-product-aanvragen-connector", inputs: { properties: "properties", defaultName: "defaultName", showDeleteButton: "showDeleteButton" }, outputs: { propertiesSave: "propertiesSave", connectorDelete: "connectorDelete" }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n *ngIf=\"translatedFormDefinition$ | async as definition\"\n class=\"edit-product-request\"\n [ngClass]=\"{'has-delete': showDeleteButton}\"\n>\n <valtimo-form-io\n [form]=\"definition\"\n [formRefresh$]=\"formRefresh$\"\n [options]=\"options\"\n (submit)=\"onSubmit($event)\"\n >\n </valtimo-form-io>\n\n <button *ngIf=\"showDeleteButton\" class=\"btn btn-danger btn-space\" (click)=\"onDelete()\">\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n</div>\n", styles: [".edit-product-request ::ng-deep .btn-wizard-nav-cancel{display:none}.edit-product-request ::ng-deep .list-inline{display:flex;flex-direction:row;justify-content:flex-end}.edit-product-request ::ng-deep .col-sm-2{flex:0 0 25%;max-width:25%}.edit-product-request ::ng-deep .edit-grid-component>label{display:none}.edit-product-request.has-delete ::ng-deep .list-inline{margin-bottom:-30px}.edit-product-request .btn-danger{position:relative}\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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.FormioComponent, selector: "valtimo-form-io", inputs: ["options", "submission", "form", "readOnly", "formRefresh$"], outputs: ["submit", "change"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
161
161
  }
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EditProductAanvragenConnectorComponent, decorators: [{
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EditProductAanvragenConnectorComponent, decorators: [{
163
163
  type: Component,
164
164
  args: [{ selector: 'valtimo-edit-product-aanvragen-connector', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n *ngIf=\"translatedFormDefinition$ | async as definition\"\n class=\"edit-product-request\"\n [ngClass]=\"{'has-delete': showDeleteButton}\"\n>\n <valtimo-form-io\n [form]=\"definition\"\n [formRefresh$]=\"formRefresh$\"\n [options]=\"options\"\n (submit)=\"onSubmit($event)\"\n >\n </valtimo-form-io>\n\n <button *ngIf=\"showDeleteButton\" class=\"btn btn-danger btn-space\" (click)=\"onDelete()\">\n <i class=\"icon mdi mdi-delete mr-1\"></i>\n {{ 'connectorManagement.remove' | translate }}\n </button>\n</div>\n", styles: [".edit-product-request ::ng-deep .btn-wizard-nav-cancel{display:none}.edit-product-request ::ng-deep .list-inline{display:flex;flex-direction:row;justify-content:flex-end}.edit-product-request ::ng-deep .col-sm-2{flex:0 0 25%;max-width:25%}.edit-product-request ::ng-deep .edit-grid-component>label{display:none}.edit-product-request.has-delete ::ng-deep .list-inline{margin-bottom:-30px}.edit-product-request .btn-danger{position:relative}\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"] }]
165
165
  }], ctorParameters: () => [{ type: i1.FormTranslationService }, { type: i1.FormMappingService }, { type: i2.DocumentService }, { type: i3.TranslateService }, { type: i4.ConnectorManagementService }, { type: i5.ConnectorManagementStateService }], propDecorators: { properties: [{
@@ -173,4 +173,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
173
173
  }], connectorDelete: [{
174
174
  type: Output
175
175
  }] } });
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUkxRixPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFHM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUVqQyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBSW5EOztHQUVHO0FBTUgsTUFBTSxPQUFPLHNDQUFzQztJQXdCakQsWUFDbUIsc0JBQThDLEVBQzlDLGtCQUFzQyxFQUN0QyxlQUFnQyxFQUNoQyxnQkFBa0MsRUFDbEMsMEJBQXNELEVBQ3RELFlBQTZDO1FBTDdDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7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QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BGLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDakUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FwTFUsc0NBQXNDO2tHQUF0QyxzQ0FBc0MsZ1NDdENuRCxxckNBa0NBOzsyRkRJYSxzQ0FBc0M7a0JBTGxELFNBQVM7K0JBQ0UsMENBQTBDO2dSQUszQyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtlZGl0UHJvZHVjdEFhbnZyYWdlbkNvbm5lY3RvckZvcm19IGZyb20gJy4vZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuZm9ybSc7XG5pbXBvcnQge0Zvcm1NYXBwaW5nU2VydmljZSwgRm9ybVRyYW5zbGF0aW9uU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vZm9ybSc7XG5pbXBvcnQge0RvY3VtZW50RGVmaW5pdGlvbiwgRG9jdW1lbnRTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9kb2N1bWVudCc7XG5pbXBvcnQge0V4dGVuZGVkQ29tcG9uZW50U2NoZW1hLCBGb3JtaW9Gb3JtLCBGb3JtaW9SZWZyZXNoVmFsdWV9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29ubmVjdG9yUHJvcGVydGllc30gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7Rm9ybWlvT3B0aW9uc30gZnJvbSAnQGZvcm1pby9hbmd1bGFyL2Zvcm1pby5jb21tb24nO1xuaW1wb3J0IHtjbG9uZURlZXB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Nvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25uZWN0b3ItbWFuYWdlbWVudC9jb25uZWN0b3ItbWFuYWdlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBuZXcgcGx1Z2luIGZyYW1ld29ya1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdFByb2R1Y3RBYW52cmFnZW5Db25uZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgZGVmYXVsdE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgcHJvcGVydGllc1NhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHtwcm9wZXJ0aWVzOiBDb25uZWN0b3JQcm9wZXJ0aWVzOyBuYW1lOiBzdHJpbmd9PigpO1xuICBAT3V0cHV0KCkgY29ubmVjdG9yRGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgZm9ybVJlZnJlc2gkID0gbmV3IFN1YmplY3Q8Rm9ybWlvUmVmcmVzaFZhbHVlPigpO1xuICBmb3JtRGVmaW5pdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZvcm1pb0Zvcm0+KHVuZGVmaW5lZCk7XG4gIHRyYW5zbGF0ZWRGb3JtRGVmaW5pdGlvbiQgPSB0aGlzLmZvcm1EZWZpbml0aW9uJC5waXBlKFxuICAgIG1hcChkZWZpbml0aW9uID0+IHRoaXMuZm9ybVRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVGb3JtKGRlZmluaXRpb24pKVxuICApO1xuICBjYXNlRGVmaW5pdGlvbk9wdGlvbnM6IEFycmF5PHtsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nfT4gPSBbXTtcbiAgcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbk9wdGlvbnM6IHtbY2FzZURlZmluaXRpb25JZDogc3RyaW5nXTogQXJyYXk8c3RyaW5nPn0gPSB7fTtcblxuICByZWFkb25seSBvcHRpb25zOiBGb3JtaW9PcHRpb25zID0ge1xuICAgIGRpc2FibGVBbGVydHM6IHRydWUsXG4gIH07XG5cbiAgcHJpdmF0ZSBmb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZGVsZXRlU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybVRyYW5zbGF0aW9uU2VydmljZTogRm9ybVRyYW5zbGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1NYXBwaW5nU2VydmljZTogRm9ybU1hcHBpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29ubmVjdG9yTWFuYWdlbWVudFNlcnZpY2U6IENvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdGVTZXJ2aWNlOiBDb25uZWN0b3JNYW5hZ2VtZW50U3RhdGVTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB3aW5kb3dbJ3Byb2R1Y3RSZXF1ZXN0RGVmaW5pdGlvbnMnXSA9IHt9O1xuICAgIHRoaXMub3BlbkZvcm1EZWZpbml0aW9uU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5vcGVuRGVsZXRlU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvbiQubmV4dChlZGl0UHJvZHVjdEFhbnZyYWdlbkNvbm5lY3RvckZvcm0pO1xuICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzKCk7XG4gICAgdGhpcy5sb2FkRGVmaW5pdGlvbnMoKTtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5oaWRlTW9kYWxTYXZlQnV0dG9uKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5uZXh0KGVkaXRQcm9kdWN0QWFudnJhZ2VuQ29ubmVjdG9yRm9ybSk7XG4gICAgdGhpcy5sb2FkQ29ubmVjdG9yTmFtZXMoKTtcbiAgICB0aGlzLmxvYWREZWZpbml0aW9ucygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnRyYW5zbGF0ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmRlbGV0ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uU3VibWl0KGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBzdWJtaXNzaW9uID0gZXZlbnQuZGF0YTtcbiAgICBjb25zdCBwcm9wZXJ0aWVzID0gY2xvbmVEZWVwKHRoaXMucHJvcGVydGllcyk7XG5cbiAgICBwcm9wZXJ0aWVzLm9iamVjdHNBcGlDb25uZWN0aW9uTmFtZSA9IHN1Ym1pc3Npb24ub2JqZWN0c0FwaUNvbm5lY3Rpb25OYW1lO1xuICAgIHByb3BlcnRpZXMub3Blbk5vdGlmaWNhdGllQ29ubmVjdGlvbk5hbWUgPSBzdWJtaXNzaW9uLm9wZW5Ob3RpZmljYXRpZUNvbm5lY3Rpb25OYW1lO1xuICAgIHByb3BlcnRpZXMuYWFudnJhZ2VyUm9sVHlwZVVybCA9IHN1Ym1pc3Npb24uYXBwbGljYW50Um9sZVR5cGVVcmw7XG4gICAgcHJvcGVydGllcy50eXBlTWFwcGluZyA9IHN1Ym1pc3Npb24ucHJvZHVjdEFhbnZyYWFnVHlwZXM7XG5cbiAgICB0aGlzLnByb3BlcnRpZXNTYXZlLmVtaXQoe3Byb3BlcnRpZXMsIG5hbWU6IHN1Ym1pc3Npb24uY29ubmVjdG9yTmFtZX0pO1xuICB9XG5cbiAgb25EZWxldGUoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVNlcnZpY2UuZGlzYWJsZUlucHV0KCk7XG4gICAgdGhpcy5jb25uZWN0b3JEZWxldGUuZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRm9ybURlZmluaXRpb25TdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5mb3JtRGVmaW5pdGlvbiQsXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgICBdKS5zdWJzY3JpYmUoKFtmb3JtXSkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNsYXRlZEZvcm0gPSB0aGlzLmZvcm1UcmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlRm9ybShmb3JtKTtcbiAgICAgIHRoaXMucmVmcmVzaEZvcm0oe2Zvcm06IHRyYW5zbGF0ZWRGb3JtfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHByZWZpbGxGb3JtKCk6IHZvaWQge1xuICAgIGNvbnN0IHByb3BlcnRpZXMgPSBjbG9uZURlZXAodGhpcy5wcm9wZXJ0aWVzKTtcbiAgICBjb25zdCBzdWJtaXNzaW9uOiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9O1xuXG4gICAgc3VibWlzc2lvbi5vYmplY3RzQXBpQ29ubmVjdGlvbk5hbWUgPSBwcm9wZXJ0aWVzLm9iamVjdHNBcGlDb25uZWN0aW9uTmFtZTtcbiAgICBzdWJtaXNzaW9uLm9wZW5Ob3RpZmljYXRpZUNvbm5lY3Rpb25OYW1lID0gcHJvcGVydGllcy5vcGVuTm90aWZpY2F0aWVDb25uZWN0aW9uTmFtZTtcbiAgICBzdWJtaXNzaW9uLmFwcGxpY2FudFJvbGVUeXBlVXJsID0gcHJvcGVydGllcy5hYW52cmFnZXJSb2xUeXBlVXJsO1xuICAgIHN1Ym1pc3Npb24ucHJvZHVjdEFhbnZyYWFnVHlwZXMgPSBwcm9wZXJ0aWVzLnR5cGVNYXBwaW5nO1xuICAgIHN1Ym1pc3Npb24uY29ubmVjdG9yTmFtZSA9IHRoaXMuZGVmYXVsdE5hbWU7XG5cbiAgICB0aGlzLnJlZnJlc2hGb3JtKHtzdWJtaXNzaW9uOiB7ZGF0YTogc3VibWlzc2lvbn19KTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwQ2FzZURlZmluaXRpb25LZXlDb21wb25lbnQgPSAoXG4gICAgY29tcG9uZW50OiBFeHRlbmRlZENvbXBvbmVudFNjaGVtYVxuICApOiBFeHRlbmRlZENvbXBvbmVudFNjaGVtYSA9PiB7XG4gICAgaWYgKGNvbXBvbmVudC5rZXkgPT09ICdjYXNlRGVmaW5pdGlvbktleScpIHtcbiAgICAgIHJldHVybiB7Li4uY29tcG9uZW50LCBkaXNhYmxlZDogZmFsc2UsIGRhdGE6IHt2YWx1ZXM6IHRoaXMuY2FzZURlZmluaXRpb25PcHRpb25zfX07XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudDtcbiAgfTtcblxuICBwcml2YXRlIHJlZnJlc2hGb3JtKHJlZnJlc2hWYWx1ZTogRm9ybWlvUmVmcmVzaFZhbHVlKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtUmVmcmVzaCQubmV4dChyZWZyZXNoVmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRGVmaW5pdGlvbnMoKTogdm9pZCB7XG4gICAgbGV0IGRvY3VtZW50RGVmaW5pdGlvbnM6IEFycmF5PERvY3VtZW50RGVmaW5pdGlvbj47XG5cbiAgICB0aGlzLmRvY3VtZW50U2VydmljZVxuICAgICAgLmdldEFsbERlZmluaXRpb25zKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzRG9jdW1lbnREZWZpbml0aW9ucyA9PiAoZG9jdW1lbnREZWZpbml0aW9ucyA9IHJlc0RvY3VtZW50RGVmaW5pdGlvbnMuY29udGVudCkpLFxuICAgICAgICBzd2l0Y2hNYXAocmVzRG9jdW1lbnREZWZpbml0aW9ucyA9PlxuICAgICAgICAgIGNvbWJpbmVMYXRlc3QoXG4gICAgICAgICAgICByZXNEb2N1bWVudERlZmluaXRpb25zLmNvbnRlbnQubWFwKGRlZmluaXRpb24gPT5cbiAgICAgICAgICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZmluZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zKGRlZmluaXRpb24uaWQubmFtZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHRhcChyZXMgPT4ge1xuICAgICAgICAgIHRoaXMuY2FzZURlZmluaXRpb25PcHRpb25zID0gZG9jdW1lbnREZWZpbml0aW9ucy5tYXAoZG9jdW1lbnREZWZpbml0aW9uID0+ICh7XG4gICAgICAgICAgICBsYWJlbDogZG9jdW1lbnREZWZpbml0aW9uLmlkLm5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogZG9jdW1lbnREZWZpbml0aW9uLmlkLm5hbWUsXG4gICAgICAgICAgfSkpO1xuXG4gICAgICAgICAgZG9jdW1lbnREZWZpbml0aW9ucy5mb3JFYWNoKChkb2N1bWVudERlZmluaXRpb24sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NEb2N1bWVudERlZmluaXRpb25PcHRpb25zW2RvY3VtZW50RGVmaW5pdGlvbi5pZC5uYW1lXSA9IHJlc1tpbmRleF0ubWFwKFxuICAgICAgICAgICAgICBwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uID0+IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQucHJvY2Vzc0RlZmluaXRpb25LZXlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICB3aW5kb3dbJ3Byb2R1Y3RSZXF1ZXN0RGVmaW5pdGlvbnMnXSA9IHRoaXMucHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbk9wdGlvbnM7XG5cbiAgICAgICAgICBjb25zdCBkZWZpbml0aW9uV2l0aENhc2VEZWZpbml0aW9uT3B0aW9ucyA9IHRoaXMuZm9ybU1hcHBpbmdTZXJ2aWNlLm1hcENvbXBvbmVudHMoXG4gICAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5nZXRWYWx1ZSgpLFxuICAgICAgICAgICAgdGhpcy5tYXBDYXNlRGVmaW5pdGlvbktleUNvbXBvbmVudFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5uZXh0KGRlZmluaXRpb25XaXRoQ2FzZURlZmluaXRpb25PcHRpb25zKTtcblxuICAgICAgICAgIGlmICh0aGlzLnByb3BlcnRpZXM/LmFhbnZyYWdlclJvbFR5cGVVcmwpIHtcbiAgICAgICAgICAgIHRoaXMucHJlZmlsbEZvcm0oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRDb25uZWN0b3JOYW1lcygpOiB2b2lkIHtcbiAgICB0aGlzLmNvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAuZ2V0Q29ubmVjdG9yVHlwZXMoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChyZXMgPT4ge1xuICAgICAgICAgIHJlcy5mb3JFYWNoKGNvbm5lY3RvclR5cGUgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbm5lY3RvclR5cGUubmFtZSA9PT0gJ09iamVjdHNBcGknKSB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzQnlUeXBlKCdvYmplY3RBcGlDb25uZWN0b3JOYW1lcycsIGNvbm5lY3RvclR5cGUuaWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb25uZWN0b3JUeXBlLm5hbWUgPT09ICdPcGVuTm90aWZpY2F0aWUnKSB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzQnlUeXBlKCdvcGVuTm90aWZpY2F0aWVDb25uZWN0b3JOYW1lcycsIGNvbm5lY3RvclR5cGUuaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkQ29ubmVjdG9yTmFtZXNCeVR5cGUod2luZG93S2V5OiBzdHJpbmcsIGNvbm5lY3RvclR5cGVJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25uZWN0b3JNYW5hZ2VtZW50U2VydmljZVxuICAgICAgLmdldENvbm5lY3Rvckluc3RhbmNlc0J5VHlwZShjb25uZWN0b3JUeXBlSWQpXG4gICAgICAucGlwZShtYXAocmVzID0+ICh3aW5kb3dbd2luZG93S2V5XSA9IHJlcy5jb250ZW50Lm1hcChjb25uZWN0b3IgPT4gY29ubmVjdG9yLm5hbWUpKSkpXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5EZWxldGVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVTdWJzY3JpcHRpb24gPSB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uRGVsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICAqbmdJZj1cInRyYW5zbGF0ZWRGb3JtRGVmaW5pdGlvbiQgfCBhc3luYyBhcyBkZWZpbml0aW9uXCJcbiAgY2xhc3M9XCJlZGl0LXByb2R1Y3QtcmVxdWVzdFwiXG4gIFtuZ0NsYXNzXT1cInsnaGFzLWRlbGV0ZSc6IHNob3dEZWxldGVCdXR0b259XCJcbj5cbiAgPHZhbHRpbW8tZm9ybS1pb1xuICAgIFtmb3JtXT1cImRlZmluaXRpb25cIlxuICAgIFtmb3JtUmVmcmVzaCRdPVwiZm9ybVJlZnJlc2gkXCJcbiAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAoc3VibWl0KT1cIm9uU3VibWl0KCRldmVudClcIlxuICA+XG4gIDwvdmFsdGltby1mb3JtLWlvPlxuXG4gIDxidXR0b24gKm5nSWY9XCJzaG93RGVsZXRlQnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBidG4tc3BhY2VcIiAoY2xpY2spPVwib25EZWxldGUoKVwiPlxuICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWRlbGV0ZSBtci0xXCI+PC9pPlxuICAgIHt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb25uZWN0b3ItbWFuYWdlbWVudC9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IvZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUkxRixPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFHM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUVqQyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBSW5EOztHQUVHO0FBTUgsTUFBTSxPQUFPLHNDQUFzQztJQXdCakQsWUFDbUIsc0JBQThDLEVBQzlDLGtCQUFzQyxFQUN0QyxlQUFnQyxFQUNoQyxnQkFBa0MsRUFDbEMsMEJBQXNELEVBQ3RELFlBQTZDO1FBTDdDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7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QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BGLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDakUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0FwTFUsc0NBQXNDO21HQUF0QyxzQ0FBc0MsZ1NDdENuRCxxckNBa0NBOzs0RkRJYSxzQ0FBc0M7a0JBTGxELFNBQVM7K0JBQ0UsMENBQTBDO2dSQUszQyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtlZGl0UHJvZHVjdEFhbnZyYWdlbkNvbm5lY3RvckZvcm19IGZyb20gJy4vZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuZm9ybSc7XG5pbXBvcnQge0Zvcm1NYXBwaW5nU2VydmljZSwgRm9ybVRyYW5zbGF0aW9uU2VydmljZX0gZnJvbSAnQHZhbHRpbW8vZm9ybSc7XG5pbXBvcnQge0RvY3VtZW50RGVmaW5pdGlvbiwgRG9jdW1lbnRTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9kb2N1bWVudCc7XG5pbXBvcnQge0V4dGVuZGVkQ29tcG9uZW50U2NoZW1hLCBGb3JtaW9Gb3JtLCBGb3JtaW9SZWZyZXNoVmFsdWV9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29ubmVjdG9yUHJvcGVydGllc30gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7Rm9ybWlvT3B0aW9uc30gZnJvbSAnQGZvcm1pby9hbmd1bGFyL2Zvcm1pby5jb21tb24nO1xuaW1wb3J0IHtjbG9uZURlZXB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Nvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25uZWN0b3ItbWFuYWdlbWVudC9jb25uZWN0b3ItbWFuYWdlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7Q29ubmVjdG9yTWFuYWdlbWVudFN0YXRlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUvY29ubmVjdG9yLW1hbmFnZW1lbnQtc3RhdGUuc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHRoZSBuZXcgcGx1Z2luIGZyYW1ld29ya1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWVkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtcHJvZHVjdC1hYW52cmFnZW4tY29ubmVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWRpdC1wcm9kdWN0LWFhbnZyYWdlbi1jb25uZWN0b3IuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdFByb2R1Y3RBYW52cmFnZW5Db25uZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcGVydGllczogQ29ubmVjdG9yUHJvcGVydGllcztcbiAgQElucHV0KCkgZGVmYXVsdE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3dEZWxldGVCdXR0b24gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgcHJvcGVydGllc1NhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHtwcm9wZXJ0aWVzOiBDb25uZWN0b3JQcm9wZXJ0aWVzOyBuYW1lOiBzdHJpbmd9PigpO1xuICBAT3V0cHV0KCkgY29ubmVjdG9yRGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgZm9ybVJlZnJlc2gkID0gbmV3IFN1YmplY3Q8Rm9ybWlvUmVmcmVzaFZhbHVlPigpO1xuICBmb3JtRGVmaW5pdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZvcm1pb0Zvcm0+KHVuZGVmaW5lZCk7XG4gIHRyYW5zbGF0ZWRGb3JtRGVmaW5pdGlvbiQgPSB0aGlzLmZvcm1EZWZpbml0aW9uJC5waXBlKFxuICAgIG1hcChkZWZpbml0aW9uID0+IHRoaXMuZm9ybVRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVGb3JtKGRlZmluaXRpb24pKVxuICApO1xuICBjYXNlRGVmaW5pdGlvbk9wdGlvbnM6IEFycmF5PHtsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nfT4gPSBbXTtcbiAgcHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbk9wdGlvbnM6IHtbY2FzZURlZmluaXRpb25JZDogc3RyaW5nXTogQXJyYXk8c3RyaW5nPn0gPSB7fTtcblxuICByZWFkb25seSBvcHRpb25zOiBGb3JtaW9PcHRpb25zID0ge1xuICAgIGRpc2FibGVBbGVydHM6IHRydWUsXG4gIH07XG5cbiAgcHJpdmF0ZSBmb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZGVsZXRlU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybVRyYW5zbGF0aW9uU2VydmljZTogRm9ybVRyYW5zbGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1NYXBwaW5nU2VydmljZTogRm9ybU1hcHBpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29ubmVjdG9yTWFuYWdlbWVudFNlcnZpY2U6IENvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdGVTZXJ2aWNlOiBDb25uZWN0b3JNYW5hZ2VtZW50U3RhdGVTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB3aW5kb3dbJ3Byb2R1Y3RSZXF1ZXN0RGVmaW5pdGlvbnMnXSA9IHt9O1xuICAgIHRoaXMub3BlbkZvcm1EZWZpbml0aW9uU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5vcGVuRGVsZXRlU3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvbiQubmV4dChlZGl0UHJvZHVjdEFhbnZyYWdlbkNvbm5lY3RvckZvcm0pO1xuICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzKCk7XG4gICAgdGhpcy5sb2FkRGVmaW5pdGlvbnMoKTtcbiAgICB0aGlzLnN0YXRlU2VydmljZS5oaWRlTW9kYWxTYXZlQnV0dG9uKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5uZXh0KGVkaXRQcm9kdWN0QWFudnJhZ2VuQ29ubmVjdG9yRm9ybSk7XG4gICAgdGhpcy5sb2FkQ29ubmVjdG9yTmFtZXMoKTtcbiAgICB0aGlzLmxvYWREZWZpbml0aW9ucygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnRyYW5zbGF0ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmRlbGV0ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uU3VibWl0KGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBzdWJtaXNzaW9uID0gZXZlbnQuZGF0YTtcbiAgICBjb25zdCBwcm9wZXJ0aWVzID0gY2xvbmVEZWVwKHRoaXMucHJvcGVydGllcyk7XG5cbiAgICBwcm9wZXJ0aWVzLm9iamVjdHNBcGlDb25uZWN0aW9uTmFtZSA9IHN1Ym1pc3Npb24ub2JqZWN0c0FwaUNvbm5lY3Rpb25OYW1lO1xuICAgIHByb3BlcnRpZXMub3Blbk5vdGlmaWNhdGllQ29ubmVjdGlvbk5hbWUgPSBzdWJtaXNzaW9uLm9wZW5Ob3RpZmljYXRpZUNvbm5lY3Rpb25OYW1lO1xuICAgIHByb3BlcnRpZXMuYWFudnJhZ2VyUm9sVHlwZVVybCA9IHN1Ym1pc3Npb24uYXBwbGljYW50Um9sZVR5cGVVcmw7XG4gICAgcHJvcGVydGllcy50eXBlTWFwcGluZyA9IHN1Ym1pc3Npb24ucHJvZHVjdEFhbnZyYWFnVHlwZXM7XG5cbiAgICB0aGlzLnByb3BlcnRpZXNTYXZlLmVtaXQoe3Byb3BlcnRpZXMsIG5hbWU6IHN1Ym1pc3Npb24uY29ubmVjdG9yTmFtZX0pO1xuICB9XG5cbiAgb25EZWxldGUoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVNlcnZpY2UuZGlzYWJsZUlucHV0KCk7XG4gICAgdGhpcy5jb25uZWN0b3JEZWxldGUuZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRm9ybURlZmluaXRpb25TdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvblN1YnNjcmlwdGlvbiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5mb3JtRGVmaW5pdGlvbiQsXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgICBdKS5zdWJzY3JpYmUoKFtmb3JtXSkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNsYXRlZEZvcm0gPSB0aGlzLmZvcm1UcmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlRm9ybShmb3JtKTtcbiAgICAgIHRoaXMucmVmcmVzaEZvcm0oe2Zvcm06IHRyYW5zbGF0ZWRGb3JtfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHByZWZpbGxGb3JtKCk6IHZvaWQge1xuICAgIGNvbnN0IHByb3BlcnRpZXMgPSBjbG9uZURlZXAodGhpcy5wcm9wZXJ0aWVzKTtcbiAgICBjb25zdCBzdWJtaXNzaW9uOiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9O1xuXG4gICAgc3VibWlzc2lvbi5vYmplY3RzQXBpQ29ubmVjdGlvbk5hbWUgPSBwcm9wZXJ0aWVzLm9iamVjdHNBcGlDb25uZWN0aW9uTmFtZTtcbiAgICBzdWJtaXNzaW9uLm9wZW5Ob3RpZmljYXRpZUNvbm5lY3Rpb25OYW1lID0gcHJvcGVydGllcy5vcGVuTm90aWZpY2F0aWVDb25uZWN0aW9uTmFtZTtcbiAgICBzdWJtaXNzaW9uLmFwcGxpY2FudFJvbGVUeXBlVXJsID0gcHJvcGVydGllcy5hYW52cmFnZXJSb2xUeXBlVXJsO1xuICAgIHN1Ym1pc3Npb24ucHJvZHVjdEFhbnZyYWFnVHlwZXMgPSBwcm9wZXJ0aWVzLnR5cGVNYXBwaW5nO1xuICAgIHN1Ym1pc3Npb24uY29ubmVjdG9yTmFtZSA9IHRoaXMuZGVmYXVsdE5hbWU7XG5cbiAgICB0aGlzLnJlZnJlc2hGb3JtKHtzdWJtaXNzaW9uOiB7ZGF0YTogc3VibWlzc2lvbn19KTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwQ2FzZURlZmluaXRpb25LZXlDb21wb25lbnQgPSAoXG4gICAgY29tcG9uZW50OiBFeHRlbmRlZENvbXBvbmVudFNjaGVtYVxuICApOiBFeHRlbmRlZENvbXBvbmVudFNjaGVtYSA9PiB7XG4gICAgaWYgKGNvbXBvbmVudC5rZXkgPT09ICdjYXNlRGVmaW5pdGlvbktleScpIHtcbiAgICAgIHJldHVybiB7Li4uY29tcG9uZW50LCBkaXNhYmxlZDogZmFsc2UsIGRhdGE6IHt2YWx1ZXM6IHRoaXMuY2FzZURlZmluaXRpb25PcHRpb25zfX07XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudDtcbiAgfTtcblxuICBwcml2YXRlIHJlZnJlc2hGb3JtKHJlZnJlc2hWYWx1ZTogRm9ybWlvUmVmcmVzaFZhbHVlKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtUmVmcmVzaCQubmV4dChyZWZyZXNoVmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRGVmaW5pdGlvbnMoKTogdm9pZCB7XG4gICAgbGV0IGRvY3VtZW50RGVmaW5pdGlvbnM6IEFycmF5PERvY3VtZW50RGVmaW5pdGlvbj47XG5cbiAgICB0aGlzLmRvY3VtZW50U2VydmljZVxuICAgICAgLmdldEFsbERlZmluaXRpb25zKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzRG9jdW1lbnREZWZpbml0aW9ucyA9PiAoZG9jdW1lbnREZWZpbml0aW9ucyA9IHJlc0RvY3VtZW50RGVmaW5pdGlvbnMuY29udGVudCkpLFxuICAgICAgICBzd2l0Y2hNYXAocmVzRG9jdW1lbnREZWZpbml0aW9ucyA9PlxuICAgICAgICAgIGNvbWJpbmVMYXRlc3QoXG4gICAgICAgICAgICByZXNEb2N1bWVudERlZmluaXRpb25zLmNvbnRlbnQubWFwKGRlZmluaXRpb24gPT5cbiAgICAgICAgICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZmluZFByb2Nlc3NEb2N1bWVudERlZmluaXRpb25zKGRlZmluaXRpb24uaWQubmFtZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHRhcChyZXMgPT4ge1xuICAgICAgICAgIHRoaXMuY2FzZURlZmluaXRpb25PcHRpb25zID0gZG9jdW1lbnREZWZpbml0aW9ucy5tYXAoZG9jdW1lbnREZWZpbml0aW9uID0+ICh7XG4gICAgICAgICAgICBsYWJlbDogZG9jdW1lbnREZWZpbml0aW9uLmlkLm5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogZG9jdW1lbnREZWZpbml0aW9uLmlkLm5hbWUsXG4gICAgICAgICAgfSkpO1xuXG4gICAgICAgICAgZG9jdW1lbnREZWZpbml0aW9ucy5mb3JFYWNoKChkb2N1bWVudERlZmluaXRpb24sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NEb2N1bWVudERlZmluaXRpb25PcHRpb25zW2RvY3VtZW50RGVmaW5pdGlvbi5pZC5uYW1lXSA9IHJlc1tpbmRleF0ubWFwKFxuICAgICAgICAgICAgICBwcm9jZXNzRG9jdW1lbnREZWZpbml0aW9uID0+IHByb2Nlc3NEb2N1bWVudERlZmluaXRpb24uaWQucHJvY2Vzc0RlZmluaXRpb25LZXlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICB3aW5kb3dbJ3Byb2R1Y3RSZXF1ZXN0RGVmaW5pdGlvbnMnXSA9IHRoaXMucHJvY2Vzc0RvY3VtZW50RGVmaW5pdGlvbk9wdGlvbnM7XG5cbiAgICAgICAgICBjb25zdCBkZWZpbml0aW9uV2l0aENhc2VEZWZpbml0aW9uT3B0aW9ucyA9IHRoaXMuZm9ybU1hcHBpbmdTZXJ2aWNlLm1hcENvbXBvbmVudHMoXG4gICAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5nZXRWYWx1ZSgpLFxuICAgICAgICAgICAgdGhpcy5tYXBDYXNlRGVmaW5pdGlvbktleUNvbXBvbmVudFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICB0aGlzLmZvcm1EZWZpbml0aW9uJC5uZXh0KGRlZmluaXRpb25XaXRoQ2FzZURlZmluaXRpb25PcHRpb25zKTtcblxuICAgICAgICAgIGlmICh0aGlzLnByb3BlcnRpZXM/LmFhbnZyYWdlclJvbFR5cGVVcmwpIHtcbiAgICAgICAgICAgIHRoaXMucHJlZmlsbEZvcm0oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRDb25uZWN0b3JOYW1lcygpOiB2b2lkIHtcbiAgICB0aGlzLmNvbm5lY3Rvck1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAuZ2V0Q29ubmVjdG9yVHlwZXMoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChyZXMgPT4ge1xuICAgICAgICAgIHJlcy5mb3JFYWNoKGNvbm5lY3RvclR5cGUgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbm5lY3RvclR5cGUubmFtZSA9PT0gJ09iamVjdHNBcGknKSB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzQnlUeXBlKCdvYmplY3RBcGlDb25uZWN0b3JOYW1lcycsIGNvbm5lY3RvclR5cGUuaWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb25uZWN0b3JUeXBlLm5hbWUgPT09ICdPcGVuTm90aWZpY2F0aWUnKSB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZENvbm5lY3Rvck5hbWVzQnlUeXBlKCdvcGVuTm90aWZpY2F0aWVDb25uZWN0b3JOYW1lcycsIGNvbm5lY3RvclR5cGUuaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkQ29ubmVjdG9yTmFtZXNCeVR5cGUod2luZG93S2V5OiBzdHJpbmcsIGNvbm5lY3RvclR5cGVJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25uZWN0b3JNYW5hZ2VtZW50U2VydmljZVxuICAgICAgLmdldENvbm5lY3Rvckluc3RhbmNlc0J5VHlwZShjb25uZWN0b3JUeXBlSWQpXG4gICAgICAucGlwZShtYXAocmVzID0+ICh3aW5kb3dbd2luZG93S2V5XSA9IHJlcy5jb250ZW50Lm1hcChjb25uZWN0b3IgPT4gY29ubmVjdG9yLm5hbWUpKSkpXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5EZWxldGVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVTdWJzY3JpcHRpb24gPSB0aGlzLnN0YXRlU2VydmljZS5kZWxldGUkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uRGVsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICAqbmdJZj1cInRyYW5zbGF0ZWRGb3JtRGVmaW5pdGlvbiQgfCBhc3luYyBhcyBkZWZpbml0aW9uXCJcbiAgY2xhc3M9XCJlZGl0LXByb2R1Y3QtcmVxdWVzdFwiXG4gIFtuZ0NsYXNzXT1cInsnaGFzLWRlbGV0ZSc6IHNob3dEZWxldGVCdXR0b259XCJcbj5cbiAgPHZhbHRpbW8tZm9ybS1pb1xuICAgIFtmb3JtXT1cImRlZmluaXRpb25cIlxuICAgIFtmb3JtUmVmcmVzaCRdPVwiZm9ybVJlZnJlc2gkXCJcbiAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAoc3VibWl0KT1cIm9uU3VibWl0KCRldmVudClcIlxuICA+XG4gIDwvdmFsdGltby1mb3JtLWlvPlxuXG4gIDxidXR0b24gKm5nSWY9XCJzaG93RGVsZXRlQnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBidG4tc3BhY2VcIiAoY2xpY2spPVwib25EZWxldGUoKVwiPlxuICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWRlbGV0ZSBtci0xXCI+PC9pPlxuICAgIHt7ICdjb25uZWN0b3JNYW5hZ2VtZW50LnJlbW92ZScgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==