@ui5/webcomponents 0.0.0-cc312800a → 0.0.0-cf069fb29

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 (1144) hide show
  1. package/CHANGELOG.md +462 -0
  2. package/README.md +144 -50
  3. package/customI18n.js +50 -0
  4. package/dist/Assets-static.js +1 -1
  5. package/dist/Assets.js +1 -1
  6. package/dist/Avatar.js +88 -63
  7. package/dist/AvatarGroup.js +135 -40
  8. package/dist/Badge.js +43 -17
  9. package/dist/Breadcrumbs.js +575 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +119 -29
  12. package/dist/Button.js +58 -56
  13. package/dist/Calendar.js +126 -23
  14. package/dist/CalendarDate.js +1 -1
  15. package/dist/CalendarHeader.js +75 -19
  16. package/dist/Card.js +37 -219
  17. package/dist/CardHeader.js +288 -0
  18. package/dist/Carousel.js +250 -93
  19. package/dist/CheckBox.js +154 -65
  20. package/dist/ColorPalette.js +283 -35
  21. package/dist/ColorPaletteItem.js +37 -13
  22. package/dist/ColorPalettePopover.js +244 -0
  23. package/dist/ColorPicker.js +30 -15
  24. package/dist/ComboBox.js +415 -155
  25. package/dist/ComboBoxGroupItem.js +70 -0
  26. package/dist/ComboBoxItem.js +2 -2
  27. package/dist/CustomListItem.js +14 -2
  28. package/dist/DateComponentBase.js +22 -13
  29. package/dist/DatePicker.js +105 -47
  30. package/dist/DateRangePicker.js +58 -21
  31. package/dist/DateTimePicker.js +13 -9
  32. package/dist/DayPicker.js +48 -7
  33. package/dist/Dialog.js +178 -43
  34. package/dist/DurationPicker.js +23 -4
  35. package/dist/FileUploader.js +46 -33
  36. package/dist/GroupHeaderListItem.js +20 -12
  37. package/dist/Icon.js +71 -20
  38. package/dist/Input.js +318 -125
  39. package/dist/Interfaces.js +20 -0
  40. package/dist/Label.js +26 -11
  41. package/dist/Link.js +124 -40
  42. package/dist/List.js +156 -44
  43. package/dist/ListItem.js +53 -14
  44. package/dist/MessageStrip.js +83 -44
  45. package/dist/MultiComboBox.js +309 -99
  46. package/dist/MultiComboBoxItem.js +5 -11
  47. package/dist/MultiInput.js +59 -20
  48. package/dist/Option.js +22 -17
  49. package/dist/Panel.js +54 -23
  50. package/dist/Popover.js +154 -82
  51. package/dist/Popup.js +81 -38
  52. package/dist/ProgressIndicator.js +28 -20
  53. package/dist/RadioButton.js +117 -46
  54. package/dist/RadioButtonGroup.js +32 -32
  55. package/dist/RangeSlider.js +46 -23
  56. package/dist/RatingIndicator.js +62 -42
  57. package/dist/ResponsivePopover.js +34 -50
  58. package/dist/SegmentedButton.js +110 -60
  59. package/dist/SegmentedButtonItem.js +109 -0
  60. package/dist/Select.js +210 -105
  61. package/dist/Slider.js +48 -14
  62. package/dist/SliderBase.js +23 -16
  63. package/dist/SplitButton.js +425 -0
  64. package/dist/StandardListItem.js +33 -8
  65. package/dist/StepInput.js +46 -38
  66. package/dist/SuggestionGroupItem.js +64 -0
  67. package/dist/SuggestionItem.js +10 -24
  68. package/dist/SuggestionListItem.js +14 -3
  69. package/dist/Switch.js +66 -26
  70. package/dist/Tab.js +55 -32
  71. package/dist/TabContainer.js +507 -103
  72. package/dist/TabSeparator.js +42 -3
  73. package/dist/Table.js +73 -28
  74. package/dist/TableCell.js +10 -1
  75. package/dist/TableColumn.js +11 -2
  76. package/dist/TableGroupRow.js +160 -0
  77. package/dist/TableRow.js +28 -18
  78. package/dist/TextArea.js +81 -45
  79. package/dist/TimePicker.js +24 -5
  80. package/dist/TimePickerBase.js +17 -12
  81. package/dist/TimeSelection.js +11 -12
  82. package/dist/Title.js +15 -8
  83. package/dist/Toast.js +17 -6
  84. package/dist/ToggleButton.js +23 -7
  85. package/dist/Token.js +30 -15
  86. package/dist/Tokenizer.js +152 -22
  87. package/dist/Tree.js +90 -17
  88. package/dist/TreeItem.js +40 -8
  89. package/dist/TreeListItem.js +40 -28
  90. package/dist/WheelSlider.js +31 -26
  91. package/dist/YearPicker.js +1 -0
  92. package/dist/api.json +1600 -751
  93. package/dist/css/themes/Avatar.css +1 -0
  94. package/dist/css/themes/AvatarGroup.css +1 -0
  95. package/dist/css/themes/Badge.css +1 -0
  96. package/dist/css/themes/Breadcrumbs.css +1 -0
  97. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  98. package/dist/css/themes/BrowserScrollbar.css +1 -0
  99. package/dist/css/themes/BusyIndicator.css +1 -0
  100. package/dist/css/themes/Button.css +1 -0
  101. package/dist/css/themes/Button.ie11.css +1 -0
  102. package/dist/css/themes/Calendar.css +1 -0
  103. package/dist/css/themes/CalendarHeader.css +1 -0
  104. package/dist/css/themes/Card.css +1 -0
  105. package/dist/css/themes/CardHeader.css +1 -0
  106. package/dist/css/themes/Carousel.css +1 -0
  107. package/dist/css/themes/CheckBox.css +1 -0
  108. package/dist/css/themes/ColorPalette.css +1 -0
  109. package/dist/css/themes/ColorPaletteItem.css +1 -0
  110. package/dist/css/themes/ColorPalettePopover.css +1 -0
  111. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  112. package/dist/css/themes/ColorPicker.css +1 -0
  113. package/dist/css/themes/ComboBox.css +1 -0
  114. package/dist/css/themes/ComboBoxPopover.css +1 -0
  115. package/dist/css/themes/CustomListItem.css +1 -0
  116. package/dist/css/themes/DatePicker.css +1 -0
  117. package/dist/css/themes/DatePickerPopover.css +1 -0
  118. package/dist/css/themes/DateRangePicker.css +1 -0
  119. package/dist/css/themes/DateTimePicker.css +1 -0
  120. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  121. package/dist/css/themes/DayPicker.css +1 -0
  122. package/dist/css/themes/Dialog.css +1 -0
  123. package/dist/css/themes/FileUploader.css +1 -0
  124. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  125. package/dist/css/themes/GrowingButton.css +1 -0
  126. package/dist/css/themes/Icon.css +1 -0
  127. package/dist/css/themes/Input.css +1 -0
  128. package/dist/css/themes/InputIcon.css +1 -0
  129. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  130. package/dist/css/themes/Label.css +1 -0
  131. package/dist/css/themes/Link.css +1 -0
  132. package/dist/css/themes/List.css +1 -0
  133. package/dist/css/themes/ListItem.css +1 -0
  134. package/dist/css/themes/ListItemBase.css +1 -0
  135. package/dist/css/themes/MessageStrip.css +1 -0
  136. package/dist/css/themes/MonthPicker.css +1 -0
  137. package/dist/css/themes/MultiComboBox.css +1 -0
  138. package/dist/css/themes/MultiInput.css +1 -0
  139. package/dist/css/themes/Panel.css +1 -0
  140. package/dist/css/themes/Popover.css +1 -0
  141. package/dist/css/themes/Popup.css +1 -0
  142. package/dist/css/themes/PopupGlobal.css +1 -0
  143. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  144. package/dist/css/themes/PopupsCommon.css +1 -0
  145. package/dist/css/themes/ProgressIndicator.css +1 -0
  146. package/dist/css/themes/RadioButton.css +1 -0
  147. package/dist/css/themes/RatingIndicator.css +1 -0
  148. package/dist/css/themes/ResponsivePopover.css +1 -0
  149. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  150. package/dist/css/themes/SegmentedButton.css +1 -0
  151. package/dist/css/themes/Select.css +1 -0
  152. package/dist/css/themes/SelectPopover.css +1 -0
  153. package/dist/css/themes/SliderBase.css +1 -0
  154. package/dist/css/themes/SplitButton.css +1 -0
  155. package/dist/css/themes/StepInput.css +1 -0
  156. package/dist/css/themes/Suggestions.css +1 -0
  157. package/dist/css/themes/Switch.css +1 -0
  158. package/dist/css/themes/Tab.css +1 -0
  159. package/dist/css/themes/TabContainer.css +1 -0
  160. package/dist/css/themes/TabInOverflow.css +1 -0
  161. package/dist/css/themes/TabInStrip.css +1 -0
  162. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  163. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  164. package/dist/css/themes/Table.css +1 -0
  165. package/dist/css/themes/TableCell.css +1 -0
  166. package/dist/css/themes/TableColumn.css +1 -0
  167. package/dist/css/themes/TableGroupRow.css +1 -0
  168. package/dist/css/themes/TableRow.css +1 -0
  169. package/dist/css/themes/TapHighlightColor.css +1 -0
  170. package/dist/css/themes/TextArea.css +1 -0
  171. package/dist/css/themes/TimePicker.css +1 -0
  172. package/dist/css/themes/TimePickerPopover.css +1 -0
  173. package/dist/css/themes/TimeSelection.css +1 -0
  174. package/dist/css/themes/Title.css +1 -0
  175. package/dist/css/themes/Toast.css +1 -0
  176. package/dist/css/themes/ToggleButton.css +1 -0
  177. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  178. package/dist/css/themes/Token.css +1 -0
  179. package/dist/css/themes/Tokenizer.css +1 -0
  180. package/dist/css/themes/Tree.css +1 -0
  181. package/dist/css/themes/TreeListItem.css +1 -0
  182. package/dist/css/themes/ValueStateMessage.css +1 -0
  183. package/dist/css/themes/WheelSlider.css +1 -0
  184. package/dist/css/themes/YearPicker.css +1 -0
  185. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  186. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  187. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  188. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  189. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  190. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  191. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  192. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  193. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  194. package/dist/features/ColorPaletteMoreColors.js +7 -7
  195. package/dist/features/InputSuggestions.js +213 -52
  196. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  243. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  244. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  245. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  246. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  247. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  248. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  249. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  250. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  251. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  252. package/dist/generated/i18n/i18n-defaults.js +2 -2
  253. package/dist/generated/json-imports/Themes-static.js +6 -2
  254. package/dist/generated/json-imports/Themes.js +3 -1
  255. package/dist/generated/templates/AvatarGroupTemplate.lit.js +6 -13
  256. package/dist/generated/templates/AvatarTemplate.lit.js +9 -16
  257. package/dist/generated/templates/BadgeTemplate.lit.js +5 -13
  258. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  259. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  260. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -13
  261. package/dist/generated/templates/ButtonTemplate.lit.js +6 -13
  262. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -11
  263. package/dist/generated/templates/CalendarTemplate.lit.js +4 -11
  264. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  265. package/dist/generated/templates/CardTemplate.lit.js +5 -17
  266. package/dist/generated/templates/CarouselTemplate.lit.js +13 -19
  267. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -14
  268. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +4 -11
  269. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +4 -11
  270. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  271. package/dist/generated/templates/ColorPaletteTemplate.lit.js +9 -13
  272. package/dist/generated/templates/ColorPickerTemplate.lit.js +4 -11
  273. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -25
  274. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -14
  275. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -20
  276. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -14
  277. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -13
  278. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -16
  279. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -19
  280. package/dist/generated/templates/DialogTemplate.lit.js +9 -16
  281. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +7 -14
  282. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -14
  283. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -11
  284. package/dist/generated/templates/IconTemplate.lit.js +6 -13
  285. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -31
  286. package/dist/generated/templates/InputTemplate.lit.js +9 -15
  287. package/dist/generated/templates/LabelTemplate.lit.js +4 -11
  288. package/dist/generated/templates/LinkTemplate.lit.js +5 -12
  289. package/dist/generated/templates/ListItemTemplate.lit.js +13 -20
  290. package/dist/generated/templates/ListTemplate.lit.js +12 -19
  291. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -15
  292. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -13
  293. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -27
  294. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -16
  295. package/dist/generated/templates/MultiInputTemplate.lit.js +13 -19
  296. package/dist/generated/templates/PanelTemplate.lit.js +9 -16
  297. package/dist/generated/templates/PopoverTemplate.lit.js +9 -16
  298. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -11
  299. package/dist/generated/templates/PopupTemplate.lit.js +4 -11
  300. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -17
  301. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -14
  302. package/dist/generated/templates/RangeSliderTemplate.lit.js +10 -17
  303. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +11 -16
  304. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -22
  305. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  306. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -11
  307. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -27
  308. package/dist/generated/templates/SelectTemplate.lit.js +6 -12
  309. package/dist/generated/templates/SliderBaseTemplate.lit.js +8 -15
  310. package/dist/generated/templates/SliderTemplate.lit.js +9 -16
  311. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  312. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -28
  313. package/dist/generated/templates/StepInputTemplate.lit.js +7 -12
  314. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +24 -31
  315. package/dist/generated/templates/SwitchTemplate.lit.js +8 -13
  316. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +8 -13
  317. package/dist/generated/templates/TabContainerTemplate.lit.js +15 -23
  318. package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -13
  319. package/dist/generated/templates/TabInStripTemplate.lit.js +8 -17
  320. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  321. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  322. package/dist/generated/templates/TabTemplate.lit.js +4 -11
  323. package/dist/generated/templates/TableCellTemplate.lit.js +4 -11
  324. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -11
  325. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  326. package/dist/generated/templates/TableRowTemplate.lit.js +12 -19
  327. package/dist/generated/templates/TableTemplate.lit.js +13 -20
  328. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -15
  329. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -15
  330. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -11
  331. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -13
  332. package/dist/generated/templates/TimeSelectionTemplate.lit.js +8 -15
  333. package/dist/generated/templates/TitleTemplate.lit.js +10 -17
  334. package/dist/generated/templates/ToastTemplate.lit.js +5 -11
  335. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -13
  336. package/dist/generated/templates/TokenTemplate.lit.js +7 -14
  337. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -16
  338. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -13
  339. package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -25
  340. package/dist/generated/templates/TreeTemplate.lit.js +5 -12
  341. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -14
  342. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -13
  343. package/dist/generated/themes/Avatar.css.js +3 -3
  344. package/dist/generated/themes/AvatarGroup.css.js +3 -3
  345. package/dist/generated/themes/Badge.css.js +3 -3
  346. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  347. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  348. package/dist/generated/themes/BrowserScrollbar.css.js +3 -3
  349. package/dist/generated/themes/BusyIndicator.css.js +3 -3
  350. package/dist/generated/themes/Button.css.js +3 -3
  351. package/dist/generated/themes/Button.ie11.css.js +3 -3
  352. package/dist/generated/themes/Calendar.css.js +3 -3
  353. package/dist/generated/themes/CalendarHeader.css.js +3 -3
  354. package/dist/generated/themes/Card.css.js +3 -3
  355. package/dist/generated/themes/CardHeader.css.js +8 -0
  356. package/dist/generated/themes/Carousel.css.js +3 -3
  357. package/dist/generated/themes/CheckBox.css.js +3 -3
  358. package/dist/generated/themes/ColorPalette.css.js +3 -3
  359. package/dist/generated/themes/ColorPaletteItem.css.js +3 -3
  360. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  361. package/dist/generated/themes/ColorPaletteStaticArea.css.js +3 -3
  362. package/dist/generated/themes/ColorPicker.css.js +3 -3
  363. package/dist/generated/themes/ComboBox.css.js +3 -3
  364. package/dist/generated/themes/ComboBoxPopover.css.js +3 -3
  365. package/dist/generated/themes/CustomListItem.css.js +3 -3
  366. package/dist/generated/themes/DatePicker.css.js +3 -3
  367. package/dist/generated/themes/DatePickerPopover.css.js +3 -3
  368. package/dist/generated/themes/DateRangePicker.css.js +3 -3
  369. package/dist/generated/themes/DateTimePicker.css.js +3 -3
  370. package/dist/generated/themes/DateTimePickerPopover.css.js +3 -3
  371. package/dist/generated/themes/DayPicker.css.js +3 -3
  372. package/dist/generated/themes/Dialog.css.js +3 -3
  373. package/dist/generated/themes/FileUploader.css.js +3 -3
  374. package/dist/generated/themes/GroupHeaderListItem.css.js +3 -3
  375. package/dist/generated/themes/GrowingButton.css.js +8 -0
  376. package/dist/generated/themes/Icon.css.js +3 -3
  377. package/dist/generated/themes/Input.css.js +3 -3
  378. package/dist/generated/themes/InputIcon.css.js +3 -3
  379. package/dist/generated/themes/InvisibleTextStyles.css.js +3 -3
  380. package/dist/generated/themes/Label.css.js +3 -3
  381. package/dist/generated/themes/Link.css.js +3 -3
  382. package/dist/generated/themes/List.css.js +3 -3
  383. package/dist/generated/themes/ListItem.css.js +3 -3
  384. package/dist/generated/themes/ListItemBase.css.js +3 -3
  385. package/dist/generated/themes/MessageStrip.css.js +3 -3
  386. package/dist/generated/themes/MonthPicker.css.js +3 -3
  387. package/dist/generated/themes/MultiComboBox.css.js +3 -3
  388. package/dist/generated/themes/MultiInput.css.js +3 -3
  389. package/dist/generated/themes/Panel.css.js +3 -3
  390. package/dist/generated/themes/Popover.css.js +3 -3
  391. package/dist/generated/themes/Popup.css.js +3 -3
  392. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  393. package/dist/generated/themes/PopupStaticAreaStyles.css.js +3 -3
  394. package/dist/generated/themes/PopupsCommon.css.js +3 -3
  395. package/dist/generated/themes/ProgressIndicator.css.js +3 -3
  396. package/dist/generated/themes/RadioButton.css.js +3 -3
  397. package/dist/generated/themes/RatingIndicator.css.js +3 -3
  398. package/dist/generated/themes/ResponsivePopover.css.js +3 -3
  399. package/dist/generated/themes/ResponsivePopoverCommon.css.js +3 -3
  400. package/dist/generated/themes/SegmentedButton.css.js +3 -3
  401. package/dist/generated/themes/Select.css.js +3 -3
  402. package/dist/generated/themes/SelectPopover.css.js +3 -3
  403. package/dist/generated/themes/SliderBase.css.js +3 -3
  404. package/dist/generated/themes/SplitButton.css.js +8 -0
  405. package/dist/generated/themes/StepInput.css.js +3 -3
  406. package/dist/generated/themes/Suggestions.css.js +8 -0
  407. package/dist/generated/themes/Switch.css.js +3 -3
  408. package/dist/generated/themes/Tab.css.js +3 -3
  409. package/dist/generated/themes/TabContainer.css.js +3 -3
  410. package/dist/generated/themes/TabInOverflow.css.js +3 -3
  411. package/dist/generated/themes/TabInStrip.css.js +3 -3
  412. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  413. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  414. package/dist/generated/themes/Table.css.js +3 -3
  415. package/dist/generated/themes/TableCell.css.js +3 -3
  416. package/dist/generated/themes/TableColumn.css.js +3 -3
  417. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  418. package/dist/generated/themes/TableRow.css.js +3 -3
  419. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  420. package/dist/generated/themes/TextArea.css.js +3 -3
  421. package/dist/generated/themes/TimePicker.css.js +3 -3
  422. package/dist/generated/themes/TimePickerPopover.css.js +3 -3
  423. package/dist/generated/themes/TimeSelection.css.js +3 -3
  424. package/dist/generated/themes/Title.css.js +3 -3
  425. package/dist/generated/themes/Toast.css.js +3 -3
  426. package/dist/generated/themes/ToggleButton.css.js +3 -3
  427. package/dist/generated/themes/ToggleButton.ie11.css.js +3 -3
  428. package/dist/generated/themes/Token.css.js +3 -3
  429. package/dist/generated/themes/Tokenizer.css.js +3 -3
  430. package/dist/generated/themes/Tree.css.js +3 -3
  431. package/dist/generated/themes/TreeListItem.css.js +3 -3
  432. package/dist/generated/themes/ValueStateMessage.css.js +3 -3
  433. package/dist/generated/themes/WheelSlider.css.js +3 -3
  434. package/dist/generated/themes/YearPicker.css.js +3 -3
  435. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  436. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  437. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  438. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  439. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  440. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  441. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  442. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  443. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  444. package/dist/i18n/messagebundle.properties +96 -2
  445. package/dist/i18n/messagebundle_ar.properties +71 -2
  446. package/dist/i18n/messagebundle_bg.properties +71 -2
  447. package/dist/i18n/messagebundle_ca.properties +71 -2
  448. package/dist/i18n/messagebundle_cs.properties +71 -2
  449. package/dist/i18n/messagebundle_cy.properties +71 -2
  450. package/dist/i18n/messagebundle_da.properties +71 -2
  451. package/dist/i18n/messagebundle_de.properties +71 -2
  452. package/dist/i18n/messagebundle_el.properties +71 -2
  453. package/dist/i18n/messagebundle_en.properties +71 -2
  454. package/dist/i18n/messagebundle_en_GB.properties +71 -2
  455. package/dist/i18n/messagebundle_en_US_sappsd.properties +71 -2
  456. package/dist/i18n/messagebundle_en_US_saprigi.properties +71 -2
  457. package/dist/i18n/messagebundle_en_US_saptrc.properties +71 -2
  458. package/dist/i18n/messagebundle_es.properties +71 -2
  459. package/dist/i18n/messagebundle_es_MX.properties +72 -3
  460. package/dist/i18n/messagebundle_et.properties +71 -2
  461. package/dist/i18n/messagebundle_fi.properties +72 -3
  462. package/dist/i18n/messagebundle_fr.properties +71 -2
  463. package/dist/i18n/messagebundle_fr_CA.properties +71 -2
  464. package/dist/i18n/messagebundle_hi.properties +71 -2
  465. package/dist/i18n/messagebundle_hr.properties +71 -2
  466. package/dist/i18n/messagebundle_hu.properties +71 -2
  467. package/dist/i18n/messagebundle_id.properties +72 -3
  468. package/dist/i18n/messagebundle_it.properties +71 -2
  469. package/dist/i18n/messagebundle_iw.properties +71 -2
  470. package/dist/i18n/messagebundle_ja.properties +73 -4
  471. package/dist/i18n/messagebundle_kk.properties +71 -2
  472. package/dist/i18n/messagebundle_ko.properties +71 -2
  473. package/dist/i18n/messagebundle_lt.properties +71 -2
  474. package/dist/i18n/messagebundle_lv.properties +71 -2
  475. package/dist/i18n/messagebundle_ms.properties +71 -2
  476. package/dist/i18n/messagebundle_nl.properties +71 -2
  477. package/dist/i18n/messagebundle_no.properties +71 -2
  478. package/dist/i18n/messagebundle_pl.properties +71 -2
  479. package/dist/i18n/messagebundle_pt.properties +71 -2
  480. package/dist/i18n/messagebundle_pt_PT.properties +71 -2
  481. package/dist/i18n/messagebundle_ro.properties +71 -2
  482. package/dist/i18n/messagebundle_ru.properties +71 -2
  483. package/dist/i18n/messagebundle_sh.properties +71 -2
  484. package/dist/i18n/messagebundle_sk.properties +71 -2
  485. package/dist/i18n/messagebundle_sl.properties +71 -2
  486. package/dist/i18n/messagebundle_sv.properties +71 -2
  487. package/dist/i18n/messagebundle_th.properties +70 -1
  488. package/dist/i18n/messagebundle_tr.properties +71 -2
  489. package/dist/i18n/messagebundle_uk.properties +71 -2
  490. package/dist/i18n/messagebundle_vi.properties +71 -2
  491. package/dist/i18n/messagebundle_zh_CN.properties +71 -2
  492. package/dist/i18n/messagebundle_zh_TW.properties +70 -1
  493. package/dist/popup-utils/OpenedPopupsRegistry.js +1 -1
  494. package/dist/popup-utils/PopoverRegistry.js +1 -1
  495. package/{src/types/AvatarBackgroundColor.js → dist/types/AvatarColorScheme.js} +9 -9
  496. package/dist/types/BreadcrumbsDesign.js +42 -0
  497. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  498. package/dist/types/ButtonDesign.js +7 -0
  499. package/dist/types/HasPopup.js +62 -0
  500. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  501. package/dist/types/SwitchDesign.js +40 -0
  502. package/dist/types/TabContainerTabsPlacement.js +4 -4
  503. package/dist/types/TabsOverflowMode.js +40 -0
  504. package/dist/types/WrappingType.js +41 -0
  505. package/dist/webcomponentsjs/CHANGELOG.md +4 -0
  506. package/dist/webcomponentsjs/README.md +44 -30
  507. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +14 -24
  508. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  509. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -1
  510. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +26 -23
  511. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -1
  512. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +239 -242
  513. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  514. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +176 -182
  515. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  516. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +144 -141
  517. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  518. package/dist/webcomponentsjs/webcomponents-bundle.js +241 -244
  519. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  520. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  521. package/package.json +18 -8
  522. package/src/Assets-static.js +1 -1
  523. package/src/Assets.js +1 -1
  524. package/src/Avatar.hbs +4 -2
  525. package/src/Avatar.js +88 -63
  526. package/src/AvatarGroup.hbs +15 -6
  527. package/src/AvatarGroup.js +135 -40
  528. package/src/Badge.hbs +7 -4
  529. package/src/Badge.js +43 -17
  530. package/src/Breadcrumbs.hbs +43 -0
  531. package/src/Breadcrumbs.js +575 -0
  532. package/src/BreadcrumbsItem.js +103 -0
  533. package/src/BreadcrumbsPopover.hbs +28 -0
  534. package/src/BusyIndicator.hbs +14 -9
  535. package/src/BusyIndicator.js +119 -29
  536. package/src/Button.hbs +1 -1
  537. package/src/Button.js +58 -56
  538. package/src/Calendar.hbs +5 -0
  539. package/src/Calendar.js +126 -23
  540. package/src/CalendarDate.js +1 -1
  541. package/src/CalendarHeader.hbs +13 -4
  542. package/src/CalendarHeader.js +75 -19
  543. package/src/Card.hbs +7 -39
  544. package/src/Card.js +37 -219
  545. package/src/CardHeader.hbs +42 -0
  546. package/src/CardHeader.js +288 -0
  547. package/src/Carousel.hbs +21 -15
  548. package/src/Carousel.js +250 -93
  549. package/src/CheckBox.hbs +9 -5
  550. package/src/CheckBox.js +154 -65
  551. package/src/ColorPalette.hbs +32 -6
  552. package/src/ColorPalette.js +283 -35
  553. package/src/ColorPaletteItem.hbs +3 -2
  554. package/src/ColorPaletteItem.js +37 -13
  555. package/src/ColorPalettePopover.hbs +31 -0
  556. package/src/ColorPalettePopover.js +244 -0
  557. package/src/ColorPicker.hbs +1 -0
  558. package/src/ColorPicker.js +30 -15
  559. package/src/ComboBox.hbs +7 -1
  560. package/src/ComboBox.js +415 -155
  561. package/src/ComboBoxGroupItem.js +70 -0
  562. package/src/ComboBoxItem.js +2 -2
  563. package/src/ComboBoxPopover.hbs +27 -17
  564. package/src/CustomListItem.js +14 -2
  565. package/src/DateComponentBase.js +22 -13
  566. package/src/DatePicker.js +105 -47
  567. package/src/DatePickerPopover.hbs +5 -2
  568. package/src/DateRangePicker.js +58 -21
  569. package/src/DateTimePicker.js +13 -9
  570. package/src/DateTimePickerPopover.hbs +6 -4
  571. package/src/DayPicker.hbs +9 -3
  572. package/src/DayPicker.js +48 -7
  573. package/src/Dialog.hbs +3 -1
  574. package/src/Dialog.js +178 -43
  575. package/src/DurationPicker.js +23 -4
  576. package/src/FileUploader.hbs +1 -0
  577. package/src/FileUploader.js +46 -33
  578. package/src/FileUploaderPopover.hbs +2 -1
  579. package/src/GroupHeaderListItem.hbs +4 -4
  580. package/src/GroupHeaderListItem.js +20 -12
  581. package/src/Icon.hbs +2 -1
  582. package/src/Icon.js +71 -20
  583. package/src/Input.hbs +11 -3
  584. package/src/Input.js +318 -125
  585. package/src/InputPopover.hbs +11 -9
  586. package/src/Interfaces.js +20 -0
  587. package/src/Label.hbs +1 -1
  588. package/src/Label.js +26 -11
  589. package/src/Link.hbs +4 -1
  590. package/src/Link.js +124 -40
  591. package/src/List.hbs +18 -14
  592. package/src/List.js +156 -44
  593. package/src/ListItem.hbs +14 -7
  594. package/src/ListItem.js +53 -14
  595. package/src/MessageStrip.hbs +10 -11
  596. package/src/MessageStrip.js +83 -44
  597. package/src/MultiComboBox.hbs +6 -1
  598. package/src/MultiComboBox.js +309 -99
  599. package/src/MultiComboBoxItem.js +5 -11
  600. package/src/MultiComboBoxPopover.hbs +42 -26
  601. package/src/MultiInput.js +59 -20
  602. package/src/Option.js +22 -17
  603. package/src/Panel.hbs +9 -3
  604. package/src/Panel.js +54 -23
  605. package/src/Popover.js +154 -82
  606. package/src/Popup.hbs +2 -1
  607. package/src/Popup.js +81 -38
  608. package/src/PopupBlockLayer.hbs +1 -1
  609. package/src/ProgressIndicator.hbs +7 -1
  610. package/src/ProgressIndicator.js +28 -20
  611. package/src/RadioButton.hbs +7 -4
  612. package/src/RadioButton.js +117 -46
  613. package/src/RadioButtonGroup.js +32 -32
  614. package/src/RangeSlider.hbs +8 -2
  615. package/src/RangeSlider.js +46 -23
  616. package/src/RatingIndicator.hbs +5 -3
  617. package/src/RatingIndicator.js +62 -42
  618. package/src/ResponsivePopover.hbs +12 -8
  619. package/src/ResponsivePopover.js +34 -50
  620. package/src/SegmentedButton.hbs +13 -5
  621. package/src/SegmentedButton.js +110 -60
  622. package/src/SegmentedButtonItem.hbs +42 -0
  623. package/src/SegmentedButtonItem.js +109 -0
  624. package/src/Select.hbs +9 -2
  625. package/src/Select.js +210 -105
  626. package/src/SelectPopover.hbs +25 -23
  627. package/src/Slider.hbs +3 -2
  628. package/src/Slider.js +48 -14
  629. package/src/SliderBase.hbs +6 -2
  630. package/src/SliderBase.js +23 -16
  631. package/src/SplitButton.hbs +53 -0
  632. package/src/SplitButton.js +425 -0
  633. package/src/StandardListItem.hbs +7 -5
  634. package/src/StandardListItem.js +33 -8
  635. package/src/StepInput.hbs +5 -3
  636. package/src/StepInput.js +46 -38
  637. package/src/SuggestionGroupItem.js +64 -0
  638. package/src/SuggestionItem.js +10 -24
  639. package/src/SuggestionListItem.hbs +4 -4
  640. package/src/SuggestionListItem.js +14 -3
  641. package/src/Switch.hbs +20 -3
  642. package/src/Switch.js +66 -26
  643. package/src/Tab.js +55 -32
  644. package/src/TabContainer.hbs +48 -52
  645. package/src/TabContainer.js +507 -103
  646. package/src/TabContainerPopover.hbs +11 -7
  647. package/src/TabInOverflow.hbs +0 -1
  648. package/src/TabInStrip.hbs +4 -14
  649. package/src/TabSeparator.js +42 -3
  650. package/src/TabSeparatorInOverflow.hbs +8 -0
  651. package/src/TabSeparatorInStrip.hbs +6 -0
  652. package/src/Table.hbs +14 -12
  653. package/src/Table.js +73 -28
  654. package/src/TableCell.js +10 -1
  655. package/src/TableColumn.js +11 -2
  656. package/src/TableGroupRow.hbs +12 -0
  657. package/src/TableGroupRow.js +160 -0
  658. package/src/TableRow.js +28 -18
  659. package/src/TextArea.js +81 -45
  660. package/src/TextAreaPopover.hbs +3 -2
  661. package/src/TimePicker.hbs +4 -1
  662. package/src/TimePicker.js +24 -5
  663. package/src/TimePickerBase.js +17 -12
  664. package/src/TimePickerPopover.hbs +2 -2
  665. package/src/TimeSelection.hbs +1 -1
  666. package/src/TimeSelection.js +11 -12
  667. package/src/Title.js +15 -8
  668. package/src/Toast.hbs +13 -11
  669. package/src/Toast.js +17 -6
  670. package/src/ToggleButton.js +23 -7
  671. package/src/Token.hbs +2 -0
  672. package/src/Token.js +30 -15
  673. package/src/Tokenizer.js +152 -22
  674. package/src/TokenizerPopover.hbs +1 -1
  675. package/src/Tree.hbs +7 -3
  676. package/src/Tree.js +90 -17
  677. package/src/TreeItem.js +40 -8
  678. package/src/TreeListItem.hbs +3 -3
  679. package/src/TreeListItem.js +40 -28
  680. package/src/WheelSlider.hbs +15 -4
  681. package/src/WheelSlider.js +31 -26
  682. package/src/YearPicker.js +1 -0
  683. package/src/features/ColorPaletteMoreColors.js +7 -7
  684. package/src/features/InputSuggestions.js +213 -52
  685. package/src/i18n/messagebundle.properties +96 -2
  686. package/src/i18n/messagebundle_ar.properties +71 -2
  687. package/src/i18n/messagebundle_bg.properties +71 -2
  688. package/src/i18n/messagebundle_ca.properties +71 -2
  689. package/src/i18n/messagebundle_cs.properties +71 -2
  690. package/src/i18n/messagebundle_cy.properties +71 -2
  691. package/src/i18n/messagebundle_da.properties +71 -2
  692. package/src/i18n/messagebundle_de.properties +71 -2
  693. package/src/i18n/messagebundle_el.properties +71 -2
  694. package/src/i18n/messagebundle_en.properties +71 -2
  695. package/src/i18n/messagebundle_en_GB.properties +71 -2
  696. package/src/i18n/messagebundle_en_US_sappsd.properties +71 -2
  697. package/src/i18n/messagebundle_en_US_saprigi.properties +71 -2
  698. package/src/i18n/messagebundle_en_US_saptrc.properties +71 -2
  699. package/src/i18n/messagebundle_es.properties +71 -2
  700. package/src/i18n/messagebundle_es_MX.properties +72 -3
  701. package/src/i18n/messagebundle_et.properties +71 -2
  702. package/src/i18n/messagebundle_fi.properties +72 -3
  703. package/src/i18n/messagebundle_fr.properties +71 -2
  704. package/src/i18n/messagebundle_fr_CA.properties +71 -2
  705. package/src/i18n/messagebundle_hi.properties +71 -2
  706. package/src/i18n/messagebundle_hr.properties +71 -2
  707. package/src/i18n/messagebundle_hu.properties +71 -2
  708. package/src/i18n/messagebundle_id.properties +72 -3
  709. package/src/i18n/messagebundle_it.properties +71 -2
  710. package/src/i18n/messagebundle_iw.properties +71 -2
  711. package/src/i18n/messagebundle_ja.properties +73 -4
  712. package/src/i18n/messagebundle_kk.properties +71 -2
  713. package/src/i18n/messagebundle_ko.properties +71 -2
  714. package/src/i18n/messagebundle_lt.properties +71 -2
  715. package/src/i18n/messagebundle_lv.properties +71 -2
  716. package/src/i18n/messagebundle_ms.properties +71 -2
  717. package/src/i18n/messagebundle_nl.properties +71 -2
  718. package/src/i18n/messagebundle_no.properties +71 -2
  719. package/src/i18n/messagebundle_pl.properties +71 -2
  720. package/src/i18n/messagebundle_pt.properties +71 -2
  721. package/src/i18n/messagebundle_pt_PT.properties +71 -2
  722. package/src/i18n/messagebundle_ro.properties +71 -2
  723. package/src/i18n/messagebundle_ru.properties +71 -2
  724. package/src/i18n/messagebundle_sh.properties +71 -2
  725. package/src/i18n/messagebundle_sk.properties +71 -2
  726. package/src/i18n/messagebundle_sl.properties +71 -2
  727. package/src/i18n/messagebundle_sv.properties +71 -2
  728. package/src/i18n/messagebundle_th.properties +70 -1
  729. package/src/i18n/messagebundle_tr.properties +71 -2
  730. package/src/i18n/messagebundle_uk.properties +71 -2
  731. package/src/i18n/messagebundle_vi.properties +71 -2
  732. package/src/i18n/messagebundle_zh_CN.properties +71 -2
  733. package/src/i18n/messagebundle_zh_TW.properties +70 -1
  734. package/src/popup-utils/OpenedPopupsRegistry.js +1 -1
  735. package/src/popup-utils/PopoverRegistry.js +1 -1
  736. package/src/themes/Avatar.css +227 -0
  737. package/src/themes/AvatarGroup.css +82 -0
  738. package/src/themes/Badge.css +247 -0
  739. package/src/themes/Breadcrumbs.css +100 -0
  740. package/src/themes/BreadcrumbsPopover.css +6 -0
  741. package/src/themes/BrowserScrollbar.css +25 -0
  742. package/src/themes/BusyIndicator.css +143 -0
  743. package/src/themes/Button.css +306 -0
  744. package/src/themes/Button.ie11.css +48 -0
  745. package/src/themes/Calendar.css +18 -0
  746. package/src/themes/CalendarHeader.css +137 -0
  747. package/src/themes/Card.css +42 -0
  748. package/src/themes/CardHeader.css +133 -0
  749. package/src/themes/Carousel.css +140 -0
  750. package/src/themes/CheckBox.css +289 -0
  751. package/src/themes/ColorPalette.css +70 -0
  752. package/src/themes/ColorPaletteItem.css +70 -0
  753. package/src/themes/ColorPalettePopover.css +16 -0
  754. package/src/themes/ColorPaletteStaticArea.css +17 -0
  755. package/src/themes/ColorPicker.css +190 -0
  756. package/src/themes/ComboBox.css +9 -0
  757. package/src/themes/ComboBoxPopover.css +17 -0
  758. package/src/themes/CustomListItem.css +31 -0
  759. package/src/themes/DatePicker.css +46 -0
  760. package/src/themes/DatePickerPopover.css +5 -0
  761. package/src/themes/DateRangePicker.css +16 -0
  762. package/src/themes/DateTimePicker.css +11 -0
  763. package/src/themes/DateTimePickerPopover.css +78 -0
  764. package/src/themes/DayPicker.css +269 -0
  765. package/src/themes/Dialog.css +70 -0
  766. package/src/themes/FileUploader.css +40 -0
  767. package/src/themes/GroupHeaderListItem.css +24 -0
  768. package/src/themes/GrowingButton.css +67 -0
  769. package/src/themes/Icon.css +38 -0
  770. package/src/themes/Input.css +406 -0
  771. package/src/themes/InputIcon.css +53 -0
  772. package/src/themes/InvisibleTextStyles.css +9 -0
  773. package/src/themes/Label.css +85 -0
  774. package/src/themes/Link.css +77 -0
  775. package/src/themes/List.css +116 -0
  776. package/src/themes/ListItem.css +231 -0
  777. package/src/themes/ListItemBase.css +79 -0
  778. package/src/themes/MessageStrip.css +123 -0
  779. package/src/themes/MonthPicker.css +86 -0
  780. package/src/themes/MultiComboBox.css +37 -0
  781. package/src/themes/MultiInput.css +14 -0
  782. package/src/themes/Panel.css +100 -0
  783. package/src/themes/Popover.css +102 -0
  784. package/src/themes/Popup.css +5 -0
  785. package/src/themes/PopupGlobal.css +6 -0
  786. package/src/themes/PopupStaticAreaStyles.css +17 -0
  787. package/src/themes/PopupsCommon.css +87 -0
  788. package/src/themes/ProgressIndicator.css +158 -0
  789. package/src/themes/RadioButton.css +249 -0
  790. package/src/themes/RatingIndicator.css +52 -0
  791. package/src/themes/ResponsivePopover.css +34 -0
  792. package/src/themes/ResponsivePopoverCommon.css +207 -0
  793. package/src/themes/SegmentedButton.css +88 -0
  794. package/src/themes/Select.css +53 -0
  795. package/src/themes/SelectPopover.css +10 -0
  796. package/src/themes/SliderBase.css +253 -0
  797. package/src/themes/SplitButton.css +98 -0
  798. package/src/themes/StepInput.css +269 -0
  799. package/src/themes/Suggestions.css +14 -0
  800. package/src/themes/Switch.css +370 -0
  801. package/src/themes/Tab.css +9 -0
  802. package/src/themes/TabContainer.css +128 -0
  803. package/src/themes/TabInOverflow.css +61 -0
  804. package/src/themes/TabInStrip.css +374 -0
  805. package/src/themes/TabSeparatorInOverflow.css +8 -0
  806. package/src/themes/TabSeparatorInStrip.css +5 -0
  807. package/src/themes/Table.css +91 -0
  808. package/src/themes/TableCell.css +28 -0
  809. package/src/themes/TableColumn.css +29 -0
  810. package/src/themes/TableGroupRow.css +34 -0
  811. package/src/themes/TableRow.css +84 -0
  812. package/src/themes/TapHighlightColor.css +3 -0
  813. package/src/themes/TextArea.css +309 -0
  814. package/src/themes/TimePicker.css +50 -0
  815. package/src/themes/TimePickerPopover.css +11 -0
  816. package/src/themes/TimeSelection.css +27 -0
  817. package/src/themes/Title.css +65 -0
  818. package/src/themes/Toast.css +93 -0
  819. package/src/themes/ToggleButton.css +88 -0
  820. package/src/themes/ToggleButton.ie11.css +48 -0
  821. package/src/themes/Token.css +117 -0
  822. package/src/themes/Tokenizer.css +84 -0
  823. package/src/themes/Tree.css +11 -0
  824. package/src/themes/TreeListItem.css +107 -0
  825. package/src/themes/ValueStateMessage.css +76 -0
  826. package/src/themes/WheelSlider.css +203 -0
  827. package/src/themes/YearPicker.css +86 -0
  828. package/src/themes/base/Avatar-parameters.css +38 -0
  829. package/src/themes/base/AvatarGroup-parameter.css +6 -0
  830. package/src/themes/base/Badge-parameters.css +61 -0
  831. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  832. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  833. package/src/themes/base/Button-parameters.css +30 -0
  834. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  835. package/src/themes/base/Card-parameters.css +17 -0
  836. package/src/themes/base/Carousel-parameters.css +9 -0
  837. package/src/themes/base/CheckBox-parameters.css +53 -0
  838. package/src/themes/base/ColorPalette-parameters.css +14 -0
  839. package/src/themes/base/ColorPicker-parameters.css +8 -0
  840. package/src/themes/base/DatePicker-parameters.css +6 -0
  841. package/src/themes/base/DayPicker-parameters.css +41 -0
  842. package/src/themes/base/Dialog-parameters.css +9 -0
  843. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  844. package/src/themes/base/GrowingButton-parameters.css +6 -0
  845. package/src/themes/base/Input-parameters.css +63 -0
  846. package/src/themes/base/InputIcon-parameters.css +11 -0
  847. package/src/themes/base/Link-parameters.css +8 -0
  848. package/src/themes/base/List-parameters.css +3 -0
  849. package/src/themes/base/ListItemBase-parameters.css +9 -0
  850. package/src/themes/base/MessageStrip-parameters.css +21 -0
  851. package/src/themes/base/MonthPicker-parameters.css +16 -0
  852. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  853. package/src/themes/base/Panel-parameters.css +11 -0
  854. package/src/themes/base/PopupsCommon-parameters.css +8 -0
  855. package/src/themes/base/ProgressIndicator-parameters.css +21 -0
  856. package/src/themes/base/RadioButton-parameters.css +32 -0
  857. package/src/themes/base/RatingIndicator-parameters.css +3 -0
  858. package/src/themes/base/SegmentedButtton-parameters.css +8 -0
  859. package/src/themes/base/Select-parameters.css +11 -0
  860. package/src/themes/base/SelectPopover-parameters.css +4 -0
  861. package/src/themes/base/SliderBase-parameters.css +57 -0
  862. package/src/themes/base/StepInput-parameters.css +23 -0
  863. package/src/themes/base/Suggestions-parameters.css +3 -0
  864. package/src/themes/base/Switch-parameters.css +107 -0
  865. package/src/themes/base/TabContainer-parameters.css +84 -0
  866. package/src/themes/base/Table-parameters.css +6 -0
  867. package/src/themes/base/TableColumn-parameters.css +3 -0
  868. package/src/themes/base/TableRow-parameters.css +3 -0
  869. package/src/themes/base/TextArea-parameters.css +22 -0
  870. package/src/themes/base/TimePicker-parameters.css +4 -0
  871. package/src/themes/base/TimelineItem-parameters.css +10 -0
  872. package/src/themes/base/Title-parameters.css +8 -0
  873. package/src/themes/base/Toast-parameters.css +6 -0
  874. package/src/themes/base/ToggleButton-parameters.css +8 -0
  875. package/src/themes/base/Token-parameters.css +19 -0
  876. package/src/themes/base/Tokenizer-parameters.css +4 -0
  877. package/src/themes/base/ValueStateMessage-parameters.css +7 -0
  878. package/src/themes/base/WheelSlider-parameters.css +15 -0
  879. package/src/themes/base/YearPicker-parameters.css +16 -0
  880. package/src/themes/base/sizes-parameters.css +302 -0
  881. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  882. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  883. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  884. package/src/themes/sap_belize/Input-parameters.css +6 -0
  885. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  886. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  887. package/src/themes/sap_belize/SliderBase-parameters.css +22 -0
  888. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  889. package/src/themes/sap_belize/Table-parameters.css +7 -0
  890. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  891. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  892. package/src/themes/sap_belize/parameters-bundle.css +48 -0
  893. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  894. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  895. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  896. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  897. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  898. package/src/themes/sap_belize_hcb/Card-parameters.css +6 -0
  899. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  900. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  901. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  902. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  903. package/src/themes/sap_belize_hcb/Dialog-parameters.css +7 -0
  904. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  905. package/src/themes/sap_belize_hcb/Input-parameters.css +14 -0
  906. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  907. package/src/themes/sap_belize_hcb/Link-parameters.css +7 -0
  908. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +10 -0
  909. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  910. package/src/themes/sap_belize_hcb/Panel-parameters.css +5 -0
  911. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  912. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +10 -0
  913. package/src/themes/sap_belize_hcb/Select-parameters.css +12 -0
  914. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +17 -0
  915. package/src/themes/sap_belize_hcb/Switch-parameters.css +46 -0
  916. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +44 -0
  917. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  918. package/src/themes/sap_belize_hcb/TableRow-parameters.css +5 -0
  919. package/src/themes/sap_belize_hcb/TextArea-parameters.css +6 -0
  920. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  921. package/src/themes/sap_belize_hcb/Token-parameters.css +6 -0
  922. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +5 -0
  923. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  924. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  925. package/src/themes/sap_belize_hcb/parameters-bundle.css +47 -0
  926. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  927. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  928. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  929. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  930. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  931. package/src/themes/sap_belize_hcw/Card-parameters.css +6 -0
  932. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  933. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  934. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  935. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  936. package/src/themes/sap_belize_hcw/Dialog-parameters.css +7 -0
  937. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  938. package/src/themes/sap_belize_hcw/Input-parameters.css +14 -0
  939. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  940. package/src/themes/sap_belize_hcw/Link-parameters.css +7 -0
  941. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +10 -0
  942. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  943. package/src/themes/sap_belize_hcw/Panel-parameters.css +5 -0
  944. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  945. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +10 -0
  946. package/src/themes/sap_belize_hcw/Select-parameters.css +12 -0
  947. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +17 -0
  948. package/src/themes/sap_belize_hcw/Switch-parameters.css +45 -0
  949. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +44 -0
  950. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  951. package/src/themes/sap_belize_hcw/TableRow-parameters.css +5 -0
  952. package/src/themes/sap_belize_hcw/TextArea-parameters.css +6 -0
  953. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  954. package/src/themes/sap_belize_hcw/Token-parameters.css +6 -0
  955. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +5 -0
  956. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  957. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  958. package/src/themes/sap_belize_hcw/parameters-bundle.css +47 -0
  959. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  960. package/src/themes/sap_fiori_3/Button-parameters.css +14 -0
  961. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  962. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  963. package/src/themes/sap_fiori_3/DayPicker-parameters.css +6 -0
  964. package/src/themes/sap_fiori_3/Input-parameters.css +7 -0
  965. package/src/themes/sap_fiori_3/Link-parameters.css +7 -0
  966. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  967. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  968. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  969. package/src/themes/sap_fiori_3/Panel-parameters.css +6 -0
  970. package/src/themes/sap_fiori_3/SliderBase-parameters.css +5 -0
  971. package/src/themes/sap_fiori_3/TabContainer-parameters.css +12 -0
  972. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  973. package/src/themes/sap_fiori_3/Token-parameters.css +9 -0
  974. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  975. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  976. package/src/themes/sap_fiori_3/parameters-bundle.css +48 -0
  977. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  978. package/src/themes/sap_fiori_3_dark/Button-parameters.css +14 -0
  979. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  980. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  981. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +6 -0
  982. package/src/themes/sap_fiori_3_dark/Input-parameters.css +7 -0
  983. package/src/themes/sap_fiori_3_dark/Link-parameters.css +7 -0
  984. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  985. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  986. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  987. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +6 -0
  988. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  989. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +12 -0
  990. package/src/themes/sap_fiori_3_dark/Token-parameters.css +8 -0
  991. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  992. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  993. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +47 -0
  994. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  995. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  996. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +10 -0
  997. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  998. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  999. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1000. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1001. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1002. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +19 -0
  1003. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +7 -0
  1004. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1005. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +21 -0
  1006. package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +5 -0
  1007. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +7 -0
  1008. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +10 -0
  1009. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1010. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1011. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1012. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +10 -0
  1013. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +12 -0
  1014. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +14 -0
  1015. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +45 -0
  1016. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +44 -0
  1017. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1018. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1019. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +10 -0
  1020. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1021. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1022. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1023. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +5 -0
  1024. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1025. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1026. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +48 -0
  1027. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1028. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1029. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +10 -0
  1030. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1031. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1032. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1033. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1034. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1035. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +19 -0
  1036. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +7 -0
  1037. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1038. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +21 -0
  1039. package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +5 -0
  1040. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +7 -0
  1041. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +10 -0
  1042. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1043. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1044. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1045. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +10 -0
  1046. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +12 -0
  1047. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +13 -0
  1048. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +45 -0
  1049. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +44 -0
  1050. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1051. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1052. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +10 -0
  1053. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1054. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1055. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1056. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +5 -0
  1057. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1058. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1059. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +48 -0
  1060. package/src/themes/sap_horizon/Avatar-parameters.css +33 -0
  1061. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1062. package/src/themes/sap_horizon/Button-parameters.css +20 -0
  1063. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1064. package/src/themes/sap_horizon/Card-parameters.css +10 -0
  1065. package/src/themes/sap_horizon/CheckBox-parameters.css +34 -0
  1066. package/src/themes/sap_horizon/ColorPalette-parameters.css +16 -0
  1067. package/src/themes/sap_horizon/ColorPicker-parameters.css +10 -0
  1068. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1069. package/src/themes/sap_horizon/DayPicker-parameters.css +31 -0
  1070. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1071. package/src/themes/sap_horizon/GrowingButton-parameters.css +5 -0
  1072. package/src/themes/sap_horizon/Input-parameters.css +35 -0
  1073. package/src/themes/sap_horizon/InputIcon-parameters.css +17 -0
  1074. package/src/themes/sap_horizon/Link-parameters.css +10 -0
  1075. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1076. package/src/themes/sap_horizon/ListItemBase-parameters.css +7 -0
  1077. package/src/themes/sap_horizon/MessageStrip-parameters.css +9 -0
  1078. package/src/themes/sap_horizon/MonthPicker-parameters.css +17 -0
  1079. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1080. package/src/themes/sap_horizon/Panel-parameters.css +12 -0
  1081. package/src/themes/sap_horizon/PopupsCommon-parameters.css +10 -0
  1082. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +23 -0
  1083. package/src/themes/sap_horizon/RadioButton-parameters.css +9 -0
  1084. package/src/themes/sap_horizon/RatingIndicator-parameters.css +3 -0
  1085. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1086. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1087. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1088. package/src/themes/sap_horizon/SliderBase-parameters.css +44 -0
  1089. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1090. package/src/themes/sap_horizon/Suggestions-parameters.css +5 -0
  1091. package/src/themes/sap_horizon/Switch-parameters.css +31 -0
  1092. package/src/themes/sap_horizon/TabContainer-parameters.css +25 -0
  1093. package/src/themes/sap_horizon/Table-parameters.css +8 -0
  1094. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1095. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1096. package/src/themes/sap_horizon/TextArea-parameters.css +22 -0
  1097. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1098. package/src/themes/sap_horizon/ToggleButton-parameters.css +11 -0
  1099. package/src/themes/sap_horizon/Token-parameters.css +28 -0
  1100. package/src/themes/sap_horizon/Tokenizer-parameters.css +6 -0
  1101. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +8 -0
  1102. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1103. package/src/themes/sap_horizon/YearPicker-parameters.css +16 -0
  1104. package/src/themes/sap_horizon/parameters-bundle.css +57 -0
  1105. package/src/themes/sap_horizon/sizes-parameters.css +8 -0
  1106. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1107. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1108. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1109. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1110. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1111. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1112. package/src/themes/sap_horizon_exp/Input-parameters.css +46 -0
  1113. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +9 -0
  1114. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1115. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1116. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1117. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1118. package/src/themes/sap_horizon_exp/Panel-parameters.css +6 -0
  1119. package/src/themes/sap_horizon_exp/Popover-parameters.css +5 -0
  1120. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +30 -0
  1121. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1122. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1123. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1124. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1125. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1126. package/src/themes/sap_horizon_exp/Token-parameters.css +9 -0
  1127. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1128. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1129. package/src/themes/sap_horizon_exp/parameters-bundle.css +46 -0
  1130. package/{dist/types/AvatarBackgroundColor.js → src/types/AvatarColorScheme.js} +9 -9
  1131. package/src/types/BreadcrumbsDesign.js +42 -0
  1132. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1133. package/src/types/ButtonDesign.js +7 -0
  1134. package/src/types/HasPopup.js +62 -0
  1135. package/src/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  1136. package/src/types/SwitchDesign.js +40 -0
  1137. package/src/types/TabContainerTabsPlacement.js +4 -4
  1138. package/src/types/TabsOverflowMode.js +40 -0
  1139. package/src/types/WrappingType.js +41 -0
  1140. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -14
  1141. package/dist/generated/themes/LoadMoreRow.css.js +0 -8
  1142. package/dist/types/AvatarFitType.js +0 -40
  1143. package/src/TabSeparator.hbs +0 -1
  1144. package/src/types/AvatarFitType.js +0 -40
package/src/ComboBox.js CHANGED
@@ -1,11 +1,13 @@
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 ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
4
- import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
4
+ import { isPhone, isSafari } from "@ui5/webcomponents-base/dist/Device.js";
5
5
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
6
6
  import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
7
+ import announce from "@ui5/webcomponents-base/dist/util/InvisibleMessage.js";
7
8
  import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
8
9
  import "@ui5/webcomponents-icons/dist/decline.js";
10
+ import "@ui5/webcomponents-icons/dist/not-editable.js";
9
11
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
10
12
  import {
11
13
  isBackSpace,
@@ -14,6 +16,13 @@ import {
14
16
  isUp,
15
17
  isDown,
16
18
  isEnter,
19
+ isEscape,
20
+ isTabNext,
21
+ isTabPrevious,
22
+ isPageUp,
23
+ isPageDown,
24
+ isHome,
25
+ isEnd,
17
26
  } from "@ui5/webcomponents-base/dist/Keys.js";
18
27
  import * as Filters from "./ComboBoxFilters.js";
19
28
 
@@ -24,6 +33,8 @@ import {
24
33
  VALUE_STATE_INFORMATION,
25
34
  INPUT_SUGGESTIONS_TITLE,
26
35
  SELECT_OPTIONS,
36
+ LIST_ITEM_POSITION,
37
+ LIST_ITEM_SELECTED,
27
38
  } from "./generated/i18n/i18n-defaults.js";
28
39
 
29
40
  // Templates
@@ -35,6 +46,7 @@ import ComboBoxCss from "./generated/themes/ComboBox.css.js";
35
46
  import ComboBoxPopoverCss from "./generated/themes/ComboBoxPopover.css.js";
36
47
  import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
37
48
  import ValueStateMessageCss from "./generated/themes/ValueStateMessage.css.js";
49
+ import SuggestionsCss from "./generated/themes/Suggestions.css.js";
38
50
 
39
51
  import ComboBoxItem from "./ComboBoxItem.js";
40
52
  import Icon from "./Icon.js";
@@ -44,6 +56,7 @@ import List from "./List.js";
44
56
  import BusyIndicator from "./BusyIndicator.js";
45
57
  import Button from "./Button.js";
46
58
  import StandardListItem from "./StandardListItem.js";
59
+ import ComboBoxGroupItem from "./ComboBoxGroupItem.js";
47
60
 
48
61
  /**
49
62
  * @public
@@ -51,10 +64,9 @@ import StandardListItem from "./StandardListItem.js";
51
64
  const metadata = {
52
65
  tag: "ui5-combobox",
53
66
  languageAware: true,
54
- defaultSlot: "items",
55
67
  properties: /** @lends sap.ui.webcomponents.main.ComboBox.prototype */ {
56
68
  /**
57
- * Defines the value of the <code>ui5-combobox</code>.
69
+ * Defines the value of the component.
58
70
  *
59
71
  * @type {string}
60
72
  * @defaultvalue ""
@@ -66,16 +78,16 @@ const metadata = {
66
78
  },
67
79
 
68
80
  /**
69
- * Defines the "live" value of the <code>ui5-combobox</code>.
81
+ * Defines the "live" value of the component.
70
82
  * <br><br>
71
- * <b>Note:</b> The property is updated upon typing.
83
+ * <b>Note:</b> If we have an item e.g. "Bulgaria", "B" is typed, "ulgaria" is typed ahead, value will be "Bulgaria", filterValue will be "B".
72
84
  *
73
85
  * <br><br>
74
86
  * <b>Note:</b> Initially the filter value is synced with value.
75
87
  *
76
88
  * @type {string}
77
89
  * @defaultvalue ""
78
- * @public
90
+ * @private
79
91
  */
80
92
  filterValue: {
81
93
  type: String,
@@ -84,7 +96,7 @@ const metadata = {
84
96
 
85
97
  /**
86
98
  * Defines a short hint intended to aid the user with data entry when the
87
- * <code>ui5-combobox</code> has no value.
99
+ * component has no value.
88
100
  * @type {string}
89
101
  * @defaultvalue ""
90
102
  * @public
@@ -95,9 +107,9 @@ const metadata = {
95
107
  },
96
108
 
97
109
  /**
98
- * Defines whether <code>ui5-combobox</code> is in disabled state.
110
+ * Defines whether the component is in disabled state.
99
111
  * <br><br>
100
- * <b>Note:</b> A disabled <code>ui5-combobox</code> is completely uninteractive.
112
+ * <b>Note:</b> A disabled component is completely noninteractive.
101
113
  *
102
114
  * @type {boolean}
103
115
  * @defaultvalue false
@@ -108,7 +120,7 @@ const metadata = {
108
120
  },
109
121
 
110
122
  /**
111
- * Defines the value state of the <code>ui5-combobox</code>.
123
+ * Defines the value state of the component.
112
124
  * <br><br>
113
125
  * Available options are:
114
126
  * <ul>
@@ -129,9 +141,9 @@ const metadata = {
129
141
  },
130
142
 
131
143
  /**
132
- * Defines whether the <code>ui5-combobox</code> is readonly.
144
+ * Defines whether the component is read-only.
133
145
  * <br><br>
134
- * <b>Note:</b> A read-only <code>ui5-combobox</code> is not editable,
146
+ * <b>Note:</b> A read-only component is not editable,
135
147
  * but still provides visual feedback upon user interaction.
136
148
  *
137
149
  * @type {boolean}
@@ -143,7 +155,7 @@ const metadata = {
143
155
  },
144
156
 
145
157
  /**
146
- * Defines whether the <code>ui5-combobox</code> is required.
158
+ * Defines whether the component is required.
147
159
  *
148
160
  * @type {boolean}
149
161
  * @defaultvalue false
@@ -165,7 +177,7 @@ const metadata = {
165
177
  },
166
178
 
167
179
  /**
168
- * Defines the filter type of the <code>ui5-combobox</code>.
180
+ * Defines the filter type of the component.
169
181
  * Available options are: <code>StartsWithPerTerm</code>, <code>StartsWith</code> and <code>Contains</code>.
170
182
  *
171
183
  * @type {string}
@@ -186,25 +198,34 @@ const metadata = {
186
198
  },
187
199
 
188
200
  /**
189
- * Defines the aria-label attribute for the combo box
201
+ * Indicates whether the visual focus is on the value state header
202
+ * @private
203
+ */
204
+ _isValueStateFocused: {
205
+ type: Boolean,
206
+ },
207
+
208
+ /**
209
+ * Sets the accessible aria name of the component.
210
+ *
190
211
  * @type {String}
191
212
  * @defaultvalue: ""
192
- * @private
193
- * @since 1.0.0-rc.8
213
+ * @public
214
+ * @since 1.0.0-rc.15
194
215
  */
195
- ariaLabel: {
216
+ accessibleName: {
196
217
  type: String,
197
218
  defaultValue: undefined,
198
219
  },
199
220
 
200
221
  /**
201
- * Receives id(or many ids) of the elements that label the combo box
222
+ * Receives id(or many ids) of the elements that label the component
202
223
  * @type {String}
203
224
  * @defaultvalue ""
204
- * @private
205
- * @since 1.0.0-rc.8
225
+ * @public
226
+ * @since 1.0.0-rc.15
206
227
  */
207
- ariaLabelledby: {
228
+ accessibleNameRef: {
208
229
  type: String,
209
230
  defaultValue: "",
210
231
  },
@@ -214,11 +235,6 @@ const metadata = {
214
235
  noAttribute: true,
215
236
  },
216
237
 
217
- _tempValue: {
218
- type: String,
219
- defaultValue: "",
220
- },
221
-
222
238
  _filteredItems: {
223
239
  type: Object,
224
240
  },
@@ -232,14 +248,7 @@ const metadata = {
232
248
  managedSlots: true,
233
249
  slots: /** @lends sap.ui.webcomponents.main.ComboBox.prototype */ {
234
250
  /**
235
- * Defines the <code>ui5-combobox</code> items.
236
- * <br><br>
237
- * Example: <br>
238
- * &lt;ui5-combobox><br>
239
- * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-li>Item #1&lt;/ui5-li><br>
240
- * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-li>Item #2&lt;/ui5-li><br>
241
- * &lt;/ui5-combobox>
242
- * <br> <br>
251
+ * Defines the component items.
243
252
  *
244
253
  * @type {sap.ui.webcomponents.main.IComboBoxItem[]}
245
254
  * @slot items
@@ -252,13 +261,13 @@ const metadata = {
252
261
  },
253
262
 
254
263
  /**
255
- * Defines the value state message that will be displayed as pop up under the <code>ui5-combobox</code>.
264
+ * Defines the value state message that will be displayed as pop up under the component.
256
265
  * <br><br>
257
266
  *
258
267
  * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
259
268
  * <br>
260
269
  * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
261
- * when the <code>ui5-select</code> is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
270
+ * when the <code>ui5-combobox</code> is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
262
271
  * @type {HTMLElement[]}
263
272
  * @since 1.0.0-rc.9
264
273
  * @slot
@@ -320,7 +329,8 @@ const metadata = {
320
329
  *
321
330
  * The <code>ui5-combobox</code> component represents a drop-down menu with a list of the available options and a text input field to narrow down the options.
322
331
  *
323
- * It is commonly used to enable users to select one or more options from a predefined list.
332
+ * It is commonly used to enable users to select an option from a predefined list.
333
+ *
324
334
  * <h3>Structure</h3>
325
335
  * The <code>ui5-combobox</code> consists of the following elements:
326
336
  * <ul>
@@ -328,15 +338,24 @@ const metadata = {
328
338
  * <li> Drop-down arrow - expands\collapses the option list.</li>
329
339
  * <li> Option list - the list of available options.</li>
330
340
  * </ul>
341
+ *
331
342
  * <h3>Keyboard Handling</h3>
332
343
  *
333
344
  * The <code>ui5-combobox</code> provides advanced keyboard handling.
334
- *
335
- * <h4>Picker</h4>
336
- * If the <code>ui5-combobox</code> is focused,
337
- * you can open or close the drop-down by pressing <code>F4</code>, <code>ALT+UP</code> or <code>ALT+DOWN</code> keys.
338
345
  * <br>
339
346
  *
347
+ * <ul>
348
+ * <li>[F4], [ALT]+[UP], or [ALT]+[DOWN] - Toggles the picker.</li>
349
+ * <li>[ESC] - Closes the picker, if open. If closed, cancels changes and reverts the typed in value.</li>
350
+ * <li>[ENTER] or [RETURN] - If picker is open, takes over the currently selected item and closes it.</li>
351
+ * <li>[DOWN] - Selects the next matching item in the picker.</li>
352
+ * <li>[UP] - Selects the previous matching item in the picker.</li>
353
+ * <li>[PAGEDOWN] - Moves selection down by page size (10 items by default).</li>
354
+ * <li>[PAGEUP] - Moves selection up by page size (10 items by default). </li>
355
+ * <li>[HOME] - If focus is in the ComboBox, moves cursor at the beginning of text. If focus is in the picker, selects the first item.</li>
356
+ * <li>[END] - If focus is in the ComboBox, moves cursor at the end of text. If focus is in the picker, selects the last item.</li>
357
+ * </ul>
358
+ *
340
359
  *
341
360
  * <h3>ES6 Module Import</h3>
342
361
  *
@@ -348,7 +367,7 @@ const metadata = {
348
367
  * @alias sap.ui.webcomponents.main.ComboBox
349
368
  * @extends UI5Element
350
369
  * @tagname ui5-combobox
351
- * @appenddocs ComboBoxItem
370
+ * @appenddocs ComboBoxItem ComboBoxGroupItem
352
371
  * @public
353
372
  * @since 1.0.0-rc.6
354
373
  */
@@ -366,7 +385,7 @@ class ComboBox extends UI5Element {
366
385
  }
367
386
 
368
387
  static get staticAreaStyles() {
369
- return [ResponsivePopoverCommonCss, ValueStateMessageCss, ComboBoxPopoverCss];
388
+ return [ResponsivePopoverCommonCss, ValueStateMessageCss, ComboBoxPopoverCss, SuggestionsCss];
370
389
  }
371
390
 
372
391
  static get template() {
@@ -383,33 +402,12 @@ class ComboBox extends UI5Element {
383
402
  this._filteredItems = [];
384
403
  this._initialRendering = true;
385
404
  this._itemFocused = false;
386
- this._tempFilterValue = "";
387
405
  this._selectionChanged = false;
388
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
389
406
  }
390
407
 
391
408
  onBeforeRendering() {
392
- let domValue;
393
-
394
409
  if (this._initialRendering) {
395
- domValue = this.value;
396
410
  this._filteredItems = this.items;
397
- } else {
398
- domValue = this.filterValue;
399
- }
400
-
401
- if (this._autocomplete && domValue !== "") {
402
- const item = this._autoCompleteValue(domValue);
403
-
404
- if (!this._selectionChanged && (item && !item.selected)) {
405
- this.fireEvent("selection-change", {
406
- item,
407
- });
408
-
409
- this._selectionChanged = false;
410
- }
411
- } else {
412
- this._tempValue = domValue;
413
411
  }
414
412
 
415
413
  if (!this._initialRendering && this.popover && document.activeElement === this && !this._filteredItems.length) {
@@ -417,15 +415,7 @@ class ComboBox extends UI5Element {
417
415
  }
418
416
 
419
417
  this._selectMatchingItem();
420
-
421
- if (this._isKeyNavigation && this.responsivePopover && this.responsivePopover.opened) {
422
- this.focused = false;
423
- } else if (this.shadowRoot.activeElement) {
424
- this.focused = this.shadowRoot.activeElement.id === "ui5-combobox-input";
425
- }
426
-
427
418
  this._initialRendering = false;
428
- this._isKeyNavigation = false;
429
419
  }
430
420
 
431
421
  async onAfterRendering() {
@@ -437,54 +427,70 @@ class ComboBox extends UI5Element {
437
427
 
438
428
  if (this.shouldClosePopover() && !isPhone()) {
439
429
  this.responsivePopover.close(false, false, true);
430
+ this._clearFocus();
431
+ this._itemFocused = false;
440
432
  }
441
433
 
442
- this._itemFocused = false;
443
-
444
434
  this.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);
445
435
  this.storeResponsivePopoverWidth();
436
+
437
+ // Safari is quite slow and does not preserve text highlighting on control rerendering.
438
+ // That's why we need to restore it "manually".
439
+ if (isSafari() && this._autocomplete && this.filterValue !== this.value) {
440
+ this.inner.setSelectionRange(
441
+ (this._isKeyNavigation ? 0 : this.filterValue.length),
442
+ this.value.length,
443
+ );
444
+ }
446
445
  }
447
446
 
448
447
  shouldClosePopover() {
449
- return this.responsivePopover.opened && !this.focused && !this._itemFocused;
448
+ return this.responsivePopover.opened && !this.focused && !this._itemFocused && !this._isValueStateFocused;
450
449
  }
451
450
 
452
451
  _focusin(event) {
453
452
  this.focused = true;
454
453
 
455
- if (this.filterValue !== this.value) {
456
- this.filterValue = this.value;
457
- }
454
+ this._lastValue = this.value;
455
+
456
+ this._autocomplete = false;
458
457
 
459
458
  !isPhone() && event.target.setSelectionRange(0, this.value.length);
460
459
  }
461
460
 
462
- _focusout() {
463
- this.focused = false;
461
+ _focusout(event) {
462
+ const focusedOutToValueStateMessage = event.relatedTarget && event.relatedTarget.shadowRoot && event.relatedTarget.shadowRoot.querySelector(".ui5-valuestatemessage-root");
464
463
 
465
- this._inputChange();
466
- !isPhone() && this._closeRespPopover();
467
- }
464
+ this._fireChangeEvent();
468
465
 
469
- _afterOpenPopover() {
470
- this._iconPressed = true;
466
+ if (focusedOutToValueStateMessage) {
467
+ event.stopImmediatePropagation();
468
+ return;
469
+ }
471
470
 
472
- if (isPhone() && this.value) {
473
- this.filterValue = this.value;
471
+ if (!this.shadowRoot.contains(event.relatedTarget)) {
472
+ this.focused = false;
473
+ !isPhone() && this._closeRespPopover(event);
474
474
  }
475
+ }
475
476
 
476
- this._clearFocus();
477
+ _afterOpenPopover() {
478
+ this._iconPressed = true;
477
479
  }
478
480
 
479
481
  _afterClosePopover() {
480
482
  this._iconPressed = false;
481
483
  this._filteredItems = this.items;
482
- this._tempFilterValue = "";
483
484
 
484
485
  // close device's keyboard and prevent further typing
485
486
  if (isPhone()) {
486
487
  this.blur();
487
488
  }
489
+
490
+ if (this._selectionPerformed) {
491
+ this._lastValue = this.value;
492
+ this._selectionPerformed = false;
493
+ }
488
494
  }
489
495
 
490
496
  _toggleRespPopover() {
@@ -511,7 +517,7 @@ class ComboBox extends UI5Element {
511
517
 
512
518
  async openValueStatePopover() {
513
519
  this.popover = await this._getPopover();
514
- this.popover && this.popover.openBy(this);
520
+ this.popover && this.popover.showAt(this);
515
521
  }
516
522
 
517
523
  async closeValueStatePopover() {
@@ -525,6 +531,8 @@ class ComboBox extends UI5Element {
525
531
  }
526
532
 
527
533
  _resetFilter() {
534
+ this._userTypedValue = null;
535
+ this.inner.setSelectionRange(0, this.value.length);
528
536
  this._filteredItems = this._filterItems("");
529
537
  this._selectMatchingItem();
530
538
  }
@@ -536,26 +544,48 @@ class ComboBox extends UI5Element {
536
544
  this._toggleRespPopover();
537
545
  }
538
546
 
547
+ _readonlyIconClick() {
548
+ this.inner.focus();
549
+ }
550
+
539
551
  _input(event) {
540
552
  const { value } = event.target;
541
553
 
542
554
  if (event.target === this.inner) {
543
555
  // stop the native event, as the semantic "input" would be fired.
544
556
  event.stopImmediatePropagation();
557
+ this.focused = true;
558
+ this._isValueStateFocused = false;
545
559
  }
546
560
 
547
- this._clearFocus();
548
- this._tempFilterValue = value;
561
+ this._filteredItems = this._filterItems(value);
562
+
563
+ this.value = value;
549
564
  this.filterValue = value;
550
- this.fireEvent("input");
551
565
 
552
- this._filteredItems = this._filterItems(value);
566
+ this._clearFocus();
567
+
568
+ // autocomplete
569
+ if (this._autocomplete) {
570
+ const item = this._getFirstMatchingItem(value);
571
+ this._applyAtomicValueAndSelection(item, value, true);
572
+
573
+ if (value !== "" && !this._selectionChanged && (item && !item.selected && !item.isGroupItem)) {
574
+ this.fireEvent("selection-change", {
575
+ item,
576
+ });
577
+
578
+ this._selectionChanged = false;
579
+ }
580
+ }
581
+
582
+ this.fireEvent("input");
553
583
 
554
584
  if (isPhone()) {
555
585
  return;
556
586
  }
557
587
 
558
- if (!this._filteredItems.length) {
588
+ if (!this._filteredItems.length || value === "") {
559
589
  this._closeRespPopover();
560
590
  } else {
561
591
  this._openRespPopover();
@@ -574,59 +604,211 @@ class ComboBox extends UI5Element {
574
604
  });
575
605
  }
576
606
 
577
- handleArrowKeyPress(event) {
578
- if (this.readonly || !this._filteredItems.length) {
607
+ handleNavKeyPress(event) {
608
+ if (this.focused && (isHome(event) || isEnd(event)) && this.value) {
579
609
  return;
580
610
  }
581
611
 
582
- const isArrowDown = isDown(event);
583
- const isArrowUp = isUp(event);
612
+ const isOpen = this.open;
584
613
  const currentItem = this._filteredItems.find(item => {
585
- return this.responsivePopover.opened ? item.focused : item.selected;
614
+ return isOpen ? item.focused : item.selected;
586
615
  });
587
- let indexOfItem = this._filteredItems.indexOf(currentItem);
616
+ const indexOfItem = this._filteredItems.indexOf(currentItem);
588
617
 
589
618
  event.preventDefault();
590
619
 
591
- if ((indexOfItem === 0 && isArrowUp) || (this._filteredItems.length - 1 === indexOfItem && isArrowDown)) {
620
+ if (this.focused && isOpen && (isUp(event) || isPageUp(event) || isPageDown(event))) {
621
+ return;
622
+ }
623
+
624
+ if (this._filteredItems.length - 1 === indexOfItem && isDown(event)) {
625
+ return;
626
+ }
627
+
628
+ this._isKeyNavigation = true;
629
+
630
+ this[`_handle${event.key}`](event, indexOfItem);
631
+ }
632
+
633
+ _handleItemNavigation(event, indexOfItem, isForward) {
634
+ const isOpen = this.open;
635
+ const currentItem = this._filteredItems[indexOfItem];
636
+ const nextItem = isForward ? this._filteredItems[indexOfItem + 1] : this._filteredItems[indexOfItem - 1];
637
+ const isGroupItem = currentItem && currentItem.isGroupItem;
638
+
639
+ if ((!isOpen) && ((isGroupItem && !nextItem) || (!isGroupItem && !currentItem))) {
592
640
  return;
593
641
  }
594
642
 
595
643
  this._clearFocus();
596
644
 
597
- indexOfItem += isArrowDown ? 1 : -1;
598
- indexOfItem = indexOfItem < 0 ? 0 : indexOfItem;
645
+ if (isOpen) {
646
+ this._itemFocused = true;
647
+ this.value = isGroupItem ? "" : currentItem.text;
648
+ this.focused = false;
649
+ currentItem.focused = true;
650
+ } else {
651
+ this.focused = true;
652
+ this.value = isGroupItem ? nextItem.text : currentItem.text;
653
+ currentItem.focused = false;
654
+ }
655
+
656
+ this._isValueStateFocused = false;
657
+ this._selectionChanged = true;
658
+
659
+ if (isGroupItem && isOpen) {
660
+ return;
661
+ }
662
+
663
+ this._announceSelectedItem(indexOfItem);
664
+
665
+ // autocomplete
666
+ const item = this._getFirstMatchingItem(this.value);
667
+ this._applyAtomicValueAndSelection(item, (this.open ? this._userTypedValue : null), true);
668
+
669
+ if ((item && !item.selected)) {
670
+ this.fireEvent("selection-change", {
671
+ item,
672
+ });
673
+ }
599
674
 
600
- this._filteredItems[indexOfItem].focused = true;
601
- this.filterValue = this._filteredItems[indexOfItem].text;
602
- this._isKeyNavigation = true;
603
- this._itemFocused = true;
604
675
  this.fireEvent("input");
676
+ this._fireChangeEvent();
677
+ }
605
678
 
606
- this.fireEvent("selection-change", {
607
- item: this._filteredItems[indexOfItem],
608
- });
679
+ _handleArrowDown(event, indexOfItem) {
680
+ const isOpen = this.open;
609
681
 
610
- this._selectionChanged = true;
682
+ if (this.focused && indexOfItem === -1 && this.hasValueStateText && isOpen) {
683
+ this._isValueStateFocused = true;
684
+ this.focused = false;
685
+ return;
686
+ }
687
+
688
+ indexOfItem = !isOpen && this.hasValueState && indexOfItem === -1 ? 0 : indexOfItem;
689
+
690
+ this._handleItemNavigation(event, ++indexOfItem, true /* isForward */);
691
+ }
692
+
693
+ _handleArrowUp(event, indexOfItem) {
694
+ const isOpen = this.open;
695
+
696
+ if (indexOfItem === 0 && !this.hasValueStateText) {
697
+ this._clearFocus();
698
+ this.focused = true;
699
+ this._itemFocused = false;
700
+ return;
701
+ }
702
+
703
+ if (indexOfItem === 0 && this.hasValueStateText && isOpen) {
704
+ this._clearFocus();
705
+ this._itemFocused = false;
706
+ this._isValueStateFocused = true;
707
+ this._filteredItems[0].selected = false;
708
+ return;
709
+ }
710
+
711
+ if (this._isValueStateFocused) {
712
+ this.focused = true;
713
+ this._isValueStateFocused = false;
714
+ return;
715
+ }
716
+
717
+ indexOfItem = !isOpen && this.hasValueState && indexOfItem === -1 ? 0 : indexOfItem;
718
+ this._handleItemNavigation(event, --indexOfItem, false /* isForward */);
719
+ }
720
+
721
+ _handlePageUp(event, indexOfItem) {
722
+ const isProposedIndexValid = indexOfItem - ComboBox.SKIP_ITEMS_SIZE > -1;
723
+ indexOfItem = isProposedIndexValid ? indexOfItem - ComboBox.SKIP_ITEMS_SIZE : 0;
724
+ const shouldMoveForward = this._filteredItems[indexOfItem].isGroupItem && !this.open;
725
+
726
+ if (!isProposedIndexValid && this.hasValueStateText && this.open) {
727
+ this._clearFocus();
728
+ this._itemFocused = false;
729
+ this._isValueStateFocused = true;
730
+ return;
731
+ }
732
+
733
+ this._handleItemNavigation(event, indexOfItem, shouldMoveForward);
734
+ }
735
+
736
+ _handlePageDown(event, indexOfItem) {
737
+ const itemsLength = this._filteredItems.length;
738
+ const isProposedIndexValid = indexOfItem + ComboBox.SKIP_ITEMS_SIZE < itemsLength;
739
+
740
+ indexOfItem = isProposedIndexValid ? indexOfItem + ComboBox.SKIP_ITEMS_SIZE : itemsLength - 1;
741
+ const shouldMoveForward = this._filteredItems[indexOfItem].isGroupItem && !this.open;
742
+
743
+ this._handleItemNavigation(event, indexOfItem, shouldMoveForward);
744
+ }
745
+
746
+ _handleHome(event, indexOfItem) {
747
+ const shouldMoveForward = this._filteredItems[0].isGroupItem && !this.open;
748
+
749
+ if (this.hasValueStateText && this.open) {
750
+ this._clearFocus();
751
+ this._itemFocused = false;
752
+ this._isValueStateFocused = true;
753
+ return;
754
+ }
755
+
756
+ this._handleItemNavigation(event, indexOfItem = 0, shouldMoveForward);
757
+ }
758
+
759
+ _handleEnd(event, indexOfItem) {
760
+ this._handleItemNavigation(event, indexOfItem = this._filteredItems.length - 1, true /* isForward */);
761
+ }
762
+
763
+ _keyup(event) {
764
+ this._userTypedValue = this.value.substring(0, this.inner.selectionStart);
611
765
  }
612
766
 
613
767
  _keydown(event) {
614
- const isArrowKey = isDown(event) || isUp(event);
768
+ const isNavKey = isDown(event) || isUp(event) || isPageUp(event) || isPageDown(event) || isHome(event) || isEnd(event);
615
769
  this._autocomplete = !(isBackSpace(event) || isDelete(event));
770
+ this._isKeyNavigation = false;
616
771
 
617
- if (isArrowKey) {
618
- this.handleArrowKeyPress(event);
772
+ if (isNavKey && !this.readonly && this._filteredItems.length) {
773
+ this.handleNavKeyPress(event);
619
774
  }
620
775
 
621
776
  if (isEnter(event)) {
622
- this._inputChange();
777
+ this._fireChangeEvent();
778
+ this._closeRespPopover();
779
+ this.focused = true;
780
+ }
781
+
782
+ if (isEscape(event)) {
783
+ this.focused = true;
784
+ this.value = !this.open ? this._lastValue : this.value;
785
+ this._isValueStateFocused = false;
786
+ }
787
+
788
+ if ((isTabNext(event) || isTabPrevious(event)) && this.open) {
623
789
  this._closeRespPopover();
624
790
  }
625
791
 
626
792
  if (isShow(event) && !this.readonly && !this.disabled) {
627
793
  event.preventDefault();
794
+
628
795
  this._resetFilter();
629
796
  this._toggleRespPopover();
797
+
798
+ const selectedItem = this._filteredItems.find(item => {
799
+ return item.selected;
800
+ });
801
+
802
+ if (selectedItem && this.open) {
803
+ this._itemFocused = true;
804
+ selectedItem.focused = true;
805
+ this.focused = false;
806
+ } else if (this.open && this._filteredItems.length) {
807
+ // If no item is selected, select the first one on "Show" (F4, Alt+Up/Down)
808
+ this._handleItemNavigation(event, 0, true /* isForward */);
809
+ } else {
810
+ this.focused = true;
811
+ }
630
812
  }
631
813
  }
632
814
 
@@ -640,62 +822,94 @@ class ComboBox extends UI5Element {
640
822
  if (isPhone() && event && event.target.classList.contains("ui5-responsive-popover-close-btn") && this._selectedItemText) {
641
823
  this.value = this._selectedItemText;
642
824
  this.filterValue = this._selectedItemText;
643
- this._tempValue = this._selectedItemText;
644
825
  }
645
826
 
827
+ this._isValueStateFocused = false;
828
+ this._clearFocus();
829
+
646
830
  this.responsivePopover.close();
647
831
  }
648
832
 
649
833
  _openRespPopover() {
650
- this.responsivePopover.open(this);
834
+ this.responsivePopover.showAt(this);
651
835
  }
652
836
 
653
837
  _filterItems(str) {
654
- return (Filters[this.filter] || Filters.StartsWithPerTerm)(str, this.items);
838
+ const itemsToFilter = this.items.filter(item => !item.isGroupItem);
839
+ const filteredItems = (Filters[this.filter] || Filters.StartsWithPerTerm)(str, itemsToFilter);
840
+
841
+ // Return the filtered items and their group items
842
+ return this.items.filter((item, idx, allItems) => ComboBox._groupItemFilter(item, ++idx, allItems, filteredItems) || filteredItems.indexOf(item) !== -1);
655
843
  }
656
844
 
657
- _autoCompleteValue(current) {
658
- const currentValue = current;
659
- const matchingItems = this._startsWithMatchingItems(currentValue);
660
- const selectionValue = this._tempFilterValue ? this._tempFilterValue : currentValue;
845
+ /**
846
+ * Returns true if the group header should be shown (if there is a filtered suggestion item for this group item)
847
+ *
848
+ * @private
849
+ */
850
+ static _groupItemFilter(item, idx, allItems, filteredItems) {
851
+ if (item.isGroupItem) {
852
+ let groupHasFilteredItems;
853
+
854
+ while (allItems[idx] && !allItems[idx].isGroupItem && !groupHasFilteredItems) {
855
+ groupHasFilteredItems = filteredItems.indexOf(allItems[idx]) !== -1;
856
+ idx++;
857
+ }
661
858
 
662
- if (matchingItems.length) {
663
- this._tempValue = matchingItems[0] ? matchingItems[0].text : current;
664
- } else {
665
- this._tempValue = current;
859
+ return groupHasFilteredItems;
666
860
  }
861
+ }
667
862
 
668
- if (matchingItems.length && (selectionValue !== this._tempValue && this.value !== this._tempValue)) {
669
- setTimeout(() => {
670
- this.inner.setSelectionRange(selectionValue.length, this._tempValue.length);
671
- }, 0);
672
- } else if (this._isKeyNavigation) {
673
- setTimeout(() => {
674
- this.inner.setSelectionRange(0, this._tempValue.length);
675
- }, 0);
863
+ _getFirstMatchingItem(current) {
864
+ const currentlyFocusedItem = this.items.find(item => item.focused === true);
865
+
866
+ if (currentlyFocusedItem && currentlyFocusedItem.isGroupItem) {
867
+ this.value = this.filterValue;
868
+ return;
676
869
  }
677
870
 
871
+ const matchingItems = this._startsWithMatchingItems(current).filter(item => !item.isGroupItem);
872
+
678
873
  if (matchingItems.length) {
679
874
  return matchingItems[0];
680
875
  }
681
876
  }
682
877
 
878
+ _applyAtomicValueAndSelection(item, filterValue, highlightValue) {
879
+ if (!item) {
880
+ return;
881
+ }
882
+
883
+ const value = (item && item.text) || "";
884
+ this.inner.value = value;
885
+ if (highlightValue) {
886
+ filterValue = filterValue || "";
887
+ this.inner.setSelectionRange(filterValue.length, value.length);
888
+ }
889
+ this.value = value;
890
+ }
891
+
683
892
  _selectMatchingItem() {
684
- this._filteredItems = this._filteredItems.map(item => {
685
- item.selected = (item.text === this._tempValue);
893
+ const currentlyFocusedItem = this.items.find(item => item.focused);
894
+ const shouldSelectionBeCleared = currentlyFocusedItem && currentlyFocusedItem.isGroupItem;
686
895
 
896
+ this._filteredItems = this._filteredItems.map(item => {
897
+ item.selected = !item.isGroupItem && (item.text === this.value) && !shouldSelectionBeCleared;
687
898
  return item;
688
899
  });
689
900
  }
690
901
 
691
- _inputChange() {
692
- if (this.value !== this._tempValue) {
693
- this.value = this._tempValue;
902
+ _fireChangeEvent() {
903
+ if (this.value !== this._lastValue) {
694
904
  this.fireEvent("change");
695
- this.inner.setSelectionRange(this.value.length, this.value.length);
905
+ this._lastValue = this.value;
696
906
  }
697
907
  }
698
908
 
909
+ _inputChange(event) {
910
+ event.preventDefault();
911
+ }
912
+
699
913
  _itemMousedown(event) {
700
914
  event.preventDefault();
701
915
  }
@@ -703,9 +917,17 @@ class ComboBox extends UI5Element {
703
917
  _selectItem(event) {
704
918
  const listItem = event.detail.item;
705
919
 
706
- this._tempValue = listItem.mappedItem.text;
707
920
  this._selectedItemText = listItem.mappedItem.text;
708
- this.filterValue = this._tempValue;
921
+ this._selectionPerformed = true;
922
+
923
+ const sameItemSelected = this.value === this._selectedItemText;
924
+ const sameSelectionPerformed = this.value.toLowerCase() === this.filterValue.toLowerCase();
925
+
926
+ if (sameItemSelected && sameSelectionPerformed) {
927
+ return this._closeRespPopover();
928
+ }
929
+
930
+ this.value = this._selectedItemText;
709
931
 
710
932
  if (!listItem.mappedItem.selected) {
711
933
  this.fireEvent("selection-change", {
@@ -716,25 +938,34 @@ class ComboBox extends UI5Element {
716
938
  }
717
939
 
718
940
  this._filteredItems.map(item => {
719
- item.selected = (item === listItem.mappedItem);
720
-
941
+ item.selected = (item === listItem.mappedItem && !item.isGroupItem);
721
942
  return item;
722
943
  });
723
944
 
724
- this._inputChange();
945
+ this._fireChangeEvent();
725
946
  this._closeRespPopover();
947
+
948
+ // reset selection
949
+ this.inner.setSelectionRange(this.value.length, this.value.length);
726
950
  }
727
951
 
728
952
  _onItemFocus(event) {
729
953
  this._itemFocused = true;
730
954
  }
731
955
 
956
+ _announceSelectedItem(indexOfItem) {
957
+ const itemPositionText = ComboBox.i18nBundle.getText(LIST_ITEM_POSITION, indexOfItem + 1, this._filteredItems.length);
958
+ const itemSelectionText = ComboBox.i18nBundle.getText(LIST_ITEM_SELECTED);
959
+
960
+ announce(`${itemPositionText} ${itemSelectionText}`, "Polite");
961
+ }
962
+
732
963
  get _headerTitleText() {
733
- return this.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
964
+ return ComboBox.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
734
965
  }
735
966
 
736
967
  get _iconAccessibleNameText() {
737
- return this.i18nBundle.getText(SELECT_OPTIONS);
968
+ return ComboBox.i18nBundle.getText(SELECT_OPTIONS);
738
969
  }
739
970
 
740
971
  get inner() {
@@ -773,15 +1004,15 @@ class ComboBox extends UI5Element {
773
1004
 
774
1005
  get valueStateTextMappings() {
775
1006
  return {
776
- "Success": this.i18nBundle.getText(VALUE_STATE_SUCCESS),
777
- "Error": this.i18nBundle.getText(VALUE_STATE_ERROR),
778
- "Warning": this.i18nBundle.getText(VALUE_STATE_WARNING),
779
- "Information": this.i18nBundle.getText(VALUE_STATE_INFORMATION),
1007
+ "Success": ComboBox.i18nBundle.getText(VALUE_STATE_SUCCESS),
1008
+ "Error": ComboBox.i18nBundle.getText(VALUE_STATE_ERROR),
1009
+ "Warning": ComboBox.i18nBundle.getText(VALUE_STATE_WARNING),
1010
+ "Information": ComboBox.i18nBundle.getText(VALUE_STATE_INFORMATION),
780
1011
  };
781
1012
  }
782
1013
 
783
1014
  get shouldOpenValueStateMessagePopover() {
784
- return this.focused && this.hasValueStateText && !this._iconPressed
1015
+ return this.focused && !this.readonly && this.hasValueStateText && !this._iconPressed
785
1016
  && !this.open && !this._isPhone;
786
1017
  }
787
1018
 
@@ -789,6 +1020,24 @@ class ComboBox extends UI5Element {
789
1020
  return !this.valueStateMessage.length && this.hasValueStateText;
790
1021
  }
791
1022
 
1023
+ get _valueStatePopoverHorizontalAlign() {
1024
+ return this.effectiveDir !== "rtl" ? "Left" : "Right";
1025
+ }
1026
+
1027
+ /**
1028
+ * This method is relevant for sap_horizon theme only
1029
+ */
1030
+ get _valueStateMessageIcon() {
1031
+ const iconPerValueState = {
1032
+ Error: "error",
1033
+ Warning: "alert",
1034
+ Success: "sys-enter-2",
1035
+ Information: "information",
1036
+ };
1037
+
1038
+ return this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : "";
1039
+ }
1040
+
792
1041
  get open() {
793
1042
  return this.responsivePopover ? this.responsivePopover.opened : false;
794
1043
  }
@@ -815,9 +1064,14 @@ class ComboBox extends UI5Element {
815
1064
  Button,
816
1065
  StandardListItem,
817
1066
  Popover,
1067
+ ComboBoxGroupItem,
818
1068
  ];
819
1069
  }
820
1070
 
1071
+ static async onDefine() {
1072
+ ComboBox.i18nBundle = await getI18nBundle("@ui5/webcomponents");
1073
+ }
1074
+
821
1075
  get styles() {
822
1076
  return {
823
1077
  popoverHeader: {
@@ -826,14 +1080,18 @@ class ComboBox extends UI5Element {
826
1080
  suggestionPopoverHeader: {
827
1081
  "display": this._listWidth === 0 ? "none" : "inline-block",
828
1082
  "width": `${this._listWidth}px`,
829
- "padding": "0.9125rem 1rem",
830
1083
  },
831
1084
  };
832
1085
  }
833
1086
 
834
1087
  get classes() {
835
1088
  return {
1089
+ popover: {
1090
+ "ui5-suggestions-popover": !this.isPhone,
1091
+ "ui5-suggestions-popover-with-value-state-header": !this.isPhone && this.hasValueStateText,
1092
+ },
836
1093
  popoverValueState: {
1094
+ "ui5-valuestatemessage-header": true,
837
1095
  "ui5-valuestatemessage-root": true,
838
1096
  "ui5-valuestatemessage--success": this.valueState === ValueState.Success,
839
1097
  "ui5-valuestatemessage--error": this.valueState === ValueState.Error,
@@ -844,6 +1102,8 @@ class ComboBox extends UI5Element {
844
1102
  }
845
1103
  }
846
1104
 
1105
+ ComboBox.SKIP_ITEMS_SIZE = 10;
1106
+
847
1107
  ComboBox.define();
848
1108
 
849
1109
  export default ComboBox;