@sapui5/sap.suite.ui.generic.template 1.131.1 → 1.133.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.
Files changed (290) hide show
  1. package/package.json +1 -1
  2. package/src/sap/suite/ui/generic/template/.library +1 -1
  3. package/src/sap/suite/ui/generic/template/AnalyticalListPage/Component.js +0 -4
  4. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/SmartFilterBarExt.js +3 -1
  5. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/SmartKpiTag.js +37 -11
  6. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItem.js +3 -1
  7. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroBar.js +3 -1
  8. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroChart.js +26 -6
  9. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroDonut.js +3 -1
  10. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroLine.js +3 -1
  11. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/SmartVisualFilterBar.js +46 -15
  12. package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/DropDownController.js +42 -17
  13. package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/KpiTagController.js +15 -6
  14. package/src/sap/suite/ui/generic/template/AnalyticalListPage/extensionAPI/ExtensionAPI.js +2 -2
  15. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_en_US_saptrc.properties +105 -105
  16. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sk.properties +1 -1
  17. package/src/sap/suite/ui/generic/template/AnalyticalListPage/manifest.json +1 -1
  18. package/src/sap/suite/ui/generic/template/AnalyticalListPage/util/AnnotationHelper.js +3 -0
  19. package/src/sap/suite/ui/generic/template/AnalyticalListPage/util/FilterUtil.js +17 -6
  20. package/src/sap/suite/ui/generic/template/Canvas/manifest.json +1 -1
  21. package/src/sap/suite/ui/generic/template/ListReport/AnnotationHelperSmartList.js +2 -2
  22. package/src/sap/suite/ui/generic/template/ListReport/controller/ControllerImplementation.js +46 -22
  23. package/src/sap/suite/ui/generic/template/ListReport/controller/IappStateHandler.js +18 -2
  24. package/src/sap/suite/ui/generic/template/ListReport/extensionAPI/ExtensionAPI.js +2 -2
  25. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n.properties +1 -4
  26. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ar.properties +1 -3
  27. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_bg.properties +1 -3
  28. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ca.properties +1 -3
  29. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cnr.properties +1 -3
  30. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cs.properties +1 -3
  31. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cy.properties +1 -3
  32. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_da.properties +1 -3
  33. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_de.properties +1 -3
  34. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_el.properties +1 -3
  35. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en.properties +1 -3
  36. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_GB.properties +1 -3
  37. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saprigi.properties +1 -3
  38. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saptrc.properties +58 -58
  39. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es.properties +1 -3
  40. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es_MX.properties +1 -3
  41. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_et.properties +1 -3
  42. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fi.properties +1 -3
  43. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr.properties +1 -3
  44. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr_CA.properties +1 -3
  45. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hi.properties +1 -3
  46. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hr.properties +1 -3
  47. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hu.properties +1 -3
  48. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_id.properties +1 -3
  49. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_it.properties +1 -3
  50. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_iw.properties +1 -3
  51. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ja.properties +1 -3
  52. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_kk.properties +1 -3
  53. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ko.properties +1 -3
  54. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lt.properties +1 -3
  55. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lv.properties +1 -3
  56. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_mk.properties +1 -3
  57. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ms.properties +1 -3
  58. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_nl.properties +1 -3
  59. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_no.properties +1 -3
  60. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pl.properties +2 -4
  61. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt.properties +1 -3
  62. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt_PT.properties +1 -3
  63. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ro.properties +1 -3
  64. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ru.properties +1 -3
  65. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sh.properties +1 -3
  66. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sk.properties +1 -3
  67. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sl.properties +1 -3
  68. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sr.properties +1 -3
  69. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sv.properties +1 -3
  70. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_th.properties +1 -3
  71. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_tr.properties +1 -3
  72. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_uk.properties +1 -3
  73. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_vi.properties +1 -3
  74. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_CN.properties +1 -3
  75. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_TW.properties +1 -3
  76. package/src/sap/suite/ui/generic/template/ListReport/manifest.json +1 -1
  77. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/BreakoutActionButtons.fragment.xml +3 -2
  78. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/FullscreenPage.fragment.xml +1 -1
  79. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartList.fragment.xml +3 -3
  80. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTable.fragment.xml +2 -1
  81. package/src/sap/suite/ui/generic/template/ObjectPage/Component.js +13 -5
  82. package/src/sap/suite/ui/generic/template/ObjectPage/controller/ControllerImplementation.js +117 -30
  83. package/src/sap/suite/ui/generic/template/ObjectPage/controller/MessageSortingHandler.js +63 -10
  84. package/src/sap/suite/ui/generic/template/ObjectPage/controller/SectionTitleHandler.js +34 -1
  85. package/src/sap/suite/ui/generic/template/ObjectPage/controller/inlineCreationRows/InlineCreationRowsHelper.js +46 -4
  86. package/src/sap/suite/ui/generic/template/ObjectPage/controllerFrameworkExtensions.js +22 -4
  87. package/src/sap/suite/ui/generic/template/ObjectPage/extensionAPI/ExtensionAPI.js +29 -5
  88. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n.properties +37 -6
  89. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ar.properties +25 -5
  90. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_bg.properties +25 -5
  91. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ca.properties +25 -5
  92. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cnr.properties +25 -5
  93. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cs.properties +26 -6
  94. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cy.properties +25 -5
  95. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_da.properties +25 -5
  96. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_de.properties +25 -5
  97. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_el.properties +25 -5
  98. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en.properties +25 -5
  99. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_GB.properties +25 -5
  100. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saprigi.properties +25 -5
  101. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saptrc.properties +95 -95
  102. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es.properties +25 -5
  103. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es_MX.properties +25 -5
  104. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_et.properties +25 -5
  105. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fi.properties +25 -5
  106. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr.properties +25 -5
  107. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr_CA.properties +25 -5
  108. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hi.properties +25 -5
  109. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hr.properties +25 -5
  110. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hu.properties +25 -5
  111. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_id.properties +25 -5
  112. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_it.properties +25 -5
  113. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_iw.properties +25 -5
  114. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ja.properties +25 -5
  115. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_kk.properties +25 -5
  116. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ko.properties +25 -5
  117. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lt.properties +25 -5
  118. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lv.properties +25 -5
  119. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_mk.properties +25 -5
  120. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ms.properties +25 -5
  121. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_nl.properties +25 -5
  122. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_no.properties +25 -5
  123. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pl.properties +25 -5
  124. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt.properties +25 -5
  125. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt_PT.properties +25 -5
  126. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ro.properties +26 -6
  127. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ru.properties +25 -5
  128. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sh.properties +25 -5
  129. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sk.properties +25 -5
  130. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sl.properties +25 -5
  131. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sr.properties +25 -5
  132. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sv.properties +25 -5
  133. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_th.properties +25 -5
  134. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_tr.properties +25 -5
  135. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_uk.properties +27 -7
  136. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_vi.properties +25 -5
  137. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_CN.properties +25 -5
  138. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_TW.properties +25 -5
  139. package/src/sap/suite/ui/generic/template/ObjectPage/manifest.json +1 -1
  140. package/src/sap/suite/ui/generic/template/ObjectPage/view/Details.view.xml +2 -2
  141. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/CRUDActionButtons.fragment.xml +2 -2
  142. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/Footer.fragment.xml +3 -3
  143. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/HeaderContainer.fragment.xml +4 -4
  144. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/HeaderImage.fragment.xml +4 -4
  145. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartChart.fragment.xml +1 -1
  146. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartTable.fragment.xml +3 -2
  147. package/src/sap/suite/ui/generic/template/QuickCreate/i18n/i18n_en_US_saptrc.properties +14 -14
  148. package/src/sap/suite/ui/generic/template/QuickCreate/manifest.json +1 -1
  149. package/src/sap/suite/ui/generic/template/QuickView/i18n/i18n_en_US_saptrc.properties +2 -2
  150. package/src/sap/suite/ui/generic/template/QuickView/manifest.json +1 -1
  151. package/src/sap/suite/ui/generic/template/designtime/controls/DynamicPage.designtime.js +198 -193
  152. package/src/sap/suite/ui/generic/template/designtime/controls/ObjectPageLayout.designtime.js +215 -0
  153. package/src/sap/suite/ui/generic/template/designtime/controls/SmartFilterBar.designtime.js +340 -0
  154. package/src/sap/suite/ui/generic/template/designtime/controls/SmartTable.designtime.js +43 -19
  155. package/src/sap/suite/ui/generic/template/designtime/floorplans/AnalyticalListPage.designtime.js +18 -18
  156. package/src/sap/suite/ui/generic/template/designtime/floorplans/ListReport.designtime.js +19 -16
  157. package/src/sap/suite/ui/generic/template/designtime/floorplans/ObjectPage.designtime.js +10 -7
  158. package/src/sap/suite/ui/generic/template/designtime/utils/designtimeHelper.js +52 -37
  159. package/src/sap/suite/ui/generic/template/designtime/utils/designtimeUtils.js +112 -23
  160. package/src/sap/suite/ui/generic/template/detailTemplates/i18n/i18n_en_US_saptrc.properties +6 -6
  161. package/src/sap/suite/ui/generic/template/fragments/BreakoutActions.fragment.xml +2 -2
  162. package/src/sap/suite/ui/generic/template/fragments/DeterminingActions.fragment.xml +3 -2
  163. package/src/sap/suite/ui/generic/template/fragments/DeterminingButton.fragment.xml +18 -20
  164. package/src/sap/suite/ui/generic/template/fragments/EasyFilter.fragment.xml +0 -6
  165. package/src/sap/suite/ui/generic/template/fragments/GlobalActions.fragment.xml +3 -2
  166. package/src/sap/suite/ui/generic/template/fragments/GridTableCells.fragment.xml +7 -6
  167. package/src/sap/suite/ui/generic/template/fragments/HeaderAddress.fragment.xml +2 -1
  168. package/src/sap/suite/ui/generic/template/fragments/HeaderContactWithDetailsPopover.fragment.xml +2 -1
  169. package/src/sap/suite/ui/generic/template/fragments/HeaderDataPointContent.fragment.xml +2 -2
  170. package/src/sap/suite/ui/generic/template/fragments/HeaderForm.fragment.xml +1 -1
  171. package/src/sap/suite/ui/generic/template/fragments/HeaderFormDataField.fragment.xml +14 -7
  172. package/src/sap/suite/ui/generic/template/fragments/HeaderPlainText.fragment.xml +1 -1
  173. package/src/sap/suite/ui/generic/template/fragments/HeaderRatingIndicator.fragment.xml +5 -7
  174. package/src/sap/suite/ui/generic/template/fragments/MessagePopover.fragment.xml +2 -1
  175. package/src/sap/suite/ui/generic/template/fragments/ProgressIndicator.fragment.xml +2 -2
  176. package/src/sap/suite/ui/generic/template/fragments/QuickViewSmartForm.fragment.xml +2 -2
  177. package/src/sap/suite/ui/generic/template/fragments/RatingIndicatorFacet.fragment.xml +2 -2
  178. package/src/sap/suite/ui/generic/template/fragments/SmartFormDataField.fragment.xml +4 -3
  179. package/src/sap/suite/ui/generic/template/fragments/SmartMicroChart.fragment.xml +1 -1
  180. package/src/sap/suite/ui/generic/template/fragments/SmartTableUiTableCommons.fragment.xml +2 -5
  181. package/src/sap/suite/ui/generic/template/fragments/TableCell.fragment.xml +9 -7
  182. package/src/sap/suite/ui/generic/template/fragments/TableColumnListItem.fragment.xml +2 -5
  183. package/src/sap/suite/ui/generic/template/fragments/ToolbarButton.fragment.xml +2 -2
  184. package/src/sap/suite/ui/generic/template/fragments/TreeTableColumns.fragment.xml +4 -3
  185. package/src/sap/suite/ui/generic/template/genericUtilities/controlHelper.js +10 -9
  186. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartVariantManagementWrapper.js +4 -2
  187. package/src/sap/suite/ui/generic/template/genericUtilities/filterHelper.js +70 -2
  188. package/src/sap/suite/ui/generic/template/genericUtilities/polyFill.js +14 -0
  189. package/src/sap/suite/ui/generic/template/js/AnnotationHelper.js +67 -30
  190. package/src/sap/suite/ui/generic/template/js/AnnotationHelperStreamSupport.js +3 -0
  191. package/src/sap/suite/ui/generic/template/js/QuickTemplates/QuickTemplateComponentFactory.js +25 -14
  192. package/src/sap/suite/ui/generic/template/js/RuntimeFormatters.js +78 -22
  193. package/src/sap/suite/ui/generic/template/lib/AppComponent.js +16 -225
  194. package/src/sap/suite/ui/generic/template/lib/CRUDActionHandler.js +12 -3
  195. package/src/sap/suite/ui/generic/template/lib/CRUDHelper.js +5 -3
  196. package/src/sap/suite/ui/generic/template/lib/CommonEventHandlers.js +24 -5
  197. package/src/sap/suite/ui/generic/template/lib/CommonUtils.js +78 -48
  198. package/src/sap/suite/ui/generic/template/lib/ComponentUtils.js +3 -3
  199. package/src/sap/suite/ui/generic/template/lib/ContextBookkeeping.js +39 -23
  200. package/src/sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHandler.js +13 -5
  201. package/src/sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHelper.js +168 -0
  202. package/src/sap/suite/ui/generic/template/lib/MessageButtonHelper.js +6 -0
  203. package/src/sap/suite/ui/generic/template/lib/MessageStripHelper.js +1 -1
  204. package/src/sap/suite/ui/generic/template/lib/RetryAfterHandler.js +2 -3
  205. package/src/sap/suite/ui/generic/template/lib/ShellPersonalizationService.js +137 -0
  206. package/src/sap/suite/ui/generic/template/lib/SideEffectUtil.js +56 -1
  207. package/src/sap/suite/ui/generic/template/lib/TemplateComponent.js +26 -7
  208. package/src/sap/suite/ui/generic/template/lib/ai/EasyFilterBarHandler.js +91 -36
  209. package/src/sap/suite/ui/generic/template/lib/ai/FioriAIHandler.js +30 -35
  210. package/src/sap/suite/ui/generic/template/lib/deletionHelper.js +10 -2
  211. package/src/sap/suite/ui/generic/template/lib/filterHelper.js +7 -3
  212. package/src/sap/suite/ui/generic/template/lib/i18n/i18n.properties +9 -15
  213. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ar.properties +3 -9
  214. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_bg.properties +3 -9
  215. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ca.properties +3 -9
  216. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cnr.properties +3 -9
  217. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cs.properties +3 -9
  218. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cy.properties +3 -9
  219. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_da.properties +3 -9
  220. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_de.properties +7 -13
  221. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_el.properties +3 -9
  222. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en.properties +3 -9
  223. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_GB.properties +3 -9
  224. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saprigi.properties +7 -11
  225. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saptrc.properties +183 -149
  226. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es.properties +6 -12
  227. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es_MX.properties +3 -9
  228. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_et.properties +3 -9
  229. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +3 -9
  230. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +3 -9
  231. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr_CA.properties +3 -9
  232. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hi.properties +3 -9
  233. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hr.properties +3 -9
  234. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hu.properties +5 -11
  235. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_id.properties +3 -9
  236. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_it.properties +3 -9
  237. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_iw.properties +3 -9
  238. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ja.properties +3 -9
  239. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_kk.properties +3 -9
  240. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ko.properties +3 -9
  241. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lt.properties +3 -9
  242. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lv.properties +3 -9
  243. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_mk.properties +3 -9
  244. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ms.properties +3 -9
  245. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +3 -9
  246. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_no.properties +3 -9
  247. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pl.properties +3 -9
  248. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt.properties +3 -9
  249. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt_PT.properties +3 -9
  250. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ro.properties +3 -9
  251. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +3 -9
  252. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sh.properties +3 -9
  253. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sk.properties +3 -9
  254. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sl.properties +3 -9
  255. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sr.properties +3 -9
  256. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sv.properties +3 -9
  257. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_th.properties +3 -9
  258. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_tr.properties +3 -9
  259. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_uk.properties +3 -9
  260. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_vi.properties +5 -11
  261. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_CN.properties +3 -9
  262. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_TW.properties +3 -9
  263. package/src/sap/suite/ui/generic/template/lib/insights/InsightsCardHelper.js +27 -11
  264. package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +59 -38
  265. package/src/sap/suite/ui/generic/template/lib/presentationControl/SmartTableHandler.js +93 -1
  266. package/src/sap/suite/ui/generic/template/library.js +7 -3
  267. package/src/sap/suite/ui/generic/template/listTemplates/fragments/ChartActions.fragment.xml +4 -3
  268. package/src/sap/suite/ui/generic/template/listTemplates/fragments/DetailSmartTable.fragment.xml +4 -3
  269. package/src/sap/suite/ui/generic/template/listTemplates/i18n/i18n_en_US_saptrc.properties +1 -1
  270. package/src/sap/suite/ui/generic/template/manifestMerger/ChangePageConfiguration.js +4 -1
  271. package/src/sap/suite/ui/generic/template/manifestMerger/MergerUtil.js +27 -1
  272. package/src/sap/suite/ui/generic/template/support/DiagnosticsTool/DiagnosticsTool.js +15 -3
  273. package/src/sap/suite/ui/generic/template/support/DiagnosticsTool/view/DiagnosticsTool.view.xml +0 -24
  274. package/src/sap/suite/ui/generic/template/support/lib/CommonChecks.js +11 -19
  275. package/src/sap/suite/ui/generic/template/themes/base/ObjectPage.less +0 -4
  276. package/src/sap/suite/ui/generic/template/themes/sap_belize_base/ObjectPage.less +0 -4
  277. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal_base/ObjectPage.less +0 -4
  278. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/AnalyticalListPage.less +0 -1
  279. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/AnalyticalListPage.less +0 -1
  280. package/src/sap/suite/ui/generic/template/themes/sap_hcb/base_ObjectPage.less +0 -4
  281. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/AnalyticalListPage.less +0 -1
  282. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/AnalyticalListPage.less +0 -1
  283. package/src/sap/suite/ui/generic/template/fragments/ContactDetailsQuickViewGroup.fragment.xml +0 -36
  284. package/src/sap/suite/ui/generic/template/js/formatters/formatDisplayValueForProgressIndicator.js +0 -28
  285. package/src/sap/suite/ui/generic/template/js/formatters/formatImageUrl.js +0 -21
  286. package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorAggregateCount.js +0 -21
  287. package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorFooterText.js +0 -21
  288. package/src/sap/suite/ui/generic/template/js/formatters/formatRatingIndicatorSubTitle.js +0 -21
  289. package/src/sap/suite/ui/generic/template/js/formatters/setInfoHighlight.js +0 -21
  290. package/src/sap/suite/ui/generic/template/js/formatters/setRowNavigated.js +0 -26
@@ -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
- ], function(BaseObject, ControllerExtension, MessageBox, SelectionVariant, controlHelper, metadataAnalyser,
20
- testableHelper, FeLogger, odata4analytics, extend, deepExtend, FeError, ControlStateWrapperFactory, oDataModelHelper, IconPool, ExportFilter, ODataUtils, TableUtil) {
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
 
@@ -243,7 +263,7 @@ sap.ui.define(["sap/ui/base/Object",
243
263
  var iEntitySetName = sSmartControlId.indexOf("::" + oComponent.getEntitySet() + "--") + 2; //Ensure only Entity set is picked up for processing
244
264
  var sI18nKey = sSmartControlId.substring(iEntitySetName, sSmartControlId.lastIndexOf("::")),
245
265
  sI18nKey = sI18nKey.replace(/--/g, "|").replace(/::/g, "|"); //sId = "STTA_C_MP_Product|to_ProductText|com.sap.vocabularies.UI.v1.LineItem"
246
-
266
+
247
267
  return sI18nKey;
248
268
  }
249
269
 
@@ -291,9 +311,9 @@ sap.ui.define(["sap/ui/base/Object",
291
311
 
292
312
  /*
293
313
  * Sets the enabled value for Toolbar buttons
294
- *
295
- * Currently, the property applicablePath (resp. sap:applicable-path) is only evaluated for buttons in header and
296
- * footer (influencing the visibility) and for toolbar buttons which require a context (influencing the enablement).
314
+ *
315
+ * Currently, the property applicablePath (resp. sap:applicable-path) is only evaluated for buttons in header and
316
+ * footer (influencing the visibility) and for toolbar buttons which require a context (influencing the enablement).
297
317
  * For static toolbar buttons (i.e. toolbar buttons that do not require a selection) the property is ignored.
298
318
  * TO DO : make sure the properties applicablePath/sap:applicable-path influence the visibility of static toolbar buttons as well
299
319
  *
@@ -348,11 +368,11 @@ sap.ui.define(["sap/ui/base/Object",
348
368
  oComponentUtils.getTemplatePrivateModel().setProperty("/listReport/multiEditEnabled", aContexts.filter(fnIsContextEditable).length > 0);
349
369
  }
350
370
  if (oEnabledPromise){
351
- // check if "enabled" is bound to the path '/generic/controlProperties/' in the model - otherwise it's bound to another path or has a hard coded true/false
371
+ // check if "enabled" is bound to the path '/generic/controlProperties/' in the model - otherwise it's bound to another path or has a hard coded true/false
352
372
  if (oEnabledPromise && !/generic\/controlProperties/.test(oButton.getBindingPath("enabled"))) {
353
373
  oEnabledPromise = null;
354
374
  bEnabled = oButton.getEnabled();
355
- }
375
+ }
356
376
  }
357
377
  return {
358
378
  enabledPromise: oEnabledPromise,
@@ -548,21 +568,21 @@ sap.ui.define(["sap/ui/base/Object",
548
568
  // This method is invoked twice in ALP. Once for smart table and once again for smart chart.
549
569
  // In the first iteration (smart table actions), the calculated enablement value is stored on "mBreakoutActionEnabled".
550
570
  // In the second iteration (smart chart actions), the enablement should be calculated only for the chart actions (oBreakoutAction.filter = "chart").
551
- // As the previously calculated value for the table actions should be retained, the value stored on "mBreakoutActionEnabled" is used as the default value.
571
+ // As the previously calculated value for the table actions should be retained, the value stored on "mBreakoutActionEnabled" is used as the default value.
552
572
  var bDefaultValue = !bIsAnalyticalListPage || !!mBreakOutActionEnabled[sControlId].enabled;
553
573
  var bEnabled = fnIsBreakoutActionEnabled(oBreakoutAction, aContexts, oModel, oControl, bDefaultValue, bIsAnalyticalListPage);
554
-
574
+
555
575
  mBreakOutActionEnabled[sControlId] = {
556
576
  enabled: bEnabled
557
- };
577
+ };
558
578
  }
559
-
579
+
560
580
  /**
561
581
  * This method analyzes the applicable contexts and tells whether the breakout action should be enabled.
562
- *
563
- * If the context based analysis is not required (i.e the action doesn't require selection),
582
+ *
583
+ * If the context based analysis is not required (i.e the action doesn't require selection),
564
584
  * it will simply return the default value <code>bDefaultValue</code>.
565
- *
585
+ *
566
586
  * @param {object} oBreakoutAction Manifest information about the breakout action
567
587
  * @param {Array<sap.ui.model.Context>} aContexts Applicable contexts
568
588
  * @param {sap.ui.model.Model} oModel Model of the smart control
@@ -583,14 +603,14 @@ sap.ui.define(["sap/ui/base/Object",
583
603
  // check if applicablePath is true for this context
584
604
  var oObject = oModel.getObject(oContext.getPath() + oApplicablePathInfo.navigationPath);
585
605
  return oObject[oApplicablePathInfo.property] === true;
586
- });
606
+ });
587
607
  } else {
588
608
  bEnabled = bEnabled || (bFilterIsChart ? controlHelper.isSmartChart(oControl) : controlHelper.isSmartTable(oControl));
589
609
  }
590
610
  } else if (controlHelper.isSmartChart(oControl)) {
591
611
  //table button chart ondata received
592
612
  // For LR/OP, directly evaluate the drill stack filters and enable the action accordingly.
593
- // For ALP, evaluate the drill stack filters only when oBreakoutAction.filter is "chart" and skip the evaluation for table based actions.
613
+ // For ALP, evaluate the drill stack filters only when oBreakoutAction.filter is "chart" and skip the evaluation for table based actions.
594
614
  if (!bIsAnalyticalListPage || bFilterIsChart) {
595
615
  // If enabled Selection is made on the chart but drilldown is performed later.
596
616
  bEnabled = oControl.getDrillStackFilters().length > 0;
@@ -601,7 +621,7 @@ sap.ui.define(["sap/ui/base/Object",
601
621
  }
602
622
  }
603
623
  return bEnabled;
604
-
624
+
605
625
  }
606
626
 
607
627
  function fnUpdateBreakoutEnablement(mBreakOutActionEnabled, mBreakoutActions, aContexts, oModel, sSelectedTabKey, oControl) {
@@ -764,11 +784,16 @@ sap.ui.define(["sap/ui/base/Object",
764
784
 
765
785
  setComponentRefreshBehaviour(oOutbound);
766
786
 
767
- oServices.oApplication.navigateExternal(oOutbound.semanticObject, oOutbound.action, oSelectionVariant.toJSONString(),
768
- null, fnHandleError);
769
- //null object has to be passed to the NavigationHandler as an
770
- //indicator that the state should not be overwritten
771
- //if draft enabled then passing NavigateExternal else on back button passing LeavePage
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
 
@@ -828,13 +853,13 @@ sap.ui.define(["sap/ui/base/Object",
828
853
 
829
854
  /**
830
855
  * Provides the Navigation Context about the smart link clicked by the user
831
- *
856
+ *
832
857
  * @param {Array} aKeys - Array of Navigation Key Properties Object
833
858
  * @param {object} oResponse - response of oDataModel's GET request
834
859
  * @returns {string} route string for Context Navigation
835
860
  * @private
836
861
  */
837
-
862
+
838
863
  function fnMergeNavigationKeyPropertiesWithValues(aKeys, oResponse) {
839
864
  var sKeySeparator, sRoute;
840
865
  for (var i = 0, ilength = aKeys.length; i < ilength; i++) {
@@ -904,7 +929,7 @@ sap.ui.define(["sap/ui/base/Object",
904
929
 
905
930
  /**
906
931
  * Provides the information about the smart link clicked by user
907
- *
932
+ *
908
933
  * @param {*} oEvent beforePopoverOpens event
909
934
  * @returns {object} oSourceInfo - object contains the smart link info
910
935
  * oSourceInfo.smartLink - The clicked smart link
@@ -913,12 +938,12 @@ sap.ui.define(["sap/ui/base/Object",
913
938
  */
914
939
  function fnGetSemanticObjectLinkInfo (oEvent) {
915
940
  var sSmartLinkId = oEvent.getParameter("originalId"),
916
- oSmartLink = sap.ui.getCore().byId(sSmartLinkId),
941
+ oSmartLink = Element.getElementById(sSmartLinkId),
917
942
  oOwnerControl = getOwnerControl(oSmartLink, true),
918
943
  oSourceInfo = Object.create(null);
919
-
944
+
920
945
  oSourceInfo.smartLink = oSmartLink;
921
-
946
+
922
947
  if (controlHelper.isSmartTable(oOwnerControl)) {
923
948
  var oSmartTableHandler = oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oOwnerControl);
924
949
  oSourceInfo.smartTable = oOwnerControl;
@@ -1001,7 +1026,7 @@ sap.ui.define(["sap/ui/base/Object",
1001
1026
  // call extension
1002
1027
  oController.adaptNavigationParameterExtension(oSelectionVariant, oObjectInfo);
1003
1028
  sSelectionVariantPrepared = oSelectionVariant.toJSONString();
1004
- }
1029
+ }
1005
1030
  delete oEventParameters.semanticAttributes;
1006
1031
  oNavigationHandler.processBeforeSmartLinkPopoverOpens(oEventParameters, sSelectionVariantPrepared);
1007
1032
  }
@@ -1025,7 +1050,7 @@ sap.ui.define(["sap/ui/base/Object",
1025
1050
  var sOwnerComponentEntitySet = oController.getOwnerComponent().getEntitySet();
1026
1051
  if (controlHelper.isSemanticObjectController(oControl) || controlHelper.isSmartTable(oControl)) {
1027
1052
  sControlEntitySet = oControl.getEntitySet();
1028
- } else {
1053
+ } else {
1029
1054
  // When navigation from table is triggered from an OP Table, oControl is not a smart table but a link or a button in the table.
1030
1055
  var oOwnerControl = getOwnerControl(oControl);
1031
1056
  var oParentControl = oOwnerControl && oOwnerControl.getParent();
@@ -1087,7 +1112,7 @@ sap.ui.define(["sap/ui/base/Object",
1087
1112
  fnHandleMandatoryField("HasActiveEntity");
1088
1113
  }
1089
1114
  }
1090
-
1115
+
1091
1116
  function isMultiViewMultiEntity() {
1092
1117
  return !!(oComponentUtils && oComponentUtils.getSettings() && oComponentUtils.getSettings().quickVariantSelectionX);
1093
1118
  }
@@ -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 = sap.ui.getCore().byId(tableVariantId);
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 = sap.ui.getCore().byId(chartVariantId);
1381
+ var oVM = Element.getElementById(chartVariantId);
1357
1382
  var sVariantKey = oVM.getDefaultVariantKey();
1358
1383
  return sVariantKey === oVM.STANDARDVARIANTKEY ? "" : sVariantKey;
1359
1384
  }
@@ -1412,7 +1437,7 @@ sap.ui.define(["sap/ui/base/Object",
1412
1437
  // add the value to the model
1413
1438
  var sSemObj = aInternalLinks[j].semanticObject;
1414
1439
  var sAction = aInternalLinks[j].action;
1415
-
1440
+
1416
1441
  var oSemObjProp = oTemplatePrivateModel.getProperty("/generic/supportedIntents/" + sSemObj); if (!oSemObjProp) { // no semantic object in the model yet
1417
1442
  oSupportedIntents[sSemObj] = {};
1418
1443
  oSupportedIntents[sSemObj][sAction] =
@@ -1433,7 +1458,7 @@ sap.ui.define(["sap/ui/base/Object",
1433
1458
  });
1434
1459
  });
1435
1460
  });
1436
-
1461
+
1437
1462
  }
1438
1463
  }
1439
1464
 
@@ -1603,14 +1628,14 @@ sap.ui.define(["sap/ui/base/Object",
1603
1628
  var oEventSource = oEvent.getSource();
1604
1629
  return controlHelper.isButton(oEventSource) ?
1605
1630
  oEventSource.data() :
1606
- sap.ui.getCore().byId(oController.createId(getElementCustomData(oEventSource)["ActionId"])).data();
1631
+ Element.getElementById(oController.createId(getElementCustomData(oEventSource)["ActionId"])).data();
1607
1632
  }
1608
1633
 
1609
1634
  /**
1610
- * While exporting data from a table, this function removes the technical properties
1611
- * (like "IsActiveEntity", "HasActiveEntity") and adds the actual value of "Editing Status" select box
1612
- * into the exported file.
1613
- *
1635
+ * While exporting data from a table, this function removes the technical properties
1636
+ * (like "IsActiveEntity", "HasActiveEntity") and adds the actual value of "Editing Status" select box
1637
+ * into the exported file.
1638
+ *
1614
1639
  * @param {sap.ui.export.util.Filter[]} aFilterSettings Filters in the exported file
1615
1640
  */
1616
1641
  function fnTransformTechnicalPropsOnExportedFile (aFilterSettings) {
@@ -1625,7 +1650,7 @@ sap.ui.define(["sap/ui/base/Object",
1625
1650
  // Find the technical props for the selected draft state value
1626
1651
  var sDraftStateValue = oEditStateControl.getSelectedKey(),
1627
1652
  aTechnicalProps = oDraftStateToTechnicalProps[sDraftStateValue];
1628
-
1653
+
1629
1654
  aTechnicalProps.forEach(function (oTechnicalProp){
1630
1655
  // Find the index of filter settings to be removed
1631
1656
  var iIndexOfFilterSettingsToBeRemoved = aFilterSettings.findIndex(function (oFilterSettings){
@@ -1639,7 +1664,7 @@ sap.ui.define(["sap/ui/base/Object",
1639
1664
  aFilterSettings.splice(iIndexOfFilterSettingsToBeRemoved, 1);
1640
1665
  }
1641
1666
  });
1642
-
1667
+
1643
1668
  //Create a new filter with the value retrieved from "editStateFilter" select control
1644
1669
  var sEditStateLabel = oEditStateControl.getLabels().at(0).getText(),
1645
1670
  sEditStateValue = oEditStateControl.getSelectedItem().getText(),
@@ -1651,9 +1676,9 @@ sap.ui.define(["sap/ui/base/Object",
1651
1676
  }
1652
1677
 
1653
1678
  /**
1654
- * This method reads the values of analytical parameters from the smart filter bar
1679
+ * This method reads the values of analytical parameters from the smart filter bar
1655
1680
  * and adds them to the list of filters in the exported file
1656
- *
1681
+ *
1657
1682
  * @param {sap.ui.comp.smarttable.SmartTable} oSmartTable The smart table which has the data to be exported
1658
1683
  * @param {sap.ui.export.util.Filter[]} aFilterSettings Current filters in the exported file
1659
1684
  */
@@ -1755,7 +1780,7 @@ sap.ui.define(["sap/ui/base/Object",
1755
1780
  }, fnReject);
1756
1781
  });
1757
1782
  };
1758
-
1783
+
1759
1784
  var fnIsFieldModified = function(oSourceControl) {
1760
1785
  var oInnerControl = oSourceControl.getFirstInnerControl && oSourceControl.getFirstInnerControl();
1761
1786
  if (oInnerControl.getValue() !== oInnerControl.getLastValue()) {
@@ -1780,7 +1805,7 @@ sap.ui.define(["sap/ui/base/Object",
1780
1805
  if (!fnIsFieldModified(oSourceControl)) {
1781
1806
  mAdditionalParameters.callPreparationOnly = true;
1782
1807
  }
1783
- fnCallExecuteSideEffect();
1808
+ fnCallExecuteSideEffect();
1784
1809
  // Resolve the promise and exit the loop for Inactive transient row
1785
1810
  return fnResolve();
1786
1811
  }
@@ -1981,6 +2006,11 @@ sap.ui.define(["sap/ui/base/Object",
1981
2006
  var bSetToDirty = oResponseContext && (!oResponse.actionContext || sResponseContextPath !== oResponse.actionContext.getPath());
1982
2007
  if (bSetToDirty) {
1983
2008
  oServices.oViewDependencyHelper.setMeToDirty(oController.getOwnerComponent(), sEntitySet, false, sResponseContextPath === "/undefined" || aContexts.length > 1);
2009
+ if (oCustomData.ActionType === "determining") {
2010
+ // Determining action detected. This type of action can activate draft.
2011
+ // As activated draft is different object it also necessary to refresh parent page (LR).
2012
+ oServices.oViewDependencyHelper.setParentToDirty(oController.getOwnerComponent(), sEntitySet, 1);
2013
+ }
1984
2014
  }
1985
2015
  }
1986
2016
  });
@@ -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
- if (!mPath2ContextData[sReplacePath]){
135
- mPath2ContextData[sReplacePath] = {
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(["sap/ui/base/Object", "sap/f/FlexibleColumnLayoutSemanticHelper", "sap/f/library", "sap/base/util/extend", "sap/suite/ui/generic/template/genericUtilities/controlHelper"],
2
- function(BaseObject, FlexibleColumnLayoutSemanticHelper, fioriLibrary, extend, controlHelper) {
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.setColumnDistributionModel();
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 oTemplateContract.getStoredLayout(sCurrentLayout);
333
+ sCurrentLayout = await oFlexibleColumnLayoutHelper.getStoredLayout(sCurrentLayout);
326
334
 
327
335
  oFlexibleColumnLayout.setLayout(sCurrentLayout);
328
336
  oFlexibleColumnLayout.setAutoFocus(false);
@@ -0,0 +1,168 @@
1
+ sap.ui.define([
2
+ "sap/ui/base/Object",
3
+ "sap/base/util/extend",
4
+ "sap/f/FlexibleColumnLayout",
5
+ "sap/f/FlexibleColumnLayoutData",
6
+ "sap/f/FlexibleColumnLayoutDataForDesktop",
7
+ "sap/f/FlexibleColumnLayoutDataForTablet"
8
+ ], function (
9
+ BaseObject,
10
+ extend,
11
+ FlexibleColumnLayout,
12
+ FlexibleColumnLayoutData,
13
+ FlexibleColumnLayoutDataForDesktop,
14
+ FlexibleColumnLayoutDataForTablet
15
+ ) {
16
+ "use strict";
17
+
18
+ var appComponent;
19
+ var shellPersonalizationService;
20
+
21
+ function getMethods({ oAppComponent, oShellPersonalizationService }) {
22
+
23
+ appComponent = oAppComponent;
24
+ shellPersonalizationService = oShellPersonalizationService;
25
+
26
+ /**
27
+ * Retieves the FCL state from the personalization service.
28
+ * @returns The FCL state
29
+ */
30
+ async function getFCLPersonalizationData() {
31
+ var oEmptyFCLState = {
32
+ defaultLayouts: {},
33
+ columnsDistribution: {
34
+ desktop: {},
35
+ tablet: {}
36
+ }
37
+ };
38
+ return ((await shellPersonalizationService.getApplicationPersonalizationData("FCL-Personalization")) ?? oEmptyFCLState);
39
+ }
40
+
41
+ /**
42
+ * Sets the FCL state in the personalization service.
43
+ * @param fclState The FCL state
44
+ */
45
+ function setFCLPersonalizationData(fclState) {
46
+ shellPersonalizationService.setApplicationPersonalizationData("FCL-Personalization", fclState);
47
+ }
48
+
49
+ /**
50
+ * Requests the FCL state from the personalization service and sets the model accordingly.
51
+ */
52
+ async function setColumnDistributionModel() {
53
+ if (!shellPersonalizationService.hasInitialized()) {
54
+ return;
55
+ }
56
+ var oColumnsDistribution = (await getFCLPersonalizationData()).columnsDistribution;
57
+ if (oColumnsDistribution) {
58
+ var oTemplatePrivateGlobalModel = appComponent.getModel("_templPrivGlobal");
59
+ oTemplatePrivateGlobalModel.setProperty("/generic/FCL/FCLColumnsDistribution", oColumnsDistribution);
60
+ }
61
+ }
62
+
63
+ /**
64
+ * Gets the number of columns displayed in the FCL based on the layout.
65
+ * @param {LayoutTypeType} layout The layout
66
+ * @returns {1 | 2 | 3 | null} The number of columns displayed
67
+ */
68
+ function getNumberOfColumnsFromLayout(layout) {
69
+ var iColumnsDisplayed = /^(One|Two|Three)Column/.exec(layout)?.[1];
70
+ switch (iColumnsDisplayed) {
71
+ case "One":
72
+ return 1;
73
+ case "Two":
74
+ return 2;
75
+ case "Three":
76
+ return 3;
77
+ default:
78
+ return null;
79
+ }
80
+ }
81
+
82
+ /**
83
+ * Gets the layout stored in the personalization service based on the proposed layout.
84
+ * @param {LayoutTypeType | undefined } proposedLayout
85
+ * @returns The FCL layout stored in the personalization service
86
+ */
87
+ async function getStoredLayout(oProposedLayout) {
88
+ if (shellPersonalizationService.hasInitialized()) {
89
+ var iColumnsDisplayed = getNumberOfColumnsFromLayout(oProposedLayout);
90
+ if (iColumnsDisplayed) {
91
+ var defaultLayouts = (await getFCLPersonalizationData()).defaultLayouts;
92
+ return defaultLayouts?.[iColumnsDisplayed] ?? oProposedLayout;
93
+ }
94
+ }
95
+ return oProposedLayout;
96
+ }
97
+
98
+ /**
99
+ * Is called when the user changes the FCL columns distribution.
100
+ * Updates the FCL state in the personalization service.
101
+ * @param {Event<{ media: "tablet" | "desktop"; layout: LayoutTypeType; columnsSizes: string }>} event
102
+ */
103
+ async function onColumnsDistributionChange(event) {
104
+ if (!shellPersonalizationService.hasInitialized()) {
105
+ return;
106
+ }
107
+
108
+ var { media, layout, columnsSizes } = event.getParameters();
109
+
110
+ var oTemplatePrivateGlobalModel = appComponent.getModel("_templPrivGlobal");
111
+ oTemplatePrivateGlobalModel.setProperty(`/generic/FCL/FCLColumnsDistribution/${media}/${layout}`, columnsSizes);
112
+
113
+ var oFclState = await getFCLPersonalizationData();
114
+ var iColumnsDisplayed = getNumberOfColumnsFromLayout(layout);
115
+ if (iColumnsDisplayed) {
116
+ oFclState.defaultLayouts[iColumnsDisplayed] = layout;
117
+ oFclState.columnsDistribution[media][layout] = columnsSizes;
118
+ setFCLPersonalizationData(oFclState);
119
+ }
120
+ }
121
+
122
+ function initFlexibleColumnLayout() {
123
+ var oFCL = new FlexibleColumnLayout();
124
+
125
+ var oLayoutData = new FlexibleColumnLayoutData();
126
+ var oDesktopLayoutData = new FlexibleColumnLayoutDataForDesktop();
127
+ var oTabletLayoutData = new FlexibleColumnLayoutDataForTablet();
128
+
129
+ var sFCLColumnsDistributionPath = "_templPrivGlobal>/generic/FCL/FCLColumnsDistribution";
130
+ var sDesktopFCLColumnsDistributionPath = `${sFCLColumnsDistributionPath}/desktop`;
131
+ var sTabletFCLColumnsDistributionPath = `${sFCLColumnsDistributionPath}/tablet`;
132
+
133
+ oDesktopLayoutData.bindProperty("twoColumnsBeginExpanded", `${sDesktopFCLColumnsDistributionPath}/TwoColumnsBeginExpanded`);
134
+ oDesktopLayoutData.bindProperty("twoColumnsMidExpanded", `${sDesktopFCLColumnsDistributionPath}/TwoColumnsMidExpanded`);
135
+ oDesktopLayoutData.bindProperty("threeColumnsBeginExpandedEndHidden", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsBeginExpandedEndHidden`);
136
+ oDesktopLayoutData.bindProperty("threeColumnsEndExpanded", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsEndExpanded`);
137
+ oDesktopLayoutData.bindProperty("threeColumnsMidExpanded", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsMidExpanded`);
138
+ oDesktopLayoutData.bindProperty("threeColumnsMidExpandedEndHidden", `${sDesktopFCLColumnsDistributionPath}/ThreeColumnsMidExpandedEndHidden`);
139
+
140
+ oTabletLayoutData.bindProperty("twoColumnsBeginExpanded", `${sTabletFCLColumnsDistributionPath}/TwoColumnsBeginExpanded`);
141
+ oTabletLayoutData.bindProperty("twoColumnsMidExpanded", `${sTabletFCLColumnsDistributionPath}/TwoColumnsMidExpanded`);
142
+ oTabletLayoutData.bindProperty("threeColumnsBeginExpandedEndHidden", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsBeginExpandedEndHidden`);
143
+ oTabletLayoutData.bindProperty("threeColumnsEndExpanded", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsEndExpanded`);
144
+ oTabletLayoutData.bindProperty("threeColumnsMidExpanded", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsMidExpanded`);
145
+ oTabletLayoutData.bindProperty("threeColumnsMidExpandedEndHidden", `${sTabletFCLColumnsDistributionPath}/ThreeColumnsMidExpandedEndHidden`);
146
+
147
+ oLayoutData.setDesktopLayoutData(oDesktopLayoutData);
148
+ oLayoutData.setTabletLayoutData(oTabletLayoutData);
149
+ oFCL.setAggregation("layoutData", oLayoutData);
150
+
151
+ oFCL.attachColumnsDistributionChange(onColumnsDistributionChange);
152
+
153
+ return oFCL;
154
+ }
155
+
156
+ return {
157
+ initFlexibleColumnLayout: initFlexibleColumnLayout,
158
+ getStoredLayout: getStoredLayout,
159
+ setColumnDistributionModel: setColumnDistributionModel
160
+ };
161
+ }
162
+
163
+ return BaseObject.extend("sap.suite.ui.generic.template.lib.FlexibleColumnLayoutHelper", {
164
+ constructor: function (oTemplateContract) {
165
+ extend(this, getMethods(oTemplateContract));
166
+ }
167
+ });
168
+ });
@@ -81,6 +81,10 @@ sap.ui.define([
81
81
  var sRet = (bIsPopoverOpen && sMsgId && aControlIds && oCurrentMessageSupportFunctions) ? oCurrentMessageSupportFunctions.getSubtitle(sMsgId, sAdditionalText) : sAdditionalText;
82
82
  return sRet;
83
83
  }
84
+
85
+ function getDescription(sMsgId, aControlIds, sAdditionalText, bIsPopoverOpen){
86
+ return (bIsPopoverOpen && sMsgId && aControlIds && oCurrentMessageSupportFunctions) ? oCurrentMessageSupportFunctions.getDescription(sMsgId, sAdditionalText) : sAdditionalText;
87
+ }
84
88
 
85
89
  // function that determines whether we are currently in the Non-draft create case
86
90
  var getIsNonDraftCreate = (bIsODataBased && !bIsDraftEnabled) ? oUiModel.getProperty.bind(oUiModel, "/createMode") : function(){ return false; };
@@ -101,8 +105,10 @@ sap.ui.define([
101
105
  ErrorExplanationHelper.generateErrorExplanation(oEvent, oController, oTemplateUtils);
102
106
  },
103
107
  getSubtitle: getSubtitle,
108
+ getDescription: getDescription,
104
109
  titlePressed: function (oEvent) { // the user wants to navigate from the message to the corresponding control
105
110
  MessageUtils.navigateFromMessageTitleEvent(oTemplateUtils, oEvent, oComponent, bIsDraftEnabled, sCurrentBindingPath);
111
+ oMessagePopover.close();
106
112
  }
107
113
  }).then(function (oMPopover) {
108
114
  oMessagePopover = oMPopover;