@openui5/sap.m 1.115.1 → 1.117.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/.reuse/dep5 +0 -5
  2. package/THIRDPARTY.txt +1 -7
  3. package/package.json +4 -4
  4. package/src/sap/m/.library +1 -1
  5. package/src/sap/m/AccButton.js +1 -1
  6. package/src/sap/m/ActionListItem.js +1 -1
  7. package/src/sap/m/ActionSelect.js +1 -1
  8. package/src/sap/m/ActionSheet.js +6 -2
  9. package/src/sap/m/ActionTile.js +1 -1
  10. package/src/sap/m/ActionTileContent.js +1 -1
  11. package/src/sap/m/AdditionalTextButton.js +1 -1
  12. package/src/sap/m/App.js +1 -1
  13. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  14. package/src/sap/m/Avatar.js +46 -5
  15. package/src/sap/m/AvatarRenderer.js +16 -10
  16. package/src/sap/m/Bar.js +1 -1
  17. package/src/sap/m/Breadcrumbs.js +6 -5
  18. package/src/sap/m/BusyDialog.js +5 -3
  19. package/src/sap/m/BusyIndicator.js +1 -1
  20. package/src/sap/m/Button.js +1 -1
  21. package/src/sap/m/Carousel.js +24 -8
  22. package/src/sap/m/CarouselLayout.js +1 -1
  23. package/src/sap/m/CarouselRenderer.js +19 -4
  24. package/src/sap/m/CheckBox.js +8 -4
  25. package/src/sap/m/ColorPalette.js +1 -1
  26. package/src/sap/m/ColorPalettePopover.js +1 -1
  27. package/src/sap/m/Column.js +29 -170
  28. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  29. package/src/sap/m/ColumnListItem.js +7 -12
  30. package/src/sap/m/ColumnListItemRenderer.js +16 -27
  31. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  32. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  33. package/src/sap/m/ColumnPopoverItem.js +1 -1
  34. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  35. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  36. package/src/sap/m/ComboBox.js +1 -1
  37. package/src/sap/m/ComboBoxBase.js +1 -1
  38. package/src/sap/m/ComboBoxTextField.js +1 -1
  39. package/src/sap/m/CustomListItem.js +1 -1
  40. package/src/sap/m/CustomTile.js +1 -1
  41. package/src/sap/m/CustomTreeItem.js +1 -1
  42. package/src/sap/m/DatePicker.js +31 -5
  43. package/src/sap/m/DatePickerRenderer.js +3 -2
  44. package/src/sap/m/DateRangeSelection.js +77 -25
  45. package/src/sap/m/DateTimeField.js +15 -10
  46. package/src/sap/m/DateTimeInput.js +1 -1
  47. package/src/sap/m/DateTimePicker.js +1 -1
  48. package/src/sap/m/DateTimePickerRenderer.js +3 -1
  49. package/src/sap/m/Dialog.js +16 -10
  50. package/src/sap/m/DialogRenderer.js +3 -3
  51. package/src/sap/m/DisplayListItem.js +1 -1
  52. package/src/sap/m/DraftIndicator.js +1 -1
  53. package/src/sap/m/DynamicDate.js +1 -1
  54. package/src/sap/m/DynamicDateOption.js +2 -2
  55. package/src/sap/m/DynamicDateRange.js +42 -5
  56. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  57. package/src/sap/m/ExpandableText.js +1 -1
  58. package/src/sap/m/FacetFilter.js +1 -3
  59. package/src/sap/m/FacetFilterItem.js +1 -1
  60. package/src/sap/m/FacetFilterList.js +1 -1
  61. package/src/sap/m/FeedContent.js +1 -1
  62. package/src/sap/m/FeedInput.js +1 -1
  63. package/src/sap/m/FeedListItem.js +18 -1
  64. package/src/sap/m/FeedListItemAction.js +1 -1
  65. package/src/sap/m/Fiori20Adapter.js +2 -2
  66. package/src/sap/m/FlexBox.js +1 -1
  67. package/src/sap/m/FlexItemData.js +1 -1
  68. package/src/sap/m/FormattedText.js +44 -50
  69. package/src/sap/m/GenericTag.js +1 -1
  70. package/src/sap/m/GenericTile.js +1 -1
  71. package/src/sap/m/GroupHeaderListItem.js +1 -1
  72. package/src/sap/m/GroupHeaderListItemRenderer.js +5 -5
  73. package/src/sap/m/GrowingEnablement.js +34 -32
  74. package/src/sap/m/GrowingList.js +1 -1
  75. package/src/sap/m/HBox.js +1 -1
  76. package/src/sap/m/HeaderContainer.js +1 -1
  77. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  78. package/src/sap/m/HyphenationSupport.js +13 -4
  79. package/src/sap/m/IconTabBar.js +3 -1
  80. package/src/sap/m/IconTabBarSelectList.js +1 -1
  81. package/src/sap/m/IconTabFilter.js +3 -3
  82. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  83. package/src/sap/m/IconTabHeader.js +1 -1
  84. package/src/sap/m/IconTabSeparator.js +1 -1
  85. package/src/sap/m/IllustratedMessage.js +4 -2
  86. package/src/sap/m/Illustration.js +1 -1
  87. package/src/sap/m/IllustrationPool.js +4 -3
  88. package/src/sap/m/Image.js +1 -1
  89. package/src/sap/m/ImageContent.js +1 -1
  90. package/src/sap/m/Input.js +21 -12
  91. package/src/sap/m/InputBase.js +7 -5
  92. package/src/sap/m/InputBaseRenderer.js +3 -3
  93. package/src/sap/m/InputListItem.js +1 -1
  94. package/src/sap/m/Label.js +1 -1
  95. package/src/sap/m/LabelRenderer.js +3 -3
  96. package/src/sap/m/LightBox.js +1 -1
  97. package/src/sap/m/LightBoxItem.js +1 -1
  98. package/src/sap/m/Link.js +36 -3
  99. package/src/sap/m/List.js +1 -1
  100. package/src/sap/m/ListBase.js +61 -28
  101. package/src/sap/m/ListBaseRenderer.js +12 -4
  102. package/src/sap/m/ListItemBase.js +17 -8
  103. package/src/sap/m/ListItemBaseRenderer.js +6 -6
  104. package/src/sap/m/MaskEnabler.js +1 -1
  105. package/src/sap/m/MaskInput.js +1 -1
  106. package/src/sap/m/MaskInputRule.js +1 -1
  107. package/src/sap/m/Menu.js +14 -1
  108. package/src/sap/m/MenuButton.js +1 -1
  109. package/src/sap/m/MenuItem.js +1 -1
  110. package/src/sap/m/MenuListItem.js +1 -1
  111. package/src/sap/m/MessageItem.js +1 -1
  112. package/src/sap/m/MessageListItem.js +1 -1
  113. package/src/sap/m/MessagePage.js +1 -1
  114. package/src/sap/m/MessagePopover.js +1 -1
  115. package/src/sap/m/MessagePopoverItem.js +1 -1
  116. package/src/sap/m/MessageStrip.js +1 -1
  117. package/src/sap/m/MessageToast.js +1 -12
  118. package/src/sap/m/MessageView.js +2 -2
  119. package/src/sap/m/MultiComboBox.js +3 -3
  120. package/src/sap/m/MultiEditField.js +1 -1
  121. package/src/sap/m/MultiInput.js +13 -2
  122. package/src/sap/m/NavContainer.js +21 -5
  123. package/src/sap/m/NewsContent.js +1 -1
  124. package/src/sap/m/NotificationList.js +1 -1
  125. package/src/sap/m/NotificationListBase.js +1 -1
  126. package/src/sap/m/NotificationListGroup.js +1 -1
  127. package/src/sap/m/NotificationListItem.js +1 -1
  128. package/src/sap/m/NumericContent.js +1 -1
  129. package/src/sap/m/NumericInput.js +1 -1
  130. package/src/sap/m/ObjectAttribute.js +1 -1
  131. package/src/sap/m/ObjectHeader.js +6 -1
  132. package/src/sap/m/ObjectIdentifier.js +1 -1
  133. package/src/sap/m/ObjectListItem.js +9 -2
  134. package/src/sap/m/ObjectMarker.js +1 -1
  135. package/src/sap/m/ObjectNumber.js +1 -1
  136. package/src/sap/m/ObjectStatus.js +63 -4
  137. package/src/sap/m/ObjectStatusRenderer.js +21 -9
  138. package/src/sap/m/OverflowToolbar.js +30 -15
  139. package/src/sap/m/OverflowToolbarAssociativePopover.js +5 -5
  140. package/src/sap/m/OverflowToolbarButton.js +1 -1
  141. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  142. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  143. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  144. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  145. package/src/sap/m/P13nColumnsItem.js +1 -1
  146. package/src/sap/m/P13nColumnsPanel.js +2 -8
  147. package/src/sap/m/P13nConditionPanel.js +1 -1
  148. package/src/sap/m/P13nDialog.js +2 -1
  149. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  150. package/src/sap/m/P13nDimMeasurePanel.js +3 -10
  151. package/src/sap/m/P13nFilterItem.js +1 -1
  152. package/src/sap/m/P13nFilterPanel.js +28 -43
  153. package/src/sap/m/P13nGroupItem.js +1 -1
  154. package/src/sap/m/P13nGroupPanel.js +1 -1
  155. package/src/sap/m/P13nItem.js +1 -1
  156. package/src/sap/m/P13nPanel.js +1 -1
  157. package/src/sap/m/P13nSelectionItem.js +1 -1
  158. package/src/sap/m/P13nSelectionPanel.js +5 -3
  159. package/src/sap/m/P13nSortItem.js +1 -1
  160. package/src/sap/m/P13nSortPanel.js +1 -1
  161. package/src/sap/m/PDFViewer.js +1 -1
  162. package/src/sap/m/PDFViewerRenderer.js +1 -1
  163. package/src/sap/m/Page.js +8 -6
  164. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  165. package/src/sap/m/PagingButton.js +1 -1
  166. package/src/sap/m/Panel.js +11 -2
  167. package/src/sap/m/PanelRenderer.js +9 -0
  168. package/src/sap/m/PlanningCalendar.js +10 -4
  169. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  170. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  171. package/src/sap/m/PlanningCalendarRow.js +1 -1
  172. package/src/sap/m/PlanningCalendarView.js +1 -1
  173. package/src/sap/m/Popover.js +13 -17
  174. package/src/sap/m/ProgressIndicator.js +1 -1
  175. package/src/sap/m/PullToRefresh.js +1 -1
  176. package/src/sap/m/QuickView.js +1 -1
  177. package/src/sap/m/QuickViewBase.js +1 -1
  178. package/src/sap/m/QuickViewCard.js +14 -1
  179. package/src/sap/m/QuickViewCardRenderer.js +0 -4
  180. package/src/sap/m/QuickViewGroup.js +1 -1
  181. package/src/sap/m/QuickViewGroupElement.js +1 -1
  182. package/src/sap/m/QuickViewPage.js +40 -28
  183. package/src/sap/m/RadioButton.js +1 -1
  184. package/src/sap/m/RadioButtonGroup.js +1 -1
  185. package/src/sap/m/RangeSlider.js +1 -1
  186. package/src/sap/m/RatingIndicator.js +16 -4
  187. package/src/sap/m/RatingIndicatorRenderer.js +9 -2
  188. package/src/sap/m/ResponsivePopover.js +1 -1
  189. package/src/sap/m/ResponsiveScale.js +1 -1
  190. package/src/sap/m/ScrollBar.js +1 -1
  191. package/src/sap/m/ScrollContainer.js +3 -3
  192. package/src/sap/m/SearchField.js +8 -12
  193. package/src/sap/m/SearchFieldRenderer.js +5 -5
  194. package/src/sap/m/SegmentedButton.js +4 -2
  195. package/src/sap/m/SegmentedButtonItem.js +1 -1
  196. package/src/sap/m/SegmentedButtonRenderer.js +3 -3
  197. package/src/sap/m/Select.js +18 -16
  198. package/src/sap/m/SelectDialog.js +1 -1
  199. package/src/sap/m/SelectDialogBase.js +28 -4
  200. package/src/sap/m/SelectList.js +5 -6
  201. package/src/sap/m/SelectionDetails.js +1 -1
  202. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  203. package/src/sap/m/SelectionDetailsItem.js +1 -1
  204. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  205. package/src/sap/m/Shell.js +1 -1
  206. package/src/sap/m/SimpleFixFlex.js +1 -1
  207. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  208. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  209. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -1
  210. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +43 -43
  211. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  212. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  213. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  214. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  215. package/src/sap/m/SlideTile.js +1 -1
  216. package/src/sap/m/Slider.js +1 -1
  217. package/src/sap/m/SliderTooltip.js +1 -1
  218. package/src/sap/m/SliderTooltipBase.js +1 -1
  219. package/src/sap/m/SliderTooltipContainer.js +1 -1
  220. package/src/sap/m/SplitApp.js +1 -1
  221. package/src/sap/m/SplitButton.js +1 -1
  222. package/src/sap/m/SplitContainer.js +8 -13
  223. package/src/sap/m/StandardDynamicDateOption.js +2 -2
  224. package/src/sap/m/StandardListItem.js +1 -1
  225. package/src/sap/m/StandardTile.js +1 -1
  226. package/src/sap/m/StandardTileRenderer.js +1 -1
  227. package/src/sap/m/StandardTreeItem.js +1 -1
  228. package/src/sap/m/StepInput.js +3 -3
  229. package/src/sap/m/SuggestionItem.js +4 -2
  230. package/src/sap/m/SuggestionsPopover.js +1 -1
  231. package/src/sap/m/Switch.js +1 -1
  232. package/src/sap/m/TabContainer.js +1 -1
  233. package/src/sap/m/TabContainerItem.js +1 -1
  234. package/src/sap/m/TabStrip.js +1 -1
  235. package/src/sap/m/TabStripItem.js +1 -1
  236. package/src/sap/m/Table.js +59 -180
  237. package/src/sap/m/TablePersoController.js +1 -1
  238. package/src/sap/m/TablePersoDialog.js +1 -1
  239. package/src/sap/m/TablePersoProvider.js +4 -1
  240. package/src/sap/m/TableRenderer.js +98 -126
  241. package/src/sap/m/TableSelectDialog.js +1 -1
  242. package/src/sap/m/Text.js +1 -1
  243. package/src/sap/m/TextArea.js +1 -1
  244. package/src/sap/m/TextRenderer.js +3 -3
  245. package/src/sap/m/Tile.js +1 -1
  246. package/src/sap/m/TileContainer.js +1 -1
  247. package/src/sap/m/TileContent.js +1 -1
  248. package/src/sap/m/TileRenderer.js +7 -4
  249. package/src/sap/m/TimePicker.js +41 -12
  250. package/src/sap/m/TimePickerClock.js +1 -1
  251. package/src/sap/m/TimePickerClocks.js +1 -1
  252. package/src/sap/m/TimePickerClocksRenderer.js +6 -13
  253. package/src/sap/m/TimePickerInputs.js +1 -1
  254. package/src/sap/m/TimePickerInputsRenderer.js +6 -10
  255. package/src/sap/m/TimePickerInternals.js +1 -44
  256. package/src/sap/m/TimePickerRenderer.js +3 -2
  257. package/src/sap/m/TimePickerSlider.js +1 -1
  258. package/src/sap/m/TimePickerSliders.js +1 -1
  259. package/src/sap/m/Title.js +1 -1
  260. package/src/sap/m/TitlePropagationSupport.js +1 -1
  261. package/src/sap/m/ToggleButton.js +15 -3
  262. package/src/sap/m/Token.js +1 -1
  263. package/src/sap/m/Tokenizer.js +1 -1
  264. package/src/sap/m/Toolbar.js +4 -2
  265. package/src/sap/m/ToolbarLayoutData.js +1 -1
  266. package/src/sap/m/ToolbarSeparator.js +1 -1
  267. package/src/sap/m/ToolbarSpacer.js +1 -1
  268. package/src/sap/m/Tree.js +1 -1
  269. package/src/sap/m/TreeItemBase.js +1 -1
  270. package/src/sap/m/UploadCollection.js +2 -2
  271. package/src/sap/m/UploadCollectionItem.js +1 -1
  272. package/src/sap/m/UploadCollectionParameter.js +1 -1
  273. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  274. package/src/sap/m/VBox.js +1 -1
  275. package/src/sap/m/ValueStateHeader.js +1 -1
  276. package/src/sap/m/VariantManagement.js +13 -50
  277. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  278. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  279. package/src/sap/m/ViewSettingsDialog.js +2 -2
  280. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  281. package/src/sap/m/ViewSettingsItem.js +1 -1
  282. package/src/sap/m/VisibleItem.js +1 -1
  283. package/src/sap/m/WheelSlider.js +1 -1
  284. package/src/sap/m/WheelSliderContainer.js +1 -1
  285. package/src/sap/m/Wizard.js +1 -1
  286. package/src/sap/m/WizardProgressNavigator.js +1 -1
  287. package/src/sap/m/WizardStep.js +1 -1
  288. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  289. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  290. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  291. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  292. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  293. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  294. package/src/sap/m/designtime/HBox.designtime.js +16 -0
  295. package/src/sap/m/designtime/IconTabFilter.designtime.js +0 -9
  296. package/src/sap/m/designtime/ObjectHeader.designtime.js +26 -0
  297. package/src/sap/m/designtime/Select.designtime.js +2 -1
  298. package/src/sap/m/designtime/VBox.designtime.js +16 -0
  299. package/src/sap/m/inputUtils/SuggestionsPopoverDialogMixin.js +5 -5
  300. package/src/sap/m/inputUtils/SuggestionsPopoverPopoverMixin.js +4 -0
  301. package/src/sap/m/library.js +62 -7
  302. package/src/sap/m/messagebundle.properties +27 -13
  303. package/src/sap/m/messagebundle_ar.properties +36 -20
  304. package/src/sap/m/messagebundle_bg.properties +102 -86
  305. package/src/sap/m/messagebundle_ca.properties +34 -18
  306. package/src/sap/m/messagebundle_cs.properties +40 -24
  307. package/src/sap/m/messagebundle_cy.properties +35 -19
  308. package/src/sap/m/messagebundle_da.properties +35 -19
  309. package/src/sap/m/messagebundle_de.properties +35 -19
  310. package/src/sap/m/messagebundle_el.properties +36 -20
  311. package/src/sap/m/messagebundle_en.properties +35 -19
  312. package/src/sap/m/messagebundle_en_GB.properties +35 -19
  313. package/src/sap/m/messagebundle_en_US_sappsd.properties +34 -18
  314. package/src/sap/m/messagebundle_en_US_saprigi.properties +34 -18
  315. package/src/sap/m/messagebundle_en_US_saptrc.properties +34 -18
  316. package/src/sap/m/messagebundle_es.properties +33 -17
  317. package/src/sap/m/messagebundle_es_MX.properties +33 -17
  318. package/src/sap/m/messagebundle_et.properties +33 -17
  319. package/src/sap/m/messagebundle_fi.properties +37 -21
  320. package/src/sap/m/messagebundle_fr.properties +38 -22
  321. package/src/sap/m/messagebundle_fr_CA.properties +35 -19
  322. package/src/sap/m/messagebundle_hi.properties +36 -20
  323. package/src/sap/m/messagebundle_hr.properties +36 -20
  324. package/src/sap/m/messagebundle_hu.properties +39 -23
  325. package/src/sap/m/messagebundle_id.properties +38 -22
  326. package/src/sap/m/messagebundle_it.properties +33 -17
  327. package/src/sap/m/messagebundle_iw.properties +40 -24
  328. package/src/sap/m/messagebundle_ja.properties +70 -54
  329. package/src/sap/m/messagebundle_kk.properties +35 -19
  330. package/src/sap/m/messagebundle_ko.properties +36 -20
  331. package/src/sap/m/messagebundle_lt.properties +35 -19
  332. package/src/sap/m/messagebundle_lv.properties +33 -17
  333. package/src/sap/m/messagebundle_ms.properties +35 -19
  334. package/src/sap/m/messagebundle_nl.properties +35 -19
  335. package/src/sap/m/messagebundle_no.properties +38 -22
  336. package/src/sap/m/messagebundle_pl.properties +35 -19
  337. package/src/sap/m/messagebundle_pt.properties +33 -17
  338. package/src/sap/m/messagebundle_pt_PT.properties +33 -17
  339. package/src/sap/m/messagebundle_ro.properties +45 -29
  340. package/src/sap/m/messagebundle_ru.properties +32 -16
  341. package/src/sap/m/messagebundle_sh.properties +43 -27
  342. package/src/sap/m/messagebundle_sk.properties +35 -19
  343. package/src/sap/m/messagebundle_sl.properties +96 -80
  344. package/src/sap/m/messagebundle_sv.properties +37 -21
  345. package/src/sap/m/messagebundle_th.properties +42 -26
  346. package/src/sap/m/messagebundle_tr.properties +36 -20
  347. package/src/sap/m/messagebundle_uk.properties +38 -22
  348. package/src/sap/m/messagebundle_vi.properties +35 -19
  349. package/src/sap/m/messagebundle_zh_CN.properties +40 -24
  350. package/src/sap/m/messagebundle_zh_TW.properties +37 -21
  351. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  352. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  353. package/src/sap/m/p13n/BasePanel.js +11 -5
  354. package/src/sap/m/p13n/Container.js +9 -6
  355. package/src/sap/m/p13n/Engine.js +33 -5
  356. package/src/sap/m/p13n/FlexUtil.js +7 -3
  357. package/src/sap/m/p13n/GroupController.js +1 -1
  358. package/src/sap/m/p13n/GroupPanel.js +6 -1
  359. package/src/sap/m/p13n/MetadataHelper.js +1 -1
  360. package/src/sap/m/p13n/PersistenceProvider.js +2 -92
  361. package/src/sap/m/p13n/Popup.js +25 -2
  362. package/src/sap/m/p13n/QueryPanel.js +18 -3
  363. package/src/sap/m/p13n/SelectionController.js +6 -7
  364. package/src/sap/m/p13n/SelectionPanel.js +16 -5
  365. package/src/sap/m/p13n/SortController.js +1 -1
  366. package/src/sap/m/p13n/SortPanel.js +8 -4
  367. package/src/sap/m/p13n/enum/PersistenceMode.js +9 -0
  368. package/src/sap/m/p13n/handler/xConfigHandler.js +13 -13
  369. package/src/sap/m/p13n/modification/FlexModificationHandler.js +24 -1
  370. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -13
  371. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  372. package/src/sap/m/p13n/modules/UIManager.js +5 -4
  373. package/src/sap/m/p13n/modules/xConfigAPI.js +26 -0
  374. package/src/sap/m/plugins/CellSelector.js +534 -799
  375. package/src/sap/m/plugins/ColumnResizer.js +1 -9
  376. package/src/sap/m/plugins/CopyProvider.js +2 -10
  377. package/src/sap/m/plugins/DataStateIndicator.js +8 -2
  378. package/src/sap/m/plugins/PasteProvider.js +1 -1
  379. package/src/sap/m/plugins/PluginBase.js +1 -1
  380. package/src/sap/m/semantic/AddAction.js +1 -1
  381. package/src/sap/m/semantic/CancelAction.js +1 -1
  382. package/src/sap/m/semantic/DeleteAction.js +1 -1
  383. package/src/sap/m/semantic/DetailPage.js +1 -1
  384. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  385. package/src/sap/m/semantic/EditAction.js +1 -1
  386. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  387. package/src/sap/m/semantic/FilterAction.js +1 -1
  388. package/src/sap/m/semantic/FilterSelect.js +1 -1
  389. package/src/sap/m/semantic/FlagAction.js +1 -1
  390. package/src/sap/m/semantic/ForwardAction.js +1 -1
  391. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  392. package/src/sap/m/semantic/GroupAction.js +1 -1
  393. package/src/sap/m/semantic/GroupSelect.js +1 -1
  394. package/src/sap/m/semantic/MainAction.js +1 -1
  395. package/src/sap/m/semantic/MasterPage.js +1 -1
  396. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  397. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  398. package/src/sap/m/semantic/NegativeAction.js +1 -1
  399. package/src/sap/m/semantic/OpenInAction.js +1 -1
  400. package/src/sap/m/semantic/PositiveAction.js +1 -1
  401. package/src/sap/m/semantic/PrintAction.js +1 -1
  402. package/src/sap/m/semantic/SaveAction.js +1 -1
  403. package/src/sap/m/semantic/Segment.js +1 -1
  404. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  405. package/src/sap/m/semantic/SemanticButton.js +1 -1
  406. package/src/sap/m/semantic/SemanticConfiguration.js +3 -3
  407. package/src/sap/m/semantic/SemanticControl.js +1 -1
  408. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  409. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  410. package/src/sap/m/semantic/SemanticPage.js +1 -1
  411. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  412. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  413. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  414. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  415. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  416. package/src/sap/m/semantic/ShareMenu.js +1 -1
  417. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  418. package/src/sap/m/semantic/SortAction.js +1 -1
  419. package/src/sap/m/semantic/SortSelect.js +1 -1
  420. package/src/sap/m/table/Util.js +6 -5
  421. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  422. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  423. package/src/sap/m/table/columnmenu/Item.js +1 -1
  424. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  425. package/src/sap/m/table/columnmenu/Menu.js +1 -1
  426. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  427. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  428. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  429. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  430. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  431. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  432. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  433. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  434. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  435. package/src/sap/m/themes/base/Avatar.less +78 -7
  436. package/src/sap/m/themes/base/Carousel.less +7 -0
  437. package/src/sap/m/themes/base/CellSelector.less +50 -105
  438. package/src/sap/m/themes/base/IconTabBar.less +1 -1
  439. package/src/sap/m/themes/base/Link.less +20 -24
  440. package/src/sap/m/themes/base/MessageStrip.less +1 -1
  441. package/src/sap/m/themes/base/NumericContent.less +4 -0
  442. package/src/sap/m/themes/base/ObjectStatus.less +1 -2
  443. package/src/sap/m/themes/base/Panel.less +14 -0
  444. package/src/sap/m/themes/base/PlanningCalendarHeader.less +2 -1
  445. package/src/sap/m/themes/base/RadioButton.less +3 -1
  446. package/src/sap/m/themes/base/SearchField.less +13 -3
  447. package/src/sap/m/themes/base/Select.less +32 -2
  448. package/src/sap/m/themes/base/Table.less +4 -8
  449. package/src/sap/m/themes/base/TimePickerClocks.less +4 -0
  450. package/src/sap/m/themes/base/UploadSet.less +13 -1
  451. package/src/sap/m/themes/base/UploadSetTable.less +80 -0
  452. package/src/sap/m/themes/base/ValueStateMessage.less +1 -0
  453. package/src/sap/m/themes/base/VariantManagement.less +1 -0
  454. package/src/sap/m/themes/base/Wizard.less +1 -1
  455. package/src/sap/m/themes/base/library.source.less +1 -0
  456. package/src/sap/m/upload/FilePreviewDialog.js +257 -0
  457. package/src/sap/m/upload/UploadSet.js +140 -67
  458. package/src/sap/m/upload/UploadSetItem.js +51 -27
  459. package/src/sap/m/upload/UploadSetTable.js +929 -0
  460. package/src/sap/m/upload/UploadSetTableItem.js +327 -0
  461. package/src/sap/m/upload/UploadSetTableItemRenderer.js +22 -0
  462. package/src/sap/m/upload/UploadSetTableRenderer.js +34 -0
  463. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
  464. package/src/sap/m/upload/UploaderTableItem.js +276 -0
  465. package/ui5.yaml +1 -1
@@ -31,12 +31,17 @@ sap.ui.define([
31
31
  "sap/m/IllustratedMessageType",
32
32
  "sap/m/IllustratedMessageSize",
33
33
  "sap/ui/core/Core",
34
- "sap/ui/core/InvisibleText"
34
+ "sap/ui/core/InvisibleText",
35
+ "sap/m/Menu",
36
+ "sap/m/MenuItem",
37
+ "sap/m/MenuButton"
35
38
  ], function (Control, KeyCodes, Log, deepEqual, MobileLibrary, Button, Dialog, List, MessageBox, OverflowToolbar,
36
39
  StandardListItem, Text, ToolbarSpacer, FileUploader, UploadSetItem, Uploader, Renderer, UploaderHttpRequestMethod,
37
- DragDropInfo, DropInfo, Library, UploadSetToolbarPlaceholder, IllustratedMessage,IllustratedMessageType, IllustratedMessageSize, Core, InvisibleText) {
40
+ DragDropInfo, DropInfo, Library, UploadSetToolbarPlaceholder, IllustratedMessage,IllustratedMessageType, IllustratedMessageSize, Core, InvisibleText, Menu, MenuItem, MenuButton) {
38
41
  "use strict";
39
42
 
43
+ var UploadType = Library.UploadType;
44
+
40
45
  /**
41
46
  * Constructor for a new UploadSet.
42
47
  *
@@ -48,7 +53,7 @@ sap.ui.define([
48
53
  * and requests, unified behavior of instant and deferred uploads, as well as improved progress indication.
49
54
  * @extends sap.ui.core.Control
50
55
  * @author SAP SE
51
- * @version 1.115.1
56
+ * @version 1.117.0
52
57
  * @constructor
53
58
  * @public
54
59
  * @since 1.63
@@ -87,6 +92,11 @@ sap.ui.define([
87
92
  * Defines custom text for the 'No data' description label.
88
93
  */
89
94
  noDataDescription: {type: "string", defaultValue: null},
95
+ /**
96
+ * Determines which illustration type is displayed when the control holds no data.
97
+ * @since 1.117
98
+ */
99
+ noDataIllustrationType: {type: "sap.m.IllustratedMessageType", group: "Appearance", defaultValue: IllustratedMessageType.NoData},
90
100
  /**
91
101
  * Defines custom text for the drag and drop text label.
92
102
  */
@@ -166,7 +176,7 @@ sap.ui.define([
166
176
  * @since 1.107
167
177
  */
168
178
  directory: {type: "boolean", group: "Behavior", defaultValue: false}
169
- },
179
+ },
170
180
  defaultAggregation: "items",
171
181
  aggregations: {
172
182
  /**
@@ -517,7 +527,7 @@ sap.ui.define([
517
527
  this._oInvisibleText = new InvisibleText();
518
528
  this._oInvisibleText.toStatic();
519
529
  var oIllustratedMessage = new IllustratedMessage({
520
- illustrationType: IllustratedMessageType.NoData,
530
+ illustrationType: this.getNoDataIllustrationType(),
521
531
  illustrationSize: IllustratedMessageSize.Auto,
522
532
  title: this.getNoDataText(),
523
533
  description: this.getNoDataDescription()
@@ -588,6 +598,20 @@ sap.ui.define([
588
598
  }.bind(this)
589
599
  };
590
600
  this._oList.addDelegate(this._oListEventDelegate);
601
+ if (this._bItemRemoved) {
602
+ this._bItemRemoved = false;
603
+ var aList = this.getList();
604
+ var aListItems = aList.getItems();
605
+ if (aListItems.length > 0) {
606
+ aListItems[0].focus();
607
+ } else {
608
+ aList.getDomRef().querySelector(".sapMUCNoDataPage").focus();
609
+ }
610
+ }
611
+
612
+ if (this.getCloudFilePickerEnabled()) {
613
+ this._oFileUploader.addStyleClass("sapMUSTFileUploaderVisibility");
614
+ }
591
615
  };
592
616
 
593
617
  /**
@@ -665,28 +689,63 @@ sap.ui.define([
665
689
 
666
690
  UploadSet.prototype.getToolbar = function () {
667
691
  if (!this._oToolbar) {
692
+ var oUploader = this.getCloudFilePickerEnabled() ? this._getCloudFilePicker() : this.getDefaultFileUploader();
668
693
  this._oToolbar = this.getAggregation("toolbar");
669
694
  if (!this._oToolbar) {
670
695
  this._oToolbar = new OverflowToolbar(this.getId() + "-toolbar", {
671
- content: [this._oNumberOfAttachmentsTitle, new ToolbarSpacer(), this.getDefaultFileUploader(), this._getCloudFilePicker()]
696
+ content: [this._oNumberOfAttachmentsTitle, new ToolbarSpacer(), oUploader]
672
697
  });
673
698
  this._iFileUploaderPH = 2;
674
699
  this.addDependent(this._oToolbar);
675
700
  } else {
676
701
  this._iFileUploaderPH = this._getFileUploaderPlaceHolderPosition(this._oToolbar);
677
702
  if (this._oToolbar && this._iFileUploaderPH > -1) {
678
- this._setFileUploaderInToolbar(this.getDefaultFileUploader());
703
+ this._setFileUploaderInToolbar(oUploader);
679
704
  } else if (this._oToolbar) {
680
705
  // fallback position to add file uploader control if UploadSetToolbarPlaceHolder instance not found
681
- this._oToolbar.addContent(this.getDefaultFileUploader());
706
+ this._oToolbar.addContent(oUploader);
682
707
  }
683
- this._oToolbar.addContent(this._getCloudFilePicker());
708
+ }
709
+ if (this.getCloudFilePickerEnabled()) {
710
+ this._oToolbar.addContent(this.getDefaultFileUploader());
684
711
  }
685
712
  }
686
713
 
687
714
  return this._oToolbar;
688
715
  };
689
716
 
717
+
718
+ UploadSet.prototype._openFileUploaderPicker = function () {
719
+ this._oFileUploader.oFileUpload.click();
720
+ };
721
+
722
+ UploadSet.prototype._openCloudFilePicker = function () {
723
+ this._invokeCloudFilePicker();
724
+ };
725
+
726
+ UploadSet.prototype._itemSelectedCallback = function (oEvent) {
727
+ var oItem = oEvent.getParameter("item");
728
+ // eslint-disable-next-line default-case
729
+ switch (oItem.getText()) {
730
+ case this.getCloudFilePickerButtonText() ? this.getCloudFilePickerButtonText() : this._oRb.getText("UPLOAD_SET_DEFAULT_CFP_BUTTON_TEXT"):
731
+ this._oMenuButton
732
+ .detachEvent("defaultAction", this._openFileUploaderPicker.bind(this))
733
+ .attachEvent("defaultAction", this._openCloudFilePicker.bind(this));
734
+
735
+ this._openCloudFilePicker();
736
+ this._oMenuButton.setText(oItem.getText());
737
+ break;
738
+ case this._oRb.getText("UPLOAD_SET_DEFAULT_LFP_BUTTON_TEXT"):
739
+ this._oMenuButton
740
+ .detachEvent("defaultAction", this._openCloudFilePicker.bind(this))
741
+ .attachEvent("defaultAction", this._openFileUploaderPicker.bind(this));
742
+
743
+ this._openFileUploaderPicker();
744
+ this._oMenuButton.setText(oItem.getText());
745
+ break;
746
+ }
747
+ };
748
+
690
749
  // Functions returns sNoDataText which is combination of Title and Description from the IllustratedMessage
691
750
  UploadSet.prototype._setListNoDataText = function (sText, bIsDescription) {
692
751
  var sNoDataText = "";
@@ -935,7 +994,7 @@ sap.ui.define([
935
994
  oAggregation.setDescription(this.getDragDropDescription());
936
995
  oAggregation.removeAllAdditionalContent();
937
996
  } else {
938
- oAggregation.setIllustrationType(IllustratedMessageType.NoData);
997
+ oAggregation.setIllustrationType(this.getNoDataIllustrationType());
939
998
  oAggregation.setTitle(this.getNoDataText());
940
999
  oAggregation.setDescription(this.getNoDataDescription());
941
1000
  oAggregation.addAdditionalContent(this.getUploadButtonForIllustratedMessage());
@@ -1033,56 +1092,54 @@ sap.ui.define([
1033
1092
  this._oDragIndicator = false;
1034
1093
  this._getIllustratedMessage();
1035
1094
  oEvent.preventDefault();
1036
- if (this.getUploadEnabled()) {
1037
- var oItems = oEvent.getParameter("browserEvent").dataTransfer.items;
1038
- oItems = Array.from(oItems);
1095
+ if (!this.getUploadEnabled()) {
1096
+ return;
1097
+ }
1098
+ var oItems = oEvent.getParameter("browserEvent").dataTransfer.items;
1099
+ oItems = Array.from(oItems);
1039
1100
 
1040
- // Filtering out only webkitentries (files/folders system entries) by excluding non file / directory types.
1041
- oItems = oItems.filter(function(item){
1042
- return item.webkitGetAsEntry() ? true : false;
1043
- });
1044
- var aEntryTypes = oItems.map(function (oEntry) {
1045
- var oWebKitEntry = oEntry.webkitGetAsEntry();
1046
- return {
1047
- entryType: oWebKitEntry && oWebKitEntry.isFile ? 'File' : 'Directory'
1048
- };
1049
- });
1050
- // handlding multiple property drag & drop scenarios
1051
- if (oItems && oItems.length > 1 && !this.getMultiple() && !this.getDirectory()) {
1052
- // Handling drag and drop of multiple files to upload with multiple property set
1053
- var sMessage = this._oRb.getText("UPLOADCOLLECTION_MULTIPLE_FALSE");
1054
- Log.warning("Multiple files upload is retsricted for this multiple property set");
1055
- MessageBox.error(sMessage);
1056
- return;
1057
- } else if (oItems && oItems.length > 1 && this.getMultiple() && !isFileOrFolderEntry('File', aEntryTypes)) {
1058
- var sMessageDropFilesOnly = this._oRb.getText("UPLOAD_SET_DIRECTORY_FALSE");
1059
- Log.warning("Multiple files upload is retsricted, drag & drop only files");
1060
- MessageBox.error(sMessageDropFilesOnly);
1061
- return;
1062
- }
1101
+ // Filtering out only webkitentries (files/folders system entries) by excluding non file / directory types.
1102
+ oItems = oItems.filter(function(item){
1103
+ return item.webkitGetAsEntry() ? true : false;
1104
+ });
1105
+ var aEntryTypes = oItems.map(function (oEntry) {
1106
+ var oWebKitEntry = oEntry.webkitGetAsEntry();
1107
+ return {
1108
+ entryType: oWebKitEntry && oWebKitEntry.isFile ? 'File' : 'Directory'
1109
+ };
1110
+ });
1111
+ // handlding multiple property drag & drop scenarios
1112
+ if (oItems && oItems.length > 1 && !this.getMultiple() && !this.getDirectory()) {
1113
+ // Handling drag and drop of multiple files to upload with multiple property set
1114
+ var sMessage = this._oRb.getText("UPLOADCOLLECTION_MULTIPLE_FALSE");
1115
+ Log.warning("Multiple files upload is retsricted for this multiple property set");
1116
+ MessageBox.error(sMessage);
1117
+ return;
1118
+ } else if (oItems && oItems.length > 1 && this.getMultiple() && !isFileOrFolderEntry('File', aEntryTypes)) {
1119
+ var sMessageDropFilesOnly = this._oRb.getText("UPLOAD_SET_DIRECTORY_FALSE");
1120
+ Log.warning("Multiple files upload is retsricted, drag & drop only files");
1121
+ MessageBox.error(sMessageDropFilesOnly);
1122
+ return;
1123
+ }
1063
1124
 
1064
- // handling directory property drag & drop scenarios
1065
- if (oItems && !this.getDirectory() && isFileOrFolderEntry('Directory', aEntryTypes)) {
1066
- var sMessageDirectory = this._oRb.getText("UPLOAD_SET_DIRECTORY_FALSE");
1067
- Log.warning("Directory of files upload is retsricted for this directory property set");
1068
- MessageBox.error(sMessageDirectory);
1069
- return;
1070
- } else if (oItems && this.getDirectory() && !isFileOrFolderEntry('Directory', aEntryTypes)) {
1071
- var sMessageDragDropDirectory = this._oRb.getText("UPLOAD_SET_DROP_DIRECTORY");
1072
- Log.warning("Directory of files upload is retsricted, drag & drop only directories here.");
1073
- MessageBox.error(sMessageDragDropDirectory);
1074
- return;
1075
- }
1076
- if (oItems && oItems.length) {
1077
- this._getFilesFromDataTransferItems(oItems).then(function (oFiles) {
1078
- if (oFiles && oFiles.length) {
1079
- var oFileUploaderInstance = this.getDefaultFileUploader();
1080
- if (oFileUploaderInstance && oFileUploaderInstance._areFilesAllowed && oFileUploaderInstance._areFilesAllowed(oFiles)) {
1081
- this._processNewFileObjects(oFiles);
1082
- }
1083
- }
1084
- }.bind(this));
1085
- }
1125
+ // handling directory property drag & drop scenarios
1126
+ if (oItems && oItems.length && !this.getDirectory() && isFileOrFolderEntry('Directory', aEntryTypes)) {
1127
+ var sMessageDirectory = this._oRb.getText("UPLOAD_SET_DIRECTORY_FALSE");
1128
+ Log.warning("Directory of files upload is retsricted for this directory property set");
1129
+ MessageBox.error(sMessageDirectory);
1130
+ return;
1131
+ } else if (oItems && oItems.length && this.getDirectory() && !isFileOrFolderEntry('Directory', aEntryTypes)) {
1132
+ var sMessageDragDropDirectory = this._oRb.getText("UPLOAD_SET_DROP_DIRECTORY");
1133
+ Log.warning("Directory of files upload is retsricted, drag & drop only directories here.");
1134
+ MessageBox.error(sMessageDragDropDirectory);
1135
+ return;
1136
+ }
1137
+ if (oItems && oItems.length) {
1138
+ this._getFilesFromDataTransferItems(oItems).then(function (oFiles) {
1139
+ if (oFiles && oFiles.length) {
1140
+ this._processNewFileObjects(oFiles);
1141
+ }
1142
+ }.bind(this));
1086
1143
  }
1087
1144
 
1088
1145
  function isFileOrFolderEntry(sType, aEntries) {
@@ -1401,7 +1458,9 @@ sap.ui.define([
1401
1458
  oEdit.focus();
1402
1459
 
1403
1460
  if (!sNewFileName || sNewFileName.length === 0) {
1404
- oItem._setContainsError(true);
1461
+ oEdit.setValueStateText(this._oRb.getText("UPLOAD_SET_TYPE_FILE_NAME"));
1462
+ oEdit.setProperty("valueState", "Error", true);
1463
+ oEdit.setShowValueStateMessage(true);
1405
1464
  return;
1406
1465
  }
1407
1466
 
@@ -1413,8 +1472,7 @@ sap.ui.define([
1413
1472
  this._oEditedItem = null;
1414
1473
  return;
1415
1474
  }
1416
-
1417
- if (!this.getSameFilenameAllowed() && UploadSetItem._checkDoubleFileName(oEdit.getValue() + "." + oFile.extension, this._getAllItems())) {
1475
+ if (!this.getSameFilenameAllowed() && UploadSetItem._checkDoubleFileName(sNewFileName + "." + oFile.extension, this._getAllItems())) {
1418
1476
  oEdit.setValueStateText(this._oRb.getText("UPLOAD_SET_FILE_NAME_EXISTS"));
1419
1477
  oEdit.setProperty("valueState", "Error", true);
1420
1478
  oEdit.setShowValueStateMessage(true);
@@ -1506,6 +1564,7 @@ sap.ui.define([
1506
1564
  this.removeIncompleteItem(this._oItemToBeDeleted);
1507
1565
  this.fireAfterItemRemoved({item: this._oItemToBeDeleted});
1508
1566
  this._oItemToBeDeleted = null;
1567
+ this._bItemRemoved = true;
1509
1568
  };
1510
1569
 
1511
1570
  UploadSet.prototype._handleTerminateRequest = function (event, oItem) {
@@ -1944,20 +2003,33 @@ sap.ui.define([
1944
2003
  };
1945
2004
 
1946
2005
  /**
1947
- * Returns CloudFile picker button
1948
- * @return {sap.m.Button} CloudPicker button
2006
+ * Returns CloudFile picker menu button
2007
+ * @return {sap.m.MenuButton} CloudPicker & LocalFileUpload Menu button
1949
2008
  * @private
1950
2009
  */
1951
- UploadSet.prototype._getCloudFilePicker = function() {
2010
+ UploadSet.prototype._getCloudFilePicker = function () {
1952
2011
  if (this.getCloudFilePickerEnabled()) {
1953
- return new Button({
1954
- text: this.getCloudFilePickerButtonText() ? this.getCloudFilePickerButtonText() : this._oRb.getText("UPLOAD_SET_DEFAULT_CFP_BUTTON_TEXT"),
1955
- press: [this._invokeCloudFilePicker, this]
2012
+ this._oMenuButton = new MenuButton({
2013
+ text: this._oRb.getText("UPLOAD_SET_DEFAULT_LFP_BUTTON_TEXT"),
2014
+ buttonMode: sap.m.MenuButtonMode.Split,
2015
+ menu: this._getMenuButtonItems(),
2016
+ defaultAction: this._openFileUploaderPicker.bind(this)
1956
2017
  });
2018
+ return this._oMenuButton;
1957
2019
  }
1958
2020
  return null;
1959
2021
  };
1960
2022
 
2023
+ UploadSet.prototype._getMenuButtonItems = function () {
2024
+ return new Menu({
2025
+ items: [
2026
+ new MenuItem({ text: this._oRb.getText("UPLOAD_SET_DEFAULT_LFP_BUTTON_TEXT") }),
2027
+ new MenuItem({ text: this.getCloudFilePickerButtonText() ? this.getCloudFilePickerButtonText() : this._oRb.getText("UPLOAD_SET_DEFAULT_CFP_BUTTON_TEXT") })
2028
+ ],
2029
+ itemSelected: this._itemSelectedCallback.bind(this)
2030
+ });
2031
+ };
2032
+
1961
2033
  /**
1962
2034
  * Creates and invokes CloudFilePicker control instance
1963
2035
  * @private
@@ -2048,6 +2120,7 @@ sap.ui.define([
2048
2120
  oItem = new UploadSetItem({
2049
2121
  uploadState: UploadState.Ready
2050
2122
  });
2123
+ oItem._setUploadType(UploadType.Cloud);
2051
2124
  if (oFileShareProperties && oFileShareProperties !== null) {
2052
2125
  // invoked and each selected file to map the fileshare properties to uploadsetItem to be uploaded
2053
2126
  this._mapFileShareItemToUploadSetItem(oItem, oFileShareProperties);
@@ -26,6 +26,8 @@ sap.ui.define([
26
26
  HBox) {
27
27
  "use strict";
28
28
 
29
+ var UploadType = MobileLibrary.UploadType;
30
+
29
31
  /**
30
32
  * Constructor for a new UploadSetItem.
31
33
  *
@@ -34,7 +36,7 @@ sap.ui.define([
34
36
  * @class Item that represents one file to be uploaded using the {@link sap.m.upload.UploadSet} control.
35
37
  * @extends sap.ui.core.Element
36
38
  * @author SAP SE
37
- * @version 1.115.1
39
+ * @version 1.117.0
38
40
  * @constructor
39
41
  * @public
40
42
  * @since 1.63
@@ -123,6 +125,15 @@ sap.ui.define([
123
125
  multiple: true,
124
126
  singularName: "status"
125
127
  },
128
+ /**
129
+ * Statuses of the item, but it would be appearing in the markers section
130
+ * @since 1.117
131
+ */
132
+ markersAsStatus: {
133
+ type: "sap.m.ObjectStatus",
134
+ multiple: true,
135
+ singularName: "markerAsStatus"
136
+ },
126
137
  /**
127
138
  * Header fields to be included in the header section of an XMLHttpRequest (XHR) request
128
139
  * @since 1.90
@@ -183,6 +194,7 @@ sap.ui.define([
183
194
  oRm.openStart("div").class("sapMUSTextInnerContainer").openEnd();
184
195
  oRm.renderControl(oItem._bInEditMode ? oItem._getFileNameEdit() : oItem._getFileNameLink());
185
196
  oItem._renderMarkers(oRm);
197
+ oItem._renderMarkersAsStatus(oRm);
186
198
  oRm.close("div");
187
199
 
188
200
  oItem._renderAttributes(oRm);
@@ -239,6 +251,9 @@ sap.ui.define([
239
251
  this._bNameLengthRestricted = false;
240
252
  this._bSizeRestricted = false;
241
253
  this._bMediaTypeRestricted = false;
254
+
255
+ //Deafult upload type
256
+ this._sUploadType = UploadType.Native;
242
257
  };
243
258
 
244
259
  /* ===================== */
@@ -479,6 +494,20 @@ sap.ui.define([
479
494
  return this._bInEditMode;
480
495
  };
481
496
 
497
+ /**
498
+ * Returns the upload type of the item
499
+ * The method by default returns Native
500
+ * It is recommended to use this method, when the user has uploded the instance
501
+ *
502
+ * @public
503
+ * @since 1.117.0
504
+ * @returns {sap.m.UploadType} edit state of uploadSetItem
505
+ *
506
+ */
507
+ UploadSetItem.prototype.getUploadType = function () {
508
+ return this._sUploadType;
509
+ };
510
+
482
511
  /* ============== */
483
512
  /* Event handlers */
484
513
  /* ============== */
@@ -665,34 +694,12 @@ sap.ui.define([
665
694
  this._oFileNameEdit.addStyleClass("sapMUCEditBox");
666
695
  this._oFileNameEdit.setFieldWidth("75%");
667
696
  this._oFileNameEdit.setDescription(oSplit.extension);
668
- this._updateFileNameEdit();
669
697
  this.addDependent(this._oFileNameEdit);
670
698
  }
671
699
 
672
700
  return this._oFileNameEdit;
673
701
  };
674
702
 
675
- UploadSetItem.prototype._updateFileNameEdit = function () {
676
- var oEdit = this._getFileNameEdit();
677
-
678
- // TODO Needed?
679
- // if (!this._bInEditMode) {
680
- // var oSplit = UploadSetItem._splitFileName(this.getFileName());
681
- // oEdit.setValue(oSplit.name);
682
- // }
683
-
684
- if (this._bContainsError) {
685
- oEdit.setValueState(ValueState.Error);
686
- oEdit.setValueStateText("");
687
- oEdit.setShowValueStateMessage(true);
688
- if (oEdit.getValue().length === 0) {
689
- oEdit.setValueStateText(this._oRb.getText("UPLOAD_SET_TYPE_FILE_NAME"));
690
- } else {
691
- oEdit.setValueStateText(this._oRb.getText("UPLOAD_SET_FILE_NAME_EXISTS"));
692
- }
693
- }
694
- };
695
-
696
703
  /**
697
704
  * Determines if the fileName is already in usage.
698
705
  * @param {string} filename inclusive file extension
@@ -755,12 +762,19 @@ sap.ui.define([
755
762
  return this._bContainsError;
756
763
  };
757
764
 
765
+ /**
766
+ * Sets the upload type
767
+ *@param {string} sType indicates the type of the upload
768
+ * @private
769
+ * @since 1.117
770
+ *
771
+ */
772
+ UploadSetItem.prototype._setUploadType = function (sType) {
773
+ this._sUploadType = sType;
774
+ };
775
+
758
776
  UploadSetItem.prototype._setContainsError = function (bContainsError) {
759
777
  this._bContainsError = bContainsError;
760
- if (!this._bContainsError) {
761
- return;
762
- }
763
- this._updateFileNameEdit();
764
778
  };
765
779
 
766
780
  UploadSetItem._splitFileName = function (sFileName, bWithDot) {
@@ -942,6 +956,16 @@ sap.ui.define([
942
956
  }
943
957
  };
944
958
 
959
+ UploadSetItem.prototype._renderMarkersAsStatus = function (oRm) {
960
+ if (this.getMarkersAsStatus().length > 0) {
961
+ oRm.openStart("div").class("sapMUSObjectMarkersAsStatusContainer").openEnd();
962
+ this.getMarkersAsStatus().forEach(function (oStatus) {
963
+ oRm.renderControl(oStatus.addStyleClass("sapMUCObjectMarkersAsStatus"));
964
+ });
965
+ oRm.close("div");
966
+ }
967
+ };
968
+
945
969
  UploadSetItem.prototype._renderStatuses = function (oRm) {
946
970
  if (this.getStatuses().length === 0) {
947
971
  return;