@ui5/webcomponents 2.16.0-rc.1 → 2.16.0-rc.2

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 (683) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Button.js +5 -3
  4. package/dist/Button.js.map +1 -1
  5. package/dist/Calendar.d.ts +9 -9
  6. package/dist/Calendar.js +46 -38
  7. package/dist/Calendar.js.map +1 -1
  8. package/dist/CalendarHeaderTemplate.js +3 -3
  9. package/dist/CalendarHeaderTemplate.js.map +1 -1
  10. package/dist/ComboBox.js +1 -1
  11. package/dist/ComboBox.js.map +1 -1
  12. package/dist/DatePicker.d.ts +2 -0
  13. package/dist/DatePicker.js +45 -5
  14. package/dist/DatePicker.js.map +1 -1
  15. package/dist/DateRangePicker.d.ts +4 -0
  16. package/dist/DateRangePicker.js +40 -10
  17. package/dist/DateRangePicker.js.map +1 -1
  18. package/dist/DateTimePicker.d.ts +2 -0
  19. package/dist/DateTimePicker.js +27 -1
  20. package/dist/DateTimePicker.js.map +1 -1
  21. package/dist/DayPickerTemplate.js +1 -1
  22. package/dist/DayPickerTemplate.js.map +1 -1
  23. package/dist/DynamicDateRange.d.ts +5 -1
  24. package/dist/DynamicDateRange.js +11 -2
  25. package/dist/DynamicDateRange.js.map +1 -1
  26. package/dist/FileUploader.d.ts +2 -0
  27. package/dist/FileUploader.js +13 -1
  28. package/dist/FileUploader.js.map +1 -1
  29. package/dist/Form.d.ts +1 -0
  30. package/dist/Form.js +3 -2
  31. package/dist/Form.js.map +1 -1
  32. package/dist/FormGroup.d.ts +11 -0
  33. package/dist/FormGroup.js +23 -2
  34. package/dist/FormGroup.js.map +1 -1
  35. package/dist/FormTemplate.js +1 -1
  36. package/dist/FormTemplate.js.map +1 -1
  37. package/dist/MonthPicker.d.ts +6 -1
  38. package/dist/MonthPicker.js +13 -5
  39. package/dist/MonthPicker.js.map +1 -1
  40. package/dist/MonthPickerTemplate.js +1 -1
  41. package/dist/MonthPickerTemplate.js.map +1 -1
  42. package/dist/MultiInput.js +1 -1
  43. package/dist/MultiInput.js.map +1 -1
  44. package/dist/StepInput.d.ts +2 -0
  45. package/dist/StepInput.js +24 -4
  46. package/dist/StepInput.js.map +1 -1
  47. package/dist/Table.d.ts +22 -4
  48. package/dist/Table.js +27 -5
  49. package/dist/Table.js.map +1 -1
  50. package/dist/TableCellBase.d.ts +1 -2
  51. package/dist/TableCellBase.js +1 -4
  52. package/dist/TableCellBase.js.map +1 -1
  53. package/dist/TableCustomAnnouncement.js +4 -1
  54. package/dist/TableCustomAnnouncement.js.map +1 -1
  55. package/dist/TableHeaderCell.d.ts +1 -1
  56. package/dist/TableHeaderCell.js.map +1 -1
  57. package/dist/TableHeaderRowTemplate.js +4 -2
  58. package/dist/TableHeaderRowTemplate.js.map +1 -1
  59. package/dist/TableRow.js +3 -3
  60. package/dist/TableRow.js.map +1 -1
  61. package/dist/TableRowBase.d.ts +1 -0
  62. package/dist/TableRowBase.js +5 -1
  63. package/dist/TableRowBase.js.map +1 -1
  64. package/dist/TableRowTemplate.js +4 -2
  65. package/dist/TableRowTemplate.js.map +1 -1
  66. package/dist/TableSelection.js +1 -1
  67. package/dist/TableSelection.js.map +1 -1
  68. package/dist/TableSelectionMulti.js +1 -1
  69. package/dist/TableSelectionMulti.js.map +1 -1
  70. package/dist/TableTemplate.js +3 -6
  71. package/dist/TableTemplate.js.map +1 -1
  72. package/dist/TimePicker.d.ts +6 -0
  73. package/dist/TimePicker.js +23 -3
  74. package/dist/TimePicker.js.map +1 -1
  75. package/dist/TimePickerTemplate.js +1 -1
  76. package/dist/TimePickerTemplate.js.map +1 -1
  77. package/dist/Token.d.ts +0 -1
  78. package/dist/Token.js +0 -4
  79. package/dist/Token.js.map +1 -1
  80. package/dist/Tokenizer.js +5 -0
  81. package/dist/Tokenizer.js.map +1 -1
  82. package/dist/YearPicker.d.ts +0 -1
  83. package/dist/YearPicker.js +0 -5
  84. package/dist/YearPicker.js.map +1 -1
  85. package/dist/YearRangePicker.d.ts +0 -1
  86. package/dist/YearRangePicker.js +0 -5
  87. package/dist/YearRangePicker.js.map +1 -1
  88. package/dist/bundle.esm.js +3 -0
  89. package/dist/bundle.esm.js.map +1 -1
  90. package/dist/css/themes/Avatar.css +1 -1
  91. package/dist/css/themes/AvatarGroup.css +1 -1
  92. package/dist/css/themes/Bar.css +1 -1
  93. package/dist/css/themes/Breadcrumbs.css +1 -1
  94. package/dist/css/themes/BusyIndicator.css +1 -1
  95. package/dist/css/themes/Button.css +1 -1
  96. package/dist/css/themes/ButtonBadge.css +1 -1
  97. package/dist/css/themes/Calendar.css +1 -1
  98. package/dist/css/themes/CalendarHeader.css +1 -1
  99. package/dist/css/themes/CalendarLegend.css +1 -1
  100. package/dist/css/themes/CalendarLegendItem.css +1 -1
  101. package/dist/css/themes/Card.css +1 -1
  102. package/dist/css/themes/CardHeader.css +1 -1
  103. package/dist/css/themes/Carousel.css +1 -1
  104. package/dist/css/themes/CheckBox.css +1 -1
  105. package/dist/css/themes/ColorPalette.css +1 -1
  106. package/dist/css/themes/ColorPaletteItem.css +1 -1
  107. package/dist/css/themes/ColorPalettePopover.css +1 -1
  108. package/dist/css/themes/ColorPicker.css +1 -1
  109. package/dist/css/themes/ComboBox.css +1 -1
  110. package/dist/css/themes/ComboBoxItem.css +1 -1
  111. package/dist/css/themes/DatePicker.css +1 -1
  112. package/dist/css/themes/DatePickerPopover.css +1 -1
  113. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  114. package/dist/css/themes/DayPicker.css +1 -1
  115. package/dist/css/themes/Dialog.css +1 -1
  116. package/dist/css/themes/DynamicDateRange.css +1 -1
  117. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  118. package/dist/css/themes/FileUploader.css +1 -1
  119. package/dist/css/themes/Form.css +1 -1
  120. package/dist/css/themes/FormItem.css +1 -1
  121. package/dist/css/themes/FormItemSpan.css +1 -1
  122. package/dist/css/themes/GrowingButton.css +1 -1
  123. package/dist/css/themes/Icon.css +1 -1
  124. package/dist/css/themes/Input.css +1 -1
  125. package/dist/css/themes/InputIcon.css +1 -1
  126. package/dist/css/themes/InputSharedStyles.css +1 -1
  127. package/dist/css/themes/Link.css +1 -1
  128. package/dist/css/themes/List.css +1 -1
  129. package/dist/css/themes/ListItem.css +1 -1
  130. package/dist/css/themes/ListItemBase.css +1 -1
  131. package/dist/css/themes/ListItemCustom.css +1 -1
  132. package/dist/css/themes/ListItemGroup.css +1 -1
  133. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  134. package/dist/css/themes/ListItemIcon.css +1 -1
  135. package/dist/css/themes/Menu.css +1 -1
  136. package/dist/css/themes/MenuItem.css +1 -1
  137. package/dist/css/themes/MessageStrip.css +1 -1
  138. package/dist/css/themes/MonthPicker.css +1 -1
  139. package/dist/css/themes/MultiComboBox.css +1 -1
  140. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  141. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  142. package/dist/css/themes/MultiInput.css +1 -1
  143. package/dist/css/themes/OptionBase.css +1 -1
  144. package/dist/css/themes/Panel.css +1 -1
  145. package/dist/css/themes/Popover.css +1 -1
  146. package/dist/css/themes/PopupsCommon.css +1 -1
  147. package/dist/css/themes/ProgressIndicator.css +1 -1
  148. package/dist/css/themes/RadioButton.css +1 -1
  149. package/dist/css/themes/RangeSlider.css +1 -1
  150. package/dist/css/themes/RatingIndicator.css +1 -1
  151. package/dist/css/themes/ResponsivePopover.css +1 -1
  152. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  153. package/dist/css/themes/SegmentedButton.css +1 -1
  154. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  155. package/dist/css/themes/Select.css +1 -1
  156. package/dist/css/themes/SliderBase.css +1 -1
  157. package/dist/css/themes/SplitButton.css +1 -1
  158. package/dist/css/themes/StepInput.css +1 -1
  159. package/dist/css/themes/SuggestionItem.css +1 -1
  160. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  161. package/dist/css/themes/Switch.css +1 -1
  162. package/dist/css/themes/TabContainer.css +1 -1
  163. package/dist/css/themes/TabInOverflow.css +1 -1
  164. package/dist/css/themes/TabInStrip.css +1 -1
  165. package/dist/css/themes/TabSemanticIcon.css +1 -1
  166. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  167. package/dist/css/themes/Table.css +1 -1
  168. package/dist/css/themes/TableCellBase.css +1 -1
  169. package/dist/css/themes/TableGrowing.css +1 -1
  170. package/dist/css/themes/TableHeaderRow.css +1 -1
  171. package/dist/css/themes/TableRow.css +1 -1
  172. package/dist/css/themes/TableRowActionBase.css +1 -1
  173. package/dist/css/themes/TableRowBase.css +1 -1
  174. package/dist/css/themes/Tag.css +1 -1
  175. package/dist/css/themes/Text.css +1 -1
  176. package/dist/css/themes/TextArea.css +1 -1
  177. package/dist/css/themes/TimePicker.css +1 -1
  178. package/dist/css/themes/Toast.css +1 -1
  179. package/dist/css/themes/ToggleButton.css +1 -1
  180. package/dist/css/themes/Token.css +1 -1
  181. package/dist/css/themes/Tokenizer.css +1 -1
  182. package/dist/css/themes/TokenizerPopover.css +1 -1
  183. package/dist/css/themes/Toolbar.css +1 -1
  184. package/dist/css/themes/ToolbarButton.css +1 -1
  185. package/dist/css/themes/ToolbarPopover.css +1 -1
  186. package/dist/css/themes/ToolbarSeparator.css +1 -1
  187. package/dist/css/themes/TreeItem.css +1 -1
  188. package/dist/css/themes/ValueStateMessage.css +1 -1
  189. package/dist/css/themes/ValueStateVariables.css +1 -1
  190. package/dist/css/themes/YearPicker.css +1 -1
  191. package/dist/css/themes/YearRangePicker.css +1 -1
  192. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  193. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  194. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  195. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  196. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  197. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  198. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  199. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  200. package/dist/custom-elements-internal.json +111 -2
  201. package/dist/custom-elements.json +103 -2
  202. package/dist/dynamic-date-range-options/DateTimeRange.d.ts +25 -0
  203. package/dist/dynamic-date-range-options/DateTimeRange.js +82 -0
  204. package/dist/dynamic-date-range-options/DateTimeRange.js.map +1 -0
  205. package/dist/dynamic-date-range-options/DateTimeRangeTemplate.d.ts +2 -0
  206. package/dist/dynamic-date-range-options/DateTimeRangeTemplate.js +38 -0
  207. package/dist/dynamic-date-range-options/DateTimeRangeTemplate.js.map +1 -0
  208. package/dist/dynamic-date-range-options/FromDateTime.d.ts +36 -0
  209. package/dist/dynamic-date-range-options/FromDateTime.js +136 -0
  210. package/dist/dynamic-date-range-options/FromDateTime.js.map +1 -0
  211. package/dist/dynamic-date-range-options/FromDateTimeTemplate.d.ts +2 -0
  212. package/dist/dynamic-date-range-options/FromDateTimeTemplate.js +24 -0
  213. package/dist/dynamic-date-range-options/FromDateTimeTemplate.js.map +1 -0
  214. package/dist/dynamic-date-range-options/ToDateTime.d.ts +36 -0
  215. package/dist/dynamic-date-range-options/ToDateTime.js +136 -0
  216. package/dist/dynamic-date-range-options/ToDateTime.js.map +1 -0
  217. package/dist/dynamic-date-range-options/toDates.d.ts +3 -1
  218. package/dist/dynamic-date-range-options/toDates.js +25 -1
  219. package/dist/dynamic-date-range-options/toDates.js.map +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  253. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  266. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  267. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  268. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  269. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  270. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  271. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  272. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  273. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  274. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  275. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  276. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  277. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  278. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  279. package/dist/generated/i18n/i18n-defaults.d.ts +28 -1
  280. package/dist/generated/i18n/i18n-defaults.js +30 -3
  281. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  282. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  283. package/dist/generated/themes/Avatar.css.js +1 -1
  284. package/dist/generated/themes/Avatar.css.js.map +1 -1
  285. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  286. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  287. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  288. package/dist/generated/themes/Bar.css.d.ts +1 -1
  289. package/dist/generated/themes/Bar.css.js +1 -1
  290. package/dist/generated/themes/Bar.css.js.map +1 -1
  291. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  292. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  293. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  294. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  295. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  296. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  297. package/dist/generated/themes/Button.css.d.ts +1 -1
  298. package/dist/generated/themes/Button.css.js +1 -1
  299. package/dist/generated/themes/Button.css.js.map +1 -1
  300. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  301. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  302. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  303. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  304. package/dist/generated/themes/Calendar.css.js +1 -1
  305. package/dist/generated/themes/Calendar.css.js.map +1 -1
  306. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  307. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  308. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  309. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  310. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  311. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  312. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  313. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  314. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  315. package/dist/generated/themes/Card.css.d.ts +1 -1
  316. package/dist/generated/themes/Card.css.js +1 -1
  317. package/dist/generated/themes/Card.css.js.map +1 -1
  318. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  319. package/dist/generated/themes/CardHeader.css.js +1 -1
  320. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  321. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  322. package/dist/generated/themes/Carousel.css.js +1 -1
  323. package/dist/generated/themes/Carousel.css.js.map +1 -1
  324. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  325. package/dist/generated/themes/CheckBox.css.js +1 -1
  326. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  327. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  328. package/dist/generated/themes/ColorPalette.css.js +1 -1
  329. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  330. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  331. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  332. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  333. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  334. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  335. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  336. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  337. package/dist/generated/themes/ColorPicker.css.js +1 -1
  338. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  339. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  340. package/dist/generated/themes/ComboBox.css.js +1 -1
  341. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  342. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  343. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  344. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  345. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  346. package/dist/generated/themes/DatePicker.css.js +1 -1
  347. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  348. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  349. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  350. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  351. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  352. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  353. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  354. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  355. package/dist/generated/themes/DayPicker.css.js +1 -1
  356. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  357. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  358. package/dist/generated/themes/Dialog.css.js +1 -1
  359. package/dist/generated/themes/Dialog.css.js.map +1 -1
  360. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  361. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  362. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  363. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  364. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  365. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  366. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  367. package/dist/generated/themes/FileUploader.css.js +1 -1
  368. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  369. package/dist/generated/themes/Form.css.d.ts +1 -1
  370. package/dist/generated/themes/Form.css.js +1 -1
  371. package/dist/generated/themes/Form.css.js.map +1 -1
  372. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  373. package/dist/generated/themes/FormItem.css.js +1 -1
  374. package/dist/generated/themes/FormItem.css.js.map +1 -1
  375. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  376. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  377. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  378. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  379. package/dist/generated/themes/GrowingButton.css.js +1 -1
  380. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  381. package/dist/generated/themes/Icon.css.d.ts +1 -1
  382. package/dist/generated/themes/Icon.css.js +1 -1
  383. package/dist/generated/themes/Icon.css.js.map +1 -1
  384. package/dist/generated/themes/Input.css.d.ts +1 -1
  385. package/dist/generated/themes/Input.css.js +1 -1
  386. package/dist/generated/themes/Input.css.js.map +1 -1
  387. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  388. package/dist/generated/themes/InputIcon.css.js +1 -1
  389. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  390. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  391. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  392. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  393. package/dist/generated/themes/Link.css.d.ts +1 -1
  394. package/dist/generated/themes/Link.css.js +1 -1
  395. package/dist/generated/themes/Link.css.js.map +1 -1
  396. package/dist/generated/themes/List.css.d.ts +1 -1
  397. package/dist/generated/themes/List.css.js +1 -1
  398. package/dist/generated/themes/List.css.js.map +1 -1
  399. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  400. package/dist/generated/themes/ListItem.css.js +1 -1
  401. package/dist/generated/themes/ListItem.css.js.map +1 -1
  402. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  403. package/dist/generated/themes/ListItemBase.css.js +1 -1
  404. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  405. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  406. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  407. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  408. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  409. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  410. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  411. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  412. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  413. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  414. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  415. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  416. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  417. package/dist/generated/themes/Menu.css.d.ts +1 -1
  418. package/dist/generated/themes/Menu.css.js +1 -1
  419. package/dist/generated/themes/Menu.css.js.map +1 -1
  420. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  421. package/dist/generated/themes/MenuItem.css.js +1 -1
  422. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  423. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  424. package/dist/generated/themes/MessageStrip.css.js +1 -1
  425. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  426. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  427. package/dist/generated/themes/MonthPicker.css.js +1 -1
  428. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  429. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  430. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  431. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  432. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  433. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  434. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  435. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  436. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  437. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  438. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  439. package/dist/generated/themes/MultiInput.css.js +1 -1
  440. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  441. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  442. package/dist/generated/themes/OptionBase.css.js +1 -1
  443. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  444. package/dist/generated/themes/Panel.css.d.ts +1 -1
  445. package/dist/generated/themes/Panel.css.js +1 -1
  446. package/dist/generated/themes/Panel.css.js.map +1 -1
  447. package/dist/generated/themes/Popover.css.d.ts +1 -1
  448. package/dist/generated/themes/Popover.css.js +1 -1
  449. package/dist/generated/themes/Popover.css.js.map +1 -1
  450. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  451. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  452. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  453. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  454. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  455. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  456. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  457. package/dist/generated/themes/RadioButton.css.js +1 -1
  458. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  459. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  460. package/dist/generated/themes/RangeSlider.css.js +1 -1
  461. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  462. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  463. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  464. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  465. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  466. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  467. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  468. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  469. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  470. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  471. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  472. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  473. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  474. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  475. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  476. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  477. package/dist/generated/themes/Select.css.d.ts +1 -1
  478. package/dist/generated/themes/Select.css.js +1 -1
  479. package/dist/generated/themes/Select.css.js.map +1 -1
  480. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  481. package/dist/generated/themes/SliderBase.css.js +1 -1
  482. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  483. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  484. package/dist/generated/themes/SplitButton.css.js +1 -1
  485. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  486. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  487. package/dist/generated/themes/StepInput.css.js +1 -1
  488. package/dist/generated/themes/StepInput.css.js.map +1 -1
  489. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  490. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  491. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  492. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  493. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  494. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  495. package/dist/generated/themes/Switch.css.d.ts +1 -1
  496. package/dist/generated/themes/Switch.css.js +1 -1
  497. package/dist/generated/themes/Switch.css.js.map +1 -1
  498. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  499. package/dist/generated/themes/TabContainer.css.js +1 -1
  500. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  501. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  502. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  503. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  504. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  505. package/dist/generated/themes/TabInStrip.css.js +1 -1
  506. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  507. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  508. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  509. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  510. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  511. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  512. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  513. package/dist/generated/themes/Table.css.d.ts +1 -1
  514. package/dist/generated/themes/Table.css.js +1 -1
  515. package/dist/generated/themes/Table.css.js.map +1 -1
  516. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  517. package/dist/generated/themes/TableCellBase.css.js +1 -1
  518. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  519. package/dist/generated/themes/TableGrowing.css.d.ts +1 -1
  520. package/dist/generated/themes/TableGrowing.css.js +1 -1
  521. package/dist/generated/themes/TableGrowing.css.js.map +1 -1
  522. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  523. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  524. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  525. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  526. package/dist/generated/themes/TableRow.css.js +1 -1
  527. package/dist/generated/themes/TableRow.css.js.map +1 -1
  528. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  529. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  530. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  531. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  532. package/dist/generated/themes/TableRowBase.css.js +1 -1
  533. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  534. package/dist/generated/themes/Tag.css.d.ts +1 -1
  535. package/dist/generated/themes/Tag.css.js +1 -1
  536. package/dist/generated/themes/Tag.css.js.map +1 -1
  537. package/dist/generated/themes/Text.css.d.ts +1 -1
  538. package/dist/generated/themes/Text.css.js +1 -1
  539. package/dist/generated/themes/Text.css.js.map +1 -1
  540. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  541. package/dist/generated/themes/TextArea.css.js +1 -1
  542. package/dist/generated/themes/TextArea.css.js.map +1 -1
  543. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  544. package/dist/generated/themes/TimePicker.css.js +1 -1
  545. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  546. package/dist/generated/themes/Toast.css.d.ts +1 -1
  547. package/dist/generated/themes/Toast.css.js +1 -1
  548. package/dist/generated/themes/Toast.css.js.map +1 -1
  549. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  550. package/dist/generated/themes/ToggleButton.css.js +1 -1
  551. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  552. package/dist/generated/themes/Token.css.d.ts +1 -1
  553. package/dist/generated/themes/Token.css.js +1 -1
  554. package/dist/generated/themes/Token.css.js.map +1 -1
  555. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  556. package/dist/generated/themes/Tokenizer.css.js +1 -1
  557. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  558. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  559. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  560. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  561. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  562. package/dist/generated/themes/Toolbar.css.js +1 -1
  563. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  564. package/dist/generated/themes/ToolbarButton.css.d.ts +1 -1
  565. package/dist/generated/themes/ToolbarButton.css.js +1 -1
  566. package/dist/generated/themes/ToolbarButton.css.js.map +1 -1
  567. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  568. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  569. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  570. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  571. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  572. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  573. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  574. package/dist/generated/themes/TreeItem.css.js +1 -1
  575. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  576. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  577. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  578. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  579. package/dist/generated/themes/ValueStateVariables.css.d.ts +1 -1
  580. package/dist/generated/themes/ValueStateVariables.css.js +1 -1
  581. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -1
  582. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  583. package/dist/generated/themes/YearPicker.css.js +1 -1
  584. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  585. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  586. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  587. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  588. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  589. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  590. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  591. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  592. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  593. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  594. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  595. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  596. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  597. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  598. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  599. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  600. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  601. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  602. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  603. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  604. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  605. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  606. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  607. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  608. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  609. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  610. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  611. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  612. package/dist/vscode.html-custom-data.json +12 -2
  613. package/dist/web-types.json +23 -3
  614. package/package.json +10 -10
  615. package/src/CalendarHeaderTemplate.tsx +3 -3
  616. package/src/DayPickerTemplate.tsx +0 -2
  617. package/src/FormTemplate.tsx +1 -1
  618. package/src/MonthPickerTemplate.tsx +1 -0
  619. package/src/TableHeaderRowTemplate.tsx +8 -9
  620. package/src/TableRowTemplate.tsx +5 -1
  621. package/src/TableTemplate.tsx +4 -20
  622. package/src/TimePickerTemplate.tsx +1 -0
  623. package/src/dynamic-date-range-options/DateTimeRangeTemplate.tsx +62 -0
  624. package/src/dynamic-date-range-options/FromDateTimeTemplate.tsx +53 -0
  625. package/src/i18n/messagebundle.properties +61 -2
  626. package/src/i18n/messagebundle_ar.properties +18 -6
  627. package/src/i18n/messagebundle_bg.properties +18 -6
  628. package/src/i18n/messagebundle_ca.properties +19 -7
  629. package/src/i18n/messagebundle_cnr.properties +18 -6
  630. package/src/i18n/messagebundle_cs.properties +18 -6
  631. package/src/i18n/messagebundle_cy.properties +18 -6
  632. package/src/i18n/messagebundle_da.properties +18 -6
  633. package/src/i18n/messagebundle_de.properties +19 -7
  634. package/src/i18n/messagebundle_el.properties +18 -6
  635. package/src/i18n/messagebundle_en.properties +2 -299
  636. package/src/i18n/messagebundle_en_GB.properties +20 -8
  637. package/src/i18n/messagebundle_en_US_sappsd.properties +2 -2
  638. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -2
  639. package/src/i18n/messagebundle_en_US_saptrc.properties +2 -2
  640. package/src/i18n/messagebundle_es.properties +19 -7
  641. package/src/i18n/messagebundle_es_MX.properties +19 -7
  642. package/src/i18n/messagebundle_et.properties +18 -6
  643. package/src/i18n/messagebundle_fi.properties +18 -6
  644. package/src/i18n/messagebundle_fr.properties +18 -6
  645. package/src/i18n/messagebundle_fr_CA.properties +18 -6
  646. package/src/i18n/messagebundle_hi.properties +18 -6
  647. package/src/i18n/messagebundle_hr.properties +19 -7
  648. package/src/i18n/messagebundle_hu.properties +18 -6
  649. package/src/i18n/messagebundle_id.properties +19 -7
  650. package/src/i18n/messagebundle_it.properties +18 -6
  651. package/src/i18n/messagebundle_iw.properties +18 -6
  652. package/src/i18n/messagebundle_ja.properties +18 -6
  653. package/src/i18n/messagebundle_kk.properties +18 -6
  654. package/src/i18n/messagebundle_ko.properties +18 -6
  655. package/src/i18n/messagebundle_lt.properties +18 -6
  656. package/src/i18n/messagebundle_lv.properties +18 -6
  657. package/src/i18n/messagebundle_mk.properties +18 -6
  658. package/src/i18n/messagebundle_ms.properties +18 -6
  659. package/src/i18n/messagebundle_nl.properties +18 -6
  660. package/src/i18n/messagebundle_no.properties +18 -6
  661. package/src/i18n/messagebundle_pl.properties +18 -6
  662. package/src/i18n/messagebundle_pt.properties +18 -6
  663. package/src/i18n/messagebundle_pt_PT.properties +18 -6
  664. package/src/i18n/messagebundle_ro.properties +18 -6
  665. package/src/i18n/messagebundle_ru.properties +18 -6
  666. package/src/i18n/messagebundle_sh.properties +18 -6
  667. package/src/i18n/messagebundle_sk.properties +18 -6
  668. package/src/i18n/messagebundle_sl.properties +18 -6
  669. package/src/i18n/messagebundle_sr.properties +18 -6
  670. package/src/i18n/messagebundle_sv.properties +22 -10
  671. package/src/i18n/messagebundle_th.properties +20 -8
  672. package/src/i18n/messagebundle_tr.properties +18 -6
  673. package/src/i18n/messagebundle_uk.properties +19 -7
  674. package/src/i18n/messagebundle_vi.properties +18 -6
  675. package/src/i18n/messagebundle_zh_CN.properties +18 -6
  676. package/src/i18n/messagebundle_zh_TW.properties +19 -7
  677. package/src/themes/DynamicDateRangePopover.css +15 -5
  678. package/src/themes/StepInput.css +11 -4
  679. package/src/themes/Table.css +0 -14
  680. package/src/themes/TableGrowing.css +7 -14
  681. package/src/themes/TableHeaderRow.css +1 -0
  682. package/src/themes/TableRow.css +12 -8
  683. package/src/themes/base/Table-parameters.css +4 -0
@@ -0,0 +1,136 @@
1
+ import FromDateTimeTemplate from "./FromDateTimeTemplate.js";
2
+ import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
3
+ import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
4
+ import { DATETIME_PICKER_DATE_BUTTON, DATETIME_PICKER_TIME_BUTTON, DYNAMIC_DATE_RANGE_FROM_INPUT_TEXT, DYNAMIC_DATE_RANGE_FROM_TEXT, } from "../generated/i18n/i18n-defaults.js";
5
+ import { dateTimeOptionToDates } from "./toDates.js";
6
+ import DynamicDateRange from "../DynamicDateRange.js";
7
+ /**
8
+ * @class
9
+ * @constructor
10
+ * @public
11
+ * @since 2.11.0
12
+ */
13
+ class FromDateTime {
14
+ constructor() {
15
+ this.resetState = () => {
16
+ this._showTimeView = false;
17
+ };
18
+ this.template = FromDateTimeTemplate;
19
+ this._showTimeView = false;
20
+ this._currentDateValue = UI5Date.getInstance();
21
+ }
22
+ parse(value) {
23
+ const dateText = value.replace(this.fromText, "").trim();
24
+ const date = this.getFormat().parse(dateText);
25
+ const returnValue = { operator: "", values: [] };
26
+ returnValue.operator = this.operator;
27
+ returnValue.values = [date];
28
+ return returnValue;
29
+ }
30
+ format(value) {
31
+ const valuesArray = value?.values;
32
+ if (!valuesArray || valuesArray.length === 0) {
33
+ return "";
34
+ }
35
+ const formattedValue = this.getFormat().format(valuesArray[0]);
36
+ return `${this.fromText} ${formattedValue}`;
37
+ }
38
+ toDates(value) {
39
+ return dateTimeOptionToDates(value);
40
+ }
41
+ get text() {
42
+ return DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_FROM_TEXT);
43
+ }
44
+ get operator() {
45
+ return "FROMDATETIME";
46
+ }
47
+ get icon() {
48
+ return "appointment-2";
49
+ }
50
+ get showDateView() {
51
+ return !this._showTimeView;
52
+ }
53
+ get showTimeView() {
54
+ return this._showTimeView;
55
+ }
56
+ get btnDateLabel() {
57
+ return DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);
58
+ }
59
+ get btnTimeLabel() {
60
+ return DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);
61
+ }
62
+ get fromText() {
63
+ return DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_FROM_INPUT_TEXT);
64
+ }
65
+ getDateValue(date) {
66
+ if (date) {
67
+ return this.getDateFormat().format(date);
68
+ }
69
+ return this._currentDateValue ? this.getDateFormat().format(this._currentDateValue) : "";
70
+ }
71
+ getTimeValue(date) {
72
+ if (date) {
73
+ return this.getFormat().format(date);
74
+ }
75
+ return this._currentDateValue ? this.getFormat().format(this._currentDateValue) : "";
76
+ }
77
+ _dateTimeSwitchChange() {
78
+ this._showTimeView = !this._showTimeView;
79
+ }
80
+ isValidString(value) {
81
+ const dateText = value.replace(this.fromText, "").trim();
82
+ const date = this.getFormat().parse(dateText);
83
+ if (!date || Number.isNaN(date.getTime())) {
84
+ return false;
85
+ }
86
+ return true;
87
+ }
88
+ getFormat() {
89
+ return DateFormat.getDateTimeInstance({
90
+ strictParsing: true,
91
+ });
92
+ }
93
+ getDateFormat() {
94
+ return DateFormat.getDateInstance({
95
+ strictParsing: true,
96
+ });
97
+ }
98
+ getTimeFormat() {
99
+ return DateFormat.getTimeInstance({
100
+ strictParsing: true,
101
+ });
102
+ }
103
+ handleSelectionChange(e, value) {
104
+ const currentValue = value || { operator: "", values: [] };
105
+ const target = e.target;
106
+ currentValue.values = this._currentDateValue ? [this._currentDateValue] : [];
107
+ currentValue.operator = this.operator;
108
+ if (target.hasAttribute("ui5-segmented-button")) {
109
+ this._dateTimeSwitchChange();
110
+ return currentValue;
111
+ }
112
+ if (target.hasAttribute("ui5-calendar")) {
113
+ if (e.detail.selectedDates[0]) {
114
+ const tempDate = UI5Date.getInstance(e.detail.selectedDates[0] * 1000);
115
+ this._currentDateValue.setFullYear(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate());
116
+ currentValue.values = [this._currentDateValue];
117
+ }
118
+ }
119
+ if (target.hasAttribute("ui5-time-selection-clocks")) {
120
+ const tempValue = e.detail.value;
121
+ const tempDate = this.getFormat().parse(tempValue);
122
+ if (!this._currentDateValue && value?.values?.length) {
123
+ this._currentDateValue = value?.values[0];
124
+ }
125
+ if (tempDate) {
126
+ this._currentDateValue.setHours(tempDate.getHours(), tempDate.getMinutes(), tempDate.getSeconds());
127
+ currentValue.values = [this._currentDateValue];
128
+ }
129
+ }
130
+ this._showTimeView = true;
131
+ return currentValue;
132
+ }
133
+ }
134
+ DynamicDateRange.register("FROMDATETIME", FromDateTime);
135
+ export default FromDateTime;
136
+ //# sourceMappingURL=FromDateTime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FromDateTime.js","sourceRoot":"","sources":["../../src/dynamic-date-range-options/FromDateTime.ts"],"names":[],"mappings":"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","sourcesContent":["import FromDateTimeTemplate from \"./FromDateTimeTemplate.js\";\nimport type { DynamicDateRangeValue, IDynamicDateRangeOption } from \"../DynamicDateRange.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type { JsxTemplate } from \"@ui5/webcomponents-base/dist/index.js\";\nimport {\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n\tDYNAMIC_DATE_RANGE_FROM_INPUT_TEXT,\n\tDYNAMIC_DATE_RANGE_FROM_TEXT,\n} from \"../generated/i18n/i18n-defaults.js\";\nimport { dateTimeOptionToDates } from \"./toDates.js\";\nimport DynamicDateRange from \"../DynamicDateRange.js\";\n\n/**\n * @class\n * @constructor\n * @public\n * @since 2.11.0\n */\n\nclass FromDateTime implements IDynamicDateRangeOption {\n\ttemplate: JsxTemplate;\n\tprivate _showTimeView: boolean;\n\tprivate _currentDateValue: Date;\n\n\tconstructor() {\n\t\tthis.template = FromDateTimeTemplate;\n\t\tthis._showTimeView = false;\n\t\tthis._currentDateValue = UI5Date.getInstance();\n\t}\n\n\tparse(value: string): DynamicDateRangeValue {\n\t\tconst dateText = value.replace(this.fromText, \"\").trim();\n\t\tconst date = this.getFormat().parse(dateText) as Date;\n\t\tconst returnValue = { operator: \"\", values: [] } as DynamicDateRangeValue;\n\t\treturnValue.operator = this.operator;\n\t\treturnValue.values = [date];\n\n\t\treturn returnValue;\n\t}\n\n\tformat(value: DynamicDateRangeValue): string {\n\t\tconst valuesArray = value?.values as Array<Date>;\n\n\t\tif (!valuesArray || valuesArray.length === 0) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst formattedValue = this.getFormat().format(valuesArray[0]);\n\n\t\treturn `${this.fromText} ${formattedValue}`;\n\t}\n\n\ttoDates(value: DynamicDateRangeValue): Array<Date> {\n\t\treturn dateTimeOptionToDates(value);\n\t}\n\n\tresetState?: (() => void) | undefined = () => {\n\t\tthis._showTimeView = false;\n\t}\n\n\tget text(): string {\n\t\treturn DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_FROM_TEXT);\n\t}\n\n\tget operator() {\n\t\treturn \"FROMDATETIME\";\n\t}\n\n\tget icon() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget showDateView() {\n\t\treturn !this._showTimeView;\n\t}\n\n\tget showTimeView() {\n\t\treturn this._showTimeView;\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget fromText() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_FROM_INPUT_TEXT);\n\t}\n\n\tgetDateValue(date: Date | undefined) : string {\n\t\tif (date) {\n\t\t\treturn this.getDateFormat().format(date);\n\t\t}\n\n\t\treturn this._currentDateValue ? this.getDateFormat().format(this._currentDateValue) : \"\";\n\t}\n\n\tgetTimeValue(date: Date | undefined) : string {\n\t\tif (date) {\n\t\t\treturn this.getFormat().format(date);\n\t\t}\n\n\t\treturn this._currentDateValue ? this.getFormat().format(this._currentDateValue) : \"\";\n\t}\n\n\t_dateTimeSwitchChange() {\n\t\tthis._showTimeView = !this._showTimeView;\n\t}\n\n\tisValidString(value: string): boolean {\n\t\tconst dateText = value.replace(this.fromText, \"\").trim();\n\t\tconst date = this.getFormat().parse(dateText) as Date;\n\n\t\tif (!date || Number.isNaN(date.getTime())) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tgetFormat(): DateFormat {\n\t\treturn DateFormat.getDateTimeInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\tgetDateFormat(): DateFormat {\n\t\treturn DateFormat.getDateInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\tgetTimeFormat(): DateFormat {\n\t\treturn DateFormat.getTimeInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\thandleSelectionChange(e: CustomEvent, value: DynamicDateRangeValue | undefined): DynamicDateRangeValue | undefined {\n\t\tconst currentValue = value || { operator: \"\", values: [] } as DynamicDateRangeValue;\n\t\tconst target = e.target as HTMLElement;\n\t\tcurrentValue.values = this._currentDateValue ? [this._currentDateValue] : [];\n\t\tcurrentValue.operator = this.operator;\n\n\t\tif (target.hasAttribute(\"ui5-segmented-button\")) {\n\t\t\tthis._dateTimeSwitchChange();\n\t\t\treturn currentValue;\n\t\t}\n\n\t\tif (target.hasAttribute(\"ui5-calendar\")) {\n\t\t\tif (e.detail.selectedDates[0]) {\n\t\t\t\tconst tempDate = UI5Date.getInstance(e.detail.selectedDates[0] * 1000);\n\t\t\t\tthis._currentDateValue.setFullYear(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate());\n\t\t\t\tcurrentValue.values = [this._currentDateValue];\n\t\t\t}\n\t\t}\n\n\t\tif (target.hasAttribute(\"ui5-time-selection-clocks\")) {\n\t\t\tconst tempValue = e.detail.value as string;\n\t\t\tconst tempDate = this.getFormat().parse(tempValue) as Date;\n\t\t\tif (!this._currentDateValue && value?.values?.length) {\n\t\t\t\tthis._currentDateValue = value?.values[0] as Date;\n\t\t\t}\n\n\t\t\tif (tempDate) {\n\t\t\t\tthis._currentDateValue.setHours(tempDate.getHours(), tempDate.getMinutes(), tempDate.getSeconds());\n\t\t\t\tcurrentValue.values = [this._currentDateValue];\n\t\t\t}\n\t\t}\n\n\t\tthis._showTimeView = true;\n\n\t\treturn currentValue;\n\t}\n}\n\nDynamicDateRange.register(\"FROMDATETIME\", FromDateTime);\n\nexport default FromDateTime;\n"]}
@@ -0,0 +1,2 @@
1
+ import type DynamicDateRange from "../DynamicDateRange.js";
2
+ export default function FromDateTime(this: DynamicDateRange): import("@ui5/webcomponents-base/jsx-runtime").JSX.Element;
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import Calendar from "../Calendar.js";
3
+ import CalendarDate from "../CalendarDate.js";
4
+ import SegmentedButton from "../SegmentedButton.js";
5
+ import SegmentedButtonItem from "../SegmentedButtonItem.js";
6
+ import TimeSelectionClocks from "../TimeSelectionClocks.js";
7
+ export default function FromDateTime() {
8
+ const currentOption = this._currentOption;
9
+ const currentValue = this.value?.values ? this.value.values[0] : undefined;
10
+ return (_jsxs("div", { class: "ui5-dynamic-date-range-option-datetime-container", children: [_jsx("div", { class: "ui5-dt-picker-header", children: _jsxs(SegmentedButton, { class: "ui5-dt-picker-toggle-button", onSelectionChange: this.handleSelectionChange, children: [_jsx(SegmentedButtonItem, { "data-ui5-key": "Date", selected: currentOption.showDateView, children: currentOption.btnDateLabel }), _jsx(SegmentedButtonItem, { "data-ui5-key": "Time", selected: currentOption.showTimeView, children: currentOption.btnTimeLabel })] }) }), _jsxs("div", { class: {
11
+ "ui5-dt-picker-content": true,
12
+ }, children: [!!currentOption.showDateView &&
13
+ _jsx(Calendar, { class: {
14
+ "ui5-dt-cal": true,
15
+ "ui5-dt-cal--hidden": currentOption.showTimeView,
16
+ "ui5-dt-time--hidden": currentOption.showDateView,
17
+ }, onSelectionChange: this.handleSelectionChange, children: _jsx(CalendarDate, { value: currentOption.getDateValue(currentValue) }) }), !!currentOption.showTimeView &&
18
+ _jsx(TimeSelectionClocks, { class: {
19
+ "ui5-dt-time": true,
20
+ "ui5-dt-cal--hidden": currentOption.showTimeView,
21
+ "ui5-dt-time--hidden": currentOption.showDateView,
22
+ }, value: currentOption.getTimeValue(currentValue), onChange: this.handleSelectionChange })] })] }));
23
+ }
24
+ //# sourceMappingURL=FromDateTimeTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FromDateTimeTemplate.js","sourceRoot":"","sources":["../../src/dynamic-date-range-options/FromDateTimeTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,eAAe,MAAM,uBAAuB,CAAC;AACpD,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAC5D,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAG5D,MAAM,CAAC,OAAO,UAAU,YAAY;IACnC,MAAM,aAAa,GAAG,IAAI,CAAC,cAAoC,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,OAAO,CACN,eAAK,KAAK,EAAC,kDAAkD,aAC5D,cAAK,KAAK,EAAC,sBAAsB,YAChC,MAAC,eAAe,IAAC,KAAK,EAAC,6BAA6B,EAAC,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,aACjG,KAAC,mBAAmB,oBAAc,MAAM,EAAC,QAAQ,EAAE,aAAa,CAAC,YAAY,YAAG,aAAa,CAAC,YAAY,GAAuB,EACjI,KAAC,mBAAmB,oBAAc,MAAM,EAAC,QAAQ,EAAE,aAAa,CAAC,YAAY,YAAG,aAAa,CAAC,YAAY,GAAuB,IAChH,GACb,EAEN,eAAK,KAAK,EAAE;oBACX,uBAAuB,EAAE,IAAI;iBAC7B,aACC,CAAC,CAAC,aAAa,CAAC,YAAY;wBAC5B,KAAC,QAAQ,IACR,KAAK,EAAE;gCACN,YAAY,EAAE,IAAI;gCAClB,oBAAoB,EAAE,aAAa,CAAC,YAAY;gCAChD,qBAAqB,EAAE,aAAa,CAAC,YAAY;6BACjD,EACD,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,YAE7C,KAAC,YAAY,IACZ,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC,GAChC,GACN,EAGX,CAAC,CAAC,aAAa,CAAC,YAAY;wBAC5B,KAAC,mBAAmB,IACnB,KAAK,EAAE;gCACN,aAAa,EAAE,IAAI;gCACnB,oBAAoB,EAAE,aAAa,CAAC,YAAY;gCAChD,qBAAqB,EAAE,aAAa,CAAC,YAAY;6BACjD,EACD,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC,EAC/C,QAAQ,EAAE,IAAI,CAAC,qBAAqB,GACnC,IAEE,IACD,CACN,CAAC;AACH,CAAC","sourcesContent":["import type DynamicDateRange from \"../DynamicDateRange.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\";\nimport type FromDateTimeOption from \"./FromDateTime.js\";\n\nexport default function FromDateTime(this: DynamicDateRange) {\n\tconst currentOption = this._currentOption as FromDateTimeOption;\n\tconst currentValue = this.value?.values ? this.value.values[0] as Date : undefined;\n\treturn (\n\t\t<div class=\"ui5-dynamic-date-range-option-datetime-container\">\n\t\t\t<div class=\"ui5-dt-picker-header\">\n\t\t\t\t<SegmentedButton class=\"ui5-dt-picker-toggle-button\" onSelectionChange={this.handleSelectionChange}>\n\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Date\" selected={currentOption.showDateView}>{currentOption.btnDateLabel}</SegmentedButtonItem>\n\t\t\t\t\t<SegmentedButtonItem data-ui5-key=\"Time\" selected={currentOption.showTimeView}>{currentOption.btnTimeLabel}</SegmentedButtonItem>\n\t\t\t\t</SegmentedButton>\n\t\t\t</div>\n\n\t\t\t<div class={{\n\t\t\t\t\"ui5-dt-picker-content\": true,\n\t\t\t}}>\n\t\t\t\t{!!currentOption.showDateView &&\n\t\t\t\t\t<Calendar\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\"ui5-dt-cal\": true,\n\t\t\t\t\t\t\t\"ui5-dt-cal--hidden\": currentOption.showTimeView,\n\t\t\t\t\t\t\t\"ui5-dt-time--hidden\": currentOption.showDateView,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonSelectionChange={this.handleSelectionChange}\n\t\t\t\t\t>\n\t\t\t\t\t\t<CalendarDate\n\t\t\t\t\t\t\tvalue={currentOption.getDateValue(currentValue)}\n\t\t\t\t\t\t></CalendarDate>\n\t\t\t\t\t</Calendar>\n\t\t\t\t}\n\n\t\t\t\t{!!currentOption.showTimeView &&\n\t\t\t\t\t<TimeSelectionClocks\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\": currentOption.showTimeView,\n\t\t\t\t\t\t\t\"ui5-dt-time--hidden\": currentOption.showDateView,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tvalue={currentOption.getTimeValue(currentValue)}\n\t\t\t\t\t\tonChange={this.handleSelectionChange}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
@@ -0,0 +1,36 @@
1
+ import type { DynamicDateRangeValue, IDynamicDateRangeOption } from "../DynamicDateRange.js";
2
+ import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
3
+ import type { JsxTemplate } from "@ui5/webcomponents-base/dist/index.js";
4
+ /**
5
+ * @class
6
+ * @constructor
7
+ * @public
8
+ * @since 2.11.0
9
+ */
10
+ declare class ToDateTime implements IDynamicDateRangeOption {
11
+ template: JsxTemplate;
12
+ private _showTimeView;
13
+ private _currentDateValue;
14
+ constructor();
15
+ parse(value: string): DynamicDateRangeValue;
16
+ format(value: DynamicDateRangeValue): string;
17
+ toDates(value: DynamicDateRangeValue): Array<Date>;
18
+ resetState?: (() => void) | undefined;
19
+ get text(): string;
20
+ get operator(): string;
21
+ get icon(): string;
22
+ get showDateView(): boolean;
23
+ get showTimeView(): boolean;
24
+ get btnDateLabel(): string;
25
+ get btnTimeLabel(): string;
26
+ get toText(): string;
27
+ getDateValue(date: Date | undefined): string;
28
+ getTimeValue(date: Date | undefined): string;
29
+ _dateTimeSwitchChange(): void;
30
+ isValidString(value: string): boolean;
31
+ getFormat(): DateFormat;
32
+ getDateFormat(): DateFormat;
33
+ getTimeFormat(): DateFormat;
34
+ handleSelectionChange(e: CustomEvent, value: DynamicDateRangeValue | undefined): DynamicDateRangeValue | undefined;
35
+ }
36
+ export default ToDateTime;
@@ -0,0 +1,136 @@
1
+ import FromDateTimeTemplate from "./FromDateTimeTemplate.js";
2
+ import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
3
+ import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
4
+ import { DATETIME_PICKER_DATE_BUTTON, DATETIME_PICKER_TIME_BUTTON, DYNAMIC_DATE_RANGE_TO_INPUT_TEXT, DYNAMIC_DATE_RANGE_TO_TEXT, } from "../generated/i18n/i18n-defaults.js";
5
+ import { dateTimeOptionToDates } from "./toDates.js";
6
+ import DynamicDateRange from "../DynamicDateRange.js";
7
+ /**
8
+ * @class
9
+ * @constructor
10
+ * @public
11
+ * @since 2.11.0
12
+ */
13
+ class ToDateTime {
14
+ constructor() {
15
+ this.resetState = () => {
16
+ this._showTimeView = false;
17
+ };
18
+ this.template = FromDateTimeTemplate;
19
+ this._showTimeView = false;
20
+ this._currentDateValue = UI5Date.getInstance();
21
+ }
22
+ parse(value) {
23
+ const dateText = value.replace(this.toText, "").trim();
24
+ const date = this.getFormat().parse(dateText);
25
+ const returnValue = { operator: "", values: [] };
26
+ returnValue.operator = this.operator;
27
+ returnValue.values = [date];
28
+ return returnValue;
29
+ }
30
+ format(value) {
31
+ const valuesArray = value?.values;
32
+ if (!valuesArray || valuesArray.length === 0) {
33
+ return "";
34
+ }
35
+ const formattedValue = this.getFormat().format(valuesArray[0]);
36
+ return `${this.toText} ${formattedValue}`;
37
+ }
38
+ toDates(value) {
39
+ return dateTimeOptionToDates(value);
40
+ }
41
+ get text() {
42
+ return DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_TO_TEXT);
43
+ }
44
+ get operator() {
45
+ return "TODATETIME";
46
+ }
47
+ get icon() {
48
+ return "appointment-2";
49
+ }
50
+ get showDateView() {
51
+ return !this._showTimeView;
52
+ }
53
+ get showTimeView() {
54
+ return this._showTimeView;
55
+ }
56
+ get btnDateLabel() {
57
+ return DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);
58
+ }
59
+ get btnTimeLabel() {
60
+ return DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);
61
+ }
62
+ get toText() {
63
+ return DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_TO_INPUT_TEXT);
64
+ }
65
+ getDateValue(date) {
66
+ if (date) {
67
+ return this.getDateFormat().format(date);
68
+ }
69
+ return this._currentDateValue ? this.getDateFormat().format(this._currentDateValue) : "";
70
+ }
71
+ getTimeValue(date) {
72
+ if (date) {
73
+ return this.getFormat().format(date);
74
+ }
75
+ return this._currentDateValue ? this.getFormat().format(this._currentDateValue) : "";
76
+ }
77
+ _dateTimeSwitchChange() {
78
+ this._showTimeView = !this._showTimeView;
79
+ }
80
+ isValidString(value) {
81
+ const dateText = value.replace(this.toText, "").trim();
82
+ const date = this.getFormat().parse(dateText);
83
+ if (!date || Number.isNaN(date.getTime())) {
84
+ return false;
85
+ }
86
+ return true;
87
+ }
88
+ getFormat() {
89
+ return DateFormat.getDateTimeInstance({
90
+ strictParsing: true,
91
+ });
92
+ }
93
+ getDateFormat() {
94
+ return DateFormat.getDateInstance({
95
+ strictParsing: true,
96
+ });
97
+ }
98
+ getTimeFormat() {
99
+ return DateFormat.getTimeInstance({
100
+ strictParsing: true,
101
+ });
102
+ }
103
+ handleSelectionChange(e, value) {
104
+ const currentValue = value || { operator: "", values: [] };
105
+ const target = e.target;
106
+ currentValue.values = this._currentDateValue ? [this._currentDateValue] : [];
107
+ currentValue.operator = this.operator;
108
+ if (target.hasAttribute("ui5-segmented-button")) {
109
+ this._dateTimeSwitchChange();
110
+ return currentValue;
111
+ }
112
+ if (target.hasAttribute("ui5-calendar")) {
113
+ if (e.detail.selectedDates[0]) {
114
+ const tempDate = UI5Date.getInstance(e.detail.selectedDates[0] * 1000);
115
+ this._currentDateValue.setFullYear(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate());
116
+ currentValue.values = [this._currentDateValue];
117
+ }
118
+ }
119
+ if (target.hasAttribute("ui5-time-selection-clocks")) {
120
+ const tempValue = e.detail.value;
121
+ const tempDate = this.getFormat().parse(tempValue);
122
+ if (!this._currentDateValue && value?.values?.length) {
123
+ this._currentDateValue = value?.values[0];
124
+ }
125
+ if (tempDate) {
126
+ this._currentDateValue.setHours(tempDate.getHours(), tempDate.getMinutes(), tempDate.getSeconds());
127
+ currentValue.values = [this._currentDateValue];
128
+ }
129
+ }
130
+ this._showTimeView = true;
131
+ return currentValue;
132
+ }
133
+ }
134
+ DynamicDateRange.register("TODATETIME", ToDateTime);
135
+ export default ToDateTime;
136
+ //# sourceMappingURL=ToDateTime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToDateTime.js","sourceRoot":"","sources":["../../src/dynamic-date-range-options/ToDateTime.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,OAAO,UAAU,MAAM,oDAAoD,CAAC;AAC5E,OAAO,OAAO,MAAM,uDAAuD,CAAC;AAE5E,OAAO,EACN,2BAA2B,EAC3B,2BAA2B,EAC3B,gCAAgC,EAChC,0BAA0B,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AAEtD;;;;;GAKG;AAEH,MAAM,UAAU;IAKf;QAiCA,eAAU,GAA8B,GAAG,EAAE;YAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAA;QAlCA,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,KAAa;QAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAS,CAAC;QACtD,MAAM,WAAW,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAA2B,CAAC;QAE1E,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACrC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;QAE5B,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAA4B;QAClC,MAAM,WAAW,GAAG,KAAK,EAAE,MAAqB,CAAC;QAEjD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,CAAC;QACX,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,KAA4B;QACnC,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAMD,IAAI,IAAI;QACP,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,eAAe,CAAC;IACxB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED,IAAI,YAAY;QACf,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,YAAY;QACf,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,MAAM;QACT,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,CAAC,IAAsB;QAClC,IAAI,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,CAAC;IAED,YAAY,CAAC,IAAsB;QAClC,IAAI,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,qBAAqB;QACpB,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;IAC1C,CAAC;IAED,aAAa,CAAC,KAAa;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAS,CAAC;QAEtD,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,SAAS;QACR,OAAO,UAAU,CAAC,mBAAmB,CAAC;YACrC,aAAa,EAAE,IAAI;SACnB,CAAC,CAAC;IACJ,CAAC;IAED,aAAa;QACZ,OAAO,UAAU,CAAC,eAAe,CAAC;YACjC,aAAa,EAAE,IAAI;SACnB,CAAC,CAAC;IACJ,CAAC;IAED,aAAa;QACZ,OAAO,UAAU,CAAC,eAAe,CAAC;YACjC,aAAa,EAAE,IAAI;SACnB,CAAC,CAAC;IACJ,CAAC;IAED,qBAAqB,CAAC,CAAc,EAAE,KAAwC;QAC7E,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAA2B,CAAC;QACpF,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEtC,IAAI,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC7B,OAAO,YAAY,CAAC;QACrB,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACvE,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpG,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,CAAC,2BAA2B,CAAC,EAAE,CAAC;YACtD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,KAAe,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,SAAS,CAAS,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACtD,IAAI,CAAC,iBAAiB,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAS,CAAC;YACnD,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;gBACnG,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,OAAO,YAAY,CAAC;IACrB,CAAC;CACD;AAED,gBAAgB,CAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAEpD,eAAe,UAAU,CAAC","sourcesContent":["import FromDateTimeTemplate from \"./FromDateTimeTemplate.js\";\nimport type { DynamicDateRangeValue, IDynamicDateRangeOption } from \"../DynamicDateRange.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type { JsxTemplate } from \"@ui5/webcomponents-base/dist/index.js\";\nimport {\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n\tDYNAMIC_DATE_RANGE_TO_INPUT_TEXT,\n\tDYNAMIC_DATE_RANGE_TO_TEXT,\n} from \"../generated/i18n/i18n-defaults.js\";\nimport { dateTimeOptionToDates } from \"./toDates.js\";\nimport DynamicDateRange from \"../DynamicDateRange.js\";\n\n/**\n * @class\n * @constructor\n * @public\n * @since 2.11.0\n */\n\nclass ToDateTime implements IDynamicDateRangeOption {\n\ttemplate: JsxTemplate;\n\tprivate _showTimeView: boolean;\n\tprivate _currentDateValue: Date;\n\n\tconstructor() {\n\t\tthis.template = FromDateTimeTemplate;\n\t\tthis._showTimeView = false;\n\t\tthis._currentDateValue = UI5Date.getInstance();\n\t}\n\n\tparse(value: string): DynamicDateRangeValue {\n\t\tconst dateText = value.replace(this.toText, \"\").trim();\n\t\tconst date = this.getFormat().parse(dateText) as Date;\n\t\tconst returnValue = { operator: \"\", values: [] } as DynamicDateRangeValue;\n\n\t\treturnValue.operator = this.operator;\n\t\treturnValue.values = [date];\n\n\t\treturn returnValue;\n\t}\n\n\tformat(value: DynamicDateRangeValue): string {\n\t\tconst valuesArray = value?.values as Array<Date>;\n\n\t\tif (!valuesArray || valuesArray.length === 0) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst formattedValue = this.getFormat().format(valuesArray[0]);\n\n\t\treturn `${this.toText} ${formattedValue}`;\n\t}\n\n\ttoDates(value: DynamicDateRangeValue): Array<Date> {\n\t\treturn dateTimeOptionToDates(value);\n\t}\n\n\tresetState?: (() => void) | undefined = () => {\n\t\tthis._showTimeView = false;\n\t}\n\n\tget text(): string {\n\t\treturn DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_TO_TEXT);\n\t}\n\n\tget operator() {\n\t\treturn \"TODATETIME\";\n\t}\n\n\tget icon() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget showDateView() {\n\t\treturn !this._showTimeView;\n\t}\n\n\tget showTimeView() {\n\t\treturn this._showTimeView;\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget toText() {\n\t\treturn DynamicDateRange.i18nBundle.getText(DYNAMIC_DATE_RANGE_TO_INPUT_TEXT);\n\t}\n\n\tgetDateValue(date: Date | undefined) : string {\n\t\tif (date) {\n\t\t\treturn this.getDateFormat().format(date);\n\t\t}\n\n\t\treturn this._currentDateValue ? this.getDateFormat().format(this._currentDateValue) : \"\";\n\t}\n\n\tgetTimeValue(date: Date | undefined) : string\t {\n\t\tif (date) {\n\t\t\treturn this.getFormat().format(date);\n\t\t}\n\n\t\treturn this._currentDateValue ? this.getFormat().format(this._currentDateValue) : \"\";\n\t}\n\n\t_dateTimeSwitchChange() {\n\t\tthis._showTimeView = !this._showTimeView;\n\t}\n\n\tisValidString(value: string): boolean {\n\t\tconst dateText = value.replace(this.toText, \"\").trim();\n\t\tconst date = this.getFormat().parse(dateText) as Date;\n\n\t\tif (!date || Number.isNaN(date.getTime())) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tgetFormat(): DateFormat {\n\t\treturn DateFormat.getDateTimeInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\tgetDateFormat(): DateFormat {\n\t\treturn DateFormat.getDateInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\tgetTimeFormat(): DateFormat {\n\t\treturn DateFormat.getTimeInstance({\n\t\t\tstrictParsing: true,\n\t\t});\n\t}\n\n\thandleSelectionChange(e: CustomEvent, value: DynamicDateRangeValue | undefined): DynamicDateRangeValue | undefined {\n\t\tconst currentValue = value || { operator: \"\", values: [] } as DynamicDateRangeValue;\n\t\tconst target = e.target as HTMLElement;\n\t\tcurrentValue.values = this._currentDateValue ? [this._currentDateValue] : [];\n\t\tcurrentValue.operator = this.operator;\n\n\t\tif (target.hasAttribute(\"ui5-segmented-button\")) {\n\t\t\tthis._dateTimeSwitchChange();\n\t\t\treturn currentValue;\n\t\t}\n\n\t\tif (target.hasAttribute(\"ui5-calendar\")) {\n\t\t\tif (e.detail.selectedDates[0]) {\n\t\t\t\tconst tempDate = UI5Date.getInstance(e.detail.selectedDates[0] * 1000);\n\t\t\t\tthis._currentDateValue.setFullYear(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate());\n\t\t\t\tcurrentValue.values = [this._currentDateValue];\n\t\t\t}\n\t\t}\n\n\t\tif (target.hasAttribute(\"ui5-time-selection-clocks\")) {\n\t\t\tconst tempValue = e.detail.value as string;\n\t\t\tconst tempDate = this.getFormat().parse(tempValue) as Date;\n\t\t\tif (!this._currentDateValue && value?.values?.length) {\n\t\t\t\tthis._currentDateValue = value?.values[0] as Date;\n\t\t\t}\n\n\t\t\tif (tempDate) {\n\t\t\t\tthis._currentDateValue.setHours(tempDate.getHours(), tempDate.getMinutes(), tempDate.getSeconds());\n\t\t\t\tcurrentValue.values = [this._currentDateValue];\n\t\t\t}\n\t\t}\n\n\t\tthis._showTimeView = true;\n\n\t\treturn currentValue;\n\t}\n}\n\nDynamicDateRange.register(\"TODATETIME\", ToDateTime);\n\nexport default ToDateTime;\n"]}
@@ -1,6 +1,7 @@
1
1
  import type { DynamicDateRangeValue, IDynamicDateRangeOption } from "../DynamicDateRange.js";
2
2
  declare const dateOptionToDates: (value: DynamicDateRangeValue) => Array<Date>;
3
3
  declare const dateRangeOptionToDates: (value: DynamicDateRangeValue) => Array<Date>;
4
+ declare const dateTimeRangeOptionToDates: (value: DynamicDateRangeValue) => Array<Date>;
4
5
  declare const todayToDates: () => Array<Date>;
5
6
  declare const yesterdayToDates: () => Array<Date>;
6
7
  declare const tomorrowToDates: () => Array<Date>;
@@ -10,4 +11,5 @@ declare const lastNextToDates: (value: DynamicDateRangeValue, unit: string, dire
10
11
  * Uses operator name to determine time unit and direction.
11
12
  */
12
13
  declare const toDatesLastNext: (value: DynamicDateRangeValue, option: IDynamicDateRangeOption) => Array<Date>;
13
- export { dateOptionToDates, dateRangeOptionToDates, todayToDates, tomorrowToDates, yesterdayToDates, lastNextToDates, toDatesLastNext, };
14
+ declare const dateTimeOptionToDates: (value: DynamicDateRangeValue) => Array<Date>;
15
+ export { dateOptionToDates, dateRangeOptionToDates, dateTimeRangeOptionToDates, todayToDates, tomorrowToDates, yesterdayToDates, lastNextToDates, toDatesLastNext, dateTimeOptionToDates, };
@@ -1,5 +1,8 @@
1
1
  import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
2
2
  const dateOptionToDates = (value) => {
3
+ if (!value || !value.values || value.values.length !== 1) {
4
+ return [];
5
+ }
3
6
  const startDate = value.values ? value.values[0] : UI5Date.getInstance();
4
7
  const endDate = UI5Date.getInstance(startDate.getTime());
5
8
  startDate?.setHours(0, 0, 0, 0);
@@ -7,12 +10,23 @@ const dateOptionToDates = (value) => {
7
10
  return [startDate, endDate];
8
11
  };
9
12
  const dateRangeOptionToDates = (value) => {
13
+ if (!value || !value.values || value.values.length !== 2) {
14
+ return [];
15
+ }
10
16
  const startDate = value.values ? value.values[0] : UI5Date.getInstance();
11
17
  const endDate = value.values ? value.values[1] : UI5Date.getInstance();
12
18
  startDate?.setHours(0, 0, 0, 0);
13
19
  endDate?.setHours(23, 59, 59, 999);
14
20
  return [startDate, endDate];
15
21
  };
22
+ const dateTimeRangeOptionToDates = (value) => {
23
+ if (!value || !value.values || value.values.length !== 2) {
24
+ return [];
25
+ }
26
+ const startDate = value.values ? value.values[0] : UI5Date.getInstance();
27
+ const endDate = value.values ? value.values[1] : UI5Date.getInstance();
28
+ return [startDate, endDate];
29
+ };
16
30
  const todayToDates = () => {
17
31
  const startDate = UI5Date.getInstance();
18
32
  const endDate = UI5Date.getInstance();
@@ -154,5 +168,15 @@ const toDatesLastNext = (value, option) => {
154
168
  }
155
169
  return lastNextToDates(value, unit, direction);
156
170
  };
157
- export { dateOptionToDates, dateRangeOptionToDates, todayToDates, tomorrowToDates, yesterdayToDates, lastNextToDates, toDatesLastNext, };
171
+ const dateTimeOptionToDates = (value) => {
172
+ if (!value || !value.values || value.values.length === 0) {
173
+ return [];
174
+ }
175
+ const startDate = value.values ? value.values[0] : UI5Date.getInstance();
176
+ const endDate = UI5Date.getInstance(startDate.getTime());
177
+ startDate.setMilliseconds(0);
178
+ endDate.setMilliseconds(999);
179
+ return [startDate, endDate];
180
+ };
181
+ export { dateOptionToDates, dateRangeOptionToDates, dateTimeRangeOptionToDates, todayToDates, tomorrowToDates, yesterdayToDates, lastNextToDates, toDatesLastNext, dateTimeOptionToDates, };
158
182
  //# sourceMappingURL=toDates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toDates.js","sourceRoot":"","sources":["../../src/dynamic-date-range-options/toDates.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DynamicDateRangeValue, IDynamicDateRangeOption } from \"../DynamicDateRange.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\n\nconst dateOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance(startDate.getTime());\n\n\tstartDate?.setHours(0, 0, 0, 0);\n\tendDate?.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst dateRangeOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = value.values ? value.values[1] as Date : UI5Date.getInstance();\n\n\tstartDate?.setHours(0, 0, 0, 0);\n\tendDate?.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst todayToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tendDate.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst yesterdayToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tstartDate.setDate(startDate.getDate() - 1);\n\n\tendDate.setHours(23, 59, 59, 999);\n\tendDate.setDate(endDate.getDate() - 1);\n\n\treturn [startDate, endDate];\n};\n\nconst tomorrowToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tstartDate.setDate(startDate.getDate() + 1);\n\n\tendDate.setHours(23, 59, 59, 999);\n\tendDate.setDate(endDate.getDate() + 1);\n\n\treturn [startDate, endDate];\n};\n\nconst lastToDates = (value: DynamicDateRangeValue, unit: string): Array<Date> => {\n\tconst today = UI5Date.getInstance();\n\tconst startDate = UI5Date.getInstance(today.getTime());\n\tconst endDate = UI5Date.getInstance(today.getTime());\n\tconst amount = value.values?.[0] as number || 1;\n\n\tswitch (unit) {\n\tcase \"days\":\n\t\t// For \"Last X Days\": start X days before today (inclusive), end today\n\t\t// \"Last 1 Day\" = today only, \"Last 2 Days\" = yesterday + today, etc.\n\t\tstartDate.setDate(today.getDate() - (amount - 1));\n\t\tbreak;\n\tcase \"weeks\": {\n\t\tconst currentDayOfWeek = today.getDay();\n\t\tconst daysToStartOfWeek = currentDayOfWeek === 0 ? 6 : currentDayOfWeek - 1;\n\t\tstartDate.setDate(today.getDate() - daysToStartOfWeek - ((amount - 1) * 7));\n\t\tbreak;\n\t}\n\tcase \"months\":\n\t\tstartDate.setMonth(today.getMonth() - (amount - 1));\n\t\tstartDate.setDate(1); // Start of the month\n\t\tbreak;\n\tcase \"quarters\": {\n\t\tconst currentQuarter = Math.floor(today.getMonth() / 3);\n\t\tconst quarterStartMonth = currentQuarter * 3 - ((amount - 1) * 3);\n\t\tstartDate.setMonth(quarterStartMonth);\n\t\tstartDate.setDate(1); // Start of the quarter\n\t\tbreak;\n\t}\n\tcase \"years\":\n\t\tstartDate.setFullYear(today.getFullYear() - (amount - 1));\n\t\tstartDate.setMonth(0); // January\n\t\tstartDate.setDate(1); // Start of the year\n\t\tbreak;\n\t}\n\n\treturn [startDate, endDate];\n};\n\nconst nextToDates = (value: DynamicDateRangeValue, unit: string): Array<Date> => {\n\tconst today = UI5Date.getInstance();\n\tconst startDate = UI5Date.getInstance(today.getTime());\n\tconst endDate = UI5Date.getInstance(today.getTime());\n\tconst amount = value.values?.[0] as number || 1;\n\n\tswitch (unit) {\n\tcase \"days\":\n\t\t// For \"Next X Days\": start today, end X days from today (inclusive)\n\t\t// \"Next 1 Day\" = today only, \"Next 2 Days\" = today + tomorrow, etc.\n\t\tendDate.setDate(today.getDate() + (amount - 1));\n\t\tbreak;\n\tcase \"weeks\": {\n\t\tconst currentDayOfWeek = today.getDay();\n\t\tconst daysToEndOfWeek = currentDayOfWeek === 0 ? 0 : 7 - currentDayOfWeek;\n\t\tendDate.setDate(today.getDate() + daysToEndOfWeek + ((amount - 1) * 7));\n\t\tbreak;\n\t}\n\tcase \"months\":\n\t\tendDate.setMonth(today.getMonth() + amount);\n\t\tendDate.setDate(0); // Last day of the previous month (the target month)\n\t\tbreak;\n\tcase \"quarters\": {\n\t\tconst currentQuarter = Math.floor(today.getMonth() / 3);\n\t\tconst quarterEndMonth = (currentQuarter + 1) * 3 - 1 + ((amount - 1) * 3);\n\t\tendDate.setMonth(quarterEndMonth + 1);\n\t\tendDate.setDate(0); // Last day of the quarter\n\t\tbreak;\n\t}\n\tcase \"years\":\n\t\tendDate.setFullYear(today.getFullYear() + amount);\n\t\tendDate.setMonth(0); // January of the next year\n\t\tendDate.setDate(0); // Last day of December of the target year\n\t\tbreak;\n\t}\n\n\treturn [startDate, endDate];\n};\n\nconst lastNextToDates = (value: DynamicDateRangeValue, unit: string, direction: \"last\" | \"next\"): Array<Date> => {\n\treturn direction === \"last\" ? lastToDates(value, unit) : nextToDates(value, unit);\n};\n\n/**\n * Converts DynamicDateRangeValue to dates for Last/Next options.\n * Uses operator name to determine time unit and direction.\n */\nconst toDatesLastNext = (value: DynamicDateRangeValue, option: IDynamicDateRangeOption): Array<Date> => {\n\tconst operator = option.operator;\n\n\t// Extract direction from operator name\n\tlet direction: \"last\" | \"next\";\n\tif (operator.startsWith(\"LAST\")) {\n\t\tdirection = \"last\";\n\t} else if (operator.startsWith(\"NEXT\")) {\n\t\tdirection = \"next\";\n\t} else {\n\t\t// Not a LastNext option, return today's date range\n\t\treturn todayToDates();\n\t}\n\n\t// Extract time unit from operator name\n\tlet unit: string;\n\tif (operator.includes(\"DAYS\")) {\n\t\tunit = \"days\";\n\t} else if (operator.includes(\"WEEKS\")) {\n\t\tunit = \"weeks\";\n\t} else if (operator.includes(\"MONTHS\")) {\n\t\tunit = \"months\";\n\t} else if (operator.includes(\"QUARTERS\")) {\n\t\tunit = \"quarters\";\n\t} else if (operator.includes(\"YEARS\")) {\n\t\tunit = \"years\";\n\t} else {\n\t\t// Unknown time unit, return today's date range as fallback\n\t\treturn todayToDates();\n\t}\n\n\treturn lastNextToDates(value, unit, direction);\n};\n\nexport {\n\tdateOptionToDates,\n\tdateRangeOptionToDates,\n\ttodayToDates,\n\ttomorrowToDates,\n\tyesterdayToDates,\n\tlastNextToDates,\n\ttoDatesLastNext,\n};\n"]}
1
+ {"version":3,"file":"toDates.js","sourceRoot":"","sources":["../../src/dynamic-date-range-options/toDates.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DynamicDateRangeValue, IDynamicDateRangeOption } from \"../DynamicDateRange.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\n\nconst dateOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tif (!value || !value.values || value.values.length !== 1) {\n\t\treturn [];\n\t}\n\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance(startDate.getTime());\n\n\tstartDate?.setHours(0, 0, 0, 0);\n\tendDate?.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst dateRangeOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tif (!value || !value.values || value.values.length !== 2) {\n\t\treturn [];\n\t}\n\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = value.values ? value.values[1] as Date : UI5Date.getInstance();\n\n\tstartDate?.setHours(0, 0, 0, 0);\n\tendDate?.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst dateTimeRangeOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tif (!value || !value.values || value.values.length !== 2) {\n\t\treturn [];\n\t}\n\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = value.values ? value.values[1] as Date : UI5Date.getInstance();\n\n\treturn [startDate, endDate];\n};\n\nconst todayToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tendDate.setHours(23, 59, 59, 999);\n\n\treturn [startDate, endDate];\n};\n\nconst yesterdayToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tstartDate.setDate(startDate.getDate() - 1);\n\n\tendDate.setHours(23, 59, 59, 999);\n\tendDate.setDate(endDate.getDate() - 1);\n\n\treturn [startDate, endDate];\n};\n\nconst tomorrowToDates = (): Array<Date> => {\n\tconst startDate = UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance();\n\n\tstartDate.setHours(0, 0, 0, 0);\n\tstartDate.setDate(startDate.getDate() + 1);\n\n\tendDate.setHours(23, 59, 59, 999);\n\tendDate.setDate(endDate.getDate() + 1);\n\n\treturn [startDate, endDate];\n};\n\nconst lastToDates = (value: DynamicDateRangeValue, unit: string): Array<Date> => {\n\tconst today = UI5Date.getInstance();\n\tconst startDate = UI5Date.getInstance(today.getTime());\n\tconst endDate = UI5Date.getInstance(today.getTime());\n\tconst amount = value.values?.[0] as number || 1;\n\n\tswitch (unit) {\n\tcase \"days\":\n\t\t// For \"Last X Days\": start X days before today (inclusive), end today\n\t\t// \"Last 1 Day\" = today only, \"Last 2 Days\" = yesterday + today, etc.\n\t\tstartDate.setDate(today.getDate() - (amount - 1));\n\t\tbreak;\n\tcase \"weeks\": {\n\t\tconst currentDayOfWeek = today.getDay();\n\t\tconst daysToStartOfWeek = currentDayOfWeek === 0 ? 6 : currentDayOfWeek - 1;\n\t\tstartDate.setDate(today.getDate() - daysToStartOfWeek - ((amount - 1) * 7));\n\t\tbreak;\n\t}\n\tcase \"months\":\n\t\tstartDate.setMonth(today.getMonth() - (amount - 1));\n\t\tstartDate.setDate(1); // Start of the month\n\t\tbreak;\n\tcase \"quarters\": {\n\t\tconst currentQuarter = Math.floor(today.getMonth() / 3);\n\t\tconst quarterStartMonth = currentQuarter * 3 - ((amount - 1) * 3);\n\t\tstartDate.setMonth(quarterStartMonth);\n\t\tstartDate.setDate(1); // Start of the quarter\n\t\tbreak;\n\t}\n\tcase \"years\":\n\t\tstartDate.setFullYear(today.getFullYear() - (amount - 1));\n\t\tstartDate.setMonth(0); // January\n\t\tstartDate.setDate(1); // Start of the year\n\t\tbreak;\n\t}\n\n\treturn [startDate, endDate];\n};\n\nconst nextToDates = (value: DynamicDateRangeValue, unit: string): Array<Date> => {\n\tconst today = UI5Date.getInstance();\n\tconst startDate = UI5Date.getInstance(today.getTime());\n\tconst endDate = UI5Date.getInstance(today.getTime());\n\tconst amount = value.values?.[0] as number || 1;\n\n\tswitch (unit) {\n\tcase \"days\":\n\t\t// For \"Next X Days\": start today, end X days from today (inclusive)\n\t\t// \"Next 1 Day\" = today only, \"Next 2 Days\" = today + tomorrow, etc.\n\t\tendDate.setDate(today.getDate() + (amount - 1));\n\t\tbreak;\n\tcase \"weeks\": {\n\t\tconst currentDayOfWeek = today.getDay();\n\t\tconst daysToEndOfWeek = currentDayOfWeek === 0 ? 0 : 7 - currentDayOfWeek;\n\t\tendDate.setDate(today.getDate() + daysToEndOfWeek + ((amount - 1) * 7));\n\t\tbreak;\n\t}\n\tcase \"months\":\n\t\tendDate.setMonth(today.getMonth() + amount);\n\t\tendDate.setDate(0); // Last day of the previous month (the target month)\n\t\tbreak;\n\tcase \"quarters\": {\n\t\tconst currentQuarter = Math.floor(today.getMonth() / 3);\n\t\tconst quarterEndMonth = (currentQuarter + 1) * 3 - 1 + ((amount - 1) * 3);\n\t\tendDate.setMonth(quarterEndMonth + 1);\n\t\tendDate.setDate(0); // Last day of the quarter\n\t\tbreak;\n\t}\n\tcase \"years\":\n\t\tendDate.setFullYear(today.getFullYear() + amount);\n\t\tendDate.setMonth(0); // January of the next year\n\t\tendDate.setDate(0); // Last day of December of the target year\n\t\tbreak;\n\t}\n\n\treturn [startDate, endDate];\n};\n\nconst lastNextToDates = (value: DynamicDateRangeValue, unit: string, direction: \"last\" | \"next\"): Array<Date> => {\n\treturn direction === \"last\" ? lastToDates(value, unit) : nextToDates(value, unit);\n};\n\n/**\n * Converts DynamicDateRangeValue to dates for Last/Next options.\n * Uses operator name to determine time unit and direction.\n */\nconst toDatesLastNext = (value: DynamicDateRangeValue, option: IDynamicDateRangeOption): Array<Date> => {\n\tconst operator = option.operator;\n\n\t// Extract direction from operator name\n\tlet direction: \"last\" | \"next\";\n\tif (operator.startsWith(\"LAST\")) {\n\t\tdirection = \"last\";\n\t} else if (operator.startsWith(\"NEXT\")) {\n\t\tdirection = \"next\";\n\t} else {\n\t\t// Not a LastNext option, return today's date range\n\t\treturn todayToDates();\n\t}\n\n\t// Extract time unit from operator name\n\tlet unit: string;\n\tif (operator.includes(\"DAYS\")) {\n\t\tunit = \"days\";\n\t} else if (operator.includes(\"WEEKS\")) {\n\t\tunit = \"weeks\";\n\t} else if (operator.includes(\"MONTHS\")) {\n\t\tunit = \"months\";\n\t} else if (operator.includes(\"QUARTERS\")) {\n\t\tunit = \"quarters\";\n\t} else if (operator.includes(\"YEARS\")) {\n\t\tunit = \"years\";\n\t} else {\n\t\t// Unknown time unit, return today's date range as fallback\n\t\treturn todayToDates();\n\t}\n\n\treturn lastNextToDates(value, unit, direction);\n};\n\nconst dateTimeOptionToDates = (value: DynamicDateRangeValue): Array<Date> => {\n\tif (!value || !value.values || value.values.length === 0) {\n\t\treturn [];\n\t}\n\n\tconst startDate = value.values ? value.values[0] as Date : UI5Date.getInstance();\n\tconst endDate = UI5Date.getInstance(startDate.getTime());\n\n\tstartDate.setMilliseconds(0);\n\tendDate.setMilliseconds(999);\n\n\treturn [startDate, endDate];\n};\n\nexport {\n\tdateOptionToDates,\n\tdateRangeOptionToDates,\n\tdateTimeRangeOptionToDates,\n\ttodayToDates,\n\ttomorrowToDates,\n\tyesterdayToDates,\n\tlastNextToDates,\n\ttoDatesLastNext,\n\tdateTimeOptionToDates,\n};\n"]}