@ui5/webcomponents 1.0.0-rc.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (729) hide show
  1. package/CHANGELOG.md +816 -1
  2. package/README.md +144 -41
  3. package/csp.js +7 -0
  4. package/customI18n.js +50 -0
  5. package/dist/Assets-static.js +6 -0
  6. package/dist/Assets.js +2 -1
  7. package/dist/Avatar.js +222 -37
  8. package/dist/AvatarGroup.js +603 -0
  9. package/dist/Badge.js +44 -22
  10. package/dist/Breadcrumbs.js +573 -0
  11. package/dist/BreadcrumbsItem.js +103 -0
  12. package/dist/BusyIndicator.js +172 -17
  13. package/dist/Button.js +148 -35
  14. package/dist/Calendar.js +342 -546
  15. package/dist/CalendarDate.js +45 -0
  16. package/dist/CalendarHeader.js +133 -62
  17. package/dist/CalendarPart.js +111 -0
  18. package/dist/Card.js +44 -158
  19. package/dist/CardHeader.js +288 -0
  20. package/dist/Carousel.js +432 -78
  21. package/dist/CheckBox.js +150 -50
  22. package/dist/ColorPalette.js +493 -0
  23. package/dist/ColorPaletteItem.js +137 -0
  24. package/dist/ColorPalettePopover.js +219 -0
  25. package/dist/ColorPicker.js +524 -0
  26. package/dist/ComboBox.js +626 -90
  27. package/dist/ComboBoxFilters.js +8 -1
  28. package/dist/ComboBoxGroupItem.js +70 -0
  29. package/dist/ComboBoxItem.js +12 -24
  30. package/dist/CustomListItem.js +38 -9
  31. package/dist/DateComponentBase.js +170 -0
  32. package/dist/DatePicker.js +446 -382
  33. package/dist/DateRangePicker.js +328 -0
  34. package/dist/DateTimePicker.js +430 -0
  35. package/dist/DayPicker.js +509 -431
  36. package/dist/Dialog.js +498 -51
  37. package/dist/DurationPicker.js +312 -0
  38. package/dist/FileUploader.js +222 -29
  39. package/dist/GroupHeaderListItem.js +32 -8
  40. package/dist/Icon.js +197 -36
  41. package/dist/Input.js +689 -170
  42. package/dist/Interfaces.js +192 -0
  43. package/dist/Label.js +27 -12
  44. package/dist/Link.js +139 -29
  45. package/dist/List.js +514 -111
  46. package/dist/ListItem.js +124 -20
  47. package/dist/ListItemBase.js +42 -8
  48. package/dist/MessageStrip.js +56 -70
  49. package/dist/MonthPicker.js +180 -182
  50. package/dist/MultiComboBox.js +589 -202
  51. package/dist/MultiComboBoxItem.js +8 -5
  52. package/dist/MultiInput.js +301 -0
  53. package/dist/Option.js +48 -5
  54. package/dist/Panel.js +118 -36
  55. package/dist/Popover.js +286 -234
  56. package/dist/Popup.js +381 -284
  57. package/dist/ProgressIndicator.js +235 -0
  58. package/dist/RadioButton.js +133 -53
  59. package/dist/RadioButtonGroup.js +53 -29
  60. package/dist/RangeSlider.js +769 -0
  61. package/dist/RatingIndicator.js +291 -0
  62. package/dist/ResponsivePopover.js +82 -40
  63. package/dist/SegmentedButton.js +137 -51
  64. package/dist/SegmentedButtonItem.js +109 -0
  65. package/dist/Select.js +478 -100
  66. package/dist/Slider.js +320 -0
  67. package/dist/SliderBase.js +842 -0
  68. package/dist/StandardListItem.js +45 -22
  69. package/dist/StepInput.js +684 -0
  70. package/dist/SuggestionGroupItem.js +64 -0
  71. package/dist/SuggestionItem.js +38 -30
  72. package/dist/SuggestionListItem.js +76 -0
  73. package/dist/Switch.js +60 -42
  74. package/dist/Tab.js +181 -15
  75. package/dist/TabContainer.js +296 -230
  76. package/dist/TabSeparator.js +2 -1
  77. package/dist/Table.js +480 -35
  78. package/dist/TableCell.js +13 -15
  79. package/dist/TableColumn.js +18 -7
  80. package/dist/TableGroupRow.js +160 -0
  81. package/dist/TableRow.js +244 -18
  82. package/dist/TextArea.js +311 -36
  83. package/dist/TimePicker.js +56 -683
  84. package/dist/TimePickerBase.js +463 -0
  85. package/dist/TimeSelection.js +493 -0
  86. package/dist/Title.js +17 -10
  87. package/dist/Toast.js +25 -14
  88. package/dist/ToggleButton.js +21 -13
  89. package/dist/Token.js +84 -45
  90. package/dist/Tokenizer.js +246 -64
  91. package/dist/Tree.js +443 -0
  92. package/dist/TreeItem.js +168 -0
  93. package/dist/TreeListItem.js +332 -0
  94. package/dist/WheelSlider.js +227 -77
  95. package/dist/YearPicker.js +199 -255
  96. package/dist/api.json +6871 -1
  97. package/dist/features/ColorPaletteMoreColors.js +42 -0
  98. package/dist/features/InputElementsFormSupport.js +0 -1
  99. package/dist/features/InputSuggestions.js +273 -53
  100. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  105. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  110. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  111. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  112. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  113. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  115. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  119. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  123. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  134. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  135. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  136. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  137. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  138. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  139. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  140. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  141. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  142. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  143. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  144. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  145. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  146. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  147. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  148. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  149. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  150. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  151. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  152. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  153. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  154. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  155. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  156. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  157. package/dist/generated/i18n/i18n-defaults.js +2 -2
  158. package/dist/generated/json-imports/Themes-static.js +35 -0
  159. package/dist/generated/json-imports/Themes.js +23 -15
  160. package/dist/generated/json-imports/i18n-static.js +162 -0
  161. package/dist/generated/json-imports/i18n.js +113 -89
  162. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  163. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  164. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  165. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  166. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  167. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
  168. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  169. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  170. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  171. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  172. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  173. package/dist/generated/templates/CarouselTemplate.lit.js +13 -14
  174. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  175. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  176. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  177. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  178. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  179. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  180. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  181. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -5
  182. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -13
  183. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -4
  184. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
  185. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +12 -0
  186. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  187. package/dist/generated/templates/DialogTemplate.lit.js +9 -8
  188. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
  189. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  190. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  191. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  192. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -12
  193. package/dist/generated/templates/InputTemplate.lit.js +9 -8
  194. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  195. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  196. package/dist/generated/templates/ListItemTemplate.lit.js +13 -13
  197. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  198. package/dist/generated/templates/MessageStripTemplate.lit.js +6 -27
  199. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  200. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -7
  201. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  202. package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
  203. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  204. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  205. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
  206. package/dist/generated/templates/PopupTemplate.lit.js +4 -4
  207. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  208. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  209. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  210. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  211. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -11
  212. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  213. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  214. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  215. package/dist/generated/templates/SelectTemplate.lit.js +6 -4
  216. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  217. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  218. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -19
  219. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  220. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  221. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  222. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -8
  223. package/dist/generated/templates/TabContainerTemplate.lit.js +16 -18
  224. package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -0
  225. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -0
  226. package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -4
  227. package/dist/generated/templates/TabTemplate.lit.js +4 -4
  228. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  229. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  230. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  231. package/dist/generated/templates/TableRowTemplate.lit.js +12 -10
  232. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  233. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +11 -0
  234. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
  235. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -8
  236. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -5
  237. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  238. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  239. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  240. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  241. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  242. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  243. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  244. package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
  245. package/dist/generated/templates/TreeTemplate.lit.js +8 -0
  246. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -7
  247. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  248. package/dist/generated/themes/Avatar.css.js +6 -7
  249. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  250. package/dist/generated/themes/Badge.css.js +6 -7
  251. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  252. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  253. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  254. package/dist/generated/themes/BusyIndicator.css.js +6 -7
  255. package/dist/generated/themes/Button.css.js +6 -7
  256. package/dist/generated/themes/Button.ie11.css.js +8 -0
  257. package/dist/generated/themes/Calendar.css.js +6 -7
  258. package/dist/generated/themes/CalendarHeader.css.js +6 -7
  259. package/dist/generated/themes/Card.css.js +6 -7
  260. package/dist/generated/themes/CardHeader.css.js +8 -0
  261. package/dist/generated/themes/Carousel.css.js +6 -7
  262. package/dist/generated/themes/CheckBox.css.js +6 -7
  263. package/dist/generated/themes/ColorPalette.css.js +8 -0
  264. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  265. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  266. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  267. package/dist/generated/themes/ColorPicker.css.js +8 -0
  268. package/dist/generated/themes/ComboBox.css.js +6 -7
  269. package/dist/generated/themes/ComboBoxPopover.css.js +6 -7
  270. package/dist/generated/themes/CustomListItem.css.js +6 -7
  271. package/dist/generated/themes/DatePicker.css.js +6 -7
  272. package/dist/generated/themes/DatePickerPopover.css.js +6 -7
  273. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  274. package/dist/generated/themes/DateTimePicker.css.js +8 -0
  275. package/dist/generated/themes/DateTimePickerPopover.css.js +8 -0
  276. package/dist/generated/themes/DayPicker.css.js +6 -7
  277. package/dist/generated/themes/Dialog.css.js +6 -7
  278. package/dist/generated/themes/FileUploader.css.js +6 -7
  279. package/dist/generated/themes/GroupHeaderListItem.css.js +6 -7
  280. package/dist/generated/themes/GrowingButton.css.js +8 -0
  281. package/dist/generated/themes/Icon.css.js +6 -7
  282. package/dist/generated/themes/Input.css.js +6 -7
  283. package/dist/generated/themes/InputIcon.css.js +6 -7
  284. package/dist/generated/themes/InvisibleTextStyles.css.js +6 -7
  285. package/dist/generated/themes/Label.css.js +6 -7
  286. package/dist/generated/themes/Link.css.js +6 -7
  287. package/dist/generated/themes/List.css.js +6 -7
  288. package/dist/generated/themes/ListItem.css.js +6 -7
  289. package/dist/generated/themes/ListItemBase.css.js +6 -7
  290. package/dist/generated/themes/MessageStrip.css.js +6 -7
  291. package/dist/generated/themes/MonthPicker.css.js +6 -7
  292. package/dist/generated/themes/MultiComboBox.css.js +6 -7
  293. package/dist/generated/themes/MultiInput.css.js +8 -0
  294. package/dist/generated/themes/Panel.css.js +6 -7
  295. package/dist/generated/themes/Popover.css.js +6 -7
  296. package/dist/generated/themes/Popup.css.js +6 -7
  297. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  298. package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
  299. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  300. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  301. package/dist/generated/themes/RadioButton.css.js +6 -7
  302. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  303. package/dist/generated/themes/ResponsivePopover.css.js +6 -7
  304. package/dist/generated/themes/ResponsivePopoverCommon.css.js +6 -7
  305. package/dist/generated/themes/SegmentedButton.css.js +6 -7
  306. package/dist/generated/themes/Select.css.js +6 -7
  307. package/dist/generated/themes/SelectPopover.css.js +8 -0
  308. package/dist/generated/themes/SliderBase.css.js +8 -0
  309. package/dist/generated/themes/StepInput.css.js +8 -0
  310. package/dist/generated/themes/Suggestions.css.js +8 -0
  311. package/dist/generated/themes/Switch.css.js +6 -7
  312. package/dist/generated/themes/Tab.css.js +6 -7
  313. package/dist/generated/themes/TabContainer.css.js +6 -7
  314. package/dist/generated/themes/TabInOverflow.css.js +8 -0
  315. package/dist/generated/themes/TabInStrip.css.js +8 -0
  316. package/dist/generated/themes/Table.css.js +6 -7
  317. package/dist/generated/themes/TableCell.css.js +6 -7
  318. package/dist/generated/themes/TableColumn.css.js +6 -7
  319. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  320. package/dist/generated/themes/TableRow.css.js +6 -7
  321. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  322. package/dist/generated/themes/TextArea.css.js +6 -7
  323. package/dist/generated/themes/TimePicker.css.js +6 -7
  324. package/dist/generated/themes/TimePickerPopover.css.js +6 -7
  325. package/dist/generated/themes/TimeSelection.css.js +8 -0
  326. package/dist/generated/themes/Title.css.js +6 -7
  327. package/dist/generated/themes/Toast.css.js +6 -7
  328. package/dist/generated/themes/ToggleButton.css.js +6 -7
  329. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  330. package/dist/generated/themes/Token.css.js +6 -7
  331. package/dist/generated/themes/Tokenizer.css.js +6 -7
  332. package/dist/generated/themes/Tree.css.js +8 -0
  333. package/dist/generated/themes/TreeListItem.css.js +8 -0
  334. package/dist/generated/themes/ValueStateMessage.css.js +6 -7
  335. package/dist/generated/themes/WheelSlider.css.js +6 -7
  336. package/dist/generated/themes/YearPicker.css.js +6 -7
  337. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  338. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  339. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  340. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  341. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  342. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  343. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  344. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  345. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  346. package/dist/i18n/messagebundle.properties +335 -0
  347. package/dist/i18n/messagebundle_ar.properties +224 -0
  348. package/dist/i18n/messagebundle_bg.properties +224 -0
  349. package/dist/i18n/messagebundle_ca.properties +224 -0
  350. package/dist/i18n/messagebundle_cs.properties +224 -0
  351. package/dist/i18n/messagebundle_cy.properties +224 -0
  352. package/dist/i18n/messagebundle_da.properties +224 -0
  353. package/dist/i18n/messagebundle_de.properties +224 -0
  354. package/dist/i18n/messagebundle_el.properties +224 -0
  355. package/dist/i18n/messagebundle_en.properties +224 -0
  356. package/dist/i18n/messagebundle_en_GB.properties +224 -0
  357. package/dist/i18n/messagebundle_en_US_sappsd.properties +224 -0
  358. package/dist/i18n/messagebundle_en_US_saprigi.properties +224 -0
  359. package/dist/i18n/messagebundle_en_US_saptrc.properties +224 -0
  360. package/dist/i18n/messagebundle_es.properties +224 -0
  361. package/dist/i18n/messagebundle_es_MX.properties +224 -0
  362. package/dist/i18n/messagebundle_et.properties +224 -0
  363. package/dist/i18n/messagebundle_fi.properties +224 -0
  364. package/dist/i18n/messagebundle_fr.properties +224 -0
  365. package/dist/i18n/messagebundle_fr_CA.properties +224 -0
  366. package/dist/i18n/messagebundle_hi.properties +224 -0
  367. package/dist/i18n/messagebundle_hr.properties +224 -0
  368. package/dist/i18n/messagebundle_hu.properties +224 -0
  369. package/dist/i18n/messagebundle_id.properties +224 -0
  370. package/dist/i18n/messagebundle_in.properties +172 -0
  371. package/dist/i18n/messagebundle_it.properties +224 -0
  372. package/dist/i18n/messagebundle_iw.properties +224 -0
  373. package/dist/i18n/messagebundle_ja.properties +224 -0
  374. package/dist/i18n/messagebundle_kk.properties +224 -0
  375. package/dist/i18n/messagebundle_ko.properties +224 -0
  376. package/dist/i18n/messagebundle_lt.properties +224 -0
  377. package/dist/i18n/messagebundle_lv.properties +224 -0
  378. package/dist/i18n/messagebundle_ms.properties +224 -0
  379. package/dist/i18n/messagebundle_nl.properties +224 -0
  380. package/dist/i18n/messagebundle_no.properties +224 -0
  381. package/dist/i18n/messagebundle_pl.properties +224 -0
  382. package/dist/i18n/messagebundle_pt.properties +224 -0
  383. package/dist/i18n/messagebundle_pt_PT.properties +224 -0
  384. package/dist/i18n/messagebundle_ro.properties +224 -0
  385. package/dist/i18n/messagebundle_ru.properties +224 -0
  386. package/dist/i18n/messagebundle_sh.properties +224 -0
  387. package/dist/i18n/messagebundle_sk.properties +224 -0
  388. package/dist/i18n/messagebundle_sl.properties +224 -0
  389. package/dist/i18n/messagebundle_sv.properties +224 -0
  390. package/dist/i18n/messagebundle_th.properties +224 -0
  391. package/dist/i18n/messagebundle_tr.properties +224 -0
  392. package/dist/i18n/messagebundle_uk.properties +224 -0
  393. package/dist/i18n/messagebundle_vi.properties +224 -0
  394. package/dist/i18n/messagebundle_zh_CN.properties +224 -0
  395. package/dist/i18n/messagebundle_zh_TW.properties +224 -0
  396. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  397. package/dist/popup-utils/PopoverRegistry.js +55 -21
  398. package/dist/timepicker-utils/TimeSlider.js +103 -0
  399. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  400. package/dist/types/AvatarGroupType.js +43 -0
  401. package/dist/types/AvatarShape.js +1 -1
  402. package/dist/types/AvatarSize.js +1 -1
  403. package/dist/types/BreadcrumbsDesign.js +42 -0
  404. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  405. package/dist/types/BusyIndicatorSize.js +1 -1
  406. package/dist/types/ButtonDesign.js +8 -1
  407. package/dist/types/CalendarSelectionMode.js +47 -0
  408. package/dist/types/CarouselArrowsPlacement.js +3 -3
  409. package/dist/types/GrowingMode.js +48 -0
  410. package/dist/types/InputType.js +7 -7
  411. package/dist/types/LinkDesign.js +1 -1
  412. package/dist/types/ListGrowingMode.js +15 -0
  413. package/dist/types/ListItemType.js +2 -2
  414. package/dist/types/ListMode.js +9 -1
  415. package/dist/types/ListSeparators.js +1 -1
  416. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  417. package/dist/types/PanelAccessibleRole.js +1 -1
  418. package/dist/types/PopoverHorizontalAlign.js +1 -1
  419. package/dist/types/PopoverPlacementType.js +2 -2
  420. package/dist/types/PopoverVerticalAlign.js +1 -2
  421. package/dist/types/Priority.js +55 -0
  422. package/dist/types/SemanticColor.js +1 -1
  423. package/dist/types/SwitchDesign.js +40 -0
  424. package/dist/types/TabContainerTabsPlacement.js +40 -0
  425. package/dist/types/TabLayout.js +1 -1
  426. package/dist/types/TableGrowingMode.js +15 -0
  427. package/dist/types/TableMode.js +47 -0
  428. package/dist/types/TableRowType.js +40 -0
  429. package/dist/types/TitleLevel.js +1 -1
  430. package/dist/types/ToastPlacement.js +1 -2
  431. package/dist/types/WrappingType.js +41 -0
  432. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  433. package/dist/webcomponentsjs/README.md +64 -47
  434. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  435. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  436. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  437. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  438. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  439. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  440. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  441. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  442. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  443. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  444. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  445. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  446. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  447. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  448. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  449. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  450. package/package-scripts.js +1 -0
  451. package/package.json +23 -6
  452. package/src/Assets-static.js +6 -0
  453. package/src/Assets.js +7 -0
  454. package/src/Avatar.hbs +20 -0
  455. package/src/Avatar.js +392 -0
  456. package/src/AvatarGroup.hbs +30 -0
  457. package/src/AvatarGroup.js +603 -0
  458. package/src/Badge.hbs +14 -0
  459. package/src/Badge.js +165 -0
  460. package/src/Breadcrumbs.hbs +42 -0
  461. package/src/Breadcrumbs.js +573 -0
  462. package/src/BreadcrumbsItem.js +103 -0
  463. package/src/BreadcrumbsPopover.hbs +28 -0
  464. package/src/BusyIndicator.hbs +32 -0
  465. package/src/BusyIndicator.js +269 -0
  466. package/src/Button.hbs +45 -0
  467. package/src/Button.js +463 -0
  468. package/src/Calendar.hbs +69 -0
  469. package/src/Calendar.js +489 -0
  470. package/src/CalendarDate.js +45 -0
  471. package/src/CalendarHeader.hbs +54 -0
  472. package/src/CalendarHeader.js +209 -0
  473. package/src/CalendarPart.js +111 -0
  474. package/src/Card.hbs +14 -0
  475. package/src/Card.js +160 -0
  476. package/src/CardHeader.hbs +35 -0
  477. package/src/CardHeader.js +288 -0
  478. package/src/Carousel.hbs +85 -0
  479. package/src/Carousel.js +681 -0
  480. package/src/CheckBox.hbs +44 -0
  481. package/src/CheckBox.js +424 -0
  482. package/src/ColorPalette.hbs +52 -0
  483. package/src/ColorPalette.js +493 -0
  484. package/src/ColorPaletteDialog.hbs +18 -0
  485. package/src/ColorPaletteItem.hbs +11 -0
  486. package/src/ColorPaletteItem.js +137 -0
  487. package/src/ColorPalettePopover.hbs +29 -0
  488. package/src/ColorPalettePopover.js +219 -0
  489. package/src/ColorPicker.hbs +98 -0
  490. package/src/ColorPicker.js +524 -0
  491. package/src/ComboBox.hbs +49 -0
  492. package/src/ComboBox.js +1041 -0
  493. package/src/ComboBoxFilters.js +40 -0
  494. package/src/ComboBoxGroupItem.js +70 -0
  495. package/src/ComboBoxItem.js +49 -0
  496. package/src/ComboBoxPopover.hbs +125 -0
  497. package/src/CustomListItem.hbs +5 -0
  498. package/src/CustomListItem.js +99 -0
  499. package/src/DateComponentBase.js +170 -0
  500. package/src/DatePicker.hbs +44 -0
  501. package/src/DatePicker.js +823 -0
  502. package/src/DatePickerPopover.hbs +63 -0
  503. package/src/DateRangePicker.js +328 -0
  504. package/src/DateTimePicker.js +430 -0
  505. package/src/DateTimePickerPopover.hbs +74 -0
  506. package/src/DayPicker.hbs +66 -0
  507. package/src/DayPicker.js +754 -0
  508. package/src/Dialog.hbs +35 -0
  509. package/src/Dialog.js +601 -0
  510. package/src/DurationPicker.js +312 -0
  511. package/src/FileUploader.hbs +40 -0
  512. package/src/FileUploader.js +530 -0
  513. package/src/FileUploaderPopover.hbs +25 -0
  514. package/src/GroupHeaderListItem.hbs +15 -0
  515. package/src/GroupHeaderListItem.js +94 -0
  516. package/src/Icon.hbs +25 -0
  517. package/src/Icon.js +373 -0
  518. package/src/Input.hbs +78 -0
  519. package/src/Input.js +1381 -0
  520. package/src/InputPopover.hbs +118 -0
  521. package/src/Interfaces.js +192 -0
  522. package/src/Label.hbs +13 -0
  523. package/src/Label.js +152 -0
  524. package/src/Link.hbs +20 -0
  525. package/src/Link.js +349 -0
  526. package/src/List.hbs +89 -0
  527. package/src/List.js +1056 -0
  528. package/src/ListItem.hbs +102 -0
  529. package/src/ListItem.js +371 -0
  530. package/src/ListItemBase.js +179 -0
  531. package/src/MessageStrip.hbs +34 -0
  532. package/src/MessageStrip.js +227 -0
  533. package/src/MonthPicker.hbs +29 -0
  534. package/src/MonthPicker.js +299 -0
  535. package/src/MultiComboBox.hbs +78 -0
  536. package/src/MultiComboBox.js +1091 -0
  537. package/src/MultiComboBoxItem.js +43 -0
  538. package/src/MultiComboBoxPopover.hbs +133 -0
  539. package/src/MultiInput.hbs +41 -0
  540. package/src/MultiInput.js +301 -0
  541. package/src/Option.js +115 -0
  542. package/src/Panel.hbs +63 -0
  543. package/src/Panel.js +462 -0
  544. package/src/Popover.hbs +25 -0
  545. package/src/Popover.js +786 -0
  546. package/src/Popup.hbs +34 -0
  547. package/src/Popup.js +567 -0
  548. package/src/PopupBlockLayer.hbs +7 -0
  549. package/src/ProgressIndicator.hbs +35 -0
  550. package/src/ProgressIndicator.js +235 -0
  551. package/src/RadioButton.hbs +33 -0
  552. package/src/RadioButton.js +494 -0
  553. package/src/RadioButtonGroup.js +205 -0
  554. package/src/RangeSlider.hbs +70 -0
  555. package/src/RangeSlider.js +769 -0
  556. package/src/RatingIndicator.hbs +33 -0
  557. package/src/RatingIndicator.js +291 -0
  558. package/src/ResponsivePopover.hbs +39 -0
  559. package/src/ResponsivePopover.js +206 -0
  560. package/src/SegmentedButton.hbs +17 -0
  561. package/src/SegmentedButton.js +290 -0
  562. package/src/SegmentedButtonItem.hbs +42 -0
  563. package/src/SegmentedButtonItem.js +109 -0
  564. package/src/Select.hbs +45 -0
  565. package/src/Select.js +834 -0
  566. package/src/SelectPopover.hbs +89 -0
  567. package/src/Slider.hbs +42 -0
  568. package/src/Slider.js +320 -0
  569. package/src/SliderBase.hbs +38 -0
  570. package/src/SliderBase.js +842 -0
  571. package/src/StandardListItem.hbs +44 -0
  572. package/src/StandardListItem.js +191 -0
  573. package/src/StepInput.hbs +80 -0
  574. package/src/StepInput.js +684 -0
  575. package/src/SuggestionGroupItem.js +64 -0
  576. package/src/SuggestionItem.js +146 -0
  577. package/src/SuggestionListItem.hbs +33 -0
  578. package/src/SuggestionListItem.js +76 -0
  579. package/src/Switch.hbs +50 -0
  580. package/src/Switch.js +262 -0
  581. package/src/Tab.hbs +3 -0
  582. package/src/Tab.js +334 -0
  583. package/src/TabContainer.hbs +93 -0
  584. package/src/TabContainer.js +679 -0
  585. package/src/TabContainerPopover.hbs +24 -0
  586. package/src/TabInOverflow.hbs +22 -0
  587. package/src/TabInStrip.hbs +43 -0
  588. package/src/TabSeparator.hbs +1 -0
  589. package/src/TabSeparator.js +44 -0
  590. package/src/Table.hbs +99 -0
  591. package/src/Table.js +761 -0
  592. package/src/TableCell.hbs +7 -0
  593. package/src/TableCell.js +88 -0
  594. package/src/TableColumn.hbs +8 -0
  595. package/src/TableColumn.js +136 -0
  596. package/src/TableGroupRow.hbs +12 -0
  597. package/src/TableGroupRow.js +160 -0
  598. package/src/TableRow.hbs +61 -0
  599. package/src/TableRow.js +388 -0
  600. package/src/TextArea.hbs +50 -0
  601. package/src/TextArea.js +691 -0
  602. package/src/TextAreaPopover.hbs +28 -0
  603. package/src/TimePicker.hbs +35 -0
  604. package/src/TimePicker.js +166 -0
  605. package/src/TimePickerBase.js +463 -0
  606. package/src/TimePickerPopover.hbs +34 -0
  607. package/src/TimeSelection.hbs +60 -0
  608. package/src/TimeSelection.js +493 -0
  609. package/src/Title.hbs +47 -0
  610. package/src/Title.js +132 -0
  611. package/src/Toast.hbs +13 -0
  612. package/src/Toast.js +243 -0
  613. package/src/ToggleButton.hbs +5 -0
  614. package/src/ToggleButton.js +84 -0
  615. package/src/Token.hbs +30 -0
  616. package/src/Token.js +219 -0
  617. package/src/Tokenizer.hbs +27 -0
  618. package/src/Tokenizer.js +414 -0
  619. package/src/TokenizerPopover.hbs +50 -0
  620. package/src/Tree.hbs +42 -0
  621. package/src/Tree.js +443 -0
  622. package/src/TreeItem.js +168 -0
  623. package/src/TreeListItem.hbs +48 -0
  624. package/src/TreeListItem.js +332 -0
  625. package/src/WheelSlider.hbs +48 -0
  626. package/src/WheelSlider.js +435 -0
  627. package/src/YearPicker.hbs +27 -0
  628. package/src/YearPicker.js +324 -0
  629. package/src/features/ColorPaletteMoreColors.js +42 -0
  630. package/src/features/InputElementsFormSupport.js +88 -0
  631. package/src/features/InputSuggestions.js +521 -0
  632. package/src/i18n/messagebundle.properties +335 -0
  633. package/src/i18n/messagebundle_ar.properties +224 -0
  634. package/src/i18n/messagebundle_bg.properties +224 -0
  635. package/src/i18n/messagebundle_ca.properties +224 -0
  636. package/src/i18n/messagebundle_cs.properties +224 -0
  637. package/src/i18n/messagebundle_cy.properties +224 -0
  638. package/src/i18n/messagebundle_da.properties +224 -0
  639. package/src/i18n/messagebundle_de.properties +224 -0
  640. package/src/i18n/messagebundle_el.properties +224 -0
  641. package/src/i18n/messagebundle_en.properties +224 -0
  642. package/src/i18n/messagebundle_en_GB.properties +224 -0
  643. package/src/i18n/messagebundle_en_US_sappsd.properties +224 -0
  644. package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
  645. package/src/i18n/messagebundle_en_US_saptrc.properties +224 -0
  646. package/src/i18n/messagebundle_es.properties +224 -0
  647. package/src/i18n/messagebundle_es_MX.properties +224 -0
  648. package/src/i18n/messagebundle_et.properties +224 -0
  649. package/src/i18n/messagebundle_fi.properties +224 -0
  650. package/src/i18n/messagebundle_fr.properties +224 -0
  651. package/src/i18n/messagebundle_fr_CA.properties +224 -0
  652. package/src/i18n/messagebundle_hi.properties +224 -0
  653. package/src/i18n/messagebundle_hr.properties +224 -0
  654. package/src/i18n/messagebundle_hu.properties +224 -0
  655. package/src/i18n/messagebundle_id.properties +224 -0
  656. package/src/i18n/messagebundle_in.properties +172 -0
  657. package/src/i18n/messagebundle_it.properties +224 -0
  658. package/src/i18n/messagebundle_iw.properties +224 -0
  659. package/src/i18n/messagebundle_ja.properties +224 -0
  660. package/src/i18n/messagebundle_kk.properties +224 -0
  661. package/src/i18n/messagebundle_ko.properties +224 -0
  662. package/src/i18n/messagebundle_lt.properties +224 -0
  663. package/src/i18n/messagebundle_lv.properties +224 -0
  664. package/src/i18n/messagebundle_ms.properties +224 -0
  665. package/src/i18n/messagebundle_nl.properties +224 -0
  666. package/src/i18n/messagebundle_no.properties +224 -0
  667. package/src/i18n/messagebundle_pl.properties +224 -0
  668. package/src/i18n/messagebundle_pt.properties +224 -0
  669. package/src/i18n/messagebundle_pt_PT.properties +224 -0
  670. package/src/i18n/messagebundle_ro.properties +224 -0
  671. package/src/i18n/messagebundle_ru.properties +224 -0
  672. package/src/i18n/messagebundle_sh.properties +224 -0
  673. package/src/i18n/messagebundle_sk.properties +224 -0
  674. package/src/i18n/messagebundle_sl.properties +224 -0
  675. package/src/i18n/messagebundle_sv.properties +224 -0
  676. package/src/i18n/messagebundle_th.properties +224 -0
  677. package/src/i18n/messagebundle_tr.properties +224 -0
  678. package/src/i18n/messagebundle_uk.properties +224 -0
  679. package/src/i18n/messagebundle_vi.properties +224 -0
  680. package/src/i18n/messagebundle_zh_CN.properties +224 -0
  681. package/src/i18n/messagebundle_zh_TW.properties +224 -0
  682. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  683. package/src/popup-utils/PopoverRegistry.js +145 -0
  684. package/src/timepicker-utils/TimeSlider.js +103 -0
  685. package/src/types/AvatarColorScheme.js +104 -0
  686. package/src/types/AvatarGroupType.js +43 -0
  687. package/src/types/AvatarShape.js +41 -0
  688. package/src/types/AvatarSize.js +67 -0
  689. package/src/types/BreadcrumbsDesign.js +42 -0
  690. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  691. package/src/types/BusyIndicatorSize.js +47 -0
  692. package/src/types/ButtonDesign.js +68 -0
  693. package/src/types/CalendarSelectionMode.js +47 -0
  694. package/src/types/CarouselArrowsPlacement.js +40 -0
  695. package/src/types/GrowingMode.js +48 -0
  696. package/src/types/InputType.js +68 -0
  697. package/src/types/LinkDesign.js +47 -0
  698. package/src/types/ListGrowingMode.js +15 -0
  699. package/src/types/ListItemType.js +47 -0
  700. package/src/types/ListMode.js +77 -0
  701. package/src/types/ListSeparators.js +46 -0
  702. package/src/types/MessageStripDesign.js +54 -0
  703. package/src/types/PanelAccessibleRole.js +48 -0
  704. package/src/types/PopoverHorizontalAlign.js +54 -0
  705. package/src/types/PopoverPlacementType.js +54 -0
  706. package/src/types/PopoverVerticalAlign.js +54 -0
  707. package/src/types/Priority.js +55 -0
  708. package/src/types/SemanticColor.js +61 -0
  709. package/src/types/SwitchDesign.js +40 -0
  710. package/src/types/TabContainerTabsPlacement.js +40 -0
  711. package/src/types/TabLayout.js +40 -0
  712. package/src/types/TableGrowingMode.js +15 -0
  713. package/src/types/TableMode.js +47 -0
  714. package/src/types/TableRowType.js +40 -0
  715. package/src/types/TitleLevel.js +68 -0
  716. package/src/types/ToastPlacement.js +91 -0
  717. package/src/types/WrappingType.js +41 -0
  718. package/dist/Timeline.js +0 -82
  719. package/dist/TimelineItem.js +0 -161
  720. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  721. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  722. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  723. package/dist/generated/themes/ComboBoxItem.css.js +0 -9
  724. package/dist/generated/themes/TabContainerPopup.css.js +0 -9
  725. package/dist/generated/themes/Timeline.css.js +0 -9
  726. package/dist/generated/themes/TimelineItem.css.js +0 -9
  727. package/dist/popup-utils/PopupUtils.js +0 -55
  728. package/dist/types/AvatarFitType.js +0 -40
  729. package/dist/webcomponentsjs/package.json +0 -46
@@ -16,8 +16,9 @@ const metadata = {
16
16
  * @constructor
17
17
  * @author SAP SE
18
18
  * @alias sap.ui.webcomponents.main.TabSeparator
19
- * @extends TabBase
19
+ * @extends UI5Element
20
20
  * @tagname ui5-tab-separator
21
+ * @implements sap.ui.webcomponents.main.ITab
21
22
  * @public
22
23
  */
23
24
  class TabSeparator extends UI5Element {
package/dist/Table.js CHANGED
@@ -2,12 +2,34 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
3
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
4
4
  import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
5
+ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
5
6
  import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
7
+ import { isIE } from "@ui5/webcomponents-base/dist/Device.js";
8
+ import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
9
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
10
+ import debounce from "@ui5/webcomponents-base/dist/util/debounce.js";
11
+ import isElementInView from "@ui5/webcomponents-base/dist/util/isElementInView.js";
12
+ import TableGrowingMode from "./types/TableGrowingMode.js";
13
+ import BusyIndicator from "./BusyIndicator.js";
14
+ import TableMode from "./types/TableMode.js";
15
+ import CheckBox from "./CheckBox.js"; // Ensure the dependency as it is being used in the renderer
16
+
17
+ // Texts
18
+ import {
19
+ LOAD_MORE_TEXT,
20
+ ARIA_LABEL_SELECT_ALL_CHECKBOX,
21
+ TABLE_HEADER_ROW_TEXT,
22
+ TABLE_ROW_POSITION,
23
+ } from "./generated/i18n/i18n-defaults.js";
24
+
25
+ // Template
6
26
  import TableTemplate from "./generated/templates/TableTemplate.lit.js";
7
27
 
8
28
  // Styles
9
29
  import styles from "./generated/themes/Table.css.js";
10
30
 
31
+ const GROWING_WITH_SCROLL_DEBOUNCE_RATE = 250; // ms
32
+
11
33
  /**
12
34
  * @public
13
35
  */
@@ -17,12 +39,12 @@ const metadata = {
17
39
  slots: /** @lends sap.ui.webcomponents.main.Table.prototype */ {
18
40
 
19
41
  /**
20
- * Defines the <code>ui5-table</code> rows.
42
+ * Defines the component rows.
21
43
  * <br><br>
22
44
  * <b>Note:</b> Use <code>ui5-table-row</code> for the intended design.
23
45
  *
24
- * @type {HTMLElement[]}
25
- * @slot
46
+ * @type {sap.ui.webcomponents.main.ITableRow[]}
47
+ * @slot rows
26
48
  * @public
27
49
  */
28
50
  "default": {
@@ -32,24 +54,27 @@ const metadata = {
32
54
  },
33
55
 
34
56
  /**
35
- * Defines the configuration for the columns of the <code>ui5-table</code>.
57
+ * Defines the configuration for the columns of the component.
36
58
  * <br><br>
37
59
  * <b>Note:</b> Use <code>ui5-table-column</code> for the intended design.
38
60
  *
39
- * @type {HTMLElement[]}
61
+ * @type {sap.ui.webcomponents.main.ITableColumn[]}
40
62
  * @slot
41
63
  * @public
42
64
  */
43
65
  columns: {
44
66
  type: HTMLElement,
45
67
  individualSlots: true,
46
- listenFor: { include: ["*"] },
68
+ invalidateOnChildChange: {
69
+ properties: true,
70
+ slots: false,
71
+ },
47
72
  },
48
73
  },
49
74
  properties: /** @lends sap.ui.webcomponents.main.Table.prototype */ {
50
75
 
51
76
  /**
52
- * Defines the text that will be displayed when there is no data and <code>showNoData</code> is present.
77
+ * Defines the text that will be displayed when there is no data and <code>hideNoData</code> is not present.
53
78
  *
54
79
  * @type {string}
55
80
  * @defaultvalue ""
@@ -59,16 +84,104 @@ const metadata = {
59
84
  type: String,
60
85
  },
61
86
 
87
+ /**
88
+ * Defines the text that will be displayed inside the growing button at the bottom of the table,
89
+ * meant for loading more rows upon press.
90
+ *
91
+ * <br><br>
92
+ * <b>Note:</b> If not specified a built-in text will be displayed.
93
+ * <br>
94
+ * <b>Note:</b> This property takes effect if <code>growing</code> is set to <code>Button</code>.
95
+ *
96
+ * @type {string}
97
+ * @defaultvalue ""
98
+ * @since 1.0.0-rc.15
99
+ * @public
100
+ */
101
+ growingButtonText: {
102
+ type: String,
103
+ },
104
+
105
+ /**
106
+ * Defines the subtext that will be displayed under the <code>growingButtonText</code>.
107
+ *
108
+ * <br><br>
109
+ * <b>Note:</b> This property takes effect if <code>growing</code> is set to <code>Button</code>.
110
+ *
111
+ * @type {string}
112
+ * @defaultvalue ""
113
+ * @since 1.0.0-rc.15
114
+ * @public
115
+ */
116
+ growingButtonSubtext: {
117
+ type: String,
118
+ },
119
+
62
120
  /**
63
121
  * Defines if the value of <code>noDataText</code> will be diplayed when there is no rows present in the table.
64
122
  *
65
123
  * @type {boolean}
66
124
  * @defaultvalue false
67
125
  * @public
126
+ * @since 1.0.0-rc.15
68
127
  */
69
- showNoData: {
128
+ hideNoData: {
70
129
  type: Boolean,
71
130
  },
131
+
132
+ /**
133
+ * Defines whether the table will have growing capability either by pressing a <code>More</code> button,
134
+ * or via user scroll. In both cases <code>load-more</code> event is fired.
135
+ * <br><br>
136
+ *
137
+ * Available options:
138
+ * <br><br>
139
+ * <code>Button</code> - Shows a <code>More</code> button at the bottom of the table, pressing of which triggers the <code>load-more</code> event.
140
+ * <br>
141
+ * <code>Scroll</code> - The <code>load-more</code> event is triggered when the user scrolls to the bottom of the table;
142
+ * <br>
143
+ * <code>None</code> (default) - The growing is off.
144
+ * <br><br>
145
+ *
146
+ * <b>Limitations:</b> <code>growing="Scroll"</code> is not supported for Internet Explorer,
147
+ * and the component will fallback to <code>growing="Button"</code>.
148
+ * @type {TableGrowingMode}
149
+ * @defaultvalue "None"
150
+ * @since 1.0.0-rc.12
151
+ * @public
152
+ */
153
+ growing: {
154
+ type: TableGrowingMode,
155
+ defaultValue: TableGrowingMode.None,
156
+ },
157
+
158
+ /**
159
+ * Defines if the table is in busy state.
160
+ * <b>
161
+ *
162
+ * In this state the component's opacity is reduced
163
+ * and busy indicator is displayed at the bottom of the table.
164
+ * @type {boolean}
165
+ * @defaultvalue false
166
+ * @since 1.0.0-rc.12
167
+ * @public
168
+ */
169
+ busy: {
170
+ type: Boolean,
171
+ },
172
+
173
+ /**
174
+ * Defines the delay in milliseconds, after which the busy indicator will show up for this component.
175
+ *
176
+ * @type {Integer}
177
+ * @defaultValue 1000
178
+ * @public
179
+ */
180
+ busyDelay: {
181
+ type: Integer,
182
+ defaultValue: 1000,
183
+ },
184
+
72
185
  /**
73
186
  * Determines whether the column headers remain fixed at the top of the page during
74
187
  * vertical scrolling as long as the Web Component is in the viewport.
@@ -99,6 +212,25 @@ const metadata = {
99
212
  type: Boolean,
100
213
  },
101
214
 
215
+ /**
216
+ * Defines the mode of the component.
217
+ * <br><br>
218
+ * Available options are:
219
+ * <ul>
220
+ * <li><code>MultiSelect</code></li>
221
+ * <li><code>SingleSelect</code></li>
222
+ * <li><code>None</code></li>
223
+ * <ul>
224
+ * @type {TableMode}
225
+ * @defaultvalue "None"
226
+ * @since 1.0.0-rc.15
227
+ * @public
228
+ */
229
+ mode: {
230
+ type: TableMode,
231
+ defaultValue: TableMode.None,
232
+ },
233
+
102
234
  _hiddenColumns: {
103
235
  type: Object,
104
236
  multiple: true,
@@ -107,34 +239,97 @@ const metadata = {
107
239
  _noDataDisplayed: {
108
240
  type: Boolean,
109
241
  },
242
+
243
+ /**
244
+ * Defines the active state of the <code>More</code> button.
245
+ * @private
246
+ */
247
+ _loadMoreActive: {
248
+ type: Boolean,
249
+ },
250
+
251
+ /**
252
+ * Used to represent the table column header for the purpose of the item navigation as it does not work with DOM objects directly
253
+ * @private
254
+ */
255
+ _columnHeader: {
256
+ type: Object,
257
+ },
258
+
259
+ /**
260
+ * Defines if the entire table is in view port.
261
+ * @private
262
+ */
263
+ _inViewport: {
264
+ type: Boolean,
265
+ },
266
+
267
+ /**
268
+ * Defines whether all rows are selected or not when table is in MultiSelect mode.
269
+ * @type {Boolean}
270
+ * @defaultvalue false
271
+ * @since 1.0.0-rc.15
272
+ * @private
273
+ */
274
+ _allRowsSelected: {
275
+ type: Boolean,
276
+ },
110
277
  },
111
278
  events: /** @lends sap.ui.webcomponents.main.Table.prototype */ {
112
279
  /**
113
- * Fired when a row is clicked.
280
+ * Fired when a row in <code>Active</code> mode is clicked or <code>Enter</code> key is pressed.
114
281
  *
115
- * @event
116
- * @param {HTMLElement} row the clicked row.
282
+ * @event sap.ui.webcomponents.main.Table#row-click
283
+ * @param {HTMLElement} row the activated row.
117
284
  * @public
118
285
  */
119
- rowClick: {
286
+ "row-click": {
120
287
  detail: {
121
288
  row: { type: HTMLElement },
122
289
  },
123
290
  },
124
291
 
125
292
  /**
126
- * Fired when the <code>ui5-table-column</code> is shown as a pop-in instead of hiding it.
293
+ * Fired when <code>ui5-table-column</code> is shown as a pop-in instead of hiding it.
127
294
  *
128
- * @event
295
+ * @event sap.ui.webcomponents.main.Table#popin-change
129
296
  * @param {Array} poppedColumns popped-in columns.
130
297
  * @since 1.0.0-rc.6
131
298
  * @public
132
299
  */
133
- popinChange: {
300
+ "popin-change": {
134
301
  detail: {
135
302
  poppedColumns: {},
136
303
  },
137
304
  },
305
+
306
+ /**
307
+ * Fired when the user presses the <code>More</code> button or scrolls to the table's end.
308
+ * <br><br>
309
+ *
310
+ * <b>Note:</b> The event will be fired if <code>growing</code> is set to <code>Button</code> or <code>Scroll</code>.
311
+ * @event sap.ui.webcomponents.main.Table#load-more
312
+ * @public
313
+ * @since 1.0.0-rc.11
314
+ */
315
+ "load-more": {},
316
+
317
+ /**
318
+ * Fired when selection is changed by user interaction
319
+ * in <code>SingleSelect</code> and <code>MultiSelect</code> modes.
320
+ *
321
+ * @event sap.ui.webcomponents.main.Table#selection-change
322
+ * @param {Array} selectedRows An array of the selected rows.
323
+ * @param {Array} previouslySelectedRows An array of the previously selected rows.
324
+ * @public
325
+ * @since 1.0.0-rc.15
326
+ */
327
+ "selection-change": {
328
+ detail: {
329
+ selectedRows: { type: Array },
330
+ previouslySelectedRows: { type: Array },
331
+ },
332
+ },
138
333
  },
139
334
  };
140
335
 
@@ -153,6 +348,22 @@ const metadata = {
153
348
  * On tablets, special consideration should be given to the number of visible columns
154
349
  * and rows due to the limited performance of some devices.
155
350
  *
351
+ * <h3>Selection</h3>
352
+ * To benefit from the selection mechanism of <code>ui5-table</code> component, you can use the available selection modes:
353
+ * <code>SingleSelect</code> and <code>MultiSelect</code>.
354
+ * <br>
355
+ * In additition to the used mode, you can also specify the <code>ui5-table-row</code> type choosing between
356
+ * <code>Active</code> or <code>Inactive</code>.
357
+ * <br><br>
358
+ * In <code>SingleSelect</code> mode, you can select both an <code>Active</code> and <code>Inactive</code> row via mouse or
359
+ * by pressing the <code>Space</code> or <code>Enter</code> keys.
360
+ * <br>
361
+ * In <code>MultiSelect</code> mode, you can select both an <code>Active</code> and <code>Inactive</code> row by pressing the
362
+ * <code>Space</code> key when a row is on focus or via mouse click over the selection checkbox of the row.
363
+ * In order to select all the available rows at once, you can use the selection checkbox presented in the table's header.
364
+ * <br><br>
365
+ * <b>Note:</b> Currently, when a column is shown as a pop-in, the visual indication for selection is not presented over it.
366
+ *
156
367
  * <h3>ES6 Module Import</h3>
157
368
  *
158
369
  * <code>import "@ui5/webcomponents/dist/Table.js";</code>
@@ -168,7 +379,7 @@ const metadata = {
168
379
  * @alias sap.ui.webcomponents.main.Table
169
380
  * @extends sap.ui.webcomponents.base.UI5Element
170
381
  * @tagname ui5-table
171
- * @appenddocs TableColumn TableRow TableCell
382
+ * @appenddocs TableColumn TableRow TableGroupRow TableCell
172
383
  * @public
173
384
  */
174
385
  class Table extends UI5Element {
@@ -188,39 +399,53 @@ class Table extends UI5Element {
188
399
  return TableTemplate;
189
400
  }
190
401
 
402
+ static get dependencies() {
403
+ return [BusyIndicator, CheckBox];
404
+ }
405
+
406
+ static async onDefine() {
407
+ Table.i18nBundle = await getI18nBundle("@ui5/webcomponents");
408
+ }
409
+
191
410
  constructor() {
192
411
  super();
193
412
 
413
+ // The ItemNavigation requires each item to 1) have a "_tabIndex" property and 2) be either a UI5Element, or have an id property (to find it in the component's shadow DOM by)
414
+ this._columnHeader = {
415
+ id: `${this._id}-columnHeader`,
416
+ _tabIndex: "0",
417
+ };
418
+
194
419
  this._itemNavigation = new ItemNavigation(this, {
195
420
  navigationMode: NavigationMode.Vertical,
421
+ affectedPropertiesNames: ["_columnHeader"],
422
+ getItemsCallback: () => [this._columnHeader, ...this.rows],
196
423
  });
197
424
 
198
- this._itemNavigation.getItemsCallback = function getItemsCallback() {
199
- const columnHeader = this.getColumnHeader();
200
- return columnHeader ? [columnHeader, ...this.rows] : this.rows;
201
- }.bind(this);
202
-
203
425
  this.fnOnRowFocused = this.onRowFocused.bind(this);
204
- this.fnOnRowClick = this.onRowClick.bind(this);
205
426
 
206
427
  this._handleResize = this.popinContent.bind(this);
428
+
429
+ this.tableEndObserved = false;
430
+ this.addEventListener("ui5-selection-requested", this._handleSelect.bind(this));
207
431
  }
208
432
 
209
433
  onBeforeRendering() {
210
434
  const columnSettings = this.getColumnPropagationSettings();
211
435
  const columnSettingsString = JSON.stringify(columnSettings);
436
+ const rowsCount = this.rows.length;
212
437
 
213
- this.rows.forEach(row => {
438
+ this.rows.forEach((row, index) => {
214
439
  if (row._columnsInfoString !== columnSettingsString) {
215
440
  row._columnsInfo = columnSettings;
216
441
  row._columnsInfoString = JSON.stringify(row._columnsInfo);
217
442
  }
218
443
 
444
+ row._ariaPosition = Table.i18nBundle.getText(TABLE_ROW_POSITION, index + 1, rowsCount);
445
+ row._busy = this.busy;
219
446
  row.removeEventListener("ui5-_focused", this.fnOnRowFocused);
220
447
  row.addEventListener("ui5-_focused", this.fnOnRowFocused);
221
-
222
- row.removeEventListener("ui5-_click", this.fnOnRowClick);
223
- row.addEventListener("ui5-_click", this.fnOnRowClick);
448
+ row.mode = this.mode;
224
449
  });
225
450
 
226
451
  this.visibleColumns = this.columns.filter((column, index) => {
@@ -228,35 +453,171 @@ class Table extends UI5Element {
228
453
  return !this._hiddenColumns[index];
229
454
  });
230
455
 
231
- this._noDataDisplayed = !this.rows.length && this.showNoData;
456
+ this._noDataDisplayed = !this.rows.length && !this.hideNoData;
232
457
  this.visibleColumnsCount = this.visibleColumns.length;
233
458
  }
234
459
 
460
+ onAfterRendering() {
461
+ if (this.growsOnScroll) {
462
+ this.observeTableEnd();
463
+ }
464
+
465
+ this.checkTableInViewport();
466
+ }
467
+
235
468
  onEnterDOM() {
469
+ if (!isIE()) {
470
+ this.growingIntersectionObserver = this.getIntersectionObserver();
471
+ }
472
+
236
473
  ResizeHandler.register(this.getDomRef(), this._handleResize);
237
474
  }
238
475
 
239
476
  onExitDOM() {
240
477
  ResizeHandler.deregister(this.getDomRef(), this._handleResize);
241
- }
242
478
 
243
- onRowFocused(event) {
244
- this._itemNavigation.update(event.target);
479
+ if (!isIE()) {
480
+ this.growingIntersectionObserver.disconnect();
481
+ this.growingIntersectionObserver = null;
482
+ this.tableEndObserved = false;
483
+ }
245
484
  }
246
485
 
247
- onRowClick(event) {
248
- this.fireEvent("rowClick", { row: event.target });
486
+ onRowFocused(event) {
487
+ this._itemNavigation.setCurrentItem(event.target);
249
488
  }
250
489
 
251
490
  _onColumnHeaderClick(event) {
252
491
  this.getColumnHeader().focus();
253
- this._itemNavigation.update(event.target);
492
+ this._itemNavigation.setCurrentItem(this._columnHeader);
493
+ }
494
+
495
+ _onLoadMoreKeydown(event) {
496
+ if (isSpace(event)) {
497
+ event.preventDefault();
498
+ this._loadMoreActive = true;
499
+ }
500
+
501
+ if (isEnter(event)) {
502
+ this._onLoadMoreClick();
503
+ this._loadMoreActive = true;
504
+ }
505
+ }
506
+
507
+ _onLoadMoreKeyup(event) {
508
+ if (isSpace(event)) {
509
+ this._onLoadMoreClick();
510
+ }
511
+ this._loadMoreActive = false;
512
+ }
513
+
514
+ _onLoadMoreClick() {
515
+ this.fireEvent("load-more");
516
+ }
517
+
518
+ observeTableEnd() {
519
+ if (!this.tableEndObserved) {
520
+ this.getIntersectionObserver().observe(this.tableEndDOM);
521
+ this.tableEndObserved = true;
522
+ }
523
+ }
524
+
525
+ onInteresection(entries) {
526
+ if (entries.some(entry => entry.isIntersecting)) {
527
+ debounce(this.loadMore.bind(this), GROWING_WITH_SCROLL_DEBOUNCE_RATE);
528
+ }
529
+ }
530
+
531
+ loadMore() {
532
+ this.fireEvent("load-more");
533
+ }
534
+
535
+ _handleSingleSelect(event) {
536
+ const row = this.getRowParent(event.target);
537
+ if (!row.selected) {
538
+ const previouslySelectedRows = this.selectedRows;
539
+ this.rows.forEach(item => {
540
+ if (item.selected) {
541
+ item.selected = false;
542
+ }
543
+ });
544
+ row.selected = true;
545
+ this.fireEvent("selection-change", {
546
+ selectedRows: [row],
547
+ previouslySelectedRows,
548
+ });
549
+ }
550
+ }
551
+
552
+ _handleMultiSelect(event) {
553
+ const row = this.getRowParent(event.target);
554
+ const previouslySelectedRows = this.selectedRows;
555
+
556
+ row.selected = !row.selected;
557
+
558
+ const selectedRows = this.selectedRows;
559
+
560
+ if (selectedRows.length === this.rows.length) {
561
+ this._allRowsSelected = true;
562
+ } else {
563
+ this._allRowsSelected = false;
564
+ }
565
+
566
+ this.fireEvent("selection-change", {
567
+ selectedRows,
568
+ previouslySelectedRows,
569
+ });
570
+ }
571
+
572
+ _handleSelect(event) {
573
+ this[`_handle${this.mode}`](event);
574
+ }
575
+
576
+ _selectAll(event) {
577
+ const bAllSelected = event.target.checked;
578
+ const previouslySelectedRows = this.rows.filter(row => row.selected);
579
+
580
+ this._allRowsSelected = bAllSelected;
581
+
582
+ this.rows.forEach(row => {
583
+ row.selected = bAllSelected;
584
+ });
585
+
586
+ const selectedRows = bAllSelected ? this.rows : [];
587
+
588
+ this.fireEvent("selection-change", {
589
+ selectedRows,
590
+ previouslySelectedRows,
591
+ });
592
+ }
593
+
594
+ getRowParent(child) {
595
+ const parent = child.parentElement;
596
+
597
+ if (child.hasAttribute("ui5-table-row")) {
598
+ return child;
599
+ }
600
+
601
+ if (parent && parent.hasAttribute("ui5-table-row")) {
602
+ return parent;
603
+ }
604
+
605
+ this.getRowParent(parent);
254
606
  }
255
607
 
256
608
  getColumnHeader() {
257
609
  return this.getDomRef() && this.getDomRef().querySelector(`#${this._id}-columnHeader`);
258
610
  }
259
611
 
612
+ handleResize(event) {
613
+ this.checkTableInViewport();
614
+ this.popinContent(event);
615
+ }
616
+
617
+ checkTableInViewport() {
618
+ this._inViewport = isElementInView(this.getDomRef());
619
+ }
620
+
260
621
  popinContent(_event) {
261
622
  const clientRect = this.getDomRef().getBoundingClientRect();
262
623
  const tableWidth = clientRect.width;
@@ -277,7 +638,9 @@ class Table extends UI5Element {
277
638
  });
278
639
 
279
640
  if (visibleColumnsIndexes.length) {
280
- this.columns[visibleColumnsIndexes[0]].first = true;
641
+ if (!this.isMultiSelect) {
642
+ this.columns[visibleColumnsIndexes[0]].first = true;
643
+ }
281
644
  this.columns[visibleColumnsIndexes[visibleColumnsIndexes.length - 1]].last = true;
282
645
  }
283
646
 
@@ -285,7 +648,7 @@ class Table extends UI5Element {
285
648
  if (this._hiddenColumns.length !== hiddenColumns.length) {
286
649
  this._hiddenColumns = hiddenColumns;
287
650
  if (hiddenColumns.length) {
288
- this.fireEvent("popinChange", {
651
+ this.fireEvent("popin-change", {
289
652
  poppedColumns: this._hiddenColumns,
290
653
  });
291
654
  }
@@ -304,11 +667,93 @@ class Table extends UI5Element {
304
667
  index,
305
668
  minWidth: column.minWidth,
306
669
  demandPopin: column.demandPopin,
670
+ text: column.textContent,
307
671
  popinText: column.popinText,
308
672
  visible: !this._hiddenColumns[index],
309
673
  };
310
674
  }, this);
311
675
  }
676
+
677
+ getIntersectionObserver() {
678
+ if (!this.growingIntersectionObserver) {
679
+ this.growingIntersectionObserver = new IntersectionObserver(this.onInteresection.bind(this), {
680
+ root: document,
681
+ rootMargin: "0px",
682
+ threshold: 1.0,
683
+ });
684
+ }
685
+
686
+ return this.growingIntersectionObserver;
687
+ }
688
+
689
+ get styles() {
690
+ return {
691
+ table: {
692
+ height: "48px",
693
+ },
694
+ busy: {
695
+ position: this.busyIndPosition,
696
+ },
697
+ };
698
+ }
699
+
700
+ get growsWithButton() {
701
+ if (isIE()) {
702
+ // On IE fallback to "More" button, even if growing of type "Scroll" is set.
703
+ return this.growing === TableGrowingMode.Button || this.growing === TableGrowingMode.Scroll;
704
+ }
705
+
706
+ return this.growing === TableGrowingMode.Button;
707
+ }
708
+
709
+ get growsOnScroll() {
710
+ return !isIE() && this.growing === TableGrowingMode.Scroll;
711
+ }
712
+
713
+ get _growingButtonText() {
714
+ return this.growingButtonText || Table.i18nBundle.getText(LOAD_MORE_TEXT);
715
+ }
716
+
717
+ get ariaLabelText() {
718
+ const headerRowText = Table.i18nBundle.getText(TABLE_HEADER_ROW_TEXT);
719
+ const columnsTitle = this.columns.map(column => {
720
+ return column.textContent.trim();
721
+ }).join(" ");
722
+
723
+ return `${headerRowText} ${columnsTitle}`;
724
+ }
725
+
726
+ get ariaLabelSelectAllText() {
727
+ return Table.i18nBundle.getText(ARIA_LABEL_SELECT_ALL_CHECKBOX);
728
+ }
729
+
730
+ get loadMoreAriaLabelledBy() {
731
+ if (this.moreDataText) {
732
+ return `${this._id}-growingButton-text ${this._id}-growingButton-subtext`;
733
+ }
734
+
735
+ return `${this._id}-growingButton-text`;
736
+ }
737
+
738
+ get tableEndDOM() {
739
+ return this.shadowRoot.querySelector(".ui5-table-end-marker");
740
+ }
741
+
742
+ get busyIndPosition() {
743
+ if (isIE()) {
744
+ return "absolute";
745
+ }
746
+
747
+ return this._inViewport ? "absolute" : "sticky";
748
+ }
749
+
750
+ get isMultiSelect() {
751
+ return this.mode === "MultiSelect";
752
+ }
753
+
754
+ get selectedRows() {
755
+ return this.rows.filter(row => row.selected);
756
+ }
312
757
  }
313
758
 
314
759
  Table.define();