@openui5/sap.m 1.101.0 → 1.103.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 (473) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +4 -4
  3. package/src/sap/m/.library +2 -1
  4. package/src/sap/m/AccButton.js +1 -1
  5. package/src/sap/m/ActionListItem.js +1 -1
  6. package/src/sap/m/ActionSelect.js +4 -4
  7. package/src/sap/m/ActionSheet.js +1 -1
  8. package/src/sap/m/App.js +1 -1
  9. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  10. package/src/sap/m/Avatar.js +1 -1
  11. package/src/sap/m/Bar.js +12 -22
  12. package/src/sap/m/BarInPageEnabler.js +1 -1
  13. package/src/sap/m/Breadcrumbs.js +29 -4
  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 +4 -4
  17. package/src/sap/m/Carousel.js +1 -1
  18. package/src/sap/m/CarouselLayout.js +1 -1
  19. package/src/sap/m/CheckBox.js +1 -1
  20. package/src/sap/m/ColorPalette.js +13 -1
  21. package/src/sap/m/ColorPalettePopover.js +1 -1
  22. package/src/sap/m/Column.js +10 -1
  23. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  24. package/src/sap/m/ColumnListItem.js +1 -1
  25. package/src/sap/m/ColumnListItemRenderer.js +6 -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 +22 -2
  32. package/src/sap/m/ComboBoxBase.js +7 -7
  33. package/src/sap/m/ComboBoxTextField.js +1 -1
  34. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  35. package/src/sap/m/CustomListItem.js +1 -1
  36. package/src/sap/m/CustomTile.js +1 -1
  37. package/src/sap/m/CustomTreeItem.js +1 -1
  38. package/src/sap/m/DatePicker.js +25 -7
  39. package/src/sap/m/DateRangeSelection.js +5 -5
  40. package/src/sap/m/DateTimeField.js +22 -10
  41. package/src/sap/m/DateTimeInput.js +1 -1
  42. package/src/sap/m/DateTimePicker.js +22 -10
  43. package/src/sap/m/DateTimePickerRenderer.js +1 -1
  44. package/src/sap/m/Dialog.js +4 -11
  45. package/src/sap/m/DialogRenderer.js +1 -1
  46. package/src/sap/m/DisplayListItem.js +1 -1
  47. package/src/sap/m/DraftIndicator.js +1 -1
  48. package/src/sap/m/DynamicDate.js +1 -1
  49. package/src/sap/m/DynamicDateFormat.js +72 -18
  50. package/src/sap/m/DynamicDateOption.js +1 -1
  51. package/src/sap/m/DynamicDateRange.js +105 -26
  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 +36 -28
  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 +1 -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 +2 -2
  64. package/src/sap/m/FormattedText.js +10 -10
  65. package/src/sap/m/GenericTag.js +5 -5
  66. package/src/sap/m/GenericTile.js +98 -16
  67. package/src/sap/m/GenericTileLineModeRenderer.js +3 -1
  68. package/src/sap/m/GenericTileRenderer.js +98 -62
  69. package/src/sap/m/GroupHeaderListItem.js +1 -1
  70. package/src/sap/m/GrowingEnablement.js +171 -95
  71. package/src/sap/m/GrowingList.js +1 -1
  72. package/src/sap/m/HBox.js +1 -1
  73. package/src/sap/m/HeaderContainer.js +50 -65
  74. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  75. package/src/sap/m/IconTabBar.js +3 -2
  76. package/src/sap/m/IconTabBarSelectList.js +1 -1
  77. package/src/sap/m/IconTabFilter.js +4 -4
  78. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  79. package/src/sap/m/IconTabHeader.js +8 -2
  80. package/src/sap/m/IconTabSeparator.js +1 -1
  81. package/src/sap/m/IllustratedMessage.js +1 -1
  82. package/src/sap/m/Illustration.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 +2 -14
  86. package/src/sap/m/InputBase.js +16 -9
  87. package/src/sap/m/InputListItem.js +1 -1
  88. package/src/sap/m/InstanceManager.js +14 -19
  89. package/src/sap/m/Label.js +1 -1
  90. package/src/sap/m/LightBox.js +1 -1
  91. package/src/sap/m/LightBoxItem.js +1 -1
  92. package/src/sap/m/Link.js +1 -1
  93. package/src/sap/m/List.js +1 -1
  94. package/src/sap/m/ListBase.js +17 -16
  95. package/src/sap/m/ListItemBase.js +5 -4
  96. package/src/sap/m/MaskEnabler.js +1 -1
  97. package/src/sap/m/MaskInput.js +1 -1
  98. package/src/sap/m/MaskInputRenderer.js +10 -0
  99. package/src/sap/m/MaskInputRule.js +1 -1
  100. package/src/sap/m/Menu.js +1 -1
  101. package/src/sap/m/MenuButton.js +2 -1
  102. package/src/sap/m/MenuItem.js +1 -1
  103. package/src/sap/m/MenuListItem.js +3 -3
  104. package/src/sap/m/MessageBox.js +1020 -908
  105. package/src/sap/m/MessageItem.js +1 -1
  106. package/src/sap/m/MessageListItem.js +1 -1
  107. package/src/sap/m/MessagePage.js +1 -1
  108. package/src/sap/m/MessagePopover.js +1 -1
  109. package/src/sap/m/MessagePopoverItem.js +1 -1
  110. package/src/sap/m/MessageStrip.js +1 -1
  111. package/src/sap/m/MessageToast.js +1 -1
  112. package/src/sap/m/MessageView.js +1 -1
  113. package/src/sap/m/MultiComboBox.js +4 -4
  114. package/src/sap/m/MultiEditField.js +1 -1
  115. package/src/sap/m/MultiInput.js +15 -10
  116. package/src/sap/m/NavContainer.js +4 -4
  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 +175 -79
  120. package/src/sap/m/NotificationListGroup.js +1 -2
  121. package/src/sap/m/NotificationListGroupRenderer.js +4 -16
  122. package/src/sap/m/NotificationListItem.js +5 -16
  123. package/src/sap/m/NotificationListItemRenderer.js +0 -1
  124. package/src/sap/m/NumericContent.js +1 -1
  125. package/src/sap/m/NumericInput.js +1 -1
  126. package/src/sap/m/ObjectAttribute.js +14 -1
  127. package/src/sap/m/ObjectAttributeRenderer.js +5 -4
  128. package/src/sap/m/ObjectHeader.js +4 -4
  129. package/src/sap/m/ObjectHeaderRenderer.js +11 -11
  130. package/src/sap/m/ObjectIdentifier.js +3 -3
  131. package/src/sap/m/ObjectListItem.js +1 -1
  132. package/src/sap/m/ObjectMarker.js +7 -4
  133. package/src/sap/m/ObjectNumber.js +1 -1
  134. package/src/sap/m/ObjectStatus.js +1 -1
  135. package/src/sap/m/OverflowToolbar.js +51 -12
  136. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  137. package/src/sap/m/OverflowToolbarAssociativePopoverControls.js +5 -0
  138. package/src/sap/m/OverflowToolbarButton.js +1 -1
  139. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  140. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  141. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  142. package/src/sap/m/P13nColumnsItem.js +1 -1
  143. package/src/sap/m/P13nColumnsPanel.js +1 -1
  144. package/src/sap/m/P13nConditionPanel.js +32 -35
  145. package/src/sap/m/P13nDialog.js +3 -1
  146. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  147. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  148. package/src/sap/m/P13nFilterItem.js +1 -1
  149. package/src/sap/m/P13nFilterPanel.js +1 -1
  150. package/src/sap/m/P13nGroupItem.js +1 -1
  151. package/src/sap/m/P13nGroupPanel.js +1 -1
  152. package/src/sap/m/P13nItem.js +1 -1
  153. package/src/sap/m/P13nPanel.js +1 -1
  154. package/src/sap/m/P13nSelectionItem.js +1 -1
  155. package/src/sap/m/P13nSelectionPanel.js +1 -1
  156. package/src/sap/m/P13nSortItem.js +1 -1
  157. package/src/sap/m/P13nSortPanel.js +1 -1
  158. package/src/sap/m/PDFViewer.js +1 -1
  159. package/src/sap/m/Page.js +4 -4
  160. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  161. package/src/sap/m/PagingButton.js +1 -1
  162. package/src/sap/m/Panel.js +1 -1
  163. package/src/sap/m/PlanningCalendar.js +1 -1
  164. package/src/sap/m/PlanningCalendarHeader.js +2 -2
  165. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  166. package/src/sap/m/PlanningCalendarRow.js +1 -1
  167. package/src/sap/m/PlanningCalendarView.js +1 -1
  168. package/src/sap/m/Popover.js +3 -3
  169. package/src/sap/m/PopoverRenderer.js +2 -2
  170. package/src/sap/m/ProgressIndicator.js +15 -29
  171. package/src/sap/m/ProgressIndicatorRenderer.js +7 -1
  172. package/src/sap/m/PullToRefresh.js +1 -1
  173. package/src/sap/m/QuickView.js +2 -2
  174. package/src/sap/m/QuickViewBase.js +1 -1
  175. package/src/sap/m/QuickViewCard.js +1 -1
  176. package/src/sap/m/QuickViewGroup.js +1 -1
  177. package/src/sap/m/QuickViewGroupElement.js +2 -1
  178. package/src/sap/m/QuickViewPage.js +1 -1
  179. package/src/sap/m/RadioButton.js +2 -2
  180. package/src/sap/m/RadioButtonGroup.js +2 -2
  181. package/src/sap/m/RangeSlider.js +82 -59
  182. package/src/sap/m/RangeSliderRenderer.js +34 -2
  183. package/src/sap/m/RatingIndicator.js +1 -1
  184. package/src/sap/m/ResponsivePopover.js +7 -6
  185. package/src/sap/m/ResponsiveScale.js +1 -1
  186. package/src/sap/m/ScrollBar.js +1 -1
  187. package/src/sap/m/ScrollContainer.js +1 -1
  188. package/src/sap/m/SearchField.js +1 -1
  189. package/src/sap/m/SegmentedButton.js +5 -3
  190. package/src/sap/m/SegmentedButtonItem.js +1 -1
  191. package/src/sap/m/Select.js +31 -8
  192. package/src/sap/m/SelectDialog.js +14 -18
  193. package/src/sap/m/SelectDialogBase.js +1 -1
  194. package/src/sap/m/SelectList.js +8 -8
  195. package/src/sap/m/SelectListRenderer.js +2 -2
  196. package/src/sap/m/SelectRenderer.js +37 -13
  197. package/src/sap/m/SelectionDetails.js +1 -1
  198. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  199. package/src/sap/m/SelectionDetailsItem.js +1 -1
  200. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  201. package/src/sap/m/Shell.js +1 -1
  202. package/src/sap/m/SimpleFixFlex.js +5 -6
  203. package/src/sap/m/SimpleFixFlexRenderer.js +1 -0
  204. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  205. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  206. package/src/sap/m/SinglePlanningCalendarGrid.js +5 -5
  207. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  208. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  209. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  210. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  211. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  212. package/src/sap/m/SlideTile.js +1 -1
  213. package/src/sap/m/Slider.js +14 -5
  214. package/src/sap/m/SliderRenderer.js +27 -2
  215. package/src/sap/m/SliderTooltip.js +1 -1
  216. package/src/sap/m/SliderTooltipBase.js +1 -1
  217. package/src/sap/m/SliderTooltipContainer.js +3 -3
  218. package/src/sap/m/SplitApp.js +1 -1
  219. package/src/sap/m/SplitButton.js +1 -1
  220. package/src/sap/m/SplitContainer.js +3 -11
  221. package/src/sap/m/StandardDynamicDateOption.js +12 -10
  222. package/src/sap/m/StandardListItem.js +3 -3
  223. package/src/sap/m/StandardListItemRenderer.js +1 -1
  224. package/src/sap/m/StandardTile.js +1 -1
  225. package/src/sap/m/StandardTreeItem.js +1 -1
  226. package/src/sap/m/StepInput.js +1 -1
  227. package/src/sap/m/SuggestionItem.js +1 -1
  228. package/src/sap/m/SuggestionsPopover.js +1 -1
  229. package/src/sap/m/Switch.js +1 -1
  230. package/src/sap/m/TabContainer.js +3 -2
  231. package/src/sap/m/TabContainerItem.js +1 -1
  232. package/src/sap/m/TabStrip.js +6 -4
  233. package/src/sap/m/TabStripItem.js +1 -1
  234. package/src/sap/m/Table.js +7 -1
  235. package/src/sap/m/TablePersoController.js +2 -2
  236. package/src/sap/m/TablePersoDialog.js +2 -2
  237. package/src/sap/m/TablePersoProvider.js +2 -2
  238. package/src/sap/m/TableRenderer.js +27 -0
  239. package/src/sap/m/TableSelectDialog.js +13 -9
  240. package/src/sap/m/Text.js +2 -2
  241. package/src/sap/m/TextArea.js +4 -3
  242. package/src/sap/m/TextRenderer.js +2 -0
  243. package/src/sap/m/Tile.js +1 -1
  244. package/src/sap/m/TileContainer.js +6 -6
  245. package/src/sap/m/TileContent.js +26 -14
  246. package/src/sap/m/TileContentRenderer.js +16 -7
  247. package/src/sap/m/TimePicker.js +82 -20
  248. package/src/sap/m/TimePickerClock.js +1 -1
  249. package/src/sap/m/TimePickerClocks.js +1 -1
  250. package/src/sap/m/TimePickerClocksRenderer.js +1 -0
  251. package/src/sap/m/TimePickerInputs.js +1 -1
  252. package/src/sap/m/TimePickerInternals.js +1 -1
  253. package/src/sap/m/TimePickerSlider.js +1 -1
  254. package/src/sap/m/TimePickerSliders.js +1 -1
  255. package/src/sap/m/Title.js +2 -2
  256. package/src/sap/m/TitlePropagationSupport.js +1 -1
  257. package/src/sap/m/ToggleButton.js +1 -1
  258. package/src/sap/m/Token.js +1 -1
  259. package/src/sap/m/Tokenizer.js +14 -3
  260. package/src/sap/m/Toolbar.js +7 -1
  261. package/src/sap/m/ToolbarLayoutData.js +6 -2
  262. package/src/sap/m/ToolbarSeparator.js +1 -1
  263. package/src/sap/m/ToolbarSpacer.js +1 -1
  264. package/src/sap/m/Tree.js +1 -1
  265. package/src/sap/m/TreeItemBase.js +1 -1
  266. package/src/sap/m/UploadCollection.js +5 -5
  267. package/src/sap/m/UploadCollectionItem.js +2 -1
  268. package/src/sap/m/UploadCollectionParameter.js +2 -1
  269. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +2 -1
  270. package/src/sap/m/VBox.js +1 -1
  271. package/src/sap/m/ValueStateHeader.js +1 -1
  272. package/src/sap/m/VariantManagement.js +2492 -0
  273. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  274. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  275. package/src/sap/m/ViewSettingsDialog.js +4 -4
  276. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  277. package/src/sap/m/ViewSettingsItem.js +1 -1
  278. package/src/sap/m/VisibleItem.js +1 -1
  279. package/src/sap/m/WheelSlider.js +1 -1
  280. package/src/sap/m/WheelSliderContainer.js +1 -1
  281. package/src/sap/m/Wizard.js +1 -1
  282. package/src/sap/m/WizardProgressNavigator.js +1 -2
  283. package/src/sap/m/WizardStep.js +1 -1
  284. package/src/sap/m/changeHandler/AddTableColumn.js +3 -5
  285. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  286. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  287. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  288. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  289. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  290. package/src/sap/m/designtime/VariantManagement.designtime.js +56 -0
  291. package/src/sap/m/designtime/messagebundle_de.properties +2 -2
  292. package/src/sap/m/inputUtils/forwardItemProperties.js +4 -0
  293. package/src/sap/m/inputUtils/highlightDOMElements.js +3 -2
  294. package/src/sap/m/library.js +48 -5
  295. package/src/sap/m/messagebundle.properties +156 -12
  296. package/src/sap/m/messagebundle_ar.properties +103 -7
  297. package/src/sap/m/messagebundle_bg.properties +103 -7
  298. package/src/sap/m/messagebundle_ca.properties +103 -7
  299. package/src/sap/m/messagebundle_cs.properties +105 -9
  300. package/src/sap/m/messagebundle_cy.properties +103 -7
  301. package/src/sap/m/messagebundle_da.properties +103 -7
  302. package/src/sap/m/messagebundle_de.properties +104 -8
  303. package/src/sap/m/messagebundle_el.properties +103 -7
  304. package/src/sap/m/messagebundle_en.properties +103 -7
  305. package/src/sap/m/messagebundle_en_GB.properties +103 -7
  306. package/src/sap/m/messagebundle_en_US_sappsd.properties +103 -7
  307. package/src/sap/m/messagebundle_en_US_saprigi.properties +105 -7
  308. package/src/sap/m/messagebundle_en_US_saptrc.properties +103 -7
  309. package/src/sap/m/messagebundle_es.properties +103 -7
  310. package/src/sap/m/messagebundle_es_MX.properties +103 -7
  311. package/src/sap/m/messagebundle_et.properties +103 -7
  312. package/src/sap/m/messagebundle_fi.properties +103 -7
  313. package/src/sap/m/messagebundle_fr.properties +117 -21
  314. package/src/sap/m/messagebundle_fr_CA.properties +103 -7
  315. package/src/sap/m/messagebundle_hi.properties +103 -7
  316. package/src/sap/m/messagebundle_hr.properties +103 -7
  317. package/src/sap/m/messagebundle_hu.properties +103 -7
  318. package/src/sap/m/messagebundle_id.properties +103 -7
  319. package/src/sap/m/messagebundle_it.properties +110 -14
  320. package/src/sap/m/messagebundle_iw.properties +103 -7
  321. package/src/sap/m/messagebundle_ja.properties +103 -7
  322. package/src/sap/m/messagebundle_kk.properties +103 -7
  323. package/src/sap/m/messagebundle_ko.properties +114 -18
  324. package/src/sap/m/messagebundle_lt.properties +103 -7
  325. package/src/sap/m/messagebundle_lv.properties +103 -7
  326. package/src/sap/m/messagebundle_ms.properties +103 -7
  327. package/src/sap/m/messagebundle_nl.properties +103 -7
  328. package/src/sap/m/messagebundle_no.properties +107 -11
  329. package/src/sap/m/messagebundle_pl.properties +103 -7
  330. package/src/sap/m/messagebundle_pt.properties +112 -16
  331. package/src/sap/m/messagebundle_pt_PT.properties +103 -7
  332. package/src/sap/m/messagebundle_ro.properties +104 -8
  333. package/src/sap/m/messagebundle_ru.properties +103 -7
  334. package/src/sap/m/messagebundle_sh.properties +104 -8
  335. package/src/sap/m/messagebundle_sk.properties +103 -7
  336. package/src/sap/m/messagebundle_sl.properties +105 -9
  337. package/src/sap/m/messagebundle_sv.properties +103 -7
  338. package/src/sap/m/messagebundle_th.properties +103 -7
  339. package/src/sap/m/messagebundle_tr.properties +104 -8
  340. package/src/sap/m/messagebundle_uk.properties +104 -8
  341. package/src/sap/m/messagebundle_vi.properties +103 -7
  342. package/src/sap/m/messagebundle_zh_CN.properties +104 -8
  343. package/src/sap/m/messagebundle_zh_TW.properties +107 -11
  344. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  345. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  346. package/src/sap/m/p13n/BasePanel.js +1 -1
  347. package/src/sap/m/p13n/Container.js +1 -1
  348. package/src/sap/m/p13n/GroupPanel.js +16 -5
  349. package/src/sap/m/p13n/Popup.js +1 -1
  350. package/src/sap/m/p13n/QueryPanel.js +55 -33
  351. package/src/sap/m/p13n/SelectionPanel.js +31 -6
  352. package/src/sap/m/p13n/SortPanel.js +24 -13
  353. package/src/sap/m/plugins/ColumnResizer.js +12 -6
  354. package/src/sap/m/plugins/DataStateIndicator.js +13 -4
  355. package/src/sap/m/plugins/PasteProvider.js +1 -1
  356. package/src/sap/m/plugins/PluginBase.js +2 -2
  357. package/src/sap/m/rules/CheckBox.support.js +1 -1
  358. package/src/sap/m/rules/DatePicker.support.js +4 -3
  359. package/src/sap/m/rules/Image.support.js +1 -1
  360. package/src/sap/m/rules/Link.support.js +1 -1
  361. package/src/sap/m/rules/MessagePage.support.js +1 -1
  362. package/src/sap/m/rules/ObjectHeader.support.js +6 -6
  363. package/src/sap/m/rules/ObjectListItem.support.js +1 -1
  364. package/src/sap/m/rules/ObjectMarker.support.js +1 -1
  365. package/src/sap/m/rules/ObjectStatus.support.js +1 -1
  366. package/src/sap/m/rules/Select.support.js +1 -1
  367. package/src/sap/m/rules/Table.support.js +3 -3
  368. package/src/sap/m/semantic/AddAction.js +1 -1
  369. package/src/sap/m/semantic/CancelAction.js +1 -1
  370. package/src/sap/m/semantic/DeleteAction.js +1 -1
  371. package/src/sap/m/semantic/DetailPage.js +1 -1
  372. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  373. package/src/sap/m/semantic/EditAction.js +1 -1
  374. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  375. package/src/sap/m/semantic/FilterAction.js +1 -1
  376. package/src/sap/m/semantic/FilterSelect.js +1 -1
  377. package/src/sap/m/semantic/FlagAction.js +1 -1
  378. package/src/sap/m/semantic/ForwardAction.js +1 -1
  379. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  380. package/src/sap/m/semantic/GroupAction.js +1 -1
  381. package/src/sap/m/semantic/GroupSelect.js +1 -1
  382. package/src/sap/m/semantic/MainAction.js +1 -1
  383. package/src/sap/m/semantic/MasterPage.js +1 -1
  384. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  385. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  386. package/src/sap/m/semantic/NegativeAction.js +1 -1
  387. package/src/sap/m/semantic/OpenInAction.js +1 -1
  388. package/src/sap/m/semantic/PositiveAction.js +1 -1
  389. package/src/sap/m/semantic/PrintAction.js +1 -1
  390. package/src/sap/m/semantic/SaveAction.js +1 -1
  391. package/src/sap/m/semantic/Segment.js +1 -1
  392. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  393. package/src/sap/m/semantic/SemanticButton.js +1 -1
  394. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  395. package/src/sap/m/semantic/SemanticControl.js +1 -1
  396. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +3 -3
  397. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +3 -3
  398. package/src/sap/m/semantic/SemanticPage.js +1 -1
  399. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  400. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  401. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  402. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  403. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  404. package/src/sap/m/semantic/ShareMenu.js +1 -1
  405. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  406. package/src/sap/m/semantic/SortAction.js +1 -1
  407. package/src/sap/m/semantic/SortSelect.js +1 -1
  408. package/src/sap/m/table/Util.js +17 -13
  409. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  410. package/src/sap/m/table/columnmenu/Entry.js +1 -11
  411. package/src/sap/m/table/columnmenu/Item.js +1 -1
  412. package/src/sap/m/table/columnmenu/ItemBase.js +11 -1
  413. package/src/sap/m/table/columnmenu/Menu.js +41 -27
  414. package/src/sap/m/table/columnmenu/MenuRenderer.js +4 -3
  415. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  416. package/src/sap/m/table/columnmenu/QuickActionBase.js +11 -1
  417. package/src/sap/m/table/columnmenu/QuickActionItem.js +5 -5
  418. package/src/sap/m/table/columnmenu/QuickGroup.js +2 -11
  419. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -13
  420. package/src/sap/m/table/columnmenu/QuickSort.js +2 -1
  421. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  422. package/src/sap/m/table/columnmenu/QuickTotal.js +2 -22
  423. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -13
  424. package/src/sap/m/themes/base/ActionListItem.less +2 -2
  425. package/src/sap/m/themes/base/Breadcrumbs.less +11 -0
  426. package/src/sap/m/themes/base/Button.less +1 -6
  427. package/src/sap/m/themes/base/Carousel.less +72 -87
  428. package/src/sap/m/themes/base/CheckBox.less +1 -0
  429. package/src/sap/m/themes/base/ColumnListItem.less +0 -3
  430. package/src/sap/m/themes/base/Dialog.less +6 -2
  431. package/src/sap/m/themes/base/GenericTag.less +5 -3
  432. package/src/sap/m/themes/base/GenericTile.less +412 -148
  433. package/src/sap/m/themes/base/IconTabBarSelectList.less +5 -4
  434. package/src/sap/m/themes/base/InputBase.less +2 -1
  435. package/src/sap/m/themes/base/LightBox.less +6 -16
  436. package/src/sap/m/themes/base/ListItemBase.less +1 -12
  437. package/src/sap/m/themes/base/MenuButton.less +16 -0
  438. package/src/sap/m/themes/base/MessageBox.less +9 -8
  439. package/src/sap/m/themes/base/NewsContent.less +0 -9
  440. package/src/sap/m/themes/base/NotificationListBase.less +9 -14
  441. package/src/sap/m/themes/base/NotificationListGroup.less +30 -44
  442. package/src/sap/m/themes/base/NotificationListItem.less +14 -18
  443. package/src/sap/m/themes/base/ObjectListItem.less +3 -0
  444. package/src/sap/m/themes/base/ObjectNumber.less +5 -0
  445. package/src/sap/m/themes/base/ObjectStatus.less +3 -0
  446. package/src/sap/m/themes/base/Panel.less +1 -1
  447. package/src/sap/m/themes/base/Popover.less +1 -1
  448. package/src/sap/m/themes/base/ProgressIndicator.less +0 -4
  449. package/src/sap/m/themes/base/QuickView.less +14 -2
  450. package/src/sap/m/themes/base/RatingIndicator.less +4 -0
  451. package/src/sap/m/themes/base/Select.less +1 -3
  452. package/src/sap/m/themes/base/SinglePlanningCalendarGrid.less +3 -29
  453. package/src/sap/m/themes/base/SlideTile.less +19 -0
  454. package/src/sap/m/themes/base/Slider.less +18 -18
  455. package/src/sap/m/themes/base/StandardListItem.less +6 -9
  456. package/src/sap/m/themes/base/Table.less +22 -21
  457. package/src/sap/m/themes/base/TextArea.less +5 -0
  458. package/src/sap/m/themes/base/TimePickerClock.less +7 -0
  459. package/src/sap/m/themes/base/Title.less +1 -1
  460. package/src/sap/m/themes/base/Token.less +3 -2
  461. package/src/sap/m/themes/base/Toolbar.less +1 -1
  462. package/src/sap/m/themes/base/UploadCollection.less +2 -0
  463. package/src/sap/m/themes/base/VariantManagement.less +97 -0
  464. package/src/sap/m/themes/base/Wizard.less +5 -4
  465. package/src/sap/m/themes/base/WizardProgressNavigator.less +8 -0
  466. package/src/sap/m/themes/base/library.source.less +1 -0
  467. package/src/sap/m/themes/sap_hcb/Carousel.less +3 -7
  468. package/src/sap/m/themes/sap_hcb/Panel.less +4 -0
  469. package/src/sap/m/themes/sap_hcb/Slider.less +11 -0
  470. package/src/sap/m/themes/sap_hcb/Tokenizer.less +1 -0
  471. package/src/sap/m/upload/UploadSet.js +90 -14
  472. package/src/sap/m/upload/UploadSetItem.js +18 -5
  473. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +46 -0
@@ -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.101.0
27
+ * @version 1.103.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.101.0
24
+ * @version 1.103.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.101.0
26
+ * @version 1.103.0
27
27
  * @constructor
28
28
  * @public
29
29
  * @since 1.48.0
@@ -152,7 +152,7 @@ sap.ui.define([
152
152
  * the close event), or select Cancel.
153
153
  *
154
154
  * @extends sap.m.DateTimeField
155
- * @version 1.101.0
155
+ * @version 1.103.0
156
156
  *
157
157
  * @constructor
158
158
  * @public
@@ -287,7 +287,19 @@ sap.ui.define([
287
287
  afterPopupOpened : {type : "boolean"}
288
288
 
289
289
  }
290
- }
290
+ },
291
+
292
+ /**
293
+ * Fired when <code>value help</code> dialog opens.
294
+ * @since 1.102.0
295
+ */
296
+ afterValueHelpOpen : {},
297
+
298
+ /**
299
+ * Fired when <code>value help</code> dialog closes.
300
+ * @since 1.102.0
301
+ */
302
+ afterValueHelpClose : {}
291
303
  },
292
304
  designtime: "sap/m/designtime/DatePicker.designtime",
293
305
  dnd: { draggable: false, droppable: true }
@@ -1188,7 +1200,7 @@ sap.ui.define([
1188
1200
  if (!oDomRef) {
1189
1201
  oDomRef = this.getDomRef();
1190
1202
  }
1191
- this._oPopup._getPopup().setAutoCloseAreas([oDomRef]);
1203
+ this._oPopup._getPopup().setExtraContent([oDomRef]);
1192
1204
  this._oPopup.openBy(oDomRef || this);
1193
1205
  };
1194
1206
 
@@ -1332,7 +1344,7 @@ sap.ui.define([
1332
1344
 
1333
1345
  sFormattedDate = this._getPickerParser().format(
1334
1346
  oDate,
1335
- sap.ui.getCore().getConfiguration().getTimezone()
1347
+ this._getTimezone(true)
1336
1348
  );
1337
1349
  oDate = this._getPickerParser().parse(sFormattedDate, TimezoneUtil.getLocalTimezone())[0];
1338
1350
 
@@ -1346,7 +1358,7 @@ sap.ui.define([
1346
1358
 
1347
1359
  sFormattedDate = this._getPickerParser().format(
1348
1360
  oFocusDate,
1349
- sap.ui.getCore().getConfiguration().getTimezone()
1361
+ this._getTimezone(true)
1350
1362
  );
1351
1363
  oFocusDate = this._getPickerParser().parse(sFormattedDate, TimezoneUtil.getLocalTimezone())[0];
1352
1364
 
@@ -1392,7 +1404,7 @@ sap.ui.define([
1392
1404
  var sFormattedDate = this._getPickerParser().format(oDate, TimezoneUtil.getLocalTimezone());
1393
1405
  var oParts = this._getPickerParser().parse(
1394
1406
  sFormattedDate,
1395
- sap.ui.getCore().getConfiguration().getTimezone()
1407
+ this._getTimezone(true)
1396
1408
  );
1397
1409
  oDate = oParts && oParts[0];
1398
1410
 
@@ -1436,6 +1448,10 @@ sap.ui.define([
1436
1448
  this._selectDate();
1437
1449
  };
1438
1450
 
1451
+ DatePicker.prototype._getTimezone = function(bUseDefaultAsFallback) {
1452
+ return sap.ui.getCore().getConfiguration().getTimezone();
1453
+ };
1454
+
1439
1455
  /* sets cursor inside the input in order to focus it */
1440
1456
  DatePicker.prototype._focusInput = function(){
1441
1457
 
@@ -1449,7 +1465,7 @@ sap.ui.define([
1449
1465
 
1450
1466
  /**
1451
1467
  * Getter for DatePicker's Calendar instance.
1452
- * @returns {object} The _header object
1468
+ * @returns {sap.ui.unified.Calendar} The calendar object
1453
1469
  * @private
1454
1470
  */
1455
1471
  DatePicker.prototype._getCalendar = function () {
@@ -1597,6 +1613,7 @@ sap.ui.define([
1597
1613
  InstanceManager.addPopoverInstance(this._oPopup);
1598
1614
 
1599
1615
  this._oCalendar.focus();
1616
+ this.fireAfterValueHelpOpen();
1600
1617
  }
1601
1618
 
1602
1619
  function _handleClose() {
@@ -1608,6 +1625,7 @@ sap.ui.define([
1608
1625
  this._getCalendar()._closePickers();
1609
1626
 
1610
1627
  InstanceManager.removePopoverInstance(this._oPopup);
1628
+ this.fireAfterValueHelpClose();
1611
1629
  }
1612
1630
 
1613
1631
  function _resizeCalendar(oEvent){
@@ -128,8 +128,8 @@ sap.ui.define([
128
128
  * compact mode and provides a touch-friendly size in cozy mode.
129
129
  *
130
130
  * @extends sap.m.DatePicker
131
- * @version 1.101.0
132
- * @version 1.101.0
131
+ * @version 1.103.0
132
+ * @version 1.103.0
133
133
  *
134
134
  * @constructor
135
135
  * @public
@@ -238,7 +238,7 @@ sap.ui.define([
238
238
  oLocale = sap.ui.getCore().getConfiguration().getFormatSettings().getFormatLocale();
239
239
  oLocaleData = LocaleData.getInstance(oLocale);
240
240
 
241
- if (oBinding && oBinding.getType() instanceof sap.ui.model.type.DateInterval) {
241
+ if (oBinding && oBinding.getType() && oBinding.getType().isA("sap.ui.model.type.DateInterval")) {
242
242
  oBindingType = oBinding.getType();
243
243
 
244
244
  if (oBindingType.oFormatOptions && oBindingType.oFormatOptions.format) {
@@ -547,7 +547,7 @@ sap.ui.define([
547
547
  var oDate1, oDate2;
548
548
  var oBinding = this.getBinding("value");
549
549
 
550
- if (oBinding && oBinding.getType() instanceof sap.ui.model.type.DateInterval) {
550
+ if (oBinding && oBinding.getType() && oBinding.getType().isA("sap.ui.model.type.DateInterval")) {
551
551
  //The InputBase has it's own mechanism for handling parser exception that
552
552
  //uses sap.ui.core.message.MessageMixin and MessageManager. This mechanism
553
553
  //is triggered once the invalid value is set to the Input. In our case this
@@ -662,7 +662,7 @@ sap.ui.define([
662
662
  if (oDate1) {
663
663
  oBinding = this.getBinding("value");
664
664
 
665
- if (oBinding && oBinding.getType() instanceof sap.ui.model.type.DateInterval) {
665
+ if (oBinding && oBinding.getType() && oBinding.getType().isA("sap.ui.model.type.DateInterval")) {
666
666
  if (oBinding.getType().oFormatOptions && oBinding.getType().oFormatOptions.source && oBinding.getType().oFormatOptions.source.pattern === "timestamp") {
667
667
  sValue = oBinding.getType().formatValue([_denormalizeDateValue(oDateValue), _denormalizeDateValue(oSecondDateValue)], "string");
668
668
  } else {
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  * @extends sap.m.InputBase
60
60
  *
61
61
  * @author SAP SE
62
- * @version 1.101.0
62
+ * @version 1.103.0
63
63
  *
64
64
  * @constructor
65
65
  * @public
@@ -239,7 +239,10 @@ sap.ui.define([
239
239
  // open value state message popup when focus is in the input
240
240
  this.openValueStateMessage();
241
241
  } else if (this._oValueStateHeader) {
242
- this._oValueStateHeader.setVisible(this.getValueState() !== ValueState.None);
242
+ this._oValueStateHeader
243
+ .setValueState(this.getValueState())
244
+ .setText(this._getTextForPickerValueStateContent())
245
+ .setVisible(this.getValueState() !== ValueState.None);
243
246
  }
244
247
 
245
248
  };
@@ -298,6 +301,14 @@ sap.ui.define([
298
301
  ).getDatePattern(sPlaceholder);
299
302
  };
300
303
 
304
+ DateTimeField.prototype._getTimezoneFormatter = function() {
305
+ if (!this._timezoneFormatter) {
306
+ this._timezoneFormatter = DateFormat.getDateTimeWithTimezoneInstance({ showTimezone: false });
307
+ }
308
+
309
+ return this._timezoneFormatter;
310
+ };
311
+
301
312
  DateTimeField.prototype._parseValue = function (sValue, bDisplayFormat) {
302
313
  var oBinding = this.getBinding("value"),
303
314
  oBindingType = oBinding && oBinding.getType && oBinding.getType(),
@@ -306,7 +317,8 @@ sap.ui.define([
306
317
  oFormatter = this._getFormatter(bDisplayFormat),
307
318
  oFormatOptions,
308
319
  oDateLocal,
309
- oDate;
320
+ oDate,
321
+ sFormatted;
310
322
 
311
323
  if (this._isSupportedBindingType(oBindingType)) {
312
324
  try {
@@ -329,10 +341,10 @@ sap.ui.define([
329
341
 
330
342
  if (oDate && ((oBindingType.oFormatOptions && this._isFormatOptionsUTC(oBindingType.oFormatOptions)) || (oBindingType.oConstraints && oBindingType.oConstraints.isDateOnly))) {
331
343
  // convert to local date because it was parsed as UTC date
332
- oDateLocal = new Date(oDate.getUTCFullYear(), oDate.getUTCMonth(), oDate.getUTCDate(),
333
- oDate.getUTCHours(), oDate.getUTCMinutes(), oDate.getUTCSeconds(), oDate.getUTCMilliseconds());
344
+ sFormatted = this._getTimezoneFormatter().format(oDate, "UTC");
345
+ oDateLocal = this._getTimezoneFormatter().parse(sFormatted,
346
+ sap.ui.getCore().getConfiguration().getTimezone())[0];
334
347
 
335
- oDateLocal.setFullYear(oDate.getUTCFullYear());
336
348
  oDate = oDateLocal;
337
349
  }
338
350
  return oDate;
@@ -350,15 +362,15 @@ sap.ui.define([
350
362
  var oBinding = this.getBinding("value"),
351
363
  oBindingType = oBinding && oBinding.getType && oBinding.getType(),
352
364
  oFormatOptions,
353
- oDateUTC;
365
+ oDateUTC,
366
+ sFormatted;
354
367
 
355
368
  if (this._isSupportedBindingType(oBindingType)) {
356
369
  if ((oBindingType.oFormatOptions && oBindingType.oFormatOptions.UTC) || (oBindingType.oConstraints && oBindingType.oConstraints.isDateOnly)) {
357
370
  // convert to UTC date because it will be formatted as UTC date
358
- oDateUTC = new Date(Date.UTC(oDate.getFullYear(), oDate.getMonth(), oDate.getDate(),
359
- oDate.getHours(), oDate.getMinutes(), oDate.getSeconds(), oDate.getMilliseconds()));
371
+ sFormatted = this._getTimezoneFormatter().format(oDate, sap.ui.getCore().getConfiguration().getTimezone());
372
+ oDateUTC = this._getTimezoneFormatter().parse(sFormatted, "UTC")[ 0 ];
360
373
 
361
- oDateUTC.setUTCFullYear(oDate.getFullYear());
362
374
  oDate = oDateUTC;
363
375
  }
364
376
 
@@ -62,7 +62,7 @@ function(
62
62
  * @extends sap.ui.core.Control
63
63
  *
64
64
  * @author SAP SE
65
- * @version 1.101.0
65
+ * @version 1.103.0
66
66
  *
67
67
  * @constructor
68
68
  * @public
@@ -145,7 +145,7 @@ sap.ui.define([
145
145
  * mobile devices, it opens in full screen.
146
146
  *
147
147
  * @extends sap.m.DatePicker
148
- * @version 1.101.0
148
+ * @version 1.103.0
149
149
  *
150
150
  * @constructor
151
151
  * @public
@@ -422,7 +422,7 @@ sap.ui.define([
422
422
  this._oValueFormatWithTimezone = null;
423
423
 
424
424
  if (this._oTimezonePopup) {
425
- this._oTimezonePopup.setTitle(sTimezone);
425
+ this._oTimezonePopup.setTitle(this._getTranslatedTimezone(true));
426
426
  }
427
427
 
428
428
  // the dateValue should be adjusted, and the value re-formatted
@@ -558,7 +558,7 @@ sap.ui.define([
558
558
  var oResourceBundle;
559
559
 
560
560
  if (this._oTimezonePopup) {
561
- this._oTimezonePopup.setTitle(this._getTimezone(true));
561
+ this._oTimezonePopup.setTitle(this._getTranslatedTimezone(true));
562
562
  return this._oTimezonePopup;
563
563
  }
564
564
 
@@ -608,7 +608,7 @@ sap.ui.define([
608
608
 
609
609
  /**
610
610
  * Gets the format options of the value or dateValue binding.
611
- * @returns {object} The binding format options or undefined.
611
+ * @returns {object|undefined} The binding format options or undefined.
612
612
  * @private
613
613
  */
614
614
  DateTimePicker.prototype._getBindingFormatOptions = function() {
@@ -710,6 +710,17 @@ sap.ui.define([
710
710
  return this.getTimezone() || (bUseDefaultAsFallback && Core.getConfiguration().getTimezone());
711
711
  };
712
712
 
713
+
714
+ /**
715
+ * Gets the timezone that will be used by the control translated to the cofiguration language.
716
+ * @param {boolean} bUseDefaultAsFallback Whether to use the application default as a fallback.
717
+ * @returns {string} The translated timezone.
718
+ * @private
719
+ */
720
+ DateTimePicker.prototype._getTranslatedTimezone = function(bUseDefaultAsFallback) {
721
+ return LocaleData.getInstance(Core.getConfiguration().getFormatSettings().getFormatLocale()).getTimezoneTranslations()[this._getTimezone(bUseDefaultAsFallback)];
722
+ };
723
+
713
724
  DateTimePicker.prototype._checkStyle = function(sPattern){
714
725
 
715
726
  if (DatePicker.prototype._checkStyle.apply(this, arguments)) {
@@ -892,7 +903,7 @@ sap.ui.define([
892
903
  this.addStyleClass(InputBase.ICON_PRESSED_CSS_CLASS);
893
904
 
894
905
  var oPopover = this._oPopup.getAggregation("_popup");
895
- oPopover.oPopup.setAutoCloseAreas([oDomRef]);
906
+ oPopover.oPopup.setExtraContent([oDomRef]);
896
907
 
897
908
  this._oPopup.openBy(oDomRef || this);
898
909
  };
@@ -976,14 +987,13 @@ sap.ui.define([
976
987
 
977
988
  DateTimePicker.prototype._getSelectedDate = function(){
978
989
  var oDate = DatePicker.prototype._getSelectedDate.apply(this, arguments),
979
- sFormattedDate;
990
+ oDateTime,
991
+ sPattern;
980
992
 
981
993
  if (oDate) {
982
- sFormattedDate = this._getPickerParser().format(oDate, TimezoneUtil.getLocalTimezone());
983
- oDate = this._getPickerParser().parse(sFormattedDate, this._getTimezone(true))[0];
994
+ oDateTime = this._oClocks.getTimeValues();
995
+ sPattern = this._oClocks._getDisplayFormatPattern();
984
996
 
985
- var oDateTime = this._oClocks.getTimeValues();
986
- var sPattern = this._oClocks._getDisplayFormatPattern();
987
997
  if (sPattern.search("h") >= 0 || sPattern.search("H") >= 0) {
988
998
  oDate.setHours(oDateTime.getHours());
989
999
  }
@@ -1055,6 +1065,7 @@ sap.ui.define([
1055
1065
  this._oCalendar.focus();
1056
1066
 
1057
1067
  Device.media.attachHandler(this._handleWindowResize, this);
1068
+ this.fireAfterValueHelpOpen();
1058
1069
  }
1059
1070
 
1060
1071
  function _handleAfterClose(){
@@ -1062,6 +1073,7 @@ sap.ui.define([
1062
1073
 
1063
1074
  this._oCalendar._closePickers();
1064
1075
  Device.media.detachHandler(this._handleWindowResize, this);
1076
+ this.fireAfterValueHelpClose();
1065
1077
  }
1066
1078
 
1067
1079
  function _getTimePattern(){
@@ -39,7 +39,7 @@ sap.ui.define(['sap/ui/core/Renderer', './DatePickerRenderer', './InputBaseRende
39
39
  };
40
40
 
41
41
  DateTimePickerRenderer.writeAdditionalContent = function(oRm, oControl) {
42
- var sTimezone = oControl._getTimezone(true);
42
+ var sTimezone = oControl._getTranslatedTimezone(true);
43
43
 
44
44
  if (!oControl._getShowTimezone()) {
45
45
  return;
@@ -175,7 +175,7 @@ function(
175
175
  *
176
176
  * @implements sap.ui.core.PopupInterface
177
177
  * @author SAP SE
178
- * @version 1.101.0
178
+ * @version 1.103.0
179
179
  *
180
180
  * @constructor
181
181
  * @public
@@ -1109,9 +1109,10 @@ function(
1109
1109
  }
1110
1110
 
1111
1111
  $this.css(oStyles);
1112
+ $this.css(this._calcMaxSizes());
1112
1113
 
1113
1114
  if (!this._oManuallySetSize && !this._bDisableRepositioning) {
1114
- this._positionDialog();
1115
+ $this.css(this._calcPosition());
1115
1116
  }
1116
1117
 
1117
1118
  //In Chrome when the dialog is stretched the footer is not rendered in the right position;
@@ -1244,7 +1245,7 @@ function(
1244
1245
  $this = this.$(),
1245
1246
  iHeaderHeight = $this.find(".sapMDialogTitle").height() || 0,
1246
1247
  iSubHeaderHeight = $this.find(".sapMDialogSubHeader").height() || 0,
1247
- iFooterHeight = $this.find("footer").height() || 0,
1248
+ iFooterHeight = $this.find("> footer").height() || 0,
1248
1249
  iHeightAsPadding = iHeaderHeight + iSubHeaderHeight + iFooterHeight,
1249
1250
  iMaxHeight,
1250
1251
  iMaxWidth;
@@ -1257,14 +1258,6 @@ function(
1257
1258
  iMaxHeight = this._percentOfSize(oAreaDimensions.height, 100 - 2 * VERTICAL_MARGIN) - iHeightAsPadding; // 94% of available height minus paddings for headers and footer
1258
1259
  }
1259
1260
 
1260
- if (iMaxHeight < parseInt($this.css("min-height"))) {
1261
- Log.error("Height of Within Area is not enough to fit dialog");
1262
- }
1263
-
1264
- if (iMaxWidth < parseInt($this.css("min-width"))) {
1265
- Log.error("Width of Within Area is not enough to fit dialog");
1266
- }
1267
-
1268
1261
  return {
1269
1262
  maxWidth: Math.floor(iMaxWidth),
1270
1263
  maxHeight: Math.floor(iMaxHeight)
@@ -151,7 +151,7 @@ sap.ui.define([
151
151
  if (Device.system.desktop) {
152
152
 
153
153
  if (oDialog.getResizable() && !bStretch) {
154
- oRM.icon("sap-icon://resize-corner", ["sapMDialogResizeHandler"], { "title": "" });
154
+ oRM.icon("sap-icon://resize-corner", ["sapMDialogResizeHandler"], {"title": "", "aria-label": ""});
155
155
  }
156
156
 
157
157
  // Invisible element which is used to determine when desktop keyboard navigation
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.m.ListItemBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.101.0
33
+ * @version 1.103.0
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @abstract
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.101.0
30
+ * @version 1.103.0
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.101.0
39
+ * @version 1.103.0
40
40
  *
41
41
  * @constructor
42
42
  * @public
@@ -14,9 +14,10 @@ sap.ui.define([
14
14
  "sap/base/util/deepExtend",
15
15
  "sap/base/util/isEmptyObject",
16
16
  "sap/ui/core/date/UniversalDateUtils",
17
+ "sap/ui/unified/calendar/CalendarUtils",
17
18
  "./library"
18
19
  ],
19
- function(DateFormat, NumberFormat, Locale, LocaleData, Log, deepExtend, isEmptyObject, UniversalDateUtils, library) {
20
+ function(DateFormat, NumberFormat, Locale, LocaleData, Log, deepExtend, isEmptyObject, UniversalDateUtils, CalendarUtils, library) {
20
21
  "use strict";
21
22
 
22
23
  /**
@@ -170,12 +171,13 @@ sap.ui.define([
170
171
  * Formats a list according to the given format options.
171
172
  *
172
173
  * @param {object} oObj The value to format
174
+ * @param {boolean} bSkipCustomFormatting If set to <code>true</code> the formatter does not format to the equivalent user-friendly string. Instead, the formatter uses the specified option key and parameters.
173
175
  * @return {string} The formatted output value.
174
176
  * @public
175
177
  */
176
- DynamicDateFormat.prototype.format = function(oObj) {
177
- var sKey = oObj.operator;
178
- var aParams = oObj.values.slice(0);
178
+ DynamicDateFormat.prototype.format = function(oObj, bSkipCustomFormatting) {
179
+ var sKey = oObj.operator,
180
+ aParams = oObj.values.slice(0);
179
181
 
180
182
  if (sKey === "SPECIFICMONTH") {
181
183
  var oDate = new Date();
@@ -189,10 +191,10 @@ sap.ui.define([
189
191
 
190
192
  aParams[0] = this._monthFormatter.format(oDate);
191
193
  aParams[1] = this._yearFormatter.format(oDate);
192
- } else if (sKey === "LASTDAYS" && aParams[0] === 1) {
194
+ } else if (sKey === "LASTDAYS" && aParams[0] === 1 && !bSkipCustomFormatting) {
193
195
  sKey = "YESTERDAY";
194
196
  aParams = [];
195
- } else if (sKey === "NEXTDAYS" && aParams[0] === 1) {
197
+ } else if (sKey === "NEXTDAYS" && aParams[0] === 1 && !bSkipCustomFormatting) {
196
198
  sKey = "TOMORROW";
197
199
  aParams = [];
198
200
  } else if ((sKey === "LASTDAYS" || sKey === "NEXTDAYS") && aParams[0] === 0) {
@@ -200,6 +202,12 @@ sap.ui.define([
200
202
  aParams = [];
201
203
  } else if (sKey === "DATETIME") {
202
204
  aParams[0] = this._dateTimeFormatter.format(oObj.values[0]);
205
+ } else if (sKey === "TODAYFROMTO") {
206
+ aParams[0] = -aParams[0];
207
+ if (aParams[0] > aParams[1]) {
208
+ // swap two values because first one is bigger than second one
209
+ aParams = [aParams[1], aParams[0]];
210
+ }
203
211
  }
204
212
 
205
213
  var aFormattedParams = aParams.map(function(param) {
@@ -217,6 +225,16 @@ sap.ui.define([
217
225
  }
218
226
  }, this);
219
227
 
228
+ if (sKey === 'TODAYFROMTO') {
229
+ aFormattedParams.forEach(function(item, index, arr) {
230
+ if (item === "0") {
231
+ arr[index] = (index === 0 ? this.oLocaleData.getNumberSymbol("minusSign") : this.oLocaleData.getNumberSymbol("plusSign")) + item;
232
+ } else {
233
+ arr[index] = aParams[index] < 0 ? item.toString() : this.oLocaleData.getNumberSymbol("plusSign") + item;
234
+ }
235
+ }, this);
236
+ }
237
+
220
238
  return this._resourceBundle.getText("DYNAMIC_DATE_" + sKey.toUpperCase() + "_FORMAT", aFormattedParams);
221
239
  };
222
240
 
@@ -229,17 +247,11 @@ sap.ui.define([
229
247
  * @public
230
248
  */
231
249
  DynamicDateFormat.prototype.parse = function(sValue, sKey) {
232
- var aResult;
233
- var aStaticParts = _staticParts[sKey];
234
-
235
- var sRegexPattern = "^" + aStaticParts.join("(.*)") + "$";
236
-
237
- if (sKey === "TODAYFROMTO") {
238
- sRegexPattern = sRegexPattern.replace("+", "\\+");
239
- }
240
-
241
- var rRegex = new RegExp(sRegexPattern, "i");
242
- var match = sValue.match(rRegex);
250
+ var aResult,
251
+ aStaticParts = _staticParts[sKey],
252
+ sRegexPattern = "^" + aStaticParts.join("(.*)") + "$",
253
+ rRegex = new RegExp(sRegexPattern, "i"),
254
+ match = sValue.match(rRegex);
243
255
 
244
256
  if (match) {
245
257
  aResult = {};
@@ -278,7 +290,16 @@ sap.ui.define([
278
290
  break;
279
291
  }
280
292
 
281
- if (!oVal) {
293
+ if (oVal && (sType === "date" || sType === "datetime")) {
294
+ // for date/datetime types, if year is outside the allowed range [1-9999], return null as invalid result
295
+ try {
296
+ CalendarUtils._checkYearInValidRange(oVal.getFullYear());
297
+ } catch (e) {
298
+ oVal = null;
299
+ }
300
+ }
301
+
302
+ if (!oVal && oVal !== 0) {
282
303
  aResult = null;
283
304
  break;
284
305
  }
@@ -286,6 +307,14 @@ sap.ui.define([
286
307
  aResult.values[iIndex] = oVal;
287
308
  }
288
309
 
310
+ if (sKey === "TODAYFROMTO" && aResult) {
311
+ if (aResult.values[0] > aResult.values[1]) {
312
+ // swap two values because first one is bigger than second one
313
+ aResult.values = [aResult.values[1], aResult.values[0]];
314
+ }
315
+ aResult.values[0] = -aResult.values[0];
316
+ }
317
+
289
318
  if (aResult) {
290
319
  aResult.operator = sKey;
291
320
  return aResult;
@@ -293,5 +322,30 @@ sap.ui.define([
293
322
  }
294
323
  };
295
324
 
325
+ /**
326
+ * Checks if a UTC flag is set to a specific formatter.
327
+ *
328
+ * @param {string} sOption The key of specific option
329
+ * @return {boolean} If the format for this option has UTC flag set to true
330
+ * @private
331
+ */
332
+ DynamicDateFormat.prototype._checkFormatterUTCTimezone = function(sOption) {
333
+ var sType = "";
334
+ if (aParameterTypesByStandardOptionKey[sOption]) {
335
+ sType = aParameterTypesByStandardOptionKey[sOption];
336
+ }
337
+
338
+ // ensure that in options like last/next days or +/- days we still use correct timezone when formatting the dates.
339
+ if (sType === "" || sType[0] === "int") {
340
+ sType = "date";
341
+ }
342
+
343
+ if (this.oOriginalFormatOptions[sType]) {
344
+ return this.oOriginalFormatOptions[sType].UTC;
345
+ }
346
+
347
+ return false;
348
+ };
349
+
296
350
  return DynamicDateFormat;
297
351
  });
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.core.Element
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.101.0
39
+ * @version 1.103.0
40
40
  *
41
41
  * @public
42
42
  * @since 1.92