@ui5/webcomponents 2.1.0-rc.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (563) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/AvatarGroup.js +1 -1
  4. package/dist/AvatarGroup.js.map +1 -1
  5. package/dist/CalendarDateRange.d.ts +1 -1
  6. package/dist/CalendarDateRange.js +1 -1
  7. package/dist/CalendarDateRange.js.map +1 -1
  8. package/dist/Card.d.ts +14 -0
  9. package/dist/Card.js +25 -1
  10. package/dist/Card.js.map +1 -1
  11. package/dist/ColorPalette.d.ts +6 -2
  12. package/dist/ColorPalette.js +17 -12
  13. package/dist/ColorPalette.js.map +1 -1
  14. package/dist/DatePicker.d.ts +2 -0
  15. package/dist/DatePicker.js +5 -0
  16. package/dist/DatePicker.js.map +1 -1
  17. package/dist/DayPicker.js +1 -1
  18. package/dist/DayPicker.js.map +1 -1
  19. package/dist/Dialog.js +1 -0
  20. package/dist/Dialog.js.map +1 -1
  21. package/dist/Input.d.ts +1 -0
  22. package/dist/Input.js +22 -25
  23. package/dist/Input.js.map +1 -1
  24. package/dist/List.d.ts +0 -6
  25. package/dist/List.js +0 -13
  26. package/dist/List.js.map +1 -1
  27. package/dist/MenuSeparator.d.ts +1 -1
  28. package/dist/MenuSeparator.js +1 -1
  29. package/dist/MenuSeparator.js.map +1 -1
  30. package/dist/MultiComboBox.js +1 -1
  31. package/dist/MultiComboBox.js.map +1 -1
  32. package/dist/MultiComboBoxItemGroup.d.ts +1 -1
  33. package/dist/MultiComboBoxItemGroup.js +1 -1
  34. package/dist/MultiComboBoxItemGroup.js.map +1 -1
  35. package/dist/RadioButton.js +1 -1
  36. package/dist/RadioButton.js.map +1 -1
  37. package/dist/Select.js +1 -1
  38. package/dist/Select.js.map +1 -1
  39. package/dist/Table.d.ts +1 -1
  40. package/dist/Table.js +1 -1
  41. package/dist/Table.js.map +1 -1
  42. package/dist/TableCell.d.ts +1 -1
  43. package/dist/TableCell.js +1 -1
  44. package/dist/TableCell.js.map +1 -1
  45. package/dist/TableCellBase.d.ts +1 -1
  46. package/dist/TableCellBase.js +1 -1
  47. package/dist/TableCellBase.js.map +1 -1
  48. package/dist/TableGrowing.d.ts +1 -1
  49. package/dist/TableGrowing.js +1 -1
  50. package/dist/TableGrowing.js.map +1 -1
  51. package/dist/TableHeaderCell.d.ts +1 -1
  52. package/dist/TableHeaderCell.js +1 -1
  53. package/dist/TableHeaderCell.js.map +1 -1
  54. package/dist/TableHeaderRow.d.ts +1 -1
  55. package/dist/TableHeaderRow.js +1 -1
  56. package/dist/TableHeaderRow.js.map +1 -1
  57. package/dist/TableRow.d.ts +1 -1
  58. package/dist/TableRow.js +1 -1
  59. package/dist/TableRow.js.map +1 -1
  60. package/dist/TableRowBase.d.ts +1 -1
  61. package/dist/TableRowBase.js +1 -1
  62. package/dist/TableRowBase.js.map +1 -1
  63. package/dist/TableSelection.d.ts +1 -1
  64. package/dist/TableSelection.js +1 -1
  65. package/dist/TableSelection.js.map +1 -1
  66. package/dist/TimePicker.d.ts +1 -1
  67. package/dist/TimePicker.js +1 -1
  68. package/dist/TimePicker.js.map +1 -1
  69. package/dist/TimePickerClock.js +16 -0
  70. package/dist/TimePickerClock.js.map +1 -1
  71. package/dist/Toolbar.js +2 -1
  72. package/dist/Toolbar.js.map +1 -1
  73. package/dist/ToolbarRegistry.js +1 -1
  74. package/dist/ToolbarRegistry.js.map +1 -1
  75. package/dist/css/themes/Avatar.css +1 -1
  76. package/dist/css/themes/AvatarGroup.css +1 -1
  77. package/dist/css/themes/Bar.css +1 -1
  78. package/dist/css/themes/Breadcrumbs.css +1 -1
  79. package/dist/css/themes/BusyIndicator.css +1 -1
  80. package/dist/css/themes/Button.css +1 -1
  81. package/dist/css/themes/Calendar.css +1 -1
  82. package/dist/css/themes/CalendarHeader.css +1 -1
  83. package/dist/css/themes/CalendarLegend.css +1 -1
  84. package/dist/css/themes/CalendarLegendItem.css +1 -1
  85. package/dist/css/themes/Card.css +1 -1
  86. package/dist/css/themes/CardHeader.css +1 -1
  87. package/dist/css/themes/Carousel.css +1 -1
  88. package/dist/css/themes/CheckBox.css +1 -1
  89. package/dist/css/themes/ColorPalette.css +1 -1
  90. package/dist/css/themes/ColorPaletteItem.css +1 -1
  91. package/dist/css/themes/ColorPalettePopover.css +1 -1
  92. package/dist/css/themes/ColorPicker.css +1 -1
  93. package/dist/css/themes/ComboBox.css +1 -1
  94. package/dist/css/themes/DatePicker.css +1 -1
  95. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  96. package/dist/css/themes/DayPicker.css +1 -1
  97. package/dist/css/themes/Dialog.css +1 -1
  98. package/dist/css/themes/FileUploader.css +1 -1
  99. package/dist/css/themes/Form.css +1 -1
  100. package/dist/css/themes/FormItem.css +1 -1
  101. package/dist/css/themes/FormLabelSpan.css +1 -1
  102. package/dist/css/themes/GrowingButton.css +1 -1
  103. package/dist/css/themes/Icon.css +1 -1
  104. package/dist/css/themes/Input.css +1 -1
  105. package/dist/css/themes/InputIcon.css +1 -1
  106. package/dist/css/themes/InputSharedStyles.css +1 -1
  107. package/dist/css/themes/Link.css +1 -1
  108. package/dist/css/themes/List.css +1 -1
  109. package/dist/css/themes/ListItem.css +1 -1
  110. package/dist/css/themes/ListItemBase.css +1 -1
  111. package/dist/css/themes/ListItemCustom.css +1 -1
  112. package/dist/css/themes/ListItemGroup.css +1 -1
  113. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  114. package/dist/css/themes/ListItemIcon.css +1 -1
  115. package/dist/css/themes/Menu.css +1 -1
  116. package/dist/css/themes/MenuItem.css +1 -1
  117. package/dist/css/themes/MessageStrip.css +1 -1
  118. package/dist/css/themes/MonthPicker.css +1 -1
  119. package/dist/css/themes/MultiComboBox.css +1 -1
  120. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  121. package/dist/css/themes/MultiInput.css +1 -1
  122. package/dist/css/themes/NavigationMenu.css +1 -1
  123. package/dist/css/themes/NavigationMenuItem.css +1 -1
  124. package/dist/css/themes/OptionBase.css +1 -1
  125. package/dist/css/themes/Panel.css +1 -1
  126. package/dist/css/themes/Popover.css +1 -1
  127. package/dist/css/themes/PopupsCommon.css +1 -1
  128. package/dist/css/themes/ProgressIndicator.css +1 -1
  129. package/dist/css/themes/RadioButton.css +1 -1
  130. package/dist/css/themes/RangeSlider.css +1 -1
  131. package/dist/css/themes/RatingIndicator.css +1 -1
  132. package/dist/css/themes/ResponsivePopover.css +1 -1
  133. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  134. package/dist/css/themes/SegmentedButton.css +1 -1
  135. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  136. package/dist/css/themes/Select.css +1 -1
  137. package/dist/css/themes/SliderBase.css +1 -1
  138. package/dist/css/themes/SplitButton.css +1 -1
  139. package/dist/css/themes/StepInput.css +1 -1
  140. package/dist/css/themes/SuggestionItem.css +1 -1
  141. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  142. package/dist/css/themes/Switch.css +1 -1
  143. package/dist/css/themes/TabContainer.css +1 -1
  144. package/dist/css/themes/TabInOverflow.css +1 -1
  145. package/dist/css/themes/TabInStrip.css +1 -1
  146. package/dist/css/themes/TabSemanticIcon.css +1 -1
  147. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  148. package/dist/css/themes/Table.css +1 -1
  149. package/dist/css/themes/TableCellBase.css +1 -1
  150. package/dist/css/themes/TableHeaderRow.css +1 -1
  151. package/dist/css/themes/TableRow.css +1 -1
  152. package/dist/css/themes/TableRowBase.css +1 -1
  153. package/dist/css/themes/Tag.css +1 -1
  154. package/dist/css/themes/Text.css +1 -1
  155. package/dist/css/themes/TextArea.css +1 -1
  156. package/dist/css/themes/TimePicker.css +1 -1
  157. package/dist/css/themes/Toast.css +1 -1
  158. package/dist/css/themes/ToggleButton.css +1 -1
  159. package/dist/css/themes/Token.css +1 -1
  160. package/dist/css/themes/Tokenizer.css +1 -1
  161. package/dist/css/themes/TokenizerPopover.css +1 -1
  162. package/dist/css/themes/Toolbar.css +1 -1
  163. package/dist/css/themes/ToolbarPopover.css +1 -1
  164. package/dist/css/themes/TreeItem.css +1 -1
  165. package/dist/css/themes/ValueStateMessage.css +1 -1
  166. package/dist/css/themes/YearPicker.css +1 -1
  167. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  168. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  169. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  170. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  171. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  172. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  173. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  174. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  175. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  176. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  177. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  178. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  179. package/dist/custom-elements-internal.json +54 -13
  180. package/dist/custom-elements.json +38 -0
  181. package/dist/features/ColorPaletteMoreColors.d.ts +3 -2
  182. package/dist/features/ColorPaletteMoreColors.js +4 -4
  183. package/dist/features/ColorPaletteMoreColors.js.map +1 -1
  184. package/dist/features/InputSuggestions.d.ts +3 -2
  185. package/dist/features/InputSuggestions.js +5 -4
  186. package/dist/features/InputSuggestions.js.map +1 -1
  187. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  188. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  237. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  238. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  239. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  240. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  241. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  242. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  243. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  244. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  245. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  246. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  247. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  248. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  249. package/dist/generated/templates/CardTemplate.lit.js +2 -2
  250. package/dist/generated/templates/CardTemplate.lit.js.map +1 -1
  251. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +2 -2
  252. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -1
  253. package/dist/generated/templates/ColorPaletteTemplate.lit.js +2 -2
  254. package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
  255. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  256. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
  257. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  258. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
  259. package/dist/generated/templates/DateRangePickerTemplate.lit.js +1 -1
  260. package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -1
  261. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  262. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
  263. package/dist/generated/templates/DateTimePickerTemplate.lit.js +1 -1
  264. package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
  265. package/dist/generated/templates/InputPopoverTemplate.lit.js +1 -1
  266. package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
  267. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  268. package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
  269. package/dist/generated/templates/ListTemplate.lit.js +2 -3
  270. package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
  271. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  272. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
  273. package/dist/generated/templates/OptionCustomTemplate.lit.js +1 -1
  274. package/dist/generated/templates/OptionCustomTemplate.lit.js.map +1 -1
  275. package/dist/generated/templates/OptionTemplate.lit.js +1 -1
  276. package/dist/generated/templates/OptionTemplate.lit.js.map +1 -1
  277. package/dist/generated/themes/Avatar.css.js +1 -1
  278. package/dist/generated/themes/Avatar.css.js.map +1 -1
  279. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  280. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  281. package/dist/generated/themes/Bar.css.js +1 -1
  282. package/dist/generated/themes/Bar.css.js.map +1 -1
  283. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  284. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  285. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  286. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  287. package/dist/generated/themes/Button.css.js +1 -1
  288. package/dist/generated/themes/Button.css.js.map +1 -1
  289. package/dist/generated/themes/Calendar.css.js +1 -1
  290. package/dist/generated/themes/Calendar.css.js.map +1 -1
  291. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  292. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  293. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  294. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  295. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  296. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  297. package/dist/generated/themes/Card.css.js +1 -1
  298. package/dist/generated/themes/Card.css.js.map +1 -1
  299. package/dist/generated/themes/CardHeader.css.js +1 -1
  300. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  301. package/dist/generated/themes/Carousel.css.js +1 -1
  302. package/dist/generated/themes/Carousel.css.js.map +1 -1
  303. package/dist/generated/themes/CheckBox.css.js +1 -1
  304. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  305. package/dist/generated/themes/ColorPalette.css.js +1 -1
  306. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  307. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  308. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  309. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  310. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  311. package/dist/generated/themes/ColorPicker.css.js +1 -1
  312. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  313. package/dist/generated/themes/ComboBox.css.js +1 -1
  314. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  315. package/dist/generated/themes/DatePicker.css.js +1 -1
  316. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  317. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  318. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  319. package/dist/generated/themes/DayPicker.css.js +1 -1
  320. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  321. package/dist/generated/themes/Dialog.css.js +1 -1
  322. package/dist/generated/themes/Dialog.css.js.map +1 -1
  323. package/dist/generated/themes/FileUploader.css.js +1 -1
  324. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  325. package/dist/generated/themes/Form.css.js +1 -1
  326. package/dist/generated/themes/Form.css.js.map +1 -1
  327. package/dist/generated/themes/FormItem.css.js +1 -1
  328. package/dist/generated/themes/FormItem.css.js.map +1 -1
  329. package/dist/generated/themes/FormLabelSpan.css.js +1 -1
  330. package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
  331. package/dist/generated/themes/GrowingButton.css.js +1 -1
  332. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  333. package/dist/generated/themes/Icon.css.js +1 -1
  334. package/dist/generated/themes/Icon.css.js.map +1 -1
  335. package/dist/generated/themes/Input.css.js +1 -1
  336. package/dist/generated/themes/Input.css.js.map +1 -1
  337. package/dist/generated/themes/InputIcon.css.js +1 -1
  338. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  339. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  340. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  341. package/dist/generated/themes/Link.css.js +1 -1
  342. package/dist/generated/themes/Link.css.js.map +1 -1
  343. package/dist/generated/themes/List.css.js +1 -1
  344. package/dist/generated/themes/List.css.js.map +1 -1
  345. package/dist/generated/themes/ListItem.css.js +1 -1
  346. package/dist/generated/themes/ListItem.css.js.map +1 -1
  347. package/dist/generated/themes/ListItemBase.css.js +1 -1
  348. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  349. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  350. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  351. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  352. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  353. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  354. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  355. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  356. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  357. package/dist/generated/themes/Menu.css.js +1 -1
  358. package/dist/generated/themes/Menu.css.js.map +1 -1
  359. package/dist/generated/themes/MenuItem.css.js +1 -1
  360. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  361. package/dist/generated/themes/MessageStrip.css.js +1 -1
  362. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  363. package/dist/generated/themes/MonthPicker.css.js +1 -1
  364. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  365. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  366. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  367. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  368. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  369. package/dist/generated/themes/MultiInput.css.js +1 -1
  370. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  371. package/dist/generated/themes/NavigationMenu.css.js +1 -1
  372. package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
  373. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  374. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  375. package/dist/generated/themes/OptionBase.css.js +1 -1
  376. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  377. package/dist/generated/themes/Panel.css.js +1 -1
  378. package/dist/generated/themes/Panel.css.js.map +1 -1
  379. package/dist/generated/themes/Popover.css.js +1 -1
  380. package/dist/generated/themes/Popover.css.js.map +1 -1
  381. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  382. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  383. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  384. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  385. package/dist/generated/themes/RadioButton.css.js +1 -1
  386. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  387. package/dist/generated/themes/RangeSlider.css.js +1 -1
  388. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  389. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  390. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  391. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  392. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  393. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  394. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  395. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  396. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  397. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  398. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  399. package/dist/generated/themes/Select.css.js +1 -1
  400. package/dist/generated/themes/Select.css.js.map +1 -1
  401. package/dist/generated/themes/SliderBase.css.js +1 -1
  402. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  403. package/dist/generated/themes/SplitButton.css.js +1 -1
  404. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  405. package/dist/generated/themes/StepInput.css.js +1 -1
  406. package/dist/generated/themes/StepInput.css.js.map +1 -1
  407. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  408. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  409. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  410. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  411. package/dist/generated/themes/Switch.css.js +1 -1
  412. package/dist/generated/themes/Switch.css.js.map +1 -1
  413. package/dist/generated/themes/TabContainer.css.js +1 -1
  414. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  415. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  416. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  417. package/dist/generated/themes/TabInStrip.css.js +1 -1
  418. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  419. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  420. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  421. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  422. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  423. package/dist/generated/themes/Table.css.js +1 -1
  424. package/dist/generated/themes/Table.css.js.map +1 -1
  425. package/dist/generated/themes/TableCellBase.css.js +1 -1
  426. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  427. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  428. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  429. package/dist/generated/themes/TableRow.css.js +1 -1
  430. package/dist/generated/themes/TableRow.css.js.map +1 -1
  431. package/dist/generated/themes/TableRowBase.css.js +1 -1
  432. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  433. package/dist/generated/themes/Tag.css.js +1 -1
  434. package/dist/generated/themes/Tag.css.js.map +1 -1
  435. package/dist/generated/themes/Text.css.js +1 -1
  436. package/dist/generated/themes/Text.css.js.map +1 -1
  437. package/dist/generated/themes/TextArea.css.js +1 -1
  438. package/dist/generated/themes/TextArea.css.js.map +1 -1
  439. package/dist/generated/themes/TimePicker.css.js +1 -1
  440. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  441. package/dist/generated/themes/Toast.css.js +1 -1
  442. package/dist/generated/themes/Toast.css.js.map +1 -1
  443. package/dist/generated/themes/ToggleButton.css.js +1 -1
  444. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  445. package/dist/generated/themes/Token.css.js +1 -1
  446. package/dist/generated/themes/Token.css.js.map +1 -1
  447. package/dist/generated/themes/Tokenizer.css.js +1 -1
  448. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  449. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  450. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  451. package/dist/generated/themes/Toolbar.css.js +1 -1
  452. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  453. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  454. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  455. package/dist/generated/themes/TreeItem.css.js +1 -1
  456. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  457. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  458. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  459. package/dist/generated/themes/YearPicker.css.js +1 -1
  460. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  461. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  462. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  463. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  464. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  465. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  467. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  468. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  469. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  470. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  471. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  472. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  473. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  474. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  475. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  476. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  477. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  478. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  479. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  480. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  481. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  482. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  483. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  484. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  485. package/dist/vscode.html-custom-data.json +10 -0
  486. package/dist/web-types.json +21 -1
  487. package/package.json +10 -10
  488. package/src/Card.hbs +16 -7
  489. package/src/ColorPaletteDialog.hbs +18 -18
  490. package/src/DatePickerPopover.hbs +0 -1
  491. package/src/DateRangePicker.hbs +0 -1
  492. package/src/DateTimePickerPopover.hbs +0 -1
  493. package/src/Input.hbs +1 -1
  494. package/src/InputPopover.hbs +1 -1
  495. package/src/List.hbs +7 -13
  496. package/src/Option.hbs +1 -0
  497. package/src/OptionCustom.hbs +1 -0
  498. package/src/i18n/messagebundle_ar.properties +4 -0
  499. package/src/i18n/messagebundle_bg.properties +4 -0
  500. package/src/i18n/messagebundle_ca.properties +4 -0
  501. package/src/i18n/messagebundle_cnr.properties +4 -0
  502. package/src/i18n/messagebundle_cs.properties +4 -0
  503. package/src/i18n/messagebundle_cy.properties +4 -0
  504. package/src/i18n/messagebundle_da.properties +4 -0
  505. package/src/i18n/messagebundle_de.properties +4 -0
  506. package/src/i18n/messagebundle_el.properties +4 -0
  507. package/src/i18n/messagebundle_en.properties +4 -0
  508. package/src/i18n/messagebundle_en_GB.properties +4 -0
  509. package/src/i18n/messagebundle_en_US_sappsd.properties +71 -12
  510. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
  511. package/src/i18n/messagebundle_en_US_saptrc.properties +215 -156
  512. package/src/i18n/messagebundle_es.properties +4 -0
  513. package/src/i18n/messagebundle_es_MX.properties +4 -0
  514. package/src/i18n/messagebundle_et.properties +4 -0
  515. package/src/i18n/messagebundle_fi.properties +4 -0
  516. package/src/i18n/messagebundle_fr.properties +4 -0
  517. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  518. package/src/i18n/messagebundle_hi.properties +4 -0
  519. package/src/i18n/messagebundle_hr.properties +4 -0
  520. package/src/i18n/messagebundle_hu.properties +4 -0
  521. package/src/i18n/messagebundle_id.properties +8 -4
  522. package/src/i18n/messagebundle_it.properties +4 -0
  523. package/src/i18n/messagebundle_iw.properties +4 -0
  524. package/src/i18n/messagebundle_ja.properties +4 -0
  525. package/src/i18n/messagebundle_kk.properties +4 -0
  526. package/src/i18n/messagebundle_ko.properties +4 -0
  527. package/src/i18n/messagebundle_lt.properties +4 -0
  528. package/src/i18n/messagebundle_lv.properties +4 -0
  529. package/src/i18n/messagebundle_mk.properties +4 -0
  530. package/src/i18n/messagebundle_ms.properties +4 -0
  531. package/src/i18n/messagebundle_nl.properties +4 -0
  532. package/src/i18n/messagebundle_no.properties +4 -0
  533. package/src/i18n/messagebundle_pl.properties +4 -0
  534. package/src/i18n/messagebundle_pt.properties +4 -0
  535. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  536. package/src/i18n/messagebundle_ro.properties +4 -0
  537. package/src/i18n/messagebundle_ru.properties +4 -0
  538. package/src/i18n/messagebundle_sh.properties +4 -0
  539. package/src/i18n/messagebundle_sk.properties +4 -0
  540. package/src/i18n/messagebundle_sl.properties +4 -0
  541. package/src/i18n/messagebundle_sr.properties +4 -0
  542. package/src/i18n/messagebundle_sv.properties +4 -0
  543. package/src/i18n/messagebundle_th.properties +4 -0
  544. package/src/i18n/messagebundle_tr.properties +4 -0
  545. package/src/i18n/messagebundle_uk.properties +4 -0
  546. package/src/i18n/messagebundle_vi.properties +4 -0
  547. package/src/i18n/messagebundle_zh_CN.properties +4 -0
  548. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  549. package/src/themes/Card.css +11 -0
  550. package/src/themes/List.css +3 -22
  551. package/src/themes/MultiComboBoxPopover.css +1 -1
  552. package/src/themes/PopupsCommon.css +2 -2
  553. package/src/themes/ResponsivePopover.css +1 -1
  554. package/src/themes/StepInput.css +2 -0
  555. package/src/themes/TextArea.css +11 -26
  556. package/src/themes/TimePicker.css +3 -0
  557. package/src/themes/base/sizes-parameters.css +38 -4
  558. package/src/themes/sap_fiori_3/Token-parameters.css +1 -0
  559. package/src/themes/sap_fiori_3/sizes-parameters.css +13 -1
  560. package/src/themes/sap_fiori_3_dark/Token-parameters.css +1 -0
  561. package/src/themes/sap_fiori_3_dark/sizes-parameters.css +9 -0
  562. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +5 -0
  563. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +5 -0
@@ -122,6 +122,22 @@ let TimePickerClock = class TimePickerClock extends UI5Element {
122
122
  * Defines the currently selected Time Picker Clock item.
123
123
  */
124
124
  this._selectedItem = {};
125
+ /**
126
+ * Keeps variables used in interaction calculations.
127
+ */
128
+ this._dimensionParameters = {
129
+ radius: 0,
130
+ centerX: 0,
131
+ centerY: 0,
132
+ dotHeight: 0,
133
+ numberHeight: 0,
134
+ outerMax: 0,
135
+ outerMin: 0,
136
+ innerMax: 0,
137
+ innerMin: 0,
138
+ offsetX: 0,
139
+ offsetY: 0,
140
+ };
125
141
  /**
126
142
  * Mousedown or Touchstart event flag.
127
143
  * @default false
@@ -1 +1 @@
1
- {"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.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 type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker?: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-picker-clock` allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * `ui5-time-picker-clock` is used as part of `ui5-time-selection-clocks` component, which\n * is used in `ui5-time-picker` component respectively.\n *\n * ### Usage\n *\n * `ui5-time-picker-clock` can display hours, minutes or seconds\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePickerClock.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n * @param { integer } value The new `value` of the clock.\n * @param { string } stringValue The new `value` of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange `true` when a value is selected and confirmed, `false` when a value is only selected but not confirmed.\n */\n@event<TimePickerClockChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: { type: Number },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tstringValue: { type: String },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMin = -1;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMax = -1;\n\n\t/**\n\t * If set to `true`, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle = false;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t * @default undefined\n\t */\n\t@property()\n\tlabel?: string;\n\n\t/**\n\t * If set to `true`, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\thideFractions = false;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tlastItemReplacement = -1;\n\n\t/**\n\t * Prepend with zero flag. If `true`, values less than 10 will be prepend with 0.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tprependZero = false;\n\n\t/**\n\t * The currently selected value of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tselectedValue = -1\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t * @default 5\n\t */\n\t@property({ type: Number })\n\tdisplayStep = 5;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t * @default 1\n\t */\n\t@property({ type: Number })\n\tvalueStep = 1;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t */\n\t@property({ type: Array })\n\t_items: Array<TimePickerClockItem> = [];\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t */\n\t@property({ type: Object })\n\t_selectedItem: TimePickerClockSelectedItem = {};\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters!: TimePickerClockDimensions;\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown = false;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut = false;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_selectedValue = -1;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_movSelectedValue = -1;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_hoveredValue = -1;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_prevHoveredValue = -1;\n\n\t/**\n\t * Animation in progress flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress = false;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t * @param value The value of the clock item\n\t * @returns The real/replaced value\n\t */\n\t_fixReplacementValue(value: number): number {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t * @param value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t * @returns the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef(): Element | null | undefined {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t * @returns max value\n\t */\n\t_getMaxValue(): number {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t * @param element The element which outer height to be calculated\n\t * @returns Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement): number {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t * @param value The value of the clock item\n\t * @returns Id of the clock item element\n\t */\n\t_hoveredId(value: number): string {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t * @param value The value that should be returned as string\n\t * @returns The value as string\n\t */\n\t_getStringValue(value: number): string {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t * @returns Dimensions object\n\t */\n\t_calculateDimensions(): TimePickerClockDimensions | undefined {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t * @param x X position of click/touch returned by the event\n\t * @param y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t * @param newValue the new value that must be set\n\t * @param skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t * @param firstSelected first/current value to move from\n\t * @param lastSelected last value to move to\n\t * @param direction direction of the animation\n\t * @param maxValue max clock value\n\t * @param newValue new value\n\t * @param delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t * @param increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t * @param value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t * @param evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
1
+ {"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.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 type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker?: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-picker-clock` allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * `ui5-time-picker-clock` is used as part of `ui5-time-selection-clocks` component, which\n * is used in `ui5-time-picker` component respectively.\n *\n * ### Usage\n *\n * `ui5-time-picker-clock` can display hours, minutes or seconds\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePickerClock.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n * @param { integer } value The new `value` of the clock.\n * @param { string } stringValue The new `value` of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange `true` when a value is selected and confirmed, `false` when a value is only selected but not confirmed.\n */\n@event<TimePickerClockChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: { type: Number },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tstringValue: { type: String },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMin = -1;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMax = -1;\n\n\t/**\n\t * If set to `true`, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle = false;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t * @default undefined\n\t */\n\t@property()\n\tlabel?: string;\n\n\t/**\n\t * If set to `true`, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\thideFractions = false;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tlastItemReplacement = -1;\n\n\t/**\n\t * Prepend with zero flag. If `true`, values less than 10 will be prepend with 0.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tprependZero = false;\n\n\t/**\n\t * The currently selected value of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tselectedValue = -1\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t * @default 5\n\t */\n\t@property({ type: Number })\n\tdisplayStep = 5;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t * @default 1\n\t */\n\t@property({ type: Number })\n\tvalueStep = 1;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t */\n\t@property({ type: Array })\n\t_items: Array<TimePickerClockItem> = [];\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t */\n\t@property({ type: Object })\n\t_selectedItem: TimePickerClockSelectedItem = {};\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters: TimePickerClockDimensions = {\n\t\tradius: 0,\n\t\tcenterX: 0,\n\t\tcenterY: 0,\n\t\tdotHeight: 0,\n\t\tnumberHeight: 0,\n\t\touterMax: 0,\n\t\touterMin: 0,\n\t\tinnerMax: 0,\n\t\tinnerMin: 0,\n\t\toffsetX: 0,\n\t\toffsetY: 0,\n\t};\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown = false;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut = false;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_selectedValue = -1;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_movSelectedValue = -1;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_hoveredValue = -1;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_prevHoveredValue = -1;\n\n\t/**\n\t * Animation in progress flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress = false;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t * @param value The value of the clock item\n\t * @returns The real/replaced value\n\t */\n\t_fixReplacementValue(value: number): number {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t * @param value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t * @returns the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef(): Element | null | undefined {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t * @returns max value\n\t */\n\t_getMaxValue(): number {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t * @param element The element which outer height to be calculated\n\t * @returns Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement): number {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t * @param value The value of the clock item\n\t * @returns Id of the clock item element\n\t */\n\t_hoveredId(value: number): string {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t * @param value The value that should be returned as string\n\t * @returns The value as string\n\t */\n\t_getStringValue(value: number): string {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t * @returns Dimensions object\n\t */\n\t_calculateDimensions(): TimePickerClockDimensions | undefined {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t * @param x X position of click/touch returned by the event\n\t * @param y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t * @param newValue the new value that must be set\n\t * @param skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t * @param firstSelected first/current value to move from\n\t * @param lastSelected last value to move to\n\t * @param direction direction of the animation\n\t * @param maxValue max clock value\n\t * @param newValue new value\n\t * @param delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t * @param increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t * @param value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t * @param evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
package/dist/Toolbar.js CHANGED
@@ -405,7 +405,8 @@ let Toolbar = Toolbar_1 = class Toolbar extends UI5Element {
405
405
  }
406
406
  getItemsInfo(items) {
407
407
  return items.map((item) => {
408
- const ElementClass = getRegisteredToolbarItem(item.constructor.name);
408
+ const ctor = item.constructor;
409
+ const ElementClass = getRegisteredToolbarItem(ctor.getMetadata().getPureTag());
409
410
  if (!ElementClass) {
410
411
  return null;
411
412
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport type ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport type ToolbarDesign from \"./types/ToolbarDesign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\nimport type ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\ntype ToolbarMinWidthChangeEventDetail = {\n\tminWidth: number,\n};\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property()\n\talignContent: `${ToolbarAlign}` = \"End\";\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the toolbar design.\n\t * @public\n\t * @default \"Solid\"\n\t * @since 2.0.0\n\t */\n\t@property()\n\tdesign: `${ToolbarDesign}` = \"Solid\"\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tminContentWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: AriaHasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.open;\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.opener = this.overflowButtonDOM!;\n\t\toverflowPopover!.open = true;\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.open = false;\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0,\n\t\t\tminWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tif (item.overflowPriority === ToolbarItemOverflowBehavior.NeverOverflow) {\n\t\t\t\tminWidth += itemWidth;\n\t\t\t}\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tif (minWidth !== this.minContentWidth) {\n\t\t\tconst spaceAroundContent = this.offsetWidth - this.getDomRef()!.offsetWidth;\n\t\t\tthis.fireEvent<ToolbarMinWidthChangeEventDetail>(\"_min-content-width-change\", {\n\t\t\t\tminWidth: minWidth + spaceAroundContent + this.overflowButtonSize,\n\t\t\t});\n\t\t}\n\n\t\tthis.itemsWidth = totalWidth;\n\t\tthis.minContentWidth = minWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\te.stopImmediatePropagation();\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType = e.type;\n\t\t\tconst eventTypeNonPrefixed: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ElementClass = getRegisteredToolbarItem(item.constructor.name);\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\nexport type {\n\tToolbarMinWidthChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport type ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport type ToolbarDesign from \"./types/ToolbarDesign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\nimport type ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\ntype ToolbarMinWidthChangeEventDetail = {\n\tminWidth: number,\n};\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property()\n\talignContent: `${ToolbarAlign}` = \"End\";\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ type: Number })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the toolbar design.\n\t * @public\n\t * @default \"Solid\"\n\t * @since 2.0.0\n\t */\n\t@property()\n\tdesign: `${ToolbarDesign}` = \"Solid\"\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tminContentWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: AriaHasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.open;\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.opener = this.overflowButtonDOM!;\n\t\toverflowPopover!.open = true;\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.open = false;\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0,\n\t\t\tminWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tif (item.overflowPriority === ToolbarItemOverflowBehavior.NeverOverflow) {\n\t\t\t\tminWidth += itemWidth;\n\t\t\t}\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tif (minWidth !== this.minContentWidth) {\n\t\t\tconst spaceAroundContent = this.offsetWidth - this.getDomRef()!.offsetWidth;\n\t\t\tthis.fireEvent<ToolbarMinWidthChangeEventDetail>(\"_min-content-width-change\", {\n\t\t\t\tminWidth: minWidth + spaceAroundContent + this.overflowButtonSize,\n\t\t\t});\n\t\t}\n\n\t\tthis.itemsWidth = totalWidth;\n\t\tthis.minContentWidth = minWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\te.stopImmediatePropagation();\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType = e.type;\n\t\t\tconst eventTypeNonPrefixed: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ctor = item.constructor as typeof ToolbarItem;\n\t\t\tconst ElementClass = getRegisteredToolbarItem(ctor.getMetadata().getPureTag());\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\nexport type {\n\tToolbarMinWidthChangeEventDetail,\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  import getSharedResource from "@ui5/webcomponents-base/dist/getSharedResource.js";
2
2
  const registry = getSharedResource("ToolbarItem.registry", new Map());
3
3
  const registerToolbarItem = (ElementClass) => {
4
- registry.set(ElementClass.name, ElementClass);
4
+ registry.set(ElementClass.getMetadata().getPureTag(), ElementClass);
5
5
  };
6
6
  const getRegisteredToolbarItem = (name) => {
7
7
  if (!registry.has(name)) {
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarRegistry.js","sourceRoot":"","sources":["../src/ToolbarRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAIlF,MAAM,QAAQ,GAAG,iBAAiB,CAAkC,sBAAsB,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;AAEvG,MAAM,mBAAmB,GAAG,CAAC,YAAgC,EAAE,EAAE;IAChE,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAE,EAAE;IACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACjD;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,YAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9F,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,GAAG,EAAE;IACtC,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,YAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3G,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,GACzB,CAAC","sourcesContent":["import getSharedResource from \"@ui5/webcomponents-base/dist/getSharedResource.js\";\n\nimport type ToolbarItem from \"./ToolbarItem.js\";\n\nconst registry = getSharedResource<Map<string, typeof ToolbarItem>>(\"ToolbarItem.registry\", new Map());\n\nconst registerToolbarItem = (ElementClass: typeof ToolbarItem) => {\n\tregistry.set(ElementClass.name, ElementClass);\n};\n\nconst getRegisteredToolbarItem = (name: string) => {\n\tif (!registry.has(name)) {\n\t\tthrow new Error(`No template found for ${name}`);\n\t}\n\n\treturn registry.get(name);\n};\n\nconst getRegisteredStyles = () => {\n\treturn [...registry.values()].map((ElementClass: typeof ToolbarItem) => ElementClass.styles);\n};\n\nconst getRegisteredDependencies = () => {\n\treturn [...registry.values()].map((ElementClass: typeof ToolbarItem) => ElementClass.dependencies).flat();\n};\n\nexport {\n\tregisterToolbarItem,\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n};\n"]}
1
+ {"version":3,"file":"ToolbarRegistry.js","sourceRoot":"","sources":["../src/ToolbarRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,mDAAmD,CAAC;AAIlF,MAAM,QAAQ,GAAG,iBAAiB,CAAkC,sBAAsB,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;AAEvG,MAAM,mBAAmB,GAAG,CAAC,YAAgC,EAAE,EAAE;IAChE,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE,YAAY,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAE,EAAE;IACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACjD;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,YAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9F,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,GAAG,EAAE;IACtC,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,YAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3G,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,GACzB,CAAC","sourcesContent":["import getSharedResource from \"@ui5/webcomponents-base/dist/getSharedResource.js\";\n\nimport type ToolbarItem from \"./ToolbarItem.js\";\n\nconst registry = getSharedResource<Map<string, typeof ToolbarItem>>(\"ToolbarItem.registry\", new Map());\n\nconst registerToolbarItem = (ElementClass: typeof ToolbarItem) => {\n\tregistry.set(ElementClass.getMetadata().getPureTag(), ElementClass);\n};\n\nconst getRegisteredToolbarItem = (name: string) => {\n\tif (!registry.has(name)) {\n\t\tthrow new Error(`No template found for ${name}`);\n\t}\n\n\treturn registry.get(name);\n};\n\nconst getRegisteredStyles = () => {\n\treturn [...registry.values()].map((ElementClass: typeof ToolbarItem) => ElementClass.styles);\n};\n\nconst getRegisteredDependencies = () => {\n\treturn [...registry.values()].map((ElementClass: typeof ToolbarItem) => ElementClass.dependencies).flat();\n};\n\nexport {\n\tregisterToolbarItem,\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n};\n"]}
@@ -1 +1 @@
1
- :host(:not([hidden])){display:inline-block;box-sizing:border-box;position:relative;font-family:"72override",var(--sapFontFamily)}:host(:not([hidden]).ui5_hovered){opacity:.7}:host([interactive]:not([disabled])){cursor:pointer}:host([interactive]:not([hidden]):active){background-color:var(--sapButton_Active_Background);border-color:var(--sapButton_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([interactive]:not([hidden]):not([disabled]):not(:active):hover){box-shadow:var(--ui5-v2-1-0-rc-2-avatar-hover-box-shadow-offset)}:host([interactive][desktop]:not([hidden])) .ui5-avatar-root:focus,:host([interactive]:not([hidden])) .ui5-avatar-root:focus-visible{outline:var(--_ui5-v2-1-0-rc-2_avatar_outline);outline-offset:var(--_ui5-v2-1-0-rc-2_avatar_focus_offset)}:host([disabled]){opacity:var(--sapContent_DisabledOpacity)}:host{height:3rem;width:3rem;border-radius:50%;border:var(--ui5-v2-1-0-rc-2-avatar-initials-border);outline:none;color:var(--ui5-v2-1-0-rc-2-avatar-initials-color)}.ui5-avatar-root{display:flex;align-items:center;justify-content:center;outline:none;height:100%;width:100%;border-radius:inherit}:host([_size="XS"]),:host([size="XS"]){height:2rem;width:2rem;min-height:2rem;min-width:2rem;font-size:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_XS)}:host(:not([size])),:host([_size="S"]),:host([size="S"]){min-height:3rem;min-width:3rem;font-size:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_S)}:host([_size="M"]),:host([size="M"]){min-height:4rem;min-width:4rem;font-size:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_M)}:host([_size="L"]),:host([size="L"]){min-height:5rem;min-width:5rem;font-size:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_L)}:host([_size="XL"]),:host([size="XL"]){min-height:7rem;min-width:7rem;font-size:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_XL)}:host .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_S);width:var(--_ui5-v2-1-0-rc-2_avatar_fontsize_S);color:inherit}:host([_size="XS"]) .ui5-avatar-icon,:host([size="XS"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_icon_XS);width:var(--_ui5-v2-1-0-rc-2_avatar_icon_XS)}:host([_size="S"]) .ui5-avatar-icon,:host([size="S"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_icon_S);width:var(--_ui5-v2-1-0-rc-2_avatar_icon_S)}:host([_size="M"]) .ui5-avatar-icon,:host([size="M"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_icon_M);width:var(--_ui5-v2-1-0-rc-2_avatar_icon_M)}:host([_size="L"]) .ui5-avatar-icon,:host([size="L"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_icon_L);width:var(--_ui5-v2-1-0-rc-2_avatar_icon_L)}:host([_size="XL"]) .ui5-avatar-icon,:host([size="XL"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0-rc-2_avatar_icon_XL);width:var(--_ui5-v2-1-0-rc-2_avatar_icon_XL)}::slotted(*){border-radius:50%;width:100%;height:100%;pointer-events:none}:host([shape="Square"]){border-radius:var(--ui5-v2-1-0-rc-2-avatar-border-radius)}:host([shape="Square"]) ::slotted(*){border-radius:calc(var(--ui5-v2-1-0-rc-2-avatar-border-radius) - var(--ui5-v2-1-0-rc-2-avatar-border-radius-img-deduction))}:host(:not([color-scheme])),:host(:not([_has-image])),:host([_color-scheme="Accent6"]),:host([ui5-avatar][color-scheme="Accent6"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent6);color:var(--ui5-v2-1-0-rc-2-avatar-accent6-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent6-border-color)}:host([_color-scheme="Accent1"]),:host([ui5-avatar][color-scheme="Accent1"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent1);color:var(--ui5-v2-1-0-rc-2-avatar-accent1-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent1-border-color)}:host([_color-scheme="Accent2"]),:host([ui5-avatar][color-scheme="Accent2"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent2);color:var(--ui5-v2-1-0-rc-2-avatar-accent2-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent2-border-color)}:host([_color-scheme="Accent3"]),:host([ui5-avatar][color-scheme="Accent3"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent3);color:var(--ui5-v2-1-0-rc-2-avatar-accent3-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent3-border-color)}:host([_color-scheme="Accent4"]),:host([ui5-avatar][color-scheme="Accent4"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent4);color:var(--ui5-v2-1-0-rc-2-avatar-accent4-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent4-border-color)}:host([_color-scheme="Accent5"]),:host([ui5-avatar][color-scheme="Accent5"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent5);color:var(--ui5-v2-1-0-rc-2-avatar-accent5-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent5-border-color)}:host([_color-scheme="Accent7"]),:host([ui5-avatar][color-scheme="Accent7"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent7);color:var(--ui5-v2-1-0-rc-2-avatar-accent7-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent7-border-color)}:host([_color-scheme="Accent8"]),:host([ui5-avatar][color-scheme="Accent8"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent8);color:var(--ui5-v2-1-0-rc-2-avatar-accent8-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent8-border-color)}:host([_color-scheme="Accent9"]),:host([ui5-avatar][color-scheme="Accent9"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent9);color:var(--ui5-v2-1-0-rc-2-avatar-accent9-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent9-border-color)}:host([_color-scheme="Accent10"]),:host([ui5-avatar][color-scheme="Accent10"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-accent10);color:var(--ui5-v2-1-0-rc-2-avatar-accent10-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-accent10-border-color)}:host([_color-scheme="Placeholder"]),:host([ui5-avatar][color-scheme="Placeholder"]){background-color:var(--ui5-v2-1-0-rc-2-avatar-placeholder);color:var(--ui5-v2-1-0-rc-2-avatar-placeholder-color);border-color:var(--ui5-v2-1-0-rc-2-avatar-placeholder-border-color)}:host([_has-image]){color:var(--ui5-v2-1-0-rc-2-avatar-accent10-color);background-color:transparent;vertical-align:middle}.ui5-avatar-initials{color:inherit}.ui5-avatar-icon~.ui5-avatar-initials,.ui5-avatar-icon~.ui5-avatar-icon-fallback{display:none}.ui5-avatar-fallback-icon-hidden{display:none}.ui5-avatar-initials-hidden{position:absolute;visibility:hidden;z-index:0;pointer-events:none}::slotted([slot="badge"]){position:absolute;bottom:0;right:0;width:1.125rem;height:1.125rem;font-family:"72override",var(--sapFontFamily);font-size:var(--sapFontSmallSize);color:var(--sapBackgroundColor);--_ui5-v2-1-0-rc-2-tag-height: 1.125rem;--_ui5-v2-1-0-rc-2-tag-border-radius: 50%}:host([_size="L"]) ::slotted([slot="badge"]),:host([size="L"]) ::slotted([slot="badge"]){width:1.25rem;height:1.25rem;--_ui5-v2-1-0-rc-2-tag-height: 1.25rem;--_ui5-v2-1-0-rc-2-tag-icon-width: .875rem}:host([_size="XL"]) ::slotted([slot="badge"]),:host([size="XL"]) ::slotted([slot="badge"]){width:1.75rem;height:1.75rem;--_ui5-v2-1-0-rc-2-tag-height: 1.75rem;--_ui5-v2-1-0-rc-2-tag-icon-width: 1rem}:host([shape="Square"]) ::slotted([slot="badge"]){bottom:-.125rem;right:-.125rem}:host([_size="L"][shape="Square"]) ::slotted([slot="badge"]),:host([size="L"][shape="Square"]) ::slotted([slot="badge"]){bottom:-.1875rem;right:-.1875rem}:host([_size="XL"][shape="Square"]) ::slotted([slot="badge"]),:host([size="XL"][shape="Square"]) ::slotted([slot="badge"]){bottom:-.25rem;right:-.25rem}
1
+ :host(:not([hidden])){display:inline-block;box-sizing:border-box;position:relative;font-family:"72override",var(--sapFontFamily)}:host(:not([hidden]).ui5_hovered){opacity:.7}:host([interactive]:not([disabled])){cursor:pointer}:host([interactive]:not([hidden]):active){background-color:var(--sapButton_Active_Background);border-color:var(--sapButton_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([interactive]:not([hidden]):not([disabled]):not(:active):hover){box-shadow:var(--ui5-v2-1-0-avatar-hover-box-shadow-offset)}:host([interactive][desktop]:not([hidden])) .ui5-avatar-root:focus,:host([interactive]:not([hidden])) .ui5-avatar-root:focus-visible{outline:var(--_ui5-v2-1-0_avatar_outline);outline-offset:var(--_ui5-v2-1-0_avatar_focus_offset)}:host([disabled]){opacity:var(--sapContent_DisabledOpacity)}:host{height:3rem;width:3rem;border-radius:50%;border:var(--ui5-v2-1-0-avatar-initials-border);outline:none;color:var(--ui5-v2-1-0-avatar-initials-color)}.ui5-avatar-root{display:flex;align-items:center;justify-content:center;outline:none;height:100%;width:100%;border-radius:inherit}:host([_size="XS"]),:host([size="XS"]){height:2rem;width:2rem;min-height:2rem;min-width:2rem;font-size:var(--_ui5-v2-1-0_avatar_fontsize_XS)}:host(:not([size])),:host([_size="S"]),:host([size="S"]){min-height:3rem;min-width:3rem;font-size:var(--_ui5-v2-1-0_avatar_fontsize_S)}:host([_size="M"]),:host([size="M"]){min-height:4rem;min-width:4rem;font-size:var(--_ui5-v2-1-0_avatar_fontsize_M)}:host([_size="L"]),:host([size="L"]){min-height:5rem;min-width:5rem;font-size:var(--_ui5-v2-1-0_avatar_fontsize_L)}:host([_size="XL"]),:host([size="XL"]){min-height:7rem;min-width:7rem;font-size:var(--_ui5-v2-1-0_avatar_fontsize_XL)}:host .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_fontsize_S);width:var(--_ui5-v2-1-0_avatar_fontsize_S);color:inherit}:host([_size="XS"]) .ui5-avatar-icon,:host([size="XS"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_icon_XS);width:var(--_ui5-v2-1-0_avatar_icon_XS)}:host([_size="S"]) .ui5-avatar-icon,:host([size="S"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_icon_S);width:var(--_ui5-v2-1-0_avatar_icon_S)}:host([_size="M"]) .ui5-avatar-icon,:host([size="M"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_icon_M);width:var(--_ui5-v2-1-0_avatar_icon_M)}:host([_size="L"]) .ui5-avatar-icon,:host([size="L"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_icon_L);width:var(--_ui5-v2-1-0_avatar_icon_L)}:host([_size="XL"]) .ui5-avatar-icon,:host([size="XL"]) .ui5-avatar-icon{height:var(--_ui5-v2-1-0_avatar_icon_XL);width:var(--_ui5-v2-1-0_avatar_icon_XL)}::slotted(*){border-radius:50%;width:100%;height:100%;pointer-events:none}:host([shape="Square"]){border-radius:var(--ui5-v2-1-0-avatar-border-radius)}:host([shape="Square"]) ::slotted(*){border-radius:calc(var(--ui5-v2-1-0-avatar-border-radius) - var(--ui5-v2-1-0-avatar-border-radius-img-deduction))}:host(:not([color-scheme])),:host(:not([_has-image])),:host([_color-scheme="Accent6"]),:host([ui5-avatar][color-scheme="Accent6"]){background-color:var(--ui5-v2-1-0-avatar-accent6);color:var(--ui5-v2-1-0-avatar-accent6-color);border-color:var(--ui5-v2-1-0-avatar-accent6-border-color)}:host([_color-scheme="Accent1"]),:host([ui5-avatar][color-scheme="Accent1"]){background-color:var(--ui5-v2-1-0-avatar-accent1);color:var(--ui5-v2-1-0-avatar-accent1-color);border-color:var(--ui5-v2-1-0-avatar-accent1-border-color)}:host([_color-scheme="Accent2"]),:host([ui5-avatar][color-scheme="Accent2"]){background-color:var(--ui5-v2-1-0-avatar-accent2);color:var(--ui5-v2-1-0-avatar-accent2-color);border-color:var(--ui5-v2-1-0-avatar-accent2-border-color)}:host([_color-scheme="Accent3"]),:host([ui5-avatar][color-scheme="Accent3"]){background-color:var(--ui5-v2-1-0-avatar-accent3);color:var(--ui5-v2-1-0-avatar-accent3-color);border-color:var(--ui5-v2-1-0-avatar-accent3-border-color)}:host([_color-scheme="Accent4"]),:host([ui5-avatar][color-scheme="Accent4"]){background-color:var(--ui5-v2-1-0-avatar-accent4);color:var(--ui5-v2-1-0-avatar-accent4-color);border-color:var(--ui5-v2-1-0-avatar-accent4-border-color)}:host([_color-scheme="Accent5"]),:host([ui5-avatar][color-scheme="Accent5"]){background-color:var(--ui5-v2-1-0-avatar-accent5);color:var(--ui5-v2-1-0-avatar-accent5-color);border-color:var(--ui5-v2-1-0-avatar-accent5-border-color)}:host([_color-scheme="Accent7"]),:host([ui5-avatar][color-scheme="Accent7"]){background-color:var(--ui5-v2-1-0-avatar-accent7);color:var(--ui5-v2-1-0-avatar-accent7-color);border-color:var(--ui5-v2-1-0-avatar-accent7-border-color)}:host([_color-scheme="Accent8"]),:host([ui5-avatar][color-scheme="Accent8"]){background-color:var(--ui5-v2-1-0-avatar-accent8);color:var(--ui5-v2-1-0-avatar-accent8-color);border-color:var(--ui5-v2-1-0-avatar-accent8-border-color)}:host([_color-scheme="Accent9"]),:host([ui5-avatar][color-scheme="Accent9"]){background-color:var(--ui5-v2-1-0-avatar-accent9);color:var(--ui5-v2-1-0-avatar-accent9-color);border-color:var(--ui5-v2-1-0-avatar-accent9-border-color)}:host([_color-scheme="Accent10"]),:host([ui5-avatar][color-scheme="Accent10"]){background-color:var(--ui5-v2-1-0-avatar-accent10);color:var(--ui5-v2-1-0-avatar-accent10-color);border-color:var(--ui5-v2-1-0-avatar-accent10-border-color)}:host([_color-scheme="Placeholder"]),:host([ui5-avatar][color-scheme="Placeholder"]){background-color:var(--ui5-v2-1-0-avatar-placeholder);color:var(--ui5-v2-1-0-avatar-placeholder-color);border-color:var(--ui5-v2-1-0-avatar-placeholder-border-color)}:host([_has-image]){color:var(--ui5-v2-1-0-avatar-accent10-color);background-color:transparent;vertical-align:middle}.ui5-avatar-initials{color:inherit}.ui5-avatar-icon~.ui5-avatar-initials,.ui5-avatar-icon~.ui5-avatar-icon-fallback{display:none}.ui5-avatar-fallback-icon-hidden{display:none}.ui5-avatar-initials-hidden{position:absolute;visibility:hidden;z-index:0;pointer-events:none}::slotted([slot="badge"]){position:absolute;bottom:0;right:0;width:1.125rem;height:1.125rem;font-family:"72override",var(--sapFontFamily);font-size:var(--sapFontSmallSize);color:var(--sapBackgroundColor);--_ui5-v2-1-0-tag-height: 1.125rem;--_ui5-v2-1-0-tag-border-radius: 50%}:host([_size="L"]) ::slotted([slot="badge"]),:host([size="L"]) ::slotted([slot="badge"]){width:1.25rem;height:1.25rem;--_ui5-v2-1-0-tag-height: 1.25rem;--_ui5-v2-1-0-tag-icon-width: .875rem}:host([_size="XL"]) ::slotted([slot="badge"]),:host([size="XL"]) ::slotted([slot="badge"]){width:1.75rem;height:1.75rem;--_ui5-v2-1-0-tag-height: 1.75rem;--_ui5-v2-1-0-tag-icon-width: 1rem}:host([shape="Square"]) ::slotted([slot="badge"]){bottom:-.125rem;right:-.125rem}:host([_size="L"][shape="Square"]) ::slotted([slot="badge"]),:host([size="L"][shape="Square"]) ::slotted([slot="badge"]){bottom:-.1875rem;right:-.1875rem}:host([_size="XL"][shape="Square"]) ::slotted([slot="badge"]),:host([size="XL"][shape="Square"]) ::slotted([slot="badge"]){bottom:-.25rem;right:-.25rem}
@@ -1 +1 @@
1
- :host{-webkit-tap-highlight-color:rgba(0,0,0,0)}:host(:not([hidden])){display:block;width:100%}:host{--_ui5-v2-1-0-rc-2_button_focused_border: var(--_ui5-v2-1-0-rc-2_avatar_group_button_focus_border)}.ui5-avatar-group-items:focus{outline:none}:host([type="Group"][desktop]) .ui5-avatar-group-items:focus,:host([type="Group"]) .ui5-avatar-group-items:focus-visible{outline:var(--_ui5-v2-1-0-rc-2_avatar_outline);outline-offset:var(--_ui5-v2-1-0-rc-2_avatar_focus_offset);border-radius:var(--_ui5-v2-1-0-rc-2_avatar_group_focus_border_radius)}.ui5-avatar-group-root{display:flex}.ui5-avatar-group-items{white-space:nowrap;position:relative;display:inline-flex}:host([type="Group"]) .ui5-avatar-group-items{cursor:pointer}:host([type="Group"]) ::slotted([ui5-button]),:host([type="Group"]) ::slotted([ui5-avatar]){pointer-events:none}.ui5-avatar-group-overflow-btn{overflow:visible}.ui5-avatar-group-overflow-btn::part(button){min-width:auto}::slotted([ui5-button]:not([hidden])),.ui5-avatar-group-overflow-btn:not([hidden]){--_ui5-v2-1-0-rc-2_button_base_padding: 0;border-radius:50%;display:inline-flex;text-overflow:initial;z-index:0}::slotted([ui5-button][desktop]:focus),.ui5-avatar-group-overflow-btn[desktop]:focus{outline:var(--_ui5-v2-1-0-rc-2_avatar_outline);outline-offset:var(--_ui5-v2-1-0-rc-2_avatar_overflow_button_focus_offset)}.ui5-avatar-group-overflow-btn::part(button):focus-visible:after{outline:var(--_ui5-v2-1-0-rc-2_avatar_outline);outline-offset:var(--_ui5-v2-1-0-rc-2_avatar_focus_offset);border-radius:50%}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-xs{height:2rem;width:2rem;min-width:2rem;font-size:.75rem}::slotted([ui5-button]),.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-s{height:3rem;width:3rem;min-width:3rem;font-size:1.125rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-m{height:4rem;width:4rem;min-width:4rem;font-size:1.625rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-l{height:5rem;width:5rem;min-width:5rem;font-size:2rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-xl{height:7rem;width:7rem;min-width:7rem;font-size:2.75rem}
1
+ :host{-webkit-tap-highlight-color:rgba(0,0,0,0)}:host(:not([hidden])){display:block;width:100%}:host{--_ui5-v2-1-0_button_focused_border: var(--_ui5-v2-1-0_avatar_group_button_focus_border)}.ui5-avatar-group-items:focus{outline:none}:host([type="Group"][desktop]) .ui5-avatar-group-items:focus,:host([type="Group"]) .ui5-avatar-group-items:focus-visible{outline:var(--_ui5-v2-1-0_avatar_outline);outline-offset:var(--_ui5-v2-1-0_avatar_focus_offset);border-radius:var(--_ui5-v2-1-0_avatar_group_focus_border_radius)}.ui5-avatar-group-root{display:flex}.ui5-avatar-group-items{white-space:nowrap;position:relative;display:inline-flex}:host([type="Group"]) .ui5-avatar-group-items{cursor:pointer}:host([type="Group"]) ::slotted([ui5-button]),:host([type="Group"]) ::slotted([ui5-avatar]){pointer-events:none}.ui5-avatar-group-overflow-btn{overflow:visible}.ui5-avatar-group-overflow-btn::part(button){min-width:auto}::slotted([ui5-button]:not([hidden])),.ui5-avatar-group-overflow-btn:not([hidden]){--_ui5-v2-1-0_button_base_padding: 0;border-radius:50%;display:inline-flex;text-overflow:initial;z-index:0}::slotted([ui5-button][desktop]:focus),.ui5-avatar-group-overflow-btn[desktop]:focus{outline:var(--_ui5-v2-1-0_avatar_outline);outline-offset:var(--_ui5-v2-1-0_avatar_overflow_button_focus_offset)}.ui5-avatar-group-overflow-btn::part(button):focus-visible:after{outline:var(--_ui5-v2-1-0_avatar_outline);outline-offset:var(--_ui5-v2-1-0_avatar_focus_offset);border-radius:50%}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-xs{height:2rem;width:2rem;min-width:2rem;font-size:.75rem}::slotted([ui5-button]),.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-s{height:3rem;width:3rem;min-width:3rem;font-size:1.125rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-m{height:4rem;width:4rem;min-width:4rem;font-size:1.625rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-l{height:5rem;width:5rem;min-width:5rem;font-size:2rem}.ui5-avatar-group-overflow-btn.ui5-avatar-group-overflow-btn-xl{height:7rem;width:7rem;min-width:7rem;font-size:2.75rem}
@@ -1 +1 @@
1
- :host{background-color:var(--sapPageHeader_Background);height:var(--_ui5-v2-1-0-rc-2_bar_base_height);width:100%;box-shadow:var(--sapContent_HeaderShadow);display:block}.ui5-bar-root{display:flex;align-items:center;justify-content:space-between;height:inherit;width:inherit;background-color:inherit;box-shadow:inherit;border-radius:inherit}.ui5-bar-root .ui5-bar-startcontent-container{padding-inline-start:var(--_ui5-v2-1-0-rc-2_bar-start-container-padding-start);display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.ui5-bar-root .ui5-bar-content-container{min-width:calc(30% - calc(var(--_ui5-v2-1-0-rc-2_bar-start-container-padding-start) + var(--_ui5-v2-1-0-rc-2_bar-end-container-padding-end) + (2*var(--_ui5-v2-1-0-rc-2_bar-mid-container-padding-start-end))))}.ui5-bar-root.ui5-bar-root-shrinked .ui5-bar-content-container{min-width:0px;overflow:hidden;height:100%}.ui5-bar-root .ui5-bar-endcontent-container{padding-inline-end:var(--_ui5-v2-1-0-rc-2_bar-end-container-padding-end);display:flex;flex-direction:row;align-items:center;justify-content:flex-end}.ui5-bar-root .ui5-bar-midcontent-container{padding:0 var(--_ui5-v2-1-0-rc-2_bar-mid-container-padding-start-end);display:flex;flex-direction:row;align-items:center;justify-content:center}:host([design="Footer"]){background-color:var(--sapPageFooter_Background);border-top:.0625rem solid var(--sapPageFooter_BorderColor);box-shadow:none}:host([design="Subheader"]){height:var(--_ui5-v2-1-0-rc-2_bar_subheader_height);margin-top:var(--_ui5-v2-1-0-rc-2_bar_subheader_margin-top)}:host([design="FloatingFooter"]){border-radius:var(--sapElement_BorderCornerRadius);background-color:var(--sapPageFooter_Background);box-shadow:var(--sapContent_Shadow1);border:none}::slotted(*){margin:0 .25rem}
1
+ :host{background-color:var(--sapPageHeader_Background);height:var(--_ui5-v2-1-0_bar_base_height);width:100%;box-shadow:var(--sapContent_HeaderShadow);display:block}.ui5-bar-root{display:flex;align-items:center;justify-content:space-between;height:inherit;width:inherit;background-color:inherit;box-shadow:inherit;border-radius:inherit}.ui5-bar-root .ui5-bar-startcontent-container{padding-inline-start:var(--_ui5-v2-1-0_bar-start-container-padding-start);display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.ui5-bar-root .ui5-bar-content-container{min-width:calc(30% - calc(var(--_ui5-v2-1-0_bar-start-container-padding-start) + var(--_ui5-v2-1-0_bar-end-container-padding-end) + (2*var(--_ui5-v2-1-0_bar-mid-container-padding-start-end))))}.ui5-bar-root.ui5-bar-root-shrinked .ui5-bar-content-container{min-width:0px;overflow:hidden;height:100%}.ui5-bar-root .ui5-bar-endcontent-container{padding-inline-end:var(--_ui5-v2-1-0_bar-end-container-padding-end);display:flex;flex-direction:row;align-items:center;justify-content:flex-end}.ui5-bar-root .ui5-bar-midcontent-container{padding:0 var(--_ui5-v2-1-0_bar-mid-container-padding-start-end);display:flex;flex-direction:row;align-items:center;justify-content:center}:host([design="Footer"]){background-color:var(--sapPageFooter_Background);border-top:.0625rem solid var(--sapPageFooter_BorderColor);box-shadow:none}:host([design="Subheader"]){height:var(--_ui5-v2-1-0_bar_subheader_height);margin-top:var(--_ui5-v2-1-0_bar_subheader_margin-top)}:host([design="FloatingFooter"]){border-radius:var(--sapElement_BorderCornerRadius);background-color:var(--sapPageFooter_Background);box-shadow:var(--sapContent_Shadow1);border:none}::slotted(*){margin:0 .25rem}
@@ -1 +1 @@
1
- :host(:not([hidden])){display:block;width:100%}.ui5-breadcrumbs-root{white-space:nowrap;outline:none;margin:var(--_ui5-v2-1-0-rc-2_breadcrumbs_margin)}.ui5-breadcrumbs-root>ol{margin:0;padding:0;list-style-type:none;display:-webkit-box;display:-webkit-flex;display:flex}.ui5-breadcrumbs-root>ol>li{display:inline}.ui5-breadcrumbs-dropdown-arrow-link-wrapper[hidden]{display:none}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-icon]{width:var(--sapFontSize);height:var(--sapFontSize);padding-left:.675rem;vertical-align:text-top;color:var(--sapLinkColor)}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-link][focused] [ui5-icon]{color:var(--_ui5-v2-1-0-rc-2_link_focus_color)}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-icon]:before{content:"...";vertical-align:middle;position:absolute;left:0;bottom:0}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-link][focused] [ui5-icon]:after,.ui5-breadcrumbs-dropdown-arrow-link-wrapper:hover [ui5-icon]:after{content:"";position:absolute;border-bottom:.0625rem solid;inset:0 0 1px}.ui5-breadcrumbs-popover-footer{display:flex;justify-content:flex-end;width:100%}.ui5-breadcrumbs-separator:after{content:"/";padding:0 .25rem;cursor:auto;color:var(--sapContent_LabelColor);display:inline-block;font-family:"72override",var(--sapFontFamily);font-size:var(--sapFontSize)}:host([separators="DoubleSlash"]) .ui5-breadcrumbs-separator:after{content:"//"}:host([separators="BackSlash"]) .ui5-breadcrumbs-separator:after{content:"\\\\"}:host([separators="DoubleBackSlash"]) .ui5-breadcrumbs-separator:after{content:"\\\\\\\\"}:host([separators="GreaterThan"]) .ui5-breadcrumbs-separator:after{content:">"}:host([separators="DoubleGreaterThan"]) .ui5-breadcrumbs-separator:after{content:">>"}
1
+ :host(:not([hidden])){display:block;width:100%}.ui5-breadcrumbs-root{white-space:nowrap;outline:none;margin:var(--_ui5-v2-1-0_breadcrumbs_margin)}.ui5-breadcrumbs-root>ol{margin:0;padding:0;list-style-type:none;display:-webkit-box;display:-webkit-flex;display:flex}.ui5-breadcrumbs-root>ol>li{display:inline}.ui5-breadcrumbs-dropdown-arrow-link-wrapper[hidden]{display:none}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-icon]{width:var(--sapFontSize);height:var(--sapFontSize);padding-left:.675rem;vertical-align:text-top;color:var(--sapLinkColor)}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-link][focused] [ui5-icon]{color:var(--_ui5-v2-1-0_link_focus_color)}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-icon]:before{content:"...";vertical-align:middle;position:absolute;left:0;bottom:0}.ui5-breadcrumbs-dropdown-arrow-link-wrapper [ui5-link][focused] [ui5-icon]:after,.ui5-breadcrumbs-dropdown-arrow-link-wrapper:hover [ui5-icon]:after{content:"";position:absolute;border-bottom:.0625rem solid;inset:0 0 1px}.ui5-breadcrumbs-popover-footer{display:flex;justify-content:flex-end;width:100%}.ui5-breadcrumbs-separator:after{content:"/";padding:0 .25rem;cursor:auto;color:var(--sapContent_LabelColor);display:inline-block;font-family:"72override",var(--sapFontFamily);font-size:var(--sapFontSize)}:host([separators="DoubleSlash"]) .ui5-breadcrumbs-separator:after{content:"//"}:host([separators="BackSlash"]) .ui5-breadcrumbs-separator:after{content:"\\\\"}:host([separators="DoubleBackSlash"]) .ui5-breadcrumbs-separator:after{content:"\\\\\\\\"}:host([separators="GreaterThan"]) .ui5-breadcrumbs-separator:after{content:">"}:host([separators="DoubleGreaterThan"]) .ui5-breadcrumbs-separator:after{content:">>"}
@@ -1 +1 @@
1
- :host(:not([hidden])){display:inline-block}:host([_is-busy]){color:var(--_ui5-v2-1-0-rc-2_busy_indicator_color)}:host([size="S"]) .ui5-busy-indicator-root{min-width:1.625rem;min-height:.5rem}:host([size="S"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:1.75rem}:host([size="S"]) .ui5-busy-indicator-circle{width:.5rem;height:.5rem}:host([size="S"]) .ui5-busy-indicator-circle:first-child,:host([size="S"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.0625rem}:host(:not([size])) .ui5-busy-indicator-root,:host([size="M"]) .ui5-busy-indicator-root{min-width:3.375rem;min-height:1rem}:host([size="M"]) .ui5-busy-indicator-circle:first-child,:host([size="M"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.1875rem}:host(:not([size])[text]:not([text=""])) .ui5-busy-indicator-root,:host([size="M"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:2.25rem}:host(:not([size])) .ui5-busy-indicator-circle,:host([size="M"]) .ui5-busy-indicator-circle{width:1rem;height:1rem}:host([size="L"]) .ui5-busy-indicator-root{min-width:6.5rem;min-height:2rem}:host([size="L"]) .ui5-busy-indicator-circle:first-child,:host([size="L"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.25rem}:host([size="L"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:3.25rem}:host([size="L"]) .ui5-busy-indicator-circle{width:2rem;height:2rem}.ui5-busy-indicator-root{display:flex;justify-content:center;align-items:center;position:relative;background-color:inherit;height:inherit;border-radius:inherit}.ui5-busy-indicator-busy-area{position:absolute;z-index:99;inset:0;display:flex;justify-content:center;align-items:center;background-color:inherit;flex-direction:column;border-radius:inherit}:host(:not(:empty)) .ui5-busy-indicator-busy-area{background-color:var(--_ui5-v2-1-0-rc-2_busy_indicator_block_layer)}:host([desktop]) .ui5-busy-indicator-busy-area:focus,.ui5-busy-indicator-busy-area:focus-visible{outline:var(--_ui5-v2-1-0-rc-2_busy_indicator_focus_outline);outline-offset:-2px}.ui5-busy-indicator-circles-wrapper{line-height:0}.ui5-busy-indicator-circle{display:inline-block;background-color:currentColor;border-radius:50%}.ui5-busy-indicator-circle:before{content:"";width:100%;height:100%;border-radius:100%}.circle-animation-0{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11)}.circle-animation-1{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.2s}.circle-animation-2{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.4s}.ui5-busy-indicator-text{width:100%;text-align:center}:host([text-placement="Top"]) .ui5-busy-indicator-text{margin-bottom:.5rem}:host(:not([text-placement])) .ui5-busy-indicator-text,:host([text-placement="Bottom"]) .ui5-busy-indicator-text{margin-top:.5rem}@keyframes grow{0%,50%,to{-webkit-transform:scale(.5);-moz-transform:scale(.5);transform:scale(.5)}25%{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}}
1
+ :host(:not([hidden])){display:inline-block}:host([_is-busy]){color:var(--_ui5-v2-1-0_busy_indicator_color)}:host([size="S"]) .ui5-busy-indicator-root{min-width:1.625rem;min-height:.5rem}:host([size="S"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:1.75rem}:host([size="S"]) .ui5-busy-indicator-circle{width:.5rem;height:.5rem}:host([size="S"]) .ui5-busy-indicator-circle:first-child,:host([size="S"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.0625rem}:host(:not([size])) .ui5-busy-indicator-root,:host([size="M"]) .ui5-busy-indicator-root{min-width:3.375rem;min-height:1rem}:host([size="M"]) .ui5-busy-indicator-circle:first-child,:host([size="M"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.1875rem}:host(:not([size])[text]:not([text=""])) .ui5-busy-indicator-root,:host([size="M"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:2.25rem}:host(:not([size])) .ui5-busy-indicator-circle,:host([size="M"]) .ui5-busy-indicator-circle{width:1rem;height:1rem}:host([size="L"]) .ui5-busy-indicator-root{min-width:6.5rem;min-height:2rem}:host([size="L"]) .ui5-busy-indicator-circle:first-child,:host([size="L"]) .ui5-busy-indicator-circle:nth-child(2){margin-inline-end:.25rem}:host([size="L"][text]:not([text=""])) .ui5-busy-indicator-root{min-height:3.25rem}:host([size="L"]) .ui5-busy-indicator-circle{width:2rem;height:2rem}.ui5-busy-indicator-root{display:flex;justify-content:center;align-items:center;position:relative;background-color:inherit;height:inherit;border-radius:inherit}.ui5-busy-indicator-busy-area{position:absolute;z-index:99;inset:0;display:flex;justify-content:center;align-items:center;background-color:inherit;flex-direction:column;border-radius:inherit}:host(:not(:empty)) .ui5-busy-indicator-busy-area{background-color:var(--_ui5-v2-1-0_busy_indicator_block_layer)}:host([desktop]) .ui5-busy-indicator-busy-area:focus,.ui5-busy-indicator-busy-area:focus-visible{outline:var(--_ui5-v2-1-0_busy_indicator_focus_outline);outline-offset:-2px}.ui5-busy-indicator-circles-wrapper{line-height:0}.ui5-busy-indicator-circle{display:inline-block;background-color:currentColor;border-radius:50%}.ui5-busy-indicator-circle:before{content:"";width:100%;height:100%;border-radius:100%}.circle-animation-0{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11)}.circle-animation-1{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.2s}.circle-animation-2{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.4s}.ui5-busy-indicator-text{width:100%;text-align:center}:host([text-placement="Top"]) .ui5-busy-indicator-text{margin-bottom:.5rem}:host(:not([text-placement])) .ui5-busy-indicator-text,:host([text-placement="Bottom"]) .ui5-busy-indicator-text{margin-top:.5rem}@keyframes grow{0%,50%,to{-webkit-transform:scale(.5);-moz-transform:scale(.5);transform:scale(.5)}25%{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}}
@@ -1 +1 @@
1
- :host{vertical-align:middle}.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}:host(:not([hidden])){display:inline-block}:host{min-width:var(--_ui5-v2-1-0-rc-2_button_base_min_width);height:var(--_ui5-v2-1-0-rc-2_button_base_height);line-height:normal;font-family:var(--_ui5-v2-1-0-rc-2_button_fontFamily);font-size:var(--sapFontSize);text-shadow:var(--_ui5-v2-1-0-rc-2_button_text_shadow);border-radius:var(--_ui5-v2-1-0-rc-2_button_border_radius);cursor:pointer;background-color:var(--sapButton_Background);border:var(--sapButton_BorderWidth) solid var(--sapButton_BorderColor);color:var(--sapButton_TextColor);box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui5-button-root{min-width:inherit;cursor:inherit;height:100%;width:100%;box-sizing:border-box;display:flex;justify-content:center;align-items:center;outline:none;padding:0 var(--_ui5-v2-1-0-rc-2_button_base_padding);position:relative;background:transparent;border:none;color:inherit;text-shadow:inherit;font:inherit;white-space:inherit;overflow:inherit;text-overflow:inherit;letter-spacing:inherit;word-spacing:inherit;line-height:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none}:host(:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host(:not([hidden]):not([disabled]).ui5_hovered){background:var(--sapButton_Hover_Background);border:1px solid var(--sapButton_Hover_BorderColor);color:var(--sapButton_Hover_TextColor)}.ui5-button-icon,.ui5-button-end-icon{color:inherit;flex-shrink:0}.ui5-button-end-icon{margin-inline-start:var(--_ui5-v2-1-0-rc-2_button_base_icon_margin)}:host([icon-only]:not([has-end-icon])) .ui5-button-root{min-width:auto;padding:0}:host([icon-only]) .ui5-button-text{display:none}.ui5-button-text{outline:none;position:relative;white-space:inherit;overflow:inherit;text-overflow:inherit}:host([has-icon]:not(:empty)) .ui5-button-text{margin-inline-start:var(--_ui5-v2-1-0-rc-2_button_base_icon_margin)}:host([has-end-icon]:not([has-icon]):empty) .ui5-button-end-icon{margin-inline-start:0}:host([disabled]){opacity:var(--sapContent_DisabledOpacity);pointer-events:unset;cursor:default}:host([has-icon]:not([icon-only]):not([has-end-icon])) .ui5-button-text{min-width:calc(var(--_ui5-v2-1-0-rc-2_button_base_min_width) - var(--_ui5-v2-1-0-rc-2_button_base_icon_margin) - 1rem)}:host([disabled]:active){pointer-events:none}:host([desktop]:not([active])) .ui5-button-root:focus-within:after,:host(:not([active])) .ui5-button-root:focus-visible:after,:host([desktop][active][design="Emphasized"]) .ui5-button-root:focus-within:after,:host([active][design="Emphasized"]) .ui5-button-root:focus-visible:after,:host([desktop][active]) .ui5-button-root:focus-within:before,:host([active]) .ui5-button-root:focus-visible:before{content:"";position:absolute;box-sizing:border-box;inset:.0625rem;border:var(--_ui5-v2-1-0-rc-2_button_focused_border);border-radius:var(--_ui5-v2-1-0-rc-2_button_focused_border_radius)}:host([desktop][active]) .ui5-button-root:focus-within:before,:host([active]) .ui5-button-root:focus-visible:before{border-color:var(--_ui5-v2-1-0-rc-2_button_pressed_focused_border_color)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:after,:host([design="Emphasized"]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0-rc-2_button_emphasized_focused_border_color)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:before,:host([design="Emphasized"]) .ui5-button-root:focus-visible:before{content:"";position:absolute;box-sizing:border-box;inset:.0625rem;border:var(--_ui5-v2-1-0-rc-2_button_emphasized_focused_border_before);border-radius:var(--_ui5-v2-1-0-rc-2_button_focused_border_radius)}.ui5-button-root::-moz-focus-inner{border:0}bdi{display:block;white-space:inherit;overflow:inherit;text-overflow:inherit}:host([ui5-button][active]:not([disabled]):not([non-interactive])){background-image:none;background-color:var(--sapButton_Active_Background);border-color:var(--sapButton_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([design="Positive"]){background-color:var(--sapButton_Accept_Background);border-color:var(--sapButton_Accept_BorderColor);color:var(--sapButton_Accept_TextColor)}:host([design="Positive"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Positive"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Accept_Hover_Background);border-color:var(--sapButton_Accept_Hover_BorderColor);color:var(--sapButton_Accept_Hover_TextColor)}:host([ui5-button][design="Positive"][active]:not([non-interactive])){background-color:var(--sapButton_Accept_Active_Background);border-color:var(--sapButton_Accept_Active_BorderColor);color:var(--sapButton_Accept_Active_TextColor)}:host([design="Negative"]){background-color:var(--sapButton_Reject_Background);border-color:var(--sapButton_Reject_BorderColor);color:var(--sapButton_Reject_TextColor)}:host([design="Negative"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Negative"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Reject_Hover_Background);border-color:var(--sapButton_Reject_Hover_BorderColor);color:var(--sapButton_Reject_Hover_TextColor)}:host([ui5-button][design="Negative"][active]:not([non-interactive])){background-color:var(--sapButton_Reject_Active_Background);border-color:var(--sapButton_Reject_Active_BorderColor);color:var(--sapButton_Reject_Active_TextColor)}:host([design="Attention"]){background-color:var(--sapButton_Attention_Background);border-color:var(--sapButton_Attention_BorderColor);color:var(--sapButton_Attention_TextColor)}:host([design="Attention"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Attention"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Attention_Hover_Background);border-color:var(--sapButton_Attention_Hover_BorderColor);color:var(--sapButton_Attention_Hover_TextColor)}:host([ui5-button][design="Attention"][active]:not([non-interactive])){background-color:var(--sapButton_Attention_Active_Background);border-color:var(--sapButton_Attention_Active_BorderColor);color:var(--sapButton_Attention_Active_TextColor)}:host([design="Emphasized"]){background-color:var(--sapButton_Emphasized_Background);border-color:var(--sapButton_Emphasized_BorderColor);border-width:var(--_ui5-v2-1-0-rc-2_button_emphasized_border_width);color:var(--sapButton_Emphasized_TextColor);font-family:var(--sapFontBoldFamily )}:host([design="Emphasized"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Emphasized"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Emphasized_Hover_Background);border-color:var(--sapButton_Emphasized_Hover_BorderColor);border-width:var(--_ui5-v2-1-0-rc-2_button_emphasized_border_width);color:var(--sapButton_Emphasized_Hover_TextColor)}:host([ui5-button][design="Empasized"][active]:not([non-interactive])){background-color:var(--sapButton_Emphasized_Active_Background);border-color:var(--sapButton_Emphasized_Active_BorderColor);color:var(--sapButton_Emphasized_Active_TextColor)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:after,:host([design="Emphasized"]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0-rc-2_button_emphasized_focused_border_color);outline:none}:host([design="Emphasized"][desktop][active]:not([non-interactive])) .ui5-button-root:focus-within:after,:host([design="Emphasized"][active]:not([non-interactive])) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0-rc-2_button_emphasized_focused_active_border_color)}:host([design="Transparent"]){background-color:var(--sapButton_Lite_Background);color:var(--sapButton_Lite_TextColor);border-color:var(--sapButton_Lite_BorderColor)}:host([design="Transparent"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Transparent"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Lite_Hover_Background);border-color:var(--sapButton_Lite_Hover_BorderColor);color:var(--sapButton_Lite_Hover_TextColor)}:host([ui5-button][design="Transparent"][active]:not([non-interactive])){background-color:var(--sapButton_Lite_Active_Background);border-color:var(--sapButton_Lite_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([ui5-segmented-button-item][active][desktop]) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item][active]) .ui5-button-root:focus-visible:after,:host([pressed][desktop]) .ui5-button-root:focus-within:after,:host([pressed]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0-rc-2_button_pressed_focused_border_color);outline:none}:host([ui5-segmented-button-item][desktop]:not(:last-child)) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item]:not(:last-child)) .ui5-button-root:focus-visible:after{border-top-right-radius:var(--_ui5-v2-1-0-rc-2_button_focused_inner_border_radius);border-bottom-right-radius:var(--_ui5-v2-1-0-rc-2_button_focused_inner_border_radius)}:host([ui5-segmented-button-item][desktop]:not(:first-child)) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item]:not(:first-child)) .ui5-button-root:focus-visible:after{border-top-left-radius:var(--_ui5-v2-1-0-rc-2_button_focused_inner_border_radius);border-bottom-left-radius:var(--_ui5-v2-1-0-rc-2_button_focused_inner_border_radius)}
1
+ :host{vertical-align:middle}.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}:host(:not([hidden])){display:inline-block}:host{min-width:var(--_ui5-v2-1-0_button_base_min_width);height:var(--_ui5-v2-1-0_button_base_height);line-height:normal;font-family:var(--_ui5-v2-1-0_button_fontFamily);font-size:var(--sapFontSize);text-shadow:var(--_ui5-v2-1-0_button_text_shadow);border-radius:var(--_ui5-v2-1-0_button_border_radius);cursor:pointer;background-color:var(--sapButton_Background);border:var(--sapButton_BorderWidth) solid var(--sapButton_BorderColor);color:var(--sapButton_TextColor);box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui5-button-root{min-width:inherit;cursor:inherit;height:100%;width:100%;box-sizing:border-box;display:flex;justify-content:center;align-items:center;outline:none;padding:0 var(--_ui5-v2-1-0_button_base_padding);position:relative;background:transparent;border:none;color:inherit;text-shadow:inherit;font:inherit;white-space:inherit;overflow:inherit;text-overflow:inherit;letter-spacing:inherit;word-spacing:inherit;line-height:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none}:host(:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host(:not([hidden]):not([disabled]).ui5_hovered){background:var(--sapButton_Hover_Background);border:1px solid var(--sapButton_Hover_BorderColor);color:var(--sapButton_Hover_TextColor)}.ui5-button-icon,.ui5-button-end-icon{color:inherit;flex-shrink:0}.ui5-button-end-icon{margin-inline-start:var(--_ui5-v2-1-0_button_base_icon_margin)}:host([icon-only]:not([has-end-icon])) .ui5-button-root{min-width:auto;padding:0}:host([icon-only]) .ui5-button-text{display:none}.ui5-button-text{outline:none;position:relative;white-space:inherit;overflow:inherit;text-overflow:inherit}:host([has-icon]:not(:empty)) .ui5-button-text{margin-inline-start:var(--_ui5-v2-1-0_button_base_icon_margin)}:host([has-end-icon]:not([has-icon]):empty) .ui5-button-end-icon{margin-inline-start:0}:host([disabled]){opacity:var(--sapContent_DisabledOpacity);pointer-events:unset;cursor:default}:host([has-icon]:not([icon-only]):not([has-end-icon])) .ui5-button-text{min-width:calc(var(--_ui5-v2-1-0_button_base_min_width) - var(--_ui5-v2-1-0_button_base_icon_margin) - 1rem)}:host([disabled]:active){pointer-events:none}:host([desktop]:not([active])) .ui5-button-root:focus-within:after,:host(:not([active])) .ui5-button-root:focus-visible:after,:host([desktop][active][design="Emphasized"]) .ui5-button-root:focus-within:after,:host([active][design="Emphasized"]) .ui5-button-root:focus-visible:after,:host([desktop][active]) .ui5-button-root:focus-within:before,:host([active]) .ui5-button-root:focus-visible:before{content:"";position:absolute;box-sizing:border-box;inset:.0625rem;border:var(--_ui5-v2-1-0_button_focused_border);border-radius:var(--_ui5-v2-1-0_button_focused_border_radius)}:host([desktop][active]) .ui5-button-root:focus-within:before,:host([active]) .ui5-button-root:focus-visible:before{border-color:var(--_ui5-v2-1-0_button_pressed_focused_border_color)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:after,:host([design="Emphasized"]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0_button_emphasized_focused_border_color)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:before,:host([design="Emphasized"]) .ui5-button-root:focus-visible:before{content:"";position:absolute;box-sizing:border-box;inset:.0625rem;border:var(--_ui5-v2-1-0_button_emphasized_focused_border_before);border-radius:var(--_ui5-v2-1-0_button_focused_border_radius)}.ui5-button-root::-moz-focus-inner{border:0}bdi{display:block;white-space:inherit;overflow:inherit;text-overflow:inherit}:host([ui5-button][active]:not([disabled]):not([non-interactive])){background-image:none;background-color:var(--sapButton_Active_Background);border-color:var(--sapButton_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([design="Positive"]){background-color:var(--sapButton_Accept_Background);border-color:var(--sapButton_Accept_BorderColor);color:var(--sapButton_Accept_TextColor)}:host([design="Positive"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Positive"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Accept_Hover_Background);border-color:var(--sapButton_Accept_Hover_BorderColor);color:var(--sapButton_Accept_Hover_TextColor)}:host([ui5-button][design="Positive"][active]:not([non-interactive])){background-color:var(--sapButton_Accept_Active_Background);border-color:var(--sapButton_Accept_Active_BorderColor);color:var(--sapButton_Accept_Active_TextColor)}:host([design="Negative"]){background-color:var(--sapButton_Reject_Background);border-color:var(--sapButton_Reject_BorderColor);color:var(--sapButton_Reject_TextColor)}:host([design="Negative"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Negative"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Reject_Hover_Background);border-color:var(--sapButton_Reject_Hover_BorderColor);color:var(--sapButton_Reject_Hover_TextColor)}:host([ui5-button][design="Negative"][active]:not([non-interactive])){background-color:var(--sapButton_Reject_Active_Background);border-color:var(--sapButton_Reject_Active_BorderColor);color:var(--sapButton_Reject_Active_TextColor)}:host([design="Attention"]){background-color:var(--sapButton_Attention_Background);border-color:var(--sapButton_Attention_BorderColor);color:var(--sapButton_Attention_TextColor)}:host([design="Attention"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Attention"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Attention_Hover_Background);border-color:var(--sapButton_Attention_Hover_BorderColor);color:var(--sapButton_Attention_Hover_TextColor)}:host([ui5-button][design="Attention"][active]:not([non-interactive])){background-color:var(--sapButton_Attention_Active_Background);border-color:var(--sapButton_Attention_Active_BorderColor);color:var(--sapButton_Attention_Active_TextColor)}:host([design="Emphasized"]){background-color:var(--sapButton_Emphasized_Background);border-color:var(--sapButton_Emphasized_BorderColor);border-width:var(--_ui5-v2-1-0_button_emphasized_border_width);color:var(--sapButton_Emphasized_TextColor);font-family:var(--sapFontBoldFamily )}:host([design="Emphasized"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Emphasized"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Emphasized_Hover_Background);border-color:var(--sapButton_Emphasized_Hover_BorderColor);border-width:var(--_ui5-v2-1-0_button_emphasized_border_width);color:var(--sapButton_Emphasized_Hover_TextColor)}:host([ui5-button][design="Empasized"][active]:not([non-interactive])){background-color:var(--sapButton_Emphasized_Active_Background);border-color:var(--sapButton_Emphasized_Active_BorderColor);color:var(--sapButton_Emphasized_Active_TextColor)}:host([design="Emphasized"][desktop]) .ui5-button-root:focus-within:after,:host([design="Emphasized"]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0_button_emphasized_focused_border_color);outline:none}:host([design="Emphasized"][desktop][active]:not([non-interactive])) .ui5-button-root:focus-within:after,:host([design="Emphasized"][active]:not([non-interactive])) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0_button_emphasized_focused_active_border_color)}:host([design="Transparent"]){background-color:var(--sapButton_Lite_Background);color:var(--sapButton_Lite_TextColor);border-color:var(--sapButton_Lite_BorderColor)}:host([design="Transparent"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]):hover),:host([design="Transparent"]:not([active]):not([non-interactive]):not([_is-touch]):not([disabled]).ui5_hovered){background-color:var(--sapButton_Lite_Hover_Background);border-color:var(--sapButton_Lite_Hover_BorderColor);color:var(--sapButton_Lite_Hover_TextColor)}:host([ui5-button][design="Transparent"][active]:not([non-interactive])){background-color:var(--sapButton_Lite_Active_Background);border-color:var(--sapButton_Lite_Active_BorderColor);color:var(--sapButton_Active_TextColor)}:host([ui5-segmented-button-item][active][desktop]) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item][active]) .ui5-button-root:focus-visible:after,:host([pressed][desktop]) .ui5-button-root:focus-within:after,:host([pressed]) .ui5-button-root:focus-visible:after{border-color:var(--_ui5-v2-1-0_button_pressed_focused_border_color);outline:none}:host([ui5-segmented-button-item][desktop]:not(:last-child)) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item]:not(:last-child)) .ui5-button-root:focus-visible:after{border-top-right-radius:var(--_ui5-v2-1-0_button_focused_inner_border_radius);border-bottom-right-radius:var(--_ui5-v2-1-0_button_focused_inner_border_radius)}:host([ui5-segmented-button-item][desktop]:not(:first-child)) .ui5-button-root:focus-within:after,:host([ui5-segmented-button-item]:not(:first-child)) .ui5-button-root:focus-visible:after{border-top-left-radius:var(--_ui5-v2-1-0_button_focused_inner_border_radius);border-bottom-left-radius:var(--_ui5-v2-1-0_button_focused_inner_border_radius)}
@@ -1 +1 @@
1
- :host(:not([hidden])){display:inline-block}.ui5-cal-root .ui5-calheader{display:block;height:var(--_ui5-v2-1-0-rc-2_calendar_header_height);font-family:var(--_ui5-v2-1-0-rc-2_button_fontFamily)}.ui5-cal-root{background:var(--sapList_Background);box-sizing:border-box;height:var(--_ui5-v2-1-0-rc-2_calendar_height);width:var(--_ui5-v2-1-0-rc-2_calendar_width);padding:var(--_ui5-v2-1-0-rc-2_calendar_top_bottom_padding) var(--_ui5-v2-1-0-rc-2_calendar_left_right_padding) 0;display:flex;flex-direction:column-reverse;justify-content:flex-end;overflow:hidden}.ui5-cal-root .ui5-cal-content{padding:0 var(--_ui5-v2-1-0-rc-2_calendar_left_right_padding) var(--_ui5-v2-1-0-rc-2_calendar_top_bottom_padding)}
1
+ :host(:not([hidden])){display:inline-block}.ui5-cal-root .ui5-calheader{display:block;height:var(--_ui5-v2-1-0_calendar_header_height);font-family:var(--_ui5-v2-1-0_button_fontFamily)}.ui5-cal-root{background:var(--sapList_Background);box-sizing:border-box;height:var(--_ui5-v2-1-0_calendar_height);width:var(--_ui5-v2-1-0_calendar_width);padding:var(--_ui5-v2-1-0_calendar_top_bottom_padding) var(--_ui5-v2-1-0_calendar_left_right_padding) 0;display:flex;flex-direction:column-reverse;justify-content:flex-end;overflow:hidden}.ui5-cal-root .ui5-cal-content{padding:0 var(--_ui5-v2-1-0_calendar_left_right_padding) var(--_ui5-v2-1-0_calendar_top_bottom_padding)}