@openui5/sap.m 1.115.1 → 1.116.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 (431) 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 +25 -2
  15. package/src/sap/m/Bar.js +1 -1
  16. package/src/sap/m/Breadcrumbs.js +1 -1
  17. package/src/sap/m/BusyDialog.js +5 -3
  18. package/src/sap/m/BusyIndicator.js +1 -1
  19. package/src/sap/m/Button.js +1 -1
  20. package/src/sap/m/Carousel.js +1 -1
  21. package/src/sap/m/CarouselLayout.js +1 -1
  22. package/src/sap/m/CarouselRenderer.js +1 -0
  23. package/src/sap/m/CheckBox.js +1 -1
  24. package/src/sap/m/ColorPalette.js +1 -1
  25. package/src/sap/m/ColorPalettePopover.js +1 -1
  26. package/src/sap/m/Column.js +29 -170
  27. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  28. package/src/sap/m/ColumnListItem.js +5 -11
  29. package/src/sap/m/ColumnListItemRenderer.js +16 -27
  30. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  31. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  32. package/src/sap/m/ColumnPopoverItem.js +1 -1
  33. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  34. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  35. package/src/sap/m/ComboBox.js +1 -1
  36. package/src/sap/m/ComboBoxBase.js +1 -1
  37. package/src/sap/m/ComboBoxTextField.js +1 -1
  38. package/src/sap/m/CustomListItem.js +1 -1
  39. package/src/sap/m/CustomTile.js +1 -1
  40. package/src/sap/m/CustomTreeItem.js +1 -1
  41. package/src/sap/m/DatePicker.js +23 -1
  42. package/src/sap/m/DateRangeSelection.js +34 -5
  43. package/src/sap/m/DateTimeField.js +13 -8
  44. package/src/sap/m/DateTimeInput.js +1 -1
  45. package/src/sap/m/DateTimePicker.js +1 -1
  46. package/src/sap/m/Dialog.js +1 -1
  47. package/src/sap/m/DisplayListItem.js +1 -1
  48. package/src/sap/m/DraftIndicator.js +1 -1
  49. package/src/sap/m/DynamicDate.js +1 -1
  50. package/src/sap/m/DynamicDateOption.js +1 -1
  51. package/src/sap/m/DynamicDateRange.js +1 -1
  52. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  53. package/src/sap/m/ExpandableText.js +1 -1
  54. package/src/sap/m/FacetFilter.js +1 -1
  55. package/src/sap/m/FacetFilterItem.js +1 -1
  56. package/src/sap/m/FacetFilterList.js +1 -1
  57. package/src/sap/m/FeedContent.js +1 -1
  58. package/src/sap/m/FeedInput.js +1 -1
  59. package/src/sap/m/FeedListItem.js +18 -1
  60. package/src/sap/m/FeedListItemAction.js +1 -1
  61. package/src/sap/m/Fiori20Adapter.js +2 -2
  62. package/src/sap/m/FlexBox.js +1 -1
  63. package/src/sap/m/FlexItemData.js +1 -1
  64. package/src/sap/m/FormattedText.js +43 -49
  65. package/src/sap/m/GenericTag.js +1 -1
  66. package/src/sap/m/GenericTile.js +1 -1
  67. package/src/sap/m/GroupHeaderListItem.js +1 -1
  68. package/src/sap/m/GroupHeaderListItemRenderer.js +5 -5
  69. package/src/sap/m/GrowingEnablement.js +22 -25
  70. package/src/sap/m/GrowingList.js +1 -1
  71. package/src/sap/m/HBox.js +1 -1
  72. package/src/sap/m/HeaderContainer.js +1 -1
  73. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  74. package/src/sap/m/IconTabBar.js +1 -1
  75. package/src/sap/m/IconTabBarSelectList.js +1 -1
  76. package/src/sap/m/IconTabFilter.js +1 -2
  77. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  78. package/src/sap/m/IconTabHeader.js +1 -1
  79. package/src/sap/m/IconTabSeparator.js +1 -1
  80. package/src/sap/m/IllustratedMessage.js +1 -1
  81. package/src/sap/m/Illustration.js +1 -1
  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 +12 -7
  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 +29 -1
  91. package/src/sap/m/List.js +1 -1
  92. package/src/sap/m/ListBase.js +3 -8
  93. package/src/sap/m/ListItemBase.js +1 -1
  94. package/src/sap/m/MaskEnabler.js +1 -1
  95. package/src/sap/m/MaskInput.js +1 -1
  96. package/src/sap/m/MaskInputRule.js +1 -1
  97. package/src/sap/m/Menu.js +1 -1
  98. package/src/sap/m/MenuButton.js +1 -1
  99. package/src/sap/m/MenuItem.js +1 -1
  100. package/src/sap/m/MenuListItem.js +1 -1
  101. package/src/sap/m/MessageItem.js +1 -1
  102. package/src/sap/m/MessageListItem.js +1 -1
  103. package/src/sap/m/MessagePage.js +1 -1
  104. package/src/sap/m/MessagePopover.js +1 -1
  105. package/src/sap/m/MessagePopoverItem.js +1 -1
  106. package/src/sap/m/MessageStrip.js +1 -1
  107. package/src/sap/m/MessageToast.js +1 -12
  108. package/src/sap/m/MessageView.js +1 -1
  109. package/src/sap/m/MultiComboBox.js +1 -1
  110. package/src/sap/m/MultiEditField.js +1 -1
  111. package/src/sap/m/MultiInput.js +1 -1
  112. package/src/sap/m/NavContainer.js +1 -1
  113. package/src/sap/m/NewsContent.js +1 -1
  114. package/src/sap/m/NotificationList.js +1 -1
  115. package/src/sap/m/NotificationListBase.js +1 -1
  116. package/src/sap/m/NotificationListGroup.js +1 -1
  117. package/src/sap/m/NotificationListItem.js +1 -1
  118. package/src/sap/m/NumericContent.js +1 -1
  119. package/src/sap/m/NumericInput.js +1 -1
  120. package/src/sap/m/ObjectAttribute.js +1 -1
  121. package/src/sap/m/ObjectHeader.js +1 -1
  122. package/src/sap/m/ObjectIdentifier.js +1 -1
  123. package/src/sap/m/ObjectListItem.js +1 -1
  124. package/src/sap/m/ObjectMarker.js +1 -1
  125. package/src/sap/m/ObjectNumber.js +1 -1
  126. package/src/sap/m/ObjectStatus.js +47 -4
  127. package/src/sap/m/ObjectStatusRenderer.js +7 -0
  128. package/src/sap/m/OverflowToolbar.js +7 -1
  129. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  130. package/src/sap/m/OverflowToolbarButton.js +1 -1
  131. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  132. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  133. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  134. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  135. package/src/sap/m/P13nColumnsItem.js +1 -1
  136. package/src/sap/m/P13nColumnsPanel.js +1 -1
  137. package/src/sap/m/P13nConditionPanel.js +1 -1
  138. package/src/sap/m/P13nDialog.js +1 -1
  139. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  140. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  141. package/src/sap/m/P13nFilterItem.js +1 -1
  142. package/src/sap/m/P13nFilterPanel.js +1 -1
  143. package/src/sap/m/P13nGroupItem.js +1 -1
  144. package/src/sap/m/P13nGroupPanel.js +1 -1
  145. package/src/sap/m/P13nItem.js +1 -1
  146. package/src/sap/m/P13nPanel.js +1 -1
  147. package/src/sap/m/P13nSelectionItem.js +1 -1
  148. package/src/sap/m/P13nSelectionPanel.js +1 -1
  149. package/src/sap/m/P13nSortItem.js +1 -1
  150. package/src/sap/m/P13nSortPanel.js +1 -1
  151. package/src/sap/m/PDFViewer.js +1 -1
  152. package/src/sap/m/Page.js +1 -1
  153. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  154. package/src/sap/m/PagingButton.js +1 -1
  155. package/src/sap/m/Panel.js +1 -1
  156. package/src/sap/m/PlanningCalendar.js +1 -1
  157. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  158. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  159. package/src/sap/m/PlanningCalendarRow.js +1 -1
  160. package/src/sap/m/PlanningCalendarView.js +1 -1
  161. package/src/sap/m/Popover.js +1 -1
  162. package/src/sap/m/ProgressIndicator.js +1 -1
  163. package/src/sap/m/PullToRefresh.js +1 -1
  164. package/src/sap/m/QuickView.js +1 -1
  165. package/src/sap/m/QuickViewBase.js +1 -1
  166. package/src/sap/m/QuickViewCard.js +1 -1
  167. package/src/sap/m/QuickViewGroup.js +1 -1
  168. package/src/sap/m/QuickViewGroupElement.js +1 -1
  169. package/src/sap/m/QuickViewPage.js +1 -1
  170. package/src/sap/m/RadioButton.js +1 -1
  171. package/src/sap/m/RadioButtonGroup.js +1 -1
  172. package/src/sap/m/RangeSlider.js +1 -1
  173. package/src/sap/m/RatingIndicator.js +16 -4
  174. package/src/sap/m/RatingIndicatorRenderer.js +9 -2
  175. package/src/sap/m/ResponsivePopover.js +1 -1
  176. package/src/sap/m/ResponsiveScale.js +1 -1
  177. package/src/sap/m/ScrollBar.js +1 -1
  178. package/src/sap/m/ScrollContainer.js +1 -1
  179. package/src/sap/m/SearchField.js +1 -1
  180. package/src/sap/m/SearchFieldRenderer.js +1 -1
  181. package/src/sap/m/SegmentedButton.js +1 -1
  182. package/src/sap/m/SegmentedButtonItem.js +1 -1
  183. package/src/sap/m/Select.js +1 -1
  184. package/src/sap/m/SelectDialog.js +1 -1
  185. package/src/sap/m/SelectDialogBase.js +1 -1
  186. package/src/sap/m/SelectList.js +1 -1
  187. package/src/sap/m/SelectionDetails.js +1 -1
  188. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  189. package/src/sap/m/SelectionDetailsItem.js +1 -1
  190. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  191. package/src/sap/m/Shell.js +1 -1
  192. package/src/sap/m/SimpleFixFlex.js +1 -1
  193. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  194. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  195. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  197. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  198. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  199. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  200. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  201. package/src/sap/m/SlideTile.js +1 -1
  202. package/src/sap/m/Slider.js +1 -1
  203. package/src/sap/m/SliderTooltip.js +1 -1
  204. package/src/sap/m/SliderTooltipBase.js +1 -1
  205. package/src/sap/m/SliderTooltipContainer.js +1 -1
  206. package/src/sap/m/SplitApp.js +1 -1
  207. package/src/sap/m/SplitButton.js +1 -1
  208. package/src/sap/m/SplitContainer.js +1 -1
  209. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  210. package/src/sap/m/StandardListItem.js +1 -1
  211. package/src/sap/m/StandardTile.js +1 -1
  212. package/src/sap/m/StandardTreeItem.js +1 -1
  213. package/src/sap/m/StepInput.js +1 -1
  214. package/src/sap/m/SuggestionItem.js +1 -1
  215. package/src/sap/m/SuggestionsPopover.js +1 -1
  216. package/src/sap/m/Switch.js +1 -1
  217. package/src/sap/m/TabContainer.js +1 -1
  218. package/src/sap/m/TabContainerItem.js +1 -1
  219. package/src/sap/m/TabStrip.js +1 -1
  220. package/src/sap/m/TabStripItem.js +1 -1
  221. package/src/sap/m/Table.js +46 -169
  222. package/src/sap/m/TablePersoController.js +1 -1
  223. package/src/sap/m/TablePersoDialog.js +1 -1
  224. package/src/sap/m/TablePersoProvider.js +4 -1
  225. package/src/sap/m/TableRenderer.js +93 -121
  226. package/src/sap/m/TableSelectDialog.js +1 -1
  227. package/src/sap/m/Text.js +1 -1
  228. package/src/sap/m/TextArea.js +1 -1
  229. package/src/sap/m/Tile.js +1 -1
  230. package/src/sap/m/TileContainer.js +1 -1
  231. package/src/sap/m/TileContent.js +1 -1
  232. package/src/sap/m/TimePicker.js +29 -2
  233. package/src/sap/m/TimePickerClock.js +1 -1
  234. package/src/sap/m/TimePickerClocks.js +1 -1
  235. package/src/sap/m/TimePickerClocksRenderer.js +6 -13
  236. package/src/sap/m/TimePickerInputs.js +1 -1
  237. package/src/sap/m/TimePickerInputsRenderer.js +6 -10
  238. package/src/sap/m/TimePickerInternals.js +1 -44
  239. package/src/sap/m/TimePickerSlider.js +1 -1
  240. package/src/sap/m/TimePickerSliders.js +1 -1
  241. package/src/sap/m/Title.js +1 -1
  242. package/src/sap/m/TitlePropagationSupport.js +1 -1
  243. package/src/sap/m/ToggleButton.js +15 -3
  244. package/src/sap/m/Token.js +1 -1
  245. package/src/sap/m/Tokenizer.js +1 -1
  246. package/src/sap/m/Toolbar.js +1 -1
  247. package/src/sap/m/ToolbarLayoutData.js +1 -1
  248. package/src/sap/m/ToolbarSeparator.js +1 -1
  249. package/src/sap/m/ToolbarSpacer.js +1 -1
  250. package/src/sap/m/Tree.js +1 -1
  251. package/src/sap/m/TreeItemBase.js +1 -1
  252. package/src/sap/m/UploadCollection.js +1 -1
  253. package/src/sap/m/UploadCollectionItem.js +1 -1
  254. package/src/sap/m/UploadCollectionParameter.js +1 -1
  255. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  256. package/src/sap/m/VBox.js +1 -1
  257. package/src/sap/m/ValueStateHeader.js +1 -1
  258. package/src/sap/m/VariantManagement.js +1 -38
  259. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  260. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  261. package/src/sap/m/ViewSettingsDialog.js +1 -1
  262. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  263. package/src/sap/m/ViewSettingsItem.js +1 -1
  264. package/src/sap/m/VisibleItem.js +1 -1
  265. package/src/sap/m/WheelSlider.js +1 -1
  266. package/src/sap/m/WheelSliderContainer.js +1 -1
  267. package/src/sap/m/Wizard.js +1 -1
  268. package/src/sap/m/WizardProgressNavigator.js +1 -1
  269. package/src/sap/m/WizardStep.js +1 -1
  270. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  271. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  272. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  273. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  274. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  275. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  276. package/src/sap/m/designtime/HBox.designtime.js +16 -0
  277. package/src/sap/m/designtime/IconTabFilter.designtime.js +0 -9
  278. package/src/sap/m/designtime/ObjectHeader.designtime.js +26 -0
  279. package/src/sap/m/designtime/Select.designtime.js +2 -1
  280. package/src/sap/m/designtime/VBox.designtime.js +16 -0
  281. package/src/sap/m/library.js +9 -2
  282. package/src/sap/m/messagebundle.properties +22 -11
  283. package/src/sap/m/messagebundle_ar.properties +16 -10
  284. package/src/sap/m/messagebundle_bg.properties +83 -77
  285. package/src/sap/m/messagebundle_ca.properties +14 -8
  286. package/src/sap/m/messagebundle_cs.properties +20 -14
  287. package/src/sap/m/messagebundle_cy.properties +15 -9
  288. package/src/sap/m/messagebundle_da.properties +15 -9
  289. package/src/sap/m/messagebundle_de.properties +15 -9
  290. package/src/sap/m/messagebundle_el.properties +16 -10
  291. package/src/sap/m/messagebundle_en.properties +15 -9
  292. package/src/sap/m/messagebundle_en_GB.properties +15 -9
  293. package/src/sap/m/messagebundle_en_US_sappsd.properties +13 -7
  294. package/src/sap/m/messagebundle_en_US_saprigi.properties +15 -7
  295. package/src/sap/m/messagebundle_en_US_saptrc.properties +13 -7
  296. package/src/sap/m/messagebundle_es.properties +13 -7
  297. package/src/sap/m/messagebundle_es_MX.properties +13 -7
  298. package/src/sap/m/messagebundle_et.properties +13 -7
  299. package/src/sap/m/messagebundle_fi.properties +18 -12
  300. package/src/sap/m/messagebundle_fr.properties +18 -12
  301. package/src/sap/m/messagebundle_fr_CA.properties +15 -9
  302. package/src/sap/m/messagebundle_hi.properties +16 -10
  303. package/src/sap/m/messagebundle_hr.properties +16 -10
  304. package/src/sap/m/messagebundle_hu.properties +20 -14
  305. package/src/sap/m/messagebundle_id.properties +17 -11
  306. package/src/sap/m/messagebundle_it.properties +13 -7
  307. package/src/sap/m/messagebundle_iw.properties +19 -13
  308. package/src/sap/m/messagebundle_ja.properties +50 -44
  309. package/src/sap/m/messagebundle_kk.properties +15 -9
  310. package/src/sap/m/messagebundle_ko.properties +15 -9
  311. package/src/sap/m/messagebundle_lt.properties +15 -9
  312. package/src/sap/m/messagebundle_lv.properties +13 -7
  313. package/src/sap/m/messagebundle_ms.properties +15 -9
  314. package/src/sap/m/messagebundle_nl.properties +13 -7
  315. package/src/sap/m/messagebundle_no.properties +18 -12
  316. package/src/sap/m/messagebundle_pl.properties +17 -11
  317. package/src/sap/m/messagebundle_pt.properties +13 -7
  318. package/src/sap/m/messagebundle_pt_PT.properties +13 -7
  319. package/src/sap/m/messagebundle_ro.properties +25 -19
  320. package/src/sap/m/messagebundle_ru.properties +14 -8
  321. package/src/sap/m/messagebundle_sh.properties +23 -17
  322. package/src/sap/m/messagebundle_sk.properties +15 -9
  323. package/src/sap/m/messagebundle_sl.properties +77 -71
  324. package/src/sap/m/messagebundle_sv.properties +17 -11
  325. package/src/sap/m/messagebundle_th.properties +21 -15
  326. package/src/sap/m/messagebundle_tr.properties +16 -10
  327. package/src/sap/m/messagebundle_uk.properties +18 -12
  328. package/src/sap/m/messagebundle_vi.properties +15 -9
  329. package/src/sap/m/messagebundle_zh_CN.properties +20 -14
  330. package/src/sap/m/messagebundle_zh_TW.properties +17 -11
  331. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  332. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  333. package/src/sap/m/p13n/BasePanel.js +11 -4
  334. package/src/sap/m/p13n/Container.js +9 -6
  335. package/src/sap/m/p13n/Engine.js +2 -1
  336. package/src/sap/m/p13n/GroupController.js +1 -1
  337. package/src/sap/m/p13n/GroupPanel.js +6 -1
  338. package/src/sap/m/p13n/PersistenceProvider.js +11 -6
  339. package/src/sap/m/p13n/Popup.js +1 -1
  340. package/src/sap/m/p13n/QueryPanel.js +18 -3
  341. package/src/sap/m/p13n/SelectionController.js +6 -7
  342. package/src/sap/m/p13n/SelectionPanel.js +11 -4
  343. package/src/sap/m/p13n/SortController.js +1 -1
  344. package/src/sap/m/p13n/SortPanel.js +8 -4
  345. package/src/sap/m/p13n/handler/xConfigHandler.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 -9
  351. package/src/sap/m/plugins/CopyProvider.js +2 -10
  352. package/src/sap/m/plugins/DataStateIndicator.js +1 -1
  353. package/src/sap/m/plugins/PasteProvider.js +1 -1
  354. package/src/sap/m/plugins/PluginBase.js +1 -1
  355. package/src/sap/m/semantic/AddAction.js +1 -1
  356. package/src/sap/m/semantic/CancelAction.js +1 -1
  357. package/src/sap/m/semantic/DeleteAction.js +1 -1
  358. package/src/sap/m/semantic/DetailPage.js +1 -1
  359. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  360. package/src/sap/m/semantic/EditAction.js +1 -1
  361. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  362. package/src/sap/m/semantic/FilterAction.js +1 -1
  363. package/src/sap/m/semantic/FilterSelect.js +1 -1
  364. package/src/sap/m/semantic/FlagAction.js +1 -1
  365. package/src/sap/m/semantic/ForwardAction.js +1 -1
  366. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  367. package/src/sap/m/semantic/GroupAction.js +1 -1
  368. package/src/sap/m/semantic/GroupSelect.js +1 -1
  369. package/src/sap/m/semantic/MainAction.js +1 -1
  370. package/src/sap/m/semantic/MasterPage.js +1 -1
  371. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  372. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  373. package/src/sap/m/semantic/NegativeAction.js +1 -1
  374. package/src/sap/m/semantic/OpenInAction.js +1 -1
  375. package/src/sap/m/semantic/PositiveAction.js +1 -1
  376. package/src/sap/m/semantic/PrintAction.js +1 -1
  377. package/src/sap/m/semantic/SaveAction.js +1 -1
  378. package/src/sap/m/semantic/Segment.js +1 -1
  379. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  380. package/src/sap/m/semantic/SemanticButton.js +1 -1
  381. package/src/sap/m/semantic/SemanticConfiguration.js +3 -3
  382. package/src/sap/m/semantic/SemanticControl.js +1 -1
  383. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  384. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  385. package/src/sap/m/semantic/SemanticPage.js +1 -1
  386. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  387. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  388. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  389. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  390. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  391. package/src/sap/m/semantic/ShareMenu.js +1 -1
  392. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  393. package/src/sap/m/semantic/SortAction.js +1 -1
  394. package/src/sap/m/semantic/SortSelect.js +1 -1
  395. package/src/sap/m/table/Util.js +1 -1
  396. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  397. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  398. package/src/sap/m/table/columnmenu/Item.js +1 -1
  399. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  400. package/src/sap/m/table/columnmenu/Menu.js +1 -1
  401. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  402. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  403. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  404. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  405. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  406. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  407. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  408. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  409. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  410. package/src/sap/m/themes/base/Avatar.less +32 -0
  411. package/src/sap/m/themes/base/MessageStrip.less +1 -1
  412. package/src/sap/m/themes/base/ObjectStatus.less +1 -2
  413. package/src/sap/m/themes/base/PlanningCalendarHeader.less +2 -1
  414. package/src/sap/m/themes/base/RadioButton.less +3 -1
  415. package/src/sap/m/themes/base/SearchField.less +8 -3
  416. package/src/sap/m/themes/base/Select.less +31 -2
  417. package/src/sap/m/themes/base/Table.less +0 -8
  418. package/src/sap/m/themes/base/TimePickerClocks.less +4 -0
  419. package/src/sap/m/themes/base/UploadSetTable.less +80 -0
  420. package/src/sap/m/themes/base/ValueStateMessage.less +1 -0
  421. package/src/sap/m/themes/base/Wizard.less +1 -1
  422. package/src/sap/m/themes/base/library.source.less +1 -0
  423. package/src/sap/m/upload/FilePreviewDialog.js +223 -0
  424. package/src/sap/m/upload/UploadSet.js +5 -4
  425. package/src/sap/m/upload/UploadSetItem.js +1 -27
  426. package/src/sap/m/upload/UploadSetTable.js +929 -0
  427. package/src/sap/m/upload/UploadSetTableItem.js +327 -0
  428. package/src/sap/m/upload/UploadSetTableItemRenderer.js +22 -0
  429. package/src/sap/m/upload/UploadSetTableRenderer.js +34 -0
  430. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
  431. package/src/sap/m/upload/UploaderTableItem.js +276 -0
@@ -9,9 +9,7 @@ sap.ui.define(["sap/ui/core/Renderer", "sap/ui/core/Core", "sap/ui/core/Invisibl
9
9
  "use strict";
10
10
 
11
11
 
12
- // shortcut for sap.m.ListKeyboardMode
13
12
  var ListKeyboardMode = library.ListKeyboardMode;
14
- // shortcut for sap.m.MultiSelectMode
15
13
  var MultiSelectMode = library.MultiSelectMode;
16
14
 
17
15
  /**
@@ -38,187 +36,159 @@ sap.ui.define(["sap/ui/core/Renderer", "sap/ui/core/Core", "sap/ui/core/Invisibl
38
36
  *
39
37
  * @param {sap.ui.core.RenderManager} rm RenderManager
40
38
  * @param {sap.m.ListBase} oTable Table control
41
- * @param {string} type Whether "Head" or "Foot"
39
+ * @param {string} sType Whether "Head" or "Foot"
42
40
  */
43
- TableRenderer.renderColumns = function(rm, oTable, type) {
44
- var index = 0,
45
- hiddens = 0,
46
- hasPopin = false,
47
- hasFooter = false,
48
- mode = oTable.getMode(),
49
- iModeOrder = ListBaseRenderer.ModeOrder[mode],
50
- clsPrefix = "sapMListTbl",
51
- idPrefix = oTable.getId("tbl"),
52
- cellTag = (type == "Head") ? "th" : "td",
53
- groupTag = "t" + type.toLowerCase(),
41
+ TableRenderer.renderColumns = function(rm, oTable, sType) {
42
+ var iIndex = 0,
43
+ bHasPopin = false,
44
+ bHasFooter = false,
45
+ bHeaderHidden = false,
46
+ bHasFlexibleColumn,
47
+ sMode = oTable.getMode(),
48
+ iModeOrder = ListBaseRenderer.ModeOrder[sMode],
49
+ sClassPrefix = "sapMListTbl",
50
+ sIdPrefix = oTable.getId("tbl"),
51
+ sCellTag = (sType == "Head") ? "th" : "td",
52
+ sTypeTag = "t" + sType.toLowerCase(),
54
53
  aColumns = oTable.getColumns(),
55
- bShouldRenderDummyColumn = oTable.shouldRenderDummyColumn(),
56
- bHeaderHidden,
57
- createBlankCell = function(cls, id, bAriaHidden) {
58
- rm.openStart(cellTag, id && idPrefix + id);
59
- if (cellTag === "th") {
54
+ vFixedLayout = oTable.getFixedLayout(),
55
+ createBlankCell = function(sClass, sId, bAriaHidden) {
56
+ rm.openStart(sCellTag, sId && sIdPrefix + sId);
57
+ if (sCellTag === "th") {
60
58
  rm.class("sapMTableTH");
61
59
  rm.attr("role", bAriaHidden ? "presentation" : "columnheader");
62
60
  rm.attr("scope", "col");
63
- } else if (bAriaHidden) { // hidden td
61
+ } else if (bAriaHidden) {
64
62
  rm.attr("role", "presentation");
65
63
  }
66
64
  bAriaHidden && rm.attr("aria-hidden", "true");
67
- rm.class(clsPrefix + cls);
68
-
69
- if (type === "Foot") {
70
- if (cls === "HighlightCol") {
71
- rm.class("sapMTableHighlightFooterCell");
72
- } else if (cls === "NavigatedCol") {
73
- rm.class("sapMTableNavigatedFooterCell");
74
- }
75
- }
76
-
65
+ rm.class(sClassPrefix + sClass);
77
66
  rm.openEnd();
78
- rm.close(cellTag);
79
- index++;
67
+ rm.close(sCellTag);
68
+ iIndex++;
80
69
  };
81
70
 
82
- if (type == "Head") {
83
- var aVisibleColumns = aColumns.filter(function(oCol){
84
- return oCol.getVisible();
71
+ if (sType == "Head") {
72
+ var oFirstVisibleColumn = aColumns.find(function(oColumn) {
73
+ return oColumn.getVisible();
85
74
  });
86
75
  var oForcedColumn = aColumns.reduce(function(oRefColumn, oColumn, iOrder) {
87
76
  oColumn.setIndex(-1);
88
77
  oColumn.setInitialOrder(iOrder);
89
78
  oColumn.setForcedColumn(false);
90
79
  return (oColumn.getVisible() && oColumn.getCalculatedMinScreenWidth() < oRefColumn.getCalculatedMinScreenWidth()) ? oColumn : oRefColumn;
91
- }, aVisibleColumns[0]);
80
+ }, oFirstVisibleColumn);
92
81
 
93
- var iHeaderLength = aColumns.filter(function(oColumn) {
94
- return oColumn.getVisible() &&
95
- !oColumn.isPopin() &&
96
- !oColumn.isHidden();
82
+ var iRenderedColumnsLength = aColumns.filter(function(oColumn) {
83
+ return oColumn.getVisible() && !oColumn.isHidden();
97
84
  }).length;
98
-
99
- if (!iHeaderLength && oForcedColumn) {
85
+ if (!iRenderedColumnsLength && oForcedColumn) {
100
86
  oForcedColumn.setForcedColumn(true);
101
- iHeaderLength = 1;
87
+ iRenderedColumnsLength = 1;
88
+ }
89
+ if (iRenderedColumnsLength == 1 && vFixedLayout == "Strict") {
90
+ oTable._bCheckLastColumnWidth = true;
102
91
  }
103
92
 
104
- bHeaderHidden = aColumns.every(function(oColumn) {
105
- return !oColumn.getHeader() ||
106
- !oColumn.getHeader().getVisible() ||
107
- !oColumn.getVisible() ||
108
- oColumn.isPopin() ||
109
- oColumn.isHidden();
93
+ bHeaderHidden = !iRenderedColumnsLength || aColumns.every(function(oColumn) {
94
+ return !oColumn.getHeader() || !oColumn.getHeader().getVisible() || !oColumn.getVisible() || oColumn.isHidden();
110
95
  });
111
96
  }
112
97
 
113
- rm.openStart(groupTag);
114
-
115
- if (oTable._hasFooter && type === "Foot") {
98
+ rm.openStart(sTypeTag);
99
+ if (oTable._hasFooter && sType === "Foot") {
116
100
  rm.class("sapMTableTFoot");
117
-
118
101
  if (oTable.hasPopin()) {
119
102
  rm.class("sapMListTblHasPopin");
120
103
  }
121
104
  }
122
-
123
105
  rm.openEnd();
124
106
 
125
- rm.openStart("tr", oTable.addNavSection(idPrefix + type + "er"));
126
-
107
+ rm.openStart("tr", oTable.addNavSection(sIdPrefix + sType + "er"));
127
108
  if (bHeaderHidden) {
128
109
  rm.class("sapMListTblHeaderNone");
110
+ rm.attr("aria-hidden", true);
129
111
  } else {
130
112
  rm.attr("tabindex", -1);
131
- rm.class("sapMListTblRow").class("sapMListTbl" + type + "er");
113
+ rm.class("sapMListTblRow").class("sapMListTbl" + sType + "er");
132
114
  rm.class("sapMLIBFocusable").class("sapMTableRowCustomFocus");
133
115
  }
134
-
135
116
  rm.openEnd();
136
117
 
137
- createBlankCell("HighlightCol", type + "Highlight", true);
118
+ createBlankCell("HighlightCol", sType + "Highlight", true);
138
119
 
139
120
  if (iModeOrder == -1) {
140
- if (mode == "MultiSelect" && type == "Head" && !bHeaderHidden) {
121
+ if (sMode == "MultiSelect" && sType == "Head" && !bHeaderHidden) {
141
122
  rm.openStart("th");
142
123
  rm.class("sapMTableTH");
143
124
  rm.attr("scope", "col");
144
125
  rm.attr("aria-hidden", "true");
145
- rm.class(clsPrefix + "SelCol");
126
+ rm.class(sClassPrefix + "SelCol");
146
127
  rm.attr("role", "presentation");
147
128
  rm.openEnd();
148
129
  rm.renderControl(oTable.getMultiSelectMode() == MultiSelectMode.ClearAll ? oTable._getClearAllButton() : oTable._getSelectAllCheckbox());
149
130
  rm.close("th");
150
- index++;
131
+ iIndex++;
151
132
  } else {
152
133
  createBlankCell("SelCol", "", true);
153
134
  }
154
135
  }
155
136
 
156
- oTable.getColumns(true).forEach(function(oColumn, order) {
137
+ oTable.getColumns(true).forEach(function(oColumn) {
157
138
  if (!oColumn.getVisible()) {
158
139
  return;
159
140
  }
160
141
  if (oColumn.isPopin()) {
161
- hasPopin = true;
142
+ bHasPopin = true;
162
143
  return;
163
144
  }
164
- var bHidden = oColumn.isHidden();
165
- if (bHidden) {
166
- hiddens++;
145
+ if (oColumn.isHidden()) {
146
+ return;
167
147
  }
168
148
 
169
- var control = oColumn["get" + type + "er"](),
170
- vFixedLayout = oTable.getFixedLayout(),
171
- width = (iHeaderLength == 1 && vFixedLayout != "Strict") ? "" : oColumn.getWidth(),
172
- aStyleClass = oColumn.getStyleClass(true).split(" "),
173
- align = oColumn.getCssAlign();
174
-
175
- oTable._bCheckLastColumnWidth = vFixedLayout == "Strict" && iHeaderLength == 1;
149
+ var oControl = oColumn["get" + sType + "er"](),
150
+ sWidth = (iRenderedColumnsLength == 1 && vFixedLayout != "Strict") ? "" : oColumn.getWidth(),
151
+ aStyleClass = oColumn.getStyleClass().split(" ").filter(Boolean),
152
+ sAlign = oColumn.getCssAlign();
176
153
 
177
- if (type == "Head") {
178
- rm.openStart(cellTag, oColumn);
154
+ if (sType == "Head") {
155
+ rm.openStart(sCellTag, oColumn);
179
156
  rm.class("sapMTableTH");
180
157
  rm.attr("role", "columnheader");
181
158
  rm.attr("scope", "col");
182
159
  var sSortIndicator = oColumn.getSortIndicator().toLowerCase();
183
160
  sSortIndicator !== "none" && rm.attr("aria-sort", sSortIndicator);
161
+ if (!bHasFlexibleColumn) {
162
+ bHasFlexibleColumn = !sWidth || sWidth == "auto";
163
+ }
184
164
  } else {
185
- rm.openStart(cellTag);
165
+ rm.openStart(sCellTag);
186
166
  }
187
167
 
188
- aStyleClass && aStyleClass.forEach(function (sClsName) {
189
- rm.class(sClsName);
168
+ aStyleClass.forEach(function (sClass) {
169
+ rm.class(sClass);
190
170
  });
191
- rm.class(clsPrefix + "Cell");
192
- rm.class(clsPrefix + type + "erCell");
171
+ rm.class(sClassPrefix + "Cell");
172
+ rm.class(sClassPrefix + sType + "erCell");
193
173
  rm.attr("data-sap-ui-column", oColumn.getId());
194
- rm.attr("data-sap-width", oColumn.getWidth());
195
- rm.style("width", width);
196
-
197
- // required to set the correct aligment to the footer cell
198
- if (align && type !== "Head") {
199
- rm.style("text-align", align);
174
+ rm.style("width", sWidth);
175
+ if (sAlign && sType !== "Head") {
176
+ rm.style("text-align", sAlign);
200
177
  }
201
-
202
- if (bHidden) {
203
- rm.style("display", "none");
204
- rm.attr("aria-hidden", "true");
205
- }
206
-
207
178
  rm.openEnd();
208
179
 
209
- if (control) {
210
- if (type === "Head") {
180
+ if (oControl) {
181
+ if (sType === "Head") {
211
182
  rm.openStart("div", oColumn.getId() + "-ah");
212
183
  rm.class("sapMColumnHeader");
213
184
 
214
185
  var oMenu = oColumn._getHeaderMenuInstance();
215
- if ((oTable.bActiveHeaders || oMenu) && !control.isA("sap.ui.core.InvisibleText")) {
216
- // add active header attributes and style class
186
+ if ((oTable.bActiveHeaders || oMenu) && !oControl.isA("sap.ui.core.InvisibleText")) {
217
187
  rm.attr("tabindex", 0);
218
188
  rm.attr("role", "button");
219
189
  rm.class("sapMColumnHeaderActive");
220
190
  rm.attr("aria-haspopup", oMenu ? oMenu.getAriaHasPopupType().toLowerCase() : "dialog");
221
- if (control.isA("sap.m.Label") && control.getRequired()) {
191
+ if (oControl.isA("sap.m.Label") && oControl.getRequired()) {
222
192
  rm.attr("aria-describedby", InvisibleText.getStaticId("sap.m", "CONTROL_IN_COLUMN_REQUIRED"));
223
193
  }
224
194
  } else if (oTable.bFocusableHeaders) {
@@ -226,51 +196,54 @@ sap.ui.define(["sap/ui/core/Renderer", "sap/ui/core/Core", "sap/ui/core/Invisibl
226
196
  rm.class("sapMColumnHeaderFocusable");
227
197
  }
228
198
 
229
- if (align) {
230
- rm.style("justify-content", TableRenderer.columnAlign[align]);
231
- rm.style("text-align", align);
199
+ if (sAlign) {
200
+ rm.style("justify-content", TableRenderer.columnAlign[sAlign]);
201
+ rm.style("text-align", sAlign);
232
202
  }
233
203
 
234
204
  rm.openEnd();
235
- rm.renderControl(control.addStyleClass("sapMColumnHeaderContent"));
205
+ rm.renderControl(oControl.addStyleClass("sapMColumnHeaderContent"));
236
206
  rm.close("div");
237
207
  } else {
238
- // rendering of the footer cell
239
- rm.renderControl(control);
208
+ rm.renderControl(oControl);
240
209
  }
241
210
  }
242
211
 
243
- if (type == "Head" && !hasFooter) {
244
- hasFooter = !!oColumn.getFooter();
212
+ if (sType == "Head" && !bHasFooter) {
213
+ bHasFooter = !!oColumn.getFooter();
245
214
  }
246
215
 
247
- rm.close(cellTag);
248
- oColumn.setIndex(index++);
216
+ rm.close(sCellTag);
217
+ oColumn.setIndex(iIndex++);
249
218
  });
250
219
 
251
- if (hasPopin && bShouldRenderDummyColumn) {
252
- createBlankCell("DummyCell", type + "DummyCell", true);
220
+ if (sType == "Head") {
221
+ oTable._dummyColumn = (bHasFlexibleColumn != undefined && !bHasFlexibleColumn && vFixedLayout == "Strict");
253
222
  }
254
223
 
255
- createBlankCell("NavCol", type + "Nav", true);
224
+ if (bHasPopin && oTable._dummyColumn) {
225
+ createBlankCell("DummyCell", sType + "DummyCell", true);
226
+ }
227
+
228
+ createBlankCell("NavCol", sType + "Nav", true);
256
229
 
257
230
  if (iModeOrder == 1) {
258
231
  createBlankCell("SelCol", "", true);
259
232
  }
260
233
 
261
- createBlankCell("NavigatedCol", type + "Navigated", true);
234
+ createBlankCell("NavigatedCol", sType + "Navigated", true);
262
235
 
263
- if (!hasPopin && bShouldRenderDummyColumn) {
264
- createBlankCell("DummyCell", type + "DummyCell", true);
236
+ if (!bHasPopin && oTable._dummyColumn) {
237
+ createBlankCell("DummyCell", sType + "DummyCell", true);
265
238
  }
266
239
 
267
240
  rm.close("tr");
268
- rm.close(groupTag);
241
+ rm.close(sTypeTag);
269
242
 
270
- if (type === "Head") {
271
- oTable._hasPopin = hasPopin;
272
- oTable._colCount = index - hiddens;
273
- oTable._hasFooter = hasFooter;
243
+ if (sType === "Head") {
244
+ oTable._colCount = iIndex;
245
+ oTable._hasPopin = bHasPopin;
246
+ oTable._hasFooter = bHasFooter;
274
247
  oTable._headerHidden = bHeaderHidden;
275
248
  }
276
249
  };
@@ -371,8 +344,7 @@ sap.ui.define(["sap/ui/core/Renderer", "sap/ui/core/Core", "sap/ui/core/Invisibl
371
344
  }
372
345
  rm.openEnd();
373
346
 
374
- var bRenderDummyColumn = !oControl.hasPopin() && oControl.shouldRenderDummyColumn();
375
-
347
+ var bRenderDummyColumn = oControl.shouldRenderDummyColumn();
376
348
  rm.openStart("td", oControl.getId("nodata-text"));
377
349
  rm.attr("colspan", oControl.getColCount() - bRenderDummyColumn);
378
350
  rm.class("sapMListTblCell").class("sapMListTblCellNoData");
@@ -110,7 +110,7 @@ sap.ui.define([
110
110
  * When using the <code>sap.m.TableSelectDialog</code> in SAP Quartz and Horizon themes, the breakpoints and layout paddings could be determined by the dialog's width. To enable this concept and add responsive paddings to an element of the control, you have to add the following classes depending on your use case: <code>sapUiResponsivePadding--header</code>, <code>sapUiResponsivePadding--subHeader</code>, <code>sapUiResponsivePadding--content</code>, <code>sapUiResponsivePadding--footer</code>.
111
111
  * @extends sap.m.SelectDialogBase
112
112
  * @author SAP SE
113
- * @version 1.115.1
113
+ * @version 1.116.0
114
114
  *
115
115
  * @constructor
116
116
  * @public
package/src/sap/m/Text.js CHANGED
@@ -54,7 +54,7 @@ function(library, Core, Control, coreLibrary, Device, HyphenationSupport, TextRe
54
54
  * @implements sap.ui.core.IShrinkable, sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent
55
55
  *
56
56
  * @author SAP SE
57
- * @version 1.115.1
57
+ * @version 1.116.0
58
58
  *
59
59
  * @constructor
60
60
  * @public
@@ -84,7 +84,7 @@ function(
84
84
  * @extends sap.m.InputBase
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.115.1
87
+ * @version 1.116.0
88
88
  *
89
89
  * @constructor
90
90
  * @public
package/src/sap/m/Tile.js CHANGED
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.ui.core.Control
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.115.1
38
+ * @version 1.116.0
39
39
  *
40
40
  * @constructor
41
41
  * @public
@@ -46,7 +46,7 @@ function(
46
46
  * @extends sap.ui.core.Control
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.115.1
49
+ * @version 1.116.0
50
50
  *
51
51
  * @constructor
52
52
  * @public
@@ -24,7 +24,7 @@ sap.ui.define(['./library', 'sap/ui/core/library', 'sap/ui/core/Control', './Til
24
24
  * @extends sap.ui.core.Control
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.115.1
27
+ * @version 1.116.0
28
28
  * @since 1.34.0
29
29
  *
30
30
  * @public
@@ -174,7 +174,7 @@ function(
174
174
  * @extends sap.m.DateTimeField
175
175
  *
176
176
  * @author SAP SE
177
- * @version 1.115.1
177
+ * @version 1.116.0
178
178
  *
179
179
  * @constructor
180
180
  * @public
@@ -1256,6 +1256,31 @@ function(
1256
1256
  oEvent.preventDefault(); // do not move cursor
1257
1257
  };
1258
1258
 
1259
+ /**
1260
+ * Handle when escape is pressed. Escaping unsaved input will restore
1261
+ * the last valid value. If the value cannot be parsed into a date,
1262
+ * the input will be cleared.
1263
+ *
1264
+ * @param {jQuery.Event} oEvent The event object.
1265
+ * @private
1266
+ */
1267
+ TimePicker.prototype.onsapescape = function(oEvent) {
1268
+ var oLastDate = this._parseValue(this.getLastValue(), true),
1269
+ oInputDate = this._parseValue(this._getInputValue(), true),
1270
+ sDisplayFormatLastDate = this._formatValue(oLastDate, false),
1271
+ sDisplayFormatInputDate = this._formatValue(oInputDate, false),
1272
+ sInputValue = this.getMaskMode() === "Off" ? this._getInputValue() : sDisplayFormatInputDate;
1273
+
1274
+ if (sInputValue !== sDisplayFormatLastDate) {
1275
+ oEvent.setMarked();
1276
+ oEvent.preventDefault();
1277
+
1278
+ this.updateDomValue(sDisplayFormatLastDate);
1279
+ this.onValueRevertedByEscape(sDisplayFormatLastDate, sDisplayFormatInputDate);
1280
+ }
1281
+ this._bCheckForLiveChange = true;
1282
+ };
1283
+
1259
1284
  /**
1260
1285
  * Handles the shift + pagedown and ctrl + shift + pagedown events.
1261
1286
  *
@@ -1304,7 +1329,9 @@ function(
1304
1329
 
1305
1330
  oEvent.preventDefault(); //ie expands the address bar on F4
1306
1331
  } else if (!this._isMobileDevice()) {
1307
- MaskEnabler.onkeydown.call(this, oEvent);
1332
+ if (iKC !== oKC.ESCAPE) {
1333
+ MaskEnabler.onkeydown.call(this, oEvent);
1334
+ }
1308
1335
  } else {
1309
1336
  if (iKC === KeyCodes.ENTER || iKC === KeyCodes.SPACE) {
1310
1337
  this._openNumericPicker();
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.ui.core.Control
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.115.1
32
+ * @version 1.116.0
33
33
  *
34
34
  * @constructor
35
35
  * @private
@@ -52,7 +52,7 @@ sap.ui.define([
52
52
  * @extends sap.ui.core.Control
53
53
  *
54
54
  * @author SAP SE
55
- * @version 1.115.1
55
+ * @version 1.116.0
56
56
  *
57
57
  * @constructor
58
58
  * @public
@@ -24,8 +24,6 @@ sap.ui.define([], function() {
24
24
  TimePickerClocksRenderer.render = function(oRm, oControl) {
25
25
  oRm.openStart("div", oControl); // outer wrapper
26
26
  oRm.class("sapMTPClocksContainer");
27
- // oRm.attr("role", "application");
28
- // oRm.attr("aria-roledescription", oControl._getAriaRoleDescription());
29
27
  oRm.openEnd();
30
28
 
31
29
  this.renderButtons(oRm, oControl);
@@ -43,34 +41,29 @@ sap.ui.define([], function() {
43
41
  TimePickerClocksRenderer.renderButtons = function(oRm, oControl) {
44
42
  var aButtons = oControl.getAggregation("_buttons"),
45
43
  oSegButton = oControl.getAggregation("_buttonAmPm"),
46
- aSeparators = oControl._getTimeSeparators(oControl._getDisplayFormatPattern()),
47
- sSeparator,
44
+ aSeparators = aButtons && aButtons.length ? Array(aButtons.length - 1).fill(":") : [],
48
45
  iIndex;
49
46
 
50
47
  if (aButtons) {
51
48
 
52
49
  if (oSegButton) {
53
50
  aButtons.push(oSegButton);
51
+ aSeparators.push(" ");
54
52
  }
55
53
  oRm.openStart("div"); // buttons wrapper
56
54
  oRm.class("sapMTPCButtons");
57
55
  oRm.attr("dir", "ltr");
58
56
  oRm.openEnd();
59
57
 
60
- // render buttons and separators
61
- for (iIndex = 0; iIndex < aSeparators.length; iIndex++) {
62
- if (iIndex > 0 || aSeparators[iIndex] !== "") {
63
- sSeparator = aSeparators[iIndex];
64
- if (sSeparator === undefined) {
65
- sSeparator = "";
66
- }
58
+ for (iIndex = 0; iIndex < aButtons.length; iIndex++) {
59
+ oRm.renderControl(aButtons[iIndex]);
60
+ if (aSeparators[iIndex]) {
67
61
  oRm.openStart("span");
68
62
  oRm.attr("aria-hidden", "true");
69
63
  oRm.openEnd();
70
- oRm.text(sSeparator);
64
+ oRm.text(aSeparators[iIndex]);
71
65
  oRm.close("span");
72
66
  }
73
- aButtons[iIndex] && oRm.renderControl(aButtons[iIndex]);
74
67
  }
75
68
 
76
69
  oRm.renderControl(oControl._getCurrentTimeButton());
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.ui.core.Control
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.115.1
54
+ * @version 1.116.0
55
55
  *
56
56
  * @constructor
57
57
  * @public
@@ -24,13 +24,13 @@ sap.ui.define([], function() {
24
24
  TimePickerInputsRenderer.render = function(oRm, oControl) {
25
25
  var aControls = oControl.getAggregation("_inputs"),
26
26
  oSegButton = oControl.getAggregation("_buttonAmPm"),
27
- aSeparators = oControl._getTimeSeparators(oControl._getDisplayFormatPattern()),
28
- sSeparator,
27
+ aSeparators = aControls && aControls.length ? Array(aControls.length - 1).fill(":") : [],
29
28
  iIndex;
30
29
 
31
30
  if (aControls) {
32
31
  if (oSegButton) {
33
32
  aControls.push(oSegButton);
33
+ aSeparators.push(" ");
34
34
  }
35
35
 
36
36
  oRm.openStart("div", oControl); // outer wrapper
@@ -40,19 +40,15 @@ sap.ui.define([], function() {
40
40
  oRm.openEnd();
41
41
 
42
42
  // render buttons and separators
43
- for (iIndex = 0; iIndex < aSeparators.length; iIndex++) {
44
- if (iIndex > 0 || aSeparators[iIndex] !== "") {
45
- sSeparator = aSeparators[iIndex];
46
- if (sSeparator === undefined) {
47
- sSeparator = "";
48
- }
43
+ for (iIndex = 0; iIndex < aControls.length; iIndex++) {
44
+ oRm.renderControl(aControls[iIndex]);
45
+ if (aSeparators[iIndex]) {
49
46
  oRm.openStart("span");
50
47
  oRm.attr("aria-hidden", "true");
51
48
  oRm.openEnd();
52
- oRm.text(sSeparator);
49
+ oRm.text(aSeparators[iIndex]);
53
50
  oRm.close("span");
54
51
  }
55
- aControls[iIndex] && oRm.renderControl(aControls[iIndex]);
56
52
  }
57
53
 
58
54
  oRm.renderControl(oControl._getCurrentTimeButton());
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  * @extends sap.ui.core.Control
50
50
  *
51
51
  * @author SAP SE
52
- * @version 1.115.1
52
+ * @version 1.116.0
53
53
  *
54
54
  * @constructor
55
55
  * @private
@@ -431,49 +431,6 @@ sap.ui.define([
431
431
  return "";
432
432
  };
433
433
 
434
- /**
435
- * Returns an array of separators between separate parts of the display format.
436
- * @returns {array} array of separators
437
- * @private
438
- */
439
- TimePickerInternals.prototype._getTimeSeparators = function (sDisplayFormat) {
440
- var aFormatParts = DateFormat.getInstance({ pattern: sDisplayFormat }).aFormatArray,
441
- aSeparators = [],
442
- bAmPmMarker,
443
- bPreviousWasEntity,
444
- iIndex;
445
-
446
- if (!aFormatParts.length) {
447
- return aSeparators;
448
- }
449
-
450
- if (aFormatParts[0].type !== 'text') {
451
- aSeparators.push("");
452
- }
453
-
454
- for (iIndex = 0; iIndex < aFormatParts.length; iIndex++) {
455
- if (aFormatParts[iIndex].type === 'amPmMarker') {
456
- bAmPmMarker = true;
457
- } else if (aFormatParts[iIndex].type !== "text") {
458
- if (bPreviousWasEntity) {
459
- // there was previous non-separator entity, and this one is the same too, so add empty separator
460
- aSeparators.push("");
461
- } else {
462
- // this is non-separator entity, set the entity flag
463
- bPreviousWasEntity = true;
464
- }
465
- } else {
466
- // add separator and clear non-separator entity flag
467
- aSeparators.push(aFormatParts[iIndex].value);
468
- bPreviousWasEntity = false;
469
- }
470
- }
471
-
472
- bAmPmMarker && aSeparators.push("");
473
-
474
- return aSeparators;
475
- };
476
-
477
434
  /**
478
435
  * Returns if the displayFormatPattern is HH or H (24 hours format with or without leading zero).
479
436
  * @returns {boolean} Is the displayFormatPattern is HH or H (24 hours format with or without leading zero).
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Control
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.115.1
31
+ * @version 1.116.0
32
32
  *
33
33
  * @constructor
34
34
  * @private
@@ -52,7 +52,7 @@ sap.ui.define([
52
52
  * @extends sap.ui.core.Control
53
53
  *
54
54
  * @author SAP SE
55
- * @version 1.115.1
55
+ * @version 1.116.0
56
56
  *
57
57
  * @constructor
58
58
  * @public