@openui5/sap.m 1.117.1 → 1.118.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 (434) hide show
  1. package/package.json +4 -4
  2. package/src/sap/m/.library +1 -1
  3. package/src/sap/m/AccButton.js +1 -1
  4. package/src/sap/m/ActionListItem.js +1 -1
  5. package/src/sap/m/ActionSelect.js +1 -1
  6. package/src/sap/m/ActionSheet.js +1 -1
  7. package/src/sap/m/ActionTile.js +1 -1
  8. package/src/sap/m/ActionTileContent.js +1 -1
  9. package/src/sap/m/AdditionalTextButton.js +1 -1
  10. package/src/sap/m/App.js +1 -1
  11. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  12. package/src/sap/m/Avatar.js +1 -1
  13. package/src/sap/m/Bar.js +1 -1
  14. package/src/sap/m/Breadcrumbs.js +16 -1
  15. package/src/sap/m/BusyDialog.js +1 -1
  16. package/src/sap/m/BusyIndicator.js +1 -1
  17. package/src/sap/m/Button.js +7 -5
  18. package/src/sap/m/Carousel.js +1 -1
  19. package/src/sap/m/CarouselLayout.js +1 -1
  20. package/src/sap/m/CheckBox.js +1 -1
  21. package/src/sap/m/ColorPalette.js +1 -1
  22. package/src/sap/m/ColorPalettePopover.js +1 -1
  23. package/src/sap/m/Column.js +13 -26
  24. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  25. package/src/sap/m/ColumnListItem.js +48 -12
  26. package/src/sap/m/ColumnListItemRenderer.js +96 -83
  27. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverItem.js +1 -1
  30. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  31. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  32. package/src/sap/m/ComboBox.js +1 -1
  33. package/src/sap/m/ComboBoxBase.js +1 -1
  34. package/src/sap/m/ComboBoxTextField.js +1 -1
  35. package/src/sap/m/CustomListItem.js +1 -1
  36. package/src/sap/m/CustomTile.js +1 -1
  37. package/src/sap/m/CustomTreeItem.js +1 -1
  38. package/src/sap/m/DatePicker.js +1 -1
  39. package/src/sap/m/DateRangeSelection.js +2 -2
  40. package/src/sap/m/DateTimeField.js +1 -1
  41. package/src/sap/m/DateTimeInput.js +1 -1
  42. package/src/sap/m/DateTimePicker.js +3 -3
  43. package/src/sap/m/Dialog.js +1 -1
  44. package/src/sap/m/DisplayListItem.js +1 -1
  45. package/src/sap/m/DraftIndicator.js +1 -1
  46. package/src/sap/m/DynamicDate.js +1 -1
  47. package/src/sap/m/DynamicDateFormat.js +4 -0
  48. package/src/sap/m/DynamicDateOption.js +2 -2
  49. package/src/sap/m/DynamicDateRange.js +119 -6
  50. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  51. package/src/sap/m/ExpandableText.js +1 -1
  52. package/src/sap/m/FacetFilter.js +2 -2
  53. package/src/sap/m/FacetFilterItem.js +6 -2
  54. package/src/sap/m/FacetFilterList.js +8 -5
  55. package/src/sap/m/FeedContent.js +1 -1
  56. package/src/sap/m/FeedInput.js +1 -1
  57. package/src/sap/m/FeedListItem.js +1 -1
  58. package/src/sap/m/FeedListItemAction.js +1 -1
  59. package/src/sap/m/Fiori20Adapter.js +2 -2
  60. package/src/sap/m/FlexBox.js +1 -1
  61. package/src/sap/m/FlexItemData.js +1 -1
  62. package/src/sap/m/FormattedText.js +1 -1
  63. package/src/sap/m/GenericTag.js +1 -1
  64. package/src/sap/m/GenericTile.js +37 -2
  65. package/src/sap/m/GroupHeaderListItem.js +2 -3
  66. package/src/sap/m/GroupHeaderListItemRenderer.js +36 -17
  67. package/src/sap/m/GrowingEnablement.js +10 -6
  68. package/src/sap/m/GrowingList.js +1 -1
  69. package/src/sap/m/HBox.js +1 -1
  70. package/src/sap/m/HeaderContainer.js +1 -1
  71. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  72. package/src/sap/m/IconTabBar.js +2 -2
  73. package/src/sap/m/IconTabBarRenderer.js +1 -1
  74. package/src/sap/m/IconTabBarSelectList.js +1 -1
  75. package/src/sap/m/IconTabFilter.js +2 -2
  76. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  77. package/src/sap/m/IconTabHeader.js +4 -2
  78. package/src/sap/m/IconTabSeparator.js +1 -1
  79. package/src/sap/m/IllustratedMessage.js +1 -1
  80. package/src/sap/m/Illustration.js +59 -7
  81. package/src/sap/m/IllustrationPool.js +47 -13
  82. package/src/sap/m/Image.js +1 -1
  83. package/src/sap/m/ImageContent.js +1 -1
  84. package/src/sap/m/Input.js +1 -1
  85. package/src/sap/m/InputBase.js +1 -1
  86. package/src/sap/m/InputListItem.js +1 -1
  87. package/src/sap/m/Label.js +1 -1
  88. package/src/sap/m/LightBox.js +1 -1
  89. package/src/sap/m/LightBoxItem.js +1 -1
  90. package/src/sap/m/Link.js +1 -1
  91. package/src/sap/m/List.js +1 -16
  92. package/src/sap/m/ListBase.js +109 -148
  93. package/src/sap/m/ListBaseRenderer.js +5 -9
  94. package/src/sap/m/ListItemBase.js +35 -132
  95. package/src/sap/m/ListItemBaseRenderer.js +25 -2
  96. package/src/sap/m/MaskEnabler.js +1 -1
  97. package/src/sap/m/MaskInput.js +1 -1
  98. package/src/sap/m/MaskInputRule.js +1 -1
  99. package/src/sap/m/Menu.js +33 -18
  100. package/src/sap/m/MenuButton.js +1 -1
  101. package/src/sap/m/MenuItem.js +23 -1
  102. package/src/sap/m/MenuListItem.js +6 -5
  103. package/src/sap/m/MessageItem.js +1 -1
  104. package/src/sap/m/MessageListItem.js +1 -1
  105. package/src/sap/m/MessagePage.js +1 -1
  106. package/src/sap/m/MessagePopover.js +1 -1
  107. package/src/sap/m/MessagePopoverItem.js +1 -1
  108. package/src/sap/m/MessageStrip.js +1 -1
  109. package/src/sap/m/MessageToast.js +13 -9
  110. package/src/sap/m/MessageView.js +1 -1
  111. package/src/sap/m/MultiComboBox.js +3 -3
  112. package/src/sap/m/MultiEditField.js +1 -1
  113. package/src/sap/m/MultiInput.js +1 -1
  114. package/src/sap/m/NavContainer.js +17 -1
  115. package/src/sap/m/NewsContent.js +1 -1
  116. package/src/sap/m/NotificationList.js +1 -3
  117. package/src/sap/m/NotificationListBase.js +1 -1
  118. package/src/sap/m/NotificationListGroup.js +1 -1
  119. package/src/sap/m/NotificationListItem.js +1 -1
  120. package/src/sap/m/NumericContent.js +1 -1
  121. package/src/sap/m/NumericInput.js +1 -1
  122. package/src/sap/m/ObjectAttribute.js +1 -1
  123. package/src/sap/m/ObjectHeader.js +1 -1
  124. package/src/sap/m/ObjectIdentifier.js +1 -1
  125. package/src/sap/m/ObjectListItem.js +1 -1
  126. package/src/sap/m/ObjectListItemRenderer.js +7 -1
  127. package/src/sap/m/ObjectMarker.js +2 -2
  128. package/src/sap/m/ObjectNumber.js +1 -1
  129. package/src/sap/m/ObjectStatus.js +1 -1
  130. package/src/sap/m/OverflowToolbar.js +1 -1
  131. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  132. package/src/sap/m/OverflowToolbarButton.js +1 -1
  133. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  134. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  135. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  136. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  137. package/src/sap/m/P13nColumnsItem.js +1 -1
  138. package/src/sap/m/P13nColumnsPanel.js +1 -1
  139. package/src/sap/m/P13nConditionPanel.js +1 -1
  140. package/src/sap/m/P13nDialog.js +1 -1
  141. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  142. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  143. package/src/sap/m/P13nFilterItem.js +1 -1
  144. package/src/sap/m/P13nFilterPanel.js +8 -2
  145. package/src/sap/m/P13nGroupItem.js +1 -1
  146. package/src/sap/m/P13nGroupPanel.js +1 -1
  147. package/src/sap/m/P13nItem.js +1 -1
  148. package/src/sap/m/P13nPanel.js +1 -1
  149. package/src/sap/m/P13nSelectionItem.js +1 -1
  150. package/src/sap/m/P13nSelectionPanel.js +1 -1
  151. package/src/sap/m/P13nSortItem.js +1 -1
  152. package/src/sap/m/P13nSortPanel.js +1 -1
  153. package/src/sap/m/PDFViewer.js +1 -1
  154. package/src/sap/m/Page.js +1 -1
  155. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  156. package/src/sap/m/PagingButton.js +1 -1
  157. package/src/sap/m/Panel.js +5 -1
  158. package/src/sap/m/PanelRenderer.js +6 -1
  159. package/src/sap/m/PlanningCalendar.js +37 -16
  160. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  161. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  162. package/src/sap/m/PlanningCalendarLegendRenderer.js +5 -2
  163. package/src/sap/m/PlanningCalendarRow.js +1 -1
  164. package/src/sap/m/PlanningCalendarView.js +1 -1
  165. package/src/sap/m/Popover.js +1 -1
  166. package/src/sap/m/ProgressIndicator.js +1 -1
  167. package/src/sap/m/PullToRefresh.js +1 -1
  168. package/src/sap/m/QuickView.js +1 -1
  169. package/src/sap/m/QuickViewBase.js +1 -1
  170. package/src/sap/m/QuickViewCard.js +1 -1
  171. package/src/sap/m/QuickViewGroup.js +1 -1
  172. package/src/sap/m/QuickViewGroupElement.js +1 -1
  173. package/src/sap/m/QuickViewPage.js +1 -1
  174. package/src/sap/m/RadioButton.js +1 -1
  175. package/src/sap/m/RadioButtonGroup.js +1 -1
  176. package/src/sap/m/RangeSlider.js +1 -1
  177. package/src/sap/m/RatingIndicator.js +1 -1
  178. package/src/sap/m/ResponsivePopover.js +1 -1
  179. package/src/sap/m/ResponsiveScale.js +1 -1
  180. package/src/sap/m/ScrollBar.js +1 -1
  181. package/src/sap/m/ScrollContainer.js +1 -1
  182. package/src/sap/m/SearchField.js +1 -1
  183. package/src/sap/m/SegmentedButton.js +1 -1
  184. package/src/sap/m/SegmentedButtonItem.js +1 -1
  185. package/src/sap/m/Select.js +1 -1
  186. package/src/sap/m/SelectDialog.js +1 -1
  187. package/src/sap/m/SelectDialogBase.js +1 -1
  188. package/src/sap/m/SelectList.js +1 -1
  189. package/src/sap/m/SelectionDetails.js +1 -1
  190. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  191. package/src/sap/m/SelectionDetailsItem.js +1 -1
  192. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  193. package/src/sap/m/Shell.js +1 -1
  194. package/src/sap/m/SimpleFixFlex.js +1 -1
  195. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  197. package/src/sap/m/SinglePlanningCalendarGrid.js +12 -2
  198. package/src/sap/m/SinglePlanningCalendarGridRenderer.js +1 -1
  199. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +32 -15
  200. package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +8 -22
  201. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  202. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  203. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  204. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  205. package/src/sap/m/SlideTile.js +1 -1
  206. package/src/sap/m/Slider.js +1 -1
  207. package/src/sap/m/SliderTooltip.js +1 -1
  208. package/src/sap/m/SliderTooltipBase.js +1 -1
  209. package/src/sap/m/SliderTooltipContainer.js +1 -1
  210. package/src/sap/m/SplitApp.js +1 -1
  211. package/src/sap/m/SplitButton.js +1 -1
  212. package/src/sap/m/SplitContainer.js +1 -1
  213. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  214. package/src/sap/m/StandardListItem.js +1 -1
  215. package/src/sap/m/StandardTile.js +1 -1
  216. package/src/sap/m/StandardTreeItem.js +1 -1
  217. package/src/sap/m/StepInput.js +1 -1
  218. package/src/sap/m/SuggestionItem.js +1 -1
  219. package/src/sap/m/SuggestionsPopover.js +1 -1
  220. package/src/sap/m/Switch.js +1 -1
  221. package/src/sap/m/TabContainer.js +1 -1
  222. package/src/sap/m/TabContainerItem.js +1 -1
  223. package/src/sap/m/TabStrip.js +5 -3
  224. package/src/sap/m/TabStripItem.js +1 -1
  225. package/src/sap/m/Table.js +162 -141
  226. package/src/sap/m/TablePersoController.js +1 -1
  227. package/src/sap/m/TablePersoDialog.js +1 -1
  228. package/src/sap/m/TablePersoProvider.js +1 -1
  229. package/src/sap/m/TableRenderer.js +123 -90
  230. package/src/sap/m/TableSelectDialog.js +1 -1
  231. package/src/sap/m/Text.js +1 -1
  232. package/src/sap/m/TextArea.js +1 -1
  233. package/src/sap/m/Tile.js +1 -1
  234. package/src/sap/m/TileContainer.js +1 -1
  235. package/src/sap/m/TileContent.js +1 -1
  236. package/src/sap/m/TimePicker.js +1 -1
  237. package/src/sap/m/TimePickerClock.js +1 -1
  238. package/src/sap/m/TimePickerClocks.js +1 -1
  239. package/src/sap/m/TimePickerInputs.js +1 -1
  240. package/src/sap/m/TimePickerInternals.js +1 -1
  241. package/src/sap/m/TimePickerSlider.js +1 -4
  242. package/src/sap/m/TimePickerSliders.js +1 -1
  243. package/src/sap/m/Title.js +1 -1
  244. package/src/sap/m/TitlePropagationSupport.js +1 -1
  245. package/src/sap/m/ToggleButton.js +3 -1
  246. package/src/sap/m/Token.js +1 -1
  247. package/src/sap/m/Tokenizer.js +25 -4
  248. package/src/sap/m/Toolbar.js +1 -1
  249. package/src/sap/m/ToolbarLayoutData.js +1 -1
  250. package/src/sap/m/ToolbarSeparator.js +1 -1
  251. package/src/sap/m/ToolbarSpacer.js +1 -1
  252. package/src/sap/m/Tree.js +1 -1
  253. package/src/sap/m/TreeItemBase.js +1 -1
  254. package/src/sap/m/UploadCollection.js +1 -1
  255. package/src/sap/m/UploadCollectionItem.js +1 -1
  256. package/src/sap/m/UploadCollectionParameter.js +1 -1
  257. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  258. package/src/sap/m/VBox.js +1 -1
  259. package/src/sap/m/ValueStateHeader.js +1 -1
  260. package/src/sap/m/VariantManagement.js +73 -19
  261. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  262. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  263. package/src/sap/m/ViewSettingsDialog.js +23 -18
  264. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  265. package/src/sap/m/ViewSettingsItem.js +1 -1
  266. package/src/sap/m/VisibleItem.js +1 -1
  267. package/src/sap/m/WheelSlider.js +1 -1
  268. package/src/sap/m/WheelSliderContainer.js +1 -1
  269. package/src/sap/m/Wizard.js +1 -1
  270. package/src/sap/m/WizardProgressNavigator.js +1 -1
  271. package/src/sap/m/WizardStep.js +1 -1
  272. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  273. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  274. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  275. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  276. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  277. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  278. package/src/sap/m/designtime/IconTabBar.designtime.js +20 -1
  279. package/src/sap/m/designtime/IconTabFilter.designtime.js +12 -3
  280. package/src/sap/m/library.js +106 -19
  281. package/src/sap/m/messagebundle.properties +38 -16
  282. package/src/sap/m/messagebundle_ar.properties +15 -8
  283. package/src/sap/m/messagebundle_bg.properties +15 -8
  284. package/src/sap/m/messagebundle_ca.properties +15 -8
  285. package/src/sap/m/messagebundle_cs.properties +15 -8
  286. package/src/sap/m/messagebundle_cy.properties +15 -8
  287. package/src/sap/m/messagebundle_da.properties +14 -7
  288. package/src/sap/m/messagebundle_de.properties +15 -8
  289. package/src/sap/m/messagebundle_el.properties +15 -8
  290. package/src/sap/m/messagebundle_en.properties +8 -1
  291. package/src/sap/m/messagebundle_en_GB.properties +8 -1
  292. package/src/sap/m/messagebundle_en_US_sappsd.properties +7 -0
  293. package/src/sap/m/messagebundle_en_US_saprigi.properties +7 -0
  294. package/src/sap/m/messagebundle_en_US_saptrc.properties +7 -0
  295. package/src/sap/m/messagebundle_es.properties +15 -8
  296. package/src/sap/m/messagebundle_es_MX.properties +15 -8
  297. package/src/sap/m/messagebundle_et.properties +14 -7
  298. package/src/sap/m/messagebundle_fi.properties +15 -8
  299. package/src/sap/m/messagebundle_fr.properties +17 -10
  300. package/src/sap/m/messagebundle_fr_CA.properties +16 -9
  301. package/src/sap/m/messagebundle_hi.properties +15 -8
  302. package/src/sap/m/messagebundle_hr.properties +15 -8
  303. package/src/sap/m/messagebundle_hu.properties +15 -8
  304. package/src/sap/m/messagebundle_id.properties +21 -14
  305. package/src/sap/m/messagebundle_it.properties +15 -8
  306. package/src/sap/m/messagebundle_iw.properties +15 -8
  307. package/src/sap/m/messagebundle_ja.properties +15 -8
  308. package/src/sap/m/messagebundle_kk.properties +15 -8
  309. package/src/sap/m/messagebundle_ko.properties +15 -8
  310. package/src/sap/m/messagebundle_lt.properties +15 -8
  311. package/src/sap/m/messagebundle_lv.properties +15 -8
  312. package/src/sap/m/messagebundle_ms.properties +15 -8
  313. package/src/sap/m/messagebundle_nl.properties +60 -53
  314. package/src/sap/m/messagebundle_no.properties +17 -10
  315. package/src/sap/m/messagebundle_pl.properties +15 -8
  316. package/src/sap/m/messagebundle_pt.properties +15 -8
  317. package/src/sap/m/messagebundle_pt_PT.properties +15 -8
  318. package/src/sap/m/messagebundle_ro.properties +15 -8
  319. package/src/sap/m/messagebundle_ru.properties +15 -8
  320. package/src/sap/m/messagebundle_sh.properties +15 -8
  321. package/src/sap/m/messagebundle_sk.properties +15 -8
  322. package/src/sap/m/messagebundle_sl.properties +15 -8
  323. package/src/sap/m/messagebundle_sv.properties +15 -8
  324. package/src/sap/m/messagebundle_th.properties +15 -8
  325. package/src/sap/m/messagebundle_tr.properties +15 -8
  326. package/src/sap/m/messagebundle_uk.properties +15 -8
  327. package/src/sap/m/messagebundle_vi.properties +15 -8
  328. package/src/sap/m/messagebundle_zh_CN.properties +15 -8
  329. package/src/sap/m/messagebundle_zh_TW.properties +15 -8
  330. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  331. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  332. package/src/sap/m/p13n/BasePanel.js +3 -3
  333. package/src/sap/m/p13n/Container.js +1 -15
  334. package/src/sap/m/p13n/Engine.js +42 -8
  335. package/src/sap/m/p13n/GroupController.js +1 -1
  336. package/src/sap/m/p13n/GroupPanel.js +1 -1
  337. package/src/sap/m/p13n/Popup.js +3 -3
  338. package/src/sap/m/p13n/QueryPanel.js +7 -2
  339. package/src/sap/m/p13n/SelectionController.js +1 -1
  340. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  341. package/src/sap/m/p13n/SortController.js +1 -1
  342. package/src/sap/m/p13n/SortPanel.js +1 -1
  343. package/src/sap/m/p13n/enum/PersistenceMode.js +1 -1
  344. package/src/sap/m/p13n/enum/ProcessingStrategy.js +10 -1
  345. package/src/sap/m/p13n/handler/xConfigHandler.js +6 -5
  346. package/src/sap/m/p13n/modification/FlexModificationHandler.js +16 -3
  347. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -1
  348. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  349. package/src/sap/m/p13n/modules/UIManager.js +1 -1
  350. package/src/sap/m/p13n/modules/xConfigAPI.js +5 -0
  351. package/src/sap/m/plugins/CellSelector.js +60 -18
  352. package/src/sap/m/plugins/ColumnResizer.js +3 -5
  353. package/src/sap/m/plugins/CopyProvider.js +1 -1
  354. package/src/sap/m/plugins/DataStateIndicator.js +4 -2
  355. package/src/sap/m/plugins/PasteProvider.js +1 -1
  356. package/src/sap/m/plugins/PluginBase.js +1 -1
  357. package/src/sap/m/semantic/AddAction.js +1 -1
  358. package/src/sap/m/semantic/CancelAction.js +1 -1
  359. package/src/sap/m/semantic/DeleteAction.js +1 -1
  360. package/src/sap/m/semantic/DetailPage.js +1 -1
  361. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  362. package/src/sap/m/semantic/EditAction.js +1 -1
  363. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  364. package/src/sap/m/semantic/FilterAction.js +1 -1
  365. package/src/sap/m/semantic/FilterSelect.js +1 -1
  366. package/src/sap/m/semantic/FlagAction.js +1 -1
  367. package/src/sap/m/semantic/ForwardAction.js +1 -1
  368. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  369. package/src/sap/m/semantic/GroupAction.js +1 -1
  370. package/src/sap/m/semantic/GroupSelect.js +1 -1
  371. package/src/sap/m/semantic/MainAction.js +1 -1
  372. package/src/sap/m/semantic/MasterPage.js +1 -1
  373. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  374. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  375. package/src/sap/m/semantic/NegativeAction.js +1 -1
  376. package/src/sap/m/semantic/OpenInAction.js +1 -1
  377. package/src/sap/m/semantic/PositiveAction.js +1 -1
  378. package/src/sap/m/semantic/PrintAction.js +1 -1
  379. package/src/sap/m/semantic/SaveAction.js +1 -1
  380. package/src/sap/m/semantic/Segment.js +1 -1
  381. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  382. package/src/sap/m/semantic/SemanticButton.js +1 -1
  383. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  384. package/src/sap/m/semantic/SemanticControl.js +1 -1
  385. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  386. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  387. package/src/sap/m/semantic/SemanticPage.js +1 -1
  388. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  389. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  390. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  391. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  392. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  393. package/src/sap/m/semantic/ShareMenu.js +1 -1
  394. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  395. package/src/sap/m/semantic/SortAction.js +1 -1
  396. package/src/sap/m/semantic/SortSelect.js +1 -1
  397. package/src/sap/m/table/Util.js +19 -2
  398. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  399. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  400. package/src/sap/m/table/columnmenu/Item.js +32 -3
  401. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  402. package/src/sap/m/table/columnmenu/Menu.js +12 -9
  403. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  404. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  405. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  406. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  407. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  408. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  409. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  410. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  411. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  412. package/src/sap/m/themes/base/Avatar.less +5 -5
  413. package/src/sap/m/themes/base/CellSelector.less +9 -0
  414. package/src/sap/m/themes/base/ColumnListItem.less +12 -8
  415. package/src/sap/m/themes/base/DateTimePicker.less +9 -1
  416. package/src/sap/m/themes/base/FeedListItem.less +3 -2
  417. package/src/sap/m/themes/base/GroupHeaderListItem.less +4 -6
  418. package/src/sap/m/themes/base/IconTabBar.less +13 -0
  419. package/src/sap/m/themes/base/ListItemBase.less +9 -6
  420. package/src/sap/m/themes/base/ObjectStatus.less +6 -0
  421. package/src/sap/m/themes/base/Panel.less +2 -5
  422. package/src/sap/m/themes/base/SinglePlanningCalendarMonthGrid.less +9 -6
  423. package/src/sap/m/themes/base/Table.less +30 -12
  424. package/src/sap/m/themes/base/TimePicker.less +1 -0
  425. package/src/sap/m/themes/base/Toolbar.less +3 -1
  426. package/src/sap/m/themes/base/UploadCollection.less +0 -1
  427. package/src/sap/m/themes/base/VariantManagement.less +8 -0
  428. package/src/sap/m/themes/base/ViewSettingsDialog.less +3 -0
  429. package/src/sap/m/upload/FilePreviewDialog.js +224 -115
  430. package/src/sap/m/upload/UploadSet.js +2 -3
  431. package/src/sap/m/upload/UploadSetItem.js +3 -2
  432. package/src/sap/m/upload/UploadSetTable.js +173 -159
  433. package/src/sap/m/upload/UploadSetTableItem.js +40 -45
  434. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
@@ -205,6 +205,21 @@ sap.ui.define([
205
205
  "DATETIME"
206
206
  ];
207
207
 
208
+ var oDynamicDateRangeGroups = {
209
+
210
+ SingleDates: 1,
211
+
212
+ DateRanges: 2,
213
+
214
+ Weeks: 3,
215
+
216
+ Month: 4,
217
+
218
+ Quarters: 5,
219
+
220
+ Years: 6
221
+ };
222
+
208
223
  /**
209
224
  * Constructor for a new DynamicDateRange.
210
225
  *
@@ -242,7 +257,7 @@ sap.ui.define([
242
257
  * is opened. The dialog is closed via a date time period value selection or by pressing the "Cancel" button.
243
258
  *
244
259
  * @author SAP SE
245
- * @version 1.117.1
260
+ * @version 1.118.0
246
261
  *
247
262
  * @constructor
248
263
  * @public
@@ -835,6 +850,81 @@ sap.ui.define([
835
850
  return this.getOption(sKey).toDates(oValue);
836
851
  };
837
852
 
853
+ /**
854
+ * Returns enumeration containing the current groups in <code>sap.m.DynamicDateRange</code>
855
+ *
856
+ * @private
857
+ */
858
+ DynamicDateRange.prototype._getGroups = function() {
859
+ if (!this.oDynamicDateRangeGroups) {
860
+ this.oDynamicDateRangeGroups = JSON.parse(JSON.stringify(oDynamicDateRangeGroups)); // making a copy of the object to break the reference
861
+ }
862
+
863
+ return this.oDynamicDateRangeGroups;
864
+ };
865
+
866
+ /**
867
+ * Returns the header of a custom group.
868
+ *
869
+ * @private
870
+ */
871
+ DynamicDateRange.prototype._getCustomGroupHeader = function(sGroupName) {
872
+ var oGroup = this._customGroupHeaders.find( (x) => {
873
+ return x.name === sGroupName;
874
+ });
875
+
876
+ return oGroup.header;
877
+ };
878
+
879
+ /**
880
+ * Adds a group to the enumeration containing the current groups in <code>sap.m.DynamicDateRange</code>
881
+ * @param {string} sGroupName the name that the group will be selected by.
882
+ * @param {string} sGroupHeader the group header that will be presented in the list.
883
+ * @returns {void}
884
+ * @public
885
+ * @since 1.118
886
+ */
887
+ DynamicDateRange.prototype.addGroup = function(sGroupName, sGroupHeader) {
888
+ this._getGroups()[sGroupName] = Object.keys(this._getGroups()).length + 1;
889
+
890
+ if (!this._customGroupHeaders) {
891
+ this._customGroupHeaders = [];
892
+ }
893
+
894
+ this._customGroupHeaders.push({
895
+ name: sGroupName,
896
+ header: sGroupHeader
897
+ });
898
+ };
899
+
900
+ /**
901
+ * Sets a new header to an existing custom group.
902
+ * @param {string} sGroupName the name that the group will be selected by.
903
+ * @param {string} sGroupHeader the group header that will be presented in the list.
904
+ * @returns {void}
905
+ * @public
906
+ */
907
+ DynamicDateRange.prototype.setGroupHeader = function(sGroupName, sGroupHeader) {
908
+ this._customGroupHeaders.find((group) => group.name === sGroupName).header = sGroupHeader;
909
+ };
910
+
911
+ /**
912
+ * Removes all additionally added groups
913
+ * @returns {void}
914
+ * @public
915
+ */
916
+ DynamicDateRange.prototype.removeCustomGroups = function() {
917
+ const iCountOfStandardGroups = Object.keys(oDynamicDateRangeGroups).length;
918
+
919
+ for (const group in this._getGroups()) {
920
+ if (this._getGroups()[group] > iCountOfStandardGroups) {
921
+ delete this._getGroups()[group];
922
+ }
923
+ }
924
+
925
+ delete this._customGroupHeaders;
926
+ };
927
+
838
928
  /**
839
929
  * Returns an array of <code>sap.m.DynamicDateOptions</code> (standard and custom) instances used in the control.
840
930
  *
@@ -1180,17 +1270,18 @@ sap.ui.define([
1180
1270
 
1181
1271
  // get the control options' metadata
1182
1272
  var aOptions = aArray;
1183
-
1184
1273
  // sort by group
1185
1274
  aOptions.sort(function(a, b) {
1186
- var iGroupDiff = a.getGroup() - b.getGroup();
1275
+ var iGroupA = Number(a.getGroup()) ? a.getGroup() : this._getGroups()[a.getGroup()];
1276
+ var iGroupB = Number(b.getGroup()) ? b.getGroup() : this._getGroups()[b.getGroup()];
1277
+ var iGroupDiff = iGroupA - iGroupB;
1187
1278
 
1188
1279
  if (iGroupDiff) {
1189
1280
  return iGroupDiff;
1190
1281
  }
1191
1282
 
1192
1283
  return aStandardOptionsKeys.indexOf(a.getKey()) - aStandardOptionsKeys.indexOf(b.getKey());
1193
- });
1284
+ }.bind(this));
1194
1285
 
1195
1286
  if (bReduce) {
1196
1287
  // for last x/next x options leave only the first of each, remove the rest
@@ -1218,9 +1309,14 @@ sap.ui.define([
1218
1309
  }
1219
1310
 
1220
1311
  if (this.getEnableGroupHeaders()) {
1312
+
1221
1313
  // insert a group header string before the options from each group
1222
1314
  aOptions = aOptions.reduce(function(aResult, oCurrent) {
1223
- var sGroupHeader = oCurrent.getGroupHeader();
1315
+ var iGroup = Number(oCurrent.getGroup()) ? oCurrent.getGroup() : this._getGroups()[oCurrent.getGroup()];
1316
+ var sGroupName = Object.keys(this._getGroups()).find((key) => this._getGroups()[key] === iGroup);
1317
+ var bGroupHasHeader = this._customGroupHeaders && this._customGroupHeaders.find((group) => group.name === sGroupName);
1318
+ var sGroupHeader = bGroupHasHeader ? this.getGroupHeader(sGroupName) : oCurrent.getGroupHeader();
1319
+
1224
1320
  if (aGroupHeaders.indexOf(sGroupHeader) === -1) {
1225
1321
  aGroupHeaders.push(sGroupHeader);
1226
1322
  aResult.push(sGroupHeader);
@@ -1229,12 +1325,29 @@ sap.ui.define([
1229
1325
  aResult.push(oCurrent);
1230
1326
 
1231
1327
  return aResult;
1232
- }, []);
1328
+ }.bind(this), []);
1233
1329
  }
1234
1330
 
1235
1331
  return aOptions;
1236
1332
  };
1237
1333
 
1334
+ /**
1335
+ * Provides the option's group header text.
1336
+ *
1337
+ * @returns {string} A group header
1338
+ * @public
1339
+ * @since 1.118
1340
+ */
1341
+ DynamicDateRange.prototype.getGroupHeader = function(sGroupName) {
1342
+ var iGroupId = this._getGroups()[sGroupName];
1343
+
1344
+ if (iGroupId >= this._getGroups()["SingleDates"] && iGroupId <= this._getGroups()["Years"]) {
1345
+ return oResourceBundle.getText("DDR_OPTIONS_GROUP_" + iGroupId);
1346
+ }
1347
+
1348
+ return this._getCustomGroupHeader(sGroupName) ;
1349
+ };
1350
+
1238
1351
  DynamicDateRange.prototype._createListItem = function(oOption) {
1239
1352
  var bIsFixedOption = this._isFixedOption(oOption);
1240
1353
 
@@ -20,7 +20,7 @@ sap.ui.define(['sap/ui/core/Element'],
20
20
  * @extends sap.ui.core.Element
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.117.1
23
+ * @version 1.118.0
24
24
  *
25
25
  * @public
26
26
  * @since 1.92
@@ -105,7 +105,7 @@ function(library,
105
105
  * @implements sap.ui.core.IFormContent, sap.m.IHyphenation
106
106
  *
107
107
  * @author SAP SE
108
- * @version 1.117.1
108
+ * @version 1.118.0
109
109
  *
110
110
  * @constructor
111
111
  * @public
@@ -174,7 +174,7 @@ sap.ui.define([
174
174
  *
175
175
  * @extends sap.ui.core.Control
176
176
  * @implements sap.ui.core.IShrinkable
177
- * @version 1.117.1
177
+ * @version 1.118.0
178
178
  *
179
179
  * @constructor
180
180
  * @public
@@ -1787,7 +1787,7 @@ sap.ui.define([
1787
1787
  * @private
1788
1788
  */
1789
1789
  FacetFilter.prototype._createSelectAllCheckboxBar = function(oList) {
1790
- if (!oList.getMultiSelect()) {
1790
+ if (oList.getMode() !== ListMode.MultiSelect) {
1791
1791
  return null;
1792
1792
  }
1793
1793
 
@@ -20,7 +20,7 @@ sap.ui.define(['./ListItemBase', './library', './FacetFilterItemRenderer'],
20
20
  * @class
21
21
  * Represents a value for the {@link sap.m.FacetFilterList} control.
22
22
  * @extends sap.m.ListItemBase
23
- * @version 1.117.1
23
+ * @version 1.118.0
24
24
  *
25
25
  * @constructor
26
26
  * @public
@@ -54,8 +54,9 @@ sap.ui.define(['./ListItemBase', './library', './FacetFilterItemRenderer'],
54
54
  renderer: FacetFilterItemRenderer
55
55
  });
56
56
 
57
- /*
57
+ /**
58
58
  * Sets count for the FacetFilterList.
59
+ * @deprecated as of version 1.18, replaced by <code>setCounter/code>
59
60
  * @param {int} iCount The counter to be set to
60
61
  * @returns {this} this for chaining
61
62
  */
@@ -74,6 +75,9 @@ sap.ui.define(['./ListItemBase', './library', './FacetFilterItemRenderer'],
74
75
  */
75
76
  FacetFilterItem.prototype.setCounter = function(iCount) {
76
77
 
78
+ /**
79
+ * @deprecated As of version 1.18
80
+ */
77
81
  this.setProperty("count", iCount);
78
82
  this.setProperty("counter", iCount);
79
83
  return this;
@@ -52,7 +52,7 @@ sap.ui.define([
52
52
  * be closed.
53
53
  *
54
54
  * @extends sap.m.List
55
- * @version 1.117.1
55
+ * @version 1.118.0
56
56
  *
57
57
  * @constructor
58
58
  * @public
@@ -204,13 +204,13 @@ sap.ui.define([
204
204
  return this;
205
205
  };
206
206
 
207
- /*
207
+ /**
208
208
  * Sets the multiSelect property (default value is <code>true</code>).
209
+ * @deprecated As of version 1.20, replaced by <code>setMode</code>
209
210
  * @param {boolean} bVal New value for property multiSelect
210
- * @returns {this} this to allow method chaining
211
+ * @returns {this} <code>this</code> to allow method chaining
211
212
  */
212
213
  FacetFilterList.prototype.setMultiSelect = function(bVal) {
213
-
214
214
  this.setProperty("multiSelect", bVal, true);
215
215
  var mode = bVal ? ListMode.MultiSelect : ListMode.SingleSelectMaster;
216
216
  this.setMode(mode);
@@ -229,6 +229,9 @@ sap.ui.define([
229
229
  if (mode === ListMode.MultiSelect || mode === ListMode.SingleSelectMaster) {
230
230
 
231
231
  List.prototype.setMode.call(this, mode);
232
+ /**
233
+ * @deprecated As of version 1.20
234
+ */
232
235
  this.setProperty("multiSelect", mode === ListMode.MultiSelect ? true : false, true);
233
236
  }
234
237
  return this;
@@ -704,7 +707,7 @@ sap.ui.define([
704
707
  return oItem.getSelected();
705
708
  }
706
709
 
707
- if (this.getMultiSelect()) {
710
+ if (this.getMode() === ListMode.MultiSelect) {
708
711
  oCheckbox = sap.ui.getCore().byId(this.getAssociation("allcheckbox"));
709
712
  bAtLeastOneItemIsSelected = iItemsCount > 0 && iItemsCount === aItems.filter(isSelected).length;
710
713
  bSelectAllSelected = this.getActive() && bAtLeastOneItemIsSelected;
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Control
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.117.1
31
+ * @version 1.118.0
32
32
  * @since 1.34
33
33
  *
34
34
  * @public
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @extends sap.ui.core.Control
41
41
  *
42
42
  * @author SAP SE
43
- * @version 1.117.1
43
+ * @version 1.118.0
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -58,7 +58,7 @@ function(
58
58
  * @extends sap.m.ListItemBase
59
59
  *
60
60
  * @author SAP SE
61
- * @version 1.117.1
61
+ * @version 1.118.0
62
62
  *
63
63
  * @constructor
64
64
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(["sap/ui/core/Element"],
19
19
  * @extends sap.ui.core.Element
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.117.1
22
+ * @version 1.118.0
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  *
29
29
  *
30
30
  * @class text
31
- * @version 1.117.1
31
+ * @version 1.118.0
32
32
  * @private
33
33
  * @since 1.38
34
34
  * @alias HeaderAdapter
@@ -228,7 +228,7 @@ sap.ui.define([
228
228
  * Constructor for an sap.m.Fiori20Adapter.
229
229
  *
230
230
  * @class text
231
- * @version 1.117.1
231
+ * @version 1.118.0
232
232
  * @private
233
233
  * @since 1.38
234
234
  * @alias sap.m.Fiori20Adapter
@@ -62,7 +62,7 @@ function(
62
62
  * @extends sap.ui.core.Control
63
63
  *
64
64
  * @author SAP SE
65
- * @version 1.117.1
65
+ * @version 1.118.0
66
66
  *
67
67
  * @public
68
68
  * @alias sap.m.FlexBox
@@ -24,7 +24,7 @@ sap.ui.define(["./FlexBoxStylingHelper", "./library", "sap/ui/core/LayoutData"],
24
24
  * @class
25
25
  * Holds layout data for a FlexBox / HBox / VBox.
26
26
  * @extends sap.ui.core.LayoutData
27
- * @version 1.117.1
27
+ * @version 1.118.0
28
28
  *
29
29
  * @constructor
30
30
  * @public
@@ -46,7 +46,7 @@ function(
46
46
  * @class
47
47
  * The FormattedText control allows the usage of a limited set of tags for inline display of formatted text in HTML format.
48
48
  * @extends sap.ui.core.Control
49
- * @version 1.117.1
49
+ * @version 1.118.0
50
50
  *
51
51
  * @constructor
52
52
  * @public
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
  * @extends sap.ui.core.Control
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.117.1
56
+ * @version 1.118.0
57
57
  *
58
58
  * @constructor
59
59
  * @public
@@ -81,7 +81,7 @@ sap.ui.define([
81
81
  * @extends sap.ui.core.Control
82
82
  *
83
83
  * @author SAP SE
84
- * @version 1.117.1
84
+ * @version 1.118.0
85
85
  * @since 1.34.0
86
86
  *
87
87
  * @public
@@ -246,7 +246,16 @@ sap.ui.define([
246
246
  * @experimental Since 1.113
247
247
  * @since 1.113
248
248
  */
249
- tileBadge: { type: "string", group: "Misc", defaultValue: "" }
249
+ tileBadge: { type: "string", group: "Misc", defaultValue: "" },
250
+ /**
251
+ * Sets the offset for the Drop Area associated with a Generic Tile.
252
+ * The offset is applied uniformly to all the tile edges.
253
+ * @experimental Since 1.113
254
+ * @internal
255
+ * @since 1.118
256
+ * @ui5-restricted Used by S/4 MyHome (ux.eng.s4producthomes1)
257
+ */
258
+ dropAreaOffset: { type: "int", group: "Misc", defaultValue: 0 }
250
259
  },
251
260
  defaultAggregation: "tileContent",
252
261
  aggregations: {
@@ -1203,6 +1212,10 @@ sap.ui.define([
1203
1212
  }
1204
1213
  };
1205
1214
 
1215
+ GenericTile.prototype.ondragend = function() {
1216
+ this.onDragComplete();
1217
+ };
1218
+
1206
1219
  GenericTile.prototype.ontap = function (event) {
1207
1220
  if (!_isInnerTileButtonPressed(event, this)) {
1208
1221
  var oParams;
@@ -1972,6 +1985,28 @@ GenericTile.prototype._isNavigateActionEnabled = function() {
1972
1985
  URLHelper.redirect(sURL, true);
1973
1986
  };
1974
1987
 
1988
+ /**
1989
+ * Calculates and returns the bounding client rectangle
1990
+ * of the drop area taking the offset property into account.
1991
+ * @private
1992
+ * @param {string} sDropLayout - current drop layout
1993
+ * @returns {object} mDropRect - bounding rectangle information factoring in offset, if required
1994
+ */
1995
+ GenericTile.prototype.getDropAreaRect = function(sDropLayout) {
1996
+ var mDropRect = this.getDomRef().getBoundingClientRect().toJSON();
1997
+ var iDropAreaOffset = this.getDropAreaOffset();
1998
+
1999
+ if (sDropLayout === "Horizontal") {
2000
+ mDropRect.left -= iDropAreaOffset;
2001
+ mDropRect.right += iDropAreaOffset;
2002
+ } else {
2003
+ mDropRect.top -= iDropAreaOffset;
2004
+ mDropRect.bottom += iDropAreaOffset;
2005
+ }
2006
+
2007
+ return mDropRect;
2008
+ };
2009
+
1975
2010
  /**
1976
2011
  * Checks if any of the inner buttons in the Tile are focused or clicked
1977
2012
  * @param {object} event - jQuery event object
@@ -30,7 +30,7 @@ sap.ui.define(["sap/ui/core/library", "./library", "./ListItemBase", "./GroupHea
30
30
  * @extends sap.m.ListItemBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.117.1
33
+ * @version 1.118.0
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -99,12 +99,11 @@ sap.ui.define(["sap/ui/core/library", "./library", "./ListItemBase", "./GroupHea
99
99
 
100
100
  // defines the tag name
101
101
  this.TagName = "tr";
102
+ this.aAriaOwns = [];
102
103
  }
103
104
  };
104
105
 
105
106
  GroupHeaderListItem.prototype.getAccessibilityType = function(oBundle) {
106
- var sType = this.getTable() ? "ROW" : "LISTITEM";
107
- return oBundle.getText("LIST_ITEM_GROUP_HEADER") + " " + oBundle.getText("ACC_CTR_TYPE_" + sType);
108
107
  };
109
108
 
110
109
  GroupHeaderListItem.prototype.getContentAnnouncement = function() {
@@ -4,8 +4,8 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRenderer", "./ColumnListItemRenderer"],
8
- function(coreLibrary, Renderer, ListItemBaseRenderer, ColumnListItemRenderer) {
7
+ sap.ui.define(["sap/ui/core/Core", "sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRenderer", "./ColumnListItemRenderer"],
8
+ function(Core, coreLibrary, Renderer, ListItemBaseRenderer, ColumnListItemRenderer) {
9
9
  "use strict";
10
10
 
11
11
 
@@ -21,22 +21,34 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
21
21
  GroupHeaderListItemRenderer.apiVersion = 2;
22
22
 
23
23
  GroupHeaderListItemRenderer.renderType = function(rm, oLI) {
24
- var fnBase = oLI.getTable() ? ColumnListItemRenderer : ListItemBaseRenderer;
25
- fnBase.renderType.apply(this, arguments);
24
+ var oTable = oLI.getTable();
25
+ if (!oTable || !oTable.doItemsNeedTypeColumn()) {
26
+ return;
27
+ }
28
+
29
+ rm.openStart("td", oLI.getId() + "-TypeCell");
30
+ rm.class("sapMListTblNavCol");
31
+ rm.attr("role", "presentation");
32
+ rm.openEnd().close("td");
26
33
  };
27
34
 
28
35
  GroupHeaderListItemRenderer.renderNavigated = function(rm, oLI) {
29
- var fnBase = oLI.getTable() ? ColumnListItemRenderer : ListItemBaseRenderer;
30
- fnBase.renderNavigated.apply(this, arguments);
36
+ var oBaseRenderer = oLI.getTable() ? ColumnListItemRenderer : ListItemBaseRenderer;
37
+ oBaseRenderer.renderNavigated.apply(oBaseRenderer, arguments);
31
38
  };
32
39
 
33
40
  // for dummy cell rendering position inherit from ColumnListItemRenderer
34
- GroupHeaderListItemRenderer.renderContentLatter = ColumnListItemRenderer.renderContentLatter;
41
+ GroupHeaderListItemRenderer.renderContentLatter = function(rm, oLI) {
42
+ ColumnListItemRenderer.renderContentLatter.apply(this, arguments);
43
+ };
35
44
 
36
45
  // GroupHeaderListItem does not respect mode, counter and highlight property of the LIB
37
- GroupHeaderListItemRenderer.renderMode = function(rm, oLI) {};
38
- GroupHeaderListItemRenderer.renderCounter = function(rm, oLI) {};
39
- GroupHeaderListItemRenderer.renderHighlight = function(rm, oLI) {};
46
+ GroupHeaderListItemRenderer.renderMode = function() {};
47
+ GroupHeaderListItemRenderer.renderCounter = function() {};
48
+ GroupHeaderListItemRenderer.renderHighlight = function() {};
49
+
50
+ // accesibility position is only relevant for the Table case therefore use the logic of CLI
51
+ GroupHeaderListItemRenderer.getAccessbilityPosition = ColumnListItemRenderer.getAccessbilityPosition;
40
52
 
41
53
  /**
42
54
  * Renders the attributes for the given list item, using the provided
@@ -54,6 +66,11 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
54
66
  if (oLI.getUpperCase()) {
55
67
  rm.class("sapMGHLIUpperCase");
56
68
  }
69
+
70
+ var oTable = oLI.getTable();
71
+ if (oTable) {
72
+ rm.attr("aria-roledescription", Core.getLibraryResourceBundle("sap.m").getText("TABLE_GROUP_ROW"));
73
+ }
57
74
  };
58
75
 
59
76
 
@@ -70,15 +87,21 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
70
87
  GroupHeaderListItemRenderer.renderLIContentWrapper = function(rm, oLI) {
71
88
  var oTable = oLI.getTable();
72
89
  if (oTable) {
73
- rm.openStart("td");
90
+ rm.openStart("td", oLI.getId() + "-cell");
74
91
  rm.class("sapMGHLICell");
75
- rm.attr("colspan", oTable.getColCount() - 2 /* Type and Navigated cells are always rendered */- oTable.shouldRenderDummyColumn());
92
+ rm.attr("role", "gridcell");
93
+ ColumnListItemRenderer.makeFocusable(rm);
94
+ rm.attr("colspan", oTable.getColCount() - oTable.doItemsNeedTypeColumn() - oTable.shouldRenderDummyColumn() - 1 /* Navigated cells are always rendered */);
76
95
  rm.openEnd();
77
96
  }
78
97
 
79
98
  ListItemBaseRenderer.renderLIContentWrapper.apply(this, arguments);
80
99
 
81
100
  if (oTable) {
101
+ // create dummy contents for the item navigation to mimic a matrix
102
+ for (var i = 1; i < oTable._colHeaderAriaOwns.length; i++) {
103
+ rm.openStart("div").class("sapMTblItemNav").openEnd().close("div");
104
+ }
82
105
  rm.close("td");
83
106
  }
84
107
  };
@@ -112,11 +135,7 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
112
135
  };
113
136
 
114
137
  GroupHeaderListItemRenderer.getAriaRole = function(oLI) {
115
- if (oLI.getTable()) {
116
- return "row";
117
- }
118
-
119
- return ListItemBaseRenderer.getAriaRole.apply(this, arguments);
138
+ return oLI.getTable() ? "row" : "listitem";
120
139
  };
121
140
 
122
141
  return GroupHeaderListItemRenderer;
@@ -139,19 +139,23 @@ sap.ui.define([
139
139
  // Navigate from last item to growing trigger and vice versa via arrow keys
140
140
  var oControl = this._oControl;
141
141
  if (oControl._oItemNavigation && !oEvent.isMarked()) {
142
- var aItemDomRefs = oControl._oItemNavigation.getItemDomRefs();
142
+ var oItemNavigation = oControl._oItemNavigation;
143
+ var aItemDomRefs = oItemNavigation.getItemDomRefs();
144
+ var oFirstItemDomRef = aItemDomRefs[0];
145
+ var oLastItemDomRef = aItemDomRefs[aItemDomRefs.length - oItemNavigation.iColumns];
143
146
  var sDir = oControl.getGrowingDirection();
144
- if ((sDir != ListGrowingDirection.Upwards && oEvent.type == "sapdown" && oEvent.target === aItemDomRefs[aItemDomRefs.length - 1])
145
- || (sDir == ListGrowingDirection.Upwards && oEvent.type == "sapup" && oEvent.target === aItemDomRefs[0])) {
147
+ if ((sDir != ListGrowingDirection.Upwards && oEvent.type == "sapdown" && oEvent.target === oLastItemDomRef)
148
+ || (sDir == ListGrowingDirection.Upwards && oEvent.type == "sapup" && oEvent.target === oFirstItemDomRef)) {
146
149
  var $Trigger = oControl.$("trigger");
147
150
  $Trigger.trigger("focus");
148
151
  oEvent.setMarked();
149
152
  oEvent.stopImmediatePropagation(); // to prevent ItemNavigation
150
- } else if ((sDir == ListGrowingDirection.Upwards && oEvent.type == "sapdown")
151
- || (sDir != ListGrowingDirection.Upwards && oEvent.type == "sapup")
153
+ } else if (((sDir == ListGrowingDirection.Upwards && oEvent.type == "sapdown")
154
+ || (sDir != ListGrowingDirection.Upwards && oEvent.type == "sapup"))
152
155
  && oEvent.target === oControl.getDomRef("trigger")) {
153
- jQuery(aItemDomRefs[oEvent.type == "sapdown" ? 0 : aItemDomRefs.length - 1]).trigger("focus");
156
+ jQuery(oEvent.type == "sapdown" ? oFirstItemDomRef : oLastItemDomRef).trigger("focus");
154
157
  oEvent.setMarked();
158
+ oEvent.stopImmediatePropagation(); // to prevent ItemNavigation
155
159
  }
156
160
  }
157
161
  },
@@ -22,7 +22,7 @@ sap.ui.define(['./List', './library', './GrowingListRenderer', 'sap/ui/core/Conf
22
22
  * @extends sap.m.List
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.117.1
25
+ * @version 1.118.0
26
26
  *
27
27
  * @constructor
28
28
  * @public
package/src/sap/m/HBox.js CHANGED
@@ -25,7 +25,7 @@ sap.ui.define(['./FlexBox', './library', './HBoxRenderer'],
25
25
  * @extends sap.m.FlexBox
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.117.1
28
+ * @version 1.118.0
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -124,7 +124,7 @@ sap.ui.define([
124
124
  * @since 1.44.0
125
125
  *
126
126
  * @author SAP SE
127
- * @version 1.117.1
127
+ * @version 1.118.0
128
128
  *
129
129
  * @public
130
130
  * @alias sap.m.HeaderContainer
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @since 1.67.0
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.117.1
19
+ * @version 1.118.0
20
20
  *
21
21
  * @constructor
22
22
  * @alias sap.m.HeaderContainerItemNavigator
@@ -94,7 +94,7 @@ sap.ui.define([
94
94
  * @implements sap.m.ObjectHeaderContainer, sap.f.IDynamicPageStickyContent
95
95
  *
96
96
  * @author SAP SE
97
- * @version 1.117.1
97
+ * @version 1.118.0
98
98
  *
99
99
  * @public
100
100
  * @alias sap.m.IconTabBar
@@ -628,7 +628,7 @@ sap.ui.define([
628
628
  * @returns {sap.m.IconTabBar|null} Aggregation for the IconTabBar.
629
629
  */
630
630
  IconTabBar.prototype._getIconTabHeader = function () {
631
- if (this.isDestroyed()) {
631
+ if (this.isDestroyStarted()) {
632
632
  return null;
633
633
  }
634
634