@ui5/webcomponents 0.0.0-d849bec2c → 0.0.0-dc3ccac50

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 (732) hide show
  1. package/CHANGELOG.md +552 -1
  2. package/README.md +144 -52
  3. package/csp.js +7 -0
  4. package/customI18n.js +50 -0
  5. package/dist/Assets-static.js +6 -0
  6. package/dist/Assets.js +2 -1
  7. package/dist/Avatar.js +197 -46
  8. package/dist/AvatarGroup.js +603 -0
  9. package/dist/Badge.js +44 -22
  10. package/dist/Breadcrumbs.js +563 -0
  11. package/dist/BreadcrumbsItem.js +109 -0
  12. package/dist/BusyIndicator.js +141 -37
  13. package/dist/Button.js +120 -68
  14. package/dist/Calendar.js +341 -545
  15. package/dist/CalendarDate.js +45 -0
  16. package/dist/CalendarHeader.js +127 -56
  17. package/dist/CalendarPart.js +111 -0
  18. package/dist/Card.js +44 -158
  19. package/dist/CardHeader.js +288 -0
  20. package/dist/Carousel.js +267 -98
  21. package/dist/CheckBox.js +146 -58
  22. package/dist/ColorPalette.js +493 -0
  23. package/dist/ColorPaletteItem.js +137 -0
  24. package/dist/ColorPalettePopover.js +219 -0
  25. package/dist/ColorPicker.js +524 -0
  26. package/dist/ComboBox.js +599 -94
  27. package/dist/ComboBoxFilters.js +8 -1
  28. package/dist/ComboBoxGroupItem.js +70 -0
  29. package/dist/ComboBoxItem.js +12 -24
  30. package/dist/CustomListItem.js +38 -4
  31. package/dist/DateComponentBase.js +170 -0
  32. package/dist/DatePicker.js +392 -409
  33. package/dist/DateRangePicker.js +328 -0
  34. package/dist/DateTimePicker.js +106 -384
  35. package/dist/DayPicker.js +508 -430
  36. package/dist/Dialog.js +496 -44
  37. package/dist/DurationPicker.js +135 -400
  38. package/dist/FileUploader.js +208 -26
  39. package/dist/GroupHeaderListItem.js +24 -14
  40. package/dist/Icon.js +140 -46
  41. package/dist/Input.js +613 -162
  42. package/dist/Interfaces.js +192 -0
  43. package/dist/Label.js +27 -17
  44. package/dist/Link.js +123 -29
  45. package/dist/List.js +425 -94
  46. package/dist/ListItem.js +88 -19
  47. package/dist/ListItemBase.js +27 -5
  48. package/dist/MessageStrip.js +50 -65
  49. package/dist/MonthPicker.js +180 -182
  50. package/dist/MultiComboBox.js +569 -156
  51. package/dist/MultiComboBoxItem.js +8 -2
  52. package/dist/MultiInput.js +301 -0
  53. package/dist/Option.js +48 -5
  54. package/dist/Panel.js +100 -37
  55. package/dist/Popover.js +252 -139
  56. package/dist/Popup.js +364 -90
  57. package/dist/ProgressIndicator.js +235 -0
  58. package/dist/RadioButton.js +131 -51
  59. package/dist/RadioButtonGroup.js +53 -29
  60. package/dist/RangeSlider.js +769 -0
  61. package/dist/RatingIndicator.js +291 -0
  62. package/dist/ResponsivePopover.js +67 -53
  63. package/dist/SegmentedButton.js +109 -73
  64. package/dist/SegmentedButtonItem.js +109 -0
  65. package/dist/Select.js +441 -108
  66. package/dist/Slider.js +320 -0
  67. package/dist/SliderBase.js +842 -0
  68. package/dist/StandardListItem.js +44 -13
  69. package/dist/StepInput.js +681 -0
  70. package/dist/SuggestionGroupItem.js +64 -0
  71. package/dist/SuggestionItem.js +37 -31
  72. package/dist/SuggestionListItem.js +76 -0
  73. package/dist/Switch.js +59 -42
  74. package/dist/Tab.js +55 -24
  75. package/dist/TabContainer.js +142 -62
  76. package/dist/TabSeparator.js +1 -0
  77. package/dist/Table.js +475 -22
  78. package/dist/TableCell.js +11 -9
  79. package/dist/TableColumn.js +13 -3
  80. package/dist/TableGroupRow.js +160 -0
  81. package/dist/TableRow.js +235 -10
  82. package/dist/TextArea.js +139 -41
  83. package/dist/TimePicker.js +55 -675
  84. package/dist/TimePickerBase.js +463 -0
  85. package/dist/TimeSelection.js +493 -0
  86. package/dist/Title.js +16 -9
  87. package/dist/Toast.js +24 -13
  88. package/dist/ToggleButton.js +21 -8
  89. package/dist/Token.js +84 -47
  90. package/dist/Tokenizer.js +242 -60
  91. package/dist/Tree.js +137 -51
  92. package/dist/TreeItem.js +44 -9
  93. package/dist/TreeListItem.js +127 -7
  94. package/dist/WheelSlider.js +76 -56
  95. package/dist/YearPicker.js +198 -254
  96. package/dist/api.json +6877 -1
  97. package/dist/features/ColorPaletteMoreColors.js +42 -0
  98. package/dist/features/InputElementsFormSupport.js +0 -1
  99. package/dist/features/InputSuggestions.js +247 -53
  100. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  105. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  110. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  111. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  112. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  113. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  115. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  119. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  123. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  134. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  135. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  136. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  137. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  138. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  139. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  140. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  141. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  142. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  143. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  144. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  145. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  146. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  147. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  148. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  149. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  150. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  151. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  152. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  153. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  154. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  155. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  156. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  157. package/dist/generated/i18n/i18n-defaults.js +2 -2
  158. package/dist/generated/json-imports/Themes-static.js +35 -0
  159. package/dist/generated/json-imports/Themes.js +23 -15
  160. package/dist/generated/json-imports/i18n-static.js +162 -0
  161. package/dist/generated/json-imports/i18n.js +113 -87
  162. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  163. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  164. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  165. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  166. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  167. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -6
  168. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  169. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  170. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  171. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  172. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  173. package/dist/generated/templates/CarouselTemplate.lit.js +13 -12
  174. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  175. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  176. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  177. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  178. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  179. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  180. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  181. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -6
  182. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -13
  183. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -6
  184. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -6
  185. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -12
  186. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  187. package/dist/generated/templates/DialogTemplate.lit.js +9 -9
  188. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
  189. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  190. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  191. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  192. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -23
  193. package/dist/generated/templates/InputTemplate.lit.js +9 -8
  194. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  195. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  196. package/dist/generated/templates/ListItemTemplate.lit.js +13 -13
  197. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  198. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -17
  199. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  200. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -5
  201. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  202. package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
  203. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  204. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  205. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -4
  206. package/dist/generated/templates/PopupTemplate.lit.js +4 -9
  207. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  208. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  209. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  210. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  211. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -14
  212. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  213. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  214. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  215. package/dist/generated/templates/SelectTemplate.lit.js +6 -5
  216. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  217. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  218. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -20
  219. package/dist/generated/templates/StepInputTemplate.lit.js +8 -0
  220. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  221. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  222. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -6
  223. package/dist/generated/templates/TabContainerTemplate.lit.js +16 -14
  224. package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -13
  225. package/dist/generated/templates/TabInStripTemplate.lit.js +8 -21
  226. package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -4
  227. package/dist/generated/templates/TabTemplate.lit.js +4 -4
  228. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  229. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  230. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  231. package/dist/generated/templates/TableRowTemplate.lit.js +12 -11
  232. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  233. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -8
  234. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -7
  235. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -8
  236. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -6
  237. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  238. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  239. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  240. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  241. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  242. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  243. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  244. package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -16
  245. package/dist/generated/templates/TreeTemplate.lit.js +5 -5
  246. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -7
  247. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  248. package/dist/generated/themes/Avatar.css.js +5 -5
  249. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  250. package/dist/generated/themes/Badge.css.js +5 -5
  251. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  252. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  253. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  254. package/dist/generated/themes/BusyIndicator.css.js +5 -5
  255. package/dist/generated/themes/Button.css.js +5 -5
  256. package/dist/generated/themes/Button.ie11.css.js +8 -0
  257. package/dist/generated/themes/Calendar.css.js +5 -5
  258. package/dist/generated/themes/CalendarHeader.css.js +5 -5
  259. package/dist/generated/themes/Card.css.js +5 -5
  260. package/dist/generated/themes/CardHeader.css.js +8 -0
  261. package/dist/generated/themes/Carousel.css.js +5 -5
  262. package/dist/generated/themes/CheckBox.css.js +5 -5
  263. package/dist/generated/themes/ColorPalette.css.js +8 -0
  264. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  265. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  266. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  267. package/dist/generated/themes/ColorPicker.css.js +8 -0
  268. package/dist/generated/themes/ComboBox.css.js +5 -5
  269. package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
  270. package/dist/generated/themes/CustomListItem.css.js +5 -5
  271. package/dist/generated/themes/DatePicker.css.js +5 -5
  272. package/dist/generated/themes/DatePickerPopover.css.js +5 -5
  273. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  274. package/dist/generated/themes/DateTimePicker.css.js +5 -5
  275. package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
  276. package/dist/generated/themes/DayPicker.css.js +5 -5
  277. package/dist/generated/themes/Dialog.css.js +5 -5
  278. package/dist/generated/themes/FileUploader.css.js +5 -5
  279. package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
  280. package/dist/generated/themes/GrowingButton.css.js +8 -0
  281. package/dist/generated/themes/Icon.css.js +5 -5
  282. package/dist/generated/themes/Input.css.js +5 -5
  283. package/dist/generated/themes/InputIcon.css.js +5 -5
  284. package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
  285. package/dist/generated/themes/Label.css.js +5 -5
  286. package/dist/generated/themes/Link.css.js +5 -5
  287. package/dist/generated/themes/List.css.js +5 -5
  288. package/dist/generated/themes/ListItem.css.js +5 -5
  289. package/dist/generated/themes/ListItemBase.css.js +5 -5
  290. package/dist/generated/themes/MessageStrip.css.js +5 -5
  291. package/dist/generated/themes/MonthPicker.css.js +5 -5
  292. package/dist/generated/themes/MultiComboBox.css.js +5 -5
  293. package/dist/generated/themes/MultiInput.css.js +8 -0
  294. package/dist/generated/themes/Panel.css.js +5 -5
  295. package/dist/generated/themes/Popover.css.js +5 -5
  296. package/dist/generated/themes/Popup.css.js +5 -5
  297. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  298. package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
  299. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  300. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  301. package/dist/generated/themes/RadioButton.css.js +5 -5
  302. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  303. package/dist/generated/themes/ResponsivePopover.css.js +5 -5
  304. package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
  305. package/dist/generated/themes/SegmentedButton.css.js +5 -5
  306. package/dist/generated/themes/Select.css.js +5 -5
  307. package/dist/generated/themes/SelectPopover.css.js +8 -0
  308. package/dist/generated/themes/SliderBase.css.js +8 -0
  309. package/dist/generated/themes/StepInput.css.js +8 -0
  310. package/dist/generated/themes/Suggestions.css.js +8 -0
  311. package/dist/generated/themes/Switch.css.js +5 -5
  312. package/dist/generated/themes/Tab.css.js +5 -5
  313. package/dist/generated/themes/TabContainer.css.js +5 -5
  314. package/dist/generated/themes/TabInOverflow.css.js +5 -5
  315. package/dist/generated/themes/TabInStrip.css.js +5 -5
  316. package/dist/generated/themes/Table.css.js +5 -5
  317. package/dist/generated/themes/TableCell.css.js +5 -5
  318. package/dist/generated/themes/TableColumn.css.js +5 -5
  319. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  320. package/dist/generated/themes/TableRow.css.js +5 -5
  321. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  322. package/dist/generated/themes/TextArea.css.js +5 -5
  323. package/dist/generated/themes/TimePicker.css.js +5 -5
  324. package/dist/generated/themes/TimePickerPopover.css.js +5 -5
  325. package/dist/generated/themes/TimeSelection.css.js +8 -0
  326. package/dist/generated/themes/Title.css.js +5 -5
  327. package/dist/generated/themes/Toast.css.js +5 -5
  328. package/dist/generated/themes/ToggleButton.css.js +5 -5
  329. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  330. package/dist/generated/themes/Token.css.js +5 -5
  331. package/dist/generated/themes/Tokenizer.css.js +5 -5
  332. package/dist/generated/themes/Tree.css.js +5 -5
  333. package/dist/generated/themes/TreeListItem.css.js +5 -5
  334. package/dist/generated/themes/ValueStateMessage.css.js +5 -5
  335. package/dist/generated/themes/WheelSlider.css.js +5 -5
  336. package/dist/generated/themes/YearPicker.css.js +5 -5
  337. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  338. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  339. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  340. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  341. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  342. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  343. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  344. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  345. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  346. package/dist/i18n/messagebundle.properties +335 -0
  347. package/dist/i18n/messagebundle_ar.properties +224 -0
  348. package/dist/i18n/messagebundle_bg.properties +224 -0
  349. package/dist/i18n/messagebundle_ca.properties +224 -0
  350. package/dist/i18n/messagebundle_cs.properties +224 -0
  351. package/dist/i18n/messagebundle_cy.properties +224 -0
  352. package/dist/i18n/messagebundle_da.properties +224 -0
  353. package/dist/i18n/messagebundle_de.properties +224 -0
  354. package/dist/i18n/messagebundle_el.properties +224 -0
  355. package/dist/i18n/messagebundle_en.properties +224 -0
  356. package/dist/i18n/messagebundle_en_GB.properties +224 -0
  357. package/dist/i18n/messagebundle_en_US_sappsd.properties +224 -0
  358. package/dist/i18n/messagebundle_en_US_saprigi.properties +224 -0
  359. package/dist/i18n/messagebundle_en_US_saptrc.properties +224 -0
  360. package/dist/i18n/messagebundle_es.properties +224 -0
  361. package/dist/i18n/messagebundle_es_MX.properties +224 -0
  362. package/dist/i18n/messagebundle_et.properties +224 -0
  363. package/dist/i18n/messagebundle_fi.properties +224 -0
  364. package/dist/i18n/messagebundle_fr.properties +224 -0
  365. package/dist/i18n/messagebundle_fr_CA.properties +224 -0
  366. package/dist/i18n/messagebundle_hi.properties +224 -0
  367. package/dist/i18n/messagebundle_hr.properties +224 -0
  368. package/dist/i18n/messagebundle_hu.properties +224 -0
  369. package/dist/i18n/messagebundle_id.properties +224 -0
  370. package/dist/i18n/messagebundle_in.properties +172 -0
  371. package/dist/i18n/messagebundle_it.properties +224 -0
  372. package/dist/i18n/messagebundle_iw.properties +224 -0
  373. package/dist/i18n/messagebundle_ja.properties +224 -0
  374. package/dist/i18n/messagebundle_kk.properties +224 -0
  375. package/dist/i18n/messagebundle_ko.properties +224 -0
  376. package/dist/i18n/messagebundle_lt.properties +224 -0
  377. package/dist/i18n/messagebundle_lv.properties +224 -0
  378. package/dist/i18n/messagebundle_ms.properties +224 -0
  379. package/dist/i18n/messagebundle_nl.properties +224 -0
  380. package/dist/i18n/messagebundle_no.properties +224 -0
  381. package/dist/i18n/messagebundle_pl.properties +224 -0
  382. package/dist/i18n/messagebundle_pt.properties +224 -0
  383. package/dist/i18n/messagebundle_pt_PT.properties +224 -0
  384. package/dist/i18n/messagebundle_ro.properties +224 -0
  385. package/dist/i18n/messagebundle_ru.properties +224 -0
  386. package/dist/i18n/messagebundle_sh.properties +224 -0
  387. package/dist/i18n/messagebundle_sk.properties +224 -0
  388. package/dist/i18n/messagebundle_sl.properties +224 -0
  389. package/dist/i18n/messagebundle_sv.properties +224 -0
  390. package/dist/i18n/messagebundle_th.properties +224 -0
  391. package/dist/i18n/messagebundle_tr.properties +224 -0
  392. package/dist/i18n/messagebundle_uk.properties +224 -0
  393. package/dist/i18n/messagebundle_vi.properties +224 -0
  394. package/dist/i18n/messagebundle_zh_CN.properties +224 -0
  395. package/dist/i18n/messagebundle_zh_TW.properties +224 -0
  396. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  397. package/dist/popup-utils/PopoverRegistry.js +49 -15
  398. package/dist/timepicker-utils/TimeSlider.js +15 -13
  399. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  400. package/dist/types/AvatarGroupType.js +43 -0
  401. package/dist/types/AvatarShape.js +1 -1
  402. package/dist/types/AvatarSize.js +1 -1
  403. package/dist/types/BreadcrumbsDesign.js +42 -0
  404. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  405. package/dist/types/BusyIndicatorSize.js +1 -1
  406. package/dist/types/ButtonDesign.js +8 -1
  407. package/dist/types/CalendarSelectionMode.js +47 -0
  408. package/dist/types/CarouselArrowsPlacement.js +3 -3
  409. package/dist/types/GrowingMode.js +48 -0
  410. package/dist/types/InputType.js +7 -7
  411. package/dist/types/LinkDesign.js +1 -1
  412. package/dist/types/ListGrowingMode.js +15 -0
  413. package/dist/types/ListItemType.js +1 -1
  414. package/dist/types/ListMode.js +9 -1
  415. package/dist/types/ListSeparators.js +1 -1
  416. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  417. package/dist/types/PanelAccessibleRole.js +1 -1
  418. package/dist/types/PopoverHorizontalAlign.js +1 -1
  419. package/dist/types/PopoverPlacementType.js +2 -2
  420. package/dist/types/PopoverVerticalAlign.js +1 -2
  421. package/dist/types/Priority.js +1 -1
  422. package/dist/types/SemanticColor.js +1 -1
  423. package/dist/types/SwitchDesign.js +40 -0
  424. package/dist/types/TabContainerTabsPlacement.js +5 -5
  425. package/dist/types/TabLayout.js +1 -1
  426. package/dist/types/TableGrowingMode.js +15 -0
  427. package/dist/types/TableMode.js +47 -0
  428. package/dist/types/TableRowType.js +40 -0
  429. package/dist/types/TitleLevel.js +1 -1
  430. package/dist/types/ToastPlacement.js +1 -2
  431. package/dist/types/WrappingType.js +41 -0
  432. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  433. package/dist/webcomponentsjs/README.md +64 -47
  434. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  435. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  436. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  437. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  438. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  439. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  440. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  441. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  442. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  443. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  444. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  445. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  446. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  447. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  448. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  449. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  450. package/package-scripts.js +1 -0
  451. package/package.json +23 -7
  452. package/src/Assets-static.js +6 -0
  453. package/src/Assets.js +7 -0
  454. package/src/Avatar.hbs +20 -0
  455. package/src/Avatar.js +392 -0
  456. package/src/AvatarGroup.hbs +30 -0
  457. package/src/AvatarGroup.js +603 -0
  458. package/src/Badge.hbs +14 -0
  459. package/src/Badge.js +165 -0
  460. package/src/Breadcrumbs.hbs +42 -0
  461. package/src/Breadcrumbs.js +563 -0
  462. package/src/BreadcrumbsItem.js +109 -0
  463. package/src/BreadcrumbsPopover.hbs +28 -0
  464. package/src/BusyIndicator.hbs +32 -0
  465. package/src/BusyIndicator.js +269 -0
  466. package/src/Button.hbs +45 -0
  467. package/src/Button.js +463 -0
  468. package/src/Calendar.hbs +69 -0
  469. package/src/Calendar.js +489 -0
  470. package/src/CalendarDate.js +45 -0
  471. package/src/CalendarHeader.hbs +54 -0
  472. package/src/CalendarHeader.js +209 -0
  473. package/src/CalendarPart.js +111 -0
  474. package/src/Card.hbs +14 -0
  475. package/src/Card.js +160 -0
  476. package/src/CardHeader.hbs +35 -0
  477. package/src/CardHeader.js +288 -0
  478. package/src/Carousel.hbs +85 -0
  479. package/src/Carousel.js +681 -0
  480. package/src/CheckBox.hbs +44 -0
  481. package/src/CheckBox.js +424 -0
  482. package/src/ColorPalette.hbs +52 -0
  483. package/src/ColorPalette.js +493 -0
  484. package/src/ColorPaletteDialog.hbs +18 -0
  485. package/src/ColorPaletteItem.hbs +11 -0
  486. package/src/ColorPaletteItem.js +137 -0
  487. package/src/ColorPalettePopover.hbs +29 -0
  488. package/src/ColorPalettePopover.js +219 -0
  489. package/src/ColorPicker.hbs +98 -0
  490. package/src/ColorPicker.js +524 -0
  491. package/src/ComboBox.hbs +49 -0
  492. package/src/ComboBox.js +1041 -0
  493. package/src/ComboBoxFilters.js +40 -0
  494. package/src/ComboBoxGroupItem.js +70 -0
  495. package/src/ComboBoxItem.js +49 -0
  496. package/src/ComboBoxPopover.hbs +125 -0
  497. package/src/CustomListItem.hbs +5 -0
  498. package/src/CustomListItem.js +99 -0
  499. package/src/DateComponentBase.js +170 -0
  500. package/src/DatePicker.hbs +44 -0
  501. package/src/DatePicker.js +823 -0
  502. package/src/DatePickerPopover.hbs +63 -0
  503. package/src/DateRangePicker.js +328 -0
  504. package/src/DateTimePicker.js +430 -0
  505. package/src/DateTimePickerPopover.hbs +74 -0
  506. package/src/DayPicker.hbs +66 -0
  507. package/src/DayPicker.js +754 -0
  508. package/src/Dialog.hbs +35 -0
  509. package/src/Dialog.js +601 -0
  510. package/src/DurationPicker.js +312 -0
  511. package/src/FileUploader.hbs +40 -0
  512. package/src/FileUploader.js +532 -0
  513. package/src/FileUploaderPopover.hbs +25 -0
  514. package/src/GroupHeaderListItem.hbs +15 -0
  515. package/src/GroupHeaderListItem.js +94 -0
  516. package/src/Icon.hbs +25 -0
  517. package/src/Icon.js +373 -0
  518. package/src/Input.hbs +78 -0
  519. package/src/Input.js +1381 -0
  520. package/src/InputPopover.hbs +118 -0
  521. package/src/Interfaces.js +192 -0
  522. package/src/Label.hbs +13 -0
  523. package/src/Label.js +152 -0
  524. package/src/Link.hbs +20 -0
  525. package/src/Link.js +349 -0
  526. package/src/List.hbs +89 -0
  527. package/src/List.js +1056 -0
  528. package/src/ListItem.hbs +102 -0
  529. package/src/ListItem.js +371 -0
  530. package/src/ListItemBase.js +179 -0
  531. package/src/MessageStrip.hbs +34 -0
  532. package/src/MessageStrip.js +226 -0
  533. package/src/MonthPicker.hbs +29 -0
  534. package/src/MonthPicker.js +299 -0
  535. package/src/MultiComboBox.hbs +78 -0
  536. package/src/MultiComboBox.js +1091 -0
  537. package/src/MultiComboBoxItem.js +43 -0
  538. package/src/MultiComboBoxPopover.hbs +133 -0
  539. package/src/MultiInput.hbs +41 -0
  540. package/src/MultiInput.js +301 -0
  541. package/src/Option.js +115 -0
  542. package/src/Panel.hbs +63 -0
  543. package/src/Panel.js +462 -0
  544. package/src/Popover.hbs +25 -0
  545. package/src/Popover.js +786 -0
  546. package/src/Popup.hbs +34 -0
  547. package/src/Popup.js +567 -0
  548. package/src/PopupBlockLayer.hbs +7 -0
  549. package/src/ProgressIndicator.hbs +35 -0
  550. package/src/ProgressIndicator.js +235 -0
  551. package/src/RadioButton.hbs +33 -0
  552. package/src/RadioButton.js +494 -0
  553. package/src/RadioButtonGroup.js +205 -0
  554. package/src/RangeSlider.hbs +70 -0
  555. package/src/RangeSlider.js +769 -0
  556. package/src/RatingIndicator.hbs +33 -0
  557. package/src/RatingIndicator.js +291 -0
  558. package/src/ResponsivePopover.hbs +39 -0
  559. package/src/ResponsivePopover.js +206 -0
  560. package/src/SegmentedButton.hbs +17 -0
  561. package/src/SegmentedButton.js +290 -0
  562. package/src/SegmentedButtonItem.hbs +42 -0
  563. package/src/SegmentedButtonItem.js +109 -0
  564. package/src/Select.hbs +45 -0
  565. package/src/Select.js +834 -0
  566. package/src/SelectPopover.hbs +89 -0
  567. package/src/Slider.hbs +42 -0
  568. package/src/Slider.js +320 -0
  569. package/src/SliderBase.hbs +38 -0
  570. package/src/SliderBase.js +842 -0
  571. package/src/StandardListItem.hbs +44 -0
  572. package/src/StandardListItem.js +191 -0
  573. package/src/StepInput.hbs +77 -0
  574. package/src/StepInput.js +681 -0
  575. package/src/SuggestionGroupItem.js +64 -0
  576. package/src/SuggestionItem.js +146 -0
  577. package/src/SuggestionListItem.hbs +33 -0
  578. package/src/SuggestionListItem.js +76 -0
  579. package/src/Switch.hbs +50 -0
  580. package/src/Switch.js +261 -0
  581. package/src/Tab.hbs +3 -0
  582. package/src/Tab.js +334 -0
  583. package/src/TabContainer.hbs +93 -0
  584. package/src/TabContainer.js +679 -0
  585. package/src/TabContainerPopover.hbs +24 -0
  586. package/src/TabInOverflow.hbs +22 -0
  587. package/src/TabInStrip.hbs +43 -0
  588. package/src/TabSeparator.hbs +1 -0
  589. package/src/TabSeparator.js +44 -0
  590. package/src/Table.hbs +99 -0
  591. package/src/Table.js +761 -0
  592. package/src/TableCell.hbs +7 -0
  593. package/src/TableCell.js +88 -0
  594. package/src/TableColumn.hbs +8 -0
  595. package/src/TableColumn.js +136 -0
  596. package/src/TableGroupRow.hbs +12 -0
  597. package/src/TableGroupRow.js +160 -0
  598. package/src/TableRow.hbs +61 -0
  599. package/src/TableRow.js +388 -0
  600. package/src/TextArea.hbs +50 -0
  601. package/src/TextArea.js +691 -0
  602. package/src/TextAreaPopover.hbs +28 -0
  603. package/src/TimePicker.hbs +35 -0
  604. package/src/TimePicker.js +166 -0
  605. package/src/TimePickerBase.js +463 -0
  606. package/src/TimePickerPopover.hbs +34 -0
  607. package/src/TimeSelection.hbs +60 -0
  608. package/src/TimeSelection.js +493 -0
  609. package/src/Title.hbs +47 -0
  610. package/src/Title.js +132 -0
  611. package/src/Toast.hbs +13 -0
  612. package/src/Toast.js +243 -0
  613. package/src/ToggleButton.hbs +5 -0
  614. package/src/ToggleButton.js +84 -0
  615. package/src/Token.hbs +30 -0
  616. package/src/Token.js +219 -0
  617. package/src/Tokenizer.hbs +27 -0
  618. package/src/Tokenizer.js +414 -0
  619. package/src/TokenizerPopover.hbs +50 -0
  620. package/src/Tree.hbs +42 -0
  621. package/src/Tree.js +443 -0
  622. package/src/TreeItem.js +168 -0
  623. package/src/TreeListItem.hbs +48 -0
  624. package/src/TreeListItem.js +332 -0
  625. package/src/WheelSlider.hbs +48 -0
  626. package/src/WheelSlider.js +435 -0
  627. package/src/YearPicker.hbs +27 -0
  628. package/src/YearPicker.js +324 -0
  629. package/src/features/ColorPaletteMoreColors.js +42 -0
  630. package/src/features/InputElementsFormSupport.js +88 -0
  631. package/src/features/InputSuggestions.js +530 -0
  632. package/src/i18n/messagebundle.properties +335 -0
  633. package/src/i18n/messagebundle_ar.properties +224 -0
  634. package/src/i18n/messagebundle_bg.properties +224 -0
  635. package/src/i18n/messagebundle_ca.properties +224 -0
  636. package/src/i18n/messagebundle_cs.properties +224 -0
  637. package/src/i18n/messagebundle_cy.properties +224 -0
  638. package/src/i18n/messagebundle_da.properties +224 -0
  639. package/src/i18n/messagebundle_de.properties +224 -0
  640. package/src/i18n/messagebundle_el.properties +224 -0
  641. package/src/i18n/messagebundle_en.properties +224 -0
  642. package/src/i18n/messagebundle_en_GB.properties +224 -0
  643. package/src/i18n/messagebundle_en_US_sappsd.properties +224 -0
  644. package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
  645. package/src/i18n/messagebundle_en_US_saptrc.properties +224 -0
  646. package/src/i18n/messagebundle_es.properties +224 -0
  647. package/src/i18n/messagebundle_es_MX.properties +224 -0
  648. package/src/i18n/messagebundle_et.properties +224 -0
  649. package/src/i18n/messagebundle_fi.properties +224 -0
  650. package/src/i18n/messagebundle_fr.properties +224 -0
  651. package/src/i18n/messagebundle_fr_CA.properties +224 -0
  652. package/src/i18n/messagebundle_hi.properties +224 -0
  653. package/src/i18n/messagebundle_hr.properties +224 -0
  654. package/src/i18n/messagebundle_hu.properties +224 -0
  655. package/src/i18n/messagebundle_id.properties +224 -0
  656. package/src/i18n/messagebundle_in.properties +172 -0
  657. package/src/i18n/messagebundle_it.properties +224 -0
  658. package/src/i18n/messagebundle_iw.properties +224 -0
  659. package/src/i18n/messagebundle_ja.properties +224 -0
  660. package/src/i18n/messagebundle_kk.properties +224 -0
  661. package/src/i18n/messagebundle_ko.properties +224 -0
  662. package/src/i18n/messagebundle_lt.properties +224 -0
  663. package/src/i18n/messagebundle_lv.properties +224 -0
  664. package/src/i18n/messagebundle_ms.properties +224 -0
  665. package/src/i18n/messagebundle_nl.properties +224 -0
  666. package/src/i18n/messagebundle_no.properties +224 -0
  667. package/src/i18n/messagebundle_pl.properties +224 -0
  668. package/src/i18n/messagebundle_pt.properties +224 -0
  669. package/src/i18n/messagebundle_pt_PT.properties +224 -0
  670. package/src/i18n/messagebundle_ro.properties +224 -0
  671. package/src/i18n/messagebundle_ru.properties +224 -0
  672. package/src/i18n/messagebundle_sh.properties +224 -0
  673. package/src/i18n/messagebundle_sk.properties +224 -0
  674. package/src/i18n/messagebundle_sl.properties +224 -0
  675. package/src/i18n/messagebundle_sv.properties +224 -0
  676. package/src/i18n/messagebundle_th.properties +224 -0
  677. package/src/i18n/messagebundle_tr.properties +224 -0
  678. package/src/i18n/messagebundle_uk.properties +224 -0
  679. package/src/i18n/messagebundle_vi.properties +224 -0
  680. package/src/i18n/messagebundle_zh_CN.properties +224 -0
  681. package/src/i18n/messagebundle_zh_TW.properties +224 -0
  682. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  683. package/src/popup-utils/PopoverRegistry.js +145 -0
  684. package/src/timepicker-utils/TimeSlider.js +103 -0
  685. package/src/types/AvatarColorScheme.js +104 -0
  686. package/src/types/AvatarGroupType.js +43 -0
  687. package/src/types/AvatarShape.js +41 -0
  688. package/src/types/AvatarSize.js +67 -0
  689. package/src/types/BreadcrumbsDesign.js +42 -0
  690. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  691. package/src/types/BusyIndicatorSize.js +47 -0
  692. package/src/types/ButtonDesign.js +68 -0
  693. package/src/types/CalendarSelectionMode.js +47 -0
  694. package/src/types/CarouselArrowsPlacement.js +40 -0
  695. package/src/types/GrowingMode.js +48 -0
  696. package/src/types/InputType.js +68 -0
  697. package/src/types/LinkDesign.js +47 -0
  698. package/src/types/ListGrowingMode.js +15 -0
  699. package/src/types/ListItemType.js +47 -0
  700. package/src/types/ListMode.js +77 -0
  701. package/src/types/ListSeparators.js +46 -0
  702. package/src/types/MessageStripDesign.js +54 -0
  703. package/src/types/PanelAccessibleRole.js +48 -0
  704. package/src/types/PopoverHorizontalAlign.js +54 -0
  705. package/src/types/PopoverPlacementType.js +54 -0
  706. package/src/types/PopoverVerticalAlign.js +54 -0
  707. package/src/types/Priority.js +55 -0
  708. package/src/types/SemanticColor.js +61 -0
  709. package/src/types/SwitchDesign.js +40 -0
  710. package/src/types/TabContainerTabsPlacement.js +40 -0
  711. package/src/types/TabLayout.js +40 -0
  712. package/src/types/TableGrowingMode.js +15 -0
  713. package/src/types/TableMode.js +47 -0
  714. package/src/types/TableRowType.js +40 -0
  715. package/src/types/TitleLevel.js +68 -0
  716. package/src/types/ToastPlacement.js +91 -0
  717. package/src/types/WrappingType.js +41 -0
  718. package/dist/Timeline.js +0 -97
  719. package/dist/TimelineItem.js +0 -161
  720. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  721. package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -10
  722. package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -8
  723. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  724. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  725. package/dist/generated/themes/ComboBoxItem.css.js +0 -8
  726. package/dist/generated/themes/DurationPicker.css.js +0 -8
  727. package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
  728. package/dist/generated/themes/Timeline.css.js +0 -8
  729. package/dist/generated/themes/TimelineItem.css.js +0 -8
  730. package/dist/popup-utils/PopupUtils.js +0 -55
  731. package/dist/types/AvatarFitType.js +0 -40
  732. package/dist/webcomponentsjs/package.json +0 -46
@@ -1,76 +1,25 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
- import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
4
1
  import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
5
- import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
6
- import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
7
- import LocaleData from "@ui5/webcomponents-localization/dist/LocaleData.js";
8
- import "@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js"; // default calendar for bundling
9
- import { fetchCldr } from "@ui5/webcomponents-base/dist/asset-registries/LocaleData.js";
10
- import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
11
- import {
12
- isLeft,
13
- isRight,
14
- isTabNext,
15
- isTabPrevious,
16
- isShow,
17
- } from "@ui5/webcomponents-base/src/Keys.js";
18
- import "@ui5/webcomponents-icons/dist/icons/time-entry-request.js";
19
- import PopoverHorizontalAlign from "./types/PopoverHorizontalAlign.js";
20
- import ResponsivePopover from "./ResponsivePopover.js";
21
- import PopoverPlacementType from "./types/PopoverPlacementType.js";
22
- import TimePickerTemplate from "./generated/templates/TimePickerTemplate.lit.js";
23
- import TimePickerPopoverTemplate from "./generated/templates/TimePickerPopoverTemplate.lit.js";
24
- import Input from "./Input.js";
25
- import WheelSlider from "./WheelSlider.js";
26
- import {
27
- getHours,
28
- getMinutes,
29
- getSeconds,
30
- getHoursConfigByFormat,
31
- getTimeControlsByFormat,
32
- } from "./timepicker-utils/TimeSlider.js";
2
+ import getCachedLocaleDataInstance from "@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js";
3
+ import TimePickerBase from "./TimePickerBase.js";
33
4
 
34
5
  import {
35
- TIMEPICKER_HOURS_LABEL,
36
- TIMEPICKER_MINUTES_LABEL,
37
- TIMEPICKER_SECONDS_LABEL,
38
- TIMEPICKER_PERIODS_LABEL,
39
- TIMEPICKER_SUBMIT_BUTTON,
40
- TIMEPICKER_CANCEL_BUTTON,
6
+ TIMEPICKER_INPUT_DESCRIPTION,
41
7
  } from "./generated/i18n/i18n-defaults.js";
42
8
 
43
- // Styles
44
- import TimePickerCss from "./generated/themes/TimePicker.css.js";
45
- import TimePickerPopoverCss from "./generated/themes/TimePickerPopover.css.js";
46
- import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
47
-
48
9
  /**
49
10
  * @public
50
11
  */
51
12
  const metadata = {
52
- tag: "ui5-timepicker",
53
- managedSlots: true,
54
- properties: /** @lends sap.ui.webcomponents.main.TimePicker.prototype */ {
55
- /**
56
- * Defines a formatted time value.
57
- *
58
- * @type {string}
59
- * @defaultvalue undefined
60
- * @public
61
- */
62
- value: {
63
- type: String,
64
- defaultValue: undefined,
65
- },
66
-
13
+ tag: "ui5-time-picker",
14
+ altTag: "ui5-timepicker",
15
+ properties: /** @lends sap.ui.webcomponents.main.TimePickerBase.prototype */ {
67
16
  /**
68
17
  * Defines a short hint, intended to aid the user with data entry when the
69
- * <code>ui5-timepicker</code> has no value.
18
+ * component has no value.
70
19
  *
71
20
  * <br><br>
72
21
  * <b>Note:</b> When no placeholder is set, the format pattern is displayed as a placeholder.
73
- * Passing an empty string as the value of this property will make the <code>ui5-timepicker</code> appear empty - without placeholder or format pattern.
22
+ * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.
74
23
  *
75
24
  * @type {string}
76
25
  * @defaultvalue undefined
@@ -96,105 +45,6 @@ const metadata = {
96
45
  formatPattern: {
97
46
  type: String,
98
47
  },
99
-
100
- /**
101
- * Defines the value state of the <code>ui5-timepicker</code>.
102
- * <br><br>
103
- * Available options are:
104
- * <ul>
105
- * <li><code>None</code></li>
106
- * <li><code>Error</code></li>
107
- * <li><code>Warning</code></li>
108
- * <li><code>Success</code></li>
109
- * <li><code>Information</code></li>
110
- * </ul>
111
- *
112
- * @type {ValueState}
113
- * @defaultvalue "None"
114
- * @public
115
- */
116
- valueState: {
117
- type: ValueState,
118
- defaultValue: ValueState.None,
119
- },
120
-
121
- /**
122
- * Determines whether the <code>ui5-timepicker</code> is displayed as disabled.
123
- *
124
- * @type {boolean}
125
- * @defaultvalue false
126
- * @public
127
- */
128
- disabled: {
129
- type: Boolean,
130
- },
131
-
132
- /**
133
- * Determines whether the <code>ui5-timepicker</code> is displayed as readonly.
134
- *
135
- * @type {boolean}
136
- * @defaultvalue false
137
- * @public
138
- */
139
- readonly: {
140
- type: Boolean,
141
- },
142
-
143
- _isPickerOpen: {
144
- type: Boolean,
145
- noAttribute: true,
146
- },
147
-
148
- _respPopover: {
149
- type: Object,
150
- },
151
-
152
- _hours: {
153
- type: String,
154
- },
155
-
156
- _minutes: {
157
- type: String,
158
- },
159
-
160
- _seconds: {
161
- type: String,
162
- },
163
- },
164
- slots: /** @lends sap.ui.webcomponents.main.TimePicker.prototype */ {
165
- /**
166
- * Defines the value state message that will be displayed as pop up under the <code>ui5-timepicker</code>.
167
- * <br><br>
168
- *
169
- * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
170
- * <br>
171
- * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
172
- * when the <code>ui5-timepicker</code> is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
173
- * @type {HTMLElement}
174
- * @since 1.0.0-rc.8
175
- * @slot
176
- * @public
177
- */
178
- valueStateMessage: {
179
- type: HTMLElement,
180
- },
181
- },
182
- events: /** @lends sap.ui.webcomponents.main.TimePicker.prototype */ {
183
- /**
184
- * Fired when the input operation has finished by clicking the "OK" button or
185
- * when the text in the input field has changed and the focus leaves the input field.
186
- *
187
- * @event
188
- * @public
189
- */
190
- change: {},
191
- /**
192
- * Fired when the value of the <code>ui5-timepicker</code> is changed at each key stroke.
193
- *
194
- * @event
195
- * @public
196
- */
197
- input: {},
198
48
  },
199
49
  };
200
50
 
@@ -202,21 +52,21 @@ const metadata = {
202
52
  * @class
203
53
  *
204
54
  * <h3 class="comment-api-title">Overview</h3>
205
- * The <code>ui5-timepicker</code> component provides an input field with assigned sliders which opens on user action.
206
- * The <code>ui5-timepicker</code> allows users to select a localized time using touch,
55
+ * The <code>ui5-time-picker</code> component provides an input field with assigned sliders which are opened on user action.
56
+ * The <code>ui5-time-picker</code> allows users to select a localized time using touch,
207
57
  * mouse, or keyboard input. It consists of two parts: the time input field and the
208
58
  * sliders.
209
59
  *
210
60
  * <h3>Usage</h3>
211
61
  * The user can enter a time by:
212
62
  * <ul>
213
- * <li>Using the sliders that opens in a popup</li>
63
+ * <li>Using the sliders that are displayed in a popup</li>
214
64
  * <li>Typing it in directly in the input field</li>
215
65
  * </ul>
216
66
  * <br><br>
217
67
  * When the user makes an entry and chooses the enter key, the sliders shows the corresponding time.
218
68
  * When the user directly triggers the sliders display, the actual time is displayed.
219
- * For the <code>ui5-timepicker</code>
69
+ * For the <code>ui5-time-picker</code>
220
70
  *
221
71
  * <h3>Formatting</h3>
222
72
  *
@@ -229,340 +79,51 @@ const metadata = {
229
79
  * For example, if the <code>format-pattern</code> is "HH:mm:ss",
230
80
  * a valid value string is "11:42:35" and the same is displayed in the input.
231
81
  *
82
+ * <h3>Keyboard handling</h3>
83
+ * [F4], [ALT]+[UP], [ALT]+[DOWN] Open/Close picker dialog and move focus to it.
84
+ * <br>
85
+ * When closed:
86
+ * <ul>
87
+ * <li>[PAGEUP] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.</li>
88
+ * <li>[PAGEDOWN] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.</li>
89
+ * <li>[SHIFT]+[PAGEUP] Increments minutes by 1.</li>
90
+ * <li>[SHIFT]+ [PAGEDOWN] Decrements minutes by 1.</li>
91
+ * <li>[SHIFT]+[CTRL]+[PAGEUP] Increments seconds by 1.</li>
92
+ * <li>[SHIFT]+[CTRL]+ [PAGEDOWN] Decrements seconds by 1.</li>
93
+ * </ul>
94
+ * When opened:
95
+ * <ul>
96
+ * <li>[UP] If focus is on one of the selection lists: Select the value which is above the current value. If the first value is selected, select the last value in the list. Exception: AM/ PM List: stay on the first item.</li>
97
+ * <li>[DOWN] If focus is on one of the selection lists: Select the value which is below the current value. If the last value is selected, select the first value in the list. Exception: AM/ PM List: stay on the last item.</li>
98
+ * <li>[LEFT] If focus is on one of the selection lists: Move focus to the selection list which is left of the current selection list. If focus is at the first selection list, move focus to the last selection list.</li>
99
+ * <li>[RIGHT] If focus is on one of the selection lists: Move focus to the selection list which is right of the current selection list. When focus is at the last selection list, move focus to the first selection list.</li>
100
+ * <li>[PAGEUP] If focus is on one of the selection lists: Move focus to the first entry of this list.</li>
101
+ * <li>[PAGEDOWN] If focus is on one of the selection lists: Move focus to the last entry of this list.</li>
102
+ * </ul>
103
+ *
232
104
  * <h3>ES6 Module Import</h3>
233
105
  *
234
- * <code>import @ui5/webcomponents/dist/TimePicker.js";</code>
106
+ * <code>import "@ui5/webcomponents/dist/TimePicker.js";</code>
235
107
  *
236
108
  * @constructor
237
109
  * @author SAP SE
238
110
  * @alias sap.ui.webcomponents.main.TimePicker
239
- * @extends UI5Element
240
- * @tagname ui5-timepicker
111
+ * @extends TimePickerBase
112
+ * @tagname ui5-time-picker
241
113
  * @public
242
114
  * @since 1.0.0-rc.6
243
115
  */
244
- class TimePicker extends UI5Element {
116
+ class TimePicker extends TimePickerBase {
245
117
  static get metadata() {
246
118
  return metadata;
247
119
  }
248
120
 
249
- static get render() {
250
- return litRender;
251
- }
252
-
253
- static get styles() {
254
- return TimePickerCss;
255
- }
256
-
257
- static get staticAreaTemplate() {
258
- return TimePickerPopoverTemplate;
259
- }
260
-
261
- static get template() {
262
- return TimePickerTemplate;
263
- }
264
-
265
- static async onDefine() {
266
- await Promise.all([
267
- fetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),
268
- ResponsivePopover.define(),
269
- fetchI18nBundle("@ui5/webcomponents"),
270
- WheelSlider.define(),
271
- Input.define(),
272
- ]);
273
- }
274
-
275
- static get staticAreaStyles() {
276
- return [ResponsivePopoverCommonCss, TimePickerPopoverCss];
277
- }
278
-
279
-
280
- constructor() {
281
- super();
282
-
283
- this.readonly = false;
284
- this.disabled = false;
285
- this._isPickerOpen = false;
286
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
287
-
288
- this._respPopover = {
289
- placementType: PopoverPlacementType.Bottom,
290
- horizontalAlign: PopoverHorizontalAlign.Left,
291
- allowTargetOverlap: true,
292
- stayOpenOnScroll: true,
293
- afterClose: () => {
294
- this._isPickerOpen = false;
295
- this.closePicker();
296
- },
297
- };
298
-
299
- this._hoursParameters = {
300
- minHour: 0,
301
- maxHour: 0,
302
- isTwelveHoursFormat: false,
303
- };
304
-
305
- this._slidersDomRefs = [];
306
- }
307
-
308
- onBeforeRendering() {
309
- if (!this.formatPattern) {
310
- this.formatPattern = LocaleData.getInstance(getLocale()).getTimePattern(this.getFormat().oFormatOptions.style);
311
- }
312
-
313
- if (this.value === undefined) {
314
- this.value = this.getFormat().format(new Date());
315
- }
316
-
317
- this._initHoursFormatParameters();
318
- }
319
-
320
- async _handleInputClick() {
321
- if (this._isPickerOpen) {
322
- return;
323
- }
324
-
325
- const inputField = await this._getInputField();
326
-
327
- if (inputField) {
328
- inputField.select();
329
- }
330
- }
331
-
332
- _handleInputChange() {
333
- const nextValue = this._getInput().getInputValue(),
334
- isValid = this.isValid(nextValue);
335
-
336
- this.setValue(nextValue);
337
- this.fireEvent("change", { value: nextValue, valid: isValid });
338
- this.fireEvent("value-changed", { value: nextValue, valid: isValid });
339
- }
340
-
341
- _handleInputLiveChange() {
342
- const nextValue = this._getInput().getInputValue(),
343
- isValid = this.isValid(nextValue);
344
-
345
- this.value = nextValue;
346
- this.setSlidersValue();
347
- this.fireEvent("input", { value: nextValue, valid: isValid });
348
- }
349
-
350
- setSlidersValue() {
351
- const currentDate = this._getInput() ? this.getFormat().parse(this._getInput().getAttribute("value")) : null,
352
- secondsSlider = this.secondsSlider,
353
- minutesSlider = this.minutesSlider,
354
- hoursSlider = this.hoursSlider,
355
- periodsSlider = this.periodsSlider;
356
-
357
- if (!currentDate) {
358
- return;
359
- }
360
- if (hoursSlider) {
361
- let tempValue = "";
362
- if (this._hoursParameters.isTwelveHoursFormat && currentDate.getHours() > this._hoursParameters.maxHour) {
363
- tempValue = currentDate.getHours() - 12;
364
- } else if (this._hoursParameters.isTwelveHoursFormat && currentDate.getHours() < this._hoursParameters.minHour) {
365
- tempValue = currentDate.getHours() + 12;
366
- } else {
367
- tempValue = currentDate.getHours();
368
- }
369
- if (tempValue.toString().length === 1) {
370
- hoursSlider.value = `0${tempValue}`;
371
- } else {
372
- hoursSlider.value = tempValue.toString();
373
- }
374
- }
375
- if (minutesSlider) {
376
- const tempValue = currentDate.getMinutes();
377
- if (tempValue.toString().length === 1) {
378
- minutesSlider.value = `0${tempValue}`;
379
- } else {
380
- minutesSlider.value = tempValue.toString();
381
- }
382
- }
383
- if (secondsSlider) {
384
- const tempValue = currentDate.getSeconds();
385
- if (tempValue.toString().length === 1) {
386
- secondsSlider.value = `0${tempValue}`;
387
- } else {
388
- secondsSlider.value = tempValue.toString();
389
- }
390
- }
391
- if (this._hoursParameters.isTwelveHoursFormat && periodsSlider && this._hoursParameters.minHour === 1) {
392
- periodsSlider.value = currentDate.getHours() >= this._hoursParameters.maxHour ? this.periodsArray[1] : this.periodsArray[0];
393
- } else if (this._hoursParameters.isTwelveHoursFormat && periodsSlider) {
394
- periodsSlider.value = (currentDate.getHours() > this._hoursParameters.maxHour || currentDate.getHours() === this._hoursParameters.minHour) ? this.periodsArray[1] : this.periodsArray[0];
395
- }
396
- }
397
-
398
- /**
399
- * Closes the picker
400
- * @public
401
- */
402
- async closePicker() {
403
- await this._getPopover();
404
- this.responsivePopover.close();
405
- this._isPickerOpen = false;
406
-
407
- for (let i = 0; i < this._slidersDomRefs.length; i++) {
408
- this._slidersDomRefs[i].collapseSlider();
409
- }
410
- }
411
-
412
- /**
413
- * Opens the picker.
414
- * <code>{ focusInput: true }</code> By default, the focus goes in the picker after opening it.
415
- * Specify this option to focus the input field.
416
- * @public
417
- */
418
- async openPicker() {
419
- await this._getPopover();
420
- this.responsivePopover.open(this);
421
- this._isPickerOpen = true;
422
- this._slidersDomRefs = await this.slidersDomRefs();
423
-
424
- this.setSlidersValue();
425
-
426
- if (this._slidersDomRefs[0]) {
427
- this._slidersDomRefs[0].focus();
428
- }
429
- }
430
-
431
- togglePicker() {
432
- if (this.isOpen()) {
433
- this.closePicker();
434
- this._isPickerOpen = false;
435
- } else if (this._canOpenPicker()) {
436
- this.openPicker();
437
- this._isPickerOpen = true;
438
- }
439
- }
440
-
441
- /**
442
- * Checks if a value is valid against the current date format of the TimePicker
443
- * @param {string} value A value to be tested against the current date format
444
- * @public
445
- */
446
- isOpen() {
447
- return !!this._isPickerOpen;
448
- }
449
-
450
- _canOpenPicker() {
451
- return !this.disabled && !this.readonly;
452
- }
453
-
454
- async _getPopover() {
455
- const staticAreaItem = await this.getStaticAreaItemDomRef();
456
- this.responsivePopover = staticAreaItem.querySelector("ui5-responsive-popover");
457
- return this.responsivePopover;
458
- }
459
-
460
- get secondsArray() {
461
- return getSeconds();
462
- }
463
-
464
- get minutesArray() {
465
- return getMinutes();
466
- }
467
-
468
- get hoursArray() {
469
- return getHours(this._hoursParameters);
470
- }
471
-
472
- get periodsArray() {
473
- return this.getFormat().aDayPeriods.map(x => x.toUpperCase());
474
- }
475
-
476
- async slidersDomRefs() {
477
- await this._getPopover();
478
- return this.responsivePopover.default.length ? [...this.responsivePopover.default[0].children].filter(x => x.isUI5Element) : this.responsivePopover.default;
479
- }
480
-
481
- _getInput() {
482
- return this.shadowRoot.querySelector("ui5-input");
483
- }
484
-
485
- _getInputField() {
486
- const input = this._getInput();
487
- return input && input.getInputDOMRef();
488
- }
489
-
490
- get secondsSlider() {
491
- return this.responsivePopover && this.responsivePopover.querySelector(".ui5-timepicker-seconds-wheelslider");
492
- }
493
-
494
- get minutesSlider() {
495
- return this.responsivePopover && this.responsivePopover.querySelector(".ui5-timepicker-minutes-wheelslider");
496
- }
497
-
498
- get hoursSlider() {
499
- return this.responsivePopover && this.responsivePopover.querySelector(".ui5-timepicker-hours-wheelslider");
500
- }
501
-
502
- get periodsSlider() {
503
- return this.responsivePopover && this.responsivePopover.querySelector(".ui5-timepicker-period-wheelslider");
504
- }
505
-
506
- submitPickers() {
507
- const selectedDate = new Date(),
508
- secondsSlider = this.secondsSlider,
509
- minutesSlider = this.minutesSlider,
510
- hoursSlider = this.hoursSlider,
511
- periodsSlider = this.periodsSlider,
512
- minutes = minutesSlider ? minutesSlider.getAttribute("value") : "0",
513
- seconds = secondsSlider ? secondsSlider.getAttribute("value") : "0",
514
- period = periodsSlider ? periodsSlider.getAttribute("value") : this.periodsArray[0];
515
-
516
- let hours = hoursSlider ? hoursSlider.getAttribute("value") : this._hoursParameters.minHour.toString();
517
-
518
- if (period === this.periodsArray[0]) { // AM
519
- hours = hours === "12" ? 0 : hours;
520
- }
521
-
522
- if (period === this.periodsArray[1]) { // PM
523
- hours = hours === "12" ? hours : hours * 1 + 12;
524
- }
525
-
526
- selectedDate.setHours(hours);
527
- selectedDate.setMinutes(minutes);
528
- selectedDate.setSeconds(seconds);
529
-
530
- this.setValue(this.getFormat().format(selectedDate));
531
-
532
- this.fireEvent("change", { value: this.value, valid: true });
533
-
534
- this.closePicker();
535
- }
536
-
537
- /**
538
- * Checks if a value is valid against the current format patternt of the TimePicker.
539
- *
540
- * <br><br>
541
- * <b>Note:</b> an empty string is considered as valid value.
542
- * @param {string} value The value to be tested against the current date format
543
- * @public
544
- */
545
- isValid(value) {
546
- if (value === "") {
547
- return true;
548
- }
549
- return !!(value && this.getFormat().parse(value));
550
- }
551
-
552
- normalizeValue(value) {
553
- if (value === "") {
554
- return value;
555
- }
556
-
557
- return this.getFormat().format(this.getFormat().parse(value));
558
- }
559
-
560
121
  get _formatPattern() {
561
- return this.formatPattern || "medium"; // get from config
562
- }
122
+ const hasHours = !!this.formatPattern.match(/H/i);
123
+ const fallback = !this.formatPattern || !hasHours;
563
124
 
564
- get _isPattern() {
565
- return this._formatPattern !== "medium" && this._formatPattern !== "short" && this._formatPattern !== "long";
125
+ const localeData = getCachedLocaleDataInstance(getLocale());
126
+ return fallback ? localeData.getTimePattern("medium") : this.formatPattern;
566
127
  }
567
128
 
568
129
  get _displayFormat() {
@@ -573,212 +134,31 @@ class TimePicker extends UI5Element {
573
134
  return this.placeholder !== undefined ? this.placeholder : this._displayFormat;
574
135
  }
575
136
 
576
- handleSliderClicked(event) {
577
- if (event.target._expanded) {
578
- this.openSlider(event.target.label);
579
- }
580
- }
581
-
582
- openSlider(label) {
583
- for (let i = 0; i < this._slidersDomRefs.length; i++) {
584
- if (this._slidersDomRefs[i].label !== label) {
585
- this._slidersDomRefs[i].collapseSlider();
586
- }
587
- }
588
- }
589
-
590
- async _onfocuscontainerin(e) {
591
- if (e.target !== e.currentTarget) {
592
- return;
593
- }
594
- let sliders = [];
595
- if (this._slidersDomRefs.length) {
596
- sliders = await this.slidersDomRefs();
597
- } else {
598
- sliders = this._slidersDomRefs;
599
- }
600
- if (sliders[0]) {
601
- sliders[0].focus();
602
- }
603
- }
604
-
605
- async _oncontainerkeydown(e) {
606
- if (isLeft(e)) {
607
- let expandedSliderIndex = 0;
608
- for (let i = 0; i < this._slidersDomRefs.length; i++) {
609
- if (this._slidersDomRefs[i]._expanded) {
610
- expandedSliderIndex = i;
611
- }
612
- }
613
- if (this._slidersDomRefs[expandedSliderIndex - 1]) {
614
- this._slidersDomRefs[expandedSliderIndex - 1].focus();
615
- } else {
616
- this._slidersDomRefs[this._slidersDomRefs.length - 1].focus();
617
- }
618
- } else if (isRight(e)) {
619
- let expandedSliderIndex = 0;
620
-
621
- for (let i = 0; i < this._slidersDomRefs.length; i++) {
622
- if (this._slidersDomRefs[i]._expanded) {
623
- expandedSliderIndex = i;
624
- }
625
- }
626
- if (this._slidersDomRefs[expandedSliderIndex + 1]) {
627
- this._slidersDomRefs[expandedSliderIndex + 1].focus();
628
- } else {
629
- this._slidersDomRefs[0].focus();
630
- }
631
- }
632
-
633
- if (isTabNext(e) && e.target === this._slidersDomRefs[this._slidersDomRefs.length - 1]) {
634
- const responsivePopover = await this._getPopover();
635
- e.preventDefault();
636
- responsivePopover.querySelector(".ui5-timepicker-footer").firstElementChild.focus();
637
- } else if (isTabPrevious(e) && e.target === this._slidersDomRefs[0]) {
638
- const responsivePopover = await this._getPopover();
639
- e.preventDefault();
640
- responsivePopover.querySelector(`.ui5-timepicker-footer`).lastElementChild.focus();
641
- }
642
- }
643
-
644
- _onfooterkeydown(e) {
645
- if (isTabNext(e) && e.target === e.target.parentElement.lastElementChild) {
646
- e.preventDefault();
647
- this._slidersDomRefs[0].focus();
648
- }
649
-
650
- if (isTabPrevious(e) && e.target === e.target.parentElement.firstElementChild) {
651
- e.preventDefault();
652
- this._slidersDomRefs[this._slidersDomRefs.length - 1].focus();
653
- }
654
- }
655
-
656
- _ontimepickerkeydown(e) {
657
- this._handleTimepickerKeysDown(e);
658
- }
659
-
660
- _ontimepickerpopoverkeydown(e) {
661
- this._handleTimepickerKeysDown(e);
662
- }
663
-
664
- _handleTimepickerKeysDown(e) {
665
- if (isShow(e)) {
666
- e.preventDefault();
667
- this.togglePicker();
668
- }
669
- }
670
-
671
- _handleWheel(e) {
672
- e.preventDefault();
673
- }
674
-
675
- getFormat() {
676
- if (this._isPattern) {
677
- this._oDateFormat = DateFormat.getInstance({
678
- pattern: this._formatPattern,
679
- });
680
- } else {
681
- this._oDateFormat = DateFormat.getInstance({
682
- style: this._formatPattern,
683
- });
684
- }
685
-
686
- return this._oDateFormat;
687
- }
688
-
689
- setValue(value) {
690
- if (this.isValid(value)) {
691
- this.value = this.normalizeValue(value);
692
- this.setSlidersValue();
693
- this.valueState = ValueState.None;
694
- } else {
695
- this.valueState = ValueState.Error;
696
- }
697
- }
698
-
699
- /**
700
- * Formats a Java Script date object into a string representing a locale date and time
701
- * according to the <code>formatPattern</code> property of the TimePicker instance
702
- * @param {object} oDate A Java Script date object to be formatted as string
703
- * @public
704
- */
705
- formatValue(oDate) {
706
- return this.getFormat().format(oDate);
707
- }
708
-
709
- _getSlidersContained() {
710
- const formatArray = this.getFormat().aFormatArray;
711
- return getTimeControlsByFormat(formatArray, this._hoursParameters);
712
- }
713
-
714
- _initHoursFormatParameters() {
715
- const formatArray = this.getFormat().aFormatArray;
716
- const config = getHoursConfigByFormat(formatArray[0].type);
717
-
718
- this._hoursParameters.minHour = config.minHour;
719
- this._hoursParameters.maxHour = config.maxHour;
720
- this._hoursParameters.isTwelveHoursFormat = config.isTwelveHoursFormat;
721
- }
722
-
723
137
  /**
724
- * Currently selected date represented as JavaScript Date instance
138
+ * Currently selected time represented as JavaScript Date instance
725
139
  *
726
140
  * @readonly
727
141
  * @type { Date }
728
142
  * @public
729
143
  */
730
144
  get dateValue() {
731
- return this.getFormat().parse(this.value);
732
- }
733
-
734
- get shouldBuildHoursSlider() {
735
- return this._getSlidersContained()[0];
736
- }
737
-
738
- get shouldBuildMinutesSlider() {
739
- return this._getSlidersContained()[1];
740
- }
741
-
742
- get shouldBuildSecondsSlider() {
743
- return this._getSlidersContained()[2];
744
- }
745
-
746
- get shouldBuildPeriodsSlider() {
747
- return this._getSlidersContained()[3];
145
+ return this.getFormat().parse(this._effectiveValue);
748
146
  }
749
147
 
750
- get hoursSliderTitle() {
751
- return this.i18nBundle.getText(TIMEPICKER_HOURS_LABEL);
752
- }
753
-
754
- get minutesSliderTitle() {
755
- return this.i18nBundle.getText(TIMEPICKER_MINUTES_LABEL);
756
- }
757
-
758
- get secondsSliderTitle() {
759
- return this.i18nBundle.getText(TIMEPICKER_SECONDS_LABEL);
760
- }
761
-
762
- get periodSliderTitle() {
763
- return this.i18nBundle.getText(TIMEPICKER_PERIODS_LABEL);
764
- }
765
-
766
- get submitButtonLabel() {
767
- return this.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);
768
- }
769
-
770
- get cancelButtonLabel() {
771
- return this.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);
772
- }
773
-
774
- get classes() {
148
+ get accInfo() {
775
149
  return {
776
- container: {
777
- "ui5-timepicker-sliders-container": true,
778
- "ui5-phone": isPhone(),
779
- },
150
+ "ariaRoledescription": this.dateAriaDescription,
151
+ "ariaHasPopup": "dialog",
152
+ "ariaAutoComplete": "none",
153
+ "role": "combobox",
154
+ "ariaControls": `${this._id}-responsive-popover`,
155
+ "ariaExpanded": this.isOpen(),
780
156
  };
781
157
  }
158
+
159
+ get dateAriaDescription() {
160
+ return TimePicker.i18nBundle.getText(TIMEPICKER_INPUT_DESCRIPTION);
161
+ }
782
162
  }
783
163
 
784
164
  TimePicker.define();