@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
@@ -5,8 +5,8 @@ import "@ui5/webcomponents-icons/dist/accept.js";
5
5
  import "@ui5/webcomponents-icons/dist/complete.js";
6
6
  import "@ui5/webcomponents-icons/dist/border.js";
7
7
  import "@ui5/webcomponents-icons/dist/tri-state.js";
8
+ import type { IFormInputElement } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
8
9
  import WrappingType from "./types/WrappingType.js";
9
- import type { IFormElement } from "./features/InputElementsFormSupport.js";
10
10
  /**
11
11
  * @class
12
12
  *
@@ -49,7 +49,7 @@ import type { IFormElement } from "./features/InputElementsFormSupport.js";
49
49
  * @csspart label - Used to style the label of the `ui5-checkbox`
50
50
  * @csspart icon - Used to style the icon of the `ui5-checkbox`
51
51
  */
52
- declare class CheckBox extends UI5Element implements IFormElement {
52
+ declare class CheckBox extends UI5Element implements IFormInputElement {
53
53
  /**
54
54
  * Receives id(or many ids) of the elements that label the component
55
55
  * @default ""
@@ -148,14 +148,9 @@ declare class CheckBox extends UI5Element implements IFormElement {
148
148
  */
149
149
  wrappingType: `${WrappingType}`;
150
150
  /**
151
- * Determines the name with which the component will be submitted in an HTML form.
151
+ * Determines the name by which the component will be identified upon submission in an HTML form.
152
152
  *
153
- * **Important:** For the `name` property to have effect, you must add the following import to your project:
154
- * `import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`
155
- *
156
- * **Note:** When set, a native `input` HTML element
157
- * will be created inside the component so that it can be submitted as
158
- * part of an HTML form. Do not use this property unless you need to submit a form.
153
+ * **Note:** This property is only applicable within the context of an HTML Form element.
159
154
  * @default ""
160
155
  * @public
161
156
  */
@@ -165,18 +160,14 @@ declare class CheckBox extends UI5Element implements IFormElement {
165
160
  * @private
166
161
  */
167
162
  active: boolean;
168
- /**
169
- * The slot is used to render native `input` HTML element within Light DOM to enable form submit,
170
- * when `name` property is set.
171
- * @private
172
- */
173
- formSupport: Array<HTMLElement>;
174
163
  static i18nBundle: I18nBundle;
175
164
  _deactivate: () => void;
165
+ get formValidityMessage(): string;
166
+ get formValidity(): ValidityStateFlags;
167
+ formElementAnchor(): Promise<HTMLElement | undefined>;
168
+ get formFormattedValue(): "on" | null;
176
169
  constructor();
177
- onBeforeRendering(): void;
178
170
  onEnterDOM(): void;
179
- _enableFormSupport(): void;
180
171
  _onclick(): void;
181
172
  _onmousedown(): void;
182
173
  _onmouseup(): void;
package/dist/CheckBox.js CHANGED
@@ -9,12 +9,10 @@ import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
9
9
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
10
10
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
11
11
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
12
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
13
12
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
14
13
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
15
14
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
16
15
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
17
- import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
18
16
  import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
19
17
  import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
20
18
  import "@ui5/webcomponents-icons/dist/accept.js";
@@ -24,7 +22,7 @@ import "@ui5/webcomponents-icons/dist/tri-state.js";
24
22
  import Icon from "./Icon.js";
25
23
  import Label from "./Label.js";
26
24
  import WrappingType from "./types/WrappingType.js";
27
- import { VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_SUCCESS, } from "./generated/i18n/i18n-defaults.js";
25
+ import { VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_SUCCESS, FORM_CHECKABLE_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
28
26
  // Styles
29
27
  import checkboxCss from "./generated/themes/CheckBox.css.js";
30
28
  // Template
@@ -74,6 +72,18 @@ let activeCb;
74
72
  * @csspart icon - Used to style the icon of the `ui5-checkbox`
75
73
  */
76
74
  let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
75
+ get formValidityMessage() {
76
+ return CheckBox_1.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);
77
+ }
78
+ get formValidity() {
79
+ return { valueMissing: this.required && !this.checked };
80
+ }
81
+ async formElementAnchor() {
82
+ return this.getFocusDomRefAsync();
83
+ }
84
+ get formFormattedValue() {
85
+ return this.checked ? "on" : null;
86
+ }
77
87
  constructor() {
78
88
  super();
79
89
  this._deactivate = () => {
@@ -86,27 +96,11 @@ let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
86
96
  isGlobalHandlerAttached = true;
87
97
  }
88
98
  }
89
- onBeforeRendering() {
90
- this._enableFormSupport();
91
- }
92
99
  onEnterDOM() {
93
100
  if (isDesktop()) {
94
101
  this.setAttribute("desktop", "");
95
102
  }
96
103
  }
97
- _enableFormSupport() {
98
- const formSupport = getFeature("FormSupport");
99
- if (formSupport) {
100
- formSupport.syncNativeHiddenInput(this, (element, nativeInput) => {
101
- nativeInput.disabled = !!element.disabled;
102
- nativeInput.checked = !!element.checked;
103
- nativeInput.value = element.checked ? "on" : "";
104
- });
105
- }
106
- else if (this.name) {
107
- console.warn(`In order for the "name" property to have effect, you should also: import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`); // eslint-disable-line
108
- }
109
- }
110
104
  _onclick() {
111
105
  this.toggle();
112
106
  }
@@ -272,13 +266,11 @@ __decorate([
272
266
  __decorate([
273
267
  property({ type: Boolean })
274
268
  ], CheckBox.prototype, "active", void 0);
275
- __decorate([
276
- slot()
277
- ], CheckBox.prototype, "formSupport", void 0);
278
269
  CheckBox = CheckBox_1 = __decorate([
279
270
  customElement({
280
271
  tag: "ui5-checkbox",
281
272
  languageAware: true,
273
+ formAssociated: true,
282
274
  renderer: litRender,
283
275
  template: CheckBoxTemplate,
284
276
  styles: checkboxCss,
@@ -1 +1 @@
1
- {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/accept.js\";\nimport \"@ui5/webcomponents-icons/dist/complete.js\";\nimport \"@ui5/webcomponents-icons/dist/border.js\";\nimport \"@ui5/webcomponents-icons/dist/tri-state.js\";\nimport Icon from \"./Icon.js\";\nimport Label from \"./Label.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\nimport type FormSupport from \"./features/InputElementsFormSupport.js\";\nimport type { IFormElement, NativeFormElement } from \"./features/InputElementsFormSupport.js\";\n\n// Template\nimport CheckBoxTemplate from \"./generated/templates/CheckBoxTemplate.lit.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to wrap, set the `wrappingType` property to \"Normal\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n\tdependencies: [\n\t\tLabel,\n\t\tIcon,\n\t],\n})\n/**\n * Fired when the component checked state changes.\n * @public\n * @allowPreventDefault\n */\n@event(\"change\")\n\nclass CheckBox extends UI5Element implements IFormElement {\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default \"\"\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default \"\"\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate!: boolean;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Determines the name with which the component will be submitted in an HTML form.\n\t *\n\t * **Important:** For the `name` property to have effect, you must add the following import to your project:\n\t * `import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`\n\t *\n\t * **Note:** When set, a native `input` HTML element\n\t * will be created inside the component so that it can be submitted as\n\t * part of an HTML form. Do not use this property unless you need to submit a form.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * The slot is used to render native `input` HTML element within Light DOM to enable form submit,\n\t * when `name` property is set.\n\t * @private\n\t */\n\t@slot()\n\tformSupport!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._enableFormSupport();\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_enableFormSupport() {\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (formSupport) {\n\t\t\tformSupport.syncNativeHiddenInput(this, (element: IFormElement, nativeInput: NativeFormElement) => {\n\t\t\t\tnativeInput.disabled = !!element.disabled;\n\t\t\t\t(nativeInput as HTMLInputElement).checked = !!element.checked;\n\t\t\t\tnativeInput.value = element.checked ? \"on\" : \"\";\n\t\t\t});\n\t\t} else if (this.name) {\n\t\t\tconsole.warn(`In order for the \"name\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireEvent(\"change\", null, true);\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChagnePrevented = !this.fireEvent(\"value-changed\", null, true);\n\n\t\t\tif (changePrevented || valueChagnePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\t\treturn this.disabled || this.displayOnly ? undefined : tabindex || \"0\";\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n\n\tget displayOnlyIcon() {\n\t\tif (this.isCompletelyChecked) {\n\t\t\treturn \"complete\";\n\t\t}\n\t\tif (this.checked && this.indeterminate) {\n\t\t\treturn \"tri-state\";\n\t\t}\n\t\treturn \"border\";\n\t}\n\n\tstatic async onDefine() {\n\t\tCheckBox.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
1
+ {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/accept.js\";\nimport \"@ui5/webcomponents-icons/dist/complete.js\";\nimport \"@ui5/webcomponents-icons/dist/border.js\";\nimport \"@ui5/webcomponents-icons/dist/tri-state.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport Icon from \"./Icon.js\";\nimport Label from \"./Label.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tFORM_CHECKABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\n\n// Template\nimport CheckBoxTemplate from \"./generated/templates/CheckBoxTemplate.lit.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to wrap, set the `wrappingType` property to \"Normal\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n\tdependencies: [\n\t\tLabel,\n\t\tIcon,\n\t],\n})\n/**\n * Fired when the component checked state changes.\n * @public\n * @allowPreventDefault\n */\n@event(\"change\")\n\nclass CheckBox extends UI5Element implements IFormInputElement {\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default \"\"\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default \"\"\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate!: boolean;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tget formValidityMessage() {\n\t\treturn CheckBox.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.checked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? \"on\" : null;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireEvent(\"change\", null, true);\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChagnePrevented = !this.fireEvent(\"value-changed\", null, true);\n\n\t\t\tif (changePrevented || valueChagnePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\t\treturn this.disabled || this.displayOnly ? undefined : tabindex || \"0\";\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n\n\tget displayOnlyIcon() {\n\t\tif (this.isCompletelyChecked) {\n\t\t\treturn \"complete\";\n\t\t}\n\t\tif (this.checked && this.indeterminate) {\n\t\t\treturn \"tri-state\";\n\t\t}\n\t\treturn \"border\";\n\t}\n\n\tstatic async onDefine() {\n\t\tCheckBox.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
@@ -14,6 +14,7 @@ import type ColorPicker from "./ColorPicker.js";
14
14
  interface IColorPaletteItem extends HTMLElement, ITabbable {
15
15
  value?: string;
16
16
  index?: number;
17
+ selected?: boolean;
17
18
  }
18
19
  type ColorPaletteNavigationItem = IColorPaletteItem | Button;
19
20
  type ColorPaletteItemClickEventDetail = {
@@ -92,6 +93,8 @@ declare class ColorPalette extends UI5Element {
92
93
  _itemNavigationRecentColors: ItemNavigation;
93
94
  _recentColors: Array<string>;
94
95
  moreColorsFeature: ColorPaletteMoreColors | Record<string, any>;
96
+ _currentlySelected?: ColorPaletteItem;
97
+ _shouldFocusRecentColors: boolean;
95
98
  static i18nBundle: I18nBundle;
96
99
  static onDefine(): Promise<void>;
97
100
  constructor();
@@ -99,11 +102,21 @@ declare class ColorPalette extends UI5Element {
99
102
  onAfterRendering(): void;
100
103
  selectColor(item: ColorPaletteItem): void;
101
104
  _setColor(color: string): void;
105
+ get effectiveColorItems(): IColorPaletteItem[];
106
+ /**
107
+ * Ensures that only one item is selected or only the last selected item remains active if more than one are explicitly set as 'selected'.
108
+ * @private
109
+ */
110
+ _ensureSingleSelectionOrDeselectAll(): void;
102
111
  _onclick(e: MouseEvent): void;
103
112
  _onkeyup(e: KeyboardEvent): void;
104
113
  _onkeydown(e: KeyboardEvent): void;
114
+ handleSelection(target: ColorPaletteItem): void;
115
+ _handleDefaultColorClick(e: KeyboardEvent): void;
116
+ _onDefaultColorKeyUp(e: KeyboardEvent): void;
105
117
  _onDefaultColorKeyDown(e: KeyboardEvent): void;
106
118
  _onMoreColorsKeyDown(e: KeyboardEvent): void;
119
+ _isUpOrDownNavigatableColorPaletteItem(e: KeyboardEvent): boolean | undefined;
107
120
  _onColorContainerKeyDown(e: KeyboardEvent): void;
108
121
  _onRecentColorsContainerKeyDown(e: KeyboardEvent): void;
109
122
  focusColorElement(element: ColorPaletteNavigationItem, itemNavigation: ItemNavigation): void;
@@ -111,9 +124,15 @@ declare class ColorPalette extends UI5Element {
111
124
  focusFirstFocusableElement(): void;
112
125
  get firstFocusableElement(): ColorPaletteNavigationItem;
113
126
  _chooseCustomColor(): void;
127
+ _addRecentColor(color: string): void;
114
128
  _closeDialog(): void;
115
129
  _openMoreColorsDialog(): void;
116
130
  _onDefaultColorClick(): void;
131
+ /**
132
+ * Returns the selected item.
133
+ */
134
+ get selectedItem(): IColorPaletteItem | undefined;
135
+ get allColorsInPalette(): IColorPaletteItem[];
117
136
  /**
118
137
  * Returns the selected color.
119
138
  */
@@ -68,6 +68,11 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
68
68
  this._recentColors = [];
69
69
  }
70
70
  onBeforeRendering() {
71
+ this._ensureSingleSelectionOrDeselectAll();
72
+ const selectedItem = this.allColorsInPalette.find(item => item.selected);
73
+ if (selectedItem && !this.showRecentColors) {
74
+ this._selectedColor = selectedItem.value;
75
+ }
71
76
  this.displayedColors.forEach((item, index) => {
72
77
  item.index = index + 1;
73
78
  });
@@ -83,6 +88,10 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
83
88
  this.onPhone = isPhone();
84
89
  }
85
90
  onAfterRendering() {
91
+ if (this._shouldFocusRecentColors && this.hasRecentColors) {
92
+ this.recentColorsElements[0].selected = true;
93
+ this.recentColorsElements[0].focus();
94
+ }
86
95
  if (this.popupMode) {
87
96
  if (this.showDefaultColor) {
88
97
  this.focusFirstFocusableElement();
@@ -109,36 +118,89 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
109
118
  this._recentColors.unshift(this._recentColors.splice(this._recentColors.indexOf(this._selectedColor), 1)[0]);
110
119
  }
111
120
  else {
112
- this._recentColors.unshift(this._selectedColor);
121
+ this._addRecentColor(this._selectedColor);
113
122
  }
114
123
  }
115
124
  this.fireEvent("item-click", {
116
125
  color: this._selectedColor,
117
126
  });
118
127
  }
119
- _onclick(e) {
120
- const target = e.target;
121
- if (target.hasAttribute("ui5-color-palette-item")) {
122
- this.selectColor(target);
128
+ get effectiveColorItems() {
129
+ let colorItems = this.colors;
130
+ if (this.popupMode) {
131
+ colorItems = this.getSlottedNodes("colors");
123
132
  }
133
+ return colorItems;
134
+ }
135
+ /**
136
+ * Ensures that only one item is selected or only the last selected item remains active if more than one are explicitly set as 'selected'.
137
+ * @private
138
+ */
139
+ _ensureSingleSelectionOrDeselectAll() {
140
+ let lastSelectedItem;
141
+ this.allColorsInPalette.forEach(item => {
142
+ if (item.selected) {
143
+ if (lastSelectedItem) {
144
+ lastSelectedItem.selected = false;
145
+ }
146
+ lastSelectedItem = item;
147
+ }
148
+ });
149
+ }
150
+ _onclick(e) {
151
+ this.handleSelection(e.target);
124
152
  }
125
153
  _onkeyup(e) {
126
154
  const target = e.target;
127
- if (isSpace(e) && target.hasAttribute("ui5-color-palette-item")) {
155
+ if (isSpace(e)) {
128
156
  e.preventDefault();
129
- this.selectColor(target);
157
+ this.handleSelection(target);
130
158
  }
131
159
  }
132
160
  _onkeydown(e) {
133
161
  const target = e.target;
134
- if (isEnter(e) && target.hasAttribute("ui5-color-palette-item")) {
135
- this.selectColor(target);
162
+ if (isEnter(e)) {
163
+ this.handleSelection(target);
164
+ }
165
+ if (isSpace(e)) {
166
+ e.preventDefault();
167
+ }
168
+ }
169
+ handleSelection(target) {
170
+ if (!target.hasAttribute("ui5-color-palette-item") || !target.value) {
171
+ return;
172
+ }
173
+ this._shouldFocusRecentColors = false;
174
+ this.selectColor(target);
175
+ // Handle selection for items within the 'recentColorsElements'
176
+ if (this.recentColorsElements.includes(target)) {
177
+ this.recentColorsElements[0].selected = true;
178
+ this.recentColorsElements[0].focus();
179
+ this._currentlySelected = this.recentColorsElements[0];
180
+ }
181
+ else {
182
+ this.allColorsInPalette.forEach(item => {
183
+ item.selected = item === target;
184
+ });
185
+ this._currentlySelected = target;
186
+ }
187
+ this._ensureSingleSelectionOrDeselectAll();
188
+ }
189
+ _handleDefaultColorClick(e) {
190
+ e.preventDefault();
191
+ this._onDefaultColorClick();
192
+ }
193
+ _onDefaultColorKeyUp(e) {
194
+ if (isSpace(e)) {
195
+ this._handleDefaultColorClick(e);
136
196
  }
137
197
  }
138
198
  _onDefaultColorKeyDown(e) {
139
199
  if (isTabNext(e) && this.popupMode) {
140
- e.preventDefault();
141
- this._onDefaultColorClick();
200
+ this._handleDefaultColorClick(e);
201
+ }
202
+ if (isEnter(e)) {
203
+ this._handleDefaultColorClick(e);
142
204
  }
143
205
  if (isDown(e)) {
144
206
  e.stopPropagation();
@@ -180,9 +242,15 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
180
242
  }
181
243
  }
182
244
  }
245
+ _isUpOrDownNavigatableColorPaletteItem(e) {
246
+ return (isUp(e) || isDown(e)) && this._currentlySelected && this.colorPaletteNavigationElements.includes(this._currentlySelected);
247
+ }
183
248
  _onColorContainerKeyDown(e) {
184
249
  const target = e.target;
185
250
  const lastElementInNavigation = this.colorPaletteNavigationElements[this.colorPaletteNavigationElements.length - 1];
251
+ if (this._isUpOrDownNavigatableColorPaletteItem(e)) {
252
+ this._currentlySelected = undefined;
253
+ }
186
254
  if (isTabNext(e) && this.popupMode) {
187
255
  e.preventDefault();
188
256
  this.selectColor(target);
@@ -217,6 +285,9 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
217
285
  }
218
286
  }
219
287
  _onRecentColorsContainerKeyDown(e) {
288
+ if (this._isUpOrDownNavigatableColorPaletteItem(e)) {
289
+ this._currentlySelected = undefined;
290
+ }
220
291
  if (isUp(e)) {
221
292
  if (this.showMoreColors) {
222
293
  const navigationElementsIndex = this.showDefaultColor ? 2 : 1;
@@ -255,20 +326,45 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
255
326
  const colorPicker = this.getColorPicker();
256
327
  this._setColor(colorPicker.value);
257
328
  this._closeDialog();
329
+ this._shouldFocusRecentColors = !this.popupMode;
330
+ this.recentColorsElements[0].selected = true;
331
+ this._currentlySelected = colorPicker.value ? this.recentColorsElements[0] : undefined;
332
+ }
333
+ _addRecentColor(color) {
334
+ if (this.showRecentColors && !this._recentColors.includes(color)) {
335
+ this._recentColors.unshift(color);
336
+ if (this._recentColors.length > this.rowSize) {
337
+ this._recentColors.pop();
338
+ }
339
+ }
258
340
  }
259
341
  _closeDialog() {
260
342
  const dialog = this._getDialog();
261
- dialog.close();
343
+ dialog.open = false;
262
344
  }
263
345
  _openMoreColorsDialog() {
264
346
  const dialog = this._getDialog();
265
- dialog.show();
347
+ dialog.open = true;
266
348
  }
267
349
  _onDefaultColorClick() {
268
350
  if (this.defaultColor) {
269
351
  this._setColor(this.defaultColor);
352
+ this._addRecentColor(this.defaultColor);
353
+ if (this.selectedItem) {
354
+ this.selectedItem.selected = false;
355
+ this._currentlySelected = undefined;
356
+ }
270
357
  }
271
358
  }
359
+ /**
360
+ * Returns the selected item.
361
+ */
362
+ get selectedItem() {
363
+ return [...this.effectiveColorItems, ...this.recentColorsElements].find(item => item.selected);
364
+ }
365
+ get allColorsInPalette() {
366
+ return [...this.effectiveColorItems, ...this.recentColorsElements];
367
+ }
272
368
  /**
273
369
  * Returns the selected color.
274
370
  */
@@ -316,6 +412,9 @@ let ColorPalette = ColorPalette_1 = class ColorPalette extends UI5Element {
316
412
  get colorPaletteNavigationElements() {
317
413
  const navigationElements = [];
318
414
  const rootElement = this.shadowRoot.querySelector(".ui5-cp-root");
415
+ if (this._currentlySelected) {
416
+ navigationElements.push(this._currentlySelected);
417
+ }
319
418
  if (this.showDefaultColor) {
320
419
  navigationElements.push(rootElement.querySelector(".ui5-cp-default-color-button"));
321
420
  }