@ui5/webcomponents 2.9.0-rc.1 → 2.9.0-rc.3

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 (684) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/cypress/specs/AvatarGroup.cy.tsx +16 -1
  3. package/cypress/specs/Breadcrumbs.mobile.cy.tsx +53 -0
  4. package/cypress/specs/Button.cy.tsx +9 -0
  5. package/cypress/specs/Calendar.cy.tsx +55 -48
  6. package/cypress/specs/ColorPicker.cy.tsx +232 -23
  7. package/cypress/specs/DateControlsWithTimezone.cy.tsx +4 -4
  8. package/cypress/specs/DatePicker.cy.tsx +14 -8
  9. package/cypress/specs/DateRangePicker.cy.tsx +27 -21
  10. package/cypress/specs/DateTimePicker.cy.tsx +480 -0
  11. package/cypress/specs/DayPicker.cy.tsx +81 -0
  12. package/cypress/specs/FormSupport.cy.tsx +58 -1
  13. package/cypress/specs/Input.cy.tsx +61 -1
  14. package/cypress/specs/Popover.cy.tsx +53 -0
  15. package/cypress/specs/Select.cy.tsx +152 -0
  16. package/cypress/specs/TableGrowing.cy.tsx +18 -18
  17. package/cypress/specs/TableNavigation.cy.tsx +3 -3
  18. package/cypress/specs/TableRowActions.cy.tsx +6 -0
  19. package/cypress/specs/Tree.cy.tsx +18 -0
  20. package/cypress/support/commands/Calendar.commands.ts +9 -3
  21. package/cypress/support/commands/ColorPicker.commands.ts +14 -0
  22. package/cypress/support/commands/DatePicker.commands.ts +1 -1
  23. package/cypress/support/commands/DateTimePicker.commands.ts +60 -0
  24. package/cypress/support/commands.ts +2 -0
  25. package/dist/.tsbuildinfo +1 -1
  26. package/dist/Avatar.d.ts +5 -3
  27. package/dist/Avatar.js +7 -5
  28. package/dist/Avatar.js.map +1 -1
  29. package/dist/AvatarGroup.d.ts +1 -1
  30. package/dist/AvatarGroup.js +2 -2
  31. package/dist/AvatarGroup.js.map +1 -1
  32. package/dist/Breadcrumbs.d.ts +5 -0
  33. package/dist/Breadcrumbs.js +9 -0
  34. package/dist/Breadcrumbs.js.map +1 -1
  35. package/dist/BreadcrumbsPopoverTemplate.js +5 -1
  36. package/dist/BreadcrumbsPopoverTemplate.js.map +1 -1
  37. package/dist/Button.d.ts +1 -1
  38. package/dist/DatePicker.d.ts +9 -5
  39. package/dist/DatePicker.js +42 -22
  40. package/dist/DatePicker.js.map +1 -1
  41. package/dist/DatePickerInputTemplate.js +2 -2
  42. package/dist/DatePickerInputTemplate.js.map +1 -1
  43. package/dist/DatePickerPopoverTemplate.js +34 -1
  44. package/dist/DatePickerPopoverTemplate.js.map +1 -1
  45. package/dist/DateRangePicker.d.ts +6 -2
  46. package/dist/DateRangePicker.js +10 -8
  47. package/dist/DateRangePicker.js.map +1 -1
  48. package/dist/DateTimePicker.d.ts +1 -18
  49. package/dist/DateTimePicker.js +5 -25
  50. package/dist/DateTimePicker.js.map +1 -1
  51. package/dist/DateTimePickerTemplate.js +16 -18
  52. package/dist/DateTimePickerTemplate.js.map +1 -1
  53. package/dist/DayPicker.d.ts +3 -0
  54. package/dist/DayPicker.js +12 -3
  55. package/dist/DayPicker.js.map +1 -1
  56. package/dist/Input.d.ts +8 -0
  57. package/dist/Input.js +7 -1
  58. package/dist/Input.js.map +1 -1
  59. package/dist/InputTemplate.js +2 -2
  60. package/dist/InputTemplate.js.map +1 -1
  61. package/dist/MonthPicker.js +7 -1
  62. package/dist/MonthPicker.js.map +1 -1
  63. package/dist/MultiComboBox.d.ts +0 -6
  64. package/dist/MultiComboBox.js +0 -8
  65. package/dist/MultiComboBox.js.map +1 -1
  66. package/dist/Popup.js +1 -1
  67. package/dist/Popup.js.map +1 -1
  68. package/dist/PopupTemplate.d.ts +1 -1
  69. package/dist/Select.d.ts +46 -8
  70. package/dist/Select.js +77 -19
  71. package/dist/Select.js.map +1 -1
  72. package/dist/SelectPopoverTemplate.js +1 -1
  73. package/dist/SelectPopoverTemplate.js.map +1 -1
  74. package/dist/TabContainer.d.ts +0 -22
  75. package/dist/TabContainer.js +0 -24
  76. package/dist/TabContainer.js.map +1 -1
  77. package/dist/Table.d.ts +3 -3
  78. package/dist/Table.js +3 -3
  79. package/dist/Table.js.map +1 -1
  80. package/dist/TableGrowing.d.ts +12 -12
  81. package/dist/TableGrowing.js +13 -13
  82. package/dist/TableGrowing.js.map +1 -1
  83. package/dist/TableGrowingTemplate.js +2 -2
  84. package/dist/TableGrowingTemplate.js.map +1 -1
  85. package/dist/TableNavigation.js +2 -2
  86. package/dist/TableNavigation.js.map +1 -1
  87. package/dist/TableRowActionBase.d.ts +8 -7
  88. package/dist/TableRowActionBase.js +24 -9
  89. package/dist/TableRowActionBase.js.map +1 -1
  90. package/dist/TableSelectionBase.d.ts +2 -4
  91. package/dist/TableSelectionBase.js +0 -1
  92. package/dist/TableSelectionBase.js.map +1 -1
  93. package/dist/TableSelectionMulti.d.ts +1 -3
  94. package/dist/TableSelectionMulti.js +2 -4
  95. package/dist/TableSelectionMulti.js.map +1 -1
  96. package/dist/TableSelectionSingle.d.ts +1 -1
  97. package/dist/TableSelectionSingle.js +2 -2
  98. package/dist/TableSelectionSingle.js.map +1 -1
  99. package/dist/TableTemplate.js +2 -2
  100. package/dist/TableTemplate.js.map +1 -1
  101. package/dist/TimePicker.d.ts +0 -15
  102. package/dist/TimePicker.js +0 -17
  103. package/dist/TimePicker.js.map +1 -1
  104. package/dist/TimePickerPopoverTemplate.js +6 -1
  105. package/dist/TimePickerPopoverTemplate.js.map +1 -1
  106. package/dist/TreeList.js +3 -1
  107. package/dist/TreeList.js.map +1 -1
  108. package/dist/bundle.esm.d.ts +1 -1
  109. package/dist/css/themes/Avatar.css +1 -1
  110. package/dist/css/themes/AvatarGroup.css +1 -1
  111. package/dist/css/themes/Bar.css +1 -1
  112. package/dist/css/themes/Breadcrumbs.css +1 -1
  113. package/dist/css/themes/BusyIndicator.css +1 -1
  114. package/dist/css/themes/Button.css +1 -1
  115. package/dist/css/themes/ButtonBadge.css +1 -1
  116. package/dist/css/themes/Calendar.css +1 -1
  117. package/dist/css/themes/CalendarHeader.css +1 -1
  118. package/dist/css/themes/CalendarLegend.css +1 -1
  119. package/dist/css/themes/CalendarLegendItem.css +1 -1
  120. package/dist/css/themes/Card.css +1 -1
  121. package/dist/css/themes/CardHeader.css +1 -1
  122. package/dist/css/themes/Carousel.css +1 -1
  123. package/dist/css/themes/CheckBox.css +1 -1
  124. package/dist/css/themes/ColorPalette.css +1 -1
  125. package/dist/css/themes/ColorPaletteItem.css +1 -1
  126. package/dist/css/themes/ColorPalettePopover.css +1 -1
  127. package/dist/css/themes/ColorPicker.css +1 -1
  128. package/dist/css/themes/ComboBox.css +1 -1
  129. package/dist/css/themes/ComboBoxItem.css +1 -1
  130. package/dist/css/themes/DatePicker.css +1 -1
  131. package/dist/css/themes/DatePickerPopover.css +1 -1
  132. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  133. package/dist/css/themes/DayPicker.css +1 -1
  134. package/dist/css/themes/Dialog.css +1 -1
  135. package/dist/css/themes/FileUploader.css +1 -1
  136. package/dist/css/themes/Form.css +1 -1
  137. package/dist/css/themes/FormItem.css +1 -1
  138. package/dist/css/themes/FormItemSpan.css +1 -1
  139. package/dist/css/themes/GrowingButton.css +1 -1
  140. package/dist/css/themes/Icon.css +1 -1
  141. package/dist/css/themes/Input.css +1 -1
  142. package/dist/css/themes/InputIcon.css +1 -1
  143. package/dist/css/themes/InputSharedStyles.css +1 -1
  144. package/dist/css/themes/Link.css +1 -1
  145. package/dist/css/themes/List.css +1 -1
  146. package/dist/css/themes/ListItem.css +1 -1
  147. package/dist/css/themes/ListItemBase.css +1 -1
  148. package/dist/css/themes/ListItemCustom.css +1 -1
  149. package/dist/css/themes/ListItemGroup.css +1 -1
  150. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  151. package/dist/css/themes/ListItemIcon.css +1 -1
  152. package/dist/css/themes/Menu.css +1 -1
  153. package/dist/css/themes/MenuItem.css +1 -1
  154. package/dist/css/themes/MessageStrip.css +1 -1
  155. package/dist/css/themes/MonthPicker.css +1 -1
  156. package/dist/css/themes/MultiComboBox.css +1 -1
  157. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  158. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  159. package/dist/css/themes/MultiInput.css +1 -1
  160. package/dist/css/themes/OptionBase.css +1 -1
  161. package/dist/css/themes/Panel.css +1 -1
  162. package/dist/css/themes/Popover.css +1 -1
  163. package/dist/css/themes/PopupsCommon.css +1 -1
  164. package/dist/css/themes/ProgressIndicator.css +1 -1
  165. package/dist/css/themes/RadioButton.css +1 -1
  166. package/dist/css/themes/RangeSlider.css +1 -1
  167. package/dist/css/themes/RatingIndicator.css +1 -1
  168. package/dist/css/themes/ResponsivePopover.css +1 -1
  169. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  170. package/dist/css/themes/SegmentedButton.css +1 -1
  171. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  172. package/dist/css/themes/Select.css +1 -1
  173. package/dist/css/themes/SliderBase.css +1 -1
  174. package/dist/css/themes/SplitButton.css +1 -1
  175. package/dist/css/themes/StepInput.css +1 -1
  176. package/dist/css/themes/SuggestionItem.css +1 -1
  177. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  178. package/dist/css/themes/Switch.css +1 -1
  179. package/dist/css/themes/TabContainer.css +1 -1
  180. package/dist/css/themes/TabInOverflow.css +1 -1
  181. package/dist/css/themes/TabInStrip.css +1 -1
  182. package/dist/css/themes/TabSemanticIcon.css +1 -1
  183. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  184. package/dist/css/themes/Table.css +1 -1
  185. package/dist/css/themes/TableCellBase.css +1 -1
  186. package/dist/css/themes/TableGrowing.css +1 -1
  187. package/dist/css/themes/TableHeaderRow.css +1 -1
  188. package/dist/css/themes/TableRow.css +1 -1
  189. package/dist/css/themes/TableRowActionBase.css +1 -1
  190. package/dist/css/themes/TableRowBase.css +1 -1
  191. package/dist/css/themes/Tag.css +1 -1
  192. package/dist/css/themes/Text.css +1 -1
  193. package/dist/css/themes/TextArea.css +1 -1
  194. package/dist/css/themes/TimePicker.css +1 -1
  195. package/dist/css/themes/Toast.css +1 -1
  196. package/dist/css/themes/ToggleButton.css +1 -1
  197. package/dist/css/themes/Token.css +1 -1
  198. package/dist/css/themes/Tokenizer.css +1 -1
  199. package/dist/css/themes/TokenizerPopover.css +1 -1
  200. package/dist/css/themes/Toolbar.css +1 -1
  201. package/dist/css/themes/ToolbarPopover.css +1 -1
  202. package/dist/css/themes/TreeItem.css +1 -1
  203. package/dist/css/themes/ValueStateMessage.css +1 -1
  204. package/dist/css/themes/YearPicker.css +1 -1
  205. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  206. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  207. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  208. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  209. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  210. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  211. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  212. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  213. package/dist/custom-elements-internal.json +1546 -1228
  214. package/dist/custom-elements.json +1252 -1162
  215. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_id.json +1 -0
  239. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  253. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  259. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  260. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  261. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  262. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  263. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  264. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  265. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  266. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  267. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  268. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  269. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  270. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  271. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  272. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  273. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  274. package/dist/generated/json-imports/i18n-fetch.js +2 -2
  275. package/dist/generated/json-imports/i18n-fetch.js.map +1 -1
  276. package/dist/generated/json-imports/i18n.js +2 -2
  277. package/dist/generated/json-imports/i18n.js.map +1 -1
  278. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  279. package/dist/generated/themes/Avatar.css.js +1 -1
  280. package/dist/generated/themes/Avatar.css.js.map +1 -1
  281. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  282. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  283. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  284. package/dist/generated/themes/Bar.css.d.ts +1 -1
  285. package/dist/generated/themes/Bar.css.js +1 -1
  286. package/dist/generated/themes/Bar.css.js.map +1 -1
  287. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  288. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  289. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  290. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  291. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  292. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  293. package/dist/generated/themes/Button.css.d.ts +1 -1
  294. package/dist/generated/themes/Button.css.js +1 -1
  295. package/dist/generated/themes/Button.css.js.map +1 -1
  296. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  297. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  298. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  299. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  300. package/dist/generated/themes/Calendar.css.js +1 -1
  301. package/dist/generated/themes/Calendar.css.js.map +1 -1
  302. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  303. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  304. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  305. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  306. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  307. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  308. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  309. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  310. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  311. package/dist/generated/themes/Card.css.d.ts +1 -1
  312. package/dist/generated/themes/Card.css.js +1 -1
  313. package/dist/generated/themes/Card.css.js.map +1 -1
  314. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  315. package/dist/generated/themes/CardHeader.css.js +1 -1
  316. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  317. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  318. package/dist/generated/themes/Carousel.css.js +1 -1
  319. package/dist/generated/themes/Carousel.css.js.map +1 -1
  320. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  321. package/dist/generated/themes/CheckBox.css.js +1 -1
  322. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  323. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  324. package/dist/generated/themes/ColorPalette.css.js +1 -1
  325. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  326. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  327. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  328. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  329. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  330. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  331. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  332. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  333. package/dist/generated/themes/ColorPicker.css.js +1 -1
  334. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  335. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  336. package/dist/generated/themes/ComboBox.css.js +1 -1
  337. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  338. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  339. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  340. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  341. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  342. package/dist/generated/themes/DatePicker.css.js +1 -1
  343. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  344. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  345. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  346. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  347. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  348. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  349. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  350. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  351. package/dist/generated/themes/DayPicker.css.js +1 -1
  352. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  353. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  354. package/dist/generated/themes/Dialog.css.js +1 -1
  355. package/dist/generated/themes/Dialog.css.js.map +1 -1
  356. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  357. package/dist/generated/themes/FileUploader.css.js +1 -1
  358. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  359. package/dist/generated/themes/Form.css.d.ts +1 -1
  360. package/dist/generated/themes/Form.css.js +1 -1
  361. package/dist/generated/themes/Form.css.js.map +1 -1
  362. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  363. package/dist/generated/themes/FormItem.css.js +1 -1
  364. package/dist/generated/themes/FormItem.css.js.map +1 -1
  365. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  366. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  367. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  368. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  369. package/dist/generated/themes/GrowingButton.css.js +1 -1
  370. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  371. package/dist/generated/themes/Icon.css.d.ts +1 -1
  372. package/dist/generated/themes/Icon.css.js +1 -1
  373. package/dist/generated/themes/Icon.css.js.map +1 -1
  374. package/dist/generated/themes/Input.css.d.ts +1 -1
  375. package/dist/generated/themes/Input.css.js +1 -1
  376. package/dist/generated/themes/Input.css.js.map +1 -1
  377. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  378. package/dist/generated/themes/InputIcon.css.js +1 -1
  379. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  380. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  381. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  382. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  383. package/dist/generated/themes/Link.css.d.ts +1 -1
  384. package/dist/generated/themes/Link.css.js +1 -1
  385. package/dist/generated/themes/Link.css.js.map +1 -1
  386. package/dist/generated/themes/List.css.d.ts +1 -1
  387. package/dist/generated/themes/List.css.js +1 -1
  388. package/dist/generated/themes/List.css.js.map +1 -1
  389. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  390. package/dist/generated/themes/ListItem.css.js +1 -1
  391. package/dist/generated/themes/ListItem.css.js.map +1 -1
  392. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  393. package/dist/generated/themes/ListItemBase.css.js +1 -1
  394. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  395. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  396. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  397. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  398. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  399. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  400. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  401. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  402. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  403. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  404. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  405. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  406. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  407. package/dist/generated/themes/Menu.css.d.ts +1 -1
  408. package/dist/generated/themes/Menu.css.js +1 -1
  409. package/dist/generated/themes/Menu.css.js.map +1 -1
  410. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  411. package/dist/generated/themes/MenuItem.css.js +1 -1
  412. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  413. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  414. package/dist/generated/themes/MessageStrip.css.js +1 -1
  415. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  416. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  417. package/dist/generated/themes/MonthPicker.css.js +1 -1
  418. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  419. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  420. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  421. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  422. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  423. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  424. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  425. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  426. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  427. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  428. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  429. package/dist/generated/themes/MultiInput.css.js +1 -1
  430. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  431. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  432. package/dist/generated/themes/OptionBase.css.js +1 -1
  433. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  434. package/dist/generated/themes/Panel.css.d.ts +1 -1
  435. package/dist/generated/themes/Panel.css.js +1 -1
  436. package/dist/generated/themes/Panel.css.js.map +1 -1
  437. package/dist/generated/themes/Popover.css.d.ts +1 -1
  438. package/dist/generated/themes/Popover.css.js +1 -1
  439. package/dist/generated/themes/Popover.css.js.map +1 -1
  440. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  441. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  442. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  443. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  444. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  445. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  446. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  447. package/dist/generated/themes/RadioButton.css.js +1 -1
  448. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  449. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  450. package/dist/generated/themes/RangeSlider.css.js +1 -1
  451. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  452. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  453. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  454. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  455. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  456. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  457. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  458. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  459. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  460. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  461. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  462. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  463. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  464. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  465. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  466. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  467. package/dist/generated/themes/Select.css.d.ts +1 -1
  468. package/dist/generated/themes/Select.css.js +1 -1
  469. package/dist/generated/themes/Select.css.js.map +1 -1
  470. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  471. package/dist/generated/themes/SliderBase.css.js +1 -1
  472. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  473. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  474. package/dist/generated/themes/SplitButton.css.js +1 -1
  475. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  476. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  477. package/dist/generated/themes/StepInput.css.js +1 -1
  478. package/dist/generated/themes/StepInput.css.js.map +1 -1
  479. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  480. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  481. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  482. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  483. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  484. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  485. package/dist/generated/themes/Switch.css.d.ts +1 -1
  486. package/dist/generated/themes/Switch.css.js +1 -1
  487. package/dist/generated/themes/Switch.css.js.map +1 -1
  488. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  489. package/dist/generated/themes/TabContainer.css.js +1 -1
  490. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  491. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  492. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  493. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  494. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  495. package/dist/generated/themes/TabInStrip.css.js +1 -1
  496. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  497. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  498. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  499. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  500. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  501. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  502. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  503. package/dist/generated/themes/Table.css.d.ts +1 -1
  504. package/dist/generated/themes/Table.css.js +1 -1
  505. package/dist/generated/themes/Table.css.js.map +1 -1
  506. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  507. package/dist/generated/themes/TableCellBase.css.js +1 -1
  508. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  509. package/dist/generated/themes/TableGrowing.css.d.ts +1 -1
  510. package/dist/generated/themes/TableGrowing.css.js +1 -1
  511. package/dist/generated/themes/TableGrowing.css.js.map +1 -1
  512. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  513. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  514. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  515. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  516. package/dist/generated/themes/TableRow.css.js +1 -1
  517. package/dist/generated/themes/TableRow.css.js.map +1 -1
  518. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  519. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  520. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  521. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  522. package/dist/generated/themes/TableRowBase.css.js +1 -1
  523. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  524. package/dist/generated/themes/Tag.css.d.ts +1 -1
  525. package/dist/generated/themes/Tag.css.js +1 -1
  526. package/dist/generated/themes/Tag.css.js.map +1 -1
  527. package/dist/generated/themes/Text.css.d.ts +1 -1
  528. package/dist/generated/themes/Text.css.js +1 -1
  529. package/dist/generated/themes/Text.css.js.map +1 -1
  530. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  531. package/dist/generated/themes/TextArea.css.js +1 -1
  532. package/dist/generated/themes/TextArea.css.js.map +1 -1
  533. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  534. package/dist/generated/themes/TimePicker.css.js +1 -1
  535. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  536. package/dist/generated/themes/Toast.css.d.ts +1 -1
  537. package/dist/generated/themes/Toast.css.js +1 -1
  538. package/dist/generated/themes/Toast.css.js.map +1 -1
  539. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  540. package/dist/generated/themes/ToggleButton.css.js +1 -1
  541. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  542. package/dist/generated/themes/Token.css.d.ts +1 -1
  543. package/dist/generated/themes/Token.css.js +1 -1
  544. package/dist/generated/themes/Token.css.js.map +1 -1
  545. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  546. package/dist/generated/themes/Tokenizer.css.js +1 -1
  547. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  548. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  549. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  550. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  551. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  552. package/dist/generated/themes/Toolbar.css.js +1 -1
  553. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  554. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  555. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  556. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  557. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  558. package/dist/generated/themes/TreeItem.css.js +1 -1
  559. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  560. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  561. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  562. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  563. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  564. package/dist/generated/themes/YearPicker.css.js +1 -1
  565. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  566. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  567. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  568. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  569. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  570. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  571. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  572. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  573. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  574. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  575. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  576. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  577. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  578. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  579. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  580. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  581. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  582. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  583. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  584. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  585. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  586. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  587. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  588. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  589. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  590. package/dist/types/AvatarColorScheme.d.ts +5 -0
  591. package/dist/types/AvatarColorScheme.js +5 -0
  592. package/dist/types/AvatarColorScheme.js.map +1 -1
  593. package/dist/types/InputKeyHint.d.ts +16 -0
  594. package/dist/types/InputKeyHint.js +18 -0
  595. package/dist/types/InputKeyHint.js.map +1 -0
  596. package/dist/vscode.html-custom-data.json +36 -45
  597. package/dist/web-types.json +214 -70
  598. package/package-scripts.cjs +4 -0
  599. package/package.json +9 -9
  600. package/src/BreadcrumbsPopoverTemplate.tsx +6 -1
  601. package/src/DatePickerInputTemplate.tsx +5 -4
  602. package/src/DatePickerPopoverTemplate.tsx +51 -0
  603. package/src/DateTimePickerTemplate.tsx +48 -51
  604. package/src/InputTemplate.tsx +2 -0
  605. package/src/SelectPopoverTemplate.tsx +1 -0
  606. package/src/TableGrowingTemplate.tsx +7 -7
  607. package/src/TableTemplate.tsx +4 -4
  608. package/src/TimePickerPopoverTemplate.tsx +8 -3
  609. package/src/i18n/messagebundle_ar.properties +4 -0
  610. package/src/i18n/messagebundle_bg.properties +4 -0
  611. package/src/i18n/messagebundle_ca.properties +4 -0
  612. package/src/i18n/messagebundle_cnr.properties +4 -0
  613. package/src/i18n/messagebundle_cs.properties +4 -0
  614. package/src/i18n/messagebundle_cy.properties +4 -0
  615. package/src/i18n/messagebundle_da.properties +4 -0
  616. package/src/i18n/messagebundle_de.properties +4 -0
  617. package/src/i18n/messagebundle_el.properties +4 -0
  618. package/src/i18n/messagebundle_en.properties +4 -0
  619. package/src/i18n/messagebundle_en_GB.properties +4 -0
  620. package/src/i18n/messagebundle_en_US_sappsd.properties +2 -0
  621. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  622. package/src/i18n/messagebundle_en_US_saptrc.properties +2 -0
  623. package/src/i18n/messagebundle_es.properties +4 -0
  624. package/src/i18n/messagebundle_es_MX.properties +4 -0
  625. package/src/i18n/messagebundle_et.properties +4 -0
  626. package/src/i18n/messagebundle_fi.properties +4 -0
  627. package/src/i18n/messagebundle_fr.properties +9 -5
  628. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  629. package/src/i18n/messagebundle_hi.properties +4 -0
  630. package/src/i18n/messagebundle_hr.properties +12 -8
  631. package/src/i18n/messagebundle_hu.properties +4 -0
  632. package/src/i18n/messagebundle_id.properties +4 -0
  633. package/src/i18n/messagebundle_it.properties +22 -18
  634. package/src/i18n/messagebundle_iw.properties +4 -0
  635. package/src/i18n/messagebundle_ja.properties +4 -0
  636. package/src/i18n/messagebundle_kk.properties +4 -0
  637. package/src/i18n/messagebundle_ko.properties +4 -0
  638. package/src/i18n/messagebundle_lt.properties +4 -0
  639. package/src/i18n/messagebundle_lv.properties +15 -11
  640. package/src/i18n/messagebundle_mk.properties +4 -0
  641. package/src/i18n/messagebundle_ms.properties +6 -2
  642. package/src/i18n/messagebundle_nl.properties +4 -0
  643. package/src/i18n/messagebundle_no.properties +4 -0
  644. package/src/i18n/messagebundle_pl.properties +4 -0
  645. package/src/i18n/messagebundle_pt.properties +4 -0
  646. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  647. package/src/i18n/messagebundle_ro.properties +4 -0
  648. package/src/i18n/messagebundle_ru.properties +6 -2
  649. package/src/i18n/messagebundle_sh.properties +4 -0
  650. package/src/i18n/messagebundle_sk.properties +4 -0
  651. package/src/i18n/messagebundle_sl.properties +4 -0
  652. package/src/i18n/messagebundle_sr.properties +4 -0
  653. package/src/i18n/messagebundle_sv.properties +4 -0
  654. package/src/i18n/messagebundle_th.properties +4 -0
  655. package/src/i18n/messagebundle_tr.properties +4 -0
  656. package/src/i18n/messagebundle_uk.properties +4 -0
  657. package/src/i18n/messagebundle_vi.properties +4 -0
  658. package/src/i18n/messagebundle_zh_CN.properties +5 -1
  659. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  660. package/src/themes/Avatar.css +1 -0
  661. package/src/themes/Bar.css +0 -14
  662. package/src/themes/DatePicker.css +4 -0
  663. package/src/themes/DatePickerPopover.css +7 -0
  664. package/src/themes/DateTimePickerPopover.css +9 -0
  665. package/src/themes/Input.css +8 -3
  666. package/src/themes/Table.css +1 -1
  667. package/src/themes/TableGrowing.css +7 -7
  668. package/src/themes/base/Bar-parameters.css +2 -6
  669. package/src/themes/base/Input-parameters.css +1 -0
  670. package/src/themes/base/RadioButton-parameters.css +1 -1
  671. package/src/themes/sap_fiori_3/Input-parameters.css +1 -0
  672. package/src/themes/sap_fiori_3_dark/Input-parameters.css +1 -0
  673. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +1 -0
  674. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +1 -0
  675. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +1 -0
  676. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +1 -0
  677. package/src/themes/sap_horizon/RadioButton-parameters.css +0 -1
  678. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +0 -1
  679. package/src/themes/sap_horizon_hcb/Input-parameters.css +1 -0
  680. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +1 -0
  681. package/src/themes/sap_horizon_hcw/Input-parameters.css +1 -0
  682. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +1 -0
  683. package/dist/generated/assets/i18n/messagebundle_in.json +0 -1
  684. package/src/i18n/messagebundle_in.properties +0 -172
package/dist/Popup.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sourceRoot":"","sources":["../src/Popup.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport {\n\tisChrome,\n\tisDesktop,\n\tisPhone,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getFirstFocusableElement, getLastFocusableElement } from \"@ui5/webcomponents-base/dist/util/FocusableElements.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { hasStyle, createStyle } from \"@ui5/webcomponents-base/dist/ManagedStyles.js\";\nimport { isEnter, isTabPrevious } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getFocusedElement, isFocusedElementWithinNode } from \"@ui5/webcomponents-base/dist/util/PopupUtils.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport MediaRange from \"@ui5/webcomponents-base/dist/MediaRange.js\";\nimport toLowercaseEnumValue from \"@ui5/webcomponents-base/dist/util/toLowercaseEnumValue.js\";\nimport PopupTemplate from \"./PopupTemplate.js\";\nimport PopupAccessibleRole from \"./types/PopupAccessibleRole.js\";\nimport { addOpenedPopup, removeOpenedPopup } from \"./popup-utils/OpenedPopupsRegistry.js\";\n\n// Styles\nimport popupStlyes from \"./generated/themes/Popup.css.js\";\nimport popupBlockLayerStyles from \"./generated/themes/PopupBlockLayer.css.js\";\nimport globalStyles from \"./generated/themes/PopupGlobal.css.js\";\n\nconst createBlockingStyle = (): void => {\n\tif (!hasStyle(\"data-ui5-popup-scroll-blocker\")) {\n\t\tcreateStyle(globalStyles, \"data-ui5-popup-scroll-blocker\");\n\t}\n};\n\ncreateBlockingStyle();\n\nconst pageScrollingBlockers = new Set<Popup>();\n\ntype PopupScrollEventDetail = {\n\tscrollTop: number;\n\ttargetRef: HTMLElement;\n}\n\ntype PopupBeforeCloseEventDetail = {\n\tescPressed: boolean;\n}\n\n/**\n * @class\n * ### Overview\n * Base class for all popup Web Components.\n *\n * If you need to create your own popup-like custom UI5 Web Components.\n *\n * 1. The Popup class handles modality:\n * - The \"isModal\" getter can be overridden by derivatives to provide their own conditions when they are modal or not\n * - Derivatives may call the \"blockPageScrolling\" and \"unblockPageScrolling\" static methods to temporarily remove scrollbars on the html element\n * - Derivatives may call the \"openPopup\" and \"closePopup\" methods which handle focus, manage the popup registry and for modal popups, manage the blocking layer\n *\n * 2. Provides blocking layer (relevant for modal popups only):\n * - Controlled by the \"open\" and \"close\" methods\n *\n * 3. The Popup class \"traps\" focus:\n * - Derivatives may call the \"applyInitialFocus\" method (usually when opening, to transfer focus inside the popup)\n *\n * 4. The template of this component exposes two inline partials you can override in derivatives:\n * - beforeContent (upper part of the box, useful for header/title/close button)\n * - afterContent (lower part, useful for footer/action buttons)\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n\trenderer: jsxRender,\n\tstyles: [popupStlyes, popupBlockLayerStyles],\n\ttemplate: PopupTemplate,\n})\n/**\n * Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening.\n * @public\n */\n@event(\"before-open\", {\n\tcancelable: true,\n})\n\n/**\n * Fired after the component is opened.\n * @public\n */\n@event(\"open\")\n\n/**\n * Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing.\n * @public\n * @param {boolean} escPressed Indicates that `ESC` key has triggered the event.\n */\n@event(\"before-close\", {\n\tcancelable: true,\n})\n\n/**\n * Fired after the component is closed.\n * @public\n */\n@event(\"close\")\n\n/**\n * Fired whenever the popup content area is scrolled\n * @private\n */\n@event(\"scroll\", {\n\tbubbles: true,\n})\nabstract class Popup extends UI5Element {\n\teventDetails!: {\n\t\t\"before-open\": void\n\t\t\"open\": void\n\t\t\"before-close\": PopupBeforeCloseEventDetail\n\t\t\"close\": void\n\t\t\"scroll\": PopupScrollEventDetail\n\t}\n\n\t/**\n\t * Defines the ID of the HTML Element, which will get the initial focus.\n\t *\n\t * **Note:** If an element with `autofocus` attribute is added inside the component,\n\t * `initialFocus` won't take effect.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tinitialFocus?: string;\n\n\t/**\n\t * Defines if the focus should be returned to the previously focused element,\n\t * when the popup closes.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t*/\n\t@property({ type: Boolean })\n\tpreventFocusRestore = false;\n\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Allows setting a custom role.\n\t * @default \"Dialog\"\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property()\n\taccessibleRole: `${PopupAccessibleRole}` = \"Dialog\";\n\n\t/**\n\t * Defines the current media query size.\n\t * @private\n\t */\n\t@property()\n\tmediaRange?: string;\n\n\t/**\n\t * Indicates whether initial focus should be prevented.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\tpreventInitialFocus = false;\n\n\t/**\n\t * Indicates if the element is the top modal popup\n\t *\n\t * This property is calculated automatically\n\t * @private\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\tisTopModalPopup = false;\n\n\t/**\n\t * Defines the content of the Popup.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tcontent!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tonPhone = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tonDesktop = false;\n\n\t_resizeHandler: ResizeObserverCallback;\n\t_shouldFocusRoot?: boolean;\n\t_focusedElementBeforeOpen?: HTMLElement | null;\n\t_opened = false;\n\t_open = false;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._resize.bind(this);\n\n\t\tthis._getRealDomRef = () => {\n\t\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\"[root-element]\")!;\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.onPhone = isPhone();\n\t\tthis.onDesktop = isDesktop();\n\t}\n\n\tonAfterRendering() {\n\t\trenderFinished().then(() => {\n\t\t\tthis._updateMediaRange();\n\t\t});\n\t}\n\n\tonEnterDOM() {\n\t\tthis.setAttribute(\"popover\", \"manual\");\n\t\tResizeHandler.register(this, this._resizeHandler);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\n\t\tthis.tabIndex = -1;\n\n\t\tif (this.open) {\n\t\t\tthis.showPopover();\n\t\t\tthis.openPopup();\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tif (this._opened) {\n\t\t\tPopup.unblockPageScrolling(this);\n\t\t\tthis._removeOpenedPopup();\n\t\t}\n\n\t\tResizeHandler.deregister(this, this._resizeHandler);\n\t}\n\n\t/**\n\t * Indicates if the element is open\n\t * @public\n\t * @default false\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\tset open(value: boolean) {\n\t\tif (this._open === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._open = value;\n\n\t\tif (value) {\n\t\t\tthis.openPopup();\n\t\t} else {\n\t\t\tthis.closePopup();\n\t\t}\n\t}\n\n\tget open() : boolean {\n\t\treturn this._open;\n\t}\n\n\tasync openPopup() {\n\t\tif (this._opened) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevented = !this.fireDecoratorEvent(\"before-open\");\n\n\t\tif (prevented) {\n\t\t\tthis.open = false;\n\t\t\treturn;\n\t\t}\n\n\t\tthis._opened = true;\n\n\t\tif (this.isModal) {\n\t\t\tPopup.blockPageScrolling(this);\n\t\t}\n\n\t\tthis._focusedElementBeforeOpen = getFocusedElement();\n\n\t\tthis._show();\n\n\t\tif (this.getDomRef()) {\n\t\t\tthis._updateMediaRange();\n\t\t}\n\n\t\tthis._addOpenedPopup();\n\n\t\tthis.open = true;\n\n\t\t// initial focus, if focused element is statically created\n\t\tawait this.applyInitialFocus();\n\n\t\tawait renderFinished();\n\n\t\tif (this.isConnected) {\n\t\t\tthis.fireDecoratorEvent(\"open\");\n\t\t}\n\t}\n\n\t_resize() {\n\t\tthis._updateMediaRange();\n\t}\n\n\t/**\n\t * Prevents the user from interacting with the content under the block layer\n\t */\n\t_preventBlockLayerFocus(e: KeyboardEvent | MouseEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Temporarily removes scrollbars from the html element\n\t * @protected\n\t */\n\tstatic blockPageScrolling(popup: Popup) {\n\t\tpageScrollingBlockers.add(popup);\n\n\t\tif (pageScrollingBlockers.size !== 1) {\n\t\t\treturn;\n\t\t}\n\n\t\tdocument.documentElement.classList.add(\"ui5-popup-scroll-blocker\");\n\t}\n\n\t/**\n\t * Restores scrollbars on the html element, if needed\n\t * @protected\n\t */\n\tstatic unblockPageScrolling(popup: Popup) {\n\t\tpageScrollingBlockers.delete(popup);\n\n\t\tif (pageScrollingBlockers.size !== 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tdocument.documentElement.classList.remove(\"ui5-popup-scroll-blocker\");\n\t}\n\n\t_scroll(e: Event) {\n\t\tthis.fireDecoratorEvent(\"scroll\", {\n\t\t\tscrollTop: (e.target as HTMLElement).scrollTop,\n\t\t\ttargetRef: e.target as HTMLElement,\n\t\t});\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst isTabOutAttempt = e.target === this._root && isTabPrevious(e);\n\t\t// if the popup is closed, focus is already moved, so Enter keydown may result in click on the newly focused element\n\t\tconst isEnterOnClosedPopupChild = isEnter(e) && !this.open;\n\n\t\tif (isTabOutAttempt || isEnterOnClosedPopupChild) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\t// relatedTarget is the element, which will get focus. If no such element exists, focus the root.\n\t\t// This happens after the mouse is released in order to not interrupt text selection.\n\t\tif (!e.relatedTarget) {\n\t\t\tthis._shouldFocusRoot = true;\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (this.shadowRoot!.contains(e.target as HTMLElement)) {\n\t\t\tthis._shouldFocusRoot = true;\n\t\t} else {\n\t\t\tthis._shouldFocusRoot = false;\n\t\t}\n\t}\n\n\t_onmouseup() {\n\t\tif (this._shouldFocusRoot) {\n\t\t\tif (isChrome()) {\n\t\t\t\tthis._root.focus();\n\t\t\t}\n\t\t\tthis._shouldFocusRoot = false;\n\t\t}\n\t}\n\n\t/**\n\t * Focus trapping\n\t * @private\n\t */\n\tasync forwardToFirst() {\n\t\tconst firstFocusable = await getFirstFocusableElement(this);\n\n\t\tif (firstFocusable) {\n\t\t\tfirstFocusable.focus();\n\t\t} else {\n\t\t\tthis._root.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Focus trapping\n\t * @private\n\t */\n\tasync forwardToLast() {\n\t\tconst lastFocusable = await getLastFocusableElement(this);\n\n\t\tif (lastFocusable) {\n\t\t\tlastFocusable.focus();\n\t\t} else {\n\t\t\tthis._root.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Use this method to focus the element denoted by \"initialFocus\", if provided,\n\t * or the first focusable element otherwise.\n\t * @protected\n\t */\n\tasync applyInitialFocus() {\n\t\tif (!this.preventInitialFocus) {\n\t\t\tawait this.applyFocus();\n\t\t}\n\t}\n\n\t/**\n\t * Focuses the element denoted by `initialFocus`, if provided,\n\t * or the first focusable element otherwise.\n\t * @public\n\t * @returns Promise that resolves when the focus is applied\n\t */\n\tasync applyFocus(): Promise<void> {\n\t\t// do nothing if the standard HTML autofocus is used\n\t\tif (this.querySelector(\"[autofocus]\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tawait this._waitForDomRef();\n\n\t\tif (this.getRootNode() === this) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet element;\n\n\t\tif (this.initialFocus) {\n\t\t\telement = (this.getRootNode() as Document).getElementById(this.initialFocus)\n\t\t\t|| document.getElementById(this.initialFocus);\n\t\t}\n\n\t\telement = element || await getFirstFocusableElement(this) || this._root; // in case of no focusable content focus the root\n\n\t\tif (element) {\n\t\t\tif (element === this._root) {\n\t\t\t\telement.tabIndex = -1;\n\t\t\t}\n\t\t\telement.focus();\n\t\t}\n\t}\n\n\tisFocusWithin() {\n\t\treturn isFocusedElementWithinNode(this._root);\n\t}\n\n\t_updateMediaRange() {\n\t\tthis.mediaRange = MediaRange.getCurrentRange(MediaRange.RANGESETS.RANGE_4STEPS, this.getDomRef()!.offsetWidth);\n\t}\n\n\t/**\n\t * Adds the popup to the \"opened popups registry\"\n\t * @protected\n\t */\n\t_addOpenedPopup() {\n\t\taddOpenedPopup(this);\n\t}\n\n\t/**\n\t * Closes the popup.\n\t */\n\tclosePopup(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false): void {\n\t\tif (!this._opened) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevented = !this.fireDecoratorEvent(\"before-close\", { escPressed });\n\t\tif (prevented) {\n\t\t\tthis.open = true;\n\t\t\treturn;\n\t\t}\n\n\t\tthis._opened = false;\n\n\t\tif (this.isModal) {\n\t\t\tPopup.unblockPageScrolling(this);\n\t\t}\n\n\t\tthis.hide();\n\t\tthis.open = false;\n\n\t\tif (!preventRegistryUpdate) {\n\t\t\tthis._removeOpenedPopup();\n\t\t}\n\n\t\tif (!this.preventFocusRestore && !preventFocusRestore) {\n\t\t\tthis.resetFocus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\t/**\n\t * Removes the popup from the \"opened popups registry\"\n\t * @protected\n\t */\n\t_removeOpenedPopup() {\n\t\tremoveOpenedPopup(this);\n\t}\n\n\t/**\n\t * Returns the focus to the previously focused element\n\t * @protected\n\t */\n\tresetFocus() {\n\t\tthis._focusedElementBeforeOpen?.focus();\n\t\tthis._focusedElementBeforeOpen = null;\n\t}\n\n\t/**\n\t * Sets \"block\" display to the popup. The property can be overriden by derivatives of Popup.\n\t * @protected\n\t */\n\t_show() {\n\t\tif (this.isConnected) {\n\t\t\tthis.setAttribute(\"popover\", \"manual\");\n\t\t\tthis.showPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Sets \"none\" display to the popup\n\t * @protected\n\t */\n\thide() {\n\t\tthis.isConnected && this.hidePopover();\n\t}\n\n\t/**\n\t * Implement this getter with relevant logic regarding the modality of the popup (e.g. based on a public property)\n\t * @protected\n\t */\n\tabstract get isModal(): boolean\n\n\t/**\n\t * Return the ID of an element in the shadow DOM that is going to label this popup\n\t * @protected\n\t */\n\tabstract get _ariaLabelledBy(): string | undefined\n\n\t/**\n\t * Ensures ariaLabel is never null or empty string\n\t * @protected\n\t */\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _root(): HTMLElement {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-popup-root\")!;\n\t}\n\n\tget _role() {\n\t\treturn (this.accessibleRole === PopupAccessibleRole.None) ? undefined : toLowercaseEnumValue(this.accessibleRole);\n\t}\n\n\tget _ariaModal(): \"true\" | undefined {\n\t\treturn this.accessibleRole === PopupAccessibleRole.None ? undefined : \"true\";\n\t}\n\n\tget contentDOM(): HTMLElement {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-popup-content\")!;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\troot: {},\n\t\t\tcontent: {},\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-popup-root\": true,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-popup-content\": true,\n\t\t\t},\n\t\t};\n\t}\n}\n\nexport default Popup;\nexport type { PopupScrollEventDetail, PopupBeforeCloseEventDetail };\n"]}
1
+ {"version":3,"file":"Popup.js","sourceRoot":"","sources":["../src/Popup.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport {\n\tisChrome,\n\tisDesktop,\n\tisPhone,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getFirstFocusableElement, getLastFocusableElement } from \"@ui5/webcomponents-base/dist/util/FocusableElements.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { hasStyle, createStyle } from \"@ui5/webcomponents-base/dist/ManagedStyles.js\";\nimport { isEnter, isTabPrevious } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getFocusedElement, isFocusedElementWithinNode } from \"@ui5/webcomponents-base/dist/util/PopupUtils.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport MediaRange from \"@ui5/webcomponents-base/dist/MediaRange.js\";\nimport toLowercaseEnumValue from \"@ui5/webcomponents-base/dist/util/toLowercaseEnumValue.js\";\nimport PopupTemplate from \"./PopupTemplate.js\";\nimport PopupAccessibleRole from \"./types/PopupAccessibleRole.js\";\nimport { addOpenedPopup, removeOpenedPopup } from \"./popup-utils/OpenedPopupsRegistry.js\";\n\n// Styles\nimport popupStlyes from \"./generated/themes/Popup.css.js\";\nimport popupBlockLayerStyles from \"./generated/themes/PopupBlockLayer.css.js\";\nimport globalStyles from \"./generated/themes/PopupGlobal.css.js\";\n\nconst createBlockingStyle = (): void => {\n\tif (!hasStyle(\"data-ui5-popup-scroll-blocker\")) {\n\t\tcreateStyle(globalStyles, \"data-ui5-popup-scroll-blocker\");\n\t}\n};\n\ncreateBlockingStyle();\n\nconst pageScrollingBlockers = new Set<Popup>();\n\ntype PopupScrollEventDetail = {\n\tscrollTop: number;\n\ttargetRef: HTMLElement;\n}\n\ntype PopupBeforeCloseEventDetail = {\n\tescPressed: boolean;\n}\n\n/**\n * @class\n * ### Overview\n * Base class for all popup Web Components.\n *\n * If you need to create your own popup-like custom UI5 Web Components.\n *\n * 1. The Popup class handles modality:\n * - The \"isModal\" getter can be overridden by derivatives to provide their own conditions when they are modal or not\n * - Derivatives may call the \"blockPageScrolling\" and \"unblockPageScrolling\" static methods to temporarily remove scrollbars on the html element\n * - Derivatives may call the \"openPopup\" and \"closePopup\" methods which handle focus, manage the popup registry and for modal popups, manage the blocking layer\n *\n * 2. Provides blocking layer (relevant for modal popups only):\n * - Controlled by the \"open\" and \"close\" methods\n *\n * 3. The Popup class \"traps\" focus:\n * - Derivatives may call the \"applyInitialFocus\" method (usually when opening, to transfer focus inside the popup)\n *\n * 4. The template of this component exposes two inline partials you can override in derivatives:\n * - beforeContent (upper part of the box, useful for header/title/close button)\n * - afterContent (lower part, useful for footer/action buttons)\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n\trenderer: jsxRender,\n\tstyles: [popupStlyes, popupBlockLayerStyles],\n\ttemplate: PopupTemplate,\n})\n/**\n * Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening.\n * @public\n */\n@event(\"before-open\", {\n\tcancelable: true,\n})\n\n/**\n * Fired after the component is opened.\n * @public\n */\n@event(\"open\")\n\n/**\n * Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing.\n * @public\n * @param {boolean} escPressed Indicates that `ESC` key has triggered the event.\n */\n@event(\"before-close\", {\n\tcancelable: true,\n})\n\n/**\n * Fired after the component is closed.\n * @public\n */\n@event(\"close\")\n\n/**\n * Fired whenever the popup content area is scrolled\n * @private\n */\n@event(\"scroll\", {\n\tbubbles: true,\n})\nabstract class Popup extends UI5Element {\n\teventDetails!: {\n\t\t\"before-open\": void\n\t\t\"open\": void\n\t\t\"before-close\": PopupBeforeCloseEventDetail\n\t\t\"close\": void\n\t\t\"scroll\": PopupScrollEventDetail\n\t}\n\n\t/**\n\t * Defines the ID of the HTML Element, which will get the initial focus.\n\t *\n\t * **Note:** If an element with `autofocus` attribute is added inside the component,\n\t * `initialFocus` won't take effect.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tinitialFocus?: string;\n\n\t/**\n\t * Defines if the focus should be returned to the previously focused element,\n\t * when the popup closes.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.8\n\t*/\n\t@property({ type: Boolean })\n\tpreventFocusRestore = false;\n\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Allows setting a custom role.\n\t * @default \"Dialog\"\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property()\n\taccessibleRole: `${PopupAccessibleRole}` = \"Dialog\";\n\n\t/**\n\t * Defines the current media query size.\n\t * @private\n\t */\n\t@property()\n\tmediaRange?: string;\n\n\t/**\n\t * Indicates whether initial focus should be prevented.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\tpreventInitialFocus = false;\n\n\t/**\n\t * Indicates if the element is the top modal popup\n\t *\n\t * This property is calculated automatically\n\t * @private\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\tisTopModalPopup = false;\n\n\t/**\n\t * Defines the content of the Popup.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tcontent!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tonPhone = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tonDesktop = false;\n\n\t_resizeHandler: ResizeObserverCallback;\n\t_shouldFocusRoot?: boolean;\n\t_focusedElementBeforeOpen?: HTMLElement | null;\n\t_opened = false;\n\t_open = false;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._resize.bind(this);\n\n\t\tthis._getRealDomRef = () => {\n\t\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\"[root-element]\")!;\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.onPhone = isPhone();\n\t\tthis.onDesktop = isDesktop();\n\t}\n\n\tonAfterRendering() {\n\t\trenderFinished().then(() => {\n\t\t\tthis._updateMediaRange();\n\t\t});\n\t}\n\n\tonEnterDOM() {\n\t\tthis.setAttribute(\"popover\", \"manual\");\n\t\tResizeHandler.register(this, this._resizeHandler);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\n\t\tthis.tabIndex = -1;\n\n\t\tif (this.open) {\n\t\t\tthis.showPopover();\n\t\t\tthis.openPopup();\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tif (this._opened) {\n\t\t\tPopup.unblockPageScrolling(this);\n\t\t\tthis._removeOpenedPopup();\n\t\t}\n\n\t\tResizeHandler.deregister(this, this._resizeHandler);\n\t}\n\n\t/**\n\t * Indicates if the element is open\n\t * @public\n\t * @default false\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\tset open(value: boolean) {\n\t\tif (this._open === value) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._open = value;\n\n\t\tif (value) {\n\t\t\tthis.openPopup();\n\t\t} else {\n\t\t\tthis.closePopup();\n\t\t}\n\t}\n\n\tget open() : boolean {\n\t\treturn this._open;\n\t}\n\n\tasync openPopup() {\n\t\tif (this._opened) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevented = !this.fireDecoratorEvent(\"before-open\");\n\n\t\tif (prevented) {\n\t\t\tthis.open = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.isModal) {\n\t\t\tPopup.blockPageScrolling(this);\n\t\t}\n\n\t\tthis._focusedElementBeforeOpen = getFocusedElement();\n\n\t\tthis._show();\n\t\tthis._opened = true;\n\n\t\tif (this.getDomRef()) {\n\t\t\tthis._updateMediaRange();\n\t\t}\n\n\t\tthis._addOpenedPopup();\n\n\t\tthis.open = true;\n\n\t\t// initial focus, if focused element is statically created\n\t\tawait this.applyInitialFocus();\n\n\t\tawait renderFinished();\n\n\t\tif (this.isConnected) {\n\t\t\tthis.fireDecoratorEvent(\"open\");\n\t\t}\n\t}\n\n\t_resize() {\n\t\tthis._updateMediaRange();\n\t}\n\n\t/**\n\t * Prevents the user from interacting with the content under the block layer\n\t */\n\t_preventBlockLayerFocus(e: KeyboardEvent | MouseEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Temporarily removes scrollbars from the html element\n\t * @protected\n\t */\n\tstatic blockPageScrolling(popup: Popup) {\n\t\tpageScrollingBlockers.add(popup);\n\n\t\tif (pageScrollingBlockers.size !== 1) {\n\t\t\treturn;\n\t\t}\n\n\t\tdocument.documentElement.classList.add(\"ui5-popup-scroll-blocker\");\n\t}\n\n\t/**\n\t * Restores scrollbars on the html element, if needed\n\t * @protected\n\t */\n\tstatic unblockPageScrolling(popup: Popup) {\n\t\tpageScrollingBlockers.delete(popup);\n\n\t\tif (pageScrollingBlockers.size !== 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tdocument.documentElement.classList.remove(\"ui5-popup-scroll-blocker\");\n\t}\n\n\t_scroll(e: Event) {\n\t\tthis.fireDecoratorEvent(\"scroll\", {\n\t\t\tscrollTop: (e.target as HTMLElement).scrollTop,\n\t\t\ttargetRef: e.target as HTMLElement,\n\t\t});\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst isTabOutAttempt = e.target === this._root && isTabPrevious(e);\n\t\t// if the popup is closed, focus is already moved, so Enter keydown may result in click on the newly focused element\n\t\tconst isEnterOnClosedPopupChild = isEnter(e) && !this.open;\n\n\t\tif (isTabOutAttempt || isEnterOnClosedPopupChild) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\t// relatedTarget is the element, which will get focus. If no such element exists, focus the root.\n\t\t// This happens after the mouse is released in order to not interrupt text selection.\n\t\tif (!e.relatedTarget) {\n\t\t\tthis._shouldFocusRoot = true;\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (this.shadowRoot!.contains(e.target as HTMLElement)) {\n\t\t\tthis._shouldFocusRoot = true;\n\t\t} else {\n\t\t\tthis._shouldFocusRoot = false;\n\t\t}\n\t}\n\n\t_onmouseup() {\n\t\tif (this._shouldFocusRoot) {\n\t\t\tif (isChrome()) {\n\t\t\t\tthis._root.focus();\n\t\t\t}\n\t\t\tthis._shouldFocusRoot = false;\n\t\t}\n\t}\n\n\t/**\n\t * Focus trapping\n\t * @private\n\t */\n\tasync forwardToFirst() {\n\t\tconst firstFocusable = await getFirstFocusableElement(this);\n\n\t\tif (firstFocusable) {\n\t\t\tfirstFocusable.focus();\n\t\t} else {\n\t\t\tthis._root.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Focus trapping\n\t * @private\n\t */\n\tasync forwardToLast() {\n\t\tconst lastFocusable = await getLastFocusableElement(this);\n\n\t\tif (lastFocusable) {\n\t\t\tlastFocusable.focus();\n\t\t} else {\n\t\t\tthis._root.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Use this method to focus the element denoted by \"initialFocus\", if provided,\n\t * or the first focusable element otherwise.\n\t * @protected\n\t */\n\tasync applyInitialFocus() {\n\t\tif (!this.preventInitialFocus) {\n\t\t\tawait this.applyFocus();\n\t\t}\n\t}\n\n\t/**\n\t * Focuses the element denoted by `initialFocus`, if provided,\n\t * or the first focusable element otherwise.\n\t * @public\n\t * @returns Promise that resolves when the focus is applied\n\t */\n\tasync applyFocus(): Promise<void> {\n\t\t// do nothing if the standard HTML autofocus is used\n\t\tif (this.querySelector(\"[autofocus]\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tawait this._waitForDomRef();\n\n\t\tif (this.getRootNode() === this) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet element;\n\n\t\tif (this.initialFocus) {\n\t\t\telement = (this.getRootNode() as Document).getElementById(this.initialFocus)\n\t\t\t|| document.getElementById(this.initialFocus);\n\t\t}\n\n\t\telement = element || await getFirstFocusableElement(this) || this._root; // in case of no focusable content focus the root\n\n\t\tif (element) {\n\t\t\tif (element === this._root) {\n\t\t\t\telement.tabIndex = -1;\n\t\t\t}\n\t\t\telement.focus();\n\t\t}\n\t}\n\n\tisFocusWithin() {\n\t\treturn isFocusedElementWithinNode(this._root);\n\t}\n\n\t_updateMediaRange() {\n\t\tthis.mediaRange = MediaRange.getCurrentRange(MediaRange.RANGESETS.RANGE_4STEPS, this.getDomRef()!.offsetWidth);\n\t}\n\n\t/**\n\t * Adds the popup to the \"opened popups registry\"\n\t * @protected\n\t */\n\t_addOpenedPopup() {\n\t\taddOpenedPopup(this);\n\t}\n\n\t/**\n\t * Closes the popup.\n\t */\n\tclosePopup(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false): void {\n\t\tif (!this._opened) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevented = !this.fireDecoratorEvent(\"before-close\", { escPressed });\n\t\tif (prevented) {\n\t\t\tthis.open = true;\n\t\t\treturn;\n\t\t}\n\n\t\tthis._opened = false;\n\n\t\tif (this.isModal) {\n\t\t\tPopup.unblockPageScrolling(this);\n\t\t}\n\n\t\tthis.hide();\n\t\tthis.open = false;\n\n\t\tif (!preventRegistryUpdate) {\n\t\t\tthis._removeOpenedPopup();\n\t\t}\n\n\t\tif (!this.preventFocusRestore && !preventFocusRestore) {\n\t\t\tthis.resetFocus();\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\t/**\n\t * Removes the popup from the \"opened popups registry\"\n\t * @protected\n\t */\n\t_removeOpenedPopup() {\n\t\tremoveOpenedPopup(this);\n\t}\n\n\t/**\n\t * Returns the focus to the previously focused element\n\t * @protected\n\t */\n\tresetFocus() {\n\t\tthis._focusedElementBeforeOpen?.focus();\n\t\tthis._focusedElementBeforeOpen = null;\n\t}\n\n\t/**\n\t * Sets \"block\" display to the popup. The property can be overriden by derivatives of Popup.\n\t * @protected\n\t */\n\t_show() {\n\t\tif (this.isConnected) {\n\t\t\tthis.setAttribute(\"popover\", \"manual\");\n\t\t\tthis.showPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Sets \"none\" display to the popup\n\t * @protected\n\t */\n\thide() {\n\t\tthis.isConnected && this.hidePopover();\n\t}\n\n\t/**\n\t * Implement this getter with relevant logic regarding the modality of the popup (e.g. based on a public property)\n\t * @protected\n\t */\n\tabstract get isModal(): boolean\n\n\t/**\n\t * Return the ID of an element in the shadow DOM that is going to label this popup\n\t * @protected\n\t */\n\tabstract get _ariaLabelledBy(): string | undefined\n\n\t/**\n\t * Ensures ariaLabel is never null or empty string\n\t * @protected\n\t */\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _root(): HTMLElement {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-popup-root\")!;\n\t}\n\n\tget _role() {\n\t\treturn (this.accessibleRole === PopupAccessibleRole.None) ? undefined : toLowercaseEnumValue(this.accessibleRole);\n\t}\n\n\tget _ariaModal(): \"true\" | undefined {\n\t\treturn this.accessibleRole === PopupAccessibleRole.None ? undefined : \"true\";\n\t}\n\n\tget contentDOM(): HTMLElement {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-popup-content\")!;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\troot: {},\n\t\t\tcontent: {},\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-popup-root\": true,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-popup-content\": true,\n\t\t\t},\n\t\t};\n\t}\n}\n\nexport default Popup;\nexport type { PopupScrollEventDetail, PopupBeforeCloseEventDetail };\n"]}
@@ -3,6 +3,6 @@ import type Popup from "./Popup.js";
3
3
  export default function PopupTemplate(this: Popup, hooks?: {
4
4
  beforeContent?: JsxTemplate;
5
5
  afterContent?: JsxTemplate;
6
- }): import("@ui5/webcomponents-base").JSX.Element;
6
+ }): import("@ui5/webcomponents-base/jsx-runtime").JSX.Element;
7
7
  export declare function beforeContent(this: Popup): void;
8
8
  export declare function afterContent(this: Popup): void;
package/dist/Select.d.ts CHANGED
@@ -40,17 +40,31 @@ type SelectLiveChangeEventDetail = {
40
40
  *
41
41
  * There are two main usages of the `ui5-select>`.
42
42
  *
43
- * 1. With Option (`ui5-option`) web component:
43
+ * - With Option (`ui5-option`) web component:
44
44
  *
45
45
  * The available options of the Select are defined by using the Option component.
46
46
  * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.
47
47
  *
48
- * 2. With OptionCustom (`ui5-option-custom`) web component.
48
+ * - With OptionCustom (`ui5-option-custom`) web component.
49
49
  *
50
- * Options with custom content are defined by using the OptionCustom component
50
+ * Options with custom content are defined by using the OptionCustom component.
51
51
  * The OptionCustom component comes with no predefined layout and it expects consumers to define it.
52
52
  *
53
+ * ### Selection
54
+ *
55
+ * The options can be selected via user interaction (click or with the use of the Space and Enter keys)
56
+ * and programmatically - the Select component supports two distinct selection APIs, though mixing them is not supported:
57
+ * - The "value" property of the Select component
58
+ * - The "selected" property on individual options
59
+ *
60
+ * **Note:** If the "value" property is set but does not match any option,
61
+ * no option will be selected and the Select component will be displayed as empty.
62
+ *
63
+ * **Note:** when both "value" and "selected" are both used (although discouraged),
64
+ * the "value" property will take precedence.
65
+ *
53
66
  * ### Keyboard Handling
67
+ *
54
68
  * The `ui5-select` provides advanced keyboard handling.
55
69
  *
56
70
  * - [F4] / [Alt] + [Up] / [Alt] + [Down] / [Space] or [Enter] - Opens/closes the drop-down.
@@ -61,6 +75,7 @@ type SelectLiveChangeEventDetail = {
61
75
  * - [End] - Navigates to the last option
62
76
  *
63
77
  * ### ES6 Module Import
78
+ *
64
79
  * `import "@ui5/webcomponents/dist/Select";`
65
80
  *
66
81
  * `import "@ui5/webcomponents/dist/Option";`
@@ -91,6 +106,9 @@ declare class Select extends UI5Element implements IFormInputElement {
91
106
  disabled: boolean;
92
107
  /**
93
108
  * Defines the icon, displayed as graphical element within the component.
109
+ * When set, the component will display the icon only - the selected option's text,
110
+ * the Select's "label" slot (if present) and the dropdown arrow won't be displayed.
111
+ *
94
112
  * The SAP-icons font provides numerous options.
95
113
  *
96
114
  * Example:
@@ -98,7 +116,7 @@ declare class Select extends UI5Element implements IFormInputElement {
98
116
  *
99
117
  * **Note:** When using this property with a valid icon, Select will be rendered as icon only button and the label and the default arrow down won't be visible.
100
118
  * @default undefined
101
- * @public
119
+ * @private
102
120
  */
103
121
  icon?: string;
104
122
  /**
@@ -176,6 +194,7 @@ declare class Select extends UI5Element implements IFormInputElement {
176
194
  _typingTimeoutID?: Timeout | number;
177
195
  responsivePopover: ResponsivePopover;
178
196
  valueStatePopover?: Popover;
197
+ _valueStorage: string | undefined;
179
198
  /**
180
199
  * Defines the component options.
181
200
  *
@@ -218,7 +237,24 @@ declare class Select extends UI5Element implements IFormInputElement {
218
237
  get formFormattedValue(): string | null;
219
238
  onBeforeRendering(): void;
220
239
  onAfterRendering(): void;
221
- _ensureSingleSelection(): void;
240
+ /**
241
+ * Selects an option, based on the Select's "value" property,
242
+ * or the options' "selected" property.
243
+ */
244
+ _applySelection(): void;
245
+ /**
246
+ * Selects an option by given value.
247
+ */
248
+ _applySelectionByValue(value: string): void;
249
+ /**
250
+ * Selects the first option if no option is selected,
251
+ * or selects the last option if multiple options are selected.
252
+ */
253
+ _applyAutoSelection(): void;
254
+ /**
255
+ * Sets value by given option.
256
+ */
257
+ _setValueByOption(option: IOption): void;
222
258
  _applyFocus(): void;
223
259
  _onfocusin(): void;
224
260
  _onfocusout(): void;
@@ -227,12 +263,14 @@ declare class Select extends UI5Element implements IFormInputElement {
227
263
  /**
228
264
  * Defines the value of the component:
229
265
  *
230
- * - when get - returns the value of the component, e.g. the `value` property of the selected option or its text content.
231
- *
266
+ * - when get - returns the value of the component or the value/text content of the selected option.
232
267
  * - when set - selects the option with matching `value` property or text content.
233
268
  *
269
+ * **Note:** Use either the Select's value or the Options' selected property.
270
+ * Mixed usage could result in unexpected behavior.
271
+ *
234
272
  * **Note:** If the given value does not match any existing option,
235
- * the first option will get selected.
273
+ * no option will be selected and the Select component will be displayed as empty.
236
274
  * @public
237
275
  * @default ""
238
276
  * @since 1.20.0
package/dist/Select.js CHANGED
@@ -48,17 +48,31 @@ import SelectPopoverCss from "./generated/themes/SelectPopover.css.js";
48
48
  *
49
49
  * There are two main usages of the `ui5-select>`.
50
50
  *
51
- * 1. With Option (`ui5-option`) web component:
51
+ * - With Option (`ui5-option`) web component:
52
52
  *
53
53
  * The available options of the Select are defined by using the Option component.
54
54
  * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.
55
55
  *
56
- * 2. With OptionCustom (`ui5-option-custom`) web component.
56
+ * - With OptionCustom (`ui5-option-custom`) web component.
57
57
  *
58
- * Options with custom content are defined by using the OptionCustom component
58
+ * Options with custom content are defined by using the OptionCustom component.
59
59
  * The OptionCustom component comes with no predefined layout and it expects consumers to define it.
60
60
  *
61
+ * ### Selection
62
+ *
63
+ * The options can be selected via user interaction (click or with the use of the Space and Enter keys)
64
+ * and programmatically - the Select component supports two distinct selection APIs, though mixing them is not supported:
65
+ * - The "value" property of the Select component
66
+ * - The "selected" property on individual options
67
+ *
68
+ * **Note:** If the "value" property is set but does not match any option,
69
+ * no option will be selected and the Select component will be displayed as empty.
70
+ *
71
+ * **Note:** when both "value" and "selected" are both used (although discouraged),
72
+ * the "value" property will take precedence.
73
+ *
61
74
  * ### Keyboard Handling
75
+ *
62
76
  * The `ui5-select` provides advanced keyboard handling.
63
77
  *
64
78
  * - [F4] / [Alt] + [Up] / [Alt] + [Down] / [Space] or [Enter] - Opens/closes the drop-down.
@@ -69,6 +83,7 @@ import SelectPopoverCss from "./generated/themes/SelectPopover.css.js";
69
83
  * - [End] - Navigates to the last option
70
84
  *
71
85
  * ### ES6 Module Import
86
+ *
72
87
  * `import "@ui5/webcomponents/dist/Select";`
73
88
  *
74
89
  * `import "@ui5/webcomponents/dist/Option";`
@@ -139,13 +154,15 @@ let Select = Select_1 = class Select extends UI5Element {
139
154
  return Select_1.i18nBundle.getText(FORM_SELECTABLE_REQUIRED);
140
155
  }
141
156
  get formValidity() {
142
- const selectedOption = this.selectedOption;
143
- return { valueMissing: this.required && (selectedOption && selectedOption.getAttribute("value") === "") };
157
+ return { valueMissing: this.required && (this.selectedOption?.getAttribute("value") === "") };
144
158
  }
145
159
  async formElementAnchor() {
146
160
  return this.getFocusDomRefAsync();
147
161
  }
148
162
  get formFormattedValue() {
163
+ if (this._valueStorage !== undefined) {
164
+ return this._valueStorage;
165
+ }
149
166
  const selectedOption = this.selectedOption;
150
167
  if (selectedOption) {
151
168
  if ("value" in selectedOption && selectedOption.value) {
@@ -156,7 +173,7 @@ let Select = Select_1 = class Select extends UI5Element {
156
173
  return "";
157
174
  }
158
175
  onBeforeRendering() {
159
- this._ensureSingleSelection();
176
+ this._applySelection();
160
177
  this.style.setProperty(getScopedVarName("--_ui5-input-icons-count"), `${this.iconsCount}`);
161
178
  }
162
179
  onAfterRendering() {
@@ -167,9 +184,35 @@ let Select = Select_1 = class Select extends UI5Element {
167
184
  }
168
185
  }
169
186
  }
170
- _ensureSingleSelection() {
171
- // if no item is selected => select the first one
172
- // if multiple items are selected => select the last selected one
187
+ /**
188
+ * Selects an option, based on the Select's "value" property,
189
+ * or the options' "selected" property.
190
+ */
191
+ _applySelection() {
192
+ // Flow 1: "value" has not been used
193
+ if (this._valueStorage === undefined) {
194
+ this._applyAutoSelection();
195
+ return;
196
+ }
197
+ // Flow 2: "value" has been used - select the option by value or apply auto selection
198
+ this._applySelectionByValue(this._valueStorage);
199
+ }
200
+ /**
201
+ * Selects an option by given value.
202
+ */
203
+ _applySelectionByValue(value) {
204
+ if (value !== (this.selectedOption?.value || this.selectedOption?.textContent)) {
205
+ const options = Array.from(this.children);
206
+ options.forEach(option => {
207
+ option.selected = !!((option.getAttribute("value") || option.textContent) === value);
208
+ });
209
+ }
210
+ }
211
+ /**
212
+ * Selects the first option if no option is selected,
213
+ * or selects the last option if multiple options are selected.
214
+ */
215
+ _applyAutoSelection() {
173
216
  let selectedIndex = this.options.findLastIndex(option => option.selected);
174
217
  selectedIndex = selectedIndex === -1 ? 0 : selectedIndex;
175
218
  for (let i = 0; i < this.options.length; i++) {
@@ -179,6 +222,12 @@ let Select = Select_1 = class Select extends UI5Element {
179
222
  }
180
223
  }
181
224
  }
225
+ /**
226
+ * Sets value by given option.
227
+ */
228
+ _setValueByOption(option) {
229
+ this.value = option.value || option.textContent || "";
230
+ }
182
231
  _applyFocus() {
183
232
  this.focus();
184
233
  }
@@ -197,12 +246,14 @@ let Select = Select_1 = class Select extends UI5Element {
197
246
  /**
198
247
  * Defines the value of the component:
199
248
  *
200
- * - when get - returns the value of the component, e.g. the `value` property of the selected option or its text content.
201
- *
249
+ * - when get - returns the value of the component or the value/text content of the selected option.
202
250
  * - when set - selects the option with matching `value` property or text content.
203
251
  *
252
+ * **Note:** Use either the Select's value or the Options' selected property.
253
+ * Mixed usage could result in unexpected behavior.
254
+ *
204
255
  * **Note:** If the given value does not match any existing option,
205
- * the first option will get selected.
256
+ * no option will be selected and the Select component will be displayed as empty.
206
257
  * @public
207
258
  * @default ""
208
259
  * @since 1.20.0
@@ -210,12 +261,12 @@ let Select = Select_1 = class Select extends UI5Element {
210
261
  * @formEvents change liveChange
211
262
  */
212
263
  set value(newValue) {
213
- const options = Array.from(this.children);
214
- options.forEach(option => {
215
- option.selected = !!((option.getAttribute("value") || option.textContent) === newValue);
216
- });
264
+ this._valueStorage = newValue;
217
265
  }
218
266
  get value() {
267
+ if (this._valueStorage !== undefined) {
268
+ return this._valueStorage;
269
+ }
219
270
  return this.selectedOption?.value || this.selectedOption?.textContent || "";
220
271
  }
221
272
  get _selectedIndex() {
@@ -346,10 +397,14 @@ let Select = Select_1 = class Select extends UI5Element {
346
397
  if (this.options[selectedIndex]) {
347
398
  this.options[selectedIndex].selected = false;
348
399
  }
400
+ const selectedOption = this.options[index];
349
401
  if (selectedIndex !== index) {
350
- this.fireDecoratorEvent("live-change", { selectedOption: this.options[index] });
402
+ this.fireDecoratorEvent("live-change", { selectedOption });
403
+ }
404
+ selectedOption.selected = true;
405
+ if (this._valueStorage !== undefined) {
406
+ this._setValueByOption(selectedOption);
351
407
  }
352
- this.options[index].selected = true;
353
408
  }
354
409
  /**
355
410
  * The user clicked on an item from the list
@@ -423,6 +478,9 @@ let Select = Select_1 = class Select extends UI5Element {
423
478
  previousOption.focused = false;
424
479
  nextOption.selected = true;
425
480
  nextOption.focused = true;
481
+ if (this._valueStorage !== undefined) {
482
+ this._setValueByOption(nextOption);
483
+ }
426
484
  this.fireDecoratorEvent("live-change", { selectedOption: nextOption });
427
485
  if (!this._isPickerOpen) {
428
486
  // arrow pressed on closed picker - do selection change
@@ -675,7 +733,7 @@ __decorate([
675
733
  slot()
676
734
  ], Select.prototype, "label", void 0);
677
735
  __decorate([
678
- property({ noAttribute: true })
736
+ property()
679
737
  ], Select.prototype, "value", null);
680
738
  __decorate([
681
739
  i18n("@ui5/webcomponents")