@ui5/webcomponents 2.7.0-rc.1 → 2.7.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 (781) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +21 -16
  3. package/cypress/specs/{Button.cy.ts → Button.cy.tsx} +60 -33
  4. package/cypress/specs/CalendarLegend.cy.tsx +77 -0
  5. package/cypress/specs/{Card.cy.ts → Card.cy.tsx} +28 -28
  6. package/cypress/specs/ColorPalette.cy.tsx +213 -0
  7. package/cypress/specs/{ColorPicker.cy.ts → ColorPicker.cy.tsx} +7 -9
  8. package/cypress/specs/{ComboBox.cy.ts → ComboBox.cy.tsx} +9 -10
  9. package/cypress/specs/Dialog.cy.tsx +44 -0
  10. package/cypress/specs/{ExpandableText.cy.ts → ExpandableText.cy.tsx} +27 -23
  11. package/cypress/specs/F6.cy.tsx +906 -0
  12. package/cypress/specs/{Form.cy.ts → Form.cy.tsx} +326 -324
  13. package/cypress/specs/{FormSupport.cy.ts → FormSupport.cy.tsx} +270 -285
  14. package/cypress/specs/{Input.cy.ts → Input.cy.tsx} +38 -41
  15. package/cypress/specs/{Label.cy.ts → Label.cy.tsx} +62 -46
  16. package/cypress/specs/{Link.cy.ts → Link.cy.tsx} +2 -3
  17. package/cypress/specs/{List.cy.ts → List.cy.tsx} +34 -36
  18. package/cypress/specs/{LitKeyFunction.cy.ts → LitKeyFunction.cy.tsx} +10 -9
  19. package/cypress/specs/{Menu.cy.ts → Menu.cy.tsx} +208 -92
  20. package/cypress/specs/MessageStrip.cy.tsx +164 -0
  21. package/cypress/specs/MultiComboBox.cy.tsx +58 -0
  22. package/cypress/specs/{MultiInput.cy.ts → MultiInput.cy.tsx} +15 -15
  23. package/cypress/specs/{Popover.cy.ts → Popover.cy.tsx} +28 -25
  24. package/cypress/specs/RTL.cy.tsx +18 -0
  25. package/cypress/specs/{RatingIndicator.cy.ts → RatingIndicator.cy.tsx} +48 -11
  26. package/cypress/specs/{ResponsivePopover.mobile.cy.ts → ResponsivePopover.mobile.cy.tsx} +35 -16
  27. package/cypress/specs/Select.cy.tsx +56 -0
  28. package/cypress/specs/{StepInput.cy.ts → StepInput.cy.tsx} +4 -6
  29. package/cypress/specs/Table.cy.tsx +665 -0
  30. package/cypress/specs/{TableDragAndDrop.cy.ts → TableDragAndDrop.cy.tsx} +27 -24
  31. package/cypress/specs/{TableGrowing.cy.ts → TableGrowing.cy.tsx} +83 -75
  32. package/cypress/specs/TableLoading.cy.tsx +48 -0
  33. package/cypress/specs/{TableRowActions.cy.ts → TableRowActions.cy.tsx} +67 -61
  34. package/cypress/specs/{TableVirtualizer.cy.ts → TableVirtualizer.cy.tsx} +12 -15
  35. package/cypress/specs/{Tag.cy.ts → Tag.cy.tsx} +53 -31
  36. package/cypress/specs/{Text.cy.ts → Text.cy.tsx} +6 -7
  37. package/cypress/specs/{TextArea.cy.ts → TextArea.cy.tsx} +62 -49
  38. package/cypress/specs/Title.cy.tsx +36 -0
  39. package/cypress/specs/{Toast.cy.ts → Toast.cy.tsx} +17 -16
  40. package/cypress/specs/Tokenizer.cy.tsx +173 -0
  41. package/cypress/specs/{Toolbar.cy.ts → Toolbar.cy.tsx} +61 -63
  42. package/cypress/specs/{Tree.cy.ts → Tree.cy.tsx} +13 -12
  43. package/cypress/specs/base/{AccessibilityTextsHelper.cy.ts → AccessibilityTextsHelper.cy.tsx} +52 -41
  44. package/cypress/specs/base/{Events.cy.ts → Events.cy.tsx} +58 -57
  45. package/cypress/specs/base/{IconCollection.cy.ts → IconCollection.cy.tsx} +4 -4
  46. package/cypress/specs/base/{IgnoreCustomElements.cy.ts → IgnoreCustomElements.cy.tsx} +15 -12
  47. package/cypress/specs/base/Tooltips.cy.tsx +62 -0
  48. package/cypress/support/commands/ColorPalette.commands.ts +23 -5
  49. package/cypress/support/commands/Menu.commands.ts +7 -7
  50. package/cypress/support/commands.ts +1 -0
  51. package/cypress/tsconfig.json +2 -0
  52. package/dist/.tsbuildinfo +1 -1
  53. package/dist/AvatarGroup.d.ts +1 -1
  54. package/dist/Button.d.ts +11 -0
  55. package/dist/Button.js +19 -0
  56. package/dist/Button.js.map +1 -1
  57. package/dist/ButtonBadge.d.ts +32 -0
  58. package/dist/ButtonBadge.js +62 -0
  59. package/dist/ButtonBadge.js.map +1 -0
  60. package/dist/ButtonBadgeTemplate.d.ts +2 -0
  61. package/dist/ButtonBadgeTemplate.js +6 -0
  62. package/dist/ButtonBadgeTemplate.js.map +1 -0
  63. package/dist/ButtonTemplate.js +8 -2
  64. package/dist/ButtonTemplate.js.map +1 -1
  65. package/dist/Calendar.d.ts +1 -0
  66. package/dist/Calendar.js +8 -3
  67. package/dist/Calendar.js.map +1 -1
  68. package/dist/ColorPalettePopover.d.ts +0 -1
  69. package/dist/ColorPalettePopover.js +0 -1
  70. package/dist/ColorPalettePopover.js.map +1 -1
  71. package/dist/DayPicker.d.ts +2 -0
  72. package/dist/DayPicker.js +12 -3
  73. package/dist/DayPicker.js.map +1 -1
  74. package/dist/DayPickerTemplate.js +1 -1
  75. package/dist/DayPickerTemplate.js.map +1 -1
  76. package/dist/Dialog.js +1 -0
  77. package/dist/Dialog.js.map +1 -1
  78. package/dist/FileUploader.js +1 -1
  79. package/dist/FileUploader.js.map +1 -1
  80. package/dist/Input.d.ts +0 -14
  81. package/dist/Input.js +0 -9
  82. package/dist/Input.js.map +1 -1
  83. package/dist/List.js +4 -0
  84. package/dist/List.js.map +1 -1
  85. package/dist/Menu.d.ts +5 -0
  86. package/dist/Menu.js +35 -14
  87. package/dist/Menu.js.map +1 -1
  88. package/dist/MenuItem.d.ts +10 -5
  89. package/dist/MenuItem.js +25 -1
  90. package/dist/MenuItem.js.map +1 -1
  91. package/dist/MenuItemTemplate.js +1 -1
  92. package/dist/MenuItemTemplate.js.map +1 -1
  93. package/dist/MessageStrip.js +1 -3
  94. package/dist/MessageStrip.js.map +1 -1
  95. package/dist/MultiComboBox.js +4 -4
  96. package/dist/MultiComboBox.js.map +1 -1
  97. package/dist/Popover.d.ts +4 -0
  98. package/dist/Popover.js +6 -0
  99. package/dist/Popover.js.map +1 -1
  100. package/dist/RatingIndicator.js +4 -1
  101. package/dist/RatingIndicator.js.map +1 -1
  102. package/dist/Select.d.ts +1 -0
  103. package/dist/Select.js +3 -0
  104. package/dist/Select.js.map +1 -1
  105. package/dist/SelectPopoverTemplate.js +3 -3
  106. package/dist/SelectPopoverTemplate.js.map +1 -1
  107. package/dist/SpecialCalendarDate.d.ts +6 -0
  108. package/dist/SpecialCalendarDate.js +9 -0
  109. package/dist/SpecialCalendarDate.js.map +1 -1
  110. package/dist/SplitButton.d.ts +3 -0
  111. package/dist/SplitButton.js +3 -0
  112. package/dist/SplitButton.js.map +1 -1
  113. package/dist/Tab.d.ts +1 -1
  114. package/dist/Table.js +1 -1
  115. package/dist/Table.js.map +1 -1
  116. package/dist/TableGrowing.d.ts +6 -1
  117. package/dist/TableGrowing.js +6 -1
  118. package/dist/TableGrowing.js.map +1 -1
  119. package/dist/TableVirtualizer.js +4 -2
  120. package/dist/TableVirtualizer.js.map +1 -1
  121. package/dist/Tag.d.ts +2 -1
  122. package/dist/Tag.js +1 -0
  123. package/dist/Tag.js.map +1 -1
  124. package/dist/TagTemplate.js +2 -2
  125. package/dist/TagTemplate.js.map +1 -1
  126. package/dist/TimePicker.d.ts +6 -3
  127. package/dist/TimePicker.js +17 -6
  128. package/dist/TimePicker.js.map +1 -1
  129. package/dist/TimePickerClock.d.ts +22 -52
  130. package/dist/TimePickerClock.js +71 -224
  131. package/dist/TimePickerClock.js.map +1 -1
  132. package/dist/TimePickerClockTemplate.js +9 -6
  133. package/dist/TimePickerClockTemplate.js.map +1 -1
  134. package/dist/TimePickerInternals.d.ts +2 -1
  135. package/dist/TimePickerInternals.js.map +1 -1
  136. package/dist/TimePickerPopoverTemplate.js +1 -1
  137. package/dist/TimePickerPopoverTemplate.js.map +1 -1
  138. package/dist/TimeSelectionClocks.d.ts +15 -3
  139. package/dist/TimeSelectionClocks.js +64 -28
  140. package/dist/TimeSelectionClocks.js.map +1 -1
  141. package/dist/TimeSelectionClocksTemplate.js +1 -1
  142. package/dist/TimeSelectionClocksTemplate.js.map +1 -1
  143. package/dist/Tokenizer.js +1 -1
  144. package/dist/Tokenizer.js.map +1 -1
  145. package/dist/YearPicker.js +2 -2
  146. package/dist/YearPicker.js.map +1 -1
  147. package/dist/bundle.esm.js +1 -2
  148. package/dist/bundle.esm.js.map +1 -1
  149. package/dist/css/themes/Avatar.css +1 -1
  150. package/dist/css/themes/AvatarGroup.css +1 -1
  151. package/dist/css/themes/Bar.css +1 -1
  152. package/dist/css/themes/Breadcrumbs.css +1 -1
  153. package/dist/css/themes/BusyIndicator.css +1 -1
  154. package/dist/css/themes/Button.css +1 -1
  155. package/dist/css/themes/ButtonBadge.css +1 -0
  156. package/dist/css/themes/Calendar.css +1 -1
  157. package/dist/css/themes/CalendarHeader.css +1 -1
  158. package/dist/css/themes/CalendarLegend.css +1 -1
  159. package/dist/css/themes/CalendarLegendItem.css +1 -1
  160. package/dist/css/themes/Card.css +1 -1
  161. package/dist/css/themes/CardHeader.css +1 -1
  162. package/dist/css/themes/Carousel.css +1 -1
  163. package/dist/css/themes/CheckBox.css +1 -1
  164. package/dist/css/themes/ColorPalette.css +1 -1
  165. package/dist/css/themes/ColorPaletteItem.css +1 -1
  166. package/dist/css/themes/ColorPalettePopover.css +1 -1
  167. package/dist/css/themes/ColorPicker.css +1 -1
  168. package/dist/css/themes/ComboBox.css +1 -1
  169. package/dist/css/themes/ComboBoxItem.css +1 -1
  170. package/dist/css/themes/DatePicker.css +1 -1
  171. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  172. package/dist/css/themes/DayPicker.css +1 -1
  173. package/dist/css/themes/Dialog.css +1 -1
  174. package/dist/css/themes/FileUploader.css +1 -1
  175. package/dist/css/themes/Form.css +1 -1
  176. package/dist/css/themes/FormItem.css +1 -1
  177. package/dist/css/themes/FormItemSpan.css +1 -1
  178. package/dist/css/themes/GrowingButton.css +1 -1
  179. package/dist/css/themes/Icon.css +1 -1
  180. package/dist/css/themes/Input.css +1 -1
  181. package/dist/css/themes/InputIcon.css +1 -1
  182. package/dist/css/themes/InputSharedStyles.css +1 -1
  183. package/dist/css/themes/Link.css +1 -1
  184. package/dist/css/themes/List.css +1 -1
  185. package/dist/css/themes/ListItem.css +1 -1
  186. package/dist/css/themes/ListItemBase.css +1 -1
  187. package/dist/css/themes/ListItemCustom.css +1 -1
  188. package/dist/css/themes/ListItemGroup.css +1 -1
  189. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  190. package/dist/css/themes/ListItemIcon.css +1 -1
  191. package/dist/css/themes/Menu.css +1 -1
  192. package/dist/css/themes/MenuItem.css +1 -1
  193. package/dist/css/themes/MessageStrip.css +1 -1
  194. package/dist/css/themes/MonthPicker.css +1 -1
  195. package/dist/css/themes/MultiComboBox.css +1 -1
  196. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  197. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  198. package/dist/css/themes/MultiInput.css +1 -1
  199. package/dist/css/themes/OptionBase.css +1 -1
  200. package/dist/css/themes/Panel.css +1 -1
  201. package/dist/css/themes/Popover.css +1 -1
  202. package/dist/css/themes/PopupsCommon.css +1 -1
  203. package/dist/css/themes/ProgressIndicator.css +1 -1
  204. package/dist/css/themes/RadioButton.css +1 -1
  205. package/dist/css/themes/RangeSlider.css +1 -1
  206. package/dist/css/themes/RatingIndicator.css +1 -1
  207. package/dist/css/themes/ResponsivePopover.css +1 -1
  208. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  209. package/dist/css/themes/SegmentedButton.css +1 -1
  210. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  211. package/dist/css/themes/Select.css +1 -1
  212. package/dist/css/themes/SliderBase.css +1 -1
  213. package/dist/css/themes/SplitButton.css +1 -1
  214. package/dist/css/themes/StepInput.css +1 -1
  215. package/dist/css/themes/SuggestionItem.css +1 -1
  216. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  217. package/dist/css/themes/Switch.css +1 -1
  218. package/dist/css/themes/TabContainer.css +1 -1
  219. package/dist/css/themes/TabInOverflow.css +1 -1
  220. package/dist/css/themes/TabInStrip.css +1 -1
  221. package/dist/css/themes/TabSemanticIcon.css +1 -1
  222. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  223. package/dist/css/themes/Table.css +1 -1
  224. package/dist/css/themes/TableCellBase.css +1 -1
  225. package/dist/css/themes/TableHeaderRow.css +1 -1
  226. package/dist/css/themes/TableRow.css +1 -1
  227. package/dist/css/themes/TableRowActionBase.css +1 -1
  228. package/dist/css/themes/TableRowBase.css +1 -1
  229. package/dist/css/themes/Tag.css +1 -1
  230. package/dist/css/themes/Text.css +1 -1
  231. package/dist/css/themes/TextArea.css +1 -1
  232. package/dist/css/themes/TimePicker.css +1 -1
  233. package/dist/css/themes/TimePickerClock.css +1 -1
  234. package/dist/css/themes/Toast.css +1 -1
  235. package/dist/css/themes/ToggleButton.css +1 -1
  236. package/dist/css/themes/Token.css +1 -1
  237. package/dist/css/themes/Tokenizer.css +1 -1
  238. package/dist/css/themes/TokenizerPopover.css +1 -1
  239. package/dist/css/themes/Toolbar.css +1 -1
  240. package/dist/css/themes/ToolbarPopover.css +1 -1
  241. package/dist/css/themes/TreeItem.css +1 -1
  242. package/dist/css/themes/ValueStateMessage.css +1 -1
  243. package/dist/css/themes/YearPicker.css +1 -1
  244. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  245. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  246. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  247. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  248. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  249. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  250. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  251. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  252. package/dist/custom-elements-internal.json +200 -45
  253. package/dist/custom-elements.json +145 -43
  254. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  266. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  267. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  268. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  269. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  270. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  271. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  272. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  273. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  274. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  275. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  276. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  277. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  278. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  279. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  280. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  281. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  282. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  283. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  284. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  285. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  286. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  287. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  288. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  289. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  290. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  291. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  292. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  293. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  294. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  295. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  296. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  297. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  298. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  299. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  300. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  301. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  302. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  303. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  304. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  305. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  306. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  307. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  308. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  309. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  310. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  311. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  312. package/dist/generated/i18n/i18n-defaults.d.ts +1 -2
  313. package/dist/generated/i18n/i18n-defaults.js +1 -2
  314. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  315. package/dist/generated/templates/TableGrowingTemplate.lit.js +2 -3
  316. package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -1
  317. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  318. package/dist/generated/themes/Avatar.css.js +1 -1
  319. package/dist/generated/themes/Avatar.css.js.map +1 -1
  320. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  321. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  322. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  323. package/dist/generated/themes/Bar.css.d.ts +1 -1
  324. package/dist/generated/themes/Bar.css.js +1 -1
  325. package/dist/generated/themes/Bar.css.js.map +1 -1
  326. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  327. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  328. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  329. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  330. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  331. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  332. package/dist/generated/themes/Button.css.d.ts +1 -1
  333. package/dist/generated/themes/Button.css.js +1 -1
  334. package/dist/generated/themes/Button.css.js.map +1 -1
  335. package/dist/generated/themes/ButtonBadge.css.d.ts +2 -0
  336. package/dist/generated/themes/ButtonBadge.css.js +8 -0
  337. package/dist/generated/themes/ButtonBadge.css.js.map +1 -0
  338. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  339. package/dist/generated/themes/Calendar.css.js +1 -1
  340. package/dist/generated/themes/Calendar.css.js.map +1 -1
  341. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  342. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  343. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  344. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  345. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  346. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  347. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  348. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  349. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  350. package/dist/generated/themes/Card.css.d.ts +1 -1
  351. package/dist/generated/themes/Card.css.js +1 -1
  352. package/dist/generated/themes/Card.css.js.map +1 -1
  353. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  354. package/dist/generated/themes/CardHeader.css.js +1 -1
  355. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  356. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  357. package/dist/generated/themes/Carousel.css.js +1 -1
  358. package/dist/generated/themes/Carousel.css.js.map +1 -1
  359. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  360. package/dist/generated/themes/CheckBox.css.js +1 -1
  361. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  362. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  363. package/dist/generated/themes/ColorPalette.css.js +1 -1
  364. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  365. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  366. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  367. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  368. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  369. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  370. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  371. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  372. package/dist/generated/themes/ColorPicker.css.js +1 -1
  373. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  374. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  375. package/dist/generated/themes/ComboBox.css.js +1 -1
  376. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  377. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  378. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  379. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  380. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  381. package/dist/generated/themes/DatePicker.css.js +1 -1
  382. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  383. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  384. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  385. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  386. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  387. package/dist/generated/themes/DayPicker.css.js +1 -1
  388. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  389. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  390. package/dist/generated/themes/Dialog.css.js +1 -1
  391. package/dist/generated/themes/Dialog.css.js.map +1 -1
  392. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  393. package/dist/generated/themes/FileUploader.css.js +1 -1
  394. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  395. package/dist/generated/themes/Form.css.d.ts +1 -1
  396. package/dist/generated/themes/Form.css.js +1 -1
  397. package/dist/generated/themes/Form.css.js.map +1 -1
  398. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  399. package/dist/generated/themes/FormItem.css.js +1 -1
  400. package/dist/generated/themes/FormItem.css.js.map +1 -1
  401. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  402. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  403. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  404. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  405. package/dist/generated/themes/GrowingButton.css.js +1 -1
  406. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  407. package/dist/generated/themes/Icon.css.d.ts +1 -1
  408. package/dist/generated/themes/Icon.css.js +1 -1
  409. package/dist/generated/themes/Icon.css.js.map +1 -1
  410. package/dist/generated/themes/Input.css.d.ts +1 -1
  411. package/dist/generated/themes/Input.css.js +1 -1
  412. package/dist/generated/themes/Input.css.js.map +1 -1
  413. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  414. package/dist/generated/themes/InputIcon.css.js +1 -1
  415. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  416. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  417. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  418. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  419. package/dist/generated/themes/Link.css.d.ts +1 -1
  420. package/dist/generated/themes/Link.css.js +1 -1
  421. package/dist/generated/themes/Link.css.js.map +1 -1
  422. package/dist/generated/themes/List.css.d.ts +1 -1
  423. package/dist/generated/themes/List.css.js +1 -1
  424. package/dist/generated/themes/List.css.js.map +1 -1
  425. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  426. package/dist/generated/themes/ListItem.css.js +1 -1
  427. package/dist/generated/themes/ListItem.css.js.map +1 -1
  428. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  429. package/dist/generated/themes/ListItemBase.css.js +1 -1
  430. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  431. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  432. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  433. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  434. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  435. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  436. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  437. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  438. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  439. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  440. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  441. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  442. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  443. package/dist/generated/themes/Menu.css.d.ts +1 -1
  444. package/dist/generated/themes/Menu.css.js +1 -1
  445. package/dist/generated/themes/Menu.css.js.map +1 -1
  446. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  447. package/dist/generated/themes/MenuItem.css.js +1 -1
  448. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  449. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  450. package/dist/generated/themes/MessageStrip.css.js +1 -1
  451. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  452. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  453. package/dist/generated/themes/MonthPicker.css.js +1 -1
  454. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  455. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  456. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  457. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  458. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  459. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  460. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  461. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  462. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  463. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  464. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  465. package/dist/generated/themes/MultiInput.css.js +1 -1
  466. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  467. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  468. package/dist/generated/themes/OptionBase.css.js +1 -1
  469. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  470. package/dist/generated/themes/Panel.css.d.ts +1 -1
  471. package/dist/generated/themes/Panel.css.js +1 -1
  472. package/dist/generated/themes/Panel.css.js.map +1 -1
  473. package/dist/generated/themes/Popover.css.d.ts +1 -1
  474. package/dist/generated/themes/Popover.css.js +1 -1
  475. package/dist/generated/themes/Popover.css.js.map +1 -1
  476. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  477. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  478. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  479. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  480. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  481. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  482. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  483. package/dist/generated/themes/RadioButton.css.js +1 -1
  484. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  485. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  486. package/dist/generated/themes/RangeSlider.css.js +1 -1
  487. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  488. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  489. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  490. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  491. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  492. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  493. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  494. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  495. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  496. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  497. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  498. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  499. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  500. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  501. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  502. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  503. package/dist/generated/themes/Select.css.d.ts +1 -1
  504. package/dist/generated/themes/Select.css.js +1 -1
  505. package/dist/generated/themes/Select.css.js.map +1 -1
  506. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  507. package/dist/generated/themes/SliderBase.css.js +1 -1
  508. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  509. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  510. package/dist/generated/themes/SplitButton.css.js +1 -1
  511. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  512. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  513. package/dist/generated/themes/StepInput.css.js +1 -1
  514. package/dist/generated/themes/StepInput.css.js.map +1 -1
  515. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  516. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  517. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  518. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  519. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  520. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  521. package/dist/generated/themes/Switch.css.d.ts +1 -1
  522. package/dist/generated/themes/Switch.css.js +1 -1
  523. package/dist/generated/themes/Switch.css.js.map +1 -1
  524. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  525. package/dist/generated/themes/TabContainer.css.js +1 -1
  526. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  527. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  528. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  529. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  530. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  531. package/dist/generated/themes/TabInStrip.css.js +1 -1
  532. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  533. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  534. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  535. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  536. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  537. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  538. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  539. package/dist/generated/themes/Table.css.d.ts +1 -1
  540. package/dist/generated/themes/Table.css.js +1 -1
  541. package/dist/generated/themes/Table.css.js.map +1 -1
  542. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  543. package/dist/generated/themes/TableCellBase.css.js +1 -1
  544. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  545. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  546. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  547. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  548. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  549. package/dist/generated/themes/TableRow.css.js +1 -1
  550. package/dist/generated/themes/TableRow.css.js.map +1 -1
  551. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  552. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  553. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  554. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  555. package/dist/generated/themes/TableRowBase.css.js +1 -1
  556. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  557. package/dist/generated/themes/Tag.css.d.ts +1 -1
  558. package/dist/generated/themes/Tag.css.js +1 -1
  559. package/dist/generated/themes/Tag.css.js.map +1 -1
  560. package/dist/generated/themes/Text.css.d.ts +1 -1
  561. package/dist/generated/themes/Text.css.js +1 -1
  562. package/dist/generated/themes/Text.css.js.map +1 -1
  563. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  564. package/dist/generated/themes/TextArea.css.js +1 -1
  565. package/dist/generated/themes/TextArea.css.js.map +1 -1
  566. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  567. package/dist/generated/themes/TimePicker.css.js +1 -1
  568. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  569. package/dist/generated/themes/TimePickerClock.css.d.ts +1 -1
  570. package/dist/generated/themes/TimePickerClock.css.js +1 -1
  571. package/dist/generated/themes/TimePickerClock.css.js.map +1 -1
  572. package/dist/generated/themes/Toast.css.d.ts +1 -1
  573. package/dist/generated/themes/Toast.css.js +1 -1
  574. package/dist/generated/themes/Toast.css.js.map +1 -1
  575. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  576. package/dist/generated/themes/ToggleButton.css.js +1 -1
  577. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  578. package/dist/generated/themes/Token.css.d.ts +1 -1
  579. package/dist/generated/themes/Token.css.js +1 -1
  580. package/dist/generated/themes/Token.css.js.map +1 -1
  581. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  582. package/dist/generated/themes/Tokenizer.css.js +1 -1
  583. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  584. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  585. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  586. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  587. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  588. package/dist/generated/themes/Toolbar.css.js +1 -1
  589. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  590. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  591. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  592. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  593. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  594. package/dist/generated/themes/TreeItem.css.js +1 -1
  595. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  596. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  597. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  598. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  599. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  600. package/dist/generated/themes/YearPicker.css.js +1 -1
  601. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  602. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  603. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  604. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  605. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  606. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  607. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  608. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  609. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  610. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  611. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  612. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  613. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  614. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  615. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  616. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  617. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  618. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  619. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  620. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  621. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  622. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  623. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  624. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  625. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  626. package/dist/types/ButtonBadgeDesign.d.ts +25 -0
  627. package/dist/types/ButtonBadgeDesign.js +27 -0
  628. package/dist/types/ButtonBadgeDesign.js.map +1 -0
  629. package/dist/types/TableGrowingMode.d.ts +2 -0
  630. package/dist/types/TableGrowingMode.js +2 -0
  631. package/dist/types/TableGrowingMode.js.map +1 -1
  632. package/dist/vscode.html-custom-data.json +32 -11
  633. package/dist/web-types.json +83 -20
  634. package/package.json +12 -10
  635. package/src/ButtonBadgeTemplate.tsx +6 -0
  636. package/src/ButtonTemplate.tsx +10 -1
  637. package/src/DayPickerTemplate.tsx +1 -0
  638. package/src/MenuItemTemplate.tsx +0 -10
  639. package/src/SelectPopoverTemplate.tsx +3 -3
  640. package/src/TableGrowing.hbs +17 -19
  641. package/src/TagTemplate.tsx +2 -1
  642. package/src/TimePickerClockTemplate.tsx +35 -36
  643. package/src/TimePickerPopoverTemplate.tsx +1 -0
  644. package/src/TimeSelectionClocksTemplate.tsx +2 -1
  645. package/src/i18n/messagebundle.properties +0 -3
  646. package/src/i18n/messagebundle_ar.properties +11 -1
  647. package/src/i18n/messagebundle_bg.properties +11 -1
  648. package/src/i18n/messagebundle_ca.properties +11 -1
  649. package/src/i18n/messagebundle_cnr.properties +11 -1
  650. package/src/i18n/messagebundle_cs.properties +10 -0
  651. package/src/i18n/messagebundle_cy.properties +11 -1
  652. package/src/i18n/messagebundle_da.properties +10 -0
  653. package/src/i18n/messagebundle_de.properties +11 -1
  654. package/src/i18n/messagebundle_el.properties +11 -1
  655. package/src/i18n/messagebundle_en.properties +8 -0
  656. package/src/i18n/messagebundle_en_GB.properties +11 -1
  657. package/src/i18n/messagebundle_en_US_sappsd.properties +8 -0
  658. package/src/i18n/messagebundle_en_US_saprigi.properties +8 -2
  659. package/src/i18n/messagebundle_en_US_saptrc.properties +8 -0
  660. package/src/i18n/messagebundle_es.properties +11 -1
  661. package/src/i18n/messagebundle_es_MX.properties +11 -1
  662. package/src/i18n/messagebundle_et.properties +11 -1
  663. package/src/i18n/messagebundle_fi.properties +11 -1
  664. package/src/i18n/messagebundle_fr.properties +11 -1
  665. package/src/i18n/messagebundle_fr_CA.properties +11 -1
  666. package/src/i18n/messagebundle_hi.properties +11 -1
  667. package/src/i18n/messagebundle_hr.properties +11 -1
  668. package/src/i18n/messagebundle_hu.properties +11 -1
  669. package/src/i18n/messagebundle_id.properties +11 -1
  670. package/src/i18n/messagebundle_it.properties +11 -1
  671. package/src/i18n/messagebundle_iw.properties +11 -1
  672. package/src/i18n/messagebundle_ja.properties +11 -1
  673. package/src/i18n/messagebundle_kk.properties +11 -1
  674. package/src/i18n/messagebundle_ko.properties +11 -1
  675. package/src/i18n/messagebundle_lt.properties +11 -1
  676. package/src/i18n/messagebundle_lv.properties +11 -1
  677. package/src/i18n/messagebundle_mk.properties +11 -1
  678. package/src/i18n/messagebundle_ms.properties +11 -1
  679. package/src/i18n/messagebundle_nl.properties +11 -1
  680. package/src/i18n/messagebundle_no.properties +11 -1
  681. package/src/i18n/messagebundle_pl.properties +11 -1
  682. package/src/i18n/messagebundle_pt.properties +11 -1
  683. package/src/i18n/messagebundle_pt_PT.properties +11 -1
  684. package/src/i18n/messagebundle_ro.properties +11 -1
  685. package/src/i18n/messagebundle_ru.properties +10 -0
  686. package/src/i18n/messagebundle_sh.properties +11 -1
  687. package/src/i18n/messagebundle_sk.properties +11 -1
  688. package/src/i18n/messagebundle_sl.properties +12 -2
  689. package/src/i18n/messagebundle_sr.properties +11 -1
  690. package/src/i18n/messagebundle_sv.properties +10 -0
  691. package/src/i18n/messagebundle_th.properties +11 -1
  692. package/src/i18n/messagebundle_tr.properties +10 -0
  693. package/src/i18n/messagebundle_uk.properties +14 -4
  694. package/src/i18n/messagebundle_vi.properties +11 -1
  695. package/src/i18n/messagebundle_zh_CN.properties +11 -1
  696. package/src/i18n/messagebundle_zh_TW.properties +11 -1
  697. package/src/themes/Button.css +37 -0
  698. package/src/themes/ButtonBadge.css +17 -0
  699. package/src/themes/ColorPicker.css +32 -38
  700. package/src/themes/DayPicker.css +1 -0
  701. package/src/themes/MenuItem.css +5 -1
  702. package/src/themes/SegmentedButton.css +1 -1
  703. package/src/themes/SplitButton.css +8 -8
  704. package/src/themes/Switch.css +2 -0
  705. package/src/themes/TableRow.css +0 -1
  706. package/src/themes/TableRowBase.css +1 -0
  707. package/src/themes/TimePickerClock.css +180 -9
  708. package/src/themes/base/ButtonBadge-parameters.css +3 -0
  709. package/src/themes/base/ColorPicker-parameters.css +5 -5
  710. package/src/themes/base/SegmentedButtton-parameters.css +0 -1
  711. package/src/themes/base/SplitButton-parameters.css +0 -2
  712. package/src/themes/base/sizes-parameters.css +29 -3
  713. package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
  714. package/src/themes/sap_fiori_3/sizes-parameters.css +6 -0
  715. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  716. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +6 -0
  717. package/src/themes/sap_fiori_3_hcb/ColorPicker-parameters.css +5 -1
  718. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +0 -1
  719. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  720. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +6 -0
  721. package/src/themes/sap_fiori_3_hcw/ColorPicker-parameters.css +5 -1
  722. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +0 -1
  723. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  724. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +6 -0
  725. package/src/themes/sap_horizon/ColorPicker-parameters.css +0 -4
  726. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +0 -1
  727. package/src/themes/sap_horizon/SplitButton-parameters.css +0 -1
  728. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  729. package/src/themes/sap_horizon/sizes-parameters.css +0 -1
  730. package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +0 -4
  731. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +0 -1
  732. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +0 -1
  733. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  734. package/src/themes/sap_horizon_dark/sizes-parameters.css +0 -1
  735. package/src/themes/sap_horizon_hcb/ColorPicker-parameters.css +3 -4
  736. package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +0 -1
  737. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +0 -1
  738. package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  739. package/src/themes/sap_horizon_hcb/sizes-parameters.css +3 -1
  740. package/src/themes/sap_horizon_hcw/ColorPicker-parameters.css +3 -4
  741. package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +0 -1
  742. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +0 -1
  743. package/src/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
  744. package/src/themes/sap_horizon_hcw/sizes-parameters.css +3 -1
  745. package/cypress/specs/ColorPalette.cy.ts +0 -47
  746. package/cypress/specs/F6.cy.ts +0 -793
  747. package/cypress/specs/MessageStrip.cy.ts +0 -91
  748. package/cypress/specs/MultiComboBox.cy.ts +0 -22
  749. package/cypress/specs/RTL.cy.ts +0 -17
  750. package/cypress/specs/Select.cy.ts +0 -39
  751. package/cypress/specs/Table.cy.ts +0 -636
  752. package/cypress/specs/TableLoading.cy.ts +0 -44
  753. package/cypress/specs/Title.cy.ts +0 -37
  754. package/cypress/specs/Tokenizer.cy.ts +0 -114
  755. package/cypress/specs/base/Tooltips.cy.ts +0 -55
  756. package/dist/NavigationMenu.d.ts +0 -34
  757. package/dist/NavigationMenu.js +0 -64
  758. package/dist/NavigationMenu.js.map +0 -1
  759. package/dist/NavigationMenuItem.d.ts +0 -76
  760. package/dist/NavigationMenuItem.js +0 -76
  761. package/dist/NavigationMenuItem.js.map +0 -1
  762. package/dist/NavigationMenuItemTemplate.d.ts +0 -3
  763. package/dist/NavigationMenuItemTemplate.js +0 -44
  764. package/dist/NavigationMenuItemTemplate.js.map +0 -1
  765. package/dist/NavigationMenuTemplate.d.ts +0 -2
  766. package/dist/NavigationMenuTemplate.js +0 -15
  767. package/dist/NavigationMenuTemplate.js.map +0 -1
  768. package/dist/css/themes/NavigationMenu.css +0 -1
  769. package/dist/css/themes/NavigationMenuItem.css +0 -1
  770. package/dist/generated/themes/NavigationMenu.css.d.ts +0 -2
  771. package/dist/generated/themes/NavigationMenu.css.js +0 -8
  772. package/dist/generated/themes/NavigationMenu.css.js.map +0 -1
  773. package/dist/generated/themes/NavigationMenuItem.css.d.ts +0 -2
  774. package/dist/generated/themes/NavigationMenuItem.css.js +0 -8
  775. package/dist/generated/themes/NavigationMenuItem.css.js.map +0 -1
  776. package/src/NavigationMenuItemTemplate.tsx +0 -144
  777. package/src/NavigationMenuTemplate.tsx +0 -68
  778. package/src/themes/NavigationMenu.css +0 -17
  779. package/src/themes/NavigationMenuItem.css +0 -56
  780. /package/cypress/specs/{TableUtils.cy.ts → TableUtils.cy.tsx} +0 -0
  781. /package/cypress/specs/base/{InvisibleMessage.cy.ts → InvisibleMessage.cy.tsx} +0 -0
@@ -0,0 +1,906 @@
1
+ import "@ui5/webcomponents-base/dist/features/F6Navigation.js";
2
+ import Button from "../../src/Button.js";
3
+
4
+ describe("F6 navigation", () => {
5
+ describe("F6 Forward navigation", () => {
6
+ it("tests navigation", () => {
7
+ cy.mount(
8
+ <div>
9
+ <div class="section">
10
+ <button id="before">Before element</button>
11
+ </div>
12
+ <div class="section" data-sap-ui-fastnavgroup="true">
13
+ <Button id="first">First focusable</Button>
14
+ </div>
15
+ <div class="section">
16
+ <Button>Something focusable</Button>
17
+ </div>
18
+ <div class="section" data-sap-ui-fastnavgroup="true">
19
+ <Button id="second">Second focusable</Button>
20
+ </div>
21
+ <div class="section">
22
+ <Button>Something focusable</Button>
23
+ </div>
24
+ <div class="section" data-sap-ui-fastnavgroup="true">
25
+ <Button id="third">Third focusable</Button>
26
+ </div>
27
+ <div class="section">
28
+ <Button>After Element</Button>
29
+ </div>
30
+ </div>
31
+ );
32
+
33
+ // act
34
+ cy.get("#before").focus();
35
+ cy.realPress("F6");
36
+
37
+ // assert 1st group is focused
38
+ cy.get("#first")
39
+ .should("be.focused");
40
+
41
+ // act
42
+ cy.realPress("F6");
43
+
44
+ // assert 2nd group is focused
45
+ cy.get("#second")
46
+ .should("be.focused");
47
+
48
+ // act
49
+ cy.realPress("F6");
50
+
51
+ // assert 3rd group is focused
52
+ cy.get("#third")
53
+ .should("be.focused");
54
+
55
+ // act
56
+ cy.realPress("F6");
57
+
58
+ // assert 1st group is focused agian
59
+ cy.get("#first")
60
+ .should("be.focused");
61
+ });
62
+
63
+ it("tests navigation with hidden elements", () => {
64
+ cy.mount(<div>
65
+ <div class="section">
66
+ <button id="before">Before element</button>
67
+ </div>
68
+ <div class="section" data-sap-ui-fastnavgroup="true">
69
+ <Button id="first">First focusable</Button>
70
+ </div>
71
+ <div class="section" data-sap-ui-fastnavgroup="true">
72
+ <Button style={{ visibility: "hidden" }}>Hidden</Button>
73
+ </div>
74
+ <div class="section" data-sap-ui-fastnavgroup="true" style={{ visibility: "hidden" }}>
75
+ <Button>Hidden</Button>
76
+ </div>
77
+ <div class="section" data-sap-ui-fastnavgroup="true">
78
+ <Button style={{ display: "none" }}>Hidden</Button>
79
+ </div>
80
+ <div class="section" data-sap-ui-fastnavgroup="true" style={{ display: "none" }}>
81
+ <Button>Hidden</Button>
82
+ </div>
83
+ <div class="section">
84
+ <Button>Something focusable</Button>
85
+ </div>
86
+ <div class="section" data-sap-ui-fastnavgroup="true">
87
+ <Button id="second">Second focusable</Button>
88
+ </div>
89
+ <div class="section">
90
+ <Button>Something focusable</Button>
91
+ </div>
92
+ <div class="section" data-sap-ui-fastnavgroup="true">
93
+ <Button id="third">Third focusable</Button>
94
+ </div>
95
+ <div class="section">
96
+ <Button>After Element</Button>
97
+ </div>
98
+ </div>);
99
+
100
+ // act
101
+ cy.get("#before").focus();
102
+ cy.realPress("F6");
103
+
104
+ // assert 1st group is focused
105
+ cy.get("#first")
106
+ .should("be.focused");
107
+
108
+ // act
109
+ cy.realPress("F6");
110
+
111
+ // assert 2nd group is focused
112
+ cy.get("#second")
113
+ .should("be.focused");
114
+
115
+ // act
116
+ cy.realPress("F6");
117
+
118
+ // assert 3rd group is focused
119
+ cy.get("#third")
120
+ .should("be.focused");
121
+
122
+ // act
123
+ cy.realPress("F6");
124
+
125
+ // assert 1st group is focused agian
126
+ cy.get("#first")
127
+ .should("be.focused");
128
+ });
129
+
130
+ it("tests navigation with empty group", () => {
131
+ cy.mount(<div>
132
+ <div class="section">
133
+ <button id="before">Before element</button>
134
+ </div>
135
+ <div class="section" data-sap-ui-fastnavgroup="true">
136
+ <Button id="first">First focusable</Button>
137
+ </div>
138
+ <div class="section">
139
+ <Button>Something focusable</Button>
140
+ </div>
141
+ <div class="section" data-sap-ui-fastnavgroup="true">
142
+ Group without focusable element
143
+ </div>
144
+ <div class="section">
145
+ <Button>Something focusable</Button>
146
+ </div>
147
+ <div class="section" data-sap-ui-fastnavgroup="true">
148
+ <Button id="second">Second focusable</Button>
149
+ </div>
150
+ <div class="section">
151
+ <Button>After Element</Button>
152
+ </div>
153
+ </div>);
154
+
155
+ // act
156
+ cy.get("#before").focus();
157
+ cy.realPress("F6");
158
+
159
+ // assert 1st group is focused
160
+ cy.get("#first")
161
+ .should("be.focused");
162
+
163
+ // act
164
+ cy.realPress("F6");
165
+
166
+ // assert 2nd group is focused (an empty group is skipped)
167
+ cy.get("#second")
168
+ .should("be.focused");
169
+
170
+ // act
171
+ cy.realPress("F6");
172
+
173
+ // assert 1st group is focused agian
174
+ cy.get("#first")
175
+ .should("be.focused");
176
+ });
177
+
178
+ it("tests navigation with nested groups", () => {
179
+ cy.mount(
180
+ <>
181
+ <div class="section">
182
+ <button id="before">Before element</button>
183
+ </div>
184
+ <div class="section" data-sap-ui-fastnavgroup="true">
185
+ <Button id="first">First focusable</Button>
186
+ <div class="section" data-sap-ui-fastnavgroup="true">
187
+ <Button id="second">Second focusable</Button>
188
+ </div>
189
+ </div>
190
+ <div class="section">
191
+ <Button>Something focusable</Button>
192
+ </div>
193
+ <div class="section" data-sap-ui-fastnavgroup="true">
194
+ <Button id="third">Third focusable</Button>
195
+ </div>
196
+ <div class="section">
197
+ <Button>After Element</Button>
198
+ </div>
199
+ </>
200
+ );
201
+
202
+ // act
203
+ cy.get("#before").focus();
204
+ cy.realPress("F6");
205
+
206
+ // assert 1st group is focused
207
+ cy.get("#first")
208
+ .should("be.focused");
209
+
210
+ // act
211
+ cy.realPress("F6");
212
+
213
+ // assert 2nd group is focused (an empty group is skipped)
214
+ cy.get("#second")
215
+ .should("be.focused");
216
+
217
+ // act
218
+ cy.realPress("F6");
219
+
220
+ // assert 3rd group is focused
221
+ cy.get("#third")
222
+ .should("be.focused");
223
+
224
+ // act
225
+ cy.realPress("F6");
226
+
227
+ // assert 1st group is focused agian
228
+ cy.get("#first")
229
+ .should("be.focused");
230
+ });
231
+
232
+ it("tests navigation with nesting inside empty fastnav-group parent", () => {
233
+ cy.mount(
234
+ <>
235
+ <div class="section">
236
+ <button id="before">Before element</button>
237
+ </div>
238
+ <div class="section" data-sap-ui-fastnavgroup="true">
239
+ <div class="section" data-sap-ui-fastnavgroup="true">
240
+ <Button id="first">First focusable</Button>
241
+ </div>
242
+ </div>
243
+ <div class="section">
244
+ <Button>Something focusable</Button>
245
+ </div>
246
+ <div class="section" data-sap-ui-fastnavgroup="true">
247
+ <div class="section" data-sap-ui-fastnavgroup="true">
248
+ <Button id="second">First focusable</Button>
249
+ </div>
250
+ </div>
251
+ <div class="section">
252
+ <Button>Something focusable</Button>
253
+ </div>
254
+ <div class="section" data-sap-ui-fastnavgroup="true">
255
+ <Button id="third">Second focusable</Button>
256
+ </div>
257
+ <div class="section">
258
+ <Button>After Element</Button>
259
+ </div>
260
+ </>
261
+ );
262
+
263
+ // act
264
+ cy.get("#before").focus();
265
+ cy.realPress("F6");
266
+
267
+ // assert 1st group is focused
268
+ cy.get("#first")
269
+ .should("be.focused");
270
+
271
+ // act
272
+ cy.realPress("F6");
273
+
274
+ // assert 2nd group is focused (an empty group is skipped)
275
+ cy.get("#second")
276
+ .should("be.focused");
277
+
278
+ // act
279
+ cy.get("#second").realPress("F6");
280
+
281
+ // assert 3rd group is focused
282
+ cy.get("#third")
283
+ .should("be.focused");
284
+
285
+ // act
286
+ cy.realPress("F6");
287
+
288
+ // assert 1st group is focused agian
289
+ cy.get("#first")
290
+ .should("be.focused");
291
+ });
292
+
293
+ it("tests navigation with group as a focusable element", () => {
294
+ cy.mount(
295
+ <>
296
+ <div class="section">
297
+ <button id="before">Before element</button>
298
+ </div>
299
+ <div class="section" data-sap-ui-fastnavgroup="true">
300
+ <Button id="first">First focusable</Button>
301
+ </div>
302
+ <div class="section">
303
+ <Button>Something focusable</Button>
304
+ </div>
305
+ <div class="section" tabindex={0} id="second" data-sap-ui-fastnavgroup="true">
306
+ Second focusable
307
+ </div>
308
+ <div class="section">
309
+ <Button>Something focusable</Button>
310
+ </div>
311
+ <div class="section" data-sap-ui-fastnavgroup="true">
312
+ <Button id="third">Third focusable</Button>
313
+ </div>
314
+ <div class="section">
315
+ <Button>After Element</Button>
316
+ </div>
317
+ </>
318
+ );
319
+
320
+ // act
321
+ cy.get("#before").focus();
322
+ cy.realPress("F6");
323
+
324
+ // assert 1st group is focused
325
+ cy.get("#first")
326
+ .should("be.focused");
327
+
328
+ // act
329
+ cy.get("#first").realPress("F6");
330
+
331
+ // assert 2nd group is focused (an empty group is skipped)
332
+ cy.get("#second")
333
+ .should("be.focused");
334
+
335
+ // act
336
+ cy.realPress("F6");
337
+
338
+ // assert 3rd group is focused
339
+ cy.get("#third")
340
+ .should("be.focused");
341
+
342
+ // act
343
+ cy.realPress("F6");
344
+
345
+ // assert 1st group is focused agian
346
+ cy.get("#first")
347
+ .should("be.focused");
348
+ });
349
+
350
+ it("tests navigation without a focusable element", () => {
351
+ cy.mount(
352
+ <>
353
+ <div class="section">
354
+ <Button id="first">Before element</Button>
355
+ </div>
356
+ <div class="section" data-sap-ui-fastnavgroup="true">
357
+ Group without focusable element
358
+ </div>
359
+ <div class="section">
360
+ <Button>Something focusable</Button>
361
+ </div>
362
+ <div class="section" data-sap-ui-fastnavgroup="true">
363
+ Group without focusable element
364
+ </div>
365
+ <div class="section">
366
+ <Button>Something focusable</Button>
367
+ </div>
368
+ <div class="section">
369
+ <Button>After Element</Button>
370
+ </div>
371
+ </>
372
+ );
373
+
374
+ // act
375
+ cy.get("#first")
376
+ .realClick();
377
+
378
+ // assert clicked btn is also the focused element
379
+ cy.get("#first")
380
+ .should("be.focused");
381
+
382
+ // act
383
+ cy.realPress("F6");
384
+
385
+ // assert same button remains focused as there is no fasnav group with focusable elements
386
+ cy.get("#first")
387
+ .should("be.focused");
388
+ });
389
+
390
+ it("tests navigation with a single group", () => {
391
+ cy.mount(
392
+ <>
393
+ <div class="section">
394
+ <button id="before">Before element</button>
395
+ </div>
396
+ <div class="section" data-sap-ui-fastnavgroup="true">
397
+ <Button id="first">Before element</Button>
398
+ </div>
399
+ <div class="section">
400
+ <Button>Something focusable</Button>
401
+ </div>
402
+ <div class="section">
403
+ <Button>Something focusable</Button>
404
+ </div>
405
+ <div class="section">
406
+ <Button>After Element</Button>
407
+ </div>
408
+ </>
409
+ );
410
+
411
+ // act
412
+ cy.get("#before").focus();
413
+ cy.realPress("F6");
414
+
415
+ // assert 1st group is focused
416
+ cy.get("#first")
417
+ .should("be.focused");
418
+ });
419
+ });
420
+
421
+ describe("F6 Backward navigation", () => {
422
+ it("tests navigation", () => {
423
+ cy.mount(<div>
424
+ <div class="section">
425
+ <button id="before">Before element</button>
426
+ </div>
427
+ <div class="section" data-sap-ui-fastnavgroup="true">
428
+ <Button id="first">First focusable</Button>
429
+ </div>
430
+ <div class="section">
431
+ <Button>Something focusable</Button>
432
+ </div>
433
+ <div class="section" data-sap-ui-fastnavgroup="true">
434
+ <Button id="second">Second focusable</Button>
435
+ </div>
436
+ <div class="section">
437
+ <Button>Something focusable</Button>
438
+ </div>
439
+ <div class="section" data-sap-ui-fastnavgroup="true">
440
+ <Button id="third">Third focusable</Button>
441
+ </div>
442
+ <div class="section">
443
+ <Button>After Element</Button>
444
+ </div>
445
+ </div>);
446
+
447
+ // act
448
+ cy.get("#before").focus();
449
+ cy.realPress(["Shift", "F6"]);
450
+
451
+ // assert 3rd group is focused
452
+ cy.get("#third")
453
+ .should("be.focused");
454
+
455
+ // act
456
+ cy.realPress(["Shift", "F6"]);
457
+
458
+ // assert 2nd group is focused
459
+ cy.get("#second")
460
+ .should("be.focused");
461
+
462
+ // act
463
+ cy.realPress(["Shift", "F6"]);
464
+
465
+ // assert 1st group is focused
466
+ cy.get("#first")
467
+ .should("be.focused");
468
+
469
+ // act
470
+ cy.realPress(["Shift", "F6"]);
471
+
472
+ // assert 3rd group is focused agian
473
+ cy.get("#third")
474
+ .should("be.focused");
475
+ });
476
+
477
+ it("tests navigation with hidden elements", () => {
478
+ cy.mount(<div>
479
+ <div class="section">
480
+ <button id="before">Before element</button>
481
+ </div>
482
+ <div class="section" data-sap-ui-fastnavgroup="true">
483
+ <Button id="first">First focusable</Button>
484
+ </div>
485
+ <div class="section" data-sap-ui-fastnavgroup="true">
486
+ <Button style={{ visibility: "hidden" }}>Hidden</Button>
487
+ </div>
488
+ <div class="section" data-sap-ui-fastnavgroup="true" style={{ visibility: "hidden" }}>
489
+ <Button>Hidden</Button>
490
+ </div>
491
+ <div class="section" data-sap-ui-fastnavgroup="true">
492
+ <Button style={{ display: "none" }}>Hidden</Button>
493
+ </div>
494
+ <div class="section" data-sap-ui-fastnavgroup="true" style={{ display: "none" }}>
495
+ <Button>Hidden</Button>
496
+ </div>
497
+ <div class="section">
498
+ <Button>Something focusable</Button>
499
+ </div>
500
+ <div class="section" data-sap-ui-fastnavgroup="true">
501
+ <Button id="second">Second focusable</Button>
502
+ </div>
503
+ <div class="section">
504
+ <Button>Something focusable</Button>
505
+ </div>
506
+ <div class="section" data-sap-ui-fastnavgroup="true">
507
+ <Button id="third">Third focusable</Button>
508
+ </div>
509
+ <div class="section">
510
+ <Button>After Element</Button>
511
+ </div>
512
+ </div>);
513
+
514
+ // act
515
+ cy.get("#before").focus();
516
+ cy.realPress(["Shift", "F6"]);
517
+
518
+ // assert 3rd group is focused
519
+ cy.get("#third")
520
+ .should("be.focused");
521
+
522
+ // act
523
+ cy.realPress(["Shift", "F6"]);
524
+
525
+ // assert 2nd group is focused
526
+ cy.get("#second")
527
+ .should("be.focused");
528
+
529
+ // act
530
+ cy.realPress(["Shift", "F6"]);
531
+
532
+ // assert 1st group is focused
533
+ cy.get("#first")
534
+ .should("be.focused");
535
+
536
+ // act
537
+ cy.realPress(["Shift", "F6"]);
538
+
539
+ // assert 3rd group is focused agian
540
+ cy.get("#third")
541
+ .should("be.focused");
542
+ });
543
+
544
+ it("tests navigation with empty group", () => {
545
+ cy.mount(<div>
546
+ <div class="section">
547
+ <button id="before">Before element</button>
548
+ </div>
549
+ <div class="section" data-sap-ui-fastnavgroup="true">
550
+ <Button id="first">First focusable</Button>
551
+ </div>
552
+ <div class="section">
553
+ <Button>Something focusable</Button>
554
+ </div>
555
+ <div class="section" data-sap-ui-fastnavgroup="true">
556
+ Group without focusable element
557
+ </div>
558
+ <div class="section">
559
+ <Button>Something focusable</Button>
560
+ </div>
561
+ <div class="section" data-sap-ui-fastnavgroup="true">
562
+ <Button id="second">Second focusable</Button>
563
+ </div>
564
+ <div class="section">
565
+ <Button>After Element</Button>
566
+ </div>
567
+ </div>);
568
+
569
+ // act
570
+ cy.get("#before").focus();
571
+ cy.realPress(["Shift", "F6"]);
572
+
573
+ // assert 2nd group is focused
574
+ cy.get("#second")
575
+ .should("be.focused");
576
+
577
+ // act
578
+ cy.realPress(["Shift", "F6"]);
579
+
580
+ // assert 1st group is focused (an empty group is skipped)
581
+ cy.get("#first")
582
+ .should("be.focused");
583
+
584
+ // act
585
+ cy.realPress(["Shift", "F6"]);
586
+
587
+ // assert 1st group is focused agian
588
+ cy.get("#second")
589
+ .should("be.focused");
590
+ });
591
+
592
+ it("tests navigation with nested groups", () => {
593
+ cy.mount(
594
+ <>
595
+ <div class="section">
596
+ <button id="before">Before element</button>
597
+ </div>
598
+ <div class="section" data-sap-ui-fastnavgroup="true">
599
+ <Button id="first">First focusable</Button>
600
+ <div class="section" data-sap-ui-fastnavgroup="true">
601
+ <Button id="second">Second focusable</Button>
602
+ </div>
603
+ </div>
604
+ <div class="section">
605
+ <Button>Something focusable</Button>
606
+ </div>
607
+ <div class="section" data-sap-ui-fastnavgroup="true">
608
+ <Button id="third">Third focusable</Button>
609
+ </div>
610
+ <div class="section">
611
+ <Button>After Element</Button>
612
+ </div>
613
+ </>
614
+ );
615
+
616
+ // act
617
+ cy.get("#before").focus();
618
+ cy.realPress(["Shift", "F6"]);
619
+
620
+ // assert 3rd group is focused
621
+ cy.get("#third")
622
+ .should("be.focused");
623
+
624
+ // act
625
+ cy.realPress(["Shift", "F6"]);
626
+
627
+ // assert 2nd group is focused (an empty group is skipped)
628
+ cy.get("#second")
629
+ .should("be.focused");
630
+
631
+ // act
632
+ cy.realPress(["Shift", "F6"]);
633
+
634
+ // assert 1st group is focused
635
+ cy.get("#first")
636
+ .should("be.focused");
637
+
638
+ // act
639
+ cy.realPress(["Shift", "F6"]);
640
+
641
+ // assert 3rd group is focused agian
642
+ cy.get("#third")
643
+ .should("be.focused");
644
+ });
645
+
646
+ it("tests navigation with nesting inside empty fastnav-group parent", () => {
647
+ cy.mount(
648
+ <>
649
+ <div class="section">
650
+ <button id="before">Before element</button>
651
+ </div>
652
+ <div class="section" data-sap-ui-fastnavgroup="true">
653
+ <div class="section" data-sap-ui-fastnavgroup="true">
654
+ <Button id="first">First focusable</Button>
655
+ </div>
656
+ </div>
657
+ <div class="section">
658
+ <Button>Something focusable</Button>
659
+ </div>
660
+ <div class="section" data-sap-ui-fastnavgroup="true">
661
+ <div class="section" data-sap-ui-fastnavgroup="true">
662
+ <Button id="second">First focusable</Button>
663
+ </div>
664
+ </div>
665
+ <div class="section">
666
+ <Button>Something focusable</Button>
667
+ </div>
668
+ <div class="section" data-sap-ui-fastnavgroup="true">
669
+ <Button id="third">Second focusable</Button>
670
+ </div>
671
+ <div class="section">
672
+ <Button>After Element</Button>
673
+ </div>
674
+ </>
675
+ );
676
+
677
+ // act
678
+ cy.get("#before").focus();
679
+ cy.realPress(["Shift", "F6"]);
680
+
681
+ // assert 3rd group is focused
682
+ cy.get("#third")
683
+ .should("be.focused");
684
+
685
+ // act
686
+ cy.realPress(["Shift", "F6"]);
687
+
688
+ // assert 2nd group is focused (an empty group is skipped)
689
+ cy.get("#second")
690
+ .should("be.focused");
691
+
692
+ // act
693
+ cy.realPress(["Shift", "F6"]);
694
+
695
+ // assert 1st group is focused
696
+ cy.get("#first")
697
+ .should("be.focused");
698
+
699
+ // act
700
+ cy.realPress(["Shift", "F6"]);
701
+
702
+ // assert 1st group is focused agian
703
+ cy.get("#third")
704
+ .should("be.focused");
705
+ });
706
+
707
+ it("tests navigation with group as a focusable element", () => {
708
+ cy.mount(
709
+ <>
710
+ <div class="section">
711
+ <button id="before">Before element</button>
712
+ </div>
713
+ <div class="section" data-sap-ui-fastnavgroup="true">
714
+ <Button id="first">First focusable</Button>
715
+ </div>
716
+ <div class="section">
717
+ <Button>Something focusable</Button>
718
+ </div>
719
+ <div class="section" tabindex={0} id="second" data-sap-ui-fastnavgroup="true">
720
+ Second focusable
721
+ </div>
722
+ <div class="section">
723
+ <Button>Something focusable</Button>
724
+ </div>
725
+ <div class="section" data-sap-ui-fastnavgroup="true">
726
+ <Button id="third">Third focusable</Button>
727
+ </div>
728
+ <div class="section">
729
+ <Button>After Element</Button>
730
+ </div>
731
+ </>
732
+ );
733
+
734
+ // act
735
+ cy.get("#before").focus();
736
+ cy.realPress(["Shift", "F6"]);
737
+
738
+ // assert 3rd group is focused
739
+ cy.get("#third")
740
+ .should("be.focused");
741
+
742
+ // act
743
+ cy.realPress(["Shift", "F6"]);
744
+
745
+ // assert 2nd group is focused (an empty group is skipped)
746
+ cy.get("#second")
747
+ .should("be.focused");
748
+
749
+ // act
750
+ cy.realPress(["Shift", "F6"]);
751
+
752
+ // assert 1st group is focused
753
+ cy.get("#first")
754
+ .should("be.focused");
755
+
756
+ // act
757
+ cy.realPress(["Shift", "F6"]);
758
+
759
+ // assert 3rd group is focused agian
760
+ cy.get("#third")
761
+ .should("be.focused");
762
+ });
763
+
764
+ it("tests navigation without a focusable element", () => {
765
+ cy.mount(
766
+ <>
767
+ <div class="section">
768
+ <Button id="first">Before element</Button>
769
+ </div>
770
+ <div class="section" data-sap-ui-fastnavgroup="true">
771
+ Group without focusable element
772
+ </div>
773
+ <div class="section">
774
+ <Button>Something focusable</Button>
775
+ </div>
776
+ <div class="section" data-sap-ui-fastnavgroup="true">
777
+ Group without focusable element
778
+ </div>
779
+ <div class="section">
780
+ <Button>Something focusable</Button>
781
+ </div>
782
+ <div class="section">
783
+ <Button>After Element</Button>
784
+ </div>
785
+ </>
786
+ );
787
+
788
+ // act
789
+ cy.get("#first")
790
+ .realClick();
791
+
792
+ // assert clicked btn is also the focused element
793
+ cy.get("#first")
794
+ .should("be.focused");
795
+
796
+ // act
797
+ cy.realPress(["Shift", "F6"]);
798
+
799
+ // assert same button remains focused as there is no fasnav group with focusable elements
800
+ cy.get("#first")
801
+ .should("be.focused");
802
+ });
803
+
804
+ it("tests navigation with a single group", () => {
805
+ cy.mount(
806
+ <>
807
+ <div class="section">
808
+ <button id="before">Before element</button>
809
+ </div>
810
+ <div class="section" data-sap-ui-fastnavgroup="true">
811
+ <Button id="first">Before element</Button>
812
+ </div>
813
+ <div class="section">
814
+ <Button>Something focusable</Button>
815
+ </div>
816
+ <div class="section">
817
+ <Button>Something focusable</Button>
818
+ </div>
819
+ <div class="section">
820
+ <Button>After Element</Button>
821
+ </div>
822
+ </>
823
+ );
824
+
825
+ // act
826
+ cy.get("#before").focus();
827
+ cy.realPress(["Shift", "F6"]);
828
+
829
+ // assert 1st group is focused
830
+ cy.get("#first")
831
+ .should("be.focused");
832
+ });
833
+ });
834
+
835
+ describe("Groups in container", () => {
836
+ it("tests forward navigation", () => {
837
+ cy.mount(
838
+ <div>
839
+ <div class="section" data-sap-ui-fastnavgroup="true">
840
+ <Button>Non group focusable</Button>
841
+ </div>
842
+ <div data-sap-ui-fastnavgroup-container="true" data-sap-ui-fastnavgroup="true">
843
+ <div class="section" data-sap-ui-fastnavgroup="true">
844
+ <Button id="first">First group focusable</Button>
845
+ </div>
846
+ <div class="section" data-sap-ui-fastnavgroup="true">
847
+ <Button id="second">Second group focusable</Button>
848
+ </div>
849
+ </div>
850
+ <div class="section" data-sap-ui-fastnavgroup="true">
851
+ <Button>Non group focusable</Button>
852
+ </div>
853
+ </div>
854
+ );
855
+
856
+ // act
857
+ cy.get("#first")
858
+ .realClick();
859
+
860
+ cy.realPress("F6");
861
+
862
+ cy.get("#second")
863
+ .should("be.focused");
864
+
865
+ cy.realPress("F6");
866
+
867
+ cy.get("#first")
868
+ .should("be.focused");
869
+ });
870
+
871
+ it("tests backward navigation", () => {
872
+ cy.mount(
873
+ <div>
874
+ <div class="section" data-sap-ui-fastnavgroup="true">
875
+ <ui5-button>Non group focusable</ui5-button>
876
+ </div>
877
+ <div data-sap-ui-fastnavgroup-container="true">
878
+ <div class="section" data-sap-ui-fastnavgroup="true">
879
+ <ui5-button id="first">First group focusable</ui5-button>
880
+ </div>
881
+ <div class="section" data-sap-ui-fastnavgroup="true">
882
+ <ui5-button id="second">Second group focusable</ui5-button>
883
+ </div>
884
+ </div>
885
+ <div class="section" data-sap-ui-fastnavgroup="true">
886
+ <ui5-button>Non group focusable</ui5-button>
887
+ </div>
888
+ </div>
889
+ );
890
+
891
+ // act
892
+ cy.get("#first")
893
+ .realClick();
894
+
895
+ cy.realPress(["Shift", "F6"]);
896
+
897
+ cy.get("#second")
898
+ .should("be.focused");
899
+
900
+ cy.realPress(["Shift", "F6"]);
901
+
902
+ cy.get("#first")
903
+ .should("be.focused");
904
+ });
905
+ });
906
+ });