@ui5/webcomponents 2.13.0-rc.0 → 2.13.0-rc.1

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 (500) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/ComboBox.d.ts +23 -6
  4. package/dist/ComboBox.js +128 -54
  5. package/dist/ComboBox.js.map +1 -1
  6. package/dist/ComboBoxPopoverTemplate.js +0 -1
  7. package/dist/ComboBoxPopoverTemplate.js.map +1 -1
  8. package/dist/ComboBoxTemplate.js +2 -1
  9. package/dist/ComboBoxTemplate.js.map +1 -1
  10. package/dist/FileUploader.d.ts +52 -13
  11. package/dist/FileUploader.js +165 -48
  12. package/dist/FileUploader.js.map +1 -1
  13. package/dist/FileUploaderPopoverTemplate.js +1 -3
  14. package/dist/FileUploaderPopoverTemplate.js.map +1 -1
  15. package/dist/FileUploaderTemplate.js +5 -4
  16. package/dist/FileUploaderTemplate.js.map +1 -1
  17. package/dist/Input.d.ts +19 -5
  18. package/dist/Input.js +115 -17
  19. package/dist/Input.js.map +1 -1
  20. package/dist/InputTemplate.js +2 -1
  21. package/dist/InputTemplate.js.map +1 -1
  22. package/dist/ListItemStandard.d.ts +12 -8
  23. package/dist/ListItemStandard.js +3 -8
  24. package/dist/ListItemStandard.js.map +1 -1
  25. package/dist/MultiComboBox.d.ts +20 -1
  26. package/dist/MultiComboBox.js +120 -20
  27. package/dist/MultiComboBox.js.map +1 -1
  28. package/dist/MultiComboBoxPopoverTemplate.js +1 -1
  29. package/dist/MultiComboBoxPopoverTemplate.js.map +1 -1
  30. package/dist/MultiComboBoxTemplate.js +2 -1
  31. package/dist/MultiComboBoxTemplate.js.map +1 -1
  32. package/dist/MultiInput.js +1 -1
  33. package/dist/MultiInput.js.map +1 -1
  34. package/dist/SplitButtonTemplate.js +1 -1
  35. package/dist/SplitButtonTemplate.js.map +1 -1
  36. package/dist/Tokenizer.js +4 -0
  37. package/dist/Tokenizer.js.map +1 -1
  38. package/dist/TokenizerPopoverTemplate.js +1 -1
  39. package/dist/TokenizerPopoverTemplate.js.map +1 -1
  40. package/dist/css/themes/Avatar.css +1 -1
  41. package/dist/css/themes/AvatarGroup.css +1 -1
  42. package/dist/css/themes/Bar.css +1 -1
  43. package/dist/css/themes/Breadcrumbs.css +1 -1
  44. package/dist/css/themes/BusyIndicator.css +1 -1
  45. package/dist/css/themes/Button.css +1 -1
  46. package/dist/css/themes/ButtonBadge.css +1 -1
  47. package/dist/css/themes/Calendar.css +1 -1
  48. package/dist/css/themes/CalendarHeader.css +1 -1
  49. package/dist/css/themes/CalendarLegend.css +1 -1
  50. package/dist/css/themes/CalendarLegendItem.css +1 -1
  51. package/dist/css/themes/Card.css +1 -1
  52. package/dist/css/themes/CardHeader.css +1 -1
  53. package/dist/css/themes/Carousel.css +1 -1
  54. package/dist/css/themes/CheckBox.css +1 -1
  55. package/dist/css/themes/ColorPalette.css +1 -1
  56. package/dist/css/themes/ColorPaletteItem.css +1 -1
  57. package/dist/css/themes/ColorPalettePopover.css +1 -1
  58. package/dist/css/themes/ColorPicker.css +1 -1
  59. package/dist/css/themes/ComboBox.css +1 -1
  60. package/dist/css/themes/ComboBoxItem.css +1 -1
  61. package/dist/css/themes/DatePicker.css +1 -1
  62. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  63. package/dist/css/themes/DayPicker.css +1 -1
  64. package/dist/css/themes/Dialog.css +1 -1
  65. package/dist/css/themes/DynamicDateRange.css +1 -1
  66. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  67. package/dist/css/themes/FileUploader.css +1 -1
  68. package/dist/css/themes/Form.css +1 -1
  69. package/dist/css/themes/FormItem.css +1 -1
  70. package/dist/css/themes/FormItemSpan.css +1 -1
  71. package/dist/css/themes/GrowingButton.css +1 -1
  72. package/dist/css/themes/Icon.css +1 -1
  73. package/dist/css/themes/Input.css +1 -1
  74. package/dist/css/themes/InputIcon.css +1 -1
  75. package/dist/css/themes/InputSharedStyles.css +1 -1
  76. package/dist/css/themes/Link.css +1 -1
  77. package/dist/css/themes/List.css +1 -1
  78. package/dist/css/themes/ListItem.css +1 -1
  79. package/dist/css/themes/ListItemBase.css +1 -1
  80. package/dist/css/themes/ListItemCustom.css +1 -1
  81. package/dist/css/themes/ListItemGroup.css +1 -1
  82. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  83. package/dist/css/themes/ListItemIcon.css +1 -1
  84. package/dist/css/themes/Menu.css +1 -1
  85. package/dist/css/themes/MenuItem.css +1 -1
  86. package/dist/css/themes/MessageStrip.css +1 -1
  87. package/dist/css/themes/MonthPicker.css +1 -1
  88. package/dist/css/themes/MultiComboBox.css +1 -1
  89. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  90. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  91. package/dist/css/themes/MultiInput.css +1 -1
  92. package/dist/css/themes/OptionBase.css +1 -1
  93. package/dist/css/themes/Panel.css +1 -1
  94. package/dist/css/themes/Popover.css +1 -1
  95. package/dist/css/themes/PopupsCommon.css +1 -1
  96. package/dist/css/themes/ProgressIndicator.css +1 -1
  97. package/dist/css/themes/RadioButton.css +1 -1
  98. package/dist/css/themes/RangeSlider.css +1 -1
  99. package/dist/css/themes/RatingIndicator.css +1 -1
  100. package/dist/css/themes/ResponsivePopover.css +1 -1
  101. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  102. package/dist/css/themes/SegmentedButton.css +1 -1
  103. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  104. package/dist/css/themes/Select.css +1 -1
  105. package/dist/css/themes/SliderBase.css +1 -1
  106. package/dist/css/themes/SplitButton.css +1 -1
  107. package/dist/css/themes/StepInput.css +1 -1
  108. package/dist/css/themes/SuggestionItem.css +1 -1
  109. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  110. package/dist/css/themes/Switch.css +1 -1
  111. package/dist/css/themes/TabContainer.css +1 -1
  112. package/dist/css/themes/TabInOverflow.css +1 -1
  113. package/dist/css/themes/TabInStrip.css +1 -1
  114. package/dist/css/themes/TabSemanticIcon.css +1 -1
  115. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  116. package/dist/css/themes/TableCellBase.css +1 -1
  117. package/dist/css/themes/TableHeaderRow.css +1 -1
  118. package/dist/css/themes/TableRow.css +1 -1
  119. package/dist/css/themes/TableRowActionBase.css +1 -1
  120. package/dist/css/themes/TableRowBase.css +1 -1
  121. package/dist/css/themes/Tag.css +1 -1
  122. package/dist/css/themes/Text.css +1 -1
  123. package/dist/css/themes/TextArea.css +1 -1
  124. package/dist/css/themes/TimePicker.css +1 -1
  125. package/dist/css/themes/Toast.css +1 -1
  126. package/dist/css/themes/ToggleButton.css +1 -1
  127. package/dist/css/themes/Token.css +1 -1
  128. package/dist/css/themes/Tokenizer.css +1 -1
  129. package/dist/css/themes/TokenizerPopover.css +1 -1
  130. package/dist/css/themes/Toolbar.css +1 -1
  131. package/dist/css/themes/ToolbarPopover.css +1 -1
  132. package/dist/css/themes/ToolbarSeparator.css +1 -1
  133. package/dist/css/themes/TreeItem.css +1 -1
  134. package/dist/css/themes/ValueStateMessage.css +1 -1
  135. package/dist/css/themes/ValueStateVariables.css +1 -0
  136. package/dist/css/themes/YearPicker.css +1 -1
  137. package/dist/css/themes/YearRangePicker.css +1 -1
  138. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  139. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  140. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  141. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  142. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  143. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  144. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  145. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  146. package/dist/custom-elements-internal.json +67 -9
  147. package/dist/custom-elements.json +65 -8
  148. package/dist/features/InputSuggestions.d.ts +0 -3
  149. package/dist/features/InputSuggestions.js +4 -50
  150. package/dist/features/InputSuggestions.js.map +1 -1
  151. package/dist/features/InputSuggestionsTemplate.js +0 -1
  152. package/dist/features/InputSuggestionsTemplate.js.map +1 -1
  153. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  154. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  155. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  156. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  157. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  158. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  159. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  160. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  161. package/dist/generated/i18n/i18n-defaults.d.ts +11 -3
  162. package/dist/generated/i18n/i18n-defaults.js +11 -3
  163. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  164. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  165. package/dist/generated/themes/Avatar.css.js +1 -1
  166. package/dist/generated/themes/Avatar.css.js.map +1 -1
  167. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  168. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  169. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  170. package/dist/generated/themes/Bar.css.d.ts +1 -1
  171. package/dist/generated/themes/Bar.css.js +1 -1
  172. package/dist/generated/themes/Bar.css.js.map +1 -1
  173. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  174. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  175. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  176. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  177. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  178. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  179. package/dist/generated/themes/Button.css.d.ts +1 -1
  180. package/dist/generated/themes/Button.css.js +1 -1
  181. package/dist/generated/themes/Button.css.js.map +1 -1
  182. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  183. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  184. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  185. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  186. package/dist/generated/themes/Calendar.css.js +1 -1
  187. package/dist/generated/themes/Calendar.css.js.map +1 -1
  188. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  189. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  190. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  191. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  192. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  193. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  194. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  195. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  196. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  197. package/dist/generated/themes/Card.css.d.ts +1 -1
  198. package/dist/generated/themes/Card.css.js +1 -1
  199. package/dist/generated/themes/Card.css.js.map +1 -1
  200. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  201. package/dist/generated/themes/CardHeader.css.js +1 -1
  202. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  203. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  204. package/dist/generated/themes/Carousel.css.js +1 -1
  205. package/dist/generated/themes/Carousel.css.js.map +1 -1
  206. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  207. package/dist/generated/themes/CheckBox.css.js +1 -1
  208. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  209. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  210. package/dist/generated/themes/ColorPalette.css.js +1 -1
  211. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  212. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  213. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  214. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  215. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  216. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  217. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  218. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  219. package/dist/generated/themes/ColorPicker.css.js +1 -1
  220. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  221. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  222. package/dist/generated/themes/ComboBox.css.js +1 -1
  223. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  224. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  225. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  226. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  227. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  228. package/dist/generated/themes/DatePicker.css.js +1 -1
  229. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  230. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  231. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  232. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  233. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  234. package/dist/generated/themes/DayPicker.css.js +1 -1
  235. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  236. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  237. package/dist/generated/themes/Dialog.css.js +1 -1
  238. package/dist/generated/themes/Dialog.css.js.map +1 -1
  239. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  240. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  241. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  242. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  243. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  244. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  245. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  246. package/dist/generated/themes/FileUploader.css.js +1 -1
  247. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  248. package/dist/generated/themes/Form.css.d.ts +1 -1
  249. package/dist/generated/themes/Form.css.js +1 -1
  250. package/dist/generated/themes/Form.css.js.map +1 -1
  251. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  252. package/dist/generated/themes/FormItem.css.js +1 -1
  253. package/dist/generated/themes/FormItem.css.js.map +1 -1
  254. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  255. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  256. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  257. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  258. package/dist/generated/themes/GrowingButton.css.js +1 -1
  259. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  260. package/dist/generated/themes/Icon.css.d.ts +1 -1
  261. package/dist/generated/themes/Icon.css.js +1 -1
  262. package/dist/generated/themes/Icon.css.js.map +1 -1
  263. package/dist/generated/themes/Input.css.d.ts +1 -1
  264. package/dist/generated/themes/Input.css.js +1 -1
  265. package/dist/generated/themes/Input.css.js.map +1 -1
  266. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  267. package/dist/generated/themes/InputIcon.css.js +1 -1
  268. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  269. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  270. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  271. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  272. package/dist/generated/themes/Link.css.d.ts +1 -1
  273. package/dist/generated/themes/Link.css.js +1 -1
  274. package/dist/generated/themes/Link.css.js.map +1 -1
  275. package/dist/generated/themes/List.css.d.ts +1 -1
  276. package/dist/generated/themes/List.css.js +1 -1
  277. package/dist/generated/themes/List.css.js.map +1 -1
  278. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  279. package/dist/generated/themes/ListItem.css.js +1 -1
  280. package/dist/generated/themes/ListItem.css.js.map +1 -1
  281. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  282. package/dist/generated/themes/ListItemBase.css.js +1 -1
  283. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  284. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  285. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  286. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  287. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  288. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  289. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  290. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  291. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  292. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  293. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  294. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  295. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  296. package/dist/generated/themes/Menu.css.d.ts +1 -1
  297. package/dist/generated/themes/Menu.css.js +1 -1
  298. package/dist/generated/themes/Menu.css.js.map +1 -1
  299. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  300. package/dist/generated/themes/MenuItem.css.js +1 -1
  301. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  302. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  303. package/dist/generated/themes/MessageStrip.css.js +1 -1
  304. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  305. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  306. package/dist/generated/themes/MonthPicker.css.js +1 -1
  307. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  308. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  309. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  310. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  311. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  312. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  313. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  314. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  315. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  316. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  317. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  318. package/dist/generated/themes/MultiInput.css.js +1 -1
  319. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  320. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  321. package/dist/generated/themes/OptionBase.css.js +1 -1
  322. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  323. package/dist/generated/themes/Panel.css.d.ts +1 -1
  324. package/dist/generated/themes/Panel.css.js +1 -1
  325. package/dist/generated/themes/Panel.css.js.map +1 -1
  326. package/dist/generated/themes/Popover.css.d.ts +1 -1
  327. package/dist/generated/themes/Popover.css.js +1 -1
  328. package/dist/generated/themes/Popover.css.js.map +1 -1
  329. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  330. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  331. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  332. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  333. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  334. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  335. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  336. package/dist/generated/themes/RadioButton.css.js +1 -1
  337. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  338. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  339. package/dist/generated/themes/RangeSlider.css.js +1 -1
  340. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  341. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  342. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  343. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  344. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  345. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  346. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  347. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  348. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  349. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  350. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  351. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  352. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  353. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  354. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  355. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  356. package/dist/generated/themes/Select.css.d.ts +1 -1
  357. package/dist/generated/themes/Select.css.js +1 -1
  358. package/dist/generated/themes/Select.css.js.map +1 -1
  359. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  360. package/dist/generated/themes/SliderBase.css.js +1 -1
  361. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  362. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  363. package/dist/generated/themes/SplitButton.css.js +1 -1
  364. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  365. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  366. package/dist/generated/themes/StepInput.css.js +1 -1
  367. package/dist/generated/themes/StepInput.css.js.map +1 -1
  368. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  369. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  370. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  371. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  372. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  373. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  374. package/dist/generated/themes/Switch.css.d.ts +1 -1
  375. package/dist/generated/themes/Switch.css.js +1 -1
  376. package/dist/generated/themes/Switch.css.js.map +1 -1
  377. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  378. package/dist/generated/themes/TabContainer.css.js +1 -1
  379. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  380. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  381. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  382. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  383. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  384. package/dist/generated/themes/TabInStrip.css.js +1 -1
  385. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  386. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  387. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  388. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  389. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  390. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  391. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  392. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  393. package/dist/generated/themes/TableCellBase.css.js +1 -1
  394. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  395. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  396. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  397. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  398. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  399. package/dist/generated/themes/TableRow.css.js +1 -1
  400. package/dist/generated/themes/TableRow.css.js.map +1 -1
  401. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  402. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  403. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  404. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  405. package/dist/generated/themes/TableRowBase.css.js +1 -1
  406. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  407. package/dist/generated/themes/Tag.css.d.ts +1 -1
  408. package/dist/generated/themes/Tag.css.js +1 -1
  409. package/dist/generated/themes/Tag.css.js.map +1 -1
  410. package/dist/generated/themes/Text.css.d.ts +1 -1
  411. package/dist/generated/themes/Text.css.js +1 -1
  412. package/dist/generated/themes/Text.css.js.map +1 -1
  413. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  414. package/dist/generated/themes/TextArea.css.js +1 -1
  415. package/dist/generated/themes/TextArea.css.js.map +1 -1
  416. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  417. package/dist/generated/themes/TimePicker.css.js +1 -1
  418. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  419. package/dist/generated/themes/Toast.css.d.ts +1 -1
  420. package/dist/generated/themes/Toast.css.js +1 -1
  421. package/dist/generated/themes/Toast.css.js.map +1 -1
  422. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  423. package/dist/generated/themes/ToggleButton.css.js +1 -1
  424. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  425. package/dist/generated/themes/Token.css.d.ts +1 -1
  426. package/dist/generated/themes/Token.css.js +1 -1
  427. package/dist/generated/themes/Token.css.js.map +1 -1
  428. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  429. package/dist/generated/themes/Tokenizer.css.js +1 -1
  430. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  431. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  432. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  433. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  434. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  435. package/dist/generated/themes/Toolbar.css.js +1 -1
  436. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  437. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  438. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  439. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  440. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  441. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  442. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  443. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  444. package/dist/generated/themes/TreeItem.css.js +1 -1
  445. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  446. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  447. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  448. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  449. package/dist/generated/themes/ValueStateVariables.css.d.ts +2 -0
  450. package/dist/generated/themes/ValueStateVariables.css.js +8 -0
  451. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -0
  452. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  453. package/dist/generated/themes/YearPicker.css.js +1 -1
  454. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  455. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  456. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  457. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  458. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  459. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  460. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  461. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  462. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  464. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  465. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  468. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  470. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  471. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  472. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  473. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  474. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  475. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  476. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  477. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  478. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  479. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  480. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  481. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  482. package/dist/vscode.html-custom-data.json +20 -5
  483. package/dist/web-types.json +38 -8
  484. package/package.json +9 -9
  485. package/src/ComboBoxPopoverTemplate.tsx +0 -1
  486. package/src/ComboBoxTemplate.tsx +4 -1
  487. package/src/FileUploaderPopoverTemplate.tsx +1 -3
  488. package/src/FileUploaderTemplate.tsx +77 -25
  489. package/src/InputTemplate.tsx +4 -0
  490. package/src/MultiComboBoxPopoverTemplate.tsx +1 -1
  491. package/src/MultiComboBoxTemplate.tsx +4 -0
  492. package/src/SplitButtonTemplate.tsx +1 -1
  493. package/src/TokenizerPopoverTemplate.tsx +1 -1
  494. package/src/features/InputSuggestionsTemplate.tsx +0 -1
  495. package/src/i18n/messagebundle.properties +28 -3
  496. package/src/themes/Button.css +2 -2
  497. package/src/themes/FileUploader.css +140 -32
  498. package/src/themes/ValueStateMessage.css +1 -1
  499. package/src/themes/ValueStateVariables.css +27 -0
  500. package/src/themes/base/FileUploader-parameters.css +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ListItemStandard.js","sourceRoot":"","sources":["../src/ListItemStandard.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport type ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport ListItem from \"./ListItem.js\";\nimport type { IAccessibleListItem } from \"./ListItem.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport ListItemStandardTemplate from \"./ListItemStandardTemplate.js\";\nimport type { ExpandableTextTemplateParams } from \"./types/ExpandableTextTemplateParams.js\";\n\n/**\n * Maximum number of characters to display for small screens (Size S)\n * @private\n */\nconst MAX_CHARACTERS_SIZE_S = 100;\n\n/**\n * Maximum number of characters to display for medium and larger screens (Size M and above)\n * @private\n */\nconst MAX_CHARACTERS_SIZE_M = 300;\n\n// Specific template type for expandable text\ntype ExpandableTextTemplate = (this: ListItemStandard, params: ExpandableTextTemplateParams) => JSX.Element;\n\n/**\n * @class\n * The `ui5-li` represents the simplest type of item for a `ui5-list`.\n *\n * This is a list item,\n * providing the most common use cases such as `text`,\n * `image` and `icon`.\n\n * @csspart title - Used to style the title of the list item\n * @csspart description - Used to style the description of the list item\n * @csspart additional-text - Used to style the additionalText of the list item\n * @csspart icon - Used to style the icon of the list item\n * @csspart native-li - Used to style the main li tag of the list item\n * @csspart content - Used to style the content area of the list item\n * @csspart detail-button - Used to style the button rendered when the list item is of type detail\n * @csspart delete-button - Used to style the button rendered when the list item is in delete mode\n * @csspart radio - Used to style the radio button rendered when the list item is in single selection mode\n * @csspart checkbox - Used to style the checkbox rendered when the list item is in multiple selection mode\n * @slot {Node[]} default - Defines the custom formatted text of the component.\n *\n * **Note:** For optimal text wrapping and a consistent layout, it is strongly recommended to use the `text` property.\n *\n * Use the `default` slot only when custom formatting with HTML elements (e.g., `<b>`, `<i>`) is required.\n * Be aware that wrapping (via `wrappingType=\"Normal\"`) may not function correctly with custom HTML content in the `default` slot.\n *\n * If both `text` and `default` slot are used, the `text` property takes precedence.\n * @constructor\n * @extends ListItem\n * @public\n */\n@customElement({\n\ttag: \"ui5-li\",\n\trenderer: jsxRenderer,\n\ttemplate: ListItemStandardTemplate,\n})\nclass ListItemStandard extends ListItem implements IAccessibleListItem {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t * @since 2.10.0\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the description displayed right under the item text, if such is present.\n\t * @default undefined\n\t * @public\n\t * @since 0.8.0\n\t */\n\t@property()\n\tdescription?: string;\n\n\t/**\n\t * Defines the `icon` source URI.\n\t *\n\t * **Note:**\n\t * SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n\t * [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 whether the `icon` should be displayed in the beginning of the list item or in the end.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\ticonEnd = false;\n\n\t/**\n\t * Defines the `additionalText`, displayed in the end of the list item.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Defines the state of the `additionalText`.\n\t *\n\t * Available options are: `\"None\"` (by default), `\"Positive\"`, `\"Critical\"`, `\"Information\"` and `\"Negative\"`.\n\t * @default \"None\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\tadditionalTextState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the item is movable.\n\t * @default false\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t/**\n\t * Defines the text alternative of the component.\n\t * Note: 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.15\n\t */\n\t@property()\n\tdeclare accessibleName?: string;\n\n\t/**\n\t * Defines if the text of the component should wrap when it's too long.\n\t * When set to \"Normal\", the content (title, description) will be wrapped\n\t * using the `ui5-expandable-text` component.<br/>\n\t *\n\t * The text can wrap up to 100 characters on small screens (size S) and\n\t * up to 300 characters on larger screens (size M and above). When text exceeds\n\t * these limits, it truncates with an ellipsis followed by a text expansion trigger.\n\t *\n\t * Available options are:\n\t * - `None` (default) - The text will truncate with an ellipsis.\n\t * - `Normal` - The text will wrap (without truncation).\n\t *\n\t * @default \"None\"\n\t * @public\n\t * @since 2.10.0\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"None\";\n\n\t/**\n\t * Indicates if the list item has text content.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thasTitle = false;\n\n\t@property({ type: Boolean })\n\t_hasImage = false;\n\n\t/**\n\t * The expandableText template.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\texpandableTextTemplate?: ExpandableTextTemplate;\n\n\t/**\n\t * **Note:** While the slot allows option for setting custom avatar, to match the\n\t * design guidelines, please use the `ui5-avatar` with it's default size - S.\n\t *\n\t * **Note:** If bigger `ui5-avatar` needs to be used, then the size of the\n\t * `ui5-li` should be customized in order to fit.\n\t * @since 2.0.0\n\t * @public\n\t */\n\t@slot()\n\timage!: Array<HTMLElement>;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tthis.hasTitle = !!(this.text || this.textContent);\n\t\tthis._hasImage = this.hasImage;\n\n\t\t// Only load ExpandableText if \"Normal\" wrapping is used\n\t\tif (this.wrappingType === \"Normal\") {\n\t\t\t// If feature is already loaded (preloaded by the user via importing ListItemStandardExpandableText.js), the template is already available\n\t\t\tif (ListItemStandard.ExpandableTextTemplate) {\n\t\t\t\tthis.expandableTextTemplate = ListItemStandard.ExpandableTextTemplate;\n\t\t\t// If feature is not preloaded, load the template dynamically\n\t\t\t} else {\n\t\t\t\timport(\"./features/ListItemStandardExpandableTextTemplate.js\").then(module => {\n\t\t\t\t\tthis.expandableTextTemplate = module.default;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns the content text, either from text property or from the default slot\n\t * @private\n\t */\n\tget _textContent(): string {\n\t\treturn this.text || this.textContent || \"\";\n\t}\n\n\t/**\n\t * Determines the maximum characters to display based on the current media range.\n\t * - Size S: 100 characters\n\t * - Size M and larger: 300 characters\n\t * @private\n\t */\n\tget _maxCharacters(): number {\n\t\treturn this.mediaRange === \"S\" ? MAX_CHARACTERS_SIZE_S : MAX_CHARACTERS_SIZE_M;\n\t}\n\n\tget displayIconBegin(): boolean {\n\t\treturn !!(this.icon && !this.iconEnd);\n\t}\n\n\tget displayIconEnd(): boolean {\n\t\treturn !!(this.icon && this.iconEnd);\n\t}\n\n\tget hasImage(): boolean {\n\t\treturn !!this.image.length;\n\t}\n\n\tstatic ExpandableTextTemplate?: ExpandableTextTemplate;\n}\n\nListItemStandard.define();\n\nexport default ListItemStandard;\n"]}
1
+ {"version":3,"file":"ListItemStandard.js","sourceRoot":"","sources":["../src/ListItemStandard.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport type ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport ListItem from \"./ListItem.js\";\nimport type { IAccessibleListItem } from \"./ListItem.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport ListItemStandardTemplate from \"./ListItemStandardTemplate.js\";\nimport type { ExpandableTextTemplateParams } from \"./types/ExpandableTextTemplateParams.js\";\n\n/**\n * Maximum number of characters to display for small screens (Size S)\n * @private\n */\nconst MAX_CHARACTERS_SIZE_S = 100;\n\n/**\n * Maximum number of characters to display for medium and larger screens (Size M and above)\n * @private\n */\nconst MAX_CHARACTERS_SIZE_M = 300;\n\n// Specific template type for expandable text\ntype ExpandableTextTemplate = (this: ListItemStandard, params: ExpandableTextTemplateParams) => JSX.Element;\n\n/**\n * @class\n * The `ui5-li` represents the simplest type of item for a `ui5-list`.\n *\n * This is a list item,\n * providing the most common use cases such as `text`,\n * `image` and `icon`.\n\n * @csspart title - Used to style the title of the list item\n * @csspart description - Used to style the description of the list item\n * @csspart additional-text - Used to style the additionalText of the list item\n * @csspart icon - Used to style the icon of the list item\n * @csspart native-li - Used to style the main li tag of the list item\n * @csspart content - Used to style the content area of the list item\n * @csspart detail-button - Used to style the button rendered when the list item is of type detail\n * @csspart delete-button - Used to style the button rendered when the list item is in delete mode\n * @csspart radio - Used to style the radio button rendered when the list item is in single selection mode\n * @csspart checkbox - Used to style the checkbox rendered when the list item is in multiple selection mode\n * @constructor\n * @extends ListItem\n * @public\n */\n@customElement({\n\ttag: \"ui5-li\",\n\trenderer: jsxRenderer,\n\ttemplate: ListItemStandardTemplate,\n})\nclass ListItemStandard extends ListItem implements IAccessibleListItem {\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t * @since 2.10.0\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the description displayed right under the item text, if such is present.\n\t * @default undefined\n\t * @public\n\t * @since 0.8.0\n\t */\n\t@property()\n\tdescription?: string;\n\n\t/**\n\t * Defines the `icon` source URI.\n\t *\n\t * **Note:**\n\t * SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n\t * [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 whether the `icon` should be displayed in the beginning of the list item or in the end.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\ticonEnd = false;\n\n\t/**\n\t * Defines the `additionalText`, displayed in the end of the list item.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Defines the state of the `additionalText`.\n\t *\n\t * Available options are: `\"None\"` (by default), `\"Positive\"`, `\"Critical\"`, `\"Information\"` and `\"Negative\"`.\n\t * @default \"None\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\tadditionalTextState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the item is movable.\n\t * @default false\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\tmovable = false;\n\n\t/**\n\t * Defines the text alternative of the component.\n\t * Note: 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.15\n\t */\n\t@property()\n\tdeclare accessibleName?: string;\n\n\t/**\n\t * Defines if the text of the component should wrap when it's too long.\n\t * When set to \"Normal\", the content (title, description) will be wrapped\n\t * using the `ui5-expandable-text` component.<br/>\n\t *\n\t * The text can wrap up to 100 characters on small screens (size S) and\n\t * up to 300 characters on larger screens (size M and above). When text exceeds\n\t * these limits, it truncates with an ellipsis followed by a text expansion trigger.\n\t *\n\t * Available options are:\n\t * - `None` (default) - The text will truncate with an ellipsis.\n\t * - `Normal` - The text will wrap (without truncation).\n\t *\n\t * @default \"None\"\n\t * @public\n\t * @since 2.10.0\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"None\";\n\n\t/**\n\t * Indicates if the list item has text content.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thasTitle = false;\n\n\t@property({ type: Boolean })\n\t_hasImage = false;\n\n\t/**\n\t * The expandableText template.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\texpandableTextTemplate?: ExpandableTextTemplate;\n\n\t/**\n\t * Defines the custom formatted text of the component.\n\t *\n\t * **Note:** For optimal text wrapping and a consistent layout, it is strongly recommended to use the `text` property.\n\t *\n\t * Use the `default` slot only when custom formatting with HTML elements (e.g., `<b>`, `<i>`) is required.\n\t * Be aware that wrapping (via `wrappingType=\"Normal\"`) may not function correctly with custom HTML content in the `default` slot.\n\t *\n\t * If both `text` and `default` slot are used, the `text` property takes precedence.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t/**\n\t * **Note:** While the slot allows option for setting custom avatar, to match the\n\t * design guidelines, please use the `ui5-avatar` with it's default size - S.\n\t *\n\t * **Note:** If bigger `ui5-avatar` needs to be used, then the size of the\n\t * `ui5-li` should be customized in order to fit.\n\t * @since 2.0.0\n\t * @public\n\t */\n\t@slot()\n\timage!: Array<HTMLElement>;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\t\tthis.hasTitle = !!(this.text || this.textContent);\n\t\tthis._hasImage = this.hasImage;\n\n\t\t// Only load ExpandableText if \"Normal\" wrapping is used\n\t\tif (this.wrappingType === \"Normal\") {\n\t\t\t// If feature is already loaded (preloaded by the user via importing ListItemStandardExpandableText.js), the template is already available\n\t\t\tif (ListItemStandard.ExpandableTextTemplate) {\n\t\t\t\tthis.expandableTextTemplate = ListItemStandard.ExpandableTextTemplate;\n\t\t\t\t// If feature is not preloaded, load the template dynamically\n\t\t\t} else {\n\t\t\t\timport(\"./features/ListItemStandardExpandableTextTemplate.js\").then(module => {\n\t\t\t\t\tthis.expandableTextTemplate = module.default;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns the content text, either from text property or from the default slot\n\t * @private\n\t */\n\tget _textContent(): string {\n\t\treturn this.text || this.textContent || \"\";\n\t}\n\n\t/**\n\t * Determines the maximum characters to display based on the current media range.\n\t * - Size S: 100 characters\n\t * - Size M and larger: 300 characters\n\t * @private\n\t */\n\tget _maxCharacters(): number {\n\t\treturn this.mediaRange === \"S\" ? MAX_CHARACTERS_SIZE_S : MAX_CHARACTERS_SIZE_M;\n\t}\n\n\tget displayIconBegin(): boolean {\n\t\treturn !!(this.icon && !this.iconEnd);\n\t}\n\n\tget displayIconEnd(): boolean {\n\t\treturn !!(this.icon && this.iconEnd);\n\t}\n\n\tget hasImage(): boolean {\n\t\treturn !!this.image.length;\n\t}\n\n\tstatic ExpandableTextTemplate?: ExpandableTextTemplate;\n}\n\nListItemStandard.define();\n\nexport default ListItemStandard;\n"]}
@@ -70,6 +70,7 @@ type MultiComboboxItemWithSelection = {
70
70
  * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.
71
71
  * Once the drop-down is opened, you can use the `UP` and `DOWN` arrow keys
72
72
  * to navigate through the available options and select one by pressing the `Space` or `Enter` keys.
73
+ * [Ctrl]+[Alt]+[F8] or [Command]+[Option]+[F8] - Focuses the first link in the value state message, if available. Pressing [Tab] moves the focus to the next link in the value state message, or closes the value state message if there are no more links.
73
74
  *
74
75
  * #### Tokens
75
76
  *
@@ -233,6 +234,17 @@ declare class MultiComboBox extends UI5Element implements IFormInputElement {
233
234
  * @private
234
235
  */
235
236
  tokenizerAvailable: boolean;
237
+ /**
238
+ * Indicates whether link navigation is being handled.
239
+ * @private
240
+ * @since 2.11.0
241
+ * @default false
242
+ */
243
+ _handleLinkNavigation: boolean;
244
+ /**
245
+ * @private
246
+ */
247
+ _linksListenersArray: Array<(args: any) => void>;
236
248
  /**
237
249
  * Defines the component items.
238
250
  * @public
@@ -275,6 +287,7 @@ declare class MultiComboBox extends UI5Element implements IFormInputElement {
275
287
  _itemToFocus?: IMultiComboBoxItem;
276
288
  _itemsBeforeOpen: Array<MultiComboboxItemWithSelection>;
277
289
  selectedItems: Array<IMultiComboBoxItem>;
290
+ _valueStateLinks: Array<HTMLElement>;
278
291
  static i18nBundle: I18nBundle;
279
292
  get formValidityMessage(): string;
280
293
  get formValidity(): ValidityStateFlags;
@@ -324,6 +337,7 @@ declare class MultiComboBox extends UI5Element implements IFormInputElement {
324
337
  _onItemTab(): void;
325
338
  _handleArrowNavigation(e: KeyboardEvent, isDownControl: boolean): void;
326
339
  _handleArrowDown(): Promise<void>;
340
+ _handleCtrlALtF8(): void;
327
341
  _handleItemRangeSelection(e: KeyboardEvent): void;
328
342
  _navigateToNextItem(): void;
329
343
  _navigateToPrevItem(): void;
@@ -352,6 +366,8 @@ declare class MultiComboBox extends UI5Element implements IFormInputElement {
352
366
  _beforeClose(): void;
353
367
  _afterClose(): void;
354
368
  _beforeOpen(): void;
369
+ _addLinksEventListeners(): void;
370
+ _removeLinksEventListeners(): void;
355
371
  _handleTypeAhead(item: IMultiComboBoxItem, filterValue: string): void;
356
372
  _getFirstMatchingItem(current: string): IMultiComboBoxItem | undefined;
357
373
  _startsWithMatchingItems(str: string): IMultiComboBoxItem[];
@@ -381,12 +397,15 @@ declare class MultiComboBox extends UI5Element implements IFormInputElement {
381
397
  get hasValueStateMessage(): boolean;
382
398
  get ariaValueStateHiddenText(): string | undefined;
383
399
  get valueStateDefaultText(): string;
384
- get valueStateTextId(): "ui5-multi-combobox-valueStateDesc" | undefined;
400
+ get valueStateTextId(): "" | "ui5-multi-combobox-valueStateDesc";
385
401
  get ariaLabelText(): string | undefined;
386
402
  /**
387
403
  * This method is relevant for sap_horizon theme only
388
404
  */
389
405
  get _valueStateMessageIcon(): string;
406
+ get linksInAriaValueStateHiddenText(): HTMLElement[];
407
+ get getValueStateLinksShortcutsTextAcc(): string;
408
+ get _valueStateLinksShortcutsTextAccId(): "" | "hiddenText-value-state-link-shortcut";
390
409
  get _tokensCountText(): string | undefined;
391
410
  get _tokensCountTextId(): string;
392
411
  get _selectedTokensCount(): number;
@@ -13,16 +13,18 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
13
13
  import jsxRender from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
14
14
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
15
15
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
16
- import { isShow, isDown, isUp, isSpace, isSpaceCtrl, isSpaceShift, isRight, isLeft, isHome, isEnd, isTabNext, isTabPrevious, isUpShift, isDownShift, isLeftCtrl, isRightCtrl, isUpCtrl, isDownCtrl, isHomeCtrl, isEndCtrl, isCtrlA, isInsertShift, isBackSpace, isDelete, isEscape, isEnter, } from "@ui5/webcomponents-base/dist/Keys.js";
16
+ import { isShow, isDown, isUp, isSpace, isSpaceCtrl, isSpaceShift, isRight, isLeft, isHome, isEnd, isTabNext, isTabPrevious, isUpShift, isDownShift, isLeftCtrl, isRightCtrl, isUpCtrl, isDownCtrl, isHomeCtrl, isEndCtrl, isCtrlA, isInsertShift, isBackSpace, isDelete, isEscape, isEnter, isCtrlAltF8, } from "@ui5/webcomponents-base/dist/Keys.js";
17
17
  import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
18
18
  import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
19
- import { isPhone, isAndroid, isFirefox, } from "@ui5/webcomponents-base/dist/Device.js";
19
+ import { isPhone, isAndroid, isFirefox, isMac, } from "@ui5/webcomponents-base/dist/Device.js";
20
+ import { attachListeners } from "@ui5/webcomponents-base/dist/util/valueStateNavigation.js";
20
21
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
21
22
  import "@ui5/webcomponents-icons/dist/error.js";
22
23
  import "@ui5/webcomponents-icons/dist/alert.js";
23
24
  import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
24
25
  import "@ui5/webcomponents-icons/dist/information.js";
25
26
  import { getAssociatedLabelForTexts, getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
27
+ import arraysAreEqual from "@ui5/webcomponents-base/dist/util/arraysAreEqual.js";
26
28
  import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsScope.js";
27
29
  import { submitForm } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
28
30
  import MultiComboBoxItem, { isInstanceOfMultiComboBoxItem } from "./MultiComboBoxItem.js";
@@ -38,7 +40,7 @@ import ListItemStandard from "./ListItemStandard.js";
38
40
  import ToggleButton from "./ToggleButton.js";
39
41
  import * as Filters from "./Filters.js";
40
42
  import Button from "./Button.js";
41
- import { VALUE_STATE_SUCCESS, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_INFORMATION, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, INPUT_SUGGESTIONS_TITLE, SELECT_OPTIONS, SHOW_SELECTED_BUTTON, MULTICOMBOBOX_DIALOG_OK_BUTTON, COMBOBOX_AVAILABLE_OPTIONS, VALUE_STATE_ERROR_ALREADY_SELECTED, MCB_SELECTED_ITEMS, INPUT_CLEAR_ICON_ACC_NAME, FORM_MIXED_TEXTFIELD_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
43
+ import { VALUE_STATE_SUCCESS, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_INFORMATION, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, VALUE_STATE_LINK, VALUE_STATE_LINKS, VALUE_STATE_LINK_MAC, VALUE_STATE_LINKS_MAC, INPUT_SUGGESTIONS_TITLE, SELECT_OPTIONS, SHOW_SELECTED_BUTTON, MULTICOMBOBOX_DIALOG_OK_BUTTON, COMBOBOX_AVAILABLE_OPTIONS, VALUE_STATE_ERROR_ALREADY_SELECTED, MCB_SELECTED_ITEMS, INPUT_CLEAR_ICON_ACC_NAME, FORM_MIXED_TEXTFIELD_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
42
44
  // Templates
43
45
  import MultiComboBoxTemplate from "./MultiComboBoxTemplate.js";
44
46
  // Styles
@@ -76,6 +78,7 @@ import SuggestionItem from "./SuggestionItem.js";
76
78
  * you can open or close the drop-down by pressing [F4], [Alt] + [Up] or [Alt] + [Down] keys.
77
79
  * Once the drop-down is opened, you can use the `UP` and `DOWN` arrow keys
78
80
  * to navigate through the available options and select one by pressing the `Space` or `Enter` keys.
81
+ * [Ctrl]+[Alt]+[F8] or [Command]+[Option]+[F8] - Focuses the first link in the value state message, if available. Pressing [Tab] moves the focus to the next link in the value state message, or closes the value state message if there are no more links.
79
82
  *
80
83
  * #### Tokens
81
84
  *
@@ -222,6 +225,17 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
222
225
  * @private
223
226
  */
224
227
  this.tokenizerAvailable = false;
228
+ /**
229
+ * Indicates whether link navigation is being handled.
230
+ * @private
231
+ * @since 2.11.0
232
+ * @default false
233
+ */
234
+ this._handleLinkNavigation = false;
235
+ /**
236
+ * @private
237
+ */
238
+ this._linksListenersArray = [];
225
239
  this._filteredItems = [];
226
240
  this.selectedItems = [];
227
241
  this._previouslySelectedItems = [];
@@ -234,12 +248,14 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
234
248
  this.valueBeforeAutoComplete = "";
235
249
  this._lastValue = this.getAttribute("value") || "";
236
250
  this.currentItemIdx = -1;
251
+ this._valueStateLinks = [];
237
252
  }
238
253
  onEnterDOM() {
239
254
  ResizeHandler.register(this, this._handleResizeBound);
240
255
  }
241
256
  onExitDOM() {
242
257
  ResizeHandler.deregister(this, this._handleResizeBound);
258
+ this._removeLinksEventListeners();
243
259
  }
244
260
  _handleResize() {
245
261
  this._inputWidth = this.offsetWidth;
@@ -393,7 +409,7 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
393
409
  this._handleArrowKey("rtl");
394
410
  }
395
411
  _onPopoverFocusOut() {
396
- if (!isPhone()) {
412
+ if (!isPhone() || !this._handleLinkNavigation) {
397
413
  this._tokenizer.expanded = this.open;
398
414
  }
399
415
  }
@@ -458,6 +474,9 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
458
474
  if (isSpaceShift(e)) {
459
475
  e.preventDefault();
460
476
  }
477
+ if (isCtrlAltF8(e)) {
478
+ return this._handleCtrlALtF8();
479
+ }
461
480
  if (e.key === "ArrowLeft"
462
481
  || e.key === "ArrowRight"
463
482
  || e.key === "Show"
@@ -610,13 +629,10 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
610
629
  this._handleArrowDown();
611
630
  }
612
631
  if (isArrowUp || isUpCtrl(e)) {
613
- if (e.target === this.valueStateHeader || !this.valueStateHeader) {
632
+ if (e.target === this.valueStateHeader || (this.showSelectAll && isSelectAllFocused)) {
614
633
  this._shouldAutocomplete = true;
615
634
  return this._inputDom.focus();
616
635
  }
617
- if (this.showSelectAll && isSelectAllFocused) {
618
- this.valueStateHeader?.focus();
619
- }
620
636
  }
621
637
  }
622
638
  _handleSelectAllCheckboxClick(e) {
@@ -658,6 +674,9 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
658
674
  this.list?.getSlottedNodes("items")[this.list?._itemNavigation._currentIndex].focus();
659
675
  }
660
676
  e.preventDefault();
677
+ if (isCtrlAltF8(e)) {
678
+ return this._handleCtrlALtF8();
679
+ }
661
680
  if (isDownShift(e) || isUpShift(e)) {
662
681
  this._handleItemRangeSelection(e);
663
682
  return;
@@ -685,9 +704,6 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
685
704
  }
686
705
  this._getResponsivePopover().querySelector(".ui5-mcb-select-all-checkbox").focus();
687
706
  }
688
- else if (this.valueStateHeader) {
689
- this.valueStateHeader.focus();
690
- }
691
707
  else {
692
708
  this._inputDom.focus();
693
709
  this._shouldAutocomplete = true;
@@ -718,11 +734,6 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
718
734
  this._setValueStateHeader();
719
735
  }
720
736
  if (isArrowDown && this.open) {
721
- if (this.valueStateHeader) {
722
- this.value = this.valueBeforeAutoComplete || this.value;
723
- this.valueStateHeader.focus();
724
- return;
725
- }
726
737
  if (this.showSelectAll) {
727
738
  this._getResponsivePopover().querySelector(".ui5-mcb-select-all-checkbox").focus();
728
739
  return;
@@ -749,6 +760,13 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
749
760
  this._navigateToNextItem();
750
761
  }
751
762
  }
763
+ _handleCtrlALtF8() {
764
+ const links = this.linksInAriaValueStateHiddenText;
765
+ if (links.length > 0) {
766
+ links[0].focus();
767
+ }
768
+ this._handleLinkNavigation = true;
769
+ }
752
770
  _handleItemRangeSelection(e) {
753
771
  const items = this._getItems();
754
772
  const listItems = this.list?.getSlottedNodes("items");
@@ -1047,6 +1065,44 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1047
1065
  this.selectedItems = this._getItems().filter((item, idx, allItems) => MultiComboBox_1._groupItemFilter(item, ++idx, allItems, selectedItems) || selectedItems.indexOf(item) !== -1);
1048
1066
  }
1049
1067
  }
1068
+ _addLinksEventListeners() {
1069
+ const links = this.linksInAriaValueStateHiddenText;
1070
+ links.forEach((link, index) => {
1071
+ this._linksListenersArray.push((e) => {
1072
+ attachListeners(e, links, index, {
1073
+ closeValueState: () => {
1074
+ if (this.open) {
1075
+ this.open = false;
1076
+ }
1077
+ if (this.valueStateOpen) {
1078
+ this.valueStateOpen = false;
1079
+ }
1080
+ },
1081
+ navigateToItem: () => {
1082
+ this._handleLinkNavigation = false;
1083
+ if (this.open) {
1084
+ this._forwardFocusToInner();
1085
+ this._handleArrowDown();
1086
+ }
1087
+ },
1088
+ focusInput: () => {
1089
+ this._handleLinkNavigation = false;
1090
+ this._forwardFocusToInner();
1091
+ },
1092
+ isPopoverOpen: () => this.open,
1093
+ });
1094
+ });
1095
+ link.addEventListener("keydown", this._linksListenersArray[index]);
1096
+ });
1097
+ }
1098
+ _removeLinksEventListeners() {
1099
+ const links = this.linksInAriaValueStateHiddenText;
1100
+ links.forEach((link, index) => {
1101
+ link.removeEventListener("keydown", this._linksListenersArray[index]);
1102
+ });
1103
+ this._linksListenersArray = [];
1104
+ this._handleLinkNavigation = false;
1105
+ }
1050
1106
  _handleTypeAhead(item, filterValue) {
1051
1107
  if (!item) {
1052
1108
  return;
@@ -1119,7 +1175,7 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1119
1175
  }
1120
1176
  onAfterRendering() {
1121
1177
  this._getList();
1122
- this.valueStateOpen = this.shouldDisplayOnlyValueStateMessage;
1178
+ this.valueStateOpen = this.shouldDisplayOnlyValueStateMessage || (this._handleLinkNavigation && !this.open);
1123
1179
  this.storeResponsivePopoverWidth();
1124
1180
  this._deleting = false;
1125
1181
  // force resize of the tokenizer on invalidation
@@ -1131,6 +1187,11 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1131
1187
  if (this._tokenizer.expanded && this.hasAttribute("focused")) {
1132
1188
  this._tokenizer.scrollToEnd();
1133
1189
  }
1190
+ if (!arraysAreEqual(this._valueStateLinks, this.linksInAriaValueStateHiddenText)) {
1191
+ this._removeLinksEventListeners();
1192
+ this._addLinksEventListeners();
1193
+ this._valueStateLinks = this.linksInAriaValueStateHiddenText;
1194
+ }
1134
1195
  }
1135
1196
  get _isPhone() {
1136
1197
  return isPhone();
@@ -1221,7 +1282,7 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1221
1282
  const popover = this._getPopover();
1222
1283
  const focusIsGoingInPopover = [responsivePopover, popover].some(popup => popup?.contains(e.relatedTarget));
1223
1284
  const focusIsGoingInValueStatePopup = this?.contains(e.relatedTarget);
1224
- if (focusIsGoingInValueStatePopup) {
1285
+ if (focusIsGoingInValueStatePopup || this._handleLinkNavigation) {
1225
1286
  this.focused = false;
1226
1287
  e.stopImmediatePropagation();
1227
1288
  return;
@@ -1272,6 +1333,9 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1272
1333
  if (this.shouldDisplayDefaultValueStateMessage) {
1273
1334
  return `${text} ${this.valueStateDefaultText || ""}`;
1274
1335
  }
1336
+ if (this.getValueStateLinksShortcutsTextAcc) {
1337
+ return `${text}`.concat(" ", this.getValueStateLinksShortcutsTextAcc, " ", this.valueStateMessage.map(el => el.textContent).join(" "));
1338
+ }
1275
1339
  return `${text}`.concat(" ", this.valueStateMessage.map(el => el.textContent).join(" "));
1276
1340
  }
1277
1341
  get valueStateDefaultText() {
@@ -1285,7 +1349,7 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1285
1349
  return this.valueStateTextMappings[valueState];
1286
1350
  }
1287
1351
  get valueStateTextId() {
1288
- return this.hasValueState ? `ui5-multi-combobox-valueStateDesc` : undefined;
1352
+ return this.hasValueState ? `ui5-multi-combobox-valueStateDesc` : "";
1289
1353
  }
1290
1354
  get ariaLabelText() {
1291
1355
  return getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);
@@ -1305,6 +1369,36 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1305
1369
  [ValueState.Information]: "information",
1306
1370
  }[valueState];
1307
1371
  }
1372
+ get linksInAriaValueStateHiddenText() {
1373
+ const links = [];
1374
+ if (this.valueStateMessage) {
1375
+ this.valueStateMessage.forEach(element => {
1376
+ if (element.children.length) {
1377
+ element.querySelectorAll("ui5-link").forEach(link => {
1378
+ links.push(link);
1379
+ });
1380
+ }
1381
+ });
1382
+ }
1383
+ return links;
1384
+ }
1385
+ get getValueStateLinksShortcutsTextAcc() {
1386
+ const links = this.linksInAriaValueStateHiddenText;
1387
+ if (!links.length) {
1388
+ return "";
1389
+ }
1390
+ if (isMac()) {
1391
+ return links.length === 1
1392
+ ? MultiComboBox_1.i18nBundle.getText(VALUE_STATE_LINK_MAC)
1393
+ : MultiComboBox_1.i18nBundle.getText(VALUE_STATE_LINKS_MAC);
1394
+ }
1395
+ return links.length === 1
1396
+ ? MultiComboBox_1.i18nBundle.getText(VALUE_STATE_LINK)
1397
+ : MultiComboBox_1.i18nBundle.getText(VALUE_STATE_LINKS);
1398
+ }
1399
+ get _valueStateLinksShortcutsTextAccId() {
1400
+ return this.linksInAriaValueStateHiddenText.length > 0 ? `hiddenText-value-state-link-shortcut` : "";
1401
+ }
1308
1402
  get _tokensCountText() {
1309
1403
  if (!this._tokenizer) {
1310
1404
  return;
@@ -1318,7 +1412,7 @@ let MultiComboBox = MultiComboBox_1 = class MultiComboBox extends UI5Element {
1318
1412
  return this._tokenizer.tokens.filter(token => token.selected).length;
1319
1413
  }
1320
1414
  get ariaDescribedByText() {
1321
- return this.valueStateTextId ? `${this._tokensCountTextId} ${this.valueStateTextId}` : `${this._tokensCountTextId}`;
1415
+ return `${this._tokensCountTextId} ${this.valueStateTextId} ${this._valueStateLinksShortcutsTextAccId}`.trim();
1322
1416
  }
1323
1417
  get shouldDisplayDefaultValueStateMessage() {
1324
1418
  return !this.valueStateMessage.length && this.hasValueStateMessage;
@@ -1533,6 +1627,12 @@ __decorate([
1533
1627
  __decorate([
1534
1628
  property({ type: Boolean })
1535
1629
  ], MultiComboBox.prototype, "tokenizerAvailable", void 0);
1630
+ __decorate([
1631
+ property({ type: Boolean })
1632
+ ], MultiComboBox.prototype, "_handleLinkNavigation", void 0);
1633
+ __decorate([
1634
+ property({ type: Array })
1635
+ ], MultiComboBox.prototype, "_linksListenersArray", void 0);
1536
1636
  __decorate([
1537
1637
  slot({
1538
1638
  type: HTMLElement,