@ui5/webcomponents 2.13.0-rc.1 → 2.13.0-rc.2

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 (628) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/CheckBox.d.ts +22 -0
  4. package/dist/CheckBox.js +15 -2
  5. package/dist/CheckBox.js.map +1 -1
  6. package/dist/CheckBoxTemplate.js +3 -2
  7. package/dist/CheckBoxTemplate.js.map +1 -1
  8. package/dist/FileUploader.d.ts +4 -1
  9. package/dist/FileUploader.js +1 -0
  10. package/dist/FileUploader.js.map +1 -1
  11. package/dist/FileUploaderTemplate.js +3 -1
  12. package/dist/FileUploaderTemplate.js.map +1 -1
  13. package/dist/Input.js +1 -0
  14. package/dist/Input.js.map +1 -1
  15. package/dist/List.d.ts +26 -1
  16. package/dist/List.js +27 -0
  17. package/dist/List.js.map +1 -1
  18. package/dist/ListItemBase.d.ts +8 -0
  19. package/dist/ListItemBase.js +15 -3
  20. package/dist/ListItemBase.js.map +1 -1
  21. package/dist/ListTemplate.js +1 -1
  22. package/dist/ListTemplate.js.map +1 -1
  23. package/dist/Menu.js +3 -7
  24. package/dist/Menu.js.map +1 -1
  25. package/dist/MenuItem.d.ts +6 -0
  26. package/dist/MenuItem.js +24 -6
  27. package/dist/MenuItem.js.map +1 -1
  28. package/dist/MenuItemGroup.d.ts +3 -0
  29. package/dist/MenuItemGroup.js +20 -2
  30. package/dist/MenuItemGroup.js.map +1 -1
  31. package/dist/MenuItemGroupTemplate.js +1 -1
  32. package/dist/MenuItemGroupTemplate.js.map +1 -1
  33. package/dist/MenuItemTemplate.js +1 -1
  34. package/dist/MenuItemTemplate.js.map +1 -1
  35. package/dist/MultiComboBoxItem.d.ts +4 -0
  36. package/dist/MultiComboBoxItem.js +5 -0
  37. package/dist/MultiComboBoxItem.js.map +1 -1
  38. package/dist/MultiComboBoxItemTemplate.js +1 -1
  39. package/dist/MultiComboBoxItemTemplate.js.map +1 -1
  40. package/dist/Select.js +2 -2
  41. package/dist/Select.js.map +1 -1
  42. package/dist/Table.js +1 -1
  43. package/dist/Table.js.map +1 -1
  44. package/dist/TableSelection.d.ts +4 -1
  45. package/dist/TableSelection.js +10 -4
  46. package/dist/TableSelection.js.map +1 -1
  47. package/dist/TableSelectionMulti.d.ts +4 -1
  48. package/dist/TableSelectionMulti.js +11 -4
  49. package/dist/TableSelectionMulti.js.map +1 -1
  50. package/dist/Token.js +2 -2
  51. package/dist/Token.js.map +1 -1
  52. package/dist/Toolbar.js +0 -3
  53. package/dist/Toolbar.js.map +1 -1
  54. package/dist/ToolbarButton.js +2 -0
  55. package/dist/ToolbarButton.js.map +1 -1
  56. package/dist/css/themes/Avatar.css +1 -1
  57. package/dist/css/themes/AvatarGroup.css +1 -1
  58. package/dist/css/themes/Bar.css +1 -1
  59. package/dist/css/themes/Breadcrumbs.css +1 -1
  60. package/dist/css/themes/BusyIndicator.css +1 -1
  61. package/dist/css/themes/Button.css +1 -1
  62. package/dist/css/themes/ButtonBadge.css +1 -1
  63. package/dist/css/themes/Calendar.css +1 -1
  64. package/dist/css/themes/CalendarHeader.css +1 -1
  65. package/dist/css/themes/CalendarLegend.css +1 -1
  66. package/dist/css/themes/CalendarLegendItem.css +1 -1
  67. package/dist/css/themes/Card.css +1 -1
  68. package/dist/css/themes/CardHeader.css +1 -1
  69. package/dist/css/themes/Carousel.css +1 -1
  70. package/dist/css/themes/CheckBox.css +1 -1
  71. package/dist/css/themes/ColorPalette.css +1 -1
  72. package/dist/css/themes/ColorPaletteItem.css +1 -1
  73. package/dist/css/themes/ColorPalettePopover.css +1 -1
  74. package/dist/css/themes/ColorPicker.css +1 -1
  75. package/dist/css/themes/ComboBox.css +1 -1
  76. package/dist/css/themes/ComboBoxItem.css +1 -1
  77. package/dist/css/themes/DatePicker.css +1 -1
  78. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  79. package/dist/css/themes/DayPicker.css +1 -1
  80. package/dist/css/themes/Dialog.css +1 -1
  81. package/dist/css/themes/DynamicDateRange.css +1 -1
  82. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  83. package/dist/css/themes/FileUploader.css +1 -1
  84. package/dist/css/themes/Form.css +1 -1
  85. package/dist/css/themes/FormItem.css +1 -1
  86. package/dist/css/themes/FormItemSpan.css +1 -1
  87. package/dist/css/themes/GrowingButton.css +1 -1
  88. package/dist/css/themes/Icon.css +1 -1
  89. package/dist/css/themes/Input.css +1 -1
  90. package/dist/css/themes/InputIcon.css +1 -1
  91. package/dist/css/themes/InputSharedStyles.css +1 -1
  92. package/dist/css/themes/Link.css +1 -1
  93. package/dist/css/themes/List.css +1 -1
  94. package/dist/css/themes/ListItem.css +1 -1
  95. package/dist/css/themes/ListItemBase.css +1 -1
  96. package/dist/css/themes/ListItemCustom.css +1 -1
  97. package/dist/css/themes/ListItemGroup.css +1 -1
  98. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  99. package/dist/css/themes/ListItemIcon.css +1 -1
  100. package/dist/css/themes/Menu.css +1 -1
  101. package/dist/css/themes/MenuItem.css +1 -1
  102. package/dist/css/themes/MessageStrip.css +1 -1
  103. package/dist/css/themes/MonthPicker.css +1 -1
  104. package/dist/css/themes/MultiComboBox.css +1 -1
  105. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  106. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  107. package/dist/css/themes/MultiInput.css +1 -1
  108. package/dist/css/themes/OptionBase.css +1 -1
  109. package/dist/css/themes/Panel.css +1 -1
  110. package/dist/css/themes/Popover.css +1 -1
  111. package/dist/css/themes/PopupsCommon.css +1 -1
  112. package/dist/css/themes/ProgressIndicator.css +1 -1
  113. package/dist/css/themes/RadioButton.css +1 -1
  114. package/dist/css/themes/RangeSlider.css +1 -1
  115. package/dist/css/themes/RatingIndicator.css +1 -1
  116. package/dist/css/themes/ResponsivePopover.css +1 -1
  117. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  118. package/dist/css/themes/SegmentedButton.css +1 -1
  119. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  120. package/dist/css/themes/Select.css +1 -1
  121. package/dist/css/themes/SliderBase.css +1 -1
  122. package/dist/css/themes/SplitButton.css +1 -1
  123. package/dist/css/themes/StepInput.css +1 -1
  124. package/dist/css/themes/SuggestionItem.css +1 -1
  125. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  126. package/dist/css/themes/Switch.css +1 -1
  127. package/dist/css/themes/TabContainer.css +1 -1
  128. package/dist/css/themes/TabInOverflow.css +1 -1
  129. package/dist/css/themes/TabInStrip.css +1 -1
  130. package/dist/css/themes/TabSemanticIcon.css +1 -1
  131. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  132. package/dist/css/themes/Table.css +1 -1
  133. package/dist/css/themes/TableCellBase.css +1 -1
  134. package/dist/css/themes/TableHeaderRow.css +1 -1
  135. package/dist/css/themes/TableRow.css +1 -1
  136. package/dist/css/themes/TableRowActionBase.css +1 -1
  137. package/dist/css/themes/TableRowBase.css +1 -1
  138. package/dist/css/themes/Tag.css +1 -1
  139. package/dist/css/themes/Text.css +1 -1
  140. package/dist/css/themes/TextArea.css +1 -1
  141. package/dist/css/themes/TimePicker.css +1 -1
  142. package/dist/css/themes/Toast.css +1 -1
  143. package/dist/css/themes/ToggleButton.css +1 -1
  144. package/dist/css/themes/Token.css +1 -1
  145. package/dist/css/themes/Tokenizer.css +1 -1
  146. package/dist/css/themes/TokenizerPopover.css +1 -1
  147. package/dist/css/themes/Toolbar.css +1 -1
  148. package/dist/css/themes/ToolbarButton.css +1 -0
  149. package/dist/css/themes/ToolbarPopover.css +1 -1
  150. package/dist/css/themes/ToolbarSeparator.css +1 -1
  151. package/dist/css/themes/TreeItem.css +1 -1
  152. package/dist/css/themes/ValueStateMessage.css +1 -1
  153. package/dist/css/themes/ValueStateVariables.css +1 -1
  154. package/dist/css/themes/YearPicker.css +1 -1
  155. package/dist/css/themes/YearRangePicker.css +1 -1
  156. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  157. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  158. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  159. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  160. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  161. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  162. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  163. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  164. package/dist/custom-elements-internal.json +34 -4
  165. package/dist/custom-elements.json +27 -1
  166. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  167. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  168. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  169. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  170. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  171. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  173. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  174. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  175. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  176. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  177. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  178. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  179. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  180. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  181. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  182. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  183. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  184. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  185. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  186. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  187. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  188. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  217. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  218. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  219. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  220. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  221. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  222. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  223. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  224. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  225. package/dist/generated/i18n/i18n-defaults.d.ts +5 -1
  226. package/dist/generated/i18n/i18n-defaults.js +5 -1
  227. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  228. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  229. package/dist/generated/themes/Avatar.css.js +1 -1
  230. package/dist/generated/themes/Avatar.css.js.map +1 -1
  231. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  232. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  233. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  234. package/dist/generated/themes/Bar.css.d.ts +1 -1
  235. package/dist/generated/themes/Bar.css.js +1 -1
  236. package/dist/generated/themes/Bar.css.js.map +1 -1
  237. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  238. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  239. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  240. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  241. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  242. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  243. package/dist/generated/themes/Button.css.d.ts +1 -1
  244. package/dist/generated/themes/Button.css.js +1 -1
  245. package/dist/generated/themes/Button.css.js.map +1 -1
  246. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  247. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  248. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  249. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  250. package/dist/generated/themes/Calendar.css.js +1 -1
  251. package/dist/generated/themes/Calendar.css.js.map +1 -1
  252. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  253. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  254. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  255. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  256. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  257. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  258. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  259. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  260. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  261. package/dist/generated/themes/Card.css.d.ts +1 -1
  262. package/dist/generated/themes/Card.css.js +1 -1
  263. package/dist/generated/themes/Card.css.js.map +1 -1
  264. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  265. package/dist/generated/themes/CardHeader.css.js +1 -1
  266. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  267. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  268. package/dist/generated/themes/Carousel.css.js +1 -1
  269. package/dist/generated/themes/Carousel.css.js.map +1 -1
  270. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  271. package/dist/generated/themes/CheckBox.css.js +1 -1
  272. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  273. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  274. package/dist/generated/themes/ColorPalette.css.js +1 -1
  275. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  276. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  277. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  278. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  279. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  280. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  281. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  282. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  283. package/dist/generated/themes/ColorPicker.css.js +1 -1
  284. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  285. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  286. package/dist/generated/themes/ComboBox.css.js +1 -1
  287. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  288. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  289. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  290. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  291. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  292. package/dist/generated/themes/DatePicker.css.js +1 -1
  293. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  294. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  295. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  296. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  297. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  298. package/dist/generated/themes/DayPicker.css.js +1 -1
  299. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  300. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  301. package/dist/generated/themes/Dialog.css.js +1 -1
  302. package/dist/generated/themes/Dialog.css.js.map +1 -1
  303. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  304. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  305. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  306. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  307. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  308. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  309. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  310. package/dist/generated/themes/FileUploader.css.js +1 -1
  311. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  312. package/dist/generated/themes/Form.css.d.ts +1 -1
  313. package/dist/generated/themes/Form.css.js +1 -1
  314. package/dist/generated/themes/Form.css.js.map +1 -1
  315. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  316. package/dist/generated/themes/FormItem.css.js +1 -1
  317. package/dist/generated/themes/FormItem.css.js.map +1 -1
  318. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  319. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  320. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  321. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  322. package/dist/generated/themes/GrowingButton.css.js +1 -1
  323. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  324. package/dist/generated/themes/Icon.css.d.ts +1 -1
  325. package/dist/generated/themes/Icon.css.js +1 -1
  326. package/dist/generated/themes/Icon.css.js.map +1 -1
  327. package/dist/generated/themes/Input.css.d.ts +1 -1
  328. package/dist/generated/themes/Input.css.js +1 -1
  329. package/dist/generated/themes/Input.css.js.map +1 -1
  330. package/dist/generated/themes/InputIcon.css.d.ts +1 -1
  331. package/dist/generated/themes/InputIcon.css.js +1 -1
  332. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  333. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  334. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  335. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  336. package/dist/generated/themes/Link.css.d.ts +1 -1
  337. package/dist/generated/themes/Link.css.js +1 -1
  338. package/dist/generated/themes/Link.css.js.map +1 -1
  339. package/dist/generated/themes/List.css.d.ts +1 -1
  340. package/dist/generated/themes/List.css.js +1 -1
  341. package/dist/generated/themes/List.css.js.map +1 -1
  342. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  343. package/dist/generated/themes/ListItem.css.js +1 -1
  344. package/dist/generated/themes/ListItem.css.js.map +1 -1
  345. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  346. package/dist/generated/themes/ListItemBase.css.js +1 -1
  347. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  348. package/dist/generated/themes/ListItemCustom.css.d.ts +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.d.ts +1 -1
  352. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  353. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  354. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  355. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  356. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  357. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  358. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  359. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  360. package/dist/generated/themes/Menu.css.d.ts +1 -1
  361. package/dist/generated/themes/Menu.css.js +1 -1
  362. package/dist/generated/themes/Menu.css.js.map +1 -1
  363. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  364. package/dist/generated/themes/MenuItem.css.js +1 -1
  365. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  366. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  367. package/dist/generated/themes/MessageStrip.css.js +1 -1
  368. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  369. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  370. package/dist/generated/themes/MonthPicker.css.js +1 -1
  371. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  372. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  373. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  374. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  375. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  376. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  377. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  378. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  379. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  380. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  381. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  382. package/dist/generated/themes/MultiInput.css.js +1 -1
  383. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  384. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  385. package/dist/generated/themes/OptionBase.css.js +1 -1
  386. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  387. package/dist/generated/themes/Panel.css.d.ts +1 -1
  388. package/dist/generated/themes/Panel.css.js +1 -1
  389. package/dist/generated/themes/Panel.css.js.map +1 -1
  390. package/dist/generated/themes/Popover.css.d.ts +1 -1
  391. package/dist/generated/themes/Popover.css.js +1 -1
  392. package/dist/generated/themes/Popover.css.js.map +1 -1
  393. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  394. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  395. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  396. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  397. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  398. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  399. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  400. package/dist/generated/themes/RadioButton.css.js +1 -1
  401. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  402. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  403. package/dist/generated/themes/RangeSlider.css.js +1 -1
  404. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  405. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  406. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  407. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  408. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  409. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  410. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  411. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  412. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  413. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  414. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  415. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  416. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  417. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  418. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  419. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  420. package/dist/generated/themes/Select.css.d.ts +1 -1
  421. package/dist/generated/themes/Select.css.js +1 -1
  422. package/dist/generated/themes/Select.css.js.map +1 -1
  423. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  424. package/dist/generated/themes/SliderBase.css.js +1 -1
  425. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  426. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  427. package/dist/generated/themes/SplitButton.css.js +1 -1
  428. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  429. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  430. package/dist/generated/themes/StepInput.css.js +1 -1
  431. package/dist/generated/themes/StepInput.css.js.map +1 -1
  432. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  433. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  434. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  435. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  436. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  437. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  438. package/dist/generated/themes/Switch.css.d.ts +1 -1
  439. package/dist/generated/themes/Switch.css.js +1 -1
  440. package/dist/generated/themes/Switch.css.js.map +1 -1
  441. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  442. package/dist/generated/themes/TabContainer.css.js +1 -1
  443. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  444. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  445. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  446. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  447. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  448. package/dist/generated/themes/TabInStrip.css.js +1 -1
  449. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  450. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  451. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  452. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  453. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  454. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  455. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  456. package/dist/generated/themes/Table.css.d.ts +1 -1
  457. package/dist/generated/themes/Table.css.js +1 -1
  458. package/dist/generated/themes/Table.css.js.map +1 -1
  459. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  460. package/dist/generated/themes/TableCellBase.css.js +1 -1
  461. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  462. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  463. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  464. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  465. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  466. package/dist/generated/themes/TableRow.css.js +1 -1
  467. package/dist/generated/themes/TableRow.css.js.map +1 -1
  468. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  469. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  470. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  471. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  472. package/dist/generated/themes/TableRowBase.css.js +1 -1
  473. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  474. package/dist/generated/themes/Tag.css.d.ts +1 -1
  475. package/dist/generated/themes/Tag.css.js +1 -1
  476. package/dist/generated/themes/Tag.css.js.map +1 -1
  477. package/dist/generated/themes/Text.css.d.ts +1 -1
  478. package/dist/generated/themes/Text.css.js +1 -1
  479. package/dist/generated/themes/Text.css.js.map +1 -1
  480. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  481. package/dist/generated/themes/TextArea.css.js +1 -1
  482. package/dist/generated/themes/TextArea.css.js.map +1 -1
  483. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  484. package/dist/generated/themes/TimePicker.css.js +1 -1
  485. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  486. package/dist/generated/themes/Toast.css.d.ts +1 -1
  487. package/dist/generated/themes/Toast.css.js +1 -1
  488. package/dist/generated/themes/Toast.css.js.map +1 -1
  489. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  490. package/dist/generated/themes/ToggleButton.css.js +1 -1
  491. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  492. package/dist/generated/themes/Token.css.d.ts +1 -1
  493. package/dist/generated/themes/Token.css.js +1 -1
  494. package/dist/generated/themes/Token.css.js.map +1 -1
  495. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  496. package/dist/generated/themes/Tokenizer.css.js +1 -1
  497. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  498. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  499. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  500. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  501. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  502. package/dist/generated/themes/Toolbar.css.js +1 -1
  503. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  504. package/dist/generated/themes/ToolbarButton.css.d.ts +2 -0
  505. package/dist/generated/themes/{ToolbarButtonPopover.css.js → ToolbarButton.css.js} +2 -2
  506. package/dist/generated/themes/ToolbarButton.css.js.map +1 -0
  507. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  508. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  509. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  510. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  511. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  512. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  513. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  514. package/dist/generated/themes/TreeItem.css.js +1 -1
  515. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  516. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  517. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  518. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  519. package/dist/generated/themes/ValueStateVariables.css.d.ts +1 -1
  520. package/dist/generated/themes/ValueStateVariables.css.js +1 -1
  521. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -1
  522. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  523. package/dist/generated/themes/YearPicker.css.js +1 -1
  524. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  525. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  526. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  527. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  528. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  529. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  530. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  531. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  532. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  533. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  534. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  535. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  536. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  537. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  538. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  539. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  540. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  541. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  542. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  543. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  544. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  545. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  546. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  547. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  548. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  549. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  550. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  551. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  552. package/dist/popup-utils/OpenedPopupsRegistry.js +15 -1
  553. package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
  554. package/dist/vscode.html-custom-data.json +6 -1
  555. package/dist/web-types.json +16 -3
  556. package/package.json +9 -9
  557. package/src/CheckBoxTemplate.tsx +8 -6
  558. package/src/FileUploaderTemplate.tsx +4 -2
  559. package/src/ListTemplate.tsx +2 -1
  560. package/src/MenuItemGroupTemplate.tsx +1 -0
  561. package/src/MenuItemTemplate.tsx +1 -0
  562. package/src/MultiComboBoxItemTemplate.tsx +1 -2
  563. package/src/i18n/messagebundle.properties +12 -0
  564. package/src/i18n/messagebundle_ar.properties +4 -0
  565. package/src/i18n/messagebundle_bg.properties +5 -1
  566. package/src/i18n/messagebundle_ca.properties +5 -1
  567. package/src/i18n/messagebundle_cnr.properties +4 -0
  568. package/src/i18n/messagebundle_cs.properties +4 -0
  569. package/src/i18n/messagebundle_cy.properties +4 -0
  570. package/src/i18n/messagebundle_da.properties +4 -0
  571. package/src/i18n/messagebundle_de.properties +5 -1
  572. package/src/i18n/messagebundle_el.properties +4 -0
  573. package/src/i18n/messagebundle_en.properties +31 -3
  574. package/src/i18n/messagebundle_en_GB.properties +4 -0
  575. package/src/i18n/messagebundle_en_US_sappsd.properties +22 -2
  576. package/src/i18n/messagebundle_en_US_saprigi.properties +20 -2
  577. package/src/i18n/messagebundle_en_US_saptrc.properties +22 -2
  578. package/src/i18n/messagebundle_es.properties +4 -0
  579. package/src/i18n/messagebundle_es_MX.properties +4 -0
  580. package/src/i18n/messagebundle_et.properties +4 -0
  581. package/src/i18n/messagebundle_fi.properties +4 -0
  582. package/src/i18n/messagebundle_fr.properties +4 -0
  583. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  584. package/src/i18n/messagebundle_hi.properties +4 -0
  585. package/src/i18n/messagebundle_hr.properties +5 -1
  586. package/src/i18n/messagebundle_hu.properties +4 -0
  587. package/src/i18n/messagebundle_id.properties +5 -1
  588. package/src/i18n/messagebundle_it.properties +4 -0
  589. package/src/i18n/messagebundle_iw.properties +4 -0
  590. package/src/i18n/messagebundle_ja.properties +4 -0
  591. package/src/i18n/messagebundle_kk.properties +5 -1
  592. package/src/i18n/messagebundle_ko.properties +4 -0
  593. package/src/i18n/messagebundle_lt.properties +4 -0
  594. package/src/i18n/messagebundle_lv.properties +4 -0
  595. package/src/i18n/messagebundle_mk.properties +4 -0
  596. package/src/i18n/messagebundle_ms.properties +4 -0
  597. package/src/i18n/messagebundle_nl.properties +4 -0
  598. package/src/i18n/messagebundle_no.properties +4 -0
  599. package/src/i18n/messagebundle_pl.properties +4 -0
  600. package/src/i18n/messagebundle_pt.properties +4 -0
  601. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  602. package/src/i18n/messagebundle_ro.properties +4 -0
  603. package/src/i18n/messagebundle_ru.properties +4 -0
  604. package/src/i18n/messagebundle_sh.properties +4 -0
  605. package/src/i18n/messagebundle_sk.properties +4 -0
  606. package/src/i18n/messagebundle_sl.properties +4 -0
  607. package/src/i18n/messagebundle_sr.properties +4 -0
  608. package/src/i18n/messagebundle_sv.properties +4 -0
  609. package/src/i18n/messagebundle_th.properties +4 -0
  610. package/src/i18n/messagebundle_tr.properties +4 -0
  611. package/src/i18n/messagebundle_uk.properties +4 -0
  612. package/src/i18n/messagebundle_vi.properties +4 -0
  613. package/src/i18n/messagebundle_zh_CN.properties +4 -0
  614. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  615. package/src/themes/AvatarGroup.css +2 -1
  616. package/src/themes/FileUploader.css +10 -1
  617. package/src/themes/MenuItem.css +1 -4
  618. package/src/themes/Table.css +0 -2
  619. package/src/themes/ToolbarButton.css +7 -0
  620. package/src/themes/base/FileUploader-parameters.css +0 -2
  621. package/src/themes/sap_horizon/FileUploader-parameters.css +0 -4
  622. package/src/themes/sap_horizon_dark/FileUploader-parameters.css +0 -4
  623. package/src/themes/sap_horizon_hcb/FileUploader-parameters.css +1 -6
  624. package/src/themes/sap_horizon_hcw/FileUploader-parameters.css +1 -6
  625. package/dist/css/themes/ToolbarButtonPopover.css +0 -1
  626. package/dist/generated/themes/ToolbarButtonPopover.css.d.ts +0 -2
  627. package/dist/generated/themes/ToolbarButtonPopover.css.js.map +0 -1
  628. package/src/themes/ToolbarButtonPopover.css +0 -3
@@ -3,6 +3,15 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
3
3
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
4
4
  import type { IFormInputElement } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
5
5
  import type WrappingType from "./types/WrappingType.js";
6
+ import type { AriaRole, AriaChecked, AriaDisabled, AriaReadonly } from "@ui5/webcomponents-base/dist/types.js";
7
+ type CheckBoxAccInfo = {
8
+ role?: AriaRole;
9
+ ariaChecked?: AriaChecked;
10
+ ariaReadonly?: AriaReadonly;
11
+ ariaDisabled?: AriaDisabled;
12
+ ariaRequired?: boolean;
13
+ tabindex?: number | undefined;
14
+ };
6
15
  /**
7
16
  * @class
8
17
  *
@@ -177,6 +186,11 @@ declare class CheckBox extends UI5Element implements IFormInputElement {
177
186
  * @private
178
187
  */
179
188
  active: boolean;
189
+ /**
190
+ * Defines custom aria implementation object.
191
+ * @private
192
+ */
193
+ _accInfo?: CheckBoxAccInfo;
180
194
  static i18nBundle: I18nBundle;
181
195
  _deactivate: () => void;
182
196
  get formValidityMessage(): string;
@@ -215,5 +229,13 @@ declare class CheckBox extends UI5Element implements IFormInputElement {
215
229
  get tabbable(): boolean;
216
230
  get isCompletelyChecked(): boolean;
217
231
  get isDisplayOnly(): boolean;
232
+ get accInfo(): {
233
+ role: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.AriaRole | undefined;
234
+ ariaChecked: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | "mixed" | undefined>;
235
+ ariaReadonly: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | undefined>;
236
+ ariaDisabled: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | undefined>;
237
+ ariaRequired: boolean | undefined;
238
+ tabindex: number | undefined;
239
+ };
218
240
  }
219
241
  export default CheckBox;
package/dist/CheckBox.js CHANGED
@@ -13,7 +13,7 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
13
13
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
14
14
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
15
15
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
16
- import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
16
+ import { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
17
17
  import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
18
18
  import { VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_SUCCESS, FORM_CHECKABLE_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
19
19
  // Styles
@@ -261,7 +261,7 @@ let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
261
261
  };
262
262
  }
263
263
  get ariaLabelText() {
264
- return getEffectiveAriaLabelText(this);
264
+ return getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);
265
265
  }
266
266
  get classes() {
267
267
  return {
@@ -311,6 +311,16 @@ let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
311
311
  get isDisplayOnly() {
312
312
  return this.displayOnly && !this.disabled;
313
313
  }
314
+ get accInfo() {
315
+ return {
316
+ "role": this._accInfo ? this._accInfo.role : "checkbox",
317
+ "ariaChecked": this._accInfo ? this._accInfo.ariaChecked : this.effectiveAriaChecked,
318
+ "ariaReadonly": this._accInfo ? this._accInfo.ariaReadonly : this.ariaReadonly,
319
+ "ariaDisabled": this._accInfo ? this._accInfo.ariaDisabled : this.effectiveAriaDisabled,
320
+ "ariaRequired": this._accInfo ? this._accInfo.ariaRequired : this.required,
321
+ "tabindex": this._accInfo ? this._accInfo.tabindex : this.effectiveTabIndex,
322
+ };
323
+ }
314
324
  };
315
325
  __decorate([
316
326
  property()
@@ -354,6 +364,9 @@ __decorate([
354
364
  __decorate([
355
365
  property({ type: Boolean })
356
366
  ], CheckBox.prototype, "active", void 0);
367
+ __decorate([
368
+ property({ type: Object })
369
+ ], CheckBox.prototype, "_accInfo", void 0);
357
370
  __decorate([
358
371
  i18n("@ui5/webcomponents")
359
372
  ], CheckBox, "i18nBundle", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.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/AccessibilityTextsHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tFORM_CHECKABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\n\n// Template\nimport CheckBoxTemplate from \"./CheckBoxTemplate.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to truncate, set the `wrappingType` property to \"None\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n})\n/**\n * Fired when the component checked state changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired to make Angular two way data binding work properly.\n * @private\n */\n@event(\"value-changed\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass CheckBox extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": void,\n\t\t\"value-changed\": void,\n\t};\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default undefined\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = 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 * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * **Note:** We advise against using the text property of the checkbox when there is a\n\t * label associated with it to avoid having two required asterisks.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate = false;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked = 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 * 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 * **Note:** for option \"None\" the text will be truncated with an ellipsis.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\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 form value of the component that is submitted when the checkbox is checked.\n\t *\n\t * When a form containing `ui5-checkbox` elements is submitted, only the values of the\n\t * **checked** checkboxes are included in the form data sent to the server. Unchecked\n\t * checkboxes do not contribute any data to the form submission.\n\t *\n\t * This property is particularly useful for **checkbox groups**, where multiple checkboxes with the same `name` but different `value` properties can be used to represent a set of related options.\n\t *\n\t * @default \"on\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"on\";\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tget formValidityMessage() {\n\t\treturn CheckBox.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.checked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? this.value : null;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireDecoratorEvent(\"change\");\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChangePrevented = !this.fireDecoratorEvent(\"value-changed\");\n\n\t\t\tif (changePrevented || valueChangePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.tabbable) {\n\t\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t\t}\n\t}\n\n\tget tabbable() {\n\t\treturn !this.disabled && !this.displayOnly;\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
1
+ {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport type {\n\tAriaRole,\n\tAriaChecked,\n\tAriaDisabled,\n\tAriaReadonly,\n} from \"@ui5/webcomponents-base/dist/types.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tFORM_CHECKABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\n\n// Template\nimport CheckBoxTemplate from \"./CheckBoxTemplate.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\ntype CheckBoxAccInfo = {\n\trole?: AriaRole,\n\tariaChecked?: AriaChecked,\n\tariaReadonly?: AriaReadonly,\n\tariaDisabled?: AriaDisabled,\n\tariaRequired?: boolean,\n\ttabindex?: number | undefined,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to truncate, set the `wrappingType` property to \"None\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n})\n/**\n * Fired when the component checked state changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired to make Angular two way data binding work properly.\n * @private\n */\n@event(\"value-changed\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass CheckBox extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": void,\n\t\t\"value-changed\": void,\n\t};\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default undefined\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = 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 * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * **Note:** We advise against using the text property of the checkbox when there is a\n\t * label associated with it to avoid having two required asterisks.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate = false;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked = 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 * 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 * **Note:** for option \"None\" the text will be truncated with an ellipsis.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\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 form value of the component that is submitted when the checkbox is checked.\n\t *\n\t * When a form containing `ui5-checkbox` elements is submitted, only the values of the\n\t * **checked** checkboxes are included in the form data sent to the server. Unchecked\n\t * checkboxes do not contribute any data to the form submission.\n\t *\n\t * This property is particularly useful for **checkbox groups**, where multiple checkboxes with the same `name` but different `value` properties can be used to represent a set of related options.\n\t *\n\t * @default \"on\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"on\";\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Defines custom aria implementation object.\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_accInfo?: CheckBoxAccInfo;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tget formValidityMessage() {\n\t\treturn CheckBox.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.checked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? this.value : null;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireDecoratorEvent(\"change\");\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChangePrevented = !this.fireDecoratorEvent(\"value-changed\");\n\n\t\t\tif (changePrevented || valueChangePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.tabbable) {\n\t\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t\t}\n\t}\n\n\tget tabbable() {\n\t\treturn !this.disabled && !this.displayOnly;\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"role\": this._accInfo ? this._accInfo.role : \"checkbox\" as AriaRole,\n\t\t\t\"ariaChecked\": this._accInfo ? this._accInfo.ariaChecked : this.effectiveAriaChecked as AriaChecked,\n\t\t\t\"ariaReadonly\": this._accInfo ? this._accInfo.ariaReadonly : this.ariaReadonly as AriaReadonly,\n\t\t\t\"ariaDisabled\": this._accInfo ? this._accInfo.ariaDisabled : this.effectiveAriaDisabled as AriaDisabled,\n\t\t\t\"ariaRequired\": this._accInfo ? this._accInfo.ariaRequired : this.required,\n\t\t\t\"tabindex\": this._accInfo ? this._accInfo.tabindex : this.effectiveTabIndex,\n\t\t};\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
@@ -10,11 +10,12 @@ export default function CheckBoxTemplate() {
10
10
  return (_jsxs("div", { class: {
11
11
  "ui5-checkbox-root": true,
12
12
  "ui5-checkbox--hoverable": !this.disabled && !this.readonly && isDesktop(),
13
- }, role: "checkbox", part: "root", "aria-checked": this.effectiveAriaChecked, "aria-readonly": this.ariaReadonly, "aria-disabled": this.effectiveAriaDisabled, "aria-label": this.ariaLabelText, "aria-labelledby": this.ariaLabelledBy, "aria-describedby": this.ariaDescribedBy, "aria-required": this.required, tabindex: this.effectiveTabIndex, onMouseDown: this._onmousedown, onMouseUp: this._onmouseup, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onFocusOut: this._onfocusout, children: [this.isDisplayOnly ?
13
+ }, role: this.accInfo.role, part: "root", "aria-checked": this.accInfo.ariaChecked, "aria-readonly": this.accInfo.ariaReadonly, "aria-disabled": this.accInfo.ariaDisabled, "aria-label": this.ariaLabelText, "aria-labelledby": this.ariaLabelledBy, "aria-describedby": this.ariaDescribedBy, "aria-required": this.accInfo.ariaRequired, tabindex: this.accInfo.tabindex, onMouseDown: this._onmousedown, onMouseUp: this._onmouseup, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onFocusOut: this._onfocusout, children: [this.isDisplayOnly ?
14
14
  _jsx("div", { class: "ui5-checkbox-display-only-icon-inner", children: _jsx(Icon, { "aria-hidden": "true", name: displayOnlyIcon.call(this), class: "ui5-checkbox-display-only-icon", part: "icon" }) })
15
15
  :
16
16
  _jsx("div", { id: `${this._id}-CbBg`, class: "ui5-checkbox-inner", children: this.isCompletelyChecked &&
17
- _jsx(Icon, { "aria-hidden": "true", name: accept, class: "ui5-checkbox-icon", part: "icon" }) }), _jsx("input", { id: `${this._id}-CB`, type: "checkbox", checked: this.checked, value: this.value, readonly: this.readonly, disabled: this.disabled, tabindex: -1, "aria-hidden": "true", "data-sap-no-tab-ref": true }), this.text &&
17
+ _jsx(Icon, { "aria-hidden": "true", name: accept, class: "ui5-checkbox-icon", part: "icon" }) }), this.accInfo.role === "checkbox" &&
18
+ _jsx("input", { id: `${this._id}-CB`, type: "checkbox", checked: this.checked, value: this.value, readonly: this.readonly, disabled: this.disabled, tabindex: -1, "aria-hidden": "true", "data-sap-no-tab-ref": true }), this.text &&
18
19
  _jsx(Label, { id: `${this._id}-label`, part: "label", class: "ui5-checkbox-label", wrappingType: this.wrappingType, required: this.required, children: this.text }), this.hasValueState &&
19
20
  _jsx("span", { id: `${this._id}-descr`, class: "ui5-hidden-text", children: this.valueStateText })] }));
20
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CheckBoxTemplate.js","sourceRoot":"","sources":["../src/CheckBoxTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,yCAAyC,CAAC;AAC7D,OAAO,QAAQ,MAAM,2CAA2C,CAAC;AACjE,OAAO,MAAM,MAAM,yCAAyC,CAAC;AAC7D,OAAO,QAAQ,MAAM,4CAA4C,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,gBAAgB;IACvC,OAAO,CACN,eACC,KAAK,EAAE;YACN,mBAAmB,EAAE,IAAI;YACzB,yBAAyB,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;SAC1E,EACD,IAAI,EAAC,UAAU,EACf,IAAI,EAAC,MAAM,kBACG,IAAI,CAAC,oBAAoB,mBACxB,IAAI,CAAC,YAAY,mBACjB,IAAI,CAAC,qBAAqB,gBAC7B,IAAI,CAAC,aAAa,qBACb,IAAI,CAAC,cAAc,sBAClB,IAAI,CAAC,eAAe,mBACvB,IAAI,CAAC,QAAQ,EAC5B,QAAQ,EAAE,IAAI,CAAC,iBAAiB,EAChC,WAAW,EAAE,IAAI,CAAC,YAAY,EAC9B,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,UAAU,EAAE,IAAI,CAAC,WAAW,aAG3B,IAAI,CAAC,aAAa,CAAC,CAAC;gBACpB,cAAK,KAAK,EAAC,sCAAsC,YAChD,KAAC,IAAI,mBAAa,MAAM,EAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,MAAM,GAAE,GAC1G;gBACN,CAAC;oBACD,cAAK,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,EAAE,KAAK,EAAC,oBAAoB,YACrD,IAAI,CAAC,mBAAmB;4BACzB,KAAC,IAAI,mBAAa,MAAM,EAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAC,mBAAmB,EAAC,IAAI,EAAC,MAAM,GAAE,GAEzE,EAGP,gBACC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,EACpB,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,CAAC,CAAC,iBACA,MAAM,gCAEjB,EAED,IAAI,CAAC,IAAI;gBACV,KAAC,KAAK,IACL,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,EACvB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAC,oBAAoB,EAC1B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,YAEtB,IAAI,CAAC,IAAI,GACH,EAGP,IAAI,CAAC,aAAa;gBACnB,eAAM,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE,KAAK,EAAC,iBAAiB,YAAE,IAAI,CAAC,cAAc,GAAQ,IAE9E,CACN,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACvB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\n\nimport type CheckBox from \"./CheckBox.js\";\nimport Label from \"./Label.js\";\nimport Icon from \"./Icon.js\";\nimport accept from \"@ui5/webcomponents-icons/dist/accept.js\";\nimport complete from \"@ui5/webcomponents-icons/dist/complete.js\";\nimport border from \"@ui5/webcomponents-icons/dist/border.js\";\nimport triState from \"@ui5/webcomponents-icons/dist/tri-state.js\";\n\nexport default function CheckBoxTemplate(this: CheckBox) {\n\treturn (\n\t\t<div\n\t\t\tclass={{\n\t\t\t\t\"ui5-checkbox-root\": true,\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t}}\n\t\t\trole=\"checkbox\"\n\t\t\tpart=\"root\"\n\t\t\taria-checked={this.effectiveAriaChecked}\n\t\t\taria-readonly={this.ariaReadonly}\n\t\t\taria-disabled={this.effectiveAriaDisabled}\n\t\t\taria-label={this.ariaLabelText}\n\t\t\taria-labelledby={this.ariaLabelledBy}\n\t\t\taria-describedby={this.ariaDescribedBy}\n\t\t\taria-required={this.required}\n\t\t\ttabindex={this.effectiveTabIndex}\n\t\t\tonMouseDown={this._onmousedown}\n\t\t\tonMouseUp={this._onmouseup}\n\t\t\tonKeyDown={this._onkeydown}\n\t\t\tonKeyUp={this._onkeyup}\n\t\t\tonClick={this._onclick}\n\t\t\tonFocusOut={this._onfocusout}\n\t\t>\n\n\t\t\t{this.isDisplayOnly ?\n\t\t\t\t<div class=\"ui5-checkbox-display-only-icon-inner\">\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={displayOnlyIcon.call(this)} class=\"ui5-checkbox-display-only-icon\" part=\"icon\"/>\n\t\t\t\t</div>\n\t\t\t\t:\n\t\t\t\t<div id={`${this._id}-CbBg`} class=\"ui5-checkbox-inner\">\n\t\t\t\t\t{this.isCompletelyChecked &&\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={accept} class=\"ui5-checkbox-icon\" part=\"icon\"/>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t<input\n\t\t\t\tid={`${this._id}-CB`}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tchecked={this.checked}\n\t\t\t\tvalue={this.value}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\ttabindex={-1}\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tdata-sap-no-tab-ref\n\t\t\t/>\n\n\t\t\t{this.text &&\n\t\t\t<Label\n\t\t\t\tid={`${this._id}-label`}\n\t\t\t\tpart=\"label\"\n\t\t\t\tclass=\"ui5-checkbox-label\"\n\t\t\t\twrappingType={this.wrappingType}\n\t\t\t\trequired={this.required}\n\t\t\t>\n\t\t\t\t{this.text}\n\t\t\t</Label>\n\t\t\t}\n\n\t\t\t{this.hasValueState &&\n\t\t\t<span id={`${this._id}-descr`} class=\"ui5-hidden-text\">{this.valueStateText}</span>\n\t\t\t}\n\t\t</div>\n\t);\n}\n\nfunction displayOnlyIcon(this: CheckBox) {\n\tif (this.isCompletelyChecked) {\n\t\treturn complete;\n\t}\n\tif (this.checked && this.indeterminate) {\n\t\treturn triState;\n\t}\n\treturn border;\n}\n"]}
1
+ {"version":3,"file":"CheckBoxTemplate.js","sourceRoot":"","sources":["../src/CheckBoxTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\n\nimport type CheckBox from \"./CheckBox.js\";\nimport Label from \"./Label.js\";\nimport Icon from \"./Icon.js\";\nimport accept from \"@ui5/webcomponents-icons/dist/accept.js\";\nimport complete from \"@ui5/webcomponents-icons/dist/complete.js\";\nimport border from \"@ui5/webcomponents-icons/dist/border.js\";\nimport triState from \"@ui5/webcomponents-icons/dist/tri-state.js\";\n\nexport default function CheckBoxTemplate(this: CheckBox) {\n\treturn (\n\t\t<div\n\t\t\tclass={{\n\t\t\t\t\"ui5-checkbox-root\": true,\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t}}\n\t\t\trole={this.accInfo.role}\n\t\t\tpart=\"root\"\n\t\t\taria-checked={this.accInfo.ariaChecked}\n\t\t\taria-readonly={this.accInfo.ariaReadonly}\n\t\t\taria-disabled={this.accInfo.ariaDisabled}\n\t\t\taria-label={this.ariaLabelText}\n\t\t\taria-labelledby={this.ariaLabelledBy}\n\t\t\taria-describedby={this.ariaDescribedBy}\n\t\t\taria-required={this.accInfo.ariaRequired}\n\t\t\ttabindex={this.accInfo.tabindex}\n\t\t\tonMouseDown={this._onmousedown}\n\t\t\tonMouseUp={this._onmouseup}\n\t\t\tonKeyDown={this._onkeydown}\n\t\t\tonKeyUp={this._onkeyup}\n\t\t\tonClick={this._onclick}\n\t\t\tonFocusOut={this._onfocusout}\n\t\t>\n\n\t\t\t{this.isDisplayOnly ?\n\t\t\t\t<div class=\"ui5-checkbox-display-only-icon-inner\">\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={displayOnlyIcon.call(this)} class=\"ui5-checkbox-display-only-icon\" part=\"icon\"/>\n\t\t\t\t</div>\n\t\t\t\t:\n\t\t\t\t<div id={`${this._id}-CbBg`} class=\"ui5-checkbox-inner\">\n\t\t\t\t\t{this.isCompletelyChecked &&\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={accept} class=\"ui5-checkbox-icon\" part=\"icon\"/>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t{this.accInfo.role === \"checkbox\" &&\n\t\t\t<input\n\t\t\t\tid={`${this._id}-CB`}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tchecked={this.checked}\n\t\t\t\tvalue={this.value}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\ttabindex={-1}\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tdata-sap-no-tab-ref\n\t\t\t/>\n\t\t\t}\n\n\t\t\t{this.text &&\n\t\t\t<Label\n\t\t\t\tid={`${this._id}-label`}\n\t\t\t\tpart=\"label\"\n\t\t\t\tclass=\"ui5-checkbox-label\"\n\t\t\t\twrappingType={this.wrappingType}\n\t\t\t\trequired={this.required}\n\t\t\t>\n\t\t\t\t{this.text}\n\t\t\t</Label>\n\t\t\t}\n\n\t\t\t{this.hasValueState &&\n\t\t\t<span id={`${this._id}-descr`} class=\"ui5-hidden-text\">{this.valueStateText}</span>\n\t\t\t}\n\t\t</div>\n\t);\n}\n\nfunction displayOnlyIcon(this: CheckBox) {\n\tif (this.isCompletelyChecked) {\n\t\treturn complete;\n\t}\n\tif (this.checked && this.indeterminate) {\n\t\treturn triState;\n\t}\n\treturn border;\n}\n"]}
@@ -113,18 +113,21 @@ declare class FileUploader extends UI5Element implements IFormInputElement {
113
113
  * Defines whether the component is required.
114
114
  * @default false
115
115
  * @public
116
+ * @since 2.13.0
116
117
  */
117
118
  required: boolean;
118
119
  /**
119
120
  * Defines the accessible ARIA name of the component.
120
121
  * @default undefined
121
122
  * @public
123
+ * @since 2.13.0
122
124
  */
123
125
  accessibleName?: string;
124
126
  /**
125
127
  * Receives id(or many ids) of the elements that label the input.
126
128
  * @default undefined
127
129
  * @public
130
+ * @since 2.13.0
128
131
  */
129
132
  accessibleNameRef?: string;
130
133
  /**
@@ -136,7 +139,7 @@ declare class FileUploader extends UI5Element implements IFormInputElement {
136
139
  *
137
140
  * **Note:** For best accessibility experience, set a `tabindex` of "-1" on your interactive element, or it will be set automatically.
138
141
  * This slot is intended for use cases where you want a button-only file uploader.
139
- * It is recommended to set the `hideInput` property to "true" when using this slot.
142
+ * It is recommended to set `hideInput` property to "true" when using this slot.
140
143
  * Not setting `hideInput` may negatively impact the screen reader users.
141
144
  * @public
142
145
  */
@@ -91,6 +91,7 @@ let FileUploader = FileUploader_1 = class FileUploader extends UI5Element {
91
91
  * Defines whether the component is required.
92
92
  * @default false
93
93
  * @public
94
+ * @since 2.13.0
94
95
  */
95
96
  this.required = false;
96
97
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploader.js","sourceRoot":"","sources":["../src/FileUploader.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-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport query from \"@ui5/webcomponents-base/dist/decorators/query.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetAllAccessibleNameRefTexts,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisUpAlt,\n\tisDownAlt,\n\tisEnter,\n\tisDelete,\n\tisF4,\n\tisSpace,\n\tisRight,\n\tisLeft,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tFILEUPLOADER_INPUT_TOOLTIP,\n\tFILEUPLOADER_VALUE_HELP_TOOLTIP,\n\tFILEUPLOADER_CLEAR_ICON_TOOLTIP,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tFILEUPLOADER_DEFAULT_PLACEHOLDER,\n\tFILEUPLOADER_DEFAULT_MULTIPLE_PLACEHOLDER,\n\tFILEUPLOADER_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport type { InputAccInfo } from \"./Input.js\";\nimport type Popover from \"./Popover.js\";\nimport type Tokenizer from \"./Tokenizer.js\";\n\n// Template\nimport FileUploaderTemplate from \"./FileUploaderTemplate.js\";\n\n// Styles\nimport FileUploaderCss from \"./generated/themes/FileUploader.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\nconst convertBytesToMegabytes = (bytes: number) => (bytes / 1024) / 1024;\n\ntype FileData = {\n\tfileName: string,\n\tfileSize: number,\n}\n\ntype FileUploaderFileSizeExceedEventDetail = {\n\tfilesData: Array<FileData>,\n}\n\ntype FileUploaderChangeEventDetail = {\n\tfiles: FileList | null,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-file-uploader` opens a file explorer dialog and enables users to upload files.\n * The component consists of input field, but you can provide an HTML element by your choice\n * to trigger the file upload, by using the default slot.\n * Furthermore, you can set the property \"hideInput\" to \"true\" to hide the input field.\n *\n * To get all selected files, you can simply use the read-only \"files\" property.\n * To restrict the types of files the user can select, you can use the \"accept\" property.\n *\n * And, similar to all input based components, the FileUploader supports \"valueState\", \"placeholder\", \"name\", and \"disabled\" properties.\n *\n * For the `ui5-file-uploader`\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/FileUploader.js\";`\n * @constructor\n * @since 1.0.0-rc.6\n * @extends UI5Element\n * @public\n */\n@customElement({\n\ttag: \"ui5-file-uploader\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\tstyles: [\n\t\tFileUploaderCss,\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t],\n\ttemplate: FileUploaderTemplate,\n})\n/**\n * Event is fired when the value of the file path has been changed.\n *\n * **Note:** Keep in mind that because of the HTML input element of type file, the event is also fired in Chrome browser when the Cancel button of the uploads window is pressed.\n * @param {FileList | null} files The current files.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n/**\n * Event is fired when the size of a file is above the `maxFileSize` property value.\n * @param {Array<FileData>} filesData An array of `FileData` objects containing the`fileName` and `fileSize` in MB of each file that exceeds the upload limit.\n * @since 2.2.0\n * @public\n */\n@event(\"file-size-exceed\", {\n\tbubbles: true,\n})\nclass FileUploader extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": FileUploaderChangeEventDetail,\n\t\t\"file-size-exceed\": FileUploaderFileSizeExceedEventDetail,\n\t}\n\t/**\n\t * Comma-separated list of file types that the component should accept.\n\t *\n\t * **Note:** Please make sure you are adding the `.` in front on the file type, e.g. `.png` in case you want to accept png's only.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccept?: string;\n\n\t/**\n\t * If set to \"true\", the input field of component will not be rendered. Only the default slot that is passed will be rendered.\n\t *\n\t * **Note:** Use this property in combination with the default slot to achieve a button-only file uploader design.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideInput = false;\n\n\t/**\n\t * Defines whether the component is in disabled state.\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 * Allows multiple files to be chosen.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tmultiple = 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 a short hint intended to aid the user with data entry when the component has no value.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Defines the name/names of the file/files to upload.\n\t * @default \"\"\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the maximum file size in megabytes which prevents the upload if at least one file exceeds it.\n\t * @default undefined\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tmaxFileSize?: number;\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 * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * This slot allows you to add custom content to the component, such as a button or any other interactive element to trigger the file selection dialog.\n\t *\n\t * **Note:** For best accessibility experience, set a `tabindex` of \"-1\" on your interactive element, or it will be set automatically.\n\t * This slot is intended for use cases where you want a button-only file uploader.\n\t * It is recommended to set the `hideInput` property to \"true\" when using this slot.\n\t * Not setting `hideInput` may negatively impact the screen reader users.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tcontent!: Array<HTMLElement>;\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 * @since 1.0.0-rc.9\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t@query(\".ui5-file-uploader-form\")\n\t_form!: HTMLFormElement;\n\n\t@query(\"input[type=file]\")\n\t_input!: HTMLInputElement;\n\n\t@query(\"[ui5-tokenizer]\")\n\t_tokenizer!: Tokenizer;\n\n\t@query(\".ui5-valuestatemessage-popover\")\n\t_messagePopover!: Popover;\n\n\t@property({ type: Array, noAttribute: true })\n\t_selectedFilesNames: Array<string> = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_tokenizerOpen = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_tokenizerExpanded = true;\n\n\tstatic emptyInput: HTMLInputElement;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tgetFocusDomRef(): HTMLElement | undefined {\n\t\treturn this._input;\n\t}\n\n\tget formFormattedValue() {\n\t\tif (this.files && this.name) {\n\t\t\tconst formData = new FormData();\n\n\t\t\tfor (let i = 0; i < this.files.length; i++) {\n\t\t\t\tformData.append(this.name, this.files[i]);\n\t\t\t}\n\n\t\t\treturn formData;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\t_onclick() {\n\t\tif (this.getFocusDomRef()?.matches(\":focus-within\")) {\n\t\t\tthis._openFileBrowser();\n\t\t}\n\t}\n\n\t_onNativeInputClick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\te.preventDefault();\n\t\tthis._input.focus();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst firstToken = this._tokenizer?.tokens.find(token => !token.hasAttribute(\"overflows\"));\n\t\tconst isToken = (<HTMLElement>e.target).hasAttribute(\"ui5-token\");\n\t\tconst isArrowNavigation = this.effectiveDir === \"ltr\" ? isRight(e) : isLeft(e);\n\n\t\tif (this.hideInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._openFileBrowser();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isArrowNavigation && !isToken) {\n\t\t\te.preventDefault();\n\t\t\tfirstToken?.focus();\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (this.hideInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isSpace(e) || isF4(e) || isUpAlt(e) || isDownAlt(e)) {\n\t\t\tthis._openFileBrowser();\n\t\t} else if (isDelete(e)) {\n\t\t\tthis._clearFileSelection();\n\t\t}\n\t}\n\n\t_ondrag(e: DragEvent) {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t}\n\n\t_ondrop(e: DragEvent) {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tconst files = e.dataTransfer?.files;\n\n\t\tif (!files) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst validatedFiles = this._validateFiles(files);\n\n\t\tif (!this.value && !validatedFiles.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._input.files = validatedFiles;\n\t\tthis._selectedFilesNames = this._fileNamesList(files);\n\t\tthis.value = this.computedValue;\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: validatedFiles,\n\t\t});\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t\tthis._tokenizerExpanded = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t\tthis._tokenizerExpanded = this._tokenizerOpen || false;\n\t}\n\n\t_onTokenizerKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isDelete(e)) {\n\t\t\te.stopPropagation();\n\t\t}\n\t}\n\n\t_onTokenizerKeyDown(e: KeyboardEvent) {\n\t\tconst firstToken = this._tokenizer?.tokens.find(token => !token.hasAttribute(\"overflows\"));\n\t\tconst isArrowNavigation = this.effectiveDir === \"ltr\" ? isLeft(e) : isRight(e);\n\n\t\tif (isEnter(e)) {\n\t\t\te.stopPropagation();\n\t\t}\n\n\t\tif (e.target === firstToken && isArrowNavigation) {\n\t\t\tthis._input.focus();\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onTokenizerClick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onTokenizerMouseDown(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onClearIconClick(e: CustomEvent) {\n\t\te.stopPropagation();\n\t\tthis._clearFileSelection();\n\t}\n\n\t_onFormSubmit(e: SubmitEvent) {\n\t\te.preventDefault();\n\t}\n\n\t_openFileBrowser() {\n\t\tthis._input.click();\n\t}\n\n\t_clearFileSelection() {\n\t\tthis._selectedFilesNames = [];\n\t\tthis.value = \"\";\n\t\tthis._form?.reset();\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: this.files,\n\t\t});\n\t}\n\n\t/**\n\t * FileList of all selected files.\n\t * @public\n\t * @default null\n\t */\n\tget files(): FileList | null {\n\t\tif (this._input) {\n\t\t\treturn this._input.files;\n\t\t}\n\n\t\treturn FileUploader._emptyFilesList;\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.value) {\n\t\t\tthis._input.value = \"\";\n\t\t}\n\n\t\tthis._tokenizerOpen = this._tokenizer?.open || false;\n\n\t\tif (this.hideInput && this.content.length > 0) {\n\t\t\tthis.content.forEach(element => {\n\t\t\t\telement.setAttribute(\"tabindex\", \"-1\");\n\t\t\t});\n\t\t}\n\n\t\tthis.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);\n\t}\n\n\tget computedValue(): string {\n\t\treturn this._selectedFilesNames.join(\" \");\n\t}\n\n\tget _formWidth() : number {\n\t\treturn this._form ? this._form.offsetWidth : 0;\n\t}\n\n\t_onChange(e: Event) {\n\t\tlet changedFiles = (e.target as HTMLInputElement).files;\n\n\t\tif (changedFiles) {\n\t\t\tchangedFiles = this._validateFiles(changedFiles);\n\t\t}\n\n\t\tif (!this.value && !changedFiles?.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedFilesNames = this._fileNamesList(changedFiles as FileList);\n\t\tthis.value = this.computedValue;\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: changedFiles,\n\t\t});\n\t}\n\n\t_fileNamesList(files: FileList) : Array<string> {\n\t\treturn Array.from(files)\n\t\t\t.map(file => file.name)\n\t\t\t.sort((a, b) => a.length - b.length); // workaround for incident #11824\n\t}\n\n\t/**\n\t * Checks whether all files are below `maxFileSize` (if set),\n\t * and fires a `file-size-exceed` event if any file exceeds it.\n\t * @private\n\t */\n\t_validateFiles(changedFiles: FileList): FileList {\n\t\tconst exceededFilesData = this.maxFileSize ? this._getExceededFiles(changedFiles) : [];\n\n\t\tif (exceededFilesData.length) {\n\t\t\tthis.fireDecoratorEvent(\"file-size-exceed\", {\n\t\t\t\tfilesData: exceededFilesData,\n\t\t\t});\n\t\t\tchangedFiles = new DataTransfer().files;\n\t\t}\n\n\t\treturn changedFiles;\n\t}\n\n\t_getExceededFiles(files: FileList): Array<FileData> {\n\t\tconst filesArray = Array.from(files);\n\t\tconst exceededFiles: Array<FileData> = [];\n\n\t\tfor (let i = 0; i < filesArray.length; i++) {\n\t\t\tconst fileSize = convertBytesToMegabytes(filesArray[i].size);\n\t\t\tif (fileSize > this.maxFileSize!) {\n\t\t\t\texceededFiles.push({\n\t\t\t\t\tfileName: filesArray[i].name,\n\t\t\t\t\tfileSize,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn exceededFiles;\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\topenValueStatePopover() {\n\t\tif (this._messagePopover) {\n\t\t\tthis._messagePopover.opener = this;\n\t\t\tthis._messagePopover.open = true;\n\t\t}\n\t}\n\n\tcloseValueStatePopover() {\n\t\tif (this._messagePopover) {\n\t\t\tthis._messagePopover.open = false;\n\t\t}\n\t}\n\n\t/**\n\t * in case when the component is not placed in the DOM, return empty FileList, like native input would do\n\t * @private\n\t */\n\tstatic get _emptyFilesList() {\n\t\tif (!this.emptyInput) {\n\t\t\tthis.emptyInput = document.createElement(\"input\");\n\t\t\tthis.emptyInput.type = \"file\";\n\t\t}\n\t\treturn this.emptyInput.files;\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": FileUploader.i18nBundle.getText(FILEUPLOADER_ROLE_DESCRIPTION),\n\t\t\t\"ariaRequired\": this.required || undefined,\n\t\t\t\"ariaInvalid\": this.valueState === ValueState.Negative || undefined,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaLabel\": getAllAccessibleNameRefTexts(this) || getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined,\n\t\t};\n\t}\n\n\tget inputTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_INPUT_TOOLTIP);\n\t}\n\n\tget valueHelpTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_VALUE_HELP_TOOLTIP);\n\t}\n\n\tget clearIconTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_CLEAR_ICON_TOOLTIP);\n\t}\n\n\tget resolvedPlaceholder(): string {\n\t\tconst singlePlaceholder = FileUploader.i18nBundle.getText(FILEUPLOADER_DEFAULT_PLACEHOLDER);\n\t\tconst multiplePlaceholder = FileUploader.i18nBundle.getText(FILEUPLOADER_DEFAULT_MULTIPLE_PLACEHOLDER);\n\t\treturn this.placeholder ?? (this.multiple ? multiplePlaceholder : singlePlaceholder);\n\t}\n\n\tget valueStateTextMappings(): Record<string, string> {\n\t\treturn {\n\t\t\t\"Positive\": FileUploader.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": FileUploader.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Negative\": FileUploader.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": FileUploader.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateText(): string {\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !this.valueStateMessage.length && this.hasValueState;\n\t}\n\n\tget shouldOpenValueStateMessagePopover(): boolean {\n\t\treturn this.focused && this.hasValueState && !this.hideInput && !this._tokenizerOpen;\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon(): string {\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\nFileUploader.define();\n\nexport default FileUploader;\nexport type {\n\tFileData,\n\tFileUploaderChangeEventDetail,\n\tFileUploaderFileSizeExceedEventDetail,\n};\n"]}
1
+ {"version":3,"file":"FileUploader.js","sourceRoot":"","sources":["../src/FileUploader.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-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport query from \"@ui5/webcomponents-base/dist/decorators/query.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tgetAllAccessibleNameRefTexts,\n} from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisUpAlt,\n\tisDownAlt,\n\tisEnter,\n\tisDelete,\n\tisF4,\n\tisSpace,\n\tisRight,\n\tisLeft,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport {\n\tFILEUPLOADER_INPUT_TOOLTIP,\n\tFILEUPLOADER_VALUE_HELP_TOOLTIP,\n\tFILEUPLOADER_CLEAR_ICON_TOOLTIP,\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tFILEUPLOADER_DEFAULT_PLACEHOLDER,\n\tFILEUPLOADER_DEFAULT_MULTIPLE_PLACEHOLDER,\n\tFILEUPLOADER_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport type { InputAccInfo } from \"./Input.js\";\nimport type Popover from \"./Popover.js\";\nimport type Tokenizer from \"./Tokenizer.js\";\n\n// Template\nimport FileUploaderTemplate from \"./FileUploaderTemplate.js\";\n\n// Styles\nimport FileUploaderCss from \"./generated/themes/FileUploader.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\nconst convertBytesToMegabytes = (bytes: number) => (bytes / 1024) / 1024;\n\ntype FileData = {\n\tfileName: string,\n\tfileSize: number,\n}\n\ntype FileUploaderFileSizeExceedEventDetail = {\n\tfilesData: Array<FileData>,\n}\n\ntype FileUploaderChangeEventDetail = {\n\tfiles: FileList | null,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-file-uploader` opens a file explorer dialog and enables users to upload files.\n * The component consists of input field, but you can provide an HTML element by your choice\n * to trigger the file upload, by using the default slot.\n * Furthermore, you can set the property \"hideInput\" to \"true\" to hide the input field.\n *\n * To get all selected files, you can simply use the read-only \"files\" property.\n * To restrict the types of files the user can select, you can use the \"accept\" property.\n *\n * And, similar to all input based components, the FileUploader supports \"valueState\", \"placeholder\", \"name\", and \"disabled\" properties.\n *\n * For the `ui5-file-uploader`\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/FileUploader.js\";`\n * @constructor\n * @since 1.0.0-rc.6\n * @extends UI5Element\n * @public\n */\n@customElement({\n\ttag: \"ui5-file-uploader\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\tstyles: [\n\t\tFileUploaderCss,\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t],\n\ttemplate: FileUploaderTemplate,\n})\n/**\n * Event is fired when the value of the file path has been changed.\n *\n * **Note:** Keep in mind that because of the HTML input element of type file, the event is also fired in Chrome browser when the Cancel button of the uploads window is pressed.\n * @param {FileList | null} files The current files.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n/**\n * Event is fired when the size of a file is above the `maxFileSize` property value.\n * @param {Array<FileData>} filesData An array of `FileData` objects containing the`fileName` and `fileSize` in MB of each file that exceeds the upload limit.\n * @since 2.2.0\n * @public\n */\n@event(\"file-size-exceed\", {\n\tbubbles: true,\n})\nclass FileUploader extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": FileUploaderChangeEventDetail,\n\t\t\"file-size-exceed\": FileUploaderFileSizeExceedEventDetail,\n\t}\n\t/**\n\t * Comma-separated list of file types that the component should accept.\n\t *\n\t * **Note:** Please make sure you are adding the `.` in front on the file type, e.g. `.png` in case you want to accept png's only.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccept?: string;\n\n\t/**\n\t * If set to \"true\", the input field of component will not be rendered. Only the default slot that is passed will be rendered.\n\t *\n\t * **Note:** Use this property in combination with the default slot to achieve a button-only file uploader design.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideInput = false;\n\n\t/**\n\t * Defines whether the component is in disabled state.\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 * Allows multiple files to be chosen.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tmultiple = 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 a short hint intended to aid the user with data entry when the component has no value.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Defines the name/names of the file/files to upload.\n\t * @default \"\"\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Defines the maximum file size in megabytes which prevents the upload if at least one file exceeds it.\n\t * @default undefined\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tmaxFileSize?: number;\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 * @default false\n\t * @public\n\t * @since 2.13.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.13.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t * @since 2.13.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * This slot allows you to add custom content to the component, such as a button or any other interactive element to trigger the file selection dialog.\n\t *\n\t * **Note:** For best accessibility experience, set a `tabindex` of \"-1\" on your interactive element, or it will be set automatically.\n\t * This slot is intended for use cases where you want a button-only file uploader.\n\t * It is recommended to set `hideInput` property to \"true\" when using this slot.\n\t * Not setting `hideInput` may negatively impact the screen reader users.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tcontent!: Array<HTMLElement>;\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 * @since 1.0.0-rc.9\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t@query(\".ui5-file-uploader-form\")\n\t_form!: HTMLFormElement;\n\n\t@query(\"input[type=file]\")\n\t_input!: HTMLInputElement;\n\n\t@query(\"[ui5-tokenizer]\")\n\t_tokenizer!: Tokenizer;\n\n\t@query(\".ui5-valuestatemessage-popover\")\n\t_messagePopover!: Popover;\n\n\t@property({ type: Array, noAttribute: true })\n\t_selectedFilesNames: Array<string> = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_tokenizerOpen = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_tokenizerExpanded = true;\n\n\tstatic emptyInput: HTMLInputElement;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tgetFocusDomRef(): HTMLElement | undefined {\n\t\treturn this._input;\n\t}\n\n\tget formFormattedValue() {\n\t\tif (this.files && this.name) {\n\t\t\tconst formData = new FormData();\n\n\t\t\tfor (let i = 0; i < this.files.length; i++) {\n\t\t\t\tformData.append(this.name, this.files[i]);\n\t\t\t}\n\n\t\t\treturn formData;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\t_onclick() {\n\t\tif (this.getFocusDomRef()?.matches(\":focus-within\")) {\n\t\t\tthis._openFileBrowser();\n\t\t}\n\t}\n\n\t_onNativeInputClick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\te.preventDefault();\n\t\tthis._input.focus();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst firstToken = this._tokenizer?.tokens.find(token => !token.hasAttribute(\"overflows\"));\n\t\tconst isToken = (<HTMLElement>e.target).hasAttribute(\"ui5-token\");\n\t\tconst isArrowNavigation = this.effectiveDir === \"ltr\" ? isRight(e) : isLeft(e);\n\n\t\tif (this.hideInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._openFileBrowser();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isArrowNavigation && !isToken) {\n\t\t\te.preventDefault();\n\t\t\tfirstToken?.focus();\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (this.hideInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isSpace(e) || isF4(e) || isUpAlt(e) || isDownAlt(e)) {\n\t\t\tthis._openFileBrowser();\n\t\t} else if (isDelete(e)) {\n\t\t\tthis._clearFileSelection();\n\t\t}\n\t}\n\n\t_ondrag(e: DragEvent) {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t}\n\n\t_ondrop(e: DragEvent) {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tconst files = e.dataTransfer?.files;\n\n\t\tif (!files) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst validatedFiles = this._validateFiles(files);\n\n\t\tif (!this.value && !validatedFiles.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._input.files = validatedFiles;\n\t\tthis._selectedFilesNames = this._fileNamesList(files);\n\t\tthis.value = this.computedValue;\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: validatedFiles,\n\t\t});\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t\tthis._tokenizerExpanded = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t\tthis._tokenizerExpanded = this._tokenizerOpen || false;\n\t}\n\n\t_onTokenizerKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isDelete(e)) {\n\t\t\te.stopPropagation();\n\t\t}\n\t}\n\n\t_onTokenizerKeyDown(e: KeyboardEvent) {\n\t\tconst firstToken = this._tokenizer?.tokens.find(token => !token.hasAttribute(\"overflows\"));\n\t\tconst isArrowNavigation = this.effectiveDir === \"ltr\" ? isLeft(e) : isRight(e);\n\n\t\tif (isEnter(e)) {\n\t\t\te.stopPropagation();\n\t\t}\n\n\t\tif (e.target === firstToken && isArrowNavigation) {\n\t\t\tthis._input.focus();\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onTokenizerClick(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onTokenizerMouseDown(e: MouseEvent) {\n\t\te.stopPropagation();\n\t}\n\n\t_onClearIconClick(e: CustomEvent) {\n\t\te.stopPropagation();\n\t\tthis._clearFileSelection();\n\t}\n\n\t_onFormSubmit(e: SubmitEvent) {\n\t\te.preventDefault();\n\t}\n\n\t_openFileBrowser() {\n\t\tthis._input.click();\n\t}\n\n\t_clearFileSelection() {\n\t\tthis._selectedFilesNames = [];\n\t\tthis.value = \"\";\n\t\tthis._form?.reset();\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: this.files,\n\t\t});\n\t}\n\n\t/**\n\t * FileList of all selected files.\n\t * @public\n\t * @default null\n\t */\n\tget files(): FileList | null {\n\t\tif (this._input) {\n\t\t\treturn this._input.files;\n\t\t}\n\n\t\treturn FileUploader._emptyFilesList;\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.value) {\n\t\t\tthis._input.value = \"\";\n\t\t}\n\n\t\tthis._tokenizerOpen = this._tokenizer?.open || false;\n\n\t\tif (this.hideInput && this.content.length > 0) {\n\t\t\tthis.content.forEach(element => {\n\t\t\t\telement.setAttribute(\"tabindex\", \"-1\");\n\t\t\t});\n\t\t}\n\n\t\tthis.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);\n\t}\n\n\tget computedValue(): string {\n\t\treturn this._selectedFilesNames.join(\" \");\n\t}\n\n\tget _formWidth() : number {\n\t\treturn this._form ? this._form.offsetWidth : 0;\n\t}\n\n\t_onChange(e: Event) {\n\t\tlet changedFiles = (e.target as HTMLInputElement).files;\n\n\t\tif (changedFiles) {\n\t\t\tchangedFiles = this._validateFiles(changedFiles);\n\t\t}\n\n\t\tif (!this.value && !changedFiles?.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedFilesNames = this._fileNamesList(changedFiles as FileList);\n\t\tthis.value = this.computedValue;\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\tfiles: changedFiles,\n\t\t});\n\t}\n\n\t_fileNamesList(files: FileList) : Array<string> {\n\t\treturn Array.from(files)\n\t\t\t.map(file => file.name)\n\t\t\t.sort((a, b) => a.length - b.length); // workaround for incident #11824\n\t}\n\n\t/**\n\t * Checks whether all files are below `maxFileSize` (if set),\n\t * and fires a `file-size-exceed` event if any file exceeds it.\n\t * @private\n\t */\n\t_validateFiles(changedFiles: FileList): FileList {\n\t\tconst exceededFilesData = this.maxFileSize ? this._getExceededFiles(changedFiles) : [];\n\n\t\tif (exceededFilesData.length) {\n\t\t\tthis.fireDecoratorEvent(\"file-size-exceed\", {\n\t\t\t\tfilesData: exceededFilesData,\n\t\t\t});\n\t\t\tchangedFiles = new DataTransfer().files;\n\t\t}\n\n\t\treturn changedFiles;\n\t}\n\n\t_getExceededFiles(files: FileList): Array<FileData> {\n\t\tconst filesArray = Array.from(files);\n\t\tconst exceededFiles: Array<FileData> = [];\n\n\t\tfor (let i = 0; i < filesArray.length; i++) {\n\t\t\tconst fileSize = convertBytesToMegabytes(filesArray[i].size);\n\t\t\tif (fileSize > this.maxFileSize!) {\n\t\t\t\texceededFiles.push({\n\t\t\t\t\tfileName: filesArray[i].name,\n\t\t\t\t\tfileSize,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn exceededFiles;\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\topenValueStatePopover() {\n\t\tif (this._messagePopover) {\n\t\t\tthis._messagePopover.opener = this;\n\t\t\tthis._messagePopover.open = true;\n\t\t}\n\t}\n\n\tcloseValueStatePopover() {\n\t\tif (this._messagePopover) {\n\t\t\tthis._messagePopover.open = false;\n\t\t}\n\t}\n\n\t/**\n\t * in case when the component is not placed in the DOM, return empty FileList, like native input would do\n\t * @private\n\t */\n\tstatic get _emptyFilesList() {\n\t\tif (!this.emptyInput) {\n\t\t\tthis.emptyInput = document.createElement(\"input\");\n\t\t\tthis.emptyInput.type = \"file\";\n\t\t}\n\t\treturn this.emptyInput.files;\n\t}\n\n\tget accInfo(): InputAccInfo {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": FileUploader.i18nBundle.getText(FILEUPLOADER_ROLE_DESCRIPTION),\n\t\t\t\"ariaRequired\": this.required || undefined,\n\t\t\t\"ariaInvalid\": this.valueState === ValueState.Negative || undefined,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaLabel\": getAllAccessibleNameRefTexts(this) || getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this) || undefined,\n\t\t};\n\t}\n\n\tget inputTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_INPUT_TOOLTIP);\n\t}\n\n\tget valueHelpTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_VALUE_HELP_TOOLTIP);\n\t}\n\n\tget clearIconTitle(): string {\n\t\treturn FileUploader.i18nBundle.getText(FILEUPLOADER_CLEAR_ICON_TOOLTIP);\n\t}\n\n\tget resolvedPlaceholder(): string {\n\t\tconst singlePlaceholder = FileUploader.i18nBundle.getText(FILEUPLOADER_DEFAULT_PLACEHOLDER);\n\t\tconst multiplePlaceholder = FileUploader.i18nBundle.getText(FILEUPLOADER_DEFAULT_MULTIPLE_PLACEHOLDER);\n\t\treturn this.placeholder ?? (this.multiple ? multiplePlaceholder : singlePlaceholder);\n\t}\n\n\tget valueStateTextMappings(): Record<string, string> {\n\t\treturn {\n\t\t\t\"Positive\": FileUploader.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": FileUploader.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Negative\": FileUploader.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": FileUploader.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateText(): string {\n\t\treturn this.valueStateTextMappings[this.valueState];\n\t}\n\n\tget hasValueState(): boolean {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage(): boolean {\n\t\treturn !this.valueStateMessage.length && this.hasValueState;\n\t}\n\n\tget shouldOpenValueStateMessagePopover(): boolean {\n\t\treturn this.focused && this.hasValueState && !this.hideInput && !this._tokenizerOpen;\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon(): string {\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\nFileUploader.define();\n\nexport default FileUploader;\nexport type {\n\tFileData,\n\tFileUploaderChangeEventDetail,\n\tFileUploaderFileSizeExceedEventDetail,\n};\n"]}
@@ -1,9 +1,11 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
2
2
  import Icon from "./Icon.js";
3
+ import valueHelp from "@ui5/webcomponents-icons/dist/value-help.js";
4
+ import decline from "@ui5/webcomponents-icons/dist/decline.js";
3
5
  import Tokenizer from "./Tokenizer.js";
4
6
  import Token from "./Token.js";
5
7
  import FileUploaderPopoverTemplate from "./FileUploaderPopoverTemplate.js";
6
8
  export default function FileUploaderTemplate() {
7
- return (_jsxs(_Fragment, { children: [_jsxs("div", { class: "ui5-file-uploader-root", onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onMouseDown: this._onmousedown, onDragOver: this._ondrag, onDrop: this._ondrop, children: [_jsx("form", { class: "ui5-file-uploader-form", onSubmit: this._onFormSubmit, children: _jsx("input", { type: "file", class: "ui5-file-uploader-native-input", name: this.name, multiple: this.multiple, accept: this.accept, disabled: this.disabled, title: this.inputTitle, "aria-roledescription": this.accInfo.ariaRoledescription, "aria-haspopup": this.accInfo.ariaHasPopup, "aria-label": this.accInfo.ariaLabel, "aria-required": this.accInfo.ariaRequired, "aria-invalid": this.accInfo.ariaInvalid, onClick: this._onNativeInputClick, onChange: this._onChange, "data-sap-focus-ref": true }) }), this.hideInput ? (_jsx("slot", {})) : (_jsxs("div", { class: "ui5-file-uploader-display-container", children: [_jsxs("div", { class: "ui5-file-uploader-display-elements", children: [this._selectedFilesNames.length > 0 ? (_jsxs(_Fragment, { children: [_jsx(Tokenizer, { class: "ui5-file-uploader-tokenizer", expanded: this._tokenizerExpanded, open: this._tokenizerOpen, popoverMinWidth: this._formWidth, onClick: this._onTokenizerClick, onMouseDown: this._onTokenizerMouseDown, onKeyDown: this._onTokenizerKeyDown, onKeyUp: this._onTokenizerKeyUp, preventInitialFocus: true, readonly: true, children: this._selectedFilesNames.map(fileName => (_jsx(Token, { text: fileName }))) }), _jsx(Icon, { name: "decline", class: "ui5-file-uploader-clear-icon inputIcon", onClick: this._onClearIconClick, title: this.clearIconTitle })] })) : (_jsx("input", { class: "ui5-file-uploader-display-input", tabindex: -1, "aria-hidden": "true", title: this.inputTitle, placeholder: this.resolvedPlaceholder, "inner-input": true, readonly: true })), _jsx(Icon, { name: "value-help", class: "ui5-file-uploader-value-help-icon inputIcon", title: this.valueHelpTitle })] }), _jsx("slot", {})] }))] }), FileUploaderPopoverTemplate.call(this)] }));
9
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { class: "ui5-file-uploader-root", onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onMouseDown: this._onmousedown, onDragOver: this._ondrag, onDrop: this._ondrop, children: [_jsx("form", { class: "ui5-file-uploader-form", onSubmit: this._onFormSubmit, children: _jsx("input", { type: "file", class: "ui5-file-uploader-native-input", name: this.name, multiple: this.multiple, accept: this.accept, disabled: this.disabled, title: this.inputTitle, "aria-roledescription": this.accInfo.ariaRoledescription, "aria-haspopup": this.accInfo.ariaHasPopup, "aria-label": this.accInfo.ariaLabel, "aria-required": this.accInfo.ariaRequired, "aria-invalid": this.accInfo.ariaInvalid, onClick: this._onNativeInputClick, onChange: this._onChange, "data-sap-focus-ref": true }) }), this.hideInput ? (_jsx("slot", {})) : (_jsxs("div", { class: "ui5-file-uploader-display-container", children: [_jsxs("div", { class: "ui5-file-uploader-display-elements", children: [this._selectedFilesNames.length > 0 ? (_jsxs(_Fragment, { children: [_jsx(Tokenizer, { class: "ui5-file-uploader-tokenizer", expanded: this._tokenizerExpanded, open: this._tokenizerOpen, popoverMinWidth: this._formWidth, onClick: this._onTokenizerClick, onMouseDown: this._onTokenizerMouseDown, onKeyDown: this._onTokenizerKeyDown, onKeyUp: this._onTokenizerKeyUp, preventInitialFocus: true, readonly: true, children: this._selectedFilesNames.map(fileName => (_jsx(Token, { text: fileName }))) }), _jsx(Icon, { name: decline, class: "ui5-file-uploader-clear-icon inputIcon", onClick: this._onClearIconClick, title: this.clearIconTitle })] })) : (_jsx("input", { class: "ui5-file-uploader-display-input", tabindex: -1, "aria-hidden": "true", title: this.inputTitle, placeholder: this.resolvedPlaceholder, "inner-input": true, readonly: true })), _jsx(Icon, { name: valueHelp, class: "ui5-file-uploader-value-help-icon inputIcon", title: this.valueHelpTitle })] }), _jsx("slot", {})] }))] }), FileUploaderPopoverTemplate.call(this)] }));
8
10
  }
9
11
  //# sourceMappingURL=FileUploaderTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploaderTemplate.js","sourceRoot":"","sources":["../src/FileUploaderTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"./Icon.js\";\nimport Tokenizer from \"./Tokenizer.js\";\nimport Token from \"./Token.js\";\nimport type FileUploader from \"./FileUploader.js\";\nimport FileUploaderPopoverTemplate from \"./FileUploaderPopoverTemplate.js\";\n\nexport default function FileUploaderTemplate(this: FileUploader) {\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclass=\"ui5-file-uploader-root\"\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonMouseDown={this._onmousedown}\n\t\t\t\tonDragOver={this._ondrag}\n\t\t\t\tonDrop={this._ondrop}\n\t\t\t>\n\t\t\t\t<form class=\"ui5-file-uploader-form\" onSubmit={this._onFormSubmit}>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tclass=\"ui5-file-uploader-native-input\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\ttitle={this.inputTitle}\n\t\t\t\t\t\taria-roledescription={this.accInfo.ariaRoledescription}\n\t\t\t\t\t\taria-haspopup={this.accInfo.ariaHasPopup}\n\t\t\t\t\t\taria-label={this.accInfo.ariaLabel}\n\t\t\t\t\t\taria-required={this.accInfo.ariaRequired}\n\t\t\t\t\t\taria-invalid={this.accInfo.ariaInvalid}\n\t\t\t\t\t\tonClick={this._onNativeInputClick}\n\t\t\t\t\t\tonChange={this._onChange}\n\t\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\t/>\n\t\t\t\t</form>\n\n\t\t\t\t{this.hideInput ? (\n\t\t\t\t\t<slot></slot>\n\t\t\t\t) : (\n\t\t\t\t\t<div class=\"ui5-file-uploader-display-container\">\n\t\t\t\t\t\t<div class=\"ui5-file-uploader-display-elements\">\n\t\t\t\t\t\t\t{this._selectedFilesNames.length > 0 ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Tokenizer\n\t\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-tokenizer\"\n\t\t\t\t\t\t\t\t\t\texpanded={this._tokenizerExpanded}\n\t\t\t\t\t\t\t\t\t\topen={this._tokenizerOpen}\n\t\t\t\t\t\t\t\t\t\tpopoverMinWidth={this._formWidth}\n\t\t\t\t\t\t\t\t\t\tonClick={this._onTokenizerClick}\n\t\t\t\t\t\t\t\t\t\tonMouseDown={this._onTokenizerMouseDown}\n\t\t\t\t\t\t\t\t\t\tonKeyDown={this._onTokenizerKeyDown}\n\t\t\t\t\t\t\t\t\t\tonKeyUp={this._onTokenizerKeyUp}\n\t\t\t\t\t\t\t\t\t\tpreventInitialFocus\n\t\t\t\t\t\t\t\t\t\treadonly\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this._selectedFilesNames.map(fileName => (\n\t\t\t\t\t\t\t\t\t\t\t<Token\n\t\t\t\t\t\t\t\t\t\t\t\ttext={fileName}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</Tokenizer>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"decline\"\n\t\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-clear-icon inputIcon\"\n\t\t\t\t\t\t\t\t\t\tonClick={this._onClearIconClick}\n\t\t\t\t\t\t\t\t\t\ttitle={this.clearIconTitle}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-display-input\"\n\t\t\t\t\t\t\t\t\ttabindex={-1}\n\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\ttitle={this.inputTitle}\n\t\t\t\t\t\t\t\t\tplaceholder={this.resolvedPlaceholder}\n\t\t\t\t\t\t\t\t\tinner-input\n\t\t\t\t\t\t\t\t\treadonly\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"value-help\"\n\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-value-help-icon inputIcon\"\n\t\t\t\t\t\t\t\ttitle={this.valueHelpTitle}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{ FileUploaderPopoverTemplate.call(this) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"file":"FileUploaderTemplate.js","sourceRoot":"","sources":["../src/FileUploaderTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"./Icon.js\";\nimport valueHelp from \"@ui5/webcomponents-icons/dist/value-help.js\";\nimport decline from \"@ui5/webcomponents-icons/dist/decline.js\";\nimport Tokenizer from \"./Tokenizer.js\";\nimport Token from \"./Token.js\";\nimport type FileUploader from \"./FileUploader.js\";\nimport FileUploaderPopoverTemplate from \"./FileUploaderPopoverTemplate.js\";\n\nexport default function FileUploaderTemplate(this: FileUploader) {\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclass=\"ui5-file-uploader-root\"\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonMouseDown={this._onmousedown}\n\t\t\t\tonDragOver={this._ondrag}\n\t\t\t\tonDrop={this._ondrop}\n\t\t\t>\n\t\t\t\t<form class=\"ui5-file-uploader-form\" onSubmit={this._onFormSubmit}>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tclass=\"ui5-file-uploader-native-input\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\ttitle={this.inputTitle}\n\t\t\t\t\t\taria-roledescription={this.accInfo.ariaRoledescription}\n\t\t\t\t\t\taria-haspopup={this.accInfo.ariaHasPopup}\n\t\t\t\t\t\taria-label={this.accInfo.ariaLabel}\n\t\t\t\t\t\taria-required={this.accInfo.ariaRequired}\n\t\t\t\t\t\taria-invalid={this.accInfo.ariaInvalid}\n\t\t\t\t\t\tonClick={this._onNativeInputClick}\n\t\t\t\t\t\tonChange={this._onChange}\n\t\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\t/>\n\t\t\t\t</form>\n\n\t\t\t\t{this.hideInput ? (\n\t\t\t\t\t<slot></slot>\n\t\t\t\t) : (\n\t\t\t\t\t<div class=\"ui5-file-uploader-display-container\">\n\t\t\t\t\t\t<div class=\"ui5-file-uploader-display-elements\">\n\t\t\t\t\t\t\t{this._selectedFilesNames.length > 0 ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Tokenizer\n\t\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-tokenizer\"\n\t\t\t\t\t\t\t\t\t\texpanded={this._tokenizerExpanded}\n\t\t\t\t\t\t\t\t\t\topen={this._tokenizerOpen}\n\t\t\t\t\t\t\t\t\t\tpopoverMinWidth={this._formWidth}\n\t\t\t\t\t\t\t\t\t\tonClick={this._onTokenizerClick}\n\t\t\t\t\t\t\t\t\t\tonMouseDown={this._onTokenizerMouseDown}\n\t\t\t\t\t\t\t\t\t\tonKeyDown={this._onTokenizerKeyDown}\n\t\t\t\t\t\t\t\t\t\tonKeyUp={this._onTokenizerKeyUp}\n\t\t\t\t\t\t\t\t\t\tpreventInitialFocus\n\t\t\t\t\t\t\t\t\t\treadonly\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this._selectedFilesNames.map(fileName => (\n\t\t\t\t\t\t\t\t\t\t\t<Token\n\t\t\t\t\t\t\t\t\t\t\t\ttext={fileName}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</Tokenizer>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname={decline}\n\t\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-clear-icon inputIcon\"\n\t\t\t\t\t\t\t\t\t\tonClick={this._onClearIconClick}\n\t\t\t\t\t\t\t\t\t\ttitle={this.clearIconTitle}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-display-input\"\n\t\t\t\t\t\t\t\t\ttabindex={-1}\n\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\ttitle={this.inputTitle}\n\t\t\t\t\t\t\t\t\tplaceholder={this.resolvedPlaceholder}\n\t\t\t\t\t\t\t\t\tinner-input\n\t\t\t\t\t\t\t\t\treadonly\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname={valueHelp}\n\t\t\t\t\t\t\t\tclass=\"ui5-file-uploader-value-help-icon inputIcon\"\n\t\t\t\t\t\t\t\ttitle={this.valueHelpTitle}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{ FileUploaderPopoverTemplate.call(this) }\n\t\t</>\n\t);\n}\n"]}
package/dist/Input.js CHANGED
@@ -647,6 +647,7 @@ let Input = Input_1 = class Input extends UI5Element {
647
647
  this.value = valueBeforeClear;
648
648
  return;
649
649
  }
650
+ this.typedInValue = "";
650
651
  if (!this._isPhone) {
651
652
  this.fireResetSelectionChange();
652
653
  this.focus();