@sapui5/sap.suite.ui.generic.template 1.135.0 → 1.136.1

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 (298) hide show
  1. package/package.json +1 -1
  2. package/src/sap/suite/ui/generic/template/.library +2 -1
  3. package/src/sap/suite/ui/generic/template/AnalyticalListPage/Component.js +9 -1
  4. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/SmartKpiTag.js +1 -1
  5. package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/ControllerImplementation.js +9 -7
  6. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n.properties +4 -1
  7. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ar.properties +3 -1
  8. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_bg.properties +3 -1
  9. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ca.properties +4 -2
  10. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_cnr.properties +2 -0
  11. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_cs.properties +3 -1
  12. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_cy.properties +3 -1
  13. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_da.properties +3 -1
  14. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_de.properties +8 -6
  15. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_el.properties +3 -1
  16. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_en.properties +3 -1
  17. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_en_GB.properties +2 -0
  18. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_es.properties +3 -1
  19. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_es_MX.properties +3 -1
  20. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_et.properties +3 -1
  21. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_fi.properties +3 -1
  22. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_fr.properties +3 -1
  23. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_fr_CA.properties +3 -1
  24. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_hi.properties +3 -1
  25. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_hr.properties +3 -1
  26. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_hu.properties +3 -1
  27. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_id.properties +3 -1
  28. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_it.properties +3 -1
  29. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_iw.properties +3 -1
  30. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ja.properties +3 -1
  31. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_kk.properties +3 -1
  32. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ko.properties +3 -1
  33. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_lt.properties +2 -0
  34. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_lv.properties +4 -2
  35. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_mk.properties +3 -1
  36. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ms.properties +3 -1
  37. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_nl.properties +3 -1
  38. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_no.properties +3 -1
  39. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_pl.properties +3 -1
  40. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_pt.properties +3 -1
  41. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_pt_PT.properties +3 -1
  42. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ro.properties +3 -1
  43. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_ru.properties +3 -1
  44. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sh.properties +2 -0
  45. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sk.properties +3 -1
  46. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sl.properties +6 -4
  47. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sr.properties +2 -0
  48. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_sv.properties +3 -1
  49. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_th.properties +3 -1
  50. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_tr.properties +3 -1
  51. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_uk.properties +4 -2
  52. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_vi.properties +3 -1
  53. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_zh_CN.properties +3 -1
  54. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_zh_TW.properties +3 -1
  55. package/src/sap/suite/ui/generic/template/AnalyticalListPage/manifest.json +6 -5
  56. package/src/sap/suite/ui/generic/template/AnalyticalListPage/view/AnalyticalListPage.view.xml +1 -1
  57. package/src/sap/suite/ui/generic/template/Canvas/extensionAPI/ExtensionAPI.js +6 -4
  58. package/src/sap/suite/ui/generic/template/Canvas/manifest.json +2 -3
  59. package/src/sap/suite/ui/generic/template/ListReport/Component.js +12 -1
  60. package/src/sap/suite/ui/generic/template/ListReport/controller/ControllerImplementation.js +19 -1
  61. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n.properties +3 -0
  62. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ar.properties +2 -0
  63. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_bg.properties +2 -0
  64. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ca.properties +2 -0
  65. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cnr.properties +2 -0
  66. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cs.properties +2 -0
  67. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cy.properties +2 -0
  68. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_da.properties +2 -0
  69. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_de.properties +3 -1
  70. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_el.properties +2 -0
  71. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en.properties +2 -0
  72. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_GB.properties +2 -0
  73. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es.properties +2 -0
  74. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es_MX.properties +2 -0
  75. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_et.properties +2 -0
  76. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fi.properties +2 -0
  77. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr.properties +2 -0
  78. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr_CA.properties +2 -0
  79. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hi.properties +2 -0
  80. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hr.properties +2 -0
  81. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hu.properties +2 -0
  82. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_id.properties +3 -1
  83. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_it.properties +2 -0
  84. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_iw.properties +2 -0
  85. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ja.properties +8 -6
  86. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_kk.properties +2 -0
  87. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ko.properties +2 -0
  88. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lt.properties +2 -0
  89. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lv.properties +2 -0
  90. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_mk.properties +4 -2
  91. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ms.properties +2 -0
  92. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_nl.properties +2 -0
  93. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_no.properties +2 -0
  94. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pl.properties +2 -0
  95. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt.properties +2 -0
  96. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt_PT.properties +2 -0
  97. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ro.properties +2 -0
  98. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ru.properties +2 -0
  99. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sh.properties +2 -0
  100. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sk.properties +2 -0
  101. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sl.properties +2 -0
  102. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sr.properties +2 -0
  103. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sv.properties +2 -0
  104. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_th.properties +2 -0
  105. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_tr.properties +2 -0
  106. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_uk.properties +2 -0
  107. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_vi.properties +2 -0
  108. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_CN.properties +2 -0
  109. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_TW.properties +2 -0
  110. package/src/sap/suite/ui/generic/template/ListReport/manifest.json +8 -9
  111. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/MultiEditDialog.fragment.xml +2 -2
  112. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTable.fragment.xml +14 -6
  113. package/src/sap/suite/ui/generic/template/ObjectPage/Component.js +8 -0
  114. package/src/sap/suite/ui/generic/template/ObjectPage/controller/ControllerImplementation.js +35 -7
  115. package/src/sap/suite/ui/generic/template/ObjectPage/controller/SectionTitleHandler.js +82 -18
  116. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n.properties +14 -2
  117. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ar.properties +8 -0
  118. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_bg.properties +9 -1
  119. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ca.properties +9 -1
  120. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cnr.properties +9 -1
  121. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cs.properties +8 -0
  122. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cy.properties +8 -0
  123. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_da.properties +9 -1
  124. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_de.properties +12 -4
  125. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_el.properties +9 -1
  126. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en.properties +8 -0
  127. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_GB.properties +9 -1
  128. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saprigi.properties +3 -1
  129. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es.properties +9 -1
  130. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es_MX.properties +8 -0
  131. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_et.properties +9 -1
  132. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fi.properties +8 -0
  133. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr.properties +10 -2
  134. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr_CA.properties +9 -1
  135. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hi.properties +9 -1
  136. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hr.properties +8 -0
  137. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hu.properties +9 -1
  138. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_id.properties +9 -1
  139. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_it.properties +9 -1
  140. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_iw.properties +9 -1
  141. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ja.properties +9 -1
  142. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_kk.properties +8 -0
  143. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ko.properties +9 -1
  144. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lt.properties +9 -1
  145. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lv.properties +8 -0
  146. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_mk.properties +8 -0
  147. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ms.properties +9 -1
  148. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_nl.properties +9 -1
  149. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_no.properties +8 -0
  150. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pl.properties +9 -1
  151. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt.properties +10 -2
  152. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt_PT.properties +8 -0
  153. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ro.properties +8 -0
  154. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ru.properties +10 -2
  155. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sh.properties +9 -1
  156. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sk.properties +8 -0
  157. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sl.properties +8 -0
  158. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sr.properties +9 -1
  159. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sv.properties +9 -1
  160. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_th.properties +9 -1
  161. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_tr.properties +8 -0
  162. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_uk.properties +8 -0
  163. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_vi.properties +10 -2
  164. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_CN.properties +9 -1
  165. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_TW.properties +9 -1
  166. package/src/sap/suite/ui/generic/template/ObjectPage/manifest.json +15 -14
  167. package/src/sap/suite/ui/generic/template/ObjectPage/templateSpecificPreparationHelper.js +6 -1
  168. package/src/sap/suite/ui/generic/template/ObjectPage/view/Details.view.xml +13 -6
  169. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/PageLevelCommands.fragment.xml +1 -1
  170. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/Sections.fragment.xml +4 -2
  171. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartTable.fragment.xml +6 -3
  172. package/src/sap/suite/ui/generic/template/QuickCreate/manifest.json +1 -1
  173. package/src/sap/suite/ui/generic/template/QuickView/manifest.json +1 -1
  174. package/src/sap/suite/ui/generic/template/designtime/controls/DynamicPage.designtime.js +13 -12
  175. package/src/sap/suite/ui/generic/template/designtime/controls/ObjectPageLayout.designtime.js +9 -8
  176. package/src/sap/suite/ui/generic/template/designtime/controls/SmartFilterBar.designtime.js +12 -10
  177. package/src/sap/suite/ui/generic/template/designtime/controls/SmartTable.designtime.js +61 -22
  178. package/src/sap/suite/ui/generic/template/designtime/floorplans/AnalyticalListPage.designtime.js +2 -11
  179. package/src/sap/suite/ui/generic/template/designtime/floorplans/ListReport.designtime.js +2 -11
  180. package/src/sap/suite/ui/generic/template/designtime/floorplans/ObjectPage.designtime.js +2 -11
  181. package/src/sap/suite/ui/generic/template/designtime/utils/designtimeHelper.js +6 -2
  182. package/src/sap/suite/ui/generic/template/designtime/utils/designtimeUtils.js +6 -5
  183. package/src/sap/suite/ui/generic/template/fragments/EasyFilter.fragment.xml +8 -7
  184. package/src/sap/suite/ui/generic/template/fragments/MessagePage.view.xml +1 -1
  185. package/src/sap/suite/ui/generic/template/fragments/TableCell.fragment.xml +4 -4
  186. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartVariantManagementWrapper.js +27 -27
  187. package/src/sap/suite/ui/generic/template/js/AnnotationHelper.js +36 -2
  188. package/src/sap/suite/ui/generic/template/js/RuntimeFormatters.js +39 -2
  189. package/src/sap/suite/ui/generic/template/lib/AppComponent.js +1 -1
  190. package/src/sap/suite/ui/generic/template/lib/CRUDActionHandler.js +6 -5
  191. package/src/sap/suite/ui/generic/template/lib/CRUDManager.js +25 -13
  192. package/src/sap/suite/ui/generic/template/lib/CommonEventHandlers.js +5 -5
  193. package/src/sap/suite/ui/generic/template/lib/CommonUtils.js +4 -0
  194. package/src/sap/suite/ui/generic/template/lib/ComponentUtils.js +3 -1
  195. package/src/sap/suite/ui/generic/template/lib/RestoreFocusHelper.js +66 -0
  196. package/src/sap/suite/ui/generic/template/lib/StatePreserver.js +5 -2
  197. package/src/sap/suite/ui/generic/template/lib/TemplateAssembler.js +5 -4
  198. package/src/sap/suite/ui/generic/template/lib/ai/EasyFilterBarHandler.js +193 -5
  199. package/src/sap/suite/ui/generic/template/lib/i18n/i18n.properties +163 -2
  200. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ar.properties +108 -1
  201. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_bg.properties +108 -1
  202. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ca.properties +108 -1
  203. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cnr.properties +108 -1
  204. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cs.properties +108 -1
  205. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cy.properties +108 -1
  206. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_da.properties +108 -1
  207. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_de.properties +108 -1
  208. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_el.properties +108 -1
  209. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en.properties +108 -1
  210. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_GB.properties +108 -1
  211. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es.properties +108 -1
  212. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es_MX.properties +108 -1
  213. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_et.properties +108 -1
  214. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +108 -1
  215. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +108 -1
  216. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr_CA.properties +109 -2
  217. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hi.properties +109 -2
  218. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hr.properties +108 -1
  219. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hu.properties +108 -1
  220. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_id.properties +108 -1
  221. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_it.properties +108 -1
  222. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_iw.properties +108 -1
  223. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ja.properties +109 -2
  224. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_kk.properties +108 -1
  225. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ko.properties +108 -1
  226. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lt.properties +108 -1
  227. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lv.properties +108 -1
  228. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_mk.properties +108 -1
  229. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ms.properties +108 -1
  230. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +108 -1
  231. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_no.properties +109 -2
  232. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pl.properties +108 -1
  233. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt.properties +108 -1
  234. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt_PT.properties +108 -1
  235. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ro.properties +108 -1
  236. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +108 -1
  237. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sh.properties +108 -1
  238. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sk.properties +108 -1
  239. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sl.properties +108 -1
  240. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sr.properties +108 -1
  241. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sv.properties +108 -1
  242. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_th.properties +108 -1
  243. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_tr.properties +108 -1
  244. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_uk.properties +108 -1
  245. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_vi.properties +108 -1
  246. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_CN.properties +108 -1
  247. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_TW.properties +108 -1
  248. package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +37 -35
  249. package/src/sap/suite/ui/generic/template/lib/navigation/startupParameterHelper.js +1 -1
  250. package/src/sap/suite/ui/generic/template/library.js +1 -1
  251. package/src/sap/suite/ui/generic/template/listTemplates/controller/SmartChartController.js +1 -1
  252. package/src/sap/suite/ui/generic/template/listTemplates/fragments/DetailSmartTable.fragment.xml +6 -3
  253. package/src/sap/suite/ui/generic/template/themes/base/ALPConstants.less +3 -4
  254. package/src/sap/suite/ui/generic/template/themes/base/AnalyticalListPage.less +12 -213
  255. package/src/sap/suite/ui/generic/template/themes/base/ListReport.less +1 -6
  256. package/src/sap/suite/ui/generic/template/themes/base/ObjectPage.less +15 -27
  257. package/src/sap/suite/ui/generic/template/themes/sap_belize/library.source.less +0 -1
  258. package/src/sap/suite/ui/generic/template/themes/sap_belize_base/ALPConstants.less +3 -4
  259. package/src/sap/suite/ui/generic/template/themes/sap_belize_base/AnalyticalListPage.less +12 -212
  260. package/src/sap/suite/ui/generic/template/themes/sap_belize_base/ListReport.less +1 -6
  261. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcb/AnalyticalListPage.less +0 -6
  262. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcb/library.source.less +0 -1
  263. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcw/AnalyticalListPage.less +0 -6
  264. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcw/library.source.less +0 -1
  265. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal/library.source.less +0 -1
  266. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal_base/ALPConstants.less +3 -4
  267. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal_base/AnalyticalListPage.less +14 -213
  268. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal_base/ListReport.less +1 -7
  269. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3/ObjectPage.less +1 -2
  270. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_dark/ObjectPage.less +1 -2
  271. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/AnalyticalListPage.less +1 -6
  272. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/ObjectPage.less +2 -2
  273. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/library.source.less +0 -1
  274. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/AnalyticalListPage.less +1 -6
  275. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/ObjectPage.less +2 -2
  276. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/library.source.less +0 -1
  277. package/src/sap/suite/ui/generic/template/themes/sap_hcb/ALPConstants.less +3 -4
  278. package/src/sap/suite/ui/generic/template/themes/sap_hcb/AnalyticalListPage.less +1 -33
  279. package/src/sap/suite/ui/generic/template/themes/sap_hcb/base_AnalyticalListPage.less +15 -214
  280. package/src/sap/suite/ui/generic/template/themes/sap_hcb/base_ListReport.less +1 -6
  281. package/src/sap/suite/ui/generic/template/themes/sap_hcb/library.source.less +0 -1
  282. package/src/sap/suite/ui/generic/template/themes/sap_horizon/ObjectPage.less +1 -2
  283. package/src/sap/suite/ui/generic/template/themes/sap_horizon_dark/ObjectPage.less +1 -2
  284. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/AnalyticalListPage.less +0 -6
  285. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/ObjectPage.less +2 -2
  286. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/library.source.less +0 -1
  287. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/AnalyticalListPage.less +0 -6
  288. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/ObjectPage.less +2 -2
  289. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/library.source.less +0 -1
  290. package/src/sap/suite/ui/generic/template/themes/sap_belize/ListReport.less +0 -3
  291. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcb/ListReport.less +0 -8
  292. package/src/sap/suite/ui/generic/template/themes/sap_belize_hcw/ListReport.less +0 -8
  293. package/src/sap/suite/ui/generic/template/themes/sap_bluecrystal/ListReport.less +0 -3
  294. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcb/ListReport.less +0 -8
  295. package/src/sap/suite/ui/generic/template/themes/sap_fiori_3_hcw/ListReport.less +0 -8
  296. package/src/sap/suite/ui/generic/template/themes/sap_hcb/ListReport.less +0 -3
  297. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcb/ListReport.less +0 -8
  298. package/src/sap/suite/ui/generic/template/themes/sap_horizon_hcw/ListReport.less +0 -8
@@ -950,7 +950,7 @@ sap.ui.define([
950
950
  * @public
951
951
  * @extends sap.ui.core.UIComponent
952
952
  * @author SAP SE
953
- * @version 1.135.0
953
+ * @version 1.136.1
954
954
  * @name sap.suite.ui.generic.template.lib.AppComponent
955
955
  */
956
956
  var oAppComponent = UIComponent.extend("sap.suite.ui.generic.template.lib.AppComponent", {
@@ -9,7 +9,7 @@
9
9
  * It has options to handle the scenario when there is error coming from the backend and we still want to save in second try.
10
10
  */
11
11
 
12
- sap.ui.define(["sap/ui/base/Object", "sap/ui/model/Filter", "sap/ui/model/FilterOperator", "sap/base/util/extend", "sap/suite/ui/generic/template/lib/MessageUtils", "sap/ui/model/json/JSONModel",
12
+ sap.ui.define(["sap/ui/base/Object", "sap/ui/model/Filter", "sap/ui/model/FilterOperator", "sap/base/util/extend", "sap/suite/ui/generic/template/lib/MessageUtils", "sap/ui/model/json/JSONModel",
13
13
  "sap/suite/ui/generic/template/genericUtilities/controlHelper", "sap/ui/core/message/MessageType",
14
14
  "sap/suite/ui/generic/template/genericUtilities/FeLogger"
15
15
  ], function(BaseObject, Filter, FilterOperator, extend, MessageUtils, JSONModel, controlHelper, MessageType, FeLogger) {
@@ -122,12 +122,13 @@
122
122
  }).then(function (oFragment) {
123
123
  oRet = oFragment;
124
124
  oLocalModel = oRet.getModel(sLocalModelName);
125
-
125
+
126
126
  var oMsgModel = aMessages ? new JSONModel(aMessages) : sap.ui.getCore().getMessageManager().getMessageModel();
127
+ oMsgModel.setSizeLimit(9999); // Increase limit for created binding count. This will ensure that all messages are visible.
127
128
  oMessageView.setModel(oMsgModel, "msg");
128
129
  oLocalModel.setProperty("/situation", iSituation);
129
130
  oLocalModel.setProperty("/afterClose", Function.prototype);
130
-
131
+
131
132
 
132
133
  var oOverallFilter = oAtLeastWarningFilter;
133
134
  var oErrorFilter = oBaseErrorFilter;
@@ -183,14 +184,14 @@
183
184
  if (oItemBinding.filter(oErrorFilter).getLength() === 0) {
184
185
  oLocalModel.setProperty("/situation", 4);
185
186
  }
186
-
187
+
187
188
  }
188
189
  oLocalModel.setProperty("/backbtnvisibility", false);
189
190
  oItemBinding.filter(oOverallFilter);
190
191
  if (oItemBinding.getLength() === 0){
191
192
  return null; // no popup needed
192
193
  }
193
- var aMsg = oItemBinding.getAllCurrentContexts().map(function(oContext) {
194
+ var aMsg = oItemBinding.getAllCurrentContexts().map(function(oContext) {
194
195
  return oContext.getObject();
195
196
  });
196
197
  var oMsgDialogHeaderInfo = MessageUtils.getMessageDialogTitleAndSeverity(aMsg, oTemplateContract);
@@ -114,7 +114,7 @@ sap.ui.define(["sap/ui/base/Object",
114
114
  return oComponentUtils.getMainComponentUtils().then(function(oMainUtils) {
115
115
  var oInfoForContentIdPromise = CacheHelper.getInfoForContentIdPromise(oMainUtils.entitySet, oModel, sAppId, oMainUtils.getRootExpand);
116
116
  return oInfoForContentIdPromise.then(function(oInfoObject) {
117
- return oInfoObject.contentIdRequestPossible ? oInfoObject.parametersForContentIdRequest.sRootExpand : null;
117
+ return oInfoObject.contentIdRequestPossible ? oInfoObject.parametersForContentIdRequest.sRootExpand : null;
118
118
  });
119
119
  });
120
120
  }
@@ -229,7 +229,7 @@ sap.ui.define(["sap/ui/base/Object",
229
229
  // The resulting object may contain properties context/draftAdministrativeData and targetSiblingKey
230
230
  // The object contains property 'draftAdministrativeData' when there exists a non-locking draft of another user (this can only be the case when bUnconditional is false)
231
231
  // The property, 'draftAdministrativeData' contains the draft administrative data of the non-locking draft.
232
- // When the editing can start, the object contains the property 'context',this property contains the context of the entity to be edited.
232
+ // When the editing can start, the object contains the property 'context',this property contains the context of the entity to be edited.
233
233
  // The object also holds 'targetSiblingKey' property containing the target sibling keys and treeNode info. in case of draft application and for non-draft application this property will hold value undefined
234
234
  function editEntity(bUnconditional) {
235
235
  if (oBusyHelper.isBusy()) {
@@ -439,7 +439,7 @@ sap.ui.define(["sap/ui/base/Object",
439
439
  aSelectedContextPath.push(oContext.sContextPath);
440
440
  });
441
441
  var oParsedUpdateResult = fnParseResponse(aSelectedContextPath, aUpdateResults);
442
- // The error and warning scenarios are handled via transient handling.
442
+ // The error and warning scenarios are handled via transient handling.
443
443
  // We only need to show message to user regarding records that are updated, Hence returning only successfull responses.
444
444
  // In future if we need to show/use info about error and warning cases, oParsedUpdateResult contains that info as well.
445
445
  var aSuccess = mapToArray(oParsedUpdateResult.mSuccess);
@@ -507,7 +507,7 @@ sap.ui.define(["sap/ui/base/Object",
507
507
  function saveEntityImpl(resolve, reject, oCreateWithDialogFilters) {
508
508
  var oMessageManager = sap.ui.getCore().getMessageManager();
509
509
  var oModel = oController.getView().getModel();
510
-
510
+
511
511
  // Create mandatory check (not performed in case of Create with dialogue).
512
512
  if (!oCreateWithDialogFilters) {
513
513
  var aMandatoryFields = fnGetAllMandatoryFields(oModel),
@@ -519,7 +519,7 @@ sap.ui.define(["sap/ui/base/Object",
519
519
  return;
520
520
  }
521
521
  }
522
-
522
+
523
523
  // Prepare message handling by storing information which messages have been available before saving
524
524
  var oContextFilter = oCreateWithDialogFilters ? oCreateWithDialogFilters : oServices.oTemplateCapabilities.oMessageButtonHelper && oServices.oTemplateCapabilities.oMessageButtonHelper.getContextFilter(false);
525
525
  var aMessagesBeforeSave = CRUDHelper.fnGetMessagesFromContextFilter(oContextFilter, oMessageManager, true);
@@ -615,7 +615,7 @@ sap.ui.define(["sap/ui/base/Object",
615
615
 
616
616
  /*
617
617
  * Calls generic app layer to get default values. If oPredefinedValues are passed then it overrides the values returned from the default values function.
618
- * Default value function is invoked when the application is non-draft (or) inline creation rows feature enabled
618
+ * Default value function is invoked when the application is non-draft (or) inline creation rows feature enabled
619
619
  * @param {object} oEventSource to extract context and entityset
620
620
  * @param {object} mPredefinedValues existing predefined values
621
621
  * @param {boolean} bIsInlineCreationRowsEnabled is inline creation rows feature enabled
@@ -727,11 +727,15 @@ sap.ui.define(["sap/ui/base/Object",
727
727
  isDraftEnabled: oComponentUtils.isDraftEnabled(),
728
728
  contextIndependentParameterData: mContextIndependentParameterData,
729
729
  expand: mParameters.sRootExpand,
730
- operationGrouping: sOperationGrouping
730
+ operationGrouping: sOperationGrouping,
731
+ handleFocus: oServices.controllerServices && oServices.controllerServices.getRestoreFocusHelper
732
+ ? oServices.controllerServices.getRestoreFocusHelper().rememberFocus
733
+ : null
731
734
  });
732
735
  oActionProcessor.call(bIsStrict).then(function(oResult){
733
736
  var oSessionParams = {};
734
737
  oSessionParams.actionLabel = sFunctionImportLabel;
738
+ oServices.oApplication.setNextFocus(Function.prototype);
735
739
  oBusyHelper.setBusy(oResult.executionPromise, null, oSessionParams);
736
740
  oResult.executionPromise.then(fnHandleResponse,fnHandleResponse);
737
741
  }, fnActionPopUpReject);
@@ -812,6 +816,11 @@ sap.ui.define(["sap/ui/base/Object",
812
816
  });
813
817
  });
814
818
  oServices.oApplication.navigateToDetailContextIfPossible(oResponseContext, false, oContextInfo.bIsDraft ? 2 * (1 + oContextInfo.bIsCreate) : 1, oContextInfo);
819
+ } else {
820
+ // Restore focus, because we don't navigate out
821
+ oServices.oApplication.setNextFocus(function(oBeforeData, fnFallback){
822
+ fnFallback();
823
+ });
815
824
  }
816
825
  var oTableBindingInfo = oSourceControlHandler && oSourceControlHandler.getBindingInfo();
817
826
  var oListBinding = oTableBindingInfo && oTableBindingInfo.binding;
@@ -906,7 +915,7 @@ sap.ui.define(["sap/ui/base/Object",
906
915
  var oModel = oView.getModel();
907
916
  var sEntitySet, sBindingPath;
908
917
  var iViewLevel = oComponentUtils.getViewLevel();
909
- if (iViewLevel > 0) { // Details page
918
+ if (iViewLevel > 0) { // Details page
910
919
  var sTableBindingPath = oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oCommonUtils.getOwnerPresentationControl(oTable)).getBindingInfo().path;
911
920
  sEntitySet = oTable.getEntitySet();
912
921
  // create binding path
@@ -922,14 +931,14 @@ sap.ui.define(["sap/ui/base/Object",
922
931
  var fnSetBusy = function(oBusyPromise){
923
932
  var oBusyHelper = oServices.oApplication.getBusyHelper();
924
933
  oBusyHelper.setBusy(oBusyPromise);
925
- oServices.oApplication.setNextFocus(Function.prototype); // Prevent default handling in error case. Focus for success should be set there.
934
+ oServices.oApplication.setNextFocus(Function.prototype); // Prevent default handling in error case. Focus for success should be set there.
926
935
  };
927
936
  // Method will be called in case the create has to be performed on a DraftEntity. For better performance Fe would check
928
937
  // whether the expand information in the PreProcessor data is stored in the localStorage. In case this is available Fe
929
938
  // will pass the expand nodes and read the newly created instance information. PreProcessor data is always stored with
930
939
  // a cache key which ensures Fe don't work with stale data
931
-
932
-
940
+
941
+
933
942
  var oTargetComponentUtils = oServices.oApplication.getComponentUtilsIfLoaded(sEntitySet);
934
943
  var getRootExpand = oTargetComponentUtils && oTargetComponentUtils.viewRegistered && !oTargetComponentUtils.fnViewRegisteredResolve && oTargetComponentUtils.getRootExpand;
935
944
  var oInfoForContentIdPromise = CacheHelper.getInfoForContentIdPromise(sEntitySet, oModel, oAppComponent.getId(), getRootExpand);
@@ -942,7 +951,10 @@ sap.ui.define(["sap/ui/base/Object",
942
951
  oController: oController,
943
952
  oApplicationController: oServices.oApplicationController,
944
953
  bUseNewActionForCreate: oSettings && oSettings.useNewActionForCreate,
945
- fnSetBusy: fnSetBusy
954
+ fnSetBusy: fnSetBusy,
955
+ handleFocus: oServices.controllerServices && oServices.controllerServices.getRestoreFocusHelper
956
+ ? oServices.controllerServices.getRestoreFocusHelper().rememberFocus
957
+ : null
946
958
  };
947
959
  var oCreatePromise = CRUDHelper.create(oServices.oDraftController,
948
960
  sEntitySet,
@@ -982,7 +994,7 @@ sap.ui.define(["sap/ui/base/Object",
982
994
  });
983
995
  });
984
996
  }
985
-
997
+
986
998
 
987
999
  /* eslint-disable */
988
1000
  var handleError = testableHelper.testable(handleError, "handleError");
@@ -987,7 +987,7 @@ sap.ui.define(["sap/ui/base/Object",
987
987
  onTeamsCollabOptionPress: onTeamsCollabOptionPress.bind(this),
988
988
  onContactDetails: onContactDetails.bind(this),
989
989
  // Ignoring the below events since quick view forms don't handle side effects. Handle them if support is added in the future.
990
- onSmartFieldModeToggled: Function.prototype,
990
+ onSmartFieldModeToggled: Function.prototype,
991
991
  onSmartFieldModelValueChanged: Function.prototype,
992
992
  // Ignoring this event as SmartMultiInput isn't rendered in the quick view smart form.
993
993
  submitChangesForSmartMultiInput: Function.prototype,
@@ -2039,8 +2039,8 @@ sap.ui.define(["sap/ui/base/Object",
2039
2039
  oPrivModel.setProperty("/generic/controlProperties/" + "fileUploader/" + sEntitySet, oFileUploaderSettings);
2040
2040
  }
2041
2041
 
2042
- // URLEncoded filenames are decoded by Chrome, Firefox browsers but Safari doesn't do this automatically.
2043
- // Therefore, FE decodes it on our side & ensure actual file name is used for further processing.
2042
+ // URLEncoded filenames are decoded by Chrome, Firefox browsers but Safari doesn't do this automatically.
2043
+ // Therefore, FE decodes it on our side & ensure actual file name is used for further processing.
2044
2044
  oFileUploaderSettings.fileName = decodeURIComponent(oEvent.mParameters.fileName);
2045
2045
  var fileType = oEvent.mParameters.requestHeaders.find(function(requestHeader) {
2046
2046
  if (requestHeader.name === "Content-Type") {
@@ -2713,14 +2713,14 @@ sap.ui.define(["sap/ui/base/Object",
2713
2713
 
2714
2714
  /**
2715
2715
  * Performs intent based navigation and opens the given line item context in a new tab.
2716
- *
2716
+ *
2717
2717
  * @param {object} oOutbound The target outbound intent (contains semantic object and action)
2718
2718
  * @param {sap.ui.model.Context} oLineItemContext The line item context to be opened in new tab
2719
2719
  * @param {sap.ui.comp.smartfilterbar.SmartFilterBar} oSmartFilterBar The filter bar
2720
2720
  * @param {Function} fnHandleError The error handling function
2721
2721
  */
2722
2722
  function fnNavigateIntentOnNewTab(oOutbound, oLineItemContext, oSmartFilterBar, fnHandleError) {
2723
- var sSelectionVariant,
2723
+ var sSelectionVariant,
2724
2724
  oSelectionVariant,
2725
2725
  sNavMode = "explace"; // "explace" is the navigation mode for opening in new tab
2726
2726
  // Get selection variant from filter bar
@@ -220,6 +220,10 @@ sap.ui.define(["sap/ui/base/Object",
220
220
  function getText(sKey, aArguments, bIgnoreKeyFallback) {
221
221
  var oComponent = oController.getOwnerComponent();
222
222
  oResourceBundle = oResourceBundle || oComponent.getModel("i18n").getResourceBundle();
223
+ // "aArguments" should be an array
224
+ if (aArguments && !Array.isArray(aArguments)) {
225
+ aArguments = [aArguments];
226
+ }
223
227
  // with bIgnoreKeyFallback =true, resourceBundle does not write a console error and returns undefined instead of the key, if the text doesn't exist
224
228
  // currently only used for the texts that can be overridden more specific than per page in getContextText
225
229
  return oResourceBundle.getText(sKey, aArguments, bIgnoreKeyFallback);
@@ -910,13 +910,15 @@ sap.ui.define([
910
910
  oViewState[sKey] = oState[sKey];
911
911
  }
912
912
  }
913
- (oComponentRegistryEntry.methods.applyState || Function.prototype)(oViewState, bIsSameAsLast);
913
+ // The result of "applyState" can be a Promise or undefined.
914
+ var vStateAppliedResult = (oComponentRegistryEntry.methods.applyState || Function.prototype)(oViewState, bIsSameAsLast);
914
915
  var fnApplyReuseInfo = function(oProxy, sMyKey){
915
916
  if (oProxy.component.stApplyState){
916
917
  oProxy.component.stApplyState(oEmbeddedStates[sMyKey] || Object.create(null), bIsSameAsLast);
917
918
  }
918
919
  };
919
920
  Promise.all([oComponentRegistryEntry.oViewRenderedPromise, oHeaderDataAvailablePromise]).then(fnExecuteForAllReuseComponents.bind(null, mReuseComponentProxies, fnApplyReuseInfo));
921
+ return vStateAppliedResult;
920
922
  },
921
923
  oComponent: oComponent
922
924
  }, oStatePreserverSettings);
@@ -0,0 +1,66 @@
1
+ sap.ui.define(
2
+ [
3
+ "sap/ui/base/Object",
4
+ "sap/base/util/extend",
5
+ "sap/suite/ui/generic/template/genericUtilities/controlHelper"
6
+ ],
7
+ function (BaseObject, extend, controlHelper) {
8
+ "use strict";
9
+
10
+ /**
11
+ * Helper class for handling focus on controller level.
12
+ * Used to save and restore focus of specific control
13
+ *
14
+ * Should be accessible from controller getRestoreFocusHelper() method.
15
+ *
16
+ * Then necessary store current focus information with rememberFocus() method
17
+ * Restoring focus is done thorough invoking restoreFocus() method. After restoring focus, it will be reset.
18
+ */
19
+
20
+ function getMethods() {
21
+ var sControlIdWithLastFocus = null;
22
+
23
+ /**
24
+ * Store control id which have focus
25
+ * @param {string} control is that have focus
26
+ */
27
+ function rememberFocus(sFocusId) {
28
+ sControlIdWithLastFocus = sFocusId;
29
+ }
30
+
31
+ /**
32
+ * Restores focus to previously remembered control Id
33
+ * @returns undefined
34
+ */
35
+ function restoreFocus() {
36
+ if (!sControlIdWithLastFocus) {
37
+ return;
38
+ }
39
+ controlHelper.focusControl(sControlIdWithLastFocus);
40
+ resetFocus();
41
+ }
42
+
43
+ /**
44
+ * Clear currently saved previously focused control id
45
+ */
46
+ function resetFocus() {
47
+ sControlIdWithLastFocus = null;
48
+ }
49
+
50
+ return {
51
+ rememberFocus: rememberFocus,
52
+ restoreFocus: restoreFocus,
53
+ resetFocus: resetFocus
54
+ };
55
+ }
56
+
57
+ return BaseObject.extend(
58
+ "sap.suite.ui.generic.template.lib.RestoreFocusHelper",
59
+ {
60
+ constructor: function () {
61
+ extend(this, getMethods());
62
+ }
63
+ }
64
+ );
65
+ }
66
+ );
@@ -286,13 +286,16 @@ sap.ui.define(["sap/ui/base/Object",
286
286
  }
287
287
  }
288
288
 
289
- function fnRealizeStatePromise(bIsSameAsLast, oNewState){
289
+ async function fnRealizeStatePromise(bIsSameAsLast, oNewState){
290
290
  fnTransferStateToAnalyzedState(oNewState);
291
291
  var oState = Object.create(null);
292
292
  for (var sKey in oNewState){
293
293
  oState[sKey] = oNewState[sKey].data;
294
294
  }
295
- oSettings.applyState(oState, bIsSameAsLast);
295
+ // Wait until the app state is applied to the page
296
+ // and then proceed with storing the latest app state.
297
+ await oSettings.applyState(oState, bIsSameAsLast);
298
+
296
299
  if (fnNotifyRealizedAppStateConsistent){
297
300
  fnNotifyRealizedAppStateConsistent();
298
301
  fnNotifyRealizedAppStateConsistent = null;
@@ -289,6 +289,7 @@ sap.ui.define([
289
289
  oLogger.info("Skip Init view as AppComponent is no longer active");
290
290
  return;
291
291
  }
292
+ oTemplateUtils.oServices.controllerServices = Object.freeze(oMethods.controllerServices || {});
292
293
  oTemplateUtils.oServices.oApplicationController.registerView(oView);
293
294
  oTemplateUtils.oServices.oDataLossHandler = oAppRegistryEntry.oTemplateContract.oDataLossHandler;
294
295
  oTemplateUtils.oServices.oInsightsFECardProvider = oAppRegistryEntry.oTemplateContract.oInsightsFECardProvider;
@@ -338,7 +339,7 @@ sap.ui.define([
338
339
  // ~ onSuspend: This method is called after the keep alive application is left and becoming hidden
339
340
  // ~ onRestore: This method is called after the keep alive application is opened again by the user
340
341
  // ~ getCurrentState, getInitialState, applyState: functions that are used by the StatePreserver attached to this component.
341
- // ~ getStatePreserverSettings: Provide additional settings for the StatePreserver (curently only callAlways) is used
342
+ // ~ getStatePreserverSettings: Provide additional settings for the StatePreserver (curently only callAlways) is used
342
343
  // ~ executeAfterInvokeActionFromExtensionAPI: This method is called from CommonUtils fnInvokeActionsForExtensionAPI as callback to execute floorplan specific
343
344
  // code after invokeactions is called.
344
345
  // ~ getUrlParameterInfo a function that allows the instance to pass its current state into url parameters. getUrlParameterInfo must return
@@ -435,7 +436,7 @@ sap.ui.define([
435
436
 
436
437
  oComponentDefinition.onBeforeRendering = function() {
437
438
  var sComponentId = this.getId();
438
- oLogger.info("BeforeRendering called for TemplateComponent " + sComponentId);
439
+ oLogger.info("BeforeRendering called for TemplateComponent " + sComponentId);
439
440
  var oComponentRegistryEntry = getComponentRegistryEntry(this);
440
441
  (TemplateComponent.prototype.onBeforeRendering || Function.prototype).bind(this, oComponentRegistryEntry).apply(this, arguments);
441
442
  var oMethods = oComponentRegistryEntry.methods;
@@ -445,7 +446,7 @@ sap.ui.define([
445
446
 
446
447
  oComponentDefinition.onAfterRendering = function() {
447
448
  var sComponentId = this.getId();
448
- oLogger.info("AfterRendering called for TemplateComponent " + sComponentId);
449
+ oLogger.info("AfterRendering called for TemplateComponent " + sComponentId);
449
450
  var oComponentRegistryEntry = getComponentRegistryEntry(this);
450
451
  if (oComponentRegistryEntry.fnViewRenderdResolve && !oComponentRegistryEntry.fnViewRegisteredResolve){
451
452
  oComponentRegistryEntry.fnViewRenderdResolve();
@@ -477,7 +478,7 @@ sap.ui.define([
477
478
  };
478
479
 
479
480
  oComponentDefinition.onDeactivate = Function.prototype;
480
-
481
+
481
482
  return TemplateComponent.extend(sComponentNameFull, oComponentDefinition);
482
483
  },
483
484
 
@@ -3,8 +3,10 @@ sap.ui.define([
3
3
  "sap/base/util/extend",
4
4
  "sap/suite/ui/generic/template/lib/filterHelper",
5
5
  "sap/suite/ui/generic/template/genericUtilities/FeLogger",
6
- "sap/ui/model/FilterOperator"
7
- ], function(BaseObject, extend, filterHelper, FeLogger, FilterOperator) {
6
+ "sap/ui/model/FilterOperator",
7
+ 'sap/ui/model/Filter',
8
+ 'sap/suite/ui/generic/template/js/AnnotationHelper'
9
+ ], function(BaseObject, extend, filterHelper, FeLogger, FilterOperator,Filter,AnnotationHelper) {
8
10
  'use strict';
9
11
 
10
12
  /*
@@ -452,12 +454,18 @@ sap.ui.define([
452
454
  if (bOperatorAvailable) {
453
455
  aEasyFilterTokens.forEach(function(oToken) {
454
456
  if (oToken.operator === oFilterItem.sOperator) {
455
- oToken.selectedValues.push(oFilterItem.oValue1);
457
+ oToken.selectedValues.push({
458
+ value: oFilterItem.oValue1,
459
+ description: oFilterItem.oValue1
460
+ });
456
461
  }
457
462
  });
458
463
  } else {
459
464
  oPropertyToken.operator = oFilterItem.sOperator;
460
- oPropertyToken.selectedValues.push(oFilterItem.oValue1);
465
+ oPropertyToken.selectedValues.push({
466
+ value: oFilterItem.oValue1,
467
+ description: oFilterItem.oValue1
468
+ });
461
469
  aEasyFilterTokens.push(oPropertyToken);
462
470
  }
463
471
  }
@@ -485,6 +493,184 @@ sap.ui.define([
485
493
  }
486
494
  }
487
495
 
496
+ function getFiltersForDataFetching(key,keySpecificSelectedResult) {
497
+ const aFilters = [];
498
+
499
+ for (var i = 0; i < keySpecificSelectedResult.length;++i) {
500
+ const result = keySpecificSelectedResult[i];
501
+ if (result.operator === FilterOperator.BT || result.operator === FilterOperator.NB) {
502
+ aFilters.push(new Filter({
503
+ path: key,
504
+ operator: result.operator,
505
+ value1: result.selectedValues[0],
506
+ value2: result.selectedValues[1]
507
+ }));
508
+ } else {
509
+ for (var i = 0;i < result.selectedValues.length;++i) {
510
+ aFilters.push(new Filter({
511
+ path: key,
512
+ operator: result.operator,
513
+ value1: result.selectedValues[i]
514
+ }));
515
+ }
516
+ }
517
+ }
518
+ return aFilters;
519
+ }
520
+
521
+ function onDataFetcher(key,keySpecificSelectedResult,totalAIResponse) {
522
+ return new Promise((resolve,reject)=>{
523
+
524
+ var aFinalResponse = [];
525
+ var oOwnerFilterControl = oState.oSmartFilterbar;
526
+ var sEntitySet = oController.getOwnerComponent().getEntitySet();
527
+ var oEntityType = oTemplateUtils.oCommonUtils.getMetaModelEntityType(sEntitySet);
528
+ var oSFBModel = oOwnerFilterControl.getModel();
529
+ var oSFBMetaModel = oSFBModel.getMetaModel();
530
+ var aFilters = getFiltersForDataFetching(key,keySpecificSelectedResult);
531
+ var oProperty = oSFBMetaModel.getODataProperty(oEntityType, key);
532
+ var sPropertyPath = oSFBMetaModel.getODataProperty(oEntityType, key,true);
533
+ var isValueHelpTableAvailable = AnnotationHelper.isValueHelpTableAvailable(oProperty);
534
+
535
+ if (isValueHelpTableAvailable) {
536
+ var oPropertyContext = oSFBMetaModel.createBindingContext(sPropertyPath);
537
+ var oVHPromise = oSFBMetaModel.getODataValueLists(oPropertyContext);
538
+ var filtersLength = aFilters.length;
539
+ // //Every Search on a value, create a seperate call to backend,but they are grouped into one batch
540
+ // //We need to ensure that once all calls are completed inside the batch to resolve the promise, else the system would be waiting indefenitely
541
+ var ctr = 0;
542
+ let fnForDescription = (oResponse,aMatchedFilterResults,sTextArrangementPath,sTextArrangement) => {
543
+ ++ctr;
544
+ var aResults = oResponse.results;
545
+
546
+ //Check the description is present and follow the textArrangement annotation as well
547
+ //If the value is not present ,make the ID and Description same
548
+ aMatchedFilterResults.forEach((oFilter)=>{
549
+ var result = aResults.find((res)=>res[key] === oFilter.getValue1());
550
+ if (result) {
551
+ aFinalResponse.push({
552
+ operator: FilterOperator.EQ,
553
+ selectedValues: [{
554
+ value: result[key],
555
+ description: AnnotationHelper.getTextArrangementFinalString(result,key,sTextArrangementPath.split("/")[1],sTextArrangement)
556
+ }]
557
+ });
558
+ } else {
559
+ //Ideally description should be present, if in case its not present we will fallback to our default case where value and description would be same
560
+ aFinalResponse.push(getkeySpecifiedResultFromFilters(oFilter));
561
+ }
562
+ });
563
+
564
+ if (ctr === filtersLength) {
565
+ resolve(aFinalResponse);
566
+ }
567
+ };
568
+
569
+
570
+
571
+ let fnSuccessForValueList = (oResponse,oFilter,sValueListEntity) => {
572
+ var oValueHelpEntity = oTemplateUtils.oCommonUtils.getMetaModelEntityType(sValueListEntity);
573
+ var oValueHelpProperty = oSFBMetaModel.getODataProperty(oValueHelpEntity, key);
574
+ var aResults = oResponse.results;
575
+ var sTextArrangementPath = AnnotationHelper.getTextArrangementPath(oValueHelpProperty);
576
+ var sTextArrangement = AnnotationHelper.getTextArrangement(oValueHelpEntity,oValueHelpProperty) || "idOnly";
577
+ var navigationProperty = null;
578
+ var sEntityForTextDescription = null;
579
+
580
+ if (sTextArrangementPath && sTextArrangementPath.split("/").length > 1) {
581
+ navigationProperty = sTextArrangementPath.split("/")[0];
582
+ sEntityForTextDescription = oSFBMetaModel.getODataAssociationSetEnd(oValueHelpEntity,navigationProperty).entitySet;
583
+ }
584
+
585
+ //We are triggering the below call, only for fetching of the TextDescription.If its a different entity than ValueList only then trigger it
586
+ if (aResults.length === 0) {
587
+ ++ctr;
588
+ aFinalResponse.push(getkeySpecifiedResultFromFilters(oFilter));
589
+ } else if (aResults.length !== 0 && sEntityForTextDescription && sValueListEntity !== sEntityForTextDescription) {
590
+ var aAllMatchedResults = aResults.map((result)=>{
591
+ return result[key];
592
+ });
593
+ var aMatchedFilterResults = aAllMatchedResults.map((matchedResult)=>{
594
+ return new Filter({
595
+ path: key,
596
+ operator: FilterOperator.EQ,
597
+ value1:matchedResult
598
+ });
599
+ });
600
+ // The below code only be executed when the textDescription and ValueList entities are different
601
+ oSFBModel.read("/" + sEntityForTextDescription, {
602
+ filters: aMatchedFilterResults,
603
+ success : function(response) {
604
+ fnForDescription(response,aMatchedFilterResults);
605
+ }
606
+ });
607
+ } else {
608
+ //The below condition is when valueList entity and navigation property entity are same
609
+ ++ctr;
610
+ aResults.forEach((result)=>{
611
+ aFinalResponse.push({
612
+ operator: FilterOperator.EQ,
613
+ selectedValues: [{
614
+ value: result[key],
615
+ description: AnnotationHelper.getTextArrangementFinalString(result,key,
616
+ sTextArrangementPath,sTextArrangement)
617
+ }]
618
+ });
619
+ });
620
+ }
621
+
622
+ if (ctr === filtersLength) {
623
+ resolve(aFinalResponse);
624
+ }
625
+ };
626
+
627
+ oVHPromise.then((oValueList)=>{
628
+ var oValueListDefaultBinding = oValueList[""];
629
+ var sValueListEntity = oValueListDefaultBinding.CollectionPath.String;
630
+ //Get All Records using $search
631
+ aFilters.forEach((oFilter)=>{
632
+ oSFBModel.read("/" + sValueListEntity, {
633
+ urlParameters : {
634
+ search: oFilter.getValue1()
635
+ },
636
+ success : function(response) {
637
+ fnSuccessForValueList(response,oFilter,sValueListEntity);
638
+ }
639
+ });
640
+ });
641
+ });
642
+
643
+ } else {
644
+ //When there is no valueList associate, just return the original value in CodeList type
645
+ aFilters.forEach((oFilter)=>aFinalResponse.push(getkeySpecifiedResultFromFilters(oFilter)));
646
+ resolve(aFinalResponse);
647
+ }
648
+ });
649
+ }
650
+
651
+ function getkeySpecifiedResultFromFilters(oFilter) {
652
+ var values = [];
653
+ if (oFilter.getOperator() === FilterOperator.BT || oFilter.getOperator() === FilterOperator.NB) {
654
+ var values = [{
655
+ value: oFilter.getValue1(),
656
+ description: oFilter.getValue1()
657
+ },{
658
+ value: oFilter.getValue2(),
659
+ description: oFilter.getValue2()
660
+ }];
661
+ } else {
662
+ values.push({
663
+ value: oFilter.getValue1(),
664
+ description: oFilter.getValue1()
665
+ });
666
+ }
667
+ return {
668
+ operator: oFilter.getOperator(),
669
+ selectedValues: values
670
+ };
671
+ }
672
+
673
+
488
674
  return {
489
675
  getEasyFilterBar : fnGetEasyFilterBar,
490
676
  initialiseEasyFilterBar : fnInitialiseEasyFilterBar,
@@ -497,7 +683,9 @@ sap.ui.define([
497
683
  onTokensChanged: fnTokensChanged,
498
684
  onShowValueHelp: fnShowValueHelp,
499
685
  onFilterChange : fnOnFilterChange,
500
- handleVariantLoad : fnHandleVariantLoad
686
+ handleVariantLoad : fnHandleVariantLoad,
687
+ onDataFetcher,
688
+ getkeySpecifiedResultFromFilters
501
689
  };
502
690
  }
503
691