@sapui5/sap.fe.templates 1.110.1 → 1.111.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 +2 -20
- package/src/sap/fe/templates/.library +1 -1
- package/src/sap/fe/templates/AnalyticalListPage/Component-dbg.js +21 -0
- package/src/sap/fe/templates/AnalyticalListPage/Component.js +3 -18
- package/src/sap/fe/templates/AnalyticalListPage/Component.js.map +1 -0
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate-dbg.js +32 -0
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +3 -29
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js.map +1 -0
- package/src/sap/fe/templates/AnalyticalListPage/manifest.json +1 -1
- package/src/sap/fe/templates/ListComponent-dbg.js +146 -0
- package/src/sap/fe/templates/ListComponent.js +3 -143
- package/src/sap/fe/templates/ListComponent.js.map +1 -0
- package/src/sap/fe/templates/ListReport/Component-dbg.js +77 -0
- package/src/sap/fe/templates/ListReport/Component.js +3 -74
- package/src/sap/fe/templates/ListReport/Component.js.map +1 -0
- package/src/sap/fe/templates/ListReport/ExtensionAPI-dbg.js +147 -0
- package/src/sap/fe/templates/ListReport/ExtensionAPI.js +3 -144
- package/src/sap/fe/templates/ListReport/ExtensionAPI.js.map +1 -0
- package/src/sap/fe/templates/ListReport/LRMessageStrip-dbg.js +191 -0
- package/src/sap/fe/templates/ListReport/LRMessageStrip.js +3 -193
- package/src/sap/fe/templates/ListReport/LRMessageStrip.js.map +1 -0
- package/src/sap/fe/templates/ListReport/ListReport.view.xml +1 -0
- package/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +799 -0
- package/src/sap/fe/templates/ListReport/ListReportController.controller.js +3 -832
- package/src/sap/fe/templates/ListReport/ListReportController.controller.js.map +1 -0
- package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +6 -24
- package/src/sap/fe/templates/ListReport/ListReportTemplating-dbg.js +40 -0
- package/src/sap/fe/templates/ListReport/ListReportTemplating.js +3 -37
- package/src/sap/fe/templates/ListReport/ListReportTemplating.js.map +1 -0
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl-dbg.js +375 -0
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +3 -378
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js.map +1 -0
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +10 -3
- package/src/sap/fe/templates/ListReport/manifest.json +1 -1
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation-dbg.js +53 -0
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +3 -50
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js.map +1 -0
- package/src/sap/fe/templates/ListReport/overrides/Share-dbg.js +109 -0
- package/src/sap/fe/templates/ListReport/overrides/Share.js +3 -107
- package/src/sap/fe/templates/ListReport/overrides/Share.js.map +1 -0
- package/src/sap/fe/templates/ListReport/overrides/ViewState-dbg.js +481 -0
- package/src/sap/fe/templates/ListReport/overrides/ViewState.js +3 -428
- package/src/sap/fe/templates/ListReport/overrides/ViewState.js.map +1 -0
- package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +164 -32
- package/src/sap/fe/templates/ListReport/view/fragments/CustomView.fragment.xml +0 -3
- package/src/sap/fe/templates/ListReport/view/fragments/MacroChart.fragment.xml +2 -0
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode-dbg.fragment.js +123 -0
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +29 -63
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js.map +1 -0
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.ts +2 -2
- package/src/sap/fe/templates/ObjectPage/Component-dbg.js +150 -0
- package/src/sap/fe/templates/ObjectPage/Component.js +3 -148
- package/src/sap/fe/templates/ObjectPage/Component.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition-dbg.js +57 -0
- package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js +3 -61
- package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI-dbg.js +222 -0
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +3 -243
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +2 -2
- package/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +1413 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +3 -1534
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +11 -14
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating-dbg.js +851 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +3 -851
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +14 -4
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton-dbg.js +147 -0
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js +3 -144
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.tsx +5 -6
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox-dbg.js +111 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +3 -108
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox-dbg.js +24 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +3 -21
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock-dbg.js +79 -0
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +3 -76
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox-dbg.designtime.js +23 -0
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +3 -20
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox-dbg.designtime.js +52 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +3 -49
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox-dbg.designtime.js +38 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +3 -35
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility-dbg.js +28 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js +3 -29
- package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility-dbg.js +19 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +3 -16
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility-dbg.js +15 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +3 -12
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/manifest.json +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation-dbg.js +54 -0
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +3 -51
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting-dbg.js +36 -0
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +3 -33
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler-dbg.js +16 -0
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +3 -13
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator-dbg.js +27 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +3 -24
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Share-dbg.js +276 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Share.js +3 -293
- package/src/sap/fe/templates/ObjectPage/overrides/Share.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState-dbg.js +69 -0
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +3 -63
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js.map +1 -0
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.ts +3 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +2 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +1 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/MacroChart.fragment.xml +2 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +2 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +12 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +0 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +0 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +0 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionCustomSection.fragment.xml +2 -9
- package/src/sap/fe/templates/ObjectPage/view/fragments/SideContentCustomContainer.fragment.xml +1 -2
- package/src/sap/fe/templates/TableScroller-dbg.js +49 -0
- package/src/sap/fe/templates/TableScroller.js +3 -46
- package/src/sap/fe/templates/TableScroller.js.map +1 -0
- package/src/sap/fe/templates/designtime/library-preload.designtime.js +17 -0
- package/src/sap/fe/templates/designtime/library-preload.designtime.js.map +1 -0
- package/src/sap/fe/templates/library-dbg.js +66 -0
- package/src/sap/fe/templates/library-preload.js +236 -0
- package/src/sap/fe/templates/library-preload.js.map +1 -0
- package/src/sap/fe/templates/library.js +3 -56
- package/src/sap/fe/templates/library.js.map +1 -0
- package/src/sap/fe/templates/library.ts +4 -0
- package/src/sap/fe/templates/manifest.json +109 -0
- package/src/sap/fe/templates/messagebundle_fr.properties +1 -1
|
@@ -1,296 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/base/Log",
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
function _catch(body, recover) {
|
|
9
|
-
try {
|
|
10
|
-
var result = body();
|
|
11
|
-
} catch (e) {
|
|
12
|
-
return recover(e);
|
|
13
|
-
}
|
|
14
|
-
if (result && result.then) {
|
|
15
|
-
return result.then(void 0, recover);
|
|
16
|
-
}
|
|
17
|
-
return result;
|
|
18
|
-
}
|
|
19
|
-
var bGlobalIsStickySupported;
|
|
20
|
-
function createFilterToFetchActiveContext(mKeyValues, bIsActiveEntityDefined) {
|
|
21
|
-
var aKeys = Object.keys(mKeyValues);
|
|
22
|
-
var aFilters = aKeys.map(function (sKey) {
|
|
23
|
-
var sValue = mKeyValues[sKey];
|
|
24
|
-
if (sValue !== undefined) {
|
|
25
|
-
return new Filter(sKey, FilterOperator.EQ, sValue);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
if (bIsActiveEntityDefined) {
|
|
29
|
-
var oActiveFilter = new Filter({
|
|
30
|
-
filters: [new Filter("SiblingEntity/IsActiveEntity", FilterOperator.EQ, true)],
|
|
31
|
-
and: false
|
|
32
|
-
});
|
|
33
|
-
aFilters.push(oActiveFilter);
|
|
34
|
-
}
|
|
35
|
-
return new Filter(aFilters, true);
|
|
36
|
-
}
|
|
37
|
-
function getActiveContextPath(oController, sPageEntityName, oFilter) {
|
|
38
|
-
var oListBinding = oController.getView().getBindingContext().getModel().bindList("/".concat(sPageEntityName), undefined, undefined, oFilter, {
|
|
39
|
-
$$groupId: "$auto.Heroes"
|
|
40
|
-
});
|
|
41
|
-
return oListBinding.requestContexts(0, 2).then(function (oContexts) {
|
|
42
|
-
if (oContexts && oContexts.length) {
|
|
43
|
-
return oContexts[0].getPath();
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
function getActiveContextInstances(oContext, oController, oEntitySet) {
|
|
48
|
-
var aActiveContextpromises = [];
|
|
49
|
-
var aPages = [];
|
|
50
|
-
var sMetaPath = oContext.getModel().getMetaModel().getMetaPath(oContext.getPath());
|
|
51
|
-
if (sMetaPath.indexOf("/") === 0) {
|
|
52
|
-
sMetaPath = sMetaPath.substring(1);
|
|
53
|
-
}
|
|
54
|
-
var aMetaPathArray = sMetaPath.split("/");
|
|
55
|
-
var sCurrentHashNoParams = HashChanger.getInstance().getHash().split("?")[0];
|
|
56
|
-
var aCurrentHashArray = sCurrentHashNoParams.split("/");
|
|
57
|
-
|
|
58
|
-
// oPageMap - creating an object that contains map of metapath name and it's technical details
|
|
59
|
-
// which is required to create a filter to fetch the relavant/correct active context
|
|
60
|
-
// Example: {SalesOrderManage:{technicalID:technicalIDValue}, _Item:{technicalID:technicalIDValue}} etc.,
|
|
61
|
-
var oPageMap = {};
|
|
62
|
-
var aPageHashArray = [];
|
|
63
|
-
aCurrentHashArray.forEach(function (sPageHash) {
|
|
64
|
-
var aKeyValues = sPageHash.substring(sPageHash.indexOf("(") + 1, sPageHash.length - 1).split(",");
|
|
65
|
-
var mKeyValues = {};
|
|
66
|
-
var sPageHashName = sPageHash.split("(")[0];
|
|
67
|
-
oPageMap[sPageHashName] = {};
|
|
68
|
-
aPageHashArray.push(sPageHashName);
|
|
69
|
-
oPageMap[sPageHashName]["bIsActiveEntityDefined"] = true;
|
|
70
|
-
for (var i = 0; i < aKeyValues.length; i++) {
|
|
71
|
-
var sKeyAssignment = aKeyValues[i];
|
|
72
|
-
var aParts = sKeyAssignment.split("=");
|
|
73
|
-
var sKeyValue = aParts[1];
|
|
74
|
-
var sKey = aParts[0];
|
|
75
|
-
// In case if only one technical key is defined then the url just contains the technicalIDValue but not the technicalID
|
|
76
|
-
// Example: SalesOrderManage(ID=11111129-aaaa-bbbb-cccc-ddddeeeeffff,IsActiveEntity=false)/_Item(11111129-aaaa-bbbb-cccc-ddddeeeeffff)
|
|
77
|
-
// In above example SalesOrderItem has only one technical key defined, hence technicalID info is not present in the url
|
|
78
|
-
// Hence in such cases we get technical key and use them to fetch active context
|
|
79
|
-
if (sKeyAssignment.indexOf("=") === -1) {
|
|
80
|
-
var oMetaModel = oContext.getModel().getMetaModel();
|
|
81
|
-
var aTechnicalKeys = oMetaModel.getObject("/".concat(aPageHashArray.join("/"), "/$Type/$Key"));
|
|
82
|
-
sKeyValue = aParts[0];
|
|
83
|
-
sKey = aTechnicalKeys[0];
|
|
84
|
-
oPageMap[sPageHash.split("(")[0]]["bIsActiveEntityDefined"] = false;
|
|
85
|
-
}
|
|
86
|
-
if (sKey !== "IsActiveEntity") {
|
|
87
|
-
if (sKeyValue.indexOf("'") === 0 && sKeyValue.lastIndexOf("'") === sKeyValue.length - 1) {
|
|
88
|
-
// Remove the quotes from the value and decode special chars
|
|
89
|
-
sKeyValue = decodeURIComponent(sKeyValue.substring(1, sKeyValue.length - 1));
|
|
90
|
-
}
|
|
91
|
-
mKeyValues[sKey] = sKeyValue;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
oPageMap[sPageHashName].mKeyValues = mKeyValues;
|
|
95
|
-
});
|
|
96
|
-
var oPageEntitySet = oEntitySet;
|
|
97
|
-
aMetaPathArray.forEach(function (sNavigationPath) {
|
|
98
|
-
var oPageInfo = {};
|
|
99
|
-
var sPageEntitySetName = oPageEntitySet.$NavigationPropertyBinding && oPageEntitySet.$NavigationPropertyBinding[sNavigationPath];
|
|
100
|
-
if (sPageEntitySetName) {
|
|
101
|
-
oPageInfo.pageEntityName = oPageEntitySet.$NavigationPropertyBinding[sNavigationPath];
|
|
102
|
-
oPageEntitySet = oContext.getModel().getMetaModel().getObject("/".concat(sPageEntitySetName)) || oEntitySet;
|
|
103
|
-
} else {
|
|
104
|
-
oPageInfo.pageEntityName = sNavigationPath;
|
|
105
|
-
}
|
|
106
|
-
oPageInfo.mKeyValues = oPageMap[sNavigationPath].mKeyValues;
|
|
107
|
-
oPageInfo.bIsActiveEntityDefined = oPageMap[sNavigationPath].bIsActiveEntityDefined;
|
|
108
|
-
aPages.push(oPageInfo);
|
|
109
|
-
});
|
|
110
|
-
aPages.forEach(function (oPageInfo) {
|
|
111
|
-
var oFilter = createFilterToFetchActiveContext(oPageInfo.mKeyValues, oPageInfo.bIsActiveEntityDefined);
|
|
112
|
-
aActiveContextpromises.push(getActiveContextPath(oController, oPageInfo.pageEntityName, oFilter));
|
|
113
|
-
});
|
|
114
|
-
return aActiveContextpromises;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Method to fetch active context path's.
|
|
119
|
-
*
|
|
120
|
-
* @param oContext The Page Context
|
|
121
|
-
* @param oController
|
|
122
|
-
* @returns Promise which is resolved once the active context's are fetched
|
|
123
|
-
*/
|
|
124
|
-
function getActiveContextPaths(oContext, oController) {
|
|
125
|
-
var sCurrentHashNoParams = HashChanger.getInstance().getHash().split("?")[0];
|
|
126
|
-
var sRootEntityName = sCurrentHashNoParams && sCurrentHashNoParams.substr(0, sCurrentHashNoParams.indexOf("("));
|
|
127
|
-
if (sRootEntityName.indexOf("/") === 0) {
|
|
128
|
-
sRootEntityName = sRootEntityName.substring(1);
|
|
129
|
-
}
|
|
130
|
-
var oEntitySet = oContext.getModel().getMetaModel().getObject("/".concat(sRootEntityName));
|
|
131
|
-
var oPageContext = oContext;
|
|
132
|
-
var aActiveContextpromises = getActiveContextInstances(oContext, oController, oEntitySet);
|
|
133
|
-
if (aActiveContextpromises.length > 0) {
|
|
134
|
-
return Promise.all(aActiveContextpromises).then(function (aData) {
|
|
135
|
-
var aActiveContextPaths = [];
|
|
136
|
-
var oPageEntitySet = oEntitySet;
|
|
137
|
-
if (aData[0].indexOf("/") === 0) {
|
|
138
|
-
aActiveContextPaths.push(aData[0].substring(1));
|
|
139
|
-
} else {
|
|
140
|
-
aActiveContextPaths.push(aData[0]);
|
|
141
|
-
}
|
|
142
|
-
// In the active context paths identify and replace the entitySet Name with corresponding navigation property name
|
|
143
|
-
// Required to form the url pointing to active context
|
|
144
|
-
// Example : SalesOrderItem --> _Item, MaterialDetails --> _MaterialDetails etc.,
|
|
145
|
-
for (var i = 1; i < aData.length; i++) {
|
|
146
|
-
var sActiveContextPath = aData[i];
|
|
147
|
-
var sNavigatioProperty = "";
|
|
148
|
-
var sEntitySetName = sActiveContextPath && sActiveContextPath.substr(0, sActiveContextPath.indexOf("("));
|
|
149
|
-
if (sEntitySetName.indexOf("/") === 0) {
|
|
150
|
-
sEntitySetName = sEntitySetName.substring(1);
|
|
151
|
-
}
|
|
152
|
-
if (sActiveContextPath.indexOf("/") === 0) {
|
|
153
|
-
sActiveContextPath = sActiveContextPath.substring(1);
|
|
154
|
-
}
|
|
155
|
-
sNavigatioProperty = Object.keys(oPageEntitySet.$NavigationPropertyBinding)[Object.values(oPageEntitySet.$NavigationPropertyBinding).indexOf(sEntitySetName)];
|
|
156
|
-
if (sNavigatioProperty) {
|
|
157
|
-
aActiveContextPaths.push(sActiveContextPath.replace(sEntitySetName, sNavigatioProperty));
|
|
158
|
-
oPageEntitySet = oPageContext.getModel().getMetaModel().getObject("/".concat(sEntitySetName)) || oEntitySet;
|
|
159
|
-
} else {
|
|
160
|
-
aActiveContextPaths.push(sActiveContextPath);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
return aActiveContextPaths;
|
|
164
|
-
}).catch(function (oError) {
|
|
165
|
-
Log.info("Failed to retrieve one or more active context path's", oError);
|
|
166
|
-
});
|
|
167
|
-
} else {
|
|
168
|
-
return Promise.resolve();
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
function fetchActiveContextPaths(oContext, oController) {
|
|
172
|
-
var oPromise, aSemanticKeys;
|
|
173
|
-
var sCurrentHashNoParams = HashChanger.getInstance().getHash().split("?")[0];
|
|
174
|
-
if (oContext) {
|
|
175
|
-
var oModel = oContext.getModel();
|
|
176
|
-
var oMetaModel = oModel.getMetaModel();
|
|
177
|
-
bGlobalIsStickySupported = ModelHelper.isStickySessionSupported(oMetaModel);
|
|
178
|
-
var sRootEntityName = sCurrentHashNoParams && sCurrentHashNoParams.substr(0, sCurrentHashNoParams.indexOf("("));
|
|
179
|
-
if (sRootEntityName.indexOf("/") === 0) {
|
|
180
|
-
sRootEntityName = sRootEntityName.substring(1);
|
|
181
|
-
}
|
|
182
|
-
aSemanticKeys = SemanticKeyHelper.getSemanticKeys(oMetaModel, sRootEntityName);
|
|
183
|
-
}
|
|
184
|
-
// Fetch active context details incase of below scenario's(where page is not sticky supported(we do not have draft instance))
|
|
185
|
-
// 1. In case of draft enabled Object page where semantic key based URL is not possible(like semantic keys are not modeled in the entity set)
|
|
186
|
-
// 2. In case of draft enabled Sub Object Pages (where semantic bookmarking is not supported)
|
|
187
|
-
var oViewData = oController.getView().getViewData();
|
|
188
|
-
if (oContext && !bGlobalIsStickySupported && (oViewData.viewLevel === 1 && !aSemanticKeys || oViewData.viewLevel >= 2)) {
|
|
189
|
-
oPromise = getActiveContextPaths(oContext, oController);
|
|
190
|
-
return oPromise;
|
|
191
|
-
} else {
|
|
192
|
-
return Promise.resolve();
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
// /**
|
|
197
|
-
// * Get share URL.
|
|
198
|
-
// * @param bIsEditable
|
|
199
|
-
// * @param bIsStickySupported
|
|
200
|
-
// * @param aActiveContextPaths
|
|
201
|
-
// * @returns {string} The share URL
|
|
202
|
-
// * @protected
|
|
203
|
-
// * @static
|
|
204
|
-
// */
|
|
205
|
-
function getShareUrl(bIsEditable, bIsStickySupported, aActiveContextPaths) {
|
|
206
|
-
var sShareUrl;
|
|
207
|
-
var sHash = HashChanger.getInstance().getHash();
|
|
208
|
-
var sBasePath = HashChanger.getInstance().hrefForAppSpecificHash ? HashChanger.getInstance().hrefForAppSpecificHash("") : "";
|
|
209
|
-
if (bIsEditable && !bIsStickySupported && aActiveContextPaths) {
|
|
210
|
-
sShareUrl = sBasePath + aActiveContextPaths.join("/");
|
|
211
|
-
} else {
|
|
212
|
-
sShareUrl = sHash ? sBasePath + sHash : window.location.hash;
|
|
213
|
-
}
|
|
214
|
-
return window.location.origin + window.location.pathname + window.location.search + sShareUrl;
|
|
215
|
-
}
|
|
216
|
-
function getShareEmailUrl() {
|
|
217
|
-
var oUShellContainer = sap.ushell && sap.ushell.Container;
|
|
218
|
-
if (oUShellContainer) {
|
|
219
|
-
return oUShellContainer.getFLPUrlAsync(true).then(function (sFLPUrl) {
|
|
220
|
-
return sFLPUrl;
|
|
221
|
-
}).catch(function (sError) {
|
|
222
|
-
Log.error("Could not retrieve cFLP URL for the sharing dialog (dialog will not be opened)", sError);
|
|
223
|
-
});
|
|
224
|
-
} else {
|
|
225
|
-
return Promise.resolve(document.URL);
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
function getJamUrl(bIsEditMode, bIsStickySupported, aActiveContextPaths) {
|
|
229
|
-
var sJamUrl;
|
|
230
|
-
var sHash = HashChanger.getInstance().getHash();
|
|
231
|
-
var sBasePath = HashChanger.getInstance().hrefForAppSpecificHash ? HashChanger.getInstance().hrefForAppSpecificHash("") : "";
|
|
232
|
-
if (bIsEditMode && !bIsStickySupported && aActiveContextPaths) {
|
|
233
|
-
sJamUrl = sBasePath + aActiveContextPaths.join("/");
|
|
234
|
-
} else {
|
|
235
|
-
sJamUrl = sHash ? sBasePath + sHash : window.location.hash;
|
|
236
|
-
}
|
|
237
|
-
// in case we are in cFLP scenario, the application is running
|
|
238
|
-
// inside an iframe, and there for we need to get the cFLP URL
|
|
239
|
-
// and not 'document.URL' that represents the iframe URL
|
|
240
|
-
if (sap.ushell && sap.ushell.Container && sap.ushell.Container.runningInIframe && sap.ushell.Container.runningInIframe()) {
|
|
241
|
-
sap.ushell.Container.getFLPUrl(true).then(function (sUrl) {
|
|
242
|
-
return sUrl.substr(0, sUrl.indexOf("#")) + sJamUrl;
|
|
243
|
-
}).catch(function (sError) {
|
|
244
|
-
Log.error("Could not retrieve cFLP URL for the sharing dialog (dialog will not be opened)", sError);
|
|
245
|
-
});
|
|
246
|
-
} else {
|
|
247
|
-
return Promise.resolve(window.location.origin + window.location.pathname + sJamUrl);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
var ShareExtensionOverride = {
|
|
251
|
-
adaptShareMetadata: function (oShareMetadata) {
|
|
252
|
-
try {
|
|
253
|
-
var _this2 = this;
|
|
254
|
-
var oContext = _this2.base.getView().getBindingContext();
|
|
255
|
-
var oUIModel = _this2.base.getView().getModel("ui");
|
|
256
|
-
var bIsEditable = oUIModel.getProperty("/isEditable");
|
|
257
|
-
var _temp2 = _catch(function () {
|
|
258
|
-
return Promise.resolve(fetchActiveContextPaths(oContext, _this2.base.getView().getController())).then(function (aActiveContextPaths) {
|
|
259
|
-
var oPageTitleInfo = _this2.base.getView().getController()._getPageTitleInformation();
|
|
260
|
-
return Promise.resolve(Promise.all([getJamUrl(bIsEditable, bGlobalIsStickySupported, aActiveContextPaths), getShareUrl(bIsEditable, bGlobalIsStickySupported, aActiveContextPaths), getShareEmailUrl()])).then(function (oData) {
|
|
261
|
-
var sTitle = oPageTitleInfo.title;
|
|
262
|
-
var sObjectSubtitle = oPageTitleInfo.subtitle ? oPageTitleInfo.subtitle.toString() : "";
|
|
263
|
-
if (sObjectSubtitle) {
|
|
264
|
-
sTitle = "".concat(sTitle, " - ").concat(sObjectSubtitle);
|
|
265
|
-
}
|
|
266
|
-
oShareMetadata.tile = {
|
|
267
|
-
title: oPageTitleInfo.title,
|
|
268
|
-
subtitle: sObjectSubtitle
|
|
269
|
-
};
|
|
270
|
-
oShareMetadata.email.title = sTitle;
|
|
271
|
-
oShareMetadata.title = sTitle;
|
|
272
|
-
oShareMetadata.jam.url = oData[0];
|
|
273
|
-
oShareMetadata.url = oData[1];
|
|
274
|
-
oShareMetadata.email.url = oData[2];
|
|
275
|
-
// MS Teams collaboration does not want to allow further changes to the URL
|
|
276
|
-
// so update colloborationInfo model at LR override to ignore further extension changes at multiple levels
|
|
277
|
-
var collaborationInfoModel = _this2.base.getView().getModel("collaborationInfo");
|
|
278
|
-
collaborationInfoModel.setProperty("/url", oShareMetadata.url);
|
|
279
|
-
collaborationInfoModel.setProperty("/appTitle", oShareMetadata.title);
|
|
280
|
-
collaborationInfoModel.setProperty("/subTitle", sObjectSubtitle);
|
|
281
|
-
});
|
|
282
|
-
});
|
|
283
|
-
}, function (error) {
|
|
284
|
-
Log.error(error);
|
|
285
|
-
});
|
|
286
|
-
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {
|
|
287
|
-
return oShareMetadata;
|
|
288
|
-
}) : oShareMetadata);
|
|
289
|
-
} catch (e) {
|
|
290
|
-
return Promise.reject(e);
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
};
|
|
294
|
-
return ShareExtensionOverride;
|
|
295
|
-
}, false);
|
|
296
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJib2R5IiwicmVjb3ZlciIsInJlc3VsdCIsImUiLCJ0aGVuIiwiYkdsb2JhbElzU3RpY2t5U3VwcG9ydGVkIiwiY3JlYXRlRmlsdGVyVG9GZXRjaEFjdGl2ZUNvbnRleHQiLCJtS2V5VmFsdWVzIiwiYklzQWN0aXZlRW50aXR5RGVmaW5lZCIsImFLZXlzIiwiT2JqZWN0Iiwia2V5cyIsImFGaWx0ZXJzIiwibWFwIiwic0tleSIsInNWYWx1ZSIsInVuZGVmaW5lZCIsIkZpbHRlciIsIkZpbHRlck9wZXJhdG9yIiwiRVEiLCJvQWN0aXZlRmlsdGVyIiwiZmlsdGVycyIsImFuZCIsInB1c2giLCJnZXRBY3RpdmVDb250ZXh0UGF0aCIsIm9Db250cm9sbGVyIiwic1BhZ2VFbnRpdHlOYW1lIiwib0ZpbHRlciIsIm9MaXN0QmluZGluZyIsImdldFZpZXciLCJnZXRCaW5kaW5nQ29udGV4dCIsImdldE1vZGVsIiwiYmluZExpc3QiLCIkJGdyb3VwSWQiLCJyZXF1ZXN0Q29udGV4dHMiLCJvQ29udGV4dHMiLCJsZW5ndGgiLCJnZXRQYXRoIiwiZ2V0QWN0aXZlQ29udGV4dEluc3RhbmNlcyIsIm9Db250ZXh0Iiwib0VudGl0eVNldCIsImFBY3RpdmVDb250ZXh0cHJvbWlzZXMiLCJhUGFnZXMiLCJzTWV0YVBhdGgiLCJnZXRNZXRhTW9kZWwiLCJnZXRNZXRhUGF0aCIsImluZGV4T2YiLCJzdWJzdHJpbmciLCJhTWV0YVBhdGhBcnJheSIsInNwbGl0Iiwic0N1cnJlbnRIYXNoTm9QYXJhbXMiLCJIYXNoQ2hhbmdlciIsImdldEluc3RhbmNlIiwiZ2V0SGFzaCIsImFDdXJyZW50SGFzaEFycmF5Iiwib1BhZ2VNYXAiLCJhUGFnZUhhc2hBcnJheSIsImZvckVhY2giLCJzUGFnZUhhc2giLCJhS2V5VmFsdWVzIiwic1BhZ2VIYXNoTmFtZSIsImkiLCJzS2V5QXNzaWdubWVudCIsImFQYXJ0cyIsInNLZXlWYWx1ZSIsIm9NZXRhTW9kZWwiLCJhVGVjaG5pY2FsS2V5cyIsImdldE9iamVjdCIsImpvaW4iLCJsYXN0SW5kZXhPZiIsImRlY29kZVVSSUNvbXBvbmVudCIsIm9QYWdlRW50aXR5U2V0Iiwic05hdmlnYXRpb25QYXRoIiwib1BhZ2VJbmZvIiwic1BhZ2VFbnRpdHlTZXROYW1lIiwiJE5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmciLCJwYWdlRW50aXR5TmFtZSIsImdldEFjdGl2ZUNvbnRleHRQYXRocyIsInNSb290RW50aXR5TmFtZSIsInN1YnN0ciIsIm9QYWdlQ29udGV4dCIsIlByb21pc2UiLCJhbGwiLCJhRGF0YSIsImFBY3RpdmVDb250ZXh0UGF0aHMiLCJzQWN0aXZlQ29udGV4dFBhdGgiLCJzTmF2aWdhdGlvUHJvcGVydHkiLCJzRW50aXR5U2V0TmFtZSIsInZhbHVlcyIsInJlcGxhY2UiLCJjYXRjaCIsIm9FcnJvciIsIkxvZyIsImluZm8iLCJyZXNvbHZlIiwiZmV0Y2hBY3RpdmVDb250ZXh0UGF0aHMiLCJvUHJvbWlzZSIsImFTZW1hbnRpY0tleXMiLCJvTW9kZWwiLCJNb2RlbEhlbHBlciIsImlzU3RpY2t5U2Vzc2lvblN1cHBvcnRlZCIsIlNlbWFudGljS2V5SGVscGVyIiwiZ2V0U2VtYW50aWNLZXlzIiwib1ZpZXdEYXRhIiwiZ2V0Vmlld0RhdGEiLCJ2aWV3TGV2ZWwiLCJnZXRTaGFyZVVybCIsImJJc0VkaXRhYmxlIiwiYklzU3RpY2t5U3VwcG9ydGVkIiwic1NoYXJlVXJsIiwic0hhc2giLCJzQmFzZVBhdGgiLCJocmVmRm9yQXBwU3BlY2lmaWNIYXNoIiwid2luZG93IiwibG9jYXRpb24iLCJoYXNoIiwib3JpZ2luIiwicGF0aG5hbWUiLCJzZWFyY2giLCJnZXRTaGFyZUVtYWlsVXJsIiwib1VTaGVsbENvbnRhaW5lciIsInNhcCIsInVzaGVsbCIsIkNvbnRhaW5lciIsImdldEZMUFVybEFzeW5jIiwic0ZMUFVybCIsInNFcnJvciIsImVycm9yIiwiZG9jdW1lbnQiLCJVUkwiLCJnZXRKYW1VcmwiLCJiSXNFZGl0TW9kZSIsInNKYW1VcmwiLCJydW5uaW5nSW5JZnJhbWUiLCJnZXRGTFBVcmwiLCJzVXJsIiwiU2hhcmVFeHRlbnNpb25PdmVycmlkZSIsImFkYXB0U2hhcmVNZXRhZGF0YSIsIm9TaGFyZU1ldGFkYXRhIiwiYmFzZSIsIm9VSU1vZGVsIiwiZ2V0UHJvcGVydHkiLCJnZXRDb250cm9sbGVyIiwib1BhZ2VUaXRsZUluZm8iLCJfZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24iLCJvRGF0YSIsInNUaXRsZSIsInRpdGxlIiwic09iamVjdFN1YnRpdGxlIiwic3VidGl0bGUiLCJ0b1N0cmluZyIsInRpbGUiLCJlbWFpbCIsImphbSIsInVybCIsImNvbGxhYm9yYXRpb25JbmZvTW9kZWwiLCJzZXRQcm9wZXJ0eSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiU2hhcmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSBTaGFyZSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvU2hhcmVcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IFNlbWFudGljS2V5SGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL1NlbWFudGljS2V5SGVscGVyXCI7XG5pbXBvcnQgdHlwZSBPYmplY3RQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL09iamVjdFBhZ2VDb250cm9sbGVyLmNvbnRyb2xsZXJcIjtcbmltcG9ydCBIYXNoQ2hhbmdlciBmcm9tIFwic2FwL3VpL2NvcmUvcm91dGluZy9IYXNoQ2hhbmdlclwiO1xuaW1wb3J0IEZpbHRlciBmcm9tIFwic2FwL3VpL21vZGVsL0ZpbHRlclwiO1xuaW1wb3J0IEZpbHRlck9wZXJhdG9yIGZyb20gXCJzYXAvdWkvbW9kZWwvRmlsdGVyT3BlcmF0b3JcIjtcbmltcG9ydCBKU09OTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9qc29uL0pTT05Nb2RlbFwiO1xuXG5sZXQgYkdsb2JhbElzU3RpY2t5U3VwcG9ydGVkOiBib29sZWFuO1xuXG5mdW5jdGlvbiBjcmVhdGVGaWx0ZXJUb0ZldGNoQWN0aXZlQ29udGV4dChtS2V5VmFsdWVzOiBhbnksIGJJc0FjdGl2ZUVudGl0eURlZmluZWQ6IGFueSkge1xuXHRjb25zdCBhS2V5cyA9IE9iamVjdC5rZXlzKG1LZXlWYWx1ZXMpO1xuXG5cdGNvbnN0IGFGaWx0ZXJzID0gYUtleXMubWFwKGZ1bmN0aW9uIChzS2V5OiBzdHJpbmcpIHtcblx0XHRjb25zdCBzVmFsdWUgPSBtS2V5VmFsdWVzW3NLZXldO1xuXHRcdGlmIChzVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0cmV0dXJuIG5ldyBGaWx0ZXIoc0tleSwgRmlsdGVyT3BlcmF0b3IuRVEsIHNWYWx1ZSk7XG5cdFx0fVxuXHR9KTtcblxuXHRpZiAoYklzQWN0aXZlRW50aXR5RGVmaW5lZCkge1xuXHRcdGNvbnN0IG9BY3RpdmVGaWx0ZXIgPSBuZXcgRmlsdGVyKHtcblx0XHRcdGZpbHRlcnM6IFtuZXcgRmlsdGVyKFwiU2libGluZ0VudGl0eS9Jc0FjdGl2ZUVudGl0eVwiLCBGaWx0ZXJPcGVyYXRvci5FUSwgdHJ1ZSldLFxuXHRcdFx0YW5kOiBmYWxzZVxuXHRcdH0pO1xuXG5cdFx0YUZpbHRlcnMucHVzaChvQWN0aXZlRmlsdGVyKTtcblx0fVxuXG5cdHJldHVybiBuZXcgRmlsdGVyKGFGaWx0ZXJzIGFzIGFueSwgdHJ1ZSk7XG59XG5mdW5jdGlvbiBnZXRBY3RpdmVDb250ZXh0UGF0aChvQ29udHJvbGxlcjogYW55LCBzUGFnZUVudGl0eU5hbWU6IGFueSwgb0ZpbHRlcjogYW55KSB7XG5cdGNvbnN0IG9MaXN0QmluZGluZyA9IG9Db250cm9sbGVyXG5cdFx0LmdldFZpZXcoKVxuXHRcdC5nZXRCaW5kaW5nQ29udGV4dCgpXG5cdFx0LmdldE1vZGVsKClcblx0XHQuYmluZExpc3QoYC8ke3NQYWdlRW50aXR5TmFtZX1gLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgb0ZpbHRlciwgeyAkJGdyb3VwSWQ6IFwiJGF1dG8uSGVyb2VzXCIgfSk7XG5cdHJldHVybiBvTGlzdEJpbmRpbmcucmVxdWVzdENvbnRleHRzKDAsIDIpLnRoZW4oZnVuY3Rpb24gKG9Db250ZXh0czogYW55KSB7XG5cdFx0aWYgKG9Db250ZXh0cyAmJiBvQ29udGV4dHMubGVuZ3RoKSB7XG5cdFx0XHRyZXR1cm4gb0NvbnRleHRzWzBdLmdldFBhdGgoKTtcblx0XHR9XG5cdH0pO1xufVxuZnVuY3Rpb24gZ2V0QWN0aXZlQ29udGV4dEluc3RhbmNlcyhvQ29udGV4dDogYW55LCBvQ29udHJvbGxlcjogYW55LCBvRW50aXR5U2V0OiBhbnkpIHtcblx0Y29uc3QgYUFjdGl2ZUNvbnRleHRwcm9taXNlczogYW55W10gPSBbXTtcblx0Y29uc3QgYVBhZ2VzOiBhbnlbXSA9IFtdO1xuXHRsZXQgc01ldGFQYXRoID0gb0NvbnRleHQuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKS5nZXRNZXRhUGF0aChvQ29udGV4dC5nZXRQYXRoKCkpO1xuXHRpZiAoc01ldGFQYXRoLmluZGV4T2YoXCIvXCIpID09PSAwKSB7XG5cdFx0c01ldGFQYXRoID0gc01ldGFQYXRoLnN1YnN0cmluZygxKTtcblx0fVxuXHRjb25zdCBhTWV0YVBhdGhBcnJheSA9IHNNZXRhUGF0aC5zcGxpdChcIi9cIik7XG5cdGNvbnN0IHNDdXJyZW50SGFzaE5vUGFyYW1zID0gSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKS5nZXRIYXNoKCkuc3BsaXQoXCI/XCIpWzBdO1xuXHRjb25zdCBhQ3VycmVudEhhc2hBcnJheSA9IHNDdXJyZW50SGFzaE5vUGFyYW1zLnNwbGl0KFwiL1wiKTtcblxuXHQvLyBvUGFnZU1hcCAtIGNyZWF0aW5nIGFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIG1hcCBvZiBtZXRhcGF0aCBuYW1lIGFuZCBpdCdzIHRlY2huaWNhbCBkZXRhaWxzXG5cdC8vIHdoaWNoIGlzIHJlcXVpcmVkIHRvIGNyZWF0ZSBhIGZpbHRlciB0byBmZXRjaCB0aGUgcmVsYXZhbnQvY29ycmVjdCBhY3RpdmUgY29udGV4dFxuXHQvLyBFeGFtcGxlOiB7U2FsZXNPcmRlck1hbmFnZTp7dGVjaG5pY2FsSUQ6dGVjaG5pY2FsSURWYWx1ZX0sIF9JdGVtOnt0ZWNobmljYWxJRDp0ZWNobmljYWxJRFZhbHVlfX0gZXRjLixcblx0Y29uc3Qgb1BhZ2VNYXA6IGFueSA9IHt9O1xuXHRjb25zdCBhUGFnZUhhc2hBcnJheTogYW55W10gPSBbXTtcblx0YUN1cnJlbnRIYXNoQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoc1BhZ2VIYXNoOiBhbnkpIHtcblx0XHRjb25zdCBhS2V5VmFsdWVzID0gc1BhZ2VIYXNoLnN1YnN0cmluZyhzUGFnZUhhc2guaW5kZXhPZihcIihcIikgKyAxLCBzUGFnZUhhc2gubGVuZ3RoIC0gMSkuc3BsaXQoXCIsXCIpO1xuXHRcdGNvbnN0IG1LZXlWYWx1ZXM6IGFueSA9IHt9O1xuXHRcdGNvbnN0IHNQYWdlSGFzaE5hbWUgPSBzUGFnZUhhc2guc3BsaXQoXCIoXCIpWzBdO1xuXHRcdG9QYWdlTWFwW3NQYWdlSGFzaE5hbWVdID0ge307XG5cdFx0YVBhZ2VIYXNoQXJyYXkucHVzaChzUGFnZUhhc2hOYW1lKTtcblx0XHRvUGFnZU1hcFtzUGFnZUhhc2hOYW1lXVtcImJJc0FjdGl2ZUVudGl0eURlZmluZWRcIl0gPSB0cnVlO1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYUtleVZhbHVlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0Y29uc3Qgc0tleUFzc2lnbm1lbnQgPSBhS2V5VmFsdWVzW2ldO1xuXHRcdFx0Y29uc3QgYVBhcnRzID0gc0tleUFzc2lnbm1lbnQuc3BsaXQoXCI9XCIpO1xuXHRcdFx0bGV0IHNLZXlWYWx1ZSA9IGFQYXJ0c1sxXTtcblx0XHRcdGxldCBzS2V5ID0gYVBhcnRzWzBdO1xuXHRcdFx0Ly8gSW4gY2FzZSBpZiBvbmx5IG9uZSB0ZWNobmljYWwga2V5IGlzIGRlZmluZWQgdGhlbiB0aGUgdXJsIGp1c3QgY29udGFpbnMgdGhlIHRlY2huaWNhbElEVmFsdWUgYnV0IG5vdCB0aGUgdGVjaG5pY2FsSURcblx0XHRcdC8vIEV4YW1wbGU6IFNhbGVzT3JkZXJNYW5hZ2UoSUQ9MTExMTExMjktYWFhYS1iYmJiLWNjY2MtZGRkZGVlZWVmZmZmLElzQWN0aXZlRW50aXR5PWZhbHNlKS9fSXRlbSgxMTExMTEyOS1hYWFhLWJiYmItY2NjYy1kZGRkZWVlZWZmZmYpXG5cdFx0XHQvLyBJbiBhYm92ZSBleGFtcGxlIFNhbGVzT3JkZXJJdGVtIGhhcyBvbmx5IG9uZSB0ZWNobmljYWwga2V5IGRlZmluZWQsIGhlbmNlIHRlY2huaWNhbElEIGluZm8gaXMgbm90IHByZXNlbnQgaW4gdGhlIHVybFxuXHRcdFx0Ly8gSGVuY2UgaW4gc3VjaCBjYXNlcyB3ZSBnZXQgdGVjaG5pY2FsIGtleSBhbmQgdXNlIHRoZW0gdG8gZmV0Y2ggYWN0aXZlIGNvbnRleHRcblx0XHRcdGlmIChzS2V5QXNzaWdubWVudC5pbmRleE9mKFwiPVwiKSA9PT0gLTEpIHtcblx0XHRcdFx0Y29uc3Qgb01ldGFNb2RlbCA9IG9Db250ZXh0LmdldE1vZGVsKCkuZ2V0TWV0YU1vZGVsKCk7XG5cdFx0XHRcdGNvbnN0IGFUZWNobmljYWxLZXlzID0gb01ldGFNb2RlbC5nZXRPYmplY3QoYC8ke2FQYWdlSGFzaEFycmF5LmpvaW4oXCIvXCIpfS8kVHlwZS8kS2V5YCk7XG5cdFx0XHRcdHNLZXlWYWx1ZSA9IGFQYXJ0c1swXTtcblx0XHRcdFx0c0tleSA9IGFUZWNobmljYWxLZXlzWzBdO1xuXHRcdFx0XHRvUGFnZU1hcFtzUGFnZUhhc2guc3BsaXQoXCIoXCIpWzBdXVtcImJJc0FjdGl2ZUVudGl0eURlZmluZWRcIl0gPSBmYWxzZTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKHNLZXkgIT09IFwiSXNBY3RpdmVFbnRpdHlcIikge1xuXHRcdFx0XHRpZiAoc0tleVZhbHVlLmluZGV4T2YoXCInXCIpID09PSAwICYmIHNLZXlWYWx1ZS5sYXN0SW5kZXhPZihcIidcIikgPT09IHNLZXlWYWx1ZS5sZW5ndGggLSAxKSB7XG5cdFx0XHRcdFx0Ly8gUmVtb3ZlIHRoZSBxdW90ZXMgZnJvbSB0aGUgdmFsdWUgYW5kIGRlY29kZSBzcGVjaWFsIGNoYXJzXG5cdFx0XHRcdFx0c0tleVZhbHVlID0gZGVjb2RlVVJJQ29tcG9uZW50KHNLZXlWYWx1ZS5zdWJzdHJpbmcoMSwgc0tleVZhbHVlLmxlbmd0aCAtIDEpKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRtS2V5VmFsdWVzW3NLZXldID0gc0tleVZhbHVlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRvUGFnZU1hcFtzUGFnZUhhc2hOYW1lXS5tS2V5VmFsdWVzID0gbUtleVZhbHVlcztcblx0fSk7XG5cblx0bGV0IG9QYWdlRW50aXR5U2V0ID0gb0VudGl0eVNldDtcblx0YU1ldGFQYXRoQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoc05hdmlnYXRpb25QYXRoOiBhbnkpIHtcblx0XHRjb25zdCBvUGFnZUluZm86IGFueSA9IHt9O1xuXHRcdGNvbnN0IHNQYWdlRW50aXR5U2V0TmFtZSA9IG9QYWdlRW50aXR5U2V0LiROYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nICYmIG9QYWdlRW50aXR5U2V0LiROYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nW3NOYXZpZ2F0aW9uUGF0aF07XG5cdFx0aWYgKHNQYWdlRW50aXR5U2V0TmFtZSkge1xuXHRcdFx0b1BhZ2VJbmZvLnBhZ2VFbnRpdHlOYW1lID0gb1BhZ2VFbnRpdHlTZXQuJE5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmdbc05hdmlnYXRpb25QYXRoXTtcblx0XHRcdG9QYWdlRW50aXR5U2V0ID0gb0NvbnRleHQuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKS5nZXRPYmplY3QoYC8ke3NQYWdlRW50aXR5U2V0TmFtZX1gKSB8fCBvRW50aXR5U2V0O1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRvUGFnZUluZm8ucGFnZUVudGl0eU5hbWUgPSBzTmF2aWdhdGlvblBhdGg7XG5cdFx0fVxuXHRcdG9QYWdlSW5mby5tS2V5VmFsdWVzID0gb1BhZ2VNYXBbc05hdmlnYXRpb25QYXRoXS5tS2V5VmFsdWVzO1xuXHRcdG9QYWdlSW5mby5iSXNBY3RpdmVFbnRpdHlEZWZpbmVkID0gb1BhZ2VNYXBbc05hdmlnYXRpb25QYXRoXS5iSXNBY3RpdmVFbnRpdHlEZWZpbmVkO1xuXHRcdGFQYWdlcy5wdXNoKG9QYWdlSW5mbyk7XG5cdH0pO1xuXG5cdGFQYWdlcy5mb3JFYWNoKGZ1bmN0aW9uIChvUGFnZUluZm86IGFueSkge1xuXHRcdGNvbnN0IG9GaWx0ZXIgPSBjcmVhdGVGaWx0ZXJUb0ZldGNoQWN0aXZlQ29udGV4dChvUGFnZUluZm8ubUtleVZhbHVlcywgb1BhZ2VJbmZvLmJJc0FjdGl2ZUVudGl0eURlZmluZWQpO1xuXHRcdGFBY3RpdmVDb250ZXh0cHJvbWlzZXMucHVzaChnZXRBY3RpdmVDb250ZXh0UGF0aChvQ29udHJvbGxlciwgb1BhZ2VJbmZvLnBhZ2VFbnRpdHlOYW1lLCBvRmlsdGVyKSk7XG5cdH0pO1xuXG5cdHJldHVybiBhQWN0aXZlQ29udGV4dHByb21pc2VzO1xufVxuXG4vKipcbiAqIE1ldGhvZCB0byBmZXRjaCBhY3RpdmUgY29udGV4dCBwYXRoJ3MuXG4gKlxuICogQHBhcmFtIG9Db250ZXh0IFRoZSBQYWdlIENvbnRleHRcbiAqIEBwYXJhbSBvQ29udHJvbGxlclxuICogQHJldHVybnMgUHJvbWlzZSB3aGljaCBpcyByZXNvbHZlZCBvbmNlIHRoZSBhY3RpdmUgY29udGV4dCdzIGFyZSBmZXRjaGVkXG4gKi9cbmZ1bmN0aW9uIGdldEFjdGl2ZUNvbnRleHRQYXRocyhvQ29udGV4dDogYW55LCBvQ29udHJvbGxlcjogYW55KSB7XG5cdGNvbnN0IHNDdXJyZW50SGFzaE5vUGFyYW1zID0gSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKS5nZXRIYXNoKCkuc3BsaXQoXCI/XCIpWzBdO1xuXHRsZXQgc1Jvb3RFbnRpdHlOYW1lID0gc0N1cnJlbnRIYXNoTm9QYXJhbXMgJiYgc0N1cnJlbnRIYXNoTm9QYXJhbXMuc3Vic3RyKDAsIHNDdXJyZW50SGFzaE5vUGFyYW1zLmluZGV4T2YoXCIoXCIpKTtcblx0aWYgKHNSb290RW50aXR5TmFtZS5pbmRleE9mKFwiL1wiKSA9PT0gMCkge1xuXHRcdHNSb290RW50aXR5TmFtZSA9IHNSb290RW50aXR5TmFtZS5zdWJzdHJpbmcoMSk7XG5cdH1cblx0Y29uc3Qgb0VudGl0eVNldCA9IG9Db250ZXh0LmdldE1vZGVsKCkuZ2V0TWV0YU1vZGVsKCkuZ2V0T2JqZWN0KGAvJHtzUm9vdEVudGl0eU5hbWV9YCk7XG5cdGNvbnN0IG9QYWdlQ29udGV4dCA9IG9Db250ZXh0O1xuXHRjb25zdCBhQWN0aXZlQ29udGV4dHByb21pc2VzID0gZ2V0QWN0aXZlQ29udGV4dEluc3RhbmNlcyhvQ29udGV4dCwgb0NvbnRyb2xsZXIsIG9FbnRpdHlTZXQpO1xuXHRpZiAoYUFjdGl2ZUNvbnRleHRwcm9taXNlcy5sZW5ndGggPiAwKSB7XG5cdFx0cmV0dXJuIFByb21pc2UuYWxsKGFBY3RpdmVDb250ZXh0cHJvbWlzZXMpXG5cdFx0XHQudGhlbihmdW5jdGlvbiAoYURhdGE6IGFueVtdKSB7XG5cdFx0XHRcdGNvbnN0IGFBY3RpdmVDb250ZXh0UGF0aHMgPSBbXTtcblx0XHRcdFx0bGV0IG9QYWdlRW50aXR5U2V0ID0gb0VudGl0eVNldDtcblx0XHRcdFx0aWYgKGFEYXRhWzBdLmluZGV4T2YoXCIvXCIpID09PSAwKSB7XG5cdFx0XHRcdFx0YUFjdGl2ZUNvbnRleHRQYXRocy5wdXNoKGFEYXRhWzBdLnN1YnN0cmluZygxKSk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0YUFjdGl2ZUNvbnRleHRQYXRocy5wdXNoKGFEYXRhWzBdKTtcblx0XHRcdFx0fVxuXHRcdFx0XHQvLyBJbiB0aGUgYWN0aXZlIGNvbnRleHQgcGF0aHMgaWRlbnRpZnkgYW5kIHJlcGxhY2UgdGhlIGVudGl0eVNldCBOYW1lIHdpdGggY29ycmVzcG9uZGluZyBuYXZpZ2F0aW9uIHByb3BlcnR5IG5hbWVcblx0XHRcdFx0Ly8gUmVxdWlyZWQgdG8gZm9ybSB0aGUgdXJsIHBvaW50aW5nIHRvIGFjdGl2ZSBjb250ZXh0XG5cdFx0XHRcdC8vIEV4YW1wbGUgOiBTYWxlc09yZGVySXRlbSAtLT4gX0l0ZW0sIE1hdGVyaWFsRGV0YWlscyAtLT4gX01hdGVyaWFsRGV0YWlscyBldGMuLFxuXHRcdFx0XHRmb3IgKGxldCBpID0gMTsgaSA8IGFEYXRhLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdFx0bGV0IHNBY3RpdmVDb250ZXh0UGF0aCA9IGFEYXRhW2ldO1xuXHRcdFx0XHRcdGxldCBzTmF2aWdhdGlvUHJvcGVydHkgPSBcIlwiO1xuXHRcdFx0XHRcdGxldCBzRW50aXR5U2V0TmFtZSA9IHNBY3RpdmVDb250ZXh0UGF0aCAmJiBzQWN0aXZlQ29udGV4dFBhdGguc3Vic3RyKDAsIHNBY3RpdmVDb250ZXh0UGF0aC5pbmRleE9mKFwiKFwiKSk7XG5cdFx0XHRcdFx0aWYgKHNFbnRpdHlTZXROYW1lLmluZGV4T2YoXCIvXCIpID09PSAwKSB7XG5cdFx0XHRcdFx0XHRzRW50aXR5U2V0TmFtZSA9IHNFbnRpdHlTZXROYW1lLnN1YnN0cmluZygxKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aWYgKHNBY3RpdmVDb250ZXh0UGF0aC5pbmRleE9mKFwiL1wiKSA9PT0gMCkge1xuXHRcdFx0XHRcdFx0c0FjdGl2ZUNvbnRleHRQYXRoID0gc0FjdGl2ZUNvbnRleHRQYXRoLnN1YnN0cmluZygxKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0c05hdmlnYXRpb1Byb3BlcnR5ID0gT2JqZWN0LmtleXMob1BhZ2VFbnRpdHlTZXQuJE5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmcpW1xuXHRcdFx0XHRcdFx0T2JqZWN0LnZhbHVlcyhvUGFnZUVudGl0eVNldC4kTmF2aWdhdGlvblByb3BlcnR5QmluZGluZykuaW5kZXhPZihzRW50aXR5U2V0TmFtZSlcblx0XHRcdFx0XHRdO1xuXHRcdFx0XHRcdGlmIChzTmF2aWdhdGlvUHJvcGVydHkpIHtcblx0XHRcdFx0XHRcdGFBY3RpdmVDb250ZXh0UGF0aHMucHVzaChzQWN0aXZlQ29udGV4dFBhdGgucmVwbGFjZShzRW50aXR5U2V0TmFtZSwgc05hdmlnYXRpb1Byb3BlcnR5KSk7XG5cdFx0XHRcdFx0XHRvUGFnZUVudGl0eVNldCA9IG9QYWdlQ29udGV4dC5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpLmdldE9iamVjdChgLyR7c0VudGl0eVNldE5hbWV9YCkgfHwgb0VudGl0eVNldDtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0YUFjdGl2ZUNvbnRleHRQYXRocy5wdXNoKHNBY3RpdmVDb250ZXh0UGF0aCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBhQWN0aXZlQ29udGV4dFBhdGhzO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAob0Vycm9yOiBhbnkpIHtcblx0XHRcdFx0TG9nLmluZm8oXCJGYWlsZWQgdG8gcmV0cmlldmUgb25lIG9yIG1vcmUgYWN0aXZlIGNvbnRleHQgcGF0aCdzXCIsIG9FcnJvcik7XG5cdFx0XHR9KTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdH1cbn1cbmZ1bmN0aW9uIGZldGNoQWN0aXZlQ29udGV4dFBhdGhzKG9Db250ZXh0OiBhbnksIG9Db250cm9sbGVyOiBhbnkpIHtcblx0bGV0IG9Qcm9taXNlLCBhU2VtYW50aWNLZXlzO1xuXHRjb25zdCBzQ3VycmVudEhhc2hOb1BhcmFtcyA9IEhhc2hDaGFuZ2VyLmdldEluc3RhbmNlKCkuZ2V0SGFzaCgpLnNwbGl0KFwiP1wiKVswXTtcblx0aWYgKG9Db250ZXh0KSB7XG5cdFx0Y29uc3Qgb01vZGVsID0gb0NvbnRleHQuZ2V0TW9kZWwoKTtcblx0XHRjb25zdCBvTWV0YU1vZGVsID0gb01vZGVsLmdldE1ldGFNb2RlbCgpO1xuXHRcdGJHbG9iYWxJc1N0aWNreVN1cHBvcnRlZCA9IE1vZGVsSGVscGVyLmlzU3RpY2t5U2Vzc2lvblN1cHBvcnRlZChvTWV0YU1vZGVsKTtcblx0XHRsZXQgc1Jvb3RFbnRpdHlOYW1lID0gc0N1cnJlbnRIYXNoTm9QYXJhbXMgJiYgc0N1cnJlbnRIYXNoTm9QYXJhbXMuc3Vic3RyKDAsIHNDdXJyZW50SGFzaE5vUGFyYW1zLmluZGV4T2YoXCIoXCIpKTtcblx0XHRpZiAoc1Jvb3RFbnRpdHlOYW1lLmluZGV4T2YoXCIvXCIpID09PSAwKSB7XG5cdFx0XHRzUm9vdEVudGl0eU5hbWUgPSBzUm9vdEVudGl0eU5hbWUuc3Vic3RyaW5nKDEpO1xuXHRcdH1cblx0XHRhU2VtYW50aWNLZXlzID0gU2VtYW50aWNLZXlIZWxwZXIuZ2V0U2VtYW50aWNLZXlzKG9NZXRhTW9kZWwsIHNSb290RW50aXR5TmFtZSk7XG5cdH1cblx0Ly8gRmV0Y2ggYWN0aXZlIGNvbnRleHQgZGV0YWlscyBpbmNhc2Ugb2YgYmVsb3cgc2NlbmFyaW8ncyh3aGVyZSBwYWdlIGlzIG5vdCBzdGlja3kgc3VwcG9ydGVkKHdlIGRvIG5vdCBoYXZlIGRyYWZ0IGluc3RhbmNlKSlcblx0Ly8gMS4gSW4gY2FzZSBvZiBkcmFmdCBlbmFibGVkIE9iamVjdCBwYWdlIHdoZXJlIHNlbWFudGljIGtleSBiYXNlZCBVUkwgaXMgbm90IHBvc3NpYmxlKGxpa2Ugc2VtYW50aWMga2V5cyBhcmUgbm90IG1vZGVsZWQgaW4gdGhlIGVudGl0eSBzZXQpXG5cdC8vIDIuIEluIGNhc2Ugb2YgZHJhZnQgZW5hYmxlZCBTdWIgT2JqZWN0IFBhZ2VzICh3aGVyZSBzZW1hbnRpYyBib29rbWFya2luZyBpcyBub3Qgc3VwcG9ydGVkKVxuXHRjb25zdCBvVmlld0RhdGEgPSBvQ29udHJvbGxlci5nZXRWaWV3KCkuZ2V0Vmlld0RhdGEoKTtcblx0aWYgKG9Db250ZXh0ICYmICFiR2xvYmFsSXNTdGlja3lTdXBwb3J0ZWQgJiYgKChvVmlld0RhdGEudmlld0xldmVsID09PSAxICYmICFhU2VtYW50aWNLZXlzKSB8fCBvVmlld0RhdGEudmlld0xldmVsID49IDIpKSB7XG5cdFx0b1Byb21pc2UgPSBnZXRBY3RpdmVDb250ZXh0UGF0aHMob0NvbnRleHQsIG9Db250cm9sbGVyKTtcblx0XHRyZXR1cm4gb1Byb21pc2U7XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG59XG5cbi8vIC8qKlxuLy8gICogR2V0IHNoYXJlIFVSTC5cbi8vICAqIEBwYXJhbSBiSXNFZGl0YWJsZVxuLy8gICogQHBhcmFtIGJJc1N0aWNreVN1cHBvcnRlZFxuLy8gICogQHBhcmFtIGFBY3RpdmVDb250ZXh0UGF0aHNcbi8vICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBzaGFyZSBVUkxcbi8vICAqIEBwcm90ZWN0ZWRcbi8vICAqIEBzdGF0aWNcbi8vICAqL1xuZnVuY3Rpb24gZ2V0U2hhcmVVcmwoYklzRWRpdGFibGU6IGFueSwgYklzU3RpY2t5U3VwcG9ydGVkOiBhbnksIGFBY3RpdmVDb250ZXh0UGF0aHM6IGFueSkge1xuXHRsZXQgc1NoYXJlVXJsO1xuXHRjb25zdCBzSGFzaCA9IEhhc2hDaGFuZ2VyLmdldEluc3RhbmNlKCkuZ2V0SGFzaCgpO1xuXHRjb25zdCBzQmFzZVBhdGggPSAoSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKSBhcyBhbnkpLmhyZWZGb3JBcHBTcGVjaWZpY0hhc2hcblx0XHQ/IChIYXNoQ2hhbmdlci5nZXRJbnN0YW5jZSgpIGFzIGFueSkuaHJlZkZvckFwcFNwZWNpZmljSGFzaChcIlwiKVxuXHRcdDogXCJcIjtcblx0aWYgKGJJc0VkaXRhYmxlICYmICFiSXNTdGlja3lTdXBwb3J0ZWQgJiYgYUFjdGl2ZUNvbnRleHRQYXRocykge1xuXHRcdHNTaGFyZVVybCA9IHNCYXNlUGF0aCArIGFBY3RpdmVDb250ZXh0UGF0aHMuam9pbihcIi9cIik7XG5cdH0gZWxzZSB7XG5cdFx0c1NoYXJlVXJsID0gc0hhc2ggPyBzQmFzZVBhdGggKyBzSGFzaCA6IHdpbmRvdy5sb2NhdGlvbi5oYXNoO1xuXHR9XG5cdHJldHVybiB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lICsgd2luZG93LmxvY2F0aW9uLnNlYXJjaCArIHNTaGFyZVVybDtcbn1cbmZ1bmN0aW9uIGdldFNoYXJlRW1haWxVcmwoKSB7XG5cdGNvbnN0IG9VU2hlbGxDb250YWluZXIgPSBzYXAudXNoZWxsICYmIHNhcC51c2hlbGwuQ29udGFpbmVyO1xuXHRpZiAob1VTaGVsbENvbnRhaW5lcikge1xuXHRcdHJldHVybiBvVVNoZWxsQ29udGFpbmVyXG5cdFx0XHQuZ2V0RkxQVXJsQXN5bmModHJ1ZSlcblx0XHRcdC50aGVuKGZ1bmN0aW9uIChzRkxQVXJsOiBhbnkpIHtcblx0XHRcdFx0cmV0dXJuIHNGTFBVcmw7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChzRXJyb3I6IGFueSkge1xuXHRcdFx0XHRMb2cuZXJyb3IoXCJDb3VsZCBub3QgcmV0cmlldmUgY0ZMUCBVUkwgZm9yIHRoZSBzaGFyaW5nIGRpYWxvZyAoZGlhbG9nIHdpbGwgbm90IGJlIG9wZW5lZClcIiwgc0Vycm9yKTtcblx0XHRcdH0pO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoZG9jdW1lbnQuVVJMKTtcblx0fVxufVxuXG5mdW5jdGlvbiBnZXRKYW1VcmwoYklzRWRpdE1vZGU6IGJvb2xlYW4sIGJJc1N0aWNreVN1cHBvcnRlZDogYW55LCBhQWN0aXZlQ29udGV4dFBhdGhzOiBhbnkpIHtcblx0bGV0IHNKYW1Vcmw6IHN0cmluZztcblx0Y29uc3Qgc0hhc2ggPSBIYXNoQ2hhbmdlci5nZXRJbnN0YW5jZSgpLmdldEhhc2goKTtcblx0Y29uc3Qgc0Jhc2VQYXRoID0gKEhhc2hDaGFuZ2VyLmdldEluc3RhbmNlKCkgYXMgYW55KS5ocmVmRm9yQXBwU3BlY2lmaWNIYXNoXG5cdFx0PyAoSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKSBhcyBhbnkpLmhyZWZGb3JBcHBTcGVjaWZpY0hhc2goXCJcIilcblx0XHQ6IFwiXCI7XG5cdGlmIChiSXNFZGl0TW9kZSAmJiAhYklzU3RpY2t5U3VwcG9ydGVkICYmIGFBY3RpdmVDb250ZXh0UGF0aHMpIHtcblx0XHRzSmFtVXJsID0gc0Jhc2VQYXRoICsgYUFjdGl2ZUNvbnRleHRQYXRocy5qb2luKFwiL1wiKTtcblx0fSBlbHNlIHtcblx0XHRzSmFtVXJsID0gc0hhc2ggPyBzQmFzZVBhdGggKyBzSGFzaCA6IHdpbmRvdy5sb2NhdGlvbi5oYXNoO1xuXHR9XG5cdC8vIGluIGNhc2Ugd2UgYXJlIGluIGNGTFAgc2NlbmFyaW8sIHRoZSBhcHBsaWNhdGlvbiBpcyBydW5uaW5nXG5cdC8vIGluc2lkZSBhbiBpZnJhbWUsIGFuZCB0aGVyZSBmb3Igd2UgbmVlZCB0byBnZXQgdGhlIGNGTFAgVVJMXG5cdC8vIGFuZCBub3QgJ2RvY3VtZW50LlVSTCcgdGhhdCByZXByZXNlbnRzIHRoZSBpZnJhbWUgVVJMXG5cdGlmIChzYXAudXNoZWxsICYmIHNhcC51c2hlbGwuQ29udGFpbmVyICYmIHNhcC51c2hlbGwuQ29udGFpbmVyLnJ1bm5pbmdJbklmcmFtZSAmJiBzYXAudXNoZWxsLkNvbnRhaW5lci5ydW5uaW5nSW5JZnJhbWUoKSkge1xuXHRcdHNhcC51c2hlbGwuQ29udGFpbmVyLmdldEZMUFVybCh0cnVlKVxuXHRcdFx0LnRoZW4oZnVuY3Rpb24gKHNVcmw6IGFueSkge1xuXHRcdFx0XHRyZXR1cm4gc1VybC5zdWJzdHIoMCwgc1VybC5pbmRleE9mKFwiI1wiKSkgKyBzSmFtVXJsO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAoc0Vycm9yOiBhbnkpIHtcblx0XHRcdFx0TG9nLmVycm9yKFwiQ291bGQgbm90IHJldHJpZXZlIGNGTFAgVVJMIGZvciB0aGUgc2hhcmluZyBkaWFsb2cgKGRpYWxvZyB3aWxsIG5vdCBiZSBvcGVuZWQpXCIsIHNFcnJvcik7XG5cdFx0XHR9KTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUgKyBzSmFtVXJsKTtcblx0fVxufVxuXG5jb25zdCBTaGFyZUV4dGVuc2lvbk92ZXJyaWRlID0ge1xuXHRhZGFwdFNoYXJlTWV0YWRhdGE6IGFzeW5jIGZ1bmN0aW9uICh0aGlzOiBTaGFyZSwgb1NoYXJlTWV0YWRhdGE6IGFueSkge1xuXHRcdGNvbnN0IG9Db250ZXh0ID0gdGhpcy5iYXNlLmdldFZpZXcoKS5nZXRCaW5kaW5nQ29udGV4dCgpO1xuXHRcdGNvbnN0IG9VSU1vZGVsID0gdGhpcy5iYXNlLmdldFZpZXcoKS5nZXRNb2RlbChcInVpXCIpO1xuXHRcdGNvbnN0IGJJc0VkaXRhYmxlID0gb1VJTW9kZWwuZ2V0UHJvcGVydHkoXCIvaXNFZGl0YWJsZVwiKTtcblxuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCBhQWN0aXZlQ29udGV4dFBhdGhzID0gYXdhaXQgZmV0Y2hBY3RpdmVDb250ZXh0UGF0aHMob0NvbnRleHQsIHRoaXMuYmFzZS5nZXRWaWV3KCkuZ2V0Q29udHJvbGxlcigpKTtcblx0XHRcdGNvbnN0IG9QYWdlVGl0bGVJbmZvID0gKHRoaXMuYmFzZS5nZXRWaWV3KCkuZ2V0Q29udHJvbGxlcigpIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyKS5fZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24oKTtcblx0XHRcdGNvbnN0IG9EYXRhID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuXHRcdFx0XHRnZXRKYW1VcmwoYklzRWRpdGFibGUsIGJHbG9iYWxJc1N0aWNreVN1cHBvcnRlZCwgYUFjdGl2ZUNvbnRleHRQYXRocyksXG5cdFx0XHRcdGdldFNoYXJlVXJsKGJJc0VkaXRhYmxlLCBiR2xvYmFsSXNTdGlja3lTdXBwb3J0ZWQsIGFBY3RpdmVDb250ZXh0UGF0aHMpLFxuXHRcdFx0XHRnZXRTaGFyZUVtYWlsVXJsKClcblx0XHRcdF0pO1xuXG5cdFx0XHRsZXQgc1RpdGxlID0gb1BhZ2VUaXRsZUluZm8udGl0bGU7XG5cdFx0XHRjb25zdCBzT2JqZWN0U3VidGl0bGUgPSBvUGFnZVRpdGxlSW5mby5zdWJ0aXRsZSA/IG9QYWdlVGl0bGVJbmZvLnN1YnRpdGxlLnRvU3RyaW5nKCkgOiBcIlwiO1xuXHRcdFx0aWYgKHNPYmplY3RTdWJ0aXRsZSkge1xuXHRcdFx0XHRzVGl0bGUgPSBgJHtzVGl0bGV9IC0gJHtzT2JqZWN0U3VidGl0bGV9YDtcblx0XHRcdH1cblx0XHRcdG9TaGFyZU1ldGFkYXRhLnRpbGUgPSB7XG5cdFx0XHRcdHRpdGxlOiBvUGFnZVRpdGxlSW5mby50aXRsZSxcblx0XHRcdFx0c3VidGl0bGU6IHNPYmplY3RTdWJ0aXRsZVxuXHRcdFx0fTtcblx0XHRcdG9TaGFyZU1ldGFkYXRhLmVtYWlsLnRpdGxlID0gc1RpdGxlO1xuXHRcdFx0b1NoYXJlTWV0YWRhdGEudGl0bGUgPSBzVGl0bGU7XG5cdFx0XHRvU2hhcmVNZXRhZGF0YS5qYW0udXJsID0gb0RhdGFbMF07XG5cdFx0XHRvU2hhcmVNZXRhZGF0YS51cmwgPSBvRGF0YVsxXTtcblx0XHRcdG9TaGFyZU1ldGFkYXRhLmVtYWlsLnVybCA9IG9EYXRhWzJdO1xuXHRcdFx0Ly8gTVMgVGVhbXMgY29sbGFib3JhdGlvbiBkb2VzIG5vdCB3YW50IHRvIGFsbG93IGZ1cnRoZXIgY2hhbmdlcyB0byB0aGUgVVJMXG5cdFx0XHQvLyBzbyB1cGRhdGUgY29sbG9ib3JhdGlvbkluZm8gbW9kZWwgYXQgTFIgb3ZlcnJpZGUgdG8gaWdub3JlIGZ1cnRoZXIgZXh0ZW5zaW9uIGNoYW5nZXMgYXQgbXVsdGlwbGUgbGV2ZWxzXG5cdFx0XHRjb25zdCBjb2xsYWJvcmF0aW9uSW5mb01vZGVsOiBKU09OTW9kZWwgPSB0aGlzLmJhc2UuZ2V0VmlldygpLmdldE1vZGVsKFwiY29sbGFib3JhdGlvbkluZm9cIikgYXMgSlNPTk1vZGVsO1xuXHRcdFx0Y29sbGFib3JhdGlvbkluZm9Nb2RlbC5zZXRQcm9wZXJ0eShcIi91cmxcIiwgb1NoYXJlTWV0YWRhdGEudXJsKTtcblx0XHRcdGNvbGxhYm9yYXRpb25JbmZvTW9kZWwuc2V0UHJvcGVydHkoXCIvYXBwVGl0bGVcIiwgb1NoYXJlTWV0YWRhdGEudGl0bGUpO1xuXHRcdFx0Y29sbGFib3JhdGlvbkluZm9Nb2RlbC5zZXRQcm9wZXJ0eShcIi9zdWJUaXRsZVwiLCBzT2JqZWN0U3VidGl0bGUpO1xuXHRcdH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcblx0XHRcdExvZy5lcnJvcihlcnJvcik7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG9TaGFyZU1ldGFkYXRhO1xuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTaGFyZUV4dGVuc2lvbk92ZXJyaWRlO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7O0VBa2pCTyxnQkFBZ0JBLElBQUksRUFBRUMsT0FBTyxFQUFFO0lBQ3JDLElBQUk7TUFDSCxJQUFJQyxNQUFNLEdBQUdGLElBQUksRUFBRTtJQUNwQixDQUFDLENBQUMsT0FBTUcsQ0FBQyxFQUFFO01BQ1YsT0FBT0YsT0FBTyxDQUFDRSxDQUFDLENBQUM7SUFDbEI7SUFDQSxJQUFJRCxNQUFNLElBQUlBLE1BQU0sQ0FBQ0UsSUFBSSxFQUFFO01BQzFCLE9BQU9GLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFSCxPQUFPLENBQUM7SUFDcEM7SUFDQSxPQUFPQyxNQUFNO0VBQ2Q7RUFsakJBLElBQUlHLHdCQUFpQztFQUVyQyxTQUFTQyxnQ0FBZ0MsQ0FBQ0MsVUFBZSxFQUFFQyxzQkFBMkIsRUFBRTtJQUN2RixJQUFNQyxLQUFLLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDSixVQUFVLENBQUM7SUFFckMsSUFBTUssUUFBUSxHQUFHSCxLQUFLLENBQUNJLEdBQUcsQ0FBQyxVQUFVQyxJQUFZLEVBQUU7TUFDbEQsSUFBTUMsTUFBTSxHQUFHUixVQUFVLENBQUNPLElBQUksQ0FBQztNQUMvQixJQUFJQyxNQUFNLEtBQUtDLFNBQVMsRUFBRTtRQUN6QixPQUFPLElBQUlDLE1BQU0sQ0FBQ0gsSUFBSSxFQUFFSSxjQUFjLENBQUNDLEVBQUUsRUFBRUosTUFBTSxDQUFDO01BQ25EO0lBQ0QsQ0FBQyxDQUFDO0lBRUYsSUFBSVAsc0JBQXNCLEVBQUU7TUFDM0IsSUFBTVksYUFBYSxHQUFHLElBQUlILE1BQU0sQ0FBQztRQUNoQ0ksT0FBTyxFQUFFLENBQUMsSUFBSUosTUFBTSxDQUFDLDhCQUE4QixFQUFFQyxjQUFjLENBQUNDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5RUcsR0FBRyxFQUFFO01BQ04sQ0FBQyxDQUFDO01BRUZWLFFBQVEsQ0FBQ1csSUFBSSxDQUFDSCxhQUFhLENBQUM7SUFDN0I7SUFFQSxPQUFPLElBQUlILE1BQU0sQ0FBQ0wsUUFBUSxFQUFTLElBQUksQ0FBQztFQUN6QztFQUNBLFNBQVNZLG9CQUFvQixDQUFDQyxXQUFnQixFQUFFQyxlQUFvQixFQUFFQyxPQUFZLEVBQUU7SUFDbkYsSUFBTUMsWUFBWSxHQUFHSCxXQUFXLENBQzlCSSxPQUFPLEVBQUUsQ0FDVEMsaUJBQWlCLEVBQUUsQ0FDbkJDLFFBQVEsRUFBRSxDQUNWQyxRQUFRLFlBQUtOLGVBQWUsR0FBSVYsU0FBUyxFQUFFQSxTQUFTLEVBQUVXLE9BQU8sRUFBRTtNQUFFTSxTQUFTLEVBQUU7SUFBZSxDQUFDLENBQUM7SUFDL0YsT0FBT0wsWUFBWSxDQUFDTSxlQUFlLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDOUIsSUFBSSxDQUFDLFVBQVUrQixTQUFjLEVBQUU7TUFDeEUsSUFBSUEsU0FBUyxJQUFJQSxTQUFTLENBQUNDLE1BQU0sRUFBRTtRQUNsQyxPQUFPRCxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUNFLE9BQU8sRUFBRTtNQUM5QjtJQUNELENBQUMsQ0FBQztFQUNIO0VBQ0EsU0FBU0MseUJBQXlCLENBQUNDLFFBQWEsRUFBRWQsV0FBZ0IsRUFBRWUsVUFBZSxFQUFFO0lBQ3BGLElBQU1DLHNCQUE2QixHQUFHLEVBQUU7SUFDeEMsSUFBTUMsTUFBYSxHQUFHLEVBQUU7SUFDeEIsSUFBSUMsU0FBUyxHQUFHSixRQUFRLENBQUNSLFFBQVEsRUFBRSxDQUFDYSxZQUFZLEVBQUUsQ0FBQ0MsV0FBVyxDQUFDTixRQUFRLENBQUNGLE9BQU8sRUFBRSxDQUFDO0lBQ2xGLElBQUlNLFNBQVMsQ0FBQ0csT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtNQUNqQ0gsU0FBUyxHQUFHQSxTQUFTLENBQUNJLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDbkM7SUFDQSxJQUFNQyxjQUFjLEdBQUdMLFNBQVMsQ0FBQ00sS0FBSyxDQUFDLEdBQUcsQ0FBQztJQUMzQyxJQUFNQyxvQkFBb0IsR0FBR0MsV0FBVyxDQUFDQyxXQUFXLEVBQUUsQ0FBQ0MsT0FBTyxFQUFFLENBQUNKLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUUsSUFBTUssaUJBQWlCLEdBQUdKLG9CQUFvQixDQUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDOztJQUV6RDtJQUNBO0lBQ0E7SUFDQSxJQUFNTSxRQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLElBQU1DLGNBQXFCLEdBQUcsRUFBRTtJQUNoQ0YsaUJBQWlCLENBQUNHLE9BQU8sQ0FBQyxVQUFVQyxTQUFjLEVBQUU7TUFDbkQsSUFBTUMsVUFBVSxHQUFHRCxTQUFTLENBQUNYLFNBQVMsQ0FBQ1csU0FBUyxDQUFDWixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFWSxTQUFTLENBQUN0QixNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUNhLEtBQUssQ0FBQyxHQUFHLENBQUM7TUFDbkcsSUFBTTFDLFVBQWUsR0FBRyxDQUFDLENBQUM7TUFDMUIsSUFBTXFELGFBQWEsR0FBR0YsU0FBUyxDQUFDVCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO01BQzdDTSxRQUFRLENBQUNLLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztNQUM1QkosY0FBYyxDQUFDakMsSUFBSSxDQUFDcUMsYUFBYSxDQUFDO01BQ2xDTCxRQUFRLENBQUNLLGFBQWEsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLEdBQUcsSUFBSTtNQUN4RCxLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsR0FBR0YsVUFBVSxDQUFDdkIsTUFBTSxFQUFFeUIsQ0FBQyxFQUFFLEVBQUU7UUFDM0MsSUFBTUMsY0FBYyxHQUFHSCxVQUFVLENBQUNFLENBQUMsQ0FBQztRQUNwQyxJQUFNRSxNQUFNLEdBQUdELGNBQWMsQ0FBQ2IsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUN4QyxJQUFJZSxTQUFTLEdBQUdELE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekIsSUFBSWpELElBQUksR0FBR2lELE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEI7UUFDQTtRQUNBO1FBQ0E7UUFDQSxJQUFJRCxjQUFjLENBQUNoQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7VUFDdkMsSUFBTW1CLFVBQVUsR0FBRzFCLFFBQVEsQ0FBQ1IsUUFBUSxFQUFFLENBQUNhLFlBQVksRUFBRTtVQUNyRCxJQUFNc0IsY0FBYyxHQUFHRCxVQUFVLENBQUNFLFNBQVMsWUFBS1gsY0FBYyxDQUFDWSxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFjO1VBQ3RGSixTQUFTLEdBQUdELE1BQU0sQ0FBQyxDQUFDLENBQUM7VUFDckJqRCxJQUFJLEdBQUdvRCxjQUFjLENBQUMsQ0FBQyxDQUFDO1VBQ3hCWCxRQUFRLENBQUNHLFNBQVMsQ0FBQ1QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsR0FBRyxLQUFLO1FBQ3BFO1FBRUEsSUFBSW5DLElBQUksS0FBSyxnQkFBZ0IsRUFBRTtVQUM5QixJQUFJa0QsU0FBUyxDQUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSWtCLFNBQVMsQ0FBQ0ssV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLTCxTQUFTLENBQUM1QixNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hGO1lBQ0E0QixTQUFTLEdBQUdNLGtCQUFrQixDQUFDTixTQUFTLENBQUNqQixTQUFTLENBQUMsQ0FBQyxFQUFFaUIsU0FBUyxDQUFDNUIsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1VBQzdFO1VBQ0E3QixVQUFVLENBQUNPLElBQUksQ0FBQyxHQUFHa0QsU0FBUztRQUM3QjtNQUNEO01BQ0FULFFBQVEsQ0FBQ0ssYUFBYSxDQUFDLENBQUNyRCxVQUFVLEdBQUdBLFVBQVU7SUFDaEQsQ0FBQyxDQUFDO0lBRUYsSUFBSWdFLGNBQWMsR0FBRy9CLFVBQVU7SUFDL0JRLGNBQWMsQ0FBQ1MsT0FBTyxDQUFDLFVBQVVlLGVBQW9CLEVBQUU7TUFDdEQsSUFBTUMsU0FBYyxHQUFHLENBQUMsQ0FBQztNQUN6QixJQUFNQyxrQkFBa0IsR0FBR0gsY0FBYyxDQUFDSSwwQkFBMEIsSUFBSUosY0FBYyxDQUFDSSwwQkFBMEIsQ0FBQ0gsZUFBZSxDQUFDO01BQ2xJLElBQUlFLGtCQUFrQixFQUFFO1FBQ3ZCRCxTQUFTLENBQUNHLGNBQWMsR0FBR0wsY0FBYyxDQUFDSSwwQkFBMEIsQ0FBQ0gsZUFBZSxDQUFDO1FBQ3JGRCxjQUFjLEdBQUdoQyxRQUFRLENBQUNSLFFBQVEsRUFBRSxDQUFDYSxZQUFZLEVBQUUsQ0FBQ3VCLFNBQVMsWUFBS08sa0JBQWtCLEVBQUcsSUFBSWxDLFVBQVU7TUFDdEcsQ0FBQyxNQUFNO1FBQ05pQyxTQUFTLENBQUNHLGNBQWMsR0FBR0osZUFBZTtNQUMzQztNQUNBQyxTQUFTLENBQUNsRSxVQUFVLEdBQUdnRCxRQUFRLENBQUNpQixlQUFlLENBQUMsQ0FBQ2pFLFVBQVU7TUFDM0RrRSxTQUFTLENBQUNqRSxzQkFBc0IsR0FBRytDLFFBQVEsQ0FBQ2lCLGVBQWUsQ0FBQyxDQUFDaEUsc0JBQXNCO01BQ25Ga0MsTUFBTSxDQUFDbkIsSUFBSSxDQUFDa0QsU0FBUyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQztJQUVGL0IsTUFBTSxDQUFDZSxPQUFPLENBQUMsVUFBVWdCLFNBQWMsRUFBRTtNQUN4QyxJQUFNOUMsT0FBTyxHQUFHckIsZ0NBQWdDLENBQUNtRSxTQUFTLENBQUNsRSxVQUFVLEVBQUVrRSxTQUFTLENBQUNqRSxzQkFBc0IsQ0FBQztNQUN4R2lDLHNCQUFzQixDQUFDbEIsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0MsV0FBVyxFQUFFZ0QsU0FBUyxDQUFDRyxjQUFjLEVBQUVqRCxPQUFPLENBQUMsQ0FBQztJQUNsRyxDQUFDLENBQUM7SUFFRixPQUFPYyxzQkFBc0I7RUFDOUI7O0VBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDQSxTQUFTb0MscUJBQXFCLENBQUN0QyxRQUFhLEVBQUVkLFdBQWdCLEVBQUU7SUFDL0QsSUFBTXlCLG9CQUFvQixHQUFHQyxXQUFXLENBQUNDLFdBQVcsRUFBRSxDQUFDQyxPQUFPLEVBQUUsQ0FBQ0osS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RSxJQUFJNkIsZUFBZSxHQUFHNUIsb0JBQW9CLElBQUlBLG9CQUFvQixDQUFDNkIsTUFBTSxDQUFDLENBQUMsRUFBRTdCLG9CQUFvQixDQUFDSixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0csSUFBSWdDLGVBQWUsQ0FBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7TUFDdkNnQyxlQUFlLEdBQUdBLGVBQWUsQ0FBQy9CLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDL0M7SUFDQSxJQUFNUCxVQUFVLEdBQUdELFFBQVEsQ0FBQ1IsUUFBUSxFQUFFLENBQUNhLFlBQVksRUFBRSxDQUFDdUIsU0FBUyxZQUFLVyxlQUFlLEVBQUc7SUFDdEYsSUFBTUUsWUFBWSxHQUFHekMsUUFBUTtJQUM3QixJQUFNRSxzQkFBc0IsR0FBR0gseUJBQXlCLENBQUNDLFFBQVEsRUFBRWQsV0FBVyxFQUFFZSxVQUFVLENBQUM7SUFDM0YsSUFBSUMsc0JBQXNCLENBQUNMLE1BQU0sR0FBRyxDQUFDLEVBQUU7TUFDdEMsT0FBTzZDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDekMsc0JBQXNCLENBQUMsQ0FDeENyQyxJQUFJLENBQUMsVUFBVStFLEtBQVksRUFBRTtRQUM3QixJQUFNQyxtQkFBbUIsR0FBRyxFQUFFO1FBQzlCLElBQUliLGNBQWMsR0FBRy9CLFVBQVU7UUFDL0IsSUFBSTJDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7VUFDaENzQyxtQkFBbUIsQ0FBQzdELElBQUksQ0FBQzRELEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ3BDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxDQUFDLE1BQU07VUFDTnFDLG1CQUFtQixDQUFDN0QsSUFBSSxDQUFDNEQsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25DO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsS0FBSyxJQUFJdEIsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxHQUFHc0IsS0FBSyxDQUFDL0MsTUFBTSxFQUFFeUIsQ0FBQyxFQUFFLEVBQUU7VUFDdEMsSUFBSXdCLGtCQUFrQixHQUFHRixLQUFLLENBQUN0QixDQUFDLENBQUM7VUFDakMsSUFBSXlCLGtCQUFrQixHQUFHLEVBQUU7VUFDM0IsSUFBSUMsY0FBYyxHQUFHRixrQkFBa0IsSUFBSUEsa0JBQWtCLENBQUNOLE1BQU0sQ0FBQyxDQUFDLEVBQUVNLGtCQUFrQixDQUFDdkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1VBQ3hHLElBQUl5QyxjQUFjLENBQUN6QyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RDeUMsY0FBYyxHQUFHQSxjQUFjLENBQUN4QyxTQUFTLENBQUMsQ0FBQyxDQUFDO1VBQzdDO1VBQ0EsSUFBSXNDLGtCQUFrQixDQUFDdkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMxQ3VDLGtCQUFrQixHQUFHQSxrQkFBa0IsQ0FBQ3RDLFNBQVMsQ0FBQyxDQUFDLENBQUM7VUFDckQ7VUFDQXVDLGtCQUFrQixHQUFHNUUsTUFBTSxDQUFDQyxJQUFJLENBQUM0RCxjQUFjLENBQUNJLDBCQUEwQixDQUFDLENBQzFFakUsTUFBTSxDQUFDOEUsTUFBTSxDQUFDakIsY0FBYyxDQUFDSSwwQkFBMEIsQ0FBQyxDQUFDN0IsT0FBTyxDQUFDeUMsY0FBYyxDQUFDLENBQ2hGO1VBQ0QsSUFBSUQsa0JBQWtCLEVBQUU7WUFDdkJGLG1CQUFtQixDQUFDN0QsSUFBSSxDQUFDOEQsa0JBQWtCLENBQUNJLE9BQU8sQ0FBQ0YsY0FBYyxFQUFFRCxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3hGZixjQUFjLEdBQUdTLFlBQVksQ0FBQ2pELFFBQVEsRUFBRSxDQUFDYSxZQUFZLEVBQUUsQ0FBQ3VCLFNBQVMsWUFBS29CLGNBQWMsRUFBRyxJQUFJL0MsVUFBVTtVQUN0RyxDQUFDLE1BQU07WUFDTjRDLG1CQUFtQixDQUFDN0QsSUFBSSxDQUFDOEQsa0JBQWtCLENBQUM7VUFDN0M7UUFDRDtRQUNBLE9BQU9ELG1CQUFtQjtNQUMzQixDQUFDLENBQUMsQ0FDRE0sS0FBSyxDQUFDLFVBQVVDLE1BQVcsRUFBRTtRQUM3QkMsR0FBRyxDQUFDQyxJQUFJLENBQUMsc0RBQXNELEVBQUVGLE1BQU0sQ0FBQztNQUN6RSxDQUFDLENBQUM7SUFDSixDQUFDLE1BQU07TUFDTixPQUFPVixPQUFPLENBQUNhLE9BQU8sRUFBRTtJQUN6QjtFQUNEO0VBQ0EsU0FBU0MsdUJBQXVCLENBQUN4RCxRQUFhLEVBQUVkLFdBQWdCLEVBQUU7SUFDakUsSUFBSXVFLFFBQVEsRUFBRUMsYUFBYTtJQUMzQixJQUFNL0Msb0JBQW9CLEdBQUdDLFdBQVcsQ0FBQ0MsV0FBVyxFQUFFLENBQUNDLE9BQU8sRUFBRSxDQUFDSixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlFLElBQUlWLFFBQVEsRUFBRTtNQUNiLElBQU0yRCxNQUFNLEdBQUczRCxRQUFRLENBQUNSLFFBQVEsRUFBRTtNQUNsQyxJQUFNa0MsVUFBVSxHQUFHaUMsTUFBTSxDQUFDdEQsWUFBWSxFQUFFO01BQ3hDdkMsd0JBQXdCLEdBQUc4RixXQUFXLENBQUNDLHdCQUF3QixDQUFDbkMsVUFBVSxDQUFDO01BQzNFLElBQUlhLGVBQWUsR0FBRzVCLG9CQUFvQixJQUFJQSxvQkFBb0IsQ0FBQzZCLE1BQU0sQ0FBQyxDQUFDLEVBQUU3QixvQkFBb0IsQ0FBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO01BQy9HLElBQUlnQyxlQUFlLENBQUNoQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3ZDZ0MsZUFBZSxHQUFHQSxlQUFlLENBQUMvQixTQUFTLENBQUMsQ0FBQyxDQUFDO01BQy9DO01BQ0FrRCxhQUFhLEdBQUdJLGlCQUFpQixDQUFDQyxlQUFlLENBQUNyQyxVQUFVLEVBQUVhLGVBQWUsQ0FBQztJQUMvRTtJQUNBO0lBQ0E7SUFDQTtJQUNBLElBQU15QixTQUFTLEdBQUc5RSxXQUFXLENBQUNJLE9BQU8sRUFBRSxDQUFDMkUsV0FBVyxFQUFFO0lBQ3JELElBQUlqRSxRQUFRLElBQUksQ0FBQ2xDLHdCQUF3QixLQUFNa0csU0FBUyxDQUFDRSxTQUFTLEtBQUssQ0FBQyxJQUFJLENBQUNSLGFBQWEsSUFBS00sU0FBUyxDQUFDRSxTQUFTLElBQUksQ0FBQyxDQUFDLEVBQUU7TUFDekhULFFBQVEsR0FBR25CLHFCQUFxQixDQUFDdEMsUUFBUSxFQUFFZCxXQUFXLENBQUM7TUFDdkQsT0FBT3VFLFFBQVE7SUFDaEIsQ0FBQyxNQUFNO01BQ04sT0FBT2YsT0FBTyxDQUFDYSxPQUFPLEVBQUU7SUFDekI7RUFDRDs7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxTQUFTWSxXQUFXLENBQUNDLFdBQWdCLEVBQUVDLGtCQUF1QixFQUFFeEIsbUJBQXdCLEVBQUU7SUFDekYsSUFBSXlCLFNBQVM7SUFDYixJQUFNQyxLQUFLLEdBQUczRCxXQUFXLENBQUNDLFdBQVcsRUFBRSxDQUFDQyxPQUFPLEVBQUU7SUFDakQsSUFBTTBELFNBQVMsR0FBSTVELFdBQVcsQ0FBQ0MsV0FBVyxFQUFFLENBQVM0RCxzQkFBc0IsR0FDdkU3RCxXQUFXLENBQUNDLFdBQVcsRUFBRSxDQUFTNEQsc0JBQXNCLENBQUMsRUFBRSxDQUFDLEdBQzdELEVBQUU7SUFDTCxJQUFJTCxXQUFXLElBQUksQ0FBQ0Msa0JBQWtCLElBQUl4QixtQkFBbUIsRUFBRTtNQUM5RHlCLFNBQVMsR0FBR0UsU0FBUyxHQUFHM0IsbUJBQW1CLENBQUNoQixJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ3RELENBQUMsTUFBTTtNQUNOeUMsU0FBUyxHQUFHQyxLQUFLLEdBQUdDLFNBQVMsR0FBR0QsS0FBSyxHQUFHRyxNQUFNLENBQUNDLFFBQVEsQ0FBQ0MsSUFBSTtJQUM3RDtJQUNBLE9BQU9GLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRSxNQUFNLEdBQUdILE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRyxRQUFRLEdBQUdKLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDSSxNQUFNLEdBQUdULFNBQVM7RUFDOUY7RUFDQSxTQUFTVSxnQkFBZ0IsR0FBRztJQUMzQixJQUFNQyxnQkFBZ0IsR0FBR0MsR0FBRyxDQUFDQyxNQUFNLElBQUlELEdBQUcsQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTO0lBQzNELElBQUlILGdCQUFnQixFQUFFO01BQ3JCLE9BQU9BLGdCQUFnQixDQUNyQkksY0FBYyxDQUFDLElBQUksQ0FBQyxDQUNwQnhILElBQUksQ0FBQyxVQUFVeUgsT0FBWSxFQUFFO1FBQzdCLE9BQU9BLE9BQU87TUFDZixDQUFDLENBQUMsQ0FDRG5DLEtBQUssQ0FBQyxVQUFVb0MsTUFBVyxFQUFFO1FBQzdCbEMsR0FBRyxDQUFDbUMsS0FBSyxDQUFDLGdGQUFnRixFQUFFRCxNQUFNLENBQUM7TUFDcEcsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxNQUFNO01BQ04sT0FBTzdDLE9BQU8sQ0FBQ2EsT0FBTyxDQUFDa0MsUUFBUSxDQUFDQyxHQUFHLENBQUM7SUFDckM7RUFDRDtFQUVBLFNBQVNDLFNBQVMsQ0FBQ0MsV0FBb0IsRUFBRXZCLGtCQUF1QixFQUFFeEIsbUJBQXdCLEVBQUU7SUFDM0YsSUFBSWdELE9BQWU7SUFDbkIsSUFBTXRCLEtBQUssR0FBRzNELFdBQVcsQ0FBQ0MsV0FBVyxFQUFFLENBQUNDLE9BQU8sRUFBRTtJQUNqRCxJQUFNMEQsU0FBUyxHQUFJNUQsV0FBVyxDQUFDQyxXQUFXLEVBQUUsQ0FBUzRELHNCQUFzQixHQUN2RTdELFdBQVcsQ0FBQ0MsV0FBVyxFQUFFLENBQVM0RCxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsR0FDN0QsRUFBRTtJQUNMLElBQUltQixXQUFXLElBQUksQ0FBQ3ZCLGtCQUFrQixJQUFJeEIsbUJBQW1CLEVBQUU7TUFDOURnRCxPQUFPLEdBQUdyQixTQUFTLEdBQUczQixtQkFBbUIsQ0FBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDcEQsQ0FBQyxNQUFNO01BQ05nRSxPQUFPLEdBQUd0QixLQUFLLEdBQUdDLFNBQVMsR0FBR0QsS0FBSyxHQUFHRyxNQUFNLENBQUNDLFFBQVEsQ0FBQ0MsSUFBSTtJQUMzRDtJQUNBO0lBQ0E7SUFDQTtJQUNBLElBQUlNLEdBQUcsQ0FBQ0MsTUFBTSxJQUFJRCxHQUFHLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxJQUFJRixHQUFHLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDVSxlQUFlLElBQUlaLEdBQUcsQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTLENBQUNVLGVBQWUsRUFBRSxFQUFFO01BQ3pIWixHQUFHLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDVyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQ2xDbEksSUFBSSxDQUFDLFVBQVVtSSxJQUFTLEVBQUU7UUFDMUIsT0FBT0EsSUFBSSxDQUFDeEQsTUFBTSxDQUFDLENBQUMsRUFBRXdELElBQUksQ0FBQ3pGLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHc0YsT0FBTztNQUNuRCxDQUFDLENBQUMsQ0FDRDFDLEtBQUssQ0FBQyxVQUFVb0MsTUFBVyxFQUFFO1FBQzdCbEMsR0FBRyxDQUFDbUMsS0FBSyxDQUFDLGdGQUFnRixFQUFFRCxNQUFNLENBQUM7TUFDcEcsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxNQUFNO01BQ04sT0FBTzdDLE9BQU8sQ0FBQ2EsT0FBTyxDQUFDbUIsTUFBTSxDQUFDQyxRQUFRLENBQUNFLE1BQU0sR0FBR0gsTUFBTSxDQUFDQyxRQUFRLENBQUNHLFFBQVEsR0FBR2UsT0FBTyxDQUFDO0lBQ3BGO0VBQ0Q7RUFFQSxJQUFNSSxzQkFBc0IsR0FBRztJQUM5QkMsa0JBQWtCLFlBQStCQyxjQUFtQjtNQUFBLElBQUU7UUFBQSxhQUNwRCxJQUFJO1FBQXJCLElBQU1uRyxRQUFRLEdBQUcsT0FBS29HLElBQUksQ0FBQzlHLE9BQU8sRUFBRSxDQUFDQyxpQkFBaUIsRUFBRTtRQUN4RCxJQUFNOEcsUUFBUSxHQUFHLE9BQUtELElBQUksQ0FBQzlHLE9BQU8sRUFBRSxDQUFDRSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ25ELElBQU00RSxXQUFXLEdBQUdpQyxRQUFRLENBQUNDLFdBQVcsQ0FBQyxhQUFhLENBQUM7UUFBQyxnQ0FFcEQ7VUFBQSx1QkFDK0I5Qyx1QkFBdUIsQ0FBQ3hELFFBQVEsRUFBRSxPQUFLb0csSUFBSSxDQUFDOUcsT0FBTyxFQUFFLENBQUNpSCxhQUFhLEVBQUUsQ0FBQyxpQkFBbEcxRCxtQkFBbUI7WUFDekIsSUFBTTJELGNBQWMsR0FBSSxPQUFLSixJQUFJLENBQUM5RyxPQUFPLEVBQUUsQ0FBQ2lILGFBQWEsRUFBRSxDQUEwQkUsd0JBQXdCLEVBQUU7WUFBQyx1QkFDNUYvRCxPQUFPLENBQUNDLEdBQUcsQ0FBQyxDQUMvQmdELFNBQVMsQ0FBQ3ZCLFdBQVcsRUFBRXRHLHdCQUF3QixFQUFFK0UsbUJBQW1CLENBQUMsRUFDckVzQixXQUFXLENBQUNDLFdBQVcsRUFBRXRHLHdCQUF3QixFQUFFK0UsbUJBQW1CLENBQUMsRUFDdkVtQyxnQkFBZ0IsRUFBRSxDQUNsQixDQUFDLGlCQUpJMEIsS0FBSztjQU1YLElBQUlDLE1BQU0sR0FBR0gsY0FBYyxDQUFDSSxLQUFLO2NBQ2pDLElBQU1DLGVBQWUsR0FBR0wsY0FBYyxDQUFDTSxRQUFRLEdBQUdOLGNBQWMsQ0FBQ00sUUFBUSxDQUFDQyxRQUFRLEVBQUUsR0FBRyxFQUFFO2NBQ3pGLElBQUlGLGVBQWUsRUFBRTtnQkFDcEJGLE1BQU0sYUFBTUEsTUFBTSxnQkFBTUUsZUFBZSxDQUFFO2NBQzFDO2NBQ0FWLGNBQWMsQ0FBQ2EsSUFBSSxHQUFHO2dCQUNyQkosS0FBSyxFQUFFSixjQUFjLENBQUNJLEtBQUs7Z0JBQzNCRSxRQUFRLEVBQUVEO2NBQ1gsQ0FBQztjQUNEVixjQUFjLENBQUNjLEtBQUssQ0FBQ0wsS0FBSyxHQUFHRCxNQUFNO2NBQ25DUixjQUFjLENBQUNTLEtBQUssR0FBR0QsTUFBTTtjQUM3QlIsY0FBYyxDQUFDZSxHQUFHLENBQUNDLEdBQUcsR0FBR1QsS0FBSyxDQUFDLENBQUMsQ0FBQztjQUNqQ1AsY0FBYyxDQUFDZ0IsR0FBRyxHQUFHVCxLQUFLLENBQUMsQ0FBQyxDQUFDO2NBQzdCUCxjQUFjLENBQUNjLEtBQUssQ0FBQ0UsR0FBRyxHQUFHVCxLQUFLLENBQUMsQ0FBQyxDQUFDO2NBQ25DO2NBQ0E7Y0FDQSxJQUFNVSxzQkFBaUMsR0FBRyxPQUFLaEIsSUFBSSxDQUFDOUcsT0FBTyxFQUFFLENBQUNFLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBYztjQUN4RzRILHNCQUFzQixDQUFDQyxXQUFXLENBQUMsTUFBTSxFQUFFbEIsY0FBYyxDQUFDZ0IsR0FBRyxDQUFDO2NBQzlEQyxzQkFBc0IsQ0FBQ0MsV0FBVyxDQUFDLFdBQVcsRUFBRWxCLGNBQWMsQ0FBQ1MsS0FBSyxDQUFDO2NBQ3JFUSxzQkFBc0IsQ0FBQ0MsV0FBVyxDQUFDLFdBQVcsRUFBRVIsZUFBZSxDQUFDO1lBQUM7VUFBQTtRQUNsRSxDQUFDLFlBQVFyQixLQUFVLEVBQUU7VUFDcEJuQyxHQUFHLENBQUNtQyxLQUFLLENBQUNBLEtBQUssQ0FBQztRQUNqQixDQUFDO1FBQUE7VUFFRCxPQUFPVyxjQUFjO1FBQUMsS0FBZkEsY0FBYztNQUN0QixDQUFDO1FBQUE7TUFBQTtJQUFBO0VBQ0YsQ0FBQztFQUFDLE9BRWFGLHNCQUFzQjtBQUFBIn0=
|
|
5
|
+
sap.ui.define(["sap/base/Log","sap/fe/core/helpers/ModelHelper","sap/fe/core/helpers/SemanticKeyHelper","sap/ui/core/routing/HashChanger","sap/ui/model/Filter","sap/ui/model/FilterOperator"],function(e,t,n,i,s,o){"use strict";let r;function l(e,t){const n=Object.keys(e);const i=n.map(function(t){const n=e[t];if(n!==undefined){return new s(t,o.EQ,n)}});if(t){const e=new s({filters:[new s("SiblingEntity/IsActiveEntity",o.EQ,true)],and:false});i.push(e)}return new s(i,true)}function a(e,t,n){const i=e.getView().getBindingContext().getModel().bindList(`/${t}`,undefined,undefined,n,{$$groupId:"$auto.Heroes"});return i.requestContexts(0,2).then(function(e){if(e&&e.length){return e[0].getPath()}})}function c(e,t,n){const s=[];const o=[];let r=e.getModel().getMetaModel().getMetaPath(e.getPath());if(r.indexOf("/")===0){r=r.substring(1)}const c=r.split("/");const u=i.getInstance().getHash().split("?")[0];const g=u.split("/");const f={};const d=[];g.forEach(function(t){const n=t.substring(t.indexOf("(")+1,t.length-1).split(",");const i={};const s=t.split("(")[0];f[s]={};d.push(s);f[s]["bIsActiveEntityDefined"]=true;for(let s=0;s<n.length;s++){const o=n[s];const r=o.split("=");let l=r[1];let a=r[0];if(o.indexOf("=")===-1){const n=e.getModel().getMetaModel();const i=n.getObject(`/${d.join("/")}/$Type/$Key`);l=r[0];a=i[0];f[t.split("(")[0]]["bIsActiveEntityDefined"]=false}if(a!=="IsActiveEntity"){if(l.indexOf("'")===0&&l.lastIndexOf("'")===l.length-1){l=decodeURIComponent(l.substring(1,l.length-1))}i[a]=l}}f[s].mKeyValues=i});let p=n;c.forEach(function(t){const i={};const s=p.$NavigationPropertyBinding&&p.$NavigationPropertyBinding[t];if(s){i.pageEntityName=p.$NavigationPropertyBinding[t];p=e.getModel().getMetaModel().getObject(`/${s}`)||n}else{i.pageEntityName=t}i.mKeyValues=f[t].mKeyValues;i.bIsActiveEntityDefined=f[t].bIsActiveEntityDefined;o.push(i)});o.forEach(function(e){const n=l(e.mKeyValues,e.bIsActiveEntityDefined);s.push(a(t,e.pageEntityName,n))});return s}function u(t,n){const s=i.getInstance().getHash().split("?")[0];let o=s&&s.substr(0,s.indexOf("("));if(o.indexOf("/")===0){o=o.substring(1)}const r=t.getModel().getMetaModel().getObject(`/${o}`);const l=t;const a=c(t,n,r);if(a.length>0){return Promise.all(a).then(function(e){const t=[];let n=r;if(e[0].indexOf("/")===0){t.push(e[0].substring(1))}else{t.push(e[0])}for(let i=1;i<e.length;i++){let s=e[i];let o="";let a=s&&s.substr(0,s.indexOf("("));if(a.indexOf("/")===0){a=a.substring(1)}if(s.indexOf("/")===0){s=s.substring(1)}o=Object.keys(n.$NavigationPropertyBinding)[Object.values(n.$NavigationPropertyBinding).indexOf(a)];if(o){t.push(s.replace(a,o));n=l.getModel().getMetaModel().getObject(`/${a}`)||r}else{t.push(s)}}return t}).catch(function(t){e.info("Failed to retrieve one or more active context path's",t)})}else{return Promise.resolve()}}function g(e,s){let o,l;const a=i.getInstance().getHash().split("?")[0];if(e){const i=e.getModel();const s=i.getMetaModel();r=t.isStickySessionSupported(s);let o=a&&a.substr(0,a.indexOf("("));if(o.indexOf("/")===0){o=o.substring(1)}l=n.getSemanticKeys(s,o)}const c=s.getView().getViewData();if(e&&!r&&(c.viewLevel===1&&!l||c.viewLevel>=2)){o=u(e,s);return o}else{return Promise.resolve()}}function f(e,t,n){let s;const o=i.getInstance().getHash();const r=i.getInstance().hrefForAppSpecificHash?i.getInstance().hrefForAppSpecificHash(""):"";if(e&&!t&&n){s=r+n.join("/")}else{s=o?r+o:window.location.hash}return window.location.origin+window.location.pathname+window.location.search+s}function d(){const t=sap.ushell&&sap.ushell.Container;if(t){return t.getFLPUrlAsync(true).then(function(e){return e}).catch(function(t){e.error("Could not retrieve cFLP URL for the sharing dialog (dialog will not be opened)",t)})}else{return Promise.resolve(document.URL)}}function p(t,n,s){let o;const r=i.getInstance().getHash();const l=i.getInstance().hrefForAppSpecificHash?i.getInstance().hrefForAppSpecificHash(""):"";if(t&&!n&&s){o=l+s.join("/")}else{o=r?l+r:window.location.hash}if(sap.ushell&&sap.ushell.Container&&sap.ushell.Container.runningInIframe&&sap.ushell.Container.runningInIframe()){sap.ushell.Container.getFLPUrl(true).then(function(e){return e.substr(0,e.indexOf("#"))+o}).catch(function(t){e.error("Could not retrieve cFLP URL for the sharing dialog (dialog will not be opened)",t)})}else{return Promise.resolve(window.location.origin+window.location.pathname+o)}}const h={adaptShareMetadata:async function(t){const n=this.base.getView().getBindingContext();const i=this.base.getView().getModel("ui");const s=i.getProperty("/isEditable");try{const e=await g(n,this.base.getView().getController());const i=this.base.getView().getController()._getPageTitleInformation();const o=await Promise.all([p(s,r,e),f(s,r,e),d()]);let l=i.title;const a=i.subtitle?i.subtitle.toString():"";if(a){l=`${l} - ${a}`}t.tile={title:i.title,subtitle:a};t.email.title=l;t.title=l;t.jam.url=o[0];t.url=o[1];t.email.url=o[2];const c=this.base.getView().getModel("collaborationInfo");c.setProperty("/url",t.url);c.setProperty("/appTitle",t.title);c.setProperty("/subTitle",a)}catch(t){e.error(t)}return t}};return h},false);
|
|
6
|
+
//# sourceMappingURL=Share.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Share.js","names":["sap","ui","define","Log","ModelHelper","SemanticKeyHelper","HashChanger","Filter","FilterOperator","bGlobalIsStickySupported","createFilterToFetchActiveContext","mKeyValues","bIsActiveEntityDefined","aKeys","Object","keys","aFilters","map","sKey","sValue","undefined","EQ","oActiveFilter","filters","and","push","getActiveContextPath","oController","sPageEntityName","oFilter","oListBinding","getView","getBindingContext","getModel","bindList","$$groupId","requestContexts","then","oContexts","length","getPath","getActiveContextInstances","oContext","oEntitySet","aActiveContextpromises","aPages","sMetaPath","getMetaModel","getMetaPath","indexOf","substring","aMetaPathArray","split","sCurrentHashNoParams","getInstance","getHash","aCurrentHashArray","oPageMap","aPageHashArray","forEach","sPageHash","aKeyValues","sPageHashName","i","sKeyAssignment","aParts","sKeyValue","oMetaModel","aTechnicalKeys","getObject","join","lastIndexOf","decodeURIComponent","oPageEntitySet","sNavigationPath","oPageInfo","sPageEntitySetName","$NavigationPropertyBinding","pageEntityName","getActiveContextPaths","sRootEntityName","substr","oPageContext","Promise","all","aData","aActiveContextPaths","sActiveContextPath","sNavigatioProperty","sEntitySetName","values","replace","catch","oError","info","resolve","fetchActiveContextPaths","oPromise","aSemanticKeys","oModel","isStickySessionSupported","getSemanticKeys","oViewData","getViewData","viewLevel","getShareUrl","bIsEditable","bIsStickySupported","sShareUrl","sHash","sBasePath","hrefForAppSpecificHash","window","location","hash","origin","pathname","search","getShareEmailUrl","oUShellContainer","ushell","Container","getFLPUrlAsync","sFLPUrl","sError","error","document","URL","getJamUrl","bIsEditMode","sJamUrl","runningInIframe","getFLPUrl","sUrl","ShareExtensionOverride","adaptShareMetadata","async","oShareMetadata","this","base","oUIModel","getProperty","getController","oPageTitleInfo","_getPageTitleInformation","oData","sTitle","title","sObjectSubtitle","subtitle","toString","tile","email","jam","url","collaborationInfoModel","setProperty"],"sources":["Share-dbg.js"],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/fe/core/helpers/KeepAliveHelper", "sap/fe/core/library"], function (KeepAliveHelper, CoreLibrary) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
const VariantManagement = CoreLibrary.VariantManagement;
|
|
9
|
+
const ViewStateExtensionOverride = {
|
|
10
|
+
applyInitialStateOnly: function () {
|
|
11
|
+
return false;
|
|
12
|
+
},
|
|
13
|
+
adaptStateControls: function (aStateControls) {
|
|
14
|
+
const oView = this.getView(),
|
|
15
|
+
oController = oView.getController(),
|
|
16
|
+
oViewData = oView.getViewData();
|
|
17
|
+
let bControlVM = false;
|
|
18
|
+
switch (oViewData.variantManagement) {
|
|
19
|
+
case VariantManagement.Control:
|
|
20
|
+
bControlVM = true;
|
|
21
|
+
break;
|
|
22
|
+
case VariantManagement.Page:
|
|
23
|
+
case VariantManagement.None:
|
|
24
|
+
break;
|
|
25
|
+
default:
|
|
26
|
+
throw new Error(`unhandled variant setting: ${oViewData.getVariantManagement()}`);
|
|
27
|
+
}
|
|
28
|
+
oController._findTables().forEach(function (oTable) {
|
|
29
|
+
const oQuickFilter = oTable.getQuickFilter();
|
|
30
|
+
if (oQuickFilter) {
|
|
31
|
+
aStateControls.push(oQuickFilter);
|
|
32
|
+
}
|
|
33
|
+
if (bControlVM) {
|
|
34
|
+
aStateControls.push(oTable.getVariant());
|
|
35
|
+
}
|
|
36
|
+
aStateControls.push(oTable);
|
|
37
|
+
});
|
|
38
|
+
oController._findCharts().forEach(function (oChart) {
|
|
39
|
+
if (bControlVM) {
|
|
40
|
+
aStateControls.push(oChart.getVariant());
|
|
41
|
+
}
|
|
42
|
+
aStateControls.push(oChart);
|
|
43
|
+
});
|
|
44
|
+
aStateControls.push(oView.byId("fe::ObjectPage"));
|
|
45
|
+
},
|
|
46
|
+
adaptBindingRefreshControls: function (aControls) {
|
|
47
|
+
const oView = this.getView(),
|
|
48
|
+
sRefreshStrategy = KeepAliveHelper.getViewRefreshInfo(oView),
|
|
49
|
+
oController = oView.getController();
|
|
50
|
+
let aControlsToRefresh = [];
|
|
51
|
+
if (sRefreshStrategy) {
|
|
52
|
+
const oObjectPageControl = oController._getObjectPageLayoutControl();
|
|
53
|
+
aControlsToRefresh.push(oObjectPageControl);
|
|
54
|
+
}
|
|
55
|
+
if (sRefreshStrategy !== "includingDependents") {
|
|
56
|
+
const aViewControls = oController._findTables();
|
|
57
|
+
aControlsToRefresh = aControlsToRefresh.concat(KeepAliveHelper.getControlsForRefresh(oView, aViewControls) || []);
|
|
58
|
+
}
|
|
59
|
+
return aControlsToRefresh.reduce(function (aPrevControls, oControl) {
|
|
60
|
+
if (aPrevControls.indexOf(oControl) === -1) {
|
|
61
|
+
aPrevControls.push(oControl);
|
|
62
|
+
}
|
|
63
|
+
return aPrevControls;
|
|
64
|
+
}, aControls);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
return ViewStateExtensionOverride;
|
|
68
|
+
}, false);
|
|
69
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGUiLCJhcHBseUluaXRpYWxTdGF0ZU9ubHkiLCJhZGFwdFN0YXRlQ29udHJvbHMiLCJhU3RhdGVDb250cm9scyIsIm9WaWV3IiwiZ2V0VmlldyIsIm9Db250cm9sbGVyIiwiZ2V0Q29udHJvbGxlciIsIm9WaWV3RGF0YSIsImdldFZpZXdEYXRhIiwiYkNvbnRyb2xWTSIsInZhcmlhbnRNYW5hZ2VtZW50IiwiQ29udHJvbCIsIlBhZ2UiLCJOb25lIiwiRXJyb3IiLCJnZXRWYXJpYW50TWFuYWdlbWVudCIsIl9maW5kVGFibGVzIiwiZm9yRWFjaCIsIm9UYWJsZSIsIm9RdWlja0ZpbHRlciIsImdldFF1aWNrRmlsdGVyIiwicHVzaCIsImdldFZhcmlhbnQiLCJfZmluZENoYXJ0cyIsIm9DaGFydCIsImJ5SWQiLCJhZGFwdEJpbmRpbmdSZWZyZXNoQ29udHJvbHMiLCJhQ29udHJvbHMiLCJzUmVmcmVzaFN0cmF0ZWd5IiwiS2VlcEFsaXZlSGVscGVyIiwiZ2V0Vmlld1JlZnJlc2hJbmZvIiwiYUNvbnRyb2xzVG9SZWZyZXNoIiwib09iamVjdFBhZ2VDb250cm9sIiwiX2dldE9iamVjdFBhZ2VMYXlvdXRDb250cm9sIiwiYVZpZXdDb250cm9scyIsImNvbmNhdCIsImdldENvbnRyb2xzRm9yUmVmcmVzaCIsInJlZHVjZSIsImFQcmV2Q29udHJvbHMiLCJvQ29udHJvbCIsImluZGV4T2YiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZpZXdTdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBWaWV3U3RhdGUgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL1ZpZXdTdGF0ZVwiO1xuaW1wb3J0IEtlZXBBbGl2ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9LZWVwQWxpdmVIZWxwZXJcIjtcbmltcG9ydCBDb3JlTGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IHR5cGUgT2JqZWN0UGFnZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS90ZW1wbGF0ZXMvT2JqZWN0UGFnZS9PYmplY3RQYWdlQ29udHJvbGxlci5jb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5cbmNvbnN0IFZhcmlhbnRNYW5hZ2VtZW50ID0gQ29yZUxpYnJhcnkuVmFyaWFudE1hbmFnZW1lbnQ7XG5cbmNvbnN0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlID0ge1xuXHRhcHBseUluaXRpYWxTdGF0ZU9ubHk6IGZ1bmN0aW9uICgpIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH0sXG5cdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYVN0YXRlQ29udHJvbHM6IGFueSkge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRvQ29udHJvbGxlciA9IG9WaWV3LmdldENvbnRyb2xsZXIoKSxcblx0XHRcdG9WaWV3RGF0YSA9IG9WaWV3LmdldFZpZXdEYXRhKCkgYXMgYW55O1xuXHRcdGxldCBiQ29udHJvbFZNID0gZmFsc2U7XG5cblx0XHRzd2l0Y2ggKG9WaWV3RGF0YS52YXJpYW50TWFuYWdlbWVudCkge1xuXHRcdFx0Y2FzZSBWYXJpYW50TWFuYWdlbWVudC5Db250cm9sOlxuXHRcdFx0XHRiQ29udHJvbFZNID0gdHJ1ZTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2U6XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50Lk5vbmU6XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGB1bmhhbmRsZWQgdmFyaWFudCBzZXR0aW5nOiAke29WaWV3RGF0YS5nZXRWYXJpYW50TWFuYWdlbWVudCgpfWApO1xuXHRcdH1cblxuXHRcdChvQ29udHJvbGxlciBhcyBPYmplY3RQYWdlQ29udHJvbGxlcikuX2ZpbmRUYWJsZXMoKS5mb3JFYWNoKGZ1bmN0aW9uIChvVGFibGU6IGFueSkge1xuXHRcdFx0Y29uc3Qgb1F1aWNrRmlsdGVyID0gb1RhYmxlLmdldFF1aWNrRmlsdGVyKCk7XG5cdFx0XHRpZiAob1F1aWNrRmlsdGVyKSB7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1F1aWNrRmlsdGVyKTtcblx0XHRcdH1cblx0XHRcdGlmIChiQ29udHJvbFZNKSB7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1RhYmxlLmdldFZhcmlhbnQoKSk7XG5cdFx0XHR9XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9UYWJsZSk7XG5cdFx0fSk7XG5cblx0XHQob0NvbnRyb2xsZXIgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXIpLl9maW5kQ2hhcnRzKCkuZm9yRWFjaChmdW5jdGlvbiAob0NoYXJ0OiBhbnkpIHtcblx0XHRcdGlmIChiQ29udHJvbFZNKSB7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob0NoYXJ0LmdldFZhcmlhbnQoKSk7XG5cdFx0XHR9XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9DaGFydCk7XG5cdFx0fSk7XG5cblx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9WaWV3LmJ5SWQoXCJmZTo6T2JqZWN0UGFnZVwiKSk7XG5cdH0sXG5cdGFkYXB0QmluZGluZ1JlZnJlc2hDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYUNvbnRyb2xzOiBhbnkpIHtcblx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0c1JlZnJlc2hTdHJhdGVneSA9IEtlZXBBbGl2ZUhlbHBlci5nZXRWaWV3UmVmcmVzaEluZm8ob1ZpZXcpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCk7XG5cdFx0bGV0IGFDb250cm9sc1RvUmVmcmVzaDogQ29udHJvbFtdID0gW107XG5cblx0XHRpZiAoc1JlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0Y29uc3Qgb09iamVjdFBhZ2VDb250cm9sID0gKG9Db250cm9sbGVyIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyKS5fZ2V0T2JqZWN0UGFnZUxheW91dENvbnRyb2woKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaC5wdXNoKG9PYmplY3RQYWdlQ29udHJvbCk7XG5cdFx0fVxuXHRcdGlmIChzUmVmcmVzaFN0cmF0ZWd5ICE9PSBcImluY2x1ZGluZ0RlcGVuZGVudHNcIikge1xuXHRcdFx0Y29uc3QgYVZpZXdDb250cm9scyA9IChvQ29udHJvbGxlciBhcyBPYmplY3RQYWdlQ29udHJvbGxlcikuX2ZpbmRUYWJsZXMoKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaCA9IGFDb250cm9sc1RvUmVmcmVzaC5jb25jYXQoS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xzRm9yUmVmcmVzaChvVmlldywgYVZpZXdDb250cm9scykgfHwgW10pO1xuXHRcdH1cblx0XHRyZXR1cm4gYUNvbnRyb2xzVG9SZWZyZXNoLnJlZHVjZShmdW5jdGlvbiAoYVByZXZDb250cm9sczogYW55LCBvQ29udHJvbDogYW55KSB7XG5cdFx0XHRpZiAoYVByZXZDb250cm9scy5pbmRleE9mKG9Db250cm9sKSA9PT0gLTEpIHtcblx0XHRcdFx0YVByZXZDb250cm9scy5wdXNoKG9Db250cm9sKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBhUHJldkNvbnRyb2xzO1xuXHRcdH0sIGFDb250cm9scyk7XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7O0VBTUEsTUFBTUEsaUJBQWlCLEdBQUdDLFdBQVcsQ0FBQ0QsaUJBQWlCO0VBRXZELE1BQU1FLDBCQUEwQixHQUFHO0lBQ2xD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
|
|
@@ -1,66 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/core/helpers/KeepAliveHelper",
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var VariantManagement = CoreLibrary.VariantManagement;
|
|
9
|
-
var ViewStateExtensionOverride = {
|
|
10
|
-
applyInitialStateOnly: function () {
|
|
11
|
-
return false;
|
|
12
|
-
},
|
|
13
|
-
adaptStateControls: function (aStateControls) {
|
|
14
|
-
var oView = this.getView(),
|
|
15
|
-
oController = oView.getController(),
|
|
16
|
-
oViewData = oView.getViewData();
|
|
17
|
-
var bControlVM = false;
|
|
18
|
-
switch (oViewData.variantManagement) {
|
|
19
|
-
case VariantManagement.Control:
|
|
20
|
-
bControlVM = true;
|
|
21
|
-
break;
|
|
22
|
-
case VariantManagement.Page:
|
|
23
|
-
case VariantManagement.None:
|
|
24
|
-
break;
|
|
25
|
-
default:
|
|
26
|
-
throw new Error("unhandled variant setting: ".concat(oViewData.getVariantManagement()));
|
|
27
|
-
}
|
|
28
|
-
oController._findTables().forEach(function (oTable) {
|
|
29
|
-
var oQuickFilter = oTable.getQuickFilter();
|
|
30
|
-
if (oQuickFilter) {
|
|
31
|
-
aStateControls.push(oQuickFilter);
|
|
32
|
-
}
|
|
33
|
-
if (bControlVM) {
|
|
34
|
-
aStateControls.push(oTable.getVariant());
|
|
35
|
-
}
|
|
36
|
-
aStateControls.push(oTable);
|
|
37
|
-
});
|
|
38
|
-
oController._findCharts().forEach(function (oChart) {
|
|
39
|
-
aStateControls.push(oChart);
|
|
40
|
-
});
|
|
41
|
-
aStateControls.push(oView.byId("fe::ObjectPage"));
|
|
42
|
-
},
|
|
43
|
-
adaptBindingRefreshControls: function (aControls) {
|
|
44
|
-
var oView = this.getView(),
|
|
45
|
-
sRefreshStrategy = KeepAliveHelper.getViewRefreshInfo(oView),
|
|
46
|
-
oController = oView.getController();
|
|
47
|
-
var aControlsToRefresh = [];
|
|
48
|
-
if (sRefreshStrategy) {
|
|
49
|
-
var oObjectPageControl = oController._getObjectPageLayoutControl();
|
|
50
|
-
aControlsToRefresh.push(oObjectPageControl);
|
|
51
|
-
}
|
|
52
|
-
if (sRefreshStrategy !== "includingDependents") {
|
|
53
|
-
var aViewControls = oController._findTables();
|
|
54
|
-
aControlsToRefresh = aControlsToRefresh.concat(KeepAliveHelper.getControlsForRefresh(oView, aViewControls) || []);
|
|
55
|
-
}
|
|
56
|
-
return aControlsToRefresh.reduce(function (aPrevControls, oControl) {
|
|
57
|
-
if (aPrevControls.indexOf(oControl) === -1) {
|
|
58
|
-
aPrevControls.push(oControl);
|
|
59
|
-
}
|
|
60
|
-
return aPrevControls;
|
|
61
|
-
}, aControls);
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
return ViewStateExtensionOverride;
|
|
65
|
-
}, false);
|
|
66
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGUiLCJhcHBseUluaXRpYWxTdGF0ZU9ubHkiLCJhZGFwdFN0YXRlQ29udHJvbHMiLCJhU3RhdGVDb250cm9scyIsIm9WaWV3IiwiZ2V0VmlldyIsIm9Db250cm9sbGVyIiwiZ2V0Q29udHJvbGxlciIsIm9WaWV3RGF0YSIsImdldFZpZXdEYXRhIiwiYkNvbnRyb2xWTSIsInZhcmlhbnRNYW5hZ2VtZW50IiwiQ29udHJvbCIsIlBhZ2UiLCJOb25lIiwiRXJyb3IiLCJnZXRWYXJpYW50TWFuYWdlbWVudCIsIl9maW5kVGFibGVzIiwiZm9yRWFjaCIsIm9UYWJsZSIsIm9RdWlja0ZpbHRlciIsImdldFF1aWNrRmlsdGVyIiwicHVzaCIsImdldFZhcmlhbnQiLCJfZmluZENoYXJ0cyIsIm9DaGFydCIsImJ5SWQiLCJhZGFwdEJpbmRpbmdSZWZyZXNoQ29udHJvbHMiLCJhQ29udHJvbHMiLCJzUmVmcmVzaFN0cmF0ZWd5IiwiS2VlcEFsaXZlSGVscGVyIiwiZ2V0Vmlld1JlZnJlc2hJbmZvIiwiYUNvbnRyb2xzVG9SZWZyZXNoIiwib09iamVjdFBhZ2VDb250cm9sIiwiX2dldE9iamVjdFBhZ2VMYXlvdXRDb250cm9sIiwiYVZpZXdDb250cm9scyIsImNvbmNhdCIsImdldENvbnRyb2xzRm9yUmVmcmVzaCIsInJlZHVjZSIsImFQcmV2Q29udHJvbHMiLCJvQ29udHJvbCIsImluZGV4T2YiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZpZXdTdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBWaWV3U3RhdGUgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL1ZpZXdTdGF0ZVwiO1xuaW1wb3J0IEtlZXBBbGl2ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9LZWVwQWxpdmVIZWxwZXJcIjtcbmltcG9ydCBDb3JlTGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IHR5cGUgT2JqZWN0UGFnZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS90ZW1wbGF0ZXMvT2JqZWN0UGFnZS9PYmplY3RQYWdlQ29udHJvbGxlci5jb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5cbmNvbnN0IFZhcmlhbnRNYW5hZ2VtZW50ID0gQ29yZUxpYnJhcnkuVmFyaWFudE1hbmFnZW1lbnQ7XG5cbmNvbnN0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlID0ge1xuXHRhcHBseUluaXRpYWxTdGF0ZU9ubHk6IGZ1bmN0aW9uICgpIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH0sXG5cdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYVN0YXRlQ29udHJvbHM6IGFueSkge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRvQ29udHJvbGxlciA9IG9WaWV3LmdldENvbnRyb2xsZXIoKSxcblx0XHRcdG9WaWV3RGF0YSA9IG9WaWV3LmdldFZpZXdEYXRhKCkgYXMgYW55O1xuXHRcdGxldCBiQ29udHJvbFZNID0gZmFsc2U7XG5cblx0XHRzd2l0Y2ggKG9WaWV3RGF0YS52YXJpYW50TWFuYWdlbWVudCkge1xuXHRcdFx0Y2FzZSBWYXJpYW50TWFuYWdlbWVudC5Db250cm9sOlxuXHRcdFx0XHRiQ29udHJvbFZNID0gdHJ1ZTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2U6XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50Lk5vbmU6XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGB1bmhhbmRsZWQgdmFyaWFudCBzZXR0aW5nOiAke29WaWV3RGF0YS5nZXRWYXJpYW50TWFuYWdlbWVudCgpfWApO1xuXHRcdH1cblxuXHRcdChvQ29udHJvbGxlciBhcyBPYmplY3RQYWdlQ29udHJvbGxlcikuX2ZpbmRUYWJsZXMoKS5mb3JFYWNoKGZ1bmN0aW9uIChvVGFibGU6IGFueSkge1xuXHRcdFx0Y29uc3Qgb1F1aWNrRmlsdGVyID0gb1RhYmxlLmdldFF1aWNrRmlsdGVyKCk7XG5cdFx0XHRpZiAob1F1aWNrRmlsdGVyKSB7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1F1aWNrRmlsdGVyKTtcblx0XHRcdH1cblx0XHRcdGlmIChiQ29udHJvbFZNKSB7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1RhYmxlLmdldFZhcmlhbnQoKSk7XG5cdFx0XHR9XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9UYWJsZSk7XG5cdFx0fSk7XG5cblx0XHQob0NvbnRyb2xsZXIgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXIpLl9maW5kQ2hhcnRzKCkuZm9yRWFjaChmdW5jdGlvbiAob0NoYXJ0OiBhbnkpIHtcblx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob0NoYXJ0KTtcblx0XHR9KTtcblxuXHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1ZpZXcuYnlJZChcImZlOjpPYmplY3RQYWdlXCIpKTtcblx0fSxcblx0YWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBhQ29udHJvbHM6IGFueSkge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRzUmVmcmVzaFN0cmF0ZWd5ID0gS2VlcEFsaXZlSGVscGVyLmdldFZpZXdSZWZyZXNoSW5mbyhvVmlldyksXG5cdFx0XHRvQ29udHJvbGxlciA9IG9WaWV3LmdldENvbnRyb2xsZXIoKTtcblx0XHRsZXQgYUNvbnRyb2xzVG9SZWZyZXNoOiBDb250cm9sW10gPSBbXTtcblxuXHRcdGlmIChzUmVmcmVzaFN0cmF0ZWd5KSB7XG5cdFx0XHRjb25zdCBvT2JqZWN0UGFnZUNvbnRyb2wgPSAob0NvbnRyb2xsZXIgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXIpLl9nZXRPYmplY3RQYWdlTGF5b3V0Q29udHJvbCgpO1xuXHRcdFx0YUNvbnRyb2xzVG9SZWZyZXNoLnB1c2gob09iamVjdFBhZ2VDb250cm9sKTtcblx0XHR9XG5cdFx0aWYgKHNSZWZyZXNoU3RyYXRlZ3kgIT09IFwiaW5jbHVkaW5nRGVwZW5kZW50c1wiKSB7XG5cdFx0XHRjb25zdCBhVmlld0NvbnRyb2xzID0gKG9Db250cm9sbGVyIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyKS5fZmluZFRhYmxlcygpO1xuXHRcdFx0YUNvbnRyb2xzVG9SZWZyZXNoID0gYUNvbnRyb2xzVG9SZWZyZXNoLmNvbmNhdChLZWVwQWxpdmVIZWxwZXIuZ2V0Q29udHJvbHNGb3JSZWZyZXNoKG9WaWV3LCBhVmlld0NvbnRyb2xzKSB8fCBbXSk7XG5cdFx0fVxuXHRcdHJldHVybiBhQ29udHJvbHNUb1JlZnJlc2gucmVkdWNlKGZ1bmN0aW9uIChhUHJldkNvbnRyb2xzOiBhbnksIG9Db250cm9sOiBhbnkpIHtcblx0XHRcdGlmIChhUHJldkNvbnRyb2xzLmluZGV4T2Yob0NvbnRyb2wpID09PSAtMSkge1xuXHRcdFx0XHRhUHJldkNvbnRyb2xzLnB1c2gob0NvbnRyb2wpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGFQcmV2Q29udHJvbHM7XG5cdFx0fSwgYUNvbnRyb2xzKTtcblx0fVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGU7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7RUFNQSxJQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7RUFFdkQsSUFBTUUsMEJBQTBCLEdBQUc7SUFDbENDLHFCQUFxQixFQUFFLFlBQVk7TUFDbEMsT0FBTyxLQUFLO0lBQ2IsQ0FBQztJQUNEQyxrQkFBa0IsRUFBRSxVQUEyQkMsY0FBbUIsRUFBRTtNQUNuRSxJQUFNQyxLQUFLLEdBQUcsSUFBSSxDQUFDQyxPQUFPLEVBQUU7UUFDM0JDLFdBQVcsR0FBR0YsS0FBSyxDQUFDRyxhQUFhLEVBQUU7UUFDbkNDLFNBQVMsR0FBR0osS0FBSyxDQUFDSyxXQUFXLEVBQVM7TUFDdkMsSUFBSUMsVUFBVSxHQUFHLEtBQUs7TUFFdEIsUUFBUUYsU0FBUyxDQUFDRyxpQkFBaUI7UUFDbEMsS0FBS2IsaUJBQWlCLENBQUNjLE9BQU87VUFDN0JGLFVBQVUsR0FBRyxJQUFJO1VBQ2pCO1FBQ0QsS0FBS1osaUJBQWlCLENBQUNlLElBQUk7UUFDM0IsS0FBS2YsaUJBQWlCLENBQUNnQixJQUFJO1VBQzFCO1FBQ0Q7VUFDQyxNQUFNLElBQUlDLEtBQUssc0NBQStCUCxTQUFTLENBQUNRLG9CQUFvQixFQUFFLEVBQUc7TUFBQztNQUduRlYsV0FBVyxDQUEwQlcsV0FBVyxFQUFFLENBQUNDLE9BQU8sQ0FBQyxVQUFVQyxNQUFXLEVBQUU7UUFDbEYsSUFBTUMsWUFBWSxHQUFHRCxNQUFNLENBQUNFLGNBQWMsRUFBRTtRQUM1QyxJQUFJRCxZQUFZLEVBQUU7VUFDakJqQixjQUFjLENBQUNtQixJQUFJLENBQUNGLFlBQVksQ0FBQztRQUNsQztRQUNBLElBQUlWLFVBQVUsRUFBRTtVQUNmUCxjQUFjLENBQUNtQixJQUFJLENBQUNILE1BQU0sQ0FBQ0ksVUFBVSxFQUFFLENBQUM7UUFDekM7UUFDQXBCLGNBQWMsQ0FBQ21CLElBQUksQ0FBQ0gsTUFBTSxDQUFDO01BQzVCLENBQUMsQ0FBQztNQUVEYixXQUFXLENBQTBCa0IsV0FBVyxFQUFFLENBQUNOLE9BQU8sQ0FBQyxVQUFVTyxNQUFXLEVBQUU7UUFDbEZ0QixjQUFjLENBQUNtQixJQUFJLENBQUNHLE1BQU0sQ0FBQztNQUM1QixDQUFDLENBQUM7TUFFRnRCLGNBQWMsQ0FBQ21CLElBQUksQ0FBQ2xCLEtBQUssQ0FBQ3NCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDREMsMkJBQTJCLEVBQUUsVUFBMkJDLFNBQWMsRUFBRTtNQUN2RSxJQUFNeEIsS0FBSyxHQUFHLElBQUksQ0FBQ0MsT0FBTyxFQUFFO1FBQzNCd0IsZ0JBQWdCLEdBQUdDLGVBQWUsQ0FBQ0Msa0JBQWtCLENBQUMzQixLQUFLLENBQUM7UUFDNURFLFdBQVcsR0FBR0YsS0FBSyxDQUFDRyxhQUFhLEVBQUU7TUFDcEMsSUFBSXlCLGtCQUE2QixHQUFHLEVBQUU7TUFFdEMsSUFBSUgsZ0JBQWdCLEVBQUU7UUFDckIsSUFBTUksa0JBQWtCLEdBQUkzQixXQUFXLENBQTBCNEIsMkJBQTJCLEVBQUU7UUFDOUZGLGtCQUFrQixDQUFDVixJQUFJLENBQUNXLGtCQUFrQixDQUFDO01BQzVDO01BQ0EsSUFBSUosZ0JBQWdCLEtBQUsscUJBQXFCLEVBQUU7UUFDL0MsSUFBTU0sYUFBYSxHQUFJN0IsV0FBVyxDQUEwQlcsV0FBVyxFQUFFO1FBQ3pFZSxrQkFBa0IsR0FBR0Esa0JBQWtCLENBQUNJLE1BQU0sQ0FBQ04sZUFBZSxDQUFDTyxxQkFBcUIsQ0FBQ2pDLEtBQUssRUFBRStCLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztNQUNsSDtNQUNBLE9BQU9ILGtCQUFrQixDQUFDTSxNQUFNLENBQUMsVUFBVUMsYUFBa0IsRUFBRUMsUUFBYSxFQUFFO1FBQzdFLElBQUlELGFBQWEsQ0FBQ0UsT0FBTyxDQUFDRCxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtVQUMzQ0QsYUFBYSxDQUFDakIsSUFBSSxDQUFDa0IsUUFBUSxDQUFDO1FBQzdCO1FBQ0EsT0FBT0QsYUFBYTtNQUNyQixDQUFDLEVBQUVYLFNBQVMsQ0FBQztJQUNkO0VBQ0QsQ0FBQztFQUFDLE9BRWE1QiwwQkFBMEI7QUFBQSJ9
|
|
5
|
+
sap.ui.define(["sap/fe/core/helpers/KeepAliveHelper","sap/fe/core/library"],function(e,t){"use strict";const n=t.VariantManagement;const a={applyInitialStateOnly:function(){return false},adaptStateControls:function(e){const t=this.getView(),a=t.getController(),r=t.getViewData();let i=false;switch(r.variantManagement){case n.Control:i=true;break;case n.Page:case n.None:break;default:throw new Error(`unhandled variant setting: ${r.getVariantManagement()}`)}a._findTables().forEach(function(t){const n=t.getQuickFilter();if(n){e.push(n)}if(i){e.push(t.getVariant())}e.push(t)});a._findCharts().forEach(function(t){if(i){e.push(t.getVariant())}e.push(t)});e.push(t.byId("fe::ObjectPage"))},adaptBindingRefreshControls:function(t){const n=this.getView(),a=e.getViewRefreshInfo(n),r=n.getController();let i=[];if(a){const e=r._getObjectPageLayoutControl();i.push(e)}if(a!=="includingDependents"){const t=r._findTables();i=i.concat(e.getControlsForRefresh(n,t)||[])}return i.reduce(function(e,t){if(e.indexOf(t)===-1){e.push(t)}return e},t)}};return a},false);
|
|
6
|
+
//# sourceMappingURL=ViewState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewState.js","names":["sap","ui","define","KeepAliveHelper","CoreLibrary","VariantManagement","ViewStateExtensionOverride","applyInitialStateOnly","adaptStateControls","aStateControls","oView","this","getView","oController","getController","oViewData","getViewData","bControlVM","variantManagement","Control","Page","None","Error","getVariantManagement","_findTables","forEach","oTable","oQuickFilter","getQuickFilter","push","getVariant","_findCharts","oChart","byId","adaptBindingRefreshControls","aControls","sRefreshStrategy","getViewRefreshInfo","aControlsToRefresh","oObjectPageControl","_getObjectPageLayoutControl","aViewControls","concat","getControlsForRefresh","reduce","aPrevControls","oControl","indexOf"],"sources":["ViewState-dbg.js"],"mappings":";;;;AAIAA,IAAIC,GAAGC,OAAO,CAAC,sCAAuC,uBAAwB,SAAUC,EAAiBC,GACvG,aAEA,MAAMC,EAAoBD,EAAYC,kBACtC,MAAMC,EAA6B,CACjCC,sBAAuB,WACrB,OAAO,KACT,EACAC,mBAAoB,SAAUC,GAC5B,MAAMC,EAAQC,KAAKC,UACjBC,EAAcH,EAAMI,gBACpBC,EAAYL,EAAMM,cACpB,IAAIC,EAAa,MACjB,OAAQF,EAAUG,mBAChB,KAAKb,EAAkBc,QACrBF,EAAa,KACb,MACF,KAAKZ,EAAkBe,KACvB,KAAKf,EAAkBgB,KACrB,MACF,QACE,MAAM,IAAIC,MAAM,8BAA8BP,EAAUQ,0BAE5DV,EAAYW,cAAcC,QAAQ,SAAUC,GAC1C,MAAMC,EAAeD,EAAOE,iBAC5B,GAAID,EAAc,CAChBlB,EAAeoB,KAAKF,EACtB,CACA,GAAIV,EAAY,CACdR,EAAeoB,KAAKH,EAAOI,aAC7B,CACArB,EAAeoB,KAAKH,EACtB,GACAb,EAAYkB,cAAcN,QAAQ,SAAUO,GAC1C,GAAIf,EAAY,CACdR,EAAeoB,KAAKG,EAAOF,aAC7B,CACArB,EAAeoB,KAAKG,EACtB,GACAvB,EAAeoB,KAAKnB,EAAMuB,KAAK,kBACjC,EACAC,4BAA6B,SAAUC,GACrC,MAAMzB,EAAQC,KAAKC,UACjBwB,EAAmBjC,EAAgBkC,mBAAmB3B,GACtDG,EAAcH,EAAMI,gBACtB,IAAIwB,EAAqB,GACzB,GAAIF,EAAkB,CACpB,MAAMG,EAAqB1B,EAAY2B,8BACvCF,EAAmBT,KAAKU,EAC1B,CACA,GAAIH,IAAqB,sBAAuB,CAC9C,MAAMK,EAAgB5B,EAAYW,cAClCc,EAAqBA,EAAmBI,OAAOvC,EAAgBwC,sBAAsBjC,EAAO+B,IAAkB,GAChH,CACA,OAAOH,EAAmBM,OAAO,SAAUC,EAAeC,GACxD,GAAID,EAAcE,QAAQD,MAAe,EAAG,CAC1CD,EAAchB,KAAKiB,EACrB,CACA,OAAOD,CACT,EAAGV,EACL,GAEF,OAAO7B,CACT,EAAG"}
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
ariaHasPopup="Dialog"
|
|
141
141
|
/>
|
|
142
142
|
</template:elseif>
|
|
143
|
-
<template:elseif test="{= ${headerAction>type} === 'ForAction'}">
|
|
143
|
+
<template:elseif test="{= ${headerAction>type} === 'ForAction' || ${headerAction>type} === 'Copy'}">
|
|
144
144
|
<template:with path="headerAction>annotationPath" var="dataField">
|
|
145
145
|
<template:if
|
|
146
146
|
test="{= ${dataField>$Type} === 'com.sap.vocabularies.UI.v1.DataFieldForAction' && ${dataField>Determining} !== true }"
|
|
@@ -153,7 +153,7 @@
|
|
|
153
153
|
<Button
|
|
154
154
|
id="{= ID.generate(['fe', ${dataField>@@UI.getDataModelObjectPath}]) }"
|
|
155
155
|
unittest:id="AnnotationActionTest"
|
|
156
|
-
text="{dataField>Label}"
|
|
156
|
+
text="{= ${headerAction>text} ? ${headerAction>text} : ${dataField>Label} }"
|
|
157
157
|
press="{= ${headerAction>command} ? ('cmd:' + ${headerAction>command}) : OP.getPressExpressionForEdit(${dataField>}, ${entitySet>@sapui.name}, ${headerAction>}) }"
|
|
158
158
|
visible="{headerAction>visible}"
|
|
159
159
|
enabled="{headerAction>enabled}"
|
package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml
CHANGED
|
@@ -9,8 +9,7 @@
|
|
|
9
9
|
xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
|
|
10
10
|
template:require="{
|
|
11
11
|
ID: 'sap/fe/core/helpers/StableIdHelper',
|
|
12
|
-
COMMON: 'sap/fe/macros/CommonHelper'
|
|
13
|
-
fpm: 'sap/fe/macros/fpm/fpm'
|
|
12
|
+
COMMON: 'sap/fe/macros/CommonHelper'
|
|
14
13
|
}"
|
|
15
14
|
>
|
|
16
15
|
<fe:StashableHBox
|