@ui5/webcomponents 2.0.0-rc.5 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1048) hide show
  1. package/CHANGELOG.md +240 -0
  2. package/README.md +5 -8
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/Avatar.d.ts +13 -18
  5. package/dist/Avatar.js +77 -17
  6. package/dist/Avatar.js.map +1 -1
  7. package/dist/AvatarGroup.d.ts +1 -1
  8. package/dist/AvatarGroup.js +21 -3
  9. package/dist/AvatarGroup.js.map +1 -1
  10. package/dist/Bar.d.ts +1 -1
  11. package/dist/Bar.js +7 -2
  12. package/dist/Bar.js.map +1 -1
  13. package/dist/Breadcrumbs.d.ts +1 -1
  14. package/dist/Breadcrumbs.js +27 -7
  15. package/dist/Breadcrumbs.js.map +1 -1
  16. package/dist/BreadcrumbsItem.d.ts +3 -3
  17. package/dist/BreadcrumbsItem.js +1 -1
  18. package/dist/BreadcrumbsItem.js.map +1 -1
  19. package/dist/BusyIndicator.d.ts +5 -5
  20. package/dist/BusyIndicator.js +33 -5
  21. package/dist/BusyIndicator.js.map +1 -1
  22. package/dist/Button.d.ts +9 -9
  23. package/dist/Button.js +110 -8
  24. package/dist/Button.js.map +1 -1
  25. package/dist/Calendar.d.ts +47 -8
  26. package/dist/Calendar.js +146 -19
  27. package/dist/Calendar.js.map +1 -1
  28. package/dist/CalendarDate.d.ts +1 -0
  29. package/dist/CalendarDate.js +11 -0
  30. package/dist/CalendarDate.js.map +1 -1
  31. package/dist/CalendarDateRange.d.ts +2 -1
  32. package/dist/CalendarDateRange.js +18 -1
  33. package/dist/CalendarDateRange.js.map +1 -1
  34. package/dist/CalendarLegend.js +24 -0
  35. package/dist/CalendarLegend.js.map +1 -1
  36. package/dist/CalendarLegendItem.d.ts +3 -3
  37. package/dist/CalendarLegendItem.js +16 -3
  38. package/dist/CalendarLegendItem.js.map +1 -1
  39. package/dist/CalendarPart.js +1 -2
  40. package/dist/CalendarPart.js.map +1 -1
  41. package/dist/Card.d.ts +4 -4
  42. package/dist/Card.js.map +1 -1
  43. package/dist/CardHeader.d.ts +6 -6
  44. package/dist/CardHeader.js +20 -2
  45. package/dist/CardHeader.js.map +1 -1
  46. package/dist/Carousel.d.ts +10 -9
  47. package/dist/Carousel.js +105 -14
  48. package/dist/Carousel.js.map +1 -1
  49. package/dist/CheckBox.d.ts +12 -11
  50. package/dist/CheckBox.js +86 -4
  51. package/dist/CheckBox.js.map +1 -1
  52. package/dist/ColorPalette.d.ts +2 -4
  53. package/dist/ColorPalette.js +34 -17
  54. package/dist/ColorPalette.js.map +1 -1
  55. package/dist/ColorPaletteItem.d.ts +3 -3
  56. package/dist/ColorPaletteItem.js +37 -5
  57. package/dist/ColorPaletteItem.js.map +1 -1
  58. package/dist/ColorPalettePopover.js +30 -4
  59. package/dist/ColorPalettePopover.js.map +1 -1
  60. package/dist/ColorPicker.d.ts +3 -3
  61. package/dist/ColorPicker.js +49 -8
  62. package/dist/ColorPicker.js.map +1 -1
  63. package/dist/ComboBox.d.ts +46 -29
  64. package/dist/ComboBox.js +214 -128
  65. package/dist/ComboBox.js.map +1 -1
  66. package/dist/ComboBoxItem.d.ts +4 -4
  67. package/dist/ComboBoxItem.js +18 -0
  68. package/dist/ComboBoxItem.js.map +1 -1
  69. package/dist/ComboBoxItemGroup.d.ts +2 -2
  70. package/dist/ComboBoxItemGroup.js +9 -1
  71. package/dist/ComboBoxItemGroup.js.map +1 -1
  72. package/dist/DateComponentBase.d.ts +3 -3
  73. package/dist/DateComponentBase.js +20 -3
  74. package/dist/DateComponentBase.js.map +1 -1
  75. package/dist/DatePicker.d.ts +8 -7
  76. package/dist/DatePicker.js +62 -6
  77. package/dist/DatePicker.js.map +1 -1
  78. package/dist/DateRangePicker.d.ts +9 -2
  79. package/dist/DateRangePicker.js +21 -5
  80. package/dist/DateRangePicker.js.map +1 -1
  81. package/dist/DateTimePicker.d.ts +7 -0
  82. package/dist/DateTimePicker.js +35 -3
  83. package/dist/DateTimePicker.js.map +1 -1
  84. package/dist/DayPicker.js +52 -18
  85. package/dist/DayPicker.js.map +1 -1
  86. package/dist/Dialog.d.ts +2 -2
  87. package/dist/Dialog.js +48 -2
  88. package/dist/Dialog.js.map +1 -1
  89. package/dist/DropIndicator.js +31 -4
  90. package/dist/DropIndicator.js.map +1 -1
  91. package/dist/FileUploader.d.ts +9 -5
  92. package/dist/FileUploader.js +49 -2
  93. package/dist/FileUploader.js.map +1 -1
  94. package/dist/Filters.js +2 -2
  95. package/dist/Filters.js.map +1 -1
  96. package/dist/Form.d.ts +10 -3
  97. package/dist/Form.js +65 -15
  98. package/dist/Form.js.map +1 -1
  99. package/dist/FormGroup.d.ts +5 -3
  100. package/dist/FormGroup.js +20 -11
  101. package/dist/FormGroup.js.map +1 -1
  102. package/dist/FormItem.d.ts +3 -1
  103. package/dist/FormItem.js +16 -5
  104. package/dist/FormItem.js.map +1 -1
  105. package/dist/GridWalker.d.ts +35 -0
  106. package/dist/GridWalker.js +103 -0
  107. package/dist/GridWalker.js.map +1 -0
  108. package/dist/Icon.d.ts +5 -5
  109. package/dist/Icon.js +38 -6
  110. package/dist/Icon.js.map +1 -1
  111. package/dist/Input.d.ts +35 -40
  112. package/dist/Input.js +197 -79
  113. package/dist/Input.js.map +1 -1
  114. package/dist/Label.d.ts +3 -3
  115. package/dist/Label.js +30 -2
  116. package/dist/Label.js.map +1 -1
  117. package/dist/Link.d.ts +45 -15
  118. package/dist/Link.js +69 -8
  119. package/dist/Link.js.map +1 -1
  120. package/dist/List.d.ts +20 -20
  121. package/dist/List.js +75 -17
  122. package/dist/List.js.map +1 -1
  123. package/dist/ListItem.d.ts +11 -5
  124. package/dist/ListItem.js +70 -11
  125. package/dist/ListItem.js.map +1 -1
  126. package/dist/ListItemBase.d.ts +4 -3
  127. package/dist/ListItemBase.js +47 -4
  128. package/dist/ListItemBase.js.map +1 -1
  129. package/dist/{CustomListItem.d.ts → ListItemCustom.d.ts} +4 -4
  130. package/dist/{CustomListItem.js → ListItemCustom.js} +22 -12
  131. package/dist/ListItemCustom.js.map +1 -0
  132. package/dist/ListItemGroup.d.ts +5 -5
  133. package/dist/ListItemGroup.js +11 -4
  134. package/dist/ListItemGroup.js.map +1 -1
  135. package/dist/ListItemGroupHeader.d.ts +2 -3
  136. package/dist/ListItemGroupHeader.js +0 -6
  137. package/dist/ListItemGroupHeader.js.map +1 -1
  138. package/dist/{StandardListItem.d.ts → ListItemStandard.d.ts} +16 -26
  139. package/dist/{StandardListItem.js → ListItemStandard.js} +64 -31
  140. package/dist/ListItemStandard.js.map +1 -0
  141. package/dist/Menu.d.ts +24 -10
  142. package/dist/Menu.js +49 -16
  143. package/dist/Menu.js.map +1 -1
  144. package/dist/MenuItem.d.ts +21 -33
  145. package/dist/MenuItem.js +42 -9
  146. package/dist/MenuItem.js.map +1 -1
  147. package/dist/MenuSeparator.d.ts +25 -0
  148. package/dist/MenuSeparator.js +59 -0
  149. package/dist/MenuSeparator.js.map +1 -0
  150. package/dist/MessageStrip.d.ts +1 -0
  151. package/dist/MessageStrip.js +46 -6
  152. package/dist/MessageStrip.js.map +1 -1
  153. package/dist/MonthPicker.js +14 -7
  154. package/dist/MonthPicker.js.map +1 -1
  155. package/dist/MultiComboBox.d.ts +40 -25
  156. package/dist/MultiComboBox.js +263 -135
  157. package/dist/MultiComboBox.js.map +1 -1
  158. package/dist/MultiComboBoxItem.d.ts +5 -0
  159. package/dist/MultiComboBoxItem.js +11 -0
  160. package/dist/MultiComboBoxItem.js.map +1 -1
  161. package/dist/{MultiComboBoxGroupItem.d.ts → MultiComboBoxItemGroup.d.ts} +14 -6
  162. package/dist/{MultiComboBoxGroupItem.js → MultiComboBoxItemGroup.js} +22 -10
  163. package/dist/MultiComboBoxItemGroup.js.map +1 -0
  164. package/dist/MultiInput.d.ts +4 -4
  165. package/dist/MultiInput.js +18 -2
  166. package/dist/MultiInput.js.map +1 -1
  167. package/dist/NavigationMenu.d.ts +1 -1
  168. package/dist/NavigationMenu.js +0 -2
  169. package/dist/NavigationMenu.js.map +1 -1
  170. package/dist/NavigationMenuItem.d.ts +5 -5
  171. package/dist/NavigationMenuItem.js.map +1 -1
  172. package/dist/Option.d.ts +15 -10
  173. package/dist/Option.js +4 -8
  174. package/dist/Option.js.map +1 -1
  175. package/dist/OptionCustom.d.ts +13 -8
  176. package/dist/OptionCustom.js +4 -8
  177. package/dist/OptionCustom.js.map +1 -1
  178. package/dist/Panel.d.ts +7 -7
  179. package/dist/Panel.js +64 -4
  180. package/dist/Panel.js.map +1 -1
  181. package/dist/Popover.d.ts +2 -2
  182. package/dist/Popover.js +71 -11
  183. package/dist/Popover.js.map +1 -1
  184. package/dist/Popup.d.ts +5 -5
  185. package/dist/Popup.js +46 -4
  186. package/dist/Popup.js.map +1 -1
  187. package/dist/ProgressIndicator.d.ts +4 -4
  188. package/dist/ProgressIndicator.js +24 -4
  189. package/dist/ProgressIndicator.js.map +1 -1
  190. package/dist/RadioButton.d.ts +11 -11
  191. package/dist/RadioButton.js +78 -5
  192. package/dist/RadioButton.js.map +1 -1
  193. package/dist/RangeSlider.js +22 -3
  194. package/dist/RangeSlider.js.map +1 -1
  195. package/dist/RatingIndicator.d.ts +6 -6
  196. package/dist/RatingIndicator.js +55 -6
  197. package/dist/RatingIndicator.js.map +1 -1
  198. package/dist/ResponsivePopover.js +19 -0
  199. package/dist/ResponsivePopover.js.map +1 -1
  200. package/dist/SegmentedButton.d.ts +4 -1
  201. package/dist/SegmentedButton.js +15 -3
  202. package/dist/SegmentedButton.js.map +1 -1
  203. package/dist/SegmentedButtonItem.d.ts +13 -12
  204. package/dist/SegmentedButtonItem.js +51 -9
  205. package/dist/SegmentedButtonItem.js.map +1 -1
  206. package/dist/Select.d.ts +9 -10
  207. package/dist/Select.js +60 -12
  208. package/dist/Select.js.map +1 -1
  209. package/dist/Slider.js +9 -2
  210. package/dist/Slider.js.map +1 -1
  211. package/dist/SliderBase.d.ts +4 -4
  212. package/dist/SliderBase.js +61 -7
  213. package/dist/SliderBase.js.map +1 -1
  214. package/dist/SpecialCalendarDate.d.ts +11 -4
  215. package/dist/SpecialCalendarDate.js +23 -5
  216. package/dist/SpecialCalendarDate.js.map +1 -1
  217. package/dist/SplitButton.d.ts +3 -3
  218. package/dist/SplitButton.js +54 -4
  219. package/dist/SplitButton.js.map +1 -1
  220. package/dist/StepInput.d.ts +9 -9
  221. package/dist/StepInput.js +71 -21
  222. package/dist/StepInput.js.map +1 -1
  223. package/dist/SuggestionItem.d.ts +16 -60
  224. package/dist/SuggestionItem.js +26 -27
  225. package/dist/SuggestionItem.js.map +1 -1
  226. package/dist/SuggestionItemCustom.d.ts +31 -0
  227. package/dist/SuggestionItemCustom.js +48 -0
  228. package/dist/SuggestionItemCustom.js.map +1 -0
  229. package/dist/SuggestionItemGroup.d.ts +19 -0
  230. package/dist/SuggestionItemGroup.js +35 -0
  231. package/dist/SuggestionItemGroup.js.map +1 -0
  232. package/dist/SuggestionListItem.d.ts +4 -4
  233. package/dist/SuggestionListItem.js +3 -3
  234. package/dist/SuggestionListItem.js.map +1 -1
  235. package/dist/Switch.d.ts +17 -17
  236. package/dist/Switch.js +40 -2
  237. package/dist/Switch.js.map +1 -1
  238. package/dist/Tab.d.ts +12 -12
  239. package/dist/Tab.js +43 -4
  240. package/dist/Tab.js.map +1 -1
  241. package/dist/TabContainer.d.ts +6 -6
  242. package/dist/TabContainer.js +85 -18
  243. package/dist/TabContainer.js.map +1 -1
  244. package/dist/TabSeparator.d.ts +2 -2
  245. package/dist/TabSeparator.js.map +1 -1
  246. package/dist/Table.d.ts +271 -0
  247. package/dist/Table.js +464 -0
  248. package/dist/Table.js.map +1 -0
  249. package/dist/TableCell.d.ts +24 -0
  250. package/dist/TableCell.js +51 -0
  251. package/dist/TableCell.js.map +1 -0
  252. package/dist/TableCellBase.d.ts +27 -0
  253. package/dist/TableCellBase.js +64 -0
  254. package/dist/TableCellBase.js.map +1 -0
  255. package/dist/TableExtension.d.ts +6 -0
  256. package/dist/TableExtension.js +7 -0
  257. package/dist/TableExtension.js.map +1 -0
  258. package/dist/TableGrowing.d.ts +126 -0
  259. package/dist/TableGrowing.js +248 -0
  260. package/dist/TableGrowing.js.map +1 -0
  261. package/dist/TableHeaderCell.d.ts +63 -0
  262. package/dist/TableHeaderCell.js +105 -0
  263. package/dist/TableHeaderCell.js.map +1 -0
  264. package/dist/TableHeaderRow.d.ts +46 -0
  265. package/dist/TableHeaderRow.js +106 -0
  266. package/dist/TableHeaderRow.js.map +1 -0
  267. package/dist/TableNavigation.d.ts +38 -0
  268. package/dist/TableNavigation.js +267 -0
  269. package/dist/TableNavigation.js.map +1 -0
  270. package/dist/TableRow.d.ts +60 -0
  271. package/dist/TableRow.js +141 -0
  272. package/dist/TableRow.js.map +1 -0
  273. package/dist/TableRowBase.d.ts +38 -0
  274. package/dist/TableRowBase.js +111 -0
  275. package/dist/TableRowBase.js.map +1 -0
  276. package/dist/TableSelection.d.ts +104 -0
  277. package/dist/TableSelection.js +332 -0
  278. package/dist/TableSelection.js.map +1 -0
  279. package/dist/TableUtils.d.ts +7 -0
  280. package/dist/TableUtils.js +14 -0
  281. package/dist/TableUtils.js.map +1 -0
  282. package/dist/Tag.d.ts +3 -10
  283. package/dist/Tag.js +65 -14
  284. package/dist/Tag.js.map +1 -1
  285. package/dist/Text.js +10 -2
  286. package/dist/Text.js.map +1 -1
  287. package/dist/TextArea.d.ts +10 -10
  288. package/dist/TextArea.js +97 -8
  289. package/dist/TextArea.js.map +1 -1
  290. package/dist/TimePicker.d.ts +10 -9
  291. package/dist/TimePicker.js +45 -5
  292. package/dist/TimePicker.js.map +1 -1
  293. package/dist/TimePickerClock.d.ts +1 -1
  294. package/dist/TimePickerClock.js +121 -14
  295. package/dist/TimePickerClock.js.map +1 -1
  296. package/dist/TimePickerInternals.d.ts +5 -5
  297. package/dist/TimePickerInternals.js +34 -13
  298. package/dist/TimePickerInternals.js.map +1 -1
  299. package/dist/TimeSelectionClocks.js +15 -0
  300. package/dist/TimeSelectionClocks.js.map +1 -1
  301. package/dist/TimeSelectionInputs.d.ts +2 -2
  302. package/dist/TimeSelectionInputs.js +6 -3
  303. package/dist/TimeSelectionInputs.js.map +1 -1
  304. package/dist/Title.d.ts +1 -1
  305. package/dist/Title.js +20 -3
  306. package/dist/Title.js.map +1 -1
  307. package/dist/Toast.d.ts +1 -7
  308. package/dist/Toast.js +52 -23
  309. package/dist/Toast.js.map +1 -1
  310. package/dist/ToggleButton.js +9 -0
  311. package/dist/ToggleButton.js.map +1 -1
  312. package/dist/ToggleSpinButton.d.ts +1 -1
  313. package/dist/ToggleSpinButton.js +22 -4
  314. package/dist/ToggleSpinButton.js.map +1 -1
  315. package/dist/Token.d.ts +2 -2
  316. package/dist/Token.js +49 -1
  317. package/dist/Token.js.map +1 -1
  318. package/dist/Tokenizer.d.ts +4 -3
  319. package/dist/Tokenizer.js +76 -15
  320. package/dist/Tokenizer.js.map +1 -1
  321. package/dist/Toolbar.d.ts +16 -7
  322. package/dist/Toolbar.js +25 -7
  323. package/dist/Toolbar.js.map +1 -1
  324. package/dist/ToolbarButton.d.ts +15 -14
  325. package/dist/ToolbarButton.js +39 -6
  326. package/dist/ToolbarButton.js.map +1 -1
  327. package/dist/ToolbarItem.d.ts +2 -2
  328. package/dist/ToolbarItem.js +18 -3
  329. package/dist/ToolbarItem.js.map +1 -1
  330. package/dist/ToolbarSelect.d.ts +5 -5
  331. package/dist/ToolbarSelect.js +16 -4
  332. package/dist/ToolbarSelect.js.map +1 -1
  333. package/dist/ToolbarSelectOption.js +9 -0
  334. package/dist/ToolbarSelectOption.js.map +1 -1
  335. package/dist/ToolbarSeparator.js +4 -0
  336. package/dist/ToolbarSeparator.js.map +1 -1
  337. package/dist/ToolbarSpacer.js +1 -2
  338. package/dist/ToolbarSpacer.js.map +1 -1
  339. package/dist/Tree.d.ts +12 -12
  340. package/dist/Tree.js +11 -2
  341. package/dist/Tree.js.map +1 -1
  342. package/dist/TreeItem.d.ts +5 -5
  343. package/dist/TreeItem.js +1 -1
  344. package/dist/TreeItem.js.map +1 -1
  345. package/dist/TreeItemBase.d.ts +5 -5
  346. package/dist/TreeItemBase.js +61 -6
  347. package/dist/TreeItemBase.js.map +1 -1
  348. package/dist/TreeItemCustom.js +9 -0
  349. package/dist/TreeItemCustom.js.map +1 -1
  350. package/dist/YearPicker.js +14 -7
  351. package/dist/YearPicker.js.map +1 -1
  352. package/dist/bundle.common.bootstrap.d.ts +52 -1
  353. package/dist/bundle.common.bootstrap.js +103 -0
  354. package/dist/bundle.common.bootstrap.js.map +1 -1
  355. package/dist/bundle.esm.d.ts +7 -21
  356. package/dist/bundle.esm.js +14 -100
  357. package/dist/bundle.esm.js.map +1 -1
  358. package/dist/css/themes/Avatar.css +1 -1
  359. package/dist/css/themes/AvatarGroup.css +1 -1
  360. package/dist/css/themes/Bar.css +1 -1
  361. package/dist/css/themes/Breadcrumbs.css +1 -1
  362. package/dist/css/themes/BusyIndicator.css +1 -1
  363. package/dist/css/themes/Button.css +1 -1
  364. package/dist/css/themes/Calendar.css +1 -1
  365. package/dist/css/themes/CalendarHeader.css +1 -1
  366. package/dist/css/themes/CalendarLegend.css +1 -1
  367. package/dist/css/themes/CalendarLegendItem.css +1 -1
  368. package/dist/css/themes/Card.css +1 -1
  369. package/dist/css/themes/CardHeader.css +1 -1
  370. package/dist/css/themes/Carousel.css +1 -1
  371. package/dist/css/themes/CheckBox.css +1 -1
  372. package/dist/css/themes/ColorPalette.css +1 -1
  373. package/dist/css/themes/ColorPaletteItem.css +1 -1
  374. package/dist/css/themes/ColorPalettePopover.css +1 -1
  375. package/dist/css/themes/ColorPicker.css +1 -1
  376. package/dist/css/themes/ComboBox.css +1 -1
  377. package/dist/css/themes/DatePicker.css +1 -1
  378. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  379. package/dist/css/themes/DayPicker.css +1 -1
  380. package/dist/css/themes/Dialog.css +1 -1
  381. package/dist/css/themes/FileUploader.css +1 -1
  382. package/dist/css/themes/Form.css +1 -1
  383. package/dist/css/themes/FormItem.css +1 -1
  384. package/dist/css/themes/FormLabelSpan.css +1 -1
  385. package/dist/css/themes/GrowingButton.css +1 -1
  386. package/dist/css/themes/Icon.css +1 -1
  387. package/dist/css/themes/Input.css +1 -1
  388. package/dist/css/themes/InputIcon.css +1 -1
  389. package/dist/css/themes/InputSharedStyles.css +1 -1
  390. package/dist/css/themes/Link.css +1 -1
  391. package/dist/css/themes/List.css +1 -1
  392. package/dist/css/themes/ListItem.css +1 -1
  393. package/dist/css/themes/ListItemBase.css +1 -1
  394. package/dist/css/themes/ListItemCustom.css +1 -0
  395. package/dist/css/themes/ListItemGroup.css +1 -1
  396. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  397. package/dist/css/themes/ListItemIcon.css +1 -1
  398. package/dist/css/themes/Menu.css +1 -1
  399. package/dist/css/themes/MenuItem.css +1 -1
  400. package/dist/css/themes/MenuSeparator.css +1 -0
  401. package/dist/css/themes/MessageStrip.css +1 -1
  402. package/dist/css/themes/MonthPicker.css +1 -1
  403. package/dist/css/themes/MultiComboBox.css +1 -1
  404. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  405. package/dist/css/themes/MultiInput.css +1 -1
  406. package/dist/css/themes/NavigationMenu.css +1 -1
  407. package/dist/css/themes/NavigationMenuItem.css +1 -1
  408. package/dist/css/themes/OptionBase.css +1 -1
  409. package/dist/css/themes/Panel.css +1 -1
  410. package/dist/css/themes/Popover.css +1 -1
  411. package/dist/css/themes/PopupsCommon.css +1 -1
  412. package/dist/css/themes/ProgressIndicator.css +1 -1
  413. package/dist/css/themes/RadioButton.css +1 -1
  414. package/dist/css/themes/RangeSlider.css +1 -1
  415. package/dist/css/themes/RatingIndicator.css +1 -1
  416. package/dist/css/themes/ResponsivePopover.css +1 -1
  417. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  418. package/dist/css/themes/SegmentedButton.css +1 -1
  419. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  420. package/dist/css/themes/Select.css +1 -1
  421. package/dist/css/themes/SliderBase.css +1 -1
  422. package/dist/css/themes/SplitButton.css +1 -1
  423. package/dist/css/themes/StepInput.css +1 -1
  424. package/dist/css/themes/SuggestionItem.css +1 -0
  425. package/dist/css/themes/SuggestionItemCustom.css +1 -0
  426. package/dist/css/themes/Suggestions.css +1 -1
  427. package/dist/css/themes/Switch.css +1 -1
  428. package/dist/css/themes/TabContainer.css +1 -1
  429. package/dist/css/themes/TabInOverflow.css +1 -1
  430. package/dist/css/themes/TabInStrip.css +1 -1
  431. package/dist/css/themes/TabSemanticIcon.css +1 -1
  432. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  433. package/dist/css/themes/Table.css +1 -0
  434. package/dist/css/themes/TableCell.css +1 -0
  435. package/dist/css/themes/TableCellBase.css +1 -0
  436. package/dist/css/themes/TableGrowing.css +1 -0
  437. package/dist/css/themes/TableHeaderCell.css +1 -0
  438. package/dist/css/themes/TableHeaderRow.css +1 -0
  439. package/dist/css/themes/TableRow.css +1 -0
  440. package/dist/css/themes/TableRowBase.css +1 -0
  441. package/dist/css/themes/Tag.css +1 -1
  442. package/dist/css/themes/Text.css +1 -1
  443. package/dist/css/themes/TextArea.css +1 -1
  444. package/dist/css/themes/TimePicker.css +1 -1
  445. package/dist/css/themes/Toast.css +1 -1
  446. package/dist/css/themes/ToggleButton.css +1 -1
  447. package/dist/css/themes/Token.css +1 -1
  448. package/dist/css/themes/Tokenizer.css +1 -1
  449. package/dist/css/themes/TokenizerPopover.css +1 -1
  450. package/dist/css/themes/Toolbar.css +1 -1
  451. package/dist/css/themes/ToolbarPopover.css +1 -1
  452. package/dist/css/themes/TreeItem.css +1 -1
  453. package/dist/css/themes/ValueStateMessage.css +1 -1
  454. package/dist/css/themes/YearPicker.css +1 -1
  455. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  456. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  457. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  458. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  459. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  460. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  461. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  462. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  463. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  464. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  465. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  466. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  467. package/dist/custom-elements-internal.json +7869 -6647
  468. package/dist/custom-elements.json +5851 -4966
  469. package/dist/features/InputSuggestions.d.ts +23 -49
  470. package/dist/features/InputSuggestions.js +63 -107
  471. package/dist/features/InputSuggestions.js.map +1 -1
  472. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  473. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  474. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  475. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  476. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  477. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  478. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  479. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  480. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  481. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  482. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  483. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  484. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  485. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  486. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  487. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  488. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  489. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  490. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  491. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  492. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  493. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  494. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  495. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  496. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  497. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  498. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  499. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  500. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  501. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  502. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  503. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  504. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  505. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  506. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  507. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  508. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  509. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  510. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  511. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  512. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  513. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  514. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  515. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  516. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  517. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  518. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  519. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  520. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  521. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  522. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  523. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  524. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  525. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  526. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  527. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  528. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  529. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  530. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  531. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  532. package/dist/generated/i18n/i18n-defaults.d.ts +11 -2
  533. package/dist/generated/i18n/i18n-defaults.js +11 -2
  534. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  535. package/dist/generated/templates/AvatarTemplate.lit.js +1 -1
  536. package/dist/generated/templates/AvatarTemplate.lit.js.map +1 -1
  537. package/dist/generated/templates/CalendarHeaderTemplate.lit.d.ts +1 -1
  538. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +3 -3
  539. package/dist/generated/templates/CalendarHeaderTemplate.lit.js.map +1 -1
  540. package/dist/generated/templates/CalendarTemplate.lit.js +4 -2
  541. package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -1
  542. package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
  543. package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -1
  544. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +7 -7
  545. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
  546. package/dist/generated/templates/ComboBoxTemplate.lit.js +7 -7
  547. package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
  548. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  549. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
  550. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  551. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
  552. package/dist/generated/templates/DateRangePickerTemplate.lit.js +1 -1
  553. package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -1
  554. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  555. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
  556. package/dist/generated/templates/DateTimePickerTemplate.lit.js +1 -1
  557. package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
  558. package/dist/generated/templates/InputPopoverTemplate.lit.js +8 -12
  559. package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
  560. package/dist/generated/templates/InputTemplate.lit.js +8 -12
  561. package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
  562. package/dist/generated/templates/LinkTemplate.lit.js +5 -3
  563. package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
  564. package/dist/generated/templates/{CustomListItemTemplate.lit.d.ts → ListItemCustomTemplate.lit.d.ts} +2 -2
  565. package/dist/generated/templates/{CustomListItemTemplate.lit.js → ListItemCustomTemplate.lit.js} +1 -1
  566. package/dist/generated/templates/{CustomListItemTemplate.lit.js.map → ListItemCustomTemplate.lit.js.map} +1 -1
  567. package/dist/generated/templates/{StandardListItemTemplate.lit.d.ts → ListItemStandardTemplate.lit.d.ts} +2 -2
  568. package/dist/generated/templates/{StandardListItemTemplate.lit.js → ListItemStandardTemplate.lit.js} +19 -21
  569. package/dist/generated/templates/ListItemStandardTemplate.lit.js.map +1 -0
  570. package/dist/generated/templates/MenuSeparatorTemplate.lit.d.ts +4 -0
  571. package/dist/generated/templates/MenuSeparatorTemplate.lit.js +5 -0
  572. package/dist/generated/templates/MenuSeparatorTemplate.lit.js.map +1 -0
  573. package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
  574. package/dist/generated/templates/MessageStripTemplate.lit.js.map +1 -1
  575. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +19 -15
  576. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
  577. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +40 -32
  578. package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
  579. package/dist/generated/templates/MultiInputTemplate.lit.js +7 -11
  580. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
  581. package/dist/generated/templates/SuggestionItemCustomTemplate.lit.d.ts +4 -0
  582. package/dist/generated/templates/SuggestionItemCustomTemplate.lit.js +5 -0
  583. package/dist/generated/templates/SuggestionItemCustomTemplate.lit.js.map +1 -0
  584. package/dist/generated/templates/SuggestionItemGroupTemplate.lit.d.ts +4 -0
  585. package/dist/generated/templates/SuggestionItemGroupTemplate.lit.js +8 -0
  586. package/dist/generated/templates/SuggestionItemGroupTemplate.lit.js.map +1 -0
  587. package/dist/generated/templates/SuggestionItemTemplate.lit.d.ts +4 -0
  588. package/dist/generated/templates/SuggestionItemTemplate.lit.js +6 -0
  589. package/dist/generated/templates/SuggestionItemTemplate.lit.js.map +1 -0
  590. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +21 -23
  591. package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -1
  592. package/dist/generated/templates/TabContainerTemplate.lit.js +2 -2
  593. package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
  594. package/dist/generated/templates/TableCellTemplate.lit.d.ts +4 -0
  595. package/dist/generated/templates/TableCellTemplate.lit.js +8 -0
  596. package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -0
  597. package/dist/generated/templates/TableGrowingTemplate.lit.d.ts +4 -0
  598. package/dist/generated/templates/TableGrowingTemplate.lit.js +7 -0
  599. package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -0
  600. package/dist/generated/templates/TableHeaderCellTemplate.lit.d.ts +4 -0
  601. package/dist/generated/templates/TableHeaderCellTemplate.lit.js +5 -0
  602. package/dist/generated/templates/TableHeaderCellTemplate.lit.js.map +1 -0
  603. package/dist/generated/templates/TableHeaderRowTemplate.lit.d.ts +4 -0
  604. package/dist/generated/templates/TableHeaderRowTemplate.lit.js +9 -0
  605. package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +1 -0
  606. package/dist/generated/templates/TableRowTemplate.lit.d.ts +4 -0
  607. package/dist/generated/templates/TableRowTemplate.lit.js +12 -0
  608. package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -0
  609. package/dist/generated/templates/TableTemplate.lit.d.ts +4 -0
  610. package/dist/generated/templates/TableTemplate.lit.js +10 -0
  611. package/dist/generated/templates/TableTemplate.lit.js.map +1 -0
  612. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
  613. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
  614. package/dist/generated/templates/TimePickerTemplate.lit.js +1 -1
  615. package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
  616. package/dist/generated/templates/ToastTemplate.lit.js +1 -1
  617. package/dist/generated/templates/ToastTemplate.lit.js.map +1 -1
  618. package/dist/generated/themes/Avatar.css.js +1 -1
  619. package/dist/generated/themes/Avatar.css.js.map +1 -1
  620. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  621. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  622. package/dist/generated/themes/Bar.css.js +1 -1
  623. package/dist/generated/themes/Bar.css.js.map +1 -1
  624. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  625. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  626. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  627. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  628. package/dist/generated/themes/Button.css.js +1 -1
  629. package/dist/generated/themes/Button.css.js.map +1 -1
  630. package/dist/generated/themes/Calendar.css.js +1 -1
  631. package/dist/generated/themes/Calendar.css.js.map +1 -1
  632. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  633. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  634. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  635. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  636. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  637. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  638. package/dist/generated/themes/Card.css.js +1 -1
  639. package/dist/generated/themes/Card.css.js.map +1 -1
  640. package/dist/generated/themes/CardHeader.css.js +1 -1
  641. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  642. package/dist/generated/themes/Carousel.css.js +1 -1
  643. package/dist/generated/themes/Carousel.css.js.map +1 -1
  644. package/dist/generated/themes/CheckBox.css.js +1 -1
  645. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  646. package/dist/generated/themes/ColorPalette.css.js +1 -1
  647. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  648. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  649. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  650. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  651. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  652. package/dist/generated/themes/ColorPicker.css.js +1 -1
  653. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  654. package/dist/generated/themes/ComboBox.css.js +1 -1
  655. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  656. package/dist/generated/themes/DatePicker.css.js +1 -1
  657. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  658. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  659. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  660. package/dist/generated/themes/DayPicker.css.js +1 -1
  661. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  662. package/dist/generated/themes/Dialog.css.js +1 -1
  663. package/dist/generated/themes/Dialog.css.js.map +1 -1
  664. package/dist/generated/themes/FileUploader.css.js +1 -1
  665. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  666. package/dist/generated/themes/Form.css.js +1 -1
  667. package/dist/generated/themes/Form.css.js.map +1 -1
  668. package/dist/generated/themes/FormItem.css.js +1 -1
  669. package/dist/generated/themes/FormItem.css.js.map +1 -1
  670. package/dist/generated/themes/FormLabelSpan.css.js +1 -1
  671. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
  672. package/dist/generated/themes/GrowingButton.css.js +1 -1
  673. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  674. package/dist/generated/themes/Icon.css.js +1 -1
  675. package/dist/generated/themes/Icon.css.js.map +1 -1
  676. package/dist/generated/themes/Input.css.js +1 -1
  677. package/dist/generated/themes/Input.css.js.map +1 -1
  678. package/dist/generated/themes/InputIcon.css.js +1 -1
  679. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  680. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  681. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  682. package/dist/generated/themes/Link.css.js +1 -1
  683. package/dist/generated/themes/Link.css.js.map +1 -1
  684. package/dist/generated/themes/List.css.js +1 -1
  685. package/dist/generated/themes/List.css.js.map +1 -1
  686. package/dist/generated/themes/ListItem.css.js +1 -1
  687. package/dist/generated/themes/ListItem.css.js.map +1 -1
  688. package/dist/generated/themes/ListItemBase.css.js +1 -1
  689. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  690. package/dist/generated/themes/ListItemCustom.css.js +9 -0
  691. package/dist/generated/themes/{CustomListItem.css.js.map → ListItemCustom.css.js.map} +1 -1
  692. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  693. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  694. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  695. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  696. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  697. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  698. package/dist/generated/themes/Menu.css.js +1 -1
  699. package/dist/generated/themes/Menu.css.js.map +1 -1
  700. package/dist/generated/themes/MenuItem.css.js +1 -1
  701. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  702. package/dist/generated/themes/MenuSeparator.css.d.ts +3 -0
  703. package/dist/generated/themes/MenuSeparator.css.js +9 -0
  704. package/dist/generated/themes/MenuSeparator.css.js.map +1 -0
  705. package/dist/generated/themes/MessageStrip.css.js +1 -1
  706. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  707. package/dist/generated/themes/MonthPicker.css.js +1 -1
  708. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  709. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  710. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  711. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  712. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  713. package/dist/generated/themes/MultiInput.css.js +1 -1
  714. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  715. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  716. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  717. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  718. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  719. package/dist/generated/themes/OptionBase.css.js +1 -1
  720. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  721. package/dist/generated/themes/Panel.css.js +1 -1
  722. package/dist/generated/themes/Panel.css.js.map +1 -1
  723. package/dist/generated/themes/Popover.css.js +1 -1
  724. package/dist/generated/themes/Popover.css.js.map +1 -1
  725. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  726. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  727. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  728. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  729. package/dist/generated/themes/RadioButton.css.js +1 -1
  730. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  731. package/dist/generated/themes/RangeSlider.css.js +1 -1
  732. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  733. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  734. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  735. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  736. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  737. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  738. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  739. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  740. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  741. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  742. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  743. package/dist/generated/themes/Select.css.js +1 -1
  744. package/dist/generated/themes/Select.css.js.map +1 -1
  745. package/dist/generated/themes/SliderBase.css.js +1 -1
  746. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  747. package/dist/generated/themes/SplitButton.css.js +1 -1
  748. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  749. package/dist/generated/themes/StepInput.css.js +1 -1
  750. package/dist/generated/themes/StepInput.css.js.map +1 -1
  751. package/dist/generated/themes/SuggestionItem.css.d.ts +3 -0
  752. package/dist/generated/themes/SuggestionItem.css.js +9 -0
  753. package/dist/generated/themes/SuggestionItem.css.js.map +1 -0
  754. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +3 -0
  755. package/dist/generated/themes/SuggestionItemCustom.css.js +9 -0
  756. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -0
  757. package/dist/generated/themes/Suggestions.css.js +1 -1
  758. package/dist/generated/themes/Suggestions.css.js.map +1 -1
  759. package/dist/generated/themes/Switch.css.js +1 -1
  760. package/dist/generated/themes/Switch.css.js.map +1 -1
  761. package/dist/generated/themes/TabContainer.css.js +1 -1
  762. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  763. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  764. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  765. package/dist/generated/themes/TabInStrip.css.js +1 -1
  766. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  767. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  768. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  769. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  770. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  771. package/dist/generated/themes/Table.css.d.ts +3 -0
  772. package/dist/generated/themes/Table.css.js +9 -0
  773. package/dist/generated/themes/Table.css.js.map +1 -0
  774. package/dist/generated/themes/TableCell.css.d.ts +3 -0
  775. package/dist/generated/themes/TableCell.css.js +9 -0
  776. package/dist/generated/themes/TableCell.css.js.map +1 -0
  777. package/dist/generated/themes/TableCellBase.css.d.ts +3 -0
  778. package/dist/generated/themes/TableCellBase.css.js +9 -0
  779. package/dist/generated/themes/TableCellBase.css.js.map +1 -0
  780. package/dist/generated/themes/TableGrowing.css.d.ts +3 -0
  781. package/dist/generated/themes/TableGrowing.css.js +9 -0
  782. package/dist/generated/themes/TableGrowing.css.js.map +1 -0
  783. package/dist/generated/themes/TableHeaderCell.css.d.ts +3 -0
  784. package/dist/generated/themes/TableHeaderCell.css.js +9 -0
  785. package/dist/generated/themes/TableHeaderCell.css.js.map +1 -0
  786. package/dist/generated/themes/TableHeaderRow.css.d.ts +3 -0
  787. package/dist/generated/themes/TableHeaderRow.css.js +9 -0
  788. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -0
  789. package/dist/generated/themes/TableRow.css.d.ts +3 -0
  790. package/dist/generated/themes/TableRow.css.js +9 -0
  791. package/dist/generated/themes/TableRow.css.js.map +1 -0
  792. package/dist/generated/themes/TableRowBase.css.d.ts +3 -0
  793. package/dist/generated/themes/TableRowBase.css.js +9 -0
  794. package/dist/generated/themes/TableRowBase.css.js.map +1 -0
  795. package/dist/generated/themes/Tag.css.js +1 -1
  796. package/dist/generated/themes/Tag.css.js.map +1 -1
  797. package/dist/generated/themes/Text.css.js +1 -1
  798. package/dist/generated/themes/Text.css.js.map +1 -1
  799. package/dist/generated/themes/TextArea.css.js +1 -1
  800. package/dist/generated/themes/TextArea.css.js.map +1 -1
  801. package/dist/generated/themes/TimePicker.css.js +1 -1
  802. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  803. package/dist/generated/themes/Toast.css.js +1 -1
  804. package/dist/generated/themes/Toast.css.js.map +1 -1
  805. package/dist/generated/themes/ToggleButton.css.js +1 -1
  806. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  807. package/dist/generated/themes/Token.css.js +1 -1
  808. package/dist/generated/themes/Token.css.js.map +1 -1
  809. package/dist/generated/themes/Tokenizer.css.js +1 -1
  810. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  811. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  812. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  813. package/dist/generated/themes/Toolbar.css.js +1 -1
  814. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  815. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  816. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  817. package/dist/generated/themes/TreeItem.css.js +1 -1
  818. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  819. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  820. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  821. package/dist/generated/themes/YearPicker.css.js +1 -1
  822. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  823. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  824. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  825. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  826. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  827. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  828. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  829. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  830. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  831. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  832. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  833. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  834. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  835. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  836. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  837. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  838. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  839. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  840. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  841. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  842. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  843. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  844. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  845. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  846. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  847. package/dist/popup-utils/OpenedPopupsRegistry.d.ts +1 -1
  848. package/dist/popup-utils/OpenedPopupsRegistry.js +0 -1
  849. package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
  850. package/dist/types/IconMode.d.ts +4 -4
  851. package/dist/types/IconMode.js +4 -4
  852. package/dist/types/IconMode.js.map +1 -1
  853. package/dist/types/{ListSeparators.d.ts → ListSeparator.d.ts} +3 -2
  854. package/dist/types/{ListSeparators.js → ListSeparator.js} +9 -8
  855. package/dist/types/ListSeparator.js.map +1 -0
  856. package/dist/types/TableGrowingMode.d.ts +18 -0
  857. package/dist/types/TableGrowingMode.js +20 -0
  858. package/dist/types/TableGrowingMode.js.map +1 -0
  859. package/dist/types/TableOverflowMode.d.ts +18 -0
  860. package/dist/types/TableOverflowMode.js +20 -0
  861. package/dist/types/TableOverflowMode.js.map +1 -0
  862. package/dist/types/TableSelectionMode.d.ts +23 -0
  863. package/dist/types/TableSelectionMode.js +25 -0
  864. package/dist/types/TableSelectionMode.js.map +1 -0
  865. package/dist/types/TagDesign.d.ts +0 -6
  866. package/dist/types/TagDesign.js +0 -6
  867. package/dist/types/TagDesign.js.map +1 -1
  868. package/dist/types/ToolbarDesign.d.ts +18 -0
  869. package/dist/types/ToolbarDesign.js +20 -0
  870. package/dist/types/ToolbarDesign.js.map +1 -0
  871. package/dist/vscode.html-custom-data.json +375 -228
  872. package/dist/web-types.json +1533 -1160
  873. package/package.json +11 -9
  874. package/src/Avatar.hbs +1 -1
  875. package/src/Calendar.hbs +3 -19
  876. package/src/CalendarHeader.hbs +10 -10
  877. package/src/Carousel.hbs +1 -0
  878. package/src/ComboBoxPopover.hbs +22 -10
  879. package/src/DatePickerPopover.hbs +1 -0
  880. package/src/InputPopover.hbs +1 -22
  881. package/src/Link.hbs +22 -1
  882. package/src/{StandardListItem.hbs → ListItemStandard.hbs} +3 -9
  883. package/src/MenuSeparator.hbs +6 -0
  884. package/src/MessageStrip.hbs +1 -1
  885. package/src/MultiComboBox.hbs +18 -1
  886. package/src/MultiComboBoxPopover.hbs +26 -7
  887. package/src/SuggestionItem.hbs +14 -0
  888. package/src/SuggestionItemCustom.hbs +5 -0
  889. package/src/SuggestionItemGroup.hbs +1 -0
  890. package/src/SuggestionListItem.hbs +1 -1
  891. package/src/TabContainer.hbs +2 -2
  892. package/src/Table.hbs +53 -0
  893. package/src/TableCell.hbs +11 -0
  894. package/src/TableGrowing.hbs +19 -0
  895. package/src/TableHeaderCell.hbs +1 -0
  896. package/src/TableHeaderRow.hbs +23 -0
  897. package/src/TableRow.hbs +34 -0
  898. package/src/TimePickerPopover.hbs +1 -0
  899. package/src/Toast.hbs +1 -1
  900. package/src/i18n/messagebundle.properties +26 -4
  901. package/src/i18n/messagebundle_ar.properties +15 -2
  902. package/src/i18n/messagebundle_bg.properties +15 -2
  903. package/src/i18n/messagebundle_ca.properties +31 -18
  904. package/src/i18n/messagebundle_cnr.properties +15 -2
  905. package/src/i18n/messagebundle_cs.properties +15 -2
  906. package/src/i18n/messagebundle_cy.properties +25 -12
  907. package/src/i18n/messagebundle_da.properties +15 -2
  908. package/src/i18n/messagebundle_de.properties +18 -5
  909. package/src/i18n/messagebundle_el.properties +15 -2
  910. package/src/i18n/messagebundle_en.properties +15 -2
  911. package/src/i18n/messagebundle_en_GB.properties +15 -2
  912. package/src/i18n/messagebundle_en_US_saprigi.properties +15 -2
  913. package/src/i18n/messagebundle_es.properties +15 -2
  914. package/src/i18n/messagebundle_es_MX.properties +18 -5
  915. package/src/i18n/messagebundle_et.properties +15 -2
  916. package/src/i18n/messagebundle_fi.properties +21 -8
  917. package/src/i18n/messagebundle_fr.properties +33 -20
  918. package/src/i18n/messagebundle_fr_CA.properties +33 -20
  919. package/src/i18n/messagebundle_hi.properties +15 -2
  920. package/src/i18n/messagebundle_hr.properties +15 -2
  921. package/src/i18n/messagebundle_hu.properties +15 -2
  922. package/src/i18n/messagebundle_id.properties +15 -2
  923. package/src/i18n/messagebundle_it.properties +19 -6
  924. package/src/i18n/messagebundle_iw.properties +17 -4
  925. package/src/i18n/messagebundle_ja.properties +15 -2
  926. package/src/i18n/messagebundle_kk.properties +19 -6
  927. package/src/i18n/messagebundle_ko.properties +18 -5
  928. package/src/i18n/messagebundle_lt.properties +15 -2
  929. package/src/i18n/messagebundle_lv.properties +15 -2
  930. package/src/i18n/messagebundle_mk.properties +15 -2
  931. package/src/i18n/messagebundle_ms.properties +15 -2
  932. package/src/i18n/messagebundle_nl.properties +15 -2
  933. package/src/i18n/messagebundle_no.properties +15 -2
  934. package/src/i18n/messagebundle_pl.properties +15 -2
  935. package/src/i18n/messagebundle_pt.properties +15 -2
  936. package/src/i18n/messagebundle_pt_PT.properties +15 -2
  937. package/src/i18n/messagebundle_ro.properties +15 -2
  938. package/src/i18n/messagebundle_ru.properties +15 -2
  939. package/src/i18n/messagebundle_sh.properties +15 -2
  940. package/src/i18n/messagebundle_sk.properties +15 -2
  941. package/src/i18n/messagebundle_sl.properties +15 -2
  942. package/src/i18n/messagebundle_sr.properties +15 -2
  943. package/src/i18n/messagebundle_sv.properties +21 -8
  944. package/src/i18n/messagebundle_th.properties +16 -3
  945. package/src/i18n/messagebundle_tr.properties +16 -3
  946. package/src/i18n/messagebundle_uk.properties +16 -3
  947. package/src/i18n/messagebundle_vi.properties +15 -2
  948. package/src/i18n/messagebundle_zh_CN.properties +15 -2
  949. package/src/i18n/messagebundle_zh_TW.properties +15 -2
  950. package/src/themes/Avatar.css +1 -5
  951. package/src/themes/AvatarGroup.css +3 -3
  952. package/src/themes/BusyIndicator.css +4 -0
  953. package/src/themes/Calendar.css +6 -5
  954. package/src/themes/CheckBox.css +7 -12
  955. package/src/themes/Icon.css +1 -1
  956. package/src/themes/Link.css +27 -0
  957. package/src/themes/ListItem.css +9 -13
  958. package/src/themes/ListItemBase.css +10 -9
  959. package/src/themes/MenuItem.css +0 -4
  960. package/src/themes/MenuSeparator.css +11 -0
  961. package/src/themes/SegmentedButtonItem.css +7 -1
  962. package/src/themes/SuggestionItem.css +14 -0
  963. package/src/themes/SuggestionItemCustom.css +3 -0
  964. package/src/themes/Suggestions.css +0 -5
  965. package/src/themes/TabContainer.css +1 -1
  966. package/src/themes/Table.css +42 -0
  967. package/src/themes/TableCell.css +9 -0
  968. package/src/themes/TableCellBase.css +21 -0
  969. package/src/themes/TableGrowing.css +41 -0
  970. package/src/themes/TableHeaderCell.css +8 -0
  971. package/src/themes/TableHeaderRow.css +20 -0
  972. package/src/themes/TableRow.css +48 -0
  973. package/src/themes/TableRowBase.css +20 -0
  974. package/src/themes/Tag.css +21 -102
  975. package/src/themes/TextArea.css +2 -2
  976. package/src/themes/Toolbar.css +7 -1
  977. package/src/themes/TreeItem.css +5 -6
  978. package/src/themes/base/BusyIndicator-parameters.css +1 -0
  979. package/src/themes/base/CheckBox-parameters.css +2 -4
  980. package/src/themes/base/Table-parameters.css +5 -0
  981. package/src/themes/base/Tag-parameters.css +3 -51
  982. package/src/themes/base/sizes-parameters.css +3 -2
  983. package/src/themes/sap_fiori_3/CheckBox-parameters.css +0 -3
  984. package/src/themes/sap_fiori_3/Tag-parameters.css +5 -0
  985. package/src/themes/sap_fiori_3/parameters-bundle.css +2 -1
  986. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +0 -3
  987. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  988. package/src/themes/sap_fiori_3_hcb/BusyIndicator-parameters.css +5 -0
  989. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +1 -0
  990. package/src/themes/sap_fiori_3_hcb/Tag-parameters.css +0 -45
  991. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +3 -2
  992. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +4 -0
  993. package/src/themes/sap_fiori_3_hcw/BusyIndicator-parameters.css +5 -0
  994. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +1 -0
  995. package/src/themes/sap_fiori_3_hcw/Tag-parameters.css +0 -45
  996. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +3 -2
  997. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +4 -0
  998. package/src/themes/sap_horizon/CheckBox-parameters.css +0 -1
  999. package/src/themes/sap_horizon/ProgressIndicatorLayout-parameters.css +0 -5
  1000. package/src/themes/sap_horizon/RatingIndicator-parameters.css +5 -3
  1001. package/src/themes/sap_horizon/Tag-parameters.css +0 -33
  1002. package/src/themes/sap_horizon/parameters-bundle.css +1 -0
  1003. package/src/themes/sap_horizon/rtl-parameters.css +2 -0
  1004. package/src/themes/sap_horizon/sizes-parameters.css +3 -0
  1005. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +0 -1
  1006. package/src/themes/sap_horizon_dark/RatingIndicator-parameters.css +5 -3
  1007. package/src/themes/sap_horizon_dark/Tag-parameters.css +0 -33
  1008. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  1009. package/src/themes/sap_horizon_dark/sizes-parameters.css +3 -0
  1010. package/src/themes/sap_horizon_dark_exp/Tag-parameters.css +1 -43
  1011. package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -0
  1012. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +0 -1
  1013. package/src/themes/sap_horizon_exp/Tag-parameters.css +1 -43
  1014. package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  1015. package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +1 -0
  1016. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +1 -1
  1017. package/src/themes/sap_horizon_hcb/RatingIndicator-parameters.css +5 -3
  1018. package/src/themes/sap_horizon_hcb/Tag-parameters.css +0 -39
  1019. package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  1020. package/src/themes/sap_horizon_hcb/sizes-parameters.css +4 -0
  1021. package/src/themes/sap_horizon_hcb_exp/Tag-parameters.css +1 -43
  1022. package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -0
  1023. package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +1 -0
  1024. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +1 -1
  1025. package/src/themes/sap_horizon_hcw/RatingIndicator-parameters.css +5 -3
  1026. package/src/themes/sap_horizon_hcw/Tag-parameters.css +0 -41
  1027. package/src/themes/sap_horizon_hcw/sizes-parameters.css +4 -0
  1028. package/src/themes/sap_horizon_hcw_exp/Tag-parameters.css +1 -43
  1029. package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -0
  1030. package/dist/CalendarHeader.d.ts +0 -80
  1031. package/dist/CalendarHeader.js +0 -160
  1032. package/dist/CalendarHeader.js.map +0 -1
  1033. package/dist/CustomListItem.js.map +0 -1
  1034. package/dist/MultiComboBoxGroupItem.js.map +0 -1
  1035. package/dist/StandardListItem.js.map +0 -1
  1036. package/dist/SuggestionGroupItem.d.ts +0 -28
  1037. package/dist/SuggestionGroupItem.js +0 -43
  1038. package/dist/SuggestionGroupItem.js.map +0 -1
  1039. package/dist/css/themes/CustomListItem.css +0 -1
  1040. package/dist/generated/templates/StandardListItemTemplate.lit.js.map +0 -1
  1041. package/dist/generated/themes/CustomListItem.css.js +0 -9
  1042. package/dist/styles/Icon.css +0 -33
  1043. package/dist/styles/Icon.module.css +0 -33
  1044. package/dist/types/ListSeparators.js.map +0 -1
  1045. package/src/styles/Icon.module.css +0 -1
  1046. /package/dist/generated/themes/{CustomListItem.css.d.ts → ListItemCustom.css.d.ts} +0 -0
  1047. /package/src/{CustomListItem.hbs → ListItemCustom.hbs} +0 -0
  1048. /package/src/themes/{CustomListItem.css → ListItemCustom.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element, { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\ntype ToolbarMinWidthChangeEventDetail = {\n\tminWidth: number,\n};\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property({ type: ToolbarAlign, defaultValue: ToolbarAlign.End })\n\talignContent!: `${ToolbarAlign}`;\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tminContentWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: AriaHasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.open;\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.opener = this.overflowButtonDOM!;\n\t\toverflowPopover!.open = true;\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.open = false;\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0,\n\t\t\tminWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tif (item.overflowPriority === ToolbarItemOverflowBehavior.NeverOverflow) {\n\t\t\t\tminWidth += itemWidth;\n\t\t\t}\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tif (minWidth !== this.minContentWidth) {\n\t\t\tconst spaceAroundContent = this.offsetWidth - this.getDomRef()!.offsetWidth;\n\t\t\tthis.fireEvent<ToolbarMinWidthChangeEventDetail>(\"_min-content-width-change\", {\n\t\t\t\tminWidth: minWidth + spaceAroundContent + this.overflowButtonSize,\n\t\t\t});\n\t\t}\n\n\t\tthis.itemsWidth = totalWidth;\n\t\tthis.minContentWidth = minWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType = e.type;\n\t\t\tconst eventTypeNonPrefixed: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ElementClass = getRegisteredToolbarItem(item.constructor.name);\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\nexport type {\n\tToolbarMinWidthChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport type ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport type ToolbarDesign from \"./types/ToolbarDesign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\nimport type ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\ntype ToolbarMinWidthChangeEventDetail = {\n\tminWidth: number,\n};\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property()\n\talignContent: `${ToolbarAlign}` = \"End\";\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the toolbar design.\n\t * @public\n\t * @default \"Solid\"\n\t * @since 2.0.0\n\t */\n\t@property()\n\tdesign: `${ToolbarDesign}` = \"Solid\"\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tminContentWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: AriaHasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.open;\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.opener = this.overflowButtonDOM!;\n\t\toverflowPopover!.open = true;\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.open = false;\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0,\n\t\t\tminWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tif (item.overflowPriority === ToolbarItemOverflowBehavior.NeverOverflow) {\n\t\t\t\tminWidth += itemWidth;\n\t\t\t}\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tif (minWidth !== this.minContentWidth) {\n\t\t\tconst spaceAroundContent = this.offsetWidth - this.getDomRef()!.offsetWidth;\n\t\t\tthis.fireEvent<ToolbarMinWidthChangeEventDetail>(\"_min-content-width-change\", {\n\t\t\t\tminWidth: minWidth + spaceAroundContent + this.overflowButtonSize,\n\t\t\t});\n\t\t}\n\n\t\tthis.itemsWidth = totalWidth;\n\t\tthis.minContentWidth = minWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType = e.type;\n\t\t\tconst eventTypeNonPrefixed: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ElementClass = getRegisteredToolbarItem(item.constructor.name);\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\nexport type {\n\tToolbarMinWidthChangeEventDetail,\n};\n"]}
@@ -1,9 +1,10 @@
1
- import type { ButtonAccessibilityAttributes as ToolbarAccessibilityAttributes } from "./Button.js";
2
- import ButtonDesign from "./types/ButtonDesign.js";
1
+ import type { ButtonAccessibilityAttributes } from "./Button.js";
2
+ import type ButtonDesign from "./types/ButtonDesign.js";
3
3
  import ToolbarItem from "./ToolbarItem.js";
4
4
  import type { IEventOptions } from "./ToolbarItem.js";
5
5
  import ToolbarButtonTemplate from "./generated/templates/ToolbarButtonTemplate.lit.js";
6
6
  import ToolbarPopoverButtonTemplate from "./generated/templates/ToolbarPopoverButtonTemplate.lit.js";
7
+ type ToolbarButtonAccessibilityAttributes = ButtonAccessibilityAttributes;
7
8
  /**
8
9
  * @class
9
10
  *
@@ -39,10 +40,10 @@ declare class ToolbarButton extends ToolbarItem {
39
40
  *
40
41
  * **Note:** SAP-icons font provides numerous buil-in icons. To find all the available icons, see the
41
42
  * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).
42
- * @default ""
43
+ * @default undefined
43
44
  * @public
44
45
  */
45
- icon: string;
46
+ icon?: string;
46
47
  /**
47
48
  * Defines the icon, displayed as graphical element within the component after the button text.
48
49
  *
@@ -53,18 +54,18 @@ declare class ToolbarButton extends ToolbarItem {
53
54
  *
54
55
  * Example:
55
56
  * See all the available icons within the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).
56
- * @default ""
57
+ * @default undefined
57
58
  * @public
58
59
  */
59
- endIcon: string;
60
+ endIcon?: string;
60
61
  /**
61
62
  * Defines the tooltip of the component.
62
63
  *
63
64
  * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.
64
- * @default ""
65
+ * @default undefined
65
66
  * @public
66
67
  */
67
- tooltip: string;
68
+ tooltip?: string;
68
69
  /**
69
70
  * Defines the accessible ARIA name of the component.
70
71
  * @default undefined
@@ -73,10 +74,10 @@ declare class ToolbarButton extends ToolbarItem {
73
74
  accessibleName?: string;
74
75
  /**
75
76
  * Receives id(or many ids) of the elements that label the component.
76
- * @default ""
77
+ * @default undefined
77
78
  * @public
78
79
  */
79
- accessibleNameRef: string;
80
+ accessibleNameRef?: string;
80
81
  /**
81
82
  * Defines the additional accessibility attributes that will be applied to the component.
82
83
  *
@@ -94,13 +95,13 @@ declare class ToolbarButton extends ToolbarItem {
94
95
  * @default {}
95
96
  * @public
96
97
  */
97
- accessibilityAttributes: ToolbarAccessibilityAttributes;
98
+ accessibilityAttributes: ToolbarButtonAccessibilityAttributes;
98
99
  /**
99
100
  * Button text
100
101
  * @public
101
- * @default ""
102
+ * @default undefined
102
103
  */
103
- text: string;
104
+ text?: string;
104
105
  /**
105
106
  * Defines the width of the button.
106
107
  *
@@ -119,4 +120,4 @@ declare class ToolbarButton extends ToolbarItem {
119
120
  get subscribedEvents(): Map<string, IEventOptions>;
120
121
  }
121
122
  export default ToolbarButton;
122
- export type { ToolbarAccessibilityAttributes, };
123
+ export type { ToolbarButtonAccessibilityAttributes, };
@@ -7,9 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
8
8
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
9
9
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
10
- import CSSSize from "@ui5/webcomponents-base/dist/types/CSSSize.js";
11
10
  import Button from "./Button.js";
12
- import ButtonDesign from "./types/ButtonDesign.js";
13
11
  import ToolbarItem from "./ToolbarItem.js";
14
12
  import ToolbarButtonTemplate from "./generated/templates/ToolbarButtonTemplate.lit.js";
15
13
  import ToolbarPopoverButtonTemplate from "./generated/templates/ToolbarPopoverButtonTemplate.lit.js";
@@ -31,6 +29,41 @@ import { registerToolbarItem } from "./ToolbarRegistry.js";
31
29
  * @since 1.17.0
32
30
  */
33
31
  let ToolbarButton = class ToolbarButton extends ToolbarItem {
32
+ constructor() {
33
+ super(...arguments);
34
+ /**
35
+ * Defines if the action is disabled.
36
+ *
37
+ * **Note:** a disabled action can't be pressed or focused, and it is not in the tab chain.
38
+ * @default false
39
+ * @public
40
+ */
41
+ this.disabled = false;
42
+ /**
43
+ * Defines the action design.
44
+ * @default "Default"
45
+ * @public
46
+ */
47
+ this.design = "Default";
48
+ /**
49
+ * Defines the additional accessibility attributes that will be applied to the component.
50
+ *
51
+ * The following fields are supported:
52
+ *
53
+ * - **expanded**: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed.
54
+ * Accepts the following string values: `true` or `false`
55
+ *
56
+ * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.
57
+ * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.
58
+ *
59
+ * - **controls**: Identifies the element (or elements) whose contents or presence are controlled by the button element.
60
+ * Accepts a lowercase string value.
61
+ *
62
+ * @default {}
63
+ * @public
64
+ */
65
+ this.accessibilityAttributes = {};
66
+ }
34
67
  get styles() {
35
68
  return {
36
69
  width: this.width,
@@ -56,7 +89,7 @@ __decorate([
56
89
  property({ type: Boolean })
57
90
  ], ToolbarButton.prototype, "disabled", void 0);
58
91
  __decorate([
59
- property({ type: ButtonDesign, defaultValue: ButtonDesign.Default })
92
+ property()
60
93
  ], ToolbarButton.prototype, "design", void 0);
61
94
  __decorate([
62
95
  property()
@@ -68,10 +101,10 @@ __decorate([
68
101
  property()
69
102
  ], ToolbarButton.prototype, "tooltip", void 0);
70
103
  __decorate([
71
- property({ defaultValue: undefined })
104
+ property()
72
105
  ], ToolbarButton.prototype, "accessibleName", void 0);
73
106
  __decorate([
74
- property({ defaultValue: "" })
107
+ property()
75
108
  ], ToolbarButton.prototype, "accessibleNameRef", void 0);
76
109
  __decorate([
77
110
  property({ type: Object })
@@ -80,7 +113,7 @@ __decorate([
80
113
  property()
81
114
  ], ToolbarButton.prototype, "text", void 0);
82
115
  __decorate([
83
- property({ validator: CSSSize })
116
+ property()
84
117
  ], ToolbarButton.prototype, "width", void 0);
85
118
  ToolbarButton = __decorate([
86
119
  customElement({
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarButton.js","sourceRoot":"","sources":["../src/ToolbarButton.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AACvF,OAAO,4BAA4B,MAAM,2DAA2D,CAAC;AAErG,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;;;;;;GAcG;AAgBH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IA8GtC,IAAI,MAAM;QACT,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc;SAC9C,CAAC;IACH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,KAAK,eAAe;QACzB,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IAED,MAAM,KAAK,sBAAsB;QAChC,OAAO,4BAA4B,CAAC;IACrC,CAAC;IAED,IAAI,gBAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,OAAO,GAAG,CAAC;IACZ,CAAC;CACD,CAAA;AA7HA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;+CACT;AAQnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;6CAC1C;AAW3B;IADC,QAAQ,EAAE;2CACG;AAgBd;IADC,QAAQ,EAAE;8CACM;AAUjB;IADC,QAAQ,EAAE;8CACM;AAQjB;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;qDACd;AAQxB;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;wDACJ;AAoB3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8DAC8B;AAQzD;IADC,QAAQ,EAAE;2CACG;AAUd;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;4CAClB;AA5GV,aAAa;IAflB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;QACzB,YAAY,EAAE,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,uBAAuB;KAC/B,CAAC;IAEF;;;;;;;OAOG;;IACF,KAAK,CAAC,OAAO,CAAC;GACT,aAAa,CAsIlB;AAED,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAEnC,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import 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 CSSSize from \"@ui5/webcomponents-base/dist/types/CSSSize.js\";\nimport Button from \"./Button.js\";\nimport type { ButtonAccessibilityAttributes as ToolbarAccessibilityAttributes } from \"./Button.js\";\nimport ButtonDesign from \"./types/ButtonDesign.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type { IEventOptions } from \"./ToolbarItem.js\";\nimport ToolbarButtonTemplate from \"./generated/templates/ToolbarButtonTemplate.lit.js\";\nimport ToolbarPopoverButtonTemplate from \"./generated/templates/ToolbarPopoverButtonTemplate.lit.js\";\n\nimport ToolbarButtonPopoverCss from \"./generated/themes/ToolbarButtonPopover.css.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-button` represents an abstract action,\n * used in the `ui5-toolbar`.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/ToolbarButton.js\";`\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-button\",\n\tdependencies: [Button],\n\tstyles: ToolbarButtonPopoverCss,\n})\n\n/**\n * Fired when the component is activated either with a\n * mouse/tap or by using the Enter or Space key.\n *\n * **Note:** The event will not be fired if the `disabled`\n * property is set to `true`.\n * @public\n */\n@event(\"click\")\nclass ToolbarButton extends ToolbarItem {\n\t/**\n\t * Defines if the action is disabled.\n\t *\n\t * **Note:** a disabled action can't be pressed or focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the action design.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property({ type: ButtonDesign, defaultValue: ButtonDesign.Default })\n\tdesign!: `${ButtonDesign}`;\n\n\t/**\n\t * Defines the `icon` source URI.\n\t *\n\t * **Note:** SAP-icons font provides numerous buil-in icons. To find all the available icons, see the\n\t * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component after the button text.\n\t *\n\t * **Note:** It is highly recommended to use `endIcon` property only together with `icon` and/or `text` properties.\n\t * Usage of `endIcon` only should be avoided.\n\t *\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t * See all the available icons within the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tendIcon!: string;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t *\n\t * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttooltip!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the additional accessibility attributes that will be applied to the component.\n\t *\n\t * The following fields are supported:\n\t *\n\t * - **expanded**: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed.\n\t * Accepts the following string values: `true` or `false`\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t *\n\t * - **controls**: Identifies the element (or elements) whose contents or presence are controlled by the button element.\n\t * Accepts a lowercase string value.\n\t *\n\t * @default {}\n\t * @public\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: ToolbarAccessibilityAttributes;\n\n\t/**\n\t * Button text\n\t * @public\n\t * @default \"\"\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the width of the button.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: CSSSize })\n\twidth?: string;\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t\tdisplay: this.hidden ? \"none\" : \"inline-block\",\n\t\t};\n\t}\n\n\tget containsText() {\n\t\treturn true;\n\t}\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarButtonTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverButtonTemplate;\n\t}\n\n\tget subscribedEvents(): Map<string, IEventOptions> {\n\t\tconst map = new Map();\n\t\tmap.set(\"click\", { preventClosing: false });\n\t\treturn map;\n\t}\n}\n\nregisterToolbarItem(ToolbarButton);\n\nToolbarButton.define();\n\nexport default ToolbarButton;\n\nexport type {\n\tToolbarAccessibilityAttributes,\n};\n"]}
1
+ {"version":3,"file":"ToolbarButton.js","sourceRoot":"","sources":["../src/ToolbarButton.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,MAAM,MAAM,aAAa,CAAC;AAIjC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AACvF,OAAO,4BAA4B,MAAM,2DAA2D,CAAC;AAErG,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI3D;;;;;;;;;;;;;;GAcG;AAgBH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IAAvC;;QACC;;;;;;WAMG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,WAAM,GAAsB,SAAS,CAAC;QAuDtC;;;;;;;;;;;;;;;;WAgBG;QAEH,4BAAuB,GAAyC,EAAE,CAAC;IA4CpE,CAAC;IAxBA,IAAI,MAAM;QACT,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc;SAC9C,CAAC;IACH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,KAAK,eAAe;QACzB,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IAED,MAAM,KAAK,sBAAsB;QAChC,OAAO,4BAA4B,CAAC;IACrC,CAAC;IAED,IAAI,gBAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,OAAO,GAAG,CAAC;IACZ,CAAC;CACD,CAAA;AA7HA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;+CACX;AAQjB;IADC,QAAQ,EAAE;6CAC2B;AAWtC;IADC,QAAQ,EAAE;2CACE;AAgBb;IADC,QAAQ,EAAE;8CACM;AAUjB;IADC,QAAQ,EAAE;8CACK;AAQhB;IADC,QAAQ,EAAE;qDACa;AAQxB;IADC,QAAQ,EAAE;wDACgB;AAoB3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8DACwC;AAQnE;IADC,QAAQ,EAAE;2CACG;AAUd;IADC,QAAQ,EAAE;4CACI;AA5GV,aAAa;IAflB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;QACzB,YAAY,EAAE,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,uBAAuB;KAC/B,CAAC;IAEF;;;;;;;OAOG;;IACF,KAAK,CAAC,OAAO,CAAC;GACT,aAAa,CAsIlB;AAED,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAEnC,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import 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 Button from \"./Button.js\";\nimport type { ButtonAccessibilityAttributes } from \"./Button.js\";\nimport type ButtonDesign from \"./types/ButtonDesign.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type { IEventOptions } from \"./ToolbarItem.js\";\nimport ToolbarButtonTemplate from \"./generated/templates/ToolbarButtonTemplate.lit.js\";\nimport ToolbarPopoverButtonTemplate from \"./generated/templates/ToolbarPopoverButtonTemplate.lit.js\";\n\nimport ToolbarButtonPopoverCss from \"./generated/themes/ToolbarButtonPopover.css.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\ntype ToolbarButtonAccessibilityAttributes = ButtonAccessibilityAttributes;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-button` represents an abstract action,\n * used in the `ui5-toolbar`.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/ToolbarButton.js\";`\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-button\",\n\tdependencies: [Button],\n\tstyles: ToolbarButtonPopoverCss,\n})\n\n/**\n * Fired when the component is activated either with a\n * mouse/tap or by using the Enter or Space key.\n *\n * **Note:** The event will not be fired if the `disabled`\n * property is set to `true`.\n * @public\n */\n@event(\"click\")\nclass ToolbarButton extends ToolbarItem {\n\t/**\n\t * Defines if the action is disabled.\n\t *\n\t * **Note:** a disabled action can't be pressed or focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the action design.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tdesign: `${ButtonDesign}` = \"Default\";\n\n\t/**\n\t * Defines the `icon` source URI.\n\t *\n\t * **Note:** SAP-icons font provides numerous buil-in icons. To find all the available icons, see the\n\t * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component after the button text.\n\t *\n\t * **Note:** It is highly recommended to use `endIcon` property only together with `icon` and/or `text` properties.\n\t * Usage of `endIcon` only should be avoided.\n\t *\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t * See all the available icons within the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tendIcon?: string;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t *\n\t * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttooltip?: string\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the additional accessibility attributes that will be applied to the component.\n\t *\n\t * The following fields are supported:\n\t *\n\t * - **expanded**: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed.\n\t * Accepts the following string values: `true` or `false`\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t *\n\t * - **controls**: Identifies the element (or elements) whose contents or presence are controlled by the button element.\n\t * Accepts a lowercase string value.\n\t *\n\t * @default {}\n\t * @public\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes: ToolbarButtonAccessibilityAttributes = {};\n\n\t/**\n\t * Button text\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the width of the button.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\twidth?: string;\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t\tdisplay: this.hidden ? \"none\" : \"inline-block\",\n\t\t};\n\t}\n\n\tget containsText() {\n\t\treturn true;\n\t}\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarButtonTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverButtonTemplate;\n\t}\n\n\tget subscribedEvents(): Map<string, IEventOptions> {\n\t\tconst map = new Map();\n\t\tmap.set(\"click\", { preventClosing: false });\n\t\treturn map;\n\t}\n}\n\nregisterToolbarItem(ToolbarButton);\n\nToolbarButton.define();\n\nexport default ToolbarButton;\n\nexport type {\n\tToolbarButtonAccessibilityAttributes,\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import { TemplateFunction } from "@ui5/webcomponents-base/dist/renderer/executeTemplate.js";
3
- import ToolbarItemOverflowBehavior from "./types/ToolbarItemOverflowBehavior.js";
2
+ import type { TemplateFunction } from "@ui5/webcomponents-base/dist/renderer/executeTemplate.js";
3
+ import type ToolbarItemOverflowBehavior from "./types/ToolbarItemOverflowBehavior.js";
4
4
  type IEventOptions = {
5
5
  preventClosing: boolean;
6
6
  };
@@ -5,9 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
8
- import "@ui5/webcomponents-base/dist/renderer/executeTemplate.js";
9
8
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
- import ToolbarItemOverflowBehavior from "./types/ToolbarItemOverflowBehavior.js";
11
9
  /**
12
10
  * @class
13
11
  *
@@ -19,6 +17,23 @@ import ToolbarItemOverflowBehavior from "./types/ToolbarItemOverflowBehavior.js"
19
17
  * @since 1.17.0
20
18
  */
21
19
  class ToolbarItem extends UI5Element {
20
+ constructor() {
21
+ super(...arguments);
22
+ /**
23
+ * Property used to define the access of the item to the overflow Popover. If "NeverOverflow" option is set,
24
+ * the item never goes in the Popover, if "AlwaysOverflow" - it never comes out of it.
25
+ * @public
26
+ * @default "Default"
27
+ */
28
+ this.overflowPriority = "Default";
29
+ /**
30
+ * Defines if the toolbar overflow popup should close upon intereaction with the item.
31
+ * It will close by default.
32
+ * @default false
33
+ * @public
34
+ */
35
+ this.preventOverflowClosing = false;
36
+ }
22
37
  /**
23
38
  * Defines if the width of the item should be ignored in calculating the whole width of the toolbar
24
39
  * @protected
@@ -84,7 +99,7 @@ class ToolbarItem extends UI5Element {
84
99
  }
85
100
  }
86
101
  __decorate([
87
- property({ type: ToolbarItemOverflowBehavior, defaultValue: ToolbarItemOverflowBehavior.Default })
102
+ property()
88
103
  ], ToolbarItem.prototype, "overflowPriority", void 0);
89
104
  __decorate([
90
105
  property({ type: Boolean })
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarItem.js","sourceRoot":"","sources":["../src/ToolbarItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAiC,0DAA0D,CAAC;AAC5F,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,2BAA2B,MAAM,wCAAwC,CAAC;AAMjF;;;;;;;;;GASG;AACH,MAAM,WAAY,SAAQ,UAAU;IAmBnC;;;MAGE;IACF,IAAI,WAAW;QACd,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY;QACf,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,IAAI,gBAAgB;QACnB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACd,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,MAAM,KAAK,eAAe;QACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,MAAM,KAAK,sBAAsB;QAChC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,IAAI,gBAAgB;QACnB,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC;IAC5E,CAAC;CACD;AAlFA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,YAAY,EAAE,2BAA2B,CAAC,OAAO,EAAE,CAAC;qDAC/C;AASpD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2DACK;AA4ElC,eAAe,WAAW,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { TemplateFunction } from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\n\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\ntype IEventOptions = {\n\tpreventClosing: boolean;\n}\n\n/**\n * @class\n *\n * Represents an abstract class for items, used in the `ui5-toolbar`.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @since 1.17.0\n */\nclass ToolbarItem extends UI5Element {\n\t/**\n\t * Property used to define the access of the item to the overflow Popover. If \"NeverOverflow\" option is set,\n\t * the item never goes in the Popover, if \"AlwaysOverflow\" - it never comes out of it.\n\t * @public\n\t * @default \"Default\"\n\t */\n\t@property({ type: ToolbarItemOverflowBehavior, defaultValue: ToolbarItemOverflowBehavior.Default })\n\toverflowPriority!: `${ToolbarItemOverflowBehavior}`;\n\n\t/**\n\t * Defines if the toolbar overflow popup should close upon intereaction with the item.\n\t * It will close by default.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tpreventOverflowClosing!: boolean;\n\n\t/**\n\t* Defines if the width of the item should be ignored in calculating the whole width of the toolbar\n\t* @protected\n\t*/\n\tget ignoreSpace(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item contains text. Used to position the text properly inside the popover.\n\t * Aligned left if the item has text, default aligned otherwise.\n\t * @protected\n\t */\n\tget containsText(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item is flexible. An item that is returning true for this property will make\n\t * the toolbar expand to fill the 100% width of its container.\n\t * @protected\n\t */\n\tget hasFlexibleWidth(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item is interactive.\n\t * This value is used to determinate if the toolbar should have its accessibility role and attributes set.\n\t * At least two interactive items are needed for the toolbar to have the role=\"toolbar\" attribute set.\n\t * @protected\n\t */\n\tget isInteractive(): boolean {\n\t\treturn true;\n\t}\n\n\t/**\n\t * Returns if the item is separator.\n\t * @protected\n\t */\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the template for the toolbar item.\n\t * @protected\n\t */\n\tstatic get toolbarTemplate(): TemplateFunction {\n\t\tthrow new Error(\"Template must be defined\");\n\t}\n\n\t/**\n\t * Returns the template for the toolbar item popover.\n\t * @protected\n\t */\n\tstatic get toolbarPopoverTemplate(): TemplateFunction {\n\t\tthrow new Error(\"Popover template must be defined\");\n\t}\n\n\t/**\n\t * Returns the events that the item is subscribed to.\n\t * @protected\n\t */\n\tget subscribedEvents(): Map<string, IEventOptions> {\n\t\treturn new Map();\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n}\n\nexport type { IEventOptions };\nexport default ToolbarItem;\n"]}
1
+ {"version":3,"file":"ToolbarItem.js","sourceRoot":"","sources":["../src/ToolbarItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAQ3E;;;;;;;;;GASG;AACH,MAAM,WAAY,SAAQ,UAAU;IAApC;;QACC;;;;;WAKG;QAEH,qBAAgB,GAAqC,SAAS,CAAC;QAE/D;;;;;WAKG;QAEH,2BAAsB,GAAG,KAAK,CAAC;IAyEhC,CAAC;IAvEA;;;MAGE;IACF,IAAI,WAAW;QACd,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY;QACf,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,IAAI,gBAAgB;QACnB,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACd,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,MAAM,KAAK,eAAe;QACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,MAAM,KAAK,sBAAsB;QAChC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,IAAI,gBAAgB;QACnB,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC;IAC5E,CAAC;CACD;AAlFA;IADC,QAAQ,EAAE;qDACoD;AAS/D;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2DACG;AA4EhC,eAAe,WAAW,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { TemplateFunction } from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\n\nimport type ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\ntype IEventOptions = {\n\tpreventClosing: boolean;\n}\n\n/**\n * @class\n *\n * Represents an abstract class for items, used in the `ui5-toolbar`.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @since 1.17.0\n */\nclass ToolbarItem extends UI5Element {\n\t/**\n\t * Property used to define the access of the item to the overflow Popover. If \"NeverOverflow\" option is set,\n\t * the item never goes in the Popover, if \"AlwaysOverflow\" - it never comes out of it.\n\t * @public\n\t * @default \"Default\"\n\t */\n\t@property()\n\toverflowPriority: `${ToolbarItemOverflowBehavior}` = \"Default\";\n\n\t/**\n\t * Defines if the toolbar overflow popup should close upon intereaction with the item.\n\t * It will close by default.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tpreventOverflowClosing = false;\n\n\t/**\n\t* Defines if the width of the item should be ignored in calculating the whole width of the toolbar\n\t* @protected\n\t*/\n\tget ignoreSpace(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item contains text. Used to position the text properly inside the popover.\n\t * Aligned left if the item has text, default aligned otherwise.\n\t * @protected\n\t */\n\tget containsText(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item is flexible. An item that is returning true for this property will make\n\t * the toolbar expand to fill the 100% width of its container.\n\t * @protected\n\t */\n\tget hasFlexibleWidth(): boolean {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns if the item is interactive.\n\t * This value is used to determinate if the toolbar should have its accessibility role and attributes set.\n\t * At least two interactive items are needed for the toolbar to have the role=\"toolbar\" attribute set.\n\t * @protected\n\t */\n\tget isInteractive(): boolean {\n\t\treturn true;\n\t}\n\n\t/**\n\t * Returns if the item is separator.\n\t * @protected\n\t */\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the template for the toolbar item.\n\t * @protected\n\t */\n\tstatic get toolbarTemplate(): TemplateFunction {\n\t\tthrow new Error(\"Template must be defined\");\n\t}\n\n\t/**\n\t * Returns the template for the toolbar item popover.\n\t * @protected\n\t */\n\tstatic get toolbarPopoverTemplate(): TemplateFunction {\n\t\tthrow new Error(\"Popover template must be defined\");\n\t}\n\n\t/**\n\t * Returns the events that the item is subscribed to.\n\t * @protected\n\t */\n\tget subscribedEvents(): Map<string, IEventOptions> {\n\t\treturn new Map();\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n}\n\nexport type { IEventOptions };\nexport default ToolbarItem;\n"]}
@@ -1,4 +1,4 @@
1
- import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
1
+ import type ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
2
2
  import ToolbarSelectTemplate from "./generated/templates/ToolbarSelectTemplate.lit.js";
3
3
  import ToolbarPopoverSelectTemplate from "./generated/templates/ToolbarPopoverSelectTemplate.lit.js";
4
4
  import ToolbarItem from "./ToolbarItem.js";
@@ -58,15 +58,15 @@ declare class ToolbarSelect extends ToolbarItem {
58
58
  /**
59
59
  * Defines the accessible ARIA name of the component.
60
60
  * @public
61
- * @default ""
61
+ * @default undefined
62
62
  */
63
- accessibleName: string;
63
+ accessibleName?: string;
64
64
  /**
65
65
  * Receives id(or many ids) of the elements that label the select.
66
- * @default ""
66
+ * @default undefined
67
67
  * @public
68
68
  */
69
- accessibleNameRef: string;
69
+ accessibleNameRef?: string;
70
70
  _onEvent: EventListener;
71
71
  static get toolbarTemplate(): typeof ToolbarSelectTemplate;
72
72
  static get toolbarPopoverTemplate(): typeof ToolbarPopoverSelectTemplate;
@@ -8,8 +8,6 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
8
8
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
9
9
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
10
10
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
11
- import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
12
- import CSSSize from "@ui5/webcomponents-base/dist/types/CSSSize.js";
13
11
  import { registerToolbarItem } from "./ToolbarRegistry.js";
14
12
  // Templates
15
13
  import ToolbarSelectTemplate from "./generated/templates/ToolbarSelectTemplate.lit.js";
@@ -51,6 +49,20 @@ let ToolbarSelect = class ToolbarSelect extends ToolbarItem {
51
49
  }
52
50
  constructor() {
53
51
  super();
52
+ /**
53
+ * Defines the value state of the component.
54
+ * @default "None"
55
+ * @public
56
+ */
57
+ this.valueState = "None";
58
+ /**
59
+ * Defines whether the component is in disabled state.
60
+ *
61
+ * **Note:** A disabled component is noninteractive.
62
+ * @default false
63
+ * @public
64
+ */
65
+ this.disabled = false;
54
66
  this._onEvent = this._onEventHandler.bind(this);
55
67
  }
56
68
  onEnterDOM() {
@@ -91,13 +103,13 @@ let ToolbarSelect = class ToolbarSelect extends ToolbarItem {
91
103
  }
92
104
  };
93
105
  __decorate([
94
- property({ validator: CSSSize })
106
+ property()
95
107
  ], ToolbarSelect.prototype, "width", void 0);
96
108
  __decorate([
97
109
  slot({ "default": true, type: HTMLElement, invalidateOnChildChange: true })
98
110
  ], ToolbarSelect.prototype, "options", void 0);
99
111
  __decorate([
100
- property({ type: ValueState, defaultValue: ValueState.None })
112
+ property()
101
113
  ], ToolbarSelect.prototype, "valueState", void 0);
102
114
  __decorate([
103
115
  property({ type: Boolean })
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarSelect.js","sourceRoot":"","sources":["../src/ToolbarSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import 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 ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport CSSSize from \"@ui5/webcomponents-base/dist/types/CSSSize.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n// Templates\n\nimport ToolbarSelectTemplate from \"./generated/templates/ToolbarSelectTemplate.lit.js\";\nimport ToolbarPopoverSelectTemplate from \"./generated/templates/ToolbarPopoverSelectTemplate.lit.js\";\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport Select from \"./Select.js\";\nimport Option from \"./Option.js\";\nimport type ToolbarSelectOption from \"./ToolbarSelectOption.js\";\nimport type { SelectChangeEventDetail } from \"./Select.js\";\n\ntype ToolbarSelectChangeEventDetail = SelectChangeEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-select` component is used to create a toolbar drop-down list.\n * The items inside the `ui5-toolbar-select` define the available options by using the `ui5-toolbar-select-option` component.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/ToolbarSelect.js\";`\n *\n * `import \"@ui5/webcomponents/dist/ToolbarSelectOption.js\";` (comes with `ui5-toolbar-select`)\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-select\",\n\tdependencies: [Select, Option],\n})\n\n/**\n * Fired when the selected option changes.\n * @allowPreventDefault\n * @param {HTMLElement} selectedOption the selected option.\n * @public\n */\n@event<ToolbarSelectChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired after the component's dropdown menu opens.\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n * @public\n */\n@event(\"close\")\n\nclass ToolbarSelect extends ToolbarItem {\n\t/**\n\t * Defines the width of the select.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: CSSSize })\n\twidth?: string;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * **Note:** Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * **Note:** Use the `ui5-toolbar-select-option` component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<ToolbarSelectOption>;\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 is in disabled state.\n\t *\n\t * **Note:** A disabled component is noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default \"\"\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t_onEvent: EventListener\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSelectTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSelectTemplate;\n\t}\n\n\tget subscribedEvents() {\n\t\tconst map = new Map();\n\n\t\tmap.set(\"click\", { preventClosing: true });\n\t\tmap.set(\"ui5-change\", { preventClosing: false });\n\t\tmap.set(\"ui5-open\", { preventClosing: true });\n\t\tmap.set(\"ui5-close\", { preventClosing: true });\n\n\t\treturn map;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onEvent = this._onEventHandler.bind(this);\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.attachEventListeners();\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.detachEventListeners();\n\t}\n\n\tattachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.addEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\tdetachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.removeEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\t_onEventHandler(e: Event): void {\n\t\tif (e.type === \"ui5-change\") {\n\t\t\t// update options\n\t\t\tconst selectedOption = (e as CustomEvent<ToolbarSelectChangeEventDetail>).detail.selectedOption;\n\t\t\tconst selectedOptionIndex = Number(selectedOption?.getAttribute(\"data-ui5-external-action-item-index\"));\n\t\t\tthis.options.forEach((option: ToolbarSelectOption, index: number) => {\n\t\t\t\tif (index === selectedOptionIndex) {\n\t\t\t\t\toption.setAttribute(\"selected\", \"\");\n\t\t\t\t} else {\n\t\t\t\t\toption.removeAttribute(\"selected\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t};\n\t}\n}\n\nregisterToolbarItem(ToolbarSelect);\n\nToolbarSelect.define();\n\nexport default ToolbarSelect;\n\nexport type {\n\tToolbarSelectChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"ToolbarSelect.js","sourceRoot":"","sources":["../src/ToolbarSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import 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 type ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n// Templates\n\nimport ToolbarSelectTemplate from \"./generated/templates/ToolbarSelectTemplate.lit.js\";\nimport ToolbarPopoverSelectTemplate from \"./generated/templates/ToolbarPopoverSelectTemplate.lit.js\";\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport Select from \"./Select.js\";\nimport Option from \"./Option.js\";\nimport type ToolbarSelectOption from \"./ToolbarSelectOption.js\";\nimport type { SelectChangeEventDetail } from \"./Select.js\";\n\ntype ToolbarSelectChangeEventDetail = SelectChangeEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-select` component is used to create a toolbar drop-down list.\n * The items inside the `ui5-toolbar-select` define the available options by using the `ui5-toolbar-select-option` component.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/ToolbarSelect.js\";`\n *\n * `import \"@ui5/webcomponents/dist/ToolbarSelectOption.js\";` (comes with `ui5-toolbar-select`)\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-select\",\n\tdependencies: [Select, Option],\n})\n\n/**\n * Fired when the selected option changes.\n * @allowPreventDefault\n * @param {HTMLElement} selectedOption the selected option.\n * @public\n */\n@event<ToolbarSelectChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired after the component's dropdown menu opens.\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n * @public\n */\n@event(\"close\")\n\nclass ToolbarSelect extends ToolbarItem {\n\t/**\n\t * Defines the width of the select.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\twidth?: string;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * **Note:** Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * **Note:** Use the `ui5-toolbar-select-option` component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<ToolbarSelectOption>;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the component is in disabled state.\n\t *\n\t * **Note:** A disabled component is noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\taccessibleName?: string\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t_onEvent: EventListener\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSelectTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSelectTemplate;\n\t}\n\n\tget subscribedEvents() {\n\t\tconst map = new Map();\n\n\t\tmap.set(\"click\", { preventClosing: true });\n\t\tmap.set(\"ui5-change\", { preventClosing: false });\n\t\tmap.set(\"ui5-open\", { preventClosing: true });\n\t\tmap.set(\"ui5-close\", { preventClosing: true });\n\n\t\treturn map;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onEvent = this._onEventHandler.bind(this);\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.attachEventListeners();\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.detachEventListeners();\n\t}\n\n\tattachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.addEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\tdetachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.removeEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\t_onEventHandler(e: Event): void {\n\t\tif (e.type === \"ui5-change\") {\n\t\t\t// update options\n\t\t\tconst selectedOption = (e as CustomEvent<ToolbarSelectChangeEventDetail>).detail.selectedOption;\n\t\t\tconst selectedOptionIndex = Number(selectedOption?.getAttribute(\"data-ui5-external-action-item-index\"));\n\t\t\tthis.options.forEach((option: ToolbarSelectOption, index: number) => {\n\t\t\t\tif (index === selectedOptionIndex) {\n\t\t\t\t\toption.setAttribute(\"selected\", \"\");\n\t\t\t\t} else {\n\t\t\t\t\toption.removeAttribute(\"selected\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t};\n\t}\n}\n\nregisterToolbarItem(ToolbarSelect);\n\nToolbarSelect.define();\n\nexport default ToolbarSelect;\n\nexport type {\n\tToolbarSelectChangeEventDetail,\n};\n"]}
@@ -21,6 +21,15 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
21
21
  * @since 1.17.0
22
22
  */
23
23
  let ToolbarSelectOption = class ToolbarSelectOption extends UI5Element {
24
+ constructor() {
25
+ super(...arguments);
26
+ /**
27
+ * Defines the selected state of the component.
28
+ * @default false
29
+ * @public
30
+ */
31
+ this.selected = false;
32
+ }
24
33
  };
25
34
  __decorate([
26
35
  property({ type: Boolean })
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarSelectOption.js","sourceRoot":"","sources":["../src/ToolbarSelectOption.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E;;;;;;;;;;;GAWG;AAEH,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,UAAU;CAiB3C,CAAA;AAVA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qDACT;AASnB;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;iDAClD;AAhBd,mBAAmB;IADxB,aAAa,CAAC,2BAA2B,CAAC;GACrC,mBAAmB,CAiBxB;AAED,mBAAmB,CAAC,MAAM,EAAE,CAAC;AAE7B,eAAe,mBAAmB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar-select-option` component defines the content of an option in the `ui5-toolbar-select`.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @since 1.17.0\n */\n@customElement(\"ui5-toolbar-select-option\")\nclass ToolbarSelectOption extends UI5Element {\n\t/**\n\t * Defines the selected state of the component.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true, invalidateOnChildChange: true })\n\ttext!: Array<Node>;\n}\n\nToolbarSelectOption.define();\n\nexport default ToolbarSelectOption;\n"]}
1
+ {"version":3,"file":"ToolbarSelectOption.js","sourceRoot":"","sources":["../src/ToolbarSelectOption.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E;;;;;;;;;;;GAWG;AAEH,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,UAAU;IAA5C;;QACC;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;IAUlB,CAAC;CAAA,CAAA;AAVA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qDACX;AASjB;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;iDAClD;AAhBd,mBAAmB;IADxB,aAAa,CAAC,2BAA2B,CAAC;GACrC,mBAAmB,CAiBxB;AAED,mBAAmB,CAAC,MAAM,EAAE,CAAC;AAE7B,eAAe,mBAAmB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar-select-option` component defines the content of an option in the `ui5-toolbar-select`.\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @since 1.17.0\n */\n@customElement(\"ui5-toolbar-select-option\")\nclass ToolbarSelectOption extends UI5Element {\n\t/**\n\t * Defines the selected state of the component.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true, invalidateOnChildChange: true })\n\ttext!: Array<Node>;\n}\n\nToolbarSelectOption.define();\n\nexport default ToolbarSelectOption;\n"]}
@@ -23,6 +23,10 @@ import ToolbarItem from "./ToolbarItem.js";
23
23
  * @public
24
24
  */
25
25
  let ToolbarSeparator = class ToolbarSeparator extends ToolbarItem {
26
+ constructor() {
27
+ super(...arguments);
28
+ this.visible = false;
29
+ }
26
30
  static get toolbarTemplate() {
27
31
  return ToolbarSeparatorTemplate;
28
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarSeparator.js","sourceRoot":"","sources":["../src/ToolbarSeparator.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,wBAAwB,MAAM,uDAAuD,CAAC;AAC7F,OAAO,+BAA+B,MAAM,8DAA8D,CAAC;AAE3G,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;;;GAWG;AAKH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,WAAW;IAIzC,MAAM,KAAK,eAAe;QACzB,OAAO,wBAAwB,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,sBAAsB;QAChC,OAAO,+BAA+B,CAAC;IACxC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AAjBA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;iDACV;AAFb,gBAAgB;IAJrB,aAAa,CAAC;QACd,GAAG,EAAE,uBAAuB;KAC5B,CAAC;GAEI,gBAAgB,CAmBrB;AAED,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAEtC,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ToolbarSeparatorTemplate from \"./generated/templates/ToolbarSeparatorTemplate.lit.js\";\nimport ToolbarPopoverSeparatorTemplate from \"./generated/templates/ToolbarPopoverSeparatorTemplate.lit.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-separator` is an element, used for visual separation between two elements.\n * It takes no space in calculating toolbar items width.\n * @constructor\n * @extends ToolbarItem\n * @since 1.17.0\n * @abstract\n * @public\n */\n@customElement({\n\ttag: \"ui5-toolbar-separator\",\n})\n\nclass ToolbarSeparator extends ToolbarItem {\n\t@property({ type: Boolean })\n\tvisible!: boolean;\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSeparatorTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSeparatorTemplate;\n\t}\n\n\tget isSeparator() {\n\t\treturn true;\n\t}\n\n\tget isInteractive() {\n\t\treturn false;\n\t}\n}\n\nregisterToolbarItem(ToolbarSeparator);\n\nToolbarSeparator.define();\n\nexport default ToolbarSeparator;\n"]}
1
+ {"version":3,"file":"ToolbarSeparator.js","sourceRoot":"","sources":["../src/ToolbarSeparator.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,wBAAwB,MAAM,uDAAuD,CAAC;AAC7F,OAAO,+BAA+B,MAAM,8DAA8D,CAAC;AAE3G,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;;;GAWG;AAKH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,WAAW;IAA1C;;QAEC,YAAO,GAAG,KAAK,CAAC;IAiBjB,CAAC;IAfA,MAAM,KAAK,eAAe;QACzB,OAAO,wBAAwB,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,sBAAsB;QAChC,OAAO,+BAA+B,CAAC;IACxC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AAjBA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;iDACZ;AAFX,gBAAgB;IAJrB,aAAa,CAAC;QACd,GAAG,EAAE,uBAAuB;KAC5B,CAAC;GAEI,gBAAgB,CAmBrB;AAED,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAEtC,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ToolbarSeparatorTemplate from \"./generated/templates/ToolbarSeparatorTemplate.lit.js\";\nimport ToolbarPopoverSeparatorTemplate from \"./generated/templates/ToolbarPopoverSeparatorTemplate.lit.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-separator` is an element, used for visual separation between two elements.\n * It takes no space in calculating toolbar items width.\n * @constructor\n * @extends ToolbarItem\n * @since 1.17.0\n * @abstract\n * @public\n */\n@customElement({\n\ttag: \"ui5-toolbar-separator\",\n})\n\nclass ToolbarSeparator extends ToolbarItem {\n\t@property({ type: Boolean })\n\tvisible = false;\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSeparatorTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSeparatorTemplate;\n\t}\n\n\tget isSeparator() {\n\t\treturn true;\n\t}\n\n\tget isInteractive() {\n\t\treturn false;\n\t}\n}\n\nregisterToolbarItem(ToolbarSeparator);\n\nToolbarSeparator.define();\n\nexport default ToolbarSeparator;\n"]}