@ui5/webcomponents 2.13.1 → 2.14.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 (476) hide show
  1. package/CHANGELOG.md +11 -2
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/DateComponentBase.d.ts +24 -0
  4. package/dist/DateComponentBase.js +80 -1
  5. package/dist/DateComponentBase.js.map +1 -1
  6. package/dist/DatePicker.d.ts +32 -1
  7. package/dist/DatePicker.js +94 -10
  8. package/dist/DatePicker.js.map +1 -1
  9. package/dist/DatePickerInputTemplate.js +1 -1
  10. package/dist/DatePickerInputTemplate.js.map +1 -1
  11. package/dist/DateRangePicker.d.ts +35 -0
  12. package/dist/DateRangePicker.js +119 -9
  13. package/dist/DateRangePicker.js.map +1 -1
  14. package/dist/DateTimePicker.d.ts +10 -0
  15. package/dist/DateTimePicker.js +54 -4
  16. package/dist/DateTimePicker.js.map +1 -1
  17. package/dist/List.d.ts +2 -0
  18. package/dist/List.js +13 -26
  19. package/dist/List.js.map +1 -1
  20. package/dist/ListItemGroup.d.ts +4 -0
  21. package/dist/ListItemGroup.js +20 -53
  22. package/dist/ListItemGroup.js.map +1 -1
  23. package/dist/SelectTemplate.js +1 -1
  24. package/dist/SelectTemplate.js.map +1 -1
  25. package/dist/Tree.d.ts +7 -0
  26. package/dist/Tree.js +37 -38
  27. package/dist/Tree.js.map +1 -1
  28. package/dist/css/themes/Avatar.css +1 -1
  29. package/dist/css/themes/AvatarGroup.css +1 -1
  30. package/dist/css/themes/Bar.css +1 -1
  31. package/dist/css/themes/Breadcrumbs.css +1 -1
  32. package/dist/css/themes/BusyIndicator.css +1 -1
  33. package/dist/css/themes/Button.css +1 -1
  34. package/dist/css/themes/ButtonBadge.css +1 -1
  35. package/dist/css/themes/Calendar.css +1 -1
  36. package/dist/css/themes/CalendarHeader.css +1 -1
  37. package/dist/css/themes/CalendarLegend.css +1 -1
  38. package/dist/css/themes/CalendarLegendItem.css +1 -1
  39. package/dist/css/themes/Card.css +1 -1
  40. package/dist/css/themes/CardHeader.css +1 -1
  41. package/dist/css/themes/Carousel.css +1 -1
  42. package/dist/css/themes/CheckBox.css +1 -1
  43. package/dist/css/themes/ColorPalette.css +1 -1
  44. package/dist/css/themes/ColorPaletteItem.css +1 -1
  45. package/dist/css/themes/ColorPalettePopover.css +1 -1
  46. package/dist/css/themes/ColorPicker.css +1 -1
  47. package/dist/css/themes/ComboBox.css +1 -1
  48. package/dist/css/themes/ComboBoxItem.css +1 -1
  49. package/dist/css/themes/DatePicker.css +1 -1
  50. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  51. package/dist/css/themes/DayPicker.css +1 -1
  52. package/dist/css/themes/Dialog.css +1 -1
  53. package/dist/css/themes/DynamicDateRange.css +1 -1
  54. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  55. package/dist/css/themes/FileUploader.css +1 -1
  56. package/dist/css/themes/Form.css +1 -1
  57. package/dist/css/themes/FormItem.css +1 -1
  58. package/dist/css/themes/FormItemSpan.css +1 -1
  59. package/dist/css/themes/GrowingButton.css +1 -1
  60. package/dist/css/themes/Icon.css +1 -1
  61. package/dist/css/themes/Input.css +1 -1
  62. package/dist/css/themes/InputIcon.css +1 -1
  63. package/dist/css/themes/InputSharedStyles.css +1 -1
  64. package/dist/css/themes/Link.css +1 -1
  65. package/dist/css/themes/List.css +1 -1
  66. package/dist/css/themes/ListItem.css +1 -1
  67. package/dist/css/themes/ListItemBase.css +1 -1
  68. package/dist/css/themes/ListItemCustom.css +1 -1
  69. package/dist/css/themes/ListItemGroup.css +1 -1
  70. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  71. package/dist/css/themes/ListItemIcon.css +1 -1
  72. package/dist/css/themes/Menu.css +1 -1
  73. package/dist/css/themes/MenuItem.css +1 -1
  74. package/dist/css/themes/MessageStrip.css +1 -1
  75. package/dist/css/themes/MonthPicker.css +1 -1
  76. package/dist/css/themes/MultiComboBox.css +1 -1
  77. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  78. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  79. package/dist/css/themes/MultiInput.css +1 -1
  80. package/dist/css/themes/OptionBase.css +1 -1
  81. package/dist/css/themes/Panel.css +1 -1
  82. package/dist/css/themes/Popover.css +1 -1
  83. package/dist/css/themes/PopupsCommon.css +1 -1
  84. package/dist/css/themes/ProgressIndicator.css +1 -1
  85. package/dist/css/themes/RadioButton.css +1 -1
  86. package/dist/css/themes/RangeSlider.css +1 -1
  87. package/dist/css/themes/RatingIndicator.css +1 -1
  88. package/dist/css/themes/ResponsivePopover.css +1 -1
  89. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  90. package/dist/css/themes/SegmentedButton.css +1 -1
  91. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  92. package/dist/css/themes/Select.css +1 -1
  93. package/dist/css/themes/SliderBase.css +1 -1
  94. package/dist/css/themes/SplitButton.css +1 -1
  95. package/dist/css/themes/StepInput.css +1 -1
  96. package/dist/css/themes/SuggestionItem.css +1 -1
  97. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  98. package/dist/css/themes/Switch.css +1 -1
  99. package/dist/css/themes/TabContainer.css +1 -1
  100. package/dist/css/themes/TabInOverflow.css +1 -1
  101. package/dist/css/themes/TabInStrip.css +1 -1
  102. package/dist/css/themes/TabSemanticIcon.css +1 -1
  103. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  104. package/dist/css/themes/TableCellBase.css +1 -1
  105. package/dist/css/themes/TableHeaderRow.css +1 -1
  106. package/dist/css/themes/TableRow.css +1 -1
  107. package/dist/css/themes/TableRowActionBase.css +1 -1
  108. package/dist/css/themes/TableRowBase.css +1 -1
  109. package/dist/css/themes/Tag.css +1 -1
  110. package/dist/css/themes/Text.css +1 -1
  111. package/dist/css/themes/TextArea.css +1 -1
  112. package/dist/css/themes/TimePicker.css +1 -1
  113. package/dist/css/themes/Toast.css +1 -1
  114. package/dist/css/themes/ToggleButton.css +1 -1
  115. package/dist/css/themes/Token.css +1 -1
  116. package/dist/css/themes/Tokenizer.css +1 -1
  117. package/dist/css/themes/TokenizerPopover.css +1 -1
  118. package/dist/css/themes/Toolbar.css +1 -1
  119. package/dist/css/themes/ToolbarButton.css +1 -1
  120. package/dist/css/themes/ToolbarPopover.css +1 -1
  121. package/dist/css/themes/ToolbarSeparator.css +1 -1
  122. package/dist/css/themes/TreeItem.css +1 -1
  123. package/dist/css/themes/ValueStateMessage.css +1 -1
  124. package/dist/css/themes/ValueStateVariables.css +1 -1
  125. package/dist/css/themes/YearPicker.css +1 -1
  126. package/dist/css/themes/YearRangePicker.css +1 -1
  127. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  128. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  129. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  130. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  131. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  132. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  133. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  134. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  135. package/dist/custom-elements-internal.json +489 -0
  136. package/dist/custom-elements.json +471 -0
  137. package/dist/delegate/DragAndDropHandler.d.ts +33 -0
  138. package/dist/delegate/DragAndDropHandler.js +96 -0
  139. package/dist/delegate/DragAndDropHandler.js.map +1 -0
  140. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  141. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  142. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  143. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  144. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  145. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  146. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  147. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  148. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  149. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  150. package/dist/generated/themes/Avatar.css.js +1 -1
  151. package/dist/generated/themes/Avatar.css.js.map +1 -1
  152. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  153. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  154. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  155. package/dist/generated/themes/Bar.css.d.ts +1 -1
  156. package/dist/generated/themes/Bar.css.js +1 -1
  157. package/dist/generated/themes/Bar.css.js.map +1 -1
  158. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  159. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  160. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  161. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  162. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  163. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  164. package/dist/generated/themes/Button.css.d.ts +1 -1
  165. package/dist/generated/themes/Button.css.js +1 -1
  166. package/dist/generated/themes/Button.css.js.map +1 -1
  167. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  168. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  169. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  170. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  171. package/dist/generated/themes/Calendar.css.js +1 -1
  172. package/dist/generated/themes/Calendar.css.js.map +1 -1
  173. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  174. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  175. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  176. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  177. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  178. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  179. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  180. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  181. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  182. package/dist/generated/themes/Card.css.d.ts +1 -1
  183. package/dist/generated/themes/Card.css.js +1 -1
  184. package/dist/generated/themes/Card.css.js.map +1 -1
  185. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  186. package/dist/generated/themes/CardHeader.css.js +1 -1
  187. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  188. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  189. package/dist/generated/themes/Carousel.css.js +1 -1
  190. package/dist/generated/themes/Carousel.css.js.map +1 -1
  191. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  192. package/dist/generated/themes/CheckBox.css.js +1 -1
  193. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  194. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  195. package/dist/generated/themes/ColorPalette.css.js +1 -1
  196. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  197. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  198. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  199. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  200. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  201. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  202. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  203. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  204. package/dist/generated/themes/ColorPicker.css.js +1 -1
  205. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  206. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  207. package/dist/generated/themes/ComboBox.css.js +1 -1
  208. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  209. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  210. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  211. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  212. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  213. package/dist/generated/themes/DatePicker.css.js +1 -1
  214. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  215. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  216. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  217. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  218. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  219. package/dist/generated/themes/DayPicker.css.js +1 -1
  220. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  221. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  222. package/dist/generated/themes/Dialog.css.js +1 -1
  223. package/dist/generated/themes/Dialog.css.js.map +1 -1
  224. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  225. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  226. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  227. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  228. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  229. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  230. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  231. package/dist/generated/themes/FileUploader.css.js +1 -1
  232. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  233. package/dist/generated/themes/Form.css.d.ts +1 -1
  234. package/dist/generated/themes/Form.css.js +1 -1
  235. package/dist/generated/themes/Form.css.js.map +1 -1
  236. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  237. package/dist/generated/themes/FormItem.css.js +1 -1
  238. package/dist/generated/themes/FormItem.css.js.map +1 -1
  239. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  240. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  241. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  242. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  243. package/dist/generated/themes/GrowingButton.css.js +1 -1
  244. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  245. package/dist/generated/themes/Icon.css.d.ts +1 -1
  246. package/dist/generated/themes/Icon.css.js +1 -1
  247. package/dist/generated/themes/Icon.css.js.map +1 -1
  248. package/dist/generated/themes/Input.css.d.ts +1 -1
  249. package/dist/generated/themes/Input.css.js +1 -1
  250. package/dist/generated/themes/Input.css.js.map +1 -1
  251. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  252. package/dist/generated/themes/InputIcon.css.js +1 -1
  253. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  254. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  255. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  256. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  257. package/dist/generated/themes/Link.css.d.ts +1 -1
  258. package/dist/generated/themes/Link.css.js +1 -1
  259. package/dist/generated/themes/Link.css.js.map +1 -1
  260. package/dist/generated/themes/List.css.d.ts +1 -1
  261. package/dist/generated/themes/List.css.js +1 -1
  262. package/dist/generated/themes/List.css.js.map +1 -1
  263. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  264. package/dist/generated/themes/ListItem.css.js +1 -1
  265. package/dist/generated/themes/ListItem.css.js.map +1 -1
  266. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  267. package/dist/generated/themes/ListItemBase.css.js +1 -1
  268. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  269. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  270. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  271. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  272. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  273. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  274. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  275. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  276. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  277. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  278. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  279. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  280. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  281. package/dist/generated/themes/Menu.css.d.ts +1 -1
  282. package/dist/generated/themes/Menu.css.js +1 -1
  283. package/dist/generated/themes/Menu.css.js.map +1 -1
  284. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  285. package/dist/generated/themes/MenuItem.css.js +1 -1
  286. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  287. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  288. package/dist/generated/themes/MessageStrip.css.js +1 -1
  289. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  290. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  291. package/dist/generated/themes/MonthPicker.css.js +1 -1
  292. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  293. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  294. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  295. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  296. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  297. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  298. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  299. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  300. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  301. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  302. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  303. package/dist/generated/themes/MultiInput.css.js +1 -1
  304. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  305. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  306. package/dist/generated/themes/OptionBase.css.js +1 -1
  307. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  308. package/dist/generated/themes/Panel.css.d.ts +1 -1
  309. package/dist/generated/themes/Panel.css.js +1 -1
  310. package/dist/generated/themes/Panel.css.js.map +1 -1
  311. package/dist/generated/themes/Popover.css.d.ts +1 -1
  312. package/dist/generated/themes/Popover.css.js +1 -1
  313. package/dist/generated/themes/Popover.css.js.map +1 -1
  314. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  315. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  316. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  317. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  318. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  319. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  320. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  321. package/dist/generated/themes/RadioButton.css.js +1 -1
  322. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  323. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  324. package/dist/generated/themes/RangeSlider.css.js +1 -1
  325. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  326. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  327. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  328. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  329. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  330. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  331. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  332. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  333. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  334. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  335. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  336. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  337. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  338. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  339. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  340. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  341. package/dist/generated/themes/Select.css.d.ts +1 -1
  342. package/dist/generated/themes/Select.css.js +1 -1
  343. package/dist/generated/themes/Select.css.js.map +1 -1
  344. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  345. package/dist/generated/themes/SliderBase.css.js +1 -1
  346. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  347. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  348. package/dist/generated/themes/SplitButton.css.js +1 -1
  349. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  350. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  351. package/dist/generated/themes/StepInput.css.js +1 -1
  352. package/dist/generated/themes/StepInput.css.js.map +1 -1
  353. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  354. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  355. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  356. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  357. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  358. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  359. package/dist/generated/themes/Switch.css.d.ts +1 -1
  360. package/dist/generated/themes/Switch.css.js +1 -1
  361. package/dist/generated/themes/Switch.css.js.map +1 -1
  362. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  363. package/dist/generated/themes/TabContainer.css.js +1 -1
  364. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  365. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  366. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  367. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  368. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  369. package/dist/generated/themes/TabInStrip.css.js +1 -1
  370. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  371. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  372. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  373. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  374. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  375. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  376. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  377. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  378. package/dist/generated/themes/TableCellBase.css.js +1 -1
  379. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  380. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  381. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  382. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  383. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  384. package/dist/generated/themes/TableRow.css.js +1 -1
  385. package/dist/generated/themes/TableRow.css.js.map +1 -1
  386. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  387. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  388. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  389. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  390. package/dist/generated/themes/TableRowBase.css.js +1 -1
  391. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  392. package/dist/generated/themes/Tag.css.d.ts +1 -1
  393. package/dist/generated/themes/Tag.css.js +1 -1
  394. package/dist/generated/themes/Tag.css.js.map +1 -1
  395. package/dist/generated/themes/Text.css.d.ts +1 -1
  396. package/dist/generated/themes/Text.css.js +1 -1
  397. package/dist/generated/themes/Text.css.js.map +1 -1
  398. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  399. package/dist/generated/themes/TextArea.css.js +1 -1
  400. package/dist/generated/themes/TextArea.css.js.map +1 -1
  401. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  402. package/dist/generated/themes/TimePicker.css.js +1 -1
  403. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  404. package/dist/generated/themes/Toast.css.d.ts +1 -1
  405. package/dist/generated/themes/Toast.css.js +1 -1
  406. package/dist/generated/themes/Toast.css.js.map +1 -1
  407. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  408. package/dist/generated/themes/ToggleButton.css.js +1 -1
  409. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  410. package/dist/generated/themes/Token.css.d.ts +1 -1
  411. package/dist/generated/themes/Token.css.js +1 -1
  412. package/dist/generated/themes/Token.css.js.map +1 -1
  413. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  414. package/dist/generated/themes/Tokenizer.css.js +1 -1
  415. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  416. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  417. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  418. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  419. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  420. package/dist/generated/themes/Toolbar.css.js +1 -1
  421. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  422. package/dist/generated/themes/ToolbarButton.css.d.ts +1 -1
  423. package/dist/generated/themes/ToolbarButton.css.js +1 -1
  424. package/dist/generated/themes/ToolbarButton.css.js.map +1 -1
  425. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  426. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  427. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  428. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  429. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  430. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  431. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  432. package/dist/generated/themes/TreeItem.css.js +1 -1
  433. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  434. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  435. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  436. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  437. package/dist/generated/themes/ValueStateVariables.css.d.ts +1 -1
  438. package/dist/generated/themes/ValueStateVariables.css.js +1 -1
  439. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -1
  440. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  441. package/dist/generated/themes/YearPicker.css.js +1 -1
  442. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  443. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  444. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  445. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  446. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  447. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  448. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  449. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  450. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  451. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  452. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  453. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  454. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  455. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  456. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  457. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  458. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  459. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  460. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  461. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  462. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  464. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  465. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  468. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  470. package/dist/vscode.html-custom-data.json +63 -3
  471. package/dist/web-types.json +84 -4
  472. package/package.json +9 -9
  473. package/src/DatePickerInputTemplate.tsx +1 -1
  474. package/src/SelectTemplate.tsx +6 -5
  475. package/src/i18n/messagebundle_en_US_sappsd.properties +7 -0
  476. package/src/themes/base/sizes-parameters.css +6 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport query from \"@ui5/webcomponents-base/dist/decorators/query.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getRoundedTimestamp from \"@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisShow,\n\tisF4,\n\tisEnter,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone, isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport \"@ui5/webcomponents-icons/dist/appointment-2.js\";\n\nimport {\n\tDATEPICKER_OPEN_ICON_TITLE,\n\tDATEPICKER_DATE_DESCRIPTION,\n\tDATETIME_COMPONENTS_PLACEHOLDER_PREFIX,\n\tINPUT_SUGGESTIONS_TITLE,\n\tFORM_TEXTFIELD_REQUIRED,\n\tDATEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_WARNING,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateComponentBase from \"./DateComponentBase.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport type Calendar from \"./Calendar.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport type CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport type DateTimeInput from \"./DateTimeInput.js\";\nimport type { InputAccInfo } from \"./Input.js\";\nimport InputType from \"./types/InputType.js\";\nimport IconMode from \"./types/IconMode.js\";\nimport DatePickerTemplate from \"./DatePickerTemplate.js\";\n\n// default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Styles\nimport datePickerCss from \"./generated/themes/DatePicker.css.js\";\nimport datePickerPopoverCss from \"./generated/themes/DatePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype ValueStateAnnouncement = Record<Exclude<ValueState, ValueState.None>, string>;\n\ntype DatePickerChangeEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype DatePickerValueStateChangeEventDetail = {\n\tvalueState: `${ValueState}`,\n\tvalid: boolean,\n}\n\ntype DatePickerInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype Picker = \"day\" | \"month\" | \"year\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date-picker` component provides an input field with assigned calendar which opens on user action.\n * The `ui5-date-picker` allows users to select a localized date using touch,\n * mouse, or keyboard input. It consists of two parts: the date input field and the\n * date picker.\n *\n * ### Usage\n *\n * The user can enter a date by:\n *\n * - Using the calendar that opens in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and presses the enter key, the calendar shows the corresponding date.\n * When the user directly triggers the calendar display, the actual date is displayed.\n *\n * ### Formatting\n *\n * If a date is entered by typing it into\n * the input field, it must fit to the used date format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"yyyy-MM-dd\",\n * a valid value string is \"2015-07-30\" and the same is displayed in the input.\n *\n * ### Keyboard Handling\n * The `ui5-date-picker` provides advanced keyboard handling.\n * If the `ui5-date-picker` is focused,\n * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.\n * Once the drop-down is opened, you can use the [Up], [Down], [Left] or [Right] arrow keys\n * to navigate through the dates and select one by pressing the `Space` or `Enter` keys. Moreover you can\n * use TAB to reach the buttons for changing month and year.\n *\n * If the `ui5-date-picker` input field is focused and its corresponding picker dialog is not opened,\n * then users can increment or decrement the date referenced by `dateValue` property\n * by using the following shortcuts:\n *\n * - [Page Down] - Decrements the corresponding day of the month by one\n * - [Shift] + [Page Down] - Decrements the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Down] - Decrements the corresponding year by one\n * - [Page Up] - Increments the corresponding day of the month by one\n * - [Shift] + [Page Up] - Increments the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Up] - Increments the corresponding year by one\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * <script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DatePicker.js\";`\n * @constructor\n * @extends DateComponentBase\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-date-picker\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\ttemplate: DatePickerTemplate,\n\tstyles: [\n\t\tdatePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tdatePickerPopoverCss,\n\t\tValueStateMessageCss,\n\t],\n})\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the value of the component is changed at each key stroke.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"input\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired before the value state of the component is updated internally.\n * The event is preventable, meaning that if it's default action is\n * prevented, the component will not update the value state.\n * @public\n * @param {string} valueState The new `valueState` that will be set.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"value-state-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired after the component's picker is opened.\n * @since 2.4.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's picker is closed.\n * @since 2.4.0\n * @public\n */\n@event(\"close\")\nclass DatePicker extends DateComponentBase implements IFormInputElement {\n\teventDetails!: DateComponentBase[\"eventDetails\"] & {\n\t\tchange: DatePickerChangeEventDetail,\n\t\t\"value-changed\": DatePickerChangeEventDetail,\n\t\tinput: DatePickerInputEventDetail,\n\t\t\"value-state-change\": DatePickerValueStateChangeEventDetail,\n\t\topen: void,\n\t\tclose: void,\n\t}\n\t/**\n\t * Defines a formatted date value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\"\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as read-only.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers = false;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Object })\n\t_respPopoverConfig?: object;\n\n\t@property()\n\t_calendarCurrentPicker: Picker = \"day\";\n\n\tliveValue?: string;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot({ type: HTMLElement })\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tresponsivePopover?: ResponsivePopover;\n\n\t@query(\"[ui5-datetime-input]\")\n\t_dateTimeInput!: DateTimeInput;\n\n\t@query(\"[ui5-calendar]\")\n\t_calendar!: Calendar;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn DatePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tif (isPhone()) {\n\t\t\tthis.blur(); // close device's keyboard and prevent further typing\n\t\t} else {\n\t\t\tthis._dateTimeInput?.focus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\tonResponsivePopoverBeforeOpen() {\n\t\tthis._calendar.timestamp = this._calendarTimestamp;\n\t\tthis._calendarCurrentPicker = this.firstPicker;\n\t}\n\n\tonBeforeRendering() {\n\t\t[\"minDate\", \"maxDate\"].forEach((prop: string) => {\n\t\t\tconst propValue = this[prop as keyof DatePicker] as string;\n\n\t\t\tif (!this.isValid(propValue)) {\n\t\t\t\tconsole.warn(`Invalid value for property \"${prop}\": ${propValue} is not compatible with the configured format pattern: \"${this._displayFormat}\"`); // eslint-disable-line\n\t\t\t}\n\t\t});\n\n\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\tthis.liveValue = this.value;\n\t}\n\n\t/**\n\t * Override in derivatives to change calendar selection mode\n\t * @protected\n\t */\n\tget _calendarSelectionMode(): `${CalendarSelectionMode}` {\n\t\treturn \"Single\";\n\t}\n\n\t/**\n\t * Used to provide a timestamp to the Calendar (to focus it to a relevant date when open) based on the component's state\n\t * Override in derivatives to provide the calendar a timestamp based on their properties\n\t * By default focus the calendar on the selected date if set, or the current day otherwise\n\t * @protected\n\t */\n\tget _calendarTimestamp(): number {\n\t\tif (this.value && this.dateValueUTC && this._checkValueValidity(this.value)) {\n\t\t\tconst millisecondsUTC = this.dateValueUTC.getTime();\n\t\t\treturn getRoundedTimestamp(millisecondsUTC);\n\t\t}\n\n\t\treturn getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Used to provide selectedDates to the calendar based on the component's state\n\t * Override in derivatives to provide different rules for setting the calendar's selected dates\n\t * @protected\n\t */\n\tget _calendarSelectedDates(): Array<string> {\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn [this.value];\n\t\t}\n\n\t\treturn [];\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault(); // Prevent scroll on Alt/Option + Arrow Up/Down\n\t\t\tif (this.open) {\n\t\t\t\tif (!isF4(e)) {\n\t\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t}\n\t\t}\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target && this.open && this._dateTimeInput.id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"year\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"month\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"day\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"year\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"month\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"day\");\n\t\t}\n\t}\n\n\t/**\n\t * @param amount\n\t * @param unit\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @protected\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 newValue = this.formatValue(modifiedDate.toUTCJSDate());\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<\"change\" | \"value-changed\" | \"input\">, updateValue = true) {\n\t\tconst valid = this._checkValueValidity(value);\n\n\t\tif (valid && normalizeValue) {\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\n\t\tlet executeEvent = true;\n\t\tthis.liveValue = value;\n\n\t\tconst previousValue = this.value;\n\n\t\tif (updateValue) {\n\t\t\tthis._dateTimeInput.value = value;\n\t\t\tthis.value = value;\n\t\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\t}\n\n\t\tevents.forEach(e => {\n\t\t\tif (!this.fireDecoratorEvent(e, { value, valid })) {\n\t\t\t\texecuteEvent = false;\n\t\t\t}\n\t\t});\n\n\t\tif (!executeEvent && updateValue) {\n\t\t\tif (this.value !== previousValue && this.value !== this._dateTimeInput.value) {\n\t\t\t\treturn; // If the value was changed in the change event, do not revert it\n\t\t\t}\n\n\t\t\tthis._dateTimeInput.value = previousValue;\n\n\t\t\tthis.value = previousValue;\n\t\t}\n\t}\n\n\t_updateValueState() {\n\t\tconst valid = this._checkValueValidity(this.value);\n\t\tconst previousValueState = this.valueState;\n\n\t\tthis.valueState = valid ? ValueState.None : ValueState.Negative;\n\n\t\tconst eventPrevented = !this.fireDecoratorEvent(\"value-state-change\", { valueState: this.valueState, valid });\n\n\t\tif (eventPrevented) {\n\t\t\tthis.valueState = previousValueState;\n\t\t}\n\t}\n\n\t/**\n\t * The ui5-input \"submit\" event handler - fire change event when the user presses enter\n\t * @protected\n\t */\n\t_onInputSubmit() {}\n\n\t/**\n\t * The ui5-input \"change\" event handler - fire change event when the user focuses out of the input\n\t * @protected\n\t */\n\t_onInputChange(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The ui5-input \"input\" event handler - fire input even when the user types\n\t * @protected\n\t */\n\t_onInputInput(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, false, [\"input\"], false);\n\t}\n\n\t/**\n\t * Checks if the provided value is valid and within valid range.\n\t * @protected\n\t * @param value\n\t */\n\t_checkValueValidity(value: string): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn this.isValid(value) && this.isInValidRange(value);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tif (isPhone()) {\n\t\t\tthis.responsivePopover!.opener = this;\n\t\t\tthis.responsivePopover!.open = true;\n\t\t\te.preventDefault(); // prevent immediate selection of any item\n\t\t}\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValid(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a date is between the minimum and maximum date.\n\t * @public\n\t * @param value A value to be checked\n\t */\n\tisInValidRange(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\tconst calendarDate = this._getCalendarDateFromString(value);\n\n\t\tif (!calendarDate || !this._minDate || !this._maxDate) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\tget _displayFormat(): string {\n\t\t// @ts-ignore oFormatOptions is a private API of DateFormat\n\t\treturn this.getFormat().oFormatOptions.pattern as string;\n\t}\n\n\tget _lastDayOfTheYear() {\n\t\tconst currentYear = UI5Date.getInstance().getFullYear();\n\t\tconst lastDayOfTheYear = UI5Date.getInstance(currentYear, 11, 31, 23, 59, 59);\n\t\treturn this.getFormat().format(lastDayOfTheYear);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\tif (this.placeholder) {\n\t\t\treturn this.placeholder;\n\t\t}\n\n\t\t// translatable placeholder – for example \"e.g. 2025-12-31\"\n\t\treturn `${DatePicker.i18nBundle.getText(DATETIME_COMPONENTS_PLACEHOLDER_PREFIX)} ${this._lastDayOfTheYear}`;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn DatePicker.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget showHeader() {\n\t\treturn isPhone();\n\t}\n\n\tget showFooter() {\n\t\treturn isPhone();\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"grid\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\tget valueStateDefaultText(): string | undefined {\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget valueStateTextMappings(): ValueStateAnnouncement {\n\t\treturn {\n\t\t\t[ValueState.Positive]: DatePicker.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Negative]: DatePicker.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: DatePicker.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t[ValueState.Information]: DatePicker.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t};\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !willShowContent(this.valueStateMessage) && this.hasValueStateText;\n\t}\n\n\tget hasValueStateText(): boolean {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget openIconTitle() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);\n\t}\n\n\tget openIconName() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_DATE_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_POPOVER_ACCESSIBLE_NAME);\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 false;\n\t}\n\n\t/**\n\t * Returns the first picker depending on the CalendarPickerMode\n\t */\n\tget firstPicker() {\n\t\tconst calendarPickerMode = this._calendarPickersMode;\n\t\tlet firstPicker: Picker = \"day\";\n\n\t\tif (calendarPickerMode === CalendarPickersMode.YEAR) {\n\t\t\tfirstPicker = \"year\";\n\t\t} else if (calendarPickerMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tfirstPicker = \"month\";\n\t\t}\n\n\t\treturn firstPicker;\n\t}\n\n\t/**\n\t * Defines whether the value help icon is hidden\n\t * @private\n\t */\n\tget _iconMode() {\n\t\treturn isDesktop() ? IconMode.Decorative : IconMode.Interactive;\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\tget _calendarPickersMode() {\n\t\tconst format = this.getFormat() as DateFormat & { aFormatArray: Array<{type: string}> };\n\t\tconst patternSymbolTypes = format.aFormatArray.map(patternSymbolSettings => {\n\t\t\treturn patternSymbolSettings.type.toLowerCase();\n\t\t});\n\n\t\tif (patternSymbolTypes.includes(\"day\")) {\n\t\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t\t}\n\n\t\tif (patternSymbolTypes.includes(\"month\") || patternSymbolTypes.includes(\"monthstandalone\")) {\n\t\t\treturn CalendarPickersMode.MONTH_YEAR;\n\t\t}\n\n\t\treturn CalendarPickersMode.YEAR;\n\t}\n\n\t/**\n\t * The user selected a new date in the calendar\n\t * @param e\n\t * @protected\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\tconst newValue = e.detail.selectedValues && e.detail.selectedValues[0];\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress() {\n\t\tthis._calendarCurrentPicker = \"month\";\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress() {\n\t\tthis._calendarCurrentPicker = \"year\";\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date\n\t * according to the `formatPattern` property of the DatePicker instance\n\t * @public\n\t * @param date A Java Script date object to be formatted as string\n\t * @returns The date as string\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t_togglePicker(): void {\n\t\tthis.open = !this.open;\n\t}\n\n\t_toggleAndFocusInput() {\n\t\tthis._togglePicker();\n\t\tthis._dateTimeInput.focus();\n\t}\n\n\t/**\n\t * Currently selected date represented as a Local JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget dateValueUTC(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue, true) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\twidth: \"100%\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget type() {\n\t\treturn InputType.Text;\n\t}\n}\n\nDatePicker.define();\n\nexport default DatePicker;\nexport type {\n\tDatePickerChangeEventDetail,\n\tDatePickerInputEventDetail,\n\tDatePickerValueStateChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport query from \"@ui5/webcomponents-base/dist/decorators/query.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getRoundedTimestamp from \"@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisShow,\n\tisF4,\n\tisEnter,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone, isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport \"@ui5/webcomponents-icons/dist/appointment-2.js\";\n\nimport {\n\tDATEPICKER_OPEN_ICON_TITLE,\n\tDATEPICKER_DATE_DESCRIPTION,\n\tDATETIME_COMPONENTS_PLACEHOLDER_PREFIX,\n\tINPUT_SUGGESTIONS_TITLE,\n\tFORM_TEXTFIELD_REQUIRED,\n\tDATEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_WARNING,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateComponentBase from \"./DateComponentBase.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport type Calendar from \"./Calendar.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport type CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport type DateTimeInput from \"./DateTimeInput.js\";\nimport type { InputAccInfo } from \"./Input.js\";\nimport InputType from \"./types/InputType.js\";\nimport IconMode from \"./types/IconMode.js\";\nimport DatePickerTemplate from \"./DatePickerTemplate.js\";\n\n// default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Styles\nimport datePickerCss from \"./generated/themes/DatePicker.css.js\";\nimport datePickerPopoverCss from \"./generated/themes/DatePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype ValueStateAnnouncement = Record<Exclude<ValueState, ValueState.None>, string>;\n\ntype DatePickerChangeEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype DatePickerValueStateChangeEventDetail = {\n\tvalueState: `${ValueState}`,\n\tvalid: boolean,\n}\n\ntype DatePickerInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype Picker = \"day\" | \"month\" | \"year\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date-picker` component provides an input field with assigned calendar which opens on user action.\n * The `ui5-date-picker` allows users to select a localized date using touch,\n * mouse, or keyboard input. It consists of two parts: the date input field and the\n * date picker.\n *\n * ### Usage\n *\n * The user can enter a date by:\n *\n * - Using the calendar that opens in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and presses the enter key, the calendar shows the corresponding date.\n * When the user directly triggers the calendar display, the actual date is displayed.\n *\n * ### Formatting\n *\n * If a date is entered by typing it into\n * the input field, it must fit to the used date format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"yyyy-MM-dd\",\n * a valid value string is \"2015-07-30\" and the same is displayed in the input.\n *\n * ### Keyboard Handling\n * The `ui5-date-picker` provides advanced keyboard handling.\n * If the `ui5-date-picker` is focused,\n * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.\n * Once the drop-down is opened, you can use the [Up], [Down], [Left] or [Right] arrow keys\n * to navigate through the dates and select one by pressing the `Space` or `Enter` keys. Moreover you can\n * use TAB to reach the buttons for changing month and year.\n *\n * If the `ui5-date-picker` input field is focused and its corresponding picker dialog is not opened,\n * then users can increment or decrement the date referenced by `dateValue` property\n * by using the following shortcuts:\n *\n * - [Page Down] - Decrements the corresponding day of the month by one\n * - [Shift] + [Page Down] - Decrements the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Down] - Decrements the corresponding year by one\n * - [Page Up] - Increments the corresponding day of the month by one\n * - [Shift] + [Page Up] - Increments the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Up] - Increments the corresponding year by one\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * <script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DatePicker.js\";`\n * @constructor\n * @extends DateComponentBase\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-date-picker\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\ttemplate: DatePickerTemplate,\n\tstyles: [\n\t\tdatePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tdatePickerPopoverCss,\n\t\tValueStateMessageCss,\n\t],\n})\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the value of the component is changed at each key stroke.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"input\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired before the value state of the component is updated internally.\n * The event is preventable, meaning that if it's default action is\n * prevented, the component will not update the value state.\n * @public\n * @param {string} valueState The new `valueState` that will be set.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"value-state-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired after the component's picker is opened.\n * @since 2.4.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's picker is closed.\n * @since 2.4.0\n * @public\n */\n@event(\"close\")\nclass DatePicker extends DateComponentBase implements IFormInputElement {\n\teventDetails!: DateComponentBase[\"eventDetails\"] & {\n\t\tchange: DatePickerChangeEventDetail,\n\t\t\"value-changed\": DatePickerChangeEventDetail,\n\t\tinput: DatePickerInputEventDetail,\n\t\t\"value-state-change\": DatePickerValueStateChangeEventDetail,\n\t\topen: void,\n\t\tclose: void,\n\t}\n\t/**\n\t * Defines a formatted date value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\"\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as read-only.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers = false;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Object })\n\t_respPopoverConfig?: object;\n\n\t@property()\n\t_calendarCurrentPicker: Picker = \"day\";\n\n\tliveValue?: string;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot({ type: HTMLElement })\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tresponsivePopover?: ResponsivePopover;\n\n\t@query(\"[ui5-datetime-input]\")\n\t_dateTimeInput!: DateTimeInput;\n\n\t@query(\"[ui5-calendar]\")\n\t_calendar!: Calendar;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn DatePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tif (isPhone()) {\n\t\t\tthis.blur(); // close device's keyboard and prevent further typing\n\t\t} else {\n\t\t\tthis._dateTimeInput?.focus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\tonResponsivePopoverBeforeOpen() {\n\t\tthis._calendar.timestamp = this._calendarTimestamp;\n\t\tthis._calendarCurrentPicker = this.firstPicker;\n\t}\n\n\tonBeforeRendering() {\n\t\t[\"minDate\", \"maxDate\"].forEach((prop: string) => {\n\t\t\tconst propValue = this[prop as keyof DatePicker] as string;\n\n\t\t\tif (!this.isValid(propValue)) {\n\t\t\t\tconsole.warn(`Invalid value for property \"${prop}\": ${propValue} is not compatible with the configured format pattern: \"${this._displayFormat}\"`); // eslint-disable-line\n\t\t\t}\n\t\t});\n\n\t\tthis.value = this.normalizeFormattedValue(this.value) || this.value;\n\t\tthis.liveValue = this.value;\n\t}\n\n\t/**\n\t * Override in derivatives to change calendar selection mode\n\t * @protected\n\t */\n\tget _calendarSelectionMode(): `${CalendarSelectionMode}` {\n\t\treturn \"Single\";\n\t}\n\n\t/**\n\t * Used to provide a timestamp to the Calendar (to focus it to a relevant date when open) based on the component's state\n\t * Override in derivatives to provide the calendar a timestamp based on their properties\n\t * By default focus the calendar on the selected date if set, or the current day otherwise\n\t * @protected\n\t */\n\tget _calendarTimestamp(): number {\n\t\tif (this.value && this.dateValueUTC && this._checkValueValidity(this.value)) {\n\t\t\tconst millisecondsUTC = this.dateValueUTC.getTime();\n\t\t\treturn getRoundedTimestamp(millisecondsUTC);\n\t\t}\n\n\t\treturn getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Used to provide selectedDates to the calendar based on the component's state\n\t * Override in derivatives to provide different rules for setting the calendar's selected dates\n\t * @protected\n\t */\n\tget _calendarSelectedDates(): Array<string> {\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn [this.value];\n\t\t}\n\n\t\treturn [];\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault(); // Prevent scroll on Alt/Option + Arrow Up/Down\n\t\t\tif (this.open) {\n\t\t\t\tif (!isF4(e)) {\n\t\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t}\n\t\t}\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target && this.open && this._dateTimeInput.id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"year\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"month\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"day\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"year\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"month\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"day\");\n\t\t}\n\t}\n\n\t/**\n\t * @param amount\n\t * @param unit\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @protected\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 newValue = this.formatValue(modifiedDate.toUTCJSDate());\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<\"change\" | \"value-changed\" | \"input\">, updateValue = true) {\n\t\tconst valid = this._checkValueValidity(value);\n\n\t\tif (valid && normalizeValue) {\n\t\t\tvalue = this.getDisplayValueFromValue(value);\n\t\t\tvalue = this.normalizeDisplayValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\n\t\tlet executeEvent = true;\n\t\tthis.liveValue = value;\n\n\t\tconst previousValue = this.value;\n\n\t\tif (updateValue) {\n\t\t\tthis._dateTimeInput.value = value;\n\t\t\tthis.value = this.getValueFromDisplayValue(value);\n\t\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\t}\n\n\t\tevents.forEach(e => {\n\t\t\tif (!this.fireDecoratorEvent(e, { value, valid })) {\n\t\t\t\texecuteEvent = false;\n\t\t\t}\n\t\t});\n\n\t\tif (!executeEvent && updateValue) {\n\t\t\tif (this.value !== previousValue && this.value !== this._dateTimeInput.value) {\n\t\t\t\treturn; // If the value was changed in the change event, do not revert it\n\t\t\t}\n\n\t\t\tthis._dateTimeInput.value = previousValue;\n\n\t\t\tthis.value = previousValue;\n\t\t}\n\t}\n\n\t_updateValueState() {\n\t\tconst valid = this._checkValueValidity(this.value);\n\t\tconst previousValueState = this.valueState;\n\n\t\tthis.valueState = valid ? ValueState.None : ValueState.Negative;\n\n\t\tconst eventPrevented = !this.fireDecoratorEvent(\"value-state-change\", { valueState: this.valueState, valid });\n\n\t\tif (eventPrevented) {\n\t\t\tthis.valueState = previousValueState;\n\t\t}\n\t}\n\n\tgetValueFromDisplayValue(value: string): string {\n\t\tif (!this.getDisplayFormat().parse(value)) {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getValueFormat().format(this.getDisplayFormat().parse(value));\n\t}\n\n\tgetDisplayValueFromValue(value: string): string {\n\t\tif (!this.getValueFormat().parse(value)) {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getDisplayFormat().format(this.getValueFormat().parse(value));\n\t}\n\n\t/**\n\t * The ui5-input \"submit\" event handler - fire change event when the user presses enter\n\t * @protected\n\t */\n\t_onInputSubmit() {}\n\n\t/**\n\t * The ui5-input \"change\" event handler - fire change event when the user focuses out of the input\n\t * @protected\n\t */\n\t_onInputChange(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The ui5-input \"input\" event handler - fire input even when the user types\n\t * @protected\n\t */\n\t_onInputInput(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, false, [\"input\"], false);\n\t}\n\n\t/**\n\t * Checks if the provided value is valid and within valid range.\n\t * @protected\n\t * @param value\n\t */\n\t_checkValueValidity(value: string): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn this.isValidValue(value) && this.isInValidRange(value);\n\t}\n\n\t/**\n\t * Checks if the provided value is valid and within valid range.\n\t * @protected\n\t * @param value\n\t */\n\t_checkDisplayValueValidity(value: string): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn this.isValidDisplayValue(value) && this.isInValidRangeDisplayValue(value);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tif (isPhone()) {\n\t\t\tthis.responsivePopover!.opener = this;\n\t\t\tthis.responsivePopover!.open = true;\n\t\t\te.preventDefault(); // prevent immediate selection of any item\n\t\t}\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValid(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValidValue(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getValueFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValidDisplayValue(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getDisplayFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a date is between the minimum and maximum date.\n\t * @public\n\t * @param value A value to be checked\n\t */\n\tisInValidRange(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\tconst calendarDate = this._getCalendarDateFromString(value);\n\n\t\tif (!calendarDate || !this._minDate || !this._maxDate) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();\n\t}\n\n\tisInValidRangeDisplayValue(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\tconst calendarDate = this._getCalendarDateFromStringDisplayValue(value);\n\n\t\tif (!calendarDate || !this._minDate || !this._maxDate) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeFormattedValue(value: string) {\n\t\tif (!this.getValueFormat().parse(value, true)) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getValueFormat().format(this.getValueFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeDisplayValue(value: string) {\n\t\tif (value === \"\" || !this.getDisplayFormat().parse(value, true)) {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getDisplayFormat().format(this.getDisplayFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\tget _lastDayOfTheYear() {\n\t\tconst currentYear = UI5Date.getInstance().getFullYear();\n\t\tconst lastDayOfTheYear = UI5Date.getInstance(currentYear, 11, 31, 23, 59, 59);\n\t\treturn this.getFormat().format(lastDayOfTheYear);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\tif (this.placeholder) {\n\t\t\treturn this.placeholder;\n\t\t}\n\n\t\t// translatable placeholder – for example \"e.g. 2025-12-31\"\n\t\treturn `${DatePicker.i18nBundle.getText(DATETIME_COMPONENTS_PLACEHOLDER_PREFIX)} ${this._lastDayOfTheYear}`;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn DatePicker.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget showHeader() {\n\t\treturn isPhone();\n\t}\n\n\tget showFooter() {\n\t\treturn isPhone();\n\t}\n\n\tget displayValue() : string {\n\t\tif (!this.getValueFormat().parse(this.value, true)) {\n\t\t\treturn this.value;\n\t\t}\n\n\t\tif (!this.value) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn this.getDisplayFormat().format(this.getValueFormat().parse(this.value, true), true);\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"grid\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\tget valueStateDefaultText(): string | undefined {\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget valueStateTextMappings(): ValueStateAnnouncement {\n\t\treturn {\n\t\t\t[ValueState.Positive]: DatePicker.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Negative]: DatePicker.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: DatePicker.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t[ValueState.Information]: DatePicker.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t};\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !willShowContent(this.valueStateMessage) && this.hasValueStateText;\n\t}\n\n\tget hasValueStateText(): boolean {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget openIconTitle() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);\n\t}\n\n\tget openIconName() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_DATE_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_POPOVER_ACCESSIBLE_NAME);\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 false;\n\t}\n\n\t/**\n\t * Returns the first picker depending on the CalendarPickerMode\n\t */\n\tget firstPicker() {\n\t\tconst calendarPickerMode = this._calendarPickersMode;\n\t\tlet firstPicker: Picker = \"day\";\n\n\t\tif (calendarPickerMode === CalendarPickersMode.YEAR) {\n\t\t\tfirstPicker = \"year\";\n\t\t} else if (calendarPickerMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tfirstPicker = \"month\";\n\t\t}\n\n\t\treturn firstPicker;\n\t}\n\n\t/**\n\t * Defines whether the value help icon is hidden\n\t * @private\n\t */\n\tget _iconMode() {\n\t\treturn isDesktop() ? IconMode.Decorative : IconMode.Interactive;\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\tget _calendarPickersMode() {\n\t\tconst format = this.getFormat() as DateFormat & { aFormatArray: Array<{type: string}> };\n\t\tconst patternSymbolTypes = format.aFormatArray.map(patternSymbolSettings => {\n\t\t\treturn patternSymbolSettings.type.toLowerCase();\n\t\t});\n\n\t\tif (patternSymbolTypes.includes(\"day\")) {\n\t\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t\t}\n\n\t\tif (patternSymbolTypes.includes(\"month\") || patternSymbolTypes.includes(\"monthstandalone\")) {\n\t\t\treturn CalendarPickersMode.MONTH_YEAR;\n\t\t}\n\n\t\treturn CalendarPickersMode.YEAR;\n\t}\n\n\t/**\n\t * The user selected a new date in the calendar\n\t * @param e\n\t * @protected\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\tconst newValue = e.detail.selectedValues && e.detail.selectedValues[0];\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress() {\n\t\tthis._calendarCurrentPicker = \"month\";\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress() {\n\t\tthis._calendarCurrentPicker = \"year\";\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date\n\t * according to the `formatPattern` property of the DatePicker instance\n\t * @public\n\t * @param date A Java Script date object to be formatted as string\n\t * @returns The date as string\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getValueFormat().format(date);\n\t}\n\n\t_togglePicker(): void {\n\t\tthis.open = !this.open;\n\t}\n\n\t_toggleAndFocusInput() {\n\t\tthis._togglePicker();\n\t\tthis._dateTimeInput.focus();\n\t}\n\n\t/**\n\t * Currently selected date represented as a Local JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.liveValue ? this.getValueFormat().parse(this.liveValue) as Date : this.getValueFormat().parse(this.value) as Date;\n\t}\n\n\tget dateValueUTC(): Date | null {\n\t\treturn this.liveValue ? this.getValueFormat().parse(this.liveValue, true) as Date : this.getValueFormat().parse(this.value) as Date;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\twidth: \"100%\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget type() {\n\t\treturn InputType.Text;\n\t}\n}\n\nDatePicker.define();\n\nexport default DatePicker;\nexport type {\n\tDatePickerChangeEventDetail,\n\tDatePickerInputEventDetail,\n\tDatePickerValueStateChangeEventDetail,\n};\n"]}
@@ -4,7 +4,7 @@ import Icon from "./Icon.js";
4
4
  export default function DatePickerInputTemplate() {
5
5
  return (_jsx("div", { class: "ui5-date-picker-root", style: {
6
6
  width: "100%",
7
- }, children: _jsxs(DateTimeInput, { "data-sap-focus-ref": true, id: `${this._id}-inner`, class: "ui5-date-picker-input", placeholder: this._placeholder, type: this.type, value: this.value, disabled: this.disabled, required: this.required, readonly: this.readonly, valueState: this.valueState, _inputAccInfo: this.accInfo, _shouldOpenValueStatePopover: !this.open, onChange: this._onInputChange, onInput: this._onInputInput, onSubmit: this._onInputSubmit, onKeyDown: this._onkeydown, children: [!this.open && this.valueStateMessage.length > 0 &&
7
+ }, children: _jsxs(DateTimeInput, { "data-sap-focus-ref": true, id: `${this._id}-inner`, class: "ui5-date-picker-input", placeholder: this._placeholder, type: this.type, value: this.displayValue, disabled: this.disabled, required: this.required, readonly: this.readonly, valueState: this.valueState, _inputAccInfo: this.accInfo, _shouldOpenValueStatePopover: !this.open, onChange: this._onInputChange, onInput: this._onInputInput, onSubmit: this._onInputSubmit, onKeyDown: this._onkeydown, children: [!this.open && this.valueStateMessage.length > 0 &&
8
8
  _jsx("slot", { name: "valueStateMessage", slot: "valueStateMessage" }), !this.readonly &&
9
9
  _jsx(Icon, { id: `${this._id}-value-help`, slot: "icon", name: this.openIconName, tabindex: -1, accessibleName: this.openIconTitle, mode: this._iconMode, showTooltip: true, class: {
10
10
  "inputIcon": true,
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerInputTemplate.js","sourceRoot":"","sources":["../src/DatePickerInputTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC9C,OAAO,CACN,cACC,KAAK,EAAC,sBAAsB,EAC5B,KAAK,EAAE;YACN,KAAK,EAAE,MAAM;SACb,YAED,MAAC,aAAa,gCAEb,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,EACvB,KAAK,EAAC,uBAAuB,EAC7B,WAAW,EAAE,IAAI,CAAC,YAAY,EAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,OAAO,EAC3B,4BAA4B,EAAE,CAAC,IAAI,CAAC,IAAI,EACxC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,SAAS,EAAE,IAAI,CAAC,UAAU,aAGzB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC/C,eAAM,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAC,mBAAmB,GAAQ,EAG/D,CAAC,IAAI,CAAC,QAAQ;oBACd,KAAC,IAAI,IACJ,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa,EAC5B,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,CAAC,YAAY,EACvB,QAAQ,EAAE,CAAC,CAAC,EACZ,cAAc,EAAE,IAAI,CAAC,aAAa,EAClC,IAAI,EAAE,IAAI,CAAC,SAAS,EACpB,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE;4BACN,WAAW,EAAE,IAAI;4BACjB,oBAAoB,EAAE,IAAI,CAAC,IAAI;yBAC/B,EACD,OAAO,EAAE,IAAI,CAAC,aAAa,GAC1B,IAEY,GACX,CACN,CAAC;AACH,CAAC","sourcesContent":["import type DatePicker from \"./DatePicker.js\";\nimport DateTimeInput from \"./DateTimeInput.js\";\nimport Icon from \"./Icon.js\";\n\nexport default function DatePickerInputTemplate(this: DatePicker) {\n\treturn (\n\t\t<div\n\t\t\tclass=\"ui5-date-picker-root\"\n\t\t\tstyle={{\n\t\t\t\twidth: \"100%\",\n\t\t\t}}\n\t\t>\n\t\t\t<DateTimeInput\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tid={`${this._id}-inner`}\n\t\t\t\tclass=\"ui5-date-picker-input\"\n\t\t\t\tplaceholder={this._placeholder}\n\t\t\t\ttype={this.type}\n\t\t\t\tvalue={this.value}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\trequired={this.required}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tvalueState={this.valueState}\n\t\t\t\t_inputAccInfo={this.accInfo}\n\t\t\t\t_shouldOpenValueStatePopover={!this.open}\n\t\t\t\tonChange={this._onInputChange}\n\t\t\t\tonInput={this._onInputInput}\n\t\t\t\tonSubmit={this._onInputSubmit}\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t>\n\n\t\t\t\t{!this.open && this.valueStateMessage.length > 0 &&\n\t\t\t\t\t<slot name=\"valueStateMessage\" slot=\"valueStateMessage\"></slot>\n\t\t\t\t}\n\n\t\t\t\t{!this.readonly &&\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tid={`${this._id}-value-help`}\n\t\t\t\t\t\tslot=\"icon\"\n\t\t\t\t\t\tname={this.openIconName}\n\t\t\t\t\t\ttabindex={-1}\n\t\t\t\t\t\taccessibleName={this.openIconTitle}\n\t\t\t\t\t\tmode={this._iconMode}\n\t\t\t\t\t\tshowTooltip={true}\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\"inputIcon\": true,\n\t\t\t\t\t\t\t\"inputIcon--pressed\": this.open,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonClick={this._togglePicker}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</DateTimeInput>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"file":"DatePickerInputTemplate.js","sourceRoot":"","sources":["../src/DatePickerInputTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC9C,OAAO,CACN,cACC,KAAK,EAAC,sBAAsB,EAC5B,KAAK,EAAE;YACN,KAAK,EAAE,MAAM;SACb,YAED,MAAC,aAAa,gCAEb,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,EACvB,KAAK,EAAC,uBAAuB,EAC7B,WAAW,EAAE,IAAI,CAAC,YAAY,EAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,YAAY,EACxB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,OAAO,EAC3B,4BAA4B,EAAE,CAAC,IAAI,CAAC,IAAI,EACxC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,SAAS,EAAE,IAAI,CAAC,UAAU,aAGzB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC/C,eAAM,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAC,mBAAmB,GAAQ,EAG/D,CAAC,IAAI,CAAC,QAAQ;oBACd,KAAC,IAAI,IACJ,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa,EAC5B,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,CAAC,YAAY,EACvB,QAAQ,EAAE,CAAC,CAAC,EACZ,cAAc,EAAE,IAAI,CAAC,aAAa,EAClC,IAAI,EAAE,IAAI,CAAC,SAAS,EACpB,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE;4BACN,WAAW,EAAE,IAAI;4BACjB,oBAAoB,EAAE,IAAI,CAAC,IAAI;yBAC/B,EACD,OAAO,EAAE,IAAI,CAAC,aAAa,GAC1B,IAEY,GACX,CACN,CAAC;AACH,CAAC","sourcesContent":["import type DatePicker from \"./DatePicker.js\";\nimport DateTimeInput from \"./DateTimeInput.js\";\nimport Icon from \"./Icon.js\";\n\nexport default function DatePickerInputTemplate(this: DatePicker) {\n\treturn (\n\t\t<div\n\t\t\tclass=\"ui5-date-picker-root\"\n\t\t\tstyle={{\n\t\t\t\twidth: \"100%\",\n\t\t\t}}\n\t\t>\n\t\t\t<DateTimeInput\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tid={`${this._id}-inner`}\n\t\t\t\tclass=\"ui5-date-picker-input\"\n\t\t\t\tplaceholder={this._placeholder}\n\t\t\t\ttype={this.type}\n\t\t\t\tvalue={this.displayValue}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\trequired={this.required}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tvalueState={this.valueState}\n\t\t\t\t_inputAccInfo={this.accInfo}\n\t\t\t\t_shouldOpenValueStatePopover={!this.open}\n\t\t\t\tonChange={this._onInputChange}\n\t\t\t\tonInput={this._onInputInput}\n\t\t\t\tonSubmit={this._onInputSubmit}\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t>\n\n\t\t\t\t{!this.open && this.valueStateMessage.length > 0 &&\n\t\t\t\t\t<slot name=\"valueStateMessage\" slot=\"valueStateMessage\"></slot>\n\t\t\t\t}\n\n\t\t\t\t{!this.readonly &&\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tid={`${this._id}-value-help`}\n\t\t\t\t\t\tslot=\"icon\"\n\t\t\t\t\t\tname={this.openIconName}\n\t\t\t\t\t\ttabindex={-1}\n\t\t\t\t\t\taccessibleName={this.openIconTitle}\n\t\t\t\t\t\tmode={this._iconMode}\n\t\t\t\t\t\tshowTooltip={true}\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\"inputIcon\": true,\n\t\t\t\t\t\t\t\"inputIcon--pressed\": this.open,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonClick={this._togglePicker}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</DateTimeInput>\n\t\t</div>\n\t);\n}\n"]}
@@ -122,6 +122,18 @@ declare class DateRangePicker extends DatePicker implements IFormInputElement {
122
122
  * @param value A value to be tested against the current date format
123
123
  */
124
124
  isValid(value: string): boolean;
125
+ /**
126
+ * Checks if a value is valid against the current date format of the DatePicker.
127
+ * @public
128
+ * @param value A value to be tested against the current date format
129
+ */
130
+ isValidValue(value: string): boolean;
131
+ /**
132
+ * Checks if a value is valid against the current date format of the DatePicker.
133
+ * @public
134
+ * @param value A value to be tested against the current date format
135
+ */
136
+ isValidDisplayValue(value: string): boolean;
125
137
  /**
126
138
  * Checks if a date is between the minimum and maximum date.
127
139
  * @public
@@ -133,6 +145,16 @@ declare class DateRangePicker extends DatePicker implements IFormInputElement {
133
145
  * @override
134
146
  */
135
147
  normalizeValue(value: string): string;
148
+ /**
149
+ * The parser understands many formats, but we need one format
150
+ * @override
151
+ * @protected
152
+ */
153
+ normalizeDisplayValue(value: string): string;
154
+ /**
155
+ * @override
156
+ */
157
+ getValueFromDisplayValue(value: string): string;
136
158
  /**
137
159
  * @override
138
160
  */
@@ -143,6 +165,11 @@ declare class DateRangePicker extends DatePicker implements IFormInputElement {
143
165
  _modifyDateValue(amount: number, unit: string, preserveDate?: boolean): Promise<void>;
144
166
  get _effectiveDelimiter(): string;
145
167
  _splitValueByDelimiter(value: string): string[];
168
+ /**
169
+ * The parser understands many formats, but we need one format
170
+ * @protected
171
+ */
172
+ normalizeFormattedValue(value: string): string;
146
173
  /**
147
174
  * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty
148
175
  * @private
@@ -153,11 +180,19 @@ declare class DateRangePicker extends DatePicker implements IFormInputElement {
153
180
  * @private
154
181
  */
155
182
  _extractLastTimestamp(value: string): number | undefined;
183
+ _exctractDisplayTimestamp(value: string): number | undefined;
156
184
  /**
157
185
  * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp
158
186
  * @private
159
187
  */
160
188
  _buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined): string;
189
+ /**
190
+ * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp
191
+ * @private
192
+ */
193
+ _buildDisplayValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined): string;
194
+ getDisplayValueFromValue(value: string): string;
195
+ get displayValue(): string;
161
196
  }
162
197
  export default DateRangePicker;
163
198
  export type { DateRangePickerChangeEventDetail, DateRangePickerInputEventDetail, };
@@ -96,7 +96,7 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
96
96
  return this._extractLastTimestamp(this.value);
97
97
  }
98
98
  get _tempTimestamp() {
99
- return this._tempValue && this.getFormat().parse(this._tempValue, true).getTime() / 1000;
99
+ return this._tempValue && this.getValueFormat().parse(this._tempValue, true).getTime() / 1000; // valueformat
100
100
  }
101
101
  /**
102
102
  * Required by DatePicker.js
@@ -196,16 +196,39 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
196
196
  * @param value A value to be tested against the current date format
197
197
  */
198
198
  isValid(value) {
199
- const parts = this._splitValueByDelimiter(value);
199
+ let parts = this._splitValueByDelimiter(value).filter(str => str !== "");
200
+ parts = parts.filter(str => str !== " "); // remove empty strings
200
201
  return parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid
201
202
  }
203
+ /**
204
+ * Checks if a value is valid against the current date format of the DatePicker.
205
+ * @public
206
+ * @param value A value to be tested against the current date format
207
+ */
208
+ isValidValue(value) {
209
+ let parts = this._splitValueByDelimiter(value).filter(str => str !== "");
210
+ parts = parts.filter(str => str !== " "); // remove empty strings
211
+ return parts.length <= 2 && parts.every(dateString => super.isValidValue(dateString)); // must be at most 2 dates and each must be valid
212
+ }
213
+ /**
214
+ * Checks if a value is valid against the current date format of the DatePicker.
215
+ * @public
216
+ * @param value A value to be tested against the current date format
217
+ */
218
+ isValidDisplayValue(value) {
219
+ let parts = this._splitValueByDelimiter(value).filter(str => str !== "");
220
+ parts = parts.filter(str => str !== " "); // remove empty strings
221
+ return parts.length <= 2 && parts.every(dateString => super.isValidDisplayValue(dateString)); // must be at most 2 dates and each must be valid
222
+ }
202
223
  /**
203
224
  * Checks if a date is between the minimum and maximum date.
204
225
  * @public
205
226
  * @param value A value to be checked
206
227
  */
207
228
  isInValidRange(value) {
208
- return this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));
229
+ let parts = this._splitValueByDelimiter(value).filter(str => str !== "");
230
+ parts = parts.filter(str => str !== " "); // remove empty strings
231
+ return parts.length <= 2 && parts.every(dateString => super.isInValidRange(dateString));
209
232
  }
210
233
  /**
211
234
  * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)
@@ -219,6 +242,34 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
219
242
  }
220
243
  return this._buildValue(firstDateTimestamp, lastDateTimestamp);
221
244
  }
245
+ /**
246
+ * The parser understands many formats, but we need one format
247
+ * @override
248
+ * @protected
249
+ */
250
+ normalizeDisplayValue(value) {
251
+ const values = this._splitValueByDelimiter(value);
252
+ const firstDateTimestamp = this._exctractDisplayTimestamp(values[0]);
253
+ const lastDateTimestamp = this._exctractDisplayTimestamp(values[1]);
254
+ if (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary
255
+ return this._buildDisplayValue(lastDateTimestamp, firstDateTimestamp);
256
+ }
257
+ return this._buildDisplayValue(firstDateTimestamp, lastDateTimestamp);
258
+ }
259
+ /**
260
+ * @override
261
+ */
262
+ getValueFromDisplayValue(value) {
263
+ const values = this._splitValueByDelimiter(value);
264
+ let firstDateString = "";
265
+ let lastDateString = "";
266
+ firstDateString = this._getValueStringFromTimestamp(this._exctractDisplayTimestamp(values[0]) * 1000);
267
+ lastDateString = this._getValueStringFromTimestamp(this._exctractDisplayTimestamp(values[1]) * 1000);
268
+ if (!firstDateString && !lastDateString) {
269
+ return value;
270
+ }
271
+ return `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;
272
+ }
222
273
  /**
223
274
  * @override
224
275
  */
@@ -272,7 +323,7 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
272
323
  const valuesArray = [];
273
324
  const partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);
274
325
  // if format successfully parse the value, the value contains only single date
275
- if (this.getFormat().parse(value)) {
326
+ if (this.getValueFormat().parse(value)) {
276
327
  valuesArray[0] = partsArray.join(this._effectiveDelimiter);
277
328
  valuesArray[1] = "";
278
329
  }
@@ -282,6 +333,23 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
282
333
  }
283
334
  return valuesArray;
284
335
  }
336
+ /**
337
+ * The parser understands many formats, but we need one format
338
+ * @protected
339
+ */
340
+ normalizeFormattedValue(value) {
341
+ if (value === "") {
342
+ return value;
343
+ }
344
+ let firstDateString = "";
345
+ let lastDateString = "";
346
+ firstDateString = this._getValueStringFromTimestamp(this._extractFirstTimestamp(value) * 1000);
347
+ lastDateString = this._getValueStringFromTimestamp(this._extractLastTimestamp(value) * 1000);
348
+ if (!firstDateString && !lastDateString) {
349
+ return value;
350
+ }
351
+ return `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;
352
+ }
285
353
  /**
286
354
  * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty
287
355
  * @private
@@ -291,7 +359,7 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
291
359
  return undefined;
292
360
  }
293
361
  const dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)
294
- const parsedDate = this.getFormat().parse(dateStrings[0], true);
362
+ const parsedDate = this.getValueFormat().parse(dateStrings[0], true);
295
363
  return parsedDate.getTime() / 1000;
296
364
  }
297
365
  /**
@@ -302,13 +370,23 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
302
370
  if (!value || !this._checkValueValidity(value)) {
303
371
  return undefined;
304
372
  }
305
- const dateStrings = this._splitValueByDelimiter(value);
373
+ let dateStrings = this._splitValueByDelimiter(value);
374
+ dateStrings = dateStrings.filter(str => str !== " "); // remove empty strings
306
375
  if (dateStrings[1]) {
307
- const parsedDate = this.getFormat().parse(dateStrings[1], true);
376
+ const parsedDate = this.getValueFormat().parse(dateStrings[1], true);
308
377
  return parsedDate.getTime() / 1000;
309
378
  }
310
379
  return undefined;
311
380
  }
381
+ _exctractDisplayTimestamp(value) {
382
+ if (!value || !this._checkDisplayValueValidity(value)) {
383
+ return undefined;
384
+ }
385
+ if (value) {
386
+ const parsedDate = this.getDisplayFormat().parse(value, true);
387
+ return parsedDate.getTime() / 1000;
388
+ }
389
+ }
312
390
  /**
313
391
  * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp
314
392
  * @private
@@ -316,15 +394,47 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
316
394
  _buildValue(firstDateTimestamp, lastDateTimestamp) {
317
395
  this._prevDelimiter = this._effectiveDelimiter;
318
396
  if (firstDateTimestamp) {
319
- const firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);
397
+ const firstDateString = this._getValueStringFromTimestamp(firstDateTimestamp * 1000);
320
398
  if (!lastDateTimestamp) {
321
399
  return firstDateString;
322
400
  }
323
- const lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);
401
+ const lastDateString = this._getValueStringFromTimestamp(lastDateTimestamp * 1000);
324
402
  return `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;
325
403
  }
326
404
  return "";
327
405
  }
406
+ /**
407
+ * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp
408
+ * @private
409
+ */
410
+ _buildDisplayValue(firstDateTimestamp, lastDateTimestamp) {
411
+ this._prevDelimiter = this._effectiveDelimiter;
412
+ if (firstDateTimestamp) {
413
+ const firstDateString = this._getDisplayStringFromTimestamp(firstDateTimestamp * 1000);
414
+ if (!lastDateTimestamp) {
415
+ return firstDateString;
416
+ }
417
+ const lastDateString = this._getDisplayStringFromTimestamp(lastDateTimestamp * 1000);
418
+ return `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;
419
+ }
420
+ return "";
421
+ }
422
+ getDisplayValueFromValue(value) {
423
+ let firstDateString = "";
424
+ let lastDateString = "";
425
+ firstDateString = this._getDisplayStringFromTimestamp(this._extractFirstTimestamp(value) * 1000);
426
+ lastDateString = this._getDisplayStringFromTimestamp(this._extractLastTimestamp(value) * 1000);
427
+ if (!firstDateString && !lastDateString) {
428
+ return value;
429
+ }
430
+ return `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;
431
+ }
432
+ get displayValue() {
433
+ if (!this.value) {
434
+ return "";
435
+ }
436
+ return this.getDisplayValueFromValue(this.value);
437
+ }
328
438
  };
329
439
  __decorate([
330
440
  property()