@openui5/sap.m 1.115.1 → 1.117.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 (465) hide show
  1. package/.reuse/dep5 +0 -5
  2. package/THIRDPARTY.txt +1 -7
  3. package/package.json +4 -4
  4. package/src/sap/m/.library +1 -1
  5. package/src/sap/m/AccButton.js +1 -1
  6. package/src/sap/m/ActionListItem.js +1 -1
  7. package/src/sap/m/ActionSelect.js +1 -1
  8. package/src/sap/m/ActionSheet.js +6 -2
  9. package/src/sap/m/ActionTile.js +1 -1
  10. package/src/sap/m/ActionTileContent.js +1 -1
  11. package/src/sap/m/AdditionalTextButton.js +1 -1
  12. package/src/sap/m/App.js +1 -1
  13. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  14. package/src/sap/m/Avatar.js +46 -5
  15. package/src/sap/m/AvatarRenderer.js +16 -10
  16. package/src/sap/m/Bar.js +1 -1
  17. package/src/sap/m/Breadcrumbs.js +6 -5
  18. package/src/sap/m/BusyDialog.js +5 -3
  19. package/src/sap/m/BusyIndicator.js +1 -1
  20. package/src/sap/m/Button.js +1 -1
  21. package/src/sap/m/Carousel.js +24 -8
  22. package/src/sap/m/CarouselLayout.js +1 -1
  23. package/src/sap/m/CarouselRenderer.js +19 -4
  24. package/src/sap/m/CheckBox.js +8 -4
  25. package/src/sap/m/ColorPalette.js +1 -1
  26. package/src/sap/m/ColorPalettePopover.js +1 -1
  27. package/src/sap/m/Column.js +29 -170
  28. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  29. package/src/sap/m/ColumnListItem.js +7 -12
  30. package/src/sap/m/ColumnListItemRenderer.js +16 -27
  31. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  32. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  33. package/src/sap/m/ColumnPopoverItem.js +1 -1
  34. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  35. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  36. package/src/sap/m/ComboBox.js +1 -1
  37. package/src/sap/m/ComboBoxBase.js +1 -1
  38. package/src/sap/m/ComboBoxTextField.js +1 -1
  39. package/src/sap/m/CustomListItem.js +1 -1
  40. package/src/sap/m/CustomTile.js +1 -1
  41. package/src/sap/m/CustomTreeItem.js +1 -1
  42. package/src/sap/m/DatePicker.js +31 -5
  43. package/src/sap/m/DatePickerRenderer.js +3 -2
  44. package/src/sap/m/DateRangeSelection.js +77 -25
  45. package/src/sap/m/DateTimeField.js +15 -10
  46. package/src/sap/m/DateTimeInput.js +1 -1
  47. package/src/sap/m/DateTimePicker.js +1 -1
  48. package/src/sap/m/DateTimePickerRenderer.js +3 -1
  49. package/src/sap/m/Dialog.js +16 -10
  50. package/src/sap/m/DialogRenderer.js +3 -3
  51. package/src/sap/m/DisplayListItem.js +1 -1
  52. package/src/sap/m/DraftIndicator.js +1 -1
  53. package/src/sap/m/DynamicDate.js +1 -1
  54. package/src/sap/m/DynamicDateOption.js +2 -2
  55. package/src/sap/m/DynamicDateRange.js +42 -5
  56. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  57. package/src/sap/m/ExpandableText.js +1 -1
  58. package/src/sap/m/FacetFilter.js +1 -3
  59. package/src/sap/m/FacetFilterItem.js +1 -1
  60. package/src/sap/m/FacetFilterList.js +1 -1
  61. package/src/sap/m/FeedContent.js +1 -1
  62. package/src/sap/m/FeedInput.js +1 -1
  63. package/src/sap/m/FeedListItem.js +18 -1
  64. package/src/sap/m/FeedListItemAction.js +1 -1
  65. package/src/sap/m/Fiori20Adapter.js +2 -2
  66. package/src/sap/m/FlexBox.js +1 -1
  67. package/src/sap/m/FlexItemData.js +1 -1
  68. package/src/sap/m/FormattedText.js +44 -50
  69. package/src/sap/m/GenericTag.js +1 -1
  70. package/src/sap/m/GenericTile.js +1 -1
  71. package/src/sap/m/GroupHeaderListItem.js +1 -1
  72. package/src/sap/m/GroupHeaderListItemRenderer.js +5 -5
  73. package/src/sap/m/GrowingEnablement.js +34 -32
  74. package/src/sap/m/GrowingList.js +1 -1
  75. package/src/sap/m/HBox.js +1 -1
  76. package/src/sap/m/HeaderContainer.js +1 -1
  77. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  78. package/src/sap/m/HyphenationSupport.js +13 -4
  79. package/src/sap/m/IconTabBar.js +3 -1
  80. package/src/sap/m/IconTabBarSelectList.js +1 -1
  81. package/src/sap/m/IconTabFilter.js +3 -3
  82. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  83. package/src/sap/m/IconTabHeader.js +1 -1
  84. package/src/sap/m/IconTabSeparator.js +1 -1
  85. package/src/sap/m/IllustratedMessage.js +4 -2
  86. package/src/sap/m/Illustration.js +1 -1
  87. package/src/sap/m/IllustrationPool.js +4 -3
  88. package/src/sap/m/Image.js +1 -1
  89. package/src/sap/m/ImageContent.js +1 -1
  90. package/src/sap/m/Input.js +21 -12
  91. package/src/sap/m/InputBase.js +7 -5
  92. package/src/sap/m/InputBaseRenderer.js +3 -3
  93. package/src/sap/m/InputListItem.js +1 -1
  94. package/src/sap/m/Label.js +1 -1
  95. package/src/sap/m/LabelRenderer.js +3 -3
  96. package/src/sap/m/LightBox.js +1 -1
  97. package/src/sap/m/LightBoxItem.js +1 -1
  98. package/src/sap/m/Link.js +36 -3
  99. package/src/sap/m/List.js +1 -1
  100. package/src/sap/m/ListBase.js +61 -28
  101. package/src/sap/m/ListBaseRenderer.js +12 -4
  102. package/src/sap/m/ListItemBase.js +17 -8
  103. package/src/sap/m/ListItemBaseRenderer.js +6 -6
  104. package/src/sap/m/MaskEnabler.js +1 -1
  105. package/src/sap/m/MaskInput.js +1 -1
  106. package/src/sap/m/MaskInputRule.js +1 -1
  107. package/src/sap/m/Menu.js +14 -1
  108. package/src/sap/m/MenuButton.js +1 -1
  109. package/src/sap/m/MenuItem.js +1 -1
  110. package/src/sap/m/MenuListItem.js +1 -1
  111. package/src/sap/m/MessageItem.js +1 -1
  112. package/src/sap/m/MessageListItem.js +1 -1
  113. package/src/sap/m/MessagePage.js +1 -1
  114. package/src/sap/m/MessagePopover.js +1 -1
  115. package/src/sap/m/MessagePopoverItem.js +1 -1
  116. package/src/sap/m/MessageStrip.js +1 -1
  117. package/src/sap/m/MessageToast.js +1 -12
  118. package/src/sap/m/MessageView.js +2 -2
  119. package/src/sap/m/MultiComboBox.js +3 -3
  120. package/src/sap/m/MultiEditField.js +1 -1
  121. package/src/sap/m/MultiInput.js +13 -2
  122. package/src/sap/m/NavContainer.js +21 -5
  123. package/src/sap/m/NewsContent.js +1 -1
  124. package/src/sap/m/NotificationList.js +1 -1
  125. package/src/sap/m/NotificationListBase.js +1 -1
  126. package/src/sap/m/NotificationListGroup.js +1 -1
  127. package/src/sap/m/NotificationListItem.js +1 -1
  128. package/src/sap/m/NumericContent.js +1 -1
  129. package/src/sap/m/NumericInput.js +1 -1
  130. package/src/sap/m/ObjectAttribute.js +1 -1
  131. package/src/sap/m/ObjectHeader.js +6 -1
  132. package/src/sap/m/ObjectIdentifier.js +1 -1
  133. package/src/sap/m/ObjectListItem.js +9 -2
  134. package/src/sap/m/ObjectMarker.js +1 -1
  135. package/src/sap/m/ObjectNumber.js +1 -1
  136. package/src/sap/m/ObjectStatus.js +63 -4
  137. package/src/sap/m/ObjectStatusRenderer.js +21 -9
  138. package/src/sap/m/OverflowToolbar.js +30 -15
  139. package/src/sap/m/OverflowToolbarAssociativePopover.js +5 -5
  140. package/src/sap/m/OverflowToolbarButton.js +1 -1
  141. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  142. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  143. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  144. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  145. package/src/sap/m/P13nColumnsItem.js +1 -1
  146. package/src/sap/m/P13nColumnsPanel.js +2 -8
  147. package/src/sap/m/P13nConditionPanel.js +1 -1
  148. package/src/sap/m/P13nDialog.js +2 -1
  149. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  150. package/src/sap/m/P13nDimMeasurePanel.js +3 -10
  151. package/src/sap/m/P13nFilterItem.js +1 -1
  152. package/src/sap/m/P13nFilterPanel.js +28 -43
  153. package/src/sap/m/P13nGroupItem.js +1 -1
  154. package/src/sap/m/P13nGroupPanel.js +1 -1
  155. package/src/sap/m/P13nItem.js +1 -1
  156. package/src/sap/m/P13nPanel.js +1 -1
  157. package/src/sap/m/P13nSelectionItem.js +1 -1
  158. package/src/sap/m/P13nSelectionPanel.js +5 -3
  159. package/src/sap/m/P13nSortItem.js +1 -1
  160. package/src/sap/m/P13nSortPanel.js +1 -1
  161. package/src/sap/m/PDFViewer.js +1 -1
  162. package/src/sap/m/PDFViewerRenderer.js +1 -1
  163. package/src/sap/m/Page.js +8 -6
  164. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  165. package/src/sap/m/PagingButton.js +1 -1
  166. package/src/sap/m/Panel.js +11 -2
  167. package/src/sap/m/PanelRenderer.js +9 -0
  168. package/src/sap/m/PlanningCalendar.js +10 -4
  169. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  170. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  171. package/src/sap/m/PlanningCalendarRow.js +1 -1
  172. package/src/sap/m/PlanningCalendarView.js +1 -1
  173. package/src/sap/m/Popover.js +13 -17
  174. package/src/sap/m/ProgressIndicator.js +1 -1
  175. package/src/sap/m/PullToRefresh.js +1 -1
  176. package/src/sap/m/QuickView.js +1 -1
  177. package/src/sap/m/QuickViewBase.js +1 -1
  178. package/src/sap/m/QuickViewCard.js +14 -1
  179. package/src/sap/m/QuickViewCardRenderer.js +0 -4
  180. package/src/sap/m/QuickViewGroup.js +1 -1
  181. package/src/sap/m/QuickViewGroupElement.js +1 -1
  182. package/src/sap/m/QuickViewPage.js +40 -28
  183. package/src/sap/m/RadioButton.js +1 -1
  184. package/src/sap/m/RadioButtonGroup.js +1 -1
  185. package/src/sap/m/RangeSlider.js +1 -1
  186. package/src/sap/m/RatingIndicator.js +16 -4
  187. package/src/sap/m/RatingIndicatorRenderer.js +9 -2
  188. package/src/sap/m/ResponsivePopover.js +1 -1
  189. package/src/sap/m/ResponsiveScale.js +1 -1
  190. package/src/sap/m/ScrollBar.js +1 -1
  191. package/src/sap/m/ScrollContainer.js +3 -3
  192. package/src/sap/m/SearchField.js +8 -12
  193. package/src/sap/m/SearchFieldRenderer.js +5 -5
  194. package/src/sap/m/SegmentedButton.js +4 -2
  195. package/src/sap/m/SegmentedButtonItem.js +1 -1
  196. package/src/sap/m/SegmentedButtonRenderer.js +3 -3
  197. package/src/sap/m/Select.js +18 -16
  198. package/src/sap/m/SelectDialog.js +1 -1
  199. package/src/sap/m/SelectDialogBase.js +28 -4
  200. package/src/sap/m/SelectList.js +5 -6
  201. package/src/sap/m/SelectionDetails.js +1 -1
  202. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  203. package/src/sap/m/SelectionDetailsItem.js +1 -1
  204. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  205. package/src/sap/m/Shell.js +1 -1
  206. package/src/sap/m/SimpleFixFlex.js +1 -1
  207. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  208. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  209. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -1
  210. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +43 -43
  211. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  212. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  213. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  214. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  215. package/src/sap/m/SlideTile.js +1 -1
  216. package/src/sap/m/Slider.js +1 -1
  217. package/src/sap/m/SliderTooltip.js +1 -1
  218. package/src/sap/m/SliderTooltipBase.js +1 -1
  219. package/src/sap/m/SliderTooltipContainer.js +1 -1
  220. package/src/sap/m/SplitApp.js +1 -1
  221. package/src/sap/m/SplitButton.js +1 -1
  222. package/src/sap/m/SplitContainer.js +8 -13
  223. package/src/sap/m/StandardDynamicDateOption.js +2 -2
  224. package/src/sap/m/StandardListItem.js +1 -1
  225. package/src/sap/m/StandardTile.js +1 -1
  226. package/src/sap/m/StandardTileRenderer.js +1 -1
  227. package/src/sap/m/StandardTreeItem.js +1 -1
  228. package/src/sap/m/StepInput.js +3 -3
  229. package/src/sap/m/SuggestionItem.js +4 -2
  230. package/src/sap/m/SuggestionsPopover.js +1 -1
  231. package/src/sap/m/Switch.js +1 -1
  232. package/src/sap/m/TabContainer.js +1 -1
  233. package/src/sap/m/TabContainerItem.js +1 -1
  234. package/src/sap/m/TabStrip.js +1 -1
  235. package/src/sap/m/TabStripItem.js +1 -1
  236. package/src/sap/m/Table.js +59 -180
  237. package/src/sap/m/TablePersoController.js +1 -1
  238. package/src/sap/m/TablePersoDialog.js +1 -1
  239. package/src/sap/m/TablePersoProvider.js +4 -1
  240. package/src/sap/m/TableRenderer.js +98 -126
  241. package/src/sap/m/TableSelectDialog.js +1 -1
  242. package/src/sap/m/Text.js +1 -1
  243. package/src/sap/m/TextArea.js +1 -1
  244. package/src/sap/m/TextRenderer.js +3 -3
  245. package/src/sap/m/Tile.js +1 -1
  246. package/src/sap/m/TileContainer.js +1 -1
  247. package/src/sap/m/TileContent.js +1 -1
  248. package/src/sap/m/TileRenderer.js +7 -4
  249. package/src/sap/m/TimePicker.js +41 -12
  250. package/src/sap/m/TimePickerClock.js +1 -1
  251. package/src/sap/m/TimePickerClocks.js +1 -1
  252. package/src/sap/m/TimePickerClocksRenderer.js +6 -13
  253. package/src/sap/m/TimePickerInputs.js +1 -1
  254. package/src/sap/m/TimePickerInputsRenderer.js +6 -10
  255. package/src/sap/m/TimePickerInternals.js +1 -44
  256. package/src/sap/m/TimePickerRenderer.js +3 -2
  257. package/src/sap/m/TimePickerSlider.js +1 -1
  258. package/src/sap/m/TimePickerSliders.js +1 -1
  259. package/src/sap/m/Title.js +1 -1
  260. package/src/sap/m/TitlePropagationSupport.js +1 -1
  261. package/src/sap/m/ToggleButton.js +15 -3
  262. package/src/sap/m/Token.js +1 -1
  263. package/src/sap/m/Tokenizer.js +1 -1
  264. package/src/sap/m/Toolbar.js +4 -2
  265. package/src/sap/m/ToolbarLayoutData.js +1 -1
  266. package/src/sap/m/ToolbarSeparator.js +1 -1
  267. package/src/sap/m/ToolbarSpacer.js +1 -1
  268. package/src/sap/m/Tree.js +1 -1
  269. package/src/sap/m/TreeItemBase.js +1 -1
  270. package/src/sap/m/UploadCollection.js +2 -2
  271. package/src/sap/m/UploadCollectionItem.js +1 -1
  272. package/src/sap/m/UploadCollectionParameter.js +1 -1
  273. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  274. package/src/sap/m/VBox.js +1 -1
  275. package/src/sap/m/ValueStateHeader.js +1 -1
  276. package/src/sap/m/VariantManagement.js +13 -50
  277. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  278. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  279. package/src/sap/m/ViewSettingsDialog.js +2 -2
  280. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  281. package/src/sap/m/ViewSettingsItem.js +1 -1
  282. package/src/sap/m/VisibleItem.js +1 -1
  283. package/src/sap/m/WheelSlider.js +1 -1
  284. package/src/sap/m/WheelSliderContainer.js +1 -1
  285. package/src/sap/m/Wizard.js +1 -1
  286. package/src/sap/m/WizardProgressNavigator.js +1 -1
  287. package/src/sap/m/WizardStep.js +1 -1
  288. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  289. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  290. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  291. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  292. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  293. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  294. package/src/sap/m/designtime/HBox.designtime.js +16 -0
  295. package/src/sap/m/designtime/IconTabFilter.designtime.js +0 -9
  296. package/src/sap/m/designtime/ObjectHeader.designtime.js +26 -0
  297. package/src/sap/m/designtime/Select.designtime.js +2 -1
  298. package/src/sap/m/designtime/VBox.designtime.js +16 -0
  299. package/src/sap/m/inputUtils/SuggestionsPopoverDialogMixin.js +5 -5
  300. package/src/sap/m/inputUtils/SuggestionsPopoverPopoverMixin.js +4 -0
  301. package/src/sap/m/library.js +62 -7
  302. package/src/sap/m/messagebundle.properties +27 -13
  303. package/src/sap/m/messagebundle_ar.properties +36 -20
  304. package/src/sap/m/messagebundle_bg.properties +102 -86
  305. package/src/sap/m/messagebundle_ca.properties +34 -18
  306. package/src/sap/m/messagebundle_cs.properties +40 -24
  307. package/src/sap/m/messagebundle_cy.properties +35 -19
  308. package/src/sap/m/messagebundle_da.properties +35 -19
  309. package/src/sap/m/messagebundle_de.properties +35 -19
  310. package/src/sap/m/messagebundle_el.properties +36 -20
  311. package/src/sap/m/messagebundle_en.properties +35 -19
  312. package/src/sap/m/messagebundle_en_GB.properties +35 -19
  313. package/src/sap/m/messagebundle_en_US_sappsd.properties +34 -18
  314. package/src/sap/m/messagebundle_en_US_saprigi.properties +34 -18
  315. package/src/sap/m/messagebundle_en_US_saptrc.properties +34 -18
  316. package/src/sap/m/messagebundle_es.properties +33 -17
  317. package/src/sap/m/messagebundle_es_MX.properties +33 -17
  318. package/src/sap/m/messagebundle_et.properties +33 -17
  319. package/src/sap/m/messagebundle_fi.properties +37 -21
  320. package/src/sap/m/messagebundle_fr.properties +38 -22
  321. package/src/sap/m/messagebundle_fr_CA.properties +35 -19
  322. package/src/sap/m/messagebundle_hi.properties +36 -20
  323. package/src/sap/m/messagebundle_hr.properties +36 -20
  324. package/src/sap/m/messagebundle_hu.properties +39 -23
  325. package/src/sap/m/messagebundle_id.properties +38 -22
  326. package/src/sap/m/messagebundle_it.properties +33 -17
  327. package/src/sap/m/messagebundle_iw.properties +40 -24
  328. package/src/sap/m/messagebundle_ja.properties +70 -54
  329. package/src/sap/m/messagebundle_kk.properties +35 -19
  330. package/src/sap/m/messagebundle_ko.properties +36 -20
  331. package/src/sap/m/messagebundle_lt.properties +35 -19
  332. package/src/sap/m/messagebundle_lv.properties +33 -17
  333. package/src/sap/m/messagebundle_ms.properties +35 -19
  334. package/src/sap/m/messagebundle_nl.properties +35 -19
  335. package/src/sap/m/messagebundle_no.properties +38 -22
  336. package/src/sap/m/messagebundle_pl.properties +35 -19
  337. package/src/sap/m/messagebundle_pt.properties +33 -17
  338. package/src/sap/m/messagebundle_pt_PT.properties +33 -17
  339. package/src/sap/m/messagebundle_ro.properties +45 -29
  340. package/src/sap/m/messagebundle_ru.properties +32 -16
  341. package/src/sap/m/messagebundle_sh.properties +43 -27
  342. package/src/sap/m/messagebundle_sk.properties +35 -19
  343. package/src/sap/m/messagebundle_sl.properties +96 -80
  344. package/src/sap/m/messagebundle_sv.properties +37 -21
  345. package/src/sap/m/messagebundle_th.properties +42 -26
  346. package/src/sap/m/messagebundle_tr.properties +36 -20
  347. package/src/sap/m/messagebundle_uk.properties +38 -22
  348. package/src/sap/m/messagebundle_vi.properties +35 -19
  349. package/src/sap/m/messagebundle_zh_CN.properties +40 -24
  350. package/src/sap/m/messagebundle_zh_TW.properties +37 -21
  351. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  352. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  353. package/src/sap/m/p13n/BasePanel.js +11 -5
  354. package/src/sap/m/p13n/Container.js +9 -6
  355. package/src/sap/m/p13n/Engine.js +33 -5
  356. package/src/sap/m/p13n/FlexUtil.js +7 -3
  357. package/src/sap/m/p13n/GroupController.js +1 -1
  358. package/src/sap/m/p13n/GroupPanel.js +6 -1
  359. package/src/sap/m/p13n/MetadataHelper.js +1 -1
  360. package/src/sap/m/p13n/PersistenceProvider.js +2 -92
  361. package/src/sap/m/p13n/Popup.js +25 -2
  362. package/src/sap/m/p13n/QueryPanel.js +18 -3
  363. package/src/sap/m/p13n/SelectionController.js +6 -7
  364. package/src/sap/m/p13n/SelectionPanel.js +16 -5
  365. package/src/sap/m/p13n/SortController.js +1 -1
  366. package/src/sap/m/p13n/SortPanel.js +8 -4
  367. package/src/sap/m/p13n/enum/PersistenceMode.js +9 -0
  368. package/src/sap/m/p13n/handler/xConfigHandler.js +13 -13
  369. package/src/sap/m/p13n/modification/FlexModificationHandler.js +24 -1
  370. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -13
  371. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  372. package/src/sap/m/p13n/modules/UIManager.js +5 -4
  373. package/src/sap/m/p13n/modules/xConfigAPI.js +26 -0
  374. package/src/sap/m/plugins/CellSelector.js +534 -799
  375. package/src/sap/m/plugins/ColumnResizer.js +1 -9
  376. package/src/sap/m/plugins/CopyProvider.js +2 -10
  377. package/src/sap/m/plugins/DataStateIndicator.js +8 -2
  378. package/src/sap/m/plugins/PasteProvider.js +1 -1
  379. package/src/sap/m/plugins/PluginBase.js +1 -1
  380. package/src/sap/m/semantic/AddAction.js +1 -1
  381. package/src/sap/m/semantic/CancelAction.js +1 -1
  382. package/src/sap/m/semantic/DeleteAction.js +1 -1
  383. package/src/sap/m/semantic/DetailPage.js +1 -1
  384. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  385. package/src/sap/m/semantic/EditAction.js +1 -1
  386. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  387. package/src/sap/m/semantic/FilterAction.js +1 -1
  388. package/src/sap/m/semantic/FilterSelect.js +1 -1
  389. package/src/sap/m/semantic/FlagAction.js +1 -1
  390. package/src/sap/m/semantic/ForwardAction.js +1 -1
  391. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  392. package/src/sap/m/semantic/GroupAction.js +1 -1
  393. package/src/sap/m/semantic/GroupSelect.js +1 -1
  394. package/src/sap/m/semantic/MainAction.js +1 -1
  395. package/src/sap/m/semantic/MasterPage.js +1 -1
  396. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  397. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  398. package/src/sap/m/semantic/NegativeAction.js +1 -1
  399. package/src/sap/m/semantic/OpenInAction.js +1 -1
  400. package/src/sap/m/semantic/PositiveAction.js +1 -1
  401. package/src/sap/m/semantic/PrintAction.js +1 -1
  402. package/src/sap/m/semantic/SaveAction.js +1 -1
  403. package/src/sap/m/semantic/Segment.js +1 -1
  404. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  405. package/src/sap/m/semantic/SemanticButton.js +1 -1
  406. package/src/sap/m/semantic/SemanticConfiguration.js +3 -3
  407. package/src/sap/m/semantic/SemanticControl.js +1 -1
  408. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  409. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  410. package/src/sap/m/semantic/SemanticPage.js +1 -1
  411. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  412. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  413. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  414. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  415. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  416. package/src/sap/m/semantic/ShareMenu.js +1 -1
  417. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  418. package/src/sap/m/semantic/SortAction.js +1 -1
  419. package/src/sap/m/semantic/SortSelect.js +1 -1
  420. package/src/sap/m/table/Util.js +6 -5
  421. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  422. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  423. package/src/sap/m/table/columnmenu/Item.js +1 -1
  424. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  425. package/src/sap/m/table/columnmenu/Menu.js +1 -1
  426. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  427. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  428. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  429. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  430. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  431. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  432. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  433. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  434. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  435. package/src/sap/m/themes/base/Avatar.less +78 -7
  436. package/src/sap/m/themes/base/Carousel.less +7 -0
  437. package/src/sap/m/themes/base/CellSelector.less +50 -105
  438. package/src/sap/m/themes/base/IconTabBar.less +1 -1
  439. package/src/sap/m/themes/base/Link.less +20 -24
  440. package/src/sap/m/themes/base/MessageStrip.less +1 -1
  441. package/src/sap/m/themes/base/NumericContent.less +4 -0
  442. package/src/sap/m/themes/base/ObjectStatus.less +1 -2
  443. package/src/sap/m/themes/base/Panel.less +14 -0
  444. package/src/sap/m/themes/base/PlanningCalendarHeader.less +2 -1
  445. package/src/sap/m/themes/base/RadioButton.less +3 -1
  446. package/src/sap/m/themes/base/SearchField.less +13 -3
  447. package/src/sap/m/themes/base/Select.less +32 -2
  448. package/src/sap/m/themes/base/Table.less +4 -8
  449. package/src/sap/m/themes/base/TimePickerClocks.less +4 -0
  450. package/src/sap/m/themes/base/UploadSet.less +13 -1
  451. package/src/sap/m/themes/base/UploadSetTable.less +80 -0
  452. package/src/sap/m/themes/base/ValueStateMessage.less +1 -0
  453. package/src/sap/m/themes/base/VariantManagement.less +1 -0
  454. package/src/sap/m/themes/base/Wizard.less +1 -1
  455. package/src/sap/m/themes/base/library.source.less +1 -0
  456. package/src/sap/m/upload/FilePreviewDialog.js +257 -0
  457. package/src/sap/m/upload/UploadSet.js +140 -67
  458. package/src/sap/m/upload/UploadSetItem.js +51 -27
  459. package/src/sap/m/upload/UploadSetTable.js +929 -0
  460. package/src/sap/m/upload/UploadSetTableItem.js +327 -0
  461. package/src/sap/m/upload/UploadSetTableItemRenderer.js +22 -0
  462. package/src/sap/m/upload/UploadSetTableRenderer.js +34 -0
  463. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
  464. package/src/sap/m/upload/UploaderTableItem.js +276 -0
  465. package/ui5.yaml +1 -1
@@ -242,7 +242,7 @@ sap.ui.define([
242
242
  * is opened. The dialog is closed via a date time period value selection or by pressing the "Cancel" button.
243
243
  *
244
244
  * @author SAP SE
245
- * @version 1.115.1
245
+ * @version 1.117.0
246
246
  *
247
247
  * @constructor
248
248
  * @public
@@ -428,8 +428,14 @@ sap.ui.define([
428
428
  * @since 1.111.0
429
429
  */
430
430
 
431
- calendarWeekNumbering : { type : "sap.ui.core.date.CalendarWeekNumbering", group : "Appearance", defaultValue: null}
431
+ calendarWeekNumbering : { type : "sap.ui.core.date.CalendarWeekNumbering", group : "Appearance", defaultValue: null},
432
432
 
433
+ /**
434
+ * Specifies whether clear icon is shown.
435
+ * Pressing the icon will clear input's value and fire the liveChange event.
436
+ * @since 1.117
437
+ */
438
+ showClearIcon: { type: "boolean", defaultValue: false }
433
439
  },
434
440
  aggregations: {
435
441
  /**
@@ -490,6 +496,7 @@ sap.ui.define([
490
496
  var aNextOptions = ["NEXTMINUTES", "NEXTHOURS", "NEXTDAYS", "NEXTWEEKS", "NEXTMONTHS", "NEXTQUARTERS", "NEXTYEARS"];
491
497
 
492
498
  DynamicDateRange.prototype.init = function() {
499
+ var bValueHelpDecorative = !Device.support.touch || Device.system.desktop ? true : false;
493
500
  this._oInput = new DynamicDateRangeInput(this.getId() + "-input", {
494
501
  showValueHelp: true,
495
502
  valueHelpIconSrc: IconPool.getIconURI("sap-icon://check-availability"),
@@ -506,7 +513,7 @@ sap.ui.define([
506
513
  }
507
514
  };
508
515
 
509
- this._oInput._getValueHelpIcon().setDecorative(false);
516
+ this._oInput._getValueHelpIcon().setDecorative(bValueHelpDecorative);
510
517
 
511
518
  this._oInput.addDelegate(this._onBeforeInputRenderingDelegate, this);
512
519
 
@@ -570,6 +577,31 @@ sap.ui.define([
570
577
  return this;
571
578
  };
572
579
 
580
+ /**
581
+ * Sets the tooltip for the <code>DynamicDateRange</code>.
582
+ * @param {sap.ui.core.TooltipBase|string} vTooltip The tooltip that should be shown.
583
+ * @returns {this} Reference to <code>this</code> for method chaining
584
+ * @public
585
+ * @override
586
+ */
587
+ DynamicDateRange.prototype.setTooltip = function(vTooltip) {
588
+ this._oInput.setTooltip(vTooltip);
589
+ return Control.prototype.setTooltip.apply(this, arguments);
590
+ };
591
+
592
+ /**
593
+ * Sets the showClearIcon for the <code>DynamicDateRange</code>.
594
+ * @param {boolean} bShowClearIcon Whether to show clear icon.
595
+ * @returns {this} Reference to <code>this</code> for method chaining
596
+ * @public
597
+ * @override
598
+ */
599
+ DynamicDateRange.prototype.setShowClearIcon = function(bShowClearIcon) {
600
+ this.setProperty("showClearIcon", bShowClearIcon);
601
+ this._oInput.setShowClearIcon(bShowClearIcon);
602
+ return this;
603
+ };
604
+
573
605
  DynamicDateRange.prototype.onBeforeRendering = function() {
574
606
  this._updateInputValue(this.getValue());
575
607
  this._oInput.setEditable(this.getEditable());
@@ -1785,6 +1817,10 @@ sap.ui.define([
1785
1817
  DynamicDateRangeInputRenderer.apiVersion = 2;
1786
1818
 
1787
1819
  DynamicDateRangeInputRenderer.writeInnerAttributes = function(oRm, oControl) {
1820
+ if (oControl.getShowSuggestion() || oControl.getShowValueStateMessage()) {
1821
+ oRm.attr("autocomplete", "off");
1822
+ }
1823
+
1788
1824
  var oDynamicDateRange = oControl._getControlOrigin ? oControl._getControlOrigin() : null,
1789
1825
  mAccAttributes = this.getAccessibilityState(oControl);
1790
1826
 
@@ -1824,8 +1860,9 @@ sap.ui.define([
1824
1860
 
1825
1861
  mAccessibilityState.roledescription = oResourceBundle.getText("ACC_CTR_TYPE_DYNAMIC_DATE_RANGE");
1826
1862
  mAccessibilityState.role = this.getAriaRole();
1827
- mAccessibilityState.haspopup = coreLibrary.aria.HasPopup.ListBox.toLowerCase();
1828
- mAccessibilityState.autocomplete = "list";
1863
+ if (oControl.getEditable() && oControl.getEnabled()) {
1864
+ mAccessibilityState.haspopup = coreLibrary.aria.HasPopup.ListBox.toLowerCase();
1865
+ }
1829
1866
  mAccessibilityState.controls = oDynamicDateRange._oPopup && oDynamicDateRange._oPopup.getDomRef() ?
1830
1867
  oDynamicDateRange._oPopup.getDomRef().id : undefined;
1831
1868
 
@@ -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.115.1
23
+ * @version 1.117.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.115.1
108
+ * @version 1.117.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.115.1
177
+ * @version 1.117.0
178
178
  *
179
179
  * @constructor
180
180
  * @public
@@ -1649,7 +1649,6 @@ sap.ui.define([
1649
1649
  beginButton : new Button({
1650
1650
  text : this._bundle.getText("FACETFILTER_ACCEPT"),
1651
1651
  type: ButtonType.Emphasized,
1652
- tooltip:this._bundle.getText("FACETFILTER_ACCEPT"),
1653
1652
  press : function() {
1654
1653
 
1655
1654
  that._closeDialog();
@@ -2080,7 +2079,6 @@ sap.ui.define([
2080
2079
  if (!oFooter) {
2081
2080
  oButton = new Button({
2082
2081
  text: this._bundle.getText("FACETFILTER_ACCEPT"),
2083
- tooltip: this._bundle.getText("FACETFILTER_ACCEPT"),
2084
2082
  press: function() {
2085
2083
  this._closePopover();
2086
2084
  }.bind(this)
@@ -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.115.1
23
+ * @version 1.117.0
24
24
  *
25
25
  * @constructor
26
26
  * @public
@@ -52,7 +52,7 @@ sap.ui.define([
52
52
  * be closed.
53
53
  *
54
54
  * @extends sap.m.List
55
- * @version 1.115.1
55
+ * @version 1.117.0
56
56
  *
57
57
  * @constructor
58
58
  * @public
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Control
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.115.1
31
+ * @version 1.117.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.115.1
43
+ * @version 1.117.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.115.1
61
+ * @version 1.117.0
62
62
  *
63
63
  * @constructor
64
64
  * @public
@@ -373,6 +373,7 @@ function(
373
373
  };
374
374
 
375
375
  FeedListItem.prototype.onAfterRendering = function() {
376
+ var oFormattedText = this.getAggregation("_text");
376
377
  if (document.getElementById(this.getAggregation("_actionButton"))) {
377
378
  document.getElementById(this.getAggregation("_actionButton").getId()).setAttribute("aria-haspopup", "menu");
378
379
  }
@@ -380,6 +381,8 @@ function(
380
381
  this._clearEmptyTagsInCollapsedText();
381
382
  }
382
383
  this.$("realtext").find('a[target="_blank"]').on("click", openLink);
384
+
385
+ oFormattedText && oFormattedText._sanitizeCSSPosition(this.getDomRef()); // perform CSS position sanitize
383
386
  };
384
387
 
385
388
  FeedListItem.prototype.exit = function() {
@@ -402,6 +405,9 @@ function(
402
405
 
403
406
  // open links href using safe API
404
407
  function openLink (oEvent) {
408
+ if (oEvent.originalEvent.defaultPrevented) {
409
+ return;
410
+ }
405
411
  oEvent.preventDefault();
406
412
  openWindow(oEvent.currentTarget.href, oEvent.currentTarget.target);
407
413
  }
@@ -606,24 +612,35 @@ function(
606
612
  var $threeDots = this.$("threeDots");
607
613
  var sMoreLabel = FeedListItem._sTextShowMore;
608
614
  var sLessLabel = FeedListItem._sTextShowLess;
615
+ var oFormattedText = this.getAggregation("_text");
616
+
609
617
  if (this.getMoreLabel()) {
610
618
  sMoreLabel = this.getMoreLabel();
611
619
  }
612
620
  if (this.getLessLabel()) {
613
621
  sLessLabel = this.getLessLabel();
614
622
  }
623
+
624
+ // detach click events
625
+ $text.find('a[target="_blank"]').off("click");
626
+
615
627
  if (this._bTextExpanded) {
616
628
  $text.html(this._sShortText.replace(/&#xa;/g, "<br>"));
629
+ oFormattedText._sanitizeCSSPosition($text[0]); // perform CSS position sanitize
617
630
  $threeDots.text(" ... ");
618
631
  this._oLinkExpandCollapse.setText(sMoreLabel);
619
632
  this._bTextExpanded = false;
620
633
  this._clearEmptyTagsInCollapsedText();
621
634
  } else {
622
635
  $text.html(this._sFullText.replace(/&#xa;/g, "<br>"));
636
+ oFormattedText._sanitizeCSSPosition($text[0]); // perform CSS position sanitize
623
637
  $threeDots.text(" ");
624
638
  this._oLinkExpandCollapse.setText(sLessLabel);
625
639
  this._bTextExpanded = true;
626
640
  }
641
+
642
+ // attach again click events since the text is changed without rerendering
643
+ $text.find('a[target="_blank"]').on("click", openLink);
627
644
  };
628
645
 
629
646
  /**
@@ -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.115.1
22
+ * @version 1.117.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.115.1
31
+ * @version 1.117.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.115.1
231
+ * @version 1.117.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.115.1
65
+ * @version 1.117.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.115.1
27
+ * @version 1.117.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.115.1
49
+ * @version 1.117.0
50
50
  *
51
51
  * @constructor
52
52
  * @public
@@ -89,7 +89,6 @@ function(
89
89
  * <li><code>li</code></li>
90
90
  * </ul>
91
91
  * <p><code>style, dir</code> and <code>target</code> attributes are allowed.
92
- * <p>The <code>class</code> attribute is allowed, but its value is sanitized to contain only supported CSS classes, see {@link topic:91a4946b0dcf4356aaaedc4e502864f4 List of Supported CSS Classes}.
93
92
  * <p>If <code>target</code> is not set, links open in a new window by default.
94
93
  * <p>Only safe <code>href</code> attributes can be used. See {@link module:sap/base/security/URLListValidator URLListValidator}.
95
94
  *
@@ -230,46 +229,6 @@ function(
230
229
  FormattedText.prototype.init = function () {
231
230
  };
232
231
 
233
- /**
234
- * Sanitizes the value of an HTMLElement's style attribute.
235
- * @param {string} a semicolon-separated list of css rules
236
- * @returns {string} the sanitized value
237
- * @private
238
- */
239
- function sanitizeCSSStyles(value) {
240
- var fnParseCssDeclarations = window['parseCssDeclarations'];
241
-
242
- if (!fnParseCssDeclarations) {
243
- return null;
244
- }
245
- var sanitizedDeclarations = [];
246
- fnParseCssDeclarations(
247
- value,
248
- {
249
- declaration: function (property, tokens) {
250
- var normProp = property.toLowerCase();
251
- if (normProp == "position") {
252
- return;
253
- }
254
- sanitizedDeclarations.push(property + ': ' + tokens.join(' '));
255
- }
256
- });
257
- return sanitizedDeclarations.length > 0 ? sanitizedDeclarations.join('; ') + ";" : null;
258
- }
259
-
260
- /**
261
- * Sanitizes the externally-specified css classes.
262
- * @param {string} sClasses a space-separated list of css classes
263
- * @returns {string} the filtered classes
264
- * @private
265
- */
266
- function sanitizeCSSClasses(sClasses) {
267
- return sClasses.split(" ").filter(function(sClass) {
268
- // allow only the supported theming classes
269
- return sClass.trim().startsWith("sapTheme");
270
- }).join(" ");
271
- }
272
-
273
232
  /**
274
233
  * Sanitizes attributes on an HTML tag.
275
234
  *
@@ -310,17 +269,14 @@ function(
310
269
  addTarget = false;
311
270
  }
312
271
  }
272
+
313
273
  if (attr == "target") { // a::target already exists
314
274
  addTarget = false;
315
275
  }
316
- if (attr == "style") {
317
- attribs[i + 1] = sanitizeCSSStyles(value);
318
- }
319
276
 
320
- // filter the externally-defined classes and
321
- // add the required UI5 classes
322
- if (attr.toLowerCase() == "class") {
323
- attribs[i + 1] = (cssClass + " " + sanitizeCSSClasses(value)).trim();
277
+ // add UI5 classes to the user defined
278
+ if (cssClass && attr.toLowerCase() == "class") {
279
+ attribs[i + 1] = cssClass + " " + value;
324
280
  cssClass = "";
325
281
  }
326
282
  }
@@ -369,9 +325,12 @@ function(
369
325
 
370
326
  // open links href using safe API
371
327
  function openLink (oEvent) {
328
+ if (oEvent.originalEvent.defaultPrevented) {
329
+ return;
330
+ }
372
331
  oEvent.preventDefault();
373
332
  var oLink = Core.byId(oEvent.currentTarget.id);
374
- if (oLink && oLink.isA('sap.m.Link') && oLink.getAccessibleRole() === library.LinkAccessibleRole.Button) {
333
+ if (oLink && oLink.isA('sap.m.Link') && (oLink.getAccessibleRole() === library.LinkAccessibleRole.Button || !oLink.getHref())) {
375
334
  return;
376
335
  }
377
336
  openWindow(oEvent.currentTarget.href, oEvent.currentTarget.target);
@@ -390,12 +349,47 @@ function(
390
349
  oLink.getDomRef().style.display = "none";
391
350
  }
392
351
  }.bind(this));
352
+
353
+ this._sanitizeCSSPosition(this.getDomRef());
393
354
  };
394
355
 
395
356
  FormattedText.prototype.onBeforeRendering = function () {
396
357
  this.$().find('a').off("click", openLink);
397
358
  };
398
359
 
360
+ /**
361
+ * Adds CSS static position to provided DOM reference internal HTML nodes.
362
+ *
363
+ * @param {Element} oDomRef DOM reference that should be sanitized
364
+ * @private
365
+ */
366
+ FormattedText.prototype._sanitizeCSSPosition = function(oDomRef) {
367
+
368
+ if (!oDomRef) {
369
+ return;
370
+ }
371
+
372
+ var oWalker = document.createTreeWalker(
373
+ oDomRef,
374
+ NodeFilter.SHOW_ELEMENT
375
+ ),
376
+ oCurrentNode = oWalker.nextNode();
377
+
378
+ while (oCurrentNode) {
379
+ oCurrentNode.style.setProperty("position", "static", "important");
380
+ oCurrentNode = oWalker.nextNode();
381
+ }
382
+ };
383
+
384
+ /**
385
+ * Returns the HTML that should be displayed.
386
+ *
387
+ * IMPORTANT NOTE: When a HTML returned by this method is being placed in the page DOM, ALWAYS call _sanitizeCSSPosition
388
+ * after it is rendered on the page DOM in order to sanitize the CSS position!
389
+ *
390
+ * @return {string} HTML that should be rendered
391
+ * @private
392
+ */
399
393
  FormattedText.prototype._getDisplayHtml = function (){
400
394
  var sText = this.getHtmlText(),
401
395
  sAutoGenerateLinkTags = this.getConvertLinksToAnchorTags();
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
  * @extends sap.ui.core.Control
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.115.1
56
+ * @version 1.117.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.115.1
84
+ * @version 1.117.0
85
85
  * @since 1.34.0
86
86
  *
87
87
  * @public
@@ -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.115.1
33
+ * @version 1.117.0
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -33,9 +33,10 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
33
33
  // for dummy cell rendering position inherit from ColumnListItemRenderer
34
34
  GroupHeaderListItemRenderer.renderContentLatter = ColumnListItemRenderer.renderContentLatter;
35
35
 
36
- // GroupHeaderListItem does not respect counter property of the LIB
37
- GroupHeaderListItemRenderer.renderCounter = function(rm, oLI) {
38
- };
36
+ // 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) {};
39
40
 
40
41
  /**
41
42
  * Renders the attributes for the given list item, using the provided
@@ -68,11 +69,10 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
68
69
  */
69
70
  GroupHeaderListItemRenderer.renderLIContentWrapper = function(rm, oLI) {
70
71
  var oTable = oLI.getTable();
71
-
72
72
  if (oTable) {
73
73
  rm.openStart("td");
74
74
  rm.class("sapMGHLICell");
75
- rm.attr("colspan", oTable.getColSpan());
75
+ rm.attr("colspan", oTable.getColCount() - 2 /* Type and Navigated cells are always rendered */- oTable.shouldRenderDummyColumn());
76
76
  rm.openEnd();
77
77
  }
78
78
 
@@ -7,6 +7,8 @@
7
7
  // Provides class sap.m.GrowingEnablement
8
8
  sap.ui.define([
9
9
  'sap/ui/base/Object',
10
+ 'sap/ui/core/Lib',
11
+ 'sap/ui/core/RenderManager', // Future TODO: replace the creation of new RenderManager instance
10
12
  'sap/ui/core/format/NumberFormat',
11
13
  'sap/m/library',
12
14
  'sap/ui/model/ChangeReason',
@@ -15,11 +17,12 @@ sap.ui.define([
15
17
  'sap/ui/core/HTML',
16
18
  'sap/m/CustomListItem',
17
19
  'sap/base/security/encodeXML',
18
- 'sap/ui/core/Core',
19
20
  "sap/ui/thirdparty/jquery"
20
21
  ],
21
22
  function(
22
23
  BaseObject,
24
+ Library,
25
+ RenderManager,
23
26
  NumberFormat,
24
27
  library,
25
28
  ChangeReason,
@@ -28,7 +31,6 @@ sap.ui.define([
28
31
  HTML,
29
32
  CustomListItem,
30
33
  encodeXML,
31
- Core,
32
34
  jQuery
33
35
  ) {
34
36
  "use strict";
@@ -264,7 +266,7 @@ sap.ui.define([
264
266
  var sTriggerID = this._oControl.getId() + "-trigger",
265
267
  sTriggerText = this._oControl.getGrowingTriggerText();
266
268
 
267
- sTriggerText = sTriggerText || Core.getLibraryResourceBundle("sap.m").getText("LOAD_MORE_DATA");
269
+ sTriggerText = sTriggerText || Library.getResourceBundleFor("sap.m").getText("LOAD_MORE_DATA");
268
270
  this._oControl.addNavSection(sTriggerID);
269
271
 
270
272
  if (this._oTrigger) {
@@ -538,7 +540,7 @@ sap.ui.define([
538
540
  }
539
541
  }
540
542
 
541
- this._oRM = this._oRM || Core.createRenderManager();
543
+ this._oRM = this._oRM || new RenderManager(); // Future TODO: replace the creation of new RenderManager instance
542
544
  for (var i = 0; i < iLength; i++) {
543
545
  this._oRM.renderControl(this._aChunk[i]);
544
546
  }
@@ -823,9 +825,12 @@ sap.ui.define([
823
825
  if (this._bHadFocus) {
824
826
  this._bHadFocus = false;
825
827
  jQuery(this._oControl.getNavigationRoot()).trigger("focus");
826
- } else if (oTriggerDomRef && oTriggerDomRef.contains(document.activeElement)) {
828
+ } else if (!this._iFocusTimer && oTriggerDomRef && oTriggerDomRef.contains(document.activeElement)) {
827
829
  var oFocusTarget = aItems[this._iLastItemsCount] || aItems[iItemsLength - 1] || oControl;
828
- oFocusTarget && setTimeout(oFocusTarget.focus.bind(oFocusTarget));
830
+ this._iFocusTimer = setTimeout(function() {
831
+ this._iFocusTimer = 0;
832
+ oFocusTarget.focus();
833
+ }.bind(this));
829
834
  }
830
835
 
831
836
  // show, update or hide the growing button
@@ -835,7 +840,7 @@ sap.ui.define([
835
840
  oControl.$("triggerList").css("display", "none");
836
841
  oControl.$("listUl").removeClass("sapMListHasGrowing");
837
842
  } else {
838
- var oBundle = Core.getLibraryResourceBundle("sap.m");
843
+ var oBundle = Library.getResourceBundleFor("sap.m");
839
844
  if (bLengthFinal) {
840
845
  oControl.$("triggerInfo").css("display", "block").text(this._getListItemInfo());
841
846
  var aCounts = this._getItemCounts();
@@ -847,10 +852,7 @@ sap.ui.define([
847
852
  oControl.$("triggerList").css("display", "");
848
853
  oControl.$("listUl").addClass("sapMListHasGrowing");
849
854
  oTrigger.$().removeClass("sapMGrowingListBusyIndicatorVisible");
850
-
851
- if (oControl.isA("sap.m.Table") && !oControl.hasPopin()) {
852
- this.adaptTriggerButtonWidth(oControl, oTriggerDomRef);
853
- }
855
+ this.adaptTriggerButtonWidth();
854
856
  }
855
857
 
856
858
  // store the last item count to be able to focus to the newly added item when the growing button is pressed
@@ -875,31 +877,31 @@ sap.ui.define([
875
877
  }
876
878
  },
877
879
 
878
- adaptTriggerButtonWidth: function(oControl, oTriggerDomRef) {
879
- // adapt trigger button width if dummy col is rendered
880
- if (oControl.shouldRenderDummyColumn() && oControl.$("listUl").hasClass("sapMListHasGrowing")) {
880
+ // adapt trigger button width if dummy col is rendered
881
+ adaptTriggerButtonWidth: function() {
882
+ var oControl = this._oControl;
883
+ if (!oControl.isA("sap.m.Table") || oControl.hasPopin() || !oControl.shouldRenderDummyColumn()) {
884
+ return;
885
+ }
886
+
887
+ window.requestAnimationFrame(function() {
888
+ var oTriggerDomRef = this._oTrigger && this._oTrigger.getDomRef();
881
889
  if (!oTriggerDomRef) {
882
- oTriggerDomRef = this._oTrigger.getDomRef();
890
+ return;
883
891
  }
884
892
 
885
- window.requestAnimationFrame(function() {
886
- if (oControl.bIsDestroyed) {
887
- return;
893
+ var sCalWidth = Array.from(oControl.getDomRef("tblHeader").childNodes).slice(0, -1).map(function(oDomRef) {
894
+ var sWidth = oDomRef.style.width;
895
+ if (!sWidth || !sWidth.includes("%")) {
896
+ return oDomRef.getBoundingClientRect().width + "px";
897
+ } else {
898
+ return sWidth;
888
899
  }
889
-
890
- var sCalWidth = Array.from(oControl.getDomRef("tblHeader").childNodes).slice(0, -1).map(function(oDomRef) {
891
- var sWidth = oDomRef.getAttribute("data-sap-width");
892
- if (!sWidth || !sWidth.includes("%")) {
893
- return oDomRef.getBoundingClientRect().width + "px";
894
- } else {
895
- return sWidth;
896
- }
897
- }).join(" + ");
898
- // 1px is borderLeft of the dummyCell
899
- oTriggerDomRef.style.width = "calc(" + sCalWidth + " + 1px)";
900
- oTriggerDomRef.classList.add("sapMGrowingListDummyColumn");
901
- });
902
- }
900
+ }).join(" + ");
901
+ // 1px is borderLeft of the dummyCell
902
+ oTriggerDomRef.style.width = "calc(" + sCalWidth + " + 1px)";
903
+ oTriggerDomRef.classList.add("sapMGrowingListDummyColumn");
904
+ }.bind(this));
903
905
  }
904
906
  });
905
907
 
@@ -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.115.1
25
+ * @version 1.117.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.115.1
28
+ * @version 1.117.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.115.1
127
+ * @version 1.117.0
128
128
  *
129
129
  * @public
130
130
  * @alias sap.m.HeaderContainer