@ui5/webcomponents 2.0.0-rc.3 → 2.0.0-rc.4

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 (818) hide show
  1. package/.env.testing +4 -0
  2. package/CHANGELOG.md +215 -0
  3. package/README.md +0 -33
  4. package/dist/.tsbuildinfo +1 -1
  5. package/dist/Avatar.d.ts +2 -2
  6. package/dist/AvatarGroup.d.ts +4 -4
  7. package/dist/Breadcrumbs.d.ts +1 -1
  8. package/dist/Breadcrumbs.js +10 -5
  9. package/dist/Breadcrumbs.js.map +1 -1
  10. package/dist/Button.d.ts +26 -13
  11. package/dist/Button.js +34 -18
  12. package/dist/Button.js.map +1 -1
  13. package/dist/Calendar.d.ts +10 -5
  14. package/dist/Calendar.js +81 -26
  15. package/dist/Calendar.js.map +1 -1
  16. package/dist/CalendarDate.d.ts +2 -1
  17. package/dist/CalendarDate.js +1 -0
  18. package/dist/CalendarDate.js.map +1 -1
  19. package/dist/CalendarDateRange.d.ts +31 -0
  20. package/dist/CalendarDateRange.js +36 -0
  21. package/dist/CalendarDateRange.js.map +1 -0
  22. package/dist/CalendarHeader.js +8 -8
  23. package/dist/CalendarHeader.js.map +1 -1
  24. package/dist/CheckBox.d.ts +8 -17
  25. package/dist/CheckBox.js +14 -22
  26. package/dist/CheckBox.js.map +1 -1
  27. package/dist/ColorPalette.d.ts +19 -0
  28. package/dist/ColorPalette.js +112 -13
  29. package/dist/ColorPalette.js.map +1 -1
  30. package/dist/ColorPaletteItem.d.ts +16 -0
  31. package/dist/ColorPaletteItem.js +10 -0
  32. package/dist/ColorPaletteItem.js.map +1 -1
  33. package/dist/ColorPalettePopover.d.ts +5 -0
  34. package/dist/ColorPalettePopover.js +15 -0
  35. package/dist/ColorPalettePopover.js.map +1 -1
  36. package/dist/ColorPicker.d.ts +13 -1
  37. package/dist/ColorPicker.js +10 -0
  38. package/dist/ColorPicker.js.map +1 -1
  39. package/dist/ComboBox.d.ts +23 -11
  40. package/dist/ComboBox.js +156 -58
  41. package/dist/ComboBox.js.map +1 -1
  42. package/dist/ComboBoxItem.d.ts +5 -5
  43. package/dist/ComboBoxItem.js +3 -7
  44. package/dist/ComboBoxItem.js.map +1 -1
  45. package/dist/{ComboBoxGroupItem.d.ts → ComboBoxItemGroup.d.ts} +11 -3
  46. package/dist/{ComboBoxGroupItem.js → ComboBoxItemGroup.js} +24 -9
  47. package/dist/ComboBoxItemGroup.js.map +1 -0
  48. package/dist/CustomListItem.d.ts +7 -0
  49. package/dist/CustomListItem.js +7 -2
  50. package/dist/CustomListItem.js.map +1 -1
  51. package/dist/DatePicker.d.ts +9 -18
  52. package/dist/DatePicker.js +19 -15
  53. package/dist/DatePicker.js.map +1 -1
  54. package/dist/DateRangePicker.d.ts +5 -1
  55. package/dist/DateRangePicker.js +21 -0
  56. package/dist/DateRangePicker.js.map +1 -1
  57. package/dist/DateTimePicker.d.ts +4 -1
  58. package/dist/DateTimePicker.js +14 -0
  59. package/dist/DateTimePicker.js.map +1 -1
  60. package/dist/DayPicker.js +6 -4
  61. package/dist/DayPicker.js.map +1 -1
  62. package/dist/Dialog.d.ts +0 -16
  63. package/dist/Dialog.js +0 -21
  64. package/dist/Dialog.js.map +1 -1
  65. package/dist/FileUploader.d.ts +6 -23
  66. package/dist/FileUploader.js +15 -46
  67. package/dist/FileUploader.js.map +1 -1
  68. package/dist/Form.d.ts +198 -0
  69. package/dist/Form.js +358 -0
  70. package/dist/Form.js.map +1 -0
  71. package/dist/FormGroup.d.ts +63 -0
  72. package/dist/FormGroup.js +86 -0
  73. package/dist/FormGroup.js.map +1 -0
  74. package/dist/FormItem.d.ts +62 -0
  75. package/dist/FormItem.js +76 -0
  76. package/dist/FormItem.js.map +1 -0
  77. package/dist/Input.d.ts +17 -30
  78. package/dist/Input.js +46 -48
  79. package/dist/Input.js.map +1 -1
  80. package/dist/Label.d.ts +1 -1
  81. package/dist/Label.js +1 -1
  82. package/dist/Label.js.map +1 -1
  83. package/dist/Link.d.ts +4 -3
  84. package/dist/Link.js +2 -1
  85. package/dist/Link.js.map +1 -1
  86. package/dist/List.d.ts +3 -2
  87. package/dist/List.js +45 -0
  88. package/dist/List.js.map +1 -1
  89. package/dist/ListItem.d.ts +8 -15
  90. package/dist/ListItem.js +25 -34
  91. package/dist/ListItem.js.map +1 -1
  92. package/dist/ListItemBase.d.ts +24 -2
  93. package/dist/ListItemBase.js +48 -13
  94. package/dist/ListItemBase.js.map +1 -1
  95. package/dist/ListItemGroup.d.ts +6 -1
  96. package/dist/ListItemGroup.js +4 -1
  97. package/dist/ListItemGroup.js.map +1 -1
  98. package/dist/ListItemGroupHeader.d.ts +2 -0
  99. package/dist/ListItemGroupHeader.js +9 -0
  100. package/dist/ListItemGroupHeader.js.map +1 -1
  101. package/dist/Menu.d.ts +11 -90
  102. package/dist/Menu.js +62 -324
  103. package/dist/Menu.js.map +1 -1
  104. package/dist/MenuItem.d.ts +57 -22
  105. package/dist/MenuItem.js +106 -24
  106. package/dist/MenuItem.js.map +1 -1
  107. package/dist/MonthPicker.d.ts +1 -0
  108. package/dist/MonthPicker.js +10 -6
  109. package/dist/MonthPicker.js.map +1 -1
  110. package/dist/MultiComboBox.d.ts +17 -3
  111. package/dist/MultiComboBox.js +63 -25
  112. package/dist/MultiComboBox.js.map +1 -1
  113. package/dist/MultiInput.d.ts +18 -4
  114. package/dist/MultiInput.js +56 -31
  115. package/dist/MultiInput.js.map +1 -1
  116. package/dist/NavigationMenu.d.ts +1 -6
  117. package/dist/NavigationMenu.js +3 -47
  118. package/dist/NavigationMenu.js.map +1 -1
  119. package/dist/NavigationMenuItem.d.ts +22 -3
  120. package/dist/NavigationMenuItem.js +29 -4
  121. package/dist/NavigationMenuItem.js.map +1 -1
  122. package/dist/Option.d.ts +20 -33
  123. package/dist/Option.js +31 -19
  124. package/dist/Option.js.map +1 -1
  125. package/dist/OptionCustom.d.ts +51 -0
  126. package/dist/OptionCustom.js +63 -0
  127. package/dist/OptionCustom.js.map +1 -0
  128. package/dist/Panel.d.ts +1 -1
  129. package/dist/Popover.d.ts +8 -21
  130. package/dist/Popover.js +32 -44
  131. package/dist/Popover.js.map +1 -1
  132. package/dist/Popup.d.ts +20 -23
  133. package/dist/Popup.js +53 -57
  134. package/dist/Popup.js.map +1 -1
  135. package/dist/RadioButton.d.ts +16 -27
  136. package/dist/RadioButton.js +19 -31
  137. package/dist/RadioButton.js.map +1 -1
  138. package/dist/RadioButtonGroup.js +6 -5
  139. package/dist/RadioButtonGroup.js.map +1 -1
  140. package/dist/RangeSlider.d.ts +3 -1
  141. package/dist/RangeSlider.js +7 -0
  142. package/dist/RangeSlider.js.map +1 -1
  143. package/dist/ResponsivePopover.d.ts +4 -16
  144. package/dist/ResponsivePopover.js +17 -30
  145. package/dist/ResponsivePopover.js.map +1 -1
  146. package/dist/SegmentedButtonItem.d.ts +6 -1
  147. package/dist/SegmentedButtonItem.js +7 -4
  148. package/dist/SegmentedButtonItem.js.map +1 -1
  149. package/dist/Select.d.ts +27 -82
  150. package/dist/Select.js +83 -231
  151. package/dist/Select.js.map +1 -1
  152. package/dist/Slider.d.ts +3 -1
  153. package/dist/Slider.js +4 -0
  154. package/dist/Slider.js.map +1 -1
  155. package/dist/SliderBase.d.ts +11 -1
  156. package/dist/SliderBase.js +6 -0
  157. package/dist/SliderBase.js.map +1 -1
  158. package/dist/StandardListItem.d.ts +7 -0
  159. package/dist/StandardListItem.js +3 -0
  160. package/dist/StandardListItem.js.map +1 -1
  161. package/dist/StepInput.d.ts +6 -15
  162. package/dist/StepInput.js +7 -11
  163. package/dist/StepInput.js.map +1 -1
  164. package/dist/Switch.d.ts +8 -17
  165. package/dist/Switch.js +13 -21
  166. package/dist/Switch.js.map +1 -1
  167. package/dist/TabContainer.js +11 -5
  168. package/dist/TabContainer.js.map +1 -1
  169. package/dist/Tag.d.ts +1 -1
  170. package/dist/Tag.js.map +1 -1
  171. package/dist/TextArea.d.ts +9 -18
  172. package/dist/TextArea.js +22 -15
  173. package/dist/TextArea.js.map +1 -1
  174. package/dist/TimePicker.d.ts +24 -24
  175. package/dist/TimePicker.js +32 -59
  176. package/dist/TimePicker.js.map +1 -1
  177. package/dist/TimeSelectionClocks.js +2 -0
  178. package/dist/TimeSelectionClocks.js.map +1 -1
  179. package/dist/TimeSelectionInputs.js +2 -0
  180. package/dist/TimeSelectionInputs.js.map +1 -1
  181. package/dist/Toast.d.ts +1 -1
  182. package/dist/Toast.js +2 -2
  183. package/dist/Toast.js.map +1 -1
  184. package/dist/ToggleSpinButton.d.ts +1 -1
  185. package/dist/ToggleSpinButton.js +1 -1
  186. package/dist/ToggleSpinButton.js.map +1 -1
  187. package/dist/Token.d.ts +5 -0
  188. package/dist/Token.js +3 -0
  189. package/dist/Token.js.map +1 -1
  190. package/dist/Tokenizer.d.ts +11 -5
  191. package/dist/Tokenizer.js +93 -71
  192. package/dist/Tokenizer.js.map +1 -1
  193. package/dist/Toolbar.d.ts +5 -0
  194. package/dist/Toolbar.js +16 -4
  195. package/dist/Toolbar.js.map +1 -1
  196. package/dist/ToolbarButton.d.ts +11 -3
  197. package/dist/ToolbarButton.js +2 -2
  198. package/dist/ToolbarButton.js.map +1 -1
  199. package/dist/TreeItemBase.d.ts +8 -1
  200. package/dist/TreeItemBase.js +3 -1
  201. package/dist/TreeItemBase.js.map +1 -1
  202. package/dist/TreeItemCustom.js +4 -2
  203. package/dist/TreeItemCustom.js.map +1 -1
  204. package/dist/bundle.esm.d.ts +0 -1
  205. package/dist/bundle.esm.js +5 -3
  206. package/dist/bundle.esm.js.map +1 -1
  207. package/dist/css/themes/Avatar.css +1 -1
  208. package/dist/css/themes/AvatarGroup.css +1 -1
  209. package/dist/css/themes/Bar.css +1 -1
  210. package/dist/css/themes/Breadcrumbs.css +1 -1
  211. package/dist/css/themes/BusyIndicator.css +1 -1
  212. package/dist/css/themes/Button.css +1 -1
  213. package/dist/css/themes/Calendar.css +1 -1
  214. package/dist/css/themes/CalendarHeader.css +1 -1
  215. package/dist/css/themes/CalendarLegend.css +1 -1
  216. package/dist/css/themes/CalendarLegendItem.css +1 -1
  217. package/dist/css/themes/Card.css +1 -1
  218. package/dist/css/themes/CardHeader.css +1 -1
  219. package/dist/css/themes/Carousel.css +1 -1
  220. package/dist/css/themes/CheckBox.css +1 -1
  221. package/dist/css/themes/ColorPalette.css +1 -1
  222. package/dist/css/themes/ColorPaletteItem.css +1 -1
  223. package/dist/css/themes/ColorPalettePopover.css +1 -1
  224. package/dist/css/themes/ColorPicker.css +1 -1
  225. package/dist/css/themes/ComboBox.css +1 -1
  226. package/dist/css/themes/CustomListItem.css +1 -1
  227. package/dist/css/themes/DatePicker.css +1 -1
  228. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  229. package/dist/css/themes/DayPicker.css +1 -1
  230. package/dist/css/themes/Dialog.css +1 -1
  231. package/dist/css/themes/FileUploader.css +1 -1
  232. package/dist/css/themes/Form.css +1 -0
  233. package/dist/css/themes/FormItem.css +1 -0
  234. package/dist/css/themes/FormLabelSpan.css +1 -0
  235. package/dist/css/themes/FormLayout.css +1 -0
  236. package/dist/css/themes/GrowingButton.css +1 -1
  237. package/dist/css/themes/Icon.css +1 -1
  238. package/dist/css/themes/Input.css +1 -1
  239. package/dist/css/themes/InputIcon.css +1 -1
  240. package/dist/css/themes/InputSharedStyles.css +1 -1
  241. package/dist/css/themes/Label.css +1 -1
  242. package/dist/css/themes/Link.css +1 -1
  243. package/dist/css/themes/List.css +1 -1
  244. package/dist/css/themes/ListItem.css +1 -1
  245. package/dist/css/themes/ListItemAdditionalText.css +1 -0
  246. package/dist/css/themes/ListItemBase.css +1 -1
  247. package/dist/css/themes/ListItemGroup.css +1 -1
  248. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  249. package/dist/css/themes/ListItemIcon.css +1 -0
  250. package/dist/css/themes/Menu.css +1 -1
  251. package/dist/css/themes/MenuItem.css +1 -0
  252. package/dist/css/themes/MessageStrip.css +1 -1
  253. package/dist/css/themes/MonthPicker.css +1 -1
  254. package/dist/css/themes/MultiComboBox.css +1 -1
  255. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  256. package/dist/css/themes/MultiInput.css +1 -1
  257. package/dist/css/themes/NavigationMenu.css +1 -1
  258. package/dist/css/themes/NavigationMenuItem.css +1 -0
  259. package/dist/css/themes/OptionBase.css +1 -0
  260. package/dist/css/themes/Panel.css +1 -1
  261. package/dist/css/themes/Popover.css +1 -1
  262. package/dist/css/themes/Popup.css +1 -1
  263. package/dist/css/themes/PopupsCommon.css +1 -1
  264. package/dist/css/themes/ProgressIndicator.css +1 -1
  265. package/dist/css/themes/RadioButton.css +1 -1
  266. package/dist/css/themes/RangeSlider.css +1 -1
  267. package/dist/css/themes/RatingIndicator.css +1 -1
  268. package/dist/css/themes/ResponsivePopover.css +1 -1
  269. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  270. package/dist/css/themes/SegmentedButton.css +1 -1
  271. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  272. package/dist/css/themes/Select.css +1 -1
  273. package/dist/css/themes/SelectPopover.css +1 -1
  274. package/dist/css/themes/SliderBase.css +1 -1
  275. package/dist/css/themes/SplitButton.css +1 -1
  276. package/dist/css/themes/StepInput.css +1 -1
  277. package/dist/css/themes/Switch.css +1 -1
  278. package/dist/css/themes/TabContainer.css +1 -1
  279. package/dist/css/themes/TabInOverflow.css +1 -1
  280. package/dist/css/themes/TabInStrip.css +1 -1
  281. package/dist/css/themes/TabSemanticIcon.css +1 -1
  282. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  283. package/dist/css/themes/Tag.css +1 -1
  284. package/dist/css/themes/Text.css +1 -1
  285. package/dist/css/themes/TextArea.css +1 -1
  286. package/dist/css/themes/TimePicker.css +1 -1
  287. package/dist/css/themes/Toast.css +1 -1
  288. package/dist/css/themes/ToggleButton.css +1 -1
  289. package/dist/css/themes/Token.css +1 -1
  290. package/dist/css/themes/Tokenizer.css +1 -1
  291. package/dist/css/themes/TokenizerPopover.css +1 -1
  292. package/dist/css/themes/Toolbar.css +1 -1
  293. package/dist/css/themes/ToolbarPopover.css +1 -1
  294. package/dist/css/themes/TreeItem.css +1 -1
  295. package/dist/css/themes/ValueStateMessage.css +1 -1
  296. package/dist/css/themes/YearPicker.css +1 -1
  297. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  298. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  299. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  300. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  301. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  302. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  303. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  304. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  305. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  306. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  307. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  308. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  309. package/dist/custom-elements-internal.json +2414 -1795
  310. package/dist/custom-elements.json +1979 -1523
  311. package/dist/features/InputSuggestions.js +3 -1
  312. package/dist/features/InputSuggestions.js.map +1 -1
  313. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  314. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  315. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  316. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  317. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  318. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  319. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  320. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  321. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  322. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  323. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  324. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  325. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  326. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  327. package/dist/generated/i18n/i18n-defaults.d.ts +6 -2
  328. package/dist/generated/i18n/i18n-defaults.js +6 -2
  329. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  330. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +2 -2
  331. package/dist/generated/templates/BusyIndicatorTemplate.lit.js.map +1 -1
  332. package/dist/generated/templates/ButtonTemplate.lit.js +3 -2
  333. package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -1
  334. package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
  335. package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -1
  336. package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
  337. package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -1
  338. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +2 -2
  339. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js.map +1 -1
  340. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  341. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -1
  342. package/dist/generated/templates/ColorPaletteTemplate.lit.js +1 -1
  343. package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
  344. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +12 -9
  345. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
  346. package/dist/generated/templates/ComboBoxTemplate.lit.js +14 -11
  347. package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
  348. package/dist/generated/templates/DatePickerInputTemplate.lit.js +2 -2
  349. package/dist/generated/templates/DatePickerInputTemplate.lit.js.map +1 -1
  350. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  351. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
  352. package/dist/generated/templates/DatePickerTemplate.lit.js +2 -2
  353. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
  354. package/dist/generated/templates/DateRangePickerTemplate.lit.d.ts +4 -0
  355. package/dist/generated/templates/DateRangePickerTemplate.lit.js +9 -0
  356. package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -0
  357. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  358. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
  359. package/dist/generated/templates/DateTimePickerTemplate.lit.js +2 -2
  360. package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
  361. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +1 -1
  362. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -1
  363. package/dist/generated/templates/FileUploaderTemplate.lit.js +5 -7
  364. package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -1
  365. package/dist/generated/templates/FormItemTemplate.lit.d.ts +4 -0
  366. package/dist/generated/templates/FormItemTemplate.lit.js +6 -0
  367. package/dist/generated/templates/FormItemTemplate.lit.js.map +1 -0
  368. package/dist/generated/templates/FormTemplate.lit.d.ts +4 -0
  369. package/dist/generated/templates/FormTemplate.lit.js +13 -0
  370. package/dist/generated/templates/FormTemplate.lit.js.map +1 -0
  371. package/dist/generated/templates/InputPopoverTemplate.lit.js +2 -2
  372. package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
  373. package/dist/generated/templates/InputTemplate.lit.js +4 -4
  374. package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
  375. package/dist/generated/templates/{MenuListItemTemplate.lit.d.ts → ListItemBaseTemplate.lit.d.ts} +2 -2
  376. package/dist/generated/templates/ListItemBaseTemplate.lit.js +5 -0
  377. package/dist/generated/templates/ListItemBaseTemplate.lit.js.map +1 -0
  378. package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js +1 -1
  379. package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js.map +1 -1
  380. package/dist/generated/templates/ListItemGroupTemplate.lit.js +1 -1
  381. package/dist/generated/templates/ListItemGroupTemplate.lit.js.map +1 -1
  382. package/dist/generated/templates/MenuItemTemplate.lit.d.ts +4 -0
  383. package/dist/generated/templates/{MenuListItemTemplate.lit.js → MenuItemTemplate.lit.js} +21 -15
  384. package/dist/generated/templates/MenuItemTemplate.lit.js.map +1 -0
  385. package/dist/generated/templates/MenuTemplate.lit.js +6 -8
  386. package/dist/generated/templates/MenuTemplate.lit.js.map +1 -1
  387. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +2 -2
  388. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
  389. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +4 -4
  390. package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
  391. package/dist/generated/templates/MultiInputTemplate.lit.js +28 -27
  392. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
  393. package/dist/generated/templates/NavigationMenuItemTemplate.lit.d.ts +4 -0
  394. package/dist/generated/templates/NavigationMenuItemTemplate.lit.js +57 -0
  395. package/dist/generated/templates/NavigationMenuItemTemplate.lit.js.map +1 -0
  396. package/dist/generated/templates/NavigationMenuTemplate.lit.js +6 -19
  397. package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -1
  398. package/dist/generated/templates/OptionCustomTemplate.lit.d.ts +4 -0
  399. package/dist/generated/templates/OptionCustomTemplate.lit.js +5 -0
  400. package/dist/generated/templates/OptionCustomTemplate.lit.js.map +1 -0
  401. package/dist/generated/templates/OptionTemplate.lit.d.ts +4 -0
  402. package/dist/generated/templates/OptionTemplate.lit.js +7 -0
  403. package/dist/generated/templates/OptionTemplate.lit.js.map +1 -0
  404. package/dist/generated/templates/RadioButtonTemplate.lit.js +1 -1
  405. package/dist/generated/templates/RadioButtonTemplate.lit.js.map +1 -1
  406. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +2 -2
  407. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
  408. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
  409. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -1
  410. package/dist/generated/templates/SelectPopoverTemplate.lit.js +6 -7
  411. package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
  412. package/dist/generated/templates/SelectTemplate.lit.js +8 -9
  413. package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
  414. package/dist/generated/templates/StepInputTemplate.lit.js +3 -3
  415. package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -1
  416. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  417. package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -1
  418. package/dist/generated/templates/TabContainerTemplate.lit.js +2 -2
  419. package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
  420. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  421. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -1
  422. package/dist/generated/templates/TextAreaTemplate.lit.js +2 -2
  423. package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
  424. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +2 -2
  425. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
  426. package/dist/generated/templates/TimePickerTemplate.lit.js +3 -3
  427. package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
  428. package/dist/generated/templates/ToggleButtonTemplate.lit.js +3 -2
  429. package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -1
  430. package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js +3 -2
  431. package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js.map +1 -1
  432. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +4 -3
  433. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -1
  434. package/dist/generated/templates/TokenizerTemplate.lit.js +4 -3
  435. package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
  436. package/dist/generated/templates/ToolbarButtonTemplate.lit.js +1 -1
  437. package/dist/generated/templates/ToolbarButtonTemplate.lit.js.map +1 -1
  438. package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js +1 -1
  439. package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js.map +1 -1
  440. package/dist/generated/templates/ToolbarPopoverTemplate.lit.js +1 -1
  441. package/dist/generated/templates/ToolbarPopoverTemplate.lit.js.map +1 -1
  442. package/dist/generated/templates/ToolbarTemplate.lit.js +1 -1
  443. package/dist/generated/templates/ToolbarTemplate.lit.js.map +1 -1
  444. package/dist/generated/themes/Avatar.css.js +1 -1
  445. package/dist/generated/themes/Avatar.css.js.map +1 -1
  446. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  447. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  448. package/dist/generated/themes/Bar.css.js +1 -1
  449. package/dist/generated/themes/Bar.css.js.map +1 -1
  450. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  451. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  452. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  453. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  454. package/dist/generated/themes/Button.css.js +1 -1
  455. package/dist/generated/themes/Button.css.js.map +1 -1
  456. package/dist/generated/themes/Calendar.css.js +1 -1
  457. package/dist/generated/themes/Calendar.css.js.map +1 -1
  458. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  459. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  460. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  461. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  462. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  463. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  464. package/dist/generated/themes/Card.css.js +1 -1
  465. package/dist/generated/themes/Card.css.js.map +1 -1
  466. package/dist/generated/themes/CardHeader.css.js +1 -1
  467. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  468. package/dist/generated/themes/Carousel.css.js +1 -1
  469. package/dist/generated/themes/Carousel.css.js.map +1 -1
  470. package/dist/generated/themes/CheckBox.css.js +1 -1
  471. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  472. package/dist/generated/themes/ColorPalette.css.js +1 -1
  473. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  474. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  475. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  476. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  477. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  478. package/dist/generated/themes/ColorPicker.css.js +1 -1
  479. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  480. package/dist/generated/themes/ComboBox.css.js +1 -1
  481. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  482. package/dist/generated/themes/CustomListItem.css.js +1 -1
  483. package/dist/generated/themes/CustomListItem.css.js.map +1 -1
  484. package/dist/generated/themes/DatePicker.css.js +1 -1
  485. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  486. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  487. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  488. package/dist/generated/themes/DayPicker.css.js +1 -1
  489. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  490. package/dist/generated/themes/Dialog.css.js +1 -1
  491. package/dist/generated/themes/Dialog.css.js.map +1 -1
  492. package/dist/generated/themes/FileUploader.css.js +1 -1
  493. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  494. package/dist/generated/themes/Form.css.js +9 -0
  495. package/dist/generated/themes/Form.css.js.map +1 -0
  496. package/dist/generated/themes/FormItem.css.js +9 -0
  497. package/dist/generated/themes/FormItem.css.js.map +1 -0
  498. package/dist/generated/themes/FormLabelSpan.css.js +9 -0
  499. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -0
  500. package/dist/generated/themes/FormLayout.css.d.ts +3 -0
  501. package/dist/generated/themes/FormLayout.css.js +9 -0
  502. package/dist/generated/themes/FormLayout.css.js.map +1 -0
  503. package/dist/generated/themes/GrowingButton.css.js +1 -1
  504. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  505. package/dist/generated/themes/Icon.css.js +1 -1
  506. package/dist/generated/themes/Icon.css.js.map +1 -1
  507. package/dist/generated/themes/Input.css.js +1 -1
  508. package/dist/generated/themes/Input.css.js.map +1 -1
  509. package/dist/generated/themes/InputIcon.css.js +1 -1
  510. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  511. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  512. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  513. package/dist/generated/themes/Label.css.js +1 -1
  514. package/dist/generated/themes/Label.css.js.map +1 -1
  515. package/dist/generated/themes/Link.css.js +1 -1
  516. package/dist/generated/themes/Link.css.js.map +1 -1
  517. package/dist/generated/themes/List.css.js +1 -1
  518. package/dist/generated/themes/List.css.js.map +1 -1
  519. package/dist/generated/themes/ListItem.css.js +1 -1
  520. package/dist/generated/themes/ListItem.css.js.map +1 -1
  521. package/dist/generated/themes/ListItemAdditionalText.css.d.ts +3 -0
  522. package/dist/generated/themes/{SelectMenu.css.js → ListItemAdditionalText.css.js} +2 -2
  523. package/dist/generated/themes/ListItemAdditionalText.css.js.map +1 -0
  524. package/dist/generated/themes/ListItemBase.css.js +1 -1
  525. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  526. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  527. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  528. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  529. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  530. package/dist/generated/themes/ListItemIcon.css.d.ts +3 -0
  531. package/dist/generated/themes/ListItemIcon.css.js +9 -0
  532. package/dist/generated/themes/ListItemIcon.css.js.map +1 -0
  533. package/dist/generated/themes/Menu.css.js +1 -1
  534. package/dist/generated/themes/Menu.css.js.map +1 -1
  535. package/dist/generated/themes/MenuItem.css.d.ts +3 -0
  536. package/dist/generated/themes/MenuItem.css.js +9 -0
  537. package/dist/generated/themes/MenuItem.css.js.map +1 -0
  538. package/dist/generated/themes/MessageStrip.css.js +1 -1
  539. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  540. package/dist/generated/themes/MonthPicker.css.js +1 -1
  541. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  542. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  543. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  544. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  545. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  546. package/dist/generated/themes/MultiInput.css.js +1 -1
  547. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  548. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  549. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  550. package/dist/generated/themes/NavigationMenuItem.css.d.ts +3 -0
  551. package/dist/generated/themes/NavigationMenuItem.css.js +9 -0
  552. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -0
  553. package/dist/generated/themes/OptionBase.css.d.ts +3 -0
  554. package/dist/generated/themes/{SelectMenuOption.css.js → OptionBase.css.js} +3 -2
  555. package/dist/generated/themes/{SelectMenu.css.js.map → OptionBase.css.js.map} +1 -1
  556. package/dist/generated/themes/Panel.css.js +1 -1
  557. package/dist/generated/themes/Panel.css.js.map +1 -1
  558. package/dist/generated/themes/Popover.css.js +1 -1
  559. package/dist/generated/themes/Popover.css.js.map +1 -1
  560. package/dist/generated/themes/Popup.css.js +1 -1
  561. package/dist/generated/themes/Popup.css.js.map +1 -1
  562. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  563. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  564. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  565. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  566. package/dist/generated/themes/RadioButton.css.js +1 -1
  567. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  568. package/dist/generated/themes/RangeSlider.css.js +1 -1
  569. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  570. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  571. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  572. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  573. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  574. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  575. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  576. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  577. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  578. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  579. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  580. package/dist/generated/themes/Select.css.js +1 -1
  581. package/dist/generated/themes/Select.css.js.map +1 -1
  582. package/dist/generated/themes/SelectPopover.css.js +1 -1
  583. package/dist/generated/themes/SelectPopover.css.js.map +1 -1
  584. package/dist/generated/themes/SliderBase.css.js +1 -1
  585. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  586. package/dist/generated/themes/SplitButton.css.js +1 -1
  587. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  588. package/dist/generated/themes/StepInput.css.js +1 -1
  589. package/dist/generated/themes/StepInput.css.js.map +1 -1
  590. package/dist/generated/themes/Switch.css.js +1 -1
  591. package/dist/generated/themes/Switch.css.js.map +1 -1
  592. package/dist/generated/themes/TabContainer.css.js +1 -1
  593. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  594. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  595. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  596. package/dist/generated/themes/TabInStrip.css.js +1 -1
  597. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  598. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  599. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  600. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  601. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  602. package/dist/generated/themes/Tag.css.js +1 -1
  603. package/dist/generated/themes/Tag.css.js.map +1 -1
  604. package/dist/generated/themes/Text.css.js +1 -1
  605. package/dist/generated/themes/Text.css.js.map +1 -1
  606. package/dist/generated/themes/TextArea.css.js +1 -1
  607. package/dist/generated/themes/TextArea.css.js.map +1 -1
  608. package/dist/generated/themes/TimePicker.css.js +1 -1
  609. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  610. package/dist/generated/themes/Toast.css.js +1 -1
  611. package/dist/generated/themes/Toast.css.js.map +1 -1
  612. package/dist/generated/themes/ToggleButton.css.js +1 -1
  613. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  614. package/dist/generated/themes/Token.css.js +1 -1
  615. package/dist/generated/themes/Token.css.js.map +1 -1
  616. package/dist/generated/themes/Tokenizer.css.js +1 -1
  617. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  618. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  619. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  620. package/dist/generated/themes/Toolbar.css.js +1 -1
  621. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  622. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  623. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  624. package/dist/generated/themes/TreeItem.css.js +1 -1
  625. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  626. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  627. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  628. package/dist/generated/themes/YearPicker.css.js +1 -1
  629. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  630. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  631. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  632. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  633. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  634. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  635. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  636. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  637. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  638. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  639. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  640. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  641. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  642. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  643. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  644. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  645. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  646. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  647. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  648. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  649. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  650. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  651. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  652. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  653. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  654. package/dist/popup-utils/OpenedPopupsRegistry.js +1 -1
  655. package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
  656. package/dist/popup-utils/PopoverRegistry.js +5 -4
  657. package/dist/popup-utils/PopoverRegistry.js.map +1 -1
  658. package/dist/styles/Icon.css +33 -0
  659. package/dist/styles/Icon.module.css +33 -0
  660. package/dist/types/FormItemSpacing.d.ts +19 -0
  661. package/dist/types/FormItemSpacing.js +21 -0
  662. package/dist/types/FormItemSpacing.js.map +1 -0
  663. package/dist/types/{HighlightTypes.d.ts → Highlight.d.ts} +3 -3
  664. package/dist/types/Highlight.js +30 -0
  665. package/dist/types/Highlight.js.map +1 -0
  666. package/dist/types/InputType.d.ts +7 -1
  667. package/dist/types/InputType.js +6 -0
  668. package/dist/types/InputType.js.map +1 -1
  669. package/dist/types/LinkAccessibleRole.d.ts +19 -0
  670. package/dist/types/LinkAccessibleRole.js +21 -0
  671. package/dist/types/LinkAccessibleRole.js.map +1 -0
  672. package/dist/vscode.html-custom-data.json +306 -157
  673. package/dist/web-types.json +698 -364
  674. package/package.json +10 -10
  675. package/src/BusyIndicator.hbs +1 -1
  676. package/src/Button.hbs +10 -1
  677. package/src/Calendar.hbs +2 -2
  678. package/src/CheckBox.hbs +0 -2
  679. package/src/ColorPalette.hbs +3 -1
  680. package/src/ColorPaletteItem.hbs +1 -1
  681. package/src/ColorPalettePopover.hbs +2 -1
  682. package/src/ComboBox.hbs +2 -2
  683. package/src/ComboBoxPopover.hbs +15 -4
  684. package/src/DatePickerInput.hbs +1 -3
  685. package/src/DatePickerPopover.hbs +3 -3
  686. package/src/DateRangePicker.hbs +23 -0
  687. package/src/DateTimePickerPopover.hbs +2 -2
  688. package/src/FileUploader.hbs +10 -16
  689. package/src/FileUploaderPopover.hbs +1 -1
  690. package/src/Form.hbs +37 -0
  691. package/src/FormItem.hbs +14 -0
  692. package/src/Input.hbs +1 -3
  693. package/src/InputPopover.hbs +5 -5
  694. package/src/ListItemBase.hbs +21 -0
  695. package/src/ListItemGroup.hbs +12 -12
  696. package/src/ListItemGroupHeader.hbs +0 -1
  697. package/src/Menu.hbs +17 -49
  698. package/src/MenuItem.hbs +109 -0
  699. package/src/MonthPicker.hbs +1 -1
  700. package/src/MultiComboBox.hbs +2 -2
  701. package/src/MultiComboBoxPopover.hbs +4 -4
  702. package/src/MultiInput.hbs +4 -2
  703. package/src/NavigationMenu.hbs +14 -101
  704. package/src/NavigationMenuItem.hbs +124 -0
  705. package/src/Option.hbs +15 -0
  706. package/src/OptionCustom.hbs +5 -0
  707. package/src/RadioButton.hbs +0 -1
  708. package/src/ResponsivePopover.hbs +6 -5
  709. package/src/SegmentedButtonItem.hbs +1 -1
  710. package/src/Select.hbs +2 -3
  711. package/src/SelectPopover.hbs +7 -20
  712. package/src/StepInput.hbs +2 -4
  713. package/src/Switch.hbs +0 -1
  714. package/src/TabContainer.hbs +4 -4
  715. package/src/TextArea.hbs +0 -2
  716. package/src/TextAreaPopover.hbs +1 -1
  717. package/src/TimePicker.hbs +4 -5
  718. package/src/TimePickerPopover.hbs +6 -5
  719. package/src/TokenizerPopover.hbs +9 -7
  720. package/src/ToolbarButton.hbs +1 -1
  721. package/src/ToolbarPopover.hbs +2 -2
  722. package/src/ToolbarPopoverButton.hbs +1 -1
  723. package/src/i18n/messagebundle.properties +11 -3
  724. package/src/i18n/messagebundle_en.properties +13 -3
  725. package/src/i18n/messagebundle_en_US_saprigi.properties +13 -3
  726. package/src/styles/Icon.module.css +1 -0
  727. package/src/themes/Button.css +7 -10
  728. package/src/themes/Calendar.css +1 -0
  729. package/src/themes/CalendarLegendItem.css +4 -1
  730. package/src/themes/ColorPalette.css +11 -6
  731. package/src/themes/ColorPaletteItem.css +55 -27
  732. package/src/themes/Form.css +50 -0
  733. package/src/themes/FormItem.css +65 -0
  734. package/src/themes/FormLabelSpan.css +267 -0
  735. package/src/themes/FormLayout.css +159 -0
  736. package/src/themes/GrowingButton.css +1 -1
  737. package/src/themes/Input.css +20 -20
  738. package/src/themes/InputIcon.css +6 -13
  739. package/src/themes/InputSharedStyles.css +15 -16
  740. package/src/themes/Label.css +7 -4
  741. package/src/themes/ListItem.css +6 -57
  742. package/src/themes/ListItemAdditionalText.css +10 -0
  743. package/src/themes/ListItemBase.css +61 -46
  744. package/src/themes/ListItemIcon.css +6 -0
  745. package/src/themes/Menu.css +0 -10
  746. package/src/themes/{MenuListItem.css → MenuItem.css} +12 -0
  747. package/src/themes/MonthPicker.css +23 -0
  748. package/src/themes/NavigationMenu.css +7 -65
  749. package/src/themes/NavigationMenuItem.css +54 -0
  750. package/src/themes/OptionBase.css +3 -0
  751. package/src/themes/Popover.css +1 -1
  752. package/src/themes/Popup.css +1 -1
  753. package/src/themes/ResponsivePopover.css +3 -3
  754. package/src/themes/ResponsivePopoverCommon.css +3 -3
  755. package/src/themes/SegmentedButton.css +2 -3
  756. package/src/themes/SegmentedButtonItem.css +0 -8
  757. package/src/themes/SelectPopover.css +1 -9
  758. package/src/themes/TimePicker.css +1 -24
  759. package/src/themes/base/ColorPalette-parameters.css +10 -4
  760. package/src/themes/base/Form-parameters.css +20 -0
  761. package/src/themes/base/sizes-parameters.css +25 -7
  762. package/src/themes/sap_fiori_3/parameters-bundle.css +2 -2
  763. package/src/themes/sap_fiori_3/sizes-parameters.css +6 -0
  764. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +2 -2
  765. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +6 -0
  766. package/src/themes/sap_fiori_3_hcb/Tag-parameters.css +102 -0
  767. package/src/themes/sap_fiori_3_hcw/Tag-parameters.css +102 -0
  768. package/src/themes/sap_horizon/ColorPalette-parameters.css +7 -4
  769. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  770. package/src/themes/sap_horizon/sizes-parameters.css +4 -2
  771. package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +7 -4
  772. package/src/themes/sap_horizon_dark/sizes-parameters.css +4 -2
  773. package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +5 -4
  774. package/src/themes/sap_horizon_dark_exp/sizes-parameters.css +1 -2
  775. package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +5 -4
  776. package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  777. package/src/themes/sap_horizon_exp/sizes-parameters.css +1 -2
  778. package/src/themes/sap_horizon_hcb/ColorPalette-parameters.css +8 -0
  779. package/src/themes/sap_horizon_hcb/Tag-parameters.css +9 -9
  780. package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  781. package/src/themes/sap_horizon_hcw/ColorPalette-parameters.css +8 -0
  782. package/src/themes/sap_horizon_hcw/Tag-parameters.css +9 -9
  783. package/src/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  784. package/dist/ComboBoxGroupItem.js.map +0 -1
  785. package/dist/MenuListItem.d.ts +0 -61
  786. package/dist/MenuListItem.js +0 -71
  787. package/dist/MenuListItem.js.map +0 -1
  788. package/dist/SelectMenu.d.ts +0 -102
  789. package/dist/SelectMenu.js +0 -237
  790. package/dist/SelectMenu.js.map +0 -1
  791. package/dist/SelectMenuOption.d.ts +0 -94
  792. package/dist/SelectMenuOption.js +0 -78
  793. package/dist/SelectMenuOption.js.map +0 -1
  794. package/dist/css/themes/MenuListItem.css +0 -1
  795. package/dist/css/themes/SelectMenu.css +0 -1
  796. package/dist/css/themes/SelectMenuOption.css +0 -0
  797. package/dist/features/InputElementsFormSupport.d.ts +0 -41
  798. package/dist/features/InputElementsFormSupport.js +0 -134
  799. package/dist/features/InputElementsFormSupport.js.map +0 -1
  800. package/dist/generated/templates/MenuListItemTemplate.lit.js.map +0 -1
  801. package/dist/generated/templates/SelectMenuTemplate.lit.d.ts +0 -4
  802. package/dist/generated/templates/SelectMenuTemplate.lit.js +0 -15
  803. package/dist/generated/templates/SelectMenuTemplate.lit.js.map +0 -1
  804. package/dist/generated/themes/MenuListItem.css.js +0 -9
  805. package/dist/generated/themes/MenuListItem.css.js.map +0 -1
  806. package/dist/generated/themes/SelectMenuOption.css.js.map +0 -1
  807. package/dist/styles/Input.css +0 -0
  808. package/dist/styles/Input.module.css +0 -0
  809. package/dist/types/HighlightTypes.js +0 -30
  810. package/dist/types/HighlightTypes.js.map +0 -1
  811. package/src/MenuListItem.hbs +0 -35
  812. package/src/SelectMenu.hbs +0 -57
  813. package/src/styles/Input.module.css +0 -0
  814. package/src/themes/SelectMenu.css +0 -16
  815. package/src/themes/SelectMenuOption.css +0 -0
  816. /package/dist/generated/themes/{MenuListItem.css.d.ts → Form.css.d.ts} +0 -0
  817. /package/dist/generated/themes/{SelectMenu.css.d.ts → FormItem.css.d.ts} +0 -0
  818. /package/dist/generated/themes/{SelectMenuOption.css.d.ts → FormLabelSpan.css.d.ts} +0 -0
package/dist/Select.js CHANGED
@@ -11,11 +11,8 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
11
11
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
12
12
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
13
13
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
14
- import connectToComponent from "@ui5/webcomponents-base/dist/connectToComponent.js";
15
14
  import { isSpace, isUp, isDown, isEnter, isEscape, isHome, isEnd, isShow, isTabNext, isTabPrevious, } from "@ui5/webcomponents-base/dist/Keys.js";
16
- import DOMReference from "@ui5/webcomponents-base/dist/types/DOMReference.js";
17
15
  import announce from "@ui5/webcomponents-base/dist/util/InvisibleMessage.js";
18
- import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
19
16
  import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
20
17
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
21
18
  import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
@@ -30,14 +27,13 @@ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
30
27
  import InvisibleMessageMode from "@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js";
31
28
  import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsScope.js";
32
29
  import List from "./List.js";
33
- import { VALUE_STATE_SUCCESS, VALUE_STATE_INFORMATION, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, INPUT_SUGGESTIONS_TITLE, LIST_ITEM_POSITION, SELECT_ROLE_DESCRIPTION, } from "./generated/i18n/i18n-defaults.js";
34
- import Option from "./Option.js";
30
+ import { VALUE_STATE_SUCCESS, VALUE_STATE_INFORMATION, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, INPUT_SUGGESTIONS_TITLE, LIST_ITEM_POSITION, SELECT_ROLE_DESCRIPTION, FORM_SELECTABLE_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
35
31
  import Label from "./Label.js";
36
32
  import ResponsivePopover from "./ResponsivePopover.js";
37
33
  import Popover from "./Popover.js";
38
- import StandardListItem from "./StandardListItem.js";
39
34
  import Icon from "./Icon.js";
40
35
  import Button from "./Button.js";
36
+ import "./ListItemBase.js";
41
37
  // Templates
42
38
  import SelectTemplate from "./generated/templates/SelectTemplate.lit.js";
43
39
  // Styles
@@ -61,15 +57,10 @@ import SelectPopoverCss from "./generated/themes/SelectPopover.css.js";
61
57
  * The available options of the Select are defined by using the Option component.
62
58
  * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.
63
59
  *
64
- * 2. With SelectMenu (`ui5-select-menu`) and SelectMenuOption (`ui5-select-menu-option`) web components:
60
+ * 2. With OptionCustom (`ui5-option-custom`) web component.
65
61
  *
66
- * The SelectMenu can be used as alternative to define the Select's dropdown
67
- * and can be used via the `menu` property of the Select to reference SelectMenu by its ID.
68
- * The component gives the possibility to customize the Select's dropdown
69
- * by slotting entirely custom options (via the SelectMenuOption component) and adding custom styles.
70
- *
71
- * **Note:** SelectMenu is a popover and placing it top-level in the HTML page is recommended,
72
- * because some page styles (for example transitions) can misplace the SelectMenu.
62
+ * Options with custom content are defined by using the OptionCustom component
63
+ * The OptionCustom component comes with no predefined layout and it expects consumers to define it.
73
64
  *
74
65
  * ### Keyboard Handling
75
66
  * The `ui5-select` provides advanced keyboard handling.
@@ -84,41 +75,41 @@ import SelectPopoverCss from "./generated/themes/SelectPopover.css.js";
84
75
  * ### ES6 Module Import
85
76
  * `import "@ui5/webcomponents/dist/Select";`
86
77
  *
87
- * `import "@ui5/webcomponents/dist/Option";` (comes with `ui5-select`)
78
+ * `import "@ui5/webcomponents/dist/Option";`
79
+ * `import "@ui5/webcomponents/dist/OptionCustom";`
88
80
  * @constructor
89
81
  * @extends UI5Element
90
82
  * @public
91
83
  * @since 0.8.0
92
84
  */
93
85
  let Select = Select_1 = class Select extends UI5Element {
86
+ get formValidityMessage() {
87
+ return Select_1.i18nBundle.getText(FORM_SELECTABLE_REQUIRED);
88
+ }
89
+ get formValidity() {
90
+ const selectedOption = this.selectedOption;
91
+ return { valueMissing: this.required && (selectedOption && selectedOption.getAttribute("value") === "") };
92
+ }
93
+ async formElementAnchor() {
94
+ return this.getFocusDomRefAsync();
95
+ }
96
+ get formFormattedValue() {
97
+ const selectedOption = this.selectedOption;
98
+ if (selectedOption) {
99
+ return selectedOption.hasAttribute("value") ? selectedOption.value : selectedOption.textContent;
100
+ }
101
+ return "";
102
+ }
94
103
  constructor() {
95
104
  super();
96
- this._syncedOptions = [];
97
105
  this._selectedIndexBeforeOpen = -1;
98
106
  this._escapePressed = false;
99
107
  this._lastSelectedOption = null;
100
108
  this._typedChars = "";
101
- this._onMenuClick = this.onMenuClick.bind(this);
102
- this._onMenuClose = this.onMenuClose.bind(this);
103
- this._onMenuOpen = this.onMenuOpen.bind(this);
104
- this._onMenuBeforeOpen = this.onMenuBeforeOpen.bind(this);
105
- this._onMenuChange = this.onMenuChange.bind(this);
106
- this._attachMenuListeners = this.attachMenuListeners.bind(this);
107
- this._detachMenuListeners = this.detachMenuListeners.bind(this);
108
109
  this._upgradeProperty("value");
109
110
  }
110
111
  onBeforeRendering() {
111
- const menu = this._getSelectMenu();
112
- if (menu) {
113
- menu.value = this.value;
114
- // To cause invalidation when the menu is used for another Select that could have the same value as the previous.
115
- // Otherwise, the menu won't re-render.
116
- menu.selectId = this.__id;
117
- }
118
- else {
119
- this._syncSelection();
120
- }
121
- this._enableFormSupport();
112
+ this._ensureSingleSelection();
122
113
  this.style.setProperty(getScopedVarName("--_ui5-input-icons-count"), `${this.iconsCount}`);
123
114
  }
124
115
  onAfterRendering() {
@@ -128,7 +119,18 @@ let Select = Select_1 = class Select extends UI5Element {
128
119
  this._listWidth = this.responsivePopover.offsetWidth;
129
120
  }
130
121
  }
131
- this._attachRealDomRefs();
122
+ }
123
+ _ensureSingleSelection() {
124
+ // if no item is selected => select the first one
125
+ // if multiple items are selected => select the last selected one
126
+ let selectedIndex = this.options.findLastIndex(option => option.selected);
127
+ selectedIndex = selectedIndex === -1 ? 0 : selectedIndex;
128
+ for (let i = 0; i < this.options.length; i++) {
129
+ this.options[i].selected = selectedIndex === i;
130
+ if (selectedIndex === i) {
131
+ break;
132
+ }
133
+ }
132
134
  }
133
135
  _onfocusin() {
134
136
  this.focused = true;
@@ -137,10 +139,6 @@ let Select = Select_1 = class Select extends UI5Element {
137
139
  this.focused = false;
138
140
  }
139
141
  get _isPickerOpen() {
140
- const menu = this._getSelectMenu();
141
- if (menu) {
142
- return menu.open;
143
- }
144
142
  return !!this.responsivePopover && this.responsivePopover.open;
145
143
  }
146
144
  _respPopover() {
@@ -162,177 +160,46 @@ let Select = Select_1 = class Select extends UI5Element {
162
160
  * @formEvents change liveChange
163
161
  */
164
162
  set value(newValue) {
165
- const menu = this._getSelectMenu();
166
- const selectOptions = Array.from(menu ? menu.children : this.children);
167
- selectOptions.forEach(option => {
163
+ const options = Array.from(this.children);
164
+ options.forEach(option => {
168
165
  option.selected = !!((option.getAttribute("value") || option.textContent) === newValue);
169
166
  });
170
167
  }
171
168
  get value() {
172
169
  return this.selectedOption?.value || this.selectedOption?.textContent || "";
173
170
  }
171
+ get _selectedIndex() {
172
+ return this.options.findIndex(option => option.selected);
173
+ }
174
174
  /**
175
175
  * Currently selected `ui5-option` element.
176
176
  * @public
177
177
  * @default undefined
178
178
  */
179
179
  get selectedOption() {
180
- return this.selectOptions.find(option => option.selected);
181
- }
182
- onMenuClick(e) {
183
- const optionIndex = e.detail.optionIndex;
184
- this._handleSelectionChange(optionIndex);
185
- }
186
- onMenuBeforeOpen() {
187
- this._beforeOpen();
180
+ return this.options.find(option => option.selected);
188
181
  }
189
- onMenuOpen() {
190
- this._afterOpen();
191
- }
192
- onMenuClose() {
193
- this._afterClose();
194
- }
195
- onMenuChange(e) {
196
- this._text = e.detail.text;
197
- this._selectedIndex = e.detail.selectedIndex;
198
- }
199
- _toggleSelectMenu() {
200
- const menu = this._getSelectMenu();
201
- if (!menu) {
202
- return;
203
- }
204
- if (menu.open) {
205
- menu.close();
206
- }
207
- else {
208
- menu.showAt(this, this.offsetWidth);
209
- }
210
- }
211
- onExitDOM() {
212
- const menu = this._getSelectMenu();
213
- if (menu) {
214
- this._detachMenuListeners(menu);
215
- }
182
+ get text() {
183
+ return this.selectedOption?.effectiveDisplayText;
216
184
  }
217
185
  _toggleRespPopover() {
218
186
  if (this.disabled || this.readonly) {
219
187
  return;
220
188
  }
221
189
  this._iconPressed = true;
222
- const menu = this._getSelectMenu();
223
- if (menu) {
224
- this._toggleSelectMenu();
225
- return;
226
- }
227
190
  this.responsivePopover = this._respPopover();
228
191
  if (this._isPickerOpen) {
229
- this.responsivePopover.close();
192
+ this.responsivePopover.open = false;
230
193
  }
231
194
  else {
232
- this.responsivePopover.showAt(this);
233
- }
234
- }
235
- _attachRealDomRefs() {
236
- this.responsivePopover = this._respPopover();
237
- this.options.forEach(option => {
238
- option._getRealDomRef = () => this.responsivePopover.querySelector(`*[data-ui5-stable=${option.stableDomRef}]`);
239
- });
240
- }
241
- _syncSelection() {
242
- let lastSelectedOptionIndex = -1, firstEnabledOptionIndex = -1;
243
- const options = this.options;
244
- const syncOpts = options.map((opt, index) => {
245
- if (opt.selected) {
246
- lastSelectedOptionIndex = index;
247
- }
248
- if (firstEnabledOptionIndex === -1) {
249
- firstEnabledOptionIndex = index;
250
- }
251
- opt.selected = false;
252
- opt.focused = false;
253
- return {
254
- selected: false,
255
- focused: false,
256
- icon: opt.icon,
257
- value: opt.value,
258
- textContent: opt.textContent,
259
- tooltip: opt.tooltip,
260
- additionalText: opt.additionalText,
261
- id: opt._id,
262
- stableDomRef: opt.stableDomRef,
263
- };
264
- });
265
- if (lastSelectedOptionIndex > -1) {
266
- syncOpts[lastSelectedOptionIndex].selected = true;
267
- syncOpts[lastSelectedOptionIndex].focused = true;
268
- options[lastSelectedOptionIndex].selected = true;
269
- options[lastSelectedOptionIndex].focused = true;
270
- this._text = syncOpts[lastSelectedOptionIndex].textContent;
271
- this._selectedIndex = lastSelectedOptionIndex;
272
- }
273
- else {
274
- this._text = "";
275
- this._selectedIndex = -1;
276
- if (syncOpts[firstEnabledOptionIndex]) {
277
- syncOpts[firstEnabledOptionIndex].selected = true;
278
- syncOpts[firstEnabledOptionIndex].focused = true;
279
- options[firstEnabledOptionIndex].selected = true;
280
- options[firstEnabledOptionIndex].focused = true;
281
- this._selectedIndex = firstEnabledOptionIndex;
282
- this._text = options[firstEnabledOptionIndex].textContent;
283
- }
284
- }
285
- this._syncedOptions = syncOpts;
286
- }
287
- _getSelectMenu() {
288
- return connectToComponent({
289
- host: this,
290
- propName: "menu",
291
- onConnect: this._attachMenuListeners,
292
- onDisconnect: this._detachMenuListeners,
293
- });
294
- }
295
- attachMenuListeners(menu) {
296
- menu.addEventListener("ui5-after-close", this._onMenuClose);
297
- menu.addEventListener("ui5-after-open", this._onMenuOpen);
298
- menu.addEventListener("ui5-before-open", this._onMenuBeforeOpen);
299
- // @ts-ignore
300
- menu.addEventListener("ui5-option-click", this._onMenuClick);
301
- // @ts-ignore
302
- menu.addEventListener("ui5-menu-change", this._onMenuChange);
303
- }
304
- detachMenuListeners(menu) {
305
- menu.removeEventListener("ui5-after-close", this._onMenuClose);
306
- menu.removeEventListener("ui5-after-open", this._onMenuOpen);
307
- menu.removeEventListener("ui5-before-open", this._onMenuBeforeOpen);
308
- // @ts-ignore
309
- menu.removeEventListener("ui5-option-click", this._onMenuClick);
310
- // @ts-ignore
311
- menu.removeEventListener("ui5-menu-change", this._onMenuChange);
312
- }
313
- _enableFormSupport() {
314
- const formSupport = getFeature("FormSupport");
315
- if (formSupport) {
316
- formSupport.syncNativeHiddenInput(this, (element, nativeInput) => {
317
- const selectElement = element;
318
- nativeInput.disabled = !!element.disabled;
319
- nativeInput.value = selectElement.value;
320
- });
321
- }
322
- else if (this.name) {
323
- console.warn(`In order for the "name" property to have effect, you should also: import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`); // eslint-disable-line
195
+ this.responsivePopover.opener = this;
196
+ this.responsivePopover.open = true;
324
197
  }
325
198
  }
326
199
  _onkeydown(e) {
327
200
  const isTab = (isTabNext(e) || isTabPrevious(e));
328
201
  if (isTab && this._isPickerOpen) {
329
- const menu = this._getSelectMenu();
330
- if (menu) {
331
- menu.close(false, false, true /* preventFocusRestore */);
332
- }
333
- else {
334
- this.responsivePopover.close();
335
- }
202
+ this.responsivePopover.open = false;
336
203
  }
337
204
  else if (isShow(e)) {
338
205
  e.preventDefault();
@@ -378,19 +245,20 @@ let Select = Select_1 = class Select extends UI5Element {
378
245
  const currentIndex = this._selectedIndex;
379
246
  const itemToSelect = this._searchNextItemByText(text);
380
247
  if (itemToSelect) {
381
- const nextIndex = this.selectOptions.indexOf(itemToSelect);
248
+ const nextIndex = this.options.indexOf(itemToSelect);
382
249
  this._changeSelectedItem(this._selectedIndex, nextIndex);
383
250
  if (currentIndex !== this._selectedIndex) {
384
251
  this.itemSelectionAnnounce();
252
+ this._scrollSelectedItem();
385
253
  }
386
254
  }
387
255
  }
388
256
  _searchNextItemByText(text) {
389
- let orderedOptions = this.selectOptions.slice(0);
257
+ let orderedOptions = this.options.slice(0);
390
258
  const optionsAfterSelected = orderedOptions.splice(this._selectedIndex + 1, orderedOptions.length - this._selectedIndex);
391
259
  const optionsBeforeSelected = orderedOptions.splice(0, orderedOptions.length - 1);
392
260
  orderedOptions = optionsAfterSelected.concat(optionsBeforeSelected);
393
- return orderedOptions.find(option => (option.displayText || option.textContent || "").toLowerCase().startsWith(text));
261
+ return orderedOptions.find(option => option.effectiveDisplayText.toLowerCase().startsWith(text));
394
262
  }
395
263
  _handleHomeKey(e) {
396
264
  e.preventDefault();
@@ -404,7 +272,7 @@ let Select = Select_1 = class Select extends UI5Element {
404
272
  if (this.readonly) {
405
273
  return;
406
274
  }
407
- const lastIndex = this.selectOptions.length - 1;
275
+ const lastIndex = this.options.length - 1;
408
276
  this._changeSelectedItem(this._selectedIndex, lastIndex);
409
277
  }
410
278
  _onkeyup(e) {
@@ -417,24 +285,28 @@ let Select = Select_1 = class Select extends UI5Element {
417
285
  }
418
286
  }
419
287
  }
420
- _getSelectedItemIndex(item) {
421
- return this.selectOptions.findIndex(option => `${option._id}-li` === item.id);
288
+ _getItemIndex(item) {
289
+ return this.options.indexOf(item);
422
290
  }
423
291
  _select(index) {
424
- this.selectOptions[this._selectedIndex].selected = false;
292
+ if (index < 0 || index >= this.options.length || this.options.length === 0) {
293
+ return;
294
+ }
295
+ if (this.options[this._selectedIndex]) {
296
+ this.options[this._selectedIndex].selected = false;
297
+ }
425
298
  if (this._selectedIndex !== index) {
426
- this.fireEvent("live-change", { selectedOption: this.selectOptions[index] });
299
+ this.fireEvent("live-change", { selectedOption: this.options[index] });
427
300
  }
428
- this._selectedIndex = index;
429
- this.selectOptions[index].selected = true;
301
+ this.options[index].selected = true;
430
302
  }
431
303
  /**
432
304
  * The user clicked on an item from the list
433
305
  * @private
434
306
  */
435
307
  _handleItemPress(e) {
436
- const item = e.detail.item;
437
- const selectedItemIndex = this._getSelectedItemIndex(item);
308
+ const listItem = e.detail.item;
309
+ const selectedItemIndex = this._getItemIndex(listItem);
438
310
  this._handleSelectionChange(selectedItemIndex);
439
311
  }
440
312
  _itemMousedown(e) {
@@ -489,14 +361,13 @@ let Select = Select_1 = class Select extends UI5Element {
489
361
  }
490
362
  }
491
363
  _changeSelectedItem(oldIndex, newIndex) {
492
- const options = this.selectOptions;
364
+ const options = this.options;
493
365
  const previousOption = options[oldIndex];
494
366
  previousOption.selected = false;
495
367
  previousOption.focused = false;
496
368
  const nextOption = options[newIndex];
497
369
  nextOption.selected = true;
498
370
  nextOption.focused = true;
499
- this._selectedIndex = newIndex;
500
371
  this.fireEvent("live-change", { selectedOption: nextOption });
501
372
  if (!this._isPickerOpen) {
502
373
  // arrow pressed on closed picker - do selection change
@@ -504,10 +375,6 @@ let Select = Select_1 = class Select extends UI5Element {
504
375
  }
505
376
  }
506
377
  _getNextOptionIndex() {
507
- const menu = this._getSelectMenu();
508
- if (menu) {
509
- return this._selectedIndex === (menu.options.length - 1) ? this._selectedIndex : (this._selectedIndex + 1);
510
- }
511
378
  return this._selectedIndex === (this.options.length - 1) ? this._selectedIndex : (this._selectedIndex + 1);
512
379
  }
513
380
  _getPreviousOptionIndex() {
@@ -515,13 +382,19 @@ let Select = Select_1 = class Select extends UI5Element {
515
382
  }
516
383
  _beforeOpen() {
517
384
  this._selectedIndexBeforeOpen = this._selectedIndex;
518
- this._lastSelectedOption = this.selectOptions[this._selectedIndex];
385
+ this._lastSelectedOption = this.options[this._selectedIndex];
519
386
  }
520
387
  _afterOpen() {
521
388
  this.opened = true;
522
389
  this.fireEvent("open");
523
390
  this.itemSelectionAnnounce();
524
391
  this._scrollSelectedItem();
392
+ this._applyFocusToSelectedItem();
393
+ }
394
+ _applyFocusToSelectedItem() {
395
+ this.options.forEach(option => {
396
+ option.focused = option.selected;
397
+ });
525
398
  }
526
399
  _afterClose() {
527
400
  this.opened = false;
@@ -531,29 +404,20 @@ let Select = Select_1 = class Select extends UI5Element {
531
404
  this._select(this._selectedIndexBeforeOpen);
532
405
  this._escapePressed = false;
533
406
  }
534
- else if (this._lastSelectedOption !== this.selectOptions[this._selectedIndex]) {
535
- this._fireChangeEvent(this.selectOptions[this._selectedIndex]);
536
- this._lastSelectedOption = this.selectOptions[this._selectedIndex];
407
+ else if (this._lastSelectedOption !== this.options[this._selectedIndex]) {
408
+ this._fireChangeEvent(this.options[this._selectedIndex]);
409
+ this._lastSelectedOption = this.options[this._selectedIndex];
537
410
  }
538
411
  this.fireEvent("close");
539
412
  }
540
- get selectOptions() {
541
- const menu = this._getSelectMenu();
542
- if (menu) {
543
- return menu.options;
544
- }
545
- return this.options;
546
- }
547
413
  get hasCustomLabel() {
548
414
  return !!this.label.length;
549
415
  }
550
416
  _fireChangeEvent(selectedOption) {
551
417
  const changePrevented = !this.fireEvent("change", { selectedOption }, true);
552
418
  // Angular two way data binding
553
- this.selectedItem = selectedOption.textContent;
554
419
  this.fireEvent("selected-item-changed");
555
420
  if (changePrevented) {
556
- this.selectedItem = this._lastSelectedOption.textContent;
557
421
  this._select(this._selectedIndexBeforeOpen);
558
422
  }
559
423
  }
@@ -602,7 +466,7 @@ let Select = Select_1 = class Select extends UI5Element {
602
466
  return Select_1.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
603
467
  }
604
468
  get _currentlySelectedOption() {
605
- return this.selectOptions[this._selectedIndex];
469
+ return this.options[this._selectedIndex];
606
470
  }
607
471
  get _effectiveTabIndex() {
608
472
  return this.disabled
@@ -676,7 +540,7 @@ let Select = Select_1 = class Select extends UI5Element {
676
540
  }
677
541
  itemSelectionAnnounce() {
678
542
  let text;
679
- const optionsCount = this.selectOptions.length;
543
+ const optionsCount = this.options.length;
680
544
  const itemPositionText = Select_1.i18nBundle.getText(LIST_ITEM_POSITION, this._selectedIndex + 1, optionsCount);
681
545
  if (this.focused && this._currentlySelectedOption) {
682
546
  text = `${this._currentlySelectedOption.textContent} ${this._isPickerOpen ? itemPositionText : ""}`;
@@ -686,11 +550,12 @@ let Select = Select_1 = class Select extends UI5Element {
686
550
  openValueStatePopover() {
687
551
  this.valueStatePopover = this._getPopover();
688
552
  if (this.valueStatePopover) {
689
- this.valueStatePopover.showAt(this);
553
+ this.valueStatePopover.opener = this;
554
+ this.valueStatePopover.open = true;
690
555
  }
691
556
  }
692
557
  closeValueStatePopover() {
693
- this.valueStatePopover && this.valueStatePopover.close();
558
+ this.valueStatePopover && (this.valueStatePopover.open = false);
694
559
  }
695
560
  toggleValueStatePopover(open) {
696
561
  if (open) {
@@ -710,9 +575,6 @@ let Select = Select_1 = class Select extends UI5Element {
710
575
  Select_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
711
576
  }
712
577
  };
713
- __decorate([
714
- property({ validator: DOMReference })
715
- ], Select.prototype, "menu", void 0);
716
578
  __decorate([
717
579
  property({ type: Boolean })
718
580
  ], Select.prototype, "disabled", void 0);
@@ -734,9 +596,6 @@ __decorate([
734
596
  __decorate([
735
597
  property()
736
598
  ], Select.prototype, "accessibleNameRef", void 0);
737
- __decorate([
738
- property({ type: String, noAttribute: true })
739
- ], Select.prototype, "_text", void 0);
740
599
  __decorate([
741
600
  property({ type: Boolean, noAttribute: true })
742
601
  ], Select.prototype, "_iconPressed", void 0);
@@ -749,15 +608,9 @@ __decorate([
749
608
  __decorate([
750
609
  property({ type: Boolean })
751
610
  ], Select.prototype, "focused", void 0);
752
- __decorate([
753
- property({ validator: Integer, defaultValue: -1, noAttribute: true })
754
- ], Select.prototype, "_selectedIndex", void 0);
755
611
  __decorate([
756
612
  slot({ "default": true, type: HTMLElement, invalidateOnChildChange: true })
757
613
  ], Select.prototype, "options", void 0);
758
- __decorate([
759
- slot()
760
- ], Select.prototype, "formSupport", void 0);
761
614
  __decorate([
762
615
  slot()
763
616
  ], Select.prototype, "valueStateMessage", void 0);
@@ -768,6 +621,7 @@ Select = Select_1 = __decorate([
768
621
  customElement({
769
622
  tag: "ui5-select",
770
623
  languageAware: true,
624
+ formAssociated: true,
771
625
  renderer: litRender,
772
626
  template: SelectTemplate,
773
627
  styles: [
@@ -777,12 +631,10 @@ Select = Select_1 = __decorate([
777
631
  SelectPopoverCss,
778
632
  ],
779
633
  dependencies: [
780
- Option,
781
634
  Label,
782
635
  ResponsivePopover,
783
636
  Popover,
784
637
  List,
785
- StandardListItem,
786
638
  Icon,
787
639
  Button,
788
640
  ],