@ui5/webcomponents 2.3.1-rc.0 → 2.4.0-rc.1

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 (540) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/cypress/specs/Button.cy.ts +13 -26
  3. package/cypress/specs/Form.cy.ts +100 -96
  4. package/cypress/specs/Menu.cy.ts +5 -10
  5. package/cypress/specs/RTL.cy.ts +2 -4
  6. package/cypress/specs/base/AriaLabelHelper.cy.ts +2 -4
  7. package/cypress/specs/base/Events.cy.ts +207 -0
  8. package/dist/.tsbuildinfo +1 -1
  9. package/dist/Avatar.js +4 -2
  10. package/dist/Avatar.js.map +1 -1
  11. package/dist/AvatarGroup.js +2 -2
  12. package/dist/AvatarGroup.js.map +1 -1
  13. package/dist/Breadcrumbs.js +6 -5
  14. package/dist/Breadcrumbs.js.map +1 -1
  15. package/dist/Button.js +8 -3
  16. package/dist/Button.js.map +1 -1
  17. package/dist/Calendar.js +17 -12
  18. package/dist/Calendar.js.map +1 -1
  19. package/dist/CalendarLegend.js +6 -3
  20. package/dist/CalendarLegend.js.map +1 -1
  21. package/dist/CardHeader.js +6 -4
  22. package/dist/CardHeader.js.map +1 -1
  23. package/dist/Carousel.js +4 -3
  24. package/dist/Carousel.js.map +1 -1
  25. package/dist/CheckBox.js +16 -5
  26. package/dist/CheckBox.js.map +1 -1
  27. package/dist/ColorPalette.js +1 -1
  28. package/dist/ColorPalette.js.map +1 -1
  29. package/dist/ColorPaletteItem.js +5 -0
  30. package/dist/ColorPaletteItem.js.map +1 -1
  31. package/dist/ColorPalettePopover.js +12 -3
  32. package/dist/ColorPalettePopover.js.map +1 -1
  33. package/dist/ColorPicker.js +5 -2
  34. package/dist/ColorPicker.js.map +1 -1
  35. package/dist/ComboBox.js +16 -11
  36. package/dist/ComboBox.js.map +1 -1
  37. package/dist/DatePicker.js +8 -5
  38. package/dist/DatePicker.js.map +1 -1
  39. package/dist/DayPicker.js +15 -7
  40. package/dist/DayPicker.js.map +1 -1
  41. package/dist/FileUploader.js +5 -3
  42. package/dist/FileUploader.js.map +1 -1
  43. package/dist/Form.d.ts +3 -3
  44. package/dist/Form.js +5 -5
  45. package/dist/Form.js.map +1 -1
  46. package/dist/FormGroup.js +3 -0
  47. package/dist/FormGroup.js.map +1 -1
  48. package/dist/Icon.js +5 -3
  49. package/dist/Icon.js.map +1 -1
  50. package/dist/Input.js +41 -19
  51. package/dist/Input.js.map +1 -1
  52. package/dist/Link.d.ts +1 -6
  53. package/dist/Link.js +10 -15
  54. package/dist/Link.js.map +1 -1
  55. package/dist/List.d.ts +1 -0
  56. package/dist/List.js +31 -19
  57. package/dist/List.js.map +1 -1
  58. package/dist/ListItem.d.ts +1 -0
  59. package/dist/ListItem.js +20 -7
  60. package/dist/ListItem.js.map +1 -1
  61. package/dist/ListItemBase.js +21 -10
  62. package/dist/ListItemBase.js.map +1 -1
  63. package/dist/ListItemGroup.js +6 -5
  64. package/dist/ListItemGroup.js.map +1 -1
  65. package/dist/MessageStrip.js +4 -2
  66. package/dist/MessageStrip.js.map +1 -1
  67. package/dist/MonthPicker.js +9 -5
  68. package/dist/MonthPicker.js.map +1 -1
  69. package/dist/MultiComboBox.js +24 -15
  70. package/dist/MultiComboBox.js.map +1 -1
  71. package/dist/MultiInput.js +6 -3
  72. package/dist/MultiInput.js.map +1 -1
  73. package/dist/Panel.js +5 -3
  74. package/dist/Panel.js.map +1 -1
  75. package/dist/Popover.js +1 -1
  76. package/dist/Popover.js.map +1 -1
  77. package/dist/Popup.js +16 -13
  78. package/dist/Popup.js.map +1 -1
  79. package/dist/RadioButton.js +4 -2
  80. package/dist/RadioButton.js.map +1 -1
  81. package/dist/RadioButtonGroup.js +1 -1
  82. package/dist/RadioButtonGroup.js.map +1 -1
  83. package/dist/RangeSlider.d.ts +16 -6
  84. package/dist/RangeSlider.js +172 -21
  85. package/dist/RangeSlider.js.map +1 -1
  86. package/dist/RatingIndicator.js +5 -3
  87. package/dist/RatingIndicator.js.map +1 -1
  88. package/dist/ResponsivePopover.js +1 -1
  89. package/dist/ResponsivePopover.js.map +1 -1
  90. package/dist/SegmentedButton.js +2 -1
  91. package/dist/SegmentedButton.js.map +1 -1
  92. package/dist/Select.d.ts +3 -3
  93. package/dist/Select.js +20 -8
  94. package/dist/Select.js.map +1 -1
  95. package/dist/Slider.d.ts +10 -2
  96. package/dist/Slider.js +55 -7
  97. package/dist/Slider.js.map +1 -1
  98. package/dist/SliderBase.d.ts +28 -4
  99. package/dist/SliderBase.js +82 -12
  100. package/dist/SliderBase.js.map +1 -1
  101. package/dist/SplitButton.js +8 -4
  102. package/dist/SplitButton.js.map +1 -1
  103. package/dist/StepInput.js +8 -5
  104. package/dist/StepInput.js.map +1 -1
  105. package/dist/Switch.js +16 -4
  106. package/dist/Switch.js.map +1 -1
  107. package/dist/TabContainer.js +16 -14
  108. package/dist/TabContainer.js.map +1 -1
  109. package/dist/Table.js +2 -1
  110. package/dist/Table.js.map +1 -1
  111. package/dist/TableGrowing.js +4 -2
  112. package/dist/TableGrowing.js.map +1 -1
  113. package/dist/TableSelection.js +6 -4
  114. package/dist/TableSelection.js.map +1 -1
  115. package/dist/Tag.js +4 -2
  116. package/dist/Tag.js.map +1 -1
  117. package/dist/TextArea.js +26 -10
  118. package/dist/TextArea.js.map +1 -1
  119. package/dist/TimePicker.js +11 -5
  120. package/dist/TimePicker.js.map +1 -1
  121. package/dist/TimePickerClock.js +3 -2
  122. package/dist/TimePickerClock.js.map +1 -1
  123. package/dist/TimePickerInternals.js +2 -1
  124. package/dist/TimePickerInternals.js.map +1 -1
  125. package/dist/TimeSelectionClocks.d.ts +1 -2
  126. package/dist/TimeSelectionClocks.js +5 -10
  127. package/dist/TimeSelectionClocks.js.map +1 -1
  128. package/dist/TimeSelectionInputs.js +5 -1
  129. package/dist/TimeSelectionInputs.js.map +1 -1
  130. package/dist/Toast.js +4 -2
  131. package/dist/Toast.js.map +1 -1
  132. package/dist/Token.js +7 -4
  133. package/dist/Token.js.map +1 -1
  134. package/dist/Tokenizer.js +23 -17
  135. package/dist/Tokenizer.js.map +1 -1
  136. package/dist/Toolbar.js +14 -1
  137. package/dist/Toolbar.js.map +1 -1
  138. package/dist/ToolbarSelect.js +5 -2
  139. package/dist/ToolbarSelect.js.map +1 -1
  140. package/dist/Tree.js +34 -12
  141. package/dist/Tree.js.map +1 -1
  142. package/dist/TreeItemBase.js +8 -5
  143. package/dist/TreeItemBase.js.map +1 -1
  144. package/dist/YearPicker.js +9 -5
  145. package/dist/YearPicker.js.map +1 -1
  146. package/dist/bundle.scoped.config.d.ts +1 -0
  147. package/dist/bundle.scoped.config.js +5 -0
  148. package/dist/bundle.scoped.config.js.map +1 -0
  149. package/dist/bundle.scoped.esm.d.ts +1 -0
  150. package/dist/bundle.scoped.esm.js +1 -4
  151. package/dist/bundle.scoped.esm.js.map +1 -1
  152. package/dist/css/themes/Avatar.css +1 -1
  153. package/dist/css/themes/AvatarGroup.css +1 -1
  154. package/dist/css/themes/Bar.css +1 -1
  155. package/dist/css/themes/Breadcrumbs.css +1 -1
  156. package/dist/css/themes/BusyIndicator.css +1 -1
  157. package/dist/css/themes/Button.css +1 -1
  158. package/dist/css/themes/Calendar.css +1 -1
  159. package/dist/css/themes/CalendarHeader.css +1 -1
  160. package/dist/css/themes/CalendarLegend.css +1 -1
  161. package/dist/css/themes/CalendarLegendItem.css +1 -1
  162. package/dist/css/themes/Card.css +1 -1
  163. package/dist/css/themes/CardHeader.css +1 -1
  164. package/dist/css/themes/Carousel.css +1 -1
  165. package/dist/css/themes/CheckBox.css +1 -1
  166. package/dist/css/themes/ColorPalette.css +1 -1
  167. package/dist/css/themes/ColorPaletteItem.css +1 -1
  168. package/dist/css/themes/ColorPalettePopover.css +1 -1
  169. package/dist/css/themes/ColorPicker.css +1 -1
  170. package/dist/css/themes/ComboBox.css +1 -1
  171. package/dist/css/themes/DatePicker.css +1 -1
  172. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  173. package/dist/css/themes/DayPicker.css +1 -1
  174. package/dist/css/themes/Dialog.css +1 -1
  175. package/dist/css/themes/FileUploader.css +1 -1
  176. package/dist/css/themes/Form.css +1 -1
  177. package/dist/css/themes/FormItem.css +1 -1
  178. package/dist/css/themes/FormLabelSpan.css +1 -1
  179. package/dist/css/themes/FormLayout.css +1 -1
  180. package/dist/css/themes/GrowingButton.css +1 -1
  181. package/dist/css/themes/Icon.css +1 -1
  182. package/dist/css/themes/Input.css +1 -1
  183. package/dist/css/themes/InputIcon.css +1 -1
  184. package/dist/css/themes/InputSharedStyles.css +1 -1
  185. package/dist/css/themes/Link.css +1 -1
  186. package/dist/css/themes/List.css +1 -1
  187. package/dist/css/themes/ListItem.css +1 -1
  188. package/dist/css/themes/ListItemBase.css +1 -1
  189. package/dist/css/themes/ListItemCustom.css +1 -1
  190. package/dist/css/themes/ListItemGroup.css +1 -1
  191. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  192. package/dist/css/themes/ListItemIcon.css +1 -1
  193. package/dist/css/themes/Menu.css +1 -1
  194. package/dist/css/themes/MenuItem.css +1 -1
  195. package/dist/css/themes/MessageStrip.css +1 -1
  196. package/dist/css/themes/MonthPicker.css +1 -1
  197. package/dist/css/themes/MultiComboBox.css +1 -1
  198. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  199. package/dist/css/themes/MultiInput.css +1 -1
  200. package/dist/css/themes/NavigationMenu.css +1 -1
  201. package/dist/css/themes/NavigationMenuItem.css +1 -1
  202. package/dist/css/themes/OptionBase.css +1 -1
  203. package/dist/css/themes/Panel.css +1 -1
  204. package/dist/css/themes/Popover.css +1 -1
  205. package/dist/css/themes/PopupsCommon.css +1 -1
  206. package/dist/css/themes/ProgressIndicator.css +1 -1
  207. package/dist/css/themes/RadioButton.css +1 -1
  208. package/dist/css/themes/RangeSlider.css +1 -1
  209. package/dist/css/themes/RatingIndicator.css +1 -1
  210. package/dist/css/themes/ResponsivePopover.css +1 -1
  211. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  212. package/dist/css/themes/SegmentedButton.css +1 -1
  213. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  214. package/dist/css/themes/Select.css +1 -1
  215. package/dist/css/themes/SliderBase.css +1 -1
  216. package/dist/css/themes/SplitButton.css +1 -1
  217. package/dist/css/themes/StepInput.css +1 -1
  218. package/dist/css/themes/SuggestionItem.css +1 -1
  219. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  220. package/dist/css/themes/Switch.css +1 -1
  221. package/dist/css/themes/TabContainer.css +1 -1
  222. package/dist/css/themes/TabInOverflow.css +1 -1
  223. package/dist/css/themes/TabInStrip.css +1 -1
  224. package/dist/css/themes/TabSemanticIcon.css +1 -1
  225. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  226. package/dist/css/themes/Table.css +1 -1
  227. package/dist/css/themes/TableCellBase.css +1 -1
  228. package/dist/css/themes/TableHeaderRow.css +1 -1
  229. package/dist/css/themes/TableRow.css +1 -1
  230. package/dist/css/themes/TableRowBase.css +1 -1
  231. package/dist/css/themes/Tag.css +1 -1
  232. package/dist/css/themes/Text.css +1 -1
  233. package/dist/css/themes/TextArea.css +1 -1
  234. package/dist/css/themes/TimePicker.css +1 -1
  235. package/dist/css/themes/Toast.css +1 -1
  236. package/dist/css/themes/ToggleButton.css +1 -1
  237. package/dist/css/themes/Token.css +1 -1
  238. package/dist/css/themes/Tokenizer.css +1 -1
  239. package/dist/css/themes/TokenizerPopover.css +1 -1
  240. package/dist/css/themes/Toolbar.css +1 -1
  241. package/dist/css/themes/ToolbarPopover.css +1 -1
  242. package/dist/css/themes/TreeItem.css +1 -1
  243. package/dist/css/themes/ValueStateMessage.css +1 -1
  244. package/dist/css/themes/YearPicker.css +1 -1
  245. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  246. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  247. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  248. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  249. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  250. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  251. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  252. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  253. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  254. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  255. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  256. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  257. package/dist/custom-elements-internal.json +499 -59
  258. package/dist/custom-elements.json +94 -21
  259. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  260. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  261. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  262. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  263. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  264. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  265. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  266. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  267. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  268. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  269. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  270. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  271. package/dist/generated/i18n/i18n-defaults.d.ts +3 -1
  272. package/dist/generated/i18n/i18n-defaults.js +3 -1
  273. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  274. package/dist/generated/templates/DialogTemplate.lit.js +1 -1
  275. package/dist/generated/templates/DialogTemplate.lit.js.map +1 -1
  276. package/dist/generated/templates/LinkTemplate.lit.js +1 -1
  277. package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
  278. package/dist/generated/templates/ListTemplate.lit.js +5 -4
  279. package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
  280. package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
  281. package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -1
  282. package/dist/generated/templates/PopupTemplate.lit.js +1 -1
  283. package/dist/generated/templates/PopupTemplate.lit.js.map +1 -1
  284. package/dist/generated/templates/RangeSliderTemplate.lit.js +9 -3
  285. package/dist/generated/templates/RangeSliderTemplate.lit.js.map +1 -1
  286. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  287. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
  288. package/dist/generated/templates/SliderBaseTemplate.lit.js +3 -1
  289. package/dist/generated/templates/SliderBaseTemplate.lit.js.map +1 -1
  290. package/dist/generated/templates/SliderTemplate.lit.js +6 -2
  291. package/dist/generated/templates/SliderTemplate.lit.js.map +1 -1
  292. package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js +2 -2
  293. package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js.map +1 -1
  294. package/dist/generated/themes/Avatar.css.js +1 -1
  295. package/dist/generated/themes/Avatar.css.js.map +1 -1
  296. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  297. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  298. package/dist/generated/themes/Bar.css.js +1 -1
  299. package/dist/generated/themes/Bar.css.js.map +1 -1
  300. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  301. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  302. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  303. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  304. package/dist/generated/themes/Button.css.js +1 -1
  305. package/dist/generated/themes/Button.css.js.map +1 -1
  306. package/dist/generated/themes/Calendar.css.js +1 -1
  307. package/dist/generated/themes/Calendar.css.js.map +1 -1
  308. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  309. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  310. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  311. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  312. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  313. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  314. package/dist/generated/themes/Card.css.js +1 -1
  315. package/dist/generated/themes/Card.css.js.map +1 -1
  316. package/dist/generated/themes/CardHeader.css.js +1 -1
  317. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  318. package/dist/generated/themes/Carousel.css.js +1 -1
  319. package/dist/generated/themes/Carousel.css.js.map +1 -1
  320. package/dist/generated/themes/CheckBox.css.js +1 -1
  321. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  322. package/dist/generated/themes/ColorPalette.css.js +1 -1
  323. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  324. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  325. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  326. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  327. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  328. package/dist/generated/themes/ColorPicker.css.js +1 -1
  329. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  330. package/dist/generated/themes/ComboBox.css.js +1 -1
  331. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  332. package/dist/generated/themes/DatePicker.css.js +1 -1
  333. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  334. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  335. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  336. package/dist/generated/themes/DayPicker.css.js +1 -1
  337. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  338. package/dist/generated/themes/Dialog.css.js +1 -1
  339. package/dist/generated/themes/Dialog.css.js.map +1 -1
  340. package/dist/generated/themes/FileUploader.css.js +1 -1
  341. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  342. package/dist/generated/themes/Form.css.js +1 -1
  343. package/dist/generated/themes/Form.css.js.map +1 -1
  344. package/dist/generated/themes/FormItem.css.js +1 -1
  345. package/dist/generated/themes/FormItem.css.js.map +1 -1
  346. package/dist/generated/themes/FormLabelSpan.css.js +1 -1
  347. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
  348. package/dist/generated/themes/FormLayout.css.js +1 -1
  349. package/dist/generated/themes/FormLayout.css.js.map +1 -1
  350. package/dist/generated/themes/GrowingButton.css.js +1 -1
  351. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  352. package/dist/generated/themes/Icon.css.js +1 -1
  353. package/dist/generated/themes/Icon.css.js.map +1 -1
  354. package/dist/generated/themes/Input.css.js +1 -1
  355. package/dist/generated/themes/Input.css.js.map +1 -1
  356. package/dist/generated/themes/InputIcon.css.js +1 -1
  357. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  358. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  359. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  360. package/dist/generated/themes/Link.css.js +1 -1
  361. package/dist/generated/themes/Link.css.js.map +1 -1
  362. package/dist/generated/themes/List.css.js +1 -1
  363. package/dist/generated/themes/List.css.js.map +1 -1
  364. package/dist/generated/themes/ListItem.css.js +1 -1
  365. package/dist/generated/themes/ListItem.css.js.map +1 -1
  366. package/dist/generated/themes/ListItemBase.css.js +1 -1
  367. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  368. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  369. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  370. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  371. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  372. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  373. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  374. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  375. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  376. package/dist/generated/themes/Menu.css.js +1 -1
  377. package/dist/generated/themes/Menu.css.js.map +1 -1
  378. package/dist/generated/themes/MenuItem.css.js +1 -1
  379. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  380. package/dist/generated/themes/MessageStrip.css.js +1 -1
  381. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  382. package/dist/generated/themes/MonthPicker.css.js +1 -1
  383. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  384. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  385. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  386. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  387. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  388. package/dist/generated/themes/MultiInput.css.js +1 -1
  389. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  390. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  391. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  392. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  393. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  394. package/dist/generated/themes/OptionBase.css.js +1 -1
  395. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  396. package/dist/generated/themes/Panel.css.js +1 -1
  397. package/dist/generated/themes/Panel.css.js.map +1 -1
  398. package/dist/generated/themes/Popover.css.js +1 -1
  399. package/dist/generated/themes/Popover.css.js.map +1 -1
  400. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  401. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  402. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  403. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  404. package/dist/generated/themes/RadioButton.css.js +1 -1
  405. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  406. package/dist/generated/themes/RangeSlider.css.js +1 -1
  407. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  408. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  409. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  410. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  411. package/dist/generated/themes/ResponsivePopover.css.js.map +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.js +1 -1
  415. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  416. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  417. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  418. package/dist/generated/themes/Select.css.js +1 -1
  419. package/dist/generated/themes/Select.css.js.map +1 -1
  420. package/dist/generated/themes/SliderBase.css.js +1 -1
  421. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  422. package/dist/generated/themes/SplitButton.css.js +1 -1
  423. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  424. package/dist/generated/themes/StepInput.css.js +1 -1
  425. package/dist/generated/themes/StepInput.css.js.map +1 -1
  426. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  427. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  428. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  429. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  430. package/dist/generated/themes/Switch.css.js +1 -1
  431. package/dist/generated/themes/Switch.css.js.map +1 -1
  432. package/dist/generated/themes/TabContainer.css.js +1 -1
  433. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  434. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  435. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  436. package/dist/generated/themes/TabInStrip.css.js +1 -1
  437. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  438. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  439. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  440. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  441. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  442. package/dist/generated/themes/Table.css.js +1 -1
  443. package/dist/generated/themes/Table.css.js.map +1 -1
  444. package/dist/generated/themes/TableCellBase.css.js +1 -1
  445. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  446. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  447. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  448. package/dist/generated/themes/TableRow.css.js +1 -1
  449. package/dist/generated/themes/TableRow.css.js.map +1 -1
  450. package/dist/generated/themes/TableRowBase.css.js +1 -1
  451. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  452. package/dist/generated/themes/Tag.css.js +1 -1
  453. package/dist/generated/themes/Tag.css.js.map +1 -1
  454. package/dist/generated/themes/Text.css.js +1 -1
  455. package/dist/generated/themes/Text.css.js.map +1 -1
  456. package/dist/generated/themes/TextArea.css.js +1 -1
  457. package/dist/generated/themes/TextArea.css.js.map +1 -1
  458. package/dist/generated/themes/TimePicker.css.js +1 -1
  459. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  460. package/dist/generated/themes/Toast.css.js +1 -1
  461. package/dist/generated/themes/Toast.css.js.map +1 -1
  462. package/dist/generated/themes/ToggleButton.css.js +1 -1
  463. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  464. package/dist/generated/themes/Token.css.js +1 -1
  465. package/dist/generated/themes/Token.css.js.map +1 -1
  466. package/dist/generated/themes/Tokenizer.css.js +1 -1
  467. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  468. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  469. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  470. package/dist/generated/themes/Toolbar.css.js +1 -1
  471. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  472. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  473. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  474. package/dist/generated/themes/TreeItem.css.js +1 -1
  475. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  476. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  477. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  478. package/dist/generated/themes/YearPicker.css.js +1 -1
  479. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  480. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  481. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  482. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  483. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  484. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  485. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  486. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  487. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  488. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  489. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  490. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  491. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  492. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  493. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  494. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  495. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  496. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  497. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  498. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  499. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  500. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  501. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  502. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  503. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  504. package/dist/vscode.html-custom-data.json +21 -6
  505. package/dist/web-types.json +52 -32
  506. package/package.json +9 -9
  507. package/src/Link.hbs +0 -1
  508. package/src/List.hbs +7 -1
  509. package/src/Popup.hbs +2 -2
  510. package/src/RangeSlider.hbs +70 -38
  511. package/src/Slider.hbs +37 -18
  512. package/src/SliderBase.hbs +13 -4
  513. package/src/TimeSelectionClocks.hbs +0 -2
  514. package/src/i18n/messagebundle.properties +6 -0
  515. package/src/themes/ColorPaletteItem.css +23 -1
  516. package/src/themes/ColorPicker.css +9 -1
  517. package/src/themes/Form.css +3 -2
  518. package/src/themes/FormLayout.css +3 -3
  519. package/src/themes/GrowingButton.css +5 -2
  520. package/src/themes/Input.css +0 -1
  521. package/src/themes/Link.css +10 -6
  522. package/src/themes/ListItemBase.css +3 -3
  523. package/src/themes/ListItemGroupHeader.css +4 -0
  524. package/src/themes/SliderBase.css +27 -7
  525. package/src/themes/Switch.css +2 -1
  526. package/src/themes/base/ColorPalette-parameters.css +3 -0
  527. package/src/themes/base/sizes-parameters.css +1 -1
  528. package/src/themes/sap_fiori_3/SliderBase-parameters.css +7 -0
  529. package/src/themes/sap_fiori_3/sizes-parameters.css +4 -0
  530. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +7 -0
  531. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +4 -0
  532. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +6 -0
  533. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +6 -0
  534. package/src/themes/sap_horizon/ColorPalette-parameters.css +3 -0
  535. package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +3 -0
  536. package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +3 -0
  537. package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +3 -0
  538. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +1 -1
  539. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +1 -1
  540. package/tsconfig.json +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TimeSelectionInputs.js","sourceRoot":"","sources":["../src/TimeSelectionInputs.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\n\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport {\n\tisEnter,\n\tisNumber,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport TimePickerInternals from \"./TimePickerInternals.js\";\nimport Input from \"./Input.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport SegmentedButtonItem from \"./SegmentedButtonItem.js\";\n\nimport InputType from \"./types/InputType.js\";\n\nimport {\n\tTIMEPICKER_INPUTS_ENTER_HOURS,\n\tTIMEPICKER_INPUTS_ENTER_MINUTES,\n\tTIMEPICKER_INPUTS_ENTER_SECONDS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport TimeSelectionInputsTemplate from \"./generated/templates/TimeSelectionInputsTemplate.lit.js\";\n\n// Styles\nimport TimeSelectionInputsCss from \"./generated/themes/TimeSelectionInputs.css.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-selection-inputs` displays a popover with `ui5-input` components of type=\"number\" and an\n * optional a AM/PM `ui5-segmented-button` according to the display format given to the `ui5-time-picker`.\n * Using of numeric input components enables display of mobile devices' native numeric keyboard, which speeds up entering of the time.\n * The popup appears only on mobile devices when there is a tap on the `ui5-time-picker` input.\n *\n * This component should not be used separately.\n * @constructor\n * @extends TimePickerInternals\n * @abstract\n * @since 1.18.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-selection-inputs\",\n\tstyles: TimeSelectionInputsCss,\n\ttemplate: TimeSelectionInputsTemplate,\n\tdependencies: [\n\t\tInput,\n\t\tSegmentedButton,\n\t\tSegmentedButtonItem,\n\t],\n})\n\nclass TimeSelectionInputs extends TimePickerInternals {\n\t@property({ type: Number })\n\t_editedInput = -1;\n\n\t@property()\n\t_editedInputValue?: string;\n\n\tget enterHoursLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_HOURS);\n\t}\n\n\tget enterMinutesLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_MINUTES);\n\t}\n\n\tget enterSecondsLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_SECONDS);\n\t}\n\n\tget _numberType() {\n\t\treturn InputType.Number;\n\t}\n\n\tget _isHoursInput() {\n\t\tconst key = this._componentKey(\"hours\");\n\t\treturn this._componentMap[key] === this._activeIndex;\n\t}\n\n\tget _is24HoursFormat() {\n\t\treturn this.formatPattern?.includes(\"HH\") || this.formatPattern?.includes(\"H\");\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._createComponents();\n\t}\n\n\t_addNumericAttributes() {\n\t\tthis._entities.forEach((item, index) => {\n\t\t\tconst input = this._inputComponent(index);\n\t\t\tif (input) {\n\t\t\t\tconst innerInput = this._innerInput(input)!;\n\t\t\t\tinnerInput.setAttribute(\"autocomplete\", \"off\");\n\t\t\t\tinnerInput.setAttribute(\"pattern\", \"[0-9]*\");\n\t\t\t\tinnerInput.setAttribute(\"inputmode\", \"numeric\");\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Returns Input component by index or name.\n\t * @param indexOrName the index or name of the component\n\t * @returns component (if exists) or undefined\n\t */\n\t_inputComponent(indexOrName: number | string): Input | undefined | null {\n\t\tconst index = typeof indexOrName === \"string\" ? this._indexFromName(indexOrName) : indexOrName;\n\t\tconst entity = this._entities[index].entity;\n\t\treturn entity ? this.shadowRoot?.querySelector<Input>(`#${this._id}_input_${entity}`) : undefined;\n\t}\n\n\t/**\n\t * Returns the inner input element DOM reference.\n\t * @param input the Input component\n\t * @returns inner input element\n\t */\n\t_innerInput(input: Input): HTMLInputElement | null {\n\t\treturn input && input.getInputDOMRefSync();\n\t}\n\n\t/**\n\t * Creates clock and button components according to the display format pattern.\n\t */\n\t_createComponents() {\n\t\tlet value;\n\n\t\tthis._entities = [];\n\t\tthis._periods = [];\n\t\tthis._componentMap = {\n\t\t\thours: -1,\n\t\t\tminutes: -1,\n\t\t\tseconds: -1,\n\t\t};\n\t\tif (this._hasHoursComponent) {\n\t\t\t// add Hours input\n\t\t\tthis._componentMap.hours = this._entities.length;\n\t\t\tvalue = parseInt(this._hours);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"hours\",\n\t\t\t\t\"label\": this.enterHoursLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, this._zeroPaddedHours),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": this._zeroPaddedHours,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": this._hoursConfiguration.minHour,\n\t\t\t\t\t\"max\": this._hoursConfiguration.maxHour,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tif (this._hasMinutesComponent) {\n\t\t\t// add Minutes clock\n\t\t\tthis._componentMap.minutes = this._entities.length;\n\t\t\tvalue = parseInt(this._minutes);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"minutes\",\n\t\t\t\t\"label\": this.enterMinutesLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, true),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": true,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": 0,\n\t\t\t\t\t\"max\": 59,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tif (this._hasSecondsComponent) {\n\t\t\t// add Seconds clock\n\t\t\tthis._componentMap.seconds = this._entities.length;\n\t\t\tvalue = parseInt(this._seconds);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"seconds\",\n\t\t\t\t\"label\": this.enterSecondsLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, true),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": true,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": 0,\n\t\t\t\t\t\"max\": 59,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tthis._createPeriodComponent();\n\t}\n\n\t/**\n\t * Switches to the specific input.\n\t * @param index the index (in _entities array) of the input\n\t * @private\n\t */\n\t_switchInput(index: number) {\n\t\tif (index >= this._entities.length) {\n\t\t\tindex = 0;\n\t\t}\n\t\tthis._inputComponent(index)!.focus();\n\t}\n\n\t/**\n\t * Switches to the next input that can de focused.\n\t * @param wrapAround whether to start with first clock after reaching the last one, or not\n\t * @private\n\t */\n\t_switchNextInput(wrapAround = false) {\n\t\tlet activeInput = this._activeIndex;\n\t\tconst startActiveInput = activeInput;\n\n\t\tif (!this._entities.length) {\n\t\t\treturn;\n\t\t}\n\t\tdo {\n\t\t\tactiveInput++;\n\t\t\tif (activeInput >= this._entities.length) {\n\t\t\t\tactiveInput = wrapAround ? 0 : this._entities.length - 1;\n\t\t\t}\n\t\t// false-positive finding of no-unmodified-loop-condition rule\n\t\t// eslint-disable-next-line no-unmodified-loop-condition\n\t\t} while (this._inputComponent(activeInput)!.disabled && activeInput !== startActiveInput && (wrapAround || activeInput < this._entities.length));\n\t\tif (activeInput !== startActiveInput && !this._inputComponent(activeInput)!.disabled) {\n\t\t\tthis._switchInput(activeInput);\n\t\t}\n\t}\n\n\t/**\n\t * Return a value as string, formatted and prepended with zero if necessary.\n\t * @param num A number to format\n\t * @param prependZero Whether to prepend with zero or not\n\t * @returns Formatted value\n\t * @private\n\t */\n\t_formatNumberToString(num: number, prependZero: boolean): string {\n\t\treturn num < 10 && prependZero ? `0${num}` : num.toString();\n\t}\n\n\t_onkeydown(evt: KeyboardEvent) {\n\t\tif (this._activeIndex === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(evt)) {\n\t\t\t// Accept the time and close the popover\n\t\t\tthis.fireEvent(\"close-inputs\");\n\t\t} else if (isNumber(evt) && this._entities[this._activeIndex]) {\n\t\t\tconst char = evt.key;\n\t\t\tconst buffer = this._keyboardBuffer + char;\n\t\t\tconst bufferValue = parseInt(buffer);\n\n\t\t\tevt.preventDefault();\n\t\t\tthis._resetCooldown(true);\n\t\t\tif (bufferValue > this._entities[this._activeIndex].attributes!.max) {\n\t\t\t\t// value accumulated in the buffer (old entry + new entry) is greater than the input maximum value,\n\t\t\t\t// so assign old entry to the current inut and then switch to the next input, and add new entry as an old value\n\t\t\t\tthis._inputChange(parseInt(this._keyboardBuffer));\n\t\t\t\tthis._switchNextInput();\n\t\t\t\tthis._keyboardBuffer = char;\n\t\t\t\tthis._inputChange(parseInt(char));\n\t\t\t\tthis._resetCooldown(true);\n\t\t\t} else {\n\t\t\t\t// value is less than clock's max value, so add new entry to the buffer\n\t\t\t\tthis._keyboardBuffer = buffer;\n\t\t\t\tthis._inputChange(parseInt(this._keyboardBuffer));\n\t\t\t\tif (this._keyboardBuffer.length === 2 || parseInt(`${this._keyboardBuffer}0`) > this._entities[this._activeIndex].attributes!.max) {\n\t\t\t\t\t// if buffer length is 2, or buffer value + one more (any) number is greater than clock's max value\n\t\t\t\t\t// there is no place for more entry - just set buffer as a value, and switch to the next clock\n\t\t\t\t\tthis._resetCooldown(this._keyboardBuffer.length !== 2);\n\t\t\t\t\tthis._keyboardBuffer = \"\";\n\t\t\t\t\tthis._switchNextInput();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Input 'change' event handler.\n\t * @param value new value to set on active input\n\t */\n\t_inputChange(value: number) {\n\t\tconst stringValue = this._formatNumberToString(value, this._entities[this._activeIndex].prependZero);\n\n\t\tif (this._activeIndex === -1) {\n\t\t\treturn;\n\t\t}\n\t\tvalue = parseInt(stringValue);\n\t\tthis._entities[this._activeIndex].value = value;\n\t\tthis._inputComponent(this._activeIndex)!.value = this._formatNumberToString(value, this._entities[this._activeIndex].prependZero);\n\t\tswitch (this._activeIndex) {\n\t\tcase this._componentMap.hours:\n\t\t\tthis._hoursChange(value);\n\t\t\tbreak;\n\t\tcase this._componentMap.minutes:\n\t\t\tthis._minutesChange(value);\n\t\t\tbreak;\n\t\tcase this._componentMap.seconds:\n\t\t\tthis._secondsChange(value);\n\t\t\tbreak;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tconst input = e.target as Input;\n\t\tconst innerInput = this._innerInput(input);\n\n\t\tthis._editedInput = -1;\n\t\tinnerInput!.select();\n\t\tthis._activeIndex = this._getIndexFromId(input.id);\n\t}\n\n\t_onfocusout() {\n\t\tlet value = this._inputComponent(this._activeIndex)!.value === \"\" ? 0 : this._entities[this._activeIndex].value;\n\n\t\tthis._editedInput = -1;\n\t\tif (this._isHoursInput && !this._is24HoursFormat && value === 0) {\n\t\t\tvalue = 12;\n\t\t}\n\t\tthis._inputChange(value);\n\t\tthis._activeIndex = -1;\n\t}\n\n\t_oninput() {\n\t\tconst stringValue = this._inputComponent(this._activeIndex)!.value;\n\t\tconst value = stringValue === \"\" ? 0 : parseInt(stringValue);\n\n\t\tif (value !== this._entities[this._activeIndex].value) {\n\t\t\tthis._editedInput = this._activeIndex;\n\t\t\tthis._editedInputValue = stringValue;\n\t\t\tthis._inputChange(value);\n\t\t\tthis._keyboardBuffer = stringValue;\n\t\t}\n\t}\n}\n\nTimeSelectionInputs.define();\n\nexport default TimeSelectionInputs;\n"]}
1
+ {"version":3,"file":"TimeSelectionInputs.js","sourceRoot":"","sources":["../src/TimeSelectionInputs.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport {\n\tisEnter,\n\tisNumber,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport TimePickerInternals from \"./TimePickerInternals.js\";\nimport Input from \"./Input.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport SegmentedButtonItem from \"./SegmentedButtonItem.js\";\n\nimport InputType from \"./types/InputType.js\";\n\nimport {\n\tTIMEPICKER_INPUTS_ENTER_HOURS,\n\tTIMEPICKER_INPUTS_ENTER_MINUTES,\n\tTIMEPICKER_INPUTS_ENTER_SECONDS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport TimeSelectionInputsTemplate from \"./generated/templates/TimeSelectionInputsTemplate.lit.js\";\n\n// Styles\nimport TimeSelectionInputsCss from \"./generated/themes/TimeSelectionInputs.css.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-selection-inputs` displays a popover with `ui5-input` components of type=\"number\" and an\n * optional a AM/PM `ui5-segmented-button` according to the display format given to the `ui5-time-picker`.\n * Using of numeric input components enables display of mobile devices' native numeric keyboard, which speeds up entering of the time.\n * The popup appears only on mobile devices when there is a tap on the `ui5-time-picker` input.\n *\n * This component should not be used separately.\n * @constructor\n * @extends TimePickerInternals\n * @abstract\n * @since 1.18.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-selection-inputs\",\n\tstyles: TimeSelectionInputsCss,\n\ttemplate: TimeSelectionInputsTemplate,\n\tdependencies: [\n\t\tInput,\n\t\tSegmentedButton,\n\t\tSegmentedButtonItem,\n\t],\n})\n@event(\"close-inputs\", {\n\tbubbles: true,\n})\nclass TimeSelectionInputs extends TimePickerInternals {\n\t@property({ type: Number })\n\t_editedInput = -1;\n\n\t@property()\n\t_editedInputValue?: string;\n\n\tget enterHoursLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_HOURS);\n\t}\n\n\tget enterMinutesLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_MINUTES);\n\t}\n\n\tget enterSecondsLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_INPUTS_ENTER_SECONDS);\n\t}\n\n\tget _numberType() {\n\t\treturn InputType.Number;\n\t}\n\n\tget _isHoursInput() {\n\t\tconst key = this._componentKey(\"hours\");\n\t\treturn this._componentMap[key] === this._activeIndex;\n\t}\n\n\tget _is24HoursFormat() {\n\t\treturn this.formatPattern?.includes(\"HH\") || this.formatPattern?.includes(\"H\");\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._createComponents();\n\t}\n\n\t_addNumericAttributes() {\n\t\tthis._entities.forEach((item, index) => {\n\t\t\tconst input = this._inputComponent(index);\n\t\t\tif (input) {\n\t\t\t\tconst innerInput = this._innerInput(input)!;\n\t\t\t\tinnerInput.setAttribute(\"autocomplete\", \"off\");\n\t\t\t\tinnerInput.setAttribute(\"pattern\", \"[0-9]*\");\n\t\t\t\tinnerInput.setAttribute(\"inputmode\", \"numeric\");\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Returns Input component by index or name.\n\t * @param indexOrName the index or name of the component\n\t * @returns component (if exists) or undefined\n\t */\n\t_inputComponent(indexOrName: number | string): Input | undefined | null {\n\t\tconst index = typeof indexOrName === \"string\" ? this._indexFromName(indexOrName) : indexOrName;\n\t\tconst entity = this._entities[index].entity;\n\t\treturn entity ? this.shadowRoot?.querySelector<Input>(`#${this._id}_input_${entity}`) : undefined;\n\t}\n\n\t/**\n\t * Returns the inner input element DOM reference.\n\t * @param input the Input component\n\t * @returns inner input element\n\t */\n\t_innerInput(input: Input): HTMLInputElement | null {\n\t\treturn input && input.getInputDOMRefSync();\n\t}\n\n\t/**\n\t * Creates clock and button components according to the display format pattern.\n\t */\n\t_createComponents() {\n\t\tlet value;\n\n\t\tthis._entities = [];\n\t\tthis._periods = [];\n\t\tthis._componentMap = {\n\t\t\thours: -1,\n\t\t\tminutes: -1,\n\t\t\tseconds: -1,\n\t\t};\n\t\tif (this._hasHoursComponent) {\n\t\t\t// add Hours input\n\t\t\tthis._componentMap.hours = this._entities.length;\n\t\t\tvalue = parseInt(this._hours);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"hours\",\n\t\t\t\t\"label\": this.enterHoursLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, this._zeroPaddedHours),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": this._zeroPaddedHours,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": this._hoursConfiguration.minHour,\n\t\t\t\t\t\"max\": this._hoursConfiguration.maxHour,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tif (this._hasMinutesComponent) {\n\t\t\t// add Minutes clock\n\t\t\tthis._componentMap.minutes = this._entities.length;\n\t\t\tvalue = parseInt(this._minutes);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"minutes\",\n\t\t\t\t\"label\": this.enterMinutesLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, true),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": true,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": 0,\n\t\t\t\t\t\"max\": 59,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tif (this._hasSecondsComponent) {\n\t\t\t// add Seconds clock\n\t\t\tthis._componentMap.seconds = this._entities.length;\n\t\t\tvalue = parseInt(this._seconds);\n\t\t\tthis._entities.push({\n\t\t\t\t\"entity\": \"seconds\",\n\t\t\t\t\"label\": this.enterSecondsLabel,\n\t\t\t\t\"value\": value,\n\t\t\t\t\"stringValue\": this._editedInput === this._entities.length ? this._editedInputValue : this._formatNumberToString(value, true),\n\t\t\t\t\"hasSeparator\": this._entities.length > 0,\n\t\t\t\t\"prependZero\": true,\n\t\t\t\t\"attributes\": {\n\t\t\t\t\t\"min\": 0,\n\t\t\t\t\t\"max\": 59,\n\t\t\t\t\t\"step\": 1,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tthis._createPeriodComponent();\n\t}\n\n\t/**\n\t * Switches to the specific input.\n\t * @param index the index (in _entities array) of the input\n\t * @private\n\t */\n\t_switchInput(index: number) {\n\t\tif (index >= this._entities.length) {\n\t\t\tindex = 0;\n\t\t}\n\t\tthis._inputComponent(index)!.focus();\n\t}\n\n\t/**\n\t * Switches to the next input that can de focused.\n\t * @param wrapAround whether to start with first clock after reaching the last one, or not\n\t * @private\n\t */\n\t_switchNextInput(wrapAround = false) {\n\t\tlet activeInput = this._activeIndex;\n\t\tconst startActiveInput = activeInput;\n\n\t\tif (!this._entities.length) {\n\t\t\treturn;\n\t\t}\n\t\tdo {\n\t\t\tactiveInput++;\n\t\t\tif (activeInput >= this._entities.length) {\n\t\t\t\tactiveInput = wrapAround ? 0 : this._entities.length - 1;\n\t\t\t}\n\t\t// false-positive finding of no-unmodified-loop-condition rule\n\t\t// eslint-disable-next-line no-unmodified-loop-condition\n\t\t} while (this._inputComponent(activeInput)!.disabled && activeInput !== startActiveInput && (wrapAround || activeInput < this._entities.length));\n\t\tif (activeInput !== startActiveInput && !this._inputComponent(activeInput)!.disabled) {\n\t\t\tthis._switchInput(activeInput);\n\t\t}\n\t}\n\n\t/**\n\t * Return a value as string, formatted and prepended with zero if necessary.\n\t * @param num A number to format\n\t * @param prependZero Whether to prepend with zero or not\n\t * @returns Formatted value\n\t * @private\n\t */\n\t_formatNumberToString(num: number, prependZero: boolean): string {\n\t\treturn num < 10 && prependZero ? `0${num}` : num.toString();\n\t}\n\n\t_onkeydown(evt: KeyboardEvent) {\n\t\tif (this._activeIndex === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(evt)) {\n\t\t\t// Accept the time and close the popover\n\t\t\tthis.fireDecoratorEvent(\"close-inputs\");\n\t\t} else if (isNumber(evt) && this._entities[this._activeIndex]) {\n\t\t\tconst char = evt.key;\n\t\t\tconst buffer = this._keyboardBuffer + char;\n\t\t\tconst bufferValue = parseInt(buffer);\n\n\t\t\tevt.preventDefault();\n\t\t\tthis._resetCooldown(true);\n\t\t\tif (bufferValue > this._entities[this._activeIndex].attributes!.max) {\n\t\t\t\t// value accumulated in the buffer (old entry + new entry) is greater than the input maximum value,\n\t\t\t\t// so assign old entry to the current inut and then switch to the next input, and add new entry as an old value\n\t\t\t\tthis._inputChange(parseInt(this._keyboardBuffer));\n\t\t\t\tthis._switchNextInput();\n\t\t\t\tthis._keyboardBuffer = char;\n\t\t\t\tthis._inputChange(parseInt(char));\n\t\t\t\tthis._resetCooldown(true);\n\t\t\t} else {\n\t\t\t\t// value is less than clock's max value, so add new entry to the buffer\n\t\t\t\tthis._keyboardBuffer = buffer;\n\t\t\t\tthis._inputChange(parseInt(this._keyboardBuffer));\n\t\t\t\tif (this._keyboardBuffer.length === 2 || parseInt(`${this._keyboardBuffer}0`) > this._entities[this._activeIndex].attributes!.max) {\n\t\t\t\t\t// if buffer length is 2, or buffer value + one more (any) number is greater than clock's max value\n\t\t\t\t\t// there is no place for more entry - just set buffer as a value, and switch to the next clock\n\t\t\t\t\tthis._resetCooldown(this._keyboardBuffer.length !== 2);\n\t\t\t\t\tthis._keyboardBuffer = \"\";\n\t\t\t\t\tthis._switchNextInput();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Input 'change' event handler.\n\t * @param value new value to set on active input\n\t */\n\t_inputChange(value: number) {\n\t\tconst stringValue = this._formatNumberToString(value, this._entities[this._activeIndex].prependZero);\n\n\t\tif (this._activeIndex === -1) {\n\t\t\treturn;\n\t\t}\n\t\tvalue = parseInt(stringValue);\n\t\tthis._entities[this._activeIndex].value = value;\n\t\tthis._inputComponent(this._activeIndex)!.value = this._formatNumberToString(value, this._entities[this._activeIndex].prependZero);\n\t\tswitch (this._activeIndex) {\n\t\tcase this._componentMap.hours:\n\t\t\tthis._hoursChange(value);\n\t\t\tbreak;\n\t\tcase this._componentMap.minutes:\n\t\t\tthis._minutesChange(value);\n\t\t\tbreak;\n\t\tcase this._componentMap.seconds:\n\t\t\tthis._secondsChange(value);\n\t\t\tbreak;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tconst input = e.target as Input;\n\t\tconst innerInput = this._innerInput(input);\n\n\t\tthis._editedInput = -1;\n\t\tinnerInput!.select();\n\t\tthis._activeIndex = this._getIndexFromId(input.id);\n\t}\n\n\t_onfocusout() {\n\t\tlet value = this._inputComponent(this._activeIndex)!.value === \"\" ? 0 : this._entities[this._activeIndex].value;\n\n\t\tthis._editedInput = -1;\n\t\tif (this._isHoursInput && !this._is24HoursFormat && value === 0) {\n\t\t\tvalue = 12;\n\t\t}\n\t\tthis._inputChange(value);\n\t\tthis._activeIndex = -1;\n\t}\n\n\t_oninput() {\n\t\tconst stringValue = this._inputComponent(this._activeIndex)!.value;\n\t\tconst value = stringValue === \"\" ? 0 : parseInt(stringValue);\n\n\t\tif (value !== this._entities[this._activeIndex].value) {\n\t\t\tthis._editedInput = this._activeIndex;\n\t\t\tthis._editedInputValue = stringValue;\n\t\t\tthis._inputChange(value);\n\t\t\tthis._keyboardBuffer = stringValue;\n\t\t}\n\t}\n}\n\nTimeSelectionInputs.define();\n\nexport default TimeSelectionInputs;\n"]}
package/dist/Toast.js CHANGED
@@ -167,7 +167,7 @@ let Toast = class Toast extends UI5Element {
167
167
  this.open = false;
168
168
  this.focusable = false;
169
169
  this.focused = false;
170
- this.fireEvent("close");
170
+ this.fireDecoratorEvent("close");
171
171
  }
172
172
  _onmouseover() {
173
173
  this.hover = true;
@@ -234,7 +234,9 @@ Toast = __decorate([
234
234
  * @since 2.0.0
235
235
  */
236
236
  ,
237
- event("close")
237
+ event("close", {
238
+ bubbles: true,
239
+ })
238
240
  ], Toast);
239
241
  Toast.define();
240
242
  export default Toast;
package/dist/Toast.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../src/Toast.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isMac } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type ToastPlacement from \"./types/ToastPlacement.js\";\n\n// Template\nimport ToastTemplate from \"./generated/templates/ToastTemplate.lit.js\";\n\n// Styles\nimport ToastCss from \"./generated/themes/Toast.css.js\";\n\n// Constants\nconst MIN_DURATION = 500;\nconst MAX_DURATION = 1000;\nconst openedToasts: Array<Toast> = [];\nlet opener: HTMLElement | null;\n\nlet globalListenerAdded = false;\nconst handleGlobalKeydown = (e: KeyboardEvent) => {\n\tconst isCtrl = e.metaKey || (!isMac() && e.ctrlKey);\n\tconst isMKey = e.key && e.key.toLowerCase() === \"m\";\n\tconst isCombinationPressed = isCtrl && e.shiftKey && isMKey;\n\tconst hasOpenToast = openedToasts.length;\n\n\tif (isCombinationPressed) {\n\t\te.preventDefault();\n\n\t\tif (hasOpenToast) {\n\t\t\topenedToasts[0].focusable = true;\n\n\t\t\tif (openedToasts[0].focused) {\n\t\t\t\topenedToasts[0].focused = false;\n\t\t\t\topener?.focus();\n\t\t\t} else {\n\t\t\t\topener = (document.activeElement as HTMLElement);\n\t\t\t\topenedToasts[0].focus();\n\t\t\t}\n\t\t}\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toast` is a small, non-disruptive popup for success or information messages that\n * disappears automatically after a few seconds.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - You want to display a short success or information message.\n * - You do not want to interrupt users while they are performing an action.\n * - You want to confirm a successful action.\n *\n * #### When not to use:\n *\n * - You want to display error or warning message.\n * - You want to interrupt users while they are performing an action.\n * - You want to make sure that users read the message before they leave the page.\n * - You want users to be able to copy some part of the message text.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Toast.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n * @slot {Array<Node>} default\n * Defines the text of the component.\n *\n * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n */\n@customElement({\n\ttag: \"ui5-toast\",\n\trenderer: litRender,\n\tstyles: ToastCss,\n\ttemplate: ToastTemplate,\n})\n\n/**\n * Fired after the component is auto closed.\n * @public\n * @since 2.0.0\n */\n@event(\"close\")\n\nclass Toast extends UI5Element {\n\t/**\n\t * Defines the duration in milliseconds for which component\n\t * remains on the screen before it's automatically closed.\n\t *\n\t * **Note:** The minimum supported value is `500` ms\n\t * and even if a lower value is set, the duration would remain `500` ms.\n\t * @default 3000\n\t * @public\n\t */\n\t@property({ type: Number })\n\tduration = 3000;\n\n\t/**\n\t * Defines the placement of the component.\n\t * @default \"BottomCenter\"\n\t * @public\n\t */\n\t@property()\n\tplacement: `${ToastPlacement}` = \"BottomCenter\";\n\n\t/**\n\t * Indicates whether the component is open (visible).\n\t * @default false\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Indicates whether the component is hovered.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thover = false;\n\n\t/**\n\t * Indicates whether the toast could be focused\n\t * This happens when ctr / command + shift + m is pressed\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocusable = false;\n\n\t/**\n\t * Indicates whether the toast is focused\n\t * This happens when ctr / command + shift + m is pressed\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t_onfocusinFn: () => void;\n\t_onfocusoutFn: () => void;\n\t_onkeydownFn: (e: KeyboardEvent) => void;\n\t_onmouseoverFn: () => void;\n\t_onmouseleaveFn: () => void;\n\t_ontransitionendFn: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onfocusinFn = this._onfocusin.bind(this);\n\t\tthis._onfocusoutFn = this._onfocusout.bind(this);\n\t\tthis._onkeydownFn = this._onkeydown.bind(this);\n\t\tthis._onmouseoverFn = this._onmouseover.bind(this);\n\t\tthis._onmouseleaveFn = this._onmouseleave.bind(this);\n\t\tthis._ontransitionendFn = this._ontransitionend.bind(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.open) {\n\t\t\topenedToasts.pop();\n\t\t\topenedToasts.push(this);\n\t\t}\n\n\t\trequestAnimationFrame(() => {\n\t\t\t// Transition duration (animation) should be a third of the duration\n\t\t\t// property, but not bigger than the maximum allowed (1000ms).\n\t\t\tconst transitionDuration = Math.min(this.effectiveDuration / 3, MAX_DURATION);\n\n\t\t\tthis.style.transitionDuration = this.open ? `${transitionDuration}ms` : \"\";\n\t\t\tthis.style.transitionDelay = this.open ? `${this.effectiveDuration - transitionDuration}ms` : \"\";\n\t\t\tthis.style.opacity = this.open && !this.hover && !this.focused ? \"0\" : \"\";\n\t\t});\n\n\t\tif (!globalListenerAdded) {\n\t\t\tdocument.addEventListener(\"keydown\", handleGlobalKeydown);\n\t\t\tglobalListenerAdded = true;\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tif (this.focusable) {\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t/**\n\t * If the minimum duration is lower than 500ms, we force\n\t * it to be 500ms, as described in the documentation.\n\t * @private\n\t */\n\tget effectiveDuration() {\n\t\treturn this.duration < MIN_DURATION ? MIN_DURATION : this.duration;\n\t}\n\n\t_ontransitionend() {\n\t\tif (this.hover || this.focused) {\n\t\t\treturn;\n\t\t}\n\t\tthis.open = false;\n\t\tthis.focusable = false;\n\t\tthis.focused = false;\n\t\tthis.fireEvent(\"close\");\n\t}\n\n\t_onmouseover() {\n\t\tthis.hover = true;\n\t}\n\n\t_onmouseleave() {\n\t\tthis.hover = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEscape(e)) {\n\t\t\tthis.focused = false;\n\t\t\topener?.focus();\n\t\t}\n\t}\n\n\tget _tabindex() {\n\t\treturn this.focused ? \"0\" : \"-1\";\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.addEventListener(\"focusin\", this._onfocusinFn);\n\t\tthis.addEventListener(\"focusout\", this._onfocusoutFn);\n\t\tthis.addEventListener(\"keydown\", this._onkeydownFn);\n\t\tthis.addEventListener(\"mouseover\", this._onmouseoverFn);\n\t\tthis.addEventListener(\"mouseleave\", this._onmouseleaveFn);\n\t\tthis.addEventListener(\"transitionend\", this._ontransitionendFn);\n\t\tthis.addEventListener(\"transitioncancel\", this._ontransitionendFn);\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.removeEventListener(\"focusin\", this._onfocusinFn);\n\t\tthis.removeEventListener(\"focusout\", this._onfocusoutFn);\n\t\tthis.removeEventListener(\"keydown\", this._onkeydownFn);\n\t\tthis.removeEventListener(\"mouseover\", this._onmouseoverFn);\n\t\tthis.removeEventListener(\"mouseleave\", this._onmouseleaveFn);\n\t\tthis.removeEventListener(\"transitionend\", this._ontransitionendFn);\n\t\tthis.removeEventListener(\"transitioncancel\", this._ontransitionendFn);\n\t}\n}\n\nToast.define();\n\nexport default Toast;\n"]}
1
+ {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../src/Toast.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isMac } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type ToastPlacement from \"./types/ToastPlacement.js\";\n\n// Template\nimport ToastTemplate from \"./generated/templates/ToastTemplate.lit.js\";\n\n// Styles\nimport ToastCss from \"./generated/themes/Toast.css.js\";\n\n// Constants\nconst MIN_DURATION = 500;\nconst MAX_DURATION = 1000;\nconst openedToasts: Array<Toast> = [];\nlet opener: HTMLElement | null;\n\nlet globalListenerAdded = false;\nconst handleGlobalKeydown = (e: KeyboardEvent) => {\n\tconst isCtrl = e.metaKey || (!isMac() && e.ctrlKey);\n\tconst isMKey = e.key && e.key.toLowerCase() === \"m\";\n\tconst isCombinationPressed = isCtrl && e.shiftKey && isMKey;\n\tconst hasOpenToast = openedToasts.length;\n\n\tif (isCombinationPressed) {\n\t\te.preventDefault();\n\n\t\tif (hasOpenToast) {\n\t\t\topenedToasts[0].focusable = true;\n\n\t\t\tif (openedToasts[0].focused) {\n\t\t\t\topenedToasts[0].focused = false;\n\t\t\t\topener?.focus();\n\t\t\t} else {\n\t\t\t\topener = (document.activeElement as HTMLElement);\n\t\t\t\topenedToasts[0].focus();\n\t\t\t}\n\t\t}\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toast` is a small, non-disruptive popup for success or information messages that\n * disappears automatically after a few seconds.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - You want to display a short success or information message.\n * - You do not want to interrupt users while they are performing an action.\n * - You want to confirm a successful action.\n *\n * #### When not to use:\n *\n * - You want to display error or warning message.\n * - You want to interrupt users while they are performing an action.\n * - You want to make sure that users read the message before they leave the page.\n * - You want users to be able to copy some part of the message text.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Toast.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n * @slot {Array<Node>} default\n * Defines the text of the component.\n *\n * **Note:** Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n */\n@customElement({\n\ttag: \"ui5-toast\",\n\trenderer: litRender,\n\tstyles: ToastCss,\n\ttemplate: ToastTemplate,\n})\n\n/**\n * Fired after the component is auto closed.\n * @public\n * @since 2.0.0\n */\n@event(\"close\", {\n\tbubbles: true,\n})\n\nclass Toast extends UI5Element {\n\t/**\n\t * Defines the duration in milliseconds for which component\n\t * remains on the screen before it's automatically closed.\n\t *\n\t * **Note:** The minimum supported value is `500` ms\n\t * and even if a lower value is set, the duration would remain `500` ms.\n\t * @default 3000\n\t * @public\n\t */\n\t@property({ type: Number })\n\tduration = 3000;\n\n\t/**\n\t * Defines the placement of the component.\n\t * @default \"BottomCenter\"\n\t * @public\n\t */\n\t@property()\n\tplacement: `${ToastPlacement}` = \"BottomCenter\";\n\n\t/**\n\t * Indicates whether the component is open (visible).\n\t * @default false\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Indicates whether the component is hovered.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thover = false;\n\n\t/**\n\t * Indicates whether the toast could be focused\n\t * This happens when ctr / command + shift + m is pressed\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocusable = false;\n\n\t/**\n\t * Indicates whether the toast is focused\n\t * This happens when ctr / command + shift + m is pressed\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t_onfocusinFn: () => void;\n\t_onfocusoutFn: () => void;\n\t_onkeydownFn: (e: KeyboardEvent) => void;\n\t_onmouseoverFn: () => void;\n\t_onmouseleaveFn: () => void;\n\t_ontransitionendFn: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onfocusinFn = this._onfocusin.bind(this);\n\t\tthis._onfocusoutFn = this._onfocusout.bind(this);\n\t\tthis._onkeydownFn = this._onkeydown.bind(this);\n\t\tthis._onmouseoverFn = this._onmouseover.bind(this);\n\t\tthis._onmouseleaveFn = this._onmouseleave.bind(this);\n\t\tthis._ontransitionendFn = this._ontransitionend.bind(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.open) {\n\t\t\topenedToasts.pop();\n\t\t\topenedToasts.push(this);\n\t\t}\n\n\t\trequestAnimationFrame(() => {\n\t\t\t// Transition duration (animation) should be a third of the duration\n\t\t\t// property, but not bigger than the maximum allowed (1000ms).\n\t\t\tconst transitionDuration = Math.min(this.effectiveDuration / 3, MAX_DURATION);\n\n\t\t\tthis.style.transitionDuration = this.open ? `${transitionDuration}ms` : \"\";\n\t\t\tthis.style.transitionDelay = this.open ? `${this.effectiveDuration - transitionDuration}ms` : \"\";\n\t\t\tthis.style.opacity = this.open && !this.hover && !this.focused ? \"0\" : \"\";\n\t\t});\n\n\t\tif (!globalListenerAdded) {\n\t\t\tdocument.addEventListener(\"keydown\", handleGlobalKeydown);\n\t\t\tglobalListenerAdded = true;\n\t\t}\n\t}\n\n\t_onfocusin() {\n\t\tif (this.focusable) {\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t/**\n\t * If the minimum duration is lower than 500ms, we force\n\t * it to be 500ms, as described in the documentation.\n\t * @private\n\t */\n\tget effectiveDuration() {\n\t\treturn this.duration < MIN_DURATION ? MIN_DURATION : this.duration;\n\t}\n\n\t_ontransitionend() {\n\t\tif (this.hover || this.focused) {\n\t\t\treturn;\n\t\t}\n\t\tthis.open = false;\n\t\tthis.focusable = false;\n\t\tthis.focused = false;\n\t\tthis.fireDecoratorEvent(\"close\");\n\t}\n\n\t_onmouseover() {\n\t\tthis.hover = true;\n\t}\n\n\t_onmouseleave() {\n\t\tthis.hover = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEscape(e)) {\n\t\t\tthis.focused = false;\n\t\t\topener?.focus();\n\t\t}\n\t}\n\n\tget _tabindex() {\n\t\treturn this.focused ? \"0\" : \"-1\";\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.addEventListener(\"focusin\", this._onfocusinFn);\n\t\tthis.addEventListener(\"focusout\", this._onfocusoutFn);\n\t\tthis.addEventListener(\"keydown\", this._onkeydownFn);\n\t\tthis.addEventListener(\"mouseover\", this._onmouseoverFn);\n\t\tthis.addEventListener(\"mouseleave\", this._onmouseleaveFn);\n\t\tthis.addEventListener(\"transitionend\", this._ontransitionendFn);\n\t\tthis.addEventListener(\"transitioncancel\", this._ontransitionendFn);\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.removeEventListener(\"focusin\", this._onfocusinFn);\n\t\tthis.removeEventListener(\"focusout\", this._onfocusoutFn);\n\t\tthis.removeEventListener(\"keydown\", this._onkeydownFn);\n\t\tthis.removeEventListener(\"mouseover\", this._onmouseoverFn);\n\t\tthis.removeEventListener(\"mouseleave\", this._onmouseleaveFn);\n\t\tthis.removeEventListener(\"transitionend\", this._ontransitionendFn);\n\t\tthis.removeEventListener(\"transitioncancel\", this._ontransitionendFn);\n\t}\n}\n\nToast.define();\n\nexport default Toast;\n"]}
package/dist/Token.js CHANGED
@@ -88,7 +88,7 @@ let Token = Token_1 = class Token extends UI5Element {
88
88
  _handleSelect() {
89
89
  if (!this.toBeDeleted) {
90
90
  this.selected = !this.selected;
91
- this.fireEvent("select");
91
+ this.fireDecoratorEvent("select");
92
92
  }
93
93
  }
94
94
  _focusin() {
@@ -99,14 +99,14 @@ let Token = Token_1 = class Token extends UI5Element {
99
99
  }
100
100
  _delete() {
101
101
  this.toBeDeleted = true;
102
- this.fireEvent("delete");
102
+ this.fireDecoratorEvent("delete");
103
103
  }
104
104
  _keydown(e) {
105
105
  const isBackSpacePressed = isBackSpace(e);
106
106
  const isDeletePressed = isDelete(e);
107
107
  if (!this.readonly && (isBackSpacePressed || isDeletePressed)) {
108
108
  e.preventDefault();
109
- this.fireEvent("delete", {
109
+ this.fireDecoratorEvent("delete", {
110
110
  backSpace: isBackSpacePressed,
111
111
  "delete": isDeletePressed,
112
112
  });
@@ -186,7 +186,9 @@ Token = Token_1 = __decorate([
186
186
  * @private
187
187
  */
188
188
  ,
189
- event("select")
189
+ event("select", {
190
+ bubbles: true,
191
+ })
190
192
  /**
191
193
  * Fired when the backspace, delete or close icon of the token is pressed
192
194
  * @param {Boolean} backSpace Indicates whether token is deleted by backspace key.
@@ -199,6 +201,7 @@ Token = Token_1 = __decorate([
199
201
  "backSpace": { type: Boolean },
200
202
  "delete": { type: Boolean },
201
203
  },
204
+ bubbles: true,
202
205
  })
203
206
  ], Token);
204
207
  Token.define();
package/dist/Token.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Token.js","sourceRoot":"","sources":["../src/Token.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,EACN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,WAAW,GACX,MAAM,sCAAsC,CAAC;AAC9C,OAAO,0CAA0C,CAAC;AAClD,OAAO,6CAA6C,CAAC;AAErD,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE3F,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,aAAa,MAAM,4CAA4C,CAAC;AAEvE,SAAS;AACT,OAAO,WAAW,MAAM,iCAAiC,CAAC;AAO1D;;;;;;;;;;;;;;;GAeG;AA6BH,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,UAAU;IAA9B;;QASC;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;;;;WAOG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,cAAS,GAAG,KAAK,CAAC;QAGlB,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;;WAIG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;;;WAKG;QAEH,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;WAGG;QAEH,mBAAc,GAAG,IAAI,CAAC;QAEtB;;;WAGG;QAEH,eAAU,GAAG,KAAK,CAAA;IAmFnB,CAAC;IArEA,aAAa;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACF,CAAC;IAED,QAAQ;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,OAAO;QACN,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,QAAQ,CAAC,CAAgB;QACxB,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,kBAAkB,IAAI,eAAe,CAAC,EAAE,CAAC;YAC/D,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,IAAI,CAAC,SAAS,CAAyB,QAAQ,EAAE;gBAChD,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,eAAe;aACzB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,aAAa;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,eAAe;QAClB,IAAI,WAAW,GAAG,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAE7D,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,WAAW,IAAI,IAAI,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACrE,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;CACD,CAAA;AAhJA;IADC,QAAQ,EAAE;mCACG;AAQd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACX;AAWjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACV;AAGlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACR;AAQpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sCACZ;AAShB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACR;AAOpB;IADC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;6CACV;AAOtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;yCAC7B;AASlB;IADC,IAAI,EAAE;wCACkB;AAGlB;IADN,IAAI,CAAC,oBAAoB,CAAC;+BACG;AAhFzB,KAAK;IA5BV,aAAa,CAAC;QACd,GAAG,EAAE,WAAW;QAChB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,WAAW;QACnB,YAAY,EAAE,CAAC,IAAI,CAAC;KACpB,CAAC;IAEF;;;OAGG;;IACF,KAAK,CAAC,QAAQ,CAAC;IAEhB;;;;;OAKG;;IACF,KAAK,CAAyB,QAAQ,EAAE;QACxC,MAAM,EAAE;YACP,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YAC9B,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SAC3B;KACD,CAAC;GAEI,KAAK,CAuJV;AAED,KAAK,CAAC,MAAM,EAAE,CAAC;AAEf,eAAe,KAAK,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport {\n\tisBackSpace,\n\tisSpace,\n\tisDelete,\n\tisSpaceCtrl,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-cancel.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { TOKEN_ARIA_DELETABLE, TOKEN_ARIA_LABEL } from \"./generated/i18n/i18n-defaults.js\";\n\nimport Icon from \"./Icon.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport type { IToken } from \"./MultiInput.js\";\nimport TokenTemplate from \"./generated/templates/TokenTemplate.lit.js\";\n\n// Styles\nimport tokenStyles from \"./generated/themes/Token.css.js\";\n\ntype TokenDeleteEventDetail = {\n\tbackSpace: boolean;\n\tdelete: boolean;\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * Tokens are small items of information (similar to tags) that mainly serve to visualize previously selected items.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Token.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.9\n * @implements {IToken}\n * @public\n */\n@customElement({\n\ttag: \"ui5-token\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenTemplate,\n\tstyles: tokenStyles,\n\tdependencies: [Icon],\n})\n\n/**\n * Fired when the the component is selected by user interaction with mouse or by clicking space.\n * @private\n */\n@event(\"select\")\n\n/**\n * Fired when the backspace, delete or close icon of the token is pressed\n * @param {Boolean} backSpace Indicates whether token is deleted by backspace key.\n * @param {Boolean} delete Indicates whether token is deleted by delete key.\n * @private\n */\n@event<TokenDeleteEventDetail>(\"delete\", {\n\tdetail: {\n\t\t\"backSpace\": { type: Boolean },\n\t\t\"delete\": { type: Boolean },\n\t},\n})\n\nclass Token extends UI5Element implements IToken {\n\t/**\n\t * Defines the text of the token.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines whether the component is selected or not.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component can not be deleted or selected,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Set by the tokenizer when a token is in the \"more\" area (overflowing)\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\toverflows = false;\n\n\t@property({ type: Boolean })\n\tsingleToken = false;\n\n\t/**\n\t * Defines whether the component is focused or not.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * Defines whether the token is being deleted\n\t * This flag is used in the ui5-multi-combobox\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ttoBeDeleted = false;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tforcedTabIndex = \"-1\";\n\n\t/**\n\t * Indicates whether the token is visible or not.\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isVisible = false\n\n\t/**\n\t * Defines the close icon for the token. If nothing is provided to this slot, the default close icon will be used.\n\t * Accepts `ui5-icon`.\n\t * @public\n\t * @since 1.0.0-rc.9\n\t */\n\t@slot()\n\tcloseIcon!: Array<IIcon>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_handleSelect() {\n\t\tif (!this.toBeDeleted) {\n\t\t\tthis.selected = !this.selected;\n\t\t\tthis.fireEvent(\"select\");\n\t\t}\n\t}\n\n\t_focusin() {\n\t\tthis.focused = true;\n\t}\n\n\t_focusout() {\n\t\tthis.focused = !this.focused;\n\t}\n\n\t_delete() {\n\t\tthis.toBeDeleted = true;\n\t\tthis.fireEvent(\"delete\");\n\t}\n\n\t_keydown(e: KeyboardEvent) {\n\t\tconst isBackSpacePressed = isBackSpace(e);\n\t\tconst isDeletePressed = isDelete(e);\n\n\t\tif (!this.readonly && (isBackSpacePressed || isDeletePressed)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis.fireEvent<TokenDeleteEventDetail>(\"delete\", {\n\t\t\t\tbackSpace: isBackSpacePressed,\n\t\t\t\t\"delete\": isDeletePressed,\n\t\t\t});\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._handleSelect();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.toBeDeleted = false;\n\t}\n\n\tget tokenDeletableText() {\n\t\treturn Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE);\n\t}\n\n\tget textDom() {\n\t\treturn this.getDomRef()?.querySelector(\".ui5-token--text\");\n\t}\n\n\tget isTruncatable() {\n\t\tif (!this.textDom) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn Math.ceil(this.textDom.getBoundingClientRect().width) < Math.ceil(this.textDom.scrollWidth);\n\t}\n\n\tget ariaDescription() {\n\t\tlet description = Token.i18nBundle.getText(TOKEN_ARIA_LABEL);\n\n\t\tif (!this.readonly) {\n\t\t\tdescription += ` ${Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE)}`;\n\t\t}\n\n\t\treturn description;\n\t}\n}\n\nToken.define();\n\nexport default Token;\nexport type { TokenDeleteEventDetail };\n"]}
1
+ {"version":3,"file":"Token.js","sourceRoot":"","sources":["../src/Token.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport {\n\tisBackSpace,\n\tisSpace,\n\tisDelete,\n\tisSpaceCtrl,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-cancel.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { TOKEN_ARIA_DELETABLE, TOKEN_ARIA_LABEL } from \"./generated/i18n/i18n-defaults.js\";\n\nimport Icon from \"./Icon.js\";\nimport type { IIcon } from \"./Icon.js\";\nimport type { IToken } from \"./MultiInput.js\";\nimport TokenTemplate from \"./generated/templates/TokenTemplate.lit.js\";\n\n// Styles\nimport tokenStyles from \"./generated/themes/Token.css.js\";\n\ntype TokenDeleteEventDetail = {\n\tbackSpace: boolean;\n\tdelete: boolean;\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * Tokens are small items of information (similar to tags) that mainly serve to visualize previously selected items.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Token.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.9\n * @implements {IToken}\n * @public\n */\n@customElement({\n\ttag: \"ui5-token\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenTemplate,\n\tstyles: tokenStyles,\n\tdependencies: [Icon],\n})\n\n/**\n * Fired when the the component is selected by user interaction with mouse or by clicking space.\n * @private\n */\n@event(\"select\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the backspace, delete or close icon of the token is pressed\n * @param {Boolean} backSpace Indicates whether token is deleted by backspace key.\n * @param {Boolean} delete Indicates whether token is deleted by delete key.\n * @private\n */\n@event<TokenDeleteEventDetail>(\"delete\", {\n\tdetail: {\n\t\t\"backSpace\": { type: Boolean },\n\t\t\"delete\": { type: Boolean },\n\t},\n\tbubbles: true,\n})\n\nclass Token extends UI5Element implements IToken {\n\t/**\n\t * Defines the text of the token.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines whether the component is selected or not.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component can not be deleted or selected,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Set by the tokenizer when a token is in the \"more\" area (overflowing)\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\toverflows = false;\n\n\t@property({ type: Boolean })\n\tsingleToken = false;\n\n\t/**\n\t * Defines whether the component is focused or not.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * Defines whether the token is being deleted\n\t * This flag is used in the ui5-multi-combobox\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ttoBeDeleted = false;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tforcedTabIndex = \"-1\";\n\n\t/**\n\t * Indicates whether the token is visible or not.\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isVisible = false\n\n\t/**\n\t * Defines the close icon for the token. If nothing is provided to this slot, the default close icon will be used.\n\t * Accepts `ui5-icon`.\n\t * @public\n\t * @since 1.0.0-rc.9\n\t */\n\t@slot()\n\tcloseIcon!: Array<IIcon>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_handleSelect() {\n\t\tif (!this.toBeDeleted) {\n\t\t\tthis.selected = !this.selected;\n\t\t\tthis.fireDecoratorEvent(\"select\");\n\t\t}\n\t}\n\n\t_focusin() {\n\t\tthis.focused = true;\n\t}\n\n\t_focusout() {\n\t\tthis.focused = !this.focused;\n\t}\n\n\t_delete() {\n\t\tthis.toBeDeleted = true;\n\t\tthis.fireDecoratorEvent(\"delete\");\n\t}\n\n\t_keydown(e: KeyboardEvent) {\n\t\tconst isBackSpacePressed = isBackSpace(e);\n\t\tconst isDeletePressed = isDelete(e);\n\n\t\tif (!this.readonly && (isBackSpacePressed || isDeletePressed)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis.fireDecoratorEvent<TokenDeleteEventDetail>(\"delete\", {\n\t\t\t\tbackSpace: isBackSpacePressed,\n\t\t\t\t\"delete\": isDeletePressed,\n\t\t\t});\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._handleSelect();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.toBeDeleted = false;\n\t}\n\n\tget tokenDeletableText() {\n\t\treturn Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE);\n\t}\n\n\tget textDom() {\n\t\treturn this.getDomRef()?.querySelector(\".ui5-token--text\");\n\t}\n\n\tget isTruncatable() {\n\t\tif (!this.textDom) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn Math.ceil(this.textDom.getBoundingClientRect().width) < Math.ceil(this.textDom.scrollWidth);\n\t}\n\n\tget ariaDescription() {\n\t\tlet description = Token.i18nBundle.getText(TOKEN_ARIA_LABEL);\n\n\t\tif (!this.readonly) {\n\t\t\tdescription += ` ${Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE)}`;\n\t\t}\n\n\t\treturn description;\n\t}\n}\n\nToken.define();\n\nexport default Token;\nexport type { TokenDeleteEventDetail };\n"]}
package/dist/Tokenizer.js CHANGED
@@ -179,7 +179,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
179
179
  token.forcedTabIndex = "-1";
180
180
  });
181
181
  this._skipTabIndex = true;
182
- this.fireEvent("show-more-items-press");
182
+ this.fireDecoratorEvent("show-more-items-press");
183
183
  }
184
184
  _onmousedown(e) {
185
185
  if (e.target.hasAttribute("ui5-token")) {
@@ -239,7 +239,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
239
239
  const nextToken = tokens[nextTokenIndex]; // if the last item was deleted this will be undefined
240
240
  this._handleCurrentItemAfterDeletion(nextToken);
241
241
  this._tokenDeleting = true;
242
- this.fireEvent("token-delete", { tokens: [token] });
242
+ this.fireDecoratorEvent("token-delete", { tokens: [token] });
243
243
  }
244
244
  _handleCurrentItemAfterDeletion(nextToken) {
245
245
  if (nextToken && !isPhone()) {
@@ -284,10 +284,10 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
284
284
  this._handleCurrentItemAfterDeletion(nextToken);
285
285
  this._tokenDeleting = true;
286
286
  if (this._selectedTokens.length) {
287
- this.fireEvent("token-delete", { tokens: this._selectedTokens });
287
+ this.fireDecoratorEvent("token-delete", { tokens: this._selectedTokens });
288
288
  }
289
289
  else {
290
- this.fireEvent("token-delete", { tokens: [token] });
290
+ this.fireDecoratorEvent("token-delete", { tokens: [token] });
291
291
  }
292
292
  }
293
293
  async itemDelete(e) {
@@ -297,7 +297,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
297
297
  if (tokensArray.length === 1) {
298
298
  const morePopover = this.getPopover();
299
299
  morePopover.addEventListener("ui5-close", () => {
300
- this.fireEvent("token-delete", { tokens: [token] });
300
+ this.fireDecoratorEvent("token-delete", { tokens: [token] });
301
301
  }, {
302
302
  once: true,
303
303
  });
@@ -309,7 +309,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
309
309
  this._deletedDialogItems.push(token);
310
310
  }
311
311
  else {
312
- this.fireEvent("token-delete", { tokens: [token] });
312
+ this.fireDecoratorEvent("token-delete", { tokens: [token] });
313
313
  }
314
314
  const currentListItem = e.detail.item;
315
315
  const nextListItem = currentListItem.nextElementSibling;
@@ -340,7 +340,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
340
340
  const list = this._getList();
341
341
  const firstListItem = list.querySelectorAll("[ui5-li]")[0];
342
342
  list._itemNavigation.setCurrentItem(firstListItem);
343
- this.fireEvent("before-more-popover-open");
343
+ this.fireDecoratorEvent("before-more-popover-open");
344
344
  }
345
345
  handleAfterClose() {
346
346
  this.open = false;
@@ -354,7 +354,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
354
354
  const isOkButton = e.target.hasAttribute("data-ui5-tokenizer-dialog-ok-button");
355
355
  const confirm = !!isOkButton;
356
356
  if (confirm && this._deletedDialogItems.length) {
357
- this.fireEvent("token-delete", { tokens: this._deletedDialogItems });
357
+ this.fireDecoratorEvent("token-delete", { tokens: this._deletedDialogItems });
358
358
  }
359
359
  this.open = false;
360
360
  }
@@ -457,7 +457,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
457
457
  });
458
458
  const selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);
459
459
  if (selectedTokensChanged) {
460
- this.fireEvent("selection-change", {
460
+ this.fireDecoratorEvent("selection-change", {
461
461
  tokens: this._selectedTokens,
462
462
  });
463
463
  }
@@ -473,7 +473,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
473
473
  });
474
474
  const selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);
475
475
  if (selectedTokensChanged) {
476
- this.fireEvent("selection-change", {
476
+ this.fireDecoratorEvent("selection-change", {
477
477
  tokens: this._selectedTokens,
478
478
  });
479
479
  }
@@ -515,7 +515,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
515
515
  tokens[nextIndex].selected = true;
516
516
  const selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);
517
517
  if (selectedTokensChanged) {
518
- this.fireEvent("selection-change", {
518
+ this.fireDecoratorEvent("selection-change", {
519
519
  tokens: this._selectedTokens,
520
520
  });
521
521
  }
@@ -524,7 +524,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
524
524
  }
525
525
  _click(e) {
526
526
  if (e.metaKey || e.ctrlKey) {
527
- this.fireEvent("selection-change", {
527
+ this.fireDecoratorEvent("selection-change", {
528
528
  tokens: this._selectedTokens,
529
529
  });
530
530
  return;
@@ -551,7 +551,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
551
551
  token.selected = i >= start && i <= end;
552
552
  });
553
553
  }
554
- this.fireEvent("selection-change", {
554
+ this.fireDecoratorEvent("selection-change", {
555
555
  tokens: this._selectedTokens,
556
556
  });
557
557
  return;
@@ -588,7 +588,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
588
588
  }
589
589
  const tokensAreSelected = tokens.every(token => token.selected);
590
590
  tokens.forEach(token => { token.selected = !tokensAreSelected; });
591
- this.fireEvent("selection-change", {
591
+ this.fireDecoratorEvent("selection-change", {
592
592
  tokens: this._selectedTokens,
593
593
  });
594
594
  }
@@ -601,7 +601,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
601
601
  token.selected = false;
602
602
  }
603
603
  });
604
- this.fireEvent("selection-change", {
604
+ this.fireDecoratorEvent("selection-change", {
605
605
  tokens: this._selectedTokens,
606
606
  });
607
607
  }
@@ -849,6 +849,7 @@ Tokenizer = Tokenizer_1 = __decorate([
849
849
  */
850
850
  tokens: { type: Array },
851
851
  },
852
+ bubbles: true,
852
853
  })
853
854
  /**
854
855
  * Fired when token selection is changed by user interaction
@@ -861,19 +862,24 @@ Tokenizer = Tokenizer_1 = __decorate([
861
862
  detail: {
862
863
  tokens: { type: Array },
863
864
  },
865
+ bubbles: true,
864
866
  })
865
867
  /**
866
868
  * Fired when nMore link is pressed.
867
869
  * @private
868
870
  */
869
871
  ,
870
- event("show-more-items-press")
872
+ event("show-more-items-press", {
873
+ bubbles: true,
874
+ })
871
875
  /**
872
876
  * Fired before nMore Popover is opened.
873
877
  * @private
874
878
  */
875
879
  ,
876
- event("before-more-popover-open")
880
+ event("before-more-popover-open", {
881
+ bubbles: true,
882
+ })
877
883
  ], Tokenizer);
878
884
  const getTokensCountText = (iTokenCount) => {
879
885
  const tokenCountMap = {