@ui5/webcomponents 2.4.1-rc.0 → 2.5.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 (483) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/cypress/specs/ColorPicker.cy.ts +27 -0
  3. package/cypress/specs/Form.cy.ts +250 -44
  4. package/cypress/specs/LitKeyFunction.cy.ts +23 -16
  5. package/cypress/specs/TableGrowing.cy.ts +358 -0
  6. package/cypress/specs/Tokenizer.cy.ts +114 -0
  7. package/cypress/specs/Toolbar.cy.ts +25 -0
  8. package/cypress/specs/Tree.cy.ts +29 -0
  9. package/cypress/specs/base/{AriaLabelHelper.cy.ts → AccessibilityTextsHelper.cy.ts} +37 -1
  10. package/cypress/specs/base/Events.cy.ts +1 -2
  11. package/cypress/support/commands.ts +1 -0
  12. package/dist/.tsbuildinfo +1 -1
  13. package/dist/Button.js +1 -1
  14. package/dist/Button.js.map +1 -1
  15. package/dist/Card.js +1 -1
  16. package/dist/Card.js.map +1 -1
  17. package/dist/CardHeader.d.ts +1 -1
  18. package/dist/CardHeader.js +1 -1
  19. package/dist/CardHeader.js.map +1 -1
  20. package/dist/Carousel.js +1 -1
  21. package/dist/Carousel.js.map +1 -1
  22. package/dist/CheckBox.js +1 -1
  23. package/dist/CheckBox.js.map +1 -1
  24. package/dist/ColorPicker.d.ts +9 -0
  25. package/dist/ColorPicker.js +14 -0
  26. package/dist/ColorPicker.js.map +1 -1
  27. package/dist/ComboBox.d.ts +0 -1
  28. package/dist/ComboBox.js +11 -13
  29. package/dist/ComboBox.js.map +1 -1
  30. package/dist/ComboBoxItem.d.ts +11 -5
  31. package/dist/ComboBoxItem.js +21 -8
  32. package/dist/ComboBoxItem.js.map +1 -1
  33. package/dist/ComboBoxItemGroup.d.ts +5 -20
  34. package/dist/ComboBoxItemGroup.js +9 -26
  35. package/dist/ComboBoxItemGroup.js.map +1 -1
  36. package/dist/DatePicker.js +1 -1
  37. package/dist/DatePicker.js.map +1 -1
  38. package/dist/Form.d.ts +12 -2
  39. package/dist/Form.js +21 -1
  40. package/dist/Form.js.map +1 -1
  41. package/dist/FormGroup.js +4 -1
  42. package/dist/FormGroup.js.map +1 -1
  43. package/dist/Input.js +1 -1
  44. package/dist/Input.js.map +1 -1
  45. package/dist/Link.js +1 -1
  46. package/dist/Link.js.map +1 -1
  47. package/dist/List.d.ts +27 -1
  48. package/dist/List.js +25 -4
  49. package/dist/List.js.map +1 -1
  50. package/dist/MultiComboBox.d.ts +1 -4
  51. package/dist/MultiComboBox.js +46 -37
  52. package/dist/MultiComboBox.js.map +1 -1
  53. package/dist/MultiComboBoxItem.d.ts +5 -1
  54. package/dist/MultiComboBoxItem.js +34 -4
  55. package/dist/MultiComboBoxItem.js.map +1 -1
  56. package/dist/MultiComboBoxItemGroup.d.ts +5 -10
  57. package/dist/MultiComboBoxItemGroup.js +12 -9
  58. package/dist/MultiComboBoxItemGroup.js.map +1 -1
  59. package/dist/Popover.js +4 -3
  60. package/dist/Popover.js.map +1 -1
  61. package/dist/Popup.js +1 -1
  62. package/dist/Popup.js.map +1 -1
  63. package/dist/RadioButton.js +1 -1
  64. package/dist/RadioButton.js.map +1 -1
  65. package/dist/RatingIndicator.js +1 -1
  66. package/dist/RatingIndicator.js.map +1 -1
  67. package/dist/SegmentedButtonItem.js +1 -1
  68. package/dist/SegmentedButtonItem.js.map +1 -1
  69. package/dist/Select.js +1 -1
  70. package/dist/Select.js.map +1 -1
  71. package/dist/StepInput.js +1 -1
  72. package/dist/StepInput.js.map +1 -1
  73. package/dist/Switch.js +1 -1
  74. package/dist/Switch.js.map +1 -1
  75. package/dist/Table.js +1 -1
  76. package/dist/Table.js.map +1 -1
  77. package/dist/TableGrowing.d.ts +5 -0
  78. package/dist/TableGrowing.js +21 -12
  79. package/dist/TableGrowing.js.map +1 -1
  80. package/dist/TextArea.js +1 -1
  81. package/dist/TextArea.js.map +1 -1
  82. package/dist/TimePicker.js +1 -1
  83. package/dist/TimePicker.js.map +1 -1
  84. package/dist/Tokenizer.d.ts +23 -2
  85. package/dist/Tokenizer.js +72 -15
  86. package/dist/Tokenizer.js.map +1 -1
  87. package/dist/Toolbar.js +1 -1
  88. package/dist/Toolbar.js.map +1 -1
  89. package/dist/Tree.d.ts +14 -1
  90. package/dist/Tree.js +6 -4
  91. package/dist/Tree.js.map +1 -1
  92. package/dist/css/themes/Avatar.css +1 -1
  93. package/dist/css/themes/AvatarGroup.css +1 -1
  94. package/dist/css/themes/Bar.css +1 -1
  95. package/dist/css/themes/Breadcrumbs.css +1 -1
  96. package/dist/css/themes/BusyIndicator.css +1 -1
  97. package/dist/css/themes/Button.css +1 -1
  98. package/dist/css/themes/Calendar.css +1 -1
  99. package/dist/css/themes/CalendarHeader.css +1 -1
  100. package/dist/css/themes/CalendarLegend.css +1 -1
  101. package/dist/css/themes/CalendarLegendItem.css +1 -1
  102. package/dist/css/themes/Card.css +1 -1
  103. package/dist/css/themes/CardHeader.css +1 -1
  104. package/dist/css/themes/Carousel.css +1 -1
  105. package/dist/css/themes/CheckBox.css +1 -1
  106. package/dist/css/themes/ColorPalette.css +1 -1
  107. package/dist/css/themes/ColorPaletteItem.css +1 -1
  108. package/dist/css/themes/ColorPalettePopover.css +1 -1
  109. package/dist/css/themes/ColorPicker.css +1 -1
  110. package/dist/css/themes/ComboBox.css +1 -1
  111. package/dist/css/themes/ComboBoxItem.css +1 -0
  112. package/dist/css/themes/DatePicker.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/FileUploader.css +1 -1
  117. package/dist/css/themes/Form.css +1 -1
  118. package/dist/css/themes/FormItem.css +1 -1
  119. package/dist/css/themes/FormLabelSpan.css +1 -1
  120. package/dist/css/themes/GrowingButton.css +1 -1
  121. package/dist/css/themes/Icon.css +1 -1
  122. package/dist/css/themes/Input.css +1 -1
  123. package/dist/css/themes/InputIcon.css +1 -1
  124. package/dist/css/themes/InputSharedStyles.css +1 -1
  125. package/dist/css/themes/Link.css +1 -1
  126. package/dist/css/themes/List.css +1 -1
  127. package/dist/css/themes/ListItem.css +1 -1
  128. package/dist/css/themes/ListItemBase.css +1 -1
  129. package/dist/css/themes/ListItemCustom.css +1 -1
  130. package/dist/css/themes/ListItemGroup.css +1 -1
  131. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  132. package/dist/css/themes/ListItemIcon.css +1 -1
  133. package/dist/css/themes/Menu.css +1 -1
  134. package/dist/css/themes/MenuItem.css +1 -1
  135. package/dist/css/themes/MessageStrip.css +1 -1
  136. package/dist/css/themes/MonthPicker.css +1 -1
  137. package/dist/css/themes/MultiComboBox.css +1 -1
  138. package/dist/css/themes/MultiComboBoxItem.css +1 -0
  139. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  140. package/dist/css/themes/MultiInput.css +1 -1
  141. package/dist/css/themes/NavigationMenu.css +1 -1
  142. package/dist/css/themes/NavigationMenuItem.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/TableHeaderRow.css +1 -1
  170. package/dist/css/themes/TableRow.css +1 -1
  171. package/dist/css/themes/TableRowBase.css +1 -1
  172. package/dist/css/themes/Tag.css +1 -1
  173. package/dist/css/themes/Text.css +1 -1
  174. package/dist/css/themes/TextArea.css +1 -1
  175. package/dist/css/themes/TimePicker.css +1 -1
  176. package/dist/css/themes/Toast.css +1 -1
  177. package/dist/css/themes/ToggleButton.css +1 -1
  178. package/dist/css/themes/Token.css +1 -1
  179. package/dist/css/themes/Tokenizer.css +1 -1
  180. package/dist/css/themes/TokenizerPopover.css +1 -1
  181. package/dist/css/themes/Toolbar.css +1 -1
  182. package/dist/css/themes/ToolbarPopover.css +1 -1
  183. package/dist/css/themes/TreeItem.css +1 -1
  184. package/dist/css/themes/ValueStateMessage.css +1 -1
  185. package/dist/css/themes/YearPicker.css +1 -1
  186. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  187. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  188. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  189. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  190. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  191. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  192. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  193. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  194. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  195. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  196. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  197. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  198. package/dist/custom-elements-internal.json +500 -59
  199. package/dist/custom-elements.json +360 -40
  200. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  201. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  202. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  203. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  204. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  205. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  206. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  207. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  208. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  209. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  210. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  211. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  212. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  213. package/dist/generated/i18n/i18n-defaults.js +2 -1
  214. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  215. package/dist/generated/templates/ColorPickerTemplate.lit.js +3 -1
  216. package/dist/generated/templates/ColorPickerTemplate.lit.js.map +1 -1
  217. package/dist/generated/templates/ComboBoxItemGroupTemplate.lit.d.ts +4 -0
  218. package/dist/generated/templates/ComboBoxItemGroupTemplate.lit.js +10 -0
  219. package/dist/generated/templates/ComboBoxItemGroupTemplate.lit.js.map +1 -0
  220. package/dist/generated/templates/ComboBoxItemTemplate.lit.d.ts +4 -0
  221. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +6 -0
  222. package/dist/generated/templates/ComboBoxItemTemplate.lit.js.map +1 -0
  223. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +6 -11
  224. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
  225. package/dist/generated/templates/ComboBoxTemplate.lit.js +6 -11
  226. package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
  227. package/dist/generated/templates/FormTemplate.lit.js +3 -3
  228. package/dist/generated/templates/FormTemplate.lit.js.map +1 -1
  229. package/dist/generated/templates/ListTemplate.lit.js +1 -1
  230. package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
  231. package/dist/generated/templates/MultiComboBoxItemGroupTemplate.lit.d.ts +4 -0
  232. package/dist/generated/templates/MultiComboBoxItemGroupTemplate.lit.js +10 -0
  233. package/dist/generated/templates/MultiComboBoxItemGroupTemplate.lit.js.map +1 -0
  234. package/dist/generated/templates/MultiComboBoxItemTemplate.lit.d.ts +4 -0
  235. package/dist/generated/templates/MultiComboBoxItemTemplate.lit.js +6 -0
  236. package/dist/generated/templates/MultiComboBoxItemTemplate.lit.js.map +1 -0
  237. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +11 -19
  238. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
  239. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +11 -19
  240. package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
  241. package/dist/generated/templates/TokenizerTemplate.lit.js +7 -6
  242. package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
  243. package/dist/generated/templates/TreeTemplate.lit.js +1 -1
  244. package/dist/generated/templates/TreeTemplate.lit.js.map +1 -1
  245. package/dist/generated/themes/Avatar.css.js +1 -1
  246. package/dist/generated/themes/Avatar.css.js.map +1 -1
  247. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  248. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  249. package/dist/generated/themes/Bar.css.js +1 -1
  250. package/dist/generated/themes/Bar.css.js.map +1 -1
  251. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  252. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  253. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  254. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  255. package/dist/generated/themes/Button.css.js +1 -1
  256. package/dist/generated/themes/Button.css.js.map +1 -1
  257. package/dist/generated/themes/Calendar.css.js +1 -1
  258. package/dist/generated/themes/Calendar.css.js.map +1 -1
  259. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  260. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  261. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  262. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  263. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  264. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  265. package/dist/generated/themes/Card.css.js +1 -1
  266. package/dist/generated/themes/Card.css.js.map +1 -1
  267. package/dist/generated/themes/CardHeader.css.js +1 -1
  268. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  269. package/dist/generated/themes/Carousel.css.js +1 -1
  270. package/dist/generated/themes/Carousel.css.js.map +1 -1
  271. package/dist/generated/themes/CheckBox.css.js +1 -1
  272. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  273. package/dist/generated/themes/ColorPalette.css.js +1 -1
  274. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  275. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  276. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  277. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  278. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  279. package/dist/generated/themes/ColorPicker.css.js +1 -1
  280. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  281. package/dist/generated/themes/ComboBox.css.js +1 -1
  282. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  283. package/dist/generated/themes/ComboBoxItem.css.d.ts +3 -0
  284. package/dist/generated/themes/ComboBoxItem.css.js +9 -0
  285. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -0
  286. package/dist/generated/themes/DatePicker.css.js +1 -1
  287. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  288. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  289. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  290. package/dist/generated/themes/DayPicker.css.js +1 -1
  291. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  292. package/dist/generated/themes/Dialog.css.js +1 -1
  293. package/dist/generated/themes/Dialog.css.js.map +1 -1
  294. package/dist/generated/themes/FileUploader.css.js +1 -1
  295. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  296. package/dist/generated/themes/Form.css.js +1 -1
  297. package/dist/generated/themes/Form.css.js.map +1 -1
  298. package/dist/generated/themes/FormItem.css.js +1 -1
  299. package/dist/generated/themes/FormItem.css.js.map +1 -1
  300. package/dist/generated/themes/FormLabelSpan.css.js +1 -1
  301. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
  302. package/dist/generated/themes/GrowingButton.css.js +1 -1
  303. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  304. package/dist/generated/themes/Icon.css.js +1 -1
  305. package/dist/generated/themes/Icon.css.js.map +1 -1
  306. package/dist/generated/themes/Input.css.js +1 -1
  307. package/dist/generated/themes/Input.css.js.map +1 -1
  308. package/dist/generated/themes/InputIcon.css.js +1 -1
  309. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  310. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  311. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  312. package/dist/generated/themes/Link.css.js +1 -1
  313. package/dist/generated/themes/Link.css.js.map +1 -1
  314. package/dist/generated/themes/List.css.js +1 -1
  315. package/dist/generated/themes/List.css.js.map +1 -1
  316. package/dist/generated/themes/ListItem.css.js +1 -1
  317. package/dist/generated/themes/ListItem.css.js.map +1 -1
  318. package/dist/generated/themes/ListItemBase.css.js +1 -1
  319. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  320. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  321. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  322. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  323. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  324. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  325. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  326. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  327. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  328. package/dist/generated/themes/Menu.css.js +1 -1
  329. package/dist/generated/themes/Menu.css.js.map +1 -1
  330. package/dist/generated/themes/MenuItem.css.js +1 -1
  331. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  332. package/dist/generated/themes/MessageStrip.css.js +1 -1
  333. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  334. package/dist/generated/themes/MonthPicker.css.js +1 -1
  335. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  336. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  337. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  338. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +3 -0
  339. package/dist/generated/themes/MultiComboBoxItem.css.js +9 -0
  340. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -0
  341. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  342. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  343. package/dist/generated/themes/MultiInput.css.js +1 -1
  344. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  345. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  346. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  347. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  348. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  349. package/dist/generated/themes/OptionBase.css.js +1 -1
  350. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  351. package/dist/generated/themes/Panel.css.js +1 -1
  352. package/dist/generated/themes/Panel.css.js.map +1 -1
  353. package/dist/generated/themes/Popover.css.js +1 -1
  354. package/dist/generated/themes/Popover.css.js.map +1 -1
  355. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  356. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  357. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  358. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  359. package/dist/generated/themes/RadioButton.css.js +1 -1
  360. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  361. package/dist/generated/themes/RangeSlider.css.js +1 -1
  362. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  363. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  364. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  365. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  366. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  367. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  368. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  369. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  370. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  371. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  372. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  373. package/dist/generated/themes/Select.css.js +1 -1
  374. package/dist/generated/themes/Select.css.js.map +1 -1
  375. package/dist/generated/themes/SliderBase.css.js +1 -1
  376. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  377. package/dist/generated/themes/SplitButton.css.js +1 -1
  378. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  379. package/dist/generated/themes/StepInput.css.js +1 -1
  380. package/dist/generated/themes/StepInput.css.js.map +1 -1
  381. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  382. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  383. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  384. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  385. package/dist/generated/themes/Switch.css.js +1 -1
  386. package/dist/generated/themes/Switch.css.js.map +1 -1
  387. package/dist/generated/themes/TabContainer.css.js +1 -1
  388. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  389. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  390. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  391. package/dist/generated/themes/TabInStrip.css.js +1 -1
  392. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  393. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  394. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  395. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  396. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  397. package/dist/generated/themes/Table.css.js +1 -1
  398. package/dist/generated/themes/Table.css.js.map +1 -1
  399. package/dist/generated/themes/TableCellBase.css.js +1 -1
  400. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  401. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  402. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  403. package/dist/generated/themes/TableRow.css.js +1 -1
  404. package/dist/generated/themes/TableRow.css.js.map +1 -1
  405. package/dist/generated/themes/TableRowBase.css.js +1 -1
  406. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  407. package/dist/generated/themes/Tag.css.js +1 -1
  408. package/dist/generated/themes/Tag.css.js.map +1 -1
  409. package/dist/generated/themes/Text.css.js +1 -1
  410. package/dist/generated/themes/Text.css.js.map +1 -1
  411. package/dist/generated/themes/TextArea.css.js +1 -1
  412. package/dist/generated/themes/TextArea.css.js.map +1 -1
  413. package/dist/generated/themes/TimePicker.css.js +1 -1
  414. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  415. package/dist/generated/themes/Toast.css.js +1 -1
  416. package/dist/generated/themes/Toast.css.js.map +1 -1
  417. package/dist/generated/themes/ToggleButton.css.js +1 -1
  418. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  419. package/dist/generated/themes/Token.css.js +1 -1
  420. package/dist/generated/themes/Token.css.js.map +1 -1
  421. package/dist/generated/themes/Tokenizer.css.js +1 -1
  422. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  423. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  424. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  425. package/dist/generated/themes/Toolbar.css.js +1 -1
  426. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  427. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  428. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  429. package/dist/generated/themes/TreeItem.css.js +1 -1
  430. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  431. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  432. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  433. package/dist/generated/themes/YearPicker.css.js +1 -1
  434. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  435. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  436. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  437. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  438. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  439. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  440. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  441. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  442. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  443. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  444. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  445. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  446. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  447. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  448. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  449. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  450. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  451. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  452. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  453. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  454. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  455. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  456. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  457. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  458. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  459. package/dist/types/ColorPickerDisplayMode.d.ts +17 -0
  460. package/dist/types/ColorPickerDisplayMode.js +19 -0
  461. package/dist/types/ColorPickerDisplayMode.js.map +1 -0
  462. package/dist/vscode.html-custom-data.json +57 -7
  463. package/dist/web-types.json +155 -16
  464. package/package.json +9 -9
  465. package/src/ColorPicker.hbs +60 -56
  466. package/src/ComboBoxItem.hbs +18 -0
  467. package/src/ComboBoxItemGroup.hbs +9 -0
  468. package/src/ComboBoxPopover.hbs +2 -31
  469. package/src/Form.hbs +3 -3
  470. package/src/List.hbs +1 -0
  471. package/src/ListItemGroup.hbs +11 -4
  472. package/src/MultiComboBox.hbs +10 -12
  473. package/src/MultiComboBoxItem.hbs +19 -0
  474. package/src/MultiComboBoxItemGroup.hbs +9 -0
  475. package/src/MultiComboBoxPopover.hbs +5 -36
  476. package/src/Tokenizer.hbs +28 -17
  477. package/src/Tree.hbs +4 -1
  478. package/src/i18n/messagebundle.properties +3 -0
  479. package/src/themes/ComboBoxItem.css +14 -0
  480. package/src/themes/MultiComboBoxItem.css +19 -0
  481. package/src/themes/MultiComboBoxPopover.css +5 -1
  482. package/src/themes/Table.css +1 -4
  483. package/src/themes/Tokenizer.css +45 -0
@@ -1,15 +1,14 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
1
  import type { IComboBoxItem } from "./ComboBox.js";
2
+ import ListItemBase from "./ListItemBase.js";
3
3
  /**
4
4
  * @class
5
5
  * The `ui5-cb-item` represents the item for a `ui5-combobox`.
6
6
  * @constructor
7
- * @extends UI5Element
8
- * @abstract
7
+ * @extends ListItemBase
9
8
  * @implements {IComboBoxItem}
10
9
  * @public
11
10
  */
12
- declare class ComboBoxItem extends UI5Element implements IComboBoxItem {
11
+ declare class ComboBoxItem extends ListItemBase implements IComboBoxItem {
13
12
  /**
14
13
  * Defines the text of the component.
15
14
  * @default undefined
@@ -38,6 +37,13 @@ declare class ComboBoxItem extends UI5Element implements IComboBoxItem {
38
37
  * @protected
39
38
  */
40
39
  selected: boolean;
41
- get stableDomRef(): string;
40
+ /**
41
+ * Defines the markup text that will be displayed as suggestion.
42
+ * Used for highlighting the matching parts of the text.
43
+ *
44
+ * @since 2.4.0
45
+ * @private
46
+ */
47
+ markupText: string;
42
48
  }
43
49
  export default ComboBoxItem;
@@ -6,17 +6,18 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
8
8
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
9
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
9
+ import ListItemBase from "./ListItemBase.js";
10
+ import ComboBoxItemTemplate from "./generated/templates/ComboBoxItemTemplate.lit.js";
11
+ import ComboboxItemCss from "./generated/themes/ComboBoxItem.css.js";
10
12
  /**
11
13
  * @class
12
14
  * The `ui5-cb-item` represents the item for a `ui5-combobox`.
13
15
  * @constructor
14
- * @extends UI5Element
15
- * @abstract
16
+ * @extends ListItemBase
16
17
  * @implements {IComboBoxItem}
17
18
  * @public
18
19
  */
19
- let ComboBoxItem = class ComboBoxItem extends UI5Element {
20
+ let ComboBoxItem = class ComboBoxItem extends ListItemBase {
20
21
  constructor() {
21
22
  super(...arguments);
22
23
  /**
@@ -34,9 +35,14 @@ let ComboBoxItem = class ComboBoxItem extends UI5Element {
34
35
  * @protected
35
36
  */
36
37
  this.selected = false;
37
- }
38
- get stableDomRef() {
39
- return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
38
+ /**
39
+ * Defines the markup text that will be displayed as suggestion.
40
+ * Used for highlighting the matching parts of the text.
41
+ *
42
+ * @since 2.4.0
43
+ * @private
44
+ */
45
+ this.markupText = "";
40
46
  }
41
47
  };
42
48
  __decorate([
@@ -54,8 +60,15 @@ __decorate([
54
60
  __decorate([
55
61
  property({ type: Boolean })
56
62
  ], ComboBoxItem.prototype, "selected", void 0);
63
+ __decorate([
64
+ property()
65
+ ], ComboBoxItem.prototype, "markupText", void 0);
57
66
  ComboBoxItem = __decorate([
58
- customElement("ui5-cb-item")
67
+ customElement({
68
+ tag: "ui5-cb-item",
69
+ template: ComboBoxItemTemplate,
70
+ styles: [ListItemBase.styles, ComboboxItemCss],
71
+ })
59
72
  ], ComboBoxItem);
60
73
  ComboBoxItem.define();
61
74
  export default ComboBoxItem;
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBoxItem.js","sourceRoot":"","sources":["../src/ComboBoxItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAGpE;;;;;;;;GAQG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;IAArC;;QAkBC;;;WAGG;QAEH,eAAU,GAAG,KAAK,CAAC;QAEnB;;;WAGG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;WAGG;QAEH,aAAQ,GAAG,KAAK,CAAC;IAKlB,CAAC;IAHA,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC;IAC5E,CAAC;CACD,CAAA;AAnCA;IADC,QAAQ,EAAE;0CACG;AASd;IADC,QAAQ,EAAE;oDACa;AAOxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gDAC5B;AAOnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACZ;AAOhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACX;AArCZ,YAAY;IADjB,aAAa,CAAC,aAAa,CAAC;GACvB,YAAY,CA0CjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { IComboBoxItem } from \"./ComboBox.js\";\n\n/**\n * @class\n * The `ui5-cb-item` represents the item for a `ui5-combobox`.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @implements {IComboBoxItem}\n * @public\n */\n@customElement(\"ui5-cb-item\")\nclass ComboBoxItem extends UI5Element implements IComboBoxItem {\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the additional text of the component.\n\t * @default undefined\n\t * @since 1.0.0-rc.11\n\t * @public\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Indicates whether the item is filtered\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isVisible = false;\n\n\t/**\n\t * Indicates whether the item is focssed\n\t * @protected\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * Indicates whether the item is selected\n\t * @protected\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n}\n\nComboBoxItem.define();\n\nexport default ComboBoxItem;\n"]}
1
+ {"version":3,"file":"ComboBoxItem.js","sourceRoot":"","sources":["../src/ComboBoxItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,oBAAoB,MAAM,mDAAmD,CAAC;AACrF,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE;;;;;;;GAOG;AAMH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,YAAY;IAAvC;;QAkBC;;;WAGG;QAEH,eAAU,GAAG,KAAK,CAAC;QAEnB;;;WAGG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;WAGG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;;;WAMG;QAEH,eAAU,GAAG,EAAE,CAAC;IACjB,CAAC;CAAA,CAAA;AAzCA;IADC,QAAQ,EAAE;0CACG;AASd;IADC,QAAQ,EAAE;oDACa;AAOxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gDAC5B;AAOnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACZ;AAOhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACX;AAUjB;IADC,QAAQ,EAAE;gDACK;AA/CX,YAAY;IALjB,aAAa,CAAC;QACd,GAAG,EAAE,aAAa;QAClB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,eAAe,CAAC;KAC9C,CAAC;GACI,YAAY,CAgDjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type { IComboBoxItem } from \"./ComboBox.js\";\nimport ListItemBase from \"./ListItemBase.js\";\n\nimport ComboBoxItemTemplate from \"./generated/templates/ComboBoxItemTemplate.lit.js\";\nimport ComboboxItemCss from \"./generated/themes/ComboBoxItem.css.js\";\n/**\n * @class\n * The `ui5-cb-item` represents the item for a `ui5-combobox`.\n * @constructor\n * @extends ListItemBase\n * @implements {IComboBoxItem}\n * @public\n */\n@customElement({\n\ttag: \"ui5-cb-item\",\n\ttemplate: ComboBoxItemTemplate,\n\tstyles: [ListItemBase.styles, ComboboxItemCss],\n})\nclass ComboBoxItem extends ListItemBase implements IComboBoxItem {\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the additional text of the component.\n\t * @default undefined\n\t * @since 1.0.0-rc.11\n\t * @public\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Indicates whether the item is filtered\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isVisible = false;\n\n\t/**\n\t * Indicates whether the item is focssed\n\t * @protected\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * Indicates whether the item is selected\n\t * @protected\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the markup text that will be displayed as suggestion.\n\t * Used for highlighting the matching parts of the text.\n\t *\n\t * @since 2.4.0\n\t * @private\n\t */\n\t@property()\n\tmarkupText = \"\";\n}\n\nComboBoxItem.define();\n\nexport default ComboBoxItem;\n"]}
@@ -1,39 +1,24 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
1
  import type { IComboBoxItem } from "./ComboBox.js";
2
+ import ListItemGroup from "./ListItemGroup.js";
3
+ import type ComboBoxItem from "./ComboBoxItem.js";
3
4
  /**
4
5
  * @class
5
6
  * The `ui5-cb-group-item` is type of suggestion item,
6
7
  * that can be used to split the `ui5-combobox` suggestions into groups.
7
8
  * @constructor
8
- * @extends UI5Element
9
+ * @extends ListItemGroup
9
10
  * @abstract
10
11
  * @public
11
12
  * @implements {IComboBoxItem}
12
13
  * @since 1.0.0-rc.15
13
14
  */
14
- declare class ComboBoxItemGroup extends UI5Element implements IComboBoxItem {
15
- /**
16
- * Defines the text of the component.
17
- * @default undefined
18
- * @public
19
- */
20
- headerText?: string;
21
- /**
22
- * Indicates whether the item is focused
23
- * @protected
24
- */
25
- focused: boolean;
15
+ declare class ComboBoxItemGroup extends ListItemGroup implements IComboBoxItem {
26
16
  /**
27
17
  * Defines the items of the <code>ui5-cb-item-group</code>.
28
18
  * @public
29
19
  */
30
- items: Array<IComboBoxItem>;
31
- /**
32
- * Used to avoid tag name checks
33
- * @protected
34
- */
20
+ items: Array<ComboBoxItem>;
35
21
  get isGroupItem(): boolean;
36
- get stableDomRef(): string;
37
22
  get _isVisible(): boolean;
38
23
  }
39
24
  declare const isInstanceOfComboBoxItemGroup: (object: any) => object is ComboBoxItemGroup;
@@ -5,58 +5,41 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
8
- import property from "@ui5/webcomponents-base/dist/decorators/property.js";
9
8
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
10
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
9
+ import ListItemGroup from "./ListItemGroup.js";
10
+ import ComboBoxItemGroupTemplate from "./generated/templates/ComboBoxItemGroupTemplate.lit.js";
11
11
  /**
12
12
  * @class
13
13
  * The `ui5-cb-group-item` is type of suggestion item,
14
14
  * that can be used to split the `ui5-combobox` suggestions into groups.
15
15
  * @constructor
16
- * @extends UI5Element
16
+ * @extends ListItemGroup
17
17
  * @abstract
18
18
  * @public
19
19
  * @implements {IComboBoxItem}
20
20
  * @since 1.0.0-rc.15
21
21
  */
22
- let ComboBoxItemGroup = class ComboBoxItemGroup extends UI5Element {
23
- constructor() {
24
- super(...arguments);
25
- /**
26
- * Indicates whether the item is focused
27
- * @protected
28
- */
29
- this.focused = false;
30
- }
31
- /**
32
- * Used to avoid tag name checks
33
- * @protected
34
- */
22
+ let ComboBoxItemGroup = class ComboBoxItemGroup extends ListItemGroup {
35
23
  get isGroupItem() {
36
24
  return true;
37
25
  }
38
- get stableDomRef() {
39
- return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
40
- }
41
26
  get _isVisible() {
42
27
  return this.items.some(item => item._isVisible);
43
28
  }
44
29
  };
45
- __decorate([
46
- property()
47
- ], ComboBoxItemGroup.prototype, "headerText", void 0);
48
- __decorate([
49
- property({ type: Boolean })
50
- ], ComboBoxItemGroup.prototype, "focused", void 0);
51
30
  __decorate([
52
31
  slot({
53
32
  "default": true,
54
33
  invalidateOnChildChange: true,
34
+ individualSlots: true,
55
35
  type: HTMLElement,
56
36
  })
57
37
  ], ComboBoxItemGroup.prototype, "items", void 0);
58
38
  ComboBoxItemGroup = __decorate([
59
- customElement("ui5-cb-item-group")
39
+ customElement({
40
+ tag: "ui5-cb-item-group",
41
+ template: ComboBoxItemGroupTemplate,
42
+ })
60
43
  ], ComboBoxItemGroup);
61
44
  ComboBoxItemGroup.define();
62
45
  const isInstanceOfComboBoxItemGroup = (object) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBoxItemGroup.js","sourceRoot":"","sources":["../src/ComboBoxItemGroup.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAGpE;;;;;;;;;;GAUG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU;IAA1C;;QASE;;;WAGG;QAEH,YAAO,GAAG,KAAK,CAAA;IA4BjB,CAAC;IAfC;;;OAGG;IACH,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC;IAC5E,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;CACF,CAAA;AAnCC;IADC,QAAQ,EAAE;qDACS;AAOpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kDACb;AAWf;IALC,IAAI,CAAC;QACL,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE,IAAI;QAC7B,IAAI,EAAE,WAAW;KACjB,CAAC;gDAC2B;AAzBzB,iBAAiB;IADtB,aAAa,CAAC,mBAAmB,CAAC;GAC7B,iBAAiB,CA0CtB;AAED,iBAAiB,CAAC,MAAM,EAAE,CAAC;AAE3B,MAAM,6BAA6B,GAAG,CAAC,MAAW,EAA+B,EAAE;IAClF,OAAO,aAAa,IAAI,MAAM,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EAAE,6BAA6B,EAAE,CAAC;AACzC,eAAe,iBAAiB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { IComboBoxItem } from \"./ComboBox.js\";\n\n/**\n * @class\n * The `ui5-cb-group-item` is type of suggestion item,\n * that can be used to split the `ui5-combobox` suggestions into groups.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @implements {IComboBoxItem}\n * @since 1.0.0-rc.15\n */\n@customElement(\"ui5-cb-item-group\")\nclass ComboBoxItemGroup extends UI5Element implements IComboBoxItem {\n\t\t/**\n\t\t * Defines the text of the component.\n\t\t * @default undefined\n\t\t * @public\n\t\t */\n\t\t@property()\n\t\theaderText?: string;\n\n\t\t/**\n\t\t * Indicates whether the item is focused\n\t\t * @protected\n\t\t */\n\t\t@property({ type: Boolean })\n\t\tfocused = false\n\n\t\t/**\n\t\t * Defines the items of the <code>ui5-cb-item-group</code>.\n\t\t * @public\n\t\t */\n\t\t@slot({\n\t\t\t\"default\": true,\n\t\t\tinvalidateOnChildChange: true,\n\t\t\ttype: HTMLElement,\n\t\t})\n\t\titems!: Array<IComboBoxItem>;\n\n\t\t/**\n\t\t * Used to avoid tag name checks\n\t\t * @protected\n\t\t */\n\t\tget isGroupItem(): boolean {\n\t\t\treturn true;\n\t\t}\n\n\t\tget stableDomRef() {\n\t\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t\t}\n\n\t\tget _isVisible() {\n\t\t\treturn this.items.some(item => item._isVisible);\n\t\t}\n}\n\nComboBoxItemGroup.define();\n\nconst isInstanceOfComboBoxItemGroup = (object: any): object is ComboBoxItemGroup => {\n\treturn \"isGroupItem\" in object;\n};\n\nexport { isInstanceOfComboBoxItemGroup };\nexport default ComboBoxItemGroup;\n"]}
1
+ {"version":3,"file":"ComboBoxItemGroup.js","sourceRoot":"","sources":["../src/ComboBoxItemGroup.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,OAAO,yBAAyB,MAAM,wDAAwD,CAAC;AAE/F;;;;;;;;;;GAUG;AAKH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,aAAa;IAa5C,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;CACD,CAAA;AATA;IANC,IAAI,CAAC;QACL,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE,IAAI;QAC7B,eAAe,EAAE,IAAI;QACrB,IAAI,EAAE,WAAW;KACjB,CAAC;gDAC0B;AAXvB,iBAAiB;IAJtB,aAAa,CAAC;QACd,GAAG,EAAE,mBAAmB;QACxB,QAAQ,EAAE,yBAAyB;KACnC,CAAC;GACI,iBAAiB,CAoBtB;AAED,iBAAiB,CAAC,MAAM,EAAE,CAAC;AAE3B,MAAM,6BAA6B,GAAG,CAAC,MAAW,EAA+B,EAAE;IAClF,OAAO,aAAa,IAAI,MAAM,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EAAE,6BAA6B,EAAE,CAAC;AACzC,eAAe,iBAAiB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport type { IComboBoxItem } from \"./ComboBox.js\";\nimport ListItemGroup from \"./ListItemGroup.js\";\nimport type ComboBoxItem from \"./ComboBoxItem.js\";\nimport ComboBoxItemGroupTemplate from \"./generated/templates/ComboBoxItemGroupTemplate.lit.js\";\n\n/**\n * @class\n * The `ui5-cb-group-item` is type of suggestion item,\n * that can be used to split the `ui5-combobox` suggestions into groups.\n * @constructor\n * @extends ListItemGroup\n * @abstract\n * @public\n * @implements {IComboBoxItem}\n * @since 1.0.0-rc.15\n */\n@customElement({\n\ttag: \"ui5-cb-item-group\",\n\ttemplate: ComboBoxItemGroupTemplate,\n})\nclass ComboBoxItemGroup extends ListItemGroup implements IComboBoxItem {\n\t/**\n\t * Defines the items of the <code>ui5-cb-item-group</code>.\n\t * @public\n\t */\n\t@slot({\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: true,\n\t\tindividualSlots: true,\n\t\ttype: HTMLElement,\n\t})\n\titems!: Array<ComboBoxItem>;\n\n\tget isGroupItem(): boolean {\n\t\treturn true;\n\t}\n\n\tget _isVisible() {\n\t\treturn this.items.some(item => item._isVisible);\n\t}\n}\n\nComboBoxItemGroup.define();\n\nconst isInstanceOfComboBoxItemGroup = (object: any): object is ComboBoxItemGroup => {\n\treturn \"isGroupItem\" in object;\n};\n\nexport { isInstanceOfComboBoxItemGroup };\nexport default ComboBoxItemGroup;\n"]}
@@ -15,7 +15,7 @@ import modifyDateBy from "@ui5/webcomponents-localization/dist/dates/modifyDateB
15
15
  import getRoundedTimestamp from "@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js";
16
16
  import getTodayUTCTimestamp from "@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js";
17
17
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
18
- import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
18
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
19
19
  import { submitForm } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
20
20
  import { isPageUp, isPageDown, isPageUpShift, isPageDownShift, isPageUpShiftCtrl, isPageDownShiftCtrl, isShow, isF4, isEnter, isTabNext, isTabPrevious, isF6Next, isF6Previous, } from "@ui5/webcomponents-base/dist/Keys.js";
21
21
  import AriaHasPopup from "@ui5/webcomponents-base/dist/types/AriaHasPopup.js";
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAGnE,OAAO,YAAY,MAAM,4DAA4D,CAAC;AACtF,OAAO,YAAY,MAAM,4DAA4D,CAAC;AACtF,OAAO,mBAAmB,MAAM,mEAAmE,CAAC;AACpG,OAAO,oBAAoB,MAAM,oEAAoE,CAAC;AACtG,OAAO,UAAU,MAAM,kDAAkD,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,mEAAmE,CAAC;AAE/F,OAAO,EACN,QAAQ,EACR,UAAU,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,IAAI,EACJ,OAAO,EACP,SAAS,EACT,aAAa,EACb,QAAQ,EACR,YAAY,GACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,YAAY,MAAM,oDAAoD,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AACjE,OAAO,gDAAgD,CAAC;AACxD,OAAO,0CAA0C,CAAC;AAClD,OAAO,EACN,0BAA0B,EAC1B,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,kCAAkC,GAClC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,OAAO,qBAAqB,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,kBAAkB,MAAM,iDAAiD,CAAC;AAEjF,gCAAgC;AAChC,OAAO,qEAAqE,CAAC;AAE7E,SAAS;AACT,OAAO,aAAa,MAAM,sCAAsC,CAAC;AACjE,OAAO,oBAAoB,MAAM,6CAA6C,CAAC;AAC/E,OAAO,0BAA0B,MAAM,mDAAmD,CAAC;AAiB3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AA2GH,IAAM,UAAU,kBAAhB,MAAM,UAAW,SAAQ,iBAAiB;IAA1C;;QACC;;;;;;WAMG;QAEH,UAAK,GAAG,EAAE,CAAC;QAEX;;;;WAIG;QAEH,eAAU,GAAoB,MAAM,CAAA;QAEpC;;;;;WAKG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAwBjB;;;;;;;;WAQG;QAEH,oBAAe,GAAG,KAAK,CAAC;QAExB;;;;;WAKG;QAEH,SAAI,GAAG,KAAK,CAAC;QAwBb,2BAAsB,GAAG,KAAK,CAAC;IA+ehC,CAAC;IAzdA,IAAI,mBAAmB;QACtB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,YAAY;QACf,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB;QACtB,OAAO,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAiB,CAAA,EAAE,mBAAmB,EAAE,CAAC;IAChF,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,6BAA6B;QAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,OAAO,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,qDAAqD;QACnE,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,4BAA4B;QAC3B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,6BAA6B;QAC5B,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACnD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,WAAW,CAAC;IAChD,CAAC;IAED,iBAAiB;QAChB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAwB,CAAW,CAAC;YAE3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,+BAA+B,IAAI,MAAM,SAAS,2DAA2D,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,sBAAsB;YAC1K,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAoB,0BAA0B,CAAE;aACnF,aAAa,CAAW,gBAAgB,CAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,IAAI,sBAAsB;QACzB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,IAAI,kBAAkB;QACrB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7E,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACpD,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACH,IAAI,sBAAsB;QACzB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,EAAE,CAAC;IACX,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,+CAA+C;YACnE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBACd,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC7B,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,CAAC;QACF,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtI,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO;QACR,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAC1B,UAAU,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;aAAM,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,MAAc,EAAE,IAAY,EAAE,YAAsB;QACpE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO;QACR,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1I,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,yBAAyB,CAAC,KAAa,EAAE,cAAuB,EAAE,MAAqB,EAAE,WAAW,GAAG,IAAI;QAC1G,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;YAC7B,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,+DAA+D;QACpG,CAAC;QAED,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;QAEjC,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,2DAA2D;QACtF,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAA8B,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBAChF,YAAY,GAAG,KAAK,CAAC;YACtB,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,KAAK,KAAK,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;gBAC3E,OAAO,CAAC,iEAAiE;YAC1E,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,GAAG,aAAa,CAAC;YAEvC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC;QAE3C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;QAEhE,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAwC,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAErJ,IAAI,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC;QACtC,CAAC;IACF,CAAC;IAED,SAAS;QACR,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAQ,aAAa,CAAE,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,cAAc,KAAI,CAAC;IAEnB;;;OAGG;IACH,cAAc,CAAC,CAAQ;QACtB,IAAI,CAAC,yBAAyB,CAAE,CAAC,CAAC,MAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,CAAgB;QAC7B,IAAI,CAAC,yBAAyB,CAAE,CAAC,CAAC,MAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,KAAa;QAChC,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACb,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,CAAa;QACnB,IAAI,OAAO,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,iBAAkB,CAAC,MAAM,GAAG,IAAI,CAAC;YACtC,IAAI,CAAC,iBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;YACpC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,0CAA0C;QAC/D,CAAC;IACF,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAa;QACpB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAa;QAC3B,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAE5D,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvD,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,YAAY,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC/G,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,KAAa;QAC3B,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,2DAA2D;IACvI,CAAC;IAED,IAAI,cAAc;QACjB,2DAA2D;QAC3D,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,OAAiB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAChF,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,KAAK;QACR,OAAO,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,qBAAqB,EAAE,IAAI,CAAC,mBAAmB;YAC/C,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE;YAC/C,cAAc,EAAE,IAAI,CAAC,QAAQ;YAC7B,WAAW,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC5C,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,YAAY;QACf,OAAO,eAAe,CAAC;IACxB,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAC1E,CAAC;IAED;;;OAGG;IACH,IAAI,iBAAiB;QACpB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACd,MAAM,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACrD,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,kBAAkB,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;YACrD,WAAW,GAAG,MAAM,CAAC;QACtB,CAAC;aAAM,IAAI,kBAAkB,KAAK,mBAAmB,CAAC,UAAU,EAAE,CAAC;YAClE,WAAW,GAAG,OAAO,CAAC;QACvB,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACZ,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,YAAY;QACX,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAoB,0BAA0B,CAAE,CAAC;IACvF,CAAC;IAED,cAAc;QACb,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzC,CAAC;IAED,IAAI,oBAAoB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAA0D,CAAC;QACxF,MAAM,kBAAkB,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE;YAC1E,OAAO,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,mBAAmB,CAAC,cAAc,CAAC;QAC3C,CAAC;QAED,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC5F,OAAO,mBAAmB,CAAC,UAAU,CAAC;QACvC,CAAC;QAED,OAAO,mBAAmB,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,CAAkD;QACvE,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,sBAAsB;QACrB,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,qBAAqB;QACpB,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;IACtC,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,IAAU;QACrB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,oBAAoB;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAS,CAAC;IACrH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAS,CAAC;IAC3H,CAAC;IAED,IAAI,MAAM;QACT,OAAO;YACN,IAAI,EAAE;gBACL,KAAK,EAAE,MAAM;aACb;SACD,CAAC;IACH,CAAC;IAED,IAAI,IAAI;QACP,OAAO,SAAS,CAAC,IAAI,CAAC;IACvB,CAAC;CACD,CAAA;AAnlBA;IADC,QAAQ,EAAE;yCACA;AAQX;IADC,QAAQ,EAAE;8CACyB;AASpC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAYjB;IADC,QAAQ,EAAE;+CACU;AAUrB;IADC,QAAQ,EAAE;wCACG;AAYd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;mDACJ;AASxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACf;AASb;IADC,QAAQ,EAAE;kDACa;AASxB;IADC,QAAQ,EAAE;qDACgB;AAG3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDACC;AAG5B;IADC,QAAQ,EAAE;0DACoB;AAe/B;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;qDACW;AAKhC;IADN,IAAI,CAAC,oBAAoB,CAAC;oCACG;AAjIzB,UAAU;IAzGf,aAAa,CAAC;QACd,GAAG,EAAE,iBAAiB;QACtB,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,kBAAkB;QAC5B,MAAM,EAAE;YACP,aAAa;YACb,0BAA0B;YAC1B,oBAAoB;SACpB;QACD,YAAY,EAAE;YACb,IAAI;YACJ,iBAAiB;YACjB,QAAQ;YACR,qBAAqB;YACrB,KAAK;YACL,MAAM;SACN;KACD,CAAC;IACF;;;;;OAKG;;IACF,KAAK,CAA8B,QAAQ,EAAE;QAC7C,MAAM,EAAE;YACP;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;;OAKG;;IACF,KAAK,CAA6B,OAAO,EAAE;QAC3C,MAAM,EAAE;YACP;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;;;;OAOG;;IACF,KAAK,CAAwC,oBAAoB,EAAE;QACnE,MAAM,EAAE;YACP;;eAEG;YACH,UAAU,EAAE;gBACX,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;OAIG;;IACF,KAAK,CAAC,MAAM,CAAC;IACd;;;;OAIG;;IACF,KAAK,CAAC,OAAO,CAAC;GACT,UAAU,CA4lBf;AAED,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,eAAe,UAAU,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getRoundedTimestamp from \"@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisShow,\n\tisF4,\n\tisEnter,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\nimport { isPhone, isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport \"@ui5/webcomponents-icons/dist/appointment-2.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport {\n\tDATEPICKER_OPEN_ICON_TITLE,\n\tDATEPICKER_DATE_DESCRIPTION,\n\tINPUT_SUGGESTIONS_TITLE,\n\tFORM_TEXTFIELD_REQUIRED,\n\tDATEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateComponentBase from \"./DateComponentBase.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport CalendarDateComponent from \"./CalendarDate.js\";\nimport Input from \"./Input.js\";\nimport InputType from \"./types/InputType.js\";\nimport IconMode from \"./types/IconMode.js\";\nimport DatePickerTemplate from \"./generated/templates/DatePickerTemplate.lit.js\";\n\n// default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Styles\nimport datePickerCss from \"./generated/themes/DatePicker.css.js\";\nimport datePickerPopoverCss from \"./generated/themes/DatePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\n\ntype DatePickerChangeEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype DatePickerValueStateChangeEventDetail = {\n\tvalueState: `${ValueState}`,\n\tvalid: boolean,\n}\n\ntype DatePickerInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date-picker` component provides an input field with assigned calendar which opens on user action.\n * The `ui5-date-picker` allows users to select a localized date using touch,\n * mouse, or keyboard input. It consists of two parts: the date input field and the\n * date picker.\n *\n * ### Usage\n *\n * The user can enter a date by:\n *\n * - Using the calendar that opens in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and presses the enter key, the calendar shows the corresponding date.\n * When the user directly triggers the calendar display, the actual date is displayed.\n *\n * ### Formatting\n *\n * If a date is entered by typing it into\n * the input field, it must fit to the used date format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"yyyy-MM-dd\",\n * a valid value string is \"2015-07-30\" and the same is displayed in the input.\n *\n * ### Keyboard Handling\n * The `ui5-date-picker` provides advanced keyboard handling.\n * If the `ui5-date-picker` is focused,\n * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.\n * Once the drop-down is opened, you can use the [Up], [Down], [Left] or [Right] arrow keys\n * to navigate through the dates and select one by pressing the `Space` or `Enter` keys. Moreover you can\n * use TAB to reach the buttons for changing month and year.\n *\n * If the `ui5-date-picker` input field is focused and its corresponding picker dialog is not opened,\n * then users can increment or decrement the date referenced by `dateValue` property\n * by using the following shortcuts:\n *\n * - [Page Down] - Decrements the corresponding day of the month by one\n * - [Shift] + [Page Down] - Decrements the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Down] - Decrements the corresponding year by one\n * - [Page Up] - Increments the corresponding day of the month by one\n * - [Shift] + [Page Up] - Increments the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Up] - Increments the corresponding year by one\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * <script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DatePicker.js\";`\n * @constructor\n * @extends DateComponentBase\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-date-picker\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\ttemplate: DatePickerTemplate,\n\tstyles: [\n\t\tdatePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tdatePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\tIcon,\n\t\tResponsivePopover,\n\t\tCalendar,\n\t\tCalendarDateComponent,\n\t\tInput,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the value of the component is changed at each key stroke.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerInputEventDetail>(\"input\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired before the value state of the component is updated internally.\n * The event is preventable, meaning that if it's default action is\n * prevented, the component will not update the value state.\n * @public\n * @param {string} valueState The new `valueState` that will be set.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerValueStateChangeEventDetail>(\"value-state-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalueState: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired after the component's picker is opened.\n * @since 2.4.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's picker is closed.\n * @since 2.4.0\n * @public\n */\n@event(\"close\")\nclass DatePicker extends DateComponentBase implements IFormInputElement {\n\t/**\n\t * Defines a formatted date value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\"\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as read-only.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers = false;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Object })\n\t_respPopoverConfig?: object;\n\n\t@property()\n\t_calendarCurrentPicker = \"day\";\n\n\tliveValue?: string;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot({ type: HTMLElement })\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tresponsivePopover?: ResponsivePopover;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn DatePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tif (isPhone()) {\n\t\t\tthis.blur(); // close device's keyboard and prevent further typing\n\t\t} else {\n\t\t\tthis._getInput()?.focus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\tonResponsivePopoverBeforeOpen() {\n\t\tthis._calendar.timestamp = this._calendarTimestamp;\n\t\tthis._calendarCurrentPicker = this.firstPicker;\n\t}\n\n\tonBeforeRendering() {\n\t\t[\"minDate\", \"maxDate\"].forEach((prop: string) => {\n\t\t\tconst propValue = this[prop as keyof DatePicker] as string;\n\n\t\t\tif (!this.isValid(propValue)) {\n\t\t\t\tconsole.warn(`Invalid value for property \"${prop}\": ${propValue} is not compatible with the configured format pattern: \"${this._displayFormat}\"`); // eslint-disable-line\n\t\t\t}\n\t\t});\n\n\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\tthis.liveValue = this.value;\n\t}\n\n\tget _calendar() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!\n\t\t\t.querySelector<Calendar>(\"[ui5-calendar]\")!;\n\t}\n\n\t/**\n\t * Override in derivatives to change calendar selection mode\n\t * @protected\n\t */\n\tget _calendarSelectionMode(): string {\n\t\treturn \"Single\";\n\t}\n\n\t/**\n\t * Used to provide a timestamp to the Calendar (to focus it to a relevant date when open) based on the component's state\n\t * Override in derivatives to provide the calendar a timestamp based on their properties\n\t * By default focus the calendar on the selected date if set, or the current day otherwise\n\t * @protected\n\t */\n\tget _calendarTimestamp(): number {\n\t\tif (this.value && this.dateValueUTC && this._checkValueValidity(this.value)) {\n\t\t\tconst millisecondsUTC = this.dateValueUTC.getTime();\n\t\t\treturn getRoundedTimestamp(millisecondsUTC);\n\t\t}\n\n\t\treturn getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Used to provide selectedDates to the calendar based on the component's state\n\t * Override in derivatives to provide different rules for setting the calendar's selected dates\n\t * @protected\n\t */\n\tget _calendarSelectedDates(): Array<string> {\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn [this.value];\n\t\t}\n\n\t\treturn [];\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault(); // Prevent scroll on Alt/Option + Arrow Up/Down\n\t\t\tif (this.open) {\n\t\t\t\tif (!isF4(e)) {\n\t\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t}\n\t\t}\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target && this.open && this._getInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"year\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"month\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"day\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"year\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"month\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"day\");\n\t\t}\n\t}\n\n\t/**\n\t * @param amount\n\t * @param unit\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @protected\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst newValue = this.formatValue(modifiedDate.toUTCJSDate());\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<string>, updateValue = true) {\n\t\tconst valid = this._checkValueValidity(value);\n\n\t\tif (valid && normalizeValue) {\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\n\t\tlet executeEvent = true;\n\t\tthis.liveValue = value;\n\n\t\tconst previousValue = this.value;\n\n\t\tif (updateValue) {\n\t\t\tthis._getInput().value = value;\n\t\t\tthis.value = value;\n\t\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\t}\n\n\t\tevents.forEach((e: string) => {\n\t\t\tif (!this.fireDecoratorEvent<DatePickerChangeEventDetail>(e, { value, valid })) {\n\t\t\t\texecuteEvent = false;\n\t\t\t}\n\t\t});\n\n\t\tif (!executeEvent && updateValue) {\n\t\t\tif (this.value !== previousValue && this.value !== this._getInput().value) {\n\t\t\t\treturn; // If the value was changed in the change event, do not revert it\n\t\t\t}\n\n\t\t\tthis._getInput().value = previousValue;\n\n\t\t\tthis.value = previousValue;\n\t\t}\n\t}\n\n\t_updateValueState() {\n\t\tconst valid = this._checkValueValidity(this.value);\n\t\tconst previousValueState = this.valueState;\n\n\t\tthis.valueState = valid ? ValueState.None : ValueState.Negative;\n\n\t\tconst eventPrevented = !this.fireDecoratorEvent<DatePickerValueStateChangeEventDetail>(\"value-state-change\", { valueState: this.valueState, valid });\n\n\t\tif (eventPrevented) {\n\t\t\tthis.valueState = previousValueState;\n\t\t}\n\t}\n\n\t_getInput(): Input {\n\t\treturn this.shadowRoot!.querySelector<Input>(\"[ui5-input]\")!;\n\t}\n\n\t/**\n\t * The ui5-input \"submit\" event handler - fire change event when the user presses enter\n\t * @protected\n\t */\n\t_onInputSubmit() {}\n\n\t/**\n\t * The ui5-input \"change\" event handler - fire change event when the user focuses out of the input\n\t * @protected\n\t */\n\t_onInputChange(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The ui5-input \"input\" event handler - fire input even when the user types\n\t * @protected\n\t */\n\t_onInputInput(e: KeyboardEvent) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, false, [\"input\"], false);\n\t}\n\n\t/**\n\t * Checks if the provided value is valid and within valid range.\n\t * @protected\n\t * @param value\n\t */\n\t_checkValueValidity(value: string): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn this.isValid(value) && this.isInValidRange(value);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tif (isPhone()) {\n\t\t\tthis.responsivePopover!.opener = this;\n\t\t\tthis.responsivePopover!.open = true;\n\t\t\te.preventDefault(); // prevent immediate selection of any item\n\t\t}\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValid(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a date is between the minimum and maximum date.\n\t * @public\n\t * @param value A value to be checked\n\t */\n\tisInValidRange(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\tconst calendarDate = this._getCalendarDateFromString(value);\n\n\t\tif (!calendarDate || !this._minDate || !this._maxDate) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\tget _displayFormat(): string {\n\t\t// @ts-ignore oFormatOptions is a private API of DateFormat\n\t\treturn this.getFormat().oFormatOptions.pattern as string;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : this._displayFormat;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn DatePicker.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget phone() {\n\t\treturn isPhone();\n\t}\n\n\tget showHeader() {\n\t\treturn this.phone;\n\t}\n\n\tget showFooter() {\n\t\treturn this.phone;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": AriaHasPopup.Grid.toLowerCase(),\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\tget openIconTitle() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);\n\t}\n\n\tget openIconName() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_DATE_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the first picker depending on the CalendarPickerMode\n\t */\n\tget firstPicker() {\n\t\tconst calendarPickerMode = this._calendarPickersMode;\n\t\tlet firstPicker = \"day\";\n\n\t\tif (calendarPickerMode === CalendarPickersMode.YEAR) {\n\t\t\tfirstPicker = \"year\";\n\t\t} else if (calendarPickerMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tfirstPicker = \"month\";\n\t\t}\n\n\t\treturn firstPicker;\n\t}\n\n\t/**\n\t * Defines whether the value help icon is hidden\n\t * @private\n\t */\n\tget _iconMode() {\n\t\treturn isDesktop() ? IconMode.Decorative : IconMode.Interactive;\n\t}\n\n\t_respPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\tget _calendarPickersMode() {\n\t\tconst format = this.getFormat() as DateFormat & { aFormatArray: Array<{type: string}> };\n\t\tconst patternSymbolTypes = format.aFormatArray.map(patternSymbolSettings => {\n\t\t\treturn patternSymbolSettings.type.toLowerCase();\n\t\t});\n\n\t\tif (patternSymbolTypes.includes(\"day\")) {\n\t\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t\t}\n\n\t\tif (patternSymbolTypes.includes(\"month\") || patternSymbolTypes.includes(\"monthstandalone\")) {\n\t\t\treturn CalendarPickersMode.MONTH_YEAR;\n\t\t}\n\n\t\treturn CalendarPickersMode.YEAR;\n\t}\n\n\t/**\n\t * The user selected a new date in the calendar\n\t * @param e\n\t * @protected\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\tconst newValue = e.detail.selectedValues && e.detail.selectedValues[0];\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress() {\n\t\tthis._calendarCurrentPicker = \"month\";\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress() {\n\t\tthis._calendarCurrentPicker = \"year\";\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date\n\t * according to the `formatPattern` property of the DatePicker instance\n\t * @public\n\t * @param date A Java Script date object to be formatted as string\n\t * @returns The date as string\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t_togglePicker(): void {\n\t\tthis.open = !this.open;\n\t}\n\n\t_toggleAndFocusInput() {\n\t\tthis._togglePicker();\n\t\tthis._getInput().focus();\n\t}\n\n\t/**\n\t * Currently selected date represented as a Local JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget dateValueUTC(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue, true) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\twidth: \"100%\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget type() {\n\t\treturn InputType.Text;\n\t}\n}\n\nDatePicker.define();\n\nexport default DatePicker;\nexport type {\n\tDatePickerChangeEventDetail,\n\tDatePickerInputEventDetail,\n\tDatePickerValueStateChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../src/DatePicker.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAGnE,OAAO,YAAY,MAAM,4DAA4D,CAAC;AACtF,OAAO,YAAY,MAAM,4DAA4D,CAAC;AACtF,OAAO,mBAAmB,MAAM,mEAAmE,CAAC;AACpG,OAAO,oBAAoB,MAAM,oEAAoE,CAAC;AACtG,OAAO,UAAU,MAAM,kDAAkD,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAC1G,OAAO,EAAE,UAAU,EAAE,MAAM,mEAAmE,CAAC;AAE/F,OAAO,EACN,QAAQ,EACR,UAAU,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,IAAI,EACJ,OAAO,EACP,SAAS,EACT,aAAa,EACb,QAAQ,EACR,YAAY,GACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,YAAY,MAAM,oDAAoD,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AACjE,OAAO,gDAAgD,CAAC;AACxD,OAAO,0CAA0C,CAAC;AAClD,OAAO,EACN,0BAA0B,EAC1B,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,kCAAkC,GAClC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,OAAO,qBAAqB,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,kBAAkB,MAAM,iDAAiD,CAAC;AAEjF,gCAAgC;AAChC,OAAO,qEAAqE,CAAC;AAE7E,SAAS;AACT,OAAO,aAAa,MAAM,sCAAsC,CAAC;AACjE,OAAO,oBAAoB,MAAM,6CAA6C,CAAC;AAC/E,OAAO,0BAA0B,MAAM,mDAAmD,CAAC;AAiB3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AA2GH,IAAM,UAAU,kBAAhB,MAAM,UAAW,SAAQ,iBAAiB;IAA1C;;QACC;;;;;;WAMG;QAEH,UAAK,GAAG,EAAE,CAAC;QAEX;;;;WAIG;QAEH,eAAU,GAAoB,MAAM,CAAA;QAEpC;;;;;WAKG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAwBjB;;;;;;;;WAQG;QAEH,oBAAe,GAAG,KAAK,CAAC;QAExB;;;;;WAKG;QAEH,SAAI,GAAG,KAAK,CAAC;QAwBb,2BAAsB,GAAG,KAAK,CAAC;IA+ehC,CAAC;IAzdA,IAAI,mBAAmB;QACtB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,YAAY;QACf,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB;QACtB,OAAO,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAiB,CAAA,EAAE,mBAAmB,EAAE,CAAC;IAChF,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,6BAA6B;QAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,OAAO,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,qDAAqD;QACnE,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,4BAA4B;QAC3B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,6BAA6B;QAC5B,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACnD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,WAAW,CAAC;IAChD,CAAC;IAED,iBAAiB;QAChB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAwB,CAAW,CAAC;YAE3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,+BAA+B,IAAI,MAAM,SAAS,2DAA2D,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,sBAAsB;YAC1K,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAoB,0BAA0B,CAAE;aACnF,aAAa,CAAW,gBAAgB,CAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,IAAI,sBAAsB;QACzB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,IAAI,kBAAkB;QACrB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7E,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACpD,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACH,IAAI,sBAAsB;QACzB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,EAAE,CAAC;IACX,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,+CAA+C;YACnE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBACd,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC7B,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,CAAC;QACF,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtI,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO;QACR,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAC1B,UAAU,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;aAAM,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,MAAc,EAAE,IAAY,EAAE,YAAsB;QACpE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO;QACR,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1I,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,yBAAyB,CAAC,KAAa,EAAE,cAAuB,EAAE,MAAqB,EAAE,WAAW,GAAG,IAAI;QAC1G,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;YAC7B,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,+DAA+D;QACpG,CAAC;QAED,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;QAEjC,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,2DAA2D;QACtF,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAA8B,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBAChF,YAAY,GAAG,KAAK,CAAC;YACtB,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,KAAK,KAAK,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;gBAC3E,OAAO,CAAC,iEAAiE;YAC1E,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,GAAG,aAAa,CAAC;YAEvC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC;QAE3C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;QAEhE,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAwC,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAErJ,IAAI,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC;QACtC,CAAC;IACF,CAAC;IAED,SAAS;QACR,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAQ,aAAa,CAAE,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,cAAc,KAAI,CAAC;IAEnB;;;OAGG;IACH,cAAc,CAAC,CAAQ;QACtB,IAAI,CAAC,yBAAyB,CAAE,CAAC,CAAC,MAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,CAAgB;QAC7B,IAAI,CAAC,yBAAyB,CAAE,CAAC,CAAC,MAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,KAAa;QAChC,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACb,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,CAAa;QACnB,IAAI,OAAO,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,iBAAkB,CAAC,MAAM,GAAG,IAAI,CAAC;YACtC,IAAI,CAAC,iBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;YACpC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,0CAA0C;QAC/D,CAAC;IACF,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAa;QACpB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAa;QAC3B,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAE5D,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvD,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,YAAY,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC/G,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,KAAa;QAC3B,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,2DAA2D;IACvI,CAAC;IAED,IAAI,cAAc;QACjB,2DAA2D;QAC3D,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,OAAiB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAChF,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,KAAK;QACR,OAAO,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,qBAAqB,EAAE,IAAI,CAAC,mBAAmB;YAC/C,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE;YAC/C,cAAc,EAAE,IAAI,CAAC,QAAQ;YAC7B,WAAW,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC5C,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,YAAY;QACf,OAAO,eAAe,CAAC;IACxB,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,YAAU,CAAC,UAAU,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAC1E,CAAC;IAED;;;OAGG;IACH,IAAI,iBAAiB;QACpB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACd,MAAM,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACrD,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,kBAAkB,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;YACrD,WAAW,GAAG,MAAM,CAAC;QACtB,CAAC;aAAM,IAAI,kBAAkB,KAAK,mBAAmB,CAAC,UAAU,EAAE,CAAC;YAClE,WAAW,GAAG,OAAO,CAAC;QACvB,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACZ,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,YAAY;QACX,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAoB,0BAA0B,CAAE,CAAC;IACvF,CAAC;IAED,cAAc;QACb,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzC,CAAC;IAED,IAAI,oBAAoB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAA0D,CAAC;QACxF,MAAM,kBAAkB,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE;YAC1E,OAAO,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,mBAAmB,CAAC,cAAc,CAAC;QAC3C,CAAC;QAED,IAAI,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC5F,OAAO,mBAAmB,CAAC,UAAU,CAAC;QACvC,CAAC;QAED,OAAO,mBAAmB,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,CAAkD;QACvE,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,sBAAsB;QACrB,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,qBAAqB;QACpB,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;IACtC,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,IAAU;QACrB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,oBAAoB;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAS,CAAC;IACrH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAS,CAAC;IAC3H,CAAC;IAED,IAAI,MAAM;QACT,OAAO;YACN,IAAI,EAAE;gBACL,KAAK,EAAE,MAAM;aACb;SACD,CAAC;IACH,CAAC;IAED,IAAI,IAAI;QACP,OAAO,SAAS,CAAC,IAAI,CAAC;IACvB,CAAC;CACD,CAAA;AAnlBA;IADC,QAAQ,EAAE;yCACA;AAQX;IADC,QAAQ,EAAE;8CACyB;AASpC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACX;AAYjB;IADC,QAAQ,EAAE;+CACU;AAUrB;IADC,QAAQ,EAAE;wCACG;AAYd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;mDACJ;AASxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACf;AASb;IADC,QAAQ,EAAE;kDACa;AASxB;IADC,QAAQ,EAAE;qDACgB;AAG3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDACC;AAG5B;IADC,QAAQ,EAAE;0DACoB;AAe/B;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;qDACW;AAKhC;IADN,IAAI,CAAC,oBAAoB,CAAC;oCACG;AAjIzB,UAAU;IAzGf,aAAa,CAAC;QACd,GAAG,EAAE,iBAAiB;QACtB,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,kBAAkB;QAC5B,MAAM,EAAE;YACP,aAAa;YACb,0BAA0B;YAC1B,oBAAoB;SACpB;QACD,YAAY,EAAE;YACb,IAAI;YACJ,iBAAiB;YACjB,QAAQ;YACR,qBAAqB;YACrB,KAAK;YACL,MAAM;SACN;KACD,CAAC;IACF;;;;;OAKG;;IACF,KAAK,CAA8B,QAAQ,EAAE;QAC7C,MAAM,EAAE;YACP;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;;OAKG;;IACF,KAAK,CAA6B,OAAO,EAAE;QAC3C,MAAM,EAAE;YACP;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;;;;OAOG;;IACF,KAAK,CAAwC,oBAAoB,EAAE;QACnE,MAAM,EAAE;YACP;;eAEG;YACH,UAAU,EAAE;gBACX,IAAI,EAAE,MAAM;aACZ;YACD;;eAEG;YACH,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;aACb;SACD;QACD,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;KAChB,CAAC;IACF;;;;OAIG;;IACF,KAAK,CAAC,MAAM,CAAC;IACd;;;;OAIG;;IACF,KAAK,CAAC,OAAO,CAAC;GACT,UAAU,CA4lBf;AAED,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,eAAe,UAAU,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getRoundedTimestamp from \"@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisShow,\n\tisF4,\n\tisEnter,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\nimport { isPhone, isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport \"@ui5/webcomponents-icons/dist/appointment-2.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport {\n\tDATEPICKER_OPEN_ICON_TITLE,\n\tDATEPICKER_DATE_DESCRIPTION,\n\tINPUT_SUGGESTIONS_TITLE,\n\tFORM_TEXTFIELD_REQUIRED,\n\tDATEPICKER_POPOVER_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport DateComponentBase from \"./DateComponentBase.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectionChangeEventDetail } from \"./Calendar.js\";\nimport CalendarDateComponent from \"./CalendarDate.js\";\nimport Input from \"./Input.js\";\nimport InputType from \"./types/InputType.js\";\nimport IconMode from \"./types/IconMode.js\";\nimport DatePickerTemplate from \"./generated/templates/DatePickerTemplate.lit.js\";\n\n// default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Styles\nimport datePickerCss from \"./generated/themes/DatePicker.css.js\";\nimport datePickerPopoverCss from \"./generated/themes/DatePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\n\ntype DatePickerChangeEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype DatePickerValueStateChangeEventDetail = {\n\tvalueState: `${ValueState}`,\n\tvalid: boolean,\n}\n\ntype DatePickerInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date-picker` component provides an input field with assigned calendar which opens on user action.\n * The `ui5-date-picker` allows users to select a localized date using touch,\n * mouse, or keyboard input. It consists of two parts: the date input field and the\n * date picker.\n *\n * ### Usage\n *\n * The user can enter a date by:\n *\n * - Using the calendar that opens in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and presses the enter key, the calendar shows the corresponding date.\n * When the user directly triggers the calendar display, the actual date is displayed.\n *\n * ### Formatting\n *\n * If a date is entered by typing it into\n * the input field, it must fit to the used date format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"yyyy-MM-dd\",\n * a valid value string is \"2015-07-30\" and the same is displayed in the input.\n *\n * ### Keyboard Handling\n * The `ui5-date-picker` provides advanced keyboard handling.\n * If the `ui5-date-picker` is focused,\n * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.\n * Once the drop-down is opened, you can use the [Up], [Down], [Left] or [Right] arrow keys\n * to navigate through the dates and select one by pressing the `Space` or `Enter` keys. Moreover you can\n * use TAB to reach the buttons for changing month and year.\n *\n * If the `ui5-date-picker` input field is focused and its corresponding picker dialog is not opened,\n * then users can increment or decrement the date referenced by `dateValue` property\n * by using the following shortcuts:\n *\n * - [Page Down] - Decrements the corresponding day of the month by one\n * - [Shift] + [Page Down] - Decrements the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Down] - Decrements the corresponding year by one\n * - [Page Up] - Increments the corresponding day of the month by one\n * - [Shift] + [Page Up] - Increments the corresponding month by one\n * - [Shift] + [Ctrl] + [Page Up] - Increments the corresponding year by one\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * <script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/DatePicker.js\";`\n * @constructor\n * @extends DateComponentBase\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-date-picker\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\ttemplate: DatePickerTemplate,\n\tstyles: [\n\t\tdatePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tdatePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\tIcon,\n\t\tResponsivePopover,\n\t\tCalendar,\n\t\tCalendarDateComponent,\n\t\tInput,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the value of the component is changed at each key stroke.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerInputEventDetail>(\"input\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired before the value state of the component is updated internally.\n * The event is preventable, meaning that if it's default action is\n * prevented, the component will not update the value state.\n * @public\n * @param {string} valueState The new `valueState` that will be set.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<DatePickerValueStateChangeEventDetail>(\"value-state-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalueState: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired after the component's picker is opened.\n * @since 2.4.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's picker is closed.\n * @since 2.4.0\n * @public\n */\n@event(\"close\")\nclass DatePicker extends DateComponentBase implements IFormInputElement {\n\t/**\n\t * Defines a formatted date value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\"\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as read-only.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers = false;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Object })\n\t_respPopoverConfig?: object;\n\n\t@property()\n\t_calendarCurrentPicker = \"day\";\n\n\tliveValue?: string;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot({ type: HTMLElement })\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tresponsivePopover?: ResponsivePopover;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn DatePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tif (isPhone()) {\n\t\t\tthis.blur(); // close device's keyboard and prevent further typing\n\t\t} else {\n\t\t\tthis._getInput()?.focus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\tonResponsivePopoverBeforeOpen() {\n\t\tthis._calendar.timestamp = this._calendarTimestamp;\n\t\tthis._calendarCurrentPicker = this.firstPicker;\n\t}\n\n\tonBeforeRendering() {\n\t\t[\"minDate\", \"maxDate\"].forEach((prop: string) => {\n\t\t\tconst propValue = this[prop as keyof DatePicker] as string;\n\n\t\t\tif (!this.isValid(propValue)) {\n\t\t\t\tconsole.warn(`Invalid value for property \"${prop}\": ${propValue} is not compatible with the configured format pattern: \"${this._displayFormat}\"`); // eslint-disable-line\n\t\t\t}\n\t\t});\n\n\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\tthis.liveValue = this.value;\n\t}\n\n\tget _calendar() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!\n\t\t\t.querySelector<Calendar>(\"[ui5-calendar]\")!;\n\t}\n\n\t/**\n\t * Override in derivatives to change calendar selection mode\n\t * @protected\n\t */\n\tget _calendarSelectionMode(): string {\n\t\treturn \"Single\";\n\t}\n\n\t/**\n\t * Used to provide a timestamp to the Calendar (to focus it to a relevant date when open) based on the component's state\n\t * Override in derivatives to provide the calendar a timestamp based on their properties\n\t * By default focus the calendar on the selected date if set, or the current day otherwise\n\t * @protected\n\t */\n\tget _calendarTimestamp(): number {\n\t\tif (this.value && this.dateValueUTC && this._checkValueValidity(this.value)) {\n\t\t\tconst millisecondsUTC = this.dateValueUTC.getTime();\n\t\t\treturn getRoundedTimestamp(millisecondsUTC);\n\t\t}\n\n\t\treturn getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Used to provide selectedDates to the calendar based on the component's state\n\t * Override in derivatives to provide different rules for setting the calendar's selected dates\n\t * @protected\n\t */\n\tget _calendarSelectedDates(): Array<string> {\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn [this.value];\n\t\t}\n\n\t\treturn [];\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault(); // Prevent scroll on Alt/Option + Arrow Up/Down\n\t\t\tif (this.open) {\n\t\t\t\tif (!isF4(e)) {\n\t\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._toggleAndFocusInput();\n\t\t\t}\n\t\t}\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target && this.open && this._getInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"year\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"month\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(1, \"day\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"year\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"month\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyDateValue(-1, \"day\");\n\t\t}\n\t}\n\n\t/**\n\t * @param amount\n\t * @param unit\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @protected\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst newValue = this.formatValue(modifiedDate.toUTCJSDate());\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<string>, updateValue = true) {\n\t\tconst valid = this._checkValueValidity(value);\n\n\t\tif (valid && normalizeValue) {\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\n\t\tlet executeEvent = true;\n\t\tthis.liveValue = value;\n\n\t\tconst previousValue = this.value;\n\n\t\tif (updateValue) {\n\t\t\tthis._getInput().value = value;\n\t\t\tthis.value = value;\n\t\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\t}\n\n\t\tevents.forEach((e: string) => {\n\t\t\tif (!this.fireDecoratorEvent<DatePickerChangeEventDetail>(e, { value, valid })) {\n\t\t\t\texecuteEvent = false;\n\t\t\t}\n\t\t});\n\n\t\tif (!executeEvent && updateValue) {\n\t\t\tif (this.value !== previousValue && this.value !== this._getInput().value) {\n\t\t\t\treturn; // If the value was changed in the change event, do not revert it\n\t\t\t}\n\n\t\t\tthis._getInput().value = previousValue;\n\n\t\t\tthis.value = previousValue;\n\t\t}\n\t}\n\n\t_updateValueState() {\n\t\tconst valid = this._checkValueValidity(this.value);\n\t\tconst previousValueState = this.valueState;\n\n\t\tthis.valueState = valid ? ValueState.None : ValueState.Negative;\n\n\t\tconst eventPrevented = !this.fireDecoratorEvent<DatePickerValueStateChangeEventDetail>(\"value-state-change\", { valueState: this.valueState, valid });\n\n\t\tif (eventPrevented) {\n\t\t\tthis.valueState = previousValueState;\n\t\t}\n\t}\n\n\t_getInput(): Input {\n\t\treturn this.shadowRoot!.querySelector<Input>(\"[ui5-input]\")!;\n\t}\n\n\t/**\n\t * The ui5-input \"submit\" event handler - fire change event when the user presses enter\n\t * @protected\n\t */\n\t_onInputSubmit() {}\n\n\t/**\n\t * The ui5-input \"change\" event handler - fire change event when the user focuses out of the input\n\t * @protected\n\t */\n\t_onInputChange(e: Event) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The ui5-input \"input\" event handler - fire input even when the user types\n\t * @protected\n\t */\n\t_onInputInput(e: KeyboardEvent) {\n\t\tthis._updateValueAndFireEvents((e.target as DatePicker).value, false, [\"input\"], false);\n\t}\n\n\t/**\n\t * Checks if the provided value is valid and within valid range.\n\t * @protected\n\t * @param value\n\t */\n\t_checkValueValidity(value: string): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn this.isValid(value) && this.isInValidRange(value);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tif (isPhone()) {\n\t\t\tthis.responsivePopover!.opener = this;\n\t\t\tthis.responsivePopover!.open = true;\n\t\t\te.preventDefault(); // prevent immediate selection of any item\n\t\t}\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current date format of the DatePicker.\n\t * @public\n\t * @param value A value to be tested against the current date format\n\t */\n\tisValid(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn !!this.getFormat().parse(value);\n\t}\n\n\t/**\n\t * Checks if a date is between the minimum and maximum date.\n\t * @public\n\t * @param value A value to be checked\n\t */\n\tisInValidRange(value: string): boolean {\n\t\tif (value === \"\" || value === undefined) {\n\t\t\treturn true;\n\t\t}\n\n\t\tconst calendarDate = this._getCalendarDateFromString(value);\n\n\t\tif (!calendarDate || !this._minDate || !this._maxDate) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();\n\t}\n\n\t/**\n\t * The parser understands many formats, but we need one format\n\t * @protected\n\t */\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC\n\t}\n\n\tget _displayFormat(): string {\n\t\t// @ts-ignore oFormatOptions is a private API of DateFormat\n\t\treturn this.getFormat().oFormatOptions.pattern as string;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : this._displayFormat;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn DatePicker.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget phone() {\n\t\treturn isPhone();\n\t}\n\n\tget showHeader() {\n\t\treturn this.phone;\n\t}\n\n\tget showFooter() {\n\t\treturn this.phone;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": AriaHasPopup.Grid.toLowerCase(),\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\tget openIconTitle() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);\n\t}\n\n\tget openIconName() {\n\t\treturn \"appointment-2\";\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_DATE_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn DatePicker.i18nBundle.getText(DATEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the first picker depending on the CalendarPickerMode\n\t */\n\tget firstPicker() {\n\t\tconst calendarPickerMode = this._calendarPickersMode;\n\t\tlet firstPicker = \"day\";\n\n\t\tif (calendarPickerMode === CalendarPickersMode.YEAR) {\n\t\t\tfirstPicker = \"year\";\n\t\t} else if (calendarPickerMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tfirstPicker = \"month\";\n\t\t}\n\n\t\treturn firstPicker;\n\t}\n\n\t/**\n\t * Defines whether the value help icon is hidden\n\t * @private\n\t */\n\tget _iconMode() {\n\t\treturn isDesktop() ? IconMode.Decorative : IconMode.Interactive;\n\t}\n\n\t_respPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\tget _calendarPickersMode() {\n\t\tconst format = this.getFormat() as DateFormat & { aFormatArray: Array<{type: string}> };\n\t\tconst patternSymbolTypes = format.aFormatArray.map(patternSymbolSettings => {\n\t\t\treturn patternSymbolSettings.type.toLowerCase();\n\t\t});\n\n\t\tif (patternSymbolTypes.includes(\"day\")) {\n\t\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t\t}\n\n\t\tif (patternSymbolTypes.includes(\"month\") || patternSymbolTypes.includes(\"monthstandalone\")) {\n\t\t\treturn CalendarPickersMode.MONTH_YEAR;\n\t\t}\n\n\t\treturn CalendarPickersMode.YEAR;\n\t}\n\n\t/**\n\t * The user selected a new date in the calendar\n\t * @param e\n\t * @protected\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectionChangeEventDetail>) {\n\t\te.preventDefault();\n\t\tconst newValue = e.detail.selectedValues && e.detail.selectedValues[0];\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tthis._togglePicker();\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress() {\n\t\tthis._calendarCurrentPicker = \"month\";\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress() {\n\t\tthis._calendarCurrentPicker = \"year\";\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date\n\t * according to the `formatPattern` property of the DatePicker instance\n\t * @public\n\t * @param date A Java Script date object to be formatted as string\n\t * @returns The date as string\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t_togglePicker(): void {\n\t\tthis.open = !this.open;\n\t}\n\n\t_toggleAndFocusInput() {\n\t\tthis._togglePicker();\n\t\tthis._getInput().focus();\n\t}\n\n\t/**\n\t * Currently selected date represented as a Local JavaScript Date instance.\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget dateValueUTC(): Date | null {\n\t\treturn this.liveValue ? this.getFormat().parse(this.liveValue, true) as Date : this.getFormat().parse(this.value) as Date;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\twidth: \"100%\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget type() {\n\t\treturn InputType.Text;\n\t}\n}\n\nDatePicker.define();\n\nexport default DatePicker;\nexport type {\n\tDatePickerChangeEventDetail,\n\tDatePickerInputEventDetail,\n\tDatePickerValueStateChangeEventDetail,\n};\n"]}
package/dist/Form.d.ts CHANGED
@@ -6,7 +6,7 @@ import type FormItemSpacing from "./types/FormItemSpacing.js";
6
6
  * @experimental
7
7
  * @since 2.0.0
8
8
  */
9
- interface IFormItem extends HTMLElement {
9
+ interface IFormItem extends UI5Element {
10
10
  labelSpan: string;
11
11
  itemSpacing: `${FormItemSpacing}`;
12
12
  readonly isGroup: boolean;
@@ -20,6 +20,7 @@ type GroupItemsInfo = {
20
20
  groupItem: IFormItem;
21
21
  classes: string;
22
22
  items: Array<ItemsInfo>;
23
+ accessibleNameRef: string | undefined;
23
24
  };
24
25
  type ItemsInfo = {
25
26
  item: IFormItem;
@@ -100,6 +101,13 @@ type ItemsInfo = {
100
101
  *
101
102
  * **For example:** To always place the labels on top set: `labelSpan="S12 M12 L12 XL12"` property.
102
103
  *
104
+ * ### Keyboard Handling
105
+ *
106
+ * - [Tab] - Moves the focus to the next interactive element within the Form/FormGroup (if available) or to the next element in the tab chain outside the Form
107
+ * - [Shift] + [Tab] - Moves the focus to the previous interactive element within the Form/FormGroup (if available) or to the previous element in the tab chain outside the Form
108
+ * - [F6] - Moves the focus to the first interactive element of the next FormGroup (if available) or to the next element in the tab chain outside the Form
109
+ * - [Shift] + [F6] - Moves the focus to the first interactive element of the previous FormGroup (if available) or to the previous element in the tab chain outside the Form
110
+ *
103
111
  * ### ES6 Module Import
104
112
  *
105
113
  * - import @ui5/webcomponents/dist/Form.js";
@@ -192,12 +200,14 @@ declare class Form extends UI5Element {
192
200
  onAfterRendering(): void;
193
201
  setColumnLayout(): void;
194
202
  setLabelSpan(): void;
203
+ setFastNavGroup(): void;
195
204
  setGroupsColSpan(): void;
196
205
  getGroupsColSpan(cols: number, groups: number, index: number, group: IFormItem): number;
197
206
  get hasGroupItems(): boolean;
198
207
  get hasHeader(): boolean;
199
208
  get hasCustomHeader(): boolean;
200
- get ariaLabelledByID(): string | undefined;
209
+ get effectiveАccessibleNameRef(): string | undefined;
210
+ get effectiveAccessibleRole(): string | undefined;
201
211
  get groupItemsInfo(): Array<GroupItemsInfo>;
202
212
  get itemsInfo(): Array<ItemsInfo>;
203
213
  getItemsInfo(items?: Array<IFormItem>): Array<ItemsInfo>;
package/dist/Form.js CHANGED
@@ -96,6 +96,13 @@ const StepColumn = {
96
96
  *
97
97
  * **For example:** To always place the labels on top set: `labelSpan="S12 M12 L12 XL12"` property.
98
98
  *
99
+ * ### Keyboard Handling
100
+ *
101
+ * - [Tab] - Moves the focus to the next interactive element within the Form/FormGroup (if available) or to the next element in the tab chain outside the Form
102
+ * - [Shift] + [Tab] - Moves the focus to the previous interactive element within the Form/FormGroup (if available) or to the previous element in the tab chain outside the Form
103
+ * - [F6] - Moves the focus to the first interactive element of the next FormGroup (if available) or to the next element in the tab chain outside the Form
104
+ * - [Shift] + [F6] - Moves the focus to the first interactive element of the previous FormGroup (if available) or to the previous element in the tab chain outside the Form
105
+ *
99
106
  * ### ES6 Module Import
100
107
  *
101
108
  * - import @ui5/webcomponents/dist/Form.js";
@@ -174,6 +181,7 @@ let Form = class Form extends UI5Element {
174
181
  onAfterRendering() {
175
182
  // Create additional CSS for number of columns that are not supported by default.
176
183
  this.createAdditionalCSSStyleSheet();
184
+ this.setFastNavGroup();
177
185
  }
178
186
  setColumnLayout() {
179
187
  const layoutArr = this.layout.split(" ");
@@ -212,6 +220,14 @@ let Form = class Form extends UI5Element {
212
220
  item.itemSpacing = this.itemSpacing;
213
221
  });
214
222
  }
223
+ setFastNavGroup() {
224
+ if (this.hasGroupItems) {
225
+ this.removeAttribute("data-sap-ui-fastnavgroup");
226
+ }
227
+ else {
228
+ this.setAttribute("data-sap-ui-fastnavgroup", "true");
229
+ }
230
+ }
215
231
  setGroupsColSpan() {
216
232
  if (!this.hasGroupItems) {
217
233
  return;
@@ -261,13 +277,17 @@ let Form = class Form extends UI5Element {
261
277
  get hasCustomHeader() {
262
278
  return !!this.header.length;
263
279
  }
264
- get ariaLabelledByID() {
280
+ get effectiveАccessibleNameRef() {
265
281
  return this.hasCustomHeader ? undefined : `${this._id}-header-text`;
266
282
  }
283
+ get effectiveAccessibleRole() {
284
+ return this.hasGroupItems ? "region" : "form";
285
+ }
267
286
  get groupItemsInfo() {
268
287
  return this.items.map((groupItem) => {
269
288
  return {
270
289
  groupItem,
290
+ accessibleNameRef: groupItem.headerText ? `${groupItem._id}-group-header-text` : undefined,
271
291
  classes: `ui5-form-column-spanL-${groupItem.colsL} ui5-form-column-spanXL-${groupItem.colsXl} ui5-form-column-spanM-${groupItem.colsM} ui5-form-column-spanS-${groupItem.colsS}`,
272
292
  items: this.getItemsInfo(Array.from(groupItem.children)),
273
293
  };