@sapui5/sap.fe.core 1.100.0 → 1.101.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/package.json +4 -4
- package/src/sap/fe/core/.library +2 -3
- package/src/sap/fe/core/AnnotationHelper.js +43 -24
- package/src/sap/fe/core/AnnotationHelper.ts +43 -37
- package/src/sap/fe/core/AppComponent.js +20 -27
- package/src/sap/fe/core/AppComponent.ts +19 -25
- package/src/sap/fe/core/AppStateHandler.js +5 -5
- package/src/sap/fe/core/AppStateHandler.ts +2 -2
- package/src/sap/fe/core/BaseController.js +9 -9
- package/src/sap/fe/core/BaseController.ts +3 -4
- package/src/sap/fe/core/CommonUtils.js +74 -17
- package/src/sap/fe/core/CommonUtils.ts +181 -110
- package/src/sap/fe/core/ExtensionAPI.js +11 -10
- package/src/sap/fe/core/ExtensionAPI.ts +22 -30
- package/src/sap/fe/core/PageController.js +12 -11
- package/src/sap/fe/core/PageController.ts +34 -34
- package/src/sap/fe/core/RouterProxy.js +36 -24
- package/src/sap/fe/core/RouterProxy.ts +36 -22
- package/src/sap/fe/core/TemplateComponent.js +193 -118
- package/src/sap/fe/core/TemplateComponent.ts +105 -117
- package/src/sap/fe/core/TemplateModel.js +6 -8
- package/src/sap/fe/core/TemplateModel.ts +2 -2
- package/src/sap/fe/core/TransactionHelper.js +33 -18
- package/src/sap/fe/core/TransactionHelper.ts +172 -153
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +31 -17
- package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +52 -45
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +16 -6
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +13 -3
- package/src/sap/fe/core/actions/collaboration/Manage.js +9 -7
- package/src/sap/fe/core/actions/collaboration/Manage.ts +33 -31
- package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +53 -56
- package/src/sap/fe/core/actions/draft.js +308 -166
- package/src/sap/fe/core/actions/draft.ts +177 -74
- package/src/sap/fe/core/actions/messageHandling.js +25 -13
- package/src/sap/fe/core/actions/messageHandling.ts +49 -39
- package/src/sap/fe/core/actions/operations.js +4 -4
- package/src/sap/fe/core/actions/operations.ts +3 -2
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +60 -0
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +37 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +165 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +178 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +707 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +628 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +436 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +431 -0
- package/src/sap/fe/core/controllerextensions/EditFlow.js +506 -245
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +395 -275
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +11 -11
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +6 -7
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +15 -17
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +98 -96
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +15 -15
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +60 -53
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +94 -42
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +114 -91
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +14 -14
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +12 -11
- package/src/sap/fe/core/controllerextensions/MassEdit.js +12 -12
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +8 -9
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +13 -25
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +18 -28
- package/src/sap/fe/core/controllerextensions/PageReady.js +25 -23
- package/src/sap/fe/core/controllerextensions/PageReady.ts +49 -47
- package/src/sap/fe/core/controllerextensions/Paginator.js +13 -13
- package/src/sap/fe/core/controllerextensions/Paginator.ts +24 -18
- package/src/sap/fe/core/controllerextensions/Placeholder.js +10 -10
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
- package/src/sap/fe/core/controllerextensions/Routing.js +11 -11
- package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
- package/src/sap/fe/core/controllerextensions/Share.js +16 -16
- package/src/sap/fe/core/controllerextensions/Share.ts +32 -32
- package/src/sap/fe/core/controllerextensions/SideEffects.js +14 -14
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +62 -63
- package/src/sap/fe/core/controllerextensions/ViewState.js +17 -31
- package/src/sap/fe/core/controllerextensions/ViewState.ts +93 -102
- package/src/sap/fe/core/controls/Any.js +28 -0
- package/src/sap/fe/core/controls/Any.ts +30 -0
- package/src/sap/fe/core/controls/CommandExecution.js +38 -15
- package/src/sap/fe/core/controls/CommandExecution.ts +20 -20
- package/src/sap/fe/core/controls/ConditionalWrapper.js +136 -65
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +49 -58
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +366 -0
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +278 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +73 -36
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +22 -32
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +44 -5
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +116 -66
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +121 -67
- package/src/sap/fe/core/controls/FieldWrapper.js +171 -87
- package/src/sap/fe/core/controls/FieldWrapper.ts +69 -80
- package/src/sap/fe/core/controls/FileWrapper.js +313 -0
- package/src/sap/fe/core/controls/FileWrapper.ts +169 -0
- package/src/sap/fe/core/controls/FilterBar.js +154 -119
- package/src/sap/fe/core/controls/FilterBar.ts +128 -123
- package/src/sap/fe/core/controls/FormElementWrapper.js +92 -37
- package/src/sap/fe/core/controls/FormElementWrapper.ts +32 -35
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +111 -89
- package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +86 -82
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +242 -193
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +211 -204
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +152 -116
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +105 -105
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +1 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +2 -2
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +37 -42
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +7 -6
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +15 -14
- package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +5 -1
- package/src/sap/fe/core/converters/annotations/DataField.js +1 -2
- package/src/sap/fe/core/converters/annotations/DataField.ts +3 -4
- package/src/sap/fe/core/converters/controls/Common/Action.js +10 -10
- package/src/sap/fe/core/converters/controls/Common/Action.ts +20 -19
- package/src/sap/fe/core/converters/controls/Common/Chart.js +8 -8
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +12 -11
- package/src/sap/fe/core/converters/controls/Common/Form.js +5 -5
- package/src/sap/fe/core/converters/controls/Common/Form.ts +3 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +2 -3
- package/src/sap/fe/core/converters/controls/Common/Table.js +245 -112
- package/src/sap/fe/core/converters/controls/Common/Table.ts +305 -193
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +5 -5
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +4 -7
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +72 -43
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +134 -100
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +6 -6
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +20 -18
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +5 -2
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +4 -1
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +1 -1
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +0 -4
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +27 -24
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +49 -40
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +33 -22
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +77 -62
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +5 -5
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +3 -7
- package/src/sap/fe/core/formatters/KPIFormatter.js +3 -12
- package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -2
- package/src/sap/fe/core/formatters/TableFormatter.js +2 -2
- package/src/sap/fe/core/formatters/TableFormatter.ts +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.js +4 -4
- package/src/sap/fe/core/formatters/ValueFormatter.ts +4 -7
- package/src/sap/fe/core/fpm/Component.js +46 -17
- package/src/sap/fe/core/fpm/Component.ts +11 -16
- package/src/sap/fe/core/helpers/AppStartupHelper.js +4 -4
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +3 -3
- package/src/sap/fe/core/helpers/ClassSupport.js +273 -256
- package/src/sap/fe/core/helpers/ClassSupport.ts +314 -237
- package/src/sap/fe/core/helpers/MassEditHelper.js +173 -39
- package/src/sap/fe/core/helpers/MassEditHelper.ts +236 -132
- package/src/sap/fe/core/helpers/ModelHelper.js +29 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
- package/src/sap/fe/core/helpers/PasteHelper.js +4 -4
- package/src/sap/fe/core/helpers/PasteHelper.ts +4 -3
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +3 -3
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +3 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.js +1 -7
- package/src/sap/fe/core/helpers/StableIdHelper.ts +0 -4
- package/src/sap/fe/core/jsx-runtime/jsx.js +35 -5
- package/src/sap/fe/core/jsx-runtime/jsx.ts +22 -8
- package/src/sap/fe/core/library.js +4 -5
- package/src/sap/fe/core/library.ts +17 -17
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +0 -3
- package/src/sap/fe/core/messagebundle.properties +23 -8
- package/src/sap/fe/core/messagebundle_ar.properties +2 -0
- package/src/sap/fe/core/messagebundle_bg.properties +2 -0
- package/src/sap/fe/core/messagebundle_ca.properties +2 -0
- package/src/sap/fe/core/messagebundle_cs.properties +2 -0
- package/src/sap/fe/core/messagebundle_cy.properties +5 -3
- package/src/sap/fe/core/messagebundle_da.properties +2 -0
- package/src/sap/fe/core/messagebundle_de.properties +2 -0
- package/src/sap/fe/core/messagebundle_el.properties +2 -0
- package/src/sap/fe/core/messagebundle_en.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_GB.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +2 -0
- package/src/sap/fe/core/messagebundle_es.properties +2 -0
- package/src/sap/fe/core/messagebundle_es_MX.properties +2 -0
- package/src/sap/fe/core/messagebundle_et.properties +2 -0
- package/src/sap/fe/core/messagebundle_fi.properties +2 -0
- package/src/sap/fe/core/messagebundle_fr.properties +4 -2
- package/src/sap/fe/core/messagebundle_fr_CA.properties +5 -3
- package/src/sap/fe/core/messagebundle_hi.properties +2 -0
- package/src/sap/fe/core/messagebundle_hr.properties +5 -3
- package/src/sap/fe/core/messagebundle_hu.properties +2 -0
- package/src/sap/fe/core/messagebundle_id.properties +2 -0
- package/src/sap/fe/core/messagebundle_it.properties +2 -0
- package/src/sap/fe/core/messagebundle_iw.properties +2 -0
- package/src/sap/fe/core/messagebundle_ja.properties +2 -0
- package/src/sap/fe/core/messagebundle_kk.properties +2 -0
- package/src/sap/fe/core/messagebundle_ko.properties +2 -0
- package/src/sap/fe/core/messagebundle_lt.properties +2 -0
- package/src/sap/fe/core/messagebundle_lv.properties +5 -3
- package/src/sap/fe/core/messagebundle_ms.properties +2 -0
- package/src/sap/fe/core/messagebundle_nl.properties +2 -0
- package/src/sap/fe/core/messagebundle_no.properties +2 -0
- package/src/sap/fe/core/messagebundle_pl.properties +5 -3
- package/src/sap/fe/core/messagebundle_pt.properties +2 -0
- package/src/sap/fe/core/messagebundle_pt_PT.properties +2 -0
- package/src/sap/fe/core/messagebundle_ro.properties +5 -3
- package/src/sap/fe/core/messagebundle_ru.properties +5 -3
- package/src/sap/fe/core/messagebundle_sh.properties +2 -0
- package/src/sap/fe/core/messagebundle_sk.properties +2 -0
- package/src/sap/fe/core/messagebundle_sl.properties +2 -0
- package/src/sap/fe/core/messagebundle_sv.properties +3 -1
- package/src/sap/fe/core/messagebundle_th.properties +2 -0
- package/src/sap/fe/core/messagebundle_tr.properties +2 -0
- package/src/sap/fe/core/messagebundle_uk.properties +2 -0
- package/src/sap/fe/core/messagebundle_vi.properties +2 -0
- package/src/sap/fe/core/messagebundle_zh_CN.properties +5 -3
- package/src/sap/fe/core/messagebundle_zh_TW.properties +5 -3
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +4 -4
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +5 -5
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +1 -2
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +7 -7
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +6 -5
- package/src/sap/fe/core/services/NavigationServiceFactory.js +4 -4
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +4 -4
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.js +98 -62
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +51 -42
- package/src/sap/fe/core/services/ShellServicesFactory.js +69 -29
- package/src/sap/fe/core/services/ShellServicesFactory.ts +26 -29
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +4 -4
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +8 -8
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +6 -17
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +43 -5
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +6 -3
- package/src/sap/fe/core/support/CommonHelper.js +1 -1
- package/src/sap/fe/core/support/CommonHelper.ts +0 -3
- package/src/sap/fe/core/templating/DataModelPathHelper.js +2 -9
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +32 -38
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +23 -3
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +26 -5
- package/src/sap/fe/core/templating/PropertyHelper.js +15 -1
- package/src/sap/fe/core/templating/PropertyHelper.ts +30 -23
- package/src/sap/fe/core/templating/UIFormatters.js +121 -21
- package/src/sap/fe/core/templating/UIFormatters.ts +134 -49
- package/src/sap/fe/core/type/Email.js +26 -8
- package/src/sap/fe/core/type/Email.ts +8 -7
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +0 -78
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +0 -65
|
@@ -2,21 +2,15 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/core/AppStateHandler", "sap/base/Log", "sap/fe/core/support/Diagnostics", "sap/ui/model/json/JSONModel", "sap/fe/core/library", "sap/fe/core/helpers/ModelHelper", "sap/fe/macros/internal/valuehelp/ValueListHelper", "sap/fe/core/helpers/ClassSupport", "sap/ui/core/
|
|
5
|
+
sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/core/AppStateHandler", "sap/base/Log", "sap/fe/core/support/Diagnostics", "sap/ui/model/json/JSONModel", "sap/fe/core/library", "sap/fe/core/helpers/ModelHelper", "sap/fe/macros/internal/valuehelp/ValueListHelper", "sap/fe/core/helpers/ClassSupport", "./converters/MetaModelConverter", "sap/ui/core/Core"], function (UIComponent, RouterProxy, AppStateHandler, Log, Diagnostics, JSONModel, library, ModelHelper, ValueListHelper, ClassSupport, MetaModelConverter, Core) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _class, _class2, _temp;
|
|
9
9
|
|
|
10
10
|
var deleteModelCacheData = MetaModelConverter.deleteModelCacheData;
|
|
11
|
-
var
|
|
11
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
12
12
|
|
|
13
|
-
function
|
|
14
|
-
|
|
15
|
-
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
|
16
|
-
|
|
17
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
18
|
-
|
|
19
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
13
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
20
14
|
|
|
21
15
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
22
16
|
|
|
@@ -45,7 +39,7 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
45
39
|
* @name sap.fe.core.AppComponent
|
|
46
40
|
*/
|
|
47
41
|
|
|
48
|
-
var AppComponent = (_dec =
|
|
42
|
+
var AppComponent = (_dec = defineUI5Class("sap.fe.core.AppComponent", {
|
|
49
43
|
interfaces: ["sap.ui.core.IAsyncContentCreation"],
|
|
50
44
|
config: {
|
|
51
45
|
fullWidth: true
|
|
@@ -112,7 +106,7 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
112
106
|
designtime: "sap/fe/core/designtime/AppComponent.designtime",
|
|
113
107
|
library: "sap.fe.core"
|
|
114
108
|
}), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_UIComponent) {
|
|
115
|
-
|
|
109
|
+
_inheritsLoose(AppComponent, _UIComponent);
|
|
116
110
|
|
|
117
111
|
function AppComponent() {
|
|
118
112
|
return _UIComponent.apply(this, arguments) || this;
|
|
@@ -195,18 +189,20 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
195
189
|
};
|
|
196
190
|
|
|
197
191
|
_proto.init = function init() {
|
|
198
|
-
|
|
192
|
+
var uiModel = new JSONModel({
|
|
199
193
|
editMode: library.EditMode.Display,
|
|
200
194
|
isEditable: false,
|
|
201
195
|
draftStatus: library.DraftStatus.Clear,
|
|
202
196
|
busy: false,
|
|
203
197
|
busyLocal: {},
|
|
204
198
|
pages: {}
|
|
205
|
-
})
|
|
199
|
+
});
|
|
206
200
|
var oInternalModel = new JSONModel({
|
|
207
201
|
pages: {}
|
|
208
202
|
});
|
|
203
|
+
ModelHelper.enhanceUiJSONModel(uiModel, library);
|
|
209
204
|
ModelHelper.enhanceInternalJSONModel(oInternalModel);
|
|
205
|
+
this.setModel(uiModel, "ui");
|
|
210
206
|
this.setModel(oInternalModel, "internal");
|
|
211
207
|
this.bInitializeRouting = this.bInitializeRouting !== undefined ? this.bInitializeRouting : true;
|
|
212
208
|
this._oRouterProxy = new RouterProxy();
|
|
@@ -233,15 +229,10 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
233
229
|
// SemanticDateOperators.addSemanticDateOperators();
|
|
234
230
|
// the init function configures the routing according to the settings above
|
|
235
231
|
// it will call the createContent function to instantiate the RootView and add it to the UIComponent aggregations
|
|
236
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
237
|
-
// @ts-ignore
|
|
238
232
|
|
|
239
233
|
|
|
240
|
-
|
|
241
|
-
args[_key] = arguments[_key];
|
|
242
|
-
}
|
|
234
|
+
_UIComponent.prototype.init.call(this);
|
|
243
235
|
|
|
244
|
-
UIComponent.prototype.init.apply(this, args);
|
|
245
236
|
AppComponent.instanceMap[this.getId()] = this;
|
|
246
237
|
};
|
|
247
238
|
|
|
@@ -260,7 +251,7 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
260
251
|
|
|
261
252
|
_this.getRouterProxy().init(_this, _this._isFclEnabled());
|
|
262
253
|
}).catch(function (error) {
|
|
263
|
-
var oResourceBundle =
|
|
254
|
+
var oResourceBundle = Core.getLibraryResourceBundle("sap.fe.core");
|
|
264
255
|
|
|
265
256
|
_this.getRootViewController().displayMessagePage(oResourceBundle.getText("C_APP_COMPONENT_SAPFE_APPSTART_TECHNICAL_ISSUES"), {
|
|
266
257
|
title: oResourceBundle.getText("C_COMMON_SAPFE_ERROR"),
|
|
@@ -309,6 +300,8 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
309
300
|
};
|
|
310
301
|
|
|
311
302
|
_proto.destroy = function destroy() {
|
|
303
|
+
var _UIComponent$prototyp;
|
|
304
|
+
|
|
312
305
|
// LEAKS, with workaround for some Flex / MDC issue
|
|
313
306
|
try {
|
|
314
307
|
// // This one is only a leak if you don't go back to the same component in the long run
|
|
@@ -334,19 +327,19 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
334
327
|
var oMainModel = this.oModels[undefined];
|
|
335
328
|
var oHeaders = jQuery.extend({}, oMainModel.oRequestor.mHeaders); // As we need to cleanup the application / handle the dirty object we need to call our cleanup before the models are destroyed
|
|
336
329
|
|
|
337
|
-
this.getRoutingService().beforeExit();
|
|
338
|
-
// @ts-ignore
|
|
330
|
+
this.getRoutingService().beforeExit();
|
|
339
331
|
|
|
340
|
-
for (var
|
|
341
|
-
args[
|
|
332
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
333
|
+
args[_key] = arguments[_key];
|
|
342
334
|
}
|
|
343
335
|
|
|
344
|
-
|
|
336
|
+
(_UIComponent$prototyp = _UIComponent.prototype.destroy).call.apply(_UIComponent$prototyp, [this].concat(args));
|
|
337
|
+
|
|
345
338
|
oMainModel.oRequestor.mHeaders = oHeaders;
|
|
346
339
|
};
|
|
347
340
|
|
|
348
341
|
_proto.getComponentData = function getComponentData() {
|
|
349
|
-
return
|
|
342
|
+
return _UIComponent.prototype.getComponentData.call(this);
|
|
350
343
|
};
|
|
351
344
|
|
|
352
345
|
_proto.getRoutingService = function getRoutingService() {
|
|
@@ -389,4 +382,4 @@ sap.ui.define(["sap/ui/core/UIComponent", "sap/fe/core/RouterProxy", "sap/fe/cor
|
|
|
389
382
|
}(UIComponent), _class2.instanceMap = {}, _temp)) || _class);
|
|
390
383
|
return AppComponent;
|
|
391
384
|
}, false);
|
|
392
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFwcENvbXBvbmVudC50cyJdLCJuYW1lcyI6WyJOQVZDT05GIiwiRkNMIiwiVklFV05BTUUiLCJST1VURVJDTEFTUyIsIk5BVkNPTlRBSU5FUiIsIkFwcENvbXBvbmVudCIsIlVJNUNsYXNzIiwiQ29tcG9uZW50TWV0YWRhdGEiLCJpbnRlcmZhY2VzIiwiY29uZmlnIiwiZnVsbFdpZHRoIiwibWFuaWZlc3QiLCJzZXJ2aWNlcyIsInJlc291cmNlTW9kZWwiLCJmYWN0b3J5TmFtZSIsInJvdXRpbmdTZXJ2aWNlIiwic3RhcnR1cCIsInNoZWxsU2VydmljZXMiLCJTaGVsbFVJU2VydmljZSIsIm5hdmlnYXRpb25TZXJ2aWNlIiwiZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMiLCJzaWRlRWZmZWN0c1NlcnZpY2UiLCJhc3luY0NvbXBvbmVudFNlcnZpY2UiLCJyb290VmlldyIsInZpZXdOYW1lIiwidHlwZSIsImFzeW5jIiwiaWQiLCJyb3V0aW5nIiwiY29udHJvbElkIiwicm91dGVyQ2xhc3MiLCJ2aWV3VHlwZSIsImNvbnRyb2xBZ2dyZWdhdGlvbiIsImNvbnRhaW5lck9wdGlvbnMiLCJwcm9wYWdhdGVNb2RlbCIsImRlc2lnbnRpbWUiLCJsaWJyYXJ5IiwiX2lzRmNsRW5hYmxlZCIsIm9NYW5pZmVzdFVJNSIsImdldE1ldGFkYXRhIiwiZ2V0TWFuaWZlc3RFbnRyeSIsImdldFJvdXRlclByb3h5IiwiX29Sb3V0ZXJQcm94eSIsImdldEFwcFN0YXRlSGFuZGxlciIsIl9vQXBwU3RhdGVIYW5kbGVyIiwiZ2V0Um9vdFZpZXdDb250cm9sbGVyIiwiZ2V0Um9vdENvbnRyb2wiLCJnZXRDb250cm9sbGVyIiwiZ2V0Um9vdENvbnRhaW5lciIsImdldENvbnRlbnQiLCJpbml0Iiwic2V0TW9kZWwiLCJKU09OTW9kZWwiLCJlZGl0TW9kZSIsIkVkaXRNb2RlIiwiRGlzcGxheSIsImlzRWRpdGFibGUiLCJkcmFmdFN0YXR1cyIsIkRyYWZ0U3RhdHVzIiwiQ2xlYXIiLCJidXN5IiwiYnVzeUxvY2FsIiwicGFnZXMiLCJvSW50ZXJuYWxNb2RlbCIsIk1vZGVsSGVscGVyIiwiZW5oYW5jZUludGVybmFsSlNPTk1vZGVsIiwiYkluaXRpYWxpemVSb3V0aW5nIiwidW5kZWZpbmVkIiwiUm91dGVyUHJveHkiLCJBcHBTdGF0ZUhhbmRsZXIiLCJfb0RpYWdub3N0aWNzIiwiRGlhZ25vc3RpY3MiLCJvTW9kZWwiLCJnZXRNb2RlbCIsImVudGl0eUNvbnRhaW5lciIsImdldE1ldGFNb2RlbCIsInJlcXVlc3RPYmplY3QiLCJMb2ciLCJpbmZvIiwiaW5kZXhPZiIsIkVycm9yIiwiYXJncyIsIlVJQ29tcG9uZW50IiwicHJvdG90eXBlIiwiYXBwbHkiLCJpbnN0YW5jZU1hcCIsImdldElkIiwib25TZXJ2aWNlc1N0YXJ0ZWQiLCJmaW5hbGl6ZWRSb3V0aW5nSW5pdGlhbGl6YXRpb24iLCJ0aGVuIiwiYXR0YWNoUm91dGVNYXRjaGVycyIsImdldFJvdXRlciIsImluaXRpYWxpemUiLCJjYXRjaCIsImVycm9yIiwib1Jlc291cmNlQnVuZGxlIiwic2FwIiwidWkiLCJnZXRDb3JlIiwiZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlIiwiZGlzcGxheU1lc3NhZ2VQYWdlIiwiZ2V0VGV4dCIsInRpdGxlIiwiZGVzY3JpcHRpb24iLCJtZXNzYWdlIiwiRkNMTGV2ZWwiLCJnZXRSb3V0aW5nU2VydmljZSIsImluaXRpYWxpemVSb3V0aW5nIiwiYXR0YWNoQWZ0ZXJJbml0IiwiZXJyIiwiZXhpdCIsImRlc3Ryb3kiLCJkZWxldGVNb2RlbENhY2hlRGF0YSIsImdldERpYWdub3N0aWNzIiwiVmFsdWVMaXN0SGVscGVyIiwiaW5pdGlhbGl6ZUNhY2hlZFZhbHVlSGVscCIsIndpbmRvdyIsIl9yb3V0aW5nIiwiZSIsIm9NYWluTW9kZWwiLCJvTW9kZWxzIiwib0hlYWRlcnMiLCJqUXVlcnkiLCJleHRlbmQiLCJvUmVxdWVzdG9yIiwibUhlYWRlcnMiLCJiZWZvcmVFeGl0IiwiZ2V0Q29tcG9uZW50RGF0YSIsImdldFNoZWxsU2VydmljZXMiLCJnZXROYXZpZ2F0aW9uU2VydmljZSIsImdldFNpZGVFZmZlY3RzU2VydmljZSIsImdldEVudmlyb25tZW50Q2FwYWJpbGl0aWVzIiwiZ2V0U3RhcnR1cFBhcmFtZXRlcnMiLCJvQ29tcG9uZW50RGF0YSIsIm9TdGFydFVwUGFyYW1ldGVycyIsInN0YXJ0dXBQYXJhbWV0ZXJzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZXN0b3JlIiwidmlld1N0YXRlIiwib25SZXN0b3JlIiwic3VzcGVuZCIsIm9uU3VzcGVuZCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCQSxNQUFNQSxPQUFPLEdBQUc7QUFDZkMsSUFBQUEsR0FBRyxFQUFFO0FBQ0pDLE1BQUFBLFFBQVEsRUFBRSx5Q0FETjtBQUVKQyxNQUFBQSxXQUFXLEVBQUU7QUFGVCxLQURVO0FBS2ZDLElBQUFBLFlBQVksRUFBRTtBQUNiRixNQUFBQSxRQUFRLEVBQUUsa0RBREc7QUFFYkMsTUFBQUEsV0FBVyxFQUFFO0FBRkE7QUFMQyxHQUFoQjtBQVdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O01BcUVNRSxZLFdBcEVMQyxRQUFRLENBQUMsMEJBQUQsRUFBNkJDLGlCQUE3QixFQUFnRDtBQUN4REMsSUFBQUEsVUFBVSxFQUFFLENBQUMsbUNBQUQsQ0FENEM7QUFFeERDLElBQUFBLE1BQU0sRUFBRTtBQUNQQyxNQUFBQSxTQUFTLEVBQUU7QUFESixLQUZnRDtBQUt4REMsSUFBQUEsUUFBUSxFQUFFO0FBQ1QsaUJBQVc7QUFDVkMsUUFBQUEsUUFBUSxFQUFFO0FBQ1RDLFVBQUFBLGFBQWEsRUFBRTtBQUNkQyxZQUFBQSxXQUFXLEVBQUUsMkNBREM7QUFFZCx1QkFBVyxTQUZHO0FBR2Qsd0JBQVk7QUFDWCx5QkFBVyxDQUFDLDJCQUFELENBREE7QUFFWCwyQkFBYTtBQUZGO0FBSEUsV0FETjtB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QSxVQUFVLENBQUNLLFVBQVgsQ0FBc0JDLFFBQXRCLEdBQWlDSixRQUFqQztBQUNBLEs7O1dBQ0RNLGdCLEdBQUEsNEJBQXdCO0FBQ3ZCO0FBQ0EsSzs7V0FDRHJCLGlCLEdBQUEsNkJBQW9DO0FBQ25DLGFBQU8sRUFBUCxDQURtQyxDQUNOO0FBQzdCLEs7O1dBQ0RzQixnQixHQUFBLDRCQUFtQztBQUNsQyxhQUFPLEVBQVAsQ0FEa0MsQ0FDTDtBQUM3QixLOztXQUNEQyxvQixHQUFBLGdDQUEwQztBQUN6QyxhQUFPLEVBQVAsQ0FEeUMsQ0FDVDtBQUNoQyxLOztXQUNEQyxxQixHQUFBLGlDQUE0QztBQUMzQyxhQUFPLEVBQVA7QUFDQSxLOztXQUNEQywwQixHQUFBLHNDQUE2RDtBQUM1RCxhQUFPLEVBQVA7QUFDQSxLOztXQUVEQyxvQixHQUFBLGdDQUF1QjtBQUN0QixVQUFNQyxjQUFjLEdBQUcsS0FBS04sZ0JBQUwsRUFBdkI7QUFDQSxVQUFNTyxrQkFBa0IsR0FBSUQsY0FBYyxJQUFJQSxjQUFjLENBQUNFLGlCQUFsQyxJQUF3RCxFQUFuRjtBQUNBLGFBQU9DLE9BQU8sQ0FBQ0MsT0FBUixDQUFnQkgsa0JBQWhCLENBQVA7QUFDQSxLOztXQUNESSxPLEdBQUEsbUJBQVU7QUFDVDtBQUNDLFdBQUs3RixxQkFBTCxFQUFELENBQXNDOEYsU0FBdEMsQ0FBZ0RDLFNBQWhEO0FBQ0EsSzs7V0FDREMsTyxHQUFBLG1CQUFVO0FBQ1Q7QUFDQyxXQUFLaEcscUJBQUwsRUFBRCxDQUFzQzhGLFNBQXRDLENBQWdERyxTQUFoRDtBQUNBLEs7OztJQTNSeUI1RCxXLFdBQ25CRyxXLEdBQTRDLEU7U0E2UnJDaEYsWSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFVJQ29tcG9uZW50IGZyb20gXCJzYXAvdWkvY29yZS9VSUNvbXBvbmVudFwiO1xuaW1wb3J0IFJvdXRlclByb3h5IGZyb20gXCJzYXAvZmUvY29yZS9Sb3V0ZXJQcm94eVwiO1xuaW1wb3J0IEFwcFN0YXRlSGFuZGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvQXBwU3RhdGVIYW5kbGVyXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBEaWFnbm9zdGljcyBmcm9tIFwic2FwL2ZlL2NvcmUvc3VwcG9ydC9EaWFnbm9zdGljc1wiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgbGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IE1vZGVsSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgVmFsdWVMaXN0SGVscGVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2ludGVybmFsL3ZhbHVlaGVscC9WYWx1ZUxpc3RIZWxwZXJcIjtcbmltcG9ydCB7IFVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29tcG9uZW50TWV0YWRhdGEgZnJvbSBcInNhcC91aS9jb3JlL0NvbXBvbmVudE1ldGFkYXRhXCI7XG5pbXBvcnQgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuaW1wb3J0IFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgQmFzZUNvbnRyb2xsZXIgZnJvbSBcIi4vQmFzZUNvbnRyb2xsZXJcIjtcbmltcG9ydCB7IGRlbGV0ZU1vZGVsQ2FjaGVEYXRhIH0gZnJvbSBcIi4vY29udmVydGVycy9NZXRhTW9kZWxDb252ZXJ0ZXJcIjtcbmltcG9ydCBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5pbXBvcnQgeyBSb3V0aW5nU2VydmljZSB9IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9Sb3V0aW5nU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB7IElTaGVsbFNlcnZpY2VzIH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1NoZWxsU2VydmljZXNGYWN0b3J5XCI7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9OYXZpZ2F0aW9uU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB7IFNpZGVFZmZlY3RzU2VydmljZSB9IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9TaWRlRWZmZWN0c1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgeyBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeVwiO1xuXG5jb25zdCBOQVZDT05GID0ge1xuXHRGQ0w6IHtcblx0XHRWSUVXTkFNRTogXCJzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIudmlldy5GY2xcIixcblx0XHRST1VURVJDTEFTUzogXCJzYXAuZi5yb3V0aW5nLlJvdXRlclwiXG5cdH0sXG5cdE5BVkNPTlRBSU5FUjoge1xuXHRcdFZJRVdOQU1FOiBcInNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci52aWV3Lk5hdkNvbnRhaW5lclwiLFxuXHRcdFJPVVRFUkNMQVNTOiBcInNhcC5tLnJvdXRpbmcuUm91dGVyXCJcblx0fVxufTtcblxuLyoqXG4gKiBNYWluIGNsYXNzIGZvciBjb21wb25lbnRzIHVzZWQgZm9yIGFuIGFwcGxpY2F0aW9uIGluIFNBUCBGaW9yaSBlbGVtZW50cy5cbiAqXG4gKiBBcHBsaWNhdGlvbiBkZXZlbG9wZXJzIHVzaW5nIHRoZSB0ZW1wbGF0ZXMgYW5kIGJ1aWxkaW5nIGJsb2NrcyBwcm92aWRlZCBieSBTQVAgRmlvcmkgZWxlbWVudHMgc2hvdWxkIGNyZWF0ZSB0aGVpciBhcHBzIGJ5IGV4dGVuZGluZyB0aGlzIGNvbXBvbmVudC5cbiAqIFRoaXMgZW5zdXJlcyB0aGF0IGFsbCB0aGUgbmVjZXNzYXJ5IHNlcnZpY2VzIHRoYXQgeW91IG5lZWQgZm9yIHRoZSBidWlsZGluZyBibG9ja3MgYW5kIHRlbXBsYXRlcyB0byB3b3JrIHByb3Blcmx5IGFyZSBzdGFydGVkLlxuICpcbiAqIFdoZW4geW91IHVzZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnQgYXMgdGhlIGJhc2UgY29tcG9uZW50LCB5b3UgYWxzbyBuZWVkIHRvIHVzZSBhIHJvb3RWaWV3LiBTQVAgRmlvcmkgZWxlbWVudHMgcHJvdmlkZXMgdHdvIG9wdGlvbnM6IDxici8+XG4gKiAgLSBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIudmlldy5OYXZDb250YWluZXIgd2hlbiB1c2luZyBzYXAubS5yb3V0aW5nLlJvdXRlciA8YnIvPlxuICogIC0gc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLnZpZXcuRmNsIHdoZW4gdXNpbmcgc2FwLmYucm91dGluZy5Sb3V0ZXIgKEZDTCB1c2UgY2FzZSkgPGJyLz5cbiAqXG4gKiBAaGlkZWNvbnN0cnVjdG9yXG4gKiBAcHVibGljXG4gKiBAbmFtZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcbiAqL1xuQFVJNUNsYXNzKFwic2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XCIsIENvbXBvbmVudE1ldGFkYXRhLCB7XG5cdGludGVyZmFjZXM6IFtcInNhcC51aS5jb3JlLklBc3luY0NvbnRlbnRDcmVhdGlvblwiXSxcblx0Y29uZmlnOiB7XG5cdFx0ZnVsbFdpZHRoOiB0cnVlXG5cdH0sXG5cdG1hbmlmZXN0OiB7XG5cdFx0XCJzYXAudWk1XCI6IHtcblx0XHRcdHNlcnZpY2VzOiB7XG5cdFx0XHRcdHJlc291cmNlTW9kZWw6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5SZXNvdXJjZU1vZGVsU2VydmljZVwiLFxuXHRcdFx0XHRcdFwic3RhcnR1cFwiOiBcIndhaXRGb3JcIixcblx0XHRcdFx0XHRcInNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFwiYnVuZGxlc1wiOiBbXCJzYXAuZmUuY29yZS5tZXNzYWdlYnVuZGxlXCJdLFxuXHRcdFx0XHRcdFx0XCJtb2RlbE5hbWVcIjogXCJzYXAuZmUuaTE4blwiXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9LFxuXHRcdFx0XHRyb3V0aW5nU2VydmljZToge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlJvdXRpbmdTZXJ2aWNlXCIsXG5cdFx0XHRcdFx0c3RhcnR1cDogXCJ3YWl0Rm9yXCJcblx0XHRcdFx0fSxcblx0XHRcdFx0c2hlbGxTZXJ2aWNlczoge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNoZWxsU2VydmljZXNcIixcblx0XHRcdFx0XHRzdGFydHVwOiBcIndhaXRGb3JcIlxuXHRcdFx0XHR9LFxuXHRcdFx0XHRTaGVsbFVJU2VydmljZToge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC51c2hlbGwudWk1c2VydmljZS5TaGVsbFVJU2VydmljZVwiXG5cdFx0XHRcdH0sXG5cdFx0XHRcdG5hdmlnYXRpb25TZXJ2aWNlOiB7XG5cdFx0XHRcdFx0ZmFjdG9yeU5hbWU6IFwic2FwLmZlLmNvcmUuc2VydmljZXMuTmF2aWdhdGlvblNlcnZpY2VcIixcblx0XHRcdFx0XHRzdGFydHVwOiBcIndhaXRGb3JcIlxuXHRcdFx0XHR9LFxuXHRcdFx0XHRlbnZpcm9ubWVudENhcGFiaWxpdGllczoge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkVudmlyb25tZW50U2VydmljZVwiLFxuXHRcdFx0XHRcdHN0YXJ0dXA6IFwid2FpdEZvclwiXG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNpZGVFZmZlY3RzU2VydmljZToge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNpZGVFZmZlY3RzU2VydmljZVwiLFxuXHRcdFx0XHRcdHN0YXJ0dXA6IFwid2FpdEZvclwiXG5cdFx0XHRcdH0sXG5cdFx0XHRcdGFzeW5jQ29tcG9uZW50U2VydmljZToge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkFzeW5jQ29tcG9uZW50U2VydmljZVwiLFxuXHRcdFx0XHRcdHN0YXJ0dXA6IFwid2FpdEZvclwiXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRyb290Vmlldzoge1xuXHRcdFx0XHR2aWV3TmFtZTogTkFWQ09ORi5OQVZDT05UQUlORVIuVklFV05BTUUsXG5cdFx0XHRcdHR5cGU6IFwiWE1MXCIsXG5cdFx0XHRcdGFzeW5jOiB0cnVlLFxuXHRcdFx0XHRpZDogXCJhcHBSb290Vmlld1wiXG5cdFx0XHR9LFxuXHRcdFx0cm91dGluZzoge1xuXHRcdFx0XHRjb25maWc6IHtcblx0XHRcdFx0XHRjb250cm9sSWQ6IFwiYXBwQ29udGVudFwiLFxuXHRcdFx0XHRcdHJvdXRlckNsYXNzOiBOQVZDT05GLk5BVkNPTlRBSU5FUi5ST1VURVJDTEFTUyxcblx0XHRcdFx0XHR2aWV3VHlwZTogXCJYTUxcIixcblx0XHRcdFx0XHRjb250cm9sQWdncmVnYXRpb246IFwicGFnZXNcIixcblx0XHRcdFx0XHRhc3luYzogdHJ1ZSxcblx0XHRcdFx0XHRjb250YWluZXJPcHRpb25zOiB7XG5cdFx0XHRcdFx0XHRwcm9wYWdhdGVNb2RlbDogdHJ1ZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0ZGVzaWdudGltZTogXCJzYXAvZmUvY29yZS9kZXNpZ250aW1lL0FwcENvbXBvbmVudC5kZXNpZ250aW1lXCIsXG5cblx0bGlicmFyeTogXCJzYXAuZmUuY29yZVwiXG59KVxuY2xhc3MgQXBwQ29tcG9uZW50IGV4dGVuZHMgVUlDb21wb25lbnQge1xuXHRzdGF0aWMgaW5zdGFuY2VNYXA6IFJlY29yZDxzdHJpbmcsIEFwcENvbXBvbmVudD4gPSB7fTtcblx0cHJpdmF0ZSBfb1JvdXRlclByb3h5ITogUm91dGVyUHJveHk7XG5cdHByaXZhdGUgX29BcHBTdGF0ZUhhbmRsZXIhOiBBcHBTdGF0ZUhhbmRsZXI7XG5cdHByaXZhdGUgYkluaXRpYWxpemVSb3V0aW5nPzogYm9vbGVhbjtcblx0cHJpdmF0ZSBfb0RpYWdub3N0aWNzITogRGlhZ25vc3RpY3M7XG5cdHByaXZhdGUgZW50aXR5Q29udGFpbmVyOiBhbnk7XG5cdC8qKlxuXHQgKiBAcHJpdmF0ZVxuXHQgKiBAbmFtZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnQuZ2V0TWV0YWRhdGFcblx0ICogQGZ1bmN0aW9uXG5cdCAqL1xuXG5cdF9pc0ZjbEVuYWJsZWQoKSB7XG5cdFx0Y29uc3Qgb01hbmlmZXN0VUk1ID0gdGhpcy5nZXRNZXRhZGF0YSgpLmdldE1hbmlmZXN0RW50cnkoXCIvc2FwLnVpNVwiLCB0cnVlKTtcblx0XHRyZXR1cm4gTkFWQ09ORi5GQ0wuVklFV05BTUUgPT09IG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgYSByZWZlcmVuY2UgdG8gdGhlIFJvdXRlclByb3h5LlxuXHQgKlxuXHQgKiBAZnVuY3Rpb25cblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50I2dldFJvdXRlclByb3h5XG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcblx0ICogQHJldHVybnMge29PYmplY3R9IEEgUmVmZXJlbmNlIHRvIHRoZSBSb3V0ZXJQcm94eVxuXHQgKlxuXHQgKiBAdWk1LXJlc3RyaWN0ZWRcblx0ICogQGZpbmFsXG5cdCAqL1xuXHRnZXRSb3V0ZXJQcm94eSgpOiBSb3V0ZXJQcm94eSB7XG5cdFx0cmV0dXJuIHRoaXMuX29Sb3V0ZXJQcm94eTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgYSByZWZlcmVuY2UgdG8gdGhlIEFwcFN0YXRlSGFuZGxlci5cblx0ICpcblx0ICogQGZ1bmN0aW9uXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudCNnZXRBcHBTdGF0ZUhhbmRsZXJcblx0ICogQG1lbWJlcm9mIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudFxuXHQgKiBAcmV0dXJucyB7b09iamVjdH0gQSByZWZlcmVuY2UgdG8gdGhlIEFwcFN0YXRlSGFuZGxlclxuXHQgKlxuXHQgKiBAdWk1LXJlc3RyaWN0ZWRcblx0ICogQGZpbmFsXG5cdCAqL1xuXHRnZXRBcHBTdGF0ZUhhbmRsZXIoKSB7XG5cdFx0cmV0dXJuIHRoaXMuX29BcHBTdGF0ZUhhbmRsZXI7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGEgcmVmZXJlbmNlIHRvIHRoZSBuYXYvRkNMIENvbnRyb2xsZXIuXG5cdCAqXG5cdCAqIEBmdW5jdGlvblxuXHQgKiBAbmFtZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnQjZ2V0Um9vdFZpZXdDb250cm9sbGVyXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcblx0ICogQHJldHVybnMge29PYmplY3R9IEEgcmVmZXJlbmNlIHRvIHRoZSBGQ0wgQ29udHJvbGxlclxuXHQgKlxuXHQgKiBAdWk1LXJlc3RyaWN0ZWRcblx0ICogQGZpbmFsXG5cdCAqL1xuXHRnZXRSb290Vmlld0NvbnRyb2xsZXIoKTogQmFzZUNvbnRyb2xsZXIge1xuXHRcdHJldHVybiAodGhpcy5nZXRSb290Q29udHJvbCgpIGFzIFZpZXcpLmdldENvbnRyb2xsZXIoKSBhcyBCYXNlQ29udHJvbGxlcjtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgdGhlIE5hdkNvbnRhaW5lciBjb250cm9sIG9yIHRoZSBGQ0wgY29udHJvbC5cblx0ICpcblx0ICogQGZ1bmN0aW9uXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudCNnZXRSb290Q29udGFpbmVyXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcblx0ICogQHJldHVybnMge29PYmplY3R9IEEgcmVmZXJlbmNlIHRvIE5hdkNvbnRhaW5lciBjb250cm9sIG9yIHRoZSBGQ0wgY29udHJvbFxuXHQgKlxuXHQgKiBAdWk1LXJlc3RyaWN0ZWRcblx0ICogQGZpbmFsXG5cdCAqL1xuXHRnZXRSb290Q29udGFpbmVyKCkge1xuXHRcdHJldHVybiAodGhpcy5nZXRSb290Q29udHJvbCgpIGFzIFZpZXcpLmdldENvbnRlbnQoKVswXTtcblx0fVxuXG5cdGluaXQoLi4uYXJnczogYW55W10pIHtcblx0XHR0aGlzLnNldE1vZGVsKFxuXHRcdFx0bmV3IEpTT05Nb2RlbCh7XG5cdFx0XHRcdGVkaXRNb2RlOiBsaWJyYXJ5LkVkaXRNb2RlLkRpc3BsYXksXG5cdFx0XHRcdGlzRWRpdGFibGU6IGZhbHNlLFxuXHRcdFx0XHRkcmFmdFN0YXR1czogbGlicmFyeS5EcmFmdFN0YXR1cy5DbGVhcixcblx0XHRcdFx0YnVzeTogZmFsc2UsXG5cdFx0XHRcdGJ1c3lMb2NhbDoge30sXG5cdFx0XHRcdHBhZ2VzOiB7fVxuXHRcdFx0fSksXG5cdFx0XHRcInVpXCJcblx0XHQpO1xuXG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWwgPSBuZXcgSlNPTk1vZGVsKHtcblx0XHRcdHBhZ2VzOiB7fVxuXHRcdH0pO1xuXG5cdFx0TW9kZWxIZWxwZXIuZW5oYW5jZUludGVybmFsSlNPTk1vZGVsKG9JbnRlcm5hbE1vZGVsKTtcblxuXHRcdHRoaXMuc2V0TW9kZWwob0ludGVybmFsTW9kZWwsIFwiaW50ZXJuYWxcIik7XG5cblx0XHR0aGlzLmJJbml0aWFsaXplUm91dGluZyA9IHRoaXMuYkluaXRpYWxpemVSb3V0aW5nICE9PSB1bmRlZmluZWQgPyB0aGlzLmJJbml0aWFsaXplUm91dGluZyA6IHRydWU7XG5cdFx0dGhpcy5fb1JvdXRlclByb3h5ID0gbmV3IFJvdXRlclByb3h5KCk7XG5cdFx0dGhpcy5fb0FwcFN0YXRlSGFuZGxlciA9IG5ldyBBcHBTdGF0ZUhhbmRsZXIodGhpcyk7XG5cdFx0dGhpcy5fb0RpYWdub3N0aWNzID0gbmV3IERpYWdub3N0aWNzKCk7XG5cdFx0Y29uc3Qgb01vZGVsID0gdGhpcy5nZXRNb2RlbCgpIGFzIE9EYXRhTW9kZWw7XG5cdFx0aWYgKG9Nb2RlbCkge1xuXHRcdFx0dGhpcy5lbnRpdHlDb250YWluZXIgPSBvTW9kZWwuZ2V0TWV0YU1vZGVsKCkucmVxdWVzdE9iamVjdChcIi8kRW50aXR5Q29udGFpbmVyL1wiKTtcblx0XHR9XG5cblx0XHRjb25zdCBvTWFuaWZlc3RVSTUgPSB0aGlzLmdldE1ldGFkYXRhKCkuZ2V0TWFuaWZlc3RFbnRyeShcIi9zYXAudWk1XCIsIHRydWUpO1xuXHRcdGlmIChcblx0XHRcdG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZSA9PT0gTkFWQ09ORi5GQ0wuVklFV05BTUUgJiZcblx0XHRcdG9NYW5pZmVzdFVJNS5yb3V0aW5nLmNvbmZpZy5yb3V0ZXJDbGFzcyA9PT0gTkFWQ09ORi5GQ0wuUk9VVEVSQ0xBU1Ncblx0XHQpIHtcblx0XHRcdExvZy5pbmZvKCdSb290Y29udGFpbmVyOiBcIicgKyBOQVZDT05GLkZDTC5WSUVXTkFNRSArICdcIiAtIFJvdXRlcmNsYXNzOiBcIicgKyBOQVZDT05GLkZDTC5ST1VURVJDTEFTUyArICdcIicpO1xuXHRcdH0gZWxzZSBpZiAoXG5cdFx0XHRvTWFuaWZlc3RVSTUucm9vdFZpZXcudmlld05hbWUgPT09IE5BVkNPTkYuTkFWQ09OVEFJTkVSLlZJRVdOQU1FICYmXG5cdFx0XHRvTWFuaWZlc3RVSTUucm91dGluZy5jb25maWcucm91dGVyQ2xhc3MgPT09IE5BVkNPTkYuTkFWQ09OVEFJTkVSLlJPVVRFUkNMQVNTXG5cdFx0KSB7XG5cdFx0XHRMb2cuaW5mbygnUm9vdGNvbnRhaW5lcjogXCInICsgTkFWQ09ORi5OQVZDT05UQUlORVIuVklFV05BTUUgKyAnXCIgLSBSb3V0ZXJjbGFzczogXCInICsgTkFWQ09ORi5OQVZDT05UQUlORVIuUk9VVEVSQ0xBU1MgKyAnXCInKTtcblx0XHR9IGVsc2UgaWYgKG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZS5pbmRleE9mKFwic2FwLmZlXCIpICE9PSAtMSkge1xuXHRcdFx0dGhyb3cgRXJyb3IoXG5cdFx0XHRcdFwiXFxuV3JvbmcgY29uZmlndXJhdGlvbiBmb3IgdGhlIGNvdXBsZSAocm9vdFZpZXcvcm91dGVyQ2xhc3MpIGluIG1hbmlmZXN0IGZpbGUuXFxuXCIgK1xuXHRcdFx0XHRcdFwiQ3VycmVudCB2YWx1ZXMgYXJlIDooXCIgK1xuXHRcdFx0XHRcdG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZSArXG5cdFx0XHRcdFx0XCIvXCIgK1xuXHRcdFx0XHRcdG9NYW5pZmVzdFVJNS5yb3V0aW5nLmNvbmZpZy5yb3V0ZXJDbGFzcyArXG5cdFx0XHRcdFx0XCIpXFxuXCIgK1xuXHRcdFx0XHRcdFwiRXhwZWN0ZWQgdmFsdWVzIGFyZSBcXG5cIiArXG5cdFx0XHRcdFx0XCJcXHQgLSAoXCIgK1xuXHRcdFx0XHRcdE5BVkNPTkYuTkFWQ09OVEFJTkVSLlZJRVdOQU1FICtcblx0XHRcdFx0XHRcIi9cIiArXG5cdFx0XHRcdFx0TkFWQ09ORi5OQVZDT05UQUlORVIuUk9VVEVSQ0xBU1MgK1xuXHRcdFx0XHRcdFwiKVxcblwiICtcblx0XHRcdFx0XHRcIlxcdCAtIChcIiArXG5cdFx0XHRcdFx0TkFWQ09ORi5GQ0wuVklFV05BTUUgK1xuXHRcdFx0XHRcdFwiL1wiICtcblx0XHRcdFx0XHROQVZDT05GLkZDTC5ST1VURVJDTEFTUyArXG5cdFx0XHRcdFx0XCIpXCJcblx0XHRcdCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdExvZy5pbmZvKCdSb290Y29udGFpbmVyOiBcIicgKyBvTWFuaWZlc3RVSTUucm9vdFZpZXcudmlld05hbWUgKyAnXCIgLSBSb3V0ZXJjbGFzczogXCInICsgTkFWQ09ORi5OQVZDT05UQUlORVIuUk9VVEVSQ0xBU1MgKyAnXCInKTtcblx0XHR9XG5cblx0XHQvLyBBZGRpbmcgU2VtYW50aWMgRGF0ZSBPcGVyYXRvcnNcblx0XHQvLyBDb21tZW50aW5nIHNpbmNlIGl0IGlzIG5vdCBuZWVkZWQgZm9yIFNpbmdsZVJhbmdlXG5cdFx0Ly8gU2VtYW50aWNEYXRlT3BlcmF0b3JzLmFkZFNlbWFudGljRGF0ZU9wZXJhdG9ycygpO1xuXG5cdFx0Ly8gdGhlIGluaXQgZnVuY3Rpb24gY29uZmlndXJlcyB0aGUgcm91dGluZyBhY2NvcmRpbmcgdG8gdGhlIHNldHRpbmdzIGFib3ZlXG5cdFx0Ly8gaXQgd2lsbCBjYWxsIHRoZSBjcmVhdGVDb250ZW50IGZ1bmN0aW9uIHRvIGluc3RhbnRpYXRlIHRoZSBSb290VmlldyBhbmQgYWRkIGl0IHRvIHRoZSBVSUNvbXBvbmVudCBhZ2dyZWdhdGlvbnNcblxuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0VUlDb21wb25lbnQucHJvdG90eXBlLmluaXQuYXBwbHkodGhpcywgYXJncyk7XG5cdFx0QXBwQ29tcG9uZW50Lmluc3RhbmNlTWFwW3RoaXMuZ2V0SWQoKV0gPSB0aGlzO1xuXHR9XG5cdG9uU2VydmljZXNTdGFydGVkKCkge1xuXHRcdC8vcm91dGVyIG11c3QgYmUgc3RhcnRlZCBvbmNlIHRoZSByb290Y29udGFpbmVyIGlzIGluaXRpYWxpemVkXG5cdFx0Ly9zdGFydGluZyBvZiB0aGUgcm91dGVyXG5cdFx0Y29uc3QgZmluYWxpemVkUm91dGluZ0luaXRpYWxpemF0aW9uID0gKCkgPT4ge1xuXHRcdFx0dGhpcy5lbnRpdHlDb250YWluZXJcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdGlmICgodGhpcy5nZXRSb290Vmlld0NvbnRyb2xsZXIoKSBhcyBhbnkpLmF0dGFjaFJvdXRlTWF0Y2hlcnMpIHtcblx0XHRcdFx0XHRcdCh0aGlzLmdldFJvb3RWaWV3Q29udHJvbGxlcigpIGFzIGFueSkuYXR0YWNoUm91dGVNYXRjaGVycygpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHR0aGlzLmdldFJvdXRlcigpLmluaXRpYWxpemUoKTtcblx0XHRcdFx0XHR0aGlzLmdldFJvdXRlclByb3h5KCkuaW5pdCh0aGlzLCB0aGlzLl9pc0ZjbEVuYWJsZWQoKSk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3I6IGFueSkgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IG9SZXNvdXJjZUJ1bmRsZSA9IHNhcC51aS5nZXRDb3JlKCkuZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlKFwic2FwLmZlLmNvcmVcIikgYXMgUmVzb3VyY2VCdW5kbGU7XG5cblx0XHRcdFx0XHQodGhpcy5nZXRSb290Vmlld0NvbnRyb2xsZXIoKSBhcyBhbnkpLmRpc3BsYXlNZXNzYWdlUGFnZShcblx0XHRcdFx0XHRcdG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiQ19BUFBfQ09NUE9ORU5UX1NBUEZFX0FQUFNUQVJUX1RFQ0hOSUNBTF9JU1NVRVNcIiksXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdHRpdGxlOiBvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIkNfQ09NTU9OX1NBUEZFX0VSUk9SXCIpLFxuXHRcdFx0XHRcdFx0XHRkZXNjcmlwdGlvbjogZXJyb3IubWVzc2FnZSxcblx0XHRcdFx0XHRcdFx0RkNMTGV2ZWw6IDBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9KTtcblx0XHR9O1xuXG5cdFx0aWYgKHRoaXMuYkluaXRpYWxpemVSb3V0aW5nKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5nZXRSb3V0aW5nU2VydmljZSgpXG5cdFx0XHRcdC5pbml0aWFsaXplUm91dGluZygpXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRpZiAodGhpcy5nZXRSb290Vmlld0NvbnRyb2xsZXIoKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGZpbmFsaXplZFJvdXRpbmdJbml0aWFsaXphdGlvbigpO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHQodGhpcy5nZXRSb290Q29udHJvbCgpIGFzIGFueSkuYXR0YWNoQWZ0ZXJJbml0KGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRcdFx0XHRmaW5hbGl6ZWRSb3V0aW5nSW5pdGlhbGl6YXRpb24oKTtcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uKGVycjogYW55KSB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKFwiY2Fubm90IGNhbm5vdCBpbml0aWFsaXplIHJvdXRpbmc6IFwiICsgZXJyKTtcblx0XHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cdGV4aXQoKSB7XG5cdFx0dGhpcy5fb0FwcFN0YXRlSGFuZGxlci5kZXN0cm95KCk7XG5cdFx0dGhpcy5fb1JvdXRlclByb3h5LmRlc3Ryb3koKTtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdGRlbGV0ZSB0aGlzLl9vQXBwU3RhdGVIYW5kbGVyO1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0ZGVsZXRlIHRoaXMuX29Sb3V0ZXJQcm94eTtcblx0XHRkZWxldGVNb2RlbENhY2hlRGF0YSh0aGlzLmdldE1ldGFNb2RlbCgpKTtcblx0XHR0aGlzLmdldE1vZGVsKFwidWlcIikuZGVzdHJveSgpO1xuXHR9XG5cdGdldE1ldGFNb2RlbCgpOiBPRGF0YU1ldGFNb2RlbCB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKSBhcyBPRGF0YU1ldGFNb2RlbDtcblx0fVxuXHRnZXREaWFnbm9zdGljcygpIHtcblx0XHRyZXR1cm4gdGhpcy5fb0RpYWdub3N0aWNzO1xuXHR9XG5cdGRlc3Ryb3koLi4uYXJnczogYW55W10pIHtcblx0XHQvLyBMRUFLUywgd2l0aCB3b3JrYXJvdW5kIGZvciBzb21lIEZsZXggLyBNREMgaXNzdWVcblx0XHR0cnkge1xuXHRcdFx0Ly8gXHQvLyBUaGlzIG9uZSBpcyBvbmx5IGEgbGVhayBpZiB5b3UgZG9uJ3QgZ28gYmFjayB0byB0aGUgc2FtZSBjb21wb25lbnQgaW4gdGhlIGxvbmcgcnVuXG5cdFx0XHQvL2RlbGV0ZSBzYXAudWkuZmwuRmxleENvbnRyb2xsZXJGYWN0b3J5Ll9jb21wb25lbnRJbnN0YW50aWF0aW9uUHJvbWlzZXNbdGhpcy5nZXRJZCgpXTtcblxuXHRcdFx0VmFsdWVMaXN0SGVscGVyLmluaXRpYWxpemVDYWNoZWRWYWx1ZUhlbHAoKTtcblxuXHRcdFx0ZGVsZXRlIEFwcENvbXBvbmVudC5pbnN0YW5jZU1hcFt0aGlzLmdldElkKCldO1xuXG5cdFx0XHQvLyBcdHZhciBvUmVnaXN0cnkgPSBzYXAudWkubWRjLnAxM24uRW5naW5lLmdldEluc3RhbmNlKCkuX2dldFJlZ2lzdHJ5KCk7XG5cdFx0XHQvLyBcdE9iamVjdC5rZXlzKG9SZWdpc3RyeSkuZm9yRWFjaChmdW5jdGlvbihzS2V5KSB7XG5cdFx0XHQvLyBcdFx0T2JqZWN0LmtleXMob1JlZ2lzdHJ5W3NLZXldLmNvbnRyb2xsZXIpLmZvckVhY2goZnVuY3Rpb24oc0NvbnRyb2xsZXJLZXkpIHtcblx0XHRcdC8vIFx0XHRcdG9SZWdpc3RyeVtzS2V5XS5jb250cm9sbGVyW3NDb250cm9sbGVyS2V5XS5kZXN0cm95KCk7XG5cdFx0XHQvLyBcdFx0fSk7XG5cdFx0XHQvLyBcdH0pO1xuXHRcdFx0Ly8gXHRzYXAudWkubWRjLnAxM24uRW5naW5lLmdldEluc3RhbmNlKCkuZGVzdHJveSgpO1xuXHRcdFx0ZGVsZXRlICh3aW5kb3cgYXMgYW55KS5fcm91dGluZztcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRMb2cuaW5mbyhlKTtcblx0XHR9XG5cblx0XHQvL1dPUktBUk9VTkQgZm9yIHN0aWNreSBkaXNjYXJkIHJlcXVlc3QgOiBkdWUgdG8gYXN5bmMgY2FsbGJhY2ssIHJlcXVlc3QgdHJpZ2dlcmVkIGJ5IHRoZSBleGl0QXBwbGljYXRpb24gd2lsbCBiZSBzZW5kIGFmdGVyIHRoZSBVSUNvbXBvbmVudC5wcm90b3R5cGUuZGVzdHJveVxuXHRcdC8vc28gd2UgbmVlZCB0byBjb3B5IHRoZSBSZXF1ZXN0b3IgaGVhZGVycyBhcyBpdCB3aWxsIGJlIGRlc3Ryb3lcblxuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0Y29uc3Qgb01haW5Nb2RlbCA9ICh0aGlzIGFzIGFueSkub01vZGVsc1t1bmRlZmluZWRdO1xuXHRcdGNvbnN0IG9IZWFkZXJzID0galF1ZXJ5LmV4dGVuZCh7fSwgb01haW5Nb2RlbC5vUmVxdWVzdG9yLm1IZWFkZXJzKTtcblx0XHQvLyBBcyB3ZSBuZWVkIHRvIGNsZWFudXAgdGhlIGFwcGxpY2F0aW9uIC8gaGFuZGxlIHRoZSBkaXJ0eSBvYmplY3Qgd2UgbmVlZCB0byBjYWxsIG91ciBjbGVhbnVwIGJlZm9yZSB0aGUgbW9kZWxzIGFyZSBkZXN0cm95ZWRcblx0XHR0aGlzLmdldFJvdXRpbmdTZXJ2aWNlKCkuYmVmb3JlRXhpdCgpO1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0VUlDb21wb25lbnQucHJvdG90eXBlLmRlc3Ryb3kuYXBwbHkodGhpcywgW2FyZ3NdKTtcblx0XHRvTWFpbk1vZGVsLm9SZXF1ZXN0b3IubUhlYWRlcnMgPSBvSGVhZGVycztcblx0fVxuXHRnZXRDb21wb25lbnREYXRhKCk6IGFueSB7XG5cdFx0cmV0dXJuIHN1cGVyLmdldENvbXBvbmVudERhdGEoKTtcblx0fVxuXHRnZXRSb3V0aW5nU2VydmljZSgpOiBSb3V0aW5nU2VydmljZSB7XG5cdFx0cmV0dXJuIHt9IGFzIFJvdXRpbmdTZXJ2aWNlOyAvLyBvdmVycmlkZW4gYXQgcnVudGltZVxuXHR9XG5cdGdldFNoZWxsU2VydmljZXMoKTogSVNoZWxsU2VydmljZXMge1xuXHRcdHJldHVybiB7fSBhcyBJU2hlbGxTZXJ2aWNlczsgLy8gb3ZlcnJpZGVuIGF0IHJ1bnRpbWVcblx0fVxuXHRnZXROYXZpZ2F0aW9uU2VydmljZSgpOiBOYXZpZ2F0aW9uU2VydmljZSB7XG5cdFx0cmV0dXJuIHt9IGFzIE5hdmlnYXRpb25TZXJ2aWNlOyAvLyBvdmVycmlkZW4gYXQgcnVudGltZVxuXHR9XG5cdGdldFNpZGVFZmZlY3RzU2VydmljZSgpOiBTaWRlRWZmZWN0c1NlcnZpY2Uge1xuXHRcdHJldHVybiB7fSBhcyBTaWRlRWZmZWN0c1NlcnZpY2U7XG5cdH1cblx0Z2V0RW52aXJvbm1lbnRDYXBhYmlsaXRpZXMoKTogRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlIHtcblx0XHRyZXR1cm4ge30gYXMgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlO1xuXHR9XG5cblx0Z2V0U3RhcnR1cFBhcmFtZXRlcnMoKSB7XG5cdFx0Y29uc3Qgb0NvbXBvbmVudERhdGEgPSB0aGlzLmdldENvbXBvbmVudERhdGEoKSBhcyBhbnk7XG5cdFx0Y29uc3Qgb1N0YXJ0VXBQYXJhbWV0ZXJzID0gKG9Db21wb25lbnREYXRhICYmIG9Db21wb25lbnREYXRhLnN0YXJ0dXBQYXJhbWV0ZXJzKSB8fCB7fTtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG9TdGFydFVwUGFyYW1ldGVycyk7XG5cdH1cblx0cmVzdG9yZSgpIHtcblx0XHQvLyBjYWxsZWQgYnkgRkxQIHdoZW4gYXBwIHNhcC1rZWVwLWFsaXZlIGlzIGVuYWJsZWQgYW5kIGFwcCBpcyByZXN0b3JlZFxuXHRcdCh0aGlzLmdldFJvb3RWaWV3Q29udHJvbGxlcigpIGFzIGFueSkudmlld1N0YXRlLm9uUmVzdG9yZSgpO1xuXHR9XG5cdHN1c3BlbmQoKSB7XG5cdFx0Ly8gY2FsbGVkIGJ5IEZMUCB3aGVuIGFwcCBzYXAta2VlcC1hbGl2ZSBpcyBlbmFibGVkIGFuZCBhcHAgaXMgc3VzcGVuZGVkXG5cdFx0KHRoaXMuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkgYXMgYW55KS52aWV3U3RhdGUub25TdXNwZW5kKCk7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQXBwQ29tcG9uZW50O1xuIl19
|
|
385
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFwcENvbXBvbmVudC50cyJdLCJuYW1lcyI6WyJOQVZDT05GIiwiRkNMIiwiVklFV05BTUUiLCJST1VURVJDTEFTUyIsIk5BVkNPTlRBSU5FUiIsIkFwcENvbXBvbmVudCIsImRlZmluZVVJNUNsYXNzIiwiaW50ZXJmYWNlcyIsImNvbmZpZyIsImZ1bGxXaWR0aCIsIm1hbmlmZXN0Iiwic2VydmljZXMiLCJyZXNvdXJjZU1vZGVsIiwiZmFjdG9yeU5hbWUiLCJyb3V0aW5nU2VydmljZSIsInN0YXJ0dXAiLCJzaGVsbFNlcnZpY2VzIiwiU2hlbGxVSVNlcnZpY2UiLCJuYXZpZ2F0aW9uU2VydmljZSIsImVudmlyb25tZW50Q2FwYWJpbGl0aWVzIiwic2lkZUVmZmVjdHNTZXJ2aWNlIiwiYXN5bmNDb21wb25lbnRTZXJ2aWNlIiwicm9vdFZpZXciLCJ2aWV3TmFtZSIsInR5cGUiLCJhc3luYyIsImlkIiwicm91dGluZyIsImNvbnRyb2xJZCIsInJvdXRlckNsYXNzIiwidmlld1R5cGUiLCJjb250cm9sQWdncmVnYXRpb24iLCJjb250YWluZXJPcHRpb25zIiwicHJvcGFnYXRlTW9kZWwiLCJkZXNpZ250aW1lIiwibGlicmFyeSIsIl9pc0ZjbEVuYWJsZWQiLCJvTWFuaWZlc3RVSTUiLCJnZXRNZXRhZGF0YSIsImdldE1hbmlmZXN0RW50cnkiLCJnZXRSb3V0ZXJQcm94eSIsIl9vUm91dGVyUHJveHkiLCJnZXRBcHBTdGF0ZUhhbmRsZXIiLCJfb0FwcFN0YXRlSGFuZGxlciIsImdldFJvb3RWaWV3Q29udHJvbGxlciIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsImdldFJvb3RDb250YWluZXIiLCJnZXRDb250ZW50IiwiaW5pdCIsInVpTW9kZWwiLCJKU09OTW9kZWwiLCJlZGl0TW9kZSIsIkVkaXRNb2RlIiwiRGlzcGxheSIsImlzRWRpdGFibGUiLCJkcmFmdFN0YXR1cyIsIkRyYWZ0U3RhdHVzIiwiQ2xlYXIiLCJidXN5IiwiYnVzeUxvY2FsIiwicGFnZXMiLCJvSW50ZXJuYWxNb2RlbCIsIk1vZGVsSGVscGVyIiwiZW5oYW5jZVVpSlNPTk1vZGVsIiwiZW5oYW5jZUludGVybmFsSlNPTk1vZGVsIiwic2V0TW9kZWwiLCJiSW5pdGlhbGl6ZVJvdXRpbmciLCJ1bmRlZmluZWQiLCJSb3V0ZXJQcm94eSIsIkFwcFN0YXRlSGFuZGxlciIsIl9vRGlhZ25vc3RpY3MiLCJEaWFnbm9zdGljcyIsIm9Nb2RlbCIsImdldE1vZGVsIiwiZW50aXR5Q29udGFpbmVyIiwiZ2V0TWV0YU1vZGVsIiwicmVxdWVzdE9iamVjdCIsIkxvZyIsImluZm8iLCJpbmRleE9mIiwiRXJyb3IiLCJpbnN0YW5jZU1hcCIsImdldElkIiwib25TZXJ2aWNlc1N0YXJ0ZWQiLCJmaW5hbGl6ZWRSb3V0aW5nSW5pdGlhbGl6YXRpb24iLCJ0aGVuIiwiYXR0YWNoUm91dGVNYXRjaGVycyIsImdldFJvdXRlciIsImluaXRpYWxpemUiLCJjYXRjaCIsImVycm9yIiwib1Jlc291cmNlQnVuZGxlIiwiQ29yZSIsImdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZSIsImRpc3BsYXlNZXNzYWdlUGFnZSIsImdldFRleHQiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWVzc2FnZSIsIkZDTExldmVsIiwiZ2V0Um91dGluZ1NlcnZpY2UiLCJpbml0aWFsaXplUm91dGluZyIsImF0dGFjaEFmdGVySW5pdCIsImVyciIsImV4aXQiLCJkZXN0cm95IiwiZGVsZXRlTW9kZWxDYWNoZURhdGEiLCJnZXREaWFnbm9zdGljcyIsIlZhbHVlTGlzdEhlbHBlciIsImluaXRpYWxpemVDYWNoZWRWYWx1ZUhlbHAiLCJ3aW5kb3ciLCJfcm91dGluZyIsImUiLCJvTWFpbk1vZGVsIiwib01vZGVscyIsIm9IZWFkZXJzIiwialF1ZXJ5IiwiZXh0ZW5kIiwib1JlcXVlc3RvciIsIm1IZWFkZXJzIiwiYmVmb3JlRXhpdCIsImFyZ3MiLCJnZXRDb21wb25lbnREYXRhIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsImdldE5hdmlnYXRpb25TZXJ2aWNlIiwiZ2V0U2lkZUVmZmVjdHNTZXJ2aWNlIiwiZ2V0RW52aXJvbm1lbnRDYXBhYmlsaXRpZXMiLCJnZXRTdGFydHVwUGFyYW1ldGVycyIsIm9Db21wb25lbnREYXRhIiwib1N0YXJ0VXBQYXJhbWV0ZXJzIiwic3RhcnR1cFBhcmFtZXRlcnMiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlc3RvcmUiLCJ2aWV3U3RhdGUiLCJvblJlc3RvcmUiLCJzdXNwZW5kIiwib25TdXNwZW5kIiwiVUlDb21wb25lbnQiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7QUFxQkEsTUFBTUEsT0FBTyxHQUFHO0FBQ2ZDLElBQUFBLEdBQUcsRUFBRTtBQUNKQyxNQUFBQSxRQUFRLEVBQUUseUNBRE47QUFFSkMsTUFBQUEsV0FBVyxFQUFFO0FBRlQsS0FEVTtBQUtmQyxJQUFBQSxZQUFZLEVBQUU7QUFDYkYsTUFBQUEsUUFBUSxFQUFFLGtEQURHO0FBRWJDLE1BQUFBLFdBQVcsRUFBRTtBQUZBO0FBTEMsR0FBaEI7QUFXQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztNQXFFTUUsWSxXQXBFTEMsY0FBYyxDQUFDLDBCQUFELEVBQTZCO0FBQzNDQyxJQUFBQSxVQUFVLEVBQUUsQ0FBQyxtQ0FBRCxDQUQrQjtBQUUzQ0MsSUFBQUEsTUFBTSxFQUFFO0FBQ1BDLE1BQUFBLFNBQVMsRUFBRTtBQURKLEtBRm1DO0FBSzNDQyxJQUFBQSxRQUFRLEVBQUU7QUFDVCxpQkFBVztBQUNWQyxRQUFBQSxRQUFRLEVBQUU7QUFDVEMsVUFBQUEsYUFBYSxFQUFFO0FBQ2RDLFlBQUFBLFdBQVcsRUFBRSwyQ0FEQztBQUVkLHVCQUFXLFNBRkc7QUFHZCx3QkFBWTtBQUNYLHlCQUFXLENBQUMsMkJBQUQsQ0FEQTtBQUVYLDJCQUFhO0FBRkY7QUFIRSxXQUROO0FBU1RDLFVBQUFBLGNBQWMsRUFBRTtBQUNmRCxZQUFBQSxXQUFX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O1dBQ0R1QixnQixHQUFBLDRCQUFtQztBQUNsQyxhQUFPLEVBQVAsQ0FEa0MsQ0FDTDtBQUM3QixLOztXQUNEQyxvQixHQUFBLGdDQUEwQztBQUN6QyxhQUFPLEVBQVAsQ0FEeUMsQ0FDVDtBQUNoQyxLOztXQUNEQyxxQixHQUFBLGlDQUE0QztBQUMzQyxhQUFPLEVBQVA7QUFDQSxLOztXQUNEQywwQixHQUFBLHNDQUE2RDtBQUM1RCxhQUFPLEVBQVA7QUFDQSxLOztXQUVEQyxvQixHQUFBLGdDQUF1QjtBQUN0QixVQUFNQyxjQUFjLEdBQUcsS0FBS04sZ0JBQUwsRUFBdkI7QUFDQSxVQUFNTyxrQkFBa0IsR0FBSUQsY0FBYyxJQUFJQSxjQUFjLENBQUNFLGlCQUFsQyxJQUF3RCxFQUFuRjtBQUNBLGFBQU9DLE9BQU8sQ0FBQ0MsT0FBUixDQUFnQkgsa0JBQWhCLENBQVA7QUFDQSxLOztXQUNESSxPLEdBQUEsbUJBQVU7QUFDVDtBQUNDLFdBQUsxRixxQkFBTCxFQUFELENBQXNDMkYsU0FBdEMsQ0FBZ0RDLFNBQWhEO0FBQ0EsSzs7V0FDREMsTyxHQUFBLG1CQUFVO0FBQ1Q7QUFDQyxXQUFLN0YscUJBQUwsRUFBRCxDQUFzQzJGLFNBQXRDLENBQWdERyxTQUFoRDtBQUNBLEs7OztJQXJSeUJDLFcsV0FDbkJ6RCxXLEdBQTRDLEU7U0F1UnJDN0UsWSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFVJQ29tcG9uZW50IGZyb20gXCJzYXAvdWkvY29yZS9VSUNvbXBvbmVudFwiO1xuaW1wb3J0IFJvdXRlclByb3h5IGZyb20gXCJzYXAvZmUvY29yZS9Sb3V0ZXJQcm94eVwiO1xuaW1wb3J0IEFwcFN0YXRlSGFuZGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvQXBwU3RhdGVIYW5kbGVyXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBEaWFnbm9zdGljcyBmcm9tIFwic2FwL2ZlL2NvcmUvc3VwcG9ydC9EaWFnbm9zdGljc1wiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgbGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IE1vZGVsSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgVmFsdWVMaXN0SGVscGVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2ludGVybmFsL3ZhbHVlaGVscC9WYWx1ZUxpc3RIZWxwZXJcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuaW1wb3J0IEJhc2VDb250cm9sbGVyIGZyb20gXCIuL0Jhc2VDb250cm9sbGVyXCI7XG5pbXBvcnQgeyBkZWxldGVNb2RlbENhY2hlRGF0YSB9IGZyb20gXCIuL2NvbnZlcnRlcnMvTWV0YU1vZGVsQ29udmVydGVyXCI7XG5pbXBvcnQgT0RhdGFNZXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1ldGFNb2RlbFwiO1xuaW1wb3J0IHsgUm91dGluZ1NlcnZpY2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvUm91dGluZ1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgeyBJU2hlbGxTZXJ2aWNlcyB9IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9TaGVsbFNlcnZpY2VzRmFjdG9yeVwiO1xuaW1wb3J0IHsgTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvTmF2aWdhdGlvblNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgeyBTaWRlRWZmZWN0c1NlcnZpY2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlIH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0Vudmlyb25tZW50U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB7IENvcmVFeCB9IGZyb20gXCJ0eXBlcy9leHRlbnNpb25fdHlwZXNcIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5cbmNvbnN0IE5BVkNPTkYgPSB7XG5cdEZDTDoge1xuXHRcdFZJRVdOQU1FOiBcInNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci52aWV3LkZjbFwiLFxuXHRcdFJPVVRFUkNMQVNTOiBcInNhcC5mLnJvdXRpbmcuUm91dGVyXCJcblx0fSxcblx0TkFWQ09OVEFJTkVSOiB7XG5cdFx0VklFV05BTUU6IFwic2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLnZpZXcuTmF2Q29udGFpbmVyXCIsXG5cdFx0Uk9VVEVSQ0xBU1M6IFwic2FwLm0ucm91dGluZy5Sb3V0ZXJcIlxuXHR9XG59O1xuXG4vKipcbiAqIE1haW4gY2xhc3MgZm9yIGNvbXBvbmVudHMgdXNlZCBmb3IgYW4gYXBwbGljYXRpb24gaW4gU0FQIEZpb3JpIGVsZW1lbnRzLlxuICpcbiAqIEFwcGxpY2F0aW9uIGRldmVsb3BlcnMgdXNpbmcgdGhlIHRlbXBsYXRlcyBhbmQgYnVpbGRpbmcgYmxvY2tzIHByb3ZpZGVkIGJ5IFNBUCBGaW9yaSBlbGVtZW50cyBzaG91bGQgY3JlYXRlIHRoZWlyIGFwcHMgYnkgZXh0ZW5kaW5nIHRoaXMgY29tcG9uZW50LlxuICogVGhpcyBlbnN1cmVzIHRoYXQgYWxsIHRoZSBuZWNlc3Nhcnkgc2VydmljZXMgdGhhdCB5b3UgbmVlZCBmb3IgdGhlIGJ1aWxkaW5nIGJsb2NrcyBhbmQgdGVtcGxhdGVzIHRvIHdvcmsgcHJvcGVybHkgYXJlIHN0YXJ0ZWQuXG4gKlxuICogV2hlbiB5b3UgdXNlIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudCBhcyB0aGUgYmFzZSBjb21wb25lbnQsIHlvdSBhbHNvIG5lZWQgdG8gdXNlIGEgcm9vdFZpZXcuIFNBUCBGaW9yaSBlbGVtZW50cyBwcm92aWRlcyB0d28gb3B0aW9uczogPGJyLz5cbiAqICAtIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci52aWV3Lk5hdkNvbnRhaW5lciB3aGVuIHVzaW5nIHNhcC5tLnJvdXRpbmcuUm91dGVyIDxici8+XG4gKiAgLSBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIudmlldy5GY2wgd2hlbiB1c2luZyBzYXAuZi5yb3V0aW5nLlJvdXRlciAoRkNMIHVzZSBjYXNlKSA8YnIvPlxuICpcbiAqIEBoaWRlY29uc3RydWN0b3JcbiAqIEBwdWJsaWNcbiAqIEBuYW1lIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudFxuICovXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcIiwge1xuXHRpbnRlcmZhY2VzOiBbXCJzYXAudWkuY29yZS5JQXN5bmNDb250ZW50Q3JlYXRpb25cIl0sXG5cdGNvbmZpZzoge1xuXHRcdGZ1bGxXaWR0aDogdHJ1ZVxuXHR9LFxuXHRtYW5pZmVzdDoge1xuXHRcdFwic2FwLnVpNVwiOiB7XG5cdFx0XHRzZXJ2aWNlczoge1xuXHRcdFx0XHRyZXNvdXJjZU1vZGVsOiB7XG5cdFx0XHRcdFx0ZmFjdG9yeU5hbWU6IFwic2FwLmZlLmNvcmUuc2VydmljZXMuUmVzb3VyY2VNb2RlbFNlcnZpY2VcIixcblx0XHRcdFx0XHRcInN0YXJ0dXBcIjogXCJ3YWl0Rm9yXCIsXG5cdFx0XHRcdFx0XCJzZXR0aW5nc1wiOiB7XG5cdFx0XHRcdFx0XHRcImJ1bmRsZXNcIjogW1wic2FwLmZlLmNvcmUubWVzc2FnZWJ1bmRsZVwiXSxcblx0XHRcdFx0XHRcdFwibW9kZWxOYW1lXCI6IFwic2FwLmZlLmkxOG5cIlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSxcblx0XHRcdFx0cm91dGluZ1NlcnZpY2U6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Sb3V0aW5nU2VydmljZVwiLFxuXHRcdFx0XHRcdHN0YXJ0dXA6IFwid2FpdEZvclwiXG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNoZWxsU2VydmljZXM6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5TaGVsbFNlcnZpY2VzXCIsXG5cdFx0XHRcdFx0c3RhcnR1cDogXCJ3YWl0Rm9yXCJcblx0XHRcdFx0fSxcblx0XHRcdFx0U2hlbGxVSVNlcnZpY2U6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAudXNoZWxsLnVpNXNlcnZpY2UuU2hlbGxVSVNlcnZpY2VcIlxuXHRcdFx0XHR9LFxuXHRcdFx0XHRuYXZpZ2F0aW9uU2VydmljZToge1xuXHRcdFx0XHRcdGZhY3RvcnlOYW1lOiBcInNhcC5mZS5jb3JlLnNlcnZpY2VzLk5hdmlnYXRpb25TZXJ2aWNlXCIsXG5cdFx0XHRcdFx0c3RhcnR1cDogXCJ3YWl0Rm9yXCJcblx0XHRcdFx0fSxcblx0XHRcdFx0ZW52aXJvbm1lbnRDYXBhYmlsaXRpZXM6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5FbnZpcm9ubWVudFNlcnZpY2VcIixcblx0XHRcdFx0XHRzdGFydHVwOiBcIndhaXRGb3JcIlxuXHRcdFx0XHR9LFxuXHRcdFx0XHRzaWRlRWZmZWN0c1NlcnZpY2U6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5TaWRlRWZmZWN0c1NlcnZpY2VcIixcblx0XHRcdFx0XHRzdGFydHVwOiBcIndhaXRGb3JcIlxuXHRcdFx0XHR9LFxuXHRcdFx0XHRhc3luY0NvbXBvbmVudFNlcnZpY2U6IHtcblx0XHRcdFx0XHRmYWN0b3J5TmFtZTogXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Bc3luY0NvbXBvbmVudFNlcnZpY2VcIixcblx0XHRcdFx0XHRzdGFydHVwOiBcIndhaXRGb3JcIlxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0cm9vdFZpZXc6IHtcblx0XHRcdFx0dmlld05hbWU6IE5BVkNPTkYuTkFWQ09OVEFJTkVSLlZJRVdOQU1FLFxuXHRcdFx0XHR0eXBlOiBcIlhNTFwiLFxuXHRcdFx0XHRhc3luYzogdHJ1ZSxcblx0XHRcdFx0aWQ6IFwiYXBwUm9vdFZpZXdcIlxuXHRcdFx0fSxcblx0XHRcdHJvdXRpbmc6IHtcblx0XHRcdFx0Y29uZmlnOiB7XG5cdFx0XHRcdFx0Y29udHJvbElkOiBcImFwcENvbnRlbnRcIixcblx0XHRcdFx0XHRyb3V0ZXJDbGFzczogTkFWQ09ORi5OQVZDT05UQUlORVIuUk9VVEVSQ0xBU1MsXG5cdFx0XHRcdFx0dmlld1R5cGU6IFwiWE1MXCIsXG5cdFx0XHRcdFx0Y29udHJvbEFnZ3JlZ2F0aW9uOiBcInBhZ2VzXCIsXG5cdFx0XHRcdFx0YXN5bmM6IHRydWUsXG5cdFx0XHRcdFx0Y29udGFpbmVyT3B0aW9uczoge1xuXHRcdFx0XHRcdFx0cHJvcGFnYXRlTW9kZWw6IHRydWVcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cdGRlc2lnbnRpbWU6IFwic2FwL2ZlL2NvcmUvZGVzaWdudGltZS9BcHBDb21wb25lbnQuZGVzaWdudGltZVwiLFxuXG5cdGxpYnJhcnk6IFwic2FwLmZlLmNvcmVcIlxufSlcbmNsYXNzIEFwcENvbXBvbmVudCBleHRlbmRzIFVJQ29tcG9uZW50IHtcblx0c3RhdGljIGluc3RhbmNlTWFwOiBSZWNvcmQ8c3RyaW5nLCBBcHBDb21wb25lbnQ+ID0ge307XG5cdHByaXZhdGUgX29Sb3V0ZXJQcm94eSE6IFJvdXRlclByb3h5O1xuXHRwcml2YXRlIF9vQXBwU3RhdGVIYW5kbGVyITogQXBwU3RhdGVIYW5kbGVyO1xuXHRwcml2YXRlIGJJbml0aWFsaXplUm91dGluZz86IGJvb2xlYW47XG5cdHByaXZhdGUgX29EaWFnbm9zdGljcyE6IERpYWdub3N0aWNzO1xuXHRwcml2YXRlIGVudGl0eUNvbnRhaW5lcjogYW55O1xuXHQvKipcblx0ICogQHByaXZhdGVcblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50LmdldE1ldGFkYXRhXG5cdCAqIEBmdW5jdGlvblxuXHQgKi9cblxuXHRfaXNGY2xFbmFibGVkKCkge1xuXHRcdGNvbnN0IG9NYW5pZmVzdFVJNSA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRNYW5pZmVzdEVudHJ5KFwiL3NhcC51aTVcIiwgdHJ1ZSk7XG5cdFx0cmV0dXJuIE5BVkNPTkYuRkNMLlZJRVdOQU1FID09PSBvTWFuaWZlc3RVSTUucm9vdFZpZXcudmlld05hbWU7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGEgcmVmZXJlbmNlIHRvIHRoZSBSb3V0ZXJQcm94eS5cblx0ICpcblx0ICogQGZ1bmN0aW9uXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkFwcENvbXBvbmVudCNnZXRSb3V0ZXJQcm94eVxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XG5cdCAqIEByZXR1cm5zIHtvT2JqZWN0fSBBIFJlZmVyZW5jZSB0byB0aGUgUm91dGVyUHJveHlcblx0ICpcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqIEBmaW5hbFxuXHQgKi9cblx0Z2V0Um91dGVyUHJveHkoKTogUm91dGVyUHJveHkge1xuXHRcdHJldHVybiB0aGlzLl9vUm91dGVyUHJveHk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGEgcmVmZXJlbmNlIHRvIHRoZSBBcHBTdGF0ZUhhbmRsZXIuXG5cdCAqXG5cdCAqIEBmdW5jdGlvblxuXHQgKiBAbmFtZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnQjZ2V0QXBwU3RhdGVIYW5kbGVyXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUuY29yZS5BcHBDb21wb25lbnRcblx0ICogQHJldHVybnMge29PYmplY3R9IEEgcmVmZXJlbmNlIHRvIHRoZSBBcHBTdGF0ZUhhbmRsZXJcblx0ICpcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqIEBmaW5hbFxuXHQgKi9cblx0Z2V0QXBwU3RhdGVIYW5kbGVyKCkge1xuXHRcdHJldHVybiB0aGlzLl9vQXBwU3RhdGVIYW5kbGVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCBhIHJlZmVyZW5jZSB0byB0aGUgbmF2L0ZDTCBDb250cm9sbGVyLlxuXHQgKlxuXHQgKiBAZnVuY3Rpb25cblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50I2dldFJvb3RWaWV3Q29udHJvbGxlclxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XG5cdCAqIEByZXR1cm5zIHtvT2JqZWN0fSBBIHJlZmVyZW5jZSB0byB0aGUgRkNMIENvbnRyb2xsZXJcblx0ICpcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqIEBmaW5hbFxuXHQgKi9cblx0Z2V0Um9vdFZpZXdDb250cm9sbGVyKCk6IEJhc2VDb250cm9sbGVyIHtcblx0XHRyZXR1cm4gKHRoaXMuZ2V0Um9vdENvbnRyb2woKSBhcyBWaWV3KS5nZXRDb250cm9sbGVyKCkgYXMgQmFzZUNvbnRyb2xsZXI7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IHRoZSBOYXZDb250YWluZXIgY29udHJvbCBvciB0aGUgRkNMIGNvbnRyb2wuXG5cdCAqXG5cdCAqIEBmdW5jdGlvblxuXHQgKiBAbmFtZSBzYXAuZmUuY29yZS5BcHBDb21wb25lbnQjZ2V0Um9vdENvbnRhaW5lclxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XG5cdCAqIEByZXR1cm5zIHtvT2JqZWN0fSBBIHJlZmVyZW5jZSB0byBOYXZDb250YWluZXIgY29udHJvbCBvciB0aGUgRkNMIGNvbnRyb2xcblx0ICpcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqIEBmaW5hbFxuXHQgKi9cblx0Z2V0Um9vdENvbnRhaW5lcigpIHtcblx0XHRyZXR1cm4gKHRoaXMuZ2V0Um9vdENvbnRyb2woKSBhcyBWaWV3KS5nZXRDb250ZW50KClbMF07XG5cdH1cblxuXHRpbml0KCkge1xuXHRcdGNvbnN0IHVpTW9kZWwgPSBuZXcgSlNPTk1vZGVsKHtcblx0XHRcdGVkaXRNb2RlOiBsaWJyYXJ5LkVkaXRNb2RlLkRpc3BsYXksXG5cdFx0XHRpc0VkaXRhYmxlOiBmYWxzZSxcblx0XHRcdGRyYWZ0U3RhdHVzOiBsaWJyYXJ5LkRyYWZ0U3RhdHVzLkNsZWFyLFxuXHRcdFx0YnVzeTogZmFsc2UsXG5cdFx0XHRidXN5TG9jYWw6IHt9LFxuXHRcdFx0cGFnZXM6IHt9XG5cdFx0fSk7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWwgPSBuZXcgSlNPTk1vZGVsKHtcblx0XHRcdHBhZ2VzOiB7fVxuXHRcdH0pO1xuXG5cdFx0TW9kZWxIZWxwZXIuZW5oYW5jZVVpSlNPTk1vZGVsKHVpTW9kZWwsIGxpYnJhcnkpO1xuXHRcdE1vZGVsSGVscGVyLmVuaGFuY2VJbnRlcm5hbEpTT05Nb2RlbChvSW50ZXJuYWxNb2RlbCk7XG5cblx0XHR0aGlzLnNldE1vZGVsKHVpTW9kZWwsIFwidWlcIik7XG5cdFx0dGhpcy5zZXRNb2RlbChvSW50ZXJuYWxNb2RlbCwgXCJpbnRlcm5hbFwiKTtcblxuXHRcdHRoaXMuYkluaXRpYWxpemVSb3V0aW5nID0gdGhpcy5iSW5pdGlhbGl6ZVJvdXRpbmcgIT09IHVuZGVmaW5lZCA/IHRoaXMuYkluaXRpYWxpemVSb3V0aW5nIDogdHJ1ZTtcblx0XHR0aGlzLl9vUm91dGVyUHJveHkgPSBuZXcgUm91dGVyUHJveHkoKTtcblx0XHR0aGlzLl9vQXBwU3RhdGVIYW5kbGVyID0gbmV3IEFwcFN0YXRlSGFuZGxlcih0aGlzKTtcblx0XHR0aGlzLl9vRGlhZ25vc3RpY3MgPSBuZXcgRGlhZ25vc3RpY3MoKTtcblx0XHRjb25zdCBvTW9kZWwgPSB0aGlzLmdldE1vZGVsKCkgYXMgT0RhdGFNb2RlbDtcblx0XHRpZiAob01vZGVsKSB7XG5cdFx0XHR0aGlzLmVudGl0eUNvbnRhaW5lciA9IG9Nb2RlbC5nZXRNZXRhTW9kZWwoKS5yZXF1ZXN0T2JqZWN0KFwiLyRFbnRpdHlDb250YWluZXIvXCIpO1xuXHRcdH1cblxuXHRcdGNvbnN0IG9NYW5pZmVzdFVJNSA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRNYW5pZmVzdEVudHJ5KFwiL3NhcC51aTVcIiwgdHJ1ZSk7XG5cdFx0aWYgKFxuXHRcdFx0b01hbmlmZXN0VUk1LnJvb3RWaWV3LnZpZXdOYW1lID09PSBOQVZDT05GLkZDTC5WSUVXTkFNRSAmJlxuXHRcdFx0b01hbmlmZXN0VUk1LnJvdXRpbmcuY29uZmlnLnJvdXRlckNsYXNzID09PSBOQVZDT05GLkZDTC5ST1VURVJDTEFTU1xuXHRcdCkge1xuXHRcdFx0TG9nLmluZm8oJ1Jvb3Rjb250YWluZXI6IFwiJyArIE5BVkNPTkYuRkNMLlZJRVdOQU1FICsgJ1wiIC0gUm91dGVyY2xhc3M6IFwiJyArIE5BVkNPTkYuRkNMLlJPVVRFUkNMQVNTICsgJ1wiJyk7XG5cdFx0fSBlbHNlIGlmIChcblx0XHRcdG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZSA9PT0gTkFWQ09ORi5OQVZDT05UQUlORVIuVklFV05BTUUgJiZcblx0XHRcdG9NYW5pZmVzdFVJNS5yb3V0aW5nLmNvbmZpZy5yb3V0ZXJDbGFzcyA9PT0gTkFWQ09ORi5OQVZDT05UQUlORVIuUk9VVEVSQ0xBU1Ncblx0XHQpIHtcblx0XHRcdExvZy5pbmZvKCdSb290Y29udGFpbmVyOiBcIicgKyBOQVZDT05GLk5BVkNPTlRBSU5FUi5WSUVXTkFNRSArICdcIiAtIFJvdXRlcmNsYXNzOiBcIicgKyBOQVZDT05GLk5BVkNPTlRBSU5FUi5ST1VURVJDTEFTUyArICdcIicpO1xuXHRcdH0gZWxzZSBpZiAob01hbmlmZXN0VUk1LnJvb3RWaWV3LnZpZXdOYW1lLmluZGV4T2YoXCJzYXAuZmVcIikgIT09IC0xKSB7XG5cdFx0XHR0aHJvdyBFcnJvcihcblx0XHRcdFx0XCJcXG5Xcm9uZyBjb25maWd1cmF0aW9uIGZvciB0aGUgY291cGxlIChyb290Vmlldy9yb3V0ZXJDbGFzcykgaW4gbWFuaWZlc3QgZmlsZS5cXG5cIiArXG5cdFx0XHRcdFx0XCJDdXJyZW50IHZhbHVlcyBhcmUgOihcIiArXG5cdFx0XHRcdFx0b01hbmlmZXN0VUk1LnJvb3RWaWV3LnZpZXdOYW1lICtcblx0XHRcdFx0XHRcIi9cIiArXG5cdFx0XHRcdFx0b01hbmlmZXN0VUk1LnJvdXRpbmcuY29uZmlnLnJvdXRlckNsYXNzICtcblx0XHRcdFx0XHRcIilcXG5cIiArXG5cdFx0XHRcdFx0XCJFeHBlY3RlZCB2YWx1ZXMgYXJlIFxcblwiICtcblx0XHRcdFx0XHRcIlxcdCAtIChcIiArXG5cdFx0XHRcdFx0TkFWQ09ORi5OQVZDT05UQUlORVIuVklFV05BTUUgK1xuXHRcdFx0XHRcdFwiL1wiICtcblx0XHRcdFx0XHROQVZDT05GLk5BVkNPTlRBSU5FUi5ST1VURVJDTEFTUyArXG5cdFx0XHRcdFx0XCIpXFxuXCIgK1xuXHRcdFx0XHRcdFwiXFx0IC0gKFwiICtcblx0XHRcdFx0XHROQVZDT05GLkZDTC5WSUVXTkFNRSArXG5cdFx0XHRcdFx0XCIvXCIgK1xuXHRcdFx0XHRcdE5BVkNPTkYuRkNMLlJPVVRFUkNMQVNTICtcblx0XHRcdFx0XHRcIilcIlxuXHRcdFx0KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0TG9nLmluZm8oJ1Jvb3Rjb250YWluZXI6IFwiJyArIG9NYW5pZmVzdFVJNS5yb290Vmlldy52aWV3TmFtZSArICdcIiAtIFJvdXRlcmNsYXNzOiBcIicgKyBOQVZDT05GLk5BVkNPTlRBSU5FUi5ST1VURVJDTEFTUyArICdcIicpO1xuXHRcdH1cblxuXHRcdC8vIEFkZGluZyBTZW1hbnRpYyBEYXRlIE9wZXJhdG9yc1xuXHRcdC8vIENvbW1lbnRpbmcgc2luY2UgaXQgaXMgbm90IG5lZWRlZCBmb3IgU2luZ2xlUmFuZ2Vcblx0XHQvLyBTZW1hbnRpY0RhdGVPcGVyYXRvcnMuYWRkU2VtYW50aWNEYXRlT3BlcmF0b3JzKCk7XG5cblx0XHQvLyB0aGUgaW5pdCBmdW5jdGlvbiBjb25maWd1cmVzIHRoZSByb3V0aW5nIGFjY29yZGluZyB0byB0aGUgc2V0dGluZ3MgYWJvdmVcblx0XHQvLyBpdCB3aWxsIGNhbGwgdGhlIGNyZWF0ZUNvbnRlbnQgZnVuY3Rpb24gdG8gaW5zdGFudGlhdGUgdGhlIFJvb3RWaWV3IGFuZCBhZGQgaXQgdG8gdGhlIFVJQ29tcG9uZW50IGFnZ3JlZ2F0aW9uc1xuXG5cdFx0c3VwZXIuaW5pdCgpO1xuXHRcdEFwcENvbXBvbmVudC5pbnN0YW5jZU1hcFt0aGlzLmdldElkKCldID0gdGhpcztcblx0fVxuXHRvblNlcnZpY2VzU3RhcnRlZCgpIHtcblx0XHQvL3JvdXRlciBtdXN0IGJlIHN0YXJ0ZWQgb25jZSB0aGUgcm9vdGNvbnRhaW5lciBpcyBpbml0aWFsaXplZFxuXHRcdC8vc3RhcnRpbmcgb2YgdGhlIHJvdXRlclxuXHRcdGNvbnN0IGZpbmFsaXplZFJvdXRpbmdJbml0aWFsaXphdGlvbiA9ICgpID0+IHtcblx0XHRcdHRoaXMuZW50aXR5Q29udGFpbmVyXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRpZiAoKHRoaXMuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkgYXMgYW55KS5hdHRhY2hSb3V0ZU1hdGNoZXJzKSB7XG5cdFx0XHRcdFx0XHQodGhpcy5nZXRSb290Vmlld0NvbnRyb2xsZXIoKSBhcyBhbnkpLmF0dGFjaFJvdXRlTWF0Y2hlcnMoKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dGhpcy5nZXRSb3V0ZXIoKS5pbml0aWFsaXplKCk7XG5cdFx0XHRcdFx0dGhpcy5nZXRSb3V0ZXJQcm94eSgpLmluaXQodGhpcywgdGhpcy5faXNGY2xFbmFibGVkKCkpO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yOiBhbnkpID0+IHtcblx0XHRcdFx0XHRjb25zdCBvUmVzb3VyY2VCdW5kbGUgPSAoQ29yZSBhcyBDb3JlRXgpLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5jb3JlXCIpO1xuXG5cdFx0XHRcdFx0KHRoaXMuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkgYXMgYW55KS5kaXNwbGF5TWVzc2FnZVBhZ2UoXG5cdFx0XHRcdFx0XHRvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIkNfQVBQX0NPTVBPTkVOVF9TQVBGRV9BUFBTVEFSVF9URUNITklDQUxfSVNTVUVTXCIpLFxuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHR0aXRsZTogb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJDX0NPTU1PTl9TQVBGRV9FUlJPUlwiKSxcblx0XHRcdFx0XHRcdFx0ZGVzY3JpcHRpb246IGVycm9yLm1lc3NhZ2UsXG5cdFx0XHRcdFx0XHRcdEZDTExldmVsOiAwXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0KTtcblx0XHRcdFx0fSk7XG5cdFx0fTtcblxuXHRcdGlmICh0aGlzLmJJbml0aWFsaXplUm91dGluZykge1xuXHRcdFx0cmV0dXJuIHRoaXMuZ2V0Um91dGluZ1NlcnZpY2UoKVxuXHRcdFx0XHQuaW5pdGlhbGl6ZVJvdXRpbmcoKVxuXHRcdFx0XHQudGhlbigoKSA9PiB7XG5cdFx0XHRcdFx0aWYgKHRoaXMuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkpIHtcblx0XHRcdFx0XHRcdHJldHVybiBmaW5hbGl6ZWRSb3V0aW5nSW5pdGlhbGl6YXRpb24oKTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0KHRoaXMuZ2V0Um9vdENvbnRyb2woKSBhcyBhbnkpLmF0dGFjaEFmdGVySW5pdChmdW5jdGlvbigpIHtcblx0XHRcdFx0XHRcdFx0ZmluYWxpemVkUm91dGluZ0luaXRpYWxpemF0aW9uKCk7XG5cdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaChmdW5jdGlvbihlcnI6IGFueSkge1xuXHRcdFx0XHRcdExvZy5lcnJvcihcImNhbm5vdCBjYW5ub3QgaW5pdGlhbGl6ZSByb3V0aW5nOiBcIiArIGVycik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXHRleGl0KCkge1xuXHRcdHRoaXMuX29BcHBTdGF0ZUhhbmRsZXIuZGVzdHJveSgpO1xuXHRcdHRoaXMuX29Sb3V0ZXJQcm94eS5kZXN0cm95KCk7XG5cdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuXHRcdC8vIEB0cy1pZ25vcmVcblx0XHRkZWxldGUgdGhpcy5fb0FwcFN0YXRlSGFuZGxlcjtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdGRlbGV0ZSB0aGlzLl9vUm91dGVyUHJveHk7XG5cdFx0ZGVsZXRlTW9kZWxDYWNoZURhdGEodGhpcy5nZXRNZXRhTW9kZWwoKSk7XG5cdFx0dGhpcy5nZXRNb2RlbChcInVpXCIpLmRlc3Ryb3koKTtcblx0fVxuXHRnZXRNZXRhTW9kZWwoKTogT0RhdGFNZXRhTW9kZWwge1xuXHRcdHJldHVybiB0aGlzLmdldE1vZGVsKCkuZ2V0TWV0YU1vZGVsKCkgYXMgT0RhdGFNZXRhTW9kZWw7XG5cdH1cblx0Z2V0RGlhZ25vc3RpY3MoKSB7XG5cdFx0cmV0dXJuIHRoaXMuX29EaWFnbm9zdGljcztcblx0fVxuXHRkZXN0cm95KC4uLmFyZ3M6IGFueVtdKSB7XG5cdFx0Ly8gTEVBS1MsIHdpdGggd29ya2Fyb3VuZCBmb3Igc29tZSBGbGV4IC8gTURDIGlzc3VlXG5cdFx0dHJ5IHtcblx0XHRcdC8vIFx0Ly8gVGhpcyBvbmUgaXMgb25seSBhIGxlYWsgaWYgeW91IGRvbid0IGdvIGJhY2sgdG8gdGhlIHNhbWUgY29tcG9uZW50IGluIHRoZSBsb25nIHJ1blxuXHRcdFx0Ly9kZWxldGUgc2FwLnVpLmZsLkZsZXhDb250cm9sbGVyRmFjdG9yeS5fY29tcG9uZW50SW5zdGFudGlhdGlvblByb21pc2VzW3RoaXMuZ2V0SWQoKV07XG5cblx0XHRcdFZhbHVlTGlzdEhlbHBlci5pbml0aWFsaXplQ2FjaGVkVmFsdWVIZWxwKCk7XG5cblx0XHRcdGRlbGV0ZSBBcHBDb21wb25lbnQuaW5zdGFuY2VNYXBbdGhpcy5nZXRJZCgpXTtcblxuXHRcdFx0Ly8gXHR2YXIgb1JlZ2lzdHJ5ID0gc2FwLnVpLm1kYy5wMTNuLkVuZ2luZS5nZXRJbnN0YW5jZSgpLl9nZXRSZWdpc3RyeSgpO1xuXHRcdFx0Ly8gXHRPYmplY3Qua2V5cyhvUmVnaXN0cnkpLmZvckVhY2goZnVuY3Rpb24oc0tleSkge1xuXHRcdFx0Ly8gXHRcdE9iamVjdC5rZXlzKG9SZWdpc3RyeVtzS2V5XS5jb250cm9sbGVyKS5mb3JFYWNoKGZ1bmN0aW9uKHNDb250cm9sbGVyS2V5KSB7XG5cdFx0XHQvLyBcdFx0XHRvUmVnaXN0cnlbc0tleV0uY29udHJvbGxlcltzQ29udHJvbGxlcktleV0uZGVzdHJveSgpO1xuXHRcdFx0Ly8gXHRcdH0pO1xuXHRcdFx0Ly8gXHR9KTtcblx0XHRcdC8vIFx0c2FwLnVpLm1kYy5wMTNuLkVuZ2luZS5nZXRJbnN0YW5jZSgpLmRlc3Ryb3koKTtcblx0XHRcdGRlbGV0ZSAod2luZG93IGFzIGFueSkuX3JvdXRpbmc7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0TG9nLmluZm8oZSBhcyBhbnkpO1xuXHRcdH1cblxuXHRcdC8vV09SS0FST1VORCBmb3Igc3RpY2t5IGRpc2NhcmQgcmVxdWVzdCA6IGR1ZSB0byBhc3luYyBjYWxsYmFjaywgcmVxdWVzdCB0cmlnZ2VyZWQgYnkgdGhlIGV4aXRBcHBsaWNhdGlvbiB3aWxsIGJlIHNlbmQgYWZ0ZXIgdGhlIFVJQ29tcG9uZW50LnByb3RvdHlwZS5kZXN0cm95XG5cdFx0Ly9zbyB3ZSBuZWVkIHRvIGNvcHkgdGhlIFJlcXVlc3RvciBoZWFkZXJzIGFzIGl0IHdpbGwgYmUgZGVzdHJveVxuXG5cdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuXHRcdC8vIEB0cy1pZ25vcmVcblx0XHRjb25zdCBvTWFpbk1vZGVsID0gKHRoaXMgYXMgYW55KS5vTW9kZWxzW3VuZGVmaW5lZF07XG5cdFx0Y29uc3Qgb0hlYWRlcnMgPSBqUXVlcnkuZXh0ZW5kKHt9LCBvTWFpbk1vZGVsLm9SZXF1ZXN0b3IubUhlYWRlcnMpO1xuXHRcdC8vIEFzIHdlIG5lZWQgdG8gY2xlYW51cCB0aGUgYXBwbGljYXRpb24gLyBoYW5kbGUgdGhlIGRpcnR5IG9iamVjdCB3ZSBuZWVkIHRvIGNhbGwgb3VyIGNsZWFudXAgYmVmb3JlIHRoZSBtb2RlbHMgYXJlIGRlc3Ryb3llZFxuXHRcdHRoaXMuZ2V0Um91dGluZ1NlcnZpY2UoKS5iZWZvcmVFeGl0KCk7XG5cdFx0c3VwZXIuZGVzdHJveSguLi5hcmdzKTtcblx0XHRvTWFpbk1vZGVsLm9SZXF1ZXN0b3IubUhlYWRlcnMgPSBvSGVhZGVycztcblx0fVxuXHRnZXRDb21wb25lbnREYXRhKCk6IGFueSB7XG5cdFx0cmV0dXJuIHN1cGVyLmdldENvbXBvbmVudERhdGEoKTtcblx0fVxuXHRnZXRSb3V0aW5nU2VydmljZSgpOiBSb3V0aW5nU2VydmljZSB7XG5cdFx0cmV0dXJuIHt9IGFzIFJvdXRpbmdTZXJ2aWNlOyAvLyBvdmVycmlkZW4gYXQgcnVudGltZVxuXHR9XG5cdGdldFNoZWxsU2VydmljZXMoKTogSVNoZWxsU2VydmljZXMge1xuXHRcdHJldHVybiB7fSBhcyBJU2hlbGxTZXJ2aWNlczsgLy8gb3ZlcnJpZGVuIGF0IHJ1bnRpbWVcblx0fVxuXHRnZXROYXZpZ2F0aW9uU2VydmljZSgpOiBOYXZpZ2F0aW9uU2VydmljZSB7XG5cdFx0cmV0dXJuIHt9IGFzIE5hdmlnYXRpb25TZXJ2aWNlOyAvLyBvdmVycmlkZW4gYXQgcnVudGltZVxuXHR9XG5cdGdldFNpZGVFZmZlY3RzU2VydmljZSgpOiBTaWRlRWZmZWN0c1NlcnZpY2Uge1xuXHRcdHJldHVybiB7fSBhcyBTaWRlRWZmZWN0c1NlcnZpY2U7XG5cdH1cblx0Z2V0RW52aXJvbm1lbnRDYXBhYmlsaXRpZXMoKTogRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlIHtcblx0XHRyZXR1cm4ge30gYXMgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlO1xuXHR9XG5cblx0Z2V0U3RhcnR1cFBhcmFtZXRlcnMoKSB7XG5cdFx0Y29uc3Qgb0NvbXBvbmVudERhdGEgPSB0aGlzLmdldENvbXBvbmVudERhdGEoKSBhcyBhbnk7XG5cdFx0Y29uc3Qgb1N0YXJ0VXBQYXJhbWV0ZXJzID0gKG9Db21wb25lbnREYXRhICYmIG9Db21wb25lbnREYXRhLnN0YXJ0dXBQYXJhbWV0ZXJzKSB8fCB7fTtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG9TdGFydFVwUGFyYW1ldGVycyk7XG5cdH1cblx0cmVzdG9yZSgpIHtcblx0XHQvLyBjYWxsZWQgYnkgRkxQIHdoZW4gYXBwIHNhcC1rZWVwLWFsaXZlIGlzIGVuYWJsZWQgYW5kIGFwcCBpcyByZXN0b3JlZFxuXHRcdCh0aGlzLmdldFJvb3RWaWV3Q29udHJvbGxlcigpIGFzIGFueSkudmlld1N0YXRlLm9uUmVzdG9yZSgpO1xuXHR9XG5cdHN1c3BlbmQoKSB7XG5cdFx0Ly8gY2FsbGVkIGJ5IEZMUCB3aGVuIGFwcCBzYXAta2VlcC1hbGl2ZSBpcyBlbmFibGVkIGFuZCBhcHAgaXMgc3VzcGVuZGVkXG5cdFx0KHRoaXMuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkgYXMgYW55KS52aWV3U3RhdGUub25TdXNwZW5kKCk7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQXBwQ29tcG9uZW50O1xuIl19
|
|
@@ -7,11 +7,9 @@ import JSONModel from "sap/ui/model/json/JSONModel";
|
|
|
7
7
|
import library from "sap/fe/core/library";
|
|
8
8
|
import ModelHelper from "sap/fe/core/helpers/ModelHelper";
|
|
9
9
|
import ValueListHelper from "sap/fe/macros/internal/valuehelp/ValueListHelper";
|
|
10
|
-
import {
|
|
11
|
-
import ComponentMetadata from "sap/ui/core/ComponentMetadata";
|
|
10
|
+
import { defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
|
|
12
11
|
import View from "sap/ui/core/mvc/View";
|
|
13
12
|
import ODataModel from "sap/ui/model/odata/v4/ODataModel";
|
|
14
|
-
import ResourceBundle from "sap/base/i18n/ResourceBundle";
|
|
15
13
|
import BaseController from "./BaseController";
|
|
16
14
|
import { deleteModelCacheData } from "./converters/MetaModelConverter";
|
|
17
15
|
import ODataMetaModel from "sap/ui/model/odata/v4/ODataMetaModel";
|
|
@@ -20,6 +18,8 @@ import { IShellServices } from "sap/fe/core/services/ShellServicesFactory";
|
|
|
20
18
|
import { NavigationService } from "sap/fe/core/services/NavigationServiceFactory";
|
|
21
19
|
import { SideEffectsService } from "sap/fe/core/services/SideEffectsServiceFactory";
|
|
22
20
|
import { EnvironmentCapabilitiesService } from "sap/fe/core/services/EnvironmentServiceFactory";
|
|
21
|
+
import { CoreEx } from "types/extension_types";
|
|
22
|
+
import Core from "sap/ui/core/Core";
|
|
23
23
|
|
|
24
24
|
const NAVCONF = {
|
|
25
25
|
FCL: {
|
|
@@ -46,7 +46,7 @@ const NAVCONF = {
|
|
|
46
46
|
* @public
|
|
47
47
|
* @name sap.fe.core.AppComponent
|
|
48
48
|
*/
|
|
49
|
-
@
|
|
49
|
+
@defineUI5Class("sap.fe.core.AppComponent", {
|
|
50
50
|
interfaces: ["sap.ui.core.IAsyncContentCreation"],
|
|
51
51
|
config: {
|
|
52
52
|
fullWidth: true
|
|
@@ -192,25 +192,23 @@ class AppComponent extends UIComponent {
|
|
|
192
192
|
return (this.getRootControl() as View).getContent()[0];
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
-
init(
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
}),
|
|
205
|
-
"ui"
|
|
206
|
-
);
|
|
207
|
-
|
|
195
|
+
init() {
|
|
196
|
+
const uiModel = new JSONModel({
|
|
197
|
+
editMode: library.EditMode.Display,
|
|
198
|
+
isEditable: false,
|
|
199
|
+
draftStatus: library.DraftStatus.Clear,
|
|
200
|
+
busy: false,
|
|
201
|
+
busyLocal: {},
|
|
202
|
+
pages: {}
|
|
203
|
+
});
|
|
208
204
|
const oInternalModel = new JSONModel({
|
|
209
205
|
pages: {}
|
|
210
206
|
});
|
|
211
207
|
|
|
208
|
+
ModelHelper.enhanceUiJSONModel(uiModel, library);
|
|
212
209
|
ModelHelper.enhanceInternalJSONModel(oInternalModel);
|
|
213
210
|
|
|
211
|
+
this.setModel(uiModel, "ui");
|
|
214
212
|
this.setModel(oInternalModel, "internal");
|
|
215
213
|
|
|
216
214
|
this.bInitializeRouting = this.bInitializeRouting !== undefined ? this.bInitializeRouting : true;
|
|
@@ -264,9 +262,7 @@ class AppComponent extends UIComponent {
|
|
|
264
262
|
// the init function configures the routing according to the settings above
|
|
265
263
|
// it will call the createContent function to instantiate the RootView and add it to the UIComponent aggregations
|
|
266
264
|
|
|
267
|
-
|
|
268
|
-
// @ts-ignore
|
|
269
|
-
UIComponent.prototype.init.apply(this, args);
|
|
265
|
+
super.init();
|
|
270
266
|
AppComponent.instanceMap[this.getId()] = this;
|
|
271
267
|
}
|
|
272
268
|
onServicesStarted() {
|
|
@@ -282,7 +278,7 @@ class AppComponent extends UIComponent {
|
|
|
282
278
|
this.getRouterProxy().init(this, this._isFclEnabled());
|
|
283
279
|
})
|
|
284
280
|
.catch((error: any) => {
|
|
285
|
-
const oResourceBundle =
|
|
281
|
+
const oResourceBundle = (Core as CoreEx).getLibraryResourceBundle("sap.fe.core");
|
|
286
282
|
|
|
287
283
|
(this.getRootViewController() as any).displayMessagePage(
|
|
288
284
|
oResourceBundle.getText("C_APP_COMPONENT_SAPFE_APPSTART_TECHNICAL_ISSUES"),
|
|
@@ -349,7 +345,7 @@ class AppComponent extends UIComponent {
|
|
|
349
345
|
// sap.ui.mdc.p13n.Engine.getInstance().destroy();
|
|
350
346
|
delete (window as any)._routing;
|
|
351
347
|
} catch (e) {
|
|
352
|
-
Log.info(e);
|
|
348
|
+
Log.info(e as any);
|
|
353
349
|
}
|
|
354
350
|
|
|
355
351
|
//WORKAROUND for sticky discard request : due to async callback, request triggered by the exitApplication will be send after the UIComponent.prototype.destroy
|
|
@@ -361,9 +357,7 @@ class AppComponent extends UIComponent {
|
|
|
361
357
|
const oHeaders = jQuery.extend({}, oMainModel.oRequestor.mHeaders);
|
|
362
358
|
// As we need to cleanup the application / handle the dirty object we need to call our cleanup before the models are destroyed
|
|
363
359
|
this.getRoutingService().beforeExit();
|
|
364
|
-
|
|
365
|
-
// @ts-ignore
|
|
366
|
-
UIComponent.prototype.destroy.apply(this, [args]);
|
|
360
|
+
super.destroy(...args);
|
|
367
361
|
oMainModel.oRequestor.mHeaders = oHeaders;
|
|
368
362
|
}
|
|
369
363
|
getComponentData(): any {
|
|
@@ -7,9 +7,9 @@ sap.ui.define(["sap/ui/base/Object", "sap/fe/navigation/library", "sap/base/Log"
|
|
|
7
7
|
|
|
8
8
|
var _dec, _class;
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
11
11
|
|
|
12
|
-
function
|
|
12
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
13
13
|
|
|
14
14
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
15
15
|
|
|
@@ -31,8 +31,8 @@ sap.ui.define(["sap/ui/base/Object", "sap/fe/navigation/library", "sap/base/Log"
|
|
|
31
31
|
}));
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
var AppStateHandler = (_dec =
|
|
35
|
-
|
|
34
|
+
var AppStateHandler = (_dec = defineUI5Class("sap.fe.core.AppStateHandler"), _dec(_class = /*#__PURE__*/function (_BaseObject) {
|
|
35
|
+
_inheritsLoose(AppStateHandler, _BaseObject);
|
|
36
36
|
|
|
37
37
|
// AppComponent
|
|
38
38
|
function AppStateHandler(oAppComponent) {
|
|
@@ -197,4 +197,4 @@ sap.ui.define(["sap/ui/base/Object", "sap/fe/navigation/library", "sap/base/Log"
|
|
|
197
197
|
|
|
198
198
|
return AppStateHandler;
|
|
199
199
|
}, true);
|
|
200
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFwcFN0YXRlSGFuZGxlci50cyJdLCJuYW1lcyI6WyJOYXZUeXBlIiwibGlicmFyeSIsIl90b0VTNlByb21pc2UiLCJvVGhlbmFibGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJhcmdzIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJzbGljZSIsImNhbGwiLCJjYXRjaCIsIkFwcFN0YXRlSGFuZGxlciIsIlVJNUNsYXNzIiwib0FwcENvbXBvbmVudCIsIl9tQ3VycmVudEFwcFN0YXRlIiwic0lkIiwiZ2V0SWQiLCJiTm9Sb3V0ZUNoYW5nZSIsIkxvZyIsImluZm8iLCJjcmVhdGVBcHBTdGF0ZSIsIkJ1c3lMb2NrZXIiLCJpc0xvY2tlZCIsIm9OYXZpZ2F0aW9uU2VydmljZSIsImdldE5hdmlnYXRpb25TZXJ2aWNlIiwib1JvdXRlclByb3h5IiwiZ2V0Um91dGVyUHJveHkiLCJzSGFzaCIsImdldEhhc2giLCJvQ29udHJvbGxlciIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsImJJc1N0aWNreU1vZGUiLCJNb2RlbEhlbHBlciIsImlzU3RpY2t5U2Vzc2lvblN1cHBvcnRlZCIsImdldE1ldGFNb2RlbCIsInZpZXdTdGF0ZSIsInJlamVjdCIsImdldE1ldGFkYXRhIiwiZ2V0TmFtZSIsInJldHJpZXZlVmlld1N0YXRlIiwibUlubmVyQXBwU3RhdGUiLCJvU3RvcmVEYXRhIiwiYXBwU3RhdGUiLCJkZWVwRXF1YWwiLCJvQXBwU3RhdGUiLCJzdG9yZUlubmVyQXBwU3RhdGVXaXRoSW1tZWRpYXRlUmV0dXJuIiwic0FwcFN0YXRlS2V5IiwiYXBwU3RhdGVLZXkiLCJzTmV3SGFzaCIsInJlcGxhY2VJbm5lckFwcFN0YXRlS2V5IiwibmF2VG9IYXNoIiwiX2NyZWF0ZU5hdmlnYXRpb25QYXJhbWV0ZXJzIiwib0FwcERhdGEiLCJzTmF2VHlwZSIsIk9iamVjdCIsImFzc2lnbiIsInNlbGVjdGlvblZhcmlhbnREZWZhdWx0cyIsIm9EZWZhdWx0ZWRTZWxlY3Rpb25WYXJpYW50Iiwic2VsZWN0aW9uVmFyaWFudCIsIm9TZWxlY3Rpb25WYXJpYW50IiwicmVxdWlyZXNTdGFuZGFyZFZhcmlhbnQiLCJiTmF2U2VsVmFySGFzRGVmYXVsdHNPbmx5IiwibmF2aWdhdGlvblR5cGUiLCJhcHBseUFwcFN0YXRlIiwiZ2V0TW9kZWwiLCJnZXRQcm9wZXJ0eSIsImxvY2siLCJwYXJzZU5hdmlnYXRpb24iLCJhRXJyb3JEYXRhIiwid2FybmluZyIsImFSZXN1bHRzIiwiaW5pdGlhbCIsIm9Sb290Q29udHJvbGxlciIsImlBcHBTdGF0ZSIsInVuZGVmaW5lZCIsIkVycm9yIiwiYXBwbHlWaWV3U3RhdGUiLCJvRXJyb3IiLCJlcnJvciIsImZpbmFsbHkiLCJ1bmxvY2siLCJjaGVja0lmUm91dGVDaGFuZ2VkQnlJQXBwIiwicmVzZXRSb3V0ZUNoYW5nZWRCeUlBcHAiLCJfaXNMaXN0QmFzZWRDb21wb25lbnQiLCJvQ29tcG9uZW50IiwiaXNBIiwiQmFzZU9iamVjdCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7O0FBTUEsTUFBTUEsT0FBTyxHQUFHQyxPQUFPLENBQUNELE9BQXhCOztBQUNBLFdBQVNFLGFBQVQsQ0FBdUJDLFNBQXZCLEVBQXVDO0FBQ3RDLFdBQU9DLE9BQU8sQ0FBQ0MsT0FBUixDQUNORixTQUFTLENBQ1BHLElBREYsQ0FDTyxZQUF5QjtBQUFBLHdDQUFiQyxJQUFhO0FBQWJBLFFBQUFBLElBQWE7QUFBQTs7QUFDOUIsYUFBT0MsS0FBSyxDQUFDQyxTQUFOLENBQWdCQyxLQUFoQixDQUFzQkMsSUFBdEIsQ0FBMkJKLElBQTNCLENBQVA7QUFDQSxLQUhGLEVBSUVLLEtBSkYsQ0FJUSxZQUF5QjtBQUFBLHlDQUFiTCxJQUFhO0FBQWJBLFFBQUFBLElBQWE7QUFBQTs7QUFDL0IsYUFBT0MsS0FBSyxDQUFDQyxTQUFOLENBQWdCQyxLQUFoQixDQUFzQkMsSUFBdEIsQ0FBMkJKLElBQTNCLENBQVA7QUFDQSxLQU5GLENBRE0sQ0FBUDtBQVNBOztNQUdLTSxlLFdBRExDLFFBQVEsQ0FBQyw2QkFBRCxDOzs7QUFHbUI7QUFHM0IsNkJBQVlDLGFBQVosRUFBZ0M7QUFBQTs7QUFDL0I7QUFEK0IsWUFEeEJDLGlCQUN3QixHQURpQixFQUNqQjtBQUUvQixZQUFLRCxhQUFMLEdBQXFCQSxhQUFyQjtBQUNBLFlBQUtFLEdBQUwsR0FBV0YsYUFBYSxDQUFDRyxLQUFkLEtBQXdCLGtCQUFuQztBQUVBLFlBQUtDLGNBQUwsR0FBc0IsS0FBdEI7QUFDQUMsTUFBQUEsR0FBRyxDQUFDQyxJQUFKLENBQVMseUNBQVQ7QUFOK0I7QUFPL0I7Ozs7V0FDREgsSyxHQUFBLGlCQUFRO0FBQ1AsYUFBTyxLQUFLRCxHQUFaO0FBQ0E7QUFDRDtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztXQUNDSyxjLEdBQUEsMEJBQWlCO0FBQUE7O0FBQ2hCLFVBQUlDLFVBQVUsQ0FBQ0MsUUFBWCxDQUFvQixJQUFwQixDQUFKLEVBQStCO0FBQzlCLGVBQU9wQixPQUFPLENBQUNDLE9BQVIsRUFBUDtBQUNBOztBQUVELFVBQU1vQixrQkFBa0IsR0FBRyxLQUFLVixhQUFMLENBQW1CVyxvQkFBbkIsRUFBM0I7QUFBQSxVQUNDQyxZQUFZLEdBQUcsS0FBS1osYUFBTCxDQUFtQmEsY0FBbkIsRUFEaEI7QUFBQSxVQUVDQyxLQUFLLEdBQUdGLFlBQVksQ0FBQ0csT0FBYixFQUZUO0FBQUEsVUFHQ0MsV0FBVyxHQUFHLEtBQUtoQixhQUFMLENBQW1CaUIsY0FBbkIsR0FBb0NDLGFBQXBDLEVBSGY7QUFBQSxVQUlDQyxhQUFhLEdBQUdDLFdBQVcsQ0FBQ0Msd0JBQVosQ0FBcUMsS0FBS3JCLGFBQUwsQ0FBbUJzQixZQUFuQixFQUFyQyxDQUpqQjs7QUFNQSxVQUFJLENBQUNOLFdBQVcsQ0FBQ08sU0FBakIsRUFBNEI7QUFDM0IsZUFBT2xDLE9BQU8sQ0FBQ21DLE1BQVIsQ0FBZSxrRUFBa0VSLFdBQVcsQ0FBQ1MsV0FBWixHQUEwQkMsT0FBMUIsRUFBakYsQ0FBUDtBQUNBOztBQUVELGFBQU9WLFdBQVcsQ0FBQ08sU0FBWixDQUFzQkksaUJBQXRCLEdBQTBDcEMsSUFBMUMsQ0FBK0MsVUFBQ3FDLGNBQUQsRUFBeUI7QUFDOUUsWUFBTUMsVUFBVSxHQUFHO0FBQUVDLFVBQUFBLFFBQVEsRUFBRUY7QUFBWixTQUFuQjs7QUFDQSxZQUFJQSxjQUFjLElBQUksQ0FBQ0csU0FBUyxDQUFDLE1BQUksQ0FBQzlCLGlCQUFOLEVBQXlCMkIsY0FBekIsQ0FBaEMsRUFBMEU7QUFDekUsVUFBQSxNQUFJLENBQUMzQixpQkFBTCxHQUF5QjJCLGNBQXpCO0FBQ0EsY0FBTUksU0FBUyxHQUFHdEIsa0JBQWtCLENBQUN1QixxQ0FBbkIsQ0FBeURKLFVBQXpELEVBQXFFLElBQXJFLENBQWxCO0FBQ0F4QixVQUFBQSxHQUFHLENBQUNDLElBQUosQ0FBUywyQkFBVDtBQUNBLGNBQU00QixZQUFZLEdBQUdGLFNBQVMsQ0FBQ0csV0FBL0I7QUFDQSxjQUFNQyxRQUFRLEdBQUcxQixrQkFBa0IsQ0FBQzJCLHVCQUFuQixDQUEyQ3ZCLEtBQTNDLEVBQWtEb0IsWUFBbEQsQ0FBakI7O0FBQ0EsY0FBSUUsUUFBUSxLQUFLdEIsS0FBakIsRUFBd0I7QUFDdkJGLFlBQUFBLFlBQVksQ0FBQzBCLFNBQWIsQ0FBdUJGLFFBQXZCLEVBQWlDLElBQWpDLEVBQXVDLElBQXZDLEVBQTZDLElBQTdDLEVBQW1ELENBQUNqQixhQUFwRDtBQUNBLFlBQUEsTUFBSSxDQUFDZixjQUFMLEdBQXNCLElBQXRCO0FBQ0E7O0FBQ0RDLFVBQUFBLEdBQUcsQ0FBQ0MsSUFBSixDQUFTLHFCQUFUO0FBQ0E7O0FBQ0QsZUFBT3VCLFVBQVA7QUFDQSxPQWZNLENBQVA7QUFnQkEsSzs7V0FFRFUsMkIsR0FBQSxxQ0FBNEJDLFFBQTVCLEVBQTJDQyxRQUEzQyxFQUEwRDtBQUN6RCxhQUFPQyxNQUFNLENBQUNDLE1BQVAsQ0FBYyxFQUFkLEVBQWtCSCxRQUFsQixFQUE0QjtBQUNsQ0ksUUFBQUEsd0JBQXdCLEVBQUVKLFFBQVEsQ0FBQ0ssMEJBREQ7QUFFbENDLFFBQUFBLGdCQUFnQixFQUFFTixRQUFRLENBQUNPLGlCQUZPO0FBR2xDQyxRQUFBQSx1QkFBdUIsRUFBRSxDQUFDUixRQUFRLENBQUNTLHlCQUhEO0FBSWxDQyxRQUFBQSxjQUFjLEVBQUVUO0FBSmtCLE9BQTVCLENBQVA7QUFNQTtBQUVEO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7V0FDQ1UsYSxHQUFBLHlCQUFnQjtBQUFBOztBQUNmLFVBQUksS0FBS25ELGFBQUwsQ0FBbUJvRCxRQUFuQixDQUE0QixVQUE1QixFQUF3Q0MsV0FBeEMsQ0FBb0QsZUFBcEQsS0FBd0U3QyxVQUFVLENBQUNDLFFBQVgsQ0FBb0IsSUFBcEIsQ0FBNUUsRUFBdUc7QUFDdEcsZUFBT3BCLE9BQU8sQ0FBQ0MsT0FBUixFQUFQO0FBQ0E7O0FBQ0RrQixNQUFBQSxVQUFVLENBQUM4QyxJQUFYLENBQWdCLElBQWhCLEVBSmUsQ0FLZjs7QUFDQTlDLE1BQUFBLFVBQVUsQ0FBQzhDLElBQVgsQ0FBZ0IsS0FBS3RELGFBQUwsQ0FBbUJpQixjQUFuQixFQUFoQjtBQUVBLFVBQU1QLGtCQUFrQixHQUFHLEtBQUtWLGFBQUwsQ0FBbUJXLG9CQUFuQixFQUEzQixDQVJlLENBU2Y7O0FBQ0EsYUFBT3hCLGFBQWEsQ0FBQ3VCLGtCQUFrQixDQUFDNkMsZUFBbkIsRUFBRCxDQUFiLENBQ0wxRCxLQURLLENBQ0MsVUFBUzJELFVBQVQsRUFBMEI7QUFDaEMsWUFBSSxDQUFDQSxVQUFMLEVBQWlCO0FBQ2hCQSxVQUFBQSxVQUFVLEdBQUcsRUFBYjtBQUNBOztBQUNEbkQsUUFBQUEsR0FBRyxDQUFDb0QsT0FBSixDQUFZLG1DQUFaLEVBQWlERCxVQUFVLENBQUMsQ0FBRCxDQUEzRDtBQUNBLGVBQU8sQ0FDTjtBQUNDO0FBREQsU0FETSxFQUlOQSxVQUFVLENBQUMsQ0FBRCxDQUpKLEVBS05BLFVBQVUsQ0FBQyxDQUFELENBTEosQ0FBUDtBQU9BLE9BYkssRUFjTGpFLElBZEssQ0FjQSxVQUFDbUUsUUFBRCxFQUFtQjtBQUN4QnJELFFBQUFBLEdBQUcsQ0FBQ0MsSUFBSixDQUFTLGlDQUFULEVBRHdCLENBR3hCOztBQUNBLFlBQU1rQyxRQUFRLEdBQUdrQixRQUFRLENBQUMsQ0FBRCxDQUFSLElBQWUsRUFBaEM7QUFBQSxZQUNDakIsUUFBUSxHQUFHaUIsUUFBUSxDQUFDLENBQUQsQ0FBUixJQUFlekUsT0FBTyxDQUFDMEUsT0FEbkM7QUFBQSxZQUVDQyxlQUFlLEdBQUcsTUFBSSxDQUFDNUQsYUFBTCxDQUFtQmlCLGNBQW5CLEdBQW9DQyxhQUFwQyxFQUZuQjs7QUFJQSxRQUFBLE1BQUksQ0FBQ2pCLGlCQUFMLEdBQXlCd0MsUUFBUSxLQUFLeEQsT0FBTyxDQUFDNEUsU0FBckIsR0FBaUNyQixRQUFRLElBQUlBLFFBQVEsQ0FBQ1YsUUFBdEQsR0FBaUVnQyxTQUExRjs7QUFFQSxZQUFJLENBQUNGLGVBQWUsQ0FBQ3JDLFNBQXJCLEVBQWdDO0FBQy9CLGdCQUFNLElBQUl3QyxLQUFKLENBQVUsaURBQWlESCxlQUFlLENBQUNuQyxXQUFoQixHQUE4QkMsT0FBOUIsRUFBM0QsQ0FBTjtBQUNBOztBQUVELGVBQU9rQyxlQUFlLENBQUNyQyxTQUFoQixDQUNMeUMsY0FESyxDQUNVLE1BQUksQ0FBQy9ELGlCQURmLEVBQ2tDLE1BQUksQ0FBQ3NDLDJCQUFMLENBQWlDQyxRQUFqQyxFQUEyQ0MsUUFBM0MsQ0FEbEMsRUFFTDVDLEtBRkssQ0FFQyxVQUFTb0UsTUFBVCxFQUFzQjtBQUM1QjVELFVBQUFBLEdBQUcsQ0FBQzZELEtBQUosQ0FBVSwrQkFBVixFQUEyQ0QsTUFBM0M7QUFDQSxnQkFBTUEsTUFBTjtBQUNBLFNBTEssQ0FBUDtBQU1BLE9BbENLLEVBbUNMRSxPQW5DSyxDQW1DRyxZQUFNO0FBQ2QzRCxRQUFBQSxVQUFVLENBQUM0RCxNQUFYLENBQWtCLE1BQWxCO0FBQ0E1RCxRQUFBQSxVQUFVLENBQUM0RCxNQUFYLENBQWtCLE1BQUksQ0FBQ3BFLGFBQUwsQ0FBbUJpQixjQUFuQixFQUFsQjtBQUNBLE9BdENLLENBQVA7QUF1Q0E7QUFDRDtBQUNEO0FBQ0E7QUFDQTtBQUNBOzs7V0FDQ29ELHlCLEdBQUEscUNBQTRCO0FBQzNCLGFBQU8sS0FBS2pFLGNBQVo7QUFDQTtBQUNEO0FBQ0Q7QUFDQTs7O1dBQ0NrRSx1QixHQUFBLG1DQUEwQjtBQUN6QixVQUFJLEtBQUtsRSxjQUFULEVBQXlCO0FBQ3hCLGFBQUtBLGNBQUwsR0FBc0IsS0FBdEI7QUFDQTtBQUNELEs7O1dBQ0RtRSxxQixHQUFBLCtCQUFzQkMsVUFBdEIsRUFBdUM7QUFDdEMsYUFBT0EsVUFBVSxDQUFDQyxHQUFYLENBQWUsZ0NBQWYsQ0FBUDtBQUNBLEs7OztJQTlJNEJDLFU7QUFpSjlCO0FBQ0E7QUFDQTs7U0FDZTVFLGUiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlT2JqZWN0IGZyb20gXCJzYXAvdWkvYmFzZS9PYmplY3RcIjtcbmltcG9ydCBsaWJyYXJ5IGZyb20gXCJzYXAvZmUvbmF2aWdhdGlvbi9saWJyYXJ5XCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBkZWVwRXF1YWwgZnJvbSBcInNhcC9iYXNlL3V0aWwvZGVlcEVxdWFsXCI7XG5pbXBvcnQgeyBVSTVDbGFzcyB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEJ1c3lMb2NrZXIgZnJvbSBcIi4vQnVzeUxvY2tlclwiO1xuaW1wb3J0IE1vZGVsSGVscGVyIGZyb20gXCIuL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcblxuY29uc3QgTmF2VHlwZSA9IGxpYnJhcnkuTmF2VHlwZTtcbmZ1bmN0aW9uIF90b0VTNlByb21pc2Uob1RoZW5hYmxlOiBhbnkpIHtcblx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShcblx0XHRvVGhlbmFibGVcblx0XHRcdC50aGVuKGZ1bmN0aW9uKC4uLmFyZ3M6IGFueVtdKSB7XG5cdFx0XHRcdHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmdzKTtcblx0XHRcdH0pXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24oLi4uYXJnczogYW55W10pIHtcblx0XHRcdFx0cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3MpO1xuXHRcdFx0fSlcblx0KTtcbn1cblxuQFVJNUNsYXNzKFwic2FwLmZlLmNvcmUuQXBwU3RhdGVIYW5kbGVyXCIpXG5jbGFzcyBBcHBTdGF0ZUhhbmRsZXIgZXh0ZW5kcyBCYXNlT2JqZWN0IHtcblx0cHVibGljIHNJZDogc3RyaW5nO1xuXHRwdWJsaWMgb0FwcENvbXBvbmVudDogYW55OyAvLyBBcHBDb21wb25lbnRcblx0cHVibGljIGJOb1JvdXRlQ2hhbmdlOiBib29sZWFuO1xuXHRwcml2YXRlIF9tQ3VycmVudEFwcFN0YXRlOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG5cdGNvbnN0cnVjdG9yKG9BcHBDb21wb25lbnQ6IGFueSkge1xuXHRcdHN1cGVyKCk7XG5cdFx0dGhpcy5vQXBwQ29tcG9uZW50ID0gb0FwcENvbXBvbmVudDtcblx0XHR0aGlzLnNJZCA9IG9BcHBDb21wb25lbnQuZ2V0SWQoKSArIFwiL0FwcFN0YXRlSGFuZGxlclwiO1xuXG5cdFx0dGhpcy5iTm9Sb3V0ZUNoYW5nZSA9IGZhbHNlO1xuXHRcdExvZy5pbmZvKFwiQVBQU1RBVEUgOiBBcHBzdGF0ZSBoYW5kbGVyIGluaXRpYWxpemVkXCIpO1xuXHR9XG5cdGdldElkKCkge1xuXHRcdHJldHVybiB0aGlzLnNJZDtcblx0fVxuXHQvKipcblx0ICogQ3JlYXRlcy91cGRhdGVzIHRoZSBhcHBzdGF0ZS5cblx0ICpcblx0ICogQHJldHVybnMge1Byb21pc2V9IEEgcHJvbWlzZSByZXNvbHZpbmcgdGhlIHN0b3JlZCBkYXRhXG5cdCAqIEB1aTUtcmVzdHJpY3RlZFxuXHQgKi9cblx0Y3JlYXRlQXBwU3RhdGUoKSB7XG5cdFx0aWYgKEJ1c3lMb2NrZXIuaXNMb2NrZWQodGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHR9XG5cblx0XHRjb25zdCBvTmF2aWdhdGlvblNlcnZpY2UgPSB0aGlzLm9BcHBDb21wb25lbnQuZ2V0TmF2aWdhdGlvblNlcnZpY2UoKSxcblx0XHRcdG9Sb3V0ZXJQcm94eSA9IHRoaXMub0FwcENvbXBvbmVudC5nZXRSb3V0ZXJQcm94eSgpLFxuXHRcdFx0c0hhc2ggPSBvUm91dGVyUHJveHkuZ2V0SGFzaCgpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Um9vdENvbnRyb2woKS5nZXRDb250cm9sbGVyKCksXG5cdFx0XHRiSXNTdGlja3lNb2RlID0gTW9kZWxIZWxwZXIuaXNTdGlja3lTZXNzaW9uU3VwcG9ydGVkKHRoaXMub0FwcENvbXBvbmVudC5nZXRNZXRhTW9kZWwoKSk7XG5cblx0XHRpZiAoIW9Db250cm9sbGVyLnZpZXdTdGF0ZSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KFwidmlld1N0YXRlIGNvbnRyb2xsZXIgZXh0ZW5zaW9uIG5vdCBhdmFpbGFibGUgZm9yIGNvbnRyb2xsZXI6IFwiICsgb0NvbnRyb2xsZXIuZ2V0TWV0YWRhdGEoKS5nZXROYW1lKCkpO1xuXHRcdH1cblxuXHRcdHJldHVybiBvQ29udHJvbGxlci52aWV3U3RhdGUucmV0cmlldmVWaWV3U3RhdGUoKS50aGVuKChtSW5uZXJBcHBTdGF0ZTogYW55KSA9PiB7XG5cdFx0XHRjb25zdCBvU3RvcmVEYXRhID0geyBhcHBTdGF0ZTogbUlubmVyQXBwU3RhdGUgfTtcblx0XHRcdGlmIChtSW5uZXJBcHBTdGF0ZSAmJiAhZGVlcEVxdWFsKHRoaXMuX21DdXJyZW50QXBwU3RhdGUsIG1Jbm5lckFwcFN0YXRlKSkge1xuXHRcdFx0XHR0aGlzLl9tQ3VycmVudEFwcFN0YXRlID0gbUlubmVyQXBwU3RhdGU7XG5cdFx0XHRcdGNvbnN0IG9BcHBTdGF0ZSA9IG9OYXZpZ2F0aW9uU2VydmljZS5zdG9yZUlubmVyQXBwU3RhdGVXaXRoSW1tZWRpYXRlUmV0dXJuKG9TdG9yZURhdGEsIHRydWUpO1xuXHRcdFx0XHRMb2cuaW5mbyhcIkFQUFNUQVRFOiBBcHBzdGF0ZSBzdG9yZWRcIik7XG5cdFx0XHRcdGNvbnN0IHNBcHBTdGF0ZUtleSA9IG9BcHBTdGF0ZS5hcHBTdGF0ZUtleTtcblx0XHRcdFx0Y29uc3Qgc05ld0hhc2ggPSBvTmF2aWdhdGlvblNlcnZpY2UucmVwbGFjZUlubmVyQXBwU3RhdGVLZXkoc0hhc2gsIHNBcHBTdGF0ZUtleSk7XG5cdFx0XHRcdGlmIChzTmV3SGFzaCAhPT0gc0hhc2gpIHtcblx0XHRcdFx0XHRvUm91dGVyUHJveHkubmF2VG9IYXNoKHNOZXdIYXNoLCBudWxsLCBudWxsLCBudWxsLCAhYklzU3RpY2t5TW9kZSk7XG5cdFx0XHRcdFx0dGhpcy5iTm9Sb3V0ZUNoYW5nZSA9IHRydWU7XG5cdFx0XHRcdH1cblx0XHRcdFx0TG9nLmluZm8oXCJBUFBTVEFURTogbmF2VG9IYXNoXCIpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIG9TdG9yZURhdGE7XG5cdFx0fSk7XG5cdH1cblxuXHRfY3JlYXRlTmF2aWdhdGlvblBhcmFtZXRlcnMob0FwcERhdGE6IGFueSwgc05hdlR5cGU6IGFueSkge1xuXHRcdHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBvQXBwRGF0YSwge1xuXHRcdFx0c2VsZWN0aW9uVmFyaWFudERlZmF1bHRzOiBvQXBwRGF0YS5vRGVmYXVsdGVkU2VsZWN0aW9uVmFyaWFudCxcblx0XHRcdHNlbGVjdGlvblZhcmlhbnQ6IG9BcHBEYXRhLm9TZWxlY3Rpb25WYXJpYW50LFxuXHRcdFx0cmVxdWlyZXNTdGFuZGFyZFZhcmlhbnQ6ICFvQXBwRGF0YS5iTmF2U2VsVmFySGFzRGVmYXVsdHNPbmx5LFxuXHRcdFx0bmF2aWdhdGlvblR5cGU6IHNOYXZUeXBlXG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQXBwbGllcyBhbiBhcHBzdGF0ZSBieSBmZXRjaGluZyBhcHBkYXRhIGFuZCBwYXNzaW5nIGl0IHRvIF9hcHBseUFwcHN0YXRlVG9QYWdlLlxuXHQgKlxuXHQgKiBAZnVuY3Rpb25cblx0ICogQHN0YXRpY1xuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLmNvcmUuQXBwU3RhdGVIYW5kbGVyXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfSBBIHByb21pc2UgZm9yIGFzeW5jIGhhbmRsaW5nXG5cdCAqIEBwcml2YXRlXG5cdCAqIEB1aTUtcmVzdHJpY3RlZFxuXHQgKiovXG5cdGFwcGx5QXBwU3RhdGUoKSB7XG5cdFx0aWYgKHRoaXMub0FwcENvbXBvbmVudC5nZXRNb2RlbChcImludGVybmFsXCIpLmdldFByb3BlcnR5KFwiL3VpQWRhcHRhdGlvblwiKSB8fCBCdXN5TG9ja2VyLmlzTG9ja2VkKHRoaXMpKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0fVxuXHRcdEJ1c3lMb2NrZXIubG9jayh0aGlzKTtcblx0XHQvLyBEb25lIGZvciBidXN5IGluZGljYXRvclxuXHRcdEJ1c3lMb2NrZXIubG9jayh0aGlzLm9BcHBDb21wb25lbnQuZ2V0Um9vdENvbnRyb2woKSk7XG5cblx0XHRjb25zdCBvTmF2aWdhdGlvblNlcnZpY2UgPSB0aGlzLm9BcHBDb21wb25lbnQuZ2V0TmF2aWdhdGlvblNlcnZpY2UoKTtcblx0XHQvLyBUT0RPIG9OYXZpZ2F0aW9uU2VydmljZS5wYXJzZU5hdmlnYXRpb24oKSBzaG91bGQgcmV0dXJuIEVTNiBwcm9taXNlIGluc3RlYWQgalF1ZXJ5LnByb21pc2Vcblx0XHRyZXR1cm4gX3RvRVM2UHJvbWlzZShvTmF2aWdhdGlvblNlcnZpY2UucGFyc2VOYXZpZ2F0aW9uKCkpXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24oYUVycm9yRGF0YTogYW55KSB7XG5cdFx0XHRcdGlmICghYUVycm9yRGF0YSkge1xuXHRcdFx0XHRcdGFFcnJvckRhdGEgPSBbXTtcblx0XHRcdFx0fVxuXHRcdFx0XHRMb2cud2FybmluZyhcIkFQUFNUQVRFOiBQYXJzZSBOYXZpZ2F0aW9uIGZhaWxlZFwiLCBhRXJyb3JEYXRhWzBdKTtcblx0XHRcdFx0cmV0dXJuIFtcblx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHQvKiBhcHAgZGF0YSAqL1xuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0YUVycm9yRGF0YVsxXSxcblx0XHRcdFx0XHRhRXJyb3JEYXRhWzJdXG5cdFx0XHRcdF07XG5cdFx0XHR9KVxuXHRcdFx0LnRoZW4oKGFSZXN1bHRzOiBhbnkpID0+IHtcblx0XHRcdFx0TG9nLmluZm8oXCJBUFBTVEFURTogUGFyc2UgTmF2aWdhdGlvbiBkb25lXCIpO1xuXG5cdFx0XHRcdC8vIGFSZXN1bHRzWzFdID0+IG9TdGFydHVwUGFyYW1ldGVycyAobm90IGV2YWx1YXRlZClcblx0XHRcdFx0Y29uc3Qgb0FwcERhdGEgPSBhUmVzdWx0c1swXSB8fCB7fSxcblx0XHRcdFx0XHRzTmF2VHlwZSA9IGFSZXN1bHRzWzJdIHx8IE5hdlR5cGUuaW5pdGlhbCxcblx0XHRcdFx0XHRvUm9vdENvbnRyb2xsZXIgPSB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Um9vdENvbnRyb2woKS5nZXRDb250cm9sbGVyKCk7XG5cblx0XHRcdFx0dGhpcy5fbUN1cnJlbnRBcHBTdGF0ZSA9IHNOYXZUeXBlID09PSBOYXZUeXBlLmlBcHBTdGF0ZSA/IG9BcHBEYXRhICYmIG9BcHBEYXRhLmFwcFN0YXRlIDogdW5kZWZpbmVkO1xuXG5cdFx0XHRcdGlmICghb1Jvb3RDb250cm9sbGVyLnZpZXdTdGF0ZSkge1xuXHRcdFx0XHRcdHRocm93IG5ldyBFcnJvcihcInZpZXdTdGF0ZSBleHRlbnNpb24gcmVxdWlyZWQgZm9yIGNvbnRyb2xsZXIgXCIgKyBvUm9vdENvbnRyb2xsZXIuZ2V0TWV0YWRhdGEoKS5nZXROYW1lKCkpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0cmV0dXJuIG9Sb290Q29udHJvbGxlci52aWV3U3RhdGVcblx0XHRcdFx0XHQuYXBwbHlWaWV3U3RhdGUodGhpcy5fbUN1cnJlbnRBcHBTdGF0ZSwgdGhpcy5fY3JlYXRlTmF2aWdhdGlvblBhcmFtZXRlcnMob0FwcERhdGEsIHNOYXZUeXBlKSlcblx0XHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24ob0Vycm9yOiBhbnkpIHtcblx0XHRcdFx0XHRcdExvZy5lcnJvcihcImFwcFN0YXRlIGNvdWxkIG5vdCBiZSBhcHBsaWVkXCIsIG9FcnJvcik7XG5cdFx0XHRcdFx0XHR0aHJvdyBvRXJyb3I7XG5cdFx0XHRcdFx0fSk7XG5cdFx0XHR9KVxuXHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRCdXN5TG9ja2VyLnVubG9jayh0aGlzKTtcblx0XHRcdFx0QnVzeUxvY2tlci51bmxvY2sodGhpcy5vQXBwQ29tcG9uZW50LmdldFJvb3RDb250cm9sKCkpO1xuXHRcdFx0fSk7XG5cdH1cblx0LyoqXG5cdCAqIFRvIGNoZWNrIGlzIHJvdXRlIGlzIGNoYW5nZWQgYnkgY2hhbmdlIGluIHRoZSBpQVBQU3RhdGUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIHtib29sZWFufVxuXHQgKiovXG5cdGNoZWNrSWZSb3V0ZUNoYW5nZWRCeUlBcHAoKSB7XG5cdFx0cmV0dXJuIHRoaXMuYk5vUm91dGVDaGFuZ2U7XG5cdH1cblx0LyoqXG5cdCAqIFJlc2V0IHRoZSByb3V0ZSBjaGFuZ2VkIGJ5IGlBUFBTdGF0ZS5cblx0ICoqL1xuXHRyZXNldFJvdXRlQ2hhbmdlZEJ5SUFwcCgpIHtcblx0XHRpZiAodGhpcy5iTm9Sb3V0ZUNoYW5nZSkge1xuXHRcdFx0dGhpcy5iTm9Sb3V0ZUNoYW5nZSA9IGZhbHNlO1xuXHRcdH1cblx0fVxuXHRfaXNMaXN0QmFzZWRDb21wb25lbnQob0NvbXBvbmVudDogYW55KSB7XG5cdFx0cmV0dXJuIG9Db21wb25lbnQuaXNBKFwic2FwLmZlLnRlbXBsYXRlcy5MaXN0Q29tcG9uZW50XCIpO1xuXHR9XG59XG5cbi8qKlxuICogQGdsb2JhbFxuICovXG5leHBvcnQgZGVmYXVsdCBBcHBTdGF0ZUhhbmRsZXI7XG4iXX0=
|
|
200
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFwcFN0YXRlSGFuZGxlci50cyJdLCJuYW1lcyI6WyJOYXZUeXBlIiwibGlicmFyeSIsIl90b0VTNlByb21pc2UiLCJvVGhlbmFibGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJhcmdzIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJzbGljZSIsImNhbGwiLCJjYXRjaCIsIkFwcFN0YXRlSGFuZGxlciIsImRlZmluZVVJNUNsYXNzIiwib0FwcENvbXBvbmVudCIsIl9tQ3VycmVudEFwcFN0YXRlIiwic0lkIiwiZ2V0SWQiLCJiTm9Sb3V0ZUNoYW5nZSIsIkxvZyIsImluZm8iLCJjcmVhdGVBcHBTdGF0ZSIsIkJ1c3lMb2NrZXIiLCJpc0xvY2tlZCIsIm9OYXZpZ2F0aW9uU2VydmljZSIsImdldE5hdmlnYXRpb25TZXJ2aWNlIiwib1JvdXRlclByb3h5IiwiZ2V0Um91dGVyUHJveHkiLCJzSGFzaCIsImdldEhhc2giLCJvQ29udHJvbGxlciIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsImJJc1N0aWNreU1vZGUiLCJNb2RlbEhlbHBlciIsImlzU3RpY2t5U2Vzc2lvblN1cHBvcnRlZCIsImdldE1ldGFNb2RlbCIsInZpZXdTdGF0ZSIsInJlamVjdCIsImdldE1ldGFkYXRhIiwiZ2V0TmFtZSIsInJldHJpZXZlVmlld1N0YXRlIiwibUlubmVyQXBwU3RhdGUiLCJvU3RvcmVEYXRhIiwiYXBwU3RhdGUiLCJkZWVwRXF1YWwiLCJvQXBwU3RhdGUiLCJzdG9yZUlubmVyQXBwU3RhdGVXaXRoSW1tZWRpYXRlUmV0dXJuIiwic0FwcFN0YXRlS2V5IiwiYXBwU3RhdGVLZXkiLCJzTmV3SGFzaCIsInJlcGxhY2VJbm5lckFwcFN0YXRlS2V5IiwibmF2VG9IYXNoIiwiX2NyZWF0ZU5hdmlnYXRpb25QYXJhbWV0ZXJzIiwib0FwcERhdGEiLCJzTmF2VHlwZSIsIk9iamVjdCIsImFzc2lnbiIsInNlbGVjdGlvblZhcmlhbnREZWZhdWx0cyIsIm9EZWZhdWx0ZWRTZWxlY3Rpb25WYXJpYW50Iiwic2VsZWN0aW9uVmFyaWFudCIsIm9TZWxlY3Rpb25WYXJpYW50IiwicmVxdWlyZXNTdGFuZGFyZFZhcmlhbnQiLCJiTmF2U2VsVmFySGFzRGVmYXVsdHNPbmx5IiwibmF2aWdhdGlvblR5cGUiLCJhcHBseUFwcFN0YXRlIiwiZ2V0TW9kZWwiLCJnZXRQcm9wZXJ0eSIsImxvY2siLCJwYXJzZU5hdmlnYXRpb24iLCJhRXJyb3JEYXRhIiwid2FybmluZyIsImFSZXN1bHRzIiwiaW5pdGlhbCIsIm9Sb290Q29udHJvbGxlciIsImlBcHBTdGF0ZSIsInVuZGVmaW5lZCIsIkVycm9yIiwiYXBwbHlWaWV3U3RhdGUiLCJvRXJyb3IiLCJlcnJvciIsImZpbmFsbHkiLCJ1bmxvY2siLCJjaGVja0lmUm91dGVDaGFuZ2VkQnlJQXBwIiwicmVzZXRSb3V0ZUNoYW5nZWRCeUlBcHAiLCJfaXNMaXN0QmFzZWRDb21wb25lbnQiLCJvQ29tcG9uZW50IiwiaXNBIiwiQmFzZU9iamVjdCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7O0FBTUEsTUFBTUEsT0FBTyxHQUFHQyxPQUFPLENBQUNELE9BQXhCOztBQUNBLFdBQVNFLGFBQVQsQ0FBdUJDLFNBQXZCLEVBQXVDO0FBQ3RDLFdBQU9DLE9BQU8sQ0FBQ0MsT0FBUixDQUNORixTQUFTLENBQ1BHLElBREYsQ0FDTyxZQUF5QjtBQUFBLHdDQUFiQyxJQUFhO0FBQWJBLFFBQUFBLElBQWE7QUFBQTs7QUFDOUIsYUFBT0MsS0FBSyxDQUFDQyxTQUFOLENBQWdCQyxLQUFoQixDQUFzQkMsSUFBdEIsQ0FBMkJKLElBQTNCLENBQVA7QUFDQSxLQUhGLEVBSUVLLEtBSkYsQ0FJUSxZQUF5QjtBQUFBLHlDQUFiTCxJQUFhO0FBQWJBLFFBQUFBLElBQWE7QUFBQTs7QUFDL0IsYUFBT0MsS0FBSyxDQUFDQyxTQUFOLENBQWdCQyxLQUFoQixDQUFzQkMsSUFBdEIsQ0FBMkJKLElBQTNCLENBQVA7QUFDQSxLQU5GLENB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LEVBQWxCO0FBQ0EsT0F0Q0ssQ0FBUDtBQXVDQTtBQUNEO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7OztXQUNDb0QseUIsR0FBQSxxQ0FBNEI7QUFDM0IsYUFBTyxLQUFLakUsY0FBWjtBQUNBO0FBQ0Q7QUFDRDtBQUNBOzs7V0FDQ2tFLHVCLEdBQUEsbUNBQTBCO0FBQ3pCLFVBQUksS0FBS2xFLGNBQVQsRUFBeUI7QUFDeEIsYUFBS0EsY0FBTCxHQUFzQixLQUF0QjtBQUNBO0FBQ0QsSzs7V0FDRG1FLHFCLEdBQUEsK0JBQXNCQyxVQUF0QixFQUF1QztBQUN0QyxhQUFPQSxVQUFVLENBQUNDLEdBQVgsQ0FBZSxnQ0FBZixDQUFQO0FBQ0EsSzs7O0lBOUk0QkMsVTtBQWlKOUI7QUFDQTtBQUNBOztTQUNlNUUsZSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VPYmplY3QgZnJvbSBcInNhcC91aS9iYXNlL09iamVjdFwiO1xuaW1wb3J0IGxpYnJhcnkgZnJvbSBcInNhcC9mZS9uYXZpZ2F0aW9uL2xpYnJhcnlcIjtcbmltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwic2FwL2Jhc2UvdXRpbC9kZWVwRXF1YWxcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQnVzeUxvY2tlciBmcm9tIFwiLi9CdXN5TG9ja2VyXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcIi4vaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuXG5jb25zdCBOYXZUeXBlID0gbGlicmFyeS5OYXZUeXBlO1xuZnVuY3Rpb24gX3RvRVM2UHJvbWlzZShvVGhlbmFibGU6IGFueSkge1xuXHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFxuXHRcdG9UaGVuYWJsZVxuXHRcdFx0LnRoZW4oZnVuY3Rpb24oLi4uYXJnczogYW55W10pIHtcblx0XHRcdFx0cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3MpO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiguLi5hcmdzOiBhbnlbXSkge1xuXHRcdFx0XHRyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJncyk7XG5cdFx0XHR9KVxuXHQpO1xufVxuXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuY29yZS5BcHBTdGF0ZUhhbmRsZXJcIilcbmNsYXNzIEFwcFN0YXRlSGFuZGxlciBleHRlbmRzIEJhc2VPYmplY3Qge1xuXHRwdWJsaWMgc0lkOiBzdHJpbmc7XG5cdHB1YmxpYyBvQXBwQ29tcG9uZW50OiBhbnk7IC8vIEFwcENvbXBvbmVudFxuXHRwdWJsaWMgYk5vUm91dGVDaGFuZ2U6IGJvb2xlYW47XG5cdHByaXZhdGUgX21DdXJyZW50QXBwU3RhdGU6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblx0Y29uc3RydWN0b3Iob0FwcENvbXBvbmVudDogYW55KSB7XG5cdFx0c3VwZXIoKTtcblx0XHR0aGlzLm9BcHBDb21wb25lbnQgPSBvQXBwQ29tcG9uZW50O1xuXHRcdHRoaXMuc0lkID0gb0FwcENvbXBvbmVudC5nZXRJZCgpICsgXCIvQXBwU3RhdGVIYW5kbGVyXCI7XG5cblx0XHR0aGlzLmJOb1JvdXRlQ2hhbmdlID0gZmFsc2U7XG5cdFx0TG9nLmluZm8oXCJBUFBTVEFURSA6IEFwcHN0YXRlIGhhbmRsZXIgaW5pdGlhbGl6ZWRcIik7XG5cdH1cblx0Z2V0SWQoKSB7XG5cdFx0cmV0dXJuIHRoaXMuc0lkO1xuXHR9XG5cdC8qKlxuXHQgKiBDcmVhdGVzL3VwZGF0ZXMgdGhlIGFwcHN0YXRlLlxuXHQgKlxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX0gQSBwcm9taXNlIHJlc29sdmluZyB0aGUgc3RvcmVkIGRhdGFcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqL1xuXHRjcmVhdGVBcHBTdGF0ZSgpIHtcblx0XHRpZiAoQnVzeUxvY2tlci5pc0xvY2tlZCh0aGlzKSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdH1cblxuXHRcdGNvbnN0IG9OYXZpZ2F0aW9uU2VydmljZSA9IHRoaXMub0FwcENvbXBvbmVudC5nZXROYXZpZ2F0aW9uU2VydmljZSgpLFxuXHRcdFx0b1JvdXRlclByb3h5ID0gdGhpcy5vQXBwQ29tcG9uZW50LmdldFJvdXRlclByb3h5KCksXG5cdFx0XHRzSGFzaCA9IG9Sb3V0ZXJQcm94eS5nZXRIYXNoKCksXG5cdFx0XHRvQ29udHJvbGxlciA9IHRoaXMub0FwcENvbXBvbmVudC5nZXRSb290Q29udHJvbCgpLmdldENvbnRyb2xsZXIoKSxcblx0XHRcdGJJc1N0aWNreU1vZGUgPSBNb2RlbEhlbHBlci5pc1N0aWNreVNlc3Npb25TdXBwb3J0ZWQodGhpcy5vQXBwQ29tcG9uZW50LmdldE1ldGFNb2RlbCgpKTtcblxuXHRcdGlmICghb0NvbnRyb2xsZXIudmlld1N0YXRlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoXCJ2aWV3U3RhdGUgY29udHJvbGxlciBleHRlbnNpb24gbm90IGF2YWlsYWJsZSBmb3IgY29udHJvbGxlcjogXCIgKyBvQ29udHJvbGxlci5nZXRNZXRhZGF0YSgpLmdldE5hbWUoKSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG9Db250cm9sbGVyLnZpZXdTdGF0ZS5yZXRyaWV2ZVZpZXdTdGF0ZSgpLnRoZW4oKG1Jbm5lckFwcFN0YXRlOiBhbnkpID0+IHtcblx0XHRcdGNvbnN0IG9TdG9yZURhdGEgPSB7IGFwcFN0YXRlOiBtSW5uZXJBcHBTdGF0ZSB9O1xuXHRcdFx0aWYgKG1Jbm5lckFwcFN0YXRlICYmICFkZWVwRXF1YWwodGhpcy5fbUN1cnJlbnRBcHBTdGF0ZSwgbUlubmVyQXBwU3RhdGUpKSB7XG5cdFx0XHRcdHRoaXMuX21DdXJyZW50QXBwU3RhdGUgPSBtSW5uZXJBcHBTdGF0ZTtcblx0XHRcdFx0Y29uc3Qgb0FwcFN0YXRlID0gb05hdmlnYXRpb25TZXJ2aWNlLnN0b3JlSW5uZXJBcHBTdGF0ZVdpdGhJbW1lZGlhdGVSZXR1cm4ob1N0b3JlRGF0YSwgdHJ1ZSk7XG5cdFx0XHRcdExvZy5pbmZvKFwiQVBQU1RBVEU6IEFwcHN0YXRlIHN0b3JlZFwiKTtcblx0XHRcdFx0Y29uc3Qgc0FwcFN0YXRlS2V5ID0gb0FwcFN0YXRlLmFwcFN0YXRlS2V5O1xuXHRcdFx0XHRjb25zdCBzTmV3SGFzaCA9IG9OYXZpZ2F0aW9uU2VydmljZS5yZXBsYWNlSW5uZXJBcHBTdGF0ZUtleShzSGFzaCwgc0FwcFN0YXRlS2V5KTtcblx0XHRcdFx0aWYgKHNOZXdIYXNoICE9PSBzSGFzaCkge1xuXHRcdFx0XHRcdG9Sb3V0ZXJQcm94eS5uYXZUb0hhc2goc05ld0hhc2gsIG51bGwsIG51bGwsIG51bGwsICFiSXNTdGlja3lNb2RlKTtcblx0XHRcdFx0XHR0aGlzLmJOb1JvdXRlQ2hhbmdlID0gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRMb2cuaW5mbyhcIkFQUFNUQVRFOiBuYXZUb0hhc2hcIik7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gb1N0b3JlRGF0YTtcblx0XHR9KTtcblx0fVxuXG5cdF9jcmVhdGVOYXZpZ2F0aW9uUGFyYW1ldGVycyhvQXBwRGF0YTogYW55LCBzTmF2VHlwZTogYW55KSB7XG5cdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIG9BcHBEYXRhLCB7XG5cdFx0XHRzZWxlY3Rpb25WYXJpYW50RGVmYXVsdHM6IG9BcHBEYXRhLm9EZWZhdWx0ZWRTZWxlY3Rpb25WYXJpYW50LFxuXHRcdFx0c2VsZWN0aW9uVmFyaWFudDogb0FwcERhdGEub1NlbGVjdGlvblZhcmlhbnQsXG5cdFx0XHRyZXF1aXJlc1N0YW5kYXJkVmFyaWFudDogIW9BcHBEYXRhLmJOYXZTZWxWYXJIYXNEZWZhdWx0c09ubHksXG5cdFx0XHRuYXZpZ2F0aW9uVHlwZTogc05hdlR5cGVcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBcHBsaWVzIGFuIGFwcHN0YXRlIGJ5IGZldGNoaW5nIGFwcGRhdGEgYW5kIHBhc3NpbmcgaXQgdG8gX2FwcGx5QXBwc3RhdGVUb1BhZ2UuXG5cdCAqXG5cdCAqIEBmdW5jdGlvblxuXHQgKiBAc3RhdGljXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUuY29yZS5BcHBTdGF0ZUhhbmRsZXJcblx0ICogQHJldHVybnMge1Byb21pc2V9IEEgcHJvbWlzZSBmb3IgYXN5bmMgaGFuZGxpbmdcblx0ICogQHByaXZhdGVcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqKi9cblx0YXBwbHlBcHBTdGF0ZSgpIHtcblx0XHRpZiAodGhpcy5vQXBwQ29tcG9uZW50LmdldE1vZGVsKFwiaW50ZXJuYWxcIikuZ2V0UHJvcGVydHkoXCIvdWlBZGFwdGF0aW9uXCIpIHx8IEJ1c3lMb2NrZXIuaXNMb2NrZWQodGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHR9XG5cdFx0QnVzeUxvY2tlci5sb2NrKHRoaXMpO1xuXHRcdC8vIERvbmUgZm9yIGJ1c3kgaW5kaWNhdG9yXG5cdFx0QnVzeUxvY2tlci5sb2NrKHRoaXMub0FwcENvbXBvbmVudC5nZXRSb290Q29udHJvbCgpKTtcblxuXHRcdGNvbnN0IG9OYXZpZ2F0aW9uU2VydmljZSA9IHRoaXMub0FwcENvbXBvbmVudC5nZXROYXZpZ2F0aW9uU2VydmljZSgpO1xuXHRcdC8vIFRPRE8gb05hdmlnYXRpb25TZXJ2aWNlLnBhcnNlTmF2aWdhdGlvbigpIHNob3VsZCByZXR1cm4gRVM2IHByb21pc2UgaW5zdGVhZCBqUXVlcnkucHJvbWlzZVxuXHRcdHJldHVybiBfdG9FUzZQcm9taXNlKG9OYXZpZ2F0aW9uU2VydmljZS5wYXJzZU5hdmlnYXRpb24oKSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbihhRXJyb3JEYXRhOiBhbnkpIHtcblx0XHRcdFx0aWYgKCFhRXJyb3JEYXRhKSB7XG5cdFx0XHRcdFx0YUVycm9yRGF0YSA9IFtdO1xuXHRcdFx0XHR9XG5cdFx0XHRcdExvZy53YXJuaW5nKFwiQVBQU1RBVEU6IFBhcnNlIE5hdmlnYXRpb24gZmFpbGVkXCIsIGFFcnJvckRhdGFbMF0pO1xuXHRcdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdC8qIGFwcCBkYXRhICovXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRhRXJyb3JEYXRhWzFdLFxuXHRcdFx0XHRcdGFFcnJvckRhdGFbMl1cblx0XHRcdFx0XTtcblx0XHRcdH0pXG5cdFx0XHQudGhlbigoYVJlc3VsdHM6IGFueSkgPT4ge1xuXHRcdFx0XHRMb2cuaW5mbyhcIkFQUFNUQVRFOiBQYXJzZSBOYXZpZ2F0aW9uIGRvbmVcIik7XG5cblx0XHRcdFx0Ly8gYVJlc3VsdHNbMV0gPT4gb1N0YXJ0dXBQYXJhbWV0ZXJzIChub3QgZXZhbHVhdGVkKVxuXHRcdFx0XHRjb25zdCBvQXBwRGF0YSA9IGFSZXN1bHRzWzBdIHx8IHt9LFxuXHRcdFx0XHRcdHNOYXZUeXBlID0gYVJlc3VsdHNbMl0gfHwgTmF2VHlwZS5pbml0aWFsLFxuXHRcdFx0XHRcdG9Sb290Q29udHJvbGxlciA9IHRoaXMub0FwcENvbXBvbmVudC5nZXRSb290Q29udHJvbCgpLmdldENvbnRyb2xsZXIoKTtcblxuXHRcdFx0XHR0aGlzLl9tQ3VycmVudEFwcFN0YXRlID0gc05hdlR5cGUgPT09IE5hdlR5cGUuaUFwcFN0YXRlID8gb0FwcERhdGEgJiYgb0FwcERhdGEuYXBwU3RhdGUgOiB1bmRlZmluZWQ7XG5cblx0XHRcdFx0aWYgKCFvUm9vdENvbnRyb2xsZXIudmlld1N0YXRlKSB7XG5cdFx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKFwidmlld1N0YXRlIGV4dGVuc2lvbiByZXF1aXJlZCBmb3IgY29udHJvbGxlciBcIiArIG9Sb290Q29udHJvbGxlci5nZXRNZXRhZGF0YSgpLmdldE5hbWUoKSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4gb1Jvb3RDb250cm9sbGVyLnZpZXdTdGF0ZVxuXHRcdFx0XHRcdC5hcHBseVZpZXdTdGF0ZSh0aGlzLl9tQ3VycmVudEFwcFN0YXRlLCB0aGlzLl9jcmVhdGVOYXZpZ2F0aW9uUGFyYW1ldGVycyhvQXBwRGF0YSwgc05hdlR5cGUpKVxuXHRcdFx0XHRcdC5jYXRjaChmdW5jdGlvbihvRXJyb3I6IGFueSkge1xuXHRcdFx0XHRcdFx0TG9nLmVycm9yKFwiYXBwU3RhdGUgY291bGQgbm90IGJlIGFwcGxpZWRcIiwgb0Vycm9yKTtcblx0XHRcdFx0XHRcdHRocm93IG9FcnJvcjtcblx0XHRcdFx0XHR9KTtcblx0XHRcdH0pXG5cdFx0XHQuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdEJ1c3lMb2NrZXIudW5sb2NrKHRoaXMpO1xuXHRcdFx0XHRCdXN5TG9ja2VyLnVubG9jayh0aGlzLm9BcHBDb21wb25lbnQuZ2V0Um9vdENvbnRyb2woKSk7XG5cdFx0XHR9KTtcblx0fVxuXHQvKipcblx0ICogVG8gY2hlY2sgaXMgcm91dGUgaXMgY2hhbmdlZCBieSBjaGFuZ2UgaW4gdGhlIGlBUFBTdGF0ZS5cblx0ICpcblx0ICogQHJldHVybnMge2Jvb2xlYW59XG5cdCAqKi9cblx0Y2hlY2tJZlJvdXRlQ2hhbmdlZEJ5SUFwcCgpIHtcblx0XHRyZXR1cm4gdGhpcy5iTm9Sb3V0ZUNoYW5nZTtcblx0fVxuXHQvKipcblx0ICogUmVzZXQgdGhlIHJvdXRlIGNoYW5nZWQgYnkgaUFQUFN0YXRlLlxuXHQgKiovXG5cdHJlc2V0Um91dGVDaGFuZ2VkQnlJQXBwKCkge1xuXHRcdGlmICh0aGlzLmJOb1JvdXRlQ2hhbmdlKSB7XG5cdFx0XHR0aGlzLmJOb1JvdXRlQ2hhbmdlID0gZmFsc2U7XG5cdFx0fVxuXHR9XG5cdF9pc0xpc3RCYXNlZENvbXBvbmVudChvQ29tcG9uZW50OiBhbnkpIHtcblx0XHRyZXR1cm4gb0NvbXBvbmVudC5pc0EoXCJzYXAuZmUudGVtcGxhdGVzLkxpc3RDb21wb25lbnRcIik7XG5cdH1cbn1cblxuLyoqXG4gKiBAZ2xvYmFsXG4gKi9cbmV4cG9ydCBkZWZhdWx0IEFwcFN0YXRlSGFuZGxlcjtcbiJdfQ==
|
|
@@ -2,7 +2,7 @@ import BaseObject from "sap/ui/base/Object";
|
|
|
2
2
|
import library from "sap/fe/navigation/library";
|
|
3
3
|
import Log from "sap/base/Log";
|
|
4
4
|
import deepEqual from "sap/base/util/deepEqual";
|
|
5
|
-
import {
|
|
5
|
+
import { defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
|
|
6
6
|
import BusyLocker from "./BusyLocker";
|
|
7
7
|
import ModelHelper from "./helpers/ModelHelper";
|
|
8
8
|
|
|
@@ -19,7 +19,7 @@ function _toES6Promise(oThenable: any) {
|
|
|
19
19
|
);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
@
|
|
22
|
+
@defineUI5Class("sap.fe.core.AppStateHandler")
|
|
23
23
|
class AppStateHandler extends BaseObject {
|
|
24
24
|
public sId: string;
|
|
25
25
|
public oAppComponent: any; // AppComponent
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/ui/core/mvc/Controller", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport"
|
|
5
|
+
sap.ui.define(["sap/ui/core/mvc/Controller", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport"], function (Controller, CommonUtils, ClassSupport) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
var _dec, _class, _class2;
|
|
8
|
+
var _dec, _dec2, _class, _class2;
|
|
9
9
|
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
11
|
+
var publicExtension = ClassSupport.publicExtension;
|
|
12
12
|
|
|
13
|
-
function
|
|
13
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
14
14
|
|
|
15
15
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
16
16
|
|
|
@@ -26,8 +26,8 @@ sap.ui.define(["sap/ui/core/mvc/Controller", "sap/fe/core/CommonUtils", "sap/fe/
|
|
|
26
26
|
* @name sap.fe.core.BaseController
|
|
27
27
|
* @since 1.90.0
|
|
28
28
|
*/
|
|
29
|
-
var BaseController = (_dec =
|
|
30
|
-
|
|
29
|
+
var BaseController = (_dec = defineUI5Class("sap.fe.core.BaseController"), _dec2 = publicExtension(), _dec(_class = (_class2 = /*#__PURE__*/function (_Controller) {
|
|
30
|
+
_inheritsLoose(BaseController, _Controller);
|
|
31
31
|
|
|
32
32
|
function BaseController() {
|
|
33
33
|
return _Controller.apply(this, arguments) || this;
|
|
@@ -83,7 +83,7 @@ sap.ui.define(["sap/ui/core/mvc/Controller", "sap/fe/core/CommonUtils", "sap/fe/
|
|
|
83
83
|
};
|
|
84
84
|
|
|
85
85
|
return BaseController;
|
|
86
|
-
}(Controller), (_applyDecoratedDescriptor(_class2.prototype, "getAppComponent", [
|
|
86
|
+
}(Controller), (_applyDecoratedDescriptor(_class2.prototype, "getAppComponent", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, "getAppComponent"), _class2.prototype)), _class2)) || _class);
|
|
87
87
|
return BaseController;
|
|
88
88
|
}, false);
|
|
89
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhc2VDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbIkJhc2VDb250cm9sbGVyIiwiZGVmaW5lVUk1Q2xhc3MiLCJwdWJsaWNFeHRlbnNpb24iLCJnZXRBcHBDb21wb25lbnQiLCJfb0FwcENvbXBvbmVudCIsIkNvbW1vblV0aWxzIiwiZ2V0VmlldyIsImdldE1vZGVsIiwic05hbWUiLCJzZXRNb2RlbCIsIm9Nb2RlbCIsImdldFJlc291cmNlQnVuZGxlIiwic0kxOG5Nb2RlbE5hbWUiLCJDb250cm9sbGVyIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtNQUVNQSxjLFdBRExDLGNBQWMsQ0FBQyw0QkFBRCxDLFVBV2JDLGVBQWUsRTs7Ozs7Ozs7O0FBUmhCO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7V0FFQ0MsZSxHQURBLDJCQUNnQztBQUMvQixVQUFJLENBQUMsS0FBS0MsY0FBVixFQUEwQjtBQUN6QixhQUFLQSxjQUFMLEdBQXNCQyxXQUFXLENBQUNGLGVBQVosQ0FBNEIsS0FBS0csT0FBTCxFQUE1QixDQUF0QjtBQUNBOztBQUNELGFBQU8sS0FBS0YsY0FBWjtBQUNBO0FBRUQ7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7V0FDQ0csUSxHQUFBLGtCQUFTQyxLQUFULEVBQXlCO0FBQ3hCLGFBQU8sS0FBS0YsT0FBTCxHQUFlQyxRQUFmLENBQXdCQyxLQUF4QixDQUFQO0FBQ0E7QUFFRDtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O1dBQ0NDLFEsR0FBQSxrQkFBU0MsTUFBVCxFQUF3QkYsS0FBeEIsRUFBNkM7QUFDNUMsYUFBTyxLQUFLRixPQUFMLEdBQWVHLFFBQWYsQ0FBd0JDLE1BQXhCLEVBQWdDRixLQUFoQyxDQUFQO0FBQ0EsSzs7V0FFREcsaUIsR0FBQSwyQkFBa0JDLGNBQWxCLEVBQXVDO0FBQ3RDLFVBQUksQ0FBQ0EsY0FBTCxFQUFxQjtBQUNwQkEsUUFBQUEsY0FBYyxHQUFHLE1BQWpCO0FBQ0E7O0FBQ0QsYUFBUSxLQUFLVCxlQUFMLEdBQXVCSSxRQUF2QixDQUFnQ0ssY0FBaEMsQ0FBRCxDQUFtRUQsaUJBQW5FLEVBQVA7QUFDQSxLOzs7SUE1QzJCRSxVO1NBK0NkYixjIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29udHJvbGxlciBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL0NvbnRyb2xsZXJcIjtcbmltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB7IHB1YmxpY0V4dGVuc2lvbiwgZGVmaW5lVUk1Q2xhc3MgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBBcHBDb21wb25lbnQgZnJvbSBcInNhcC9mZS9jb3JlL0FwcENvbXBvbmVudFwiO1xuaW1wb3J0IFJlc291cmNlTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9yZXNvdXJjZS9SZXNvdXJjZU1vZGVsXCI7XG5pbXBvcnQgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCBNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL01vZGVsXCI7XG5cbi8qKlxuICogSW50ZXJuYWwgYmFzZSBjb250cm9sbGVyIGNsYXNzIGZvciBTQVAgRmlvcmkgZWxlbWVudHMgYXBwbGljYXRpb24uXG4gKlxuICogSWYgeW91IHdhbnQgdG8gZXh0ZW5kIGEgYmFzZSBjb250cm9sbGVyIGZvciB5b3VyIGN1c3RvbSBwYWdlLCBwbGVhc2UgdXNlIGZvciBzYXAuZmUuY29yZS5QYWdlQ29udHJvbGxlci5cbiAqXG4gKiBAaGlkZWNvbnN0cnVjdG9yXG4gKiBAcHVibGljXG4gKiBAbmFtZSBzYXAuZmUuY29yZS5CYXNlQ29udHJvbGxlclxuICogQHNpbmNlIDEuOTAuMFxuICovXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuY29yZS5CYXNlQ29udHJvbGxlclwiKVxuY2xhc3MgQmFzZUNvbnRyb2xsZXIgZXh0ZW5kcyBDb250cm9sbGVyIHtcblx0cHJpdmF0ZSBfb0FwcENvbXBvbmVudD86IEFwcENvbXBvbmVudDtcblx0LyoqXG5cdCAqIFJldHVybnMgdGhlIGN1cnJlbnQgYXBwIGNvbXBvbmVudC5cblx0ICpcblx0ICogQHJldHVybnMge3NhcC5mZS5jb3JlLkFwcENvbXBvbmVudH0gVGhlIGFwcCBjb21wb25lbnQgb3IsIGlmIG5vdCBmb3VuZCwgbnVsbFxuXHQgKiBAYWxpYXMgc2FwLmZlLmNvcmUuQmFzZUNvbnRyb2xsZXIjZ2V0QXBwQ29tcG9uZW50XG5cdCAqIEBwdWJsaWNcblx0ICogQHNpbmNlIDEuOTEuMFxuXHQgKi9cblx0QHB1YmxpY0V4dGVuc2lvbigpXG5cdGdldEFwcENvbXBvbmVudCgpOiBBcHBDb21wb25lbnQge1xuXHRcdGlmICghdGhpcy5fb0FwcENvbXBvbmVudCkge1xuXHRcdFx0dGhpcy5fb0FwcENvbXBvbmVudCA9IENvbW1vblV0aWxzLmdldEFwcENvbXBvbmVudCh0aGlzLmdldFZpZXcoKSk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLl9vQXBwQ29tcG9uZW50IGFzIEFwcENvbXBvbmVudDtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZW5pZW5jZSBtZXRob2QgcHJvdmlkZWQgYnkgU0FQIEZpb3JpIGVsZW1lbnRzIHRvIGVuYWJsZSBhcHBsaWNhdGlvbnMgdG8gaW5jbHVkZSB0aGUgdmlldyBtb2RlbCBieSBuYW1lIGludG8gZWFjaCBjb250cm9sbGVyLlxuXHQgKiBAcHVibGljXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBzTmFtZSBUaGUgbW9kZWwgbmFtZVxuXHQgKiBAcmV0dXJucyB7c2FwLnVpLm1vZGVsLk1vZGVsfSBUaGUgbW9kZWwgaW5zdGFuY2Vcblx0ICovXG5cdGdldE1vZGVsKHNOYW1lPzogc3RyaW5nKSB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0VmlldygpLmdldE1vZGVsKHNOYW1lKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZW5pZW5jZSBtZXRob2QgZm9yIHNldHRpbmcgdGhlIHZpZXcgbW9kZWwgaW4gZXZlcnkgY29udHJvbGxlciBvZiB0aGUgYXBwbGljYXRpb24uXG5cdCAqIEBwdWJsaWNcblx0ICogQHBhcmFtIHtzYXAudWkubW9kZWwuTW9kZWx9IG9Nb2RlbCBUaGUgbW9kZWwgaW5zdGFuY2Vcblx0ICogQHBhcmFtIHtzdHJpbmd9IHNOYW1lIFRoZSBtb2RlbCBuYW1lXG5cdCAqIEByZXR1cm5zIHtzYXAudWkubXZjLlZpZXd9IFRoZSB2aWV3IGluc3RhbmNlXG5cdCAqL1xuXHRzZXRNb2RlbChvTW9kZWw6IE1vZGVsLCBzTmFtZTogc3RyaW5nKTogVmlldyB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0VmlldygpLnNldE1vZGVsKG9Nb2RlbCwgc05hbWUpO1xuXHR9XG5cblx0Z2V0UmVzb3VyY2VCdW5kbGUoc0kxOG5Nb2RlbE5hbWU6IGFueSkge1xuXHRcdGlmICghc0kxOG5Nb2RlbE5hbWUpIHtcblx0XHRcdHNJMThuTW9kZWxOYW1lID0gXCJpMThuXCI7XG5cdFx0fVxuXHRcdHJldHVybiAodGhpcy5nZXRBcHBDb21wb25lbnQoKS5nZXRNb2RlbChzSTE4bk1vZGVsTmFtZSkgYXMgUmVzb3VyY2VNb2RlbCkuZ2V0UmVzb3VyY2VCdW5kbGUoKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBCYXNlQ29udHJvbGxlcjtcbiJdfQ==
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import Controller from "sap/ui/core/mvc/Controller";
|
|
2
2
|
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
3
|
-
import {
|
|
4
|
-
import ControllerMetadata from "sap/ui/core/mvc/ControllerMetadata";
|
|
3
|
+
import { publicExtension, defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
|
|
5
4
|
import AppComponent from "sap/fe/core/AppComponent";
|
|
6
5
|
import ResourceModel from "sap/ui/model/resource/ResourceModel";
|
|
7
6
|
import View from "sap/ui/core/mvc/View";
|
|
@@ -17,7 +16,7 @@ import Model from "sap/ui/model/Model";
|
|
|
17
16
|
* @name sap.fe.core.BaseController
|
|
18
17
|
* @since 1.90.0
|
|
19
18
|
*/
|
|
20
|
-
@
|
|
19
|
+
@defineUI5Class("sap.fe.core.BaseController")
|
|
21
20
|
class BaseController extends Controller {
|
|
22
21
|
private _oAppComponent?: AppComponent;
|
|
23
22
|
/**
|
|
@@ -28,7 +27,7 @@ class BaseController extends Controller {
|
|
|
28
27
|
* @public
|
|
29
28
|
* @since 1.91.0
|
|
30
29
|
*/
|
|
31
|
-
@
|
|
30
|
+
@publicExtension()
|
|
32
31
|
getAppComponent(): AppComponent {
|
|
33
32
|
if (!this._oAppComponent) {
|
|
34
33
|
this._oAppComponent = CommonUtils.getAppComponent(this.getView());
|