@openui5/sap.m 1.98.0 → 1.101.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 (615) hide show
  1. package/.eslintrc.json +18 -0
  2. package/THIRDPARTY.txt +6 -6
  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 +2 -2
  7. package/src/sap/m/ActionListItemRenderer.js +5 -7
  8. package/src/sap/m/ActionSelect.js +1 -1
  9. package/src/sap/m/ActionSelectRenderer.js +1 -1
  10. package/src/sap/m/ActionSheet.js +12 -5
  11. package/src/sap/m/ActionSheetRenderer.js +1 -1
  12. package/src/sap/m/App.js +1 -1
  13. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  14. package/src/sap/m/Avatar.js +21 -4
  15. package/src/sap/m/AvatarRenderer.js +6 -1
  16. package/src/sap/m/BadgeCustomData.js +6 -4
  17. package/src/sap/m/BadgeEnabler.js +3 -2
  18. package/src/sap/m/Bar.js +6 -5
  19. package/src/sap/m/BarRenderer.js +6 -6
  20. package/src/sap/m/Breadcrumbs.js +81 -7
  21. package/src/sap/m/BreadcrumbsRenderer.js +3 -7
  22. package/src/sap/m/BusyDialog.js +1 -1
  23. package/src/sap/m/BusyIndicator.js +1 -1
  24. package/src/sap/m/BusyIndicatorRenderer.js +1 -1
  25. package/src/sap/m/Button.js +2 -2
  26. package/src/sap/m/ButtonRenderer.js +3 -3
  27. package/src/sap/m/Carousel.js +22 -17
  28. package/src/sap/m/CarouselLayout.js +1 -1
  29. package/src/sap/m/CarouselRenderer.js +10 -4
  30. package/src/sap/m/CheckBox.js +2 -4
  31. package/src/sap/m/CheckBoxRenderer.js +1 -1
  32. package/src/sap/m/ColorPalette.js +1 -1
  33. package/src/sap/m/ColorPalettePopover.js +1 -1
  34. package/src/sap/m/Column.js +1 -1
  35. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  36. package/src/sap/m/ColumnListItem.js +1 -1
  37. package/src/sap/m/ColumnListItemRenderer.js +10 -11
  38. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  39. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  40. package/src/sap/m/ColumnPopoverItem.js +1 -1
  41. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  42. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  43. package/src/sap/m/ComboBox.js +3 -2
  44. package/src/sap/m/ComboBoxBase.js +5 -3
  45. package/src/sap/m/ComboBoxBaseRenderer.js +2 -2
  46. package/src/sap/m/ComboBoxRenderer.js +4 -4
  47. package/src/sap/m/ComboBoxTextField.js +1 -1
  48. package/src/sap/m/ComboBoxTextFieldRenderer.js +2 -2
  49. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  50. package/src/sap/m/CustomListItem.js +1 -1
  51. package/src/sap/m/CustomListItemRenderer.js +4 -6
  52. package/src/sap/m/CustomTile.js +1 -1
  53. package/src/sap/m/CustomTileRenderer.js +2 -2
  54. package/src/sap/m/CustomTreeItem.js +1 -1
  55. package/src/sap/m/CustomTreeItemRenderer.js +2 -2
  56. package/src/sap/m/DatePicker.js +36 -7
  57. package/src/sap/m/DatePickerRenderer.js +1 -6
  58. package/src/sap/m/DateRangeSelection.js +42 -4
  59. package/src/sap/m/DateRangeSelectionRenderer.js +1 -1
  60. package/src/sap/m/DateTimeField.js +15 -6
  61. package/src/sap/m/DateTimeInput.js +1 -1
  62. package/src/sap/m/DateTimePicker.js +375 -89
  63. package/src/sap/m/DateTimePickerRenderer.js +57 -0
  64. package/src/sap/m/Dialog.js +20 -7
  65. package/src/sap/m/DialogRenderer.js +1 -1
  66. package/src/sap/m/DisplayListItem.js +1 -1
  67. package/src/sap/m/DisplayListItemRenderer.js +4 -6
  68. package/src/sap/m/DraftIndicator.js +1 -1
  69. package/src/sap/m/DraftIndicatorRenderer.js +1 -1
  70. package/src/sap/m/DynamicDate.js +3 -3
  71. package/src/sap/m/DynamicDateFormat.js +33 -1
  72. package/src/sap/m/DynamicDateOption.js +144 -9
  73. package/src/sap/m/DynamicDateRange.js +145 -49
  74. package/src/sap/m/DynamicDateRangeRenderer.js +1 -1
  75. package/src/sap/m/DynamicDateUtil.js +10 -3
  76. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  77. package/src/sap/m/ExpandableText.js +1 -1
  78. package/src/sap/m/FacetFilter.js +1 -1
  79. package/src/sap/m/FacetFilterItem.js +1 -1
  80. package/src/sap/m/FacetFilterItemRenderer.js +1 -1
  81. package/src/sap/m/FacetFilterList.js +7 -5
  82. package/src/sap/m/FacetFilterRenderer.js +10 -10
  83. package/src/sap/m/FeedContent.js +2 -2
  84. package/src/sap/m/FeedInput.js +2 -2
  85. package/src/sap/m/FeedInputRenderer.js +1 -1
  86. package/src/sap/m/FeedListItem.js +7 -7
  87. package/src/sap/m/FeedListItemAction.js +1 -1
  88. package/src/sap/m/FeedListItemRenderer.js +12 -7
  89. package/src/sap/m/Fiori20Adapter.js +2 -2
  90. package/src/sap/m/FlexBox.js +1 -1
  91. package/src/sap/m/FlexItemData.js +1 -1
  92. package/src/sap/m/FormattedText.js +4 -1
  93. package/src/sap/m/GenericTag.js +5 -3
  94. package/src/sap/m/GenericTagRenderer.js +13 -5
  95. package/src/sap/m/GenericTile.js +62 -16
  96. package/src/sap/m/GenericTileLineModeRenderer.js +77 -3
  97. package/src/sap/m/GenericTileRenderer.js +89 -42
  98. package/src/sap/m/GroupHeaderListItem.js +1 -1
  99. package/src/sap/m/GroupHeaderListItemRenderer.js +2 -2
  100. package/src/sap/m/GrowingEnablement.js +53 -3
  101. package/src/sap/m/GrowingList.js +1 -1
  102. package/src/sap/m/HBox.js +1 -1
  103. package/src/sap/m/HBoxRenderer.js +1 -1
  104. package/src/sap/m/HeaderContainer.js +87 -16
  105. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  106. package/src/sap/m/HeaderContainerRenderer.js +1 -1
  107. package/src/sap/m/HyphenationSupport.js +1 -5
  108. package/src/sap/m/IconTabBar.js +2 -2
  109. package/src/sap/m/IconTabBarDragAndDropUtil.js +5 -4
  110. package/src/sap/m/IconTabBarSelectList.js +3 -5
  111. package/src/sap/m/IconTabFilter.js +1 -1
  112. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  113. package/src/sap/m/IconTabHeader.js +9 -13
  114. package/src/sap/m/IconTabHeaderRenderer.js +1 -1
  115. package/src/sap/m/IconTabSeparator.js +1 -1
  116. package/src/sap/m/IllustratedMessage.js +29 -8
  117. package/src/sap/m/IllustratedMessageRenderer.js +5 -5
  118. package/src/sap/m/IllustratedMessageType.js +26 -2
  119. package/src/sap/m/Illustration.js +1 -1
  120. package/src/sap/m/IllustrationRenderer.js +4 -2
  121. package/src/sap/m/Image.js +1 -1
  122. package/src/sap/m/ImageContent.js +2 -2
  123. package/src/sap/m/ImageRenderer.js +1 -1
  124. package/src/sap/m/Input.js +13 -23
  125. package/src/sap/m/InputBase.js +6 -8
  126. package/src/sap/m/InputBaseRenderer.js +53 -39
  127. package/src/sap/m/InputListItem.js +1 -1
  128. package/src/sap/m/InputListItemRenderer.js +4 -6
  129. package/src/sap/m/InputRenderer.js +12 -9
  130. package/src/sap/m/Label.js +3 -3
  131. package/src/sap/m/LabelRenderer.js +2 -2
  132. package/src/sap/m/LightBox.js +5 -5
  133. package/src/sap/m/LightBoxItem.js +2 -3
  134. package/src/sap/m/LightBoxRenderer.js +1 -1
  135. package/src/sap/m/Link.js +2 -2
  136. package/src/sap/m/LinkRenderer.js +1 -1
  137. package/src/sap/m/List.js +1 -1
  138. package/src/sap/m/ListBase.js +50 -10
  139. package/src/sap/m/ListBaseRenderer.js +38 -24
  140. package/src/sap/m/ListItemBase.js +4 -3
  141. package/src/sap/m/ListItemBaseRenderer.js +23 -23
  142. package/src/sap/m/MaskEnabler.js +11 -11
  143. package/src/sap/m/MaskInput.js +9 -1
  144. package/src/sap/m/MaskInputRenderer.js +9 -43
  145. package/src/sap/m/MaskInputRule.js +5 -5
  146. package/src/sap/m/Menu.js +1 -1
  147. package/src/sap/m/MenuButton.js +5 -1
  148. package/src/sap/m/MenuButtonRenderer.js +1 -1
  149. package/src/sap/m/MenuItem.js +1 -1
  150. package/src/sap/m/MenuListItem.js +1 -1
  151. package/src/sap/m/MenuListItemRenderer.js +2 -2
  152. package/src/sap/m/MessageBox.js +1 -1
  153. package/src/sap/m/MessageItem.js +1 -1
  154. package/src/sap/m/MessageListItem.js +1 -1
  155. package/src/sap/m/MessagePage.js +1 -1
  156. package/src/sap/m/MessagePageRenderer.js +1 -1
  157. package/src/sap/m/MessagePopover.js +19 -34
  158. package/src/sap/m/MessagePopoverItem.js +1 -1
  159. package/src/sap/m/MessagePopoverRenderer.js +1 -1
  160. package/src/sap/m/MessageStrip.js +2 -2
  161. package/src/sap/m/MessageStripRenderer.js +1 -1
  162. package/src/sap/m/MessageToast.js +1 -1
  163. package/src/sap/m/MessageView.js +3 -3
  164. package/src/sap/m/MultiComboBox.js +6 -4
  165. package/src/sap/m/MultiComboBoxRenderer.js +4 -4
  166. package/src/sap/m/MultiEditField.js +1 -1
  167. package/src/sap/m/MultiInput.js +44 -27
  168. package/src/sap/m/NavContainer.js +53 -53
  169. package/src/sap/m/NavContainerRenderer.js +1 -1
  170. package/src/sap/m/NewsContent.js +2 -2
  171. package/src/sap/m/NotificationList.js +1 -1
  172. package/src/sap/m/NotificationListBase.js +1 -1
  173. package/src/sap/m/NotificationListGroup.js +1 -1
  174. package/src/sap/m/NotificationListGroupRenderer.js +1 -1
  175. package/src/sap/m/NotificationListItem.js +1 -1
  176. package/src/sap/m/NotificationListItemRenderer.js +1 -1
  177. package/src/sap/m/NotificationListRenderer.js +2 -2
  178. package/src/sap/m/NumericContent.js +30 -22
  179. package/src/sap/m/NumericContentRenderer.js +10 -10
  180. package/src/sap/m/NumericInput.js +3 -2
  181. package/src/sap/m/NumericInputRenderer.js +13 -1
  182. package/src/sap/m/ObjectAttribute.js +4 -5
  183. package/src/sap/m/ObjectAttributeRenderer.js +3 -3
  184. package/src/sap/m/ObjectHeader.js +20 -7
  185. package/src/sap/m/ObjectHeaderRenderer.js +3 -3
  186. package/src/sap/m/ObjectIdentifier.js +3 -3
  187. package/src/sap/m/ObjectIdentifierRenderer.js +1 -1
  188. package/src/sap/m/ObjectListItem.js +1 -1
  189. package/src/sap/m/ObjectListItemRenderer.js +2 -2
  190. package/src/sap/m/ObjectMarker.js +35 -11
  191. package/src/sap/m/ObjectMarkerRenderer.js +15 -3
  192. package/src/sap/m/ObjectNumber.js +1 -1
  193. package/src/sap/m/ObjectNumberRenderer.js +1 -2
  194. package/src/sap/m/ObjectStatus.js +1 -1
  195. package/src/sap/m/ObjectStatusRenderer.js +4 -5
  196. package/src/sap/m/OverflowToolbar.js +23 -3
  197. package/src/sap/m/OverflowToolbarAssociativePopover.js +2 -2
  198. package/src/sap/m/OverflowToolbarButton.js +1 -1
  199. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  200. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  201. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  202. package/src/sap/m/P13nColumnsItem.js +1 -1
  203. package/src/sap/m/P13nColumnsPanel.js +1 -1
  204. package/src/sap/m/P13nConditionPanel.js +2 -2
  205. package/src/sap/m/P13nDialog.js +1 -1
  206. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  207. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  208. package/src/sap/m/P13nFilterItem.js +1 -1
  209. package/src/sap/m/P13nFilterPanel.js +1 -1
  210. package/src/sap/m/P13nGroupItem.js +1 -1
  211. package/src/sap/m/P13nGroupPanel.js +3 -3
  212. package/src/sap/m/P13nItem.js +1 -1
  213. package/src/sap/m/P13nPanel.js +1 -1
  214. package/src/sap/m/P13nSelectionItem.js +1 -1
  215. package/src/sap/m/P13nSelectionPanel.js +1 -1
  216. package/src/sap/m/P13nSortItem.js +1 -1
  217. package/src/sap/m/P13nSortPanel.js +1 -1
  218. package/src/sap/m/PDFViewer.js +4 -3
  219. package/src/sap/m/PDFViewerRenderer.js +15 -7
  220. package/src/sap/m/Page.js +1 -1
  221. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  222. package/src/sap/m/PagingButton.js +1 -1
  223. package/src/sap/m/Panel.js +1 -1
  224. package/src/sap/m/PanelRenderer.js +1 -1
  225. package/src/sap/m/PlanningCalendar.js +16 -15
  226. package/src/sap/m/PlanningCalendarHeader.js +1 -4
  227. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  228. package/src/sap/m/PlanningCalendarRow.js +1 -1
  229. package/src/sap/m/PlanningCalendarView.js +1 -1
  230. package/src/sap/m/Popover.js +25 -9
  231. package/src/sap/m/PopoverRenderer.js +1 -1
  232. package/src/sap/m/ProgressIndicator.js +3 -3
  233. package/src/sap/m/ProgressIndicatorRenderer.js +1 -1
  234. package/src/sap/m/PullToRefresh.js +1 -1
  235. package/src/sap/m/PullToRefreshRenderer.js +2 -2
  236. package/src/sap/m/QuickView.js +1 -1
  237. package/src/sap/m/QuickViewBase.js +1 -1
  238. package/src/sap/m/QuickViewCard.js +1 -1
  239. package/src/sap/m/QuickViewCardRenderer.js +1 -1
  240. package/src/sap/m/QuickViewGroup.js +1 -1
  241. package/src/sap/m/QuickViewGroupElement.js +1 -1
  242. package/src/sap/m/QuickViewPage.js +5 -2
  243. package/src/sap/m/QuickViewPageRenderer.js +1 -1
  244. package/src/sap/m/RadioButton.js +1 -1
  245. package/src/sap/m/RadioButtonGroup.js +14 -2
  246. package/src/sap/m/RadioButtonRenderer.js +1 -2
  247. package/src/sap/m/RangeSlider.js +17 -6
  248. package/src/sap/m/RangeSliderRenderer.js +5 -5
  249. package/src/sap/m/RatingIndicator.js +2 -2
  250. package/src/sap/m/RatingIndicatorRenderer.js +1 -1
  251. package/src/sap/m/ResponsivePopover.js +3 -5
  252. package/src/sap/m/ResponsivePopoverRenderer.js +1 -1
  253. package/src/sap/m/ResponsiveScale.js +1 -1
  254. package/src/sap/m/ScrollBar.js +3 -3
  255. package/src/sap/m/ScrollBarRenderer.js +1 -1
  256. package/src/sap/m/ScrollContainer.js +1 -1
  257. package/src/sap/m/ScrollContainerRenderer.js +1 -1
  258. package/src/sap/m/SearchField.js +2 -2
  259. package/src/sap/m/SegmentedButton.js +17 -7
  260. package/src/sap/m/SegmentedButtonItem.js +1 -1
  261. package/src/sap/m/SegmentedButtonRenderer.js +2 -2
  262. package/src/sap/m/Select.js +36 -6
  263. package/src/sap/m/SelectDialog.js +4 -4
  264. package/src/sap/m/SelectDialogBase.js +1 -1
  265. package/src/sap/m/SelectList.js +4 -3
  266. package/src/sap/m/SelectListRenderer.js +5 -5
  267. package/src/sap/m/SelectRenderer.js +5 -5
  268. package/src/sap/m/SelectionDetails.js +3 -5
  269. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  270. package/src/sap/m/SelectionDetailsItem.js +1 -1
  271. package/src/sap/m/SelectionDetailsItemLine.js +3 -3
  272. package/src/sap/m/SelectionDetailsRenderer.js +1 -1
  273. package/src/sap/m/Shell.js +1 -1
  274. package/src/sap/m/ShellRenderer.js +1 -1
  275. package/src/sap/m/SimpleFixFlex.js +1 -1
  276. package/src/sap/m/SimpleFixFlexRenderer.js +1 -1
  277. package/src/sap/m/SinglePlanningCalendar.js +21 -2
  278. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  279. package/src/sap/m/SinglePlanningCalendarGrid.js +118 -67
  280. package/src/sap/m/SinglePlanningCalendarGridRenderer.js +16 -14
  281. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +24 -10
  282. package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +1 -1
  283. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  284. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  285. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  286. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  287. package/src/sap/m/SlideTile.js +2 -2
  288. package/src/sap/m/SlideTileRenderer.js +9 -2
  289. package/src/sap/m/Slider.js +1 -1
  290. package/src/sap/m/SliderRenderer.js +9 -9
  291. package/src/sap/m/SliderTooltip.js +3 -3
  292. package/src/sap/m/SliderTooltipBase.js +1 -1
  293. package/src/sap/m/SliderTooltipBaseRenderer.js +2 -2
  294. package/src/sap/m/SliderTooltipContainer.js +6 -2
  295. package/src/sap/m/SliderTooltipContainerRenderer.js +1 -1
  296. package/src/sap/m/SliderTooltipRenderer.js +1 -1
  297. package/src/sap/m/SplitApp.js +1 -1
  298. package/src/sap/m/SplitButton.js +3 -1
  299. package/src/sap/m/SplitButtonRenderer.js +1 -1
  300. package/src/sap/m/SplitContainer.js +24 -31
  301. package/src/sap/m/StandardDynamicDateOption.js +154 -12
  302. package/src/sap/m/StandardListItem.js +1 -1
  303. package/src/sap/m/StandardListItemRenderer.js +8 -8
  304. package/src/sap/m/StandardTile.js +1 -1
  305. package/src/sap/m/StandardTileRenderer.js +1 -1
  306. package/src/sap/m/StandardTreeItem.js +1 -1
  307. package/src/sap/m/StepInput.js +4 -4
  308. package/src/sap/m/SuggestionItem.js +1 -1
  309. package/src/sap/m/SuggestionsPopover.js +7 -22
  310. package/src/sap/m/Switch.js +1 -1
  311. package/src/sap/m/SwitchRenderer.js +3 -3
  312. package/src/sap/m/TabContainer.js +1 -1
  313. package/src/sap/m/TabContainerItem.js +1 -3
  314. package/src/sap/m/TabContainerRenderer.js +2 -2
  315. package/src/sap/m/TabStrip.js +2 -2
  316. package/src/sap/m/TabStripItem.js +1 -1
  317. package/src/sap/m/TabStripRenderer.js +2 -2
  318. package/src/sap/m/Table.js +41 -9
  319. package/src/sap/m/TablePersoController.js +1 -1
  320. package/src/sap/m/TablePersoDialog.js +1 -1
  321. package/src/sap/m/TablePersoProvider.js +1 -1
  322. package/src/sap/m/TableRenderer.js +10 -5
  323. package/src/sap/m/TableSelectDialog.js +19 -19
  324. package/src/sap/m/Text.js +1 -1
  325. package/src/sap/m/TextArea.js +1 -1
  326. package/src/sap/m/TextAreaRenderer.js +1 -1
  327. package/src/sap/m/Tile.js +3 -3
  328. package/src/sap/m/TileContainer.js +6 -4
  329. package/src/sap/m/TileContainerRenderer.js +1 -1
  330. package/src/sap/m/TileContent.js +37 -5
  331. package/src/sap/m/TileContentRenderer.js +43 -6
  332. package/src/sap/m/TileRenderer.js +2 -2
  333. package/src/sap/m/TimePicker.js +4 -56
  334. package/src/sap/m/TimePickerClock.js +5 -6
  335. package/src/sap/m/TimePickerClockRenderer.js +1 -1
  336. package/src/sap/m/TimePickerClocks.js +6 -5
  337. package/src/sap/m/TimePickerClocksRenderer.js +3 -3
  338. package/src/sap/m/TimePickerInputs.js +1 -1
  339. package/src/sap/m/TimePickerInputsRenderer.js +1 -1
  340. package/src/sap/m/TimePickerInternals.js +8 -6
  341. package/src/sap/m/TimePickerRenderer.js +5 -17
  342. package/src/sap/m/TimePickerSlider.js +2 -2
  343. package/src/sap/m/TimePickerSliderRenderer.js +2 -2
  344. package/src/sap/m/TimePickerSliders.js +7 -5
  345. package/src/sap/m/TimePickerSlidersRenderer.js +1 -1
  346. package/src/sap/m/Title.js +1 -5
  347. package/src/sap/m/TitlePropagationSupport.js +1 -1
  348. package/src/sap/m/TitleRenderer.js +2 -2
  349. package/src/sap/m/ToggleButton.js +1 -1
  350. package/src/sap/m/Token.js +1 -2
  351. package/src/sap/m/TokenRenderer.js +21 -3
  352. package/src/sap/m/Tokenizer.js +8 -8
  353. package/src/sap/m/TokenizerRenderer.js +41 -7
  354. package/src/sap/m/Toolbar.js +5 -5
  355. package/src/sap/m/ToolbarLayoutData.js +1 -1
  356. package/src/sap/m/ToolbarRenderer.js +3 -3
  357. package/src/sap/m/ToolbarSeparator.js +5 -3
  358. package/src/sap/m/ToolbarSpacer.js +1 -1
  359. package/src/sap/m/Tree.js +1 -1
  360. package/src/sap/m/TreeItemBase.js +6 -6
  361. package/src/sap/m/TreeItemBaseRenderer.js +2 -2
  362. package/src/sap/m/TreeRenderer.js +2 -2
  363. package/src/sap/m/UploadCollection.js +5 -3
  364. package/src/sap/m/UploadCollectionItem.js +1 -1
  365. package/src/sap/m/UploadCollectionParameter.js +1 -1
  366. package/src/sap/m/UploadCollectionRenderer.js +2 -1
  367. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  368. package/src/sap/m/VBox.js +1 -1
  369. package/src/sap/m/VBoxRenderer.js +1 -1
  370. package/src/sap/m/ValueStateHeader.js +1 -1
  371. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  372. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  373. package/src/sap/m/ViewSettingsDialog.js +118 -61
  374. package/src/sap/m/ViewSettingsDialogRenderer.js +1 -1
  375. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  376. package/src/sap/m/ViewSettingsItem.js +1 -1
  377. package/src/sap/m/VisibleItem.js +2 -2
  378. package/src/sap/m/WheelSlider.js +1 -1
  379. package/src/sap/m/WheelSliderContainer.js +1 -1
  380. package/src/sap/m/WheelSliderContainerRenderer.js +1 -1
  381. package/src/sap/m/WheelSliderRenderer.js +2 -2
  382. package/src/sap/m/Wizard.js +22 -4
  383. package/src/sap/m/WizardProgressNavigator.js +10 -3
  384. package/src/sap/m/WizardStep.js +1 -1
  385. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  386. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  387. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  388. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  389. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  390. package/src/sap/m/changeHandler/SplitMenuButton.js +5 -5
  391. package/src/sap/m/delegate/DateNavigation.js +2 -2
  392. package/src/sap/m/designtime/ListBase.designtime.js +29 -0
  393. package/src/sap/m/inputUtils/SuggestionsPopoverDialogMixin.js +22 -16
  394. package/src/sap/m/inputUtils/SuggestionsPopoverPopoverMixin.js +10 -2
  395. package/src/sap/m/inputUtils/highlightDOMElements.js +1 -1
  396. package/src/sap/m/inputUtils/typeAhead.js +7 -7
  397. package/src/sap/m/library.js +74 -38
  398. package/src/sap/m/messagebundle.properties +80 -20
  399. package/src/sap/m/messagebundle_ar.properties +48 -14
  400. package/src/sap/m/messagebundle_bg.properties +77 -43
  401. package/src/sap/m/messagebundle_ca.properties +48 -14
  402. package/src/sap/m/messagebundle_cs.properties +50 -16
  403. package/src/sap/m/messagebundle_cy.properties +48 -14
  404. package/src/sap/m/messagebundle_da.properties +49 -15
  405. package/src/sap/m/messagebundle_de.properties +49 -15
  406. package/src/sap/m/messagebundle_el.properties +53 -19
  407. package/src/sap/m/messagebundle_en.properties +46 -12
  408. package/src/sap/m/messagebundle_en_GB.properties +46 -12
  409. package/src/sap/m/messagebundle_en_US_sappsd.properties +48 -12
  410. package/src/sap/m/messagebundle_en_US_saprigi.properties +291 -66
  411. package/src/sap/m/messagebundle_en_US_saptrc.properties +46 -12
  412. package/src/sap/m/messagebundle_es.properties +48 -14
  413. package/src/sap/m/messagebundle_es_MX.properties +48 -14
  414. package/src/sap/m/messagebundle_et.properties +48 -14
  415. package/src/sap/m/messagebundle_fi.properties +49 -15
  416. package/src/sap/m/messagebundle_fr.properties +61 -27
  417. package/src/sap/m/messagebundle_fr_CA.properties +47 -13
  418. package/src/sap/m/messagebundle_hi.properties +46 -12
  419. package/src/sap/m/messagebundle_hr.properties +48 -14
  420. package/src/sap/m/messagebundle_hu.properties +49 -15
  421. package/src/sap/m/messagebundle_id.properties +48 -14
  422. package/src/sap/m/messagebundle_it.properties +55 -21
  423. package/src/sap/m/messagebundle_iw.properties +48 -14
  424. package/src/sap/m/messagebundle_ja.properties +51 -17
  425. package/src/sap/m/messagebundle_kk.properties +48 -14
  426. package/src/sap/m/messagebundle_ko.properties +48 -14
  427. package/src/sap/m/messagebundle_lt.properties +48 -14
  428. package/src/sap/m/messagebundle_lv.properties +48 -14
  429. package/src/sap/m/messagebundle_ms.properties +47 -13
  430. package/src/sap/m/messagebundle_nl.properties +48 -14
  431. package/src/sap/m/messagebundle_no.properties +48 -14
  432. package/src/sap/m/messagebundle_pl.properties +48 -14
  433. package/src/sap/m/messagebundle_pt.properties +71 -37
  434. package/src/sap/m/messagebundle_pt_PT.properties +49 -15
  435. package/src/sap/m/messagebundle_ro.properties +48 -14
  436. package/src/sap/m/messagebundle_ru.properties +48 -14
  437. package/src/sap/m/messagebundle_sh.properties +48 -14
  438. package/src/sap/m/messagebundle_sk.properties +48 -14
  439. package/src/sap/m/messagebundle_sl.properties +48 -14
  440. package/src/sap/m/messagebundle_sv.properties +49 -15
  441. package/src/sap/m/messagebundle_th.properties +55 -21
  442. package/src/sap/m/messagebundle_tr.properties +48 -14
  443. package/src/sap/m/messagebundle_uk.properties +48 -14
  444. package/src/sap/m/messagebundle_vi.properties +47 -13
  445. package/src/sap/m/messagebundle_zh_CN.properties +48 -14
  446. package/src/sap/m/messagebundle_zh_TW.properties +47 -13
  447. package/src/sap/m/p13n/AbstractContainer.js +15 -8
  448. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  449. package/src/sap/m/p13n/BasePanel.js +39 -20
  450. package/src/sap/m/p13n/Container.js +20 -14
  451. package/src/sap/m/p13n/GroupPanel.js +6 -5
  452. package/src/sap/m/p13n/Popup.js +9 -2
  453. package/src/sap/m/p13n/QueryPanel.js +93 -30
  454. package/src/sap/m/p13n/SelectionPanel.js +16 -8
  455. package/src/sap/m/p13n/SortPanel.js +9 -6
  456. package/src/sap/m/plugins/ColumnResizer.js +38 -9
  457. package/src/sap/m/plugins/DataStateIndicator.js +1 -1
  458. package/src/sap/m/plugins/PasteProvider.js +1 -1
  459. package/src/sap/m/plugins/PluginBase.js +1 -1
  460. package/src/sap/m/rules/Breadcrumbs.support.js +1 -1
  461. package/src/sap/m/rules/MessagePage.support.js +1 -1
  462. package/src/sap/m/rules/Tokenizer.support.js +4 -2
  463. package/src/sap/m/semantic/AddAction.js +1 -1
  464. package/src/sap/m/semantic/CancelAction.js +1 -1
  465. package/src/sap/m/semantic/DeleteAction.js +1 -1
  466. package/src/sap/m/semantic/DetailPage.js +1 -1
  467. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  468. package/src/sap/m/semantic/EditAction.js +1 -1
  469. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  470. package/src/sap/m/semantic/FilterAction.js +1 -1
  471. package/src/sap/m/semantic/FilterSelect.js +1 -1
  472. package/src/sap/m/semantic/FlagAction.js +1 -1
  473. package/src/sap/m/semantic/ForwardAction.js +1 -1
  474. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  475. package/src/sap/m/semantic/GroupAction.js +1 -1
  476. package/src/sap/m/semantic/GroupSelect.js +1 -1
  477. package/src/sap/m/semantic/MainAction.js +1 -1
  478. package/src/sap/m/semantic/MasterPage.js +1 -1
  479. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  480. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  481. package/src/sap/m/semantic/NegativeAction.js +1 -1
  482. package/src/sap/m/semantic/OpenInAction.js +1 -1
  483. package/src/sap/m/semantic/PositiveAction.js +1 -1
  484. package/src/sap/m/semantic/PrintAction.js +1 -1
  485. package/src/sap/m/semantic/SaveAction.js +1 -1
  486. package/src/sap/m/semantic/Segment.js +1 -1
  487. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  488. package/src/sap/m/semantic/SemanticButton.js +1 -1
  489. package/src/sap/m/semantic/SemanticConfiguration.js +7 -14
  490. package/src/sap/m/semantic/SemanticControl.js +1 -1
  491. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  492. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  493. package/src/sap/m/semantic/SemanticPage.js +1 -1
  494. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  495. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  496. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  497. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  498. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  499. package/src/sap/m/semantic/ShareMenu.js +2 -2
  500. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  501. package/src/sap/m/semantic/SortAction.js +1 -1
  502. package/src/sap/m/semantic/SortSelect.js +1 -1
  503. package/src/sap/m/table/Util.js +104 -23
  504. package/src/sap/m/table/{ActionItem.js → columnmenu/ActionItem.js} +9 -10
  505. package/src/sap/m/table/{ColumnMenuEntry.js → columnmenu/Entry.js} +16 -16
  506. package/src/sap/m/table/{Item.js → columnmenu/Item.js} +8 -8
  507. package/src/sap/m/table/{ItemBase.js → columnmenu/ItemBase.js} +11 -12
  508. package/src/sap/m/table/columnmenu/ItemContainer.js +29 -0
  509. package/src/sap/m/table/columnmenu/Menu.js +556 -0
  510. package/src/sap/m/table/columnmenu/MenuRenderer.js +57 -0
  511. package/src/sap/m/table/columnmenu/QuickAction.js +65 -0
  512. package/src/sap/m/table/columnmenu/QuickActionBase.js +54 -0
  513. package/src/sap/m/table/columnmenu/QuickActionContainer.js +29 -0
  514. package/src/sap/m/table/columnmenu/QuickActionItem.js +51 -0
  515. package/src/sap/m/table/columnmenu/QuickGroup.js +146 -0
  516. package/src/sap/m/table/columnmenu/QuickGroupItem.js +59 -0
  517. package/src/sap/m/table/columnmenu/QuickSort.js +80 -0
  518. package/src/sap/m/table/columnmenu/QuickSortItem.js +118 -0
  519. package/src/sap/m/table/columnmenu/QuickTotal.js +157 -0
  520. package/src/sap/m/table/columnmenu/QuickTotalItem.js +59 -0
  521. package/src/sap/m/themes/base/AbstractContainer.less +2 -3
  522. package/src/sap/m/themes/base/Avatar.less +11 -5
  523. package/src/sap/m/themes/base/Button.less +2 -2
  524. package/src/sap/m/themes/base/Carousel.less +5 -0
  525. package/src/sap/m/themes/base/CheckBox.less +0 -5
  526. package/src/sap/m/themes/base/ColumnMenu.less +17 -13
  527. package/src/sap/m/themes/base/DatePicker.less +7 -2
  528. package/src/sap/m/themes/base/DateTimePicker.less +147 -1
  529. package/src/sap/m/themes/base/Dialog.less +4 -6
  530. package/src/sap/m/themes/base/DynamicDateRange.less +3 -1
  531. package/src/sap/m/themes/base/FeedListItem.less +1 -1
  532. package/src/sap/m/themes/base/GenericTile.less +418 -55
  533. package/src/sap/m/themes/base/HeaderContainer.less +25 -0
  534. package/src/sap/m/themes/base/IconTabBar.less +45 -14
  535. package/src/sap/m/themes/base/IllustratedMessage.less +16 -16
  536. package/src/sap/m/themes/base/Input.less +1 -1
  537. package/src/sap/m/themes/base/InputBase.less +112 -10
  538. package/src/sap/m/themes/base/Label.less +4 -1
  539. package/src/sap/m/themes/base/Link.less +12 -4
  540. package/src/sap/m/themes/base/ListBase.less +4 -0
  541. package/src/sap/m/themes/base/MenuButton.less +4 -4
  542. package/src/sap/m/themes/base/MessageToast.less +2 -2
  543. package/src/sap/m/themes/base/MultiInput.less +1 -1
  544. package/src/sap/m/themes/base/NewsContent.less +7 -0
  545. package/src/sap/m/themes/base/NumericContent.less +1 -5
  546. package/src/sap/m/themes/base/ObjectAttribute.less +1 -1
  547. package/src/sap/m/themes/base/ObjectMarker.less +3 -1
  548. package/src/sap/m/themes/base/ObjectStatus.less +5 -0
  549. package/src/sap/m/themes/base/Page.less +1 -1
  550. package/src/sap/m/themes/base/Popover.less +10 -7
  551. package/src/sap/m/themes/base/RadioButton.less +22 -3
  552. package/src/sap/m/themes/base/SearchField.less +23 -59
  553. package/src/sap/m/themes/base/SplitButton.less +5 -0
  554. package/src/sap/m/themes/base/SuggestionsPopover.less +1 -1
  555. package/src/sap/m/themes/base/TextArea.less +27 -0
  556. package/src/sap/m/themes/base/TileContent.less +45 -1
  557. package/src/sap/m/themes/base/Token.less +14 -13
  558. package/src/sap/m/themes/base/Tokenizer.less +2 -2
  559. package/src/sap/m/themes/base/ValueStateMessage.less +3 -3
  560. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-EmptyCalendar.svg +73 -72
  561. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-EmptyList.svg +33 -18
  562. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-NoEntries.svg +1 -3
  563. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-NoNotifications.svg +3 -5
  564. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SimpleBell.svg +12 -9
  565. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SimpleCalendar.svg +41 -40
  566. package/src/sap/m/themes/base/illustrations/{sapIllus-Dialog-SimpleCheckmark.svg → sapIllus-Dialog-SimpleCheckMark.svg} +1 -1
  567. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SleepingBell.svg +29 -22
  568. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SuccessBalloon.svg +16 -0
  569. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SuccessCheckMark.svg +8 -0
  570. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SuccessHighFive.svg +45 -0
  571. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-Tent.svg +28 -23
  572. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-UnableToLoadImage.svg +38 -0
  573. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-Connection.svg +27 -27
  574. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-EmptyCalendar.svg +86 -85
  575. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-EmptyList.svg +42 -26
  576. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-NoData.svg +0 -2
  577. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-NoEntries.svg +0 -2
  578. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SimpleBell.svg +15 -12
  579. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SimpleCalendar.svg +43 -42
  580. package/src/sap/m/themes/base/illustrations/{sapIllus-Scene-SimpleCheckmark.svg → sapIllus-Scene-SimpleCheckMark.svg} +1 -1
  581. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SleepingBell.svg +49 -42
  582. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SuccessBalloon.svg +33 -0
  583. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SuccessCheckMark.svg +43 -0
  584. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SuccessHighFive.svg +27 -0
  585. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-Tent.svg +58 -53
  586. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-UnableToLoadImage.svg +35 -0
  587. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-EmptyCalendar.svg +42 -41
  588. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-EmptyList.svg +24 -16
  589. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-NoEntries.svg +10 -20
  590. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-NoNotifications.svg +8 -13
  591. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SimpleBell.svg +11 -8
  592. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SimpleCalendar.svg +37 -39
  593. package/src/sap/m/themes/base/illustrations/{sapIllus-Spot-SimpleCheckmark.svg → sapIllus-Spot-SimpleCheckMark.svg} +1 -1
  594. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SleepingBell.svg +38 -22
  595. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SuccessBalloon.svg +19 -0
  596. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SuccessCheckMark.svg +7 -0
  597. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SuccessHighFive.svg +31 -0
  598. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-Tent.svg +28 -23
  599. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-UnableToLoadImage.svg +36 -0
  600. package/src/sap/m/themes/sap_hcb/ComboBoxBase.less +0 -12
  601. package/src/sap/m/themes/sap_hcb/InputBase.less +7 -42
  602. package/src/sap/m/themes/sap_hcb/Popover.less +3 -0
  603. package/src/sap/m/themes/sap_hcb/Token.less +4 -0
  604. package/src/sap/m/themes/sap_hcb/ValueStateHeader.less +4 -0
  605. package/src/sap/m/themes/sap_hcb/ValueStateMessage.less +12 -1
  606. package/src/sap/m/upload/UploadSet.js +421 -59
  607. package/src/sap/m/upload/UploadSetItem.js +77 -8
  608. package/src/sap/m/upload/UploadSetRenderer.js +1 -1
  609. package/src/sap/m/table/ColumnMenu.js +0 -378
  610. package/src/sap/m/table/ColumnMenuRenderer.js +0 -82
  611. package/src/sap/m/table/QuickAction.js +0 -53
  612. package/src/sap/m/table/QuickActionBase.js +0 -53
  613. package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-NewMail.svg +0 -21
  614. package/src/sap/m/themes/base/illustrations/sapIllus-Scene-NewMail.svg +0 -54
  615. package/src/sap/m/themes/base/illustrations/sapIllus-Spot-NewMail.svg +0 -18
@@ -15,6 +15,14 @@ sap.ui.define(['sap/ui/core/Renderer', './DatePickerRenderer', './InputBaseRende
15
15
 
16
16
  DateTimePickerRenderer.apiVersion = 2;
17
17
 
18
+ DateTimePickerRenderer.writeInnerValue = function(oRm, oControl) {
19
+ if (!oControl.getDateValue() && typeof oControl._prefferedValue === "string") {
20
+ oRm.attr("value", oControl._prefferedValue);
21
+ } else {
22
+ DatePickerRenderer.writeInnerValue.apply(this, arguments);
23
+ }
24
+ };
25
+
18
26
  DateTimePickerRenderer.getDescribedByAnnouncement = function(oDP) {
19
27
 
20
28
  var sBaseAnnouncement = InputBaseRenderer.getDescribedByAnnouncement.apply(this, arguments);
@@ -30,6 +38,55 @@ sap.ui.define(['sap/ui/core/Renderer', './DatePickerRenderer', './InputBaseRende
30
38
  return mAccessibilityState;
31
39
  };
32
40
 
41
+ DateTimePickerRenderer.writeAdditionalContent = function(oRm, oControl) {
42
+ var sTimezone = oControl._getTimezone(true);
43
+
44
+ if (!oControl._getShowTimezone()) {
45
+ return;
46
+ }
47
+
48
+ oRm.openStart("div", oControl.getId() + "-timezoneLabel");
49
+ oRm.class("sapMDTPTimezoneLabel");
50
+ oRm.openEnd();
51
+
52
+ oRm.openStart("span", oControl.getId() + "-timezoneID");
53
+ oRm.openEnd();
54
+ oRm.text(sTimezone);
55
+ oRm.close("span");
56
+
57
+ oRm.close("div");
58
+
59
+ oRm.openStart("span");
60
+ oRm.class("sapMDummyContent");
61
+ oRm.openEnd();
62
+
63
+ // try to choose the date that is the longest when formatted
64
+ oRm.text(oControl._getFormatter(true).format(
65
+ new Date(Date.UTC(2000, 10, 20, 10, 10, 10)),
66
+ "UTC"));
67
+ oRm.close("span");
68
+ };
69
+
70
+ DateTimePickerRenderer.addOuterClasses = function(oRm, oControl) {
71
+ DatePickerRenderer.addOuterClasses(oRm, oControl);
72
+
73
+ oRm.class("sapMDTP");
74
+
75
+ if (oControl._getShowTimezone()) {
76
+ oRm.class("sapMDTPWithTimezone");
77
+ }
78
+ };
79
+
80
+ DateTimePickerRenderer.getAriaDescribedBy = function(oControl) {
81
+ var sDescribedBy = InputBaseRenderer.getAriaDescribedBy.apply(this, arguments);
82
+
83
+ if (oControl._getShowTimezone()) {
84
+ sDescribedBy += " " + oControl.getId() + "-timezoneID";
85
+ }
86
+
87
+ return sDescribedBy;
88
+ };
89
+
33
90
  return DateTimePickerRenderer;
34
91
 
35
92
  }, /* bExport= */ true);
@@ -164,7 +164,7 @@ function(
164
164
  * <li>If the <code>contentWidth</code> and/or <code>contentHeight</code> properties are set, the Dialog will try to fill those sizes.</li>
165
165
  * <li>If there is no specific sizing, the Dialog will try to adjust its size to its content.</li>
166
166
  * </ul>
167
- * When using the <code>sap.m.Dialog</code> in SAP Quartz themes, the breakpoints and layout paddings could be determined by the Dialog's width. To enable this concept and add responsive paddings to an element of the Dialog control, you have to add the following classes depending on your use case: <code>sapUiResponsivePadding--header</code>, <code>sapUiResponsivePadding--subHeader</code>, <code>sapUiResponsivePadding--content</code>, <code>sapUiResponsivePadding--footer</code>.
167
+ * When using the <code>sap.m.Dialog</code> in SAP Quartz and Horizon themes, the breakpoints and layout paddings could be determined by the Dialog's width. To enable this concept and add responsive paddings to an element of the Dialog control, you have to add the following classes depending on your use case: <code>sapUiResponsivePadding--header</code>, <code>sapUiResponsivePadding--subHeader</code>, <code>sapUiResponsivePadding--content</code>, <code>sapUiResponsivePadding--footer</code>.
168
168
  * <h4>Smartphones</h4>
169
169
  * If the Dialog has one or two actions, they will cover the entire footer. If there are more actions, they will overflow.
170
170
  * <h4>Tablets</h4>
@@ -175,7 +175,7 @@ function(
175
175
  *
176
176
  * @implements sap.ui.core.PopupInterface
177
177
  * @author SAP SE
178
- * @version 1.98.0
178
+ * @version 1.101.0
179
179
  *
180
180
  * @constructor
181
181
  * @public
@@ -325,13 +325,23 @@ function(
325
325
  customHeader: {type: "sap.m.IBar", multiple: false},
326
326
 
327
327
  /**
328
- * The button which is rendered to the left side (right side in RTL mode) of the <code>endButton</code> in the footer area inside the Dialog. As of version 1.21.1, there's a new aggregation <code>buttons</code> created with which more than 2 buttons can be added to the footer area of the Dialog. If the new <code>buttons</code> aggregation is set, any change made to this aggregation has no effect anymore. With the Belize themes when running on a phone, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered at the center of the footer area. While with the Quartz themes when running on a phone, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered on the right side of the footer area. When running on other platforms, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered at the right side (left side in RTL mode) of the footer area.
328
+ * The button which is rendered to the left side (right side in RTL mode) of the <code>endButton</code> in the footer area inside the Dialog.
329
+ * As of version 1.21.1, there's a new aggregation <code>buttons</code> created with which more than 2 buttons can be added to the footer area of the Dialog.
330
+ * If the new <code>buttons</code> aggregation is set, any change made to this aggregation has no effect anymore.
331
+ * With the Belize themes when running on a phone, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered at the center of the footer area.
332
+ * While with the Quartz themes when running on a phone, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered on the right side of the footer area.
333
+ * When running on other platforms, this <code>button</code> (and the <code>endButton</code> together when set) is (are) rendered at the right side (left side in RTL mode) of the footer area.
329
334
  * @since 1.15.1
330
335
  */
331
336
  beginButton: {type: "sap.m.Button", multiple: false},
332
337
 
333
338
  /**
334
- * The button which is rendered to the right side (left side in RTL mode) of the <code>beginButton</code> in the footer area inside the Dialog. As of version 1.21.1, there's a new aggregation <code>buttons</code> created with which more than 2 buttons can be added to the footer area of Dialog. If the new <code>buttons</code> aggregation is set, any change made to this aggregation has no effect anymore. With the Belize themes when running on a phone, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered at the center of the footer area. While with the Quartz themes when running on a phone, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered on the right side of the footer area. When running on other platforms, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered at the right side (left side in RTL mode) of the footer area.
339
+ * The button which is rendered to the right side (left side in RTL mode) of the <code>beginButton</code> in the footer area inside the Dialog.
340
+ * As of version 1.21.1, there's a new aggregation <code>buttons</code> created with which more than 2 buttons can be added to the footer area of Dialog.
341
+ * If the new <code>buttons</code> aggregation is set, any change made to this aggregation has no effect anymore.
342
+ * With the Belize themes when running on a phone, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered at the center of the footer area.
343
+ * While with the Quartz themes when running on a phone, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered on the right side of the footer area.
344
+ * When running on other platforms, this <code>button</code> (and the <code>beginButton</code> together when set) is (are) rendered at the right side (left side in RTL mode) of the footer area.
335
345
  * @since 1.15.1
336
346
  */
337
347
  endButton: {type: "sap.m.Button", multiple: false},
@@ -550,10 +560,13 @@ function(
550
560
  this._createToolbarButtons();
551
561
 
552
562
  if (Core.getConfiguration().getAccessibility() && this.getState() != ValueState.None) {
553
- var oValueState = new InvisibleText({text: this.getValueStateString(this.getState())});
563
+ if (!this._oValueState) {
564
+ this._oValueState = new InvisibleText();
554
565
 
555
- this.setAggregation("_valueState", oValueState);
556
- this.addAriaLabelledBy(oValueState.getId());
566
+ this.setAggregation("_valueState", this._oValueState);
567
+ this.addAriaLabelledBy(this._oValueState.getId());
568
+ }
569
+ this._oValueState.setText(this.getValueStateString(this.getState()));
557
570
  }
558
571
 
559
572
  // title alignment
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * Renders the HTML for the Dialog control, using the provided {@link sap.ui.core.RenderManager}.
41
41
  *
42
42
  * @param {sap.ui.core.RenderManager} oRM The RenderManager that can be used for writing to the render output buffer.
43
- * @param {sap.ui.core.Control} oDialog An object representation of the control that should be rendered.
43
+ * @param {sap.m.Dialog} oDialog An object representation of the control that should be rendered.
44
44
  */
45
45
  DialogRenderer.render = function (oRM, oDialog) {
46
46
  var sId = oDialog.getId(),
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.m.ListItemBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.98.0
33
+ * @version 1.101.0
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -24,12 +24,10 @@ sap.ui.define(["sap/ui/core/library", "sap/ui/core/Renderer", "./ListItemBaseRen
24
24
  * Renders the HTML for the given control, using the provided
25
25
  * {@link sap.ui.core.RenderManager}.
26
26
  *
27
- * @param {sap.ui.core.RenderManager}
28
- * oRenderManager the RenderManager that can be used for writing to the
29
- * Render-Output-Buffer
30
- * @param {sap.ui.core.Control}
31
- * oControl an object representation of the control that should be
32
- * rendered
27
+ * @param {sap.ui.core.RenderManager} rm
28
+ * RenderManager that can be used to render the control's DOM
29
+ * @param {sap.m.DisplayListItem} oLI
30
+ * The item to be rendered
33
31
  */
34
32
  DisplayListItemRenderer.renderLIAttributes = function(rm, oLI) {
35
33
  rm.class("sapMDLI");
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @abstract
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.98.0
30
+ * @version 1.101.0
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -20,7 +20,7 @@ sap.ui.define([],
20
20
  * Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
21
21
  *
22
22
  * @param {sap.ui.core.RenderManager} oRm the RenderManager that can be used for writing to the render output buffer
23
- * @param {sap.ui.core.Control} oControl an object representation of the control that should be rendered
23
+ * @param {sap.m.DraftIndicator} oControl an object representation of the control that should be rendered
24
24
  */
25
25
  DraftIndicatorRenderer.render = function(oRm, oControl) {
26
26
 
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.98.0
39
+ * @version 1.101.0
40
40
  *
41
41
  * @constructor
42
42
  * @public
@@ -88,7 +88,7 @@ sap.ui.define([
88
88
  var aValueTypes = DynamicDateUtil.getOption(oValue.operator).getValueTypes();
89
89
 
90
90
  oResult.values = oResult.values.map(function(oValue, index) {
91
- if (aValueTypes[index] === "date") {
91
+ if (aValueTypes[index] === "date" || aValueTypes[index] === "datetime") {
92
92
  return oTimestampInputFormat.parse(oValue);
93
93
  }
94
94
 
@@ -128,7 +128,7 @@ sap.ui.define([
128
128
  aValueTypes = DynamicDateUtil.getOption(oValue.operator).getValueTypes();
129
129
 
130
130
  oResult.values = oResult.values.map(function(oValue, index) {
131
- if (aValueTypes[index] === "date") {
131
+ if (aValueTypes[index] === "date" || aValueTypes[index] === "datetime") {
132
132
  return oTimestampInputFormat.format(oValue);
133
133
  }
134
134
 
@@ -41,7 +41,9 @@ sap.ui.define([
41
41
  var _dynamicParameterIndexes = {};
42
42
  var aParameterTypesByStandardOptionKey = {
43
43
  "DATE": ["date"],
44
+ "DATETIME": ["datetime"],
44
45
  "DATERANGE": ["date", "date"],
46
+ "DATETIMERANGE": ["datetime", "datetime"],
45
47
  "LASTDAYS": ["int"],
46
48
  "LASTWEEKS": ["int"],
47
49
  "LASTMONTHS": ["int"],
@@ -54,7 +56,10 @@ sap.ui.define([
54
56
  "NEXTYEARS": ["int"],
55
57
  "FROM": ["date"],
56
58
  "TO": ["date"],
59
+ "FROMDATETIME": ["datetime"],
60
+ "TODATETIME": ["datetime"],
57
61
  "SPECIFICMONTH": ["month"],
62
+ "SPECIFICMONTHINYEAR": ["month", "int"],
58
63
  "TODAYFROMTO": ["int", "int"]
59
64
  };
60
65
  var aStandardDynamicDateRangeKeysArray = Object.keys(library.StandardDynamicDateRangeKeys);
@@ -109,7 +114,9 @@ sap.ui.define([
109
114
 
110
115
  DynamicDateFormat.oDefaultDynamicDateFormat = {
111
116
  "date": {},
117
+ "datetime": {},
112
118
  "month": { pattern: "MMMM" },
119
+ "year": { pattern: "yyyy" },
113
120
  "int": {}
114
121
  };
115
122
 
@@ -117,7 +124,7 @@ sap.ui.define([
117
124
  * Create an instance of the DynamicDateFormat.
118
125
  *
119
126
  * @param {object} [oFormatOptions] Object which defines the format options
120
- * @param {{sap.ui.core.Locale}} [oLocale] Locale to get the formatter for
127
+ * @param {sap.ui.core.Locale} [oLocale] Locale to get the formatter for
121
128
  * @return {sap.m.DynamicDateFormat} Instance of the DynamicDateFormat
122
129
  * @private
123
130
  */
@@ -136,6 +143,7 @@ sap.ui.define([
136
143
  oFormat.oLocaleData = LocaleData.getInstance(oLocale);
137
144
  oFormat.oOriginalFormatOptions = deepExtend({}, DynamicDateFormat.oDefaultDynamicDateFormat, oFormatOptions);
138
145
  oFormat._dateFormatter = DateFormat.getInstance(oFormat.oOriginalFormatOptions["date"]);
146
+ oFormat._dateTimeFormatter = DateFormat.getDateTimeInstance(oFormat.oOriginalFormatOptions["datetime"]);
139
147
  // hack the date formatter not to parse relative
140
148
  // dates like: "next month", "next quarter", "previous week"
141
149
  [oFormat._dateFormatter].concat(oFormat._dateFormatter.aFallbackFormats).forEach(function(f) {
@@ -144,7 +152,14 @@ sap.ui.define([
144
152
  };
145
153
  });
146
154
 
155
+ [oFormat._dateTimeFormatter].concat(oFormat._dateTimeFormatter.aFallbackFormats).forEach(function(f) {
156
+ f.parseRelative = function() {
157
+ return null;
158
+ };
159
+ });
160
+
147
161
  oFormat._monthFormatter = DateFormat.getInstance(oFormat.oOriginalFormatOptions["month"]);
162
+ oFormat._yearFormatter = DateFormat.getInstance(oFormat.oOriginalFormatOptions["year"]);
148
163
  oFormat._numberFormatter = NumberFormat.getInstance(oFormat.oOriginalFormatOptions["int"]);
149
164
  oFormat._resourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.m");
150
165
 
@@ -166,6 +181,14 @@ sap.ui.define([
166
181
  var oDate = new Date();
167
182
  oDate.setMonth(aParams[0]);
168
183
  aParams[0] = this._monthFormatter.format(oDate);
184
+ } else if (sKey === "SPECIFICMONTHINYEAR") {
185
+ var oDate = new Date();
186
+
187
+ oDate.setMonth(aParams[0]);
188
+ oDate.setYear(aParams[1]);
189
+
190
+ aParams[0] = this._monthFormatter.format(oDate);
191
+ aParams[1] = this._yearFormatter.format(oDate);
169
192
  } else if (sKey === "LASTDAYS" && aParams[0] === 1) {
170
193
  sKey = "YESTERDAY";
171
194
  aParams = [];
@@ -175,10 +198,15 @@ sap.ui.define([
175
198
  } else if ((sKey === "LASTDAYS" || sKey === "NEXTDAYS") && aParams[0] === 0) {
176
199
  sKey = "TODAY";
177
200
  aParams = [];
201
+ } else if (sKey === "DATETIME") {
202
+ aParams[0] = this._dateTimeFormatter.format(oObj.values[0]);
178
203
  }
179
204
 
180
205
  var aFormattedParams = aParams.map(function(param) {
181
206
  if (param instanceof Date) {
207
+ if (sKey === "DATETIMERANGE" || sKey === "FROMDATETIME" || sKey === "TODATETIME") {
208
+ return this._dateTimeFormatter.format(param);
209
+ }
182
210
  return this._dateFormatter.format(param);
183
211
  }
184
212
 
@@ -196,6 +224,7 @@ sap.ui.define([
196
224
  * Parses a given list string into an array.
197
225
  *
198
226
  * @param {string} sValue String value to be parsed
227
+ * @param {string} sKey String value of the key we will parse for
199
228
  * @return {object} The parsed output value
200
229
  * @public
201
230
  */
@@ -227,6 +256,9 @@ sap.ui.define([
227
256
  case "date":
228
257
  oVal = this._dateFormatter.parse(sCurrentMatch);
229
258
  break;
259
+ case "datetime":
260
+ oVal = this._dateTimeFormatter.parse(sCurrentMatch);
261
+ break;
230
262
  case "month":
231
263
  var aMonthNames = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].map(function(i) {
232
264
  var oDate = new Date();
@@ -9,16 +9,20 @@ sap.ui.define([
9
9
  'sap/ui/core/Element',
10
10
  './Label',
11
11
  './StepInput',
12
+ './DateTimePicker',
12
13
  'sap/ui/unified/Calendar',
13
14
  'sap/ui/unified/DateRange',
14
- 'sap/ui/unified/calendar/MonthPicker'],
15
+ 'sap/ui/unified/calendar/MonthPicker',
16
+ 'sap/ui/unified/calendar/CustomMonthPicker'],
15
17
  function(
16
18
  Element,
17
19
  Label,
18
20
  StepInput,
21
+ DateTimePicker,
19
22
  Calendar,
20
23
  DateRange,
21
- MonthPicker) {
24
+ MonthPicker,
25
+ CustomMonthPicker) {
22
26
  "use strict";
23
27
 
24
28
  /**
@@ -32,7 +36,7 @@ sap.ui.define([
32
36
  * @extends sap.ui.core.Element
33
37
  *
34
38
  * @author SAP SE
35
- * @version 1.98.0
39
+ * @version 1.101.0
36
40
  *
37
41
  * @public
38
42
  * @since 1.92
@@ -96,16 +100,27 @@ sap.ui.define([
96
100
  * @public
97
101
  */
98
102
  DynamicDateOption.prototype.createValueHelpUI = function(oControl, fnControlsUpdated) {
99
- var oValue = oControl.getValue();
100
- var aParams = this.getValueHelpUITypes(oControl);
101
- var aControls = [];
102
- var oInputControl;
103
+ var oValue = oControl.getValue() && Object.assign({}, oControl.getValue()),
104
+ aParams = this.getValueHelpUITypes(oControl),
105
+ valueHelpUiTypesCount = aParams.length,
106
+ aControls = [],
107
+ oInputControl;
103
108
 
104
109
  if (!oControl.aControlsByParameters) {
105
110
  oControl.aControlsByParameters = {};
106
111
  }
107
112
  oControl.aControlsByParameters[this.getKey()] = [];
108
113
 
114
+ if (oValue && oValue.values) {
115
+ oValue.values = oValue.values.map(function(val) {
116
+ if (val instanceof Date) {
117
+ return oControl._reverseConvertDate(val);
118
+ }
119
+
120
+ return val;
121
+ });
122
+ }
123
+
109
124
  for (var i = 0; i < aParams.length; i++) {
110
125
  if (aParams[i].getText()) {
111
126
  aControls.push(
@@ -116,7 +131,7 @@ sap.ui.define([
116
131
  );
117
132
  }
118
133
 
119
- oInputControl = this._createControl(i, aParams[i].getType(), oValue, fnControlsUpdated);
134
+ oInputControl = this._createControl(i, aParams[i].getType(), oValue, fnControlsUpdated, valueHelpUiTypesCount);
120
135
 
121
136
  aControls.push(oInputControl);
122
137
  oControl.aControlsByParameters[this.getKey()].push(oInputControl);
@@ -148,12 +163,18 @@ sap.ui.define([
148
163
  }
149
164
  break;
150
165
  case "month":
166
+ case "custommonth":
151
167
  case "date":
152
168
  case "daterange":
153
169
  if (!oInputControl.getSelectedDates() || oInputControl.getSelectedDates().length == 0) {
154
170
  return false;
155
171
  }
156
172
  break;
173
+ case "datetime":
174
+ if (!oInputControl.getDateValue()) {
175
+ return false;
176
+ }
177
+ break;
157
178
  }
158
179
  }
159
180
 
@@ -191,6 +212,20 @@ sap.ui.define([
191
212
  }
192
213
 
193
214
  vOutput = oInputControl.getSelectedDates()[0].getStartDate();
215
+ break;
216
+ case "custommonth":
217
+ if (!oInputControl.getSelectedDates() || !oInputControl.getSelectedDates().length) {
218
+ return null;
219
+ }
220
+
221
+ vOutput = [oInputControl.getSelectedDates()[0].getStartDate().getMonth(), oInputControl.getSelectedDates()[0].getStartDate().getFullYear()];
222
+ break;
223
+ case "datetime":
224
+ if (!oInputControl.getDateValue()) {
225
+ return null;
226
+ }
227
+
228
+ vOutput = oInputControl.getDateValue();
194
229
  break;
195
230
  case "daterange":
196
231
  if (!oInputControl.getSelectedDates().length) {
@@ -200,6 +235,8 @@ sap.ui.define([
200
235
  var oEndDate = oInputControl.getSelectedDates()[0].getEndDate() || oInputControl.getSelectedDates()[0].getStartDate();
201
236
  vOutput = [oInputControl.getSelectedDates()[0].getStartDate(), oEndDate];
202
237
  break;
238
+ default:
239
+ break;
203
240
  }
204
241
 
205
242
  if (Array.isArray(vOutput)) {
@@ -281,7 +318,7 @@ sap.ui.define([
281
318
 
282
319
  // PRIVATE
283
320
 
284
- DynamicDateOption.prototype._createControl = function(iIndex, sUIType, oValue, fnControlsUpdated) {
321
+ DynamicDateOption.prototype._createControl = function(iIndex, sUIType, oValue, fnControlsUpdated, valueHelpUiTypesCount) {
285
322
  var oInputControl;
286
323
 
287
324
  switch (sUIType) {
@@ -291,12 +328,25 @@ sap.ui.define([
291
328
  case "date":
292
329
  oInputControl = this._createDateControl(oValue, iIndex, fnControlsUpdated);
293
330
  break;
331
+ case "datetime":
332
+ if (valueHelpUiTypesCount === 1) {
333
+ // Returns DateTimePicker PopupContent control (single "datetime" option)
334
+ oInputControl = this._createDateTimeInnerControl(oValue, iIndex, fnControlsUpdated);
335
+ } else if (valueHelpUiTypesCount === 2) {
336
+ oInputControl = this._createDateTimeControl(oValue, iIndex, fnControlsUpdated);
337
+ }
338
+ break;
294
339
  case "daterange":
295
340
  oInputControl = this._createDateRangeControl(oValue, iIndex, fnControlsUpdated);
296
341
  break;
297
342
  case "month":
298
343
  oInputControl = this._createMonthControl(oValue, iIndex, fnControlsUpdated);
299
344
  break;
345
+ case "custommonth":
346
+ oInputControl = this._createCustomMonthControl(oValue, iIndex, fnControlsUpdated);
347
+ break;
348
+ default:
349
+ break;
300
350
  }
301
351
 
302
352
  return oInputControl;
@@ -320,6 +370,22 @@ sap.ui.define([
320
370
  return oControl;
321
371
  };
322
372
 
373
+ DynamicDateOption.prototype._createDateTimeControl = function(oValue, iIndex, fnControlsUpdated) {
374
+ var oControl = new DateTimePicker();
375
+
376
+ if (oValue && this.getKey() === oValue.operator) {
377
+ oControl.setDateValue(oValue.values[iIndex]);
378
+ }
379
+
380
+ if (fnControlsUpdated instanceof Function) {
381
+ oControl.attachChange(function() {
382
+ fnControlsUpdated(this);
383
+ }, this);
384
+ }
385
+
386
+ return oControl;
387
+ };
388
+
323
389
  DynamicDateOption.prototype._createDateControl = function(oValue, iIndex, fnControlsUpdated) {
324
390
  var oControl = new Calendar({
325
391
  width: "100%"
@@ -340,6 +406,53 @@ sap.ui.define([
340
406
  return oControl;
341
407
  };
342
408
 
409
+ /**
410
+ * Returns DateTimePicker PopupContent control (single "datetime" option)
411
+ */
412
+ DynamicDateOption.prototype._createDateTimeInnerControl = function(oValue, iIndex, fnControlsUpdated) {
413
+ var oControl = new DateTimePicker({
414
+ width: "100%"
415
+ }),
416
+ oPopupContent;
417
+
418
+ // DateTimePicker is created, but only its internal PopupContent control is used
419
+ oControl._createPopup();
420
+ oControl._createPopupContent();
421
+ oPopupContent = oControl._oPopupContent;
422
+ oPopupContent.setForcePhoneView(true);
423
+ oPopupContent.getCalendar().removeAllSelectedDates();
424
+
425
+ if (oValue && this.getKey() === oValue.operator) {
426
+ var oValueCopy = new Date(oValue.values[iIndex]); // a copy is used to prevent time setting on pressing Cancel button
427
+ oPopupContent.getCalendar().addSelectedDate(new DateRange({
428
+ startDate: oValueCopy
429
+ }));
430
+ oPopupContent.getClocks()._setTimeValues(oValueCopy);
431
+ }
432
+
433
+ if (fnControlsUpdated instanceof Function) {
434
+ // capture live clock changes and update the value
435
+ oPopupContent.getClocks().getAggregation("_clocks").forEach(function(oClock) {
436
+ oClock.attachChange(function(oEvent) {
437
+ fnControlsUpdated(this);
438
+ }.bind(this));
439
+ }.bind(this));
440
+
441
+ // capture live AM/PM changes and update the value
442
+ if (oPopupContent.getClocks().getAggregation("_buttonAmPm")) {
443
+ oPopupContent.getClocks().getAggregation("_buttonAmPm").attachSelectionChange(function(oEvent) {
444
+ fnControlsUpdated(this);
445
+ }.bind(this));
446
+ }
447
+
448
+ oPopupContent.getCalendar().attachSelect(function() {
449
+ fnControlsUpdated(this);
450
+ }, this);
451
+ }
452
+
453
+ return oPopupContent;
454
+ };
455
+
343
456
  DynamicDateOption.prototype._createDateRangeControl = function(oValue, iIndex, fnControlsUpdated) {
344
457
  var oControl = new Calendar({
345
458
  intervalSelection: true,
@@ -382,5 +495,27 @@ sap.ui.define([
382
495
  return oControl;
383
496
  };
384
497
 
498
+ DynamicDateOption.prototype._createCustomMonthControl = function(oValue, iIndex, fnControlsUpdated) {
499
+ var oControl = new CustomMonthPicker(),
500
+ oDate = new Date(),
501
+ iMonth = (oValue && iIndex >= 0 && this.getKey() === oValue.operator) ? oValue.values[iIndex] : oDate.getMonth(),
502
+ iYear = (oValue && iIndex >= 0 && this.getKey() === oValue.operator) ? oValue.values[iIndex + 1] : oDate.getFullYear();
503
+
504
+ oDate.setDate(1);
505
+ oDate.setMonth(iMonth);
506
+ oDate.setYear(iYear);
507
+ oControl.addSelectedDate(new DateRange({
508
+ startDate: oDate
509
+ }));
510
+
511
+ if (fnControlsUpdated instanceof Function) {
512
+ oControl.attachSelect(function() {
513
+ fnControlsUpdated(this);
514
+ }, this);
515
+ }
516
+
517
+ return oControl;
518
+ };
519
+
385
520
  return DynamicDateOption;
386
521
  });