@ui5/webcomponents 2.7.0-rc.2 → 2.8.0-rc.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 (549) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/cypress/specs/Avatar.cy.tsx +18 -0
  3. package/cypress/specs/{Button.cy.ts → Button.cy.tsx} +42 -37
  4. package/cypress/specs/CalendarLegend.cy.tsx +77 -0
  5. package/cypress/specs/Card.cy.tsx +330 -0
  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.ts → Dialog.cy.tsx} +15 -13
  10. package/cypress/specs/{ExpandableText.cy.ts → ExpandableText.cy.tsx} +25 -22
  11. package/cypress/specs/{F6.cy.ts → F6.cy.tsx} +346 -301
  12. package/cypress/specs/{Form.cy.ts → Form.cy.tsx} +326 -324
  13. package/cypress/specs/FormSupport.cy.tsx +885 -0
  14. package/cypress/specs/Input.cy.tsx +537 -0
  15. package/cypress/specs/{Label.cy.ts → Label.cy.tsx} +62 -46
  16. package/cypress/specs/Link.cy.tsx +31 -0
  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} +182 -102
  20. package/cypress/specs/MessageStrip.cy.tsx +164 -0
  21. package/cypress/specs/{MultiComboBox.cy.ts → MultiComboBox.cy.tsx} +16 -18
  22. package/cypress/specs/{MultiInput.cy.ts → MultiInput.cy.tsx} +15 -14
  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} +28 -16
  26. package/cypress/specs/{ResponsivePopover.mobile.cy.ts → ResponsivePopover.mobile.cy.tsx} +35 -16
  27. package/cypress/specs/{Select.cy.ts → Select.cy.tsx} +14 -16
  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} +59 -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 +21 -3
  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/Avatar.d.ts +1 -1
  54. package/dist/Avatar.js +2 -1
  55. package/dist/Avatar.js.map +1 -1
  56. package/dist/ButtonBadge.d.ts +11 -5
  57. package/dist/ButtonBadge.js +12 -3
  58. package/dist/ButtonBadge.js.map +1 -1
  59. package/dist/ButtonBadgeTemplate.js +1 -1
  60. package/dist/ButtonBadgeTemplate.js.map +1 -1
  61. package/dist/Calendar.d.ts +1 -0
  62. package/dist/Calendar.js +8 -3
  63. package/dist/Calendar.js.map +1 -1
  64. package/dist/DayPicker.d.ts +2 -0
  65. package/dist/DayPicker.js +12 -3
  66. package/dist/DayPicker.js.map +1 -1
  67. package/dist/DayPickerTemplate.js +1 -1
  68. package/dist/DayPickerTemplate.js.map +1 -1
  69. package/dist/FileUploader.js +1 -1
  70. package/dist/FileUploader.js.map +1 -1
  71. package/dist/Input.d.ts +3 -0
  72. package/dist/Input.js +18 -4
  73. package/dist/Input.js.map +1 -1
  74. package/dist/List.js +4 -0
  75. package/dist/List.js.map +1 -1
  76. package/dist/MenuItem.d.ts +5 -5
  77. package/dist/MenuItem.js.map +1 -1
  78. package/dist/MenuItemTemplate.js +1 -1
  79. package/dist/MenuItemTemplate.js.map +1 -1
  80. package/dist/MessageStrip.js +1 -3
  81. package/dist/MessageStrip.js.map +1 -1
  82. package/dist/RadioButtonGroup.js +3 -2
  83. package/dist/RadioButtonGroup.js.map +1 -1
  84. package/dist/Select.d.ts +1 -0
  85. package/dist/Select.js +7 -1
  86. package/dist/Select.js.map +1 -1
  87. package/dist/SelectPopoverTemplate.js +1 -1
  88. package/dist/SelectPopoverTemplate.js.map +1 -1
  89. package/dist/SpecialCalendarDate.d.ts +6 -0
  90. package/dist/SpecialCalendarDate.js +9 -0
  91. package/dist/SpecialCalendarDate.js.map +1 -1
  92. package/dist/TableVirtualizer.js +4 -2
  93. package/dist/TableVirtualizer.js.map +1 -1
  94. package/dist/Tokenizer.js +1 -1
  95. package/dist/Tokenizer.js.map +1 -1
  96. package/dist/YearPicker.js +2 -2
  97. package/dist/YearPicker.js.map +1 -1
  98. package/dist/css/themes/Avatar.css +1 -1
  99. package/dist/css/themes/AvatarGroup.css +1 -1
  100. package/dist/css/themes/Bar.css +1 -1
  101. package/dist/css/themes/Breadcrumbs.css +1 -1
  102. package/dist/css/themes/BusyIndicator.css +1 -1
  103. package/dist/css/themes/Button.css +1 -1
  104. package/dist/css/themes/ButtonBadge.css +1 -1
  105. package/dist/css/themes/Calendar.css +1 -1
  106. package/dist/css/themes/CalendarHeader.css +1 -1
  107. package/dist/css/themes/CalendarLegend.css +1 -1
  108. package/dist/css/themes/CalendarLegendItem.css +1 -1
  109. package/dist/css/themes/Card.css +1 -1
  110. package/dist/css/themes/CardHeader.css +1 -1
  111. package/dist/css/themes/Carousel.css +1 -1
  112. package/dist/css/themes/CheckBox.css +1 -1
  113. package/dist/css/themes/ColorPalette.css +1 -1
  114. package/dist/css/themes/ColorPaletteItem.css +1 -1
  115. package/dist/css/themes/ColorPalettePopover.css +1 -1
  116. package/dist/css/themes/ColorPicker.css +1 -1
  117. package/dist/css/themes/ComboBox.css +1 -1
  118. package/dist/css/themes/ComboBoxItem.css +1 -1
  119. package/dist/css/themes/DatePicker.css +1 -1
  120. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  121. package/dist/css/themes/DayPicker.css +1 -1
  122. package/dist/css/themes/Dialog.css +1 -1
  123. package/dist/css/themes/FileUploader.css +1 -1
  124. package/dist/css/themes/Form.css +1 -1
  125. package/dist/css/themes/FormItem.css +1 -1
  126. package/dist/css/themes/FormItemSpan.css +1 -1
  127. package/dist/css/themes/GrowingButton.css +1 -1
  128. package/dist/css/themes/Icon.css +1 -1
  129. package/dist/css/themes/Input.css +1 -1
  130. package/dist/css/themes/InputIcon.css +1 -1
  131. package/dist/css/themes/InputSharedStyles.css +1 -1
  132. package/dist/css/themes/Link.css +1 -1
  133. package/dist/css/themes/List.css +1 -1
  134. package/dist/css/themes/ListItem.css +1 -1
  135. package/dist/css/themes/ListItemBase.css +1 -1
  136. package/dist/css/themes/ListItemCustom.css +1 -1
  137. package/dist/css/themes/ListItemGroup.css +1 -1
  138. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  139. package/dist/css/themes/ListItemIcon.css +1 -1
  140. package/dist/css/themes/Menu.css +1 -1
  141. package/dist/css/themes/MenuItem.css +1 -1
  142. package/dist/css/themes/MessageStrip.css +1 -1
  143. package/dist/css/themes/MonthPicker.css +1 -1
  144. package/dist/css/themes/MultiComboBox.css +1 -1
  145. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  146. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  147. package/dist/css/themes/MultiInput.css +1 -1
  148. package/dist/css/themes/OptionBase.css +1 -1
  149. package/dist/css/themes/Panel.css +1 -1
  150. package/dist/css/themes/Popover.css +1 -1
  151. package/dist/css/themes/PopupsCommon.css +1 -1
  152. package/dist/css/themes/ProgressIndicator.css +1 -1
  153. package/dist/css/themes/RadioButton.css +1 -1
  154. package/dist/css/themes/RangeSlider.css +1 -1
  155. package/dist/css/themes/RatingIndicator.css +1 -1
  156. package/dist/css/themes/ResponsivePopover.css +1 -1
  157. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  158. package/dist/css/themes/SegmentedButton.css +1 -1
  159. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  160. package/dist/css/themes/Select.css +1 -1
  161. package/dist/css/themes/SliderBase.css +1 -1
  162. package/dist/css/themes/SplitButton.css +1 -1
  163. package/dist/css/themes/StepInput.css +1 -1
  164. package/dist/css/themes/SuggestionItem.css +1 -1
  165. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  166. package/dist/css/themes/Switch.css +1 -1
  167. package/dist/css/themes/TabContainer.css +1 -1
  168. package/dist/css/themes/TabInOverflow.css +1 -1
  169. package/dist/css/themes/TabInStrip.css +1 -1
  170. package/dist/css/themes/TabSemanticIcon.css +1 -1
  171. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  172. package/dist/css/themes/Table.css +1 -1
  173. package/dist/css/themes/TableCellBase.css +1 -1
  174. package/dist/css/themes/TableHeaderRow.css +1 -1
  175. package/dist/css/themes/TableRow.css +1 -1
  176. package/dist/css/themes/TableRowActionBase.css +1 -1
  177. package/dist/css/themes/TableRowBase.css +1 -1
  178. package/dist/css/themes/Tag.css +1 -1
  179. package/dist/css/themes/Text.css +1 -1
  180. package/dist/css/themes/TextArea.css +1 -1
  181. package/dist/css/themes/TimePicker.css +1 -1
  182. package/dist/css/themes/Toast.css +1 -1
  183. package/dist/css/themes/ToggleButton.css +1 -1
  184. package/dist/css/themes/Token.css +1 -1
  185. package/dist/css/themes/Tokenizer.css +1 -1
  186. package/dist/css/themes/TokenizerPopover.css +1 -1
  187. package/dist/css/themes/Toolbar.css +1 -1
  188. package/dist/css/themes/ToolbarPopover.css +1 -1
  189. package/dist/css/themes/TreeItem.css +1 -1
  190. package/dist/css/themes/ValueStateMessage.css +1 -1
  191. package/dist/css/themes/YearPicker.css +1 -1
  192. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  193. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  194. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  195. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  196. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  197. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  198. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  199. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  200. package/dist/custom-elements-internal.json +10 -10
  201. package/dist/custom-elements.json +8 -8
  202. package/dist/features/InputSuggestions.d.ts +3 -3
  203. package/dist/features/InputSuggestions.js +8 -5
  204. package/dist/features/InputSuggestions.js.map +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  206. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  207. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  208. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  209. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  210. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  211. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  212. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  213. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  214. package/dist/generated/templates/TableGrowingTemplate.lit.js +2 -3
  215. package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -1
  216. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  217. package/dist/generated/themes/Avatar.css.js +1 -1
  218. package/dist/generated/themes/Avatar.css.js.map +1 -1
  219. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  220. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  221. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  222. package/dist/generated/themes/Bar.css.d.ts +1 -1
  223. package/dist/generated/themes/Bar.css.js +1 -1
  224. package/dist/generated/themes/Bar.css.js.map +1 -1
  225. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  226. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  227. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  228. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  229. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  230. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  231. package/dist/generated/themes/Button.css.d.ts +1 -1
  232. package/dist/generated/themes/Button.css.js +1 -1
  233. package/dist/generated/themes/Button.css.js.map +1 -1
  234. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  235. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  236. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  237. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  238. package/dist/generated/themes/Calendar.css.js +1 -1
  239. package/dist/generated/themes/Calendar.css.js.map +1 -1
  240. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  241. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  242. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  243. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  244. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  245. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  246. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  247. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  248. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  249. package/dist/generated/themes/Card.css.d.ts +1 -1
  250. package/dist/generated/themes/Card.css.js +1 -1
  251. package/dist/generated/themes/Card.css.js.map +1 -1
  252. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  253. package/dist/generated/themes/CardHeader.css.js +1 -1
  254. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  255. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  256. package/dist/generated/themes/Carousel.css.js +1 -1
  257. package/dist/generated/themes/Carousel.css.js.map +1 -1
  258. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  259. package/dist/generated/themes/CheckBox.css.js +1 -1
  260. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  261. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  262. package/dist/generated/themes/ColorPalette.css.js +1 -1
  263. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  264. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  265. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  266. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  267. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  268. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  269. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  270. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  271. package/dist/generated/themes/ColorPicker.css.js +1 -1
  272. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  273. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  274. package/dist/generated/themes/ComboBox.css.js +1 -1
  275. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  276. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  277. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  278. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  279. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  280. package/dist/generated/themes/DatePicker.css.js +1 -1
  281. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  282. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  283. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  284. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  285. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  286. package/dist/generated/themes/DayPicker.css.js +1 -1
  287. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  288. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  289. package/dist/generated/themes/Dialog.css.js +1 -1
  290. package/dist/generated/themes/Dialog.css.js.map +1 -1
  291. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  292. package/dist/generated/themes/FileUploader.css.js +1 -1
  293. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  294. package/dist/generated/themes/Form.css.d.ts +1 -1
  295. package/dist/generated/themes/Form.css.js +1 -1
  296. package/dist/generated/themes/Form.css.js.map +1 -1
  297. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  298. package/dist/generated/themes/FormItem.css.js +1 -1
  299. package/dist/generated/themes/FormItem.css.js.map +1 -1
  300. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  301. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  302. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  303. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  304. package/dist/generated/themes/GrowingButton.css.js +1 -1
  305. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  306. package/dist/generated/themes/Icon.css.d.ts +1 -1
  307. package/dist/generated/themes/Icon.css.js +1 -1
  308. package/dist/generated/themes/Icon.css.js.map +1 -1
  309. package/dist/generated/themes/Input.css.d.ts +1 -1
  310. package/dist/generated/themes/Input.css.js +1 -1
  311. package/dist/generated/themes/Input.css.js.map +1 -1
  312. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  313. package/dist/generated/themes/InputIcon.css.js +1 -1
  314. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  315. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  316. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  317. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  318. package/dist/generated/themes/Link.css.d.ts +1 -1
  319. package/dist/generated/themes/Link.css.js +1 -1
  320. package/dist/generated/themes/Link.css.js.map +1 -1
  321. package/dist/generated/themes/List.css.d.ts +1 -1
  322. package/dist/generated/themes/List.css.js +1 -1
  323. package/dist/generated/themes/List.css.js.map +1 -1
  324. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  325. package/dist/generated/themes/ListItem.css.js +1 -1
  326. package/dist/generated/themes/ListItem.css.js.map +1 -1
  327. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  328. package/dist/generated/themes/ListItemBase.css.js +1 -1
  329. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  330. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  331. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  332. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  333. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  334. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  335. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  336. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  337. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  338. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  339. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  340. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  341. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  342. package/dist/generated/themes/Menu.css.d.ts +1 -1
  343. package/dist/generated/themes/Menu.css.js +1 -1
  344. package/dist/generated/themes/Menu.css.js.map +1 -1
  345. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  346. package/dist/generated/themes/MenuItem.css.js +1 -1
  347. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  348. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  349. package/dist/generated/themes/MessageStrip.css.js +1 -1
  350. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  351. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  352. package/dist/generated/themes/MonthPicker.css.js +1 -1
  353. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  354. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  355. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  356. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  357. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  358. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  359. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  360. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  361. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  362. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  363. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  364. package/dist/generated/themes/MultiInput.css.js +1 -1
  365. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  366. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  367. package/dist/generated/themes/OptionBase.css.js +1 -1
  368. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  369. package/dist/generated/themes/Panel.css.d.ts +1 -1
  370. package/dist/generated/themes/Panel.css.js +1 -1
  371. package/dist/generated/themes/Panel.css.js.map +1 -1
  372. package/dist/generated/themes/Popover.css.d.ts +1 -1
  373. package/dist/generated/themes/Popover.css.js +1 -1
  374. package/dist/generated/themes/Popover.css.js.map +1 -1
  375. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  376. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  377. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  378. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  379. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  380. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  381. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  382. package/dist/generated/themes/RadioButton.css.js +1 -1
  383. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  384. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  385. package/dist/generated/themes/RangeSlider.css.js +1 -1
  386. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  387. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  388. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  389. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  390. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  391. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  392. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  393. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  394. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  395. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  396. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  397. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  398. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  399. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  400. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  401. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  402. package/dist/generated/themes/Select.css.d.ts +1 -1
  403. package/dist/generated/themes/Select.css.js +1 -1
  404. package/dist/generated/themes/Select.css.js.map +1 -1
  405. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  406. package/dist/generated/themes/SliderBase.css.js +1 -1
  407. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  408. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  409. package/dist/generated/themes/SplitButton.css.js +1 -1
  410. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  411. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  412. package/dist/generated/themes/StepInput.css.js +1 -1
  413. package/dist/generated/themes/StepInput.css.js.map +1 -1
  414. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  415. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  416. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  417. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  418. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  419. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  420. package/dist/generated/themes/Switch.css.d.ts +1 -1
  421. package/dist/generated/themes/Switch.css.js +1 -1
  422. package/dist/generated/themes/Switch.css.js.map +1 -1
  423. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  424. package/dist/generated/themes/TabContainer.css.js +1 -1
  425. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  426. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  427. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  428. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  429. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  430. package/dist/generated/themes/TabInStrip.css.js +1 -1
  431. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  432. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  433. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  434. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  435. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  436. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  437. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  438. package/dist/generated/themes/Table.css.d.ts +1 -1
  439. package/dist/generated/themes/Table.css.js +1 -1
  440. package/dist/generated/themes/Table.css.js.map +1 -1
  441. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  442. package/dist/generated/themes/TableCellBase.css.js +1 -1
  443. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  444. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  445. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  446. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  447. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  448. package/dist/generated/themes/TableRow.css.js +1 -1
  449. package/dist/generated/themes/TableRow.css.js.map +1 -1
  450. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  451. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  452. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  453. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  454. package/dist/generated/themes/TableRowBase.css.js +1 -1
  455. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  456. package/dist/generated/themes/Tag.css.d.ts +1 -1
  457. package/dist/generated/themes/Tag.css.js +1 -1
  458. package/dist/generated/themes/Tag.css.js.map +1 -1
  459. package/dist/generated/themes/Text.css.d.ts +1 -1
  460. package/dist/generated/themes/Text.css.js +1 -1
  461. package/dist/generated/themes/Text.css.js.map +1 -1
  462. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  463. package/dist/generated/themes/TextArea.css.js +1 -1
  464. package/dist/generated/themes/TextArea.css.js.map +1 -1
  465. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  466. package/dist/generated/themes/TimePicker.css.js +1 -1
  467. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  468. package/dist/generated/themes/Toast.css.d.ts +1 -1
  469. package/dist/generated/themes/Toast.css.js +1 -1
  470. package/dist/generated/themes/Toast.css.js.map +1 -1
  471. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  472. package/dist/generated/themes/ToggleButton.css.js +1 -1
  473. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  474. package/dist/generated/themes/Token.css.d.ts +1 -1
  475. package/dist/generated/themes/Token.css.js +1 -1
  476. package/dist/generated/themes/Token.css.js.map +1 -1
  477. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  478. package/dist/generated/themes/Tokenizer.css.js +1 -1
  479. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  480. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  481. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  482. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  483. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  484. package/dist/generated/themes/Toolbar.css.js +1 -1
  485. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  486. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  487. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  488. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  489. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  490. package/dist/generated/themes/TreeItem.css.js +1 -1
  491. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  492. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  493. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  494. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  495. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  496. package/dist/generated/themes/YearPicker.css.js +1 -1
  497. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  498. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  499. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  500. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  501. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  502. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  503. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  504. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  505. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  506. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  507. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  508. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  509. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  510. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  511. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  512. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  513. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  514. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  515. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  516. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  517. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  518. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  519. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  520. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  521. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  522. package/dist/types/ButtonBadgeDesign.d.ts +1 -1
  523. package/dist/types/ButtonBadgeDesign.js +1 -1
  524. package/dist/types/ButtonBadgeDesign.js.map +1 -1
  525. package/dist/vscode.html-custom-data.json +4 -4
  526. package/dist/web-types.json +9 -9
  527. package/package.json +12 -10
  528. package/src/ButtonBadgeTemplate.tsx +1 -1
  529. package/src/DayPickerTemplate.tsx +1 -0
  530. package/src/MenuItemTemplate.tsx +0 -10
  531. package/src/SelectPopoverTemplate.tsx +1 -1
  532. package/src/TableGrowing.hbs +17 -19
  533. package/src/i18n/messagebundle_en_US_saprigi.properties +0 -2
  534. package/src/themes/DayPicker.css +1 -0
  535. package/src/themes/MenuItem.css +5 -1
  536. package/cypress/specs/Card.cy.ts +0 -51
  537. package/cypress/specs/ColorPalette.cy.ts +0 -46
  538. package/cypress/specs/FormSupport.cy.ts +0 -960
  539. package/cypress/specs/Input.cy.ts +0 -130
  540. package/cypress/specs/Link.cy.ts +0 -16
  541. package/cypress/specs/MessageStrip.cy.ts +0 -91
  542. package/cypress/specs/RTL.cy.ts +0 -17
  543. package/cypress/specs/Table.cy.ts +0 -636
  544. package/cypress/specs/TableLoading.cy.ts +0 -44
  545. package/cypress/specs/Title.cy.ts +0 -37
  546. package/cypress/specs/Tokenizer.cy.ts +0 -114
  547. package/cypress/specs/base/Tooltips.cy.ts +0 -55
  548. /package/cypress/specs/{TableUtils.cy.ts → TableUtils.cy.tsx} +0 -0
  549. /package/cypress/specs/base/{InvisibleMessage.cy.ts → InvisibleMessage.cy.tsx} +0 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,41 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [2.8.0-rc.0](https://github.com/SAP/ui5-webcomponents/compare/v2.7.0...v2.8.0-rc.0) (2025-02-06)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **ui5-avatar:** announce initials ([#10755](https://github.com/SAP/ui5-webcomponents/issues/10755)) ([a14325b](https://github.com/SAP/ui5-webcomponents/commit/a14325ba15d58ec155814edb07f1cab4c8cdf4bf))
12
+ * **ui5-button-badge:** remove text when in attention dot mode ([#10768](https://github.com/SAP/ui5-webcomponents/issues/10768)) ([641fac8](https://github.com/SAP/ui5-webcomponents/commit/641fac8c3590da3e796164219520a75e10da5407))
13
+
14
+
15
+ ### Features
16
+
17
+ * **ui5-input:** visual selection on type-ahead ([#10675](https://github.com/SAP/ui5-webcomponents/issues/10675)) ([1b2cd71](https://github.com/SAP/ui5-webcomponents/commit/1b2cd71de2a71b8296bcc2a19f152d3670c00c7b))
18
+
19
+
20
+
21
+
22
+
23
+ # [2.7.0](https://github.com/SAP/ui5-webcomponents/compare/v2.7.0-rc.2...v2.7.0) (2025-02-03)
24
+
25
+
26
+ ### Bug Fixes
27
+
28
+ * **ui5-calendar:** add tooltips to special dates ([#10335](https://github.com/SAP/ui5-webcomponents/issues/10335)) ([b5b5a73](https://github.com/SAP/ui5-webcomponents/commit/b5b5a7397dae69e653713a361a8c9c716b92cc0a))
29
+ * **ui5-calendar:** using the correct parameter for UTC when formatting a date ([#10713](https://github.com/SAP/ui5-webcomponents/issues/10713)) ([9ae1f63](https://github.com/SAP/ui5-webcomponents/commit/9ae1f639990a5cffe2307be303c03410a7d8f08d))
30
+ * **ui5-file-uploder:** match focus correctly with screen readers ([#10700](https://github.com/SAP/ui5-webcomponents/issues/10700)) ([a10b91d](https://github.com/SAP/ui5-webcomponents/commit/a10b91dfc78b5c292f0248241fac538b9d81e360))
31
+ * **ui5-menu-item:** align arrow indication color ([#10695](https://github.com/SAP/ui5-webcomponents/issues/10695)) ([bd898c0](https://github.com/SAP/ui5-webcomponents/commit/bd898c0e2199b53856d2dc648fce32944aa188a9))
32
+ * **ui5-message-strip:** close event bubbling ([#10690](https://github.com/SAP/ui5-webcomponents/issues/10690)) ([6bbc4c5](https://github.com/SAP/ui5-webcomponents/commit/6bbc4c58462c24671ff632ed8a4d1569a419ac74))
33
+ * **ui5-select:** improved custom value state click behavior ([#10738](https://github.com/SAP/ui5-webcomponents/issues/10738)) ([f314e4f](https://github.com/SAP/ui5-webcomponents/commit/f314e4fcb5c491da189f156bfa68b70d3c3efbd6)), closes [#10661](https://github.com/SAP/ui5-webcomponents/issues/10661)
34
+ * **ui5-side-navigation:** apply aria-haspopup to items in overflow ([#10686](https://github.com/SAP/ui5-webcomponents/issues/10686)) ([9550875](https://github.com/SAP/ui5-webcomponents/commit/9550875d65dda77118f7644e081ebf34eedf4d2a))
35
+ * **ui5-tokenizer:** fix token-delete event details ([#10630](https://github.com/SAP/ui5-webcomponents/issues/10630)) ([c1206ae](https://github.com/SAP/ui5-webcomponents/commit/c1206aea539f4286cc8ea428aa66988095af292b)), closes [#10612](https://github.com/SAP/ui5-webcomponents/issues/10612)
36
+
37
+
38
+
39
+
40
+
6
41
  # [2.7.0-rc.2](https://github.com/SAP/ui5-webcomponents/compare/v2.7.0-rc.1...v2.7.0-rc.2) (2025-01-30)
7
42
 
8
43
 
@@ -0,0 +1,18 @@
1
+ import Avatar from "../../src/Avatar.js";
2
+
3
+ describe("Accessibility", () => {
4
+ it("checks if initials of avatar are correctly announced", () => {
5
+ const INITIALS = "XS";
6
+
7
+ cy.mount(<Avatar id="interactive-avatar" initials={INITIALS} interactive></Avatar>);
8
+
9
+ // Store the expected label to compare against
10
+ const expectedLabel = `Avatar ${INITIALS}`;
11
+
12
+ // Check if the aria-label is correctly set
13
+ cy.get("#interactive-avatar")
14
+ .shadow()
15
+ .find(".ui5-avatar-root")
16
+ .should("have.attr", "aria-label", expectedLabel);
17
+ });
18
+ });
@@ -1,13 +1,13 @@
1
- import { html } from "lit";
2
- import "../../src/Button.js";
3
- import "../../src/ButtonBadge.js";
4
- import type Button from "../../src/Button.js";
5
- import "@ui5/webcomponents-icons/dist/download.js";
6
- import "@ui5/webcomponents-icons/dist/employee.js";
1
+ import Avatar from "../../src/Avatar.js";
2
+ import Button from "../../src/Button.js";
3
+ import Label from "../../src/Label.js";
4
+ import ButtonBadge from "../../src/ButtonBadge.js";
5
+ import download from "@ui5/webcomponents-icons/dist/download.js";
6
+ import employee from "@ui5/webcomponents-icons/dist/employee.js";
7
7
 
8
8
  describe("Button general interaction", () => {
9
9
  it("tests button's text rendering", () => {
10
- cy.mount(html`<ui5-button icon="home" design="Emphasized">Action Bar Button</ui5-button>`);
10
+ cy.mount(<Button icon={download} design="Negative">Action Bar Button</Button>);
11
11
 
12
12
  cy.get<Button>("[ui5-button]")
13
13
  .shadow()
@@ -16,7 +16,7 @@ describe("Button general interaction", () => {
16
16
  });
17
17
 
18
18
  it("tests button's icon rendering", () => {
19
- cy.mount(html`<ui5-button>Action Bar Button</ui5-button>`);
19
+ cy.mount(<Button icon={download} design="Emphasized">Action Bar Button</Button>);
20
20
 
21
21
  cy.get("[ui5-button]")
22
22
  .as("button");
@@ -41,9 +41,8 @@ describe("Button general interaction", () => {
41
41
  .find(".ui5-button-icon")
42
42
  .should("not.exist", "icon is not present");
43
43
  });
44
-
45
44
  it("tests button's endIon rendering", () => {
46
- cy.mount(html`<ui5-button>Action Bar Button</ui5-button>`);
45
+ cy.mount(<Button>Action Bar Button</Button>);
47
46
 
48
47
  cy.get("[ui5-button]")
49
48
  .as("button");
@@ -70,7 +69,7 @@ describe("Button general interaction", () => {
70
69
  });
71
70
 
72
71
  it("tests click event", () => {
73
- cy.mount(html`<ui5-button icon="home" design="Emphasized">Action Bar Button</ui5-button>`);
72
+ cy.mount(<Button icon="home" design="Emphasized">Action Bar Button</Button>);
74
73
 
75
74
  cy.get("[ui5-button]")
76
75
  .as("button");
@@ -92,7 +91,7 @@ describe("Button general interaction", () => {
92
91
  });
93
92
 
94
93
  it("tests keyboard shortcuts used to prevent a click event", () => {
95
- cy.mount(html`<ui5-button>Text</ui5-button>`);
94
+ cy.mount(<Button>Text</Button>);
96
95
 
97
96
  cy.get("[ui5-button]")
98
97
  .as("button");
@@ -113,32 +112,33 @@ describe("Button general interaction", () => {
113
112
  });
114
113
 
115
114
  it("tests button's icon only rendering", () => {
116
- cy.mount(html`<ui5-button icon="home"><!----><!----></ui5-button>`);
115
+ cy.mount(<Button icon="home"></Button>);
117
116
 
118
117
  cy.get("[ui5-button]")
119
118
  .should("have.attr", "icon-only");
120
119
  });
121
120
 
122
121
  it("tests button's icon only rendering", () => {
123
- cy.mount(html`<ui5-button icon="text"> </ui5-button>`);
122
+ cy.mount(<Button icon="text"> </Button>);
124
123
 
125
124
  cy.get("[ui5-button]")
126
125
  .should("have.attr", "icon-only");
127
126
  });
128
127
 
129
128
  it("tests button's slot rendering", () => {
130
- cy.mount(html`
131
- <ui5-button>
132
- <ui5-avatar id="btnImage" size="XS">
133
- <img src="https://sdk.openui5.org/test-resources/sap/f/images/Woman_avatar_01.png" />
134
- </ui5-avatar>
135
- </ui5-button>`);
129
+ cy.mount(
130
+ <Button>
131
+ <Avatar id="btnImage" size="XS">
132
+ <img src="https://sdk.openui5.org/test-resources/sap/f/images/Woman_avatar_01.png" />
133
+ </Avatar>
134
+ </Button>
135
+ );
136
136
  cy.get("[ui5-button]")
137
137
  .should("be.visible", "Btn image is rendered");
138
138
  });
139
139
 
140
140
  it("tests clicking on disabled button", () => {
141
- cy.mount(html`<ui5-button disabled>Inactive</ui5-button>`);
141
+ cy.mount(<Button disabled>Inactive</Button>);
142
142
 
143
143
  cy.get("[ui5-button]")
144
144
  .as("button");
@@ -170,7 +170,7 @@ describe("Button general interaction", () => {
170
170
  });
171
171
 
172
172
  it("tests clicking on disabled button with Icon", () => {
173
- cy.mount(html`<ui5-button icon="employee" disabled></ui5-button>`);
173
+ cy.mount(<Button icon={employee} disabled></Button>);
174
174
 
175
175
  cy.get("[ui5-button]")
176
176
  .as("button");
@@ -200,7 +200,7 @@ describe("Button general interaction", () => {
200
200
  });
201
201
 
202
202
  it("tests button with text icon role", () => {
203
- cy.mount(html`<ui5-button design="Attention" icon="message-warning">Warning</ui5-button>`);
203
+ cy.mount(<Button design="Attention" icon="message-warning">Warning</Button>);
204
204
 
205
205
  cy.get("[ui5-button]")
206
206
  .as("button");
@@ -214,7 +214,7 @@ describe("Button general interaction", () => {
214
214
 
215
215
  describe("Accessibility", () => {
216
216
  it("setting tooltip on the host is reflected on the button tag", () => {
217
- cy.mount(html`<ui5-button icon="message-information" tooltip="Go home"></ui5-button>`);
217
+ cy.mount(<Button icon="message-information" tooltip="Go home"></Button>);
218
218
 
219
219
  cy.get("[ui5-button]")
220
220
  .shadow()
@@ -226,7 +226,7 @@ describe("Accessibility", () => {
226
226
  });
227
227
 
228
228
  it("tooltip from inner icon is propagated", () => {
229
- cy.mount(html`<ui5-button icon="download" accessible-name="Download application"></ui5-button>`);
229
+ cy.mount(<Button icon="download" accessibleName="Download application"></Button>);
230
230
 
231
231
  cy.get("[ui5-button]")
232
232
  .shadow()
@@ -238,7 +238,7 @@ describe("Accessibility", () => {
238
238
  });
239
239
 
240
240
  it("aria-expanded is properly applied on the button tag", () => {
241
- cy.mount(html`<ui5-button icon="home" design="Emphasized">Action Bar Button</ui5-button>`);
241
+ cy.mount(<Button icon="home" design="Emphasized">Action Bar Button</Button>);
242
242
 
243
243
  cy.get("[ui5-button]")
244
244
  .as("button");
@@ -269,7 +269,7 @@ describe("Accessibility", () => {
269
269
  });
270
270
 
271
271
  it("setting accessible-role on the host is reflected on the button tag", () => {
272
- cy.mount(html`<ui5-button accessible-role="Link"> Navigation Button </ui5-button>`);
272
+ cy.mount(<Button accessibleRole="Link"> Navigation Button </Button>);
273
273
 
274
274
  cy.get("[ui5-button]")
275
275
  .shadow()
@@ -281,7 +281,7 @@ describe("Accessibility", () => {
281
281
  });
282
282
 
283
283
  it("not setting accessible-role on the host keeps the correct role on the button tag", () => {
284
- cy.mount(html`<ui5-button icon="home" design="Emphasized">Action Bar Button</ui5-button>`);
284
+ cy.mount(<Button icon="home" design="Emphasized">Action Bar Button</Button>);
285
285
 
286
286
  cy.get("[ui5-button]")
287
287
  .shadow()
@@ -294,8 +294,7 @@ describe("Accessibility", () => {
294
294
 
295
295
  it("aria-describedby properly applied on the button tag", () => {
296
296
  const hiddenTextTypeId = "ui5-button-hiddenText-type";
297
-
298
- cy.mount(html`<ui5-button design="Attention">Content</ui5-button>`);
297
+ cy.mount(<Button design="Attention">Content</Button>);
299
298
 
300
299
  cy.get("[ui5-button]")
301
300
  .as("button");
@@ -312,8 +311,12 @@ describe("Accessibility", () => {
312
311
  });
313
312
 
314
313
  it("setting accessible-name-ref on the host is reflected on the button tag", () => {
315
- cy.mount(html`<ui5-button icon="download" accessible-name="Help me" accessible-name-ref="1download-text"></ui5-button>
316
- <ui5-label id="1download-text">Download Application</ui5-label>`);
314
+ cy.mount(
315
+ <>
316
+ <Button icon="download" accessibleName="Help me" accessibleNameRef="1download-text"></Button>
317
+ <Label id="1download-text">Download Application</Label>
318
+ </>
319
+ );
317
320
 
318
321
  cy.get("[ui5-button]")
319
322
  .shadow()
@@ -325,7 +328,7 @@ describe("Accessibility", () => {
325
328
  });
326
329
 
327
330
  it("aria-haspopup and aria-controls are properly applied on the button tag", () => {
328
- cy.mount(html`<ui5-button>Show Registration Dialog</ui5-button>`);
331
+ cy.mount(<Button>Show Registration Dialog</Button>);
329
332
 
330
333
  cy.get("[ui5-button]")
331
334
  .as("button");
@@ -350,7 +353,7 @@ describe("Accessibility", () => {
350
353
  });
351
354
 
352
355
  it("setting accessible-description is applied to button tag", () => {
353
- cy.mount(html`<ui5-button accessible-description="A long description."></ui5-button>`);
356
+ cy.mount(<Button accessibleDescription="A long description."></Button>);
354
357
 
355
358
  cy.get("[ui5-button]")
356
359
  .shadow()
@@ -362,9 +365,11 @@ describe("Accessibility", () => {
362
365
  });
363
366
 
364
367
  it("button with a badge", () => {
365
- cy.mount(html`<ui5-button design="Emphasized" icon="employee">Emphasized
366
- <ui5-button-badge design="OverlayText" text="999+" slot="badge"></ui5-button-badge>
367
- </ui5-button>`);
368
+ cy.mount(
369
+ <Button design="Emphasized" icon={employee}>Emphasized
370
+ <ButtonBadge design="OverlayText" text="999+" slot="badge"></ButtonBadge>
371
+ </Button>
372
+ );
368
373
 
369
374
  cy.get("[ui5-button]")
370
375
  .find("ui5-button-badge")
@@ -0,0 +1,77 @@
1
+ import Calendar from "../../src/Calendar.js";
2
+ import CalendarDate from "../../src/CalendarDate.js";
3
+ import CalendarLegend from "../../src/CalendarLegend.js";
4
+ import CalendarLegendItem from "../../src/CalendarLegendItem.js";
5
+ import SpecialCalendarDate from "../../src/SpecialCalendarDate.js";
6
+
7
+ const getCalendarWithLegend = () => {
8
+ return (
9
+ <Calendar id="calendar1">
10
+ <CalendarDate value="Mar 31, 2024"></CalendarDate>
11
+ <SpecialCalendarDate slot="specialDates" value="Mar 30, 2024" type="Type01"></SpecialCalendarDate>
12
+ <SpecialCalendarDate slot="specialDates" value="Mar 29, 2024" type="Type02"></SpecialCalendarDate>
13
+
14
+ <CalendarLegend slot="calendarLegend" id="calendarLegend">
15
+ <CalendarLegendItem type="Type01" text="Placeholder 01"></CalendarLegendItem>
16
+ <CalendarLegendItem type="Type02" text="Placeholder 02"></CalendarLegendItem>
17
+ </CalendarLegend>
18
+ </Calendar>
19
+ );
20
+ };
21
+
22
+ describe("Calendar Legend tests", () => {
23
+ it("Calendar legend hides Today and Selected, when hideToday and hideSelectedDay properties are provided", () => {
24
+ cy.mount(getCalendarWithLegend());
25
+
26
+ cy.get<CalendarLegend>("#calendarLegend")
27
+ .shadow()
28
+ .find(".ui5-calendar-legend-root")
29
+ .find("[ui5-calendar-legend-item]")
30
+ .should("have.length", 4);
31
+
32
+ cy.get<CalendarLegend>("#calendarLegend").invoke("prop", "hideToday", true);
33
+
34
+ cy.get<CalendarLegend>("#calendarLegend")
35
+ .shadow()
36
+ .find(".ui5-calendar-legend-root")
37
+ .find("[ui5-calendar-legend-item]")
38
+ .should("have.length", 3);
39
+
40
+ cy.get<CalendarLegend>("#calendarLegend").invoke("prop", "hideSelectedDay", true);
41
+
42
+ cy.get<CalendarLegend>("#calendarLegend")
43
+ .shadow()
44
+ .find(".ui5-calendar-legend-root")
45
+ .find("[ui5-calendar-legend-item]")
46
+ .should("have.length", 2);
47
+ });
48
+
49
+ it("Focusing item in the legend and then focus out, reset filtered days", () => {
50
+ cy.mount(getCalendarWithLegend());
51
+
52
+ cy.get<CalendarLegend>("#calendarLegend")
53
+ .find("ui5-calendar-legend-item[type='Type01']")
54
+ .realClick();
55
+
56
+ cy.get("#calendar1")
57
+ .shadow()
58
+ .find("[ui5-daypicker]")
59
+ .shadow()
60
+ .find("[data-ui5-special-day]")
61
+ .should("have.length", 1);
62
+
63
+ cy.get<CalendarLegend>("#calendarLegend")
64
+ .find("ui5-calendar-legend-item[type='Type01']")
65
+ .realClick()
66
+ .realClick()
67
+ .realPress("ArrowUp")
68
+ .realPress("ArrowUp");
69
+
70
+ cy.get("#calendar1")
71
+ .shadow()
72
+ .find("[ui5-daypicker]")
73
+ .shadow()
74
+ .find("[data-ui5-special-day]")
75
+ .should("have.length", 2);
76
+ });
77
+ });
@@ -0,0 +1,330 @@
1
+ import Button from "../../src/Button.js";
2
+ import Card from "../../src/Card.js";
3
+ import CardHeader from "../../src/CardHeader.js";
4
+
5
+ function CardSample() {
6
+ return <Card id="card">
7
+ <CardHeader
8
+ id="cardHeader"
9
+ slot="header"
10
+ additionalText="4 of 10"
11
+ titleText="Quick Links"
12
+ subtitleText="Quick links sub title"
13
+ interactive={true}>
14
+ </CardHeader>
15
+ <div></div>
16
+ </Card>;
17
+ }
18
+
19
+ function CardSample2() {
20
+ return <Card id="card2">
21
+ <CardHeader
22
+ id="cardHeader2"
23
+ slot="header"
24
+ additionalText="4 of 10"
25
+ titleText="Quick Links"
26
+ subtitleText="Quick Links">
27
+ </CardHeader>
28
+ <div></div>
29
+ </Card>;
30
+ }
31
+
32
+ describe("Card general interaction", () => {
33
+ it("Tests interactive header results in interactive class on the card", () => {
34
+ cy.mount(
35
+ <div>
36
+ <CardSample />
37
+ <CardSample2 />
38
+ </div>
39
+ );
40
+
41
+ // assert
42
+ cy.get("#cardHeader")
43
+ .realClick();
44
+ cy.get("#cardHeader").should("be.focused");
45
+ cy.get("#card")
46
+ .shadow()
47
+ .find(".ui5-card-root")
48
+ .should("have.class", "ui5-card--interactive");
49
+
50
+ cy.get("#card2")
51
+ .shadow()
52
+ .find(".ui5-card-root")
53
+ .should("not.have.class", "ui5-card--interactive");
54
+ });
55
+
56
+ it("Tests header's click event with mouse click, Enter and Space", () => {
57
+ cy.mount(
58
+ <div>
59
+ <CardSample />
60
+ <CardSample2 />
61
+ </div>
62
+ );
63
+
64
+ // interactive header
65
+ cy.get("#cardHeader")
66
+ .then($header => {
67
+ $header.get(0).addEventListener("click", cy.stub().as("headerClick"));
68
+ });
69
+
70
+ cy.get("#cardHeader")
71
+ .shadow()
72
+ .find(".ui5-card-header")
73
+ .realClick();
74
+ cy.realPress("Space");
75
+ cy.realPress("Enter");
76
+
77
+ cy.get("@headerClick")
78
+ .should("have.been.calledThrice");
79
+
80
+ // non-interactive header
81
+ cy.get("#cardHeader2")
82
+ .then($header => {
83
+ $header.get(0).addEventListener("click", cy.stub().as("headerClick2"));
84
+ });
85
+
86
+ cy.get("#cardHeader2")
87
+ .shadow()
88
+ .find(".ui5-card-header")
89
+ .realClick();
90
+ cy.realPress("Space");
91
+ cy.realPress("Enter");
92
+
93
+ cy.get("@headerClick2")
94
+ .should("not.have.been.called");
95
+ });
96
+
97
+ it("Tests clicking on an action does not fire header's click event", () => {
98
+ cy.mount(
99
+ <Card>
100
+ <CardHeader
101
+ id="cardHeader"
102
+ slot="header"
103
+ titleText="Quick Links"
104
+ interactive={true}
105
+ >
106
+ <Button id="actionBtn" slot="action">Act</Button>
107
+ </CardHeader>
108
+
109
+ <div></div>
110
+ </Card>
111
+ );
112
+
113
+ cy.get("#cardHeader").then($header => {
114
+ $header.get(0).addEventListener("ui5-click", cy.stub().as("headerClick"));
115
+ });
116
+
117
+ cy.get("#actionBtn").realClick();
118
+
119
+ // assert
120
+ cy.get("@headerClick").should("not.have.been.called");
121
+ });
122
+
123
+ it("Tests loading", () => {
124
+ cy.mount(
125
+ <Card
126
+ id="loadingCard"
127
+ loading={true}
128
+ loadingDelay={500}>
129
+ <CardHeader
130
+ slot="header"
131
+ titleText="Interactive Header">
132
+ </CardHeader>
133
+ <div></div>
134
+ </Card>
135
+ );
136
+
137
+ cy.get("#loadingCard")
138
+ .shadow()
139
+ .find("[ui5-busy-indicator]")
140
+ .should("have.attr", "delay", "500")
141
+ .and("have.attr", "active");
142
+ });
143
+ });
144
+
145
+ describe("Card header", () => {
146
+ it("Tests that aria attribute are correct on interactive header", () => {
147
+ cy.mount(
148
+ <Card>
149
+ <CardHeader
150
+ id="cardHeader"
151
+ slot="header"
152
+ titleText="Quick Links"
153
+ interactive={true}
154
+ >
155
+ </CardHeader>
156
+ </Card>
157
+ );
158
+
159
+ // assert
160
+ cy.get("#cardHeader")
161
+ .shadow()
162
+ .find(".ui5-card-header-focusable-element")
163
+ .should("have.attr", "role", "button")
164
+ .and("have.attr", "tabindex", "0")
165
+ .and("have.attr", "aria-roledescription", "Interactive Card Header");
166
+ });
167
+
168
+ it("Tests that aria attribute are correct on a header", () => {
169
+ cy.mount(
170
+ <Card>
171
+ <CardHeader
172
+ id="cardHeader"
173
+ slot="header"
174
+ titleText="Quick Links"
175
+ >
176
+ </CardHeader>
177
+ </Card>
178
+ );
179
+
180
+ // assert
181
+ cy.get("#cardHeader")
182
+ .shadow()
183
+ .find(".ui5-card-header-focusable-element")
184
+ .should("have.attr", "role", "group")
185
+ .and("have.attr", "tabindex", "0")
186
+ .and("have.attr", "aria-roledescription", "Card Header");
187
+ });
188
+
189
+ it("Tests additionalText is rendered, when action is set", () => {
190
+ cy.mount(
191
+ <Card>
192
+ <CardHeader
193
+ id="actionCardHeader"
194
+ slot="header"
195
+ titleText="Linked Activities (5)"
196
+ additionalText="4 of 10">
197
+ </CardHeader>
198
+
199
+ <div></div>
200
+ </Card>
201
+ );
202
+
203
+ // assert
204
+ cy.get("#actionCardHeader")
205
+ .shadow()
206
+ .find(".ui5-card-header-additionalText")
207
+ .should("exist");
208
+ });
209
+ });
210
+
211
+ describe("Card Accessibility", () => {
212
+ it("Tests accessibleName", () => {
213
+ cy.mount(
214
+ <Card id="textCard" accessibleName="Internships">
215
+ <CardHeader
216
+ slot="header"
217
+ titleText="New Internships">
218
+ </CardHeader>
219
+ </Card>
220
+ );
221
+
222
+ // assert
223
+ cy.get("#textCard")
224
+ .shadow()
225
+ .find(".ui5-card-root")
226
+ .should("have.attr", "aria-label", "Card Internships");
227
+ });
228
+
229
+ it("Tests accessibleNameRef", () => {
230
+ cy.mount(
231
+ <Card id="textCardRef" accessibleName="Internships" accessibleNameRef="cont">
232
+ <CardHeader
233
+ slot="header"
234
+ titleText="New Positions">
235
+ </CardHeader>
236
+ <div id="cont" class="myContent">I am the content</div>
237
+ </Card>
238
+ );
239
+
240
+ // assert
241
+ cy.get("#textCardRef")
242
+ .shadow()
243
+ .find(".ui5-card-root")
244
+ .should("have.attr", "aria-label", "Card I am the content");
245
+ });
246
+
247
+ it("Tests aria-label", () => {
248
+ cy.mount(
249
+ <Card id="textAreaAriaLabel">
250
+ <CardHeader
251
+ slot="header"
252
+ titleText="Linked Activities (5)">
253
+ </CardHeader>
254
+ </Card>
255
+ );
256
+
257
+ // assert
258
+ cy.get("#textAreaAriaLabel")
259
+ .shadow()
260
+ .find(".ui5-card-root")
261
+ .should("have.attr", "aria-label", "Card");
262
+ });
263
+
264
+ it("Tests ARIA attributes of the content", () => {
265
+ cy.mount(<CardSample />);
266
+
267
+ // assert
268
+ cy.get("#card")
269
+ .shadow()
270
+ .find(".ui5-card-root div:nth-child(2)")
271
+ .should("have.attr", "role", "group")
272
+ .and("have.attr", "aria-label", "Card Content");
273
+ });
274
+
275
+ it("Tests aria-level property", () => {
276
+ cy.mount(<CardSample2 />);
277
+
278
+ // assert
279
+ cy.get("#cardHeader2")
280
+ .shadow()
281
+ .find(".ui5-card-header .ui5-card-header-title")
282
+ .should("have.attr", "aria-level", "3");
283
+
284
+ cy.get("#cardHeader2")
285
+ .shadow()
286
+ .find(".ui5-card-header .ui5-card-header-title")
287
+ .invoke("attr", "aria-level", "4")
288
+ .should("have.attr", "aria-level", "4");
289
+ });
290
+
291
+ it("Tests header aria-labelledby", () => {
292
+ cy.mount(
293
+ <div>
294
+ <Card>
295
+ <CardHeader
296
+ slot="header"
297
+ id="header"
298
+ additionalText="4 of 10"
299
+ titleText="Linked Activities (5)"
300
+ subtitleText="Quick Links">
301
+ </CardHeader>
302
+ </Card>
303
+
304
+ <Card>
305
+ <CardHeader
306
+ slot="header"
307
+ id="header2"
308
+ titleText="New Jobs (5)"
309
+ subtitleText="Find One">
310
+ </CardHeader>
311
+ </Card>
312
+ </div>
313
+ );
314
+
315
+ // assert
316
+ cy.get("#header").invoke("prop", "_id").then(headerId => {
317
+ cy.get("#header")
318
+ .shadow()
319
+ .find(".ui5-card-header .ui5-card-header-focusable-element")
320
+ .should("have.attr", "aria-labelledby", `${headerId}-title ${headerId}-subtitle ${headerId}-additionalText`);
321
+ });
322
+
323
+ cy.get("#header2").invoke("prop", "_id").then(headerId2 => {
324
+ cy.get("#header2")
325
+ .shadow()
326
+ .find(".ui5-card-header .ui5-card-header-focusable-element")
327
+ .should("have.attr", "aria-labelledby", `${headerId2}-title ${headerId2}-subtitle`);
328
+ });
329
+ });
330
+ });