@sapui5/sap.suite.ui.generic.template 1.131.0 → 1.132.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 +1 -1
- package/src/sap/suite/ui/generic/template/.library +1 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/SmartFilterBarExt.js +3 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/SmartKpiTag.js +37 -11
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItem.js +3 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroChart.js +19 -4
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/SmartVisualFilterBar.js +46 -15
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/DropDownController.js +42 -17
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/KpiTagController.js +13 -3
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/extensionAPI/ExtensionAPI.js +2 -2
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_en_US_saptrc.properties +105 -105
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sk.properties +1 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/AnalyticalListPage/util/FilterUtil.js +17 -6
- package/src/sap/suite/ui/generic/template/Canvas/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ListReport/controller/ControllerImplementation.js +44 -22
- package/src/sap/suite/ui/generic/template/ListReport/controller/IappStateHandler.js +18 -2
- package/src/sap/suite/ui/generic/template/ListReport/extensionAPI/ExtensionAPI.js +2 -2
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n.properties +1 -4
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ar.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_bg.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ca.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cnr.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cs.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cy.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_da.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_de.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_el.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_GB.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saprigi.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saptrc.properties +58 -58
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es_MX.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_et.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fi.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr_CA.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hi.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hr.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hu.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_id.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_it.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_iw.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ja.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_kk.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ko.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lt.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lv.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_mk.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ms.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_nl.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_no.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pl.properties +2 -4
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt_PT.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ro.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ru.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sh.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sk.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sl.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sr.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sv.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_th.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_tr.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_uk.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_vi.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_CN.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_TW.properties +1 -3
- package/src/sap/suite/ui/generic/template/ListReport/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ListReport/view/fragments/BreakoutActionButtons.fragment.xml +3 -2
- package/src/sap/suite/ui/generic/template/ListReport/view/fragments/FullscreenPage.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartList.fragment.xml +3 -3
- package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTable.fragment.xml +1 -0
- package/src/sap/suite/ui/generic/template/ObjectPage/controller/ControllerImplementation.js +107 -23
- package/src/sap/suite/ui/generic/template/ObjectPage/controller/SectionTitleHandler.js +34 -1
- package/src/sap/suite/ui/generic/template/ObjectPage/controller/inlineCreationRows/InlineCreationRowsHelper.js +46 -4
- package/src/sap/suite/ui/generic/template/ObjectPage/controllerFrameworkExtensions.js +21 -4
- package/src/sap/suite/ui/generic/template/ObjectPage/extensionAPI/ExtensionAPI.js +29 -5
- package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saptrc.properties +95 -95
- package/src/sap/suite/ui/generic/template/ObjectPage/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/ObjectPage/view/Details.view.xml +2 -2
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/CRUDActionButtons.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/Footer.fragment.xml +3 -3
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/HeaderContainer.fragment.xml +4 -4
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/HeaderImage.fragment.xml +4 -4
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartChart.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartTable.fragment.xml +2 -1
- package/src/sap/suite/ui/generic/template/QuickCreate/i18n/i18n_en_US_saptrc.properties +14 -14
- package/src/sap/suite/ui/generic/template/QuickCreate/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/QuickView/i18n/i18n_en_US_saptrc.properties +2 -2
- package/src/sap/suite/ui/generic/template/QuickView/manifest.json +1 -1
- package/src/sap/suite/ui/generic/template/designtime/controls/DynamicPage.designtime.js +142 -194
- package/src/sap/suite/ui/generic/template/designtime/controls/ObjectPageLayout.designtime.js +204 -0
- package/src/sap/suite/ui/generic/template/designtime/controls/SmartFilterBar.designtime.js +236 -0
- package/src/sap/suite/ui/generic/template/designtime/utils/designtimeHelper.js +36 -9
- package/src/sap/suite/ui/generic/template/designtime/utils/designtimeUtils.js +67 -23
- package/src/sap/suite/ui/generic/template/detailTemplates/i18n/i18n_en_US_saptrc.properties +6 -6
- package/src/sap/suite/ui/generic/template/fragments/BreakoutActions.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/fragments/DeterminingActions.fragment.xml +3 -2
- package/src/sap/suite/ui/generic/template/fragments/EasyFilter.fragment.xml +0 -6
- package/src/sap/suite/ui/generic/template/fragments/GlobalActions.fragment.xml +3 -2
- package/src/sap/suite/ui/generic/template/fragments/GridTableCells.fragment.xml +3 -2
- package/src/sap/suite/ui/generic/template/fragments/HeaderAddress.fragment.xml +2 -1
- package/src/sap/suite/ui/generic/template/fragments/HeaderContactWithDetailsPopover.fragment.xml +2 -1
- package/src/sap/suite/ui/generic/template/fragments/HeaderDataPointContent.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/fragments/HeaderForm.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/fragments/HeaderFormDataField.fragment.xml +12 -5
- package/src/sap/suite/ui/generic/template/fragments/HeaderPlainText.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/fragments/HeaderRatingIndicator.fragment.xml +5 -7
- package/src/sap/suite/ui/generic/template/fragments/ProgressIndicator.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/fragments/QuickViewSmartForm.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/fragments/RatingIndicatorFacet.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/fragments/SmartFormDataField.fragment.xml +4 -3
- package/src/sap/suite/ui/generic/template/fragments/SmartMicroChart.fragment.xml +1 -1
- package/src/sap/suite/ui/generic/template/fragments/SmartTableUiTableCommons.fragment.xml +2 -5
- package/src/sap/suite/ui/generic/template/fragments/TableCell.fragment.xml +7 -5
- package/src/sap/suite/ui/generic/template/fragments/TableColumnListItem.fragment.xml +2 -5
- package/src/sap/suite/ui/generic/template/fragments/ToolbarButton.fragment.xml +2 -2
- package/src/sap/suite/ui/generic/template/fragments/TreeTableColumns.fragment.xml +3 -2
- package/src/sap/suite/ui/generic/template/genericUtilities/controlHelper.js +10 -9
- package/src/sap/suite/ui/generic/template/genericUtilities/filterHelper.js +70 -2
- package/src/sap/suite/ui/generic/template/genericUtilities/polyFill.js +14 -0
- package/src/sap/suite/ui/generic/template/js/AnnotationHelper.js +53 -12
- package/src/sap/suite/ui/generic/template/js/QuickTemplates/QuickTemplateComponentFactory.js +25 -13
- package/src/sap/suite/ui/generic/template/lib/AppComponent.js +16 -225
- package/src/sap/suite/ui/generic/template/lib/CRUDHelper.js +5 -3
- package/src/sap/suite/ui/generic/template/lib/CommonEventHandlers.js +11 -4
- package/src/sap/suite/ui/generic/template/lib/CommonUtils.js +37 -12
- package/src/sap/suite/ui/generic/template/lib/ComponentUtils.js +3 -3
- package/src/sap/suite/ui/generic/template/lib/ContextBookkeeping.js +39 -23
- package/src/sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHandler.js +13 -5
- package/src/sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHelper.js +168 -0
- package/src/sap/suite/ui/generic/template/lib/MessageStripHelper.js +1 -1
- package/src/sap/suite/ui/generic/template/lib/ShellPersonalizationService.js +137 -0
- package/src/sap/suite/ui/generic/template/lib/SideEffectUtil.js +56 -1
- package/src/sap/suite/ui/generic/template/lib/TemplateComponent.js +24 -4
- package/src/sap/suite/ui/generic/template/lib/ai/EasyFilterBarHandler.js +91 -36
- package/src/sap/suite/ui/generic/template/lib/ai/FioriAIHandler.js +30 -35
- package/src/sap/suite/ui/generic/template/lib/deletionHelper.js +10 -2
- package/src/sap/suite/ui/generic/template/lib/filterHelper.js +7 -3
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n.properties +6 -15
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ar.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_bg.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ca.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cnr.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cs.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cy.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_da.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_de.properties +2 -10
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_el.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_GB.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_sappsd.properties +0 -11
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saprigi.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saptrc.properties +174 -149
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es.properties +3 -11
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es_MX.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_et.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr_CA.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hi.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hr.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hu.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_id.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_it.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_iw.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ja.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_kk.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ko.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lt.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lv.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_mk.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ms.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_no.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pl.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt_PT.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ro.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sh.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sk.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sl.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sr.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sv.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_th.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_tr.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_uk.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_vi.properties +3 -11
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_CN.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_TW.properties +1 -9
- package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +59 -38
- package/src/sap/suite/ui/generic/template/library.js +7 -3
- package/src/sap/suite/ui/generic/template/listTemplates/fragments/ChartActions.fragment.xml +4 -3
- package/src/sap/suite/ui/generic/template/listTemplates/fragments/DetailSmartTable.fragment.xml +4 -3
- package/src/sap/suite/ui/generic/template/listTemplates/i18n/i18n_en_US_saptrc.properties +1 -1
- package/src/sap/suite/ui/generic/template/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/suite/ui/generic/template/support/DiagnosticsTool/DiagnosticsTool.js +15 -3
- package/src/sap/suite/ui/generic/template/support/DiagnosticsTool/view/DiagnosticsTool.view.xml +0 -24
- package/src/sap/suite/ui/generic/template/support/lib/CommonChecks.js +11 -19
- package/src/sap/suite/ui/generic/template/themes/base/ObjectPage.less +0 -4
- package/src/sap/suite/ui/generic/template/themes/sap_belize_base/ObjectPage.less +0 -4
- package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal_base/ObjectPage.less +0 -4
- package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/AnalyticalListPage.less +0 -1
- package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/AnalyticalListPage.less +0 -1
- package/src/sap/suite/ui/generic/template/themes/sap_hcb/base_ObjectPage.less +0 -4
- package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/AnalyticalListPage.less +0 -1
- package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/AnalyticalListPage.less +0 -1
- package/src/sap/suite/ui/generic/template/fragments/ContactDetailsQuickViewGroup.fragment.xml +0 -36
- package/src/sap/suite/ui/generic/template/js/formatters/formatDisplayValueForProgressIndicator.js +0 -28
- package/src/sap/suite/ui/generic/template/js/formatters/formatImageUrl.js +0 -21
- package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorAggregateCount.js +0 -21
- package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorFooterText.js +0 -21
- package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorSubTitle.js +0 -21
- package/src/sap/suite/ui/generic/template/js/formatters/setInfoHighlight.js +0 -21
- package/src/sap/suite/ui/generic/template/js/formatters/setRowNavigated.js +0 -26
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
"sap/base/util/extend",
|
|
25
25
|
"sap/base/util/isPlainObject",
|
|
26
26
|
"sap/m/NavContainer",
|
|
27
|
-
"sap/
|
|
27
|
+
"sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHelper",
|
|
28
28
|
"sap/ui/core/UIComponent",
|
|
29
29
|
"sap/ui/model/base/ManagedObjectModel",
|
|
30
30
|
"sap/ui/model/Filter",
|
|
@@ -59,14 +59,16 @@ sap.ui.define([
|
|
|
59
59
|
"sap/suite/ui/generic/template/lib/ai/FioriAIHandler",
|
|
60
60
|
"sap/suite/ui/generic/template/lib/RetryAfterHandler",
|
|
61
61
|
"sap/suite/ui/generic/template/js/RuntimeFormatters", // just to make sure that this class is loaded
|
|
62
|
-
"sap/
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
"sap/suite/ui/generic/template/lib/ShellPersonalizationService",
|
|
63
|
+
// As per UI5 2.0 mandate, making sure that the routers are loaded before the AppComponent is initialized.
|
|
64
|
+
// Please don't remove them
|
|
65
|
+
"sap/m/routing/Router",
|
|
66
|
+
"sap/f/routing/Router"
|
|
65
67
|
], function(
|
|
66
68
|
extend,
|
|
67
69
|
isPlainObject,
|
|
68
70
|
NavContainer,
|
|
69
|
-
|
|
71
|
+
FlexibleColumnLayoutHelper,
|
|
70
72
|
UIComponent,
|
|
71
73
|
ManagedObjectModel,
|
|
72
74
|
Filter,
|
|
@@ -97,13 +99,11 @@ sap.ui.define([
|
|
|
97
99
|
JouleContextProvider,
|
|
98
100
|
ServiceFactoryRegistry,
|
|
99
101
|
VersionInfo,
|
|
100
|
-
IllustratedMessageType,
|
|
102
|
+
IllustratedMessageType,
|
|
101
103
|
FioriAIHandler,
|
|
102
104
|
RetryAfterHandler,
|
|
103
105
|
RuntimeFormatters,
|
|
104
|
-
|
|
105
|
-
FlexibleColumnLayoutDataForDesktop,
|
|
106
|
-
FlexibleColumnLayoutDataForTablet
|
|
106
|
+
ShellPersonalizationService
|
|
107
107
|
) {
|
|
108
108
|
"use strict";
|
|
109
109
|
var sClassName = "lib.AppComponent";
|
|
@@ -147,8 +147,6 @@ sap.ui.define([
|
|
|
147
147
|
|
|
148
148
|
var fnLeaveAppResolve;
|
|
149
149
|
var oTemplateContract = { // template contract object which is used for data interchange between framework classes
|
|
150
|
-
getStoredLayout: getStoredLayout,
|
|
151
|
-
setColumnDistributionModel: setColumnDistributionModel,
|
|
152
150
|
oAppComponent: oAppComponent,
|
|
153
151
|
leaveAppPromise: Promise.resolve(), // promise which is resolved once the user leaves the component
|
|
154
152
|
ghostapp: (function(){
|
|
@@ -280,9 +278,6 @@ sap.ui.define([
|
|
|
280
278
|
var oNavigationController; // instance of NavigationController
|
|
281
279
|
var fnDeregister; // function to be called to deregister at TemplateContract
|
|
282
280
|
|
|
283
|
-
var shellPersonalizationService;
|
|
284
|
-
var applicationPersonalizers = {};
|
|
285
|
-
|
|
286
281
|
// Begin: Private helper methods called in init
|
|
287
282
|
|
|
288
283
|
// This function instantiates the global private model that can be used as named model with name _templPrivGlobal in all views and fragments.
|
|
@@ -519,215 +514,11 @@ sap.ui.define([
|
|
|
519
514
|
var oRetryAfterHandler = new RetryAfterHandler(oTemplateContract, oAppComponent);
|
|
520
515
|
oRetryAfterHandler.registerRetryAfterHandler();
|
|
521
516
|
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
shellPersonalizationService = oShellPersonalizationService;
|
|
526
|
-
});
|
|
527
|
-
}
|
|
528
|
-
|
|
529
|
-
oLogger.info("Init done for AppComponent " + sAppComponentId);
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
/**
|
|
533
|
-
* Gets the personalizer from the shell service.
|
|
534
|
-
* We set some defaults for the scope object.
|
|
535
|
-
* @param persId Personalization object
|
|
536
|
-
* @param scope Scope object
|
|
537
|
-
* @param component
|
|
538
|
-
* @returns {Promise<PersonalizerType> | undefined} Personalizer object which handles personalization
|
|
539
|
-
*/
|
|
540
|
-
async function getPersonalizer(persId, scope, component) {
|
|
541
|
-
if (!shellPersonalizationService) {
|
|
542
|
-
return;
|
|
543
|
-
}
|
|
544
|
-
scope = {
|
|
545
|
-
// merge some defaults
|
|
546
|
-
keyCategory: shellPersonalizationService.constants.keyCategory.FIXED_KEY,
|
|
547
|
-
writeFrequency: shellPersonalizationService.constants.writeFrequency.LOW,
|
|
548
|
-
clientStorageAllowed: false,
|
|
549
|
-
validity: Infinity,
|
|
550
|
-
...scope
|
|
551
|
-
};
|
|
552
|
-
return shellPersonalizationService.getPersonalizer(persId, scope, component);
|
|
553
|
-
}
|
|
554
|
-
|
|
555
|
-
/**
|
|
556
|
-
* Prepares the container name for personalizer.
|
|
557
|
-
* @returns Container name
|
|
558
|
-
*/
|
|
559
|
-
function getContainerName() {
|
|
560
|
-
// personalizer logs error if name longer than 40 symbols
|
|
561
|
-
var sContainer = `App#${(oAppComponent).getManifest()["sap.app"].id}`;
|
|
562
|
-
return sContainer;
|
|
563
|
-
}
|
|
564
|
-
|
|
565
|
-
/**
|
|
566
|
-
* Initializes the personalizer to access the Application data stored in the shell Personalization.
|
|
567
|
-
* @param {string} itemName The name of the item for which the personalizer is created.
|
|
568
|
-
* @returns {Promise<PersonalizerType>} A personalizer
|
|
569
|
-
*/
|
|
570
|
-
async function getApplicationPersonalizer(itemName) {
|
|
571
|
-
if (!applicationPersonalizers[itemName]) {
|
|
572
|
-
applicationPersonalizers[itemName] = getPersonalizer(
|
|
573
|
-
{
|
|
574
|
-
container: getContainerName(),
|
|
575
|
-
item: itemName
|
|
576
|
-
},
|
|
577
|
-
{},
|
|
578
|
-
oAppComponent
|
|
579
|
-
);
|
|
580
|
-
}
|
|
581
|
-
return applicationPersonalizers[itemName];
|
|
582
|
-
}
|
|
583
|
-
|
|
584
|
-
/**
|
|
585
|
-
* Returns data from the personalization service.
|
|
586
|
-
* @param {string} itemName
|
|
587
|
-
* @returns {Promise<object | undefined>} Data
|
|
588
|
-
*/
|
|
589
|
-
async function getApplicationPersonalizationData(itemName) {
|
|
590
|
-
return (await (await getApplicationPersonalizer(itemName))?.getPersData());
|
|
591
|
-
}
|
|
592
|
-
|
|
593
|
-
/**
|
|
594
|
-
* Stores an object in the personalization service.
|
|
595
|
-
* @param {string} itemName
|
|
596
|
-
* @param {object} data
|
|
597
|
-
* @returns {Promise<void>} A promise
|
|
598
|
-
*/
|
|
599
|
-
async function setApplicationPersonalizationData(itemName, data) {
|
|
600
|
-
(await getApplicationPersonalizer(itemName)).setPersData(data);
|
|
601
|
-
}
|
|
602
|
-
|
|
603
|
-
/**
|
|
604
|
-
* Retieves the FCL state from the personalization service.
|
|
605
|
-
* @returns The FCL state
|
|
606
|
-
*/
|
|
607
|
-
async function getFCLPersonalizationData() {
|
|
608
|
-
var oEmptyFCLState = {
|
|
609
|
-
defaultLayouts: {},
|
|
610
|
-
columnsDistribution: {
|
|
611
|
-
desktop: {},
|
|
612
|
-
tablet: {}
|
|
613
|
-
}
|
|
614
|
-
};
|
|
615
|
-
return ((await getApplicationPersonalizationData("FCL-Personalization")) ?? oEmptyFCLState);
|
|
616
|
-
}
|
|
517
|
+
oTemplateContract.oShellPersonalizationService = new ShellPersonalizationService(oTemplateContract);
|
|
518
|
+
var oShellPersonalizatonServicePromise = oTemplateContract.oShellPersonalizationService.init();
|
|
519
|
+
oTemplateContract.oBusyHelper.setBusy(oShellPersonalizatonServicePromise, undefined, undefined, true);
|
|
617
520
|
|
|
618
|
-
|
|
619
|
-
* Sets the FCL state in the personalization service.
|
|
620
|
-
* @param fclState The FCL state
|
|
621
|
-
*/
|
|
622
|
-
function setFCLPersonalizationData(fclState) {
|
|
623
|
-
setApplicationPersonalizationData("FCL-Personalization", fclState);
|
|
624
|
-
}
|
|
625
|
-
|
|
626
|
-
/**
|
|
627
|
-
* Requests the FCL state from the personalization service and sets the model accordingly.
|
|
628
|
-
*/
|
|
629
|
-
async function setColumnDistributionModel() {
|
|
630
|
-
if (!shellPersonalizationService) {
|
|
631
|
-
return;
|
|
632
|
-
}
|
|
633
|
-
var oColumnsDistribution = (await getFCLPersonalizationData()).columnsDistribution;
|
|
634
|
-
if (oColumnsDistribution) {
|
|
635
|
-
var oTemplatePrivateGlobalModel = oAppComponent.getModel("_templPrivGlobal");
|
|
636
|
-
oTemplatePrivateGlobalModel.setProperty("/generic/FCL/FCLColumnsDistribution", oColumnsDistribution);
|
|
637
|
-
}
|
|
638
|
-
}
|
|
639
|
-
|
|
640
|
-
/**
|
|
641
|
-
* Is called when the user changes the FCL columns distribution.
|
|
642
|
-
* Updates the FCL state in the personalization service.
|
|
643
|
-
* @param {Event<{ media: "tablet" | "desktop"; layout: LayoutTypeType; columnsSizes: string }>} event
|
|
644
|
-
*/
|
|
645
|
-
async function onColumnsDistributionChange(event) {
|
|
646
|
-
if (!shellPersonalizationService) {
|
|
647
|
-
return;
|
|
648
|
-
}
|
|
649
|
-
|
|
650
|
-
var { media, layout, columnsSizes } = event.getParameters();
|
|
651
|
-
|
|
652
|
-
var oTemplatePrivateGlobalModel = oAppComponent.getModel("_templPrivGlobal");
|
|
653
|
-
oTemplatePrivateGlobalModel.setProperty(`/generic/FCL/FCLColumnsDistribution/${media}/${layout}`, columnsSizes);
|
|
654
|
-
|
|
655
|
-
var oFclState = await getFCLPersonalizationData();
|
|
656
|
-
var iColumnsDisplayed = getNumberOfColumnsFromLayout(layout);
|
|
657
|
-
if (iColumnsDisplayed) {
|
|
658
|
-
oFclState.defaultLayouts[iColumnsDisplayed] = layout;
|
|
659
|
-
oFclState.columnsDistribution[media][layout] = columnsSizes;
|
|
660
|
-
setFCLPersonalizationData(oFclState);
|
|
661
|
-
}
|
|
662
|
-
}
|
|
663
|
-
|
|
664
|
-
/**
|
|
665
|
-
* Gets the number of columns displayed in the FCL based on the layout.
|
|
666
|
-
* @param {LayoutTypeType} layout The layout
|
|
667
|
-
* @returns {1 | 2 | 3 | null} The number of columns displayed
|
|
668
|
-
*/
|
|
669
|
-
function getNumberOfColumnsFromLayout(layout) {
|
|
670
|
-
var iColumnsDisplayed = /^(One|Two|Three)Column/.exec(layout)?.[1];
|
|
671
|
-
switch (iColumnsDisplayed) {
|
|
672
|
-
case "One":
|
|
673
|
-
return 1;
|
|
674
|
-
case "Two":
|
|
675
|
-
return 2;
|
|
676
|
-
case "Three":
|
|
677
|
-
return 3;
|
|
678
|
-
default:
|
|
679
|
-
return null;
|
|
680
|
-
}
|
|
681
|
-
}
|
|
682
|
-
|
|
683
|
-
/**
|
|
684
|
-
* Gets the layout stored in the personalization service based on the proposed layout.
|
|
685
|
-
* @param {LayoutTypeType | undefined } proposedLayout
|
|
686
|
-
* @returns The FCL layout stored in the personalization service
|
|
687
|
-
*/
|
|
688
|
-
async function getStoredLayout(oProposedLayout) {
|
|
689
|
-
if (shellPersonalizationService) {
|
|
690
|
-
var iColumnsDisplayed = getNumberOfColumnsFromLayout(oProposedLayout);
|
|
691
|
-
if (iColumnsDisplayed) {
|
|
692
|
-
var defaultLayouts = (await getFCLPersonalizationData()).defaultLayouts;
|
|
693
|
-
return defaultLayouts?.[iColumnsDisplayed] ?? oProposedLayout;
|
|
694
|
-
}
|
|
695
|
-
}
|
|
696
|
-
return oProposedLayout;
|
|
697
|
-
}
|
|
698
|
-
|
|
699
|
-
function initFlexibleColumnLayout() {
|
|
700
|
-
var oFCL = new FlexibleColumnLayout();
|
|
701
|
-
|
|
702
|
-
var oLayoutData = new FlexibleColumnLayoutData();
|
|
703
|
-
var oDesktopLayoutData = new FlexibleColumnLayoutDataForDesktop();
|
|
704
|
-
var oTabletLayoutData = new FlexibleColumnLayoutDataForTablet();
|
|
705
|
-
|
|
706
|
-
var sFCLColumnsDistributionPath = "_templPrivGlobal>/generic/FCL/FCLColumnsDistribution";
|
|
707
|
-
var sDesktopFCLColumnsDistributionPath = `${sFCLColumnsDistributionPath}/desktop`;
|
|
708
|
-
var sTabletFCLColumnsDistributionPath = `${sFCLColumnsDistributionPath}/tablet`;
|
|
709
|
-
|
|
710
|
-
oDesktopLayoutData.bindProperty("twoColumnsBeginExpanded", `${sDesktopFCLColumnsDistributionPath}/TwoColumnsBeginExpanded`);
|
|
711
|
-
oDesktopLayoutData.bindProperty("twoColumnsMidExpanded", `${sDesktopFCLColumnsDistributionPath}/TwoColumnsMidExpanded`);
|
|
712
|
-
oDesktopLayoutData.bindProperty("threeColumnsBeginExpandedEndHidden", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsBeginExpandedEndHidden`);
|
|
713
|
-
oDesktopLayoutData.bindProperty("threeColumnsEndExpanded", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsEndExpanded`);
|
|
714
|
-
oDesktopLayoutData.bindProperty("threeColumnsMidExpanded", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsMidExpanded`);
|
|
715
|
-
oDesktopLayoutData.bindProperty("threeColumnsMidExpandedEndHidden", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsMidExpandedEndHidden`);
|
|
716
|
-
|
|
717
|
-
oTabletLayoutData.bindProperty("twoColumnsBeginExpanded", `${sTabletFCLColumnsDistributionPath}/TwoColumnsBeginExpanded`);
|
|
718
|
-
oTabletLayoutData.bindProperty("twoColumnsMidExpanded", `${sTabletFCLColumnsDistributionPath}/TwoColumnsMidExpanded`);
|
|
719
|
-
oTabletLayoutData.bindProperty("threeColumnsBeginExpandedEndHidden", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsBeginExpandedEndHidden`);
|
|
720
|
-
oTabletLayoutData.bindProperty("threeColumnsEndExpanded", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsEndExpanded`);
|
|
721
|
-
oTabletLayoutData.bindProperty("threeColumnsMidExpanded", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsMidExpanded`);
|
|
722
|
-
oTabletLayoutData.bindProperty("threeColumnsMidExpandedEndHidden", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsMidExpandedEndHidden`);
|
|
723
|
-
|
|
724
|
-
oLayoutData.setDesktopLayoutData(oDesktopLayoutData);
|
|
725
|
-
oLayoutData.setTabletLayoutData(oTabletLayoutData);
|
|
726
|
-
oFCL.setAggregation("layoutData", oLayoutData);
|
|
727
|
-
|
|
728
|
-
oFCL.attachColumnsDistributionChange(onColumnsDistributionChange);
|
|
729
|
-
|
|
730
|
-
return oFCL;
|
|
521
|
+
oLogger.info("Init done for AppComponent " + sAppComponentId);
|
|
731
522
|
}
|
|
732
523
|
|
|
733
524
|
function createContent(){
|
|
@@ -736,8 +527,8 @@ sap.ui.define([
|
|
|
736
527
|
return "";
|
|
737
528
|
}
|
|
738
529
|
if (oAppComponent.getFlexibleColumnLayout()){
|
|
739
|
-
var oFCL = initFlexibleColumnLayout();
|
|
740
|
-
|
|
530
|
+
var oFCL = new FlexibleColumnLayoutHelper(oTemplateContract).initFlexibleColumnLayout();
|
|
531
|
+
|
|
741
532
|
oTemplateContract.oNavigationHost = oFCL;
|
|
742
533
|
oTemplateContract.aNavigationObservers = [
|
|
743
534
|
new ProcessObserver({
|
|
@@ -1160,7 +951,7 @@ sap.ui.define([
|
|
|
1160
951
|
* @public
|
|
1161
952
|
* @extends sap.ui.core.UIComponent
|
|
1162
953
|
* @author SAP SE
|
|
1163
|
-
* @version 1.
|
|
954
|
+
* @version 1.132.0
|
|
1164
955
|
* @name sap.suite.ui.generic.template.lib.AppComponent
|
|
1165
956
|
*/
|
|
1166
957
|
var oAppComponent = UIComponent.extend("sap.suite.ui.generic.template.lib.AppComponent", {
|
|
@@ -216,7 +216,7 @@ sap.ui.define(["sap/ui/model/Context", "sap/suite/ui/generic/template/lib/Messag
|
|
|
216
216
|
]);
|
|
217
217
|
var sEdit = oResourceObject.getText("Edit");
|
|
218
218
|
var sCancel = oResourceObject.getText("CANCEL");
|
|
219
|
-
|
|
219
|
+
MessageBox.warning(sWarningText, {
|
|
220
220
|
title: oResourceObject.getText("ST_UNSAVED_CHANGES_TITLE"),
|
|
221
221
|
actions: [sEdit, sCancel],
|
|
222
222
|
emphasizedAction: sEdit,
|
|
@@ -224,7 +224,7 @@ sap.ui.define(["sap/ui/model/Context", "sap/suite/ui/generic/template/lib/Messag
|
|
|
224
224
|
if (sAction === sEdit) {
|
|
225
225
|
resolve();
|
|
226
226
|
} else if (sAction === sCancel) {
|
|
227
|
-
if (bOpenInEditMode) {
|
|
227
|
+
if (bOpenInEditMode && oViewProxy && oViewProxy.navigateUp) {
|
|
228
228
|
oViewProxy.navigateUp();
|
|
229
229
|
}
|
|
230
230
|
}
|
|
@@ -368,7 +368,9 @@ sap.ui.define(["sap/ui/model/Context", "sap/suite/ui/generic/template/lib/Messag
|
|
|
368
368
|
});
|
|
369
369
|
oApplication.getBusyHelper().setBusy(oUnsavedChangesEditPromise, true);
|
|
370
370
|
};
|
|
371
|
-
var editRejection =
|
|
371
|
+
var editRejection = reject({
|
|
372
|
+
cancelled: true
|
|
373
|
+
});
|
|
372
374
|
var unSavedChangesDialogPromise = fnUnsavedChangesDialog(undefined, oResponse.DraftAdministrativeData,oCommonUtils, oViewProxy, bOpenInEditMode);
|
|
373
375
|
unSavedChangesDialogPromise.then(editConfirmation,editRejection);
|
|
374
376
|
}
|
|
@@ -27,7 +27,8 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
27
27
|
'sap/ui/performance/trace/FESRHelper',
|
|
28
28
|
"sap/ui/core/CustomData",
|
|
29
29
|
"sap/m/VBox",
|
|
30
|
-
"sap/suite/ui/generic/template/genericUtilities/utils"
|
|
30
|
+
"sap/suite/ui/generic/template/genericUtilities/utils",
|
|
31
|
+
"sap/ui/core/Element"
|
|
31
32
|
], function(
|
|
32
33
|
BaseObject,
|
|
33
34
|
Event,
|
|
@@ -58,7 +59,9 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
58
59
|
FESRHelper,
|
|
59
60
|
CustomData,
|
|
60
61
|
VBox,
|
|
61
|
-
genericUtils
|
|
62
|
+
genericUtils,
|
|
63
|
+
Element
|
|
64
|
+
) {
|
|
62
65
|
"use strict";
|
|
63
66
|
|
|
64
67
|
var oLogger = new FeLogger("lib.CommonEventHandlers").getLogger();
|
|
@@ -829,7 +832,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
829
832
|
// Element.closest is not supported in IE11 so we are injecting polyFill as dependency
|
|
830
833
|
var closestUI5ControlNode = oElement.closest('[data-sap-ui]');
|
|
831
834
|
if (closestUI5ControlNode) {
|
|
832
|
-
oControl =
|
|
835
|
+
oControl = Element.getElementById(closestUI5ControlNode.id);
|
|
833
836
|
}
|
|
834
837
|
}
|
|
835
838
|
}
|
|
@@ -1663,6 +1666,10 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
1663
1666
|
if (oError.lockedByUser) {
|
|
1664
1667
|
var sLockText = oCommonUtils.getText("ST_GENERIC_DRAFT_LOCKED_BY_USER", [" ", oError.lockedByUser]);
|
|
1665
1668
|
MessageBox.error(sLockText);
|
|
1669
|
+
} else if (oError.cancelled) {
|
|
1670
|
+
if (oViewProxy && oViewProxy.navigateUp){
|
|
1671
|
+
oViewProxy.navigateUp();
|
|
1672
|
+
}
|
|
1666
1673
|
} else {
|
|
1667
1674
|
MessageUtils.handleError(MessageUtils.operations.editEntity, oController, oServices, oError);
|
|
1668
1675
|
if (oViewProxy && oViewProxy.navigateUp){
|
|
@@ -2605,7 +2612,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
2605
2612
|
function onSmartLabelAttachFieldVisibility(oSmartField, sViewId){
|
|
2606
2613
|
var sValue = oSmartField.data('LabelId');
|
|
2607
2614
|
var sSmartLabelId = sViewId + '--' + sValue;
|
|
2608
|
-
var oSmartLabel =
|
|
2615
|
+
var oSmartLabel = Element.getElementById(sSmartLabelId);
|
|
2609
2616
|
if (oSmartLabel) {
|
|
2610
2617
|
oSmartLabel.attachFieldVisibilityChange(oSmartField);
|
|
2611
2618
|
}
|
|
@@ -15,9 +15,29 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
15
15
|
"sap/ui/core/IconPool",
|
|
16
16
|
"sap/ui/export/util/Filter",
|
|
17
17
|
"sap/ui/model/odata/ODataUtils",
|
|
18
|
-
"sap/ui/comp/util/TableUtil"
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
"sap/ui/comp/util/TableUtil",
|
|
19
|
+
"sap/ui/core/Element"
|
|
20
|
+
], function (
|
|
21
|
+
BaseObject,
|
|
22
|
+
ControllerExtension,
|
|
23
|
+
MessageBox,
|
|
24
|
+
SelectionVariant,
|
|
25
|
+
controlHelper,
|
|
26
|
+
metadataAnalyser,
|
|
27
|
+
testableHelper,
|
|
28
|
+
FeLogger,
|
|
29
|
+
odata4analytics,
|
|
30
|
+
extend,
|
|
31
|
+
deepExtend,
|
|
32
|
+
FeError,
|
|
33
|
+
ControlStateWrapperFactory,
|
|
34
|
+
oDataModelHelper,
|
|
35
|
+
IconPool,
|
|
36
|
+
ExportFilter,
|
|
37
|
+
ODataUtils,
|
|
38
|
+
TableUtil,
|
|
39
|
+
Element
|
|
40
|
+
) {
|
|
21
41
|
"use strict";
|
|
22
42
|
var sClassName = "lib.CommonUtils";
|
|
23
43
|
|
|
@@ -764,11 +784,16 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
764
784
|
|
|
765
785
|
setComponentRefreshBehaviour(oOutbound);
|
|
766
786
|
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
787
|
+
// We now ensure that the 'sap-ushell-navmode' parameter is passed to the NavigationHandler.navigate method
|
|
788
|
+
// and skip setting the app to busy mode when opening a new tab
|
|
789
|
+
if (oOutbound.parameters["sap-ushell-navmode"] === "explace") {
|
|
790
|
+
oNavigationHandler.navigate(oOutbound.semanticObject, oOutbound.action, oSelectionVariant.toJSONString(), null, null, null, oOutbound.parameters["sap-ushell-navmode"]);
|
|
791
|
+
} else {
|
|
792
|
+
oServices.oApplication.navigateExternal(oOutbound.semanticObject, oOutbound.action, oSelectionVariant.toJSONString(), null, fnHandleError);
|
|
793
|
+
//null object has to be passed to the NavigationHandler as an
|
|
794
|
+
//indicator that the state should not be overwritten
|
|
795
|
+
//if draft enabled then passing NavigateExternal else on back button passing LeavePage
|
|
796
|
+
}
|
|
772
797
|
}, Function.prototype, "LeaveApp");
|
|
773
798
|
}
|
|
774
799
|
|
|
@@ -913,7 +938,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
913
938
|
*/
|
|
914
939
|
function fnGetSemanticObjectLinkInfo (oEvent) {
|
|
915
940
|
var sSmartLinkId = oEvent.getParameter("originalId"),
|
|
916
|
-
oSmartLink =
|
|
941
|
+
oSmartLink = Element.getElementById(sSmartLinkId),
|
|
917
942
|
oOwnerControl = getOwnerControl(oSmartLink, true),
|
|
918
943
|
oSourceInfo = Object.create(null);
|
|
919
944
|
|
|
@@ -1345,7 +1370,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
1345
1370
|
*/
|
|
1346
1371
|
function fnGetSmartTableDefaultVariant(oSmartTable) {
|
|
1347
1372
|
var tableVariantId = oSmartTable.getId() + "-variant";
|
|
1348
|
-
var oVM =
|
|
1373
|
+
var oVM = Element.getElementById(tableVariantId);
|
|
1349
1374
|
var sVariantKey = oVM.getDefaultVariantKey();
|
|
1350
1375
|
return sVariantKey === oVM.STANDARDVARIANTKEY ? "" : sVariantKey;
|
|
1351
1376
|
}
|
|
@@ -1353,7 +1378,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
1353
1378
|
// Return the default variant id for SmartChart
|
|
1354
1379
|
function fnGetSmartChartDefaultVariant(oSmartChart) {
|
|
1355
1380
|
var chartVariantId = oSmartChart.getId() + "-variant";
|
|
1356
|
-
var oVM =
|
|
1381
|
+
var oVM = Element.getElementById(chartVariantId);
|
|
1357
1382
|
var sVariantKey = oVM.getDefaultVariantKey();
|
|
1358
1383
|
return sVariantKey === oVM.STANDARDVARIANTKEY ? "" : sVariantKey;
|
|
1359
1384
|
}
|
|
@@ -1603,7 +1628,7 @@ sap.ui.define(["sap/ui/base/Object",
|
|
|
1603
1628
|
var oEventSource = oEvent.getSource();
|
|
1604
1629
|
return controlHelper.isButton(oEventSource) ?
|
|
1605
1630
|
oEventSource.data() :
|
|
1606
|
-
|
|
1631
|
+
Element.getElementById(oController.createId(getElementCustomData(oEventSource)["ActionId"])).data();
|
|
1607
1632
|
}
|
|
1608
1633
|
|
|
1609
1634
|
/**
|
|
@@ -491,7 +491,7 @@ sap.ui.define([
|
|
|
491
491
|
if (oComponentRegistryEntry.routingSpec && oComponentRegistryEntry.routingSpec.noOData){
|
|
492
492
|
fnPageDataLoadedOnNavigation(null, bAreKeysDifferent);
|
|
493
493
|
}
|
|
494
|
-
return;
|
|
494
|
+
return Promise.resolve();
|
|
495
495
|
}
|
|
496
496
|
var oViewReadyPromise = Promise.resolve();
|
|
497
497
|
if (oComponentRegistryEntry.oController) {
|
|
@@ -511,10 +511,10 @@ sap.ui.define([
|
|
|
511
511
|
}
|
|
512
512
|
var oComponentContainer = oComponent.getComponentContainer();
|
|
513
513
|
if (!oComponentContainer){
|
|
514
|
-
return;
|
|
514
|
+
return Promise.resolve();
|
|
515
515
|
}
|
|
516
516
|
|
|
517
|
-
oViewReadyPromise.then(function() {
|
|
517
|
+
return oViewReadyPromise.then(function() {
|
|
518
518
|
var oUIModel = oComponent.getModel("ui");
|
|
519
519
|
var bIsNonDraftCreate = !!oComponentRegistryEntry.nonDraftCreateContext;
|
|
520
520
|
if (bIsNonDraftCreate) {
|
|
@@ -126,13 +126,17 @@ sap.ui.define(["sap/ui/base/Object", "sap/base/util/each", "sap/base/util/extend
|
|
|
126
126
|
var oTreeNode = oTemplateContract.mEntityTree[sEntitySet];
|
|
127
127
|
if (oTreeNode && !oTreeNode.noOData){
|
|
128
128
|
if (aKeysFromIdentity){
|
|
129
|
+
// Get the root context's info for the current draft context
|
|
130
|
+
oRootContextInfo = getRootContextInfo(oTreeNode, aKeysFromIdentity);
|
|
131
|
+
// If the current context is a draft, register context info for the active sibling as well
|
|
129
132
|
if (oContextInfo.bIsDraft){
|
|
130
133
|
var aActiveKeys = [];
|
|
131
134
|
var oActiveFoundPromise = oTemplateContract.oApplicationProxy.fillSiblingKeyPromise(oTreeNode, aKeysFromIdentity, aActiveKeys);
|
|
132
135
|
oActiveFoundPromise.then(function(oReplaceNode){
|
|
133
136
|
var sReplacePath = oReplaceNode.getPath(3, aActiveKeys);
|
|
134
|
-
|
|
135
|
-
|
|
137
|
+
var oActiveContextData = mPath2ContextData[sReplacePath];
|
|
138
|
+
if (!oActiveContextData){
|
|
139
|
+
oActiveContextData = {
|
|
136
140
|
oContextInfo: {
|
|
137
141
|
bIsDraft: false,
|
|
138
142
|
bIsDraftSupported: true,
|
|
@@ -142,30 +146,18 @@ sap.ui.define(["sap/ui/base/Object", "sap/base/util/each", "sap/base/util/extend
|
|
|
142
146
|
},
|
|
143
147
|
aKeysFromIdentity: aActiveKeys
|
|
144
148
|
};
|
|
149
|
+
// Finally add the active context data to the cache
|
|
150
|
+
mPath2ContextData[sReplacePath] = oActiveContextData;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Fill rootContextInfo for the active context's data
|
|
154
|
+
if (!oActiveContextData.oRootContextInfo) {
|
|
155
|
+
oActiveContextData.oRootContextInfo = getRootContextInfo(oReplaceNode, aActiveKeys);
|
|
156
|
+
// Add the active context's data to root context info's children
|
|
157
|
+
oActiveContextData.oRootContextInfo.childContexts[sReplacePath] = oActiveContextData;
|
|
145
158
|
}
|
|
146
159
|
});
|
|
147
160
|
}
|
|
148
|
-
if (oTreeNode && !oTreeNode.noOData){
|
|
149
|
-
var oMainObjectNode = oTemplateContract.oApplicationProxy.getAncestralNode(oTreeNode, 1);
|
|
150
|
-
var oActiveDraftInfoForDraftRoot = mActiveDraftRoots[oMainObjectNode.entitySet];
|
|
151
|
-
if (!oActiveDraftInfoForDraftRoot){
|
|
152
|
-
oActiveDraftInfoForDraftRoot = {
|
|
153
|
-
treeNode: oMainObjectNode,
|
|
154
|
-
draftRoots: Object.create(null)
|
|
155
|
-
};
|
|
156
|
-
mActiveDraftRoots[oMainObjectNode.entitySet] = oActiveDraftInfoForDraftRoot;
|
|
157
|
-
}
|
|
158
|
-
var sRootKey = aKeysFromIdentity[1];
|
|
159
|
-
oRootContextInfo = oActiveDraftInfoForDraftRoot[sRootKey];
|
|
160
|
-
if (!oRootContextInfo){
|
|
161
|
-
oRootContextInfo = {
|
|
162
|
-
treeNode: oMainObjectNode,
|
|
163
|
-
key: sRootKey,
|
|
164
|
-
childContexts: Object.create(null)
|
|
165
|
-
};
|
|
166
|
-
oActiveDraftInfoForDraftRoot[sRootKey] = oRootContextInfo;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
161
|
}
|
|
170
162
|
var oModel = oContext.getModel();
|
|
171
163
|
var oMetaModel = oModel.getMetaModel();
|
|
@@ -201,6 +193,30 @@ sap.ui.define(["sap/ui/base/Object", "sap/base/util/each", "sap/base/util/extend
|
|
|
201
193
|
return oContextInfo;
|
|
202
194
|
}
|
|
203
195
|
|
|
196
|
+
// Gets the root context's info for the given tree node
|
|
197
|
+
function getRootContextInfo(oTreeNode, aKeysFromIdentity) {
|
|
198
|
+
var oMainObjectNode = oTemplateContract.oApplicationProxy.getAncestralNode(oTreeNode, 1);
|
|
199
|
+
var oActiveDraftInfoForDraftRoot = mActiveDraftRoots[oMainObjectNode.entitySet];
|
|
200
|
+
if (!oActiveDraftInfoForDraftRoot){
|
|
201
|
+
oActiveDraftInfoForDraftRoot = {
|
|
202
|
+
treeNode: oMainObjectNode,
|
|
203
|
+
draftRoots: Object.create(null)
|
|
204
|
+
};
|
|
205
|
+
mActiveDraftRoots[oMainObjectNode.entitySet] = oActiveDraftInfoForDraftRoot;
|
|
206
|
+
}
|
|
207
|
+
var sRootKey = aKeysFromIdentity[1];
|
|
208
|
+
var oRootContextInfo = oActiveDraftInfoForDraftRoot[sRootKey];
|
|
209
|
+
if (!oRootContextInfo){
|
|
210
|
+
oRootContextInfo = {
|
|
211
|
+
treeNode: oMainObjectNode,
|
|
212
|
+
key: sRootKey,
|
|
213
|
+
childContexts: Object.create(null)
|
|
214
|
+
};
|
|
215
|
+
oActiveDraftInfoForDraftRoot[sRootKey] = oRootContextInfo;
|
|
216
|
+
}
|
|
217
|
+
return oRootContextInfo;
|
|
218
|
+
}
|
|
219
|
+
|
|
204
220
|
function getPathOfLastShownDraftRoot() {
|
|
205
221
|
for (var i = aPathOfLastShownDraftRoots.length - 1; i >= 0; i--) {
|
|
206
222
|
var oContext = mPath2ContextData[aPathOfLastShownDraftRoots[i]].oContext;
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
-
sap.ui.define([
|
|
2
|
-
|
|
1
|
+
sap.ui.define([
|
|
2
|
+
"sap/ui/base/Object",
|
|
3
|
+
"sap/f/FlexibleColumnLayoutSemanticHelper",
|
|
4
|
+
"sap/f/library",
|
|
5
|
+
"sap/base/util/extend",
|
|
6
|
+
"sap/suite/ui/generic/template/genericUtilities/controlHelper",
|
|
7
|
+
"sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHelper"
|
|
8
|
+
],
|
|
9
|
+
function(BaseObject, FlexibleColumnLayoutSemanticHelper, fioriLibrary, extend, controlHelper, FlexibleColumnLayoutHelper) {
|
|
3
10
|
"use strict";
|
|
4
11
|
|
|
5
12
|
// shortcut for sap.f.LayoutType
|
|
@@ -8,7 +15,7 @@ sap.ui.define(["sap/ui/base/Object", "sap/f/FlexibleColumnLayoutSemanticHelper",
|
|
|
8
15
|
var iDefaultColumn = 2;
|
|
9
16
|
|
|
10
17
|
var aColumnNames = ["begin", "mid", "end"];
|
|
11
|
-
|
|
18
|
+
|
|
12
19
|
var aActionButtons = ["fullScreen", "exitFullScreen", "closeColumn"];
|
|
13
20
|
|
|
14
21
|
var aMessagePageTargets = ["messagePageBeginColumn", "messagePageMidColumn", "messagePageEndColumn"];
|
|
@@ -62,7 +69,8 @@ sap.ui.define(["sap/ui/base/Object", "sap/f/FlexibleColumnLayoutSemanticHelper",
|
|
|
62
69
|
var oFCLSettings = oTemplateContract.oAppComponent.getFlexibleColumnLayout();
|
|
63
70
|
var oFlexibleColumnLayoutSemanticHelper = FlexibleColumnLayoutSemanticHelper.getInstanceFor(oFlexibleColumnLayout, oFCLSettings);
|
|
64
71
|
|
|
65
|
-
oTemplateContract
|
|
72
|
+
var oFlexibleColumnLayoutHelper = new FlexibleColumnLayoutHelper(oTemplateContract);
|
|
73
|
+
oFlexibleColumnLayoutHelper.setColumnDistributionModel();
|
|
66
74
|
|
|
67
75
|
var oUiState;
|
|
68
76
|
var sCurrentLayout;
|
|
@@ -322,7 +330,7 @@ sap.ui.define(["sap/ui/base/Object", "sap/f/FlexibleColumnLayoutSemanticHelper",
|
|
|
322
330
|
sCurrentLayout = oCurrentIdentity.treeNode.fCLLevel === 0 ? aDefaultLayouts[0] : LayoutType.EndColumnFullScreen;
|
|
323
331
|
}
|
|
324
332
|
|
|
325
|
-
sCurrentLayout = await
|
|
333
|
+
sCurrentLayout = await oFlexibleColumnLayoutHelper.getStoredLayout(sCurrentLayout);
|
|
326
334
|
|
|
327
335
|
oFlexibleColumnLayout.setLayout(sCurrentLayout);
|
|
328
336
|
oFlexibleColumnLayout.setAutoFocus(false);
|