@ui5/webcomponents 2.7.0 → 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 (450) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/cypress/specs/Avatar.cy.tsx +18 -0
  3. package/cypress/specs/Card.cy.tsx +287 -8
  4. package/cypress/specs/FormSupport.cy.tsx +17 -77
  5. package/cypress/specs/Input.cy.tsx +409 -0
  6. package/cypress/specs/Link.cy.tsx +16 -0
  7. package/dist/.tsbuildinfo +1 -1
  8. package/dist/Avatar.d.ts +1 -1
  9. package/dist/Avatar.js +2 -1
  10. package/dist/Avatar.js.map +1 -1
  11. package/dist/ButtonBadge.d.ts +11 -5
  12. package/dist/ButtonBadge.js +12 -3
  13. package/dist/ButtonBadge.js.map +1 -1
  14. package/dist/ButtonBadgeTemplate.js +1 -1
  15. package/dist/ButtonBadgeTemplate.js.map +1 -1
  16. package/dist/Input.d.ts +3 -0
  17. package/dist/Input.js +18 -4
  18. package/dist/Input.js.map +1 -1
  19. package/dist/RadioButtonGroup.js +3 -2
  20. package/dist/RadioButtonGroup.js.map +1 -1
  21. package/dist/Select.js +4 -1
  22. package/dist/Select.js.map +1 -1
  23. package/dist/css/themes/Avatar.css +1 -1
  24. package/dist/css/themes/AvatarGroup.css +1 -1
  25. package/dist/css/themes/Bar.css +1 -1
  26. package/dist/css/themes/Breadcrumbs.css +1 -1
  27. package/dist/css/themes/BusyIndicator.css +1 -1
  28. package/dist/css/themes/Button.css +1 -1
  29. package/dist/css/themes/ButtonBadge.css +1 -1
  30. package/dist/css/themes/Calendar.css +1 -1
  31. package/dist/css/themes/CalendarHeader.css +1 -1
  32. package/dist/css/themes/CalendarLegend.css +1 -1
  33. package/dist/css/themes/CalendarLegendItem.css +1 -1
  34. package/dist/css/themes/Card.css +1 -1
  35. package/dist/css/themes/CardHeader.css +1 -1
  36. package/dist/css/themes/Carousel.css +1 -1
  37. package/dist/css/themes/CheckBox.css +1 -1
  38. package/dist/css/themes/ColorPalette.css +1 -1
  39. package/dist/css/themes/ColorPaletteItem.css +1 -1
  40. package/dist/css/themes/ColorPalettePopover.css +1 -1
  41. package/dist/css/themes/ColorPicker.css +1 -1
  42. package/dist/css/themes/ComboBox.css +1 -1
  43. package/dist/css/themes/ComboBoxItem.css +1 -1
  44. package/dist/css/themes/DatePicker.css +1 -1
  45. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  46. package/dist/css/themes/DayPicker.css +1 -1
  47. package/dist/css/themes/Dialog.css +1 -1
  48. package/dist/css/themes/FileUploader.css +1 -1
  49. package/dist/css/themes/Form.css +1 -1
  50. package/dist/css/themes/FormItem.css +1 -1
  51. package/dist/css/themes/FormItemSpan.css +1 -1
  52. package/dist/css/themes/GrowingButton.css +1 -1
  53. package/dist/css/themes/Icon.css +1 -1
  54. package/dist/css/themes/Input.css +1 -1
  55. package/dist/css/themes/InputIcon.css +1 -1
  56. package/dist/css/themes/InputSharedStyles.css +1 -1
  57. package/dist/css/themes/Link.css +1 -1
  58. package/dist/css/themes/List.css +1 -1
  59. package/dist/css/themes/ListItem.css +1 -1
  60. package/dist/css/themes/ListItemBase.css +1 -1
  61. package/dist/css/themes/ListItemCustom.css +1 -1
  62. package/dist/css/themes/ListItemGroup.css +1 -1
  63. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  64. package/dist/css/themes/ListItemIcon.css +1 -1
  65. package/dist/css/themes/Menu.css +1 -1
  66. package/dist/css/themes/MenuItem.css +1 -1
  67. package/dist/css/themes/MessageStrip.css +1 -1
  68. package/dist/css/themes/MonthPicker.css +1 -1
  69. package/dist/css/themes/MultiComboBox.css +1 -1
  70. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  71. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  72. package/dist/css/themes/MultiInput.css +1 -1
  73. package/dist/css/themes/OptionBase.css +1 -1
  74. package/dist/css/themes/Panel.css +1 -1
  75. package/dist/css/themes/Popover.css +1 -1
  76. package/dist/css/themes/PopupsCommon.css +1 -1
  77. package/dist/css/themes/ProgressIndicator.css +1 -1
  78. package/dist/css/themes/RadioButton.css +1 -1
  79. package/dist/css/themes/RangeSlider.css +1 -1
  80. package/dist/css/themes/RatingIndicator.css +1 -1
  81. package/dist/css/themes/ResponsivePopover.css +1 -1
  82. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  83. package/dist/css/themes/SegmentedButton.css +1 -1
  84. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  85. package/dist/css/themes/Select.css +1 -1
  86. package/dist/css/themes/SliderBase.css +1 -1
  87. package/dist/css/themes/SplitButton.css +1 -1
  88. package/dist/css/themes/StepInput.css +1 -1
  89. package/dist/css/themes/SuggestionItem.css +1 -1
  90. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  91. package/dist/css/themes/Switch.css +1 -1
  92. package/dist/css/themes/TabContainer.css +1 -1
  93. package/dist/css/themes/TabInOverflow.css +1 -1
  94. package/dist/css/themes/TabInStrip.css +1 -1
  95. package/dist/css/themes/TabSemanticIcon.css +1 -1
  96. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  97. package/dist/css/themes/Table.css +1 -1
  98. package/dist/css/themes/TableCellBase.css +1 -1
  99. package/dist/css/themes/TableHeaderRow.css +1 -1
  100. package/dist/css/themes/TableRow.css +1 -1
  101. package/dist/css/themes/TableRowActionBase.css +1 -1
  102. package/dist/css/themes/TableRowBase.css +1 -1
  103. package/dist/css/themes/Tag.css +1 -1
  104. package/dist/css/themes/Text.css +1 -1
  105. package/dist/css/themes/TextArea.css +1 -1
  106. package/dist/css/themes/TimePicker.css +1 -1
  107. package/dist/css/themes/Toast.css +1 -1
  108. package/dist/css/themes/ToggleButton.css +1 -1
  109. package/dist/css/themes/Token.css +1 -1
  110. package/dist/css/themes/Tokenizer.css +1 -1
  111. package/dist/css/themes/TokenizerPopover.css +1 -1
  112. package/dist/css/themes/Toolbar.css +1 -1
  113. package/dist/css/themes/ToolbarPopover.css +1 -1
  114. package/dist/css/themes/TreeItem.css +1 -1
  115. package/dist/css/themes/ValueStateMessage.css +1 -1
  116. package/dist/css/themes/YearPicker.css +1 -1
  117. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  118. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  119. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  120. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  121. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  122. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  123. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  124. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  125. package/dist/custom-elements-internal.json +8 -8
  126. package/dist/custom-elements.json +7 -7
  127. package/dist/features/InputSuggestions.d.ts +3 -3
  128. package/dist/features/InputSuggestions.js +8 -5
  129. package/dist/features/InputSuggestions.js.map +1 -1
  130. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  131. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  132. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  133. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  134. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  135. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  136. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  137. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  138. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  139. package/dist/generated/themes/Avatar.css.js +1 -1
  140. package/dist/generated/themes/Avatar.css.js.map +1 -1
  141. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  142. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  143. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  144. package/dist/generated/themes/Bar.css.d.ts +1 -1
  145. package/dist/generated/themes/Bar.css.js +1 -1
  146. package/dist/generated/themes/Bar.css.js.map +1 -1
  147. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  148. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  149. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  150. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  151. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  152. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  153. package/dist/generated/themes/Button.css.d.ts +1 -1
  154. package/dist/generated/themes/Button.css.js +1 -1
  155. package/dist/generated/themes/Button.css.js.map +1 -1
  156. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  157. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  158. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  159. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  160. package/dist/generated/themes/Calendar.css.js +1 -1
  161. package/dist/generated/themes/Calendar.css.js.map +1 -1
  162. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  163. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  164. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  165. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  166. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  167. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  168. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  169. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  170. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  171. package/dist/generated/themes/Card.css.d.ts +1 -1
  172. package/dist/generated/themes/Card.css.js +1 -1
  173. package/dist/generated/themes/Card.css.js.map +1 -1
  174. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  175. package/dist/generated/themes/CardHeader.css.js +1 -1
  176. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  177. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  178. package/dist/generated/themes/Carousel.css.js +1 -1
  179. package/dist/generated/themes/Carousel.css.js.map +1 -1
  180. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  181. package/dist/generated/themes/CheckBox.css.js +1 -1
  182. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  183. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  184. package/dist/generated/themes/ColorPalette.css.js +1 -1
  185. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  186. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  187. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  188. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  189. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  190. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  191. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  192. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  193. package/dist/generated/themes/ColorPicker.css.js +1 -1
  194. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  195. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  196. package/dist/generated/themes/ComboBox.css.js +1 -1
  197. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  198. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  199. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  200. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  201. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  202. package/dist/generated/themes/DatePicker.css.js +1 -1
  203. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  204. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  205. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  206. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  207. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  208. package/dist/generated/themes/DayPicker.css.js +1 -1
  209. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  210. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  211. package/dist/generated/themes/Dialog.css.js +1 -1
  212. package/dist/generated/themes/Dialog.css.js.map +1 -1
  213. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  214. package/dist/generated/themes/FileUploader.css.js +1 -1
  215. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  216. package/dist/generated/themes/Form.css.d.ts +1 -1
  217. package/dist/generated/themes/Form.css.js +1 -1
  218. package/dist/generated/themes/Form.css.js.map +1 -1
  219. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  220. package/dist/generated/themes/FormItem.css.js +1 -1
  221. package/dist/generated/themes/FormItem.css.js.map +1 -1
  222. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  223. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  224. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  225. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  226. package/dist/generated/themes/GrowingButton.css.js +1 -1
  227. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  228. package/dist/generated/themes/Icon.css.d.ts +1 -1
  229. package/dist/generated/themes/Icon.css.js +1 -1
  230. package/dist/generated/themes/Icon.css.js.map +1 -1
  231. package/dist/generated/themes/Input.css.d.ts +1 -1
  232. package/dist/generated/themes/Input.css.js +1 -1
  233. package/dist/generated/themes/Input.css.js.map +1 -1
  234. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  235. package/dist/generated/themes/InputIcon.css.js +1 -1
  236. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  237. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  238. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  239. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  240. package/dist/generated/themes/Link.css.d.ts +1 -1
  241. package/dist/generated/themes/Link.css.js +1 -1
  242. package/dist/generated/themes/Link.css.js.map +1 -1
  243. package/dist/generated/themes/List.css.d.ts +1 -1
  244. package/dist/generated/themes/List.css.js +1 -1
  245. package/dist/generated/themes/List.css.js.map +1 -1
  246. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  247. package/dist/generated/themes/ListItem.css.js +1 -1
  248. package/dist/generated/themes/ListItem.css.js.map +1 -1
  249. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  250. package/dist/generated/themes/ListItemBase.css.js +1 -1
  251. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  252. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  253. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  254. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  255. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  256. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  257. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  258. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  259. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  260. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  261. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  262. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  263. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  264. package/dist/generated/themes/Menu.css.d.ts +1 -1
  265. package/dist/generated/themes/Menu.css.js +1 -1
  266. package/dist/generated/themes/Menu.css.js.map +1 -1
  267. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  268. package/dist/generated/themes/MenuItem.css.js +1 -1
  269. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  270. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  271. package/dist/generated/themes/MessageStrip.css.js +1 -1
  272. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  273. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  274. package/dist/generated/themes/MonthPicker.css.js +1 -1
  275. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  276. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  277. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  278. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  279. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  280. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  281. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  282. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  283. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  284. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  285. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  286. package/dist/generated/themes/MultiInput.css.js +1 -1
  287. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  288. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  289. package/dist/generated/themes/OptionBase.css.js +1 -1
  290. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  291. package/dist/generated/themes/Panel.css.d.ts +1 -1
  292. package/dist/generated/themes/Panel.css.js +1 -1
  293. package/dist/generated/themes/Panel.css.js.map +1 -1
  294. package/dist/generated/themes/Popover.css.d.ts +1 -1
  295. package/dist/generated/themes/Popover.css.js +1 -1
  296. package/dist/generated/themes/Popover.css.js.map +1 -1
  297. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  298. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  299. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  300. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  301. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  302. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  303. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  304. package/dist/generated/themes/RadioButton.css.js +1 -1
  305. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  306. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  307. package/dist/generated/themes/RangeSlider.css.js +1 -1
  308. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  309. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  310. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  311. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  312. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  313. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  314. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  315. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  316. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  317. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  318. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  319. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  320. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  321. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  322. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  323. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  324. package/dist/generated/themes/Select.css.d.ts +1 -1
  325. package/dist/generated/themes/Select.css.js +1 -1
  326. package/dist/generated/themes/Select.css.js.map +1 -1
  327. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  328. package/dist/generated/themes/SliderBase.css.js +1 -1
  329. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  330. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  331. package/dist/generated/themes/SplitButton.css.js +1 -1
  332. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  333. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  334. package/dist/generated/themes/StepInput.css.js +1 -1
  335. package/dist/generated/themes/StepInput.css.js.map +1 -1
  336. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  337. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  338. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  339. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  340. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  341. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  342. package/dist/generated/themes/Switch.css.d.ts +1 -1
  343. package/dist/generated/themes/Switch.css.js +1 -1
  344. package/dist/generated/themes/Switch.css.js.map +1 -1
  345. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  346. package/dist/generated/themes/TabContainer.css.js +1 -1
  347. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  348. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  349. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  350. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  351. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  352. package/dist/generated/themes/TabInStrip.css.js +1 -1
  353. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  354. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  355. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  356. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  357. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  358. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  359. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  360. package/dist/generated/themes/Table.css.d.ts +1 -1
  361. package/dist/generated/themes/Table.css.js +1 -1
  362. package/dist/generated/themes/Table.css.js.map +1 -1
  363. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  364. package/dist/generated/themes/TableCellBase.css.js +1 -1
  365. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  366. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  367. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  368. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  369. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  370. package/dist/generated/themes/TableRow.css.js +1 -1
  371. package/dist/generated/themes/TableRow.css.js.map +1 -1
  372. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  373. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  374. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  375. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  376. package/dist/generated/themes/TableRowBase.css.js +1 -1
  377. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  378. package/dist/generated/themes/Tag.css.d.ts +1 -1
  379. package/dist/generated/themes/Tag.css.js +1 -1
  380. package/dist/generated/themes/Tag.css.js.map +1 -1
  381. package/dist/generated/themes/Text.css.d.ts +1 -1
  382. package/dist/generated/themes/Text.css.js +1 -1
  383. package/dist/generated/themes/Text.css.js.map +1 -1
  384. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  385. package/dist/generated/themes/TextArea.css.js +1 -1
  386. package/dist/generated/themes/TextArea.css.js.map +1 -1
  387. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  388. package/dist/generated/themes/TimePicker.css.js +1 -1
  389. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  390. package/dist/generated/themes/Toast.css.d.ts +1 -1
  391. package/dist/generated/themes/Toast.css.js +1 -1
  392. package/dist/generated/themes/Toast.css.js.map +1 -1
  393. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  394. package/dist/generated/themes/ToggleButton.css.js +1 -1
  395. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  396. package/dist/generated/themes/Token.css.d.ts +1 -1
  397. package/dist/generated/themes/Token.css.js +1 -1
  398. package/dist/generated/themes/Token.css.js.map +1 -1
  399. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  400. package/dist/generated/themes/Tokenizer.css.js +1 -1
  401. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  402. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  403. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  404. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  405. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  406. package/dist/generated/themes/Toolbar.css.js +1 -1
  407. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  408. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  409. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  410. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  411. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  412. package/dist/generated/themes/TreeItem.css.js +1 -1
  413. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  414. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  415. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  416. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  417. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  418. package/dist/generated/themes/YearPicker.css.js +1 -1
  419. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  420. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  421. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  422. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  423. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  424. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  425. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  426. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  427. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  428. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  429. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  430. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  431. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  432. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  433. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  434. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  435. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  436. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  437. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  438. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  439. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  440. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  441. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  442. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  443. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  444. package/dist/types/ButtonBadgeDesign.d.ts +1 -1
  445. package/dist/types/ButtonBadgeDesign.js +1 -1
  446. package/dist/types/ButtonBadgeDesign.js.map +1 -1
  447. package/dist/vscode.html-custom-data.json +3 -3
  448. package/dist/web-types.json +6 -6
  449. package/package.json +9 -9
  450. package/src/ButtonBadgeTemplate.tsx +1 -1
package/dist/Avatar.d.ts CHANGED
@@ -182,7 +182,7 @@ declare class Avatar extends UI5Element implements ITabbable, IAvatarGroupItem {
182
182
  get _ariaHasPopup(): import("@ui5/webcomponents-base/dist/types.js").AriaHasPopup | undefined;
183
183
  get _interactive(): boolean;
184
184
  get validInitials(): string | null | undefined;
185
- get accessibleNameText(): string | undefined;
185
+ get accessibleNameText(): string;
186
186
  get hasImage(): boolean;
187
187
  get initialsContainer(): HTMLObjectElement | null;
188
188
  get fallBackIconDomRef(): Icon | null;
package/dist/Avatar.js CHANGED
@@ -169,7 +169,8 @@ let Avatar = Avatar_1 = class Avatar extends UI5Element {
169
169
  if (this.accessibleName) {
170
170
  return this.accessibleName;
171
171
  }
172
- return Avatar_1.i18nBundle.getText(AVATAR_TOOLTIP) || undefined;
172
+ const defaultLabel = Avatar_1.i18nBundle.getText(AVATAR_TOOLTIP);
173
+ return this.initials ? `${defaultLabel} ${this.initials}`.trim() : defaultLabel;
173
174
  }
174
175
  get hasImage() {
175
176
  this._hasImage = !!this.image.length;
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../src/Avatar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type { AccessibilityAttributes } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport { isEnter, isSpace } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { IAvatarGroupItem } from \"./AvatarGroup.js\";\n// Template\nimport AvatarTemplate from \"./AvatarTemplate.js\";\n\nimport { AVATAR_TOOLTIP } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport AvatarCss from \"./generated/themes/Avatar.css.js\";\n\nimport type Icon from \"./Icon.js\";\nimport AvatarSize from \"./types/AvatarSize.js\";\nimport type AvatarShape from \"./types/AvatarShape.js\";\nimport type AvatarColorScheme from \"./types/AvatarColorScheme.js\";\n\n// Icon\nimport \"@ui5/webcomponents-icons/dist/employee.js\";\n\ntype AvatarAccessibilityAttributes = Pick<AccessibilityAttributes, \"hasPopup\">;\n\n/**\n * @class\n * ### Overview\n *\n * An image-like component that has different display options for representing images and icons\n * in different shapes and sizes, depending on the use case.\n *\n * The shape can be circular or square. There are several predefined sizes, as well as an option to\n * set a custom size.\n *\n * ### Keyboard Handling\n *\n * - [Space] / [Enter] or [Return] - Fires the `click` event if the `interactive` property is set to true.\n * - [Shift] - If [Space] is pressed, pressing [Shift] releases the component without triggering the click event.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Avatar.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.6\n * @implements {IAvatarGroupItem}\n * @public\n */\n@customElement({\n\ttag: \"ui5-avatar\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\tstyles: AvatarCss,\n\ttemplate: AvatarTemplate,\n})\n/**\n * Fired on mouseup, space and enter if avatar is interactive\n *\n * **Note:** The event will not be fired if the `disabled`\n * property is set to `true`.\n * @private\n * @since 1.0.0-rc.11\n */\n@event(\"click\", {\n\tbubbles: true,\n})\nclass Avatar extends UI5Element implements ITabbable, IAvatarGroupItem {\n\teventDetails!: {\n\t\tclick: void,\n\t}\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines if the avatar is interactive (focusable and pressable).\n\t *\n\t * **Note:** This property won't have effect if the `disabled`\n\t * property is set to `true`.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines the name of the UI5 Icon, that will be displayed.\n\t *\n\t * **Note:** If `image` slot is provided, the property will be ignored.\n\t *\n\t * **Note:** You should import the desired icon first, then use its name as \"icon\".\n\t *\n\t * `import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\t *\n\t * `<ui5-avatar icon=\"employee\">`\n\t *\n\t * **Note:** If no icon or an empty one is provided, by default the \"employee\" icon should be displayed.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines the name of the fallback icon, which should be displayed in the following cases:\n\t *\n\t * \t- If the initials are not valid (more than 3 letters, unsupported languages or empty initials).\n\t * \t- If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).\n\t * \t- If the image src is wrong.\n\t *\n\t * **Note:** If not set, a default fallback icon \"employee\" is displayed.\n\t *\n\t * **Note:** You should import the desired icon first, then use its name as \"fallback-icon\".\n\t *\n\t * `import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\t *\n\t * `<ui5-avatar fallback-icon=\"alert\">`\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default \"employee\"\n\t * @public\n\t */\n\t@property()\n\tfallbackIcon = \"employee\";\n\n\t/**\n\t * Defines the displayed initials.\n\t *\n\t * Up to three Latin letters can be displayed as initials.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tinitials?: string;\n\n\t/**\n\t * Defines the shape of the component.\n\t * @default \"Circle\"\n\t * @public\n\t */\n\t@property()\n\tshape: `${AvatarShape}` = \"Circle\";\n\n\t/**\n\t * Defines predefined size of the component.\n\t * @default \"S\"\n\t * @public\n\t */\n\t@property()\n\tsize: `${AvatarSize}` = \"S\";\n\n\t/**\n\t * Defines the background color of the desired image.\n\t * @default \"Accent6\"\n\t * @public\n\t */\n\t@property()\n\tcolorScheme: `${AvatarColorScheme}` = \"Accent6\";\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\t_colorScheme: `${AvatarColorScheme}` = \"Accent6\";\n\n\t/**\n\t * Defines the text alternative of the component.\n\t * If not provided a default text alternative will be set, if present.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.7\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the additional accessibility attributes that will be applied to the component.\n\t * The following field is supported:\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t *\n\t * @public\n\t * @since 2.0.0\n\t * @default {}\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes: AvatarAccessibilityAttributes = {};\n\n\t@property({ noAttribute: true })\n\tforcedTabIndex?: string;\n\n\t@property({ type: Boolean })\n\t_hasImage = false;\n\n\t/**\n\t * Receives the desired `<img>` tag\n\t *\n\t * **Note:** If you experience flickering of the provided image, you can hide the component until it is being defined with the following CSS:\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\timage!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the optional badge that will be used for visual affordance.\n\t *\n\t * **Note:** While the slot allows for custom badges, to achieve\n\t * the Fiori design, you can use the `ui5-tag` with `ui5-icon`\n\t * in the corresponding `icon` slot, without text nodes.\n\t * @public\n\t * @since 1.7.0\n\t */\n\t@slot()\n\tbadge!: Array<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t}\n\n\tget tabindex() {\n\t\tif (this.forcedTabIndex) {\n\t\t\treturn parseInt(this.forcedTabIndex);\n\t\t}\n\t\treturn this._interactive ? 0 : undefined;\n\t}\n\n\t/**\n\t * Returns the effective avatar size.\n\t * @default \"S\"\n\t * @private\n\t */\n\tget effectiveSize(): AvatarSize {\n\t\t// we read the attribute, because the \"size\" property will always have a default value\n\t\treturn this.getAttribute(\"size\") as AvatarSize || AvatarSize.S;\n\t}\n\n\t/**\n\t * Returns the effective background color.\n\t * @default \"Accent6\"\n\t * @private\n\t */\n\tget еffectiveBackgroundColor(): AvatarColorScheme {\n\t\t// we read the attribute, because the \"background-color\" property will always have a default value\n\t\treturn this.getAttribute(\"color-scheme\") as AvatarColorScheme || this._colorScheme;\n\t}\n\n\tget _role() {\n\t\treturn this._interactive ? \"button\" : \"img\";\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this._getAriaHasPopup();\n\t}\n\n\tget _interactive() {\n\t\treturn this.interactive && !this.disabled;\n\t}\n\n\tget validInitials() {\n\t\t// initials should consist of only 1,2 or 3 latin letters\n\t\tconst validInitials = /^[a-zA-Zà-üÀ-Ü]{1,3}$/,\n\t\t\tareInitialsValid = this.initials && validInitials.test(this.initials);\n\n\t\tif (areInitialsValid) {\n\t\t\treturn this.initials;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tget accessibleNameText() {\n\t\tif (this.accessibleName) {\n\t\t\treturn this.accessibleName;\n\t\t}\n\n\t\treturn Avatar.i18nBundle.getText(AVATAR_TOOLTIP) || undefined;\n\t}\n\n\tget hasImage() {\n\t\tthis._hasImage = !!this.image.length;\n\t\treturn this._hasImage;\n\t}\n\n\tget initialsContainer(): HTMLObjectElement | null {\n\t\treturn this.getDomRef()!.querySelector(\".ui5-avatar-initials\");\n\t}\n\n\tget fallBackIconDomRef(): Icon | null {\n\t\treturn this.getDomRef()!.querySelector(\".ui5-avatar-icon-fallback\");\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\t\tif (this.initials && !this.icon) {\n\t\t\tthis._checkInitials();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\n\t\tthis.initialsContainer && ResizeHandler.register(this.initialsContainer,\n\t\t\tthis._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tthis.initialsContainer && ResizeHandler.deregister(this.initialsContainer,\n\t\t\tthis._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tif (this.initials && !this.icon) {\n\t\t\tthis._checkInitials();\n\t\t}\n\t}\n\n\t_checkInitials() {\n\t\tconst avatar = this.getDomRef()!;\n\t\tconst avatarInitials = avatar.querySelector(\".ui5-avatar-initials\");\n\t\tconst validInitials = this.validInitials && avatarInitials && avatarInitials.scrollWidth <= avatar.scrollWidth;\n\n\t\tif (validInitials) {\n\t\t\tthis.showInitials();\n\t\t\treturn;\n\t\t}\n\t\tthis.showFallbackIcon();\n\t}\n\n\tshowFallbackIcon() {\n\t\tthis.initialsContainer?.classList.add(\"ui5-avatar-initials-hidden\");\n\t\tthis.fallBackIconDomRef?.classList.remove(\"ui5-avatar-fallback-icon-hidden\");\n\t}\n\n\tshowInitials() {\n\t\tthis.initialsContainer?.classList.remove(\"ui5-avatar-initials-hidden\");\n\t\tthis.fallBackIconDomRef?.classList.add(\"ui5-avatar-fallback-icon-hidden\");\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t\tthis._fireClick();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (!this._interactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._fireClick();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault(); // prevent scrolling\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (this._interactive && !e.shiftKey && isSpace(e)) {\n\t\t\tthis._fireClick();\n\t\t}\n\t}\n\n\t_fireClick() {\n\t\tthis.fireDecoratorEvent(\"click\");\n\t}\n\n\t_getAriaHasPopup() {\n\t\tconst ariaHaspopup = this.accessibilityAttributes.hasPopup;\n\n\t\tif (!this._interactive || !ariaHaspopup) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn ariaHaspopup;\n\t}\n}\n\nAvatar.define();\n\nexport default Avatar;\nexport type {\n\tAvatarAccessibilityAttributes,\n};\n"]}
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../src/Avatar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type { AccessibilityAttributes } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport { isEnter, isSpace } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { IAvatarGroupItem } from \"./AvatarGroup.js\";\n// Template\nimport AvatarTemplate from \"./AvatarTemplate.js\";\n\nimport { AVATAR_TOOLTIP } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport AvatarCss from \"./generated/themes/Avatar.css.js\";\n\nimport type Icon from \"./Icon.js\";\nimport AvatarSize from \"./types/AvatarSize.js\";\nimport type AvatarShape from \"./types/AvatarShape.js\";\nimport type AvatarColorScheme from \"./types/AvatarColorScheme.js\";\n\n// Icon\nimport \"@ui5/webcomponents-icons/dist/employee.js\";\n\ntype AvatarAccessibilityAttributes = Pick<AccessibilityAttributes, \"hasPopup\">;\n\n/**\n * @class\n * ### Overview\n *\n * An image-like component that has different display options for representing images and icons\n * in different shapes and sizes, depending on the use case.\n *\n * The shape can be circular or square. There are several predefined sizes, as well as an option to\n * set a custom size.\n *\n * ### Keyboard Handling\n *\n * - [Space] / [Enter] or [Return] - Fires the `click` event if the `interactive` property is set to true.\n * - [Shift] - If [Space] is pressed, pressing [Shift] releases the component without triggering the click event.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Avatar.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.6\n * @implements {IAvatarGroupItem}\n * @public\n */\n@customElement({\n\ttag: \"ui5-avatar\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\tstyles: AvatarCss,\n\ttemplate: AvatarTemplate,\n})\n/**\n * Fired on mouseup, space and enter if avatar is interactive\n *\n * **Note:** The event will not be fired if the `disabled`\n * property is set to `true`.\n * @private\n * @since 1.0.0-rc.11\n */\n@event(\"click\", {\n\tbubbles: true,\n})\nclass Avatar extends UI5Element implements ITabbable, IAvatarGroupItem {\n\teventDetails!: {\n\t\tclick: void,\n\t}\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines if the avatar is interactive (focusable and pressable).\n\t *\n\t * **Note:** This property won't have effect if the `disabled`\n\t * property is set to `true`.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\t/**\n\t * Defines the name of the UI5 Icon, that will be displayed.\n\t *\n\t * **Note:** If `image` slot is provided, the property will be ignored.\n\t *\n\t * **Note:** You should import the desired icon first, then use its name as \"icon\".\n\t *\n\t * `import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\t *\n\t * `<ui5-avatar icon=\"employee\">`\n\t *\n\t * **Note:** If no icon or an empty one is provided, by default the \"employee\" icon should be displayed.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines the name of the fallback icon, which should be displayed in the following cases:\n\t *\n\t * \t- If the initials are not valid (more than 3 letters, unsupported languages or empty initials).\n\t * \t- If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).\n\t * \t- If the image src is wrong.\n\t *\n\t * **Note:** If not set, a default fallback icon \"employee\" is displayed.\n\t *\n\t * **Note:** You should import the desired icon first, then use its name as \"fallback-icon\".\n\t *\n\t * `import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\t *\n\t * `<ui5-avatar fallback-icon=\"alert\">`\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default \"employee\"\n\t * @public\n\t */\n\t@property()\n\tfallbackIcon = \"employee\";\n\n\t/**\n\t * Defines the displayed initials.\n\t *\n\t * Up to three Latin letters can be displayed as initials.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tinitials?: string;\n\n\t/**\n\t * Defines the shape of the component.\n\t * @default \"Circle\"\n\t * @public\n\t */\n\t@property()\n\tshape: `${AvatarShape}` = \"Circle\";\n\n\t/**\n\t * Defines predefined size of the component.\n\t * @default \"S\"\n\t * @public\n\t */\n\t@property()\n\tsize: `${AvatarSize}` = \"S\";\n\n\t/**\n\t * Defines the background color of the desired image.\n\t * @default \"Accent6\"\n\t * @public\n\t */\n\t@property()\n\tcolorScheme: `${AvatarColorScheme}` = \"Accent6\";\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\t_colorScheme: `${AvatarColorScheme}` = \"Accent6\";\n\n\t/**\n\t * Defines the text alternative of the component.\n\t * If not provided a default text alternative will be set, if present.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.7\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the additional accessibility attributes that will be applied to the component.\n\t * The following field is supported:\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t *\n\t * @public\n\t * @since 2.0.0\n\t * @default {}\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes: AvatarAccessibilityAttributes = {};\n\n\t@property({ noAttribute: true })\n\tforcedTabIndex?: string;\n\n\t@property({ type: Boolean })\n\t_hasImage = false;\n\n\t/**\n\t * Receives the desired `<img>` tag\n\t *\n\t * **Note:** If you experience flickering of the provided image, you can hide the component until it is being defined with the following CSS:\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\timage!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the optional badge that will be used for visual affordance.\n\t *\n\t * **Note:** While the slot allows for custom badges, to achieve\n\t * the Fiori design, you can use the `ui5-tag` with `ui5-icon`\n\t * in the corresponding `icon` slot, without text nodes.\n\t * @public\n\t * @since 1.7.0\n\t */\n\t@slot()\n\tbadge!: Array<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t}\n\n\tget tabindex() {\n\t\tif (this.forcedTabIndex) {\n\t\t\treturn parseInt(this.forcedTabIndex);\n\t\t}\n\t\treturn this._interactive ? 0 : undefined;\n\t}\n\n\t/**\n\t * Returns the effective avatar size.\n\t * @default \"S\"\n\t * @private\n\t */\n\tget effectiveSize(): AvatarSize {\n\t\t// we read the attribute, because the \"size\" property will always have a default value\n\t\treturn this.getAttribute(\"size\") as AvatarSize || AvatarSize.S;\n\t}\n\n\t/**\n\t * Returns the effective background color.\n\t * @default \"Accent6\"\n\t * @private\n\t */\n\tget еffectiveBackgroundColor(): AvatarColorScheme {\n\t\t// we read the attribute, because the \"background-color\" property will always have a default value\n\t\treturn this.getAttribute(\"color-scheme\") as AvatarColorScheme || this._colorScheme;\n\t}\n\n\tget _role() {\n\t\treturn this._interactive ? \"button\" : \"img\";\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this._getAriaHasPopup();\n\t}\n\n\tget _interactive() {\n\t\treturn this.interactive && !this.disabled;\n\t}\n\n\tget validInitials() {\n\t\t// initials should consist of only 1,2 or 3 latin letters\n\t\tconst validInitials = /^[a-zA-Zà-üÀ-Ü]{1,3}$/,\n\t\t\tareInitialsValid = this.initials && validInitials.test(this.initials);\n\n\t\tif (areInitialsValid) {\n\t\t\treturn this.initials;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tget accessibleNameText() {\n\t\tif (this.accessibleName) {\n\t\t\treturn this.accessibleName;\n\t\t}\n\n\t\tconst defaultLabel = Avatar.i18nBundle.getText(AVATAR_TOOLTIP);\n\n\t\treturn this.initials ? `${defaultLabel} ${this.initials}`.trim() : defaultLabel;\n\t}\n\n\tget hasImage() {\n\t\tthis._hasImage = !!this.image.length;\n\t\treturn this._hasImage;\n\t}\n\n\tget initialsContainer(): HTMLObjectElement | null {\n\t\treturn this.getDomRef()!.querySelector(\".ui5-avatar-initials\");\n\t}\n\n\tget fallBackIconDomRef(): Icon | null {\n\t\treturn this.getDomRef()!.querySelector(\".ui5-avatar-icon-fallback\");\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\t\tif (this.initials && !this.icon) {\n\t\t\tthis._checkInitials();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\n\t\tthis.initialsContainer && ResizeHandler.register(this.initialsContainer,\n\t\t\tthis._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tthis.initialsContainer && ResizeHandler.deregister(this.initialsContainer,\n\t\t\tthis._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tif (this.initials && !this.icon) {\n\t\t\tthis._checkInitials();\n\t\t}\n\t}\n\n\t_checkInitials() {\n\t\tconst avatar = this.getDomRef()!;\n\t\tconst avatarInitials = avatar.querySelector(\".ui5-avatar-initials\");\n\t\tconst validInitials = this.validInitials && avatarInitials && avatarInitials.scrollWidth <= avatar.scrollWidth;\n\n\t\tif (validInitials) {\n\t\t\tthis.showInitials();\n\t\t\treturn;\n\t\t}\n\t\tthis.showFallbackIcon();\n\t}\n\n\tshowFallbackIcon() {\n\t\tthis.initialsContainer?.classList.add(\"ui5-avatar-initials-hidden\");\n\t\tthis.fallBackIconDomRef?.classList.remove(\"ui5-avatar-fallback-icon-hidden\");\n\t}\n\n\tshowInitials() {\n\t\tthis.initialsContainer?.classList.remove(\"ui5-avatar-initials-hidden\");\n\t\tthis.fallBackIconDomRef?.classList.add(\"ui5-avatar-fallback-icon-hidden\");\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t\tthis._fireClick();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (!this._interactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._fireClick();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault(); // prevent scrolling\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (this._interactive && !e.shiftKey && isSpace(e)) {\n\t\t\tthis._fireClick();\n\t\t}\n\t}\n\n\t_fireClick() {\n\t\tthis.fireDecoratorEvent(\"click\");\n\t}\n\n\t_getAriaHasPopup() {\n\t\tconst ariaHaspopup = this.accessibilityAttributes.hasPopup;\n\n\t\tif (!this._interactive || !ariaHaspopup) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn ariaHaspopup;\n\t}\n}\n\nAvatar.define();\n\nexport default Avatar;\nexport type {\n\tAvatarAccessibilityAttributes,\n};\n"]}
@@ -1,11 +1,11 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import type BadgeDesign from "./types/ButtonBadgeDesign.js";
2
+ import ButtonBadgeDesign from "./types/ButtonBadgeDesign.js";
3
3
  /**
4
4
  * @class
5
5
  *
6
6
  * The `ui5-button-badge` component defines a badge that appears in the `ui5-button`.
7
7
  *
8
- * * ### ES6 Module Import
8
+ * ### ES6 Module Import
9
9
  *
10
10
  * `import "@ui5/webcomponents/dist/ButtonBadge.js";`
11
11
  * @constructor
@@ -15,18 +15,24 @@ import type BadgeDesign from "./types/ButtonBadgeDesign.js";
15
15
  */
16
16
  declare class ButtonBadge extends UI5Element {
17
17
  /**
18
- * Determines where the badge should be placed and how it should be styled.
18
+ * Defines the badge placement and appearance.
19
+ * - **InlineText** - displayed inside the button after its text, and recommended for **compact** density.
20
+ * - **OverlayText** - displayed at the top-end corner of the button, and recommended for **cozy** density.
21
+ * - **AttentionDot** - displayed at the top-end corner of the button as a dot, and suitable for both **cozy** and **compact** densities.
19
22
  * @since 2.7.0
20
23
  * @public
21
24
  */
22
- design: `${BadgeDesign}`;
25
+ design: `${ButtonBadgeDesign}`;
23
26
  /**
24
27
  * Defines the text of the component.
25
28
  *
26
- * **Note:** Text is not needed when the `design` property is set to `AttentionDot`.
29
+ * **Note:** Text is not applied when the `design` property is set to `AttentionDot`.
30
+ *
31
+ * **Note:** The badge component only accepts numeric values and the "+" symbol. Using other characters or formats may result in unpredictable behavior, which is not guaranteed or supported.
27
32
  * @since 2.7.0
28
33
  * @public
29
34
  */
30
35
  text: string;
36
+ get effectiveText(): string;
31
37
  }
32
38
  export default ButtonBadge;
@@ -7,6 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
8
8
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
9
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
+ import ButtonBadgeDesign from "./types/ButtonBadgeDesign.js";
10
11
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
11
12
  import ButtonBadgeTemplate from "./ButtonBadgeTemplate.js";
12
13
  // Styles
@@ -16,7 +17,7 @@ import buttonBadgeCss from "./generated/themes/ButtonBadge.css.js";
16
17
  *
17
18
  * The `ui5-button-badge` component defines a badge that appears in the `ui5-button`.
18
19
  *
19
- * * ### ES6 Module Import
20
+ * ### ES6 Module Import
20
21
  *
21
22
  * `import "@ui5/webcomponents/dist/ButtonBadge.js";`
22
23
  * @constructor
@@ -28,7 +29,10 @@ let ButtonBadge = class ButtonBadge extends UI5Element {
28
29
  constructor() {
29
30
  super(...arguments);
30
31
  /**
31
- * Determines where the badge should be placed and how it should be styled.
32
+ * Defines the badge placement and appearance.
33
+ * - **InlineText** - displayed inside the button after its text, and recommended for **compact** density.
34
+ * - **OverlayText** - displayed at the top-end corner of the button, and recommended for **cozy** density.
35
+ * - **AttentionDot** - displayed at the top-end corner of the button as a dot, and suitable for both **cozy** and **compact** densities.
32
36
  * @since 2.7.0
33
37
  * @public
34
38
  */
@@ -36,12 +40,17 @@ let ButtonBadge = class ButtonBadge extends UI5Element {
36
40
  /**
37
41
  * Defines the text of the component.
38
42
  *
39
- * **Note:** Text is not needed when the `design` property is set to `AttentionDot`.
43
+ * **Note:** Text is not applied when the `design` property is set to `AttentionDot`.
44
+ *
45
+ * **Note:** The badge component only accepts numeric values and the "+" symbol. Using other characters or formats may result in unpredictable behavior, which is not guaranteed or supported.
40
46
  * @since 2.7.0
41
47
  * @public
42
48
  */
43
49
  this.text = "";
44
50
  }
51
+ get effectiveText() {
52
+ return this.design === ButtonBadgeDesign.AttentionDot ? "" : this.text;
53
+ }
45
54
  };
46
55
  __decorate([
47
56
  property()
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonBadge.js","sourceRoot":"","sources":["../src/ButtonBadge.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,SAAS;AACT,OAAO,cAAc,MAAM,uCAAuC,CAAC;AAEnE;;;;;;;;;;;;GAYG;AAOH,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,UAAU;IAApC;;QACC;;;;UAIE;QAEF,WAAM,GAAqB,cAAc,CAAC;QAE1C;;;;;;UAME;QAEF,SAAI,GAAW,EAAE,CAAC;IACnB,CAAC;CAAA,CAAA;AAXA;IADC,QAAQ,EAAE;2CAC+B;AAU1C;IADC,QAAQ,EAAE;yCACO;AAjBb,WAAW;IANhB,aAAa,CAAC;QACd,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,mBAAmB;QAC7B,MAAM,EAAE,cAAc;KACtB,CAAC;GACI,WAAW,CAkBhB;AAED,WAAW,CAAC,MAAM,EAAE,CAAC;AAErB,eAAe,WAAW,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type BadgeDesign from \"./types/ButtonBadgeDesign.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ButtonBadgeTemplate from \"./ButtonBadgeTemplate.js\";\n\n// Styles\nimport buttonBadgeCss from \"./generated/themes/ButtonBadge.css.js\";\n\n/**\n * @class\n *\n * The `ui5-button-badge` component defines a badge that appears in the `ui5-button`.\n *\n * * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/ButtonBadge.js\";`\n * @constructor\n * @extends UI5Element\n * @since 2.7.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-button-badge\",\n\trenderer: jsxRenderer,\n\ttemplate: ButtonBadgeTemplate,\n\tstyles: buttonBadgeCss,\n})\nclass ButtonBadge extends UI5Element {\n\t/**\n * Determines where the badge should be placed and how it should be styled.\n * @since 2.7.0\n\t * @public\n\t*/\n\t@property()\n\tdesign: `${BadgeDesign}` = \"AttentionDot\";\n\n\t/**\n * Defines the text of the component.\n\t *\n\t * **Note:** Text is not needed when the `design` property is set to `AttentionDot`.\n * @since 2.7.0\n\t * @public\n\t*/\n\t@property()\n\ttext: string = \"\";\n}\n\nButtonBadge.define();\n\nexport default ButtonBadge;\n"]}
1
+ {"version":3,"file":"ButtonBadge.js","sourceRoot":"","sources":["../src/ButtonBadge.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,iBAAiB,MAAM,8BAA8B,CAAC;AAC7D,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,SAAS;AACT,OAAO,cAAc,MAAM,uCAAuC,CAAC;AAEnE;;;;;;;;;;;;GAYG;AAOH,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,UAAU;IAApC;;QACC;;;;;;;UAOE;QAEF,WAAM,GAA2B,cAAc,CAAC;QAEhD;;;;;;;;UAQE;QAEF,SAAI,GAAW,EAAE,CAAC;IAKnB,CAAC;IAHA,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,MAAM,KAAK,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACxE,CAAC;CACD,CAAA;AAjBA;IADC,QAAQ,EAAE;2CACqC;AAYhD;IADC,QAAQ,EAAE;yCACO;AAtBb,WAAW;IANhB,aAAa,CAAC;QACd,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,mBAAmB;QAC7B,MAAM,EAAE,cAAc;KACtB,CAAC;GACI,WAAW,CA2BhB;AAED,WAAW,CAAC,MAAM,EAAE,CAAC;AAErB,eAAe,WAAW,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ButtonBadgeDesign from \"./types/ButtonBadgeDesign.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ButtonBadgeTemplate from \"./ButtonBadgeTemplate.js\";\n\n// Styles\nimport buttonBadgeCss from \"./generated/themes/ButtonBadge.css.js\";\n\n/**\n * @class\n *\n * The `ui5-button-badge` component defines a badge that appears in the `ui5-button`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/ButtonBadge.js\";`\n * @constructor\n * @extends UI5Element\n * @since 2.7.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-button-badge\",\n\trenderer: jsxRenderer,\n\ttemplate: ButtonBadgeTemplate,\n\tstyles: buttonBadgeCss,\n})\nclass ButtonBadge extends UI5Element {\n\t/**\n * Defines the badge placement and appearance.\n\t * - **InlineText** - displayed inside the button after its text, and recommended for **compact** density.\n\t * - **OverlayText** - displayed at the top-end corner of the button, and recommended for **cozy** density.\n\t * - **AttentionDot** - displayed at the top-end corner of the button as a dot, and suitable for both **cozy** and **compact** densities.\n * @since 2.7.0\n\t * @public\n\t*/\n\t@property()\n\tdesign: `${ButtonBadgeDesign}` = \"AttentionDot\";\n\n\t/**\n * Defines the text of the component.\n\t *\n\t * **Note:** Text is not applied when the `design` property is set to `AttentionDot`.\n\t *\n\t * **Note:** The badge component only accepts numeric values and the \"+\" symbol. Using other characters or formats may result in unpredictable behavior, which is not guaranteed or supported.\n * @since 2.7.0\n\t * @public\n\t*/\n\t@property()\n\ttext: string = \"\";\n\n\tget effectiveText() {\n\t\treturn this.design === ButtonBadgeDesign.AttentionDot ? \"\" : this.text;\n\t}\n}\n\nButtonBadge.define();\n\nexport default ButtonBadge;\n"]}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "@ui5/webcomponents-base/jsx-runtime";
2
2
  import Tag from "./Tag.js";
3
3
  export default function ButtonTemplate() {
4
- return _jsx(Tag, { design: "Critical", "hide-state-icon": true, children: this.text });
4
+ return _jsx(Tag, { design: "Critical", "hide-state-icon": true, children: this.effectiveText });
5
5
  }
6
6
  //# sourceMappingURL=ButtonBadgeTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonBadgeTemplate.js","sourceRoot":"","sources":["../src/ButtonBadgeTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,MAAM,CAAC,OAAO,UAAU,cAAc;IACrC,OAAO,KAAC,GAAG,IAAC,MAAM,EAAC,UAAU,qCAAkB,IAAI,CAAC,IAAI,GAAO,CAAC;AACjE,CAAC","sourcesContent":["import type ButtonBadge from \"./ButtonBadge.js\";\nimport Tag from \"./Tag.js\";\n\nexport default function ButtonTemplate(this: ButtonBadge) {\n\treturn <Tag design=\"Critical\" hide-state-icon>{this.text}</Tag>;\n}\n"]}
1
+ {"version":3,"file":"ButtonBadgeTemplate.js","sourceRoot":"","sources":["../src/ButtonBadgeTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,MAAM,CAAC,OAAO,UAAU,cAAc;IACrC,OAAO,KAAC,GAAG,IAAC,MAAM,EAAC,UAAU,qCAAkB,IAAI,CAAC,aAAa,GAAO,CAAC;AAC1E,CAAC","sourcesContent":["import type ButtonBadge from \"./ButtonBadge.js\";\nimport Tag from \"./Tag.js\";\n\nexport default function ButtonTemplate(this: ButtonBadge) {\n\treturn <Tag design=\"Critical\" hide-state-icon>{this.effectiveText}</Tag>;\n}\n"]}
package/dist/Input.d.ts CHANGED
@@ -327,6 +327,7 @@ declare class Input extends UI5Element implements SuggestionComponent, IFormInpu
327
327
  _shouldAutocomplete?: boolean;
328
328
  _keyDown?: boolean;
329
329
  _isKeyNavigation?: boolean;
330
+ _indexOfSelectedItem: number;
330
331
  _selectedText?: string;
331
332
  _clearIconClicked?: boolean;
332
333
  _focusedAfterClear: boolean;
@@ -349,6 +350,7 @@ declare class Input extends UI5Element implements SuggestionComponent, IFormInpu
349
350
  onAfterRendering(): void;
350
351
  _onkeydown(e: KeyboardEvent): void;
351
352
  _onkeyup(e: KeyboardEvent): void;
353
+ get currentItemIndex(): number;
352
354
  _handleUp(e: KeyboardEvent): void;
353
355
  _handleDown(e: KeyboardEvent): void;
354
356
  _handleSpace(e: KeyboardEvent): void;
@@ -379,6 +381,7 @@ declare class Input extends UI5Element implements SuggestionComponent, IFormInpu
379
381
  _startsWithMatchingItems(str: string): Array<IInputSuggestionItemSelectable>;
380
382
  _getFirstMatchingItem(current: string): IInputSuggestionItemSelectable | undefined;
381
383
  _handleSelectionChange(e: CustomEvent<ListSelectionChangeEventDetail>): void;
384
+ _selectMatchingItem(item: IInputSuggestionItemSelectable): void;
382
385
  _handleTypeAhead(item: IInputSuggestionItemSelectable): void;
383
386
  _handleResize(): void;
384
387
  _updateAssociatedLabelsTexts(): void;
package/dist/Input.js CHANGED
@@ -247,6 +247,7 @@ let Input = Input_1 = class Input extends UI5Element {
247
247
  // Indicates whether the value of the input is comming from a suggestion item
248
248
  this._isLatestValueFromSuggestions = false;
249
249
  this._isChangeTriggeredBySuggestion = false;
250
+ this._indexOfSelectedItem = -1;
250
251
  this._handleResizeBound = this._handleResize.bind(this);
251
252
  this._keepInnerValue = false;
252
253
  this._focusedAfterClear = false;
@@ -312,6 +313,7 @@ let Input = Input_1 = class Input extends UI5Element {
312
313
  const item = this._getFirstMatchingItem(value);
313
314
  if (item) {
314
315
  this._handleTypeAhead(item);
316
+ this._selectMatchingItem(item);
315
317
  }
316
318
  }
317
319
  }
@@ -382,14 +384,20 @@ let Input = Input_1 = class Input extends UI5Element {
382
384
  }
383
385
  this._keyDown = false;
384
386
  }
387
+ get currentItemIndex() {
388
+ const allItems = this.Suggestions?._getItems();
389
+ const currentItem = allItems.find(item => { return item.selected || item.focused; });
390
+ const indexOfCurrentItem = currentItem ? allItems.indexOf(currentItem) : -1;
391
+ return indexOfCurrentItem;
392
+ }
385
393
  _handleUp(e) {
386
394
  if (this.Suggestions?.isOpened()) {
387
- this.Suggestions.onUp(e);
395
+ this.Suggestions.onUp(e, this.currentItemIndex);
388
396
  }
389
397
  }
390
398
  _handleDown(e) {
391
399
  if (this.Suggestions?.isOpened()) {
392
- this.Suggestions.onDown(e);
400
+ this.Suggestions.onDown(e, this.currentItemIndex);
393
401
  }
394
402
  }
395
403
  _handleSpace(e) {
@@ -663,6 +671,9 @@ let Input = Input_1 = class Input extends UI5Element {
663
671
  _handleSelectionChange(e) {
664
672
  this.Suggestions?.onItemPress(e);
665
673
  }
674
+ _selectMatchingItem(item) {
675
+ item.selected = true;
676
+ }
666
677
  _handleTypeAhead(item) {
667
678
  const value = item.text ? item.text : "";
668
679
  this._innerValue = value;
@@ -694,10 +705,13 @@ let Input = Input_1 = class Input extends UI5Element {
694
705
  this.blur();
695
706
  this.focused = false;
696
707
  }
697
- if (this._changeToBeFired) {
708
+ if (this._changeToBeFired && !this._isChangeTriggeredBySuggestion) {
698
709
  this.fireDecoratorEvent(INPUT_EVENTS.CHANGE);
699
- this._changeToBeFired = false;
700
710
  }
711
+ else {
712
+ this._isChangeTriggeredBySuggestion = false;
713
+ }
714
+ this._changeToBeFired = false;
701
715
  this.open = false;
702
716
  this.isTyping = false;
703
717
  if (this.hasSuggestionItemSelected) {