@ui5/webcomponents 0.0.0-e7dd012d7 → 0.0.0-ec448881d

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 (1438) hide show
  1. package/CHANGELOG.md +848 -0
  2. package/README.md +150 -50
  3. package/customI18n.js +50 -0
  4. package/dist/Assets-static.js +6 -0
  5. package/dist/Assets.js +2 -1
  6. package/dist/Avatar.js +189 -49
  7. package/dist/AvatarGroup.js +603 -0
  8. package/dist/Badge.js +30 -19
  9. package/dist/Breadcrumbs.js +632 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +122 -36
  12. package/dist/Button.js +170 -80
  13. package/dist/Calendar.js +331 -665
  14. package/dist/CalendarDate.js +45 -0
  15. package/dist/CalendarHeader.js +110 -59
  16. package/dist/CalendarPart.js +111 -0
  17. package/dist/Card.js +38 -198
  18. package/dist/CardHeader.js +283 -0
  19. package/dist/Carousel.js +262 -94
  20. package/dist/CheckBox.js +178 -65
  21. package/dist/ColorPalette.js +494 -0
  22. package/dist/ColorPaletteItem.js +137 -0
  23. package/dist/ColorPalettePopover.js +244 -0
  24. package/dist/ColorPicker.js +609 -0
  25. package/dist/ComboBox.js +441 -159
  26. package/dist/ComboBoxGroupItem.js +70 -0
  27. package/dist/ComboBoxItem.js +3 -25
  28. package/dist/CustomListItem.js +22 -4
  29. package/dist/DateComponentBase.js +168 -0
  30. package/dist/DatePicker.js +281 -532
  31. package/dist/DateRangePicker.js +183 -399
  32. package/dist/DateTimePicker.js +97 -413
  33. package/dist/DayPicker.js +442 -652
  34. package/dist/Dialog.js +229 -58
  35. package/dist/DurationPicker.js +109 -511
  36. package/dist/FileUploader.js +74 -36
  37. package/dist/Filters.js +28 -0
  38. package/dist/GroupHeaderListItem.js +22 -13
  39. package/dist/Icon.js +177 -58
  40. package/dist/Input.js +658 -171
  41. package/dist/Interfaces.js +202 -0
  42. package/dist/Label.js +34 -13
  43. package/dist/Link.js +134 -43
  44. package/dist/List.js +442 -119
  45. package/dist/ListItem.js +90 -18
  46. package/dist/ListItemBase.js +33 -4
  47. package/dist/Menu.js +500 -0
  48. package/dist/MenuItem.js +162 -0
  49. package/dist/MessageStrip.js +77 -47
  50. package/dist/MonthPicker.js +169 -232
  51. package/dist/MultiComboBox.js +756 -148
  52. package/dist/MultiComboBoxItem.js +6 -1
  53. package/dist/MultiInput.js +122 -33
  54. package/dist/Option.js +69 -5
  55. package/dist/Panel.js +77 -78
  56. package/dist/Popover.js +244 -105
  57. package/dist/Popup.js +203 -74
  58. package/dist/ProgressIndicator.js +33 -20
  59. package/dist/RadioButton.js +148 -44
  60. package/dist/RadioButtonGroup.js +53 -29
  61. package/dist/RangeSlider.js +423 -62
  62. package/dist/RatingIndicator.js +66 -44
  63. package/dist/ResponsivePopover.js +74 -51
  64. package/dist/SegmentedButton.js +116 -69
  65. package/dist/SegmentedButtonItem.js +114 -0
  66. package/dist/Select.js +297 -117
  67. package/dist/Slider.js +126 -20
  68. package/dist/SliderBase.js +230 -91
  69. package/dist/SplitButton.js +440 -0
  70. package/dist/StandardListItem.js +35 -9
  71. package/dist/StepInput.js +684 -0
  72. package/dist/SuggestionGroupItem.js +64 -0
  73. package/dist/SuggestionItem.js +13 -26
  74. package/dist/SuggestionListItem.js +17 -6
  75. package/dist/Switch.js +82 -32
  76. package/dist/Tab.js +152 -36
  77. package/dist/TabContainer.js +753 -135
  78. package/dist/TabSeparator.js +43 -3
  79. package/dist/Table.js +928 -26
  80. package/dist/TableCell.js +11 -9
  81. package/dist/TableColumn.js +13 -10
  82. package/dist/TableGroupRow.js +167 -0
  83. package/dist/TableRow.js +260 -13
  84. package/dist/TextArea.js +105 -54
  85. package/dist/TimePicker.js +25 -743
  86. package/dist/TimePickerBase.js +472 -0
  87. package/dist/TimeSelection.js +500 -0
  88. package/dist/Title.js +16 -9
  89. package/dist/Toast.js +19 -8
  90. package/dist/ToggleButton.js +26 -8
  91. package/dist/Token.js +34 -17
  92. package/dist/Tokenizer.js +295 -45
  93. package/dist/Tree.js +102 -42
  94. package/dist/TreeItem.js +67 -11
  95. package/dist/TreeListItem.js +98 -3
  96. package/dist/WheelSlider.js +65 -58
  97. package/dist/YearPicker.js +186 -293
  98. package/dist/api.json +7457 -1
  99. package/dist/css/themes/Avatar.css +1 -0
  100. package/dist/css/themes/AvatarGroup.css +1 -0
  101. package/dist/css/themes/Badge.css +1 -0
  102. package/dist/css/themes/Breadcrumbs.css +1 -0
  103. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  104. package/dist/css/themes/BrowserScrollbar.css +1 -0
  105. package/dist/css/themes/BusyIndicator.css +1 -0
  106. package/dist/css/themes/Button.css +1 -0
  107. package/dist/css/themes/Button.ie11.css +1 -0
  108. package/dist/css/themes/Calendar.css +1 -0
  109. package/dist/css/themes/CalendarHeader.css +1 -0
  110. package/dist/css/themes/Card.css +1 -0
  111. package/dist/css/themes/CardHeader.css +1 -0
  112. package/dist/css/themes/Carousel.css +1 -0
  113. package/dist/css/themes/CheckBox.css +1 -0
  114. package/dist/css/themes/ColorPalette.css +1 -0
  115. package/dist/css/themes/ColorPaletteItem.css +1 -0
  116. package/dist/css/themes/ColorPalettePopover.css +1 -0
  117. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  118. package/dist/css/themes/ColorPicker.css +1 -0
  119. package/dist/css/themes/ComboBox.css +1 -0
  120. package/dist/css/themes/ComboBoxPopover.css +1 -0
  121. package/dist/css/themes/CustomListItem.css +1 -0
  122. package/dist/css/themes/DatePicker.css +1 -0
  123. package/dist/css/themes/DatePickerPopover.css +1 -0
  124. package/dist/css/themes/DateRangePicker.css +1 -0
  125. package/dist/css/themes/DateTimePicker.css +1 -0
  126. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  127. package/dist/css/themes/DayPicker.css +1 -0
  128. package/dist/css/themes/Dialog.css +1 -0
  129. package/dist/css/themes/FileUploader.css +1 -0
  130. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  131. package/dist/css/themes/GrowingButton.css +1 -0
  132. package/dist/css/themes/Icon.css +1 -0
  133. package/dist/css/themes/Input.css +1 -0
  134. package/dist/css/themes/InputIcon.css +1 -0
  135. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  136. package/dist/css/themes/Label.css +1 -0
  137. package/dist/css/themes/Link.css +1 -0
  138. package/dist/css/themes/List.css +1 -0
  139. package/dist/css/themes/ListItem.css +1 -0
  140. package/dist/css/themes/ListItemBase.css +1 -0
  141. package/dist/css/themes/Menu.css +1 -0
  142. package/dist/css/themes/MessageStrip.css +1 -0
  143. package/dist/css/themes/MonthPicker.css +1 -0
  144. package/dist/css/themes/MultiComboBox.css +1 -0
  145. package/dist/css/themes/MultiComboBoxPopover.css +1 -0
  146. package/dist/css/themes/MultiInput.css +1 -0
  147. package/dist/css/themes/Panel.css +1 -0
  148. package/dist/css/themes/Popover.css +1 -0
  149. package/dist/css/themes/Popup.css +1 -0
  150. package/dist/css/themes/PopupGlobal.css +1 -0
  151. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  152. package/dist/css/themes/PopupsCommon.css +1 -0
  153. package/dist/css/themes/ProgressIndicator.css +1 -0
  154. package/dist/css/themes/RadioButton.css +1 -0
  155. package/dist/css/themes/RangeSlider.css +1 -0
  156. package/dist/css/themes/RatingIndicator.css +1 -0
  157. package/dist/css/themes/ResponsivePopover.css +1 -0
  158. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  159. package/dist/css/themes/SegmentedButton.css +1 -0
  160. package/dist/css/themes/Select.css +1 -0
  161. package/dist/css/themes/SelectPopover.css +1 -0
  162. package/dist/css/themes/SliderBase.css +1 -0
  163. package/dist/css/themes/SplitButton.css +1 -0
  164. package/dist/css/themes/StepInput.css +1 -0
  165. package/dist/css/themes/Suggestions.css +1 -0
  166. package/dist/css/themes/Switch.css +1 -0
  167. package/dist/css/themes/Tab.css +1 -0
  168. package/dist/css/themes/TabContainer.css +1 -0
  169. package/dist/css/themes/TabInOverflow.css +1 -0
  170. package/dist/css/themes/TabInStrip.css +1 -0
  171. package/dist/css/themes/TabSemanticIcon.css +1 -0
  172. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  173. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  174. package/dist/css/themes/Table.css +1 -0
  175. package/dist/css/themes/TableCell.css +1 -0
  176. package/dist/css/themes/TableColumn.css +1 -0
  177. package/dist/css/themes/TableGroupRow.css +1 -0
  178. package/dist/css/themes/TableRow.css +1 -0
  179. package/dist/css/themes/TapHighlightColor.css +1 -0
  180. package/dist/css/themes/TextArea.css +1 -0
  181. package/dist/css/themes/TimePicker.css +1 -0
  182. package/dist/css/themes/TimePickerPopover.css +1 -0
  183. package/dist/css/themes/TimeSelection.css +1 -0
  184. package/dist/css/themes/Title.css +1 -0
  185. package/dist/css/themes/Toast.css +1 -0
  186. package/dist/css/themes/ToggleButton.css +1 -0
  187. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  188. package/dist/css/themes/Token.css +1 -0
  189. package/dist/css/themes/Tokenizer.css +1 -0
  190. package/dist/css/themes/TokenizerPopover.css +1 -0
  191. package/dist/css/themes/Tree.css +1 -0
  192. package/dist/css/themes/TreeListItem.css +1 -0
  193. package/dist/css/themes/ValueStateMessage.css +1 -0
  194. package/dist/css/themes/WheelSlider.css +1 -0
  195. package/dist/css/themes/YearPicker.css +1 -0
  196. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  197. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  198. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  199. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  200. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  201. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  202. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  203. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  204. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  205. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  206. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  207. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
  208. package/dist/features/ColorPaletteMoreColors.js +42 -0
  209. package/dist/features/InputElementsFormSupport.js +8 -6
  210. package/dist/features/InputSuggestions.js +218 -48
  211. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  216. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  221. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  222. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  223. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  224. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  226. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  230. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  234. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  247. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  253. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  259. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  260. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  261. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  262. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  263. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  264. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  265. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  266. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  267. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -0
  268. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  269. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -0
  270. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -0
  271. package/dist/generated/i18n/i18n-defaults.js +2 -2
  272. package/dist/generated/json-imports/Themes-static.js +41 -0
  273. package/dist/generated/json-imports/Themes.js +26 -19
  274. package/dist/generated/json-imports/i18n-static.js +162 -0
  275. package/dist/generated/json-imports/i18n.js +113 -89
  276. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  277. package/dist/generated/templates/AvatarTemplate.lit.js +9 -16
  278. package/dist/generated/templates/BadgeTemplate.lit.js +5 -13
  279. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  280. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  281. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -13
  282. package/dist/generated/templates/ButtonTemplate.lit.js +6 -13
  283. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -11
  284. package/dist/generated/templates/CalendarTemplate.lit.js +4 -11
  285. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  286. package/dist/generated/templates/CardTemplate.lit.js +5 -17
  287. package/dist/generated/templates/CarouselTemplate.lit.js +13 -19
  288. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -14
  289. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  290. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  291. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  292. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  293. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  294. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -25
  295. package/dist/generated/templates/ComboBoxTemplate.lit.js +7 -14
  296. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -20
  297. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -13
  298. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -13
  299. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -19
  300. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -19
  301. package/dist/generated/templates/DialogTemplate.lit.js +9 -15
  302. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +8 -14
  303. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -14
  304. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -11
  305. package/dist/generated/templates/IconTemplate.lit.js +6 -13
  306. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -31
  307. package/dist/generated/templates/InputTemplate.lit.js +9 -15
  308. package/dist/generated/templates/LabelTemplate.lit.js +4 -11
  309. package/dist/generated/templates/LinkTemplate.lit.js +5 -12
  310. package/dist/generated/templates/ListItemTemplate.lit.js +13 -20
  311. package/dist/generated/templates/ListTemplate.lit.js +12 -16
  312. package/dist/generated/templates/MenuTemplate.lit.js +15 -0
  313. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -15
  314. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -13
  315. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -27
  316. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +9 -16
  317. package/dist/generated/templates/MultiInputTemplate.lit.js +13 -19
  318. package/dist/generated/templates/PanelTemplate.lit.js +9 -14
  319. package/dist/generated/templates/PopoverTemplate.lit.js +9 -16
  320. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -11
  321. package/dist/generated/templates/PopupTemplate.lit.js +4 -11
  322. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -17
  323. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -14
  324. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -17
  325. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +13 -16
  326. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -21
  327. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  328. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -11
  329. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -27
  330. package/dist/generated/templates/SelectTemplate.lit.js +6 -12
  331. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -15
  332. package/dist/generated/templates/SliderTemplate.lit.js +12 -16
  333. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  334. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -28
  335. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  336. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +24 -31
  337. package/dist/generated/templates/SwitchTemplate.lit.js +8 -13
  338. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +5 -13
  339. package/dist/generated/templates/TabContainerTemplate.lit.js +13 -23
  340. package/dist/generated/templates/TabInOverflowTemplate.lit.js +8 -13
  341. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -17
  342. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  343. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  344. package/dist/generated/templates/TabTemplate.lit.js +5 -11
  345. package/dist/generated/templates/TableCellTemplate.lit.js +4 -11
  346. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -11
  347. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  348. package/dist/generated/templates/TableRowTemplate.lit.js +12 -18
  349. package/dist/generated/templates/TableTemplate.lit.js +13 -15
  350. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -15
  351. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -15
  352. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -15
  353. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -13
  354. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  355. package/dist/generated/templates/TitleTemplate.lit.js +10 -17
  356. package/dist/generated/templates/ToastTemplate.lit.js +5 -11
  357. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -13
  358. package/dist/generated/templates/TokenTemplate.lit.js +7 -14
  359. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -16
  360. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -13
  361. package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -24
  362. package/dist/generated/templates/TreeTemplate.lit.js +5 -12
  363. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -14
  364. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -13
  365. package/dist/generated/themes/Avatar.css.js +5 -5
  366. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  367. package/dist/generated/themes/Badge.css.js +5 -5
  368. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  369. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  370. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  371. package/dist/generated/themes/BusyIndicator.css.js +5 -5
  372. package/dist/generated/themes/Button.css.js +5 -5
  373. package/dist/generated/themes/Button.ie11.css.js +8 -0
  374. package/dist/generated/themes/Calendar.css.js +5 -5
  375. package/dist/generated/themes/CalendarHeader.css.js +5 -5
  376. package/dist/generated/themes/Card.css.js +5 -5
  377. package/dist/generated/themes/CardHeader.css.js +8 -0
  378. package/dist/generated/themes/Carousel.css.js +5 -5
  379. package/dist/generated/themes/CheckBox.css.js +5 -5
  380. package/dist/generated/themes/ColorPalette.css.js +8 -0
  381. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  382. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  383. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  384. package/dist/generated/themes/ColorPicker.css.js +8 -0
  385. package/dist/generated/themes/ComboBox.css.js +5 -5
  386. package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
  387. package/dist/generated/themes/CustomListItem.css.js +5 -5
  388. package/dist/generated/themes/DatePicker.css.js +5 -5
  389. package/dist/generated/themes/DatePickerPopover.css.js +5 -5
  390. package/dist/generated/themes/DateRangePicker.css.js +5 -5
  391. package/dist/generated/themes/DateTimePicker.css.js +5 -5
  392. package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
  393. package/dist/generated/themes/DayPicker.css.js +5 -5
  394. package/dist/generated/themes/Dialog.css.js +5 -5
  395. package/dist/generated/themes/FileUploader.css.js +5 -5
  396. package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
  397. package/dist/generated/themes/GrowingButton.css.js +8 -0
  398. package/dist/generated/themes/Icon.css.js +5 -5
  399. package/dist/generated/themes/Input.css.js +5 -5
  400. package/dist/generated/themes/InputIcon.css.js +5 -5
  401. package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
  402. package/dist/generated/themes/Label.css.js +5 -5
  403. package/dist/generated/themes/Link.css.js +5 -5
  404. package/dist/generated/themes/List.css.js +5 -5
  405. package/dist/generated/themes/ListItem.css.js +5 -5
  406. package/dist/generated/themes/ListItemBase.css.js +5 -5
  407. package/dist/generated/themes/Menu.css.js +8 -0
  408. package/dist/generated/themes/MessageStrip.css.js +5 -5
  409. package/dist/generated/themes/MonthPicker.css.js +5 -5
  410. package/dist/generated/themes/MultiComboBox.css.js +5 -5
  411. package/dist/generated/themes/MultiComboBoxPopover.css.js +8 -0
  412. package/dist/generated/themes/MultiInput.css.js +5 -5
  413. package/dist/generated/themes/Panel.css.js +5 -5
  414. package/dist/generated/themes/Popover.css.js +5 -5
  415. package/dist/generated/themes/Popup.css.js +5 -5
  416. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  417. package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
  418. package/dist/generated/themes/PopupsCommon.css.js +5 -5
  419. package/dist/generated/themes/ProgressIndicator.css.js +5 -5
  420. package/dist/generated/themes/RadioButton.css.js +5 -5
  421. package/dist/generated/themes/RangeSlider.css.js +8 -0
  422. package/dist/generated/themes/RatingIndicator.css.js +5 -5
  423. package/dist/generated/themes/ResponsivePopover.css.js +5 -5
  424. package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
  425. package/dist/generated/themes/SegmentedButton.css.js +5 -5
  426. package/dist/generated/themes/Select.css.js +5 -5
  427. package/dist/generated/themes/SelectPopover.css.js +5 -5
  428. package/dist/generated/themes/SliderBase.css.js +5 -5
  429. package/dist/generated/themes/SplitButton.css.js +8 -0
  430. package/dist/generated/themes/StepInput.css.js +8 -0
  431. package/dist/generated/themes/Suggestions.css.js +8 -0
  432. package/dist/generated/themes/Switch.css.js +5 -5
  433. package/dist/generated/themes/Tab.css.js +5 -5
  434. package/dist/generated/themes/TabContainer.css.js +5 -5
  435. package/dist/generated/themes/TabInOverflow.css.js +5 -5
  436. package/dist/generated/themes/TabInStrip.css.js +5 -5
  437. package/dist/generated/themes/TabSemanticIcon.css.js +8 -0
  438. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  439. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  440. package/dist/generated/themes/Table.css.js +5 -5
  441. package/dist/generated/themes/TableCell.css.js +5 -5
  442. package/dist/generated/themes/TableColumn.css.js +5 -5
  443. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  444. package/dist/generated/themes/TableRow.css.js +5 -5
  445. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  446. package/dist/generated/themes/TextArea.css.js +5 -5
  447. package/dist/generated/themes/TimePicker.css.js +5 -5
  448. package/dist/generated/themes/TimePickerPopover.css.js +5 -5
  449. package/dist/generated/themes/TimeSelection.css.js +8 -0
  450. package/dist/generated/themes/Title.css.js +5 -5
  451. package/dist/generated/themes/Toast.css.js +5 -5
  452. package/dist/generated/themes/ToggleButton.css.js +5 -5
  453. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  454. package/dist/generated/themes/Token.css.js +5 -5
  455. package/dist/generated/themes/Tokenizer.css.js +5 -5
  456. package/dist/generated/themes/TokenizerPopover.css.js +8 -0
  457. package/dist/generated/themes/Tree.css.js +5 -5
  458. package/dist/generated/themes/TreeListItem.css.js +5 -5
  459. package/dist/generated/themes/ValueStateMessage.css.js +5 -5
  460. package/dist/generated/themes/WheelSlider.css.js +5 -5
  461. package/dist/generated/themes/YearPicker.css.js +5 -5
  462. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  464. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  465. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  467. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  468. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  470. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -0
  471. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  472. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -0
  473. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -0
  474. package/dist/i18n/messagebundle.properties +389 -0
  475. package/dist/i18n/messagebundle_ar.properties +246 -0
  476. package/dist/i18n/messagebundle_bg.properties +246 -0
  477. package/dist/i18n/messagebundle_ca.properties +246 -0
  478. package/dist/i18n/messagebundle_cs.properties +246 -0
  479. package/dist/i18n/messagebundle_cy.properties +246 -0
  480. package/dist/i18n/messagebundle_da.properties +246 -0
  481. package/dist/i18n/messagebundle_de.properties +246 -0
  482. package/dist/i18n/messagebundle_el.properties +246 -0
  483. package/dist/i18n/messagebundle_en.properties +246 -0
  484. package/dist/i18n/messagebundle_en_GB.properties +246 -0
  485. package/dist/i18n/messagebundle_en_US_sappsd.properties +246 -0
  486. package/dist/i18n/messagebundle_en_US_saprigi.properties +246 -0
  487. package/dist/i18n/messagebundle_en_US_saptrc.properties +246 -0
  488. package/dist/i18n/messagebundle_es.properties +246 -0
  489. package/dist/i18n/messagebundle_es_MX.properties +246 -0
  490. package/dist/i18n/messagebundle_et.properties +246 -0
  491. package/dist/i18n/messagebundle_fi.properties +246 -0
  492. package/dist/i18n/messagebundle_fr.properties +246 -0
  493. package/dist/i18n/messagebundle_fr_CA.properties +246 -0
  494. package/dist/i18n/messagebundle_hi.properties +246 -0
  495. package/dist/i18n/messagebundle_hr.properties +246 -0
  496. package/dist/i18n/messagebundle_hu.properties +246 -0
  497. package/dist/i18n/messagebundle_id.properties +246 -0
  498. package/dist/i18n/messagebundle_in.properties +172 -0
  499. package/dist/i18n/messagebundle_it.properties +246 -0
  500. package/dist/i18n/messagebundle_iw.properties +246 -0
  501. package/dist/i18n/messagebundle_ja.properties +246 -0
  502. package/dist/i18n/messagebundle_kk.properties +246 -0
  503. package/dist/i18n/messagebundle_ko.properties +246 -0
  504. package/dist/i18n/messagebundle_lt.properties +246 -0
  505. package/dist/i18n/messagebundle_lv.properties +246 -0
  506. package/dist/i18n/messagebundle_ms.properties +246 -0
  507. package/dist/i18n/messagebundle_nl.properties +246 -0
  508. package/dist/i18n/messagebundle_no.properties +246 -0
  509. package/dist/i18n/messagebundle_pl.properties +246 -0
  510. package/dist/i18n/messagebundle_pt.properties +246 -0
  511. package/dist/i18n/messagebundle_pt_PT.properties +246 -0
  512. package/dist/i18n/messagebundle_ro.properties +246 -0
  513. package/dist/i18n/messagebundle_ru.properties +246 -0
  514. package/dist/i18n/messagebundle_sh.properties +246 -0
  515. package/dist/i18n/messagebundle_sk.properties +246 -0
  516. package/dist/i18n/messagebundle_sl.properties +246 -0
  517. package/dist/i18n/messagebundle_sv.properties +246 -0
  518. package/dist/i18n/messagebundle_th.properties +246 -0
  519. package/dist/i18n/messagebundle_tr.properties +246 -0
  520. package/dist/i18n/messagebundle_uk.properties +246 -0
  521. package/dist/i18n/messagebundle_vi.properties +246 -0
  522. package/dist/i18n/messagebundle_zh_CN.properties +246 -0
  523. package/dist/i18n/messagebundle_zh_TW.properties +246 -0
  524. package/dist/popup-utils/OpenedPopupsRegistry.js +1 -1
  525. package/dist/popup-utils/PopoverRegistry.js +2 -4
  526. package/dist/timepicker-utils/TimeSlider.js +15 -13
  527. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  528. package/dist/types/AvatarGroupType.js +43 -0
  529. package/dist/types/AvatarShape.js +1 -1
  530. package/dist/types/AvatarSize.js +1 -1
  531. package/dist/types/BreadcrumbsDesign.js +42 -0
  532. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  533. package/dist/types/BusyIndicatorSize.js +1 -1
  534. package/dist/types/ButtonDesign.js +8 -1
  535. package/dist/types/CalendarSelectionMode.js +47 -0
  536. package/dist/types/CarouselArrowsPlacement.js +3 -3
  537. package/dist/types/GrowingMode.js +48 -0
  538. package/dist/types/HasPopup.js +62 -0
  539. package/dist/types/InputType.js +7 -7
  540. package/dist/types/LinkDesign.js +1 -1
  541. package/dist/types/ListGrowingMode.js +48 -0
  542. package/dist/types/ListItemType.js +1 -1
  543. package/dist/types/ListMode.js +1 -1
  544. package/dist/types/ListSeparators.js +1 -1
  545. package/{src/types/MessageStripType.js → dist/types/MessageStripDesign.js} +7 -7
  546. package/dist/types/PanelAccessibleRole.js +1 -1
  547. package/dist/types/PopoverHorizontalAlign.js +1 -1
  548. package/dist/types/PopoverPlacementType.js +2 -2
  549. package/dist/types/PopoverVerticalAlign.js +1 -2
  550. package/dist/types/Priority.js +1 -1
  551. package/dist/types/SemanticColor.js +1 -1
  552. package/dist/types/SwitchDesign.js +40 -0
  553. package/dist/types/TabContainerTabsPlacement.js +5 -5
  554. package/dist/types/TabLayout.js +1 -1
  555. package/dist/types/TableGrowingMode.js +48 -0
  556. package/dist/types/TableMode.js +47 -0
  557. package/dist/types/TableRowType.js +40 -0
  558. package/dist/types/TabsOverflowMode.js +40 -0
  559. package/dist/types/TitleLevel.js +1 -1
  560. package/dist/types/ToastPlacement.js +1 -2
  561. package/dist/types/WrappingType.js +41 -0
  562. package/package-scripts.js +1 -0
  563. package/package.json +17 -7
  564. package/src/Assets-static.js +6 -0
  565. package/src/Assets.js +2 -1
  566. package/src/Avatar.hbs +14 -3
  567. package/src/Avatar.js +189 -49
  568. package/src/AvatarGroup.hbs +30 -0
  569. package/src/AvatarGroup.js +603 -0
  570. package/src/Badge.hbs +2 -4
  571. package/src/Badge.js +30 -19
  572. package/src/Breadcrumbs.hbs +44 -0
  573. package/src/Breadcrumbs.js +632 -0
  574. package/src/BreadcrumbsItem.js +103 -0
  575. package/src/BreadcrumbsPopover.hbs +28 -0
  576. package/src/BusyIndicator.hbs +28 -14
  577. package/src/BusyIndicator.js +122 -36
  578. package/src/Button.hbs +8 -7
  579. package/src/Button.js +170 -80
  580. package/src/Calendar.hbs +53 -48
  581. package/src/Calendar.js +331 -665
  582. package/src/CalendarDate.js +45 -0
  583. package/src/CalendarHeader.hbs +30 -40
  584. package/src/CalendarHeader.js +110 -59
  585. package/src/CalendarPart.js +111 -0
  586. package/src/Card.hbs +7 -40
  587. package/src/Card.js +38 -198
  588. package/src/CardHeader.hbs +45 -0
  589. package/src/CardHeader.js +283 -0
  590. package/src/Carousel.hbs +24 -16
  591. package/src/Carousel.js +262 -94
  592. package/src/CheckBox.hbs +11 -7
  593. package/src/CheckBox.js +178 -65
  594. package/src/ColorPalette.hbs +52 -0
  595. package/src/ColorPalette.js +494 -0
  596. package/src/ColorPaletteDialog.hbs +18 -0
  597. package/src/ColorPaletteItem.hbs +11 -0
  598. package/src/ColorPaletteItem.js +137 -0
  599. package/src/ColorPalettePopover.hbs +31 -0
  600. package/src/ColorPalettePopover.js +244 -0
  601. package/src/ColorPicker.hbs +106 -0
  602. package/src/ColorPicker.js +609 -0
  603. package/src/ComboBox.hbs +5 -4
  604. package/src/ComboBox.js +441 -159
  605. package/src/ComboBoxGroupItem.js +70 -0
  606. package/src/ComboBoxItem.js +3 -25
  607. package/src/ComboBoxPopover.hbs +29 -19
  608. package/src/CustomListItem.js +22 -4
  609. package/src/DateComponentBase.js +168 -0
  610. package/src/DatePicker.hbs +6 -6
  611. package/src/DatePicker.js +281 -532
  612. package/src/DatePickerPopover.hbs +21 -18
  613. package/src/DateRangePicker.js +183 -399
  614. package/src/DateTimePicker.js +97 -413
  615. package/src/DateTimePickerPopover.hbs +31 -53
  616. package/src/DayPicker.hbs +18 -12
  617. package/src/DayPicker.js +442 -652
  618. package/src/Dialog.hbs +17 -13
  619. package/src/Dialog.js +229 -58
  620. package/src/DurationPicker.js +109 -511
  621. package/src/FileUploader.hbs +3 -0
  622. package/src/FileUploader.js +74 -36
  623. package/src/FileUploaderPopover.hbs +4 -2
  624. package/src/Filters.js +28 -0
  625. package/src/GroupHeaderListItem.hbs +4 -4
  626. package/src/GroupHeaderListItem.js +22 -13
  627. package/src/Icon.hbs +4 -3
  628. package/src/Icon.js +177 -58
  629. package/src/Input.hbs +20 -9
  630. package/src/Input.js +658 -171
  631. package/src/InputPopover.hbs +17 -14
  632. package/src/Interfaces.js +202 -0
  633. package/src/Label.hbs +2 -3
  634. package/src/Label.js +34 -13
  635. package/src/Link.hbs +4 -2
  636. package/src/Link.js +134 -43
  637. package/src/List.hbs +77 -37
  638. package/src/List.js +442 -119
  639. package/src/ListItem.hbs +23 -9
  640. package/src/ListItem.js +90 -18
  641. package/src/ListItemBase.js +33 -4
  642. package/src/Menu.hbs +100 -0
  643. package/src/Menu.js +500 -0
  644. package/src/MenuItem.js +162 -0
  645. package/src/MessageStrip.hbs +10 -12
  646. package/src/MessageStrip.js +77 -47
  647. package/src/MonthPicker.hbs +6 -6
  648. package/src/MonthPicker.js +169 -232
  649. package/src/MultiComboBox.hbs +9 -9
  650. package/src/MultiComboBox.js +756 -148
  651. package/src/MultiComboBoxItem.js +6 -1
  652. package/src/MultiComboBoxPopover.hbs +42 -19
  653. package/src/MultiInput.hbs +3 -2
  654. package/src/MultiInput.js +122 -33
  655. package/src/Option.js +69 -5
  656. package/src/Panel.hbs +30 -19
  657. package/src/Panel.js +77 -78
  658. package/src/Popover.hbs +2 -2
  659. package/src/Popover.js +244 -105
  660. package/src/Popup.hbs +5 -2
  661. package/src/Popup.js +203 -74
  662. package/src/PopupBlockLayer.hbs +1 -1
  663. package/src/ProgressIndicator.hbs +7 -2
  664. package/src/ProgressIndicator.js +33 -20
  665. package/src/RadioButton.hbs +8 -6
  666. package/src/RadioButton.js +148 -44
  667. package/src/RadioButtonGroup.js +53 -29
  668. package/src/RangeSlider.hbs +54 -2
  669. package/src/RangeSlider.js +423 -62
  670. package/src/RatingIndicator.hbs +28 -10
  671. package/src/RatingIndicator.js +66 -44
  672. package/src/ResponsivePopover.hbs +19 -12
  673. package/src/ResponsivePopover.js +74 -51
  674. package/src/SegmentedButton.hbs +13 -6
  675. package/src/SegmentedButton.js +116 -69
  676. package/src/SegmentedButtonItem.hbs +41 -0
  677. package/src/SegmentedButtonItem.js +114 -0
  678. package/src/Select.hbs +27 -19
  679. package/src/Select.js +297 -117
  680. package/src/SelectPopover.hbs +30 -25
  681. package/src/Slider.hbs +32 -1
  682. package/src/Slider.js +126 -20
  683. package/src/SliderBase.hbs +22 -6
  684. package/src/SliderBase.js +230 -91
  685. package/src/SplitButton.hbs +53 -0
  686. package/src/SplitButton.js +440 -0
  687. package/src/StandardListItem.hbs +9 -7
  688. package/src/StandardListItem.js +35 -9
  689. package/src/StepInput.hbs +81 -0
  690. package/src/StepInput.js +684 -0
  691. package/src/SuggestionGroupItem.js +64 -0
  692. package/src/SuggestionItem.js +13 -26
  693. package/src/SuggestionListItem.hbs +4 -4
  694. package/src/SuggestionListItem.js +17 -6
  695. package/src/Switch.hbs +22 -7
  696. package/src/Switch.js +82 -32
  697. package/src/Tab.hbs +5 -1
  698. package/src/Tab.js +152 -36
  699. package/src/TabContainer.hbs +60 -58
  700. package/src/TabContainer.js +753 -135
  701. package/src/TabContainerPopover.hbs +7 -9
  702. package/src/TabInOverflow.hbs +18 -9
  703. package/src/TabInStrip.hbs +26 -15
  704. package/src/TabSeparator.js +43 -3
  705. package/src/TabSeparatorInOverflow.hbs +9 -0
  706. package/src/TabSeparatorInStrip.hbs +6 -0
  707. package/src/Table.hbs +110 -25
  708. package/src/Table.js +928 -26
  709. package/src/TableCell.hbs +1 -0
  710. package/src/TableCell.js +11 -9
  711. package/src/TableColumn.hbs +1 -0
  712. package/src/TableColumn.js +13 -10
  713. package/src/TableGroupRow.hbs +12 -0
  714. package/src/TableGroupRow.js +167 -0
  715. package/src/TableRow.hbs +31 -2
  716. package/src/TableRow.js +260 -13
  717. package/src/TextArea.hbs +2 -4
  718. package/src/TextArea.js +105 -54
  719. package/src/TextAreaPopover.hbs +3 -3
  720. package/src/TimePicker.hbs +6 -3
  721. package/src/TimePicker.js +25 -743
  722. package/src/TimePickerBase.js +472 -0
  723. package/src/TimePickerPopover.hbs +27 -52
  724. package/src/TimeSelection.hbs +60 -0
  725. package/src/TimeSelection.js +500 -0
  726. package/src/Title.js +16 -9
  727. package/src/Toast.hbs +12 -11
  728. package/src/Toast.js +19 -8
  729. package/src/ToggleButton.js +26 -8
  730. package/src/Token.hbs +2 -1
  731. package/src/Token.js +34 -17
  732. package/src/Tokenizer.hbs +4 -5
  733. package/src/Tokenizer.js +295 -45
  734. package/src/TokenizerPopover.hbs +18 -18
  735. package/src/Tree.hbs +12 -2
  736. package/src/Tree.js +102 -42
  737. package/src/TreeItem.js +67 -11
  738. package/src/TreeListItem.hbs +17 -4
  739. package/src/TreeListItem.js +98 -3
  740. package/src/WheelSlider.hbs +17 -10
  741. package/src/WheelSlider.js +65 -58
  742. package/src/YearPicker.hbs +9 -7
  743. package/src/YearPicker.js +186 -293
  744. package/src/features/ColorPaletteMoreColors.js +42 -0
  745. package/src/features/InputElementsFormSupport.js +8 -6
  746. package/src/features/InputSuggestions.js +218 -48
  747. package/src/i18n/messagebundle.properties +196 -181
  748. package/src/i18n/messagebundle_ar.properties +106 -110
  749. package/src/i18n/messagebundle_bg.properties +106 -110
  750. package/src/i18n/messagebundle_ca.properties +106 -110
  751. package/src/i18n/messagebundle_cs.properties +106 -110
  752. package/src/i18n/messagebundle_cy.properties +246 -0
  753. package/src/i18n/messagebundle_da.properties +106 -110
  754. package/src/i18n/messagebundle_de.properties +106 -110
  755. package/src/i18n/messagebundle_el.properties +106 -110
  756. package/src/i18n/messagebundle_en.properties +106 -110
  757. package/src/i18n/messagebundle_en_GB.properties +106 -112
  758. package/src/i18n/messagebundle_en_US_sappsd.properties +106 -112
  759. package/src/i18n/messagebundle_en_US_saprigi.properties +106 -110
  760. package/src/i18n/messagebundle_en_US_saptrc.properties +106 -112
  761. package/src/i18n/messagebundle_es.properties +106 -110
  762. package/src/i18n/messagebundle_es_MX.properties +106 -112
  763. package/src/i18n/messagebundle_et.properties +106 -110
  764. package/src/i18n/messagebundle_fi.properties +106 -110
  765. package/src/i18n/messagebundle_fr.properties +106 -110
  766. package/src/i18n/messagebundle_fr_CA.properties +246 -0
  767. package/src/i18n/messagebundle_hi.properties +106 -110
  768. package/src/i18n/messagebundle_hr.properties +106 -110
  769. package/src/i18n/messagebundle_hu.properties +106 -110
  770. package/src/i18n/messagebundle_id.properties +246 -0
  771. package/src/i18n/messagebundle_in.properties +172 -0
  772. package/src/i18n/messagebundle_it.properties +106 -110
  773. package/src/i18n/messagebundle_iw.properties +106 -110
  774. package/src/i18n/messagebundle_ja.properties +108 -112
  775. package/src/i18n/messagebundle_kk.properties +106 -110
  776. package/src/i18n/messagebundle_ko.properties +106 -110
  777. package/src/i18n/messagebundle_lt.properties +106 -110
  778. package/src/i18n/messagebundle_lv.properties +106 -110
  779. package/src/i18n/messagebundle_ms.properties +106 -110
  780. package/src/i18n/messagebundle_nl.properties +106 -110
  781. package/src/i18n/messagebundle_no.properties +106 -110
  782. package/src/i18n/messagebundle_pl.properties +106 -110
  783. package/src/i18n/messagebundle_pt.properties +106 -110
  784. package/src/i18n/messagebundle_pt_PT.properties +246 -0
  785. package/src/i18n/messagebundle_ro.properties +105 -109
  786. package/src/i18n/messagebundle_ru.properties +106 -110
  787. package/src/i18n/messagebundle_sh.properties +106 -110
  788. package/src/i18n/messagebundle_sk.properties +106 -110
  789. package/src/i18n/messagebundle_sl.properties +106 -110
  790. package/src/i18n/messagebundle_sv.properties +106 -110
  791. package/src/i18n/messagebundle_th.properties +106 -110
  792. package/src/i18n/messagebundle_tr.properties +106 -110
  793. package/src/i18n/messagebundle_uk.properties +109 -113
  794. package/src/i18n/messagebundle_vi.properties +106 -110
  795. package/src/i18n/messagebundle_zh_CN.properties +106 -110
  796. package/src/i18n/messagebundle_zh_TW.properties +106 -110
  797. package/src/popup-utils/OpenedPopupsRegistry.js +1 -1
  798. package/src/popup-utils/PopoverRegistry.js +2 -4
  799. package/src/themes/Avatar.css +213 -0
  800. package/src/themes/AvatarGroup.css +83 -0
  801. package/src/themes/Badge.css +139 -0
  802. package/src/themes/Breadcrumbs.css +104 -0
  803. package/src/themes/BreadcrumbsPopover.css +10 -0
  804. package/src/themes/BrowserScrollbar.css +25 -0
  805. package/src/themes/BusyIndicator.css +143 -0
  806. package/src/themes/Button.css +281 -0
  807. package/src/themes/Button.ie11.css +48 -0
  808. package/src/themes/Calendar.css +23 -0
  809. package/src/themes/CalendarHeader.css +134 -0
  810. package/src/themes/Card.css +45 -0
  811. package/src/themes/CardHeader.css +131 -0
  812. package/src/themes/Carousel.css +144 -0
  813. package/src/themes/CheckBox.css +273 -0
  814. package/src/themes/ColorPalette.css +77 -0
  815. package/src/themes/ColorPaletteItem.css +107 -0
  816. package/src/themes/ColorPalettePopover.css +21 -0
  817. package/src/themes/ColorPaletteStaticArea.css +17 -0
  818. package/src/themes/ColorPicker.css +235 -0
  819. package/src/themes/ComboBox.css +10 -0
  820. package/src/themes/ComboBoxPopover.css +17 -0
  821. package/src/themes/CustomListItem.css +31 -0
  822. package/src/themes/DatePicker.css +46 -0
  823. package/src/themes/DatePickerPopover.css +9 -0
  824. package/src/themes/DateRangePicker.css +16 -0
  825. package/src/themes/DateTimePicker.css +11 -0
  826. package/src/themes/DateTimePickerPopover.css +82 -0
  827. package/src/themes/DayPicker.css +280 -0
  828. package/src/themes/Dialog.css +74 -0
  829. package/src/themes/FileUploader.css +62 -0
  830. package/src/themes/GroupHeaderListItem.css +27 -0
  831. package/src/themes/GrowingButton.css +68 -0
  832. package/src/themes/Icon.css +50 -0
  833. package/src/themes/Input.css +450 -0
  834. package/src/themes/InputIcon.css +41 -0
  835. package/src/themes/InvisibleTextStyles.css +9 -0
  836. package/src/themes/Label.css +79 -0
  837. package/src/themes/Link.css +94 -0
  838. package/src/themes/List.css +117 -0
  839. package/src/themes/ListItem.css +202 -0
  840. package/src/themes/ListItemBase.css +86 -0
  841. package/src/themes/Menu.css +88 -0
  842. package/src/themes/MessageStrip.css +93 -0
  843. package/src/themes/MonthPicker.css +82 -0
  844. package/src/themes/MultiComboBox.css +41 -0
  845. package/src/themes/MultiComboBoxPopover.css +3 -0
  846. package/src/themes/MultiInput.css +18 -0
  847. package/src/themes/Panel.css +135 -0
  848. package/src/themes/Popover.css +85 -0
  849. package/src/themes/Popup.css +5 -0
  850. package/src/themes/PopupGlobal.css +3 -0
  851. package/src/themes/PopupStaticAreaStyles.css +17 -0
  852. package/src/themes/PopupsCommon.css +128 -0
  853. package/src/themes/ProgressIndicator.css +214 -0
  854. package/src/themes/RadioButton.css +300 -0
  855. package/src/themes/RangeSlider.css +89 -0
  856. package/src/themes/RatingIndicator.css +96 -0
  857. package/src/themes/ResponsivePopover.css +25 -0
  858. package/src/themes/ResponsivePopoverCommon.css +208 -0
  859. package/src/themes/SegmentedButton.css +81 -0
  860. package/src/themes/Select.css +39 -0
  861. package/src/themes/SelectPopover.css +8 -0
  862. package/src/themes/SliderBase.css +246 -0
  863. package/src/themes/SplitButton.css +209 -0
  864. package/src/themes/StepInput.css +271 -0
  865. package/src/themes/Suggestions.css +17 -0
  866. package/src/themes/Switch.css +378 -0
  867. package/src/themes/Tab.css +9 -0
  868. package/src/themes/TabContainer.css +129 -0
  869. package/src/themes/TabInOverflow.css +68 -0
  870. package/src/themes/TabInStrip.css +398 -0
  871. package/src/themes/TabSemanticIcon.css +18 -0
  872. package/src/themes/TabSeparatorInOverflow.css +10 -0
  873. package/src/themes/TabSeparatorInStrip.css +5 -0
  874. package/src/themes/Table.css +96 -0
  875. package/src/themes/TableCell.css +24 -0
  876. package/src/themes/TableColumn.css +23 -0
  877. package/src/themes/TableGroupRow.css +32 -0
  878. package/src/themes/TableRow.css +93 -0
  879. package/src/themes/TapHighlightColor.css +3 -0
  880. package/src/themes/TextArea.css +369 -0
  881. package/src/themes/TimePicker.css +50 -0
  882. package/src/themes/TimePickerPopover.css +15 -0
  883. package/src/themes/TimeSelection.css +27 -0
  884. package/src/themes/Title.css +65 -0
  885. package/src/themes/Toast.css +93 -0
  886. package/src/themes/ToggleButton.css +128 -0
  887. package/src/themes/ToggleButton.ie11.css +48 -0
  888. package/src/themes/Token.css +108 -0
  889. package/src/themes/Tokenizer.css +68 -0
  890. package/src/themes/TokenizerPopover.css +4 -0
  891. package/src/themes/Tree.css +11 -0
  892. package/src/themes/TreeListItem.css +101 -0
  893. package/src/themes/ValueStateMessage.css +83 -0
  894. package/src/themes/WheelSlider.css +203 -0
  895. package/src/themes/YearPicker.css +83 -0
  896. package/src/themes/base/Avatar-parameters.css +57 -0
  897. package/src/themes/base/AvatarGroup-parameters.css +3 -0
  898. package/src/themes/base/Badge-parameters.css +43 -0
  899. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  900. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  901. package/src/themes/base/Button-parameters.css +35 -0
  902. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  903. package/src/themes/base/Card-parameters.css +19 -0
  904. package/src/themes/base/Carousel-parameters.css +10 -0
  905. package/src/themes/base/CheckBox-parameters.css +56 -0
  906. package/src/themes/base/ColorPalette-parameters.css +21 -0
  907. package/src/themes/base/ColorPicker-parameters.css +13 -0
  908. package/src/themes/base/DatePicker-parameters.css +6 -0
  909. package/src/themes/base/DayPicker-parameters.css +41 -0
  910. package/src/themes/base/Dialog-parameters.css +10 -0
  911. package/src/themes/base/FileUploader-parameters.css +4 -0
  912. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  913. package/src/themes/base/GrowingButton-parameters.css +6 -0
  914. package/src/themes/base/Input-parameters.css +63 -0
  915. package/src/themes/base/InputIcon-parameters.css +19 -0
  916. package/src/themes/base/Link-parameters.css +14 -0
  917. package/src/themes/base/List-parameters.css +3 -0
  918. package/src/themes/base/ListItemBase-parameters.css +10 -0
  919. package/src/themes/base/Menu-parameters.css +4 -0
  920. package/src/themes/base/MessageStrip-parameters.css +18 -0
  921. package/src/themes/base/MonthPicker-parameters.css +16 -0
  922. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  923. package/src/themes/base/Panel-parameters.css +18 -0
  924. package/src/themes/base/PopupsCommon-parameters.css +11 -0
  925. package/src/themes/base/ProgressIndicator-parameters.css +38 -0
  926. package/src/themes/base/RadioButton-parameters.css +46 -0
  927. package/src/themes/base/RatingIndicator-parameters.css +20 -0
  928. package/src/themes/base/SegmentedButtton-parameters.css +9 -0
  929. package/src/themes/base/Select-parameters.css +9 -0
  930. package/src/themes/base/SelectPopover-parameters.css +4 -0
  931. package/src/themes/base/SliderBase-parameters.css +101 -0
  932. package/src/themes/base/SplitButton-parameters.css +17 -0
  933. package/src/themes/base/StepInput-parameters.css +24 -0
  934. package/src/themes/base/Switch-parameters.css +158 -0
  935. package/src/themes/base/TabContainer-parameters.css +100 -0
  936. package/src/themes/base/Table-parameters.css +8 -0
  937. package/src/themes/base/TableColumn-parameters.css +3 -0
  938. package/src/themes/base/TableGroupRow-parameters.css +4 -0
  939. package/src/themes/base/TableRow-parameters.css +3 -0
  940. package/src/themes/base/TextArea-parameters.css +26 -0
  941. package/src/themes/base/TimePicker-parameters.css +4 -0
  942. package/src/themes/base/TimelineItem-parameters.css +10 -0
  943. package/src/themes/base/Toast-parameters.css +6 -0
  944. package/src/themes/base/ToggleButton-parameters.css +8 -0
  945. package/src/themes/base/Token-parameters.css +24 -0
  946. package/src/themes/base/Tokenizer-parameters.css +3 -0
  947. package/src/themes/base/ValueStateMessage-parameters.css +12 -0
  948. package/src/themes/base/WheelSlider-parameters.css +15 -0
  949. package/src/themes/base/YearPicker-parameters.css +16 -0
  950. package/src/themes/base/rtl-parameters.css +43 -0
  951. package/src/themes/base/sizes-parameters.css +395 -0
  952. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  953. package/src/themes/sap_belize/Card-parameters.css +5 -0
  954. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  955. package/src/themes/sap_belize/DayPicker-parameters.css +23 -0
  956. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  957. package/src/themes/sap_belize/Input-parameters.css +21 -0
  958. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  959. package/src/themes/sap_belize/Panel-parameters.css +12 -0
  960. package/src/themes/sap_belize/PopupsCommon-parameters.css +5 -0
  961. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  962. package/src/themes/sap_belize/SliderBase-parameters.css +25 -0
  963. package/src/themes/sap_belize/SplitButton-parameters.css +6 -0
  964. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  965. package/src/themes/sap_belize/Table-parameters.css +7 -0
  966. package/src/themes/sap_belize/TableRow-parameters.css +5 -0
  967. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  968. package/src/themes/sap_belize/Token-parameters.css +8 -0
  969. package/src/themes/sap_belize/Tokenizer-parameters.css +5 -0
  970. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  971. package/src/themes/sap_belize/parameters-bundle.css +54 -0
  972. package/src/themes/sap_belize/sizes-parameters.css +15 -0
  973. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  974. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  975. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  976. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  977. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  978. package/src/themes/sap_belize_hcb/Card-parameters.css +7 -0
  979. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  980. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  981. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  982. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  983. package/src/themes/sap_belize_hcb/FileUploader-parameters.css +5 -0
  984. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  985. package/src/themes/sap_belize_hcb/Input-parameters.css +33 -0
  986. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  987. package/src/themes/sap_belize_hcb/Link-parameters.css +8 -0
  988. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +9 -0
  989. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  990. package/src/themes/sap_belize_hcb/Panel-parameters.css +13 -0
  991. package/src/themes/sap_belize_hcb/PopupsCommon-parameters.css +5 -0
  992. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  993. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +14 -0
  994. package/src/themes/sap_belize_hcb/Select-parameters.css +10 -0
  995. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +19 -0
  996. package/src/themes/sap_belize_hcb/SplitButton-parameters.css +10 -0
  997. package/src/themes/sap_belize_hcb/Switch-parameters.css +16 -0
  998. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +45 -0
  999. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  1000. package/src/themes/sap_belize_hcb/TableRow-parameters.css +6 -0
  1001. package/src/themes/sap_belize_hcb/TextArea-parameters.css +13 -0
  1002. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  1003. package/src/themes/sap_belize_hcb/Token-parameters.css +10 -0
  1004. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +7 -0
  1005. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  1006. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  1007. package/src/themes/sap_belize_hcb/parameters-bundle.css +53 -0
  1008. package/src/themes/sap_belize_hcb/sizes-parameters.css +15 -0
  1009. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  1010. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  1011. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  1012. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  1013. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  1014. package/src/themes/sap_belize_hcw/Card-parameters.css +7 -0
  1015. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  1016. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  1017. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  1018. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  1019. package/src/themes/sap_belize_hcw/FileUploader-parameters.css +5 -0
  1020. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  1021. package/src/themes/sap_belize_hcw/Input-parameters.css +33 -0
  1022. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  1023. package/src/themes/sap_belize_hcw/Link-parameters.css +8 -0
  1024. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +9 -0
  1025. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  1026. package/src/themes/sap_belize_hcw/Panel-parameters.css +13 -0
  1027. package/src/themes/sap_belize_hcw/PopupsCommon-parameters.css +5 -0
  1028. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  1029. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +14 -0
  1030. package/src/themes/sap_belize_hcw/Select-parameters.css +10 -0
  1031. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +19 -0
  1032. package/src/themes/sap_belize_hcw/SplitButton-parameters.css +10 -0
  1033. package/src/themes/sap_belize_hcw/Switch-parameters.css +16 -0
  1034. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +45 -0
  1035. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  1036. package/src/themes/sap_belize_hcw/TableRow-parameters.css +6 -0
  1037. package/src/themes/sap_belize_hcw/TextArea-parameters.css +13 -0
  1038. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  1039. package/src/themes/sap_belize_hcw/Token-parameters.css +10 -0
  1040. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +7 -0
  1041. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  1042. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  1043. package/src/themes/sap_belize_hcw/parameters-bundle.css +53 -0
  1044. package/src/themes/sap_belize_hcw/sizes-parameters.css +15 -0
  1045. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  1046. package/src/themes/sap_fiori_3/Button-parameters.css +15 -0
  1047. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  1048. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  1049. package/src/themes/sap_fiori_3/DayPicker-parameters.css +23 -0
  1050. package/src/themes/sap_fiori_3/Input-parameters.css +5 -0
  1051. package/src/themes/sap_fiori_3/Link-parameters.css +6 -0
  1052. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  1053. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  1054. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  1055. package/src/themes/sap_fiori_3/Panel-parameters.css +5 -0
  1056. package/src/themes/sap_fiori_3/SliderBase-parameters.css +19 -0
  1057. package/src/themes/sap_fiori_3/TabContainer-parameters.css +13 -0
  1058. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  1059. package/src/themes/sap_fiori_3/Token-parameters.css +6 -0
  1060. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  1061. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  1062. package/src/themes/sap_fiori_3/parameters-bundle.css +54 -0
  1063. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  1064. package/src/themes/sap_fiori_3_dark/Button-parameters.css +15 -0
  1065. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  1066. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  1067. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +23 -0
  1068. package/src/themes/sap_fiori_3_dark/Input-parameters.css +5 -0
  1069. package/src/themes/sap_fiori_3_dark/Link-parameters.css +6 -0
  1070. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  1071. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  1072. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  1073. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +5 -0
  1074. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  1075. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +13 -0
  1076. package/src/themes/sap_fiori_3_dark/Token-parameters.css +5 -0
  1077. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  1078. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  1079. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +53 -0
  1080. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  1081. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  1082. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +11 -0
  1083. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  1084. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  1085. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1086. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1087. package/src/themes/sap_fiori_3_hcb/ColorPicker-parameters.css +5 -0
  1088. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1089. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +24 -0
  1090. package/src/themes/sap_fiori_3_hcb/FileUploader-parameters.css +5 -0
  1091. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1092. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +28 -0
  1093. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +10 -0
  1094. package/src/themes/sap_fiori_3_hcb/ListItem-parameters.css +3 -0
  1095. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +9 -0
  1096. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1097. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1098. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1099. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +14 -0
  1100. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +10 -0
  1101. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +16 -0
  1102. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +12 -0
  1103. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +16 -0
  1104. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +45 -0
  1105. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1106. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1107. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +18 -0
  1108. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1109. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1110. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1111. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +7 -0
  1112. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1113. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1114. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +55 -0
  1115. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +8 -0
  1116. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1117. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1118. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +11 -0
  1119. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1120. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1121. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1122. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1123. package/src/themes/sap_fiori_3_hcw/ColorPicker-parameters.css +5 -0
  1124. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1125. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +23 -0
  1126. package/src/themes/sap_fiori_3_hcw/FileUploader-parameters.css +5 -0
  1127. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1128. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +28 -0
  1129. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +10 -0
  1130. package/src/themes/sap_fiori_3_hcw/ListItem-parameters.css +3 -0
  1131. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +9 -0
  1132. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1133. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1134. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1135. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +14 -0
  1136. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +10 -0
  1137. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +15 -0
  1138. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +12 -0
  1139. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +16 -0
  1140. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +45 -0
  1141. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1142. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1143. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +18 -0
  1144. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1145. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1146. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1147. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +7 -0
  1148. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1149. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1150. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +55 -0
  1151. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +8 -0
  1152. package/src/themes/sap_horizon/Avatar-parameters.css +53 -0
  1153. package/src/themes/sap_horizon/AvatarGroup-parameters.css +5 -0
  1154. package/src/themes/sap_horizon/Badge-parameters.css +43 -0
  1155. package/src/themes/sap_horizon/Breadcrumbs-parameters.css +3 -0
  1156. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1157. package/src/themes/sap_horizon/Button-parameters.css +19 -0
  1158. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1159. package/src/themes/sap_horizon/Card-parameters.css +15 -0
  1160. package/src/themes/sap_horizon/CheckBox-parameters.css +49 -0
  1161. package/src/themes/sap_horizon/ColorPalette-parameters.css +21 -0
  1162. package/src/themes/sap_horizon/ColorPicker-parameters.css +12 -0
  1163. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1164. package/src/themes/sap_horizon/DayPicker-parameters.css +34 -0
  1165. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1166. package/src/themes/sap_horizon/FileUploader-parameters.css +5 -0
  1167. package/src/themes/sap_horizon/GrowingButton-parameters.css +6 -0
  1168. package/src/themes/sap_horizon/Icon-parameters.css +3 -0
  1169. package/src/themes/sap_horizon/Input-parameters.css +34 -0
  1170. package/src/themes/sap_horizon/InputIcon-parameters.css +24 -0
  1171. package/src/themes/sap_horizon/Link-parameters.css +14 -0
  1172. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1173. package/src/themes/sap_horizon/ListItemBase-parameters.css +5 -0
  1174. package/src/themes/sap_horizon/Menu-parameters.css +5 -0
  1175. package/src/themes/sap_horizon/MessageStrip-parameters.css +5 -0
  1176. package/src/themes/sap_horizon/MonthPicker-parameters.css +16 -0
  1177. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1178. package/src/themes/sap_horizon/Panel-parameters.css +11 -0
  1179. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +38 -0
  1180. package/src/themes/sap_horizon/ProgressIndicatorLayout-parameters.css +39 -0
  1181. package/src/themes/sap_horizon/RadioButton-parameters.css +15 -0
  1182. package/src/themes/sap_horizon/RatingIndicator-parameters.css +17 -0
  1183. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1184. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1185. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1186. package/src/themes/sap_horizon/SliderBase-parameters.css +81 -0
  1187. package/src/themes/sap_horizon/SplitButton-parameters.css +17 -0
  1188. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1189. package/src/themes/sap_horizon/Switch-parameters.css +144 -0
  1190. package/src/themes/sap_horizon/TabContainer-parameters.css +31 -0
  1191. package/src/themes/sap_horizon/Table-parameters.css +9 -0
  1192. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1193. package/src/themes/sap_horizon/TableGroupRow-parameters.css +6 -0
  1194. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1195. package/src/themes/sap_horizon/TextArea-parameters.css +17 -0
  1196. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1197. package/src/themes/sap_horizon/ToggleButton-parameters.css +1 -0
  1198. package/src/themes/sap_horizon/Token-parameters.css +19 -0
  1199. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +11 -0
  1200. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1201. package/src/themes/sap_horizon/YearPicker-parameters.css +15 -0
  1202. package/src/themes/sap_horizon/parameters-bundle.css +62 -0
  1203. package/src/themes/sap_horizon/sizes-parameters.css +42 -0
  1204. package/src/themes/sap_horizon_dark/Avatar-parameters.css +53 -0
  1205. package/src/themes/sap_horizon_dark/Badge-parameters.css +43 -0
  1206. package/src/themes/sap_horizon_dark/Breadcrumbs-parameters.css +3 -0
  1207. package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +7 -0
  1208. package/src/themes/sap_horizon_dark/Button-parameters.css +19 -0
  1209. package/src/themes/sap_horizon_dark/CalendarHeader-parameters.css +19 -0
  1210. package/src/themes/sap_horizon_dark/Card-parameters.css +15 -0
  1211. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +49 -0
  1212. package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +21 -0
  1213. package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +12 -0
  1214. package/src/themes/sap_horizon_dark/DatePicker-parameters.css +6 -0
  1215. package/src/themes/sap_horizon_dark/DayPicker-parameters.css +34 -0
  1216. package/src/themes/sap_horizon_dark/Dialog-parameters.css +11 -0
  1217. package/src/themes/sap_horizon_dark/FileUploader-parameters.css +5 -0
  1218. package/src/themes/sap_horizon_dark/GrowingButton-parameters.css +6 -0
  1219. package/src/themes/sap_horizon_dark/Icon-parameters.css +3 -0
  1220. package/src/themes/sap_horizon_dark/Input-parameters.css +34 -0
  1221. package/src/themes/sap_horizon_dark/InputIcon-parameters.css +24 -0
  1222. package/src/themes/sap_horizon_dark/Link-parameters.css +14 -0
  1223. package/src/themes/sap_horizon_dark/List-parameters.css +5 -0
  1224. package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +6 -0
  1225. package/src/themes/sap_horizon_dark/Menu-parameters.css +5 -0
  1226. package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +5 -0
  1227. package/src/themes/sap_horizon_dark/MonthPicker-parameters.css +16 -0
  1228. package/src/themes/sap_horizon_dark/MultiComboBox-parameters.css +5 -0
  1229. package/src/themes/sap_horizon_dark/Panel-parameters.css +11 -0
  1230. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +15 -0
  1231. package/src/themes/sap_horizon_dark/RatingIndicator-parameters.css +17 -0
  1232. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +10 -0
  1233. package/src/themes/sap_horizon_dark/Select-parameters.css +5 -0
  1234. package/src/themes/sap_horizon_dark/SelectPopover-parameters.css +4 -0
  1235. package/src/themes/sap_horizon_dark/SliderBase-parameters.css +79 -0
  1236. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +17 -0
  1237. package/src/themes/sap_horizon_dark/StepInput-parameters.css +25 -0
  1238. package/src/themes/sap_horizon_dark/Switch-parameters.css +144 -0
  1239. package/src/themes/sap_horizon_dark/TabContainer-parameters.css +22 -0
  1240. package/src/themes/sap_horizon_dark/Table-parameters.css +9 -0
  1241. package/src/themes/sap_horizon_dark/TableColumn-parameters.css +5 -0
  1242. package/src/themes/sap_horizon_dark/TableGroupRow-parameters.css +6 -0
  1243. package/src/themes/sap_horizon_dark/TableRow-parameters.css +5 -0
  1244. package/src/themes/sap_horizon_dark/TextArea-parameters.css +17 -0
  1245. package/src/themes/sap_horizon_dark/TimePicker-parameters.css +6 -0
  1246. package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +1 -0
  1247. package/src/themes/sap_horizon_dark/Token-parameters.css +19 -0
  1248. package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +11 -0
  1249. package/src/themes/sap_horizon_dark/WheelSlider-parameters.css +19 -0
  1250. package/src/themes/sap_horizon_dark/YearPicker-parameters.css +15 -0
  1251. package/src/themes/sap_horizon_dark/parameters-bundle.css +63 -0
  1252. package/src/themes/sap_horizon_dark/sizes-parameters.css +40 -0
  1253. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1254. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1255. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1256. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1257. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1258. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1259. package/src/themes/sap_horizon_exp/Input-parameters.css +43 -0
  1260. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +13 -0
  1261. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1262. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1263. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1264. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1265. package/src/themes/sap_horizon_exp/Panel-parameters.css +5 -0
  1266. package/src/themes/sap_horizon_exp/Popover-parameters.css +4 -0
  1267. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +29 -0
  1268. package/src/themes/sap_horizon_exp/RatingIndicator-parameters.css +16 -0
  1269. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1270. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1271. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1272. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1273. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1274. package/src/themes/sap_horizon_exp/Token-parameters.css +7 -0
  1275. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1276. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1277. package/src/themes/sap_horizon_exp/parameters-bundle.css +47 -0
  1278. package/src/themes/sap_horizon_hcb/Avatar-parameters.css +53 -0
  1279. package/src/themes/sap_horizon_hcb/Badge-parameters.css +43 -0
  1280. package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +5 -0
  1281. package/src/themes/sap_horizon_hcb/Button-parameters.css +10 -0
  1282. package/src/themes/sap_horizon_hcb/CalendarHeader-parameters.css +11 -0
  1283. package/src/themes/sap_horizon_hcb/Card-parameters.css +11 -0
  1284. package/src/themes/sap_horizon_hcb/Carousel-parameters.css +9 -0
  1285. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +49 -0
  1286. package/src/themes/sap_horizon_hcb/ColorPicker-parameters.css +10 -0
  1287. package/src/themes/sap_horizon_hcb/DatePicker-parameters.css +5 -0
  1288. package/src/themes/sap_horizon_hcb/DayPicker-parameters.css +31 -0
  1289. package/src/themes/sap_horizon_hcb/Dialog-parameters.css +6 -0
  1290. package/src/themes/sap_horizon_hcb/FileUploader-parameters.css +6 -0
  1291. package/src/themes/sap_horizon_hcb/GrowingButton-parameters.css +8 -0
  1292. package/src/themes/sap_horizon_hcb/Input-parameters.css +31 -0
  1293. package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +11 -0
  1294. package/src/themes/sap_horizon_hcb/Link-parameters.css +10 -0
  1295. package/src/themes/sap_horizon_hcb/ListItem-parameters.css +3 -0
  1296. package/src/themes/sap_horizon_hcb/Menu-parameters.css +5 -0
  1297. package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +10 -0
  1298. package/src/themes/sap_horizon_hcb/MonthPicker-parameters.css +12 -0
  1299. package/src/themes/sap_horizon_hcb/Panel-parameters.css +8 -0
  1300. package/src/themes/sap_horizon_hcb/ProgressIndicator-parameters.css +21 -0
  1301. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +16 -0
  1302. package/src/themes/sap_horizon_hcb/RatingIndicator-parameters.css +16 -0
  1303. package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +9 -0
  1304. package/src/themes/sap_horizon_hcb/Select-parameters.css +10 -0
  1305. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +77 -0
  1306. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +12 -0
  1307. package/src/themes/sap_horizon_hcb/Switch-parameters.css +144 -0
  1308. package/src/themes/sap_horizon_hcb/TabContainer-parameters.css +45 -0
  1309. package/src/themes/sap_horizon_hcb/Table-parameters.css +9 -0
  1310. package/src/themes/sap_horizon_hcb/TableGroupRow-parameters.css +6 -0
  1311. package/src/themes/sap_horizon_hcb/TableRow-parameters.css +5 -0
  1312. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +19 -0
  1313. package/src/themes/sap_horizon_hcb/TimePicker-parameters.css +5 -0
  1314. package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +1 -0
  1315. package/src/themes/sap_horizon_hcb/Token-parameters.css +19 -0
  1316. package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +13 -0
  1317. package/src/themes/sap_horizon_hcb/WheelSlider-parameters.css +17 -0
  1318. package/src/themes/sap_horizon_hcb/YearPicker-parameters.css +12 -0
  1319. package/src/themes/sap_horizon_hcb/parameters-bundle.css +55 -0
  1320. package/src/themes/sap_horizon_hcb/sizes-parameters.css +9 -0
  1321. package/src/themes/sap_horizon_hcw/Avatar-parameters.css +53 -0
  1322. package/src/themes/sap_horizon_hcw/Badge-parameters.css +43 -0
  1323. package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +5 -0
  1324. package/src/themes/sap_horizon_hcw/Button-parameters.css +10 -0
  1325. package/src/themes/sap_horizon_hcw/CalendarHeader-parameters.css +11 -0
  1326. package/src/themes/sap_horizon_hcw/Card-parameters.css +11 -0
  1327. package/src/themes/sap_horizon_hcw/Carousel-parameters.css +9 -0
  1328. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +49 -0
  1329. package/src/themes/sap_horizon_hcw/ColorPicker-parameters.css +10 -0
  1330. package/src/themes/sap_horizon_hcw/DatePicker-parameters.css +5 -0
  1331. package/src/themes/sap_horizon_hcw/DayPicker-parameters.css +25 -0
  1332. package/src/themes/sap_horizon_hcw/Dialog-parameters.css +6 -0
  1333. package/src/themes/sap_horizon_hcw/FileUploader-parameters.css +6 -0
  1334. package/src/themes/sap_horizon_hcw/GrowingButton-parameters.css +8 -0
  1335. package/src/themes/sap_horizon_hcw/Input-parameters.css +31 -0
  1336. package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +11 -0
  1337. package/src/themes/sap_horizon_hcw/Link-parameters.css +10 -0
  1338. package/src/themes/sap_horizon_hcw/ListItem-parameters.css +3 -0
  1339. package/src/themes/sap_horizon_hcw/Menu-parameters.css +5 -0
  1340. package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +10 -0
  1341. package/src/themes/sap_horizon_hcw/MonthPicker-parameters.css +12 -0
  1342. package/src/themes/sap_horizon_hcw/Panel-parameters.css +9 -0
  1343. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +20 -0
  1344. package/src/themes/sap_horizon_hcw/RatingIndicator-parameters.css +16 -0
  1345. package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +9 -0
  1346. package/src/themes/sap_horizon_hcw/Select-parameters.css +10 -0
  1347. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +78 -0
  1348. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +12 -0
  1349. package/src/themes/sap_horizon_hcw/Switch-parameters.css +144 -0
  1350. package/src/themes/sap_horizon_hcw/TabContainer-parameters.css +45 -0
  1351. package/src/themes/sap_horizon_hcw/Table-parameters.css +9 -0
  1352. package/src/themes/sap_horizon_hcw/TableGroupRow-parameters.css +6 -0
  1353. package/src/themes/sap_horizon_hcw/TableRow-parameters.css +5 -0
  1354. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +19 -0
  1355. package/src/themes/sap_horizon_hcw/TimePicker-parameters.css +5 -0
  1356. package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +1 -0
  1357. package/src/themes/sap_horizon_hcw/Token-parameters.css +19 -0
  1358. package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +13 -0
  1359. package/src/themes/sap_horizon_hcw/WheelSlider-parameters.css +17 -0
  1360. package/src/themes/sap_horizon_hcw/YearPicker-parameters.css +12 -0
  1361. package/src/themes/sap_horizon_hcw/parameters-bundle.css +55 -0
  1362. package/src/themes/sap_horizon_hcw/sizes-parameters.css +9 -0
  1363. package/src/timepicker-utils/TimeSlider.js +15 -13
  1364. package/src/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  1365. package/src/types/AvatarGroupType.js +43 -0
  1366. package/src/types/AvatarShape.js +1 -1
  1367. package/src/types/AvatarSize.js +1 -1
  1368. package/src/types/BreadcrumbsDesign.js +42 -0
  1369. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1370. package/src/types/BusyIndicatorSize.js +1 -1
  1371. package/src/types/ButtonDesign.js +8 -1
  1372. package/src/types/CalendarSelectionMode.js +47 -0
  1373. package/src/types/CarouselArrowsPlacement.js +3 -3
  1374. package/src/types/GrowingMode.js +48 -0
  1375. package/src/types/HasPopup.js +62 -0
  1376. package/src/types/InputType.js +7 -7
  1377. package/src/types/LinkDesign.js +1 -1
  1378. package/src/types/ListGrowingMode.js +48 -0
  1379. package/src/types/ListItemType.js +1 -1
  1380. package/src/types/ListMode.js +1 -1
  1381. package/src/types/ListSeparators.js +1 -1
  1382. package/{dist/types/MessageStripType.js → src/types/MessageStripDesign.js} +7 -7
  1383. package/src/types/PanelAccessibleRole.js +1 -1
  1384. package/src/types/PopoverHorizontalAlign.js +1 -1
  1385. package/src/types/PopoverPlacementType.js +2 -2
  1386. package/src/types/PopoverVerticalAlign.js +1 -2
  1387. package/src/types/Priority.js +1 -1
  1388. package/src/types/SemanticColor.js +1 -1
  1389. package/src/types/SwitchDesign.js +40 -0
  1390. package/src/types/TabContainerTabsPlacement.js +5 -5
  1391. package/src/types/TabLayout.js +1 -1
  1392. package/src/types/TableGrowingMode.js +48 -0
  1393. package/src/types/TableMode.js +47 -0
  1394. package/src/types/TableRowType.js +40 -0
  1395. package/src/types/TabsOverflowMode.js +40 -0
  1396. package/src/types/TitleLevel.js +1 -1
  1397. package/src/types/ToastPlacement.js +1 -2
  1398. package/src/types/WrappingType.js +41 -0
  1399. package/dist/ComboBoxFilters.js +0 -40
  1400. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -14
  1401. package/dist/generated/templates/DateRangePickerTemplate.lit.js +0 -16
  1402. package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -17
  1403. package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -16
  1404. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -14
  1405. package/dist/generated/themes/ComboBoxItem.css.js +0 -8
  1406. package/dist/generated/themes/DurationPicker.css.js +0 -8
  1407. package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
  1408. package/dist/popup-utils/PopupUtils.js +0 -84
  1409. package/dist/types/AvatarFitType.js +0 -40
  1410. package/dist/webcomponentsjs/LICENSE.md +0 -19
  1411. package/dist/webcomponentsjs/README.md +0 -229
  1412. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  1413. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  1414. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  1415. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  1416. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  1417. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  1418. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  1419. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  1420. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  1421. package/dist/webcomponentsjs/package.json +0 -46
  1422. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  1423. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  1424. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  1425. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  1426. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  1427. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  1428. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  1429. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  1430. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  1431. package/src/ComboBoxFilters.js +0 -40
  1432. package/src/ComboBoxItem.hbs +0 -0
  1433. package/src/DateRangePicker.hbs +0 -1
  1434. package/src/DurationPicker.hbs +0 -29
  1435. package/src/DurationPickerPopover.hbs +0 -48
  1436. package/src/TabSeparator.hbs +0 -1
  1437. package/src/popup-utils/PopupUtils.js +0 -84
  1438. package/src/types/AvatarFitType.js +0 -40
@@ -1,24 +1,36 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
3
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
4
- import ScrollEnablement from "@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js";
4
+ import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
5
5
  import slideDown from "@ui5/webcomponents-base/dist/animations/slideDown.js";
6
6
  import slideUp from "@ui5/webcomponents-base/dist/animations/slideUp.js";
7
7
  import AnimationMode from "@ui5/webcomponents-base/dist/types/AnimationMode.js";
8
8
  import { getAnimationMode } from "@ui5/webcomponents-base/dist/config/AnimationMode.js";
9
9
  import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
10
- import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
11
- import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
10
+ import {
11
+ isSpace,
12
+ isEnter,
13
+ isDown,
14
+ isRight,
15
+ isLeft,
16
+ } from "@ui5/webcomponents-base/dist/Keys.js";
17
+ import MediaRange from "@ui5/webcomponents-base/dist/MediaRange.js";
18
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
12
19
  import "@ui5/webcomponents-icons/dist/slim-arrow-up.js";
13
20
  import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
14
- import "@ui5/webcomponents-icons/dist/slim-arrow-left.js";
15
- import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
16
- import { TABCONTAINER_PREVIOUS_ICON_ACC_NAME, TABCONTAINER_NEXT_ICON_ACC_NAME, TABCONTAINER_OVERFLOW_MENU_TITLE } from "./generated/i18n/i18n-defaults.js";
21
+ import {
22
+ TABCONTAINER_PREVIOUS_ICON_ACC_NAME,
23
+ TABCONTAINER_NEXT_ICON_ACC_NAME,
24
+ TABCONTAINER_OVERFLOW_MENU_TITLE,
25
+ TABCONTAINER_END_OVERFLOW,
26
+ TABCONTAINER_POPOVER_CANCEL_BUTTON,
27
+ } from "./generated/i18n/i18n-defaults.js";
17
28
  import Button from "./Button.js";
18
29
  import Icon from "./Icon.js";
19
30
  import List from "./List.js";
20
31
  import ResponsivePopover from "./ResponsivePopover.js";
21
32
  import TabContainerTabsPlacement from "./types/TabContainerTabsPlacement.js";
33
+ import SemanticColor from "./types/SemanticColor.js";
22
34
 
23
35
  // Templates
24
36
  import TabContainerTemplate from "./generated/templates/TabContainerTemplate.lit.js";
@@ -28,8 +40,7 @@ import TabContainerPopoverTemplate from "./generated/templates/TabContainerPopov
28
40
  import tabContainerCss from "./generated/themes/TabContainer.css.js";
29
41
  import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
30
42
  import TabLayout from "./types/TabLayout.js";
31
-
32
- const SCROLL_STEP = 128;
43
+ import TabsOverflowMode from "./types/TabsOverflowMode.js";
33
44
 
34
45
  const tabStyles = [];
35
46
  const staticAreaTabStyles = [];
@@ -41,27 +52,32 @@ const metadata = {
41
52
  tag: "ui5-tabcontainer",
42
53
  languageAware: true,
43
54
  managedSlots: true,
55
+ fastNavigation: true,
44
56
  slots: /** @lends sap.ui.webcomponents.main.TabContainer.prototype */ {
45
57
  /**
46
58
  * Defines the tabs.
47
59
  * <br><br>
48
60
  * <b>Note:</b> Use <code>ui5-tab</code> and <code>ui5-tab-separator</code> for the intended design.
49
61
  *
50
- * @type {HTMLElement[]}
62
+ * @type {sap.ui.webcomponents.main.ITab[]}
51
63
  * @public
52
- * @slot
64
+ * @slot items
53
65
  */
54
66
  "default": {
55
67
  propertyName: "items",
56
68
  type: HTMLElement,
57
69
  individualSlots: true,
58
- listenFor: { include: ["*"] },
70
+ invalidateOnChildChange: {
71
+ properties: true,
72
+ slots: false,
73
+ },
59
74
  },
60
75
 
61
76
  /**
62
- * Defines the button which will open the overflow menu. If nothing is provided to this slot, the default button will be used.
77
+ * Defines the button which will open the overflow menu. If nothing is provided to this slot,
78
+ * the default button will be used.
63
79
  *
64
- * @type {HTMLElement[]}
80
+ * @type {sap.ui.webcomponents.main.IButton}
65
81
  * @public
66
82
  * @slot
67
83
  * @since 1.0.0-rc.9
@@ -69,6 +85,19 @@ const metadata = {
69
85
  overflowButton: {
70
86
  type: HTMLElement,
71
87
  },
88
+
89
+ /**
90
+ * Defines the button which will open the start overflow menu if available. If nothing is provided to this slot,
91
+ * the default button will be used.
92
+ *
93
+ * @type {sap.ui.webcomponents.main.IButton}
94
+ * @public
95
+ * @slot
96
+ * @since 1.1.0
97
+ */
98
+ startOverflowButton: {
99
+ type: HTMLElement,
100
+ },
72
101
  },
73
102
  properties: /** @lends sap.ui.webcomponents.main.TabContainer.prototype */ {
74
103
  /**
@@ -95,16 +124,23 @@ const metadata = {
95
124
  },
96
125
 
97
126
  /**
98
- * Defines the placement of the tab strip (tab buttons area) relative to the actual tabs' content.
127
+ * Defines the placement of the tab strip relative to the actual tabs' content.
99
128
  * <br><br>
100
129
  * <b>Note:</b> By default the tab strip is displayed above the tabs' content area and this is the recommended
101
- * layout for most scenarios. Set to <code>Bottom</code> only when the <code>ui5-tabcontainer</code> is at the
130
+ * layout for most scenarios. Set to <code>Bottom</code> only when the component is at the
102
131
  * bottom of the page and you want the tab strip to act as a menu.
103
132
  *
133
+ * <br><br>
134
+ * Available options are:
135
+ * <ul>
136
+ * <li><code>Top</code></li>
137
+ * <li><code>Bottom</code></li>
138
+ * </ul>
139
+ *
104
140
  * @type {TabContainerTabsPlacement}
105
141
  * @defaultvalue "Top"
106
142
  * @since 1.0.0-rc.7
107
- * @public
143
+ * @private
108
144
  */
109
145
  tabsPlacement: {
110
146
  type: TabContainerTabsPlacement,
@@ -114,23 +150,25 @@ const metadata = {
114
150
  /**
115
151
  * Defines whether the overflow select list is displayed.
116
152
  * <br><br>
117
- * The overflow select list represents a list, where all tab filters are displayed
118
- * so that it's easier for the user to select a specific tab filter.
153
+ * The overflow select list represents a list, where all tabs are displayed
154
+ * so that it's easier for the user to select a specific tab.
119
155
  *
120
156
  * @type {boolean}
121
157
  * @defaultvalue false
122
158
  * @public
159
+ * @deprecated Since the introduction of TabsOverflowMode overflows will always be visible if there is not enough space for all tabs,
160
+ * all hidden tabs are moved to a select list in the respective overflows and are accessible via the overflowButton and / or startOverflowButton
123
161
  */
124
162
  showOverflow: {
125
163
  type: Boolean,
126
164
  },
127
165
 
128
166
  /**
129
- * Defines the alignment of the <code>main text</code> and the <code>additionalText</code> of a tab.
167
+ * Defines the alignment of the content and the <code>additionalText</code> of a tab.
130
168
  *
131
169
  * <br><br>
132
170
  * <b>Note:</b>
133
- * The <code>main text</code> and the <code>additionalText</code> would be displayed vertically by defualt,
171
+ * The content and the <code>additionalText</code> would be displayed vertically by defualt,
134
172
  * but when set to <code>Inline</code>, they would be displayed horizontally.
135
173
  *
136
174
  * <br><br>
@@ -138,7 +176,7 @@ const metadata = {
138
176
  * <ul>
139
177
  * <li><code>Standard</code></li>
140
178
  * <li><code>Inline</code></li>
141
- * <ul>
179
+ * </ul>
142
180
  *
143
181
  * @type {TabLayout}
144
182
  * @defaultvalue "Standard"
@@ -149,33 +187,71 @@ const metadata = {
149
187
  defaultValue: TabLayout.Standard,
150
188
  },
151
189
 
190
+ /**
191
+ * Defines the overflow mode of the tab strip. If you have a large number of tabs, only the tabs that can fit on screen will be visible.
192
+ * All other tabs that can 't fit on the screen are available in an overflow tab "More".
193
+ *
194
+ * <br><br>
195
+ * <b>Note:</b>
196
+ * Only one overflow at the end would be displayed by default,
197
+ * but when set to <code>StartAndEnd</code>, there will be two overflows on both ends, and tab order will not change on tab selection.
198
+ *
199
+ * <br><br>
200
+ * Available options are:
201
+ * <ul>
202
+ * <li><code>End</code></li>
203
+ * <li><code>StartAndEnd</code></li>
204
+ * </ul>
205
+ *
206
+ * @type {TabsOverflowMode}
207
+ * @defaultvalue "End"
208
+ * @since 1.1.0
209
+ * @public
210
+ */
211
+ tabsOverflowMode: {
212
+ type: TabsOverflowMode,
213
+ defaultValue: TabsOverflowMode.End,
214
+ },
215
+
216
+ /**
217
+ * Defines the current media query size.
218
+ *
219
+ * @type {string}
220
+ * @private
221
+ */
222
+ mediaRange: {
223
+ type: String,
224
+ },
225
+
152
226
  _selectedTab: {
153
227
  type: Object,
154
228
  },
155
229
 
156
- _scrollable: {
230
+ _animationRunning: {
157
231
  type: Boolean,
158
232
  noAttribute: true,
159
233
  },
160
234
 
161
- _scrollableBack: {
235
+ _contentCollapsed: {
162
236
  type: Boolean,
163
237
  noAttribute: true,
164
238
  },
165
239
 
166
- _scrollableForward: {
167
- type: Boolean,
240
+ _startOverflowText: {
241
+ type: String,
168
242
  noAttribute: true,
243
+ defaultValue: "0",
169
244
  },
170
245
 
171
- _animationRunning: {
172
- type: Boolean,
246
+ _endOverflowText: {
247
+ type: String,
173
248
  noAttribute: true,
249
+ defaultValue: "More",
174
250
  },
175
251
 
176
- _contentCollapsed: {
177
- type: Boolean,
178
- noAttribute: true,
252
+ _overflowItems: {
253
+ type: Object,
254
+ multiple: true,
179
255
  },
180
256
  },
181
257
  events: /** @lends sap.ui.webcomponents.main.TabContainer.prototype */ {
@@ -185,12 +261,14 @@ const metadata = {
185
261
  *
186
262
  * @event sap.ui.webcomponents.main.TabContainer#tab-select
187
263
  * @param {HTMLElement} tab The selected <code>tab</code>.
188
- * @param {Number} tabIndex The selected <code>tab</code> index.
264
+ * @param {Integer} tabIndex The selected <code>tab</code> index.
189
265
  * @public
190
266
  */
191
267
  "tab-select": {
192
- tab: { type: HTMLElement },
193
- tabIndex: { type: Number },
268
+ detail: {
269
+ tab: { type: HTMLElement },
270
+ tabIndex: { type: Number },
271
+ },
194
272
  },
195
273
  },
196
274
  };
@@ -209,10 +287,32 @@ const metadata = {
209
287
  * The <code>ui5-tabcontainer</code> can hold two types of entities:
210
288
  * <ul>
211
289
  * <li><code>ui5-tab</code> - contains all the information on an item (text and icon)</li>
212
- * <li><code>ui5-tab-separator</code> - used to separate tabs with a vertical line</li>
290
+ * <li><code>ui5-tab-separator</code> - used to separate tabs with a line</li>
213
291
  * </ul>
214
292
  *
215
- * <h3>ES6 import</h3>
293
+ * <h3>Hierarchies</h3>
294
+ * Multiple sub tabs could be placed underneath one main tab. Nesting allows deeper hierarchies with indentations
295
+ * to indicate the level of each nested tab. When a tab has both sub tabs and own content its click area is split
296
+ * to allow the user to display the content or alternatively to expand / collapse the list of sub tabs.
297
+ *
298
+ * <h3>CSS Shadow Parts</h3>
299
+ *
300
+ * <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.
301
+ * <br>
302
+ * The <code>ui5-tabcontainer</code> exposes the following CSS Shadow Parts:
303
+ * <ul>
304
+ * <li>content - Used to style the content of the component</li>
305
+ * </ul>
306
+ *
307
+ * <h3>Keyboard Handling</h3>
308
+ *
309
+ * <h4>Fast Navigation</h4>
310
+ * 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>.
311
+ * In order to use this functionality, you need to import the following module:
312
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
313
+ * <br><br>
314
+ *
315
+ * <h3>ES6 Module Import</h3>
216
316
  *
217
317
  * <code>import "@ui5/webcomponents/dist/TabContainer";</code>
218
318
  * <br>
@@ -264,118 +364,250 @@ class TabContainer extends UI5Element {
264
364
  constructor() {
265
365
  super();
266
366
 
267
- this._handleHeaderResize = this._handleHeaderResize.bind(this);
268
-
269
- // Init ScrollEnablement
270
- this._scrollEnablement = new ScrollEnablement(this);
271
- this._scrollEnablement.attachEvent("scroll", this._updateScrolling.bind(this));
367
+ this._handleResize = this._handleResize.bind(this);
272
368
 
273
369
  // Init ItemNavigation
274
- this._initItemNavigation();
275
-
276
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
370
+ this._itemNavigation = new ItemNavigation(this, {
371
+ getItemsCallback: () => this._getFocusableTabs(),
372
+ });
277
373
  }
278
374
 
279
375
  onBeforeRendering() {
280
- // Set external properties to items
281
- this.items.filter(item => !item.isSeparator).forEach((item, index, arr) => {
282
- item._isInline = this.tabLayout === TabLayout.Inline;
283
- item._mixedMode = this.mixedMode;
284
- item._posinset = index + 1;
285
- item._setsize = arr.length;
286
- item._getTabContainerHeaderItemCallback = _ => {
287
- return this.getDomRef().querySelector(`#${item._id}`);
288
- };
289
- item._itemSelectCallback = this._onItemSelect.bind(this);
290
- });
376
+ // update selected tab
377
+ this._allItemsAndSubItems = this._getAllSubItems(this.items);
378
+ if (this._allItemsAndSubItems.length) {
379
+ const selectedTabs = this._allItemsAndSubItems.filter(tab => tab.selected);
380
+ if (selectedTabs.length) {
381
+ this._selectedTab = selectedTabs[0];
382
+ } else {
383
+ this._selectedTab = this._allItemsAndSubItems[0];
384
+ this._selectedTab._selected = true;
385
+ }
386
+ }
387
+
388
+ this._setItemsExternalProperties(this.items);
291
389
 
292
390
  if (!this._animationRunning) {
293
391
  this._contentCollapsed = this.collapsed;
294
392
  }
393
+
394
+ if (this.showOverflow) {
395
+ console.warn(`The "show-overflow" property is deprecated and will be removed in a future release.`); // eslint-disable-line
396
+ }
295
397
  }
296
398
 
297
399
  onAfterRendering() {
298
- this._scrollEnablement.scrollContainer = this._getHeaderScrollContainer();
299
- this._updateScrolling();
400
+ this.items.forEach(item => {
401
+ item._tabInStripDomRef = this.getDomRef().querySelector(`*[data-ui5-stable="${item.stableDomRef}"]`);
402
+ });
300
403
  }
301
404
 
302
405
  onEnterDOM() {
303
- ResizeHandler.register(this._getHeader(), this._handleHeaderResize);
406
+ ResizeHandler.register(this._getHeader(), this._handleResize);
304
407
  }
305
408
 
306
409
  onExitDOM() {
307
- ResizeHandler.deregister(this._getHeader(), this._handleHeaderResize);
410
+ ResizeHandler.deregister(this._getHeader(), this._handleResize);
411
+ }
412
+
413
+ async _handleResize() {
414
+ if (this.responsivePopover && this.responsivePopover.opened) {
415
+ this.responsivePopover.close();
416
+ }
417
+ this._updateMediaRange();
418
+
419
+ await renderFinished(); // await the tab container to have rendered its representation of tabs
420
+ this._setItemsForStrip();
308
421
  }
309
422
 
310
- _onHeaderClick(event) {
423
+ _updateMediaRange() {
424
+ this.mediaRange = MediaRange.getCurrentRange(MediaRange.RANGESETS.RANGE_4STEPS, this.getDomRef().offsetWidth);
425
+ }
426
+
427
+ _setItemsExternalProperties(items) {
428
+ items.filter(item => !item.isSeparator).forEach((item, index, arr) => {
429
+ item._isInline = this.tabLayout === TabLayout.Inline;
430
+ item._mixedMode = this.mixedMode;
431
+ item._posinset = index + 1;
432
+ item._setsize = arr.length;
433
+ item._getTabContainerHeaderItemCallback = _ => this.getDomRef().querySelector(`#${item._id}`);
434
+ item._itemSelectCallback = this._onItemSelect.bind(this);
435
+ item._getRealDomRef = () => this.getDomRef().querySelector(`*[data-ui5-stable=${item.stableDomRef}]`);
436
+ item._realTab = this._selectedTab;
437
+ item._isTopLevelTab = this.items.some(i => i === item);
438
+ walk(items, tab => {
439
+ tab._realTab = item._realTab;
440
+ });
441
+ });
442
+ }
443
+
444
+ async _onTabStripClick(event) {
311
445
  const tab = getTab(event.target);
312
- if (!tab) {
446
+ if (!tab || tab._realTab.disabled) {
313
447
  return;
314
448
  }
315
449
 
450
+ event.preventDefault();
451
+ event.stopPropagation();
452
+ if (event.target.hasAttribute("ui5-button")) {
453
+ this._onTabExpandButtonClick(event);
454
+ return;
455
+ }
456
+
457
+ if (!tab._realTab._hasOwnContent && tab._realTab.tabs.length) {
458
+ this._overflowItems = tab._realTab.subTabs;
459
+ this._addStyleIndent(this._overflowItems);
460
+
461
+ this.responsivePopover = await this._respPopover();
462
+ if (this.responsivePopover.opened) {
463
+ this.responsivePopover.close();
464
+ } else {
465
+ this._setInitialFocus(this._getSelectedInPopover());
466
+ }
467
+
468
+ this.responsivePopover.showAt(tab);
469
+ return;
470
+ }
316
471
  this._onHeaderItemSelect(tab);
317
472
  }
318
473
 
319
- _onHeaderKeyDown(event) {
474
+ async _onTabExpandButtonClick(event) {
475
+ event.stopPropagation();
476
+ event.preventDefault();
477
+ let button = event.target;
478
+ let tabInstance = button.tab;
479
+
480
+ if (tabInstance) {
481
+ tabInstance.focus();
482
+ }
483
+
484
+ if ((event.type === "keydown") && !event.target._realTab.isSingleClickArea) {
485
+ button = event.target.querySelectorAll(".ui5-tab-expand-button")[0];
486
+ tabInstance = event.target._realTab;
487
+ }
488
+
489
+ // if clicked between the expand button and the tab
490
+ if (!tabInstance) {
491
+ this._onHeaderItemSelect(button.parentElement);
492
+ return;
493
+ }
494
+
495
+ this._overflowItems = tabInstance.subTabs;
496
+ this._addStyleIndent(this._overflowItems);
497
+
498
+ this.responsivePopover = await this._respPopover();
499
+ if (this.responsivePopover.opened) {
500
+ this.responsivePopover.close();
501
+ } else {
502
+ this._setInitialFocus(this._getSelectedInPopover());
503
+ }
504
+ this.responsivePopover.showAt(button);
505
+ }
506
+
507
+ _setInitialFocus(selectedInPopover) {
508
+ if (selectedInPopover.length) {
509
+ this.responsivePopover.initialFocus = selectedInPopover[0].id;
510
+ } else {
511
+ this.responsivePopover.initialFocus = this.responsivePopover.content[0].items.filter(item => item.classList.contains("ui5-tab-overflow-item"))[0].id;
512
+ }
513
+ }
514
+
515
+ _onTabStripKeyDown(event) {
320
516
  const tab = getTab(event.target);
321
- if (!tab) {
517
+ if (!tab || tab._realTab.disabled) {
322
518
  return;
323
519
  }
324
520
 
325
521
  if (isEnter(event)) {
326
- this._onHeaderItemSelect(tab);
522
+ if (tab._realTab.isSingleClickArea) {
523
+ this._onTabStripClick(event);
524
+ } else {
525
+ this._onHeaderItemSelect(tab);
526
+ }
327
527
  }
328
528
 
329
- // Prevent Scrolling
330
529
  if (isSpace(event)) {
331
- event.preventDefault();
530
+ event.preventDefault(); // prevent scrolling
531
+ }
532
+
533
+ if (isDown(event)) {
534
+ if (tab._realTab.requiresExpandButton) {
535
+ this._onTabExpandButtonClick(event);
536
+ }
537
+ if (tab._realTab.isSingleClickArea) {
538
+ this._onTabStripClick(event);
539
+ }
332
540
  }
333
541
  }
334
542
 
335
- _onHeaderKeyUp(event) {
543
+ _onTabStripKeyUp(event) {
336
544
  const tab = getTab(event.target);
337
- if (!tab) {
545
+ if (!tab || tab._realTab.disabled) {
338
546
  return;
339
547
  }
340
548
 
341
549
  if (isSpace(event)) {
342
- this._onHeaderItemSelect(tab);
550
+ event.preventDefault();
551
+ if (tab._realTab.isSingleClickArea) {
552
+ this._onTabStripClick(event);
553
+ } else {
554
+ this._onHeaderItemSelect(tab);
555
+ }
343
556
  }
344
557
  }
345
558
 
346
- _initItemNavigation() {
347
- this._itemNavigation = new ItemNavigation(this);
348
- this._itemNavigation.getItemsCallback = () => this._getTabs();
349
- }
350
-
351
559
  _onHeaderItemSelect(tab) {
352
560
  if (!tab.hasAttribute("disabled")) {
353
561
  this._onItemSelect(tab);
562
+
563
+ if (!this.isModeStartAndEnd) {
564
+ this._setItemsForStrip();
565
+ }
354
566
  }
355
567
  }
356
568
 
357
- _onOverflowListItemSelect(event) {
358
- this._onItemSelect(event.detail.item);
359
- this.responsivePopover.close();
360
- this.shadowRoot.querySelector(`#${event.detail.item.id}`).focus();
569
+ async _onOverflowListItemClick(event) {
570
+ event.preventDefault(); // cancel the item selection
571
+ const { item } = event.detail;
572
+
573
+ this._onItemSelect(item);
574
+ await this.responsivePopover.close();
575
+
576
+ this._setItemsForStrip();
577
+
578
+ const selectedTopLevel = this._getRootTab(this._selectedTab);
579
+
580
+ selectedTopLevel.focus();
581
+ }
582
+
583
+ _getAllSubItems(items, result = [], level = 1) {
584
+ items.forEach(item => {
585
+ if (item.hasAttribute("ui5-tab") || item.hasAttribute("ui5-tab-separator")) {
586
+ item._level = level;
587
+ result.push(item);
588
+ if (item.subTabs) {
589
+ this._getAllSubItems(item.subTabs, result, level + 1);
590
+ }
591
+ }
592
+ });
593
+ return result;
361
594
  }
362
595
 
363
596
  _onItemSelect(target) {
364
- const selectedIndex = findIndex(this.items, item => item._id === target.id);
365
- const selectedTabIndex = findIndex(this._getTabs(), item => item._id === target.id);
366
- const selectedTab = this.items[selectedIndex];
597
+ const selectedIndex = findIndex(this._allItemsAndSubItems, item => item.__id === target.id);
598
+ const selectedTabIndex = findIndex(this._allItemsAndSubItems, item => item.__id === target.id);
599
+ const selectedTab = this._allItemsAndSubItems[selectedIndex];
367
600
 
368
601
  // update selected items
369
- this.items.forEach((item, index) => {
370
- if (!item.isSeparator) {
602
+ this._allItemsAndSubItems
603
+ .forEach((item, index) => {
371
604
  const selected = selectedIndex === index;
372
605
  item.selected = selected;
373
606
 
374
- if (selected) {
375
- this._itemNavigation.current = selectedTabIndex;
607
+ if (item._selected) {
608
+ item._selected = false;
376
609
  }
377
- }
378
- }, this);
610
+ });
379
611
 
380
612
  if (this.fixed) {
381
613
  this.selectTab(selectedTab, selectedTabIndex);
@@ -438,34 +670,367 @@ class TabContainer extends UI5Element {
438
670
  return slideUp({ element }).promise();
439
671
  }
440
672
 
441
- async _onOverflowButtonClick(event) {
442
- const button = this.overflowButton[0] || this.getDomRef().querySelector(".ui-tc__overflowButton > ui5-button");
443
-
444
- if (event.target !== button) {
673
+ async _onOverflowClick(event) {
674
+ if (event.target.classList.contains("ui5-tc__overflow")) {
675
+ // the empty area in the overflow was clicked
445
676
  return;
446
677
  }
447
678
 
679
+ const overflow = event.currentTarget;
680
+ const isEndOverflow = overflow.classList.contains("ui5-tc__overflow--end");
681
+ const isStartOverflow = overflow.classList.contains("ui5-tc__overflow--start");
682
+ const items = [];
683
+
684
+ const overflowAttr = isEndOverflow ? "end-overflow" : "start-overflow";
685
+
686
+ this._overflowItems = [];
687
+
688
+ this.items.forEach(item => {
689
+ if (item.getTabInStripDomRef() && item.getTabInStripDomRef().hasAttribute(overflowAttr)) {
690
+ items.push(item);
691
+ }
692
+ });
693
+
694
+ let button;
695
+ if (isEndOverflow) {
696
+ button = this.overflowButton[0] || overflow.querySelector("[ui5-button]");
697
+ this._overflowItems = items;
698
+ this._addStyleIndent(this._overflowItems);
699
+ }
700
+
701
+ if (isStartOverflow) {
702
+ button = this.startOverflowButton[0] || overflow.querySelector("[ui5-button]");
703
+ this._overflowItems = items;
704
+ this._addStyleIndent(this._overflowItems);
705
+ }
706
+
448
707
  this.responsivePopover = await this._respPopover();
449
- this.updateStaticAreaItemContentDensity();
450
708
  if (this.responsivePopover.opened) {
451
709
  this.responsivePopover.close();
452
710
  } else {
453
- this.responsivePopover.open(button);
711
+ this.responsivePopover.initialFocus = this.responsivePopover.content[0].items.filter(item => item.classList.contains("ui5-tab-overflow-item"))[0].id;
712
+ await this.responsivePopover.showAt(button);
454
713
  }
455
714
  }
456
715
 
457
- _onHeaderBackArrowClick() {
458
- this._scrollEnablement.move(-SCROLL_STEP, 0).promise()
459
- .then(_ => this._updateScrolling());
716
+ _getSelectedInPopover() {
717
+ return this.responsivePopover.content[0].items.filter(item => (item._realTab && item._realTab.selected));
460
718
  }
461
719
 
462
- _onHeaderForwardArrowClick() {
463
- this._scrollEnablement.move(SCROLL_STEP, 0).promise()
464
- .then(_ => this._updateScrolling());
720
+ _addStyleIndent(tabs) {
721
+ const extraIndent = this._getAllSubItems(tabs)
722
+ .filter(tab => !tab.isSeparator)
723
+ .some(tab => tab.design !== SemanticColor.Default && tab.design !== SemanticColor.Neutral);
724
+
725
+ walk(tabs, tab => {
726
+ let level = tab._level - 1;
727
+
728
+ if (tab.isSeparator) {
729
+ level += 1;
730
+ }
731
+
732
+ tab._style = {
733
+ "--_ui5-tab-indentation-level": level,
734
+ "--_ui5-tab-extra-indent": extraIndent ? 1 : null,
735
+ };
736
+ });
465
737
  }
466
738
 
467
- _handleHeaderResize() {
468
- this._updateScrolling();
739
+ async _onOverflowKeyDown(event) {
740
+ const isEndOverflow = event.currentTarget.classList.contains("ui5-tc__overflow--end");
741
+ const isStartOverflow = event.currentTarget.classList.contains("ui5-tc__overflow--start");
742
+
743
+ if (isDown(event) || (isStartOverflow && isLeft(event)) || (isEndOverflow && isRight(event))) {
744
+ await this._onOverflowClick(event);
745
+ }
746
+ }
747
+
748
+ _setItemsForStrip() {
749
+ const tabStrip = this._getTabStrip();
750
+ let allItemsWidth = 0;
751
+
752
+ if (!this._selectedTab) {
753
+ return;
754
+ }
755
+
756
+ const itemsDomRefs = this.items.map(item => item.getTabInStripDomRef());
757
+
758
+ // make sure the overflows are hidden
759
+ this._getStartOverflow().setAttribute("hidden", "");
760
+ this._getEndOverflow().setAttribute("hidden", "");
761
+
762
+ // show all tabs
763
+ for (let i = 0; i < itemsDomRefs.length; i++) {
764
+ itemsDomRefs[i].removeAttribute("hidden");
765
+ itemsDomRefs[i].removeAttribute("start-overflow");
766
+ itemsDomRefs[i].removeAttribute("end-overflow");
767
+ }
768
+
769
+ itemsDomRefs.forEach(item => {
770
+ allItemsWidth += this._getItemWidth(item);
771
+ });
772
+
773
+ const hasOverflow = tabStrip.offsetWidth < allItemsWidth;
774
+
775
+ if (!hasOverflow) {
776
+ this._closeRespPopover();
777
+ return;
778
+ }
779
+
780
+ if (this.isModeStartAndEnd) {
781
+ this._updateStartAndEndOverflow(itemsDomRefs);
782
+ this._updateOverflowCounters();
783
+ } else {
784
+ this._updateEndOverflow(itemsDomRefs);
785
+ }
786
+
787
+ this._itemNavigation._init();
788
+ this._itemNavigation.setCurrentItem(this._getRootTab(this._selectedTab));
789
+ }
790
+
791
+ _getRootTab(tab) {
792
+ while (tab.hasAttribute("ui5-tab")) {
793
+ if (tab.parentElement.hasAttribute("ui5-tabcontainer")) {
794
+ break;
795
+ }
796
+ tab = tab.parentElement;
797
+ }
798
+ return tab;
799
+ }
800
+
801
+ _updateEndOverflow(itemsDomRefs) {
802
+ // show end overflow
803
+ this._getEndOverflow().removeAttribute("hidden");
804
+ const selectedTab = this._getRootTab(this._selectedTab);
805
+ const selectedTabDomRef = selectedTab.getTabInStripDomRef();
806
+ const containerWidth = this._getTabStrip().offsetWidth;
807
+
808
+ const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
809
+ const lastVisibleTabIndex = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
810
+
811
+ for (let i = lastVisibleTabIndex + 1; i < itemsDomRefs.length; i++) {
812
+ itemsDomRefs[i].setAttribute("hidden", "");
813
+ itemsDomRefs[i].setAttribute("end-overflow", "");
814
+ }
815
+
816
+ this._endOverflowText = this.overflowButtonText;
817
+ }
818
+
819
+ _updateStartAndEndOverflow(itemsDomRefs) {
820
+ let containerWidth = this._getTabStrip().offsetWidth;
821
+ const selectedTab = this._getRootTab(this._selectedTab);
822
+ const selectedTabDomRef = selectedTab.getTabInStripDomRef();
823
+ const selectedItemIndexAndWidth = this._getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef);
824
+ const hasStartOverflow = this._hasStartOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
825
+ const hasEndOverflow = this._hasEndOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth);
826
+ let firstVisible;
827
+ let lastVisible;
828
+
829
+ // has "end", but no "start" overflow
830
+ if (!hasStartOverflow) {
831
+ // show "end" overflow
832
+ this._getEndOverflow().removeAttribute("hidden");
833
+ // width is changed
834
+ containerWidth = this._getTabStrip().offsetWidth;
835
+
836
+ lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
837
+
838
+ for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
839
+ itemsDomRefs[i].setAttribute("hidden", "");
840
+ itemsDomRefs[i].setAttribute("end-overflow", "");
841
+ }
842
+
843
+ return;
844
+ }
845
+
846
+ // has "start", but no "end" overflow
847
+ if (!hasEndOverflow) {
848
+ // show "start" overflow
849
+ this._getStartOverflow().removeAttribute("hidden");
850
+ // width is changed
851
+ containerWidth = this._getTabStrip().offsetWidth;
852
+
853
+ firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width);
854
+
855
+ for (let i = firstVisible - 1; i >= 0; i--) {
856
+ itemsDomRefs[i].setAttribute("hidden", "");
857
+ itemsDomRefs[i].setAttribute("start-overflow", "");
858
+ }
859
+
860
+ return;
861
+ }
862
+
863
+ // show "start" overflow
864
+ this._getStartOverflow().removeAttribute("hidden");
865
+ // show "end" overflow
866
+ this._getEndOverflow().removeAttribute("hidden");
867
+ // width is changed
868
+ containerWidth = this._getTabStrip().offsetWidth;
869
+
870
+ firstVisible = this._findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, selectedItemIndexAndWidth.index - 1);
871
+ lastVisible = this._findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemIndexAndWidth.width, firstVisible);
872
+
873
+ for (let i = firstVisible - 1; i >= 0; i--) {
874
+ itemsDomRefs[i].setAttribute("hidden", "");
875
+ itemsDomRefs[i].setAttribute("start-overflow", "");
876
+ }
877
+
878
+ for (let i = lastVisible + 1; i < itemsDomRefs.length; i++) {
879
+ itemsDomRefs[i].setAttribute("hidden", "");
880
+ itemsDomRefs[i].setAttribute("end-overflow", "");
881
+ }
882
+ }
883
+
884
+ _hasStartOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth) {
885
+ if (selectedItemIndexAndWidth.index === 0) {
886
+ return false;
887
+ }
888
+
889
+ let leftItemsWidth = 0;
890
+
891
+ for (let i = selectedItemIndexAndWidth.index - 1; i >= 0; i--) {
892
+ leftItemsWidth += this._getItemWidth(itemsDomRefs[i]);
893
+ }
894
+
895
+ let hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
896
+
897
+ // if there is no "start" overflow, it has "end" overflow
898
+ // check it again with the "end" overflow
899
+ if (!hasStartOverflow) {
900
+ this._getEndOverflow().removeAttribute("hidden");
901
+ containerWidth = this._getTabStrip().offsetWidth;
902
+ hasStartOverflow = containerWidth < leftItemsWidth + selectedItemIndexAndWidth.width;
903
+ this._getEndOverflow().setAttribute("hidden", "");
904
+ }
905
+
906
+ return hasStartOverflow;
907
+ }
908
+
909
+ _hasEndOverflow(containerWidth, itemsDomRefs, selectedItemIndexAndWidth) {
910
+ if (selectedItemIndexAndWidth.index >= itemsDomRefs.length) {
911
+ return false;
912
+ }
913
+
914
+ let rightItemsWidth = 0;
915
+
916
+ for (let i = selectedItemIndexAndWidth.index; i < itemsDomRefs.length; i++) {
917
+ rightItemsWidth += this._getItemWidth(itemsDomRefs[i]);
918
+ }
919
+
920
+ let hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
921
+
922
+ // if there is no "end" overflow, it has "start" overflow
923
+ // check it again with the "start" overflow
924
+ if (!hasEndOverflow) {
925
+ this._getStartOverflow().removeAttribute("hidden");
926
+ containerWidth = this._getTabStrip().offsetWidth;
927
+ hasEndOverflow = containerWidth < rightItemsWidth + selectedItemIndexAndWidth.width;
928
+ this._getStartOverflow().setAttribute("hidden", "");
929
+ }
930
+
931
+ return hasEndOverflow;
932
+ }
933
+
934
+ _getItemWidth(itemDomRef) {
935
+ const styles = window.getComputedStyle(itemDomRef);
936
+ const margins = Number.parseInt(styles.marginLeft) + Number.parseInt(styles.marginRight);
937
+
938
+ return itemDomRef.offsetWidth + margins;
939
+ }
940
+
941
+ _getSelectedItemIndexAndWidth(itemsDomRefs, selectedTabDomRef) {
942
+ let index = itemsDomRefs.indexOf(selectedTabDomRef);
943
+ let width = selectedTabDomRef.offsetWidth;
944
+ let selectedSeparator;
945
+
946
+ if (itemsDomRefs[index - 1] && itemsDomRefs[index - 1].isSeparator) {
947
+ selectedSeparator = itemsDomRefs[index - 1];
948
+ width += this._getItemWidth(selectedSeparator);
949
+ }
950
+
951
+ itemsDomRefs.splice(index, 1);
952
+
953
+ // if previous item is a separator - remove it
954
+ if (selectedSeparator) {
955
+ itemsDomRefs.splice(index - 1, 1);
956
+ index--;
957
+ }
958
+
959
+ return {
960
+ index,
961
+ width,
962
+ };
963
+ }
964
+
965
+ _findFirstVisibleItem(itemsDomRefs, containerWidth, selectedItemWidth, startIndex) {
966
+ if (startIndex === undefined) {
967
+ startIndex = itemsDomRefs.length - 1;
968
+ }
969
+
970
+ let lastVisible = startIndex + 1;
971
+
972
+ for (let index = startIndex; index >= 0; index--) {
973
+ const itemWidth = this._getItemWidth(itemsDomRefs[index]);
974
+
975
+ if (containerWidth < selectedItemWidth + itemWidth) {
976
+ break;
977
+ }
978
+
979
+ selectedItemWidth += itemWidth;
980
+ lastVisible = index;
981
+ }
982
+
983
+ return lastVisible;
984
+ }
985
+
986
+ _findLastVisibleItem(itemsDomRefs, containerWidth, selectedItemWidth, startIndex) {
987
+ startIndex = startIndex || 0;
988
+
989
+ let lastVisibleIndex = startIndex - 1;
990
+ let index = startIndex;
991
+
992
+ for (; index < itemsDomRefs.length; index++) {
993
+ const itemWidth = this._getItemWidth(itemsDomRefs[index]);
994
+
995
+ if (containerWidth < selectedItemWidth + itemWidth) {
996
+ break;
997
+ }
998
+
999
+ selectedItemWidth += itemWidth;
1000
+ lastVisibleIndex = index;
1001
+ }
1002
+
1003
+ // if prev item is separator - hide it
1004
+ const prevItem = itemsDomRefs[index - 1];
1005
+ if (prevItem && prevItem.isSeparator) {
1006
+ lastVisibleIndex -= 1;
1007
+ }
1008
+
1009
+ return lastVisibleIndex;
1010
+ }
1011
+
1012
+ get isModeStartAndEnd() {
1013
+ return this.tabsOverflowMode === TabsOverflowMode.StartAndEnd;
1014
+ }
1015
+
1016
+ _updateOverflowCounters() {
1017
+ let startOverflowItemsCount = 0;
1018
+ let endOverflowItemsCount = 0;
1019
+
1020
+ this._getTabs()
1021
+ .map(tab => tab.getTabInStripDomRef())
1022
+ .forEach(tab => {
1023
+ if (tab.hasAttribute("start-overflow")) {
1024
+ startOverflowItemsCount++;
1025
+ }
1026
+
1027
+ if (tab.hasAttribute("end-overflow")) {
1028
+ endOverflowItemsCount++;
1029
+ }
1030
+ });
1031
+
1032
+ this._startOverflowText = `+${startOverflowItemsCount}`;
1033
+ this._endOverflowText = `+${endOverflowItemsCount}`;
469
1034
  }
470
1035
 
471
1036
  async _closeRespPopover() {
@@ -473,16 +1038,36 @@ class TabContainer extends UI5Element {
473
1038
  this.responsivePopover.close();
474
1039
  }
475
1040
 
476
- _updateScrolling() {
477
- const headerScrollContainer = this._getHeaderScrollContainer();
1041
+ _getFocusableTabs() {
1042
+ if (!this.getDomRef()) {
1043
+ return [];
1044
+ }
478
1045
 
479
- this._scrollable = headerScrollContainer.offsetWidth < headerScrollContainer.scrollWidth;
480
- this._scrollableBack = headerScrollContainer.scrollLeft > 0;
481
- this._scrollableForward = Math.ceil(headerScrollContainer.scrollLeft) < headerScrollContainer.scrollWidth - headerScrollContainer.offsetWidth;
1046
+ const focusableTabs = [];
482
1047
 
483
- if (!this._scrollable) {
484
- this._closeRespPopover();
1048
+ if (!this._getStartOverflow().hasAttribute("hidden")) {
1049
+ if (this._getCustomStartOverflowBtnDOM()) {
1050
+ focusableTabs.push(this._getCustomStartOverflowBtnDOM());
1051
+ } else {
1052
+ focusableTabs.push(this._getStartOverflowBtnDOM());
1053
+ }
1054
+ }
1055
+
1056
+ this._getTabs().forEach(tab => {
1057
+ if (tab.getTabInStripDomRef() && !tab.getTabInStripDomRef().hasAttribute("hidden")) {
1058
+ focusableTabs.push(tab);
1059
+ }
1060
+ });
1061
+
1062
+ if (!this._getEndOverflow().hasAttribute("hidden")) {
1063
+ if (this._getCustomEndOverflowBtnDOM()) {
1064
+ focusableTabs.push(this._getCustomEndOverflowBtnDOM());
1065
+ } else {
1066
+ focusableTabs.push(this._getEndOverflowBtnDOM());
1067
+ }
485
1068
  }
1069
+
1070
+ return focusableTabs;
486
1071
  }
487
1072
 
488
1073
  _getHeader() {
@@ -493,8 +1078,32 @@ class TabContainer extends UI5Element {
493
1078
  return this.items.filter(item => !item.isSeparator);
494
1079
  }
495
1080
 
496
- _getHeaderScrollContainer() {
497
- return this.shadowRoot.querySelector(`#${this._id}-headerScrollContainer`);
1081
+ _getTabStrip() {
1082
+ return this.shadowRoot.querySelector(`#${this._id}-tabStrip`);
1083
+ }
1084
+
1085
+ _getStartOverflow() {
1086
+ return this.shadowRoot.querySelector(".ui5-tc__overflow--start");
1087
+ }
1088
+
1089
+ _getEndOverflow() {
1090
+ return this.shadowRoot.querySelector(".ui5-tc__overflow--end");
1091
+ }
1092
+
1093
+ _getCustomStartOverflowBtnDOM() {
1094
+ return this.shadowRoot.querySelector("slot[name=startOverflowButton]");
1095
+ }
1096
+
1097
+ _getStartOverflowBtnDOM() {
1098
+ return this._getStartOverflow().querySelector("[ui5-button]");
1099
+ }
1100
+
1101
+ _getCustomEndOverflowBtnDOM() {
1102
+ return this.shadowRoot.querySelector("slot[name=overflowButton]");
1103
+ }
1104
+
1105
+ _getEndOverflowBtnDOM() {
1106
+ return this._getEndOverflow().querySelector("[ui5-button]");
498
1107
  }
499
1108
 
500
1109
  async _respPopover() {
@@ -502,39 +1111,23 @@ class TabContainer extends UI5Element {
502
1111
  return staticAreaItem.querySelector(`#${this._id}-overflowMenu`);
503
1112
  }
504
1113
 
505
- get shouldShowOverflow() {
506
- return this.showOverflow && this._scrollable;
507
- }
508
-
509
1114
  get classes() {
510
1115
  return {
511
1116
  root: {
512
1117
  "ui5-tc-root": true,
513
1118
  "ui5-tc--textOnly": this.textOnly,
1119
+ "ui5-tc--withAdditionalText": this.withAdditionalText,
1120
+ "ui5-tc--standardTabLayout": this.standardTabLayout,
514
1121
  },
515
1122
  header: {
516
1123
  "ui5-tc__header": true,
517
- "ui5-tc__header--scrollable": this._scrollable,
518
1124
  },
519
- headerScrollContainer: {
520
- "ui-tc__headerScrollContainer": true,
521
- },
522
- headerList: {
523
- "ui5-tc__headerList": true,
1125
+ tabStrip: {
1126
+ "ui5-tc__tabStrip": true,
524
1127
  },
525
1128
  separator: {
526
1129
  "ui5-tc__separator": true,
527
1130
  },
528
- headerBackArrow: {
529
- "ui5-tc__headerArrow": true,
530
- "ui5-tc__headerArrowLeft": true,
531
- "ui5-tc__headerArrow--visible": this._scrollableBack,
532
- },
533
- headerForwardArrow: {
534
- "ui5-tc__headerArrow": true,
535
- "ui5-tc__headerArrowRight": true,
536
- "ui5-tc__headerArrow--visible": this._scrollableForward,
537
- },
538
1131
  content: {
539
1132
  "ui5-tc__content": true,
540
1133
  "ui5-tc__content--collapsed": this._contentCollapsed,
@@ -550,16 +1143,24 @@ class TabContainer extends UI5Element {
550
1143
  return this.items.every(item => !item.icon);
551
1144
  }
552
1145
 
1146
+ get withAdditionalText() {
1147
+ return this.items.some(item => !!item.additionalText);
1148
+ }
1149
+
1150
+ get standardTabLayout() {
1151
+ return this.tabLayout === TabLayout.Standard;
1152
+ }
1153
+
553
1154
  get previousIconACCName() {
554
- return this.i18nBundle.getText(TABCONTAINER_PREVIOUS_ICON_ACC_NAME);
1155
+ return TabContainer.i18nBundle.getText(TABCONTAINER_PREVIOUS_ICON_ACC_NAME);
555
1156
  }
556
1157
 
557
1158
  get nextIconACCName() {
558
- return this.i18nBundle.getText(TABCONTAINER_NEXT_ICON_ACC_NAME);
1159
+ return TabContainer.i18nBundle.getText(TABCONTAINER_NEXT_ICON_ACC_NAME);
559
1160
  }
560
1161
 
561
1162
  get overflowMenuTitle() {
562
- return this.i18nBundle.getText(TABCONTAINER_OVERFLOW_MENU_TITLE);
1163
+ return TabContainer.i18nBundle.getText(TABCONTAINER_OVERFLOW_MENU_TITLE);
563
1164
  }
564
1165
 
565
1166
  get tabsAtTheBottom() {
@@ -570,6 +1171,14 @@ class TabContainer extends UI5Element {
570
1171
  return this.tabsAtTheBottom ? "slim-arrow-up" : "slim-arrow-down";
571
1172
  }
572
1173
 
1174
+ get overflowButtonText() {
1175
+ return TabContainer.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);
1176
+ }
1177
+
1178
+ get popoverCancelButtonText() {
1179
+ return TabContainer.i18nBundle.getText(TABCONTAINER_POPOVER_CANCEL_BUTTON);
1180
+ }
1181
+
573
1182
  get animate() {
574
1183
  return getAnimationMode() !== AnimationMode.None;
575
1184
  }
@@ -584,15 +1193,15 @@ class TabContainer extends UI5Element {
584
1193
  }
585
1194
 
586
1195
  static async onDefine() {
587
- await fetchI18nBundle("@ui5/webcomponents");
1196
+ TabContainer.i18nBundle = await getI18nBundle("@ui5/webcomponents");
588
1197
  }
589
1198
  }
590
1199
 
591
- const isTabLi = el => el.localName === "li" && el.getAttribute("role") === "tab";
1200
+ const isTabDiv = el => el.localName === "div" && el.getAttribute("role") === "tab";
592
1201
 
593
1202
  const getTab = el => {
594
1203
  while (el) {
595
- if (isTabLi(el)) {
1204
+ if (isTabDiv(el)) {
596
1205
  return el;
597
1206
  }
598
1207
 
@@ -614,6 +1223,15 @@ const findIndex = (arr, predicate) => {
614
1223
  return -1;
615
1224
  };
616
1225
 
1226
+ const walk = (tabs, callback) => {
1227
+ [...tabs].forEach(tab => {
1228
+ callback(tab);
1229
+ if (tab.subTabs) {
1230
+ walk(tab.subTabs, callback);
1231
+ }
1232
+ });
1233
+ };
1234
+
617
1235
  TabContainer.define();
618
1236
 
619
1237
  export default TabContainer;