@openui5/sap.m 1.92.0 → 1.95.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 (463) hide show
  1. package/.reuse/dep5 +1 -6
  2. package/THIRDPARTY.txt +4 -10
  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 +1 -1
  9. package/src/sap/m/App.js +5 -1
  10. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  11. package/src/sap/m/Avatar.js +1 -4
  12. package/src/sap/m/Bar.js +26 -7
  13. package/src/sap/m/Breadcrumbs.js +2 -2
  14. package/src/sap/m/BusyDialog.js +1 -1
  15. package/src/sap/m/BusyIndicator.js +1 -1
  16. package/src/sap/m/Button.js +42 -6
  17. package/src/sap/m/Carousel.js +11 -3
  18. package/src/sap/m/CarouselLayout.js +1 -1
  19. package/src/sap/m/CheckBox.js +9 -4
  20. package/src/sap/m/CheckBoxRenderer.js +12 -3
  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 +9 -1
  24. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  25. package/src/sap/m/ColumnListItem.js +8 -2
  26. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  27. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  30. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  31. package/src/sap/m/ComboBox.js +1 -1
  32. package/src/sap/m/ComboBoxBase.js +5 -2
  33. package/src/sap/m/ComboBoxRenderer.js +25 -9
  34. package/src/sap/m/ComboBoxTextField.js +1 -1
  35. package/src/sap/m/CustomDynamicDateOption.js +6 -2
  36. package/src/sap/m/CustomListItem.js +1 -1
  37. package/src/sap/m/CustomTile.js +1 -1
  38. package/src/sap/m/CustomTreeItem.js +1 -1
  39. package/src/sap/m/DatePicker.js +30 -3
  40. package/src/sap/m/DatePickerRenderer.js +1 -1
  41. package/src/sap/m/DateRangeSelection.js +2 -2
  42. package/src/sap/m/DateTimeField.js +69 -1
  43. package/src/sap/m/DateTimeInput.js +1 -1
  44. package/src/sap/m/DateTimePicker.js +15 -8
  45. package/src/sap/m/Dialog.js +31 -93
  46. package/src/sap/m/DialogRenderer.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 +67 -13
  50. package/src/sap/m/DynamicDateFormat.js +12 -1
  51. package/src/sap/m/DynamicDateOption.js +56 -16
  52. package/src/sap/m/DynamicDateRange.js +136 -23
  53. package/src/sap/m/DynamicDateUtil.js +20 -2
  54. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  55. package/src/sap/m/ExpandableText.js +4 -2
  56. package/src/sap/m/FacetFilter.js +47 -16
  57. package/src/sap/m/FacetFilterItem.js +1 -1
  58. package/src/sap/m/FacetFilterList.js +2 -2
  59. package/src/sap/m/FeedContent.js +1 -1
  60. package/src/sap/m/FeedInput.js +5 -2
  61. package/src/sap/m/FeedListItem.js +1 -1
  62. package/src/sap/m/FeedListItemAction.js +1 -1
  63. package/src/sap/m/Fiori20Adapter.js +2 -2
  64. package/src/sap/m/FlexBox.js +32 -67
  65. package/src/sap/m/FlexItemData.js +1 -1
  66. package/src/sap/m/FormattedText.js +1 -1
  67. package/src/sap/m/GenericTag.js +1 -1
  68. package/src/sap/m/GenericTile.js +9 -3
  69. package/src/sap/m/GenericTileRenderer.js +46 -8
  70. package/src/sap/m/GroupHeaderListItem.js +1 -1
  71. package/src/sap/m/GrowingEnablement.js +31 -34
  72. package/src/sap/m/GrowingList.js +1 -1
  73. package/src/sap/m/HBox.js +1 -1
  74. package/src/sap/m/HeaderContainer.js +53 -1
  75. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  76. package/src/sap/m/IconTabBar.js +2 -2
  77. package/src/sap/m/IconTabBarSelectList.js +1 -1
  78. package/src/sap/m/IconTabFilter.js +75 -37
  79. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  80. package/src/sap/m/IconTabHeader.js +21 -7
  81. package/src/sap/m/IconTabHeaderRenderer.js +1 -0
  82. package/src/sap/m/IconTabSeparator.js +1 -1
  83. package/src/sap/m/Image.js +1 -1
  84. package/src/sap/m/ImageContent.js +1 -1
  85. package/src/sap/m/Input.js +131 -37
  86. package/src/sap/m/InputBase.js +13 -6
  87. package/src/sap/m/InputListItem.js +1 -1
  88. package/src/sap/m/Label.js +1 -1
  89. package/src/sap/m/LightBox.js +2 -2
  90. package/src/sap/m/LightBoxItem.js +1 -1
  91. package/src/sap/m/Link.js +2 -2
  92. package/src/sap/m/List.js +1 -1
  93. package/src/sap/m/ListBase.js +61 -24
  94. package/src/sap/m/ListItemBase.js +22 -21
  95. package/src/sap/m/MaskEnabler.js +1 -1
  96. package/src/sap/m/MaskInput.js +1 -1
  97. package/src/sap/m/MaskInputRule.js +1 -1
  98. package/src/sap/m/Menu.js +1 -1
  99. package/src/sap/m/MenuButton.js +21 -4
  100. package/src/sap/m/MenuButtonRenderer.js +1 -0
  101. package/src/sap/m/MenuItem.js +1 -1
  102. package/src/sap/m/MenuListItem.js +1 -1
  103. package/src/sap/m/MessageBox.js +31 -1
  104. package/src/sap/m/MessageItem.js +1 -1
  105. package/src/sap/m/MessageListItem.js +1 -1
  106. package/src/sap/m/MessagePage.js +1 -1
  107. package/src/sap/m/MessagePopover.js +1 -4
  108. package/src/sap/m/MessagePopoverItem.js +1 -1
  109. package/src/sap/m/MessageStrip.js +1 -1
  110. package/src/sap/m/MessageStripUtilities.js +15 -2
  111. package/src/sap/m/MessageToast.js +2 -2
  112. package/src/sap/m/MessageView.js +10 -10
  113. package/src/sap/m/MultiComboBox.js +164 -163
  114. package/src/sap/m/MultiEditField.js +1 -1
  115. package/src/sap/m/MultiInput.js +54 -6
  116. package/src/sap/m/NavContainer.js +20 -9
  117. package/src/sap/m/NewsContent.js +1 -1
  118. package/src/sap/m/NotificationList.js +1 -1
  119. package/src/sap/m/NotificationListBase.js +1 -1
  120. package/src/sap/m/NotificationListGroup.js +1 -1
  121. package/src/sap/m/NotificationListItem.js +1 -1
  122. package/src/sap/m/NumericContent.js +1 -1
  123. package/src/sap/m/ObjectAttribute.js +1 -1
  124. package/src/sap/m/ObjectHeader.js +1 -1
  125. package/src/sap/m/ObjectHeaderRenderer.js +9 -7
  126. package/src/sap/m/ObjectIdentifier.js +1 -1
  127. package/src/sap/m/ObjectListItem.js +1 -1
  128. package/src/sap/m/ObjectMarker.js +1 -1
  129. package/src/sap/m/ObjectNumber.js +13 -1
  130. package/src/sap/m/ObjectStatus.js +1 -1
  131. package/src/sap/m/OverflowToolbar.js +8 -2
  132. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  133. package/src/sap/m/OverflowToolbarButton.js +1 -1
  134. package/src/sap/m/OverflowToolbarLayoutData.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 +2 -2
  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 +1 -1
  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 +14 -5
  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 +1 -1
  158. package/src/sap/m/PlanningCalendar.js +260 -54
  159. package/src/sap/m/PlanningCalendarHeader.js +36 -5
  160. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  161. package/src/sap/m/PlanningCalendarLegendRenderer.js +2 -0
  162. package/src/sap/m/PlanningCalendarRow.js +1 -1
  163. package/src/sap/m/PlanningCalendarView.js +26 -2
  164. package/src/sap/m/Popover.js +15 -6
  165. package/src/sap/m/ProgressIndicator.js +1 -1
  166. package/src/sap/m/PullToRefresh.js +1 -1
  167. package/src/sap/m/QuickView.js +1 -1
  168. package/src/sap/m/QuickViewBase.js +1 -1
  169. package/src/sap/m/QuickViewCard.js +1 -1
  170. package/src/sap/m/QuickViewGroup.js +1 -1
  171. package/src/sap/m/QuickViewGroupElement.js +1 -1
  172. package/src/sap/m/QuickViewPage.js +5 -5
  173. package/src/sap/m/RadioButton.js +1 -1
  174. package/src/sap/m/RadioButtonGroup.js +1 -1
  175. package/src/sap/m/RangeSlider.js +1 -1
  176. package/src/sap/m/RatingIndicator.js +78 -36
  177. package/src/sap/m/ResponsivePopover.js +1 -1
  178. package/src/sap/m/ResponsiveScale.js +1 -1
  179. package/src/sap/m/ScrollBar.js +1 -1
  180. package/src/sap/m/ScrollContainer.js +1 -1
  181. package/src/sap/m/SearchField.js +38 -20
  182. package/src/sap/m/SearchFieldRenderer.js +29 -15
  183. package/src/sap/m/SegmentedButton.js +12 -17
  184. package/src/sap/m/SegmentedButtonItem.js +1 -1
  185. package/src/sap/m/Select.js +36 -17
  186. package/src/sap/m/SelectDialog.js +21 -49
  187. package/src/sap/m/SelectDialogBase.js +148 -0
  188. package/src/sap/m/SelectList.js +13 -3
  189. package/src/sap/m/SelectRenderer.js +15 -3
  190. package/src/sap/m/SelectionDetails.js +5 -2
  191. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  192. package/src/sap/m/SelectionDetailsItem.js +1 -1
  193. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  194. package/src/sap/m/Shell.js +9 -17
  195. package/src/sap/m/SimpleFixFlex.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendar.js +4 -1
  197. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  198. package/src/sap/m/SinglePlanningCalendarGrid.js +57 -7
  199. package/src/sap/m/SinglePlanningCalendarGridRenderer.js +27 -19
  200. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +11 -1
  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 +3 -3
  206. package/src/sap/m/Slider.js +1 -1
  207. package/src/sap/m/SliderRenderer.js +2 -2
  208. package/src/sap/m/SliderTooltip.js +1 -1
  209. package/src/sap/m/SliderTooltipBase.js +1 -1
  210. package/src/sap/m/SliderTooltipContainer.js +1 -1
  211. package/src/sap/m/SplitApp.js +1 -1
  212. package/src/sap/m/SplitButton.js +3 -7
  213. package/src/sap/m/SplitContainer.js +4 -5
  214. package/src/sap/m/StandardDynamicDateOption.js +45 -10
  215. package/src/sap/m/StandardListItem.js +63 -13
  216. package/src/sap/m/StandardListItemRenderer.js +21 -9
  217. package/src/sap/m/StandardTile.js +1 -1
  218. package/src/sap/m/StandardTreeItem.js +1 -1
  219. package/src/sap/m/StepInput.js +22 -5
  220. package/src/sap/m/Suggest.js +25 -25
  221. package/src/sap/m/SuggestionItem.js +1 -1
  222. package/src/sap/m/SuggestionsPopover.js +1 -1
  223. package/src/sap/m/Switch.js +1 -1
  224. package/src/sap/m/TabContainer.js +1 -1
  225. package/src/sap/m/TabContainerItem.js +1 -1
  226. package/src/sap/m/TabStrip.js +1 -1
  227. package/src/sap/m/TabStripItem.js +1 -1
  228. package/src/sap/m/Table.js +49 -9
  229. package/src/sap/m/TablePersoController.js +1 -1
  230. package/src/sap/m/TablePersoDialog.js +1 -1
  231. package/src/sap/m/TablePersoProvider.js +1 -1
  232. package/src/sap/m/TableRenderer.js +6 -5
  233. package/src/sap/m/TableSelectDialog.js +21 -46
  234. package/src/sap/m/Text.js +2 -2
  235. package/src/sap/m/TextArea.js +2 -2
  236. package/src/sap/m/Tile.js +1 -1
  237. package/src/sap/m/TileContainer.js +2 -2
  238. package/src/sap/m/TileContent.js +1 -1
  239. package/src/sap/m/TimePicker.js +11 -5
  240. package/src/sap/m/TimePickerClock.js +2 -2
  241. package/src/sap/m/TimePickerClocks.js +4 -1
  242. package/src/sap/m/TimePickerInputs.js +5 -3
  243. package/src/sap/m/TimePickerInternals.js +1 -1
  244. package/src/sap/m/TimePickerSlider.js +2 -2
  245. package/src/sap/m/TimePickerSliders.js +1 -1
  246. package/src/sap/m/TimePickerSlidersRenderer.js +0 -1
  247. package/src/sap/m/Title.js +1 -1
  248. package/src/sap/m/TitlePropagationSupport.js +1 -1
  249. package/src/sap/m/ToggleButton.js +1 -1
  250. package/src/sap/m/Token.js +1 -1
  251. package/src/sap/m/Tokenizer.js +45 -3
  252. package/src/sap/m/TokenizerRenderer.js +6 -0
  253. package/src/sap/m/Toolbar.js +1 -1
  254. package/src/sap/m/ToolbarLayoutData.js +1 -1
  255. package/src/sap/m/ToolbarSeparator.js +1 -1
  256. package/src/sap/m/ToolbarSpacer.js +1 -1
  257. package/src/sap/m/Tree.js +1 -1
  258. package/src/sap/m/TreeItemBase.js +4 -4
  259. package/src/sap/m/UploadCollection.js +2 -2
  260. package/src/sap/m/UploadCollectionItem.js +1 -1
  261. package/src/sap/m/UploadCollectionParameter.js +1 -1
  262. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  263. package/src/sap/m/VBox.js +1 -1
  264. package/src/sap/m/ValueStateHeader.js +1 -1
  265. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  266. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  267. package/src/sap/m/ViewSettingsDialog.js +7 -7
  268. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  269. package/src/sap/m/ViewSettingsItem.js +1 -1
  270. package/src/sap/m/VisibleItem.js +1 -1
  271. package/src/sap/m/WheelSlider.js +2 -2
  272. package/src/sap/m/WheelSliderContainer.js +1 -1
  273. package/src/sap/m/Wizard.js +1 -1
  274. package/src/sap/m/WizardProgressNavigator.js +1 -1
  275. package/src/sap/m/WizardStep.js +1 -1
  276. package/src/sap/m/changeHandler/AddTableColumn.js +76 -44
  277. package/src/sap/m/changeHandler/ChangeLinkTarget.js +18 -23
  278. package/src/sap/m/changeHandler/CombineButtons.js +281 -175
  279. package/src/sap/m/changeHandler/MoveTableColumns.js +143 -111
  280. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +77 -0
  281. package/src/sap/m/changeHandler/SplitMenuButton.js +147 -93
  282. package/src/sap/m/designtime/IconTabBar.designtime.js +82 -2
  283. package/src/sap/m/designtime/IconTabBarSelectTab.fragment.xml +17 -0
  284. package/src/sap/m/designtime/ObjectIdentifier.designtime.js +16 -12
  285. package/src/sap/m/designtime/messagebundle.properties +9 -0
  286. package/src/sap/m/designtime/messagebundle_ar.properties +6 -0
  287. package/src/sap/m/designtime/messagebundle_bg.properties +6 -0
  288. package/src/sap/m/designtime/messagebundle_ca.properties +6 -0
  289. package/src/sap/m/designtime/messagebundle_cs.properties +6 -0
  290. package/src/sap/m/designtime/messagebundle_cy.properties +6 -0
  291. package/src/sap/m/designtime/messagebundle_da.properties +6 -0
  292. package/src/sap/m/designtime/messagebundle_de.properties +6 -0
  293. package/src/sap/m/designtime/messagebundle_el.properties +6 -0
  294. package/src/sap/m/designtime/messagebundle_en.properties +6 -0
  295. package/src/sap/m/designtime/messagebundle_en_GB.properties +6 -0
  296. package/src/sap/m/designtime/messagebundle_en_US_sappsd.properties +6 -0
  297. package/src/sap/m/designtime/messagebundle_en_US_saptrc.properties +6 -0
  298. package/src/sap/m/designtime/messagebundle_es.properties +6 -0
  299. package/src/sap/m/designtime/messagebundle_es_MX.properties +6 -0
  300. package/src/sap/m/designtime/messagebundle_et.properties +6 -0
  301. package/src/sap/m/designtime/messagebundle_fi.properties +6 -0
  302. package/src/sap/m/designtime/messagebundle_fr.properties +6 -0
  303. package/src/sap/m/designtime/messagebundle_fr_CA.properties +6 -0
  304. package/src/sap/m/designtime/messagebundle_hi.properties +6 -0
  305. package/src/sap/m/designtime/messagebundle_hr.properties +6 -0
  306. package/src/sap/m/designtime/messagebundle_hu.properties +6 -0
  307. package/src/sap/m/designtime/messagebundle_id.properties +6 -0
  308. package/src/sap/m/designtime/messagebundle_it.properties +6 -0
  309. package/src/sap/m/designtime/messagebundle_iw.properties +6 -0
  310. package/src/sap/m/designtime/messagebundle_ja.properties +6 -0
  311. package/src/sap/m/designtime/messagebundle_kk.properties +6 -0
  312. package/src/sap/m/designtime/messagebundle_ko.properties +6 -0
  313. package/src/sap/m/designtime/messagebundle_lt.properties +6 -0
  314. package/src/sap/m/designtime/messagebundle_lv.properties +6 -0
  315. package/src/sap/m/designtime/messagebundle_ms.properties +6 -0
  316. package/src/sap/m/designtime/messagebundle_nl.properties +6 -0
  317. package/src/sap/m/designtime/messagebundle_no.properties +6 -0
  318. package/src/sap/m/designtime/messagebundle_pl.properties +6 -0
  319. package/src/sap/m/designtime/messagebundle_pt.properties +6 -0
  320. package/src/sap/m/designtime/messagebundle_pt_PT.properties +6 -0
  321. package/src/sap/m/designtime/messagebundle_ro.properties +6 -0
  322. package/src/sap/m/designtime/messagebundle_ru.properties +6 -0
  323. package/src/sap/m/designtime/messagebundle_sh.properties +6 -0
  324. package/src/sap/m/designtime/messagebundle_sk.properties +6 -0
  325. package/src/sap/m/designtime/messagebundle_sl.properties +6 -0
  326. package/src/sap/m/designtime/messagebundle_sv.properties +6 -0
  327. package/src/sap/m/designtime/messagebundle_th.properties +6 -0
  328. package/src/sap/m/designtime/messagebundle_tr.properties +6 -0
  329. package/src/sap/m/designtime/messagebundle_uk.properties +6 -0
  330. package/src/sap/m/designtime/messagebundle_vi.properties +6 -0
  331. package/src/sap/m/designtime/messagebundle_zh_CN.properties +6 -0
  332. package/src/sap/m/designtime/messagebundle_zh_TW.properties +6 -0
  333. package/src/sap/m/flexibility/IconTabBar.flexibility.js +21 -0
  334. package/src/sap/m/inputUtils/calculateSelectionStart.js +1 -1
  335. package/src/sap/m/inputUtils/wordStartsWithValue.js +5 -1
  336. package/src/sap/m/library.js +28 -5
  337. package/src/sap/m/messagebundle.properties +22 -5
  338. package/src/sap/m/messagebundle_ar.properties +13 -0
  339. package/src/sap/m/messagebundle_bg.properties +13 -0
  340. package/src/sap/m/messagebundle_ca.properties +13 -0
  341. package/src/sap/m/messagebundle_cs.properties +24 -11
  342. package/src/sap/m/messagebundle_cy.properties +13 -0
  343. package/src/sap/m/messagebundle_da.properties +14 -1
  344. package/src/sap/m/messagebundle_de.properties +18 -5
  345. package/src/sap/m/messagebundle_el.properties +14 -1
  346. package/src/sap/m/messagebundle_en.properties +15 -2
  347. package/src/sap/m/messagebundle_en_GB.properties +13 -0
  348. package/src/sap/m/messagebundle_en_US_sappsd.properties +15 -2
  349. package/src/sap/m/messagebundle_en_US_saptrc.properties +18 -5
  350. package/src/sap/m/messagebundle_es.properties +13 -0
  351. package/src/sap/m/messagebundle_es_MX.properties +16 -3
  352. package/src/sap/m/messagebundle_et.properties +13 -0
  353. package/src/sap/m/messagebundle_fi.properties +13 -0
  354. package/src/sap/m/messagebundle_fr.properties +19 -6
  355. package/src/sap/m/messagebundle_fr_CA.properties +13 -0
  356. package/src/sap/m/messagebundle_hi.properties +13 -0
  357. package/src/sap/m/messagebundle_hr.properties +13 -0
  358. package/src/sap/m/messagebundle_hu.properties +13 -0
  359. package/src/sap/m/messagebundle_id.properties +15 -2
  360. package/src/sap/m/messagebundle_it.properties +19 -6
  361. package/src/sap/m/messagebundle_iw.properties +13 -0
  362. package/src/sap/m/messagebundle_ja.properties +13 -0
  363. package/src/sap/m/messagebundle_kk.properties +13 -0
  364. package/src/sap/m/messagebundle_ko.properties +14 -1
  365. package/src/sap/m/messagebundle_lt.properties +13 -0
  366. package/src/sap/m/messagebundle_lv.properties +13 -0
  367. package/src/sap/m/messagebundle_ms.properties +14 -1
  368. package/src/sap/m/messagebundle_nl.properties +15 -2
  369. package/src/sap/m/messagebundle_no.properties +25 -12
  370. package/src/sap/m/messagebundle_pl.properties +17 -4
  371. package/src/sap/m/messagebundle_pt.properties +16 -3
  372. package/src/sap/m/messagebundle_pt_PT.properties +13 -0
  373. package/src/sap/m/messagebundle_ro.properties +18 -5
  374. package/src/sap/m/messagebundle_ru.properties +14 -1
  375. package/src/sap/m/messagebundle_sh.properties +14 -1
  376. package/src/sap/m/messagebundle_sk.properties +13 -0
  377. package/src/sap/m/messagebundle_sl.properties +13 -0
  378. package/src/sap/m/messagebundle_sv.properties +13 -0
  379. package/src/sap/m/messagebundle_th.properties +13 -0
  380. package/src/sap/m/messagebundle_tr.properties +13 -0
  381. package/src/sap/m/messagebundle_uk.properties +16 -3
  382. package/src/sap/m/messagebundle_vi.properties +14 -1
  383. package/src/sap/m/messagebundle_zh_CN.properties +13 -0
  384. package/src/sap/m/messagebundle_zh_TW.properties +13 -0
  385. package/src/sap/m/plugins/ColumnResizer.js +23 -2
  386. package/src/sap/m/plugins/DataStateIndicator.js +5 -3
  387. package/src/sap/m/plugins/PasteProvider.js +9 -1
  388. package/src/sap/m/plugins/PluginBase.js +1 -1
  389. package/src/sap/m/routing/TargetHandler.js +15 -18
  390. package/src/sap/m/routing/async/Target.js +3 -2
  391. package/src/sap/m/semantic/AddAction.js +1 -1
  392. package/src/sap/m/semantic/CancelAction.js +1 -1
  393. package/src/sap/m/semantic/DeleteAction.js +1 -1
  394. package/src/sap/m/semantic/DetailPage.js +1 -1
  395. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  396. package/src/sap/m/semantic/EditAction.js +1 -1
  397. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  398. package/src/sap/m/semantic/FilterAction.js +1 -1
  399. package/src/sap/m/semantic/FilterSelect.js +1 -1
  400. package/src/sap/m/semantic/FlagAction.js +1 -1
  401. package/src/sap/m/semantic/ForwardAction.js +1 -1
  402. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  403. package/src/sap/m/semantic/GroupAction.js +1 -1
  404. package/src/sap/m/semantic/GroupSelect.js +1 -1
  405. package/src/sap/m/semantic/MainAction.js +1 -1
  406. package/src/sap/m/semantic/MasterPage.js +1 -1
  407. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  408. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  409. package/src/sap/m/semantic/NegativeAction.js +1 -1
  410. package/src/sap/m/semantic/OpenInAction.js +1 -1
  411. package/src/sap/m/semantic/PositiveAction.js +1 -1
  412. package/src/sap/m/semantic/PrintAction.js +1 -1
  413. package/src/sap/m/semantic/SaveAction.js +1 -1
  414. package/src/sap/m/semantic/Segment.js +1 -1
  415. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  416. package/src/sap/m/semantic/SemanticButton.js +1 -1
  417. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  418. package/src/sap/m/semantic/SemanticControl.js +1 -1
  419. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  420. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +2 -2
  421. package/src/sap/m/semantic/SemanticPage.js +1 -1
  422. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  423. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  424. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  425. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  426. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  427. package/src/sap/m/semantic/ShareMenu.js +1 -1
  428. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  429. package/src/sap/m/semantic/SortAction.js +1 -1
  430. package/src/sap/m/semantic/SortSelect.js +1 -1
  431. package/src/sap/m/themes/base/CheckBox.less +1 -1
  432. package/src/sap/m/themes/base/ColumnListItem.less +2 -2
  433. package/src/sap/m/themes/base/Dialog.less +11 -28
  434. package/src/sap/m/themes/base/FeedInput.less +5 -6
  435. package/src/sap/m/themes/base/GenericTile.less +129 -6
  436. package/src/sap/m/themes/base/IconTabBar.less +169 -61
  437. package/src/sap/m/themes/base/IconTabBarSelectList.less +8 -0
  438. package/src/sap/m/themes/base/Input.less +12 -0
  439. package/src/sap/m/themes/base/ListBase.less +7 -5
  440. package/src/sap/m/themes/base/MessagePage.less +1 -7
  441. package/src/sap/m/themes/base/MessageView.less +4 -0
  442. package/src/sap/m/themes/base/ObjectHeader.less +2 -1
  443. package/src/sap/m/themes/base/ObjectMarker.less +3 -0
  444. package/src/sap/m/themes/base/ObjectNumber.less +1 -1
  445. package/src/sap/m/themes/base/ObjectStatus.less +19 -2
  446. package/src/sap/m/themes/base/OverflowToolbarAssociativePopover.less +0 -6
  447. package/src/sap/m/themes/base/PlanningCalendar.less +23 -7
  448. package/src/sap/m/themes/base/Popover.less +1 -1
  449. package/src/sap/m/themes/base/ProgressIndicator.less +7 -6
  450. package/src/sap/m/themes/base/RadioButton.less +3 -0
  451. package/src/sap/m/themes/base/SearchField.less +1 -1
  452. package/src/sap/m/themes/base/StandardListItem.less +9 -0
  453. package/src/sap/m/themes/base/Table.less +14 -23
  454. package/src/sap/m/themes/base/TextArea.less +1 -1
  455. package/src/sap/m/themes/base/TimePicker.less +5 -1
  456. package/src/sap/m/themes/base/TimePickerSliders.less +1 -5
  457. package/src/sap/m/themes/base/Tokenizer.less +6 -0
  458. package/src/sap/m/themes/base/Toolbar.less +6 -0
  459. package/src/sap/m/themes/base/UploadSet.less +5 -0
  460. package/src/sap/m/themes/base/ViewSettingsDialog.less +29 -2
  461. package/src/sap/m/themes/sap_hcb/IconTabBar.less +3 -3
  462. package/src/sap/m/upload/UploadSet.js +35 -6
  463. package/src/sap/m/upload/UploadSetItem.js +18 -3
@@ -16,7 +16,7 @@ sap.ui.define(['./ColumnPopoverItem', 'sap/m/Button'], function(ColumnPopoverIte
16
16
  * @extends sap.m.ColumnPopoverItem
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.92.0
19
+ * @version 1.95.0
20
20
  *
21
21
  * @constructor
22
22
  * @since 1.63
@@ -17,7 +17,7 @@ sap.ui.define(['./ColumnPopoverItem', 'sap/m/ToggleButton'], function(ColumnPopo
17
17
  * @extends sap.m.ColumnPopoverItem
18
18
  *
19
19
  * @author SAP SE
20
- * @version 1.92.0
20
+ * @version 1.95.0
21
21
  *
22
22
  * @constructor
23
23
  * @since 1.63
@@ -16,7 +16,7 @@ sap.ui.define(['sap/ui/core/Element'], function(Element) {
16
16
  * @extends sap.ui.core.Element
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.92.0
19
+ * @version 1.95.0
20
20
  *
21
21
  * @constructor
22
22
  * @since 1.63
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.m.ColumnPopoverItem
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.92.0
32
+ * @version 1.95.0
33
33
  *
34
34
  * @constructor
35
35
  * @since 1.86
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.m.ColumnPopoverItem
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.92.0
32
+ * @version 1.95.0
33
33
  *
34
34
  * @constructor
35
35
  * @since 1.66
@@ -108,7 +108,7 @@ sap.ui.define([
108
108
  * </ul>
109
109
  *
110
110
  * @author SAP SE
111
- * @version 1.92.0
111
+ * @version 1.95.0
112
112
  *
113
113
  * @constructor
114
114
  * @extends sap.m.ComboBoxBase
@@ -6,6 +6,7 @@
6
6
 
7
7
  sap.ui.define([
8
8
  './ComboBoxTextField',
9
+ './ComboBoxBaseRenderer',
9
10
  './SuggestionsPopover',
10
11
  'sap/ui/base/ManagedObjectObserver',
11
12
  'sap/ui/core/SeparatorItem',
@@ -25,6 +26,7 @@ sap.ui.define([
25
26
  ],
26
27
  function(
27
28
  ComboBoxTextField,
29
+ ComboBoxBaseRenderer,
28
30
  SuggestionsPopover,
29
31
  ManagedObjectObserver,
30
32
  SeparatorItem,
@@ -62,7 +64,7 @@ sap.ui.define([
62
64
  * @abstract
63
65
  *
64
66
  * @author SAP SE
65
- * @version 1.92.0
67
+ * @version 1.95.0
66
68
  *
67
69
  * @constructor
68
70
  * @public
@@ -140,7 +142,8 @@ sap.ui.define([
140
142
  loadItems: {}
141
143
  },
142
144
  dnd: { draggable: false, droppable: true }
143
- }
145
+ },
146
+ renderer: ComboBoxBaseRenderer
144
147
  });
145
148
 
146
149
  /**
@@ -69,23 +69,39 @@ sap.ui.define(['./ComboBoxBaseRenderer', 'sap/ui/core/Renderer', 'sap/m/inputUti
69
69
  * @param {sap.ui.core.Control} oControl An object representation of the control that should be rendered.
70
70
  */
71
71
  ComboBoxRenderer.writeInnerAttributes = function(oRm, oControl) {
72
- var oSelectedItem = oControl.getSelectedItem(),
73
- oSelectedListItem = oSelectedItem && ListHelpers.getListItem(oSelectedItem),
74
- bOpen = oControl.isOpen();
72
+ var bOpen = oControl.isOpen(), bIsGroupHeader, oSelectedItem, oListItem;
73
+ var oSuggestionPopover = oControl._getSuggestionsPopover();
75
74
 
76
75
  ComboBoxBaseRenderer.writeInnerAttributes.apply(this, arguments);
77
76
  oRm.attr("aria-expanded", bOpen);
78
77
 
79
- if (!oControl.isOpen()) {
78
+ if (!oSuggestionPopover) {
80
79
  return;
81
80
  }
82
81
 
83
- // Aria-activedescendant attributed must be added only if there is selected item
84
- // and the visual focus is on it or the visual focus is on the formatted text value state header
85
- if (oControl._getSuggestionsPopover().getValueStateActiveState()) {
82
+ var oFocusedItem = oSuggestionPopover.getFocusedListItem();
83
+ var bValueStateFocused = oSuggestionPopover.getValueStateActiveState();
84
+
85
+ // If the picker is not opened, no active descendant should be set
86
+ // If there is no focused element in the picker, no active descendant should be set
87
+ if (!bOpen || (!oFocusedItem && !bValueStateFocused)) {
88
+ return;
89
+ }
90
+
91
+ // If the value state is focused, set the active descendant in order to read out the value state header
92
+ if (bValueStateFocused) {
86
93
  oRm.attr("aria-activedescendant", oControl._getFormattedValueStateText().getId());
87
- } else if (oSelectedListItem && oSelectedListItem.hasStyleClass("sapMLIBFocused") && oControl.getFocusDomRef() === document.activeElement) {
88
- oRm.attr("aria-activedescendant", oSelectedListItem.getId());
94
+ return;
95
+ }
96
+
97
+ // Active descendant should be set only when there is a selected item or a group header is set
98
+ bIsGroupHeader = (oFocusedItem.isA("sap.m.GroupHeaderListItem") || oFocusedItem.isA("sap.ui.core.SeparatorItem"));
99
+ oSelectedItem = oControl.getSelectedItem();
100
+ oListItem = oSelectedItem && ListHelpers.getListItem(oSelectedItem);
101
+ oFocusedItem = bIsGroupHeader ? oFocusedItem : oListItem;
102
+
103
+ if (oFocusedItem) {
104
+ oRm.attr("aria-activedescendant", oFocusedItem.getId());
89
105
  }
90
106
  };
91
107
 
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.m.InputBase
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.92.0
38
+ * @version 1.95.0
39
39
  *
40
40
  * @constructor
41
41
  * @public
@@ -20,7 +20,7 @@ sap.ui.define(['sap/m/DynamicDateOption'],
20
20
  * @extends sap.m.DynamicDateOption
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.92.0
23
+ * @version 1.95.0
24
24
  *
25
25
  * @public
26
26
  * @since 1.92
@@ -46,6 +46,10 @@ sap.ui.define(['sap/m/DynamicDateOption'],
46
46
  * getValueHelpUITypes is not enough to define the UI.
47
47
  */
48
48
  createValueHelpUI: { type: "function" },
49
+ /**
50
+ * Defines a method that can validate all controls from the value help UI related to a given option.
51
+ */
52
+ validateValueHelpUI: { type: "function" },
49
53
  /**
50
54
  * Defines a method that can collect the value from the value help UI.
51
55
  */
@@ -84,7 +88,7 @@ sap.ui.define(['sap/m/DynamicDateOption'],
84
88
  return sString.charAt(0).toUpperCase() + sString.slice(1);
85
89
  }
86
90
 
87
- ["getText", "getValueHelpUITypes", "createValueHelpUI", "getValueHelpOutput",
91
+ ["getText", "getValueHelpUITypes", "createValueHelpUI", "getValueHelpOutput", "validateValueHelpUI",
88
92
  "getGroup", "getGroupHeader", "format", "parse", "toDates", "enhanceFormattedValue"]
89
93
  .forEach(function(sFnName) {
90
94
  CustomDynamicDateOption.prototype[sFnName] = function() {
@@ -24,7 +24,7 @@ sap.ui.define(['./ListItemBase', './library', './CustomListItemRenderer'],
24
24
  * @extends sap.m.ListItemBase
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.92.0
27
+ * @version 1.95.0
28
28
  *
29
29
  * @constructor
30
30
  * @public
@@ -21,7 +21,7 @@ sap.ui.define(['./Tile', './library', './CustomTileRenderer'],
21
21
  * Use the CustomTile control to display application specific content in the Tile control.
22
22
  * The tile width is 8.5em and height is 10em.
23
23
  * @extends sap.m.Tile
24
- * @version 1.92.0
24
+ * @version 1.95.0
25
25
  *
26
26
  * @constructor
27
27
  * @public
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * <code>Table, Form</code> etc, should not be aggregated as content.
24
24
  * @extends sap.m.TreeItemBase
25
25
  * @author SAP SE
26
- * @version 1.92.0
26
+ * @version 1.95.0
27
27
  * @constructor
28
28
  * @public
29
29
  * @since 1.48.0
@@ -18,6 +18,7 @@ sap.ui.define([
18
18
  './DateTimeField',
19
19
  './Button',
20
20
  './ResponsivePopover',
21
+ "./ValueStateHeader",
21
22
  'sap/ui/core/date/UniversalDate',
22
23
  './library',
23
24
  'sap/ui/core/Control',
@@ -46,6 +47,7 @@ sap.ui.define([
46
47
  DateTimeField,
47
48
  Button,
48
49
  ResponsivePopover,
50
+ ValueStateHeader,
49
51
  UniversalDate,
50
52
  library,
51
53
  Control,
@@ -149,7 +151,7 @@ sap.ui.define([
149
151
  * the close event), or select Cancel.
150
152
  *
151
153
  * @extends sap.m.DateTimeField
152
- * @version 1.92.0
154
+ * @version 1.95.0
153
155
  *
154
156
  * @constructor
155
157
  * @public
@@ -202,7 +204,17 @@ sap.ui.define([
202
204
  *
203
205
  * @since 1.70
204
206
  */
205
- showFooter : {type : "boolean", group : "Misc", defaultValue : false}
207
+ showFooter : {type : "boolean", group : "Misc", defaultValue : false},
208
+
209
+ /**
210
+ * Determines whether there is a shortcut navigation to Today. When used in Month, Year or
211
+ * Year-range picker view, the calendar navigates to Day picker view.
212
+ *
213
+ * Note: The Current date button appears if the <code>displayFormat</code> property allows entering day.
214
+ *
215
+ * @since 1.95
216
+ */
217
+ showCurrentDateButton : {type : "boolean", group : "Behavior", defaultValue : false}
206
218
 
207
219
  },
208
220
 
@@ -485,7 +497,7 @@ sap.ui.define([
485
497
  DatePicker.prototype.onfocusin = function(oEvent) {
486
498
 
487
499
  if (!jQuery(oEvent.target).hasClass("sapUiIcon")) {
488
- InputBase.prototype.onfocusin.apply(this, arguments);
500
+ DateTimeField.prototype.onfocusin.apply(this, arguments);
489
501
  }
490
502
 
491
503
  this._bFocusNoPopup = undefined;
@@ -652,6 +664,7 @@ sap.ui.define([
652
664
  var oDateValue = this.getDateValue();
653
665
  if (oDateValue && oDateValue.getTime() < oDate.getTime()) {
654
666
  this._bValid = false;
667
+ this._bOutOfAllowedRange = true;
655
668
  Log.warning("DateValue not in valid date range", this);
656
669
  }
657
670
  } else {
@@ -692,6 +705,7 @@ sap.ui.define([
692
705
  var oDateValue = this.getDateValue();
693
706
  if (oDateValue && oDateValue.getTime() > oDate.getTime()) {
694
707
  this._bValid = false;
708
+ this._bOutOfAllowedRange = true;
695
709
  Log.warning("DateValue not in valid date", this);
696
710
  }
697
711
  } else {
@@ -711,6 +725,12 @@ sap.ui.define([
711
725
 
712
726
  };
713
727
 
728
+ DatePicker.prototype.setCurrentDateButton = function(bShow) {
729
+ var oCalendar = this._getCalendar();
730
+ oCalendar && oCalendar.setCurrentDateButton(bShow);
731
+ return this.setProperty("showCurrentDateButton", bShow);
732
+ };
733
+
714
734
  DatePicker.prototype._checkMinMaxDate = function () {
715
735
 
716
736
  if (this._oMinDate.getTime() > this._oMaxDate.getTime()) {
@@ -1099,6 +1119,7 @@ sap.ui.define([
1099
1119
  showArrow: false,
1100
1120
  showHeader: false,
1101
1121
  placement: library.PlacementType.VerticalPreferedBottom,
1122
+ contentWidth: this.$().closest(".sapUiSizeCompact").length > 0 ? "18rem" : "21rem",
1102
1123
  beginButton: new Button({
1103
1124
  type: library.ButtonType.Emphasized,
1104
1125
  text: oResourceBundle.getText("DATEPICKER_SELECTION_CONFIRM"),
@@ -1190,6 +1211,7 @@ sap.ui.define([
1190
1211
  }.bind(this)
1191
1212
  });
1192
1213
 
1214
+ this._oCalendar.setShowCurrentDateButton(this.getShowCurrentDateButton());
1193
1215
  this._oDateRange = new DateRange();
1194
1216
  this._getCalendar().addSelectedDate(this._oDateRange);
1195
1217
  this._getCalendar()._setSpecialDatesControlOrigin(this);
@@ -1208,6 +1230,11 @@ sap.ui.define([
1208
1230
 
1209
1231
  this._oPopup._getButtonFooter().setVisible(this.getShowFooter());
1210
1232
  this._getCalendar()._bSkipCancelButtonRendering = true;
1233
+ if (!this._oPopup.getContent().length) {
1234
+ var oHeader = this._getValueStateHeader();
1235
+ this._oPopup.addContent(this._getValueStateHeader());
1236
+ oHeader.setPopup(this._oPopup._oControl);
1237
+ }
1211
1238
  this._oPopup.addContent(this._getCalendar());
1212
1239
 
1213
1240
  if (!this.getDateValue()) {
@@ -21,7 +21,7 @@ sap.ui.define(['sap/ui/core/Renderer', './InputBaseRenderer', 'sap/ui/core/libra
21
21
  * @param {sap.m.DatePicker} oDP An object representation of the control that should be rendered.
22
22
  */
23
23
  DatePickerRenderer.writeInnerValue = function(oRm, oDP) {
24
- if (oDP._bValid) {
24
+ if (oDP._bValid || oDP._bOutOfAllowedRange) {
25
25
  oRm.attr("value", oDP._formatValue(oDP.getDateValue()));
26
26
  } else {
27
27
  oRm.attr("value", oDP.getValue());
@@ -129,8 +129,8 @@ sap.ui.define([
129
129
  * compact mode and provides a touch-friendly size in cozy mode.
130
130
  *
131
131
  * @extends sap.m.DatePicker
132
- * @version 1.92.0
133
- * @version 1.92.0
132
+ * @version 1.95.0
133
+ * @version 1.95.0
134
134
  *
135
135
  * @constructor
136
136
  * @public
@@ -10,6 +10,8 @@ sap.ui.define([
10
10
  'sap/ui/model/odata/type/ODataType',
11
11
  'sap/ui/model/odata/type/DateTimeBase',
12
12
  './InputBase',
13
+ './ValueStateHeader',
14
+ 'sap/ui/core/Core',
13
15
  'sap/ui/core/LocaleData',
14
16
  'sap/ui/core/library',
15
17
  'sap/ui/core/format/DateFormat',
@@ -24,6 +26,8 @@ sap.ui.define([
24
26
  ODataType,
25
27
  DateTimeBase,
26
28
  InputBase,
29
+ ValueStateHeader,
30
+ Core,
27
31
  LocaleData,
28
32
  coreLibrary,
29
33
  DateFormat,
@@ -37,6 +41,9 @@ sap.ui.define([
37
41
  // shortcut for sap.ui.core.CalendarType
38
42
  var CalendarType = coreLibrary.CalendarType;
39
43
 
44
+ // shortcut for sap.ui.core.ValueState
45
+ var ValueState = coreLibrary.ValueState;
46
+
40
47
  /**
41
48
  * Constructor for a new <code>sap.m.DateTimeField</code>.
42
49
  *
@@ -52,7 +59,7 @@ sap.ui.define([
52
59
  * @extends sap.m.InputBase
53
60
  *
54
61
  * @author SAP SE
55
- * @version 1.92.0
62
+ * @version 1.95.0
56
63
  *
57
64
  * @constructor
58
65
  * @public
@@ -213,6 +220,37 @@ sap.ui.define([
213
220
  return null;
214
221
  };
215
222
 
223
+ DateTimeField.prototype.onfocusin = function(oEvent) {
224
+
225
+ if (!jQuery(oEvent.target).hasClass("sapUiIcon")) {
226
+ this.addStyleClass("sapMFocus");
227
+ }
228
+
229
+ if (!jQuery(oEvent.target).hasClass("sapMInputBaseIconContainer") && !(this._oPopup && this._oPopup.isOpen())) {
230
+ // open value state message popup when focus is in the input
231
+ this.openValueStateMessage();
232
+ } else if (this._oValueStateHeader) {
233
+ this._oValueStateHeader.setVisible(this.getValueState() !== ValueState.None);
234
+ }
235
+
236
+ };
237
+
238
+ DateTimeField.prototype._getValueStateHeader = function () {
239
+ var sValueState;
240
+
241
+ if (!this._oValueStateHeader) {
242
+ sValueState = this.getValueState();
243
+
244
+ this._oValueStateHeader = new ValueStateHeader({
245
+ text: this._getTextForPickerValueStateContent(),
246
+ valueState: sValueState,
247
+ visible: sValueState !== ValueState.None
248
+ });
249
+ }
250
+
251
+ return this._oValueStateHeader;
252
+ };
253
+
216
254
  DateTimeField.prototype._dateValidation = function (oDate) {
217
255
  this._bValid = true;
218
256
  this.setProperty("dateValue", oDate);
@@ -463,6 +501,36 @@ sap.ui.define([
463
501
  return !oDate || Object.prototype.toString.call(oDate) === "[object Date]";
464
502
  };
465
503
 
504
+ /**
505
+ * Gets the text for the picker's subheader title.
506
+ * In case <code>valueStateText</code> is not set, a default value is returned.
507
+ * @returns {string}
508
+ * @private
509
+ */
510
+ DateTimeField.prototype._getTextForPickerValueStateContent = function() {
511
+ return this.getValueStateText() || this._getDefaultTextForPickerValueStateContent();
512
+ };
513
+
514
+ /**
515
+ * Gets the default text for the picker's subheader title.
516
+ * @returns {string}
517
+ * @private
518
+ */
519
+ DateTimeField.prototype._getDefaultTextForPickerValueStateContent = function() {
520
+ var sValueState = this.getValueState(),
521
+ oResourceBundle,
522
+ sText;
523
+
524
+ if (sValueState === ValueState.None) {
525
+ sText = "";
526
+ } else {
527
+ oResourceBundle = Core.getLibraryResourceBundle("sap.ui.core");
528
+ sText = oResourceBundle.getText("VALUE_STATE_" + sValueState.toUpperCase());
529
+ }
530
+
531
+ return sText;
532
+ };
533
+
466
534
  return DateTimeField;
467
535
 
468
536
  });
@@ -62,7 +62,7 @@ function(
62
62
  * @extends sap.ui.core.Control
63
63
  *
64
64
  * @author SAP SE
65
- * @version 1.92.0
65
+ * @version 1.95.0
66
66
  *
67
67
  * @constructor
68
68
  * @public
@@ -139,7 +139,7 @@ sap.ui.define([
139
139
  * mobile devices, it opens in full screen.
140
140
  *
141
141
  * @extends sap.m.DatePicker
142
- * @version 1.92.0
142
+ * @version 1.95.0
143
143
  *
144
144
  * @constructor
145
145
  * @public
@@ -262,7 +262,9 @@ sap.ui.define([
262
262
  },
263
263
 
264
264
  onAfterRendering: function() {
265
- this.getAggregation('timeSliders').getAggregation("_columns")[0].setIsExpanded(false);
265
+ if (this.getAggregation('timeSliders') && this.getAggregation('timeSliders').getAggregation("_columns")) {
266
+ this.getAggregation('timeSliders').getAggregation("_columns")[0].setIsExpanded(false);
267
+ }
266
268
  if (Device.system.phone || jQuery('html').hasClass("sapUiMedia-Std-Phone")) {
267
269
  var oSwitcher = this.getAggregation("_switcher");
268
270
  var sKey = oSwitcher.getSelectedKey();
@@ -525,15 +527,20 @@ sap.ui.define([
525
527
  type: ButtonType.Emphasized,
526
528
  press: _handleOkPress.bind(this)
527
529
  });
530
+ var oHeader = this._getValueStateHeader();
528
531
  this._oPopup = new ResponsivePopover(this.getId() + "-RP", {
529
532
  showCloseButton: false,
530
533
  showHeader: false,
531
534
  placement: PlacementType.VerticalPreferedBottom,
532
535
  beginButton: this._oOKButton,
533
- content: this._oPopupContent,
536
+ content: [
537
+ oHeader,
538
+ this._oPopupContent
539
+ ],
534
540
  afterOpen: _handleAfterOpen.bind(this),
535
541
  afterClose: _handleAfterClose.bind(this)
536
542
  });
543
+ oHeader.setPopup(this._oPopup._oControl);
537
544
 
538
545
 
539
546
  if (Device.system.phone) {
@@ -579,7 +586,7 @@ sap.ui.define([
579
586
 
580
587
  this._oPopup.openBy(this);
581
588
 
582
- var oSliders = this._oPopup.getContent()[0] && this._oPopup.getContent()[0].getTimeSliders();
589
+ var oSliders = this._oPopup.getContent()[1] && this._oPopup.getContent()[1].getTimeSliders();
583
590
  if (oSliders) {//Sliders values need to be updated after a popup is (especially sliders) is really visible
584
591
  setTimeout(oSliders._updateSlidersValues.bind(oSliders), 0);
585
592
  }
@@ -712,14 +719,14 @@ sap.ui.define([
712
719
  * @private
713
720
  */
714
721
  DateTimePicker.prototype._handleWindowResize = function(mParams) {
715
- var oSwitcher = this.getAggregation("_popup").getContent()[0].getAggregation("_switcher"),
716
- oCalendar = this.getAggregation("_popup").getContent()[0].getCalendar(),
717
- oSliders = this.getAggregation("_popup").getContent()[0].getTimeSliders();
722
+ var oSwitcher = this.getAggregation("_popup").getContent()[1].getAggregation("_switcher"),
723
+ oCalendar = this.getAggregation("_popup").getContent()[1].getCalendar(),
724
+ oSliders = this.getAggregation("_popup").getContent()[1].getTimeSliders();
718
725
 
719
726
  if (mParams.name === STANDART_PHONE_RANGESET) {
720
727
  oSwitcher.setVisible(true);
721
728
  // Getting "sap.m.internal.DateTimePickerPopup" instance in order to call "_switchVisibility(sKey)" method
722
- this.getAggregation("_popup").getContent()[0]._switchVisibility(oSwitcher.getSelectedKey());
729
+ this.getAggregation("_popup").getContent()[1]._switchVisibility(oSwitcher.getSelectedKey());
723
730
  } else {
724
731
  oSwitcher.setVisible(false);
725
732
  oSliders.$().css("display", "");