@openui5/sap.m 1.117.1 → 1.118.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/package.json +4 -4
  2. package/src/sap/m/.library +1 -1
  3. package/src/sap/m/AccButton.js +1 -1
  4. package/src/sap/m/ActionListItem.js +1 -1
  5. package/src/sap/m/ActionSelect.js +1 -1
  6. package/src/sap/m/ActionSheet.js +1 -1
  7. package/src/sap/m/ActionTile.js +1 -1
  8. package/src/sap/m/ActionTileContent.js +1 -1
  9. package/src/sap/m/AdditionalTextButton.js +1 -1
  10. package/src/sap/m/App.js +1 -1
  11. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  12. package/src/sap/m/Avatar.js +1 -1
  13. package/src/sap/m/Bar.js +1 -1
  14. package/src/sap/m/Breadcrumbs.js +16 -1
  15. package/src/sap/m/BusyDialog.js +1 -1
  16. package/src/sap/m/BusyIndicator.js +1 -1
  17. package/src/sap/m/Button.js +7 -5
  18. package/src/sap/m/Carousel.js +1 -1
  19. package/src/sap/m/CarouselLayout.js +1 -1
  20. package/src/sap/m/CheckBox.js +1 -1
  21. package/src/sap/m/ColorPalette.js +1 -1
  22. package/src/sap/m/ColorPalettePopover.js +1 -1
  23. package/src/sap/m/Column.js +13 -26
  24. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  25. package/src/sap/m/ColumnListItem.js +48 -12
  26. package/src/sap/m/ColumnListItemRenderer.js +96 -83
  27. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverItem.js +1 -1
  30. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  31. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  32. package/src/sap/m/ComboBox.js +1 -1
  33. package/src/sap/m/ComboBoxBase.js +1 -1
  34. package/src/sap/m/ComboBoxTextField.js +1 -1
  35. package/src/sap/m/CustomListItem.js +1 -1
  36. package/src/sap/m/CustomTile.js +1 -1
  37. package/src/sap/m/CustomTreeItem.js +1 -1
  38. package/src/sap/m/DatePicker.js +1 -1
  39. package/src/sap/m/DateRangeSelection.js +2 -2
  40. package/src/sap/m/DateTimeField.js +1 -1
  41. package/src/sap/m/DateTimeInput.js +1 -1
  42. package/src/sap/m/DateTimePicker.js +3 -3
  43. package/src/sap/m/Dialog.js +1 -1
  44. package/src/sap/m/DisplayListItem.js +1 -1
  45. package/src/sap/m/DraftIndicator.js +1 -1
  46. package/src/sap/m/DynamicDate.js +1 -1
  47. package/src/sap/m/DynamicDateFormat.js +4 -0
  48. package/src/sap/m/DynamicDateOption.js +2 -2
  49. package/src/sap/m/DynamicDateRange.js +119 -6
  50. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  51. package/src/sap/m/ExpandableText.js +1 -1
  52. package/src/sap/m/FacetFilter.js +2 -2
  53. package/src/sap/m/FacetFilterItem.js +6 -2
  54. package/src/sap/m/FacetFilterList.js +8 -5
  55. package/src/sap/m/FeedContent.js +1 -1
  56. package/src/sap/m/FeedInput.js +1 -1
  57. package/src/sap/m/FeedListItem.js +1 -1
  58. package/src/sap/m/FeedListItemAction.js +1 -1
  59. package/src/sap/m/Fiori20Adapter.js +2 -2
  60. package/src/sap/m/FlexBox.js +1 -1
  61. package/src/sap/m/FlexItemData.js +1 -1
  62. package/src/sap/m/FormattedText.js +1 -1
  63. package/src/sap/m/GenericTag.js +1 -1
  64. package/src/sap/m/GenericTile.js +37 -2
  65. package/src/sap/m/GroupHeaderListItem.js +2 -3
  66. package/src/sap/m/GroupHeaderListItemRenderer.js +36 -17
  67. package/src/sap/m/GrowingEnablement.js +10 -6
  68. package/src/sap/m/GrowingList.js +1 -1
  69. package/src/sap/m/HBox.js +1 -1
  70. package/src/sap/m/HeaderContainer.js +1 -1
  71. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  72. package/src/sap/m/IconTabBar.js +2 -2
  73. package/src/sap/m/IconTabBarRenderer.js +1 -1
  74. package/src/sap/m/IconTabBarSelectList.js +1 -1
  75. package/src/sap/m/IconTabFilter.js +2 -2
  76. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  77. package/src/sap/m/IconTabHeader.js +4 -2
  78. package/src/sap/m/IconTabSeparator.js +1 -1
  79. package/src/sap/m/IllustratedMessage.js +1 -1
  80. package/src/sap/m/Illustration.js +59 -7
  81. package/src/sap/m/IllustrationPool.js +47 -13
  82. package/src/sap/m/Image.js +1 -1
  83. package/src/sap/m/ImageContent.js +1 -1
  84. package/src/sap/m/Input.js +1 -1
  85. package/src/sap/m/InputBase.js +1 -1
  86. package/src/sap/m/InputListItem.js +1 -1
  87. package/src/sap/m/Label.js +1 -1
  88. package/src/sap/m/LightBox.js +1 -1
  89. package/src/sap/m/LightBoxItem.js +1 -1
  90. package/src/sap/m/Link.js +1 -1
  91. package/src/sap/m/List.js +1 -16
  92. package/src/sap/m/ListBase.js +109 -148
  93. package/src/sap/m/ListBaseRenderer.js +5 -9
  94. package/src/sap/m/ListItemBase.js +35 -132
  95. package/src/sap/m/ListItemBaseRenderer.js +25 -2
  96. package/src/sap/m/MaskEnabler.js +1 -1
  97. package/src/sap/m/MaskInput.js +1 -1
  98. package/src/sap/m/MaskInputRule.js +1 -1
  99. package/src/sap/m/Menu.js +33 -18
  100. package/src/sap/m/MenuButton.js +1 -1
  101. package/src/sap/m/MenuItem.js +23 -1
  102. package/src/sap/m/MenuListItem.js +6 -5
  103. package/src/sap/m/MessageItem.js +1 -1
  104. package/src/sap/m/MessageListItem.js +1 -1
  105. package/src/sap/m/MessagePage.js +1 -1
  106. package/src/sap/m/MessagePopover.js +1 -1
  107. package/src/sap/m/MessagePopoverItem.js +1 -1
  108. package/src/sap/m/MessageStrip.js +1 -1
  109. package/src/sap/m/MessageToast.js +13 -9
  110. package/src/sap/m/MessageView.js +1 -1
  111. package/src/sap/m/MultiComboBox.js +3 -3
  112. package/src/sap/m/MultiEditField.js +1 -1
  113. package/src/sap/m/MultiInput.js +1 -1
  114. package/src/sap/m/NavContainer.js +17 -1
  115. package/src/sap/m/NewsContent.js +1 -1
  116. package/src/sap/m/NotificationList.js +1 -3
  117. package/src/sap/m/NotificationListBase.js +1 -1
  118. package/src/sap/m/NotificationListGroup.js +1 -1
  119. package/src/sap/m/NotificationListItem.js +1 -1
  120. package/src/sap/m/NumericContent.js +1 -1
  121. package/src/sap/m/NumericInput.js +1 -1
  122. package/src/sap/m/ObjectAttribute.js +1 -1
  123. package/src/sap/m/ObjectHeader.js +1 -1
  124. package/src/sap/m/ObjectIdentifier.js +1 -1
  125. package/src/sap/m/ObjectListItem.js +1 -1
  126. package/src/sap/m/ObjectListItemRenderer.js +7 -1
  127. package/src/sap/m/ObjectMarker.js +2 -2
  128. package/src/sap/m/ObjectNumber.js +1 -1
  129. package/src/sap/m/ObjectStatus.js +1 -1
  130. package/src/sap/m/OverflowToolbar.js +1 -1
  131. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  132. package/src/sap/m/OverflowToolbarButton.js +1 -1
  133. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  134. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  135. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  136. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  137. package/src/sap/m/P13nColumnsItem.js +1 -1
  138. package/src/sap/m/P13nColumnsPanel.js +1 -1
  139. package/src/sap/m/P13nConditionPanel.js +1 -1
  140. package/src/sap/m/P13nDialog.js +1 -1
  141. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  142. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  143. package/src/sap/m/P13nFilterItem.js +1 -1
  144. package/src/sap/m/P13nFilterPanel.js +8 -2
  145. package/src/sap/m/P13nGroupItem.js +1 -1
  146. package/src/sap/m/P13nGroupPanel.js +1 -1
  147. package/src/sap/m/P13nItem.js +1 -1
  148. package/src/sap/m/P13nPanel.js +1 -1
  149. package/src/sap/m/P13nSelectionItem.js +1 -1
  150. package/src/sap/m/P13nSelectionPanel.js +1 -1
  151. package/src/sap/m/P13nSortItem.js +1 -1
  152. package/src/sap/m/P13nSortPanel.js +1 -1
  153. package/src/sap/m/PDFViewer.js +1 -1
  154. package/src/sap/m/Page.js +1 -1
  155. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  156. package/src/sap/m/PagingButton.js +1 -1
  157. package/src/sap/m/Panel.js +5 -1
  158. package/src/sap/m/PanelRenderer.js +6 -1
  159. package/src/sap/m/PlanningCalendar.js +37 -16
  160. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  161. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  162. package/src/sap/m/PlanningCalendarLegendRenderer.js +5 -2
  163. package/src/sap/m/PlanningCalendarRow.js +1 -1
  164. package/src/sap/m/PlanningCalendarView.js +1 -1
  165. package/src/sap/m/Popover.js +1 -1
  166. package/src/sap/m/ProgressIndicator.js +1 -1
  167. package/src/sap/m/PullToRefresh.js +1 -1
  168. package/src/sap/m/QuickView.js +1 -1
  169. package/src/sap/m/QuickViewBase.js +1 -1
  170. package/src/sap/m/QuickViewCard.js +1 -1
  171. package/src/sap/m/QuickViewGroup.js +1 -1
  172. package/src/sap/m/QuickViewGroupElement.js +1 -1
  173. package/src/sap/m/QuickViewPage.js +1 -1
  174. package/src/sap/m/RadioButton.js +1 -1
  175. package/src/sap/m/RadioButtonGroup.js +1 -1
  176. package/src/sap/m/RangeSlider.js +1 -1
  177. package/src/sap/m/RatingIndicator.js +1 -1
  178. package/src/sap/m/ResponsivePopover.js +1 -1
  179. package/src/sap/m/ResponsiveScale.js +1 -1
  180. package/src/sap/m/ScrollBar.js +1 -1
  181. package/src/sap/m/ScrollContainer.js +1 -1
  182. package/src/sap/m/SearchField.js +1 -1
  183. package/src/sap/m/SegmentedButton.js +1 -1
  184. package/src/sap/m/SegmentedButtonItem.js +1 -1
  185. package/src/sap/m/Select.js +1 -1
  186. package/src/sap/m/SelectDialog.js +1 -1
  187. package/src/sap/m/SelectDialogBase.js +1 -1
  188. package/src/sap/m/SelectList.js +1 -1
  189. package/src/sap/m/SelectionDetails.js +1 -1
  190. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  191. package/src/sap/m/SelectionDetailsItem.js +1 -1
  192. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  193. package/src/sap/m/Shell.js +1 -1
  194. package/src/sap/m/SimpleFixFlex.js +1 -1
  195. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  197. package/src/sap/m/SinglePlanningCalendarGrid.js +12 -2
  198. package/src/sap/m/SinglePlanningCalendarGridRenderer.js +1 -1
  199. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +32 -15
  200. package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +8 -22
  201. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  202. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  203. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  204. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  205. package/src/sap/m/SlideTile.js +1 -1
  206. package/src/sap/m/Slider.js +1 -1
  207. package/src/sap/m/SliderTooltip.js +1 -1
  208. package/src/sap/m/SliderTooltipBase.js +1 -1
  209. package/src/sap/m/SliderTooltipContainer.js +1 -1
  210. package/src/sap/m/SplitApp.js +1 -1
  211. package/src/sap/m/SplitButton.js +1 -1
  212. package/src/sap/m/SplitContainer.js +1 -1
  213. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  214. package/src/sap/m/StandardListItem.js +1 -1
  215. package/src/sap/m/StandardTile.js +1 -1
  216. package/src/sap/m/StandardTreeItem.js +1 -1
  217. package/src/sap/m/StepInput.js +1 -1
  218. package/src/sap/m/SuggestionItem.js +1 -1
  219. package/src/sap/m/SuggestionsPopover.js +1 -1
  220. package/src/sap/m/Switch.js +1 -1
  221. package/src/sap/m/TabContainer.js +1 -1
  222. package/src/sap/m/TabContainerItem.js +1 -1
  223. package/src/sap/m/TabStrip.js +5 -3
  224. package/src/sap/m/TabStripItem.js +1 -1
  225. package/src/sap/m/Table.js +162 -141
  226. package/src/sap/m/TablePersoController.js +1 -1
  227. package/src/sap/m/TablePersoDialog.js +1 -1
  228. package/src/sap/m/TablePersoProvider.js +1 -1
  229. package/src/sap/m/TableRenderer.js +123 -90
  230. package/src/sap/m/TableSelectDialog.js +1 -1
  231. package/src/sap/m/Text.js +1 -1
  232. package/src/sap/m/TextArea.js +1 -1
  233. package/src/sap/m/Tile.js +1 -1
  234. package/src/sap/m/TileContainer.js +1 -1
  235. package/src/sap/m/TileContent.js +1 -1
  236. package/src/sap/m/TimePicker.js +1 -1
  237. package/src/sap/m/TimePickerClock.js +1 -1
  238. package/src/sap/m/TimePickerClocks.js +1 -1
  239. package/src/sap/m/TimePickerInputs.js +1 -1
  240. package/src/sap/m/TimePickerInternals.js +1 -1
  241. package/src/sap/m/TimePickerSlider.js +1 -4
  242. package/src/sap/m/TimePickerSliders.js +1 -1
  243. package/src/sap/m/Title.js +1 -1
  244. package/src/sap/m/TitlePropagationSupport.js +1 -1
  245. package/src/sap/m/ToggleButton.js +3 -1
  246. package/src/sap/m/Token.js +1 -1
  247. package/src/sap/m/Tokenizer.js +25 -4
  248. package/src/sap/m/Toolbar.js +1 -1
  249. package/src/sap/m/ToolbarLayoutData.js +1 -1
  250. package/src/sap/m/ToolbarSeparator.js +1 -1
  251. package/src/sap/m/ToolbarSpacer.js +1 -1
  252. package/src/sap/m/Tree.js +1 -1
  253. package/src/sap/m/TreeItemBase.js +1 -1
  254. package/src/sap/m/UploadCollection.js +1 -1
  255. package/src/sap/m/UploadCollectionItem.js +1 -1
  256. package/src/sap/m/UploadCollectionParameter.js +1 -1
  257. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  258. package/src/sap/m/VBox.js +1 -1
  259. package/src/sap/m/ValueStateHeader.js +1 -1
  260. package/src/sap/m/VariantManagement.js +73 -19
  261. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  262. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  263. package/src/sap/m/ViewSettingsDialog.js +23 -18
  264. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  265. package/src/sap/m/ViewSettingsItem.js +1 -1
  266. package/src/sap/m/VisibleItem.js +1 -1
  267. package/src/sap/m/WheelSlider.js +1 -1
  268. package/src/sap/m/WheelSliderContainer.js +1 -1
  269. package/src/sap/m/Wizard.js +1 -1
  270. package/src/sap/m/WizardProgressNavigator.js +1 -1
  271. package/src/sap/m/WizardStep.js +1 -1
  272. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  273. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  274. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  275. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  276. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  277. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  278. package/src/sap/m/designtime/IconTabBar.designtime.js +20 -1
  279. package/src/sap/m/designtime/IconTabFilter.designtime.js +12 -3
  280. package/src/sap/m/library.js +106 -19
  281. package/src/sap/m/messagebundle.properties +38 -16
  282. package/src/sap/m/messagebundle_ar.properties +15 -8
  283. package/src/sap/m/messagebundle_bg.properties +15 -8
  284. package/src/sap/m/messagebundle_ca.properties +15 -8
  285. package/src/sap/m/messagebundle_cs.properties +15 -8
  286. package/src/sap/m/messagebundle_cy.properties +15 -8
  287. package/src/sap/m/messagebundle_da.properties +14 -7
  288. package/src/sap/m/messagebundle_de.properties +15 -8
  289. package/src/sap/m/messagebundle_el.properties +15 -8
  290. package/src/sap/m/messagebundle_en.properties +8 -1
  291. package/src/sap/m/messagebundle_en_GB.properties +8 -1
  292. package/src/sap/m/messagebundle_en_US_sappsd.properties +7 -0
  293. package/src/sap/m/messagebundle_en_US_saprigi.properties +7 -0
  294. package/src/sap/m/messagebundle_en_US_saptrc.properties +7 -0
  295. package/src/sap/m/messagebundle_es.properties +15 -8
  296. package/src/sap/m/messagebundle_es_MX.properties +15 -8
  297. package/src/sap/m/messagebundle_et.properties +14 -7
  298. package/src/sap/m/messagebundle_fi.properties +15 -8
  299. package/src/sap/m/messagebundle_fr.properties +17 -10
  300. package/src/sap/m/messagebundle_fr_CA.properties +16 -9
  301. package/src/sap/m/messagebundle_hi.properties +15 -8
  302. package/src/sap/m/messagebundle_hr.properties +15 -8
  303. package/src/sap/m/messagebundle_hu.properties +15 -8
  304. package/src/sap/m/messagebundle_id.properties +21 -14
  305. package/src/sap/m/messagebundle_it.properties +15 -8
  306. package/src/sap/m/messagebundle_iw.properties +15 -8
  307. package/src/sap/m/messagebundle_ja.properties +15 -8
  308. package/src/sap/m/messagebundle_kk.properties +15 -8
  309. package/src/sap/m/messagebundle_ko.properties +15 -8
  310. package/src/sap/m/messagebundle_lt.properties +15 -8
  311. package/src/sap/m/messagebundle_lv.properties +15 -8
  312. package/src/sap/m/messagebundle_ms.properties +15 -8
  313. package/src/sap/m/messagebundle_nl.properties +60 -53
  314. package/src/sap/m/messagebundle_no.properties +17 -10
  315. package/src/sap/m/messagebundle_pl.properties +15 -8
  316. package/src/sap/m/messagebundle_pt.properties +15 -8
  317. package/src/sap/m/messagebundle_pt_PT.properties +15 -8
  318. package/src/sap/m/messagebundle_ro.properties +15 -8
  319. package/src/sap/m/messagebundle_ru.properties +15 -8
  320. package/src/sap/m/messagebundle_sh.properties +15 -8
  321. package/src/sap/m/messagebundle_sk.properties +15 -8
  322. package/src/sap/m/messagebundle_sl.properties +15 -8
  323. package/src/sap/m/messagebundle_sv.properties +15 -8
  324. package/src/sap/m/messagebundle_th.properties +15 -8
  325. package/src/sap/m/messagebundle_tr.properties +15 -8
  326. package/src/sap/m/messagebundle_uk.properties +15 -8
  327. package/src/sap/m/messagebundle_vi.properties +15 -8
  328. package/src/sap/m/messagebundle_zh_CN.properties +15 -8
  329. package/src/sap/m/messagebundle_zh_TW.properties +15 -8
  330. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  331. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  332. package/src/sap/m/p13n/BasePanel.js +3 -3
  333. package/src/sap/m/p13n/Container.js +1 -15
  334. package/src/sap/m/p13n/Engine.js +42 -8
  335. package/src/sap/m/p13n/GroupController.js +1 -1
  336. package/src/sap/m/p13n/GroupPanel.js +1 -1
  337. package/src/sap/m/p13n/Popup.js +3 -3
  338. package/src/sap/m/p13n/QueryPanel.js +7 -2
  339. package/src/sap/m/p13n/SelectionController.js +1 -1
  340. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  341. package/src/sap/m/p13n/SortController.js +1 -1
  342. package/src/sap/m/p13n/SortPanel.js +1 -1
  343. package/src/sap/m/p13n/enum/PersistenceMode.js +1 -1
  344. package/src/sap/m/p13n/enum/ProcessingStrategy.js +10 -1
  345. package/src/sap/m/p13n/handler/xConfigHandler.js +6 -5
  346. package/src/sap/m/p13n/modification/FlexModificationHandler.js +16 -3
  347. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -1
  348. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  349. package/src/sap/m/p13n/modules/UIManager.js +1 -1
  350. package/src/sap/m/p13n/modules/xConfigAPI.js +5 -0
  351. package/src/sap/m/plugins/CellSelector.js +60 -18
  352. package/src/sap/m/plugins/ColumnResizer.js +3 -5
  353. package/src/sap/m/plugins/CopyProvider.js +1 -1
  354. package/src/sap/m/plugins/DataStateIndicator.js +4 -2
  355. package/src/sap/m/plugins/PasteProvider.js +1 -1
  356. package/src/sap/m/plugins/PluginBase.js +1 -1
  357. package/src/sap/m/semantic/AddAction.js +1 -1
  358. package/src/sap/m/semantic/CancelAction.js +1 -1
  359. package/src/sap/m/semantic/DeleteAction.js +1 -1
  360. package/src/sap/m/semantic/DetailPage.js +1 -1
  361. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  362. package/src/sap/m/semantic/EditAction.js +1 -1
  363. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  364. package/src/sap/m/semantic/FilterAction.js +1 -1
  365. package/src/sap/m/semantic/FilterSelect.js +1 -1
  366. package/src/sap/m/semantic/FlagAction.js +1 -1
  367. package/src/sap/m/semantic/ForwardAction.js +1 -1
  368. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  369. package/src/sap/m/semantic/GroupAction.js +1 -1
  370. package/src/sap/m/semantic/GroupSelect.js +1 -1
  371. package/src/sap/m/semantic/MainAction.js +1 -1
  372. package/src/sap/m/semantic/MasterPage.js +1 -1
  373. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  374. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  375. package/src/sap/m/semantic/NegativeAction.js +1 -1
  376. package/src/sap/m/semantic/OpenInAction.js +1 -1
  377. package/src/sap/m/semantic/PositiveAction.js +1 -1
  378. package/src/sap/m/semantic/PrintAction.js +1 -1
  379. package/src/sap/m/semantic/SaveAction.js +1 -1
  380. package/src/sap/m/semantic/Segment.js +1 -1
  381. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  382. package/src/sap/m/semantic/SemanticButton.js +1 -1
  383. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  384. package/src/sap/m/semantic/SemanticControl.js +1 -1
  385. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  386. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  387. package/src/sap/m/semantic/SemanticPage.js +1 -1
  388. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  389. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  390. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  391. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  392. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  393. package/src/sap/m/semantic/ShareMenu.js +1 -1
  394. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  395. package/src/sap/m/semantic/SortAction.js +1 -1
  396. package/src/sap/m/semantic/SortSelect.js +1 -1
  397. package/src/sap/m/table/Util.js +19 -2
  398. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  399. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  400. package/src/sap/m/table/columnmenu/Item.js +32 -3
  401. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  402. package/src/sap/m/table/columnmenu/Menu.js +12 -9
  403. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  404. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  405. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  406. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  407. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  408. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  409. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  410. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  411. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  412. package/src/sap/m/themes/base/Avatar.less +5 -5
  413. package/src/sap/m/themes/base/CellSelector.less +9 -0
  414. package/src/sap/m/themes/base/ColumnListItem.less +12 -8
  415. package/src/sap/m/themes/base/DateTimePicker.less +9 -1
  416. package/src/sap/m/themes/base/FeedListItem.less +3 -2
  417. package/src/sap/m/themes/base/GroupHeaderListItem.less +4 -6
  418. package/src/sap/m/themes/base/IconTabBar.less +13 -0
  419. package/src/sap/m/themes/base/ListItemBase.less +9 -6
  420. package/src/sap/m/themes/base/ObjectStatus.less +6 -0
  421. package/src/sap/m/themes/base/Panel.less +2 -5
  422. package/src/sap/m/themes/base/SinglePlanningCalendarMonthGrid.less +9 -6
  423. package/src/sap/m/themes/base/Table.less +30 -12
  424. package/src/sap/m/themes/base/TimePicker.less +1 -0
  425. package/src/sap/m/themes/base/Toolbar.less +3 -1
  426. package/src/sap/m/themes/base/UploadCollection.less +0 -1
  427. package/src/sap/m/themes/base/VariantManagement.less +8 -0
  428. package/src/sap/m/themes/base/ViewSettingsDialog.less +3 -0
  429. package/src/sap/m/upload/FilePreviewDialog.js +224 -115
  430. package/src/sap/m/upload/UploadSet.js +2 -3
  431. package/src/sap/m/upload/UploadSetItem.js +3 -2
  432. package/src/sap/m/upload/UploadSetTable.js +173 -159
  433. package/src/sap/m/upload/UploadSetTableItem.js +40 -45
  434. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
@@ -178,21 +178,24 @@ html.sap-desktop .sapMSPCMonthDay:not(.sapMSPCMonthDayToday):focus::after {
178
178
  .sapMSPCMonthDay.sapMSPCMonthDaySelected.sapMSPCMonthDayToday .sapMSPCMonthNowMarker::before {
179
179
  content: "";
180
180
  position: absolute;
181
- top: 0.125rem;
182
- left: 0.125rem;
183
- right: 0.125rem;
184
- bottom: 0.125rem;
181
+ top: 0.165rem;
182
+ left: 0.165rem;
183
+ right: 0.165rem;
184
+ bottom: 0.165rem;
185
185
  border: 0.0625rem solid @sapList_SelectionBorderColor;
186
186
  pointer-events: none;
187
187
  z-index: 3;
188
188
  }
189
189
 
190
190
  .sapMSPCMonthDay.sapMSPCMonthDaySelected:not(.sapMSPCMonthDayToday) {
191
- background: @sapList_SelectionBackgroundColor;
192
191
  border: 0.0625rem solid @sapList_SelectionBorderColor;
193
192
  }
194
193
 
195
- .sapMSPCMonthDay.sapMSPCMonthDaySelected:not(.sapMSPCMonthDayToday):hover {
194
+ .sapMSPCMonthDay.sapMSPCMonthDaySelected {
195
+ background: @sapList_SelectionBackgroundColor;
196
+ }
197
+
198
+ .sapMSPCMonthDay.sapMSPCMonthDaySelected:hover {
196
199
  background: @sapList_Hover_SelectionBackground;
197
200
  }
198
201
 
@@ -4,6 +4,7 @@
4
4
  /* ============================ */
5
5
 
6
6
  @_sap_m_Table_SelNavColWidth: 3rem;
7
+ @_sap_m_Table_CustomFocusMargin: 1px;
7
8
 
8
9
  .sapMListTbl {
9
10
  width: 100%;
@@ -21,16 +22,18 @@
21
22
  display: table-row;
22
23
  }
23
24
 
24
- .sapMListTbl .sapMTableTH:focus,
25
- .sapMListTbl td:focus {
26
- outline: none;
27
- }
28
-
29
25
  .sapMListTblCellNoData {
30
26
  text-align: center;
31
27
  white-space: pre-wrap;
32
28
  }
33
29
 
30
+ .sapMTablePopinColumn {
31
+ border: 0;
32
+ height: 0;
33
+ padding: 0;
34
+ overflow: hidden;
35
+ }
36
+
34
37
  .sapMListTblHeaderNone {
35
38
  height: 0;
36
39
  }
@@ -377,7 +380,7 @@ tr.sapMListTblHeaderNone > .sapMTableTH {
377
380
  cursor: pointer;
378
381
  }
379
382
 
380
- .sapMColumnHeaderFocusable:focus {
383
+ .sapMTableTH:focus {
381
384
  outline: @_sap_m_ListItemBase_Focus_Outline;
382
385
  outline-offset: @_sap_m_ListItemBase_Focus_OffsetWithGap;
383
386
  }
@@ -413,31 +416,46 @@ tr.sapMListTblHeaderNone > .sapMTableTH {
413
416
  position: relative;
414
417
  }
415
418
 
416
- & > :not(.sapMListTblDummyCell:last-child) {
419
+ & > :not(.sapMListTblDummyCell:last-child),
420
+ & + .sapMListTblSubRow > .sapMListTblSubRowCell {
417
421
  position: relative;
418
422
  }
419
423
 
424
+ & + .sapMListTblSubRow > td::before,
420
425
  & > :not(.sapMListTblDummyCell:last-child)::before {
421
426
  content: "";
422
427
  position: absolute;
423
428
  left: 0;
424
429
  right: 0;
430
+ z-index: 1;
425
431
  pointer-events: none;
426
432
  top: 1px; // mimics outline-offset: -1px
427
433
  bottom: 1px; // mimics outline-offset: -1px
428
434
  border-top: @_sap_m_ListItemBase_Focus_Outline;
429
435
  border-bottom: @_sap_m_ListItemBase_Focus_Outline;
430
- margin-right: 1px; // 1px is set so that the focus border is clearly visible on all sides
436
+ margin-right: @_sap_m_Table_CustomFocusMargin; // make the focus border clearly visible on all sides
437
+ }
438
+
439
+ .sapMListTblHasPopin > &:not(.sapMGHLI) > :not(.sapMListTblCellNoData,.sapMListTblDummyCell:last-child)::before {
440
+ border-bottom: 0;
441
+ bottom: 0;
442
+ }
443
+
444
+ & + .sapMListTblSubRow > td::before {
445
+ border-top: 0;
446
+ top: 0;
431
447
  }
432
448
 
433
- & > .sapMTblFirstVisibleCell::before {
449
+ & > .sapMTblFirstVisibleCell::before,
450
+ & + .sapMListTblSubRow > .sapMTblFirstVisibleCell::before {
434
451
  border-left: @_sap_m_ListItemBase_Focus_Outline;
435
- margin-left: 1px; // mimics outline-offset: -1px
452
+ margin-left: @_sap_m_Table_CustomFocusMargin; // mimics outline-offset
436
453
  }
437
454
 
438
- & > .sapMTblLastVisibleCell::before {
455
+ & > .sapMTblLastVisibleCell::before,
456
+ & + .sapMListTblSubRow > .sapMTblLastVisibleCell::before {
439
457
  border-right: @_sap_m_ListItemBase_Focus_Outline;
440
- margin-right: 1px; // 1px is set so that the focus border is clearly visible on all sides
458
+ margin-right: @_sap_m_Table_CustomFocusMargin; // mimics outline-offset
441
459
  }
442
460
  }
443
461
 
@@ -57,4 +57,5 @@ html.sap-phone {
57
57
  /* DESKTOP STYLES */
58
58
  html.sap-desktop .sapMValueStateHeaderRoot {
59
59
  margin-right: -12px; // fixing a right margin set from popover
60
+ max-width: 100%;
60
61
  }
@@ -3,6 +3,8 @@
3
3
  /* Base theme */
4
4
  /* ============================== */
5
5
 
6
+ @_sap_m_Toolbar_ShrinkItem_MinWidth: 2.5rem;
7
+
6
8
  //we want the first visible element on the row to have specific padding-left value
7
9
  .sapMIBar.sapMTB .sapMBarChild{
8
10
  margin-left: 0.25rem;
@@ -78,7 +80,7 @@
78
80
  }
79
81
 
80
82
  .sapMTBShrinkItem:not(.sapMSF) {
81
- min-width: 2.5rem; /* default min-width value for the shrinkable items */
83
+ min-width: @_sap_m_Toolbar_ShrinkItem_MinWidth; /* default min-width value for the shrinkable items */
82
84
  }
83
85
 
84
86
  /* NewFlex */
@@ -104,7 +104,6 @@
104
104
  .sapMUCFileName.sapMLnk {
105
105
  font-family: @sapUiFontFamily;
106
106
  font-weight: normal;
107
- white-space: nowrap;
108
107
  padding-top: 0.25rem; /* Padding top instead of padding bottom due to in-line placement with Objectmarker */
109
108
  overflow: hidden;
110
109
  text-overflow: ellipsis;
@@ -44,6 +44,14 @@
44
44
  text-shadow: @sapUiContentTextShadow;
45
45
  }
46
46
 
47
+ .sapMVarMngmt .sapMText.sapMVarMngmtTitle {
48
+ color: @sapUiLink;
49
+ text-shadow: @sapUiContentTextShadow;
50
+ font-size: 1rem;
51
+ white-space: nowrap;
52
+ vertical-align: middle;
53
+ }
54
+
47
55
  .sapMVarMngmt .sapMVarMngmtModified {
48
56
  color: @sapUiLink;
49
57
  font-weight: bold;
@@ -95,6 +95,9 @@ html.sap-desktop .sapMTB.sapMListHdrTBar.sapMVSDFilterHeaderToolbar {
95
95
  .sapMPage > .sapMPageHeader + .sapMPageSubHeader + section {
96
96
  top: 5.75rem;
97
97
  }
98
+ .sapMPage .sapMVSDCustomTabContent {
99
+ max-width: 99%;
100
+ }
98
101
  }
99
102
 
100
103
  .sapUiSizeCompact .sapMVSD {
@@ -16,7 +16,8 @@ sap.ui.define([
16
16
  "sap/m/IllustratedMessageType",
17
17
  "sap/m/Carousel",
18
18
  "sap/base/Log"
19
- ], function (Core, Element, HTML, Button, Image, PDFViewer, Dialog, IllustratedMessage, IllustratedMessageType, Carousel, Log) {
19
+ ], function (Core, Element, HTML, Button, Image, PDFViewer, Dialog,
20
+ IllustratedMessage, IllustratedMessageType, Carousel, Log) {
20
21
  "use strict";
21
22
 
22
23
  // get resource translation bundle;
@@ -37,7 +38,8 @@ sap.ui.define([
37
38
  Mpeg: "video/mpeg",
38
39
  Mp4: "video/mp4",
39
40
  Quicktime: "video/quicktime",
40
- MsVideo: "video/x-msvideo"
41
+ MsVideo: "video/x-msvideo",
42
+ Vds: "model/vnd.sap.vds"
41
43
  };
42
44
 
43
45
  /**
@@ -50,38 +52,72 @@ sap.ui.define([
50
52
  * @name sap.m.upload.FilePreviewDialog
51
53
  */
52
54
  var FilePreviewDialog = Element.extend("sap.m.upload.FilePreviewDialog", {
53
-
54
- constructor: function (oPreviewItem) {
55
- if (!oPreviewItem) {
56
- return;
55
+ library: "sap.m",
56
+ metadata: {
57
+ properties: {
58
+ /**
59
+ Current item being previwed in the carousel dialog.
60
+ */
61
+ previewItem: {type: "sap.m.upload.UploadSetTableItem", defaultValue: null},
62
+ /**
63
+ * Items set to build the preview Carousel.
64
+ * */
65
+ items: {type: "sap.m.upload.UploadSetTableItem[]", defaultValue: []}
66
+ },
67
+ aggregations: {
68
+ /**
69
+ * Custom buttons, to be displayed in the preview dialog footer.
70
+ */
71
+ additionalFooterButtons: {type: "sap.m.Button", multiple: true}
57
72
  }
58
- this._oPreviewItem = oPreviewItem;
73
+ },
74
+
75
+ init: function () {
59
76
  this._oRichTextEditor = null;
60
77
  this._oDialog = null;
78
+ this._oViewer = null;
79
+ this._oContentResource = null;
61
80
  },
62
81
 
63
82
  /**
64
- * Opens the {@link sap.m.upload.FilePreviewDialog}.
65
- */
66
- open: function () {
67
- this._loadRichTextEditorDependency()
68
- .then(function(oRichTextEditor){
69
- this._oRichTextEditor = oRichTextEditor;
70
- }.bind(this))
71
- .catch(function(error) {
72
- Log.error(error);
73
- })
74
- .finally(function() {
75
- var aItems = this._oPreviewItem.getParent().getAggregation("items");
76
- if (!aItems || aItems.length === 0 ) {
77
- return;
78
- }
79
- var oCarousel = this._createCarousel(this._oPreviewItem, aItems);
80
- this._oDialog = this._createDialog(oCarousel, aItems);
81
- if (this._oDialog) {
82
- this._oDialog.open();
83
- }
84
- }.bind(this));
83
+ * Opens the {@link sap.m.upload.FilePreviewDialog}.
84
+ */
85
+ open: async function () {
86
+ var aItems = this.getItems();
87
+ if (aItems?.length && this.getPreviewItem()) {
88
+ this._oCarousel = await this._createCarousel();
89
+ if (!this._oDialog) {
90
+ this._oDialog = this._createDialog();
91
+ } else {
92
+ // set title of the dialog to the current previewable item filename.
93
+ this._oDialog.setTitle(this.getPreviewItem()?.getFileName() || "");
94
+ // remove all the existing content and set the new content on the dialog
95
+ this._oDialog.removeAllContent();
96
+ this._oDialog.insertContent(this._oCarousel);
97
+ }
98
+ this._oDialog.open();
99
+ }
100
+ },
101
+
102
+ /**
103
+ * Dynamically require Vds Viewer Control
104
+ * @return {Promise} Promise that resolves on sucessful load of Viewer control
105
+ * @private
106
+ */
107
+ _loadVkDependency: function() {
108
+ return new Promise(function (resolve, reject) {
109
+ Core.loadLibrary("sap.ui.vk", { async: true })
110
+ .then(function() {
111
+ sap.ui.require(["sap/ui/vk/Viewer", "sap/ui/vk/ContentResource"], function(viewer, contentResource) {
112
+ resolve({ viewer, contentResource});
113
+ }, function (error) {
114
+ reject(error);
115
+ });
116
+ })
117
+ .catch(function () {
118
+ reject("sap.ui.vk.Viewer Control not available.");
119
+ });
120
+ });
85
121
  },
86
122
 
87
123
  /**
@@ -106,94 +142,172 @@ sap.ui.define([
106
142
  },
107
143
 
108
144
  /**
109
- * Creates a {@link sap.m.Carousel} of uploaded files.
110
- *
111
- * @param {sap.m.upload.UploadSetTableItem} oPreviewItem The initial active UploadSetTableItem to be previewed.
112
- * @param {array} aItems The collection of UploadSetTableItems to be included in the Carousel.
113
- * @return {sap.m.Carousel} The {@link sap.m.Carousel} control.
114
- * @private
115
- */
116
- _createCarousel: function (oPreviewItem, aItems) {
145
+ * Creates an illustrated message for when no preview is available
146
+ * @param {string} sFileName The name of the file to be previewed
147
+ * @return {sap.m.IllustratedMessage} An illustrated message instance
148
+ * @private
149
+ */
150
+ _createIllustratedMessage: function (sFileName) {
151
+ const oIllustratedMessage = new IllustratedMessage({
152
+ illustrationType: IllustratedMessageType.NoData,
153
+ title: sFileName,
154
+ description: "No preview available for this file.",
155
+ enableVerticalResponsiveness: true
156
+ });
157
+ return oIllustratedMessage;
158
+ },
159
+
160
+ /**
161
+ * Creates a viewer for .vds files
162
+ * @param {sap.m.upload.UploadSetTableItem} oItem The UploadSetTableItem to be previewed
163
+ * @return {sap.ui.vk.Viewer} A vds viewer instance or undefined if dependency unavailable
164
+ * @private
165
+ */
166
+ _createVdsViewer: async function (oItem) {
167
+ if (!this.oViewer || !this._oContentResource) {
168
+ try {
169
+ const oVkDependency = await this._loadVkDependency();
170
+ this._oViewer = oVkDependency.viewer;
171
+ this._oContentResource = oVkDependency.contentResource;
172
+ } catch (error) {
173
+ Log.error(error);
174
+ return null;
175
+ }
176
+ }
177
+
178
+ const oVdsViewer = new this._oViewer({
179
+ contentResources: [
180
+ new this._oContentResource({
181
+ source: oItem.getUrl(),
182
+ sourceType: "vds"
183
+ })
184
+ ]
185
+ });
186
+
187
+ return oVdsViewer;
188
+ },
189
+
190
+ /**
191
+ * Creates a rich text viewer
192
+ * @param {sap.m.upload.UploadSetTableItem} oItem The UploadSetTableItem to be previewed
193
+ * @return {sap.ui.richtexteditor.RichTextEditor} A rich text editor instance or undefined if dependency unavailable
194
+ * @private
195
+ */
196
+ _createRichTextEditor: async function (oItem) {
197
+ if (!this._oRichTextEditor) {
198
+ try {
199
+ const oRichTextEditor = await this._loadRichTextEditorDependency();
200
+ this._oRichTextEditor = oRichTextEditor;
201
+ } catch (error) {
202
+ Log.error(error);
203
+ return null;
204
+ }
205
+ }
206
+
207
+ const oRte = new this._oRichTextEditor({
208
+ height: "100%",
209
+ width: "100%",
210
+ editable: false,
211
+ busy: true
212
+ });
213
+
214
+ oRte.attachReady(function () {
215
+ oRte.setBusy(false);
216
+ });
217
+
218
+ const oRequest = new XMLHttpRequest();
219
+ oRequest.open("GET", oItem.getUrl(), false);
220
+ oRequest.send(null);
221
+ const sText = oRequest.responseText;
222
+ oRte.setValue(sText);
223
+
224
+ return oRte;
225
+ },
226
+
227
+ /**
228
+ * Creates a {@link sap.m.Carousel} of uploaded files.
229
+ * @return {sap.m.Carousel} The {@link sap.m.Carousel} control.
230
+ * @private
231
+ */
232
+ _createCarousel: async function () {
233
+ const oPreviewItem = this.getPreviewItem();
234
+ const aItems = this.getItems();
117
235
  var sActivePageId = "";
118
- var that = this;
119
- var aPages = aItems.map(function(oItem) {
236
+ var aPagePromises = aItems.map(async (oItem) => {
120
237
  var sMediaType = oItem.getMediaType();
121
238
 
122
- var oPage = new IllustratedMessage({
123
- illustrationType: IllustratedMessageType.NoData,
124
- title: oItem.getFileName(),
125
- description: "No preview available for this file.",
126
- enableVerticalResponsiveness: true
127
- });
239
+ var sFileName = oItem.getFileName();
240
+ var oPage = this._createIllustratedMessage(sFileName);
128
241
 
129
- switch (sMediaType.toLowerCase()) {
130
- case PreviewableMediaType.Png:
131
- case PreviewableMediaType.Bmp:
132
- case PreviewableMediaType.Jpeg:
133
- case PreviewableMediaType.Gif: {
134
- oPage = new Image({
135
- src: oItem.getUrl()
136
- });
137
- break;
138
- }
139
- case PreviewableMediaType.Txt: {
140
- if (that._oRichTextEditor) {
141
- var oRequest = new XMLHttpRequest();
142
- oRequest.open("GET", oItem.getUrl(), false);
143
- oRequest.send(null);
144
- var sText = oRequest.responseText;
145
-
146
- oPage = new that._oRichTextEditor({
147
- height: "100%",
148
- width: "100%",
149
- value: sText,
150
- editable: false
242
+ if (oItem.getPreviewable()) {
243
+ switch (sMediaType?.toLowerCase()) {
244
+ case PreviewableMediaType.Png:
245
+ case PreviewableMediaType.Bmp:
246
+ case PreviewableMediaType.Jpeg:
247
+ case PreviewableMediaType.Gif: {
248
+ oPage = new Image({
249
+ src: oItem.getUrl()
151
250
  });
251
+ break;
152
252
  }
153
- break;
154
- }
155
- case PreviewableMediaType.Pdf:
156
- case PreviewableMediaType.ChromePdf: {
157
- oPage = new PDFViewer({
158
- source: oItem.getUrl(),
159
- showDownloadButton: false
160
- });
161
- break;
162
- }
163
- case PreviewableMediaType.Mpeg:
164
- case PreviewableMediaType.Mp4:
165
- case PreviewableMediaType.Quicktime:
166
- case PreviewableMediaType.MsVideo: {
167
- oPage = new HTML({
168
- content: "<video controls width='100%' height='100%' src='" + oItem.getUrl() + "'>"
169
- });
170
- break;
253
+ case PreviewableMediaType.Txt: {
254
+ const oRte = await this._createRichTextEditor(oItem);
255
+ if (oRte) {
256
+ oPage = oRte;
257
+ }
258
+ break;
259
+ }
260
+ case PreviewableMediaType.Pdf:
261
+ case PreviewableMediaType.ChromePdf: {
262
+ oPage = new PDFViewer({
263
+ source: oItem.getUrl(),
264
+ showDownloadButton: false
265
+ });
266
+ oPage.setBusy(true);
267
+ break;
268
+ }
269
+ case PreviewableMediaType.Mpeg:
270
+ case PreviewableMediaType.Mp4:
271
+ case PreviewableMediaType.Quicktime:
272
+ case PreviewableMediaType.MsVideo: {
273
+ oPage = new HTML({
274
+ content: "<video controls width='100%' height='100%' src='" + oItem.getUrl() + "'>"
275
+ });
276
+ break;
277
+ }
278
+ case PreviewableMediaType.Tiff:
279
+ case PreviewableMediaType.Vds: {
280
+ const oVdsViewer = await this._createVdsViewer(oItem);
281
+ if (oVdsViewer) {
282
+ oPage = oVdsViewer;
283
+ }
284
+ break;
285
+ }
286
+ default:
287
+ break;
171
288
  }
172
- default:
173
- break;
174
289
  }
175
290
 
176
- sActivePageId = oItem.getId() === oPreviewItem.getId() ? oPage.getId() : sActivePageId;
291
+ sActivePageId = oItem?.getId() === oPreviewItem?.getId() ? oPage?.getId() : sActivePageId;
177
292
 
178
293
  return oPage;
179
294
  });
180
295
 
181
- var oCarousel = new Carousel({
296
+ const aPages = await Promise.all(aPagePromises);
297
+
298
+ const oCarousel = new Carousel({
182
299
  showPageIndicator: true,
183
300
  pages: [
184
301
  aPages
185
302
  ],
186
303
  activePage: sActivePageId,
187
304
  height: "85vh",
188
- pageChanged: function(oEvent) {
305
+ pageChanged: (oEvent) => {
189
306
  var iIndex = aPages.findIndex(function(oPage) {
190
307
  return oPage.sId === oEvent.getParameter("newActivePageId");
191
308
  });
192
309
  var sNewDialogTitle = aItems[iIndex].getFileName();
193
- oEvent
194
- .getSource()
195
- .getParent()
196
- .setProperty("title", sNewDialogTitle);
310
+ this._oDialog.setTitle(sNewDialogTitle);
197
311
  }
198
312
  });
199
313
 
@@ -201,26 +315,24 @@ sap.ui.define([
201
315
  },
202
316
 
203
317
  /**
204
- * Creates a {@link sap.m.Dialog} with {@link sap.m.Carousel} for previewing uploaded files.
205
- *
206
- * @param {sap.m.Carousel} oCarousel The Carousel control.
207
- * @param {array} aItems The collection of UploadSetTableItems included in the Carousel.
208
- * @return {sap.m.Dialog} The {@link sap.m.Dialog} control.
209
- * @private
210
- */
211
- _createDialog: function(oCarousel, aItems) {
318
+ * Creates a {@link sap.m.Dialog} with {@link sap.m.Carousel} for previewing uploaded files.
319
+ * @return {sap.m.Dialog} The {@link sap.m.Dialog} control.
320
+ * @private
321
+ */
322
+ _createDialog: function() {
212
323
  var that = this;
213
- var oActiveItem = this._getActiveUploadSetTableItem(oCarousel, aItems);
324
+ var oActiveItem = this._getActiveUploadSetTableItem();
214
325
  var oDialog = new Dialog({
215
326
  title: oActiveItem.getFileName(),
216
- content: oCarousel,
327
+ content: that._oCarousel,
217
328
  horizontalScrolling: true,
218
329
  verticalScrolling: true,
219
330
  buttons: [
331
+ that.getAdditionalFooterButtons(),
220
332
  new Button({
221
333
  text: oLibraryResourceBundle.getText("UPLOAD_SET_TABLE_FILE_PREVIEW_DIALOG_DOWNLOAD"),
222
334
  press: function () {
223
- that._getActiveUploadSetTableItem(oCarousel, aItems).download(true);
335
+ that._getActiveUploadSetTableItem().download(true);
224
336
  }
225
337
  }),
226
338
  new Button({
@@ -236,20 +348,17 @@ sap.ui.define([
236
348
  },
237
349
 
238
350
  /**
239
- * Creates a {@link sap.m.Carousel} of uploaded files.
240
- *
241
- * @param {sap.m.Carousel} oCarousel The Carousel control.
242
- * @param {array} aItems The collection of UploadSetTableItems included in the Carousel.
243
- * @return {sap.m.upload.UploadSetTableItem} The currently active UploadSetTableItem.
244
- * @private
245
- */
246
- _getActiveUploadSetTableItem: function (oCarousel, aItems) {
247
- var sActivePageId = oCarousel.getActivePage();
248
- var aPages = oCarousel.getPages();
351
+ * Creates a {@link sap.m.Carousel} of uploaded files.
352
+ * @return {sap.m.upload.UploadSetTableItem} The currently active UploadSetTableItem.
353
+ * @private
354
+ */
355
+ _getActiveUploadSetTableItem: function () {
356
+ var sActivePageId = this._oCarousel.getActivePage();
357
+ var aPages = this._oCarousel.getPages();
249
358
  var iIndex = aPages.findIndex(function (oPage) {
250
359
  return oPage.sId === sActivePageId;
251
360
  });
252
- return aItems[iIndex];
361
+ return this.getItems()[iIndex];
253
362
  }
254
363
  });
255
364
 
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
  * and requests, unified behavior of instant and deferred uploads, as well as improved progress indication.
54
54
  * @extends sap.ui.core.Control
55
55
  * @author SAP SE
56
- * @version 1.117.1
56
+ * @version 1.118.0
57
57
  * @constructor
58
58
  * @public
59
59
  * @since 1.63
@@ -678,8 +678,6 @@ sap.ui.define([
678
678
  case KeyCodes.ENTER:
679
679
  if (oItem === this._oEditedItem) {
680
680
  this._handleItemEditConfirmation(oEvent, oItem);
681
- } else {
682
- oItem._handleFileNamePressed();
683
681
  }
684
682
  break;
685
683
  default:
@@ -1588,6 +1586,7 @@ sap.ui.define([
1588
1586
  buttons: [
1589
1587
  new Button({
1590
1588
  text: this._oRb.getText("UPLOAD_SET_OKBUTTON_TEXT"),
1589
+ type: MobileLibrary.ButtonType.Emphasized,
1591
1590
  press: [onPressOk, this]
1592
1591
  }),
1593
1592
  new Button({
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @class Item that represents one file to be uploaded using the {@link sap.m.upload.UploadSet} control.
37
37
  * @extends sap.ui.core.Element
38
38
  * @author SAP SE
39
- * @version 1.117.1
39
+ * @version 1.118.0
40
40
  * @constructor
41
41
  * @public
42
42
  * @since 1.63
@@ -625,7 +625,8 @@ sap.ui.define([
625
625
  if (!this._oFileNameLink) {
626
626
  this._oFileNameLink = new Link({
627
627
  id: this.getId() + "-fileNameLink",
628
- press: [this, this._handleFileNamePressed, this]
628
+ press: [this, this._handleFileNamePressed, this],
629
+ wrapping: true
629
630
  });
630
631
  this._oFileNameLink.setText(this.getFileName());//For handling curly braces in file name we have to use setter.Otherwise it will be treated as binding.
631
632
  this._oFileNameLink.addStyleClass("sapMUCFileName");