@openui5/sap.ui.mdc 1.120.6 → 1.121.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 (334) hide show
  1. package/.eslintrc.json +14 -1
  2. package/.reuse/dep5 +23 -21
  3. package/THIRDPARTY.txt +6 -43
  4. package/package.json +4 -4
  5. package/src/sap/ui/mdc/.library +1 -1
  6. package/src/sap/ui/mdc/.supportrc +3 -0
  7. package/src/sap/ui/mdc/ActionToolbar.js +68 -32
  8. package/src/sap/ui/mdc/AggregationBaseDelegate.js +24 -26
  9. package/src/sap/ui/mdc/BaseDelegate.js +13 -15
  10. package/src/sap/ui/mdc/Chart.js +1511 -1495
  11. package/src/sap/ui/mdc/ChartDelegate.js +115 -120
  12. package/src/sap/ui/mdc/ChartRenderer.js +75 -74
  13. package/src/sap/ui/mdc/Control.js +21 -9
  14. package/src/sap/ui/mdc/DefaultTypeMap.js +32 -33
  15. package/src/sap/ui/mdc/Element.js +22 -10
  16. package/src/sap/ui/mdc/Field.js +28 -28
  17. package/src/sap/ui/mdc/FilterBar.js +58 -74
  18. package/src/sap/ui/mdc/FilterBarDelegate.js +41 -41
  19. package/src/sap/ui/mdc/FilterField.js +26 -20
  20. package/src/sap/ui/mdc/Link.js +192 -163
  21. package/src/sap/ui/mdc/LinkDelegate.js +78 -6
  22. package/src/sap/ui/mdc/MultiValueField.js +48 -32
  23. package/src/sap/ui/mdc/Table.js +311 -230
  24. package/src/sap/ui/mdc/TableDelegate.js +265 -204
  25. package/src/sap/ui/mdc/ValueHelp.js +78 -47
  26. package/src/sap/ui/mdc/ValueHelpDelegate.js +184 -97
  27. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +50 -10
  28. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +13 -13
  29. package/src/sap/ui/mdc/chart/ChartImplementationContainer.js +21 -24
  30. package/src/sap/ui/mdc/chart/ChartImplementationContainerRenderer.js +39 -38
  31. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +116 -116
  32. package/src/sap/ui/mdc/chart/ChartToolbar.js +417 -405
  33. package/src/sap/ui/mdc/chart/ChartTypeButton.js +37 -22
  34. package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +108 -94
  35. package/src/sap/ui/mdc/chart/DrillStackHandler.js +21 -21
  36. package/src/sap/ui/mdc/chart/Item.js +64 -66
  37. package/src/sap/ui/mdc/chart/PropertyHelper.js +26 -65
  38. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +4 -4
  39. package/src/sap/ui/mdc/chart/Util.js +99 -0
  40. package/src/sap/ui/mdc/condition/Condition.js +103 -103
  41. package/src/sap/ui/mdc/condition/ConditionConverter.js +15 -17
  42. package/src/sap/ui/mdc/condition/ConditionModel.js +36 -37
  43. package/src/sap/ui/mdc/condition/ConditionModelPropertyBinding.js +83 -83
  44. package/src/sap/ui/mdc/condition/ConditionValidateException.js +55 -54
  45. package/src/sap/ui/mdc/condition/FilterConverter.js +43 -42
  46. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +1808 -1792
  47. package/src/sap/ui/mdc/condition/Operator.js +854 -839
  48. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +386 -387
  49. package/src/sap/ui/mdc/condition/RangeOperator.js +107 -106
  50. package/src/sap/ui/mdc/designtime/Util.js +48 -48
  51. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +40 -39
  52. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbarAction.designtime.js +42 -43
  53. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +18 -20
  54. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +73 -80
  55. package/src/sap/ui/mdc/designtime/field/FieldBase.designtime.js +3 -4
  56. package/src/sap/ui/mdc/designtime/field/FilterField.designtime.js +2 -3
  57. package/src/sap/ui/mdc/designtime/field/MultiValueField.designtime.js +2 -3
  58. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +6 -6
  59. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +2 -2
  60. package/src/sap/ui/mdc/designtime/library.designtime.js +1 -1
  61. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +22 -16
  62. package/src/sap/ui/mdc/enum/ActionToolbarActionAlignment.js +7 -2
  63. package/src/sap/ui/mdc/enum/BaseType.js +7 -2
  64. package/src/sap/ui/mdc/enum/ConditionValidated.js +2 -2
  65. package/src/sap/ui/mdc/enum/ContentMode.js +9 -4
  66. package/src/sap/ui/mdc/enum/EditMode.js +8 -3
  67. package/src/sap/ui/mdc/enum/FieldDisplay.js +7 -2
  68. package/src/sap/ui/mdc/enum/FilterBarValidationStatus.js +32 -32
  69. package/src/sap/ui/mdc/enum/LinkType.js +7 -1
  70. package/src/sap/ui/mdc/enum/OperatorOverwrite.js +3 -3
  71. package/src/sap/ui/mdc/enum/OperatorValueType.js +2 -2
  72. package/src/sap/ui/mdc/enum/ProcessingStrategy.js +2 -2
  73. package/src/sap/ui/mdc/enum/PropagationReason.js +36 -36
  74. package/src/sap/ui/mdc/enum/ReasonMode.js +7 -2
  75. package/src/sap/ui/mdc/enum/SelectType.js +8 -3
  76. package/src/sap/ui/mdc/enums/ActionToolbarActionAlignment.js +2 -2
  77. package/src/sap/ui/mdc/enums/BaseType.js +2 -2
  78. package/src/sap/ui/mdc/enums/ChartItemRoleType.js +52 -52
  79. package/src/sap/ui/mdc/enums/ChartItemType.js +22 -22
  80. package/src/sap/ui/mdc/enums/ChartP13nMode.js +39 -39
  81. package/src/sap/ui/mdc/enums/ChartToolbarActionType.js +34 -40
  82. package/src/sap/ui/mdc/enums/ConditionValidated.js +2 -2
  83. package/src/sap/ui/mdc/enums/ContentMode.js +4 -4
  84. package/src/sap/ui/mdc/enums/FieldDisplay.js +2 -2
  85. package/src/sap/ui/mdc/enums/FieldEditMode.js +2 -2
  86. package/src/sap/ui/mdc/enums/FilterBarP13nMode.js +27 -27
  87. package/src/sap/ui/mdc/enums/FilterBarValidationStatus.js +32 -32
  88. package/src/sap/ui/mdc/enums/LinkType.js +1 -1
  89. package/src/sap/ui/mdc/enums/OperatorName.js +14 -14
  90. package/src/sap/ui/mdc/enums/OperatorOverwrite.js +3 -3
  91. package/src/sap/ui/mdc/enums/OperatorValueType.js +2 -2
  92. package/src/sap/ui/mdc/enums/ProcessingStrategy.js +2 -2
  93. package/src/sap/ui/mdc/enums/ReasonMode.js +2 -2
  94. package/src/sap/ui/mdc/enums/TableGrowingMode.js +33 -33
  95. package/src/sap/ui/mdc/enums/TableMultiSelectMode.js +27 -25
  96. package/src/sap/ui/mdc/enums/TableP13nMode.js +44 -45
  97. package/src/sap/ui/mdc/enums/TableRowActionType.js +31 -0
  98. package/src/sap/ui/mdc/enums/TableRowCountMode.js +26 -27
  99. package/src/sap/ui/mdc/enums/TableSelectionMode.js +40 -36
  100. package/src/sap/ui/mdc/enums/TableType.js +33 -34
  101. package/src/sap/ui/mdc/enums/ValueHelpPropagationReason.js +31 -31
  102. package/src/sap/ui/mdc/enums/ValueHelpSelectionType.js +2 -2
  103. package/src/sap/ui/mdc/field/ConditionType.js +806 -947
  104. package/src/sap/ui/mdc/field/ConditionTypeMixin.js +252 -0
  105. package/src/sap/ui/mdc/field/ConditionsType.js +412 -473
  106. package/src/sap/ui/mdc/field/CustomFieldInfo.js +7 -10
  107. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +185 -237
  108. package/src/sap/ui/mdc/field/FieldBase.js +266 -143
  109. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +72 -78
  110. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +9 -7
  111. package/src/sap/ui/mdc/field/FieldInfoBase.js +37 -38
  112. package/src/sap/ui/mdc/field/FieldInput.js +8 -10
  113. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +64 -63
  114. package/src/sap/ui/mdc/field/FieldInputRenderer.js +23 -23
  115. package/src/sap/ui/mdc/field/FieldMultiInput.js +8 -10
  116. package/src/sap/ui/mdc/field/FieldMultiInputRenderer.js +23 -23
  117. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +9 -7
  118. package/src/sap/ui/mdc/field/MultiValueFieldDelegate.js +7 -9
  119. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +6 -7
  120. package/src/sap/ui/mdc/field/TokenDisplay.js +10 -11
  121. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +14 -14
  122. package/src/sap/ui/mdc/field/TokenizerDisplay.js +14 -15
  123. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +40 -36
  124. package/src/sap/ui/mdc/field/content/BooleanContent.js +1 -1
  125. package/src/sap/ui/mdc/field/content/ContentFactory.js +25 -22
  126. package/src/sap/ui/mdc/field/content/DateContent.js +18 -14
  127. package/src/sap/ui/mdc/field/content/DateTimeContent.js +2 -2
  128. package/src/sap/ui/mdc/field/content/DefaultContent.js +9 -7
  129. package/src/sap/ui/mdc/field/content/LinkContent.js +34 -19
  130. package/src/sap/ui/mdc/field/content/SearchContent.js +1 -1
  131. package/src/sap/ui/mdc/field/content/TimeContent.js +3 -5
  132. package/src/sap/ui/mdc/field/content/UnitContent.js +10 -6
  133. package/src/sap/ui/mdc/field/splitValue.js +2 -4
  134. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1700 -1674
  135. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +4 -3
  136. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +4 -4
  137. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +6 -6
  138. package/src/sap/ui/mdc/filterbar/aligned/FilterContainer.js +10 -5
  139. package/src/sap/ui/mdc/filterbar/aligned/FilterItemLayout.js +8 -9
  140. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +70 -70
  141. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +6 -8
  142. package/src/sap/ui/mdc/filterbar/p13n/FilterGroupLayout.js +7 -8
  143. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +8 -9
  144. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +12 -7
  145. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +6 -5
  146. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +49 -47
  147. package/src/sap/ui/mdc/filterbar/vh/FilterBarDelegate.js +4 -5
  148. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +20 -21
  149. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +76 -47
  150. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +1 -1
  151. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +11 -13
  152. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +7 -4
  153. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +66 -12
  154. package/src/sap/ui/mdc/flexibility/ChartTypeFlex.js +3 -4
  155. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +43 -9
  156. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +170 -110
  157. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +3 -3
  158. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +52 -27
  159. package/src/sap/ui/mdc/flexibility/GroupFlex.js +66 -27
  160. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +258 -251
  161. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +25 -24
  162. package/src/sap/ui/mdc/flexibility/PanelItem.flexibility.js +5 -6
  163. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +4 -7
  164. package/src/sap/ui/mdc/flexibility/SortFlex.js +64 -21
  165. package/src/sap/ui/mdc/flexibility/Table.flexibility.js +7 -2
  166. package/src/sap/ui/mdc/flexibility/Util.js +55 -24
  167. package/src/sap/ui/mdc/flexibility/xConfigFlex.js +96 -98
  168. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +40 -41
  169. package/src/sap/ui/mdc/library.js +147 -43
  170. package/src/sap/ui/mdc/library.support.js +22 -0
  171. package/src/sap/ui/mdc/link/Factory.js +20 -29
  172. package/src/sap/ui/mdc/link/LinkItem.js +14 -15
  173. package/src/sap/ui/mdc/link/Log.js +15 -16
  174. package/src/sap/ui/mdc/link/Panel.js +102 -194
  175. package/src/sap/ui/mdc/link/PanelItem.js +13 -14
  176. package/src/sap/ui/mdc/link/PanelRenderer.js +1 -1
  177. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +4 -5
  178. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +4 -5
  179. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +4 -5
  180. package/src/sap/ui/mdc/messagebundle.properties +71 -44
  181. package/src/sap/ui/mdc/messagebundle_ar.properties +34 -19
  182. package/src/sap/ui/mdc/messagebundle_bg.properties +35 -20
  183. package/src/sap/ui/mdc/messagebundle_ca.properties +35 -20
  184. package/src/sap/ui/mdc/messagebundle_cnr.properties +34 -19
  185. package/src/sap/ui/mdc/messagebundle_cs.properties +34 -19
  186. package/src/sap/ui/mdc/messagebundle_cy.properties +34 -19
  187. package/src/sap/ui/mdc/messagebundle_da.properties +34 -19
  188. package/src/sap/ui/mdc/messagebundle_de.properties +34 -19
  189. package/src/sap/ui/mdc/messagebundle_el.properties +35 -20
  190. package/src/sap/ui/mdc/messagebundle_en.properties +385 -21
  191. package/src/sap/ui/mdc/messagebundle_en_GB.properties +34 -19
  192. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +35 -20
  193. package/src/sap/ui/mdc/messagebundle_es.properties +36 -21
  194. package/src/sap/ui/mdc/messagebundle_es_MX.properties +36 -21
  195. package/src/sap/ui/mdc/messagebundle_et.properties +34 -19
  196. package/src/sap/ui/mdc/messagebundle_fi.properties +35 -20
  197. package/src/sap/ui/mdc/messagebundle_fr.properties +34 -19
  198. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +34 -19
  199. package/src/sap/ui/mdc/messagebundle_hi.properties +35 -20
  200. package/src/sap/ui/mdc/messagebundle_hr.properties +34 -19
  201. package/src/sap/ui/mdc/messagebundle_hu.properties +35 -20
  202. package/src/sap/ui/mdc/messagebundle_id.properties +35 -20
  203. package/src/sap/ui/mdc/messagebundle_it.properties +34 -19
  204. package/src/sap/ui/mdc/messagebundle_iw.properties +34 -19
  205. package/src/sap/ui/mdc/messagebundle_ja.properties +34 -19
  206. package/src/sap/ui/mdc/messagebundle_kk.properties +35 -20
  207. package/src/sap/ui/mdc/messagebundle_ko.properties +34 -19
  208. package/src/sap/ui/mdc/messagebundle_lt.properties +35 -20
  209. package/src/sap/ui/mdc/messagebundle_lv.properties +35 -20
  210. package/src/sap/ui/mdc/messagebundle_mk.properties +35 -20
  211. package/src/sap/ui/mdc/messagebundle_ms.properties +34 -19
  212. package/src/sap/ui/mdc/messagebundle_nl.properties +34 -19
  213. package/src/sap/ui/mdc/messagebundle_no.properties +34 -19
  214. package/src/sap/ui/mdc/messagebundle_pl.properties +34 -19
  215. package/src/sap/ui/mdc/messagebundle_pt.properties +34 -19
  216. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +34 -19
  217. package/src/sap/ui/mdc/messagebundle_ro.properties +34 -19
  218. package/src/sap/ui/mdc/messagebundle_ru.properties +34 -19
  219. package/src/sap/ui/mdc/messagebundle_sh.properties +34 -19
  220. package/src/sap/ui/mdc/messagebundle_sk.properties +34 -19
  221. package/src/sap/ui/mdc/messagebundle_sl.properties +34 -19
  222. package/src/sap/ui/mdc/messagebundle_sr.properties +34 -19
  223. package/src/sap/ui/mdc/messagebundle_sv.properties +34 -19
  224. package/src/sap/ui/mdc/messagebundle_th.properties +35 -20
  225. package/src/sap/ui/mdc/messagebundle_tr.properties +34 -19
  226. package/src/sap/ui/mdc/messagebundle_uk.properties +34 -19
  227. package/src/sap/ui/mdc/messagebundle_vi.properties +34 -19
  228. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +34 -19
  229. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +34 -19
  230. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +171 -171
  231. package/src/sap/ui/mdc/mixin/DelegateMixin.js +24 -27
  232. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +26 -28
  233. package/src/sap/ui/mdc/mixin/PromiseMixin.js +16 -17
  234. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +37 -37
  235. package/src/sap/ui/mdc/mixin/delegate/FilterIntegrationDefault.js +66 -0
  236. package/src/sap/ui/mdc/odata/TypeMap.js +48 -49
  237. package/src/sap/ui/mdc/odata/TypeUtil.js +29 -30
  238. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +13 -14
  239. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +5 -6
  240. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +29 -22
  241. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +239 -447
  242. package/src/sap/ui/mdc/odata/v4/TypeMap.js +48 -49
  243. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +4 -4
  244. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +32 -17
  245. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +89 -88
  246. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +1550 -1558
  247. package/src/sap/ui/mdc/p13n/P13nBuilder.js +90 -85
  248. package/src/sap/ui/mdc/p13n/PersistenceProvider.js +1 -1
  249. package/src/sap/ui/mdc/p13n/PropertyHelper.js +3 -3
  250. package/src/sap/ui/mdc/p13n/StateUtil.js +85 -85
  251. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +101 -28
  252. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +383 -371
  253. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +181 -213
  254. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +6 -232
  255. package/src/sap/ui/mdc/p13n/panels/GroupView.js +78 -76
  256. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +68 -68
  257. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +62 -59
  258. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +102 -99
  259. package/src/sap/ui/mdc/p13n/subcontroller/AggregateController.js +79 -57
  260. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +51 -51
  261. package/src/sap/ui/mdc/p13n/subcontroller/ChartTypeController.js +27 -27
  262. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +44 -44
  263. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +134 -279
  264. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +85 -82
  265. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +173 -152
  266. package/src/sap/ui/mdc/p13n/subcontroller/SelectionController.js +9 -9
  267. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +88 -85
  268. package/src/sap/ui/mdc/rules/Table.support.js +181 -0
  269. package/src/sap/ui/mdc/table/Column.js +18 -25
  270. package/src/sap/ui/mdc/table/ColumnSettings.js +2 -4
  271. package/src/sap/ui/mdc/table/CreationRow.js +9 -9
  272. package/src/sap/ui/mdc/table/DragDropConfig.js +323 -317
  273. package/src/sap/ui/mdc/table/GridTableType.js +34 -26
  274. package/src/sap/ui/mdc/table/PropertyHelper.js +25 -27
  275. package/src/sap/ui/mdc/table/ResponsiveColumnSettings.js +10 -9
  276. package/src/sap/ui/mdc/table/ResponsiveTableType.js +33 -30
  277. package/src/sap/ui/mdc/table/RowActionItem.js +15 -44
  278. package/src/sap/ui/mdc/table/RowSettings.js +15 -15
  279. package/src/sap/ui/mdc/table/TableSettings.js +22 -16
  280. package/src/sap/ui/mdc/table/TableTypeBase.js +7 -8
  281. package/src/sap/ui/mdc/table/TreeTableType.js +7 -7
  282. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +11 -11
  283. package/src/sap/ui/mdc/table/menu/Item.js +15 -17
  284. package/src/sap/ui/mdc/table/menu/ItemContainer.js +13 -15
  285. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +20 -20
  286. package/src/sap/ui/mdc/table/utils/Personalization.js +9 -9
  287. package/src/sap/ui/mdc/themes/base/InfoPanel.less +2 -2
  288. package/src/sap/ui/mdc/themes/base/Table.less +1 -0
  289. package/src/sap/ui/mdc/ushell/LinkDelegate.js +98 -100
  290. package/src/sap/ui/mdc/ushell/SemanticObjectMapping.js +6 -7
  291. package/src/sap/ui/mdc/ushell/SemanticObjectMappingItem.js +5 -6
  292. package/src/sap/ui/mdc/ushell/SemanticObjectUnavailableAction.js +5 -6
  293. package/src/sap/ui/mdc/util/Common.js +4 -4
  294. package/src/sap/ui/mdc/util/DateUtil.js +197 -197
  295. package/src/sap/ui/mdc/util/FilterUtil.js +175 -168
  296. package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
  297. package/src/sap/ui/mdc/util/InfoBar.js +137 -137
  298. package/src/sap/ui/mdc/util/InfoBarRenderer.js +25 -24
  299. package/src/sap/ui/mdc/util/PromiseCache.js +33 -33
  300. package/src/sap/ui/mdc/util/PropertyHelper.js +179 -115
  301. package/src/sap/ui/mdc/util/TypeMap.js +48 -48
  302. package/src/sap/ui/mdc/util/TypeUtil.js +32 -32
  303. package/src/sap/ui/mdc/util/loadModules.js +10 -11
  304. package/src/sap/ui/mdc/valuehelp/Dialog.js +191 -176
  305. package/src/sap/ui/mdc/valuehelp/Popover.js +456 -125
  306. package/src/sap/ui/mdc/valuehelp/base/Container.js +77 -71
  307. package/src/sap/ui/mdc/valuehelp/base/Content.js +41 -39
  308. package/src/sap/ui/mdc/valuehelp/base/DefineConditionPanel.js +251 -196
  309. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +34 -35
  310. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +160 -107
  311. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +16 -20
  312. package/src/sap/ui/mdc/valuehelp/content/Bool.js +29 -35
  313. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +87 -90
  314. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +91 -90
  315. package/src/sap/ui/mdc/valuehelp/content/FixedListItem.js +28 -26
  316. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +54 -63
  317. package/src/sap/ui/mdc/valuehelp/content/MTable.js +149 -135
  318. package/test/sap/ui/mdc/testutils/opa/Util.js +0 -5
  319. package/test/sap/ui/mdc/testutils/opa/Utils.js +5 -4
  320. package/test/sap/ui/mdc/testutils/opa/chart/ActionsBase.js +6 -6
  321. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +4 -6
  322. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +4 -4
  323. package/test/sap/ui/mdc/testutils/opa/filterfield/Actions.js +1 -1
  324. package/test/sap/ui/mdc/testutils/opa/link/Actions.js +7 -7
  325. package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +70 -62
  326. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +30 -4
  327. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +8 -5
  328. package/test/sap/ui/mdc/testutils/opa/p13n/Assertions.js +30 -1
  329. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +4 -4
  330. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +2 -1
  331. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +3 -3
  332. package/test/sap/ui/mdc/testutils/opa/valueHelp/doWait.js +1 -1
  333. package/LICENSES/BSD-2-Clause.txt +0 -22
  334. package/src/sap/ui/mdc/enums/TableRowAction.js +0 -32
package/.eslintrc.json CHANGED
@@ -18,6 +18,19 @@
18
18
  "globals": {
19
19
  "jQuery": "off"
20
20
  }
21
+ },
22
+ {
23
+ "rules": {
24
+ "function-call-argument-newline": ["warn", "consistent"],
25
+ "object-property-newline": ["warn", { "allowAllPropertiesOnSameLine": true }],
26
+ "array-element-newline": ["warn", "consistent"],
27
+ "prefer-arrow-callback": "warn",
28
+ "prefer-destructuring": "warn",
29
+ "prefer-spread": "warn"
30
+ },
31
+ "files": [
32
+ "src/**/*.js"
33
+ ]
21
34
  }
22
35
  ]
23
- }
36
+ }
package/.reuse/dep5 CHANGED
@@ -28,7 +28,7 @@ Disclaimer: The code in this project may include calls to APIs (“API Calls”)
28
28
  # OpenUI5 code
29
29
 
30
30
  Files: *
31
- Copyright: 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
31
+ Copyright: 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
32
32
  License: Apache-2.0
33
33
 
34
34
 
@@ -68,7 +68,7 @@ Comment: these files belong to: jQuery UI
68
68
 
69
69
  Files: src/sap.ui.commons/src/sap/ui/commons/Carousel.js
70
70
  Copyright:
71
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
71
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
72
72
  Spencer Tipping
73
73
  License: Apache-2.0 and MIT
74
74
  Comment: these files contain content from SAP and jquery.fix.clone: Carousel.js is authored by SAP, but contains an improved implementation of the clone function which is taken from jquery-fix-clone
@@ -83,35 +83,35 @@ Comment: these files belong to: jQuery 3
83
83
 
84
84
  Files: src/sap.ui.core/src/sap/base/util/isPlainObject.js
85
85
  Copyright:
86
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
86
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
87
87
  OpenJS Foundation and other contributors
88
88
  License: Apache-2.0 and MIT
89
89
  Comment: these files contain content from SAP and jQuery 3: isPlainObject.js is overall written by SAP, but contains a modified implementation of jQuery.isPlainObject taken from jQuery
90
90
 
91
91
  Files: src/sap.ui.core/src/sap/base/util/_merge.js
92
92
  Copyright:
93
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
93
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
94
94
  OpenJS Foundation and other contributors
95
95
  License: Apache-2.0 and MIT
96
96
  Comment: these files contain content from SAP and jQuery 3: _merge.js is overall written by SAP, but contains a modified implementation of jQuery.extend taken from jQuery
97
97
 
98
98
  Files: src/sap.ui.core/src/jquery.sap.script.js
99
99
  Copyright:
100
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
100
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
101
101
  OpenJS Foundation and other contributors
102
102
  License: Apache-2.0 and MIT
103
103
  Comment: these files contain content from SAP and jQuery 3: jquery.sap.script.js is overall written by SAP, but contains a modified implementation of jQuery.extend taken from jQuery
104
104
 
105
105
  Files: src/sap.ui.core/src/sap/ui/Device.js
106
106
  Copyright:
107
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
107
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
108
108
  2011, John Resig
109
109
  License: Apache-2.0 and MIT
110
110
  Comment: these files contain content from SAP and jQuery 1: Device.js is overall written by SAP, but contains code taken from jQuery 1.7.1 (see the respective comment)
111
111
 
112
112
  Files: src/sap.ui.core/src/sap/ui/dom/jquery/Selectors.js
113
113
  Copyright:
114
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
114
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
115
115
  2014 jQuery Foundation and other contributors
116
116
  License: Apache-2.0 and MIT
117
117
  Comment: these files contain content from SAP and jQuery UI 1.8: Selectors.js is overall written by SAP, but contains code taken from jQuery UI (see the respective comments)
@@ -123,14 +123,14 @@ Comment: these files belong to: jQuery UI 1.10
123
123
 
124
124
  Files: src/sap.ui.core/src/jquery.sap.dom.js
125
125
  Copyright:
126
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
126
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
127
127
  2014 jQuery Foundation and other contributors
128
128
  License: Apache-2.0 and MIT
129
129
  Comment: these files contain content from SAP and jQuery UI 1.10: jquery.sap.dom.js is overall written by SAP, but contains code taken from jQuery UI Core (see the respective comment)
130
130
 
131
131
  Files: src/sap.ui.core/src/sap/ui/dom/jquery/zIndex.js
132
132
  Copyright:
133
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
133
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
134
134
  2014 jQuery Foundation and other contributors
135
135
  License: Apache-2.0 and MIT
136
136
  Comment: these files contain content from SAP and jQuery UI 1.11: zIndex.js is overall written by SAP, but contains an implementation of the function 'fnzIndex' which is taken from jQuery UI Datepicker 1.11.1
@@ -162,7 +162,7 @@ Comment: these files belong to: jQuery Mobile
162
162
 
163
163
  Files: src/sap.ui.core/src/sap/ui/util/_FeatureDetection.js
164
164
  Copyright:
165
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
165
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
166
166
  2012 Wei-Ko Kao
167
167
  License: Apache-2.0 and MIT
168
168
  Comment: these files contain content from SAP and jQuery.rtl-scroll-type: _FeatureDetection.js is overall written by SAP, but contains code which is inspired by jQuery.rtl-scroll-type
@@ -177,6 +177,13 @@ Copyright: jQuery Foundation and other contributors
177
177
  License: MIT
178
178
  Comment: these files belong to: JUnit Reporter for QUnit
179
179
 
180
+ Files: src/sap.ui.core/src/sap/ui/qunit/qunit-junit.js
181
+ Copyright:
182
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
183
+ jQuery Foundation and other contributors
184
+ License: Apache-2.0 and MIT
185
+ Comment: these files contain content from SAP and JUnit Reporter for QUnit: qunit-junit.js is overall written by SAP, but contains a modified copy of JUnit Reporter for QUnit (qunit-reporter-junit)
186
+
180
187
  Files: src/sap.ui.core/src/sap/ui/thirdparty/iscroll.js
181
188
  Copyright: 2012 Matteo Spinelli
182
189
  License: MIT
@@ -294,14 +301,14 @@ Comment: these files belong to: blanket.js
294
301
 
295
302
  Files: src/sap.ui.core/src/sap/base/util/JSTokenizer.js
296
303
  Copyright:
297
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
304
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
298
305
  Douglas Crockford
299
306
  License: Apache-2.0 and LicenseRef-JSONinJSPublicDomain
300
307
  Comment: these files contain content from SAP and JSON in JS: JSTokenizer.js is overall written by SAP, but contains code has been taken from the component JSON in JavaScript (https://github.com/douglascrockford/JSON-js/blob/master/json2.js) from Douglas Crockford which is licensed under Public Domain
301
308
 
302
309
  Files: src/sap.ui.core/src/sap/ui/base/ExpressionParser.js
303
310
  Copyright:
304
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
311
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
305
312
  2010 Douglas Crockford
306
313
  License: Apache-2.0
307
314
  Comment: these files contain content from SAP and Top Down Operator Precedence: ExpressionParser.js is overall written by SAP, but contains code taken from or inspired by TDOP by Douglas Crockford (see the respective comment)
@@ -335,7 +342,7 @@ Comment: these files contain content from p-cancelable and @babel/helpers: _Canc
335
342
 
336
343
  Files: src/sap.ui.core/src/sap/ui/core/date/Persian.js
337
344
  Copyright:
338
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
345
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
339
346
  Behrang Norouzinia
340
347
  License: Apache-2.0 and MIT
341
348
  Comment: these files contain content from SAP and Jalaali JS: Persian.js is overall written by SAP, but the calculation is taken from jalaali-js
@@ -347,14 +354,14 @@ Comment: these files belong to: vkBeautify
347
354
 
348
355
  Files: src/sap.ui.core/src/sap/ui/core/cache/LRUPersistentCache.js
349
356
  Copyright:
350
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
357
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
351
358
  Isaac Z. Schlueter and Contributors
352
359
  License: Apache-2.0 and ISC
353
360
  Comment: these files contain content from SAP and node-lru-cache: LRUPersistentCache.js is overall written by SAP, but portions ('Least Recently Used' logic) are taken from the node-lru-cache project (see https://github.com/isaacs/node-lru-cache/blob/v2.7.3/README.md) and modified.
354
361
 
355
362
  Files: src/sap.ui.core/test/sap/ui/core/qunit/i18n/helper/_timezones.js
356
363
  Copyright:
357
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
364
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
358
365
  Arthur David Olson, Paul Eggert and other contributors
359
366
  License: Apache-2.0 and LicenseRef-tzdata-PublicDomain
360
367
  Comment: these files contain content from SAP and Time Zone Database: _timezones.js is overall written by SAP, but the list of IANA timezone IDs is taken from the Timezone Database
@@ -362,11 +369,6 @@ Comment: these files contain content from SAP and Time Zone Database: _timezones
362
369
 
363
370
  # Library: sap.ui.documentation:
364
371
 
365
- Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/esprima.js
366
- Copyright: 2013 Ariya Hidayat and other contributors
367
- License: BSD-2-Clause
368
- Comment: these files belong to: Esprima
369
-
370
372
  Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/highlight.js/*
371
373
  Copyright: 2006-2020, Ivan Sagalaev
372
374
  License: BSD-3-Clause
@@ -459,7 +461,7 @@ Comment: these files belong to: UI5 Web Components
459
461
 
460
462
  Files: lib/jsdoc/ui5/plugin.js
461
463
  Copyright:
462
- 2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
464
+ 2009-2024 SAP SE or an SAP affiliate company and OpenUI5 contributors
463
465
  2011-present Michael Mathews micmath@gmail.com and the contributors to JSDoc
464
466
  License: Apache-2.0
465
467
  Comment: these files contain content from SAP and JSDoc 3: plugin.js is overall written by SAP, but contains code taken from JSDoc 3.6.7 (see the respective comments)
package/THIRDPARTY.txt CHANGED
@@ -15,7 +15,7 @@ Contained in: src/sap.m/src/sap/m/_thirdparty/purify.js
15
15
 
16
16
  Library: sap.ui.codeeditor:
17
17
 
18
- Component: Ace (Ajax.org Cloud9 Editor), version: 1.4.13
18
+ Component: Ace (Ajax.org Cloud9 Editor), version: 1.31.1
19
19
  Copyright: 2010, Ajax.org B.V.
20
20
  License: BSD-3-Clause
21
21
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
@@ -124,6 +124,7 @@ Copyright: jQuery Foundation and other contributors
124
124
  License: MIT
125
125
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
126
126
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/qunit-reporter-junit.js
127
+ src/sap.ui.core/src/sap/ui/qunit/qunit-junit.js
127
128
 
128
129
  Component: cubiq.org - iScroll, version: 4.2.5
129
130
  Copyright: 2012 Matteo Spinelli
@@ -179,7 +180,7 @@ License: Apache-2.0
179
180
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
180
181
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/caja-html-sanitizer.js
181
182
 
182
- Component: Unicode Common Locale Data Repository, version: 43
183
+ Component: Unicode Common Locale Data Repository, version: 44
183
184
  Copyright: 1991-2023 Unicode, Inc.
184
185
  License: Unicode-DFS-2015
185
186
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Unicode-DFS-2015.txt
@@ -334,7 +335,7 @@ License: ISC
334
335
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/ISC.txt
335
336
  Contained in: src/sap.ui.core/src/sap/ui/core/cache/LRUPersistentCache.js
336
337
 
337
- Component: Time Zone Database, version: 2023c
338
+ Component: Time Zone Database, version: 2023d
338
339
  Copyright: Arthur David Olson, Paul Eggert and other contributors
339
340
  License: LicenseRef-tzdata-PublicDomain
340
341
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/LicenseRef-tzdata-PublicDomain.txt
@@ -343,13 +344,7 @@ Contained in: src/sap.ui.core/test/sap/ui/core/qunit/i18n/helper/_timezones.js
343
344
 
344
345
  Library: sap.ui.documentation:
345
346
 
346
- Component: Esprima, version: 1.2.2
347
- Copyright: 2013 Ariya Hidayat and other contributors
348
- License: BSD-2-Clause
349
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-2-Clause.txt
350
- Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/esprima.js
351
-
352
- Component: highlight.js, version: 10.4.1
347
+ Component: highlight.js, version: 11.9.0
353
348
  Copyright: 2006-2020, Ivan Sagalaev
354
349
  License: BSD-3-Clause
355
350
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
@@ -466,7 +461,7 @@ License: Apache-2.0
466
461
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
467
462
  Contained in: lib/jsdoc/ui5/plugin.js
468
463
 
469
- Component: SAP Theming Base Content, version: 11.6.8
464
+ Component: SAP Theming Base Content, version: 11.10.0
470
465
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
471
466
  License: Apache-2.0
472
467
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
@@ -663,38 +658,6 @@ END of license: Apache-2.0
663
658
  =================================
664
659
 
665
660
 
666
- =================================
667
- BEGIN of license: BSD-2-Clause
668
- =================================
669
-
670
- Copyright (c) <year> <owner>. All rights reserved.
671
-
672
- Redistribution and use in source and binary forms, with or without modification,
673
- are permitted provided that the following conditions are met:
674
-
675
- 1. Redistributions of source code must retain the above copyright notice,
676
- this list of conditions and the following disclaimer.
677
-
678
- 2. Redistributions in binary form must reproduce the above copyright notice,
679
- this list of conditions and the following disclaimer in the documentation
680
- and/or other materials provided with the distribution.
681
-
682
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
683
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
684
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
685
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
686
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
687
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
688
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
689
- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
690
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
691
- USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
692
-
693
- =================================
694
- END of license: BSD-2-Clause
695
- =================================
696
-
697
-
698
661
  =================================
699
662
  BEGIN of license: BSD-3-Clause
700
663
  =================================
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.120.6",
3
+ "version": "1.121.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.mdc",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,8 +14,8 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.120.6",
18
- "@openui5/sap.ui.core": "1.120.6",
19
- "@openui5/sap.ui.layout": "1.120.6"
17
+ "@openui5/sap.m": "1.121.0",
18
+ "@openui5/sap.ui.core": "1.121.0",
19
+ "@openui5/sap.ui.layout": "1.121.0"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.120.6</version>
9
+ <version>1.121.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -0,0 +1,3 @@
1
+ {
2
+ "publicRules": true
3
+ }
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
- "sap/ui/core/Core",
8
+ "sap/ui/core/Element",
9
9
  "sap/m/OverflowToolbar",
10
10
  "sap/m/OverflowToolbarRenderer",
11
11
  "sap/m/ToolbarSpacer",
@@ -13,12 +13,13 @@ sap.ui.define([
13
13
  "sap/m/library",
14
14
  "sap/ui/mdc/enums/ActionToolbarActionAlignment",
15
15
  "sap/ui/mdc/p13n/subcontroller/ActionToolbarController",
16
- "sap/m/p13n/Engine"
17
- ], function(Core, OverflowToolbar, OverflowToolbarRenderer, ToolbarSpacer, ToolbarSeparator, mobileLibrary, ActionToolbarActionAlignment, ActionToolbarController, Engine) {
16
+ "sap/m/p13n/Engine",
17
+ "sap/ui/mdc/mixin/AdaptationMixin"
18
+ ], (Element, OverflowToolbar, OverflowToolbarRenderer, ToolbarSpacer, ToolbarSeparator, mobileLibrary, ActionToolbarActionAlignment, ActionToolbarController, Engine, AdaptationMixin) => {
18
19
  "use strict";
19
20
 
20
21
  // shortcut for sap.m.OverflowToolbarPriority
21
- const OverflowToolbarPriority = mobileLibrary.OverflowToolbarPriority;
22
+ const { OverflowToolbarPriority } = mobileLibrary;
22
23
 
23
24
  /**
24
25
  * Constructor for a new ActionToolbar.
@@ -32,7 +33,7 @@ sap.ui.define([
32
33
  * The content aggregation of the control must not be used.
33
34
  * @extends sap.m.OverflowToolbar
34
35
  * @author SAP SE
35
- * @version 1.120.6
36
+ * @version 1.121.0
36
37
  * @constructor
37
38
  * @since 1.58
38
39
  * @public
@@ -144,7 +145,7 @@ sap.ui.define([
144
145
 
145
146
  Engine.getInstance().register(this, {
146
147
  controller: {
147
- actionsKey: new ActionToolbarController({control: this})
148
+ actionsKey: new ActionToolbarController({ control: this })
148
149
  }
149
150
  });
150
151
  };
@@ -299,7 +300,7 @@ sap.ui.define([
299
300
  };
300
301
 
301
302
  ActionToolbar.prototype.getActionsWithLayoutInformation = function(oLayoutInformation) {
302
- return this.getActions().filter(function(oActionToolbarAction) {
303
+ return this.getActions().filter((oActionToolbarAction) => {
303
304
  const oActionLayoutInformation = oActionToolbarAction.getLayoutInformation();
304
305
  return oActionLayoutInformation.aggregationName === oLayoutInformation.aggregationName && oActionLayoutInformation.alignment === oLayoutInformation.alignment;
305
306
  });
@@ -309,8 +310,9 @@ sap.ui.define([
309
310
  OverflowToolbar.prototype.onBeforeRendering.apply(this, arguments);
310
311
 
311
312
  if (this._bEnforceEndOrder) {
313
+
312
314
  this.getProperty("_endOrder").reduce((iOrder, sElementId) => {
313
- const oElement = Core.byId(sElementId);
315
+ const oElement = Element.getElementById(sElementId);
314
316
  if (!oElement) {
315
317
  return iOrder;
316
318
  }
@@ -319,8 +321,10 @@ sap.ui.define([
319
321
  if (iIndex != iOrder) {
320
322
  this.insertEnd(this.removeEnd(oElement), iOrder);
321
323
  }
324
+
322
325
  return iOrder + 1;
323
326
  }, 0);
327
+
324
328
  this._bEnforceEndOrder = false;
325
329
  }
326
330
  };
@@ -345,12 +349,15 @@ sap.ui.define([
345
349
  ActionToolbar.prototype._hasVisible = function(aArray) {
346
350
  const aPopoverContent = this.getAggregation("_popover") ? this.getAggregation("_popover")._getAllContent() : [];
347
351
 
348
- const aVisibleContent = aArray.filter(function (oControl) {
352
+ const aVisibleContent = aArray.filter((oControl) => {
349
353
  return aPopoverContent.indexOf(oControl) === -1;
350
354
  });
351
- return aVisibleContent.some(function(oControl) {
355
+ return aVisibleContent.some((oControl) => {
352
356
  // visible="true" and does not have "0px" width
353
357
  const bHasWidth = oControl.getWidth ? oControl.getWidth() !== "0px" : true;
358
+ if (oControl.isA("sap.ui.mdc.actiontoolbar.ActionToolbarAction")) {
359
+ return oControl.getVisible() && bHasWidth && oControl.getAction()?.getVisible();
360
+ }
354
361
  return oControl.getVisible() && bHasWidth;
355
362
  });
356
363
  };
@@ -358,24 +365,31 @@ sap.ui.define([
358
365
  ActionToolbar.prototype._updateSeparators = function() {
359
366
  const bHasEnd = this._hasVisible(this.getEnd());
360
367
 
368
+ const fnChangeVisibility = (oSeparator, bNewValue) => {
369
+ if (oSeparator.getVisible() !== bNewValue) {
370
+ oSeparator.setVisible(bNewValue);
371
+ oSeparator.invalidate();
372
+ }
373
+ };
374
+
361
375
  if (this._oBeginSeparator) {
362
376
  const bHasBegin = this._hasVisible(this.getBegin());
363
377
  const bHasBetween = this._hasVisible(this.getBetween());
364
- this._oBeginSeparator.setVisible(bHasBegin && bHasBetween);
378
+ fnChangeVisibility(this._oBeginSeparator, bHasBegin && bHasBetween);
365
379
  }
366
380
  if (this._oEndActionsBeginSeparator) {
367
381
  const bHasEndActionsBegin = this._hasVisible(this.getEndActionsBegin());
368
- this._oEndActionsBeginSeparator.setVisible(bHasEnd && bHasEndActionsBegin);
382
+ fnChangeVisibility(this._oEndActionsBeginSeparator, bHasEnd && bHasEndActionsBegin);
369
383
  }
370
384
  if (this._oEndActionsEndSeparator) {
371
385
  const bHasEndActionsEnd = this._hasVisible(this.getEndActionsEnd());
372
- this._oEndActionsEndSeparator.setVisible(bHasEnd && bHasEndActionsEnd);
386
+ fnChangeVisibility(this._oEndActionsEndSeparator, bHasEnd && bHasEndActionsEnd);
373
387
  }
374
388
  };
375
389
 
376
390
  /*
377
- * Overwrite generated functions to use internal array to look for aggregation
378
- */
391
+ * Overwrite generated functions to use internal array to look for aggregation
392
+ */
379
393
  ActionToolbar.prototype.indexOfContent = function(oObject) {
380
394
  return this.getContent().indexOf(oObject);
381
395
  };
@@ -399,9 +413,9 @@ sap.ui.define([
399
413
  const aActions = [];
400
414
  let sId;
401
415
 
402
- this.getActions().forEach(function(oAction, iIndex) {
416
+ this.getActions().forEach((oAction, iIndex) => {
403
417
  sId = oAction && oAction.getId();
404
- if (oAction.getVisible()){
418
+ if (oAction.getVisible()) {
405
419
  aActions.push({
406
420
  name: sId,
407
421
  alignment: oAction.getLayoutInformation().alignment
@@ -414,24 +428,46 @@ sap.ui.define([
414
428
  };
415
429
  };
416
430
 
417
- ActionToolbar.prototype.initPropertyHelper = function() {
418
- return Promise.resolve({
419
- getProperties: function() {
420
-
421
- const aItems = [];
422
- this.getActions().forEach(function(oAction){
423
- aItems.push({
424
- name: oAction.getId(),
425
- alignment: oAction.getLayoutInformation().alignment,
426
- label: oAction.getLabel(),
427
- visible: true
428
- });
429
- });
431
+ ActionToolbar.prototype.initPropertyHelper = async function() {
432
+ const aProperties = await Promise.all(this.getActions().map(async(oAction) => {
433
+ const oDesignTime = await oAction.getAction().getMetadata().loadDesignTime(oAction);
434
+ const bEnabled = this._getEnabledFromDesignTime(oDesignTime);
435
+
436
+ return {
437
+ name: oAction.getId(),
438
+ alignment: oAction.getLayoutInformation().alignment,
439
+ label: oAction.getLabel(),
440
+ visible: true,
441
+ enabled: bEnabled
442
+ };
443
+ }));
430
444
 
431
- return aItems;
432
- }.bind(this)
445
+ return Promise.resolve({
446
+ getProperties: () => aProperties
433
447
  });
434
448
  };
435
449
 
450
+ ActionToolbar.prototype._getEnabledFromDesignTime = function(oDesignTime) {
451
+ if (!oDesignTime || !("actions" in oDesignTime)) {
452
+ return true;
453
+ }
454
+
455
+ if (oDesignTime.actions === "not-adaptable") {
456
+ return false;
457
+ }
458
+
459
+ if (oDesignTime.actions.reveal === null) {
460
+ return false;
461
+ }
462
+
463
+ if (oDesignTime.actions.remove === null) {
464
+ return false;
465
+ }
466
+
467
+ return true;
468
+ };
469
+
470
+ AdaptationMixin.call(ActionToolbar.prototype);
471
+
436
472
  return ActionToolbar;
437
473
  });
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  // sap.ui.mdc.AggregationBaseDelegate
8
- sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (BaseDelegate, coreLibrary) {
8
+ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], (BaseDelegate, coreLibrary) => {
9
9
  "use strict";
10
10
 
11
11
  /**
@@ -34,10 +34,10 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
34
34
 
35
35
  /**
36
36
  * Retrieves the relevant metadata for a given payload and returns the property info array.
37
+ * <br>By default, this method returns a <code>Promise</code> that resolves into <code>[]</code>.
37
38
  *
38
39
  * @param {sap.ui.mdc.Control} oControl Instance of an <code>sap.ui.mdc.Control</code>
39
40
  * @returns {Promise<object[]>} Once resolved, an array of property info objects is returned
40
- *
41
41
  * @public
42
42
  */
43
43
  AggregationBaseDelegate.fetchProperties = function(oControl) {
@@ -45,31 +45,29 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
45
45
  };
46
46
 
47
47
  /**
48
- * Creates an instance of the implementing MDC Control's default aggregation.
48
+ * Central hook to add items to the provided control instance.
49
+ * This method must return a promise that resolves with an instance of the implementing {@link sap.ui.mdc.Control Control} default aggregation.
49
50
  *
50
- * <b>Note:</b> The <code>addItem</code> hook can be used during the processing of an SAPUI5 flexibility change.
51
51
  * Consequently the parameter <code>mPropertyBag</code> is only passed during preprocessing. In runtime scenarios (such as opening a personalization dialog), this
52
52
  * method might be called without the parameter <code>mPropertyBag</code>.
53
53
  *
54
- * @param {sap.ui.mdc.Control|Element} oControl Instance of an <code>sap.ui.mdc.Control</code>
55
- * @param {string} sPropertyName The name of the property info object/JSON
54
+ * @param {sap.ui.mdc.Control|Element} oControl Instance of an <code>sap.ui.mdc.Control</code>.
55
+ * <b>Note:</b> The <code>addItem</code> hook can be used during the processing of an SAPUI5 flexibility change.
56
+ * @param {string} sPropertyName The name of the property info object
56
57
  * @param {Object} [mPropertyBag] Instance of property bag from SAPUI5 flexibility change API
57
58
  *
58
- * @returns {Promise} Promise that resolves with an instance of the implementing {@link sap.ui.mdc.Control Control} default aggregation.
59
- * <b>Note:</b>
60
- * This method always requires a return value once it has been called. If an item for a given property <code>sPropertyName</code>
61
- * has already been created, it is required to either return the existing instance or create a new instance.
62
- *
63
- * @public
64
59
  * @abstract
60
+ * @public
65
61
  */
66
- AggregationBaseDelegate.addItem = function (oControl, sPropertyName, mPropertyBag) {
62
+ AggregationBaseDelegate.addItem = function(oControl, sPropertyName, mPropertyBag) {
67
63
  return Promise.resolve();
68
64
  };
69
65
 
70
66
  /**
71
67
  * Triggers any necessary follow-up steps that need to be taken after the removal of created items via <code>removeItem</code>.
72
68
  * The returned Boolean value inside the <code>Promise</code> can be used to prevent the default follow-up behavior of the SAPUI5 flexibility handling.
69
+ * <br>By default, this method returns a <code>Promise</code> that resolves into <code>true</code>. This will ensure, that the item will be destroyed subsequentially after it has been removed
70
+ * by the control.
73
71
  *
74
72
  * <b>Note:</b> The <code>removeItem</code> hook can be used during the processing of an SAPUI5 flexibility change.
75
73
  * Consequently the parameter <code>mPropertyBag</code> is only passed during preprocessing. In runtime scenarios (such as opening a personalization dialog), this
@@ -79,7 +77,7 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
79
77
  * @param {sap.ui.core.Element} oItem The control instance that was removed
80
78
  * @param {Object} [mPropertyBag] Instance of property bag from SAPUI5 flexibility
81
79
  *
82
- * @returns {Promise} Promise that resolves with <code>true</code>, <code>false</code> to allow/prevent default behavior of the change
80
+ * @returns {Promise<boolean>} Promise resolving in a boolean, deciding whether the item should be destroyed (<code>true</code>) or kept (<code>false</code>) after removing it from the control aggregation.
83
81
  *
84
82
  * @public
85
83
  */
@@ -89,9 +87,10 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
89
87
 
90
88
  /**
91
89
  * A validator to evaluate the theoretical control state.
90
+ * <br>By default, no state validation will be triggered.
92
91
  *
93
92
  * @param {sap.ui.mdc.Control} oControl Instance of an <code>sap.ui.mdc.Control</code>
94
- * @param {Object} oState The theoretical external state representation of an MDC control. The representation of this format is similar as processed by {@link sap.ui.mdc.p13n.StateUtil StateUtil}
93
+ * @param {Object} oState The theoretical external state representation of a mdc control. The representation of this format is similar as processed by {@link sap.ui.mdc.p13n.StateUtil StateUtil}
95
94
  * @returns {Object} An object that must contain at least the <code>validation</code> attribute {@link sap.ui.core.MessageType MessageType}.
96
95
  * If <code>warning</code> or <code>error</code> state types have been provided, the <code>message</code> is shown in addition.
97
96
  *
@@ -114,37 +113,36 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
114
113
  * @param {Element} oControl XML node of a mdc control
115
114
  * @param {Object} mPropertyBag Property bag from SAPUI5 flexibility
116
115
  *
117
- * @public
118
116
  * @abstract
117
+ * @public
119
118
  */
120
119
  AggregationBaseDelegate.onAfterXMLChangeProcessing = function(oControl, mPropertyBag) {
121
120
  //Neccessary cleanups can be implemented here
122
121
  };
123
122
 
124
123
  /**
125
- * A validator to evaluate the state of an MDC control.
124
+ * A validator to evaluate the state of a mdc control.
126
125
  *
127
- * @param {sap.ui.mdc.Control} oControl Instance of a MDC control
128
- * @param {map} [mValidation] Object Describing the validation result
126
+ * @param {sap.ui.mdc.Control} oControl Instance of a mdc control
127
+ * //TODO: available validation states? Only FilterBar relevant?
129
128
  *
130
129
  * @abstract
131
130
  * @private
132
131
  */
133
132
  AggregationBaseDelegate.determineValidationState = function(oControl) {
134
- return oControl.checkValidationState ? oControl.checkValidationState() : -1;
133
+ return -1;
135
134
  };
136
135
 
137
136
  /**
138
- * Visualizes the validation state of an MDC control.
137
+ * Visualizes the validation state of a mdc control.
139
138
  *
140
- * @param {sap.ui.mdc.Control} oControl Instance of a MDC control
141
- * @returns {map} mValidation Describes the validation result
139
+ * @param {sap.ui.mdc.Control} oControl Instance of a mdc control
140
+ * @param {object} [mValidation] Object Describing the validation result
142
141
  *
143
142
  * @abstract
144
143
  * @private
145
144
  */
146
- AggregationBaseDelegate.visualizeValidationState = function(oControl, mValidation) {
147
- };
145
+ AggregationBaseDelegate.visualizeValidationState = function(oControl, mValidation) {};
148
146
 
149
147
  return AggregationBaseDelegate;
150
- });
148
+ });