@openui5/sap.ui.webc.main 1.98.0 → 1.99.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 (381) hide show
  1. package/package.json +3 -3
  2. package/src/sap/ui/webc/main/.library +1 -1
  3. package/src/sap/ui/webc/main/Avatar.js +4 -1
  4. package/src/sap/ui/webc/main/AvatarGroup.js +4 -1
  5. package/src/sap/ui/webc/main/Badge.js +4 -1
  6. package/src/sap/ui/webc/main/Breadcrumbs.js +6 -2
  7. package/src/sap/ui/webc/main/BreadcrumbsItem.js +4 -1
  8. package/src/sap/ui/webc/main/BusyIndicator.js +4 -1
  9. package/src/sap/ui/webc/main/Button.js +49 -1
  10. package/src/sap/ui/webc/main/Calendar.js +5 -1
  11. package/src/sap/ui/webc/main/CalendarDate.js +4 -1
  12. package/src/sap/ui/webc/main/Card.js +20 -10
  13. package/src/sap/ui/webc/main/CardHeader.js +4 -1
  14. package/src/sap/ui/webc/main/Carousel.js +8 -2
  15. package/src/sap/ui/webc/main/CheckBox.js +49 -1
  16. package/src/sap/ui/webc/main/ColorPalette.js +4 -1
  17. package/src/sap/ui/webc/main/ColorPaletteItem.js +4 -1
  18. package/src/sap/ui/webc/main/ColorPalettePopover.js +22 -2
  19. package/src/sap/ui/webc/main/ColorPicker.js +4 -1
  20. package/src/sap/ui/webc/main/ComboBox.js +37 -12
  21. package/src/sap/ui/webc/main/ComboBoxGroupItem.js +4 -1
  22. package/src/sap/ui/webc/main/ComboBoxItem.js +4 -1
  23. package/src/sap/ui/webc/main/CustomListItem.js +4 -1
  24. package/src/sap/ui/webc/main/DatePicker.js +20 -10
  25. package/src/sap/ui/webc/main/DateRangePicker.js +28 -11
  26. package/src/sap/ui/webc/main/DateTimePicker.js +19 -9
  27. package/src/sap/ui/webc/main/Dialog.js +20 -2
  28. package/src/sap/ui/webc/main/FileUploader.js +4 -1
  29. package/src/sap/ui/webc/main/GroupHeaderListItem.js +4 -1
  30. package/src/sap/ui/webc/main/Icon.js +20 -3
  31. package/src/sap/ui/webc/main/Input.js +54 -10
  32. package/src/sap/ui/webc/main/Label.js +29 -12
  33. package/src/sap/ui/webc/main/Link.js +44 -5
  34. package/src/sap/ui/webc/main/List.js +25 -13
  35. package/src/sap/ui/webc/main/MessageStrip.js +6 -1
  36. package/src/sap/ui/webc/main/MultiComboBox.js +13 -1
  37. package/src/sap/ui/webc/main/MultiComboBoxItem.js +4 -1
  38. package/src/sap/ui/webc/main/MultiInput.js +38 -10
  39. package/src/sap/ui/webc/main/Option.js +4 -1
  40. package/src/sap/ui/webc/main/Panel.js +6 -1
  41. package/src/sap/ui/webc/main/Popover.js +20 -2
  42. package/src/sap/ui/webc/main/ProgressIndicator.js +13 -1
  43. package/src/sap/ui/webc/main/RadioButton.js +41 -1
  44. package/src/sap/ui/webc/main/RangeSlider.js +6 -2
  45. package/src/sap/ui/webc/main/RatingIndicator.js +19 -2
  46. package/src/sap/ui/webc/main/ResponsivePopover.js +20 -2
  47. package/src/sap/ui/webc/main/SegmentedButton.js +33 -1
  48. package/src/sap/ui/webc/main/SegmentedButtonItem.js +49 -1
  49. package/src/sap/ui/webc/main/Select.js +28 -9
  50. package/src/sap/ui/webc/main/Slider.js +15 -2
  51. package/src/sap/ui/webc/main/SplitButton.js +156 -0
  52. package/src/sap/ui/webc/main/StandardListItem.js +4 -1
  53. package/src/sap/ui/webc/main/StepInput.js +28 -9
  54. package/src/sap/ui/webc/main/SuggestionGroupItem.js +4 -1
  55. package/src/sap/ui/webc/main/SuggestionItem.js +4 -1
  56. package/src/sap/ui/webc/main/Switch.js +19 -1
  57. package/src/sap/ui/webc/main/Tab.js +5 -2
  58. package/src/sap/ui/webc/main/TabContainer.js +37 -2
  59. package/src/sap/ui/webc/main/TabSeparator.js +4 -1
  60. package/src/sap/ui/webc/main/Table.js +20 -2
  61. package/src/sap/ui/webc/main/TableCell.js +4 -1
  62. package/src/sap/ui/webc/main/TableColumn.js +4 -1
  63. package/src/sap/ui/webc/main/TableGroupRow.js +4 -1
  64. package/src/sap/ui/webc/main/TableRow.js +4 -1
  65. package/src/sap/ui/webc/main/TextArea.js +19 -9
  66. package/src/sap/ui/webc/main/TimePicker.js +4 -1
  67. package/src/sap/ui/webc/main/Title.js +4 -1
  68. package/src/sap/ui/webc/main/Toast.js +4 -1
  69. package/src/sap/ui/webc/main/ToggleButton.js +49 -1
  70. package/src/sap/ui/webc/main/Token.js +4 -1
  71. package/src/sap/ui/webc/main/Tree.js +4 -1
  72. package/src/sap/ui/webc/main/TreeItem.js +20 -1
  73. package/src/sap/ui/webc/main/designtime/Input.designtime.js +26 -0
  74. package/src/sap/ui/webc/main/designtime/MultiInput.designtime.js +27 -0
  75. package/src/sap/ui/webc/main/designtime/RangeSlider.designtime.js +26 -0
  76. package/src/sap/ui/webc/main/designtime/RatingIndicator.designtime.js +26 -0
  77. package/src/sap/ui/webc/main/designtime/Slider.designtime.js +25 -0
  78. package/src/sap/ui/webc/main/designtime/library.designtime.js +12 -0
  79. package/src/sap/ui/webc/main/designtime/messagebundle.properties +32 -0
  80. package/src/sap/ui/webc/main/designtime/messagebundle_ar.properties +24 -0
  81. package/src/sap/ui/webc/main/designtime/messagebundle_bg.properties +24 -0
  82. package/src/sap/ui/webc/main/designtime/messagebundle_ca.properties +24 -0
  83. package/src/sap/ui/webc/main/designtime/messagebundle_cs.properties +24 -0
  84. package/src/sap/ui/webc/main/designtime/messagebundle_cy.properties +24 -0
  85. package/src/sap/ui/webc/main/designtime/messagebundle_da.properties +24 -0
  86. package/src/sap/ui/webc/main/designtime/messagebundle_de.properties +24 -0
  87. package/src/sap/ui/webc/main/designtime/messagebundle_el.properties +24 -0
  88. package/src/sap/ui/webc/main/designtime/messagebundle_en.properties +24 -0
  89. package/src/sap/ui/webc/main/designtime/messagebundle_en_GB.properties +24 -0
  90. package/src/sap/ui/webc/main/designtime/messagebundle_en_US_sappsd.properties +24 -0
  91. package/src/sap/ui/webc/main/designtime/messagebundle_en_US_saprigi.properties +24 -0
  92. package/src/sap/ui/webc/main/designtime/messagebundle_en_US_saptrc.properties +24 -0
  93. package/src/sap/ui/webc/main/designtime/messagebundle_es.properties +24 -0
  94. package/src/sap/ui/webc/main/designtime/messagebundle_es_MX.properties +24 -0
  95. package/src/sap/ui/webc/main/designtime/messagebundle_et.properties +24 -0
  96. package/src/sap/ui/webc/main/designtime/messagebundle_fi.properties +24 -0
  97. package/src/sap/ui/webc/main/designtime/messagebundle_fr.properties +24 -0
  98. package/src/sap/ui/webc/main/designtime/messagebundle_fr_CA.properties +24 -0
  99. package/src/sap/ui/webc/main/designtime/messagebundle_hi.properties +24 -0
  100. package/src/sap/ui/webc/main/designtime/messagebundle_hr.properties +24 -0
  101. package/src/sap/ui/webc/main/designtime/messagebundle_hu.properties +24 -0
  102. package/src/sap/ui/webc/main/designtime/messagebundle_id.properties +24 -0
  103. package/src/sap/ui/webc/main/designtime/messagebundle_it.properties +24 -0
  104. package/src/sap/ui/webc/main/designtime/messagebundle_iw.properties +24 -0
  105. package/src/sap/ui/webc/main/designtime/messagebundle_ja.properties +24 -0
  106. package/src/sap/ui/webc/main/designtime/messagebundle_kk.properties +24 -0
  107. package/src/sap/ui/webc/main/designtime/messagebundle_ko.properties +24 -0
  108. package/src/sap/ui/webc/main/designtime/messagebundle_lt.properties +24 -0
  109. package/src/sap/ui/webc/main/designtime/messagebundle_lv.properties +24 -0
  110. package/src/sap/ui/webc/main/designtime/messagebundle_ms.properties +24 -0
  111. package/src/sap/ui/webc/main/designtime/messagebundle_nl.properties +24 -0
  112. package/src/sap/ui/webc/main/designtime/messagebundle_no.properties +24 -0
  113. package/src/sap/ui/webc/main/designtime/messagebundle_pl.properties +24 -0
  114. package/src/sap/ui/webc/main/designtime/messagebundle_pt.properties +24 -0
  115. package/src/sap/ui/webc/main/designtime/messagebundle_pt_PT.properties +24 -0
  116. package/src/sap/ui/webc/main/designtime/messagebundle_ro.properties +24 -0
  117. package/src/sap/ui/webc/main/designtime/messagebundle_ru.properties +24 -0
  118. package/src/sap/ui/webc/main/designtime/messagebundle_sh.properties +24 -0
  119. package/src/sap/ui/webc/main/designtime/messagebundle_sk.properties +24 -0
  120. package/src/sap/ui/webc/main/designtime/messagebundle_sl.properties +24 -0
  121. package/src/sap/ui/webc/main/designtime/messagebundle_sv.properties +24 -0
  122. package/src/sap/ui/webc/main/designtime/messagebundle_th.properties +24 -0
  123. package/src/sap/ui/webc/main/designtime/messagebundle_tr.properties +24 -0
  124. package/src/sap/ui/webc/main/designtime/messagebundle_uk.properties +24 -0
  125. package/src/sap/ui/webc/main/designtime/messagebundle_vi.properties +24 -0
  126. package/src/sap/ui/webc/main/designtime/messagebundle_zh_CN.properties +24 -0
  127. package/src/sap/ui/webc/main/designtime/messagebundle_zh_TW.properties +24 -0
  128. package/src/sap/ui/webc/main/library.config.js +3 -0
  129. package/src/sap/ui/webc/main/library.js +99 -4
  130. package/src/sap/ui/webc/main/thirdparty/AvatarGroup.js +2 -2
  131. package/src/sap/ui/webc/main/thirdparty/Breadcrumbs.js +14 -9
  132. package/src/sap/ui/webc/main/thirdparty/BreadcrumbsItem.js +1 -1
  133. package/src/sap/ui/webc/main/thirdparty/BusyIndicator.js +2 -3
  134. package/src/sap/ui/webc/main/thirdparty/Button.js +9 -13
  135. package/src/sap/ui/webc/main/thirdparty/Calendar.js +1 -0
  136. package/src/sap/ui/webc/main/thirdparty/Carousel.js +1 -0
  137. package/src/sap/ui/webc/main/thirdparty/CheckBox.js +15 -2
  138. package/src/sap/ui/webc/main/thirdparty/ColorPalette.js +5 -5
  139. package/src/sap/ui/webc/main/thirdparty/ColorPalettePopover.js +11 -3
  140. package/src/sap/ui/webc/main/thirdparty/ComboBox.js +57 -17
  141. package/src/sap/ui/webc/main/thirdparty/DateComponentBase.js +6 -8
  142. package/src/sap/ui/webc/main/thirdparty/DatePicker.js +6 -0
  143. package/src/sap/ui/webc/main/thirdparty/DateRangePicker.js +6 -0
  144. package/src/sap/ui/webc/main/thirdparty/Dialog.js +4 -11
  145. package/src/sap/ui/webc/main/thirdparty/Icon.js +8 -6
  146. package/src/sap/ui/webc/main/thirdparty/Input.js +88 -11
  147. package/src/sap/ui/webc/main/thirdparty/Link.js +5 -6
  148. package/src/sap/ui/webc/main/thirdparty/List.js +4 -2
  149. package/src/sap/ui/webc/main/thirdparty/MessageStrip.js +13 -1
  150. package/src/sap/ui/webc/main/thirdparty/MultiComboBox.js +6 -3
  151. package/src/sap/ui/webc/main/thirdparty/MultiComboBoxItem.js +1 -1
  152. package/src/sap/ui/webc/main/thirdparty/MultiInput.js +39 -8
  153. package/src/sap/ui/webc/main/thirdparty/Option.js +4 -1
  154. package/src/sap/ui/webc/main/thirdparty/Panel.js +5 -5
  155. package/src/sap/ui/webc/main/thirdparty/Popover.js +64 -51
  156. package/src/sap/ui/webc/main/thirdparty/Popup.js +6 -2
  157. package/src/sap/ui/webc/main/thirdparty/RadioButton.js +5 -2
  158. package/src/sap/ui/webc/main/thirdparty/RatingIndicator.js +20 -7
  159. package/src/sap/ui/webc/main/thirdparty/ResponsivePopover.js +1 -0
  160. package/src/sap/ui/webc/main/thirdparty/SegmentedButton.js +6 -1
  161. package/src/sap/ui/webc/main/thirdparty/Select.js +3 -2
  162. package/src/sap/ui/webc/main/thirdparty/SliderBase.js +4 -1
  163. package/src/sap/ui/webc/main/thirdparty/SplitButton.js +196 -0
  164. package/src/sap/ui/webc/main/thirdparty/Switch.js +8 -1
  165. package/src/sap/ui/webc/main/thirdparty/Tab.js +8 -5
  166. package/src/sap/ui/webc/main/thirdparty/TabContainer.js +320 -92
  167. package/src/sap/ui/webc/main/thirdparty/TabSeparator.js +26 -3
  168. package/src/sap/ui/webc/main/thirdparty/Table.js +163 -6
  169. package/src/sap/ui/webc/main/thirdparty/TableColumn.js +0 -3
  170. package/src/sap/ui/webc/main/thirdparty/TableGroupRow.js +3 -0
  171. package/src/sap/ui/webc/main/thirdparty/TableRow.js +52 -3
  172. package/src/sap/ui/webc/main/thirdparty/TextArea.js +8 -4
  173. package/src/sap/ui/webc/main/thirdparty/Tokenizer.js +94 -6
  174. package/src/sap/ui/webc/main/thirdparty/TreeItem.js +3 -0
  175. package/src/sap/ui/webc/main/thirdparty/TreeListItem.js +7 -1
  176. package/src/sap/ui/webc/main/thirdparty/css/themes/Badge.css +1 -1
  177. package/src/sap/ui/webc/main/thirdparty/css/themes/Breadcrumbs.css +1 -1
  178. package/src/sap/ui/webc/main/thirdparty/css/themes/BrowserScrollbar.css +1 -1
  179. package/src/sap/ui/webc/main/thirdparty/css/themes/BusyIndicator.css +1 -1
  180. package/src/sap/ui/webc/main/thirdparty/css/themes/Calendar.css +1 -1
  181. package/src/sap/ui/webc/main/thirdparty/css/themes/CardHeader.css +1 -1
  182. package/src/sap/ui/webc/main/thirdparty/css/themes/CheckBox.css +1 -1
  183. package/src/sap/ui/webc/main/thirdparty/css/themes/ComboBox.css +1 -1
  184. package/src/sap/ui/webc/main/thirdparty/css/themes/CustomListItem.css +1 -1
  185. package/src/sap/ui/webc/main/thirdparty/css/themes/Dialog.css +1 -1
  186. package/src/sap/ui/webc/main/thirdparty/css/themes/Input.css +1 -1
  187. package/src/sap/ui/webc/main/thirdparty/css/themes/List.css +1 -1
  188. package/src/sap/ui/webc/main/thirdparty/css/themes/MultiComboBox.css +1 -1
  189. package/src/sap/ui/webc/main/thirdparty/css/themes/Panel.css +1 -1
  190. package/src/sap/ui/webc/main/thirdparty/css/themes/Popover.css +1 -1
  191. package/src/sap/ui/webc/main/thirdparty/css/themes/PopupsCommon.css +1 -1
  192. package/src/sap/ui/webc/main/thirdparty/css/themes/RadioButton.css +1 -1
  193. package/src/sap/ui/webc/main/thirdparty/css/themes/RatingIndicator.css +1 -1
  194. package/src/sap/ui/webc/main/thirdparty/css/themes/Select.css +1 -1
  195. package/src/sap/ui/webc/main/thirdparty/css/themes/SelectPopover.css +1 -1
  196. package/src/sap/ui/webc/main/thirdparty/css/themes/SliderBase.css +1 -1
  197. package/src/sap/ui/webc/main/thirdparty/css/themes/SplitButton.css +1 -0
  198. package/src/sap/ui/webc/main/thirdparty/css/themes/Suggestions.css +1 -1
  199. package/src/sap/ui/webc/main/thirdparty/css/themes/TabContainer.css +1 -1
  200. package/src/sap/ui/webc/main/thirdparty/css/themes/TabInOverflow.css +1 -1
  201. package/src/sap/ui/webc/main/thirdparty/css/themes/TabInStrip.css +1 -1
  202. package/src/sap/ui/webc/main/thirdparty/css/themes/TabSeparatorInOverflow.css +1 -0
  203. package/src/sap/ui/webc/main/thirdparty/css/themes/TabSeparatorInStrip.css +1 -0
  204. package/src/sap/ui/webc/main/thirdparty/css/themes/Table.css +1 -1
  205. package/src/sap/ui/webc/main/thirdparty/css/themes/TableColumn.css +1 -1
  206. package/src/sap/ui/webc/main/thirdparty/css/themes/TextArea.css +1 -1
  207. package/src/sap/ui/webc/main/thirdparty/css/themes/TimeSelection.css +1 -1
  208. package/src/sap/ui/webc/main/thirdparty/css/themes/Token.css +1 -1
  209. package/src/sap/ui/webc/main/thirdparty/css/themes/ValueStateMessage.css +1 -1
  210. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_belize/parameters-bundle.css +1 -1
  211. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  212. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  213. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  214. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  215. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  216. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  217. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_horizon/parameters-bundle.css +1 -1
  218. package/src/sap/ui/webc/main/thirdparty/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  219. package/src/sap/ui/webc/main/thirdparty/features/InputSuggestions.js +67 -13
  220. package/src/sap/ui/webc/main/thirdparty/generated/i18n/i18n-defaults.js +9 -1
  221. package/src/sap/ui/webc/main/thirdparty/generated/json-imports/Themes.js +9 -9
  222. package/src/sap/ui/webc/main/thirdparty/generated/json-imports/i18n.js +47 -47
  223. package/src/sap/ui/webc/main/thirdparty/generated/templates/AvatarGroupTemplate.lit.js +1 -1
  224. package/src/sap/ui/webc/main/thirdparty/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  225. package/src/sap/ui/webc/main/thirdparty/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  226. package/src/sap/ui/webc/main/thirdparty/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
  227. package/src/sap/ui/webc/main/thirdparty/generated/templates/ButtonTemplate.lit.js +1 -1
  228. package/src/sap/ui/webc/main/thirdparty/generated/templates/CardHeaderTemplate.lit.js +1 -1
  229. package/src/sap/ui/webc/main/thirdparty/generated/templates/CarouselTemplate.lit.js +1 -1
  230. package/src/sap/ui/webc/main/thirdparty/generated/templates/CheckBoxTemplate.lit.js +1 -1
  231. package/src/sap/ui/webc/main/thirdparty/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  232. package/src/sap/ui/webc/main/thirdparty/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
  233. package/src/sap/ui/webc/main/thirdparty/generated/templates/ComboBoxTemplate.lit.js +1 -1
  234. package/src/sap/ui/webc/main/thirdparty/generated/templates/CustomListItemTemplate.lit.js +2 -2
  235. package/src/sap/ui/webc/main/thirdparty/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  236. package/src/sap/ui/webc/main/thirdparty/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  237. package/src/sap/ui/webc/main/thirdparty/generated/templates/DialogTemplate.lit.js +1 -1
  238. package/src/sap/ui/webc/main/thirdparty/generated/templates/FileUploaderPopoverTemplate.lit.js +5 -4
  239. package/src/sap/ui/webc/main/thirdparty/generated/templates/InputPopoverTemplate.lit.js +4 -4
  240. package/src/sap/ui/webc/main/thirdparty/generated/templates/InputTemplate.lit.js +6 -5
  241. package/src/sap/ui/webc/main/thirdparty/generated/templates/LinkTemplate.lit.js +1 -1
  242. package/src/sap/ui/webc/main/thirdparty/generated/templates/ListItemTemplate.lit.js +2 -2
  243. package/src/sap/ui/webc/main/thirdparty/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
  244. package/src/sap/ui/webc/main/thirdparty/generated/templates/MultiInputTemplate.lit.js +7 -6
  245. package/src/sap/ui/webc/main/thirdparty/generated/templates/PanelTemplate.lit.js +2 -2
  246. package/src/sap/ui/webc/main/thirdparty/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
  247. package/src/sap/ui/webc/main/thirdparty/generated/templates/RangeSliderTemplate.lit.js +1 -1
  248. package/src/sap/ui/webc/main/thirdparty/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  249. package/src/sap/ui/webc/main/thirdparty/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
  250. package/src/sap/ui/webc/main/thirdparty/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
  251. package/src/sap/ui/webc/main/thirdparty/generated/templates/SelectPopoverTemplate.lit.js +2 -2
  252. package/src/sap/ui/webc/main/thirdparty/generated/templates/SliderBaseTemplate.lit.js +1 -1
  253. package/src/sap/ui/webc/main/thirdparty/generated/templates/SliderTemplate.lit.js +1 -1
  254. package/src/sap/ui/webc/main/thirdparty/generated/templates/SplitButtonTemplate.lit.js +7 -0
  255. package/src/sap/ui/webc/main/thirdparty/generated/templates/StandardListItemTemplate.lit.js +2 -2
  256. package/src/sap/ui/webc/main/thirdparty/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
  257. package/src/sap/ui/webc/main/thirdparty/generated/templates/SwitchTemplate.lit.js +1 -1
  258. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabContainerPopoverTemplate.lit.js +4 -2
  259. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabContainerTemplate.lit.js +9 -10
  260. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabInOverflowTemplate.lit.js +1 -1
  261. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabInStripTemplate.lit.js +1 -1
  262. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  263. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  264. package/src/sap/ui/webc/main/thirdparty/generated/templates/TableGroupRowTemplate.lit.js +1 -1
  265. package/src/sap/ui/webc/main/thirdparty/generated/templates/TableRowTemplate.lit.js +2 -2
  266. package/src/sap/ui/webc/main/thirdparty/generated/templates/TableTemplate.lit.js +3 -3
  267. package/src/sap/ui/webc/main/thirdparty/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  268. package/src/sap/ui/webc/main/thirdparty/generated/templates/ToggleButtonTemplate.lit.js +1 -1
  269. package/src/sap/ui/webc/main/thirdparty/generated/templates/TreeListItemTemplate.lit.js +2 -2
  270. package/src/sap/ui/webc/main/thirdparty/generated/templates/TreeTemplate.lit.js +1 -1
  271. package/src/sap/ui/webc/main/thirdparty/generated/themes/Badge.css.js +1 -1
  272. package/src/sap/ui/webc/main/thirdparty/generated/themes/Breadcrumbs.css.js +1 -1
  273. package/src/sap/ui/webc/main/thirdparty/generated/themes/BrowserScrollbar.css.js +1 -1
  274. package/src/sap/ui/webc/main/thirdparty/generated/themes/BusyIndicator.css.js +1 -1
  275. package/src/sap/ui/webc/main/thirdparty/generated/themes/Calendar.css.js +1 -1
  276. package/src/sap/ui/webc/main/thirdparty/generated/themes/CardHeader.css.js +1 -1
  277. package/src/sap/ui/webc/main/thirdparty/generated/themes/CheckBox.css.js +1 -1
  278. package/src/sap/ui/webc/main/thirdparty/generated/themes/ComboBox.css.js +1 -1
  279. package/src/sap/ui/webc/main/thirdparty/generated/themes/CustomListItem.css.js +1 -1
  280. package/src/sap/ui/webc/main/thirdparty/generated/themes/Dialog.css.js +1 -1
  281. package/src/sap/ui/webc/main/thirdparty/generated/themes/Input.css.js +1 -1
  282. package/src/sap/ui/webc/main/thirdparty/generated/themes/List.css.js +1 -1
  283. package/src/sap/ui/webc/main/thirdparty/generated/themes/MultiComboBox.css.js +1 -1
  284. package/src/sap/ui/webc/main/thirdparty/generated/themes/Panel.css.js +1 -1
  285. package/src/sap/ui/webc/main/thirdparty/generated/themes/Popover.css.js +1 -1
  286. package/src/sap/ui/webc/main/thirdparty/generated/themes/PopupsCommon.css.js +1 -1
  287. package/src/sap/ui/webc/main/thirdparty/generated/themes/RadioButton.css.js +1 -1
  288. package/src/sap/ui/webc/main/thirdparty/generated/themes/RatingIndicator.css.js +1 -1
  289. package/src/sap/ui/webc/main/thirdparty/generated/themes/Select.css.js +1 -1
  290. package/src/sap/ui/webc/main/thirdparty/generated/themes/SelectPopover.css.js +1 -1
  291. package/src/sap/ui/webc/main/thirdparty/generated/themes/SliderBase.css.js +1 -1
  292. package/src/sap/ui/webc/main/thirdparty/generated/themes/SplitButton.css.js +13 -0
  293. package/src/sap/ui/webc/main/thirdparty/generated/themes/Suggestions.css.js +1 -1
  294. package/src/sap/ui/webc/main/thirdparty/generated/themes/TabContainer.css.js +1 -1
  295. package/src/sap/ui/webc/main/thirdparty/generated/themes/TabInOverflow.css.js +1 -1
  296. package/src/sap/ui/webc/main/thirdparty/generated/themes/TabInStrip.css.js +1 -1
  297. package/src/sap/ui/webc/main/thirdparty/generated/themes/TabSeparatorInOverflow.css.js +13 -0
  298. package/src/sap/ui/webc/main/thirdparty/generated/themes/TabSeparatorInStrip.css.js +13 -0
  299. package/src/sap/ui/webc/main/thirdparty/generated/themes/Table.css.js +1 -1
  300. package/src/sap/ui/webc/main/thirdparty/generated/themes/TableColumn.css.js +1 -1
  301. package/src/sap/ui/webc/main/thirdparty/generated/themes/TextArea.css.js +1 -1
  302. package/src/sap/ui/webc/main/thirdparty/generated/themes/TimeSelection.css.js +1 -1
  303. package/src/sap/ui/webc/main/thirdparty/generated/themes/Token.css.js +1 -1
  304. package/src/sap/ui/webc/main/thirdparty/generated/themes/ValueStateMessage.css.js +1 -1
  305. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  306. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  307. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  308. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  309. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  310. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  311. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  312. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  313. package/src/sap/ui/webc/main/thirdparty/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  314. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ar-f610ffe9.js → messagebundle_ar-7d8b4442.js} +10 -2
  315. package/src/sap/ui/webc/main/thirdparty/{messagebundle_bg-e372ad7a.js → messagebundle_bg-9ad96f98.js} +10 -2
  316. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ca-64403819.js → messagebundle_ca-f1555bd9.js} +10 -2
  317. package/src/sap/ui/webc/main/thirdparty/{messagebundle_cs-f5276d1f.js → messagebundle_cs-ef8aa726.js} +10 -2
  318. package/src/sap/ui/webc/main/thirdparty/{messagebundle_cy-5b51959f.js → messagebundle_cy-990b67d4.js} +10 -2
  319. package/src/sap/ui/webc/main/thirdparty/{messagebundle_da-3f0c542a.js → messagebundle_da-10ddad8e.js} +10 -2
  320. package/src/sap/ui/webc/main/thirdparty/{messagebundle_de-ff52e292.js → messagebundle_de-3df474de.js} +10 -2
  321. package/src/sap/ui/webc/main/thirdparty/{messagebundle_el-8a8f0e04.js → messagebundle_el-26906c8d.js} +10 -2
  322. package/src/sap/ui/webc/main/thirdparty/{messagebundle_en-39f79920.js → messagebundle_en-f820b936.js} +10 -2
  323. package/src/sap/ui/webc/main/thirdparty/{messagebundle_en_GB-9a6995bc.js → messagebundle_en_GB-2d06b0a2.js} +10 -2
  324. package/src/sap/ui/webc/main/thirdparty/{messagebundle_en_US_sappsd-1cd6f946.js → messagebundle_en_US_sappsd-5a02ac90.js} +10 -2
  325. package/src/sap/ui/webc/main/thirdparty/{messagebundle_en_US_saprigi-88214efb.js → messagebundle_en_US_saprigi-789390fa.js} +10 -2
  326. package/src/sap/ui/webc/main/thirdparty/{messagebundle_en_US_saptrc-d8b4cc37.js → messagebundle_en_US_saptrc-b8adcdb7.js} +10 -2
  327. package/src/sap/ui/webc/main/thirdparty/{messagebundle_es-4e7804b3.js → messagebundle_es-fb48a8d9.js} +10 -2
  328. package/src/sap/ui/webc/main/thirdparty/{messagebundle_es_MX-5d55637e.js → messagebundle_es_MX-1649847d.js} +10 -2
  329. package/src/sap/ui/webc/main/thirdparty/{messagebundle_et-d019447e.js → messagebundle_et-21441666.js} +10 -2
  330. package/src/sap/ui/webc/main/thirdparty/{messagebundle_fi-115f5a0c.js → messagebundle_fi-a7a6ed50.js} +11 -3
  331. package/src/sap/ui/webc/main/thirdparty/{messagebundle_fr-f4458a8c.js → messagebundle_fr-7d25aa37.js} +10 -2
  332. package/src/sap/ui/webc/main/thirdparty/{messagebundle_fr_CA-d3ac2579.js → messagebundle_fr_CA-f0885bcd.js} +10 -2
  333. package/src/sap/ui/webc/main/thirdparty/{messagebundle_hi-3dbf5206.js → messagebundle_hi-4ff3dc19.js} +10 -2
  334. package/src/sap/ui/webc/main/thirdparty/{messagebundle_hr-3112e358.js → messagebundle_hr-27ea5966.js} +10 -2
  335. package/src/sap/ui/webc/main/thirdparty/{messagebundle_hu-90f77b24.js → messagebundle_hu-4e7efab2.js} +10 -2
  336. package/src/sap/ui/webc/main/thirdparty/{messagebundle_it-4fd2c566.js → messagebundle_it-05136e9a.js} +10 -2
  337. package/src/sap/ui/webc/main/thirdparty/{messagebundle_iw-ff53b57b.js → messagebundle_iw-e57af9b5.js} +10 -2
  338. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ja-050a69c3.js → messagebundle_ja-548e66ac.js} +12 -4
  339. package/src/sap/ui/webc/main/thirdparty/{messagebundle_kk-597a9724.js → messagebundle_kk-9a532b4c.js} +10 -2
  340. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ko-d840efd8.js → messagebundle_ko-85246117.js} +10 -2
  341. package/src/sap/ui/webc/main/thirdparty/{messagebundle_lt-d15c1526.js → messagebundle_lt-fd1ed9a8.js} +10 -2
  342. package/src/sap/ui/webc/main/thirdparty/{messagebundle_lv-539ad33e.js → messagebundle_lv-528ee0b5.js} +10 -2
  343. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ms-98b3e6dd.js → messagebundle_ms-ab977639.js} +10 -2
  344. package/src/sap/ui/webc/main/thirdparty/{messagebundle_nl-5c52e887.js → messagebundle_nl-6ef0aca9.js} +10 -2
  345. package/src/sap/ui/webc/main/thirdparty/{messagebundle_no-04ee2aaf.js → messagebundle_no-598c70b3.js} +10 -2
  346. package/src/sap/ui/webc/main/thirdparty/{messagebundle_pl-6da30702.js → messagebundle_pl-3c6bd3f7.js} +10 -2
  347. package/src/sap/ui/webc/main/thirdparty/{messagebundle_pt-71f281c3.js → messagebundle_pt-a38c9a95.js} +10 -2
  348. package/src/sap/ui/webc/main/thirdparty/{messagebundle_pt_PT-6d966418.js → messagebundle_pt_PT-6216e41a.js} +10 -2
  349. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ro-e76a9c5d.js → messagebundle_ro-4efbaf89.js} +10 -2
  350. package/src/sap/ui/webc/main/thirdparty/{messagebundle_ru-dc34dd79.js → messagebundle_ru-c8cc395e.js} +10 -2
  351. package/src/sap/ui/webc/main/thirdparty/{messagebundle_sh-f2171ee6.js → messagebundle_sh-a18343ab.js} +10 -2
  352. package/src/sap/ui/webc/main/thirdparty/{messagebundle_sk-5c10a3c8.js → messagebundle_sk-cbb7b742.js} +10 -2
  353. package/src/sap/ui/webc/main/thirdparty/{messagebundle_sl-14cff3cf.js → messagebundle_sl-39b012e5.js} +10 -2
  354. package/src/sap/ui/webc/main/thirdparty/{messagebundle_sv-44a9e5d4.js → messagebundle_sv-68d03f9d.js} +10 -2
  355. package/src/sap/ui/webc/main/thirdparty/{messagebundle_th-6cbca7a8.js → messagebundle_th-e0f152c1.js} +9 -1
  356. package/src/sap/ui/webc/main/thirdparty/{messagebundle_tr-00ce0f94.js → messagebundle_tr-10848533.js} +10 -2
  357. package/src/sap/ui/webc/main/thirdparty/{messagebundle_uk-bf2de1c7.js → messagebundle_uk-64f282f3.js} +10 -2
  358. package/src/sap/ui/webc/main/thirdparty/{messagebundle_vi-a0de6aa8.js → messagebundle_vi-c6d60018.js} +10 -2
  359. package/src/sap/ui/webc/main/thirdparty/{messagebundle_zh_CN-7cbf9197.js → messagebundle_zh_CN-3be28696.js} +10 -2
  360. package/src/sap/ui/webc/main/thirdparty/{messagebundle_zh_TW-53705d5b.js → messagebundle_zh_TW-229e0d2b.js} +9 -1
  361. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-87f538cb.js +13 -0
  362. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-91761a3a.js +13 -0
  363. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-9a20ee88.js +13 -0
  364. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-ae75ba99.js +13 -0
  365. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-b27de009.js +13 -0
  366. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-ba83be15.js +13 -0
  367. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-c6c72cae.js +13 -0
  368. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-dc4174de.js +13 -0
  369. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-dd344116.js +13 -0
  370. package/src/sap/ui/webc/main/thirdparty/types/HasPopup.js +23 -0
  371. package/src/sap/ui/webc/main/thirdparty/types/TabsOverflowMode.js +20 -0
  372. package/src/sap/ui/webc/main/thirdparty/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  373. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-0af46f05.js +0 -13
  374. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-4d5954e7.js +0 -13
  375. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-58c993f1.js +0 -13
  376. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-5cd315e5.js +0 -13
  377. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-6cdfb99e.js +0 -13
  378. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-c4cbd21b.js +0 -13
  379. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-cc68d055.js +0 -13
  380. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-d4d2e1ea.js +0 -13
  381. package/src/sap/ui/webc/main/thirdparty/parameters-bundle.css-ec070c87.js +0 -13
@@ -1,24 +1,23 @@
1
- sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/common/thirdparty/base/renderer/LitRenderer', 'sap/ui/webc/common/thirdparty/base/delegate/ResizeHandler', 'sap/ui/webc/common/thirdparty/base/delegate/ScrollEnablement', 'sap/ui/webc/common/thirdparty/base/animations/slideDown', 'sap/ui/webc/common/thirdparty/base/animations/slideUp', 'sap/ui/webc/common/thirdparty/base/types/AnimationMode', 'sap/ui/webc/common/thirdparty/base/config/AnimationMode', 'sap/ui/webc/common/thirdparty/base/delegate/ItemNavigation', 'sap/ui/webc/common/thirdparty/base/Keys', 'sap/ui/webc/common/thirdparty/base/MediaRange', 'sap/ui/webc/common/thirdparty/base/i18nBundle', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-up', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-down', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-left', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-right', './generated/i18n/i18n-defaults', './Button', './Icon', './List', './ResponsivePopover', './types/TabContainerTabsPlacement', './generated/templates/TabContainerTemplate.lit', './generated/templates/TabContainerPopoverTemplate.lit', './generated/themes/TabContainer.css', './generated/themes/ResponsivePopoverCommon.css', './types/TabLayout'], function (UI5Element, litRender, ResizeHandler, ScrollEnablement, slideDown, slideUp, AnimationMode$1, AnimationMode, ItemNavigation, Keys, MediaRange, i18nBundle, slimArrowUp, slimArrowDown, slimArrowLeft, slimArrowRight, i18nDefaults, Button, Icon, List, ResponsivePopover, TabContainerTabsPlacement, TabContainerTemplate_lit, TabContainerPopoverTemplate_lit, TabContainer_css, ResponsivePopoverCommon_css, TabLayout) { 'use strict';
1
+ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/common/thirdparty/base/renderer/LitRenderer', 'sap/ui/webc/common/thirdparty/base/delegate/ResizeHandler', 'sap/ui/webc/common/thirdparty/base/Render', 'sap/ui/webc/common/thirdparty/base/animations/slideDown', 'sap/ui/webc/common/thirdparty/base/animations/slideUp', 'sap/ui/webc/common/thirdparty/base/types/AnimationMode', 'sap/ui/webc/common/thirdparty/base/config/AnimationMode', 'sap/ui/webc/common/thirdparty/base/delegate/ItemNavigation', 'sap/ui/webc/common/thirdparty/base/Keys', 'sap/ui/webc/common/thirdparty/base/MediaRange', 'sap/ui/webc/common/thirdparty/base/i18nBundle', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-up', 'sap/ui/webc/common/thirdparty/icons/slim-arrow-down', './generated/i18n/i18n-defaults', './Button', './Icon', './List', './ResponsivePopover', './types/TabContainerTabsPlacement', './generated/templates/TabContainerTemplate.lit', './generated/templates/TabContainerPopoverTemplate.lit', './generated/themes/TabContainer.css', './generated/themes/ResponsivePopoverCommon.css', './types/TabLayout', './types/TabsOverflowMode'], function (UI5Element, litRender, ResizeHandler, Render, slideDown, slideUp, AnimationMode$1, AnimationMode, ItemNavigation, Keys, MediaRange, i18nBundle, slimArrowUp, slimArrowDown, i18nDefaults, Button, Icon, List, ResponsivePopover, TabContainerTabsPlacement, TabContainerTemplate_lit, TabContainerPopoverTemplate_lit, TabContainer_css, ResponsivePopoverCommon_css, TabLayout, TabsOverflowMode) { 'use strict';
2
2
 
3
3
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
4
4
 
5
5
  var UI5Element__default = /*#__PURE__*/_interopDefaultLegacy(UI5Element);
6
6
  var litRender__default = /*#__PURE__*/_interopDefaultLegacy(litRender);
7
7
  var ResizeHandler__default = /*#__PURE__*/_interopDefaultLegacy(ResizeHandler);
8
- var ScrollEnablement__default = /*#__PURE__*/_interopDefaultLegacy(ScrollEnablement);
9
8
  var slideDown__default = /*#__PURE__*/_interopDefaultLegacy(slideDown);
10
9
  var slideUp__default = /*#__PURE__*/_interopDefaultLegacy(slideUp);
11
10
  var AnimationMode__default = /*#__PURE__*/_interopDefaultLegacy(AnimationMode$1);
12
11
  var ItemNavigation__default = /*#__PURE__*/_interopDefaultLegacy(ItemNavigation);
13
12
  var MediaRange__default = /*#__PURE__*/_interopDefaultLegacy(MediaRange);
14
13
 
15
- const SCROLL_STEP = 128;
16
14
  const tabStyles = [];
17
15
  const staticAreaTabStyles = [];
18
16
  const metadata = {
19
17
  tag: "ui5-tabcontainer",
20
18
  languageAware: true,
21
19
  managedSlots: true,
20
+ fastNavigation: true,
22
21
  slots: {
23
22
  "default": {
24
23
  propertyName: "items",
@@ -32,6 +31,9 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
32
31
  overflowButton: {
33
32
  type: HTMLElement,
34
33
  },
34
+ startOverflowButton: {
35
+ type: HTMLElement,
36
+ },
35
37
  },
36
38
  properties: {
37
39
  fixed: {
@@ -51,31 +53,40 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
51
53
  type: String,
52
54
  defaultValue: TabLayout.Standard,
53
55
  },
56
+ tabsOverflowMode: {
57
+ type: TabsOverflowMode,
58
+ defaultValue: TabsOverflowMode.End,
59
+ },
54
60
  mediaRange: {
55
61
  type: String,
56
62
  },
57
63
  _selectedTab: {
58
64
  type: Object,
59
65
  },
60
- _scrollable: {
66
+ _animationRunning: {
61
67
  type: Boolean,
62
68
  noAttribute: true,
63
69
  },
64
- _scrollableBack: {
70
+ _contentCollapsed: {
65
71
  type: Boolean,
66
72
  noAttribute: true,
67
73
  },
68
- _scrollableForward: {
69
- type: Boolean,
74
+ _startOverflowText: {
75
+ type: String,
70
76
  noAttribute: true,
71
77
  },
72
- _animationRunning: {
73
- type: Boolean,
78
+ _endOverflowText: {
79
+ type: String,
74
80
  noAttribute: true,
81
+ defaultValue: "More",
75
82
  },
76
- _contentCollapsed: {
77
- type: Boolean,
78
- noAttribute: true,
83
+ _startOverflowItems: {
84
+ type: Object,
85
+ multiple: true,
86
+ },
87
+ _endOverflowItems: {
88
+ type: Object,
89
+ multiple: true,
79
90
  },
80
91
  },
81
92
  events: {
@@ -115,13 +126,21 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
115
126
  constructor() {
116
127
  super();
117
128
  this._handleResize = this._handleResize.bind(this);
118
- this._scrollEnablement = new ScrollEnablement__default(this);
119
- this._scrollEnablement.attachEvent("scroll", this._updateScrolling.bind(this));
120
129
  this._itemNavigation = new ItemNavigation__default(this, {
121
- getItemsCallback: () => this._getTabs(),
130
+ getItemsCallback: () => this._getFocusableTabs(),
122
131
  });
123
132
  }
124
133
  onBeforeRendering() {
134
+ const tabs = this._getTabs();
135
+ if (tabs.length) {
136
+ const selectedTabs = tabs.filter(tab => tab.selected);
137
+ if (selectedTabs.length) {
138
+ this._selectedTab = selectedTabs[0];
139
+ } else {
140
+ this._selectedTab = tabs[0];
141
+ this._selectedTab._selected = true;
142
+ }
143
+ }
125
144
  this.items.filter(item => !item.isSeparator).forEach((item, index, arr) => {
126
145
  item._isInline = this.tabLayout === TabLayout.Inline;
127
146
  item._mixedMode = this.mixedMode;
@@ -136,10 +155,11 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
136
155
  if (!this._animationRunning) {
137
156
  this._contentCollapsed = this.collapsed;
138
157
  }
158
+ if (this.showOverflow) {
159
+ console.warn(`The "show-overflow" property is deprecated and will be removed in a future release.`);
160
+ }
139
161
  }
140
162
  onAfterRendering() {
141
- this._scrollEnablement.scrollContainer = this._getHeaderScrollContainer();
142
- this._updateScrolling();
143
163
  this.items.forEach(item => {
144
164
  item._getTabInStripDomRef = this.getDomRef().querySelector(`*[data-ui5-stable="${item.stableDomRef}"]`);
145
165
  });
@@ -150,30 +170,14 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
150
170
  onExitDOM() {
151
171
  ResizeHandler__default.deregister(this._getHeader(), this._handleResize);
152
172
  }
153
- _onTablistFocusin(event) {
154
- const target = event.target;
155
- if (!this._scrollable || !target.classList.contains("ui5-tab-strip-item")) {
156
- return;
157
- }
158
- const headerScrollContainer = this._getHeaderScrollContainer();
159
- const leftArrowWidth = this.shadowRoot.querySelector(".ui5-tc__headerArrowLeft").offsetWidth;
160
- const rightArrowWidth = this.shadowRoot.querySelector(".ui5-tc__headerArrowRight").offsetWidth;
161
- if (this._scrollableBack && (target.offsetLeft - leftArrowWidth < headerScrollContainer.scrollLeft)) {
162
- this._scrollEnablement.move(target.offsetLeft - leftArrowWidth - headerScrollContainer.scrollLeft, 0, true);
163
- this._updateScrolling();
164
- } else if (this._scrollableForward && (target.offsetLeft + target.offsetWidth > headerScrollContainer.scrollLeft + headerScrollContainer.offsetWidth - rightArrowWidth)) {
165
- this._scrollEnablement.move(target.offsetLeft + target.offsetWidth - headerScrollContainer.scrollLeft - headerScrollContainer.offsetWidth + rightArrowWidth, 0, true);
166
- this._updateScrolling();
167
- }
168
- }
169
- _onHeaderClick(event) {
173
+ _onTabStripClick(event) {
170
174
  const tab = getTab(event.target);
171
175
  if (!tab) {
172
176
  return;
173
177
  }
174
178
  this._onHeaderItemSelect(tab);
175
179
  }
176
- _onHeaderKeyDown(event) {
180
+ _onTabStripKeyDown(event) {
177
181
  const tab = getTab(event.target);
178
182
  if (!tab) {
179
183
  return;
@@ -185,7 +189,7 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
185
189
  event.preventDefault();
186
190
  }
187
191
  }
188
- _onHeaderKeyUp(event) {
192
+ _onTabStripKeyUp(event) {
189
193
  const tab = getTab(event.target);
190
194
  if (!tab) {
191
195
  return;
@@ -197,26 +201,31 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
197
201
  _onHeaderItemSelect(tab) {
198
202
  if (!tab.hasAttribute("disabled")) {
199
203
  this._onItemSelect(tab);
204
+ if (!this.isModeStartAndEnd) {
205
+ this._setItemsForStrip();
206
+ }
200
207
  }
201
208
  }
202
- _onOverflowListItemSelect(event) {
203
- this._onItemSelect(event.detail.item);
209
+ _onOverflowListItemClick(event) {
210
+ event.preventDefault();
211
+ const { item } = event.detail;
212
+ this._onItemSelect(item);
204
213
  this.responsivePopover.close();
205
- this.shadowRoot.querySelector(`#${event.detail.item.id}`).focus();
214
+ this._setItemsForStrip();
215
+ this.shadowRoot.querySelector(`#${item.id}`).focus();
206
216
  }
207
217
  _onItemSelect(target) {
208
218
  const selectedIndex = findIndex(this.items, item => item._id === target.id);
209
219
  const selectedTabIndex = findIndex(this._getTabs(), item => item._id === target.id);
210
220
  const selectedTab = this.items[selectedIndex];
211
- this.items.forEach((item, index) => {
212
- if (!item.isSeparator) {
221
+ this.items
222
+ .forEach((item, index) => {
213
223
  const selected = selectedIndex === index;
214
224
  item.selected = selected;
215
- if (selected) {
216
- this._itemNavigation.setCurrentItem(item);
225
+ if (item._selected) {
226
+ item._selected = false;
217
227
  }
218
- }
219
- }, this);
228
+ });
220
229
  if (this.fixed) {
221
230
  this.selectTab(selectedTab, selectedTabIndex);
222
231
  return;
@@ -264,42 +273,272 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
264
273
  slideContentUp(element) {
265
274
  return slideUp__default({ element }).promise();
266
275
  }
267
- async _onOverflowButtonClick(event) {
268
- const button = this.overflowButton[0] || this.getDomRef().querySelector(".ui-tc__overflowButton > [ui5-button]");
269
- if (event.target !== button) {
276
+ async _onOverflowClick(event) {
277
+ if (event.target.classList.contains("ui5-tc__overflow")) {
270
278
  return;
271
279
  }
280
+ const overflow = event.currentTarget;
281
+ const isEndOverflow = overflow.classList.contains("ui5-tc__overflow--end");
282
+ const isStartOverflow = overflow.classList.contains("ui5-tc__overflow--start");
283
+ const items = [];
284
+ const overflowAttr = isEndOverflow ? "end-overflow" : "start-overflow";
285
+ this._startOverflowItems = [];
286
+ this._endOverflowItems = [];
287
+ this.items.forEach(item => {
288
+ if (item.getTabInStripDomRef() && item.getTabInStripDomRef().hasAttribute(overflowAttr)) {
289
+ items.push(item);
290
+ }
291
+ });
292
+ let button;
293
+ if (isEndOverflow) {
294
+ button = this.overflowButton[0] || overflow.querySelector("[ui5-button]");
295
+ this._endOverflowItems = items;
296
+ }
297
+ if (isStartOverflow) {
298
+ button = this.startOverflowButton[0] || overflow.querySelector("[ui5-button]");
299
+ this._startOverflowItems = items;
300
+ }
272
301
  this.responsivePopover = await this._respPopover();
273
302
  if (this.responsivePopover.opened) {
274
303
  this.responsivePopover.close();
275
304
  } else {
305
+ this.responsivePopover.initialFocus = this.responsivePopover.content[0].items.filter(item => item.classList.contains("ui5-tab-overflow-item"))[0].id;
276
306
  this.responsivePopover.showAt(button);
277
307
  }
278
308
  }
279
- _onHeaderBackArrowClick() {
280
- this._scrollEnablement.move(-SCROLL_STEP, 0).promise()
281
- .then(_ => this._updateScrolling());
282
- }
283
- _onHeaderForwardArrowClick() {
284
- this._scrollEnablement.move(SCROLL_STEP, 0).promise()
285
- .then(_ => this._updateScrolling());
309
+ async _onOverflowKeyDown(event) {
310
+ const isEndOverflow = event.currentTarget.classList.contains("ui5-tc__overflow--end");
311
+ const isStartOverflow = event.currentTarget.classList.contains("ui5-tc__overflow--start");
312
+ switch (true) {
313
+ case Keys.isDown(event):
314
+ case isStartOverflow && Keys.isLeft(event):
315
+ case isEndOverflow && Keys.isRight(event):
316
+ await this._onOverflowClick(event);
317
+ }
286
318
  }
287
- _handleResize() {
288
- this._updateScrolling();
319
+ async _handleResize() {
320
+ if (this.responsivePopover && this.responsivePopover.opened) {
321
+ this.responsivePopover.close();
322
+ }
289
323
  this._updateMediaRange();
324
+ await Render.renderFinished();
325
+ this._setItemsForStrip();
326
+ }
327
+ _setItemsForStrip() {
328
+ const tabStrip = this._getTabStrip();
329
+ let allItemsWidth = 0;
330
+ if (!this._selectedTab) {
331
+ return;
332
+ }
333
+ const itemsDomRefs = this.items.map(item => item.getTabInStripDomRef());
334
+ this._getStartOverflow().setAttribute("hidden", "");
335
+ this._getEndOverflow().setAttribute("hidden", "");
336
+ for (let i = 0; i < itemsDomRefs.length; i++) {
337
+ itemsDomRefs[i].removeAttribute("hidden");
338
+ itemsDomRefs[i].removeAttribute("start-overflow");
339
+ itemsDomRefs[i].removeAttribute("end-overflow");
340
+ }
341
+ itemsDomRefs.forEach(item => {
342
+ allItemsWidth += this._getItemWidth(item);
343
+ });
344
+ const hasOverflow = tabStrip.offsetWidth < allItemsWidth;
345
+ if (!hasOverflow) {
346
+ this._closeRespPopover();
347
+ return;
348
+ }
349
+ if (this.isModeStartAndEnd) {
350
+ this._updateStartAndEndOverflow(itemsDomRefs);
351
+ this._updateOverflowCounters();
352
+ } else {
353
+ this._updateEndOverflow(itemsDomRefs);
354
+ }
355
+ this._itemNavigation._init();
356
+ this._itemNavigation.setCurrentItem(this._selectedTab);
357
+ }
358
+ _updateEndOverflow(itemsDomRefs) {
359
+ this._getEndOverflow().removeAttribute("hidden");
360
+ const selectedTabDomRef = this._selectedTab.getTabInStripDomRef();
361
+ const containerWidth = this._getTabStrip().offsetWidth;
362
+ const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
363
+ const lastVisibleTabIndex = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
364
+ for (let i = lastVisibleTabIndex + 1; i < itemsDomRefs.length; i++) {
365
+ itemsDomRefs[i].setAttribute("hidden", "");
366
+ itemsDomRefs[i].setAttribute("end-overflow", "");
367
+ }
368
+ this._endOverflowText = this.overflowButtonText;
369
+ }
370
+ _updateStartAndEndOverflow(itemsDomRefs) {
371
+ let containerWidth = this._getTabStrip().offsetWidth;
372
+ const selectedTabDomRef = this._selectedTab.getTabInStripDomRef();
373
+ const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
374
+ const hasStartOverflow = this._hasStartOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
375
+ const hasEndOverflow = this._hasEndOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
376
+ let firstVisible;
377
+ let lastVisible;
378
+ if (!hasStartOverflow) {
379
+ this._getEndOverflow().removeAttribute("hidden");
380
+ containerWidth = this._getTabStrip().offsetWidth;
381
+ lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
382
+ for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
383
+ itemsDomRefs[i].setAttribute("hidden", "");
384
+ itemsDomRefs[i].setAttribute("end-overflow", "");
385
+ }
386
+ return;
387
+ }
388
+ if (!hasEndOverflow) {
389
+ this._getStartOverflow().removeAttribute("hidden");
390
+ containerWidth = this._getTabStrip().offsetWidth;
391
+ firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
392
+ for (let i = firstVisible - 1; i >= 0; i--) {
393
+ itemsDomRefs[i].setAttribute("hidden", "");
394
+ itemsDomRefs[i].setAttribute("start-overflow", "");
395
+ }
396
+ return;
397
+ }
398
+ this._getStartOverflow().removeAttribute("hidden");
399
+ this._getEndOverflow().removeAttribute("hidden");
400
+ containerWidth = this._getTabStrip().offsetWidth;
401
+ firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, selectedItemIndexAndWidth.index - 1);
402
+ lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, firstVisible);
403
+ for (let i = firstVisible - 1; i >= 0; i--) {
404
+ itemsDomRefs[i].setAttribute("hidden", "");
405
+ itemsDomRefs[i].setAttribute("start-overflow", "");
406
+ }
407
+ for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
408
+ itemsDomRefs[i].setAttribute("hidden", "");
409
+ itemsDomRefs[i].setAttribute("end-overflow", "");
410
+ }
411
+ }
412
+ _hasStartOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth) {
413
+ if (selectedItemIndexAndWidth.index === 0) {
414
+ return false;
415
+ }
416
+ let leftItemsWidth = 0;
417
+ for (let i = selectedItemIndexAndWidth.index - 1; i >= 0; i--) {
418
+ leftItemsWidth += this._getItemWidth(itemsDomRefs[i]);
419
+ }
420
+ let hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
421
+ if (!hasStartOverflow) {
422
+ this._getEndOverflow().removeAttribute("hidden");
423
+ containerWidth = this._getTabStrip().offsetWidth;
424
+ hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
425
+ this._getEndOverflow().setAttribute("hidden", "");
426
+ }
427
+ return hasStartOverflow;
428
+ }
429
+ _hasEndOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth) {
430
+ if (selectedItemIndexAndWidth.index >= itemsDomRefs.length) {
431
+ return false;
432
+ }
433
+ let rightItemsWidth = 0;
434
+ for (let i = selectedItemIndexAndWidth.index; i < itemsDomRefs.length; i++) {
435
+ rightItemsWidth += this._getItemWidth(itemsDomRefs[i]);
436
+ }
437
+ let hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
438
+ if (!hasEndOverflow) {
439
+ this._getStartOverflow().removeAttribute("hidden");
440
+ containerWidth = this._getTabStrip().offsetWidth;
441
+ hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
442
+ this._getStartOverflow().setAttribute("hidden", "");
443
+ }
444
+ return hasEndOverflow;
445
+ }
446
+ _getItemWidth(itemDomRef) {
447
+ const styles = window.getComputedStyle(itemDomRef);
448
+ const margins = Number.parseInt(styles.marginLeft) + Number.parseInt(styles.marginRight);
449
+ return itemDomRef.offsetWidth + margins;
450
+ }
451
+ _getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef) {
452
+ let index = itemsDomRefs.indexOf(selectedTabDomRef);
453
+ let width = selectedTabDomRef.offsetWidth;
454
+ let selectedSeparator;
455
+ if (itemsDomRefs[index - 1] && itemsDomRefs[index - 1].isSeparator) {
456
+ selectedSeparator = itemsDomRefs[index - 1];
457
+ width += this._getItemWidth(selectedSeparator);
458
+ }
459
+ itemsDomRefs.splice(index, 1);
460
+ if (selectedSeparator) {
461
+ itemsDomRefs.splice(index - 1, 1);
462
+ index--;
463
+ }
464
+ return {
465
+ index,
466
+ width,
467
+ };
468
+ }
469
+ _findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemWidth, startIndex) {
470
+ if (startIndex === undefined) {
471
+ startIndex = itemsDomRefs.length - 1;
472
+ }
473
+ let lastVisible = startIndex + 1;
474
+ for (let index = startIndex; index >= 0; index--) {
475
+ const itemWidth = this._getItemWidth(itemsDomRefs[index]);
476
+ if (containerWidth < selectedItemWidth + itemWidth) {
477
+ break;
478
+ }
479
+ selectedItemWidth += itemWidth;
480
+ lastVisible = index;
481
+ }
482
+ return lastVisible;
483
+ }
484
+ _findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemWidth, startIndex) {
485
+ startIndex = startIndex || 0;
486
+ let lastVisibleIndex = startIndex - 1;
487
+ let index = startIndex;
488
+ for (; index < itemsDomRefs.length; index++) {
489
+ const itemWidth = this._getItemWidth(itemsDomRefs[index]);
490
+ if (containerWidth < selectedItemWidth + itemWidth) {
491
+ break;
492
+ }
493
+ selectedItemWidth += itemWidth;
494
+ lastVisibleIndex = index;
495
+ }
496
+ const prevItem = itemsDomRefs[index - 1];
497
+ if (prevItem && prevItem.isSeparator) {
498
+ lastVisibleIndex -= 1;
499
+ }
500
+ return lastVisibleIndex;
501
+ }
502
+ get isModeStartAndEnd() {
503
+ return this.tabsOverflowMode === TabsOverflowMode.StartAndEnd;
504
+ }
505
+ _updateOverflowCounters() {
506
+ let startOverflowItemsCount = 0;
507
+ let endOverflowItemsCount = 0;
508
+ this._getTabs()
509
+ .map(tab => tab.getTabInStripDomRef())
510
+ .forEach(tab => {
511
+ if (tab.hasAttribute("start-overflow")) {
512
+ startOverflowItemsCount++;
513
+ }
514
+ if (tab.hasAttribute("end-overflow")) {
515
+ endOverflowItemsCount++;
516
+ }
517
+ });
518
+ this._startOverflowText = `+${startOverflowItemsCount}`;
519
+ this._endOverflowText = `+${endOverflowItemsCount}`;
290
520
  }
291
521
  async _closeRespPopover() {
292
522
  this.responsivePopover = await this._respPopover();
293
523
  this.responsivePopover.close();
294
524
  }
295
- _updateScrolling() {
296
- const headerScrollContainer = this._getHeaderScrollContainer();
297
- this._scrollable = headerScrollContainer.offsetWidth < headerScrollContainer.scrollWidth;
298
- this._scrollableBack = headerScrollContainer.scrollLeft > 0;
299
- this._scrollableForward = Math.ceil(headerScrollContainer.scrollLeft) < headerScrollContainer.scrollWidth - headerScrollContainer.offsetWidth;
300
- if (!this._scrollable) {
301
- this._closeRespPopover();
525
+ _getFocusableTabs() {
526
+ if (!this.getDomRef()) {
527
+ return [];
302
528
  }
529
+ const focusableTabs = [];
530
+ if (!this._getStartOverflow().hasAttribute("hidden")) {
531
+ focusableTabs.push(this._getStartOverflow().querySelector("[ui5-button]"));
532
+ }
533
+ this._getTabs().forEach(tab => {
534
+ if (tab.getTabInStripDomRef() && !tab.getTabInStripDomRef().hasAttribute("hidden")) {
535
+ focusableTabs.push(tab);
536
+ }
537
+ });
538
+ if (!this._getEndOverflow().hasAttribute("hidden")) {
539
+ focusableTabs.push(this._getEndOverflow().querySelector("[ui5-button]"));
540
+ }
541
+ return focusableTabs;
303
542
  }
304
543
  _updateMediaRange() {
305
544
  this.mediaRange = MediaRange__default.getCurrentRange(MediaRange__default.RANGESETS.RANGE_4STEPS, this.getDomRef().offsetWidth);
@@ -310,50 +549,36 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
310
549
  _getTabs() {
311
550
  return this.items.filter(item => !item.isSeparator);
312
551
  }
313
- _getHeaderScrollContainer() {
314
- return this.shadowRoot.querySelector(`#${this._id}-headerScrollContainer`);
552
+ _getTabStrip() {
553
+ return this.shadowRoot.querySelector(`#${this._id}-tabStrip`);
554
+ }
555
+ _getStartOverflow() {
556
+ return this.shadowRoot.querySelector(".ui5-tc__overflow--start");
557
+ }
558
+ _getEndOverflow() {
559
+ return this.shadowRoot.querySelector(".ui5-tc__overflow--end");
315
560
  }
316
561
  async _respPopover() {
317
562
  const staticAreaItem = await this.getStaticAreaItemDomRef();
318
563
  return staticAreaItem.querySelector(`#${this._id}-overflowMenu`);
319
564
  }
320
- get shouldShowOverflow() {
321
- return this.showOverflow && this._scrollable;
322
- }
323
565
  get classes() {
324
566
  return {
325
567
  root: {
326
568
  "ui5-tc-root": true,
327
569
  "ui5-tc--textOnly": this.textOnly,
328
- "ui5-tc--withAdditonalText": this.withAdditonalText,
570
+ "ui5-tc--withAdditionalText": this.withAdditionalText,
329
571
  "ui5-tc--standardTabLayout": this.standardTabLayout,
330
572
  },
331
573
  header: {
332
574
  "ui5-tc__header": true,
333
- "ui5-tc__header--scrollable": this._scrollable,
334
575
  },
335
- headerInnerContainer: {
336
- "ui5-tc__headerInnerContainer": true,
337
- },
338
- headerScrollContainer: {
339
- "ui-tc__headerScrollContainer": true,
340
- },
341
- headerList: {
342
- "ui5-tc__headerList": true,
576
+ tabStrip: {
577
+ "ui5-tc__tabStrip": true,
343
578
  },
344
579
  separator: {
345
580
  "ui5-tc__separator": true,
346
581
  },
347
- headerBackArrow: {
348
- "ui5-tc__headerArrow": true,
349
- "ui5-tc__headerArrowLeft": true,
350
- "ui5-tc__headerArrow--visible": this._scrollableBack,
351
- },
352
- headerForwardArrow: {
353
- "ui5-tc__headerArrow": true,
354
- "ui5-tc__headerArrowRight": true,
355
- "ui5-tc__headerArrow--visible": this._scrollableForward,
356
- },
357
582
  content: {
358
583
  "ui5-tc__content": true,
359
584
  "ui5-tc__content--collapsed": this._contentCollapsed,
@@ -366,7 +591,7 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
366
591
  get textOnly() {
367
592
  return this.items.every(item => !item.icon);
368
593
  }
369
- get withAdditonalText() {
594
+ get withAdditionalText() {
370
595
  return this.items.some(item => !!item.additionalText);
371
596
  }
372
597
  get standardTabLayout() {
@@ -387,6 +612,9 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
387
612
  get overflowMenuIcon() {
388
613
  return this.tabsAtTheBottom ? "slim-arrow-up" : "slim-arrow-down";
389
614
  }
615
+ get overflowButtonText() {
616
+ return TabContainer.i18nBundle.getText(i18nDefaults.TABCONTAINER_END_OVERFLOW);
617
+ }
390
618
  get animate() {
391
619
  return AnimationMode.getAnimationMode() !== AnimationMode__default.None;
392
620
  }
@@ -402,10 +630,10 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
402
630
  TabContainer.i18nBundle = await i18nBundle.getI18nBundle("@ui5/webcomponents");
403
631
  }
404
632
  }
405
- const isTabLi = el => el.localName === "li" && el.getAttribute("role") === "tab";
633
+ const isTabDiv = el => el.localName === "div" && el.getAttribute("role") === "tab";
406
634
  const getTab = el => {
407
635
  while (el) {
408
- if (isTabLi(el)) {
636
+ if (isTabDiv(el)) {
409
637
  return el;
410
638
  }
411
639
  el = el.parentElement;
@@ -1,9 +1,10 @@
1
- sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/common/thirdparty/base/renderer/LitRenderer', './generated/templates/TabSeparatorTemplate.lit'], function (UI5Element, litRender, TabSeparatorTemplate_lit) { 'use strict';
1
+ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/common/thirdparty/base/renderer/LitRenderer', 'sap/ui/webc/common/thirdparty/base/renderer/executeTemplate', './TabContainer', './generated/templates/TabSeparatorInStripTemplate.lit', './generated/templates/TabSeparatorInOverflowTemplate.lit', './generated/themes/TabSeparatorInStrip.css', './generated/themes/TabSeparatorInOverflow.css'], function (UI5Element, litRender, executeTemplate, TabContainer, TabSeparatorInStripTemplate_lit, TabSeparatorInOverflowTemplate_lit, TabSeparatorInStrip_css, TabSeparatorInOverflow_css) { 'use strict';
2
2
 
3
3
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
4
4
 
5
5
  var UI5Element__default = /*#__PURE__*/_interopDefaultLegacy(UI5Element);
6
6
  var litRender__default = /*#__PURE__*/_interopDefaultLegacy(litRender);
7
+ var executeTemplate__default = /*#__PURE__*/_interopDefaultLegacy(executeTemplate);
7
8
 
8
9
  const metadata = {
9
10
  tag: "ui5-tab-separator",
@@ -15,14 +16,36 @@ sap.ui.define(['sap/ui/webc/common/thirdparty/base/UI5Element', 'sap/ui/webc/com
15
16
  static get render() {
16
17
  return litRender__default;
17
18
  }
18
- static get template() {
19
- return TabSeparatorTemplate_lit;
19
+ static get stripTemplate() {
20
+ return TabSeparatorInStripTemplate_lit;
21
+ }
22
+ static get overflowTemplate() {
23
+ return TabSeparatorInOverflowTemplate_lit;
24
+ }
25
+ get classes() {
26
+ return {
27
+ "ui5-tc__separator": true,
28
+ };
20
29
  }
21
30
  get isSeparator() {
22
31
  return true;
23
32
  }
33
+ getTabInStripDomRef() {
34
+ return this._getTabInStripDomRef;
35
+ }
36
+ get stableDomRef() {
37
+ return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
38
+ }
39
+ get stripPresentation() {
40
+ return executeTemplate__default(this.constructor.stripTemplate, this);
41
+ }
42
+ get overflowPresentation() {
43
+ return executeTemplate__default(this.constructor.overflowTemplate, this);
44
+ }
24
45
  }
25
46
  TabSeparator.define();
47
+ TabContainer.registerTabStyles(TabSeparatorInStrip_css);
48
+ TabContainer.registerStaticAreaTabStyles(TabSeparatorInOverflow_css);
26
49
 
27
50
  return TabSeparator;
28
51