@ui5/webcomponents 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (471) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/dist/Breadcrumbs.js +8 -6
  3. package/dist/BreadcrumbsItem.js +1 -1
  4. package/dist/BusyIndicator.js +2 -3
  5. package/dist/Button.js +28 -1
  6. package/dist/Calendar.js +7 -0
  7. package/dist/Carousel.js +9 -0
  8. package/dist/CheckBox.js +34 -1
  9. package/dist/ColorPalette.js +5 -4
  10. package/dist/ColorPalettePopover.js +2 -0
  11. package/dist/ComboBox.js +91 -23
  12. package/dist/DateComponentBase.js +6 -8
  13. package/dist/DatePicker.js +10 -2
  14. package/dist/DateRangePicker.js +22 -0
  15. package/dist/Dialog.js +5 -22
  16. package/dist/Icon.js +10 -8
  17. package/dist/Input.js +107 -15
  18. package/dist/Link.js +32 -14
  19. package/dist/List.js +14 -4
  20. package/dist/MessageStrip.js +39 -2
  21. package/dist/MultiComboBox.js +7 -3
  22. package/dist/MultiComboBoxItem.js +1 -1
  23. package/dist/Option.js +12 -1
  24. package/dist/Panel.js +9 -0
  25. package/dist/Popover.js +106 -57
  26. package/dist/Popup.js +16 -2
  27. package/dist/RadioButton.js +15 -3
  28. package/dist/RatingIndicator.js +37 -7
  29. package/dist/ResponsivePopover.js +1 -0
  30. package/dist/SegmentedButton.js +14 -1
  31. package/dist/Select.js +2 -1
  32. package/dist/SliderBase.js +4 -0
  33. package/dist/SplitButton.js +421 -0
  34. package/dist/Switch.js +18 -0
  35. package/dist/Tab.js +10 -6
  36. package/dist/TabContainer.js +480 -108
  37. package/dist/TabSeparator.js +42 -3
  38. package/dist/Table.js +15 -5
  39. package/dist/TextArea.js +9 -3
  40. package/dist/ToggleButton.js +5 -0
  41. package/dist/Tokenizer.js +10 -3
  42. package/dist/TreeItem.js +21 -0
  43. package/dist/TreeListItem.js +8 -0
  44. package/dist/api.json +258 -26
  45. package/dist/css/themes/Badge.css +1 -1
  46. package/dist/css/themes/Breadcrumbs.css +1 -1
  47. package/dist/css/themes/BrowserScrollbar.css +1 -1
  48. package/dist/css/themes/BusyIndicator.css +1 -1
  49. package/dist/css/themes/CardHeader.css +1 -1
  50. package/dist/css/themes/CheckBox.css +1 -1
  51. package/dist/css/themes/ComboBox.css +1 -1
  52. package/dist/css/themes/CustomListItem.css +1 -1
  53. package/dist/css/themes/Dialog.css +1 -1
  54. package/dist/css/themes/Input.css +1 -1
  55. package/dist/css/themes/List.css +1 -1
  56. package/dist/css/themes/MultiComboBox.css +1 -1
  57. package/dist/css/themes/Panel.css +1 -1
  58. package/dist/css/themes/Popover.css +1 -1
  59. package/dist/css/themes/PopupsCommon.css +1 -1
  60. package/dist/css/themes/RadioButton.css +1 -1
  61. package/dist/css/themes/RatingIndicator.css +1 -1
  62. package/dist/css/themes/Select.css +1 -1
  63. package/dist/css/themes/SliderBase.css +1 -1
  64. package/dist/css/themes/SplitButton.css +1 -0
  65. package/dist/css/themes/TabContainer.css +1 -1
  66. package/dist/css/themes/TabInOverflow.css +1 -1
  67. package/dist/css/themes/TabInStrip.css +1 -1
  68. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  69. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  70. package/dist/css/themes/Table.css +1 -1
  71. package/dist/css/themes/TableColumn.css +1 -1
  72. package/dist/css/themes/TextArea.css +1 -1
  73. package/dist/css/themes/TimeSelection.css +1 -1
  74. package/dist/css/themes/Token.css +1 -1
  75. package/dist/css/themes/ValueStateMessage.css +1 -1
  76. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  77. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  78. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  79. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  80. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  81. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  82. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  83. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  84. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  85. package/dist/features/InputSuggestions.js +88 -15
  86. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  87. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  88. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  89. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  90. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  91. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  92. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  93. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  94. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  95. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  96. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  97. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  98. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  99. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  100. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  105. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  110. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  111. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  112. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  113. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  115. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  119. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  123. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  133. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  134. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  135. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  136. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  137. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  138. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  139. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  140. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  141. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  142. package/dist/generated/i18n/i18n-defaults.js +2 -2
  143. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  144. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  145. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
  146. package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
  147. package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
  148. package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
  149. package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
  150. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  151. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
  152. package/dist/generated/templates/ComboBoxTemplate.lit.js +1 -1
  153. package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
  154. package/dist/generated/templates/DialogTemplate.lit.js +1 -1
  155. package/dist/generated/templates/InputPopoverTemplate.lit.js +3 -3
  156. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  157. package/dist/generated/templates/LinkTemplate.lit.js +1 -1
  158. package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
  159. package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
  160. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
  161. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  162. package/dist/generated/templates/PanelTemplate.lit.js +1 -1
  163. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
  164. package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
  165. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  166. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
  167. package/dist/generated/templates/SelectPopoverTemplate.lit.js +2 -2
  168. package/dist/generated/templates/SliderBaseTemplate.lit.js +1 -1
  169. package/dist/generated/templates/SliderTemplate.lit.js +1 -1
  170. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  171. package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
  172. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
  173. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  174. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +4 -2
  175. package/dist/generated/templates/TabContainerTemplate.lit.js +9 -10
  176. package/dist/generated/templates/TabInOverflowTemplate.lit.js +1 -1
  177. package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
  178. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  179. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  180. package/dist/generated/templates/TableTemplate.lit.js +1 -1
  181. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  182. package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
  183. package/dist/generated/templates/TreeListItemTemplate.lit.js +2 -2
  184. package/dist/generated/templates/TreeTemplate.lit.js +1 -1
  185. package/dist/generated/themes/Badge.css.js +1 -1
  186. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  187. package/dist/generated/themes/BrowserScrollbar.css.js +1 -1
  188. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  189. package/dist/generated/themes/CardHeader.css.js +1 -1
  190. package/dist/generated/themes/CheckBox.css.js +1 -1
  191. package/dist/generated/themes/ComboBox.css.js +1 -1
  192. package/dist/generated/themes/CustomListItem.css.js +1 -1
  193. package/dist/generated/themes/Dialog.css.js +1 -1
  194. package/dist/generated/themes/Input.css.js +1 -1
  195. package/dist/generated/themes/List.css.js +1 -1
  196. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  197. package/dist/generated/themes/Panel.css.js +1 -1
  198. package/dist/generated/themes/Popover.css.js +1 -1
  199. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  200. package/dist/generated/themes/RadioButton.css.js +1 -1
  201. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  202. package/dist/generated/themes/Select.css.js +1 -1
  203. package/dist/generated/themes/SliderBase.css.js +1 -1
  204. package/dist/generated/themes/SplitButton.css.js +8 -0
  205. package/dist/generated/themes/TabContainer.css.js +1 -1
  206. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  207. package/dist/generated/themes/TabInStrip.css.js +1 -1
  208. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  209. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  210. package/dist/generated/themes/Table.css.js +1 -1
  211. package/dist/generated/themes/TableColumn.css.js +1 -1
  212. package/dist/generated/themes/TextArea.css.js +1 -1
  213. package/dist/generated/themes/TimeSelection.css.js +1 -1
  214. package/dist/generated/themes/Token.css.js +1 -1
  215. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  216. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  217. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  218. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  219. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  220. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  221. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  222. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  223. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  224. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  225. package/dist/i18n/messagebundle.properties +26 -1
  226. package/dist/i18n/messagebundle_ar.properties +13 -1
  227. package/dist/i18n/messagebundle_bg.properties +13 -1
  228. package/dist/i18n/messagebundle_ca.properties +13 -1
  229. package/dist/i18n/messagebundle_cs.properties +13 -1
  230. package/dist/i18n/messagebundle_cy.properties +13 -1
  231. package/dist/i18n/messagebundle_da.properties +13 -1
  232. package/dist/i18n/messagebundle_de.properties +13 -1
  233. package/dist/i18n/messagebundle_el.properties +13 -1
  234. package/dist/i18n/messagebundle_en.properties +13 -1
  235. package/dist/i18n/messagebundle_en_GB.properties +13 -1
  236. package/dist/i18n/messagebundle_en_US_sappsd.properties +13 -1
  237. package/dist/i18n/messagebundle_en_US_saprigi.properties +13 -1
  238. package/dist/i18n/messagebundle_en_US_saptrc.properties +13 -1
  239. package/dist/i18n/messagebundle_es.properties +13 -1
  240. package/dist/i18n/messagebundle_es_MX.properties +13 -1
  241. package/dist/i18n/messagebundle_et.properties +13 -1
  242. package/dist/i18n/messagebundle_fi.properties +14 -2
  243. package/dist/i18n/messagebundle_fr.properties +13 -1
  244. package/dist/i18n/messagebundle_fr_CA.properties +13 -1
  245. package/dist/i18n/messagebundle_hi.properties +13 -1
  246. package/dist/i18n/messagebundle_hr.properties +13 -1
  247. package/dist/i18n/messagebundle_hu.properties +13 -1
  248. package/dist/i18n/messagebundle_id.properties +13 -1
  249. package/dist/i18n/messagebundle_it.properties +13 -1
  250. package/dist/i18n/messagebundle_iw.properties +13 -1
  251. package/dist/i18n/messagebundle_ja.properties +13 -1
  252. package/dist/i18n/messagebundle_kk.properties +13 -1
  253. package/dist/i18n/messagebundle_ko.properties +13 -1
  254. package/dist/i18n/messagebundle_lt.properties +13 -1
  255. package/dist/i18n/messagebundle_lv.properties +13 -1
  256. package/dist/i18n/messagebundle_ms.properties +13 -1
  257. package/dist/i18n/messagebundle_nl.properties +13 -1
  258. package/dist/i18n/messagebundle_no.properties +13 -1
  259. package/dist/i18n/messagebundle_pl.properties +13 -1
  260. package/dist/i18n/messagebundle_pt.properties +13 -1
  261. package/dist/i18n/messagebundle_pt_PT.properties +13 -1
  262. package/dist/i18n/messagebundle_ro.properties +13 -1
  263. package/dist/i18n/messagebundle_ru.properties +13 -1
  264. package/dist/i18n/messagebundle_sh.properties +13 -1
  265. package/dist/i18n/messagebundle_sk.properties +13 -1
  266. package/dist/i18n/messagebundle_sl.properties +13 -1
  267. package/dist/i18n/messagebundle_sv.properties +13 -1
  268. package/dist/i18n/messagebundle_th.properties +12 -0
  269. package/dist/i18n/messagebundle_tr.properties +13 -1
  270. package/dist/i18n/messagebundle_uk.properties +13 -1
  271. package/dist/i18n/messagebundle_vi.properties +13 -1
  272. package/dist/i18n/messagebundle_zh_CN.properties +13 -1
  273. package/dist/i18n/messagebundle_zh_TW.properties +12 -0
  274. package/dist/types/HasPopup.js +62 -0
  275. package/dist/types/TabsOverflowMode.js +40 -0
  276. package/package.json +8 -8
  277. package/src/Breadcrumbs.hbs +3 -2
  278. package/src/Breadcrumbs.js +8 -6
  279. package/src/BreadcrumbsItem.js +1 -1
  280. package/src/BreadcrumbsPopover.hbs +2 -2
  281. package/src/BusyIndicator.hbs +1 -1
  282. package/src/BusyIndicator.js +2 -3
  283. package/src/Button.hbs +1 -1
  284. package/src/Button.js +28 -1
  285. package/src/Calendar.js +7 -0
  286. package/src/CardHeader.hbs +12 -5
  287. package/src/Carousel.hbs +1 -0
  288. package/src/Carousel.js +9 -0
  289. package/src/CheckBox.hbs +1 -0
  290. package/src/CheckBox.js +34 -1
  291. package/src/ColorPalette.js +5 -4
  292. package/src/ColorPalettePopover.hbs +7 -5
  293. package/src/ColorPalettePopover.js +2 -0
  294. package/src/ComboBox.hbs +1 -0
  295. package/src/ComboBox.js +91 -23
  296. package/src/ComboBoxPopover.hbs +1 -0
  297. package/src/DateComponentBase.js +6 -8
  298. package/src/DatePicker.js +10 -2
  299. package/src/DateRangePicker.js +22 -0
  300. package/src/Dialog.hbs +1 -1
  301. package/src/Dialog.js +5 -22
  302. package/src/Icon.js +10 -8
  303. package/src/Input.hbs +1 -1
  304. package/src/Input.js +107 -15
  305. package/src/InputPopover.hbs +2 -3
  306. package/src/Link.hbs +2 -1
  307. package/src/Link.js +32 -14
  308. package/src/List.js +14 -4
  309. package/src/ListItem.hbs +1 -0
  310. package/src/MessageStrip.hbs +1 -1
  311. package/src/MessageStrip.js +39 -2
  312. package/src/MultiComboBox.js +7 -3
  313. package/src/MultiComboBoxItem.js +1 -1
  314. package/src/MultiComboBoxPopover.hbs +1 -1
  315. package/src/Option.js +12 -1
  316. package/src/Panel.hbs +1 -1
  317. package/src/Panel.js +9 -0
  318. package/src/Popover.js +106 -57
  319. package/src/Popup.js +16 -2
  320. package/src/PopupBlockLayer.hbs +1 -1
  321. package/src/RadioButton.js +15 -3
  322. package/src/RatingIndicator.js +37 -7
  323. package/src/ResponsivePopover.hbs +2 -0
  324. package/src/ResponsivePopover.js +1 -0
  325. package/src/SegmentedButton.hbs +1 -0
  326. package/src/SegmentedButton.js +14 -1
  327. package/src/Select.js +2 -1
  328. package/src/SelectPopover.hbs +2 -1
  329. package/src/SliderBase.hbs +1 -1
  330. package/src/SliderBase.js +4 -0
  331. package/src/SplitButton.hbs +53 -0
  332. package/src/SplitButton.js +421 -0
  333. package/src/Switch.hbs +1 -0
  334. package/src/Switch.js +18 -0
  335. package/src/Tab.js +10 -6
  336. package/src/TabContainer.hbs +48 -58
  337. package/src/TabContainer.js +480 -108
  338. package/src/TabContainerPopover.hbs +9 -6
  339. package/src/TabInOverflow.hbs +0 -1
  340. package/src/TabInStrip.hbs +3 -8
  341. package/src/TabSeparator.js +42 -3
  342. package/src/TabSeparatorInOverflow.hbs +8 -0
  343. package/src/TabSeparatorInStrip.hbs +6 -0
  344. package/src/Table.hbs +1 -1
  345. package/src/Table.js +15 -5
  346. package/src/TextArea.js +9 -3
  347. package/src/TextAreaPopover.hbs +1 -1
  348. package/src/ToggleButton.js +5 -0
  349. package/src/Tokenizer.js +10 -3
  350. package/src/Tree.hbs +1 -0
  351. package/src/TreeItem.js +21 -0
  352. package/src/TreeListItem.js +8 -0
  353. package/src/features/InputSuggestions.js +88 -15
  354. package/src/i18n/messagebundle.properties +26 -1
  355. package/src/i18n/messagebundle_ar.properties +13 -1
  356. package/src/i18n/messagebundle_bg.properties +13 -1
  357. package/src/i18n/messagebundle_ca.properties +13 -1
  358. package/src/i18n/messagebundle_cs.properties +13 -1
  359. package/src/i18n/messagebundle_cy.properties +13 -1
  360. package/src/i18n/messagebundle_da.properties +13 -1
  361. package/src/i18n/messagebundle_de.properties +13 -1
  362. package/src/i18n/messagebundle_el.properties +13 -1
  363. package/src/i18n/messagebundle_en.properties +13 -1
  364. package/src/i18n/messagebundle_en_GB.properties +13 -1
  365. package/src/i18n/messagebundle_en_US_sappsd.properties +13 -1
  366. package/src/i18n/messagebundle_en_US_saprigi.properties +13 -1
  367. package/src/i18n/messagebundle_en_US_saptrc.properties +13 -1
  368. package/src/i18n/messagebundle_es.properties +13 -1
  369. package/src/i18n/messagebundle_es_MX.properties +13 -1
  370. package/src/i18n/messagebundle_et.properties +13 -1
  371. package/src/i18n/messagebundle_fi.properties +14 -2
  372. package/src/i18n/messagebundle_fr.properties +13 -1
  373. package/src/i18n/messagebundle_fr_CA.properties +13 -1
  374. package/src/i18n/messagebundle_hi.properties +13 -1
  375. package/src/i18n/messagebundle_hr.properties +13 -1
  376. package/src/i18n/messagebundle_hu.properties +13 -1
  377. package/src/i18n/messagebundle_id.properties +13 -1
  378. package/src/i18n/messagebundle_it.properties +13 -1
  379. package/src/i18n/messagebundle_iw.properties +13 -1
  380. package/src/i18n/messagebundle_ja.properties +13 -1
  381. package/src/i18n/messagebundle_kk.properties +13 -1
  382. package/src/i18n/messagebundle_ko.properties +13 -1
  383. package/src/i18n/messagebundle_lt.properties +13 -1
  384. package/src/i18n/messagebundle_lv.properties +13 -1
  385. package/src/i18n/messagebundle_ms.properties +13 -1
  386. package/src/i18n/messagebundle_nl.properties +13 -1
  387. package/src/i18n/messagebundle_no.properties +13 -1
  388. package/src/i18n/messagebundle_pl.properties +13 -1
  389. package/src/i18n/messagebundle_pt.properties +13 -1
  390. package/src/i18n/messagebundle_pt_PT.properties +13 -1
  391. package/src/i18n/messagebundle_ro.properties +13 -1
  392. package/src/i18n/messagebundle_ru.properties +13 -1
  393. package/src/i18n/messagebundle_sh.properties +13 -1
  394. package/src/i18n/messagebundle_sk.properties +13 -1
  395. package/src/i18n/messagebundle_sl.properties +13 -1
  396. package/src/i18n/messagebundle_sv.properties +13 -1
  397. package/src/i18n/messagebundle_th.properties +12 -0
  398. package/src/i18n/messagebundle_tr.properties +13 -1
  399. package/src/i18n/messagebundle_uk.properties +13 -1
  400. package/src/i18n/messagebundle_vi.properties +13 -1
  401. package/src/i18n/messagebundle_zh_CN.properties +13 -1
  402. package/src/i18n/messagebundle_zh_TW.properties +12 -0
  403. package/src/themes/Badge.css +3 -1
  404. package/src/themes/Breadcrumbs.css +100 -99
  405. package/src/themes/BrowserScrollbar.css +2 -0
  406. package/src/themes/BusyIndicator.css +3 -3
  407. package/src/themes/CardHeader.css +7 -3
  408. package/src/themes/CheckBox.css +15 -7
  409. package/src/themes/CustomListItem.css +2 -1
  410. package/src/themes/Dialog.css +1 -0
  411. package/src/themes/Input.css +14 -0
  412. package/src/themes/List.css +1 -0
  413. package/src/themes/Panel.css +4 -0
  414. package/src/themes/Popover.css +4 -0
  415. package/src/themes/PopupsCommon.css +0 -1
  416. package/src/themes/RadioButton.css +4 -3
  417. package/src/themes/RatingIndicator.css +0 -1
  418. package/src/themes/SliderBase.css +3 -2
  419. package/src/themes/SplitButton.css +98 -0
  420. package/src/themes/TabContainer.css +17 -53
  421. package/src/themes/TabInOverflow.css +25 -21
  422. package/src/themes/TabInStrip.css +124 -100
  423. package/src/themes/TabSeparatorInOverflow.css +8 -0
  424. package/src/themes/TabSeparatorInStrip.css +5 -0
  425. package/src/themes/Table.css +1 -1
  426. package/src/themes/TableColumn.css +0 -1
  427. package/src/themes/TextArea.css +9 -1
  428. package/src/themes/TimeSelection.css +4 -0
  429. package/src/themes/Token.css +2 -1
  430. package/src/themes/Tokenizer.css +1 -1
  431. package/src/themes/ValueStateMessage.css +3 -3
  432. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  433. package/src/themes/base/Card-parameters.css +1 -1
  434. package/src/themes/base/Input-parameters.css +5 -0
  435. package/src/themes/base/TabContainer-parameters.css +1 -1
  436. package/src/themes/base/TextArea-parameters.css +1 -0
  437. package/src/themes/base/Token-parameters.css +1 -0
  438. package/src/themes/base/sizes-parameters.css +2 -2
  439. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  440. package/src/themes/sap_belize/Table-parameters.css +3 -0
  441. package/src/themes/sap_belize/parameters-bundle.css +1 -0
  442. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  443. package/src/themes/sap_belize_hcb/Input-parameters.css +1 -0
  444. package/src/themes/sap_belize_hcb/Table-parameters.css +1 -0
  445. package/src/themes/sap_belize_hcb/Token-parameters.css +1 -0
  446. package/src/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  447. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  448. package/src/themes/sap_belize_hcw/Input-parameters.css +1 -0
  449. package/src/themes/sap_belize_hcw/Table-parameters.css +1 -0
  450. package/src/themes/sap_belize_hcw/Token-parameters.css +1 -0
  451. package/src/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  452. package/src/themes/sap_fiori_3/TabContainer-parameters.css +1 -1
  453. package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
  454. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  455. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +7 -0
  456. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +2 -0
  457. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +2 -1
  458. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  459. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +7 -0
  460. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +2 -0
  461. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +2 -1
  462. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  463. package/src/themes/sap_horizon/Card-parameters.css +0 -1
  464. package/src/themes/sap_horizon/Table-parameters.css +1 -0
  465. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  466. package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  467. package/src/types/HasPopup.js +62 -0
  468. package/src/types/TabsOverflowMode.js +40 -0
  469. package/csp.js +0 -7
  470. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  471. package/src/TabSeparator.hbs +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,93 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.1.0](https://github.com/SAP/ui5-webcomponents/compare/v1.0.2...v1.1.0) (2022-01-21)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **inputs:** adjust value and placeholder styles ([#4400](https://github.com/SAP/ui5-webcomponents/issues/4400)) ([b6014bc](https://github.com/SAP/ui5-webcomponents/commit/b6014bc))
12
+ * **inputs:** value state message is not presented in readonly mode ([#4329](https://github.com/SAP/ui5-webcomponents/issues/4329)) ([e1250ae](https://github.com/SAP/ui5-webcomponents/commit/e1250ae))
13
+ * **popups:** block layer of popups now has a tabindex with value 0 ([#4324](https://github.com/SAP/ui5-webcomponents/issues/4324)) ([0965738](https://github.com/SAP/ui5-webcomponents/commit/0965738)), closes [#4187](https://github.com/SAP/ui5-webcomponents/issues/4187)
14
+ * **ui5-badge:** center text vertically ([#4394](https://github.com/SAP/ui5-webcomponents/issues/4394)) ([e6d0f69](https://github.com/SAP/ui5-webcomponents/commit/e6d0f69))
15
+ * **ui5-breadcrumbs:** correct missing label for single breadcrumb ([#4578](https://github.com/SAP/ui5-webcomponents/issues/4578)) ([42254d8](https://github.com/SAP/ui5-webcomponents/commit/42254d8)), closes [#4565](https://github.com/SAP/ui5-webcomponents/issues/4565)
16
+ * **ui5-breadcrumbs:** remove text-decoration from separator ([#4568](https://github.com/SAP/ui5-webcomponents/issues/4568)) ([ed87ba5](https://github.com/SAP/ui5-webcomponents/commit/ed87ba5))
17
+ * **ui5-busy-indicator:** Improve delay handling ([#4321](https://github.com/SAP/ui5-webcomponents/issues/4321)) ([acb1729](https://github.com/SAP/ui5-webcomponents/commit/acb1729)), closes [#4108](https://github.com/SAP/ui5-webcomponents/issues/4108)
18
+ * **ui5-button:** clicking button is safari now gives it a focus ([#4235](https://github.com/SAP/ui5-webcomponents/issues/4235)) ([baeb02d](https://github.com/SAP/ui5-webcomponents/commit/baeb02d)), closes [#2951](https://github.com/SAP/ui5-webcomponents/issues/2951)
19
+ * **ui5-card:** adjust some classes in Playground samples ([#4462](https://github.com/SAP/ui5-webcomponents/issues/4462)) ([2a9ed2a](https://github.com/SAP/ui5-webcomponents/commit/2a9ed2a)), closes [#4200](https://github.com/SAP/ui5-webcomponents/issues/4200)
20
+ * **ui5-card:** update theming parameter ([#4582](https://github.com/SAP/ui5-webcomponents/issues/4582)) ([622db2c](https://github.com/SAP/ui5-webcomponents/commit/622db2c))
21
+ * **ui5-card-header:** fix rtl support ([#4536](https://github.com/SAP/ui5-webcomponents/issues/4536)) ([14a2a03](https://github.com/SAP/ui5-webcomponents/commit/14a2a03))
22
+ * **ui5-carousel:** fix playground sample ([#4366](https://github.com/SAP/ui5-webcomponents/issues/4366)) ([67ace3a](https://github.com/SAP/ui5-webcomponents/commit/67ace3a))
23
+ * **ui5-checkbox:** cursor style when disabled ([#4392](https://github.com/SAP/ui5-webcomponents/issues/4392)) ([5d3e8f5](https://github.com/SAP/ui5-webcomponents/commit/5d3e8f5))
24
+ * **ui5-checkbox:** fix position of checkmark in ie11 ([#4320](https://github.com/SAP/ui5-webcomponents/issues/4320)) ([2745bbc](https://github.com/SAP/ui5-webcomponents/commit/2745bbc))
25
+ * **ui5-combobox:** fix docs ([#4553](https://github.com/SAP/ui5-webcomponents/issues/4553)) ([f0b1bf7](https://github.com/SAP/ui5-webcomponents/commit/f0b1bf7))
26
+ * **ui5-combobox:** Keyboard navigation trough filtered items ([#4143](https://github.com/SAP/ui5-webcomponents/issues/4143)) ([17e6e51](https://github.com/SAP/ui5-webcomponents/commit/17e6e51))
27
+ * **ui5-combobox:** remove incorrect sample ([#4482](https://github.com/SAP/ui5-webcomponents/issues/4482)) ([4b2720b](https://github.com/SAP/ui5-webcomponents/commit/4b2720b))
28
+ * **ui5-combobox, ui5-textarea:** correct value state message placement in RTL mode ([#4396](https://github.com/SAP/ui5-webcomponents/issues/4396)) ([6ab9edb](https://github.com/SAP/ui5-webcomponents/commit/6ab9edb))
29
+ * **ui5-date-picker:** enable date value strict parsing ([#4428](https://github.com/SAP/ui5-webcomponents/issues/4428)) ([ac5ac2d](https://github.com/SAP/ui5-webcomponents/commit/ac5ac2d)), closes [#4409](https://github.com/SAP/ui5-webcomponents/issues/4409)
30
+ * **ui5-date-picker:** remove title attribute from samples ([#4422](https://github.com/SAP/ui5-webcomponents/issues/4422)) ([56a6724](https://github.com/SAP/ui5-webcomponents/commit/56a6724))
31
+ * **ui5-date-time-picker:** proper visualization on mobile ([#4345](https://github.com/SAP/ui5-webcomponents/issues/4345)) ([7d8b93a](https://github.com/SAP/ui5-webcomponents/commit/7d8b93a))
32
+ * **ui5-dialog:** correct border radius when stretched on phones ([#4327](https://github.com/SAP/ui5-webcomponents/issues/4327)) ([5aedc43](https://github.com/SAP/ui5-webcomponents/commit/5aedc43)), closes [#4254](https://github.com/SAP/ui5-webcomponents/issues/4254)
33
+ * **ui5-dialog:** resize handle is no longer shown on phones ([#4326](https://github.com/SAP/ui5-webcomponents/issues/4326)) ([9b3869f](https://github.com/SAP/ui5-webcomponents/commit/9b3869f)), closes [#4253](https://github.com/SAP/ui5-webcomponents/issues/4253)
34
+ * **ui5-icon:** correct tabindex value ([#4509](https://github.com/SAP/ui5-webcomponents/issues/4509)) ([54698f6](https://github.com/SAP/ui5-webcomponents/commit/54698f6))
35
+ * **ui5-input:** Consistent "change" event ([#4129](https://github.com/SAP/ui5-webcomponents/issues/4129)) ([09f9059](https://github.com/SAP/ui5-webcomponents/commit/09f9059))
36
+ * **ui5-input:** fix event handling in firefox ([#4447](https://github.com/SAP/ui5-webcomponents/issues/4447)) ([d973162](https://github.com/SAP/ui5-webcomponents/commit/d973162))
37
+ * **ui5-input:** fix value truncation ([#4467](https://github.com/SAP/ui5-webcomponents/issues/4467)) ([d9261f5](https://github.com/SAP/ui5-webcomponents/commit/d9261f5))
38
+ * **ui5-input:** improve sample visualization ([#4476](https://github.com/SAP/ui5-webcomponents/issues/4476)) ([b0fd49a](https://github.com/SAP/ui5-webcomponents/commit/b0fd49a))
39
+ * **ui5-li-custom:** removed height restriction ([#4473](https://github.com/SAP/ui5-webcomponents/issues/4473)) ([e76f8c9](https://github.com/SAP/ui5-webcomponents/commit/e76f8c9)), closes [#4450](https://github.com/SAP/ui5-webcomponents/issues/4450)
40
+ * **ui5-link:** add `noopener` to rel attribute ([#4533](https://github.com/SAP/ui5-webcomponents/issues/4533)) ([3f2c3cd](https://github.com/SAP/ui5-webcomponents/commit/3f2c3cd))
41
+ * **ui5-popover:** restrict arrow going out of bounds ([#4599](https://github.com/SAP/ui5-webcomponents/issues/4599)) ([41239a8](https://github.com/SAP/ui5-webcomponents/commit/41239a8)), closes [#4581](https://github.com/SAP/ui5-webcomponents/issues/4581)
42
+ * Breadcrumbs no longer throws an error when empty ([#4563](https://github.com/SAP/ui5-webcomponents/issues/4563)) ([cfd9fa6](https://github.com/SAP/ui5-webcomponents/commit/cfd9fa6))
43
+ * Scoping issues corrected ([#4573](https://github.com/SAP/ui5-webcomponents/issues/4573)) ([4e430d3](https://github.com/SAP/ui5-webcomponents/commit/4e430d3))
44
+ * **ui5-input, ui5-multi-combobox:** value state popup now aligned properly in RTL mode ([#4310](https://github.com/SAP/ui5-webcomponents/issues/4310)) ([ce0dcd2](https://github.com/SAP/ui5-webcomponents/commit/ce0dcd2)), closes [#3830](https://github.com/SAP/ui5-webcomponents/issues/3830)
45
+ * **ui5-list:** remove hightlighting on items after tap on mobile ([#4388](https://github.com/SAP/ui5-webcomponents/issues/4388)) ([c328ea9](https://github.com/SAP/ui5-webcomponents/commit/c328ea9)), closes [#4258](https://github.com/SAP/ui5-webcomponents/issues/4258)
46
+ * **ui5-message-strip:** make speech output more comprehensive ([#4416](https://github.com/SAP/ui5-webcomponents/issues/4416)) ([9442e05](https://github.com/SAP/ui5-webcomponents/commit/9442e05))
47
+ * **ui5-multi-combobox:** make readonly component focusable on mobile device ([#4456](https://github.com/SAP/ui5-webcomponents/issues/4456)) ([755599d](https://github.com/SAP/ui5-webcomponents/commit/755599d))
48
+ * **ui5-panel:** rotate button counterclockwise in RTL mode ([#4470](https://github.com/SAP/ui5-webcomponents/issues/4470)) ([d3f6e39](https://github.com/SAP/ui5-webcomponents/commit/d3f6e39))
49
+ * **ui5-popover:** adjust top position when iOS keyboard is opened ([#4333](https://github.com/SAP/ui5-webcomponents/issues/4333)) ([a4b03a3](https://github.com/SAP/ui5-webcomponents/commit/a4b03a3))
50
+ * **ui5-popover:** fix content truncation ([#4359](https://github.com/SAP/ui5-webcomponents/issues/4359)) ([2e8d3bd](https://github.com/SAP/ui5-webcomponents/commit/2e8d3bd)), closes [#4259](https://github.com/SAP/ui5-webcomponents/issues/4259)
51
+ * **ui5-popover:** make sample responsive for small devices ([#4527](https://github.com/SAP/ui5-webcomponents/issues/4527)) ([fddf903](https://github.com/SAP/ui5-webcomponents/commit/fddf903)), closes [#4206](https://github.com/SAP/ui5-webcomponents/issues/4206)
52
+ * **ui5-radio-button:** remove cursor pointer for disabled state ([#4393](https://github.com/SAP/ui5-webcomponents/issues/4393)) ([d147df8](https://github.com/SAP/ui5-webcomponents/commit/d147df8))
53
+ * **ui5-rating-indicator:** not round values are correctly visualised in RTL mode ([#4330](https://github.com/SAP/ui5-webcomponents/issues/4330)) ([d901386](https://github.com/SAP/ui5-webcomponents/commit/d901386))
54
+ * **ui5-slider, ui5-range-slider:** remove focus outline on mobile ([#4458](https://github.com/SAP/ui5-webcomponents/issues/4458)) ([a295dc1](https://github.com/SAP/ui5-webcomponents/commit/a295dc1))
55
+ * **ui5-tabcontainer:** improve keyboard handling ([#4486](https://github.com/SAP/ui5-webcomponents/issues/4486)) ([a934eb3](https://github.com/SAP/ui5-webcomponents/commit/a934eb3)), closes [#2540](https://github.com/SAP/ui5-webcomponents/issues/2540)
56
+ * **ui5-table:** adjust header row's height according to the visual specification ([#4424](https://github.com/SAP/ui5-webcomponents/issues/4424)) ([175fce3](https://github.com/SAP/ui5-webcomponents/commit/175fce3))
57
+ * **ui5-table:** check select all checkbox, when all rows are selected programatically ([#4455](https://github.com/SAP/ui5-webcomponents/issues/4455)) ([7baabfa](https://github.com/SAP/ui5-webcomponents/commit/7baabfa))
58
+ * **ui5-textarea:** apply specified scrollbar stylings ([#4477](https://github.com/SAP/ui5-webcomponents/issues/4477)) ([84018fc](https://github.com/SAP/ui5-webcomponents/commit/84018fc))
59
+ * **ui5-textarea:** Calc properly TextArea's size for showExceeds property ([#4152](https://github.com/SAP/ui5-webcomponents/issues/4152)) ([6f06963](https://github.com/SAP/ui5-webcomponents/commit/6f06963))
60
+ * **ui5-token:** apply correct background color in HC themes ([#4464](https://github.com/SAP/ui5-webcomponents/issues/4464)) ([133e45d](https://github.com/SAP/ui5-webcomponents/commit/133e45d))
61
+ * adding stable selectors for tab container and shellbar ([#4369](https://github.com/SAP/ui5-webcomponents/issues/4369)) ([9abdaba](https://github.com/SAP/ui5-webcomponents/commit/9abdaba))
62
+ * **ui5-token:** border-radius adjusted to spec in in SAP Quartz HCB/HCW ([#4323](https://github.com/SAP/ui5-webcomponents/issues/4323)) ([6691b3d](https://github.com/SAP/ui5-webcomponents/commit/6691b3d))
63
+
64
+
65
+ ### Features
66
+
67
+ * **ui5-split-button:** initial implementation ([#4570](https://github.com/SAP/ui5-webcomponents/issues/4570)) ([295925b](https://github.com/SAP/ui5-webcomponents/commit/295925b))
68
+ * stable-dom-ref supported for abstract items ([#4604](https://github.com/SAP/ui5-webcomponents/issues/4604)) ([5526dea](https://github.com/SAP/ui5-webcomponents/commit/5526dea))
69
+ * **framework:** introduce runtimes and version info ([#4491](https://github.com/SAP/ui5-webcomponents/issues/4491)) ([757577f](https://github.com/SAP/ui5-webcomponents/commit/757577f))
70
+ * **ui5-button:** accessibleNameRef property implemented ([#4474](https://github.com/SAP/ui5-webcomponents/issues/4474)) ([3f7eae3](https://github.com/SAP/ui5-webcomponents/commit/3f7eae3))
71
+ * **ui5-checkbox:** introduce accessibleName and accessibleNameRef ([#4547](https://github.com/SAP/ui5-webcomponents/issues/4547)) ([6f285fd](https://github.com/SAP/ui5-webcomponents/commit/6f285fd)), closes [#4500](https://github.com/SAP/ui5-webcomponents/issues/4500)
72
+ * **ui5-combobox:** add full keyboard handling ([#4494](https://github.com/SAP/ui5-webcomponents/issues/4494)) ([fd4bb50](https://github.com/SAP/ui5-webcomponents/commit/fd4bb50))
73
+ * **ui5-icon:** accessibleRole property implemented ([#4548](https://github.com/SAP/ui5-webcomponents/issues/4548)) ([6d6cf6f](https://github.com/SAP/ui5-webcomponents/commit/6d6cf6f)), closes [#4499](https://github.com/SAP/ui5-webcomponents/issues/4499)
74
+ * **ui5-input:** add full keyboard support ([#4414](https://github.com/SAP/ui5-webcomponents/issues/4414)) ([6133393](https://github.com/SAP/ui5-webcomponents/commit/6133393))
75
+ * **ui5-link:** accessibilityAttributes property implemented ([#4591](https://github.com/SAP/ui5-webcomponents/issues/4591)) ([9a16d61](https://github.com/SAP/ui5-webcomponents/commit/9a16d61)), closes [#3546](https://github.com/SAP/ui5-webcomponents/issues/3546)
76
+ * **ui5-list:** preventable item-click event ([#4448](https://github.com/SAP/ui5-webcomponents/issues/4448)) ([12d3e8a](https://github.com/SAP/ui5-webcomponents/commit/12d3e8a))
77
+ * **ui5-media-gallery:** Initial implementation ([#4427](https://github.com/SAP/ui5-webcomponents/issues/4427)) ([17cb225](https://github.com/SAP/ui5-webcomponents/commit/17cb225))
78
+ * **ui5-switch:** accessibleNameRef property implemented ([#4472](https://github.com/SAP/ui5-webcomponents/issues/4472)) ([8538de9](https://github.com/SAP/ui5-webcomponents/commit/8538de9))
79
+ * implement F6 Navigation Helper ([#4490](https://github.com/SAP/ui5-webcomponents/issues/4490)) ([60d0dc1](https://github.com/SAP/ui5-webcomponents/commit/60d0dc1))
80
+ * **ui5-option:** handle `title` attribute handle ([#4546](https://github.com/SAP/ui5-webcomponents/issues/4546)) ([0c060aa](https://github.com/SAP/ui5-webcomponents/commit/0c060aa))
81
+ * **ui5-popup:** add `accessibleNameRef` property ([#4517](https://github.com/SAP/ui5-webcomponents/issues/4517)) ([0a7c1f3](https://github.com/SAP/ui5-webcomponents/commit/0a7c1f3))
82
+ * **ui5-radio-button:** implement `accessibleNameRef` property ([#4511](https://github.com/SAP/ui5-webcomponents/issues/4511)) ([83fdef5](https://github.com/SAP/ui5-webcomponents/commit/83fdef5))
83
+ * **ui5-rating-indicator:** add full keyboard support ([#4411](https://github.com/SAP/ui5-webcomponents/issues/4411)) ([0e41f41](https://github.com/SAP/ui5-webcomponents/commit/0e41f41))
84
+ * **ui5-segmented-button:** implement `accessibleName` property ([#4378](https://github.com/SAP/ui5-webcomponents/issues/4378)) ([e6a8b38](https://github.com/SAP/ui5-webcomponents/commit/e6a8b38))
85
+ * **ui5-tabcontainer:** implement overflow functionality ([#4403](https://github.com/SAP/ui5-webcomponents/issues/4403)) ([a38bbab](https://github.com/SAP/ui5-webcomponents/commit/a38bbab)), closes [#2540](https://github.com/SAP/ui5-webcomponents/issues/2540)
86
+ * **ui5-tabcontainer:** show `separators` in overflow ([#4507](https://github.com/SAP/ui5-webcomponents/issues/4507)) ([b646157](https://github.com/SAP/ui5-webcomponents/commit/b646157))
87
+ * **ui5-tree-item:** add `indeterminate` state ([#4397](https://github.com/SAP/ui5-webcomponents/issues/4397)) ([80bbc22](https://github.com/SAP/ui5-webcomponents/commit/80bbc22))
88
+
89
+
90
+
91
+
92
+
6
93
  ## [1.0.2](https://github.com/SAP/ui5-webcomponents/compare/v1.0.1...v1.0.2) (2021-11-29)
7
94
 
8
95
  **Note:** Version bump only for package @ui5/webcomponents
@@ -314,17 +314,19 @@ class Breadcrumbs extends UI5Element {
314
314
 
315
315
  for (let i = this._overflowSize; i < items.length; i++) {
316
316
  const item = items[i],
317
- link = this.shadowRoot.querySelector(`.ui5-breadcrumbs-link-wrapper #${item._id}-link`);
317
+ link = this.shadowRoot.querySelector(`#${item._id}-link-wrapper`);
318
318
  map.set(item, this._getElementWidth(link) || 0);
319
319
  }
320
320
 
321
- if (this._endsWithCurrentLocationLabel && label) {
321
+ if (items.length && this._endsWithCurrentLocationLabel && label) {
322
322
  const item = items[items.length - 1];
323
323
  map.set(item, this._getElementWidth(label));
324
324
  }
325
325
 
326
326
  if (!this._isOverflowEmpty) {
327
- this._dropdownArrowLinkWidth = this._getElementWidth(this._dropdownArrowLink);
327
+ this._dropdownArrowLinkWidth = this._getElementWidth(
328
+ this.shadowRoot.querySelector(".ui5-breadcrumbs-dropdown-arrow-link-wrapper"),
329
+ );
328
330
  }
329
331
  }
330
332
 
@@ -395,7 +397,7 @@ class Breadcrumbs extends UI5Element {
395
397
  }
396
398
 
397
399
  _onOverflowListItemSelect(event) {
398
- const listItem = event.detail.item,
400
+ const listItem = event.detail.selectedItems[0],
399
401
  items = this.getSlottedNodes("items"),
400
402
  item = items.find(x => `${x._id}-li` === listItem.id);
401
403
 
@@ -434,7 +436,7 @@ class Breadcrumbs extends UI5Element {
434
436
 
435
437
  _hasVisibleContent(item) {
436
438
  // the check is not complete but may be extended in the future if needed to cover
437
- // cases becides the standard (UX-recommended) ones
439
+ // cases besides the standard (UX-recommended) ones
438
440
  return item.innerText || Array.from(item.children).some(child => !child.hidden);
439
441
  }
440
442
 
@@ -454,7 +456,7 @@ class Breadcrumbs extends UI5Element {
454
456
 
455
457
  get _currentLocationText() {
456
458
  const items = this.getSlottedNodes("items");
457
- if (this._endsWithCurrentLocationLabel && items.length > 1) {
459
+ if (this._endsWithCurrentLocationLabel && items.length) {
458
460
  const item = items[items.length - 1];
459
461
  if (this._isItemVisible(item)) {
460
462
  return item.innerText;
@@ -94,7 +94,7 @@ class BreadcrumbsItem extends UI5Element {
94
94
  }
95
95
 
96
96
  get stableDomRef() {
97
- return `${this._id}-stable-dom-ref`;
97
+ return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
98
98
  }
99
99
  }
100
100
 
@@ -98,7 +98,6 @@ const metadata = {
98
98
  */
99
99
  _isBusy: {
100
100
  type: Boolean,
101
- noAttribute: true,
102
101
  },
103
102
  },
104
103
  };
@@ -231,7 +230,7 @@ class BusyIndicator extends UI5Element {
231
230
  }
232
231
 
233
232
  _handleKeydown(event) {
234
- if (!this.active) {
233
+ if (!this._isBusy) {
235
234
  return;
236
235
  }
237
236
 
@@ -246,7 +245,7 @@ class BusyIndicator extends UI5Element {
246
245
  }
247
246
 
248
247
  _preventEvent(event) {
249
- if (this.active) {
248
+ if (this._isBusy) {
250
249
  event.stopImmediatePropagation();
251
250
  }
252
251
  }
package/dist/Button.js CHANGED
@@ -1,10 +1,16 @@
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 { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
4
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
4
5
  import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
5
6
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
6
7
  import isLegacyBrowser from "@ui5/webcomponents-base/dist/isLegacyBrowser.js";
7
- import { isPhone, isTablet, isCombi } from "@ui5/webcomponents-base/dist/Device.js";
8
+ import {
9
+ isPhone,
10
+ isTablet,
11
+ isCombi,
12
+ isSafari,
13
+ } from "@ui5/webcomponents-base/dist/Device.js";
8
14
  import ButtonDesign from "./types/ButtonDesign.js";
9
15
  import ButtonTemplate from "./generated/templates/ButtonTemplate.lit.js";
10
16
  import Icon from "./Icon.js";
@@ -163,6 +169,19 @@ const metadata = {
163
169
  defaultValue: undefined,
164
170
  },
165
171
 
172
+ /**
173
+ * Receives id(or many ids) of the elements that label the component.
174
+ *
175
+ * @type {String}
176
+ * @defaultvalue ""
177
+ * @public
178
+ * @since 1.1.0
179
+ */
180
+ accessibleNameRef: {
181
+ type: String,
182
+ defaultValue: "",
183
+ },
184
+
166
185
  /**
167
186
  * @type {String}
168
187
  * @defaultvalue ""
@@ -343,6 +362,10 @@ class Button extends UI5Element {
343
362
  if (FormSupport) {
344
363
  FormSupport.triggerFormSubmit(this);
345
364
  }
365
+
366
+ if (isSafari()) {
367
+ this.getDomRef().focus();
368
+ }
346
369
  }
347
370
 
348
371
  _onmousedown(event) {
@@ -453,6 +476,10 @@ class Button extends UI5Element {
453
476
  return this.iconOnly && !this.title;
454
477
  }
455
478
 
479
+ get ariaLabelText() {
480
+ return getEffectiveAriaLabelText(this);
481
+ }
482
+
456
483
  static async onDefine() {
457
484
  Button.i18nBundle = await getI18nBundle("@ui5/webcomponents");
458
485
  }
package/dist/Calendar.js CHANGED
@@ -29,6 +29,7 @@ import calendarCSS from "./generated/themes/Calendar.css.js";
29
29
  */
30
30
  const metadata = {
31
31
  tag: "ui5-calendar",
32
+ fastNavigation: true,
32
33
  properties: /** @lends sap.ui.webcomponents.main.Calendar.prototype */ {
33
34
  /**
34
35
  * Defines the type of selection used in the calendar component.
@@ -194,6 +195,12 @@ const metadata = {
194
195
  * </ul>
195
196
  * <br>
196
197
  *
198
+ * <h4>Fast Navigation</h4>
199
+ * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
200
+ * In order to use this functionality, you need to import the following module:
201
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
202
+ * <br><br>
203
+ *
197
204
  * <h3>Calendar types</h3>
198
205
  * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.
199
206
  * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,
package/dist/Carousel.js CHANGED
@@ -38,6 +38,7 @@ import CarouselCss from "./generated/themes/Carousel.css.js";
38
38
  const metadata = {
39
39
  tag: "ui5-carousel",
40
40
  languageAware: true,
41
+ fastNavigation: true,
41
42
  properties: /** @lends sap.ui.webcomponents.main.Carousel.prototype */ {
42
43
  /**
43
44
  * Defines whether the carousel should loop, i.e show the first page after the last page is reached and vice versa.
@@ -231,10 +232,18 @@ const metadata = {
231
232
  * </ul>
232
233
  *
233
234
  * <h3>Keyboard Handling</h3>
235
+ *
236
+ * <h4>Basic Navigation</h4>
234
237
  * When the <code>ui5-carousel</code> is focused the user can navigate between the items
235
238
  * with the following keyboard shortcuts:
236
239
  * <br>
237
240
  *
241
+ * * <h4>Fast Navigation</h4>
242
+ * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
243
+ * In order to use this functionality, you need to import the following module:
244
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
245
+ * <br><br>
246
+ *
238
247
  * <ul>
239
248
  * <li>[UP/DOWN] - Navigates to previous and next item</li>
240
249
  * <li>[LEFT/RIGHT] - Navigates to previous and next item</li>
package/dist/CheckBox.js CHANGED
@@ -4,6 +4,7 @@ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
4
4
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
5
5
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
6
6
  import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
7
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
7
8
  import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
8
9
  import "@ui5/webcomponents-icons/dist/accept.js";
9
10
  import Icon from "./Icon.js";
@@ -32,6 +33,30 @@ const metadata = {
32
33
  languageAware: true,
33
34
  properties: /** @lends sap.ui.webcomponents.main.CheckBox.prototype */ {
34
35
 
36
+ /**
37
+ * Receives id(or many ids) of the elements that label the component
38
+ * @type {String}
39
+ * @defaultvalue ""
40
+ * @public
41
+ * @since 1.1.0
42
+ */
43
+ accessibleNameRef: {
44
+ type: String,
45
+ defaultValue: "",
46
+ },
47
+
48
+ /**
49
+ * Sets the accessible aria name of the component.
50
+ *
51
+ * @type {String}
52
+ * @public
53
+ * @defaultvalue ""
54
+ * @since 1.1.0
55
+ */
56
+ accessibleName: {
57
+ type: String,
58
+ },
59
+
35
60
  /**
36
61
  * Defines whether the component is disabled.
37
62
  * <br><br>
@@ -362,6 +387,10 @@ class CheckBox extends UI5Element {
362
387
  };
363
388
  }
364
389
 
390
+ get ariaLabelText() {
391
+ return getEffectiveAriaLabelText(this);
392
+ }
393
+
365
394
  get classes() {
366
395
  return {
367
396
  main: {
@@ -383,7 +412,11 @@ class CheckBox extends UI5Element {
383
412
  }
384
413
 
385
414
  get ariaLabelledBy() {
386
- return this.text ? `${this._id}-label` : undefined;
415
+ if (!this.ariaLabelText) {
416
+ return this.text ? `${this._id}-label` : undefined;
417
+ }
418
+
419
+ return undefined;
387
420
  }
388
421
 
389
422
  get ariaDescribedBy() {
@@ -16,6 +16,7 @@ import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
16
16
  import ColorPaletteTemplate from "./generated/templates/ColorPaletteTemplate.lit.js";
17
17
  import ColorPaletteDialogTemplate from "./generated/templates/ColorPaletteDialogTemplate.lit.js";
18
18
  import ColorPaletteItem from "./ColorPaletteItem.js";
19
+ import Button from "./Button.js";
19
20
  import {
20
21
  COLORPALETTE_CONTAINER_LABEL,
21
22
  COLOR_PALETTE_MORE_COLORS_TEXT,
@@ -178,7 +179,7 @@ class ColorPalette extends UI5Element {
178
179
 
179
180
  static get dependencies() {
180
181
  const ColorPaletteMoreColors = getFeature("ColorPaletteMoreColors");
181
- return [ColorPaletteItem].concat(ColorPaletteMoreColors ? ColorPaletteMoreColors.dependencies : []);
182
+ return [ColorPaletteItem, Button].concat(ColorPaletteMoreColors ? ColorPaletteMoreColors.dependencies : []);
182
183
  }
183
184
 
184
185
  static async onDefine() {
@@ -252,20 +253,20 @@ class ColorPalette extends UI5Element {
252
253
  }
253
254
 
254
255
  _onclick(event) {
255
- if (event.target.localName === "ui5-color-palette-item") {
256
+ if (event.target.hasAttribute("ui5-color-palette-item")) {
256
257
  this.selectColor(event.target);
257
258
  }
258
259
  }
259
260
 
260
261
  _onkeyup(event) {
261
- if (isSpace(event) && event.target.localName === "ui5-color-palette-item") {
262
+ if (isSpace(event) && event.target.hasAttribute("ui5-color-palette-item")) {
262
263
  event.preventDefault();
263
264
  this.selectColor(event.target);
264
265
  }
265
266
  }
266
267
 
267
268
  _onkeydown(event) {
268
- if (isEnter(event) && event.target.localName === "ui5-color-palette-item") {
269
+ if (isEnter(event) && event.target.hasAttribute("ui5-color-palette-item")) {
269
270
  this.selectColor(event.target);
270
271
  }
271
272
  }
@@ -13,6 +13,7 @@ import {
13
13
  } from "./generated/i18n/i18n-defaults.js";
14
14
 
15
15
  import Button from "./Button.js";
16
+ import Title from "./Title.js";
16
17
  import ResponsivePopover from "./ResponsivePopover.js";
17
18
  import ColorPalette from "./ColorPalette.js";
18
19
 
@@ -145,6 +146,7 @@ class ColorPalettePopover extends UI5Element {
145
146
  return [
146
147
  ResponsivePopover,
147
148
  Button,
149
+ Title,
148
150
  ColorPalette,
149
151
  ];
150
152
  }
package/dist/ComboBox.js CHANGED
@@ -19,6 +19,10 @@ import {
19
19
  isEscape,
20
20
  isTabNext,
21
21
  isTabPrevious,
22
+ isPageUp,
23
+ isPageDown,
24
+ isHome,
25
+ isEnd,
22
26
  } from "@ui5/webcomponents-base/dist/Keys.js";
23
27
  import * as Filters from "./ComboBoxFilters.js";
24
28
 
@@ -215,7 +219,7 @@ const metadata = {
215
219
  },
216
220
 
217
221
  /**
218
- * 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
219
223
  * @type {String}
220
224
  * @defaultvalue ""
221
225
  * @public
@@ -326,6 +330,7 @@ const metadata = {
326
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.
327
331
  *
328
332
  * It is commonly used to enable users to select an option from a predefined list.
333
+ *
329
334
  * <h3>Structure</h3>
330
335
  * The <code>ui5-combobox</code> consists of the following elements:
331
336
  * <ul>
@@ -333,15 +338,24 @@ const metadata = {
333
338
  * <li> Drop-down arrow - expands\collapses the option list.</li>
334
339
  * <li> Option list - the list of available options.</li>
335
340
  * </ul>
341
+ *
336
342
  * <h3>Keyboard Handling</h3>
337
343
  *
338
344
  * The <code>ui5-combobox</code> provides advanced keyboard handling.
339
- *
340
- * <h4>Picker</h4>
341
- * If the <code>ui5-combobox</code> is focused,
342
- * you can open or close the drop-down by pressing <code>F4</code>, <code>ALT+UP</code> or <code>ALT+DOWN</code> keys.
343
345
  * <br>
344
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
+ *
345
359
  *
346
360
  * <h3>ES6 Module Import</h3>
347
361
  *
@@ -517,6 +531,8 @@ class ComboBox extends UI5Element {
517
531
  }
518
532
 
519
533
  _resetFilter() {
534
+ this._userTypedValue = null;
535
+ this.inner.setSelectionRange(0, this.value.length);
520
536
  this._filteredItems = this._filterItems("");
521
537
  this._selectMatchingItem();
522
538
  }
@@ -588,14 +604,12 @@ class ComboBox extends UI5Element {
588
604
  });
589
605
  }
590
606
 
591
- async handleArrowKeyPress(event) {
592
- if (this.readonly || !this._filteredItems.length) {
607
+ handleNavKeyPress(event) {
608
+ if (this.focused && (isHome(event) || isEnd(event)) && this.value) {
593
609
  return;
594
610
  }
595
611
 
596
612
  const isOpen = this.open;
597
- const isArrowDown = isDown(event);
598
- const isArrowUp = isUp(event);
599
613
  const currentItem = this._filteredItems.find(item => {
600
614
  return isOpen ? item.focused : item.selected;
601
615
  });
@@ -603,19 +617,17 @@ class ComboBox extends UI5Element {
603
617
 
604
618
  event.preventDefault();
605
619
 
606
- if ((this.focused === true && isArrowUp && isOpen) || (this._filteredItems.length - 1 === indexOfItem && isArrowDown)) {
620
+ if (this.focused && isOpen && (isUp(event) || isPageUp(event) || isPageDown(event))) {
607
621
  return;
608
622
  }
609
623
 
610
- this._isKeyNavigation = true;
611
-
612
- if (isArrowDown) {
613
- this._handleArrowDown(event, indexOfItem);
624
+ if (this._filteredItems.length - 1 === indexOfItem && isDown(event)) {
625
+ return;
614
626
  }
615
627
 
616
- if (isArrowUp) {
617
- this._handleArrowUp(event, indexOfItem);
618
- }
628
+ this._isKeyNavigation = true;
629
+
630
+ this[`_handle${event.key}`](event, indexOfItem);
619
631
  }
620
632
 
621
633
  _handleItemNavigation(event, indexOfItem, isForward) {
@@ -632,7 +644,7 @@ class ComboBox extends UI5Element {
632
644
 
633
645
  if (isOpen) {
634
646
  this._itemFocused = true;
635
- this.value = isGroupItem ? this.filterValue : currentItem.text;
647
+ this.value = isGroupItem ? "" : currentItem.text;
636
648
  this.focused = false;
637
649
  currentItem.focused = true;
638
650
  } else {
@@ -652,7 +664,7 @@ class ComboBox extends UI5Element {
652
664
 
653
665
  // autocomplete
654
666
  const item = this._getFirstMatchingItem(this.value);
655
- this._applyAtomicValueAndSelection(item, "", true);
667
+ this._applyAtomicValueAndSelection(item, (this.open ? this._userTypedValue : null), true);
656
668
 
657
669
  if ((item && !item.selected)) {
658
670
  this.fireEvent("selection-change", {
@@ -706,13 +718,59 @@ class ComboBox extends UI5Element {
706
718
  this._handleItemNavigation(event, --indexOfItem, false /* isForward */);
707
719
  }
708
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);
765
+ }
766
+
709
767
  _keydown(event) {
710
- const isArrowKey = isDown(event) || isUp(event);
768
+ const isNavKey = isDown(event) || isUp(event) || isPageUp(event) || isPageDown(event) || isHome(event) || isEnd(event);
711
769
  this._autocomplete = !(isBackSpace(event) || isDelete(event));
712
770
  this._isKeyNavigation = false;
713
771
 
714
- if (isArrowKey) {
715
- this.handleArrowKeyPress(event);
772
+ if (isNavKey && !this.readonly && this._filteredItems.length) {
773
+ this.handleNavKeyPress(event);
716
774
  }
717
775
 
718
776
  if (isEnter(event)) {
@@ -745,6 +803,9 @@ class ComboBox extends UI5Element {
745
803
  this._itemFocused = true;
746
804
  selectedItem.focused = true;
747
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 */);
748
809
  } else {
749
810
  this.focused = true;
750
811
  }
@@ -822,6 +883,7 @@ class ComboBox extends UI5Element {
822
883
  const value = (item && item.text) || "";
823
884
  this.inner.value = value;
824
885
  if (highlightValue) {
886
+ filterValue = filterValue || "";
825
887
  this.inner.setSelectionRange(filterValue.length, value.length);
826
888
  }
827
889
  this.value = value;
@@ -950,7 +1012,7 @@ class ComboBox extends UI5Element {
950
1012
  }
951
1013
 
952
1014
  get shouldOpenValueStateMessagePopover() {
953
- return this.focused && this.hasValueStateText && !this._iconPressed
1015
+ return this.focused && !this.readonly && this.hasValueStateText && !this._iconPressed
954
1016
  && !this.open && !this._isPhone;
955
1017
  }
956
1018
 
@@ -958,6 +1020,10 @@ class ComboBox extends UI5Element {
958
1020
  return !this.valueStateMessage.length && this.hasValueStateText;
959
1021
  }
960
1022
 
1023
+ get _valueStatePopoverHorizontalAlign() {
1024
+ return this.effectiveDir !== "rtl" ? "Left" : "Right";
1025
+ }
1026
+
961
1027
  /**
962
1028
  * This method is relevant for sap_horizon theme only
963
1029
  */
@@ -1036,6 +1102,8 @@ class ComboBox extends UI5Element {
1036
1102
  }
1037
1103
  }
1038
1104
 
1105
+ ComboBox.SKIP_ITEMS_SIZE = 10;
1106
+
1039
1107
  ComboBox.define();
1040
1108
 
1041
1109
  export default ComboBox;