@sapui5/sap.fe.templates 1.97.0 → 1.98.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -4
- package/src/sap/fe/templates/.library +1 -1
- package/src/sap/fe/templates/AnalyticalListPage/Component.js +1 -1
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +3 -3
- package/src/sap/fe/templates/ListComponent.js +1 -1
- package/src/sap/fe/templates/ListReport/Component.js +1 -1
- package/src/sap/fe/templates/ListReport/ExtensionAPI.js +2 -2
- package/src/sap/fe/templates/ListReport/ListReport.view.xml +2 -1
- package/src/sap/fe/templates/ListReport/ListReportController.controller.js +86 -86
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +7 -3
- package/src/sap/fe/templates/ListReport/overrides/MassEdit.js +95 -0
- package/src/sap/fe/templates/ListReport/overrides/Share.js +37 -22
- package/src/sap/fe/templates/ListReport/overrides/ViewState.js +54 -32
- package/src/sap/fe/templates/ObjectPage/AnnotationHelper.js +21 -1
- package/src/sap/fe/templates/ObjectPage/Component.js +17 -15
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +16 -1
- package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +103 -88
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +100 -73
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +1 -1
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +1 -1
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +1 -1
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +1 -1
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +13 -1
- package/src/sap/fe/templates/ObjectPage/overrides/Share.js +48 -44
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +1 -21
- package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +24 -5
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +1 -4
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +181 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionFormContent.fragment.xml +1 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionMoreFormContent.fragment.xml +1 -0
- package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +1 -1
- package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +1 -1
- package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +134 -124
- package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +1 -1
- package/src/sap/fe/templates/TableScroller.js +1 -1
- package/src/sap/fe/templates/controls/Table.fragment.xml +1 -1
- package/src/sap/fe/templates/library.js +2 -2
- package/src/sap/fe/templates/messagebundle.properties +24 -1
- package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +1 -1
- package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +1 -1
- package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +1 -1
- package/src/sap/fe/templates/messagebundle_es.properties +8 -8
- package/src/sap/fe/templates/messagebundle_fr.properties +1 -1
- package/src/sap/fe/templates/messagebundle_ja.properties +1 -1
- package/src/sap/fe/templates/messagebundle_tr.properties +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderImage.fragment.xml +0 -24
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAPUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
sap.ui.define(
|
|
6
6
|
[
|
|
@@ -12,9 +12,27 @@ sap.ui.define(
|
|
|
12
12
|
"sap/ui/mdc/p13n/StateUtil",
|
|
13
13
|
"sap/ui/Device",
|
|
14
14
|
"sap/ui/mdc/enum/ConditionValidated",
|
|
15
|
+
"sap/fe/macros/DelegateUtil",
|
|
16
|
+
"sap/fe/core/helpers/ModelHelper",
|
|
17
|
+
"sap/fe/macros/filter/FilterUtils",
|
|
18
|
+
"sap/fe/core/templating/PropertyFormatters",
|
|
15
19
|
"sap/base/Log"
|
|
16
20
|
],
|
|
17
|
-
function(
|
|
21
|
+
function(
|
|
22
|
+
CoreLibrary,
|
|
23
|
+
NavLibrary,
|
|
24
|
+
CommonUtils,
|
|
25
|
+
KeepAliveHelper,
|
|
26
|
+
ControlVariantApplyAPI,
|
|
27
|
+
StateUtil,
|
|
28
|
+
Device,
|
|
29
|
+
ConditionValidated,
|
|
30
|
+
DelegateUtil,
|
|
31
|
+
ModelHelper,
|
|
32
|
+
FilterUtils,
|
|
33
|
+
PropertyFormatters,
|
|
34
|
+
Log
|
|
35
|
+
) {
|
|
18
36
|
"use strict";
|
|
19
37
|
|
|
20
38
|
var NavType = NavLibrary.NavType,
|
|
@@ -22,6 +40,9 @@ sap.ui.define(
|
|
|
22
40
|
TemplateContentView = CoreLibrary.TemplateContentView,
|
|
23
41
|
InitialLoadMode = CoreLibrary.InitialLoadMode;
|
|
24
42
|
|
|
43
|
+
var FilterRestrictions = CommonUtils.FilterRestrictions,
|
|
44
|
+
CONDITION_PATH_TO_PROPERTY_PATH_REGEX = /\+|\*/g;
|
|
45
|
+
|
|
25
46
|
return {
|
|
26
47
|
applyInitialStateOnly: function() {
|
|
27
48
|
return true;
|
|
@@ -57,8 +78,7 @@ sap.ui.define(
|
|
|
57
78
|
var oView = this.getView(),
|
|
58
79
|
oController = oView.getController(),
|
|
59
80
|
oViewData = oView.getViewData(),
|
|
60
|
-
bControlVM = oViewData.variantManagement === VariantManagement.Control
|
|
61
|
-
that = this;
|
|
81
|
+
bControlVM = oViewData.variantManagement === VariantManagement.Control;
|
|
62
82
|
|
|
63
83
|
if (oController._isMultiMode()) {
|
|
64
84
|
aStateControls.push(oController._getMultiModeControl());
|
|
@@ -76,9 +96,7 @@ sap.ui.define(
|
|
|
76
96
|
if (bControlVM) {
|
|
77
97
|
aStateControls.push(oTable.getVariant());
|
|
78
98
|
}
|
|
79
|
-
|
|
80
|
-
aStateControls.push(oTable);
|
|
81
|
-
}
|
|
99
|
+
aStateControls.push(oTable);
|
|
82
100
|
});
|
|
83
101
|
|
|
84
102
|
if (oController._hasMultiVisualizations()) {
|
|
@@ -88,22 +106,6 @@ sap.ui.define(
|
|
|
88
106
|
aStateControls.push(oController._getFilterBarControl());
|
|
89
107
|
aStateControls.push(oView.byId("fe::ListReport"));
|
|
90
108
|
},
|
|
91
|
-
adaptControlStateHandler: function(oControl, aControlHandler) {
|
|
92
|
-
if (oControl.isA("sap.ui.fl.variants.VariantManagement")) {
|
|
93
|
-
aControlHandler.push({
|
|
94
|
-
retrieve: function(oVM) {
|
|
95
|
-
return {
|
|
96
|
-
"variantId": oVM.getCurrentVariantKey()
|
|
97
|
-
};
|
|
98
|
-
},
|
|
99
|
-
apply: function(oVM, oControlState) {
|
|
100
|
-
if (oControlState && oControlState.variantId !== undefined) {
|
|
101
|
-
oVM.setModified(true);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
109
|
retrieveAdditionalStates: function(mAdditionalStates) {
|
|
108
110
|
var oView = this.getView(),
|
|
109
111
|
oController = oView.getController(),
|
|
@@ -330,10 +332,7 @@ sap.ui.define(
|
|
|
330
332
|
}
|
|
331
333
|
return oPromise.then(function(bClearFilterAndReplaceWithAppState) {
|
|
332
334
|
if (bClearFilterAndReplaceWithAppState) {
|
|
333
|
-
|
|
334
|
-
return that._fnApplyConditions(oFilterBar, oConditions);
|
|
335
|
-
}
|
|
336
|
-
return that._fnClearFilterAndReplaceWithAppState(oFilterBar, oConditions);
|
|
335
|
+
return that._fnApplyConditions(oFilterBar, oConditions);
|
|
337
336
|
}
|
|
338
337
|
});
|
|
339
338
|
},
|
|
@@ -352,9 +351,35 @@ sap.ui.define(
|
|
|
352
351
|
}
|
|
353
352
|
delete oCondition.isEmpty;
|
|
354
353
|
};
|
|
354
|
+
var fnGetPropertyInfo = function(oFilterControl, sEntityTypePath) {
|
|
355
|
+
var sEntitySetPath = ModelHelper.getEntitySetPath(sEntityTypePath),
|
|
356
|
+
oMetaModel = oFilterControl.getModel().getMetaModel(),
|
|
357
|
+
oFR = CommonUtils.getFilterRestrictionsByPath(sEntitySetPath, oMetaModel),
|
|
358
|
+
aNonFilterableProps = oFR[FilterRestrictions.NON_FILTERABLE_PROPERTIES],
|
|
359
|
+
mFilterFields = FilterUtils.getConvertedFilterFields(oFilterControl, sEntityTypePath),
|
|
360
|
+
aPropertyInfo = [];
|
|
361
|
+
Object.keys(mFilterFields).forEach(function(sFilterFieldKey) {
|
|
362
|
+
var oConvertedProperty = mFilterFields[sFilterFieldKey];
|
|
363
|
+
var sPropertyPath = oConvertedProperty.conditionPath.replace(CONDITION_PATH_TO_PROPERTY_PATH_REGEX, "");
|
|
364
|
+
if (aNonFilterableProps.indexOf(sPropertyPath) === -1) {
|
|
365
|
+
var sAnnotationPath = oConvertedProperty.annotationPath;
|
|
366
|
+
var oPropertyContext = oMetaModel.createBindingContext(sAnnotationPath);
|
|
367
|
+
aPropertyInfo.push({
|
|
368
|
+
path: oConvertedProperty.conditionPath,
|
|
369
|
+
hiddenFilter: oConvertedProperty.availability === "Hidden",
|
|
370
|
+
hasValueHelp: !sAnnotationPath
|
|
371
|
+
? false
|
|
372
|
+
: PropertyFormatters.hasValueHelp(oPropertyContext.getObject(), { context: oPropertyContext })
|
|
373
|
+
});
|
|
374
|
+
return;
|
|
375
|
+
}
|
|
376
|
+
});
|
|
377
|
+
return aPropertyInfo;
|
|
378
|
+
};
|
|
355
379
|
return oFilterBar.initialized().then(function() {
|
|
356
|
-
oFilterBar
|
|
357
|
-
|
|
380
|
+
var sEntityTypePath = DelegateUtil.getCustomData(oFilterBar, "entityType");
|
|
381
|
+
var aPropertyInfo = fnGetPropertyInfo(oFilterBar, sEntityTypePath);
|
|
382
|
+
aPropertyInfo
|
|
358
383
|
.filter(function(oPropertyInfo) {
|
|
359
384
|
return oPropertyInfo.path !== "$editState" && oPropertyInfo.path !== "$search";
|
|
360
385
|
})
|
|
@@ -377,9 +402,6 @@ sap.ui.define(
|
|
|
377
402
|
});
|
|
378
403
|
return StateUtil.applyExternalState(oFilterBar, { filter: mFilter, items: aItems });
|
|
379
404
|
});
|
|
380
|
-
},
|
|
381
|
-
_fnClearFilterAndReplaceWithAppState: function(oFilterBar, oConditions) {
|
|
382
|
-
return this._fnApplyConditions(oFilterBar, {}).then(this._fnApplyConditions.bind(this, oFilterBar, oConditions));
|
|
383
405
|
}
|
|
384
406
|
};
|
|
385
407
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAPUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
sap.ui.define(
|
|
@@ -447,6 +447,26 @@ sap.ui.define(
|
|
|
447
447
|
return undefined;
|
|
448
448
|
}
|
|
449
449
|
}
|
|
450
|
+
},
|
|
451
|
+
isSubSectionTitleVisible: function(sSubSectionvisible, sSubSectiontitle, sSubSectionshowTitle) {
|
|
452
|
+
if (sSubSectionvisible.indexOf("{=") === 0) {
|
|
453
|
+
// Dynamic expression
|
|
454
|
+
var sExpressionResult = sSubSectionvisible.substring(
|
|
455
|
+
sSubSectionvisible.indexOf("{=") + 2,
|
|
456
|
+
sSubSectionvisible.lastIndexOf("}")
|
|
457
|
+
);
|
|
458
|
+
return (
|
|
459
|
+
"{= (" +
|
|
460
|
+
sExpressionResult +
|
|
461
|
+
") && ('" +
|
|
462
|
+
sSubSectiontitle +
|
|
463
|
+
"' !=='undefined') && (" +
|
|
464
|
+
sSubSectionshowTitle +
|
|
465
|
+
" ? true : false) }"
|
|
466
|
+
);
|
|
467
|
+
} else {
|
|
468
|
+
return sSubSectionvisible && sSubSectiontitle !== "undefined" && (sSubSectionshowTitle ? true : false);
|
|
469
|
+
}
|
|
450
470
|
}
|
|
451
471
|
};
|
|
452
472
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAPUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
sap.ui.define(
|
|
6
6
|
[
|
|
@@ -15,6 +15,7 @@ sap.ui.define(
|
|
|
15
15
|
"use strict";
|
|
16
16
|
|
|
17
17
|
var VariantManagement = CoreLibrary.VariantManagement,
|
|
18
|
+
CreationMode = CoreLibrary.CreationMode,
|
|
18
19
|
ObjectPageComponent = TemplateComponent.extend("sap.fe.templates.ObjectPage.Component", {
|
|
19
20
|
metadata: {
|
|
20
21
|
properties: {
|
|
@@ -86,25 +87,26 @@ sap.ui.define(
|
|
|
86
87
|
|
|
87
88
|
// TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the
|
|
88
89
|
// object page - for now keep it here
|
|
89
|
-
createDeferredContext: function(sPath, bActionCreate) {
|
|
90
|
+
createDeferredContext: function(sPath, oListBinding, bActionCreate) {
|
|
90
91
|
if (!this.DeferredContextCreated) {
|
|
91
92
|
this.DeferredContextCreated = true;
|
|
92
|
-
var
|
|
93
|
-
that = this,
|
|
93
|
+
var that = this,
|
|
94
94
|
oParamters = {
|
|
95
95
|
"$$groupId": "$auto.Heroes",
|
|
96
96
|
"$$updateGroupId": "$auto"
|
|
97
97
|
};
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
98
|
+
if (!oListBinding || oListBinding.isRelative() === false) {
|
|
99
|
+
oListBinding = new ODataListBinding(
|
|
100
|
+
this.getModel(),
|
|
101
|
+
sPath.replace("(...)", ""),
|
|
102
|
+
undefined,
|
|
103
|
+
undefined,
|
|
104
|
+
undefined,
|
|
105
|
+
oParamters
|
|
106
|
+
);
|
|
107
|
+
} else {
|
|
108
|
+
oListBinding.mParameters = oParamters;
|
|
109
|
+
}
|
|
108
110
|
var oStartUpParams =
|
|
109
111
|
this.oAppComponent &&
|
|
110
112
|
this.oAppComponent.getComponentData() &&
|
|
@@ -119,7 +121,7 @@ sap.ui.define(
|
|
|
119
121
|
that.getRootControl()
|
|
120
122
|
.getController()
|
|
121
123
|
.editFlow.createDocument(oListBinding, {
|
|
122
|
-
creationMode:
|
|
124
|
+
creationMode: CreationMode.Sync,
|
|
123
125
|
createAction: bActionCreate,
|
|
124
126
|
data: createParams
|
|
125
127
|
})
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAPUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE. All rights reserved.
|
|
4
4
|
*/
|
|
5
5
|
sap.ui.define(["sap/fe/core/ExtensionAPI", "sap/fe/core/CommonUtils", "sap/fe/core/converters/helpers/ID"], function(
|
|
6
6
|
ExtensionAPI,
|
|
@@ -105,6 +105,9 @@ sap.ui.define(["sap/fe/core/ExtensionAPI", "sap/fe/core/CommonUtils", "sap/fe/co
|
|
|
105
105
|
*/
|
|
106
106
|
getSelectedContexts: function(sTableId) {
|
|
107
107
|
var oTable = this._view.byId(sTableId);
|
|
108
|
+
if (oTable && oTable.isA("sap.fe.macros.TableAPI")) {
|
|
109
|
+
oTable = oTable.getContent();
|
|
110
|
+
}
|
|
108
111
|
return (oTable && oTable.isA("sap.ui.mdc.Table") && oTable.getSelectedContexts()) || [];
|
|
109
112
|
},
|
|
110
113
|
|
|
@@ -122,6 +125,18 @@ sap.ui.define(["sap/fe/core/ExtensionAPI", "sap/fe/core/CommonUtils", "sap/fe/co
|
|
|
122
125
|
oBlock = this._view.byId(sBlockID),
|
|
123
126
|
bBlockState = bShow === undefined ? !oBlock.getShowSideContent() : bShow;
|
|
124
127
|
oBlock.setShowSideContent(bBlockState);
|
|
128
|
+
},
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Gets the bound context of the current object page.
|
|
132
|
+
*
|
|
133
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#getBindingContext
|
|
134
|
+
* @returns {sap.ui.model.odata.v4.Context} Context bound to the object page
|
|
135
|
+
*
|
|
136
|
+
* @public
|
|
137
|
+
*/
|
|
138
|
+
getBindingContext: function() {
|
|
139
|
+
return this._view.getBindingContext();
|
|
125
140
|
}
|
|
126
141
|
});
|
|
127
142
|
|
|
@@ -79,93 +79,108 @@
|
|
|
79
79
|
/>
|
|
80
80
|
</uxap:dependents>
|
|
81
81
|
<template:if test="{converterContext>header/visible}">
|
|
82
|
-
<
|
|
83
|
-
<uxap:
|
|
84
|
-
<uxap:
|
|
85
|
-
<
|
|
86
|
-
<FlexBox
|
|
87
|
-
<
|
|
82
|
+
<template:with path="converterContext>header/avatar" var="avatar">
|
|
83
|
+
<uxap:headerTitle>
|
|
84
|
+
<uxap:ObjectPageDynamicHeaderTitle primaryArea="Begin">
|
|
85
|
+
<uxap:expandedHeading>
|
|
86
|
+
<FlexBox>
|
|
87
|
+
<FlexBox visible="{converterContext>header/title/expandedImageVisible}">
|
|
88
|
+
<Avatar
|
|
89
|
+
class="sapUiSmallMarginEnd"
|
|
90
|
+
src="{avatar>src}"
|
|
91
|
+
initials="{avatar>initials}"
|
|
92
|
+
fallbackIcon="{avatar>fallbackIcon}"
|
|
93
|
+
displayShape="{avatar>displayShape}"
|
|
94
|
+
displaySize="S"
|
|
95
|
+
/>
|
|
96
|
+
</FlexBox>
|
|
97
|
+
<template:with path="entityType>@com.sap.vocabularies.UI.v1.HeaderInfo" var="headerInfo">
|
|
98
|
+
<Title
|
|
99
|
+
text="{= OPTemplating.getExpressionForTitle(${headerInfo>@@UI.getConverterContext}, ${viewData>}, ${fullContextPath>@@UI.getDataModelObjectPath}, ${entitySet>@com.sap.vocabularies.Common.v1.DraftRoot})}"
|
|
100
|
+
wrapping="true"
|
|
101
|
+
/>
|
|
102
|
+
</template:with>
|
|
88
103
|
</FlexBox>
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
104
|
+
</uxap:expandedHeading>
|
|
105
|
+
<uxap:snappedHeading>
|
|
106
|
+
<FlexBox>
|
|
107
|
+
<Avatar
|
|
108
|
+
class="sapUiSmallMarginEnd"
|
|
109
|
+
src="{avatar>src}"
|
|
110
|
+
initials="{avatar>initials}"
|
|
111
|
+
fallbackIcon="{avatar>fallbackIcon}"
|
|
112
|
+
displayShape="{avatar>displayShape}"
|
|
113
|
+
displaySize="S"
|
|
93
114
|
/>
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
115
|
+
<template:with path="entityType>@com.sap.vocabularies.UI.v1.HeaderInfo" var="headerInfo">
|
|
116
|
+
<Title
|
|
117
|
+
text="{= OPTemplating.getExpressionForTitle(${headerInfo>@@UI.getConverterContext}, ${viewData>}, ${fullContextPath>@@UI.getDataModelObjectPath}, ${entitySet>@com.sap.vocabularies.Common.v1.DraftRoot})}"
|
|
118
|
+
wrapping="true"
|
|
119
|
+
/>
|
|
120
|
+
</template:with>
|
|
121
|
+
</FlexBox>
|
|
122
|
+
</uxap:snappedHeading>
|
|
123
|
+
<uxap:expandedContent>
|
|
98
124
|
<FlexBox>
|
|
99
|
-
<
|
|
100
|
-
<
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
</template:with>
|
|
125
|
+
<template:if test="{entityType>@com.sap.vocabularies.UI.v1.HeaderInfo/Description}">
|
|
126
|
+
<Label
|
|
127
|
+
text="{= OPTemplating.getExpressionForDescription(${headerInfo>@@UI.getConverterContext}, ${fullContextPath>@@UI.getDataModelObjectPath})}"
|
|
128
|
+
wrapping="true"
|
|
129
|
+
/>
|
|
130
|
+
</template:if>
|
|
106
131
|
</FlexBox>
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
id="fe::
|
|
132
|
+
</uxap:expandedContent>
|
|
133
|
+
<uxap:snappedContent>
|
|
134
|
+
<FlexBox>
|
|
135
|
+
<template:if test="{entityType>@com.sap.vocabularies.UI.v1.HeaderInfo/Description}">
|
|
136
|
+
<Label
|
|
137
|
+
text="{= OPTemplating.getExpressionForDescription(${headerInfo>@@UI.getConverterContext}, ${fullContextPath>@@UI.getDataModelObjectPath})}"
|
|
138
|
+
wrapping="true"
|
|
139
|
+
/>
|
|
140
|
+
</template:if>
|
|
141
|
+
</FlexBox>
|
|
142
|
+
</uxap:snappedContent>
|
|
143
|
+
<uxap:content>
|
|
144
|
+
<template:if test="{entitySet>@com.sap.vocabularies.Common.v1.DraftRoot}">
|
|
145
|
+
<macro:DraftIndicator DraftIndicatorType="IconOnly" class="sapUiTinyMarginBegin sapMTB sapMTBNewFlex" entitySet="{entitySet>}" />
|
|
146
|
+
</template:if>
|
|
147
|
+
<internal:SituationsIndicator xmlns:internal="sap.fe.macros.internal" entitySet="{entitySet>}" />
|
|
148
|
+
</uxap:content>
|
|
149
|
+
<uxap:navigationActions>
|
|
150
|
+
<template:if test="{= ${viewData>/viewLevel} > 1}">
|
|
151
|
+
<macro:Paginator id="fe::Paginator" />
|
|
152
|
+
</template:if>
|
|
153
|
+
<!-- Flexible column layout menu-->
|
|
154
|
+
<template:if test="{= ${viewData>/fclEnabled} }">
|
|
155
|
+
<macro:FlexibleColumnLayoutActions />
|
|
156
|
+
</template:if>
|
|
157
|
+
</uxap:navigationActions>
|
|
158
|
+
<uxap:actions>
|
|
159
|
+
<core:Fragment fragmentName="sap.fe.templates.ObjectPage.view.fragments.Actions" type="XML" />
|
|
160
|
+
</uxap:actions>
|
|
161
|
+
<uxap:breadcrumbs>
|
|
162
|
+
<Breadcrumbs
|
|
163
|
+
unittest:id="BreadcrumbsTest"
|
|
164
|
+
visible="{= OP.getVisibleExpressionForBreadcrumbs(${viewData>/}) }"
|
|
165
|
+
modelContextChange="._setBreadcrumbLinks(${$source>/})"
|
|
166
|
+
id="fe::Breadcrumbs"
|
|
167
|
+
>
|
|
168
|
+
</Breadcrumbs>
|
|
169
|
+
</uxap:breadcrumbs>
|
|
170
|
+
</uxap:ObjectPageDynamicHeaderTitle>
|
|
171
|
+
</uxap:headerTitle>
|
|
172
|
+
<template:if test="{converterContext>header/hasContent}">
|
|
173
|
+
<uxap:headerContent>
|
|
174
|
+
<FlexBox
|
|
175
|
+
id="fe::HeaderContentContainer"
|
|
176
|
+
unittest:id="FlexBoxTest"
|
|
177
|
+
dt:designtime="sap/fe/templates/ObjectPage/designtime/FlexBox.designtime"
|
|
178
|
+
wrap="Wrap"
|
|
179
|
+
fitContainer="true"
|
|
180
|
+
alignItems="Stretch"
|
|
151
181
|
>
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
</uxap:ObjectPageDynamicHeaderTitle>
|
|
155
|
-
</uxap:headerTitle>
|
|
156
|
-
<template:if test="{converterContext>header/hasContent}">
|
|
157
|
-
<uxap:headerContent>
|
|
158
|
-
<FlexBox
|
|
159
|
-
id="fe::HeaderContentContainer"
|
|
160
|
-
unittest:id="FlexBoxTest"
|
|
161
|
-
dt:designtime="sap/fe/templates/ObjectPage/designtime/FlexBox.designtime"
|
|
162
|
-
wrap="Wrap"
|
|
163
|
-
fitContainer="true"
|
|
164
|
-
alignItems="Stretch"
|
|
165
|
-
>
|
|
166
|
-
<template:if test="{converterContext>header/avatar}">
|
|
167
|
-
<template:with path="converterContext>header/avatar" var="avatar">
|
|
168
|
-
<Avatar
|
|
182
|
+
<template:if test="{converterContext>header/avatar}">
|
|
183
|
+
<Avatar
|
|
169
184
|
unittest:id="AvatarOPHeaderContent"
|
|
170
185
|
class="sapUiSmallMarginEnd sapUiSmallMarginBottom"
|
|
171
186
|
src="{avatar>src}"
|
|
@@ -174,12 +189,12 @@
|
|
|
174
189
|
displayShape="{avatar>displayShape}"
|
|
175
190
|
displaySize="XL"
|
|
176
191
|
/>
|
|
177
|
-
</template:
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
</
|
|
181
|
-
</
|
|
182
|
-
</template:
|
|
192
|
+
</template:if>
|
|
193
|
+
<core:Fragment fragmentName="sap.fe.templates.ObjectPage.view.fragments.HeaderContent" type="XML" />
|
|
194
|
+
</FlexBox>
|
|
195
|
+
</uxap:headerContent>
|
|
196
|
+
</template:if>
|
|
197
|
+
</template:with>
|
|
183
198
|
</template:if>
|
|
184
199
|
<uxap:sections>
|
|
185
200
|
<core:Fragment fragmentName="sap.fe.templates.ObjectPage.view.fragments.Section" type="XML" />
|