@valtimo/dossier-management 12.1.1 → 12.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/dossier-management-assignee/dossier-management-assignee.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-connect-modal/dossier-management-connect-modal.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-create/dossier-management-create.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-detail/dossier-management-detail.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-detail-container/dossier-management-detail-container.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-detail-container-actions/dossier-management-detail-container-actions.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-document-definition/dossier-management-document-definition.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-list/dossier-management-list.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-list-columns/dossier-management-list-columns.component.mjs +7 -6
- package/esm2022/lib/components/dossier-management-processes/dossier-management-processes.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-remove-modal/dossier-management-remove-modal.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-search-fields/dossier-management-search-fields.component.mjs +14 -6
- package/esm2022/lib/components/dossier-management-statuses/dossier-management-status-modal/dossier-management-status-modal.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-statuses/dossier-management-statuses.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-tabs/dossier-management-add-tab-modal/dossier-management-add-tab-modal.component.mjs +10 -14
- package/esm2022/lib/components/dossier-management-tabs/dossier-management-edit-tab-modal/dossier-management-edit-tab-modal.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-tabs/dossier-management-tabs.component.mjs +9 -18
- package/esm2022/lib/components/dossier-management-tabs/tab-form/tab-form.component.mjs +16 -6
- package/esm2022/lib/components/dossier-management-upload/dossier-management-upload.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-upload/step/dossier-management-upload-step.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-configurators/collection/dossier-management-widget-collection.component.mjs +9 -8
- package/esm2022/lib/components/dossier-management-widget-configurators/custom/dossier-management-widget-custom.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-configurators/fields/column/dossier-management-widget-fields-column.component.mjs +17 -11
- package/esm2022/lib/components/dossier-management-widget-configurators/fields/dossier-management-widget-fields.component.mjs +16 -8
- package/esm2022/lib/components/dossier-management-widget-configurators/formio/dossier-management-widget-formio.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-configurators/table/dossier-management-widget-table.component.mjs +7 -6
- package/esm2022/lib/components/dossier-management-widget-tab/dossier-management-widget-tab.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-tab/editor/dossier-management-widgets-editor.component.mjs +8 -8
- package/esm2022/lib/components/dossier-management-widget-tab/json-editor/dossier-management-widgets-json-editor.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-tab-edit-modal/dossier-management-widget-tab-edit-modal.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-wizard/dossier-management-widget-wizard.component.mjs +14 -8
- package/esm2022/lib/components/dossier-management-widget-wizard/steps/widget-wizard-content-step/widget-wizard-content-step.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-wizard/steps/widget-wizard-style-step/widget-wizard-style-step.component.mjs +4 -4
- package/esm2022/lib/components/dossier-management-widget-wizard/steps/widget-wizard-type-step/widget-wizard-type-step.component.mjs +5 -5
- package/esm2022/lib/components/dossier-management-widget-wizard/steps/widget-wizard-width-step/widget-wizard-width-step.component.mjs +5 -5
- package/esm2022/lib/dossier-management-routing.module.mjs +5 -5
- package/esm2022/lib/dossier-management.module.mjs +11 -8
- package/esm2022/lib/models/widget-wizard.model.mjs +5 -5
- package/esm2022/lib/services/dossier-detail.service.mjs +4 -4
- package/esm2022/lib/services/dossier-export.service.mjs +4 -4
- package/esm2022/lib/services/dossier-management.service.mjs +4 -4
- package/esm2022/lib/services/tab-management.service.mjs +9 -12
- package/esm2022/lib/services/tab.service.mjs +4 -4
- package/esm2022/lib/services/widget-fields.service.mjs +4 -4
- package/esm2022/lib/services/widget-json-editor.service.mjs +4 -4
- package/esm2022/lib/services/widget-tab-management.service.mjs +4 -4
- package/esm2022/lib/services/widget-wizard.service.mjs +4 -4
- package/fesm2022/valtimo-dossier-management.mjs +231 -204
- package/fesm2022/valtimo-dossier-management.mjs.map +1 -1
- package/lib/components/dossier-management-detail-container-actions/dossier-management-detail-container-actions.component.d.ts +1 -1
- package/lib/components/dossier-management-detail-container-actions/dossier-management-detail-container-actions.component.d.ts.map +1 -1
- package/lib/components/dossier-management-list-columns/dossier-management-list-columns.component.d.ts +2 -1
- package/lib/components/dossier-management-list-columns/dossier-management-list-columns.component.d.ts.map +1 -1
- package/lib/components/dossier-management-search-fields/dossier-management-search-fields.component.d.ts +3 -1
- package/lib/components/dossier-management-search-fields/dossier-management-search-fields.component.d.ts.map +1 -1
- package/lib/components/dossier-management-statuses/dossier-management-statuses.component.d.ts +1 -1
- package/lib/components/dossier-management-tabs/dossier-management-add-tab-modal/dossier-management-add-tab-modal.component.d.ts.map +1 -1
- package/lib/components/dossier-management-tabs/dossier-management-tabs.component.d.ts +0 -1
- package/lib/components/dossier-management-tabs/dossier-management-tabs.component.d.ts.map +1 -1
- package/lib/components/dossier-management-tabs/tab-form/tab-form.component.d.ts +2 -1
- package/lib/components/dossier-management-tabs/tab-form/tab-form.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-configurators/collection/dossier-management-widget-collection.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-configurators/fields/column/dossier-management-widget-fields-column.component.d.ts +7 -5
- package/lib/components/dossier-management-widget-configurators/fields/column/dossier-management-widget-fields-column.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-configurators/fields/dossier-management-widget-fields.component.d.ts +5 -3
- package/lib/components/dossier-management-widget-configurators/fields/dossier-management-widget-fields.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-configurators/table/dossier-management-widget-table.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-tab/dossier-management-widget-tab.component.d.ts +1 -1
- package/lib/components/dossier-management-widget-tab/dossier-management-widget-tab.component.d.ts.map +1 -1
- package/lib/components/dossier-management-widget-wizard/dossier-management-widget-wizard.component.d.ts +2 -0
- package/lib/components/dossier-management-widget-wizard/dossier-management-widget-wizard.component.d.ts.map +1 -1
- package/lib/dossier-management.module.d.ts +1 -1
- package/lib/dossier-management.module.d.ts.map +1 -1
- package/lib/services/tab-management.service.d.ts +1 -2
- package/lib/services/tab-management.service.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -140,10 +140,10 @@ export class DossierManagementWidgetTabComponent extends PendingChangesComponent
|
|
|
140
140
|
});
|
|
141
141
|
});
|
|
142
142
|
}
|
|
143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
143
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetTabComponent, deps: [{ token: i1.BreadcrumbService }, { token: i2.IconService }, { token: i1.PageTitleService }, { token: i3.ActivatedRoute }, { token: i4.TabManagementService }, { token: i4.WidgetTabManagementService }, { token: i5.TranslateService }, { token: i1.PageHeaderService }, { token: i4.WidgetJsonEditorService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
144
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierManagementWidgetTabComponent, isStandalone: true, selector: "valtimo-dossier-management-case-widgets", usesInheritance: 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<valtimo-dossier-management-widget-tab-edit-modal\n [tabItem]=\"currentWidgetTabItem$ | async\"\n [showModal$]=\"showEditWidgetTabModal$\"\n (saveEvent)=\"refreshWidgetTab()\"\n>\n</valtimo-dossier-management-widget-tab-edit-modal>\n\n<cds-tabs type=\"contained\">\n <cds-tab\n [active]=\"activeTab() === WidgetEditorTab.VISUAL\"\n [heading]=\"'interface.editor.visualEditor' | translate\"\n (selected)=\"displayBodyComponent(WidgetEditorTab.VISUAL)\"\n >\n </cds-tab>\n\n <cds-tab\n [active]=\"activeTab() === WidgetEditorTab.JSON\"\n [heading]=\"'interface.editor.jsonEditor' | translate\"\n (selected)=\"displayBodyComponent(WidgetEditorTab.JSON)\"\n >\n </cds-tab>\n</cds-tabs>\n\n@switch (activeContent()) {\n @case (WidgetEditorTab.VISUAL) {\n <valtimo-dossier-management-widgets-editor\n [documentDefinitionName]=\"documentDefinitionName$ | async\"\n [tabWidgetKey]=\"tabWidgetKey$ | async\"\n [currentWidgetTab]=\"currentWidgetTab$ | async\"\n (changeSaved)=\"refreshWidgetTab()\"\n ></valtimo-dossier-management-widgets-editor>\n }\n @case (WidgetEditorTab.JSON) {\n <valtimo-dossier-management-widgets-json-editor\n [currentWidgetTab]=\"currentWidgetTab$ | async\"\n (canDeactivate)=\"onJsonCanDeactivate($event)\"\n (changeSaved)=\"refreshWidgetTab()\"\n (customModalLoaded)=\"onCustomModalLoaded($event)\"\n (pendingChangesUpdate)=\"onPendingChangesUpdate($event)\"\n ></valtimo-dossier-management-widgets-json-editor>\n }\n}\n\n<ng-container renderInPageHeader>\n <ng-template>\n <button\n cdsButton=\"tertiary\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n (click)=\"editWidgetTab()\"\n >\n {{ 'widgetTabManagement.tab.editButton' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n </ng-template>\n</ng-container>\n", styles: ["::ng-deep .cds--tab-content{padding:0}\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: "ngmodule", type: CommonModule }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: DossierManagementWidgetsEditorComponent, selector: "valtimo-dossier-management-widgets-editor", inputs: ["documentDefinitionName", "tabWidgetKey", "currentWidgetTab"], outputs: ["changeSaved"] }, { kind: "component", type: DossierManagementWidgetTabEditModalComponent, selector: "valtimo-dossier-management-widget-tab-edit-modal", inputs: ["showModal$", "tabItem"], outputs: ["saveEvent"] }, { kind: "component", type: DossierManagementWidgetsJsonEditorComponent, selector: "valtimo-dossier-management-widgets-json-editor", inputs: ["currentWidgetTab"], outputs: ["customModalLoaded", "canDeactivate", "pendingChangesUpdate", "changeSaved"] }, { kind: "ngmodule", type: RenderInPageHeaderDirectiveModule }, { kind: "directive", type: i1.RenderInPageHeaderDirective, selector: "[renderInPageHeader]", inputs: ["fullWidth"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: i2.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
145
145
|
}
|
|
146
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetTabComponent, decorators: [{
|
|
147
147
|
type: Component,
|
|
148
148
|
args: [{ selector: 'valtimo-dossier-management-case-widgets', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
149
149
|
CommonModule,
|
|
@@ -157,4 +157,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
157
157
|
TabsModule,
|
|
158
158
|
], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-dossier-management-widget-tab-edit-modal\n [tabItem]=\"currentWidgetTabItem$ | async\"\n [showModal$]=\"showEditWidgetTabModal$\"\n (saveEvent)=\"refreshWidgetTab()\"\n>\n</valtimo-dossier-management-widget-tab-edit-modal>\n\n<cds-tabs type=\"contained\">\n <cds-tab\n [active]=\"activeTab() === WidgetEditorTab.VISUAL\"\n [heading]=\"'interface.editor.visualEditor' | translate\"\n (selected)=\"displayBodyComponent(WidgetEditorTab.VISUAL)\"\n >\n </cds-tab>\n\n <cds-tab\n [active]=\"activeTab() === WidgetEditorTab.JSON\"\n [heading]=\"'interface.editor.jsonEditor' | translate\"\n (selected)=\"displayBodyComponent(WidgetEditorTab.JSON)\"\n >\n </cds-tab>\n</cds-tabs>\n\n@switch (activeContent()) {\n @case (WidgetEditorTab.VISUAL) {\n <valtimo-dossier-management-widgets-editor\n [documentDefinitionName]=\"documentDefinitionName$ | async\"\n [tabWidgetKey]=\"tabWidgetKey$ | async\"\n [currentWidgetTab]=\"currentWidgetTab$ | async\"\n (changeSaved)=\"refreshWidgetTab()\"\n ></valtimo-dossier-management-widgets-editor>\n }\n @case (WidgetEditorTab.JSON) {\n <valtimo-dossier-management-widgets-json-editor\n [currentWidgetTab]=\"currentWidgetTab$ | async\"\n (canDeactivate)=\"onJsonCanDeactivate($event)\"\n (changeSaved)=\"refreshWidgetTab()\"\n (customModalLoaded)=\"onCustomModalLoaded($event)\"\n (pendingChangesUpdate)=\"onPendingChangesUpdate($event)\"\n ></valtimo-dossier-management-widgets-json-editor>\n }\n}\n\n<ng-container renderInPageHeader>\n <ng-template>\n <button\n cdsButton=\"tertiary\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n (click)=\"editWidgetTab()\"\n >\n {{ 'widgetTabManagement.tab.editButton' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n </ng-template>\n</ng-container>\n", styles: ["::ng-deep .cds--tab-content{padding:0}\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"] }]
|
|
159
159
|
}], ctorParameters: () => [{ type: i1.BreadcrumbService }, { type: i2.IconService }, { type: i1.PageTitleService }, { type: i3.ActivatedRoute }, { type: i4.TabManagementService }, { type: i4.WidgetTabManagementService }, { type: i5.TranslateService }, { type: i1.PageHeaderService }, { type: i4.WidgetJsonEditorService }] });
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLEVBQUMsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFLTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEdBQ2xDLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQWUsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDNUYsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3RixPQUFPLEVBQUMsZUFBZSxF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O3dCQUNaLFVBQVU7d0JBQ1YsVUFBVTtxQkFDWCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RWRpdDE2fSBmcm9tICdAY2FyYm9uL2ljb25zJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7XG4gIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCxcbiAgUGFnZUhlYWRlclNlcnZpY2UsXG4gIFBhZ2VUaXRsZVNlcnZpY2UsXG4gIFBlbmRpbmdDaGFuZ2VzQ29tcG9uZW50LFxuICBSZW5kZXJJblBhZ2VIZWFkZXJEaXJlY3RpdmVNb2R1bGUsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtBcGlUYWJJdGVtfSBmcm9tICdAdmFsdGltby9kb3NzaWVyJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBJY29uTW9kdWxlLCBJY29uU2VydmljZSwgVGFic01vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1dpZGdldEVkaXRvclRhYn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7XG4gIFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICBXaWRnZXRKc29uRWRpdG9yU2VydmljZSxcbiAgV2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7RG9zc2llck1hbmFnZW1lbnRXaWRnZXRUYWJFZGl0TW9kYWxDb21wb25lbnR9IGZyb20gJy4uL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLWVkaXQtbW9kYWwvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWItZWRpdC1tb2RhbCc7XG5pbXBvcnQge0Rvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0VkaXRvckNvbXBvbmVudH0gZnJvbSAnLi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge0Rvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0pzb25FZGl0b3JDb21wb25lbnR9IGZyb20gJy4vanNvbi1lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtY2FzZS13aWRnZXRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIERvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0VkaXRvckNvbXBvbmVudCxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFRhYkVkaXRNb2RhbENvbXBvbmVudCxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldHNKc29uRWRpdG9yQ29tcG9uZW50LFxuICAgIFJlbmRlckluUGFnZUhlYWRlckRpcmVjdGl2ZU1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBUYWJzTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFRhYkNvbXBvbmVudFxuICBleHRlbmRzIFBlbmRpbmdDaGFuZ2VzQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50RGVmaW5pdGlvbk5hbWUkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKFxuICAgIG1hcChwYXJhbXMgPT4gcGFyYW1zLm5hbWUgfHwgJycpLFxuICAgIGZpbHRlcihkb2N1bWVudERlZmluaXRpb25OYW1lID0+ICEhZG9jdW1lbnREZWZpbml0aW9uTmFtZSksXG4gICAgdGFwKGRvY3VtZW50RGVmaW5pdGlvbk5hbWUgPT5cbiAgICAgIHRoaXMudGFiTWFuYWdlbWVudFNlcnZpY2Uuc2V0Q2FzZURlZmluaXRpb25JZChkb2N1bWVudERlZmluaXRpb25OYW1lKVxuICAgIClcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdGFiV2lkZ2V0S2V5JDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy5yb3V0ZS5wYXJhbXMucGlwZShcbiAgICBtYXAocGFyYW1zID0+IHBhcmFtcy5rZXkgfHwgJycpLFxuICAgIGZpbHRlcih0YWJXaWRnZXRLZXkgPT4gISF0YWJXaWRnZXRLZXkpXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHNob3dFZGl0V2lkZ2V0VGFiTW9kYWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50V2lkZ2V0VGFiSXRlbSQ6IE9ic2VydmFibGU8QXBpVGFiSXRlbT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnRhYldpZGdldEtleSQsXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgna2V5JyksXG4gICAgdGhpcy5fcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkLFxuICBdKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoW3RhYktleV0pID0+IHRoaXMudGFiTWFuYWdlbWVudFNlcnZpY2UuZ2V0VGFiKHRhYktleSkpLFxuICAgIHRhcCh0YWJJdGVtID0+IHtcbiAgICAgIGNvbnN0IHRpdGxlID1cbiAgICAgICAgdGFiSXRlbS5uYW1lIHx8XG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGB3aWRnZXRUYWJNYW5hZ2VtZW50Lm1ldGFkYXRhLiR7dGFiSXRlbS5rZXl9YCk7XG4gICAgICB0aGlzLnBhZ2VUaXRsZVNlcnZpY2Uuc2V0Q3VzdG9tUGFnZVRpdGxlKHRpdGxlKTtcbiAgICAgIHRoaXMucGFnZVRpdGxlU2VydmljZS5zZXRDdXN0b21QYWdlU3VidGl0bGUoXG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3aWRnZXRUYWJNYW5hZ2VtZW50LnRhYi5tZXRhZGF0YScsIHtcbiAgICAgICAgICBjcmVhdGVkQnk6IHRhYkl0ZW0/LmNyZWF0ZWRCeSB8fCAnLScsXG4gICAgICAgICAgY3JlYXRlZE9uOiAhIXRhYkl0ZW0/LmNyZWF0ZWRPblxuICAgICAgICAgICAgPyBtb21lbnQodGFiSXRlbT8uY3JlYXRlZE9uKS5mb3JtYXQoJ0REIE1NTSBZWVlZIEhIOm1tJylcbiAgICAgICAgICAgIDogJy0nLFxuICAgICAgICAgIGtleTogdGFiSXRlbS5rZXksXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0pXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50V2lkZ2V0VGFiJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSQsXG4gICAgdGhpcy50YWJXaWRnZXRLZXkkLFxuICAgIHRoaXMuX3JlZnJlc2hXaWRnZXRUYWJTdWJqZWN0JCxcbiAgXSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKFtjYXNlRGVmaW5pdGlvbk5hbWUsIHRhYldpZGdldEtleV0pID0+XG4gICAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlLmdldFdpZGdldFRhYkNvbmZpZ3VyYXRpb24oY2FzZURlZmluaXRpb25OYW1lLCB0YWJXaWRnZXRLZXkpXG4gICAgKVxuICApO1xuXG4gIHB1YmxpYyByZWFkb25seSBXaWRnZXRFZGl0b3JUYWIgPSBXaWRnZXRFZGl0b3JUYWI7XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVUYWIgPSBzaWduYWw8V2lkZ2V0RWRpdG9yVGFiIHwgbnVsbD4oV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTCk7XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVDb250ZW50ID0gc2lnbmFsPFdpZGdldEVkaXRvclRhYiB8IG51bGw+KFdpZGdldEVkaXRvclRhYi5WSVNVQUwpO1xuICBwdWJsaWMgcmVhZG9ubHkgY29tcGFjdE1vZGUkID0gdGhpcy5wYWdlSGVhZGVyU2VydmljZS5jb21wYWN0TW9kZSQ7XG5cbiAgcHJpdmF0ZSBfcGVuZGluZ1RhYjogV2lkZ2V0RWRpdG9yVGFiIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBicmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpY29uU2VydmljZTogSWNvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYWdlVGl0bGVTZXJ2aWNlOiBQYWdlVGl0bGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFiTWFuYWdlbWVudFNlcnZpY2U6IFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2U6IFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VIZWFkZXJTZXJ2aWNlOiBQYWdlSGVhZGVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldEpzb25FZGl0b3JTZXJ2aWNlOiBXaWRnZXRKc29uRWRpdG9yU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFnZVRpdGxlU2VydmljZS5kaXNhYmxlUmVzZXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pY29uU2VydmljZS5yZWdpc3RlckFsbChbRWRpdDE2XSk7XG4gICAgdGhpcy5pbml0QnJlYWRjcnVtYigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYnJlYWRjcnVtYlNlcnZpY2UuY2xlYXJUaGlyZEJyZWFkY3J1bWIoKTtcbiAgICB0aGlzLnBhZ2VUaXRsZVNlcnZpY2UuZGlzYWJsZVJlc2V0KCk7XG4gIH1cblxuICBwdWJsaWMgZGlzcGxheUJvZHlDb21wb25lbnQodGFiOiBXaWRnZXRFZGl0b3JUYWIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wZW5kaW5nQ2hhbmdlcyAmJiB0YWIgIT09IHRoaXMuYWN0aXZlVGFiKCkpIHtcbiAgICAgIHRoaXMuX3BlbmRpbmdUYWIgPSB0aGlzLmFjdGl2ZVRhYigpO1xuICAgICAgdGhpcy5hY3RpdmVUYWIuc2V0KHRhYik7XG4gICAgICB0aGlzLm9uQ2FuRGVhY3RpdmF0ZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiKTtcbiAgICB0aGlzLmFjdGl2ZUNvbnRlbnQuc2V0KHRhYik7XG4gIH1cblxuICBwdWJsaWMgZWRpdFdpZGdldFRhYigpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dFZGl0V2lkZ2V0VGFiTW9kYWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblBlbmRpbmdDaGFuZ2VzVXBkYXRlKGNoYW5nZUFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMucGVuZGluZ0NoYW5nZXMgPSBjaGFuZ2VBY3RpdmU7XG4gIH1cblxuICBwcml2YXRlIHNob3dFZGl0V2lkZ2V0VGFiTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93RWRpdFdpZGdldFRhYk1vZGFsJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2hXaWRnZXRUYWIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGVuZGluZ0NoYW5nZXMpIHRoaXMub25DdXN0b21Db25maXJtKCk7XG4gICAgdGhpcy5fcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkLm5leHQobnVsbCk7XG4gIH1cblxuICBwdWJsaWMgb25DdXN0b21Nb2RhbExvYWRlZChtb2RhbDogQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmN1c3RvbU1vZGFsKSByZXR1cm47XG5cbiAgICB0aGlzLmN1c3RvbU1vZGFsID0gbW9kYWw7XG4gIH1cblxuICBwdWJsaWMgb25Kc29uQ2FuRGVhY3RpdmF0ZShjYW5EZWFjdGl2YXRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGNhbkRlYWN0aXZhdGUpIHtcbiAgICAgIHRoaXMub25DdXN0b21Db25maXJtKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5vbkN1c3RvbUNhbmNlbCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2FuY2VsUmVkaXJlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVUYWIuc2V0KHRoaXMuX3BlbmRpbmdUYWIpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ29uZmlybVJlZGlyZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlQ29udGVudC5zZXQodGhpcy5hY3RpdmVUYWIoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25DYW5EZWFjdGl2YXRlKCk6IHZvaWQge1xuICAgIHRoaXMud2lkZ2V0SnNvbkVkaXRvclNlcnZpY2Uuc2hvd1BlbmRpbmdNb2RhbC5zZXQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRCcmVhZGNydW1iKCk6IHZvaWQge1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSQuc3Vic2NyaWJlKGRvY3VtZW50RGVmaW5pdGlvbk5hbWUgPT4ge1xuICAgICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zZXRUaGlyZEJyZWFkY3J1bWIoe1xuICAgICAgICByb3V0ZTogW2AvZG9zc2llci1tYW5hZ2VtZW50L2Rvc3NpZXIvJHtkb2N1bWVudERlZmluaXRpb25OYW1lfWBdLFxuICAgICAgICBjb250ZW50OiBkb2N1bWVudERlZmluaXRpb25OYW1lLFxuICAgICAgICBocmVmOiBgL2Rvc3NpZXItbWFuYWdlbWVudC9kb3NzaWVyLyR7ZG9jdW1lbnREZWZpbml0aW9uTmFtZX1gLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPHZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWItZWRpdC1tb2RhbFxuICBbdGFiSXRlbV09XCJjdXJyZW50V2lkZ2V0VGFiSXRlbSQgfCBhc3luY1wiXG4gIFtzaG93TW9kYWwkXT1cInNob3dFZGl0V2lkZ2V0VGFiTW9kYWwkXCJcbiAgKHNhdmVFdmVudCk9XCJyZWZyZXNoV2lkZ2V0VGFiKClcIlxuPlxuPC92YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLWVkaXQtbW9kYWw+XG5cbjxjZHMtdGFicyB0eXBlPVwiY29udGFpbmVkXCI+XG4gIDxjZHMtdGFiXG4gICAgW2FjdGl2ZV09XCJhY3RpdmVUYWIoKSA9PT0gV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTFwiXG4gICAgW2hlYWRpbmddPVwiJ2ludGVyZmFjZS5lZGl0b3IudmlzdWFsRWRpdG9yJyB8IHRyYW5zbGF0ZVwiXG4gICAgKHNlbGVjdGVkKT1cImRpc3BsYXlCb2R5Q29tcG9uZW50KFdpZGdldEVkaXRvclRhYi5WSVNVQUwpXCJcbiAgPlxuICA8L2Nkcy10YWI+XG5cbiAgPGNkcy10YWJcbiAgICBbYWN0aXZlXT1cImFjdGl2ZVRhYigpID09PSBXaWRnZXRFZGl0b3JUYWIuSlNPTlwiXG4gICAgW2hlYWRpbmddPVwiJ2ludGVyZmFjZS5lZGl0b3IuanNvbkVkaXRvcicgfCB0cmFuc2xhdGVcIlxuICAgIChzZWxlY3RlZCk9XCJkaXNwbGF5Qm9keUNvbXBvbmVudChXaWRnZXRFZGl0b3JUYWIuSlNPTilcIlxuICA+XG4gIDwvY2RzLXRhYj5cbjwvY2RzLXRhYnM+XG5cbkBzd2l0Y2ggKGFjdGl2ZUNvbnRlbnQoKSkge1xuICBAY2FzZSAoV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTCkge1xuICAgIDx2YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWVkaXRvclxuICAgICAgW2RvY3VtZW50RGVmaW5pdGlvbk5hbWVdPVwiZG9jdW1lbnREZWZpbml0aW9uTmFtZSQgfCBhc3luY1wiXG4gICAgICBbdGFiV2lkZ2V0S2V5XT1cInRhYldpZGdldEtleSQgfCBhc3luY1wiXG4gICAgICBbY3VycmVudFdpZGdldFRhYl09XCJjdXJyZW50V2lkZ2V0VGFiJCB8IGFzeW5jXCJcbiAgICAgIChjaGFuZ2VTYXZlZCk9XCJyZWZyZXNoV2lkZ2V0VGFiKClcIlxuICAgID48L3ZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yPlxuICB9XG4gIEBjYXNlIChXaWRnZXRFZGl0b3JUYWIuSlNPTikge1xuICAgIDx2YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWpzb24tZWRpdG9yXG4gICAgICBbY3VycmVudFdpZGdldFRhYl09XCJjdXJyZW50V2lkZ2V0VGFiJCB8IGFzeW5jXCJcbiAgICAgIChjYW5EZWFjdGl2YXRlKT1cIm9uSnNvbkNhbkRlYWN0aXZhdGUoJGV2ZW50KVwiXG4gICAgICAoY2hhbmdlU2F2ZWQpPVwicmVmcmVzaFdpZGdldFRhYigpXCJcbiAgICAgIChjdXN0b21Nb2RhbExvYWRlZCk9XCJvbkN1c3RvbU1vZGFsTG9hZGVkKCRldmVudClcIlxuICAgICAgKHBlbmRpbmdDaGFuZ2VzVXBkYXRlKT1cIm9uUGVuZGluZ0NoYW5nZXNVcGRhdGUoJGV2ZW50KVwiXG4gICAgPjwvdmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1qc29uLWVkaXRvcj5cbiAgfVxufVxuXG48bmctY29udGFpbmVyIHJlbmRlckluUGFnZUhlYWRlcj5cbiAgPG5nLXRlbXBsYXRlPlxuICAgIDxidXR0b25cbiAgICAgIGNkc0J1dHRvbj1cInRlcnRpYXJ5XCJcbiAgICAgIFtzaXplXT1cIihjb21wYWN0TW9kZSQgfCBhc3luYykgPyAnc20nIDogJ21kJ1wiXG4gICAgICAoY2xpY2spPVwiZWRpdFdpZGdldFRhYigpXCJcbiAgICA+XG4gICAgICB7eyAnd2lkZ2V0VGFiTWFuYWdlbWVudC50YWIuZWRpdEJ1dHRvbicgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjbGFzcz1cImNkcy0tYnRuX19pY29uXCIgY2RzSWNvbj1cImVkaXRcIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLEVBQUMsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFLTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEdBQ2xDLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQWUsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDNUYsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3RixPQUFPLEVBQUMsZUFBZSxF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O3dCQUNaLFVBQVU7d0JBQ1YsVUFBVTtxQkFDWCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RWRpdDE2fSBmcm9tICdAY2FyYm9uL2ljb25zJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7XG4gIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCxcbiAgUGFnZUhlYWRlclNlcnZpY2UsXG4gIFBhZ2VUaXRsZVNlcnZpY2UsXG4gIFBlbmRpbmdDaGFuZ2VzQ29tcG9uZW50LFxuICBSZW5kZXJJblBhZ2VIZWFkZXJEaXJlY3RpdmVNb2R1bGUsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtBcGlUYWJJdGVtfSBmcm9tICdAdmFsdGltby9kb3NzaWVyJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBJY29uTW9kdWxlLCBJY29uU2VydmljZSwgVGFic01vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC9tb21lbnQnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1dpZGdldEVkaXRvclRhYn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7XG4gIFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICBXaWRnZXRKc29uRWRpdG9yU2VydmljZSxcbiAgV2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7RG9zc2llck1hbmFnZW1lbnRXaWRnZXRUYWJFZGl0TW9kYWxDb21wb25lbnR9IGZyb20gJy4uL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLWVkaXQtbW9kYWwvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWItZWRpdC1tb2RhbCc7XG5pbXBvcnQge0Rvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0VkaXRvckNvbXBvbmVudH0gZnJvbSAnLi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge0Rvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0pzb25FZGl0b3JDb21wb25lbnR9IGZyb20gJy4vanNvbi1lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtY2FzZS13aWRnZXRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIERvc3NpZXJNYW5hZ2VtZW50V2lkZ2V0c0VkaXRvckNvbXBvbmVudCxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFRhYkVkaXRNb2RhbENvbXBvbmVudCxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldHNKc29uRWRpdG9yQ29tcG9uZW50LFxuICAgIFJlbmRlckluUGFnZUhlYWRlckRpcmVjdGl2ZU1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBUYWJzTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFRhYkNvbXBvbmVudFxuICBleHRlbmRzIFBlbmRpbmdDaGFuZ2VzQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50RGVmaW5pdGlvbk5hbWUkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSB0aGlzLnJvdXRlLnBhcmFtcy5waXBlKFxuICAgIG1hcChwYXJhbXMgPT4gcGFyYW1zLm5hbWUgfHwgJycpLFxuICAgIGZpbHRlcihkb2N1bWVudERlZmluaXRpb25OYW1lID0+ICEhZG9jdW1lbnREZWZpbml0aW9uTmFtZSksXG4gICAgdGFwKGRvY3VtZW50RGVmaW5pdGlvbk5hbWUgPT5cbiAgICAgIHRoaXMudGFiTWFuYWdlbWVudFNlcnZpY2Uuc2V0Q2FzZURlZmluaXRpb25JZChkb2N1bWVudERlZmluaXRpb25OYW1lKVxuICAgIClcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdGFiV2lkZ2V0S2V5JDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy5yb3V0ZS5wYXJhbXMucGlwZShcbiAgICBtYXAocGFyYW1zID0+IHBhcmFtcy5rZXkgfHwgJycpLFxuICAgIGZpbHRlcih0YWJXaWRnZXRLZXkgPT4gISF0YWJXaWRnZXRLZXkpXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHNob3dFZGl0V2lkZ2V0VGFiTW9kYWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50V2lkZ2V0VGFiSXRlbSQ6IE9ic2VydmFibGU8QXBpVGFiSXRlbT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnRhYldpZGdldEtleSQsXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgna2V5JyksXG4gICAgdGhpcy5fcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkLFxuICBdKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoW3RhYktleV0pID0+IHRoaXMudGFiTWFuYWdlbWVudFNlcnZpY2UuZ2V0VGFiKHRhYktleSkpLFxuICAgIHRhcCh0YWJJdGVtID0+IHtcbiAgICAgIGNvbnN0IHRpdGxlID1cbiAgICAgICAgdGFiSXRlbS5uYW1lIHx8XG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGB3aWRnZXRUYWJNYW5hZ2VtZW50Lm1ldGFkYXRhLiR7dGFiSXRlbS5rZXl9YCk7XG4gICAgICB0aGlzLnBhZ2VUaXRsZVNlcnZpY2Uuc2V0Q3VzdG9tUGFnZVRpdGxlKHRpdGxlKTtcbiAgICAgIHRoaXMucGFnZVRpdGxlU2VydmljZS5zZXRDdXN0b21QYWdlU3VidGl0bGUoXG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3aWRnZXRUYWJNYW5hZ2VtZW50LnRhYi5tZXRhZGF0YScsIHtcbiAgICAgICAgICBjcmVhdGVkQnk6IHRhYkl0ZW0/LmNyZWF0ZWRCeSB8fCAnLScsXG4gICAgICAgICAgY3JlYXRlZE9uOiAhIXRhYkl0ZW0/LmNyZWF0ZWRPblxuICAgICAgICAgICAgPyBtb21lbnQodGFiSXRlbT8uY3JlYXRlZE9uKS5mb3JtYXQoJ0REIE1NTSBZWVlZIEhIOm1tJylcbiAgICAgICAgICAgIDogJy0nLFxuICAgICAgICAgIGtleTogdGFiSXRlbS5rZXksXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0pXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50V2lkZ2V0VGFiJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSQsXG4gICAgdGhpcy50YWJXaWRnZXRLZXkkLFxuICAgIHRoaXMuX3JlZnJlc2hXaWRnZXRUYWJTdWJqZWN0JCxcbiAgXSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKFtjYXNlRGVmaW5pdGlvbk5hbWUsIHRhYldpZGdldEtleV0pID0+XG4gICAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlLmdldFdpZGdldFRhYkNvbmZpZ3VyYXRpb24oY2FzZURlZmluaXRpb25OYW1lLCB0YWJXaWRnZXRLZXkpXG4gICAgKVxuICApO1xuXG4gIHB1YmxpYyByZWFkb25seSBXaWRnZXRFZGl0b3JUYWIgPSBXaWRnZXRFZGl0b3JUYWI7XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVUYWIgPSBzaWduYWw8V2lkZ2V0RWRpdG9yVGFiIHwgbnVsbD4oV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTCk7XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVDb250ZW50ID0gc2lnbmFsPFdpZGdldEVkaXRvclRhYiB8IG51bGw+KFdpZGdldEVkaXRvclRhYi5WSVNVQUwpO1xuICBwdWJsaWMgcmVhZG9ubHkgY29tcGFjdE1vZGUkID0gdGhpcy5wYWdlSGVhZGVyU2VydmljZS5jb21wYWN0TW9kZSQ7XG5cbiAgcHJpdmF0ZSBfcGVuZGluZ1RhYjogV2lkZ2V0RWRpdG9yVGFiIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBicmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpY29uU2VydmljZTogSWNvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYWdlVGl0bGVTZXJ2aWNlOiBQYWdlVGl0bGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFiTWFuYWdlbWVudFNlcnZpY2U6IFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2U6IFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VIZWFkZXJTZXJ2aWNlOiBQYWdlSGVhZGVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldEpzb25FZGl0b3JTZXJ2aWNlOiBXaWRnZXRKc29uRWRpdG9yU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFnZVRpdGxlU2VydmljZS5kaXNhYmxlUmVzZXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pY29uU2VydmljZS5yZWdpc3RlckFsbChbRWRpdDE2XSk7XG4gICAgdGhpcy5pbml0QnJlYWRjcnVtYigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYnJlYWRjcnVtYlNlcnZpY2UuY2xlYXJUaGlyZEJyZWFkY3J1bWIoKTtcbiAgICB0aGlzLnBhZ2VUaXRsZVNlcnZpY2UuZGlzYWJsZVJlc2V0KCk7XG4gIH1cblxuICBwdWJsaWMgZGlzcGxheUJvZHlDb21wb25lbnQodGFiOiBXaWRnZXRFZGl0b3JUYWIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wZW5kaW5nQ2hhbmdlcyAmJiB0YWIgIT09IHRoaXMuYWN0aXZlVGFiKCkpIHtcbiAgICAgIHRoaXMuX3BlbmRpbmdUYWIgPSB0aGlzLmFjdGl2ZVRhYigpO1xuICAgICAgdGhpcy5hY3RpdmVUYWIuc2V0KHRhYik7XG4gICAgICB0aGlzLm9uQ2FuRGVhY3RpdmF0ZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiKTtcbiAgICB0aGlzLmFjdGl2ZUNvbnRlbnQuc2V0KHRhYik7XG4gIH1cblxuICBwdWJsaWMgZWRpdFdpZGdldFRhYigpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dFZGl0V2lkZ2V0VGFiTW9kYWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblBlbmRpbmdDaGFuZ2VzVXBkYXRlKGNoYW5nZUFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMucGVuZGluZ0NoYW5nZXMgPSBjaGFuZ2VBY3RpdmU7XG4gIH1cblxuICBwcml2YXRlIHNob3dFZGl0V2lkZ2V0VGFiTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93RWRpdFdpZGdldFRhYk1vZGFsJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2hXaWRnZXRUYWIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGVuZGluZ0NoYW5nZXMpIHRoaXMub25DdXN0b21Db25maXJtKCk7XG4gICAgdGhpcy5fcmVmcmVzaFdpZGdldFRhYlN1YmplY3QkLm5leHQobnVsbCk7XG4gIH1cblxuICBwdWJsaWMgb25DdXN0b21Nb2RhbExvYWRlZChtb2RhbDogQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmN1c3RvbU1vZGFsKSByZXR1cm47XG5cbiAgICB0aGlzLmN1c3RvbU1vZGFsID0gbW9kYWw7XG4gIH1cblxuICBwdWJsaWMgb25Kc29uQ2FuRGVhY3RpdmF0ZShjYW5EZWFjdGl2YXRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGNhbkRlYWN0aXZhdGUpIHtcbiAgICAgIHRoaXMub25DdXN0b21Db25maXJtKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5vbkN1c3RvbUNhbmNlbCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2FuY2VsUmVkaXJlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVUYWIuc2V0KHRoaXMuX3BlbmRpbmdUYWIpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ29uZmlybVJlZGlyZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlQ29udGVudC5zZXQodGhpcy5hY3RpdmVUYWIoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25DYW5EZWFjdGl2YXRlKCk6IHZvaWQge1xuICAgIHRoaXMud2lkZ2V0SnNvbkVkaXRvclNlcnZpY2Uuc2hvd1BlbmRpbmdNb2RhbC5zZXQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRCcmVhZGNydW1iKCk6IHZvaWQge1xuICAgIHRoaXMuZG9jdW1lbnREZWZpbml0aW9uTmFtZSQuc3Vic2NyaWJlKGRvY3VtZW50RGVmaW5pdGlvbk5hbWUgPT4ge1xuICAgICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zZXRUaGlyZEJyZWFkY3J1bWIoe1xuICAgICAgICByb3V0ZTogW2AvZG9zc2llci1tYW5hZ2VtZW50L2Rvc3NpZXIvJHtkb2N1bWVudERlZmluaXRpb25OYW1lfWBdLFxuICAgICAgICBjb250ZW50OiBkb2N1bWVudERlZmluaXRpb25OYW1lLFxuICAgICAgICBocmVmOiBgL2Rvc3NpZXItbWFuYWdlbWVudC9kb3NzaWVyLyR7ZG9jdW1lbnREZWZpbml0aW9uTmFtZX1gLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPHZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC10YWItZWRpdC1tb2RhbFxuICBbdGFiSXRlbV09XCJjdXJyZW50V2lkZ2V0VGFiSXRlbSQgfCBhc3luY1wiXG4gIFtzaG93TW9kYWwkXT1cInNob3dFZGl0V2lkZ2V0VGFiTW9kYWwkXCJcbiAgKHNhdmVFdmVudCk9XCJyZWZyZXNoV2lkZ2V0VGFiKClcIlxuPlxuPC92YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiLWVkaXQtbW9kYWw+XG5cbjxjZHMtdGFicyB0eXBlPVwiY29udGFpbmVkXCI+XG4gIDxjZHMtdGFiXG4gICAgW2FjdGl2ZV09XCJhY3RpdmVUYWIoKSA9PT0gV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTFwiXG4gICAgW2hlYWRpbmddPVwiJ2ludGVyZmFjZS5lZGl0b3IudmlzdWFsRWRpdG9yJyB8IHRyYW5zbGF0ZVwiXG4gICAgKHNlbGVjdGVkKT1cImRpc3BsYXlCb2R5Q29tcG9uZW50KFdpZGdldEVkaXRvclRhYi5WSVNVQUwpXCJcbiAgPlxuICA8L2Nkcy10YWI+XG5cbiAgPGNkcy10YWJcbiAgICBbYWN0aXZlXT1cImFjdGl2ZVRhYigpID09PSBXaWRnZXRFZGl0b3JUYWIuSlNPTlwiXG4gICAgW2hlYWRpbmddPVwiJ2ludGVyZmFjZS5lZGl0b3IuanNvbkVkaXRvcicgfCB0cmFuc2xhdGVcIlxuICAgIChzZWxlY3RlZCk9XCJkaXNwbGF5Qm9keUNvbXBvbmVudChXaWRnZXRFZGl0b3JUYWIuSlNPTilcIlxuICA+XG4gIDwvY2RzLXRhYj5cbjwvY2RzLXRhYnM+XG5cbkBzd2l0Y2ggKGFjdGl2ZUNvbnRlbnQoKSkge1xuICBAY2FzZSAoV2lkZ2V0RWRpdG9yVGFiLlZJU1VBTCkge1xuICAgIDx2YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWVkaXRvclxuICAgICAgW2RvY3VtZW50RGVmaW5pdGlvbk5hbWVdPVwiZG9jdW1lbnREZWZpbml0aW9uTmFtZSQgfCBhc3luY1wiXG4gICAgICBbdGFiV2lkZ2V0S2V5XT1cInRhYldpZGdldEtleSQgfCBhc3luY1wiXG4gICAgICBbY3VycmVudFdpZGdldFRhYl09XCJjdXJyZW50V2lkZ2V0VGFiJCB8IGFzeW5jXCJcbiAgICAgIChjaGFuZ2VTYXZlZCk9XCJyZWZyZXNoV2lkZ2V0VGFiKClcIlxuICAgID48L3ZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yPlxuICB9XG4gIEBjYXNlIChXaWRnZXRFZGl0b3JUYWIuSlNPTikge1xuICAgIDx2YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWpzb24tZWRpdG9yXG4gICAgICBbY3VycmVudFdpZGdldFRhYl09XCJjdXJyZW50V2lkZ2V0VGFiJCB8IGFzeW5jXCJcbiAgICAgIChjYW5EZWFjdGl2YXRlKT1cIm9uSnNvbkNhbkRlYWN0aXZhdGUoJGV2ZW50KVwiXG4gICAgICAoY2hhbmdlU2F2ZWQpPVwicmVmcmVzaFdpZGdldFRhYigpXCJcbiAgICAgIChjdXN0b21Nb2RhbExvYWRlZCk9XCJvbkN1c3RvbU1vZGFsTG9hZGVkKCRldmVudClcIlxuICAgICAgKHBlbmRpbmdDaGFuZ2VzVXBkYXRlKT1cIm9uUGVuZGluZ0NoYW5nZXNVcGRhdGUoJGV2ZW50KVwiXG4gICAgPjwvdmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1qc29uLWVkaXRvcj5cbiAgfVxufVxuXG48bmctY29udGFpbmVyIHJlbmRlckluUGFnZUhlYWRlcj5cbiAgPG5nLXRlbXBsYXRlPlxuICAgIDxidXR0b25cbiAgICAgIGNkc0J1dHRvbj1cInRlcnRpYXJ5XCJcbiAgICAgIFtzaXplXT1cIihjb21wYWN0TW9kZSQgfCBhc3luYykgPyAnc20nIDogJ21kJ1wiXG4gICAgICAoY2xpY2spPVwiZWRpdFdpZGdldFRhYigpXCJcbiAgICA+XG4gICAgICB7eyAnd2lkZ2V0VGFiTWFuYWdlbWVudC50YWIuZWRpdEJ1dHRvbicgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjbGFzcz1cImNkcy0tYnRuX19pY29uXCIgY2RzSWNvbj1cImVkaXRcIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -170,21 +170,21 @@ export class DossierManagementWidgetsEditorComponent {
|
|
|
170
170
|
getWidthTranslationKey(width) {
|
|
171
171
|
switch (width) {
|
|
172
172
|
case 1:
|
|
173
|
-
return 'widgetTabManagement.width.
|
|
173
|
+
return 'widgetTabManagement.width.small.title';
|
|
174
174
|
case 2:
|
|
175
|
-
return 'widgetTabManagement.width.
|
|
175
|
+
return 'widgetTabManagement.width.medium.title';
|
|
176
176
|
case 3:
|
|
177
|
-
return 'widgetTabManagement.width.
|
|
177
|
+
return 'widgetTabManagement.width.large.title';
|
|
178
178
|
case 4:
|
|
179
|
-
return 'widgetTabManagement.width.
|
|
179
|
+
return 'widgetTabManagement.width.xtraLarge.title';
|
|
180
180
|
default:
|
|
181
181
|
return '-';
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
185
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
184
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetsEditorComponent, deps: [{ token: i1.KeyGeneratorService }, { token: i2.TranslateService }, { token: i3.WidgetTabManagementService }, { token: i3.WidgetWizardService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
185
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DossierManagementWidgetsEditorComponent, isStandalone: true, selector: "valtimo-dossier-management-widgets-editor", inputs: { documentDefinitionName: "documentDefinitionName", tabWidgetKey: "tabWidgetKey", currentWidgetTab: "currentWidgetTab" }, outputs: { changeSaved: "changeSaved" }, 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<ng-container\n *ngIf=\"{\n isWizardOpen: isWizardOpen$ | async,\n items: items$ | async\n } as obs\"\n>\n <valtimo-carbon-list\n [actionItems]=\"ACTION_ITEMS\"\n [fields]=\"FIELDS\"\n [header]=\"false\"\n [items]=\"obs.items\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"dragAndDropDisabled()\"\n (itemsReordered)=\"onItemsReordered($event)\"\n (rowClicked)=\"editWidget($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container *ngTemplateOutlet=\"addWidgetButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addWidgetButton\"\n [description]=\"'widgetTabManagement.list.noResults.description' | translate\"\n [title]=\"'widgetTabManagement.list.noResults.title' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #addWidgetButton>\n <button cdsButton=\"primary\" (click)=\"openAddModal()\">\n {{ 'widgetTabManagement.list.add' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n </ng-template>\n\n <valtimo-dossier-management-widget-wizard\n [editMode]=\"isEditMode()\"\n [open]=\"obs.isWizardOpen\"\n (closeEvent)=\"onCloseEvent($event, obs.items)\"\n ></valtimo-dossier-management-widget-wizard>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"Are you sure you want to delete this widget?\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n [showModalSubject$]=\"deleteModalOpen$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"onDeleteConfirm($event)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CarbonListModule }, { kind: "component", type: i1.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "actions", "actionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i1.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i5.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i5.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: DossierManagementWidgetWizardComponent, selector: "valtimo-dossier-management-widget-wizard", inputs: ["open", "editMode"], outputs: ["closeEvent"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i1.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
186
186
|
}
|
|
187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetsEditorComponent, decorators: [{
|
|
188
188
|
type: Component,
|
|
189
189
|
args: [{ selector: 'valtimo-dossier-management-widgets-editor', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
190
190
|
CommonModule,
|
|
@@ -205,4 +205,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
205
205
|
}], changeSaved: [{
|
|
206
206
|
type: Output
|
|
207
207
|
}] } });
|
|
208
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFHTCxnQkFBZ0IsRUFFaEIsdUJBQXVCLEVBRXZCLFFBQVEsR0FDVCxNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9FLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxXQUFX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LElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sc0JBQXNCLENBQUMsS0FBYTtRQUMxQyxRQUFRLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDO2dCQUNKLE9BQU8seUNBQXlDLENBQUM7WUFDbkQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sc0NBQXNDLENBQUM7WUFDaEQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sK0NBQStDLENBQUM7WUFDekQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sMkNBQTJDLENBQUM7WUFDckQ7Z0JBQ0UsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQzs4R0F4TFUsdUNBQXVDO2tHQUF2Qyx1Q0FBdUMsZ1JDMURwRCxrM0VBbUVBLDJDRG5CSSxZQUFZLDhWQUNaLGVBQWUsMkZBQ2YsZ0JBQWdCLHcxQkFDaEIsWUFBWSxnTUFDWixVQUFVLDROQUNWLFVBQVUsK0JBQ1Ysc0NBQXNDLDJJQUN0Qyx1QkFBdUI7OzJGQUdkLHVDQUF1QztrQkFoQm5ELFNBQVM7K0JBQ0UsMkNBQTJDLG1CQUVwQyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixzQ0FBc0M7d0JBQ3RDLHVCQUF1QjtxQkFDeEI7a01BR2Usc0JBQXNCO3NCQUFyQyxLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRWMsZ0JBQWdCO3NCQUFuQyxLQUFLO2dCQVlvQixXQUFXO3NCQUFwQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICBBY3Rpb25JdGVtLFxuICBDYXJib25MaXN0SXRlbSxcbiAgQ2FyYm9uTGlzdE1vZHVsZSxcbiAgQ29sdW1uQ29uZmlnLFxuICBDb25maXJtYXRpb25Nb2RhbE1vZHVsZSxcbiAgS2V5R2VuZXJhdG9yU2VydmljZSxcbiAgVmlld1R5cGUsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtCYXNpY0Nhc2VXaWRnZXQsIENhc2VXaWRnZXQsIENhc2VXaWRnZXRzUmVzfSBmcm9tICdAdmFsdGltby9kb3NzaWVyJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBJY29uTW9kdWxlLCBUYWJzTW9kdWxlfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBVkFJTEFCTEVfV0lER0VUUywgV2lkZ2V0U3R5bGUsIFdpZGdldFR5cGVUYWdzfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtXaWRnZXRUYWJNYW5hZ2VtZW50U2VydmljZSwgV2lkZ2V0V2l6YXJkU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtEb3NzaWVyTWFuYWdlbWVudFdpZGdldFdpemFyZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC13aXphcmQvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC13aXphcmQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENhcmJvbkxpc3RNb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgVGFic01vZHVsZSxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFdpemFyZENvbXBvbmVudCxcbiAgICBDb25maXJtYXRpb25Nb2RhbE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llck1hbmFnZW1lbnRXaWRnZXRzRWRpdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIGRvY3VtZW50RGVmaW5pdGlvbk5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHRhYldpZGdldEtleTogc3RyaW5nO1xuICBwcml2YXRlIF9jdXJyZW50V2lkZ2V0VGFiOiBDYXNlV2lkZ2V0c1JlcztcbiAgQElucHV0KCkgcHVibGljIHNldCBjdXJyZW50V2lkZ2V0VGFiKHZhbHVlOiBDYXNlV2lkZ2V0c1Jlcykge1xuICAgIGlmICghdmFsdWUpIHJldHVybjtcblxuICAgIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWIgPSB2YWx1ZTtcbiAgICB0aGlzLl9pdGVtcyQubmV4dCh2YWx1ZT8ud2lkZ2V0cyk7XG4gICAgdGhpcy5fdXNlZEtleXMgPSB2YWx1ZT8ud2lkZ2V0cy5tYXAod2lkZ2V0ID0+IHdpZGdldC5rZXkpO1xuICAgIHRoaXMuZHJhZ0FuZERyb3BEaXNhYmxlZC5zZXQoZmFsc2UpO1xuICB9XG4gIHB1YmxpYyBnZXQgY3VycmVudFdpZGdldFRhYigpOiBDYXNlV2lkZ2V0c1JlcyB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWI7XG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZVNhdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBGSUVMRFM6IENvbHVtbkNvbmZpZ1tdID0gW1xuICAgIHtcbiAgICAgIGtleTogJ3RpdGxlJyxcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLnRpdGxlJyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5URVhULFxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAndGFncycsXG4gICAgICBsYWJlbDogJ3dpZGdldFRhYk1hbmFnZW1lbnQuY29sdW1ucy50eXBlJyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5UQUdTLFxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAna2V5JyxcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLmtleScsXG4gICAgICB2aWV3VHlwZTogVmlld1R5cGUuVEVYVCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ3dpZHRoVHJhbnNsYXRpb24nLFxuICAgICAgbGFiZWw6ICd3aWRnZXRUYWJNYW5hZ2VtZW50LmNvbHVtbnMud2lkdGgnLFxuICAgICAgdmlld1R5cGU6IFZpZXdUeXBlLlRFWFQsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdoaWdoQ29udHJhc3QnLFxuICAgICAgbGFiZWw6ICd3aWRnZXRUYWJNYW5hZ2VtZW50LmNvbHVtbnMuaGlnaENvbnRyYXN0JyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5CT09MRUFOLFxuICAgIH0sXG4gIF07XG5cbiAgcHVibGljIHJlYWRvbmx5IEFDVElPTl9JVEVNUzogQWN0aW9uSXRlbVtdID0gW1xuICAgIHtcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLmVkaXQnLFxuICAgICAgY2FsbGJhY2s6IHRoaXMuZWRpdFdpZGdldC5iaW5kKHRoaXMpLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdpbnRlcmZhY2UuZGVsZXRlJyxcbiAgICAgIGNhbGxiYWNrOiB0aGlzLmRlbGV0ZVdpZGdldC5iaW5kKHRoaXMpLFxuICAgICAgdHlwZTogJ2RhbmdlcicsXG4gICAgfSxcbiAgXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pdGVtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENhcmJvbkxpc3RJdGVtW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IGl0ZW1zJDogT2JzZXJ2YWJsZTxDYXJib25MaXN0SXRlbVtdPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuX2l0ZW1zJCxcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtpdGVtc10pID0+XG4gICAgICBpdGVtcy5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAuLi5pdGVtLFxuICAgICAgICB3aWR0aFRyYW5zbGF0aW9uOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLmdldFdpZHRoVHJhbnNsYXRpb25LZXkoaXRlbS53aWR0aCkpLFxuICAgICAgICB0YWdzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgY29udGVudDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYHdpZGdldFRhYk1hbmFnZW1lbnQudHlwZXMuJHtpdGVtLnR5cGV9LnRpdGxlYCksXG4gICAgICAgICAgICB0eXBlOiBXaWRnZXRUeXBlVGFnc1tpdGVtLnR5cGVdLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KSlcbiAgICApXG4gICk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlzV2l6YXJkT3BlbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzRWRpdE1vZGUgPSB0aGlzLndpZGdldFdpemFyZFNlcnZpY2UuZWRpdE1vZGU7XG4gIHB1YmxpYyByZWFkb25seSBkZWxldGVNb2RhbE9wZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBkZWxldGVSb3dLZXkkID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkcmFnQW5kRHJvcERpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcblxuICBwcml2YXRlIF91c2VkS2V5czogc3RyaW5nW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBrZXlHZW5lcmF0b3JTZXJ2aWNlOiBLZXlHZW5lcmF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlOiBXaWRnZXRUYWJNYW5hZ2VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldFdpemFyZFNlcnZpY2U6IFdpZGdldFdpemFyZFNlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBlZGl0V2lkZ2V0KHRhYldpZGdldDogQ2FzZVdpZGdldCk6IHZvaWQge1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS53aWRnZXRUaXRsZS5zZXQodGFiV2lkZ2V0LnRpdGxlKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2Uud2lkZ2V0U3R5bGUuc2V0KFxuICAgICAgdGFiV2lkZ2V0LmhpZ2hDb250cmFzdCA/IFdpZGdldFN0eWxlLkhJR0hfQ09OVFJBU1QgOiBXaWRnZXRTdHlsZS5ERUZBVUxUXG4gICAgKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2Uud2lkZ2V0V2lkdGguc2V0KHRhYldpZGdldC53aWR0aCk7XG4gICAgdGhpcy53aWRnZXRXaXphcmRTZXJ2aWNlLnNlbGVjdGVkV2lkZ2V0LnNldChcbiAgICAgIEFWQUlMQUJMRV9XSURHRVRTLmZpbmQoYXZhaWxhYmxlID0+IGF2YWlsYWJsZS50eXBlID09PSB0YWJXaWRnZXQudHlwZSkgPz8gbnVsbFxuICAgICk7XG4gICAgdGhpcy53aWRnZXRXaXphcmRTZXJ2aWNlLndpZGdldENvbnRlbnQuc2V0KHRhYldpZGdldC5wcm9wZXJ0aWVzKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2UuZWRpdE1vZGUuc2V0KHRydWUpO1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS53aWRnZXRLZXkuc2V0KHRhYldpZGdldC5rZXkpO1xuICAgIHRoaXMuaXNXaXphcmRPcGVuJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9wZW5BZGRNb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzV2l6YXJkT3BlbiQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkRlbGV0ZUNvbmZpcm0od2lkZ2V0S2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAudXBkYXRlV2lkZ2V0cyh7XG4gICAgICAgIC4uLnRoaXMuY3VycmVudFdpZGdldFRhYixcbiAgICAgICAgd2lkZ2V0czogdGhpcy5jdXJyZW50V2lkZ2V0VGFiLndpZGdldHMuZmlsdGVyKHdpZGdldCA9PiB3aWRnZXQua2V5ICE9PSB3aWRnZXRLZXkpLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNsb3NlRXZlbnQod2lkZ2V0UmVzdWx0OiBCYXNpY0Nhc2VXaWRnZXQsIGV4aXN0aW5nV2lkZ2V0czogQ2FzZVdpZGdldFtdKTogdm9pZCB7XG4gICAgdGhpcy5pc1dpemFyZE9wZW4kLm5leHQoZmFsc2UpO1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS5yZXNldFdpemFyZCgpO1xuXG4gICAgaWYgKCF3aWRnZXRSZXN1bHQpIHJldHVybjtcblxuICAgIHRoaXMud2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2VcbiAgICAgIC51cGRhdGVXaWRnZXRzKHtcbiAgICAgICAgY2FzZURlZmluaXRpb25OYW1lOiB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUsXG4gICAgICAgIGtleTogdGhpcy50YWJXaWRnZXRLZXksXG4gICAgICAgIHdpZGdldHM6ICEhd2lkZ2V0UmVzdWx0LmtleVxuICAgICAgICAgID8gZXhpc3RpbmdXaWRnZXRzLm1hcCgod2lkZ2V0OiBCYXNpY0Nhc2VXaWRnZXQpID0+XG4gICAgICAgICAgICAgIHdpZGdldC5rZXkgPT09IHdpZGdldFJlc3VsdC5rZXkgPyB3aWRnZXRSZXN1bHQgOiB3aWRnZXRcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgLi4uZXhpc3RpbmdXaWRnZXRzLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgLi4ud2lkZ2V0UmVzdWx0LFxuICAgICAgICAgICAgICAgIGtleTogdGhpcy5rZXlHZW5lcmF0b3JTZXJ2aWNlLmdldFVuaXF1ZUtleSh3aWRnZXRSZXN1bHQudGl0bGUsIHRoaXMuX3VzZWRLZXlzKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICB9KVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoYW5nZVNhdmVkLmVtaXQoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uSXRlbXNSZW9yZGVyZWQod2lkZ2V0czogQ2FzZVdpZGdldFtdKTogdm9pZCB7XG4gICAgdGhpcy5kcmFnQW5kRHJvcERpc2FibGVkLnNldCh0cnVlKTtcblxuICAgIHRoaXMud2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2VcbiAgICAgIC51cGRhdGVXaWRnZXRzKHtcbiAgICAgICAgLi4udGhpcy5jdXJyZW50V2lkZ2V0VGFiLFxuICAgICAgICB3aWRnZXRzLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlV2lkZ2V0KHRhYldpZGdldDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVSb3dLZXkkLm5leHQodGFiV2lkZ2V0LmtleSk7XG4gICAgdGhpcy5kZWxldGVNb2RhbE9wZW4kLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZHRoVHJhbnNsYXRpb25LZXkod2lkdGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgc3dpdGNoICh3aWR0aCkge1xuICAgICAgY2FzZSAxOlxuICAgICAgICByZXR1cm4gJ3dpZGdldFRhYk1hbmFnZW1lbnQud2lkdGgucXVhcnRlci50aXRsZSc7XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHJldHVybiAnd2lkZ2V0VGFiTWFuYWdlbWVudC53aWR0aC5oYWxmLnRpdGxlJztcbiAgICAgIGNhc2UgMzpcbiAgICAgICAgcmV0dXJuICd3aWRnZXRUYWJNYW5hZ2VtZW50LndpZHRoLnRocmVlUXVhcnRlcnMudGl0bGUnO1xuICAgICAgY2FzZSA0OlxuICAgICAgICByZXR1cm4gJ3dpZGdldFRhYk1hbmFnZW1lbnQud2lkdGguZnVsbFdpZHRoLnRpdGxlJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnLSc7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxuZy1jb250YWluZXJcbiAgKm5nSWY9XCJ7XG4gICAgaXNXaXphcmRPcGVuOiBpc1dpemFyZE9wZW4kIHwgYXN5bmMsXG4gICAgaXRlbXM6IGl0ZW1zJCB8IGFzeW5jXG4gIH0gYXMgb2JzXCJcbj5cbiAgPHZhbHRpbW8tY2FyYm9uLWxpc3RcbiAgICBbYWN0aW9uSXRlbXNdPVwiQUNUSU9OX0lURU1TXCJcbiAgICBbZmllbGRzXT1cIkZJRUxEU1wiXG4gICAgW2hlYWRlcl09XCJmYWxzZVwiXG4gICAgW2l0ZW1zXT1cIm9icy5pdGVtc1wiXG4gICAgW2RyYWdBbmREcm9wXT1cInRydWVcIlxuICAgIFtkcmFnQW5kRHJvcERpc2FibGVkXT1cImRyYWdBbmREcm9wRGlzYWJsZWQoKVwiXG4gICAgKGl0ZW1zUmVvcmRlcmVkKT1cIm9uSXRlbXNSZW9yZGVyZWQoJGV2ZW50KVwiXG4gICAgKHJvd0NsaWNrZWQpPVwiZWRpdFdpZGdldCgkZXZlbnQpXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgY2FyYm9uVG9vbGJhckNvbnRlbnQ+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWRkV2lkZ2V0QnV0dG9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8dmFsdGltby1uby1yZXN1bHRzXG4gICAgICBbYWN0aW9uXT1cImFkZFdpZGdldEJ1dHRvblwiXG4gICAgICBbZGVzY3JpcHRpb25dPVwiJ3dpZGdldFRhYk1hbmFnZW1lbnQubGlzdC5ub1Jlc3VsdHMuZGVzY3JpcHRpb24nIHwgdHJhbnNsYXRlXCJcbiAgICAgIFt0aXRsZV09XCInd2lkZ2V0VGFiTWFuYWdlbWVudC5saXN0Lm5vUmVzdWx0cy50aXRsZScgfCB0cmFuc2xhdGVcIlxuICAgID48L3ZhbHRpbW8tbm8tcmVzdWx0cz5cbiAgPC92YWx0aW1vLWNhcmJvbi1saXN0PlxuXG4gIDxuZy10ZW1wbGF0ZSAjYWRkV2lkZ2V0QnV0dG9uPlxuICAgIDxidXR0b24gY2RzQnV0dG9uPVwicHJpbWFyeVwiIChjbGljayk9XCJvcGVuQWRkTW9kYWwoKVwiPlxuICAgICAge3sgJ3dpZGdldFRhYk1hbmFnZW1lbnQubGlzdC5hZGQnIHwgdHJhbnNsYXRlIH19XG5cbiAgICAgIDxzdmcgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiIGNkc0ljb249XCJhZGRcIiBzaXplPVwiMTZcIj48L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8dmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXdpemFyZFxuICAgIFtlZGl0TW9kZV09XCJpc0VkaXRNb2RlKClcIlxuICAgIFtvcGVuXT1cIm9icy5pc1dpemFyZE9wZW5cIlxuICAgIChjbG9zZUV2ZW50KT1cIm9uQ2xvc2VFdmVudCgkZXZlbnQsIG9icy5pdGVtcylcIlxuICA+PC92YWx0aW1vLWRvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtd2l6YXJkPlxuXG4gIDx2YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbFxuICAgIGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuZGVsZXRlXCJcbiAgICBjb25maXJtQnV0dG9uVHlwZT1cImRhbmdlclwiXG4gICAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIHdpZGdldD9cIlxuICAgIFtvdXRwdXRPbkNvbmZpcm1dPVwiZGVsZXRlUm93S2V5JCB8IGFzeW5jXCJcbiAgICBbc2hvd01vZGFsU3ViamVjdCRdPVwiZGVsZXRlTW9kYWxPcGVuJFwiXG4gICAgdGl0bGVUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5kZWxldGVcIlxuICAgIChjb25maXJtRXZlbnQpPVwib25EZWxldGVDb25maXJtKCRldmVudClcIlxuICA+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9lZGl0b3IvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFHTCxnQkFBZ0IsRUFFaEIsdUJBQXVCLEVBRXZCLFFBQVEsR0FDVCxNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9FLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxXQUFX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LElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sc0JBQXNCLENBQUMsS0FBYTtRQUMxQyxRQUFRLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDO2dCQUNKLE9BQU8sdUNBQXVDLENBQUM7WUFDakQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sd0NBQXdDLENBQUM7WUFDbEQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sdUNBQXVDLENBQUM7WUFDakQsS0FBSyxDQUFDO2dCQUNKLE9BQU8sMkNBQTJDLENBQUM7WUFDckQ7Z0JBQ0UsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQzsrR0F4TFUsdUNBQXVDO21HQUF2Qyx1Q0FBdUMsZ1JDMURwRCxrM0VBbUVBLDJDRG5CSSxZQUFZLDhWQUNaLGVBQWUsMkZBQ2YsZ0JBQWdCLHcxQkFDaEIsWUFBWSxnTUFDWixVQUFVLDROQUNWLFVBQVUsK0JBQ1Ysc0NBQXNDLDJJQUN0Qyx1QkFBdUI7OzRGQUdkLHVDQUF1QztrQkFoQm5ELFNBQVM7K0JBQ0UsMkNBQTJDLG1CQUVwQyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixzQ0FBc0M7d0JBQ3RDLHVCQUF1QjtxQkFDeEI7a01BR2Usc0JBQXNCO3NCQUFyQyxLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRWMsZ0JBQWdCO3NCQUFuQyxLQUFLO2dCQVlvQixXQUFXO3NCQUFwQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICBBY3Rpb25JdGVtLFxuICBDYXJib25MaXN0SXRlbSxcbiAgQ2FyYm9uTGlzdE1vZHVsZSxcbiAgQ29sdW1uQ29uZmlnLFxuICBDb25maXJtYXRpb25Nb2RhbE1vZHVsZSxcbiAgS2V5R2VuZXJhdG9yU2VydmljZSxcbiAgVmlld1R5cGUsXG59IGZyb20gJ0B2YWx0aW1vL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtCYXNpY0Nhc2VXaWRnZXQsIENhc2VXaWRnZXQsIENhc2VXaWRnZXRzUmVzfSBmcm9tICdAdmFsdGltby9kb3NzaWVyJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBJY29uTW9kdWxlLCBUYWJzTW9kdWxlfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBVkFJTEFCTEVfV0lER0VUUywgV2lkZ2V0U3R5bGUsIFdpZGdldFR5cGVUYWdzfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtXaWRnZXRUYWJNYW5hZ2VtZW50U2VydmljZSwgV2lkZ2V0V2l6YXJkU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtEb3NzaWVyTWFuYWdlbWVudFdpZGdldFdpemFyZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC13aXphcmQvZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC13aXphcmQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENhcmJvbkxpc3RNb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgVGFic01vZHVsZSxcbiAgICBEb3NzaWVyTWFuYWdlbWVudFdpZGdldFdpemFyZENvbXBvbmVudCxcbiAgICBDb25maXJtYXRpb25Nb2RhbE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llck1hbmFnZW1lbnRXaWRnZXRzRWRpdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIGRvY3VtZW50RGVmaW5pdGlvbk5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHRhYldpZGdldEtleTogc3RyaW5nO1xuICBwcml2YXRlIF9jdXJyZW50V2lkZ2V0VGFiOiBDYXNlV2lkZ2V0c1JlcztcbiAgQElucHV0KCkgcHVibGljIHNldCBjdXJyZW50V2lkZ2V0VGFiKHZhbHVlOiBDYXNlV2lkZ2V0c1Jlcykge1xuICAgIGlmICghdmFsdWUpIHJldHVybjtcblxuICAgIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWIgPSB2YWx1ZTtcbiAgICB0aGlzLl9pdGVtcyQubmV4dCh2YWx1ZT8ud2lkZ2V0cyk7XG4gICAgdGhpcy5fdXNlZEtleXMgPSB2YWx1ZT8ud2lkZ2V0cy5tYXAod2lkZ2V0ID0+IHdpZGdldC5rZXkpO1xuICAgIHRoaXMuZHJhZ0FuZERyb3BEaXNhYmxlZC5zZXQoZmFsc2UpO1xuICB9XG4gIHB1YmxpYyBnZXQgY3VycmVudFdpZGdldFRhYigpOiBDYXNlV2lkZ2V0c1JlcyB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWI7XG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZVNhdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBGSUVMRFM6IENvbHVtbkNvbmZpZ1tdID0gW1xuICAgIHtcbiAgICAgIGtleTogJ3RpdGxlJyxcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLnRpdGxlJyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5URVhULFxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAndGFncycsXG4gICAgICBsYWJlbDogJ3dpZGdldFRhYk1hbmFnZW1lbnQuY29sdW1ucy50eXBlJyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5UQUdTLFxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAna2V5JyxcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLmtleScsXG4gICAgICB2aWV3VHlwZTogVmlld1R5cGUuVEVYVCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ3dpZHRoVHJhbnNsYXRpb24nLFxuICAgICAgbGFiZWw6ICd3aWRnZXRUYWJNYW5hZ2VtZW50LmNvbHVtbnMud2lkdGgnLFxuICAgICAgdmlld1R5cGU6IFZpZXdUeXBlLlRFWFQsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdoaWdoQ29udHJhc3QnLFxuICAgICAgbGFiZWw6ICd3aWRnZXRUYWJNYW5hZ2VtZW50LmNvbHVtbnMuaGlnaENvbnRyYXN0JyxcbiAgICAgIHZpZXdUeXBlOiBWaWV3VHlwZS5CT09MRUFOLFxuICAgIH0sXG4gIF07XG5cbiAgcHVibGljIHJlYWRvbmx5IEFDVElPTl9JVEVNUzogQWN0aW9uSXRlbVtdID0gW1xuICAgIHtcbiAgICAgIGxhYmVsOiAnaW50ZXJmYWNlLmVkaXQnLFxuICAgICAgY2FsbGJhY2s6IHRoaXMuZWRpdFdpZGdldC5iaW5kKHRoaXMpLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdpbnRlcmZhY2UuZGVsZXRlJyxcbiAgICAgIGNhbGxiYWNrOiB0aGlzLmRlbGV0ZVdpZGdldC5iaW5kKHRoaXMpLFxuICAgICAgdHlwZTogJ2RhbmdlcicsXG4gICAgfSxcbiAgXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pdGVtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENhcmJvbkxpc3RJdGVtW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IGl0ZW1zJDogT2JzZXJ2YWJsZTxDYXJib25MaXN0SXRlbVtdPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuX2l0ZW1zJCxcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdrZXknKSxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtpdGVtc10pID0+XG4gICAgICBpdGVtcy5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAuLi5pdGVtLFxuICAgICAgICB3aWR0aFRyYW5zbGF0aW9uOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLmdldFdpZHRoVHJhbnNsYXRpb25LZXkoaXRlbS53aWR0aCkpLFxuICAgICAgICB0YWdzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgY29udGVudDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYHdpZGdldFRhYk1hbmFnZW1lbnQudHlwZXMuJHtpdGVtLnR5cGV9LnRpdGxlYCksXG4gICAgICAgICAgICB0eXBlOiBXaWRnZXRUeXBlVGFnc1tpdGVtLnR5cGVdLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KSlcbiAgICApXG4gICk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlzV2l6YXJkT3BlbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzRWRpdE1vZGUgPSB0aGlzLndpZGdldFdpemFyZFNlcnZpY2UuZWRpdE1vZGU7XG4gIHB1YmxpYyByZWFkb25seSBkZWxldGVNb2RhbE9wZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBkZWxldGVSb3dLZXkkID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkcmFnQW5kRHJvcERpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcblxuICBwcml2YXRlIF91c2VkS2V5czogc3RyaW5nW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBrZXlHZW5lcmF0b3JTZXJ2aWNlOiBLZXlHZW5lcmF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlOiBXaWRnZXRUYWJNYW5hZ2VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldFdpemFyZFNlcnZpY2U6IFdpZGdldFdpemFyZFNlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBlZGl0V2lkZ2V0KHRhYldpZGdldDogQ2FzZVdpZGdldCk6IHZvaWQge1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS53aWRnZXRUaXRsZS5zZXQodGFiV2lkZ2V0LnRpdGxlKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2Uud2lkZ2V0U3R5bGUuc2V0KFxuICAgICAgdGFiV2lkZ2V0LmhpZ2hDb250cmFzdCA/IFdpZGdldFN0eWxlLkhJR0hfQ09OVFJBU1QgOiBXaWRnZXRTdHlsZS5ERUZBVUxUXG4gICAgKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2Uud2lkZ2V0V2lkdGguc2V0KHRhYldpZGdldC53aWR0aCk7XG4gICAgdGhpcy53aWRnZXRXaXphcmRTZXJ2aWNlLnNlbGVjdGVkV2lkZ2V0LnNldChcbiAgICAgIEFWQUlMQUJMRV9XSURHRVRTLmZpbmQoYXZhaWxhYmxlID0+IGF2YWlsYWJsZS50eXBlID09PSB0YWJXaWRnZXQudHlwZSkgPz8gbnVsbFxuICAgICk7XG4gICAgdGhpcy53aWRnZXRXaXphcmRTZXJ2aWNlLndpZGdldENvbnRlbnQuc2V0KHRhYldpZGdldC5wcm9wZXJ0aWVzKTtcbiAgICB0aGlzLndpZGdldFdpemFyZFNlcnZpY2UuZWRpdE1vZGUuc2V0KHRydWUpO1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS53aWRnZXRLZXkuc2V0KHRhYldpZGdldC5rZXkpO1xuICAgIHRoaXMuaXNXaXphcmRPcGVuJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9wZW5BZGRNb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzV2l6YXJkT3BlbiQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkRlbGV0ZUNvbmZpcm0od2lkZ2V0S2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAudXBkYXRlV2lkZ2V0cyh7XG4gICAgICAgIC4uLnRoaXMuY3VycmVudFdpZGdldFRhYixcbiAgICAgICAgd2lkZ2V0czogdGhpcy5jdXJyZW50V2lkZ2V0VGFiLndpZGdldHMuZmlsdGVyKHdpZGdldCA9PiB3aWRnZXQua2V5ICE9PSB3aWRnZXRLZXkpLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNsb3NlRXZlbnQod2lkZ2V0UmVzdWx0OiBCYXNpY0Nhc2VXaWRnZXQsIGV4aXN0aW5nV2lkZ2V0czogQ2FzZVdpZGdldFtdKTogdm9pZCB7XG4gICAgdGhpcy5pc1dpemFyZE9wZW4kLm5leHQoZmFsc2UpO1xuICAgIHRoaXMud2lkZ2V0V2l6YXJkU2VydmljZS5yZXNldFdpemFyZCgpO1xuXG4gICAgaWYgKCF3aWRnZXRSZXN1bHQpIHJldHVybjtcblxuICAgIHRoaXMud2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2VcbiAgICAgIC51cGRhdGVXaWRnZXRzKHtcbiAgICAgICAgY2FzZURlZmluaXRpb25OYW1lOiB0aGlzLmRvY3VtZW50RGVmaW5pdGlvbk5hbWUsXG4gICAgICAgIGtleTogdGhpcy50YWJXaWRnZXRLZXksXG4gICAgICAgIHdpZGdldHM6ICEhd2lkZ2V0UmVzdWx0LmtleVxuICAgICAgICAgID8gZXhpc3RpbmdXaWRnZXRzLm1hcCgod2lkZ2V0OiBCYXNpY0Nhc2VXaWRnZXQpID0+XG4gICAgICAgICAgICAgIHdpZGdldC5rZXkgPT09IHdpZGdldFJlc3VsdC5rZXkgPyB3aWRnZXRSZXN1bHQgOiB3aWRnZXRcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgLi4uZXhpc3RpbmdXaWRnZXRzLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgLi4ud2lkZ2V0UmVzdWx0LFxuICAgICAgICAgICAgICAgIGtleTogdGhpcy5rZXlHZW5lcmF0b3JTZXJ2aWNlLmdldFVuaXF1ZUtleSh3aWRnZXRSZXN1bHQudGl0bGUsIHRoaXMuX3VzZWRLZXlzKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICB9KVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoYW5nZVNhdmVkLmVtaXQoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uSXRlbXNSZW9yZGVyZWQod2lkZ2V0czogQ2FzZVdpZGdldFtdKTogdm9pZCB7XG4gICAgdGhpcy5kcmFnQW5kRHJvcERpc2FibGVkLnNldCh0cnVlKTtcblxuICAgIHRoaXMud2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2VcbiAgICAgIC51cGRhdGVXaWRnZXRzKHtcbiAgICAgICAgLi4udGhpcy5jdXJyZW50V2lkZ2V0VGFiLFxuICAgICAgICB3aWRnZXRzLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlV2lkZ2V0KHRhYldpZGdldDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVSb3dLZXkkLm5leHQodGFiV2lkZ2V0LmtleSk7XG4gICAgdGhpcy5kZWxldGVNb2RhbE9wZW4kLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZHRoVHJhbnNsYXRpb25LZXkod2lkdGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgc3dpdGNoICh3aWR0aCkge1xuICAgICAgY2FzZSAxOlxuICAgICAgICByZXR1cm4gJ3dpZGdldFRhYk1hbmFnZW1lbnQud2lkdGguc21hbGwudGl0bGUnO1xuICAgICAgY2FzZSAyOlxuICAgICAgICByZXR1cm4gJ3dpZGdldFRhYk1hbmFnZW1lbnQud2lkdGgubWVkaXVtLnRpdGxlJztcbiAgICAgIGNhc2UgMzpcbiAgICAgICAgcmV0dXJuICd3aWRnZXRUYWJNYW5hZ2VtZW50LndpZHRoLmxhcmdlLnRpdGxlJztcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgcmV0dXJuICd3aWRnZXRUYWJNYW5hZ2VtZW50LndpZHRoLnh0cmFMYXJnZS50aXRsZSc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJy0nO1xuICAgIH1cbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48bmctY29udGFpbmVyXG4gICpuZ0lmPVwie1xuICAgIGlzV2l6YXJkT3BlbjogaXNXaXphcmRPcGVuJCB8IGFzeW5jLFxuICAgIGl0ZW1zOiBpdGVtcyQgfCBhc3luY1xuICB9IGFzIG9ic1wiXG4+XG4gIDx2YWx0aW1vLWNhcmJvbi1saXN0XG4gICAgW2FjdGlvbkl0ZW1zXT1cIkFDVElPTl9JVEVNU1wiXG4gICAgW2ZpZWxkc109XCJGSUVMRFNcIlxuICAgIFtoZWFkZXJdPVwiZmFsc2VcIlxuICAgIFtpdGVtc109XCJvYnMuaXRlbXNcIlxuICAgIFtkcmFnQW5kRHJvcF09XCJ0cnVlXCJcbiAgICBbZHJhZ0FuZERyb3BEaXNhYmxlZF09XCJkcmFnQW5kRHJvcERpc2FibGVkKClcIlxuICAgIChpdGVtc1Jlb3JkZXJlZCk9XCJvbkl0ZW1zUmVvcmRlcmVkKCRldmVudClcIlxuICAgIChyb3dDbGlja2VkKT1cImVkaXRXaWRnZXQoJGV2ZW50KVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyIGNhcmJvblRvb2xiYXJDb250ZW50PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFkZFdpZGdldEJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHZhbHRpbW8tbm8tcmVzdWx0c1xuICAgICAgW2FjdGlvbl09XCJhZGRXaWRnZXRCdXR0b25cIlxuICAgICAgW2Rlc2NyaXB0aW9uXT1cIid3aWRnZXRUYWJNYW5hZ2VtZW50Lmxpc3Qubm9SZXN1bHRzLmRlc2NyaXB0aW9uJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBbdGl0bGVdPVwiJ3dpZGdldFRhYk1hbmFnZW1lbnQubGlzdC5ub1Jlc3VsdHMudGl0bGUnIHwgdHJhbnNsYXRlXCJcbiAgICA+PC92YWx0aW1vLW5vLXJlc3VsdHM+XG4gIDwvdmFsdGltby1jYXJib24tbGlzdD5cblxuICA8bmctdGVtcGxhdGUgI2FkZFdpZGdldEJ1dHRvbj5cbiAgICA8YnV0dG9uIGNkc0J1dHRvbj1cInByaW1hcnlcIiAoY2xpY2spPVwib3BlbkFkZE1vZGFsKClcIj5cbiAgICAgIHt7ICd3aWRnZXRUYWJNYW5hZ2VtZW50Lmxpc3QuYWRkJyB8IHRyYW5zbGF0ZSB9fVxuXG4gICAgICA8c3ZnIGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIiBjZHNJY29uPVwiYWRkXCIgc2l6ZT1cIjE2XCI+PC9zdmc+XG4gICAgPC9idXR0b24+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPHZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldC13aXphcmRcbiAgICBbZWRpdE1vZGVdPVwiaXNFZGl0TW9kZSgpXCJcbiAgICBbb3Blbl09XCJvYnMuaXNXaXphcmRPcGVuXCJcbiAgICAoY2xvc2VFdmVudCk9XCJvbkNsb3NlRXZlbnQoJGV2ZW50LCBvYnMuaXRlbXMpXCJcbiAgPjwvdmFsdGltby1kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXdpemFyZD5cblxuICA8dmFsdGltby1jb25maXJtYXRpb24tbW9kYWxcbiAgICBjb25maXJtQnV0dG9uVGV4dFRyYW5zbGF0aW9uS2V5PVwiaW50ZXJmYWNlLmRlbGV0ZVwiXG4gICAgY29uZmlybUJ1dHRvblR5cGU9XCJkYW5nZXJcIlxuICAgIGNvbnRlbnRUcmFuc2xhdGlvbktleT1cIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB3aWRnZXQ/XCJcbiAgICBbb3V0cHV0T25Db25maXJtXT1cImRlbGV0ZVJvd0tleSQgfCBhc3luY1wiXG4gICAgW3Nob3dNb2RhbFN1YmplY3QkXT1cImRlbGV0ZU1vZGFsT3BlbiRcIlxuICAgIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuZGVsZXRlXCJcbiAgICAoY29uZmlybUV2ZW50KT1cIm9uRGVsZXRlQ29uZmlybSgkZXZlbnQpXCJcbiAgPjwvdmFsdGltby1jb25maXJtYXRpb24tbW9kYWw+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -160,10 +160,10 @@ export class DossierManagementWidgetsJsonEditorComponent {
|
|
|
160
160
|
this._widgetConfig.set(null);
|
|
161
161
|
this._editorInit = false;
|
|
162
162
|
}
|
|
163
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
164
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
163
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetsJsonEditorComponent, deps: [{ token: i1.IconService }, { token: i1.NotificationService }, { token: i2.TranslateService }, { token: i3.WidgetJsonEditorService }, { token: i3.WidgetTabManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
164
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DossierManagementWidgetsJsonEditorComponent, isStandalone: true, selector: "valtimo-dossier-management-widgets-json-editor", inputs: { currentWidgetTab: "currentWidgetTab" }, outputs: { customModalLoaded: "customModalLoaded", canDeactivate: "canDeactivate", pendingChangesUpdate: "pendingChangesUpdate", changeSaved: "changeSaved" }, providers: [NotificationService], viewQueries: [{ propertyName: "pendingChangesModal", first: true, predicate: ["pendingChangesModal"], 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<div class=\"cds--toolbar-content\">\n @if (!editActive()) {\n <button cdsButton=\"ghost\" (click)=\"downloadConfig()\">\n {{ 'interface.download' | translate }}\n\n <svg cdsIcon=\"download\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button cdsButton=\"primary\" (click)=\"onEditClick()\">\n {{ 'interface.edit' | translate }}\n\n <svg cdsIcon=\"edit\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n } @else {\n <button cdsButton=\"secondary\" (click)=\"onCancelClick()\">\n {{ 'interface.cancel' | translate }}\n\n <svg cdsIcon=\"close\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"saveButtonDisabled()\" (click)=\"onSaveClick()\">\n {{ 'interface.save' | translate }}\n\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n }\n</div>\n\n<valtimo-editor\n *ngIf=\"jsonModel()\"\n [model]=\"jsonModel()\"\n [disabled]=\"!editActive()\"\n [fitPage]=\"true\"\n [fitPageExtraSpace]=\"96\"\n (validEvent)=\"onValidEvent($event)\"\n (valueChangeEvent)=\"onValueChangeEvent($event)\"\n></valtimo-editor>\n\n<a id=\"downloadAnchorElement\" style=\"display: none\"></a>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showSaveConfirmation$\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n confirmButtonTextTranslationKey=\"interface.save\"\n contentTranslationKey=\"widgetTabManagement.saveModalContent\"\n titleTranslationKey=\"interface.save\"\n (cancelEvent)=\"keepEditing()\"\n (confirmEvent)=\"save()\"\n></valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n #pendingChangesModal\n [showModalSubject$]=\"showPendingModal$\"\n cancelButtonTextTranslationKey=\"interface.pendingChanges.keepEditing\"\n cancelButtonType=\"ghost\"\n confirmButtonTextTranslationKey=\"interface.discard\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"widgetTabManagement.cancelModal.content\"\n optionalButtonTextTranslationKey=\"interface.save\"\n optionalButtonType=\"secondary\"\n titleTranslationKey=\"widgetTabManagement.cancelModal.title\"\n showOptionalButton=\"true\"\n spacerAfterCancelButton=\"true\"\n (cancelEvent)=\"keepEditing()\"\n (confirmEvent)=\"discardChanges()\"\n (optionalEvent)=\"save()\"\n></valtimo-confirmation-modal>\n", styles: [".cds--toolbar-content{background:var(--cds-layer)}\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: EditorModule }, { kind: "component", type: i5.EditorComponent, selector: "valtimo-editor", inputs: ["editorOptions", "model", "disabled", "formatOnLoad", "widthPx", "heightPx", "heightStyle", "jsonSchema", "fitPage", "fitPageExtraSpace"], outputs: ["validEvent", "valueChangeEvent"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i1.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i1.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { kind: "component", type: i5.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
165
165
|
}
|
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DossierManagementWidgetsJsonEditorComponent, decorators: [{
|
|
167
167
|
type: Component,
|
|
168
168
|
args: [{ selector: 'valtimo-dossier-management-widgets-json-editor', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
169
169
|
CommonModule,
|
|
@@ -187,4 +187,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
187
187
|
}], changeSaved: [{
|
|
188
188
|
type: Output
|
|
189
189
|
}] } });
|
|
190
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiL2pzb24tZWRpdG9yL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWpzb24tZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9qc29uLWVkaXRvci9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1qc29uLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQ0wsZ0JBQWdCLEVBRWhCLHVCQUF1QixFQUV2QixZQUFZLEdBQ2IsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFFVixt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ZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFNpZ25hbCxcbiAgc2lnbmFsLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b09ic2VydmFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7RWRpdDE2LCBTYXZlMTZ9IGZyb20gJ0BjYXJib24vaWNvbnMnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ0FSQk9OX0NPTlNUQU5UUyxcbiAgQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQsXG4gIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICBFZGl0b3JNb2RlbCxcbiAgRWRpdG9yTW9kdWxlLFxufSBmcm9tICdAdmFsdGltby9jb21wb25lbnRzJztcbmltcG9ydCB7QmFzaWNDYXNlV2lkZ2V0LCBDYXNlV2lkZ2V0c1Jlc30gZnJvbSAnQHZhbHRpbW8vZG9zc2llcic7XG5pbXBvcnQge1xuICBCdXR0b25Nb2R1bGUsXG4gIEljb25Nb2R1bGUsXG4gIEljb25TZXJ2aWNlLFxuICBOb3RpZmljYXRpb25TZXJ2aWNlLFxufSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCB0YWtlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7V2lkZ2V0SnNvbkVkaXRvclNlcnZpY2UsIFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgRWRpdG9yTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICBdLFxuICBwcm92aWRlcnM6IFtOb3RpZmljYXRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llck1hbmFnZW1lbnRXaWRnZXRzSnNvbkVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBAVmlld0NoaWxkKCdwZW5kaW5nQ2hhbmdlc01vZGFsJykgcHVibGljIHBlbmRpbmdDaGFuZ2VzTW9kYWw6IENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgX2N1cnJlbnRXaWRnZXRUYWI6IENhc2VXaWRnZXRzUmVzO1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IGN1cnJlbnRXaWRnZXRUYWIodmFsdWU6IENhc2VXaWRnZXRzUmVzKSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuO1xuICAgIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWIgPSB2YWx1ZTtcbiAgICB0aGlzLmpzb25Nb2RlbC5zZXQoe1xuICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KHZhbHVlKSxcbiAgICAgIGxhbmd1YWdlOiAnanNvbicsXG4gICAgfSk7XG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGN1c3RvbU1vZGFsTG9hZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBjYW5EZWFjdGl2YXRlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHBlbmRpbmdDaGFuZ2VzVXBkYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZVNhdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBqc29uTW9kZWwgPSBzaWduYWw8RWRpdG9yTW9kZWwgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IGVkaXRBY3RpdmUgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBzaG93UGVuZGluZ01vZGFsJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRvT2JzZXJ2YWJsZShcbiAgICB0aGlzLndpZGdldEpzb25FZGl0b3JTZXJ2aWNlLnNob3dQZW5kaW5nTW9kYWxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IHNob3dTYXZlQ29uZmlybWF0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpZGdldENvbmZpZyA9IHNpZ25hbDxDYXNlV2lkZ2V0c1JlcyB8IG51bGw+KG51bGwpO1xuXG4gIHByaXZhdGUgX2VkaXRvckluaXQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcGVuZGluZ0NoYW5nZXMgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfanNvblZhbGlkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfanNvblNjaGVtYUludmFsaWQgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgc2F2ZUJ1dHRvbkRpc2FibGVkOiBTaWduYWw8Ym9vbGVhbj4gPSBjb21wdXRlZChcbiAgICAoKSA9PiAhdGhpcy5fanNvblZhbGlkKCkgfHwgdGhpcy5fanNvblNjaGVtYUludmFsaWQoKSB8fCAhdGhpcy5fd2lkZ2V0Q29uZmlnKClcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGljb25TZXJ2aWNlOiBJY29uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0SnNvbkVkaXRvclNlcnZpY2U6IFdpZGdldEpzb25FZGl0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2U6IFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaWNvblNlcnZpY2UucmVnaXN0ZXJBbGwoW0VkaXQxNiwgU2F2ZTE2XSk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY3VzdG9tTW9kYWxMb2FkZWQuZW1pdCh0aGlzLnBlbmRpbmdDaGFuZ2VzTW9kYWwpO1xuICB9XG5cbiAgcHVibGljIGRvd25sb2FkQ29uZmlnKCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGFTdHJpbmcgPVxuICAgICAgJ2RhdGE6dGV4dC9qc29uO2NoYXJzZXQ9dXRmLTgsJyArXG4gICAgICBlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkodGhpcy5fY3VycmVudFdpZGdldFRhYiwgbnVsbCwgMikpO1xuICAgIGNvbnN0IGRvd25sb2FkQW5jaG9yRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkb3dubG9hZEFuY2hvckVsZW1lbnQnKTtcbiAgICBpZiAoIWRvd25sb2FkQW5jaG9yRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGRvd25sb2FkQW5jaG9yRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBkYXRhU3RyaW5nKTtcbiAgICBkb3dubG9hZEFuY2hvckVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgJ2Rvd25sb2FkJyxcbiAgICAgIGAke3RoaXMuX2N1cnJlbnRXaWRnZXRUYWIuY2FzZURlZmluaXRpb25OYW1lfS13aWRnZXRzLmpzb25gXG4gICAgKTtcbiAgICBkb3dubG9hZEFuY2hvckVsZW1lbnQuY2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBrZWVwRWRpdGluZygpOiB2b2lkIHtcbiAgICB0aGlzLndpZGdldEpzb25FZGl0b3JTZXJ2aWNlLnNob3dQZW5kaW5nTW9kYWwuc2V0KGZhbHNlKTtcbiAgICB0aGlzLnNob3dTYXZlQ29uZmlybWF0aW9uJC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLmNhbkRlYWN0aXZhdGUuZW1pdChmYWxzZSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY2FyZENoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgdGhpcy5qc29uTW9kZWwudXBkYXRlKChtb2RlbDogRWRpdG9yTW9kZWwgfCBudWxsKSA9PiAoe1xuICAgICAgLi4ubW9kZWwsXG4gICAgICB2YWx1ZTogSlNPTi5zdHJpbmdpZnkodGhpcy5fY3VycmVudFdpZGdldFRhYiksXG4gICAgfSkpO1xuICAgIHRoaXMud2lkZ2V0SnNvbkVkaXRvclNlcnZpY2Uuc2hvd1BlbmRpbmdNb2RhbC5zZXQoZmFsc2UpO1xuICAgIHRoaXMuc2V0UGVuZGluZ0NoYW5nZXMoZmFsc2UpO1xuICAgIHRoaXMuY2FuRGVhY3RpdmF0ZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNhdmUoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnOiBDYXNlV2lkZ2V0c1JlcyB8IG51bGwgPSB0aGlzLl93aWRnZXRDb25maWcoKTtcblxuICAgIGlmICghY29uZmlnKSByZXR1cm47XG5cbiAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAudXBkYXRlV2lkZ2V0cyhjb25maWcpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbih7XG4gICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2ludGVyZmFjZS5zdWNjZXNzJyksXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2lkZ2V0VGFiTWFuYWdlbWVudC5ub3RpZmljYXRpb24uc3VjY2VzcycpLFxuICAgICAgICAgICAgc2hvd0Nsb3NlOiB0cnVlLFxuICAgICAgICAgICAgZHVyYXRpb246IENBUkJPTl9DT05TVEFOVFMubm90aWZpY2F0aW9uRHVyYXRpb24sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy53aWRnZXRKc29uRWRpdG9yU2VydmljZS5zaG93UGVuZGluZ01vZGFsLnNldChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5zZXRQZW5kaW5nQ2hhbmdlcyhmYWxzZSk7XG4gICAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICAgICAgdGhpcy5jYW5EZWFjdGl2YXRlLmVtaXQodHJ1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnNob3dOb3RpZmljYXRpb24oe1xuICAgICAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnaW50ZXJmYWNlLmVycm9yJyksXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2lkZ2V0VGFiTWFuYWdlbWVudC5ub3RpZmljYXRpb24uZXJyb3InKSxcbiAgICAgICAgICAgIHNob3dDbG9zZTogdHJ1ZSxcbiAgICAgICAgICAgIGR1cmF0aW9uOiBDQVJCT05fQ09OU1RBTlRTLm5vdGlmaWNhdGlvbkR1cmF0aW9uLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25DYW5jZWxDbGljaygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3dpZGdldENvbmZpZygpIHx8ICF0aGlzLl9wZW5kaW5nQ2hhbmdlcykge1xuICAgICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy53aWRnZXRKc29uRWRpdG9yU2VydmljZS5zaG93UGVuZGluZ01vZGFsLnNldCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVkaXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmVkaXRBY3RpdmUuc2V0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uU2F2ZUNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd1NhdmVDb25maXJtYXRpb24kLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25WYWxpZEV2ZW50KHZhbGlkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fanNvblZhbGlkLnNldCh2YWxpZCk7XG4gIH1cblxuICBwdWJsaWMgb25WYWx1ZUNoYW5nZUV2ZW50KHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuX2VkaXRvckluaXQpIHtcbiAgICAgIHRoaXMuX2VkaXRvckluaXQgPSB0cnVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0UGVuZGluZ0NoYW5nZXModHJ1ZSk7XG5cbiAgICBjb25zdCB3aWRnZXRDb25maWc6IENhc2VXaWRnZXRzUmVzID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gICAgY29uc3QgZWRpdGVkV2lkZ2V0S2V5czogc3RyaW5nW10gPSB3aWRnZXRDb25maWcud2lkZ2V0cy5tYXAoXG4gICAgICAod2lkZ2V0OiBCYXNpY0Nhc2VXaWRnZXQpID0+IHdpZGdldC5rZXlcbiAgICApO1xuXG4gICAgdGhpcy5fanNvblNjaGVtYUludmFsaWQuc2V0KFxuICAgICAgd2lkZ2V0Q29uZmlnLmtleSAhPT0gdGhpcy5fY3VycmVudFdpZGdldFRhYi5rZXkgfHxcbiAgICAgICAgd2lkZ2V0Q29uZmlnLmNhc2VEZWZpbml0aW9uTmFtZSAhPT0gdGhpcy5fY3VycmVudFdpZGdldFRhYi5jYXNlRGVmaW5pdGlvbk5hbWUgfHxcbiAgICAgICAgbmV3IFNldChlZGl0ZWRXaWRnZXRLZXlzKS5zaXplICE9PSBlZGl0ZWRXaWRnZXRLZXlzLmxlbmd0aFxuICAgICk7XG5cbiAgICBpZiAoIXRoaXMuX2pzb25WYWxpZCgpIHx8ICF0aGlzLmVkaXRBY3RpdmUoKSkgcmV0dXJuO1xuXG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnLnNldChKU09OLnBhcnNlKHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFBlbmRpbmdDaGFuZ2VzKGNoYW5nZXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9wZW5kaW5nQ2hhbmdlcyA9IGNoYW5nZXM7XG4gICAgdGhpcy5wZW5kaW5nQ2hhbmdlc1VwZGF0ZS5lbWl0KGNoYW5nZXMpO1xuXG4gICAgaWYgKGNoYW5nZXMpIHJldHVybjtcblxuICAgIHRoaXMuX3dpZGdldENvbmZpZy5zZXQobnVsbCk7XG4gICAgdGhpcy5fZWRpdG9ySW5pdCA9IGZhbHNlO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXYgY2xhc3M9XCJjZHMtLXRvb2xiYXItY29udGVudFwiPlxuICBAaWYgKCFlZGl0QWN0aXZlKCkpIHtcbiAgICA8YnV0dG9uIGNkc0J1dHRvbj1cImdob3N0XCIgKGNsaWNrKT1cImRvd25sb2FkQ29uZmlnKClcIj5cbiAgICAgIHt7ICdpbnRlcmZhY2UuZG93bmxvYWQnIHwgdHJhbnNsYXRlIH19XG5cbiAgICAgIDxzdmcgY2RzSWNvbj1cImRvd25sb2FkXCIgc2l6ZT1cIjE2XCIgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGJ1dHRvbiBjZHNCdXR0b249XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uRWRpdENsaWNrKClcIj5cbiAgICAgIHt7ICdpbnRlcmZhY2UuZWRpdCcgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjZHNJY29uPVwiZWRpdFwiIHNpemU9XCIxNlwiIGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIj48L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgfSBAZWxzZSB7XG4gICAgPGJ1dHRvbiBjZHNCdXR0b249XCJzZWNvbmRhcnlcIiAoY2xpY2spPVwib25DYW5jZWxDbGljaygpXCI+XG4gICAgICB7eyAnaW50ZXJmYWNlLmNhbmNlbCcgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjZHNJY29uPVwiY2xvc2VcIiBzaXplPVwiMTZcIiBjbGFzcz1cImNkcy0tYnRuX19pY29uXCI+PC9zdmc+XG4gICAgPC9idXR0b24+XG5cbiAgICA8YnV0dG9uIGNkc0J1dHRvbj1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwic2F2ZUJ1dHRvbkRpc2FibGVkKClcIiAoY2xpY2spPVwib25TYXZlQ2xpY2soKVwiPlxuICAgICAge3sgJ2ludGVyZmFjZS5zYXZlJyB8IHRyYW5zbGF0ZSB9fVxuXG4gICAgICA8c3ZnIGNkc0ljb249XCJzYXZlXCIgc2l6ZT1cIjE2XCIgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICB9XG48L2Rpdj5cblxuPHZhbHRpbW8tZWRpdG9yXG4gICpuZ0lmPVwianNvbk1vZGVsKClcIlxuICBbbW9kZWxdPVwianNvbk1vZGVsKClcIlxuICBbZGlzYWJsZWRdPVwiIWVkaXRBY3RpdmUoKVwiXG4gIFtmaXRQYWdlXT1cInRydWVcIlxuICBbZml0UGFnZUV4dHJhU3BhY2VdPVwiOTZcIlxuICAodmFsaWRFdmVudCk9XCJvblZhbGlkRXZlbnQoJGV2ZW50KVwiXG4gICh2YWx1ZUNoYW5nZUV2ZW50KT1cIm9uVmFsdWVDaGFuZ2VFdmVudCgkZXZlbnQpXCJcbj48L3ZhbHRpbW8tZWRpdG9yPlxuXG48YSBpZD1cImRvd25sb2FkQW5jaG9yRWxlbWVudFwiIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiPjwvYT5cblxuPHZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsXG4gIFtzaG93TW9kYWxTdWJqZWN0JF09XCJzaG93U2F2ZUNvbmZpcm1hdGlvbiRcIlxuICBjYW5jZWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuY2FuY2VsXCJcbiAgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5zYXZlXCJcbiAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwid2lkZ2V0VGFiTWFuYWdlbWVudC5zYXZlTW9kYWxDb250ZW50XCJcbiAgdGl0bGVUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5zYXZlXCJcbiAgKGNhbmNlbEV2ZW50KT1cImtlZXBFZGl0aW5nKClcIlxuICAoY29uZmlybUV2ZW50KT1cInNhdmUoKVwiXG4+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cblxuPHZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsXG4gICNwZW5kaW5nQ2hhbmdlc01vZGFsXG4gIFtzaG93TW9kYWxTdWJqZWN0JF09XCJzaG93UGVuZGluZ01vZGFsJFwiXG4gIGNhbmNlbEJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5wZW5kaW5nQ2hhbmdlcy5rZWVwRWRpdGluZ1wiXG4gIGNhbmNlbEJ1dHRvblR5cGU9XCJnaG9zdFwiXG4gIGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuZGlzY2FyZFwiXG4gIGNvbmZpcm1CdXR0b25UeXBlPVwiZGFuZ2VyXCJcbiAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwid2lkZ2V0VGFiTWFuYWdlbWVudC5jYW5jZWxNb2RhbC5jb250ZW50XCJcbiAgb3B0aW9uYWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2Uuc2F2ZVwiXG4gIG9wdGlvbmFsQnV0dG9uVHlwZT1cInNlY29uZGFyeVwiXG4gIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJ3aWRnZXRUYWJNYW5hZ2VtZW50LmNhbmNlbE1vZGFsLnRpdGxlXCJcbiAgc2hvd09wdGlvbmFsQnV0dG9uPVwidHJ1ZVwiXG4gIHNwYWNlckFmdGVyQ2FuY2VsQnV0dG9uPVwidHJ1ZVwiXG4gIChjYW5jZWxFdmVudCk9XCJrZWVwRWRpdGluZygpXCJcbiAgKGNvbmZpcm1FdmVudCk9XCJkaXNjYXJkQ2hhbmdlcygpXCJcbiAgKG9wdGlvbmFsRXZlbnQpPVwic2F2ZSgpXCJcbj48L3ZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsPlxuIl19
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kb3NzaWVyLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXQtdGFiL2pzb24tZWRpdG9yL2Rvc3NpZXItbWFuYWdlbWVudC13aWRnZXRzLWpzb24tZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZG9zc2llci1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0LXRhYi9qc29uLWVkaXRvci9kb3NzaWVyLW1hbmFnZW1lbnQtd2lkZ2V0cy1qc29uLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQ0wsZ0JBQWdCLEVBRWhCLHVCQUF1QixFQUV2QixZQUFZLEdBQ2IsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFFVixt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ZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFNpZ25hbCxcbiAgc2lnbmFsLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b09ic2VydmFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7RWRpdDE2LCBTYXZlMTZ9IGZyb20gJ0BjYXJib24vaWNvbnMnO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ0FSQk9OX0NPTlNUQU5UUyxcbiAgQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQsXG4gIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICBFZGl0b3JNb2RlbCxcbiAgRWRpdG9yTW9kdWxlLFxufSBmcm9tICdAdmFsdGltby9jb21wb25lbnRzJztcbmltcG9ydCB7QmFzaWNDYXNlV2lkZ2V0LCBDYXNlV2lkZ2V0c1Jlc30gZnJvbSAnQHZhbHRpbW8vZG9zc2llcic7XG5pbXBvcnQge1xuICBCdXR0b25Nb2R1bGUsXG4gIEljb25Nb2R1bGUsXG4gIEljb25TZXJ2aWNlLFxuICBOb3RpZmljYXRpb25TZXJ2aWNlLFxufSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCB0YWtlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7V2lkZ2V0SnNvbkVkaXRvclNlcnZpY2UsIFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZG9zc2llci1tYW5hZ2VtZW50LXdpZGdldHMtanNvbi1lZGl0b3IuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgRWRpdG9yTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlLFxuICBdLFxuICBwcm92aWRlcnM6IFtOb3RpZmljYXRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9zc2llck1hbmFnZW1lbnRXaWRnZXRzSnNvbkVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBAVmlld0NoaWxkKCdwZW5kaW5nQ2hhbmdlc01vZGFsJykgcHVibGljIHBlbmRpbmdDaGFuZ2VzTW9kYWw6IENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgX2N1cnJlbnRXaWRnZXRUYWI6IENhc2VXaWRnZXRzUmVzO1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IGN1cnJlbnRXaWRnZXRUYWIodmFsdWU6IENhc2VXaWRnZXRzUmVzKSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuO1xuICAgIHRoaXMuX2N1cnJlbnRXaWRnZXRUYWIgPSB2YWx1ZTtcbiAgICB0aGlzLmpzb25Nb2RlbC5zZXQoe1xuICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KHZhbHVlKSxcbiAgICAgIGxhbmd1YWdlOiAnanNvbicsXG4gICAgfSk7XG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGN1c3RvbU1vZGFsTG9hZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBjYW5EZWFjdGl2YXRlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHBlbmRpbmdDaGFuZ2VzVXBkYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZVNhdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBqc29uTW9kZWwgPSBzaWduYWw8RWRpdG9yTW9kZWwgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IGVkaXRBY3RpdmUgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBzaG93UGVuZGluZ01vZGFsJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRvT2JzZXJ2YWJsZShcbiAgICB0aGlzLndpZGdldEpzb25FZGl0b3JTZXJ2aWNlLnNob3dQZW5kaW5nTW9kYWxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IHNob3dTYXZlQ29uZmlybWF0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpZGdldENvbmZpZyA9IHNpZ25hbDxDYXNlV2lkZ2V0c1JlcyB8IG51bGw+KG51bGwpO1xuXG4gIHByaXZhdGUgX2VkaXRvckluaXQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcGVuZGluZ0NoYW5nZXMgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfanNvblZhbGlkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfanNvblNjaGVtYUludmFsaWQgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgc2F2ZUJ1dHRvbkRpc2FibGVkOiBTaWduYWw8Ym9vbGVhbj4gPSBjb21wdXRlZChcbiAgICAoKSA9PiAhdGhpcy5fanNvblZhbGlkKCkgfHwgdGhpcy5fanNvblNjaGVtYUludmFsaWQoKSB8fCAhdGhpcy5fd2lkZ2V0Q29uZmlnKClcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGljb25TZXJ2aWNlOiBJY29uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0SnNvbkVkaXRvclNlcnZpY2U6IFdpZGdldEpzb25FZGl0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0VGFiTWFuYWdlbWVudFNlcnZpY2U6IFdpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaWNvblNlcnZpY2UucmVnaXN0ZXJBbGwoW0VkaXQxNiwgU2F2ZTE2XSk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY3VzdG9tTW9kYWxMb2FkZWQuZW1pdCh0aGlzLnBlbmRpbmdDaGFuZ2VzTW9kYWwpO1xuICB9XG5cbiAgcHVibGljIGRvd25sb2FkQ29uZmlnKCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGFTdHJpbmcgPVxuICAgICAgJ2RhdGE6dGV4dC9qc29uO2NoYXJzZXQ9dXRmLTgsJyArXG4gICAgICBlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkodGhpcy5fY3VycmVudFdpZGdldFRhYiwgbnVsbCwgMikpO1xuICAgIGNvbnN0IGRvd25sb2FkQW5jaG9yRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkb3dubG9hZEFuY2hvckVsZW1lbnQnKTtcbiAgICBpZiAoIWRvd25sb2FkQW5jaG9yRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGRvd25sb2FkQW5jaG9yRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBkYXRhU3RyaW5nKTtcbiAgICBkb3dubG9hZEFuY2hvckVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgJ2Rvd25sb2FkJyxcbiAgICAgIGAke3RoaXMuX2N1cnJlbnRXaWRnZXRUYWIuY2FzZURlZmluaXRpb25OYW1lfS13aWRnZXRzLmpzb25gXG4gICAgKTtcbiAgICBkb3dubG9hZEFuY2hvckVsZW1lbnQuY2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBrZWVwRWRpdGluZygpOiB2b2lkIHtcbiAgICB0aGlzLndpZGdldEpzb25FZGl0b3JTZXJ2aWNlLnNob3dQZW5kaW5nTW9kYWwuc2V0KGZhbHNlKTtcbiAgICB0aGlzLnNob3dTYXZlQ29uZmlybWF0aW9uJC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLmNhbkRlYWN0aXZhdGUuZW1pdChmYWxzZSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY2FyZENoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgdGhpcy5qc29uTW9kZWwudXBkYXRlKChtb2RlbDogRWRpdG9yTW9kZWwgfCBudWxsKSA9PiAoe1xuICAgICAgLi4ubW9kZWwsXG4gICAgICB2YWx1ZTogSlNPTi5zdHJpbmdpZnkodGhpcy5fY3VycmVudFdpZGdldFRhYiksXG4gICAgfSkpO1xuICAgIHRoaXMud2lkZ2V0SnNvbkVkaXRvclNlcnZpY2Uuc2hvd1BlbmRpbmdNb2RhbC5zZXQoZmFsc2UpO1xuICAgIHRoaXMuc2V0UGVuZGluZ0NoYW5nZXMoZmFsc2UpO1xuICAgIHRoaXMuY2FuRGVhY3RpdmF0ZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNhdmUoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnOiBDYXNlV2lkZ2V0c1JlcyB8IG51bGwgPSB0aGlzLl93aWRnZXRDb25maWcoKTtcblxuICAgIGlmICghY29uZmlnKSByZXR1cm47XG5cbiAgICB0aGlzLndpZGdldFRhYk1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgICAudXBkYXRlV2lkZ2V0cyhjb25maWcpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbih7XG4gICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2ludGVyZmFjZS5zdWNjZXNzJyksXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2lkZ2V0VGFiTWFuYWdlbWVudC5ub3RpZmljYXRpb24uc3VjY2VzcycpLFxuICAgICAgICAgICAgc2hvd0Nsb3NlOiB0cnVlLFxuICAgICAgICAgICAgZHVyYXRpb246IENBUkJPTl9DT05TVEFOVFMubm90aWZpY2F0aW9uRHVyYXRpb24sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy53aWRnZXRKc29uRWRpdG9yU2VydmljZS5zaG93UGVuZGluZ01vZGFsLnNldChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5zZXRQZW5kaW5nQ2hhbmdlcyhmYWxzZSk7XG4gICAgICAgICAgdGhpcy5jaGFuZ2VTYXZlZC5lbWl0KCk7XG4gICAgICAgICAgdGhpcy5jYW5EZWFjdGl2YXRlLmVtaXQodHJ1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnNob3dOb3RpZmljYXRpb24oe1xuICAgICAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnaW50ZXJmYWNlLmVycm9yJyksXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnd2lkZ2V0VGFiTWFuYWdlbWVudC5ub3RpZmljYXRpb24uZXJyb3InKSxcbiAgICAgICAgICAgIHNob3dDbG9zZTogdHJ1ZSxcbiAgICAgICAgICAgIGR1cmF0aW9uOiBDQVJCT05fQ09OU1RBTlRTLm5vdGlmaWNhdGlvbkR1cmF0aW9uLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25DYW5jZWxDbGljaygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3dpZGdldENvbmZpZygpIHx8ICF0aGlzLl9wZW5kaW5nQ2hhbmdlcykge1xuICAgICAgdGhpcy5lZGl0QWN0aXZlLnNldChmYWxzZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy53aWRnZXRKc29uRWRpdG9yU2VydmljZS5zaG93UGVuZGluZ01vZGFsLnNldCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVkaXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmVkaXRBY3RpdmUuc2V0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uU2F2ZUNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd1NhdmVDb25maXJtYXRpb24kLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25WYWxpZEV2ZW50KHZhbGlkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fanNvblZhbGlkLnNldCh2YWxpZCk7XG4gIH1cblxuICBwdWJsaWMgb25WYWx1ZUNoYW5nZUV2ZW50KHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuX2VkaXRvckluaXQpIHtcbiAgICAgIHRoaXMuX2VkaXRvckluaXQgPSB0cnVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0UGVuZGluZ0NoYW5nZXModHJ1ZSk7XG5cbiAgICBjb25zdCB3aWRnZXRDb25maWc6IENhc2VXaWRnZXRzUmVzID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gICAgY29uc3QgZWRpdGVkV2lkZ2V0S2V5czogc3RyaW5nW10gPSB3aWRnZXRDb25maWcud2lkZ2V0cy5tYXAoXG4gICAgICAod2lkZ2V0OiBCYXNpY0Nhc2VXaWRnZXQpID0+IHdpZGdldC5rZXlcbiAgICApO1xuXG4gICAgdGhpcy5fanNvblNjaGVtYUludmFsaWQuc2V0KFxuICAgICAgd2lkZ2V0Q29uZmlnLmtleSAhPT0gdGhpcy5fY3VycmVudFdpZGdldFRhYi5rZXkgfHxcbiAgICAgICAgd2lkZ2V0Q29uZmlnLmNhc2VEZWZpbml0aW9uTmFtZSAhPT0gdGhpcy5fY3VycmVudFdpZGdldFRhYi5jYXNlRGVmaW5pdGlvbk5hbWUgfHxcbiAgICAgICAgbmV3IFNldChlZGl0ZWRXaWRnZXRLZXlzKS5zaXplICE9PSBlZGl0ZWRXaWRnZXRLZXlzLmxlbmd0aFxuICAgICk7XG5cbiAgICBpZiAoIXRoaXMuX2pzb25WYWxpZCgpIHx8ICF0aGlzLmVkaXRBY3RpdmUoKSkgcmV0dXJuO1xuXG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnLnNldChKU09OLnBhcnNlKHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFBlbmRpbmdDaGFuZ2VzKGNoYW5nZXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9wZW5kaW5nQ2hhbmdlcyA9IGNoYW5nZXM7XG4gICAgdGhpcy5wZW5kaW5nQ2hhbmdlc1VwZGF0ZS5lbWl0KGNoYW5nZXMpO1xuXG4gICAgaWYgKGNoYW5nZXMpIHJldHVybjtcblxuICAgIHRoaXMuX3dpZGdldENvbmZpZy5zZXQobnVsbCk7XG4gICAgdGhpcy5fZWRpdG9ySW5pdCA9IGZhbHNlO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXYgY2xhc3M9XCJjZHMtLXRvb2xiYXItY29udGVudFwiPlxuICBAaWYgKCFlZGl0QWN0aXZlKCkpIHtcbiAgICA8YnV0dG9uIGNkc0J1dHRvbj1cImdob3N0XCIgKGNsaWNrKT1cImRvd25sb2FkQ29uZmlnKClcIj5cbiAgICAgIHt7ICdpbnRlcmZhY2UuZG93bmxvYWQnIHwgdHJhbnNsYXRlIH19XG5cbiAgICAgIDxzdmcgY2RzSWNvbj1cImRvd25sb2FkXCIgc2l6ZT1cIjE2XCIgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGJ1dHRvbiBjZHNCdXR0b249XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uRWRpdENsaWNrKClcIj5cbiAgICAgIHt7ICdpbnRlcmZhY2UuZWRpdCcgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjZHNJY29uPVwiZWRpdFwiIHNpemU9XCIxNlwiIGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIj48L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgfSBAZWxzZSB7XG4gICAgPGJ1dHRvbiBjZHNCdXR0b249XCJzZWNvbmRhcnlcIiAoY2xpY2spPVwib25DYW5jZWxDbGljaygpXCI+XG4gICAgICB7eyAnaW50ZXJmYWNlLmNhbmNlbCcgfCB0cmFuc2xhdGUgfX1cblxuICAgICAgPHN2ZyBjZHNJY29uPVwiY2xvc2VcIiBzaXplPVwiMTZcIiBjbGFzcz1cImNkcy0tYnRuX19pY29uXCI+PC9zdmc+XG4gICAgPC9idXR0b24+XG5cbiAgICA8YnV0dG9uIGNkc0J1dHRvbj1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwic2F2ZUJ1dHRvbkRpc2FibGVkKClcIiAoY2xpY2spPVwib25TYXZlQ2xpY2soKVwiPlxuICAgICAge3sgJ2ludGVyZmFjZS5zYXZlJyB8IHRyYW5zbGF0ZSB9fVxuXG4gICAgICA8c3ZnIGNkc0ljb249XCJzYXZlXCIgc2l6ZT1cIjE2XCIgY2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICB9XG48L2Rpdj5cblxuPHZhbHRpbW8tZWRpdG9yXG4gICpuZ0lmPVwianNvbk1vZGVsKClcIlxuICBbbW9kZWxdPVwianNvbk1vZGVsKClcIlxuICBbZGlzYWJsZWRdPVwiIWVkaXRBY3RpdmUoKVwiXG4gIFtmaXRQYWdlXT1cInRydWVcIlxuICBbZml0UGFnZUV4dHJhU3BhY2VdPVwiOTZcIlxuICAodmFsaWRFdmVudCk9XCJvblZhbGlkRXZlbnQoJGV2ZW50KVwiXG4gICh2YWx1ZUNoYW5nZUV2ZW50KT1cIm9uVmFsdWVDaGFuZ2VFdmVudCgkZXZlbnQpXCJcbj48L3ZhbHRpbW8tZWRpdG9yPlxuXG48YSBpZD1cImRvd25sb2FkQW5jaG9yRWxlbWVudFwiIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiPjwvYT5cblxuPHZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsXG4gIFtzaG93TW9kYWxTdWJqZWN0JF09XCJzaG93U2F2ZUNvbmZpcm1hdGlvbiRcIlxuICBjYW5jZWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuY2FuY2VsXCJcbiAgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5zYXZlXCJcbiAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwid2lkZ2V0VGFiTWFuYWdlbWVudC5zYXZlTW9kYWxDb250ZW50XCJcbiAgdGl0bGVUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5zYXZlXCJcbiAgKGNhbmNlbEV2ZW50KT1cImtlZXBFZGl0aW5nKClcIlxuICAoY29uZmlybUV2ZW50KT1cInNhdmUoKVwiXG4+PC92YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbD5cblxuPHZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsXG4gICNwZW5kaW5nQ2hhbmdlc01vZGFsXG4gIFtzaG93TW9kYWxTdWJqZWN0JF09XCJzaG93UGVuZGluZ01vZGFsJFwiXG4gIGNhbmNlbEJ1dHRvblRleHRUcmFuc2xhdGlvbktleT1cImludGVyZmFjZS5wZW5kaW5nQ2hhbmdlcy5rZWVwRWRpdGluZ1wiXG4gIGNhbmNlbEJ1dHRvblR5cGU9XCJnaG9zdFwiXG4gIGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2UuZGlzY2FyZFwiXG4gIGNvbmZpcm1CdXR0b25UeXBlPVwiZGFuZ2VyXCJcbiAgY29udGVudFRyYW5zbGF0aW9uS2V5PVwid2lkZ2V0VGFiTWFuYWdlbWVudC5jYW5jZWxNb2RhbC5jb250ZW50XCJcbiAgb3B0aW9uYWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXk9XCJpbnRlcmZhY2Uuc2F2ZVwiXG4gIG9wdGlvbmFsQnV0dG9uVHlwZT1cInNlY29uZGFyeVwiXG4gIHRpdGxlVHJhbnNsYXRpb25LZXk9XCJ3aWRnZXRUYWJNYW5hZ2VtZW50LmNhbmNlbE1vZGFsLnRpdGxlXCJcbiAgc2hvd09wdGlvbmFsQnV0dG9uPVwidHJ1ZVwiXG4gIHNwYWNlckFmdGVyQ2FuY2VsQnV0dG9uPVwidHJ1ZVwiXG4gIChjYW5jZWxFdmVudCk9XCJrZWVwRWRpdGluZygpXCJcbiAgKGNvbmZpcm1FdmVudCk9XCJkaXNjYXJkQ2hhbmdlcygpXCJcbiAgKG9wdGlvbmFsRXZlbnQpPVwic2F2ZSgpXCJcbj48L3ZhbHRpbW8tY29uZmlybWF0aW9uLW1vZGFsPlxuIl19
|