@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
package/dist/MenuItem.js CHANGED
@@ -8,13 +8,11 @@ var MenuItem_1;
8
8
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
9
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
10
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
11
- import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
12
11
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
13
12
  import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
14
13
  import AriaHasPopup from "@ui5/webcomponents-base/dist/types/AriaHasPopup.js";
15
14
  import ListItem from "./ListItem.js";
16
15
  import ResponsivePopover from "./ResponsivePopover.js";
17
- import "./types/PopoverPlacement.js";
18
16
  import List from "./List.js";
19
17
  import Icon from "./Icon.js";
20
18
  import BusyIndicator from "./BusyIndicator.js";
@@ -41,10 +39,42 @@ import menuItemCss from "./generated/themes/MenuItem.css.js";
41
39
  * `import "@ui5/webcomponents/dist/MenuItem.js";`
42
40
  * @constructor
43
41
  * @extends ListItem
42
+ * @implements {IMenuItem}
44
43
  * @since 1.3.0
45
44
  * @public
46
45
  */
47
46
  let MenuItem = MenuItem_1 = class MenuItem extends ListItem {
47
+ constructor() {
48
+ super(...arguments);
49
+ /**
50
+ * Defines whether `ui5-menu-item` is in disabled state.
51
+ *
52
+ * **Note:** A disabled `ui5-menu-item` is noninteractive.
53
+ * @default false
54
+ * @public
55
+ */
56
+ this.disabled = false;
57
+ /**
58
+ * Defines the delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.
59
+ *
60
+ * **Note:** If set to `true` a `ui5-busy-indicator` component will be displayed into the related one to the current `ui5-menu-item` sub-menu popover.
61
+ * @default false
62
+ * @public
63
+ * @since 1.13.0
64
+ */
65
+ this.loading = false;
66
+ /**
67
+ * Defines the delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.
68
+ * @default 1000
69
+ * @public
70
+ * @since 1.13.0
71
+ */
72
+ this.loadingDelay = 1000;
73
+ /**
74
+ * Indicates whether any of the element siblings have icon.
75
+ */
76
+ this._siblingsWithIcon = false;
77
+ }
48
78
  static async onDefine() {
49
79
  MenuItem_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
50
80
  }
@@ -81,9 +111,12 @@ let MenuItem = MenuItem_1 = class MenuItem extends ListItem {
81
111
  get labelClose() {
82
112
  return MenuItem_1.i18nBundle.getText(MENU_CLOSE_BUTTON_ARIA_LABEL);
83
113
  }
114
+ get isSeparator() {
115
+ return false;
116
+ }
84
117
  onBeforeRendering() {
85
- const siblingsWithIcon = this.items.some(item => !!item.icon);
86
- this.items.forEach(item => {
118
+ const siblingsWithIcon = this._menuItems.some(menuItem => !!menuItem.icon);
119
+ this._menuItems.forEach(item => {
87
120
  item._siblingsWithIcon = siblingsWithIcon;
88
121
  });
89
122
  }
@@ -100,6 +133,9 @@ let MenuItem = MenuItem_1 = class MenuItem extends ListItem {
100
133
  get _popover() {
101
134
  return this.shadowRoot.querySelector("[ui5-responsive-popover]");
102
135
  }
136
+ get _menuItems() {
137
+ return this.items.filter((item) => !item.isSeparator);
138
+ }
103
139
  _closeAll() {
104
140
  if (this._popover) {
105
141
  this._popover.open = false;
@@ -147,9 +183,6 @@ __decorate([
147
183
  __decorate([
148
184
  property()
149
185
  ], MenuItem.prototype, "icon", void 0);
150
- __decorate([
151
- property({ type: Boolean })
152
- ], MenuItem.prototype, "startsSection", void 0);
153
186
  __decorate([
154
187
  property({ type: Boolean })
155
188
  ], MenuItem.prototype, "disabled", void 0);
@@ -157,13 +190,13 @@ __decorate([
157
190
  property({ type: Boolean })
158
191
  ], MenuItem.prototype, "loading", void 0);
159
192
  __decorate([
160
- property({ validator: Integer, defaultValue: 1000 })
193
+ property({ type: Number })
161
194
  ], MenuItem.prototype, "loadingDelay", void 0);
162
195
  __decorate([
163
196
  property()
164
197
  ], MenuItem.prototype, "accessibleName", void 0);
165
198
  __decorate([
166
- property({ type: String })
199
+ property()
167
200
  ], MenuItem.prototype, "tooltip", void 0);
168
201
  __decorate([
169
202
  property({ type: Boolean, noAttribute: true })
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../src/MenuItem.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 Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\nimport ListItem from \"./ListItem.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport PopoverPlacement from \"./types/PopoverPlacement.js\";\nimport List from \"./List.js\";\nimport Icon from \"./Icon.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport MenuItemTemplate from \"./generated/templates/MenuItemTemplate.lit.js\";\nimport {\n\tMENU_BACK_BUTTON_ARIA_LABEL,\n\tMENU_CLOSE_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport type { ResponsivePopoverBeforeCloseEventDetail } from \"./ResponsivePopover.js\";\n\n// Styles\nimport menuItemCss from \"./generated/themes/MenuItem.css.js\";\n\ntype MenuBeforeOpenEventDetail = { item?: MenuItem };\ntype MenuBeforeCloseEventDetail = { escPressed: boolean };\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-menu-item` is the item to use inside a `ui5-menu`.\n * An arbitrary hierarchy structure can be represented by recursively nesting menu items.\n *\n * ### Usage\n *\n * `ui5-menu-item` represents a node in a `ui5-menu`. The menu itself is rendered as a list,\n * and each `ui5-menu-item` is represented by a list item in that list. Therefore, you should only use\n * `ui5-menu-item` directly in your apps. The `ui5-li` list item is internal for the list, and not intended for public use.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/MenuItem.js\";`\n * @constructor\n * @extends ListItem\n * @since 1.3.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-menu-item\",\n\ttemplate: MenuItemTemplate,\n\tstyles: [ListItem.styles, menuItemCss],\n\tdependencies: [...ListItem.dependencies, ResponsivePopover, List, BusyIndicator, Icon],\n})\nclass MenuItem extends ListItem {\n\tstatic async onDefine() {\n\t\tMenuItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t/**\n\t * Defines the text of the tree item.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the `additionalText`, displayed in the end of the menu item.\n\t *\n\t * **Note:** The additional text will not be displayed if there are items added in `items` slot or there are\n\t * components added to `endContent` slot.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @default \"\"\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\tadditionalText!: string;\n\n\t/**\n\t * Defines the icon to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * **Example:**\n\t *\n\t * See all the available icons in 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\ticon!: string;\n\n\t/**\n\t * Defines whether a visual separator should be rendered before the item.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tstartsSection!: boolean;\n\n\t/**\n\t * Defines whether `ui5-menu-item` is in disabled state.\n\t *\n\t * **Note:** A disabled `ui5-menu-item` 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 delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.\n\t *\n\t * **Note:** If set to `true` a `ui5-busy-indicator` component will be displayed into the related one to the current `ui5-menu-item` sub-menu popover.\n\t * @default false\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ type: Boolean })\n\tloading!: boolean;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.\n\t * @default 1000\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ validator: Integer, defaultValue: 1000 })\n\tloadingDelay!: number;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default \"\"\n\t * @public\n\t * @since 1.7.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Defines the text of the tooltip for the menu item.\n\t * @default \"\"\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@property({ type: String })\n\ttooltip!: string;\n\n\t/**\n\t * Indicates whether any of the element siblings have icon.\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_siblingsWithIcon!: boolean;\n\n\t/**\n\t * Defines the items of this component.\n\t *\n\t * **Note:** If there are items added to this slot, an arrow will be displayed at the end\n\t * of the item in order to indicate that there are items added. In that case components added\n\t * to `endContent` slot or `additionalText` content will not be displayed.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<MenuItem>;\n\n\t/**\n\t * Defines the components that should be displayed at the end of the menu item.\n\t *\n\t * **Note:** It is highly recommended to slot only components of type `ui5-button`,`ui5-link`\n\t * or `ui5-icon` in order to preserve the intended design. If there are components added to this slot,\n\t * and there is text set in `additionalText`, it will not be displayed. If there are items added to `items` slot,\n\t * nether `additionalText` nor components added to this slot would be displayed.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@slot({ type: HTMLElement })\n\tendContent!: Array<HTMLElement>;\n\n\tget placement(): `${PopoverPlacement}` {\n\t\treturn this.isRtl ? \"Start\" : \"End\";\n\t}\n\n\tget isRtl() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget hasSubmenu() {\n\t\treturn !!(this.items.length || this.loading);\n\t}\n\n\tget hasEndContent() {\n\t\treturn !!(this.endContent.length);\n\t}\n\n\tget hasIcon() {\n\t\treturn !!this.icon;\n\t}\n\n\tget isSubMenuOpen() {\n\t\treturn this._popover?.open;\n\t}\n\n\tget ariaLabelledByText() {\n\t\treturn `${this.text} ${this.accessibleName}`.trim();\n\t}\n\n\tget menuHeaderTextPhone() {\n\t\treturn this.text;\n\t}\n\n\tget isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget labelBack() {\n\t\treturn MenuItem.i18nBundle.getText(MENU_BACK_BUTTON_ARIA_LABEL);\n\t}\n\n\tget labelClose() {\n\t\treturn MenuItem.i18nBundle.getText(MENU_CLOSE_BUTTON_ARIA_LABEL);\n\t}\n\n\tonBeforeRendering() {\n\t\tconst siblingsWithIcon = this.items.some(item => !!item.icon);\n\n\t\tthis.items.forEach(item => {\n\t\t\titem._siblingsWithIcon = siblingsWithIcon;\n\t\t});\n\t}\n\n\tget _focusable() {\n\t\treturn true;\n\t}\n\n\tget _accInfo() {\n\t\tconst accInfoSettings = {\n\t\t\trole: \"menuitem\",\n\t\t\tariaHaspopup: this.hasSubmenu ? AriaHasPopup.Menu.toLowerCase() as Lowercase<AriaHasPopup> : undefined,\n\t\t};\n\n\t\treturn { ...super._accInfo, ...accInfoSettings };\n\t}\n\n\tget _popover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_closeAll() {\n\t\tif (this._popover) {\n\t\t\tthis._popover.open = false;\n\t\t}\n\t\tthis.selected = false;\n\t\tthis.fireEvent(\"close-menu\", {});\n\t}\n\n\t_close() {\n\t\tif (this._popover) {\n\t\t\tthis._popover.open = false;\n\t\t}\n\t\tthis.selected = false;\n\t}\n\n\t_beforePopoverOpen(e: CustomEvent) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {}, true, false);\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_afterPopoverOpen() {\n\t\tthis.items[0]?.focus();\n\t\tthis.fireEvent(\"open\", {}, false, false);\n\t}\n\n\t_beforePopoverClose(e: CustomEvent<ResponsivePopoverBeforeCloseEventDetail>) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeCloseEventDetail>(\"before-close\", { escPressed: e.detail.escPressed }, true, false);\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.selected = false;\n\t\tif (e.detail.escPressed) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t_afterPopoverClose() {\n\t\tthis.fireEvent(\"close\", {}, false, false);\n\t}\n}\n\nMenuItem.define();\n\nexport default MenuItem;\n\nexport type {\n\tMenuBeforeCloseEventDetail,\n\tMenuBeforeOpenEventDetail,\n};\n"]}
1
+ {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../src/MenuItem.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 { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\nimport ListItem from \"./ListItem.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport type PopoverPlacement from \"./types/PopoverPlacement.js\";\nimport List from \"./List.js\";\nimport Icon from \"./Icon.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport MenuItemTemplate from \"./generated/templates/MenuItemTemplate.lit.js\";\nimport {\n\tMENU_BACK_BUTTON_ARIA_LABEL,\n\tMENU_CLOSE_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport type { ResponsivePopoverBeforeCloseEventDetail } from \"./ResponsivePopover.js\";\nimport type { IMenuItem } from \"./Menu.js\";\n\n// Styles\nimport menuItemCss from \"./generated/themes/MenuItem.css.js\";\n\ntype MenuBeforeOpenEventDetail = { item?: MenuItem };\ntype MenuBeforeCloseEventDetail = { escPressed: boolean };\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-menu-item` is the item to use inside a `ui5-menu`.\n * An arbitrary hierarchy structure can be represented by recursively nesting menu items.\n *\n * ### Usage\n *\n * `ui5-menu-item` represents a node in a `ui5-menu`. The menu itself is rendered as a list,\n * and each `ui5-menu-item` is represented by a list item in that list. Therefore, you should only use\n * `ui5-menu-item` directly in your apps. The `ui5-li` list item is internal for the list, and not intended for public use.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/MenuItem.js\";`\n * @constructor\n * @extends ListItem\n * @implements {IMenuItem}\n * @since 1.3.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-menu-item\",\n\ttemplate: MenuItemTemplate,\n\tstyles: [ListItem.styles, menuItemCss],\n\tdependencies: [...ListItem.dependencies, ResponsivePopover, List, BusyIndicator, Icon],\n})\nclass MenuItem extends ListItem implements IMenuItem {\n\tstatic async onDefine() {\n\t\tMenuItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t/**\n\t * Defines the text of the tree item.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the `additionalText`, displayed in the end of the menu item.\n\t *\n\t * **Note:** The additional text will not be displayed if there are items added in `items` slot or there are\n\t * components added to `endContent` slot.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @default undefined\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\tadditionalText?: string;\n\n\t/**\n\t * Defines the icon to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * **Example:**\n\t *\n\t * See all the available icons in 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\ticon?: string;\n\n\t/**\n\t * Defines whether `ui5-menu-item` is in disabled state.\n\t *\n\t * **Note:** A disabled `ui5-menu-item` 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 delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.\n\t *\n\t * **Note:** If set to `true` a `ui5-busy-indicator` component will be displayed into the related one to the current `ui5-menu-item` sub-menu popover.\n\t * @default false\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ type: Boolean })\n\tloading = false;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the loading indicator will be displayed inside the corresponding ui5-menu popover.\n\t * @default 1000\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ type: Number })\n\tloadingDelay = 1000;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.7.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the text of the tooltip for the menu item.\n\t * @default undefined\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@property()\n\ttooltip?: string;\n\n\t/**\n\t * Indicates whether any of the element siblings have icon.\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_siblingsWithIcon = false;\n\n\t/**\n\t * Defines the items of this component.\n\t *\n\t * **Note:** The slot can hold `ui5-menu-item` and `ui5-menu-separator` items.\n\t *\n\t * If there are items added to this slot, an arrow will be displayed at the end\n\t * of the item in order to indicate that there are items added. In that case components added\n\t * to `endContent` slot or `additionalText` content will not be displayed.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<IMenuItem>;\n\n\t/**\n\t * Defines the components that should be displayed at the end of the menu item.\n\t *\n\t * **Note:** It is highly recommended to slot only components of type `ui5-button`,`ui5-link`\n\t * or `ui5-icon` in order to preserve the intended design. If there are components added to this slot,\n\t * and there is text set in `additionalText`, it will not be displayed. If there are items added to `items` slot,\n\t * nether `additionalText` nor components added to this slot would be displayed.\n\t *\n\t * The priority of what will be displayed at the end of the menu item is as follows:\n\t * sub-menu arrow (if there are items added in `items` slot) -> components added in `endContent` -> text set to `additionalText`.\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@slot({ type: HTMLElement })\n\tendContent!: Array<HTMLElement>;\n\n\tget placement(): `${PopoverPlacement}` {\n\t\treturn this.isRtl ? \"Start\" : \"End\";\n\t}\n\n\tget isRtl() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget hasSubmenu() {\n\t\treturn !!(this.items.length || this.loading);\n\t}\n\n\tget hasEndContent() {\n\t\treturn !!(this.endContent.length);\n\t}\n\n\tget hasIcon() {\n\t\treturn !!this.icon;\n\t}\n\n\tget isSubMenuOpen() {\n\t\treturn this._popover?.open;\n\t}\n\n\tget ariaLabelledByText() {\n\t\treturn `${this.text} ${this.accessibleName}`.trim();\n\t}\n\n\tget menuHeaderTextPhone() {\n\t\treturn this.text;\n\t}\n\n\tget isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget labelBack() {\n\t\treturn MenuItem.i18nBundle.getText(MENU_BACK_BUTTON_ARIA_LABEL);\n\t}\n\n\tget labelClose() {\n\t\treturn MenuItem.i18nBundle.getText(MENU_CLOSE_BUTTON_ARIA_LABEL);\n\t}\n\n\tget isSeparator(): boolean {\n\t\treturn false;\n\t}\n\n\tonBeforeRendering() {\n\t\tconst siblingsWithIcon = this._menuItems.some(menuItem => !!menuItem.icon);\n\n\t\tthis._menuItems.forEach(item => {\n\t\t\titem._siblingsWithIcon = siblingsWithIcon;\n\t\t});\n\t}\n\n\tget _focusable() {\n\t\treturn true;\n\t}\n\n\tget _accInfo() {\n\t\tconst accInfoSettings = {\n\t\t\trole: \"menuitem\",\n\t\t\tariaHaspopup: this.hasSubmenu ? AriaHasPopup.Menu.toLowerCase() as Lowercase<AriaHasPopup> : undefined,\n\t\t};\n\n\t\treturn { ...super._accInfo, ...accInfoSettings };\n\t}\n\n\tget _popover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tget _menuItems() {\n\t\treturn this.items.filter((item): item is MenuItem => !item.isSeparator);\n\t}\n\n\t_closeAll() {\n\t\tif (this._popover) {\n\t\t\tthis._popover.open = false;\n\t\t}\n\t\tthis.selected = false;\n\t\tthis.fireEvent(\"close-menu\", {});\n\t}\n\n\t_close() {\n\t\tif (this._popover) {\n\t\t\tthis._popover.open = false;\n\t\t}\n\t\tthis.selected = false;\n\t}\n\n\t_beforePopoverOpen(e: CustomEvent) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {}, true, false);\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_afterPopoverOpen() {\n\t\tthis.items[0]?.focus();\n\t\tthis.fireEvent(\"open\", {}, false, false);\n\t}\n\n\t_beforePopoverClose(e: CustomEvent<ResponsivePopoverBeforeCloseEventDetail>) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeCloseEventDetail>(\"before-close\", { escPressed: e.detail.escPressed }, true, false);\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.selected = false;\n\t\tif (e.detail.escPressed) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t_afterPopoverClose() {\n\t\tthis.fireEvent(\"close\", {}, false, false);\n\t}\n}\n\nMenuItem.define();\n\nexport default MenuItem;\n\nexport type {\n\tMenuBeforeCloseEventDetail,\n\tMenuBeforeOpenEventDetail,\n};\n"]}
@@ -0,0 +1,25 @@
1
+ import type { ClassMap } from "@ui5/webcomponents-base/dist/types.js";
2
+ import ListItemBase from "./ListItemBase.js";
3
+ import type { IMenuItem } from "./Menu.js";
4
+ /**
5
+ * @class
6
+ * The `ui5-menu-separator` represents a horizontal line to separate menu items inside a `ui5-menu`.
7
+ * @constructor
8
+ * @extends ListItemBase
9
+ * @implements {IMenuItem}
10
+ * @public
11
+ * @since 2.0
12
+ */
13
+ declare class MenuSeparator extends ListItemBase implements IMenuItem {
14
+ get isSeparator(): boolean;
15
+ get classes(): ClassMap;
16
+ /**
17
+ * @override
18
+ */
19
+ get _focusable(): boolean;
20
+ /**
21
+ * @override
22
+ */
23
+ get _pressable(): boolean;
24
+ }
25
+ export default MenuSeparator;
@@ -0,0 +1,59 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
8
+ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
9
+ import menuSeparatorTemplate from "./generated/templates/MenuSeparatorTemplate.lit.js";
10
+ import menuSeparatorCss from "./generated/themes/MenuSeparator.css.js";
11
+ import ListItemBase from "./ListItemBase.js";
12
+ import ListItemCustom from "./ListItemCustom.js";
13
+ /**
14
+ * @class
15
+ * The `ui5-menu-separator` represents a horizontal line to separate menu items inside a `ui5-menu`.
16
+ * @constructor
17
+ * @extends ListItemBase
18
+ * @implements {IMenuItem}
19
+ * @public
20
+ * @since 2.0
21
+ */
22
+ let MenuSeparator = class MenuSeparator extends ListItemBase {
23
+ get isSeparator() {
24
+ return true;
25
+ }
26
+ get classes() {
27
+ return {
28
+ main: {
29
+ "ui5-menu-separator": true,
30
+ },
31
+ };
32
+ }
33
+ /**
34
+ * @override
35
+ */
36
+ get _focusable() {
37
+ return false;
38
+ }
39
+ /**
40
+ * @override
41
+ */
42
+ get _pressable() {
43
+ return false;
44
+ }
45
+ };
46
+ MenuSeparator = __decorate([
47
+ customElement({
48
+ tag: "ui5-menu-separator",
49
+ renderer: litRender,
50
+ styles: [menuSeparatorCss],
51
+ template: menuSeparatorTemplate,
52
+ dependencies: [
53
+ ListItemCustom,
54
+ ],
55
+ })
56
+ ], MenuSeparator);
57
+ MenuSeparator.define();
58
+ export default MenuSeparator;
59
+ //# sourceMappingURL=MenuSeparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuSeparator.js","sourceRoot":"","sources":["../src/MenuSeparator.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAE7E,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AACvF,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AACvE,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD;;;;;;;;GAQG;AAWH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,YAAY;IACvC,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,IAAI,EAAE;gBACL,oBAAoB,EAAE,IAAI;aAC1B;SACD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACb,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACb,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AA1BK,aAAa;IAVlB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;QACzB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,CAAC,gBAAgB,CAAC;QAC1B,QAAQ,EAAE,qBAAqB;QAC/B,YAAY,EAAE;YACb,cAAc;SACd;KACD,CAAC;GAEI,aAAa,CA0BlB;AACD,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport menuSeparatorTemplate from \"./generated/templates/MenuSeparatorTemplate.lit.js\";\nimport menuSeparatorCss from \"./generated/themes/MenuSeparator.css.js\";\nimport ListItemBase from \"./ListItemBase.js\";\nimport ListItemCustom from \"./ListItemCustom.js\";\nimport type { IMenuItem } from \"./Menu.js\";\n/**\n * @class\n * The `ui5-menu-separator` represents a horizontal line to separate menu items inside a `ui5-menu`.\n * @constructor\n * @extends ListItemBase\n * @implements {IMenuItem}\n * @public\n * @since 2.0\n */\n@customElement({\n\ttag: \"ui5-menu-separator\",\n\trenderer: litRender,\n\tstyles: [menuSeparatorCss],\n\ttemplate: menuSeparatorTemplate,\n\tdependencies: [\n\t\tListItemCustom,\n\t],\n})\n\nclass MenuSeparator extends ListItemBase implements IMenuItem {\n\tget isSeparator() {\n\t\treturn true;\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-menu-separator\": true,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _focusable() {\n\t\treturn false;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _pressable() {\n\t\treturn false;\n\t}\n}\nMenuSeparator.define();\n\nexport default MenuSeparator;\n"]}
@@ -101,6 +101,7 @@ declare class MessageStrip extends UI5Element {
101
101
  static onDefine(): Promise<void>;
102
102
  static designAnnouncementMappings(): DesignTypeAnnouncemnt;
103
103
  get hiddenText(): string;
104
+ get shouldHideIcon(): boolean;
104
105
  get _closeButtonText(): string;
105
106
  get _closableText(): string;
106
107
  get classes(): ClassMap;
@@ -68,6 +68,43 @@ var DesignClassesMapping;
68
68
  * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.
69
69
  */
70
70
  let MessageStrip = MessageStrip_1 = class MessageStrip extends UI5Element {
71
+ constructor() {
72
+ super(...arguments);
73
+ /**
74
+ * Defines the component type.
75
+ * @default "Information"
76
+ * @public
77
+ * @since 1.0.0-rc.15
78
+ */
79
+ this.design = "Information";
80
+ /**
81
+ * Defines the color scheme of the component.
82
+ * There are 10 predefined schemes.
83
+ * To use one you can set a number from `"1"` to `"10"`. The `colorScheme` `"1"` will be set by default.
84
+ *
85
+ * @default "1"
86
+ * @public
87
+ * @since 2.0.0
88
+ */
89
+ this.colorScheme = "1";
90
+ /**
91
+ * Defines whether the MessageStrip will show an icon in the beginning.
92
+ * You can directly provide an icon with the `icon` slot. Otherwise, the default icon for the type will be used.
93
+ *
94
+ * * **Note:** If <code>MessageStripDesign.ColorSet1</code> or <code>MessageStripDesign.ColorSet2</code> value is set to the <code>design</code> property, default icon will not be presented.
95
+ *
96
+ * @default false
97
+ * @public
98
+ * @since 1.0.0-rc.15
99
+ */
100
+ this.hideIcon = false;
101
+ /**
102
+ * Defines whether the MessageStrip renders close button.
103
+ * @default false
104
+ * @public
105
+ */
106
+ this.hideCloseButton = false;
107
+ }
71
108
  _closeClick() {
72
109
  this.fireEvent("close");
73
110
  }
@@ -90,6 +127,12 @@ let MessageStrip = MessageStrip_1 = class MessageStrip extends UI5Element {
90
127
  get hiddenText() {
91
128
  return `${MessageStrip_1.designAnnouncementMappings()[this.design]} ${this.hideCloseButton ? "" : this._closableText}`;
92
129
  }
130
+ get shouldHideIcon() {
131
+ if (this.designClasses === DesignClassesMapping.ColorSet1 || this.designClasses === DesignClassesMapping.ColorSet2) {
132
+ return this.hideIcon || this.icon.length === 0;
133
+ }
134
+ return this.hideIcon;
135
+ }
93
136
  get _closeButtonText() {
94
137
  return MessageStrip_1.i18nBundle.getText(MESSAGE_STRIP_CLOSE_BUTTON);
95
138
  }
@@ -100,7 +143,7 @@ let MessageStrip = MessageStrip_1 = class MessageStrip extends UI5Element {
100
143
  return {
101
144
  root: {
102
145
  "ui5-message-strip-root": true,
103
- "ui5-message-strip-root-hide-icon": this.hideIcon,
146
+ "ui5-message-strip-root-hide-icon": this.shouldHideIcon,
104
147
  "ui5-message-strip-root-hide-close-button": this.hideCloseButton,
105
148
  [this.designClasses]: true,
106
149
  },
@@ -128,13 +171,10 @@ let MessageStrip = MessageStrip_1 = class MessageStrip extends UI5Element {
128
171
  }
129
172
  };
130
173
  __decorate([
131
- property({
132
- type: MessageStripDesign,
133
- defaultValue: MessageStripDesign.Information,
134
- })
174
+ property()
135
175
  ], MessageStrip.prototype, "design", void 0);
136
176
  __decorate([
137
- property({ defaultValue: "1" })
177
+ property()
138
178
  ], MessageStrip.prototype, "colorScheme", void 0);
139
179
  __decorate([
140
180
  property({ type: Boolean })
@@ -1 +1 @@
1
- {"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.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 customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport MessageStripDesign from \"./types/MessageStripDesign.js\";\nimport MessageStripTemplate from \"./generated/templates/MessageStripTemplate.lit.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport {\n\tMESSAGE_STRIP_CLOSE_BUTTON,\n\tMESSAGE_STRIP_CLOSABLE,\n\tMESSAGE_STRIP_ERROR,\n\tMESSAGE_STRIP_WARNING,\n\tMESSAGE_STRIP_SUCCESS,\n\tMESSAGE_STRIP_INFORMATION,\n\tMESSAGE_STRIP_CUSTOM,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport messageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\nenum DesignClassesMapping {\n\tInformation = \"ui5-message-strip-root--info\",\n\tPositive = \"ui5-message-strip-root--positive\",\n\tNegative = \"ui5-message-strip-root--negative\",\n\tCritical = \"ui5-message-strip-root--critical\",\n\tColorSet1 = \"ui5-message-strip-root--color-set-1\",\n\tColorSet2 = \"ui5-message-strip-root--color-set-2\",\n}\n\ntype DesignTypeAnnouncemnt = Record<MessageStripDesign, string>;\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-message-strip` component enables the embedding of app-related messages.\n * It displays 4 designs of messages, each with corresponding semantic color and icon: Information, Positive, Critical and Negative.\n * Each message can have a Close button, so that it can be removed from the UI, if needed.\n *\n * ### Usage\n *\n * For the `ui5-message-strip` component, you can define whether it displays\n * an icon in the beginning and a close button. Moreover, its size and background\n * can be controlled with CSS.\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/MessageStrip.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 0.9.0\n * @slot {Array<Node>} default\n * Defines the text of the component.\n *\n * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n */\n@customElement({\n\ttag: \"ui5-message-strip\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: MessageStripTemplate,\n\tstyles: messageStripCss,\n\tdependencies: [Icon, Button],\n})\n/**\n * Fired when the close button is pressed either with a\n * click/tap or by using the Enter or Space key.\n * @public\n */\n@event(\"close\")\n\nclass MessageStrip extends UI5Element {\n\t/**\n\t * Defines the component type.\n\t * @default \"Information\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({\n\t\ttype: MessageStripDesign,\n\t\tdefaultValue: MessageStripDesign.Information,\n\t})\n\tdesign!: `${MessageStripDesign}`;\n\n\t/**\n\t * Defines the color scheme of the component.\n\t * There are 10 predefined schemes.\n\t * To use one you can set a number from `\"1\"` to `\"10\"`. The `colorScheme` `\"1\"` will be set by default.\n\t *\n\t * @default \"1\"\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ defaultValue: \"1\" })\n\tcolorScheme!: string;\n\n\t/**\n\t * Defines whether the MessageStrip will show an icon in the beginning.\n\t * You can directly provide an icon with the `icon` slot. Otherwise, the default icon for the type will be used.\n\t *\n\t * * **Note:** If <code>MessageStripDesign.ColorSet1</code> or <code>MessageStripDesign.ColorSet2</code> value is set to the <code>design</code> property, default icon will not be presented.\n\t *\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean })\n\thideIcon!: boolean;\n\n\t/**\n\t * Defines whether the MessageStrip renders close button.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideCloseButton!: boolean;\n\n\t/**\n\t * Defines the content to be displayed as graphical element within the component.\n\t *\n\t * **Note:** If no icon is given, the default icon for the component type will be used.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<IIcon>;\n\n\tstatic i18nBundle: I18nBundle;\n\n\t_closeClick() {\n\t\tthis.fireEvent(\"close\");\n\t}\n\n\tstatic async onDefine() {\n\t\tMessageStrip.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tstatic designAnnouncementMappings(): DesignTypeAnnouncemnt {\n\t\tconst getTranslation = (text:I18nText): string => {\n\t\t\treturn MessageStrip.i18nBundle.getText(text);\n\t\t};\n\n\t\treturn {\n\t\t\tInformation: getTranslation(MESSAGE_STRIP_INFORMATION),\n\t\t\tPositive: getTranslation(MESSAGE_STRIP_SUCCESS),\n\t\t\tNegative: getTranslation(MESSAGE_STRIP_ERROR),\n\t\t\tCritical: getTranslation(MESSAGE_STRIP_WARNING),\n\t\t\tColorSet1: getTranslation(MESSAGE_STRIP_CUSTOM),\n\t\t\tColorSet2: getTranslation(MESSAGE_STRIP_CUSTOM),\n\t\t};\n\t}\n\n\tget hiddenText() {\n\t\treturn `${MessageStrip.designAnnouncementMappings()[this.design]} ${this.hideCloseButton ? \"\" : this._closableText}`;\n\t}\n\n\tget _closeButtonText() {\n\t\treturn MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSE_BUTTON);\n\t}\n\n\tget _closableText() {\n\t\treturn MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSABLE);\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-message-strip-root\": true,\n\t\t\t\t\"ui5-message-strip-root-hide-icon\": this.hideIcon,\n\t\t\t\t\"ui5-message-strip-root-hide-close-button\": this.hideCloseButton,\n\t\t\t\t[this.designClasses]: true,\n\t\t\t},\n\t\t};\n\t}\n\n\tget iconProvided() {\n\t\treturn this.icon.length > 0;\n\t}\n\n\tget standardIconName() {\n\t\tswitch (this.design) {\n\t\tcase MessageStripDesign.Critical:\n\t\t\treturn \"alert\";\n\t\tcase MessageStripDesign.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase MessageStripDesign.Negative:\n\t\t\treturn \"error\";\n\t\tcase MessageStripDesign.Information:\n\t\t\treturn \"information\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget designClasses() {\n\t\treturn DesignClassesMapping[this.design];\n\t}\n}\n\nMessageStrip.define();\n\nexport default MessageStrip;\n"]}
1
+ {"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAIrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,0CAA0C,CAAC;AAClD,OAAO,8CAA8C,CAAC;AACtD,OAAO,8CAA8C,CAAC;AACtD,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,kBAAkB,MAAM,+BAA+B,CAAC;AAC/D,OAAO,oBAAoB,MAAM,mDAAmD,CAAC;AAErF,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EACN,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,oBAAoB,GACpB,MAAM,mCAAmC,CAAC;AAE3C,SAAS;AACT,OAAO,eAAe,MAAM,wCAAwC,CAAC;AAErE,IAAK,oBAOJ;AAPD,WAAK,oBAAoB;IACxB,oEAA4C,CAAA;IAC5C,qEAA6C,CAAA;IAC7C,qEAA6C,CAAA;IAC7C,qEAA6C,CAAA;IAC7C,yEAAiD,CAAA;IACjD,yEAAiD,CAAA;AAClD,CAAC,EAPI,oBAAoB,KAApB,oBAAoB,QAOxB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAgBH,IAAM,YAAY,oBAAlB,MAAM,YAAa,SAAQ,UAAU;IAArC;;QACC;;;;;WAKG;QAEH,WAAM,GAA4B,aAAa,CAAC;QAEhD;;;;;;;;WAQG;QAEH,gBAAW,GAAG,GAAG,CAAA;QAEjB;;;;;;;;;WASG;QAEH,aAAQ,GAAG,KAAK,CAAA;QAEhB;;;;WAIG;QAEH,oBAAe,GAAG,KAAK,CAAC;IA4FzB,CAAC;IA5EA,WAAW;QACV,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,cAAY,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,CAAC,0BAA0B;QAChC,MAAM,cAAc,GAAG,CAAC,IAAa,EAAU,EAAE;YAChD,OAAO,cAAY,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC;QAEF,OAAO;YACN,WAAW,EAAE,cAAc,CAAC,yBAAyB,CAAC;YACtD,QAAQ,EAAE,cAAc,CAAC,qBAAqB,CAAC;YAC/C,QAAQ,EAAE,cAAc,CAAC,mBAAmB,CAAC;YAC7C,QAAQ,EAAE,cAAc,CAAC,qBAAqB,CAAC;YAC/C,SAAS,EAAE,cAAc,CAAC,oBAAoB,CAAC;YAC/C,SAAS,EAAE,cAAc,CAAC,oBAAoB,CAAC;SAC/C,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACb,OAAO,GAAG,cAAY,CAAC,0BAA0B,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACtH,CAAC;IAED,IAAI,cAAc;QACjB,IAAI,IAAI,CAAC,aAAa,KAAK,oBAAoB,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,oBAAoB,CAAC,SAAS,EAAE;YACnH,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;SAC/C;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,cAAY,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,cAAY,CAAC,UAAU,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,IAAI,EAAE;gBACL,wBAAwB,EAAE,IAAI;gBAC9B,kCAAkC,EAAE,IAAI,CAAC,cAAc;gBACvD,0CAA0C,EAAE,IAAI,CAAC,eAAe;gBAChE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI;aAC1B;SACD,CAAC;IACH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,gBAAgB;QACnB,QAAQ,IAAI,CAAC,MAAM,EAAE;YACrB,KAAK,kBAAkB,CAAC,QAAQ;gBAC/B,OAAO,OAAO,CAAC;YAChB,KAAK,kBAAkB,CAAC,QAAQ;gBAC/B,OAAO,aAAa,CAAC;YACtB,KAAK,kBAAkB,CAAC,QAAQ;gBAC/B,OAAO,OAAO,CAAC;YAChB,KAAK,kBAAkB,CAAC,WAAW;gBAClC,OAAO,aAAa,CAAC;YACtB;gBACC,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;CACD,CAAA;AA7HA;IADC,QAAQ,EAAE;4CACqC;AAYhD;IADC,QAAQ,EAAE;iDACM;AAajB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACZ;AAQhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qDACJ;AAYxB;IADC,IAAI,EAAE;0CACa;AArDf,YAAY;IAfjB,aAAa,CAAC;QACd,GAAG,EAAE,mBAAmB;QACxB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,eAAe;QACvB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF;;;;OAIG;;IACF,KAAK,CAAC,OAAO,CAAC;GAET,YAAY,CAqIjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.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 customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport MessageStripDesign from \"./types/MessageStripDesign.js\";\nimport MessageStripTemplate from \"./generated/templates/MessageStripTemplate.lit.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport {\n\tMESSAGE_STRIP_CLOSE_BUTTON,\n\tMESSAGE_STRIP_CLOSABLE,\n\tMESSAGE_STRIP_ERROR,\n\tMESSAGE_STRIP_WARNING,\n\tMESSAGE_STRIP_SUCCESS,\n\tMESSAGE_STRIP_INFORMATION,\n\tMESSAGE_STRIP_CUSTOM,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport messageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\nenum DesignClassesMapping {\n\tInformation = \"ui5-message-strip-root--info\",\n\tPositive = \"ui5-message-strip-root--positive\",\n\tNegative = \"ui5-message-strip-root--negative\",\n\tCritical = \"ui5-message-strip-root--critical\",\n\tColorSet1 = \"ui5-message-strip-root--color-set-1\",\n\tColorSet2 = \"ui5-message-strip-root--color-set-2\",\n}\n\ntype DesignTypeAnnouncemnt = Record<MessageStripDesign, string>;\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-message-strip` component enables the embedding of app-related messages.\n * It displays 4 designs of messages, each with corresponding semantic color and icon: Information, Positive, Critical and Negative.\n * Each message can have a Close button, so that it can be removed from the UI, if needed.\n *\n * ### Usage\n *\n * For the `ui5-message-strip` component, you can define whether it displays\n * an icon in the beginning and a close button. Moreover, its size and background\n * can be controlled with CSS.\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/MessageStrip.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 0.9.0\n * @slot {Array<Node>} default\n * Defines the text of the component.\n *\n * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n */\n@customElement({\n\ttag: \"ui5-message-strip\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: MessageStripTemplate,\n\tstyles: messageStripCss,\n\tdependencies: [Icon, Button],\n})\n/**\n * Fired when the close button is pressed either with a\n * click/tap or by using the Enter or Space key.\n * @public\n */\n@event(\"close\")\n\nclass MessageStrip extends UI5Element {\n\t/**\n\t * Defines the component type.\n\t * @default \"Information\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\tdesign: `${MessageStripDesign}` = \"Information\";\n\n\t/**\n\t * Defines the color scheme of the component.\n\t * There are 10 predefined schemes.\n\t * To use one you can set a number from `\"1\"` to `\"10\"`. The `colorScheme` `\"1\"` will be set by default.\n\t *\n\t * @default \"1\"\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property()\n\tcolorScheme = \"1\"\n\n\t/**\n\t * Defines whether the MessageStrip will show an icon in the beginning.\n\t * You can directly provide an icon with the `icon` slot. Otherwise, the default icon for the type will be used.\n\t *\n\t * * **Note:** If <code>MessageStripDesign.ColorSet1</code> or <code>MessageStripDesign.ColorSet2</code> value is set to the <code>design</code> property, default icon will not be presented.\n\t *\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean })\n\thideIcon = false\n\n\t/**\n\t * Defines whether the MessageStrip renders close button.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideCloseButton = false;\n\n\t/**\n\t * Defines the content to be displayed as graphical element within the component.\n\t *\n\t * **Note:** If no icon is given, the default icon for the component type will be used.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<IIcon>;\n\n\tstatic i18nBundle: I18nBundle;\n\n\t_closeClick() {\n\t\tthis.fireEvent(\"close\");\n\t}\n\n\tstatic async onDefine() {\n\t\tMessageStrip.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tstatic designAnnouncementMappings(): DesignTypeAnnouncemnt {\n\t\tconst getTranslation = (text:I18nText): string => {\n\t\t\treturn MessageStrip.i18nBundle.getText(text);\n\t\t};\n\n\t\treturn {\n\t\t\tInformation: getTranslation(MESSAGE_STRIP_INFORMATION),\n\t\t\tPositive: getTranslation(MESSAGE_STRIP_SUCCESS),\n\t\t\tNegative: getTranslation(MESSAGE_STRIP_ERROR),\n\t\t\tCritical: getTranslation(MESSAGE_STRIP_WARNING),\n\t\t\tColorSet1: getTranslation(MESSAGE_STRIP_CUSTOM),\n\t\t\tColorSet2: getTranslation(MESSAGE_STRIP_CUSTOM),\n\t\t};\n\t}\n\n\tget hiddenText() {\n\t\treturn `${MessageStrip.designAnnouncementMappings()[this.design]} ${this.hideCloseButton ? \"\" : this._closableText}`;\n\t}\n\n\tget shouldHideIcon() {\n\t\tif (this.designClasses === DesignClassesMapping.ColorSet1 || this.designClasses === DesignClassesMapping.ColorSet2) {\n\t\t\treturn this.hideIcon || this.icon.length === 0;\n\t\t}\n\n\t\treturn this.hideIcon;\n\t}\n\n\tget _closeButtonText() {\n\t\treturn MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSE_BUTTON);\n\t}\n\n\tget _closableText() {\n\t\treturn MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSABLE);\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-message-strip-root\": true,\n\t\t\t\t\"ui5-message-strip-root-hide-icon\": this.shouldHideIcon,\n\t\t\t\t\"ui5-message-strip-root-hide-close-button\": this.hideCloseButton,\n\t\t\t\t[this.designClasses]: true,\n\t\t\t},\n\t\t};\n\t}\n\n\tget iconProvided() {\n\t\treturn this.icon.length > 0;\n\t}\n\n\tget standardIconName() {\n\t\tswitch (this.design) {\n\t\tcase MessageStripDesign.Critical:\n\t\t\treturn \"alert\";\n\t\tcase MessageStripDesign.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase MessageStripDesign.Negative:\n\t\t\treturn \"error\";\n\t\tcase MessageStripDesign.Information:\n\t\t\treturn \"information\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget designClasses() {\n\t\treturn DesignClassesMapping[this.design];\n\t}\n}\n\nMessageStrip.define();\n\nexport default MessageStrip;\n"]}
@@ -14,7 +14,6 @@ import transformDateToSecondaryType from "@ui5/webcomponents-localization/dist/d
14
14
  import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
15
15
  import CalendarType from "@ui5/webcomponents-base/dist/types/CalendarType.js";
16
16
  import { isEnter, isSpace, isDown, isUp, isLeft, isRight, isHome, isEnd, isHomeCtrl, isEndCtrl, isPageUp, isPageDown, } from "@ui5/webcomponents-base/dist/Keys.js";
17
- import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
18
17
  import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
19
18
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
20
19
  import { MONTH_PICKER_DESCRIPTION, } from "./generated/i18n/i18n-defaults.js";
@@ -34,6 +33,18 @@ const PAGE_SIZE = 12; // total months on a single page
34
33
  * @private
35
34
  */
36
35
  let MonthPicker = MonthPicker_1 = class MonthPicker extends CalendarPart {
36
+ constructor() {
37
+ super(...arguments);
38
+ /**
39
+ * An array of UTC timestamps representing the selected date
40
+ * or dates depending on the capabilities of the picker component.
41
+ * @public
42
+ * @default []
43
+ */
44
+ this.selectedDates = [];
45
+ this._months = [];
46
+ this._hidden = false;
47
+ }
37
48
  static async onDefine() {
38
49
  MonthPicker_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
39
50
  }
@@ -239,14 +250,10 @@ let MonthPicker = MonthPicker_1 = class MonthPicker extends CalendarPart {
239
250
  }
240
251
  };
241
252
  __decorate([
242
- property({
243
- validator: Integer,
244
- multiple: true,
245
- compareValues: true,
246
- })
253
+ property({ type: Array })
247
254
  ], MonthPicker.prototype, "selectedDates", void 0);
248
255
  __decorate([
249
- property({ type: Object, multiple: true })
256
+ property({ type: Array })
250
257
  ], MonthPicker.prototype, "_months", void 0);
251
258
  __decorate([
252
259
  property({ type: Boolean, noAttribute: true })
@@ -1 +1 @@
1
- {"version":3,"file":"MonthPicker.js","sourceRoot":"","sources":["../src/MonthPicker.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 event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport {\n\tisEnter,\n\tisSpace,\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisHome,\n\tisEnd,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisPageUp,\n\tisPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tMONTH_PICKER_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport type { ICalendarPicker } from \"./Calendar.js\";\n\n// Template\nimport MonthPickerTemplate from \"./generated/templates/MonthPickerTemplate.lit.js\";\n\n// Styles\nimport monthPickerStyles from \"./generated/themes/MonthPicker.css.js\";\n\nconst PAGE_SIZE = 12; // total months on a single page\n\ntype Month = {\n\ttimestamp: string,\n\tfocusRef: boolean,\n\t_tabIndex: string,\n\tselected: boolean,\n\tariaSelected: string,\n\tname: string,\n\tnameInSecType: string,\n\tdisabled: boolean,\n\tclasses: string,\n}\n\ntype MonthInterval = Array<Array<Month>>;\n\ntype MonthPickerChangeEventDetail = {\n\ttimestamp: number,\n}\n\ntype MonthPickerNavigateEventDetail = {\n\ttimestamp: number,\n}\n\n/**\n * Month picker component.\n * @class\n *\n * Displays months which can be selected.\n * @constructor\n * @extends CalendarPart\n * @private\n */\n@customElement({\n\ttag: \"ui5-monthpicker\",\n\ttemplate: MonthPickerTemplate,\n\tstyles: monthPickerStyles,\n})\n/**\n * Fired when the user selects a month via \"Space\", \"Enter\" or click.\n * @public\n */\n @event(\"change\")\n/**\n * Fired when the timestamp changes - the user navigates with the keyboard or clicks with the mouse.\n * @since 1.0.0-rc.9\n * @public\n */\n@event(\"navigate\")\nclass MonthPicker extends CalendarPart implements ICalendarPicker {\n\t/**\n\t * An array of UTC timestamps representing the selected date\n\t * or dates depending on the capabilities of the picker component.\n\t * @public\n\t * @default []\n\t */\n\t@property({\n\t\tvalidator: Integer,\n\t\tmultiple: true,\n\t\tcompareValues: true,\n\t})\n\tselectedDates!: Array<number>;\n\n\t@property({ type: Object, multiple: true })\n\t_months!: MonthInterval;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_hidden!: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tMonthPicker.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget roleDescription() {\n\t\treturn MonthPicker.i18nBundle.getText(MONTH_PICKER_DESCRIPTION);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._buildMonths();\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this._hidden) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\tget rowSize() {\n\t\treturn (this.secondaryCalendarType === CalendarType.Islamic && this.primaryCalendarType !== CalendarType.Islamic)\n\t\t\t|| (this.secondaryCalendarType === CalendarType.Persian && this.primaryCalendarType !== CalendarType.Persian) ? 2 : 3;\n\t}\n\n\t_buildMonths() {\n\t\tif (this._hidden) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tconst monthsNames = localeData.getMonthsStandAlone(\"wide\", this._primaryCalendarType);\n\n\t\tconst months: MonthInterval = [];\n\t\tconst calendarDate = this._calendarDate; // store the value of the expensive getter\n\t\tconst minDate = this._minDate; // store the value of the expensive getter\n\t\tconst maxDate = this._maxDate; // store the value of the expensive getter\n\t\tconst tempDate = new CalendarDate(calendarDate, this._primaryCalendarType);\n\t\tlet timestamp;\n\n\t\t/* eslint-disable no-loop-func */\n\t\tfor (let i = 0; i < 12; i++) {\n\t\t\ttempDate.setMonth(i);\n\t\t\ttimestamp = tempDate.valueOf() / 1000;\n\n\t\t\tconst isSelected = this.selectedDates.some(itemTimestamp => {\n\t\t\t\tconst date = CalendarDate.fromTimestamp(itemTimestamp * 1000, this._primaryCalendarType);\n\t\t\t\treturn date.getYear() === tempDate.getYear() && date.getMonth() === tempDate.getMonth();\n\t\t\t});\n\t\t\tconst isFocused = tempDate.getMonth() === calendarDate.getMonth();\n\t\t\tconst isDisabled = this._isOutOfSelectableRange(tempDate, minDate, maxDate);\n\n\t\t\tconst month: Month = {\n\t\t\t\ttimestamp: timestamp.toString(),\n\t\t\t\tfocusRef: isFocused,\n\t\t\t\t_tabIndex: isFocused ? \"0\" : \"-1\",\n\t\t\t\tselected: isSelected,\n\t\t\t\tariaSelected: isSelected ? \"true\" : \"false\",\n\t\t\t\tname: monthsNames[i],\n\t\t\t\tnameInSecType: this.hasSecondaryCalendarType && this._getDisplayedSecondaryMonthText(timestamp).text,\n\t\t\t\tdisabled: isDisabled,\n\t\t\t\tclasses: \"ui5-mp-item\",\n\t\t\t};\n\n\t\t\tif (isSelected) {\n\t\t\t\tmonth.classes += \" ui5-mp-item--selected\";\n\t\t\t}\n\n\t\t\tif (isDisabled) {\n\t\t\t\tmonth.classes += \" ui5-mp-item--disabled\";\n\t\t\t}\n\n\t\t\tconst quarterIndex = Math.floor(i / this.rowSize);\n\n\t\t\tif (months[quarterIndex]) {\n\t\t\t\tmonths[quarterIndex].push(month);\n\t\t\t} else {\n\t\t\t\tmonths[quarterIndex] = [month];\n\t\t\t}\n\t\t}\n\n\t\tthis._months = months;\n\t}\n\n\t_getDisplayedSecondaryMonthText(timestamp: number) {\n\t\tconst monthsName = transformDateToSecondaryType(this._primaryCalendarType, this.secondaryCalendarType, timestamp);\n\t\treturn convertMonthNumbersToMonthNames(monthsName.firstDate.getMonth(), monthsName.lastDate.getMonth(), this.secondaryCalendarType);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tlet preventDefault = true;\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectMonth(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isLeft(e)) {\n\t\t\tthis._modifyTimestampBy(-1);\n\t\t} else if (isRight(e)) {\n\t\t\tthis._modifyTimestampBy(1);\n\t\t} else if (isUp(e)) {\n\t\t\tthis._modifyTimestampBy(-this.rowSize);\n\t\t} else if (isDown(e)) {\n\t\t\tthis._modifyTimestampBy(this.rowSize);\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._modifyTimestampBy(-PAGE_SIZE);\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._modifyTimestampBy(PAGE_SIZE);\n\t\t} else if (isHome(e) || isEnd(e)) {\n\t\t\tthis._onHomeOrEnd(isHome(e));\n\t\t} else if (isHomeCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._months[0][0].timestamp)); // first month of first row\n\t\t} else if (isEndCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._months[PAGE_SIZE / this.rowSize - 1][this.rowSize - 1].timestamp)); // last month of last row\n\t\t} else {\n\t\t\tpreventDefault = false;\n\t\t}\n\n\t\tif (preventDefault) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onHomeOrEnd(homePressed: boolean) {\n\t\tthis._months.forEach(row => {\n\t\t\tconst indexInRow = row.findIndex(item => CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000).getMonth() === this._calendarDate.getMonth());\n\t\t\tif (indexInRow !== -1) { // The current month is on this row\n\t\t\t\tconst index = homePressed ? 0 : this.rowSize - 1; // select the first (if Home) or last (if End) month on the row\n\t\t\t\tthis._setTimestamp(parseInt(row[index].timestamp));\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Sets the timestamp to an absolute value.\n\t * @param value\n\t * @private\n\t */\n\t_setTimestamp(value: number) {\n\t\tthis._safelySetTimestamp(value);\n\t\tthis.fireEvent<MonthPickerNavigateEventDetail>(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t/**\n\t * Modifies timestamp by a given amount of months and,\n\t * if necessary, loads the prev/next page.\n\t * @param amount\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @private\n\t */\n\t_modifyTimestampBy(amount: number, preserveDate?: boolean) {\n\t\t// Modify the current timestamp\n\t\tthis._safelyModifyTimestampBy(amount, \"month\", preserveDate);\n\n\t\t// Notify the calendar to update its timestamp\n\t\tthis.fireEvent<MonthPickerNavigateEventDetail>(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._selectMonth(e);\n\t\t}\n\t}\n\n\t/**\n\t * Selects a month, when the user clicks or presses \"Enter\" or \"Space\".\n\t * @param e\n\t * @private\n\t */\n\t_selectMonth(e: Event) {\n\t\te.preventDefault();\n\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target.className.indexOf(\"ui5-mp-item\") > -1) {\n\t\t\tconst timestamp = this._getTimestampFromDom(target);\n\t\t\tthis._safelySetTimestamp(timestamp);\n\t\t\tthis.fireEvent<MonthPickerChangeEventDetail>(\"change\", { timestamp: this.timestamp! });\n\t\t}\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasPreviousPage(): boolean {\n\t\treturn this._calendarDate.getYear() !== this._minDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasNextPage(): boolean {\n\t\treturn this._calendarDate.getYear() !== this._maxDate.getYear();\n\t}\n\n\t/**\n\t * Called by Calendar.js.\n\t *\n\t * **Note:** when the user presses the \"<\" button in the calendar header (same as \"PageUp\")\n\t * @protected\n\t */\n\t_showPreviousPage() {\n\t\tthis._modifyTimestampBy(-PAGE_SIZE, true);\n\t}\n\n\t/**\n\t * Called by Calendar.js\n\t * **Note:** when the user presses the \">\" button in the calendar header (same as \"PageDown\")\n\t * @protected\n\t */\n\t_showNextPage() {\n\t\tthis._modifyTimestampBy(PAGE_SIZE, true);\n\t}\n\n\t_isOutOfSelectableRange(date: CalendarDate, minDate: CalendarDate, maxDate: CalendarDate): boolean {\n\t\tconst month = date.getMonth();\n\t\tconst year = date.getYear();\n\t\tconst minYear = minDate.getYear();\n\t\tconst minMonth = minDate.getMonth();\n\t\tconst maxYear = maxDate.getYear();\n\t\tconst maxMonth = maxDate.getMonth();\n\n\t\treturn year < minYear || (year === minYear && month < minMonth) || year > maxYear || (year === maxYear && month > maxMonth);\n\t}\n}\n\nMonthPicker.define();\n\nexport default MonthPicker;\nexport type {\n\tMonthPickerNavigateEventDetail,\n\tMonthPickerChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"MonthPicker.js","sourceRoot":"","sources":["../src/MonthPicker.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 event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport {\n\tisEnter,\n\tisSpace,\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisHome,\n\tisEnd,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisPageUp,\n\tisPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tMONTH_PICKER_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport type { ICalendarPicker } from \"./Calendar.js\";\n\n// Template\nimport MonthPickerTemplate from \"./generated/templates/MonthPickerTemplate.lit.js\";\n\n// Styles\nimport monthPickerStyles from \"./generated/themes/MonthPicker.css.js\";\n\nconst PAGE_SIZE = 12; // total months on a single page\n\ntype Month = {\n\ttimestamp: string,\n\tfocusRef: boolean,\n\t_tabIndex: string,\n\tselected: boolean,\n\tariaSelected: string,\n\tname: string,\n\tnameInSecType: string,\n\tdisabled: boolean,\n\tclasses: string,\n}\n\ntype MonthInterval = Array<Array<Month>>;\n\ntype MonthPickerChangeEventDetail = {\n\ttimestamp: number,\n}\n\ntype MonthPickerNavigateEventDetail = {\n\ttimestamp: number,\n}\n\n/**\n * Month picker component.\n * @class\n *\n * Displays months which can be selected.\n * @constructor\n * @extends CalendarPart\n * @private\n */\n@customElement({\n\ttag: \"ui5-monthpicker\",\n\ttemplate: MonthPickerTemplate,\n\tstyles: monthPickerStyles,\n})\n/**\n * Fired when the user selects a month via \"Space\", \"Enter\" or click.\n * @public\n */\n @event(\"change\")\n/**\n * Fired when the timestamp changes - the user navigates with the keyboard or clicks with the mouse.\n * @since 1.0.0-rc.9\n * @public\n */\n@event(\"navigate\")\nclass MonthPicker extends CalendarPart implements ICalendarPicker {\n\t/**\n\t * An array of UTC timestamps representing the selected date\n\t * or dates depending on the capabilities of the picker component.\n\t * @public\n\t * @default []\n\t */\n\t@property({ type: Array })\n\tselectedDates: Array<number> = [];\n\n\t@property({ type: Array })\n\t_months: MonthInterval = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_hidden = false;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tMonthPicker.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget roleDescription() {\n\t\treturn MonthPicker.i18nBundle.getText(MONTH_PICKER_DESCRIPTION);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._buildMonths();\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this._hidden) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\tget rowSize() {\n\t\treturn (this.secondaryCalendarType === CalendarType.Islamic && this.primaryCalendarType !== CalendarType.Islamic)\n\t\t\t|| (this.secondaryCalendarType === CalendarType.Persian && this.primaryCalendarType !== CalendarType.Persian) ? 2 : 3;\n\t}\n\n\t_buildMonths() {\n\t\tif (this._hidden) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tconst monthsNames = localeData.getMonthsStandAlone(\"wide\", this._primaryCalendarType);\n\n\t\tconst months: MonthInterval = [];\n\t\tconst calendarDate = this._calendarDate; // store the value of the expensive getter\n\t\tconst minDate = this._minDate; // store the value of the expensive getter\n\t\tconst maxDate = this._maxDate; // store the value of the expensive getter\n\t\tconst tempDate = new CalendarDate(calendarDate, this._primaryCalendarType);\n\t\tlet timestamp;\n\n\t\t/* eslint-disable no-loop-func */\n\t\tfor (let i = 0; i < 12; i++) {\n\t\t\ttempDate.setMonth(i);\n\t\t\ttimestamp = tempDate.valueOf() / 1000;\n\n\t\t\tconst isSelected = this.selectedDates.some(itemTimestamp => {\n\t\t\t\tconst date = CalendarDate.fromTimestamp(itemTimestamp * 1000, this._primaryCalendarType);\n\t\t\t\treturn date.getYear() === tempDate.getYear() && date.getMonth() === tempDate.getMonth();\n\t\t\t});\n\t\t\tconst isFocused = tempDate.getMonth() === calendarDate.getMonth();\n\t\t\tconst isDisabled = this._isOutOfSelectableRange(tempDate, minDate, maxDate);\n\n\t\t\tconst month: Month = {\n\t\t\t\ttimestamp: timestamp.toString(),\n\t\t\t\tfocusRef: isFocused,\n\t\t\t\t_tabIndex: isFocused ? \"0\" : \"-1\",\n\t\t\t\tselected: isSelected,\n\t\t\t\tariaSelected: isSelected ? \"true\" : \"false\",\n\t\t\t\tname: monthsNames[i],\n\t\t\t\tnameInSecType: this.hasSecondaryCalendarType && this._getDisplayedSecondaryMonthText(timestamp).text,\n\t\t\t\tdisabled: isDisabled,\n\t\t\t\tclasses: \"ui5-mp-item\",\n\t\t\t};\n\n\t\t\tif (isSelected) {\n\t\t\t\tmonth.classes += \" ui5-mp-item--selected\";\n\t\t\t}\n\n\t\t\tif (isDisabled) {\n\t\t\t\tmonth.classes += \" ui5-mp-item--disabled\";\n\t\t\t}\n\n\t\t\tconst quarterIndex = Math.floor(i / this.rowSize);\n\n\t\t\tif (months[quarterIndex]) {\n\t\t\t\tmonths[quarterIndex].push(month);\n\t\t\t} else {\n\t\t\t\tmonths[quarterIndex] = [month];\n\t\t\t}\n\t\t}\n\n\t\tthis._months = months;\n\t}\n\n\t_getDisplayedSecondaryMonthText(timestamp: number) {\n\t\tconst monthsName = transformDateToSecondaryType(this._primaryCalendarType, this.secondaryCalendarType, timestamp);\n\t\treturn convertMonthNumbersToMonthNames(monthsName.firstDate.getMonth(), monthsName.lastDate.getMonth(), this.secondaryCalendarType);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tlet preventDefault = true;\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectMonth(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isLeft(e)) {\n\t\t\tthis._modifyTimestampBy(-1);\n\t\t} else if (isRight(e)) {\n\t\t\tthis._modifyTimestampBy(1);\n\t\t} else if (isUp(e)) {\n\t\t\tthis._modifyTimestampBy(-this.rowSize);\n\t\t} else if (isDown(e)) {\n\t\t\tthis._modifyTimestampBy(this.rowSize);\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._modifyTimestampBy(-PAGE_SIZE);\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._modifyTimestampBy(PAGE_SIZE);\n\t\t} else if (isHome(e) || isEnd(e)) {\n\t\t\tthis._onHomeOrEnd(isHome(e));\n\t\t} else if (isHomeCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._months[0][0].timestamp)); // first month of first row\n\t\t} else if (isEndCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._months[PAGE_SIZE / this.rowSize - 1][this.rowSize - 1].timestamp)); // last month of last row\n\t\t} else {\n\t\t\tpreventDefault = false;\n\t\t}\n\n\t\tif (preventDefault) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onHomeOrEnd(homePressed: boolean) {\n\t\tthis._months.forEach(row => {\n\t\t\tconst indexInRow = row.findIndex(item => CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000).getMonth() === this._calendarDate.getMonth());\n\t\t\tif (indexInRow !== -1) { // The current month is on this row\n\t\t\t\tconst index = homePressed ? 0 : this.rowSize - 1; // select the first (if Home) or last (if End) month on the row\n\t\t\t\tthis._setTimestamp(parseInt(row[index].timestamp));\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Sets the timestamp to an absolute value.\n\t * @param value\n\t * @private\n\t */\n\t_setTimestamp(value: number) {\n\t\tthis._safelySetTimestamp(value);\n\t\tthis.fireEvent<MonthPickerNavigateEventDetail>(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t/**\n\t * Modifies timestamp by a given amount of months and,\n\t * if necessary, loads the prev/next page.\n\t * @param amount\n\t * @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)\n\t * @private\n\t */\n\t_modifyTimestampBy(amount: number, preserveDate?: boolean) {\n\t\t// Modify the current timestamp\n\t\tthis._safelyModifyTimestampBy(amount, \"month\", preserveDate);\n\n\t\t// Notify the calendar to update its timestamp\n\t\tthis.fireEvent<MonthPickerNavigateEventDetail>(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._selectMonth(e);\n\t\t}\n\t}\n\n\t/**\n\t * Selects a month, when the user clicks or presses \"Enter\" or \"Space\".\n\t * @param e\n\t * @private\n\t */\n\t_selectMonth(e: Event) {\n\t\te.preventDefault();\n\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target.className.indexOf(\"ui5-mp-item\") > -1) {\n\t\t\tconst timestamp = this._getTimestampFromDom(target);\n\t\t\tthis._safelySetTimestamp(timestamp);\n\t\t\tthis.fireEvent<MonthPickerChangeEventDetail>(\"change\", { timestamp: this.timestamp! });\n\t\t}\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasPreviousPage(): boolean {\n\t\treturn this._calendarDate.getYear() !== this._minDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasNextPage(): boolean {\n\t\treturn this._calendarDate.getYear() !== this._maxDate.getYear();\n\t}\n\n\t/**\n\t * Called by Calendar.js.\n\t *\n\t * **Note:** when the user presses the \"<\" button in the calendar header (same as \"PageUp\")\n\t * @protected\n\t */\n\t_showPreviousPage() {\n\t\tthis._modifyTimestampBy(-PAGE_SIZE, true);\n\t}\n\n\t/**\n\t * Called by Calendar.js\n\t * **Note:** when the user presses the \">\" button in the calendar header (same as \"PageDown\")\n\t * @protected\n\t */\n\t_showNextPage() {\n\t\tthis._modifyTimestampBy(PAGE_SIZE, true);\n\t}\n\n\t_isOutOfSelectableRange(date: CalendarDate, minDate: CalendarDate, maxDate: CalendarDate): boolean {\n\t\tconst month = date.getMonth();\n\t\tconst year = date.getYear();\n\t\tconst minYear = minDate.getYear();\n\t\tconst minMonth = minDate.getMonth();\n\t\tconst maxYear = maxDate.getYear();\n\t\tconst maxMonth = maxDate.getMonth();\n\n\t\treturn year < minYear || (year === minYear && month < minMonth) || year > maxYear || (year === maxYear && month > maxMonth);\n\t}\n}\n\nMonthPicker.define();\n\nexport default MonthPicker;\nexport type {\n\tMonthPickerNavigateEventDetail,\n\tMonthPickerChangeEventDetail,\n};\n"]}