@ui5/webcomponents 1.21.1 → 1.22.0-rc.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 (563) hide show
  1. package/CHANGELOG.md +8 -2
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Avatar.d.ts +16 -47
  4. package/dist/Avatar.js +4 -12
  5. package/dist/Avatar.js.map +1 -1
  6. package/dist/AvatarGroup.d.ts +13 -30
  7. package/dist/AvatarGroup.js +11 -15
  8. package/dist/AvatarGroup.js.map +1 -1
  9. package/dist/Badge.d.ts +61 -20
  10. package/dist/Badge.js +98 -12
  11. package/dist/Badge.js.map +1 -1
  12. package/dist/Breadcrumbs.d.ts +4 -16
  13. package/dist/Breadcrumbs.js +16 -6
  14. package/dist/Breadcrumbs.js.map +1 -1
  15. package/dist/BreadcrumbsItem.d.ts +4 -18
  16. package/dist/BreadcrumbsItem.js +1 -6
  17. package/dist/BreadcrumbsItem.js.map +1 -1
  18. package/dist/BusyIndicator.d.ts +6 -24
  19. package/dist/BusyIndicator.js +2 -4
  20. package/dist/BusyIndicator.js.map +1 -1
  21. package/dist/Button.d.ts +20 -48
  22. package/dist/Button.js +3 -15
  23. package/dist/Button.js.map +1 -1
  24. package/dist/Calendar.d.ts +7 -18
  25. package/dist/Calendar.js +19 -19
  26. package/dist/Calendar.js.map +1 -1
  27. package/dist/CalendarDate.d.ts +2 -7
  28. package/dist/CalendarDate.js +1 -5
  29. package/dist/CalendarDate.js.map +1 -1
  30. package/dist/CalendarHeader.d.ts +8 -9
  31. package/dist/CalendarHeader.js.map +1 -1
  32. package/dist/CalendarPart.d.ts +1 -4
  33. package/dist/CalendarPart.js +7 -5
  34. package/dist/CalendarPart.js.map +1 -1
  35. package/dist/Card.d.ts +5 -19
  36. package/dist/Card.js +1 -5
  37. package/dist/Card.js.map +1 -1
  38. package/dist/CardHeader.d.ts +14 -38
  39. package/dist/CardHeader.js +6 -18
  40. package/dist/CardHeader.js.map +1 -1
  41. package/dist/Carousel.d.ts +17 -58
  42. package/dist/Carousel.js +7 -19
  43. package/dist/Carousel.js.map +1 -1
  44. package/dist/CheckBox.d.ts +14 -49
  45. package/dist/CheckBox.js +3 -15
  46. package/dist/CheckBox.js.map +1 -1
  47. package/dist/ColorPalette.d.ts +6 -18
  48. package/dist/ColorPalette.js +4 -6
  49. package/dist/ColorPalette.js.map +1 -1
  50. package/dist/ColorPaletteItem.d.ts +10 -14
  51. package/dist/ColorPaletteItem.js +2 -5
  52. package/dist/ColorPaletteItem.js.map +1 -1
  53. package/dist/ColorPalettePopover.d.ts +17 -32
  54. package/dist/ColorPalettePopover.js +8 -13
  55. package/dist/ColorPalettePopover.js.map +1 -1
  56. package/dist/ColorPicker.d.ts +6 -8
  57. package/dist/ColorPicker.js +1 -5
  58. package/dist/ColorPicker.js.map +1 -1
  59. package/dist/ComboBox.d.ts +16 -58
  60. package/dist/ComboBox.js +5 -9
  61. package/dist/ComboBox.js.map +1 -1
  62. package/dist/ComboBoxGroupItem.d.ts +3 -8
  63. package/dist/ComboBoxGroupItem.js +2 -5
  64. package/dist/ComboBoxGroupItem.js.map +1 -1
  65. package/dist/ComboBoxItem.d.ts +4 -11
  66. package/dist/ComboBoxItem.js +2 -5
  67. package/dist/ComboBoxItem.js.map +1 -1
  68. package/dist/CustomListItem.d.ts +9 -27
  69. package/dist/CustomListItem.js +8 -24
  70. package/dist/CustomListItem.js.map +1 -1
  71. package/dist/DateComponentBase.d.ts +9 -18
  72. package/dist/DateComponentBase.js +2 -3
  73. package/dist/DateComponentBase.js.map +1 -1
  74. package/dist/DatePicker.d.ts +44 -75
  75. package/dist/DatePicker.js +46 -44
  76. package/dist/DatePicker.js.map +1 -1
  77. package/dist/DateRangePicker.d.ts +10 -24
  78. package/dist/DateRangePicker.js +5 -16
  79. package/dist/DateRangePicker.js.map +1 -1
  80. package/dist/DateTimePicker.d.ts +7 -9
  81. package/dist/DateTimePicker.js +5 -5
  82. package/dist/DateTimePicker.js.map +1 -1
  83. package/dist/DayPicker.d.ts +42 -35
  84. package/dist/DayPicker.js +35 -27
  85. package/dist/DayPicker.js.map +1 -1
  86. package/dist/Dialog.d.ts +11 -40
  87. package/dist/Dialog.js +6 -19
  88. package/dist/Dialog.js.map +1 -1
  89. package/dist/FileUploader.d.ts +11 -39
  90. package/dist/FileUploader.js +7 -9
  91. package/dist/FileUploader.js.map +1 -1
  92. package/dist/GroupHeaderListItem.d.ts +6 -18
  93. package/dist/GroupHeaderListItem.js +5 -5
  94. package/dist/GroupHeaderListItem.js.map +1 -1
  95. package/dist/Icon.d.ts +12 -34
  96. package/dist/Icon.js +4 -15
  97. package/dist/Icon.js.map +1 -1
  98. package/dist/Input.d.ts +38 -84
  99. package/dist/Input.js +20 -22
  100. package/dist/Input.js.map +1 -1
  101. package/dist/Interfaces.d.ts +115 -133
  102. package/dist/Interfaces.js +1 -193
  103. package/dist/Interfaces.js.map +1 -1
  104. package/dist/Label.d.ts +8 -25
  105. package/dist/Label.js +4 -13
  106. package/dist/Label.js.map +1 -1
  107. package/dist/Link.d.ts +13 -42
  108. package/dist/Link.js +18 -9
  109. package/dist/Link.js.map +1 -1
  110. package/dist/List.d.ts +14 -50
  111. package/dist/List.js +21 -13
  112. package/dist/List.js.map +1 -1
  113. package/dist/ListItem.d.ts +10 -32
  114. package/dist/ListItem.js +2 -4
  115. package/dist/ListItem.js.map +1 -1
  116. package/dist/ListItemBase.d.ts +3 -9
  117. package/dist/ListItemBase.js +1 -3
  118. package/dist/ListItemBase.js.map +1 -1
  119. package/dist/Menu.d.ts +10 -33
  120. package/dist/Menu.js +21 -16
  121. package/dist/Menu.js.map +1 -1
  122. package/dist/MenuItem.d.ts +11 -32
  123. package/dist/MenuItem.js +1 -5
  124. package/dist/MenuItem.js.map +1 -1
  125. package/dist/MessageStrip.d.ts +10 -28
  126. package/dist/MessageStrip.js +5 -5
  127. package/dist/MessageStrip.js.map +1 -1
  128. package/dist/MonthPicker.d.ts +8 -13
  129. package/dist/MonthPicker.js +6 -13
  130. package/dist/MonthPicker.js.map +1 -1
  131. package/dist/MultiComboBox.d.ts +19 -70
  132. package/dist/MultiComboBox.js +8 -24
  133. package/dist/MultiComboBox.js.map +1 -1
  134. package/dist/MultiComboBoxGroupItem.d.ts +2 -8
  135. package/dist/MultiComboBoxGroupItem.js +1 -5
  136. package/dist/MultiComboBoxGroupItem.js.map +1 -1
  137. package/dist/MultiComboBoxItem.d.ts +4 -8
  138. package/dist/MultiComboBoxItem.js +2 -5
  139. package/dist/MultiComboBoxItem.js.map +1 -1
  140. package/dist/MultiInput.d.ts +9 -16
  141. package/dist/MultiInput.js +4 -7
  142. package/dist/MultiInput.js.map +1 -1
  143. package/dist/NavigationMenu.d.ts +36 -0
  144. package/dist/NavigationMenu.js +123 -0
  145. package/dist/NavigationMenu.js.map +1 -0
  146. package/dist/NavigationMenuItem.d.ts +67 -0
  147. package/dist/NavigationMenuItem.js +51 -0
  148. package/dist/NavigationMenuItem.js.map +1 -0
  149. package/dist/Option.d.ts +11 -28
  150. package/dist/Option.js +2 -6
  151. package/dist/Option.js.map +1 -1
  152. package/dist/Panel.d.ts +16 -52
  153. package/dist/Panel.js +4 -15
  154. package/dist/Panel.js.map +1 -1
  155. package/dist/Popover.d.ts +22 -62
  156. package/dist/Popover.js +12 -27
  157. package/dist/Popover.js.map +1 -1
  158. package/dist/Popup.d.ts +10 -46
  159. package/dist/Popup.js +10 -20
  160. package/dist/Popup.js.map +1 -1
  161. package/dist/ProgressIndicator.d.ts +8 -22
  162. package/dist/ProgressIndicator.js +2 -5
  163. package/dist/ProgressIndicator.js.map +1 -1
  164. package/dist/RadioButton.d.ts +13 -40
  165. package/dist/RadioButton.js +1 -5
  166. package/dist/RadioButton.js.map +1 -1
  167. package/dist/RangeSlider.d.ts +12 -27
  168. package/dist/RangeSlider.js +10 -21
  169. package/dist/RangeSlider.js.map +1 -1
  170. package/dist/RatingIndicator.d.ts +11 -27
  171. package/dist/RatingIndicator.js +1 -5
  172. package/dist/RatingIndicator.js.map +1 -1
  173. package/dist/ResponsivePopover.d.ts +8 -29
  174. package/dist/ResponsivePopover.js +7 -27
  175. package/dist/ResponsivePopover.js.map +1 -1
  176. package/dist/SegmentedButton.d.ts +13 -28
  177. package/dist/SegmentedButton.js +13 -14
  178. package/dist/SegmentedButton.js.map +1 -1
  179. package/dist/SegmentedButtonItem.d.ts +9 -19
  180. package/dist/SegmentedButtonItem.js +2 -5
  181. package/dist/SegmentedButtonItem.js.map +1 -1
  182. package/dist/Select.d.ts +15 -66
  183. package/dist/Select.js +13 -18
  184. package/dist/Select.js.map +1 -1
  185. package/dist/SelectMenu.d.ts +3 -10
  186. package/dist/SelectMenu.js +2 -4
  187. package/dist/SelectMenu.js.map +1 -1
  188. package/dist/SelectMenuOption.d.ts +12 -32
  189. package/dist/SelectMenuOption.js +11 -23
  190. package/dist/SelectMenuOption.js.map +1 -1
  191. package/dist/Slider.d.ts +5 -18
  192. package/dist/Slider.js +4 -15
  193. package/dist/Slider.js.map +1 -1
  194. package/dist/SliderBase.d.ts +11 -32
  195. package/dist/SliderBase.js +22 -17
  196. package/dist/SliderBase.js.map +1 -1
  197. package/dist/SplitButton.d.ts +25 -48
  198. package/dist/SplitButton.js +6 -14
  199. package/dist/SplitButton.js.map +1 -1
  200. package/dist/StandardListItem.d.ts +23 -58
  201. package/dist/StandardListItem.js +15 -22
  202. package/dist/StandardListItem.js.map +1 -1
  203. package/dist/StepInput.d.ts +20 -51
  204. package/dist/StepInput.js +7 -9
  205. package/dist/StepInput.js.map +1 -1
  206. package/dist/SuggestionGroupItem.d.ts +5 -9
  207. package/dist/SuggestionGroupItem.js +2 -5
  208. package/dist/SuggestionGroupItem.js.map +1 -1
  209. package/dist/SuggestionItem.d.ts +15 -27
  210. package/dist/SuggestionItem.js +2 -5
  211. package/dist/SuggestionItem.js.map +1 -1
  212. package/dist/SuggestionListItem.d.ts +7 -20
  213. package/dist/SuggestionListItem.js +4 -15
  214. package/dist/SuggestionListItem.js.map +1 -1
  215. package/dist/Switch.d.ts +16 -48
  216. package/dist/Switch.js +6 -17
  217. package/dist/Switch.js.map +1 -1
  218. package/dist/Tab.d.ts +10 -33
  219. package/dist/Tab.js +3 -7
  220. package/dist/Tab.js.map +1 -1
  221. package/dist/TabContainer.d.ts +21 -87
  222. package/dist/TabContainer.js +14 -23
  223. package/dist/TabContainer.js.map +1 -1
  224. package/dist/TabSeparator.d.ts +3 -8
  225. package/dist/TabSeparator.js +2 -7
  226. package/dist/TabSeparator.js.map +1 -1
  227. package/dist/Table.d.ts +18 -64
  228. package/dist/Table.js +13 -16
  229. package/dist/Table.js.map +1 -1
  230. package/dist/TableCell.d.ts +2 -17
  231. package/dist/TableCell.js +2 -14
  232. package/dist/TableCell.js.map +1 -1
  233. package/dist/TableColumn.d.ts +7 -26
  234. package/dist/TableColumn.js +3 -14
  235. package/dist/TableColumn.js.map +1 -1
  236. package/dist/TableGroupRow.d.ts +6 -28
  237. package/dist/TableGroupRow.js +3 -15
  238. package/dist/TableGroupRow.js.map +1 -1
  239. package/dist/TableRow.d.ts +11 -33
  240. package/dist/TableRow.js +4 -18
  241. package/dist/TableRow.js.map +1 -1
  242. package/dist/TextArea.d.ts +20 -61
  243. package/dist/TextArea.js +3 -16
  244. package/dist/TextArea.js.map +1 -1
  245. package/dist/TimePicker.d.ts +5 -15
  246. package/dist/TimePicker.js +2 -7
  247. package/dist/TimePicker.js.map +1 -1
  248. package/dist/TimePickerBase.d.ts +15 -51
  249. package/dist/TimePickerBase.js +23 -39
  250. package/dist/TimePickerBase.js.map +1 -1
  251. package/dist/TimePickerClock.d.ts +49 -89
  252. package/dist/TimePickerClock.js +38 -33
  253. package/dist/TimePickerClock.js.map +1 -1
  254. package/dist/TimePickerInternals.d.ts +16 -27
  255. package/dist/TimePickerInternals.js +9 -12
  256. package/dist/TimePickerInternals.js.map +1 -1
  257. package/dist/TimeSelection.d.ts +16 -23
  258. package/dist/TimeSelection.js +2 -5
  259. package/dist/TimeSelection.js.map +1 -1
  260. package/dist/TimeSelectionClocks.d.ts +16 -19
  261. package/dist/TimeSelectionClocks.js +14 -17
  262. package/dist/TimeSelectionClocks.js.map +1 -1
  263. package/dist/TimeSelectionInputs.d.ts +12 -16
  264. package/dist/TimeSelectionInputs.js +11 -15
  265. package/dist/TimeSelectionInputs.js.map +1 -1
  266. package/dist/Title.d.ts +7 -21
  267. package/dist/Title.js +5 -15
  268. package/dist/Title.js.map +1 -1
  269. package/dist/Toast.d.ts +12 -26
  270. package/dist/Toast.js +5 -5
  271. package/dist/Toast.js.map +1 -1
  272. package/dist/ToggleButton.d.ts +2 -7
  273. package/dist/ToggleButton.js +1 -4
  274. package/dist/ToggleButton.js.map +1 -1
  275. package/dist/ToggleSpinButton.d.ts +5 -15
  276. package/dist/ToggleSpinButton.js +1 -4
  277. package/dist/ToggleSpinButton.js.map +1 -1
  278. package/dist/Token.d.ts +13 -27
  279. package/dist/Token.js +2 -7
  280. package/dist/Token.js.map +1 -1
  281. package/dist/Tokenizer.d.ts +7 -11
  282. package/dist/Tokenizer.js +1 -5
  283. package/dist/Tokenizer.js.map +1 -1
  284. package/dist/Toolbar.d.ts +7 -26
  285. package/dist/Toolbar.js +4 -8
  286. package/dist/Toolbar.js.map +1 -1
  287. package/dist/ToolbarButton.d.ts +11 -34
  288. package/dist/ToolbarButton.js +1 -6
  289. package/dist/ToolbarButton.js.map +1 -1
  290. package/dist/ToolbarItem.d.ts +5 -28
  291. package/dist/ToolbarItem.js +1 -11
  292. package/dist/ToolbarItem.js.map +1 -1
  293. package/dist/ToolbarRegistry.d.ts +3 -3
  294. package/dist/ToolbarRegistry.js.map +1 -1
  295. package/dist/ToolbarSelect.d.ts +8 -27
  296. package/dist/ToolbarSelect.js +4 -10
  297. package/dist/ToolbarSelect.js.map +1 -1
  298. package/dist/ToolbarSelectOption.d.ts +2 -11
  299. package/dist/ToolbarSelectOption.js +1 -5
  300. package/dist/ToolbarSelectOption.js.map +1 -1
  301. package/dist/ToolbarSeparator.d.ts +1 -5
  302. package/dist/ToolbarSeparator.js +1 -5
  303. package/dist/ToolbarSeparator.js.map +1 -1
  304. package/dist/ToolbarSpacer.d.ts +2 -8
  305. package/dist/ToolbarSpacer.js +1 -5
  306. package/dist/ToolbarSpacer.js.map +1 -1
  307. package/dist/Tree.d.ts +12 -36
  308. package/dist/Tree.js +28 -14
  309. package/dist/Tree.js.map +1 -1
  310. package/dist/TreeItem.d.ts +8 -25
  311. package/dist/TreeItem.js +5 -16
  312. package/dist/TreeItem.js.map +1 -1
  313. package/dist/TreeItemBase.d.ts +12 -38
  314. package/dist/TreeItemBase.js +2 -9
  315. package/dist/TreeItemBase.js.map +1 -1
  316. package/dist/TreeItemCustom.d.ts +6 -22
  317. package/dist/TreeItemCustom.js +5 -16
  318. package/dist/TreeItemCustom.js.map +1 -1
  319. package/dist/WheelSlider.d.ts +9 -23
  320. package/dist/WheelSlider.js +11 -11
  321. package/dist/WheelSlider.js.map +1 -1
  322. package/dist/YearPicker.d.ts +14 -12
  323. package/dist/YearPicker.js +12 -12
  324. package/dist/YearPicker.js.map +1 -1
  325. package/dist/bundle.esm.js.map +1 -1
  326. package/dist/css/themes/Badge.css +1 -1
  327. package/dist/css/themes/NavigationMenu.css +1 -0
  328. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  329. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  330. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  331. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  332. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  333. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  334. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  335. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  336. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  337. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  338. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  339. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  340. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  341. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  342. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  343. package/dist/custom-elements-internal.json +20999 -0
  344. package/dist/custom-elements.json +16118 -1
  345. package/dist/features/InputSuggestions.d.ts +10 -10
  346. package/dist/features/InputSuggestions.js +1 -2
  347. package/dist/features/InputSuggestions.js.map +1 -1
  348. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  349. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  350. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  351. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  352. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  353. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  354. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  355. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  356. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  357. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  358. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  359. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  360. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  361. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  362. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  363. package/dist/generated/i18n/i18n-defaults.d.ts +9 -2
  364. package/dist/generated/i18n/i18n-defaults.js +9 -2
  365. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  366. package/dist/generated/templates/BadgeTemplate.lit.js +8 -3
  367. package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
  368. package/dist/generated/templates/NavigationMenuTemplate.lit.d.ts +4 -0
  369. package/dist/generated/templates/NavigationMenuTemplate.lit.js +21 -0
  370. package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -0
  371. package/dist/generated/themes/Badge.css.js +1 -1
  372. package/dist/generated/themes/Badge.css.js.map +1 -1
  373. package/dist/generated/themes/NavigationMenu.css.d.ts +3 -0
  374. package/dist/generated/themes/NavigationMenu.css.js +9 -0
  375. package/dist/generated/themes/NavigationMenu.css.js.map +1 -0
  376. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  377. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  378. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  379. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  380. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  381. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  382. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  383. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  384. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  385. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  386. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  387. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  388. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  389. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  390. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  391. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  392. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  393. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  394. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  395. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  396. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  397. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  398. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  399. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  400. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  401. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  402. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  403. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  404. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  405. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  406. package/dist/types/AvatarColorScheme.d.ts +0 -15
  407. package/dist/types/AvatarColorScheme.js +0 -15
  408. package/dist/types/AvatarColorScheme.js.map +1 -1
  409. package/dist/types/AvatarGroupType.d.ts +0 -6
  410. package/dist/types/AvatarGroupType.js +0 -6
  411. package/dist/types/AvatarGroupType.js.map +1 -1
  412. package/dist/types/AvatarShape.d.ts +0 -6
  413. package/dist/types/AvatarShape.js +0 -6
  414. package/dist/types/AvatarShape.js.map +1 -1
  415. package/dist/types/AvatarSize.d.ts +0 -9
  416. package/dist/types/AvatarSize.js +0 -9
  417. package/dist/types/AvatarSize.js.map +1 -1
  418. package/dist/types/BackgroundDesign.d.ts +0 -7
  419. package/dist/types/BackgroundDesign.js +0 -7
  420. package/dist/types/BackgroundDesign.js.map +1 -1
  421. package/dist/types/BadgeDesign.d.ts +49 -0
  422. package/dist/types/BadgeDesign.js +51 -0
  423. package/dist/types/BadgeDesign.js.map +1 -0
  424. package/dist/types/BorderDesign.d.ts +0 -6
  425. package/dist/types/BorderDesign.js +0 -6
  426. package/dist/types/BorderDesign.js.map +1 -1
  427. package/dist/types/BreadcrumbsDesign.d.ts +0 -6
  428. package/dist/types/BreadcrumbsDesign.js +0 -6
  429. package/dist/types/BreadcrumbsDesign.js.map +1 -1
  430. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +0 -10
  431. package/dist/types/BreadcrumbsSeparatorStyle.js +0 -10
  432. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -1
  433. package/dist/types/BusyIndicatorSize.d.ts +0 -7
  434. package/dist/types/BusyIndicatorSize.js +0 -7
  435. package/dist/types/BusyIndicatorSize.js.map +1 -1
  436. package/dist/types/ButtonDesign.d.ts +0 -10
  437. package/dist/types/ButtonDesign.js +0 -10
  438. package/dist/types/ButtonDesign.js.map +1 -1
  439. package/dist/types/ButtonType.d.ts +0 -7
  440. package/dist/types/ButtonType.js +0 -7
  441. package/dist/types/ButtonType.js.map +1 -1
  442. package/dist/types/CalendarPickersMode.d.ts +6 -10
  443. package/dist/types/CalendarPickersMode.js +6 -10
  444. package/dist/types/CalendarPickersMode.js.map +1 -1
  445. package/dist/types/CalendarSelectionMode.d.ts +0 -7
  446. package/dist/types/CalendarSelectionMode.js +0 -7
  447. package/dist/types/CalendarSelectionMode.js.map +1 -1
  448. package/dist/types/CarouselArrowsPlacement.d.ts +0 -6
  449. package/dist/types/CarouselArrowsPlacement.js +0 -6
  450. package/dist/types/CarouselArrowsPlacement.js.map +1 -1
  451. package/dist/types/CarouselPageIndicatorStyle.d.ts +0 -6
  452. package/dist/types/CarouselPageIndicatorStyle.js +0 -6
  453. package/dist/types/CarouselPageIndicatorStyle.js.map +1 -1
  454. package/dist/types/ComboBoxFilter.d.ts +0 -8
  455. package/dist/types/ComboBoxFilter.js +0 -8
  456. package/dist/types/ComboBoxFilter.js.map +1 -1
  457. package/dist/types/HasPopup.d.ts +0 -9
  458. package/dist/types/HasPopup.js +0 -9
  459. package/dist/types/HasPopup.js.map +1 -1
  460. package/dist/types/IconDesign.d.ts +0 -12
  461. package/dist/types/IconDesign.js +0 -12
  462. package/dist/types/IconDesign.js.map +1 -1
  463. package/dist/types/InputType.d.ts +0 -10
  464. package/dist/types/InputType.js +0 -10
  465. package/dist/types/InputType.js.map +1 -1
  466. package/dist/types/LinkDesign.d.ts +0 -7
  467. package/dist/types/LinkDesign.js +0 -7
  468. package/dist/types/LinkDesign.js.map +1 -1
  469. package/dist/types/ListGrowingMode.d.ts +0 -7
  470. package/dist/types/ListGrowingMode.js +0 -7
  471. package/dist/types/ListGrowingMode.js.map +1 -1
  472. package/dist/types/ListItemType.d.ts +0 -8
  473. package/dist/types/ListItemType.js +0 -8
  474. package/dist/types/ListItemType.js.map +1 -1
  475. package/dist/types/ListMode.d.ts +0 -11
  476. package/dist/types/ListMode.js +0 -11
  477. package/dist/types/ListMode.js.map +1 -1
  478. package/dist/types/ListSeparators.d.ts +0 -7
  479. package/dist/types/ListSeparators.js +0 -7
  480. package/dist/types/ListSeparators.js.map +1 -1
  481. package/dist/types/MessageStripDesign.d.ts +0 -8
  482. package/dist/types/MessageStripDesign.js +0 -8
  483. package/dist/types/MessageStripDesign.js.map +1 -1
  484. package/dist/types/PanelAccessibleRole.d.ts +0 -7
  485. package/dist/types/PanelAccessibleRole.js +0 -7
  486. package/dist/types/PanelAccessibleRole.js.map +1 -1
  487. package/dist/types/PopoverHorizontalAlign.d.ts +0 -8
  488. package/dist/types/PopoverHorizontalAlign.js +0 -8
  489. package/dist/types/PopoverHorizontalAlign.js.map +1 -1
  490. package/dist/types/PopoverPlacementType.d.ts +0 -8
  491. package/dist/types/PopoverPlacementType.js +0 -8
  492. package/dist/types/PopoverPlacementType.js.map +1 -1
  493. package/dist/types/PopoverVerticalAlign.d.ts +0 -8
  494. package/dist/types/PopoverVerticalAlign.js +0 -8
  495. package/dist/types/PopoverVerticalAlign.js.map +1 -1
  496. package/dist/types/PopupAccessibleRole.d.ts +0 -7
  497. package/dist/types/PopupAccessibleRole.js +0 -7
  498. package/dist/types/PopupAccessibleRole.js.map +1 -1
  499. package/dist/types/Priority.d.ts +0 -8
  500. package/dist/types/Priority.js +0 -8
  501. package/dist/types/Priority.js.map +1 -1
  502. package/dist/types/SegmentedButtonMode.d.ts +0 -6
  503. package/dist/types/SegmentedButtonMode.js +0 -6
  504. package/dist/types/SegmentedButtonMode.js.map +1 -1
  505. package/dist/types/SemanticColor.d.ts +0 -9
  506. package/dist/types/SemanticColor.js +0 -9
  507. package/dist/types/SemanticColor.js.map +1 -1
  508. package/dist/types/SwitchDesign.d.ts +0 -6
  509. package/dist/types/SwitchDesign.js +0 -6
  510. package/dist/types/SwitchDesign.js.map +1 -1
  511. package/dist/types/TabContainerBackgroundDesign.d.ts +0 -7
  512. package/dist/types/TabContainerBackgroundDesign.js +0 -7
  513. package/dist/types/TabContainerBackgroundDesign.js.map +1 -1
  514. package/dist/types/TabContainerTabsPlacement.d.ts +0 -6
  515. package/dist/types/TabContainerTabsPlacement.js +0 -6
  516. package/dist/types/TabContainerTabsPlacement.js.map +1 -1
  517. package/dist/types/TabLayout.d.ts +0 -6
  518. package/dist/types/TabLayout.js +0 -6
  519. package/dist/types/TabLayout.js.map +1 -1
  520. package/dist/types/TableColumnPopinDisplay.d.ts +0 -6
  521. package/dist/types/TableColumnPopinDisplay.js +0 -6
  522. package/dist/types/TableColumnPopinDisplay.js.map +1 -1
  523. package/dist/types/TableGrowingMode.d.ts +0 -7
  524. package/dist/types/TableGrowingMode.js +0 -7
  525. package/dist/types/TableGrowingMode.js.map +1 -1
  526. package/dist/types/TableMode.d.ts +0 -7
  527. package/dist/types/TableMode.js +0 -7
  528. package/dist/types/TableMode.js.map +1 -1
  529. package/dist/types/TableRowType.d.ts +0 -6
  530. package/dist/types/TableRowType.js +0 -6
  531. package/dist/types/TableRowType.js.map +1 -1
  532. package/dist/types/TabsOverflowMode.d.ts +0 -6
  533. package/dist/types/TabsOverflowMode.js +0 -6
  534. package/dist/types/TabsOverflowMode.js.map +1 -1
  535. package/dist/types/TitleLevel.d.ts +0 -10
  536. package/dist/types/TitleLevel.js +0 -10
  537. package/dist/types/TitleLevel.js.map +1 -1
  538. package/dist/types/ToastPlacement.d.ts +0 -13
  539. package/dist/types/ToastPlacement.js +0 -13
  540. package/dist/types/ToastPlacement.js.map +1 -1
  541. package/dist/types/ToolbarAlign.d.ts +2 -9
  542. package/dist/types/ToolbarAlign.js +2 -9
  543. package/dist/types/ToolbarAlign.js.map +1 -1
  544. package/dist/types/ToolbarItemOverflowBehavior.d.ts +1 -9
  545. package/dist/types/ToolbarItemOverflowBehavior.js +1 -9
  546. package/dist/types/ToolbarItemOverflowBehavior.js.map +1 -1
  547. package/dist/types/WrappingType.d.ts +0 -6
  548. package/dist/types/WrappingType.js +0 -6
  549. package/dist/types/WrappingType.js.map +1 -1
  550. package/package.json +9 -9
  551. package/src/Badge.hbs +26 -5
  552. package/src/NavigationMenu.hbs +159 -0
  553. package/src/i18n/messagebundle.properties +22 -1
  554. package/src/themes/Badge.css +505 -39
  555. package/src/themes/NavigationMenu.css +69 -0
  556. package/src/themes/base/Badge-parameters.css +106 -3
  557. package/src/themes/sap_belize/BusyIndicator-parameters.css +5 -0
  558. package/src/themes/sap_belize/parameters-bundle.css +1 -1
  559. package/src/themes/sap_horizon/Badge-parameters.css +3 -5
  560. package/src/themes/sap_horizon_dark/Badge-parameters.css +3 -5
  561. package/src/themes/sap_horizon_hcb/Badge-parameters.css +108 -5
  562. package/src/themes/sap_horizon_hcw/Badge-parameters.css +108 -2
  563. package/dist/api.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport { DATERANGE_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * <h3>Usage</h3>\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the <code>ui5-daterange-picker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateRangePicker.js\";</code>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-daterange-picker</code> provides advanced keyboard handling.\n * <br>\n *\n * When the <code>ui5-daterange-picker</code> input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n * <br>\n * <ul>\n * <li>[PAGEDOWN] - Decrements the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEDOWN] - Decrements the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEDOWN] - Decrements the corresponding year by one</li>\n * <li>[PAGEUP] - Increments the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEUP] - Increments the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEUP] - Increments the corresponding year by one</li>\n * </ul>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.DateRangePicker\n * @extends sap.ui.webc.main.DatePicker\n * @tagname ui5-daterange-picker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n})\nclass DateRangePicker extends DatePicker {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.delimiter\n\t * @defaultvalue \"-\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"-\" })\n\tdelimiter!: string;\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t *\n\t * @private\n\t */\n\t@property()\n\t_tempValue!: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.dateValue\n\t */\n\tget dateValue() {\n\t\treturn null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.dateValueUTC\n\t */\n\tget dateValueUTC() {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode() {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.startDateValue\n\t */\n\tget startDateValue() {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.endDateValue\n\t */\n\tget endDateValue() {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst input = this._getInput();\n\t\tconst caretPos = input.getCaretPosition();\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisValid(value: string): boolean {\n\t\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisInValidRange(value: string): boolean {\n\t\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.values;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.dates[0], event.detail.dates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tconst input = this._getInput();\n\t\tlet caretPos: number = input.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\tconst ctor = this.constructor as typeof DateRangePicker;\n\t\treturn this.delimiter || (ctor.getMetadata().getProperties().delimiter.defaultValue) as string;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport { DATERANGE_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * <h3>Usage</h3>\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the <code>ui5-daterange-picker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateRangePicker.js\";</code>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-daterange-picker</code> provides advanced keyboard handling.\n * <br>\n *\n * When the <code>ui5-daterange-picker</code> input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n * <br>\n * <ul>\n * <li>[PAGEDOWN] - Decrements the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEDOWN] - Decrements the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEDOWN] - Decrements the corresponding year by one</li>\n * <li>[PAGEUP] - Increments the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEUP] - Increments the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEUP] - Increments the corresponding year by one</li>\n * </ul>\n *\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n})\nclass DateRangePicker extends DatePicker {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t *\n\t * @default \"-\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"-\" })\n\tdelimiter!: string;\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t *\n\t * @private\n\t */\n\t@property()\n\t_tempValue!: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget dateValueUTC(): Date | null {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode() {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget startDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget endDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst input = this._getInput();\n\t\tconst caretPos = input.getCaretPosition();\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisValid(value: string): boolean {\n\t\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisInValidRange(value: string): boolean {\n\t\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.values;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.dates[0], event.detail.dates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tconst input = this._getInput();\n\t\tlet caretPos: number = input.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\tconst ctor = this.constructor as typeof DateRangePicker;\n\t\treturn this.delimiter || (ctor.getMetadata().getProperties().delimiter.defaultValue) as string;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
@@ -75,10 +75,7 @@ type PreviewValues = {
75
75
  * <code>import "@ui5/webcomponents/dist/DateTimePicker.js";</code>
76
76
  *
77
77
  * @constructor
78
- * @author SAP SE
79
- * @alias sap.ui.webc.main.DateTimePicker
80
- * @extends sap.ui.webc.main.DatePicker
81
- * @tagname ui5-datetime-picker
78
+ * @extends DatePicker
82
79
  * @since 1.0.0-rc.7
83
80
  * @public
84
81
  */
@@ -89,8 +86,7 @@ declare class DateTimePicker extends DatePicker {
89
86
  *
90
87
  * <br><br>
91
88
  * <b>Note:</b> The date view would be displayed by default.
92
- * @type {boolean}
93
- * @defaultvalue false
89
+ * @default false
94
90
  * @private
95
91
  */
96
92
  _showTimeView: boolean;
@@ -99,8 +95,7 @@ declare class DateTimePicker extends DatePicker {
99
95
  * The phone mode turns on when the component is used on small screens or phone devices.
100
96
  * In phone mode the user can see either the calendar view, or the time view
101
97
  * and can switch between the views via toggle buttons.
102
- * @type {boolean}
103
- * @defaultvalue false
98
+ * @default false
104
99
  * @private
105
100
  */
106
101
  _phoneMode: boolean;
@@ -129,6 +124,7 @@ declare class DateTimePicker extends DatePicker {
129
124
  */
130
125
  /**
131
126
  * Opens the picker.
127
+ *
132
128
  * @public
133
129
  */
134
130
  openPicker(): Promise<void>;
@@ -163,6 +159,7 @@ declare class DateTimePicker extends DatePicker {
163
159
  get dateAriaDescription(): string;
164
160
  /**
165
161
  * Defines whether the dialog on mobile should have header
162
+ *
166
163
  * @private
167
164
  */
168
165
  get _shouldHideHeader(): boolean;
@@ -192,7 +189,8 @@ declare class DateTimePicker extends DatePicker {
192
189
  /**
193
190
  * Handles the date/time switch available in <code>phoneMode</code> to switch
194
191
  * between the date and time views.
195
- * @param {Event} e
192
+ *
193
+ * @param e
196
194
  */
197
195
  _dateTimeSwitchChange(e: CustomEvent): void;
198
196
  /**
@@ -92,10 +92,7 @@ const PHONE_MODE_BREAKPOINT = 640; // px
92
92
  * <code>import "@ui5/webcomponents/dist/DateTimePicker.js";</code>
93
93
  *
94
94
  * @constructor
95
- * @author SAP SE
96
- * @alias sap.ui.webc.main.DateTimePicker
97
- * @extends sap.ui.webc.main.DatePicker
98
- * @tagname ui5-datetime-picker
95
+ * @extends DatePicker
99
96
  * @since 1.0.0-rc.7
100
97
  * @public
101
98
  */
@@ -126,6 +123,7 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
126
123
  */
127
124
  /**
128
125
  * Opens the picker.
126
+ *
129
127
  * @public
130
128
  */
131
129
  async openPicker() {
@@ -197,6 +195,7 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
197
195
  }
198
196
  /**
199
197
  * Defines whether the dialog on mobile should have header
198
+ *
200
199
  * @private
201
200
  */
202
201
  get _shouldHideHeader() {
@@ -263,7 +262,8 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
263
262
  /**
264
263
  * Handles the date/time switch available in <code>phoneMode</code> to switch
265
264
  * between the date and time views.
266
- * @param {Event} e
265
+ *
266
+ * @param e
267
267
  */
268
268
  _dateTimeSwitchChange(e) {
269
269
  const target = e.target;
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport Button from \"./Button.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport TimeSelection from \"./TimeSelection.js\";\nimport type { TimeSelectionChangeEventDetail, TimeSelectionSliderChangeEventDetail } from \"./TimeSelection.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerPopoverTemplate from \"./generated/templates/DateTimePickerPopoverTemplate.lit.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>DateTimePicker</code> component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * <h3>Usage</h3>\n *\n * Use the <code>DateTimePicker</code> if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the <code>DatePicker</code> or the <code>TimePicker</code> components instead.\n * <br><br>\n * The user can set date/time by:\n * <ul>\n * <li>using the calendar and the time selectors</li>\n * <li>typing in the input field</li>\n * </ul>\n *\n * Programmatically, to set date/time for the <code>DateTimePicker</code>, use the <code>value</code> property\n *\n * <h3>Formatting</h3>\n *\n * The value entered by typing into the input field must fit to the used date/time format.\n * <br><br>\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see <ui5-link target=\"_blank\" href=\"https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\">UTS #35: Unicode Locale Data Markup Language</ui5-link>.\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, hh:mm:ss aa</code>\n * corresponds the <code>13/04/2020, 03:16:16 AM</code> value.\n * <br>\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, HH:mm:ss</code>\n * corresponds the <code>13/04/2020, 15:16:16</code> value.\n * <br>\n * The capital 'H' indicates \"24\" hours format.\n *\n * <br><br>\n * <b>Note:</b> If the <code>formatPattern</code> does NOT include time,\n * the <code>DateTimePicker</code> will fallback to the default time format according to the locale.\n *\n * <br><br>\n * <b>Note:</b> If no placeholder is set to the <code>DateTimePicker</code>,\n * the current <code>formatPattern</code> is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * <br><br>\n * <b>Note:</b> If the user input does NOT match the <code>formatPattern</code>,\n * the <code>DateTimePicker</code> makes an attempt to parse it based on the\n * locale settings.\n *\n * <h3>Responsive behavior</h3>\n *\n * The <code>DateTimePicker</code> is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateTimePicker.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.DateTimePicker\n * @extends sap.ui.webc.main.DatePicker\n * @tagname ui5-datetime-picker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\tstaticAreaTemplate: DateTimePickerPopoverTemplate,\n\tstyles: [\n\t\tDateTimePicker.styles,\n\t\tDateTimePickerCss,\n\t],\n\tstaticAreaStyles: [\n\t\tDatePicker.staticAreaStyles,\n\t\tDateTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\t...DatePicker.dependencies,\n\t\tCalendar,\n\t\tButton,\n\t\tToggleButton,\n\t\tSegmentedButton,\n\t\tTimeSelection,\n\t],\n})\nclass DateTimePicker extends DatePicker {\n\t/**\n\t * Defines the visibility of the time view in <code>phoneMode</code>.\n\t * For more information, see the <code>phoneMode</code> property.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The date view would be displayed by default.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView!: boolean;\n\n\t/**\n\t * Defines if the <code>DateTimePicker</code> should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode!: boolean;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues!: PreviewValues;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hours\" })\n\t_currentTimeSlider!: string;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * PUBLIC METHODS\n\t */\n\n\t/**\n\t * Opens the picker.\n\t * @public\n\t */\n\tasync openPicker() {\n\t\tawait super.openPicker();\n\t\tthis._currentTimeSlider = \"hours\";\n\t\tthis._previewValues.timeSelectionValue = this.value || this.getFormat().format(new Date());\n\t}\n\n\t/**\n\t * Read-only getters\n\t */\n\n\tget classes() {\n\t\treturn {\n\t\t\tpicker: {\n\t\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t\t},\n\t\t\tdateTimeView: {\n\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t},\n\t\t\tfooter: {\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView),\n\t\t\t},\n\t\t};\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : this.formatPattern;\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this.phone ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this.phone ? this._showTimeView : true;\n\t}\n\n\tget phone() {\n\t\treturn super.phone || this._phoneMode;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.values[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\tonTimeSliderChange(e: CustomEvent<TimeSelectionSliderChangeEventDetail>) {\n\t\tthis._currentTimeSlider = e.detail.slider;\n\t}\n\n\t/**\n\t * Handles document resize to switch between <code>phoneMode</code> and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the <code>submit</code> button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the <code>cancel</code> button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in <code>phoneMode</code> to switch\n\t * between the date and time views.\n\t * @param {Event} e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._showTimeView = target.getAttribute(\"key\") === \"Time\";\n\t\tif (this._showTimeView) {\n\t\t\tthis._currentTimeSlider = \"hours\";\n\t\t}\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tasync getPicker() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport Button from \"./Button.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport TimeSelection from \"./TimeSelection.js\";\nimport type { TimeSelectionChangeEventDetail, TimeSelectionSliderChangeEventDetail } from \"./TimeSelection.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerPopoverTemplate from \"./generated/templates/DateTimePickerPopoverTemplate.lit.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>DateTimePicker</code> component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * <h3>Usage</h3>\n *\n * Use the <code>DateTimePicker</code> if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the <code>DatePicker</code> or the <code>TimePicker</code> components instead.\n * <br><br>\n * The user can set date/time by:\n * <ul>\n * <li>using the calendar and the time selectors</li>\n * <li>typing in the input field</li>\n * </ul>\n *\n * Programmatically, to set date/time for the <code>DateTimePicker</code>, use the <code>value</code> property\n *\n * <h3>Formatting</h3>\n *\n * The value entered by typing into the input field must fit to the used date/time format.\n * <br><br>\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see <ui5-link target=\"_blank\" href=\"https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\">UTS #35: Unicode Locale Data Markup Language</ui5-link>.\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, hh:mm:ss aa</code>\n * corresponds the <code>13/04/2020, 03:16:16 AM</code> value.\n * <br>\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, HH:mm:ss</code>\n * corresponds the <code>13/04/2020, 15:16:16</code> value.\n * <br>\n * The capital 'H' indicates \"24\" hours format.\n *\n * <br><br>\n * <b>Note:</b> If the <code>formatPattern</code> does NOT include time,\n * the <code>DateTimePicker</code> will fallback to the default time format according to the locale.\n *\n * <br><br>\n * <b>Note:</b> If no placeholder is set to the <code>DateTimePicker</code>,\n * the current <code>formatPattern</code> is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * <br><br>\n * <b>Note:</b> If the user input does NOT match the <code>formatPattern</code>,\n * the <code>DateTimePicker</code> makes an attempt to parse it based on the\n * locale settings.\n *\n * <h3>Responsive behavior</h3>\n *\n * The <code>DateTimePicker</code> is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateTimePicker.js\";</code>\n *\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\tstaticAreaTemplate: DateTimePickerPopoverTemplate,\n\tstyles: [\n\t\tDateTimePicker.styles,\n\t\tDateTimePickerCss,\n\t],\n\tstaticAreaStyles: [\n\t\tDatePicker.staticAreaStyles,\n\t\tDateTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\t...DatePicker.dependencies,\n\t\tCalendar,\n\t\tButton,\n\t\tToggleButton,\n\t\tSegmentedButton,\n\t\tTimeSelection,\n\t],\n})\nclass DateTimePicker extends DatePicker {\n\t/**\n\t * Defines the visibility of the time view in <code>phoneMode</code>.\n\t * For more information, see the <code>phoneMode</code> property.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The date view would be displayed by default.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView!: boolean;\n\n\t/**\n\t * Defines if the <code>DateTimePicker</code> should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode!: boolean;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues!: PreviewValues;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hours\" })\n\t_currentTimeSlider!: string;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * PUBLIC METHODS\n\t */\n\n\t/**\n\t * Opens the picker.\n\t *\n\t * @public\n\t */\n\tasync openPicker(): Promise<void> {\n\t\tawait super.openPicker();\n\t\tthis._currentTimeSlider = \"hours\";\n\t\tthis._previewValues.timeSelectionValue = this.value || this.getFormat().format(new Date());\n\t}\n\n\t/**\n\t * Read-only getters\n\t */\n\n\tget classes() {\n\t\treturn {\n\t\t\tpicker: {\n\t\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t\t},\n\t\t\tdateTimeView: {\n\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t},\n\t\t\tfooter: {\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView),\n\t\t\t},\n\t\t};\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : this.formatPattern;\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this.phone ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this.phone ? this._showTimeView : true;\n\t}\n\n\tget phone() {\n\t\treturn super.phone || this._phoneMode;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t *\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.values[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\tonTimeSliderChange(e: CustomEvent<TimeSelectionSliderChangeEventDetail>) {\n\t\tthis._currentTimeSlider = e.detail.slider;\n\t}\n\n\t/**\n\t * Handles document resize to switch between <code>phoneMode</code> and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the <code>submit</code> button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the <code>cancel</code> button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in <code>phoneMode</code> to switch\n\t * between the date and time views.\n\t *\n\t * @param e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._showTimeView = target.getAttribute(\"key\") === \"Time\";\n\t\tif (this._showTimeView) {\n\t\t\tthis._currentTimeSlider = \"hours\";\n\t\t}\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tasync getPicker() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
@@ -43,17 +43,14 @@ type DayPickerNavigateEventDetail = {
43
43
  * Represents the days inside a single month view of the <code>ui5-calendar</code> component.
44
44
  *
45
45
  * @constructor
46
- * @author SAP SE
47
- * @alias sap.ui.webc.main.DayPicker
48
- * @extends sap.ui.webc.main.CalendarPart
49
- * @tagname ui5-daypicker
50
- * @public
46
+ * @extends CalendarPart
47
+ * @private
51
48
  */
52
49
  declare class DayPicker extends CalendarPart implements ICalendarPicker {
53
50
  /**
54
51
  * An array of UTC timestamps representing the selected date or dates depending on the capabilities of the picker component.
55
- * @type {array}
56
- * @name sap.ui.webc.main.DayPicker.prototype.selectedDates
52
+ *
53
+ * @default []
57
54
  * @public
58
55
  */
59
56
  selectedDates: Array<number>;
@@ -65,9 +62,8 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
65
62
  * <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>
66
63
  * <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>
67
64
  * </ul>
68
- * @type {sap.ui.webc.main.types.CalendarSelectionMode}
69
- * @name sap.ui.webc.main.DayPicker.prototype.selectionMode
70
- * @defaultvalue "Single"
65
+ *
66
+ * @default "Single"
71
67
  * @public
72
68
  */
73
69
  selectionMode: `${CalendarSelectionMode}`;
@@ -78,27 +74,25 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
78
74
  * <b>Note:<b> For calendars other than Gregorian,
79
75
  * the week numbers are not displayed regardless of what is set.
80
76
  *
81
- * @type {boolean}
82
- * @name sap.ui.webc.main.DayPicker.prototype.hideWeekNumbers
83
- * @defaultvalue false
77
+ * @default false
84
78
  * @public
85
79
  * @since 1.0.0-rc.8
86
80
  */
87
81
  hideWeekNumbers: boolean;
88
82
  /**
89
- * @type {object}
90
83
  * @private
91
84
  */
92
85
  _weeks: Array<Week>;
93
86
  _dayNames: Array<DayName>;
94
87
  /**
95
88
  * When set, the component will skip all work in onBeforeRendering and will not automatically set the focus on itself
96
- * @type {boolean}
89
+ *
97
90
  * @private
98
91
  */
99
92
  _hidden: boolean;
100
93
  /**
101
94
  * When selectionMode="Range" and the first day in the range is selected, this is the currently hovered (when using mouse) or focused (when using keyboard) day by the user
95
+ *
102
96
  * @private
103
97
  */
104
98
  _secondTimestamp?: number;
@@ -107,20 +101,22 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
107
101
  onBeforeRendering(): void;
108
102
  /**
109
103
  * Builds the "_weeks" object that represents the month.
110
- * @param { LocaleData }localeData
104
+ *
105
+ * @param localeData
111
106
  * @private
112
107
  */
113
108
  _buildWeeks(localeData: LocaleData): void;
114
109
  /**
115
110
  * Builds the dayNames object (header of the month).
116
- * @param { LocaleData } localeData
111
+ *
112
+ * @param localeData
117
113
  * @private
118
114
  */
119
115
  _buildDayNames(localeData: LocaleData): void;
120
116
  /**
121
117
  * Tells if any of the days is more than 4 characters(too long to render).
122
- * @param { Array<string> } dayNames
123
- * @returns { boolean }
118
+ *
119
+ * @param dayNames
124
120
  * @private
125
121
  */
126
122
  namesTooLong(dayNames: Array<string>): boolean;
@@ -129,27 +125,29 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
129
125
  _onfocusout(): void;
130
126
  /**
131
127
  * Tells if the day is selected (dark blue).
132
- * @param { number } timestamp
133
- * @returns { boolean }
128
+ *
129
+ * @param timestamp
134
130
  * @private
135
131
  */
136
132
  _isDaySelected(timestamp: number): boolean;
137
133
  /**
138
134
  * Tells if the day is inside a selection range (light blue).
139
- * @param { number } timestamp
140
- * @returns { boolean }
135
+ *
136
+ * @param timestamp
141
137
  * @private
142
138
  */
143
139
  _isDayInsideSelectionRange(timestamp: number): boolean;
144
140
  /**
145
141
  * Selects/deselects a day.
146
- * @param { Event} e
147
- * @param { boolean} isShift true if the user did Click+Shift or Enter+Shift (but not Space+Shift)
142
+ *
143
+ * @param e
144
+ * @param isShift true if the user did Click+Shift or Enter+Shift (but not Space+Shift)
148
145
  * @private
149
146
  */
150
147
  _selectDate(e: Event, isShift: boolean): void;
151
148
  /**
152
149
  * Selects/deselects the whole row (week).
150
+ *
153
151
  * @private
154
152
  */
155
153
  _selectWeek(): void;
@@ -158,13 +156,15 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
158
156
  _removeTimestampFromSelection(timestamp: number): void;
159
157
  /**
160
158
  * Called when at least one day is selected and the user presses "Shift".
161
- * @param { number } timestamp
159
+ *
160
+ * @param timestamp
162
161
  * @private
163
162
  */
164
163
  _multipleSelection(timestamp: number): void;
165
164
  /**
166
165
  * Set the hovered day as the "_secondTimestamp".
167
- * @param { MouseEvent } e
166
+ *
167
+ * @param e
168
168
  * @private
169
169
  */
170
170
  _onmouseover(e: MouseEvent): void;
@@ -173,55 +173,62 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
173
173
  /**
174
174
  * Click is the same as "Enter".
175
175
  * <b>Note:</b> "Click+Shift" has the same effect as "Enter+Shift".
176
- * @param { MouseEvent } e
176
+ *
177
+ * @param e
177
178
  * @private
178
179
  */
179
180
  _onclick(e: MouseEvent): void;
180
181
  /**
181
182
  * Called upon "Home" or "End" - moves the focus to the first or last item in the row.
182
- * @param { boolean } homePressed
183
+ *
184
+ * @param homePressed
183
185
  * @private
184
186
  */
185
187
  _onHomeOrEnd(homePressed: boolean): void;
186
188
  /**
187
189
  * Called by the Calendar component.
190
+ *
188
191
  * @protected
189
- * @returns { boolean }
190
192
  */
191
193
  _hasPreviousPage(): boolean;
192
194
  /**
193
195
  * Called by the Calendar component.
196
+ *
194
197
  * @protected
195
- * @returns { boolean }
196
198
  */
197
199
  _hasNextPage(): boolean;
198
200
  /**
199
201
  * Called by the Calendar component.
202
+ *
200
203
  * @protected
201
204
  */
202
205
  _showPreviousPage(): void;
203
206
  /**
204
207
  * Called by the Calendar component.
208
+ *
205
209
  * @protected
206
210
  */
207
211
  _showNextPage(): void;
208
212
  /**
209
213
  * Modifies the timestamp by a certain amount of days/months/years.
210
- * @param { number } amount
211
- * @param { string } unit
212
- * @param { boolean } preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)
214
+ *
215
+ * @param amount
216
+ * @param unit
217
+ * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)
213
218
  * @private
214
219
  */
215
220
  _modifyTimestampBy(amount: number, unit: string, preserveDate?: boolean): void;
216
221
  /**
217
222
  * Sets the timestamp to an absolute value.
218
- * @param { number } value
223
+ *
224
+ * @param value
219
225
  * @private
220
226
  */
221
227
  _setTimestamp(value: number): void;
222
228
  /**
223
229
  * During range selection, when the user is navigating with the keyboard,
224
230
  * the currently focused day is considered the "second day".
231
+ *
225
232
  * @private
226
233
  */
227
234
  _updateSecondTimestamp(): void;