@ui5/webcomponents 2.8.0-rc.2 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (755) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/cypress/specs/AvatarGroup.cy.tsx +36 -0
  3. package/cypress/specs/Dialog.cy.tsx +89 -0
  4. package/cypress/specs/Input.cy.tsx +170 -1
  5. package/cypress/specs/Link.cy.tsx +199 -14
  6. package/cypress/specs/Popover.cy.tsx +176 -0
  7. package/cypress/specs/Select.cy.tsx +15 -0
  8. package/cypress/specs/TabContainer.cy.tsx +29 -0
  9. package/cypress/specs/Table.cy.tsx +5 -24
  10. package/cypress/specs/TableDragAndDrop.cy.tsx +1 -1
  11. package/cypress/specs/TableNavigation.cy.tsx +223 -0
  12. package/cypress/specs/TableNavigationFixedHeader.cy.tsx +199 -0
  13. package/cypress/specs/TableSelection.cy.tsx +37 -0
  14. package/cypress/specs/TableSelections.cy.tsx +296 -0
  15. package/cypress/specs/Text.cy.tsx +19 -3
  16. package/cypress/specs/Tokenizer.cy.tsx +36 -0
  17. package/cypress/specs/Toolbar.cy.tsx +22 -0
  18. package/dist/.tsbuildinfo +1 -1
  19. package/dist/Avatar.d.ts +4 -1
  20. package/dist/Avatar.js.map +1 -1
  21. package/dist/AvatarGroup.js +1 -0
  22. package/dist/AvatarGroup.js.map +1 -1
  23. package/dist/ColorPicker.d.ts +4 -1
  24. package/dist/ColorPicker.js +1 -1
  25. package/dist/ColorPicker.js.map +1 -1
  26. package/dist/ComboBoxItemGroupTemplate.js +2 -2
  27. package/dist/ComboBoxItemGroupTemplate.js.map +1 -1
  28. package/dist/Input.d.ts +1 -1
  29. package/dist/Input.js +10 -5
  30. package/dist/Input.js.map +1 -1
  31. package/dist/List.d.ts +5 -2
  32. package/dist/List.js +24 -2
  33. package/dist/List.js.map +1 -1
  34. package/dist/ListBoxItemGroupTemplate.d.ts +4 -0
  35. package/dist/ListBoxItemGroupTemplate.js +13 -0
  36. package/dist/ListBoxItemGroupTemplate.js.map +1 -0
  37. package/dist/ListItemGroupHeader.d.ts +6 -0
  38. package/dist/ListItemGroupHeader.js +20 -3
  39. package/dist/ListItemGroupHeader.js.map +1 -1
  40. package/dist/ListItemGroupHeaderTemplate.js +3 -3
  41. package/dist/ListItemGroupHeaderTemplate.js.map +1 -1
  42. package/dist/ListItemGroupTemplate.d.ts +1 -3
  43. package/dist/ListItemGroupTemplate.js +5 -8
  44. package/dist/ListItemGroupTemplate.js.map +1 -1
  45. package/dist/ListTemplate.js +1 -1
  46. package/dist/ListTemplate.js.map +1 -1
  47. package/dist/MultiComboBoxItemGroupTemplate.js +2 -2
  48. package/dist/MultiComboBoxItemGroupTemplate.js.map +1 -1
  49. package/dist/Popover.d.ts +0 -6
  50. package/dist/Popover.js +0 -9
  51. package/dist/Popover.js.map +1 -1
  52. package/dist/Popup.js +3 -1
  53. package/dist/Popup.js.map +1 -1
  54. package/dist/Select.d.ts +7 -0
  55. package/dist/Select.js +3 -0
  56. package/dist/Select.js.map +1 -1
  57. package/dist/SelectTemplate.js +2 -2
  58. package/dist/SelectTemplate.js.map +1 -1
  59. package/dist/SuggestionItemGroup.js +2 -0
  60. package/dist/SuggestionItemGroup.js.map +1 -1
  61. package/dist/TabContainer.d.ts +11 -0
  62. package/dist/TabContainer.js +18 -4
  63. package/dist/TabContainer.js.map +1 -1
  64. package/dist/TabContainerTemplate.js +1 -0
  65. package/dist/TabContainerTemplate.js.map +1 -1
  66. package/dist/Table.d.ts +17 -11
  67. package/dist/Table.js +16 -35
  68. package/dist/Table.js.map +1 -1
  69. package/dist/TableCell.d.ts +1 -0
  70. package/dist/TableCell.js +8 -1
  71. package/dist/TableCell.js.map +1 -1
  72. package/dist/TableCellBase.js +2 -2
  73. package/dist/TableCellBase.js.map +1 -1
  74. package/dist/TableCellTemplate.d.ts +2 -0
  75. package/dist/TableCellTemplate.js +6 -0
  76. package/dist/TableCellTemplate.js.map +1 -0
  77. package/dist/TableGrowing.js +4 -4
  78. package/dist/TableGrowing.js.map +1 -1
  79. package/dist/TableGrowingTemplate.d.ts +2 -0
  80. package/dist/TableGrowingTemplate.js +6 -0
  81. package/dist/TableGrowingTemplate.js.map +1 -0
  82. package/dist/TableHeaderCell.d.ts +0 -3
  83. package/dist/TableHeaderCell.js +1 -10
  84. package/dist/TableHeaderCell.js.map +1 -1
  85. package/dist/TableHeaderCellActionBase.js +5 -6
  86. package/dist/TableHeaderCellActionBase.js.map +1 -1
  87. package/dist/TableHeaderCellActionBaseTemplate.d.ts +2 -0
  88. package/dist/TableHeaderCellActionBaseTemplate.js +6 -0
  89. package/dist/TableHeaderCellActionBaseTemplate.js.map +1 -0
  90. package/dist/TableHeaderCellTemplate.d.ts +2 -0
  91. package/dist/TableHeaderCellTemplate.js +19 -0
  92. package/dist/TableHeaderCellTemplate.js.map +1 -0
  93. package/dist/TableHeaderRow.d.ts +2 -3
  94. package/dist/TableHeaderRow.js +1 -6
  95. package/dist/TableHeaderRow.js.map +1 -1
  96. package/dist/TableHeaderRowTemplate.d.ts +2 -0
  97. package/dist/TableHeaderRowTemplate.js +11 -0
  98. package/dist/TableHeaderRowTemplate.js.map +1 -0
  99. package/dist/TableNavigation.js +3 -3
  100. package/dist/TableNavigation.js.map +1 -1
  101. package/dist/TableRow.d.ts +7 -5
  102. package/dist/TableRow.js +4 -14
  103. package/dist/TableRow.js.map +1 -1
  104. package/dist/TableRowAction.d.ts +9 -8
  105. package/dist/TableRowAction.js +9 -11
  106. package/dist/TableRowAction.js.map +1 -1
  107. package/dist/TableRowActionBase.js +3 -6
  108. package/dist/TableRowActionBase.js.map +1 -1
  109. package/dist/TableRowActionBaseTemplate.d.ts +2 -0
  110. package/dist/TableRowActionBaseTemplate.js +13 -0
  111. package/dist/TableRowActionBaseTemplate.js.map +1 -0
  112. package/dist/TableRowBase.d.ts +4 -4
  113. package/dist/TableRowBase.js +10 -10
  114. package/dist/TableRowBase.js.map +1 -1
  115. package/dist/TableRowTemplate.d.ts +2 -0
  116. package/dist/TableRowTemplate.js +17 -0
  117. package/dist/TableRowTemplate.js.map +1 -0
  118. package/dist/TableSelection.d.ts +9 -7
  119. package/dist/TableSelection.js +34 -30
  120. package/dist/TableSelection.js.map +1 -1
  121. package/dist/TableSelectionBase.d.ts +79 -0
  122. package/dist/TableSelectionBase.js +108 -0
  123. package/dist/TableSelectionBase.js.map +1 -0
  124. package/dist/TableSelectionMulti.d.ts +92 -0
  125. package/dist/TableSelectionMulti.js +260 -0
  126. package/dist/TableSelectionMulti.js.map +1 -0
  127. package/dist/TableSelectionSingle.d.ts +49 -0
  128. package/dist/TableSelectionSingle.js +67 -0
  129. package/dist/TableSelectionSingle.js.map +1 -0
  130. package/dist/TableTemplate.d.ts +2 -0
  131. package/dist/TableTemplate.js +18 -0
  132. package/dist/TableTemplate.js.map +1 -0
  133. package/dist/TableUtils.js +1 -1
  134. package/dist/TableUtils.js.map +1 -1
  135. package/dist/Tokenizer.js +2 -2
  136. package/dist/Tokenizer.js.map +1 -1
  137. package/dist/Toolbar.d.ts +3 -0
  138. package/dist/Toolbar.js +4 -1
  139. package/dist/Toolbar.js.map +1 -1
  140. package/dist/ToolbarPopoverTemplate.js +1 -1
  141. package/dist/ToolbarPopoverTemplate.js.map +1 -1
  142. package/dist/bundle.esm.js +2 -0
  143. package/dist/bundle.esm.js.map +1 -1
  144. package/dist/css/themes/Avatar.css +1 -1
  145. package/dist/css/themes/AvatarGroup.css +1 -1
  146. package/dist/css/themes/Bar.css +1 -1
  147. package/dist/css/themes/Breadcrumbs.css +1 -1
  148. package/dist/css/themes/BusyIndicator.css +1 -1
  149. package/dist/css/themes/Button.css +1 -1
  150. package/dist/css/themes/ButtonBadge.css +1 -1
  151. package/dist/css/themes/Calendar.css +1 -1
  152. package/dist/css/themes/CalendarHeader.css +1 -1
  153. package/dist/css/themes/CalendarLegend.css +1 -1
  154. package/dist/css/themes/CalendarLegendItem.css +1 -1
  155. package/dist/css/themes/Card.css +1 -1
  156. package/dist/css/themes/CardHeader.css +1 -1
  157. package/dist/css/themes/Carousel.css +1 -1
  158. package/dist/css/themes/CheckBox.css +1 -1
  159. package/dist/css/themes/ColorPalette.css +1 -1
  160. package/dist/css/themes/ColorPaletteItem.css +1 -1
  161. package/dist/css/themes/ColorPalettePopover.css +1 -1
  162. package/dist/css/themes/ColorPicker.css +1 -1
  163. package/dist/css/themes/ComboBox.css +1 -1
  164. package/dist/css/themes/ComboBoxItem.css +1 -1
  165. package/dist/css/themes/DatePicker.css +1 -1
  166. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  167. package/dist/css/themes/DayPicker.css +1 -1
  168. package/dist/css/themes/Dialog.css +1 -1
  169. package/dist/css/themes/FileUploader.css +1 -1
  170. package/dist/css/themes/Form.css +1 -1
  171. package/dist/css/themes/FormItem.css +1 -1
  172. package/dist/css/themes/FormItemSpan.css +1 -1
  173. package/dist/css/themes/GrowingButton.css +1 -1
  174. package/dist/css/themes/Icon.css +1 -1
  175. package/dist/css/themes/Input.css +1 -1
  176. package/dist/css/themes/InputIcon.css +1 -1
  177. package/dist/css/themes/InputSharedStyles.css +1 -1
  178. package/dist/css/themes/Link.css +1 -1
  179. package/dist/css/themes/List.css +1 -1
  180. package/dist/css/themes/ListItem.css +1 -1
  181. package/dist/css/themes/ListItemBase.css +1 -1
  182. package/dist/css/themes/ListItemCustom.css +1 -1
  183. package/dist/css/themes/ListItemGroup.css +1 -1
  184. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  185. package/dist/css/themes/ListItemIcon.css +1 -1
  186. package/dist/css/themes/Menu.css +1 -1
  187. package/dist/css/themes/MenuItem.css +1 -1
  188. package/dist/css/themes/MessageStrip.css +1 -1
  189. package/dist/css/themes/MonthPicker.css +1 -1
  190. package/dist/css/themes/MultiComboBox.css +1 -1
  191. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  192. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  193. package/dist/css/themes/MultiInput.css +1 -1
  194. package/dist/css/themes/OptionBase.css +1 -1
  195. package/dist/css/themes/Panel.css +1 -1
  196. package/dist/css/themes/Popover.css +1 -1
  197. package/dist/css/themes/PopupsCommon.css +1 -1
  198. package/dist/css/themes/ProgressIndicator.css +1 -1
  199. package/dist/css/themes/RadioButton.css +1 -1
  200. package/dist/css/themes/RangeSlider.css +1 -1
  201. package/dist/css/themes/RatingIndicator.css +1 -1
  202. package/dist/css/themes/ResponsivePopover.css +1 -1
  203. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  204. package/dist/css/themes/SegmentedButton.css +1 -1
  205. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  206. package/dist/css/themes/Select.css +1 -1
  207. package/dist/css/themes/SliderBase.css +1 -1
  208. package/dist/css/themes/SplitButton.css +1 -1
  209. package/dist/css/themes/StepInput.css +1 -1
  210. package/dist/css/themes/SuggestionItem.css +1 -1
  211. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  212. package/dist/css/themes/Switch.css +1 -1
  213. package/dist/css/themes/TabContainer.css +1 -1
  214. package/dist/css/themes/TabInOverflow.css +1 -1
  215. package/dist/css/themes/TabInStrip.css +1 -1
  216. package/dist/css/themes/TabSemanticIcon.css +1 -1
  217. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  218. package/dist/css/themes/Table.css +1 -1
  219. package/dist/css/themes/TableCell.css +1 -1
  220. package/dist/css/themes/TableCellBase.css +1 -1
  221. package/dist/css/themes/TableGrowing.css +1 -1
  222. package/dist/css/themes/TableHeaderRow.css +1 -1
  223. package/dist/css/themes/TableRow.css +1 -1
  224. package/dist/css/themes/TableRowActionBase.css +1 -1
  225. package/dist/css/themes/TableRowBase.css +1 -1
  226. package/dist/css/themes/Tag.css +1 -1
  227. package/dist/css/themes/Text.css +1 -1
  228. package/dist/css/themes/TextArea.css +1 -1
  229. package/dist/css/themes/TimePicker.css +1 -1
  230. package/dist/css/themes/Toast.css +1 -1
  231. package/dist/css/themes/ToggleButton.css +1 -1
  232. package/dist/css/themes/Token.css +1 -1
  233. package/dist/css/themes/Tokenizer.css +1 -1
  234. package/dist/css/themes/TokenizerPopover.css +1 -1
  235. package/dist/css/themes/Toolbar.css +1 -1
  236. package/dist/css/themes/ToolbarPopover.css +1 -1
  237. package/dist/css/themes/TreeItem.css +1 -1
  238. package/dist/css/themes/ValueStateMessage.css +1 -1
  239. package/dist/css/themes/YearPicker.css +1 -1
  240. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  241. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  242. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  243. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  244. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  245. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  246. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  247. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  248. package/dist/custom-elements-internal.json +762 -31
  249. package/dist/custom-elements.json +725 -31
  250. package/dist/features/InputSuggestions.js +0 -2
  251. package/dist/features/InputSuggestions.js.map +1 -1
  252. package/dist/features/InputSuggestionsTemplate.js +2 -1
  253. package/dist/features/InputSuggestionsTemplate.js.map +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  266. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  267. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  268. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  269. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  270. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  271. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  272. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  273. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  274. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  275. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  276. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  277. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  278. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  279. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  280. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  281. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  282. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  283. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  284. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  285. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  286. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  287. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  288. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  289. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  290. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  291. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  292. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  293. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  294. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  295. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  296. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  297. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  298. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  299. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  300. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  301. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  302. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  303. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  304. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  305. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  306. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  307. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  308. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  309. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  310. package/dist/generated/i18n/i18n-defaults.d.ts +4 -1
  311. package/dist/generated/i18n/i18n-defaults.js +4 -1
  312. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  313. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  314. package/dist/generated/themes/Avatar.css.js +1 -1
  315. package/dist/generated/themes/Avatar.css.js.map +1 -1
  316. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  317. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  318. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  319. package/dist/generated/themes/Bar.css.d.ts +1 -1
  320. package/dist/generated/themes/Bar.css.js +1 -1
  321. package/dist/generated/themes/Bar.css.js.map +1 -1
  322. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  323. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  324. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  325. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  326. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  327. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  328. package/dist/generated/themes/Button.css.d.ts +1 -1
  329. package/dist/generated/themes/Button.css.js +1 -1
  330. package/dist/generated/themes/Button.css.js.map +1 -1
  331. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  332. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  333. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  334. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  335. package/dist/generated/themes/Calendar.css.js +1 -1
  336. package/dist/generated/themes/Calendar.css.js.map +1 -1
  337. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  338. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  339. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  340. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  341. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  342. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  343. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  344. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  345. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  346. package/dist/generated/themes/Card.css.d.ts +1 -1
  347. package/dist/generated/themes/Card.css.js +1 -1
  348. package/dist/generated/themes/Card.css.js.map +1 -1
  349. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  350. package/dist/generated/themes/CardHeader.css.js +1 -1
  351. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  352. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  353. package/dist/generated/themes/Carousel.css.js +1 -1
  354. package/dist/generated/themes/Carousel.css.js.map +1 -1
  355. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  356. package/dist/generated/themes/CheckBox.css.js +1 -1
  357. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  358. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  359. package/dist/generated/themes/ColorPalette.css.js +1 -1
  360. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  361. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  362. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  363. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  364. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  365. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  366. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  367. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  368. package/dist/generated/themes/ColorPicker.css.js +1 -1
  369. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  370. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  371. package/dist/generated/themes/ComboBox.css.js +1 -1
  372. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  373. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  374. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  375. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  376. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  377. package/dist/generated/themes/DatePicker.css.js +1 -1
  378. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  379. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  380. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  381. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  382. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  383. package/dist/generated/themes/DayPicker.css.js +1 -1
  384. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  385. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  386. package/dist/generated/themes/Dialog.css.js +1 -1
  387. package/dist/generated/themes/Dialog.css.js.map +1 -1
  388. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  389. package/dist/generated/themes/FileUploader.css.js +1 -1
  390. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  391. package/dist/generated/themes/Form.css.d.ts +1 -1
  392. package/dist/generated/themes/Form.css.js +1 -1
  393. package/dist/generated/themes/Form.css.js.map +1 -1
  394. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  395. package/dist/generated/themes/FormItem.css.js +1 -1
  396. package/dist/generated/themes/FormItem.css.js.map +1 -1
  397. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  398. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  399. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  400. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  401. package/dist/generated/themes/GrowingButton.css.js +1 -1
  402. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  403. package/dist/generated/themes/Icon.css.d.ts +1 -1
  404. package/dist/generated/themes/Icon.css.js +1 -1
  405. package/dist/generated/themes/Icon.css.js.map +1 -1
  406. package/dist/generated/themes/Input.css.d.ts +1 -1
  407. package/dist/generated/themes/Input.css.js +1 -1
  408. package/dist/generated/themes/Input.css.js.map +1 -1
  409. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  410. package/dist/generated/themes/InputIcon.css.js +1 -1
  411. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  412. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  413. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  414. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  415. package/dist/generated/themes/Link.css.d.ts +1 -1
  416. package/dist/generated/themes/Link.css.js +1 -1
  417. package/dist/generated/themes/Link.css.js.map +1 -1
  418. package/dist/generated/themes/List.css.d.ts +1 -1
  419. package/dist/generated/themes/List.css.js +1 -1
  420. package/dist/generated/themes/List.css.js.map +1 -1
  421. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  422. package/dist/generated/themes/ListItem.css.js +1 -1
  423. package/dist/generated/themes/ListItem.css.js.map +1 -1
  424. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  425. package/dist/generated/themes/ListItemBase.css.js +1 -1
  426. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  427. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  428. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  429. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  430. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  431. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  432. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  433. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  434. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  435. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  436. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  437. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  438. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  439. package/dist/generated/themes/Menu.css.d.ts +1 -1
  440. package/dist/generated/themes/Menu.css.js +1 -1
  441. package/dist/generated/themes/Menu.css.js.map +1 -1
  442. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  443. package/dist/generated/themes/MenuItem.css.js +1 -1
  444. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  445. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  446. package/dist/generated/themes/MessageStrip.css.js +1 -1
  447. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  448. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  449. package/dist/generated/themes/MonthPicker.css.js +1 -1
  450. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  451. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  452. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  453. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  454. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  455. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  456. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  457. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  458. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  459. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  460. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  461. package/dist/generated/themes/MultiInput.css.js +1 -1
  462. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  463. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  464. package/dist/generated/themes/OptionBase.css.js +1 -1
  465. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  466. package/dist/generated/themes/Panel.css.d.ts +1 -1
  467. package/dist/generated/themes/Panel.css.js +1 -1
  468. package/dist/generated/themes/Panel.css.js.map +1 -1
  469. package/dist/generated/themes/Popover.css.d.ts +1 -1
  470. package/dist/generated/themes/Popover.css.js +1 -1
  471. package/dist/generated/themes/Popover.css.js.map +1 -1
  472. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  473. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  474. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  475. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  476. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  477. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  478. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  479. package/dist/generated/themes/RadioButton.css.js +1 -1
  480. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  481. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  482. package/dist/generated/themes/RangeSlider.css.js +1 -1
  483. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  484. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  485. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  486. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  487. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  488. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  489. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  490. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  491. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  492. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  493. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  494. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  495. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  496. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  497. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  498. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  499. package/dist/generated/themes/Select.css.d.ts +1 -1
  500. package/dist/generated/themes/Select.css.js +1 -1
  501. package/dist/generated/themes/Select.css.js.map +1 -1
  502. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  503. package/dist/generated/themes/SliderBase.css.js +1 -1
  504. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  505. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  506. package/dist/generated/themes/SplitButton.css.js +1 -1
  507. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  508. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  509. package/dist/generated/themes/StepInput.css.js +1 -1
  510. package/dist/generated/themes/StepInput.css.js.map +1 -1
  511. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  512. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  513. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  514. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  515. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  516. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  517. package/dist/generated/themes/Switch.css.d.ts +1 -1
  518. package/dist/generated/themes/Switch.css.js +1 -1
  519. package/dist/generated/themes/Switch.css.js.map +1 -1
  520. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  521. package/dist/generated/themes/TabContainer.css.js +1 -1
  522. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  523. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  524. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  525. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  526. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  527. package/dist/generated/themes/TabInStrip.css.js +1 -1
  528. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  529. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  530. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  531. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  532. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  533. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  534. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  535. package/dist/generated/themes/Table.css.d.ts +1 -1
  536. package/dist/generated/themes/Table.css.js +1 -1
  537. package/dist/generated/themes/Table.css.js.map +1 -1
  538. package/dist/generated/themes/TableCell.css.d.ts +1 -1
  539. package/dist/generated/themes/TableCell.css.js +1 -1
  540. package/dist/generated/themes/TableCell.css.js.map +1 -1
  541. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  542. package/dist/generated/themes/TableCellBase.css.js +1 -1
  543. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  544. package/dist/generated/themes/TableGrowing.css.d.ts +1 -1
  545. package/dist/generated/themes/TableGrowing.css.js +1 -1
  546. package/dist/generated/themes/TableGrowing.css.js.map +1 -1
  547. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  548. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  549. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  550. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  551. package/dist/generated/themes/TableRow.css.js +1 -1
  552. package/dist/generated/themes/TableRow.css.js.map +1 -1
  553. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  554. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  555. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  556. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  557. package/dist/generated/themes/TableRowBase.css.js +1 -1
  558. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  559. package/dist/generated/themes/Tag.css.d.ts +1 -1
  560. package/dist/generated/themes/Tag.css.js +1 -1
  561. package/dist/generated/themes/Tag.css.js.map +1 -1
  562. package/dist/generated/themes/Text.css.d.ts +1 -1
  563. package/dist/generated/themes/Text.css.js +1 -1
  564. package/dist/generated/themes/Text.css.js.map +1 -1
  565. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  566. package/dist/generated/themes/TextArea.css.js +1 -1
  567. package/dist/generated/themes/TextArea.css.js.map +1 -1
  568. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  569. package/dist/generated/themes/TimePicker.css.js +1 -1
  570. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  571. package/dist/generated/themes/Toast.css.d.ts +1 -1
  572. package/dist/generated/themes/Toast.css.js +1 -1
  573. package/dist/generated/themes/Toast.css.js.map +1 -1
  574. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  575. package/dist/generated/themes/ToggleButton.css.js +1 -1
  576. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  577. package/dist/generated/themes/Token.css.d.ts +1 -1
  578. package/dist/generated/themes/Token.css.js +1 -1
  579. package/dist/generated/themes/Token.css.js.map +1 -1
  580. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  581. package/dist/generated/themes/Tokenizer.css.js +1 -1
  582. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  583. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  584. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  585. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  586. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  587. package/dist/generated/themes/Toolbar.css.js +1 -1
  588. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  589. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  590. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  591. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  592. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  593. package/dist/generated/themes/TreeItem.css.js +1 -1
  594. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  595. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  596. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  597. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  598. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  599. package/dist/generated/themes/YearPicker.css.js +1 -1
  600. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  601. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  602. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  603. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  604. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  605. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  606. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  607. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  608. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  609. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  610. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  611. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  612. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  613. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  614. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  615. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  616. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  617. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  618. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  619. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  620. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  621. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  622. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  623. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  624. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  625. package/dist/popup-utils/PopoverRegistry.js +2 -2
  626. package/dist/popup-utils/PopoverRegistry.js.map +1 -1
  627. package/dist/types/ListItemAccessibleRole.d.ts +5 -0
  628. package/dist/types/ListItemAccessibleRole.js +5 -0
  629. package/dist/types/ListItemAccessibleRole.js.map +1 -1
  630. package/dist/types/TableSelectionMode.d.ts +1 -0
  631. package/dist/types/TableSelectionMode.js +1 -0
  632. package/dist/types/TableSelectionMode.js.map +1 -1
  633. package/dist/vscode.html-custom-data.json +51 -10
  634. package/dist/web-types.json +99 -23
  635. package/package.json +9 -9
  636. package/src/ComboBoxItemGroupTemplate.tsx +2 -2
  637. package/src/ListBoxItemGroupTemplate.tsx +33 -0
  638. package/src/ListItemGroupHeaderTemplate.tsx +5 -3
  639. package/src/ListItemGroupTemplate.tsx +21 -19
  640. package/src/ListTemplate.tsx +1 -0
  641. package/src/MultiComboBoxItemGroupTemplate.tsx +2 -2
  642. package/src/SelectTemplate.tsx +2 -0
  643. package/src/TabContainerTemplate.tsx +1 -0
  644. package/src/TableCellTemplate.tsx +15 -0
  645. package/src/TableGrowingTemplate.tsx +23 -0
  646. package/src/TableHeaderCellActionBaseTemplate.tsx +13 -0
  647. package/src/TableHeaderCellTemplate.tsx +27 -0
  648. package/src/TableHeaderRowTemplate.tsx +44 -0
  649. package/src/TableRowActionBaseTemplate.tsx +28 -0
  650. package/src/TableRowTemplate.tsx +76 -0
  651. package/src/TableTemplate.tsx +76 -0
  652. package/src/ToolbarPopoverTemplate.tsx +1 -0
  653. package/src/features/InputSuggestionsTemplate.tsx +2 -0
  654. package/src/i18n/messagebundle.properties +9 -0
  655. package/src/i18n/messagebundle_ar.properties +2 -0
  656. package/src/i18n/messagebundle_bg.properties +2 -0
  657. package/src/i18n/messagebundle_ca.properties +2 -0
  658. package/src/i18n/messagebundle_cnr.properties +2 -0
  659. package/src/i18n/messagebundle_cs.properties +2 -0
  660. package/src/i18n/messagebundle_cy.properties +2 -0
  661. package/src/i18n/messagebundle_da.properties +2 -0
  662. package/src/i18n/messagebundle_de.properties +2 -0
  663. package/src/i18n/messagebundle_el.properties +2 -0
  664. package/src/i18n/messagebundle_en.properties +2 -0
  665. package/src/i18n/messagebundle_en_GB.properties +2 -0
  666. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
  667. package/src/i18n/messagebundle_es.properties +2 -0
  668. package/src/i18n/messagebundle_es_MX.properties +2 -0
  669. package/src/i18n/messagebundle_et.properties +2 -0
  670. package/src/i18n/messagebundle_fi.properties +2 -0
  671. package/src/i18n/messagebundle_fr.properties +2 -0
  672. package/src/i18n/messagebundle_fr_CA.properties +2 -0
  673. package/src/i18n/messagebundle_hi.properties +2 -0
  674. package/src/i18n/messagebundle_hr.properties +2 -0
  675. package/src/i18n/messagebundle_hu.properties +2 -0
  676. package/src/i18n/messagebundle_id.properties +2 -0
  677. package/src/i18n/messagebundle_it.properties +2 -0
  678. package/src/i18n/messagebundle_iw.properties +2 -0
  679. package/src/i18n/messagebundle_ja.properties +2 -0
  680. package/src/i18n/messagebundle_kk.properties +2 -0
  681. package/src/i18n/messagebundle_ko.properties +2 -0
  682. package/src/i18n/messagebundle_lt.properties +2 -0
  683. package/src/i18n/messagebundle_lv.properties +2 -0
  684. package/src/i18n/messagebundle_mk.properties +2 -0
  685. package/src/i18n/messagebundle_ms.properties +2 -0
  686. package/src/i18n/messagebundle_nl.properties +2 -0
  687. package/src/i18n/messagebundle_no.properties +2 -0
  688. package/src/i18n/messagebundle_pl.properties +2 -0
  689. package/src/i18n/messagebundle_pt.properties +2 -0
  690. package/src/i18n/messagebundle_pt_PT.properties +2 -0
  691. package/src/i18n/messagebundle_ro.properties +2 -0
  692. package/src/i18n/messagebundle_ru.properties +2 -0
  693. package/src/i18n/messagebundle_sh.properties +2 -0
  694. package/src/i18n/messagebundle_sk.properties +2 -0
  695. package/src/i18n/messagebundle_sl.properties +2 -0
  696. package/src/i18n/messagebundle_sr.properties +2 -0
  697. package/src/i18n/messagebundle_sv.properties +2 -0
  698. package/src/i18n/messagebundle_th.properties +2 -0
  699. package/src/i18n/messagebundle_tr.properties +2 -0
  700. package/src/i18n/messagebundle_uk.properties +2 -0
  701. package/src/i18n/messagebundle_vi.properties +2 -0
  702. package/src/i18n/messagebundle_zh_CN.properties +2 -0
  703. package/src/i18n/messagebundle_zh_TW.properties +2 -0
  704. package/src/themes/Avatar.css +51 -2
  705. package/src/themes/Menu.css +7 -0
  706. package/src/themes/PopupsCommon.css +7 -4
  707. package/src/themes/TabContainer.css +4 -0
  708. package/src/themes/TableCell.css +5 -1
  709. package/src/themes/TableCellBase.css +1 -1
  710. package/src/themes/TableGrowing.css +4 -1
  711. package/src/themes/Text.css +9 -5
  712. package/src/themes/Toast.css +1 -1
  713. package/src/themes/Token.css +10 -10
  714. package/src/themes/base/Avatar-parameters.css +1 -1
  715. package/src/themes/base/Toast-parameters.css +2 -2
  716. package/src/themes/sap_horizon/Avatar-parameters.css +3 -2
  717. package/src/themes/sap_horizon/Switch-parameters.css +7 -7
  718. package/src/themes/sap_horizon_dark/Avatar-parameters.css +2 -1
  719. package/src/themes/sap_horizon_dark/Switch-parameters.css +7 -7
  720. package/src/themes/sap_horizon_hcb/Avatar-parameters.css +3 -2
  721. package/src/themes/sap_horizon_hcb/Switch-parameters.css +7 -28
  722. package/src/themes/sap_horizon_hcw/Avatar-parameters.css +3 -2
  723. package/src/themes/sap_horizon_hcw/Switch-parameters.css +7 -7
  724. package/dist/SuggestionItemGroupTemplate.d.ts +0 -2
  725. package/dist/SuggestionItemGroupTemplate.js +0 -5
  726. package/dist/SuggestionItemGroupTemplate.js.map +0 -1
  727. package/dist/generated/templates/TableGrowingTemplate.lit.d.ts +0 -3
  728. package/dist/generated/templates/TableGrowingTemplate.lit.js +0 -8
  729. package/dist/generated/templates/TableGrowingTemplate.lit.js.map +0 -1
  730. package/dist/generated/templates/TableHeaderCellActionBaseTemplate.lit.d.ts +0 -3
  731. package/dist/generated/templates/TableHeaderCellActionBaseTemplate.lit.js +0 -7
  732. package/dist/generated/templates/TableHeaderCellActionBaseTemplate.lit.js.map +0 -1
  733. package/dist/generated/templates/TableHeaderCellTemplate.lit.d.ts +0 -3
  734. package/dist/generated/templates/TableHeaderCellTemplate.lit.js +0 -8
  735. package/dist/generated/templates/TableHeaderCellTemplate.lit.js.map +0 -1
  736. package/dist/generated/templates/TableHeaderRowTemplate.lit.d.ts +0 -3
  737. package/dist/generated/templates/TableHeaderRowTemplate.lit.js +0 -12
  738. package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +0 -1
  739. package/dist/generated/templates/TableRowActionBaseTemplate.lit.d.ts +0 -3
  740. package/dist/generated/templates/TableRowActionBaseTemplate.lit.js +0 -11
  741. package/dist/generated/templates/TableRowActionBaseTemplate.lit.js.map +0 -1
  742. package/dist/generated/templates/TableRowTemplate.lit.d.ts +0 -3
  743. package/dist/generated/templates/TableRowTemplate.lit.js +0 -18
  744. package/dist/generated/templates/TableRowTemplate.lit.js.map +0 -1
  745. package/dist/generated/templates/TableTemplate.lit.d.ts +0 -3
  746. package/dist/generated/templates/TableTemplate.lit.js +0 -12
  747. package/dist/generated/templates/TableTemplate.lit.js.map +0 -1
  748. package/src/SuggestionItemGroupTemplate.tsx +0 -6
  749. package/src/Table.hbs +0 -63
  750. package/src/TableGrowing.hbs +0 -17
  751. package/src/TableHeaderCell.hbs +0 -5
  752. package/src/TableHeaderCellActionBase.hbs +0 -6
  753. package/src/TableHeaderRow.hbs +0 -28
  754. package/src/TableRow.hbs +0 -55
  755. package/src/TableRowActionBase.hbs +0 -16
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderCell.js","sourceRoot":"","sources":["../src/TableHeaderCell.ts"],"names":[],"mappings":"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","sourcesContent":["import { customElement, property, slot } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport TableHeaderCellTemplate from \"./generated/templates/TableHeaderCellTemplate.lit.js\";\nimport TableHeaderCellStyles from \"./generated/themes/TableHeaderCell.css.js\";\nimport Icon from \"./Icon.js\";\nimport SortOrder from \"@ui5/webcomponents-base/dist/types/SortOrder.js\";\nimport type TableHeaderCellActionBase from \"./TableHeaderCellActionBase.js\";\nimport \"@ui5/webcomponents-icons/dist/sort-ascending.js\";\nimport \"@ui5/webcomponents-icons/dist/sort-descending.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-header-cell` component represents a column in the `ui5-table`.\n *\n * As it is tightly coupled to the `ui5-table`, it should only be used in the `ui5-table-header-row`\n * to ensure correct layout and design.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";`\n *\n * @constructor\n * @extends TableCellBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-header-cell\",\n\tstyles: [TableCellBase.styles, TableHeaderCellStyles],\n\ttemplate: TableHeaderCellTemplate,\n\tdependencies: [Icon],\n})\nclass TableHeaderCell extends TableCellBase {\n\t/**\n\t * Defines the width of column.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\twidth = \"auto\";\n\n\t/**\n \t * Defines the minimum width of the column.\n\t *\n\t * If the table is in `Popin` mode and the minimum width does not fit anymore,\n\t * the column will move into the popin.\n\t *\n\t * **Note:** If `minWidth` has the `auto` value, the table ensures that the column is wider than at least `3rem`.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\tminWidth = \"auto\";\n\n\t/**\n\t * Defines the maximum width of the column.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\tmaxWidth = \"auto\";\n\n\t/**\n\t * Defines the importance of the column.\n\t *\n\t * This property affects the popin behaviour.\n\t * Columns with higher importance will move into the popin area later then less important\n\t * columns.\n\t *\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\timportance = 0;\n\n\t/**\n\t * The text for the column when it pops in.\n\t *\n\t * @default undefined\n\t * @since 2.7.0\n\t * @public\n\t */\n\t@property()\n\tpopinText?: string;\n\n\t/**\n\t * Defines the sort indicator of the column.\n\t *\n\t * @default \"None\"\n\t * @since 2.8.0\n\t * @public\n\t */\n\t@property()\n\tsortIndicator: `${SortOrder}` = \"None\";\n\n\t/**\n\t * Defines if the column is hidden in the popin.\n\t *\n\t * **Note:** Please be aware that hiding the column in the popin might lead to accessibility issues as\n\t * users might not be able to access the content of the column on small screens.\n\t *\n\t * @default false\n\t * @since 2.8.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tpopinHidden: boolean = false;\n\n\t/**\n\t * Defines the action of the column.\n\t *\n\t * **Note:** While multiple actions are technically possible, this is not supported.\n\t *\n\t * @public\n\t * @since 2.8.0\n\t */\n\t@slot()\n\taction!: Array<TableHeaderCellActionBase>;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_popin = false;\n\n\tprotected ariaRole: string = \"columnheader\";\n\t_popinWidth: number = 0;\n\n\tonEnterDOM() {\n\t\tsuper.onEnterDOM();\n\t\tthis.style.minWidth = this.minWidth;\n\t\tthis.style.maxWidth = this.maxWidth;\n\t\tthis.style.width = this.width;\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this._individualSlot) {\n\t\t\t// overwrite setting of TableCellBase so that the TableHeaderCell always uses the slot variable\n\t\t\tthis.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;\n\t\t}\n\t\tif (this.sortIndicator !== SortOrder.None) {\n\t\t\tthis.setAttribute(\"aria-sort\", this.sortIndicator.toLowerCase());\n\t\t} else if (this.hasAttribute(\"aria-sort\")) {\n\t\t\tthis.removeAttribute(\"aria-sort\");\n\t\t}\n\t}\n\n\tget _sortIcon() {\n\t\tif (this.sortIndicator !== SortOrder.None) {\n\t\t\treturn `sort-${this.sortIndicator.toLowerCase()}`;\n\t\t}\n\t}\n}\n\nTableHeaderCell.define();\n\nexport default TableHeaderCell;\n"]}
1
+ {"version":3,"file":"TableHeaderCell.js","sourceRoot":"","sources":["../src/TableHeaderCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AACnE,OAAO,qBAAqB,MAAM,2CAA2C,CAAC;AAC9E,OAAO,SAAS,MAAM,iDAAiD,CAAC;AAGxE;;;;;;;;;;;;;;;;;;;GAmBG;AAMH,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,aAAa;IAA3C;;QACC;;;;;WAKG;QAEH,UAAK,GAAG,MAAM,CAAC;QAEf;;;;;;;;;;WAUG;QAEH,aAAQ,GAAG,MAAM,CAAC;QAElB;;;;;WAKG;QAEH,aAAQ,GAAG,MAAM,CAAC;QAElB;;;;;;;;;WASG;QAEH,eAAU,GAAG,CAAC,CAAC;QAYf;;;;;;WAMG;QAEH,kBAAa,GAAmB,MAAM,CAAC;QAEvC;;;;;;;;;WASG;QAEH,gBAAW,GAAY,KAAK,CAAC;QAc7B,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,cAAc,CAAC;QAC5C,gBAAW,GAAW,CAAC,CAAC;IAqBzB,CAAC;IAnBA,UAAU;QACT,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,+FAA+F;YAC/F,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,0BAA0B,IAAI,CAAC,eAAe,GAAG,CAAC;QAC/E,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;CACD,CAAA;AA3GA;IADC,QAAQ,EAAE;8CACI;AAcf;IADC,QAAQ,EAAE;iDACO;AASlB;IADC,QAAQ,EAAE;iDACO;AAalB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;mDACZ;AAUf;IADC,QAAQ,EAAE;kDACQ;AAUnB;IADC,QAAQ,EAAE;sDAC4B;AAavC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;oDACC;AAW7B;IADC,IAAI,EAAE;+CACmC;AAG1C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;+CAChC;AA3FV,eAAe;IALpB,aAAa,CAAC;QACd,GAAG,EAAE,uBAAuB;QAC5B,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,qBAAqB,CAAC;QACrD,QAAQ,EAAE,uBAAuB;KACjC,CAAC;GACI,eAAe,CAmHpB;AAED,eAAe,CAAC,MAAM,EAAE,CAAC;AAEzB,eAAe,eAAe,CAAC","sourcesContent":["import { customElement, property, slot } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport TableHeaderCellTemplate from \"./TableHeaderCellTemplate.js\";\nimport TableHeaderCellStyles from \"./generated/themes/TableHeaderCell.css.js\";\nimport SortOrder from \"@ui5/webcomponents-base/dist/types/SortOrder.js\";\nimport type TableHeaderCellActionBase from \"./TableHeaderCellActionBase.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-header-cell` component represents a column in the `ui5-table`.\n *\n * As it is tightly coupled to the `ui5-table`, it should only be used in the `ui5-table-header-row`\n * to ensure correct layout and design.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";`\n *\n * @constructor\n * @extends TableCellBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-header-cell\",\n\tstyles: [TableCellBase.styles, TableHeaderCellStyles],\n\ttemplate: TableHeaderCellTemplate,\n})\nclass TableHeaderCell extends TableCellBase {\n\t/**\n\t * Defines the width of column.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\twidth = \"auto\";\n\n\t/**\n \t * Defines the minimum width of the column.\n\t *\n\t * If the table is in `Popin` mode and the minimum width does not fit anymore,\n\t * the column will move into the popin.\n\t *\n\t * **Note:** If `minWidth` has the `auto` value, the table ensures that the column is wider than at least `3rem`.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\tminWidth = \"auto\";\n\n\t/**\n\t * Defines the maximum width of the column.\n\t *\n\t * @default \"auto\"\n\t * @public\n\t */\n\t@property()\n\tmaxWidth = \"auto\";\n\n\t/**\n\t * Defines the importance of the column.\n\t *\n\t * This property affects the popin behaviour.\n\t * Columns with higher importance will move into the popin area later then less important\n\t * columns.\n\t *\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\timportance = 0;\n\n\t/**\n\t * The text for the column when it pops in.\n\t *\n\t * @default undefined\n\t * @since 2.7.0\n\t * @public\n\t */\n\t@property()\n\tpopinText?: string;\n\n\t/**\n\t * Defines the sort indicator of the column.\n\t *\n\t * @default \"None\"\n\t * @since 2.8.0\n\t * @public\n\t */\n\t@property()\n\tsortIndicator: `${SortOrder}` = \"None\";\n\n\t/**\n\t * Defines if the column is hidden in the popin.\n\t *\n\t * **Note:** Please be aware that hiding the column in the popin might lead to accessibility issues as\n\t * users might not be able to access the content of the column on small screens.\n\t *\n\t * @default false\n\t * @since 2.8.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tpopinHidden: boolean = false;\n\n\t/**\n\t * Defines the action of the column.\n\t *\n\t * **Note:** While multiple actions are technically possible, this is not supported.\n\t *\n\t * @public\n\t * @since 2.8.0\n\t */\n\t@slot()\n\taction!: Array<TableHeaderCellActionBase>;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_popin = false;\n\n\tprotected ariaRole: string = \"columnheader\";\n\t_popinWidth: number = 0;\n\n\tonEnterDOM() {\n\t\tsuper.onEnterDOM();\n\t\tthis.style.minWidth = this.minWidth;\n\t\tthis.style.maxWidth = this.maxWidth;\n\t\tthis.style.width = this.width;\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this._individualSlot) {\n\t\t\t// overwrite setting of TableCellBase so that the TableHeaderCell always uses the slot variable\n\t\t\tthis.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;\n\t\t}\n\t\tif (this.sortIndicator !== SortOrder.None) {\n\t\t\tthis.setAttribute(\"aria-sort\", this.sortIndicator.toLowerCase());\n\t\t} else if (this.hasAttribute(\"aria-sort\")) {\n\t\t\tthis.removeAttribute(\"aria-sort\");\n\t\t}\n\t}\n}\n\nTableHeaderCell.define();\n\nexport default TableHeaderCell;\n"]}
@@ -6,10 +6,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
8
8
  import { customElement, eventStrict } from "@ui5/webcomponents-base/dist/decorators.js";
9
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
10
- import TableHeaderCellActionBaseTemplate from "./generated/templates/TableHeaderCellActionBaseTemplate.lit.js";
9
+ import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
10
+ import TableHeaderCellActionBaseTemplate from "./TableHeaderCellActionBaseTemplate.js";
11
11
  import TableHeaderCellActionBaseStyles from "./generated/themes/TableHeaderCellActionBase.css.js";
12
- import Button from "./Button.js";
13
12
  /**
14
13
  * Fired when a header cell action is clicked.
15
14
  *
@@ -22,7 +21,8 @@ let TableHeaderCellActionBase = class TableHeaderCellActionBase extends UI5Eleme
22
21
  this.toggleAttribute("_popin", !this.parentElement);
23
22
  }
24
23
  _onClick(e) {
25
- const action = this.parentElement ? this : this.getRootNode().host._headerCell.action[0];
24
+ // Retrieve the real action (if parent is header cell this instance is fine, otherwise retrieve it from the header cell)
25
+ const action = this.parentElement?.hasAttribute("ui5-table-header-cell") ? this : this.getRootNode().host._headerCell.action[0];
26
26
  action.fireDecoratorEvent("click", { targetRef: e.target });
27
27
  e.stopPropagation();
28
28
  }
@@ -48,10 +48,9 @@ TableHeaderCellActionBase = __decorate([
48
48
  */
49
49
  ,
50
50
  customElement({
51
- renderer: litRender,
51
+ renderer: jsxRenderer,
52
52
  styles: TableHeaderCellActionBaseStyles,
53
53
  template: TableHeaderCellActionBaseTemplate,
54
- dependencies: [Button],
55
54
  })
56
55
  ], TableHeaderCellActionBase);
57
56
  export default TableHeaderCellActionBase;
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderCellActionBase.js","sourceRoot":"","sources":["../src/TableHeaderCellActionBase.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,iCAAiC,MAAM,gEAAgE,CAAC;AAC/G,OAAO,+BAA+B,MAAM,qDAAqD,CAAC;AAClG,OAAO,MAAM,MAAM,aAAa,CAAC;AAcjC;;;;;;GAMG;AAoBH,IAAe,yBAAyB,GAAxC,MAAe,yBAA0B,SAAQ,UAAU;IAU1D,iBAAiB;QAChB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,QAAQ,CAAC,CAAa;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAG,IAAI,CAAC,WAAW,EAAiB,CAAC,IAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAS,CAAC;QAChI,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAqB,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,eAAe,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC;IAClC,CAAC;CACD,CAAA;AA3Bc,yBAAyB;IAnBvC,WAAW,CAAC,OAAO,EAAE;QACrB,OAAO,EAAE,KAAK;KACd,CAAC;IAEF;;;;;;;;OAQG;;IACF,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,+BAA+B;QACvC,QAAQ,EAAE,iCAAiC;QAC3C,YAAY,EAAE,CAAC,MAAM,CAAC;KACtB,CAAC;GACa,yBAAyB,CA2BvC;AAED,eAAe,yBAAyB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { customElement, eventStrict } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport TableHeaderCellActionBaseTemplate from \"./generated/templates/TableHeaderCellActionBaseTemplate.lit.js\";\nimport TableHeaderCellActionBaseStyles from \"./generated/themes/TableHeaderCellActionBase.css.js\";\nimport Button from \"./Button.js\";\nimport type TableCell from \"./TableCell.js\";\n\n/**\n * Fired when a header cell action is clicked.\n *\n * @param {HTMLElement} targetRef The reference to the element that triggered the event\n * @public\n * @since 2.8.0\n */\ntype TableHeaderCellActionClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\n/**\n * Fired when a header cell action is clicked.\n *\n * @param {HTMLElement} targetRef The reference to the element that triggered the event\n * @public\n * @since 2.8.0\n */\n@eventStrict(\"click\", {\n\tbubbles: false,\n})\n\n/**\n * @class\n * The `TableHeaderCellActionBase` class serves as a foundation for table header cell actions.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.8.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableHeaderCellActionBaseStyles,\n\ttemplate: TableHeaderCellActionBaseTemplate,\n\tdependencies: [Button],\n})\nabstract class TableHeaderCellActionBase extends UI5Element {\n\teventDetails!: {\n\t\t\"click\": TableHeaderCellActionClickEventDetail,\n\t}\n\n\tabstract getRenderInfo(): {\n\t\ticon: string;\n\t\ttooltip: string;\n\t};\n\n\tonBeforeRendering() {\n\t\tthis.toggleAttribute(\"_popin\", !this.parentElement);\n\t}\n\n\t_onClick(e: MouseEvent) {\n\t\tconst action = this.parentElement ? this : ((this.getRootNode() as ShadowRoot).host as TableCell)._headerCell.action[0] as this;\n\t\taction.fireDecoratorEvent(\"click\", { targetRef: e.target as HTMLElement });\n\t\te.stopPropagation();\n\t}\n\n\tget _tooltip() {\n\t\treturn this.getRenderInfo().tooltip;\n\t}\n\n\tget _icon() {\n\t\treturn this.getRenderInfo().icon;\n\t}\n}\n\nexport default TableHeaderCellActionBase;\n\nexport type {\n\tTableHeaderCellActionClickEventDetail,\n};\n"]}
1
+ {"version":3,"file":"TableHeaderCellActionBase.js","sourceRoot":"","sources":["../src/TableHeaderCellActionBase.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AACvF,OAAO,+BAA+B,MAAM,qDAAqD,CAAC;AAclG;;;;;;GAMG;AAmBH,IAAe,yBAAyB,GAAxC,MAAe,yBAA0B,SAAQ,UAAU;IAU1D,iBAAiB;QAChB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,QAAQ,CAAC,CAAa;QACrB,wHAAwH;QACxH,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAG,IAAI,CAAC,WAAW,EAAiB,CAAC,IAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAS,CAAC;QACvK,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAqB,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,eAAe,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC;IAClC,CAAC;CACD,CAAA;AA5Bc,yBAAyB;IAlBvC,WAAW,CAAC,OAAO,EAAE;QACrB,OAAO,EAAE,KAAK;KACd,CAAC;IAEF;;;;;;;;OAQG;;IACF,aAAa,CAAC;QACd,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,+BAA+B;QACvC,QAAQ,EAAE,iCAAiC;KAC3C,CAAC;GACa,yBAAyB,CA4BvC;AAED,eAAe,yBAAyB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { customElement, eventStrict } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport TableHeaderCellActionBaseTemplate from \"./TableHeaderCellActionBaseTemplate.js\";\nimport TableHeaderCellActionBaseStyles from \"./generated/themes/TableHeaderCellActionBase.css.js\";\nimport type TableCell from \"./TableCell.js\";\n\n/**\n * Fired when a header cell action is clicked.\n *\n * @param {HTMLElement} targetRef The reference to the element that triggered the event\n * @public\n * @since 2.8.0\n */\ntype TableHeaderCellActionClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\n/**\n * Fired when a header cell action is clicked.\n *\n * @param {HTMLElement} targetRef The reference to the element that triggered the event\n * @public\n * @since 2.8.0\n */\n@eventStrict(\"click\", {\n\tbubbles: false,\n})\n\n/**\n * @class\n * The `TableHeaderCellActionBase` class serves as a foundation for table header cell actions.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.8.0\n * @public\n */\n@customElement({\n\trenderer: jsxRenderer,\n\tstyles: TableHeaderCellActionBaseStyles,\n\ttemplate: TableHeaderCellActionBaseTemplate,\n})\nabstract class TableHeaderCellActionBase extends UI5Element {\n\teventDetails!: {\n\t\t\"click\": TableHeaderCellActionClickEventDetail,\n\t}\n\n\tabstract getRenderInfo(): {\n\t\ticon: string;\n\t\ttooltip: string;\n\t};\n\n\tonBeforeRendering() {\n\t\tthis.toggleAttribute(\"_popin\", !this.parentElement);\n\t}\n\n\t_onClick(e: MouseEvent) {\n\t\t// Retrieve the real action (if parent is header cell this instance is fine, otherwise retrieve it from the header cell)\n\t\tconst action = this.parentElement?.hasAttribute(\"ui5-table-header-cell\") ? this : ((this.getRootNode() as ShadowRoot).host as TableCell)._headerCell.action[0] as this;\n\t\taction.fireDecoratorEvent(\"click\", { targetRef: e.target as HTMLElement });\n\t\te.stopPropagation();\n\t}\n\n\tget _tooltip() {\n\t\treturn this.getRenderInfo().tooltip;\n\t}\n\n\tget _icon() {\n\t\treturn this.getRenderInfo().icon;\n\t}\n}\n\nexport default TableHeaderCellActionBase;\n\nexport type {\n\tTableHeaderCellActionClickEventDetail,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ import type TableHeaderCellActionBase from "./TableHeaderCellActionBase.js";
2
+ export default function TableHeaderCellActionBaseTemplate(this: TableHeaderCellActionBase): import("@ui5/webcomponents-base/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import Button from "./Button.js";
3
+ export default function TableHeaderCellActionBaseTemplate() {
4
+ return (_jsx(Button, { icon: this._icon, tooltip: this._tooltip, onClick: this._onClick, design: "Transparent" }));
5
+ }
6
+ //# sourceMappingURL=TableHeaderCellActionBaseTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableHeaderCellActionBaseTemplate.js","sourceRoot":"","sources":["../src/TableHeaderCellActionBaseTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAGjC,MAAM,CAAC,OAAO,UAAU,iCAAiC;IACxD,OAAO,CACN,KAAC,MAAM,IACN,IAAI,EAAE,IAAI,CAAC,KAAK,EAChB,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,MAAM,EAAC,aAAa,GACX,CACV,CAAC;AACH,CAAC","sourcesContent":["import Button from \"./Button.js\";\nimport type TableHeaderCellActionBase from \"./TableHeaderCellActionBase.js\";\n\nexport default function TableHeaderCellActionBaseTemplate(this: TableHeaderCellActionBase) {\n\treturn (\n\t\t<Button\n\t\t\ticon={this._icon}\n\t\t\ttooltip={this._tooltip}\n\t\t\tonClick={this._onClick}\n\t\t\tdesign=\"Transparent\"\n\t\t></Button>\n\t);\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import type TableHeaderCell from "./TableHeaderCell.js";
2
+ export default function TableHeaderCellTemplate(this: TableHeaderCell): import("@ui5/webcomponents-base/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import Icon from "./Icon.js";
3
+ import SortOrder from "@ui5/webcomponents-base/dist/types/SortOrder.js";
4
+ import SortAscending from "@ui5/webcomponents-icons/dist/sort-ascending.js";
5
+ import SortDescending from "@ui5/webcomponents-icons/dist/sort-descending.js";
6
+ export default function TableHeaderCellTemplate() {
7
+ return (_jsxs(_Fragment, { children: [_jsx("slot", { name: "action" }), _jsx("slot", {}), sortIcon.call(this)] }));
8
+ }
9
+ function sortIcon() {
10
+ switch (this.sortIndicator) {
11
+ case SortOrder.Ascending:
12
+ return _jsx(Icon, { name: SortAscending });
13
+ case SortOrder.Descending:
14
+ return _jsx(Icon, { name: SortDescending });
15
+ default:
16
+ return _jsx(_Fragment, {});
17
+ }
18
+ }
19
+ //# sourceMappingURL=TableHeaderCellTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableHeaderCellTemplate.js","sourceRoot":"","sources":["../src/TableHeaderCellTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,SAAS,MAAM,iDAAiD,CAAC;AAGxE,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,cAAc,MAAM,kDAAkD,CAAC;AAE9E,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC9C,OAAO,CACN,8BACC,eAAM,IAAI,EAAC,QAAQ,GAAQ,EAC3B,gBAAa,EACX,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IACnB,CACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ;IAChB,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,KAAK,SAAS,CAAC,SAAS;YACvB,OAAO,KAAC,IAAI,IAAC,IAAI,EAAE,aAAa,GAAS,CAAC;QAC3C,KAAK,SAAS,CAAC,UAAU;YACxB,OAAO,KAAC,IAAI,IAAC,IAAI,EAAE,cAAc,GAAS,CAAC;QAC5C;YACC,OAAO,mBAAK,CAAC;IACd,CAAC;AACF,CAAC","sourcesContent":["import Icon from \"./Icon.js\";\nimport SortOrder from \"@ui5/webcomponents-base/dist/types/SortOrder.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\n\nimport SortAscending from \"@ui5/webcomponents-icons/dist/sort-ascending.js\";\nimport SortDescending from \"@ui5/webcomponents-icons/dist/sort-descending.js\";\n\nexport default function TableHeaderCellTemplate(this: TableHeaderCell) {\n\treturn (\n\t\t<>\n\t\t\t<slot name=\"action\"></slot>\n\t\t\t<slot></slot>\n\t\t\t{ sortIcon.call(this) }\n\t\t</>\n\t);\n}\n\nfunction sortIcon(this: TableHeaderCell) {\n\tswitch (this.sortIndicator) {\n\tcase SortOrder.Ascending:\n\t\treturn <Icon name={SortAscending}></Icon>;\n\tcase SortOrder.Descending:\n\t\treturn <Icon name={SortDescending}></Icon>;\n\tdefault:\n\t\treturn <></>;\n\t}\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import TableRowBase from "./TableRowBase.js";
2
- import TableHeaderCell from "./TableHeaderCell.js";
2
+ import type TableHeaderCell from "./TableHeaderCell.js";
3
3
  /**
4
4
  * @class
5
5
  *
@@ -42,8 +42,7 @@ declare class TableHeaderRow extends TableRowBase {
42
42
  onBeforeRendering(): void;
43
43
  isHeaderRow(): boolean;
44
44
  get _hasRowActions(): boolean;
45
- get _isSelectable(): boolean | undefined;
46
- get _isSelected(): boolean | undefined;
45
+ get _isSelectable(): boolean;
47
46
  get _i18nSelection(): string;
48
47
  get _i18nRowPopin(): string;
49
48
  get _i18nRowActions(): string;
@@ -6,9 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { customElement, slot, property } from "@ui5/webcomponents-base/dist/decorators.js";
8
8
  import TableRowBase from "./TableRowBase.js";
9
- import TableHeaderRowTemplate from "./generated/templates/TableHeaderRowTemplate.lit.js";
9
+ import TableHeaderRowTemplate from "./TableHeaderRowTemplate.js";
10
10
  import TableHeaderRowStyles from "./generated/themes/TableHeaderRow.css.js";
11
- import TableHeaderCell from "./TableHeaderCell.js";
12
11
  import { TABLE_SELECTION, TABLE_ROW_POPIN, TABLE_ROW_ACTIONS, TABLE_COLUMN_HEADER_ROW, } from "./generated/i18n/i18n-defaults.js";
13
12
  /**
14
13
  * @class
@@ -69,9 +68,6 @@ class TableHeaderRow extends TableRowBase {
69
68
  get _isSelectable() {
70
69
  return this._isMultiSelect;
71
70
  }
72
- get _isSelected() {
73
- return this._tableSelection?.areAllRowsSelected();
74
- }
75
71
  get _i18nSelection() {
76
72
  return TableRowBase.i18nBundle.getText(TABLE_SELECTION);
77
73
  }
@@ -102,7 +98,6 @@ TableHeaderRow = __decorate([
102
98
  languageAware: true,
103
99
  styles: [TableRowBase.styles, TableHeaderRowStyles],
104
100
  template: TableHeaderRowTemplate,
105
- dependencies: [...TableRowBase.dependencies, TableHeaderCell],
106
101
  })
107
102
  /**
108
103
  * Example custom event.
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderRow.js","sourceRoot":"","sources":["../src/TableHeaderRow.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,sBAAsB,MAAM,qDAAqD,CAAC;AACzF,OAAO,oBAAoB,MAAM,0CAA0C,CAAC;AAC5E,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACN,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,uBAAuB,GACvB,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,IAAM,cAAc;AANpB;;;;;GAKG;AACH,MAAM,cAAe,SAAQ,YAAY;IAAzC;;QAmBC;;;;;;;WAOG;QAEH,WAAM,GAAG,KAAK,CAAC;IAwChB,CAAC;IAtCA,UAAU;QACT,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACxC,CAAC;IACF,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;IACzD,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,eAAe,EAAE,kBAAkB,EAAE,CAAC;IACnD,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,eAAe;QAClB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3D,CAAC;CACD,CAAA;AAnDA;IATC,IAAI,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE;YACxB,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,CAAC;YACjE,KAAK,EAAE,KAAK;SACZ;QACD,eAAe,EAAE,IAAI;KACrB,CAAC;6CAC6B;AAW/B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACb;AA5BV,cAAc;IAdnB,aAAa,CAAC;QACd,GAAG,EAAE,sBAAsB;QAC3B,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,oBAAoB,CAAC;QACnD,QAAQ,EAAE,sBAAsB;QAChC,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC,YAAY,EAAE,eAAe,CAAC;KAC7D,CAAC;IAEF;;;;;OAKG;GACG,cAAc,CAoEnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import { customElement, slot, property } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport TableRowBase from \"./TableRowBase.js\";\nimport TableHeaderRowTemplate from \"./generated/templates/TableHeaderRowTemplate.lit.js\";\nimport TableHeaderRowStyles from \"./generated/themes/TableHeaderRow.css.js\";\nimport TableHeaderCell from \"./TableHeaderCell.js\";\nimport {\n\tTABLE_SELECTION,\n\tTABLE_ROW_POPIN,\n\tTABLE_ROW_ACTIONS,\n\tTABLE_COLUMN_HEADER_ROW,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-header-row` component represents the table headers of a `ui5-table`.\n *\n * It is tightly coupled to the `ui5-table` and should therefore be used in the `ui5-table` only.\n * The header row is placed in the `headerRow` slot of the table.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";`\n *\n * @constructor\n * @extends TableRowBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-header-row\",\n\tlanguageAware: true,\n\tstyles: [TableRowBase.styles, TableHeaderRowStyles],\n\ttemplate: TableHeaderRowTemplate,\n\tdependencies: [...TableRowBase.dependencies, TableHeaderCell],\n})\n\n/**\n * Example custom event.\n * Please keep in mind that all public events should be documented in the API Reference as shown below.\n *\n * @public\n */\nclass TableHeaderRow extends TableRowBase {\n\t/**\n\t * Defines the cells of the component.\n\t *\n\t * **Note:** Use `ui5-table-header-cell` for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"width\", \"_popin\", \"horizontalAlign\", \"popinHidden\"],\n\t\t\tslots: false,\n\t\t},\n\t\tindividualSlots: true,\n\t})\n\tcells!: Array<TableHeaderCell>;\n\n\t/**\n\t * Sticks the `ui5-table-header-row` to the top of a table.\n\t *\n\t * Note: If used in combination with overflowMode \"Scroll\", the table needs a defined height for the sticky header to work as expected.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tsticky = false;\n\n\tonEnterDOM(): void {\n\t\tsuper.onEnterDOM();\n\t\tthis.setAttribute(\"aria-roledescription\", TableRowBase.i18nBundle.getText(TABLE_COLUMN_HEADER_ROW));\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this._table) {\n\t\t\tthis.style.top = this._table.stickyTop;\n\t\t}\n\t}\n\n\tisHeaderRow(): boolean {\n\t\treturn true;\n\t}\n\n\tget _hasRowActions() {\n\t\treturn this._table ? this._table._hasRowActions : false;\n\t}\n\n\tget _isSelectable() {\n\t\treturn this._isMultiSelect;\n\t}\n\n\tget _isSelected() {\n\t\treturn this._tableSelection?.areAllRowsSelected();\n\t}\n\n\tget _i18nSelection() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_SELECTION);\n\t}\n\n\tget _i18nRowPopin() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_ROW_POPIN);\n\t}\n\tget _i18nRowActions() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_ROW_ACTIONS);\n\t}\n}\n\nTableHeaderRow.define();\n\nexport default TableHeaderRow;\n"]}
1
+ {"version":3,"file":"TableHeaderRow.js","sourceRoot":"","sources":["../src/TableHeaderRow.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AACjE,OAAO,oBAAoB,MAAM,0CAA0C,CAAC;AAE5E,OAAO,EACN,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,uBAAuB,GACvB,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AAcH,IAAM,cAAc;AANpB;;;;;GAKG;AACH,MAAM,cAAe,SAAQ,YAAY;IAAzC;;QAmBC;;;;;;;WAOG;QAEH,WAAM,GAAG,KAAK,CAAC;IAoChB,CAAC;IAlCA,UAAU;QACT,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACxC,CAAC;IACF,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;IACzD,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,eAAe;QAClB,OAAO,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3D,CAAC;CACD,CAAA;AA/CA;IATC,IAAI,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE;YACxB,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,CAAC;YACjE,KAAK,EAAE,KAAK;SACZ;QACD,eAAe,EAAE,IAAI;KACrB,CAAC;6CAC6B;AAW/B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACb;AA5BV,cAAc;IAbnB,aAAa,CAAC;QACd,GAAG,EAAE,sBAAsB;QAC3B,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,oBAAoB,CAAC;QACnD,QAAQ,EAAE,sBAAsB;KAChC,CAAC;IAEF;;;;;OAKG;GACG,cAAc,CAgEnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import { customElement, slot, property } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport TableRowBase from \"./TableRowBase.js\";\nimport TableHeaderRowTemplate from \"./TableHeaderRowTemplate.js\";\nimport TableHeaderRowStyles from \"./generated/themes/TableHeaderRow.css.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport {\n\tTABLE_SELECTION,\n\tTABLE_ROW_POPIN,\n\tTABLE_ROW_ACTIONS,\n\tTABLE_COLUMN_HEADER_ROW,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-header-row` component represents the table headers of a `ui5-table`.\n *\n * It is tightly coupled to the `ui5-table` and should therefore be used in the `ui5-table` only.\n * The header row is placed in the `headerRow` slot of the table.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";`\n *\n * @constructor\n * @extends TableRowBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-header-row\",\n\tlanguageAware: true,\n\tstyles: [TableRowBase.styles, TableHeaderRowStyles],\n\ttemplate: TableHeaderRowTemplate,\n})\n\n/**\n * Example custom event.\n * Please keep in mind that all public events should be documented in the API Reference as shown below.\n *\n * @public\n */\nclass TableHeaderRow extends TableRowBase {\n\t/**\n\t * Defines the cells of the component.\n\t *\n\t * **Note:** Use `ui5-table-header-cell` for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"width\", \"_popin\", \"horizontalAlign\", \"popinHidden\"],\n\t\t\tslots: false,\n\t\t},\n\t\tindividualSlots: true,\n\t})\n\tcells!: Array<TableHeaderCell>;\n\n\t/**\n\t * Sticks the `ui5-table-header-row` to the top of a table.\n\t *\n\t * Note: If used in combination with overflowMode \"Scroll\", the table needs a defined height for the sticky header to work as expected.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tsticky = false;\n\n\tonEnterDOM(): void {\n\t\tsuper.onEnterDOM();\n\t\tthis.setAttribute(\"aria-roledescription\", TableRowBase.i18nBundle.getText(TABLE_COLUMN_HEADER_ROW));\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this._table) {\n\t\t\tthis.style.top = this._table.stickyTop;\n\t\t}\n\t}\n\n\tisHeaderRow(): boolean {\n\t\treturn true;\n\t}\n\n\tget _hasRowActions() {\n\t\treturn this._table ? this._table._hasRowActions : false;\n\t}\n\n\tget _isSelectable() {\n\t\treturn this._isMultiSelect;\n\t}\n\n\tget _i18nSelection() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_SELECTION);\n\t}\n\n\tget _i18nRowPopin() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_ROW_POPIN);\n\t}\n\tget _i18nRowActions() {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_ROW_ACTIONS);\n\t}\n}\n\nTableHeaderRow.define();\n\nexport default TableHeaderRow;\n"]}
@@ -0,0 +1,2 @@
1
+ import type TableHeaderRow from "./TableHeaderRow.js";
2
+ export default function TableHeaderRowTemplate(this: TableHeaderRow): import("@ui5/webcomponents-base/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import CheckBox from "./CheckBox.js";
3
+ import TableHeaderCell from "./TableHeaderCell.js";
4
+ export default function TableHeaderRowTemplate() {
5
+ return (_jsxs(_Fragment, { children: [this._hasRowSelector &&
6
+ _jsx(TableHeaderCell, { id: "selection-cell", "aria-selected": this._isSelected, "aria-label": this._i18nSelection, "data-ui5-table-cell-fixed": true, "data-ui5-table-selection-component": true, children: this._isMultiSelect &&
7
+ _jsx(CheckBox, { id: "selection-component", tabindex: -1, checked: this._isSelected, onChange: this._onSelectionChange, accessibleName: this._i18nRowSelector }) }), this._visibleCells.map(cell => (_jsx("slot", { name: cell._individualSlot }, cell._individualSlot))), this._hasRowActions &&
8
+ _jsx(TableHeaderCell, { id: "actions-cell", "aria-label": this._i18nRowActions }), this._popinCells.length > 0 &&
9
+ _jsx(TableHeaderCell, { id: "popin-cell", "aria-label": this._i18nRowPopin, "data-excluded-from-navigation": true })] }));
10
+ }
11
+ //# sourceMappingURL=TableHeaderRowTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableHeaderRowTemplate.js","sourceRoot":"","sources":["../src/TableHeaderRowTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAGnD,MAAM,CAAC,OAAO,UAAU,sBAAsB;IAC7C,OAAO,CACN,8BACG,IAAI,CAAC,eAAe;gBACrB,KAAC,eAAe,IAAC,EAAE,EAAC,gBAAgB,mBACpB,IAAI,CAAC,WAAW,gBACnB,IAAI,CAAC,cAAc,2FAI7B,IAAI,CAAC,cAAc;wBACpB,KAAC,QAAQ,IAAC,EAAE,EAAC,qBAAqB,EACjC,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EACjC,cAAc,EAAE,IAAI,CAAC,gBAAgB,GAC1B,GAEI,EAGjB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAChC,eAAM,IAAI,EAAE,IAAI,CAAC,eAAe,IAAO,IAAI,CAAC,eAAe,CAAS,CACpE,CAAC,EAEA,IAAI,CAAC,cAAc;gBACpB,KAAC,eAAe,IAAC,EAAE,EAAC,cAAc,gBACrB,IAAI,CAAC,eAAe,GACd,EAGlB,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC5B,KAAC,eAAe,IAAC,EAAE,EAAC,YAAY,gBACnB,IAAI,CAAC,aAAa,0CAEZ,IAElB,CACH,CAAC;AACH,CAAC","sourcesContent":["import CheckBox from \"./CheckBox.js\";\nimport TableHeaderCell from \"./TableHeaderCell.js\";\nimport type TableHeaderRow from \"./TableHeaderRow.js\";\n\nexport default function TableHeaderRowTemplate(this: TableHeaderRow) {\n\treturn (\n\t\t<>\n\t\t\t{ this._hasRowSelector &&\n\t\t\t\t<TableHeaderCell id=\"selection-cell\"\n\t\t\t\t\taria-selected={this._isSelected}\n\t\t\t\t\taria-label={this._i18nSelection}\n\t\t\t\t\tdata-ui5-table-cell-fixed\n\t\t\t\t\tdata-ui5-table-selection-component\n\t\t\t\t>\n\t\t\t\t\t{ this._isMultiSelect &&\n\t\t\t\t\t\t<CheckBox id=\"selection-component\"\n\t\t\t\t\t\t\ttabindex={-1}\n\t\t\t\t\t\t\tchecked={this._isSelected}\n\t\t\t\t\t\t\tonChange={this._onSelectionChange}\n\t\t\t\t\t\t\taccessibleName={this._i18nRowSelector}\n\t\t\t\t\t\t></CheckBox>\n\t\t\t\t\t}\n\t\t\t\t</TableHeaderCell>\n\t\t\t}\n\n\t\t\t{ this._visibleCells.map(cell => (\n\t\t\t\t<slot name={cell._individualSlot} key={cell._individualSlot}></slot>\n\t\t\t))}\n\n\t\t\t{ this._hasRowActions &&\n\t\t\t\t<TableHeaderCell id=\"actions-cell\"\n\t\t\t\t\taria-label={this._i18nRowActions}\n\t\t\t\t></TableHeaderCell>\n\t\t\t}\n\n\t\t\t{ this._popinCells.length > 0 &&\n\t\t\t\t<TableHeaderCell id=\"popin-cell\"\n\t\t\t\t\taria-label={this._i18nRowPopin}\n\t\t\t\t\tdata-excluded-from-navigation\n\t\t\t\t></TableHeaderCell>\n\t\t\t}\n\t\t</>\n\t);\n}\n"]}
@@ -27,7 +27,7 @@ class TableNavigation extends TableExtension {
27
27
  return [row, ...row.shadowRoot.children].map(element => {
28
28
  return element.localName === "slot" ? element.assignedElements() : element;
29
29
  }).flat().filter(element => {
30
- return element.localName.includes("ui5-table-") && !element.hasAttribute("excluded-from-navigation");
30
+ return element.localName.includes("ui5-table-") && !element.hasAttribute("data-excluded-from-navigation");
31
31
  });
32
32
  }
33
33
  _getNavigationItemsOfGrid() {
@@ -45,8 +45,8 @@ class TableNavigation extends TableExtension {
45
45
  else {
46
46
  items.push(this._getNavigationItemsOfRow(this._table._nodataRow));
47
47
  }
48
- if (this._table._shouldRenderGrowing) {
49
- items.push([this._table._growing.getFocusDomRef()]);
48
+ if (this._table.rows.length > 0 && this._table._getGrowing()?.hasGrowingComponent()) {
49
+ items.push([this._table._getGrowing()?.getFocusDomRef()]);
50
50
  this._gridWalker.setLastRowPos(-1);
51
51
  }
52
52
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"TableNavigation.js","sourceRoot":"","sources":["../src/TableNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tisUp, isUpShift, isDown, isDownShift, isLeft, isRight, isPageUp, isPageDown, isHome, isEnd, isTabNext, isTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport isElementHidden from \"@ui5/webcomponents-base/dist/util/isElementHidden.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport { getTabbableElements } from \"@ui5/webcomponents-base/dist/util/TabbableElements.js\";\nimport type Table from \"./Table.js\";\nimport type TableRowBase from \"./TableRowBase.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport GridWalker from \"./GridWalker.js\";\n\n/**\n * Handles the keyboard navigation for the ui5-table.\n *\n * @class\n * @private\n */\nclass TableNavigation extends TableExtension {\n\t_table: Table;\n\t_gridWalker: GridWalker;\n\t_colPosition: number = 0;\n\t_tabPosition: number = 0;\n\t_ignoreFocusIn?: boolean;\n\t_lastFocusedItem?: HTMLElement;\n\t_onKeyDownCaptureBound: (e: KeyboardEvent) => void;\n\n\tconstructor(table: Table) {\n\t\tsuper();\n\t\tthis._table = table;\n\t\tthis._gridWalker = new GridWalker();\n\t\tthis._gridWalker.setGrid(this._getNavigationItemsOfGrid());\n\t\tthis._onKeyDownCaptureBound = this._onKeyDownCapture.bind(this);\n\n\t\t// we register the keydown handler on the table element at the capturing phase since the\n\t\t// busy indicator stops the propagation of the keydown event and it never reaches the table\n\t\tthis._table.addEventListener(\"keydown\", this._onKeyDownCaptureBound, { capture: true });\n\t}\n\n\t_getNavigationItemsOfRow(row: TableRowBase) {\n\t\treturn [row, ...row.shadowRoot!.children].map(element => {\n\t\t\treturn element.localName === \"slot\" ? (element as HTMLSlotElement).assignedElements() : element;\n\t\t}).flat().filter(element => {\n\t\t\treturn element.localName.includes(\"ui5-table-\") && !element.hasAttribute(\"excluded-from-navigation\");\n\t\t}) as HTMLElement[];\n\t}\n\n\t_getNavigationItemsOfGrid() {\n\t\tconst items = [];\n\t\tif (this._table.headerRow[0] && !isElementHidden(this._table.headerRow[0])) {\n\t\t\titems.push(this._getNavigationItemsOfRow(this._table.headerRow[0]));\n\t\t\tthis._gridWalker.setFirstRowPos(1);\n\t\t} else {\n\t\t\tthis._gridWalker.setFirstRowPos(0);\n\t\t}\n\n\t\tif (this._table.rows.length) {\n\t\t\tthis._table.rows.forEach(row => items.push(this._getNavigationItemsOfRow(row)));\n\t\t} else {\n\t\t\titems.push(this._getNavigationItemsOfRow(this._table._nodataRow));\n\t\t}\n\n\t\tif (this._table._shouldRenderGrowing) {\n\t\t\titems.push([this._table._growing.getFocusDomRef()]);\n\t\t\tthis._gridWalker.setLastRowPos(-1);\n\t\t} else {\n\t\t\tthis._gridWalker.setLastRowPos(0);\n\t\t}\n\n\t\tif (!this._gridWalker.getCurrent()) {\n\t\t\tthis._gridWalker.setRowPos(this._gridWalker.getFirstRowPos());\n\t\t}\n\n\t\tthis._gridWalker.setGrid(items);\n\t\treturn items;\n\t}\n\n\t_setCurrentItem(e: Event, callback?: (currentItem: HTMLElement) => void) {\n\t\tconst navigationItems = this._getNavigationItemsOfGrid().flat();\n\t\tconst navigationItem = e.composedPath().find(target => navigationItems.includes(target as HTMLElement)) as HTMLElement;\n\t\tif (navigationItem) {\n\t\t\tthis._gridWalker.setCurrent(navigationItem);\n\t\t\tcallback && callback(navigationItem);\n\t\t}\n\t}\n\n\t_isEventFromCurrentItem(e: Event) {\n\t\treturn e.composedPath()[0] === this._gridWalker.getCurrent();\n\t}\n\n\t_focusElement(element: HTMLElement, ignoreFocusIn: boolean = true) {\n\t\tif (!element || element === getActiveElement()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst navigationItems = this._getNavigationItemsOfGrid().flat();\n\t\tif (navigationItems.includes(this._lastFocusedItem)) {\n\t\t\tthis._lastFocusedItem?.removeAttribute(\"tabindex\");\n\t\t}\n\n\t\tif (navigationItems.includes(element)) {\n\t\t\telement.setAttribute(\"tabindex\", \"-1\");\n\t\t\tthis._lastFocusedItem = element;\n\t\t}\n\n\t\tthis._ignoreFocusIn = ignoreFocusIn;\n\t\telement.focus({ preventScroll: element === this._table._beforeElement || element === this._table._afterElement });\n\t\tif (element instanceof HTMLInputElement) {\n\t\t\telement.select();\n\t\t}\n\t\tthis._ignoreFocusIn = false;\n\t}\n\n\t_focusCurrentItem() {\n\t\tthis._focusElement(this._gridWalker.getCurrent() as HTMLElement);\n\t}\n\n\t_handleEnter(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (eventOrigin.hasAttribute(\"ui5-table-cell-base\")) {\n\t\t\tthis._handleF2(e, eventOrigin);\n\t\t}\n\t}\n\n\t_handleF2(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (this._isEventFromCurrentItem(e)) {\n\t\t\tconst firstTabbable = getTabbableElements(eventOrigin)[0];\n\t\t\tthis._focusElement(firstTabbable);\n\t\t} else {\n\t\t\tthis._setCurrentItem(e, () => this._focusCurrentItem());\n\t\t}\n\t\te.preventDefault();\n\t}\n\n\t_handleF7(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (eventOrigin.hasAttribute(\"ui5-table-row-base\")) {\n\t\t\tthis._gridWalker.setColPos(this._colPosition);\n\t\t\tlet elementToFocus = this._gridWalker.getCurrent() as HTMLElement;\n\t\t\tif (this._tabPosition > -1) {\n\t\t\t\tconst tabbables = getTabbableElements(elementToFocus);\n\t\t\t\telementToFocus = tabbables[this._tabPosition] || tabbables.pop() || elementToFocus;\n\t\t\t}\n\t\t\tthis._focusElement(elementToFocus);\n\t\t} else {\n\t\t\tthis._setCurrentItem(e, currentItem => {\n\t\t\t\tthis._tabPosition = getTabbableElements(currentItem).indexOf(eventOrigin);\n\t\t\t\tthis._colPosition = this._gridWalker.getColPos();\n\t\t\t\tthis._gridWalker.setColPos(0);\n\t\t\t\tthis._focusCurrentItem();\n\t\t\t});\n\t\t}\n\t\te.preventDefault();\n\t}\n\n\t_handleTab(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (this._isEventFromCurrentItem(e)) {\n\t\t\tthis._focusElement(e.shiftKey ? this._table._beforeElement : this._table._afterElement);\n\t\t} else {\n\t\t\tconst tabbables = getTabbableElements(this._table._tableElement);\n\t\t\tif (e.shiftKey && tabbables[0] === eventOrigin) {\n\t\t\t\tthis._focusElement(this._table._beforeElement);\n\t\t\t}\n\t\t\tif (!e.shiftKey && tabbables[tabbables.length - 1] === eventOrigin) {\n\t\t\t\tthis._focusElement(this._table._afterElement);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleArrowUpDown(e: KeyboardEvent, eventOrigin: HTMLElement, direction: -1 | 1) {\n\t\tif (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey || e.defaultPrevented || this._isEventFromCurrentItem(e) || /^(input|textarea)$/i.test(eventOrigin.nodeName)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tthis._setCurrentItem(e, currentItem => {\n\t\t\tthis._tabPosition = getTabbableElements(currentItem).indexOf(eventOrigin);\n\t\t\tthis._gridWalker.setRowPos(this._gridWalker.getRowPos() + direction);\n\t\t\tlet elementToFocus = this._gridWalker.getCurrent() as HTMLElement;\n\t\t\tconst tabbables = getTabbableElements(elementToFocus);\n\t\t\telementToFocus = tabbables[this._tabPosition] || tabbables.pop() || elementToFocus;\n\t\t\tthis._focusElement(elementToFocus);\n\t\t\te.preventDefault();\n\t\t});\n\t\treturn false;\n\t}\n\n\t_handleArrowUp(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\treturn this._handleArrowUpDown(e, eventOrigin, -1);\n\t}\n\n\t_handleArrowDown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\treturn this._handleArrowUpDown(e, eventOrigin, 1);\n\t}\n\n\t_onkeydown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._isEventFromCurrentItem(e) && this._getNavigationItemsOfGrid().flat().includes(eventOrigin)) {\n\t\t\tthis._gridWalker.setCurrent(eventOrigin);\n\t\t}\n\n\t\tthis._table._getVirtualizer()?._onKeyDown(e);\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst keydownHandlerName = `_handle${e.code}` as keyof TableNavigation;\n\t\tconst keydownHandler = this[keydownHandlerName] as (e: KeyboardEvent, eventOrigin: HTMLElement) => void | false;\n\t\tif (typeof keydownHandler === \"function\" && keydownHandler.call(this, e, eventOrigin) === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._isEventFromCurrentItem(e)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isLeft(e)) {\n\t\t\tthis._gridWalker[this._table.effectiveDir === \"rtl\" ? \"right\" : \"left\"]();\n\t\t} else if (isRight(e)) {\n\t\t\tthis._gridWalker[this._table.effectiveDir === \"rtl\" ? \"left\" : \"right\"]();\n\t\t} else if (isUp(e) || isUpShift(e)) {\n\t\t\tthis._gridWalker.up();\n\t\t} else if (isDown(e) || isDownShift(e)) {\n\t\t\tthis._gridWalker.down();\n\t\t} else if (isHome(e)) {\n\t\t\tthis._gridWalker.home();\n\t\t} else if (isEnd(e)) {\n\t\t\tthis._gridWalker.end();\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._gridWalker.pageup();\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._gridWalker.pagedown();\n\t\t} else {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusCurrentItem();\n\t\te.preventDefault();\n\t}\n\n\t_onclick(e: PointerEvent) {\n\t\tconst navigationItems = this._getNavigationItemsOfGrid();\n\t\tconst flatNavigationItems = navigationItems.flat();\n\t\tlet navigationItem = null;\n\t\tlet focusableElement = null;\n\n\t\t// eslint-disable-next-line no-restricted-syntax\n\t\tfor (const target of e.composedPath() as any[]) {\n\t\t\tif (target.nodeType === Node.ELEMENT_NODE) {\n\t\t\t\tconst element = target as HTMLElement;\n\t\t\t\tif (element.matches(\":focus-within\")) {\n\t\t\t\t\tfocusableElement = element;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif (flatNavigationItems.includes(element)) {\n\t\t\t\t\tnavigationItem = element;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (focusableElement && focusableElement !== this._lastFocusedItem) {\n\t\t\tthis._lastFocusedItem?.removeAttribute(\"tabindex\");\n\t\t\tthis._lastFocusedItem = undefined;\n\t\t} else if (navigationItem) {\n\t\t\tthis._gridWalker.setCurrent(navigationItem);\n\t\t\tthis._gridWalker.setColPos(0);\n\t\t\tthis._focusCurrentItem();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent, eventOrigin: HTMLElement) {\n\t\tif (this._ignoreFocusIn) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (eventOrigin === this._table._beforeElement || eventOrigin === this._table._afterElement) {\n\t\t\tif (this._table.loading) {\n\t\t\t\tthis._table._loadingElement.focus();\n\t\t\t} else {\n\t\t\t\tthis._getNavigationItemsOfGrid();\n\t\t\t\tthis._gridWalker.setColPos(0);\n\t\t\t\tthis._focusCurrentItem();\n\t\t\t}\n\t\t} else if (eventOrigin !== this._lastFocusedItem && this._getNavigationItemsOfGrid().flat().includes(eventOrigin)) {\n\t\t\tthis._lastFocusedItem = eventOrigin;\n\t\t}\n\t}\n\n\t_onKeyDownCapture(e: KeyboardEvent) {\n\t\tif (!this._table.loading) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isTabNext(e) || isTabPrevious(e)) {\n\t\t\tthis._focusElement(e.shiftKey ? this._table._beforeElement : this._table._afterElement);\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\t}\n}\n\nexport default TableNavigation;\n"]}
1
+ {"version":3,"file":"TableNavigation.js","sourceRoot":"","sources":["../src/TableNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tisUp, isUpShift, isDown, isDownShift, isLeft, isRight, isPageUp, isPageDown, isHome, isEnd, isTabNext, isTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport isElementHidden from \"@ui5/webcomponents-base/dist/util/isElementHidden.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport { getTabbableElements } from \"@ui5/webcomponents-base/dist/util/TabbableElements.js\";\nimport type Table from \"./Table.js\";\nimport type TableRowBase from \"./TableRowBase.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport GridWalker from \"./GridWalker.js\";\n\n/**\n * Handles the keyboard navigation for the ui5-table.\n *\n * @class\n * @private\n */\nclass TableNavigation extends TableExtension {\n\t_table: Table;\n\t_gridWalker: GridWalker;\n\t_colPosition: number = 0;\n\t_tabPosition: number = 0;\n\t_ignoreFocusIn?: boolean;\n\t_lastFocusedItem?: HTMLElement;\n\t_onKeyDownCaptureBound: (e: KeyboardEvent) => void;\n\n\tconstructor(table: Table) {\n\t\tsuper();\n\t\tthis._table = table;\n\t\tthis._gridWalker = new GridWalker();\n\t\tthis._gridWalker.setGrid(this._getNavigationItemsOfGrid());\n\t\tthis._onKeyDownCaptureBound = this._onKeyDownCapture.bind(this);\n\n\t\t// we register the keydown handler on the table element at the capturing phase since the\n\t\t// busy indicator stops the propagation of the keydown event and it never reaches the table\n\t\tthis._table.addEventListener(\"keydown\", this._onKeyDownCaptureBound, { capture: true });\n\t}\n\n\t_getNavigationItemsOfRow(row: TableRowBase) {\n\t\treturn [row, ...row.shadowRoot!.children].map(element => {\n\t\t\treturn element.localName === \"slot\" ? (element as HTMLSlotElement).assignedElements() : element;\n\t\t}).flat().filter(element => {\n\t\t\treturn element.localName.includes(\"ui5-table-\") && !element.hasAttribute(\"data-excluded-from-navigation\");\n\t\t}) as HTMLElement[];\n\t}\n\n\t_getNavigationItemsOfGrid() {\n\t\tconst items = [];\n\t\tif (this._table.headerRow[0] && !isElementHidden(this._table.headerRow[0])) {\n\t\t\titems.push(this._getNavigationItemsOfRow(this._table.headerRow[0]));\n\t\t\tthis._gridWalker.setFirstRowPos(1);\n\t\t} else {\n\t\t\tthis._gridWalker.setFirstRowPos(0);\n\t\t}\n\n\t\tif (this._table.rows.length) {\n\t\t\tthis._table.rows.forEach(row => items.push(this._getNavigationItemsOfRow(row)));\n\t\t} else {\n\t\t\titems.push(this._getNavigationItemsOfRow(this._table._nodataRow));\n\t\t}\n\n\t\tif (this._table.rows.length > 0 && this._table._getGrowing()?.hasGrowingComponent()) {\n\t\t\titems.push([this._table._getGrowing()?.getFocusDomRef()]);\n\t\t\tthis._gridWalker.setLastRowPos(-1);\n\t\t} else {\n\t\t\tthis._gridWalker.setLastRowPos(0);\n\t\t}\n\n\t\tif (!this._gridWalker.getCurrent()) {\n\t\t\tthis._gridWalker.setRowPos(this._gridWalker.getFirstRowPos());\n\t\t}\n\n\t\tthis._gridWalker.setGrid(items);\n\t\treturn items;\n\t}\n\n\t_setCurrentItem(e: Event, callback?: (currentItem: HTMLElement) => void) {\n\t\tconst navigationItems = this._getNavigationItemsOfGrid().flat();\n\t\tconst navigationItem = e.composedPath().find(target => navigationItems.includes(target as HTMLElement)) as HTMLElement;\n\t\tif (navigationItem) {\n\t\t\tthis._gridWalker.setCurrent(navigationItem);\n\t\t\tcallback && callback(navigationItem);\n\t\t}\n\t}\n\n\t_isEventFromCurrentItem(e: Event) {\n\t\treturn e.composedPath()[0] === this._gridWalker.getCurrent();\n\t}\n\n\t_focusElement(element: HTMLElement, ignoreFocusIn: boolean = true) {\n\t\tif (!element || element === getActiveElement()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst navigationItems = this._getNavigationItemsOfGrid().flat();\n\t\tif (navigationItems.includes(this._lastFocusedItem)) {\n\t\t\tthis._lastFocusedItem?.removeAttribute(\"tabindex\");\n\t\t}\n\n\t\tif (navigationItems.includes(element)) {\n\t\t\telement.setAttribute(\"tabindex\", \"-1\");\n\t\t\tthis._lastFocusedItem = element;\n\t\t}\n\n\t\tthis._ignoreFocusIn = ignoreFocusIn;\n\t\telement.focus({ preventScroll: element === this._table._beforeElement || element === this._table._afterElement });\n\t\tif (element instanceof HTMLInputElement) {\n\t\t\telement.select();\n\t\t}\n\t\tthis._ignoreFocusIn = false;\n\t}\n\n\t_focusCurrentItem() {\n\t\tthis._focusElement(this._gridWalker.getCurrent() as HTMLElement);\n\t}\n\n\t_handleEnter(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (eventOrigin.hasAttribute(\"ui5-table-cell-base\")) {\n\t\t\tthis._handleF2(e, eventOrigin);\n\t\t}\n\t}\n\n\t_handleF2(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (this._isEventFromCurrentItem(e)) {\n\t\t\tconst firstTabbable = getTabbableElements(eventOrigin)[0];\n\t\t\tthis._focusElement(firstTabbable);\n\t\t} else {\n\t\t\tthis._setCurrentItem(e, () => this._focusCurrentItem());\n\t\t}\n\t\te.preventDefault();\n\t}\n\n\t_handleF7(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (eventOrigin.hasAttribute(\"ui5-table-row-base\")) {\n\t\t\tthis._gridWalker.setColPos(this._colPosition);\n\t\t\tlet elementToFocus = this._gridWalker.getCurrent() as HTMLElement;\n\t\t\tif (this._tabPosition > -1) {\n\t\t\t\tconst tabbables = getTabbableElements(elementToFocus);\n\t\t\t\telementToFocus = tabbables[this._tabPosition] || tabbables.pop() || elementToFocus;\n\t\t\t}\n\t\t\tthis._focusElement(elementToFocus);\n\t\t} else {\n\t\t\tthis._setCurrentItem(e, currentItem => {\n\t\t\t\tthis._tabPosition = getTabbableElements(currentItem).indexOf(eventOrigin);\n\t\t\t\tthis._colPosition = this._gridWalker.getColPos();\n\t\t\t\tthis._gridWalker.setColPos(0);\n\t\t\t\tthis._focusCurrentItem();\n\t\t\t});\n\t\t}\n\t\te.preventDefault();\n\t}\n\n\t_handleTab(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (this._isEventFromCurrentItem(e)) {\n\t\t\tthis._focusElement(e.shiftKey ? this._table._beforeElement : this._table._afterElement);\n\t\t} else {\n\t\t\tconst tabbables = getTabbableElements(this._table._tableElement);\n\t\t\tif (e.shiftKey && tabbables[0] === eventOrigin) {\n\t\t\t\tthis._focusElement(this._table._beforeElement);\n\t\t\t}\n\t\t\tif (!e.shiftKey && tabbables[tabbables.length - 1] === eventOrigin) {\n\t\t\t\tthis._focusElement(this._table._afterElement);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleArrowUpDown(e: KeyboardEvent, eventOrigin: HTMLElement, direction: -1 | 1) {\n\t\tif (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey || e.defaultPrevented || this._isEventFromCurrentItem(e) || /^(input|textarea)$/i.test(eventOrigin.nodeName)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tthis._setCurrentItem(e, currentItem => {\n\t\t\tthis._tabPosition = getTabbableElements(currentItem).indexOf(eventOrigin);\n\t\t\tthis._gridWalker.setRowPos(this._gridWalker.getRowPos() + direction);\n\t\t\tlet elementToFocus = this._gridWalker.getCurrent() as HTMLElement;\n\t\t\tconst tabbables = getTabbableElements(elementToFocus);\n\t\t\telementToFocus = tabbables[this._tabPosition] || tabbables.pop() || elementToFocus;\n\t\t\tthis._focusElement(elementToFocus);\n\t\t\te.preventDefault();\n\t\t});\n\t\treturn false;\n\t}\n\n\t_handleArrowUp(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\treturn this._handleArrowUpDown(e, eventOrigin, -1);\n\t}\n\n\t_handleArrowDown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\treturn this._handleArrowUpDown(e, eventOrigin, 1);\n\t}\n\n\t_onkeydown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._isEventFromCurrentItem(e) && this._getNavigationItemsOfGrid().flat().includes(eventOrigin)) {\n\t\t\tthis._gridWalker.setCurrent(eventOrigin);\n\t\t}\n\n\t\tthis._table._getVirtualizer()?._onKeyDown(e);\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst keydownHandlerName = `_handle${e.code}` as keyof TableNavigation;\n\t\tconst keydownHandler = this[keydownHandlerName] as (e: KeyboardEvent, eventOrigin: HTMLElement) => void | false;\n\t\tif (typeof keydownHandler === \"function\" && keydownHandler.call(this, e, eventOrigin) === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._isEventFromCurrentItem(e)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isLeft(e)) {\n\t\t\tthis._gridWalker[this._table.effectiveDir === \"rtl\" ? \"right\" : \"left\"]();\n\t\t} else if (isRight(e)) {\n\t\t\tthis._gridWalker[this._table.effectiveDir === \"rtl\" ? \"left\" : \"right\"]();\n\t\t} else if (isUp(e) || isUpShift(e)) {\n\t\t\tthis._gridWalker.up();\n\t\t} else if (isDown(e) || isDownShift(e)) {\n\t\t\tthis._gridWalker.down();\n\t\t} else if (isHome(e)) {\n\t\t\tthis._gridWalker.home();\n\t\t} else if (isEnd(e)) {\n\t\t\tthis._gridWalker.end();\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._gridWalker.pageup();\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._gridWalker.pagedown();\n\t\t} else {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusCurrentItem();\n\t\te.preventDefault();\n\t}\n\n\t_onclick(e: PointerEvent) {\n\t\tconst navigationItems = this._getNavigationItemsOfGrid();\n\t\tconst flatNavigationItems = navigationItems.flat();\n\t\tlet navigationItem = null;\n\t\tlet focusableElement = null;\n\n\t\t// eslint-disable-next-line no-restricted-syntax\n\t\tfor (const target of e.composedPath() as any[]) {\n\t\t\tif (target.nodeType === Node.ELEMENT_NODE) {\n\t\t\t\tconst element = target as HTMLElement;\n\t\t\t\tif (element.matches(\":focus-within\")) {\n\t\t\t\t\tfocusableElement = element;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif (flatNavigationItems.includes(element)) {\n\t\t\t\t\tnavigationItem = element;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (focusableElement && focusableElement !== this._lastFocusedItem) {\n\t\t\tthis._lastFocusedItem?.removeAttribute(\"tabindex\");\n\t\t\tthis._lastFocusedItem = undefined;\n\t\t} else if (navigationItem) {\n\t\t\tthis._gridWalker.setCurrent(navigationItem);\n\t\t\tthis._gridWalker.setColPos(0);\n\t\t\tthis._focusCurrentItem();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent, eventOrigin: HTMLElement) {\n\t\tif (this._ignoreFocusIn) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (eventOrigin === this._table._beforeElement || eventOrigin === this._table._afterElement) {\n\t\t\tif (this._table.loading) {\n\t\t\t\tthis._table._loadingElement.focus();\n\t\t\t} else {\n\t\t\t\tthis._getNavigationItemsOfGrid();\n\t\t\t\tthis._gridWalker.setColPos(0);\n\t\t\t\tthis._focusCurrentItem();\n\t\t\t}\n\t\t} else if (eventOrigin !== this._lastFocusedItem && this._getNavigationItemsOfGrid().flat().includes(eventOrigin)) {\n\t\t\tthis._lastFocusedItem = eventOrigin;\n\t\t}\n\t}\n\n\t_onKeyDownCapture(e: KeyboardEvent) {\n\t\tif (!this._table.loading) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isTabNext(e) || isTabPrevious(e)) {\n\t\t\tthis._focusElement(e.shiftKey ? this._table._beforeElement : this._table._afterElement);\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\t}\n}\n\nexport default TableNavigation;\n"]}
@@ -1,5 +1,5 @@
1
1
  import TableRowBase from "./TableRowBase.js";
2
- import TableCell from "./TableCell.js";
2
+ import type TableCell from "./TableCell.js";
3
3
  import type TableRowActionBase from "./TableRowActionBase.js";
4
4
  import "@ui5/webcomponents-icons/dist/overflow.js";
5
5
  /**
@@ -40,12 +40,14 @@ declare class TableRow extends TableRowBase {
40
40
  /**
41
41
  * Unique identifier of the row.
42
42
  *
43
- * @default ""
43
+ * **Note:** For selection features to work properly, this property is mandatory, and its value must not contain spaces.
44
+ *
45
+ * @default undefined
44
46
  * @public
45
47
  */
46
- rowKey: string;
48
+ rowKey?: string;
47
49
  /**
48
- * Defines the position of the row respect to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.
50
+ * Defines the position of the row related to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.
49
51
  *
50
52
  * @default -1
51
53
  * @since 2.5.0
@@ -81,7 +83,7 @@ declare class TableRow extends TableRowBase {
81
83
  _onclick(): void;
82
84
  _onkeyup(): void;
83
85
  _onfocusout(): void;
84
- _onOverflowButtonClick(e: PointerEvent): void;
86
+ _onOverflowButtonClick(e: MouseEvent): void;
85
87
  get _isInteractive(): boolean;
86
88
  get _hasRowActions(): boolean;
87
89
  get _hasOverflowActions(): boolean;
package/dist/TableRow.js CHANGED
@@ -9,12 +9,9 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
9
9
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
10
  import { isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
11
11
  import getActiveElement from "@ui5/webcomponents-base/dist/util/getActiveElement.js";
12
- import Button from "./Button.js";
13
- import RadioButton from "./RadioButton.js";
14
- import TableRowTemplate from "./generated/templates/TableRowTemplate.lit.js";
12
+ import TableRowTemplate from "./TableRowTemplate.js";
15
13
  import TableRowBase from "./TableRowBase.js";
16
14
  import TableRowCss from "./generated/themes/TableRow.css.js";
17
- import TableCell from "./TableCell.js";
18
15
  import "@ui5/webcomponents-icons/dist/overflow.js";
19
16
  /**
20
17
  * @class
@@ -37,14 +34,7 @@ let TableRow = class TableRow extends TableRowBase {
37
34
  constructor() {
38
35
  super(...arguments);
39
36
  /**
40
- * Unique identifier of the row.
41
- *
42
- * @default ""
43
- * @public
44
- */
45
- this.rowKey = "";
46
- /**
47
- * Defines the position of the row respect to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.
37
+ * Defines the position of the row related to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.
48
38
  *
49
39
  * @default -1
50
40
  * @since 2.5.0
@@ -128,7 +118,8 @@ let TableRow = class TableRow extends TableRowBase {
128
118
  return this.interactive;
129
119
  }
130
120
  get _hasRowActions() {
131
- return this._rowActionCount > 0 && this.actions.some(action => action.isFixedAction() || !action.invisible);
121
+ // even if there are no actions visible or fixed, we still need to render the action cell to ensure alignment
122
+ return this._rowActionCount > 0;
132
123
  }
133
124
  get _hasOverflowActions() {
134
125
  let renderedActionsCount = 0;
@@ -215,7 +206,6 @@ TableRow = __decorate([
215
206
  tag: "ui5-table-row",
216
207
  styles: [TableRowBase.styles, TableRowCss],
217
208
  template: TableRowTemplate,
218
- dependencies: [...TableRowBase.dependencies, RadioButton, TableCell, Button],
219
209
  })
220
210
  ], TableRow);
221
211
  TableRow.define();
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["../src/TableRow.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport Button from \"./Button.js\";\nimport RadioButton from \"./RadioButton.js\";\nimport TableRowTemplate from \"./generated/templates/TableRowTemplate.lit.js\";\nimport TableRowBase from \"./TableRowBase.js\";\nimport TableRowCss from \"./generated/themes/TableRow.css.js\";\nimport TableCell from \"./TableCell.js\";\nimport type TableRowActionBase from \"./TableRowActionBase.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-row` component represents a row in the `ui5-table`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableRow.js\";`\n *\n * @constructor\n * @extends TableRowBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-row\",\n\tstyles: [TableRowBase.styles, TableRowCss],\n\ttemplate: TableRowTemplate,\n\tdependencies: [...TableRowBase.dependencies, RadioButton, TableCell, Button],\n})\nclass TableRow extends TableRowBase {\n\t/**\n\t * Defines the cells of the component.\n\t *\n\t * **Note:** Use `ui5-table-cell` for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"_popin\", \"_popinHidden\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcells!: Array<TableCell>;\n\n\t/**\n\t * Defines the actions of the component.\n\t *\n\t * **Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\n\t *\n\t * @since 2.7.0\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t})\n\tactions!: Array<TableRowActionBase>;\n\n\t/**\n\t * Unique identifier of the row.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\trowKey = \"\";\n\n\t/**\n\t * Defines the position of the row respect to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.\n\t *\n * @default -1\n\t * @since 2.5.0\n * @public\n */\n\t@property({ type: Number })\n\tposition = -1;\n\n\t/**\n\t * Defines the interactive state of the row.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines the navigated state of the row.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tnavigated = false;\n\n\t/**\n\t * Defines whether the row is movable.\n\t *\n\t * @default false\n\t * @since 2.6.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tthis.toggleAttribute(\"_interactive\", this._isInteractive);\n\t\tif (this.position !== -1) {\n\t\t\tthis.setAttribute(\"aria-rowindex\", `${this.position + 1}`);\n\t\t}\n\t\tif (this._renderNavigated && this.navigated) {\n\t\t\tthis.setAttribute(\"aria-current\", \"true\");\n\t\t} else {\n\t\t\tthis.removeAttribute(\"aria-current\");\n\t\t}\n\t\tif (this.movable) {\n\t\t\tthis.setAttribute(\"draggable\", \"true\");\n\t\t} else {\n\t\t\tthis.removeAttribute(\"draggable\");\n\t\t}\n\t}\n\n\tasync focus(focusOptions?: FocusOptions | undefined): Promise<void> {\n\t\tthis.setAttribute(\"tabindex\", \"-1\");\n\t\tHTMLElement.prototype.focus.call(this, focusOptions);\n\t\treturn Promise.resolve();\n\t}\n\n\t_onkeydown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tsuper._onkeydown(e, eventOrigin);\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (eventOrigin === this && this._isInteractive && isEnter(e)) {\n\t\t\tthis.toggleAttribute(\"_active\", true);\n\t\t\tthis._table?._onRowClick(this);\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tif (this._isInteractive && this === getActiveElement()) {\n\t\t\tthis._table?._onRowClick(this);\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tthis.removeAttribute(\"_active\");\n\t}\n\n\t_onfocusout() {\n\t\tthis.removeAttribute(\"_active\");\n\t}\n\n\t_onOverflowButtonClick(e: PointerEvent) {\n\t\tconst ctor = this.actions[0].constructor as typeof TableRowActionBase;\n\t\tctor.showMenu(this._overflowActions, e.target as HTMLElement);\n\t}\n\n\tget _isInteractive() {\n\t\treturn this.interactive;\n\t}\n\n\tget _hasRowActions() {\n\t\treturn this._rowActionCount > 0 && this.actions.some(action => action.isFixedAction() || !action.invisible);\n\t}\n\n\tget _hasOverflowActions() {\n\t\tlet renderedActionsCount = 0;\n\t\treturn this.actions.some(action => {\n\t\t\tif (action.isFixedAction() || !action.invisible) {\n\t\t\t\trenderedActionsCount++;\n\t\t\t}\n\t\t\treturn renderedActionsCount > this._rowActionCount;\n\t\t});\n\t}\n\n\tget _flexibleActions() {\n\t\tconst flexibleActions = this.actions.filter(action => !action.isFixedAction());\n\t\tconst fixedActionsCount = this.actions.length - flexibleActions.length;\n\t\tlet maxFlexibleActionsCount = this._rowActionCount - fixedActionsCount;\n\t\tif (maxFlexibleActionsCount < 1) {\n\t\t\treturn []; // fixed actions occupy all the available space\n\t\t}\n\t\tif (flexibleActions.length <= maxFlexibleActionsCount) {\n\t\t\treturn flexibleActions; // all actions fit the available space\n\t\t}\n\n\t\tconst visibleFlexibleActions = flexibleActions.filter(action => !action.invisible);\n\t\tif (visibleFlexibleActions.length > maxFlexibleActionsCount) {\n\t\t\tmaxFlexibleActionsCount--;\t// preserve space for the overflow button\n\t\t}\n\n\t\treturn visibleFlexibleActions.slice(0, maxFlexibleActionsCount);\n\t}\n\n\tget _fixedActions() {\n\t\tlet maxFixedActionsCount = this._rowActionCount;\n\t\tif (this._hasOverflowActions) {\n\t\t\tmaxFixedActionsCount--;\n\t\t}\n\n\t\tconst fixedActions = this.actions.filter(action => action.isFixedAction());\n\t\treturn fixedActions.slice(0, maxFixedActionsCount);\n\t}\n\n\tget _overflowActions() {\n\t\tconst fixedActions = this._fixedActions;\n\t\tconst flexibleActions = this._flexibleActions;\n\t\tconst overflowActions: Array<TableRowActionBase> = [];\n\t\tthis.actions.forEach(action => {\n\t\t\tif (!action.invisible && !fixedActions.includes(action) && !flexibleActions.includes(action)) {\n\t\t\t\toverflowActions.push(action);\n\t\t\t}\n\t\t});\n\n\t\treturn overflowActions;\n\t}\n}\n\nTableRow.define();\n\nexport default TableRow;\n"]}
1
+ {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["../src/TableRow.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport TableRowTemplate from \"./TableRowTemplate.js\";\nimport TableRowBase from \"./TableRowBase.js\";\nimport TableRowCss from \"./generated/themes/TableRow.css.js\";\nimport type TableCell from \"./TableCell.js\";\nimport type TableRowActionBase from \"./TableRowActionBase.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-row` component represents a row in the `ui5-table`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableRow.js\";`\n *\n * @constructor\n * @extends TableRowBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-row\",\n\tstyles: [TableRowBase.styles, TableRowCss],\n\ttemplate: TableRowTemplate,\n})\nclass TableRow extends TableRowBase {\n\t/**\n\t * Defines the cells of the component.\n\t *\n\t * **Note:** Use `ui5-table-cell` for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"_popin\", \"_popinHidden\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcells!: Array<TableCell>;\n\n\t/**\n\t * Defines the actions of the component.\n\t *\n\t * **Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\n\t *\n\t * @since 2.7.0\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t})\n\tactions!: Array<TableRowActionBase>;\n\n\t/**\n\t * Unique identifier of the row.\n\t *\n\t * **Note:** For selection features to work properly, this property is mandatory, and its value must not contain spaces.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\trowKey?: string;\n\n\t/**\n\t * Defines the position of the row related to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.\n\t *\n * @default -1\n\t * @since 2.5.0\n * @public\n */\n\t@property({ type: Number })\n\tposition = -1;\n\n\t/**\n\t * Defines the interactive state of the row.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines the navigated state of the row.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tnavigated = false;\n\n\t/**\n\t * Defines whether the row is movable.\n\t *\n\t * @default false\n\t * @since 2.6.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tthis.toggleAttribute(\"_interactive\", this._isInteractive);\n\t\tif (this.position !== -1) {\n\t\t\tthis.setAttribute(\"aria-rowindex\", `${this.position + 1}`);\n\t\t}\n\t\tif (this._renderNavigated && this.navigated) {\n\t\t\tthis.setAttribute(\"aria-current\", \"true\");\n\t\t} else {\n\t\t\tthis.removeAttribute(\"aria-current\");\n\t\t}\n\t\tif (this.movable) {\n\t\t\tthis.setAttribute(\"draggable\", \"true\");\n\t\t} else {\n\t\t\tthis.removeAttribute(\"draggable\");\n\t\t}\n\t}\n\n\tasync focus(focusOptions?: FocusOptions | undefined): Promise<void> {\n\t\tthis.setAttribute(\"tabindex\", \"-1\");\n\t\tHTMLElement.prototype.focus.call(this, focusOptions);\n\t\treturn Promise.resolve();\n\t}\n\n\t_onkeydown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tsuper._onkeydown(e, eventOrigin);\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (eventOrigin === this && this._isInteractive && isEnter(e)) {\n\t\t\tthis.toggleAttribute(\"_active\", true);\n\t\t\tthis._table?._onRowClick(this);\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tif (this._isInteractive && this === getActiveElement()) {\n\t\t\tthis._table?._onRowClick(this);\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tthis.removeAttribute(\"_active\");\n\t}\n\n\t_onfocusout() {\n\t\tthis.removeAttribute(\"_active\");\n\t}\n\n\t_onOverflowButtonClick(e: MouseEvent) {\n\t\tconst ctor = this.actions[0].constructor as typeof TableRowActionBase;\n\t\tctor.showMenu(this._overflowActions, e.target as HTMLElement);\n\t}\n\n\tget _isInteractive() {\n\t\treturn this.interactive;\n\t}\n\n\tget _hasRowActions() {\n\t\t// even if there are no actions visible or fixed, we still need to render the action cell to ensure alignment\n\t\treturn this._rowActionCount > 0;\n\t}\n\n\tget _hasOverflowActions() {\n\t\tlet renderedActionsCount = 0;\n\t\treturn this.actions.some(action => {\n\t\t\tif (action.isFixedAction() || !action.invisible) {\n\t\t\t\trenderedActionsCount++;\n\t\t\t}\n\t\t\treturn renderedActionsCount > this._rowActionCount;\n\t\t});\n\t}\n\n\tget _flexibleActions() {\n\t\tconst flexibleActions = this.actions.filter(action => !action.isFixedAction());\n\t\tconst fixedActionsCount = this.actions.length - flexibleActions.length;\n\t\tlet maxFlexibleActionsCount = this._rowActionCount - fixedActionsCount;\n\t\tif (maxFlexibleActionsCount < 1) {\n\t\t\treturn []; // fixed actions occupy all the available space\n\t\t}\n\t\tif (flexibleActions.length <= maxFlexibleActionsCount) {\n\t\t\treturn flexibleActions; // all actions fit the available space\n\t\t}\n\n\t\tconst visibleFlexibleActions = flexibleActions.filter(action => !action.invisible);\n\t\tif (visibleFlexibleActions.length > maxFlexibleActionsCount) {\n\t\t\tmaxFlexibleActionsCount--;\t// preserve space for the overflow button\n\t\t}\n\n\t\treturn visibleFlexibleActions.slice(0, maxFlexibleActionsCount);\n\t}\n\n\tget _fixedActions() {\n\t\tlet maxFixedActionsCount = this._rowActionCount;\n\t\tif (this._hasOverflowActions) {\n\t\t\tmaxFixedActionsCount--;\n\t\t}\n\n\t\tconst fixedActions = this.actions.filter(action => action.isFixedAction());\n\t\treturn fixedActions.slice(0, maxFixedActionsCount);\n\t}\n\n\tget _overflowActions() {\n\t\tconst fixedActions = this._fixedActions;\n\t\tconst flexibleActions = this._flexibleActions;\n\t\tconst overflowActions: Array<TableRowActionBase> = [];\n\t\tthis.actions.forEach(action => {\n\t\t\tif (!action.invisible && !fixedActions.includes(action) && !flexibleActions.includes(action)) {\n\t\t\t\toverflowActions.push(action);\n\t\t\t}\n\t\t});\n\n\t\treturn overflowActions;\n\t}\n}\n\nTableRow.define();\n\nexport default TableRow;\n"]}
@@ -1,7 +1,15 @@
1
1
  import TableRowActionBase from "./TableRowActionBase.js";
2
2
  /**
3
3
  * @class
4
- * The `TableRowAction` class defines a row action for table rows.
4
+ *
5
+ * ### Overview
6
+ *
7
+ * The `ui5-table-row-action` component defines an action for table rows.
8
+ *
9
+ * ### ES6 Module Import
10
+ *
11
+ * `import "@ui5/webcomponents/dist/TableRowAction.js";`
12
+ *
5
13
  * @constructor
6
14
  * @extends TableRowActionBase
7
15
  * @since 2.7.0
@@ -30,13 +38,6 @@ declare class TableRowAction extends TableRowActionBase {
30
38
  * @public
31
39
  */
32
40
  text: string;
33
- /**
34
- * Defines the disabled state of the row action.
35
- *
36
- * @default false
37
- * @public
38
- */
39
- disabled: boolean;
40
41
  getRenderInfo(): {
41
42
  text: string;
42
43
  icon: string;
@@ -9,7 +9,15 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
9
9
  import TableRowActionBase from "./TableRowActionBase.js";
10
10
  /**
11
11
  * @class
12
- * The `TableRowAction` class defines a row action for table rows.
12
+ *
13
+ * ### Overview
14
+ *
15
+ * The `ui5-table-row-action` component defines an action for table rows.
16
+ *
17
+ * ### ES6 Module Import
18
+ *
19
+ * `import "@ui5/webcomponents/dist/TableRowAction.js";`
20
+ *
13
21
  * @constructor
14
22
  * @extends TableRowActionBase
15
23
  * @since 2.7.0
@@ -40,13 +48,6 @@ let TableRowAction = class TableRowAction extends TableRowActionBase {
40
48
  * @public
41
49
  */
42
50
  this.text = "";
43
- /**
44
- * Defines the disabled state of the row action.
45
- *
46
- * @default false
47
- * @public
48
- */
49
- this.disabled = false;
50
51
  }
51
52
  getRenderInfo() {
52
53
  return {
@@ -62,9 +63,6 @@ __decorate([
62
63
  __decorate([
63
64
  property()
64
65
  ], TableRowAction.prototype, "text", void 0);
65
- __decorate([
66
- property({ type: Boolean })
67
- ], TableRowAction.prototype, "disabled", void 0);
68
66
  TableRowAction = __decorate([
69
67
  customElement({ tag: "ui5-table-row-action" })
70
68
  ], TableRowAction);
@@ -1 +1 @@
1
- {"version":3,"file":"TableRowAction.js","sourceRoot":"","sources":["../src/TableRowAction.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD;;;;;;;;GAQG;AAGH,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,kBAAkB;IAA/C;;QACC;;;;;;;;;;WAUG;QAEH,SAAI,GAAG,EAAE,CAAC;QAEV;;;;;;;WAOG;QAEH,SAAI,GAAG,EAAE,CAAC;QAEV;;;;;WAKG;QAEH,aAAQ,GAAG,KAAK,CAAC;IASlB,CAAC;IAPA,aAAa;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI;SACjB,CAAC;IACH,CAAC;CACD,CAAA;AA7BA;IADC,QAAQ,EAAE;4CACD;AAWV;IADC,QAAQ,EAAE;4CACD;AASV;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gDACX;AAjCZ,cAAc;IAFnB,aAAa,CAAC,EAAE,GAAG,EAAE,sBAAsB,EAAE,CAAC;GAEzC,cAAc,CA0CnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport TableRowActionBase from \"./TableRowActionBase.js\";\n\n/**\n * @class\n * The `TableRowAction` class defines a row action for table rows.\n * @constructor\n * @extends TableRowActionBase\n * @since 2.7.0\n * @public\n * @experimental\n */\n@customElement({ tag: \"ui5-table-row-action\" })\n\nclass TableRowAction extends TableRowActionBase {\n\t/**\n\t * Defines the icon of the row action.\n\t *\n\t * **Note:** For row actions to work properly, this property is mandatory.\n\t *\n\t * **Note:** SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n\t * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ticon = \"\";\n\n\t/**\n\t * Defines the text of the row action.\n\t *\n\t * **Note:** For row actions to work properly, this property is mandatory.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext = \"\";\n\n\t/**\n\t * Defines the disabled state of the row action.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\tgetRenderInfo() {\n\t\treturn {\n\t\t\ttext: this.text,\n\t\t\ticon: this.icon,\n\t\t\tinteractive: true,\n\t\t};\n\t}\n}\n\nTableRowAction.define();\n\nexport default TableRowAction;\n"]}
1
+ {"version":3,"file":"TableRowAction.js","sourceRoot":"","sources":["../src/TableRowAction.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD;;;;;;;;;;;;;;;;GAgBG;AAGH,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,kBAAkB;IAA/C;;QACC;;;;;;;;;;WAUG;QAEH,SAAI,GAAG,EAAE,CAAC;QAEV;;;;;;;WAOG;QAEH,SAAI,GAAG,EAAE,CAAC;IASX,CAAC;IAPA,aAAa;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI;SACjB,CAAC;IACH,CAAC;CACD,CAAA;AApBA;IADC,QAAQ,EAAE;4CACD;AAWV;IADC,QAAQ,EAAE;4CACD;AAxBL,cAAc;IAFnB,aAAa,CAAC,EAAE,GAAG,EAAE,sBAAsB,EAAE,CAAC;GAEzC,cAAc,CAiCnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport TableRowActionBase from \"./TableRowActionBase.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-row-action` component defines an action for table rows.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableRowAction.js\";`\n *\n * @constructor\n * @extends TableRowActionBase\n * @since 2.7.0\n * @public\n * @experimental\n */\n@customElement({ tag: \"ui5-table-row-action\" })\n\nclass TableRowAction extends TableRowActionBase {\n\t/**\n\t * Defines the icon of the row action.\n\t *\n\t * **Note:** For row actions to work properly, this property is mandatory.\n\t *\n\t * **Note:** SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n\t * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ticon = \"\";\n\n\t/**\n\t * Defines the text of the row action.\n\t *\n\t * **Note:** For row actions to work properly, this property is mandatory.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext = \"\";\n\n\tgetRenderInfo() {\n\t\treturn {\n\t\t\ttext: this.text,\n\t\t\ticon: this.icon,\n\t\t\tinteractive: true,\n\t\t};\n\t}\n}\n\nTableRowAction.define();\n\nexport default TableRowAction;\n"]}