@ui5/webcomponents 1.22.0-rc.0 → 1.22.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/AvatarGroup.js.map +1 -1
  4. package/dist/Breadcrumbs.js.map +1 -1
  5. package/dist/Calendar.js +1 -0
  6. package/dist/Calendar.js.map +1 -1
  7. package/dist/Card.d.ts +2 -0
  8. package/dist/Card.js +2 -0
  9. package/dist/Card.js.map +1 -1
  10. package/dist/Carousel.js.map +1 -1
  11. package/dist/CheckBox.d.ts +17 -0
  12. package/dist/CheckBox.js +22 -3
  13. package/dist/CheckBox.js.map +1 -1
  14. package/dist/ColorPalette.d.ts +2 -1
  15. package/dist/ColorPalette.js +5 -2
  16. package/dist/ColorPalette.js.map +1 -1
  17. package/dist/ColorPalettePopover.js.map +1 -1
  18. package/dist/ComboBox.d.ts +14 -0
  19. package/dist/ComboBox.js +57 -17
  20. package/dist/ComboBox.js.map +1 -1
  21. package/dist/CustomListItem.js.map +1 -1
  22. package/dist/DatePicker.js.map +1 -1
  23. package/dist/DateTimePicker.d.ts +1 -0
  24. package/dist/DateTimePicker.js +4 -0
  25. package/dist/DateTimePicker.js.map +1 -1
  26. package/dist/FileUploader.js.map +1 -1
  27. package/dist/Input.d.ts +3 -3
  28. package/dist/Input.js +6 -5
  29. package/dist/Input.js.map +1 -1
  30. package/dist/Interfaces.d.ts +5 -0
  31. package/dist/Interfaces.js.map +1 -1
  32. package/dist/Link.js.map +1 -1
  33. package/dist/List.js +13 -1
  34. package/dist/List.js.map +1 -1
  35. package/dist/ListItem.d.ts +2 -7
  36. package/dist/ListItem.js +1 -8
  37. package/dist/ListItem.js.map +1 -1
  38. package/dist/Menu.js.map +1 -1
  39. package/dist/MultiComboBox.d.ts +31 -6
  40. package/dist/MultiComboBox.js +173 -35
  41. package/dist/MultiComboBox.js.map +1 -1
  42. package/dist/MultiComboBoxGroupItem.d.ts +1 -0
  43. package/dist/MultiComboBoxGroupItem.js +1 -0
  44. package/dist/MultiComboBoxGroupItem.js.map +1 -1
  45. package/dist/MultiComboBoxItem.js.map +1 -1
  46. package/dist/MultiInput.js.map +1 -1
  47. package/dist/NavigationMenu.d.ts +12 -7
  48. package/dist/NavigationMenu.js +7 -10
  49. package/dist/NavigationMenu.js.map +1 -1
  50. package/dist/NavigationMenuItem.d.ts +4 -12
  51. package/dist/NavigationMenuItem.js +2 -6
  52. package/dist/NavigationMenuItem.js.map +1 -1
  53. package/dist/Panel.d.ts +0 -2
  54. package/dist/Panel.js.map +1 -1
  55. package/dist/Popup.js.map +1 -1
  56. package/dist/SegmentedButton.js.map +1 -1
  57. package/dist/SegmentedButtonItem.js.map +1 -1
  58. package/dist/Select.js.map +1 -1
  59. package/dist/SelectMenu.js.map +1 -1
  60. package/dist/SelectMenuOption.js.map +1 -1
  61. package/dist/StandardListItem.js.map +1 -1
  62. package/dist/SuggestionItem.d.ts +0 -2
  63. package/dist/SuggestionItem.js.map +1 -1
  64. package/dist/Switch.js +1 -0
  65. package/dist/Switch.js.map +1 -1
  66. package/dist/TabContainer.js.map +1 -1
  67. package/dist/Table.js.map +1 -1
  68. package/dist/TableGroupRow.d.ts +1 -9
  69. package/dist/TableGroupRow.js +1 -0
  70. package/dist/TableGroupRow.js.map +1 -1
  71. package/dist/TableRow.d.ts +2 -8
  72. package/dist/TableRow.js.map +1 -1
  73. package/dist/TimePickerBase.js.map +1 -1
  74. package/dist/TimePickerClock.js.map +1 -1
  75. package/dist/TimePickerInternals.js.map +1 -1
  76. package/dist/TimeSelection.d.ts +1 -0
  77. package/dist/TimeSelection.js +3 -0
  78. package/dist/TimeSelection.js.map +1 -1
  79. package/dist/Token.js.map +1 -1
  80. package/dist/Tokenizer.d.ts +1 -1
  81. package/dist/Tokenizer.js +5 -4
  82. package/dist/Tokenizer.js.map +1 -1
  83. package/dist/ToolbarSelect.js.map +1 -1
  84. package/dist/Tree.d.ts +1 -1
  85. package/dist/Tree.js.map +1 -1
  86. package/dist/TreeItem.d.ts +0 -10
  87. package/dist/TreeItem.js +0 -4
  88. package/dist/TreeItem.js.map +1 -1
  89. package/dist/TreeItemBase.d.ts +0 -14
  90. package/dist/TreeItemBase.js +0 -7
  91. package/dist/TreeItemBase.js.map +1 -1
  92. package/dist/WheelSlider.d.ts +1 -0
  93. package/dist/WheelSlider.js +4 -2
  94. package/dist/WheelSlider.js.map +1 -1
  95. package/dist/css/themes/Avatar.css +1 -1
  96. package/dist/css/themes/AvatarGroup.css +1 -1
  97. package/dist/css/themes/Badge.css +1 -1
  98. package/dist/css/themes/Breadcrumbs.css +1 -1
  99. package/dist/css/themes/BusyIndicator.css +1 -1
  100. package/dist/css/themes/Button.css +1 -1
  101. package/dist/css/themes/Calendar.css +1 -1
  102. package/dist/css/themes/CalendarHeader.css +1 -1
  103. package/dist/css/themes/Card.css +1 -1
  104. package/dist/css/themes/CardHeader.css +1 -1
  105. package/dist/css/themes/Carousel.css +1 -1
  106. package/dist/css/themes/CheckBox.css +1 -1
  107. package/dist/css/themes/ColorPalette.css +1 -1
  108. package/dist/css/themes/ColorPaletteItem.css +1 -1
  109. package/dist/css/themes/ColorPalettePopover.css +1 -1
  110. package/dist/css/themes/ColorPicker.css +1 -1
  111. package/dist/css/themes/ComboBox.css +1 -1
  112. package/dist/css/themes/CustomListItem.css +1 -1
  113. package/dist/css/themes/DatePicker.css +1 -1
  114. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  115. package/dist/css/themes/DayPicker.css +1 -1
  116. package/dist/css/themes/Dialog.css +1 -1
  117. package/dist/css/themes/FileUploader.css +1 -1
  118. package/dist/css/themes/GroupHeaderListItem.css +1 -1
  119. package/dist/css/themes/GrowingButton.css +1 -1
  120. package/dist/css/themes/Icon.css +1 -1
  121. package/dist/css/themes/Input.css +1 -1
  122. package/dist/css/themes/InputIcon.css +1 -1
  123. package/dist/css/themes/InputSharedStyles.css +1 -1
  124. package/dist/css/themes/Link.css +1 -1
  125. package/dist/css/themes/List.css +1 -1
  126. package/dist/css/themes/ListItem.css +1 -1
  127. package/dist/css/themes/ListItemBase.css +1 -1
  128. package/dist/css/themes/Menu.css +1 -1
  129. package/dist/css/themes/MessageStrip.css +1 -1
  130. package/dist/css/themes/MonthPicker.css +1 -1
  131. package/dist/css/themes/MultiComboBox.css +1 -1
  132. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  133. package/dist/css/themes/MultiInput.css +1 -1
  134. package/dist/css/themes/NavigationMenu.css +1 -1
  135. package/dist/css/themes/Panel.css +1 -1
  136. package/dist/css/themes/Popover.css +1 -1
  137. package/dist/css/themes/PopupsCommon.css +1 -1
  138. package/dist/css/themes/ProgressIndicator.css +1 -1
  139. package/dist/css/themes/RadioButton.css +1 -1
  140. package/dist/css/themes/RangeSlider.css +1 -1
  141. package/dist/css/themes/RatingIndicator.css +1 -1
  142. package/dist/css/themes/ResponsivePopover.css +1 -1
  143. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  144. package/dist/css/themes/SegmentedButton.css +1 -1
  145. package/dist/css/themes/Select.css +1 -1
  146. package/dist/css/themes/SelectMenu.css +1 -1
  147. package/dist/css/themes/SelectPopover.css +1 -1
  148. package/dist/css/themes/SliderBase.css +1 -1
  149. package/dist/css/themes/SplitButton.css +1 -1
  150. package/dist/css/themes/StepInput.css +1 -1
  151. package/dist/css/themes/Switch.css +1 -1
  152. package/dist/css/themes/TabContainer.css +1 -1
  153. package/dist/css/themes/TabInOverflow.css +1 -1
  154. package/dist/css/themes/TabInStrip.css +1 -1
  155. package/dist/css/themes/TabSemanticIcon.css +1 -1
  156. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  157. package/dist/css/themes/Table.css +1 -1
  158. package/dist/css/themes/TableCell.css +1 -1
  159. package/dist/css/themes/TableColumn.css +1 -1
  160. package/dist/css/themes/TableGroupRow.css +1 -1
  161. package/dist/css/themes/TableRow.css +1 -1
  162. package/dist/css/themes/TextArea.css +1 -1
  163. package/dist/css/themes/TimePicker.css +1 -1
  164. package/dist/css/themes/Toast.css +1 -1
  165. package/dist/css/themes/ToggleButton.css +1 -1
  166. package/dist/css/themes/Token.css +1 -1
  167. package/dist/css/themes/Tokenizer.css +1 -1
  168. package/dist/css/themes/TokenizerPopover.css +1 -1
  169. package/dist/css/themes/Toolbar.css +1 -1
  170. package/dist/css/themes/ToolbarPopover.css +1 -1
  171. package/dist/css/themes/TreeItem.css +1 -1
  172. package/dist/css/themes/ValueStateMessage.css +1 -1
  173. package/dist/css/themes/WheelSlider.css +1 -1
  174. package/dist/css/themes/YearPicker.css +1 -1
  175. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  176. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  177. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  178. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  179. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  180. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  181. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  182. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  183. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  184. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  185. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  186. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  187. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  188. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  189. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  190. package/dist/custom-elements-internal.json +799 -1612
  191. package/dist/custom-elements.json +768 -1505
  192. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  240. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  241. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  242. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  243. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  244. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  245. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  246. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  247. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  248. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  249. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  250. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  251. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  252. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  253. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  254. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  255. package/dist/generated/i18n/i18n-defaults.d.ts +4 -1
  256. package/dist/generated/i18n/i18n-defaults.js +4 -1
  257. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  258. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  259. package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
  260. package/dist/generated/templates/CardTemplate.lit.js +1 -1
  261. package/dist/generated/templates/CardTemplate.lit.js.map +1 -1
  262. package/dist/generated/templates/CheckBoxTemplate.lit.js +6 -4
  263. package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -1
  264. package/dist/generated/templates/ColorPaletteTemplate.lit.js +2 -2
  265. package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
  266. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -19
  267. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
  268. package/dist/generated/templates/ComboBoxTemplate.lit.js +4 -3
  269. package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
  270. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  271. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
  272. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  273. package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
  274. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +27 -24
  275. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
  276. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +4 -3
  277. package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
  278. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  279. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
  280. package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
  281. package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -1
  282. package/dist/generated/templates/TimeSelectionTemplate.lit.js +4 -4
  283. package/dist/generated/templates/TimeSelectionTemplate.lit.js.map +1 -1
  284. package/dist/generated/templates/WheelSliderTemplate.lit.js +1 -1
  285. package/dist/generated/templates/WheelSliderTemplate.lit.js.map +1 -1
  286. package/dist/generated/themes/Avatar.css.js +1 -1
  287. package/dist/generated/themes/Avatar.css.js.map +1 -1
  288. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  289. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  290. package/dist/generated/themes/Badge.css.js +1 -1
  291. package/dist/generated/themes/Badge.css.js.map +1 -1
  292. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  293. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  294. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  295. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  296. package/dist/generated/themes/Button.css.js +1 -1
  297. package/dist/generated/themes/Button.css.js.map +1 -1
  298. package/dist/generated/themes/Calendar.css.js +1 -1
  299. package/dist/generated/themes/Calendar.css.js.map +1 -1
  300. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  301. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  302. package/dist/generated/themes/Card.css.js +1 -1
  303. package/dist/generated/themes/Card.css.js.map +1 -1
  304. package/dist/generated/themes/CardHeader.css.js +1 -1
  305. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  306. package/dist/generated/themes/Carousel.css.js +1 -1
  307. package/dist/generated/themes/Carousel.css.js.map +1 -1
  308. package/dist/generated/themes/CheckBox.css.js +1 -1
  309. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  310. package/dist/generated/themes/ColorPalette.css.js +1 -1
  311. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  312. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  313. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  314. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  315. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  316. package/dist/generated/themes/ColorPicker.css.js +1 -1
  317. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  318. package/dist/generated/themes/ComboBox.css.js +1 -1
  319. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  320. package/dist/generated/themes/CustomListItem.css.js +1 -1
  321. package/dist/generated/themes/CustomListItem.css.js.map +1 -1
  322. package/dist/generated/themes/DatePicker.css.js +1 -1
  323. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  324. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  325. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  326. package/dist/generated/themes/DayPicker.css.js +1 -1
  327. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  328. package/dist/generated/themes/Dialog.css.js +1 -1
  329. package/dist/generated/themes/Dialog.css.js.map +1 -1
  330. package/dist/generated/themes/FileUploader.css.js +1 -1
  331. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  332. package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
  333. package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -1
  334. package/dist/generated/themes/GrowingButton.css.js +1 -1
  335. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  336. package/dist/generated/themes/Icon.css.js +1 -1
  337. package/dist/generated/themes/Icon.css.js.map +1 -1
  338. package/dist/generated/themes/Input.css.js +1 -1
  339. package/dist/generated/themes/Input.css.js.map +1 -1
  340. package/dist/generated/themes/InputIcon.css.js +1 -1
  341. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  342. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  343. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  344. package/dist/generated/themes/Link.css.js +1 -1
  345. package/dist/generated/themes/Link.css.js.map +1 -1
  346. package/dist/generated/themes/List.css.js +1 -1
  347. package/dist/generated/themes/List.css.js.map +1 -1
  348. package/dist/generated/themes/ListItem.css.js +1 -1
  349. package/dist/generated/themes/ListItem.css.js.map +1 -1
  350. package/dist/generated/themes/ListItemBase.css.js +1 -1
  351. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  352. package/dist/generated/themes/Menu.css.js +1 -1
  353. package/dist/generated/themes/Menu.css.js.map +1 -1
  354. package/dist/generated/themes/MessageStrip.css.js +1 -1
  355. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  356. package/dist/generated/themes/MonthPicker.css.js +1 -1
  357. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  358. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  359. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  360. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  361. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  362. package/dist/generated/themes/MultiInput.css.js +1 -1
  363. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  364. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  365. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  366. package/dist/generated/themes/Panel.css.js +1 -1
  367. package/dist/generated/themes/Panel.css.js.map +1 -1
  368. package/dist/generated/themes/Popover.css.js +1 -1
  369. package/dist/generated/themes/Popover.css.js.map +1 -1
  370. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  371. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  372. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  373. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  374. package/dist/generated/themes/RadioButton.css.js +1 -1
  375. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  376. package/dist/generated/themes/RangeSlider.css.js +1 -1
  377. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  378. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  379. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  380. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  381. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  382. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  383. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  384. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  385. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  386. package/dist/generated/themes/Select.css.js +1 -1
  387. package/dist/generated/themes/Select.css.js.map +1 -1
  388. package/dist/generated/themes/SelectMenu.css.js +1 -1
  389. package/dist/generated/themes/SelectMenu.css.js.map +1 -1
  390. package/dist/generated/themes/SelectPopover.css.js +1 -1
  391. package/dist/generated/themes/SelectPopover.css.js.map +1 -1
  392. package/dist/generated/themes/SliderBase.css.js +1 -1
  393. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  394. package/dist/generated/themes/SplitButton.css.js +1 -1
  395. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  396. package/dist/generated/themes/StepInput.css.js +1 -1
  397. package/dist/generated/themes/StepInput.css.js.map +1 -1
  398. package/dist/generated/themes/Switch.css.js +1 -1
  399. package/dist/generated/themes/Switch.css.js.map +1 -1
  400. package/dist/generated/themes/TabContainer.css.js +1 -1
  401. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  402. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  403. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  404. package/dist/generated/themes/TabInStrip.css.js +1 -1
  405. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  406. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  407. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  408. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  409. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  410. package/dist/generated/themes/Table.css.js +1 -1
  411. package/dist/generated/themes/Table.css.js.map +1 -1
  412. package/dist/generated/themes/TableCell.css.js +1 -1
  413. package/dist/generated/themes/TableCell.css.js.map +1 -1
  414. package/dist/generated/themes/TableColumn.css.js +1 -1
  415. package/dist/generated/themes/TableColumn.css.js.map +1 -1
  416. package/dist/generated/themes/TableGroupRow.css.js +1 -1
  417. package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
  418. package/dist/generated/themes/TableRow.css.js +1 -1
  419. package/dist/generated/themes/TableRow.css.js.map +1 -1
  420. package/dist/generated/themes/TextArea.css.js +1 -1
  421. package/dist/generated/themes/TextArea.css.js.map +1 -1
  422. package/dist/generated/themes/TimePicker.css.js +1 -1
  423. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  424. package/dist/generated/themes/Toast.css.js +1 -1
  425. package/dist/generated/themes/Toast.css.js.map +1 -1
  426. package/dist/generated/themes/ToggleButton.css.js +1 -1
  427. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  428. package/dist/generated/themes/Token.css.js +1 -1
  429. package/dist/generated/themes/Token.css.js.map +1 -1
  430. package/dist/generated/themes/Tokenizer.css.js +1 -1
  431. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  432. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  433. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  434. package/dist/generated/themes/Toolbar.css.js +1 -1
  435. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  436. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  437. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  438. package/dist/generated/themes/TreeItem.css.js +1 -1
  439. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  440. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  441. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  442. package/dist/generated/themes/WheelSlider.css.js +1 -1
  443. package/dist/generated/themes/WheelSlider.css.js.map +1 -1
  444. package/dist/generated/themes/YearPicker.css.js +1 -1
  445. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  446. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  447. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  448. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  449. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  450. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  451. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  452. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  453. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  454. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  455. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  456. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  457. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  458. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  459. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  460. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  461. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  462. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  464. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  465. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  466. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  467. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  468. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  470. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  471. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  472. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  473. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  474. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  475. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  476. package/package-scripts.cjs +1 -0
  477. package/package.json +9 -9
  478. package/src/Breadcrumbs.hbs +2 -0
  479. package/src/Card.hbs +3 -2
  480. package/src/CheckBox.hbs +25 -18
  481. package/src/ColorPalette.hbs +2 -2
  482. package/src/ComboBox.hbs +6 -0
  483. package/src/ComboBoxPopover.hbs +11 -15
  484. package/src/DateTimePickerPopover.hbs +1 -0
  485. package/src/Input.hbs +1 -1
  486. package/src/MultiComboBox.hbs +6 -0
  487. package/src/MultiComboBoxPopover.hbs +26 -17
  488. package/src/SplitButton.hbs +1 -7
  489. package/src/TimeSelection.hbs +4 -0
  490. package/src/WheelSlider.hbs +1 -0
  491. package/src/i18n/messagebundle.properties +10 -1
  492. package/src/i18n/messagebundle_ar.properties +17 -1
  493. package/src/i18n/messagebundle_bg.properties +17 -1
  494. package/src/i18n/messagebundle_ca.properties +17 -1
  495. package/src/i18n/messagebundle_cnr.properties +17 -1
  496. package/src/i18n/messagebundle_cs.properties +17 -1
  497. package/src/i18n/messagebundle_cy.properties +17 -1
  498. package/src/i18n/messagebundle_da.properties +17 -1
  499. package/src/i18n/messagebundle_de.properties +17 -1
  500. package/src/i18n/messagebundle_el.properties +17 -1
  501. package/src/i18n/messagebundle_en.properties +17 -1
  502. package/src/i18n/messagebundle_en_GB.properties +17 -1
  503. package/src/i18n/messagebundle_en_US_saprigi.properties +17 -1
  504. package/src/i18n/messagebundle_es.properties +17 -1
  505. package/src/i18n/messagebundle_es_MX.properties +17 -1
  506. package/src/i18n/messagebundle_et.properties +17 -1
  507. package/src/i18n/messagebundle_fi.properties +17 -1
  508. package/src/i18n/messagebundle_fr.properties +17 -1
  509. package/src/i18n/messagebundle_fr_CA.properties +17 -1
  510. package/src/i18n/messagebundle_hi.properties +17 -1
  511. package/src/i18n/messagebundle_hr.properties +17 -1
  512. package/src/i18n/messagebundle_hu.properties +17 -1
  513. package/src/i18n/messagebundle_id.properties +17 -1
  514. package/src/i18n/messagebundle_it.properties +17 -1
  515. package/src/i18n/messagebundle_iw.properties +17 -1
  516. package/src/i18n/messagebundle_ja.properties +17 -1
  517. package/src/i18n/messagebundle_kk.properties +17 -1
  518. package/src/i18n/messagebundle_ko.properties +19 -3
  519. package/src/i18n/messagebundle_lt.properties +17 -1
  520. package/src/i18n/messagebundle_lv.properties +17 -1
  521. package/src/i18n/messagebundle_mk.properties +17 -1
  522. package/src/i18n/messagebundle_ms.properties +17 -1
  523. package/src/i18n/messagebundle_nl.properties +17 -1
  524. package/src/i18n/messagebundle_no.properties +20 -4
  525. package/src/i18n/messagebundle_pl.properties +17 -1
  526. package/src/i18n/messagebundle_pt.properties +17 -1
  527. package/src/i18n/messagebundle_pt_PT.properties +17 -1
  528. package/src/i18n/messagebundle_ro.properties +17 -1
  529. package/src/i18n/messagebundle_ru.properties +23 -7
  530. package/src/i18n/messagebundle_sh.properties +17 -1
  531. package/src/i18n/messagebundle_sk.properties +17 -1
  532. package/src/i18n/messagebundle_sl.properties +17 -1
  533. package/src/i18n/messagebundle_sr.properties +17 -1
  534. package/src/i18n/messagebundle_sv.properties +17 -1
  535. package/src/i18n/messagebundle_th.properties +17 -1
  536. package/src/i18n/messagebundle_tr.properties +17 -1
  537. package/src/i18n/messagebundle_uk.properties +17 -1
  538. package/src/i18n/messagebundle_vi.properties +17 -1
  539. package/src/i18n/messagebundle_zh_CN.properties +17 -1
  540. package/src/i18n/messagebundle_zh_TW.properties +17 -1
  541. package/src/themes/Breadcrumbs.css +22 -22
  542. package/src/themes/CheckBox.css +18 -1
  543. package/src/themes/List.css +5 -0
  544. package/src/themes/MultiComboBoxPopover.css +31 -0
  545. package/src/themes/SplitButton.css +62 -162
  546. package/src/themes/TextArea.css +1 -0
  547. package/src/themes/ValueStateMessage.css +1 -1
  548. package/src/themes/base/SplitButton-parameters.css +3 -24
  549. package/src/themes/base/rtl-parameters.css +0 -14
  550. package/src/themes/base/sizes-parameters.css +1 -2
  551. package/src/themes/sap_fiori_3_dark/Badge-parameters.css +5 -0
  552. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  553. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +3 -0
  554. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +10 -11
  555. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +3 -0
  556. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +10 -10
  557. package/src/themes/sap_horizon/SplitButton-parameters.css +1 -14
  558. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +1 -15
  559. package/src/themes/sap_horizon_dark_exp/SplitButton-parameters.css +0 -15
  560. package/src/themes/sap_horizon_exp/SplitButton-parameters.css +0 -15
  561. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +10 -10
  562. package/src/themes/sap_horizon_hcb_exp/SplitButton-parameters.css +10 -10
  563. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +10 -10
  564. package/src/themes/sap_horizon_hcw_exp/SplitButton-parameters.css +10 -10
  565. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TimeSelection.js","sourceRoot":"","sources":["../src/TimeSelection.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport { fetchCldr } from \"@ui5/webcomponents-base/dist/asset-registries/LocaleData.js\";\nimport {\n\tisLeft,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/time-entry-request.js\";\nimport timeSelectionTemplate from \"./generated/templates/TimeSelectionTemplate.lit.js\";\nimport WheelSlider from \"./WheelSlider.js\";\nimport {\n\tgetHours,\n\tgetMinutes,\n\tgetSeconds,\n\tgetHoursConfigByFormat,\n\tgetTimeControlsByFormat,\n} from \"./timepicker-utils/TimeSlider.js\";\n\nimport {\n\tTIMEPICKER_HOURS_LABEL,\n\tTIMEPICKER_MINUTES_LABEL,\n\tTIMEPICKER_SECONDS_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport timeSelectionCss from \"./generated/themes/TimeSelection.css.js\";\nimport type { WheelSliderSelectEventDetail } from \"./WheelSlider.js\";\nimport type { HourType } from \"./timepicker-utils/TimeSlider.js\";\n\ntype TimeSelectionChangeEventDetail = {\n\tvalue: string | undefined,\n\tvalid: boolean,\n}\n\ntype TimeSelectionSliderChangeEventDetail = {\n\tslider: string,\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @private\n * @since 1.0.0-rc.12\n */\n@customElement({\n\ttag: \"ui5-time-selection\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\tstyles: timeSelectionCss,\n\ttemplate: timeSelectionTemplate,\n\tdependencies: [WheelSlider],\n})\n\n/**\n * Fired when the value changes due to user interaction with the sliders\n */\n@event(\"change\", {\n\tdetail: {\n\t\tvalue: { type: String },\n\t\tvalid: { type: Boolean },\n\t},\n})\n\n/**\n * Fired when the expanded/collapsed slider changes (a new slider is expanded or the expanded slider is collapsed)\n */\n@event(\"sliderChange\", {\n\tdetail: {\n\t\tslider: { type: String },\n\t},\n})\nclass TimeSelection extends UI5Element {\n\t/**\n\t * Defines a formatted time value.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\tvalue?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tformatPattern!: string;\n\n\t/**\n\t * Hides the hours slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideHours!: boolean;\n\n\t/**\n\t * Hides the minutes slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideMinutes!: boolean;\n\n\t/**\n\t * Hides the seconds slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideSeconds!: boolean;\n\n\t/**\n\t * The maximum number of hours to be displayed for the hours slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxHours?: number;\n\n\t/**\n\t * The maximum number of minutes to be displayed for the minutes slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxMinutes?: number;\n\n\t/**\n\t * The maximum number of seconds to be displayed for the seconds slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxSeconds?: number;\n\n\t@property({ validator: Integer, defaultValue: 1 })\n\tsecondsStep!: number;\n\n\t@property({ validator: Integer, defaultValue: 1 })\n\tminutesStep!: number;\n\n\t@property({ defaultValue: \"hours\" })\n\t_currentSlider!: string;\n\n\t@property({ type: CalendarType })\n\t_calendarType!: CalendarType;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\t[TimeSelection.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tfetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),\n\t\t]);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _hoursConfiguration() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\treturn getHoursConfigByFormat(hourFormat ? hourFormat.type : \"hour0_23\");\n\t}\n\n\tget _neededSliders() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\treturn getTimeControlsByFormat(formatArray, this._hoursConfiguration);\n\t}\n\n\tget _hasHoursSlider() {\n\t\treturn this._neededSliders[0] && !this.hideHours;\n\t}\n\n\tget _hasMinutesSlider() {\n\t\treturn this._neededSliders[1] && !this.hideMinutes;\n\t}\n\n\tget _hasSecondsSlider() {\n\t\treturn this._neededSliders[2] && !this.hideSeconds;\n\t}\n\n\tget _hasPeriodsSlider() {\n\t\treturn this._neededSliders[3];\n\t}\n\n\tget secondsArray() {\n\t\treturn getSeconds(this.maxSeconds ? this.maxSeconds + 1 : undefined, this.secondsStep);\n\t}\n\n\tget minutesArray() {\n\t\treturn getMinutes(this.maxMinutes ? this.maxMinutes + 1 : undefined, this.minutesStep);\n\t}\n\n\tget hoursArray() {\n\t\treturn getHours(this._hoursConfiguration, this.maxHours ? this.maxHours + 1 : undefined);\n\t}\n\n\tget periodsArray() {\n\t\t// @ts-ignore aDayPeriodsAbbrev is a private API of DateFormat\n\t\tconst dayPeriodsAbbrev = this.getFormat().aDayPeriodsAbbrev as Array<string>;\n\t\treturn dayPeriodsAbbrev.map((x: string) => x.toUpperCase());\n\t}\n\n\tget _hoursSliderFocused() {\n\t\treturn this._currentSlider === \"hours\";\n\t}\n\n\tget _minutesSliderFocused() {\n\t\treturn this._currentSlider === \"minutes\";\n\t}\n\n\tget _secondsSliderFocused() {\n\t\treturn this._currentSlider === \"seconds\";\n\t}\n\n\tget _periodSliderFocused() {\n\t\treturn this._currentSlider === \"periods\";\n\t}\n\n\tget _hours() {\n\t\tlet hours;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() > this._hoursConfiguration.maxHour) {\n\t\t\thours = dateValue.getHours() - 12;\n\t\t} else if (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() < this._hoursConfiguration.minHour) {\n\t\t\thours = dateValue.getHours() + 12;\n\t\t} else {\n\t\t\thours = dateValue.getHours();\n\t\t}\n\t\tif (hours.toString().length === 1) {\n\t\t\thours = `0${hours}`;\n\t\t}\n\t\treturn hours.toString();\n\t}\n\n\tget _minutes() {\n\t\tconst minutes = this.validDateValue.getMinutes().toString();\n\t\treturn minutes.length === 1 ? `0${minutes}` : minutes;\n\t}\n\n\tget _seconds() {\n\t\tconst seconds = this.validDateValue.getSeconds().toString();\n\t\treturn seconds.length === 1 ? `0${seconds}` : seconds;\n\t}\n\n\tget _period() {\n\t\tif (!this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tlet period;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.minHour === 1) {\n\t\t\tperiod = dateValue.getHours() >= this._hoursConfiguration.maxHour ? this.periodsArray[1] : this.periodsArray[0];\n\t\t} else {\n\t\t\tperiod = (dateValue.getHours() > this._hoursConfiguration.maxHour || dateValue.getHours() === this._hoursConfiguration.minHour) ? this.periodsArray[1] : this.periodsArray[0];\n\t\t}\n\t\treturn period;\n\t}\n\n\tsetValue(date: Date) {\n\t\tconst value = this.formatValue(date);\n\t\tif (this.isValid(value)) {\n\t\t\tthis.value = this.normalizeValue(value);\n\t\t\tthis.fireEvent<TimeSelectionChangeEventDetail>(\"change\", { value: this.value, valid: true });\n\t\t}\n\t}\n\n\tonHoursChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tlet hours = parseInt(e.detail.value);\n\t\tconst isTwelveHoursFormat = this._hoursConfiguration.isTwelveHoursFormat;\n\n\t\tif (isTwelveHoursFormat) {\n\t\t\tif (this._period === this.periodsArray[0]) { // AM\n\t\t\t\thours = hours === 12 ? 0 : hours;\n\t\t\t}\n\n\t\t\tif (this._period === this.periodsArray[1]) { // PM\n\t\t\t\thours = hours === 12 ? hours : hours + 12;\n\t\t\t}\n\t\t}\n\n\t\tconst date = this.validDateValue;\n\t\tdate.setHours(hours);\n\t\tthis.setValue(date);\n\t}\n\n\tonMinutesChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst minutes = parseInt(e.detail.value);\n\t\tconst date = this.validDateValue;\n\t\tdate.setMinutes(minutes);\n\t\tthis.setValue(date);\n\t}\n\n\tonSecondsChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst seconds = parseInt(e.detail.value);\n\t\tconst date = this.validDateValue;\n\t\tdate.setSeconds(seconds);\n\t\tthis.setValue(date);\n\t}\n\n\tonPeriodChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst period = e.detail.value;\n\t\tconst date = this.validDateValue;\n\t\tif (period === this.periodsArray[0] && date.getHours() >= 12) {\n\t\t\tdate.setHours(date.getHours() - 12);\n\t\t} if (period === this.periodsArray[1] && date.getHours() < 12) {\n\t\t\tdate.setHours(date.getHours() + 12);\n\t\t}\n\t\tthis.setValue(date);\n\t}\n\n\tisValid(value: string) {\n\t\treturn value === \"\" || this.getFormat().parse(value);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\tget _formatPattern() {\n\t\tconst pattern = this.formatPattern;\n\t\tconst hasHours = !!pattern.match(/H/i);\n\t\tconst fallback = !pattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", undefined) : pattern;\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\t/**\n\t * Event handler for the \"click\" and \"focusin\" events of the sliders\n\t * @param e\n\t */\n\tselectSlider(e: MouseEvent | FocusEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._setCurrentSlider(target.closest<WheelSlider>(\"[ui5-wheelslider]\")!.getAttribute(\"data-sap-slider\")!);\n\t}\n\n\t_setCurrentSlider(slider: string) {\n\t\tif (this._currentSlider === slider) {\n\t\t\treturn;\n\t\t}\n\t\tthis._currentSlider = slider;\n\t\tthis.fireEvent<TimeSelectionSliderChangeEventDetail>(\"slider-change\", { slider });\n\t}\n\n\tget _currentSliderDOM() {\n\t\treturn this.shadowRoot!.querySelector<WheelSlider>(`[data-sap-slider=\"${this._currentSlider}\"]`)!;\n\t}\n\n\tget _activeSliders() {\n\t\treturn [\n\t\t\tthis._hasHoursSlider ? \"hours\" : \"\",\n\t\t\tthis._hasMinutesSlider ? \"minutes\" : \"\",\n\t\t\tthis._hasSecondsSlider ? \"seconds\" : \"\",\n\t\t\tthis._hasPeriodsSlider ? \"periods\" : \"\",\n\t\t].filter((x: string) => !!x);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (!this._currentSlider) {\n\t\t\tthis._setCurrentSlider(this._activeSliders[0]);\n\t\t}\n\n\t\tif (e.target === e.currentTarget) {\n\t\t\tthis._currentSliderDOM.focus();\n\t\t}\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tif (!this.shadowRoot!.contains(e.relatedTarget as Node)) {\n\t\t\tthis._setCurrentSlider(\"\");\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (!(isLeft(e) || isRight(e))) {\n\t\t\treturn;\n\t\t}\n\t\te.preventDefault();\n\n\t\tconst activeSliders = this._activeSliders;\n\t\tconst target = e.target as HTMLElement;\n\t\tconst activeSlider = target.closest<WheelSlider>(\"[ui5-wheelslider]\")!.getAttribute(\"data-sap-slider\")!;\n\t\tlet index = activeSliders.indexOf(activeSlider);\n\t\tif (isLeft(e)) {\n\t\t\tindex = index === 0 ? activeSliders.length - 1 : index - 1;\n\t\t} else if (isRight(e)) {\n\t\t\tindex = index === activeSliders.length - 1 ? 0 : index + 1;\n\t\t}\n\t\tthis._setCurrentSlider(activeSliders[index]);\n\t\tthis._currentSliderDOM.focus();\n\t}\n\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat: DateFormat;\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\tformatValue(date: Date) {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\tget dateValue() {\n\t\treturn this.value ? this.getFormat().parse(this.value) as Date : new Date();\n\t}\n\n\tget validDateValue() {\n\t\treturn this.value !== undefined && this.isValid(this.value) ? this.dateValue : new Date();\n\t}\n\n\tget hoursSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_HOURS_LABEL);\n\t}\n\n\tget minutesSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_MINUTES_LABEL);\n\t}\n\n\tget secondsSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_SECONDS_LABEL);\n\t}\n\n\tget periodSliderTitle() {\n\t\treturn \"AM/PM\";\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-time-selection-root\": true,\n\t\t\t\t\"ui5-phone\": isPhone(),\n\t\t\t},\n\t\t};\n\t}\n}\n\nTimeSelection.define();\n\nexport default TimeSelection;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimeSelectionSliderChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"TimeSelection.js","sourceRoot":"","sources":["../src/TimeSelection.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport { fetchCldr } from \"@ui5/webcomponents-base/dist/asset-registries/LocaleData.js\";\nimport {\n\tisLeft,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/time-entry-request.js\";\nimport timeSelectionTemplate from \"./generated/templates/TimeSelectionTemplate.lit.js\";\nimport WheelSlider from \"./WheelSlider.js\";\nimport {\n\tgetHours,\n\tgetMinutes,\n\tgetSeconds,\n\tgetHoursConfigByFormat,\n\tgetTimeControlsByFormat,\n} from \"./timepicker-utils/TimeSlider.js\";\n\nimport {\n\tTIMEPICKER_HOURS_LABEL,\n\tTIMEPICKER_MINUTES_LABEL,\n\tTIMEPICKER_SECONDS_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport timeSelectionCss from \"./generated/themes/TimeSelection.css.js\";\nimport type { WheelSliderSelectEventDetail } from \"./WheelSlider.js\";\nimport type { HourType } from \"./timepicker-utils/TimeSlider.js\";\n\ntype TimeSelectionChangeEventDetail = {\n\tvalue: string | undefined,\n\tvalid: boolean,\n}\n\ntype TimeSelectionSliderChangeEventDetail = {\n\tslider: string,\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @private\n * @since 1.0.0-rc.12\n */\n@customElement({\n\ttag: \"ui5-time-selection\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\tstyles: timeSelectionCss,\n\ttemplate: timeSelectionTemplate,\n\tdependencies: [WheelSlider],\n})\n\n/**\n * Fired when the value changes due to user interaction with the sliders\n */\n@event<TimeSelectionChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\tvalue: { type: String },\n\t\tvalid: { type: Boolean },\n\t},\n})\n\n/**\n * Fired when the expanded/collapsed slider changes (a new slider is expanded or the expanded slider is collapsed)\n */\n@event<TimeSelectionSliderChangeEventDetail>(\"sliderChange\", {\n\tdetail: {\n\t\tslider: { type: String },\n\t},\n})\nclass TimeSelection extends UI5Element {\n\t/**\n\t * Defines a formatted time value.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\tvalue?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tformatPattern!: string;\n\n\t/**\n\t * Hides the hours slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideHours!: boolean;\n\n\t/**\n\t * Hides the minutes slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideMinutes!: boolean;\n\n\t/**\n\t * Hides the seconds slider regardless of formatPattern\n\t * This property is only needed for the duration picker use case which requires non-standard slider combinations\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideSeconds!: boolean;\n\n\t/**\n\t * The maximum number of hours to be displayed for the hours slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxHours?: number;\n\n\t/**\n\t * The maximum number of minutes to be displayed for the minutes slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxMinutes?: number;\n\n\t/**\n\t * The maximum number of seconds to be displayed for the seconds slider (only needed for the duration picker use case)\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxSeconds?: number;\n\n\t@property({ validator: Integer, defaultValue: 1 })\n\tsecondsStep!: number;\n\n\t@property({ validator: Integer, defaultValue: 1 })\n\tminutesStep!: number;\n\n\t@property({ defaultValue: \"hours\" })\n\t_currentSlider!: string;\n\n\t@property({ type: CalendarType })\n\t_calendarType!: CalendarType;\n\n\t@property()\n\t_density!: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\t[TimeSelection.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tfetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),\n\t\t]);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _hoursConfiguration() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\treturn getHoursConfigByFormat(hourFormat ? hourFormat.type : \"hour0_23\");\n\t}\n\n\tget _neededSliders() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\treturn getTimeControlsByFormat(formatArray, this._hoursConfiguration);\n\t}\n\n\tget _hasHoursSlider() {\n\t\treturn this._neededSliders[0] && !this.hideHours;\n\t}\n\n\tget _hasMinutesSlider() {\n\t\treturn this._neededSliders[1] && !this.hideMinutes;\n\t}\n\n\tget _hasSecondsSlider() {\n\t\treturn this._neededSliders[2] && !this.hideSeconds;\n\t}\n\n\tget _hasPeriodsSlider() {\n\t\treturn this._neededSliders[3];\n\t}\n\n\tget secondsArray() {\n\t\treturn getSeconds(this.maxSeconds ? this.maxSeconds + 1 : undefined, this.secondsStep);\n\t}\n\n\tget minutesArray() {\n\t\treturn getMinutes(this.maxMinutes ? this.maxMinutes + 1 : undefined, this.minutesStep);\n\t}\n\n\tget hoursArray() {\n\t\treturn getHours(this._hoursConfiguration, this.maxHours ? this.maxHours + 1 : undefined);\n\t}\n\n\tget periodsArray() {\n\t\t// @ts-ignore aDayPeriodsAbbrev is a private API of DateFormat\n\t\tconst dayPeriodsAbbrev = this.getFormat().aDayPeriodsAbbrev as Array<string>;\n\t\treturn dayPeriodsAbbrev.map((x: string) => x.toUpperCase());\n\t}\n\n\tget _hoursSliderFocused() {\n\t\treturn this._currentSlider === \"hours\";\n\t}\n\n\tget _minutesSliderFocused() {\n\t\treturn this._currentSlider === \"minutes\";\n\t}\n\n\tget _secondsSliderFocused() {\n\t\treturn this._currentSlider === \"seconds\";\n\t}\n\n\tget _periodSliderFocused() {\n\t\treturn this._currentSlider === \"periods\";\n\t}\n\n\tget _hours() {\n\t\tlet hours;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() > this._hoursConfiguration.maxHour) {\n\t\t\thours = dateValue.getHours() - 12;\n\t\t} else if (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() < this._hoursConfiguration.minHour) {\n\t\t\thours = dateValue.getHours() + 12;\n\t\t} else {\n\t\t\thours = dateValue.getHours();\n\t\t}\n\t\tif (hours.toString().length === 1) {\n\t\t\thours = `0${hours}`;\n\t\t}\n\t\treturn hours.toString();\n\t}\n\n\tget _minutes() {\n\t\tconst minutes = this.validDateValue.getMinutes().toString();\n\t\treturn minutes.length === 1 ? `0${minutes}` : minutes;\n\t}\n\n\tget _seconds() {\n\t\tconst seconds = this.validDateValue.getSeconds().toString();\n\t\treturn seconds.length === 1 ? `0${seconds}` : seconds;\n\t}\n\n\tget _period() {\n\t\tif (!this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tlet period;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.minHour === 1) {\n\t\t\tperiod = dateValue.getHours() >= this._hoursConfiguration.maxHour ? this.periodsArray[1] : this.periodsArray[0];\n\t\t} else {\n\t\t\tperiod = (dateValue.getHours() > this._hoursConfiguration.maxHour || dateValue.getHours() === this._hoursConfiguration.minHour) ? this.periodsArray[1] : this.periodsArray[0];\n\t\t}\n\t\treturn period;\n\t}\n\n\tsetValue(date: Date) {\n\t\tconst value = this.formatValue(date);\n\t\tif (this.isValid(value)) {\n\t\t\tthis.value = this.normalizeValue(value);\n\t\t\tthis.fireEvent<TimeSelectionChangeEventDetail>(\"change\", { value: this.value, valid: true });\n\t\t}\n\t}\n\n\tonHoursChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tlet hours = parseInt(e.detail.value);\n\t\tconst isTwelveHoursFormat = this._hoursConfiguration.isTwelveHoursFormat;\n\n\t\tif (isTwelveHoursFormat) {\n\t\t\tif (this._period === this.periodsArray[0]) { // AM\n\t\t\t\thours = hours === 12 ? 0 : hours;\n\t\t\t}\n\n\t\t\tif (this._period === this.periodsArray[1]) { // PM\n\t\t\t\thours = hours === 12 ? hours : hours + 12;\n\t\t\t}\n\t\t}\n\n\t\tconst date = this.validDateValue;\n\t\tdate.setHours(hours);\n\t\tthis.setValue(date);\n\t}\n\n\tonMinutesChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst minutes = parseInt(e.detail.value);\n\t\tconst date = this.validDateValue;\n\t\tdate.setMinutes(minutes);\n\t\tthis.setValue(date);\n\t}\n\n\tonSecondsChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst seconds = parseInt(e.detail.value);\n\t\tconst date = this.validDateValue;\n\t\tdate.setSeconds(seconds);\n\t\tthis.setValue(date);\n\t}\n\n\tonPeriodChange(e: CustomEvent<WheelSliderSelectEventDetail>) {\n\t\tconst period = e.detail.value;\n\t\tconst date = this.validDateValue;\n\t\tif (period === this.periodsArray[0] && date.getHours() >= 12) {\n\t\t\tdate.setHours(date.getHours() - 12);\n\t\t} if (period === this.periodsArray[1] && date.getHours() < 12) {\n\t\t\tdate.setHours(date.getHours() + 12);\n\t\t}\n\t\tthis.setValue(date);\n\t}\n\n\tisValid(value: string) {\n\t\treturn value === \"\" || this.getFormat().parse(value);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\tget _formatPattern() {\n\t\tconst pattern = this.formatPattern;\n\t\tconst hasHours = !!pattern.match(/H/i);\n\t\tconst fallback = !pattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", undefined) : pattern;\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\t/**\n\t * Event handler for the \"click\" and \"focusin\" events of the sliders\n\t * @param e\n\t */\n\tselectSlider(e: MouseEvent | FocusEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._setCurrentSlider(target.closest<WheelSlider>(\"[ui5-wheelslider]\")!.getAttribute(\"data-sap-slider\")!);\n\t}\n\n\t_setCurrentSlider(slider: string) {\n\t\tif (this._currentSlider === slider) {\n\t\t\treturn;\n\t\t}\n\t\tthis._currentSlider = slider;\n\t\tthis.fireEvent<TimeSelectionSliderChangeEventDetail>(\"slider-change\", { slider });\n\t}\n\n\tget _currentSliderDOM() {\n\t\treturn this.shadowRoot!.querySelector<WheelSlider>(`[data-sap-slider=\"${this._currentSlider}\"]`)!;\n\t}\n\n\tget _activeSliders() {\n\t\treturn [\n\t\t\tthis._hasHoursSlider ? \"hours\" : \"\",\n\t\t\tthis._hasMinutesSlider ? \"minutes\" : \"\",\n\t\t\tthis._hasSecondsSlider ? \"seconds\" : \"\",\n\t\t\tthis._hasPeriodsSlider ? \"periods\" : \"\",\n\t\t].filter((x: string) => !!x);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (!this._currentSlider) {\n\t\t\tthis._setCurrentSlider(this._activeSliders[0]);\n\t\t}\n\n\t\tif (e.target === e.currentTarget) {\n\t\t\tthis._currentSliderDOM.focus();\n\t\t}\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tif (!this.shadowRoot!.contains(e.relatedTarget as Node)) {\n\t\t\tthis._setCurrentSlider(\"\");\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (!(isLeft(e) || isRight(e))) {\n\t\t\treturn;\n\t\t}\n\t\te.preventDefault();\n\n\t\tconst activeSliders = this._activeSliders;\n\t\tconst target = e.target as HTMLElement;\n\t\tconst activeSlider = target.closest<WheelSlider>(\"[ui5-wheelslider]\")!.getAttribute(\"data-sap-slider\")!;\n\t\tlet index = activeSliders.indexOf(activeSlider);\n\t\tif (isLeft(e)) {\n\t\t\tindex = index === 0 ? activeSliders.length - 1 : index - 1;\n\t\t} else if (isRight(e)) {\n\t\t\tindex = index === activeSliders.length - 1 ? 0 : index + 1;\n\t\t}\n\t\tthis._setCurrentSlider(activeSliders[index]);\n\t\tthis._currentSliderDOM.focus();\n\t}\n\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat: DateFormat;\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\tformatValue(date: Date) {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\tget dateValue() {\n\t\treturn this.value ? this.getFormat().parse(this.value) as Date : new Date();\n\t}\n\n\tget validDateValue() {\n\t\treturn this.value !== undefined && this.isValid(this.value) ? this.dateValue : new Date();\n\t}\n\n\tget hoursSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_HOURS_LABEL);\n\t}\n\n\tget minutesSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_MINUTES_LABEL);\n\t}\n\n\tget secondsSliderTitle() {\n\t\treturn TimeSelection.i18nBundle.getText(TIMEPICKER_SECONDS_LABEL);\n\t}\n\n\tget periodSliderTitle() {\n\t\treturn \"AM/PM\";\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-time-selection-root\": true,\n\t\t\t\t\"ui5-phone\": isPhone(),\n\t\t\t},\n\t\t};\n\t}\n}\n\nTimeSelection.define();\n\nexport default TimeSelection;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimeSelectionSliderChangeEventDetail,\n};\n"]}
package/dist/Token.js.map CHANGED
@@ -1 +1 @@
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 { getTheme } from \"@ui5/webcomponents-base/dist/config/Theme.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 { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { TOKEN_ARIA_DELETABLE } from \"./generated/i18n/i18n-defaults.js\";\n\nimport Icon from \"./Icon.js\";\nimport type { IIcon, IToken } from \"./Interfaces.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 * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * Tokens are small items of information (similar to tags) that mainly serve to visualize previously selected items.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Token.js\";</code>\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 * Fired when the the component is selected by user interaction with mouse or by clicking space.\n *\n * @public\n */\n@event(\"select\")\n\n/**\n * Fired when the backspace, delete or close icon of the token is pressed\n *\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(\"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 *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component can not be deleted or selected,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is selected or not.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n\n\t/**\n\t * Set by the tokenizer when a token is in the \"more\" area (overflowing)\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\toverflows!: boolean;\n\n\t@property({ type: Boolean })\n\tsingleToken!: boolean;\n\n\t/**\n\t * Defines whether the component is focused or not.\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\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 *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ttoBeDeleted!: boolean;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t *\n\t * @private\n\t */\n\t@property({ defaultValue: \"-1\", noAttribute: true })\n\t_tabIndex!: string;\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 <code>ui5-icon</code>.\n\t *\n\t * @public\n\t * @since 1.0.0-rc.9\n\t */\n\t@slot()\n\tcloseIcon!: Array<IIcon>;\n\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 iconURI() {\n\t\tif (getTheme().includes(\"sap_belize\")) {\n\t\t\treturn \"sys-cancel\";\n\t\t}\n\n\t\treturn \"decline\";\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\tstatic async onDefine() {\n\t\tToken.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\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 { getTheme } from \"@ui5/webcomponents-base/dist/config/Theme.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 { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { TOKEN_ARIA_DELETABLE } from \"./generated/i18n/i18n-defaults.js\";\n\nimport Icon from \"./Icon.js\";\nimport type { IIcon, IToken } from \"./Interfaces.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 * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * Tokens are small items of information (similar to tags) that mainly serve to visualize previously selected items.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Token.js\";</code>\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 * Fired when the the component is selected by user interaction with mouse or by clicking space.\n *\n * @public\n */\n@event(\"select\")\n\n/**\n * Fired when the backspace, delete or close icon of the token is pressed\n *\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 *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component can not be deleted or selected,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is selected or not.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n\n\t/**\n\t * Set by the tokenizer when a token is in the \"more\" area (overflowing)\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\toverflows!: boolean;\n\n\t@property({ type: Boolean })\n\tsingleToken!: boolean;\n\n\t/**\n\t * Defines whether the component is focused or not.\n\t *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\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 *\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ttoBeDeleted!: boolean;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t *\n\t * @private\n\t */\n\t@property({ defaultValue: \"-1\", noAttribute: true })\n\t_tabIndex!: string;\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 <code>ui5-icon</code>.\n\t *\n\t * @public\n\t * @since 1.0.0-rc.9\n\t */\n\t@slot()\n\tcloseIcon!: Array<IIcon>;\n\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 iconURI() {\n\t\tif (getTheme().includes(\"sap_belize\")) {\n\t\t\treturn \"sys-cancel\";\n\t\t}\n\n\t\treturn \"decline\";\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\tstatic async onDefine() {\n\t\tToken.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nToken.define();\n\nexport default Token;\nexport type { TokenDeleteEventDetail };\n"]}
@@ -119,7 +119,7 @@ declare class Tokenizer extends UI5Element {
119
119
  */
120
120
  _scrollToToken(token: IToken): void;
121
121
  closeMorePopover(): Promise<void>;
122
- get _nMoreText(): string;
122
+ get _nMoreText(): string | undefined;
123
123
  get showNMore(): boolean;
124
124
  get contentDom(): HTMLElement;
125
125
  get expandedContentDom(): HTMLElement | null;
package/dist/Tokenizer.js CHANGED
@@ -64,7 +64,6 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
64
64
  this._scrollEnablement = new ScrollEnablement(this);
65
65
  }
66
66
  onBeforeRendering() {
67
- this._nMoreCount = this.overflownTokens.length;
68
67
  this._tokensCount = this._getTokens().length;
69
68
  this._tokens.forEach(token => {
70
69
  token.singleToken = this._tokens.length === 1;
@@ -122,6 +121,7 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
122
121
  });
123
122
  }
124
123
  async onAfterRendering() {
124
+ this._nMoreCount = this.overflownTokens.length;
125
125
  if (!this._getTokens().length) {
126
126
  const popover = await this.getPopover();
127
127
  popover.close();
@@ -409,6 +409,9 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
409
409
  (await this.getPopover()).close(false, false, true);
410
410
  }
411
411
  get _nMoreText() {
412
+ if (!this._nMoreCount) {
413
+ return;
414
+ }
412
415
  if (this._getVisibleTokens().length) {
413
416
  return Tokenizer_1.i18nBundle.getText(MULTIINPUT_SHOW_MORE_TOKENS, this._nMoreCount);
414
417
  }
@@ -614,9 +617,7 @@ Tokenizer = Tokenizer_1 = __decorate([
614
617
  ref: { type: HTMLElement },
615
618
  },
616
619
  }),
617
- event("before-more-popover-open", {
618
- detail: {},
619
- })
620
+ event("before-more-popover-open")
620
621
  ], Tokenizer);
621
622
  Tokenizer.define();
622
623
  export default Tokenizer;
@@ -1 +1 @@
1
- {"version":3,"file":"Tokenizer.js","sourceRoot":"","sources":["../src/Tokenizer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisSpace,\n\tisSpaceCtrl,\n\tisSpaceShift,\n\tisLeftCtrl,\n\tisRightCtrl,\n\tisUpCtrl,\n\tisDownCtrl,\n\tisUpShift,\n\tisDownShift,\n\tisLeftShift,\n\tisRightShift,\n\tisLeftShiftCtrl,\n\tisRightShiftCtrl,\n\tisEnd,\n\tisHome,\n\tisHomeShift,\n\tisEndShift,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisRight,\n\tisLeft,\n\tisUp,\n\tisDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport List from \"./List.js\";\nimport Title from \"./Title.js\";\nimport Button from \"./Button.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport type Token from \"./Token.js\";\nimport type { IToken } from \"./Interfaces.js\";\nimport type { TokenDeleteEventDetail } from \"./Token.js\";\nimport TokenizerTemplate from \"./generated/templates/TokenizerTemplate.lit.js\";\nimport TokenizerPopoverTemplate from \"./generated/templates/TokenizerPopoverTemplate.lit.js\";\nimport {\n\tMULTIINPUT_SHOW_MORE_TOKENS,\n\tTOKENIZER_ARIA_LABEL,\n\tTOKENIZER_POPOVER_REMOVE,\n\tTOKENIZER_ARIA_CONTAIN_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_ONE_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS,\n\tTOKENIZER_SHOW_ALL_ITEMS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TokenizerCss from \"./generated/themes/Tokenizer.css.js\";\nimport TokenizerPopoverCss from \"./generated/themes/TokenizerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\n// reuse suggestions focus styling for NMore popup\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\n\ntype TokenizerTokenDeleteEventDetail = {\n\tref: Token;\n}\n\nenum ClipboardDataOperation {\n\tcut = \"cut\",\n\tcopy = \"copy\",\n}\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * A container for tokens.\n *\n * @constructor\n * @extends UI5Element\n * @private\n */\n@customElement({\n\ttag: \"ui5-tokenizer\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenizerTemplate,\n\tstyles: TokenizerCss,\n\tstaticAreaStyles: [\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t\tSuggestionsCss,\n\t\tTokenizerPopoverCss,\n\t],\n\tstaticAreaTemplate: TokenizerPopoverTemplate,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tList,\n\t\tStandardListItem,\n\t\tTitle,\n\t\tButton,\n\t],\n})\n\n@event(\"token-delete\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"show-more-items-press\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"before-more-popover-open\", {\n\tdetail: {},\n})\n\nclass Tokenizer extends UI5Element {\n\t@property({ type: Boolean })\n\tshowMore!: boolean;\n\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Prevent opening of n-more Popover when label is clicked\n\t *\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tpreventPopoverOpen!: boolean;\n\n\t/**\n\t * Indicates if the tokenizer should show all tokens or n more label instead\n\t *\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\texpanded!: boolean;\n\n\t@property({ type: Object })\n\tmorePopoverOpener!: Tokenizer;\n\n\t@property({ validator: Integer })\n\tpopoverMinWidth?: number;\n\n\t/**\n\t * Indicates the value state of the related input component.\n\t *\n\t * @default \"None\"\n\t * @private\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t@property({ validator: Integer })\n\t_nMoreCount!: number;\n\n\t@property({ validator: Integer })\n\t_tokensCount!: number;\n\n\t@slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n\ttokens!: Array<Token>;\n\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_resizeHandler: ResizeObserverCallback;\n\t_itemNav: ItemNavigation;\n\t_scrollEnablement: ScrollEnablement;\n\t_expandedScrollWidth?: number;\n\n\t_handleResize() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\n\t\tthis._itemNav = new ItemNavigation(this, {\n\t\t\tcurrentIndex: -1,\n\t\t\tgetItemsCallback: this._getVisibleTokens.bind(this),\n\t\t});\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\t\tthis._tokensCount = this._getTokens().length;\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.singleToken = this._tokens.length === 1;\n\t\t});\n\n\t\tif (!this._tokens.length) {\n\t\t\tthis.closeMorePopover();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this.contentDom, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this.contentDom, this._resizeHandler);\n\t}\n\n\tasync _openMorePopoverAndFireEvent() {\n\t\tif (!this.preventPopoverOpen) {\n\t\t\tawait this.openMorePopover();\n\t\t}\n\n\t\tthis.fireEvent(\"show-more-items-press\");\n\t}\n\n\tasync openMorePopover() {\n\t\t(await this.getPopover()).showAt(this.morePopoverOpener || this);\n\t}\n\n\t_getTokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\tget _tokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif ((e.target as HTMLElement).hasAttribute(\"ui5-token\")) {\n\t\t\tconst target = e.target as Token;\n\t\t\tif (!target.toBeDeleted) {\n\t\t\t\tthis._itemNav.setCurrentItem(target);\n\t\t\t}\n\t\t}\n\t}\n\n\tonTokenSelect() {\n\t\tconst tokens = this._getTokens();\n\n\t\tif (tokens.length === 1 && tokens[0].isTruncatable) {\n\t\t\tif (tokens[0].selected) {\n\t\t\t\tthis.openMorePopover();\n\t\t\t} else {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t}\n\t}\n\n\t_getVisibleTokens() {\n\t\tif (this.disabled) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn this._tokens.filter((token, index) => {\n\t\t\treturn index < (this._tokens.length - this._nMoreCount);\n\t\t});\n\t}\n\n\tasync onAfterRendering() {\n\t\tif (!this._getTokens().length) {\n\t\t\tconst popover = await this.getPopover();\n\t\t\tpopover.close();\n\t\t}\n\n\t\tthis._scrollEnablement.scrollContainer = (this.expanded || !this.narrowContentDom) ? this.expandedContentDom! : this.narrowContentDom;\n\n\t\tif (this.expanded) {\n\t\t\tthis._expandedScrollWidth = this.expandedContentDom!.scrollWidth;\n\t\t\tthis.scrollToEnd();\n\t\t}\n\n\t\tif (!this.expanded) {\n\t\t\tthis.scrollToStart();\n\t\t}\n\t}\n\n\t_delete(e: CustomEvent<TokenDeleteEventDetail>) {\n\t\tconst target = e.target as Token;\n\t\tif (!e.detail) { // if there are no details, the event is triggered by a click\n\t\t\tthis._tokenClickDelete(e, target);\n\n\t\t\tif (this._getTokens().length) {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._selectedTokens.length) {\n\t\t\tthis._selectedTokens.forEach(token => this.deleteToken(token, e.detail.backSpace));\n\t\t} else {\n\t\t\tthis.deleteToken(target, e.detail.backSpace);\n\t\t}\n\t}\n\n\t_tokenClickDelete(e: CustomEvent<TokenDeleteEventDetail>, token: Token) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst target = e.target as Token;\n\t\tconst deletedTokenIndex = token ? tokens.indexOf(token) : tokens.indexOf(target); // The index of the token that just got deleted\n\t\tconst nextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1; // The index of the next token that needs to be focused next due to the deletion\n\t\tconst nextToken = tokens[nextTokenIndex]; // if the last item was deleted this will be undefined\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token || target });\n\t}\n\n\t_handleCurrentItemAfterDeletion(nextToken: Token) {\n\t\tif (nextToken && !isPhone()) {\n\t\t\tthis._itemNav.setCurrentItem(nextToken); // update the item navigation with the new token or undefined, if the last was deleted\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tnextToken.focus();\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Removes a token from the Tokenizer.\n\t * This method should only be used by ui5-multi-combobox and ui5-multi-input\n\t *\n\t * @protected\n\t * @param token Token to be focused.\n\t * @param forwardFocusToPrevious Indicates whether the focus will be forwarded to previous or next token after deletion.\n\t */\n\tdeleteToken(token: Token, forwardFocusToPrevious?: boolean) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst deletedTokenIndex = tokens.indexOf(token);\n\t\tlet nextTokenIndex = (deletedTokenIndex === tokens.length - 1) ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\tconst notSelectedTokens = tokens.filter(t => !t.selected);\n\n\t\tif (forwardFocusToPrevious) { // on backspace key select the previous item (unless deleting the first)\n\t\t\tnextTokenIndex = deletedTokenIndex === 0 ? deletedTokenIndex + 1 : deletedTokenIndex - 1;\n\t\t} else { // on delete key or mouse click on the \"x\" select the next item (unless deleting the last)\n\t\t\tnextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\t}\n\n\t\tlet nextToken = tokens[nextTokenIndex];\n\n\t\tif (notSelectedTokens.length > 1) {\n\t\t\twhile (nextToken && nextToken.selected) {\n\t\t\t\tnextToken = forwardFocusToPrevious ? tokens[--nextTokenIndex] : tokens[++nextTokenIndex];\n\t\t\t}\n\t\t} else {\n\t\t\tnextToken = notSelectedTokens[0];\n\t\t}\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t}\n\n\tasync itemDelete(e: CustomEvent) {\n\t\tconst token = e.detail.item.tokenRef;\n\n\t\t// delay the token deletion in order to close the popover before removing token of the DOM\n\t\tif (this._getTokens().length === 1 && this._getTokens()[0].isTruncatable) {\n\t\t\tconst morePopover = await this.getPopover();\n\n\t\t\tmorePopover.addEventListener(\"ui5-after-close\", () => {\n\t\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t\t}, {\n\t\t\t\tonce: true,\n\t\t\t});\n\n\t\t\tmorePopover.close();\n\t\t} else {\n\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t}\n\t}\n\n\thandleBeforeClose() {\n\t\tif (isPhone()) {\n\t\t\tthis._getTokens().forEach(token => {\n\t\t\t\ttoken.selected = false;\n\t\t\t});\n\t\t}\n\t}\n\n\thandleBeforeOpen() {\n\t\tthis.fireEvent(\"before-more-popover-open\");\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._handleTokenSelection(e, false);\n\t\t}\n\n\t\tif (isHomeShift(e)) {\n\t\t\tthis._handleHomeShift(e);\n\t\t}\n\n\t\tif (isEndShift(e)) {\n\t\t\tthis._handleEndShift(e);\n\t\t}\n\n\t\tthis._handleItemNavigation(e, this._tokens);\n\t}\n\n\t_handleItemNavigation(e: KeyboardEvent, tokens: Array<Token>) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\n\t\tconst target = e.target as Token;\n\n\t\tif (isLeftCtrl(e) || isRightCtrl(e) || isDownCtrl(e) || isUpCtrl(e)) {\n\t\t\treturn this._handleArrowCtrl(e, target, tokens, isRightCtrl(e) || isDownCtrl(e));\n\t\t}\n\n\t\tif (isLeftShift(e) || isRightShift(e) || isUpShift(e) || isDownShift(e) || isLeftShiftCtrl(e) || isRightShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleArrowShift(target, tokens, (isRightShift(e) || isRightShiftCtrl(e) || isDownShift(e)));\n\t\t}\n\n\t\tif (isHome(e) || isEnd(e) || isHomeCtrl(e) || isEndCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleHome(tokens, isEnd(e) || isEndCtrl(e));\n\t\t}\n\n\t\tif (isCtrl && e.key.toLowerCase() === \"a\") {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._toggleTokenSelection(tokens);\n\t\t}\n\n\t\tif (isLeft(e) || isRight(e) || isUp(e) || isDown(e)) {\n\t\t\tconst nextTokenIdx = this._calcNextTokenIndex(this._tokens.find(token => token.focused)!, tokens, (isRight(e) || isDown(e)));\n\t\t\tthis._scrollToToken(tokens[nextTokenIdx]);\n\t\t}\n\t}\n\n\t_handleHome(tokens: Array<Token>, endKeyPressed: boolean) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\n\t\tconst index = endKeyPressed ? tokens.length - 1 : 0;\n\n\t\ttokens[index].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[index]);\n\t}\n\n\t_handleHomeShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index <= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[0].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[0]);\n\t}\n\n\t_handleEndShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index >= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[tokens.length - 1].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[tokens.length - 1]);\n\t}\n\n\t_calcNextTokenIndex(focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tif (!tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tlet nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex >= tokens.length) {\n\t\t\tnextIndex = tokens.length - 1;\n\t\t}\n\t\tif (nextIndex < 0) {\n\t\t\tnextIndex = 0;\n\t\t}\n\n\t\treturn nextIndex;\n\t}\n\n\t_handleArrowCtrl(e: KeyboardEvent, focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tconst nextIndex = this._calcNextTokenIndex(focusedToken, tokens, backwards);\n\n\t\te.preventDefault();\n\n\t\tif (nextIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_handleArrowShift(focusedToken: Token, tokens: Array<Token>, backwards: boolean) {\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tconst nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex === -1 || nextIndex === tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tfocusedToken.selected = true;\n\t\ttokens[nextIndex].selected = true;\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tthis._handleTokenSelection(e);\n\t}\n\n\t_toggleTokenSelection(tokens: Array<Token>) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokensAreSelected = tokens.every(token => token.selected);\n\t\ttokens.forEach(token => { token.selected = !tokensAreSelected; });\n\t}\n\n\t_handleTokenSelection(e: KeyboardEvent | MouseEvent, deselectAll = true) {\n\t\tconst target = e.target as Token;\n\t\tif (target.hasAttribute(\"ui5-token\")) {\n\t\t\tconst deselectTokens = deselectAll ? this._tokens : [];\n\n\t\t\tdeselectTokens.forEach(token => {\n\t\t\t\tif (token !== target) {\n\t\t\t\t\ttoken.selected = false;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t_fillClipboard(shortcutName: ClipboardDataOperation, tokens: Array<IToken>) {\n\t\tconst tokensTexts = tokens.filter(token => token.selected).map(token => token.text).join(\"\\r\\n\");\n\n\t\t/* fill clipboard with tokens' texts so parent can handle creation */\n\t\tconst cutToClipboard = (e: ClipboardEvent) => {\n\t\t\tif (e.clipboardData) {\n\t\t\t\te.clipboardData.setData(\"text/plain\", tokensTexts);\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tdocument.addEventListener(shortcutName, cutToClipboard);\n\t\tdocument.execCommand(shortcutName);\n\t\tdocument.removeEventListener(shortcutName, cutToClipboard);\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its beginning.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToStart() {\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(0, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its end when expanded.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToEnd() {\n\t\tconst expandedTokenizerScrollWidth = this.expandedContentDom && (this.effectiveDir !== \"rtl\" ? this.expandedContentDom.scrollWidth : -this.expandedContentDom.scrollWidth);\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(expandedTokenizerScrollWidth!, 0, 5, 10);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls token to the visible area of the container.\n\t * Adds 4 pixels to the scroll position to ensure padding and border visibility on both ends\n\t * @private\n\t */\n\t_scrollToToken(token: IToken) {\n\t\tif (!this.expandedContentDom) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokenRect = token.getBoundingClientRect();\n\t\tconst tokenContainerRect = this.expandedContentDom.getBoundingClientRect();\n\n\t\tif (tokenRect.left < tokenContainerRect.left) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft - (tokenContainerRect.left - tokenRect.left + 5), 0);\n\t\t} else if (tokenRect.right > tokenContainerRect.right) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft + (tokenRect.right - tokenContainerRect.right + 5), 0);\n\t\t}\n\t}\n\n\tasync closeMorePopover() {\n\t\t(await this.getPopover()).close(false, false, true);\n\t}\n\n\tget _nMoreText() {\n\t\tif (this._getVisibleTokens().length) {\n\t\t\treturn Tokenizer.i18nBundle.getText(MULTIINPUT_SHOW_MORE_TOKENS, this._nMoreCount);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_SHOW_ALL_ITEMS, this._nMoreCount);\n\t}\n\n\tget showNMore() {\n\t\treturn !this.expanded && this.showMore && !!this.overflownTokens.length;\n\t}\n\n\tget contentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer--content\")!;\n\t}\n\n\tget expandedContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-expanded--content\");\n\t}\n\n\tget narrowContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-nmore--content\");\n\t}\n\n\tget tokenizerLabel() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_LABEL);\n\t}\n\n\tget morePopoverTitle() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_POPOVER_REMOVE);\n\t}\n\n\tget overflownTokens() {\n\t\tif (!this.contentDom) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// Reset the overflow prop of the tokens first in order\n\t\t// to use their dimensions for calculation because already\n\t\t// hidden tokens are set to 'display: none'\n\t\tthis._getTokens().forEach(token => {\n\t\t\ttoken.overflows = false;\n\t\t});\n\n\t\treturn this._getTokens().filter(token => {\n\t\t\tconst parentRect = this.contentDom.getBoundingClientRect();\n\t\t\tconst tokenRect = token.getBoundingClientRect();\n\t\t\tconst tokenEnd = Number(tokenRect.right.toFixed(2));\n\t\t\tconst parentEnd = Number(parentRect.right.toFixed(2));\n\t\t\tconst tokenStart = Number(tokenRect.left.toFixed(2));\n\t\t\tconst parentStart = Number(parentRect.left.toFixed(2));\n\n\t\t\ttoken.overflows = !this.expanded && ((tokenStart < parentStart) || (tokenEnd > parentEnd));\n\n\t\t\treturn token.overflows;\n\t\t});\n\t}\n\n\tget noValueStatePopover() {\n\t\treturn this.valueState === ValueState.None || this.valueState === ValueState.Success;\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\t get _valueStateMessageIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: \"error\",\n\t\t\tWarning: \"alert\",\n\t\t\tSuccess: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _selectedTokens() {\n\t\treturn this._getTokens().filter(token => token.selected);\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\twrapper: {\n\t\t\t\t\"ui5-tokenizer-root\": true,\n\t\t\t\t\"ui5-tokenizer-nmore--wrapper\": this.showMore,\n\t\t\t\t\"ui5-tokenizer-no-padding\": !this._getTokens().length,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-tokenizer--content\": true,\n\t\t\t\t\"ui5-tokenizer-expanded--content\": !this.showNMore,\n\t\t\t\t\"ui5-tokenizer-nmore--content\": this.showNMore,\n\t\t\t},\n\t\t\tpopover: {\n\t\t\t\t\"ui5-popover-with-value-state-header-phone\": this._isPhone && !this.noValueStatePopover,\n\t\t\t\t\"ui5-popover-with-value-state-header\": !this._isPhone && !this.noValueStatePopover,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Success,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Error,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Warning,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"min-width\": this.popoverMinWidth ? `${this.popoverMinWidth}px` : \"\",\n\t\t\t},\n\t\t\tpopoverValueStateMessage: {\n\t\t\t\t\"width\": this.popoverMinWidth && !isPhone() ? `${this.popoverMinWidth}px` : \"100%\",\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeader: {\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeaderTitle: {\n\t\t\t\t\"justify-content\": \"left\",\n\t\t\t},\n\t\t};\n\t}\n\n\t_tokensCountText() {\n\t\tconst iTokenCount = this._getTokens().length;\n\n\t\tif (iTokenCount === 0) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_TOKEN);\n\t\t}\n\n\t\tif (iTokenCount === 1) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_ONE_TOKEN);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS, iTokenCount);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\t_focusLastToken() {\n\t\tif (this.tokens.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastToken = this.tokens[this.tokens.length - 1];\n\t\tlastToken.focus();\n\t\tthis._itemNav.setCurrentItem(lastToken);\n\t}\n\n\tstatic async onDefine() {\n\t\tTokenizer.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tasync getPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n}\n\nTokenizer.define();\n\nexport default Tokenizer;\nexport { ClipboardDataOperation };\nexport type { TokenizerTokenDeleteEventDetail };\n"]}
1
+ {"version":3,"file":"Tokenizer.js","sourceRoot":"","sources":["../src/Tokenizer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisSpace,\n\tisSpaceCtrl,\n\tisSpaceShift,\n\tisLeftCtrl,\n\tisRightCtrl,\n\tisUpCtrl,\n\tisDownCtrl,\n\tisUpShift,\n\tisDownShift,\n\tisLeftShift,\n\tisRightShift,\n\tisLeftShiftCtrl,\n\tisRightShiftCtrl,\n\tisEnd,\n\tisHome,\n\tisHomeShift,\n\tisEndShift,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisRight,\n\tisLeft,\n\tisUp,\n\tisDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport List from \"./List.js\";\nimport Title from \"./Title.js\";\nimport Button from \"./Button.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport type Token from \"./Token.js\";\nimport type { IToken } from \"./Interfaces.js\";\nimport type { TokenDeleteEventDetail } from \"./Token.js\";\nimport TokenizerTemplate from \"./generated/templates/TokenizerTemplate.lit.js\";\nimport TokenizerPopoverTemplate from \"./generated/templates/TokenizerPopoverTemplate.lit.js\";\nimport {\n\tMULTIINPUT_SHOW_MORE_TOKENS,\n\tTOKENIZER_ARIA_LABEL,\n\tTOKENIZER_POPOVER_REMOVE,\n\tTOKENIZER_ARIA_CONTAIN_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_ONE_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS,\n\tTOKENIZER_SHOW_ALL_ITEMS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TokenizerCss from \"./generated/themes/Tokenizer.css.js\";\nimport TokenizerPopoverCss from \"./generated/themes/TokenizerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\n// reuse suggestions focus styling for NMore popup\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\n\ntype TokenizerTokenDeleteEventDetail = {\n\tref: Token;\n}\n\nenum ClipboardDataOperation {\n\tcut = \"cut\",\n\tcopy = \"copy\",\n}\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * A container for tokens.\n *\n * @constructor\n * @extends UI5Element\n * @private\n */\n@customElement({\n\ttag: \"ui5-tokenizer\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenizerTemplate,\n\tstyles: TokenizerCss,\n\tstaticAreaStyles: [\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t\tSuggestionsCss,\n\t\tTokenizerPopoverCss,\n\t],\n\tstaticAreaTemplate: TokenizerPopoverTemplate,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tList,\n\t\tStandardListItem,\n\t\tTitle,\n\t\tButton,\n\t],\n})\n\n@event(\"token-delete\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"show-more-items-press\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"before-more-popover-open\")\nclass Tokenizer extends UI5Element {\n\t@property({ type: Boolean })\n\tshowMore!: boolean;\n\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Prevent opening of n-more Popover when label is clicked\n\t *\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tpreventPopoverOpen!: boolean;\n\n\t/**\n\t * Indicates if the tokenizer should show all tokens or n more label instead\n\t *\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\texpanded!: boolean;\n\n\t@property({ type: Object })\n\tmorePopoverOpener!: Tokenizer;\n\n\t@property({ validator: Integer })\n\tpopoverMinWidth?: number;\n\n\t/**\n\t * Indicates the value state of the related input component.\n\t *\n\t * @default \"None\"\n\t * @private\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t@property({ validator: Integer })\n\t_nMoreCount!: number;\n\n\t@property({ validator: Integer })\n\t_tokensCount!: number;\n\n\t@slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n\ttokens!: Array<Token>;\n\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_resizeHandler: ResizeObserverCallback;\n\t_itemNav: ItemNavigation;\n\t_scrollEnablement: ScrollEnablement;\n\t_expandedScrollWidth?: number;\n\n\t_handleResize() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\n\t\tthis._itemNav = new ItemNavigation(this, {\n\t\t\tcurrentIndex: -1,\n\t\t\tgetItemsCallback: this._getVisibleTokens.bind(this),\n\t\t});\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._tokensCount = this._getTokens().length;\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.singleToken = this._tokens.length === 1;\n\t\t});\n\n\t\tif (!this._tokens.length) {\n\t\t\tthis.closeMorePopover();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this.contentDom, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this.contentDom, this._resizeHandler);\n\t}\n\n\tasync _openMorePopoverAndFireEvent() {\n\t\tif (!this.preventPopoverOpen) {\n\t\t\tawait this.openMorePopover();\n\t\t}\n\n\t\tthis.fireEvent(\"show-more-items-press\");\n\t}\n\n\tasync openMorePopover() {\n\t\t(await this.getPopover()).showAt(this.morePopoverOpener || this);\n\t}\n\n\t_getTokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\tget _tokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif ((e.target as HTMLElement).hasAttribute(\"ui5-token\")) {\n\t\t\tconst target = e.target as Token;\n\t\t\tif (!target.toBeDeleted) {\n\t\t\t\tthis._itemNav.setCurrentItem(target);\n\t\t\t}\n\t\t}\n\t}\n\n\tonTokenSelect() {\n\t\tconst tokens = this._getTokens();\n\n\t\tif (tokens.length === 1 && tokens[0].isTruncatable) {\n\t\t\tif (tokens[0].selected) {\n\t\t\t\tthis.openMorePopover();\n\t\t\t} else {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t}\n\t}\n\n\t_getVisibleTokens() {\n\t\tif (this.disabled) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn this._tokens.filter((token, index) => {\n\t\t\treturn index < (this._tokens.length - this._nMoreCount);\n\t\t});\n\t}\n\n\tasync onAfterRendering() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\n\t\tif (!this._getTokens().length) {\n\t\t\tconst popover = await this.getPopover();\n\t\t\tpopover.close();\n\t\t}\n\n\t\tthis._scrollEnablement.scrollContainer = (this.expanded || !this.narrowContentDom) ? this.expandedContentDom! : this.narrowContentDom;\n\n\t\tif (this.expanded) {\n\t\t\tthis._expandedScrollWidth = this.expandedContentDom!.scrollWidth;\n\t\t\tthis.scrollToEnd();\n\t\t}\n\n\t\tif (!this.expanded) {\n\t\t\tthis.scrollToStart();\n\t\t}\n\t}\n\n\t_delete(e: CustomEvent<TokenDeleteEventDetail>) {\n\t\tconst target = e.target as Token;\n\t\tif (!e.detail) { // if there are no details, the event is triggered by a click\n\t\t\tthis._tokenClickDelete(e, target);\n\n\t\t\tif (this._getTokens().length) {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._selectedTokens.length) {\n\t\t\tthis._selectedTokens.forEach(token => this.deleteToken(token, e.detail.backSpace));\n\t\t} else {\n\t\t\tthis.deleteToken(target, e.detail.backSpace);\n\t\t}\n\t}\n\n\t_tokenClickDelete(e: CustomEvent<TokenDeleteEventDetail>, token: Token) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst target = e.target as Token;\n\t\tconst deletedTokenIndex = token ? tokens.indexOf(token) : tokens.indexOf(target); // The index of the token that just got deleted\n\t\tconst nextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1; // The index of the next token that needs to be focused next due to the deletion\n\t\tconst nextToken = tokens[nextTokenIndex]; // if the last item was deleted this will be undefined\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token || target });\n\t}\n\n\t_handleCurrentItemAfterDeletion(nextToken: Token) {\n\t\tif (nextToken && !isPhone()) {\n\t\t\tthis._itemNav.setCurrentItem(nextToken); // update the item navigation with the new token or undefined, if the last was deleted\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tnextToken.focus();\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Removes a token from the Tokenizer.\n\t * This method should only be used by ui5-multi-combobox and ui5-multi-input\n\t *\n\t * @protected\n\t * @param token Token to be focused.\n\t * @param forwardFocusToPrevious Indicates whether the focus will be forwarded to previous or next token after deletion.\n\t */\n\tdeleteToken(token: Token, forwardFocusToPrevious?: boolean) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst deletedTokenIndex = tokens.indexOf(token);\n\t\tlet nextTokenIndex = (deletedTokenIndex === tokens.length - 1) ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\tconst notSelectedTokens = tokens.filter(t => !t.selected);\n\n\t\tif (forwardFocusToPrevious) { // on backspace key select the previous item (unless deleting the first)\n\t\t\tnextTokenIndex = deletedTokenIndex === 0 ? deletedTokenIndex + 1 : deletedTokenIndex - 1;\n\t\t} else { // on delete key or mouse click on the \"x\" select the next item (unless deleting the last)\n\t\t\tnextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\t}\n\n\t\tlet nextToken = tokens[nextTokenIndex];\n\n\t\tif (notSelectedTokens.length > 1) {\n\t\t\twhile (nextToken && nextToken.selected) {\n\t\t\t\tnextToken = forwardFocusToPrevious ? tokens[--nextTokenIndex] : tokens[++nextTokenIndex];\n\t\t\t}\n\t\t} else {\n\t\t\tnextToken = notSelectedTokens[0];\n\t\t}\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t}\n\n\tasync itemDelete(e: CustomEvent) {\n\t\tconst token = e.detail.item.tokenRef;\n\n\t\t// delay the token deletion in order to close the popover before removing token of the DOM\n\t\tif (this._getTokens().length === 1 && this._getTokens()[0].isTruncatable) {\n\t\t\tconst morePopover = await this.getPopover();\n\n\t\t\tmorePopover.addEventListener(\"ui5-after-close\", () => {\n\t\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t\t}, {\n\t\t\t\tonce: true,\n\t\t\t});\n\n\t\t\tmorePopover.close();\n\t\t} else {\n\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t}\n\t}\n\n\thandleBeforeClose() {\n\t\tif (isPhone()) {\n\t\t\tthis._getTokens().forEach(token => {\n\t\t\t\ttoken.selected = false;\n\t\t\t});\n\t\t}\n\t}\n\n\thandleBeforeOpen() {\n\t\tthis.fireEvent(\"before-more-popover-open\");\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._handleTokenSelection(e, false);\n\t\t}\n\n\t\tif (isHomeShift(e)) {\n\t\t\tthis._handleHomeShift(e);\n\t\t}\n\n\t\tif (isEndShift(e)) {\n\t\t\tthis._handleEndShift(e);\n\t\t}\n\n\t\tthis._handleItemNavigation(e, this._tokens);\n\t}\n\n\t_handleItemNavigation(e: KeyboardEvent, tokens: Array<Token>) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\n\t\tconst target = e.target as Token;\n\n\t\tif (isLeftCtrl(e) || isRightCtrl(e) || isDownCtrl(e) || isUpCtrl(e)) {\n\t\t\treturn this._handleArrowCtrl(e, target, tokens, isRightCtrl(e) || isDownCtrl(e));\n\t\t}\n\n\t\tif (isLeftShift(e) || isRightShift(e) || isUpShift(e) || isDownShift(e) || isLeftShiftCtrl(e) || isRightShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleArrowShift(target, tokens, (isRightShift(e) || isRightShiftCtrl(e) || isDownShift(e)));\n\t\t}\n\n\t\tif (isHome(e) || isEnd(e) || isHomeCtrl(e) || isEndCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleHome(tokens, isEnd(e) || isEndCtrl(e));\n\t\t}\n\n\t\tif (isCtrl && e.key.toLowerCase() === \"a\") {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._toggleTokenSelection(tokens);\n\t\t}\n\n\t\tif (isLeft(e) || isRight(e) || isUp(e) || isDown(e)) {\n\t\t\tconst nextTokenIdx = this._calcNextTokenIndex(this._tokens.find(token => token.focused)!, tokens, (isRight(e) || isDown(e)));\n\t\t\tthis._scrollToToken(tokens[nextTokenIdx]);\n\t\t}\n\t}\n\n\t_handleHome(tokens: Array<Token>, endKeyPressed: boolean) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\n\t\tconst index = endKeyPressed ? tokens.length - 1 : 0;\n\n\t\ttokens[index].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[index]);\n\t}\n\n\t_handleHomeShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index <= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[0].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[0]);\n\t}\n\n\t_handleEndShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index >= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[tokens.length - 1].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[tokens.length - 1]);\n\t}\n\n\t_calcNextTokenIndex(focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tif (!tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tlet nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex >= tokens.length) {\n\t\t\tnextIndex = tokens.length - 1;\n\t\t}\n\t\tif (nextIndex < 0) {\n\t\t\tnextIndex = 0;\n\t\t}\n\n\t\treturn nextIndex;\n\t}\n\n\t_handleArrowCtrl(e: KeyboardEvent, focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tconst nextIndex = this._calcNextTokenIndex(focusedToken, tokens, backwards);\n\n\t\te.preventDefault();\n\n\t\tif (nextIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_handleArrowShift(focusedToken: Token, tokens: Array<Token>, backwards: boolean) {\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tconst nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex === -1 || nextIndex === tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tfocusedToken.selected = true;\n\t\ttokens[nextIndex].selected = true;\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tthis._handleTokenSelection(e);\n\t}\n\n\t_toggleTokenSelection(tokens: Array<Token>) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokensAreSelected = tokens.every(token => token.selected);\n\t\ttokens.forEach(token => { token.selected = !tokensAreSelected; });\n\t}\n\n\t_handleTokenSelection(e: KeyboardEvent | MouseEvent, deselectAll = true) {\n\t\tconst target = e.target as Token;\n\t\tif (target.hasAttribute(\"ui5-token\")) {\n\t\t\tconst deselectTokens = deselectAll ? this._tokens : [];\n\n\t\t\tdeselectTokens.forEach(token => {\n\t\t\t\tif (token !== target) {\n\t\t\t\t\ttoken.selected = false;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t_fillClipboard(shortcutName: ClipboardDataOperation, tokens: Array<IToken>) {\n\t\tconst tokensTexts = tokens.filter(token => token.selected).map(token => token.text).join(\"\\r\\n\");\n\n\t\t/* fill clipboard with tokens' texts so parent can handle creation */\n\t\tconst cutToClipboard = (e: ClipboardEvent) => {\n\t\t\tif (e.clipboardData) {\n\t\t\t\te.clipboardData.setData(\"text/plain\", tokensTexts);\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tdocument.addEventListener(shortcutName, cutToClipboard);\n\t\tdocument.execCommand(shortcutName);\n\t\tdocument.removeEventListener(shortcutName, cutToClipboard);\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its beginning.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToStart() {\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(0, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its end when expanded.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToEnd() {\n\t\tconst expandedTokenizerScrollWidth = this.expandedContentDom && (this.effectiveDir !== \"rtl\" ? this.expandedContentDom.scrollWidth : -this.expandedContentDom.scrollWidth);\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(expandedTokenizerScrollWidth!, 0, 5, 10);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls token to the visible area of the container.\n\t * Adds 4 pixels to the scroll position to ensure padding and border visibility on both ends\n\t * @private\n\t */\n\t_scrollToToken(token: IToken) {\n\t\tif (!this.expandedContentDom) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokenRect = token.getBoundingClientRect();\n\t\tconst tokenContainerRect = this.expandedContentDom.getBoundingClientRect();\n\n\t\tif (tokenRect.left < tokenContainerRect.left) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft - (tokenContainerRect.left - tokenRect.left + 5), 0);\n\t\t} else if (tokenRect.right > tokenContainerRect.right) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft + (tokenRect.right - tokenContainerRect.right + 5), 0);\n\t\t}\n\t}\n\n\tasync closeMorePopover() {\n\t\t(await this.getPopover()).close(false, false, true);\n\t}\n\n\tget _nMoreText() {\n\t\tif (!this._nMoreCount) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._getVisibleTokens().length) {\n\t\t\treturn Tokenizer.i18nBundle.getText(MULTIINPUT_SHOW_MORE_TOKENS, this._nMoreCount);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_SHOW_ALL_ITEMS, this._nMoreCount);\n\t}\n\n\tget showNMore() {\n\t\treturn !this.expanded && this.showMore && !!this.overflownTokens.length;\n\t}\n\n\tget contentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer--content\")!;\n\t}\n\n\tget expandedContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-expanded--content\");\n\t}\n\n\tget narrowContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-nmore--content\");\n\t}\n\n\tget tokenizerLabel() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_LABEL);\n\t}\n\n\tget morePopoverTitle() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_POPOVER_REMOVE);\n\t}\n\n\tget overflownTokens() {\n\t\tif (!this.contentDom) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// Reset the overflow prop of the tokens first in order\n\t\t// to use their dimensions for calculation because already\n\t\t// hidden tokens are set to 'display: none'\n\t\tthis._getTokens().forEach(token => {\n\t\t\ttoken.overflows = false;\n\t\t});\n\n\t\treturn this._getTokens().filter(token => {\n\t\t\tconst parentRect = this.contentDom.getBoundingClientRect();\n\t\t\tconst tokenRect = token.getBoundingClientRect();\n\t\t\tconst tokenEnd = Number(tokenRect.right.toFixed(2));\n\t\t\tconst parentEnd = Number(parentRect.right.toFixed(2));\n\t\t\tconst tokenStart = Number(tokenRect.left.toFixed(2));\n\t\t\tconst parentStart = Number(parentRect.left.toFixed(2));\n\n\t\t\ttoken.overflows = !this.expanded && ((tokenStart < parentStart) || (tokenEnd > parentEnd));\n\n\t\t\treturn token.overflows;\n\t\t});\n\t}\n\n\tget noValueStatePopover() {\n\t\treturn this.valueState === ValueState.None || this.valueState === ValueState.Success;\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\t get _valueStateMessageIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: \"error\",\n\t\t\tWarning: \"alert\",\n\t\t\tSuccess: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _selectedTokens() {\n\t\treturn this._getTokens().filter(token => token.selected);\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\twrapper: {\n\t\t\t\t\"ui5-tokenizer-root\": true,\n\t\t\t\t\"ui5-tokenizer-nmore--wrapper\": this.showMore,\n\t\t\t\t\"ui5-tokenizer-no-padding\": !this._getTokens().length,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-tokenizer--content\": true,\n\t\t\t\t\"ui5-tokenizer-expanded--content\": !this.showNMore,\n\t\t\t\t\"ui5-tokenizer-nmore--content\": this.showNMore,\n\t\t\t},\n\t\t\tpopover: {\n\t\t\t\t\"ui5-popover-with-value-state-header-phone\": this._isPhone && !this.noValueStatePopover,\n\t\t\t\t\"ui5-popover-with-value-state-header\": !this._isPhone && !this.noValueStatePopover,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Success,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Error,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Warning,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"min-width\": this.popoverMinWidth ? `${this.popoverMinWidth}px` : \"\",\n\t\t\t},\n\t\t\tpopoverValueStateMessage: {\n\t\t\t\t\"width\": this.popoverMinWidth && !isPhone() ? `${this.popoverMinWidth}px` : \"100%\",\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeader: {\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeaderTitle: {\n\t\t\t\t\"justify-content\": \"left\",\n\t\t\t},\n\t\t};\n\t}\n\n\t_tokensCountText() {\n\t\tconst iTokenCount = this._getTokens().length;\n\n\t\tif (iTokenCount === 0) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_TOKEN);\n\t\t}\n\n\t\tif (iTokenCount === 1) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_ONE_TOKEN);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS, iTokenCount);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\t_focusLastToken() {\n\t\tif (this.tokens.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastToken = this.tokens[this.tokens.length - 1];\n\t\tlastToken.focus();\n\t\tthis._itemNav.setCurrentItem(lastToken);\n\t}\n\n\tstatic async onDefine() {\n\t\tTokenizer.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tasync getPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n}\n\nTokenizer.define();\n\nexport default Tokenizer;\nexport { ClipboardDataOperation };\nexport type { TokenizerTokenDeleteEventDetail };\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarSelect.js","sourceRoot":"","sources":["../src/ToolbarSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport CSSSize from \"@ui5/webcomponents-base/dist/types/CSSSize.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n// Templates\n\nimport ToolbarSelectTemplate from \"./generated/templates/ToolbarSelectTemplate.lit.js\";\nimport ToolbarPopoverSelectTemplate from \"./generated/templates/ToolbarPopoverSelectTemplate.lit.js\";\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport Select from \"./Select.js\";\nimport Option from \"./Option.js\";\nimport type ToolbarSelectOption from \"./ToolbarSelectOption.js\";\nimport type { SelectChangeEventDetail } from \"./Select.js\";\n\ntype ToolbarSelectChangeEventDetail = SelectChangeEventDetail;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-toolbar-select</code> component is used to create a toolbar drop-down list.\n * The items inside the <code>ui5-toolbar-select</code> define the available options by using the <code>ui5-toolbar-select-option</code> component.\n *\n * <h3>ES6 Module Import</h3>\n * <code>import \"@ui5/webcomponents/dist/ToolbarSelect\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents/dist/ToolbarSelectOption\";</code> (comes with <code>ui5-toolbar-select</code>)\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-select\",\n\tdependencies: [Select, Option],\n})\n\n/**\n * Fired when the selected option changes.\n *\n * @allowPreventDefault\n * @param {HTMLElement} selectedOption the selected option.\n * @public\n */\n@event(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired after the component's dropdown menu opens.\n *\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n *\n * @public\n */\n@event(\"close\")\n\nclass ToolbarSelect extends ToolbarItem {\n\t/**\n\t * Defines the width of the select.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: CSSSize })\n\twidth?: string;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> Use the <code>ui5-toolbar-select-option</code> component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<ToolbarSelectOption>;\n\n\t/**\n\t * Defines the value state of the component.\n\t * <br><br>\n\t *\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component is in disabled state.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is noninteractive.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @public\n\t * @default \"\"\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t_onEvent: EventListener\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSelectTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSelectTemplate;\n\t}\n\n\tget subscribedEvents() {\n\t\tconst map = new Map();\n\n\t\tmap.set(\"click\", { preventClosing: true });\n\t\tmap.set(\"change\", { preventClosing: false });\n\t\tmap.set(\"open\", { preventClosing: true });\n\t\tmap.set(\"close\", { preventClosing: true });\n\n\t\treturn map;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onEvent = this._onEventHandler.bind(this);\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.attachEventListeners();\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.detachEventListeners();\n\t}\n\n\tattachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.addEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\tdetachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.removeEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\t_onEventHandler(e: Event): void {\n\t\tif (e.type === \"change\") {\n\t\t\t// update options\n\t\t\tconst selectedOption = (e as CustomEvent<ToolbarSelectChangeEventDetail>).detail.selectedOption;\n\t\t\tconst selectedOptionIndex = Number(selectedOption?.getAttribute(\"data-ui5-external-action-item-index\"));\n\t\t\tthis.options.forEach((option: ToolbarSelectOption, index: number) => {\n\t\t\t\tif (index === selectedOptionIndex) {\n\t\t\t\t\toption.setAttribute(\"selected\", \"\");\n\t\t\t\t} else {\n\t\t\t\t\toption.removeAttribute(\"selected\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t};\n\t}\n}\n\nregisterToolbarItem(ToolbarSelect);\n\nToolbarSelect.define();\n\nexport default ToolbarSelect;\n\nexport type {\n\tToolbarSelectChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"ToolbarSelect.js","sourceRoot":"","sources":["../src/ToolbarSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport CSSSize from \"@ui5/webcomponents-base/dist/types/CSSSize.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n// Templates\n\nimport ToolbarSelectTemplate from \"./generated/templates/ToolbarSelectTemplate.lit.js\";\nimport ToolbarPopoverSelectTemplate from \"./generated/templates/ToolbarPopoverSelectTemplate.lit.js\";\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport Select from \"./Select.js\";\nimport Option from \"./Option.js\";\nimport type ToolbarSelectOption from \"./ToolbarSelectOption.js\";\nimport type { SelectChangeEventDetail } from \"./Select.js\";\n\ntype ToolbarSelectChangeEventDetail = SelectChangeEventDetail;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-toolbar-select</code> component is used to create a toolbar drop-down list.\n * The items inside the <code>ui5-toolbar-select</code> define the available options by using the <code>ui5-toolbar-select-option</code> component.\n *\n * <h3>ES6 Module Import</h3>\n * <code>import \"@ui5/webcomponents/dist/ToolbarSelect\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents/dist/ToolbarSelectOption\";</code> (comes with <code>ui5-toolbar-select</code>)\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-select\",\n\tdependencies: [Select, Option],\n})\n\n/**\n * Fired when the selected option changes.\n *\n * @allowPreventDefault\n * @param {HTMLElement} selectedOption the selected option.\n * @public\n */\n@event<ToolbarSelectChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t* @public\n\t\t*/\n\t\tselectedOption: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired after the component's dropdown menu opens.\n *\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the component's dropdown menu closes.\n *\n * @public\n */\n@event(\"close\")\n\nclass ToolbarSelect extends ToolbarItem {\n\t/**\n\t * Defines the width of the select.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: CSSSize })\n\twidth?: string;\n\n\t/**\n\t * Defines the component options.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> Only one selected option is allowed.\n\t * If more than one option is defined as selected, the last one would be considered as the selected one.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> Use the <code>ui5-toolbar-select-option</code> component to define the desired options.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\toptions!: Array<ToolbarSelectOption>;\n\n\t/**\n\t * Defines the value state of the component.\n\t * <br><br>\n\t *\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component is in disabled state.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is noninteractive.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @public\n\t * @default \"\"\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the select.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t_onEvent: EventListener\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarSelectTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverSelectTemplate;\n\t}\n\n\tget subscribedEvents() {\n\t\tconst map = new Map();\n\n\t\tmap.set(\"click\", { preventClosing: true });\n\t\tmap.set(\"change\", { preventClosing: false });\n\t\tmap.set(\"open\", { preventClosing: true });\n\t\tmap.set(\"close\", { preventClosing: true });\n\n\t\treturn map;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onEvent = this._onEventHandler.bind(this);\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.attachEventListeners();\n\t}\n\n\tonExitDOM(): void {\n\t\tthis.detachEventListeners();\n\t}\n\n\tattachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.addEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\tdetachEventListeners(): void {\n\t\t[...this.subscribedEvents.keys()].forEach(e => {\n\t\t\tthis.removeEventListener(e, this._onEvent);\n\t\t});\n\t}\n\n\t_onEventHandler(e: Event): void {\n\t\tif (e.type === \"change\") {\n\t\t\t// update options\n\t\t\tconst selectedOption = (e as CustomEvent<ToolbarSelectChangeEventDetail>).detail.selectedOption;\n\t\t\tconst selectedOptionIndex = Number(selectedOption?.getAttribute(\"data-ui5-external-action-item-index\"));\n\t\t\tthis.options.forEach((option: ToolbarSelectOption, index: number) => {\n\t\t\t\tif (index === selectedOptionIndex) {\n\t\t\t\t\toption.setAttribute(\"selected\", \"\");\n\t\t\t\t} else {\n\t\t\t\t\toption.removeAttribute(\"selected\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t};\n\t}\n}\n\nregisterToolbarItem(ToolbarSelect);\n\nToolbarSelect.define();\n\nexport default ToolbarSelect;\n\nexport type {\n\tToolbarSelectChangeEventDetail,\n};\n"]}
package/dist/Tree.d.ts CHANGED
@@ -183,4 +183,4 @@ declare class Tree extends UI5Element {
183
183
  _isInstanceOfTreeItemBase(object: any): object is TreeItemBase;
184
184
  }
185
185
  export default Tree;
186
- export type { TreeItemToggleEventDetail, TreeItemMouseoverEventDetail, TreeItemMouseoutEventDetail, TreeItemClickEventDetail, TreeItemDeleteEventDetail, TreeSelectionChangeEventDetail, };
186
+ export type { TreeItemToggleEventDetail, TreeItemMouseoverEventDetail, TreeItemMouseoutEventDetail, TreeItemClickEventDetail, TreeItemDeleteEventDetail, TreeSelectionChangeEventDetail, WalkCallback, };