@ui5/webcomponents 1.2.4 → 1.3.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 (729) hide show
  1. package/CHANGELOG.md +72 -0
  2. package/README.md +6 -1
  3. package/dist/Breadcrumbs.js +52 -2
  4. package/dist/Button.js +13 -10
  5. package/dist/CardHeader.js +0 -6
  6. package/dist/CheckBox.js +12 -0
  7. package/dist/ColorPicker.js +14 -10
  8. package/dist/ComboBox.js +13 -9
  9. package/dist/DatePicker.js +12 -5
  10. package/dist/DateTimePicker.js +3 -0
  11. package/dist/Icon.js +4 -9
  12. package/dist/Input.js +36 -4
  13. package/dist/Interfaces.js +10 -0
  14. package/dist/Link.js +1 -1
  15. package/dist/List.js +54 -5
  16. package/dist/ListItem.js +28 -5
  17. package/dist/ListItemBase.js +3 -1
  18. package/dist/Menu.js +500 -0
  19. package/dist/MenuItem.js +162 -0
  20. package/dist/MultiComboBox.js +229 -25
  21. package/dist/MultiInput.js +20 -9
  22. package/dist/Option.js +10 -0
  23. package/dist/Popover.js +8 -5
  24. package/dist/Popup.js +4 -0
  25. package/dist/RadioButton.js +10 -1
  26. package/dist/ResponsivePopover.js +4 -0
  27. package/dist/Select.js +3 -0
  28. package/dist/SliderBase.js +7 -4
  29. package/dist/SplitButton.js +13 -6
  30. package/dist/Tab.js +78 -4
  31. package/dist/TabContainer.js +193 -41
  32. package/dist/Table.js +240 -44
  33. package/dist/TableGroupRow.js +4 -1
  34. package/dist/TableRow.js +33 -66
  35. package/dist/TimePickerBase.js +11 -2
  36. package/dist/Token.js +2 -1
  37. package/dist/Tokenizer.js +26 -16
  38. package/dist/WheelSlider.js +7 -0
  39. package/dist/api.json +231 -9
  40. package/dist/css/themes/Avatar.css +1 -1
  41. package/dist/css/themes/Badge.css +1 -1
  42. package/dist/css/themes/BreadcrumbsPopover.css +1 -1
  43. package/dist/css/themes/Button.css +1 -1
  44. package/dist/css/themes/CalendarHeader.css +1 -1
  45. package/dist/css/themes/Card.css +1 -1
  46. package/dist/css/themes/CardHeader.css +1 -1
  47. package/dist/css/themes/CheckBox.css +1 -1
  48. package/dist/css/themes/ColorPalette.css +1 -1
  49. package/dist/css/themes/ColorPalettePopover.css +1 -1
  50. package/dist/css/themes/ColorPicker.css +1 -1
  51. package/dist/css/themes/ComboBox.css +1 -1
  52. package/dist/css/themes/DatePicker.css +1 -1
  53. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  54. package/dist/css/themes/Dialog.css +1 -1
  55. package/dist/css/themes/Icon.css +1 -1
  56. package/dist/css/themes/Input.css +1 -1
  57. package/dist/css/themes/InputIcon.css +1 -1
  58. package/dist/css/themes/Label.css +1 -1
  59. package/dist/css/themes/Link.css +1 -1
  60. package/dist/css/themes/ListItem.css +1 -1
  61. package/dist/css/themes/Menu.css +1 -0
  62. package/dist/css/themes/MessageStrip.css +1 -1
  63. package/dist/css/themes/MultiComboBox.css +1 -1
  64. package/dist/css/themes/MultiInput.css +1 -1
  65. package/dist/css/themes/Panel.css +1 -1
  66. package/dist/css/themes/PopupsCommon.css +1 -1
  67. package/dist/css/themes/RadioButton.css +1 -1
  68. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  69. package/dist/css/themes/SegmentedButton.css +1 -1
  70. package/dist/css/themes/Select.css +1 -1
  71. package/dist/css/themes/SplitButton.css +1 -1
  72. package/dist/css/themes/StepInput.css +1 -1
  73. package/dist/css/themes/Suggestions.css +1 -1
  74. package/dist/css/themes/TabContainer.css +1 -1
  75. package/dist/css/themes/TabInOverflow.css +1 -1
  76. package/dist/css/themes/TabInStrip.css +1 -1
  77. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  78. package/dist/css/themes/Table.css +1 -1
  79. package/dist/css/themes/TableCell.css +1 -1
  80. package/dist/css/themes/TableColumn.css +1 -1
  81. package/dist/css/themes/TableGroupRow.css +1 -1
  82. package/dist/css/themes/TableRow.css +1 -1
  83. package/dist/css/themes/TextArea.css +1 -1
  84. package/dist/css/themes/TimePicker.css +1 -1
  85. package/dist/css/themes/Title.css +1 -1
  86. package/dist/css/themes/Toast.css +1 -1
  87. package/dist/css/themes/ToggleButton.css +1 -1
  88. package/dist/css/themes/TreeListItem.css +1 -1
  89. package/dist/css/themes/ValueStateMessage.css +1 -1
  90. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  91. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  92. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  93. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  94. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  95. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  96. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  97. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  98. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  99. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  100. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  101. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  102. package/dist/features/InputElementsFormSupport.js +8 -5
  103. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  105. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  110. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  111. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  112. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  113. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  115. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  119. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  123. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  134. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  135. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  136. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  137. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  138. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  139. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  140. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  141. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  142. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  143. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  144. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  145. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  146. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  147. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  148. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  149. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  150. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  151. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  152. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  153. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  154. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  155. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  156. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  157. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  158. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  159. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  160. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  161. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  162. package/dist/generated/i18n/i18n-defaults.js +2 -2
  163. package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
  164. package/dist/generated/templates/AvatarTemplate.lit.js +1 -1
  165. package/dist/generated/templates/BadgeTemplate.lit.js +1 -1
  166. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +2 -2
  167. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +3 -3
  168. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
  169. package/dist/generated/templates/ButtonTemplate.lit.js +2 -2
  170. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +1 -1
  171. package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
  172. package/dist/generated/templates/CardHeaderTemplate.lit.js +4 -4
  173. package/dist/generated/templates/CardTemplate.lit.js +1 -1
  174. package/dist/generated/templates/CarouselTemplate.lit.js +4 -4
  175. package/dist/generated/templates/CheckBoxTemplate.lit.js +3 -3
  176. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +1 -1
  177. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  178. package/dist/generated/templates/ColorPaletteTemplate.lit.js +3 -3
  179. package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
  180. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +6 -6
  181. package/dist/generated/templates/ComboBoxTemplate.lit.js +3 -4
  182. package/dist/generated/templates/CustomListItemTemplate.lit.js +8 -8
  183. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +3 -3
  184. package/dist/generated/templates/DatePickerTemplate.lit.js +2 -2
  185. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +4 -4
  186. package/dist/generated/templates/DialogTemplate.lit.js +1 -1
  187. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +2 -2
  188. package/dist/generated/templates/FileUploaderTemplate.lit.js +1 -1
  189. package/dist/generated/templates/InputPopoverTemplate.lit.js +8 -8
  190. package/dist/generated/templates/InputTemplate.lit.js +6 -7
  191. package/dist/generated/templates/LabelTemplate.lit.js +1 -1
  192. package/dist/generated/templates/ListItemTemplate.lit.js +8 -8
  193. package/dist/generated/templates/ListTemplate.lit.js +2 -2
  194. package/dist/generated/templates/MenuTemplate.lit.js +15 -0
  195. package/dist/generated/templates/MessageStripTemplate.lit.js +2 -2
  196. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +10 -10
  197. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +4 -5
  198. package/dist/generated/templates/MultiInputTemplate.lit.js +7 -8
  199. package/dist/generated/templates/PanelTemplate.lit.js +3 -3
  200. package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
  201. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +2 -2
  202. package/dist/generated/templates/RadioButtonTemplate.lit.js +2 -2
  203. package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
  204. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +4 -4
  205. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
  206. package/dist/generated/templates/SelectPopoverTemplate.lit.js +5 -5
  207. package/dist/generated/templates/SelectTemplate.lit.js +2 -2
  208. package/dist/generated/templates/SliderTemplate.lit.js +1 -1
  209. package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
  210. package/dist/generated/templates/StandardListItemTemplate.lit.js +11 -11
  211. package/dist/generated/templates/StepInputTemplate.lit.js +3 -3
  212. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +11 -11
  213. package/dist/generated/templates/SwitchTemplate.lit.js +3 -3
  214. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +2 -5
  215. package/dist/generated/templates/TabContainerTemplate.lit.js +10 -12
  216. package/dist/generated/templates/TabInOverflowTemplate.lit.js +3 -2
  217. package/dist/generated/templates/TabInStripTemplate.lit.js +5 -3
  218. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +1 -1
  219. package/dist/generated/templates/TabTemplate.lit.js +2 -1
  220. package/dist/generated/templates/TableRowTemplate.lit.js +1 -1
  221. package/dist/generated/templates/TableTemplate.lit.js +3 -3
  222. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  223. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
  224. package/dist/generated/templates/TimePickerTemplate.lit.js +2 -2
  225. package/dist/generated/templates/TimeSelectionTemplate.lit.js +4 -4
  226. package/dist/generated/templates/ToggleButtonTemplate.lit.js +2 -2
  227. package/dist/generated/templates/TokenTemplate.lit.js +1 -1
  228. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +5 -5
  229. package/dist/generated/templates/TreeListItemTemplate.lit.js +11 -11
  230. package/dist/generated/templates/TreeTemplate.lit.js +2 -2
  231. package/dist/generated/templates/WheelSliderTemplate.lit.js +1 -1
  232. package/dist/generated/themes/Avatar.css.js +1 -1
  233. package/dist/generated/themes/Badge.css.js +1 -1
  234. package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
  235. package/dist/generated/themes/Button.css.js +1 -1
  236. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  237. package/dist/generated/themes/Card.css.js +1 -1
  238. package/dist/generated/themes/CardHeader.css.js +1 -1
  239. package/dist/generated/themes/CheckBox.css.js +1 -1
  240. package/dist/generated/themes/ColorPalette.css.js +1 -1
  241. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  242. package/dist/generated/themes/ColorPicker.css.js +1 -1
  243. package/dist/generated/themes/ComboBox.css.js +1 -1
  244. package/dist/generated/themes/DatePicker.css.js +1 -1
  245. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  246. package/dist/generated/themes/Dialog.css.js +1 -1
  247. package/dist/generated/themes/Icon.css.js +1 -1
  248. package/dist/generated/themes/Input.css.js +1 -1
  249. package/dist/generated/themes/InputIcon.css.js +1 -1
  250. package/dist/generated/themes/Label.css.js +1 -1
  251. package/dist/generated/themes/Link.css.js +1 -1
  252. package/dist/generated/themes/ListItem.css.js +1 -1
  253. package/dist/generated/themes/Menu.css.js +8 -0
  254. package/dist/generated/themes/MessageStrip.css.js +1 -1
  255. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  256. package/dist/generated/themes/MultiInput.css.js +1 -1
  257. package/dist/generated/themes/Panel.css.js +1 -1
  258. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  259. package/dist/generated/themes/RadioButton.css.js +1 -1
  260. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  261. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  262. package/dist/generated/themes/Select.css.js +1 -1
  263. package/dist/generated/themes/SplitButton.css.js +1 -1
  264. package/dist/generated/themes/StepInput.css.js +1 -1
  265. package/dist/generated/themes/Suggestions.css.js +1 -1
  266. package/dist/generated/themes/TabContainer.css.js +1 -1
  267. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  268. package/dist/generated/themes/TabInStrip.css.js +1 -1
  269. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  270. package/dist/generated/themes/Table.css.js +1 -1
  271. package/dist/generated/themes/TableCell.css.js +1 -1
  272. package/dist/generated/themes/TableColumn.css.js +1 -1
  273. package/dist/generated/themes/TableGroupRow.css.js +1 -1
  274. package/dist/generated/themes/TableRow.css.js +1 -1
  275. package/dist/generated/themes/TextArea.css.js +1 -1
  276. package/dist/generated/themes/TimePicker.css.js +1 -1
  277. package/dist/generated/themes/Title.css.js +1 -1
  278. package/dist/generated/themes/Toast.css.js +1 -1
  279. package/dist/generated/themes/ToggleButton.css.js +1 -1
  280. package/dist/generated/themes/TreeListItem.css.js +1 -1
  281. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  282. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  283. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  284. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  285. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  286. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  287. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  288. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  289. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  290. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  291. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  292. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  293. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  294. package/dist/i18n/messagebundle.properties +8 -0
  295. package/dist/i18n/messagebundle_ar.properties +6 -0
  296. package/dist/i18n/messagebundle_bg.properties +6 -0
  297. package/dist/i18n/messagebundle_ca.properties +6 -0
  298. package/dist/i18n/messagebundle_cs.properties +6 -0
  299. package/dist/i18n/messagebundle_cy.properties +6 -0
  300. package/dist/i18n/messagebundle_da.properties +6 -0
  301. package/dist/i18n/messagebundle_de.properties +6 -0
  302. package/dist/i18n/messagebundle_el.properties +6 -0
  303. package/dist/i18n/messagebundle_en.properties +6 -0
  304. package/dist/i18n/messagebundle_en_GB.properties +6 -0
  305. package/dist/i18n/messagebundle_en_US_sappsd.properties +6 -0
  306. package/dist/i18n/messagebundle_en_US_saprigi.properties +7 -0
  307. package/dist/i18n/messagebundle_en_US_saptrc.properties +6 -0
  308. package/dist/i18n/messagebundle_es.properties +6 -0
  309. package/dist/i18n/messagebundle_es_MX.properties +6 -0
  310. package/dist/i18n/messagebundle_et.properties +6 -0
  311. package/dist/i18n/messagebundle_fi.properties +6 -0
  312. package/dist/i18n/messagebundle_fr.properties +6 -0
  313. package/dist/i18n/messagebundle_fr_CA.properties +6 -0
  314. package/dist/i18n/messagebundle_hi.properties +6 -0
  315. package/dist/i18n/messagebundle_hr.properties +6 -0
  316. package/dist/i18n/messagebundle_hu.properties +6 -0
  317. package/dist/i18n/messagebundle_id.properties +6 -0
  318. package/dist/i18n/messagebundle_it.properties +6 -0
  319. package/dist/i18n/messagebundle_iw.properties +6 -0
  320. package/dist/i18n/messagebundle_ja.properties +6 -0
  321. package/dist/i18n/messagebundle_kk.properties +6 -0
  322. package/dist/i18n/messagebundle_ko.properties +6 -0
  323. package/dist/i18n/messagebundle_lt.properties +6 -0
  324. package/dist/i18n/messagebundle_lv.properties +6 -0
  325. package/dist/i18n/messagebundle_ms.properties +6 -0
  326. package/dist/i18n/messagebundle_nl.properties +6 -0
  327. package/dist/i18n/messagebundle_no.properties +6 -0
  328. package/dist/i18n/messagebundle_pl.properties +6 -0
  329. package/dist/i18n/messagebundle_pt.properties +6 -0
  330. package/dist/i18n/messagebundle_pt_PT.properties +6 -0
  331. package/dist/i18n/messagebundle_ro.properties +6 -0
  332. package/dist/i18n/messagebundle_ru.properties +6 -0
  333. package/dist/i18n/messagebundle_sh.properties +6 -0
  334. package/dist/i18n/messagebundle_sk.properties +6 -0
  335. package/dist/i18n/messagebundle_sl.properties +6 -0
  336. package/dist/i18n/messagebundle_sv.properties +6 -0
  337. package/dist/i18n/messagebundle_th.properties +6 -0
  338. package/dist/i18n/messagebundle_tr.properties +6 -0
  339. package/dist/i18n/messagebundle_uk.properties +6 -0
  340. package/dist/i18n/messagebundle_vi.properties +6 -0
  341. package/dist/i18n/messagebundle_zh_CN.properties +6 -0
  342. package/dist/i18n/messagebundle_zh_TW.properties +6 -0
  343. package/dist/types/ListGrowingMode.js +36 -3
  344. package/dist/types/TableGrowingMode.js +35 -2
  345. package/package.json +7 -10
  346. package/src/Badge.hbs +0 -1
  347. package/src/Breadcrumbs.hbs +5 -3
  348. package/src/Breadcrumbs.js +52 -2
  349. package/src/BreadcrumbsPopover.hbs +1 -0
  350. package/src/Button.hbs +0 -1
  351. package/src/Button.js +13 -10
  352. package/src/CalendarHeader.hbs +1 -4
  353. package/src/Card.hbs +0 -1
  354. package/src/CardHeader.hbs +18 -15
  355. package/src/CardHeader.js +0 -6
  356. package/src/CheckBox.hbs +1 -1
  357. package/src/CheckBox.js +12 -0
  358. package/src/ColorPicker.hbs +2 -2
  359. package/src/ColorPicker.js +14 -10
  360. package/src/ComboBox.hbs +1 -5
  361. package/src/ComboBox.js +13 -9
  362. package/src/ComboBoxPopover.hbs +2 -1
  363. package/src/DatePicker.js +12 -5
  364. package/src/DateTimePicker.js +3 -0
  365. package/src/DateTimePickerPopover.hbs +1 -1
  366. package/src/Icon.js +4 -9
  367. package/src/Input.hbs +1 -5
  368. package/src/Input.js +36 -4
  369. package/src/InputPopover.hbs +2 -1
  370. package/src/Interfaces.js +10 -0
  371. package/src/Label.hbs +1 -2
  372. package/src/Link.js +1 -1
  373. package/src/List.hbs +1 -0
  374. package/src/List.js +54 -5
  375. package/src/ListItem.hbs +1 -1
  376. package/src/ListItem.js +28 -5
  377. package/src/ListItemBase.js +3 -1
  378. package/src/Menu.hbs +100 -0
  379. package/src/Menu.js +500 -0
  380. package/src/MenuItem.js +162 -0
  381. package/src/MultiComboBox.hbs +2 -6
  382. package/src/MultiComboBox.js +229 -25
  383. package/src/MultiInput.hbs +1 -1
  384. package/src/MultiInput.js +20 -9
  385. package/src/Option.js +10 -0
  386. package/src/Panel.hbs +0 -1
  387. package/src/Popover.hbs +1 -1
  388. package/src/Popover.js +8 -5
  389. package/src/Popup.js +4 -0
  390. package/src/RadioButton.hbs +1 -1
  391. package/src/RadioButton.js +10 -1
  392. package/src/ResponsivePopover.js +4 -0
  393. package/src/Select.hbs +1 -1
  394. package/src/Select.js +3 -0
  395. package/src/SelectPopover.hbs +1 -0
  396. package/src/SliderBase.js +7 -4
  397. package/src/SplitButton.js +13 -6
  398. package/src/StandardListItem.hbs +2 -2
  399. package/src/Switch.hbs +1 -1
  400. package/src/Tab.hbs +5 -1
  401. package/src/Tab.js +78 -4
  402. package/src/TabContainer.hbs +11 -13
  403. package/src/TabContainer.js +193 -41
  404. package/src/TabContainerPopover.hbs +4 -10
  405. package/src/TabInOverflow.hbs +15 -8
  406. package/src/TabInStrip.hbs +19 -2
  407. package/src/TabSeparatorInOverflow.hbs +1 -0
  408. package/src/Table.hbs +7 -2
  409. package/src/Table.js +240 -44
  410. package/src/TableGroupRow.js +4 -1
  411. package/src/TableRow.js +33 -66
  412. package/src/TimePickerBase.js +11 -2
  413. package/src/Token.js +2 -1
  414. package/src/Tokenizer.js +26 -16
  415. package/src/TokenizerPopover.hbs +16 -17
  416. package/src/WheelSlider.js +7 -0
  417. package/src/features/InputElementsFormSupport.js +8 -5
  418. package/src/i18n/messagebundle.properties +8 -0
  419. package/src/i18n/messagebundle_ar.properties +6 -0
  420. package/src/i18n/messagebundle_bg.properties +6 -0
  421. package/src/i18n/messagebundle_ca.properties +6 -0
  422. package/src/i18n/messagebundle_cs.properties +6 -0
  423. package/src/i18n/messagebundle_cy.properties +6 -0
  424. package/src/i18n/messagebundle_da.properties +6 -0
  425. package/src/i18n/messagebundle_de.properties +6 -0
  426. package/src/i18n/messagebundle_el.properties +6 -0
  427. package/src/i18n/messagebundle_en.properties +6 -0
  428. package/src/i18n/messagebundle_en_GB.properties +6 -0
  429. package/src/i18n/messagebundle_en_US_sappsd.properties +6 -0
  430. package/src/i18n/messagebundle_en_US_saprigi.properties +7 -0
  431. package/src/i18n/messagebundle_en_US_saptrc.properties +6 -0
  432. package/src/i18n/messagebundle_es.properties +6 -0
  433. package/src/i18n/messagebundle_es_MX.properties +6 -0
  434. package/src/i18n/messagebundle_et.properties +6 -0
  435. package/src/i18n/messagebundle_fi.properties +6 -0
  436. package/src/i18n/messagebundle_fr.properties +6 -0
  437. package/src/i18n/messagebundle_fr_CA.properties +6 -0
  438. package/src/i18n/messagebundle_hi.properties +6 -0
  439. package/src/i18n/messagebundle_hr.properties +6 -0
  440. package/src/i18n/messagebundle_hu.properties +6 -0
  441. package/src/i18n/messagebundle_id.properties +6 -0
  442. package/src/i18n/messagebundle_it.properties +6 -0
  443. package/src/i18n/messagebundle_iw.properties +6 -0
  444. package/src/i18n/messagebundle_ja.properties +6 -0
  445. package/src/i18n/messagebundle_kk.properties +6 -0
  446. package/src/i18n/messagebundle_ko.properties +6 -0
  447. package/src/i18n/messagebundle_lt.properties +6 -0
  448. package/src/i18n/messagebundle_lv.properties +6 -0
  449. package/src/i18n/messagebundle_ms.properties +6 -0
  450. package/src/i18n/messagebundle_nl.properties +6 -0
  451. package/src/i18n/messagebundle_no.properties +6 -0
  452. package/src/i18n/messagebundle_pl.properties +6 -0
  453. package/src/i18n/messagebundle_pt.properties +6 -0
  454. package/src/i18n/messagebundle_pt_PT.properties +6 -0
  455. package/src/i18n/messagebundle_ro.properties +6 -0
  456. package/src/i18n/messagebundle_ru.properties +6 -0
  457. package/src/i18n/messagebundle_sh.properties +6 -0
  458. package/src/i18n/messagebundle_sk.properties +6 -0
  459. package/src/i18n/messagebundle_sl.properties +6 -0
  460. package/src/i18n/messagebundle_sv.properties +6 -0
  461. package/src/i18n/messagebundle_th.properties +6 -0
  462. package/src/i18n/messagebundle_tr.properties +6 -0
  463. package/src/i18n/messagebundle_uk.properties +6 -0
  464. package/src/i18n/messagebundle_vi.properties +6 -0
  465. package/src/i18n/messagebundle_zh_CN.properties +6 -0
  466. package/src/i18n/messagebundle_zh_TW.properties +6 -0
  467. package/src/themes/Avatar.css +37 -52
  468. package/src/themes/Badge.css +1 -7
  469. package/src/themes/BreadcrumbsPopover.css +4 -0
  470. package/src/themes/Button.css +62 -87
  471. package/src/themes/CalendarHeader.css +2 -7
  472. package/src/themes/Card.css +7 -4
  473. package/src/themes/CardHeader.css +24 -26
  474. package/src/themes/CheckBox.css +8 -24
  475. package/src/themes/ColorPalette.css +2 -0
  476. package/src/themes/ColorPalettePopover.css +4 -0
  477. package/src/themes/ColorPicker.css +16 -0
  478. package/src/themes/ComboBox.css +1 -0
  479. package/src/themes/DateTimePickerPopover.css +5 -1
  480. package/src/themes/Dialog.css +20 -6
  481. package/src/themes/Icon.css +15 -3
  482. package/src/themes/Input.css +174 -131
  483. package/src/themes/InputIcon.css +12 -3
  484. package/src/themes/Label.css +1 -7
  485. package/src/themes/Link.css +32 -15
  486. package/src/themes/ListItem.css +8 -38
  487. package/src/themes/Menu.css +101 -0
  488. package/src/themes/MessageStrip.css +17 -47
  489. package/src/themes/MultiComboBox.css +1 -0
  490. package/src/themes/Panel.css +21 -14
  491. package/src/themes/PopupsCommon.css +12 -11
  492. package/src/themes/RadioButton.css +74 -8
  493. package/src/themes/ResponsivePopoverCommon.css +50 -50
  494. package/src/themes/SegmentedButton.css +36 -10
  495. package/src/themes/Select.css +1 -5
  496. package/src/themes/SplitButton.css +143 -32
  497. package/src/themes/StepInput.css +10 -8
  498. package/src/themes/Suggestions.css +4 -0
  499. package/src/themes/TabContainer.css +35 -2
  500. package/src/themes/TabInOverflow.css +15 -9
  501. package/src/themes/TabInStrip.css +67 -28
  502. package/src/themes/TabSeparatorInOverflow.css +2 -1
  503. package/src/themes/Table.css +7 -2
  504. package/src/themes/TableCell.css +2 -6
  505. package/src/themes/TableColumn.css +1 -3
  506. package/src/themes/TableGroupRow.css +6 -4
  507. package/src/themes/TableRow.css +28 -20
  508. package/src/themes/TextArea.css +93 -36
  509. package/src/themes/Title.css +7 -7
  510. package/src/themes/Toast.css +1 -1
  511. package/src/themes/ToggleButton.css +90 -50
  512. package/src/themes/TreeListItem.css +1 -7
  513. package/src/themes/ValueStateMessage.css +8 -10
  514. package/src/themes/base/Avatar-parameters.css +19 -0
  515. package/src/themes/base/Button-parameters.css +5 -0
  516. package/src/themes/base/Card-parameters.css +5 -3
  517. package/src/themes/base/CheckBox-parameters.css +5 -2
  518. package/src/themes/base/Dialog-parameters.css +5 -4
  519. package/src/themes/base/Input-parameters.css +44 -44
  520. package/src/themes/base/InputIcon-parameters.css +10 -2
  521. package/src/themes/base/Link-parameters.css +7 -1
  522. package/src/themes/base/MessageStrip-parameters.css +4 -7
  523. package/src/themes/base/Panel-parameters.css +4 -4
  524. package/src/themes/base/PopupsCommon-parameters.css +1 -3
  525. package/src/themes/base/RadioButton-parameters.css +18 -2
  526. package/src/themes/base/SegmentedButtton-parameters.css +3 -2
  527. package/src/themes/base/SplitButton-parameters.css +17 -0
  528. package/src/themes/base/StepInput-parameters.css +1 -0
  529. package/src/themes/base/TabContainer-parameters.css +15 -0
  530. package/src/themes/base/Table-parameters.css +2 -0
  531. package/src/themes/base/TableGroupRow-parameters.css +4 -0
  532. package/src/themes/base/TextArea-parameters.css +8 -6
  533. package/src/themes/base/ValueStateMessage-parameters.css +6 -0
  534. package/src/themes/base/rtl-parameters.css +16 -0
  535. package/src/themes/base/sizes-parameters.css +47 -6
  536. package/src/themes/sap_belize/Card-parameters.css +5 -0
  537. package/src/themes/sap_belize/Input-parameters.css +16 -1
  538. package/src/themes/sap_belize/InputIcon-parameters.css +1 -1
  539. package/src/themes/sap_belize/Panel-parameters.css +12 -0
  540. package/src/themes/sap_belize/PopupsCommon-parameters.css +5 -0
  541. package/src/themes/sap_belize/SplitButton-parameters.css +6 -0
  542. package/src/themes/sap_belize/TableRow-parameters.css +5 -0
  543. package/src/themes/sap_belize/parameters-bundle.css +8 -5
  544. package/src/themes/sap_belize/sizes-parameters.css +15 -0
  545. package/src/themes/sap_belize_hcb/Button-parameters.css +2 -2
  546. package/src/themes/sap_belize_hcb/Card-parameters.css +2 -1
  547. package/src/themes/sap_belize_hcb/Input-parameters.css +19 -0
  548. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +1 -1
  549. package/src/themes/sap_belize_hcb/Link-parameters.css +2 -1
  550. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +0 -1
  551. package/src/themes/sap_belize_hcb/Panel-parameters.css +8 -0
  552. package/src/themes/sap_belize_hcb/PopupsCommon-parameters.css +5 -0
  553. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +6 -2
  554. package/src/themes/sap_belize_hcb/SplitButton-parameters.css +10 -0
  555. package/src/themes/sap_belize_hcb/TableRow-parameters.css +1 -0
  556. package/src/themes/sap_belize_hcb/TextArea-parameters.css +3 -0
  557. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +2 -0
  558. package/src/themes/sap_belize_hcb/parameters-bundle.css +6 -3
  559. package/src/themes/sap_belize_hcb/sizes-parameters.css +15 -0
  560. package/src/themes/sap_belize_hcw/Button-parameters.css +2 -2
  561. package/src/themes/sap_belize_hcw/Card-parameters.css +2 -1
  562. package/src/themes/sap_belize_hcw/Input-parameters.css +19 -0
  563. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +1 -1
  564. package/src/themes/sap_belize_hcw/Link-parameters.css +2 -1
  565. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +0 -1
  566. package/src/themes/sap_belize_hcw/Panel-parameters.css +8 -0
  567. package/src/themes/sap_belize_hcw/PopupsCommon-parameters.css +5 -0
  568. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +5 -1
  569. package/src/themes/sap_belize_hcw/SplitButton-parameters.css +10 -0
  570. package/src/themes/sap_belize_hcw/TableRow-parameters.css +1 -0
  571. package/src/themes/sap_belize_hcw/TextArea-parameters.css +3 -0
  572. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +2 -0
  573. package/src/themes/sap_belize_hcw/parameters-bundle.css +7 -4
  574. package/src/themes/sap_belize_hcw/sizes-parameters.css +15 -0
  575. package/src/themes/sap_fiori_3/Button-parameters.css +1 -0
  576. package/src/themes/sap_fiori_3/Input-parameters.css +0 -2
  577. package/src/themes/sap_fiori_3/Link-parameters.css +0 -1
  578. package/src/themes/sap_fiori_3/Panel-parameters.css +0 -1
  579. package/src/themes/sap_fiori_3/TabContainer-parameters.css +1 -0
  580. package/src/themes/sap_fiori_3/parameters-bundle.css +4 -1
  581. package/src/themes/sap_fiori_3_dark/Button-parameters.css +1 -0
  582. package/src/themes/sap_fiori_3_dark/Input-parameters.css +0 -2
  583. package/src/themes/sap_fiori_3_dark/Link-parameters.css +0 -1
  584. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +0 -1
  585. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +1 -0
  586. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +4 -1
  587. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +3 -2
  588. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +14 -7
  589. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +4 -1
  590. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +0 -1
  591. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +5 -1
  592. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +12 -0
  593. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +3 -0
  594. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +2 -0
  595. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +7 -4
  596. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +8 -0
  597. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +3 -2
  598. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +14 -7
  599. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +4 -1
  600. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +0 -1
  601. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +5 -1
  602. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +12 -0
  603. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +3 -0
  604. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +2 -0
  605. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +7 -4
  606. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +8 -0
  607. package/src/themes/sap_horizon/Avatar-parameters.css +47 -27
  608. package/src/themes/sap_horizon/BusyIndicator-parameters.css +1 -1
  609. package/src/themes/sap_horizon/Button-parameters.css +6 -7
  610. package/src/themes/sap_horizon/Card-parameters.css +8 -3
  611. package/src/themes/sap_horizon/CheckBox-parameters.css +38 -23
  612. package/src/themes/sap_horizon/Dialog-parameters.css +6 -6
  613. package/src/themes/sap_horizon/Icon-parameters.css +3 -0
  614. package/src/themes/sap_horizon/Input-parameters.css +28 -29
  615. package/src/themes/sap_horizon/InputIcon-parameters.css +11 -4
  616. package/src/themes/sap_horizon/Link-parameters.css +6 -2
  617. package/src/themes/sap_horizon/MessageStrip-parameters.css +1 -5
  618. package/src/themes/sap_horizon/Panel-parameters.css +2 -3
  619. package/src/themes/sap_horizon/RadioButton-parameters.css +10 -4
  620. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +1 -1
  621. package/src/themes/sap_horizon/SplitButton-parameters.css +17 -0
  622. package/src/themes/sap_horizon/TabContainer-parameters.css +13 -4
  623. package/src/themes/sap_horizon/Table-parameters.css +2 -1
  624. package/src/themes/sap_horizon/TableGroupRow-parameters.css +6 -0
  625. package/src/themes/sap_horizon/TextArea-parameters.css +1 -6
  626. package/src/themes/sap_horizon/ToggleButton-parameters.css +1 -11
  627. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +4 -1
  628. package/src/themes/sap_horizon/parameters-bundle.css +5 -3
  629. package/src/themes/sap_horizon/sizes-parameters.css +10 -0
  630. package/src/themes/sap_horizon_dark/Avatar-parameters.css +47 -27
  631. package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +1 -1
  632. package/src/themes/sap_horizon_dark/Button-parameters.css +6 -7
  633. package/src/themes/sap_horizon_dark/Card-parameters.css +8 -3
  634. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +38 -23
  635. package/src/themes/sap_horizon_dark/Dialog-parameters.css +6 -6
  636. package/src/themes/sap_horizon_dark/Icon-parameters.css +3 -0
  637. package/src/themes/sap_horizon_dark/Input-parameters.css +27 -28
  638. package/src/themes/sap_horizon_dark/InputIcon-parameters.css +11 -4
  639. package/src/themes/sap_horizon_dark/Link-parameters.css +6 -2
  640. package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +1 -5
  641. package/src/themes/sap_horizon_dark/Panel-parameters.css +2 -3
  642. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +10 -4
  643. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +1 -1
  644. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +17 -0
  645. package/src/themes/sap_horizon_dark/Table-parameters.css +2 -1
  646. package/src/themes/sap_horizon_dark/TableGroupRow-parameters.css +6 -0
  647. package/src/themes/sap_horizon_dark/TextArea-parameters.css +1 -6
  648. package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +1 -11
  649. package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +4 -1
  650. package/src/themes/sap_horizon_dark/parameters-bundle.css +5 -3
  651. package/src/themes/sap_horizon_dark/sizes-parameters.css +10 -0
  652. package/src/themes/sap_horizon_exp/Input-parameters.css +34 -37
  653. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +4 -0
  654. package/src/themes/sap_horizon_exp/Link-parameters.css +1 -1
  655. package/src/themes/sap_horizon_exp/Panel-parameters.css +0 -1
  656. package/src/themes/sap_horizon_exp/Popover-parameters.css +0 -1
  657. package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  658. package/src/themes/sap_horizon_hcb/Avatar-parameters.css +44 -15
  659. package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +5 -0
  660. package/src/themes/sap_horizon_hcb/Button-parameters.css +6 -6
  661. package/src/themes/sap_horizon_hcb/Card-parameters.css +6 -1
  662. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +46 -10
  663. package/src/themes/sap_horizon_hcb/Dialog-parameters.css +2 -3
  664. package/src/themes/sap_horizon_hcb/Input-parameters.css +17 -7
  665. package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +7 -1
  666. package/src/themes/sap_horizon_hcb/Link-parameters.css +4 -1
  667. package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +1 -1
  668. package/src/themes/sap_horizon_hcb/Panel-parameters.css +3 -0
  669. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +9 -3
  670. package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +9 -0
  671. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +12 -0
  672. package/src/themes/sap_horizon_hcb/Table-parameters.css +4 -0
  673. package/src/themes/sap_horizon_hcb/TableGroupRow-parameters.css +6 -0
  674. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +7 -0
  675. package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +1 -6
  676. package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +8 -0
  677. package/src/themes/sap_horizon_hcb/parameters-bundle.css +6 -3
  678. package/src/themes/sap_horizon_hcb/sizes-parameters.css +8 -0
  679. package/src/themes/sap_horizon_hcw/Avatar-parameters.css +44 -15
  680. package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +5 -0
  681. package/src/themes/sap_horizon_hcw/Button-parameters.css +7 -7
  682. package/src/themes/sap_horizon_hcw/Card-parameters.css +6 -1
  683. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +46 -10
  684. package/src/themes/sap_horizon_hcw/Dialog-parameters.css +2 -3
  685. package/src/themes/sap_horizon_hcw/Input-parameters.css +17 -7
  686. package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +7 -1
  687. package/src/themes/sap_horizon_hcw/Link-parameters.css +4 -1
  688. package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +1 -1
  689. package/src/themes/sap_horizon_hcw/Panel-parameters.css +4 -0
  690. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +11 -1
  691. package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +9 -0
  692. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +12 -0
  693. package/src/themes/sap_horizon_hcw/Table-parameters.css +4 -0
  694. package/src/themes/sap_horizon_hcw/TableGroupRow-parameters.css +6 -0
  695. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +7 -0
  696. package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +1 -6
  697. package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +8 -0
  698. package/src/themes/sap_horizon_hcw/parameters-bundle.css +6 -3
  699. package/src/themes/sap_horizon_hcw/sizes-parameters.css +8 -0
  700. package/src/types/ListGrowingMode.js +36 -3
  701. package/src/types/TableGrowingMode.js +35 -2
  702. package/dist/webcomponentsjs/CHANGELOG.md +0 -61
  703. package/dist/webcomponentsjs/LICENSE.md +0 -19
  704. package/dist/webcomponentsjs/README.md +0 -246
  705. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  706. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  707. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +0 -60
  708. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +0 -1
  709. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +0 -95
  710. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +0 -1
  711. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -360
  712. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  713. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -228
  714. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  715. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -185
  716. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  717. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  718. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -370
  719. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  720. package/dist/webcomponentsjs/webcomponents-loader.js +0 -206
  721. package/src/themes/base/Title-parameters.css +0 -8
  722. package/src/themes/sap_belize_hcb/Dialog-parameters.css +0 -7
  723. package/src/themes/sap_belize_hcw/Dialog-parameters.css +0 -7
  724. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +0 -7
  725. package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +0 -5
  726. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +0 -7
  727. package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +0 -5
  728. package/src/themes/sap_horizon/PopupsCommon-parameters.css +0 -9
  729. package/src/themes/sap_horizon_dark/PopupsCommon-parameters.css +0 -10
@@ -6,16 +6,23 @@
6
6
  aria-disabled="{{this.effectiveDisabled}}"
7
7
  aria-selected="{{this.effectiveSelected}}"
8
8
  aria-labelledby="{{this.ariaLabelledBy}}"
9
+ ._realTab="{{this}}"
10
+ style="{{this._style}}"
9
11
  >
10
- <div class="ui5-tab-overflow-itemContent">
11
- {{#if this.icon}}
12
- <ui5-icon name="{{this.icon}}"></ui5-icon>
13
- {{/if}}
12
+ <div class="ui5-tab-overflow-itemContent-wrapper">
13
+ <div class="ui5-tab-overflow-itemContent">
14
+ {{#if this.icon}}
15
+ <ui5-icon name="{{this.icon}}"></ui5-icon>
16
+ {{/if}}
14
17
 
15
- {{this.text}}
18
+ {{this.text}}
16
19
 
17
- {{#if this.additionalText}}
18
- ({{this.additionalText}})
19
- {{/if}}
20
+ {{#if this.additionalText}}
21
+ ({{this.additionalText}})
22
+ {{/if}}
23
+ </div>
20
24
  </div>
21
25
  </ui5-li-custom>
26
+ {{#each subTabs}}
27
+ {{overflowPresentation}}
28
+ {{/each}}
@@ -4,12 +4,13 @@
4
4
  role="tab"
5
5
  aria-posinset="{{this._posinset}}"
6
6
  aria-setsize="{{this._setsize}}"
7
- aria-controls="ui5-tc-contentItem-{{this._posinset}}"
7
+ aria-controls="ui5-tc-content"
8
8
  aria-selected="{{this.effectiveSelected}}"
9
9
  aria-disabled="{{this.effectiveDisabled}}"
10
10
  ?disabled="{{this.effectiveDisabled}}"
11
11
  aria-labelledby="{{this.ariaLabelledBy}}"
12
12
  data-ui5-stable="{{this.stableDomRef}}"
13
+ ._realTab="{{this}}"
13
14
  >
14
15
  {{#if this.icon}}
15
16
  <div class="ui5-tab-strip-item-icon-outer">
@@ -26,10 +27,26 @@
26
27
  <span class="ui5-tab-strip-itemText" id="{{this._id}}-text">
27
28
  <span class="{{this.headerSemanticIconClasses}}"></span>
28
29
  {{this.displayText}}
30
+ {{#if this.isSingleClickArea}}
31
+ <span class="ui5-tab-single-click-icon">
32
+ <ui5-icon name="slim-arrow-down"></ui5-icon>
33
+ </span>
34
+ {{/if}}
29
35
  </span>
30
36
  {{/if}}
37
+
31
38
  </div>
32
- </div>
39
+ {{#if this.requiresExpandButton}}
40
+ <div class="ui5-tab-expand-button" @click="{{_onTabExpandButtonClick}}">
41
+ <ui5-button
42
+ .tab={{this}}
43
+ icon="slim-arrow-down"
44
+ design="Transparent"
45
+ tabindex="-1"
46
+ aria-haspopup="true">
47
+ </ui5-button>
48
+ </div>
49
+ {{/if}}
33
50
 
34
51
  {{#*inline additionalText}}
35
52
  {{#if this.additionalText}}
@@ -4,5 +4,6 @@
4
4
  role="separator"
5
5
  class="{{classes}}"
6
6
  disabled
7
+ style="{{this._style}}"
7
8
  >
8
9
  </ui5-li-custom>
package/src/Table.hbs CHANGED
@@ -1,9 +1,11 @@
1
- <div class="ui5-table-root">
1
+ <div class="ui5-table-root" @focusin="{{_onfocusin}}">
2
+ <div id="{{_id}}-before" tabindex="0" class="ui5-table-focusarea"></div>
3
+
2
4
  {{#if busy}}
3
5
  {{> busyRow}}
4
6
  {{/if}}
5
7
 
6
- <table border="0" cellspacing="0" cellpadding="0" @keydown="{{_onkeydown}}" role="table">
8
+ <table border="0" cellspacing="0" cellpadding="0" @keydown="{{_onkeydown}}" role="table" aria-label="{{tableAriaLabelText}}">
7
9
  <thead>
8
10
  <tr
9
11
  id="{{_columnHeader.id}}"
@@ -12,6 +14,7 @@
12
14
  aria-label="{{ariaLabelText}}"
13
15
  tabindex="{{_columnHeader._tabIndex}}"
14
16
  @click="{{_onColumnHeaderClick}}"
17
+ @focusin="{{_onColumnHeaderFocused}}"
15
18
  @keydown="{{_onColumnHeaderKeydown}}"
16
19
  >
17
20
  {{#if isMultiSelect}}
@@ -59,6 +62,8 @@
59
62
  {{/if}}
60
63
  </tbody>
61
64
  </table>
65
+
66
+ <div id="{{_id}}-after" tabindex="0" class="ui5-table-focusarea"></div>
62
67
  </div>
63
68
 
64
69
  {{#*inline "moreRow"}}
package/src/Table.js CHANGED
@@ -6,6 +6,8 @@ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
6
6
  import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
7
7
  import { isIE } from "@ui5/webcomponents-base/dist/Device.js";
8
8
  import {
9
+ isTabNext,
10
+ isTabPrevious,
9
11
  isSpace,
10
12
  isEnter,
11
13
  isCtrlA,
@@ -18,7 +20,10 @@ import {
18
20
  isHomeShift,
19
21
  isEndShift,
20
22
  } from "@ui5/webcomponents-base/dist/Keys.js";
21
- import { getTabbableElements } from "@ui5/webcomponents-base/dist/util/TabbableElements.js";
23
+ import getNormalizedTarget from "@ui5/webcomponents-base/dist/util/getNormalizedTarget.js";
24
+ import getActiveElement from "@ui5/webcomponents-base/dist/util/getActiveElement.js";
25
+ import { getLastTabbableElement, getTabbableElements } from "@ui5/webcomponents-base/dist/util/TabbableElements.js";
26
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
22
27
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
23
28
  import debounce from "@ui5/webcomponents-base/dist/util/debounce.js";
24
29
  import isElementInView from "@ui5/webcomponents-base/dist/util/isElementInView.js";
@@ -43,6 +48,8 @@ import styles from "./generated/themes/Table.css.js";
43
48
 
44
49
  const GROWING_WITH_SCROLL_DEBOUNCE_RATE = 250; // ms
45
50
 
51
+ const PAGE_UP_DOWN_SIZE = 20;
52
+
46
53
  /**
47
54
  * @public
48
55
  */
@@ -246,6 +253,32 @@ const metadata = {
246
253
  defaultValue: TableMode.None,
247
254
  },
248
255
 
256
+ /**
257
+ * Defines the accessible aria name of the component.
258
+ *
259
+ * @type {string}
260
+ * @defaultvalue: ""
261
+ * @public
262
+ * @since 1.3.0
263
+ */
264
+ accessibleName: {
265
+ type: String,
266
+ defaultValue: undefined,
267
+ },
268
+
269
+ /**
270
+ * Receives id(or many ids) of the elements that label the component.
271
+ *
272
+ * @type {string}
273
+ * @defaultvalue ""
274
+ * @public
275
+ * @since 1.3.0
276
+ */
277
+ accessibleNameRef: {
278
+ type: String,
279
+ defaultValue: "",
280
+ },
281
+
249
282
  _hiddenColumns: {
250
283
  type: Object,
251
284
  multiple: true,
@@ -397,7 +430,8 @@ const metadata = {
397
430
  * <li>[ALT]+[DOWN]/[UP] - Switches focus between header, last focused item, and More button (if applies) in either direction.</li>
398
431
  * <li>[SHIFT]+[DOWN]/[UP] - Selects the next/previous item in a MultiSelect table, if the current item is selected (Range selection). Otherwise, deselects them (Range deselection).</li>
399
432
  * <li>[SHIFT]+[HOME]/[END] - Range selection to the first/last item of the List.</li>
400
- * <li>[CTRL]+[HOME]/[END] - Same behavior as HOME & END.</li> * </ul>
433
+ * <li>[CTRL]+[HOME]/[END] - Same behavior as HOME & END.</li>
434
+ * </ul>
401
435
  *
402
436
  * <h3>ES6 Module Import</h3>
403
437
  *
@@ -455,17 +489,28 @@ class Table extends UI5Element {
455
489
  navigationMode: NavigationMode.Vertical,
456
490
  affectedPropertiesNames: ["_columnHeader"],
457
491
  getItemsCallback: () => [this._columnHeader, ...this.rows],
458
- skipItemsSize: 20,
492
+ skipItemsSize: PAGE_UP_DOWN_SIZE,
459
493
  });
460
494
 
461
495
  this.fnOnRowFocused = this.onRowFocused.bind(this);
462
496
 
463
497
  this._handleResize = this.popinContent.bind(this);
464
498
 
499
+ this.fnHandleF7 = this._handleF7.bind(this);
500
+
465
501
  this.tableEndObserved = false;
466
502
 
467
503
  this.addEventListener("ui5-selection-requested", this._handleSelect.bind(this));
504
+ this.addEventListener("ui5-_forward-after", this._onForwardAfter.bind(this));
505
+ this.addEventListener("ui5-_forward-before", this._onForwardBefore.bind(this));
506
+
507
+ // Stores the last focused element within the table.
508
+ this.lastFocusedElement = null;
509
+
510
+ // Indicates whether the table is forwarding focus before or after the current table row.
511
+ this._forwardingFocus = false;
468
512
 
513
+ // Stores the last focused nested element index (within a table row) for F7 navigation.
469
514
  this._prevNestedElementIndex = 0;
470
515
  }
471
516
 
@@ -485,6 +530,8 @@ class Table extends UI5Element {
485
530
  row._busy = this.busy;
486
531
  row.removeEventListener("ui5-_focused", this.fnOnRowFocused);
487
532
  row.addEventListener("ui5-_focused", this.fnOnRowFocused);
533
+ row.removeEventListener("ui5-f7-pressed", this.fnHandleF7);
534
+ row.addEventListener("ui5-f7-pressed", this.fnHandleF7);
488
535
  row.mode = this.mode;
489
536
  });
490
537
 
@@ -497,7 +544,7 @@ class Table extends UI5Element {
497
544
 
498
545
  this._allRowsSelected = selectedRows.length === this.rows.length;
499
546
 
500
- this._previousFocusedRow = this._previousFocusedRow || this.rows[0] || null;
547
+ this._prevFocusedRow = this._prevFocusedRow || this.rows[0];
501
548
  }
502
549
 
503
550
  onAfterRendering() {
@@ -516,14 +563,6 @@ class Table extends UI5Element {
516
563
  ResizeHandler.register(this.getDomRef(), this._handleResize);
517
564
 
518
565
  this._itemNavigation.setCurrentItem(this.rows.length ? this.rows[0] : this._columnHeader);
519
-
520
- this.rows.forEach((row, index) => {
521
- row._tabbableElements = getTabbableElements(row);
522
-
523
- if (index > 0) {
524
- row._tabbableElements.forEach(el => el.setAttribute("tabindex", "-1"));
525
- }
526
- });
527
566
  }
528
567
 
529
568
  onExitDOM() {
@@ -537,16 +576,17 @@ class Table extends UI5Element {
537
576
  }
538
577
 
539
578
  _onkeydown(event) {
579
+ if (isTabNext(event) || isTabPrevious(event)) {
580
+ this._handleTab(event);
581
+ }
582
+
540
583
  if (isCtrlA(event)) {
541
584
  event.preventDefault();
542
585
  this.isMultiSelect && this._selectAll(event);
543
- return;
544
586
  }
545
587
 
546
- const isAltUp = isUpAlt(event);
547
-
548
- if (isAltUp || isDownAlt(event)) {
549
- return this._handleArrowAlt(isAltUp, event.target);
588
+ if (isUpAlt(event) || isDownAlt(event)) {
589
+ this._handleArrowAlt(event);
550
590
  }
551
591
 
552
592
  if ((isUpShift(event) || isDownShift(event)) && this.isMultiSelect) {
@@ -574,6 +614,50 @@ class Table extends UI5Element {
574
614
  }
575
615
  }
576
616
 
617
+ _handleTab(event) {
618
+ const isNext = isTabNext(event);
619
+ const target = getNormalizedTarget(event.target);
620
+ const targetType = this.getFocusedElementType(event.target);
621
+
622
+ if (this.columnHeaderTabbables.includes(target)) {
623
+ if (isNext && this.columnHeaderLastElement === target) {
624
+ return this._focusNextElement(event);
625
+ }
626
+
627
+ return;
628
+ }
629
+
630
+ if (isNext && targetType === "columnHeader" && !this.columnHeaderTabbables.length) {
631
+ return this._focusNextElement(event);
632
+ }
633
+
634
+ if (targetType === "tableRow" || !targetType) {
635
+ return;
636
+ }
637
+
638
+ switch (targetType) {
639
+ case "tableGroupRow":
640
+ return isNext ? this._focusNextElement(event) : this._focusForwardElement(event, false);
641
+ case "columnHeader":
642
+ return !isNext && this._focusForwardElement(event, false);
643
+ case "moreButton":
644
+ if (isNext) {
645
+ this._focusForwardElement(event, true);
646
+ } else {
647
+ event.preventDefault();
648
+ this.currentElement.focus();
649
+ }
650
+ }
651
+ }
652
+
653
+ _focusNextElement(event) {
654
+ if (!this.growsWithButton) {
655
+ this._focusForwardElement(event, true);
656
+ } else {
657
+ this.morеBtn.focus();
658
+ }
659
+ }
660
+
577
661
  _handleArrowNav(event) {
578
662
  const isRowFocused = this.currentElement.localName === "tr";
579
663
 
@@ -654,40 +738,39 @@ class Table extends UI5Element {
654
738
  * Handles Alt + Up/Down.
655
739
  * Switches focus between column header, last focused item, and "More" button (if applicable).
656
740
  * @private
657
- * @param {boolean} shouldMoveUp Whether to move focus upward
658
- * @param {object} focusedElement The element currently in focus
741
+ * @param {CustomEvent} event
659
742
  */
660
- _handleArrowAlt(shouldMoveUp, focusedElement) {
661
- const focusedElementType = this.getFocusedElementType(focusedElement);
662
- const moreButton = this.getMoreButton();
743
+ _handleArrowAlt(event) {
744
+ const shouldMoveUp = isUpAlt(event);
745
+ const focusedElementType = this.getFocusedElementType(event.target);
663
746
 
664
747
  if (shouldMoveUp) {
665
748
  switch (focusedElementType) {
666
749
  case "tableRow":
667
- this._previousFocusedRow = focusedElement;
668
- return this._onColumnHeaderClick();
750
+ case "tableGroupRow":
751
+ this._prevFocusedRow = event.target;
752
+ return this._onColumnHeaderClick(event);
669
753
  case "columnHeader":
670
- return moreButton ? moreButton.focus() : this._previousFocusedRow.focus();
754
+ return this.morеBtn ? this.morеBtn.focus() : this._prevFocusedRow.focus();
671
755
  case "moreButton":
672
- return this._previousFocusedRow ? this._previousFocusedRow.focus() : this._onColumnHeaderClick();
756
+ return this._prevFocusedRow ? this._prevFocusedRow.focus() : this._onColumnHeaderClick(event);
673
757
  }
674
758
  } else {
675
759
  switch (focusedElementType) {
676
760
  case "tableRow":
677
- this._previousFocusedRow = focusedElement;
678
- return moreButton ? moreButton.focus() : this._onColumnHeaderClick();
761
+ case "tableGroupRow":
762
+ this._prevFocusedRow = event.target;
763
+ return this.morеBtn ? this.morеBtn.focus() : this._onColumnHeaderClick(event);
679
764
  case "columnHeader":
680
- if (this._previousFocusedRow) {
681
- return this._previousFocusedRow.focus();
682
- }
683
-
684
- if (moreButton) {
685
- return moreButton.focus();
765
+ if (this._prevFocusedRow) {
766
+ this._prevFocusedRow.focus();
767
+ } else if (this.morеBtn) {
768
+ this.morеBtn.focus();
686
769
  }
687
770
 
688
771
  return;
689
772
  case "moreButton":
690
- return this._onColumnHeaderClick();
773
+ return this._onColumnHeaderClick(event);
691
774
  }
692
775
  }
693
776
  }
@@ -695,32 +778,133 @@ class Table extends UI5Element {
695
778
  /**
696
779
  * Determines the type of the currently focused element.
697
780
  * @private
698
- * @param {object} element The object representation of the DOM element
699
- * @returns {("columnHeader"|"tableRow"|"moreButton")} A string identifier
781
+ * @param {object} element The DOM element
782
+ * @returns {("columnHeader"|"tableRow"|"tableGroupRow"|"moreButton")} A string identifier
700
783
  */
701
784
  getFocusedElementType(element) {
702
- if (element === this.getColumnHeader()) {
785
+ if (element === this.columnHeader) {
703
786
  return "columnHeader";
704
787
  }
705
788
 
706
- if (element === this.getMoreButton()) {
789
+ if (element === this.morеBtn) {
707
790
  return "moreButton";
708
791
  }
709
792
 
710
793
  if (this.rows.includes(element)) {
711
- return "tableRow";
794
+ const isGroupRow = element.hasAttribute("ui5-table-group-row");
795
+ return isGroupRow ? "tableGroupRow" : "tableRow";
712
796
  }
713
797
  }
714
798
 
799
+ /**
800
+ * Toggles focus between the table row's root and the last focused nested element.
801
+ * @private
802
+ * @param {CustomEvent} event "ui5-f7-pressed"
803
+ */
804
+ _handleF7(event) {
805
+ const row = event.detail.row;
806
+ row._tabbables = getTabbableElements(row);
807
+ const activeElement = getActiveElement();
808
+ const lastFocusedElement = row._tabbables[this._prevNestedElementIndex] || row._tabbables[0];
809
+ const targetIndex = row._tabbables.indexOf(activeElement);
810
+
811
+ if (!row._tabbables.length) {
812
+ return;
813
+ }
814
+
815
+ if (activeElement === row.root) {
816
+ lastFocusedElement.focus();
817
+ } else if (targetIndex > -1) {
818
+ this._prevNestedElementIndex = targetIndex;
819
+ row.root.focus();
820
+ }
821
+ }
822
+
823
+ _onfocusin(event) {
824
+ const target = getNormalizedTarget(event.target);
825
+
826
+ if (!this._isForwardElement(target)) {
827
+ this.lastFocusedElement = target;
828
+ return;
829
+ }
830
+
831
+ if (!this._forwardingFocus) {
832
+ if (this.lastFocusedElement) {
833
+ this.lastFocusedElement.focus();
834
+ } else {
835
+ this.currentElement.focus();
836
+ }
837
+
838
+ event.stopImmediatePropagation();
839
+ }
840
+
841
+ this._forwardingFocus = false;
842
+ }
843
+
844
+ _onForwardBefore(event) {
845
+ this.lastFocusedElement = event.detail.target;
846
+ this._focusForwardElement(event, false);
847
+ event.stopImmediatePropagation();
848
+ }
849
+
850
+ _onForwardAfter(event) {
851
+ this.lastFocusedElement = event.detail.target;
852
+
853
+ if (!this.growsWithButton) {
854
+ this._focusForwardElement(event, true);
855
+ } else {
856
+ this.morеBtn.focus();
857
+ }
858
+ }
859
+
860
+ _focusForwardElement(event, isAfter) {
861
+ this._forwardingFocus = true;
862
+ this.shadowRoot.querySelector(`#${this._id}-${isAfter ? "after" : "before"}`).focus();
863
+ }
864
+
865
+ _isForwardElement(node) {
866
+ const nodeId = node.id;
867
+ const afterElement = this._getForwardElement(true);
868
+ const beforeElement = this._getForwardElement(false);
869
+
870
+ if (this._id === nodeId || (beforeElement && beforeElement.id === nodeId)) {
871
+ return true;
872
+ }
873
+
874
+ return afterElement && afterElement.id === nodeId;
875
+ }
876
+
877
+ _getForwardElement(isAfter) {
878
+ const dir = isAfter ? "after" : "before";
879
+
880
+ if (!this[`_${dir}Element`]) {
881
+ this[`_${dir}Element`] = this.shadowRoot.querySelector(`#${this._id}-${dir}`);
882
+ }
883
+
884
+ return this[`_${dir}Element`];
885
+ }
886
+
715
887
  onRowFocused(event) {
716
888
  this._itemNavigation.setCurrentItem(event.target);
717
889
  }
718
890
 
719
- _onColumnHeaderClick(event) {
720
- this.getColumnHeader().focus();
891
+ _onColumnHeaderFocused(event) {
721
892
  this._itemNavigation.setCurrentItem(this._columnHeader);
722
893
  }
723
894
 
895
+ _onColumnHeaderClick(event) {
896
+ if (!event.target) {
897
+ this.columnHeader.focus();
898
+ }
899
+
900
+ const target = getNormalizedTarget(event.target);
901
+ const isNestedElement = this.columnHeaderTabbables.includes(target);
902
+
903
+ if (!isNestedElement) {
904
+ this.columnHeader.focus();
905
+ }
906
+ }
907
+
724
908
  _onColumnHeaderKeydown(event) {
725
909
  if (isSpace(event)) {
726
910
  event.preventDefault();
@@ -841,11 +1025,11 @@ class Table extends UI5Element {
841
1025
  this.getRowParent(parent);
842
1026
  }
843
1027
 
844
- getColumnHeader() {
1028
+ get columnHeader() {
845
1029
  return this.getDomRef() && this.getDomRef().querySelector(`#${this._id}-columnHeader`);
846
1030
  }
847
1031
 
848
- getMoreButton() {
1032
+ get morеBtn() {
849
1033
  return this.growsWithButton && this.getDomRef() && this.getDomRef().querySelector(`#${this._id}-growingButton`);
850
1034
  }
851
1035
 
@@ -960,6 +1144,10 @@ class Table extends UI5Element {
960
1144
  return `${headerRowText} ${columnsTitle}`;
961
1145
  }
962
1146
 
1147
+ get tableAriaLabelText() {
1148
+ return getEffectiveAriaLabelText(this);
1149
+ }
1150
+
963
1151
  get ariaLabelSelectAllText() {
964
1152
  return Table.i18nBundle.getText(ARIA_LABEL_SELECT_ALL_CHECKBOX);
965
1153
  }
@@ -1003,6 +1191,14 @@ class Table extends UI5Element {
1003
1191
  get currentElement() {
1004
1192
  return this._itemNavigation._getCurrentItem();
1005
1193
  }
1194
+
1195
+ get columnHeaderTabbables() {
1196
+ return getTabbableElements(this.columnHeader);
1197
+ }
1198
+
1199
+ get columnHeaderLastElement() {
1200
+ return getLastTabbableElement(this.columnHeader);
1201
+ }
1006
1202
  }
1007
1203
 
1008
1204
  Table.define();
@@ -69,6 +69,9 @@ const metadata = {
69
69
  noAttribute: true,
70
70
  },
71
71
  },
72
+ events: /** @lends sap.ui.webcomponents.main.TableGroupRow.prototype */ {
73
+ _focused: {},
74
+ },
72
75
  };
73
76
 
74
77
  /**
@@ -151,7 +154,7 @@ class TableGroupRow extends UI5Element {
151
154
  }
152
155
 
153
156
  _onfocusin(event) {
154
- this.parentElement._itemNavigation.setCurrentItem(this);
157
+ this.fireEvent("_focused", event);
155
158
  }
156
159
 
157
160
  static async onDefine() {