@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
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
visible="{path: 'headerFacet>', formatter: 'AH.getBindingForHiddenPath'}">
|
|
9
9
|
<template:if test="{headerFacet>Label}">
|
|
10
10
|
<Title id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::PlainTextLabel"
|
|
11
|
-
text="{path: 'headerFacet>Label', formatter: 'AHModel.format'}" class="sapSmartTemplatesObjectPageHeaderPlainTextTitle"/>
|
|
11
|
+
text="{path: 'headerFacet>Label', formatter: 'AHModel.format'}" class="sapSmartTemplatesObjectPageHeaderPlainTextTitle" level="H3"/>
|
|
12
12
|
</template:if>
|
|
13
13
|
<template:with path="form>Data/0/" var="dataField"> <!-- There should only be 1 datafield -->
|
|
14
14
|
<template:if test="{= ${dataField>RecordType} === 'com.sap.vocabularies.UI.v1.DataField'}">
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core"
|
|
2
2
|
xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
|
|
3
3
|
template:require="{AH: 'sap/suite/ui/generic/template/js/AnnotationHelper', AHModel: 'sap/ui/model/odata/AnnotationHelper'}">
|
|
4
|
-
<!-- The formatter 'formatRatingIndicatorFooterText' is used by 'AH.buildRatingIndicatorFooterExpression' -->
|
|
5
|
-
<!-- The formatter 'formatRatingIndicatorSubTitle' is used by 'AH.buildRatingIndicatorSubtitleExpression' -->
|
|
4
|
+
<!-- The formatter 'RuntimeFormatters.formatRatingIndicatorFooterText' is used by 'AH.buildRatingIndicatorFooterExpression' -->
|
|
5
|
+
<!-- The formatter 'RuntimeFormatters.formatRatingIndicatorSubTitle' is used by 'AH.buildRatingIndicatorSubtitleExpression' -->
|
|
6
6
|
<VBox id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::RatingIndicatorVBox"
|
|
7
|
-
core:require="{
|
|
8
|
-
formatRatingIndicatorFooterText: 'sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorFooterText',
|
|
9
|
-
formatRatingIndicatorSubTitle: 'sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorSubTitle'
|
|
10
|
-
}"
|
|
7
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
11
8
|
binding="{parts: [{path: 'headerFacet>Target'}, {path: 'entitySet>'}], formatter: 'AH.getNavigationPathWithExpand'}"
|
|
12
9
|
visible="{path: 'headerFacet>', formatter: 'AH.getBindingForHiddenPath'}">
|
|
13
10
|
<items>
|
|
14
11
|
<Title id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::RatingIndicatorTitle"
|
|
15
12
|
text="{path: 'dataPoint>Title', formatter: 'AHModel.format'}"
|
|
16
|
-
class="sapSmartTemplatesObjectPageHeaderMiniChartTitle"
|
|
13
|
+
class="sapSmartTemplatesObjectPageHeaderMiniChartTitle"
|
|
14
|
+
level="H3"/>
|
|
17
15
|
<Label id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::RatingIndicatorSubTitle"
|
|
18
16
|
text="{= ${dataPoint>SampleSize} ? ${path: 'dataPoint>SampleSize', formatter: 'AH.buildRatingIndicatorSubtitleExpression'} : ${path: 'dataPoint>Description', formatter: 'AHModel.format'}}"
|
|
19
17
|
visible="{= !!(${dataPoint>SampleSize} || ${dataPoint>Description}) }"
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
text="{path:'dataPoint>Description', formatter: 'AHModel.format'}"
|
|
16
16
|
visible="{= !!${dataPoint>Description}}"/>
|
|
17
17
|
<template:with path="dataPoint>Value" helper="AHModel.resolvePath" var="valueProperty">
|
|
18
|
-
<!-- The formatter 'formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
18
|
+
<!-- The formatter 'RuntimeFormatters.formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
19
19
|
<ProgressIndicator
|
|
20
20
|
id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::ProgressIndicator"
|
|
21
|
-
core:require="{
|
|
21
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
22
22
|
class="sapSmartTemplatesObjectPageHeaderProgressIndicatorControl"
|
|
23
23
|
percentValue="{ parts: [{path:'dataPoint>'}, {path:'valueProperty>'}], formatter: 'AH.buildExpressionForProgressIndicatorPercentValue' }"
|
|
24
24
|
displayValue="{ parts: [{path:'dataPoint>'}, {path:'valueProperty>Org.OData.Measures.V1.Unit'}], formatter: 'AH.buildExpressionForProgressIndicatorDisplayValue'}"
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
class="navigationPopover navigationPopoverHeader sapMQuickViewPage sapSmartTemplatesSmartLinkNavPopoverContentTitleAreaTrunc">
|
|
14
14
|
<!--the icon comes from the target entity type header,
|
|
15
15
|
the binding context is set relatively to the the target, and an expand is added if the picture is behind a nav property-->
|
|
16
|
-
<!-- The formatter '
|
|
16
|
+
<!-- The formatter 'RuntimeFormatters.formatImageUrl' is used by 'AH.formatImageOrTypeUrl' -->
|
|
17
17
|
<Avatar
|
|
18
18
|
id="{:= ${parameter>/stableId}.getStableId({type: 'QuickView', subType: 'Avatar'})}"
|
|
19
|
-
core:require="{
|
|
19
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
20
20
|
tooltip="{path: 'header>Title/Value', formatter: 'AHModel.format'}"
|
|
21
21
|
visible="{= !!(${path: 'header>ImageUrl'} || ${path: 'header>TypeImageUrl'}) }"
|
|
22
22
|
binding="{parts:[{path: 'entitySet>'}, {path: 'quickView>/navigationPath'}, {path: 'header>ImageUrl'}, {path: 'header>TypeImageUrl'}], formatter: 'AH.getPathWithExpandFromHeader'}"
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
maxValue="{path: 'dataPoint>TargetValue', formatter: 'AHModel.format'}"
|
|
19
19
|
value="{path: 'dataPoint>Value', formatter: 'AHModel.format'}"
|
|
20
20
|
iconSize="1rem" />
|
|
21
|
-
<!-- The formatter 'formatRatingIndicatorAggregateCount' is used by 'AH.buildRatingIndicatorAggregateCountExpression' -->
|
|
21
|
+
<!-- The formatter 'RuntimeFormatters.formatRatingIndicatorAggregateCount' is used by 'AH.buildRatingIndicatorAggregateCountExpression' -->
|
|
22
22
|
<Text id="{path: 'facet>', formatter: 'AH.getStableIdPartFromFacet'}::RatingIndicatorTotalRatings"
|
|
23
|
-
core:require="{
|
|
23
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
24
24
|
text="{path: 'dataPoint>SampleSize', formatter: 'AH.buildRatingIndicatorAggregateCountExpression'}"
|
|
25
25
|
visible="{= !!${dataPoint>SampleSize} }">
|
|
26
26
|
<customData>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
xmlns:sfo="sap.ui.comp.smartform" xmlns:smartMultiInput="sap.ui.comp.smartmultiinput" xmlns:layoutData="sap.ui.layout" xmlns:fe="sap.suite.ui.generic.template.genericUtilities"
|
|
3
3
|
xmlns:custom="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
|
|
4
4
|
xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
|
|
5
|
-
template:require="{AH: 'sap/suite/ui/generic/template/js/AnnotationHelper', AHModel: 'sap/ui/model/odata/AnnotationHelper', StableIdHelper: 'sap/suite/ui/generic/template/js/StableIdHelper'}">
|
|
5
|
+
template:require="{AH: 'sap/suite/ui/generic/template/js/AnnotationHelper', AHModel: 'sap/ui/model/odata/AnnotationHelper', StableIdHelper: 'sap/suite/ui/generic/template/js/StableIdHelper', SideEffectUtil: 'sap/suite/ui/generic/template/lib/SideEffectUtil'}">
|
|
6
6
|
|
|
7
7
|
<!-- @classdesc @name: Name: sap.suite.ui.generic.template.fragments.SmartFormDataField.fragment.xml
|
|
8
8
|
@description: This fragment contains label value pairs for the smart form
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
visible="{path: 'dataField>', formatter: 'AH.getVisibiltyBasedOnImportanceAndHidden'}"
|
|
36
36
|
binding="{path: 'dataField>Target'}, formatter: 'AH.getNavigationPathWithExpand'}">
|
|
37
37
|
<fe:customData>
|
|
38
|
-
<core:CustomData key="SideEffects" value="{parts: [{path: 'entitySet>'}, {path: 'dataField>'}, {path: 'contact>fn/Path'}], formatter: '
|
|
38
|
+
<core:CustomData key="SideEffects" value="{parts: [{path: 'entitySet>'}, {path: 'dataField>'}, {path: 'contact>fn/Path'}], formatter: 'SideEffectUtil.getPropsForLinkFields'}"/>
|
|
39
39
|
<core:CustomData key="Location" value="Section" />
|
|
40
40
|
<core:CustomData key="contactDetails" value="{= ${path: 'contact>', formatter: 'AH.getCustomDataForContactPopup'}}"/>
|
|
41
41
|
</fe:customData>
|
|
@@ -119,9 +119,10 @@
|
|
|
119
119
|
text="{parts: [{path: 'dataField>'}, {path: 'entitySet>'}, {path: 'groupFacet>'}], formatter: 'AH.getLinkTextForDFwithIBN'}"
|
|
120
120
|
visible="{path: 'dataField>', formatter: 'AH.getVisibiltyBasedOnImportanceAndHidden'}"
|
|
121
121
|
press="._templateEventHandlers.onDataFieldWithIntentBasedNavigation"
|
|
122
|
+
accessibleRole="Button"
|
|
122
123
|
wrapping="true">
|
|
123
124
|
<fe:customData>
|
|
124
|
-
<core:CustomData key="SideEffects" value="{parts: [{path: 'entitySet>'}, {path: 'dataField>'}], formatter: '
|
|
125
|
+
<core:CustomData key="SideEffects" value="{parts: [{path: 'entitySet>'}, {path: 'dataField>'}], formatter: 'SideEffectUtil.getPropsForLinkFields'}"/>
|
|
125
126
|
<core:CustomData key="SemanticObject" value="{path: 'dataField>SemanticObject', formatter: 'AHModel.format'}" />
|
|
126
127
|
<core:CustomData key="Action" value="{path: 'dataField>Action', formatter: 'AHModel.format'}" />
|
|
127
128
|
</fe:customData>
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
visible="{path: 'headerFacet>', formatter: 'AH.getBindingForHiddenPath'}"
|
|
8
8
|
displayInline="true">
|
|
9
9
|
<Title id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::SmartMicroChartTitle"
|
|
10
|
-
class="sapSmartTemplatesObjectPageHeaderMiniChartTitle" />
|
|
10
|
+
class="sapSmartTemplatesObjectPageHeaderMiniChartTitle" level="H3" />
|
|
11
11
|
<Label id="header::{path: 'headerFacet>', formatter: 'AH.getStableIdPartFromFacet'}::SmartMicroChartSubTitle"
|
|
12
12
|
class="sapSmartTemplatesObjectPageHeaderMiniChartSubTitle" />
|
|
13
13
|
|
|
@@ -11,12 +11,9 @@
|
|
|
11
11
|
</table:dependents>
|
|
12
12
|
<table:rowSettingsTemplate>
|
|
13
13
|
<table:RowSettings
|
|
14
|
-
core:require="{
|
|
15
|
-
setRowNavigated: 'sap/suite/ui/generic/template/js/formatters/setRowNavigated',
|
|
16
|
-
setInfoHighlight: 'sap/suite/ui/generic/template/js/formatters/setInfoHighlight'
|
|
17
|
-
}"
|
|
14
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
18
15
|
highlight="{= ${parameter>/templateSpecific/rowHighligths} || ${parts: [{path: 'entityType>'}, {path: 'parameter>/treeNode'}, {path: 'entitySet>name'}, {path: 'parameter>/checkIsDraftEnabled'}], formatter: 'AH.setRowHighlight'} }"
|
|
19
|
-
navigated="{parts: [{path: '_templPriv>/generic/currentActiveChildContext'}, {path: ''}], formatter: 'setRowNavigated'}" />
|
|
16
|
+
navigated="{parts: [{path: '_templPriv>/generic/currentActiveChildContext'}, {path: ''}], formatter: 'RuntimeFormatters.setRowNavigated.bind($control)'}" />
|
|
20
17
|
</table:rowSettingsTemplate>
|
|
21
18
|
<table:contextMenu>
|
|
22
19
|
<core:Fragment fragmentName="sap.suite.ui.generic.template.fragments.SmartControlContextMenu" type="XML"/>
|
|
@@ -92,9 +92,9 @@
|
|
|
92
92
|
<template:if test="{path: 'dataFieldValue>', formatter: 'AH.isImageUrl'}">
|
|
93
93
|
<!-- handle data field with images -->
|
|
94
94
|
<template:then>
|
|
95
|
-
<!-- The formatter '
|
|
95
|
+
<!-- The formatter 'RuntimeFormatters.formatImageUrl' is used by 'AH.formatImageUrl' -->
|
|
96
96
|
<Avatar
|
|
97
|
-
core:require="{
|
|
97
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
98
98
|
src="{parts:[{path: 'dataField>Value'}, {path: 'parameter>/appComponentName'}], formatter: 'AH.formatImageUrl'}"
|
|
99
99
|
tooltip="{path: 'dataFieldValue>com.sap.vocabularies.Common.v1.Text', formatter: 'AHModel.format'}"
|
|
100
100
|
displaySize="S"
|
|
@@ -140,7 +140,9 @@
|
|
|
140
140
|
<!--handle DataFieldWithIntentBasedNavigation -->
|
|
141
141
|
<fe:Link
|
|
142
142
|
text="{parts: [{path: 'dataField>'}, {path: 'listEntitySet>'}], formatter: 'AH.getLinkTextForDFwithIBN'}"
|
|
143
|
-
press="._templateEventHandlers.onDataFieldWithIntentBasedNavigation"
|
|
143
|
+
press="._templateEventHandlers.onDataFieldWithIntentBasedNavigation"
|
|
144
|
+
accessibleRole="Button"
|
|
145
|
+
wrapping="true">
|
|
144
146
|
<fe:customData>
|
|
145
147
|
<core:CustomData key="SemanticObject" value="{path: 'dataField>SemanticObject', formatter: 'AHModel.format'}"/>
|
|
146
148
|
<core:CustomData key="Action" value="{path: 'dataField>Action', formatter: 'AHModel.format'}"/>
|
|
@@ -199,9 +201,9 @@
|
|
|
199
201
|
<template:elseif test="{= ${dataFieldTarget>Visualization/EnumMember} === 'com.sap.vocabularies.UI.v1.VisualizationType/Progress'}">
|
|
200
202
|
<template:with path="dataFieldTarget>Value" helper="AHModel.resolvePath" var="value">
|
|
201
203
|
<VBox renderType="Bare">
|
|
202
|
-
<!-- The formatter 'formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
204
|
+
<!-- The formatter 'RuntimeFormatters.formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
203
205
|
<ProgressIndicator
|
|
204
|
-
core:require="{
|
|
206
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
205
207
|
binding="{= ${ path: 'dataField>Target/AnnotationPath'}.indexOf('/') > -1 ? '{' + ${path: 'dataField>Target/AnnotationPath'}.slice(0, ${ path: 'dataField>Target/AnnotationPath'}.indexOf('/')) + '}' : null}"
|
|
206
208
|
percentValue="{ parts: [{path:'dataFieldTarget>'}, {path:'value>'}], formatter: 'AH.buildExpressionForProgressIndicatorPercentValue' }"
|
|
207
209
|
displayValue="{ parts: [{path:'dataFieldTarget>'}, {path:'value>Org.OData.Measures.V1.Unit'}], formatter: 'AH.buildExpressionForProgressIndicatorDisplayValue'}"
|
|
@@ -25,14 +25,11 @@
|
|
|
25
25
|
</template:else>
|
|
26
26
|
</template:if>
|
|
27
27
|
<ColumnListItem id="{columnListItemId>id}"
|
|
28
|
-
core:require="{
|
|
29
|
-
setRowNavigated: 'sap/suite/ui/generic/template/js/formatters/setRowNavigated',
|
|
30
|
-
setInfoHighlight: 'sap/suite/ui/generic/template/js/formatters/setInfoHighlight'
|
|
31
|
-
}"
|
|
28
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
32
29
|
highlight="{parts: [{path: 'listEntityType>'}, {path: 'parameter>/treeNode'}, {path: 'listEntitySet>name'}, {path: 'parameter>/checkIsDraftEnabled'}], formatter: 'AH.setRowHighlight'}"
|
|
33
30
|
vAlign="{appSettings>/tableColumnVerticalAlignment}"
|
|
34
31
|
type="{parts: [{path: 'listEntitySet>'}, {path: 'parameter>/settings/subPages/'}, {path: 'parameter>/manifest/'}, {path: 'parameter>/treeNode/'}, {path:'parameter>/isDraftEnabled'}, {path: 'facet>Target/AnnotationPath'}], formatter: 'AH.getColumnListItemType'}"
|
|
35
|
-
navigated="{parts: [{path: '_templPriv>/generic/currentActiveChildContext'}, {path: ''}], formatter: 'setRowNavigated'}"
|
|
32
|
+
navigated="{parts: [{path: '_templPriv>/generic/currentActiveChildContext'}, {path: ''}], formatter: 'RuntimeFormatters.setRowNavigated.bind($control)'}"
|
|
36
33
|
detailPress="._templateEventHandlers.onEdit">
|
|
37
34
|
<template:if test="{parts: [{path: 'listEntitySet>name'}, {path: 'parameter>/settings/subPages/'}, {path: 'facet>Target/AnnotationPath'}], formatter: 'AH.getDisplayNavigationIntent'}">
|
|
38
35
|
<customData>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
type="Transparent"
|
|
14
14
|
visible="{path: 'dataField>', formatter: 'AH.getBindingForHiddenPath'}">
|
|
15
15
|
<layoutData>
|
|
16
|
-
<OverflowToolbarLayoutData priority
|
|
16
|
+
<OverflowToolbarLayoutData priority="{path: 'dataField>com.sap.vocabularies.UI.v1.Importance/EnumMember', formatter: 'AH.getToolbarButtonPriorityFromImportance'}"/>
|
|
17
17
|
</layoutData>
|
|
18
18
|
<customData>
|
|
19
19
|
<core:CustomData key="Type" value="{dataField>RecordType}" />
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
visible="{path: 'dataField>', formatter: 'AH.buildVisibilityExprOfDataFieldForIntentBasedNaviButton'}"
|
|
37
37
|
type="Transparent">
|
|
38
38
|
<layoutData>
|
|
39
|
-
<OverflowToolbarLayoutData priority
|
|
39
|
+
<OverflowToolbarLayoutData priority="{path: 'dataField>com.sap.vocabularies.UI.v1.Importance/EnumMember', formatter: 'AH.getToolbarButtonPriorityFromImportance'}"/>
|
|
40
40
|
</layoutData>
|
|
41
41
|
<customData>
|
|
42
42
|
<core:CustomData key="Type" value="{dataField>RecordType}" />
|
|
@@ -86,6 +86,7 @@
|
|
|
86
86
|
<fe:Link
|
|
87
87
|
text="{parts: [{path: 'dataField>'}, {path: 'listEntitySet>'}], formatter: 'AH.getLinkTextForDFwithIBN'}"
|
|
88
88
|
press="._templateEventHandlers.onDataFieldWithIntentBasedNavigation"
|
|
89
|
+
accessibleRole="Button"
|
|
89
90
|
wrapping="false">
|
|
90
91
|
<fe:customData>
|
|
91
92
|
<core:CustomData key="SemanticObject" value="{path: 'dataField>SemanticObject', formatter: 'AHModel.format'}" />
|
|
@@ -214,9 +215,9 @@
|
|
|
214
215
|
<!-- Progress Indicator generation -->
|
|
215
216
|
<template:elseif test="{= ${dataFieldTarget>Visualization/EnumMember} === 'com.sap.vocabularies.UI.v1.VisualizationType/Progress'}">
|
|
216
217
|
<template:with path="dataFieldTarget>Value" helper="AHModel.resolvePath" var="value">
|
|
217
|
-
<!-- The formatter 'formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
218
|
+
<!-- The formatter 'RuntimeFormatters.formatDisplayValueForProgressIndicator' is used by 'AH.buildExpressionForProgressIndicatorDisplayValue' -->
|
|
218
219
|
<ProgressIndicator
|
|
219
|
-
core:require="{
|
|
220
|
+
core:require="{RuntimeFormatters: 'sap/suite/ui/generic/template/js/RuntimeFormatters'}"
|
|
220
221
|
binding="{= ${ path: 'dataField>Target/AnnotationPath'}.indexOf('/') > -1 ? '{' + ${path: 'dataField>Target/AnnotationPath'}.slice(0, ${ path: 'dataField>Target/AnnotationPath'}.indexOf('/')) + '}' : null}"
|
|
221
222
|
percentValue="{ parts: [{path:'dataFieldTarget>'}, {path:'value>'}], formatter: 'AH.buildExpressionForProgressIndicatorPercentValue' }"
|
|
222
223
|
displayValue="{ parts: [{path:'dataFieldTarget>'}, {path:'value>Org.OData.Measures.V1.Unit'}], formatter: 'AH.buildExpressionForProgressIndicatorDisplayValue'}"
|
|
@@ -64,16 +64,17 @@ sap.ui.define([
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
// returns a Promise that resolves to the boolean information whether the SmartField is a possible focus target for input.
|
|
67
|
-
function getSmartFieldIsFocussableForInputPromise(oSmartField){
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
67
|
+
function getSmartFieldIsFocussableForInputPromise(oSmartField) {
|
|
68
|
+
return oSmartField._getComputedMetadata().then(function () {
|
|
69
|
+
return (oSmartField.getMode() === "edit") && (oSmartField._getICRenderedPromise() || Promise.resolve());
|
|
70
|
+
}).then(function () {
|
|
71
|
+
var oFirstFocusableInput = !oSmartField._bEdmBoolDetected && getFirstEditableInput(oSmartField.getDomRef());
|
|
72
|
+
return !(!oFirstFocusableInput || oFirstFocusableInput.type === "checkbox");
|
|
73
|
+
}).catch(function () {
|
|
74
|
+
return false;
|
|
74
75
|
});
|
|
75
|
-
}
|
|
76
|
-
|
|
76
|
+
}
|
|
77
|
+
|
|
77
78
|
// returns the UI5 control which currently has the focus, if there is one. Otherwise returns a faulty value.
|
|
78
79
|
// Implementation as recommended by UI5 until the provide an own abstraction.
|
|
79
80
|
function getControlWithFocus(){
|
|
@@ -5,8 +5,9 @@ sap.ui.define([
|
|
|
5
5
|
"sap/m/DynamicDateUtil",
|
|
6
6
|
"sap/suite/ui/generic/template/genericUtilities/metadataAnalyser",
|
|
7
7
|
"sap/base/i18n/date/CalendarType",
|
|
8
|
-
"sap/suite/ui/generic/template/genericUtilities/testableHelper"
|
|
9
|
-
|
|
8
|
+
"sap/suite/ui/generic/template/genericUtilities/testableHelper",
|
|
9
|
+
"sap/ui/model/Filter"
|
|
10
|
+
], function (FilterOperator, DateFormat, encodeURL, DynamicDateUtil, metadataAnalyser, CalendarType, testableHelper,Filter) {
|
|
10
11
|
"use strict";
|
|
11
12
|
|
|
12
13
|
function getInfoForFilters(aFilters, getFilterInfoForPropertyFilters, bAnd){
|
|
@@ -260,6 +261,71 @@ sap.ui.define([
|
|
|
260
261
|
};
|
|
261
262
|
}
|
|
262
263
|
|
|
264
|
+
/**
|
|
265
|
+
* function wraps the table level filters into single filter object
|
|
266
|
+
* This is done to follow the same format as SFB and chart filters
|
|
267
|
+
* returns the updated aFilters
|
|
268
|
+
* @param {Array} aFilters - It contains all the filters applied (in SFB , chart or table level filters)
|
|
269
|
+
* @returns {Array} - returns array containing all the filters applied including the table filters wrapped as single filter object similar to SFB and chart filters
|
|
270
|
+
*/
|
|
271
|
+
|
|
272
|
+
function fnNormaliseControlFilters(aFilters) {
|
|
273
|
+
var aTableFilters = [];
|
|
274
|
+
|
|
275
|
+
var aChartAndSFBFilters = [];
|
|
276
|
+
|
|
277
|
+
aFilters.forEach((oFilter) => {
|
|
278
|
+
if (oFilter.aFilters) {
|
|
279
|
+
aChartAndSFBFilters.push(oFilter);
|
|
280
|
+
} else {
|
|
281
|
+
aTableFilters.push(oFilter);
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
|
|
285
|
+
if (aTableFilters && aTableFilters.length > 1) {
|
|
286
|
+
//Grouping the table level filters based on sPath
|
|
287
|
+
var aGroupedTableFilters = aTableFilters.reduce(
|
|
288
|
+
(aGroupedFilters, oCurrentfilter) => {
|
|
289
|
+
var path = oCurrentfilter.sPath;
|
|
290
|
+
|
|
291
|
+
if (!aGroupedFilters[path]) {
|
|
292
|
+
aGroupedFilters[path] = [];
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
aGroupedFilters[path].push(oCurrentfilter);
|
|
296
|
+
|
|
297
|
+
return aGroupedFilters;
|
|
298
|
+
},
|
|
299
|
+
{}
|
|
300
|
+
);
|
|
301
|
+
|
|
302
|
+
// Convert grouped table filters into nested filter groups
|
|
303
|
+
|
|
304
|
+
var aTableFilterGroups = Object.keys(aGroupedTableFilters).map(
|
|
305
|
+
(sPath) => {
|
|
306
|
+
return new Filter({
|
|
307
|
+
filters: aGroupedTableFilters[sPath],
|
|
308
|
+
|
|
309
|
+
and: false // OR logic within each group
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
);
|
|
313
|
+
|
|
314
|
+
// Forming a single top-level table filter
|
|
315
|
+
|
|
316
|
+
aTableFilters = new Filter({
|
|
317
|
+
filters: aTableFilterGroups,
|
|
318
|
+
|
|
319
|
+
and: true // AND logic for combining everything
|
|
320
|
+
});
|
|
321
|
+
|
|
322
|
+
// combining filters from chart , SFB , and table
|
|
323
|
+
aChartAndSFBFilters.push(aTableFilters);
|
|
324
|
+
return aChartAndSFBFilters;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
return aFilters;
|
|
328
|
+
}
|
|
263
329
|
/**
|
|
264
330
|
* Function returns filter params for service url
|
|
265
331
|
* @param {object} sEntityTypeName
|
|
@@ -274,6 +340,7 @@ sap.ui.define([
|
|
|
274
340
|
oFilterData: oFilterData,
|
|
275
341
|
bIsStatic: false
|
|
276
342
|
};
|
|
343
|
+
aApplicationFilters = fnNormaliseControlFilters(aApplicationFilters);
|
|
277
344
|
// Here oParams.bIsStrict will change if SFB have custom semantic-date filter.
|
|
278
345
|
var sFilterParams = "$filter=" + getFilterString(aApplicationFilters, getFilterInfoForPropertyFilters.bind(null, oParams));
|
|
279
346
|
sFilterParams = oParams.bIsStatic ? "" : sFilterParams;
|
|
@@ -281,6 +348,7 @@ sap.ui.define([
|
|
|
281
348
|
}
|
|
282
349
|
testableHelper.testableStatic(getFilterInfoForPropertyFilters, "filterHelper_getFilterInfoForPropertyFilters");
|
|
283
350
|
testableHelper.testableStatic(getFilterString, "filterHelper_getFilterString");
|
|
351
|
+
testableHelper.testableStatic(fnNormaliseControlFilters, "filterHelper_fnNormaliseControlFilters");
|
|
284
352
|
return {
|
|
285
353
|
getFilterParams: getFilterParams
|
|
286
354
|
};
|
|
@@ -28,6 +28,20 @@ sap.ui.define([
|
|
|
28
28
|
return null;
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* PolyFill for Promise.withResolvers
|
|
33
|
+
*/
|
|
34
|
+
if (!Promise.withResolvers) {
|
|
35
|
+
Promise.withResolvers = function() {
|
|
36
|
+
var resolvers = {};
|
|
37
|
+
var promise = new Promise(function(resolve, reject) {
|
|
38
|
+
resolvers.resolve = resolve;
|
|
39
|
+
resolvers.reject = reject;
|
|
40
|
+
});
|
|
41
|
+
Object.assign(promise, resolvers);
|
|
42
|
+
return promise;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
31
45
|
/**
|
|
32
46
|
* PolyFill for nextSiblingElement
|
|
33
47
|
*/
|
|
@@ -11,16 +11,18 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
11
11
|
"sap/ui/core/library",
|
|
12
12
|
"sap/suite/ui/generic/template/genericUtilities/metadataAnalyser",
|
|
13
13
|
"sap/ui/base/ManagedObject",
|
|
14
|
-
"sap/suite/ui/generic/template/lib/SideEffectUtil",
|
|
15
14
|
"sap/base/util/isEmptyObject",
|
|
16
15
|
"sap/suite/ui/generic/template/js/RuntimeFormatters"// just to make sure that it is loaded
|
|
17
16
|
], function (AnnotationHelperModel, AnnotationHelperModelBasics, SmartField, FeLogger, formatMessage, deepExtend, StableIdHelper, utils, Device,
|
|
18
|
-
SapMLibrary, SapCoreLibrary, metadataAnalyser, ManagedObject,
|
|
17
|
+
SapMLibrary, SapCoreLibrary, metadataAnalyser, ManagedObject, isEmptyObject) {
|
|
19
18
|
"use strict";
|
|
20
19
|
|
|
21
20
|
// shortcut for sap.ui.core.ValueState
|
|
22
21
|
var ValueState = SapCoreLibrary.ValueState;
|
|
23
22
|
|
|
23
|
+
// shortcut for sap.m.OverflowToolbarPriority
|
|
24
|
+
var OverflowToolbarPriority = SapMLibrary.OverflowToolbarPriority;
|
|
25
|
+
|
|
24
26
|
var oLogger = new FeLogger("js.AnnotationHelper").getLogger();
|
|
25
27
|
|
|
26
28
|
function fnGetFallbackId(oFacet) {
|
|
@@ -385,9 +387,6 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
385
387
|
getCustomDataForContactPopup: function (oContactDetails) {
|
|
386
388
|
return ((JSON.stringify(oContactDetails)).replace(/\}/g, "\\}").replace(/\{/g, "\\{")); //check bindingParser.escape
|
|
387
389
|
},
|
|
388
|
-
getPropsForLinkFields: function(oEntitySet, oTarget, sFieldName) {
|
|
389
|
-
return SideEffectUtil.getPropsForLinkFields(oEntitySet, oTarget, sFieldName);
|
|
390
|
-
},
|
|
391
390
|
checkIsEmailAddress: function (oInterface, sEntityType, oDataField) {
|
|
392
391
|
var oMetaModel = oInterface.getInterface(1).getModel();
|
|
393
392
|
var sPath = oInterface.getInterface(1).getPath() + '/Value';
|
|
@@ -1093,21 +1092,21 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
1093
1092
|
// builds the expression for the Rating Indicator Subtitle
|
|
1094
1093
|
buildRatingIndicatorSubtitleExpression: function (mSampleSize) {
|
|
1095
1094
|
if (mSampleSize) {
|
|
1096
|
-
return "{parts: [{path: '" + mSampleSize.Path + "'}], formatter: 'formatRatingIndicatorSubTitle'}";
|
|
1095
|
+
return "{parts: [{path: '" + mSampleSize.Path + "'}], formatter: 'RuntimeFormatters.formatRatingIndicatorSubTitle.bind($control)'}";
|
|
1097
1096
|
}
|
|
1098
1097
|
},
|
|
1099
1098
|
|
|
1100
1099
|
// builds the expression for the Rating Indicator footer
|
|
1101
1100
|
buildRatingIndicatorFooterExpression: function (mValue, mTargetValue) {
|
|
1102
1101
|
if (mTargetValue) {
|
|
1103
|
-
return "{parts: [{path: '" + mValue.Path + "'}, {path: '" + mTargetValue.Path + "'}], formatter: 'formatRatingIndicatorFooterText'}";
|
|
1102
|
+
return "{parts: [{path: '" + mValue.Path + "'}, {path: '" + mTargetValue.Path + "'}], formatter: 'RuntimeFormatters.formatRatingIndicatorFooterText.bind($control)'}";
|
|
1104
1103
|
}
|
|
1105
|
-
return "{parts: [{path: '" + mValue.Path + "'}], formatter: 'formatRatingIndicatorFooterText'}";
|
|
1104
|
+
return "{parts: [{path: '" + mValue.Path + "'}], formatter: 'RuntimeFormatters.formatRatingIndicatorFooterText.bind($control)'}";
|
|
1106
1105
|
},
|
|
1107
1106
|
|
|
1108
1107
|
// builds the expression for the Rating Indicator aggregate Count
|
|
1109
1108
|
buildRatingIndicatorAggregateCountExpression: function (mValue) {
|
|
1110
|
-
return "{parts: [{path: '" + mValue.Path + "'}], formatter: 'formatRatingIndicatorAggregateCount'}";
|
|
1109
|
+
return "{parts: [{path: '" + mValue.Path + "'}], formatter: 'RuntimeFormatters.formatRatingIndicatorAggregateCount.bind($control)'}";
|
|
1111
1110
|
},
|
|
1112
1111
|
|
|
1113
1112
|
getIdForMoreBlockContent: function (oFacet) {
|
|
@@ -1231,7 +1230,7 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
1231
1230
|
if (oImageUrl.Path) {
|
|
1232
1231
|
var sPrefix = "{parts: [{path: '" + oImageUrl.Path + "'}, {value: '" + sAppComponentName + "'}";
|
|
1233
1232
|
var sInfix = bSuppressIcons ? ", {value: true}" : "";
|
|
1234
|
-
var sPostfix = "], formatter: 'formatImageUrl'}";
|
|
1233
|
+
var sPostfix = "], formatter: 'RuntimeFormatters.formatImageUrl.bind($control)'}";
|
|
1235
1234
|
return sPrefix + sInfix + sPostfix;
|
|
1236
1235
|
}
|
|
1237
1236
|
// Apply
|
|
@@ -3267,7 +3266,7 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
3267
3266
|
|
|
3268
3267
|
sParts = buildPart(oInterface, dataPoint.Value) + ", " + buildPart(oInterface, dataPoint.TargetValue) + ", " + buildPart(oInterface, mUoM);
|
|
3269
3268
|
|
|
3270
|
-
var sDisplayValueExpression = "{ parts: [" + sParts + "], formatter: 'formatDisplayValueForProgressIndicator' }";
|
|
3269
|
+
var sDisplayValueExpression = "{ parts: [" + sParts + "], formatter: 'RuntimeFormatters.formatDisplayValueForProgressIndicator.bind($control)' }";
|
|
3271
3270
|
return sDisplayValueExpression;
|
|
3272
3271
|
},
|
|
3273
3272
|
|
|
@@ -3740,7 +3739,7 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
3740
3739
|
// More precisely: {path: '_templPrivMessage>/'} is included to listen to changes of the Message model
|
|
3741
3740
|
// {path: ''} is included to listen to change of the row context. This is in particular important for scrolling in grid tables (recommendation from ui5).
|
|
3742
3741
|
// sCriticalityPiece is needed to listen to changes of the criticality property. Note that there is a gap in case the criticality actually should be evaluated from the lineItemQualifier
|
|
3743
|
-
return "{parts: [" + sDraftParts + ", " + sMessageParts + sCriticalityPiece + ", {path: ''}], formatter: 'setInfoHighlight'}";
|
|
3742
|
+
return "{parts: [" + sDraftParts + ", " + sMessageParts + sCriticalityPiece + ", {path: ''}], formatter: 'RuntimeFormatters.setInfoHighlight.bind($control)'}";
|
|
3744
3743
|
},
|
|
3745
3744
|
|
|
3746
3745
|
getDataFieldLabel: function (oInterface, oDataField) {
|
|
@@ -4380,6 +4379,48 @@ sap.ui.define(["sap/ui/model/odata/AnnotationHelper",
|
|
|
4380
4379
|
var sNavigationPath = AnnotationHelperModel.getNavigationPath(oInterface, vRawValue);
|
|
4381
4380
|
var sNavigationPropertyPath = sNavigationPath.replace("{", "").replace("}", "");
|
|
4382
4381
|
return sNavigationPropertyPath;
|
|
4382
|
+
},
|
|
4383
|
+
|
|
4384
|
+
/**
|
|
4385
|
+
* Derives the sap.m.OverflowToolbarPriority from the given importance.
|
|
4386
|
+
* If the input is High or Medium
|
|
4387
|
+
* - Returns OverflowToolbarPriority.High
|
|
4388
|
+
* If the input is Low
|
|
4389
|
+
* - Returns OverflowToolbarPriority.Low
|
|
4390
|
+
* Otherwise
|
|
4391
|
+
* - Returns the default value OverflowToolbarPriority.High
|
|
4392
|
+
*
|
|
4393
|
+
* @param {string} sImportance Importance from annotation (for annotated actions) or manifest (breakout actions).
|
|
4394
|
+
* The possible importance values
|
|
4395
|
+
* - High
|
|
4396
|
+
* - Medium
|
|
4397
|
+
* - Low
|
|
4398
|
+
* - com.sap.vocabularies.UI.v1.ImportanceType/High
|
|
4399
|
+
* - com.sap.vocabularies.UI.v1.ImportanceType/Medium
|
|
4400
|
+
* - com.sap.vocabularies.UI.v1.ImportanceType/Low
|
|
4401
|
+
* @returns {sap.m.OverflowToolbarPriority} The priority
|
|
4402
|
+
*/
|
|
4403
|
+
getToolbarButtonPriorityFromImportance: function (sImportance) {
|
|
4404
|
+
var sPriority = "";
|
|
4405
|
+
// If importance is in "com.sap.vocabularies.UI.v1.ImportanceType/High" format, omit the prefix and just keep "High"
|
|
4406
|
+
if (sImportance && sImportance.includes("/")) {
|
|
4407
|
+
sImportance = sImportance.split("/")[1];
|
|
4408
|
+
}
|
|
4409
|
+
// The enum sap.m.OverflowToolbarPriority only has the values "High", "Low" and it doesn't have "Medium".
|
|
4410
|
+
// So, if the input is "Medium", return the priority "High" (The default priority)
|
|
4411
|
+
switch (sImportance) {
|
|
4412
|
+
case "High":
|
|
4413
|
+
case "Medium":
|
|
4414
|
+
sPriority = OverflowToolbarPriority.High;
|
|
4415
|
+
break;
|
|
4416
|
+
case "Low":
|
|
4417
|
+
sPriority = OverflowToolbarPriority.Low;
|
|
4418
|
+
break;
|
|
4419
|
+
default:
|
|
4420
|
+
sPriority = OverflowToolbarPriority.High;
|
|
4421
|
+
break;
|
|
4422
|
+
}
|
|
4423
|
+
return sPriority;
|
|
4383
4424
|
}
|
|
4384
4425
|
};
|
|
4385
4426
|
oAnnotationHelper.getBlockForEditableHeaderFacet.requiresIContext = true;
|
package/src/sap/suite/ui/generic/template/js/QuickTemplates/QuickTemplateComponentFactory.js
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
/*global Promise */
|
|
2
2
|
sap.ui.define([
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
"sap/ui/base/Object",
|
|
4
|
+
"sap/ui/core/UIComponent",
|
|
5
|
+
"sap/ui/model/resource/ResourceModel",
|
|
6
|
+
"sap/ui/core/library",
|
|
7
|
+
"sap/ui/model/json/JSONModel",
|
|
8
|
+
"sap/ui/generic/app/ApplicationController",
|
|
9
|
+
"sap/suite/ui/generic/template/genericUtilities/FeLogger",
|
|
10
|
+
"sap/base/util/extend",
|
|
11
|
+
"sap/base/util/deepExtend",
|
|
12
|
+
"sap/ui/core/mvc/View",
|
|
13
|
+
"sap/ui/core/Element"
|
|
14
|
+
], function (
|
|
15
|
+
BaseObject,
|
|
16
|
+
UIComponent,
|
|
17
|
+
ResourceModel,
|
|
18
|
+
coreLibrary,
|
|
19
|
+
JSONModel,
|
|
20
|
+
ApplicationController,
|
|
21
|
+
FeLogger,
|
|
22
|
+
extend,
|
|
23
|
+
deepExtend,
|
|
24
|
+
View,
|
|
25
|
+
Element
|
|
26
|
+
) {
|
|
15
27
|
"use strict";
|
|
16
28
|
|
|
17
29
|
var oLogger = new FeLogger("js.QuickTemplates.QuickTemplateComponentFactory").getLogger();
|
|
@@ -82,7 +94,7 @@ sap.ui.define([
|
|
|
82
94
|
|
|
83
95
|
var sStableId = fnDetermineStableViewID(this);
|
|
84
96
|
|
|
85
|
-
oView =
|
|
97
|
+
oView = Element.getElementById(sStableId);
|
|
86
98
|
if (oView) {
|
|
87
99
|
oLogger.warning("View with ID: " + sStableId + " already exists - old view is getting destroyed now!");
|
|
88
100
|
try {
|