@ui5/webcomponents 2.11.0-rc.1 → 2.11.0-rc.3

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 (671) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Assets-node.d.ts +16 -0
  4. package/dist/Assets-node.js +19 -0
  5. package/dist/Assets-node.js.map +1 -0
  6. package/dist/Avatar.d.ts +4 -0
  7. package/dist/Avatar.js +7 -2
  8. package/dist/Avatar.js.map +1 -1
  9. package/dist/Breadcrumbs.js +2 -2
  10. package/dist/Breadcrumbs.js.map +1 -1
  11. package/dist/CheckBoxTemplate.js +1 -1
  12. package/dist/CheckBoxTemplate.js.map +1 -1
  13. package/dist/List.js +4 -2
  14. package/dist/List.js.map +1 -1
  15. package/dist/ListItemStandard.d.ts +7 -4
  16. package/dist/ListItemStandard.js +7 -4
  17. package/dist/ListItemStandard.js.map +1 -1
  18. package/dist/SplitButton.d.ts +3 -18
  19. package/dist/SplitButton.js +37 -74
  20. package/dist/SplitButton.js.map +1 -1
  21. package/dist/SplitButtonTemplate.js +1 -1
  22. package/dist/SplitButtonTemplate.js.map +1 -1
  23. package/dist/Tab.d.ts +2 -1
  24. package/dist/Tab.js +2 -1
  25. package/dist/Tab.js.map +1 -1
  26. package/dist/TabContainer.js +2 -2
  27. package/dist/TabContainer.js.map +1 -1
  28. package/dist/Table.js +3 -0
  29. package/dist/Table.js.map +1 -1
  30. package/dist/TableRow.d.ts +1 -1
  31. package/dist/TableRow.js +9 -4
  32. package/dist/TableRow.js.map +1 -1
  33. package/dist/TableSelectionBase.d.ts +9 -2
  34. package/dist/TableSelectionBase.js +14 -3
  35. package/dist/TableSelectionBase.js.map +1 -1
  36. package/dist/TableSelectionMulti.d.ts +0 -1
  37. package/dist/TableSelectionMulti.js +0 -5
  38. package/dist/TableSelectionMulti.js.map +1 -1
  39. package/dist/Toolbar.js +2 -2
  40. package/dist/Toolbar.js.map +1 -1
  41. package/dist/Tree.js +20 -2
  42. package/dist/Tree.js.map +1 -1
  43. package/dist/css/themes/Avatar.css +1 -1
  44. package/dist/css/themes/AvatarGroup.css +1 -1
  45. package/dist/css/themes/Bar.css +1 -1
  46. package/dist/css/themes/Breadcrumbs.css +1 -1
  47. package/dist/css/themes/BusyIndicator.css +1 -1
  48. package/dist/css/themes/Button.css +1 -1
  49. package/dist/css/themes/ButtonBadge.css +1 -1
  50. package/dist/css/themes/Calendar.css +1 -1
  51. package/dist/css/themes/CalendarHeader.css +1 -1
  52. package/dist/css/themes/CalendarLegend.css +1 -1
  53. package/dist/css/themes/CalendarLegendItem.css +1 -1
  54. package/dist/css/themes/Card.css +1 -1
  55. package/dist/css/themes/CardHeader.css +1 -1
  56. package/dist/css/themes/Carousel.css +1 -1
  57. package/dist/css/themes/CheckBox.css +1 -1
  58. package/dist/css/themes/ColorPalette.css +1 -1
  59. package/dist/css/themes/ColorPaletteItem.css +1 -1
  60. package/dist/css/themes/ColorPalettePopover.css +1 -1
  61. package/dist/css/themes/ColorPicker.css +1 -1
  62. package/dist/css/themes/ComboBox.css +1 -1
  63. package/dist/css/themes/ComboBoxItem.css +1 -1
  64. package/dist/css/themes/DatePicker.css +1 -1
  65. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  66. package/dist/css/themes/DayPicker.css +1 -1
  67. package/dist/css/themes/Dialog.css +1 -1
  68. package/dist/css/themes/FileUploader.css +1 -1
  69. package/dist/css/themes/Form.css +1 -1
  70. package/dist/css/themes/FormItem.css +1 -1
  71. package/dist/css/themes/FormItemSpan.css +1 -1
  72. package/dist/css/themes/GrowingButton.css +1 -1
  73. package/dist/css/themes/Icon.css +1 -1
  74. package/dist/css/themes/Input.css +1 -1
  75. package/dist/css/themes/InputIcon.css +1 -1
  76. package/dist/css/themes/InputSharedStyles.css +1 -1
  77. package/dist/css/themes/Link.css +1 -1
  78. package/dist/css/themes/List.css +1 -1
  79. package/dist/css/themes/ListItem.css +1 -1
  80. package/dist/css/themes/ListItemBase.css +1 -1
  81. package/dist/css/themes/ListItemCustom.css +1 -1
  82. package/dist/css/themes/ListItemGroup.css +1 -1
  83. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  84. package/dist/css/themes/ListItemIcon.css +1 -1
  85. package/dist/css/themes/Menu.css +1 -1
  86. package/dist/css/themes/MenuItem.css +1 -1
  87. package/dist/css/themes/MessageStrip.css +1 -1
  88. package/dist/css/themes/MonthPicker.css +1 -1
  89. package/dist/css/themes/MultiComboBox.css +1 -1
  90. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  91. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  92. package/dist/css/themes/MultiInput.css +1 -1
  93. package/dist/css/themes/OptionBase.css +1 -1
  94. package/dist/css/themes/Panel.css +1 -1
  95. package/dist/css/themes/Popover.css +1 -1
  96. package/dist/css/themes/PopupsCommon.css +1 -1
  97. package/dist/css/themes/ProgressIndicator.css +1 -1
  98. package/dist/css/themes/RadioButton.css +1 -1
  99. package/dist/css/themes/RangeSlider.css +1 -1
  100. package/dist/css/themes/RatingIndicator.css +1 -1
  101. package/dist/css/themes/ResponsivePopover.css +1 -1
  102. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  103. package/dist/css/themes/SegmentedButton.css +1 -1
  104. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  105. package/dist/css/themes/Select.css +1 -1
  106. package/dist/css/themes/SliderBase.css +1 -1
  107. package/dist/css/themes/SplitButton.css +1 -1
  108. package/dist/css/themes/StepInput.css +1 -1
  109. package/dist/css/themes/SuggestionItem.css +1 -1
  110. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  111. package/dist/css/themes/Switch.css +1 -1
  112. package/dist/css/themes/TabContainer.css +1 -1
  113. package/dist/css/themes/TabInOverflow.css +1 -1
  114. package/dist/css/themes/TabInStrip.css +1 -1
  115. package/dist/css/themes/TabSemanticIcon.css +1 -1
  116. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  117. package/dist/css/themes/TableCellBase.css +1 -1
  118. package/dist/css/themes/TableHeaderRow.css +1 -1
  119. package/dist/css/themes/TableRow.css +1 -1
  120. package/dist/css/themes/TableRowActionBase.css +1 -1
  121. package/dist/css/themes/TableRowBase.css +1 -1
  122. package/dist/css/themes/Tag.css +1 -1
  123. package/dist/css/themes/Text.css +1 -1
  124. package/dist/css/themes/TextArea.css +1 -1
  125. package/dist/css/themes/TimePicker.css +1 -1
  126. package/dist/css/themes/Toast.css +1 -1
  127. package/dist/css/themes/ToggleButton.css +1 -1
  128. package/dist/css/themes/Token.css +1 -1
  129. package/dist/css/themes/Tokenizer.css +1 -1
  130. package/dist/css/themes/TokenizerPopover.css +1 -1
  131. package/dist/css/themes/Toolbar.css +1 -1
  132. package/dist/css/themes/ToolbarPopover.css +1 -1
  133. package/dist/css/themes/TreeItem.css +1 -1
  134. package/dist/css/themes/ValueStateMessage.css +1 -1
  135. package/dist/css/themes/YearPicker.css +1 -1
  136. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  137. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  138. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  139. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  140. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  141. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  142. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  143. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  144. package/dist/custom-elements-internal.json +240 -2
  145. package/dist/custom-elements.json +164 -2
  146. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  147. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  148. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  149. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  150. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  151. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  152. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  153. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  154. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  155. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  156. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  157. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  158. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  159. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  160. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  161. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  162. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  163. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  164. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  165. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  166. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  167. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  168. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  169. package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
  170. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  171. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  173. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  174. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  175. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  176. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  177. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  178. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  179. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  180. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  181. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  182. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  183. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  184. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  185. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  186. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  187. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  188. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  197. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  198. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  199. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  200. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  201. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  202. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  203. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  204. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  205. package/dist/generated/json-imports/Themes-node.d.ts +1 -0
  206. package/dist/generated/json-imports/Themes-node.js +25 -0
  207. package/dist/generated/json-imports/Themes-node.js.map +1 -0
  208. package/dist/generated/json-imports/i18n-node.d.ts +1 -0
  209. package/dist/generated/json-imports/i18n-node.js +120 -0
  210. package/dist/generated/json-imports/i18n-node.js.map +1 -0
  211. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  212. package/dist/generated/themes/Avatar.css.js +1 -1
  213. package/dist/generated/themes/Avatar.css.js.map +1 -1
  214. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  215. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  216. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  217. package/dist/generated/themes/Bar.css.d.ts +1 -1
  218. package/dist/generated/themes/Bar.css.js +1 -1
  219. package/dist/generated/themes/Bar.css.js.map +1 -1
  220. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  221. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  222. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  223. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  224. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  225. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  226. package/dist/generated/themes/Button.css.d.ts +1 -1
  227. package/dist/generated/themes/Button.css.js +1 -1
  228. package/dist/generated/themes/Button.css.js.map +1 -1
  229. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  230. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  231. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  232. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  233. package/dist/generated/themes/Calendar.css.js +1 -1
  234. package/dist/generated/themes/Calendar.css.js.map +1 -1
  235. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  236. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  237. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  238. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  239. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  240. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  241. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  242. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  243. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  244. package/dist/generated/themes/Card.css.d.ts +1 -1
  245. package/dist/generated/themes/Card.css.js +1 -1
  246. package/dist/generated/themes/Card.css.js.map +1 -1
  247. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  248. package/dist/generated/themes/CardHeader.css.js +1 -1
  249. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  250. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  251. package/dist/generated/themes/Carousel.css.js +1 -1
  252. package/dist/generated/themes/Carousel.css.js.map +1 -1
  253. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  254. package/dist/generated/themes/CheckBox.css.js +1 -1
  255. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  256. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  257. package/dist/generated/themes/ColorPalette.css.js +1 -1
  258. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  259. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  260. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  261. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  262. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  263. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  264. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  265. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  266. package/dist/generated/themes/ColorPicker.css.js +1 -1
  267. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  268. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  269. package/dist/generated/themes/ComboBox.css.js +1 -1
  270. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  271. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  272. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  273. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  274. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  275. package/dist/generated/themes/DatePicker.css.js +1 -1
  276. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  277. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  278. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  279. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  280. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  281. package/dist/generated/themes/DayPicker.css.js +1 -1
  282. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  283. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  284. package/dist/generated/themes/Dialog.css.js +1 -1
  285. package/dist/generated/themes/Dialog.css.js.map +1 -1
  286. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  287. package/dist/generated/themes/FileUploader.css.js +1 -1
  288. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  289. package/dist/generated/themes/Form.css.d.ts +1 -1
  290. package/dist/generated/themes/Form.css.js +1 -1
  291. package/dist/generated/themes/Form.css.js.map +1 -1
  292. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  293. package/dist/generated/themes/FormItem.css.js +1 -1
  294. package/dist/generated/themes/FormItem.css.js.map +1 -1
  295. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  296. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  297. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  298. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  299. package/dist/generated/themes/GrowingButton.css.js +1 -1
  300. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  301. package/dist/generated/themes/Icon.css.d.ts +1 -1
  302. package/dist/generated/themes/Icon.css.js +1 -1
  303. package/dist/generated/themes/Icon.css.js.map +1 -1
  304. package/dist/generated/themes/Input.css.d.ts +1 -1
  305. package/dist/generated/themes/Input.css.js +1 -1
  306. package/dist/generated/themes/Input.css.js.map +1 -1
  307. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  308. package/dist/generated/themes/InputIcon.css.js +1 -1
  309. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  310. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  311. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  312. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  313. package/dist/generated/themes/Link.css.d.ts +1 -1
  314. package/dist/generated/themes/Link.css.js +1 -1
  315. package/dist/generated/themes/Link.css.js.map +1 -1
  316. package/dist/generated/themes/List.css.d.ts +1 -1
  317. package/dist/generated/themes/List.css.js +1 -1
  318. package/dist/generated/themes/List.css.js.map +1 -1
  319. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  320. package/dist/generated/themes/ListItem.css.js +1 -1
  321. package/dist/generated/themes/ListItem.css.js.map +1 -1
  322. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  323. package/dist/generated/themes/ListItemBase.css.js +1 -1
  324. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  325. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  326. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  327. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  328. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  329. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  330. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  331. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  332. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  333. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  334. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  335. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  336. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  337. package/dist/generated/themes/Menu.css.d.ts +1 -1
  338. package/dist/generated/themes/Menu.css.js +1 -1
  339. package/dist/generated/themes/Menu.css.js.map +1 -1
  340. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  341. package/dist/generated/themes/MenuItem.css.js +1 -1
  342. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  343. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  344. package/dist/generated/themes/MessageStrip.css.js +1 -1
  345. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  346. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  347. package/dist/generated/themes/MonthPicker.css.js +1 -1
  348. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  349. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  350. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  351. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  352. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  353. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  354. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  355. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  356. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  357. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  358. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  359. package/dist/generated/themes/MultiInput.css.js +1 -1
  360. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  361. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  362. package/dist/generated/themes/OptionBase.css.js +1 -1
  363. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  364. package/dist/generated/themes/Panel.css.d.ts +1 -1
  365. package/dist/generated/themes/Panel.css.js +1 -1
  366. package/dist/generated/themes/Panel.css.js.map +1 -1
  367. package/dist/generated/themes/Popover.css.d.ts +1 -1
  368. package/dist/generated/themes/Popover.css.js +1 -1
  369. package/dist/generated/themes/Popover.css.js.map +1 -1
  370. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  371. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  372. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  373. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  374. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  375. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  376. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  377. package/dist/generated/themes/RadioButton.css.js +1 -1
  378. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  379. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  380. package/dist/generated/themes/RangeSlider.css.js +1 -1
  381. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  382. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  383. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  384. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  385. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  386. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  387. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  388. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  389. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  390. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  391. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  392. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  393. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  394. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  395. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  396. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  397. package/dist/generated/themes/Select.css.d.ts +1 -1
  398. package/dist/generated/themes/Select.css.js +1 -1
  399. package/dist/generated/themes/Select.css.js.map +1 -1
  400. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  401. package/dist/generated/themes/SliderBase.css.js +1 -1
  402. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  403. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  404. package/dist/generated/themes/SplitButton.css.js +1 -1
  405. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  406. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  407. package/dist/generated/themes/StepInput.css.js +1 -1
  408. package/dist/generated/themes/StepInput.css.js.map +1 -1
  409. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  410. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  411. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  412. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  413. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  414. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  415. package/dist/generated/themes/Switch.css.d.ts +1 -1
  416. package/dist/generated/themes/Switch.css.js +1 -1
  417. package/dist/generated/themes/Switch.css.js.map +1 -1
  418. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  419. package/dist/generated/themes/TabContainer.css.js +1 -1
  420. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  421. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  422. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  423. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  424. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  425. package/dist/generated/themes/TabInStrip.css.js +1 -1
  426. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  427. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  428. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  429. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  430. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  431. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  432. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  433. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  434. package/dist/generated/themes/TableCellBase.css.js +1 -1
  435. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  436. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  437. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  438. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  439. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  440. package/dist/generated/themes/TableRow.css.js +1 -1
  441. package/dist/generated/themes/TableRow.css.js.map +1 -1
  442. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  443. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  444. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  445. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  446. package/dist/generated/themes/TableRowBase.css.js +1 -1
  447. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  448. package/dist/generated/themes/Tag.css.d.ts +1 -1
  449. package/dist/generated/themes/Tag.css.js +1 -1
  450. package/dist/generated/themes/Tag.css.js.map +1 -1
  451. package/dist/generated/themes/Text.css.d.ts +1 -1
  452. package/dist/generated/themes/Text.css.js +1 -1
  453. package/dist/generated/themes/Text.css.js.map +1 -1
  454. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  455. package/dist/generated/themes/TextArea.css.js +1 -1
  456. package/dist/generated/themes/TextArea.css.js.map +1 -1
  457. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  458. package/dist/generated/themes/TimePicker.css.js +1 -1
  459. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  460. package/dist/generated/themes/Toast.css.d.ts +1 -1
  461. package/dist/generated/themes/Toast.css.js +1 -1
  462. package/dist/generated/themes/Toast.css.js.map +1 -1
  463. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  464. package/dist/generated/themes/ToggleButton.css.js +1 -1
  465. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  466. package/dist/generated/themes/Token.css.d.ts +1 -1
  467. package/dist/generated/themes/Token.css.js +1 -1
  468. package/dist/generated/themes/Token.css.js.map +1 -1
  469. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  470. package/dist/generated/themes/Tokenizer.css.js +1 -1
  471. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  472. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  473. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  474. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  475. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  476. package/dist/generated/themes/Toolbar.css.js +1 -1
  477. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  478. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  479. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  480. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  481. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  482. package/dist/generated/themes/TreeItem.css.js +1 -1
  483. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  484. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  485. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  486. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  487. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  488. package/dist/generated/themes/YearPicker.css.js +1 -1
  489. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  490. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  491. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  492. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  493. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  494. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  495. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  496. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  497. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  498. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  499. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  500. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  501. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  502. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  503. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  504. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  505. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  506. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  507. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  508. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  509. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  510. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  511. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  512. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  513. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  514. package/dist/types/TableSelectionBehavior.d.ts +22 -0
  515. package/dist/types/TableSelectionBehavior.js +24 -0
  516. package/dist/types/TableSelectionBehavior.js.map +1 -0
  517. package/dist/vscode.html-custom-data.json +23 -3
  518. package/dist/web-types.json +59 -7
  519. package/package.json +9 -9
  520. package/src/CheckBoxTemplate.tsx +1 -0
  521. package/src/SplitButtonTemplate.tsx +0 -1
  522. package/src/i18n/messagebundle_ar.properties +6 -0
  523. package/src/i18n/messagebundle_bg.properties +6 -0
  524. package/src/i18n/messagebundle_ca.properties +6 -0
  525. package/src/i18n/messagebundle_cnr.properties +6 -0
  526. package/src/i18n/messagebundle_cs.properties +6 -0
  527. package/src/i18n/messagebundle_cy.properties +6 -0
  528. package/src/i18n/messagebundle_da.properties +6 -0
  529. package/src/i18n/messagebundle_de.properties +7 -1
  530. package/src/i18n/messagebundle_el.properties +6 -0
  531. package/src/i18n/messagebundle_en.properties +4 -217
  532. package/src/i18n/messagebundle_en_GB.properties +6 -0
  533. package/src/i18n/messagebundle_en_US_sappsd.properties +6 -0
  534. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
  535. package/src/i18n/messagebundle_en_US_saptrc.properties +6 -0
  536. package/src/i18n/messagebundle_es.properties +6 -0
  537. package/src/i18n/messagebundle_es_MX.properties +6 -0
  538. package/src/i18n/messagebundle_et.properties +6 -0
  539. package/src/i18n/messagebundle_fi.properties +6 -0
  540. package/src/i18n/messagebundle_fr.properties +6 -0
  541. package/src/i18n/messagebundle_fr_CA.properties +6 -0
  542. package/src/i18n/messagebundle_hi.properties +6 -0
  543. package/src/i18n/messagebundle_hr.properties +6 -0
  544. package/src/i18n/messagebundle_hu.properties +6 -0
  545. package/src/i18n/messagebundle_id.properties +6 -0
  546. package/src/i18n/messagebundle_it.properties +6 -0
  547. package/src/i18n/messagebundle_iw.properties +6 -0
  548. package/src/i18n/messagebundle_ja.properties +6 -0
  549. package/src/i18n/messagebundle_kk.properties +6 -0
  550. package/src/i18n/messagebundle_ko.properties +6 -0
  551. package/src/i18n/messagebundle_lt.properties +6 -0
  552. package/src/i18n/messagebundle_lv.properties +6 -0
  553. package/src/i18n/messagebundle_mk.properties +6 -0
  554. package/src/i18n/messagebundle_ms.properties +6 -0
  555. package/src/i18n/messagebundle_nl.properties +6 -0
  556. package/src/i18n/messagebundle_no.properties +6 -0
  557. package/src/i18n/messagebundle_pl.properties +6 -0
  558. package/src/i18n/messagebundle_pt.properties +6 -0
  559. package/src/i18n/messagebundle_pt_PT.properties +6 -0
  560. package/src/i18n/messagebundle_ro.properties +6 -0
  561. package/src/i18n/messagebundle_ru.properties +6 -0
  562. package/src/i18n/messagebundle_sh.properties +6 -0
  563. package/src/i18n/messagebundle_sk.properties +6 -0
  564. package/src/i18n/messagebundle_sl.properties +6 -0
  565. package/src/i18n/messagebundle_sr.properties +6 -0
  566. package/src/i18n/messagebundle_sv.properties +6 -0
  567. package/src/i18n/messagebundle_th.properties +6 -0
  568. package/src/i18n/messagebundle_tr.properties +6 -0
  569. package/src/i18n/messagebundle_uk.properties +7 -1
  570. package/src/i18n/messagebundle_vi.properties +6 -0
  571. package/src/i18n/messagebundle_zh_CN.properties +6 -0
  572. package/src/i18n/messagebundle_zh_TW.properties +6 -0
  573. package/src/themes/Avatar.css +6 -2
  574. package/src/themes/CheckBox.css +0 -9
  575. package/src/themes/ColorPaletteItem.css +3 -3
  576. package/src/themes/ListItem.css +3 -3
  577. package/src/themes/ListItemCustom.css +12 -0
  578. package/src/themes/PopupsCommon.css +3 -2
  579. package/src/themes/TextArea.css +0 -16
  580. package/src/themes/base/Avatar-parameters.css +1 -0
  581. package/src/themes/base/PopupsCommon-parameters.css +0 -1
  582. package/src/themes/base/rtl-parameters.css +1 -1
  583. package/cypress/specs/Avatar.cy.tsx +0 -33
  584. package/cypress/specs/AvatarGroup.cy.tsx +0 -66
  585. package/cypress/specs/Breadcrumbs.mobile.cy.tsx +0 -53
  586. package/cypress/specs/Button.cy.tsx +0 -434
  587. package/cypress/specs/Calendar.cy.tsx +0 -710
  588. package/cypress/specs/CalendarLegend.cy.tsx +0 -77
  589. package/cypress/specs/Card.cy.tsx +0 -338
  590. package/cypress/specs/Carousel.cy.tsx +0 -581
  591. package/cypress/specs/Carousel.mobile.cy.tsx +0 -67
  592. package/cypress/specs/ColorPalette.cy.tsx +0 -213
  593. package/cypress/specs/ColorPicker.cy.tsx +0 -332
  594. package/cypress/specs/ComboBox.cy.tsx +0 -198
  595. package/cypress/specs/DateControlsWithTimezone.cy.tsx +0 -75
  596. package/cypress/specs/DatePicker.cy.tsx +0 -1699
  597. package/cypress/specs/DateRangePicker.cy.tsx +0 -594
  598. package/cypress/specs/DateTimePicker.cy.tsx +0 -568
  599. package/cypress/specs/DayPicker.cy.tsx +0 -81
  600. package/cypress/specs/Dialog.cy.tsx +0 -133
  601. package/cypress/specs/ExpandableText.cy.tsx +0 -393
  602. package/cypress/specs/F6.cy.tsx +0 -977
  603. package/cypress/specs/Form.cy.tsx +0 -1022
  604. package/cypress/specs/FormSupport.cy.tsx +0 -975
  605. package/cypress/specs/Input.cy.tsx +0 -978
  606. package/cypress/specs/Label.cy.tsx +0 -144
  607. package/cypress/specs/Link.cy.tsx +0 -216
  608. package/cypress/specs/List.cy.tsx +0 -309
  609. package/cypress/specs/List.mobile.cy.tsx +0 -31
  610. package/cypress/specs/LitKeyFunction.cy.tsx +0 -58
  611. package/cypress/specs/Menu.cy.tsx +0 -617
  612. package/cypress/specs/MessageStrip.cy.tsx +0 -171
  613. package/cypress/specs/MultiComboBox.cy.tsx +0 -189
  614. package/cypress/specs/MultiInput.cy.tsx +0 -72
  615. package/cypress/specs/Popover.cy.tsx +0 -419
  616. package/cypress/specs/RTL.cy.tsx +0 -18
  617. package/cypress/specs/RadioButton.cy.tsx +0 -499
  618. package/cypress/specs/RangeSlider.cy.tsx +0 -52
  619. package/cypress/specs/RatingIndicator.cy.tsx +0 -279
  620. package/cypress/specs/ResponsivePopover.mobile.cy.tsx +0 -112
  621. package/cypress/specs/SegmentedButton.cy.tsx +0 -215
  622. package/cypress/specs/Select.cy.tsx +0 -241
  623. package/cypress/specs/Slider.cy.tsx +0 -87
  624. package/cypress/specs/StepInput.cy.tsx +0 -32
  625. package/cypress/specs/TabContainer.cy.tsx +0 -78
  626. package/cypress/specs/Table.cy.tsx +0 -1025
  627. package/cypress/specs/TableDragAndDrop.cy.tsx +0 -236
  628. package/cypress/specs/TableGrowing.cy.tsx +0 -336
  629. package/cypress/specs/TableLoading.cy.tsx +0 -48
  630. package/cypress/specs/TableNavigation.cy.tsx +0 -223
  631. package/cypress/specs/TableNavigationFixedHeader.cy.tsx +0 -199
  632. package/cypress/specs/TableRowActions.cy.tsx +0 -239
  633. package/cypress/specs/TableSelection.cy.tsx +0 -275
  634. package/cypress/specs/TableSelections.cy.tsx +0 -332
  635. package/cypress/specs/TableUtils.cy.tsx +0 -63
  636. package/cypress/specs/TableVirtualizer.cy.tsx +0 -243
  637. package/cypress/specs/Tag.cy.tsx +0 -120
  638. package/cypress/specs/Text.cy.tsx +0 -46
  639. package/cypress/specs/TextArea.cy.tsx +0 -735
  640. package/cypress/specs/Title.cy.tsx +0 -36
  641. package/cypress/specs/Toast.cy.tsx +0 -45
  642. package/cypress/specs/Tokenizer.cy.tsx +0 -209
  643. package/cypress/specs/Toolbar.cy.tsx +0 -194
  644. package/cypress/specs/Tree.cy.tsx +0 -72
  645. package/cypress/specs/base/AccessibilityTextsHelper.cy.tsx +0 -468
  646. package/cypress/specs/base/Events.cy.tsx +0 -301
  647. package/cypress/specs/base/IconCollection.cy.tsx +0 -58
  648. package/cypress/specs/base/IgnoreCustomElements.cy.tsx +0 -38
  649. package/cypress/specs/base/InvisibleMessage.cy.tsx +0 -31
  650. package/cypress/specs/base/Tooltips.cy.tsx +0 -64
  651. package/cypress/specs/base/css/redfish.custom.theme.css +0 -13
  652. package/cypress/support/commands/Calendar.commands.ts +0 -21
  653. package/cypress/support/commands/ColorPalette.commands.ts +0 -86
  654. package/cypress/support/commands/ColorPicker.commands.ts +0 -38
  655. package/cypress/support/commands/DatePicker.commands.ts +0 -218
  656. package/cypress/support/commands/DateTimePicker.commands.ts +0 -105
  657. package/cypress/support/commands/Dialog.commands.ts +0 -16
  658. package/cypress/support/commands/Menu.commands.ts +0 -52
  659. package/cypress/support/commands/Popover.commands.ts +0 -16
  660. package/cypress/support/commands/ResponsivePopover.commands.ts +0 -42
  661. package/cypress/support/commands/SegmentedButton.commands.ts +0 -32
  662. package/cypress/support/commands/utils/popup-open.ts +0 -35
  663. package/cypress/support/commands.ts +0 -113
  664. package/cypress/support/component-index.html +0 -12
  665. package/cypress/support/component.ts +0 -20
  666. package/cypress/tsconfig.json +0 -42
  667. package/dist/css/themes/BrowserScrollbar.css +0 -1
  668. package/dist/generated/themes/BrowserScrollbar.css.d.ts +0 -2
  669. package/dist/generated/themes/BrowserScrollbar.css.js +0 -8
  670. package/dist/generated/themes/BrowserScrollbar.css.js.map +0 -1
  671. package/src/themes/BrowserScrollbar.css +0 -25
@@ -96,17 +96,11 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
96
96
  */
97
97
  this._tabIndex = 0;
98
98
  /**
99
- * Indicates if there is Space key pressed
99
+ * Indicates if there is Shift or Escape key pressed while Space key is down.
100
100
  * @default false
101
101
  * @private
102
102
  */
103
- this._spacePressed = false;
104
- /**
105
- * Indicates if there is SHIFT or ESCAPE key pressed
106
- * @default false
107
- * @private
108
- */
109
- this._shiftOrEscapePressed = false;
103
+ this._shiftOrEscapePressedDuringSpace = false;
110
104
  /**
111
105
  * Defines the active state of the text button
112
106
  * @default false
@@ -126,8 +120,6 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
126
120
  * @private
127
121
  */
128
122
  this._hideArrowButton = false;
129
- this._isDefaultActionPressed = false;
130
- this._isKeyDownOperation = false;
131
123
  }
132
124
  onBeforeRendering() {
133
125
  if (this.disabled) {
@@ -141,15 +133,9 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
141
133
  if (this.disabled || this.getFocusDomRef().matches(":has(:focus-within)")) {
142
134
  return;
143
135
  }
144
- this._shiftOrEscapePressed = false;
136
+ this._resetActionButtonStates();
145
137
  this._setTabIndexValue();
146
138
  }
147
- _onFocusIn() {
148
- if (this.disabled || this.getFocusDomRef().matches(":has(:focus-within)")) {
149
- return;
150
- }
151
- this._shiftOrEscapePressed = false;
152
- }
153
139
  handleTouchStart(e) {
154
140
  e.stopPropagation();
155
141
  this._textButtonActive = true;
@@ -162,54 +148,54 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
162
148
  target.focus();
163
149
  }
164
150
  _onKeyDown(e) {
165
- this._isKeyDownOperation = true;
166
151
  if (this._isArrowKeyAction(e)) {
167
152
  this._handleArrowButtonAction(e);
168
153
  this._activeArrowButton = true;
154
+ return;
169
155
  }
170
- else if (this._isDefaultAction(e)) {
156
+ if (this._isDefaultAction(e)) {
171
157
  this._handleDefaultAction(e);
172
- this._isDefaultActionPressed = true;
158
+ return;
173
159
  }
174
- if (this._spacePressed && this._isShiftOrEscape(e)) {
175
- this._handleShiftOrEscapePressed();
160
+ if ((isShift(e) || isEscape(e)) && this._textButtonActive) {
161
+ e.preventDefault();
162
+ this._shiftOrEscapePressedDuringSpace = true;
176
163
  }
177
- // Handles button freeze issue when pressing Enter/Space and navigating with Tab/Shift+Tab simultaneously.
178
- if (this._isDefaultActionPressed && (isTabNext(e) || isTabPrevious(e))) {
179
- this._activeArrowButton = false;
180
- this._textButtonActive = false;
164
+ if (isEscape(e) && !this._textButtonActive) {
165
+ this._resetActionButtonStates();
181
166
  }
182
167
  this._tabIndex = -1;
183
168
  }
184
169
  _onKeyUp(e) {
185
- this._isKeyDownOperation = false;
170
+ const target = e.target;
186
171
  if (this._isArrowKeyAction(e)) {
187
172
  e.preventDefault();
188
173
  this._activeArrowButton = false;
189
- this._textButtonActive = false;
174
+ return;
190
175
  }
191
- else if (this._isDefaultAction(e)) {
192
- this._isDefaultActionPressed = false;
176
+ if (isSpace(e)) {
177
+ e.preventDefault();
178
+ e.stopPropagation();
193
179
  this._textButtonActive = false;
194
- if (isSpace(e)) {
195
- e.preventDefault();
196
- e.stopPropagation();
180
+ if (!this._shiftOrEscapePressedDuringSpace && target !== this.arrowButton) { // Do not fire click if Arrow button is focused by mouse and Space is pressed afterwards
197
181
  this._fireClick();
198
- this._spacePressed = false;
199
- this._textButtonActive = false;
200
182
  }
183
+ this._shiftOrEscapePressedDuringSpace = false;
184
+ return;
201
185
  }
202
- if (this._isShiftOrEscape(e)) {
203
- this._handleShiftOrEscapePressed();
186
+ const shouldToggleTextButtonActiveStateOff = isEnter(e) || (isShift(e) && this._textButtonActive);
187
+ if (shouldToggleTextButtonActiveStateOff) {
188
+ this._textButtonActive = false;
204
189
  }
205
- this._tabIndex = -1;
190
+ }
191
+ _resetActionButtonStates() {
192
+ this._activeArrowButton = false;
193
+ this._textButtonActive = false;
194
+ this._shiftOrEscapePressedDuringSpace = false;
206
195
  }
207
196
  _fireClick(e) {
208
197
  e?.stopPropagation();
209
- if (!this._shiftOrEscapePressed) {
210
- this.fireDecoratorEvent("click");
211
- }
212
- this._shiftOrEscapePressed = false;
198
+ this.fireDecoratorEvent("click");
213
199
  }
214
200
  _fireArrowClick(e) {
215
201
  e?.stopPropagation();
@@ -254,14 +240,6 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
254
240
  _isDefaultAction(e) {
255
241
  return isSpace(e) || isEnter(e);
256
242
  }
257
- /**
258
- * Checks if the pressed key is an escape key or shift key.
259
- * @param e - keyboard event
260
- * @private
261
- */
262
- _isShiftOrEscape(e) {
263
- return isEscape(e) || isShift(e);
264
- }
265
243
  /**
266
244
  * Handles the click event and the focus on the arrow button.
267
245
  * @param e - keyboard event
@@ -270,9 +248,6 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
270
248
  _handleArrowButtonAction(e) {
271
249
  e.preventDefault();
272
250
  this._fireArrowClick(e);
273
- if (isSpace(e)) {
274
- this._spacePressed = true;
275
- }
276
251
  }
277
252
  /**
278
253
  * Handles the default action and the active state of the respective button.
@@ -281,29 +256,20 @@ let SplitButton = SplitButton_1 = class SplitButton extends UI5Element {
281
256
  */
282
257
  _handleDefaultAction(e) {
283
258
  e.preventDefault();
284
- const wasSpacePressed = isSpace(e);
285
259
  const target = e.target;
286
260
  if (this.arrowButton && target === this.arrowButton) {
287
261
  this._activeArrowButton = true;
288
262
  this._fireArrowClick();
289
- if (wasSpacePressed) {
290
- this._spacePressed = true;
291
- this._textButtonActive = false;
292
- }
263
+ return;
293
264
  }
294
- else {
295
- this._textButtonActive = true;
296
- if (wasSpacePressed) {
297
- this._spacePressed = true;
298
- return;
299
- }
300
- this._fireClick();
265
+ this._textButtonActive = true;
266
+ if (isEnter(e)) {
267
+ this._fireClick(e);
268
+ return;
269
+ }
270
+ if (isTabPrevious(e) || isTabNext(e)) {
271
+ this._resetActionButtonStates();
301
272
  }
302
- }
303
- _handleShiftOrEscapePressed() {
304
- this._shiftOrEscapePressed = true;
305
- this._textButtonActive = false;
306
- this._isKeyDownOperation = false;
307
273
  }
308
274
  get effectiveActiveArrowButton() {
309
275
  return this.activeArrowButton || this._activeArrowButton;
@@ -362,10 +328,7 @@ __decorate([
362
328
  ], SplitButton.prototype, "_tabIndex", void 0);
363
329
  __decorate([
364
330
  property({ type: Boolean, noAttribute: true })
365
- ], SplitButton.prototype, "_spacePressed", void 0);
366
- __decorate([
367
- property({ type: Boolean, noAttribute: true })
368
- ], SplitButton.prototype, "_shiftOrEscapePressed", void 0);
331
+ ], SplitButton.prototype, "_shiftOrEscapePressedDuringSpace", void 0);
369
332
  __decorate([
370
333
  property({ type: Boolean, noAttribute: true })
371
334
  ], SplitButton.prototype, "_textButtonActive", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"SplitButton.js","sourceRoot":"","sources":["../src/SplitButton.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 {\n\tisEscape,\n\tisSpace,\n\tisEnter,\n\tisDown,\n\tisUp,\n\tisDownAlt,\n\tisUpAlt,\n\tisF4,\n\tisShift,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { AriaHasPopup, UI5CustomEvent } from \"@ui5/webcomponents-base\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type ButtonDesign from \"./types/ButtonDesign.js\";\nimport type Button from \"./Button.js\";\n\nimport {\n\tSPLIT_BUTTON_DESCRIPTION,\n\tSPLIT_BUTTON_KEYBOARD_HINT,\n\tSPLIT_BUTTON_ARROW_BUTTON_TOOLTIP,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport SplitButtonTemplate from \"./SplitButtonTemplate.js\";\n\n// Styles\nimport SplitButtonCss from \"./generated/themes/SplitButton.css.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-split-button` enables users to trigger actions. It is constructed of two separate actions -\n * default action and arrow action that can be activated by clicking or tapping, or by\n * pressing certain keyboard keys - `Space` or `Enter` for default action,\n * and `Arrow Down` or `Arrow Up` for arrow action.\n *\n * ### Usage\n *\n * `ui5-split-button` consists two separate buttons:\n *\n * - for the first one (default action) you can define some `text` or an `icon`, or both.\n * - the second one (arrow action) contains only `slim-arrow-down` icon.\n *\n * You can choose a `design` from a set of predefined types (the same as for ui5-button) that offer\n * different styling to correspond to the triggered action. Both text and arrow actions have the same design.\n *\n * You can set the `ui5-split-button` as enabled or disabled. Both parts of an enabled\n * `ui5-split-button` can be pressed by clicking or tapping it, or by certain keys, which changes\n * the style to provide visual feedback to the user that it is pressed or hovered over with\n * the mouse cursor. A disabled `ui5-split-button` appears inactive and any of the two buttons\n * cannot be pressed.\n *\n * ### Keyboard Handling\n *\n * - `Space` or `Enter` - triggers the default action\n * - `Shift` or `Escape` - if `Space` is pressed, releases the default action button without triggering the click event.\n * - `Arrow Down`, `Arrow Up`, `Alt`+`Arrow Down`, `Alt`+`Arrow Up`, or `F4` - triggers the arrow action\n * There are separate events that are fired on activating of `ui5-split-button` parts:\n *\n * - `click` for the first button (default action)\n * - `arrow-click` for the second button (arrow action)\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SplitButton.js\";`\n * @csspart button - Used to style the native button element\n * @csspart icon - Used to style the icon in the native button element\n * @csspart endIcon - Used to style the end icon in the native button element\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.1.0\n */\n@customElement({\n\ttag: \"ui5-split-button\",\n\trenderer: jsxRenderer,\n\tstyles: SplitButtonCss,\n\ttemplate: SplitButtonTemplate,\n})\n/**\n * Fired when the user clicks on the default action.\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the user clicks on the arrow action.\n * @public\n */\n@event(\"arrow-click\", {\n\tbubbles: true,\n})\nclass SplitButton extends UI5Element {\n\teventDetails!: {\n\t\tclick: void;\n\t\t\"arrow-click\": void;\n\t}\n\t/**\n\t * Defines the icon to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t *\n\t * See all available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines whether the arrow button should have the active state styles or not.\n\t * @default false\n\t * @public\n\t * @since 1.21.0\n\t */\n\t@property({ type: Boolean })\n\tactiveArrowButton = false;\n\n\t/**\n\t * Defines the component design.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${ButtonDesign}` = \"Default\";\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @default \"0\"\n\t * @private\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_tabIndex = 0\n\n\t/**\n\t * Indicates if there is Space key pressed\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_spacePressed = false;\n\n\t/**\n\t * Indicates if there is SHIFT or ESCAPE key pressed\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_shiftOrEscapePressed = false;\n\n\t/**\n\t * Defines the active state of the text button\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_textButtonActive = false;\n\n\t/**\n\t * Defines the state of the internal Button used for the Arrow button of the SplitButton.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_activeArrowButton = false;\n\n\t/**\n\t * Defines the display of the end icon as a graphical element within the default action of the component after the button text.\n\t * The SAP-icons font provides different options.\n\t *\n\t * Example:\n\t *\n\t * See all available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @private\n\t */\n\t@property({ type: String })\n\t_endIcon?: string;\n\n\t/**\n\t * Defines the visibility of the arrow button of the component.\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hideArrowButton = 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_isDefaultActionPressed = false;\n\t_isKeyDownOperation = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tif (this.disabled) {\n\t\t\tthis._tabIndex = -1;\n\t\t}\n\t}\n\n\t_handleMouseClick(e: UI5CustomEvent<Button, \"click\">) {\n\t\tthis._fireClick(e);\n\t}\n\n\t_onFocusOut() {\n\t\tif (this.disabled || this.getFocusDomRef()!.matches(\":has(:focus-within)\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._shiftOrEscapePressed = false;\n\t\tthis._setTabIndexValue();\n\t}\n\n\t_onFocusIn() {\n\t\tif (this.disabled || this.getFocusDomRef()!.matches(\":has(:focus-within)\")) {\n\t\t\treturn;\n\t\t}\n\t\tthis._shiftOrEscapePressed = false;\n\t}\n\n\thandleTouchStart(e: TouchEvent | MouseEvent) {\n\t\te.stopPropagation();\n\t\tthis._textButtonActive = true;\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_onInnerButtonFocusIn(e: FocusEvent) {\n\t\te.stopPropagation();\n\t\tthis._setTabIndexValue(true);\n\t\tconst target = e.target as Button;\n\t\ttarget.focus();\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tthis._isKeyDownOperation = true;\n\t\tif (this._isArrowKeyAction(e)) {\n\t\t\tthis._handleArrowButtonAction(e);\n\t\t\tthis._activeArrowButton = true;\n\t\t} else if (this._isDefaultAction(e)) {\n\t\t\tthis._handleDefaultAction(e);\n\t\t\tthis._isDefaultActionPressed = true;\n\t\t}\n\n\t\tif (this._spacePressed && this._isShiftOrEscape(e)) {\n\t\t\tthis._handleShiftOrEscapePressed();\n\t\t}\n\n\t\t// Handles button freeze issue when pressing Enter/Space and navigating with Tab/Shift+Tab simultaneously.\n\t\tif (this._isDefaultActionPressed && (isTabNext(e) || isTabPrevious(e))) {\n\t\t\tthis._activeArrowButton = false;\n\t\t\tthis._textButtonActive = false;\n\t\t}\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_onKeyUp(e: KeyboardEvent) {\n\t\tthis._isKeyDownOperation = false;\n\t\tif (this._isArrowKeyAction(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._activeArrowButton = false;\n\t\t\tthis._textButtonActive = false;\n\t\t} else if (this._isDefaultAction(e)) {\n\t\t\tthis._isDefaultActionPressed = false;\n\t\t\tthis._textButtonActive = false;\n\t\t\tif (isSpace(e)) {\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis._fireClick();\n\t\t\t\tthis._spacePressed = false;\n\t\t\t\tthis._textButtonActive = false;\n\t\t\t}\n\t\t}\n\n\t\tif (this._isShiftOrEscape(e)) {\n\t\t\tthis._handleShiftOrEscapePressed();\n\t\t}\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_fireClick(e?: Event) {\n\t\te?.stopPropagation();\n\t\tif (!this._shiftOrEscapePressed) {\n\t\t\tthis.fireDecoratorEvent(\"click\");\n\t\t}\n\t\tthis._shiftOrEscapePressed = false;\n\t}\n\n\t_fireArrowClick(e?: Event) {\n\t\te?.stopPropagation();\n\n\t\tthis.fireDecoratorEvent(\"arrow-click\");\n\t}\n\n\t_textButtonRelease() {\n\t\tthis._textButtonActive = false;\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_arrowButtonPress(e: MouseEvent) {\n\t\te.stopPropagation();\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_arrowButtonRelease(e: MouseEvent) {\n\t\te.preventDefault();\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_setTabIndexValue(innerButtonPressed?: boolean) {\n\t\tthis._tabIndex = this.disabled ? -1 : 0;\n\n\t\tif (this._tabIndex === -1 && innerButtonPressed) {\n\t\t\tthis._tabIndex = 0;\n\t\t}\n\t}\n\n\t_onArrowButtonActiveStateChange(e: CustomEvent) {\n\t\tif (this.activeArrowButton) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the pressed key is an arrow key.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_isArrowKeyAction(e: KeyboardEvent): boolean {\n\t\treturn isDown(e) || isUp(e) || isDownAlt(e) || isUpAlt(e) || isF4(e);\n\t}\n\n\t/**\n\t * Checks if the pressed key is a default action key (Space or Enter).\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_isDefaultAction(e: KeyboardEvent): boolean {\n\t\treturn isSpace(e) || isEnter(e);\n\t}\n\n\t/**\n\t * Checks if the pressed key is an escape key or shift key.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_isShiftOrEscape(e: KeyboardEvent): boolean {\n\t\treturn isEscape(e) || isShift(e);\n\t}\n\n\t/**\n\t * Handles the click event and the focus on the arrow button.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_handleArrowButtonAction(e: UI5CustomEvent<Button, \"click\"> | KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tthis._fireArrowClick(e);\n\n\t\tif (isSpace((e as KeyboardEvent))) {\n\t\t\tthis._spacePressed = true;\n\t\t}\n\t}\n\n\t/**\n\t * Handles the default action and the active state of the respective button.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_handleDefaultAction(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tconst wasSpacePressed = isSpace(e);\n\t\tconst target = e.target as Button;\n\n\t\tif (this.arrowButton && target === this.arrowButton) {\n\t\t\tthis._activeArrowButton = true;\n\t\t\tthis._fireArrowClick();\n\t\t\tif (wasSpacePressed) {\n\t\t\t\tthis._spacePressed = true;\n\t\t\t\tthis._textButtonActive = false;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._textButtonActive = true;\n\t\t\tif (wasSpacePressed) {\n\t\t\t\tthis._spacePressed = true;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis._fireClick();\n\t\t}\n\t}\n\n\t_handleShiftOrEscapePressed() {\n\t\tthis._shiftOrEscapePressed = true;\n\t\tthis._textButtonActive = false;\n\t\tthis._isKeyDownOperation = false;\n\t}\n\n\tget effectiveActiveArrowButton() {\n\t\treturn this.activeArrowButton || this._activeArrowButton;\n\t}\n\n\tget textButtonAccText() {\n\t\treturn this.textContent;\n\t}\n\n\tget isTextButton() {\n\t\treturn !!this.textContent;\n\t}\n\n\tget textButton() {\n\t\treturn this.getDomRef()?.querySelector<Button>(\".ui5-split-text-button\");\n\t}\n\n\tget arrowButton() {\n\t\treturn this.getDomRef()?.querySelector<Button>(\".ui5-split-arrow-button\");\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"description\": SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION),\n\t\t\t\t\"keyboardHint\": SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT),\n\t\t\t},\n\t\t\tarrowButton: {\n\t\t\t\t\"title\": this.arrowButtonTooltip,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\t\"hasPopup\": \"menu\" as AriaHasPopup,\n\t\t\t\t\t\"expanded\": this.effectiveActiveArrowButton,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget arrowButtonTooltip() {\n\t\treturn SplitButton.i18nBundle.getText(SPLIT_BUTTON_ARROW_BUTTON_TOOLTIP);\n\t}\n\n\tget ariaLabelText() {\n\t\treturn [SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION), SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT)].join(\" \");\n\t}\n}\n\nSplitButton.define();\n\nexport default SplitButton;\n"]}
1
+ {"version":3,"file":"SplitButton.js","sourceRoot":"","sources":["../src/SplitButton.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,EACN,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,IAAI,EACJ,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,EACP,SAAS,EACT,aAAa,GACb,MAAM,sCAAsC,CAAC;AAE9C,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAK/E,OAAO,EACN,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,GACjC,MAAM,mCAAmC,CAAC;AAE3C,WAAW;AACX,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,SAAS;AACT,OAAO,cAAc,MAAM,uCAAuC,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAsBH,IAAM,WAAW,mBAAjB,MAAM,WAAY,SAAQ,UAAU;IAApC;;QAkBC;;;;;WAKG;QAEH,sBAAiB,GAAG,KAAK,CAAC;QAE1B;;;;WAIG;QAEH,WAAM,GAAsB,SAAS,CAAC;QAEtC;;;;;;WAMG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAUjB;;;;WAIG;QAEH,cAAS,GAAG,CAAC,CAAA;QAEb;;;;WAIG;QAEH,qCAAgC,GAAG,KAAK,CAAC;QAEzC;;;;WAIG;QAEH,sBAAiB,GAAG,KAAK,CAAC;QAE1B;;;;WAIG;QAEH,uBAAkB,GAAG,KAAK,CAAC;QAe3B;;;;;WAKG;QAEH,qBAAgB,GAAG,KAAK,CAAC;IAoP1B,CAAC;IAtOA,iBAAiB;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC;IACF,CAAC;IAED,iBAAiB,CAAC,CAAkC;QACnD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,WAAW;QACV,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC5E,OAAO;QACR,CAAC;QAED,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB,CAAC,CAA0B;QAC1C,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,qBAAqB,CAAC,CAAa;QAClC,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAgB,CAAC;QAClC,MAAM,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAC7B,OAAO;QACR,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3D,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5C,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,CAAgB;QACxB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAgB,CAAC;QAClC,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;YAChC,OAAO;QACR,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,gCAAgC,IAAI,MAAM,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,wFAAwF;gBACpK,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,CAAC;YAED,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;YAC9C,OAAO;QACR,CAAC;QAED,MAAM,oCAAoC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAElG,IAAI,oCAAoC,EAAE,CAAC;YAC1C,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAChC,CAAC;IACF,CAAC;IAED,wBAAwB;QACvB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;IAC/C,CAAC;IAED,UAAU,CAAC,CAAS;QACnB,CAAC,EAAE,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,eAAe,CAAC,CAAS;QACxB,CAAC,EAAE,eAAe,EAAE,CAAC;QAErB,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,kBAAkB;QACjB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC9B,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,mBAAmB,CAAC,CAAa;QAChC,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,kBAA4B;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,IAAI,kBAAkB,EAAE,CAAC;YACjD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACpB,CAAC;IACF,CAAC;IAED,+BAA+B,CAAC,CAAc;QAC7C,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,CAAC,CAAC,cAAc,EAAE,CAAC;QACpB,CAAC;IACF,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,CAAgB;QACjC,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,CAAgB;QAChC,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,CAAkD;QAC1E,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,CAAgB;QACpC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAgB,CAAC;QAElC,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACrD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAE9B,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnB,OAAO;QACR,CAAC;QAED,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACjC,CAAC;IACF,CAAC;IAED,IAAI,0BAA0B;QAC7B,OAAO,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IAC3B,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAS,wBAAwB,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAS,yBAAyB,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,IAAI,EAAE;gBACL,aAAa,EAAE,aAAW,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC;gBACvE,cAAc,EAAE,aAAW,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC;aAC1E;YACD,WAAW,EAAE;gBACZ,OAAO,EAAE,IAAI,CAAC,kBAAkB;gBAChC,yBAAyB,EAAE;oBAC1B,UAAU,EAAE,MAAsB;oBAClC,UAAU,EAAE,IAAI,CAAC,0BAA0B;iBAC3C;aACD;SACD,CAAC;IACH,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,aAAW,CAAC,UAAU,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,CAAC,aAAW,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,aAAW,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzI,CAAC;CACD,CAAA;AA7UA;IADC,QAAQ,EAAE;yCACG;AASd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sDACF;AAQ1B;IADC,QAAQ,EAAE;2CAC2B;AAUtC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACX;AAQjB;IADC,QAAQ,EAAE;mDACa;AAQxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;8CACjC;AAQb;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;qEACN;AAQzC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;sDACrB;AAQ1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;uDACpB;AAa3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CACT;AASlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qDACH;AASzB;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;yCACnB;AAGZ;IADN,IAAI,CAAC,oBAAoB,CAAC;qCACG;AArHzB,WAAW;IArBhB,aAAa,CAAC;QACd,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,cAAc;QACtB,QAAQ,EAAE,mBAAmB;KAC7B,CAAC;IACF;;;OAGG;;IACF,KAAK,CAAC,OAAO,EAAE;QACf,OAAO,EAAE,IAAI;KACb,CAAC;IAEF;;;OAGG;;IACF,KAAK,CAAC,aAAa,EAAE;QACrB,OAAO,EAAE,IAAI;KACb,CAAC;GACI,WAAW,CA6VhB;AAED,WAAW,CAAC,MAAM,EAAE,CAAC;AAErB,eAAe,WAAW,CAAC","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 {\n\tisEscape,\n\tisSpace,\n\tisEnter,\n\tisDown,\n\tisUp,\n\tisDownAlt,\n\tisUpAlt,\n\tisF4,\n\tisShift,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { AriaHasPopup, UI5CustomEvent } from \"@ui5/webcomponents-base\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type ButtonDesign from \"./types/ButtonDesign.js\";\nimport type Button from \"./Button.js\";\n\nimport {\n\tSPLIT_BUTTON_DESCRIPTION,\n\tSPLIT_BUTTON_KEYBOARD_HINT,\n\tSPLIT_BUTTON_ARROW_BUTTON_TOOLTIP,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport SplitButtonTemplate from \"./SplitButtonTemplate.js\";\n\n// Styles\nimport SplitButtonCss from \"./generated/themes/SplitButton.css.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-split-button` enables users to trigger actions. It is constructed of two separate actions -\n * default action and arrow action that can be activated by clicking or tapping, or by\n * pressing certain keyboard keys - `Space` or `Enter` for default action,\n * and `Arrow Down` or `Arrow Up` for arrow action.\n *\n * ### Usage\n *\n * `ui5-split-button` consists two separate buttons:\n *\n * - for the first one (default action) you can define some `text` or an `icon`, or both.\n * - the second one (arrow action) contains only `slim-arrow-down` icon.\n *\n * You can choose a `design` from a set of predefined types (the same as for ui5-button) that offer\n * different styling to correspond to the triggered action. Both text and arrow actions have the same design.\n *\n * You can set the `ui5-split-button` as enabled or disabled. Both parts of an enabled\n * `ui5-split-button` can be pressed by clicking or tapping it, or by certain keys, which changes\n * the style to provide visual feedback to the user that it is pressed or hovered over with\n * the mouse cursor. A disabled `ui5-split-button` appears inactive and any of the two buttons\n * cannot be pressed.\n *\n * ### Keyboard Handling\n *\n * - `Space` or `Enter` - triggers the default action\n * - `Shift` or `Escape` - if `Space` is pressed, releases the default action button without triggering the click event.\n * - `Arrow Down`, `Arrow Up`, `Alt`+`Arrow Down`, `Alt`+`Arrow Up`, or `F4` - triggers the arrow action\n * There are separate events that are fired on activating of `ui5-split-button` parts:\n *\n * - `click` for the first button (default action)\n * - `arrow-click` for the second button (arrow action)\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SplitButton.js\";`\n * @csspart button - Used to style the native button element\n * @csspart icon - Used to style the icon in the native button element\n * @csspart endIcon - Used to style the end icon in the native button element\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.1.0\n */\n@customElement({\n\ttag: \"ui5-split-button\",\n\trenderer: jsxRenderer,\n\tstyles: SplitButtonCss,\n\ttemplate: SplitButtonTemplate,\n})\n/**\n * Fired when the user clicks on the default action.\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the user clicks on the arrow action.\n * @public\n */\n@event(\"arrow-click\", {\n\tbubbles: true,\n})\nclass SplitButton extends UI5Element {\n\teventDetails!: {\n\t\tclick: void;\n\t\t\"arrow-click\": void;\n\t}\n\t/**\n\t * Defines the icon to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t *\n\t * See all available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines whether the arrow button should have the active state styles or not.\n\t * @default false\n\t * @public\n\t * @since 1.21.0\n\t */\n\t@property({ type: Boolean })\n\tactiveArrowButton = false;\n\n\t/**\n\t * Defines the component design.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${ButtonDesign}` = \"Default\";\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @default \"0\"\n\t * @private\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_tabIndex = 0\n\n\t/**\n\t * Indicates if there is Shift or Escape key pressed while Space key is down.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_shiftOrEscapePressedDuringSpace = false;\n\n\t/**\n\t * Defines the active state of the text button\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_textButtonActive = false;\n\n\t/**\n\t * Defines the state of the internal Button used for the Arrow button of the SplitButton.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_activeArrowButton = false;\n\n\t/**\n\t * Defines the display of the end icon as a graphical element within the default action of the component after the button text.\n\t * The SAP-icons font provides different options.\n\t *\n\t * Example:\n\t *\n\t * See all available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @private\n\t */\n\t@property({ type: String })\n\t_endIcon?: string;\n\n\t/**\n\t * Defines the visibility of the arrow button of the component.\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hideArrowButton = 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@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tif (this.disabled) {\n\t\t\tthis._tabIndex = -1;\n\t\t}\n\t}\n\n\t_handleMouseClick(e: UI5CustomEvent<Button, \"click\">) {\n\t\tthis._fireClick(e);\n\t}\n\n\t_onFocusOut() {\n\t\tif (this.disabled || this.getFocusDomRef()!.matches(\":has(:focus-within)\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._resetActionButtonStates();\n\t\tthis._setTabIndexValue();\n\t}\n\n\thandleTouchStart(e: TouchEvent | MouseEvent) {\n\t\te.stopPropagation();\n\t\tthis._textButtonActive = true;\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_onInnerButtonFocusIn(e: FocusEvent) {\n\t\te.stopPropagation();\n\t\tthis._setTabIndexValue(true);\n\t\tconst target = e.target as Button;\n\t\ttarget.focus();\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tif (this._isArrowKeyAction(e)) {\n\t\t\tthis._handleArrowButtonAction(e);\n\t\t\tthis._activeArrowButton = true;\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isDefaultAction(e)) {\n\t\t\tthis._handleDefaultAction(e);\n\t\t\treturn;\n\t\t}\n\n\t\tif ((isShift(e) || isEscape(e)) && this._textButtonActive) {\n\t\t\te.preventDefault();\n\t\t\tthis._shiftOrEscapePressedDuringSpace = true;\n\t\t}\n\n\t\tif (isEscape(e) && !this._textButtonActive) {\n\t\t\tthis._resetActionButtonStates();\n\t\t}\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_onKeyUp(e: KeyboardEvent) {\n\t\tconst target = e.target as Button;\n\t\tif (this._isArrowKeyAction(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._activeArrowButton = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tthis._textButtonActive = false;\n\t\t\tif (!this._shiftOrEscapePressedDuringSpace && target !== this.arrowButton) { // Do not fire click if Arrow button is focused by mouse and Space is pressed afterwards\n\t\t\t\tthis._fireClick();\n\t\t\t}\n\n\t\t\tthis._shiftOrEscapePressedDuringSpace = false;\n\t\t\treturn;\n\t\t}\n\n\t\tconst shouldToggleTextButtonActiveStateOff = isEnter(e) || (isShift(e) && this._textButtonActive);\n\n\t\tif (shouldToggleTextButtonActiveStateOff) {\n\t\t\tthis._textButtonActive = false;\n\t\t}\n\t}\n\n\t_resetActionButtonStates() {\n\t\tthis._activeArrowButton = false;\n\t\tthis._textButtonActive = false;\n\t\tthis._shiftOrEscapePressedDuringSpace = false;\n\t}\n\n\t_fireClick(e?: Event) {\n\t\te?.stopPropagation();\n\t\tthis.fireDecoratorEvent(\"click\");\n\t}\n\n\t_fireArrowClick(e?: Event) {\n\t\te?.stopPropagation();\n\n\t\tthis.fireDecoratorEvent(\"arrow-click\");\n\t}\n\n\t_textButtonRelease() {\n\t\tthis._textButtonActive = false;\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_arrowButtonPress(e: MouseEvent) {\n\t\te.stopPropagation();\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_arrowButtonRelease(e: MouseEvent) {\n\t\te.preventDefault();\n\n\t\tthis._tabIndex = -1;\n\t}\n\n\t_setTabIndexValue(innerButtonPressed?: boolean) {\n\t\tthis._tabIndex = this.disabled ? -1 : 0;\n\n\t\tif (this._tabIndex === -1 && innerButtonPressed) {\n\t\t\tthis._tabIndex = 0;\n\t\t}\n\t}\n\n\t_onArrowButtonActiveStateChange(e: CustomEvent) {\n\t\tif (this.activeArrowButton) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the pressed key is an arrow key.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_isArrowKeyAction(e: KeyboardEvent): boolean {\n\t\treturn isDown(e) || isUp(e) || isDownAlt(e) || isUpAlt(e) || isF4(e);\n\t}\n\n\t/**\n\t * Checks if the pressed key is a default action key (Space or Enter).\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_isDefaultAction(e: KeyboardEvent): boolean {\n\t\treturn isSpace(e) || isEnter(e);\n\t}\n\n\t/**\n\t * Handles the click event and the focus on the arrow button.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_handleArrowButtonAction(e: UI5CustomEvent<Button, \"click\"> | KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tthis._fireArrowClick(e);\n\t}\n\n\t/**\n\t * Handles the default action and the active state of the respective button.\n\t * @param e - keyboard event\n\t * @private\n\t */\n\t_handleDefaultAction(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tconst target = e.target as Button;\n\n\t\tif (this.arrowButton && target === this.arrowButton) {\n\t\t\tthis._activeArrowButton = true;\n\t\t\tthis._fireArrowClick();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._textButtonActive = true;\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._fireClick(e);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isTabPrevious(e) || isTabNext(e)) {\n\t\t\tthis._resetActionButtonStates();\n\t\t}\n\t}\n\n\tget effectiveActiveArrowButton() {\n\t\treturn this.activeArrowButton || this._activeArrowButton;\n\t}\n\n\tget textButtonAccText() {\n\t\treturn this.textContent;\n\t}\n\n\tget isTextButton() {\n\t\treturn !!this.textContent;\n\t}\n\n\tget textButton() {\n\t\treturn this.getDomRef()?.querySelector<Button>(\".ui5-split-text-button\");\n\t}\n\n\tget arrowButton() {\n\t\treturn this.getDomRef()?.querySelector<Button>(\".ui5-split-arrow-button\");\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"description\": SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION),\n\t\t\t\t\"keyboardHint\": SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT),\n\t\t\t},\n\t\t\tarrowButton: {\n\t\t\t\t\"title\": this.arrowButtonTooltip,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\t\"hasPopup\": \"menu\" as AriaHasPopup,\n\t\t\t\t\t\"expanded\": this.effectiveActiveArrowButton,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget arrowButtonTooltip() {\n\t\treturn SplitButton.i18nBundle.getText(SPLIT_BUTTON_ARROW_BUTTON_TOOLTIP);\n\t}\n\n\tget ariaLabelText() {\n\t\treturn [SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION), SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT)].join(\" \");\n\t}\n}\n\nSplitButton.define();\n\nexport default SplitButton;\n"]}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime"
2
2
  import slimArrowDown from "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
3
3
  import Button from "./Button.js";
4
4
  export default function SplitButtonTemplate() {
5
- return (_jsxs("div", { role: this._hideArrowButton ? "button" : "group", class: "ui5-split-button-root", tabindex: this._tabIndex, "aria-labelledby": `${this._id}-invisibleTextDefault ${this._id}}-invisibleText`, onFocusOut: this._onFocusOut, onFocusIn: this._onFocusIn, onKeyDown: this._onKeyDown, onKeyUp: this._onKeyUp, children: [_jsx(Button, { class: "ui5-split-text-button", design: this.design, icon: this.icon, endIcon: this._endIcon, tabindex: -1, disabled: this.disabled, active: this._textButtonActive, exportparts: "icon,endIcon,button", onClick: this._handleMouseClick, onTouchStart: this.handleTouchStart, onMouseDown: this.handleTouchStart, onMouseUp: this._textButtonRelease, onFocusIn: this._onInnerButtonFocusIn, onFocusOut: this._onFocusOut, children: this.isTextButton && _jsx("slot", {}) }), !this._hideArrowButton &&
5
+ return (_jsxs("div", { role: this._hideArrowButton ? "button" : "group", class: "ui5-split-button-root", tabindex: this._tabIndex, "aria-labelledby": `${this._id}-invisibleTextDefault ${this._id}}-invisibleText`, onFocusOut: this._onFocusOut, onKeyDown: this._onKeyDown, onKeyUp: this._onKeyUp, children: [_jsx(Button, { class: "ui5-split-text-button", design: this.design, icon: this.icon, endIcon: this._endIcon, tabindex: -1, disabled: this.disabled, active: this._textButtonActive, exportparts: "icon,endIcon,button", onClick: this._handleMouseClick, onTouchStart: this.handleTouchStart, onMouseDown: this.handleTouchStart, onMouseUp: this._textButtonRelease, onFocusIn: this._onInnerButtonFocusIn, onFocusOut: this._onFocusOut, children: this.isTextButton && _jsx("slot", {}) }), !this._hideArrowButton &&
6
6
  _jsx(Button, { class: "ui5-split-arrow-button", design: this.design, icon: slimArrowDown, tabindex: -1, tooltip: this.accInfo.arrowButton.title, accessibilityAttributes: this.accInfo.arrowButton.accessibilityAttributes, disabled: this.disabled, active: this.effectiveActiveArrowButton, part: "arrowButton", onClick: this._handleArrowButtonAction, onMouseDown: this._arrowButtonPress, onMouseUp: this._arrowButtonRelease, onFocusIn: this._onInnerButtonFocusIn, onActiveStateChange: this._onArrowButtonActiveStateChange }), _jsxs("span", { id: `${this._id}-invisibleText`, class: "ui5-hidden-text", children: [this.accInfo.root.description, " ", this.accInfo.root.keyboardHint, " ", this.accessibleName] }), _jsx("span", { id: `${this._id}-invisibleTextDefault`, class: "ui5-hidden-text", children: this.textButtonAccText })] }));
7
7
  }
8
8
  //# sourceMappingURL=SplitButtonTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SplitButtonTemplate.js","sourceRoot":"","sources":["../src/SplitButtonTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,MAAM,kDAAkD,CAAC;AAC7E,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,UAAU,mBAAmB;IAC1C,OAAO,CACN,eACC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAChD,KAAK,EAAC,uBAAuB,EAC7B,QAAQ,EAAE,IAAI,CAAC,SAAS,qBACP,GAAG,IAAI,CAAC,GAAG,yBAAyB,IAAI,CAAC,GAAG,iBAAiB,EAC9E,UAAU,EAAE,IAAI,CAAC,WAAW,EAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ,aAEtB,KAAC,MAAM,IACN,KAAK,EAAC,uBAAuB,EAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,QAAQ,EAAE,CAAC,CAAC,EACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAC9B,WAAW,EAAC,qBAAqB,EACjC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAClC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EACrC,UAAU,EAAE,IAAI,CAAC,WAAW,YAE3B,IAAI,CAAC,YAAY,IAAI,gBAAa,GAC3B,EAER,CAAC,IAAI,CAAC,gBAAgB;gBACtB,KAAC,MAAM,IACN,KAAK,EAAC,wBAAwB,EAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EACvC,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,uBAAuB,EACzE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,0BAA0B,EACvC,IAAI,EAAC,aAAa,EAClB,OAAO,EAAE,IAAI,CAAC,wBAAwB,EACtC,WAAW,EAAE,IAAI,CAAC,iBAAiB,EACnC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EACnC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EACrC,mBAAmB,EAAE,IAAI,CAAC,+BAA+B,GAEjD,EAEV,gBAAM,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,gBAAgB,EAAE,KAAK,EAAC,iBAAiB,aAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,OAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,OAAG,IAAI,CAAC,cAAc,IAAQ,EAC5J,eAAM,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,uBAAuB,EAAE,KAAK,EAAC,iBAAiB,YAAE,IAAI,CAAC,iBAAiB,GAAQ,IAChG,CACN,CAAC;AACH,CAAC","sourcesContent":["import type SplitButton from \"./SplitButton.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport Button from \"./Button.js\";\n\nexport default function SplitButtonTemplate(this: SplitButton) {\n\treturn (\n\t\t<div\n\t\t\trole={this._hideArrowButton ? \"button\" : \"group\"}\n\t\t\tclass=\"ui5-split-button-root\"\n\t\t\ttabindex={this._tabIndex}\n\t\t\taria-labelledby={`${this._id}-invisibleTextDefault ${this._id}}-invisibleText`}\n\t\t\tonFocusOut={this._onFocusOut}\n\t\t\tonFocusIn={this._onFocusIn}\n\t\t\tonKeyDown={this._onKeyDown}\n\t\t\tonKeyUp={this._onKeyUp}\n\t\t>\n\t\t\t<Button\n\t\t\t\tclass=\"ui5-split-text-button\"\n\t\t\t\tdesign={this.design}\n\t\t\t\ticon={this.icon}\n\t\t\t\tendIcon={this._endIcon}\n\t\t\t\ttabindex={-1}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\tactive={this._textButtonActive}\n\t\t\t\texportparts=\"icon,endIcon,button\"\n\t\t\t\tonClick={this._handleMouseClick}\n\t\t\t\tonTouchStart={this.handleTouchStart}\n\t\t\t\tonMouseDown={this.handleTouchStart}\n\t\t\t\tonMouseUp={this._textButtonRelease}\n\t\t\t\tonFocusIn={this._onInnerButtonFocusIn}\n\t\t\t\tonFocusOut={this._onFocusOut}\n\t\t\t>\n\t\t\t\t{this.isTextButton && <slot></slot> }\n\t\t\t</Button>\n\n\t\t\t{!this._hideArrowButton &&\n\t\t\t\t<Button\n\t\t\t\t\tclass=\"ui5-split-arrow-button\"\n\t\t\t\t\tdesign={this.design}\n\t\t\t\t\ticon={slimArrowDown}\n\t\t\t\t\ttabindex={-1}\n\t\t\t\t\ttooltip={this.accInfo.arrowButton.title}\n\t\t\t\t\taccessibilityAttributes={this.accInfo.arrowButton.accessibilityAttributes}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tactive={this.effectiveActiveArrowButton}\n\t\t\t\t\tpart=\"arrowButton\"\n\t\t\t\t\tonClick={this._handleArrowButtonAction}\n\t\t\t\t\tonMouseDown={this._arrowButtonPress}\n\t\t\t\t\tonMouseUp={this._arrowButtonRelease}\n\t\t\t\t\tonFocusIn={this._onInnerButtonFocusIn}\n\t\t\t\t\tonActiveStateChange={this._onArrowButtonActiveStateChange}\n\t\t\t\t>\n\t\t\t\t</Button>\n\t\t\t}\n\t\t\t<span id={`${this._id}-invisibleText`} class=\"ui5-hidden-text\">{this.accInfo.root.description} {this.accInfo.root.keyboardHint} {this.accessibleName}</span>\n\t\t\t<span id={`${this._id}-invisibleTextDefault`} class=\"ui5-hidden-text\">{this.textButtonAccText}</span>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"file":"SplitButtonTemplate.js","sourceRoot":"","sources":["../src/SplitButtonTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,MAAM,kDAAkD,CAAC;AAC7E,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,UAAU,mBAAmB;IAC1C,OAAO,CACN,eACC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAChD,KAAK,EAAC,uBAAuB,EAC7B,QAAQ,EAAE,IAAI,CAAC,SAAS,qBACP,GAAG,IAAI,CAAC,GAAG,yBAAyB,IAAI,CAAC,GAAG,iBAAiB,EAC9E,UAAU,EAAE,IAAI,CAAC,WAAW,EAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ,aAEtB,KAAC,MAAM,IACN,KAAK,EAAC,uBAAuB,EAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,QAAQ,EAAE,CAAC,CAAC,EACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAC9B,WAAW,EAAC,qBAAqB,EACjC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAClC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EACrC,UAAU,EAAE,IAAI,CAAC,WAAW,YAE3B,IAAI,CAAC,YAAY,IAAI,gBAAa,GAC3B,EAER,CAAC,IAAI,CAAC,gBAAgB;gBACtB,KAAC,MAAM,IACN,KAAK,EAAC,wBAAwB,EAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EACvC,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,uBAAuB,EACzE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,0BAA0B,EACvC,IAAI,EAAC,aAAa,EAClB,OAAO,EAAE,IAAI,CAAC,wBAAwB,EACtC,WAAW,EAAE,IAAI,CAAC,iBAAiB,EACnC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EACnC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EACrC,mBAAmB,EAAE,IAAI,CAAC,+BAA+B,GAEjD,EAEV,gBAAM,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,gBAAgB,EAAE,KAAK,EAAC,iBAAiB,aAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,OAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,OAAG,IAAI,CAAC,cAAc,IAAQ,EAC5J,eAAM,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,uBAAuB,EAAE,KAAK,EAAC,iBAAiB,YAAE,IAAI,CAAC,iBAAiB,GAAQ,IAChG,CACN,CAAC;AACH,CAAC","sourcesContent":["import type SplitButton from \"./SplitButton.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport Button from \"./Button.js\";\n\nexport default function SplitButtonTemplate(this: SplitButton) {\n\treturn (\n\t\t<div\n\t\t\trole={this._hideArrowButton ? \"button\" : \"group\"}\n\t\t\tclass=\"ui5-split-button-root\"\n\t\t\ttabindex={this._tabIndex}\n\t\t\taria-labelledby={`${this._id}-invisibleTextDefault ${this._id}}-invisibleText`}\n\t\t\tonFocusOut={this._onFocusOut}\n\t\t\tonKeyDown={this._onKeyDown}\n\t\t\tonKeyUp={this._onKeyUp}\n\t\t>\n\t\t\t<Button\n\t\t\t\tclass=\"ui5-split-text-button\"\n\t\t\t\tdesign={this.design}\n\t\t\t\ticon={this.icon}\n\t\t\t\tendIcon={this._endIcon}\n\t\t\t\ttabindex={-1}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\tactive={this._textButtonActive}\n\t\t\t\texportparts=\"icon,endIcon,button\"\n\t\t\t\tonClick={this._handleMouseClick}\n\t\t\t\tonTouchStart={this.handleTouchStart}\n\t\t\t\tonMouseDown={this.handleTouchStart}\n\t\t\t\tonMouseUp={this._textButtonRelease}\n\t\t\t\tonFocusIn={this._onInnerButtonFocusIn}\n\t\t\t\tonFocusOut={this._onFocusOut}\n\t\t\t>\n\t\t\t\t{this.isTextButton && <slot></slot> }\n\t\t\t</Button>\n\n\t\t\t{!this._hideArrowButton &&\n\t\t\t\t<Button\n\t\t\t\t\tclass=\"ui5-split-arrow-button\"\n\t\t\t\t\tdesign={this.design}\n\t\t\t\t\ticon={slimArrowDown}\n\t\t\t\t\ttabindex={-1}\n\t\t\t\t\ttooltip={this.accInfo.arrowButton.title}\n\t\t\t\t\taccessibilityAttributes={this.accInfo.arrowButton.accessibilityAttributes}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tactive={this.effectiveActiveArrowButton}\n\t\t\t\t\tpart=\"arrowButton\"\n\t\t\t\t\tonClick={this._handleArrowButtonAction}\n\t\t\t\t\tonMouseDown={this._arrowButtonPress}\n\t\t\t\t\tonMouseUp={this._arrowButtonRelease}\n\t\t\t\t\tonFocusIn={this._onInnerButtonFocusIn}\n\t\t\t\t\tonActiveStateChange={this._onArrowButtonActiveStateChange}\n\t\t\t\t>\n\t\t\t\t</Button>\n\t\t\t}\n\t\t\t<span id={`${this._id}-invisibleText`} class=\"ui5-hidden-text\">{this.accInfo.root.description} {this.accInfo.root.keyboardHint} {this.accessibleName}</span>\n\t\t\t<span id={`${this._id}-invisibleTextDefault`} class=\"ui5-hidden-text\">{this.textButtonAccText}</span>\n\t\t</div>\n\t);\n}\n"]}
package/dist/Tab.d.ts CHANGED
@@ -81,7 +81,8 @@ declare class Tab extends UI5Element implements ITabbable, ITab {
81
81
  * Defines if the tab is movable.
82
82
  *
83
83
  * @default false
84
- * @private
84
+ * @public
85
+ * @since 2.0.0
85
86
  */
86
87
  movable: boolean;
87
88
  _isTopLevelTab: boolean;
package/dist/Tab.js CHANGED
@@ -82,7 +82,8 @@ let Tab = Tab_1 = class Tab extends UI5Element {
82
82
  * Defines if the tab is movable.
83
83
  *
84
84
  * @default false
85
- * @private
85
+ * @public
86
+ * @since 2.0.0
86
87
  */
87
88
  this.movable = false;
88
89
  this._isTopLevelTab = false;
package/dist/Tab.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.js","sourceRoot":"","sources":["../src/Tab.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 type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.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 type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport type { AccessibilityAttributes } from \"@ui5/webcomponents-base/dist/types.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tTAB_ARIA_DESIGN_POSITIVE,\n\tTAB_ARIA_DESIGN_NEGATIVE,\n\tTAB_ARIA_DESIGN_CRITICAL,\n\tTAB_ARIA_DESIGN_NEUTRAL,\n\tTABCONTAINER_END_OVERFLOW,\n\tTAB_SPLIT_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport SemanticColor from \"./types/SemanticColor.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport TabContainer from \"./TabContainer.js\";\nimport type { TabContainerStripInfo, TabContainerOverflowInfo, ITab } from \"./TabContainer.js\";\nimport type ListItemCustom from \"./ListItemCustom.js\";\n\n// Templates\nimport TabTemplate from \"./TabTemplate.js\";\nimport TabInStripTemplate from \"./TabInStripTemplate.js\";\nimport TabInOverflowTemplate from \"./TabInOverflowTemplate.js\";\n\n// Styles\nimport css from \"./generated/themes/Tab.css.js\";\nimport stripCss from \"./generated/themes/TabInStrip.css.js\";\nimport draggableElementStyles from \"./generated/themes/DraggableElement.css.js\";\nimport overflowCss from \"./generated/themes/TabInOverflow.css.js\";\n\nconst DESIGN_DESCRIPTIONS = {\n\t[SemanticColor.Positive]: TAB_ARIA_DESIGN_POSITIVE,\n\t[SemanticColor.Negative]: TAB_ARIA_DESIGN_NEGATIVE,\n\t[SemanticColor.Neutral]: TAB_ARIA_DESIGN_NEUTRAL,\n\t[SemanticColor.Critical]: TAB_ARIA_DESIGN_CRITICAL,\n};\n\ninterface TabInStrip extends HTMLElement {\n\trealTabReference: Tab;\n}\n\ninterface TabInOverflow extends ListItemCustom {\n\trealTabReference: Tab;\n}\n\n/**\n * @class\n * The `ui5-tab` represents a selectable item inside a `ui5-tabcontainer`.\n * It defines both the item in the tab strip (top part of the `ui5-tabcontainer`) and the\n * content that is presented to the user once the tab is selected.\n * @abstract\n * @constructor\n * @extends UI5Element\n * @implements {ITab}\n * @public\n */\n@customElement({\n\ttag: \"ui5-tab\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: TabTemplate,\n\tstyles: css,\n})\nclass Tab extends UI5Element implements ITabbable, ITab {\n\t/**\n\t * The text to be displayed for the item.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Disabled tabs can't be selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Represents the \"additionalText\" text, which is displayed in the tab. In the cases when in the same time there are tabs with icons and tabs without icons, if a tab has no icon the \"additionalText\" is displayed larger.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Defines the icon source URI to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous built-in icons.\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines the component's design color.\n\t *\n\t * The design is applied to:\n\t *\n\t * - the component icon\n\t * - the `text` when the component overflows\n\t * - the tab selection line\n\t *\n\t * Available designs are: `\"Default\"`, `\"Neutral\"`, `\"Positive\"`, `\"Critical\"` and `\"Negative\"`.\n\t *\n\t * **Note:** The design depends on the current theme.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${SemanticColor}` = \"Default\";\n\n\t/**\n\t * Specifies if the component is selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines if the tab is movable.\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t@property({ type: Boolean })\n\t_isTopLevelTab = false;\n\n\t@property({ type: Object })\n\t_selectedTabReference?: Tab;\n\n\t/**\n\t * Holds the content associated with this tab.\n\t * @public\n\t */\n\t@slot({\n\t\ttype: Node,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcontent!: Array<Node>;\n\n\t/**\n\t * Defines hierarchies with nested sub tabs.\n\t *\n\t * **Note:** Use `ui5-tab` and `ui5-tab-separator` for the intended design.\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\titems!: Array<ITab>\n\n\t_isInline?: boolean;\n\t_forcedMixedMode?: boolean;\n\t_getElementInStrip?: () => HTMLElement | undefined;\n\t_getElementInOverflow?: () => HTMLElement | undefined;\n\t_forcedPosinset?: number;\n\t_forcedSetsize?: number;\n\t_forcedStyleInOverflow?: Record<string, any>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tset forcedTabIndex(val: string) {\n\t\tthis.getDomRefInStrip()!.setAttribute(\"tabindex\", val);\n\t}\n\n\tget forcedTabIndex() {\n\t\treturn this.getDomRefInStrip()!.getAttribute(\"tabindex\")!;\n\t}\n\n\tget displayText() {\n\t\tlet text = this.text;\n\n\t\tif (this._isInline && this.additionalText) {\n\t\t\ttext += ` (${this.additionalText})`;\n\t\t}\n\n\t\treturn text;\n\t}\n\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\tget stripPresentation() {\n\t\treturn executeTemplate(Tab.stripTemplate, this);\n\t}\n\n\tget overflowPresentation() {\n\t\treturn executeTemplate(Tab.overflowTemplate, this);\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n\n\tget requiresExpandButton() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && this.hasOwnContent;\n\t}\n\n\tget isSingleClickArea() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && !this.hasOwnContent;\n\t}\n\n\tget isTwoClickArea() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && this.hasOwnContent;\n\t}\n\n\tget isOnSelectedTabPath(): boolean {\n\t\treturn this._selectedTabReference === this || this.tabs.some(subTab => subTab.isOnSelectedTabPath);\n\t}\n\n\tget _effectiveSlotName(): string | undefined {\n\t\treturn this.isOnSelectedTabPath ? this._individualSlot : `disabled-${this._individualSlot}`;\n\t}\n\n\tget _defaultSlotName() {\n\t\treturn this._selectedTabReference === this ? \"\" : \"disabled-slot\";\n\t}\n\n\tget hasOwnContent() {\n\t\treturn willShowContent(this.content);\n\t}\n\n\tget expandBtnAccessibilityAttributes(): Pick<AccessibilityAttributes, \"hasPopup\"> {\n\t\treturn {\n\t\t\thasPopup: \"menu\",\n\t\t};\n\t}\n\n\treceiveStripInfo({\n\t\tgetElementInStrip, posinset, setsize, isInline, isTopLevelTab, mixedMode,\n\t}: TabContainerStripInfo) {\n\t\tthis._getElementInStrip = getElementInStrip;\n\t\tthis._forcedPosinset = posinset;\n\t\tthis._forcedSetsize = setsize;\n\t\tthis._forcedMixedMode = mixedMode;\n\t\tthis._isInline = isInline;\n\t\tthis._isTopLevelTab = !!isTopLevelTab;\n\t}\n\n\treceiveOverflowInfo({ getElementInOverflow, style }: TabContainerOverflowInfo) {\n\t\tthis._getElementInOverflow = getElementInOverflow;\n\t\tthis._forcedStyleInOverflow = style;\n\t}\n\n\t/**\n\t * Returns the DOM reference of the tab that is placed in the header.\n\t *\n\t * **Note:** Tabs, placed in the `items` slot of other tabs are not shown in the header. Calling this method on such tabs will return `undefined`.\n\t *\n\t * **Note:** If you need a DOM ref to the tab content please use the `getDomRef` method.\n\t * @public\n\t * @since 1.0.0-rc.16\n\t */\n\tgetDomRefInStrip(): HTMLElement | undefined {\n\t\treturn this._getElementInStrip?.();\n\t}\n\n\tgetFocusDomRef() {\n\t\tlet focusedDomRef = this._getElementInOverflow?.();\n\n\t\tif (!focusedDomRef) {\n\t\t\tfocusedDomRef = this._getElementInStrip?.();\n\t\t}\n\n\t\treturn focusedDomRef;\n\t}\n\n\tasync focus(focusOptions?: FocusOptions): Promise<void> {\n\t\tawait renderFinished();\n\t\treturn super.focus(focusOptions);\n\t}\n\n\tget isMixedModeTab() {\n\t\treturn !this.icon && this._forcedMixedMode;\n\t}\n\n\tget isTextOnlyTab() {\n\t\treturn !this.icon && !this._forcedMixedMode;\n\t}\n\n\tget isIconTab() {\n\t\treturn !!this.icon;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget effectiveSelected() {\n\t\tconst subItemSelected = this.tabs.some(elem => elem.effectiveSelected);\n\t\treturn this.selected || this._selectedTabReference === this || subItemSelected;\n\t}\n\n\tget effectiveHidden() {\n\t\treturn !this.effectiveSelected;\n\t}\n\n\tget tabs(): Array<Tab> {\n\t\treturn this.items.filter((tab): tab is Tab => !tab.isSeparator);\n\t}\n\n\tget ariaLabelledBy() {\n\t\tconst labels = [];\n\n\t\tif (this.text) {\n\t\t\tlabels.push(`${this._id}-text`);\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tlabels.push(`${this._id}-additionalText`);\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tlabels.push(`${this._id}-icon`);\n\t\t}\n\n\t\tif (this._designDescription) {\n\t\t\tlabels.push(`${this._id}-designDescription`);\n\t\t}\n\n\t\treturn labels.join(\" \");\n\t}\n\n\tget stripClasses() {\n\t\tconst classes = [\"ui5-tab-strip-item\"];\n\n\t\tif (this.effectiveSelected) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--selected\");\n\t\t}\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--disabled\");\n\t\t}\n\n\t\tif (this._isInline) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--inline\");\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withAdditionalText\");\n\t\t}\n\n\t\tif (!this.icon && !this._forcedMixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--textOnly\");\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withIcon\");\n\t\t}\n\n\t\tif (!this.icon && this._forcedMixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--mixedMode\");\n\t\t}\n\n\t\tif (this.design !== SemanticColor.Default) {\n\t\t\tclasses.push(`ui5-tab-strip-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.isSingleClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--singleClickArea`);\n\t\t}\n\n\t\tif (this.isTwoClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--twoClickArea`);\n\t\t}\n\n\t\treturn {\n\t\t\titemClasses: classes.join(\" \"),\n\t\t\tadditionalTextClasses: this.additionalTextClasses,\n\t\t};\n\t}\n\n\tget additionalTextClasses() {\n\t\tconst classes = [];\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText\");\n\t\t}\n\n\t\tif (this.icon && !this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText-hidden\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget expandButtonTitle() {\n\t\treturn Tab.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);\n\t}\n\n\tget _roleDescription() {\n\t\treturn this.items.length > 0 ? Tab.i18nBundle.getText(TAB_SPLIT_ROLE_DESCRIPTION) : undefined;\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this.isSingleClickArea ? \"menu\" : undefined;\n\t}\n\n\tget semanticIconName() {\n\t\tswitch (this.design) {\n\t\tcase SemanticColor.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase SemanticColor.Negative:\n\t\t\treturn \"error\";\n\t\tcase SemanticColor.Critical:\n\t\t\treturn \"alert\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget _designDescription() {\n\t\tif (this.design === SemanticColor.Default) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Tab.i18nBundle.getText(DESIGN_DESCRIPTIONS[this.design]);\n\t}\n\n\tget semanticIconClasses() {\n\t\tconst classes = [\"ui5-tab-semantic-icon\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-semantic-icon--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowClasses() {\n\t\tconst classes = [\"ui5-tab-overflow-item\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-overflow-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.effectiveDisabled) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--disabled\");\n\t\t}\n\n\t\tif (this.selected) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--selectedSubTab\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowState() {\n\t\treturn (this.disabled || this.isSingleClickArea) ? ListItemType.Inactive : ListItemType.Active;\n\t}\n\n\tstatic get stripTemplate() {\n\t\treturn TabInStripTemplate;\n\t}\n\n\tstatic get overflowTemplate() {\n\t\treturn TabInOverflowTemplate;\n\t}\n\n\t_ondragstart(e: DragEvent) {\n\t\tif (e.target instanceof HTMLElement) {\n\t\t\te.target.setAttribute(\"data-moving\", \"\");\n\t\t}\n\t}\n\n\t_ondragend(e: DragEvent) {\n\t\tif (e.target instanceof HTMLElement) {\n\t\t\te.target.removeAttribute(\"data-moving\");\n\t\t}\n\t}\n\n\tcaptureRef(ref: HTMLElement & { realTabReference?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.realTabReference = this;\n\t\t}\n\t}\n\n\tcaptureButtonRef(ref: HTMLElement & { tab?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.tab = this;\n\t\t}\n\t}\n}\n\nTab.define();\n\nTabContainer.registerTabStyles(stripCss);\nTabContainer.registerTabStyles(draggableElementStyles);\nTabContainer.registerTabStyles(overflowCss);\n\nexport default Tab;\nexport type {\n\tTabInStrip,\n\tTabInOverflow,\n};\n"]}
1
+ {"version":3,"file":"Tab.js","sourceRoot":"","sources":["../src/Tab.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 type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.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 type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport type { AccessibilityAttributes } from \"@ui5/webcomponents-base/dist/types.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tTAB_ARIA_DESIGN_POSITIVE,\n\tTAB_ARIA_DESIGN_NEGATIVE,\n\tTAB_ARIA_DESIGN_CRITICAL,\n\tTAB_ARIA_DESIGN_NEUTRAL,\n\tTABCONTAINER_END_OVERFLOW,\n\tTAB_SPLIT_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport SemanticColor from \"./types/SemanticColor.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport TabContainer from \"./TabContainer.js\";\nimport type { TabContainerStripInfo, TabContainerOverflowInfo, ITab } from \"./TabContainer.js\";\nimport type ListItemCustom from \"./ListItemCustom.js\";\n\n// Templates\nimport TabTemplate from \"./TabTemplate.js\";\nimport TabInStripTemplate from \"./TabInStripTemplate.js\";\nimport TabInOverflowTemplate from \"./TabInOverflowTemplate.js\";\n\n// Styles\nimport css from \"./generated/themes/Tab.css.js\";\nimport stripCss from \"./generated/themes/TabInStrip.css.js\";\nimport draggableElementStyles from \"./generated/themes/DraggableElement.css.js\";\nimport overflowCss from \"./generated/themes/TabInOverflow.css.js\";\n\nconst DESIGN_DESCRIPTIONS = {\n\t[SemanticColor.Positive]: TAB_ARIA_DESIGN_POSITIVE,\n\t[SemanticColor.Negative]: TAB_ARIA_DESIGN_NEGATIVE,\n\t[SemanticColor.Neutral]: TAB_ARIA_DESIGN_NEUTRAL,\n\t[SemanticColor.Critical]: TAB_ARIA_DESIGN_CRITICAL,\n};\n\ninterface TabInStrip extends HTMLElement {\n\trealTabReference: Tab;\n}\n\ninterface TabInOverflow extends ListItemCustom {\n\trealTabReference: Tab;\n}\n\n/**\n * @class\n * The `ui5-tab` represents a selectable item inside a `ui5-tabcontainer`.\n * It defines both the item in the tab strip (top part of the `ui5-tabcontainer`) and the\n * content that is presented to the user once the tab is selected.\n * @abstract\n * @constructor\n * @extends UI5Element\n * @implements {ITab}\n * @public\n */\n@customElement({\n\ttag: \"ui5-tab\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: TabTemplate,\n\tstyles: css,\n})\nclass Tab extends UI5Element implements ITabbable, ITab {\n\t/**\n\t * The text to be displayed for the item.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Disabled tabs can't be selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Represents the \"additionalText\" text, which is displayed in the tab. In the cases when in the same time there are tabs with icons and tabs without icons, if a tab has no icon the \"additionalText\" is displayed larger.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Defines the icon source URI to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous built-in icons.\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines the component's design color.\n\t *\n\t * The design is applied to:\n\t *\n\t * - the component icon\n\t * - the `text` when the component overflows\n\t * - the tab selection line\n\t *\n\t * Available designs are: `\"Default\"`, `\"Neutral\"`, `\"Positive\"`, `\"Critical\"` and `\"Negative\"`.\n\t *\n\t * **Note:** The design depends on the current theme.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${SemanticColor}` = \"Default\";\n\n\t/**\n\t * Specifies if the component is selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines if the tab is movable.\n\t *\n\t * @default false\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t@property({ type: Boolean })\n\t_isTopLevelTab = false;\n\n\t@property({ type: Object })\n\t_selectedTabReference?: Tab;\n\n\t/**\n\t * Holds the content associated with this tab.\n\t * @public\n\t */\n\t@slot({\n\t\ttype: Node,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcontent!: Array<Node>;\n\n\t/**\n\t * Defines hierarchies with nested sub tabs.\n\t *\n\t * **Note:** Use `ui5-tab` and `ui5-tab-separator` for the intended design.\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\titems!: Array<ITab>\n\n\t_isInline?: boolean;\n\t_forcedMixedMode?: boolean;\n\t_getElementInStrip?: () => HTMLElement | undefined;\n\t_getElementInOverflow?: () => HTMLElement | undefined;\n\t_forcedPosinset?: number;\n\t_forcedSetsize?: number;\n\t_forcedStyleInOverflow?: Record<string, any>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tset forcedTabIndex(val: string) {\n\t\tthis.getDomRefInStrip()!.setAttribute(\"tabindex\", val);\n\t}\n\n\tget forcedTabIndex() {\n\t\treturn this.getDomRefInStrip()!.getAttribute(\"tabindex\")!;\n\t}\n\n\tget displayText() {\n\t\tlet text = this.text;\n\n\t\tif (this._isInline && this.additionalText) {\n\t\t\ttext += ` (${this.additionalText})`;\n\t\t}\n\n\t\treturn text;\n\t}\n\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\tget stripPresentation() {\n\t\treturn executeTemplate(Tab.stripTemplate, this);\n\t}\n\n\tget overflowPresentation() {\n\t\treturn executeTemplate(Tab.overflowTemplate, this);\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n\n\tget requiresExpandButton() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && this.hasOwnContent;\n\t}\n\n\tget isSingleClickArea() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && !this.hasOwnContent;\n\t}\n\n\tget isTwoClickArea() {\n\t\treturn this.items.length > 0 && this._isTopLevelTab && this.hasOwnContent;\n\t}\n\n\tget isOnSelectedTabPath(): boolean {\n\t\treturn this._selectedTabReference === this || this.tabs.some(subTab => subTab.isOnSelectedTabPath);\n\t}\n\n\tget _effectiveSlotName(): string | undefined {\n\t\treturn this.isOnSelectedTabPath ? this._individualSlot : `disabled-${this._individualSlot}`;\n\t}\n\n\tget _defaultSlotName() {\n\t\treturn this._selectedTabReference === this ? \"\" : \"disabled-slot\";\n\t}\n\n\tget hasOwnContent() {\n\t\treturn willShowContent(this.content);\n\t}\n\n\tget expandBtnAccessibilityAttributes(): Pick<AccessibilityAttributes, \"hasPopup\"> {\n\t\treturn {\n\t\t\thasPopup: \"menu\",\n\t\t};\n\t}\n\n\treceiveStripInfo({\n\t\tgetElementInStrip, posinset, setsize, isInline, isTopLevelTab, mixedMode,\n\t}: TabContainerStripInfo) {\n\t\tthis._getElementInStrip = getElementInStrip;\n\t\tthis._forcedPosinset = posinset;\n\t\tthis._forcedSetsize = setsize;\n\t\tthis._forcedMixedMode = mixedMode;\n\t\tthis._isInline = isInline;\n\t\tthis._isTopLevelTab = !!isTopLevelTab;\n\t}\n\n\treceiveOverflowInfo({ getElementInOverflow, style }: TabContainerOverflowInfo) {\n\t\tthis._getElementInOverflow = getElementInOverflow;\n\t\tthis._forcedStyleInOverflow = style;\n\t}\n\n\t/**\n\t * Returns the DOM reference of the tab that is placed in the header.\n\t *\n\t * **Note:** Tabs, placed in the `items` slot of other tabs are not shown in the header. Calling this method on such tabs will return `undefined`.\n\t *\n\t * **Note:** If you need a DOM ref to the tab content please use the `getDomRef` method.\n\t * @public\n\t * @since 1.0.0-rc.16\n\t */\n\tgetDomRefInStrip(): HTMLElement | undefined {\n\t\treturn this._getElementInStrip?.();\n\t}\n\n\tgetFocusDomRef() {\n\t\tlet focusedDomRef = this._getElementInOverflow?.();\n\n\t\tif (!focusedDomRef) {\n\t\t\tfocusedDomRef = this._getElementInStrip?.();\n\t\t}\n\n\t\treturn focusedDomRef;\n\t}\n\n\tasync focus(focusOptions?: FocusOptions): Promise<void> {\n\t\tawait renderFinished();\n\t\treturn super.focus(focusOptions);\n\t}\n\n\tget isMixedModeTab() {\n\t\treturn !this.icon && this._forcedMixedMode;\n\t}\n\n\tget isTextOnlyTab() {\n\t\treturn !this.icon && !this._forcedMixedMode;\n\t}\n\n\tget isIconTab() {\n\t\treturn !!this.icon;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget effectiveSelected() {\n\t\tconst subItemSelected = this.tabs.some(elem => elem.effectiveSelected);\n\t\treturn this.selected || this._selectedTabReference === this || subItemSelected;\n\t}\n\n\tget effectiveHidden() {\n\t\treturn !this.effectiveSelected;\n\t}\n\n\tget tabs(): Array<Tab> {\n\t\treturn this.items.filter((tab): tab is Tab => !tab.isSeparator);\n\t}\n\n\tget ariaLabelledBy() {\n\t\tconst labels = [];\n\n\t\tif (this.text) {\n\t\t\tlabels.push(`${this._id}-text`);\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tlabels.push(`${this._id}-additionalText`);\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tlabels.push(`${this._id}-icon`);\n\t\t}\n\n\t\tif (this._designDescription) {\n\t\t\tlabels.push(`${this._id}-designDescription`);\n\t\t}\n\n\t\treturn labels.join(\" \");\n\t}\n\n\tget stripClasses() {\n\t\tconst classes = [\"ui5-tab-strip-item\"];\n\n\t\tif (this.effectiveSelected) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--selected\");\n\t\t}\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--disabled\");\n\t\t}\n\n\t\tif (this._isInline) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--inline\");\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withAdditionalText\");\n\t\t}\n\n\t\tif (!this.icon && !this._forcedMixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--textOnly\");\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withIcon\");\n\t\t}\n\n\t\tif (!this.icon && this._forcedMixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--mixedMode\");\n\t\t}\n\n\t\tif (this.design !== SemanticColor.Default) {\n\t\t\tclasses.push(`ui5-tab-strip-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.isSingleClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--singleClickArea`);\n\t\t}\n\n\t\tif (this.isTwoClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--twoClickArea`);\n\t\t}\n\n\t\treturn {\n\t\t\titemClasses: classes.join(\" \"),\n\t\t\tadditionalTextClasses: this.additionalTextClasses,\n\t\t};\n\t}\n\n\tget additionalTextClasses() {\n\t\tconst classes = [];\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText\");\n\t\t}\n\n\t\tif (this.icon && !this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText-hidden\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget expandButtonTitle() {\n\t\treturn Tab.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);\n\t}\n\n\tget _roleDescription() {\n\t\treturn this.items.length > 0 ? Tab.i18nBundle.getText(TAB_SPLIT_ROLE_DESCRIPTION) : undefined;\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this.isSingleClickArea ? \"menu\" : undefined;\n\t}\n\n\tget semanticIconName() {\n\t\tswitch (this.design) {\n\t\tcase SemanticColor.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase SemanticColor.Negative:\n\t\t\treturn \"error\";\n\t\tcase SemanticColor.Critical:\n\t\t\treturn \"alert\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget _designDescription() {\n\t\tif (this.design === SemanticColor.Default) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Tab.i18nBundle.getText(DESIGN_DESCRIPTIONS[this.design]);\n\t}\n\n\tget semanticIconClasses() {\n\t\tconst classes = [\"ui5-tab-semantic-icon\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-semantic-icon--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowClasses() {\n\t\tconst classes = [\"ui5-tab-overflow-item\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-overflow-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.effectiveDisabled) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--disabled\");\n\t\t}\n\n\t\tif (this.selected) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--selectedSubTab\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowState() {\n\t\treturn (this.disabled || this.isSingleClickArea) ? ListItemType.Inactive : ListItemType.Active;\n\t}\n\n\tstatic get stripTemplate() {\n\t\treturn TabInStripTemplate;\n\t}\n\n\tstatic get overflowTemplate() {\n\t\treturn TabInOverflowTemplate;\n\t}\n\n\t_ondragstart(e: DragEvent) {\n\t\tif (e.target instanceof HTMLElement) {\n\t\t\te.target.setAttribute(\"data-moving\", \"\");\n\t\t}\n\t}\n\n\t_ondragend(e: DragEvent) {\n\t\tif (e.target instanceof HTMLElement) {\n\t\t\te.target.removeAttribute(\"data-moving\");\n\t\t}\n\t}\n\n\tcaptureRef(ref: HTMLElement & { realTabReference?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.realTabReference = this;\n\t\t}\n\t}\n\n\tcaptureButtonRef(ref: HTMLElement & { tab?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.tab = this;\n\t\t}\n\t}\n}\n\nTab.define();\n\nTabContainer.registerTabStyles(stripCss);\nTabContainer.registerTabStyles(draggableElementStyles);\nTabContainer.registerTabStyles(overflowCss);\n\nexport default Tab;\nexport type {\n\tTabInStrip,\n\tTabInOverflow,\n};\n"]}
@@ -698,10 +698,10 @@ let TabContainer = TabContainer_1 = class TabContainer extends UI5Element {
698
698
  }
699
699
  _getRootTab(tab) {
700
700
  while (tab?.hasAttribute("ui5-tab")) {
701
- if (tab.parentElement.hasAttribute("ui5-tabcontainer")) {
701
+ if (tab.parentElement?.hasAttribute("ui5-tabcontainer")) {
702
702
  break;
703
703
  }
704
- tab = tab.parentElement;
704
+ tab = (tab.parentElement ?? undefined);
705
705
  }
706
706
  return tab;
707
707
  }