@openui5/sap.m 1.107.1 → 1.108.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/.dtsgenrc +22 -0
  2. package/THIRDPARTY.txt +1 -1
  3. package/package.json +4 -4
  4. package/src/sap/m/.library +2 -2
  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 +1 -1
  9. package/src/sap/m/ActionTile.js +17 -1
  10. package/src/sap/m/ActionTileContent.js +7 -5
  11. package/src/sap/m/AdditionalTextButton.js +42 -0
  12. package/src/sap/m/AdditionalTextButtonRenderer.js +60 -0
  13. package/src/sap/m/App.js +1 -1
  14. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  15. package/src/sap/m/Avatar.js +49 -7
  16. package/src/sap/m/AvatarRenderer.js +10 -2
  17. package/src/sap/m/Bar.js +2 -2
  18. package/src/sap/m/Breadcrumbs.js +1 -1
  19. package/src/sap/m/BusyDialog.js +1 -1
  20. package/src/sap/m/BusyIndicator.js +1 -1
  21. package/src/sap/m/Button.js +1 -1
  22. package/src/sap/m/ButtonRenderer.js +26 -23
  23. package/src/sap/m/Carousel.js +348 -286
  24. package/src/sap/m/CarouselLayout.js +1 -1
  25. package/src/sap/m/CarouselRenderer.js +52 -20
  26. package/src/sap/m/CheckBox.js +1 -1
  27. package/src/sap/m/ColorPalette.js +1 -1
  28. package/src/sap/m/ColorPalettePopover.js +1 -1
  29. package/src/sap/m/Column.js +36 -8
  30. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  31. package/src/sap/m/ColumnListItem.js +1 -1
  32. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  33. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  34. package/src/sap/m/ColumnPopoverItem.js +1 -1
  35. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  36. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  37. package/src/sap/m/ComboBox.js +1 -1
  38. package/src/sap/m/ComboBoxBase.js +1 -1
  39. package/src/sap/m/ComboBoxTextField.js +1 -1
  40. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  41. package/src/sap/m/CustomListItem.js +1 -1
  42. package/src/sap/m/CustomTile.js +1 -1
  43. package/src/sap/m/CustomTreeItem.js +1 -1
  44. package/src/sap/m/DatePicker.js +15 -6
  45. package/src/sap/m/DateRangeSelection.js +2 -2
  46. package/src/sap/m/DateTimeField.js +1 -1
  47. package/src/sap/m/DateTimeInput.js +1 -1
  48. package/src/sap/m/DateTimePicker.js +12 -8
  49. package/src/sap/m/Dialog.js +29 -2
  50. package/src/sap/m/DialogRenderer.js +20 -6
  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 +1 -1
  55. package/src/sap/m/DynamicDateRange.js +3 -2
  56. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  57. package/src/sap/m/ExpandableText.js +42 -2
  58. package/src/sap/m/ExpandableTextRenderer.js +4 -1
  59. package/src/sap/m/FacetFilter.js +1 -1
  60. package/src/sap/m/FacetFilterItem.js +1 -1
  61. package/src/sap/m/FacetFilterList.js +1 -1
  62. package/src/sap/m/FeedContent.js +1 -1
  63. package/src/sap/m/FeedInput.js +1 -1
  64. package/src/sap/m/FeedListItem.js +1 -1
  65. package/src/sap/m/FeedListItemAction.js +1 -1
  66. package/src/sap/m/Fiori20Adapter.js +2 -2
  67. package/src/sap/m/FlexBox.js +1 -1
  68. package/src/sap/m/FlexItemData.js +1 -1
  69. package/src/sap/m/FormattedText.js +1 -1
  70. package/src/sap/m/GenericTag.js +1 -1
  71. package/src/sap/m/GenericTile.js +115 -18
  72. package/src/sap/m/GenericTileLineModeRenderer.js +4 -4
  73. package/src/sap/m/GenericTileRenderer.js +21 -14
  74. package/src/sap/m/GroupHeaderListItem.js +1 -1
  75. package/src/sap/m/GrowingList.js +1 -1
  76. package/src/sap/m/HBox.js +1 -1
  77. package/src/sap/m/HeaderContainer.js +1 -1
  78. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  79. package/src/sap/m/IconTabBar.js +1 -1
  80. package/src/sap/m/IconTabBarSelectList.js +1 -1
  81. package/src/sap/m/IconTabFilter.js +1 -1
  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 +68 -10
  86. package/src/sap/m/IllustratedMessageRenderer.js +6 -0
  87. package/src/sap/m/IllustratedMessageSize.js +8 -1
  88. package/src/sap/m/Illustration.js +1 -1
  89. package/src/sap/m/IllustrationPool.js +2 -0
  90. package/src/sap/m/Image.js +1 -1
  91. package/src/sap/m/ImageContent.js +1 -1
  92. package/src/sap/m/Input.js +3 -2
  93. package/src/sap/m/InputBase.js +4 -3
  94. package/src/sap/m/InputListItem.js +1 -1
  95. package/src/sap/m/Label.js +11 -5
  96. package/src/sap/m/LabelRenderer.js +5 -3
  97. package/src/sap/m/LightBox.js +1 -1
  98. package/src/sap/m/LightBoxItem.js +1 -1
  99. package/src/sap/m/Link.js +1 -1
  100. package/src/sap/m/List.js +1 -1
  101. package/src/sap/m/ListBase.js +1 -1
  102. package/src/sap/m/ListBaseRenderer.js +1 -1
  103. package/src/sap/m/ListItemBase.js +3 -3
  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 +1 -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 -1
  118. package/src/sap/m/MessageView.js +1 -1
  119. package/src/sap/m/MultiComboBox.js +1 -1
  120. package/src/sap/m/MultiEditField.js +1 -1
  121. package/src/sap/m/MultiInput.js +14 -2
  122. package/src/sap/m/NavContainer.js +1 -1
  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 +3 -2
  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 +1 -1
  132. package/src/sap/m/ObjectIdentifier.js +1 -1
  133. package/src/sap/m/ObjectListItem.js +1 -1
  134. package/src/sap/m/ObjectListItemRenderer.js +1 -1
  135. package/src/sap/m/ObjectMarker.js +1 -1
  136. package/src/sap/m/ObjectNumber.js +1 -1
  137. package/src/sap/m/ObjectStatus.js +1 -1
  138. package/src/sap/m/OverflowToolbar.js +1 -1
  139. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  140. package/src/sap/m/OverflowToolbarButton.js +1 -1
  141. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  142. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  143. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  144. package/src/sap/m/P13nColumnsItem.js +1 -1
  145. package/src/sap/m/P13nColumnsPanel.js +1 -1
  146. package/src/sap/m/P13nConditionPanel.js +1 -1
  147. package/src/sap/m/P13nDialog.js +1 -1
  148. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  149. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  150. package/src/sap/m/P13nFilterItem.js +1 -1
  151. package/src/sap/m/P13nFilterPanel.js +1 -1
  152. package/src/sap/m/P13nGroupItem.js +1 -1
  153. package/src/sap/m/P13nGroupPanel.js +1 -1
  154. package/src/sap/m/P13nItem.js +1 -1
  155. package/src/sap/m/P13nPanel.js +1 -1
  156. package/src/sap/m/P13nSelectionItem.js +1 -1
  157. package/src/sap/m/P13nSelectionPanel.js +1 -1
  158. package/src/sap/m/P13nSortItem.js +1 -1
  159. package/src/sap/m/P13nSortPanel.js +1 -1
  160. package/src/sap/m/PDFViewer.js +1 -1
  161. package/src/sap/m/Page.js +1 -1
  162. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  163. package/src/sap/m/PagingButton.js +1 -1
  164. package/src/sap/m/Panel.js +1 -1
  165. package/src/sap/m/PlanningCalendar.js +88 -28
  166. package/src/sap/m/PlanningCalendarHeader.js +27 -5
  167. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  168. package/src/sap/m/PlanningCalendarRow.js +1 -1
  169. package/src/sap/m/PlanningCalendarView.js +1 -1
  170. package/src/sap/m/Popover.js +1 -1
  171. package/src/sap/m/ProgressIndicator.js +1 -1
  172. package/src/sap/m/PullToRefresh.js +1 -1
  173. package/src/sap/m/QuickView.js +1 -1
  174. package/src/sap/m/QuickViewBase.js +1 -1
  175. package/src/sap/m/QuickViewCard.js +1 -1
  176. package/src/sap/m/QuickViewGroup.js +1 -1
  177. package/src/sap/m/QuickViewGroupElement.js +1 -1
  178. package/src/sap/m/QuickViewPage.js +1 -1
  179. package/src/sap/m/RadioButton.js +1 -1
  180. package/src/sap/m/RadioButtonGroup.js +80 -17
  181. package/src/sap/m/RangeSlider.js +1 -1
  182. package/src/sap/m/RatingIndicator.js +1 -1
  183. package/src/sap/m/ResponsivePopover.js +1 -1
  184. package/src/sap/m/ResponsiveScale.js +1 -1
  185. package/src/sap/m/ScrollBar.js +1 -1
  186. package/src/sap/m/ScrollContainer.js +1 -1
  187. package/src/sap/m/SearchField.js +1 -1
  188. package/src/sap/m/SegmentedButton.js +1 -1
  189. package/src/sap/m/SegmentedButtonItem.js +1 -1
  190. package/src/sap/m/Select.js +1 -1
  191. package/src/sap/m/SelectDialog.js +1 -1
  192. package/src/sap/m/SelectDialogBase.js +1 -1
  193. package/src/sap/m/SelectList.js +1 -1
  194. package/src/sap/m/SelectionDetails.js +1 -1
  195. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  196. package/src/sap/m/SelectionDetailsItem.js +1 -1
  197. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  198. package/src/sap/m/Shell.js +1 -1
  199. package/src/sap/m/SimpleFixFlex.js +1 -1
  200. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  201. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  202. package/src/sap/m/SinglePlanningCalendarGrid.js +3 -1
  203. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  204. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  205. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  206. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  207. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  208. package/src/sap/m/SlideTile.js +84 -15
  209. package/src/sap/m/SlideTileRenderer.js +5 -1
  210. package/src/sap/m/Slider.js +1 -1
  211. package/src/sap/m/SliderTooltip.js +1 -1
  212. package/src/sap/m/SliderTooltipBase.js +1 -1
  213. package/src/sap/m/SliderTooltipContainer.js +1 -1
  214. package/src/sap/m/SplitApp.js +1 -1
  215. package/src/sap/m/SplitButton.js +1 -1
  216. package/src/sap/m/SplitContainer.js +1 -1
  217. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  218. package/src/sap/m/StandardListItem.js +1 -1
  219. package/src/sap/m/StandardTile.js +1 -1
  220. package/src/sap/m/StandardTreeItem.js +1 -1
  221. package/src/sap/m/StepInput.js +3 -9
  222. package/src/sap/m/SuggestionItem.js +1 -1
  223. package/src/sap/m/SuggestionsPopover.js +1 -1
  224. package/src/sap/m/Switch.js +1 -1
  225. package/src/sap/m/TabContainer.js +1 -1
  226. package/src/sap/m/TabContainerItem.js +1 -1
  227. package/src/sap/m/TabStrip.js +1 -1
  228. package/src/sap/m/TabStripItem.js +1 -1
  229. package/src/sap/m/Table.js +60 -11
  230. package/src/sap/m/TablePersoController.js +1 -1
  231. package/src/sap/m/TablePersoDialog.js +1 -1
  232. package/src/sap/m/TablePersoProvider.js +1 -1
  233. package/src/sap/m/TableRenderer.js +7 -4
  234. package/src/sap/m/TableSelectDialog.js +1 -1
  235. package/src/sap/m/Text.js +1 -1
  236. package/src/sap/m/TextArea.js +1 -1
  237. package/src/sap/m/Tile.js +1 -1
  238. package/src/sap/m/TileContainer.js +1 -1
  239. package/src/sap/m/TileContent.js +2 -2
  240. package/src/sap/m/TimePicker.js +15 -42
  241. package/src/sap/m/TimePickerClock.js +1 -1
  242. package/src/sap/m/TimePickerClocks.js +1 -1
  243. package/src/sap/m/TimePickerInputs.js +1 -1
  244. package/src/sap/m/TimePickerInternals.js +1 -1
  245. package/src/sap/m/TimePickerSlider.js +1 -1
  246. package/src/sap/m/TimePickerSliders.js +1 -1
  247. package/src/sap/m/Title.js +1 -1
  248. package/src/sap/m/TitlePropagationSupport.js +1 -1
  249. package/src/sap/m/ToDoCardRenderer.js +9 -0
  250. package/src/sap/m/ToggleButton.js +1 -1
  251. package/src/sap/m/Token.js +1 -1
  252. package/src/sap/m/Tokenizer.js +1 -1
  253. package/src/sap/m/Toolbar.js +1 -1
  254. package/src/sap/m/ToolbarLayoutData.js +1 -1
  255. package/src/sap/m/ToolbarSeparator.js +1 -1
  256. package/src/sap/m/ToolbarSpacer.js +1 -1
  257. package/src/sap/m/Tree.js +23 -77
  258. package/src/sap/m/TreeItemBase.js +22 -11
  259. package/src/sap/m/UploadCollection.js +1 -1
  260. package/src/sap/m/UploadCollectionItem.js +1 -1
  261. package/src/sap/m/UploadCollectionParameter.js +1 -1
  262. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  263. package/src/sap/m/VBox.js +1 -1
  264. package/src/sap/m/ValueStateHeader.js +1 -1
  265. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  266. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  267. package/src/sap/m/ViewSettingsDialog.js +11 -7
  268. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  269. package/src/sap/m/ViewSettingsItem.js +1 -1
  270. package/src/sap/m/VisibleItem.js +1 -1
  271. package/src/sap/m/WheelSlider.js +1 -1
  272. package/src/sap/m/WheelSliderContainer.js +1 -1
  273. package/src/sap/m/Wizard.js +1 -1
  274. package/src/sap/m/WizardProgressNavigator.js +1 -1
  275. package/src/sap/m/WizardStep.js +1 -1
  276. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  277. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  278. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  279. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  280. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  281. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  282. package/src/sap/m/delegate/DateNavigation.js +32 -33
  283. package/src/sap/m/library.js +3 -2
  284. package/src/sap/m/messagebundle.properties +61 -13
  285. package/src/sap/m/messagebundle_ar.properties +40 -8
  286. package/src/sap/m/messagebundle_bg.properties +40 -8
  287. package/src/sap/m/messagebundle_ca.properties +40 -8
  288. package/src/sap/m/messagebundle_cs.properties +39 -7
  289. package/src/sap/m/messagebundle_cy.properties +40 -8
  290. package/src/sap/m/messagebundle_da.properties +39 -7
  291. package/src/sap/m/messagebundle_de.properties +41 -9
  292. package/src/sap/m/messagebundle_el.properties +40 -8
  293. package/src/sap/m/messagebundle_en.properties +40 -8
  294. package/src/sap/m/messagebundle_en_GB.properties +40 -8
  295. package/src/sap/m/messagebundle_en_US_sappsd.properties +41 -9
  296. package/src/sap/m/messagebundle_en_US_saprigi.properties +40 -9
  297. package/src/sap/m/messagebundle_en_US_saptrc.properties +41 -9
  298. package/src/sap/m/messagebundle_es.properties +40 -8
  299. package/src/sap/m/messagebundle_es_MX.properties +47 -15
  300. package/src/sap/m/messagebundle_et.properties +39 -7
  301. package/src/sap/m/messagebundle_fi.properties +39 -7
  302. package/src/sap/m/messagebundle_fr.properties +40 -8
  303. package/src/sap/m/messagebundle_fr_CA.properties +41 -9
  304. package/src/sap/m/messagebundle_hi.properties +40 -8
  305. package/src/sap/m/messagebundle_hr.properties +39 -7
  306. package/src/sap/m/messagebundle_hu.properties +39 -7
  307. package/src/sap/m/messagebundle_id.properties +39 -7
  308. package/src/sap/m/messagebundle_it.properties +41 -9
  309. package/src/sap/m/messagebundle_iw.properties +39 -7
  310. package/src/sap/m/messagebundle_ja.properties +39 -7
  311. package/src/sap/m/messagebundle_kk.properties +40 -8
  312. package/src/sap/m/messagebundle_ko.properties +40 -8
  313. package/src/sap/m/messagebundle_lt.properties +39 -7
  314. package/src/sap/m/messagebundle_lv.properties +39 -7
  315. package/src/sap/m/messagebundle_ms.properties +39 -7
  316. package/src/sap/m/messagebundle_nl.properties +40 -8
  317. package/src/sap/m/messagebundle_no.properties +40 -8
  318. package/src/sap/m/messagebundle_pl.properties +39 -7
  319. package/src/sap/m/messagebundle_pt.properties +40 -8
  320. package/src/sap/m/messagebundle_pt_PT.properties +40 -8
  321. package/src/sap/m/messagebundle_ro.properties +40 -8
  322. package/src/sap/m/messagebundle_ru.properties +40 -8
  323. package/src/sap/m/messagebundle_sh.properties +40 -8
  324. package/src/sap/m/messagebundle_sk.properties +39 -7
  325. package/src/sap/m/messagebundle_sl.properties +40 -8
  326. package/src/sap/m/messagebundle_sv.properties +39 -7
  327. package/src/sap/m/messagebundle_th.properties +39 -7
  328. package/src/sap/m/messagebundle_tr.properties +40 -8
  329. package/src/sap/m/messagebundle_uk.properties +40 -8
  330. package/src/sap/m/messagebundle_vi.properties +39 -7
  331. package/src/sap/m/messagebundle_zh_CN.properties +39 -7
  332. package/src/sap/m/messagebundle_zh_TW.properties +39 -7
  333. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  334. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  335. package/src/sap/m/p13n/BasePanel.js +1 -1
  336. package/src/sap/m/p13n/Container.js +1 -1
  337. package/src/sap/m/p13n/Engine.js +1 -1
  338. package/src/sap/m/p13n/GroupController.js +1 -1
  339. package/src/sap/m/p13n/GroupPanel.js +1 -1
  340. package/src/sap/m/p13n/Popup.js +1 -1
  341. package/src/sap/m/p13n/QueryPanel.js +2 -2
  342. package/src/sap/m/p13n/SelectionController.js +1 -1
  343. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  344. package/src/sap/m/p13n/SortController.js +1 -1
  345. package/src/sap/m/p13n/SortPanel.js +1 -1
  346. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -1
  347. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  348. package/src/sap/m/p13n/modules/UIManager.js +1 -1
  349. package/src/sap/m/plugins/CellSelector.js +1 -1
  350. package/src/sap/m/plugins/ColumnResizer.js +1 -1
  351. package/src/sap/m/plugins/DataStateIndicator.js +1 -1
  352. package/src/sap/m/plugins/PasteProvider.js +1 -1
  353. package/src/sap/m/plugins/PluginBase.js +1 -1
  354. package/src/sap/m/semantic/AddAction.js +1 -1
  355. package/src/sap/m/semantic/CancelAction.js +1 -1
  356. package/src/sap/m/semantic/DeleteAction.js +1 -1
  357. package/src/sap/m/semantic/DetailPage.js +1 -1
  358. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  359. package/src/sap/m/semantic/EditAction.js +1 -1
  360. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  361. package/src/sap/m/semantic/FilterAction.js +1 -1
  362. package/src/sap/m/semantic/FilterSelect.js +1 -1
  363. package/src/sap/m/semantic/FlagAction.js +1 -1
  364. package/src/sap/m/semantic/ForwardAction.js +1 -1
  365. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  366. package/src/sap/m/semantic/GroupAction.js +1 -1
  367. package/src/sap/m/semantic/GroupSelect.js +1 -1
  368. package/src/sap/m/semantic/MainAction.js +1 -1
  369. package/src/sap/m/semantic/MasterPage.js +1 -1
  370. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  371. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  372. package/src/sap/m/semantic/NegativeAction.js +1 -1
  373. package/src/sap/m/semantic/OpenInAction.js +1 -1
  374. package/src/sap/m/semantic/PositiveAction.js +1 -1
  375. package/src/sap/m/semantic/PrintAction.js +1 -1
  376. package/src/sap/m/semantic/SaveAction.js +1 -1
  377. package/src/sap/m/semantic/Segment.js +1 -1
  378. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  379. package/src/sap/m/semantic/SemanticButton.js +1 -1
  380. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  381. package/src/sap/m/semantic/SemanticControl.js +1 -1
  382. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  383. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  384. package/src/sap/m/semantic/SemanticPage.js +2 -2
  385. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  386. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  387. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  388. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  389. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  390. package/src/sap/m/semantic/ShareMenu.js +1 -1
  391. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  392. package/src/sap/m/semantic/SortAction.js +1 -1
  393. package/src/sap/m/semantic/SortSelect.js +1 -1
  394. package/src/sap/m/table/Util.js +1 -1
  395. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  396. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  397. package/src/sap/m/table/columnmenu/Item.js +1 -1
  398. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  399. package/src/sap/m/table/columnmenu/Menu.js +27 -8
  400. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  401. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  402. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  403. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  404. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  405. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  406. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  407. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  408. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  409. package/src/sap/m/themes/base/ActionTile.less +67 -10
  410. package/src/sap/m/themes/base/AdditionalTextButton.less +38 -0
  411. package/src/sap/m/themes/base/Avatar.less +4 -0
  412. package/src/sap/m/themes/base/Carousel.less +64 -33
  413. package/src/sap/m/themes/base/ColumnMenu.less +4 -4
  414. package/src/sap/m/themes/base/Dialog.less +1 -1
  415. package/src/sap/m/themes/base/GenericTile.less +149 -32
  416. package/src/sap/m/themes/base/IllustratedMessage.less +43 -1
  417. package/src/sap/m/themes/base/Label.less +5 -0
  418. package/src/sap/m/themes/base/MessageBox.less +5 -5
  419. package/src/sap/m/themes/base/Table.less +7 -3
  420. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-AddColumn.svg +26 -0
  421. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-AddPeople.svg +8 -0
  422. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-BalloonSky.svg +6 -0
  423. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-Connection.svg +9 -0
  424. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-EmptyCalendar.svg +36 -0
  425. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-EmptyList.svg +6 -0
  426. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-EmptyPlanningCalendar.svg +36 -0
  427. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-ErrorScreen.svg +8 -0
  428. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-FilterTable.svg +7 -0
  429. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-GroupTable.svg +35 -0
  430. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NoFilterResults.svg +7 -0
  431. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NoMail_v1.svg +9 -0
  432. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NoSavedItems_v1.svg +12 -0
  433. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NoSearchResults.svg +10 -0
  434. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NoTasks_v1.svg +12 -0
  435. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-PageNotFound.svg +6 -0
  436. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-ReloadScreen.svg +8 -0
  437. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SearchEarth.svg +6 -0
  438. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SearchFolder.svg +10 -0
  439. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleBalloon.svg +6 -0
  440. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleBell.svg +7 -0
  441. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleCalendar.svg +36 -0
  442. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleCheckmark.svg +4 -0
  443. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleConnection.svg +9 -0
  444. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleEmptyDoc.svg +7 -0
  445. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleEmptyList.svg +6 -0
  446. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleError.svg +8 -0
  447. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleMagnifier.svg +6 -0
  448. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleMail.svg +9 -0
  449. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleNoSavedItems.svg +12 -0
  450. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleNotFoundMagnifier.svg +10 -0
  451. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleReload.svg +8 -0
  452. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SimpleTask.svg +12 -0
  453. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SleepingBell.svg +7 -0
  454. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SortColumn.svg +28 -0
  455. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SuccessHighFive.svg +6 -0
  456. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SuccessScreen.svg +4 -0
  457. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-Tent.svg +7 -0
  458. package/src/sap/m/themes/base/illustrations/sapIllus-Dot-UnableToLoadImage.svg +8 -0
  459. package/src/sap/m/themes/base/library.source.less +2 -1
  460. package/src/sap/m/upload/UploadSet.js +15 -4
  461. package/src/sap/m/upload/UploadSetItem.js +5 -3
  462. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @abstract
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.107.1
30
+ * @version 1.108.1
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.107.1
39
+ * @version 1.108.1
40
40
  *
41
41
  * @constructor
42
42
  * @public
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @extends sap.ui.core.Element
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.107.1
41
+ * @version 1.108.1
42
42
  *
43
43
  * @public
44
44
  * @since 1.92
@@ -123,7 +123,7 @@ sap.ui.define([
123
123
  * is opened. The dialog is closed via a date time period value selection or by pressing the "Cancel" button.
124
124
  *
125
125
  * @author SAP SE
126
- * @version 1.107.1
126
+ * @version 1.108.1
127
127
  *
128
128
  * @constructor
129
129
  * @public
@@ -355,7 +355,8 @@ sap.ui.define([
355
355
  }
356
356
  };
357
357
 
358
- this._oInput._getValueHelpIcon().setTooltip(oResourceBundle.getText("INPUT_VALUEHELP_BUTTON"));
358
+ this._oInput._getValueHelpIcon().setDecorative(false);
359
+ this._oInput._getValueHelpIcon().resetProperty("alt");
359
360
  this._oInput.addDelegate(this._onBeforeInputRenderingDelegate, this);
360
361
 
361
362
  this.setAggregation("_input", this._oInput, false);
@@ -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.107.1
23
+ * @version 1.108.1
24
24
  *
25
25
  * @public
26
26
  * @since 1.92
@@ -10,6 +10,7 @@ sap.ui.define([
10
10
  'sap/ui/core/Core',
11
11
  'sap/ui/core/Control',
12
12
  'sap/ui/core/library',
13
+ 'sap/ui/core/InvisibleText',
13
14
  'sap/ui/Device',
14
15
  'sap/ui/base/ManagedObject',
15
16
  'sap/m/Link',
@@ -23,6 +24,7 @@ function(library,
23
24
  Core,
24
25
  Control,
25
26
  coreLibrary,
27
+ InvisibleText,
26
28
  Device,
27
29
  ManagedObject,
28
30
  Link,
@@ -61,6 +63,9 @@ function(library,
61
63
  // shortcut for sap.m.EmptyIndicator
62
64
  var EmptyIndicatorMode = library.EmptyIndicatorMode;
63
65
 
66
+ // shortcut for sap.m.LinkAccessibleRole
67
+ var LinkAccessibleRole = library.LinkAccessibleRole;
68
+
64
69
  function reduceWhitespace(sText) {
65
70
  return sText.replace(/ {2,}/g, ' ').replace(/\t{2,}/g, ' ');
66
71
  }
@@ -100,7 +105,7 @@ function(library,
100
105
  * @implements sap.ui.core.IFormContent, sap.m.IHyphenation
101
106
  *
102
107
  * @author SAP SE
103
- * @version 1.107.1
108
+ * @version 1.108.1
104
109
  *
105
110
  * @constructor
106
111
  * @public
@@ -171,7 +176,12 @@ function(library,
171
176
  * The "More" link.
172
177
  * @private
173
178
  */
174
- _showMoreLink: {type: 'sap.m.Link', multiple: false, visibility: "hidden"}
179
+ _showMoreLink: {type: 'sap.m.Link', multiple: false, visibility: "hidden"},
180
+
181
+ /**
182
+ * Screen Reader ariaLabelledBy
183
+ */
184
+ _ariaLabelledBy: {type: "sap.ui.core.InvisibleText", multiple: false, visibility: "hidden"}
175
185
  },
176
186
 
177
187
  designtime: "sap/m/designtime/ExpandableText.designtime"
@@ -180,6 +190,14 @@ function(library,
180
190
  renderer: ExpandableTextRenderer
181
191
  });
182
192
 
193
+ ExpandableText.prototype.init = function () {
194
+ this.setAggregation("_ariaLabelledBy", new InvisibleText());
195
+ };
196
+
197
+ ExpandableText.prototype.onBeforeRendering = function() {
198
+ this._updateAriaLabelledByText();
199
+ };
200
+
183
201
  /**
184
202
  * Gets the text.
185
203
  *
@@ -266,7 +284,9 @@ function(library,
266
284
 
267
285
  if (!showMoreLink) {
268
286
  showMoreLink = new Link(this.getId() + '-showMoreLink', {
287
+ accessibleRole: LinkAccessibleRole.Button,
269
288
  text: this.getProperty("expanded") ? TEXT_SHOW_LESS : TEXT_SHOW_MORE,
289
+ ariaLabelledBy: this.getAggregation("_ariaLabelledBy"),
270
290
  press: function (oEvent) {
271
291
  var oText,
272
292
  bExpanded,
@@ -324,6 +344,8 @@ function(library,
324
344
  oPopover.addContent(oText);
325
345
 
326
346
  oPopover.openBy(oEvent.getSource());
347
+
348
+ this._updateAriaLabelledByText(true);
327
349
  }
328
350
  }.bind(this)
329
351
  });
@@ -338,6 +360,24 @@ function(library,
338
360
 
339
361
  ExpandableText.prototype._onPopoverBeforeClose = function () {
340
362
  this._getShowMoreLink().setText(TEXT_SHOW_MORE);
363
+ this._updateAriaLabelledByText();
364
+ };
365
+
366
+ ExpandableText.prototype._updateAriaLabelledByText = function (bExpanded) {
367
+ var sAriaText;
368
+
369
+ bExpanded = bExpanded || this.getProperty("expanded");
370
+
371
+ switch (this.getOverflowMode()) {
372
+ case ExpandableTextOverflowMode.Popover:
373
+ sAriaText = oRb.getText(bExpanded ? "EXPANDABLE_TEXT_SHOW_LESS_POPOVER_ARIA_LABEL" : "EXPANDABLE_TEXT_SHOW_MORE_POPOVER_ARIA_LABEL");
374
+ break;
375
+ default:
376
+ sAriaText = oRb.getText(bExpanded ? "EXPANDABLE_TEXT_SHOW_LESS_ARIA_LABEL" : "EXPANDABLE_TEXT_SHOW_MORE_ARIA_LABEL");
377
+ break;
378
+ }
379
+
380
+ this.getAggregation("_ariaLabelledBy").setText(sAriaText);
341
381
  };
342
382
 
343
383
  /**
@@ -58,7 +58,8 @@ sap.ui.define([
58
58
  bRenderWhitespace = oText.getRenderWhitespace(),
59
59
  bExpandable = oText._isExpandable(),
60
60
  bExpanded = oText.getProperty("expanded"),
61
- sEllipsisText = bExpanded ? " " : "... ";
61
+ sEllipsisText = bExpanded ? " " : "... ",
62
+ oAriaLabelledByControl = oText.getAggregation("_ariaLabelledBy");
62
63
 
63
64
  // start writing HTML
64
65
  oRm.openStart("div", oText);
@@ -114,6 +115,8 @@ sap.ui.define([
114
115
  oRm.renderControl(oText._getShowMoreLink());
115
116
  }
116
117
 
118
+ oRm.renderControl(oAriaLabelledByControl);
119
+
117
120
  // finalize
118
121
  oRm.close("div");
119
122
  };
@@ -170,7 +170,7 @@ sap.ui.define([
170
170
  *
171
171
  * @extends sap.ui.core.Control
172
172
  * @implements sap.ui.core.IShrinkable
173
- * @version 1.107.1
173
+ * @version 1.108.1
174
174
  *
175
175
  * @constructor
176
176
  * @public
@@ -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.107.1
23
+ * @version 1.108.1
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.107.1
55
+ * @version 1.108.1
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.107.1
31
+ * @version 1.108.1
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.107.1
43
+ * @version 1.108.1
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -56,7 +56,7 @@ function(
56
56
  * @extends sap.m.ListItemBase
57
57
  *
58
58
  * @author SAP SE
59
- * @version 1.107.1
59
+ * @version 1.108.1
60
60
  *
61
61
  * @constructor
62
62
  * @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.107.1
22
+ * @version 1.108.1
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  *
29
29
  * @class text
30
- * @version 1.107.1
30
+ * @version 1.108.1
31
31
  * @private
32
32
  * @since 1.38
33
33
  * @alias HeaderAdapter
@@ -227,7 +227,7 @@ sap.ui.define([
227
227
  * Constructor for an sap.m.Fiori20Adapter.
228
228
  *
229
229
  * @class text
230
- * @version 1.107.1
230
+ * @version 1.108.1
231
231
  * @private
232
232
  * @since 1.38
233
233
  * @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.107.1
65
+ * @version 1.108.1
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.107.1
27
+ * @version 1.108.1
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.107.1
49
+ * @version 1.108.1
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.107.1
56
+ * @version 1.108.1
57
57
  *
58
58
  * @constructor
59
59
  * @public
@@ -23,7 +23,8 @@ sap.ui.define([
23
23
  "sap/ui/core/theming/Parameters",
24
24
  "sap/ui/thirdparty/jquery",
25
25
  "sap/ui/core/library",
26
- "sap/ui/core/Configuration"
26
+ "sap/ui/core/Configuration",
27
+ "sap/ui/core/InvisibleText"
27
28
  ], function (
28
29
  library,
29
30
  Control,
@@ -43,7 +44,8 @@ sap.ui.define([
43
44
  Parameters,
44
45
  jQuery,
45
46
  coreLibrary,
46
- Configuration
47
+ Configuration,
48
+ InvisibleText
47
49
  ) {
48
50
  "use strict";
49
51
 
@@ -79,7 +81,7 @@ sap.ui.define([
79
81
  * @extends sap.ui.core.Control
80
82
  *
81
83
  * @author SAP SE
82
- * @version 1.107.1
84
+ * @version 1.108.1
83
85
  * @since 1.34.0
84
86
  *
85
87
  * @public
@@ -264,6 +266,10 @@ sap.ui.define([
264
266
  * The hidden aggregation for the message in the failed state.
265
267
  */
266
268
  _failedMessageText: {type: "sap.m.Text", multiple: false, visibility: "hidden"},
269
+ /**
270
+ * The hidden aggregation that uses this id in aria-describedby attribute.
271
+ */
272
+ _invisibleText: {type:"sap.ui.core.InvisibleText",multiple: false, visibility: "hidden"},
267
273
  /**
268
274
  * The hidden aggregation for the Tile Icon Works only in IconMode.
269
275
  * @experimental since 1.96
@@ -364,6 +370,9 @@ sap.ui.define([
364
370
  this._oFailedText.addStyleClass("sapMGTFailed");
365
371
  this.setAggregation("_failedMessageText", this._oFailedText, true);
366
372
 
373
+ this._oInvisibleText = new InvisibleText(this.getId() + "-ariaText");
374
+ this.setAggregation("_invisibleText", this._oInvisibleText, true);
375
+
367
376
  this._oWarningIcon = new Icon(this.getId() + "-warn-icon", {
368
377
  src: "sap-icon://notification",
369
378
  size: "1.375rem"
@@ -542,6 +551,11 @@ sap.ui.define([
542
551
  this._sParentResizeListenerId = null;
543
552
  }
544
553
 
554
+ if (this._sGenericTileResizeListenerId) {
555
+ ResizeHandler.deregister(this._sGenericTileResizeListenerId);
556
+ this._sGenericTileResizeListenerId = null;
557
+ }
558
+
545
559
  Device.media.detachHandler(this._handleMediaChange, this, DEVICE_SET);
546
560
 
547
561
  if (this._$RootNode) {
@@ -591,6 +605,10 @@ sap.ui.define([
591
605
  ResizeHandler.deregister(this._sResizeListenerId);
592
606
  this._sParentResizeListenerId = null;
593
607
  }
608
+ if (this._sGenericTileResizeListenerId) {
609
+ ResizeHandler.deregister(this._sGenericTileResizeListenerId);
610
+ this._sGenericTileResizeListenerId = null;
611
+ }
594
612
 
595
613
  //sets the extra width of 0.5rem when the grid container has 1rem gap for the TwoByxxxx tiles
596
614
  var oGetParent = this.getParent();
@@ -638,6 +656,8 @@ sap.ui.define([
638
656
 
639
657
  var sMode = this.getMode();
640
658
  var bScreenLarge = this._isScreenLarge();
659
+ this._sGenericTileResizeListenerId = ResizeHandler.register(this, this._handleResizeOnTile.bind(this));
660
+ this._handleResizeOnTile();
641
661
  if (sMode === GenericTileMode.LineMode) {
642
662
  var $Parent = this.$().parent();
643
663
  if (bScreenLarge) {
@@ -683,6 +703,10 @@ sap.ui.define([
683
703
  this._applyExtraHeight();
684
704
  }
685
705
 
706
+ //Sets the aria-describedby attribute and uses the _invisibleText id in it
707
+ if (this.getTooltip() && this.getDomRef()) {
708
+ this.getDomRef().setAttribute("aria-describedby",this.getAggregation("_invisibleText").getId());
709
+ }
686
710
  this.onDragComplete();
687
711
  };
688
712
  /**
@@ -769,6 +793,47 @@ sap.ui.define([
769
793
  }
770
794
  };
771
795
 
796
+ /**
797
+ *Resize handler on the GenericTile
798
+ *
799
+ * @private
800
+ */
801
+
802
+ GenericTile.prototype._handleResizeOnTile = function () {
803
+ if (this._isIconMode() && this.getFrameType() === FrameType.OneByOne) {
804
+ this._handleResizeOnIconTile();
805
+ }
806
+ };
807
+
808
+ /**
809
+ *Adjusts the alignment inside the IconMode tiles when its width is getting changed
810
+ *
811
+ * @private
812
+ */
813
+
814
+ GenericTile.prototype._handleResizeOnIconTile = function () {
815
+ var oTitle = this._oTitle.getDomRef();
816
+ var bIsTabletSize = window.matchMedia("(max-width: 600px)").matches;
817
+ var bIsMobileSize = window.matchMedia("(max-width: 374px)").matches;
818
+ if (oTitle) {
819
+ var iHeight = parseInt(getComputedStyle(oTitle).height.slice(0,2));
820
+ var iLineHeight = parseInt(getComputedStyle(oTitle).lineHeight.slice(0,2));
821
+ var iNumLines = iHeight / iLineHeight;
822
+ if (iNumLines === 1) {
823
+ this.addStyleClass("sapMGTHeaderOneLine");
824
+ } else {
825
+ this.removeStyleClass("sapMGTHeaderOneLine");
826
+ }
827
+ if (!(bIsTabletSize || bIsMobileSize) && iNumLines === 3 && this._oSubTitle.getDomRef()) {
828
+ this._oSubTitle.setMaxLines(1);
829
+ this.addStyleClass("sapMGTHeaderThreeLine");
830
+ } else {
831
+ this.removeStyleClass("sapMGTHeaderThreeLine");
832
+ this._oSubTitle.setMaxLines(2);
833
+ }
834
+ }
835
+ };
836
+
772
837
  /**
773
838
  * @private
774
839
  */
@@ -1269,12 +1334,16 @@ sap.ui.define([
1269
1334
 
1270
1335
  var frameType = this.getFrameType();
1271
1336
  if (this._isIconMode()) {
1272
- if (bSubheader) {
1273
- this._oTitle.setProperty("maxLines", 1, true);
1274
- } else {
1275
- this._oTitle.setProperty("maxLines", 2, true);
1337
+ var iHeaderLines,iSubHeaderLines;
1338
+ iSubHeaderLines = (frameType === FrameType.TwoByHalf) ? 1 : 2;
1339
+ if (frameType === FrameType.OneByOne) {
1340
+ iHeaderLines = 4;
1341
+ } else if (frameType === FrameType.TwoByHalf) {
1342
+ iHeaderLines = (bSubheader) ? 1 : 2;
1276
1343
  }
1277
- } else if (frameType === FrameType.TwoByOne && this.getMode() === GenericTileMode.ActionMode) {
1344
+ this._oTitle.setProperty("maxLines", iHeaderLines, true);
1345
+ this._oSubTitle.setProperty("maxLines", iSubHeaderLines, true);
1346
+ } else if (frameType === FrameType.TwoByOne && this.getMode() === GenericTileMode.ActionMode) {
1278
1347
  this._oTitle.setProperty("maxLines", 2, true);
1279
1348
  } else if (frameType === FrameType.OneByHalf || frameType === FrameType.TwoByHalf) {
1280
1349
  this._oTitle.setProperty("maxLines", 2, true);
@@ -1416,14 +1485,11 @@ sap.ui.define([
1416
1485
 
1417
1486
  /**
1418
1487
  * Returns a text for the ARIA label as combination of header and content texts
1419
- * when the tooltip is empty
1420
1488
  * @private
1421
1489
  * @returns {string} The ARIA label text
1422
1490
  */
1423
1491
  GenericTile.prototype._getAriaAndTooltipText = function () {
1424
- var sAriaText = (this.getTooltip_AsString() && !this._isTooltipSuppressed())
1425
- ? this.getTooltip_AsString()
1426
- : (this._getHeaderAriaAndTooltipText() + "\n" + this._getContentAriaAndTooltipText());
1492
+ var sAriaText = this._getHeaderAriaAndTooltipText() + "\n" + this._getContentAriaAndTooltipText();
1427
1493
  switch (this.getState()) {
1428
1494
  case LoadState.Disabled:
1429
1495
  return "";
@@ -1442,15 +1508,13 @@ sap.ui.define([
1442
1508
 
1443
1509
  /**
1444
1510
  * Returns text for ARIA label.
1445
- * If the application provides a specific tooltip, the ARIA label is equal to the tooltip text.
1446
- * If the application doesn't provide a tooltip or the provided tooltip contains only white spaces,
1447
- * calls _getAriaAndTooltipText to get text.
1448
1511
  *
1449
1512
  * @private
1513
+ * @param {boolean} bHideSizeAnnouncement if set to true it hides the size announcement of the tile while read by a screen reader
1450
1514
  * @returns {string} Text for ARIA label.
1451
1515
  */
1452
- GenericTile.prototype._getAriaText = function () {
1453
- var sAriaText = this.getTooltip_Text();
1516
+ GenericTile.prototype._getAriaText = function (bHideSizeAnnouncement) {
1517
+ var sAriaText = this._getAriaAndTooltipText();
1454
1518
  var sAriaLabel = this.getAriaLabel();
1455
1519
  if (!sAriaText || this._isTooltipSuppressed()) {
1456
1520
  sAriaText = this._getAriaAndTooltipText(); // ARIA label set by the control
@@ -1461,7 +1525,40 @@ sap.ui.define([
1461
1525
  if (sAriaLabel) {
1462
1526
  sAriaText = sAriaLabel + " " + sAriaText;
1463
1527
  }
1464
- return sAriaText; // ARIA label set by the app, equal to tooltip
1528
+ if (!bHideSizeAnnouncement) {
1529
+ sAriaText = sAriaText.trim();
1530
+ sAriaText += ("\n" + this._getSizeDescription());
1531
+ }
1532
+ return sAriaText.trim(); // ARIA label set by the app, equal to tooltip
1533
+ };
1534
+
1535
+ /**
1536
+ * Returns the size description of a tile according to its frame type, that is announced by the screen reader
1537
+ *
1538
+ * @returns {string} Text for the size description
1539
+ * @private
1540
+ */
1541
+ GenericTile.prototype._getSizeDescription = function () {
1542
+ var sText = "",
1543
+ frameType = this.getFrameType();
1544
+ if (this.getMode() === GenericTileMode.LineMode) {
1545
+ var bIsLink = this.getUrl() && !this._isInActionScope() && this.getState() !== LoadState.Disabled;
1546
+ var bHasPress = this.hasListeners("press");
1547
+ if (bIsLink || bHasPress) {
1548
+ sText = "GENERIC_TILE_LINK";
1549
+ } else {
1550
+ sText = "GENERIC_TILE_LINE_SIZE";
1551
+ }
1552
+ } else if (frameType === FrameType.OneByHalf) {
1553
+ sText = "GENERIC_TILE_FLAT_SIZE";
1554
+ } else if (frameType === FrameType.TwoByHalf) {
1555
+ sText = "GENERIC_TILE_FLAT_WIDE_SIZE";
1556
+ } else if (frameType === FrameType.TwoByOne) {
1557
+ sText = "GENERIC_TILE_WIDE_SIZE";
1558
+ } else if (frameType === FrameType.OneByOne) {
1559
+ sText = "GENERIC_TILE_ROLE_DESCRIPTION";
1560
+ }
1561
+ return this._oRb.getText(sText);
1465
1562
  };
1466
1563
 
1467
1564
  /**
@@ -14,8 +14,6 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/thirdpart
14
14
  // shortcut for sap.m.LoadState
15
15
  var LoadState = library.LoadState;
16
16
 
17
- var oRb = sap.ui.getCore().getLibraryResourceBundle("sap.m");
18
-
19
17
  /**
20
18
  * GenericTileLineMode renderer.
21
19
  * @namespace
@@ -74,8 +72,6 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/thirdpart
74
72
  oRm.attr("aria-label", sAriaText);
75
73
  if (sAriaRoleDescription) {
76
74
  oRm.attr("aria-roledescription", sAriaRoleDescription );
77
- } else {
78
- oRm.attr("aria-roledescription", oRb.getText("GENERIC_TILE_ROLE_DESCRIPTION"));
79
75
  }
80
76
  if (sAriaRole) {
81
77
  oRm.attr("role", sAriaRole);
@@ -117,6 +113,10 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/thirdpart
117
113
  oRm.class("sapMGTFailed");
118
114
  }
119
115
  oRm.openEnd();
116
+ if (sTooltipText) {
117
+ oControl.getAggregation("_invisibleText").setText(sTooltipText);
118
+ oRm.renderControl(oControl.getAggregation("_invisibleText"));
119
+ }
120
120
  // focus div was only getting rendered when screen size was small
121
121
  // which in turn was not rendering active state when screen size was large and thus default browser active state would suffice
122
122
  // in the new line tile visualisation we need active state same as other generic tiles
@@ -19,8 +19,6 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
19
19
 
20
20
  var ValueColor = library.ValueColor;
21
21
 
22
- var oRb = sap.ui.getCore().getLibraryResourceBundle("sap.m");
23
-
24
22
  /**
25
23
  * GenericTile renderer.
26
24
  * @namespace
@@ -49,6 +47,7 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
49
47
  var sAriaRole = oControl.getAriaRole();
50
48
  var isHalfFrame = frameType === frameTypes.OneByHalf || frameType === frameTypes.TwoByHalf;
51
49
  var sBGColor = oControl._sBGColor;
50
+ var bIsIconModeOneByOne = oControl._isIconMode() && frameType === frameTypes.OneByOne;
52
51
 
53
52
  // Render a link when URL is provided, not in action scope and the state is enabled
54
53
  var bRenderLink = oControl.getUrl() && (!oControl._isInActionScope() || oControl.getMode() === GenericTileMode.IconMode) && sState !== LoadState.Disabled && !oControl._isNavigateActionEnabled() && !oControl._isActionMode();
@@ -132,11 +131,9 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
132
131
  }
133
132
  if (sState === LoadState.Loaded) {
134
133
  oRm.attr("aria-label", sAriaText);
135
- }
134
+ }
136
135
  if (sAriaRoleDescription) {
137
136
  oRm.attr("aria-roledescription", sAriaRoleDescription );
138
- } else {
139
- oRm.attr("aria-roledescription", oRb.getText("GENERIC_TILE_ROLE_DESCRIPTION"));
140
137
  }
141
138
  if (sState !== LoadState.Disabled) {
142
139
  if (!oControl.isInActionRemoveScope() && oControl.getPressEnabled()) {
@@ -163,6 +160,10 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
163
160
  oRm.class("sapMGTNewsContent");
164
161
  }
165
162
  oRm.openEnd();
163
+ if (sTooltipText) {
164
+ oControl.getAggregation("_invisibleText").setText(sTooltipText);
165
+ oRm.renderControl(oControl.getAggregation("_invisibleText"));
166
+ }
166
167
  var isFooterPresent = false;
167
168
  var isContentPresent = false;
168
169
  function renderLoadingShimmerIconMode(oRm, bIsLoading) {
@@ -253,6 +254,14 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
253
254
  if (!oControl.getIconLoaded()) {
254
255
  renderLoadingShimmerIconMode(oRm, false);
255
256
  } else {
257
+ if (frameType === frameTypes.OneByOne) {
258
+ oRm.openStart("div");
259
+ oRm.class("sapMGTHideOverflow");
260
+ oRm.openEnd();
261
+ oRm.openStart("div");
262
+ oRm.class("sapMGTIconWrapper");
263
+ oRm.openEnd();
264
+ }
256
265
  oRm.openStart("div");
257
266
  if (frameType === frameTypes.OneByOne) {
258
267
  oRm.class("sapMGTOneByOneIcon");
@@ -317,6 +326,10 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
317
326
  }
318
327
 
319
328
  this._renderHeader(oRm, oControl);
329
+ if (bIsIconModeOneByOne) {
330
+ oRm.close("div");
331
+ oRm.close("div");
332
+ }
320
333
  for (var i = 0; i < iLength; i++) {
321
334
  isFooterPresent = oControl._checkFooter(aTileContent[i], oControl) && (aTileContent[i].getFooter() || aTileContent[i].getUnit());
322
335
  var oAggregationContent = aTileContent[i].getContent();
@@ -330,16 +343,10 @@ sap.ui.define(["sap/m/library", "sap/base/security/encodeCSS", "sap/ui/core/Conf
330
343
  }
331
344
  }
332
345
 
333
- if (!(isHalfFrame && isContentPresent)) {
334
- if (oControl.getSubheader()) {
335
- //Restrict creation of SubHeader for IconMode & OneByOne frameType
336
- if (!(oControl._isIconMode() && oControl.getFrameType() == frameTypes.OneByOne)) {
337
- this._renderSubheader(oRm, oControl);
338
- }
339
- }
346
+ if (!(isHalfFrame && isContentPresent) && oControl.getSubheader()) {
347
+ this._renderSubheader(oRm, oControl);
340
348
  }
341
-
342
- oRm.close("div");
349
+ oRm.close("div");
343
350
 
344
351
  if ( !oControl._isIconMode() ) { //Restrict creation of Footer for IconMode
345
352
  oRm.openStart("div", oControl.getId() + "-content");
@@ -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.107.1
33
+ * @version 1.108.1
34
34
  *
35
35
  * @constructor
36
36
  * @public