@ui5/webcomponents 2.7.0-rc.1 → 2.7.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 (781) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +21 -16
  3. package/cypress/specs/{Button.cy.ts → Button.cy.tsx} +60 -33
  4. package/cypress/specs/CalendarLegend.cy.tsx +77 -0
  5. package/cypress/specs/{Card.cy.ts → Card.cy.tsx} +28 -28
  6. package/cypress/specs/ColorPalette.cy.tsx +213 -0
  7. package/cypress/specs/{ColorPicker.cy.ts → ColorPicker.cy.tsx} +7 -9
  8. package/cypress/specs/{ComboBox.cy.ts → ComboBox.cy.tsx} +9 -10
  9. package/cypress/specs/Dialog.cy.tsx +44 -0
  10. package/cypress/specs/{ExpandableText.cy.ts → ExpandableText.cy.tsx} +27 -23
  11. package/cypress/specs/F6.cy.tsx +906 -0
  12. package/cypress/specs/{Form.cy.ts → Form.cy.tsx} +326 -324
  13. package/cypress/specs/{FormSupport.cy.ts → FormSupport.cy.tsx} +270 -285
  14. package/cypress/specs/{Input.cy.ts → Input.cy.tsx} +38 -41
  15. package/cypress/specs/{Label.cy.ts → Label.cy.tsx} +62 -46
  16. package/cypress/specs/{Link.cy.ts → Link.cy.tsx} +2 -3
  17. package/cypress/specs/{List.cy.ts → List.cy.tsx} +34 -36
  18. package/cypress/specs/{LitKeyFunction.cy.ts → LitKeyFunction.cy.tsx} +10 -9
  19. package/cypress/specs/{Menu.cy.ts → Menu.cy.tsx} +208 -92
  20. package/cypress/specs/MessageStrip.cy.tsx +164 -0
  21. package/cypress/specs/MultiComboBox.cy.tsx +58 -0
  22. package/cypress/specs/{MultiInput.cy.ts → MultiInput.cy.tsx} +15 -15
  23. package/cypress/specs/{Popover.cy.ts → Popover.cy.tsx} +28 -25
  24. package/cypress/specs/RTL.cy.tsx +18 -0
  25. package/cypress/specs/{RatingIndicator.cy.ts → RatingIndicator.cy.tsx} +48 -11
  26. package/cypress/specs/{ResponsivePopover.mobile.cy.ts → ResponsivePopover.mobile.cy.tsx} +35 -16
  27. package/cypress/specs/Select.cy.tsx +56 -0
  28. package/cypress/specs/{StepInput.cy.ts → StepInput.cy.tsx} +4 -6
  29. package/cypress/specs/Table.cy.tsx +665 -0
  30. package/cypress/specs/{TableDragAndDrop.cy.ts → TableDragAndDrop.cy.tsx} +27 -24
  31. package/cypress/specs/{TableGrowing.cy.ts → TableGrowing.cy.tsx} +83 -75
  32. package/cypress/specs/TableLoading.cy.tsx +48 -0
  33. package/cypress/specs/{TableRowActions.cy.ts → TableRowActions.cy.tsx} +67 -61
  34. package/cypress/specs/{TableVirtualizer.cy.ts → TableVirtualizer.cy.tsx} +12 -15
  35. package/cypress/specs/{Tag.cy.ts → Tag.cy.tsx} +53 -31
  36. package/cypress/specs/{Text.cy.ts → Text.cy.tsx} +6 -7
  37. package/cypress/specs/{TextArea.cy.ts → TextArea.cy.tsx} +62 -49
  38. package/cypress/specs/Title.cy.tsx +36 -0
  39. package/cypress/specs/{Toast.cy.ts → Toast.cy.tsx} +17 -16
  40. package/cypress/specs/Tokenizer.cy.tsx +173 -0
  41. package/cypress/specs/{Toolbar.cy.ts → Toolbar.cy.tsx} +61 -63
  42. package/cypress/specs/{Tree.cy.ts → Tree.cy.tsx} +13 -12
  43. package/cypress/specs/base/{AccessibilityTextsHelper.cy.ts → AccessibilityTextsHelper.cy.tsx} +52 -41
  44. package/cypress/specs/base/{Events.cy.ts → Events.cy.tsx} +58 -57
  45. package/cypress/specs/base/{IconCollection.cy.ts → IconCollection.cy.tsx} +4 -4
  46. package/cypress/specs/base/{IgnoreCustomElements.cy.ts → IgnoreCustomElements.cy.tsx} +15 -12
  47. package/cypress/specs/base/Tooltips.cy.tsx +62 -0
  48. package/cypress/support/commands/ColorPalette.commands.ts +23 -5
  49. package/cypress/support/commands/Menu.commands.ts +7 -7
  50. package/cypress/support/commands.ts +1 -0
  51. package/cypress/tsconfig.json +2 -0
  52. package/dist/.tsbuildinfo +1 -1
  53. package/dist/AvatarGroup.d.ts +1 -1
  54. package/dist/Button.d.ts +11 -0
  55. package/dist/Button.js +19 -0
  56. package/dist/Button.js.map +1 -1
  57. package/dist/ButtonBadge.d.ts +32 -0
  58. package/dist/ButtonBadge.js +62 -0
  59. package/dist/ButtonBadge.js.map +1 -0
  60. package/dist/ButtonBadgeTemplate.d.ts +2 -0
  61. package/dist/ButtonBadgeTemplate.js +6 -0
  62. package/dist/ButtonBadgeTemplate.js.map +1 -0
  63. package/dist/ButtonTemplate.js +8 -2
  64. package/dist/ButtonTemplate.js.map +1 -1
  65. package/dist/Calendar.d.ts +1 -0
  66. package/dist/Calendar.js +8 -3
  67. package/dist/Calendar.js.map +1 -1
  68. package/dist/ColorPalettePopover.d.ts +0 -1
  69. package/dist/ColorPalettePopover.js +0 -1
  70. package/dist/ColorPalettePopover.js.map +1 -1
  71. package/dist/DayPicker.d.ts +2 -0
  72. package/dist/DayPicker.js +12 -3
  73. package/dist/DayPicker.js.map +1 -1
  74. package/dist/DayPickerTemplate.js +1 -1
  75. package/dist/DayPickerTemplate.js.map +1 -1
  76. package/dist/Dialog.js +1 -0
  77. package/dist/Dialog.js.map +1 -1
  78. package/dist/FileUploader.js +1 -1
  79. package/dist/FileUploader.js.map +1 -1
  80. package/dist/Input.d.ts +0 -14
  81. package/dist/Input.js +0 -9
  82. package/dist/Input.js.map +1 -1
  83. package/dist/List.js +4 -0
  84. package/dist/List.js.map +1 -1
  85. package/dist/Menu.d.ts +5 -0
  86. package/dist/Menu.js +35 -14
  87. package/dist/Menu.js.map +1 -1
  88. package/dist/MenuItem.d.ts +10 -5
  89. package/dist/MenuItem.js +25 -1
  90. package/dist/MenuItem.js.map +1 -1
  91. package/dist/MenuItemTemplate.js +1 -1
  92. package/dist/MenuItemTemplate.js.map +1 -1
  93. package/dist/MessageStrip.js +1 -3
  94. package/dist/MessageStrip.js.map +1 -1
  95. package/dist/MultiComboBox.js +4 -4
  96. package/dist/MultiComboBox.js.map +1 -1
  97. package/dist/Popover.d.ts +4 -0
  98. package/dist/Popover.js +6 -0
  99. package/dist/Popover.js.map +1 -1
  100. package/dist/RatingIndicator.js +4 -1
  101. package/dist/RatingIndicator.js.map +1 -1
  102. package/dist/Select.d.ts +1 -0
  103. package/dist/Select.js +3 -0
  104. package/dist/Select.js.map +1 -1
  105. package/dist/SelectPopoverTemplate.js +3 -3
  106. package/dist/SelectPopoverTemplate.js.map +1 -1
  107. package/dist/SpecialCalendarDate.d.ts +6 -0
  108. package/dist/SpecialCalendarDate.js +9 -0
  109. package/dist/SpecialCalendarDate.js.map +1 -1
  110. package/dist/SplitButton.d.ts +3 -0
  111. package/dist/SplitButton.js +3 -0
  112. package/dist/SplitButton.js.map +1 -1
  113. package/dist/Tab.d.ts +1 -1
  114. package/dist/Table.js +1 -1
  115. package/dist/Table.js.map +1 -1
  116. package/dist/TableGrowing.d.ts +6 -1
  117. package/dist/TableGrowing.js +6 -1
  118. package/dist/TableGrowing.js.map +1 -1
  119. package/dist/TableVirtualizer.js +4 -2
  120. package/dist/TableVirtualizer.js.map +1 -1
  121. package/dist/Tag.d.ts +2 -1
  122. package/dist/Tag.js +1 -0
  123. package/dist/Tag.js.map +1 -1
  124. package/dist/TagTemplate.js +2 -2
  125. package/dist/TagTemplate.js.map +1 -1
  126. package/dist/TimePicker.d.ts +6 -3
  127. package/dist/TimePicker.js +17 -6
  128. package/dist/TimePicker.js.map +1 -1
  129. package/dist/TimePickerClock.d.ts +22 -52
  130. package/dist/TimePickerClock.js +71 -224
  131. package/dist/TimePickerClock.js.map +1 -1
  132. package/dist/TimePickerClockTemplate.js +9 -6
  133. package/dist/TimePickerClockTemplate.js.map +1 -1
  134. package/dist/TimePickerInternals.d.ts +2 -1
  135. package/dist/TimePickerInternals.js.map +1 -1
  136. package/dist/TimePickerPopoverTemplate.js +1 -1
  137. package/dist/TimePickerPopoverTemplate.js.map +1 -1
  138. package/dist/TimeSelectionClocks.d.ts +15 -3
  139. package/dist/TimeSelectionClocks.js +64 -28
  140. package/dist/TimeSelectionClocks.js.map +1 -1
  141. package/dist/TimeSelectionClocksTemplate.js +1 -1
  142. package/dist/TimeSelectionClocksTemplate.js.map +1 -1
  143. package/dist/Tokenizer.js +1 -1
  144. package/dist/Tokenizer.js.map +1 -1
  145. package/dist/YearPicker.js +2 -2
  146. package/dist/YearPicker.js.map +1 -1
  147. package/dist/bundle.esm.js +1 -2
  148. package/dist/bundle.esm.js.map +1 -1
  149. package/dist/css/themes/Avatar.css +1 -1
  150. package/dist/css/themes/AvatarGroup.css +1 -1
  151. package/dist/css/themes/Bar.css +1 -1
  152. package/dist/css/themes/Breadcrumbs.css +1 -1
  153. package/dist/css/themes/BusyIndicator.css +1 -1
  154. package/dist/css/themes/Button.css +1 -1
  155. package/dist/css/themes/ButtonBadge.css +1 -0
  156. package/dist/css/themes/Calendar.css +1 -1
  157. package/dist/css/themes/CalendarHeader.css +1 -1
  158. package/dist/css/themes/CalendarLegend.css +1 -1
  159. package/dist/css/themes/CalendarLegendItem.css +1 -1
  160. package/dist/css/themes/Card.css +1 -1
  161. package/dist/css/themes/CardHeader.css +1 -1
  162. package/dist/css/themes/Carousel.css +1 -1
  163. package/dist/css/themes/CheckBox.css +1 -1
  164. package/dist/css/themes/ColorPalette.css +1 -1
  165. package/dist/css/themes/ColorPaletteItem.css +1 -1
  166. package/dist/css/themes/ColorPalettePopover.css +1 -1
  167. package/dist/css/themes/ColorPicker.css +1 -1
  168. package/dist/css/themes/ComboBox.css +1 -1
  169. package/dist/css/themes/ComboBoxItem.css +1 -1
  170. package/dist/css/themes/DatePicker.css +1 -1
  171. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  172. package/dist/css/themes/DayPicker.css +1 -1
  173. package/dist/css/themes/Dialog.css +1 -1
  174. package/dist/css/themes/FileUploader.css +1 -1
  175. package/dist/css/themes/Form.css +1 -1
  176. package/dist/css/themes/FormItem.css +1 -1
  177. package/dist/css/themes/FormItemSpan.css +1 -1
  178. package/dist/css/themes/GrowingButton.css +1 -1
  179. package/dist/css/themes/Icon.css +1 -1
  180. package/dist/css/themes/Input.css +1 -1
  181. package/dist/css/themes/InputIcon.css +1 -1
  182. package/dist/css/themes/InputSharedStyles.css +1 -1
  183. package/dist/css/themes/Link.css +1 -1
  184. package/dist/css/themes/List.css +1 -1
  185. package/dist/css/themes/ListItem.css +1 -1
  186. package/dist/css/themes/ListItemBase.css +1 -1
  187. package/dist/css/themes/ListItemCustom.css +1 -1
  188. package/dist/css/themes/ListItemGroup.css +1 -1
  189. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  190. package/dist/css/themes/ListItemIcon.css +1 -1
  191. package/dist/css/themes/Menu.css +1 -1
  192. package/dist/css/themes/MenuItem.css +1 -1
  193. package/dist/css/themes/MessageStrip.css +1 -1
  194. package/dist/css/themes/MonthPicker.css +1 -1
  195. package/dist/css/themes/MultiComboBox.css +1 -1
  196. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  197. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  198. package/dist/css/themes/MultiInput.css +1 -1
  199. package/dist/css/themes/OptionBase.css +1 -1
  200. package/dist/css/themes/Panel.css +1 -1
  201. package/dist/css/themes/Popover.css +1 -1
  202. package/dist/css/themes/PopupsCommon.css +1 -1
  203. package/dist/css/themes/ProgressIndicator.css +1 -1
  204. package/dist/css/themes/RadioButton.css +1 -1
  205. package/dist/css/themes/RangeSlider.css +1 -1
  206. package/dist/css/themes/RatingIndicator.css +1 -1
  207. package/dist/css/themes/ResponsivePopover.css +1 -1
  208. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  209. package/dist/css/themes/SegmentedButton.css +1 -1
  210. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  211. package/dist/css/themes/Select.css +1 -1
  212. package/dist/css/themes/SliderBase.css +1 -1
  213. package/dist/css/themes/SplitButton.css +1 -1
  214. package/dist/css/themes/StepInput.css +1 -1
  215. package/dist/css/themes/SuggestionItem.css +1 -1
  216. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  217. package/dist/css/themes/Switch.css +1 -1
  218. package/dist/css/themes/TabContainer.css +1 -1
  219. package/dist/css/themes/TabInOverflow.css +1 -1
  220. package/dist/css/themes/TabInStrip.css +1 -1
  221. package/dist/css/themes/TabSemanticIcon.css +1 -1
  222. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  223. package/dist/css/themes/Table.css +1 -1
  224. package/dist/css/themes/TableCellBase.css +1 -1
  225. package/dist/css/themes/TableHeaderRow.css +1 -1
  226. package/dist/css/themes/TableRow.css +1 -1
  227. package/dist/css/themes/TableRowActionBase.css +1 -1
  228. package/dist/css/themes/TableRowBase.css +1 -1
  229. package/dist/css/themes/Tag.css +1 -1
  230. package/dist/css/themes/Text.css +1 -1
  231. package/dist/css/themes/TextArea.css +1 -1
  232. package/dist/css/themes/TimePicker.css +1 -1
  233. package/dist/css/themes/TimePickerClock.css +1 -1
  234. package/dist/css/themes/Toast.css +1 -1
  235. package/dist/css/themes/ToggleButton.css +1 -1
  236. package/dist/css/themes/Token.css +1 -1
  237. package/dist/css/themes/Tokenizer.css +1 -1
  238. package/dist/css/themes/TokenizerPopover.css +1 -1
  239. package/dist/css/themes/Toolbar.css +1 -1
  240. package/dist/css/themes/ToolbarPopover.css +1 -1
  241. package/dist/css/themes/TreeItem.css +1 -1
  242. package/dist/css/themes/ValueStateMessage.css +1 -1
  243. package/dist/css/themes/YearPicker.css +1 -1
  244. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  245. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  246. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  247. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  248. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  249. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  250. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  251. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  252. package/dist/custom-elements-internal.json +200 -45
  253. package/dist/custom-elements.json +145 -43
  254. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  266. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  267. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  268. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  269. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  270. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  271. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  272. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  273. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  274. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  275. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  276. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  277. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  278. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  279. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  280. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  281. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  282. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  283. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  284. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  285. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  286. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  287. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  288. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  289. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  290. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  291. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  292. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  293. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  294. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  295. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  296. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  297. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  298. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  299. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  300. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  301. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  302. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  303. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  304. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  305. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  306. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  307. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  308. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  309. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  310. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  311. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  312. package/dist/generated/i18n/i18n-defaults.d.ts +1 -2
  313. package/dist/generated/i18n/i18n-defaults.js +1 -2
  314. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  315. package/dist/generated/templates/TableGrowingTemplate.lit.js +2 -3
  316. package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -1
  317. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  318. package/dist/generated/themes/Avatar.css.js +1 -1
  319. package/dist/generated/themes/Avatar.css.js.map +1 -1
  320. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  321. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  322. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  323. package/dist/generated/themes/Bar.css.d.ts +1 -1
  324. package/dist/generated/themes/Bar.css.js +1 -1
  325. package/dist/generated/themes/Bar.css.js.map +1 -1
  326. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  327. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  328. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  329. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  330. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  331. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  332. package/dist/generated/themes/Button.css.d.ts +1 -1
  333. package/dist/generated/themes/Button.css.js +1 -1
  334. package/dist/generated/themes/Button.css.js.map +1 -1
  335. package/dist/generated/themes/ButtonBadge.css.d.ts +2 -0
  336. package/dist/generated/themes/ButtonBadge.css.js +8 -0
  337. package/dist/generated/themes/ButtonBadge.css.js.map +1 -0
  338. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  339. package/dist/generated/themes/Calendar.css.js +1 -1
  340. package/dist/generated/themes/Calendar.css.js.map +1 -1
  341. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  342. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  343. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  344. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  345. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  346. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  347. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  348. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  349. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  350. package/dist/generated/themes/Card.css.d.ts +1 -1
  351. package/dist/generated/themes/Card.css.js +1 -1
  352. package/dist/generated/themes/Card.css.js.map +1 -1
  353. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  354. package/dist/generated/themes/CardHeader.css.js +1 -1
  355. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  356. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  357. package/dist/generated/themes/Carousel.css.js +1 -1
  358. package/dist/generated/themes/Carousel.css.js.map +1 -1
  359. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  360. package/dist/generated/themes/CheckBox.css.js +1 -1
  361. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  362. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  363. package/dist/generated/themes/ColorPalette.css.js +1 -1
  364. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  365. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  366. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  367. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  368. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  369. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  370. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  371. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  372. package/dist/generated/themes/ColorPicker.css.js +1 -1
  373. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  374. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  375. package/dist/generated/themes/ComboBox.css.js +1 -1
  376. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  377. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  378. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  379. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  380. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  381. package/dist/generated/themes/DatePicker.css.js +1 -1
  382. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  383. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  384. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  385. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  386. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  387. package/dist/generated/themes/DayPicker.css.js +1 -1
  388. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  389. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  390. package/dist/generated/themes/Dialog.css.js +1 -1
  391. package/dist/generated/themes/Dialog.css.js.map +1 -1
  392. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  393. package/dist/generated/themes/FileUploader.css.js +1 -1
  394. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  395. package/dist/generated/themes/Form.css.d.ts +1 -1
  396. package/dist/generated/themes/Form.css.js +1 -1
  397. package/dist/generated/themes/Form.css.js.map +1 -1
  398. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  399. package/dist/generated/themes/FormItem.css.js +1 -1
  400. package/dist/generated/themes/FormItem.css.js.map +1 -1
  401. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  402. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  403. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  404. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  405. package/dist/generated/themes/GrowingButton.css.js +1 -1
  406. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  407. package/dist/generated/themes/Icon.css.d.ts +1 -1
  408. package/dist/generated/themes/Icon.css.js +1 -1
  409. package/dist/generated/themes/Icon.css.js.map +1 -1
  410. package/dist/generated/themes/Input.css.d.ts +1 -1
  411. package/dist/generated/themes/Input.css.js +1 -1
  412. package/dist/generated/themes/Input.css.js.map +1 -1
  413. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  414. package/dist/generated/themes/InputIcon.css.js +1 -1
  415. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  416. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  417. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  418. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  419. package/dist/generated/themes/Link.css.d.ts +1 -1
  420. package/dist/generated/themes/Link.css.js +1 -1
  421. package/dist/generated/themes/Link.css.js.map +1 -1
  422. package/dist/generated/themes/List.css.d.ts +1 -1
  423. package/dist/generated/themes/List.css.js +1 -1
  424. package/dist/generated/themes/List.css.js.map +1 -1
  425. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  426. package/dist/generated/themes/ListItem.css.js +1 -1
  427. package/dist/generated/themes/ListItem.css.js.map +1 -1
  428. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  429. package/dist/generated/themes/ListItemBase.css.js +1 -1
  430. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  431. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  432. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  433. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  434. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  435. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  436. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  437. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  438. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  439. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  440. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  441. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  442. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  443. package/dist/generated/themes/Menu.css.d.ts +1 -1
  444. package/dist/generated/themes/Menu.css.js +1 -1
  445. package/dist/generated/themes/Menu.css.js.map +1 -1
  446. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  447. package/dist/generated/themes/MenuItem.css.js +1 -1
  448. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  449. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  450. package/dist/generated/themes/MessageStrip.css.js +1 -1
  451. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  452. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  453. package/dist/generated/themes/MonthPicker.css.js +1 -1
  454. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  455. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  456. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  457. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  458. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  459. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  460. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  461. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  462. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  463. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  464. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  465. package/dist/generated/themes/MultiInput.css.js +1 -1
  466. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  467. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  468. package/dist/generated/themes/OptionBase.css.js +1 -1
  469. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  470. package/dist/generated/themes/Panel.css.d.ts +1 -1
  471. package/dist/generated/themes/Panel.css.js +1 -1
  472. package/dist/generated/themes/Panel.css.js.map +1 -1
  473. package/dist/generated/themes/Popover.css.d.ts +1 -1
  474. package/dist/generated/themes/Popover.css.js +1 -1
  475. package/dist/generated/themes/Popover.css.js.map +1 -1
  476. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  477. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  478. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  479. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  480. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  481. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  482. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  483. package/dist/generated/themes/RadioButton.css.js +1 -1
  484. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  485. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  486. package/dist/generated/themes/RangeSlider.css.js +1 -1
  487. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  488. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  489. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  490. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  491. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  492. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  493. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  494. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  495. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  496. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  497. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  498. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  499. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  500. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  501. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  502. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  503. package/dist/generated/themes/Select.css.d.ts +1 -1
  504. package/dist/generated/themes/Select.css.js +1 -1
  505. package/dist/generated/themes/Select.css.js.map +1 -1
  506. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  507. package/dist/generated/themes/SliderBase.css.js +1 -1
  508. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  509. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  510. package/dist/generated/themes/SplitButton.css.js +1 -1
  511. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  512. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  513. package/dist/generated/themes/StepInput.css.js +1 -1
  514. package/dist/generated/themes/StepInput.css.js.map +1 -1
  515. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  516. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  517. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  518. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  519. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  520. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  521. package/dist/generated/themes/Switch.css.d.ts +1 -1
  522. package/dist/generated/themes/Switch.css.js +1 -1
  523. package/dist/generated/themes/Switch.css.js.map +1 -1
  524. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  525. package/dist/generated/themes/TabContainer.css.js +1 -1
  526. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  527. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  528. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  529. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  530. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  531. package/dist/generated/themes/TabInStrip.css.js +1 -1
  532. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  533. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  534. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  535. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  536. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  537. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  538. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  539. package/dist/generated/themes/Table.css.d.ts +1 -1
  540. package/dist/generated/themes/Table.css.js +1 -1
  541. package/dist/generated/themes/Table.css.js.map +1 -1
  542. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  543. package/dist/generated/themes/TableCellBase.css.js +1 -1
  544. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  545. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  546. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  547. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  548. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  549. package/dist/generated/themes/TableRow.css.js +1 -1
  550. package/dist/generated/themes/TableRow.css.js.map +1 -1
  551. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  552. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  553. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  554. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  555. package/dist/generated/themes/TableRowBase.css.js +1 -1
  556. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  557. package/dist/generated/themes/Tag.css.d.ts +1 -1
  558. package/dist/generated/themes/Tag.css.js +1 -1
  559. package/dist/generated/themes/Tag.css.js.map +1 -1
  560. package/dist/generated/themes/Text.css.d.ts +1 -1
  561. package/dist/generated/themes/Text.css.js +1 -1
  562. package/dist/generated/themes/Text.css.js.map +1 -1
  563. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  564. package/dist/generated/themes/TextArea.css.js +1 -1
  565. package/dist/generated/themes/TextArea.css.js.map +1 -1
  566. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  567. package/dist/generated/themes/TimePicker.css.js +1 -1
  568. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  569. package/dist/generated/themes/TimePickerClock.css.d.ts +1 -1
  570. package/dist/generated/themes/TimePickerClock.css.js +1 -1
  571. package/dist/generated/themes/TimePickerClock.css.js.map +1 -1
  572. package/dist/generated/themes/Toast.css.d.ts +1 -1
  573. package/dist/generated/themes/Toast.css.js +1 -1
  574. package/dist/generated/themes/Toast.css.js.map +1 -1
  575. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  576. package/dist/generated/themes/ToggleButton.css.js +1 -1
  577. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  578. package/dist/generated/themes/Token.css.d.ts +1 -1
  579. package/dist/generated/themes/Token.css.js +1 -1
  580. package/dist/generated/themes/Token.css.js.map +1 -1
  581. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  582. package/dist/generated/themes/Tokenizer.css.js +1 -1
  583. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  584. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  585. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  586. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  587. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  588. package/dist/generated/themes/Toolbar.css.js +1 -1
  589. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  590. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  591. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  592. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  593. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  594. package/dist/generated/themes/TreeItem.css.js +1 -1
  595. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  596. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  597. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  598. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  599. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  600. package/dist/generated/themes/YearPicker.css.js +1 -1
  601. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  602. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  603. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  604. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  605. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  606. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  607. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  608. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  609. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  610. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  611. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  612. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  613. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  614. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  615. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  616. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  617. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  618. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  619. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  620. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  621. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  622. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  623. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  624. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  625. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  626. package/dist/types/ButtonBadgeDesign.d.ts +25 -0
  627. package/dist/types/ButtonBadgeDesign.js +27 -0
  628. package/dist/types/ButtonBadgeDesign.js.map +1 -0
  629. package/dist/types/TableGrowingMode.d.ts +2 -0
  630. package/dist/types/TableGrowingMode.js +2 -0
  631. package/dist/types/TableGrowingMode.js.map +1 -1
  632. package/dist/vscode.html-custom-data.json +32 -11
  633. package/dist/web-types.json +83 -20
  634. package/package.json +12 -10
  635. package/src/ButtonBadgeTemplate.tsx +6 -0
  636. package/src/ButtonTemplate.tsx +10 -1
  637. package/src/DayPickerTemplate.tsx +1 -0
  638. package/src/MenuItemTemplate.tsx +0 -10
  639. package/src/SelectPopoverTemplate.tsx +3 -3
  640. package/src/TableGrowing.hbs +17 -19
  641. package/src/TagTemplate.tsx +2 -1
  642. package/src/TimePickerClockTemplate.tsx +35 -36
  643. package/src/TimePickerPopoverTemplate.tsx +1 -0
  644. package/src/TimeSelectionClocksTemplate.tsx +2 -1
  645. package/src/i18n/messagebundle.properties +0 -3
  646. package/src/i18n/messagebundle_ar.properties +11 -1
  647. package/src/i18n/messagebundle_bg.properties +11 -1
  648. package/src/i18n/messagebundle_ca.properties +11 -1
  649. package/src/i18n/messagebundle_cnr.properties +11 -1
  650. package/src/i18n/messagebundle_cs.properties +10 -0
  651. package/src/i18n/messagebundle_cy.properties +11 -1
  652. package/src/i18n/messagebundle_da.properties +10 -0
  653. package/src/i18n/messagebundle_de.properties +11 -1
  654. package/src/i18n/messagebundle_el.properties +11 -1
  655. package/src/i18n/messagebundle_en.properties +8 -0
  656. package/src/i18n/messagebundle_en_GB.properties +11 -1
  657. package/src/i18n/messagebundle_en_US_sappsd.properties +8 -0
  658. package/src/i18n/messagebundle_en_US_saprigi.properties +8 -2
  659. package/src/i18n/messagebundle_en_US_saptrc.properties +8 -0
  660. package/src/i18n/messagebundle_es.properties +11 -1
  661. package/src/i18n/messagebundle_es_MX.properties +11 -1
  662. package/src/i18n/messagebundle_et.properties +11 -1
  663. package/src/i18n/messagebundle_fi.properties +11 -1
  664. package/src/i18n/messagebundle_fr.properties +11 -1
  665. package/src/i18n/messagebundle_fr_CA.properties +11 -1
  666. package/src/i18n/messagebundle_hi.properties +11 -1
  667. package/src/i18n/messagebundle_hr.properties +11 -1
  668. package/src/i18n/messagebundle_hu.properties +11 -1
  669. package/src/i18n/messagebundle_id.properties +11 -1
  670. package/src/i18n/messagebundle_it.properties +11 -1
  671. package/src/i18n/messagebundle_iw.properties +11 -1
  672. package/src/i18n/messagebundle_ja.properties +11 -1
  673. package/src/i18n/messagebundle_kk.properties +11 -1
  674. package/src/i18n/messagebundle_ko.properties +11 -1
  675. package/src/i18n/messagebundle_lt.properties +11 -1
  676. package/src/i18n/messagebundle_lv.properties +11 -1
  677. package/src/i18n/messagebundle_mk.properties +11 -1
  678. package/src/i18n/messagebundle_ms.properties +11 -1
  679. package/src/i18n/messagebundle_nl.properties +11 -1
  680. package/src/i18n/messagebundle_no.properties +11 -1
  681. package/src/i18n/messagebundle_pl.properties +11 -1
  682. package/src/i18n/messagebundle_pt.properties +11 -1
  683. package/src/i18n/messagebundle_pt_PT.properties +11 -1
  684. package/src/i18n/messagebundle_ro.properties +11 -1
  685. package/src/i18n/messagebundle_ru.properties +10 -0
  686. package/src/i18n/messagebundle_sh.properties +11 -1
  687. package/src/i18n/messagebundle_sk.properties +11 -1
  688. package/src/i18n/messagebundle_sl.properties +12 -2
  689. package/src/i18n/messagebundle_sr.properties +11 -1
  690. package/src/i18n/messagebundle_sv.properties +10 -0
  691. package/src/i18n/messagebundle_th.properties +11 -1
  692. package/src/i18n/messagebundle_tr.properties +10 -0
  693. package/src/i18n/messagebundle_uk.properties +14 -4
  694. package/src/i18n/messagebundle_vi.properties +11 -1
  695. package/src/i18n/messagebundle_zh_CN.properties +11 -1
  696. package/src/i18n/messagebundle_zh_TW.properties +11 -1
  697. package/src/themes/Button.css +37 -0
  698. package/src/themes/ButtonBadge.css +17 -0
  699. package/src/themes/ColorPicker.css +32 -38
  700. package/src/themes/DayPicker.css +1 -0
  701. package/src/themes/MenuItem.css +5 -1
  702. package/src/themes/SegmentedButton.css +1 -1
  703. package/src/themes/SplitButton.css +8 -8
  704. package/src/themes/Switch.css +2 -0
  705. package/src/themes/TableRow.css +0 -1
  706. package/src/themes/TableRowBase.css +1 -0
  707. package/src/themes/TimePickerClock.css +180 -9
  708. package/src/themes/base/ButtonBadge-parameters.css +3 -0
  709. package/src/themes/base/ColorPicker-parameters.css +5 -5
  710. package/src/themes/base/SegmentedButtton-parameters.css +0 -1
  711. package/src/themes/base/SplitButton-parameters.css +0 -2
  712. package/src/themes/base/sizes-parameters.css +29 -3
  713. package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
  714. package/src/themes/sap_fiori_3/sizes-parameters.css +6 -0
  715. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  716. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +6 -0
  717. package/src/themes/sap_fiori_3_hcb/ColorPicker-parameters.css +5 -1
  718. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +0 -1
  719. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  720. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +6 -0
  721. package/src/themes/sap_fiori_3_hcw/ColorPicker-parameters.css +5 -1
  722. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +0 -1
  723. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  724. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +6 -0
  725. package/src/themes/sap_horizon/ColorPicker-parameters.css +0 -4
  726. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +0 -1
  727. package/src/themes/sap_horizon/SplitButton-parameters.css +0 -1
  728. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  729. package/src/themes/sap_horizon/sizes-parameters.css +0 -1
  730. package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +0 -4
  731. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +0 -1
  732. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +0 -1
  733. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  734. package/src/themes/sap_horizon_dark/sizes-parameters.css +0 -1
  735. package/src/themes/sap_horizon_hcb/ColorPicker-parameters.css +3 -4
  736. package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +0 -1
  737. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +0 -1
  738. package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  739. package/src/themes/sap_horizon_hcb/sizes-parameters.css +3 -1
  740. package/src/themes/sap_horizon_hcw/ColorPicker-parameters.css +3 -4
  741. package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +0 -1
  742. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +0 -1
  743. package/src/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
  744. package/src/themes/sap_horizon_hcw/sizes-parameters.css +3 -1
  745. package/cypress/specs/ColorPalette.cy.ts +0 -47
  746. package/cypress/specs/F6.cy.ts +0 -793
  747. package/cypress/specs/MessageStrip.cy.ts +0 -91
  748. package/cypress/specs/MultiComboBox.cy.ts +0 -22
  749. package/cypress/specs/RTL.cy.ts +0 -17
  750. package/cypress/specs/Select.cy.ts +0 -39
  751. package/cypress/specs/Table.cy.ts +0 -636
  752. package/cypress/specs/TableLoading.cy.ts +0 -44
  753. package/cypress/specs/Title.cy.ts +0 -37
  754. package/cypress/specs/Tokenizer.cy.ts +0 -114
  755. package/cypress/specs/base/Tooltips.cy.ts +0 -55
  756. package/dist/NavigationMenu.d.ts +0 -34
  757. package/dist/NavigationMenu.js +0 -64
  758. package/dist/NavigationMenu.js.map +0 -1
  759. package/dist/NavigationMenuItem.d.ts +0 -76
  760. package/dist/NavigationMenuItem.js +0 -76
  761. package/dist/NavigationMenuItem.js.map +0 -1
  762. package/dist/NavigationMenuItemTemplate.d.ts +0 -3
  763. package/dist/NavigationMenuItemTemplate.js +0 -44
  764. package/dist/NavigationMenuItemTemplate.js.map +0 -1
  765. package/dist/NavigationMenuTemplate.d.ts +0 -2
  766. package/dist/NavigationMenuTemplate.js +0 -15
  767. package/dist/NavigationMenuTemplate.js.map +0 -1
  768. package/dist/css/themes/NavigationMenu.css +0 -1
  769. package/dist/css/themes/NavigationMenuItem.css +0 -1
  770. package/dist/generated/themes/NavigationMenu.css.d.ts +0 -2
  771. package/dist/generated/themes/NavigationMenu.css.js +0 -8
  772. package/dist/generated/themes/NavigationMenu.css.js.map +0 -1
  773. package/dist/generated/themes/NavigationMenuItem.css.d.ts +0 -2
  774. package/dist/generated/themes/NavigationMenuItem.css.js +0 -8
  775. package/dist/generated/themes/NavigationMenuItem.css.js.map +0 -1
  776. package/src/NavigationMenuItemTemplate.tsx +0 -144
  777. package/src/NavigationMenuTemplate.tsx +0 -68
  778. package/src/themes/NavigationMenu.css +0 -17
  779. package/src/themes/NavigationMenuItem.css +0 -56
  780. /package/cypress/specs/{TableUtils.cy.ts → TableUtils.cy.tsx} +0 -0
  781. /package/cypress/specs/base/{InvisibleMessage.cy.ts → InvisibleMessage.cy.tsx} +0 -0
package/dist/Tag.d.ts CHANGED
@@ -26,6 +26,7 @@ import type TagSize from "./types/TagSize.js";
26
26
  * ### ES6 Module Import
27
27
  *
28
28
  * `import "@ui5/webcomponents/dist/Tag.js";`
29
+ * @csspart root - Used to style the root element.
29
30
  * @constructor
30
31
  * @extends UI5Element
31
32
  * @since 2.0.0
@@ -114,7 +115,7 @@ declare class Tag extends UI5Element {
114
115
  get iconOnly(): boolean;
115
116
  get _title(): string | undefined;
116
117
  get tagDescription(): string | undefined;
117
- get _semanticIconName(): "alert" | "error" | "sys-enter-2" | "information" | "sys-help-2" | null;
118
+ get _semanticIconName(): "alert" | "sys-help-2" | "sys-enter-2" | "error" | "information" | null;
118
119
  _onclick(): void;
119
120
  }
120
121
  export default Tag;
package/dist/Tag.js CHANGED
@@ -42,6 +42,7 @@ import tagCss from "./generated/themes/Tag.css.js";
42
42
  * ### ES6 Module Import
43
43
  *
44
44
  * `import "@ui5/webcomponents/dist/Tag.js";`
45
+ * @csspart root - Used to style the root element.
45
46
  * @constructor
46
47
  * @extends UI5Element
47
48
  * @since 2.0.0
package/dist/Tag.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport {\n\tisDesktop,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-help-2.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport TagDesign from \"./types/TagDesign.js\";\nimport type TagSize from \"./types/TagSize.js\";\n// Template\nimport TagTemplate from \"./TagTemplate.js\";\n\nimport {\n\tTAG_DESCRIPTION_TAG,\n\tTAG_ROLE_DESCRIPTION,\n\tTAG_ERROR,\n\tTAG_WARNING,\n\tTAG_SUCCESS,\n\tTAG_INFORMATION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport tagCss from \"./generated/themes/Tag.css.js\";\n\n/**\n * @class\n * ### Overview\n *\n * The `ui5-tag` is a component which serves\n * the purpose to attract the user attention to some piece\n * of information (state, quantity, condition, etc.).\n * It can contain icon and text information, and its design can be chosen from specific design types.\n *\n * ### Usage Guidelines\n *\n * - If the text is longer than the width of the component, it can wrap, or it can show ellipsis, depending on the `wrappingType` property.\n * - Colors can be semantic or not semantic.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Tag.js\";`\n * @constructor\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-tag\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: TagTemplate,\n\tstyles: tagCss,\n})\n\n/**\n * Fired when the user clicks on an interactive tag.\n *\n * **Note:** The event will be fired if the `interactive` property is `true`\n * @public\n * @since 1.22.0\n */\n@event(\"click\", {\n\tbubbles: true,\n})\nclass Tag extends UI5Element {\n\teventDetails!: {\n\t\tclick: void;\n\t}\n\t/**\n\t * Defines the design type of the component.\n\t * @default \"Neutral\"\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property()\n\tdesign: `${TagDesign}` = \"Neutral\"\n\n\t/**\n\t * Defines the color scheme of the component.\n\t * There are 10 predefined schemes.\n\t * To use one you can set a number from `\"1\"` to `\"10\"`. The `colorScheme` `\"1\"` will be set by default.\n\t * @default \"1\"\n\t * @public\n\t */\n\t@property()\n\tcolorScheme = \"1\";\n\n\t/**\n\t * Defines if the default state icon is shown.\n\t * @default false\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property({ type: Boolean })\n\thideStateIcon = false;\n\n\t/**\n\t * Defines if the component is interactive (focusable and pressable).\n\t *\n\t * @default false\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t *\n\t * **Note:** For option \"Normal\" the text will wrap and the\n\t * words will not be broken based on hyphenation.\n\t * @default \"Normal\"\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Defines predefined size of the component.\n\t * @default \"S\"\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property()\n\tsize: `${TagSize}` = \"S\";\n\n\t/**\n\t * Defines if the tag has an icon.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hasIcon = false;\n\n\t/**\n\t * Defines if the tag has only an icon (and no text).\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_iconOnly = false;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: Array<Node>;\n\n\t/**\n\t * Defines the icon to be displayed in the component.\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<IIcon>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._hasIcon = this.hasIcon || !!this._semanticIconName;\n\t\tthis._iconOnly = this.iconOnly;\n\t}\n\n\tget _roleDescription() {\n\t\treturn Tag.i18nBundle.getText(TAG_ROLE_DESCRIPTION);\n\t}\n\n\tget _valueState() {\n\t\tswitch (this.design) {\n\t\tcase TagDesign.Positive:\n\t\t\treturn Tag.i18nBundle.getText(TAG_SUCCESS);\n\t\tcase TagDesign.Negative:\n\t\t\treturn Tag.i18nBundle.getText(TAG_ERROR);\n\t\tcase TagDesign.Critical:\n\t\t\treturn Tag.i18nBundle.getText(TAG_WARNING);\n\t\tcase TagDesign.Information:\n\t\t\treturn Tag.i18nBundle.getText(TAG_INFORMATION);\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget hasText() {\n\t\treturn willShowContent(this.text);\n\t}\n\n\tget hasIcon() {\n\t\treturn !!this.icon.length;\n\t}\n\n\tget iconOnly() {\n\t\treturn this.hasIcon && !this.hasText;\n\t}\n\n\tget _title() {\n\t\treturn this.title || undefined;\n\t}\n\n\tget tagDescription() {\n\t\tif (this.interactive) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst valueState = this._valueState;\n\t\tlet description = Tag.i18nBundle.getText(TAG_DESCRIPTION_TAG);\n\n\t\tif (valueState) {\n\t\t\tdescription = `${description} ${valueState}`;\n\t\t}\n\n\t\treturn description;\n\t}\n\n\tget _semanticIconName() {\n\t\tif (this.hideStateIcon || this.hasIcon) {\n\t\t\treturn null;\n\t\t}\n\n\t\tswitch (this.design) {\n\t\tcase TagDesign.Neutral:\n\t\t\treturn \"sys-help-2\";\n\t\tcase TagDesign.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase TagDesign.Negative:\n\t\t\treturn \"error\";\n\t\tcase TagDesign.Critical:\n\t\t\treturn \"alert\";\n\t\tcase TagDesign.Information:\n\t\t\treturn \"information\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.fireDecoratorEvent(\"click\");\n\t}\n}\n\nTag.define();\n\nexport default Tag;\n"]}
1
+ {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport {\n\tisDesktop,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-help-2.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport TagDesign from \"./types/TagDesign.js\";\nimport type TagSize from \"./types/TagSize.js\";\n// Template\nimport TagTemplate from \"./TagTemplate.js\";\n\nimport {\n\tTAG_DESCRIPTION_TAG,\n\tTAG_ROLE_DESCRIPTION,\n\tTAG_ERROR,\n\tTAG_WARNING,\n\tTAG_SUCCESS,\n\tTAG_INFORMATION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport tagCss from \"./generated/themes/Tag.css.js\";\n\n/**\n * @class\n * ### Overview\n *\n * The `ui5-tag` is a component which serves\n * the purpose to attract the user attention to some piece\n * of information (state, quantity, condition, etc.).\n * It can contain icon and text information, and its design can be chosen from specific design types.\n *\n * ### Usage Guidelines\n *\n * - If the text is longer than the width of the component, it can wrap, or it can show ellipsis, depending on the `wrappingType` property.\n * - Colors can be semantic or not semantic.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Tag.js\";`\n * @csspart root - Used to style the root element.\n * @constructor\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-tag\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: TagTemplate,\n\tstyles: tagCss,\n})\n\n/**\n * Fired when the user clicks on an interactive tag.\n *\n * **Note:** The event will be fired if the `interactive` property is `true`\n * @public\n * @since 1.22.0\n */\n@event(\"click\", {\n\tbubbles: true,\n})\nclass Tag extends UI5Element {\n\teventDetails!: {\n\t\tclick: void;\n\t}\n\t/**\n\t * Defines the design type of the component.\n\t * @default \"Neutral\"\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property()\n\tdesign: `${TagDesign}` = \"Neutral\"\n\n\t/**\n\t * Defines the color scheme of the component.\n\t * There are 10 predefined schemes.\n\t * To use one you can set a number from `\"1\"` to `\"10\"`. The `colorScheme` `\"1\"` will be set by default.\n\t * @default \"1\"\n\t * @public\n\t */\n\t@property()\n\tcolorScheme = \"1\";\n\n\t/**\n\t * Defines if the default state icon is shown.\n\t * @default false\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property({ type: Boolean })\n\thideStateIcon = false;\n\n\t/**\n\t * Defines if the component is interactive (focusable and pressable).\n\t *\n\t * @default false\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t *\n\t * **Note:** For option \"Normal\" the text will wrap and the\n\t * words will not be broken based on hyphenation.\n\t * @default \"Normal\"\n\t * @public\n\t * @since 1.22.0\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Defines predefined size of the component.\n\t * @default \"S\"\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property()\n\tsize: `${TagSize}` = \"S\";\n\n\t/**\n\t * Defines if the tag has an icon.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hasIcon = false;\n\n\t/**\n\t * Defines if the tag has only an icon (and no text).\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_iconOnly = false;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: Array<Node>;\n\n\t/**\n\t * Defines the icon to be displayed in the component.\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<IIcon>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._hasIcon = this.hasIcon || !!this._semanticIconName;\n\t\tthis._iconOnly = this.iconOnly;\n\t}\n\n\tget _roleDescription() {\n\t\treturn Tag.i18nBundle.getText(TAG_ROLE_DESCRIPTION);\n\t}\n\n\tget _valueState() {\n\t\tswitch (this.design) {\n\t\tcase TagDesign.Positive:\n\t\t\treturn Tag.i18nBundle.getText(TAG_SUCCESS);\n\t\tcase TagDesign.Negative:\n\t\t\treturn Tag.i18nBundle.getText(TAG_ERROR);\n\t\tcase TagDesign.Critical:\n\t\t\treturn Tag.i18nBundle.getText(TAG_WARNING);\n\t\tcase TagDesign.Information:\n\t\t\treturn Tag.i18nBundle.getText(TAG_INFORMATION);\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget hasText() {\n\t\treturn willShowContent(this.text);\n\t}\n\n\tget hasIcon() {\n\t\treturn !!this.icon.length;\n\t}\n\n\tget iconOnly() {\n\t\treturn this.hasIcon && !this.hasText;\n\t}\n\n\tget _title() {\n\t\treturn this.title || undefined;\n\t}\n\n\tget tagDescription() {\n\t\tif (this.interactive) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst valueState = this._valueState;\n\t\tlet description = Tag.i18nBundle.getText(TAG_DESCRIPTION_TAG);\n\n\t\tif (valueState) {\n\t\t\tdescription = `${description} ${valueState}`;\n\t\t}\n\n\t\treturn description;\n\t}\n\n\tget _semanticIconName() {\n\t\tif (this.hideStateIcon || this.hasIcon) {\n\t\t\treturn null;\n\t\t}\n\n\t\tswitch (this.design) {\n\t\tcase TagDesign.Neutral:\n\t\t\treturn \"sys-help-2\";\n\t\tcase TagDesign.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase TagDesign.Negative:\n\t\t\treturn \"error\";\n\t\tcase TagDesign.Critical:\n\t\t\treturn \"alert\";\n\t\tcase TagDesign.Information:\n\t\t\treturn \"information\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.fireDecoratorEvent(\"click\");\n\t}\n}\n\nTag.define();\n\nexport default Tag;\n"]}
@@ -2,9 +2,9 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@ui5/webcompo
2
2
  import Icon from "./Icon.js";
3
3
  export default function TagTemplate() {
4
4
  return (_jsx(_Fragment, { children: this.interactive ?
5
- _jsx("button", { class: "ui5-tag-root", title: this._title, "aria-roledescription": this._roleDescription, "aria-description": this._valueState, onClick: this._onclick, children: content.call(this) })
5
+ _jsx("button", { class: "ui5-tag-root", title: this._title, "aria-roledescription": this._roleDescription, "aria-description": this._valueState, onClick: this._onclick, part: "root", children: content.call(this) })
6
6
  :
7
- _jsx("div", { class: "ui5-tag-root", title: this._title, children: content.call(this) }) }));
7
+ _jsx("div", { class: "ui5-tag-root", title: this._title, part: "root", children: content.call(this) }) }));
8
8
  }
9
9
  function content() {
10
10
  return (_jsxs(_Fragment, { children: [_jsx("slot", { name: "icon" }), this._semanticIconName &&
@@ -1 +1 @@
1
- {"version":3,"file":"TagTemplate.js","sourceRoot":"","sources":["../src/TagTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,CAAC,OAAO,UAAU,WAAW;IAClC,OAAO,CACN,4BAEE,IAAI,CAAC,WAAW,CAAC,CAAC;YACjB,iBACC,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,IAAI,CAAC,MAAM,0BACI,IAAI,CAAC,gBAAgB,sBACzB,IAAI,CAAC,WAAW,EAClC,OAAO,EAAE,IAAI,CAAC,QAAQ,YAEpB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GACZ;YACT,CAAC;gBACD,cAAK,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,YACzC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GACf,GAEN,CACH,CAAC;AACH,CAAC;AAED,SAAS,OAAO;IACf,OAAO,CACN,8BACC,eAAM,IAAI,EAAC,MAAM,GAAQ,EACxB,IAAI,CAAC,iBAAiB;gBACtB,KAAC,IAAI,IAAC,KAAK,EAAC,uBAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,GAAI,EAErE,eAAM,KAAK,EAAC,iBAAiB,YAAE,IAAI,CAAC,cAAc,GAAQ,EACzD,IAAI,CAAC,OAAO;gBACZ,eAAM,KAAK,EAAC,cAAc,YAAC,gBAAa,GAAO,IAE9C,CACH,CAAC;AACH,CAAC","sourcesContent":["import Icon from \"./Icon.js\";\nimport type Tag from \"./Tag.js\";\n\nexport default function TagTemplate(this: Tag) {\n\treturn (\n\t\t<>\n\t\t\t{\n\t\t\t\tthis.interactive ?\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"ui5-tag-root\"\n\t\t\t\t\t\ttitle={this._title}\n\t\t\t\t\t\taria-roledescription={this._roleDescription}\n\t\t\t\t\t\taria-description={this._valueState}\n\t\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content.call(this) }\n\t\t\t\t\t</button>\n\t\t\t\t\t:\n\t\t\t\t\t<div class=\"ui5-tag-root\" title={this._title}>\n\t\t\t\t\t\t{ content.call(this) }\n\t\t\t\t\t</div>\n\t\t\t}\n\t\t</>\n\t);\n}\n\nfunction content(this: Tag) {\n\treturn (\n\t\t<>\n\t\t\t<slot name=\"icon\"></slot>\n\t\t\t{this._semanticIconName &&\n\t\t\t\t<Icon class=\"ui5-tag-semantic-icon\" name={this._semanticIconName} />\n\t\t\t}\n\t\t\t<span class=\"ui5-hidden-text\">{this.tagDescription}</span>\n\t\t\t{this.hasText &&\n\t\t\t\t<span class=\"ui5-tag-text\"><slot></slot></span>\n\t\t\t}\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"file":"TagTemplate.js","sourceRoot":"","sources":["../src/TagTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,CAAC,OAAO,UAAU,WAAW;IAClC,OAAO,CACN,4BAEE,IAAI,CAAC,WAAW,CAAC,CAAC;YACjB,iBACC,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,IAAI,CAAC,MAAM,0BACI,IAAI,CAAC,gBAAgB,sBACzB,IAAI,CAAC,WAAW,EAClC,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,IAAI,EAAC,MAAM,YAET,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GACZ;YACT,CAAC;gBACD,cAAK,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAC,MAAM,YACtD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GACf,GAEN,CACH,CAAC;AACH,CAAC;AAED,SAAS,OAAO;IACf,OAAO,CACN,8BACC,eAAM,IAAI,EAAC,MAAM,GAAQ,EACxB,IAAI,CAAC,iBAAiB;gBACtB,KAAC,IAAI,IAAC,KAAK,EAAC,uBAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,GAAI,EAErE,eAAM,KAAK,EAAC,iBAAiB,YAAE,IAAI,CAAC,cAAc,GAAQ,EACzD,IAAI,CAAC,OAAO;gBACZ,eAAM,KAAK,EAAC,cAAc,YAAC,gBAAa,GAAO,IAE9C,CACH,CAAC;AACH,CAAC","sourcesContent":["import Icon from \"./Icon.js\";\nimport type Tag from \"./Tag.js\";\n\nexport default function TagTemplate(this: Tag) {\n\treturn (\n\t\t<>\n\t\t\t{\n\t\t\t\tthis.interactive ?\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"ui5-tag-root\"\n\t\t\t\t\t\ttitle={this._title}\n\t\t\t\t\t\taria-roledescription={this._roleDescription}\n\t\t\t\t\t\taria-description={this._valueState}\n\t\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\t\tpart=\"root\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content.call(this) }\n\t\t\t\t\t</button>\n\t\t\t\t\t:\n\t\t\t\t\t<div class=\"ui5-tag-root\" title={this._title} part=\"root\">\n\t\t\t\t\t\t{ content.call(this) }\n\t\t\t\t\t</div>\n\t\t\t}\n\t\t</>\n\t);\n}\n\nfunction content(this: Tag) {\n\treturn (\n\t\t<>\n\t\t\t<slot name=\"icon\"></slot>\n\t\t\t{this._semanticIconName &&\n\t\t\t\t<Icon class=\"ui5-tag-semantic-icon\" name={this._semanticIconName} />\n\t\t\t}\n\t\t\t<span class=\"ui5-hidden-text\">{this.tagDescription}</span>\n\t\t\t{this.hasText &&\n\t\t\t\t<span class=\"ui5-tag-text\"><slot></slot></span>\n\t\t\t}\n\t\t</>\n\t);\n}\n"]}
@@ -5,8 +5,9 @@ import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
5
5
  import "@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js";
6
6
  import type Popover from "./Popover.js";
7
7
  import type ResponsivePopover from "./ResponsivePopover.js";
8
- import type Input from "./Input.js";
8
+ import type DateTimeInput from "./DateTimeInput.js";
9
9
  import type { InputAccInfo } from "./Input.js";
10
+ import type TimeSelectionClocks from "./TimeSelectionClocks.js";
10
11
  import type { TimeSelectionChangeEventDetail } from "./TimePickerInternals.js";
11
12
  type ValueStateAnnouncement = Record<Exclude<ValueState, ValueState.None>, string>;
12
13
  type TimePickerChangeInputEventDetail = {
@@ -181,6 +182,7 @@ declare class TimePicker extends UI5Element implements IFormInputElement {
181
182
  * @public
182
183
  */
183
184
  valueStateMessage: Array<HTMLElement>;
185
+ _timeSelectionClocks?: TimeSelectionClocks;
184
186
  tempValue?: string;
185
187
  static i18nBundle: I18nBundle;
186
188
  get formValidityMessage(): string;
@@ -214,6 +216,7 @@ declare class TimePicker extends UI5Element implements IFormInputElement {
214
216
  _togglePicker(): void;
215
217
  submitPickers(): void;
216
218
  onResponsivePopoverAfterClose(): void;
219
+ onResponsivePopoverBeforeOpen(): void;
217
220
  onResponsivePopoverAfterOpen(): void;
218
221
  /**
219
222
  * Opens the Inputs popover.
@@ -245,8 +248,8 @@ declare class TimePicker extends UI5Element implements IFormInputElement {
245
248
  _canOpenInputsPopover(): boolean;
246
249
  _getPopover(): ResponsivePopover;
247
250
  _getInputsPopover(): Popover;
248
- _getInput(): Input;
249
- _getInputField(): HTMLInputElement | Input | null;
251
+ _getDateTimeInput(): DateTimeInput;
252
+ _getInputField(): HTMLInputElement | import("./Input.js").default | null;
250
253
  _onkeydown(e: KeyboardEvent): void;
251
254
  get _isPattern(): boolean;
252
255
  getFormat(): import("sap/ui/core/format/DateFormat").default;
@@ -11,6 +11,7 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
11
11
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
12
12
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
13
13
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
14
+ import query from "@ui5/webcomponents-base/dist/decorators/query.js";
14
15
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
15
16
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
16
17
  import willShowContent from "@ui5/webcomponents-base/dist/util/willShowContent.js";
@@ -222,6 +223,13 @@ let TimePicker = TimePicker_1 = class TimePicker extends UI5Element {
222
223
  this.open = false;
223
224
  this.fireDecoratorEvent("close");
224
225
  }
226
+ onResponsivePopoverBeforeOpen() {
227
+ const clocks = this._timeSelectionClocks;
228
+ if (clocks) {
229
+ clocks._activeIndex = 0;
230
+ clocks._skipAnimation = true;
231
+ }
232
+ }
225
233
  onResponsivePopoverAfterOpen() {
226
234
  this.fireDecoratorEvent("open");
227
235
  }
@@ -335,11 +343,11 @@ let TimePicker = TimePicker_1 = class TimePicker extends UI5Element {
335
343
  _getInputsPopover() {
336
344
  return this.shadowRoot.querySelector("[ui5-popover]");
337
345
  }
338
- _getInput() {
339
- return this.shadowRoot.querySelector("[ui5-input]");
346
+ _getDateTimeInput() {
347
+ return this.shadowRoot.querySelector("[ui5-datetime-input]");
340
348
  }
341
349
  _getInputField() {
342
- const input = this._getInput();
350
+ const input = this._getDateTimeInput();
343
351
  return input && input.getInputDOMRef();
344
352
  }
345
353
  _onkeydown(e) {
@@ -351,7 +359,7 @@ let TimePicker = TimePicker_1 = class TimePicker extends UI5Element {
351
359
  this._togglePicker();
352
360
  }
353
361
  const target = e.target;
354
- if (target && this.open && this._getInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {
362
+ if (target && this.open && this._getDateTimeInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {
355
363
  this._togglePicker();
356
364
  }
357
365
  if (this.open) {
@@ -462,8 +470,8 @@ let TimePicker = TimePicker_1 = class TimePicker extends UI5Element {
462
470
  * Hides mobile device keyboard by temporary setting the input to readonly state.
463
471
  */
464
472
  _hideMobileKeyboard() {
465
- this._getInput().readonly = true;
466
- setTimeout(() => { this._getInput().readonly = false; }, 0);
473
+ this._getDateTimeInput().readonly = true;
474
+ setTimeout(() => { this._getDateTimeInput().readonly = false; }, 0);
467
475
  }
468
476
  _onfocusin(e) {
469
477
  if (this._isMobileDevice) {
@@ -567,6 +575,9 @@ __decorate([
567
575
  __decorate([
568
576
  slot()
569
577
  ], TimePicker.prototype, "valueStateMessage", void 0);
578
+ __decorate([
579
+ query("[ui5-time-selection-clocks]")
580
+ ], TimePicker.prototype, "_timeSelectionClocks", void 0);
570
581
  __decorate([
571
582
  i18n("@ui5/webcomponents")
572
583
  ], TimePicker, "i18nBundle", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../src/TimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport {\n\tisShow,\n\tisEnter,\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type Popover from \"./Popover.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport TimePickerTemplate from \"./TimePickerTemplate.js\";\nimport type Input from \"./Input.js\";\nimport type { InputAccInfo } from \"./Input.js\";\nimport type TimeSelectionInputs from \"./TimeSelectionInputs.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tTIMEPICKER_INPUT_DESCRIPTION,\n\tTIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tFORM_TEXTFIELD_REQUIRED,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_WARNING,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TimePickerCss from \"./generated/themes/TimePicker.css.js\";\nimport TimePickerPopoverCss from \"./generated/themes/TimePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype ValueStateAnnouncement = Record<Exclude<ValueState, ValueState.None>, string>;\n\ntype TimePickerChangeInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype TimePickerChangeEventDetail = TimePickerChangeInputEventDetail;\ntype TimePickerInputEventDetail = TimePickerChangeInputEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\n * The `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\n * It consists of two parts: the time input field and the clocks.\n *\n * ### Usage\n * The user can enter a time by:\n *\n * - Using the clocks that are displayed in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\n * When the user directly triggers the clocks display, the actual time is displayed.\n * For the `ui5-time-picker`\n *\n * ### Formatting\n *\n * If a time is entered by typing it into\n * the input field, it must fit to the used time format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"HH:mm:ss\",\n * a valid value string is \"11:42:35\" and the same is displayed in the input.\n *\n * ### Keyboard handling\n * [F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n *\n * When closed:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * -\n *\n * When opened:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * - [A] or [P] - Selects AM or PM respectively.\n * - [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n * - [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePicker.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n */\n@customElement({\n\ttag: \"ui5-time-picker\",\n\tlanguageAware: true,\n\tcldr: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: TimePickerTemplate,\n\tstyles: [\n\t\tTimePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tTimePickerPopoverCss,\n\t\tValueStateMessageCss,\n\t],\n})\n/**\n * Fired when the input operation has finished by clicking the \"OK\" button or\n * when the text in the input field has changed and the focus leaves the input field.\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(\"change\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n * @public\n * @param {string} value The current value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"input\", {\n\tbubbles: true,\n})\n/**\n * Fired after the value-help dialog of the component is opened.\n * @since 2.0.0\n * @public\n */\n@event(\"open\", {\n\tbubbles: true,\n})\n/**\n * Fired after the value-help dialog of the component is closed.\n * @since 2.0.0\n * @public\n */\n@event(\"close\", {\n\tbubbles: true,\n})\nclass TimePicker extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\tchange: TimePickerChangeEventDetail;\n\t\t\"value-changed\": TimePickerChangeEventDetail;\n\t\tinput: TimePickerInputEventDetail;\n\t\topen: void;\n\t\tclose: void;\n\t}\n\t/**\n\t * Defines a formatted time 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 * 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 * @since 2.0.0\n\t */\n\t@property()\n\tname?: string;\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 the disabled state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the readonly state of the comonent.\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 format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\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 whether the component is required.\n\t * @since 2.1.0\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\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 2.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isInputsPopoverOpen = false;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\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 `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\ttempValue?: string;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn TimePicker.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\tonBeforeRendering() {\n\t\tif (this.value) {\n\t\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\t}\n\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_INPUT_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\t/**\n\t * Currently selected time represented as JavaScript Date instance\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.getFormat().parse(this._effectiveValue) as Date;\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\t/**\n\t * @protected\n\t */\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern?.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getTimePattern(\"medium\") : this.formatPattern;\n\t}\n\n\tget _displayFormat() {\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\tget _effectiveValue() {\n\t\treturn this.value;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this.tempValue;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis.tempValue = e.detail.value; // every time the user changes the time selection -> update tempValue\n\t}\n\n\t_togglePicker() {\n\t\tthis.open = !this.open;\n\t}\n\n\tsubmitPickers() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\t/**\n\t * Opens the Inputs popover.\n\t * @private\n\t * @returns Resolves when the Inputs popover is open\n\t */\n\topenInputsPopover() {\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.opener = this;\n\t\tpopover.open = true;\n\t\tthis._isInputsPopoverOpen = true;\n\t}\n\n\t/**\n\t * Closes the Inputs popover\n\t * @private\n\t * @returns Resolves when the Inputs popover is closed\n\t */\n\tcloseInputsPopover() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.open = false;\n\t}\n\n\ttoggleInputsPopover() {\n\t\tif (this.isInputsPopoverOpen()) {\n\t\t\tthis.closeInputsPopover();\n\t\t} else if (this._canOpenInputsPopover()) {\n\t\t\tthis.openInputsPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the inputs popover is open\n\t * @private\n\t */\n\tisInputsPopoverOpen(): boolean {\n\t\treturn !!this._isInputsPopoverOpen;\n\t}\n\n\tsubmitInputsPopover() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis.closeInputsPopover();\n\t}\n\n\tonInputsPopoverAfterOpen() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.querySelector<TimeSelectionInputs>(\"[ui5-time-selection-inputs]\")!._addNumericAttributes();\n\t}\n\n\tonInputsPopoverAfterClose() {\n\t\tthis._isInputsPopoverOpen = false;\n\t}\n\n\t_handleInputClick(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isMobileDevice && target && !target.hasAttribute(\"ui5-icon\")) {\n\t\t\tthis.toggleInputsPopover();\n\t\t}\n\n\t\tconst inputField = this._getInputField();\n\n\t\tif (inputField) {\n\t\t\t(inputField as HTMLInputElement).select();\n\t\t}\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, eventsNames: Array<\"input\" | \"change\" | \"value-changed\">) {\n\t\tif (value === this.value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = this.isValid(value);\n\n\t\tif (value !== undefined && valid && normalizeValue) { // if value === undefined, valid is guaranteed to be falsy\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\t\tif (!eventsNames.includes(\"input\")) {\n\t\t\tthis.value = \"\"; // Do not remove! DurationPicker (an external component extending TimePicker) use case -> value is 05:10, user tries 05:12, after normalization value is changed back to 05:10 so no invalidation happens, but the input still shows 05:12. Thus we enforce invalidation with the \"\"\n\t\t\tthis.value = value;\n\t\t}\n\t\tthis.tempValue = value; // if the picker is open, sync it\n\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\teventsNames.forEach(eventName => {\n\t\t\tthis.fireDecoratorEvent(eventName, { value, valid });\n\t\t});\n\t}\n\n\t_updateValueState() {\n\t\tconst isValid = this.isValid(this.value);\n\t\tif (!isValid) { // If not valid - always set Error regardless of the current value state\n\t\t\tthis.valueState = ValueState.Negative;\n\t\t} else if (isValid && this.valueState === ValueState.Negative) { // However if valid, change only Error (but not the others) to None\n\t\t\tthis.valueState = ValueState.None;\n\t\t}\n\t}\n\n\t_handleInputChange(e: CustomEvent) {\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_handleInputLiveChange(e: CustomEvent) {\n\t\tif (this._isPhone) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, false, [\"input\"]);\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\t_canOpenInputsPopover() {\n\t\treturn !this.disabled && this._isMobileDevice;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_getInputsPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_getInput(): Input {\n\t\treturn this.shadowRoot!.querySelector<Input>(\"[ui5-input]\")!;\n\t}\n\n\t_getInputField() {\n\t\tconst input = this._getInput();\n\t\treturn input && input.getInputDOMRef();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this._isMobileDevice && !this.isInputsPopoverOpen()) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tconst target = e.target as HTMLElement;\n\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\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._modifyValueBy(1, \"second\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"minute\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"hour\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"second\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"minute\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"hour\");\n\t\t}\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat;\n\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date and time\n\t * according to the `formatPattern` property of the TimePicker instance\n\t * @param date A Java Script date object to be formatted as string\n\t * @public\n\t * @returns formatted value\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current `formatPattern` value.\n\t *\n\t * **Note:** an empty string is considered as valid value.\n\t * @param value The value to be tested against the current date format\n\t * @public\n\t */\n\tisValid(value: string | undefined): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn !!this.getFormat().parse(value as string);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\t_modifyValueBy(amount: number, unit: string) {\n\t\tconst date = this.getFormat().parse(this._effectiveValue) as Date;\n\t\tif (!date) {\n\t\t\treturn;\n\t\t}\n\t\tif (unit === \"hour\") {\n\t\t\tdate.setHours(date.getHours() + amount);\n\t\t} else if (unit === \"minute\") {\n\t\t\tdate.setMinutes(date.getMinutes() + amount);\n\t\t} else if (unit === \"second\") {\n\t\t\tdate.setSeconds(date.getSeconds() + amount);\n\t\t}\n\n\t\tconst newValue = this.formatValue(date);\n\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The listener for this event can't be passive as it calls preventDefault()\n\t * @param e Wheel Event\n\t * @private\n\t */\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Hides mobile device keyboard by temporary setting the input to readonly state.\n\t */\n\t_hideMobileKeyboard() {\n\t\tthis._getInput().readonly = true;\n\t\tsetTimeout(() => { this._getInput().readonly = false; }, 0);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this._isMobileDevice) {\n\t\t\tthis._hideMobileKeyboard();\n\t\t\tif (this._isInputsPopoverOpen) {\n\t\t\t\tconst popover = this._getInputsPopover();\n\t\t\t\tpopover.applyFocus();\n\t\t\t}\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget valueStateDefaultText(): string | undefined {\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget valueStateTextMappings(): ValueStateAnnouncement {\n\t\treturn {\n\t\t\t[ValueState.Positive]: TimePicker.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Negative]: TimePicker.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: TimePicker.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t[ValueState.Information]: TimePicker.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t};\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !willShowContent(this.valueStateMessage) && this.hasValueStateText;\n\t}\n\tget submitButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget cancelButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget hasValueStateText(): boolean {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"ui5-suggestions-popover\": true,\n\t\t\t\t\"ui5-popover-with-value-state-header-phone\": this._isPhone && this.hasValueStateText,\n\t\t\t\t\"ui5-popover-with-value-state-header\": !this._isPhone && this.hasValueStateText,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Positive,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget openIconName() {\n\t\treturn \"time-entry-request\";\n\t}\n}\n\nTimePicker.define();\n\nexport default TimePicker;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimePickerChangeEventDetail,\n\tTimePickerInputEventDetail,\n};\n"]}
1
+ {"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../src/TimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport query from \"@ui5/webcomponents-base/dist/decorators/query.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport {\n\tisShow,\n\tisEnter,\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type Popover from \"./Popover.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport TimePickerTemplate from \"./TimePickerTemplate.js\";\nimport type DateTimeInput from \"./DateTimeInput.js\";\nimport type { InputAccInfo } from \"./Input.js\";\nimport type TimeSelectionInputs from \"./TimeSelectionInputs.js\";\nimport type TimeSelectionClocks from \"./TimeSelectionClocks.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tTIMEPICKER_INPUT_DESCRIPTION,\n\tTIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tFORM_TEXTFIELD_REQUIRED,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_WARNING,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TimePickerCss from \"./generated/themes/TimePicker.css.js\";\nimport TimePickerPopoverCss from \"./generated/themes/TimePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype ValueStateAnnouncement = Record<Exclude<ValueState, ValueState.None>, string>;\n\ntype TimePickerChangeInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype TimePickerChangeEventDetail = TimePickerChangeInputEventDetail;\ntype TimePickerInputEventDetail = TimePickerChangeInputEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\n * The `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\n * It consists of two parts: the time input field and the clocks.\n *\n * ### Usage\n * The user can enter a time by:\n *\n * - Using the clocks that are displayed in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\n * When the user directly triggers the clocks display, the actual time is displayed.\n * For the `ui5-time-picker`\n *\n * ### Formatting\n *\n * If a time is entered by typing it into\n * the input field, it must fit to the used time format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"HH:mm:ss\",\n * a valid value string is \"11:42:35\" and the same is displayed in the input.\n *\n * ### Keyboard handling\n * [F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n *\n * When closed:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * -\n *\n * When opened:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * - [A] or [P] - Selects AM or PM respectively.\n * - [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n * - [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePicker.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n */\n@customElement({\n\ttag: \"ui5-time-picker\",\n\tlanguageAware: true,\n\tcldr: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: TimePickerTemplate,\n\tstyles: [\n\t\tTimePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tTimePickerPopoverCss,\n\t\tValueStateMessageCss,\n\t],\n})\n/**\n * Fired when the input operation has finished by clicking the \"OK\" button or\n * when the text in the input field has changed and the focus leaves the input field.\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(\"change\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n * @public\n * @param {string} value The current value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event(\"input\", {\n\tbubbles: true,\n})\n/**\n * Fired after the value-help dialog of the component is opened.\n * @since 2.0.0\n * @public\n */\n@event(\"open\", {\n\tbubbles: true,\n})\n/**\n * Fired after the value-help dialog of the component is closed.\n * @since 2.0.0\n * @public\n */\n@event(\"close\", {\n\tbubbles: true,\n})\nclass TimePicker extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\tchange: TimePickerChangeEventDetail;\n\t\t\"value-changed\": TimePickerChangeEventDetail;\n\t\tinput: TimePickerInputEventDetail;\n\t\topen: void;\n\t\tclose: void;\n\t}\n\t/**\n\t * Defines a formatted time 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 * 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 * @since 2.0.0\n\t */\n\t@property()\n\tname?: string;\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 the disabled state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the readonly state of the comonent.\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 format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\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 whether the component is required.\n\t * @since 2.1.0\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\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 2.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isInputsPopoverOpen = false;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\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 `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t@query(\"[ui5-time-selection-clocks]\")\n\t_timeSelectionClocks?: TimeSelectionClocks;\n\n\ttempValue?: string;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn TimePicker.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\tonBeforeRendering() {\n\t\tif (this.value) {\n\t\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\t}\n\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_INPUT_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\t/**\n\t * Currently selected time represented as JavaScript Date instance\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.getFormat().parse(this._effectiveValue) as Date;\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\t/**\n\t * @protected\n\t */\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern?.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getTimePattern(\"medium\") : this.formatPattern;\n\t}\n\n\tget _displayFormat() {\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\tget _effectiveValue() {\n\t\treturn this.value;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this.tempValue;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis.tempValue = e.detail.value; // every time the user changes the time selection -> update tempValue\n\t}\n\n\t_togglePicker() {\n\t\tthis.open = !this.open;\n\t}\n\n\tsubmitPickers() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tonResponsivePopoverBeforeOpen() {\n\t\tconst clocks = this._timeSelectionClocks;\n\t\tif (clocks) {\n\t\t\tclocks._activeIndex = 0;\n\t\t\tclocks._skipAnimation = true;\n\t\t}\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\t/**\n\t * Opens the Inputs popover.\n\t * @private\n\t * @returns Resolves when the Inputs popover is open\n\t */\n\topenInputsPopover() {\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.opener = this;\n\t\tpopover.open = true;\n\t\tthis._isInputsPopoverOpen = true;\n\t}\n\n\t/**\n\t * Closes the Inputs popover\n\t * @private\n\t * @returns Resolves when the Inputs popover is closed\n\t */\n\tcloseInputsPopover() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.open = false;\n\t}\n\n\ttoggleInputsPopover() {\n\t\tif (this.isInputsPopoverOpen()) {\n\t\t\tthis.closeInputsPopover();\n\t\t} else if (this._canOpenInputsPopover()) {\n\t\t\tthis.openInputsPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the inputs popover is open\n\t * @private\n\t */\n\tisInputsPopoverOpen(): boolean {\n\t\treturn !!this._isInputsPopoverOpen;\n\t}\n\n\tsubmitInputsPopover() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis.closeInputsPopover();\n\t}\n\n\tonInputsPopoverAfterOpen() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.querySelector<TimeSelectionInputs>(\"[ui5-time-selection-inputs]\")!._addNumericAttributes();\n\t}\n\n\tonInputsPopoverAfterClose() {\n\t\tthis._isInputsPopoverOpen = false;\n\t}\n\n\t_handleInputClick(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isMobileDevice && target && !target.hasAttribute(\"ui5-icon\")) {\n\t\t\tthis.toggleInputsPopover();\n\t\t}\n\n\t\tconst inputField = this._getInputField();\n\n\t\tif (inputField) {\n\t\t\t(inputField as HTMLInputElement).select();\n\t\t}\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, eventsNames: Array<\"input\" | \"change\" | \"value-changed\">) {\n\t\tif (value === this.value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = this.isValid(value);\n\n\t\tif (value !== undefined && valid && normalizeValue) { // if value === undefined, valid is guaranteed to be falsy\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\t\tif (!eventsNames.includes(\"input\")) {\n\t\t\tthis.value = \"\"; // Do not remove! DurationPicker (an external component extending TimePicker) use case -> value is 05:10, user tries 05:12, after normalization value is changed back to 05:10 so no invalidation happens, but the input still shows 05:12. Thus we enforce invalidation with the \"\"\n\t\t\tthis.value = value;\n\t\t}\n\t\tthis.tempValue = value; // if the picker is open, sync it\n\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\teventsNames.forEach(eventName => {\n\t\t\tthis.fireDecoratorEvent(eventName, { value, valid });\n\t\t});\n\t}\n\n\t_updateValueState() {\n\t\tconst isValid = this.isValid(this.value);\n\t\tif (!isValid) { // If not valid - always set Error regardless of the current value state\n\t\t\tthis.valueState = ValueState.Negative;\n\t\t} else if (isValid && this.valueState === ValueState.Negative) { // However if valid, change only Error (but not the others) to None\n\t\t\tthis.valueState = ValueState.None;\n\t\t}\n\t}\n\n\t_handleInputChange(e: CustomEvent) {\n\t\tconst target = e.target as DateTimeInput;\n\t\tthis._updateValueAndFireEvents(target.value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_handleInputLiveChange(e: CustomEvent) {\n\t\tif (this._isPhone) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tconst target = e.target as DateTimeInput;\n\t\tthis._updateValueAndFireEvents(target.value, false, [\"input\"]);\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\t_canOpenInputsPopover() {\n\t\treturn !this.disabled && this._isMobileDevice;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_getInputsPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_getDateTimeInput(): DateTimeInput {\n\t\treturn this.shadowRoot!.querySelector<DateTimeInput>(\"[ui5-datetime-input]\")!;\n\t}\n\n\t_getInputField() {\n\t\tconst input = this._getDateTimeInput();\n\t\treturn input && input.getInputDOMRef();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this._isMobileDevice && !this.isInputsPopoverOpen()) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target && this.open && this._getDateTimeInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\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._modifyValueBy(1, \"second\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"minute\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"hour\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"second\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"minute\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"hour\");\n\t\t}\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat;\n\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date and time\n\t * according to the `formatPattern` property of the TimePicker instance\n\t * @param date A Java Script date object to be formatted as string\n\t * @public\n\t * @returns formatted value\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current `formatPattern` value.\n\t *\n\t * **Note:** an empty string is considered as valid value.\n\t * @param value The value to be tested against the current date format\n\t * @public\n\t */\n\tisValid(value: string | undefined): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn !!this.getFormat().parse(value as string);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\t_modifyValueBy(amount: number, unit: string) {\n\t\tconst date = this.getFormat().parse(this._effectiveValue) as Date;\n\t\tif (!date) {\n\t\t\treturn;\n\t\t}\n\t\tif (unit === \"hour\") {\n\t\t\tdate.setHours(date.getHours() + amount);\n\t\t} else if (unit === \"minute\") {\n\t\t\tdate.setMinutes(date.getMinutes() + amount);\n\t\t} else if (unit === \"second\") {\n\t\t\tdate.setSeconds(date.getSeconds() + amount);\n\t\t}\n\n\t\tconst newValue = this.formatValue(date);\n\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The listener for this event can't be passive as it calls preventDefault()\n\t * @param e Wheel Event\n\t * @private\n\t */\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Hides mobile device keyboard by temporary setting the input to readonly state.\n\t */\n\t_hideMobileKeyboard() {\n\t\tthis._getDateTimeInput().readonly = true;\n\t\tsetTimeout(() => { this._getDateTimeInput().readonly = false; }, 0);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this._isMobileDevice) {\n\t\t\tthis._hideMobileKeyboard();\n\t\t\tif (this._isInputsPopoverOpen) {\n\t\t\t\tconst popover = this._getInputsPopover();\n\t\t\t\tpopover.applyFocus();\n\t\t\t}\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget valueStateDefaultText(): string | undefined {\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget valueStateTextMappings(): ValueStateAnnouncement {\n\t\treturn {\n\t\t\t[ValueState.Positive]: TimePicker.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Negative]: TimePicker.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: TimePicker.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t[ValueState.Information]: TimePicker.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t};\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !willShowContent(this.valueStateMessage) && this.hasValueStateText;\n\t}\n\tget submitButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget cancelButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget hasValueStateText(): boolean {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"ui5-suggestions-popover\": true,\n\t\t\t\t\"ui5-popover-with-value-state-header-phone\": this._isPhone && this.hasValueStateText,\n\t\t\t\t\"ui5-popover-with-value-state-header\": !this._isPhone && this.hasValueStateText,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Positive,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget openIconName() {\n\t\treturn \"time-entry-request\";\n\t}\n}\n\nTimePicker.define();\n\nexport default TimePicker;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimePickerChangeEventDetail,\n\tTimePickerInputEventDetail,\n};\n"]}
@@ -1,5 +1,4 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import type { ClassMap } from "@ui5/webcomponents-base/dist/types.js";
3
2
  type TimePickerClockChangeEventDetail = {
4
3
  value: number;
5
4
  stringValue: string;
@@ -8,14 +7,10 @@ type TimePickerClockChangeEventDetail = {
8
7
  type TimePickerClockItem = {
9
8
  angle?: number;
10
9
  item?: string;
11
- innerItem?: string;
12
- outerStyles?: object;
13
- innerStyles?: object;
14
10
  };
15
11
  type TimePickerClockSelection = {
16
12
  showMarker?: boolean;
17
13
  itemClasses?: string;
18
- innerItemClasses?: string;
19
14
  };
20
15
  type TimePickerClockDimensions = {
21
16
  radius: number;
@@ -23,10 +18,8 @@ type TimePickerClockDimensions = {
23
18
  centerY: number;
24
19
  dotHeight: number;
25
20
  numberHeight: number;
26
- outerMax: number;
27
- outerMin: number;
28
- innerMax: number;
29
- innerMin: number;
21
+ activeRadiusMax: number;
22
+ activeRadiusMin: number;
30
23
  offsetX: number;
31
24
  offsetY: number;
32
25
  };
@@ -38,8 +31,6 @@ type TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelectio
38
31
  *
39
32
  * `ui5-time-picker-clock` allows selecting of hours,minutes or seconds (depending on property set).
40
33
  * The component supports interactions with mouse, touch and mouse wheel.
41
- * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,
42
- * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).
43
34
  * The step for displaying or selecting of items can be configured.
44
35
  *
45
36
  * `ui5-time-picker-clock` is used as part of `ui5-time-selection-clocks` component, which
@@ -72,21 +63,15 @@ declare class TimePickerClock extends UI5Element {
72
63
  */
73
64
  active: boolean;
74
65
  /**
75
- * Minimum item value for the outer circle of the clock.
66
+ * Minimum item value for the circle of the clock.
76
67
  * @default -1
77
68
  */
78
69
  itemMin: number;
79
70
  /**
80
- * Maximum item value for the outer circle of the clock.
71
+ * Maximum item value for the circle of the clock.
81
72
  * @default -1
82
73
  */
83
74
  itemMax: number;
84
- /**
85
- * If set to `true`, an inner circle is displayed.
86
- * The first item value of the inner circle will be itemMax + 1
87
- * @default false
88
- */
89
- showInnerCircle: boolean;
90
75
  /**
91
76
  * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.
92
77
  * @default undefined
@@ -99,9 +84,7 @@ declare class TimePickerClock extends UI5Element {
99
84
  */
100
85
  hideFractions: boolean;
101
86
  /**
102
- * If provided, this will replace the last item displayed. If there is only one (outer) circle,
103
- * the last item from outer circle will be replaced; if there is an inner circle too, the last
104
- * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.
87
+ * If provided, this will replace the last item displayed. Usually, the last item ('12', '24' or '60') is replaced with '0'.
105
88
  * @default -1
106
89
  */
107
90
  lastItemReplacement: number;
@@ -139,6 +122,10 @@ declare class TimePickerClock extends UI5Element {
139
122
  * Defines the currently selected Time Picker Clock item.
140
123
  */
141
124
  _selectedItem: TimePickerClockSelectedItem;
125
+ /**
126
+ * Defines the currently hovered Time Picker Clock item.
127
+ */
128
+ _hoveredItem: TimePickerClockSelectedItem;
142
129
  /**
143
130
  * Keeps variables used in interaction calculations.
144
131
  */
@@ -174,16 +161,19 @@ declare class TimePickerClock extends UI5Element {
174
161
  */
175
162
  _prevHoveredValue: number;
176
163
  /**
177
- * Animation in progress flag.
164
+ * Animation skip flag. If set to `true`, the component will not have transition animation when displayed.
178
165
  * @default false
179
166
  */
180
- _animationInProgress: boolean;
167
+ _skipAnimation: boolean;
168
+ _firstNumberElement?: HTMLElement;
169
+ _clockWrapper?: HTMLElement;
181
170
  _fnOnMouseOutUp: () => void;
182
171
  constructor();
183
- get classes(): ClassMap;
184
172
  onEnterDOM(): void;
185
173
  onExitDOM(): void;
186
174
  onBeforeRendering(): void;
175
+ get _itemsCount(): number;
176
+ get _angleStep(): number;
187
177
  /**
188
178
  * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.
189
179
  * @param value The value of the clock item
@@ -191,10 +181,11 @@ declare class TimePickerClock extends UI5Element {
191
181
  */
192
182
  _fixReplacementValue(value: number): number;
193
183
  /**
194
- * Updates internal selected value object constructed for rendering purposes.
195
- * @param value currently selected value.
184
+ * Returns internally selected or hovered value object constructed for rendering purposes.
185
+ * @param value currently selected or hovered value.
186
+ * @returns Selected or hovered value object
196
187
  */
197
- _updateSelectedValueObject(value: number): void;
188
+ _updateSelectedOrHoveredItem(value: number, cssClass?: string): TimePickerClockSelectedItem;
198
189
  /**
199
190
  * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.
200
191
  */
@@ -204,11 +195,6 @@ declare class TimePickerClock extends UI5Element {
204
195
  * @returns the DOM Reference
205
196
  */
206
197
  _getClockCoverContainerDomRef(): Element | null | undefined;
207
- /**
208
- * Returns the real max value of clock items, taking in count if there is inner circle or not.
209
- * @returns max value
210
- */
211
- _getMaxValue(): number;
212
198
  /**
213
199
  * Calculates the outer height of a HTML element.
214
200
  * @param element The element which outer height to be calculated
@@ -238,22 +224,6 @@ declare class TimePickerClock extends UI5Element {
238
224
  * @param y Y position of click/touch returned by the event
239
225
  */
240
226
  _calculatePosition(x: number, y: number): void;
241
- /**
242
- * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.
243
- * @param newValue the new value that must be set
244
- * @param skipAnimation whether to skip the animation
245
- */
246
- _changeValueAnimation(newValue: number, skipAnimation?: boolean): void;
247
- /**
248
- * Does the animation step between old and new selected values.
249
- * @param firstSelected first/current value to move from
250
- * @param lastSelected last value to move to
251
- * @param direction direction of the animation
252
- * @param maxValue max clock value
253
- * @param newValue new value
254
- * @param delay delay of the single step
255
- */
256
- _selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number): void;
257
227
  /**
258
228
  * Mousewheel handler. Increases/decreases value of the clock.
259
229
  * @param increase whether to increase or decrease the value
@@ -261,10 +231,10 @@ declare class TimePickerClock extends UI5Element {
261
231
  _modifyValue(increase: boolean): void;
262
232
  /**
263
233
  * Sets new selected value, fires change event and updates selected value object used for rendering purposes.
264
- * @param value
234
+ * @param value a value to be set
235
+ * @param bFinalChange whether the change is final or not
265
236
  */
266
- _setSelectedValue(value: number): void;
267
- _captureClockRef(el: HTMLDivElement | null): void;
237
+ _setSelectedValue(value: number, bFinalChange?: boolean): void;
268
238
  /**
269
239
  * TouchStart/MouseDown event handler.
270
240
  * @param evt Event object