@ui5/webcomponents 2.1.0-rc.2 → 2.1.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 (563) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/AvatarGroup.js +1 -1
  4. package/dist/AvatarGroup.js.map +1 -1
  5. package/dist/CalendarDateRange.d.ts +1 -1
  6. package/dist/CalendarDateRange.js +1 -1
  7. package/dist/CalendarDateRange.js.map +1 -1
  8. package/dist/Card.d.ts +14 -0
  9. package/dist/Card.js +25 -1
  10. package/dist/Card.js.map +1 -1
  11. package/dist/ColorPalette.d.ts +6 -2
  12. package/dist/ColorPalette.js +17 -12
  13. package/dist/ColorPalette.js.map +1 -1
  14. package/dist/DatePicker.d.ts +2 -0
  15. package/dist/DatePicker.js +5 -0
  16. package/dist/DatePicker.js.map +1 -1
  17. package/dist/DayPicker.js +1 -1
  18. package/dist/DayPicker.js.map +1 -1
  19. package/dist/Dialog.js +1 -0
  20. package/dist/Dialog.js.map +1 -1
  21. package/dist/Input.d.ts +1 -0
  22. package/dist/Input.js +22 -25
  23. package/dist/Input.js.map +1 -1
  24. package/dist/List.d.ts +0 -6
  25. package/dist/List.js +0 -13
  26. package/dist/List.js.map +1 -1
  27. package/dist/MenuSeparator.d.ts +1 -1
  28. package/dist/MenuSeparator.js +1 -1
  29. package/dist/MenuSeparator.js.map +1 -1
  30. package/dist/MultiComboBox.js +1 -1
  31. package/dist/MultiComboBox.js.map +1 -1
  32. package/dist/MultiComboBoxItemGroup.d.ts +1 -1
  33. package/dist/MultiComboBoxItemGroup.js +1 -1
  34. package/dist/MultiComboBoxItemGroup.js.map +1 -1
  35. package/dist/RadioButton.js +1 -1
  36. package/dist/RadioButton.js.map +1 -1
  37. package/dist/Select.js +1 -1
  38. package/dist/Select.js.map +1 -1
  39. package/dist/Table.d.ts +1 -1
  40. package/dist/Table.js +1 -1
  41. package/dist/Table.js.map +1 -1
  42. package/dist/TableCell.d.ts +1 -1
  43. package/dist/TableCell.js +1 -1
  44. package/dist/TableCell.js.map +1 -1
  45. package/dist/TableCellBase.d.ts +1 -1
  46. package/dist/TableCellBase.js +1 -1
  47. package/dist/TableCellBase.js.map +1 -1
  48. package/dist/TableGrowing.d.ts +1 -1
  49. package/dist/TableGrowing.js +1 -1
  50. package/dist/TableGrowing.js.map +1 -1
  51. package/dist/TableHeaderCell.d.ts +1 -1
  52. package/dist/TableHeaderCell.js +1 -1
  53. package/dist/TableHeaderCell.js.map +1 -1
  54. package/dist/TableHeaderRow.d.ts +1 -1
  55. package/dist/TableHeaderRow.js +1 -1
  56. package/dist/TableHeaderRow.js.map +1 -1
  57. package/dist/TableRow.d.ts +1 -1
  58. package/dist/TableRow.js +1 -1
  59. package/dist/TableRow.js.map +1 -1
  60. package/dist/TableRowBase.d.ts +1 -1
  61. package/dist/TableRowBase.js +1 -1
  62. package/dist/TableRowBase.js.map +1 -1
  63. package/dist/TableSelection.d.ts +1 -1
  64. package/dist/TableSelection.js +1 -1
  65. package/dist/TableSelection.js.map +1 -1
  66. package/dist/TimePicker.d.ts +1 -1
  67. package/dist/TimePicker.js +1 -1
  68. package/dist/TimePicker.js.map +1 -1
  69. package/dist/TimePickerClock.js +16 -0
  70. package/dist/TimePickerClock.js.map +1 -1
  71. package/dist/Toolbar.js +2 -1
  72. package/dist/Toolbar.js.map +1 -1
  73. package/dist/ToolbarRegistry.js +1 -1
  74. package/dist/ToolbarRegistry.js.map +1 -1
  75. package/dist/css/themes/Avatar.css +1 -1
  76. package/dist/css/themes/AvatarGroup.css +1 -1
  77. package/dist/css/themes/Bar.css +1 -1
  78. package/dist/css/themes/Breadcrumbs.css +1 -1
  79. package/dist/css/themes/BusyIndicator.css +1 -1
  80. package/dist/css/themes/Button.css +1 -1
  81. package/dist/css/themes/Calendar.css +1 -1
  82. package/dist/css/themes/CalendarHeader.css +1 -1
  83. package/dist/css/themes/CalendarLegend.css +1 -1
  84. package/dist/css/themes/CalendarLegendItem.css +1 -1
  85. package/dist/css/themes/Card.css +1 -1
  86. package/dist/css/themes/CardHeader.css +1 -1
  87. package/dist/css/themes/Carousel.css +1 -1
  88. package/dist/css/themes/CheckBox.css +1 -1
  89. package/dist/css/themes/ColorPalette.css +1 -1
  90. package/dist/css/themes/ColorPaletteItem.css +1 -1
  91. package/dist/css/themes/ColorPalettePopover.css +1 -1
  92. package/dist/css/themes/ColorPicker.css +1 -1
  93. package/dist/css/themes/ComboBox.css +1 -1
  94. package/dist/css/themes/DatePicker.css +1 -1
  95. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  96. package/dist/css/themes/DayPicker.css +1 -1
  97. package/dist/css/themes/Dialog.css +1 -1
  98. package/dist/css/themes/FileUploader.css +1 -1
  99. package/dist/css/themes/Form.css +1 -1
  100. package/dist/css/themes/FormItem.css +1 -1
  101. package/dist/css/themes/FormLabelSpan.css +1 -1
  102. package/dist/css/themes/GrowingButton.css +1 -1
  103. package/dist/css/themes/Icon.css +1 -1
  104. package/dist/css/themes/Input.css +1 -1
  105. package/dist/css/themes/InputIcon.css +1 -1
  106. package/dist/css/themes/InputSharedStyles.css +1 -1
  107. package/dist/css/themes/Link.css +1 -1
  108. package/dist/css/themes/List.css +1 -1
  109. package/dist/css/themes/ListItem.css +1 -1
  110. package/dist/css/themes/ListItemBase.css +1 -1
  111. package/dist/css/themes/ListItemCustom.css +1 -1
  112. package/dist/css/themes/ListItemGroup.css +1 -1
  113. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  114. package/dist/css/themes/ListItemIcon.css +1 -1
  115. package/dist/css/themes/Menu.css +1 -1
  116. package/dist/css/themes/MenuItem.css +1 -1
  117. package/dist/css/themes/MessageStrip.css +1 -1
  118. package/dist/css/themes/MonthPicker.css +1 -1
  119. package/dist/css/themes/MultiComboBox.css +1 -1
  120. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  121. package/dist/css/themes/MultiInput.css +1 -1
  122. package/dist/css/themes/NavigationMenu.css +1 -1
  123. package/dist/css/themes/NavigationMenuItem.css +1 -1
  124. package/dist/css/themes/OptionBase.css +1 -1
  125. package/dist/css/themes/Panel.css +1 -1
  126. package/dist/css/themes/Popover.css +1 -1
  127. package/dist/css/themes/PopupsCommon.css +1 -1
  128. package/dist/css/themes/ProgressIndicator.css +1 -1
  129. package/dist/css/themes/RadioButton.css +1 -1
  130. package/dist/css/themes/RangeSlider.css +1 -1
  131. package/dist/css/themes/RatingIndicator.css +1 -1
  132. package/dist/css/themes/ResponsivePopover.css +1 -1
  133. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  134. package/dist/css/themes/SegmentedButton.css +1 -1
  135. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  136. package/dist/css/themes/Select.css +1 -1
  137. package/dist/css/themes/SliderBase.css +1 -1
  138. package/dist/css/themes/SplitButton.css +1 -1
  139. package/dist/css/themes/StepInput.css +1 -1
  140. package/dist/css/themes/SuggestionItem.css +1 -1
  141. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  142. package/dist/css/themes/Switch.css +1 -1
  143. package/dist/css/themes/TabContainer.css +1 -1
  144. package/dist/css/themes/TabInOverflow.css +1 -1
  145. package/dist/css/themes/TabInStrip.css +1 -1
  146. package/dist/css/themes/TabSemanticIcon.css +1 -1
  147. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  148. package/dist/css/themes/Table.css +1 -1
  149. package/dist/css/themes/TableCellBase.css +1 -1
  150. package/dist/css/themes/TableHeaderRow.css +1 -1
  151. package/dist/css/themes/TableRow.css +1 -1
  152. package/dist/css/themes/TableRowBase.css +1 -1
  153. package/dist/css/themes/Tag.css +1 -1
  154. package/dist/css/themes/Text.css +1 -1
  155. package/dist/css/themes/TextArea.css +1 -1
  156. package/dist/css/themes/TimePicker.css +1 -1
  157. package/dist/css/themes/Toast.css +1 -1
  158. package/dist/css/themes/ToggleButton.css +1 -1
  159. package/dist/css/themes/Token.css +1 -1
  160. package/dist/css/themes/Tokenizer.css +1 -1
  161. package/dist/css/themes/TokenizerPopover.css +1 -1
  162. package/dist/css/themes/Toolbar.css +1 -1
  163. package/dist/css/themes/ToolbarPopover.css +1 -1
  164. package/dist/css/themes/TreeItem.css +1 -1
  165. package/dist/css/themes/ValueStateMessage.css +1 -1
  166. package/dist/css/themes/YearPicker.css +1 -1
  167. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  168. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  169. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  170. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  171. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  172. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  173. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  174. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  175. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  176. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  177. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  178. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  179. package/dist/custom-elements-internal.json +54 -13
  180. package/dist/custom-elements.json +38 -0
  181. package/dist/features/ColorPaletteMoreColors.d.ts +3 -2
  182. package/dist/features/ColorPaletteMoreColors.js +4 -4
  183. package/dist/features/ColorPaletteMoreColors.js.map +1 -1
  184. package/dist/features/InputSuggestions.d.ts +3 -2
  185. package/dist/features/InputSuggestions.js +5 -4
  186. package/dist/features/InputSuggestions.js.map +1 -1
  187. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  188. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  237. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  238. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  239. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  240. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  241. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  242. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  243. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  244. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  245. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  246. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  247. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  248. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  249. package/dist/generated/templates/CardTemplate.lit.js +2 -2
  250. package/dist/generated/templates/CardTemplate.lit.js.map +1 -1
  251. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +2 -2
  252. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -1
  253. package/dist/generated/templates/ColorPaletteTemplate.lit.js +2 -2
  254. package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
  255. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  256. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
  257. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  258. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
  259. package/dist/generated/templates/DateRangePickerTemplate.lit.js +1 -1
  260. package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -1
  261. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  262. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
  263. package/dist/generated/templates/DateTimePickerTemplate.lit.js +1 -1
  264. package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
  265. package/dist/generated/templates/InputPopoverTemplate.lit.js +1 -1
  266. package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
  267. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  268. package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
  269. package/dist/generated/templates/ListTemplate.lit.js +2 -3
  270. package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
  271. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  272. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
  273. package/dist/generated/templates/OptionCustomTemplate.lit.js +1 -1
  274. package/dist/generated/templates/OptionCustomTemplate.lit.js.map +1 -1
  275. package/dist/generated/templates/OptionTemplate.lit.js +1 -1
  276. package/dist/generated/templates/OptionTemplate.lit.js.map +1 -1
  277. package/dist/generated/themes/Avatar.css.js +1 -1
  278. package/dist/generated/themes/Avatar.css.js.map +1 -1
  279. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  280. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  281. package/dist/generated/themes/Bar.css.js +1 -1
  282. package/dist/generated/themes/Bar.css.js.map +1 -1
  283. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  284. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  285. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  286. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  287. package/dist/generated/themes/Button.css.js +1 -1
  288. package/dist/generated/themes/Button.css.js.map +1 -1
  289. package/dist/generated/themes/Calendar.css.js +1 -1
  290. package/dist/generated/themes/Calendar.css.js.map +1 -1
  291. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  292. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  293. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  294. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  295. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  296. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  297. package/dist/generated/themes/Card.css.js +1 -1
  298. package/dist/generated/themes/Card.css.js.map +1 -1
  299. package/dist/generated/themes/CardHeader.css.js +1 -1
  300. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  301. package/dist/generated/themes/Carousel.css.js +1 -1
  302. package/dist/generated/themes/Carousel.css.js.map +1 -1
  303. package/dist/generated/themes/CheckBox.css.js +1 -1
  304. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  305. package/dist/generated/themes/ColorPalette.css.js +1 -1
  306. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  307. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  308. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  309. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  310. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  311. package/dist/generated/themes/ColorPicker.css.js +1 -1
  312. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  313. package/dist/generated/themes/ComboBox.css.js +1 -1
  314. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  315. package/dist/generated/themes/DatePicker.css.js +1 -1
  316. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  317. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  318. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  319. package/dist/generated/themes/DayPicker.css.js +1 -1
  320. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  321. package/dist/generated/themes/Dialog.css.js +1 -1
  322. package/dist/generated/themes/Dialog.css.js.map +1 -1
  323. package/dist/generated/themes/FileUploader.css.js +1 -1
  324. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  325. package/dist/generated/themes/Form.css.js +1 -1
  326. package/dist/generated/themes/Form.css.js.map +1 -1
  327. package/dist/generated/themes/FormItem.css.js +1 -1
  328. package/dist/generated/themes/FormItem.css.js.map +1 -1
  329. package/dist/generated/themes/FormLabelSpan.css.js +1 -1
  330. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
  331. package/dist/generated/themes/GrowingButton.css.js +1 -1
  332. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  333. package/dist/generated/themes/Icon.css.js +1 -1
  334. package/dist/generated/themes/Icon.css.js.map +1 -1
  335. package/dist/generated/themes/Input.css.js +1 -1
  336. package/dist/generated/themes/Input.css.js.map +1 -1
  337. package/dist/generated/themes/InputIcon.css.js +1 -1
  338. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  339. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  340. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  341. package/dist/generated/themes/Link.css.js +1 -1
  342. package/dist/generated/themes/Link.css.js.map +1 -1
  343. package/dist/generated/themes/List.css.js +1 -1
  344. package/dist/generated/themes/List.css.js.map +1 -1
  345. package/dist/generated/themes/ListItem.css.js +1 -1
  346. package/dist/generated/themes/ListItem.css.js.map +1 -1
  347. package/dist/generated/themes/ListItemBase.css.js +1 -1
  348. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  349. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  350. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  351. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  352. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  353. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  354. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  355. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  356. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  357. package/dist/generated/themes/Menu.css.js +1 -1
  358. package/dist/generated/themes/Menu.css.js.map +1 -1
  359. package/dist/generated/themes/MenuItem.css.js +1 -1
  360. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  361. package/dist/generated/themes/MessageStrip.css.js +1 -1
  362. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  363. package/dist/generated/themes/MonthPicker.css.js +1 -1
  364. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  365. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  366. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  367. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  368. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  369. package/dist/generated/themes/MultiInput.css.js +1 -1
  370. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  371. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  372. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  373. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  374. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  375. package/dist/generated/themes/OptionBase.css.js +1 -1
  376. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  377. package/dist/generated/themes/Panel.css.js +1 -1
  378. package/dist/generated/themes/Panel.css.js.map +1 -1
  379. package/dist/generated/themes/Popover.css.js +1 -1
  380. package/dist/generated/themes/Popover.css.js.map +1 -1
  381. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  382. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  383. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  384. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  385. package/dist/generated/themes/RadioButton.css.js +1 -1
  386. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  387. package/dist/generated/themes/RangeSlider.css.js +1 -1
  388. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  389. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  390. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  391. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  392. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  393. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  394. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  395. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  396. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  397. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  398. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  399. package/dist/generated/themes/Select.css.js +1 -1
  400. package/dist/generated/themes/Select.css.js.map +1 -1
  401. package/dist/generated/themes/SliderBase.css.js +1 -1
  402. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  403. package/dist/generated/themes/SplitButton.css.js +1 -1
  404. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  405. package/dist/generated/themes/StepInput.css.js +1 -1
  406. package/dist/generated/themes/StepInput.css.js.map +1 -1
  407. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  408. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  409. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  410. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  411. package/dist/generated/themes/Switch.css.js +1 -1
  412. package/dist/generated/themes/Switch.css.js.map +1 -1
  413. package/dist/generated/themes/TabContainer.css.js +1 -1
  414. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  415. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  416. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  417. package/dist/generated/themes/TabInStrip.css.js +1 -1
  418. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  419. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  420. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  421. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  422. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  423. package/dist/generated/themes/Table.css.js +1 -1
  424. package/dist/generated/themes/Table.css.js.map +1 -1
  425. package/dist/generated/themes/TableCellBase.css.js +1 -1
  426. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  427. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  428. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  429. package/dist/generated/themes/TableRow.css.js +1 -1
  430. package/dist/generated/themes/TableRow.css.js.map +1 -1
  431. package/dist/generated/themes/TableRowBase.css.js +1 -1
  432. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  433. package/dist/generated/themes/Tag.css.js +1 -1
  434. package/dist/generated/themes/Tag.css.js.map +1 -1
  435. package/dist/generated/themes/Text.css.js +1 -1
  436. package/dist/generated/themes/Text.css.js.map +1 -1
  437. package/dist/generated/themes/TextArea.css.js +1 -1
  438. package/dist/generated/themes/TextArea.css.js.map +1 -1
  439. package/dist/generated/themes/TimePicker.css.js +1 -1
  440. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  441. package/dist/generated/themes/Toast.css.js +1 -1
  442. package/dist/generated/themes/Toast.css.js.map +1 -1
  443. package/dist/generated/themes/ToggleButton.css.js +1 -1
  444. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  445. package/dist/generated/themes/Token.css.js +1 -1
  446. package/dist/generated/themes/Token.css.js.map +1 -1
  447. package/dist/generated/themes/Tokenizer.css.js +1 -1
  448. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  449. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  450. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  451. package/dist/generated/themes/Toolbar.css.js +1 -1
  452. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  453. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  454. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  455. package/dist/generated/themes/TreeItem.css.js +1 -1
  456. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  457. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  458. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  459. package/dist/generated/themes/YearPicker.css.js +1 -1
  460. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  461. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  462. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  463. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  464. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  465. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  468. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  469. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  470. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  471. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  472. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  473. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  474. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  475. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  476. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  477. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  478. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  479. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  480. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  481. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  482. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  483. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  484. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  485. package/dist/vscode.html-custom-data.json +10 -0
  486. package/dist/web-types.json +21 -1
  487. package/package.json +10 -10
  488. package/src/Card.hbs +16 -7
  489. package/src/ColorPaletteDialog.hbs +18 -18
  490. package/src/DatePickerPopover.hbs +0 -1
  491. package/src/DateRangePicker.hbs +0 -1
  492. package/src/DateTimePickerPopover.hbs +0 -1
  493. package/src/Input.hbs +1 -1
  494. package/src/InputPopover.hbs +1 -1
  495. package/src/List.hbs +7 -13
  496. package/src/Option.hbs +1 -0
  497. package/src/OptionCustom.hbs +1 -0
  498. package/src/i18n/messagebundle_ar.properties +4 -0
  499. package/src/i18n/messagebundle_bg.properties +4 -0
  500. package/src/i18n/messagebundle_ca.properties +4 -0
  501. package/src/i18n/messagebundle_cnr.properties +4 -0
  502. package/src/i18n/messagebundle_cs.properties +4 -0
  503. package/src/i18n/messagebundle_cy.properties +4 -0
  504. package/src/i18n/messagebundle_da.properties +4 -0
  505. package/src/i18n/messagebundle_de.properties +4 -0
  506. package/src/i18n/messagebundle_el.properties +4 -0
  507. package/src/i18n/messagebundle_en.properties +4 -0
  508. package/src/i18n/messagebundle_en_GB.properties +4 -0
  509. package/src/i18n/messagebundle_en_US_sappsd.properties +71 -12
  510. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
  511. package/src/i18n/messagebundle_en_US_saptrc.properties +215 -156
  512. package/src/i18n/messagebundle_es.properties +4 -0
  513. package/src/i18n/messagebundle_es_MX.properties +4 -0
  514. package/src/i18n/messagebundle_et.properties +4 -0
  515. package/src/i18n/messagebundle_fi.properties +4 -0
  516. package/src/i18n/messagebundle_fr.properties +4 -0
  517. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  518. package/src/i18n/messagebundle_hi.properties +4 -0
  519. package/src/i18n/messagebundle_hr.properties +4 -0
  520. package/src/i18n/messagebundle_hu.properties +4 -0
  521. package/src/i18n/messagebundle_id.properties +8 -4
  522. package/src/i18n/messagebundle_it.properties +4 -0
  523. package/src/i18n/messagebundle_iw.properties +4 -0
  524. package/src/i18n/messagebundle_ja.properties +4 -0
  525. package/src/i18n/messagebundle_kk.properties +4 -0
  526. package/src/i18n/messagebundle_ko.properties +4 -0
  527. package/src/i18n/messagebundle_lt.properties +4 -0
  528. package/src/i18n/messagebundle_lv.properties +4 -0
  529. package/src/i18n/messagebundle_mk.properties +4 -0
  530. package/src/i18n/messagebundle_ms.properties +4 -0
  531. package/src/i18n/messagebundle_nl.properties +4 -0
  532. package/src/i18n/messagebundle_no.properties +4 -0
  533. package/src/i18n/messagebundle_pl.properties +4 -0
  534. package/src/i18n/messagebundle_pt.properties +4 -0
  535. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  536. package/src/i18n/messagebundle_ro.properties +4 -0
  537. package/src/i18n/messagebundle_ru.properties +4 -0
  538. package/src/i18n/messagebundle_sh.properties +4 -0
  539. package/src/i18n/messagebundle_sk.properties +4 -0
  540. package/src/i18n/messagebundle_sl.properties +4 -0
  541. package/src/i18n/messagebundle_sr.properties +4 -0
  542. package/src/i18n/messagebundle_sv.properties +4 -0
  543. package/src/i18n/messagebundle_th.properties +4 -0
  544. package/src/i18n/messagebundle_tr.properties +4 -0
  545. package/src/i18n/messagebundle_uk.properties +4 -0
  546. package/src/i18n/messagebundle_vi.properties +4 -0
  547. package/src/i18n/messagebundle_zh_CN.properties +4 -0
  548. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  549. package/src/themes/Card.css +11 -0
  550. package/src/themes/List.css +3 -22
  551. package/src/themes/MultiComboBoxPopover.css +1 -1
  552. package/src/themes/PopupsCommon.css +2 -2
  553. package/src/themes/ResponsivePopover.css +1 -1
  554. package/src/themes/StepInput.css +2 -0
  555. package/src/themes/TextArea.css +11 -26
  556. package/src/themes/TimePicker.css +3 -0
  557. package/src/themes/base/sizes-parameters.css +38 -4
  558. package/src/themes/sap_fiori_3/Token-parameters.css +1 -0
  559. package/src/themes/sap_fiori_3/sizes-parameters.css +13 -1
  560. package/src/themes/sap_fiori_3_dark/Token-parameters.css +1 -0
  561. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +9 -0
  562. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +5 -0
  563. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +5 -0
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.js","sourceRoot":"","sources":["../src/RadioButton.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisDown,\n\tisLeft,\n\tisUp,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Label from \"./Label.js\";\nimport RadioButtonGroup from \"./RadioButtonGroup.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport RadioButtonTemplate from \"./generated/templates/RadioButtonTemplate.lit.js\";\n\n// i18n\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tFORM_SELECTABLE_REQUIRED2,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport radioButtonCss from \"./generated/themes/RadioButton.css.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeRadio: RadioButton;\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-radio-button` component enables users to select a single option from a set of options.\n * When a `ui5-radio-button` is selected by the user, the\n * `change` event is fired.\n * When a `ui5-radio-button` that is within a group is selected, the one\n * that was previously selected gets automatically deselected. You can group radio buttons by using the `name` property.\n *\n * **Note:** If `ui5-radio-button` is not part of a group, it can be selected once, but can not be deselected back.\n *\n * ### Keyboard Handling\n *\n * Once the `ui5-radio-button` is on focus, it might be selected by pressing the Space and Enter keys.\n *\n * The Arrow Down/Arrow Up and Arrow Left/Arrow Right keys can be used to change selection between next/previous radio buttons in one group,\n * while TAB and SHIFT + TAB can be used to enter or leave the radio button group.\n *\n * **Note:** On entering radio button group, the focus goes to the currently selected radio button.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/RadioButton\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart outer-ring - Used to style the outer ring of the `ui5-radio-button`.\n * @csspart inner-ring - Used to style the inner ring of the `ui5-radio-button`.\n */\n@customElement({\n\ttag: \"ui5-radio-button\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: RadioButtonTemplate,\n\tstyles: radioButtonCss,\n\tdependencies: [Label],\n})\n/**\n * Fired when the component checked state changes.\n * @public\n * @since 1.0.0-rc.15\n */\n@event(\"change\")\n\nclass RadioButton extends UI5Element implements IFormInputElement {\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 required.\n\t * @default false\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines whether the component is checked or not.\n\t *\n\t * **Note:** The property value can be changed with user interaction,\n\t * either by clicking/tapping on the component,\n\t * or by using the Space or Enter key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean })\n\tchecked = false;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * Radio buttons with the same `name` will form a radio button group.\n\t *\n\t * **Note:** By this name the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** The selection can be changed with `ARROW_UP/DOWN` and `ARROW_LEFT/RIGHT` keys between radio buttons in same group.\n\t *\n\t * **Note:** Only one radio button can be selected per group.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the form value of the component.\n\t * When a form with a radio button group is submitted, the group's value\n\t * will be the value of the currently selected radio button.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.6.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the 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@property()\n\t_tabIndex?: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Defines if the component is selected in specific group\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_groupChecked = false;\n\t@property({ type: Boolean, noAttribute: true })\n\t_groupRequired = false;\n\n\t_deactivate: () => void;\n\t_name = \"\";\n\t_checked = false;\n\n\tget formValidityMessage() {\n\t\treturn RadioButton.i18nBundle.getText(FORM_SELECTABLE_REQUIRED2);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this._groupRequired && !this._groupChecked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? (this.value || \"on\") : null;\n\t}\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeRadio) {\n\t\t\t\tactiveRadio.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tstatic async onDefine() {\n\t\tRadioButton.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonAfterRendering() {\n\t\tthis.syncGroup();\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tthis.syncGroup(true);\n\t}\n\n\tsyncGroup(forceRemove?: boolean) {\n\t\tconst oldGroup = this._name;\n\t\tconst currentGroup = this.name;\n\t\tconst oldChecked = this._checked;\n\t\tconst currentChecked = this.checked;\n\n\t\tif (forceRemove) {\n\t\t\tRadioButtonGroup.removeFromGroup(this, oldGroup);\n\t\t}\n\n\t\tif (currentGroup !== oldGroup) {\n\t\t\tif (oldGroup) {\n\t\t\t\t// remove the control from the previous group\n\t\t\t\tRadioButtonGroup.removeFromGroup(this, oldGroup);\n\t\t\t}\n\n\t\t\tif (currentGroup) {\n\t\t\t\t// add the control to the existing group\n\t\t\t\tRadioButtonGroup.addToGroup(this, currentGroup);\n\t\t\t}\n\t\t} else if (currentGroup) {\n\t\t\tRadioButtonGroup.enforceSingleSelection(this, currentGroup);\n\t\t}\n\n\t\tif (this.name && currentChecked !== oldChecked) {\n\t\t\tRadioButtonGroup.updateTabOrder(this.name);\n\t\t}\n\n\t\tthis._name = this.name || \"\";\n\t\tthis._checked = this.checked;\n\t}\n\n\t_onclick() {\n\t\treturn this.toggle();\n\t}\n\n\t_handleDown(e: KeyboardEvent) {\n\t\tconst currentGroup = this.name;\n\n\t\tif (!currentGroup) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tRadioButtonGroup.selectNextItem(this, currentGroup);\n\t}\n\n\t_handleUp(e: KeyboardEvent) {\n\t\tconst currentGroup = this.name;\n\n\t\tif (!currentGroup) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tRadioButtonGroup.selectPreviousItem(this, currentGroup);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.active = true;\n\t\t\treturn e.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.active = true;\n\t\t\treturn this.toggle();\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (isDown(e) || (!isRTL && isRight(e)) || (isRTL && isLeft(e))) {\n\t\t\tthis._handleDown(e);\n\t\t}\n\n\t\tif (isUp(e) || (!isRTL && isLeft(e)) || (isRTL && isRight(e))) {\n\t\t\tthis._handleUp(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\t_onmousedown() {\n\t\tthis.active = true;\n\t\tactiveRadio = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (!this.canToggle()) {\n\t\t\treturn this;\n\t\t}\n\n\t\tif (!this.name) {\n\t\t\tthis.checked = !this.checked;\n\t\t\tthis.fireEvent(\"change\");\n\t\t\treturn this;\n\t\t}\n\n\t\tRadioButtonGroup.selectItem(this, this.name);\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.checked);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tinner: {\n\t\t\t\t\"ui5-radio-inner--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : null;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn [getEffectiveAriaLabelText(this), this.text].filter(Boolean).join(\" \");\n\t}\n\n\tget effectiveAriaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tswitch (this.valueState) {\n\t\tcase ValueState.Negative:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_ERROR);\n\t\tcase ValueState.Critical:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_WARNING);\n\t\tcase ValueState.Positive:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_SUCCESS);\n\t\tcase ValueState.Information:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_INFORMATION);\n\t\tdefault:\n\t\t\treturn \"\";\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.disabled) {\n\t\t\treturn \"-1\";\n\t\t}\n\n\t\tif (this.name) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\n\t\treturn tabindex || \"0\";\n\t}\n}\n\nRadioButton.define();\n\nexport default RadioButton;\n"]}
1
+ {"version":3,"file":"RadioButton.js","sourceRoot":"","sources":["../src/RadioButton.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisDown,\n\tisLeft,\n\tisUp,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Label from \"./Label.js\";\nimport RadioButtonGroup from \"./RadioButtonGroup.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport RadioButtonTemplate from \"./generated/templates/RadioButtonTemplate.lit.js\";\n\n// i18n\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tFORM_SELECTABLE_REQUIRED2,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport radioButtonCss from \"./generated/themes/RadioButton.css.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeRadio: RadioButton;\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-radio-button` component enables users to select a single option from a set of options.\n * When a `ui5-radio-button` is selected by the user, the\n * `change` event is fired.\n * When a `ui5-radio-button` that is within a group is selected, the one\n * that was previously selected gets automatically deselected. You can group radio buttons by using the `name` property.\n *\n * **Note:** If `ui5-radio-button` is not part of a group, it can be selected once, but can not be deselected back.\n *\n * ### Keyboard Handling\n *\n * Once the `ui5-radio-button` is on focus, it might be selected by pressing the Space and Enter keys.\n *\n * The Arrow Down/Arrow Up and Arrow Left/Arrow Right keys can be used to change selection between next/previous radio buttons in one group,\n * while TAB and SHIFT + TAB can be used to enter or leave the radio button group.\n *\n * **Note:** On entering radio button group, the focus goes to the currently selected radio button.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/RadioButton\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart outer-ring - Used to style the outer ring of the `ui5-radio-button`.\n * @csspart inner-ring - Used to style the inner ring of the `ui5-radio-button`.\n */\n@customElement({\n\ttag: \"ui5-radio-button\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: RadioButtonTemplate,\n\tstyles: radioButtonCss,\n\tdependencies: [Label],\n})\n/**\n * Fired when the component checked state changes.\n * @public\n * @since 1.0.0-rc.15\n */\n@event(\"change\")\n\nclass RadioButton extends UI5Element implements IFormInputElement {\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 required.\n\t * @default false\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines whether the component is checked or not.\n\t *\n\t * **Note:** The property value can be changed with user interaction,\n\t * either by clicking/tapping on the component,\n\t * or by using the Space or Enter key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean })\n\tchecked = false;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * Radio buttons with the same `name` will form a radio button group.\n\t *\n\t * **Note:** By this name the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** The selection can be changed with `ARROW_UP/DOWN` and `ARROW_LEFT/RIGHT` keys between radio buttons in same group.\n\t *\n\t * **Note:** Only one radio button can be selected per group.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the form value of the component.\n\t * When a form with a radio button group is submitted, the group's value\n\t * will be the value of the currently selected radio button.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.6.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the 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@property()\n\t_tabIndex?: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Defines if the component is selected in specific group\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_groupChecked = false;\n\t@property({ type: Boolean, noAttribute: true })\n\t_groupRequired = false;\n\n\t_deactivate: () => void;\n\t_name = \"\";\n\t_checked = false;\n\n\tget formValidityMessage() {\n\t\treturn RadioButton.i18nBundle.getText(FORM_SELECTABLE_REQUIRED2);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this._groupRequired && !this._groupChecked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? (this.value || \"on\") : null;\n\t}\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeRadio) {\n\t\t\t\tactiveRadio.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tstatic async onDefine() {\n\t\tRadioButton.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonAfterRendering() {\n\t\tthis.syncGroup();\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tthis.syncGroup(true);\n\t}\n\n\tsyncGroup(forceRemove?: boolean) {\n\t\tconst oldGroup = this._name;\n\t\tconst currentGroup = this.name;\n\t\tconst oldChecked = this._checked;\n\t\tconst currentChecked = this.checked;\n\n\t\tif (forceRemove) {\n\t\t\tRadioButtonGroup.removeFromGroup(this, oldGroup);\n\t\t}\n\n\t\tif (currentGroup !== oldGroup) {\n\t\t\tif (oldGroup) {\n\t\t\t\t// remove the control from the previous group\n\t\t\t\tRadioButtonGroup.removeFromGroup(this, oldGroup);\n\t\t\t}\n\n\t\t\tif (currentGroup) {\n\t\t\t\t// add the control to the existing group\n\t\t\t\tRadioButtonGroup.addToGroup(this, currentGroup);\n\t\t\t}\n\t\t} else if (currentGroup && this.isConnected) {\n\t\t\tRadioButtonGroup.enforceSingleSelection(this, currentGroup);\n\t\t}\n\n\t\tif (this.name && currentChecked !== oldChecked) {\n\t\t\tRadioButtonGroup.updateTabOrder(this.name);\n\t\t}\n\n\t\tthis._name = this.name || \"\";\n\t\tthis._checked = this.checked;\n\t}\n\n\t_onclick() {\n\t\treturn this.toggle();\n\t}\n\n\t_handleDown(e: KeyboardEvent) {\n\t\tconst currentGroup = this.name;\n\n\t\tif (!currentGroup) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tRadioButtonGroup.selectNextItem(this, currentGroup);\n\t}\n\n\t_handleUp(e: KeyboardEvent) {\n\t\tconst currentGroup = this.name;\n\n\t\tif (!currentGroup) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tRadioButtonGroup.selectPreviousItem(this, currentGroup);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.active = true;\n\t\t\treturn e.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.active = true;\n\t\t\treturn this.toggle();\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (isDown(e) || (!isRTL && isRight(e)) || (isRTL && isLeft(e))) {\n\t\t\tthis._handleDown(e);\n\t\t}\n\n\t\tif (isUp(e) || (!isRTL && isLeft(e)) || (isRTL && isRight(e))) {\n\t\t\tthis._handleUp(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\t_onmousedown() {\n\t\tthis.active = true;\n\t\tactiveRadio = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (!this.canToggle()) {\n\t\t\treturn this;\n\t\t}\n\n\t\tif (!this.name) {\n\t\t\tthis.checked = !this.checked;\n\t\t\tthis.fireEvent(\"change\");\n\t\t\treturn this;\n\t\t}\n\n\t\tRadioButtonGroup.selectItem(this, this.name);\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.checked);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tinner: {\n\t\t\t\t\"ui5-radio-inner--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : null;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn [getEffectiveAriaLabelText(this), this.text].filter(Boolean).join(\" \");\n\t}\n\n\tget effectiveAriaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tswitch (this.valueState) {\n\t\tcase ValueState.Negative:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_ERROR);\n\t\tcase ValueState.Critical:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_WARNING);\n\t\tcase ValueState.Positive:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_SUCCESS);\n\t\tcase ValueState.Information:\n\t\t\treturn RadioButton.i18nBundle.getText(VALUE_STATE_INFORMATION);\n\t\tdefault:\n\t\t\treturn \"\";\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.disabled) {\n\t\t\treturn \"-1\";\n\t\t}\n\n\t\tif (this.name) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\n\t\treturn tabindex || \"0\";\n\t}\n}\n\nRadioButton.define();\n\nexport default RadioButton;\n"]}
package/dist/Select.js CHANGED
@@ -668,7 +668,7 @@ __decorate([
668
668
  slot()
669
669
  ], Select.prototype, "label", void 0);
670
670
  __decorate([
671
- property()
671
+ property({ noAttribute: true })
672
672
  ], Select.prototype, "value", null);
673
673
  Select = Select_1 = __decorate([
674
674
  customElement({
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sourceRoot":"","sources":["../src/Select.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport {\n\tisSpace,\n\tisUp,\n\tisDown,\n\tisEnter,\n\tisEscape,\n\tisHome,\n\tisEnd,\n\tisShow,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport announce from \"@ui5/webcomponents-base/dist/util/InvisibleMessage.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport type { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport InvisibleMessageMode from \"@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport List from \"./List.js\";\nimport type { ListItemClickEventDetail } from \"./List.js\";\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tINPUT_SUGGESTIONS_TITLE,\n\tLIST_ITEM_POSITION,\n\tSELECT_ROLE_DESCRIPTION,\n\tFORM_SELECTABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Label from \"./Label.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport type ListItemBase from \"./ListItemBase.js\";\n\n// Templates\nimport SelectTemplate from \"./generated/templates/SelectTemplate.lit.js\";\n\n// Styles\nimport selectCss from \"./generated/themes/Select.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\nimport SelectPopoverCss from \"./generated/themes/SelectPopover.css.js\";\n\n/**\n * Interface for components that may be slotted inside `ui5-select` as options\n * @public\n */\ntype IOption = ListItemBase & {\n\ttooltip?: string,\n\ticon?: string,\n\tvalue?: string,\n\tadditionalText?: string,\n\tfocused?: boolean,\n\teffectiveDisplayText: string,\n};\n\ntype SelectChangeEventDetail = {\n\tselectedOption: IOption,\n}\ntype SelectLiveChangeEventDetail = {\n\tselectedOption: IOption,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-select` component is used to create a drop-down list.\n *\n * ### Usage\n *\n * There are two main usages of the `ui5-select>`.\n *\n * 1. With Option (`ui5-option`) web component:\n *\n * The available options of the Select are defined by using the Option component.\n * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.\n *\n * 2. With OptionCustom (`ui5-option-custom`) web component.\n *\n * Options with custom content are defined by using the OptionCustom component\n * The OptionCustom component comes with no predefined layout and it expects consumers to define it.\n *\n * ### Keyboard Handling\n * The `ui5-select` provides advanced keyboard handling.\n *\n * - [F4] / [Alt] + [Up] / [Alt] + [Down] / [Space] or [Enter] - Opens/closes the drop-down.\n * - [Up] or [Down] - If the drop-down is closed - changes selection to the next or the previous option. If the drop-down is opened - moves focus to the next or the previous option.\n * - [Space], [Enter] - If the drop-down is opened - selects the focused option.\n * - [Escape] - Closes the drop-down without changing the selection.\n * - [Home] - Navigates to first option\n * - [End] - Navigates to the last option\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Select\";`\n *\n * `import \"@ui5/webcomponents/dist/Option\";`\n * `import \"@ui5/webcomponents/dist/OptionCustom\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart popover - Used to style the popover element\n * @since 0.8.0\n */\n@customElement({\n\ttag: \"ui5-select\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: SelectTemplate,\n\tstyles: [\n\t\tselectCss,\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t\tSelectPopoverCss,\n\t],\n\tdependencies: [\n\t\tLabel,\n\t\tResponsivePopover,\n\t\tPopover,\n\t\tList,\n\t\tIcon,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the selected option changes.\n * @allowPreventDefault\n * @param {IOption} selectedOption the selected option.\n * @public\n */\n@event<SelectChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n/**\n * Fired when the user navigates through the options, but the selection is not finalized,\n * or when pressing the ESC key to revert the current selection.\n * @param {IOption} selectedOption the selected option.\n * @public\n * @since 1.17.0\n */\n@event<SelectLiveChangeEventDetail>(\"live-change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n/**\n * Fired after the component's dropdown menu opens.\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n * @public\n */\n@event(\"close\")\nclass Select extends UI5Element implements IFormInputElement {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Defines whether the component is in disabled state.\n\t *\n\t * **Note:** A disabled component is noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = 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 * @since 1.21.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @since 1.0.0-rc.9\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_iconPressed = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\topened = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_listWidth = 0;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t_selectedIndexBeforeOpen = -1;\n\t_escapePressed = false;\n\t_lastSelectedOption: IOption | null = null;;\n\t_typedChars = \"\";\n\t_typingTimeoutID?: Timeout | number;\n\tresponsivePopover!: ResponsivePopover;\n\tvalueStatePopover?: Popover;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * **Note:** Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * **Note:** Use the `ui5-option` component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<IOption>;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t *\n\t * **Note:** If the component has `suggestionItems`,\n\t * the `valueStateMessage` would be displayed as part of the same popover, if used on desktop, or dialog - on phone.\n\t * @public\n\t*/\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the HTML element that will be displayed in the component input part,\n\t * representing the selected option.\n\t *\n\t * **Note:** If not specified and `ui5-option-custom` is used,\n\t * either the option's `display-text` or its textContent will be displayed.\n\t *\n\t * **Note:** If not specified and `ui5-option` is used,\n\t * the option's textContent will be displayed.\n\t * @public\n\t * @since 1.17.0\n\t*/\n\t@slot()\n\tlabel!: Array<HTMLElement>;\n\n\tget formValidityMessage() {\n\t\treturn Select.i18nBundle.getText(FORM_SELECTABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\tconst selectedOption = this.selectedOption;\n\n\t\treturn { valueMissing: this.required && (selectedOption && selectedOption.getAttribute(\"value\") === \"\") };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\tconst selectedOption = this.selectedOption;\n\n\t\tif (selectedOption) {\n\t\t\treturn selectedOption.hasAttribute(\"value\") ? selectedOption.value! : selectedOption.textContent;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._ensureSingleSelection();\n\n\t\tthis.style.setProperty(getScopedVarName(\"--_ui5-input-icons-count\"), `${this.iconsCount}`);\n\t}\n\n\tonAfterRendering() {\n\t\tthis.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);\n\n\t\tif (this._isPickerOpen) {\n\t\t\tif (!this._listWidth) {\n\t\t\t\tthis._listWidth = this.responsivePopover.offsetWidth;\n\t\t\t}\n\t\t}\n\t}\n\n\t_ensureSingleSelection() {\n\t\t// if no item is selected => select the first one\n\t\t// if multiple items are selected => select the last selected one\n\t\tlet selectedIndex = this.options.findLastIndex(option => option.selected);\n\t\tselectedIndex = selectedIndex === -1 ? 0 : selectedIndex;\n\t\tfor (let i = 0; i < this.options.length; i++) {\n\t\t\tthis.options[i].selected = selectedIndex === i;\n\t\t\tif (selectedIndex === i) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\tget _isPickerOpen() {\n\t\treturn !!this.responsivePopover && this.responsivePopover.open;\n\t}\n\n\t_respPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t/**\n\t * Defines the value of the component:\n\t *\n\t * - when get - returns the value of the component, e.g. the `value` property of the selected option or its text content.\n\t *\n\t * - when set - selects the option with matching `value` property or text content.\n\t *\n\t * **Note:** If the given value does not match any existing option,\n\t * the first option will get selected.\n\t * @public\n\t * @default \"\"\n\t * @since 1.20.0\n\t * @formProperty\n\t * @formEvents change liveChange\n\t */\n\t@property()\n\tset value(newValue: string) {\n\t\tconst options = Array.from(this.children) as Array<IOption>;\n\n\t\toptions.forEach(option => {\n\t\t\toption.selected = !!((option.getAttribute(\"value\") || option.textContent) === newValue);\n\t\t});\n\t}\n\n\tget value(): string {\n\t\treturn this.selectedOption?.value || this.selectedOption?.textContent || \"\";\n\t}\n\n\tget _selectedIndex() {\n\t\treturn this.options.findIndex(option => option.selected);\n\t}\n\n\t/**\n\t * Currently selected `ui5-option` element.\n\t * @public\n\t * @default undefined\n\t */\n\tget selectedOption(): IOption | undefined {\n\t\treturn this.options.find(option => option.selected);\n\t}\n\n\tget text() {\n\t\treturn this.selectedOption?.effectiveDisplayText;\n\t}\n\n\t_toggleRespPopover() {\n\t\tif (this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._iconPressed = true;\n\n\t\tthis.responsivePopover = this._respPopover();\n\t\tif (this._isPickerOpen) {\n\t\t\tthis.responsivePopover.open = false;\n\t\t} else {\n\t\t\tthis.responsivePopover.opener = this;\n\t\t\tthis.responsivePopover.open = true;\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst isTab = (isTabNext(e) || isTabPrevious(e));\n\n\t\tif (isTab && this._isPickerOpen) {\n\t\t\tthis.responsivePopover.open = false;\n\t\t} else if (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggleRespPopover();\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isEscape(e) && this._isPickerOpen) {\n\t\t\tthis._escapePressed = true;\n\t\t} else if (isHome(e)) {\n\t\t\tthis._handleHomeKey(e);\n\t\t} else if (isEnd(e)) {\n\t\t\tthis._handleEndKey(e);\n\t\t} else if (isEnter(e)) {\n\t\t\tthis._handleSelectionChange();\n\t\t} else if (isUp(e) || isDown(e)) {\n\t\t\tthis._handleArrowNavigation(e);\n\t\t}\n\t}\n\n\t_handleKeyboardNavigation(e: KeyboardEvent) {\n\t\tif (isEnter(e) || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst typedCharacter = e.key.toLowerCase();\n\n\t\tthis._typedChars += typedCharacter;\n\n\t\t// We check if we have more than one characters and they are all duplicate, we set the\n\t\t// text to be the last input character (typedCharacter). If not, we set the text to be\n\t\t// the whole input string.\n\n\t\tconst text = (/^(.)\\1+$/i).test(this._typedChars) ? typedCharacter : this._typedChars;\n\n\t\tclearTimeout(this._typingTimeoutID);\n\n\t\tthis._typingTimeoutID = setTimeout(() => {\n\t\t\tthis._typedChars = \"\";\n\t\t\tthis._typingTimeoutID = -1;\n\t\t}, 1000);\n\n\t\tthis._selectTypedItem(text);\n\t}\n\n\t_selectTypedItem(text: string) {\n\t\tconst currentIndex = this._selectedIndex;\n\t\tconst itemToSelect = this._searchNextItemByText(text);\n\n\t\tif (itemToSelect) {\n\t\t\tconst nextIndex = this.options.indexOf(itemToSelect);\n\n\t\t\tthis._changeSelectedItem(this._selectedIndex, nextIndex);\n\n\t\t\tif (currentIndex !== this._selectedIndex) {\n\t\t\t\tthis.itemSelectionAnnounce();\n\t\t\t\tthis._scrollSelectedItem();\n\t\t\t}\n\t\t}\n\t}\n\n\t_searchNextItemByText(text: string) {\n\t\tlet orderedOptions = this.options.slice(0);\n\t\tconst optionsAfterSelected = orderedOptions.splice(this._selectedIndex + 1, orderedOptions.length - this._selectedIndex);\n\t\tconst optionsBeforeSelected = orderedOptions.splice(0, orderedOptions.length - 1);\n\n\t\torderedOptions = optionsAfterSelected.concat(optionsBeforeSelected);\n\n\t\treturn orderedOptions.find(option => option.effectiveDisplayText.toLowerCase().startsWith(text));\n\t}\n\n\t_handleHomeKey(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._changeSelectedItem(this._selectedIndex, 0);\n\t}\n\n\t_handleEndKey(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastIndex = this.options.length - 1;\n\t\tthis._changeSelectedItem(this._selectedIndex, lastIndex);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tif (this._isPickerOpen) {\n\t\t\t\tthis._handleSelectionChange();\n\t\t\t} else {\n\t\t\t\tthis._toggleRespPopover();\n\t\t\t}\n\t\t}\n\t}\n\n\t_getItemIndex(item: IOption) {\n\t\treturn this.options.indexOf(item);\n\t}\n\n\t_select(index: number) {\n\t\tconst selectedIndex = this._selectedIndex;\n\t\tif (index < 0 || index >= this.options.length || this.options.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.options[selectedIndex]) {\n\t\t\tthis.options[selectedIndex].selected = false;\n\t\t}\n\n\t\tif (selectedIndex !== index) {\n\t\t\tthis.fireEvent<SelectLiveChangeEventDetail>(\"live-change\", { selectedOption: this.options[index] });\n\t\t}\n\n\t\tthis.options[index].selected = true;\n\t}\n\n\t/**\n\t * The user clicked on an item from the list\n\t * @private\n\t */\n\t_handleItemPress(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst listItem = e.detail.item;\n\t\tconst selectedItemIndex = this._getItemIndex(listItem as IOption);\n\n\t\tthis._handleSelectionChange(selectedItemIndex);\n\t}\n\n\t_itemMousedown(e: MouseEvent) {\n\t\t// prevent actual focus of items\n\t\te.preventDefault();\n\t}\n\n\t_onclick() {\n\t\tthis.getFocusDomRef()!.focus();\n\t\tthis._toggleRespPopover();\n\t}\n\n\t/**\n\t * The user selected an item with Enter or Space\n\t * @private\n\t */\n\t_handleSelectionChange(index = this._selectedIndex) {\n\t\tthis._select(index);\n\n\t\tthis._toggleRespPopover();\n\t}\n\n\t_scrollSelectedItem() {\n\t\tif (this._isPickerOpen) {\n\t\t\tconst itemRef = this._currentlySelectedOption?.getDomRef();\n\t\t\tif (itemRef) {\n\t\t\t\titemRef.scrollIntoView({\n\t\t\t\t\tbehavior: \"auto\",\n\t\t\t\t\tblock: \"nearest\",\n\t\t\t\t\tinline: \"nearest\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleArrowNavigation(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet nextIndex = -1;\n\t\tconst currentIndex = this._selectedIndex;\n\t\tconst isDownKey = isDown(e);\n\n\t\tif (isDownKey) {\n\t\t\tnextIndex = this._getNextOptionIndex();\n\t\t} else {\n\t\t\tnextIndex = this._getPreviousOptionIndex();\n\t\t}\n\n\t\tthis._changeSelectedItem(this._selectedIndex, nextIndex);\n\n\t\tif (currentIndex !== this._selectedIndex) {\n\t\t\t// Announce new item even if picker is opened.\n\t\t\t// The aria-activedescendents attribute can't be used,\n\t\t\t// because listitem elements are in different shadow dom\n\t\t\tthis.itemSelectionAnnounce();\n\t\t\tthis._scrollSelectedItem();\n\t\t}\n\t}\n\n\t_changeSelectedItem(oldIndex: number, newIndex: number) {\n\t\tconst options: Array<IOption> = this.options;\n\n\t\tconst previousOption = options[oldIndex];\n\t\tconst nextOption = options[newIndex];\n\n\t\tif (previousOption === nextOption) {\n\t\t\treturn;\n\t\t}\n\n\t\tpreviousOption.selected = false;\n\t\tpreviousOption.focused = false;\n\n\t\tnextOption.selected = true;\n\t\tnextOption.focused = true;\n\n\t\tthis.fireEvent<SelectLiveChangeEventDetail>(\"live-change\", { selectedOption: nextOption });\n\n\t\tif (!this._isPickerOpen) {\n\t\t\t// arrow pressed on closed picker - do selection change\n\t\t\tthis._fireChangeEvent(nextOption);\n\t\t}\n\t}\n\n\t_getNextOptionIndex() {\n\t\treturn this._selectedIndex === (this.options.length - 1) ? this._selectedIndex : (this._selectedIndex + 1);\n\t}\n\n\t_getPreviousOptionIndex() {\n\t\treturn this._selectedIndex === 0 ? this._selectedIndex : (this._selectedIndex - 1);\n\t}\n\n\t_beforeOpen() {\n\t\tthis._selectedIndexBeforeOpen = this._selectedIndex;\n\t\tthis._lastSelectedOption = this.options[this._selectedIndex];\n\t}\n\n\t_afterOpen() {\n\t\tthis.opened = true;\n\t\tthis.fireEvent<CustomEvent>(\"open\");\n\t\tthis.itemSelectionAnnounce();\n\t\tthis._scrollSelectedItem();\n\t\tthis._applyFocusToSelectedItem();\n\t}\n\n\t_applyFocusToSelectedItem() {\n\t\tthis.options.forEach(option => {\n\t\t\toption.focused = option.selected;\n\t\t});\n\t}\n\n\t_afterClose() {\n\t\tthis.opened = false;\n\t\tthis._iconPressed = false;\n\t\tthis._listWidth = 0;\n\n\t\tif (this._escapePressed) {\n\t\t\tthis._select(this._selectedIndexBeforeOpen);\n\t\t\tthis._escapePressed = false;\n\t\t} else if (this._lastSelectedOption !== this.options[this._selectedIndex]) {\n\t\t\tthis._fireChangeEvent(this.options[this._selectedIndex]);\n\t\t\tthis._lastSelectedOption = this.options[this._selectedIndex];\n\t\t}\n\t\tthis.fireEvent<CustomEvent>(\"close\");\n\t}\n\n\tget hasCustomLabel() {\n\t\treturn !!this.label.length;\n\t}\n\n\t_fireChangeEvent(selectedOption: IOption) {\n\t\tconst changePrevented = !this.fireEvent<SelectChangeEventDetail>(\"change\", { selectedOption }, true);\n\n\t\t// Angular two way data binding\n\t\tthis.fireEvent(\"selected-item-changed\");\n\n\t\tif (changePrevented) {\n\t\t\tthis._select(this._selectedIndexBeforeOpen);\n\t\t}\n\t}\n\n\tget valueStateTextMappings() {\n\t\treturn {\n\t\t\t[ValueState.Positive]: Select.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Information]: Select.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t[ValueState.Negative]: Select.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: Select.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t[ValueState.Positive]: Select.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t[ValueState.Information]: Select.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t[ValueState.Negative]: Select.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t[ValueState.Critical]: Select.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateText() {\n\t\tlet valueStateText;\n\n\t\tif (this.shouldDisplayDefaultValueStateMessage) {\n\t\t\tvalueStateText = this.valueStateDefaultText;\n\t\t} else {\n\t\t\tvalueStateText = this.valueStateMessageText.map(el => el.textContent).join(\" \");\n\t\t}\n\n\t\treturn `${this.valueStateTypeText} ${valueStateText}`;\n\t}\n\n\tget valueStateDefaultText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTextMappings[this.valueState] : \"\";\n\t}\n\n\tget valueStateTypeText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : \"\";\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateTextId() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : undefined;\n\t}\n\n\tget isDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn Select.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget _currentlySelectedOption() {\n\t\treturn this.options[this._selectedIndex];\n\t}\n\n\tget _effectiveTabIndex() {\n\t\treturn this.disabled\n\t\t|| (this.responsivePopover // Handles focus on Tab/Shift + Tab when the popover is opened\n\t\t&& this.responsivePopover.open) ? \"-1\" : \"0\";\n\t}\n\n\t /**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tNegative: \"error\",\n\t\t\tCritical: \"alert\",\n\t\t\tPositive: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget iconsCount(): number {\n\t\treturn this.selectedOptionIcon ? 2 : 1;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Positive,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t\tpopover: {\n\t\t\t\t\"ui5-select-popover-valuestate\": this.hasValueState,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopoverHeader: {\n\t\t\t\t\"max-width\": `${this.offsetWidth}px`,\n\t\t\t},\n\t\t\tresponsivePopoverHeader: {\n\t\t\t\t\"display\": this.options.length && this._listWidth === 0 ? \"none\" : \"inline-block\",\n\t\t\t\t\"width\": `${this.options.length ? this._listWidth : this.offsetWidth}px`,\n\t\t\t},\n\t\t\tresponsivePopover: {\n\t\t\t\t\"min-width\": `${this.offsetWidth}px`,\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage() {\n\t\treturn !this.valueStateMessageText.length && this.hasValueStateText;\n\t}\n\n\tget hasValueStateText() {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget shouldOpenValueStateMessagePopover() {\n\t\treturn this.focused && this.hasValueStateText && !this._iconPressed\n\t\t\t&& !this._isPickerOpen && !this._isPhone;\n\t}\n\n\tget _ariaRoleDescription() {\n\t\treturn Select.i18nBundle.getText(SELECT_ROLE_DESCRIPTION);\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\titemSelectionAnnounce() {\n\t\tlet text;\n\t\tconst optionsCount = this.options.length;\n\t\tconst itemPositionText = Select.i18nBundle.getText(LIST_ITEM_POSITION, this._selectedIndex + 1, optionsCount);\n\n\t\tif (this.focused && this._currentlySelectedOption) {\n\t\t\ttext = `${this._currentlySelectedOption.textContent as string} ${this._isPickerOpen ? itemPositionText : \"\"}`;\n\n\t\t\tannounce(text, InvisibleMessageMode.Polite);\n\t\t}\n\t}\n\n\topenValueStatePopover() {\n\t\tthis.valueStatePopover = this._getPopover() as Popover;\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.opener = this;\n\t\t\tthis.valueStatePopover.open = true;\n\t\t}\n\t}\n\n\tcloseValueStatePopover() {\n\t\tthis.valueStatePopover && (this.valueStatePopover.open = false);\n\t}\n\n\ttoggleValueStatePopover(open: boolean) {\n\t\tif (open) {\n\t\t\tthis.openValueStatePopover();\n\t\t} else {\n\t\t\tthis.closeValueStatePopover();\n\t\t}\n\t}\n\n\tget selectedOptionIcon() {\n\t\treturn this.selectedOption && this.selectedOption.icon;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\");\n\t}\n\n\tstatic async onDefine() {\n\t\tSelect.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nSelect.define();\n\nexport default Select;\nexport type {\n\tIOption,\n\tSelectChangeEventDetail,\n\tSelectLiveChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Select.js","sourceRoot":"","sources":["../src/Select.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport {\n\tisSpace,\n\tisUp,\n\tisDown,\n\tisEnter,\n\tisEscape,\n\tisHome,\n\tisEnd,\n\tisShow,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport announce from \"@ui5/webcomponents-base/dist/util/InvisibleMessage.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport type { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport InvisibleMessageMode from \"@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport List from \"./List.js\";\nimport type { ListItemClickEventDetail } from \"./List.js\";\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tINPUT_SUGGESTIONS_TITLE,\n\tLIST_ITEM_POSITION,\n\tSELECT_ROLE_DESCRIPTION,\n\tFORM_SELECTABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Label from \"./Label.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport type ListItemBase from \"./ListItemBase.js\";\n\n// Templates\nimport SelectTemplate from \"./generated/templates/SelectTemplate.lit.js\";\n\n// Styles\nimport selectCss from \"./generated/themes/Select.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\nimport SelectPopoverCss from \"./generated/themes/SelectPopover.css.js\";\n\n/**\n * Interface for components that may be slotted inside `ui5-select` as options\n * @public\n */\ntype IOption = ListItemBase & {\n\ttooltip?: string,\n\ticon?: string,\n\tvalue?: string,\n\tadditionalText?: string,\n\tfocused?: boolean,\n\teffectiveDisplayText: string,\n};\n\ntype SelectChangeEventDetail = {\n\tselectedOption: IOption,\n}\ntype SelectLiveChangeEventDetail = {\n\tselectedOption: IOption,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-select` component is used to create a drop-down list.\n *\n * ### Usage\n *\n * There are two main usages of the `ui5-select>`.\n *\n * 1. With Option (`ui5-option`) web component:\n *\n * The available options of the Select are defined by using the Option component.\n * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.\n *\n * 2. With OptionCustom (`ui5-option-custom`) web component.\n *\n * Options with custom content are defined by using the OptionCustom component\n * The OptionCustom component comes with no predefined layout and it expects consumers to define it.\n *\n * ### Keyboard Handling\n * The `ui5-select` provides advanced keyboard handling.\n *\n * - [F4] / [Alt] + [Up] / [Alt] + [Down] / [Space] or [Enter] - Opens/closes the drop-down.\n * - [Up] or [Down] - If the drop-down is closed - changes selection to the next or the previous option. If the drop-down is opened - moves focus to the next or the previous option.\n * - [Space], [Enter] - If the drop-down is opened - selects the focused option.\n * - [Escape] - Closes the drop-down without changing the selection.\n * - [Home] - Navigates to first option\n * - [End] - Navigates to the last option\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Select\";`\n *\n * `import \"@ui5/webcomponents/dist/Option\";`\n * `import \"@ui5/webcomponents/dist/OptionCustom\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart popover - Used to style the popover element\n * @since 0.8.0\n */\n@customElement({\n\ttag: \"ui5-select\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: SelectTemplate,\n\tstyles: [\n\t\tselectCss,\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t\tSelectPopoverCss,\n\t],\n\tdependencies: [\n\t\tLabel,\n\t\tResponsivePopover,\n\t\tPopover,\n\t\tList,\n\t\tIcon,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the selected option changes.\n * @allowPreventDefault\n * @param {IOption} selectedOption the selected option.\n * @public\n */\n@event<SelectChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n/**\n * Fired when the user navigates through the options, but the selection is not finalized,\n * or when pressing the ESC key to revert the current selection.\n * @param {IOption} selectedOption the selected option.\n * @public\n * @since 1.17.0\n */\n@event<SelectLiveChangeEventDetail>(\"live-change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n/**\n * Fired after the component's dropdown menu opens.\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n * @public\n */\n@event(\"close\")\nclass Select extends UI5Element implements IFormInputElement {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Defines whether the component is in disabled state.\n\t *\n\t * **Note:** A disabled component is noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 1.0.0-rc.9\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = 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 * @since 1.21.0\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @since 1.0.0-rc.9\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_iconPressed = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\topened = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_listWidth = 0;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t_selectedIndexBeforeOpen = -1;\n\t_escapePressed = false;\n\t_lastSelectedOption: IOption | null = null;;\n\t_typedChars = \"\";\n\t_typingTimeoutID?: Timeout | number;\n\tresponsivePopover!: ResponsivePopover;\n\tvalueStatePopover?: Popover;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * **Note:** Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * **Note:** Use the `ui5-option` component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<IOption>;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the component is in `Information`, `Critical` or `Negative` value state.\n\t *\n\t * **Note:** If the component has `suggestionItems`,\n\t * the `valueStateMessage` would be displayed as part of the same popover, if used on desktop, or dialog - on phone.\n\t * @public\n\t*/\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the HTML element that will be displayed in the component input part,\n\t * representing the selected option.\n\t *\n\t * **Note:** If not specified and `ui5-option-custom` is used,\n\t * either the option's `display-text` or its textContent will be displayed.\n\t *\n\t * **Note:** If not specified and `ui5-option` is used,\n\t * the option's textContent will be displayed.\n\t * @public\n\t * @since 1.17.0\n\t*/\n\t@slot()\n\tlabel!: Array<HTMLElement>;\n\n\tget formValidityMessage() {\n\t\treturn Select.i18nBundle.getText(FORM_SELECTABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\tconst selectedOption = this.selectedOption;\n\n\t\treturn { valueMissing: this.required && (selectedOption && selectedOption.getAttribute(\"value\") === \"\") };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\tconst selectedOption = this.selectedOption;\n\n\t\tif (selectedOption) {\n\t\t\treturn selectedOption.hasAttribute(\"value\") ? selectedOption.value! : selectedOption.textContent;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._ensureSingleSelection();\n\n\t\tthis.style.setProperty(getScopedVarName(\"--_ui5-input-icons-count\"), `${this.iconsCount}`);\n\t}\n\n\tonAfterRendering() {\n\t\tthis.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);\n\n\t\tif (this._isPickerOpen) {\n\t\t\tif (!this._listWidth) {\n\t\t\t\tthis._listWidth = this.responsivePopover.offsetWidth;\n\t\t\t}\n\t\t}\n\t}\n\n\t_ensureSingleSelection() {\n\t\t// if no item is selected => select the first one\n\t\t// if multiple items are selected => select the last selected one\n\t\tlet selectedIndex = this.options.findLastIndex(option => option.selected);\n\t\tselectedIndex = selectedIndex === -1 ? 0 : selectedIndex;\n\t\tfor (let i = 0; i < this.options.length; i++) {\n\t\t\tthis.options[i].selected = selectedIndex === i;\n\t\t\tif (selectedIndex === i) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\tget _isPickerOpen() {\n\t\treturn !!this.responsivePopover && this.responsivePopover.open;\n\t}\n\n\t_respPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t/**\n\t * Defines the value of the component:\n\t *\n\t * - when get - returns the value of the component, e.g. the `value` property of the selected option or its text content.\n\t *\n\t * - when set - selects the option with matching `value` property or text content.\n\t *\n\t * **Note:** If the given value does not match any existing option,\n\t * the first option will get selected.\n\t * @public\n\t * @default \"\"\n\t * @since 1.20.0\n\t * @formProperty\n\t * @formEvents change liveChange\n\t */\n\t@property({ noAttribute: true })\n\tset value(newValue: string) {\n\t\tconst options = Array.from(this.children) as Array<IOption>;\n\n\t\toptions.forEach(option => {\n\t\t\toption.selected = !!((option.getAttribute(\"value\") || option.textContent) === newValue);\n\t\t});\n\t}\n\n\tget value(): string {\n\t\treturn this.selectedOption?.value || this.selectedOption?.textContent || \"\";\n\t}\n\n\tget _selectedIndex() {\n\t\treturn this.options.findIndex(option => option.selected);\n\t}\n\n\t/**\n\t * Currently selected `ui5-option` element.\n\t * @public\n\t * @default undefined\n\t */\n\tget selectedOption(): IOption | undefined {\n\t\treturn this.options.find(option => option.selected);\n\t}\n\n\tget text() {\n\t\treturn this.selectedOption?.effectiveDisplayText;\n\t}\n\n\t_toggleRespPopover() {\n\t\tif (this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._iconPressed = true;\n\n\t\tthis.responsivePopover = this._respPopover();\n\t\tif (this._isPickerOpen) {\n\t\t\tthis.responsivePopover.open = false;\n\t\t} else {\n\t\t\tthis.responsivePopover.opener = this;\n\t\t\tthis.responsivePopover.open = true;\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst isTab = (isTabNext(e) || isTabPrevious(e));\n\n\t\tif (isTab && this._isPickerOpen) {\n\t\t\tthis.responsivePopover.open = false;\n\t\t} else if (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggleRespPopover();\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isEscape(e) && this._isPickerOpen) {\n\t\t\tthis._escapePressed = true;\n\t\t} else if (isHome(e)) {\n\t\t\tthis._handleHomeKey(e);\n\t\t} else if (isEnd(e)) {\n\t\t\tthis._handleEndKey(e);\n\t\t} else if (isEnter(e)) {\n\t\t\tthis._handleSelectionChange();\n\t\t} else if (isUp(e) || isDown(e)) {\n\t\t\tthis._handleArrowNavigation(e);\n\t\t}\n\t}\n\n\t_handleKeyboardNavigation(e: KeyboardEvent) {\n\t\tif (isEnter(e) || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst typedCharacter = e.key.toLowerCase();\n\n\t\tthis._typedChars += typedCharacter;\n\n\t\t// We check if we have more than one characters and they are all duplicate, we set the\n\t\t// text to be the last input character (typedCharacter). If not, we set the text to be\n\t\t// the whole input string.\n\n\t\tconst text = (/^(.)\\1+$/i).test(this._typedChars) ? typedCharacter : this._typedChars;\n\n\t\tclearTimeout(this._typingTimeoutID);\n\n\t\tthis._typingTimeoutID = setTimeout(() => {\n\t\t\tthis._typedChars = \"\";\n\t\t\tthis._typingTimeoutID = -1;\n\t\t}, 1000);\n\n\t\tthis._selectTypedItem(text);\n\t}\n\n\t_selectTypedItem(text: string) {\n\t\tconst currentIndex = this._selectedIndex;\n\t\tconst itemToSelect = this._searchNextItemByText(text);\n\n\t\tif (itemToSelect) {\n\t\t\tconst nextIndex = this.options.indexOf(itemToSelect);\n\n\t\t\tthis._changeSelectedItem(this._selectedIndex, nextIndex);\n\n\t\t\tif (currentIndex !== this._selectedIndex) {\n\t\t\t\tthis.itemSelectionAnnounce();\n\t\t\t\tthis._scrollSelectedItem();\n\t\t\t}\n\t\t}\n\t}\n\n\t_searchNextItemByText(text: string) {\n\t\tlet orderedOptions = this.options.slice(0);\n\t\tconst optionsAfterSelected = orderedOptions.splice(this._selectedIndex + 1, orderedOptions.length - this._selectedIndex);\n\t\tconst optionsBeforeSelected = orderedOptions.splice(0, orderedOptions.length - 1);\n\n\t\torderedOptions = optionsAfterSelected.concat(optionsBeforeSelected);\n\n\t\treturn orderedOptions.find(option => option.effectiveDisplayText.toLowerCase().startsWith(text));\n\t}\n\n\t_handleHomeKey(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._changeSelectedItem(this._selectedIndex, 0);\n\t}\n\n\t_handleEndKey(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastIndex = this.options.length - 1;\n\t\tthis._changeSelectedItem(this._selectedIndex, lastIndex);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tif (this._isPickerOpen) {\n\t\t\t\tthis._handleSelectionChange();\n\t\t\t} else {\n\t\t\t\tthis._toggleRespPopover();\n\t\t\t}\n\t\t}\n\t}\n\n\t_getItemIndex(item: IOption) {\n\t\treturn this.options.indexOf(item);\n\t}\n\n\t_select(index: number) {\n\t\tconst selectedIndex = this._selectedIndex;\n\t\tif (index < 0 || index >= this.options.length || this.options.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.options[selectedIndex]) {\n\t\t\tthis.options[selectedIndex].selected = false;\n\t\t}\n\n\t\tif (selectedIndex !== index) {\n\t\t\tthis.fireEvent<SelectLiveChangeEventDetail>(\"live-change\", { selectedOption: this.options[index] });\n\t\t}\n\n\t\tthis.options[index].selected = true;\n\t}\n\n\t/**\n\t * The user clicked on an item from the list\n\t * @private\n\t */\n\t_handleItemPress(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst listItem = e.detail.item;\n\t\tconst selectedItemIndex = this._getItemIndex(listItem as IOption);\n\n\t\tthis._handleSelectionChange(selectedItemIndex);\n\t}\n\n\t_itemMousedown(e: MouseEvent) {\n\t\t// prevent actual focus of items\n\t\te.preventDefault();\n\t}\n\n\t_onclick() {\n\t\tthis.getFocusDomRef()!.focus();\n\t\tthis._toggleRespPopover();\n\t}\n\n\t/**\n\t * The user selected an item with Enter or Space\n\t * @private\n\t */\n\t_handleSelectionChange(index = this._selectedIndex) {\n\t\tthis._select(index);\n\n\t\tthis._toggleRespPopover();\n\t}\n\n\t_scrollSelectedItem() {\n\t\tif (this._isPickerOpen) {\n\t\t\tconst itemRef = this._currentlySelectedOption?.getDomRef();\n\t\t\tif (itemRef) {\n\t\t\t\titemRef.scrollIntoView({\n\t\t\t\t\tbehavior: \"auto\",\n\t\t\t\t\tblock: \"nearest\",\n\t\t\t\t\tinline: \"nearest\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleArrowNavigation(e: KeyboardEvent) {\n\t\te.preventDefault();\n\n\t\tif (this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet nextIndex = -1;\n\t\tconst currentIndex = this._selectedIndex;\n\t\tconst isDownKey = isDown(e);\n\n\t\tif (isDownKey) {\n\t\t\tnextIndex = this._getNextOptionIndex();\n\t\t} else {\n\t\t\tnextIndex = this._getPreviousOptionIndex();\n\t\t}\n\n\t\tthis._changeSelectedItem(this._selectedIndex, nextIndex);\n\n\t\tif (currentIndex !== this._selectedIndex) {\n\t\t\t// Announce new item even if picker is opened.\n\t\t\t// The aria-activedescendents attribute can't be used,\n\t\t\t// because listitem elements are in different shadow dom\n\t\t\tthis.itemSelectionAnnounce();\n\t\t\tthis._scrollSelectedItem();\n\t\t}\n\t}\n\n\t_changeSelectedItem(oldIndex: number, newIndex: number) {\n\t\tconst options: Array<IOption> = this.options;\n\n\t\tconst previousOption = options[oldIndex];\n\t\tconst nextOption = options[newIndex];\n\n\t\tif (previousOption === nextOption) {\n\t\t\treturn;\n\t\t}\n\n\t\tpreviousOption.selected = false;\n\t\tpreviousOption.focused = false;\n\n\t\tnextOption.selected = true;\n\t\tnextOption.focused = true;\n\n\t\tthis.fireEvent<SelectLiveChangeEventDetail>(\"live-change\", { selectedOption: nextOption });\n\n\t\tif (!this._isPickerOpen) {\n\t\t\t// arrow pressed on closed picker - do selection change\n\t\t\tthis._fireChangeEvent(nextOption);\n\t\t}\n\t}\n\n\t_getNextOptionIndex() {\n\t\treturn this._selectedIndex === (this.options.length - 1) ? this._selectedIndex : (this._selectedIndex + 1);\n\t}\n\n\t_getPreviousOptionIndex() {\n\t\treturn this._selectedIndex === 0 ? this._selectedIndex : (this._selectedIndex - 1);\n\t}\n\n\t_beforeOpen() {\n\t\tthis._selectedIndexBeforeOpen = this._selectedIndex;\n\t\tthis._lastSelectedOption = this.options[this._selectedIndex];\n\t}\n\n\t_afterOpen() {\n\t\tthis.opened = true;\n\t\tthis.fireEvent<CustomEvent>(\"open\");\n\t\tthis.itemSelectionAnnounce();\n\t\tthis._scrollSelectedItem();\n\t\tthis._applyFocusToSelectedItem();\n\t}\n\n\t_applyFocusToSelectedItem() {\n\t\tthis.options.forEach(option => {\n\t\t\toption.focused = option.selected;\n\t\t});\n\t}\n\n\t_afterClose() {\n\t\tthis.opened = false;\n\t\tthis._iconPressed = false;\n\t\tthis._listWidth = 0;\n\n\t\tif (this._escapePressed) {\n\t\t\tthis._select(this._selectedIndexBeforeOpen);\n\t\t\tthis._escapePressed = false;\n\t\t} else if (this._lastSelectedOption !== this.options[this._selectedIndex]) {\n\t\t\tthis._fireChangeEvent(this.options[this._selectedIndex]);\n\t\t\tthis._lastSelectedOption = this.options[this._selectedIndex];\n\t\t}\n\t\tthis.fireEvent<CustomEvent>(\"close\");\n\t}\n\n\tget hasCustomLabel() {\n\t\treturn !!this.label.length;\n\t}\n\n\t_fireChangeEvent(selectedOption: IOption) {\n\t\tconst changePrevented = !this.fireEvent<SelectChangeEventDetail>(\"change\", { selectedOption }, true);\n\n\t\t// Angular two way data binding\n\t\tthis.fireEvent(\"selected-item-changed\");\n\n\t\tif (changePrevented) {\n\t\t\tthis._select(this._selectedIndexBeforeOpen);\n\t\t}\n\t}\n\n\tget valueStateTextMappings() {\n\t\treturn {\n\t\t\t[ValueState.Positive]: Select.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t[ValueState.Information]: Select.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t[ValueState.Negative]: Select.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t[ValueState.Critical]: Select.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t[ValueState.Positive]: Select.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t[ValueState.Information]: Select.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t[ValueState.Negative]: Select.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t[ValueState.Critical]: Select.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateText() {\n\t\tlet valueStateText;\n\n\t\tif (this.shouldDisplayDefaultValueStateMessage) {\n\t\t\tvalueStateText = this.valueStateDefaultText;\n\t\t} else {\n\t\t\tvalueStateText = this.valueStateMessageText.map(el => el.textContent).join(\" \");\n\t\t}\n\n\t\treturn `${this.valueStateTypeText} ${valueStateText}`;\n\t}\n\n\tget valueStateDefaultText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTextMappings[this.valueState] : \"\";\n\t}\n\n\tget valueStateTypeText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : \"\";\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateTextId() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : undefined;\n\t}\n\n\tget isDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn Select.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget _currentlySelectedOption() {\n\t\treturn this.options[this._selectedIndex];\n\t}\n\n\tget _effectiveTabIndex() {\n\t\treturn this.disabled\n\t\t|| (this.responsivePopover // Handles focus on Tab/Shift + Tab when the popover is opened\n\t\t&& this.responsivePopover.open) ? \"-1\" : \"0\";\n\t}\n\n\t /**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tNegative: \"error\",\n\t\t\tCritical: \"alert\",\n\t\t\tPositive: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget iconsCount(): number {\n\t\treturn this.selectedOptionIcon ? 2 : 1;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Positive,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t\tpopover: {\n\t\t\t\t\"ui5-select-popover-valuestate\": this.hasValueState,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopoverHeader: {\n\t\t\t\t\"max-width\": `${this.offsetWidth}px`,\n\t\t\t},\n\t\t\tresponsivePopoverHeader: {\n\t\t\t\t\"display\": this.options.length && this._listWidth === 0 ? \"none\" : \"inline-block\",\n\t\t\t\t\"width\": `${this.options.length ? this._listWidth : this.offsetWidth}px`,\n\t\t\t},\n\t\t\tresponsivePopover: {\n\t\t\t\t\"min-width\": `${this.offsetWidth}px`,\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage() {\n\t\treturn !this.valueStateMessageText.length && this.hasValueStateText;\n\t}\n\n\tget hasValueStateText() {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Positive;\n\t}\n\n\tget shouldOpenValueStateMessagePopover() {\n\t\treturn this.focused && this.hasValueStateText && !this._iconPressed\n\t\t\t&& !this._isPickerOpen && !this._isPhone;\n\t}\n\n\tget _ariaRoleDescription() {\n\t\treturn Select.i18nBundle.getText(SELECT_ROLE_DESCRIPTION);\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\titemSelectionAnnounce() {\n\t\tlet text;\n\t\tconst optionsCount = this.options.length;\n\t\tconst itemPositionText = Select.i18nBundle.getText(LIST_ITEM_POSITION, this._selectedIndex + 1, optionsCount);\n\n\t\tif (this.focused && this._currentlySelectedOption) {\n\t\t\ttext = `${this._currentlySelectedOption.textContent as string} ${this._isPickerOpen ? itemPositionText : \"\"}`;\n\n\t\t\tannounce(text, InvisibleMessageMode.Polite);\n\t\t}\n\t}\n\n\topenValueStatePopover() {\n\t\tthis.valueStatePopover = this._getPopover() as Popover;\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.opener = this;\n\t\t\tthis.valueStatePopover.open = true;\n\t\t}\n\t}\n\n\tcloseValueStatePopover() {\n\t\tthis.valueStatePopover && (this.valueStatePopover.open = false);\n\t}\n\n\ttoggleValueStatePopover(open: boolean) {\n\t\tif (open) {\n\t\t\tthis.openValueStatePopover();\n\t\t} else {\n\t\t\tthis.closeValueStatePopover();\n\t\t}\n\t}\n\n\tget selectedOptionIcon() {\n\t\treturn this.selectedOption && this.selectedOption.icon;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\");\n\t}\n\n\tstatic async onDefine() {\n\t\tSelect.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nSelect.define();\n\nexport default Select;\nexport type {\n\tIOption,\n\tSelectChangeEventDetail,\n\tSelectLiveChangeEventDetail,\n};\n"]}
package/dist/Table.d.ts CHANGED
@@ -123,7 +123,7 @@ type TableRowClickEventDetail = {
123
123
  *
124
124
  * @constructor
125
125
  * @extends UI5Element
126
- * @since 2.0
126
+ * @since 2.0.0
127
127
  * @public
128
128
  * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.
129
129
  * Currently, it's considered experimental as its API is subject to change.
package/dist/Table.js CHANGED
@@ -98,7 +98,7 @@ import { findVerticalScrollContainer, scrollElementIntoView, isFeature } from ".
98
98
  *
99
99
  * @constructor
100
100
  * @extends UI5Element
101
- * @since 2.0
101
+ * @since 2.0.0
102
102
  * @public
103
103
  * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.
104
104
  * Currently, it's considered experimental as its API is subject to change.
package/dist/Table.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport TableTemplate from \"./generated/templates/TableTemplate.lit.js\";\nimport TableStyles from \"./generated/themes/Table.css.js\";\nimport TableRow from \"./TableRow.js\";\nimport TableHeaderRow from \"./TableHeaderRow.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport type TableSelection from \"./TableSelection.js\";\nimport TableOverflowMode from \"./types/TableOverflowMode.js\";\nimport TableNavigation from \"./TableNavigation.js\";\nimport {\n\tTABLE_NO_DATA,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport TableCell from \"./TableCell.js\";\nimport { findVerticalScrollContainer, scrollElementIntoView, isFeature } from \"./TableUtils.js\";\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>.\n *\n * @public\n * @experimental\n */\ninterface ITableFeature extends UI5Element {\n\treadonly identifier: string;\n\t/**\n\t * Called when the table is activated.\n\t * @param table table instance\n\t */\n\tonTableActivate(table: Table): void;\n\t/**\n\t * Called when the table finished rendering.\n\t */\n\tonTableRendered?(): void;\n}\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>\n * and provide growing/data loading functionality.\n * @public\n * @experimental\n */\ninterface ITableGrowing extends ITableFeature {\n\t/**\n\t * Called when the table needs to load more data.\n\t */\n\tloadMore(): void;\n\t/**\n\t * Determines whether the table has a growing control, that should be rendered in the table.\n\t */\n\thasGrowingComponent(): boolean;\n\t_individualSlot?: string;\n}\n\n/**\n * Fired when an interactive row is clicked.\n * @param {TableRow} row The clicked row instance\n * @public\n */\ntype TableRowClickEventDetail = {\n\trow: TableRow,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table` component provides a set of sophisticated features for displaying and dealing with vast amounts of data in a responsive manner.\n * To render the `ui5-table`, you need to define the columns and rows. You can use the provided `ui5-table-header-row` and `ui5-table-row` components for this purpose.\n *\n * ### Features\n *\n * The `ui5-table` can be enhanced in its functionalities by applying different features.\n * Features can be slotted into the `features` slot, to enable them in the component.\n * Features need to be imported separately, as they are not enabled by default.\n *\n * The following features are currently available:\n *\n * * [TableSelection](../TableSelection) - adds selection capabilities to the table\n * * [TableGrowing](../TableGrowing) - provides growing capabilities to load more data\n *\n * ### Keyboard Handling\n *\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * Furthermore, you can interact with `ui5-table` via the following keys:\n *\n * If the focus is on a row, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Selects the first cell of the row\n * * <kbd>Space</kbd> - Toggles the selection of the row\n * * <kbd>Ctrl/Cmd + A</kbd> - In multi selection mode, toggles the selection of all rows\n * * <kbd>Home</kbd> - Navigates to the first row, if the focus is on the first row, navigates to the header row\n * * <kbd>End</kbd> - Navigates to the last row, if the focus is on the last row, navigates to the growing button\n * * <kbd>Page Up</kbd> - Navigates one page up, if the focus is on the first row, navigates to the header row\n * * <kbd>Page Down</kbd> - Navigates one page down, if the focus is on the last row, navigates to the growing button\n * * <kbd>F2</kbd> - Focuses the first tabbable element in the row\n * * <kbd>F7</kbd> - If focus position is remembered, moves focus to the corresponding focus position row, otherwise to the first tabbable element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on a cell, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Navigates right\n * * <kbd>Left</kbd> - Navigates left, if the focus is on the first cell of the row, the focus is moved to the row.\n * * <kbd>Home</kbd> - Navigates to the first cell of the current row, if the focus is on the first cell, navigates to the corresponding row\n * * <kbd>End</kbd> - Navigates to the last cell of the current row, if the focus is on the last cell, navigates to the corresponding row\n * * <kbd>Page Up</kbd> - Navigates one page up while keeping the focus in same column\n * * <kbd>Page Down</kbd> - Navigates one page down while keeping the focus in same column\n * * <kbd>F2</kbd> - Toggles the focus between the first tabbable cell content and the cell\n * * <kbd>Enter</kbd> - Focuses the first tabbable cell content\n * * <kbd>F7</kbd> - If the focus is on an interactive element inside a row, moves focus to the corresponding row and remembers the focus position of the element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on an interactive cell content, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Move the focus to the interactive element in the same column of the previous row, unless the focused element prevents the default\n * * <kbd>Up</kbd> - Move the focus to the interactive element in the same column of the next row, unless the focused element prevents the default\n * * <kbd>[Shift]Tab</kbd> - Move the focus to the element in the tab chain\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Table.js\";`\\\n * `import \"@ui5/webcomponents/dist/TableRow.js\";` (`ui5-table-row`)\\\n * `import \"@ui5/webcomponents/dist/TableCell.js\";` (`ui5-table-cell`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";` (`ui5-table-header-row`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";` (`ui5-table-header-cell`)\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0\n * @public\n * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.\n * Currently, it's considered experimental as its API is subject to change.\n * This Table replaces the previous Table web component, that has been part of **@ui5/webcomponents** version 1.x.\n * For compatibility reasons, we moved the previous Table implementation to the **@ui5/webcomponents-compat** package\n * and will be maintained until the new Table is experimental.\n */\n@customElement({\n\ttag: \"ui5-table\",\n\trenderer: litRender,\n\tstyles: TableStyles,\n\ttemplate: TableTemplate,\n\tfastNavigation: true,\n\tdependencies: [\n\t\tBusyIndicator,\n\t\tTableHeaderRow,\n\t\tTableCell,\n\t\tTableRow,\n\t],\n})\n\n/**\n * Fired when an interactive row is clicked.\n *\n * @param {TableRow} row The row instance\n * @public\n */\n@event<TableRowClickEventDetail>(\"row-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\trow: { type: TableRow },\n\t},\n})\n\nclass Table extends UI5Element {\n\t/**\n\t * Defines the rows of the component.\n\t *\n\t * Note: Use <code>ui5-table-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"navigated\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\trows!: Array<TableRow>;\n\n\t/**\n\t * Defines the header row of the component.\n\t *\n\t * Note: Use <code>ui5-table-header-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: { properties: false, slots: true } })\n\theaderRow!: Array<TableHeaderRow>;\n\n\t/**\n\t * Defines the custom visualization if there is no data available.\n\t *\n\t * @public\n\t */\n\t@slot()\n\tnodata!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the features of the component.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tfeatures!: Array<ITableFeature>;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Identifies the element (or elements) that labels the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the text to be displayed when there are no rows in the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> overflow behavior.\n\t *\n\t * Available options are:\n\t *\n\t * <code>Scroll</code> - Columns are shown as regular columns and horizontal scrolling is enabled.\n\t *\n\t * <code>Popin</code> - Columns are shown as pop-ins instead of regular columns.\n\t *\n\t * @default \"Scroll\"\n\t * @public\n\t */\n\t@property()\n\toverflowMode: `${TableOverflowMode}` = \"Scroll\";\n\n\t/**\n\t * Defines if the loading indicator should be shown.\n\t *\n\t * <b>Note:</b> When the component is loading, it is non-interactive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tloading = false;\n\n\t/**\n * Defines the delay in milliseconds, after which the loading indicator will show up for this component.\n * @default 1000\n * @public\n */\n\t@property({ type: Number })\n\tloadingDelay = 1000;\n\n\t/**\n\t * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.\n\t */\n\t@property()\n\tstickyTop = \"0\";\n\n\t@property({ type: Number, noAttribute: true })\n\t_invalidate = 0;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTable.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_events = [\"keydown\", \"keyup\", \"click\", \"focusin\", \"focusout\"];\n\t_onEventBound: (e: Event) => void;\n\t_onResizeBound: ResizeObserverCallback;\n\t_tableNavigation?: TableNavigation;\n\t_poppedIn: Array<{col: TableHeaderCell, width: float}>;\n\t_containerWidth: number;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._poppedIn = [];\n\t\tthis._containerWidth = 0;\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._onEventBound = this._onEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.register(this, this._onResizeBound);\n\t\t}\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tthis.features.forEach(feature => feature.onTableActivate(this));\n\t\tthis._tableNavigation = new TableNavigation(this);\n\t}\n\n\tonExitDOM() {\n\t\tthis._tableNavigation = undefined;\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tconst renderNavigated = this._renderNavigated;\n\t\tthis._renderNavigated = this.rows.some(row => row.navigated);\n\t\tif (renderNavigated !== this._renderNavigated) {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\trow._renderNavigated = this._renderNavigated;\n\t\t\t});\n\t\t}\n\n\t\tthis.style.setProperty(getScopedVarName(\"--ui5_grid_sticky_top\"), this.stickyTop);\n\t\tthis._refreshPopinState();\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis.features.forEach(feature => feature.onTableRendered?.());\n\t}\n\n\t_getSelection(): TableSelection | undefined {\n\t\treturn this.features.find(feature => isFeature<TableSelection>(feature, \"TableSelection\")) as TableSelection;\n\t}\n\n\t_onEvent(e: Event) {\n\t\tconst composedPath = e.composedPath();\n\t\tconst eventOrigin = composedPath[0] as HTMLElement;\n\t\tconst elements = [this._tableNavigation, ...composedPath, ...this.features];\n\t\telements.forEach(element => {\n\t\t\tif (element instanceof TableExtension || (element instanceof HTMLElement && element.localName.includes(\"ui5-table\"))) {\n\t\t\t\tconst eventHandlerName = `_on${e.type}` as keyof typeof element;\n\t\t\t\tconst eventHandler = element[eventHandlerName] as (e?: Event, eventOrigin?: HTMLElement) => void;\n\t\t\t\tif (typeof eventHandler === \"function\") {\n\t\t\t\t\teventHandler.call(element, e, eventOrigin);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t_onResize() {\n\t\tconst { clientWidth, scrollWidth } = this._tableElement;\n\n\t\tif (scrollWidth > clientWidth) {\n\t\t\t// Overflow Handling: Move columns into the popin until overflow is resolved\n\t\t\tconst overflow = scrollWidth - clientWidth;\n\t\t\tconst headers = this._getPopinOrderedColumns(false);\n\t\t\tconst poppedInWidth = headers.reduce((totalPoppedInWidth, headerCell) => {\n\t\t\t\tif (totalPoppedInWidth < overflow && !headerCell._popin) {\n\t\t\t\t\tconst headerWidth = Math.ceil(headerCell.getBoundingClientRect().width);\n\t\t\t\t\ttotalPoppedInWidth += headerWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, true, headerWidth);\n\t\t\t\t}\n\t\t\t\treturn totalPoppedInWidth;\n\t\t\t}, 0);\n\t\t\t// Calculate container width considering popped-in columns\n\t\t\tconst columnOverflow = poppedInWidth - overflow;\n\t\t\tthis._containerWidth = clientWidth - columnOverflow;\n\t\t} else {\n\t\t\t// Underflow Handling: Restore columns from popin until container width is met\n\t\t\tconst headers = this._getPopinOrderedColumns(true).filter(it => it._popin);\n\n\t\t\theaders.every(headerCell => {\n\t\t\t\tconst underflow = clientWidth - this._containerWidth;\n\t\t\t\tif (underflow >= headerCell._popinWidth) {\n\t\t\t\t\tthis._containerWidth += headerCell._popinWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, false, 0);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\t// Handles focus in the table, when the focus is below a sticky element\n\t\tscrollElementIntoView(this._scrollContainer, e.target as HTMLElement, this._stickyElements, this.effectiveDir === \"rtl\");\n\t}\n\n\t/**\n\t * Refreshes the popin state of the columns.\n\t * Syncs the popin state of the columns with the popin state of the header cells.\n\t * This is needed when additional rows are manually added and no resize happens.\n\t * @private\n\t */\n\t_refreshPopinState() {\n\t\tthis.headerRow[0].cells.forEach((header, index) => {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\tconst cell = row.cells[index];\n\t\t\t\tif (cell && cell._popin !== header._popin) {\n\t\t\t\t\tcell._popin = header._popin;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t_onGrow() {\n\t\tthis._growing?.loadMore();\n\t}\n\n\t_getPopinOrderedColumns(reverse: boolean) {\n\t\tlet headers = [...this.headerRow[0].cells];\n\t\theaders = headers.reverse(); // reverse the \"visual\" order\n\t\theaders = headers.sort((a, b) => a.importance - b.importance); // sort by importance (asc)\n\t\theaders.pop(); // remove the most important column, as it will not be popped in\n\n\t\tif (reverse) {\n\t\t\theaders = headers.reverse();\n\t\t}\n\n\t\treturn headers;\n\t}\n\n\t_setHeaderPopinState(headerCell: TableHeaderCell, inPopin: boolean, popinWidth: number) {\n\t\tconst headerIndex = this.headerRow[0].cells.indexOf(headerCell);\n\t\theaderCell._popin = inPopin;\n\t\theaderCell._popinWidth = popinWidth;\n\t\tthis.rows.forEach(row => {\n\t\t\trow.cells[headerIndex]._popin = inPopin;\n\t\t});\n\t}\n\n\t_isFeature(feature: any) {\n\t\treturn Boolean(feature.onTableActivate && feature.onTableRendered);\n\t}\n\n\t_isGrowingFeature(feature: any) {\n\t\treturn Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));\n\t}\n\n\t_onRowPress(row: TableRow) {\n\t\tthis.fireEvent<TableRowClickEventDetail>(\"row-click\", { row });\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\ttable: {\n\t\t\t\t\"grid-template-columns\": this._gridTemplateColumns,\n\t\t\t},\n\t\t};\n\t}\n\n\tget _gridTemplateColumns() {\n\t\tconst widths = [];\n\t\tconst visibleHeaderCells = this.headerRow[0]._visibleCells as TableHeaderCell[];\n\t\tif (this._getSelection()?.hasRowSelector()) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_checkbox_width_height\")})`);\n\t\t}\n\t\twidths.push(...visibleHeaderCells.map(cell => {\n\t\t\tconst minWidth = cell.minWidth === \"auto\" ? \"3rem\" : cell.minWidth;\n\t\t\tif (cell.width === \"auto\" || cell.width.includes(\"%\") || cell.width.includes(\"fr\") || cell.width.includes(\"vw\")) {\n\t\t\t\treturn `minmax(${minWidth}, ${cell.maxWidth})`;\n\t\t\t}\n\t\t\treturn `minmax(${cell.width}, ${cell.width})`;\n\t\t}));\n\t\tif (this._renderNavigated) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_table_navigated_cell_width\")})`);\n\t\t}\n\t\treturn widths.join(\" \");\n\t}\n\n\tget _tableOverflowX() {\n\t\treturn (this.overflowMode === TableOverflowMode.Popin) ? \"clip\" : \"auto\";\n\t}\n\n\tget _tableOverflowY() {\n\t\treturn \"auto\";\n\t}\n\n\tget _nodataRow() {\n\t\treturn this.shadowRoot!.getElementById(\"nodata-row\") as TableRow;\n\t}\n\n\tget _beforeElement() {\n\t\treturn this.shadowRoot!.getElementById(\"before\") as HTMLElement;\n\t}\n\n\tget _afterElement() {\n\t\treturn this.shadowRoot!.getElementById(\"after\") as HTMLElement;\n\t}\n\n\tget _tableElement() {\n\t\treturn this.shadowRoot!.getElementById(\"table\") as HTMLElement;\n\t}\n\n\tget _loadingElement() {\n\t\treturn this.shadowRoot!.getElementById(\"loading\") as HTMLElement;\n\t}\n\n\tget _effectiveNoDataText() {\n\t\treturn this.noDataText || Table.i18nBundle.getText(TABLE_NO_DATA);\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this) || undefined;\n\t}\n\n\tget _ariaMultiSelectable() {\n\t\tconst selection = this._getSelection();\n\t\treturn (selection?.isSelectable() && this.rows.length) ? selection.isMultiSelect() : undefined;\n\t}\n\n\tget _shouldRenderGrowing() {\n\t\treturn this.rows.length && this._growing?.hasGrowingComponent();\n\t}\n\n\tget _growing() {\n\t\treturn this.features.find(feature => this._isGrowingFeature(feature)) as ITableGrowing;\n\t}\n\n\tget _stickyElements() {\n\t\tconst stickyRows = this.headerRow.filter(row => row.sticky);\n\t\tconst stickyColumns = this.headerRow[0]._stickyCells as TableHeaderCell[];\n\n\t\treturn [...stickyRows, ...stickyColumns];\n\t}\n\n\tget _scrollContainer() {\n\t\treturn findVerticalScrollContainer(this._tableElement);\n\t}\n\n\tget isTable() {\n\t\treturn true;\n\t}\n}\n\nTable.define();\n\nexport default Table;\n\nexport type {\n\tITableFeature,\n\tITableGrowing,\n\tTableRowClickEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport TableTemplate from \"./generated/templates/TableTemplate.lit.js\";\nimport TableStyles from \"./generated/themes/Table.css.js\";\nimport TableRow from \"./TableRow.js\";\nimport TableHeaderRow from \"./TableHeaderRow.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport type TableSelection from \"./TableSelection.js\";\nimport TableOverflowMode from \"./types/TableOverflowMode.js\";\nimport TableNavigation from \"./TableNavigation.js\";\nimport {\n\tTABLE_NO_DATA,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport TableCell from \"./TableCell.js\";\nimport { findVerticalScrollContainer, scrollElementIntoView, isFeature } from \"./TableUtils.js\";\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>.\n *\n * @public\n * @experimental\n */\ninterface ITableFeature extends UI5Element {\n\treadonly identifier: string;\n\t/**\n\t * Called when the table is activated.\n\t * @param table table instance\n\t */\n\tonTableActivate(table: Table): void;\n\t/**\n\t * Called when the table finished rendering.\n\t */\n\tonTableRendered?(): void;\n}\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>\n * and provide growing/data loading functionality.\n * @public\n * @experimental\n */\ninterface ITableGrowing extends ITableFeature {\n\t/**\n\t * Called when the table needs to load more data.\n\t */\n\tloadMore(): void;\n\t/**\n\t * Determines whether the table has a growing control, that should be rendered in the table.\n\t */\n\thasGrowingComponent(): boolean;\n\t_individualSlot?: string;\n}\n\n/**\n * Fired when an interactive row is clicked.\n * @param {TableRow} row The clicked row instance\n * @public\n */\ntype TableRowClickEventDetail = {\n\trow: TableRow,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table` component provides a set of sophisticated features for displaying and dealing with vast amounts of data in a responsive manner.\n * To render the `ui5-table`, you need to define the columns and rows. You can use the provided `ui5-table-header-row` and `ui5-table-row` components for this purpose.\n *\n * ### Features\n *\n * The `ui5-table` can be enhanced in its functionalities by applying different features.\n * Features can be slotted into the `features` slot, to enable them in the component.\n * Features need to be imported separately, as they are not enabled by default.\n *\n * The following features are currently available:\n *\n * * [TableSelection](../TableSelection) - adds selection capabilities to the table\n * * [TableGrowing](../TableGrowing) - provides growing capabilities to load more data\n *\n * ### Keyboard Handling\n *\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * Furthermore, you can interact with `ui5-table` via the following keys:\n *\n * If the focus is on a row, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Selects the first cell of the row\n * * <kbd>Space</kbd> - Toggles the selection of the row\n * * <kbd>Ctrl/Cmd + A</kbd> - In multi selection mode, toggles the selection of all rows\n * * <kbd>Home</kbd> - Navigates to the first row, if the focus is on the first row, navigates to the header row\n * * <kbd>End</kbd> - Navigates to the last row, if the focus is on the last row, navigates to the growing button\n * * <kbd>Page Up</kbd> - Navigates one page up, if the focus is on the first row, navigates to the header row\n * * <kbd>Page Down</kbd> - Navigates one page down, if the focus is on the last row, navigates to the growing button\n * * <kbd>F2</kbd> - Focuses the first tabbable element in the row\n * * <kbd>F7</kbd> - If focus position is remembered, moves focus to the corresponding focus position row, otherwise to the first tabbable element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on a cell, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Navigates right\n * * <kbd>Left</kbd> - Navigates left, if the focus is on the first cell of the row, the focus is moved to the row.\n * * <kbd>Home</kbd> - Navigates to the first cell of the current row, if the focus is on the first cell, navigates to the corresponding row\n * * <kbd>End</kbd> - Navigates to the last cell of the current row, if the focus is on the last cell, navigates to the corresponding row\n * * <kbd>Page Up</kbd> - Navigates one page up while keeping the focus in same column\n * * <kbd>Page Down</kbd> - Navigates one page down while keeping the focus in same column\n * * <kbd>F2</kbd> - Toggles the focus between the first tabbable cell content and the cell\n * * <kbd>Enter</kbd> - Focuses the first tabbable cell content\n * * <kbd>F7</kbd> - If the focus is on an interactive element inside a row, moves focus to the corresponding row and remembers the focus position of the element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on an interactive cell content, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Move the focus to the interactive element in the same column of the previous row, unless the focused element prevents the default\n * * <kbd>Up</kbd> - Move the focus to the interactive element in the same column of the next row, unless the focused element prevents the default\n * * <kbd>[Shift]Tab</kbd> - Move the focus to the element in the tab chain\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Table.js\";`\\\n * `import \"@ui5/webcomponents/dist/TableRow.js\";` (`ui5-table-row`)\\\n * `import \"@ui5/webcomponents/dist/TableCell.js\";` (`ui5-table-cell`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";` (`ui5-table-header-row`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";` (`ui5-table-header-cell`)\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0.0\n * @public\n * @experimental This Table web component is available since 2.0 and has been newly implemented to provide better screen reader and keyboard handling support.\n * Currently, it's considered experimental as its API is subject to change.\n * This Table replaces the previous Table web component, that has been part of **@ui5/webcomponents** version 1.x.\n * For compatibility reasons, we moved the previous Table implementation to the **@ui5/webcomponents-compat** package\n * and will be maintained until the new Table is experimental.\n */\n@customElement({\n\ttag: \"ui5-table\",\n\trenderer: litRender,\n\tstyles: TableStyles,\n\ttemplate: TableTemplate,\n\tfastNavigation: true,\n\tdependencies: [\n\t\tBusyIndicator,\n\t\tTableHeaderRow,\n\t\tTableCell,\n\t\tTableRow,\n\t],\n})\n\n/**\n * Fired when an interactive row is clicked.\n *\n * @param {TableRow} row The row instance\n * @public\n */\n@event<TableRowClickEventDetail>(\"row-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\trow: { type: TableRow },\n\t},\n})\n\nclass Table extends UI5Element {\n\t/**\n\t * Defines the rows of the component.\n\t *\n\t * Note: Use <code>ui5-table-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: [\"navigated\"],\n\t\t\tslots: false,\n\t\t},\n\t})\n\trows!: Array<TableRow>;\n\n\t/**\n\t * Defines the header row of the component.\n\t *\n\t * Note: Use <code>ui5-table-header-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: { properties: false, slots: true } })\n\theaderRow!: Array<TableHeaderRow>;\n\n\t/**\n\t * Defines the custom visualization if there is no data available.\n\t *\n\t * @public\n\t */\n\t@slot()\n\tnodata!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the features of the component.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tfeatures!: Array<ITableFeature>;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Identifies the element (or elements) that labels the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the text to be displayed when there are no rows in the component.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> overflow behavior.\n\t *\n\t * Available options are:\n\t *\n\t * <code>Scroll</code> - Columns are shown as regular columns and horizontal scrolling is enabled.\n\t *\n\t * <code>Popin</code> - Columns are shown as pop-ins instead of regular columns.\n\t *\n\t * @default \"Scroll\"\n\t * @public\n\t */\n\t@property()\n\toverflowMode: `${TableOverflowMode}` = \"Scroll\";\n\n\t/**\n\t * Defines if the loading indicator should be shown.\n\t *\n\t * <b>Note:</b> When the component is loading, it is non-interactive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tloading = false;\n\n\t/**\n * Defines the delay in milliseconds, after which the loading indicator will show up for this component.\n * @default 1000\n * @public\n */\n\t@property({ type: Number })\n\tloadingDelay = 1000;\n\n\t/**\n\t * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.\n\t */\n\t@property()\n\tstickyTop = \"0\";\n\n\t@property({ type: Number, noAttribute: true })\n\t_invalidate = 0;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_renderNavigated = false;\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTable.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_events = [\"keydown\", \"keyup\", \"click\", \"focusin\", \"focusout\"];\n\t_onEventBound: (e: Event) => void;\n\t_onResizeBound: ResizeObserverCallback;\n\t_tableNavigation?: TableNavigation;\n\t_poppedIn: Array<{col: TableHeaderCell, width: float}>;\n\t_containerWidth: number;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._poppedIn = [];\n\t\tthis._containerWidth = 0;\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._onEventBound = this._onEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.register(this, this._onResizeBound);\n\t\t}\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tthis.features.forEach(feature => feature.onTableActivate(this));\n\t\tthis._tableNavigation = new TableNavigation(this);\n\t}\n\n\tonExitDOM() {\n\t\tthis._tableNavigation = undefined;\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tconst renderNavigated = this._renderNavigated;\n\t\tthis._renderNavigated = this.rows.some(row => row.navigated);\n\t\tif (renderNavigated !== this._renderNavigated) {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\trow._renderNavigated = this._renderNavigated;\n\t\t\t});\n\t\t}\n\n\t\tthis.style.setProperty(getScopedVarName(\"--ui5_grid_sticky_top\"), this.stickyTop);\n\t\tthis._refreshPopinState();\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis.features.forEach(feature => feature.onTableRendered?.());\n\t}\n\n\t_getSelection(): TableSelection | undefined {\n\t\treturn this.features.find(feature => isFeature<TableSelection>(feature, \"TableSelection\")) as TableSelection;\n\t}\n\n\t_onEvent(e: Event) {\n\t\tconst composedPath = e.composedPath();\n\t\tconst eventOrigin = composedPath[0] as HTMLElement;\n\t\tconst elements = [this._tableNavigation, ...composedPath, ...this.features];\n\t\telements.forEach(element => {\n\t\t\tif (element instanceof TableExtension || (element instanceof HTMLElement && element.localName.includes(\"ui5-table\"))) {\n\t\t\t\tconst eventHandlerName = `_on${e.type}` as keyof typeof element;\n\t\t\t\tconst eventHandler = element[eventHandlerName] as (e?: Event, eventOrigin?: HTMLElement) => void;\n\t\t\t\tif (typeof eventHandler === \"function\") {\n\t\t\t\t\teventHandler.call(element, e, eventOrigin);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t_onResize() {\n\t\tconst { clientWidth, scrollWidth } = this._tableElement;\n\n\t\tif (scrollWidth > clientWidth) {\n\t\t\t// Overflow Handling: Move columns into the popin until overflow is resolved\n\t\t\tconst overflow = scrollWidth - clientWidth;\n\t\t\tconst headers = this._getPopinOrderedColumns(false);\n\t\t\tconst poppedInWidth = headers.reduce((totalPoppedInWidth, headerCell) => {\n\t\t\t\tif (totalPoppedInWidth < overflow && !headerCell._popin) {\n\t\t\t\t\tconst headerWidth = Math.ceil(headerCell.getBoundingClientRect().width);\n\t\t\t\t\ttotalPoppedInWidth += headerWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, true, headerWidth);\n\t\t\t\t}\n\t\t\t\treturn totalPoppedInWidth;\n\t\t\t}, 0);\n\t\t\t// Calculate container width considering popped-in columns\n\t\t\tconst columnOverflow = poppedInWidth - overflow;\n\t\t\tthis._containerWidth = clientWidth - columnOverflow;\n\t\t} else {\n\t\t\t// Underflow Handling: Restore columns from popin until container width is met\n\t\t\tconst headers = this._getPopinOrderedColumns(true).filter(it => it._popin);\n\n\t\t\theaders.every(headerCell => {\n\t\t\t\tconst underflow = clientWidth - this._containerWidth;\n\t\t\t\tif (underflow >= headerCell._popinWidth) {\n\t\t\t\t\tthis._containerWidth += headerCell._popinWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, false, 0);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\t// Handles focus in the table, when the focus is below a sticky element\n\t\tscrollElementIntoView(this._scrollContainer, e.target as HTMLElement, this._stickyElements, this.effectiveDir === \"rtl\");\n\t}\n\n\t/**\n\t * Refreshes the popin state of the columns.\n\t * Syncs the popin state of the columns with the popin state of the header cells.\n\t * This is needed when additional rows are manually added and no resize happens.\n\t * @private\n\t */\n\t_refreshPopinState() {\n\t\tthis.headerRow[0].cells.forEach((header, index) => {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\tconst cell = row.cells[index];\n\t\t\t\tif (cell && cell._popin !== header._popin) {\n\t\t\t\t\tcell._popin = header._popin;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t_onGrow() {\n\t\tthis._growing?.loadMore();\n\t}\n\n\t_getPopinOrderedColumns(reverse: boolean) {\n\t\tlet headers = [...this.headerRow[0].cells];\n\t\theaders = headers.reverse(); // reverse the \"visual\" order\n\t\theaders = headers.sort((a, b) => a.importance - b.importance); // sort by importance (asc)\n\t\theaders.pop(); // remove the most important column, as it will not be popped in\n\n\t\tif (reverse) {\n\t\t\theaders = headers.reverse();\n\t\t}\n\n\t\treturn headers;\n\t}\n\n\t_setHeaderPopinState(headerCell: TableHeaderCell, inPopin: boolean, popinWidth: number) {\n\t\tconst headerIndex = this.headerRow[0].cells.indexOf(headerCell);\n\t\theaderCell._popin = inPopin;\n\t\theaderCell._popinWidth = popinWidth;\n\t\tthis.rows.forEach(row => {\n\t\t\trow.cells[headerIndex]._popin = inPopin;\n\t\t});\n\t}\n\n\t_isFeature(feature: any) {\n\t\treturn Boolean(feature.onTableActivate && feature.onTableRendered);\n\t}\n\n\t_isGrowingFeature(feature: any) {\n\t\treturn Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));\n\t}\n\n\t_onRowPress(row: TableRow) {\n\t\tthis.fireEvent<TableRowClickEventDetail>(\"row-click\", { row });\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\ttable: {\n\t\t\t\t\"grid-template-columns\": this._gridTemplateColumns,\n\t\t\t},\n\t\t};\n\t}\n\n\tget _gridTemplateColumns() {\n\t\tconst widths = [];\n\t\tconst visibleHeaderCells = this.headerRow[0]._visibleCells as TableHeaderCell[];\n\t\tif (this._getSelection()?.hasRowSelector()) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_checkbox_width_height\")})`);\n\t\t}\n\t\twidths.push(...visibleHeaderCells.map(cell => {\n\t\t\tconst minWidth = cell.minWidth === \"auto\" ? \"3rem\" : cell.minWidth;\n\t\t\tif (cell.width === \"auto\" || cell.width.includes(\"%\") || cell.width.includes(\"fr\") || cell.width.includes(\"vw\")) {\n\t\t\t\treturn `minmax(${minWidth}, ${cell.maxWidth})`;\n\t\t\t}\n\t\t\treturn `minmax(${cell.width}, ${cell.width})`;\n\t\t}));\n\t\tif (this._renderNavigated) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_table_navigated_cell_width\")})`);\n\t\t}\n\t\treturn widths.join(\" \");\n\t}\n\n\tget _tableOverflowX() {\n\t\treturn (this.overflowMode === TableOverflowMode.Popin) ? \"clip\" : \"auto\";\n\t}\n\n\tget _tableOverflowY() {\n\t\treturn \"auto\";\n\t}\n\n\tget _nodataRow() {\n\t\treturn this.shadowRoot!.getElementById(\"nodata-row\") as TableRow;\n\t}\n\n\tget _beforeElement() {\n\t\treturn this.shadowRoot!.getElementById(\"before\") as HTMLElement;\n\t}\n\n\tget _afterElement() {\n\t\treturn this.shadowRoot!.getElementById(\"after\") as HTMLElement;\n\t}\n\n\tget _tableElement() {\n\t\treturn this.shadowRoot!.getElementById(\"table\") as HTMLElement;\n\t}\n\n\tget _loadingElement() {\n\t\treturn this.shadowRoot!.getElementById(\"loading\") as HTMLElement;\n\t}\n\n\tget _effectiveNoDataText() {\n\t\treturn this.noDataText || Table.i18nBundle.getText(TABLE_NO_DATA);\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this) || undefined;\n\t}\n\n\tget _ariaMultiSelectable() {\n\t\tconst selection = this._getSelection();\n\t\treturn (selection?.isSelectable() && this.rows.length) ? selection.isMultiSelect() : undefined;\n\t}\n\n\tget _shouldRenderGrowing() {\n\t\treturn this.rows.length && this._growing?.hasGrowingComponent();\n\t}\n\n\tget _growing() {\n\t\treturn this.features.find(feature => this._isGrowingFeature(feature)) as ITableGrowing;\n\t}\n\n\tget _stickyElements() {\n\t\tconst stickyRows = this.headerRow.filter(row => row.sticky);\n\t\tconst stickyColumns = this.headerRow[0]._stickyCells as TableHeaderCell[];\n\n\t\treturn [...stickyRows, ...stickyColumns];\n\t}\n\n\tget _scrollContainer() {\n\t\treturn findVerticalScrollContainer(this._tableElement);\n\t}\n\n\tget isTable() {\n\t\treturn true;\n\t}\n}\n\nTable.define();\n\nexport default Table;\n\nexport type {\n\tITableFeature,\n\tITableGrowing,\n\tTableRowClickEventDetail,\n};\n"]}
@@ -13,7 +13,7 @@ import TableCellBase from "./TableCellBase.js";
13
13
  *
14
14
  * @constructor
15
15
  * @extends TableCellBase
16
- * @since 2.0
16
+ * @since 2.0.0
17
17
  * @public
18
18
  * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.
19
19
  */
package/dist/TableCell.js CHANGED
@@ -23,7 +23,7 @@ import { LABEL_COLON } from "./generated/i18n/i18n-defaults.js";
23
23
  *
24
24
  * @constructor
25
25
  * @extends TableCellBase
26
- * @since 2.0
26
+ * @since 2.0.0
27
27
  * @public
28
28
  * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.
29
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../src/TableCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;;;;;;;;;;;;;;;;GAiBG;AAMH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IACpC,IAAI,YAAY;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,aAAyB,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAsB,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACD,CAAA;AAZK,SAAS;IALd,aAAa,CAAC;QACd,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC;QAC/C,QAAQ,EAAE,iBAAiB;KAC3B,CAAC;GACI,SAAS,CAYd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport TableCellTemplate from \"./generated/templates/TableCellTemplate.lit.js\";\nimport TableCellStyles from \"./generated/themes/TableCell.css.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type Table from \"./Table.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-cell` represents a cell inside of a `ui5-table`.\n * It is tightly coupled to the `ui5-table` and thus should only be used in the table component.\n *\n * ### ES6 Module Import\n *\n * `import @ui5/webcomponents/dist/TableCell.js;`\n *\n * @constructor\n * @extends TableCellBase\n * @since 2.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-cell\",\n\tstyles: [TableCellBase.styles, TableCellStyles],\n\ttemplate: TableCellTemplate,\n})\nclass TableCell extends TableCellBase {\n\tget _popinHeader() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\tconst index = row.cells.indexOf(this);\n\t\tconst headerCell = table.headerRow[0].cells[index];\n\t\treturn headerCell.content[0]?.cloneNode(true);\n\t}\n\n\tget _i18nPopinColon() {\n\t\treturn TableCellBase.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nTableCell.define();\n\nexport default TableCell;\n"]}
1
+ {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../src/TableCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;;;;;;;;;;;;;;;;GAiBG;AAMH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IACpC,IAAI,YAAY;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,aAAyB,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAsB,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACD,CAAA;AAZK,SAAS;IALd,aAAa,CAAC;QACd,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC;QAC/C,QAAQ,EAAE,iBAAiB;KAC3B,CAAC;GACI,SAAS,CAYd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport TableCellTemplate from \"./generated/templates/TableCellTemplate.lit.js\";\nimport TableCellStyles from \"./generated/themes/TableCell.css.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type Table from \"./Table.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-cell` represents a cell inside of a `ui5-table`.\n * It is tightly coupled to the `ui5-table` and thus should only be used in the table component.\n *\n * ### ES6 Module Import\n *\n * `import @ui5/webcomponents/dist/TableCell.js;`\n *\n * @constructor\n * @extends TableCellBase\n * @since 2.0.0\n * @public\n * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.\n */\n@customElement({\n\ttag: \"ui5-table-cell\",\n\tstyles: [TableCellBase.styles, TableCellStyles],\n\ttemplate: TableCellTemplate,\n})\nclass TableCell extends TableCellBase {\n\tget _popinHeader() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\tconst index = row.cells.indexOf(this);\n\t\tconst headerCell = table.headerRow[0].cells[index];\n\t\treturn headerCell.content[0]?.cloneNode(true);\n\t}\n\n\tget _i18nPopinColon() {\n\t\treturn TableCellBase.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nTableCell.define();\n\nexport default TableCell;\n"]}
@@ -6,7 +6,7 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
6
6
  * @constructor
7
7
  * @abstract
8
8
  * @extends UI5Element
9
- * @since 2.0
9
+ * @since 2.0.0
10
10
  * @public
11
11
  */
12
12
  declare abstract class TableCellBase extends UI5Element {
@@ -18,7 +18,7 @@ import TableCellBaseStyles from "./generated/themes/TableCellBase.css.js";
18
18
  * @constructor
19
19
  * @abstract
20
20
  * @extends UI5Element
21
- * @since 2.0
21
+ * @since 2.0.0
22
22
  * @public
23
23
  */
24
24
  let TableCellBase = TableCellBase_1 = class TableCellBase extends UI5Element {
@@ -1 +1 @@
1
- {"version":3,"file":"TableCellBase.js","sourceRoot":"","sources":["../src/TableCellBase.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAE1E;;;;;;;;GAQG;AAKH,IAAe,aAAa,qBAA5B,MAAe,aAAc,SAAQ,UAAU;IAA/C;;QASC,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,UAAU,CAAC;IA0BzC,CAAC;IAvBA,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,eAAa,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC;IAED,UAAU;QACT,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;SAC7B;aAAM;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,eAAe;QACd,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AA/BA;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;8CAChB;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACb;AATD,aAAa;IAJ3B,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,mBAAmB;KAC3B,CAAC;GACa,aAAa,CAqC3B;AAED,eAAe,aAAa,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport TableCellBaseStyles from \"./generated/themes/TableCellBase.css.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableCellBaseStyles,\n})\nabstract class TableCellBase extends UI5Element {\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t@property({ type: Boolean })\n\t_popin = false;\n\n\tprotected ariaRole: string = \"gridcell\";\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTableCellBase.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonEnterDOM() {\n\t\tthis.toggleAttribute(\"ui5-table-cell-base\", true);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._popin) {\n\t\t\tthis.removeAttribute(\"role\");\n\t\t} else {\n\t\t\tthis.setAttribute(\"role\", this.ariaRole);\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n\n\tisTableCellBase() {\n\t\treturn true;\n\t}\n}\n\nexport default TableCellBase;\n"]}
1
+ {"version":3,"file":"TableCellBase.js","sourceRoot":"","sources":["../src/TableCellBase.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAE1E;;;;;;;;GAQG;AAKH,IAAe,aAAa,qBAA5B,MAAe,aAAc,SAAQ,UAAU;IAA/C;;QASC,WAAM,GAAG,KAAK,CAAC;QAEL,aAAQ,GAAW,UAAU,CAAC;IA0BzC,CAAC;IAvBA,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,eAAa,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC;IAED,UAAU;QACT,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;SAC7B;aAAM;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,eAAe;QACd,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AA/BA;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;8CAChB;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACb;AATD,aAAa;IAJ3B,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,mBAAmB;KAC3B,CAAC;GACa,aAAa,CAqC3B;AAED,eAAe,aAAa,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport TableCellBaseStyles from \"./generated/themes/TableCellBase.css.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableCellBaseStyles,\n})\nabstract class TableCellBase extends UI5Element {\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t@property({ type: Boolean })\n\t_popin = false;\n\n\tprotected ariaRole: string = \"gridcell\";\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTableCellBase.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonEnterDOM() {\n\t\tthis.toggleAttribute(\"ui5-table-cell-base\", true);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._popin) {\n\t\t\tthis.removeAttribute(\"role\");\n\t\t} else {\n\t\t\tthis.setAttribute(\"role\", this.ariaRole);\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n\n\tisTableCellBase() {\n\t\treturn true;\n\t}\n}\n\nexport default TableCellBase;\n"]}
@@ -33,7 +33,7 @@ import TableGrowingMode from "./types/TableGrowingMode.js";
33
33
  *
34
34
  * @constructor
35
35
  * @extends UI5Element
36
- * @since 2.0
36
+ * @since 2.0.0
37
37
  * @public
38
38
  * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.
39
39
  */
@@ -48,7 +48,7 @@ import { TABLE_MORE, TABLE_MORE_DESCRIPTION, } from "./generated/i18n/i18n-defau
48
48
  *
49
49
  * @constructor
50
50
  * @extends UI5Element
51
- * @since 2.0
51
+ * @since 2.0.0
52
52
  * @public
53
53
  * @experimental This web component is available since 2.0 with an experimental flag and its API and behavior are subject to change.
54
54
  */