@ui5/webcomponents 2.6.3 → 2.7.0-rc.1

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 (878) hide show
  1. package/CHANGELOG.md +38 -2
  2. package/README.md +1 -1
  3. package/cypress/specs/Card.cy.ts +51 -0
  4. package/cypress/specs/ColorPicker.cy.ts +98 -0
  5. package/cypress/specs/Label.cy.ts +128 -0
  6. package/cypress/specs/Table.cy.ts +32 -2
  7. package/cypress/specs/TableRowActions.cy.ts +212 -0
  8. package/cypress/specs/Tag.cy.ts +76 -0
  9. package/cypress/specs/Text.cy.ts +31 -0
  10. package/cypress/specs/Title.cy.ts +37 -0
  11. package/cypress/specs/Toolbar.cy.ts +75 -0
  12. package/cypress/support/commands/ColorPalette.commands.ts +6 -0
  13. package/cypress/support/commands/ColorPicker.commands.ts +24 -0
  14. package/cypress/support/commands.ts +3 -0
  15. package/dist/.tsbuildinfo +1 -1
  16. package/dist/CardHeader.d.ts +1 -1
  17. package/dist/CardHeader.js +1 -1
  18. package/dist/CardHeader.js.map +1 -1
  19. package/dist/CardHeaderTemplate.js +1 -1
  20. package/dist/CardHeaderTemplate.js.map +1 -1
  21. package/dist/ColorPalette.d.ts +21 -12
  22. package/dist/ColorPalette.js +38 -32
  23. package/dist/ColorPalette.js.map +1 -1
  24. package/dist/ColorPaletteTemplate.js +2 -2
  25. package/dist/ColorPaletteTemplate.js.map +1 -1
  26. package/dist/ColorPicker.d.ts +30 -28
  27. package/dist/ColorPicker.js +145 -99
  28. package/dist/ColorPicker.js.map +1 -1
  29. package/dist/ColorPickerTemplate.js +5 -3
  30. package/dist/ColorPickerTemplate.js.map +1 -1
  31. package/dist/DateTimeInput.d.ts +20 -0
  32. package/dist/DateTimeInput.js +44 -0
  33. package/dist/DateTimeInput.js.map +1 -0
  34. package/dist/Form.d.ts +0 -2
  35. package/dist/Form.js +0 -1
  36. package/dist/Form.js.map +1 -1
  37. package/dist/FormGroup.d.ts +0 -1
  38. package/dist/FormGroup.js +0 -1
  39. package/dist/FormGroup.js.map +1 -1
  40. package/dist/FormItem.d.ts +0 -1
  41. package/dist/FormItem.js +0 -1
  42. package/dist/FormItem.js.map +1 -1
  43. package/dist/Input.d.ts +5 -1
  44. package/dist/Input.js +14 -12
  45. package/dist/Input.js.map +1 -1
  46. package/dist/Menu.d.ts +2 -2
  47. package/dist/Menu.js +34 -19
  48. package/dist/Menu.js.map +1 -1
  49. package/dist/MenuItem.d.ts +9 -2
  50. package/dist/MenuItem.js +50 -6
  51. package/dist/MenuItem.js.map +1 -1
  52. package/dist/NavigationMenuTemplate.js +1 -1
  53. package/dist/NavigationMenuTemplate.js.map +1 -1
  54. package/dist/Popover.d.ts +1 -1
  55. package/dist/Popover.js +7 -6
  56. package/dist/Popover.js.map +1 -1
  57. package/dist/Popup.js +0 -2
  58. package/dist/Popup.js.map +1 -1
  59. package/dist/Select.d.ts +1 -3
  60. package/dist/Select.js +4 -6
  61. package/dist/Select.js.map +1 -1
  62. package/dist/SelectPopoverTemplate.d.ts +2 -0
  63. package/dist/SelectPopoverTemplate.js +28 -0
  64. package/dist/SelectPopoverTemplate.js.map +1 -0
  65. package/dist/SelectTemplate.d.ts +2 -0
  66. package/dist/SelectTemplate.js +19 -0
  67. package/dist/SelectTemplate.js.map +1 -0
  68. package/dist/SwitchTemplate.js +1 -1
  69. package/dist/SwitchTemplate.js.map +1 -1
  70. package/dist/TabContainer.js +3 -3
  71. package/dist/TabContainer.js.map +1 -1
  72. package/dist/Table.d.ts +31 -7
  73. package/dist/Table.js +43 -8
  74. package/dist/Table.js.map +1 -1
  75. package/dist/TableCell.d.ts +2 -0
  76. package/dist/TableCell.js +9 -4
  77. package/dist/TableCell.js.map +1 -1
  78. package/dist/TableCellBase.d.ts +2 -2
  79. package/dist/TableCellBase.js +3 -3
  80. package/dist/TableCellBase.js.map +1 -1
  81. package/dist/TableExtension.d.ts +1 -1
  82. package/dist/TableExtension.js +1 -1
  83. package/dist/TableExtension.js.map +1 -1
  84. package/dist/TableHeaderCell.d.ts +8 -0
  85. package/dist/TableHeaderCell.js +7 -2
  86. package/dist/TableHeaderCell.js.map +1 -1
  87. package/dist/TableHeaderRow.d.ts +2 -0
  88. package/dist/TableHeaderRow.js +7 -1
  89. package/dist/TableHeaderRow.js.map +1 -1
  90. package/dist/TableRow.d.ts +18 -1
  91. package/dist/TableRow.js +64 -5
  92. package/dist/TableRow.js.map +1 -1
  93. package/dist/TableRowAction.d.ts +45 -0
  94. package/dist/TableRowAction.js +72 -0
  95. package/dist/TableRowAction.js.map +1 -0
  96. package/dist/TableRowActionBase.d.ts +38 -0
  97. package/dist/TableRowActionBase.js +104 -0
  98. package/dist/TableRowActionBase.js.map +1 -0
  99. package/dist/TableRowActionNavigation.d.ts +27 -0
  100. package/dist/TableRowActionNavigation.js +53 -0
  101. package/dist/TableRowActionNavigation.js.map +1 -0
  102. package/dist/TableRowBase.d.ts +1 -0
  103. package/dist/TableRowBase.js +4 -0
  104. package/dist/TableRowBase.js.map +1 -1
  105. package/dist/TableVirtualizer.d.ts +2 -2
  106. package/dist/TableVirtualizer.js +2 -2
  107. package/dist/TableVirtualizer.js.map +1 -1
  108. package/dist/TimePicker.d.ts +21 -1
  109. package/dist/TimePicker.js +44 -2
  110. package/dist/TimePicker.js.map +1 -1
  111. package/dist/TimePickerPopoverTemplate.js +29 -2
  112. package/dist/TimePickerPopoverTemplate.js.map +1 -1
  113. package/dist/TimePickerTemplate.js +4 -3
  114. package/dist/TimePickerTemplate.js.map +1 -1
  115. package/dist/ToastTemplate.js +3 -2
  116. package/dist/ToastTemplate.js.map +1 -1
  117. package/dist/Token.d.ts +0 -5
  118. package/dist/Token.js +0 -8
  119. package/dist/Token.js.map +1 -1
  120. package/dist/Tokenizer.d.ts +0 -1
  121. package/dist/Tokenizer.js +0 -23
  122. package/dist/Tokenizer.js.map +1 -1
  123. package/dist/TokenizerPopoverTemplate.js +0 -1
  124. package/dist/TokenizerPopoverTemplate.js.map +1 -1
  125. package/dist/Toolbar.d.ts +1 -3
  126. package/dist/Toolbar.js +6 -42
  127. package/dist/Toolbar.js.map +1 -1
  128. package/dist/ToolbarButton.d.ts +1 -5
  129. package/dist/ToolbarButton.js +6 -4
  130. package/dist/ToolbarButton.js.map +1 -1
  131. package/dist/ToolbarButtonTemplate.js +1 -1
  132. package/dist/ToolbarButtonTemplate.js.map +1 -1
  133. package/dist/ToolbarItem.d.ts +6 -17
  134. package/dist/ToolbarItem.js +18 -8
  135. package/dist/ToolbarItem.js.map +1 -1
  136. package/dist/ToolbarPopoverButtonTemplate.js +1 -1
  137. package/dist/ToolbarPopoverButtonTemplate.js.map +1 -1
  138. package/dist/ToolbarPopoverSelectTemplate.js +1 -1
  139. package/dist/ToolbarPopoverSelectTemplate.js.map +1 -1
  140. package/dist/ToolbarSelect.d.ts +9 -11
  141. package/dist/ToolbarSelect.js +41 -41
  142. package/dist/ToolbarSelect.js.map +1 -1
  143. package/dist/ToolbarSelectTemplate.js +1 -1
  144. package/dist/ToolbarSelectTemplate.js.map +1 -1
  145. package/dist/ToolbarTemplate.js +1 -1
  146. package/dist/ToolbarTemplate.js.map +1 -1
  147. package/dist/TreeItemBase.d.ts +1 -1
  148. package/dist/TreeItemCustom.js +5 -1
  149. package/dist/TreeItemCustom.js.map +1 -1
  150. package/dist/bundle.esm.d.ts +0 -2
  151. package/dist/bundle.esm.js +2 -5
  152. package/dist/bundle.esm.js.map +1 -1
  153. package/dist/colorpicker-utils/ColorValue.d.ts +53 -0
  154. package/dist/colorpicker-utils/ColorValue.js +143 -0
  155. package/dist/colorpicker-utils/ColorValue.js.map +1 -0
  156. package/dist/css/themes/Avatar.css +1 -1
  157. package/dist/css/themes/AvatarGroup.css +1 -1
  158. package/dist/css/themes/Bar.css +1 -1
  159. package/dist/css/themes/Breadcrumbs.css +1 -1
  160. package/dist/css/themes/BusyIndicator.css +1 -1
  161. package/dist/css/themes/Button.css +1 -1
  162. package/dist/css/themes/Calendar.css +1 -1
  163. package/dist/css/themes/CalendarHeader.css +1 -1
  164. package/dist/css/themes/CalendarLegend.css +1 -1
  165. package/dist/css/themes/CalendarLegendItem.css +1 -1
  166. package/dist/css/themes/Card.css +1 -1
  167. package/dist/css/themes/CardHeader.css +1 -1
  168. package/dist/css/themes/Carousel.css +1 -1
  169. package/dist/css/themes/CheckBox.css +1 -1
  170. package/dist/css/themes/ColorPalette.css +1 -1
  171. package/dist/css/themes/ColorPaletteItem.css +1 -1
  172. package/dist/css/themes/ColorPalettePopover.css +1 -1
  173. package/dist/css/themes/ColorPicker.css +1 -1
  174. package/dist/css/themes/ComboBox.css +1 -1
  175. package/dist/css/themes/ComboBoxItem.css +1 -1
  176. package/dist/css/themes/DatePicker.css +1 -1
  177. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  178. package/dist/css/themes/DayPicker.css +1 -1
  179. package/dist/css/themes/Dialog.css +1 -1
  180. package/dist/css/themes/FileUploader.css +1 -1
  181. package/dist/css/themes/Form.css +1 -1
  182. package/dist/css/themes/FormItem.css +1 -1
  183. package/dist/css/themes/FormItemSpan.css +1 -1
  184. package/dist/css/themes/GrowingButton.css +1 -1
  185. package/dist/css/themes/Icon.css +1 -1
  186. package/dist/css/themes/Input.css +1 -1
  187. package/dist/css/themes/InputIcon.css +1 -1
  188. package/dist/css/themes/InputSharedStyles.css +1 -1
  189. package/dist/css/themes/Label.css +1 -1
  190. package/dist/css/themes/Link.css +1 -1
  191. package/dist/css/themes/List.css +1 -1
  192. package/dist/css/themes/ListItem.css +1 -1
  193. package/dist/css/themes/ListItemBase.css +1 -1
  194. package/dist/css/themes/ListItemCustom.css +1 -1
  195. package/dist/css/themes/ListItemGroup.css +1 -1
  196. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  197. package/dist/css/themes/ListItemIcon.css +1 -1
  198. package/dist/css/themes/Menu.css +1 -1
  199. package/dist/css/themes/MenuItem.css +1 -1
  200. package/dist/css/themes/MessageStrip.css +1 -1
  201. package/dist/css/themes/MonthPicker.css +1 -1
  202. package/dist/css/themes/MultiComboBox.css +1 -1
  203. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  204. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  205. package/dist/css/themes/MultiInput.css +1 -1
  206. package/dist/css/themes/NavigationMenu.css +1 -1
  207. package/dist/css/themes/NavigationMenuItem.css +1 -1
  208. package/dist/css/themes/OptionBase.css +1 -1
  209. package/dist/css/themes/Panel.css +1 -1
  210. package/dist/css/themes/Popover.css +1 -1
  211. package/dist/css/themes/PopupsCommon.css +1 -1
  212. package/dist/css/themes/ProgressIndicator.css +1 -1
  213. package/dist/css/themes/RadioButton.css +1 -1
  214. package/dist/css/themes/RangeSlider.css +1 -1
  215. package/dist/css/themes/RatingIndicator.css +1 -1
  216. package/dist/css/themes/ResponsivePopover.css +1 -1
  217. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  218. package/dist/css/themes/SegmentedButton.css +1 -1
  219. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  220. package/dist/css/themes/Select.css +1 -1
  221. package/dist/css/themes/SliderBase.css +1 -1
  222. package/dist/css/themes/SplitButton.css +1 -1
  223. package/dist/css/themes/StepInput.css +1 -1
  224. package/dist/css/themes/SuggestionItem.css +1 -1
  225. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  226. package/dist/css/themes/Switch.css +1 -1
  227. package/dist/css/themes/TabContainer.css +1 -1
  228. package/dist/css/themes/TabInOverflow.css +1 -1
  229. package/dist/css/themes/TabInStrip.css +1 -1
  230. package/dist/css/themes/TabSemanticIcon.css +1 -1
  231. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  232. package/dist/css/themes/Table.css +1 -1
  233. package/dist/css/themes/TableCellBase.css +1 -1
  234. package/dist/css/themes/TableHeaderRow.css +1 -1
  235. package/dist/css/themes/TableRow.css +1 -1
  236. package/dist/css/themes/TableRowActionBase.css +1 -0
  237. package/dist/css/themes/TableRowBase.css +1 -1
  238. package/dist/css/themes/Tag.css +1 -1
  239. package/dist/css/themes/Text.css +1 -1
  240. package/dist/css/themes/TextArea.css +1 -1
  241. package/dist/css/themes/TimePicker.css +1 -1
  242. package/dist/css/themes/TimePickerPopover.css +1 -1
  243. package/dist/css/themes/Toast.css +1 -1
  244. package/dist/css/themes/ToggleButton.css +1 -1
  245. package/dist/css/themes/Token.css +1 -1
  246. package/dist/css/themes/Tokenizer.css +1 -1
  247. package/dist/css/themes/TokenizerPopover.css +1 -1
  248. package/dist/css/themes/Toolbar.css +1 -1
  249. package/dist/css/themes/ToolbarPopover.css +1 -1
  250. package/dist/css/themes/TreeItem.css +1 -1
  251. package/dist/css/themes/ValueStateMessage.css +1 -1
  252. package/dist/css/themes/YearPicker.css +1 -1
  253. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  254. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  255. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  256. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  257. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  258. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  259. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  260. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  261. package/dist/custom-elements-internal.json +513 -56
  262. package/dist/custom-elements.json +416 -37
  263. package/dist/features/ColorPaletteMoreColors.d.ts +1 -11
  264. package/dist/features/ColorPaletteMoreColors.js +3 -18
  265. package/dist/features/ColorPaletteMoreColors.js.map +1 -1
  266. package/dist/features/ColorPaletteMoreColorsTemplate.js +1 -1
  267. package/dist/features/ColorPaletteMoreColorsTemplate.js.map +1 -1
  268. package/dist/features/InputSuggestions.d.ts +1 -2
  269. package/dist/features/InputSuggestions.js +3 -5
  270. package/dist/features/InputSuggestions.js.map +1 -1
  271. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  272. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  273. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  274. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  275. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  276. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  277. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  278. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  279. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  280. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  281. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  282. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  283. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  284. package/dist/generated/i18n/i18n-defaults.d.ts +7 -1
  285. package/dist/generated/i18n/i18n-defaults.js +8 -2
  286. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  287. package/dist/generated/json-imports/Themes-fetch.js +1 -5
  288. package/dist/generated/json-imports/Themes-fetch.js.map +1 -1
  289. package/dist/generated/json-imports/Themes.js +1 -5
  290. package/dist/generated/json-imports/Themes.js.map +1 -1
  291. package/dist/generated/templates/TableCellTemplate.lit.js +6 -4
  292. package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -1
  293. package/dist/generated/templates/TableHeaderRowTemplate.lit.js +3 -2
  294. package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +1 -1
  295. package/dist/generated/templates/TableRowActionBaseTemplate.lit.d.ts +3 -0
  296. package/dist/generated/templates/TableRowActionBaseTemplate.lit.js +11 -0
  297. package/dist/generated/templates/TableRowActionBaseTemplate.lit.js.map +1 -0
  298. package/dist/generated/templates/TableRowTemplate.lit.js +8 -4
  299. package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -1
  300. package/dist/generated/templates/TableTemplate.lit.js +1 -1
  301. package/dist/generated/templates/TableTemplate.lit.js.map +1 -1
  302. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  303. package/dist/generated/themes/Avatar.css.js +1 -1
  304. package/dist/generated/themes/Avatar.css.js.map +1 -1
  305. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  306. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  307. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  308. package/dist/generated/themes/Bar.css.d.ts +1 -1
  309. package/dist/generated/themes/Bar.css.js +1 -1
  310. package/dist/generated/themes/Bar.css.js.map +1 -1
  311. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  312. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  313. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  314. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  315. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  316. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  317. package/dist/generated/themes/Button.css.d.ts +1 -1
  318. package/dist/generated/themes/Button.css.js +1 -1
  319. package/dist/generated/themes/Button.css.js.map +1 -1
  320. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  321. package/dist/generated/themes/Calendar.css.js +1 -1
  322. package/dist/generated/themes/Calendar.css.js.map +1 -1
  323. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  324. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  325. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  326. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  327. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  328. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  329. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  330. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  331. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  332. package/dist/generated/themes/Card.css.d.ts +1 -1
  333. package/dist/generated/themes/Card.css.js +1 -1
  334. package/dist/generated/themes/Card.css.js.map +1 -1
  335. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  336. package/dist/generated/themes/CardHeader.css.js +1 -1
  337. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  338. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  339. package/dist/generated/themes/Carousel.css.js +1 -1
  340. package/dist/generated/themes/Carousel.css.js.map +1 -1
  341. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  342. package/dist/generated/themes/CheckBox.css.js +1 -1
  343. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  344. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  345. package/dist/generated/themes/ColorPalette.css.js +1 -1
  346. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  347. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  348. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  349. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  350. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  351. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  352. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  353. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  354. package/dist/generated/themes/ColorPicker.css.js +1 -1
  355. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  356. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  357. package/dist/generated/themes/ComboBox.css.js +1 -1
  358. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  359. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  360. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  361. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  362. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  363. package/dist/generated/themes/DatePicker.css.js +1 -1
  364. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  365. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  366. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  367. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  368. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  369. package/dist/generated/themes/DayPicker.css.js +1 -1
  370. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  371. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  372. package/dist/generated/themes/Dialog.css.js +1 -1
  373. package/dist/generated/themes/Dialog.css.js.map +1 -1
  374. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  375. package/dist/generated/themes/FileUploader.css.js +1 -1
  376. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  377. package/dist/generated/themes/Form.css.d.ts +1 -1
  378. package/dist/generated/themes/Form.css.js +1 -1
  379. package/dist/generated/themes/Form.css.js.map +1 -1
  380. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  381. package/dist/generated/themes/FormItem.css.js +1 -1
  382. package/dist/generated/themes/FormItem.css.js.map +1 -1
  383. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  384. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  385. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  386. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  387. package/dist/generated/themes/GrowingButton.css.js +1 -1
  388. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  389. package/dist/generated/themes/Icon.css.d.ts +1 -1
  390. package/dist/generated/themes/Icon.css.js +1 -1
  391. package/dist/generated/themes/Icon.css.js.map +1 -1
  392. package/dist/generated/themes/Input.css.d.ts +1 -1
  393. package/dist/generated/themes/Input.css.js +1 -1
  394. package/dist/generated/themes/Input.css.js.map +1 -1
  395. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  396. package/dist/generated/themes/InputIcon.css.js +1 -1
  397. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  398. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  399. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  400. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  401. package/dist/generated/themes/Label.css.d.ts +1 -1
  402. package/dist/generated/themes/Label.css.js +1 -1
  403. package/dist/generated/themes/Label.css.js.map +1 -1
  404. package/dist/generated/themes/Link.css.d.ts +1 -1
  405. package/dist/generated/themes/Link.css.js +1 -1
  406. package/dist/generated/themes/Link.css.js.map +1 -1
  407. package/dist/generated/themes/List.css.d.ts +1 -1
  408. package/dist/generated/themes/List.css.js +1 -1
  409. package/dist/generated/themes/List.css.js.map +1 -1
  410. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  411. package/dist/generated/themes/ListItem.css.js +1 -1
  412. package/dist/generated/themes/ListItem.css.js.map +1 -1
  413. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  414. package/dist/generated/themes/ListItemBase.css.js +1 -1
  415. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  416. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  417. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  418. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  419. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  420. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  421. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  422. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  423. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  424. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  425. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  426. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  427. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  428. package/dist/generated/themes/Menu.css.d.ts +1 -1
  429. package/dist/generated/themes/Menu.css.js +1 -1
  430. package/dist/generated/themes/Menu.css.js.map +1 -1
  431. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  432. package/dist/generated/themes/MenuItem.css.js +1 -1
  433. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  434. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  435. package/dist/generated/themes/MessageStrip.css.js +1 -1
  436. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  437. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  438. package/dist/generated/themes/MonthPicker.css.js +1 -1
  439. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  440. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  441. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  442. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  443. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  444. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  445. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  446. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  447. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  448. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  449. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  450. package/dist/generated/themes/MultiInput.css.js +1 -1
  451. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  452. package/dist/generated/themes/NavigationMenu.css.d.ts +1 -1
  453. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  454. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  455. package/dist/generated/themes/NavigationMenuItem.css.d.ts +1 -1
  456. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  457. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  458. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  459. package/dist/generated/themes/OptionBase.css.js +1 -1
  460. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  461. package/dist/generated/themes/Panel.css.d.ts +1 -1
  462. package/dist/generated/themes/Panel.css.js +1 -1
  463. package/dist/generated/themes/Panel.css.js.map +1 -1
  464. package/dist/generated/themes/Popover.css.d.ts +1 -1
  465. package/dist/generated/themes/Popover.css.js +1 -1
  466. package/dist/generated/themes/Popover.css.js.map +1 -1
  467. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  468. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  469. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  470. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  471. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  472. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  473. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  474. package/dist/generated/themes/RadioButton.css.js +1 -1
  475. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  476. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  477. package/dist/generated/themes/RangeSlider.css.js +1 -1
  478. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  479. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  480. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  481. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  482. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  483. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  484. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  485. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  486. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  487. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  488. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  489. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  490. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  491. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  492. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  493. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  494. package/dist/generated/themes/Select.css.d.ts +1 -1
  495. package/dist/generated/themes/Select.css.js +1 -1
  496. package/dist/generated/themes/Select.css.js.map +1 -1
  497. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  498. package/dist/generated/themes/SliderBase.css.js +1 -1
  499. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  500. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  501. package/dist/generated/themes/SplitButton.css.js +1 -1
  502. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  503. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  504. package/dist/generated/themes/StepInput.css.js +1 -1
  505. package/dist/generated/themes/StepInput.css.js.map +1 -1
  506. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  507. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  508. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  509. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  510. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  511. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  512. package/dist/generated/themes/Switch.css.d.ts +1 -1
  513. package/dist/generated/themes/Switch.css.js +1 -1
  514. package/dist/generated/themes/Switch.css.js.map +1 -1
  515. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  516. package/dist/generated/themes/TabContainer.css.js +1 -1
  517. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  518. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  519. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  520. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  521. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  522. package/dist/generated/themes/TabInStrip.css.js +1 -1
  523. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  524. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  525. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  526. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  527. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  528. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  529. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  530. package/dist/generated/themes/Table.css.d.ts +1 -1
  531. package/dist/generated/themes/Table.css.js +1 -1
  532. package/dist/generated/themes/Table.css.js.map +1 -1
  533. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  534. package/dist/generated/themes/TableCellBase.css.js +1 -1
  535. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  536. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  537. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  538. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  539. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  540. package/dist/generated/themes/TableRow.css.js +1 -1
  541. package/dist/generated/themes/TableRow.css.js.map +1 -1
  542. package/dist/generated/themes/TableRowActionBase.css.d.ts +2 -0
  543. package/dist/generated/themes/TableRowActionBase.css.js +8 -0
  544. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -0
  545. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  546. package/dist/generated/themes/TableRowBase.css.js +1 -1
  547. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  548. package/dist/generated/themes/Tag.css.d.ts +1 -1
  549. package/dist/generated/themes/Tag.css.js +1 -1
  550. package/dist/generated/themes/Tag.css.js.map +1 -1
  551. package/dist/generated/themes/Text.css.d.ts +1 -1
  552. package/dist/generated/themes/Text.css.js +1 -1
  553. package/dist/generated/themes/Text.css.js.map +1 -1
  554. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  555. package/dist/generated/themes/TextArea.css.js +1 -1
  556. package/dist/generated/themes/TextArea.css.js.map +1 -1
  557. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  558. package/dist/generated/themes/TimePicker.css.js +1 -1
  559. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  560. package/dist/generated/themes/TimePickerPopover.css.d.ts +1 -1
  561. package/dist/generated/themes/TimePickerPopover.css.js +1 -1
  562. package/dist/generated/themes/TimePickerPopover.css.js.map +1 -1
  563. package/dist/generated/themes/Toast.css.d.ts +1 -1
  564. package/dist/generated/themes/Toast.css.js +1 -1
  565. package/dist/generated/themes/Toast.css.js.map +1 -1
  566. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  567. package/dist/generated/themes/ToggleButton.css.js +1 -1
  568. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  569. package/dist/generated/themes/Token.css.d.ts +1 -1
  570. package/dist/generated/themes/Token.css.js +1 -1
  571. package/dist/generated/themes/Token.css.js.map +1 -1
  572. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  573. package/dist/generated/themes/Tokenizer.css.js +1 -1
  574. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  575. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  576. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  577. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  578. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  579. package/dist/generated/themes/Toolbar.css.js +1 -1
  580. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  581. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  582. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  583. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  584. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  585. package/dist/generated/themes/TreeItem.css.js +1 -1
  586. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  587. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  588. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  589. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  590. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  591. package/dist/generated/themes/YearPicker.css.js +1 -1
  592. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  593. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  594. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  595. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  596. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  597. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  598. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  599. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  600. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  601. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  602. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  603. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  604. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  605. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  606. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  607. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  608. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  609. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  610. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  611. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  612. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  613. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  614. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  615. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  616. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  617. package/dist/vscode.html-custom-data.json +77 -11
  618. package/dist/web-types.json +177 -27
  619. package/package.json +13 -10
  620. package/src/CardHeaderTemplate.tsx +1 -2
  621. package/src/ColorPaletteTemplate.tsx +2 -2
  622. package/src/ColorPickerTemplate.tsx +37 -37
  623. package/src/NavigationMenuTemplate.tsx +1 -0
  624. package/src/SelectPopoverTemplate.tsx +106 -0
  625. package/src/SelectTemplate.tsx +68 -0
  626. package/src/SwitchTemplate.tsx +1 -7
  627. package/src/Table.hbs +1 -1
  628. package/src/TableCell.hbs +6 -5
  629. package/src/TableHeaderRow.hbs +4 -0
  630. package/src/TableRow.hbs +22 -3
  631. package/src/TableRowActionBase.hbs +17 -0
  632. package/src/TimePickerPopoverTemplate.tsx +48 -1
  633. package/src/TimePickerTemplate.tsx +7 -5
  634. package/src/ToastTemplate.tsx +6 -4
  635. package/src/TokenizerPopoverTemplate.tsx +0 -1
  636. package/src/ToolbarButtonTemplate.tsx +1 -0
  637. package/src/ToolbarPopoverButtonTemplate.tsx +1 -0
  638. package/src/ToolbarPopoverSelectTemplate.tsx +4 -0
  639. package/src/ToolbarSelectTemplate.tsx +4 -0
  640. package/src/ToolbarTemplate.tsx +1 -0
  641. package/src/features/ColorPaletteMoreColorsTemplate.tsx +2 -2
  642. package/src/i18n/messagebundle.properties +22 -6
  643. package/src/i18n/messagebundle_de.properties +1 -1
  644. package/src/i18n/messagebundle_en.properties +3 -1
  645. package/src/i18n/messagebundle_en_US_sappsd.properties +3 -1
  646. package/src/i18n/messagebundle_en_US_saprigi.properties +3 -1
  647. package/src/i18n/messagebundle_en_US_saptrc.properties +3 -1
  648. package/src/themes/ColorPicker.css +20 -4
  649. package/src/themes/FormItem.css +4 -5
  650. package/src/themes/Label.css +1 -1
  651. package/src/themes/NavigationMenuItem.css +3 -1
  652. package/src/themes/Switch.css +0 -9
  653. package/src/themes/TabInOverflow.css +6 -6
  654. package/src/themes/TableCellBase.css +1 -1
  655. package/src/themes/TableRow.css +96 -73
  656. package/src/themes/TableRowActionBase.css +13 -0
  657. package/src/themes/TableRowBase.css +14 -6
  658. package/src/themes/TimePicker.css +4 -0
  659. package/src/themes/TimePickerPopover.css +5 -0
  660. package/src/themes/Toolbar.css +13 -1
  661. package/src/themes/base/Switch-parameters.css +0 -1
  662. package/src/themes/base/TabContainer-parameters.css +2 -1
  663. package/src/themes/base/Table-parameters.css +3 -9
  664. package/src/themes/base/Toolbar-parameters.css +2 -1
  665. package/src/themes/base/sizes-parameters.css +6 -6
  666. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +2 -1
  667. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +2 -1
  668. package/src/themes/sap_horizon/RadioButton-parameters.css +5 -1
  669. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +5 -1
  670. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  671. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +5 -5
  672. package/src/themes/sap_horizon_hcb/TabContainer-parameters.css +2 -1
  673. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +5 -5
  674. package/src/themes/sap_horizon_hcw/TabContainer-parameters.css +2 -1
  675. package/vitest.config.js +9 -0
  676. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +0 -1
  677. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +0 -1
  678. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +0 -1
  679. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +0 -1
  680. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +0 -1
  681. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +0 -1
  682. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +0 -1
  683. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +0 -1
  684. package/dist/generated/templates/SelectPopoverTemplate.lit.d.ts +0 -3
  685. package/dist/generated/templates/SelectPopoverTemplate.lit.js +0 -19
  686. package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +0 -1
  687. package/dist/generated/templates/SelectTemplate.lit.d.ts +0 -3
  688. package/dist/generated/templates/SelectTemplate.lit.js +0 -24
  689. package/dist/generated/templates/SelectTemplate.lit.js.map +0 -1
  690. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.d.ts +0 -2
  691. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +0 -3
  692. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +0 -1
  693. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.d.ts +0 -2
  694. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +0 -3
  695. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +0 -1
  696. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.d.ts +0 -2
  697. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +0 -3
  698. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +0 -1
  699. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.d.ts +0 -2
  700. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +0 -3
  701. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +0 -1
  702. package/src/Select.hbs +0 -51
  703. package/src/SelectPopover.hbs +0 -78
  704. package/src/themes/sap_horizon_dark_exp/Avatar-parameters.css +0 -54
  705. package/src/themes/sap_horizon_dark_exp/Breadcrumbs-parameters.css +0 -3
  706. package/src/themes/sap_horizon_dark_exp/Button-parameters.css +0 -17
  707. package/src/themes/sap_horizon_dark_exp/CalendarHeader-parameters.css +0 -19
  708. package/src/themes/sap_horizon_dark_exp/CalendarLegendItem-parameters.css +0 -6
  709. package/src/themes/sap_horizon_dark_exp/Card-parameters.css +0 -15
  710. package/src/themes/sap_horizon_dark_exp/Carousel-parameters.css +0 -5
  711. package/src/themes/sap_horizon_dark_exp/CheckBox-parameters.css +0 -44
  712. package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +0 -25
  713. package/src/themes/sap_horizon_dark_exp/ColorPicker-parameters.css +0 -12
  714. package/src/themes/sap_horizon_dark_exp/DatePicker-parameters.css +0 -6
  715. package/src/themes/sap_horizon_dark_exp/DayPicker-parameters.css +0 -68
  716. package/src/themes/sap_horizon_dark_exp/Dialog-parameters.css +0 -9
  717. package/src/themes/sap_horizon_dark_exp/FileUploader-parameters.css +0 -5
  718. package/src/themes/sap_horizon_dark_exp/GrowingButton-parameters.css +0 -6
  719. package/src/themes/sap_horizon_dark_exp/Icon-parameters.css +0 -3
  720. package/src/themes/sap_horizon_dark_exp/Input-parameters.css +0 -34
  721. package/src/themes/sap_horizon_dark_exp/InputIcon-parameters.css +0 -24
  722. package/src/themes/sap_horizon_dark_exp/Link-parameters.css +0 -15
  723. package/src/themes/sap_horizon_dark_exp/List-parameters.css +0 -5
  724. package/src/themes/sap_horizon_dark_exp/ListItemBase-parameters.css +0 -5
  725. package/src/themes/sap_horizon_dark_exp/Menu-parameters.css +0 -5
  726. package/src/themes/sap_horizon_dark_exp/MessageStrip-parameters.css +0 -5
  727. package/src/themes/sap_horizon_dark_exp/MonthPicker-parameters.css +0 -16
  728. package/src/themes/sap_horizon_dark_exp/MultiComboBox-parameters.css +0 -5
  729. package/src/themes/sap_horizon_dark_exp/Panel-parameters.css +0 -14
  730. package/src/themes/sap_horizon_dark_exp/PopupsCommon-parameters.css +0 -5
  731. package/src/themes/sap_horizon_dark_exp/RadioButton-parameters.css +0 -23
  732. package/src/themes/sap_horizon_dark_exp/RatingIndicator-parameters.css +0 -17
  733. package/src/themes/sap_horizon_dark_exp/SegmentedButtton-parameters.css +0 -13
  734. package/src/themes/sap_horizon_dark_exp/Select-parameters.css +0 -5
  735. package/src/themes/sap_horizon_dark_exp/SelectPopover-parameters.css +0 -4
  736. package/src/themes/sap_horizon_dark_exp/SliderBase-parameters.css +0 -72
  737. package/src/themes/sap_horizon_dark_exp/SplitButton-parameters.css +0 -31
  738. package/src/themes/sap_horizon_dark_exp/StepInput-parameters.css +0 -25
  739. package/src/themes/sap_horizon_dark_exp/Switch-parameters.css +0 -148
  740. package/src/themes/sap_horizon_dark_exp/TabContainer-parameters.css +0 -38
  741. package/src/themes/sap_horizon_dark_exp/Tag-parameters.css +0 -1
  742. package/src/themes/sap_horizon_dark_exp/TextArea-parameters.css +0 -45
  743. package/src/themes/sap_horizon_dark_exp/TimePicker-parameters.css +0 -6
  744. package/src/themes/sap_horizon_dark_exp/ToggleButton-parameters.css +0 -1
  745. package/src/themes/sap_horizon_dark_exp/Token-parameters.css +0 -28
  746. package/src/themes/sap_horizon_dark_exp/Tokenizer-parameters.css +0 -5
  747. package/src/themes/sap_horizon_dark_exp/ValueStateMessage-parameters.css +0 -12
  748. package/src/themes/sap_horizon_dark_exp/YearPicker-parameters.css +0 -15
  749. package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +0 -57
  750. package/src/themes/sap_horizon_dark_exp/rtl-parameters.css +0 -6
  751. package/src/themes/sap_horizon_dark_exp/sizes-parameters.css +0 -52
  752. package/src/themes/sap_horizon_exp/Avatar-parameters.css +0 -54
  753. package/src/themes/sap_horizon_exp/AvatarGroup-parameters.css +0 -5
  754. package/src/themes/sap_horizon_exp/Breadcrumbs-parameters.css +0 -3
  755. package/src/themes/sap_horizon_exp/Button-parameters.css +0 -17
  756. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +0 -19
  757. package/src/themes/sap_horizon_exp/Card-parameters.css +0 -15
  758. package/src/themes/sap_horizon_exp/Carousel-parameters.css +0 -5
  759. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +0 -44
  760. package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +0 -25
  761. package/src/themes/sap_horizon_exp/ColorPicker-parameters.css +0 -12
  762. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +0 -6
  763. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +0 -71
  764. package/src/themes/sap_horizon_exp/Dialog-parameters.css +0 -9
  765. package/src/themes/sap_horizon_exp/FileUploader-parameters.css +0 -5
  766. package/src/themes/sap_horizon_exp/GrowingButton-parameters.css +0 -6
  767. package/src/themes/sap_horizon_exp/Icon-parameters.css +0 -3
  768. package/src/themes/sap_horizon_exp/Input-parameters.css +0 -34
  769. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +0 -24
  770. package/src/themes/sap_horizon_exp/Link-parameters.css +0 -15
  771. package/src/themes/sap_horizon_exp/List-parameters.css +0 -5
  772. package/src/themes/sap_horizon_exp/ListItemBase-parameters.css +0 -5
  773. package/src/themes/sap_horizon_exp/Menu-parameters.css +0 -5
  774. package/src/themes/sap_horizon_exp/MessageStrip-parameters.css +0 -5
  775. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +0 -16
  776. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +0 -5
  777. package/src/themes/sap_horizon_exp/Panel-parameters.css +0 -14
  778. package/src/themes/sap_horizon_exp/PopupsCommon-parameters.css +0 -5
  779. package/src/themes/sap_horizon_exp/ProgressIndicator-parameters.css +0 -32
  780. package/src/themes/sap_horizon_exp/ProgressIndicatorLayout-parameters.css +0 -40
  781. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +0 -23
  782. package/src/themes/sap_horizon_exp/RatingIndicator-parameters.css +0 -17
  783. package/src/themes/sap_horizon_exp/SegmentedButtton-parameters.css +0 -13
  784. package/src/themes/sap_horizon_exp/Select-parameters.css +0 -5
  785. package/src/themes/sap_horizon_exp/SelectPopover-parameters.css +0 -4
  786. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +0 -71
  787. package/src/themes/sap_horizon_exp/SplitButton-parameters.css +0 -31
  788. package/src/themes/sap_horizon_exp/StepInput-parameters.css +0 -25
  789. package/src/themes/sap_horizon_exp/Switch-parameters.css +0 -150
  790. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +0 -38
  791. package/src/themes/sap_horizon_exp/Tag-parameters.css +0 -1
  792. package/src/themes/sap_horizon_exp/TextArea-parameters.css +0 -45
  793. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +0 -6
  794. package/src/themes/sap_horizon_exp/ToggleButton-parameters.css +0 -1
  795. package/src/themes/sap_horizon_exp/Token-parameters.css +0 -28
  796. package/src/themes/sap_horizon_exp/Tokenizer-parameters.css +0 -5
  797. package/src/themes/sap_horizon_exp/ValueStateMessage-parameters.css +0 -12
  798. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +0 -15
  799. package/src/themes/sap_horizon_exp/parameters-bundle.css +0 -57
  800. package/src/themes/sap_horizon_exp/rtl-parameters.css +0 -6
  801. package/src/themes/sap_horizon_exp/sizes-parameters.css +0 -51
  802. package/src/themes/sap_horizon_hcb_exp/Avatar-parameters.css +0 -54
  803. package/src/themes/sap_horizon_hcb_exp/BusyIndicator-parameters.css +0 -5
  804. package/src/themes/sap_horizon_hcb_exp/Button-parameters.css +0 -9
  805. package/src/themes/sap_horizon_hcb_exp/CalendarHeader-parameters.css +0 -11
  806. package/src/themes/sap_horizon_hcb_exp/Card-parameters.css +0 -11
  807. package/src/themes/sap_horizon_hcb_exp/Carousel-parameters.css +0 -9
  808. package/src/themes/sap_horizon_hcb_exp/CheckBox-parameters.css +0 -45
  809. package/src/themes/sap_horizon_hcb_exp/ColorPicker-parameters.css +0 -10
  810. package/src/themes/sap_horizon_hcb_exp/DatePicker-parameters.css +0 -5
  811. package/src/themes/sap_horizon_hcb_exp/DayPicker-parameters.css +0 -70
  812. package/src/themes/sap_horizon_hcb_exp/FileUploader-parameters.css +0 -6
  813. package/src/themes/sap_horizon_hcb_exp/GrowingButton-parameters.css +0 -8
  814. package/src/themes/sap_horizon_hcb_exp/Input-parameters.css +0 -32
  815. package/src/themes/sap_horizon_hcb_exp/InputIcon-parameters.css +0 -11
  816. package/src/themes/sap_horizon_hcb_exp/Link-parameters.css +0 -11
  817. package/src/themes/sap_horizon_hcb_exp/ListItem-parameters.css +0 -3
  818. package/src/themes/sap_horizon_hcb_exp/Menu-parameters.css +0 -5
  819. package/src/themes/sap_horizon_hcb_exp/MessageStrip-parameters.css +0 -10
  820. package/src/themes/sap_horizon_hcb_exp/MonthPicker-parameters.css +0 -12
  821. package/src/themes/sap_horizon_hcb_exp/Panel-parameters.css +0 -10
  822. package/src/themes/sap_horizon_hcb_exp/PopupsCommon-parameters.css +0 -5
  823. package/src/themes/sap_horizon_hcb_exp/ProgressIndicator-parameters.css +0 -15
  824. package/src/themes/sap_horizon_hcb_exp/RadioButton-parameters.css +0 -26
  825. package/src/themes/sap_horizon_hcb_exp/RatingIndicator-parameters.css +0 -16
  826. package/src/themes/sap_horizon_hcb_exp/SegmentedButtton-parameters.css +0 -8
  827. package/src/themes/sap_horizon_hcb_exp/Select-parameters.css +0 -10
  828. package/src/themes/sap_horizon_hcb_exp/SliderBase-parameters.css +0 -78
  829. package/src/themes/sap_horizon_hcb_exp/SplitButton-parameters.css +0 -34
  830. package/src/themes/sap_horizon_hcb_exp/Switch-parameters.css +0 -144
  831. package/src/themes/sap_horizon_hcb_exp/TabContainer-parameters.css +0 -49
  832. package/src/themes/sap_horizon_hcb_exp/Tag-parameters.css +0 -1
  833. package/src/themes/sap_horizon_hcb_exp/TextArea-parameters.css +0 -42
  834. package/src/themes/sap_horizon_hcb_exp/TimePicker-parameters.css +0 -5
  835. package/src/themes/sap_horizon_hcb_exp/ToggleButton-parameters.css +0 -1
  836. package/src/themes/sap_horizon_hcb_exp/Token-parameters.css +0 -17
  837. package/src/themes/sap_horizon_hcb_exp/ValueStateMessage-parameters.css +0 -13
  838. package/src/themes/sap_horizon_hcb_exp/YearPicker-parameters.css +0 -12
  839. package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +0 -52
  840. package/src/themes/sap_horizon_hcb_exp/sizes-parameters.css +0 -16
  841. package/src/themes/sap_horizon_hcw_exp/Avatar-parameters.css +0 -54
  842. package/src/themes/sap_horizon_hcw_exp/BusyIndicator-parameters.css +0 -5
  843. package/src/themes/sap_horizon_hcw_exp/Button-parameters.css +0 -9
  844. package/src/themes/sap_horizon_hcw_exp/CalendarHeader-parameters.css +0 -11
  845. package/src/themes/sap_horizon_hcw_exp/Card-parameters.css +0 -11
  846. package/src/themes/sap_horizon_hcw_exp/Carousel-parameters.css +0 -9
  847. package/src/themes/sap_horizon_hcw_exp/CheckBox-parameters.css +0 -45
  848. package/src/themes/sap_horizon_hcw_exp/ColorPicker-parameters.css +0 -10
  849. package/src/themes/sap_horizon_hcw_exp/DatePicker-parameters.css +0 -5
  850. package/src/themes/sap_horizon_hcw_exp/DayPicker-parameters.css +0 -69
  851. package/src/themes/sap_horizon_hcw_exp/FileUploader-parameters.css +0 -6
  852. package/src/themes/sap_horizon_hcw_exp/GrowingButton-parameters.css +0 -8
  853. package/src/themes/sap_horizon_hcw_exp/Input-parameters.css +0 -32
  854. package/src/themes/sap_horizon_hcw_exp/InputIcon-parameters.css +0 -11
  855. package/src/themes/sap_horizon_hcw_exp/Link-parameters.css +0 -11
  856. package/src/themes/sap_horizon_hcw_exp/ListItem-parameters.css +0 -3
  857. package/src/themes/sap_horizon_hcw_exp/Menu-parameters.css +0 -5
  858. package/src/themes/sap_horizon_hcw_exp/MessageStrip-parameters.css +0 -10
  859. package/src/themes/sap_horizon_hcw_exp/MonthPicker-parameters.css +0 -12
  860. package/src/themes/sap_horizon_hcw_exp/Panel-parameters.css +0 -11
  861. package/src/themes/sap_horizon_hcw_exp/PopupsCommon-parameters.css +0 -5
  862. package/src/themes/sap_horizon_hcw_exp/RadioButton-parameters.css +0 -30
  863. package/src/themes/sap_horizon_hcw_exp/RatingIndicator-parameters.css +0 -16
  864. package/src/themes/sap_horizon_hcw_exp/SegmentedButtton-parameters.css +0 -8
  865. package/src/themes/sap_horizon_hcw_exp/Select-parameters.css +0 -10
  866. package/src/themes/sap_horizon_hcw_exp/SliderBase-parameters.css +0 -78
  867. package/src/themes/sap_horizon_hcw_exp/SplitButton-parameters.css +0 -34
  868. package/src/themes/sap_horizon_hcw_exp/Switch-parameters.css +0 -149
  869. package/src/themes/sap_horizon_hcw_exp/TabContainer-parameters.css +0 -49
  870. package/src/themes/sap_horizon_hcw_exp/Tag-parameters.css +0 -1
  871. package/src/themes/sap_horizon_hcw_exp/TextArea-parameters.css +0 -42
  872. package/src/themes/sap_horizon_hcw_exp/TimePicker-parameters.css +0 -5
  873. package/src/themes/sap_horizon_hcw_exp/ToggleButton-parameters.css +0 -1
  874. package/src/themes/sap_horizon_hcw_exp/Token-parameters.css +0 -17
  875. package/src/themes/sap_horizon_hcw_exp/ValueStateMessage-parameters.css +0 -13
  876. package/src/themes/sap_horizon_hcw_exp/YearPicker-parameters.css +0 -12
  877. package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +0 -52
  878. package/src/themes/sap_horizon_hcw_exp/sizes-parameters.css +0 -16
package/dist/Table.js CHANGED
@@ -128,7 +128,7 @@ let Table = Table_1 = class Table extends UI5Element {
128
128
  /**
129
129
  * Defines if the loading indicator should be shown.
130
130
  *
131
- * <b>Note:</b> When the component is loading, it is non-interactive.
131
+ * **Note:** When the component is loading, it is not interactive.
132
132
  * @default false
133
133
  * @public
134
134
  */
@@ -143,6 +143,16 @@ let Table = Table_1 = class Table extends UI5Element {
143
143
  * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.
144
144
  */
145
145
  this.stickyTop = "0";
146
+ /**
147
+ * Defines the maximum number of row actions that is displayed, which determines the width of the row action column.
148
+ *
149
+ * **Note:** It is recommended to use a maximum of 3 row actions, as exceeding this limit may take up too much space on smaller screens.
150
+ *
151
+ * @default 0
152
+ * @since 2.7.0
153
+ * @public
154
+ */
155
+ this.rowActionCount = 0;
146
156
  this._invalidate = 0;
147
157
  this._renderNavigated = false;
148
158
  this._events = ["keydown", "keyup", "click", "focusin", "focusout", "dragenter", "dragleave", "dragover", "drop"];
@@ -169,13 +179,14 @@ let Table = Table_1 = class Table extends UI5Element {
169
179
  }
170
180
  }
171
181
  onBeforeRendering() {
172
- const renderNavigated = this._renderNavigated;
173
182
  this._renderNavigated = this.rows.some(row => row.navigated);
174
- if (renderNavigated !== this._renderNavigated) {
175
- this.rows.forEach(row => {
176
- row._renderNavigated = this._renderNavigated;
177
- });
183
+ if (this.headerRow[0]) {
184
+ this.headerRow[0]._rowActionCount = this.rowActionCount;
178
185
  }
186
+ this.rows.forEach(row => {
187
+ row._renderNavigated = this._renderNavigated;
188
+ row._rowActionCount = this.rowActionCount;
189
+ });
179
190
  this.style.setProperty(getScopedVarName("--ui5_grid_sticky_top"), this.stickyTop);
180
191
  this._refreshPopinState();
181
192
  }
@@ -284,9 +295,13 @@ let Table = Table_1 = class Table extends UI5Element {
284
295
  _isGrowingFeature(feature) {
285
296
  return Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));
286
297
  }
287
- _onRowPress(row) {
298
+ _onRowClick(row) {
288
299
  this.fireDecoratorEvent("row-click", { row });
289
300
  }
301
+ _onRowActionClick(action) {
302
+ const row = action.parentElement;
303
+ this.fireDecoratorEvent("row-action-click", { action, row });
304
+ }
290
305
  get styles() {
291
306
  const virtualizer = this._getVirtualizer();
292
307
  const headerStyleMap = this.headerRow?.[0]?.cells?.reduce((headerStyles, headerCell) => {
@@ -323,6 +338,9 @@ let Table = Table_1 = class Table extends UI5Element {
323
338
  }
324
339
  return `minmax(${cell.width}, ${cell.width})`;
325
340
  }));
341
+ if (this.rowActionCount > 0) {
342
+ widths.push(`calc(var(${getScopedVarName("--_ui5_button_base_min_width")}) * ${this.rowActionCount} + var(${getScopedVarName("--_ui5_table_row_actions_gap")}) * ${this.rowActionCount - 1} + var(${getScopedVarName("--_ui5_table_cell_horizontal_padding")}) * 2)`);
343
+ }
326
344
  if (this._renderNavigated) {
327
345
  widths.push(`var(${getScopedVarName("--_ui5_table_navigated_cell_width")})`);
328
346
  }
@@ -382,6 +400,9 @@ let Table = Table_1 = class Table extends UI5Element {
382
400
  get dropIndicatorDOM() {
383
401
  return this.shadowRoot.querySelector("[ui5-drop-indicator]");
384
402
  }
403
+ get _hasRowActions() {
404
+ return this.rowActionCount > 0;
405
+ }
385
406
  };
386
407
  __decorate([
387
408
  slot({
@@ -423,6 +444,9 @@ __decorate([
423
444
  __decorate([
424
445
  property()
425
446
  ], Table.prototype, "stickyTop", void 0);
447
+ __decorate([
448
+ property({ type: Number })
449
+ ], Table.prototype, "rowActionCount", void 0);
426
450
  __decorate([
427
451
  property({ type: Number, noAttribute: true })
428
452
  ], Table.prototype, "_invalidate", void 0);
@@ -455,7 +479,7 @@ Table = Table_1 = __decorate([
455
479
  */
456
480
  ,
457
481
  event("row-click", {
458
- bubbles: true,
482
+ bubbles: false,
459
483
  })
460
484
  /**
461
485
  * Fired when a movable item is moved over a potential drop target during a dragging operation.
@@ -494,6 +518,17 @@ Table = Table_1 = __decorate([
494
518
  event("move", {
495
519
  bubbles: true,
496
520
  })
521
+ /**
522
+ * Fired when a row action is clicked.
523
+ *
524
+ * @param {TableRowActionBase} action The row action instance
525
+ * @since 2.6.0
526
+ * @public
527
+ */
528
+ ,
529
+ event("row-action-click", {
530
+ bubbles: false,
531
+ })
497
532
  ], Table);
498
533
  Table.define();
499
534
  export default Table;
package/dist/Table.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type { MoveEventDetail } from \"@ui5/webcomponents-base/dist/util/dragAndDrop/DragRegistry.js\";\nimport TableTemplate from \"./generated/templates/TableTemplate.lit.js\";\nimport TableStyles from \"./generated/themes/Table.css.js\";\nimport TableRow from \"./TableRow.js\";\nimport TableHeaderRow from \"./TableHeaderRow.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport type TableSelection from \"./TableSelection.js\";\nimport TableOverflowMode from \"./types/TableOverflowMode.js\";\nimport TableNavigation from \"./TableNavigation.js\";\nimport DropIndicator from \"./DropIndicator.js\";\nimport {\n\tTABLE_NO_DATA,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport TableCell from \"./TableCell.js\";\nimport { findVerticalScrollContainer, scrollElementIntoView, isFeature } from \"./TableUtils.js\";\nimport TableDragAndDrop from \"./TableDragAndDrop.js\";\nimport type TableVirtualizer from \"./TableVirtualizer.js\";\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>.\n *\n * @public\n * @experimental\n */\ninterface ITableFeature extends UI5Element {\n\treadonly identifier: string;\n\t/**\n\t * Called when the table is activated.\n\t * @param table table instance\n\t */\n\tonTableActivate?(table: Table): void;\n\t/**\n\t * Called when the table finished rendering.\n\t */\n\tonTableAfterRendering?(table?: Table): void;\n}\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>\n * and provide growing/data loading functionality.\n * @public\n * @experimental\n */\ninterface ITableGrowing extends ITableFeature {\n\t/**\n\t * Called when the table needs to load more data.\n\t */\n\tloadMore(): void;\n\t/**\n\t * Determines whether the table has a growing control, that should be rendered in the table.\n\t */\n\thasGrowingComponent(): boolean;\n\t_individualSlot?: string;\n}\n\n/**\n * Fired when an interactive row is clicked.\n * @param {TableRow} row The clicked row instance\n * @public\n */\ntype TableRowClickEventDetail = {\n\trow: TableRow,\n};\n\ntype TableMoveEventDetail = MoveEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table` component provides a set of sophisticated features for displaying and dealing with vast amounts of data in a responsive manner.\n * To render the `ui5-table`, you need to define the columns and rows. You can use the provided `ui5-table-header-row` and `ui5-table-row` components for this purpose.\n *\n * ### Features\n *\n * The `ui5-table` can be enhanced in its functionalities by applying different features.\n * Features can be slotted into the `features` slot, to enable them in the component.\n * Features need to be imported separately, as they are not enabled by default.\n *\n * The following features are currently available:\n *\n * * [TableSelection](../TableSelection) - adds selection capabilities to the table\n * * [TableGrowing](../TableGrowing) - provides growing capabilities to load more data\n *\n * ### Keyboard Handling\n *\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * Furthermore, you can interact with `ui5-table` via the following keys:\n *\n * If the focus is on a row, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Selects the first cell of the row\n * * <kbd>Space</kbd> - Toggles the selection of the row\n * * <kbd>Ctrl/Cmd + A</kbd> - In multi selection mode, toggles the selection of all rows\n * * <kbd>Home</kbd> - Navigates to the first row, if the focus is on the first row, navigates to the header row\n * * <kbd>End</kbd> - Navigates to the last row, if the focus is on the last row, navigates to the growing button\n * * <kbd>Page Up</kbd> - Navigates one page up, if the focus is on the first row, navigates to the header row\n * * <kbd>Page Down</kbd> - Navigates one page down, if the focus is on the last row, navigates to the growing button\n * * <kbd>F2</kbd> - Focuses the first tabbable element in the row\n * * <kbd>F7</kbd> - If focus position is remembered, moves focus to the corresponding focus position row, otherwise to the first tabbable element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on a cell, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Navigates right\n * * <kbd>Left</kbd> - Navigates left, if the focus is on the first cell of the row, the focus is moved to the row.\n * * <kbd>Home</kbd> - Navigates to the first cell of the current row, if the focus is on the first cell, navigates to the corresponding row\n * * <kbd>End</kbd> - Navigates to the last cell of the current row, if the focus is on the last cell, navigates to the corresponding row\n * * <kbd>Page Up</kbd> - Navigates one page up while keeping the focus in same column\n * * <kbd>Page Down</kbd> - Navigates one page down while keeping the focus in same column\n * * <kbd>F2</kbd> - Toggles the focus between the first tabbable cell content and the cell\n * * <kbd>Enter</kbd> - Focuses the first tabbable cell content\n * * <kbd>F7</kbd> - If the focus is on an interactive element inside a row, moves focus to the corresponding row and remembers the focus position of the element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on an interactive cell content, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Move the focus to the interactive element in the same column of the previous row, unless the focused element prevents the default\n * * <kbd>Up</kbd> - Move the focus to the interactive element in the same column of the next row, unless the focused element prevents the default\n * * <kbd>[Shift]Tab</kbd> - Move the focus to the element in the tab chain\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Table.js\";`\\\n * `import \"@ui5/webcomponents/dist/TableRow.js\";` (`ui5-table-row`)\\\n * `import \"@ui5/webcomponents/dist/TableCell.js\";` (`ui5-table-cell`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";` (`ui5-table-header-row`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";` (`ui5-table-header-cell`)\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0.0\n * @public\n * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.\n * Currently, it's considered experimental as its API is subject to change.\n * This Table replaces the previous Table web component, that has been part of **@ui5/webcomponents** version 1.x.\n * For compatibility reasons, we moved the previous Table implementation to the **@ui5/webcomponents-compat** package\n * and will be maintained until the new Table is experimental.\n * Keep in mind that you can use either the compat/Table, or the main/Table - you can't use them both as they both define the `ui5-table` tag name.\n */\n@customElement({\n\ttag: \"ui5-table\",\n\trenderer: litRender,\n\tstyles: TableStyles,\n\ttemplate: TableTemplate,\n\tfastNavigation: true,\n\tdependencies: [\n\t\tBusyIndicator,\n\t\tTableHeaderRow,\n\t\tTableCell,\n\t\tTableRow,\n\t\tDropIndicator,\n\t],\n})\n\n/**\n * Fired when an interactive row is clicked.\n *\n * @param {TableRow} row The row instance\n * @public\n */\n@event(\"row-click\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a movable item is moved over a potential drop target during a dragging operation.\n *\n * If the new position is valid, prevent the default action of the event using `preventDefault()`.\n *\n * **Note:** If the dragging operation is a cross-browser operation or files are moved to a potential drop target,\n * the `source` parameter will be `null`.\n *\n * @param {Event} originalEvent The original `dragover` event\n * @param {object} source The source object\n * @param {object} destination The destination object\n * @public\n */\n@event(\"move-over\", {\n\tcancelable: true,\n\tbubbles: true,\n})\n\n/**\n * Fired when a movable list item is dropped onto a drop target.\n *\n * **Notes:**\n *\n * The `move` event is fired only if there was a preceding `move-over` with prevented default action.\n *\n * If the dragging operation is a cross-browser operation or files are moved to a potential drop target,\n * the `source` parameter will be `null`.\n *\n * @param {Event} originalEvent The original `drop` event\n * @param {object} source The source object\n * @param {object} destination The destination object\n * @public\n */\n@event(\"move\", {\n\tbubbles: true,\n})\n\nclass Table extends UI5Element {\n\teventDetails!: {\n\t\t\"row-click\": TableRowClickEventDetail;\n\t\t\"move-over\": TableMoveEventDetail;\n\t\t\"move\": TableMoveEventDetail;\n\t}\n\t/**\n\t * Defines the rows of the component.\n\t *\n\t * Note: Use <code>ui5-table-row</code> 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: [\"navigated\", \"position\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\trows!: Array<TableRow>;\n\n\t/**\n\t * Defines the header row of the component.\n\t *\n\t * Note: Use <code>ui5-table-header-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: { properties: false, slots: true } })\n\theaderRow!: Array<TableHeaderRow>;\n\n\t/**\n\t * Defines the custom visualization if there is no data available.\n\t *\n\t * @public\n\t */\n\t@slot()\n\tnodata!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the features of the component.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tfeatures!: Array<ITableFeature>;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Identifies the element (or elements) that labels the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the text to be displayed when there are no rows in the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> overflow behavior.\n\t *\n\t * Available options are:\n\t *\n\t * <code>Scroll</code> - Columns are shown as regular columns and horizontal scrolling is enabled.\n\t *\n\t * <code>Popin</code> - Columns are shown as pop-ins instead of regular columns.\n\t *\n\t * @default \"Scroll\"\n\t * @public\n\t */\n\t@property()\n\toverflowMode: `${TableOverflowMode}` = \"Scroll\";\n\n\t/**\n\t * Defines if the loading indicator should be shown.\n\t *\n\t * <b>Note:</b> When the component is loading, it is non-interactive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tloading = false;\n\n\t/**\n * Defines the delay in milliseconds, after which the loading indicator will show up for this component.\n * @default 1000\n * @public\n */\n\t@property({ type: Number })\n\tloadingDelay = 1000;\n\n\t/**\n\t * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.\n\t */\n\t@property()\n\tstickyTop = \"0\";\n\n\t@property({ type: Number, noAttribute: true })\n\t_invalidate = 0;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_events = [\"keydown\", \"keyup\", \"click\", \"focusin\", \"focusout\", \"dragenter\", \"dragleave\", \"dragover\", \"drop\"];\n\t_onEventBound: (e: Event) => void;\n\t_onResizeBound: ResizeObserverCallback;\n\t_tableNavigation?: TableNavigation;\n\t_tableDragAndDrop?: TableDragAndDrop;\n\t_poppedIn: Array<{col: TableHeaderCell, width: float}>;\n\t_containerWidth: number;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._poppedIn = [];\n\t\tthis._containerWidth = 0;\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._onEventBound = this._onEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.register(this, this._onResizeBound);\n\t\t}\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tthis.features.forEach(feature => feature.onTableActivate?.(this));\n\t\tthis._tableNavigation = new TableNavigation(this);\n\t\tthis._tableDragAndDrop = new TableDragAndDrop(this);\n\t}\n\n\tonExitDOM() {\n\t\tthis._tableNavigation = undefined;\n\t\tthis._tableDragAndDrop = undefined;\n\t\tthis._events.forEach(eventType => this.removeEventListener(eventType, this._onEventBound));\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tconst renderNavigated = this._renderNavigated;\n\t\tthis._renderNavigated = this.rows.some(row => row.navigated);\n\t\tif (renderNavigated !== this._renderNavigated) {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\trow._renderNavigated = this._renderNavigated;\n\t\t\t});\n\t\t}\n\n\t\tthis.style.setProperty(getScopedVarName(\"--ui5_grid_sticky_top\"), this.stickyTop);\n\t\tthis._refreshPopinState();\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis.features.forEach(feature => feature.onTableAfterRendering?.(this));\n\t}\n\n\t_getSelection(): TableSelection | undefined {\n\t\treturn this.features.find(feature => isFeature<TableSelection>(feature, \"TableSelection\")) as TableSelection;\n\t}\n\n\t_getVirtualizer(): TableVirtualizer | undefined {\n\t\treturn this.features.find(feature => isFeature<TableVirtualizer>(feature, \"TableVirtualizer\")) as TableVirtualizer;\n\t}\n\n\t_onEvent(e: Event) {\n\t\tconst composedPath = e.composedPath();\n\t\tconst eventOrigin = composedPath[0] as HTMLElement;\n\t\tconst elements = [this._tableNavigation, this._tableDragAndDrop, ...composedPath, ...this.features];\n\t\telements.forEach(element => {\n\t\t\tif (element instanceof TableExtension || (element instanceof HTMLElement && element.localName.includes(\"ui5-table\"))) {\n\t\t\t\tconst eventHandlerName = `_on${e.type}` as keyof typeof element;\n\t\t\t\tconst eventHandler = element[eventHandlerName] as (e?: Event, eventOrigin?: HTMLElement) => void;\n\t\t\t\tif (typeof eventHandler === \"function\") {\n\t\t\t\t\teventHandler.call(element, e, eventOrigin);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t_onResize() {\n\t\tconst { clientWidth, scrollWidth } = this._tableElement;\n\n\t\tif (scrollWidth > clientWidth) {\n\t\t\t// Overflow Handling: Move columns into the popin until overflow is resolved\n\t\t\tconst overflow = scrollWidth - clientWidth;\n\t\t\tconst headers = this._getPopinOrderedColumns(false);\n\t\t\tconst poppedInWidth = headers.reduce((totalPoppedInWidth, headerCell) => {\n\t\t\t\tif (totalPoppedInWidth < overflow && !headerCell._popin) {\n\t\t\t\t\tconst headerWidth = Math.ceil(headerCell.getBoundingClientRect().width);\n\t\t\t\t\ttotalPoppedInWidth += headerWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, true, headerWidth);\n\t\t\t\t}\n\t\t\t\treturn totalPoppedInWidth;\n\t\t\t}, 0);\n\t\t\t// Calculate container width considering popped-in columns\n\t\t\tconst columnOverflow = poppedInWidth - overflow;\n\t\t\tthis._containerWidth = clientWidth - columnOverflow;\n\t\t} else {\n\t\t\t// Underflow Handling: Restore columns from popin until container width is met\n\t\t\tconst headers = this._getPopinOrderedColumns(true).filter(it => it._popin);\n\n\t\t\theaders.every(headerCell => {\n\t\t\t\tconst underflow = clientWidth - this._containerWidth;\n\t\t\t\tif (underflow >= headerCell._popinWidth) {\n\t\t\t\t\tthis._containerWidth += headerCell._popinWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, false, 0);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (e.target === this) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Handles focus in the table, when the focus is below a sticky element\n\t\tscrollElementIntoView(this._scrollContainer, e.target as HTMLElement, this._stickyElements, this.effectiveDir === \"rtl\");\n\t}\n\n\t/**\n\t * Refreshes the popin state of the columns.\n\t * Syncs the popin state of the columns with the popin state of the header cells.\n\t * This is needed when additional rows are manually added and no resize happens.\n\t * @private\n\t */\n\t_refreshPopinState() {\n\t\tthis.headerRow[0]?.cells.forEach((header, index) => {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\tconst cell = row.cells[index];\n\t\t\t\tif (cell && cell._popin !== header._popin) {\n\t\t\t\t\tcell._popin = header._popin;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t_onGrow() {\n\t\tthis._growing?.loadMore();\n\t}\n\n\t_getPopinOrderedColumns(reverse: boolean) {\n\t\tlet headers = [...this.headerRow[0].cells];\n\t\theaders = headers.reverse(); // reverse the \"visual\" order\n\t\theaders = headers.sort((a, b) => a.importance - b.importance); // sort by importance (asc)\n\t\theaders.pop(); // remove the most important column, as it will not be popped in\n\n\t\tif (reverse) {\n\t\t\theaders = headers.reverse();\n\t\t}\n\n\t\treturn headers;\n\t}\n\n\t_setHeaderPopinState(headerCell: TableHeaderCell, inPopin: boolean, popinWidth: number) {\n\t\tconst headerIndex = this.headerRow[0].cells.indexOf(headerCell);\n\t\theaderCell._popin = inPopin;\n\t\theaderCell._popinWidth = popinWidth;\n\t\tthis.rows.forEach(row => {\n\t\t\trow.cells[headerIndex]._popin = inPopin;\n\t\t});\n\t}\n\n\t_isFeature(feature: any) {\n\t\treturn Boolean(feature.onTableActivate || feature.onTableAfterRendering);\n\t}\n\n\t_isGrowingFeature(feature: any) {\n\t\treturn Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));\n\t}\n\n\t_onRowPress(row: TableRow) {\n\t\tthis.fireDecoratorEvent(\"row-click\", { row });\n\t}\n\n\tget styles() {\n\t\tconst virtualizer = this._getVirtualizer();\n\t\tconst headerStyleMap = this.headerRow?.[0]?.cells?.reduce((headerStyles, headerCell) => {\n\t\t\tif (headerCell.horizontalAlign !== undefined && !headerCell._popin) {\n\t\t\t\theaderStyles[`--horizontal-align-${headerCell._individualSlot}`] = headerCell.horizontalAlign;\n\t\t\t}\n\t\t\treturn headerStyles;\n\t\t}, {} as { [key: string]: string });\n\t\treturn {\n\t\t\ttable: {\n\t\t\t\t\"grid-template-columns\": this._gridTemplateColumns,\n\t\t\t\t\"--row-height\": virtualizer ? `${virtualizer.rowHeight}px` : \"auto\",\n\t\t\t\t...headerStyleMap,\n\t\t\t},\n\t\t\tspacer: {\n\t\t\t\t\"transform\": virtualizer?._getTransform(),\n\t\t\t\t\"will-change\": virtualizer && \"transform\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget _gridTemplateColumns() {\n\t\tif (!this.headerRow[0]) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst widths = [];\n\t\tconst visibleHeaderCells = this.headerRow[0]._visibleCells as TableHeaderCell[];\n\t\tif (this._getSelection()?.hasRowSelector()) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_checkbox_width_height\")})`);\n\t\t}\n\t\twidths.push(...visibleHeaderCells.map(cell => {\n\t\t\tconst minWidth = cell.minWidth === \"auto\" ? \"3rem\" : cell.minWidth;\n\t\t\tif (cell.width === \"auto\" || cell.width.includes(\"%\") || cell.width.includes(\"fr\") || cell.width.includes(\"vw\")) {\n\t\t\t\treturn `minmax(${minWidth}, ${cell.maxWidth})`;\n\t\t\t}\n\t\t\treturn `minmax(${cell.width}, ${cell.width})`;\n\t\t}));\n\t\tif (this._renderNavigated) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_table_navigated_cell_width\")})`);\n\t\t}\n\t\treturn widths.join(\" \");\n\t}\n\n\tget _tableOverflowX() {\n\t\treturn (this.overflowMode === TableOverflowMode.Popin) ? \"clip\" : \"auto\";\n\t}\n\n\tget _tableOverflowY() {\n\t\treturn \"auto\";\n\t}\n\n\tget _nodataRow() {\n\t\treturn this.shadowRoot!.getElementById(\"nodata-row\") as TableRow;\n\t}\n\n\tget _beforeElement() {\n\t\treturn this.shadowRoot!.getElementById(\"before\") as HTMLElement;\n\t}\n\n\tget _afterElement() {\n\t\treturn this.shadowRoot!.getElementById(\"after\") as HTMLElement;\n\t}\n\n\tget _tableElement() {\n\t\treturn this.shadowRoot!.getElementById(\"table\") as HTMLElement;\n\t}\n\n\tget _loadingElement() {\n\t\treturn this.shadowRoot!.getElementById(\"loading\") as HTMLElement;\n\t}\n\n\tget _effectiveNoDataText() {\n\t\treturn this.noDataText || Table.i18nBundle.getText(TABLE_NO_DATA);\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this) || undefined;\n\t}\n\n\tget _ariaRowCount() {\n\t\treturn this._getVirtualizer()?.rowCount || undefined;\n\t}\n\n\tget _ariaMultiSelectable() {\n\t\tconst selection = this._getSelection();\n\t\treturn (selection?.isSelectable() && this.rows.length) ? selection.isMultiSelect() : undefined;\n\t}\n\n\tget _shouldRenderGrowing() {\n\t\treturn this.rows.length && this._growing?.hasGrowingComponent();\n\t}\n\n\tget _growing() {\n\t\treturn this.features.find(feature => this._isGrowingFeature(feature)) as ITableGrowing;\n\t}\n\n\tget _stickyElements() {\n\t\tconst stickyRows = this.headerRow.filter(row => row.sticky);\n\t\tconst stickyColumns = this.headerRow[0]._stickyCells as TableHeaderCell[];\n\n\t\treturn [...stickyRows, ...stickyColumns];\n\t}\n\n\tget _scrollContainer() {\n\t\treturn this._getVirtualizer() ? this._tableElement : findVerticalScrollContainer(this);\n\t}\n\n\tget isTable() {\n\t\treturn true;\n\t}\n\n\tget dropIndicatorDOM(): DropIndicator | null {\n\t\treturn this.shadowRoot!.querySelector(\"[ui5-drop-indicator]\");\n\t}\n}\n\nTable.define();\n\nexport default Table;\n\nexport type {\n\tITableFeature,\n\tITableGrowing,\n\tTableRowClickEventDetail,\n\tTableMoveEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type { MoveEventDetail } from \"@ui5/webcomponents-base/dist/util/dragAndDrop/DragRegistry.js\";\nimport TableTemplate from \"./generated/templates/TableTemplate.lit.js\";\nimport TableStyles from \"./generated/themes/Table.css.js\";\nimport TableRow from \"./TableRow.js\";\nimport TableHeaderRow from \"./TableHeaderRow.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport type TableSelection from \"./TableSelection.js\";\nimport TableOverflowMode from \"./types/TableOverflowMode.js\";\nimport TableNavigation from \"./TableNavigation.js\";\nimport DropIndicator from \"./DropIndicator.js\";\nimport {\n\tTABLE_NO_DATA,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport TableCell from \"./TableCell.js\";\nimport { findVerticalScrollContainer, scrollElementIntoView, isFeature } from \"./TableUtils.js\";\nimport TableDragAndDrop from \"./TableDragAndDrop.js\";\nimport type TableRowActionBase from \"./TableRowActionBase.js\";\nimport type TableVirtualizer from \"./TableVirtualizer.js\";\n\n/**\n * Interface for components that can be slotted inside the `features` slot of the `ui5-table`.\n *\n * @public\n * @experimental\n */\ninterface ITableFeature extends UI5Element {\n\treadonly identifier: string;\n\t/**\n\t * Called when the table is activated.\n\t * @param table table instance\n\t */\n\tonTableActivate?(table: Table): void;\n\t/**\n\t * Called when the table finished rendering.\n\t */\n\tonTableAfterRendering?(table?: Table): void;\n}\n\n/**\n * Interface for components that can be slotted inside the `features` slot of the `ui5-table`\n * and provide growing/data loading functionality.\n * @public\n * @experimental\n */\ninterface ITableGrowing extends ITableFeature {\n\t/**\n\t * Called when the table needs to load more data.\n\t */\n\tloadMore(): void;\n\t/**\n\t * Determines whether the table has a growing control, that should be rendered in the table.\n\t */\n\thasGrowingComponent(): boolean;\n\t_individualSlot?: string;\n}\n\n/**\n * Fired when an interactive row is clicked.\n * @param {TableRow} row The clicked row instance\n * @public\n */\ntype TableRowClickEventDetail = {\n\trow: TableRow,\n};\n\ntype TableMoveEventDetail = MoveEventDetail;\n\n/**\n * Fired when a row action is clicked.\n * @param {TableRowActionBase} action The row action instance\n * @param {TableRow} row The row instance\n * @public\n */\ntype TableRowActionClickEventDetail = {\n\taction: TableRowActionBase,\n\trow: TableRow,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table` component provides a set of sophisticated features for displaying and dealing with vast amounts of data in a responsive manner.\n * To render the `ui5-table`, you need to define the columns and rows. You can use the provided `ui5-table-header-row` and `ui5-table-row` components for this purpose.\n *\n * ### Features\n *\n * The `ui5-table` can be enhanced in its functionalities by applying different features.\n * Features can be slotted into the `features` slot, to enable them in the component.\n * Features need to be imported separately, as they are not enabled by default.\n *\n * The following features are currently available:\n *\n * * [TableSelection](../TableSelection) - adds selection capabilities to the table\n * * [TableGrowing](../TableGrowing) - provides growing capabilities to load more data\n *\n * ### Keyboard Handling\n *\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * Furthermore, you can interact with `ui5-table` via the following keys:\n *\n * If the focus is on a row, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Selects the first cell of the row\n * * <kbd>Space</kbd> - Toggles the selection of the row\n * * <kbd>Ctrl/Cmd + A</kbd> - In multi selection mode, toggles the selection of all rows\n * * <kbd>Home</kbd> - Navigates to the first row, if the focus is on the first row, navigates to the header row\n * * <kbd>End</kbd> - Navigates to the last row, if the focus is on the last row, navigates to the growing button\n * * <kbd>Page Up</kbd> - Navigates one page up, if the focus is on the first row, navigates to the header row\n * * <kbd>Page Down</kbd> - Navigates one page down, if the focus is on the last row, navigates to the growing button\n * * <kbd>F2</kbd> - Focuses the first tabbable element in the row\n * * <kbd>F7</kbd> - If focus position is remembered, moves focus to the corresponding focus position row, otherwise to the first tabbable element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on a cell, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Navigates right\n * * <kbd>Left</kbd> - Navigates left, if the focus is on the first cell of the row, the focus is moved to the row.\n * * <kbd>Home</kbd> - Navigates to the first cell of the current row, if the focus is on the first cell, navigates to the corresponding row\n * * <kbd>End</kbd> - Navigates to the last cell of the current row, if the focus is on the last cell, navigates to the corresponding row\n * * <kbd>Page Up</kbd> - Navigates one page up while keeping the focus in same column\n * * <kbd>Page Down</kbd> - Navigates one page down while keeping the focus in same column\n * * <kbd>F2</kbd> - Toggles the focus between the first tabbable cell content and the cell\n * * <kbd>Enter</kbd> - Focuses the first tabbable cell content\n * * <kbd>F7</kbd> - If the focus is on an interactive element inside a row, moves focus to the corresponding row and remembers the focus position of the element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on an interactive cell content, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Move the focus to the interactive element in the same column of the previous row, unless the focused element prevents the default\n * * <kbd>Up</kbd> - Move the focus to the interactive element in the same column of the next row, unless the focused element prevents the default\n * * <kbd>[Shift]Tab</kbd> - Move the focus to the element in the tab chain\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Table.js\";`\\\n * `import \"@ui5/webcomponents/dist/TableRow.js\";` (`ui5-table-row`)\\\n * `import \"@ui5/webcomponents/dist/TableCell.js\";` (`ui5-table-cell`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";` (`ui5-table-header-row`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";` (`ui5-table-header-cell`)\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0.0\n * @public\n * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.\n * Currently, it's considered experimental as its API is subject to change.\n * This Table replaces the previous Table web component, that has been part of **@ui5/webcomponents** version 1.x.\n * For compatibility reasons, we moved the previous Table implementation to the **@ui5/webcomponents-compat** package\n * and will be maintained until the new Table is experimental.\n * Keep in mind that you can use either the compat/Table, or the main/Table - you can't use them both as they both define the `ui5-table` tag name.\n */\n@customElement({\n\ttag: \"ui5-table\",\n\trenderer: litRender,\n\tstyles: TableStyles,\n\ttemplate: TableTemplate,\n\tfastNavigation: true,\n\tdependencies: [\n\t\tBusyIndicator,\n\t\tTableHeaderRow,\n\t\tTableCell,\n\t\tTableRow,\n\t\tDropIndicator,\n\t],\n})\n\n/**\n * Fired when an interactive row is clicked.\n *\n * @param {TableRow} row The row instance\n * @public\n */\n@event(\"row-click\", {\n\tbubbles: false,\n})\n\n/**\n * Fired when a movable item is moved over a potential drop target during a dragging operation.\n *\n * If the new position is valid, prevent the default action of the event using `preventDefault()`.\n *\n * **Note:** If the dragging operation is a cross-browser operation or files are moved to a potential drop target,\n * the `source` parameter will be `null`.\n *\n * @param {Event} originalEvent The original `dragover` event\n * @param {object} source The source object\n * @param {object} destination The destination object\n * @public\n */\n@event(\"move-over\", {\n\tcancelable: true,\n\tbubbles: true,\n})\n\n/**\n * Fired when a movable list item is dropped onto a drop target.\n *\n * **Notes:**\n *\n * The `move` event is fired only if there was a preceding `move-over` with prevented default action.\n *\n * If the dragging operation is a cross-browser operation or files are moved to a potential drop target,\n * the `source` parameter will be `null`.\n *\n * @param {Event} originalEvent The original `drop` event\n * @param {object} source The source object\n * @param {object} destination The destination object\n * @public\n */\n@event(\"move\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a row action is clicked.\n *\n * @param {TableRowActionBase} action The row action instance\n * @since 2.6.0\n * @public\n */\n@event(\"row-action-click\", {\n\tbubbles: false,\n})\n\nclass Table extends UI5Element {\n\teventDetails!: {\n\t\t\"row-click\": TableRowClickEventDetail;\n\t\t\"move-over\": TableMoveEventDetail;\n\t\t\"move\": TableMoveEventDetail;\n\t\t\"row-action-click\": TableRowActionClickEventDetail;\n\t}\n\t/**\n\t * Defines the rows of the component.\n\t *\n\t * **Note:** Use `ui5-table-row` 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: [\"navigated\", \"position\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\trows!: Array<TableRow>;\n\n\t/**\n\t * Defines the header row of the component.\n\t *\n\t * **Note:** Use `ui5-table-header-row` for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: { properties: false, slots: true } })\n\theaderRow!: Array<TableHeaderRow>;\n\n\t/**\n\t * Defines the custom visualization if there is no data available.\n\t *\n\t * @public\n\t */\n\t@slot()\n\tnodata!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the features of the component.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tfeatures!: Array<ITableFeature>;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Identifies the element (or elements) that labels the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the text to be displayed when there are no rows in the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> overflow behavior.\n\t *\n\t * Available options are:\n\t *\n\t * <code>Scroll</code> - Columns are shown as regular columns and horizontal scrolling is enabled.\n\t *\n\t * <code>Popin</code> - Columns are shown as pop-ins instead of regular columns.\n\t *\n\t * @default \"Scroll\"\n\t * @public\n\t */\n\t@property()\n\toverflowMode: `${TableOverflowMode}` = \"Scroll\";\n\n\t/**\n\t * Defines if the loading indicator should be shown.\n\t *\n\t * **Note:** When the component is loading, it is not interactive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tloading = false;\n\n\t/**\n * Defines the delay in milliseconds, after which the loading indicator will show up for this component.\n * @default 1000\n * @public\n */\n\t@property({ type: Number })\n\tloadingDelay = 1000;\n\n\t/**\n\t * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.\n\t */\n\t@property()\n\tstickyTop = \"0\";\n\n\t/**\n\t * Defines the maximum number of row actions that is displayed, which determines the width of the row action column.\n\t *\n\t * **Note:** It is recommended to use a maximum of 3 row actions, as exceeding this limit may take up too much space on smaller screens.\n\t *\n\t * @default 0\n\t * @since 2.7.0\n\t * @public\n\t */\n\t@property({ type: Number })\n\trowActionCount = 0;\n\n\t@property({ type: Number, noAttribute: true })\n\t_invalidate = 0;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_events = [\"keydown\", \"keyup\", \"click\", \"focusin\", \"focusout\", \"dragenter\", \"dragleave\", \"dragover\", \"drop\"];\n\t_onEventBound: (e: Event) => void;\n\t_onResizeBound: ResizeObserverCallback;\n\t_tableNavigation?: TableNavigation;\n\t_tableDragAndDrop?: TableDragAndDrop;\n\t_poppedIn: Array<{col: TableHeaderCell, width: float}>;\n\t_containerWidth: number;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._poppedIn = [];\n\t\tthis._containerWidth = 0;\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._onEventBound = this._onEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.register(this, this._onResizeBound);\n\t\t}\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tthis.features.forEach(feature => feature.onTableActivate?.(this));\n\t\tthis._tableNavigation = new TableNavigation(this);\n\t\tthis._tableDragAndDrop = new TableDragAndDrop(this);\n\t}\n\n\tonExitDOM() {\n\t\tthis._tableNavigation = undefined;\n\t\tthis._tableDragAndDrop = undefined;\n\t\tthis._events.forEach(eventType => this.removeEventListener(eventType, this._onEventBound));\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tthis._renderNavigated = this.rows.some(row => row.navigated);\n\t\tif (this.headerRow[0]) {\n\t\t\tthis.headerRow[0]._rowActionCount = this.rowActionCount;\n\t\t}\n\t\tthis.rows.forEach(row => {\n\t\t\trow._renderNavigated = this._renderNavigated;\n\t\t\trow._rowActionCount = this.rowActionCount;\n\t\t});\n\n\t\tthis.style.setProperty(getScopedVarName(\"--ui5_grid_sticky_top\"), this.stickyTop);\n\t\tthis._refreshPopinState();\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis.features.forEach(feature => feature.onTableAfterRendering?.(this));\n\t}\n\n\t_getSelection(): TableSelection | undefined {\n\t\treturn this.features.find(feature => isFeature<TableSelection>(feature, \"TableSelection\")) as TableSelection;\n\t}\n\n\t_getVirtualizer(): TableVirtualizer | undefined {\n\t\treturn this.features.find(feature => isFeature<TableVirtualizer>(feature, \"TableVirtualizer\")) as TableVirtualizer;\n\t}\n\n\t_onEvent(e: Event) {\n\t\tconst composedPath = e.composedPath();\n\t\tconst eventOrigin = composedPath[0] as HTMLElement;\n\t\tconst elements = [this._tableNavigation, this._tableDragAndDrop, ...composedPath, ...this.features];\n\t\telements.forEach(element => {\n\t\t\tif (element instanceof TableExtension || (element instanceof HTMLElement && element.localName.includes(\"ui5-table\"))) {\n\t\t\t\tconst eventHandlerName = `_on${e.type}` as keyof typeof element;\n\t\t\t\tconst eventHandler = element[eventHandlerName] as (e?: Event, eventOrigin?: HTMLElement) => void;\n\t\t\t\tif (typeof eventHandler === \"function\") {\n\t\t\t\t\teventHandler.call(element, e, eventOrigin);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t_onResize() {\n\t\tconst { clientWidth, scrollWidth } = this._tableElement;\n\n\t\tif (scrollWidth > clientWidth) {\n\t\t\t// Overflow Handling: Move columns into the popin until overflow is resolved\n\t\t\tconst overflow = scrollWidth - clientWidth;\n\t\t\tconst headers = this._getPopinOrderedColumns(false);\n\t\t\tconst poppedInWidth = headers.reduce((totalPoppedInWidth, headerCell) => {\n\t\t\t\tif (totalPoppedInWidth < overflow && !headerCell._popin) {\n\t\t\t\t\tconst headerWidth = Math.ceil(headerCell.getBoundingClientRect().width);\n\t\t\t\t\ttotalPoppedInWidth += headerWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, true, headerWidth);\n\t\t\t\t}\n\t\t\t\treturn totalPoppedInWidth;\n\t\t\t}, 0);\n\t\t\t// Calculate container width considering popped-in columns\n\t\t\tconst columnOverflow = poppedInWidth - overflow;\n\t\t\tthis._containerWidth = clientWidth - columnOverflow;\n\t\t} else {\n\t\t\t// Underflow Handling: Restore columns from popin until container width is met\n\t\t\tconst headers = this._getPopinOrderedColumns(true).filter(it => it._popin);\n\n\t\t\theaders.every(headerCell => {\n\t\t\t\tconst underflow = clientWidth - this._containerWidth;\n\t\t\t\tif (underflow >= headerCell._popinWidth) {\n\t\t\t\t\tthis._containerWidth += headerCell._popinWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, false, 0);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (e.target === this) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Handles focus in the table, when the focus is below a sticky element\n\t\tscrollElementIntoView(this._scrollContainer, e.target as HTMLElement, this._stickyElements, this.effectiveDir === \"rtl\");\n\t}\n\n\t/**\n\t * Refreshes the popin state of the columns.\n\t * Syncs the popin state of the columns with the popin state of the header cells.\n\t * This is needed when additional rows are manually added and no resize happens.\n\t * @private\n\t */\n\t_refreshPopinState() {\n\t\tthis.headerRow[0]?.cells.forEach((header, index) => {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\tconst cell = row.cells[index];\n\t\t\t\tif (cell && cell._popin !== header._popin) {\n\t\t\t\t\tcell._popin = header._popin;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t_onGrow() {\n\t\tthis._growing?.loadMore();\n\t}\n\n\t_getPopinOrderedColumns(reverse: boolean) {\n\t\tlet headers = [...this.headerRow[0].cells];\n\t\theaders = headers.reverse(); // reverse the \"visual\" order\n\t\theaders = headers.sort((a, b) => a.importance - b.importance); // sort by importance (asc)\n\t\theaders.pop(); // remove the most important column, as it will not be popped in\n\n\t\tif (reverse) {\n\t\t\theaders = headers.reverse();\n\t\t}\n\n\t\treturn headers;\n\t}\n\n\t_setHeaderPopinState(headerCell: TableHeaderCell, inPopin: boolean, popinWidth: number) {\n\t\tconst headerIndex = this.headerRow[0].cells.indexOf(headerCell);\n\t\theaderCell._popin = inPopin;\n\t\theaderCell._popinWidth = popinWidth;\n\t\tthis.rows.forEach(row => {\n\t\t\trow.cells[headerIndex]._popin = inPopin;\n\t\t});\n\t}\n\n\t_isFeature(feature: any) {\n\t\treturn Boolean(feature.onTableActivate || feature.onTableAfterRendering);\n\t}\n\n\t_isGrowingFeature(feature: any) {\n\t\treturn Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));\n\t}\n\n\t_onRowClick(row: TableRow) {\n\t\tthis.fireDecoratorEvent(\"row-click\", { row });\n\t}\n\n\t_onRowActionClick(action: TableRowActionBase) {\n\t\tconst row = action.parentElement as TableRow;\n\t\tthis.fireDecoratorEvent(\"row-action-click\", { action, row });\n\t}\n\n\tget styles() {\n\t\tconst virtualizer = this._getVirtualizer();\n\t\tconst headerStyleMap = this.headerRow?.[0]?.cells?.reduce((headerStyles, headerCell) => {\n\t\t\tif (headerCell.horizontalAlign !== undefined && !headerCell._popin) {\n\t\t\t\theaderStyles[`--horizontal-align-${headerCell._individualSlot}`] = headerCell.horizontalAlign;\n\t\t\t}\n\t\t\treturn headerStyles;\n\t\t}, {} as { [key: string]: string });\n\t\treturn {\n\t\t\ttable: {\n\t\t\t\t\"grid-template-columns\": this._gridTemplateColumns,\n\t\t\t\t\"--row-height\": virtualizer ? `${virtualizer.rowHeight}px` : \"auto\",\n\t\t\t\t...headerStyleMap,\n\t\t\t},\n\t\t\tspacer: {\n\t\t\t\t\"transform\": virtualizer?._getTransform(),\n\t\t\t\t\"will-change\": virtualizer && \"transform\",\n\t\t\t},\n\t\t};\n\t}\n\n\tget _gridTemplateColumns() {\n\t\tif (!this.headerRow[0]) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst widths = [];\n\t\tconst visibleHeaderCells = this.headerRow[0]._visibleCells as TableHeaderCell[];\n\t\tif (this._getSelection()?.hasRowSelector()) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_checkbox_width_height\")})`);\n\t\t}\n\t\twidths.push(...visibleHeaderCells.map(cell => {\n\t\t\tconst minWidth = cell.minWidth === \"auto\" ? \"3rem\" : cell.minWidth;\n\t\t\tif (cell.width === \"auto\" || cell.width.includes(\"%\") || cell.width.includes(\"fr\") || cell.width.includes(\"vw\")) {\n\t\t\t\treturn `minmax(${minWidth}, ${cell.maxWidth})`;\n\t\t\t}\n\t\t\treturn `minmax(${cell.width}, ${cell.width})`;\n\t\t}));\n\n\t\tif (this.rowActionCount > 0) {\n\t\t\twidths.push(`calc(var(${getScopedVarName(\"--_ui5_button_base_min_width\")}) * ${this.rowActionCount} + var(${getScopedVarName(\"--_ui5_table_row_actions_gap\")}) * ${this.rowActionCount - 1} + var(${getScopedVarName(\"--_ui5_table_cell_horizontal_padding\")}) * 2)`);\n\t\t}\n\n\t\tif (this._renderNavigated) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_table_navigated_cell_width\")})`);\n\t\t}\n\n\t\treturn widths.join(\" \");\n\t}\n\n\tget _tableOverflowX() {\n\t\treturn (this.overflowMode === TableOverflowMode.Popin) ? \"clip\" : \"auto\";\n\t}\n\n\tget _tableOverflowY() {\n\t\treturn \"auto\";\n\t}\n\n\tget _nodataRow() {\n\t\treturn this.shadowRoot!.getElementById(\"nodata-row\") as TableRow;\n\t}\n\n\tget _beforeElement() {\n\t\treturn this.shadowRoot!.getElementById(\"before\") as HTMLElement;\n\t}\n\n\tget _afterElement() {\n\t\treturn this.shadowRoot!.getElementById(\"after\") as HTMLElement;\n\t}\n\n\tget _tableElement() {\n\t\treturn this.shadowRoot!.getElementById(\"table\") as HTMLElement;\n\t}\n\n\tget _loadingElement() {\n\t\treturn this.shadowRoot!.getElementById(\"loading\") as HTMLElement;\n\t}\n\n\tget _effectiveNoDataText() {\n\t\treturn this.noDataText || Table.i18nBundle.getText(TABLE_NO_DATA);\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this) || undefined;\n\t}\n\n\tget _ariaRowCount() {\n\t\treturn this._getVirtualizer()?.rowCount || undefined;\n\t}\n\n\tget _ariaMultiSelectable() {\n\t\tconst selection = this._getSelection();\n\t\treturn (selection?.isSelectable() && this.rows.length) ? selection.isMultiSelect() : undefined;\n\t}\n\n\tget _shouldRenderGrowing() {\n\t\treturn this.rows.length && this._growing?.hasGrowingComponent();\n\t}\n\n\tget _growing() {\n\t\treturn this.features.find(feature => this._isGrowingFeature(feature)) as ITableGrowing;\n\t}\n\n\tget _stickyElements() {\n\t\tconst stickyRows = this.headerRow.filter(row => row.sticky);\n\t\tconst stickyColumns = this.headerRow[0]._stickyCells as TableHeaderCell[];\n\n\t\treturn [...stickyRows, ...stickyColumns];\n\t}\n\n\tget _scrollContainer() {\n\t\treturn this._getVirtualizer() ? this._tableElement : findVerticalScrollContainer(this);\n\t}\n\n\tget isTable() {\n\t\treturn true;\n\t}\n\n\tget dropIndicatorDOM(): DropIndicator | null {\n\t\treturn this.shadowRoot!.querySelector(\"[ui5-drop-indicator]\");\n\t}\n\n\tget _hasRowActions() {\n\t\treturn this.rowActionCount > 0;\n\t}\n}\n\nTable.define();\n\nexport default Table;\n\nexport type {\n\tITableFeature,\n\tITableGrowing,\n\tTableRowClickEventDetail,\n\tTableMoveEventDetail,\n\tTableRowActionClickEventDetail,\n};\n"]}
@@ -19,6 +19,8 @@ import TableCellBase from "./TableCellBase.js";
19
19
  */
20
20
  declare class TableCell extends TableCellBase {
21
21
  onBeforeRendering(): void;
22
+ get _headerCell(): import("./TableHeaderCell.js").default;
23
+ get _popinText(): string | undefined;
22
24
  get _popinHeader(): Node;
23
25
  get _i18nPopinColon(): string;
24
26
  }
package/dist/TableCell.js CHANGED
@@ -33,16 +33,21 @@ let TableCell = class TableCell extends TableCellBase {
33
33
  if (this.horizontalAlign) {
34
34
  this.style.justifyContent = this.horizontalAlign;
35
35
  }
36
- else {
36
+ else if (this._individualSlot) {
37
37
  this.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;
38
38
  }
39
39
  }
40
- get _popinHeader() {
40
+ get _headerCell() {
41
41
  const row = this.parentElement;
42
42
  const table = row.parentElement;
43
43
  const index = row.cells.indexOf(this);
44
- const headerCell = table.headerRow[0].cells[index];
45
- return headerCell.content[0]?.cloneNode(true);
44
+ return table.headerRow[0].cells[index];
45
+ }
46
+ get _popinText() {
47
+ return this._headerCell?.popinText;
48
+ }
49
+ get _popinHeader() {
50
+ return this._headerCell?.content[0]?.cloneNode(true);
46
51
  }
47
52
  get _i18nPopinColon() {
48
53
  return TableCellBase.i18nBundle.getText(LABEL_COLON);
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../src/TableCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;;;;;;;;;;;;;;;;GAiBG;AAMH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IACpC,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;QAClD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,0BAA2B,IAAY,CAAC,eAAe,GAAG,CAAC;QACxF,CAAC;IACF,CAAC;IAED,IAAI,YAAY;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,aAAyB,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAsB,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACD,CAAA;AArBK,SAAS;IALd,aAAa,CAAC;QACd,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC;QAC/C,QAAQ,EAAE,iBAAiB;KAC3B,CAAC;GACI,SAAS,CAqBd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport TableCellTemplate from \"./generated/templates/TableCellTemplate.lit.js\";\nimport TableCellStyles from \"./generated/themes/TableCell.css.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type Table from \"./Table.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-cell` represents a cell inside of a `ui5-table`.\n * It is tightly coupled to the `ui5-table` and thus should only be used in the table component.\n *\n * ### ES6 Module Import\n *\n * `import @ui5/webcomponents/dist/TableCell.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-cell\",\n\tstyles: [TableCellBase.styles, TableCellStyles],\n\ttemplate: TableCellTemplate,\n})\nclass TableCell extends TableCellBase {\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this.horizontalAlign) {\n\t\t\tthis.style.justifyContent = this.horizontalAlign;\n\t\t} else {\n\t\t\tthis.style.justifyContent = `var(--horizontal-align-${(this as any)._individualSlot})`;\n\t\t}\n\t}\n\n\tget _popinHeader() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\tconst index = row.cells.indexOf(this);\n\t\tconst headerCell = table.headerRow[0].cells[index];\n\t\treturn headerCell.content[0]?.cloneNode(true);\n\t}\n\n\tget _i18nPopinColon() {\n\t\treturn TableCellBase.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nTableCell.define();\n\nexport default TableCell;\n"]}
1
+ {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../src/TableCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;;;;;;;;;;;;;;;;GAiBG;AAMH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IACpC,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;QAClD,CAAC;aAAM,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,0BAA0B,IAAI,CAAC,eAAe,GAAG,CAAC;QAC/E,CAAC;IACF,CAAC;IAED,IAAI,WAAW;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,aAAyB,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAsB,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;IACpC,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACD,CAAA;AA5BK,SAAS;IALd,aAAa,CAAC;QACd,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC;QAC/C,QAAQ,EAAE,iBAAiB;KAC3B,CAAC;GACI,SAAS,CA4Bd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport TableCellTemplate from \"./generated/templates/TableCellTemplate.lit.js\";\nimport TableCellStyles from \"./generated/themes/TableCell.css.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type Table from \"./Table.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-cell` represents a cell inside of a `ui5-table`.\n * It is tightly coupled to the `ui5-table` and thus should only be used in the table component.\n *\n * ### ES6 Module Import\n *\n * `import @ui5/webcomponents/dist/TableCell.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-cell\",\n\tstyles: [TableCellBase.styles, TableCellStyles],\n\ttemplate: TableCellTemplate,\n})\nclass TableCell extends TableCellBase {\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tif (this.horizontalAlign) {\n\t\t\tthis.style.justifyContent = this.horizontalAlign;\n\t\t} else if (this._individualSlot) {\n\t\t\tthis.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;\n\t\t}\n\t}\n\n\tget _headerCell() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\tconst index = row.cells.indexOf(this);\n\t\treturn table.headerRow[0].cells[index];\n\t}\n\n\tget _popinText() {\n\t\treturn this._headerCell?.popinText;\n\t}\n\n\tget _popinHeader() {\n\t\treturn this._headerCell?.content[0]?.cloneNode(true);\n\t}\n\n\tget _i18nPopinColon() {\n\t\treturn TableCellBase.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nTableCell.define();\n\nexport default TableCell;\n"]}
@@ -16,14 +16,14 @@ declare abstract class TableCellBase extends UI5Element {
16
16
  * @public
17
17
  */
18
18
  content: Array<Node>;
19
- _popin: boolean;
20
19
  /**
21
20
  * Determines the horizontal alignment of table cells.
22
- * **Note:** All values valid for justify-content can be used, not just the ones inside the enumeration.
21
+ *
23
22
  * @default undefined
24
23
  * @public
25
24
  */
26
25
  horizontalAlign?: `${TableCellHorizontalAlign}`;
26
+ _popin: boolean;
27
27
  protected ariaRole: string;
28
28
  static i18nBundle: I18nBundle;
29
29
  onEnterDOM(): void;
@@ -47,12 +47,12 @@ let TableCellBase = class TableCellBase extends UI5Element {
47
47
  __decorate([
48
48
  slot({ type: Node, "default": true })
49
49
  ], TableCellBase.prototype, "content", void 0);
50
- __decorate([
51
- property({ type: Boolean })
52
- ], TableCellBase.prototype, "_popin", void 0);
53
50
  __decorate([
54
51
  property()
55
52
  ], TableCellBase.prototype, "horizontalAlign", void 0);
53
+ __decorate([
54
+ property({ type: Boolean })
55
+ ], TableCellBase.prototype, "_popin", void 0);
56
56
  __decorate([
57
57
  i18n("@ui5/webcomponents")
58
58
  ], TableCellBase, "i18nBundle", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TableCellBase.js","sourceRoot":"","sources":["../src/TableCellBase.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAG1E;;;;;;;;GAQG;AAKH,IAAe,aAAa,GAA5B,MAAe,aAAc,SAAQ,UAAU;IAA/C;;QASC,WAAM,GAAG,KAAK,CAAC;QAWL,aAAQ,GAAW,UAAU,CAAC;IAwBzC,CAAC;IAnBA,UAAU;QACT,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,eAAe;QACd,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AAtCA;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;8CAChB;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACb;AASZ;IADF,QAAQ,EAAE;sDACwC;AAK5C;IADN,IAAI,CAAC,oBAAoB,CAAC;uCACG;AAvBhB,aAAa;IAJ3B,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,mBAAmB;KAC3B,CAAC;GACa,aAAa,CA4C3B;AAED,eAAe,aAAa,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport TableCellBaseStyles from \"./generated/themes/TableCellBase.css.js\";\nimport type TableCellHorizontalAlign from \"./types/TableCellHorizontalAlign.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableCellBaseStyles,\n})\nabstract class TableCellBase extends UI5Element {\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t@property({ type: Boolean })\n\t_popin = false;\n\n\t/**\n\t * Determines the horizontal alignment of table cells.\n\t * **Note:** All values valid for justify-content can be used, not just the ones inside the enumeration.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n horizontalAlign?: `${TableCellHorizontalAlign}`;\n\n\tprotected ariaRole: string = \"gridcell\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonEnterDOM() {\n\t\tthis.toggleAttribute(\"ui5-table-cell-base\", true);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._popin) {\n\t\t\tthis.removeAttribute(\"role\");\n\t\t} else {\n\t\t\tthis.setAttribute(\"role\", this.ariaRole);\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n\n\tisTableCellBase() {\n\t\treturn true;\n\t}\n}\n\nexport default TableCellBase;\n"]}
1
+ {"version":3,"file":"TableCellBase.js","sourceRoot":"","sources":["../src/TableCellBase.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAG1E;;;;;;;;GAQG;AAKH,IAAe,aAAa,GAA5B,MAAe,aAAc,SAAQ,UAAU;IAA/C;;QAkBC,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,UAAU,CAAC;IAwBzC,CAAC;IAnBA,UAAU;QACT,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,eAAe;QACd,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AAtCA;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;8CAChB;AASnB;IADF,QAAQ,EAAE;sDACwC;AAGnD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACb;AAKR;IADN,IAAI,CAAC,oBAAoB,CAAC;uCACG;AAvBhB,aAAa;IAJ3B,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,mBAAmB;KAC3B,CAAC;GACa,aAAa,CA4C3B;AAED,eAAe,aAAa,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport TableCellBaseStyles from \"./generated/themes/TableCellBase.css.js\";\nimport type TableCellHorizontalAlign from \"./types/TableCellHorizontalAlign.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableCellBaseStyles,\n})\nabstract class TableCellBase extends UI5Element {\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t/**\n\t * Determines the horizontal alignment of table cells.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n horizontalAlign?: `${TableCellHorizontalAlign}`;\n\n\t@property({ type: Boolean })\n\t_popin = false;\n\n\tprotected ariaRole: string = \"gridcell\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonEnterDOM() {\n\t\tthis.toggleAttribute(\"ui5-table-cell-base\", true);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._popin) {\n\t\t\tthis.removeAttribute(\"role\");\n\t\t} else {\n\t\t\tthis.setAttribute(\"role\", this.ariaRole);\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n\n\tisTableCellBase() {\n\t\treturn true;\n\t}\n}\n\nexport default TableCellBase;\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Base class for the extensions of <code>ui5-table</code> components.
2
+ * Base class for the extensions of `ui5-table` components.
3
3
  * @private
4
4
  */
5
5
  export default abstract class TableExtension {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Base class for the extensions of <code>ui5-table</code> components.
2
+ * Base class for the extensions of `ui5-table` components.
3
3
  * @private
4
4
  */
5
5
  export default class TableExtension {
@@ -1 +1 @@
1
- {"version":3,"file":"TableExtension.js","sourceRoot":"","sources":["../src/TableExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAgB,cAAc;CAAG","sourcesContent":["/**\n * Base class for the extensions of <code>ui5-table</code> components.\n * @private\n */\nexport default abstract class TableExtension {}\n"]}
1
+ {"version":3,"file":"TableExtension.js","sourceRoot":"","sources":["../src/TableExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAgB,cAAc;CAAG","sourcesContent":["/**\n * Base class for the extensions of `ui5-table` components.\n * @private\n */\nexport default abstract class TableExtension {}\n"]}
@@ -57,6 +57,14 @@ declare class TableHeaderCell extends TableCellBase {
57
57
  * @public
58
58
  */
59
59
  importance: number;
60
+ /**
61
+ * The text for the column when it pops in.
62
+ *
63
+ * @default undefined
64
+ * @since 2.7.0
65
+ * @public
66
+ */
67
+ popinText?: string;
60
68
  _popin: boolean;
61
69
  protected ariaRole: string;
62
70
  _popinWidth: number;
@@ -81,8 +81,10 @@ let TableHeaderCell = class TableHeaderCell extends TableCellBase {
81
81
  }
82
82
  onBeforeRendering() {
83
83
  super.onBeforeRendering();
84
- // overwrite setting of TableCellBase so that the TableHeaderCell always uses the slot variable
85
- this.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;
84
+ if (this._individualSlot) {
85
+ // overwrite setting of TableCellBase so that the TableHeaderCell always uses the slot variable
86
+ this.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;
87
+ }
86
88
  }
87
89
  };
88
90
  __decorate([
@@ -97,6 +99,9 @@ __decorate([
97
99
  __decorate([
98
100
  property({ type: Number })
99
101
  ], TableHeaderCell.prototype, "importance", void 0);
102
+ __decorate([
103
+ property()
104
+ ], TableHeaderCell.prototype, "popinText", void 0);
100
105
  __decorate([
101
106
  property({ type: Boolean, noAttribute: true })
102
107
  ], TableHeaderCell.prototype, "_popin", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderCell.js","sourceRoot":"","sources":["../src/TableHeaderCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,uBAAuB,MAAM,sDAAsD,CAAC;AAC3F,OAAO,qBAAqB,MAAM,2CAA2C,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;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;QAGf,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,cAAc,CAAC;QAC5C,gBAAW,GAAW,CAAC,CAAC;IAczB,CAAC;IAZA,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,+FAA+F;QAC/F,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,0BAA0B,IAAI,CAAC,eAAe,GAAG,CAAC;IAC/E,CAAC;CACD,CAAA;AAxDA;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;AAGf;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;+CAChC;AA/CV,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,CAgEpB;AAED,eAAe,CAAC,MAAM,EAAE,CAAC;AAEzB,eAAe,eAAe,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport TableHeaderCellTemplate from \"./generated/templates/TableHeaderCellTemplate.lit.js\";\nimport TableHeaderCellStyles from \"./generated/themes/TableHeaderCell.css.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@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\t// overwrite setting of TableCellBase so that the TableHeaderCell always uses the slot variable\n\t\tthis.style.justifyContent = `var(--horizontal-align-${this._individualSlot})`;\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,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,uBAAuB,MAAM,sDAAsD,CAAC;AAC3F,OAAO,qBAAqB,MAAM,2CAA2C,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;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;QAaf,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,cAAc,CAAC;QAC5C,gBAAW,GAAW,CAAC,CAAC;IAgBzB,CAAC;IAdA,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;IACF,CAAC;CACD,CAAA;AApEA;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;AAGnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;+CAChC;AAzDV,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,CA4EpB;AAED,eAAe,CAAC,MAAM,EAAE,CAAC;AAEzB,eAAe,eAAe,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport TableHeaderCellTemplate from \"./generated/templates/TableHeaderCellTemplate.lit.js\";\nimport TableHeaderCellStyles from \"./generated/themes/TableHeaderCell.css.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@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}\n}\n\nTableHeaderCell.define();\n\nexport default TableHeaderCell;\n"]}
@@ -40,9 +40,11 @@ declare class TableHeaderRow extends TableRowBase {
40
40
  sticky: boolean;
41
41
  onBeforeRendering(): void;
42
42
  isHeaderRow(): boolean;
43
+ get _hasRowActions(): boolean;
43
44
  get _isSelectable(): boolean | undefined;
44
45
  get _isSelected(): boolean | undefined;
45
46
  get _i18nSelection(): string;
46
47
  get _i18nRowPopin(): string;
48
+ get _i18nRowActions(): string;
47
49
  }
48
50
  export default TableHeaderRow;
@@ -11,7 +11,7 @@ import TableRowBase from "./TableRowBase.js";
11
11
  import TableHeaderRowTemplate from "./generated/templates/TableHeaderRowTemplate.lit.js";
12
12
  import TableHeaderRowStyles from "./generated/themes/TableHeaderRow.css.js";
13
13
  import TableHeaderCell from "./TableHeaderCell.js";
14
- import { TABLE_SELECTION, TABLE_ROW_POPIN, } from "./generated/i18n/i18n-defaults.js";
14
+ import { TABLE_SELECTION, TABLE_ROW_POPIN, TABLE_ROW_ACTIONS, } from "./generated/i18n/i18n-defaults.js";
15
15
  /**
16
16
  * @class
17
17
  *
@@ -61,6 +61,9 @@ class TableHeaderRow extends TableRowBase {
61
61
  isHeaderRow() {
62
62
  return true;
63
63
  }
64
+ get _hasRowActions() {
65
+ return this._table ? this._table._hasRowActions : false;
66
+ }
64
67
  get _isSelectable() {
65
68
  return this._isMultiSelect;
66
69
  }
@@ -73,6 +76,9 @@ class TableHeaderRow extends TableRowBase {
73
76
  get _i18nRowPopin() {
74
77
  return TableRowBase.i18nBundle.getText(TABLE_ROW_POPIN);
75
78
  }
79
+ get _i18nRowActions() {
80
+ return TableRowBase.i18nBundle.getText(TABLE_ROW_ACTIONS);
81
+ }
76
82
  };
77
83
  __decorate([
78
84
  slot({
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderRow.js","sourceRoot":"","sources":["../src/TableHeaderRow.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,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,GACf,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,IAAM,cAAc;AANpB;;;;;GAKG;AACH,MAAM,cAAe,SAAQ,YAAY;IAAzC;;QAmBC;;;;;;;WAOG;QAEH,WAAM,GAAG,KAAK,CAAC;IA4BhB,CAAC;IA1BA,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,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;CACD,CAAA;AAvCA;IATC,IAAI,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE;YACxB,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC;YAClD,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,CAwDnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","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 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} 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\"],\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\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 _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}\n\nTableHeaderRow.define();\n\nexport default TableHeaderRow;\n"]}
1
+ {"version":3,"file":"TableHeaderRow.js","sourceRoot":"","sources":["../src/TableHeaderRow.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,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,GACjB,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,IAAM,cAAc;AANpB;;;;;GAKG;AACH,MAAM,cAAe,SAAQ,YAAY;IAAzC;;QAmBC;;;;;;;WAOG;QAEH,WAAM,GAAG,KAAK,CAAC;IAmChB,CAAC;IAjCA,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;AA9CA;IATC,IAAI,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE;YACxB,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC;YAClD,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,CA+DnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","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 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} 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\"],\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\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,5 +1,7 @@
1
1
  import TableRowBase from "./TableRowBase.js";
2
2
  import TableCell from "./TableCell.js";
3
+ import type TableRowActionBase from "./TableRowActionBase.js";
4
+ import "@ui5/webcomponents-icons/dist/overflow.js";
3
5
  /**
4
6
  * @class
5
7
  *
@@ -26,6 +28,15 @@ declare class TableRow extends TableRowBase {
26
28
  * @public
27
29
  */
28
30
  cells: Array<TableCell>;
31
+ /**
32
+ * Defines the actions of the component.
33
+ *
34
+ * **Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.
35
+ *
36
+ * @since 2.7.0
37
+ * @public
38
+ */
39
+ actions: Array<TableRowActionBase>;
29
40
  /**
30
41
  * Unique identifier of the row.
31
42
  *
@@ -34,7 +45,7 @@ declare class TableRow extends TableRowBase {
34
45
  */
35
46
  rowKey: string;
36
47
  /**
37
- * Defines the position of the row respect to the total number of rows within the table when the <code>ui5-table-virtualizer</code> feature is used.
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.
38
49
  *
39
50
  * @default -1
40
51
  * @since 2.5.0
@@ -70,6 +81,12 @@ declare class TableRow extends TableRowBase {
70
81
  _onclick(): void;
71
82
  _onkeyup(): void;
72
83
  _onfocusout(): void;
84
+ _onOverflowButtonClick(e: PointerEvent): void;
73
85
  get _isInteractive(): boolean;
86
+ get _hasRowActions(): boolean;
87
+ get _hasOverflowActions(): boolean;
88
+ get _flexibleActions(): TableRowActionBase[];
89
+ get _fixedActions(): TableRowActionBase[];
90
+ get _overflowActions(): TableRowActionBase[];
74
91
  }
75
92
  export default TableRow;