@ui5/webcomponents 0.0.0-8e1845415 → 0.0.0-90f690396

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 (926) hide show
  1. package/.eslintrc.cjs +3 -0
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +61 -0
  4. package/config/wdio.conf.cjs +13 -0
  5. package/dist/Assets-static.js.map +1 -1
  6. package/dist/Assets.js.map +1 -1
  7. package/dist/Avatar.d.ts +3 -1
  8. package/dist/Avatar.js.map +1 -1
  9. package/dist/AvatarGroup.js.map +1 -1
  10. package/dist/Badge.js.map +1 -1
  11. package/dist/Breadcrumbs.js.map +1 -1
  12. package/dist/BreadcrumbsItem.js.map +1 -1
  13. package/dist/BusyIndicator.js.map +1 -1
  14. package/dist/Button.d.ts +8 -3
  15. package/dist/Button.js +7 -2
  16. package/dist/Button.js.map +1 -1
  17. package/dist/Calendar.js.map +1 -1
  18. package/dist/CalendarDate.js.map +1 -1
  19. package/dist/CalendarHeader.js.map +1 -1
  20. package/dist/CalendarPart.js +4 -1
  21. package/dist/CalendarPart.js.map +1 -1
  22. package/dist/Card.js.map +1 -1
  23. package/dist/CardHeader.js.map +1 -1
  24. package/dist/Carousel.js.map +1 -1
  25. package/dist/CheckBox.js.map +1 -1
  26. package/dist/ColorPalette.js.map +1 -1
  27. package/dist/ColorPaletteItem.js.map +1 -1
  28. package/dist/ColorPalettePopover.js.map +1 -1
  29. package/dist/ColorPicker.js.map +1 -1
  30. package/dist/ComboBox.js.map +1 -1
  31. package/dist/ComboBoxGroupItem.js.map +1 -1
  32. package/dist/ComboBoxItem.js.map +1 -1
  33. package/dist/CustomListItem.js.map +1 -1
  34. package/dist/DateComponentBase.js.map +1 -1
  35. package/dist/DatePicker.d.ts +2 -2
  36. package/dist/DatePicker.js +11 -8
  37. package/dist/DatePicker.js.map +1 -1
  38. package/dist/DateRangePicker.js.map +1 -1
  39. package/dist/DateTimePicker.d.ts +1 -1
  40. package/dist/DateTimePicker.js +1 -1
  41. package/dist/DateTimePicker.js.map +1 -1
  42. package/dist/DayPicker.js.map +1 -1
  43. package/dist/Dialog.js.map +1 -1
  44. package/dist/FileUploader.js.map +1 -1
  45. package/dist/Filters.js.map +1 -1
  46. package/dist/GroupHeaderListItem.js.map +1 -1
  47. package/dist/Icon.d.ts +10 -10
  48. package/dist/Icon.js +7 -7
  49. package/dist/Icon.js.map +1 -1
  50. package/dist/Input.d.ts +2 -1
  51. package/dist/Input.js +30 -16
  52. package/dist/Input.js.map +1 -1
  53. package/dist/Interfaces.js.map +1 -1
  54. package/dist/Label.js.map +1 -1
  55. package/dist/Link.js.map +1 -1
  56. package/dist/List.js.map +1 -1
  57. package/dist/ListItem.js.map +1 -1
  58. package/dist/ListItemBase.d.ts +1 -1
  59. package/dist/ListItemBase.js +4 -7
  60. package/dist/ListItemBase.js.map +1 -1
  61. package/dist/Menu.js.map +1 -1
  62. package/dist/MenuItem.d.ts +1 -1
  63. package/dist/MenuItem.js.map +1 -1
  64. package/dist/MessageStrip.d.ts +1 -1
  65. package/dist/MessageStrip.js.map +1 -1
  66. package/dist/MonthPicker.js.map +1 -1
  67. package/dist/MultiComboBox.js +1 -0
  68. package/dist/MultiComboBox.js.map +1 -1
  69. package/dist/MultiComboBoxGroupItem.js.map +1 -1
  70. package/dist/MultiComboBoxItem.js.map +1 -1
  71. package/dist/MultiInput.js.map +1 -1
  72. package/dist/Option.d.ts +1 -1
  73. package/dist/Option.js.map +1 -1
  74. package/dist/Panel.js.map +1 -1
  75. package/dist/Popover.d.ts +1 -0
  76. package/dist/Popover.js +18 -6
  77. package/dist/Popover.js.map +1 -1
  78. package/dist/Popup.js.map +1 -1
  79. package/dist/ProgressIndicator.js.map +1 -1
  80. package/dist/RadioButton.js.map +1 -1
  81. package/dist/RadioButtonGroup.js.map +1 -1
  82. package/dist/RangeSlider.js.map +1 -1
  83. package/dist/RatingIndicator.js.map +1 -1
  84. package/dist/ResponsivePopover.js.map +1 -1
  85. package/dist/SegmentedButton.js.map +1 -1
  86. package/dist/SegmentedButtonItem.js.map +1 -1
  87. package/dist/Select.js +1 -0
  88. package/dist/Select.js.map +1 -1
  89. package/dist/Slider.js.map +1 -1
  90. package/dist/SliderBase.js.map +1 -1
  91. package/dist/SplitButton.d.ts +2 -1
  92. package/dist/SplitButton.js +3 -0
  93. package/dist/SplitButton.js.map +1 -1
  94. package/dist/StandardListItem.d.ts +1 -1
  95. package/dist/StandardListItem.js.map +1 -1
  96. package/dist/StepInput.js.map +1 -1
  97. package/dist/SuggestionGroupItem.js.map +1 -1
  98. package/dist/SuggestionItem.d.ts +1 -1
  99. package/dist/SuggestionItem.js.map +1 -1
  100. package/dist/SuggestionListItem.js.map +1 -1
  101. package/dist/Switch.js.map +1 -1
  102. package/dist/Tab.d.ts +1 -1
  103. package/dist/Tab.js.map +1 -1
  104. package/dist/TabContainer.js.map +1 -1
  105. package/dist/TabSeparator.js.map +1 -1
  106. package/dist/Table.d.ts +1 -1
  107. package/dist/Table.js +1 -1
  108. package/dist/Table.js.map +1 -1
  109. package/dist/TableCell.js.map +1 -1
  110. package/dist/TableColumn.js.map +1 -1
  111. package/dist/TableGroupRow.js.map +1 -1
  112. package/dist/TableRow.js.map +1 -1
  113. package/dist/TextArea.js.map +1 -1
  114. package/dist/TimePicker.d.ts +3 -2
  115. package/dist/TimePicker.js +1 -1
  116. package/dist/TimePicker.js.map +1 -1
  117. package/dist/TimePickerBase.d.ts +1 -1
  118. package/dist/TimePickerBase.js +2 -2
  119. package/dist/TimePickerBase.js.map +1 -1
  120. package/dist/TimeSelection.d.ts +2 -1
  121. package/dist/TimeSelection.js.map +1 -1
  122. package/dist/Title.js.map +1 -1
  123. package/dist/Toast.js.map +1 -1
  124. package/dist/ToggleButton.js.map +1 -1
  125. package/dist/Token.js.map +1 -1
  126. package/dist/Tokenizer.js.map +1 -1
  127. package/dist/Tree.js.map +1 -1
  128. package/dist/TreeItem.js.map +1 -1
  129. package/dist/TreeItemBase.js.map +1 -1
  130. package/dist/TreeItemCustom.d.ts +1 -1
  131. package/dist/TreeItemCustom.js +1 -1
  132. package/dist/TreeItemCustom.js.map +1 -1
  133. package/dist/TreeList.js.map +1 -1
  134. package/dist/WheelSlider.js.map +1 -1
  135. package/dist/YearPicker.js.map +1 -1
  136. package/dist/api.json +1 -1
  137. package/dist/assets/IconCollectionInCustomTheme.91b08a2b.css +1 -0
  138. package/dist/assets/Popover.366b9193.css +1 -0
  139. package/dist/assets/{SAP-icons-TNT.91a61c6d.js → SAP-icons-TNT.198a2fb9.js} +1 -1
  140. package/dist/assets/SAP-icons-TNT.1a9c4736.js +1 -0
  141. package/dist/assets/SAP-icons-business-suite.0589a2e2.js +1 -0
  142. package/dist/assets/SAP-icons-business-suite.cabfcb50.js +1 -0
  143. package/dist/assets/SAP-icons.94515297.js +1 -0
  144. package/dist/assets/SAP-icons.e7342524.js +1 -0
  145. package/dist/assets/ar.79bcdac6.js +1 -0
  146. package/dist/assets/ar_EG.317b7da4.js +1 -0
  147. package/dist/assets/ar_SA.47fa752a.js +1 -0
  148. package/dist/assets/bg.9fa59b57.js +1 -0
  149. package/dist/assets/ca.33231602.js +1 -0
  150. package/dist/assets/cs.c6834326.js +1 -0
  151. package/dist/assets/da.7d6c5c63.js +1 -0
  152. package/dist/assets/de.034ba268.js +1 -0
  153. package/dist/assets/de_AT.c6f8b56c.js +1 -0
  154. package/dist/assets/de_CH.fbb1fd8b.js +1 -0
  155. package/dist/assets/el.a52af6dd.js +1 -0
  156. package/dist/assets/el_CY.dfc81973.js +1 -0
  157. package/dist/assets/en.9d5e30c6.js +1 -0
  158. package/dist/assets/en_AU.af8c9202.js +1 -0
  159. package/dist/assets/en_GB.e07779d4.js +1 -0
  160. package/dist/assets/en_HK.bdda93ce.js +1 -0
  161. package/dist/assets/en_IE.81db172b.js +1 -0
  162. package/dist/assets/en_IN.dc6c4aa0.js +1 -0
  163. package/dist/assets/en_NZ.a287ea30.js +1 -0
  164. package/dist/assets/en_PG.a841abf3.js +1 -0
  165. package/dist/assets/en_SG.a8c53dc3.js +1 -0
  166. package/dist/assets/en_ZA.e412e4cb.js +1 -0
  167. package/dist/assets/es.a8053ce5.js +1 -0
  168. package/dist/assets/es_AR.400678e2.js +1 -0
  169. package/dist/assets/es_BO.5d505e47.js +1 -0
  170. package/dist/assets/es_CL.a6e4a80b.js +1 -0
  171. package/dist/assets/es_CO.1f7597a4.js +1 -0
  172. package/dist/assets/es_MX.9164aad6.js +1 -0
  173. package/dist/assets/es_PE.85c8a5f4.js +1 -0
  174. package/dist/assets/es_UY.4b0bd2f1.js +1 -0
  175. package/dist/assets/es_VE.194a01d7.js +1 -0
  176. package/dist/assets/et.1ba4add0.js +1 -0
  177. package/dist/assets/fa.e60c18ea.js +1 -0
  178. package/dist/assets/fi.2b63587f.js +1 -0
  179. package/dist/assets/fr.f21ec134.js +1 -0
  180. package/dist/assets/fr_BE.bf9d2736.js +1 -0
  181. package/dist/assets/fr_CA.47fa4dde.js +1 -0
  182. package/dist/assets/fr_CH.6c03e6c0.js +1 -0
  183. package/dist/assets/fr_LU.19d18947.js +1 -0
  184. package/dist/assets/he.fd2788ce.js +1 -0
  185. package/dist/assets/hi.df686f37.js +1 -0
  186. package/dist/assets/hr.9540378d.js +1 -0
  187. package/dist/assets/hu.7fc5a600.js +1 -0
  188. package/dist/assets/id.a727d950.js +1 -0
  189. package/dist/assets/it.11c23822.js +1 -0
  190. package/dist/assets/it_CH.0daa9b0b.js +1 -0
  191. package/dist/assets/ja.65e8d301.js +1 -0
  192. package/dist/assets/{kitchen-scripts.f2c8101e.js → kitchen-scripts.4ffb6cdb.js} +1 -1
  193. package/dist/assets/kk.a1e73b3f.js +1 -0
  194. package/dist/assets/ko.3a143713.js +1 -0
  195. package/dist/assets/lt.5ff0cdf7.js +1 -0
  196. package/dist/assets/lv.d37ad18b.js +1 -0
  197. package/dist/assets/messagebundle_ar.4a952712.js +1 -0
  198. package/dist/assets/messagebundle_bg.005d394d.js +1 -0
  199. package/dist/assets/messagebundle_ca.42a55677.js +1 -0
  200. package/dist/assets/messagebundle_cs.af423fbd.js +1 -0
  201. package/dist/assets/messagebundle_cy.dbe56ca5.js +1 -0
  202. package/dist/assets/messagebundle_da.8c1bf79d.js +1 -0
  203. package/dist/assets/messagebundle_de.07dbdade.js +1 -0
  204. package/dist/assets/messagebundle_el.60b0af39.js +1 -0
  205. package/dist/assets/messagebundle_en.7bf1186a.js +1 -0
  206. package/dist/assets/messagebundle_en_GB.74ca8ab1.js +1 -0
  207. package/dist/assets/messagebundle_en_US_sappsd.4b5e22df.js +1 -0
  208. package/dist/assets/{messagebundle_en_US_saprigi.4fc3019b.js → messagebundle_en_US_saprigi.8f67a54b.js} +1 -1
  209. package/dist/assets/messagebundle_en_US_saptrc.1c1645fc.js +1 -0
  210. package/dist/assets/messagebundle_es.0cc30b6e.js +1 -0
  211. package/dist/assets/messagebundle_es_MX.af835417.js +1 -0
  212. package/dist/assets/messagebundle_et.f0b9692c.js +1 -0
  213. package/dist/assets/messagebundle_fi.ce799ebc.js +1 -0
  214. package/dist/assets/messagebundle_fr.138d08d9.js +1 -0
  215. package/dist/assets/messagebundle_fr_CA.21862365.js +1 -0
  216. package/dist/assets/messagebundle_hi.36d322e9.js +1 -0
  217. package/dist/assets/messagebundle_hr.aca7500d.js +1 -0
  218. package/dist/assets/messagebundle_hu.cd5bc60e.js +1 -0
  219. package/dist/assets/messagebundle_it.707234b5.js +1 -0
  220. package/dist/assets/messagebundle_iw.80b7ae6a.js +1 -0
  221. package/dist/assets/messagebundle_ja.54ced6c6.js +1 -0
  222. package/dist/assets/messagebundle_kk.29fafd2d.js +1 -0
  223. package/dist/assets/messagebundle_ko.8f74bc59.js +1 -0
  224. package/dist/assets/messagebundle_lt.d8c67fb7.js +1 -0
  225. package/dist/assets/messagebundle_lv.3a838a47.js +1 -0
  226. package/dist/assets/messagebundle_ms.57fb5eb8.js +1 -0
  227. package/dist/assets/messagebundle_nl.e091d15c.js +1 -0
  228. package/dist/assets/messagebundle_no.11207bec.js +1 -0
  229. package/dist/assets/messagebundle_pl.a642af11.js +1 -0
  230. package/dist/assets/messagebundle_pt.150a4c67.js +1 -0
  231. package/dist/assets/messagebundle_pt_PT.9c822d87.js +1 -0
  232. package/dist/assets/messagebundle_ro.8a4e217c.js +1 -0
  233. package/dist/assets/messagebundle_ru.3ab0178d.js +1 -0
  234. package/dist/assets/messagebundle_sh.67fd26db.js +1 -0
  235. package/dist/assets/messagebundle_sk.d5b20773.js +1 -0
  236. package/dist/assets/messagebundle_sl.2d887b8e.js +1 -0
  237. package/dist/assets/messagebundle_sv.e4cae15c.js +1 -0
  238. package/dist/assets/messagebundle_th.50b9123a.js +1 -0
  239. package/dist/assets/messagebundle_tr.6ea45efc.js +1 -0
  240. package/dist/assets/messagebundle_uk.9705fda1.js +1 -0
  241. package/dist/assets/messagebundle_uk.ed0a7c66.js +1 -0
  242. package/dist/assets/messagebundle_vi.fd114413.js +1 -0
  243. package/dist/assets/messagebundle_zh_CN.0f26b4c2.js +1 -0
  244. package/dist/assets/messagebundle_zh_TW.26f10b28.js +1 -0
  245. package/dist/assets/ms.073a5293.js +1 -0
  246. package/dist/assets/nb.2ac5f938.js +1 -0
  247. package/dist/assets/nl.32e385c8.js +1 -0
  248. package/dist/assets/nl_BE.5f2ba97a.js +1 -0
  249. package/dist/assets/parameters-bundle.css.01644757.js +1 -0
  250. package/dist/assets/parameters-bundle.css.2c8496aa.js +1 -0
  251. package/dist/assets/parameters-bundle.css.52765351.js +1 -0
  252. package/dist/assets/parameters-bundle.css.699b96c0.js +1 -0
  253. package/dist/assets/parameters-bundle.css.6db4d34a.js +1 -0
  254. package/dist/assets/parameters-bundle.css.70a65e3a.js +1 -0
  255. package/dist/assets/parameters-bundle.css.71348be9.js +1 -0
  256. package/dist/assets/parameters-bundle.css.71c92b92.js +1 -0
  257. package/dist/assets/parameters-bundle.css.9bd22734.js +1 -0
  258. package/dist/assets/parameters-bundle.css.b7a262bf.js +1 -0
  259. package/dist/assets/parameters-bundle.css.c565b624.js +1 -0
  260. package/dist/assets/parameters-bundle.css.cbd268df.js +1 -0
  261. package/dist/assets/parameters-bundle.css.d3b9e3dd.js +1 -0
  262. package/dist/assets/parameters-bundle.css.f552e9e6.js +1 -0
  263. package/dist/assets/pl.6bedf0c8.js +1 -0
  264. package/dist/assets/pt.98edc8e1.js +1 -0
  265. package/dist/assets/pt_PT.6026aa4b.js +1 -0
  266. package/dist/assets/ro.93c0d8c1.js +1 -0
  267. package/dist/assets/ru.0222a174.js +1 -0
  268. package/dist/assets/ru_UA.a32ee2f1.js +1 -0
  269. package/dist/assets/sk.42921e02.js +1 -0
  270. package/dist/assets/sl.2cdea3d5.js +1 -0
  271. package/dist/assets/sr.204807ce.js +1 -0
  272. package/dist/assets/sr_Latn.be10667b.js +1 -0
  273. package/dist/assets/sv.6ace6bc0.js +1 -0
  274. package/dist/assets/th.cb59bba6.js +1 -0
  275. package/dist/assets/tr.6fe122f4.js +1 -0
  276. package/dist/assets/uk.812ee10f.js +1 -0
  277. package/dist/assets/vi.33e14ba9.js +1 -0
  278. package/dist/assets/zh_CN.f23435f2.js +1 -0
  279. package/dist/assets/zh_HK.efe9e5bf.js +1 -0
  280. package/dist/assets/zh_SG.25dc8c02.js +1 -0
  281. package/dist/assets/zh_TW.a566ed25.js +1 -0
  282. package/dist/css/themes/BusyIndicator.css +1 -1
  283. package/dist/css/themes/CheckBox.css +1 -1
  284. package/dist/css/themes/Icon.css +1 -1
  285. package/dist/css/themes/ProgressIndicator.css +1 -1
  286. package/dist/css/themes/StepInput.css +1 -1
  287. package/dist/css/themes/TextArea.css +1 -1
  288. package/dist/custom-elements.json +1 -1
  289. package/dist/features/ColorPaletteMoreColors.js.map +1 -1
  290. package/dist/features/InputElementsFormSupport.d.ts +1 -1
  291. package/dist/features/InputElementsFormSupport.js.map +1 -1
  292. package/dist/features/InputSuggestions.js.map +1 -1
  293. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  294. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  295. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  296. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  297. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  298. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  299. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  300. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  301. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  302. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  303. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  304. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  305. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  306. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  307. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  308. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  309. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  310. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  311. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  312. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  313. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  314. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  315. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  316. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  317. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  318. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  319. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  320. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  321. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  322. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  323. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  324. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  325. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  326. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  327. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  328. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  329. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  330. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  331. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  332. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  333. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  334. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  335. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  336. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  337. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  338. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  339. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  340. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  341. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  342. package/dist/generated/i18n/i18n-defaults.d.ts +1 -2
  343. package/dist/generated/i18n/i18n-defaults.js +1 -2
  344. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  345. package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
  346. package/dist/generated/templates/ComboBoxTemplate.lit.js +1 -1
  347. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  348. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +1 -1
  349. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  350. package/dist/generated/templates/SplitButtonTemplate.lit.js +2 -1
  351. package/dist/generated/templates/StepInputTemplate.lit.js +2 -2
  352. package/dist/generated/templates/TimePickerTemplate.lit.js +1 -1
  353. package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
  354. package/dist/generated/templates/TreeItemBaseTemplate.lit.js +3 -3
  355. package/dist/generated/templates/TreeItemCustomTemplate.lit.js +3 -3
  356. package/dist/generated/templates/TreeItemTemplate.lit.js +3 -3
  357. package/dist/generated/themes/Avatar.css.js.map +1 -1
  358. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  359. package/dist/generated/themes/Badge.css.js.map +1 -1
  360. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  361. package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
  362. package/dist/generated/themes/BrowserScrollbar.css.js.map +1 -1
  363. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  364. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  365. package/dist/generated/themes/Button.css.js.map +1 -1
  366. package/dist/generated/themes/Calendar.css.js.map +1 -1
  367. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  368. package/dist/generated/themes/Card.css.js.map +1 -1
  369. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  370. package/dist/generated/themes/Carousel.css.js.map +1 -1
  371. package/dist/generated/themes/CheckBox.css.js +1 -1
  372. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  373. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  374. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  375. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  376. package/dist/generated/themes/ColorPaletteStaticArea.css.js.map +1 -1
  377. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  378. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  379. package/dist/generated/themes/ComboBoxPopover.css.js.map +1 -1
  380. package/dist/generated/themes/CustomListItem.css.js.map +1 -1
  381. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  382. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  383. package/dist/generated/themes/DateRangePicker.css.js.map +1 -1
  384. package/dist/generated/themes/DateTimePicker.css.js.map +1 -1
  385. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  386. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  387. package/dist/generated/themes/Dialog.css.js.map +1 -1
  388. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  389. package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -1
  390. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  391. package/dist/generated/themes/Icon.css.js +1 -1
  392. package/dist/generated/themes/Icon.css.js.map +1 -1
  393. package/dist/generated/themes/Input.css.js.map +1 -1
  394. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  395. package/dist/generated/themes/InvisibleTextStyles.css.js.map +1 -1
  396. package/dist/generated/themes/Label.css.js.map +1 -1
  397. package/dist/generated/themes/Link.css.js.map +1 -1
  398. package/dist/generated/themes/List.css.js.map +1 -1
  399. package/dist/generated/themes/ListItem.css.js.map +1 -1
  400. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  401. package/dist/generated/themes/Menu.css.js.map +1 -1
  402. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  403. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  404. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  405. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  406. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  407. package/dist/generated/themes/Panel.css.js.map +1 -1
  408. package/dist/generated/themes/Popover.css.js.map +1 -1
  409. package/dist/generated/themes/Popup.css.js.map +1 -1
  410. package/dist/generated/themes/PopupGlobal.css.js.map +1 -1
  411. package/dist/generated/themes/PopupStaticAreaStyles.css.js.map +1 -1
  412. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  413. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  414. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  415. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  416. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  417. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  418. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  419. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  420. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  421. package/dist/generated/themes/Select.css.js.map +1 -1
  422. package/dist/generated/themes/SelectPopover.css.js.map +1 -1
  423. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  424. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  425. package/dist/generated/themes/StepInput.css.js +1 -1
  426. package/dist/generated/themes/StepInput.css.js.map +1 -1
  427. package/dist/generated/themes/Suggestions.css.js.map +1 -1
  428. package/dist/generated/themes/Switch.css.js.map +1 -1
  429. package/dist/generated/themes/Tab.css.js.map +1 -1
  430. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  431. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  432. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  433. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  434. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  435. package/dist/generated/themes/TabSeparatorInStrip.css.js.map +1 -1
  436. package/dist/generated/themes/Table.css.js.map +1 -1
  437. package/dist/generated/themes/TableCell.css.js.map +1 -1
  438. package/dist/generated/themes/TableColumn.css.js.map +1 -1
  439. package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
  440. package/dist/generated/themes/TableRow.css.js.map +1 -1
  441. package/dist/generated/themes/TapHighlightColor.css.js.map +1 -1
  442. package/dist/generated/themes/TextArea.css.js +1 -1
  443. package/dist/generated/themes/TextArea.css.js.map +1 -1
  444. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  445. package/dist/generated/themes/TimePickerPopover.css.js.map +1 -1
  446. package/dist/generated/themes/TimeSelection.css.js.map +1 -1
  447. package/dist/generated/themes/Title.css.js.map +1 -1
  448. package/dist/generated/themes/Toast.css.js.map +1 -1
  449. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  450. package/dist/generated/themes/Token.css.js.map +1 -1
  451. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  452. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  453. package/dist/generated/themes/Tree.css.js.map +1 -1
  454. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  455. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  456. package/dist/generated/themes/WheelSlider.css.js.map +1 -1
  457. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  458. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  459. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  460. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  461. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  462. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  463. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  464. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  465. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  468. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  469. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  470. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  471. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  472. package/dist/i18n/messagebundle.properties +0 -3
  473. package/dist/i18n/messagebundle_ar.properties +0 -2
  474. package/dist/i18n/messagebundle_bg.properties +0 -2
  475. package/dist/i18n/messagebundle_ca.properties +0 -2
  476. package/dist/i18n/messagebundle_cs.properties +0 -2
  477. package/dist/i18n/messagebundle_cy.properties +0 -2
  478. package/dist/i18n/messagebundle_da.properties +0 -2
  479. package/dist/i18n/messagebundle_de.properties +0 -2
  480. package/dist/i18n/messagebundle_el.properties +0 -2
  481. package/dist/i18n/messagebundle_en.properties +0 -2
  482. package/dist/i18n/messagebundle_en_GB.properties +0 -2
  483. package/dist/i18n/messagebundle_en_US_sappsd.properties +0 -2
  484. package/dist/i18n/messagebundle_en_US_saprigi.properties +0 -2
  485. package/dist/i18n/messagebundle_en_US_saptrc.properties +0 -2
  486. package/dist/i18n/messagebundle_es.properties +0 -2
  487. package/dist/i18n/messagebundle_es_MX.properties +0 -2
  488. package/dist/i18n/messagebundle_et.properties +0 -2
  489. package/dist/i18n/messagebundle_fi.properties +0 -2
  490. package/dist/i18n/messagebundle_fr.properties +0 -2
  491. package/dist/i18n/messagebundle_fr_CA.properties +0 -2
  492. package/dist/i18n/messagebundle_hi.properties +0 -2
  493. package/dist/i18n/messagebundle_hr.properties +0 -2
  494. package/dist/i18n/messagebundle_hu.properties +0 -2
  495. package/dist/i18n/messagebundle_id.properties +0 -2
  496. package/dist/i18n/messagebundle_it.properties +0 -2
  497. package/dist/i18n/messagebundle_iw.properties +0 -2
  498. package/dist/i18n/messagebundle_ja.properties +0 -2
  499. package/dist/i18n/messagebundle_kk.properties +0 -2
  500. package/dist/i18n/messagebundle_ko.properties +0 -2
  501. package/dist/i18n/messagebundle_lt.properties +0 -2
  502. package/dist/i18n/messagebundle_lv.properties +0 -2
  503. package/dist/i18n/messagebundle_ms.properties +0 -2
  504. package/dist/i18n/messagebundle_nl.properties +0 -2
  505. package/dist/i18n/messagebundle_no.properties +0 -2
  506. package/dist/i18n/messagebundle_pl.properties +0 -2
  507. package/dist/i18n/messagebundle_pt.properties +0 -2
  508. package/dist/i18n/messagebundle_pt_PT.properties +0 -2
  509. package/dist/i18n/messagebundle_ro.properties +0 -2
  510. package/dist/i18n/messagebundle_ru.properties +0 -2
  511. package/dist/i18n/messagebundle_sh.properties +0 -2
  512. package/dist/i18n/messagebundle_sk.properties +0 -2
  513. package/dist/i18n/messagebundle_sl.properties +0 -2
  514. package/dist/i18n/messagebundle_sv.properties +0 -2
  515. package/dist/i18n/messagebundle_th.properties +0 -2
  516. package/dist/i18n/messagebundle_tr.properties +0 -2
  517. package/dist/i18n/messagebundle_uk.properties +0 -2
  518. package/dist/i18n/messagebundle_vi.properties +0 -2
  519. package/dist/i18n/messagebundle_zh_CN.properties +0 -2
  520. package/dist/i18n/messagebundle_zh_TW.properties +0 -2
  521. package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
  522. package/dist/popup-utils/PopoverRegistry.js.map +1 -1
  523. package/dist/timepicker-utils/TimeSlider.js.map +1 -1
  524. package/dist/types/AvatarColorScheme.js.map +1 -1
  525. package/dist/types/AvatarGroupType.js.map +1 -1
  526. package/dist/types/AvatarShape.js.map +1 -1
  527. package/dist/types/AvatarSize.js.map +1 -1
  528. package/dist/types/BreadcrumbsDesign.js.map +1 -1
  529. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -1
  530. package/dist/types/BusyIndicatorSize.js.map +1 -1
  531. package/dist/types/ButtonDesign.js.map +1 -1
  532. package/dist/types/CalendarPickersMode.js.map +1 -1
  533. package/dist/types/CalendarSelectionMode.js.map +1 -1
  534. package/dist/types/CarouselArrowsPlacement.js.map +1 -1
  535. package/dist/types/CarouselPageIndicatorStyle.js.map +1 -1
  536. package/dist/types/ComboBoxFilter.js.map +1 -1
  537. package/dist/types/HasPopup.js.map +1 -1
  538. package/dist/types/IconDesign.js.map +1 -1
  539. package/dist/types/InputType.js.map +1 -1
  540. package/dist/types/LinkDesign.js.map +1 -1
  541. package/dist/types/ListGrowingMode.js.map +1 -1
  542. package/dist/types/ListItemType.js.map +1 -1
  543. package/dist/types/ListMode.js.map +1 -1
  544. package/dist/types/ListSeparators.js.map +1 -1
  545. package/dist/types/MessageStripDesign.js.map +1 -1
  546. package/dist/types/PanelAccessibleRole.js.map +1 -1
  547. package/dist/types/PopoverHorizontalAlign.d.ts +4 -4
  548. package/dist/types/PopoverHorizontalAlign.js +4 -4
  549. package/dist/types/PopoverHorizontalAlign.js.map +1 -1
  550. package/dist/types/PopoverPlacementType.js.map +1 -1
  551. package/dist/types/PopoverVerticalAlign.js.map +1 -1
  552. package/dist/types/PopupAccessibleRole.js.map +1 -1
  553. package/dist/types/Priority.js.map +1 -1
  554. package/dist/types/SemanticColor.js.map +1 -1
  555. package/dist/types/SwitchDesign.js.map +1 -1
  556. package/dist/types/TabContainerBackgroundDesign.js.map +1 -1
  557. package/dist/types/TabContainerTabsPlacement.js.map +1 -1
  558. package/dist/types/TabLayout.js.map +1 -1
  559. package/dist/types/TableColumnPopinDisplay.js.map +1 -1
  560. package/dist/types/TableGrowingMode.js.map +1 -1
  561. package/dist/types/TableMode.js.map +1 -1
  562. package/dist/types/TableRowType.js.map +1 -1
  563. package/dist/types/TabsOverflowMode.js.map +1 -1
  564. package/dist/types/TitleLevel.js.map +1 -1
  565. package/dist/types/ToastPlacement.js.map +1 -1
  566. package/dist/types/WrappingType.js.map +1 -1
  567. package/package.json +8 -7
  568. package/src/Button.hbs +1 -1
  569. package/src/ComboBox.hbs +9 -10
  570. package/src/DatePicker.hbs +12 -12
  571. package/src/MultiComboBox.hbs +10 -11
  572. package/src/MultiInput.hbs +7 -8
  573. package/src/SplitButton.hbs +3 -1
  574. package/src/StepInput.hbs +2 -2
  575. package/src/TimePicker.hbs +10 -10
  576. package/src/TreeItemBase.hbs +2 -3
  577. package/src/i18n/messagebundle.properties +0 -3
  578. package/src/i18n/messagebundle_ar.properties +0 -2
  579. package/src/i18n/messagebundle_bg.properties +0 -2
  580. package/src/i18n/messagebundle_ca.properties +0 -2
  581. package/src/i18n/messagebundle_cs.properties +0 -2
  582. package/src/i18n/messagebundle_cy.properties +0 -2
  583. package/src/i18n/messagebundle_da.properties +0 -2
  584. package/src/i18n/messagebundle_de.properties +0 -2
  585. package/src/i18n/messagebundle_el.properties +0 -2
  586. package/src/i18n/messagebundle_en.properties +0 -2
  587. package/src/i18n/messagebundle_en_GB.properties +0 -2
  588. package/src/i18n/messagebundle_en_US_sappsd.properties +0 -2
  589. package/src/i18n/messagebundle_en_US_saprigi.properties +0 -2
  590. package/src/i18n/messagebundle_en_US_saptrc.properties +0 -2
  591. package/src/i18n/messagebundle_es.properties +0 -2
  592. package/src/i18n/messagebundle_es_MX.properties +0 -2
  593. package/src/i18n/messagebundle_et.properties +0 -2
  594. package/src/i18n/messagebundle_fi.properties +0 -2
  595. package/src/i18n/messagebundle_fr.properties +0 -2
  596. package/src/i18n/messagebundle_fr_CA.properties +0 -2
  597. package/src/i18n/messagebundle_hi.properties +0 -2
  598. package/src/i18n/messagebundle_hr.properties +0 -2
  599. package/src/i18n/messagebundle_hu.properties +0 -2
  600. package/src/i18n/messagebundle_id.properties +0 -2
  601. package/src/i18n/messagebundle_it.properties +0 -2
  602. package/src/i18n/messagebundle_iw.properties +0 -2
  603. package/src/i18n/messagebundle_ja.properties +0 -2
  604. package/src/i18n/messagebundle_kk.properties +0 -2
  605. package/src/i18n/messagebundle_ko.properties +0 -2
  606. package/src/i18n/messagebundle_lt.properties +0 -2
  607. package/src/i18n/messagebundle_lv.properties +0 -2
  608. package/src/i18n/messagebundle_ms.properties +0 -2
  609. package/src/i18n/messagebundle_nl.properties +0 -2
  610. package/src/i18n/messagebundle_no.properties +0 -2
  611. package/src/i18n/messagebundle_pl.properties +0 -2
  612. package/src/i18n/messagebundle_pt.properties +0 -2
  613. package/src/i18n/messagebundle_pt_PT.properties +0 -2
  614. package/src/i18n/messagebundle_ro.properties +0 -2
  615. package/src/i18n/messagebundle_ru.properties +0 -2
  616. package/src/i18n/messagebundle_sh.properties +0 -2
  617. package/src/i18n/messagebundle_sk.properties +0 -2
  618. package/src/i18n/messagebundle_sl.properties +0 -2
  619. package/src/i18n/messagebundle_sv.properties +0 -2
  620. package/src/i18n/messagebundle_th.properties +0 -2
  621. package/src/i18n/messagebundle_tr.properties +0 -2
  622. package/src/i18n/messagebundle_uk.properties +0 -2
  623. package/src/i18n/messagebundle_vi.properties +0 -2
  624. package/src/i18n/messagebundle_zh_CN.properties +0 -2
  625. package/src/i18n/messagebundle_zh_TW.properties +0 -2
  626. package/src/themes/BusyIndicator.css +1 -0
  627. package/src/themes/CheckBox.css +1 -0
  628. package/src/themes/Icon.css +0 -4
  629. package/src/themes/ProgressIndicator.css +1 -1
  630. package/src/themes/StepInput.css +1 -0
  631. package/src/themes/TextArea.css +6 -3
  632. package/src/themes/sap_horizon/CheckBox-parameters.css +0 -1
  633. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +0 -1
  634. package/tsconfig.json +1 -0
  635. package/.dev-server-port +0 -1
  636. package/dist/DurationPicker.js +0 -312
  637. package/dist/assets/DurationPicker.d4e0845b.css +0 -1
  638. package/dist/assets/Popover.bde799ce.css +0 -1
  639. package/dist/assets/SAP-icons-TNT.9ee5f818.js +0 -1
  640. package/dist/assets/SAP-icons-business-suite.5e4d496e.js +0 -1
  641. package/dist/assets/SAP-icons-business-suite.7313c1b1.js +0 -1
  642. package/dist/assets/SAP-icons.216218d4.js +0 -1
  643. package/dist/assets/SAP-icons.4f7faebd.js +0 -1
  644. package/dist/assets/ar.c8a9c7c2.js +0 -1
  645. package/dist/assets/ar_EG.bc0b8c4a.js +0 -1
  646. package/dist/assets/ar_SA.e02fea0b.js +0 -1
  647. package/dist/assets/bg.1c4cbc9c.js +0 -1
  648. package/dist/assets/ca.a4e7480a.js +0 -1
  649. package/dist/assets/cs.e731c541.js +0 -1
  650. package/dist/assets/da.718b3439.js +0 -1
  651. package/dist/assets/de.ae411210.js +0 -1
  652. package/dist/assets/de_AT.cb17127f.js +0 -1
  653. package/dist/assets/de_CH.b0eaf2ed.js +0 -1
  654. package/dist/assets/el.7daeddb3.js +0 -1
  655. package/dist/assets/el_CY.dac8ac43.js +0 -1
  656. package/dist/assets/en.baed18b1.js +0 -1
  657. package/dist/assets/en_AU.8c929d24.js +0 -1
  658. package/dist/assets/en_GB.4e429aa6.js +0 -1
  659. package/dist/assets/en_HK.529b415b.js +0 -1
  660. package/dist/assets/en_IE.ff068141.js +0 -1
  661. package/dist/assets/en_IN.30d13a3a.js +0 -1
  662. package/dist/assets/en_NZ.2529c280.js +0 -1
  663. package/dist/assets/en_PG.649a81d5.js +0 -1
  664. package/dist/assets/en_SG.1fbf47e1.js +0 -1
  665. package/dist/assets/en_ZA.bb83c383.js +0 -1
  666. package/dist/assets/es.5d010a1f.js +0 -1
  667. package/dist/assets/es_AR.7f372ffe.js +0 -1
  668. package/dist/assets/es_BO.7ba05a1b.js +0 -1
  669. package/dist/assets/es_CL.a37af7ca.js +0 -1
  670. package/dist/assets/es_CO.36557bc1.js +0 -1
  671. package/dist/assets/es_MX.0539dea0.js +0 -1
  672. package/dist/assets/es_PE.925f6359.js +0 -1
  673. package/dist/assets/es_UY.c3cd8bb4.js +0 -1
  674. package/dist/assets/es_VE.6ee9a7fe.js +0 -1
  675. package/dist/assets/et.90440de4.js +0 -1
  676. package/dist/assets/fa.5717a297.js +0 -1
  677. package/dist/assets/fi.1bfca1c3.js +0 -1
  678. package/dist/assets/fr.491d3e0c.js +0 -1
  679. package/dist/assets/fr_BE.6ccfd56c.js +0 -1
  680. package/dist/assets/fr_CA.ffe12267.js +0 -1
  681. package/dist/assets/fr_CH.5d77b4bc.js +0 -1
  682. package/dist/assets/fr_LU.c07815db.js +0 -1
  683. package/dist/assets/he.79f10a9d.js +0 -1
  684. package/dist/assets/hi.29863484.js +0 -1
  685. package/dist/assets/hr.99813023.js +0 -1
  686. package/dist/assets/hu.23e0baa9.js +0 -1
  687. package/dist/assets/id.4c30fabd.js +0 -1
  688. package/dist/assets/it.528a18da.js +0 -1
  689. package/dist/assets/it_CH.87ff79eb.js +0 -1
  690. package/dist/assets/ja.8846f5e2.js +0 -1
  691. package/dist/assets/kk.01694e17.js +0 -1
  692. package/dist/assets/ko.d3b0053b.js +0 -1
  693. package/dist/assets/lt.a74d5456.js +0 -1
  694. package/dist/assets/lv.6831c2cc.js +0 -1
  695. package/dist/assets/messagebundle_ar.74efb031.js +0 -1
  696. package/dist/assets/messagebundle_bg.369c6fc8.js +0 -1
  697. package/dist/assets/messagebundle_ca.a3cd4b52.js +0 -1
  698. package/dist/assets/messagebundle_cs.289421ac.js +0 -1
  699. package/dist/assets/messagebundle_cy.b1830522.js +0 -1
  700. package/dist/assets/messagebundle_da.c05fe259.js +0 -1
  701. package/dist/assets/messagebundle_de.8a4032cc.js +0 -1
  702. package/dist/assets/messagebundle_el.7c63c645.js +0 -1
  703. package/dist/assets/messagebundle_en.6e890ca9.js +0 -1
  704. package/dist/assets/messagebundle_en_GB.6a665cc2.js +0 -1
  705. package/dist/assets/messagebundle_en_US_sappsd.9968eca8.js +0 -1
  706. package/dist/assets/messagebundle_en_US_saptrc.ce217732.js +0 -1
  707. package/dist/assets/messagebundle_es.0f0c4cdc.js +0 -1
  708. package/dist/assets/messagebundle_es_MX.f88d6e93.js +0 -1
  709. package/dist/assets/messagebundle_et.6e83e7fa.js +0 -1
  710. package/dist/assets/messagebundle_fi.ebcedd15.js +0 -1
  711. package/dist/assets/messagebundle_fr.f0c09c02.js +0 -1
  712. package/dist/assets/messagebundle_fr_CA.241e035f.js +0 -1
  713. package/dist/assets/messagebundle_hi.ea9222e3.js +0 -1
  714. package/dist/assets/messagebundle_hr.29b90b8a.js +0 -1
  715. package/dist/assets/messagebundle_hu.28f6367c.js +0 -1
  716. package/dist/assets/messagebundle_it.ef9f06fc.js +0 -1
  717. package/dist/assets/messagebundle_iw.52eeba6c.js +0 -1
  718. package/dist/assets/messagebundle_ja.54f39fb4.js +0 -1
  719. package/dist/assets/messagebundle_kk.4795b8bf.js +0 -1
  720. package/dist/assets/messagebundle_ko.298dee97.js +0 -1
  721. package/dist/assets/messagebundle_lt.50d45929.js +0 -1
  722. package/dist/assets/messagebundle_lv.6deb88b8.js +0 -1
  723. package/dist/assets/messagebundle_ms.0eb3e9fb.js +0 -1
  724. package/dist/assets/messagebundle_nl.d86b913f.js +0 -1
  725. package/dist/assets/messagebundle_no.4b4b68f9.js +0 -1
  726. package/dist/assets/messagebundle_pl.90d2d216.js +0 -1
  727. package/dist/assets/messagebundle_pt.682bdce3.js +0 -1
  728. package/dist/assets/messagebundle_pt_PT.5931734e.js +0 -1
  729. package/dist/assets/messagebundle_ro.c8b49647.js +0 -1
  730. package/dist/assets/messagebundle_ru.03b05c74.js +0 -1
  731. package/dist/assets/messagebundle_sh.d85d5fca.js +0 -1
  732. package/dist/assets/messagebundle_sk.0c356651.js +0 -1
  733. package/dist/assets/messagebundle_sl.6fbd00d2.js +0 -1
  734. package/dist/assets/messagebundle_sv.fd3992b5.js +0 -1
  735. package/dist/assets/messagebundle_th.69c4b78b.js +0 -1
  736. package/dist/assets/messagebundle_tr.f5e05dea.js +0 -1
  737. package/dist/assets/messagebundle_uk.8fe7f052.js +0 -1
  738. package/dist/assets/messagebundle_uk.e712215f.js +0 -1
  739. package/dist/assets/messagebundle_vi.dfccc988.js +0 -1
  740. package/dist/assets/messagebundle_zh_CN.0bec6825.js +0 -1
  741. package/dist/assets/messagebundle_zh_TW.be5ac4ff.js +0 -1
  742. package/dist/assets/ms.da64ef13.js +0 -1
  743. package/dist/assets/nb.06945878.js +0 -1
  744. package/dist/assets/nl.d0a7a73f.js +0 -1
  745. package/dist/assets/nl_BE.70dbb313.js +0 -1
  746. package/dist/assets/parameters-bundle.css.06915823.js +0 -1
  747. package/dist/assets/parameters-bundle.css.0fbb157c.js +0 -1
  748. package/dist/assets/parameters-bundle.css.1472a695.js +0 -1
  749. package/dist/assets/parameters-bundle.css.27f47e2c.js +0 -1
  750. package/dist/assets/parameters-bundle.css.3d177072.js +0 -1
  751. package/dist/assets/parameters-bundle.css.555b94dc.js +0 -1
  752. package/dist/assets/parameters-bundle.css.568a0fcb.js +0 -1
  753. package/dist/assets/parameters-bundle.css.83dc09a3.js +0 -1
  754. package/dist/assets/parameters-bundle.css.998f5591.js +0 -1
  755. package/dist/assets/parameters-bundle.css.aa4080ac.js +0 -1
  756. package/dist/assets/parameters-bundle.css.c5191133.js +0 -1
  757. package/dist/assets/parameters-bundle.css.dbd9833e.js +0 -1
  758. package/dist/assets/parameters-bundle.css.e59e43e9.js +0 -1
  759. package/dist/assets/parameters-bundle.css.ecedad1a.js +0 -1
  760. package/dist/assets/pl.695e03e0.js +0 -1
  761. package/dist/assets/pt.c917a469.js +0 -1
  762. package/dist/assets/pt_PT.0a89cd6c.js +0 -1
  763. package/dist/assets/ro.862460c6.js +0 -1
  764. package/dist/assets/ru.d1fa0fbb.js +0 -1
  765. package/dist/assets/ru_UA.37f83cbb.js +0 -1
  766. package/dist/assets/sk.c3dcbb2e.js +0 -1
  767. package/dist/assets/sl.a8e1c9c9.js +0 -1
  768. package/dist/assets/sr.8153af77.js +0 -1
  769. package/dist/assets/sr_Latn.99cb0a61.js +0 -1
  770. package/dist/assets/sv.bc115d54.js +0 -1
  771. package/dist/assets/th.688dbee7.js +0 -1
  772. package/dist/assets/tr.b0d6f870.js +0 -1
  773. package/dist/assets/uk.ab69fcaa.js +0 -1
  774. package/dist/assets/vi.5516bb07.js +0 -1
  775. package/dist/assets/zh_CN.f1932ba8.js +0 -1
  776. package/dist/assets/zh_HK.2a75a13d.js +0 -1
  777. package/dist/assets/zh_SG.bd55647f.js +0 -1
  778. package/dist/assets/zh_TW.2cab47aa.js +0 -1
  779. package/src/Assets-static.ts +0 -6
  780. package/src/Assets.ts +0 -7
  781. package/src/Avatar.ts +0 -422
  782. package/src/AvatarGroup.ts +0 -609
  783. package/src/Badge.ts +0 -133
  784. package/src/Breadcrumbs.ts +0 -665
  785. package/src/BreadcrumbsItem.ts +0 -93
  786. package/src/BusyIndicator.ts +0 -247
  787. package/src/Button.ts +0 -491
  788. package/src/Calendar.ts +0 -523
  789. package/src/CalendarDate.ts +0 -37
  790. package/src/CalendarHeader.ts +0 -205
  791. package/src/CalendarPart.ts +0 -100
  792. package/src/Card.ts +0 -139
  793. package/src/CardHeader.ts +0 -265
  794. package/src/Carousel.ts +0 -724
  795. package/src/CheckBox.ts +0 -462
  796. package/src/ColorPalette.ts +0 -492
  797. package/src/ColorPaletteItem.ts +0 -116
  798. package/src/ColorPalettePopover.ts +0 -234
  799. package/src/ColorPicker.ts +0 -524
  800. package/src/ComboBox.ts +0 -1229
  801. package/src/ComboBoxGroupItem.ts +0 -52
  802. package/src/ComboBoxItem.ts +0 -69
  803. package/src/CustomListItem.ts +0 -85
  804. package/src/DateComponentBase.ts +0 -173
  805. package/src/DatePicker.ts +0 -882
  806. package/src/DateRangePicker.ts +0 -370
  807. package/src/DateTimePicker.ts +0 -431
  808. package/src/DayPicker.ts +0 -805
  809. package/src/Dialog.ts +0 -702
  810. package/src/DurationPicker.js +0 -312
  811. package/src/FileUploader.ts +0 -511
  812. package/src/Filters.ts +0 -28
  813. package/src/GroupHeaderListItem.ts +0 -79
  814. package/src/Icon.ts +0 -423
  815. package/src/Input.ts +0 -1757
  816. package/src/Interfaces.ts +0 -202
  817. package/src/Label.ts +0 -136
  818. package/src/Link.ts +0 -397
  819. package/src/List.ts +0 -1129
  820. package/src/ListItem.ts +0 -498
  821. package/src/ListItemBase.ts +0 -165
  822. package/src/Menu.ts +0 -597
  823. package/src/MenuItem.ts +0 -169
  824. package/src/MessageStrip.ts +0 -232
  825. package/src/MonthPicker.ts +0 -345
  826. package/src/MultiComboBox.ts +0 -1698
  827. package/src/MultiComboBoxGroupItem.ts +0 -53
  828. package/src/MultiComboBoxItem.ts +0 -38
  829. package/src/MultiInput.ts +0 -379
  830. package/src/Option.ts +0 -119
  831. package/src/Panel.ts +0 -437
  832. package/src/Popover.ts +0 -850
  833. package/src/Popup.ts +0 -648
  834. package/src/ProgressIndicator.ts +0 -224
  835. package/src/RadioButton.ts +0 -518
  836. package/src/RadioButtonGroup.ts +0 -236
  837. package/src/RangeSlider.ts +0 -907
  838. package/src/RatingIndicator.ts +0 -315
  839. package/src/ResponsivePopover.ts +0 -227
  840. package/src/SegmentedButton.ts +0 -309
  841. package/src/SegmentedButtonItem.ts +0 -104
  842. package/src/Select.ts +0 -911
  843. package/src/Slider.ts +0 -364
  844. package/src/SliderBase.ts +0 -760
  845. package/src/SplitButton.ts +0 -410
  846. package/src/StandardListItem.ts +0 -212
  847. package/src/StepInput.ts +0 -636
  848. package/src/SuggestionGroupItem.ts +0 -49
  849. package/src/SuggestionItem.ts +0 -132
  850. package/src/SuggestionListItem.ts +0 -73
  851. package/src/Switch.ts +0 -291
  852. package/src/Tab.ts +0 -469
  853. package/src/TabContainer.ts +0 -1328
  854. package/src/TabSeparator.ts +0 -89
  855. package/src/Table.ts +0 -1289
  856. package/src/TableCell.ts +0 -71
  857. package/src/TableColumn.ts +0 -128
  858. package/src/TableGroupRow.ts +0 -146
  859. package/src/TableRow.ts +0 -492
  860. package/src/TextArea.ts +0 -703
  861. package/src/TimePicker.ts +0 -155
  862. package/src/TimePickerBase.ts +0 -494
  863. package/src/TimeSelection.ts +0 -510
  864. package/src/Title.ts +0 -110
  865. package/src/Toast.ts +0 -226
  866. package/src/ToggleButton.ts +0 -74
  867. package/src/Token.ts +0 -237
  868. package/src/Tokenizer.ts +0 -737
  869. package/src/Tree.ts +0 -509
  870. package/src/TreeItem.ts +0 -90
  871. package/src/TreeItemBase.ts +0 -410
  872. package/src/TreeItemCustom.ts +0 -89
  873. package/src/TreeList.ts +0 -44
  874. package/src/WheelSlider.ts +0 -432
  875. package/src/YearPicker.ts +0 -386
  876. package/src/features/ColorPaletteMoreColors.ts +0 -45
  877. package/src/features/InputElementsFormSupport.ts +0 -141
  878. package/src/features/InputSuggestions.ts +0 -669
  879. package/src/popup-utils/OpenedPopupsRegistry.ts +0 -76
  880. package/src/popup-utils/PopoverRegistry.ts +0 -166
  881. package/src/timepicker-utils/TimeSlider.ts +0 -120
  882. package/src/types/AvatarColorScheme.ts +0 -89
  883. package/src/types/AvatarGroupType.ts +0 -28
  884. package/src/types/AvatarShape.ts +0 -26
  885. package/src/types/AvatarSize.ts +0 -52
  886. package/src/types/BreadcrumbsDesign.ts +0 -28
  887. package/src/types/BreadcrumbsSeparatorStyle.ts +0 -55
  888. package/src/types/BusyIndicatorSize.ts +0 -33
  889. package/src/types/ButtonDesign.ts +0 -54
  890. package/src/types/CalendarPickersMode.ts +0 -34
  891. package/src/types/CalendarSelectionMode.ts +0 -33
  892. package/src/types/CarouselArrowsPlacement.ts +0 -26
  893. package/src/types/CarouselPageIndicatorStyle.ts +0 -27
  894. package/src/types/ComboBoxFilter.ts +0 -40
  895. package/src/types/HasPopup.ts +0 -47
  896. package/src/types/IconDesign.ts +0 -68
  897. package/src/types/InputType.ts +0 -54
  898. package/src/types/LinkDesign.ts +0 -33
  899. package/src/types/ListGrowingMode.ts +0 -34
  900. package/src/types/ListItemType.ts +0 -40
  901. package/src/types/ListMode.ts +0 -63
  902. package/src/types/ListSeparators.ts +0 -32
  903. package/src/types/MessageStripDesign.ts +0 -40
  904. package/src/types/PanelAccessibleRole.ts +0 -37
  905. package/src/types/PopoverHorizontalAlign.ts +0 -40
  906. package/src/types/PopoverPlacementType.ts +0 -40
  907. package/src/types/PopoverVerticalAlign.ts +0 -40
  908. package/src/types/PopupAccessibleRole.ts +0 -34
  909. package/src/types/Priority.ts +0 -40
  910. package/src/types/SemanticColor.ts +0 -47
  911. package/src/types/SwitchDesign.ts +0 -26
  912. package/src/types/TabContainerBackgroundDesign.ts +0 -33
  913. package/src/types/TabContainerTabsPlacement.ts +0 -26
  914. package/src/types/TabLayout.ts +0 -26
  915. package/src/types/TableColumnPopinDisplay.ts +0 -26
  916. package/src/types/TableGrowingMode.ts +0 -34
  917. package/src/types/TableMode.ts +0 -33
  918. package/src/types/TableRowType.ts +0 -26
  919. package/src/types/TabsOverflowMode.ts +0 -26
  920. package/src/types/TitleLevel.ts +0 -54
  921. package/src/types/ToastPlacement.ts +0 -77
  922. package/src/types/WrappingType.ts +0 -26
  923. /package/config/postcss.components/{postcss.config.js → postcss.config.cjs} +0 -0
  924. /package/config/postcss.themes/{postcss.config.js → postcss.config.cjs} +0 -0
  925. /package/dist/assets/{kitchen-scripts.7e433e08.css → kitchen-styles.7e433e08.css} +0 -0
  926. /package/{package-scripts.js → package-scripts.cjs} +0 -0
@@ -1,1328 +0,0 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import type { StyleData } from "@ui5/webcomponents-base/dist/types.js";
3
- import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
- import event from "@ui5/webcomponents-base/dist/decorators/event.js";
5
- import property from "@ui5/webcomponents-base/dist/decorators/property.js";
6
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
7
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
8
- import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
9
- import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
10
- import slideDown from "@ui5/webcomponents-base/dist/animations/slideDown.js";
11
- import slideUp from "@ui5/webcomponents-base/dist/animations/slideUp.js";
12
- import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
13
- import AnimationMode from "@ui5/webcomponents-base/dist/types/AnimationMode.js";
14
- import { getAnimationMode } from "@ui5/webcomponents-base/dist/config/AnimationMode.js";
15
- import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
16
- import {
17
- isSpace,
18
- isEnter,
19
- isDown,
20
- isRight,
21
- isLeft,
22
- isUp,
23
- } from "@ui5/webcomponents-base/dist/Keys.js";
24
- import MediaRange from "@ui5/webcomponents-base/dist/MediaRange.js";
25
- import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
26
- import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
27
- import "@ui5/webcomponents-icons/dist/slim-arrow-up.js";
28
- import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
29
- import {
30
- TABCONTAINER_PREVIOUS_ICON_ACC_NAME,
31
- TABCONTAINER_NEXT_ICON_ACC_NAME,
32
- TABCONTAINER_OVERFLOW_MENU_TITLE,
33
- TABCONTAINER_END_OVERFLOW,
34
- TABCONTAINER_POPOVER_CANCEL_BUTTON,
35
- TABCONTAINER_SUBTABS_DESCRIPTION,
36
- } from "./generated/i18n/i18n-defaults.js";
37
- import Button from "./Button.js";
38
- import Icon from "./Icon.js";
39
- import List from "./List.js";
40
- import type Tab from "./Tab.js";
41
- import type { ClickEventDetail } from "./List.js";
42
- import type CustomListItem from "./CustomListItem.js";
43
- import ResponsivePopover from "./ResponsivePopover.js";
44
- import TabContainerTabsPlacement from "./types/TabContainerTabsPlacement.js";
45
- import SemanticColor from "./types/SemanticColor.js";
46
- import TabContainerBackgroundDesign from "./types/TabContainerBackgroundDesign.js";
47
- import TabLayout from "./types/TabLayout.js";
48
- import TabsOverflowMode from "./types/TabsOverflowMode.js";
49
-
50
- // Templates
51
- import TabContainerTemplate from "./generated/templates/TabContainerTemplate.lit.js";
52
- import TabContainerPopoverTemplate from "./generated/templates/TabContainerPopoverTemplate.lit.js";
53
-
54
- // Styles
55
- import tabContainerCss from "./generated/themes/TabContainer.css.js";
56
- import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
57
-
58
- const tabStyles: Array<StyleData> = [];
59
- const staticAreaTabStyles: Array<StyleData> = [];
60
- const PAGE_UP_DOWN_SIZE = 5;
61
-
62
- interface ITab extends UI5Element {
63
- isSeparator: boolean;
64
- getTabInStripDomRef: () => ITab | null;
65
- stableDomRef: string;
66
- additionalText?: string;
67
- design?: SemanticColor;
68
- disabled?: boolean;
69
- icon?: string;
70
- isSingleClickArea?: boolean;
71
- requiresExpandButton?: boolean;
72
- selected?: boolean;
73
- subTabs?: Array<ITab>;
74
- tabs?: Array<ITab>
75
- text?: string;
76
- _tabIndex?: string;
77
- _hasOwnContent?: boolean;
78
- _level?: number;
79
- _selected?: boolean;
80
- _getElementInStrip?: () => ITab | null;
81
- _isInline?: boolean;
82
- _mixedMode?: boolean;
83
- _posinset?: number;
84
- _setsize?: number;
85
- _realTab?: Tab;
86
- _isTopLevelTab?: boolean;
87
- _style?: Record<string, any>;
88
- }
89
-
90
- type TabContainerTabSelectEventDetail = {
91
- tab: Tab;
92
- tabIndex: number;
93
- }
94
-
95
- interface TabContainerExpandButton extends Button {
96
- tab: Tab;
97
- }
98
-
99
- interface TabContainerTabInOverflow extends CustomListItem {
100
- _realTab: Tab;
101
- }
102
-
103
- /**
104
- * @class
105
- *
106
- * <h3 class="comment-api-title">Overview</h3>
107
- *
108
- * The <code>ui5-tabcontainer</code> represents a collection of tabs with associated content.
109
- * Navigation through the tabs changes the content display of the currently active content area.
110
- * A tab can be labeled with text only, or icons with text.
111
- *
112
- * <h3>Structure</h3>
113
- *
114
- * The <code>ui5-tabcontainer</code> can hold two types of entities:
115
- * <ul>
116
- * <li><code>ui5-tab</code> - contains all the information on an item (text and icon)</li>
117
- * <li><code>ui5-tab-separator</code> - used to separate tabs with a line</li>
118
- * </ul>
119
- *
120
- * <h3>Hierarchies</h3>
121
- * Multiple sub tabs could be placed underneath one main tab. Nesting allows deeper hierarchies with indentations
122
- * to indicate the level of each nested tab. When a tab has both sub tabs and own content its click area is split
123
- * to allow the user to display the content or alternatively to expand / collapse the list of sub tabs.
124
- *
125
- * <h3>CSS Shadow Parts</h3>
126
- *
127
- * <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
128
- * <br>
129
- * The <code>ui5-tabcontainer</code> exposes the following CSS Shadow Parts:
130
- * <ul>
131
- * <li>content - Used to style the content of the component</li>
132
- * </ul>
133
- *
134
- * <h3>Keyboard Handling</h3>
135
- *
136
- * <h4>Fast Navigation</h4>
137
- * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
138
- * In order to use this functionality, you need to import the following module:
139
- * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
140
- * <br><br>
141
- *
142
- * <h3>ES6 Module Import</h3>
143
- *
144
- * <code>import "@ui5/webcomponents/dist/TabContainer";</code>
145
- * <br>
146
- * <code>import "@ui5/webcomponents/dist/Tab";</code> (for <code>ui5-tab</code>)
147
- * <br>
148
- * <code>import "@ui5/webcomponents/dist/TabSeparator";</code> (for <code>ui5-tab-separator</code>)
149
- *
150
- * @constructor
151
- * @author SAP SE
152
- * @alias sap.ui.webc.main.TabContainer
153
- * @extends sap.ui.webc.base.UI5Element
154
- * @appenddocs sap.ui.webc.main.Tab sap.ui.webc.main.TabSeparator
155
- * @tagname ui5-tabcontainer
156
- * @public
157
- */
158
- @customElement({
159
- tag: "ui5-tabcontainer",
160
- languageAware: true,
161
- fastNavigation: true,
162
- styles: [tabStyles, tabContainerCss],
163
- staticAreaStyles: [ResponsivePopoverCommonCss, staticAreaTabStyles],
164
- renderer: litRender,
165
- template: TabContainerTemplate,
166
- staticAreaTemplate: TabContainerPopoverTemplate,
167
- dependencies: [
168
- Button,
169
- Icon,
170
- List,
171
- ResponsivePopover,
172
- ],
173
- })
174
- /**
175
- * Fired when a tab is selected.
176
- *
177
- * @event sap.ui.webc.main.TabContainer#tab-select
178
- * @param {HTMLElement} tab The selected <code>tab</code>.
179
- * @param {Integer} tabIndex The selected <code>tab</code> index in the flattened array of all tabs and their subTabs, provided by the <code>allItems</code> getter.
180
- * @public
181
- * @allowPreventDefault
182
- */
183
- @event("tab-select", {
184
- detail: {
185
- tab: { type: HTMLElement },
186
- tabIndex: { type: Number },
187
- },
188
- })
189
- class TabContainer extends UI5Element {
190
- /**
191
- * Defines whether the tabs are in a fixed state that is not
192
- * expandable/collapsible by user interaction.
193
- *
194
- * @type {boolean}
195
- * @name sap.ui.webc.main.TabContainer.prototype.fixed
196
- * @defaultvalue false
197
- * @public
198
- */
199
- @property({ type: Boolean })
200
- fixed!: boolean;
201
-
202
- /**
203
- * Defines whether the tab content is collapsed.
204
- *
205
- * @type {boolean}
206
- * @name sap.ui.webc.main.TabContainer.prototype.collapsed
207
- * @defaultvalue false
208
- * @public
209
- */
210
- @property({ type: Boolean })
211
- collapsed!: boolean;
212
-
213
- /**
214
- * Defines whether the overflow select list is displayed.
215
- * <br><br>
216
- * The overflow select list represents a list, where all tabs are displayed
217
- * so that it's easier for the user to select a specific tab.
218
- *
219
- * @type {boolean}
220
- * @name sap.ui.webc.main.TabContainer.prototype.showOverflow
221
- * @defaultvalue false
222
- * @public
223
- * @deprecated Since the introduction of TabsOverflowMode, overflows will always be visible if there is not enough space for all tabs,
224
- * all hidden tabs are moved to a select list in the respective overflows and are accessible via the <code>overflowButton</code> and / or <code>startOverflowButton</code> slots.
225
- */
226
- @property({ type: Boolean })
227
- showOverflow!: boolean;
228
-
229
- /**
230
- * Defines the alignment of the content and the <code>additionalText</code> of a tab.
231
- *
232
- * <br><br>
233
- * <b>Note:</b>
234
- * The content and the <code>additionalText</code> would be displayed vertically by default,
235
- * but when set to <code>Inline</code>, they would be displayed horizontally.
236
- *
237
- * <br><br>
238
- * Available options are:
239
- * <ul>
240
- * <li><code>Standard</code></li>
241
- * <li><code>Inline</code></li>
242
- * </ul>
243
- *
244
- * @type {sap.ui.webc.main.types.TabLayout}
245
- * @name sap.ui.webc.main.TabContainer.prototype.tabLayout
246
- * @defaultvalue "Standard"
247
- * @public
248
- */
249
- @property({ type: TabLayout, defaultValue: TabLayout.Standard })
250
- tabLayout!: TabLayout;
251
-
252
- /**
253
- * Defines the overflow mode of the header (the tab strip). If you have a large number of tabs, only the tabs that can fit on screen will be visible.
254
- * All other tabs that can 't fit on the screen are available in an overflow tab "More".
255
- *
256
- * <br><br>
257
- * <b>Note:</b>
258
- * Only one overflow at the end would be displayed by default,
259
- * but when set to <code>StartAndEnd</code>, there will be two overflows on both ends, and tab order will not change on tab selection.
260
- *
261
- * <br><br>
262
- * Available options are:
263
- * <ul>
264
- * <li><code>End</code></li>
265
- * <li><code>StartAndEnd</code></li>
266
- * </ul>
267
- *
268
- * @type {sap.ui.webc.main.types.TabsOverflowMode}
269
- * @name sap.ui.webc.main.TabContainer.prototype.tabsOverflowMode
270
- * @defaultvalue "End"
271
- * @since 1.1.0
272
- * @public
273
- */
274
- @property({ type: TabsOverflowMode, defaultValue: TabsOverflowMode.End })
275
- tabsOverflowMode!: TabsOverflowMode;
276
-
277
- /**
278
- * Sets the background color of the Tab Container's header as <code>Solid</code>, <code>Transparent</code>, or <code>Translucent</code>.
279
- *
280
- * @type {sap.ui.webc.main.types.TabContainerBackgroundDesign}
281
- * @name sap.ui.webc.main.TabContainer.prototype.headerBackgroundDesign
282
- * @defaultvalue "Solid"
283
- * @since 1.10.0
284
- * @public
285
- */
286
- @property({ type: TabContainerBackgroundDesign, defaultValue: TabContainerBackgroundDesign.Solid })
287
- headerBackgroundDesign!: TabContainerBackgroundDesign;
288
-
289
- /**
290
- * Sets the background color of the Tab Container's content as <code>Solid</code>, <code>Transparent</code>, or <code>Translucent</code>.
291
- *
292
- * @type {sap.ui.webc.main.types.TabContainerBackgroundDesign}
293
- * @name sap.ui.webc.main.TabContainer.prototype.contentBackgroundDesign
294
- * @defaultvalue "Solid"
295
- * @since 1.10.0
296
- * @public
297
- */
298
- @property({ type: TabContainerBackgroundDesign, defaultValue: TabContainerBackgroundDesign.Solid })
299
- contentBackgroundDesign!: TabContainerBackgroundDesign;
300
-
301
- /**
302
- * Defines the placement of the tab strip relative to the actual tabs' content.
303
- * <br><br>
304
- * <b>Note:</b> By default the tab strip is displayed above the tabs' content area and this is the recommended
305
- * layout for most scenarios. Set to <code>Bottom</code> only when the component is at the
306
- * bottom of the page and you want the tab strip to act as a menu.
307
- *
308
- * <br><br>
309
- * Available options are:
310
- * <ul>
311
- * <li><code>Top</code></li>
312
- * <li><code>Bottom</code></li>
313
- * </ul>
314
- *
315
- * @type {sap.ui.webc.main.types.TabContainerTabsPlacement}
316
- * @name sap.ui.webc.main.TabContainer.prototype.tabsPlacement
317
- * @defaultvalue "Top"
318
- * @since 1.0.0-rc.7
319
- * @private
320
- */
321
- @property({ type: TabContainerTabsPlacement, defaultValue: TabContainerTabsPlacement.Top })
322
- tabsPlacement!: TabContainerTabsPlacement;
323
-
324
- /**
325
- * Defines the current media query size.
326
- *
327
- * @type {string}
328
- * @private
329
- */
330
- @property()
331
- mediaRange!: string;
332
-
333
- @property({ type: Object })
334
- _selectedTab!: Tab;
335
-
336
- @property({ type: Boolean, noAttribute: true })
337
- _animationRunning!: boolean;
338
-
339
- @property({ type: Boolean, noAttribute: true })
340
- _contentCollapsed!: boolean;
341
-
342
- @property({ noAttribute: true, defaultValue: "0" })
343
- _startOverflowText!: string;
344
-
345
- @property({ noAttribute: true, defaultValue: "More" })
346
- _endOverflowText!: string;
347
-
348
- @property({ type: Object, multiple: true })
349
- _overflowItems!: Array<ITab>;
350
-
351
- @property({ validator: Integer, noAttribute: true })
352
- _width?: number;
353
-
354
- /**
355
- * Defines the tabs.
356
- * <br><br>
357
- * <b>Note:</b> Use <code>ui5-tab</code> and <code>ui5-tab-separator</code> for the intended design.
358
- *
359
- * @type {sap.ui.webc.main.ITab[]}
360
- * @public
361
- * @slot items
362
- * @name sap.ui.webc.main.TabContainer.prototype.default
363
- */
364
- @slot({
365
- "default": true,
366
- type: HTMLElement,
367
- individualSlots: true,
368
- invalidateOnChildChange: {
369
- properties: true,
370
- slots: false,
371
- },
372
- })
373
- items!: Array<ITab>;
374
-
375
- /**
376
- * Defines the button which will open the overflow menu. If nothing is provided to this slot,
377
- * the default button will be used.
378
- *
379
- * @type {sap.ui.webc.main.IButton}
380
- * @public
381
- * @slot
382
- * @since 1.0.0-rc.9
383
- * @name sap.ui.webc.main.TabContainer.prototype.overflowButton
384
- */
385
- @slot()
386
- overflowButton!: Array<Button>;
387
-
388
- /**
389
- * Defines the button which will open the start overflow menu if available. If nothing is provided to this slot,
390
- * the default button will be used.
391
- *
392
- * @type {sap.ui.webc.main.IButton}
393
- * @public
394
- * @slot
395
- * @since 1.1.0
396
- * @name sap.ui.webc.main.TabContainer.prototype.startOverflowButton
397
- */
398
- @slot()
399
- startOverflowButton!: Array<Button>;
400
-
401
- _itemNavigation: ItemNavigation;
402
- _allItemsAndSubItems?: Array<ITab>;
403
- responsivePopover?: ResponsivePopover;
404
- _handleResizeBound: () => void;
405
-
406
- static registerTabStyles(styles: StyleData) {
407
- tabStyles.push(styles);
408
- }
409
-
410
- static registerStaticAreaTabStyles(styles: StyleData) {
411
- staticAreaTabStyles.push(styles);
412
- }
413
-
414
- static i18nBundle: I18nBundle;
415
-
416
- constructor() {
417
- super();
418
-
419
- this._handleResizeBound = this._handleResize.bind(this);
420
-
421
- // Init ItemNavigation
422
- this._itemNavigation = new ItemNavigation(this, {
423
- getItemsCallback: () => this._getFocusableRefs(),
424
- skipItemsSize: PAGE_UP_DOWN_SIZE,
425
- });
426
- }
427
-
428
- onBeforeRendering() {
429
- this._allItemsAndSubItems = this._getAllSubItems(this.items);
430
- if (!this._allItemsAndSubItems.length) {
431
- return;
432
- }
433
-
434
- // update selected tab
435
- const selectedTabs = this._allItemsAndSubItems.filter(tab => tab.selected) as Array<Tab>;
436
- if (selectedTabs.length) {
437
- this._selectedTab._selected = false;
438
- this._selectedTab = selectedTabs[0];
439
- } else {
440
- this._selectedTab = this._allItemsAndSubItems[0] as Tab;
441
- this._selectedTab._selected = true;
442
- }
443
-
444
- this._setItemsPrivateProperties(this.items);
445
-
446
- if (!this._animationRunning) {
447
- this._contentCollapsed = this.collapsed;
448
- }
449
-
450
- if (this.showOverflow) {
451
- console.warn(`The "show-overflow" property is deprecated and will be removed in a future release.`); // eslint-disable-line
452
- }
453
- }
454
-
455
- onAfterRendering() {
456
- if (!this.items.length) {
457
- return;
458
- }
459
-
460
- this._setItemsForStrip();
461
-
462
- if (!this.shadowRoot!.contains(document.activeElement)) {
463
- const focusStart = this._getRootTab(this._selectedTab);
464
- this._itemNavigation.setCurrentItem(focusStart);
465
- }
466
- }
467
-
468
- onEnterDOM() {
469
- ResizeHandler.register(this._getHeader(), this._handleResizeBound);
470
- }
471
-
472
- onExitDOM() {
473
- ResizeHandler.deregister(this._getHeader(), this._handleResizeBound);
474
- }
475
-
476
- _handleResize() {
477
- if (this.responsivePopover && this.responsivePopover.opened) {
478
- this.responsivePopover.close();
479
- }
480
-
481
- this._width = this.offsetWidth;
482
- this._updateMediaRange(this._width);
483
- }
484
-
485
- _updateMediaRange(width: number) {
486
- this.mediaRange = MediaRange.getCurrentRange(MediaRange.RANGESETS.RANGE_4STEPS, width);
487
- }
488
-
489
- _setItemsPrivateProperties(items: Array<ITab>) {
490
- // set real dom ref to all items, then return only the tabs for further processing
491
- const allTabs = items.filter(item => {
492
- item._getElementInStrip = () => this.getDomRef()!.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`);
493
- return !item.isSeparator;
494
- });
495
-
496
- allTabs.forEach((tab, index, arr) => {
497
- tab._isInline = this.tabLayout === TabLayout.Inline;
498
- tab._mixedMode = this.mixedMode;
499
- tab._posinset = index + 1;
500
- tab._setsize = arr.length;
501
- tab._realTab = this._selectedTab;
502
- tab._isTopLevelTab = items.some(i => i === tab);
503
- walk(items, _tab => {
504
- _tab._realTab = tab._realTab;
505
- });
506
- });
507
- }
508
-
509
- _onHeaderFocusin(e: FocusEvent) {
510
- const tab = getTab(e.target as HTMLElement);
511
-
512
- if (tab) {
513
- this._itemNavigation.setCurrentItem(tab._realTab);
514
- }
515
- }
516
-
517
- async _onTabStripClick(e: Event) {
518
- const tab = getTab(e.target as HTMLElement);
519
- if (!tab || tab._realTab.disabled) {
520
- return;
521
- }
522
-
523
- e.stopPropagation();
524
- e.preventDefault();
525
-
526
- if ((e.target as HTMLElement).hasAttribute("ui5-button")) {
527
- this._onTabExpandButtonClick(e);
528
- return;
529
- }
530
-
531
- if (!tab._realTab._hasOwnContent && tab._realTab.tabs.length) {
532
- this._overflowItems = tab._realTab.subTabs;
533
- this._addStyleIndent(this._overflowItems);
534
-
535
- this.responsivePopover = await this._respPopover();
536
- if (this.responsivePopover.opened) {
537
- this.responsivePopover.close();
538
- } else {
539
- this._setPopoverInitialFocus();
540
- }
541
-
542
- this.responsivePopover.showAt(tab._realTab.getTabInStripDomRef()!);
543
- return;
544
- }
545
-
546
- this._onHeaderItemSelect(tab);
547
- }
548
-
549
- async _onTabExpandButtonClick(e: Event) {
550
- e.stopPropagation();
551
- e.preventDefault();
552
-
553
- let button = e.target as HTMLElement;
554
- let tabInstance = (button as TabContainerExpandButton).tab;
555
-
556
- if (tabInstance) {
557
- tabInstance.focus({ focusVisible: true } as FocusOptions);
558
- }
559
-
560
- if (e.type === "keydown" && !(e.target as Tab)._realTab.isSingleClickArea) {
561
- button = (e.target as Tab).querySelectorAll<HTMLElement>(".ui5-tab-expand-button")[0];
562
- tabInstance = (e.target as Tab)._realTab;
563
- }
564
-
565
- // if clicked between the expand button and the tab
566
- if (!tabInstance) {
567
- this._onHeaderItemSelect(button.parentElement as HTMLElement);
568
- return;
569
- }
570
-
571
- this._overflowItems = tabInstance.subTabs;
572
- this._addStyleIndent(this._overflowItems);
573
-
574
- this.responsivePopover = await this._respPopover();
575
- if (this.responsivePopover.isOpen()) {
576
- this.responsivePopover.close();
577
- } else {
578
- this._setPopoverInitialFocus();
579
- }
580
- this.responsivePopover.showAt(button);
581
- }
582
-
583
- _setPopoverInitialFocus() {
584
- const selectedTabInOverflow = this._getSelectedTabInOverflow();
585
- const tab = selectedTabInOverflow || this._getFirstFocusableItemInOverflow();
586
-
587
- this.responsivePopover!.initialFocus = `${tab._realTab._id}-li`;
588
- }
589
-
590
- _getSelectedTabInOverflow() {
591
- return <TabContainerTabInOverflow>(<List> this.responsivePopover!.content[0]).items.find(item => {
592
- return (<TabContainerTabInOverflow>item)._realTab && (<TabContainerTabInOverflow>item)._realTab.selected;
593
- });
594
- }
595
-
596
- _getFirstFocusableItemInOverflow() {
597
- return <TabContainerTabInOverflow>(<List> this.responsivePopover!.content[0]).items.find(item => item.classList.contains("ui5-tab-overflow-item"));
598
- }
599
-
600
- _onTabStripKeyDown(e: KeyboardEvent) {
601
- const tab = getTab(e.target as HTMLElement);
602
- if (!tab || tab._realTab.disabled) {
603
- return;
604
- }
605
-
606
- if (isEnter(e)) {
607
- if (tab._realTab.isSingleClickArea) {
608
- this._onTabStripClick(e);
609
- } else {
610
- this._onHeaderItemSelect(tab);
611
- }
612
- }
613
-
614
- if (isSpace(e)) {
615
- e.preventDefault(); // prevent scrolling
616
- }
617
-
618
- if (isDown(e) || isUp(e)) {
619
- if (tab._realTab.requiresExpandButton) {
620
- this._onTabExpandButtonClick(e);
621
- }
622
- if (tab._realTab.isSingleClickArea) {
623
- this._onTabStripClick(e);
624
- }
625
- }
626
- }
627
-
628
- _onTabStripKeyUp(e: KeyboardEvent) {
629
- const tab = getTab(e.target as HTMLElement);
630
- if (!tab || tab._realTab.disabled) {
631
- return;
632
- }
633
-
634
- if (isSpace(e)) {
635
- e.preventDefault();
636
- if (tab._realTab.isSingleClickArea) {
637
- this._onTabStripClick(e);
638
- } else {
639
- this._onHeaderItemSelect(tab);
640
- }
641
- }
642
- }
643
-
644
- _onHeaderItemSelect(tab: HTMLElement) {
645
- if (!tab.hasAttribute("disabled")) {
646
- this._onItemSelect(tab.id);
647
- }
648
- }
649
-
650
- async _onOverflowListItemClick(e: CustomEvent<ClickEventDetail>) {
651
- e.preventDefault(); // cancel the item selection
652
-
653
- this._onItemSelect(e.detail.item.id.slice(0, -3)); // strip "-li" from end of id
654
-
655
- this.responsivePopover!.close();
656
- await renderFinished();
657
-
658
- const selectedTopLevel = this._getRootTab(this._selectedTab);
659
- selectedTopLevel.getTabInStripDomRef()!.focus({ focusVisible: true } as FocusOptions);
660
- }
661
-
662
- /**
663
- * Returns all slotted tabs and their subTabs in a flattened array.
664
- * The order of tabs is depth-first. For example, given the following slotted elements:
665
- * <code>
666
- * <ui5-tabcontainer>
667
- * <ui5-tab id="First" text="First">
668
- * ...
669
- * <ui5-tab slot="subTabs" id="Nested" text="Nested">...</ui5-tab>
670
- * </ui5-tab>
671
- * <ui5-tab id="Second" text="Second">...</ui5-tab>
672
- * <ui5-tab-separator id="sep"></ui5-tab-separator>
673
- * <ui5-tab id="Third" text="Third">...</ui5-tab>
674
- * </ui5-tabcontainer>
675
- * </code>
676
- * Calling <code>allItems</code> on this TabContainer will return the instances in the following order:
677
- * <code>[ ui5-tab#First, ui5-tab#Nested, ui5-tab#Second, ui5-tab-separator#sep, ui5-tab#Third ]</code>
678
- * @public
679
- * @readonly
680
- * @name sap.ui.webc.main.TabContainer.prototype.allItems
681
- * @returns {sap.ui.webc.main.ITab[]}
682
- */
683
- get allItems() {
684
- return this._getAllSubItems(this.items);
685
- }
686
-
687
- _getAllSubItems(items: Array<ITab>, result: Array<ITab> = [], level = 1) {
688
- items.forEach(item => {
689
- if (item.hasAttribute("ui5-tab") || item.hasAttribute("ui5-tab-separator")) {
690
- item._level = level;
691
- result.push(item);
692
-
693
- if (item.subTabs) {
694
- this._getAllSubItems(item.subTabs, result, level + 1);
695
- }
696
- }
697
- });
698
-
699
- return result;
700
- }
701
-
702
- _onItemSelect(selectedTabId: string) {
703
- const previousTab = this._selectedTab;
704
- const selectedTabIndex = this._allItemsAndSubItems!.findIndex(item => item.__id === selectedTabId);
705
- const selectedTab = this._allItemsAndSubItems![selectedTabIndex] as Tab;
706
-
707
- const selectionSuccessful = this.selectTab(selectedTab, selectedTabIndex);
708
- if (!selectionSuccessful) {
709
- return;
710
- }
711
-
712
- // update selected property on all items
713
- this._allItemsAndSubItems!.forEach((item, index) => {
714
- const selected = selectedTabIndex === index;
715
- item.selected = selected;
716
-
717
- if (item._selected) {
718
- item._selected = false;
719
- }
720
- });
721
-
722
- if (this.fixed) {
723
- return;
724
- }
725
-
726
- if (!this.shouldAnimate) {
727
- this.toggle(selectedTab, previousTab);
728
- } else {
729
- this.toggleAnimated(selectedTab, previousTab);
730
- }
731
- }
732
-
733
- async toggleAnimated(selectedTab: Tab, previousTab: Tab) {
734
- const content = this.shadowRoot!.querySelector<HTMLElement>(".ui5-tc__content")!;
735
- let animationPromise = null;
736
-
737
- this._animationRunning = true;
738
-
739
- if (selectedTab === previousTab) {
740
- // click on already selected tab - animate both directions
741
- this.collapsed = !this.collapsed;
742
- animationPromise = this.collapsed ? this.slideContentUp(content) : this.slideContentDown(content);
743
- } else {
744
- // click on new tab - animate if the content is currently collapsed
745
- animationPromise = this.collapsed ? this.slideContentDown(content) : Promise.resolve();
746
- this.collapsed = false;
747
- }
748
-
749
- await animationPromise;
750
- this._contentCollapsed = this.collapsed;
751
- this._animationRunning = false;
752
- }
753
-
754
- toggle(selectedTab: Tab, previousTab: Tab) {
755
- if (selectedTab === previousTab) {
756
- this.collapsed = !this.collapsed;
757
- } else {
758
- this.collapsed = false;
759
- }
760
- }
761
-
762
- /**
763
- * Fires the <code>tab-select</code> event and changes the internal reference for the currently selected tab.
764
- * If the event is prevented, the current tab is not changed.
765
- * @private
766
- *
767
- * @param {sap.ui.webc.main.ITab} selectedTab selected tab instance
768
- * @param {number} selectedTabIndex selected tab index for an array containing all tabs and sub tabs. <b>Note:</b> Use the method <code>allTabs</code> to get this array.
769
- * @returns {boolean} true if the tab selection is successful, false if it was prevented
770
- */
771
- selectTab(selectedTab: Tab, selectedTabIndex: number) {
772
- if (!this.fireEvent<TabContainerTabSelectEventDetail>("tab-select", { tab: selectedTab, tabIndex: selectedTabIndex }, true)) {
773
- return false;
774
- }
775
-
776
- // select the tab
777
- this._selectedTab = selectedTab;
778
- return true;
779
- }
780
-
781
- slideContentDown(element: HTMLElement) {
782
- return slideDown(element).promise();
783
- }
784
-
785
- slideContentUp(element: HTMLElement) {
786
- return slideUp(element).promise();
787
- }
788
-
789
- async _onOverflowClick(e: Event) {
790
- if ((e.target as HTMLElement).classList.contains("ui5-tc__overflow")) {
791
- // the empty area in the overflow was clicked
792
- return;
793
- }
794
-
795
- const overflow = e.currentTarget as HTMLElement;
796
- const isEndOverflow = overflow.classList.contains("ui5-tc__overflow--end");
797
- const overflowAttr = isEndOverflow ? "end-overflow" : "start-overflow";
798
-
799
- this._overflowItems = this.items.filter(item => {
800
- const stripRef = item.getTabInStripDomRef();
801
-
802
- return stripRef && stripRef.hasAttribute(overflowAttr);
803
- });
804
-
805
- this._addStyleIndent(this._overflowItems);
806
-
807
- let opener;
808
- if (isEndOverflow) {
809
- opener = this.overflowButton[0] || this._getEndOverflowBtnDOM();
810
- } else {
811
- opener = this.startOverflowButton[0] || this._getStartOverflowBtnDOM();
812
- }
813
-
814
- this.responsivePopover = await this._respPopover();
815
- if (this.responsivePopover.opened) {
816
- this.responsivePopover.close();
817
- } else {
818
- this._setPopoverInitialFocus();
819
- this.responsivePopover.showAt(opener);
820
- }
821
- }
822
-
823
- _addStyleIndent(tabs: Array<ITab>) {
824
- const extraIndent = this._getAllSubItems(tabs)
825
- .filter(tab => !tab.isSeparator)
826
- .some(tab => tab.design !== SemanticColor.Default && tab.design !== SemanticColor.Neutral);
827
-
828
- walk(tabs, tab => {
829
- let level = tab._level! - 1;
830
-
831
- if (tab.isSeparator) {
832
- level += 1;
833
- }
834
-
835
- tab._style = {
836
- "--_ui5-tab-indentation-level": level,
837
- "--_ui5-tab-extra-indent": extraIndent ? 1 : null,
838
- };
839
- });
840
- }
841
-
842
- async _onOverflowKeyDown(e: KeyboardEvent) {
843
- const overflow = e.currentTarget as HTMLElement;
844
- const isEndOverflow = overflow.classList.contains("ui5-tc__overflow--end");
845
- const isStartOverflow = overflow.classList.contains("ui5-tc__overflow--start");
846
-
847
- if (isDown(e) || (isStartOverflow && isLeft(e)) || (isEndOverflow && isRight(e))) {
848
- e.stopPropagation();
849
- e.preventDefault();
850
- await this._onOverflowClick(e);
851
- }
852
- }
853
-
854
- _setItemsForStrip() {
855
- const tabStrip = this._getTabStrip();
856
- let allItemsWidth = 0;
857
-
858
- if (!this._selectedTab) {
859
- return;
860
- }
861
-
862
- const itemsDomRefs = this.items.map(item => item.getTabInStripDomRef()!);
863
-
864
- // make sure the overflows are hidden
865
- this._getStartOverflow().setAttribute("hidden", "");
866
- this._getEndOverflow().setAttribute("hidden", "");
867
-
868
- // show all tabs
869
- for (let i = 0; i < itemsDomRefs.length; i++) {
870
- itemsDomRefs[i].removeAttribute("hidden");
871
- itemsDomRefs[i].removeAttribute("start-overflow");
872
- itemsDomRefs[i].removeAttribute("end-overflow");
873
- }
874
-
875
- itemsDomRefs.forEach(item => {
876
- allItemsWidth += this._getItemWidth(item);
877
- });
878
-
879
- const hasOverflow = tabStrip.offsetWidth < allItemsWidth;
880
- if (!hasOverflow) {
881
- return;
882
- }
883
-
884
- if (this.isModeStartAndEnd) {
885
- this._updateStartAndEndOverflow(itemsDomRefs);
886
- this._updateOverflowCounters();
887
- } else {
888
- this._updateEndOverflow(itemsDomRefs);
889
- }
890
- }
891
-
892
- _getRootTab(tab: Tab) {
893
- while (tab.hasAttribute("ui5-tab")) {
894
- if (tab.parentElement!.hasAttribute("ui5-tabcontainer")) {
895
- break;
896
- }
897
-
898
- tab = tab.parentElement as Tab;
899
- }
900
-
901
- return tab;
902
- }
903
-
904
- _updateEndOverflow(itemsDomRefs: Array<ITab>) {
905
- // show end overflow
906
- this._getEndOverflow().removeAttribute("hidden");
907
- const selectedTab = this._getRootTab(this._selectedTab);
908
- const selectedTabDomRef = selectedTab.getTabInStripDomRef()!;
909
- const containerWidth = this._getTabStrip().offsetWidth;
910
-
911
- const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
912
- const lastVisibleTabIndex = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
913
-
914
- for (let i = lastVisibleTabIndex + 1; i < itemsDomRefs.length; i++) {
915
- itemsDomRefs[i].setAttribute("hidden", "");
916
- itemsDomRefs[i].setAttribute("end-overflow", "");
917
- }
918
-
919
- this._endOverflowText = this.overflowButtonText;
920
- }
921
-
922
- _updateStartAndEndOverflow(itemsDomRefs: Array<ITab>) {
923
- let containerWidth = this._getTabStrip().offsetWidth;
924
- const selectedTab = this._getRootTab(this._selectedTab);
925
- const selectedTabDomRef = selectedTab.getTabInStripDomRef()!;
926
- const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
927
- const hasStartOverflow = this._hasStartOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
928
- const hasEndOverflow = this._hasEndOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
929
- let firstVisible;
930
- let lastVisible;
931
-
932
- // has "end", but no "start" overflow
933
- if (!hasStartOverflow) {
934
- // show "end" overflow
935
- this._getEndOverflow().removeAttribute("hidden");
936
- // width is changed
937
- containerWidth = this._getTabStrip().offsetWidth;
938
-
939
- lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
940
-
941
- for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
942
- itemsDomRefs[i].setAttribute("hidden", "");
943
- itemsDomRefs[i].setAttribute("end-overflow", "");
944
- }
945
-
946
- return;
947
- }
948
-
949
- // has "start", but no "end" overflow
950
- if (!hasEndOverflow) {
951
- // show "start" overflow
952
- this._getStartOverflow().removeAttribute("hidden");
953
- // width is changed
954
- containerWidth = this._getTabStrip().offsetWidth;
955
-
956
- firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
957
-
958
- for (let i = firstVisible - 1; i >= 0; i--) {
959
- itemsDomRefs[i].setAttribute("hidden", "");
960
- itemsDomRefs[i].setAttribute("start-overflow", "");
961
- }
962
-
963
- return;
964
- }
965
-
966
- // show "start" overflow
967
- this._getStartOverflow().removeAttribute("hidden");
968
- // show "end" overflow
969
- this._getEndOverflow().removeAttribute("hidden");
970
- // width is changed
971
- containerWidth = this._getTabStrip().offsetWidth;
972
-
973
- firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, selectedItemIndexAndWidth.index - 1);
974
- lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, firstVisible);
975
-
976
- for (let i = firstVisible - 1; i >= 0; i--) {
977
- itemsDomRefs[i].setAttribute("hidden", "");
978
- itemsDomRefs[i].setAttribute("start-overflow", "");
979
- }
980
-
981
- for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
982
- itemsDomRefs[i].setAttribute("hidden", "");
983
- itemsDomRefs[i].setAttribute("end-overflow", "");
984
- }
985
- }
986
-
987
- _hasStartOverflow(containerWidth: number, itemsDomRefs: Array<ITab>, selectedItemIndexAndWidth: { width: number; index: number}) {
988
- if (selectedItemIndexAndWidth.index === 0) {
989
- return false;
990
- }
991
-
992
- let leftItemsWidth = 0;
993
-
994
- for (let i = selectedItemIndexAndWidth.index - 1; i >= 0; i--) {
995
- leftItemsWidth += this._getItemWidth(itemsDomRefs[i]);
996
- }
997
-
998
- let hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
999
-
1000
- // if there is no "start" overflow, it has "end" overflow
1001
- // check it again with the "end" overflow
1002
- if (!hasStartOverflow) {
1003
- this._getEndOverflow().removeAttribute("hidden");
1004
- containerWidth = this._getTabStrip().offsetWidth;
1005
- hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
1006
- this._getEndOverflow().setAttribute("hidden", "");
1007
- }
1008
-
1009
- return hasStartOverflow;
1010
- }
1011
-
1012
- _hasEndOverflow(containerWidth: number, itemsDomRefs: Array<ITab>, selectedItemIndexAndWidth: { width: number; index: number}) {
1013
- if (selectedItemIndexAndWidth.index >= itemsDomRefs.length) {
1014
- return false;
1015
- }
1016
-
1017
- let rightItemsWidth = 0;
1018
-
1019
- for (let i = selectedItemIndexAndWidth.index; i < itemsDomRefs.length; i++) {
1020
- rightItemsWidth += this._getItemWidth(itemsDomRefs[i]);
1021
- }
1022
-
1023
- let hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
1024
-
1025
- // if there is no "end" overflow, it has "start" overflow
1026
- // check it again with the "start" overflow
1027
- if (!hasEndOverflow) {
1028
- this._getStartOverflow().removeAttribute("hidden");
1029
- containerWidth = this._getTabStrip().offsetWidth;
1030
- hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
1031
- this._getStartOverflow().setAttribute("hidden", "");
1032
- }
1033
-
1034
- return hasEndOverflow;
1035
- }
1036
-
1037
- _getItemWidth(itemDomRef: HTMLElement) {
1038
- const styles = window.getComputedStyle(itemDomRef);
1039
- const margins = Number.parseInt(styles.marginLeft) + Number.parseInt(styles.marginRight);
1040
-
1041
- return itemDomRef.offsetWidth + margins;
1042
- }
1043
-
1044
- _getSelectedItemIndexAndWidth(itemsDomRefs: Array<ITab>, selectedTabDomRef: ITab) {
1045
- let index = itemsDomRefs.indexOf(selectedTabDomRef);
1046
- let width = selectedTabDomRef.offsetWidth;
1047
- let selectedSeparator;
1048
-
1049
- if (itemsDomRefs[index - 1] && itemsDomRefs[index - 1].isSeparator) {
1050
- selectedSeparator = itemsDomRefs[index - 1];
1051
- width += this._getItemWidth(selectedSeparator);
1052
- }
1053
-
1054
- itemsDomRefs.splice(index, 1);
1055
-
1056
- // if previous item is a separator - remove it
1057
- if (selectedSeparator) {
1058
- itemsDomRefs.splice(index - 1, 1);
1059
- index--;
1060
- }
1061
-
1062
- return {
1063
- index,
1064
- width,
1065
- };
1066
- }
1067
-
1068
- _findFirstVisibleItem(itemsDomRefs: Array<ITab>, containerWidth: number, selectedItemWidth: number, startIndex?: number) {
1069
- if (startIndex === undefined) {
1070
- startIndex = itemsDomRefs.length - 1;
1071
- }
1072
-
1073
- let lastVisible = startIndex + 1;
1074
-
1075
- for (let index = startIndex; index >= 0; index--) {
1076
- const itemWidth = this._getItemWidth(itemsDomRefs[index]);
1077
-
1078
- if (containerWidth < selectedItemWidth + itemWidth) {
1079
- break;
1080
- }
1081
-
1082
- selectedItemWidth += itemWidth;
1083
- lastVisible = index;
1084
- }
1085
-
1086
- return lastVisible;
1087
- }
1088
-
1089
- _findLastVisibleItem(itemsDomRefs: Array<ITab>, containerWidth: number, selectedItemWidth: number, startIndex = 0) {
1090
- let lastVisibleIndex = startIndex - 1;
1091
- let index = startIndex;
1092
-
1093
- for (; index < itemsDomRefs.length; index++) {
1094
- const itemWidth = this._getItemWidth(itemsDomRefs[index]);
1095
-
1096
- if (containerWidth < selectedItemWidth + itemWidth) {
1097
- break;
1098
- }
1099
-
1100
- selectedItemWidth += itemWidth;
1101
- lastVisibleIndex = index;
1102
- }
1103
-
1104
- // if prev item is separator - hide it
1105
- const prevItem = itemsDomRefs[index - 1];
1106
- if (prevItem && prevItem.isSeparator) {
1107
- lastVisibleIndex -= 1;
1108
- }
1109
-
1110
- return lastVisibleIndex;
1111
- }
1112
-
1113
- get isModeStartAndEnd() {
1114
- return this.tabsOverflowMode === TabsOverflowMode.StartAndEnd;
1115
- }
1116
-
1117
- _updateOverflowCounters() {
1118
- let startOverflowItemsCount = 0;
1119
- let endOverflowItemsCount = 0;
1120
-
1121
- this._getTabs()
1122
- .map(tab => tab.getTabInStripDomRef()!)
1123
- .forEach(tab => {
1124
- if (tab.hasAttribute("start-overflow")) {
1125
- startOverflowItemsCount++;
1126
- }
1127
-
1128
- if (tab.hasAttribute("end-overflow")) {
1129
- endOverflowItemsCount++;
1130
- }
1131
- });
1132
-
1133
- this._startOverflowText = `+${startOverflowItemsCount}`;
1134
- this._endOverflowText = `+${endOverflowItemsCount}`;
1135
- }
1136
-
1137
- _getFocusableRefs() {
1138
- if (!this.getDomRef()) {
1139
- return [];
1140
- }
1141
-
1142
- const focusableRefs = [];
1143
-
1144
- if (!this._getStartOverflow().hasAttribute("hidden")) {
1145
- focusableRefs.push(this.startOverflowButton[0] || this._getStartOverflowBtnDOM());
1146
- }
1147
-
1148
- this._getTabs().forEach(tab => {
1149
- const ref = tab.getTabInStripDomRef();
1150
- const focusable = ref && !ref.hasAttribute("hidden");
1151
-
1152
- if (focusable) {
1153
- focusableRefs.push(tab);
1154
- }
1155
- });
1156
-
1157
- if (!this._getEndOverflow().hasAttribute("hidden")) {
1158
- focusableRefs.push(this.overflowButton[0] || this._getEndOverflowBtnDOM());
1159
- }
1160
-
1161
- return focusableRefs;
1162
- }
1163
-
1164
- _getHeader() {
1165
- return this.shadowRoot!.querySelector<HTMLElement>(`#${this._id}-header`)!;
1166
- }
1167
-
1168
- _getTabs(): Array<Tab> {
1169
- return this.items.filter((item): item is Tab => !item.isSeparator);
1170
- }
1171
-
1172
- get hasSubTabs(): boolean {
1173
- const tabs = this._getTabs();
1174
-
1175
- for (let i = 0; i < tabs.length; i++) {
1176
- if (tabs[i].subTabs.length > 0) {
1177
- return true;
1178
- }
1179
- }
1180
-
1181
- return false;
1182
- }
1183
-
1184
- _getTabStrip() {
1185
- return this.shadowRoot!.querySelector<HTMLElement>(`#${this._id}-tabStrip`)!;
1186
- }
1187
-
1188
- _getStartOverflow() {
1189
- return this.shadowRoot!.querySelector<HTMLElement>(".ui5-tc__overflow--start")!;
1190
- }
1191
-
1192
- _getEndOverflow() {
1193
- return this.shadowRoot!.querySelector<HTMLElement>(".ui5-tc__overflow--end")!;
1194
- }
1195
-
1196
- _getStartOverflowBtnDOM() {
1197
- return this._getStartOverflow().querySelector<Button>("[ui5-button]");
1198
- }
1199
-
1200
- _getEndOverflowBtnDOM() {
1201
- return this._getEndOverflow().querySelector<Button>("[ui5-button]");
1202
- }
1203
-
1204
- async _respPopover() {
1205
- const staticAreaItem = await this.getStaticAreaItemDomRef();
1206
- return staticAreaItem!.querySelector<ResponsivePopover>(`#${this._id}-overflowMenu`)!;
1207
- }
1208
-
1209
- async _closeRespPopover() {
1210
- this.responsivePopover = await this._respPopover();
1211
- this.responsivePopover.close();
1212
- }
1213
-
1214
- get classes() {
1215
- return {
1216
- root: {
1217
- "ui5-tc-root": true,
1218
- "ui5-tc--textOnly": this.textOnly,
1219
- "ui5-tc--withAdditionalText": this.withAdditionalText,
1220
- "ui5-tc--standardTabLayout": this.standardTabLayout,
1221
- },
1222
- header: {
1223
- "ui5-tc__header": true,
1224
- },
1225
- tabStrip: {
1226
- "ui5-tc__tabStrip": true,
1227
- },
1228
- separator: {
1229
- "ui5-tc__separator": true,
1230
- },
1231
- content: {
1232
- "ui5-tc__content": true,
1233
- "ui5-tc__content--collapsed": this._contentCollapsed,
1234
- },
1235
- };
1236
- }
1237
-
1238
- get mixedMode() {
1239
- return this.items.some(item => item.icon) && this.items.some(item => item.text);
1240
- }
1241
-
1242
- get textOnly() {
1243
- return this.items.every(item => !item.icon);
1244
- }
1245
-
1246
- get withAdditionalText() {
1247
- return this.items.some(item => !!item.additionalText);
1248
- }
1249
-
1250
- get standardTabLayout() {
1251
- return this.tabLayout === TabLayout.Standard;
1252
- }
1253
-
1254
- get previousIconACCName() {
1255
- return TabContainer.i18nBundle.getText(TABCONTAINER_PREVIOUS_ICON_ACC_NAME);
1256
- }
1257
-
1258
- get nextIconACCName() {
1259
- return TabContainer.i18nBundle.getText(TABCONTAINER_NEXT_ICON_ACC_NAME);
1260
- }
1261
-
1262
- get overflowMenuTitle() {
1263
- return TabContainer.i18nBundle.getText(TABCONTAINER_OVERFLOW_MENU_TITLE);
1264
- }
1265
-
1266
- get tabsAtTheBottom() {
1267
- return this.tabsPlacement === TabContainerTabsPlacement.Bottom;
1268
- }
1269
-
1270
- get overflowMenuIcon() {
1271
- return this.tabsAtTheBottom ? "slim-arrow-up" : "slim-arrow-down";
1272
- }
1273
-
1274
- get overflowButtonText() {
1275
- return TabContainer.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);
1276
- }
1277
-
1278
- get popoverCancelButtonText() {
1279
- return TabContainer.i18nBundle.getText(TABCONTAINER_POPOVER_CANCEL_BUTTON);
1280
- }
1281
-
1282
- get accInvisibleText() {
1283
- return TabContainer.i18nBundle.getText(TABCONTAINER_SUBTABS_DESCRIPTION);
1284
- }
1285
-
1286
- get tablistAriaDescribedById() {
1287
- return this.hasSubTabs ? `${this._id}-invisibleText` : undefined;
1288
- }
1289
-
1290
- get shouldAnimate() {
1291
- return getAnimationMode() !== AnimationMode.None;
1292
- }
1293
-
1294
- static async onDefine() {
1295
- TabContainer.i18nBundle = await getI18nBundle("@ui5/webcomponents");
1296
- }
1297
- }
1298
-
1299
- const isTabDiv = (el: HTMLElement) => el.localName === "div" && el.getAttribute("role") === "tab";
1300
-
1301
- const getTab = (el: HTMLElement | null) => {
1302
- while (el) {
1303
- if (isTabDiv(el)) {
1304
- return el as Tab;
1305
- }
1306
-
1307
- el = el.parentElement;
1308
- }
1309
-
1310
- return false;
1311
- };
1312
-
1313
- const walk = (tabs: Array<ITab>, callback: (_: ITab) => void) => {
1314
- [...tabs].forEach(tab => {
1315
- callback(tab);
1316
- if (tab.subTabs) {
1317
- walk(tab.subTabs, callback);
1318
- }
1319
- });
1320
- };
1321
-
1322
- TabContainer.define();
1323
-
1324
- export default TabContainer;
1325
- export type {
1326
- ITab,
1327
- TabContainerTabSelectEventDetail,
1328
- };