@ui5/webcomponents 1.0.1 → 1.1.2

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 (474) hide show
  1. package/CHANGELOG.md +118 -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 +27 -2
  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 +11 -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/MultiInput.js +55 -8
  24. package/dist/Option.js +12 -1
  25. package/dist/Panel.js +9 -0
  26. package/dist/Popover.js +106 -57
  27. package/dist/Popup.js +16 -2
  28. package/dist/RadioButton.js +15 -3
  29. package/dist/RatingIndicator.js +37 -7
  30. package/dist/ResponsivePopover.js +1 -0
  31. package/dist/SegmentedButton.js +14 -1
  32. package/dist/Select.js +2 -1
  33. package/dist/SliderBase.js +4 -0
  34. package/dist/SplitButton.js +425 -0
  35. package/dist/Switch.js +18 -0
  36. package/dist/Tab.js +10 -6
  37. package/dist/TabContainer.js +480 -108
  38. package/dist/TabSeparator.js +42 -3
  39. package/dist/Table.js +15 -5
  40. package/dist/TextArea.js +9 -3
  41. package/dist/ToggleButton.js +5 -0
  42. package/dist/Tokenizer.js +134 -7
  43. package/dist/TreeItem.js +21 -0
  44. package/dist/TreeListItem.js +8 -0
  45. package/dist/api.json +299 -26
  46. package/dist/css/themes/Badge.css +1 -1
  47. package/dist/css/themes/Breadcrumbs.css +1 -1
  48. package/dist/css/themes/BrowserScrollbar.css +1 -1
  49. package/dist/css/themes/BusyIndicator.css +1 -1
  50. package/dist/css/themes/CardHeader.css +1 -1
  51. package/dist/css/themes/CheckBox.css +1 -1
  52. package/dist/css/themes/ComboBox.css +1 -1
  53. package/dist/css/themes/CustomListItem.css +1 -1
  54. package/dist/css/themes/Dialog.css +1 -1
  55. package/dist/css/themes/Input.css +1 -1
  56. package/dist/css/themes/List.css +1 -1
  57. package/dist/css/themes/MultiComboBox.css +1 -1
  58. package/dist/css/themes/Panel.css +1 -1
  59. package/dist/css/themes/Popover.css +1 -1
  60. package/dist/css/themes/PopupsCommon.css +1 -1
  61. package/dist/css/themes/RadioButton.css +1 -1
  62. package/dist/css/themes/RatingIndicator.css +1 -1
  63. package/dist/css/themes/Select.css +1 -1
  64. package/dist/css/themes/SliderBase.css +1 -1
  65. package/dist/css/themes/SplitButton.css +1 -0
  66. package/dist/css/themes/TabContainer.css +1 -1
  67. package/dist/css/themes/TabInOverflow.css +1 -1
  68. package/dist/css/themes/TabInStrip.css +1 -1
  69. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  70. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  71. package/dist/css/themes/Table.css +1 -1
  72. package/dist/css/themes/TableColumn.css +1 -1
  73. package/dist/css/themes/TextArea.css +1 -1
  74. package/dist/css/themes/TimeSelection.css +1 -1
  75. package/dist/css/themes/Token.css +1 -1
  76. package/dist/css/themes/ValueStateMessage.css +1 -1
  77. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  78. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  79. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  80. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  81. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  82. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  83. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  84. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  85. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  86. package/dist/features/InputSuggestions.js +88 -15
  87. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  88. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  89. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  90. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  91. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  92. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  93. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  94. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  95. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  96. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  97. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  98. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  99. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  100. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  105. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  110. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  111. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  112. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  113. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  115. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  119. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  123. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  134. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  135. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  136. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  137. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  138. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  139. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  140. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  141. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  142. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  143. package/dist/generated/i18n/i18n-defaults.js +2 -2
  144. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  145. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  146. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
  147. package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
  148. package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
  149. package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
  150. package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
  151. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  152. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
  153. package/dist/generated/templates/ComboBoxTemplate.lit.js +1 -1
  154. package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
  155. package/dist/generated/templates/DialogTemplate.lit.js +1 -1
  156. package/dist/generated/templates/InputPopoverTemplate.lit.js +3 -3
  157. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  158. package/dist/generated/templates/LinkTemplate.lit.js +1 -1
  159. package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
  160. package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
  161. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
  162. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  163. package/dist/generated/templates/PanelTemplate.lit.js +1 -1
  164. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
  165. package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
  166. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  167. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
  168. package/dist/generated/templates/SelectPopoverTemplate.lit.js +2 -2
  169. package/dist/generated/templates/SliderBaseTemplate.lit.js +1 -1
  170. package/dist/generated/templates/SliderTemplate.lit.js +1 -1
  171. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  172. package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
  173. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
  174. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  175. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +4 -2
  176. package/dist/generated/templates/TabContainerTemplate.lit.js +9 -10
  177. package/dist/generated/templates/TabInOverflowTemplate.lit.js +1 -1
  178. package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
  179. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  180. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  181. package/dist/generated/templates/TableTemplate.lit.js +1 -1
  182. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  183. package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
  184. package/dist/generated/templates/TreeListItemTemplate.lit.js +2 -2
  185. package/dist/generated/templates/TreeTemplate.lit.js +1 -1
  186. package/dist/generated/themes/Badge.css.js +1 -1
  187. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  188. package/dist/generated/themes/BrowserScrollbar.css.js +1 -1
  189. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  190. package/dist/generated/themes/CardHeader.css.js +1 -1
  191. package/dist/generated/themes/CheckBox.css.js +1 -1
  192. package/dist/generated/themes/ComboBox.css.js +1 -1
  193. package/dist/generated/themes/CustomListItem.css.js +1 -1
  194. package/dist/generated/themes/Dialog.css.js +1 -1
  195. package/dist/generated/themes/Input.css.js +1 -1
  196. package/dist/generated/themes/List.css.js +1 -1
  197. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  198. package/dist/generated/themes/Panel.css.js +1 -1
  199. package/dist/generated/themes/Popover.css.js +1 -1
  200. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  201. package/dist/generated/themes/RadioButton.css.js +1 -1
  202. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  203. package/dist/generated/themes/Select.css.js +1 -1
  204. package/dist/generated/themes/SliderBase.css.js +1 -1
  205. package/dist/generated/themes/SplitButton.css.js +8 -0
  206. package/dist/generated/themes/TabContainer.css.js +1 -1
  207. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  208. package/dist/generated/themes/TabInStrip.css.js +1 -1
  209. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  210. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  211. package/dist/generated/themes/Table.css.js +1 -1
  212. package/dist/generated/themes/TableColumn.css.js +1 -1
  213. package/dist/generated/themes/TextArea.css.js +1 -1
  214. package/dist/generated/themes/TimeSelection.css.js +1 -1
  215. package/dist/generated/themes/Token.css.js +1 -1
  216. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  217. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  218. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  219. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  220. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  221. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  222. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  223. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  224. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  225. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  226. package/dist/i18n/messagebundle.properties +26 -1
  227. package/dist/i18n/messagebundle_ar.properties +13 -1
  228. package/dist/i18n/messagebundle_bg.properties +13 -1
  229. package/dist/i18n/messagebundle_ca.properties +13 -1
  230. package/dist/i18n/messagebundle_cs.properties +13 -1
  231. package/dist/i18n/messagebundle_cy.properties +13 -1
  232. package/dist/i18n/messagebundle_da.properties +13 -1
  233. package/dist/i18n/messagebundle_de.properties +13 -1
  234. package/dist/i18n/messagebundle_el.properties +13 -1
  235. package/dist/i18n/messagebundle_en.properties +13 -1
  236. package/dist/i18n/messagebundle_en_GB.properties +13 -1
  237. package/dist/i18n/messagebundle_en_US_sappsd.properties +18 -1
  238. package/dist/i18n/messagebundle_en_US_saprigi.properties +18 -1
  239. package/dist/i18n/messagebundle_en_US_saptrc.properties +18 -1
  240. package/dist/i18n/messagebundle_es.properties +13 -1
  241. package/dist/i18n/messagebundle_es_MX.properties +13 -1
  242. package/dist/i18n/messagebundle_et.properties +13 -1
  243. package/dist/i18n/messagebundle_fi.properties +14 -2
  244. package/dist/i18n/messagebundle_fr.properties +13 -1
  245. package/dist/i18n/messagebundle_fr_CA.properties +13 -1
  246. package/dist/i18n/messagebundle_hi.properties +13 -1
  247. package/dist/i18n/messagebundle_hr.properties +13 -1
  248. package/dist/i18n/messagebundle_hu.properties +13 -1
  249. package/dist/i18n/messagebundle_id.properties +13 -1
  250. package/dist/i18n/messagebundle_it.properties +13 -1
  251. package/dist/i18n/messagebundle_iw.properties +13 -1
  252. package/dist/i18n/messagebundle_ja.properties +13 -1
  253. package/dist/i18n/messagebundle_kk.properties +13 -1
  254. package/dist/i18n/messagebundle_ko.properties +13 -1
  255. package/dist/i18n/messagebundle_lt.properties +13 -1
  256. package/dist/i18n/messagebundle_lv.properties +13 -1
  257. package/dist/i18n/messagebundle_ms.properties +13 -1
  258. package/dist/i18n/messagebundle_nl.properties +13 -1
  259. package/dist/i18n/messagebundle_no.properties +13 -1
  260. package/dist/i18n/messagebundle_pl.properties +13 -1
  261. package/dist/i18n/messagebundle_pt.properties +13 -1
  262. package/dist/i18n/messagebundle_pt_PT.properties +13 -1
  263. package/dist/i18n/messagebundle_ro.properties +13 -1
  264. package/dist/i18n/messagebundle_ru.properties +13 -1
  265. package/dist/i18n/messagebundle_sh.properties +13 -1
  266. package/dist/i18n/messagebundle_sk.properties +13 -1
  267. package/dist/i18n/messagebundle_sl.properties +13 -1
  268. package/dist/i18n/messagebundle_sv.properties +13 -1
  269. package/dist/i18n/messagebundle_th.properties +12 -0
  270. package/dist/i18n/messagebundle_tr.properties +13 -1
  271. package/dist/i18n/messagebundle_uk.properties +13 -1
  272. package/dist/i18n/messagebundle_vi.properties +13 -1
  273. package/dist/i18n/messagebundle_zh_CN.properties +13 -1
  274. package/dist/i18n/messagebundle_zh_TW.properties +12 -0
  275. package/dist/types/HasPopup.js +62 -0
  276. package/dist/types/TabsOverflowMode.js +40 -0
  277. package/package.json +9 -9
  278. package/src/Breadcrumbs.hbs +3 -2
  279. package/src/Breadcrumbs.js +8 -6
  280. package/src/BreadcrumbsItem.js +1 -1
  281. package/src/BreadcrumbsPopover.hbs +2 -2
  282. package/src/BusyIndicator.hbs +1 -1
  283. package/src/BusyIndicator.js +2 -3
  284. package/src/Button.hbs +1 -1
  285. package/src/Button.js +28 -1
  286. package/src/Calendar.js +7 -0
  287. package/src/CardHeader.hbs +12 -5
  288. package/src/Carousel.hbs +1 -0
  289. package/src/Carousel.js +9 -0
  290. package/src/CheckBox.hbs +1 -0
  291. package/src/CheckBox.js +34 -1
  292. package/src/ColorPalette.js +5 -4
  293. package/src/ColorPalettePopover.hbs +7 -5
  294. package/src/ColorPalettePopover.js +27 -2
  295. package/src/ComboBox.hbs +1 -0
  296. package/src/ComboBox.js +91 -23
  297. package/src/ComboBoxPopover.hbs +1 -0
  298. package/src/DateComponentBase.js +6 -8
  299. package/src/DatePicker.js +10 -2
  300. package/src/DateRangePicker.js +22 -0
  301. package/src/Dialog.hbs +1 -1
  302. package/src/Dialog.js +5 -22
  303. package/src/Icon.js +11 -8
  304. package/src/Input.hbs +1 -1
  305. package/src/Input.js +107 -15
  306. package/src/InputPopover.hbs +2 -3
  307. package/src/Link.hbs +2 -1
  308. package/src/Link.js +32 -14
  309. package/src/List.js +14 -4
  310. package/src/ListItem.hbs +1 -0
  311. package/src/MessageStrip.hbs +1 -1
  312. package/src/MessageStrip.js +39 -2
  313. package/src/MultiComboBox.js +7 -3
  314. package/src/MultiComboBoxItem.js +1 -1
  315. package/src/MultiComboBoxPopover.hbs +1 -1
  316. package/src/MultiInput.js +55 -8
  317. package/src/Option.js +12 -1
  318. package/src/Panel.hbs +1 -1
  319. package/src/Panel.js +9 -0
  320. package/src/Popover.js +106 -57
  321. package/src/Popup.js +16 -2
  322. package/src/PopupBlockLayer.hbs +1 -1
  323. package/src/RadioButton.js +15 -3
  324. package/src/RatingIndicator.js +37 -7
  325. package/src/ResponsivePopover.hbs +2 -0
  326. package/src/ResponsivePopover.js +1 -0
  327. package/src/SegmentedButton.hbs +1 -0
  328. package/src/SegmentedButton.js +14 -1
  329. package/src/Select.js +2 -1
  330. package/src/SelectPopover.hbs +2 -1
  331. package/src/SliderBase.hbs +1 -1
  332. package/src/SliderBase.js +4 -0
  333. package/src/SplitButton.hbs +53 -0
  334. package/src/SplitButton.js +425 -0
  335. package/src/Switch.hbs +1 -0
  336. package/src/Switch.js +18 -0
  337. package/src/Tab.js +10 -6
  338. package/src/TabContainer.hbs +48 -58
  339. package/src/TabContainer.js +480 -108
  340. package/src/TabContainerPopover.hbs +9 -6
  341. package/src/TabInOverflow.hbs +0 -1
  342. package/src/TabInStrip.hbs +3 -8
  343. package/src/TabSeparator.js +42 -3
  344. package/src/TabSeparatorInOverflow.hbs +8 -0
  345. package/src/TabSeparatorInStrip.hbs +6 -0
  346. package/src/Table.hbs +1 -1
  347. package/src/Table.js +15 -5
  348. package/src/TextArea.js +9 -3
  349. package/src/TextAreaPopover.hbs +1 -1
  350. package/src/ToggleButton.js +5 -0
  351. package/src/Tokenizer.js +134 -7
  352. package/src/Tree.hbs +1 -0
  353. package/src/TreeItem.js +21 -0
  354. package/src/TreeListItem.js +8 -0
  355. package/src/features/InputSuggestions.js +88 -15
  356. package/src/i18n/messagebundle.properties +26 -1
  357. package/src/i18n/messagebundle_ar.properties +13 -1
  358. package/src/i18n/messagebundle_bg.properties +13 -1
  359. package/src/i18n/messagebundle_ca.properties +13 -1
  360. package/src/i18n/messagebundle_cs.properties +13 -1
  361. package/src/i18n/messagebundle_cy.properties +13 -1
  362. package/src/i18n/messagebundle_da.properties +13 -1
  363. package/src/i18n/messagebundle_de.properties +13 -1
  364. package/src/i18n/messagebundle_el.properties +13 -1
  365. package/src/i18n/messagebundle_en.properties +13 -1
  366. package/src/i18n/messagebundle_en_GB.properties +13 -1
  367. package/src/i18n/messagebundle_en_US_sappsd.properties +18 -1
  368. package/src/i18n/messagebundle_en_US_saprigi.properties +18 -1
  369. package/src/i18n/messagebundle_en_US_saptrc.properties +18 -1
  370. package/src/i18n/messagebundle_es.properties +13 -1
  371. package/src/i18n/messagebundle_es_MX.properties +13 -1
  372. package/src/i18n/messagebundle_et.properties +13 -1
  373. package/src/i18n/messagebundle_fi.properties +14 -2
  374. package/src/i18n/messagebundle_fr.properties +13 -1
  375. package/src/i18n/messagebundle_fr_CA.properties +13 -1
  376. package/src/i18n/messagebundle_hi.properties +13 -1
  377. package/src/i18n/messagebundle_hr.properties +13 -1
  378. package/src/i18n/messagebundle_hu.properties +13 -1
  379. package/src/i18n/messagebundle_id.properties +13 -1
  380. package/src/i18n/messagebundle_it.properties +13 -1
  381. package/src/i18n/messagebundle_iw.properties +13 -1
  382. package/src/i18n/messagebundle_ja.properties +13 -1
  383. package/src/i18n/messagebundle_kk.properties +13 -1
  384. package/src/i18n/messagebundle_ko.properties +13 -1
  385. package/src/i18n/messagebundle_lt.properties +13 -1
  386. package/src/i18n/messagebundle_lv.properties +13 -1
  387. package/src/i18n/messagebundle_ms.properties +13 -1
  388. package/src/i18n/messagebundle_nl.properties +13 -1
  389. package/src/i18n/messagebundle_no.properties +13 -1
  390. package/src/i18n/messagebundle_pl.properties +13 -1
  391. package/src/i18n/messagebundle_pt.properties +13 -1
  392. package/src/i18n/messagebundle_pt_PT.properties +13 -1
  393. package/src/i18n/messagebundle_ro.properties +13 -1
  394. package/src/i18n/messagebundle_ru.properties +13 -1
  395. package/src/i18n/messagebundle_sh.properties +13 -1
  396. package/src/i18n/messagebundle_sk.properties +13 -1
  397. package/src/i18n/messagebundle_sl.properties +13 -1
  398. package/src/i18n/messagebundle_sv.properties +13 -1
  399. package/src/i18n/messagebundle_th.properties +12 -0
  400. package/src/i18n/messagebundle_tr.properties +13 -1
  401. package/src/i18n/messagebundle_uk.properties +13 -1
  402. package/src/i18n/messagebundle_vi.properties +13 -1
  403. package/src/i18n/messagebundle_zh_CN.properties +13 -1
  404. package/src/i18n/messagebundle_zh_TW.properties +12 -0
  405. package/src/themes/Badge.css +3 -1
  406. package/src/themes/Breadcrumbs.css +100 -99
  407. package/src/themes/BrowserScrollbar.css +2 -0
  408. package/src/themes/BusyIndicator.css +3 -3
  409. package/src/themes/CardHeader.css +7 -3
  410. package/src/themes/CheckBox.css +15 -7
  411. package/src/themes/CustomListItem.css +2 -1
  412. package/src/themes/Dialog.css +1 -0
  413. package/src/themes/Input.css +14 -0
  414. package/src/themes/List.css +1 -0
  415. package/src/themes/Panel.css +4 -0
  416. package/src/themes/Popover.css +4 -0
  417. package/src/themes/PopupsCommon.css +0 -1
  418. package/src/themes/RadioButton.css +4 -3
  419. package/src/themes/RatingIndicator.css +0 -1
  420. package/src/themes/SliderBase.css +3 -2
  421. package/src/themes/SplitButton.css +98 -0
  422. package/src/themes/TabContainer.css +17 -53
  423. package/src/themes/TabInOverflow.css +25 -21
  424. package/src/themes/TabInStrip.css +124 -100
  425. package/src/themes/TabSeparatorInOverflow.css +8 -0
  426. package/src/themes/TabSeparatorInStrip.css +5 -0
  427. package/src/themes/Table.css +1 -1
  428. package/src/themes/TableColumn.css +0 -1
  429. package/src/themes/TextArea.css +9 -1
  430. package/src/themes/TimeSelection.css +4 -0
  431. package/src/themes/Token.css +2 -1
  432. package/src/themes/Tokenizer.css +1 -1
  433. package/src/themes/ValueStateMessage.css +3 -3
  434. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  435. package/src/themes/base/Card-parameters.css +1 -1
  436. package/src/themes/base/Input-parameters.css +5 -0
  437. package/src/themes/base/TabContainer-parameters.css +1 -1
  438. package/src/themes/base/TextArea-parameters.css +1 -0
  439. package/src/themes/base/Title-parameters.css +6 -6
  440. package/src/themes/base/Token-parameters.css +1 -0
  441. package/src/themes/base/sizes-parameters.css +2 -2
  442. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  443. package/src/themes/sap_belize/Table-parameters.css +3 -0
  444. package/src/themes/sap_belize/parameters-bundle.css +1 -0
  445. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  446. package/src/themes/sap_belize_hcb/Input-parameters.css +1 -0
  447. package/src/themes/sap_belize_hcb/Table-parameters.css +1 -0
  448. package/src/themes/sap_belize_hcb/Token-parameters.css +1 -0
  449. package/src/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  450. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  451. package/src/themes/sap_belize_hcw/Input-parameters.css +1 -0
  452. package/src/themes/sap_belize_hcw/Table-parameters.css +1 -0
  453. package/src/themes/sap_belize_hcw/Token-parameters.css +1 -0
  454. package/src/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  455. package/src/themes/sap_fiori_3/TabContainer-parameters.css +1 -1
  456. package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
  457. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  458. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +7 -0
  459. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +2 -0
  460. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +2 -1
  461. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  462. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +7 -0
  463. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +2 -0
  464. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +2 -1
  465. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  466. package/src/themes/sap_horizon/Card-parameters.css +0 -1
  467. package/src/themes/sap_horizon/Table-parameters.css +1 -0
  468. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  469. package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  470. package/src/types/HasPopup.js +62 -0
  471. package/src/types/TabsOverflowMode.js +40 -0
  472. package/csp.js +0 -7
  473. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  474. package/src/TabSeparator.hbs +0 -1
package/dist/Link.js CHANGED
@@ -116,26 +116,44 @@ const metadata = {
116
116
  },
117
117
 
118
118
  /**
119
- * Defines the aria-haspopup value of the component.
120
- *
121
- * @type String
122
- * @defaultvalue undefined
119
+ * Defines the ARIA role of the component.
120
+ * @defaultvalue ""
123
121
  * @private
124
122
  * @since 1.0.0-rc.15
125
123
  */
126
- ariaHaspopup: {
124
+ accessibleRole: {
127
125
  type: String,
128
- defaultValue: undefined,
129
126
  },
130
127
 
131
128
  /**
132
- * Defines the accessibility role of the component.
133
- * @defaultvalue ""
134
- * @private
135
- * @since 1.0.0-rc.15
129
+ * An object of strings that defines several additional accessibility attribute values
130
+ * for customization depending on the use case.
131
+ *
132
+ * It supports the following fields:
133
+ *
134
+ * <ul>
135
+ * <li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:
136
+ * <ul>
137
+ * <li><code>true</code></li>
138
+ * <li><code>false</code></li>
139
+ * <ul>
140
+ * </li>
141
+ * <li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:
142
+ * <ul>
143
+ * <li><code>Dialog</code></li>
144
+ * <li><code>Grid</code></li>
145
+ * <li><code>ListBox</code></li>
146
+ * <li><code>Menu</code></li>
147
+ * <li><code>Tree</code></li>
148
+ * </ul>
149
+ * </li>
150
+ * </ul>
151
+ * @type {object}
152
+ * @public
153
+ * @since 1.1.0
136
154
  */
137
- accessibleRole: {
138
- type: String,
155
+ accessibilityAttributes: {
156
+ type: Object,
139
157
  },
140
158
 
141
159
  _rel: {
@@ -246,11 +264,11 @@ class Link extends UI5Element {
246
264
  }
247
265
 
248
266
  onBeforeRendering() {
249
- const needsNoReferrer = this.target === "_blank"
267
+ const needsNoReferrer = this.target !== "_self"
250
268
  && this.href
251
269
  && this._isCrossOrigin();
252
270
 
253
- this._rel = needsNoReferrer ? "noreferrer" : undefined;
271
+ this._rel = needsNoReferrer ? "noreferrer noopener" : undefined;
254
272
  }
255
273
 
256
274
  _isCrossOrigin() {
package/dist/List.js CHANGED
@@ -40,6 +40,7 @@ const PAGE_UP_DOWN_SIZE = 10;
40
40
  const metadata = {
41
41
  tag: "ui5-list",
42
42
  managedSlots: true,
43
+ fastNavigation: true,
43
44
  slots: /** @lends sap.ui.webcomponents.main.List.prototype */ {
44
45
 
45
46
  /**
@@ -168,7 +169,7 @@ const metadata = {
168
169
  * <code>None</code> (default) - The growing is off.
169
170
  * <br><br>
170
171
  *
171
- * <b>Limitations:</b> <code>growing="Scroll"</code> is not supported for Internet Explorer,
172
+ * <b>Restrictions:</b> <code>growing="Scroll"</code> is not supported for Internet Explorer,
172
173
  * on IE the component will fallback to <code>growing="Button"</code>.
173
174
  * @type {ListGrowingMode}
174
175
  * @defaultvalue "None"
@@ -265,6 +266,7 @@ const metadata = {
265
266
  * is set to <code>Inactive</code>.
266
267
  *
267
268
  * @event sap.ui.webcomponents.main.List#item-click
269
+ * @allowPreventDefault
268
270
  * @param {HTMLElement} item The clicked item.
269
271
  * @public
270
272
  */
@@ -376,6 +378,8 @@ const metadata = {
376
378
  *
377
379
  * <br><br>
378
380
  * <h3>Keyboard Handling</h3>
381
+ *
382
+ * <h4>Basic Navigation</h4
379
383
  * The <code>ui5-list</code> provides advanced keyboard handling.
380
384
  * When a list is focused the user can use the following keyboard
381
385
  * shortcuts in order to perform a navigation:
@@ -393,6 +397,11 @@ const metadata = {
393
397
  * <li>[SPACE] - Select an item (if <code>type</code> is 'Active') when <code>mode</code> is selection</li>
394
398
  * <li>[DELETE] - Delete an item if <code>mode</code> property is <code>Delete</code></li>
395
399
  * </ul>
400
+ *
401
+ * <h4>Fast Navigation</h4>
402
+ * 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>.
403
+ * In order to use this functionality, you need to import the following module:
404
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
396
405
  * <br><br>
397
406
  *
398
407
  * <h3>ES6 Module Import</h3>
@@ -882,6 +891,10 @@ class List extends UI5Element {
882
891
  onItemPress(event) {
883
892
  const pressedItem = event.detail.item;
884
893
 
894
+ if (!this.fireEvent("item-click", { item: pressedItem }, true)) {
895
+ return;
896
+ }
897
+
885
898
  if (!this._selectionRequested && this.mode !== ListMode.Delete) {
886
899
  this._selectionRequested = true;
887
900
  this.onSelectionRequested({
@@ -894,9 +907,6 @@ class List extends UI5Element {
894
907
  });
895
908
  }
896
909
 
897
- this.fireEvent("item-press", { item: pressedItem });
898
- this.fireEvent("item-click", { item: pressedItem });
899
-
900
910
  this._selectionRequested = false;
901
911
  }
902
912
 
@@ -10,7 +10,14 @@ import MessageStripDesign from "./types/MessageStripDesign.js";
10
10
  import MessageStripTemplate from "./generated/templates/MessageStripTemplate.lit.js";
11
11
  import Icon from "./Icon.js";
12
12
  import Button from "./Button.js";
13
- import { MESSAGE_STRIP_CLOSE_BUTTON } from "./generated/i18n/i18n-defaults.js";
13
+ import {
14
+ MESSAGE_STRIP_CLOSE_BUTTON,
15
+ MESSAGE_STRIP_CLOSABLE,
16
+ MESSAGE_STRIP_ERROR,
17
+ MESSAGE_STRIP_WARNING,
18
+ MESSAGE_STRIP_SUCCESS,
19
+ MESSAGE_STRIP_INFORMATION,
20
+ } from "./generated/i18n/i18n-defaults.js";
14
21
 
15
22
  // Styles
16
23
  import messageStripCss from "./generated/themes/MessageStrip.css.js";
@@ -22,6 +29,7 @@ const metadata = {
22
29
  tag: "ui5-message-strip",
23
30
  altTag: "ui5-messagestrip",
24
31
  languageAware: true,
32
+ fastNavigation: true,
25
33
  properties: /** @lends sap.ui.webcomponents.main.MessageStrip.prototype */ {
26
34
 
27
35
  /**
@@ -124,6 +132,14 @@ const metadata = {
124
132
  * an icon in the beginning and a close button. Moreover, its size and background
125
133
  * can be controlled with CSS.
126
134
  *
135
+ * <h3>Keyboard Handling</h3>
136
+ *
137
+ * <h4>Fast Navigation</h4>
138
+ * 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>.
139
+ * In order to use this functionality, you need to import the following module:
140
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
141
+ * <br><br>
142
+ *
127
143
  * <h3>ES6 Module Import</h3>
128
144
  *
129
145
  * <code>import "@ui5/webcomponents/dist/MessageStrip";</code>
@@ -190,14 +206,27 @@ class MessageStrip extends UI5Element {
190
206
  };
191
207
  }
192
208
 
209
+ static designAnnouncementMappings() {
210
+ return {
211
+ "Information": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_INFORMATION),
212
+ "Positive": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_SUCCESS),
213
+ "Negative": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_ERROR),
214
+ "Warning": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_WARNING),
215
+ };
216
+ }
217
+
193
218
  get hiddenText() {
194
- return `Message Strip ${this.design} ${this.hideCloseButton ? "" : "closable"}`;
219
+ return `${MessageStrip.designAnnouncementMappings()[this.design]} ${this.hideCloseButton ? "" : this._closableText}`;
195
220
  }
196
221
 
197
222
  get _closeButtonText() {
198
223
  return MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSE_BUTTON);
199
224
  }
200
225
 
226
+ get _closableText() {
227
+ return MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSABLE);
228
+ }
229
+
201
230
  get classes() {
202
231
  return {
203
232
  root: {
@@ -220,6 +249,14 @@ class MessageStrip extends UI5Element {
220
249
  get designClasses() {
221
250
  return MessageStrip.designClassesMappings()[this.design];
222
251
  }
252
+
253
+ get accInfo() {
254
+ return {
255
+ "button": {
256
+ "title": this._closeButtonText,
257
+ },
258
+ };
259
+ }
223
260
  }
224
261
 
225
262
  MessageStrip.define();
@@ -537,7 +537,7 @@ class MultiComboBox extends UI5Element {
537
537
 
538
538
  const tokensCount = this._tokenizer.tokens.length - 1;
539
539
 
540
- if (!event.relatedTarget || event.relatedTarget.localName !== "ui5-token") {
540
+ if (!event.relatedTarget || !event.relatedTarget.hasAttribute("ui5-token")) {
541
541
  this._tokenizer.tokens.forEach(token => { token.selected = false; });
542
542
  this._tokenizer.scrollToStart();
543
543
  }
@@ -912,7 +912,7 @@ class MultiComboBox extends UI5Element {
912
912
  }
913
913
 
914
914
  inputFocusIn() {
915
- if (!isPhone()) {
915
+ if (!isPhone() || this.readonly) {
916
916
  this.focused = true;
917
917
  } else {
918
918
  this._innerInput.blur();
@@ -1012,7 +1012,7 @@ class MultiComboBox extends UI5Element {
1012
1012
  }
1013
1013
 
1014
1014
  get shouldDisplayOnlyValueStateMessage() {
1015
- return this.focused && this.hasValueStateMessage && !this._iconPressed;
1015
+ return this.focused && !this.readonly && this.hasValueStateMessage && !this._iconPressed;
1016
1016
  }
1017
1017
 
1018
1018
  get valueStateTextMappings() {
@@ -1051,6 +1051,10 @@ class MultiComboBox extends UI5Element {
1051
1051
  return (this._isFocusInside || this.open) && !this.readonly;
1052
1052
  }
1053
1053
 
1054
+ get _valueStatePopoverHorizontalAlign() {
1055
+ return this.effectiveDir !== "rtl" ? "Left" : "Right";
1056
+ }
1057
+
1054
1058
  get classes() {
1055
1059
  return {
1056
1060
  popover: {
@@ -34,7 +34,7 @@ class MultiComboBoxItem extends ComboBoxItem {
34
34
  }
35
35
 
36
36
  get stableDomRef() {
37
- return `${this._id}-stable-dom-ref`;
37
+ return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
38
38
  }
39
39
  }
40
40
 
@@ -4,6 +4,9 @@ import {
4
4
  isBackSpace,
5
5
  isLeft,
6
6
  isRight,
7
+ isRightCtrl,
8
+ isHome,
9
+ isEnd,
7
10
  } from "@ui5/webcomponents-base/dist/Keys.js";
8
11
  import { MULTIINPUT_ROLEDESCRIPTION_TEXT } from "./generated/i18n/i18n-defaults.js";
9
12
  import Input from "./Input.js";
@@ -136,8 +139,15 @@ class MultiInput extends Input {
136
139
  }
137
140
 
138
141
  tokenDelete(event) {
139
- this.fireEvent("token-delete", {
140
- token: event.detail.ref,
142
+ const focusedToken = event.detail.ref;
143
+ const selectedTokens = this.tokens.filter(token => token.selected);
144
+
145
+ if (selectedTokens.indexOf(focusedToken) === -1) {
146
+ selectedTokens.push(focusedToken);
147
+ }
148
+
149
+ selectedTokens.forEach(token => {
150
+ this.fireEvent("token-delete", { token });
141
151
  });
142
152
 
143
153
  this.focus();
@@ -170,7 +180,9 @@ class MultiInput extends Input {
170
180
  _onkeydown(event) {
171
181
  super._onkeydown(event);
172
182
 
173
- if (isLeft(event)) {
183
+ const isHomeInBeginning = isHome(event) && event.target.selectionStart === 0;
184
+
185
+ if (isLeft(event) || isHomeInBeginning) {
174
186
  this._skipOpenSuggestions = true; // Prevent input focus when navigating through the tokens.
175
187
 
176
188
  return this._handleLeft(event);
@@ -189,22 +201,57 @@ class MultiInput extends Input {
189
201
  }
190
202
 
191
203
  _onTokenizerKeydown(event) {
192
- if (isRight(event)) {
193
- const lastTokenIndex = this.tokenizer._tokens.length - 1;
204
+ const rightCtrl = isRightCtrl(event);
205
+ const isCtrl = !!(event.metaKey || event.ctrlKey);
206
+ const tokens = this.tokens;
194
207
 
195
- if (this.tokenizer._tokens[lastTokenIndex] === document.activeElement) {
208
+ if (isRight(event) || isEnd(event) || rightCtrl) {
209
+ event.preventDefault();
210
+ const lastTokenIndex = this.tokens.length - 1;
211
+
212
+ if (event.target === this.tokens[lastTokenIndex] && this.tokens[lastTokenIndex] === document.activeElement) {
196
213
  setTimeout(() => {
197
214
  this.focus();
198
215
  }, 0);
216
+ } else if (rightCtrl) {
217
+ event.preventDefault();
218
+ return this.tokenizer._handleArrowCtrl(event.target, this.tokens, true);
219
+ }
220
+ }
221
+
222
+ this.tokenizer._handleItemNavigation(event, tokens);
223
+
224
+ if (isCtrl && ["c", "x"].includes(event.key.toLowerCase())) {
225
+ event.preventDefault();
226
+
227
+ const isCut = event.key.toLowerCase() === "x";
228
+ const selectedTokens = tokens.filter(token => token.selected);
229
+
230
+ if (isCut) {
231
+ const cutResult = this.tokenizer._fillClipboard("cut", selectedTokens);
232
+
233
+ selectedTokens.forEach(token => {
234
+ this.fireEvent("token-delete", { token });
235
+ });
236
+
237
+ this.focus();
238
+
239
+ return cutResult;
199
240
  }
241
+
242
+ return this.tokenizer._fillClipboard("copy", selectedTokens);
200
243
  }
201
244
  }
202
245
 
203
246
  _handleLeft() {
204
247
  const cursorPosition = this.getDomRef().querySelector(`input`).selectionStart;
248
+ const tokens = this.tokens;
249
+ const lastToken = tokens.length && tokens[tokens.length - 1];
205
250
 
206
- if (cursorPosition === 0) {
207
- this.tokenizer._focusLastToken();
251
+ if (cursorPosition === 0 && lastToken) {
252
+ // this.tokenizer._focusLastToken(); won't work as the tokens in the MultiInput use different slot and are not resolved properly
253
+ lastToken.focus();
254
+ this.tokenizer._itemNav.setCurrentItem(lastToken);
208
255
  }
209
256
  }
210
257
 
package/dist/Option.js CHANGED
@@ -31,6 +31,17 @@ const metadata = {
31
31
  type: Boolean,
32
32
  },
33
33
 
34
+ /**
35
+ * Defines the tooltip of the component.
36
+ * @type {string}
37
+ * @defaultvalue ""
38
+ * @private
39
+ * @since 1.1.0
40
+ */
41
+ title: {
42
+ type: String,
43
+ },
44
+
34
45
  /**
35
46
  * Defines the <code>icon</code> source URI.
36
47
  * <br><br>
@@ -106,7 +117,7 @@ class Option extends UI5Element {
106
117
  }
107
118
 
108
119
  get stableDomRef() {
109
- return `${this._id}-stable-dom-ref`;
120
+ return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
110
121
  }
111
122
  }
112
123
 
package/dist/Panel.js CHANGED
@@ -24,6 +24,7 @@ const metadata = {
24
24
  tag: "ui5-panel",
25
25
  languageAware: true,
26
26
  managedSlots: true,
27
+ fastNavigation: true,
27
28
  slots: /** @lends sap.ui.webcomponents.main.Panel.prototype */ {
28
29
 
29
30
  /**
@@ -240,6 +241,14 @@ const metadata = {
240
241
  * <li>content - Used to style the wrapper of the content</li>
241
242
  * </ul>
242
243
  *
244
+ * <h3>Keyboard Handling</h3>
245
+ *
246
+ * <h4>Fast Navigation</h4>
247
+ * 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>.
248
+ * In order to use this functionality, you need to import the following module:
249
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
250
+ * <br><br>
251
+ *
243
252
  * <h3>ES6 Module Import</h3>
244
253
  *
245
254
  * <code>import "@ui5/webcomponents/dist/Panel";</code>