@ui5/webcomponents 2.27.1 → 2.28.0-rc.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 (570) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Avatar.d.ts +13 -7
  4. package/dist/Avatar.js +10 -6
  5. package/dist/Avatar.js.map +1 -1
  6. package/dist/AvatarGroup.d.ts +2 -2
  7. package/dist/AvatarGroup.js +3 -3
  8. package/dist/AvatarGroup.js.map +1 -1
  9. package/dist/Bar.d.ts +1 -1
  10. package/dist/Bar.js +1 -1
  11. package/dist/Bar.js.map +1 -1
  12. package/dist/Breadcrumbs.d.ts +2 -1
  13. package/dist/Breadcrumbs.js +2 -1
  14. package/dist/Breadcrumbs.js.map +1 -1
  15. package/dist/BreadcrumbsItem.d.ts +1 -1
  16. package/dist/BreadcrumbsItem.js +1 -1
  17. package/dist/BreadcrumbsItem.js.map +1 -1
  18. package/dist/BusyIndicator.d.ts +2 -2
  19. package/dist/BusyIndicator.js +1 -1
  20. package/dist/BusyIndicator.js.map +1 -1
  21. package/dist/Button.d.ts +4 -3
  22. package/dist/Button.js +3 -2
  23. package/dist/Button.js.map +1 -1
  24. package/dist/Calendar.d.ts +4 -1
  25. package/dist/Calendar.js +4 -1
  26. package/dist/Calendar.js.map +1 -1
  27. package/dist/CalendarLegend.d.ts +1 -0
  28. package/dist/CalendarLegend.js +1 -0
  29. package/dist/CalendarLegend.js.map +1 -1
  30. package/dist/Card.d.ts +4 -3
  31. package/dist/Card.js +1 -0
  32. package/dist/Card.js.map +1 -1
  33. package/dist/CardHeader.d.ts +1 -1
  34. package/dist/CardHeader.js +1 -1
  35. package/dist/CardHeader.js.map +1 -1
  36. package/dist/Carousel.d.ts +13 -13
  37. package/dist/Carousel.js +12 -12
  38. package/dist/Carousel.js.map +1 -1
  39. package/dist/CheckBox.d.ts +1 -1
  40. package/dist/CheckBox.js +1 -1
  41. package/dist/CheckBox.js.map +1 -1
  42. package/dist/ColorPalette.d.ts +9 -5
  43. package/dist/ColorPalette.js +12 -5
  44. package/dist/ColorPalette.js.map +1 -1
  45. package/dist/ColorPaletteItem.d.ts +2 -2
  46. package/dist/ColorPaletteItem.js +2 -2
  47. package/dist/ColorPaletteItem.js.map +1 -1
  48. package/dist/ColorPalettePopover.d.ts +2 -2
  49. package/dist/ColorPalettePopover.js +2 -2
  50. package/dist/ColorPalettePopover.js.map +1 -1
  51. package/dist/ColorPicker.d.ts +3 -1
  52. package/dist/ColorPicker.js +7 -1
  53. package/dist/ColorPicker.js.map +1 -1
  54. package/dist/ComboBox.d.ts +35 -7
  55. package/dist/ComboBox.js +134 -8
  56. package/dist/ComboBox.js.map +1 -1
  57. package/dist/ComboBoxItem.d.ts +1 -1
  58. package/dist/ComboBoxItem.js.map +1 -1
  59. package/dist/ComboBoxItemGroup.d.ts +1 -1
  60. package/dist/ComboBoxItemGroup.js +1 -1
  61. package/dist/ComboBoxItemGroup.js.map +1 -1
  62. package/dist/ComboBoxPopoverTemplate.js +43 -20
  63. package/dist/ComboBoxPopoverTemplate.js.map +1 -1
  64. package/dist/ComboBoxTemplate.js +4 -2
  65. package/dist/ComboBoxTemplate.js.map +1 -1
  66. package/dist/DateComponentBase.d.ts +3 -3
  67. package/dist/DateComponentBase.js +2 -2
  68. package/dist/DateComponentBase.js.map +1 -1
  69. package/dist/DatePicker.d.ts +5 -5
  70. package/dist/DatePicker.js +2 -2
  71. package/dist/DatePicker.js.map +1 -1
  72. package/dist/DateRangePicker.d.ts +1 -1
  73. package/dist/DateRangePicker.js +1 -1
  74. package/dist/DateRangePicker.js.map +1 -1
  75. package/dist/DateTimePicker.d.ts +1 -1
  76. package/dist/DateTimePicker.js +1 -1
  77. package/dist/DateTimePicker.js.map +1 -1
  78. package/dist/DayPicker.d.ts +1 -1
  79. package/dist/DayPicker.js +4 -3
  80. package/dist/DayPicker.js.map +1 -1
  81. package/dist/Dialog.d.ts +3 -3
  82. package/dist/Dialog.js +3 -3
  83. package/dist/Dialog.js.map +1 -1
  84. package/dist/FileUploader.d.ts +2 -2
  85. package/dist/FileUploader.js +1 -1
  86. package/dist/FileUploader.js.map +1 -1
  87. package/dist/Form.d.ts +2 -0
  88. package/dist/Form.js +2 -0
  89. package/dist/Form.js.map +1 -1
  90. package/dist/GridWalker.d.ts +1 -0
  91. package/dist/GridWalker.js +3 -0
  92. package/dist/GridWalker.js.map +1 -1
  93. package/dist/Input.d.ts +10 -6
  94. package/dist/Input.js +7 -3
  95. package/dist/Input.js.map +1 -1
  96. package/dist/InputIcon.d.ts +12 -1
  97. package/dist/InputIcon.js +15 -1
  98. package/dist/InputIcon.js.map +1 -1
  99. package/dist/Link.d.ts +17 -2
  100. package/dist/Link.js +16 -1
  101. package/dist/Link.js.map +1 -1
  102. package/dist/List.d.ts +9 -6
  103. package/dist/List.js +9 -6
  104. package/dist/List.js.map +1 -1
  105. package/dist/ListItem.d.ts +1 -1
  106. package/dist/ListItem.js +1 -1
  107. package/dist/ListItem.js.map +1 -1
  108. package/dist/ListItemBase.d.ts +1 -1
  109. package/dist/ListItemBase.js +1 -1
  110. package/dist/ListItemBase.js.map +1 -1
  111. package/dist/ListItemCustom.d.ts +1 -1
  112. package/dist/ListItemCustom.js.map +1 -1
  113. package/dist/ListItemStandard.d.ts +4 -4
  114. package/dist/ListItemStandard.js +1 -1
  115. package/dist/ListItemStandard.js.map +1 -1
  116. package/dist/Menu.d.ts +3 -0
  117. package/dist/Menu.js +3 -0
  118. package/dist/Menu.js.map +1 -1
  119. package/dist/MessageStrip.d.ts +3 -3
  120. package/dist/MessageStrip.js +3 -3
  121. package/dist/MessageStrip.js.map +1 -1
  122. package/dist/MonthPicker.js +1 -1
  123. package/dist/MonthPicker.js.map +1 -1
  124. package/dist/MultiComboBox.d.ts +7 -4
  125. package/dist/MultiComboBox.js +5 -2
  126. package/dist/MultiComboBox.js.map +1 -1
  127. package/dist/MultiInput.d.ts +1 -1
  128. package/dist/MultiInput.js +1 -1
  129. package/dist/MultiInput.js.map +1 -1
  130. package/dist/{NumberInput.d.ts → NumericInput.d.ts} +9 -9
  131. package/dist/{NumberInput.js → NumericInput.js} +50 -50
  132. package/dist/NumericInput.js.map +1 -0
  133. package/dist/NumericInputTemplate.d.ts +2 -0
  134. package/dist/{NumberInputTemplate.js → NumericInputTemplate.js} +6 -6
  135. package/dist/NumericInputTemplate.js.map +1 -0
  136. package/dist/Option.d.ts +1 -1
  137. package/dist/Option.js.map +1 -1
  138. package/dist/Panel.d.ts +3 -3
  139. package/dist/Panel.js +2 -2
  140. package/dist/Panel.js.map +1 -1
  141. package/dist/Popover.d.ts +13 -2
  142. package/dist/Popover.js +50 -3
  143. package/dist/Popover.js.map +1 -1
  144. package/dist/PopoverResize.d.ts +3 -0
  145. package/dist/PopoverResize.js +53 -23
  146. package/dist/PopoverResize.js.map +1 -1
  147. package/dist/PopoverTemplate.js +3 -1
  148. package/dist/PopoverTemplate.js.map +1 -1
  149. package/dist/Popup.d.ts +2 -2
  150. package/dist/Popup.js +2 -2
  151. package/dist/Popup.js.map +1 -1
  152. package/dist/ProgressIndicator.d.ts +1 -1
  153. package/dist/ProgressIndicator.js +1 -1
  154. package/dist/ProgressIndicator.js.map +1 -1
  155. package/dist/RadioButton.d.ts +1 -1
  156. package/dist/RadioButton.js +2 -2
  157. package/dist/RadioButton.js.map +1 -1
  158. package/dist/RangeSlider.d.ts +1 -1
  159. package/dist/RangeSlider.js +5 -4
  160. package/dist/RangeSlider.js.map +1 -1
  161. package/dist/RangeSliderTemplate.js +3 -3
  162. package/dist/RangeSliderTemplate.js.map +1 -1
  163. package/dist/RatingIndicator.d.ts +5 -5
  164. package/dist/RatingIndicator.js +4 -4
  165. package/dist/RatingIndicator.js.map +1 -1
  166. package/dist/ResponsivePopover.d.ts +2 -2
  167. package/dist/ResponsivePopover.js +2 -2
  168. package/dist/ResponsivePopover.js.map +1 -1
  169. package/dist/SegmentedButton.d.ts +2 -1
  170. package/dist/SegmentedButton.js +2 -1
  171. package/dist/SegmentedButton.js.map +1 -1
  172. package/dist/SegmentedButtonItem.d.ts +1 -1
  173. package/dist/SegmentedButtonItem.js.map +1 -1
  174. package/dist/Select.d.ts +7 -4
  175. package/dist/Select.js +5 -2
  176. package/dist/Select.js.map +1 -1
  177. package/dist/Slider.d.ts +2 -1
  178. package/dist/Slider.js +5 -1
  179. package/dist/Slider.js.map +1 -1
  180. package/dist/SliderBase.d.ts +1 -0
  181. package/dist/SliderBase.js +7 -1
  182. package/dist/SliderBase.js.map +1 -1
  183. package/dist/SliderHandle.d.ts +4 -0
  184. package/dist/SliderHandle.js +7 -0
  185. package/dist/SliderHandle.js.map +1 -1
  186. package/dist/SliderScale.d.ts +4 -0
  187. package/dist/SliderScale.js +13 -0
  188. package/dist/SliderScale.js.map +1 -1
  189. package/dist/SliderScaleTemplate.js +1 -1
  190. package/dist/SliderScaleTemplate.js.map +1 -1
  191. package/dist/SliderTemplate.js +1 -1
  192. package/dist/SliderTemplate.js.map +1 -1
  193. package/dist/StepInput.d.ts +8 -7
  194. package/dist/StepInput.js +6 -2
  195. package/dist/StepInput.js.map +1 -1
  196. package/dist/StepInputTemplate.js +2 -2
  197. package/dist/StepInputTemplate.js.map +1 -1
  198. package/dist/SuggestionItem.d.ts +1 -1
  199. package/dist/SuggestionItem.js.map +1 -1
  200. package/dist/SuggestionListItem.d.ts +1 -1
  201. package/dist/SuggestionListItem.js.map +1 -1
  202. package/dist/Switch.d.ts +1 -1
  203. package/dist/Switch.js +1 -1
  204. package/dist/Switch.js.map +1 -1
  205. package/dist/Tab.d.ts +1 -1
  206. package/dist/Tab.js +1 -1
  207. package/dist/Tab.js.map +1 -1
  208. package/dist/TabContainer.d.ts +4 -2
  209. package/dist/TabContainer.js +3 -1
  210. package/dist/TabContainer.js.map +1 -1
  211. package/dist/Table.d.ts +16 -3
  212. package/dist/Table.js +40 -4
  213. package/dist/Table.js.map +1 -1
  214. package/dist/TableGrowing.d.ts +1 -0
  215. package/dist/TableGrowing.js +12 -10
  216. package/dist/TableGrowing.js.map +1 -1
  217. package/dist/TableHeaderRow.d.ts +0 -6
  218. package/dist/TableHeaderRow.js +1 -19
  219. package/dist/TableHeaderRow.js.map +1 -1
  220. package/dist/TableHeaderRowTemplate.js +2 -12
  221. package/dist/TableHeaderRowTemplate.js.map +1 -1
  222. package/dist/TableNavigation.d.ts +1 -0
  223. package/dist/TableNavigation.js +7 -2
  224. package/dist/TableNavigation.js.map +1 -1
  225. package/dist/TableRow.js +2 -11
  226. package/dist/TableRow.js.map +1 -1
  227. package/dist/TableRowBase.d.ts +3 -7
  228. package/dist/TableRowBase.js +10 -26
  229. package/dist/TableRowBase.js.map +1 -1
  230. package/dist/TableRowTemplate.js +1 -3
  231. package/dist/TableRowTemplate.js.map +1 -1
  232. package/dist/TableSelection.d.ts +5 -6
  233. package/dist/TableSelection.js +28 -12
  234. package/dist/TableSelection.js.map +1 -1
  235. package/dist/TableSelectionBase.d.ts +15 -10
  236. package/dist/TableSelectionBase.js +33 -20
  237. package/dist/TableSelectionBase.js.map +1 -1
  238. package/dist/TableSelectionMulti.d.ts +5 -7
  239. package/dist/TableSelectionMulti.js +14 -10
  240. package/dist/TableSelectionMulti.js.map +1 -1
  241. package/dist/TableSelectionSingle.d.ts +3 -2
  242. package/dist/TableSelectionSingle.js +8 -2
  243. package/dist/TableSelectionSingle.js.map +1 -1
  244. package/dist/TableUtils.d.ts +3 -1
  245. package/dist/TableUtils.js +4 -1
  246. package/dist/TableUtils.js.map +1 -1
  247. package/dist/TextArea.d.ts +52 -5
  248. package/dist/TextArea.js +67 -6
  249. package/dist/TextArea.js.map +1 -1
  250. package/dist/TextAreaTemplate.js +2 -2
  251. package/dist/TextAreaTemplate.js.map +1 -1
  252. package/dist/TimePicker.d.ts +2 -2
  253. package/dist/TimePicker.js +1 -1
  254. package/dist/TimePicker.js.map +1 -1
  255. package/dist/Toast.d.ts +1 -1
  256. package/dist/Toast.js +1 -1
  257. package/dist/Toast.js.map +1 -1
  258. package/dist/Token.d.ts +2 -2
  259. package/dist/Token.js +1 -1
  260. package/dist/Token.js.map +1 -1
  261. package/dist/Tokenizer.d.ts +1 -0
  262. package/dist/Tokenizer.js +18 -1
  263. package/dist/Tokenizer.js.map +1 -1
  264. package/dist/Toolbar.d.ts +6 -0
  265. package/dist/Toolbar.js +6 -0
  266. package/dist/Toolbar.js.map +1 -1
  267. package/dist/Tree.d.ts +3 -1
  268. package/dist/Tree.js +5 -3
  269. package/dist/Tree.js.map +1 -1
  270. package/dist/TreeItem.d.ts +2 -2
  271. package/dist/TreeItem.js +1 -1
  272. package/dist/TreeItem.js.map +1 -1
  273. package/dist/TreeItemBase.d.ts +3 -3
  274. package/dist/TreeItemBase.js +3 -3
  275. package/dist/TreeItemBase.js.map +1 -1
  276. package/dist/YearPicker.js +1 -1
  277. package/dist/YearPicker.js.map +1 -1
  278. package/dist/bundle.esm.js +1 -1
  279. package/dist/bundle.esm.js.map +1 -1
  280. package/dist/css/themes/Avatar.css +1 -1
  281. package/dist/css/themes/AvatarGroup.css +1 -1
  282. package/dist/css/themes/ComboBox.css +1 -1
  283. package/dist/css/themes/ComboBoxPopover.css +1 -1
  284. package/dist/css/themes/FileUploader.css +1 -1
  285. package/dist/css/themes/Input.css +1 -1
  286. package/dist/css/themes/MultiComboBox.css +1 -1
  287. package/dist/css/themes/NumericInput.css +1 -0
  288. package/dist/css/themes/Popover.css +1 -1
  289. package/dist/css/themes/RatingIndicator.css +1 -1
  290. package/dist/css/themes/Select.css +1 -1
  291. package/dist/css/themes/SliderHandle.css +1 -1
  292. package/dist/css/themes/SliderScale.css +1 -1
  293. package/dist/css/themes/SplitButton.css +1 -1
  294. package/dist/css/themes/TextArea.css +1 -1
  295. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -2
  296. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -2
  297. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -2
  298. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -2
  299. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  300. package/dist/css/themes/sap_horizon_auto/parameters-bundle.css +786 -513
  301. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  302. package/dist/css/themes/sap_horizon_hc_auto/parameters-bundle.css +742 -494
  303. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  304. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  305. package/dist/custom-elements-internal.json +2708 -259
  306. package/dist/custom-elements.json +2394 -98
  307. package/dist/features/ColorPaletteMoreColorsTemplate.js +1 -1
  308. package/dist/features/ColorPaletteMoreColorsTemplate.js.map +1 -1
  309. package/dist/features/ComboBoxLazyLoading.d.ts +26 -0
  310. package/dist/features/ComboBoxLazyLoading.js +48 -0
  311. package/dist/features/ComboBoxLazyLoading.js.map +1 -0
  312. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  313. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  314. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  315. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  316. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  317. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  318. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  319. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  320. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  321. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  322. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  323. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  324. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  325. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  326. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  327. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  328. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  329. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  330. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  331. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  332. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  333. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  334. package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
  335. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  336. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  337. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  338. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  339. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  340. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  341. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  342. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  343. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  344. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  345. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  346. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  347. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  348. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  349. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  350. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  351. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  352. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  353. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  354. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  355. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  356. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  357. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  358. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  359. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  360. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  361. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  362. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  363. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  364. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  365. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  366. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  367. package/dist/generated/assets/themes/sap_horizon_auto/parameters-bundle.css.json +1 -1
  368. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  369. package/dist/generated/assets/themes/sap_horizon_hc_auto/parameters-bundle.css.json +1 -1
  370. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  371. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  372. package/dist/generated/i18n/i18n-defaults.d.ts +9 -1
  373. package/dist/generated/i18n/i18n-defaults.js +10 -2
  374. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  375. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  376. package/dist/generated/themes/Avatar.css.js +1 -1
  377. package/dist/generated/themes/Avatar.css.js.map +1 -1
  378. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  379. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  380. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  381. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  382. package/dist/generated/themes/ComboBox.css.js +1 -1
  383. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  384. package/dist/generated/themes/ComboBoxPopover.css.d.ts +1 -1
  385. package/dist/generated/themes/ComboBoxPopover.css.js +1 -1
  386. package/dist/generated/themes/ComboBoxPopover.css.js.map +1 -1
  387. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  388. package/dist/generated/themes/FileUploader.css.js +1 -1
  389. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  390. package/dist/generated/themes/Input.css.d.ts +1 -1
  391. package/dist/generated/themes/Input.css.js +1 -1
  392. package/dist/generated/themes/Input.css.js.map +1 -1
  393. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  394. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  395. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  396. package/dist/generated/themes/NumericInput.css.d.ts +2 -0
  397. package/dist/generated/themes/NumericInput.css.js +8 -0
  398. package/dist/generated/themes/NumericInput.css.js.map +1 -0
  399. package/dist/generated/themes/Popover.css.d.ts +1 -1
  400. package/dist/generated/themes/Popover.css.js +1 -1
  401. package/dist/generated/themes/Popover.css.js.map +1 -1
  402. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  403. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  404. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  405. package/dist/generated/themes/Select.css.d.ts +1 -1
  406. package/dist/generated/themes/Select.css.js +1 -1
  407. package/dist/generated/themes/Select.css.js.map +1 -1
  408. package/dist/generated/themes/SliderHandle.css.d.ts +1 -1
  409. package/dist/generated/themes/SliderHandle.css.js +1 -1
  410. package/dist/generated/themes/SliderHandle.css.js.map +1 -1
  411. package/dist/generated/themes/SliderScale.css.d.ts +1 -1
  412. package/dist/generated/themes/SliderScale.css.js +1 -1
  413. package/dist/generated/themes/SliderScale.css.js.map +1 -1
  414. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  415. package/dist/generated/themes/SplitButton.css.js +1 -1
  416. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  417. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  418. package/dist/generated/themes/TextArea.css.js +1 -1
  419. package/dist/generated/themes/TextArea.css.js.map +1 -1
  420. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  421. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -2
  422. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  423. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  424. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -2
  425. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  426. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  427. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -2
  428. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  429. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  430. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -2
  431. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  432. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  433. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  434. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  435. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.d.ts +1 -1
  436. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js +786 -513
  437. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js.map +1 -1
  438. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  439. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  440. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  441. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.d.ts +1 -1
  442. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js +742 -494
  443. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js.map +1 -1
  444. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  445. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  446. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  447. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  448. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  449. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  450. package/dist/types/ButtonAccessibleRole.d.ts +1 -1
  451. package/dist/types/ButtonAccessibleRole.js +1 -1
  452. package/dist/types/ButtonAccessibleRole.js.map +1 -1
  453. package/dist/types/TableSelectionBehavior.d.ts +1 -1
  454. package/dist/types/TableSelectionBehavior.js +1 -1
  455. package/dist/types/TableSelectionBehavior.js.map +1 -1
  456. package/dist/types/TableSelectionMultiHeaderSelector.d.ts +1 -1
  457. package/dist/types/TableSelectionMultiHeaderSelector.js +1 -1
  458. package/dist/types/TableSelectionMultiHeaderSelector.js.map +1 -1
  459. package/dist/types/TextAreaCounterMode.d.ts +27 -0
  460. package/dist/types/TextAreaCounterMode.js +29 -0
  461. package/dist/types/TextAreaCounterMode.js.map +1 -0
  462. package/dist/vscode.html-custom-data.json +22 -8
  463. package/dist/web-types.json +44 -13
  464. package/package.json +9 -9
  465. package/src/ComboBoxPopoverTemplate.tsx +140 -106
  466. package/src/ComboBoxTemplate.tsx +4 -2
  467. package/src/{NumberInputTemplate.tsx → NumericInputTemplate.tsx} +6 -6
  468. package/src/PopoverTemplate.tsx +19 -0
  469. package/src/RangeSliderTemplate.tsx +3 -0
  470. package/src/SliderScaleTemplate.tsx +1 -1
  471. package/src/SliderTemplate.tsx +1 -0
  472. package/src/StepInputTemplate.tsx +3 -3
  473. package/src/TableHeaderRowTemplate.tsx +1 -26
  474. package/src/TableRowTemplate.tsx +1 -9
  475. package/src/TableSelection.tsx +464 -0
  476. package/src/TableSelectionMulti.tsx +396 -0
  477. package/src/TableSelectionSingle.tsx +91 -0
  478. package/src/TextAreaTemplate.tsx +2 -2
  479. package/src/features/ColorPaletteMoreColorsTemplate.tsx +1 -1
  480. package/src/i18n/messagebundle.properties +25 -1
  481. package/src/i18n/messagebundle_ar.properties +1 -1
  482. package/src/i18n/messagebundle_bg.properties +1 -1
  483. package/src/i18n/messagebundle_ca.properties +1 -1
  484. package/src/i18n/messagebundle_cnr.properties +1 -1
  485. package/src/i18n/messagebundle_cy.properties +1 -1
  486. package/src/i18n/messagebundle_da.properties +1 -1
  487. package/src/i18n/messagebundle_de.properties +2 -2
  488. package/src/i18n/messagebundle_el.properties +1 -1
  489. package/src/i18n/messagebundle_en.properties +1 -1
  490. package/src/i18n/messagebundle_en_GB.properties +1 -1
  491. package/src/i18n/messagebundle_en_US_sappsd.properties +1 -1
  492. package/src/i18n/messagebundle_en_US_saprigi.properties +1 -1
  493. package/src/i18n/messagebundle_en_US_saptrc.properties +1 -1
  494. package/src/i18n/messagebundle_es.properties +1 -1
  495. package/src/i18n/messagebundle_es_MX.properties +1 -1
  496. package/src/i18n/messagebundle_et.properties +1 -1
  497. package/src/i18n/messagebundle_fi.properties +1 -1
  498. package/src/i18n/messagebundle_fr.properties +1 -1
  499. package/src/i18n/messagebundle_fr_CA.properties +1 -1
  500. package/src/i18n/messagebundle_hi.properties +1 -1
  501. package/src/i18n/messagebundle_hr.properties +3 -3
  502. package/src/i18n/messagebundle_hu.properties +2 -2
  503. package/src/i18n/messagebundle_id.properties +2 -2
  504. package/src/i18n/messagebundle_it.properties +1 -1
  505. package/src/i18n/messagebundle_iw.properties +1 -1
  506. package/src/i18n/messagebundle_ja.properties +2 -2
  507. package/src/i18n/messagebundle_kk.properties +1 -1
  508. package/src/i18n/messagebundle_ko.properties +1 -1
  509. package/src/i18n/messagebundle_lt.properties +1 -1
  510. package/src/i18n/messagebundle_lv.properties +1 -1
  511. package/src/i18n/messagebundle_mk.properties +1 -1
  512. package/src/i18n/messagebundle_ms.properties +2 -2
  513. package/src/i18n/messagebundle_nl.properties +3 -3
  514. package/src/i18n/messagebundle_no.properties +1 -1
  515. package/src/i18n/messagebundle_pl.properties +3 -3
  516. package/src/i18n/messagebundle_pt.properties +3 -3
  517. package/src/i18n/messagebundle_pt_PT.properties +1 -1
  518. package/src/i18n/messagebundle_ro.properties +1 -1
  519. package/src/i18n/messagebundle_ru.properties +1 -1
  520. package/src/i18n/messagebundle_sh.properties +1 -1
  521. package/src/i18n/messagebundle_sk.properties +1 -1
  522. package/src/i18n/messagebundle_sl.properties +1 -1
  523. package/src/i18n/messagebundle_sr.properties +1 -1
  524. package/src/i18n/messagebundle_sv.properties +1 -1
  525. package/src/i18n/messagebundle_th.properties +1 -1
  526. package/src/i18n/messagebundle_tr.properties +3 -3
  527. package/src/i18n/messagebundle_uk.properties +1 -1
  528. package/src/i18n/messagebundle_vi.properties +1 -1
  529. package/src/i18n/messagebundle_zh_CN.properties +1 -1
  530. package/src/i18n/messagebundle_zh_TW.properties +1 -1
  531. package/src/themes/Avatar.css +1 -0
  532. package/src/themes/AvatarGroup.css +21 -0
  533. package/src/themes/ComboBox.css +5 -0
  534. package/src/themes/ComboBoxPopover.css +6 -0
  535. package/src/themes/Input.css +1 -1
  536. package/src/themes/{NumberInput.css → NumericInput.css} +63 -58
  537. package/src/themes/Popover.css +47 -14
  538. package/src/themes/RatingIndicator.css +1 -0
  539. package/src/themes/SliderHandle.css +12 -7
  540. package/src/themes/SliderScale.css +4 -2
  541. package/src/themes/SplitButton.css +4 -1
  542. package/src/themes/TextArea.css +17 -1
  543. package/src/themes/base/NumericInput-parameters.css +31 -0
  544. package/src/themes/base/Popover-parameters.css +5 -0
  545. package/src/themes/base/sizes-parameters.css +3 -3
  546. package/src/themes/sap_fiori_3/parameters-bundle.css +1 -1
  547. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  548. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  549. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  550. package/src/themes/sap_horizon/AvatarGroup-parameters.css +7 -19
  551. package/src/themes/sap_horizon/NumericInput-parameters.css +26 -0
  552. package/src/themes/sap_horizon/parameters-bundle.css +1 -1
  553. package/src/themes/sap_horizon_dark/NumericInput-parameters.css +26 -0
  554. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  555. package/src/themes/sap_horizon_hcb/NumericInput-parameters.css +14 -0
  556. package/src/themes/sap_horizon_hcb/parameters-bundle.css +2 -2
  557. package/src/themes/sap_horizon_hcw/NumericInput-parameters.css +14 -0
  558. package/src/themes/sap_horizon_hcw/parameters-bundle.css +2 -2
  559. package/dist/NumberInput.js.map +0 -1
  560. package/dist/NumberInputTemplate.d.ts +0 -2
  561. package/dist/NumberInputTemplate.js.map +0 -1
  562. package/dist/css/themes/NumberInput.css +0 -1
  563. package/dist/generated/themes/NumberInput.css.d.ts +0 -2
  564. package/dist/generated/themes/NumberInput.css.js +0 -8
  565. package/dist/generated/themes/NumberInput.css.js.map +0 -1
  566. package/src/themes/base/NumberInput-parameters.css +0 -31
  567. package/src/themes/sap_horizon/NumberInput-parameters.css +0 -26
  568. package/src/themes/sap_horizon_dark/NumberInput-parameters.css +0 -26
  569. package/src/themes/sap_horizon_hcb/NumberInput-parameters.css +0 -14
  570. package/src/themes/sap_horizon_hcw/NumberInput-parameters.css +0 -14
@@ -40,7 +40,7 @@ type Star = {
40
40
  * @constructor
41
41
  * @extends UI5Element
42
42
  * @public
43
- * @since 1.0.0-rc.8
43
+ * @since 1.0.0
44
44
  */
45
45
  declare class RatingIndicator extends UI5Element {
46
46
  eventDetails: {
@@ -62,7 +62,7 @@ declare class RatingIndicator extends UI5Element {
62
62
  * The number of displayed rating symbols.
63
63
  * @default 5
64
64
  * @public
65
- * @since 1.0.0-rc.15
65
+ * @since 1.0.0
66
66
  */
67
67
  max: number;
68
68
  /**
@@ -103,7 +103,7 @@ declare class RatingIndicator extends UI5Element {
103
103
  * Defines the accessible ARIA name of the component.
104
104
  * @default undefined
105
105
  * @public
106
- * @since 1.0.0-rc.15
106
+ * @since 1.0.0
107
107
  */
108
108
  accessibleName?: string;
109
109
  /**
@@ -132,14 +132,14 @@ declare class RatingIndicator extends UI5Element {
132
132
  *
133
133
  * @default "favorite"
134
134
  * @public
135
- * @since 2.20
135
+ * @since 2.20.0
136
136
  */
137
137
  ratedIcon: string;
138
138
  /**
139
139
  * Defines the icon to be displayed for the unselected (empty) rating symbol.
140
140
  * @default "unfavorite"
141
141
  * @public
142
- * @since 2.20
142
+ * @since 2.20.0
143
143
  */
144
144
  unratedIcon: string;
145
145
  /**
@@ -53,7 +53,7 @@ import RatingIndicatorCss from "./generated/themes/RatingIndicator.css.js";
53
53
  * @constructor
54
54
  * @extends UI5Element
55
55
  * @public
56
- * @since 1.0.0-rc.8
56
+ * @since 1.0.0
57
57
  */
58
58
  let RatingIndicator = RatingIndicator_1 = class RatingIndicator extends UI5Element {
59
59
  constructor() {
@@ -74,7 +74,7 @@ let RatingIndicator = RatingIndicator_1 = class RatingIndicator extends UI5Eleme
74
74
  * The number of displayed rating symbols.
75
75
  * @default 5
76
76
  * @public
77
- * @since 1.0.0-rc.15
77
+ * @since 1.0.0
78
78
  */
79
79
  this.max = 5;
80
80
  /**
@@ -123,14 +123,14 @@ let RatingIndicator = RatingIndicator_1 = class RatingIndicator extends UI5Eleme
123
123
  *
124
124
  * @default "favorite"
125
125
  * @public
126
- * @since 2.20
126
+ * @since 2.20.0
127
127
  */
128
128
  this.ratedIcon = "favorite";
129
129
  /**
130
130
  * Defines the icon to be displayed for the unselected (empty) rating symbol.
131
131
  * @default "unfavorite"
132
132
  * @public
133
- * @since 2.20
133
+ * @since 2.20.0
134
134
  */
135
135
  this.unratedIcon = "unfavorite";
136
136
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"RatingIndicator.js","sourceRoot":"","sources":["../src/RatingIndicator.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { getEnableDefaultTooltips } from \"@ui5/webcomponents-base/dist/config/Tooltips.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport {\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisSpace,\n\tisEnter,\n\tisHome,\n\tisEnd,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/favorite.js\";\nimport \"@ui5/webcomponents-icons/dist/unfavorite.js\";\nimport {\n\tRATING_INDICATOR_TEXT,\n\tRATING_INDICATOR_TOOLTIP_TEXT,\n\tRATING_INDICATOR_ARIA_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport RatingIndicatorTemplate from \"./RatingIndicatorTemplate.js\";\n\n// Styles\nimport RatingIndicatorCss from \"./generated/themes/RatingIndicator.css.js\";\nimport type RatingIndicatorSize from \"./types/RatingIndicatorSize.js\";\n\ntype Star = {\n\tselected: boolean,\n\tindex: number,\n\thalfStar: boolean\n}\n\n/**\n * @class\n *\n * ### Overview\n * The Rating Indicator is used to display a specific number of icons that are used to rate an item.\n * Additionally, it is also used to display the average and overall ratings.\n *\n * ### Usage\n * The recommended number of icons is between 5 and 7.\n *\n * ### Responsive Behavior\n * You can change the size of the Rating Indicator by changing its `font-size` CSS property.\n *\n * Example: `<ui5-rating-indicator style=\"font-size: 3rem;\"></ui5-rating-indicator>`\n *\n * ### Keyboard Handling\n * When the `ui5-rating-indicator` is focused, the user can change the rating\n * with the following keyboard shortcuts:\n *\n * - [RIGHT/UP] - Increases the value of the rating by one step. If the highest value is reached, does nothing\n * - [LEFT/DOWN] - Decreases the value of the rating by one step. If the lowest value is reached, does nothing.\n * - [Home] - Sets the lowest value.\n * - [End] - Sets the highest value.\n * - [SPACE/ENTER/RETURN] - Increases the value of the rating by one step. If the highest value is reached, sets the rating to the lowest value.\n * - Any number - Changes value to the corresponding number. If typed number is larger than the number of values, sets the highest value.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/RatingIndicator.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.8\n */\n\n@customElement({\n\ttag: \"ui5-rating-indicator\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\tstyles: RatingIndicatorCss,\n\ttemplate: RatingIndicatorTemplate,\n})\n/**\n * The event is fired when the value changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n\nclass RatingIndicator extends UI5Element {\n\teventDetails!: {\n\t\tchange: void,\n\t}\n\t/**\n\t * The indicated value of the rating.\n\t *\n\t * **Note:** If you set a number which is not round, it would be shown as follows:\n\t *\n\t * - 1.0 - 1.2 -> 1\n\t * - 1.3 - 1.7 -> 1.5\n\t * - 1.8 - 1.9 -> 2\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tvalue: number = 0;\n\n\t/**\n\t * The number of displayed rating symbols.\n\t * @default 5\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Number })\n\tmax: number = 5;\n\n\t/**\n\t * Defines the size of the component.\n\t * @default \"M\"\n\t * @public\n\t * @since 2.6.0\n\t */\n\t@property()\n\tsize: `${RatingIndicatorSize}` = \"M\";\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines whether the component is in display-only mode.\n\t *\n\t * **Note:** A display-only component is visually identical to read-only\n\t * but cannot receive focus and is not announced by screen readers.\n\t * @default false\n\t * @public\n\t * @since 2.26.0\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.15.0\n\t */\n\t @property()\n\t accessibleNameRef?: string;\n\n\t /**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.19.0\n\t */\n\t@property()\n\ttooltip?: string;\n\n\t/**\n\t * Defines the icon to be displayed for the selected (filled) rating symbol.\n\t *\n\t * @default \"favorite\"\n\t * @public\n\t * @since 2.20\n\t */\n\t@property()\n\tratedIcon = \"favorite\";\n\n\t/**\n\t * Defines the icon to be displayed for the unselected (empty) rating symbol.\n\t * @default \"unfavorite\"\n\t * @public\n\t * @since 2.20\n\t */\n\t@property()\n\tunratedIcon = \"unfavorite\";\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Array, noAttribute: true })\n\t_stars: Array<Star> = [];\n\n\t_liveValue?: number;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.calcState();\n\t}\n\n\tcalcState() {\n\t\tthis._stars = [];\n\n\t\tfor (let i = 1; i < this.max + 1; i++) {\n\t\t\tconst remainder = Math.round((this.value - Math.floor(this.value)) * 10);\n\t\t\tlet halfStar = false,\n\t\t\t\ttempValue = this.value;\n\n\t\t\tif (Math.floor(this.value) + 1 === i && remainder > 2 && remainder < 8) {\n\t\t\t\thalfStar = true;\n\t\t\t} else if (remainder <= 2) {\n\t\t\t\ttempValue = Math.floor(this.value);\n\t\t\t} else if (remainder >= 8) {\n\t\t\t\ttempValue = Math.ceil(this.value);\n\t\t\t}\n\n\t\t\tthis._stars.push({\n\t\t\t\tselected: i <= tempValue,\n\t\t\t\tindex: i,\n\t\t\t\thalfStar,\n\t\t\t});\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tconst target = e.target as UI5Element;\n\n\t\tif (!(target instanceof HTMLElement) || this.disabled || this.readonly || this.displayOnly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst targetValue = target.getAttribute(\"data-ui5-value\");\n\n\t\tif (targetValue !== null) {\n\t\t\tthis.value = parseInt(targetValue);\n\t\t\tif (this.value === this._liveValue) {\n\t\t\t\tthis.value = 0;\n\t\t\t}\n\n\t\t\tif (this._liveValue !== this.value) {\n\t\t\t\tthis.fireDecoratorEvent(\"change\");\n\t\t\t\tthis._liveValue = this.value;\n\t\t\t}\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled || this.readonly || this.displayOnly) {\n\t\t\t// prevent page scrolling\n\t\t\tif (isSpace(e)) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst isDecrease = isDown(e) || isLeft(e);\n\t\tconst isIncrease = isRight(e) || isUp(e);\n\t\tconst isIncreaseWithReset = isSpace(e) || isEnter(e);\n\t\tconst isMin = isHome(e);\n\t\tconst isMax = isEnd(e);\n\t\tconst isNumber = (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105);\n\n\t\tif (isDecrease || isIncrease || isIncreaseWithReset || isMin || isMax || isNumber) {\n\t\t\te.preventDefault();\n\n\t\t\tif (isDecrease && this.value > 0) {\n\t\t\t\tthis.value = Math.round(this.value - 1);\n\t\t\t} else if (isIncrease && this.value < this.max) {\n\t\t\t\tthis.value = Math.round(this.value + 1);\n\t\t\t} else if (isIncreaseWithReset) {\n\t\t\t\tconst proposedValue = Math.round(this.value + 1);\n\t\t\t\tthis.value = proposedValue > this.max ? 0 : proposedValue;\n\t\t\t} else if (isMin) {\n\t\t\t\tthis.value = 0;\n\t\t\t} else if (isMax) {\n\t\t\t\tthis.value = this.max;\n\t\t\t} else if (isNumber) {\n\t\t\t\tconst pressedNumber = parseInt(e.key);\n\t\t\t\tthis.value = pressedNumber > this.max ? this.max : pressedNumber;\n\t\t\t}\n\n\t\t\tthis.fireDecoratorEvent(\"change\");\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tif (this.disabled || this.displayOnly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._liveValue = this.value;\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.disabled || this.displayOnly) {\n\t\t\treturn -1;\n\t\t}\n\n\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t}\n\n\tget ratingTooltip(): string | undefined {\n\t\tif (this.tooltip) {\n\t\t\treturn this.tooltip;\n\t\t}\n\t\treturn getEnableDefaultTooltips() ? this.defaultTooltip : undefined;\n\t}\n\n\tget defaultTooltip() {\n\t\treturn RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TOOLTIP_TEXT);\n\t}\n\n\tget _ariaRoleDescription() {\n\t\treturn RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TEXT);\n\t}\n\n\tget _ariaDisabled() {\n\t\treturn this.disabled || this.displayOnly || undefined;\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _ariaDescription() {\n\t\treturn this.required ? RatingIndicator.i18nBundle.getText(RATING_INDICATOR_ARIA_DESCRIPTION) : undefined;\n\t}\n\n\tget ariaReadonly() {\n\t\tif (this.displayOnly) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn this.readonly ? \"true\" : undefined;\n\t}\n}\n\nRatingIndicator.define();\n\nexport default RatingIndicator;\nexport type { Star };\n"]}
1
+ {"version":3,"file":"RatingIndicator.js","sourceRoot":"","sources":["../src/RatingIndicator.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { getEnableDefaultTooltips } from \"@ui5/webcomponents-base/dist/config/Tooltips.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport {\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisSpace,\n\tisEnter,\n\tisHome,\n\tisEnd,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/favorite.js\";\nimport \"@ui5/webcomponents-icons/dist/unfavorite.js\";\nimport {\n\tRATING_INDICATOR_TEXT,\n\tRATING_INDICATOR_TOOLTIP_TEXT,\n\tRATING_INDICATOR_ARIA_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport RatingIndicatorTemplate from \"./RatingIndicatorTemplate.js\";\n\n// Styles\nimport RatingIndicatorCss from \"./generated/themes/RatingIndicator.css.js\";\nimport type RatingIndicatorSize from \"./types/RatingIndicatorSize.js\";\n\ntype Star = {\n\tselected: boolean,\n\tindex: number,\n\thalfStar: boolean\n}\n\n/**\n * @class\n *\n * ### Overview\n * The Rating Indicator is used to display a specific number of icons that are used to rate an item.\n * Additionally, it is also used to display the average and overall ratings.\n *\n * ### Usage\n * The recommended number of icons is between 5 and 7.\n *\n * ### Responsive Behavior\n * You can change the size of the Rating Indicator by changing its `font-size` CSS property.\n *\n * Example: `<ui5-rating-indicator style=\"font-size: 3rem;\"></ui5-rating-indicator>`\n *\n * ### Keyboard Handling\n * When the `ui5-rating-indicator` is focused, the user can change the rating\n * with the following keyboard shortcuts:\n *\n * - [RIGHT/UP] - Increases the value of the rating by one step. If the highest value is reached, does nothing\n * - [LEFT/DOWN] - Decreases the value of the rating by one step. If the lowest value is reached, does nothing.\n * - [Home] - Sets the lowest value.\n * - [End] - Sets the highest value.\n * - [SPACE/ENTER/RETURN] - Increases the value of the rating by one step. If the highest value is reached, sets the rating to the lowest value.\n * - Any number - Changes value to the corresponding number. If typed number is larger than the number of values, sets the highest value.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/RatingIndicator.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0\n */\n\n@customElement({\n\ttag: \"ui5-rating-indicator\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\tstyles: RatingIndicatorCss,\n\ttemplate: RatingIndicatorTemplate,\n})\n/**\n * The event is fired when the value changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n\nclass RatingIndicator extends UI5Element {\n\teventDetails!: {\n\t\tchange: void,\n\t}\n\t/**\n\t * The indicated value of the rating.\n\t *\n\t * **Note:** If you set a number which is not round, it would be shown as follows:\n\t *\n\t * - 1.0 - 1.2 -> 1\n\t * - 1.3 - 1.7 -> 1.5\n\t * - 1.8 - 1.9 -> 2\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tvalue: number = 0;\n\n\t/**\n\t * The number of displayed rating symbols.\n\t * @default 5\n\t * @public\n\t * @since 1.0.0\n\t */\n\t@property({ type: Number })\n\tmax: number = 5;\n\n\t/**\n\t * Defines the size of the component.\n\t * @default \"M\"\n\t * @public\n\t * @since 2.6.0\n\t */\n\t@property()\n\tsize: `${RatingIndicatorSize}` = \"M\";\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines whether the component is in display-only mode.\n\t *\n\t * **Note:** A display-only component is visually identical to read-only\n\t * but cannot receive focus and is not announced by screen readers.\n\t * @default false\n\t * @public\n\t * @since 2.26.0\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.15.0\n\t */\n\t @property()\n\t accessibleNameRef?: string;\n\n\t /**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.19.0\n\t */\n\t@property()\n\ttooltip?: string;\n\n\t/**\n\t * Defines the icon to be displayed for the selected (filled) rating symbol.\n\t *\n\t * @default \"favorite\"\n\t * @public\n\t * @since 2.20.0\n\t */\n\t@property()\n\tratedIcon = \"favorite\";\n\n\t/**\n\t * Defines the icon to be displayed for the unselected (empty) rating symbol.\n\t * @default \"unfavorite\"\n\t * @public\n\t * @since 2.20.0\n\t */\n\t@property()\n\tunratedIcon = \"unfavorite\";\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Array, noAttribute: true })\n\t_stars: Array<Star> = [];\n\n\t_liveValue?: number;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.calcState();\n\t}\n\n\tcalcState() {\n\t\tthis._stars = [];\n\n\t\tfor (let i = 1; i < this.max + 1; i++) {\n\t\t\tconst remainder = Math.round((this.value - Math.floor(this.value)) * 10);\n\t\t\tlet halfStar = false,\n\t\t\t\ttempValue = this.value;\n\n\t\t\tif (Math.floor(this.value) + 1 === i && remainder > 2 && remainder < 8) {\n\t\t\t\thalfStar = true;\n\t\t\t} else if (remainder <= 2) {\n\t\t\t\ttempValue = Math.floor(this.value);\n\t\t\t} else if (remainder >= 8) {\n\t\t\t\ttempValue = Math.ceil(this.value);\n\t\t\t}\n\n\t\t\tthis._stars.push({\n\t\t\t\tselected: i <= tempValue,\n\t\t\t\tindex: i,\n\t\t\t\thalfStar,\n\t\t\t});\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tconst target = e.target as UI5Element;\n\n\t\tif (!(target instanceof HTMLElement) || this.disabled || this.readonly || this.displayOnly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst targetValue = target.getAttribute(\"data-ui5-value\");\n\n\t\tif (targetValue !== null) {\n\t\t\tthis.value = parseInt(targetValue);\n\t\t\tif (this.value === this._liveValue) {\n\t\t\t\tthis.value = 0;\n\t\t\t}\n\n\t\t\tif (this._liveValue !== this.value) {\n\t\t\t\tthis.fireDecoratorEvent(\"change\");\n\t\t\t\tthis._liveValue = this.value;\n\t\t\t}\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled || this.readonly || this.displayOnly) {\n\t\t\t// prevent page scrolling\n\t\t\tif (isSpace(e)) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst isDecrease = isDown(e) || isLeft(e);\n\t\tconst isIncrease = isRight(e) || isUp(e);\n\t\tconst isIncreaseWithReset = isSpace(e) || isEnter(e);\n\t\tconst isMin = isHome(e);\n\t\tconst isMax = isEnd(e);\n\t\tconst isNumber = (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105);\n\n\t\tif (isDecrease || isIncrease || isIncreaseWithReset || isMin || isMax || isNumber) {\n\t\t\te.preventDefault();\n\n\t\t\tif (isDecrease && this.value > 0) {\n\t\t\t\tthis.value = Math.round(this.value - 1);\n\t\t\t} else if (isIncrease && this.value < this.max) {\n\t\t\t\tthis.value = Math.round(this.value + 1);\n\t\t\t} else if (isIncreaseWithReset) {\n\t\t\t\tconst proposedValue = Math.round(this.value + 1);\n\t\t\t\tthis.value = proposedValue > this.max ? 0 : proposedValue;\n\t\t\t} else if (isMin) {\n\t\t\t\tthis.value = 0;\n\t\t\t} else if (isMax) {\n\t\t\t\tthis.value = this.max;\n\t\t\t} else if (isNumber) {\n\t\t\t\tconst pressedNumber = parseInt(e.key);\n\t\t\t\tthis.value = pressedNumber > this.max ? this.max : pressedNumber;\n\t\t\t}\n\n\t\t\tthis.fireDecoratorEvent(\"change\");\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tif (this.disabled || this.displayOnly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._liveValue = this.value;\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.disabled || this.displayOnly) {\n\t\t\treturn -1;\n\t\t}\n\n\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t}\n\n\tget ratingTooltip(): string | undefined {\n\t\tif (this.tooltip) {\n\t\t\treturn this.tooltip;\n\t\t}\n\t\treturn getEnableDefaultTooltips() ? this.defaultTooltip : undefined;\n\t}\n\n\tget defaultTooltip() {\n\t\treturn RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TOOLTIP_TEXT);\n\t}\n\n\tget _ariaRoleDescription() {\n\t\treturn RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TEXT);\n\t}\n\n\tget _ariaDisabled() {\n\t\treturn this.disabled || this.displayOnly || undefined;\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _ariaDescription() {\n\t\treturn this.required ? RatingIndicator.i18nBundle.getText(RATING_INDICATOR_ARIA_DESCRIPTION) : undefined;\n\t}\n\n\tget ariaReadonly() {\n\t\tif (this.displayOnly) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn this.readonly ? \"true\" : undefined;\n\t}\n}\n\nRatingIndicator.define();\n\nexport default RatingIndicator;\nexport type { Star };\n"]}
@@ -17,7 +17,7 @@ import type { PopupBeforeCloseEventDetail } from "./Popup.js";
17
17
  * `import "@ui5/webcomponents/dist/ResponsivePopover.js";`
18
18
  * @constructor
19
19
  * @extends Popover
20
- * @since 1.0.0-rc.6
20
+ * @since 1.0.0
21
21
  * @public
22
22
  * @csspart header - Used to style the header of the component
23
23
  * @csspart content - Used to style the content of the component
@@ -41,7 +41,7 @@ declare class ResponsivePopover extends Popover {
41
41
  * **Note:** If you are using the `header` slot, this property will have no effect
42
42
  * @private
43
43
  * @default false
44
- * @since 1.0.0-rc.16
44
+ * @since 1.0.0
45
45
  */
46
46
  _hideCloseButton: boolean;
47
47
  static i18nBundle: I18nBundle;
@@ -29,7 +29,7 @@ import ResponsivePopoverCss from "./generated/themes/ResponsivePopover.css.js";
29
29
  * `import "@ui5/webcomponents/dist/ResponsivePopover.js";`
30
30
  * @constructor
31
31
  * @extends Popover
32
- * @since 1.0.0-rc.6
32
+ * @since 1.0.0
33
33
  * @public
34
34
  * @csspart header - Used to style the header of the component
35
35
  * @csspart content - Used to style the content of the component
@@ -54,7 +54,7 @@ let ResponsivePopover = ResponsivePopover_1 = class ResponsivePopover extends Po
54
54
  * **Note:** If you are using the `header` slot, this property will have no effect
55
55
  * @private
56
56
  * @default false
57
- * @since 1.0.0-rc.16
57
+ * @since 1.0.0
58
58
  */
59
59
  this._hideCloseButton = false;
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsivePopover.js","sourceRoot":"","sources":["../src/ResponsivePopover.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 { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\n\nimport { RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON } from \"./generated/i18n/i18n-defaults.js\";\n\nimport ResponsivePopoverTemplate from \"./ResponsivePopoverTemplate.js\";\nimport Popover from \"./Popover.js\";\nimport type Dialog from \"./Dialog.js\";\n\n// Styles\nimport ResponsivePopoverCss from \"./generated/themes/ResponsivePopover.css.js\";\nimport type { PopupBeforeCloseEventDetail } from \"./Popup.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-responsive-popover` acts as a Popover on desktop and tablet, while on phone it acts as a Dialog.\n * The component improves tremendously the user experience on mobile.\n *\n * ### Usage\n * Use it when you want to make sure that all the content is visible on any device.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/ResponsivePopover.js\";`\n * @constructor\n * @extends Popover\n * @since 1.0.0-rc.6\n * @public\n * @csspart header - Used to style the header of the component\n * @csspart content - Used to style the content of the component\n * @csspart footer - Used to style the footer of the component\n */\n@customElement({\n\ttag: \"ui5-responsive-popover\",\n\tstyles: [Popover.styles, ResponsivePopoverCss],\n\ttemplate: ResponsivePopoverTemplate,\n})\nclass ResponsivePopover extends Popover {\n\teventDetails!: Popover[\"eventDetails\"]\n\n\t/**\n\t * Defines if only the content would be displayed (without header and footer) in the popover on Desktop.\n\t * By default both the header and footer would be displayed.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tcontentOnlyOnDesktop = false;\n\n\t/**\n\t * Used internaly for controls which must not have header.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hideHeader = false;\n\n\t/**\n\t * Defines whether a close button will be rendered in the header of the component\n\t * **Note:** If you are using the `header` slot, this property will have no effect\n\t * @private\n\t * @default false\n\t * @since 1.0.0-rc.16\n\t */\n\t@property({ type: Boolean })\n\t_hideCloseButton = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tasync openPopup() {\n\t\tif (!isPhone()) {\n\t\t\tawait super.openPopup();\n\t\t} else if (this._dialog) {\n\t\t\tthis._dialog.open = true;\n\t\t}\n\t}\n\n\tasync _show() {\n\t\tif (!isPhone()) {\n\t\t\treturn super._show();\n\t\t}\n\t}\n\n\thandleOpenOnEnterDOM() {\n\t\tif (this.open && !isPhone()) {\n\t\t\tthis.showPopover();\n\t\t\tthis.openPopup();\n\t\t}\n\t}\n\n\t_dialogCloseButtonClick() {\n\t\tthis.closePopup();\n\t}\n\n\t/**\n\t * Closes the popover/dialog.\n\t * @override\n\t */\n\tclosePopup(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false) : void {\n\t\tif (!isPhone()) {\n\t\t\tsuper.closePopup(escPressed, preventRegistryUpdate, preventFocusRestore);\n\t\t} else {\n\t\t\tthis._dialog?.closePopup(escPressed, preventRegistryUpdate, preventFocusRestore);\n\t\t}\n\t}\n\n\ttoggle(opener: HTMLElement) : void {\n\t\tif (this.open) {\n\t\t\tthis.closePopup();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.opener = opener;\n\t\tthis.open = true;\n\t}\n\n\tget classes() {\n\t\tconst allClasses = super.classes;\n\n\t\tallClasses.header = {\n\t\t\t\"ui5-responsive-popover-header\": true,\n\t\t\t\"ui5-responsive-popover-header-no-title\": !this.headerText,\n\t\t};\n\n\t\treturn allClasses;\n\t}\n\n\tget _dialog() {\n\t\treturn this.shadowRoot!.querySelector<Dialog>(\"[ui5-dialog]\")!;\n\t}\n\n\tget contentDOM() {\n\t\treturn isPhone() ? this._dialog.contentDOM : super.contentDOM;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _displayHeader() {\n\t\treturn (isPhone() || !this.contentOnlyOnDesktop) && super._displayHeader;\n\t}\n\n\tget _displayFooter() {\n\t\treturn isPhone() || !this.contentOnlyOnDesktop;\n\t}\n\n\tget _closeDialogAriaLabel() {\n\t\treturn ResponsivePopover.i18nBundle.getText(RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON);\n\t}\n\n\t_beforeDialogOpen() {\n\t\tthis._opened = true;\n\t\tthis.open = true;\n\t\tthis.fireDecoratorEvent(\"before-open\");\n\t}\n\n\t_afterDialogOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\t_beforeDialogClose(e: CustomEvent<PopupBeforeCloseEventDetail>) {\n\t\tthis.fireDecoratorEvent(\"before-close\", e.detail);\n\t}\n\n\t_afterDialogClose() {\n\t\tthis._opened = false;\n\t\tthis.open = false;\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tget isModal() {\n\t\tif (!isPhone()) {\n\t\t\treturn super.isModal;\n\t\t}\n\n\t\treturn this._dialog.isModal;\n\t}\n}\n\nResponsivePopover.define();\n\nexport default ResponsivePopover;\n"]}
1
+ {"version":3,"file":"ResponsivePopover.js","sourceRoot":"","sources":["../src/ResponsivePopover.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAEjE,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,EAAE,sCAAsC,EAAE,MAAM,mCAAmC,CAAC;AAE3F,OAAO,yBAAyB,MAAM,gCAAgC,CAAC;AACvE,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,SAAS;AACT,OAAO,oBAAoB,MAAM,6CAA6C,CAAC;AAG/E;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH,IAAM,iBAAiB,yBAAvB,MAAM,iBAAkB,SAAQ,OAAO;IA+BtC;QACC,KAAK,EAAE,CAAC;QA7BT;;;;WAIG;QAEH,yBAAoB,GAAG,KAAK,CAAC;QAE7B;;;WAGG;QAEH,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;;;;WAMG;QAEH,qBAAgB,GAAG,KAAK,CAAC;IAOzB,CAAC;IAED,KAAK,CAAC,SAAS;QACd,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAChB,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;IAED,oBAAoB;QACnB,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7B,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;IACF,CAAC;IAED,uBAAuB;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,UAAU,GAAG,KAAK,EAAE,qBAAqB,GAAG,KAAK,EAAE,mBAAmB,GAAG,KAAK;QACxF,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAChB,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,EAAE,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QAClF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,MAAmB;QACzB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,OAAO;QACV,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;QAEjC,UAAU,CAAC,MAAM,GAAG;YACnB,+BAA+B,EAAE,IAAI;YACrC,wCAAwC,EAAE,CAAC,IAAI,CAAC,UAAU;SAC1D,CAAC;QAEF,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAS,cAAc,CAAE,CAAC;IAChE,CAAC;IAED,IAAI,UAAU;QACb,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAC/D,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC;IAC1E,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;IAChD,CAAC;IAED,IAAI,qBAAqB;QACxB,OAAO,mBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACrF,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,gBAAgB;QACf,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,kBAAkB,CAAC,CAA2C;QAC7D,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,OAAO;QACV,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC,OAAO,CAAC;QACtB,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC7B,CAAC;CACD,CAAA;AAvIA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;+DACC;AAO7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sDACR;AAUpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2DACH;AAGlB;IADN,IAAI,CAAC,oBAAoB,CAAC;2CACG;AA7BzB,iBAAiB;IALtB,aAAa,CAAC;QACd,GAAG,EAAE,wBAAwB;QAC7B,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC;QAC9C,QAAQ,EAAE,yBAAyB;KACnC,CAAC;GACI,iBAAiB,CAgJtB;AAED,iBAAiB,CAAC,MAAM,EAAE,CAAC;AAE3B,eAAe,iBAAiB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\n\nimport { RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON } from \"./generated/i18n/i18n-defaults.js\";\n\nimport ResponsivePopoverTemplate from \"./ResponsivePopoverTemplate.js\";\nimport Popover from \"./Popover.js\";\nimport type Dialog from \"./Dialog.js\";\n\n// Styles\nimport ResponsivePopoverCss from \"./generated/themes/ResponsivePopover.css.js\";\nimport type { PopupBeforeCloseEventDetail } from \"./Popup.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-responsive-popover` acts as a Popover on desktop and tablet, while on phone it acts as a Dialog.\n * The component improves tremendously the user experience on mobile.\n *\n * ### Usage\n * Use it when you want to make sure that all the content is visible on any device.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/ResponsivePopover.js\";`\n * @constructor\n * @extends Popover\n * @since 1.0.0\n * @public\n * @csspart header - Used to style the header of the component\n * @csspart content - Used to style the content of the component\n * @csspart footer - Used to style the footer of the component\n */\n@customElement({\n\ttag: \"ui5-responsive-popover\",\n\tstyles: [Popover.styles, ResponsivePopoverCss],\n\ttemplate: ResponsivePopoverTemplate,\n})\nclass ResponsivePopover extends Popover {\n\teventDetails!: Popover[\"eventDetails\"]\n\n\t/**\n\t * Defines if only the content would be displayed (without header and footer) in the popover on Desktop.\n\t * By default both the header and footer would be displayed.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tcontentOnlyOnDesktop = false;\n\n\t/**\n\t * Used internaly for controls which must not have header.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_hideHeader = false;\n\n\t/**\n\t * Defines whether a close button will be rendered in the header of the component\n\t * **Note:** If you are using the `header` slot, this property will have no effect\n\t * @private\n\t * @default false\n\t * @since 1.0.0\n\t */\n\t@property({ type: Boolean })\n\t_hideCloseButton = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tasync openPopup() {\n\t\tif (!isPhone()) {\n\t\t\tawait super.openPopup();\n\t\t} else if (this._dialog) {\n\t\t\tthis._dialog.open = true;\n\t\t}\n\t}\n\n\tasync _show() {\n\t\tif (!isPhone()) {\n\t\t\treturn super._show();\n\t\t}\n\t}\n\n\thandleOpenOnEnterDOM() {\n\t\tif (this.open && !isPhone()) {\n\t\t\tthis.showPopover();\n\t\t\tthis.openPopup();\n\t\t}\n\t}\n\n\t_dialogCloseButtonClick() {\n\t\tthis.closePopup();\n\t}\n\n\t/**\n\t * Closes the popover/dialog.\n\t * @override\n\t */\n\tclosePopup(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false) : void {\n\t\tif (!isPhone()) {\n\t\t\tsuper.closePopup(escPressed, preventRegistryUpdate, preventFocusRestore);\n\t\t} else {\n\t\t\tthis._dialog?.closePopup(escPressed, preventRegistryUpdate, preventFocusRestore);\n\t\t}\n\t}\n\n\ttoggle(opener: HTMLElement) : void {\n\t\tif (this.open) {\n\t\t\tthis.closePopup();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.opener = opener;\n\t\tthis.open = true;\n\t}\n\n\tget classes() {\n\t\tconst allClasses = super.classes;\n\n\t\tallClasses.header = {\n\t\t\t\"ui5-responsive-popover-header\": true,\n\t\t\t\"ui5-responsive-popover-header-no-title\": !this.headerText,\n\t\t};\n\n\t\treturn allClasses;\n\t}\n\n\tget _dialog() {\n\t\treturn this.shadowRoot!.querySelector<Dialog>(\"[ui5-dialog]\")!;\n\t}\n\n\tget contentDOM() {\n\t\treturn isPhone() ? this._dialog.contentDOM : super.contentDOM;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _displayHeader() {\n\t\treturn (isPhone() || !this.contentOnlyOnDesktop) && super._displayHeader;\n\t}\n\n\tget _displayFooter() {\n\t\treturn isPhone() || !this.contentOnlyOnDesktop;\n\t}\n\n\tget _closeDialogAriaLabel() {\n\t\treturn ResponsivePopover.i18nBundle.getText(RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON);\n\t}\n\n\t_beforeDialogOpen() {\n\t\tthis._opened = true;\n\t\tthis.open = true;\n\t\tthis.fireDecoratorEvent(\"before-open\");\n\t}\n\n\t_afterDialogOpen() {\n\t\tthis.fireDecoratorEvent(\"open\");\n\t}\n\n\t_beforeDialogClose(e: CustomEvent<PopupBeforeCloseEventDetail>) {\n\t\tthis.fireDecoratorEvent(\"before-close\", e.detail);\n\t}\n\n\t_afterDialogClose() {\n\t\tthis._opened = false;\n\t\tthis.open = false;\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\tget isModal() {\n\t\tif (!isPhone()) {\n\t\t\treturn super.isModal;\n\t\t}\n\n\t\treturn this._dialog.isModal;\n\t}\n}\n\nResponsivePopover.define();\n\nexport default ResponsivePopover;\n"]}
@@ -32,8 +32,9 @@ type SegmentedButtonSelectionChangeEventDetail = {
32
32
  * `import "@ui5/webcomponents/dist/SegmentedButton.js";`
33
33
  * @constructor
34
34
  * @extends UI5Element
35
- * @since 1.0.0-rc.6
35
+ * @since 1.0.0
36
36
  * @public
37
+ * @ui5subcomponent SegmentedButtonItem
37
38
  */
38
39
  declare class SegmentedButton extends UI5Element {
39
40
  eventDetails: {
@@ -39,8 +39,9 @@ import SegmentedButtonCss from "./generated/themes/SegmentedButton.css.js";
39
39
  * `import "@ui5/webcomponents/dist/SegmentedButton.js";`
40
40
  * @constructor
41
41
  * @extends UI5Element
42
- * @since 1.0.0-rc.6
42
+ * @since 1.0.0
43
43
  * @public
44
+ * @ui5subcomponent SegmentedButtonItem
44
45
  */
45
46
  let SegmentedButton = SegmentedButton_1 = class SegmentedButton extends UI5Element {
46
47
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedButton.js","sourceRoot":"","sources":["../src/SegmentedButton.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetEffectiveAriaDescriptionText,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisShift,\n\tisEscape,\n\tisSpaceShift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { LIST_ITEM_SELECTED } from \"./generated/i18n/i18n-defaults.js\";\nimport announce from \"@ui5/webcomponents-base/dist/util/InvisibleMessage.js\";\nimport InvisibleMessageMode from \"@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js\";\nimport \"./SegmentedButtonItem.js\";\nimport type SegmentedButtonItem from \"./SegmentedButtonItem.js\";\nimport SegmentedButtonSelectionMode from \"./types/SegmentedButtonSelectionMode.js\";\n\n// Template\nimport SegmentedButtonTemplate from \"./SegmentedButtonTemplate.js\";\n\n// Styles\nimport SegmentedButtonCss from \"./generated/themes/SegmentedButton.css.js\";\n\n/**\n * Interface for components that may be slotted inside `ui5-segmented-button` as items\n * @public\n */\ninterface ISegmentedButtonItem extends UI5Element, ITabbable {\n\tdisabled: boolean,\n\tselected: boolean,\n}\n\ntype SegmentedButtonSelectionChangeEventDetail = {\n\tselectedItems: Array<ISegmentedButtonItem>,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-segmented-button` shows a group of items. When the user clicks or taps\n * one of the items, it stays in a pressed state. It automatically resizes the items\n * to fit proportionally within the component. When no width is set, the component uses the available width.\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SegmentedButton.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.6\n * @public\n */\n@customElement({\n\ttag: \"ui5-segmented-button\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: SegmentedButtonTemplate,\n\tstyles: SegmentedButtonCss,\n})\n/**\n * Fired when the selected item changes.\n * @param {Array<ISegmentedButtonItem>} selectedItems an array of selected items. Since: 1.14.0\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n})\n\nclass SegmentedButton extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SegmentedButtonSelectionChangeEventDetail,\n\t}\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.3\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the component selection mode.\n\t * @default \"Single\"\n\t * @public\n\t * @since 1.14.0\n\t */\n\t@property()\n\tselectionMode: `${SegmentedButtonSelectionMode}` = \"Single\";\n\n\t/**\n\t * Determines whether the segmented button items should be sized to fit their content.\n\t *\n\t * If set to `true`, each item will be sized to fit its content, with any extra space distributed after the last item.\n\t * If set to `false` (the default), all items will be equally sized to fill the available space.\n\t *\n\t * @default false\n\t * @public\n\t * @since 2.16.0\n\t*/\n\t@property({ type: Boolean })\n\titemsFitContent: boolean = false;\n\t/**\n\t * Defines the items of `ui5-segmented-button`.\n\t *\n\t * **Note:** Multiple items are allowed.\n\t *\n\t * **Note:** Use the `ui5-segmented-button-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<ISegmentedButtonItem>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_itemNavigation: ItemNavigation;\n\n\thasPreviouslyFocusedItem: boolean;\n\n\t_selectedItem?: ISegmentedButtonItem;\n\n\t_cancelAction: boolean;\n\t_isSpacePressed: boolean;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._itemNavigation = new ItemNavigation(this, {\n\t\t\tgetItemsCallback: () => this.navigatableItems,\n\t\t});\n\t\tthis.hasPreviouslyFocusedItem = false;\n\t\tthis._cancelAction = false;\n\t\tthis._isSpacePressed = false;\n\t}\n\n\tonBeforeRendering() {\n\t\tconst items = this.getSlottedNodes<SegmentedButtonItem>(\"items\");\n\t\tconst visibleItems = items.filter(item => !item.hidden);\n\t\tlet index = 1;\n\n\t\titems.forEach(item => {\n\t\t\titem.posInSet = item.hidden ? undefined : index++;\n\t\t\titem.sizeOfSet = item.hidden ? undefined : visibleItems.length;\n\t\t});\n\n\t\tthis.normalizeSelection();\n\n\t\tif (!this.itemsFitContent) {\n\t\t\tthis.style.setProperty(\"--_ui5_segmented_btn_items_count\", `${visibleItems.length}`);\n\t\t}\n\t}\n\n\tnormalizeSelection() {\n\t\tif (!this.items.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch (this.selectionMode) {\n\t\tcase SegmentedButtonSelectionMode.Single: {\n\t\t\tconst selectedItems = this.selectedItems;\n\t\t\tconst selectedItemIndex = this._selectedItem ? selectedItems.indexOf(this._selectedItem) : -1;\n\t\t\tif (this._selectedItem && selectedItems.length > 1) {\n\t\t\t\tselectedItems.splice(selectedItemIndex, 1);\n\t\t\t}\n\t\t\tconst selectedItem = selectedItems.pop() || this.items[0];\n\t\t\tthis._applySingleSelection(selectedItem);\n\t\t\tbreak;\n\t\t}\n\t\tdefault:\n\t\t}\n\t}\n\n\tgetFocusDomRef(): HTMLElement | undefined {\n\t\treturn this._itemNavigation._getCurrentItem();\n\t}\n\n\t_selectItem(e: MouseEvent | KeyboardEvent) {\n\t\tconst target = e.target as SegmentedButtonItem;\n\t\tconst isTargetSegmentedButtonItem = target.hasAttribute(\"ui5-segmented-button-item\");\n\n\t\tif (target.disabled || target === this.getDomRef() || !isTargetSegmentedButtonItem) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Check if preventDefault was called on the native event (e.g., by item's semantic click handler)\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch (this.selectionMode) {\n\t\tcase SegmentedButtonSelectionMode.Multiple:\n\t\t\ttarget.selected = !target.selected;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthis._applySingleSelection(target as unknown as ISegmentedButtonItem);\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"selection-change\", {\n\t\t\tselectedItems: this.selectedItems,\n\t\t});\n\n\t\tif (target.selected) {\n\t\t\tannounce(SegmentedButton.i18nBundle.getText(LIST_ITEM_SELECTED), InvisibleMessageMode.Assertive);\n\t\t}\n\n\t\tthis._itemNavigation.setCurrentItem(target);\n\n\t\treturn this;\n\t}\n\n\t_applySingleSelection(item: ISegmentedButtonItem) {\n\t\tthis.items.forEach(currentItem => {\n\t\t\tcurrentItem.selected = false;\n\t\t});\n\t\titem.selected = true;\n\t\tthis._selectedItem = item;\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tthis._selectItem(e);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectItem(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault(); // Prevent scrolling\n\t\t\tthis._isSpacePressed = true;\n\t\t} else if (isShift(e) || isEscape(e)) {\n\t\t\tthis._cancelAction = true; // Set the flag to cancel the action\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tconst isSpaceKey = isSpace(e);\n\t\tconst isCancelKey = isShift(e) || isEscape(e);\n\n\t\tif (isSpaceKey || isSpaceShift(e)) {\n\t\t\tif (this._cancelAction) {\n\t\t\t\tthis._cancelAction = false;\n\t\t\t\tthis._isSpacePressed = false;\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._isSpacePressed = false;\n\t\t} else if (isCancelKey && !this._isSpacePressed) {\n\t\t\tthis._cancelAction = false;\n\t\t}\n\n\t\tif (isSpaceKey) {\n\t\t\tthis._selectItem(e);\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tconst eventTarget = e.target as SegmentedButtonItem;\n\t\tconst isTargetSegmentedButtonItem = eventTarget.hasAttribute(\"ui5-segmented-button-item\");\n\n\t\tif (isTargetSegmentedButtonItem) {\n\t\t\tthis._itemNavigation.setCurrentItem(eventTarget);\n\t\t\tthis.hasPreviouslyFocusedItem = true;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\t// If the component was previously focused,\n\t\t// update the ItemNavigation to sync the button's tabindex values\n\t\tif (this.hasPreviouslyFocusedItem) {\n\t\t\tthis._itemNavigation.setCurrentItem(e.target as SegmentedButtonItem);\n\t\t\treturn;\n\t\t}\n\n\t\t// If the component is focused for the first time\n\t\t// focus the selected item if such is present\n\t\tif (this.selectedItems.length) {\n\t\t\tthis._itemNavigation.setCurrentItem(this.selectedItems[0]);\n\t\t\tthis.selectedItems[0].focus();\n\t\t\tthis.hasPreviouslyFocusedItem = true;\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of the currently selected items.\n\t * @since 1.14.0\n\t * @public\n\t * @default []\n\t */\n\tget selectedItems(): Array<ISegmentedButtonItem> {\n\t\treturn this.items.filter(item => item.selected);\n\t}\n\n\tget navigatableItems() {\n\t\treturn this.getSlottedNodes<SegmentedButtonItem>(\"items\").filter(item => {\n\t\t\treturn !item.disabled;\n\t\t});\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined;\n\t}\n\n\tget ariaDescriptionText() {\n\t\treturn getEffectiveAriaDescriptionText(this) || undefined;\n\t}\n}\n\nSegmentedButton.define();\n\nexport default SegmentedButton;\nexport type {\n\tSegmentedButtonSelectionChangeEventDetail,\n\tISegmentedButtonItem,\n};\n"]}
1
+ {"version":3,"file":"SegmentedButton.js","sourceRoot":"","sources":["../src/SegmentedButton.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetEffectiveAriaDescriptionText,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisShift,\n\tisEscape,\n\tisSpaceShift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { LIST_ITEM_SELECTED } from \"./generated/i18n/i18n-defaults.js\";\nimport announce from \"@ui5/webcomponents-base/dist/util/InvisibleMessage.js\";\nimport InvisibleMessageMode from \"@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js\";\nimport \"./SegmentedButtonItem.js\";\nimport type SegmentedButtonItem from \"./SegmentedButtonItem.js\";\nimport SegmentedButtonSelectionMode from \"./types/SegmentedButtonSelectionMode.js\";\n\n// Template\nimport SegmentedButtonTemplate from \"./SegmentedButtonTemplate.js\";\n\n// Styles\nimport SegmentedButtonCss from \"./generated/themes/SegmentedButton.css.js\";\n\n/**\n * Interface for components that may be slotted inside `ui5-segmented-button` as items\n * @public\n */\ninterface ISegmentedButtonItem extends UI5Element, ITabbable {\n\tdisabled: boolean,\n\tselected: boolean,\n}\n\ntype SegmentedButtonSelectionChangeEventDetail = {\n\tselectedItems: Array<ISegmentedButtonItem>,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-segmented-button` shows a group of items. When the user clicks or taps\n * one of the items, it stays in a pressed state. It automatically resizes the items\n * to fit proportionally within the component. When no width is set, the component uses the available width.\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SegmentedButton.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0\n * @public\n * @ui5subcomponent SegmentedButtonItem\n */\n@customElement({\n\ttag: \"ui5-segmented-button\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: SegmentedButtonTemplate,\n\tstyles: SegmentedButtonCss,\n})\n/**\n * Fired when the selected item changes.\n * @param {Array<ISegmentedButtonItem>} selectedItems an array of selected items. Since: 1.14.0\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n})\n\nclass SegmentedButton extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SegmentedButtonSelectionChangeEventDetail,\n\t}\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.3\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the component selection mode.\n\t * @default \"Single\"\n\t * @public\n\t * @since 1.14.0\n\t */\n\t@property()\n\tselectionMode: `${SegmentedButtonSelectionMode}` = \"Single\";\n\n\t/**\n\t * Determines whether the segmented button items should be sized to fit their content.\n\t *\n\t * If set to `true`, each item will be sized to fit its content, with any extra space distributed after the last item.\n\t * If set to `false` (the default), all items will be equally sized to fill the available space.\n\t *\n\t * @default false\n\t * @public\n\t * @since 2.16.0\n\t*/\n\t@property({ type: Boolean })\n\titemsFitContent: boolean = false;\n\t/**\n\t * Defines the items of `ui5-segmented-button`.\n\t *\n\t * **Note:** Multiple items are allowed.\n\t *\n\t * **Note:** Use the `ui5-segmented-button-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<ISegmentedButtonItem>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_itemNavigation: ItemNavigation;\n\n\thasPreviouslyFocusedItem: boolean;\n\n\t_selectedItem?: ISegmentedButtonItem;\n\n\t_cancelAction: boolean;\n\t_isSpacePressed: boolean;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._itemNavigation = new ItemNavigation(this, {\n\t\t\tgetItemsCallback: () => this.navigatableItems,\n\t\t});\n\t\tthis.hasPreviouslyFocusedItem = false;\n\t\tthis._cancelAction = false;\n\t\tthis._isSpacePressed = false;\n\t}\n\n\tonBeforeRendering() {\n\t\tconst items = this.getSlottedNodes<SegmentedButtonItem>(\"items\");\n\t\tconst visibleItems = items.filter(item => !item.hidden);\n\t\tlet index = 1;\n\n\t\titems.forEach(item => {\n\t\t\titem.posInSet = item.hidden ? undefined : index++;\n\t\t\titem.sizeOfSet = item.hidden ? undefined : visibleItems.length;\n\t\t});\n\n\t\tthis.normalizeSelection();\n\n\t\tif (!this.itemsFitContent) {\n\t\t\tthis.style.setProperty(\"--_ui5_segmented_btn_items_count\", `${visibleItems.length}`);\n\t\t}\n\t}\n\n\tnormalizeSelection() {\n\t\tif (!this.items.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch (this.selectionMode) {\n\t\tcase SegmentedButtonSelectionMode.Single: {\n\t\t\tconst selectedItems = this.selectedItems;\n\t\t\tconst selectedItemIndex = this._selectedItem ? selectedItems.indexOf(this._selectedItem) : -1;\n\t\t\tif (this._selectedItem && selectedItems.length > 1) {\n\t\t\t\tselectedItems.splice(selectedItemIndex, 1);\n\t\t\t}\n\t\t\tconst selectedItem = selectedItems.pop() || this.items[0];\n\t\t\tthis._applySingleSelection(selectedItem);\n\t\t\tbreak;\n\t\t}\n\t\tdefault:\n\t\t}\n\t}\n\n\tgetFocusDomRef(): HTMLElement | undefined {\n\t\treturn this._itemNavigation._getCurrentItem();\n\t}\n\n\t_selectItem(e: MouseEvent | KeyboardEvent) {\n\t\tconst target = e.target as SegmentedButtonItem;\n\t\tconst isTargetSegmentedButtonItem = target.hasAttribute(\"ui5-segmented-button-item\");\n\n\t\tif (target.disabled || target === this.getDomRef() || !isTargetSegmentedButtonItem) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Check if preventDefault was called on the native event (e.g., by item's semantic click handler)\n\t\tif (e.defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch (this.selectionMode) {\n\t\tcase SegmentedButtonSelectionMode.Multiple:\n\t\t\ttarget.selected = !target.selected;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthis._applySingleSelection(target as unknown as ISegmentedButtonItem);\n\t\t}\n\n\t\tthis.fireDecoratorEvent(\"selection-change\", {\n\t\t\tselectedItems: this.selectedItems,\n\t\t});\n\n\t\tif (target.selected) {\n\t\t\tannounce(SegmentedButton.i18nBundle.getText(LIST_ITEM_SELECTED), InvisibleMessageMode.Assertive);\n\t\t}\n\n\t\tthis._itemNavigation.setCurrentItem(target);\n\n\t\treturn this;\n\t}\n\n\t_applySingleSelection(item: ISegmentedButtonItem) {\n\t\tthis.items.forEach(currentItem => {\n\t\t\tcurrentItem.selected = false;\n\t\t});\n\t\titem.selected = true;\n\t\tthis._selectedItem = item;\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tthis._selectItem(e);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectItem(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault(); // Prevent scrolling\n\t\t\tthis._isSpacePressed = true;\n\t\t} else if (isShift(e) || isEscape(e)) {\n\t\t\tthis._cancelAction = true; // Set the flag to cancel the action\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tconst isSpaceKey = isSpace(e);\n\t\tconst isCancelKey = isShift(e) || isEscape(e);\n\n\t\tif (isSpaceKey || isSpaceShift(e)) {\n\t\t\tif (this._cancelAction) {\n\t\t\t\tthis._cancelAction = false;\n\t\t\t\tthis._isSpacePressed = false;\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._isSpacePressed = false;\n\t\t} else if (isCancelKey && !this._isSpacePressed) {\n\t\t\tthis._cancelAction = false;\n\t\t}\n\n\t\tif (isSpaceKey) {\n\t\t\tthis._selectItem(e);\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tconst eventTarget = e.target as SegmentedButtonItem;\n\t\tconst isTargetSegmentedButtonItem = eventTarget.hasAttribute(\"ui5-segmented-button-item\");\n\n\t\tif (isTargetSegmentedButtonItem) {\n\t\t\tthis._itemNavigation.setCurrentItem(eventTarget);\n\t\t\tthis.hasPreviouslyFocusedItem = true;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\t// If the component was previously focused,\n\t\t// update the ItemNavigation to sync the button's tabindex values\n\t\tif (this.hasPreviouslyFocusedItem) {\n\t\t\tthis._itemNavigation.setCurrentItem(e.target as SegmentedButtonItem);\n\t\t\treturn;\n\t\t}\n\n\t\t// If the component is focused for the first time\n\t\t// focus the selected item if such is present\n\t\tif (this.selectedItems.length) {\n\t\t\tthis._itemNavigation.setCurrentItem(this.selectedItems[0]);\n\t\t\tthis.selectedItems[0].focus();\n\t\t\tthis.hasPreviouslyFocusedItem = true;\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of the currently selected items.\n\t * @since 1.14.0\n\t * @public\n\t * @default []\n\t */\n\tget selectedItems(): Array<ISegmentedButtonItem> {\n\t\treturn this.items.filter(item => item.selected);\n\t}\n\n\tget navigatableItems() {\n\t\treturn this.getSlottedNodes<SegmentedButtonItem>(\"items\").filter(item => {\n\t\t\treturn !item.disabled;\n\t\t});\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined;\n\t}\n\n\tget ariaDescriptionText() {\n\t\treturn getEffectiveAriaDescriptionText(this) || undefined;\n\t}\n}\n\nSegmentedButton.define();\n\nexport default SegmentedButton;\nexport type {\n\tSegmentedButtonSelectionChangeEventDetail,\n\tISegmentedButtonItem,\n};\n"]}
@@ -58,7 +58,7 @@ declare class SegmentedButtonItem extends UI5Element implements IButton, ISegmen
58
58
  * Defines the accessible ARIA name of the component.
59
59
  * @default undefined
60
60
  * @public
61
- * @since 1.0.0-rc.15
61
+ * @since 1.0.0
62
62
  */
63
63
  accessibleName?: string;
64
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedButtonItem.js","sourceRoot":"","sources":["../src/SegmentedButtonItem.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 UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { getEnableDefaultTooltips } from \"@ui5/webcomponents-base/dist/config/Tooltips.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { isSpaceShift } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetEffectiveAriaDescriptionText,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport { SEGMENTEDBUTTON_ARIA_DESCRIBEDBY } from \"./generated/i18n/i18n-defaults.js\";\nimport type { ISegmentedButtonItem } from \"./SegmentedButton.js\";\nimport SegmentedButtonItemTemplate from \"./SegmentedButtonItemTemplate.js\";\n\nimport type { IButton } from \"./Button.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport segmentedButtonItemCss from \"./generated/themes/SegmentedButtonItem.css.js\";\n\ntype SegmentedButtonItemClickEventDetail = {\n\toriginalEvent: Event,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * Users can use the `ui5-segmented-button-item` as part of a `ui5-segmented-button`.\n *\n * Clicking or tapping on a `ui5-segmented-button-item` changes its state to `selected`.\n * The item returns to its initial state when the user clicks or taps on it again.\n * By applying additional custom CSS-styling classes, apps can give a different style to any\n * `ui5-segmented-button-item`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SegmentedButtonItem.js\";`\n * @constructor\n * @extends UI5Element\n * @implements { ISegmentedButtonItem }\n * @implements { IButton }\n * @public\n */\n@customElement({\n\ttag: \"ui5-segmented-button-item\",\n\trenderer: jsxRenderer,\n\ttemplate: SegmentedButtonItemTemplate,\n\tstyles: segmentedButtonItemCss,\n})\n\n/**\n * Fired when the component is activated either with a mouse/tap or by using the Enter or Space key.\n *\n * **Note:** The event will not be fired if the `disabled` property is set to `true`.\n *\n * @param {Event} originalEvent The original DOM event that triggered the click. Use this to access modifier keys (altKey, ctrlKey, metaKey, shiftKey) and other native event properties.\n * @since 2.22.0\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\nclass SegmentedButtonItem extends UI5Element implements IButton, ISegmentedButtonItem {\n\teventDetails!: {\n\t\t\"click\": SegmentedButtonItemClickEventDetail,\n\t}\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be selected or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t *\n\t * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default undefined\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\ttooltip?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t * See all the available icons within the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines if the button has icon and no text.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ticonOnly = false;\n\n\t/**\n\t * Indicates if the element is focusable\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tnonInteractive = false;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tforcedTabIndex?: string;\n\n\t/**\n\t * Defines the index of the item inside of the SegmentedButton.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number })\n\tposInSet? = 0;\n\n\t/**\n\t * Defines how many items are inside of the SegmentedButton.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number })\n\tsizeOfSet? = 0;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thidden = false;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: DefaultSlot<Node>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (this.disabled) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\treturn;\n\t\t}\n\n\t\te.stopImmediatePropagation();\n\n\t\t// Fire semantic click event (CustomEvent that bubbles)\n\t\tconst prevented = !this.fireDecoratorEvent(\"click\", {\n\t\t\toriginalEvent: e,\n\t\t});\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tthis.iconOnly = !willShowContent(this.text);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget tabIndexValue() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (tabindex) {\n\t\t\treturn tabindex;\n\t\t}\n\n\t\treturn this.forcedTabIndex;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined;\n\t}\n\n\tget ariaDescriptionText() {\n\t\treturn `${(getEffectiveAriaDescriptionText(this) || \"\")} ${SegmentedButtonItem.i18nBundle.getText(SEGMENTEDBUTTON_ARIA_DESCRIBEDBY)}`.trim();\n\t}\n\n\tget showIconTooltip() {\n\t\treturn getEnableDefaultTooltips() && this.iconOnly && !this.tooltip;\n\t}\n\n\tget slotTextContent(): string {\n\t\treturn this.text\n\t\t\t.filter(node => node.nodeType === Node.TEXT_NODE)\n\t\t\t.map(node => node.textContent?.trim() || \"\")\n\t\t\t.filter(Boolean)\n\t\t\t.join(\" \");\n\t}\n}\n\nSegmentedButtonItem.define();\n\nexport default SegmentedButtonItem;\nexport type { SegmentedButtonItemClickEventDetail };\n"]}
1
+ {"version":3,"file":"SegmentedButtonItem.js","sourceRoot":"","sources":["../src/SegmentedButtonItem.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 UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { getEnableDefaultTooltips } from \"@ui5/webcomponents-base/dist/config/Tooltips.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { isSpaceShift } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetEffectiveAriaDescriptionText,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport { SEGMENTEDBUTTON_ARIA_DESCRIBEDBY } from \"./generated/i18n/i18n-defaults.js\";\nimport type { ISegmentedButtonItem } from \"./SegmentedButton.js\";\nimport SegmentedButtonItemTemplate from \"./SegmentedButtonItemTemplate.js\";\n\nimport type { IButton } from \"./Button.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport segmentedButtonItemCss from \"./generated/themes/SegmentedButtonItem.css.js\";\n\ntype SegmentedButtonItemClickEventDetail = {\n\toriginalEvent: Event,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * Users can use the `ui5-segmented-button-item` as part of a `ui5-segmented-button`.\n *\n * Clicking or tapping on a `ui5-segmented-button-item` changes its state to `selected`.\n * The item returns to its initial state when the user clicks or taps on it again.\n * By applying additional custom CSS-styling classes, apps can give a different style to any\n * `ui5-segmented-button-item`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/SegmentedButtonItem.js\";`\n * @constructor\n * @extends UI5Element\n * @implements { ISegmentedButtonItem }\n * @implements { IButton }\n * @public\n */\n@customElement({\n\ttag: \"ui5-segmented-button-item\",\n\trenderer: jsxRenderer,\n\ttemplate: SegmentedButtonItemTemplate,\n\tstyles: segmentedButtonItemCss,\n})\n\n/**\n * Fired when the component is activated either with a mouse/tap or by using the Enter or Space key.\n *\n * **Note:** The event will not be fired if the `disabled` property is set to `true`.\n *\n * @param {Event} originalEvent The original DOM event that triggered the click. Use this to access modifier keys (altKey, ctrlKey, metaKey, shiftKey) and other native event properties.\n * @since 2.22.0\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\nclass SegmentedButtonItem extends UI5Element implements IButton, ISegmentedButtonItem {\n\teventDetails!: {\n\t\t\"click\": SegmentedButtonItemClickEventDetail,\n\t}\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be selected or\n\t * focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is displayed as selected.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t *\n\t * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default undefined\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\ttooltip?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the HTML Elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.15.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * Example:\n\t * See all the available icons within the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines if the button has icon and no text.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ticonOnly = false;\n\n\t/**\n\t * Indicates if the element is focusable\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tnonInteractive = false;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tforcedTabIndex?: string;\n\n\t/**\n\t * Defines the index of the item inside of the SegmentedButton.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number })\n\tposInSet? = 0;\n\n\t/**\n\t * Defines how many items are inside of the SegmentedButton.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number })\n\tsizeOfSet? = 0;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thidden = false;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: DefaultSlot<Node>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (this.disabled) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\treturn;\n\t\t}\n\n\t\te.stopImmediatePropagation();\n\n\t\t// Fire semantic click event (CustomEvent that bubbles)\n\t\tconst prevented = !this.fireDecoratorEvent(\"click\", {\n\t\t\toriginalEvent: e,\n\t\t});\n\n\t\tif (prevented) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tthis.iconOnly = !willShowContent(this.text);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget tabIndexValue() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (tabindex) {\n\t\t\treturn tabindex;\n\t\t}\n\n\t\treturn this.forcedTabIndex;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined;\n\t}\n\n\tget ariaDescriptionText() {\n\t\treturn `${(getEffectiveAriaDescriptionText(this) || \"\")} ${SegmentedButtonItem.i18nBundle.getText(SEGMENTEDBUTTON_ARIA_DESCRIBEDBY)}`.trim();\n\t}\n\n\tget showIconTooltip() {\n\t\treturn getEnableDefaultTooltips() && this.iconOnly && !this.tooltip;\n\t}\n\n\tget slotTextContent(): string {\n\t\treturn this.text\n\t\t\t.filter(node => node.nodeType === Node.TEXT_NODE)\n\t\t\t.map(node => node.textContent?.trim() || \"\")\n\t\t\t.filter(Boolean)\n\t\t\t.join(\" \");\n\t}\n}\n\nSegmentedButtonItem.define();\n\nexport default SegmentedButtonItem;\nexport type { SegmentedButtonItemClickEventDetail };\n"]}
package/dist/Select.d.ts CHANGED
@@ -98,7 +98,10 @@ type SelectLiveChangeEventDetail = {
98
98
  * @extends UI5Element
99
99
  * @public
100
100
  * @csspart popover - Used to style the popover element
101
- * @since 0.8.0
101
+ * @since 1.0.0
102
+ * @ui5subcomponent Option
103
+ * @ui5subcomponent OptionCustom
104
+ * @ui5subcomponent OptionGroup
102
105
  */
103
106
  declare class Select extends UI5Element implements IFormInputElement {
104
107
  eventDetails: {
@@ -149,7 +152,7 @@ declare class Select extends UI5Element implements IFormInputElement {
149
152
  valueState: `${ValueState}`;
150
153
  /**
151
154
  * Defines whether the component is required.
152
- * @since 1.0.0-rc.9
155
+ * @since 1.0.0
153
156
  * @default false
154
157
  * @public
155
158
  */
@@ -166,7 +169,7 @@ declare class Select extends UI5Element implements IFormInputElement {
166
169
  readonly: boolean;
167
170
  /**
168
171
  * Defines the accessible ARIA name of the component.
169
- * @since 1.0.0-rc.9
172
+ * @since 1.0.0
170
173
  * @public
171
174
  * @default undefined
172
175
  */
@@ -175,7 +178,7 @@ declare class Select extends UI5Element implements IFormInputElement {
175
178
  * Receives id(or many ids) of the elements that label the select.
176
179
  * @default undefined
177
180
  * @public
178
- * @since 1.0.0-rc.15
181
+ * @since 1.0.0
179
182
  */
180
183
  accessibleNameRef?: string;
181
184
  /**
package/dist/Select.js CHANGED
@@ -96,7 +96,10 @@ const isPrintableCharacter = (e) => {
96
96
  * @extends UI5Element
97
97
  * @public
98
98
  * @csspart popover - Used to style the popover element
99
- * @since 0.8.0
99
+ * @since 1.0.0
100
+ * @ui5subcomponent Option
101
+ * @ui5subcomponent OptionCustom
102
+ * @ui5subcomponent OptionGroup
100
103
  */
101
104
  let Select = Select_1 = class Select extends UI5Element {
102
105
  constructor() {
@@ -117,7 +120,7 @@ let Select = Select_1 = class Select extends UI5Element {
117
120
  this.valueState = "None";
118
121
  /**
119
122
  * Defines whether the component is required.
120
- * @since 1.0.0-rc.9
123
+ * @since 1.0.0
121
124
  * @default false
122
125
  * @public
123
126
  */