@ui5/webcomponents 2.9.0-rc.1 → 2.9.0-rc.3

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 (684) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/cypress/specs/AvatarGroup.cy.tsx +16 -1
  3. package/cypress/specs/Breadcrumbs.mobile.cy.tsx +53 -0
  4. package/cypress/specs/Button.cy.tsx +9 -0
  5. package/cypress/specs/Calendar.cy.tsx +55 -48
  6. package/cypress/specs/ColorPicker.cy.tsx +232 -23
  7. package/cypress/specs/DateControlsWithTimezone.cy.tsx +4 -4
  8. package/cypress/specs/DatePicker.cy.tsx +14 -8
  9. package/cypress/specs/DateRangePicker.cy.tsx +27 -21
  10. package/cypress/specs/DateTimePicker.cy.tsx +480 -0
  11. package/cypress/specs/DayPicker.cy.tsx +81 -0
  12. package/cypress/specs/FormSupport.cy.tsx +58 -1
  13. package/cypress/specs/Input.cy.tsx +61 -1
  14. package/cypress/specs/Popover.cy.tsx +53 -0
  15. package/cypress/specs/Select.cy.tsx +152 -0
  16. package/cypress/specs/TableGrowing.cy.tsx +18 -18
  17. package/cypress/specs/TableNavigation.cy.tsx +3 -3
  18. package/cypress/specs/TableRowActions.cy.tsx +6 -0
  19. package/cypress/specs/Tree.cy.tsx +18 -0
  20. package/cypress/support/commands/Calendar.commands.ts +9 -3
  21. package/cypress/support/commands/ColorPicker.commands.ts +14 -0
  22. package/cypress/support/commands/DatePicker.commands.ts +1 -1
  23. package/cypress/support/commands/DateTimePicker.commands.ts +60 -0
  24. package/cypress/support/commands.ts +2 -0
  25. package/dist/.tsbuildinfo +1 -1
  26. package/dist/Avatar.d.ts +5 -3
  27. package/dist/Avatar.js +7 -5
  28. package/dist/Avatar.js.map +1 -1
  29. package/dist/AvatarGroup.d.ts +1 -1
  30. package/dist/AvatarGroup.js +2 -2
  31. package/dist/AvatarGroup.js.map +1 -1
  32. package/dist/Breadcrumbs.d.ts +5 -0
  33. package/dist/Breadcrumbs.js +9 -0
  34. package/dist/Breadcrumbs.js.map +1 -1
  35. package/dist/BreadcrumbsPopoverTemplate.js +5 -1
  36. package/dist/BreadcrumbsPopoverTemplate.js.map +1 -1
  37. package/dist/Button.d.ts +1 -1
  38. package/dist/DatePicker.d.ts +9 -5
  39. package/dist/DatePicker.js +42 -22
  40. package/dist/DatePicker.js.map +1 -1
  41. package/dist/DatePickerInputTemplate.js +2 -2
  42. package/dist/DatePickerInputTemplate.js.map +1 -1
  43. package/dist/DatePickerPopoverTemplate.js +34 -1
  44. package/dist/DatePickerPopoverTemplate.js.map +1 -1
  45. package/dist/DateRangePicker.d.ts +6 -2
  46. package/dist/DateRangePicker.js +10 -8
  47. package/dist/DateRangePicker.js.map +1 -1
  48. package/dist/DateTimePicker.d.ts +1 -18
  49. package/dist/DateTimePicker.js +5 -25
  50. package/dist/DateTimePicker.js.map +1 -1
  51. package/dist/DateTimePickerTemplate.js +16 -18
  52. package/dist/DateTimePickerTemplate.js.map +1 -1
  53. package/dist/DayPicker.d.ts +3 -0
  54. package/dist/DayPicker.js +12 -3
  55. package/dist/DayPicker.js.map +1 -1
  56. package/dist/Input.d.ts +8 -0
  57. package/dist/Input.js +7 -1
  58. package/dist/Input.js.map +1 -1
  59. package/dist/InputTemplate.js +2 -2
  60. package/dist/InputTemplate.js.map +1 -1
  61. package/dist/MonthPicker.js +7 -1
  62. package/dist/MonthPicker.js.map +1 -1
  63. package/dist/MultiComboBox.d.ts +0 -6
  64. package/dist/MultiComboBox.js +0 -8
  65. package/dist/MultiComboBox.js.map +1 -1
  66. package/dist/Popup.js +1 -1
  67. package/dist/Popup.js.map +1 -1
  68. package/dist/PopupTemplate.d.ts +1 -1
  69. package/dist/Select.d.ts +46 -8
  70. package/dist/Select.js +77 -19
  71. package/dist/Select.js.map +1 -1
  72. package/dist/SelectPopoverTemplate.js +1 -1
  73. package/dist/SelectPopoverTemplate.js.map +1 -1
  74. package/dist/TabContainer.d.ts +0 -22
  75. package/dist/TabContainer.js +0 -24
  76. package/dist/TabContainer.js.map +1 -1
  77. package/dist/Table.d.ts +3 -3
  78. package/dist/Table.js +3 -3
  79. package/dist/Table.js.map +1 -1
  80. package/dist/TableGrowing.d.ts +12 -12
  81. package/dist/TableGrowing.js +13 -13
  82. package/dist/TableGrowing.js.map +1 -1
  83. package/dist/TableGrowingTemplate.js +2 -2
  84. package/dist/TableGrowingTemplate.js.map +1 -1
  85. package/dist/TableNavigation.js +2 -2
  86. package/dist/TableNavigation.js.map +1 -1
  87. package/dist/TableRowActionBase.d.ts +8 -7
  88. package/dist/TableRowActionBase.js +24 -9
  89. package/dist/TableRowActionBase.js.map +1 -1
  90. package/dist/TableSelectionBase.d.ts +2 -4
  91. package/dist/TableSelectionBase.js +0 -1
  92. package/dist/TableSelectionBase.js.map +1 -1
  93. package/dist/TableSelectionMulti.d.ts +1 -3
  94. package/dist/TableSelectionMulti.js +2 -4
  95. package/dist/TableSelectionMulti.js.map +1 -1
  96. package/dist/TableSelectionSingle.d.ts +1 -1
  97. package/dist/TableSelectionSingle.js +2 -2
  98. package/dist/TableSelectionSingle.js.map +1 -1
  99. package/dist/TableTemplate.js +2 -2
  100. package/dist/TableTemplate.js.map +1 -1
  101. package/dist/TimePicker.d.ts +0 -15
  102. package/dist/TimePicker.js +0 -17
  103. package/dist/TimePicker.js.map +1 -1
  104. package/dist/TimePickerPopoverTemplate.js +6 -1
  105. package/dist/TimePickerPopoverTemplate.js.map +1 -1
  106. package/dist/TreeList.js +3 -1
  107. package/dist/TreeList.js.map +1 -1
  108. package/dist/bundle.esm.d.ts +1 -1
  109. package/dist/css/themes/Avatar.css +1 -1
  110. package/dist/css/themes/AvatarGroup.css +1 -1
  111. package/dist/css/themes/Bar.css +1 -1
  112. package/dist/css/themes/Breadcrumbs.css +1 -1
  113. package/dist/css/themes/BusyIndicator.css +1 -1
  114. package/dist/css/themes/Button.css +1 -1
  115. package/dist/css/themes/ButtonBadge.css +1 -1
  116. package/dist/css/themes/Calendar.css +1 -1
  117. package/dist/css/themes/CalendarHeader.css +1 -1
  118. package/dist/css/themes/CalendarLegend.css +1 -1
  119. package/dist/css/themes/CalendarLegendItem.css +1 -1
  120. package/dist/css/themes/Card.css +1 -1
  121. package/dist/css/themes/CardHeader.css +1 -1
  122. package/dist/css/themes/Carousel.css +1 -1
  123. package/dist/css/themes/CheckBox.css +1 -1
  124. package/dist/css/themes/ColorPalette.css +1 -1
  125. package/dist/css/themes/ColorPaletteItem.css +1 -1
  126. package/dist/css/themes/ColorPalettePopover.css +1 -1
  127. package/dist/css/themes/ColorPicker.css +1 -1
  128. package/dist/css/themes/ComboBox.css +1 -1
  129. package/dist/css/themes/ComboBoxItem.css +1 -1
  130. package/dist/css/themes/DatePicker.css +1 -1
  131. package/dist/css/themes/DatePickerPopover.css +1 -1
  132. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  133. package/dist/css/themes/DayPicker.css +1 -1
  134. package/dist/css/themes/Dialog.css +1 -1
  135. package/dist/css/themes/FileUploader.css +1 -1
  136. package/dist/css/themes/Form.css +1 -1
  137. package/dist/css/themes/FormItem.css +1 -1
  138. package/dist/css/themes/FormItemSpan.css +1 -1
  139. package/dist/css/themes/GrowingButton.css +1 -1
  140. package/dist/css/themes/Icon.css +1 -1
  141. package/dist/css/themes/Input.css +1 -1
  142. package/dist/css/themes/InputIcon.css +1 -1
  143. package/dist/css/themes/InputSharedStyles.css +1 -1
  144. package/dist/css/themes/Link.css +1 -1
  145. package/dist/css/themes/List.css +1 -1
  146. package/dist/css/themes/ListItem.css +1 -1
  147. package/dist/css/themes/ListItemBase.css +1 -1
  148. package/dist/css/themes/ListItemCustom.css +1 -1
  149. package/dist/css/themes/ListItemGroup.css +1 -1
  150. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  151. package/dist/css/themes/ListItemIcon.css +1 -1
  152. package/dist/css/themes/Menu.css +1 -1
  153. package/dist/css/themes/MenuItem.css +1 -1
  154. package/dist/css/themes/MessageStrip.css +1 -1
  155. package/dist/css/themes/MonthPicker.css +1 -1
  156. package/dist/css/themes/MultiComboBox.css +1 -1
  157. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  158. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  159. package/dist/css/themes/MultiInput.css +1 -1
  160. package/dist/css/themes/OptionBase.css +1 -1
  161. package/dist/css/themes/Panel.css +1 -1
  162. package/dist/css/themes/Popover.css +1 -1
  163. package/dist/css/themes/PopupsCommon.css +1 -1
  164. package/dist/css/themes/ProgressIndicator.css +1 -1
  165. package/dist/css/themes/RadioButton.css +1 -1
  166. package/dist/css/themes/RangeSlider.css +1 -1
  167. package/dist/css/themes/RatingIndicator.css +1 -1
  168. package/dist/css/themes/ResponsivePopover.css +1 -1
  169. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  170. package/dist/css/themes/SegmentedButton.css +1 -1
  171. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  172. package/dist/css/themes/Select.css +1 -1
  173. package/dist/css/themes/SliderBase.css +1 -1
  174. package/dist/css/themes/SplitButton.css +1 -1
  175. package/dist/css/themes/StepInput.css +1 -1
  176. package/dist/css/themes/SuggestionItem.css +1 -1
  177. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  178. package/dist/css/themes/Switch.css +1 -1
  179. package/dist/css/themes/TabContainer.css +1 -1
  180. package/dist/css/themes/TabInOverflow.css +1 -1
  181. package/dist/css/themes/TabInStrip.css +1 -1
  182. package/dist/css/themes/TabSemanticIcon.css +1 -1
  183. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  184. package/dist/css/themes/Table.css +1 -1
  185. package/dist/css/themes/TableCellBase.css +1 -1
  186. package/dist/css/themes/TableGrowing.css +1 -1
  187. package/dist/css/themes/TableHeaderRow.css +1 -1
  188. package/dist/css/themes/TableRow.css +1 -1
  189. package/dist/css/themes/TableRowActionBase.css +1 -1
  190. package/dist/css/themes/TableRowBase.css +1 -1
  191. package/dist/css/themes/Tag.css +1 -1
  192. package/dist/css/themes/Text.css +1 -1
  193. package/dist/css/themes/TextArea.css +1 -1
  194. package/dist/css/themes/TimePicker.css +1 -1
  195. package/dist/css/themes/Toast.css +1 -1
  196. package/dist/css/themes/ToggleButton.css +1 -1
  197. package/dist/css/themes/Token.css +1 -1
  198. package/dist/css/themes/Tokenizer.css +1 -1
  199. package/dist/css/themes/TokenizerPopover.css +1 -1
  200. package/dist/css/themes/Toolbar.css +1 -1
  201. package/dist/css/themes/ToolbarPopover.css +1 -1
  202. package/dist/css/themes/TreeItem.css +1 -1
  203. package/dist/css/themes/ValueStateMessage.css +1 -1
  204. package/dist/css/themes/YearPicker.css +1 -1
  205. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  206. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  207. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  208. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  209. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  210. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  211. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  212. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  213. package/dist/custom-elements-internal.json +1546 -1228
  214. package/dist/custom-elements.json +1252 -1162
  215. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_id.json +1 -0
  239. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  253. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  266. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  267. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  268. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  269. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  270. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  271. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  272. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  273. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  274. package/dist/generated/json-imports/i18n-fetch.js +2 -2
  275. package/dist/generated/json-imports/i18n-fetch.js.map +1 -1
  276. package/dist/generated/json-imports/i18n.js +2 -2
  277. package/dist/generated/json-imports/i18n.js.map +1 -1
  278. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  279. package/dist/generated/themes/Avatar.css.js +1 -1
  280. package/dist/generated/themes/Avatar.css.js.map +1 -1
  281. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  282. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  283. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  284. package/dist/generated/themes/Bar.css.d.ts +1 -1
  285. package/dist/generated/themes/Bar.css.js +1 -1
  286. package/dist/generated/themes/Bar.css.js.map +1 -1
  287. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  288. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  289. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  290. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  291. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  292. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  293. package/dist/generated/themes/Button.css.d.ts +1 -1
  294. package/dist/generated/themes/Button.css.js +1 -1
  295. package/dist/generated/themes/Button.css.js.map +1 -1
  296. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  297. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  298. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  299. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  300. package/dist/generated/themes/Calendar.css.js +1 -1
  301. package/dist/generated/themes/Calendar.css.js.map +1 -1
  302. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  303. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  304. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  305. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  306. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  307. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  308. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  309. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  310. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  311. package/dist/generated/themes/Card.css.d.ts +1 -1
  312. package/dist/generated/themes/Card.css.js +1 -1
  313. package/dist/generated/themes/Card.css.js.map +1 -1
  314. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  315. package/dist/generated/themes/CardHeader.css.js +1 -1
  316. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  317. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  318. package/dist/generated/themes/Carousel.css.js +1 -1
  319. package/dist/generated/themes/Carousel.css.js.map +1 -1
  320. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  321. package/dist/generated/themes/CheckBox.css.js +1 -1
  322. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  323. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  324. package/dist/generated/themes/ColorPalette.css.js +1 -1
  325. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  326. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  327. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  328. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  329. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  330. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  331. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  332. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  333. package/dist/generated/themes/ColorPicker.css.js +1 -1
  334. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  335. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  336. package/dist/generated/themes/ComboBox.css.js +1 -1
  337. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  338. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  339. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  340. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  341. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  342. package/dist/generated/themes/DatePicker.css.js +1 -1
  343. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  344. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  345. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  346. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  347. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  348. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  349. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  350. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  351. package/dist/generated/themes/DayPicker.css.js +1 -1
  352. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  353. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  354. package/dist/generated/themes/Dialog.css.js +1 -1
  355. package/dist/generated/themes/Dialog.css.js.map +1 -1
  356. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  357. package/dist/generated/themes/FileUploader.css.js +1 -1
  358. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  359. package/dist/generated/themes/Form.css.d.ts +1 -1
  360. package/dist/generated/themes/Form.css.js +1 -1
  361. package/dist/generated/themes/Form.css.js.map +1 -1
  362. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  363. package/dist/generated/themes/FormItem.css.js +1 -1
  364. package/dist/generated/themes/FormItem.css.js.map +1 -1
  365. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  366. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  367. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  368. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  369. package/dist/generated/themes/GrowingButton.css.js +1 -1
  370. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  371. package/dist/generated/themes/Icon.css.d.ts +1 -1
  372. package/dist/generated/themes/Icon.css.js +1 -1
  373. package/dist/generated/themes/Icon.css.js.map +1 -1
  374. package/dist/generated/themes/Input.css.d.ts +1 -1
  375. package/dist/generated/themes/Input.css.js +1 -1
  376. package/dist/generated/themes/Input.css.js.map +1 -1
  377. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  378. package/dist/generated/themes/InputIcon.css.js +1 -1
  379. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  380. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  381. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  382. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  383. package/dist/generated/themes/Link.css.d.ts +1 -1
  384. package/dist/generated/themes/Link.css.js +1 -1
  385. package/dist/generated/themes/Link.css.js.map +1 -1
  386. package/dist/generated/themes/List.css.d.ts +1 -1
  387. package/dist/generated/themes/List.css.js +1 -1
  388. package/dist/generated/themes/List.css.js.map +1 -1
  389. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  390. package/dist/generated/themes/ListItem.css.js +1 -1
  391. package/dist/generated/themes/ListItem.css.js.map +1 -1
  392. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  393. package/dist/generated/themes/ListItemBase.css.js +1 -1
  394. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  395. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  396. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  397. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  398. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  399. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  400. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  401. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  402. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  403. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  404. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  405. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  406. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  407. package/dist/generated/themes/Menu.css.d.ts +1 -1
  408. package/dist/generated/themes/Menu.css.js +1 -1
  409. package/dist/generated/themes/Menu.css.js.map +1 -1
  410. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  411. package/dist/generated/themes/MenuItem.css.js +1 -1
  412. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  413. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  414. package/dist/generated/themes/MessageStrip.css.js +1 -1
  415. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  416. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  417. package/dist/generated/themes/MonthPicker.css.js +1 -1
  418. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  419. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  420. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  421. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  422. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  423. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  424. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  425. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  426. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  427. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  428. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  429. package/dist/generated/themes/MultiInput.css.js +1 -1
  430. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  431. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  432. package/dist/generated/themes/OptionBase.css.js +1 -1
  433. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  434. package/dist/generated/themes/Panel.css.d.ts +1 -1
  435. package/dist/generated/themes/Panel.css.js +1 -1
  436. package/dist/generated/themes/Panel.css.js.map +1 -1
  437. package/dist/generated/themes/Popover.css.d.ts +1 -1
  438. package/dist/generated/themes/Popover.css.js +1 -1
  439. package/dist/generated/themes/Popover.css.js.map +1 -1
  440. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  441. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  442. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  443. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  444. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  445. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  446. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  447. package/dist/generated/themes/RadioButton.css.js +1 -1
  448. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  449. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  450. package/dist/generated/themes/RangeSlider.css.js +1 -1
  451. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  452. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  453. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  454. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  455. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  456. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  457. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  458. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  459. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  460. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  461. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  462. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  463. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  464. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  465. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  466. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  467. package/dist/generated/themes/Select.css.d.ts +1 -1
  468. package/dist/generated/themes/Select.css.js +1 -1
  469. package/dist/generated/themes/Select.css.js.map +1 -1
  470. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  471. package/dist/generated/themes/SliderBase.css.js +1 -1
  472. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  473. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  474. package/dist/generated/themes/SplitButton.css.js +1 -1
  475. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  476. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  477. package/dist/generated/themes/StepInput.css.js +1 -1
  478. package/dist/generated/themes/StepInput.css.js.map +1 -1
  479. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  480. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  481. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  482. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  483. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  484. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  485. package/dist/generated/themes/Switch.css.d.ts +1 -1
  486. package/dist/generated/themes/Switch.css.js +1 -1
  487. package/dist/generated/themes/Switch.css.js.map +1 -1
  488. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  489. package/dist/generated/themes/TabContainer.css.js +1 -1
  490. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  491. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  492. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  493. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  494. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  495. package/dist/generated/themes/TabInStrip.css.js +1 -1
  496. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  497. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  498. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  499. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  500. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  501. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  502. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  503. package/dist/generated/themes/Table.css.d.ts +1 -1
  504. package/dist/generated/themes/Table.css.js +1 -1
  505. package/dist/generated/themes/Table.css.js.map +1 -1
  506. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  507. package/dist/generated/themes/TableCellBase.css.js +1 -1
  508. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  509. package/dist/generated/themes/TableGrowing.css.d.ts +1 -1
  510. package/dist/generated/themes/TableGrowing.css.js +1 -1
  511. package/dist/generated/themes/TableGrowing.css.js.map +1 -1
  512. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  513. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  514. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  515. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  516. package/dist/generated/themes/TableRow.css.js +1 -1
  517. package/dist/generated/themes/TableRow.css.js.map +1 -1
  518. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  519. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  520. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  521. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  522. package/dist/generated/themes/TableRowBase.css.js +1 -1
  523. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  524. package/dist/generated/themes/Tag.css.d.ts +1 -1
  525. package/dist/generated/themes/Tag.css.js +1 -1
  526. package/dist/generated/themes/Tag.css.js.map +1 -1
  527. package/dist/generated/themes/Text.css.d.ts +1 -1
  528. package/dist/generated/themes/Text.css.js +1 -1
  529. package/dist/generated/themes/Text.css.js.map +1 -1
  530. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  531. package/dist/generated/themes/TextArea.css.js +1 -1
  532. package/dist/generated/themes/TextArea.css.js.map +1 -1
  533. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  534. package/dist/generated/themes/TimePicker.css.js +1 -1
  535. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  536. package/dist/generated/themes/Toast.css.d.ts +1 -1
  537. package/dist/generated/themes/Toast.css.js +1 -1
  538. package/dist/generated/themes/Toast.css.js.map +1 -1
  539. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  540. package/dist/generated/themes/ToggleButton.css.js +1 -1
  541. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  542. package/dist/generated/themes/Token.css.d.ts +1 -1
  543. package/dist/generated/themes/Token.css.js +1 -1
  544. package/dist/generated/themes/Token.css.js.map +1 -1
  545. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  546. package/dist/generated/themes/Tokenizer.css.js +1 -1
  547. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  548. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  549. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  550. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  551. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  552. package/dist/generated/themes/Toolbar.css.js +1 -1
  553. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  554. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  555. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  556. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  557. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  558. package/dist/generated/themes/TreeItem.css.js +1 -1
  559. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  560. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  561. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  562. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  563. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  564. package/dist/generated/themes/YearPicker.css.js +1 -1
  565. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  566. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  567. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  568. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  569. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  570. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  571. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  572. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  573. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  574. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  575. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  576. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  577. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  578. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  579. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  580. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  581. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  582. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  583. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  584. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  585. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  586. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  587. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  588. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  589. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  590. package/dist/types/AvatarColorScheme.d.ts +5 -0
  591. package/dist/types/AvatarColorScheme.js +5 -0
  592. package/dist/types/AvatarColorScheme.js.map +1 -1
  593. package/dist/types/InputKeyHint.d.ts +16 -0
  594. package/dist/types/InputKeyHint.js +18 -0
  595. package/dist/types/InputKeyHint.js.map +1 -0
  596. package/dist/vscode.html-custom-data.json +36 -45
  597. package/dist/web-types.json +214 -70
  598. package/package-scripts.cjs +4 -0
  599. package/package.json +9 -9
  600. package/src/BreadcrumbsPopoverTemplate.tsx +6 -1
  601. package/src/DatePickerInputTemplate.tsx +5 -4
  602. package/src/DatePickerPopoverTemplate.tsx +51 -0
  603. package/src/DateTimePickerTemplate.tsx +48 -51
  604. package/src/InputTemplate.tsx +2 -0
  605. package/src/SelectPopoverTemplate.tsx +1 -0
  606. package/src/TableGrowingTemplate.tsx +7 -7
  607. package/src/TableTemplate.tsx +4 -4
  608. package/src/TimePickerPopoverTemplate.tsx +8 -3
  609. package/src/i18n/messagebundle_ar.properties +4 -0
  610. package/src/i18n/messagebundle_bg.properties +4 -0
  611. package/src/i18n/messagebundle_ca.properties +4 -0
  612. package/src/i18n/messagebundle_cnr.properties +4 -0
  613. package/src/i18n/messagebundle_cs.properties +4 -0
  614. package/src/i18n/messagebundle_cy.properties +4 -0
  615. package/src/i18n/messagebundle_da.properties +4 -0
  616. package/src/i18n/messagebundle_de.properties +4 -0
  617. package/src/i18n/messagebundle_el.properties +4 -0
  618. package/src/i18n/messagebundle_en.properties +4 -0
  619. package/src/i18n/messagebundle_en_GB.properties +4 -0
  620. package/src/i18n/messagebundle_en_US_sappsd.properties +2 -0
  621. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  622. package/src/i18n/messagebundle_en_US_saptrc.properties +2 -0
  623. package/src/i18n/messagebundle_es.properties +4 -0
  624. package/src/i18n/messagebundle_es_MX.properties +4 -0
  625. package/src/i18n/messagebundle_et.properties +4 -0
  626. package/src/i18n/messagebundle_fi.properties +4 -0
  627. package/src/i18n/messagebundle_fr.properties +9 -5
  628. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  629. package/src/i18n/messagebundle_hi.properties +4 -0
  630. package/src/i18n/messagebundle_hr.properties +12 -8
  631. package/src/i18n/messagebundle_hu.properties +4 -0
  632. package/src/i18n/messagebundle_id.properties +4 -0
  633. package/src/i18n/messagebundle_it.properties +22 -18
  634. package/src/i18n/messagebundle_iw.properties +4 -0
  635. package/src/i18n/messagebundle_ja.properties +4 -0
  636. package/src/i18n/messagebundle_kk.properties +4 -0
  637. package/src/i18n/messagebundle_ko.properties +4 -0
  638. package/src/i18n/messagebundle_lt.properties +4 -0
  639. package/src/i18n/messagebundle_lv.properties +15 -11
  640. package/src/i18n/messagebundle_mk.properties +4 -0
  641. package/src/i18n/messagebundle_ms.properties +6 -2
  642. package/src/i18n/messagebundle_nl.properties +4 -0
  643. package/src/i18n/messagebundle_no.properties +4 -0
  644. package/src/i18n/messagebundle_pl.properties +4 -0
  645. package/src/i18n/messagebundle_pt.properties +4 -0
  646. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  647. package/src/i18n/messagebundle_ro.properties +4 -0
  648. package/src/i18n/messagebundle_ru.properties +6 -2
  649. package/src/i18n/messagebundle_sh.properties +4 -0
  650. package/src/i18n/messagebundle_sk.properties +4 -0
  651. package/src/i18n/messagebundle_sl.properties +4 -0
  652. package/src/i18n/messagebundle_sr.properties +4 -0
  653. package/src/i18n/messagebundle_sv.properties +4 -0
  654. package/src/i18n/messagebundle_th.properties +4 -0
  655. package/src/i18n/messagebundle_tr.properties +4 -0
  656. package/src/i18n/messagebundle_uk.properties +4 -0
  657. package/src/i18n/messagebundle_vi.properties +4 -0
  658. package/src/i18n/messagebundle_zh_CN.properties +5 -1
  659. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  660. package/src/themes/Avatar.css +1 -0
  661. package/src/themes/Bar.css +0 -14
  662. package/src/themes/DatePicker.css +4 -0
  663. package/src/themes/DatePickerPopover.css +7 -0
  664. package/src/themes/DateTimePickerPopover.css +9 -0
  665. package/src/themes/Input.css +8 -3
  666. package/src/themes/Table.css +1 -1
  667. package/src/themes/TableGrowing.css +7 -7
  668. package/src/themes/base/Bar-parameters.css +2 -6
  669. package/src/themes/base/Input-parameters.css +1 -0
  670. package/src/themes/base/RadioButton-parameters.css +1 -1
  671. package/src/themes/sap_fiori_3/Input-parameters.css +1 -0
  672. package/src/themes/sap_fiori_3_dark/Input-parameters.css +1 -0
  673. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +1 -0
  674. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +1 -0
  675. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +1 -0
  676. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +1 -0
  677. package/src/themes/sap_horizon/RadioButton-parameters.css +0 -1
  678. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +0 -1
  679. package/src/themes/sap_horizon_hcb/Input-parameters.css +1 -0
  680. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +1 -0
  681. package/src/themes/sap_horizon_hcw/Input-parameters.css +1 -0
  682. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +1 -0
  683. package/dist/generated/assets/i18n/messagebundle_in.json +0 -1
  684. package/src/i18n/messagebundle_in.properties +0 -172
@@ -168,10 +168,9 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
168
168
  * @override
169
169
  */
170
170
  async _onInputSubmit() {
171
- const input = this._getInput();
172
- const caretPos = input.getCaretPosition();
171
+ const caretPos = this._dateTimeInput.getCaretPosition();
173
172
  await renderFinished();
174
- input.setCaretPosition(caretPos); // Return the caret on the previous position after rendering
173
+ this._dateTimeInput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering
175
174
  }
176
175
  /**
177
176
  * @override
@@ -181,14 +180,18 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
181
180
  super.onResponsivePopoverAfterClose();
182
181
  }
183
182
  /**
184
- * @override
183
+ * Checks if a value is valid against the current date format of the DatePicker.
184
+ * @public
185
+ * @param value A value to be tested against the current date format
185
186
  */
186
187
  isValid(value) {
187
188
  const parts = this._splitValueByDelimiter(value);
188
189
  return parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid
189
190
  }
190
191
  /**
191
- * @override
192
+ * Checks if a date is between the minimum and maximum date.
193
+ * @public
194
+ * @param value A value to be checked
192
195
  */
193
196
  isInValidRange(value) {
194
197
  return this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));
@@ -229,8 +232,7 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
229
232
  if (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely
230
233
  return super._modifyDateValue(amount, unit, preserveDate);
231
234
  }
232
- const input = this._getInput();
233
- let caretPos = input.getCaretPosition(); // caret position is always number for input of type text;
235
+ let caretPos = this._dateTimeInput.getCaretPosition(); // caret position is always number for input of type text;
234
236
  let newValue;
235
237
  if (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date
236
238
  const startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);
@@ -250,7 +252,7 @@ let DateRangePicker = DateRangePicker_1 = class DateRangePicker extends DatePick
250
252
  }
251
253
  this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
252
254
  await renderFinished();
253
- input.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering
255
+ this._dateTimeInput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering
254
256
  }
255
257
  get _effectiveDelimiter() {
256
258
  return this.delimiter || DEFAULT_DELIMITER;
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport {\n\tDATERANGE_DESCRIPTION,\n\tDATERANGEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateRangePickerTemplate from \"./DateRangePickerTemplate.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport type CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\n\nconst DEFAULT_DELIMITER = \"-\";\n\n/**\n * @class\n *\n * ### Overview\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * ### Usage\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the `ui5-daterange-picker`\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DateRangePicker.js\";`\n *\n * ### Keyboard Handling\n * The `ui5-daterange-picker` provides advanced keyboard handling.\n *\n * When the `ui5-daterange-picker` input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n *\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 * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n\ttemplate: DateRangePickerTemplate,\n})\nclass DateRangePicker extends DatePicker implements IFormInputElement {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t * @default \"-\"\n\t * @public\n\t */\n\t@property()\n\tdelimiter = \"-\";\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t * @private\n\t */\n\t@property()\n\t_tempValue?: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tget formFormattedValue() {\n\t\tconst values = this._splitValueByDelimiter(this.value || \"\").filter(Boolean);\n\n\t\tif (values.length && this.name) {\n\t\t\tconst formData = new FormData();\n\n\t\t\tfor (let i = 0; i < values.length; i++) {\n\t\t\t\tformData.append(this.name, values[i]);\n\t\t\t}\n\n\t\t\treturn formData;\n\t\t}\n\n\t\treturn this.value;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * **Note:** The getter method is inherited and not supported. If called it will return an empty value.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn null;\n\t}\n\n\t/**\n\t * **Note:** The getter method is inherited and not supported. If called it will return an empty value.\n\t * @public\n\t * @default null\n\t */\n\tget dateValueUTC(): Date | null {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode(): `${CalendarSelectionMode}` {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget startDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget endDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\tget startValue(): string {\n\t\treturn this._calendarSelectedDates[0] || \"\";\n\t}\n\n\tget endValue(): string {\n\t\treturn this._calendarSelectedDates[1] || \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget pickerAccessibleName() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst input = this._getInput();\n\t\tconst caretPos = input.getCaretPosition();\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisValid(value: string): boolean {\n\t\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisInValidRange(value: string): boolean {\n\t\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.selectedValues;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.selectedDates[0], event.detail.selectedDates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tconst input = this._getInput();\n\t\tlet caretPos: number = input.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\treturn this.delimiter || DEFAULT_DELIMITER;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport {\n\tDATERANGE_DESCRIPTION,\n\tDATERANGEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateRangePickerTemplate from \"./DateRangePickerTemplate.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport type CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\n\nconst DEFAULT_DELIMITER = \"-\";\n\n/**\n * @class\n *\n * ### Overview\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * ### Usage\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the `ui5-daterange-picker`\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DateRangePicker.js\";`\n *\n * ### Keyboard Handling\n * The `ui5-daterange-picker` provides advanced keyboard handling.\n *\n * When the `ui5-daterange-picker` input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n *\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 * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n\ttemplate: DateRangePickerTemplate,\n})\nclass DateRangePicker extends DatePicker implements IFormInputElement {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t * @default \"-\"\n\t * @public\n\t */\n\t@property()\n\tdelimiter = \"-\";\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t * @private\n\t */\n\t@property()\n\t_tempValue?: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tget formFormattedValue() {\n\t\tconst values = this._splitValueByDelimiter(this.value || \"\").filter(Boolean);\n\n\t\tif (values.length && this.name) {\n\t\t\tconst formData = new FormData();\n\n\t\t\tfor (let i = 0; i < values.length; i++) {\n\t\t\t\tformData.append(this.name, values[i]);\n\t\t\t}\n\n\t\t\treturn formData;\n\t\t}\n\n\t\treturn this.value;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * **Note:** The getter method is inherited and not supported. If called it will return an empty value.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn null;\n\t}\n\n\t/**\n\t * **Note:** The getter method is inherited and not supported. If called it will return an empty value.\n\t * @public\n\t * @default null\n\t */\n\tget dateValueUTC(): Date | null {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode(): `${CalendarSelectionMode}` {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget startDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget endDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\tget startValue(): string {\n\t\treturn this._calendarSelectedDates[0] || \"\";\n\t}\n\n\tget endValue(): string {\n\t\treturn this._calendarSelectedDates[1] || \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget pickerAccessibleName() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst caretPos = this._dateTimeInput.getCaretPosition();\n\t\tawait renderFinished();\n\t\tthis._dateTimeInput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * 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\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * 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\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.selectedValues;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.selectedDates[0], event.detail.selectedDates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tlet caretPos: number = this._dateTimeInput.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tthis._dateTimeInput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\treturn this.delimiter || DEFAULT_DELIMITER;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
@@ -1,7 +1,6 @@
1
1
  import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
2
2
  import type { IFormInputElement } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
3
3
  import "@ui5/webcomponents-icons/dist/date-time.js";
4
- import type ResponsivePopover from "./ResponsivePopover.js";
5
4
  import type { SegmentedButtonSelectionChangeEventDetail } from "./SegmentedButton.js";
6
5
  import type { CalendarSelectionChangeEventDetail } from "./Calendar.js";
7
6
  import DatePicker from "./DatePicker.js";
@@ -115,21 +114,6 @@ declare class DateTimePicker extends DatePicker implements IFormInputElement {
115
114
  * @private
116
115
  */
117
116
  _togglePicker(): void;
118
- /**
119
- * Read-only getters
120
- */
121
- get classes(): {
122
- picker: {
123
- "ui5-dt-picker-content--phone": boolean;
124
- };
125
- dateTimeView: {
126
- "ui5-dt-cal--hidden": boolean;
127
- "ui5-dt-time--hidden": boolean;
128
- };
129
- footer: {
130
- "ui5-dt-picker-footer-time-hidden": boolean;
131
- };
132
- };
133
117
  get _formatPattern(): string;
134
118
  get _calendarTimestamp(): number;
135
119
  get _calendarSelectedDates(): string[];
@@ -142,7 +126,7 @@ declare class DateTimePicker extends DatePicker implements IFormInputElement {
142
126
  get showFooter(): boolean;
143
127
  get showDateView(): boolean;
144
128
  get showTimeView(): boolean;
145
- get phone(): boolean;
129
+ get _phoneView(): boolean;
146
130
  /**
147
131
  * @override
148
132
  */
@@ -188,7 +172,6 @@ declare class DateTimePicker extends DatePicker implements IFormInputElement {
188
172
  * @override
189
173
  */
190
174
  _modifyDateValue(amount: number, unit: string, preserveDate: boolean): void;
191
- getPicker(): ResponsivePopover;
192
175
  getSelectedDateTime(): Date;
193
176
  getFormat(): import("sap/ui/core/format/DateFormat").default;
194
177
  /**
@@ -16,6 +16,7 @@ import "@ui5/webcomponents-icons/dist/date-time.js";
16
16
  import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
17
17
  import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
18
18
  import DatePicker from "./DatePicker.js";
19
+ import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
19
20
  // i18n texts
20
21
  import { TIMEPICKER_SUBMIT_BUTTON, TIMEPICKER_CANCEL_BUTTON, DATETIME_DESCRIPTION, DATETIME_PICKER_DATE_BUTTON, DATETIME_PICKER_TIME_BUTTON, DATETIMEPICKER_POPOVER_ACCESSIBLE_NAME, } from "./generated/i18n/i18n-defaults.js";
21
22
  // Template
@@ -145,24 +146,6 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
145
146
  };
146
147
  }
147
148
  }
148
- /**
149
- * Read-only getters
150
- */
151
- get classes() {
152
- return {
153
- // Remove after deliting the hbs template, the classes are added in the jsx template
154
- picker: {
155
- "ui5-dt-picker-content--phone": this.phone,
156
- },
157
- dateTimeView: {
158
- "ui5-dt-cal--hidden": this.phone && this.showTimeView,
159
- "ui5-dt-time--hidden": this.phone && this.showDateView,
160
- },
161
- footer: {
162
- "ui5-dt-picker-footer-time-hidden": (this.phone && this.showTimeView) || (this.phone && this.showDateView),
163
- },
164
- };
165
- }
166
149
  get _formatPattern() {
167
150
  const hasHours = !!(this.formatPattern || "").match(/H/i);
168
151
  const fallback = !this.formatPattern || !hasHours;
@@ -197,13 +180,13 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
197
180
  return true;
198
181
  }
199
182
  get showDateView() {
200
- return this.phone ? !this._showTimeView : true;
183
+ return this._phoneView ? !this._showTimeView : true;
201
184
  }
202
185
  get showTimeView() {
203
- return this.phone ? this._showTimeView : true;
186
+ return this._phoneView ? this._showTimeView : true;
204
187
  }
205
- get phone() {
206
- return super.phone || this._phoneMode;
188
+ get _phoneView() {
189
+ return isPhone() || this._phoneMode;
207
190
  }
208
191
  /**
209
192
  * @override
@@ -303,9 +286,6 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
303
286
  const newValue = this.formatValue(modifiedLocalDate);
304
287
  this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
305
288
  }
306
- getPicker() {
307
- return this.shadowRoot.querySelector("[ui5-responsive-popover]");
308
- }
309
289
  getSelectedDateTime() {
310
290
  const selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]);
311
291
  const selectedTime = this.getFormat().parse(this._timeSelectionValue);
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport type { SegmentedButtonSelectionChangeEventDetail } from \"./SegmentedButton.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n\tDATETIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerTemplate from \"./DateTimePickerTemplate.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * ### Overview\n * The `DateTimePicker` component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * ### Usage\n *\n * Use the `DateTimePicker` if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the `DatePicker` or the `TimePicker` components instead.\n *\n * The user can set date/time by:\n *\n * - using the calendar and the time selectors\n * - typing in the input field\n *\n * Programmatically, to set date/time for the `DateTimePicker`, use the `value` property\n *\n * ### Formatting\n *\n * The value entered by typing into the input field must fit to the used date/time 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](https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n *\n * **Example:** the following format `dd/MM/yyyy, hh:mm:ss aa`\n * corresponds the `13/04/2020, 03:16:16 AM` value.\n *\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * **Example:** the following format `dd/MM/yyyy, HH:mm:ss`\n * corresponds the `13/04/2020, 15:16:16` value.\n *\n * The capital 'H' indicates \"24\" hours format.\n *\n * **Note:** If the `formatPattern` does NOT include time,\n * the `DateTimePicker` will fallback to the default time format according to the locale.\n *\n * **Note:** If no placeholder is set to the `DateTimePicker`,\n * the current `formatPattern` is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * **Note:** If the user input does NOT match the `formatPattern`,\n * the `DateTimePicker` makes an attempt to parse it based on the\n * locale settings.\n *\n * ### Responsive behavior\n *\n * The `DateTimePicker` is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DateTimePicker.js\";`\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\ttemplate: DateTimePickerTemplate,\n\tstyles: [\n\t\tDatePicker.styles,\n\t\tDateTimePickerCss,\n\t\tDateTimePickerPopoverCss,\n\t],\n})\nclass DateTimePicker extends DatePicker implements IFormInputElement {\n\t/**\n\t * Defines the visibility of the time view in `phoneMode`.\n\t * For more information, see the `phoneMode` property.\n\t *\n\t * **Note:** The date view would be displayed by default.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView = false\n\n\t/**\n\t * Defines if the `DateTimePicker` should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode = false;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues: PreviewValues = {};\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * @override\n\t * @private\n\t */\n\t_togglePicker() {\n\t\tsuper._togglePicker();\n\n\t\tif (this.open) {\n\t\t\tthis._previewValues = {\n\t\t\t\t...this._previewValues,\n\t\t\t\ttimeSelectionValue: this.value || this.getFormat().format(UI5Date.getInstance()),\n\t\t\t};\n\t\t}\n\t}\n\n\t/**\n\t * Read-only getters\n\t */\n\n\tget classes() {\n\t\treturn {\n\t\t\t// Remove after deliting the hbs template, the classes are added in the jsx template\n\t\t\tpicker: {\n\t\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t\t},\n\t\t\tdateTimeView: {\n\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t},\n\t\t\tfooter: {\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView),\n\t\t\t},\n\t\t};\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!(this.formatPattern || \"\").match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : (this.formatPattern || \"\");\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this.phone ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this.phone ? this._showTimeView : true;\n\t}\n\n\tget phone() {\n\t\treturn super.phone || this._phoneMode;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget pickerAccessibleName() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIMEPICKER_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 true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.selectedValues[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\t/**\n\t * Handles document resize to switch between `phoneMode` and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the `submit` button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the `cancel` button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in `phoneMode` to switch\n\t * between the date and time views.\n\t * @param e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent<SegmentedButtonSelectionChangeEventDetail>) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst selectedItem = e.detail.selectedItems[0];\n\t\tthis._showTimeView = selectedItem.getAttribute(\"data-ui5-key\") === \"Time\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tgetPicker() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateTimeInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateTimeInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport type { SegmentedButtonSelectionChangeEventDetail } from \"./SegmentedButton.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n\tDATETIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerTemplate from \"./DateTimePickerTemplate.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * ### Overview\n * The `DateTimePicker` component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * ### Usage\n *\n * Use the `DateTimePicker` if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the `DatePicker` or the `TimePicker` components instead.\n *\n * The user can set date/time by:\n *\n * - using the calendar and the time selectors\n * - typing in the input field\n *\n * Programmatically, to set date/time for the `DateTimePicker`, use the `value` property\n *\n * ### Formatting\n *\n * The value entered by typing into the input field must fit to the used date/time 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](https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n *\n * **Example:** the following format `dd/MM/yyyy, hh:mm:ss aa`\n * corresponds the `13/04/2020, 03:16:16 AM` value.\n *\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * **Example:** the following format `dd/MM/yyyy, HH:mm:ss`\n * corresponds the `13/04/2020, 15:16:16` value.\n *\n * The capital 'H' indicates \"24\" hours format.\n *\n * **Note:** If the `formatPattern` does NOT include time,\n * the `DateTimePicker` will fallback to the default time format according to the locale.\n *\n * **Note:** If no placeholder is set to the `DateTimePicker`,\n * the current `formatPattern` is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * **Note:** If the user input does NOT match the `formatPattern`,\n * the `DateTimePicker` makes an attempt to parse it based on the\n * locale settings.\n *\n * ### Responsive behavior\n *\n * The `DateTimePicker` is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DateTimePicker.js\";`\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\ttemplate: DateTimePickerTemplate,\n\tstyles: [\n\t\tDatePicker.styles,\n\t\tDateTimePickerCss,\n\t\tDateTimePickerPopoverCss,\n\t],\n})\nclass DateTimePicker extends DatePicker implements IFormInputElement {\n\t/**\n\t * Defines the visibility of the time view in `phoneMode`.\n\t * For more information, see the `phoneMode` property.\n\t *\n\t * **Note:** The date view would be displayed by default.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView = false\n\n\t/**\n\t * Defines if the `DateTimePicker` should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode = false;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues: PreviewValues = {};\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * @override\n\t * @private\n\t */\n\t_togglePicker() {\n\t\tsuper._togglePicker();\n\n\t\tif (this.open) {\n\t\t\tthis._previewValues = {\n\t\t\t\t...this._previewValues,\n\t\t\t\ttimeSelectionValue: this.value || this.getFormat().format(UI5Date.getInstance()),\n\t\t\t};\n\t\t}\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!(this.formatPattern || \"\").match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : (this.formatPattern || \"\");\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this._phoneView ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this._phoneView ? this._showTimeView : true;\n\t}\n\n\tget _phoneView() {\n\t\treturn isPhone() || this._phoneMode;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget pickerAccessibleName() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIMEPICKER_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 true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.selectedValues[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\t/**\n\t * Handles document resize to switch between `phoneMode` and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the `submit` button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the `cancel` button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in `phoneMode` to switch\n\t * between the date and time views.\n\t * @param e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent<SegmentedButtonSelectionChangeEventDetail>) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst selectedItem = e.detail.selectedItems[0];\n\t\tthis._showTimeView = selectedItem.getAttribute(\"data-ui5-key\") === \"Time\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateTimeInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateTimeInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
@@ -10,31 +10,29 @@ import TimeSelectionClocks from "./TimeSelectionClocks.js";
10
10
  export default function DateTimePickerTemplate() {
11
11
  return [
12
12
  DatePickerInputTemplate.call(this),
13
- DatePickerPopoverTemplate.call(this, { header, content, footer }),
13
+ DatePickerPopoverTemplate.call(this, { content, footer }),
14
14
  ];
15
15
  }
16
- function header() {
17
- return (_jsx(_Fragment, { children: this.phone &&
18
- _jsx("div", { class: "ui5-dt-picker-header", children: _jsxs(SegmentedButton, { class: "ui5-dt-picker-toggle-button", onSelectionChange: this._dateTimeSwitchChange, children: [_jsx(SegmentedButtonItem, { "data-ui5-key": "Date", selected: this.showDateView, children: this.btnDateLabel }), _jsx(SegmentedButtonItem, { "data-ui5-key": "Time", selected: this.showTimeView, children: this.btnTimeLabel })] }) }) }));
19
- }
20
16
  function content() {
21
- return (_jsxs("div", { class: {
22
- "ui5-dt-picker-content": true,
23
- "ui5-dt-picker-content--phone": this.phone,
24
- }, children: [_jsx(Calendar, { class: {
25
- "ui5-dt-cal": true,
26
- "ui5-dt-cal--hidden": this.phone && this.showTimeView,
27
- "ui5-dt-time--hidden": this.phone && this.showDateView,
28
- }, id: `${this._id}-calendar`, primaryCalendarType: this._primaryCalendarType, secondaryCalendarType: this.secondaryCalendarType, formatPattern: this._formatPattern, selectionMode: this._calendarSelectionMode, minDate: this.minDate, maxDate: this.maxDate, calendarWeekNumbering: this.calendarWeekNumbering, onSelectionChange: this.onSelectedDatesChange, onShowMonthView: this.onHeaderShowMonthPress, onShowYearView: this.onHeaderShowYearPress, hideWeekNumbers: this.hideWeekNumbers, _currentPicker: this._calendarCurrentPicker, children: this._calendarSelectedDates.map(date => _jsx(CalendarDate, { value: date })) }), !this.phone && _jsx("span", { class: "ui5-dt-picker-separator" }), this.showTimeView &&
29
- _jsx(TimeSelectionClocks, { id: `${this._id}-time-sel`, class: {
30
- "ui5-dt-time": true,
31
- ...this.classes.dateTimeView,
32
- }, formatPattern: this._formatPattern, value: this._timeSelectionValue, onChange: this.onTimeSelectionChange, _calendarType: this._primaryCalendarType })] }));
17
+ return (_jsxs(_Fragment, { children: [this._phoneView &&
18
+ _jsx("div", { class: "ui5-dt-picker-header", children: _jsxs(SegmentedButton, { class: "ui5-dt-picker-toggle-button", onSelectionChange: this._dateTimeSwitchChange, children: [_jsx(SegmentedButtonItem, { "data-ui5-key": "Date", selected: this.showDateView, children: this.btnDateLabel }), _jsx(SegmentedButtonItem, { "data-ui5-key": "Time", selected: this.showTimeView, children: this.btnTimeLabel })] }) }), _jsxs("div", { class: {
19
+ "ui5-dt-picker-content": true,
20
+ "ui5-dt-picker-content--phone": this._phoneView,
21
+ }, children: [_jsx(Calendar, { class: {
22
+ "ui5-dt-cal": true,
23
+ "ui5-dt-cal--hidden": this._phoneView && this.showTimeView,
24
+ "ui5-dt-time--hidden": this._phoneView && this.showDateView,
25
+ }, id: `${this._id}-calendar`, primaryCalendarType: this._primaryCalendarType, secondaryCalendarType: this.secondaryCalendarType, formatPattern: this._formatPattern, selectionMode: this._calendarSelectionMode, minDate: this.minDate, maxDate: this.maxDate, calendarWeekNumbering: this.calendarWeekNumbering, onSelectionChange: this.onSelectedDatesChange, onShowMonthView: this.onHeaderShowMonthPress, onShowYearView: this.onHeaderShowYearPress, hideWeekNumbers: this.hideWeekNumbers, _currentPicker: this._calendarCurrentPicker, children: this._calendarSelectedDates.map(date => _jsx(CalendarDate, { value: date })) }), !this._phoneView && _jsx("span", { class: "ui5-dt-picker-separator" }), this.showTimeView &&
26
+ _jsx(TimeSelectionClocks, { id: `${this._id}-time-sel`, class: {
27
+ "ui5-dt-time": true,
28
+ "ui5-dt-cal--hidden": this._phoneView && this.showTimeView,
29
+ "ui5-dt-time--hidden": this._phoneView && this.showDateView,
30
+ }, formatPattern: this._formatPattern, value: this._timeSelectionValue, onChange: this.onTimeSelectionChange, _calendarType: this._primaryCalendarType })] })] }));
33
31
  }
34
32
  function footer() {
35
33
  return (_jsxs("div", { slot: "footer", class: {
36
34
  "ui5-dt-picker-footer": true,
37
- "ui5-dt-picker-footer-time-hidden": (this.phone && this.showTimeView) || (this.phone && this.showDateView)
35
+ "ui5-dt-picker-footer-time-hidden": (this._phoneView && this.showTimeView) || (this._phoneView && this.showDateView)
38
36
  }, children: [_jsx(Button, { id: "ok", class: "ui5-dt-picker-action", design: "Emphasized", disabled: this._submitDisabled, onClick: this._submitClick, children: this.btnOKLabel }), _jsx(Button, { id: "cancel", class: "ui5-dt-picker-action", design: "Transparent", onClick: this._cancelClick, children: this.btnCancelLabel })] }));
39
37
  }
40
38
  //# sourceMappingURL=DateTimePickerTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimePickerTemplate.js","sourceRoot":"","sources":["../src/DateTimePickerTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import DatePickerInputTemplate from \"./DatePickerInputTemplate.js\";\nimport DatePickerPopoverTemplate from \"./DatePickerPopoverTemplate.js\";\n\nimport type DateTimePicker from \"./DateTimePicker.js\";\nimport Button from \"./Button.js\";\nimport Calendar from \"./Calendar.js\";\nimport CalendarDate from \"./CalendarDate.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport SegmentedButtonItem from \"./SegmentedButtonItem.js\";\nimport TimeSelectionClocks from \"./TimeSelectionClocks.js\";\n\nexport default function DateTimePickerTemplate(this: DateTimePicker) {\n\treturn [\n\t\tDatePickerInputTemplate.call(this),\n\t\tDatePickerPopoverTemplate.call(this, { header, content, footer }),\n\t];\n}\n\nfunction header(this: DateTimePicker) {\n\treturn (\n\t\t<>\n\t\t\t{ this.phone &&\n\t\t\t\t<div class=\"ui5-dt-picker-header\">\n\t\t\t\t\t<SegmentedButton class=\"ui5-dt-picker-toggle-button\" onSelectionChange={this._dateTimeSwitchChange}>\n\t\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Date\" selected={this.showDateView}>{this.btnDateLabel}</SegmentedButtonItem>\n\t\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Time\" selected={this.showTimeView}>{this.btnTimeLabel}</SegmentedButtonItem>\n\t\t\t\t\t</SegmentedButton>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</>\n\t);\n}\n\nfunction content(this: DateTimePicker) {\n\treturn (\n\t\t<div class={{\n\t\t\t\"ui5-dt-picker-content\": true,\n\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t}}>\n\t\t\t<Calendar\n\t\t\t\tclass={{\n\t\t\t\t\t\"ui5-dt-cal\": true,\n\t\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t\t}}\n\t\t\t\tid={`${this._id}-calendar`}\n\t\t\t\tprimaryCalendarType={this._primaryCalendarType}\n\t\t\t\tsecondaryCalendarType={this.secondaryCalendarType}\n\t\t\t\tformatPattern={this._formatPattern}\n\t\t\t\tselectionMode={this._calendarSelectionMode}\n\t\t\t\tminDate={this.minDate}\n\t\t\t\tmaxDate={this.maxDate}\n\t\t\t\tcalendarWeekNumbering={this.calendarWeekNumbering}\n\t\t\t\tonSelectionChange={this.onSelectedDatesChange}\n\t\t\t\tonShowMonthView={this.onHeaderShowMonthPress}\n\t\t\t\tonShowYearView={this.onHeaderShowYearPress}\n\t\t\t\thideWeekNumbers={this.hideWeekNumbers}\n\t\t\t\t_currentPicker={this._calendarCurrentPicker}\n\t\t\t>\n\t\t\t\t{this._calendarSelectedDates.map(date =>\n\t\t\t\t\t<CalendarDate value={date} />\n\t\t\t\t)}\n\t\t\t</Calendar>\n\n\t\t\t{ !this.phone && <span class=\"ui5-dt-picker-separator\"></span> }\n\n\t\t\t{ this.showTimeView &&\n\t\t\t\t<TimeSelectionClocks\n\t\t\t\t\tid={`${this._id}-time-sel`}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t\"ui5-dt-time\": true,\n\t\t\t\t\t\t...this.classes.dateTimeView,\n\t\t\t\t\t}}\n\t\t\t\t\tformatPattern={this._formatPattern}\n\t\t\t\t\tvalue={this._timeSelectionValue}\n\t\t\t\t\tonChange={this.onTimeSelectionChange}\n\t\t\t\t\t_calendarType={this._primaryCalendarType}\n\t\t\t\t/>\n\t\t\t}\n\t\t</div>\n\t);\n}\n\nfunction footer(this: DateTimePicker) {\n\treturn (\n\t\t<div\n\t\t\tslot=\"footer\"\n\t\t\tclass={{\n\t\t\t\t\"ui5-dt-picker-footer\": true,\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView)\n\t\t\t}}>\n\t\t\t<Button\n\t\t\t\tid=\"ok\"\n\t\t\t\tclass=\"ui5-dt-picker-action\"\n\t\t\t\tdesign=\"Emphasized\"\n\t\t\t\tdisabled={this._submitDisabled}\n\t\t\t\tonClick={this._submitClick}\n\t\t\t>\n\t\t\t\t{this.btnOKLabel}\n\t\t\t</Button>\n\n\t\t\t<Button\n\t\t\t\tid=\"cancel\"\n\t\t\t\tclass=\"ui5-dt-picker-action\"\n\t\t\t\tdesign=\"Transparent\"\n\t\t\t\tonClick={this._cancelClick}\n\t\t\t>\n\t\t\t\t{this.btnCancelLabel}\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"file":"DateTimePickerTemplate.js","sourceRoot":"","sources":["../src/DateTimePickerTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import DatePickerInputTemplate from \"./DatePickerInputTemplate.js\";\nimport DatePickerPopoverTemplate from \"./DatePickerPopoverTemplate.js\";\n\nimport type DateTimePicker from \"./DateTimePicker.js\";\nimport Button from \"./Button.js\";\nimport Calendar from \"./Calendar.js\";\nimport CalendarDate from \"./CalendarDate.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport SegmentedButtonItem from \"./SegmentedButtonItem.js\";\nimport TimeSelectionClocks from \"./TimeSelectionClocks.js\";\n\nexport default function DateTimePickerTemplate(this: DateTimePicker) {\n\treturn [\n\t\tDatePickerInputTemplate.call(this),\n\t\tDatePickerPopoverTemplate.call(this, { content, footer }),\n\t];\n}\n\nfunction content(this: DateTimePicker) {\n\treturn (\n\t\t<>\n\t\t\t{ this._phoneView &&\n\t\t\t\t<div class=\"ui5-dt-picker-header\">\n\t\t\t\t\t<SegmentedButton class=\"ui5-dt-picker-toggle-button\" onSelectionChange={this._dateTimeSwitchChange}>\n\t\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Date\" selected={this.showDateView}>{this.btnDateLabel}</SegmentedButtonItem>\n\t\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Time\" selected={this.showTimeView}>{this.btnTimeLabel}</SegmentedButtonItem>\n\t\t\t\t\t</SegmentedButton>\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t<div class={{\n\t\t\t\t\"ui5-dt-picker-content\": true,\n\t\t\t\t\"ui5-dt-picker-content--phone\": this._phoneView,\n\t\t\t}}>\n\t\t\t\t<Calendar\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t\"ui5-dt-cal\": true,\n\t\t\t\t\t\t\"ui5-dt-cal--hidden\": this._phoneView && this.showTimeView,\n\t\t\t\t\t\t\"ui5-dt-time--hidden\": this._phoneView && this.showDateView,\n\t\t\t\t\t}}\n\t\t\t\t\tid={`${this._id}-calendar`}\n\t\t\t\t\tprimaryCalendarType={this._primaryCalendarType}\n\t\t\t\t\tsecondaryCalendarType={this.secondaryCalendarType}\n\t\t\t\t\tformatPattern={this._formatPattern}\n\t\t\t\t\tselectionMode={this._calendarSelectionMode}\n\t\t\t\t\tminDate={this.minDate}\n\t\t\t\t\tmaxDate={this.maxDate}\n\t\t\t\t\tcalendarWeekNumbering={this.calendarWeekNumbering}\n\t\t\t\t\tonSelectionChange={this.onSelectedDatesChange}\n\t\t\t\t\tonShowMonthView={this.onHeaderShowMonthPress}\n\t\t\t\t\tonShowYearView={this.onHeaderShowYearPress}\n\t\t\t\t\thideWeekNumbers={this.hideWeekNumbers}\n\t\t\t\t\t_currentPicker={this._calendarCurrentPicker}\n\t\t\t\t>\n\t\t\t\t\t{this._calendarSelectedDates.map(date =>\n\t\t\t\t\t\t<CalendarDate value={date} />\n\t\t\t\t\t)}\n\t\t\t\t</Calendar>\n\n\t\t\t\t{ !this._phoneView && <span class=\"ui5-dt-picker-separator\"></span> }\n\n\t\t\t\t{ this.showTimeView &&\n\t\t\t\t\t<TimeSelectionClocks\n\t\t\t\t\t\tid={`${this._id}-time-sel`}\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\"ui5-dt-time\": true,\n\t\t\t\t\t\t\t\"ui5-dt-cal--hidden\": this._phoneView && this.showTimeView,\n\t\t\t\t\t\t\t\"ui5-dt-time--hidden\": this._phoneView && this.showDateView,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tformatPattern={this._formatPattern}\n\t\t\t\t\t\tvalue={this._timeSelectionValue}\n\t\t\t\t\t\tonChange={this.onTimeSelectionChange}\n\t\t\t\t\t\t_calendarType={this._primaryCalendarType}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nfunction footer(this: DateTimePicker) {\n\treturn (\n\t\t<div\n\t\t\tslot=\"footer\"\n\t\t\tclass={{\n\t\t\t\t\"ui5-dt-picker-footer\": true,\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this._phoneView && this.showTimeView) || (this._phoneView && this.showDateView)\n\t\t\t}}>\n\t\t\t<Button\n\t\t\t\tid=\"ok\"\n\t\t\t\tclass=\"ui5-dt-picker-action\"\n\t\t\t\tdesign=\"Emphasized\"\n\t\t\t\tdisabled={this._submitDisabled}\n\t\t\t\tonClick={this._submitClick}\n\t\t\t>\n\t\t\t\t{this.btnOKLabel}\n\t\t\t</Button>\n\n\t\t\t<Button\n\t\t\t\tid=\"cancel\"\n\t\t\t\tclass=\"ui5-dt-picker-action\"\n\t\t\t\tdesign=\"Transparent\"\n\t\t\t\tonClick={this._cancelClick}\n\t\t\t>\n\t\t\t\t{this.btnCancelLabel}\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n"]}
@@ -97,6 +97,7 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
97
97
  * @private
98
98
  */
99
99
  specialCalendarDates: Array<SpecialCalendarDateT>;
100
+ _focusableDay: HTMLElement;
100
101
  _autoFocus?: boolean;
101
102
  static i18nBundle: I18nBundle;
102
103
  onBeforeRendering(): void;
@@ -120,6 +121,8 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
120
121
  */
121
122
  namesTooLong(dayNames: Array<string>): boolean;
122
123
  onAfterRendering(): void;
124
+ _focusCorrectDay(): void;
125
+ get _shouldFocusDay(): boolean;
123
126
  _onfocusin(): void;
124
127
  _onfocusout(): void;
125
128
  /**
package/dist/DayPicker.js CHANGED
@@ -7,6 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var DayPicker_1;
8
8
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
9
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
+ import query from "@ui5/webcomponents-base/dist/decorators/query.js";
10
11
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
11
12
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
12
13
  import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
@@ -252,13 +253,18 @@ let DayPicker = DayPicker_1 = class DayPicker extends CalendarPart {
252
253
  if (this._autoFocus && !this._hidden) {
253
254
  this.focus();
254
255
  }
255
- const focusedDay = this.shadowRoot.querySelector("[data-sap-focus-ref]");
256
- if (focusedDay && document.activeElement !== focusedDay && this._specialCalendarDates.length === 0) {
257
- focusedDay.focus();
256
+ }
257
+ _focusCorrectDay() {
258
+ if (this._shouldFocusDay) {
259
+ this._focusableDay.focus();
258
260
  }
259
261
  }
262
+ get _shouldFocusDay() {
263
+ return document.activeElement !== this._focusableDay && this._specialCalendarDates.length === 0;
264
+ }
260
265
  _onfocusin() {
261
266
  this._autoFocus = true;
267
+ this._focusCorrectDay();
262
268
  }
263
269
  _onfocusout() {
264
270
  this._autoFocus = false;
@@ -675,6 +681,9 @@ __decorate([
675
681
  __decorate([
676
682
  property({ type: Array })
677
683
  ], DayPicker.prototype, "specialCalendarDates", void 0);
684
+ __decorate([
685
+ query("[data-sap-focus-ref]")
686
+ ], DayPicker.prototype, "_focusableDay", void 0);
678
687
  __decorate([
679
688
  i18n("@ui5/webcomponents")
680
689
  ], DayPicker, "i18nBundle", void 0);