@ui5/webcomponents 2.13.2 → 2.14.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/CHANGELOG.md +6 -5
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/DateComponentBase.d.ts +24 -0
  4. package/dist/DateComponentBase.js +80 -1
  5. package/dist/DateComponentBase.js.map +1 -1
  6. package/dist/DatePicker.d.ts +32 -1
  7. package/dist/DatePicker.js +94 -10
  8. package/dist/DatePicker.js.map +1 -1
  9. package/dist/DatePickerInputTemplate.js +1 -1
  10. package/dist/DatePickerInputTemplate.js.map +1 -1
  11. package/dist/DateRangePicker.d.ts +35 -0
  12. package/dist/DateRangePicker.js +119 -9
  13. package/dist/DateRangePicker.js.map +1 -1
  14. package/dist/DateTimePicker.d.ts +10 -0
  15. package/dist/DateTimePicker.js +54 -4
  16. package/dist/DateTimePicker.js.map +1 -1
  17. package/dist/List.d.ts +2 -0
  18. package/dist/List.js +13 -26
  19. package/dist/List.js.map +1 -1
  20. package/dist/ListItemGroup.d.ts +4 -0
  21. package/dist/ListItemGroup.js +20 -53
  22. package/dist/ListItemGroup.js.map +1 -1
  23. package/dist/SelectTemplate.js +1 -1
  24. package/dist/SelectTemplate.js.map +1 -1
  25. package/dist/Tree.d.ts +7 -0
  26. package/dist/Tree.js +37 -38
  27. package/dist/Tree.js.map +1 -1
  28. package/dist/css/themes/Avatar.css +1 -1
  29. package/dist/css/themes/AvatarGroup.css +1 -1
  30. package/dist/css/themes/Bar.css +1 -1
  31. package/dist/css/themes/Breadcrumbs.css +1 -1
  32. package/dist/css/themes/BusyIndicator.css +1 -1
  33. package/dist/css/themes/Button.css +1 -1
  34. package/dist/css/themes/ButtonBadge.css +1 -1
  35. package/dist/css/themes/Calendar.css +1 -1
  36. package/dist/css/themes/CalendarHeader.css +1 -1
  37. package/dist/css/themes/CalendarLegend.css +1 -1
  38. package/dist/css/themes/CalendarLegendItem.css +1 -1
  39. package/dist/css/themes/Card.css +1 -1
  40. package/dist/css/themes/CardHeader.css +1 -1
  41. package/dist/css/themes/Carousel.css +1 -1
  42. package/dist/css/themes/CheckBox.css +1 -1
  43. package/dist/css/themes/ColorPalette.css +1 -1
  44. package/dist/css/themes/ColorPaletteItem.css +1 -1
  45. package/dist/css/themes/ColorPalettePopover.css +1 -1
  46. package/dist/css/themes/ColorPicker.css +1 -1
  47. package/dist/css/themes/ComboBox.css +1 -1
  48. package/dist/css/themes/ComboBoxItem.css +1 -1
  49. package/dist/css/themes/DatePicker.css +1 -1
  50. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  51. package/dist/css/themes/DayPicker.css +1 -1
  52. package/dist/css/themes/Dialog.css +1 -1
  53. package/dist/css/themes/DynamicDateRange.css +1 -1
  54. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  55. package/dist/css/themes/FileUploader.css +1 -1
  56. package/dist/css/themes/Form.css +1 -1
  57. package/dist/css/themes/FormItem.css +1 -1
  58. package/dist/css/themes/FormItemSpan.css +1 -1
  59. package/dist/css/themes/GrowingButton.css +1 -1
  60. package/dist/css/themes/Icon.css +1 -1
  61. package/dist/css/themes/Input.css +1 -1
  62. package/dist/css/themes/InputIcon.css +1 -1
  63. package/dist/css/themes/InputSharedStyles.css +1 -1
  64. package/dist/css/themes/Link.css +1 -1
  65. package/dist/css/themes/List.css +1 -1
  66. package/dist/css/themes/ListItem.css +1 -1
  67. package/dist/css/themes/ListItemBase.css +1 -1
  68. package/dist/css/themes/ListItemCustom.css +1 -1
  69. package/dist/css/themes/ListItemGroup.css +1 -1
  70. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  71. package/dist/css/themes/ListItemIcon.css +1 -1
  72. package/dist/css/themes/Menu.css +1 -1
  73. package/dist/css/themes/MenuItem.css +1 -1
  74. package/dist/css/themes/MessageStrip.css +1 -1
  75. package/dist/css/themes/MonthPicker.css +1 -1
  76. package/dist/css/themes/MultiComboBox.css +1 -1
  77. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  78. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  79. package/dist/css/themes/MultiInput.css +1 -1
  80. package/dist/css/themes/OptionBase.css +1 -1
  81. package/dist/css/themes/Panel.css +1 -1
  82. package/dist/css/themes/Popover.css +1 -1
  83. package/dist/css/themes/PopupsCommon.css +1 -1
  84. package/dist/css/themes/ProgressIndicator.css +1 -1
  85. package/dist/css/themes/RadioButton.css +1 -1
  86. package/dist/css/themes/RangeSlider.css +1 -1
  87. package/dist/css/themes/RatingIndicator.css +1 -1
  88. package/dist/css/themes/ResponsivePopover.css +1 -1
  89. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  90. package/dist/css/themes/SegmentedButton.css +1 -1
  91. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  92. package/dist/css/themes/Select.css +1 -1
  93. package/dist/css/themes/SliderBase.css +1 -1
  94. package/dist/css/themes/SplitButton.css +1 -1
  95. package/dist/css/themes/StepInput.css +1 -1
  96. package/dist/css/themes/SuggestionItem.css +1 -1
  97. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  98. package/dist/css/themes/Switch.css +1 -1
  99. package/dist/css/themes/TabContainer.css +1 -1
  100. package/dist/css/themes/TabInOverflow.css +1 -1
  101. package/dist/css/themes/TabInStrip.css +1 -1
  102. package/dist/css/themes/TabSemanticIcon.css +1 -1
  103. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  104. package/dist/css/themes/TableCellBase.css +1 -1
  105. package/dist/css/themes/TableHeaderRow.css +1 -1
  106. package/dist/css/themes/TableRow.css +1 -1
  107. package/dist/css/themes/TableRowActionBase.css +1 -1
  108. package/dist/css/themes/TableRowBase.css +1 -1
  109. package/dist/css/themes/Tag.css +1 -1
  110. package/dist/css/themes/Text.css +1 -1
  111. package/dist/css/themes/TextArea.css +1 -1
  112. package/dist/css/themes/TimePicker.css +1 -1
  113. package/dist/css/themes/Toast.css +1 -1
  114. package/dist/css/themes/ToggleButton.css +1 -1
  115. package/dist/css/themes/Token.css +1 -1
  116. package/dist/css/themes/Tokenizer.css +1 -1
  117. package/dist/css/themes/TokenizerPopover.css +1 -1
  118. package/dist/css/themes/Toolbar.css +1 -1
  119. package/dist/css/themes/ToolbarButton.css +1 -1
  120. package/dist/css/themes/ToolbarPopover.css +1 -1
  121. package/dist/css/themes/ToolbarSeparator.css +1 -1
  122. package/dist/css/themes/TreeItem.css +1 -1
  123. package/dist/css/themes/ValueStateMessage.css +1 -1
  124. package/dist/css/themes/ValueStateVariables.css +1 -1
  125. package/dist/css/themes/YearPicker.css +1 -1
  126. package/dist/css/themes/YearRangePicker.css +1 -1
  127. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  128. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  129. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  130. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  131. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  132. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  133. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  134. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  135. package/dist/custom-elements-internal.json +489 -0
  136. package/dist/custom-elements.json +471 -0
  137. package/dist/delegate/DragAndDropHandler.d.ts +33 -0
  138. package/dist/delegate/DragAndDropHandler.js +96 -0
  139. package/dist/delegate/DragAndDropHandler.js.map +1 -0
  140. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  141. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  142. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  143. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  144. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  145. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  146. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  147. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  148. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  149. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  150. package/dist/generated/themes/Avatar.css.js +1 -1
  151. package/dist/generated/themes/Avatar.css.js.map +1 -1
  152. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  153. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  154. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  155. package/dist/generated/themes/Bar.css.d.ts +1 -1
  156. package/dist/generated/themes/Bar.css.js +1 -1
  157. package/dist/generated/themes/Bar.css.js.map +1 -1
  158. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  159. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  160. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  161. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  162. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  163. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  164. package/dist/generated/themes/Button.css.d.ts +1 -1
  165. package/dist/generated/themes/Button.css.js +1 -1
  166. package/dist/generated/themes/Button.css.js.map +1 -1
  167. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  168. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  169. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  170. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  171. package/dist/generated/themes/Calendar.css.js +1 -1
  172. package/dist/generated/themes/Calendar.css.js.map +1 -1
  173. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  174. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  175. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  176. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  177. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  178. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  179. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  180. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  181. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  182. package/dist/generated/themes/Card.css.d.ts +1 -1
  183. package/dist/generated/themes/Card.css.js +1 -1
  184. package/dist/generated/themes/Card.css.js.map +1 -1
  185. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  186. package/dist/generated/themes/CardHeader.css.js +1 -1
  187. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  188. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  189. package/dist/generated/themes/Carousel.css.js +1 -1
  190. package/dist/generated/themes/Carousel.css.js.map +1 -1
  191. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  192. package/dist/generated/themes/CheckBox.css.js +1 -1
  193. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  194. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  195. package/dist/generated/themes/ColorPalette.css.js +1 -1
  196. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  197. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  198. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  199. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  200. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  201. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  202. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  203. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  204. package/dist/generated/themes/ColorPicker.css.js +1 -1
  205. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  206. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  207. package/dist/generated/themes/ComboBox.css.js +1 -1
  208. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  209. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  210. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  211. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  212. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  213. package/dist/generated/themes/DatePicker.css.js +1 -1
  214. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  215. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  216. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  217. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  218. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  219. package/dist/generated/themes/DayPicker.css.js +1 -1
  220. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  221. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  222. package/dist/generated/themes/Dialog.css.js +1 -1
  223. package/dist/generated/themes/Dialog.css.js.map +1 -1
  224. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  225. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  226. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  227. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  228. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  229. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  230. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  231. package/dist/generated/themes/FileUploader.css.js +1 -1
  232. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  233. package/dist/generated/themes/Form.css.d.ts +1 -1
  234. package/dist/generated/themes/Form.css.js +1 -1
  235. package/dist/generated/themes/Form.css.js.map +1 -1
  236. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  237. package/dist/generated/themes/FormItem.css.js +1 -1
  238. package/dist/generated/themes/FormItem.css.js.map +1 -1
  239. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  240. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  241. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  242. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  243. package/dist/generated/themes/GrowingButton.css.js +1 -1
  244. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  245. package/dist/generated/themes/Icon.css.d.ts +1 -1
  246. package/dist/generated/themes/Icon.css.js +1 -1
  247. package/dist/generated/themes/Icon.css.js.map +1 -1
  248. package/dist/generated/themes/Input.css.d.ts +1 -1
  249. package/dist/generated/themes/Input.css.js +1 -1
  250. package/dist/generated/themes/Input.css.js.map +1 -1
  251. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  252. package/dist/generated/themes/InputIcon.css.js +1 -1
  253. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  254. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  255. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  256. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  257. package/dist/generated/themes/Link.css.d.ts +1 -1
  258. package/dist/generated/themes/Link.css.js +1 -1
  259. package/dist/generated/themes/Link.css.js.map +1 -1
  260. package/dist/generated/themes/List.css.d.ts +1 -1
  261. package/dist/generated/themes/List.css.js +1 -1
  262. package/dist/generated/themes/List.css.js.map +1 -1
  263. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  264. package/dist/generated/themes/ListItem.css.js +1 -1
  265. package/dist/generated/themes/ListItem.css.js.map +1 -1
  266. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  267. package/dist/generated/themes/ListItemBase.css.js +1 -1
  268. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  269. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  270. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  271. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  272. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  273. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  274. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  275. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  276. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  277. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  278. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  279. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  280. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  281. package/dist/generated/themes/Menu.css.d.ts +1 -1
  282. package/dist/generated/themes/Menu.css.js +1 -1
  283. package/dist/generated/themes/Menu.css.js.map +1 -1
  284. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  285. package/dist/generated/themes/MenuItem.css.js +1 -1
  286. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  287. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  288. package/dist/generated/themes/MessageStrip.css.js +1 -1
  289. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  290. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  291. package/dist/generated/themes/MonthPicker.css.js +1 -1
  292. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  293. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  294. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  295. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  296. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  297. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  298. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  299. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  300. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  301. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  302. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  303. package/dist/generated/themes/MultiInput.css.js +1 -1
  304. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  305. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  306. package/dist/generated/themes/OptionBase.css.js +1 -1
  307. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  308. package/dist/generated/themes/Panel.css.d.ts +1 -1
  309. package/dist/generated/themes/Panel.css.js +1 -1
  310. package/dist/generated/themes/Panel.css.js.map +1 -1
  311. package/dist/generated/themes/Popover.css.d.ts +1 -1
  312. package/dist/generated/themes/Popover.css.js +1 -1
  313. package/dist/generated/themes/Popover.css.js.map +1 -1
  314. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  315. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  316. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  317. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  318. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  319. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  320. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  321. package/dist/generated/themes/RadioButton.css.js +1 -1
  322. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  323. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  324. package/dist/generated/themes/RangeSlider.css.js +1 -1
  325. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  326. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  327. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  328. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  329. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  330. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  331. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  332. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  333. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  334. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  335. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  336. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  337. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  338. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  339. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  340. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  341. package/dist/generated/themes/Select.css.d.ts +1 -1
  342. package/dist/generated/themes/Select.css.js +1 -1
  343. package/dist/generated/themes/Select.css.js.map +1 -1
  344. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  345. package/dist/generated/themes/SliderBase.css.js +1 -1
  346. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  347. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  348. package/dist/generated/themes/SplitButton.css.js +1 -1
  349. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  350. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  351. package/dist/generated/themes/StepInput.css.js +1 -1
  352. package/dist/generated/themes/StepInput.css.js.map +1 -1
  353. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  354. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  355. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  356. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  357. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  358. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  359. package/dist/generated/themes/Switch.css.d.ts +1 -1
  360. package/dist/generated/themes/Switch.css.js +1 -1
  361. package/dist/generated/themes/Switch.css.js.map +1 -1
  362. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  363. package/dist/generated/themes/TabContainer.css.js +1 -1
  364. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  365. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  366. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  367. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  368. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  369. package/dist/generated/themes/TabInStrip.css.js +1 -1
  370. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  371. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  372. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  373. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  374. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  375. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  376. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  377. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  378. package/dist/generated/themes/TableCellBase.css.js +1 -1
  379. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  380. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  381. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  382. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  383. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  384. package/dist/generated/themes/TableRow.css.js +1 -1
  385. package/dist/generated/themes/TableRow.css.js.map +1 -1
  386. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  387. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  388. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  389. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  390. package/dist/generated/themes/TableRowBase.css.js +1 -1
  391. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  392. package/dist/generated/themes/Tag.css.d.ts +1 -1
  393. package/dist/generated/themes/Tag.css.js +1 -1
  394. package/dist/generated/themes/Tag.css.js.map +1 -1
  395. package/dist/generated/themes/Text.css.d.ts +1 -1
  396. package/dist/generated/themes/Text.css.js +1 -1
  397. package/dist/generated/themes/Text.css.js.map +1 -1
  398. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  399. package/dist/generated/themes/TextArea.css.js +1 -1
  400. package/dist/generated/themes/TextArea.css.js.map +1 -1
  401. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  402. package/dist/generated/themes/TimePicker.css.js +1 -1
  403. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  404. package/dist/generated/themes/Toast.css.d.ts +1 -1
  405. package/dist/generated/themes/Toast.css.js +1 -1
  406. package/dist/generated/themes/Toast.css.js.map +1 -1
  407. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  408. package/dist/generated/themes/ToggleButton.css.js +1 -1
  409. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  410. package/dist/generated/themes/Token.css.d.ts +1 -1
  411. package/dist/generated/themes/Token.css.js +1 -1
  412. package/dist/generated/themes/Token.css.js.map +1 -1
  413. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  414. package/dist/generated/themes/Tokenizer.css.js +1 -1
  415. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  416. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  417. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  418. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  419. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  420. package/dist/generated/themes/Toolbar.css.js +1 -1
  421. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  422. package/dist/generated/themes/ToolbarButton.css.d.ts +1 -1
  423. package/dist/generated/themes/ToolbarButton.css.js +1 -1
  424. package/dist/generated/themes/ToolbarButton.css.js.map +1 -1
  425. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  426. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  427. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  428. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  429. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  430. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  431. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  432. package/dist/generated/themes/TreeItem.css.js +1 -1
  433. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  434. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  435. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  436. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  437. package/dist/generated/themes/ValueStateVariables.css.d.ts +1 -1
  438. package/dist/generated/themes/ValueStateVariables.css.js +1 -1
  439. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -1
  440. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  441. package/dist/generated/themes/YearPicker.css.js +1 -1
  442. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  443. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  444. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  445. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  446. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  447. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  448. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  449. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  450. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  451. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  452. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  453. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  454. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  455. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  456. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  457. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  458. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  459. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  460. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  461. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  462. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  464. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  465. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  468. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  470. package/dist/vscode.html-custom-data.json +63 -3
  471. package/dist/web-types.json +84 -4
  472. package/package.json +9 -9
  473. package/src/DatePickerInputTemplate.tsx +1 -1
  474. package/src/SelectTemplate.tsx +6 -5
  475. package/src/i18n/messagebundle_en_US_sappsd.properties +7 -0
  476. package/src/themes/base/sizes-parameters.css +6 -0
@@ -36,9 +36,24 @@ declare class DateComponentBase extends UI5Element {
36
36
  /**
37
37
  * Determines the format, displayed in the input field.
38
38
  * @default undefined
39
+ * @deprecated
39
40
  * @public
40
41
  */
41
42
  formatPattern?: string;
43
+ /**
44
+ * Determines the format, displayed in the input field.
45
+ * @default undefined
46
+ * @since 2.14.0
47
+ * @public
48
+ */
49
+ displayFormat?: string;
50
+ /**
51
+ * Determines the format, used for the value attribute.
52
+ * @default undefined
53
+ * @since 2.14.0
54
+ * @public
55
+ */
56
+ valueFormat?: string;
42
57
  /**
43
58
  * Determines the minimum date available for selection.
44
59
  *
@@ -79,12 +94,21 @@ declare class DateComponentBase extends UI5Element {
79
94
  get _maxDate(): CalendarDate;
80
95
  get _formatPattern(): string;
81
96
  get _isPattern(): boolean;
97
+ get _isValueFormatPattern(): boolean;
98
+ get _isDisplayFormatPattern(): boolean;
82
99
  get hasSecondaryCalendarType(): boolean;
83
100
  _getMinMaxCalendarDateFromString(date: string): CalendarDate | undefined;
84
101
  _getCalendarDateFromString(value: string): CalendarDate | undefined;
102
+ _getCalendarDateFromStringDisplayValue(value: string): CalendarDate | undefined;
85
103
  _getTimeStampFromString(value: string): number | undefined;
86
104
  _getStringFromTimestamp(timestamp: number): string;
105
+ _getDisplayStringFromTimestamp(timestamp: number): string;
106
+ _getValueStringFromTimestamp(timestamp: number): string;
87
107
  getFormat(): import("sap/ui/core/format/DateFormat").default;
108
+ get _displayFormat(): string;
109
+ get _valueFormat(): string;
110
+ getDisplayFormat(): import("sap/ui/core/format/DateFormat").default;
111
+ getValueFormat(): import("sap/ui/core/format/DateFormat").default;
88
112
  getISOFormat(): DateFormat;
89
113
  }
90
114
  export default DateComponentBase;
@@ -86,6 +86,12 @@ let DateComponentBase = class DateComponentBase extends UI5Element {
86
86
  get _isPattern() {
87
87
  return this._formatPattern !== "medium" && this._formatPattern !== "short" && this._formatPattern !== "long";
88
88
  }
89
+ get _isValueFormatPattern() {
90
+ return this._valueFormat !== "medium" && this._valueFormat !== "short" && this._valueFormat !== "long";
91
+ }
92
+ get _isDisplayFormatPattern() {
93
+ return this._displayFormat !== "medium" && this._displayFormat !== "short" && this._displayFormat !== "long";
94
+ }
89
95
  get hasSecondaryCalendarType() {
90
96
  return !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;
91
97
  }
@@ -99,7 +105,13 @@ let DateComponentBase = class DateComponentBase extends UI5Element {
99
105
  }
100
106
  }
101
107
  _getCalendarDateFromString(value) {
102
- const jsDate = this.getFormat().parse(value);
108
+ const jsDate = this.getValueFormat().parse(value);
109
+ if (jsDate) {
110
+ return CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);
111
+ }
112
+ }
113
+ _getCalendarDateFromStringDisplayValue(value) {
114
+ const jsDate = this.getDisplayFormat().parse(value);
103
115
  if (jsDate) {
104
116
  return CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);
105
117
  }
@@ -111,9 +123,26 @@ let DateComponentBase = class DateComponentBase extends UI5Element {
111
123
  }
112
124
  }
113
125
  _getStringFromTimestamp(timestamp) {
126
+ if (!timestamp) {
127
+ return "";
128
+ }
114
129
  const localDate = UI5Date.getInstance(timestamp);
115
130
  return this.getFormat().format(localDate, true);
116
131
  }
132
+ _getDisplayStringFromTimestamp(timestamp) {
133
+ if (!timestamp) {
134
+ return "";
135
+ }
136
+ const localDate = UI5Date.getInstance(timestamp);
137
+ return this.getDisplayFormat().format(localDate, true);
138
+ }
139
+ _getValueStringFromTimestamp(timestamp) {
140
+ if (!timestamp) {
141
+ return "";
142
+ }
143
+ const localDate = UI5Date.getInstance(timestamp);
144
+ return this.getValueFormat().format(localDate, true);
145
+ }
117
146
  getFormat() {
118
147
  return this._isPattern
119
148
  ? DateFormat.getDateInstance({
@@ -127,6 +156,50 @@ let DateComponentBase = class DateComponentBase extends UI5Element {
127
156
  calendarType: this._primaryCalendarType,
128
157
  });
129
158
  }
159
+ get _displayFormat() {
160
+ if (this.displayFormat) {
161
+ return this.displayFormat;
162
+ }
163
+ return this._formatPattern;
164
+ }
165
+ get _valueFormat() {
166
+ if (this.valueFormat) {
167
+ return this.valueFormat;
168
+ }
169
+ if (this._formatPattern) {
170
+ return this._formatPattern;
171
+ }
172
+ return "";
173
+ }
174
+ getDisplayFormat() {
175
+ return this._isDisplayFormatPattern
176
+ ? DateFormat.getDateInstance({
177
+ strictParsing: true,
178
+ pattern: this._displayFormat,
179
+ calendarType: this._primaryCalendarType,
180
+ })
181
+ : DateFormat.getDateInstance({
182
+ strictParsing: true,
183
+ style: this._displayFormat,
184
+ calendarType: this._primaryCalendarType,
185
+ });
186
+ }
187
+ getValueFormat() {
188
+ if (!this._valueFormat) {
189
+ return this.getISOFormat();
190
+ }
191
+ return this._isValueFormatPattern
192
+ ? DateFormat.getDateInstance({
193
+ strictParsing: true,
194
+ pattern: this._valueFormat,
195
+ calendarType: this._primaryCalendarType,
196
+ })
197
+ : DateFormat.getDateInstance({
198
+ strictParsing: true,
199
+ style: this._valueFormat,
200
+ calendarType: this._primaryCalendarType,
201
+ });
202
+ }
130
203
  getISOFormat() {
131
204
  if (!this._isoFormatInstance) {
132
205
  this._isoFormatInstance = DateFormat.getDateInstance({
@@ -147,6 +220,12 @@ __decorate([
147
220
  __decorate([
148
221
  property()
149
222
  ], DateComponentBase.prototype, "formatPattern", void 0);
223
+ __decorate([
224
+ property()
225
+ ], DateComponentBase.prototype, "displayFormat", void 0);
226
+ __decorate([
227
+ property()
228
+ ], DateComponentBase.prototype, "valueFormat", void 0);
150
229
  __decorate([
151
230
  property()
152
231
  ], DateComponentBase.prototype, "minDate", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"DateComponentBase.js","sourceRoot":"","sources":["../src/DateComponentBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getCalendarType, getSecondaryCalendarType } from \"@ui5/webcomponents-base/dist/config/CalendarType.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport type CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { getMaxCalendarDate, getMinCalendarDate } from \"@ui5/webcomponents-localization/dist/dates/ExtremeDates.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type CalendarWeekNumbering from \"./types/CalendarWeekNumbering.js\";\n\n/**\n * @class\n *\n * Abstract class that provides common functionality for date-related components (day picker, month picker, year picker, calendar, date picker, date range picker, date time picker)\n * This includes:\n * - \"languageAware: true\" metadata setting, CLDR fetch and i18n initialization\n * - common properties (primaryCalendar, minDate, maxDate and formatPattern) declaration and methods that operate on them\n * - additional common methods\n * @constructor\n * @abstract\n * @extends UI5Element\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tcldr: true,\n\trenderer: jsxRenderer,\n})\nclass DateComponentBase extends UI5Element {\n\t/**\n\t * Sets a calendar type used for display.\n\t * If not set, the calendar type of the global configuration is used.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines the secondary calendar type.\n\t * If not set, the calendar will only show the primary calendar type.\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Determines the minimum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the minDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tminDate = \"\";\n\n\t/**\n\t * Determines the maximum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the maxDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tmaxDate = \"\";\n\n\t/**\n\t * Defines how to calculate calendar weeks and first day of the week.\n\t * If not set, the calendar will be displayed according to the currently set global configuration.\n\t * @default \"Default\"\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property()\n\tcalendarWeekNumbering: `${CalendarWeekNumbering}` = \"Default\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle?: I18nBundle;\n\n\t/**\n\t * Cached instance of DateFormat with a format pattern of \"yyyy-MM-dd\".\n\t * Used by the getISOFormat method to avoid creating a new DateFormat instance on each call.\n\t * @private\n\t */\n\t_isoFormatInstance?: DateFormat;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _primaryCalendarType() {\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn this.primaryCalendarType || getCalendarType() || localeData.getPreferredCalendarType();\n\t}\n\n\tget _secondaryCalendarType() {\n\t\treturn this.secondaryCalendarType || getSecondaryCalendarType();\n\t}\n\n\tget _minDate() {\n\t\tlet minDate;\n\n\t\tif (this.minDate) {\n\t\t\tminDate = this._getMinMaxCalendarDateFromString(this.minDate);\n\t\t}\n\n\t\treturn minDate || getMinCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _maxDate() {\n\t\tlet maxDate;\n\n\t\tif (this.maxDate) {\n\t\t\tmaxDate = this._getMinMaxCalendarDateFromString(this.maxDate)!;\n\t\t}\n\n\t\treturn maxDate || getMaxCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _formatPattern() {\n\t\treturn this.formatPattern || \"medium\"; // get from config\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\t_getMinMaxCalendarDateFromString(date: string) {\n\t\tif (this.getFormat().parse(date)) {\n\t\t\treturn this._getCalendarDateFromString(date);\n\t\t}\n\n\t\tconst jsDate = this.getISOFormat().parse(date) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromString(value: string) {\n\t\tconst jsDate = this.getFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getTimeStampFromString(value: string) {\n\t\tconst calDate = this._getCalendarDateFromString(value);\n\t\tif (calDate) {\n\t\t\treturn calDate.toUTCJSDate().valueOf();\n\t\t}\n\t}\n\n\t_getStringFromTimestamp(timestamp: number) {\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getFormat().format(localDate, true);\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateInstance({\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.getDateInstance({\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\tgetISOFormat() {\n\t\tif (!this._isoFormatInstance) {\n\t\t\tthis._isoFormatInstance = DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: \"yyyy-MM-dd\",\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t\t}\n\t\treturn this._isoFormatInstance;\n\t}\n}\n\nexport default DateComponentBase;\n"]}
1
+ {"version":3,"file":"DateComponentBase.js","sourceRoot":"","sources":["../src/DateComponentBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getCalendarType, getSecondaryCalendarType } from \"@ui5/webcomponents-base/dist/config/CalendarType.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport type CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { getMaxCalendarDate, getMinCalendarDate } from \"@ui5/webcomponents-localization/dist/dates/ExtremeDates.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type CalendarWeekNumbering from \"./types/CalendarWeekNumbering.js\";\n\n/**\n * @class\n *\n * Abstract class that provides common functionality for date-related components (day picker, month picker, year picker, calendar, date picker, date range picker, date time picker)\n * This includes:\n * - \"languageAware: true\" metadata setting, CLDR fetch and i18n initialization\n * - common properties (primaryCalendar, minDate, maxDate and formatPattern) declaration and methods that operate on them\n * - additional common methods\n * @constructor\n * @abstract\n * @extends UI5Element\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tcldr: true,\n\trenderer: jsxRenderer,\n})\nclass DateComponentBase extends UI5Element {\n\t/**\n\t * Sets a calendar type used for display.\n\t * If not set, the calendar type of the global configuration is used.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines the secondary calendar type.\n\t * If not set, the calendar will only show the primary calendar type.\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @deprecated\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tdisplayFormat?: string;\n\n\t/**\n\t * Determines the format, used for the value attribute.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tvalueFormat?: string;\n\n\t/**\n\t * Determines the minimum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the minDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tminDate = \"\";\n\n\t/**\n\t * Determines the maximum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the maxDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tmaxDate = \"\";\n\n\t/**\n\t * Defines how to calculate calendar weeks and first day of the week.\n\t * If not set, the calendar will be displayed according to the currently set global configuration.\n\t * @default \"Default\"\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property()\n\tcalendarWeekNumbering: `${CalendarWeekNumbering}` = \"Default\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle?: I18nBundle;\n\n\t/**\n\t * Cached instance of DateFormat with a format pattern of \"yyyy-MM-dd\".\n\t * Used by the getISOFormat method to avoid creating a new DateFormat instance on each call.\n\t * @private\n\t */\n\t_isoFormatInstance?: DateFormat;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _primaryCalendarType() {\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn this.primaryCalendarType || getCalendarType() || localeData.getPreferredCalendarType();\n\t}\n\n\tget _secondaryCalendarType() {\n\t\treturn this.secondaryCalendarType || getSecondaryCalendarType();\n\t}\n\n\tget _minDate() {\n\t\tlet minDate;\n\n\t\tif (this.minDate) {\n\t\t\tminDate = this._getMinMaxCalendarDateFromString(this.minDate);\n\t\t}\n\n\t\treturn minDate || getMinCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _maxDate() {\n\t\tlet maxDate;\n\n\t\tif (this.maxDate) {\n\t\t\tmaxDate = this._getMinMaxCalendarDateFromString(this.maxDate)!;\n\t\t}\n\n\t\treturn maxDate || getMaxCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _formatPattern() {\n\t\treturn this.formatPattern || \"medium\"; // get from config\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget _isValueFormatPattern() {\n\t\treturn this._valueFormat !== \"medium\" && this._valueFormat !== \"short\" && this._valueFormat !== \"long\";\n\t}\n\n\tget _isDisplayFormatPattern() {\n\t\treturn this._displayFormat !== \"medium\" && this._displayFormat !== \"short\" && this._displayFormat !== \"long\";\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\t_getMinMaxCalendarDateFromString(date: string) {\n\t\tif (this.getFormat().parse(date)) {\n\t\t\treturn this._getCalendarDateFromString(date);\n\t\t}\n\n\t\tconst jsDate = this.getISOFormat().parse(date) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromString(value: string) {\n\t\tconst jsDate = this.getValueFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromStringDisplayValue(value: string) {\n\t\tconst jsDate = this.getDisplayFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getTimeStampFromString(value: string) {\n\t\tconst calDate = this._getCalendarDateFromString(value);\n\t\tif (calDate) {\n\t\t\treturn calDate.toUTCJSDate().valueOf();\n\t\t}\n\t}\n\n\t_getStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getFormat().format(localDate, true);\n\t}\n\n\t_getDisplayStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getDisplayFormat().format(localDate, true);\n\t}\n\n\t_getValueStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getValueFormat().format(localDate, true);\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateInstance({\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.getDateInstance({\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\tget _displayFormat() {\n\t\tif (this.displayFormat) {\n\t\t\treturn this.displayFormat;\n\t\t}\n\n\t\treturn this._formatPattern;\n\t}\n\n\tget _valueFormat() {\n\t\tif (this.valueFormat) {\n\t\t\treturn this.valueFormat;\n\t\t}\n\n\t\tif (this._formatPattern) {\n\t\t\treturn this._formatPattern;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tgetDisplayFormat() {\n\t\treturn this._isDisplayFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetValueFormat() {\n\t\tif (!this._valueFormat) {\n\t\t\treturn this.getISOFormat();\n\t\t}\n\n\t\treturn this._isValueFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetISOFormat() {\n\t\tif (!this._isoFormatInstance) {\n\t\t\tthis._isoFormatInstance = DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: \"yyyy-MM-dd\",\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t\t}\n\t\treturn this._isoFormatInstance;\n\t}\n}\n\nexport default DateComponentBase;\n"]}
@@ -255,6 +255,8 @@ declare class DatePicker extends DateComponentBase implements IFormInputElement
255
255
  _modifyDateValue(amount: number, unit: string, preserveDate?: boolean): void;
256
256
  _updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<"change" | "value-changed" | "input">, updateValue?: boolean): void;
257
257
  _updateValueState(): void;
258
+ getValueFromDisplayValue(value: string): string;
259
+ getDisplayValueFromValue(value: string): string;
258
260
  /**
259
261
  * The ui5-input "submit" event handler - fire change event when the user presses enter
260
262
  * @protected
@@ -276,6 +278,12 @@ declare class DatePicker extends DateComponentBase implements IFormInputElement
276
278
  * @param value
277
279
  */
278
280
  _checkValueValidity(value: string): boolean;
281
+ /**
282
+ * Checks if the provided value is valid and within valid range.
283
+ * @protected
284
+ * @param value
285
+ */
286
+ _checkDisplayValueValidity(value: string): boolean;
279
287
  _click(e: MouseEvent): void;
280
288
  /**
281
289
  * Checks if a value is valid against the current date format of the DatePicker.
@@ -283,18 +291,40 @@ declare class DatePicker extends DateComponentBase implements IFormInputElement
283
291
  * @param value A value to be tested against the current date format
284
292
  */
285
293
  isValid(value: string): boolean;
294
+ /**
295
+ * Checks if a value is valid against the current date format of the DatePicker.
296
+ * @public
297
+ * @param value A value to be tested against the current date format
298
+ */
299
+ isValidValue(value: string): boolean;
300
+ /**
301
+ * Checks if a value is valid against the current date format of the DatePicker.
302
+ * @public
303
+ * @param value A value to be tested against the current date format
304
+ */
305
+ isValidDisplayValue(value: string): boolean;
286
306
  /**
287
307
  * Checks if a date is between the minimum and maximum date.
288
308
  * @public
289
309
  * @param value A value to be checked
290
310
  */
291
311
  isInValidRange(value: string): boolean;
312
+ isInValidRangeDisplayValue(value: string): boolean;
292
313
  /**
293
314
  * The parser understands many formats, but we need one format
294
315
  * @protected
295
316
  */
296
317
  normalizeValue(value: string): string;
297
- get _displayFormat(): string;
318
+ /**
319
+ * The parser understands many formats, but we need one format
320
+ * @protected
321
+ */
322
+ normalizeFormattedValue(value: string): string;
323
+ /**
324
+ * The parser understands many formats, but we need one format
325
+ * @protected
326
+ */
327
+ normalizeDisplayValue(value: string): string;
298
328
  get _lastDayOfTheYear(): string;
299
329
  /**
300
330
  * @protected
@@ -303,6 +333,7 @@ declare class DatePicker extends DateComponentBase implements IFormInputElement
303
333
  get _headerTitleText(): string;
304
334
  get showHeader(): boolean;
305
335
  get showFooter(): boolean;
336
+ get displayValue(): string;
306
337
  get accInfo(): InputAccInfo;
307
338
  get valueStateDefaultText(): string | undefined;
308
339
  get valueStateTextMappings(): ValueStateAnnouncement;
@@ -210,7 +210,7 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
210
210
  console.warn(`Invalid value for property "${prop}": ${propValue} is not compatible with the configured format pattern: "${this._displayFormat}"`); // eslint-disable-line
211
211
  }
212
212
  });
213
- this.value = this.normalizeValue(this.value) || this.value;
213
+ this.value = this.normalizeFormattedValue(this.value) || this.value;
214
214
  this.liveValue = this.value;
215
215
  }
216
216
  /**
@@ -310,14 +310,15 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
310
310
  _updateValueAndFireEvents(value, normalizeValue, events, updateValue = true) {
311
311
  const valid = this._checkValueValidity(value);
312
312
  if (valid && normalizeValue) {
313
- value = this.normalizeValue(value); // transform valid values (in any format) to the correct format
313
+ value = this.getDisplayValueFromValue(value);
314
+ value = this.normalizeDisplayValue(value); // transform valid values (in any format) to the correct format
314
315
  }
315
316
  let executeEvent = true;
316
317
  this.liveValue = value;
317
318
  const previousValue = this.value;
318
319
  if (updateValue) {
319
320
  this._dateTimeInput.value = value;
320
- this.value = value;
321
+ this.value = this.getValueFromDisplayValue(value);
321
322
  this._updateValueState(); // Change the value state to Error/None, but only if needed
322
323
  }
323
324
  events.forEach(e => {
@@ -342,6 +343,18 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
342
343
  this.valueState = previousValueState;
343
344
  }
344
345
  }
346
+ getValueFromDisplayValue(value) {
347
+ if (!this.getDisplayFormat().parse(value)) {
348
+ return value;
349
+ }
350
+ return this.getValueFormat().format(this.getDisplayFormat().parse(value));
351
+ }
352
+ getDisplayValueFromValue(value) {
353
+ if (!this.getValueFormat().parse(value)) {
354
+ return value;
355
+ }
356
+ return this.getDisplayFormat().format(this.getValueFormat().parse(value));
357
+ }
345
358
  /**
346
359
  * The ui5-input "submit" event handler - fire change event when the user presses enter
347
360
  * @protected
@@ -370,7 +383,18 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
370
383
  if (value === "") {
371
384
  return true;
372
385
  }
373
- return this.isValid(value) && this.isInValidRange(value);
386
+ return this.isValidValue(value) && this.isInValidRange(value);
387
+ }
388
+ /**
389
+ * Checks if the provided value is valid and within valid range.
390
+ * @protected
391
+ * @param value
392
+ */
393
+ _checkDisplayValueValidity(value) {
394
+ if (value === "") {
395
+ return true;
396
+ }
397
+ return this.isValidDisplayValue(value) && this.isInValidRangeDisplayValue(value);
374
398
  }
375
399
  _click(e) {
376
400
  if (isPhone()) {
@@ -390,6 +414,28 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
390
414
  }
391
415
  return !!this.getFormat().parse(value);
392
416
  }
417
+ /**
418
+ * Checks if a value is valid against the current date format of the DatePicker.
419
+ * @public
420
+ * @param value A value to be tested against the current date format
421
+ */
422
+ isValidValue(value) {
423
+ if (value === "" || value === undefined) {
424
+ return true;
425
+ }
426
+ return !!this.getValueFormat().parse(value);
427
+ }
428
+ /**
429
+ * Checks if a value is valid against the current date format of the DatePicker.
430
+ * @public
431
+ * @param value A value to be tested against the current date format
432
+ */
433
+ isValidDisplayValue(value) {
434
+ if (value === "" || value === undefined) {
435
+ return true;
436
+ }
437
+ return !!this.getDisplayFormat().parse(value);
438
+ }
393
439
  /**
394
440
  * Checks if a date is between the minimum and maximum date.
395
441
  * @public
@@ -405,6 +451,16 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
405
451
  }
406
452
  return calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();
407
453
  }
454
+ isInValidRangeDisplayValue(value) {
455
+ if (value === "" || value === undefined) {
456
+ return true;
457
+ }
458
+ const calendarDate = this._getCalendarDateFromStringDisplayValue(value);
459
+ if (!calendarDate || !this._minDate || !this._maxDate) {
460
+ return false;
461
+ }
462
+ return calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();
463
+ }
408
464
  /**
409
465
  * The parser understands many formats, but we need one format
410
466
  * @protected
@@ -415,9 +471,28 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
415
471
  }
416
472
  return this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC
417
473
  }
418
- get _displayFormat() {
419
- // @ts-ignore oFormatOptions is a private API of DateFormat
420
- return this.getFormat().oFormatOptions.pattern;
474
+ /**
475
+ * The parser understands many formats, but we need one format
476
+ * @protected
477
+ */
478
+ normalizeFormattedValue(value) {
479
+ if (!this.getValueFormat().parse(value, true)) {
480
+ return "";
481
+ }
482
+ if (value === "") {
483
+ return value;
484
+ }
485
+ return this.getValueFormat().format(this.getValueFormat().parse(value, true), true); // it is important to both parse and format the date as UTC
486
+ }
487
+ /**
488
+ * The parser understands many formats, but we need one format
489
+ * @protected
490
+ */
491
+ normalizeDisplayValue(value) {
492
+ if (value === "" || !this.getDisplayFormat().parse(value, true)) {
493
+ return value;
494
+ }
495
+ return this.getDisplayFormat().format(this.getDisplayFormat().parse(value, true), true); // it is important to both parse and format the date as UTC
421
496
  }
422
497
  get _lastDayOfTheYear() {
423
498
  const currentYear = UI5Date.getInstance().getFullYear();
@@ -443,6 +518,15 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
443
518
  get showFooter() {
444
519
  return isPhone();
445
520
  }
521
+ get displayValue() {
522
+ if (!this.getValueFormat().parse(this.value, true)) {
523
+ return this.value;
524
+ }
525
+ if (!this.value) {
526
+ return "";
527
+ }
528
+ return this.getDisplayFormat().format(this.getValueFormat().parse(this.value, true), true);
529
+ }
446
530
  get accInfo() {
447
531
  return {
448
532
  "ariaRoledescription": this.dateAriaDescription,
@@ -561,7 +645,7 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
561
645
  * @returns The date as string
562
646
  */
563
647
  formatValue(date) {
564
- return this.getFormat().format(date);
648
+ return this.getValueFormat().format(date);
565
649
  }
566
650
  _togglePicker() {
567
651
  this.open = !this.open;
@@ -576,10 +660,10 @@ let DatePicker = DatePicker_1 = class DatePicker extends DateComponentBase {
576
660
  * @default null
577
661
  */
578
662
  get dateValue() {
579
- return this.liveValue ? this.getFormat().parse(this.liveValue) : this.getFormat().parse(this.value);
663
+ return this.liveValue ? this.getValueFormat().parse(this.liveValue) : this.getValueFormat().parse(this.value);
580
664
  }
581
665
  get dateValueUTC() {
582
- return this.liveValue ? this.getFormat().parse(this.liveValue, true) : this.getFormat().parse(this.value);
666
+ return this.liveValue ? this.getValueFormat().parse(this.liveValue, true) : this.getValueFormat().parse(this.value);
583
667
  }
584
668
  get styles() {
585
669
  return {