@ui5/webcomponents 2.16.0-rc.0 → 2.16.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (635) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Button.js +4 -2
  4. package/dist/Button.js.map +1 -1
  5. package/dist/Carousel.d.ts +33 -13
  6. package/dist/Carousel.js +239 -70
  7. package/dist/Carousel.js.map +1 -1
  8. package/dist/CarouselTemplate.js +10 -10
  9. package/dist/CarouselTemplate.js.map +1 -1
  10. package/dist/DateComponentBase.js +1 -1
  11. package/dist/DateComponentBase.js.map +1 -1
  12. package/dist/DateTimeInput.d.ts +6 -0
  13. package/dist/DateTimeInput.js +30 -0
  14. package/dist/DateTimeInput.js.map +1 -1
  15. package/dist/DateTimePicker.d.ts +9 -0
  16. package/dist/DateTimePicker.js +31 -4
  17. package/dist/DateTimePicker.js.map +1 -1
  18. package/dist/DynamicDateRange.d.ts +4 -1
  19. package/dist/DynamicDateRange.js +24 -0
  20. package/dist/DynamicDateRange.js.map +1 -1
  21. package/dist/Input.d.ts +2 -0
  22. package/dist/Input.js +9 -0
  23. package/dist/Input.js.map +1 -1
  24. package/dist/List.d.ts +6 -1
  25. package/dist/List.js +7 -1
  26. package/dist/List.js.map +1 -1
  27. package/dist/ListTemplate.js +6 -5
  28. package/dist/ListTemplate.js.map +1 -1
  29. package/dist/Menu.d.ts +1 -1
  30. package/dist/Menu.js +1 -1
  31. package/dist/Menu.js.map +1 -1
  32. package/dist/MenuItem.d.ts +1 -1
  33. package/dist/MenuItem.js +1 -1
  34. package/dist/MenuItem.js.map +1 -1
  35. package/dist/MenuItemTemplate.js +1 -1
  36. package/dist/MenuItemTemplate.js.map +1 -1
  37. package/dist/MenuTemplate.js +1 -1
  38. package/dist/MenuTemplate.js.map +1 -1
  39. package/dist/SegmentedButton.d.ts +12 -0
  40. package/dist/SegmentedButton.js +18 -1
  41. package/dist/SegmentedButton.js.map +1 -1
  42. package/dist/SegmentedButtonItem.d.ts +1 -0
  43. package/dist/SegmentedButtonItem.js +7 -0
  44. package/dist/SegmentedButtonItem.js.map +1 -1
  45. package/dist/SegmentedButtonItemTemplate.js +1 -1
  46. package/dist/SegmentedButtonItemTemplate.js.map +1 -1
  47. package/dist/SegmentedButtonTemplate.js +6 -1
  48. package/dist/SegmentedButtonTemplate.js.map +1 -1
  49. package/dist/Select.d.ts +1 -1
  50. package/dist/Select.js +1 -1
  51. package/dist/Select.js.map +1 -1
  52. package/dist/SplitButton.js +13 -8
  53. package/dist/SplitButton.js.map +1 -1
  54. package/dist/TextArea.d.ts +16 -0
  55. package/dist/TextArea.js +18 -2
  56. package/dist/TextArea.js.map +1 -1
  57. package/dist/TextAreaTemplate.js +2 -1
  58. package/dist/TextAreaTemplate.js.map +1 -1
  59. package/dist/css/themes/Avatar.css +1 -1
  60. package/dist/css/themes/AvatarGroup.css +1 -1
  61. package/dist/css/themes/Bar.css +1 -1
  62. package/dist/css/themes/Breadcrumbs.css +1 -1
  63. package/dist/css/themes/BusyIndicator.css +1 -1
  64. package/dist/css/themes/Button.css +1 -1
  65. package/dist/css/themes/ButtonBadge.css +1 -1
  66. package/dist/css/themes/Calendar.css +1 -1
  67. package/dist/css/themes/CalendarHeader.css +1 -1
  68. package/dist/css/themes/CalendarLegend.css +1 -1
  69. package/dist/css/themes/CalendarLegendItem.css +1 -1
  70. package/dist/css/themes/Card.css +1 -1
  71. package/dist/css/themes/CardHeader.css +1 -1
  72. package/dist/css/themes/Carousel.css +1 -1
  73. package/dist/css/themes/CheckBox.css +1 -1
  74. package/dist/css/themes/ColorPalette.css +1 -1
  75. package/dist/css/themes/ColorPaletteItem.css +1 -1
  76. package/dist/css/themes/ColorPalettePopover.css +1 -1
  77. package/dist/css/themes/ColorPicker.css +1 -1
  78. package/dist/css/themes/ComboBox.css +1 -1
  79. package/dist/css/themes/ComboBoxItem.css +1 -1
  80. package/dist/css/themes/DatePicker.css +1 -1
  81. package/dist/css/themes/DatePickerPopover.css +1 -1
  82. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  83. package/dist/css/themes/DayPicker.css +1 -1
  84. package/dist/css/themes/Dialog.css +1 -1
  85. package/dist/css/themes/DynamicDateRange.css +1 -1
  86. package/dist/css/themes/DynamicDateRangePopover.css +1 -1
  87. package/dist/css/themes/FileUploader.css +1 -1
  88. package/dist/css/themes/Form.css +1 -1
  89. package/dist/css/themes/FormItem.css +1 -1
  90. package/dist/css/themes/FormItemSpan.css +1 -1
  91. package/dist/css/themes/GrowingButton.css +1 -1
  92. package/dist/css/themes/Icon.css +1 -1
  93. package/dist/css/themes/Input.css +1 -1
  94. package/dist/css/themes/InputIcon.css +1 -1
  95. package/dist/css/themes/InputSharedStyles.css +1 -1
  96. package/dist/css/themes/Link.css +1 -1
  97. package/dist/css/themes/List.css +1 -1
  98. package/dist/css/themes/ListItem.css +1 -1
  99. package/dist/css/themes/ListItemBase.css +1 -1
  100. package/dist/css/themes/ListItemCustom.css +1 -1
  101. package/dist/css/themes/ListItemGroup.css +1 -1
  102. package/dist/css/themes/ListItemGroupHeader.css +1 -1
  103. package/dist/css/themes/ListItemIcon.css +1 -1
  104. package/dist/css/themes/Menu.css +1 -1
  105. package/dist/css/themes/MenuItem.css +1 -1
  106. package/dist/css/themes/MessageStrip.css +1 -1
  107. package/dist/css/themes/MonthPicker.css +1 -1
  108. package/dist/css/themes/MultiComboBox.css +1 -1
  109. package/dist/css/themes/MultiComboBoxItem.css +1 -1
  110. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  111. package/dist/css/themes/MultiInput.css +1 -1
  112. package/dist/css/themes/OptionBase.css +1 -1
  113. package/dist/css/themes/Panel.css +1 -1
  114. package/dist/css/themes/Popover.css +1 -1
  115. package/dist/css/themes/PopupsCommon.css +1 -1
  116. package/dist/css/themes/ProgressIndicator.css +1 -1
  117. package/dist/css/themes/RadioButton.css +1 -1
  118. package/dist/css/themes/RangeSlider.css +1 -1
  119. package/dist/css/themes/RatingIndicator.css +1 -1
  120. package/dist/css/themes/ResponsivePopover.css +1 -1
  121. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  122. package/dist/css/themes/SegmentedButton.css +1 -1
  123. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  124. package/dist/css/themes/Select.css +1 -1
  125. package/dist/css/themes/SliderBase.css +1 -1
  126. package/dist/css/themes/SplitButton.css +1 -1
  127. package/dist/css/themes/StepInput.css +1 -1
  128. package/dist/css/themes/SuggestionItem.css +1 -1
  129. package/dist/css/themes/SuggestionItemCustom.css +1 -1
  130. package/dist/css/themes/Switch.css +1 -1
  131. package/dist/css/themes/TabContainer.css +1 -1
  132. package/dist/css/themes/TabInOverflow.css +1 -1
  133. package/dist/css/themes/TabInStrip.css +1 -1
  134. package/dist/css/themes/TabSemanticIcon.css +1 -1
  135. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  136. package/dist/css/themes/TableCellBase.css +1 -1
  137. package/dist/css/themes/TableHeaderRow.css +1 -1
  138. package/dist/css/themes/TableRow.css +1 -1
  139. package/dist/css/themes/TableRowActionBase.css +1 -1
  140. package/dist/css/themes/TableRowBase.css +1 -1
  141. package/dist/css/themes/Tag.css +1 -1
  142. package/dist/css/themes/Text.css +1 -1
  143. package/dist/css/themes/TextArea.css +1 -1
  144. package/dist/css/themes/TimePicker.css +1 -1
  145. package/dist/css/themes/Toast.css +1 -1
  146. package/dist/css/themes/ToggleButton.css +1 -1
  147. package/dist/css/themes/Token.css +1 -1
  148. package/dist/css/themes/Tokenizer.css +1 -1
  149. package/dist/css/themes/TokenizerPopover.css +1 -1
  150. package/dist/css/themes/Toolbar.css +1 -1
  151. package/dist/css/themes/ToolbarButton.css +1 -1
  152. package/dist/css/themes/ToolbarPopover.css +1 -1
  153. package/dist/css/themes/ToolbarSeparator.css +1 -1
  154. package/dist/css/themes/TreeItem.css +1 -1
  155. package/dist/css/themes/ValueStateMessage.css +1 -1
  156. package/dist/css/themes/ValueStateVariables.css +1 -1
  157. package/dist/css/themes/YearPicker.css +1 -1
  158. package/dist/css/themes/YearRangePicker.css +1 -1
  159. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  160. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  161. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  162. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  163. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  164. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  165. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  166. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  167. package/dist/custom-elements-internal.json +24153 -24048
  168. package/dist/custom-elements.json +2345 -2272
  169. package/dist/features/InputSuggestionsTemplate.js +2 -2
  170. package/dist/features/InputSuggestionsTemplate.js.map +1 -1
  171. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  173. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  174. package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
  175. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  176. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  177. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  178. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  179. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  180. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  181. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  182. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  183. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  184. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  185. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  186. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  187. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  188. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  194. package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
  195. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  196. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  197. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  198. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  199. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  200. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  201. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  222. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  223. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  224. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  225. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  226. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  227. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  228. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  229. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  230. package/dist/generated/i18n/i18n-defaults.js +1 -1
  231. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  232. package/dist/generated/themes/Avatar.css.d.ts +1 -1
  233. package/dist/generated/themes/Avatar.css.js +1 -1
  234. package/dist/generated/themes/Avatar.css.js.map +1 -1
  235. package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
  236. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  237. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  238. package/dist/generated/themes/Bar.css.d.ts +1 -1
  239. package/dist/generated/themes/Bar.css.js +1 -1
  240. package/dist/generated/themes/Bar.css.js.map +1 -1
  241. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  242. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  243. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  244. package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
  245. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  246. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  247. package/dist/generated/themes/Button.css.d.ts +1 -1
  248. package/dist/generated/themes/Button.css.js +1 -1
  249. package/dist/generated/themes/Button.css.js.map +1 -1
  250. package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
  251. package/dist/generated/themes/ButtonBadge.css.js +1 -1
  252. package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
  253. package/dist/generated/themes/Calendar.css.d.ts +1 -1
  254. package/dist/generated/themes/Calendar.css.js +1 -1
  255. package/dist/generated/themes/Calendar.css.js.map +1 -1
  256. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  257. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  258. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  259. package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
  260. package/dist/generated/themes/CalendarLegend.css.js +1 -1
  261. package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
  262. package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
  263. package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
  264. package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
  265. package/dist/generated/themes/Card.css.d.ts +1 -1
  266. package/dist/generated/themes/Card.css.js +1 -1
  267. package/dist/generated/themes/Card.css.js.map +1 -1
  268. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  269. package/dist/generated/themes/CardHeader.css.js +1 -1
  270. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  271. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  272. package/dist/generated/themes/Carousel.css.js +1 -1
  273. package/dist/generated/themes/Carousel.css.js.map +1 -1
  274. package/dist/generated/themes/CheckBox.css.d.ts +1 -1
  275. package/dist/generated/themes/CheckBox.css.js +1 -1
  276. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  277. package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
  278. package/dist/generated/themes/ColorPalette.css.js +1 -1
  279. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  280. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  281. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  282. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  283. package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
  284. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  285. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  286. package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
  287. package/dist/generated/themes/ColorPicker.css.js +1 -1
  288. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  289. package/dist/generated/themes/ComboBox.css.d.ts +1 -1
  290. package/dist/generated/themes/ComboBox.css.js +1 -1
  291. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  292. package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
  293. package/dist/generated/themes/ComboBoxItem.css.js +1 -1
  294. package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
  295. package/dist/generated/themes/DatePicker.css.d.ts +1 -1
  296. package/dist/generated/themes/DatePicker.css.js +1 -1
  297. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  298. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  299. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  300. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  301. package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
  302. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  303. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  304. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  305. package/dist/generated/themes/DayPicker.css.js +1 -1
  306. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  307. package/dist/generated/themes/Dialog.css.d.ts +1 -1
  308. package/dist/generated/themes/Dialog.css.js +1 -1
  309. package/dist/generated/themes/Dialog.css.js.map +1 -1
  310. package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
  311. package/dist/generated/themes/DynamicDateRange.css.js +1 -1
  312. package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
  313. package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
  314. package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
  315. package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
  316. package/dist/generated/themes/FileUploader.css.d.ts +1 -1
  317. package/dist/generated/themes/FileUploader.css.js +1 -1
  318. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  319. package/dist/generated/themes/Form.css.d.ts +1 -1
  320. package/dist/generated/themes/Form.css.js +1 -1
  321. package/dist/generated/themes/Form.css.js.map +1 -1
  322. package/dist/generated/themes/FormItem.css.d.ts +1 -1
  323. package/dist/generated/themes/FormItem.css.js +1 -1
  324. package/dist/generated/themes/FormItem.css.js.map +1 -1
  325. package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
  326. package/dist/generated/themes/FormItemSpan.css.js +1 -1
  327. package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
  328. package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
  329. package/dist/generated/themes/GrowingButton.css.js +1 -1
  330. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  331. package/dist/generated/themes/Icon.css.d.ts +1 -1
  332. package/dist/generated/themes/Icon.css.js +1 -1
  333. package/dist/generated/themes/Icon.css.js.map +1 -1
  334. package/dist/generated/themes/Input.css.d.ts +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.d.ts +1 -1
  338. package/dist/generated/themes/InputIcon.css.js +1 -1
  339. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  340. package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
  341. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  342. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  343. package/dist/generated/themes/Link.css.d.ts +1 -1
  344. package/dist/generated/themes/Link.css.js +1 -1
  345. package/dist/generated/themes/Link.css.js.map +1 -1
  346. package/dist/generated/themes/List.css.d.ts +1 -1
  347. package/dist/generated/themes/List.css.js +1 -1
  348. package/dist/generated/themes/List.css.js.map +1 -1
  349. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  350. package/dist/generated/themes/ListItem.css.js +1 -1
  351. package/dist/generated/themes/ListItem.css.js.map +1 -1
  352. package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
  353. package/dist/generated/themes/ListItemBase.css.js +1 -1
  354. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  355. package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
  356. package/dist/generated/themes/ListItemCustom.css.js +1 -1
  357. package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
  358. package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
  359. package/dist/generated/themes/ListItemGroup.css.js +1 -1
  360. package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
  361. package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
  362. package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
  363. package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
  364. package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
  365. package/dist/generated/themes/ListItemIcon.css.js +1 -1
  366. package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
  367. package/dist/generated/themes/Menu.css.d.ts +1 -1
  368. package/dist/generated/themes/Menu.css.js +1 -1
  369. package/dist/generated/themes/Menu.css.js.map +1 -1
  370. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  371. package/dist/generated/themes/MenuItem.css.js +1 -1
  372. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  373. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  374. package/dist/generated/themes/MessageStrip.css.js +1 -1
  375. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  376. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  377. package/dist/generated/themes/MonthPicker.css.js +1 -1
  378. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  379. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  380. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  381. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  382. package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
  383. package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
  384. package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
  385. package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
  386. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  387. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  388. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  389. package/dist/generated/themes/MultiInput.css.js +1 -1
  390. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  391. package/dist/generated/themes/OptionBase.css.d.ts +1 -1
  392. package/dist/generated/themes/OptionBase.css.js +1 -1
  393. package/dist/generated/themes/OptionBase.css.js.map +1 -1
  394. package/dist/generated/themes/Panel.css.d.ts +1 -1
  395. package/dist/generated/themes/Panel.css.js +1 -1
  396. package/dist/generated/themes/Panel.css.js.map +1 -1
  397. package/dist/generated/themes/Popover.css.d.ts +1 -1
  398. package/dist/generated/themes/Popover.css.js +1 -1
  399. package/dist/generated/themes/Popover.css.js.map +1 -1
  400. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  401. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  402. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  403. package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
  404. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  405. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  406. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  407. package/dist/generated/themes/RadioButton.css.js +1 -1
  408. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  409. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  410. package/dist/generated/themes/RangeSlider.css.js +1 -1
  411. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  412. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  413. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  414. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  415. package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
  416. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  417. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  418. package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
  419. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  420. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  421. package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
  422. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  423. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  424. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  425. package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
  426. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  427. package/dist/generated/themes/Select.css.d.ts +1 -1
  428. package/dist/generated/themes/Select.css.js +1 -1
  429. package/dist/generated/themes/Select.css.js.map +1 -1
  430. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  431. package/dist/generated/themes/SliderBase.css.js +1 -1
  432. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  433. package/dist/generated/themes/SplitButton.css.d.ts +1 -1
  434. package/dist/generated/themes/SplitButton.css.js +1 -1
  435. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  436. package/dist/generated/themes/StepInput.css.d.ts +1 -1
  437. package/dist/generated/themes/StepInput.css.js +1 -1
  438. package/dist/generated/themes/StepInput.css.js.map +1 -1
  439. package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
  440. package/dist/generated/themes/SuggestionItem.css.js +1 -1
  441. package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
  442. package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
  443. package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
  444. package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
  445. package/dist/generated/themes/Switch.css.d.ts +1 -1
  446. package/dist/generated/themes/Switch.css.js +1 -1
  447. package/dist/generated/themes/Switch.css.js.map +1 -1
  448. package/dist/generated/themes/TabContainer.css.d.ts +1 -1
  449. package/dist/generated/themes/TabContainer.css.js +1 -1
  450. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  451. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  452. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  453. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  454. package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
  455. package/dist/generated/themes/TabInStrip.css.js +1 -1
  456. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  457. package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
  458. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  459. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  460. package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
  461. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  462. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  463. package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
  464. package/dist/generated/themes/TableCellBase.css.js +1 -1
  465. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  466. package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
  467. package/dist/generated/themes/TableHeaderRow.css.js +1 -1
  468. package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
  469. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  470. package/dist/generated/themes/TableRow.css.js +1 -1
  471. package/dist/generated/themes/TableRow.css.js.map +1 -1
  472. package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
  473. package/dist/generated/themes/TableRowActionBase.css.js +1 -1
  474. package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
  475. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  476. package/dist/generated/themes/TableRowBase.css.js +1 -1
  477. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  478. package/dist/generated/themes/Tag.css.d.ts +1 -1
  479. package/dist/generated/themes/Tag.css.js +1 -1
  480. package/dist/generated/themes/Tag.css.js.map +1 -1
  481. package/dist/generated/themes/Text.css.d.ts +1 -1
  482. package/dist/generated/themes/Text.css.js +1 -1
  483. package/dist/generated/themes/Text.css.js.map +1 -1
  484. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  485. package/dist/generated/themes/TextArea.css.js +1 -1
  486. package/dist/generated/themes/TextArea.css.js.map +1 -1
  487. package/dist/generated/themes/TimePicker.css.d.ts +1 -1
  488. package/dist/generated/themes/TimePicker.css.js +1 -1
  489. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  490. package/dist/generated/themes/Toast.css.d.ts +1 -1
  491. package/dist/generated/themes/Toast.css.js +1 -1
  492. package/dist/generated/themes/Toast.css.js.map +1 -1
  493. package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
  494. package/dist/generated/themes/ToggleButton.css.js +1 -1
  495. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  496. package/dist/generated/themes/Token.css.d.ts +1 -1
  497. package/dist/generated/themes/Token.css.js +1 -1
  498. package/dist/generated/themes/Token.css.js.map +1 -1
  499. package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
  500. package/dist/generated/themes/Tokenizer.css.js +1 -1
  501. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  502. package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
  503. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  504. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  505. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  506. package/dist/generated/themes/Toolbar.css.js +1 -1
  507. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  508. package/dist/generated/themes/ToolbarButton.css.d.ts +1 -1
  509. package/dist/generated/themes/ToolbarButton.css.js +1 -1
  510. package/dist/generated/themes/ToolbarButton.css.js.map +1 -1
  511. package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
  512. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  513. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  514. package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
  515. package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
  516. package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
  517. package/dist/generated/themes/TreeItem.css.d.ts +1 -1
  518. package/dist/generated/themes/TreeItem.css.js +1 -1
  519. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  520. package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
  521. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  522. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  523. package/dist/generated/themes/ValueStateVariables.css.d.ts +1 -1
  524. package/dist/generated/themes/ValueStateVariables.css.js +1 -1
  525. package/dist/generated/themes/ValueStateVariables.css.js.map +1 -1
  526. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  527. package/dist/generated/themes/YearPicker.css.js +1 -1
  528. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  529. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  530. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  531. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  532. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  533. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  534. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  535. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  536. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  537. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  538. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  539. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  540. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  541. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  542. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  543. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  544. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  545. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  546. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  547. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  548. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  549. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  550. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  551. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  552. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  553. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  554. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  555. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  556. package/dist/types/SegmentedButtonContentMode.d.ts +17 -0
  557. package/dist/types/SegmentedButtonContentMode.js +19 -0
  558. package/dist/types/SegmentedButtonContentMode.js.map +1 -0
  559. package/dist/types/SelectTwoColumnSeparator.d.ts +1 -0
  560. package/dist/types/SelectTwoColumnSeparator.js +1 -0
  561. package/dist/types/SelectTwoColumnSeparator.js.map +1 -1
  562. package/dist/vscode.html-custom-data.json +22 -7
  563. package/dist/web-types.json +47 -14
  564. package/package-scripts.cjs +0 -1
  565. package/package.json +10 -10
  566. package/src/CarouselTemplate.tsx +20 -19
  567. package/src/ListTemplate.tsx +9 -1
  568. package/src/MenuItemTemplate.tsx +1 -1
  569. package/src/MenuTemplate.tsx +1 -1
  570. package/src/SegmentedButtonItemTemplate.tsx +1 -1
  571. package/src/SegmentedButtonTemplate.tsx +6 -1
  572. package/src/TextAreaTemplate.tsx +4 -0
  573. package/src/features/InputSuggestionsTemplate.tsx +2 -3
  574. package/src/i18n/messagebundle.properties +3 -3
  575. package/src/i18n/messagebundle_ar.properties +6 -0
  576. package/src/i18n/messagebundle_bg.properties +6 -0
  577. package/src/i18n/messagebundle_ca.properties +6 -0
  578. package/src/i18n/messagebundle_cnr.properties +6 -0
  579. package/src/i18n/messagebundle_cs.properties +6 -0
  580. package/src/i18n/messagebundle_cy.properties +6 -0
  581. package/src/i18n/messagebundle_da.properties +6 -0
  582. package/src/i18n/messagebundle_de.properties +6 -0
  583. package/src/i18n/messagebundle_el.properties +6 -0
  584. package/src/i18n/messagebundle_en.properties +319 -4
  585. package/src/i18n/messagebundle_en_GB.properties +6 -0
  586. package/src/i18n/messagebundle_en_US_sappsd.properties +22 -4
  587. package/src/i18n/messagebundle_en_US_saprigi.properties +22 -4
  588. package/src/i18n/messagebundle_en_US_saptrc.properties +22 -4
  589. package/src/i18n/messagebundle_es.properties +6 -0
  590. package/src/i18n/messagebundle_es_MX.properties +6 -0
  591. package/src/i18n/messagebundle_et.properties +6 -0
  592. package/src/i18n/messagebundle_fi.properties +7 -1
  593. package/src/i18n/messagebundle_fr.properties +6 -0
  594. package/src/i18n/messagebundle_fr_CA.properties +6 -0
  595. package/src/i18n/messagebundle_hi.properties +6 -0
  596. package/src/i18n/messagebundle_hr.properties +6 -0
  597. package/src/i18n/messagebundle_hu.properties +6 -0
  598. package/src/i18n/messagebundle_id.properties +6 -0
  599. package/src/i18n/messagebundle_it.properties +6 -0
  600. package/src/i18n/messagebundle_iw.properties +6 -0
  601. package/src/i18n/messagebundle_ja.properties +6 -0
  602. package/src/i18n/messagebundle_kk.properties +6 -0
  603. package/src/i18n/messagebundle_ko.properties +6 -0
  604. package/src/i18n/messagebundle_lt.properties +6 -0
  605. package/src/i18n/messagebundle_lv.properties +6 -0
  606. package/src/i18n/messagebundle_mk.properties +6 -0
  607. package/src/i18n/messagebundle_ms.properties +11 -5
  608. package/src/i18n/messagebundle_nl.properties +6 -0
  609. package/src/i18n/messagebundle_no.properties +6 -0
  610. package/src/i18n/messagebundle_pl.properties +6 -0
  611. package/src/i18n/messagebundle_pt.properties +6 -0
  612. package/src/i18n/messagebundle_pt_PT.properties +6 -0
  613. package/src/i18n/messagebundle_ro.properties +6 -0
  614. package/src/i18n/messagebundle_ru.properties +6 -0
  615. package/src/i18n/messagebundle_sh.properties +6 -0
  616. package/src/i18n/messagebundle_sk.properties +6 -0
  617. package/src/i18n/messagebundle_sl.properties +6 -0
  618. package/src/i18n/messagebundle_sr.properties +6 -0
  619. package/src/i18n/messagebundle_sv.properties +6 -0
  620. package/src/i18n/messagebundle_th.properties +6 -0
  621. package/src/i18n/messagebundle_tr.properties +6 -0
  622. package/src/i18n/messagebundle_uk.properties +6 -0
  623. package/src/i18n/messagebundle_vi.properties +6 -0
  624. package/src/i18n/messagebundle_zh_CN.properties +6 -0
  625. package/src/i18n/messagebundle_zh_TW.properties +6 -0
  626. package/src/themes/Bar.css +10 -1
  627. package/src/themes/Carousel.css +35 -18
  628. package/src/themes/RatingIndicator.css +9 -9
  629. package/src/themes/SegmentedButton.css +10 -2
  630. package/src/themes/base/Carousel-parameters.css +1 -1
  631. package/src/themes/base/sizes-parameters.css +2 -2
  632. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +1 -1
  633. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +1 -1
  634. package/src/themes/sap_horizon_hcb/Carousel-parameters.css +1 -1
  635. package/src/themes/sap_horizon_hcw/Carousel-parameters.css +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.js","sourceRoot":"","sources":["../src/Carousel.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisDown,\n\tisUp,\n\tisF7,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { UI5CustomEvent } from \"@ui5/webcomponents-base\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport type { ScrollEnablementEventListenerParam } from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport {\n\tCAROUSEL_OF_TEXT,\n\tCAROUSEL_DOT_TEXT,\n\tCAROUSEL_PREVIOUS_ARROW_TEXT,\n\tCAROUSEL_NEXT_ARROW_TEXT,\n\tCAROUSEL_ARIA_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CarouselArrowsPlacement from \"./types/CarouselArrowsPlacement.js\";\nimport CarouselPageIndicatorType from \"./types/CarouselPageIndicatorType.js\";\nimport type BackgroundDesign from \"./types/BackgroundDesign.js\";\nimport type BorderDesign from \"./types/BorderDesign.js\";\nimport CarouselTemplate from \"./CarouselTemplate.js\";\n\nimport type Button from \"./Button.js\";\n\n// Styles\nimport CarouselCss from \"./generated/themes/Carousel.css.js\";\n\ntype CarouselNavigateEventDetail = {\n\tselectedIndex: number;\n}\n\ntype ItemsInfo = {\n\tid: string,\n\titem: HTMLElement & { _individualSlot?: string },\n\ttabIndex: number,\n\tposinset: number,\n\tsetsize: number,\n\tselected: boolean,\n\t_individualSlot?: string,\n}\n\n/**\n * @class\n *\n * ### Overview\n * The Carousel allows the user to browse through a set of items.\n * The component is mostly used for showing a gallery of images, but can hold any other HTML element.\n *\n * There are several ways to perform navigation:\n *\n * - on desktop - the user can navigate using the navigation arrows or with keyboard shortcuts.\n * - on touch devices - the user can navigate using the navigation arrows (always visible) or can use swipe gestures.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - The items you want to display are very different from each other.\n * - You want to display the items one after the other.\n *\n * #### When not to use:\n *\n * - The items you want to display need to be visible at the same time.\n * - The items you want to display are uniform and very similar.\n *\n * ### Keyboard Handling\n *\n * #### Basic Navigation\n * When the `ui5-carousel` is focused the user can navigate between the items\n * with the following keyboard shortcuts:\n *\n * - [Up] or [Down] - Navigates to previous and next item\n * - [Left] or [Right] - Navigates to previous and next item\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n *\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Carousel.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.6\n * @public\n * @csspart content - Used to style the content of the component\n */\n@customElement({\n\ttag: \"ui5-carousel\",\n\tlanguageAware: true,\n\tfastNavigation: true,\n\trenderer: jsxRenderer,\n\tstyles: CarouselCss,\n\ttemplate: CarouselTemplate,\n})\n/**\n * Fired whenever the page changes due to user interaction,\n * when the user clicks on the navigation arrows or while resizing,\n * based on the `items-per-page` property.\n * @param {Integer} selectedIndex the current selected index\n * @public\n * @since 1.0.0-rc.7\n */\n@event(\"navigate\", {\n\tbubbles: true,\n})\n\nclass Carousel extends UI5Element {\n\teventDetails!: {\n\t\tnavigate: CarouselNavigateEventDetail;\n\t}\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.24\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t * @since 1.24\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines whether the carousel should loop, i.e show the first page after the last page is reached and vice versa.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tcyclic = false;\n\n\t/**\n\t * Defines the number of items per page depending on the carousel width.\n\t *\n\t * - 'S' for screens smaller than 600 pixels.\n\t * - 'M' for screens greater than or equal to 600 pixels and smaller than 1024 pixels.\n\t * - 'L' for screens greater than or equal to 1024 pixels and smaller than 1440 pixels.\n\t * - 'XL' for screens greater than or equal to 1440 pixels.\n\t *\n\t * One item per page is shown by default.\n\t * @default \"S1 M1 L1 XL1\"\n\t * @public\n\t */\n\t@property()\n\titemsPerPage = \"S1 M1 L1 XL1\";\n\n\t/**\n\t * Defines the visibility of the navigation arrows.\n\t * If set to true the navigation arrows will be hidden.\n\t *\n\t * @since 1.0.0-rc.15\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideNavigationArrows = false;\n\n\t/**\n\t * Defines the visibility of the page indicator.\n\t * If set to true the page indicator will be hidden.\n\t * @since 1.0.0-rc.15\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thidePageIndicator = false;\n\n\t/**\n\t * Defines the style of the page indicator.\n\t * Available options are:\n\t *\n\t * - `Default` - The page indicator will be visualized as dots if there are fewer than 9 pages. If there are more pages, the page indicator will switch to displaying the current page and the total number of pages. (e.g. X of Y)\n\t * - `Numeric` - The page indicator will display the current page and the total number of pages. (e.g. X of Y)\n\t * @since 1.10\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorType: `${CarouselPageIndicatorType}` = \"Default\";\n\n\t/**\n\t * Defines the carousel's background design.\n\t * @since 1.14\n\t * @default \"Translucent\"\n\t * @public\n\t */\n\t@property()\n\tbackgroundDesign: `${BackgroundDesign}` = \"Translucent\";\n\n\t/**\n\t * Defines the page indicator background design.\n\t * @since 1.14\n\t * @default \"Solid\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorBackgroundDesign: `${BackgroundDesign}` = \"Solid\";\n\n\t/**\n\t * Defines the page indicator border design.\n\t * @since 1.14\n\t * @default \"Solid\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorBorderDesign: `${BorderDesign}` = \"Solid\";\n\n\t/**\n\t * Defines the index of the initially selected item.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_selectedIndex = 0;\n\n\t/**\n\t * Defines the position of arrows.\n\t *\n\t * Available options are:\n\t *\n\t * - `Content` - the arrows are placed on the sides of the current page.\n\t * - `Navigation` - the arrows are placed on the sides of the page indicator.\n\t * @default \"Content\"\n\t * @public\n\t */\n\t@property()\n\tarrowsPlacement: `${CarouselArrowsPlacement}` = \"Content\";\n\n\t/**\n\t * Defines the carousel width in pixels.\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_width?: number;\n\n\t/**\n\t * Defines the carousel item width in pixels.\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_itemWidth?: number;\n\n\t/**\n\t * If set to true navigation arrows are shown.\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_visibleNavigationArrows = false;\n\n\t_scrollEnablement: ScrollEnablement;\n\t_onResizeBound: ResizeObserverCallback;\n\t_resizing: boolean;\n\t_lastFocusedElements: Array<HTMLElement>;\n\t_orderOfLastFocusedPages: Array<number>;\n\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, individualSlots: true })\n\tcontent!: Array<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic get pageTypeLimit() {\n\t\treturn 9;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t\tthis._scrollEnablement.attachEvent(\"touchend\", e => {\n\t\t\tthis._updateScrolling(e);\n\t\t});\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._resizing = false; // indicates if the carousel is in process of resizing\n\n\t\tthis._lastFocusedElements = [];\n\t\tthis._orderOfLastFocusedPages = [];\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Navigation || !isDesktop()) {\n\t\t\tthis._visibleNavigationArrows = true;\n\t\t}\n\n\t\tthis.validateSelectedIndex();\n\t}\n\n\tonAfterRendering() {\n\t\tthis._scrollEnablement.scrollContainer = this.getDomRef()!;\n\t\tthis._resizing = false; // not invalidating\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResizeBound);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t}\n\n\tvalidateSelectedIndex() {\n\t\tif (!this.isIndexInRange(this._selectedIndex)) {\n\t\t\tthis._selectedIndex = 0;\n\t\t}\n\t}\n\n\t_onResize() {\n\t\tconst previousItemsPerPage = this.effectiveItemsPerPage;\n\n\t\t// Set the resizing flag to suppress animation while resizing\n\t\tthis._resizing = true;\n\n\t\t// Change transitively effectiveItemsPerPage by modifying _width\n\t\tthis._width = this.offsetWidth;\n\t\tthis._itemWidth = Math.floor(this._width / this.effectiveItemsPerPage);\n\n\t\t// Items per page did not change or the current,\n\t\t// therefore page index does not need to be re-adjusted\n\t\tif (this.effectiveItemsPerPage === previousItemsPerPage) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._selectedIndex > this.pagesCount - 1) {\n\t\t\tthis._selectedIndex = this.pagesCount - 1;\n\t\t\tthis.fireDecoratorEvent(\"navigate\", { selectedIndex: this._selectedIndex });\n\t\t}\n\t}\n\n\t_updateScrolling(e: ScrollEnablementEventListenerParam) {\n\t\tif (!e) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (e.isLeft) {\n\t\t\tthis.navigateLeft();\n\t\t} else if (e.isRight) {\n\t\t\tthis.navigateRight();\n\t\t}\n\t}\n\n\tasync _onkeydown(e: KeyboardEvent) {\n\t\tif (isF7(e)) {\n\t\t\tthis._handleF7Key(e);\n\t\t\treturn;\n\t\t}\n\n\t\tif (e.target !== this.getDomRef()) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isLeft(e) || isDown(e)) {\n\t\t\tthis.navigateLeft();\n\t\t\tawait renderFinished();\n\t\t\tthis.getDomRef()!.focus();\n\t\t} else if (isRight(e) || isUp(e)) {\n\t\t\tthis.navigateRight();\n\t\t\tawait renderFinished();\n\t\t\tthis.getDomRef()!.focus();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target === this.getDomRef()) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet pageIndex = -1;\n\t\tfor (let i = 0; i < this.content.length; i++) {\n\t\t\tif (this.content[i].contains(target)) {\n\t\t\t\tpageIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tif (pageIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Save reference of the last focused element for each page\n\t\tthis._lastFocusedElements[pageIndex] = target;\n\n\t\tconst sortedPageIndex = this._orderOfLastFocusedPages.indexOf(pageIndex);\n\t\tif (sortedPageIndex === -1) {\n\t\t\tthis._orderOfLastFocusedPages.unshift(pageIndex);\n\t\t} else {\n\t\t\tthis._orderOfLastFocusedPages.splice(0, 0, this._orderOfLastFocusedPages.splice(sortedPageIndex, 1)[0]);\n\t\t}\n\t}\n\n\t_onmouseout() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Content) {\n\t\t\tthis._visibleNavigationArrows = false;\n\t\t}\n\t}\n\n\t_onmouseover() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Content) {\n\t\t\tthis._visibleNavigationArrows = true;\n\t\t}\n\t}\n\n\t_handleF7Key(e: KeyboardEvent) {\n\t\tconst lastFocusedElement = this._lastFocusedElements[this._getLastFocusedActivePageIndex];\n\n\t\tif (e.target === this.getDomRef() && lastFocusedElement) {\n\t\t\tlastFocusedElement.focus();\n\t\t} else {\n\t\t\tthis.getDomRef()!.focus();\n\t\t}\n\t}\n\n\tget _backgroundDesign() {\n\t\treturn this.backgroundDesign.toLowerCase();\n\t}\n\n\tget _getLastFocusedActivePageIndex() {\n\t\tfor (let i = 0; i < this._orderOfLastFocusedPages.length; i++) {\n\t\t\tconst pageIndex = this._orderOfLastFocusedPages[i];\n\n\t\t\tif (this.isItemInViewport(pageIndex)) {\n\t\t\t\treturn pageIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn this._selectedIndex;\n\t}\n\n\tnavigateLeft() {\n\t\tthis._resizing = false;\n\n\t\tconst previousSelectedIndex = this._selectedIndex;\n\n\t\tif (this._selectedIndex - 1 < 0) {\n\t\t\tif (this.cyclic) {\n\t\t\t\tthis._selectedIndex = this.pagesCount - 1;\n\t\t\t}\n\t\t} else {\n\t\t\t--this._selectedIndex;\n\t\t}\n\n\t\tif (previousSelectedIndex !== this._selectedIndex) {\n\t\t\tthis.fireDecoratorEvent(\"navigate\", { selectedIndex: this._selectedIndex });\n\t\t}\n\t}\n\n\tnavigateRight() {\n\t\tthis._resizing = false;\n\n\t\tconst previousSelectedIndex = this._selectedIndex;\n\n\t\tif (this._selectedIndex + 1 > this.pagesCount - 1) {\n\t\t\tif (this.cyclic) {\n\t\t\t\tthis._selectedIndex = 0;\n\t\t\t} else {\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\t++this._selectedIndex;\n\t\t}\n\n\t\tif (previousSelectedIndex !== this._selectedIndex) {\n\t\t\tthis.fireDecoratorEvent(\"navigate\", { selectedIndex: this._selectedIndex });\n\t\t}\n\t}\n\n\t_navButtonClick(e: UI5CustomEvent<Button, \"click\">) {\n\t\tconst button = e.target as Button;\n\t\tif (button.hasAttribute(\"data-ui5-arrow-forward\")) {\n\t\t\tthis.navigateRight();\n\t\t} else {\n\t\t\tthis.navigateLeft();\n\t\t}\n\n\t\tthis.focus();\n\t}\n\n\t/**\n\t * Changes the currently displayed page.\n\t * @param itemIndex The index of the target page\n\t * @since 1.0.0-rc.15\n\t * @public\n\t */\n\tnavigateTo(itemIndex: number) : void {\n\t\tthis._resizing = false;\n\t\tthis._selectedIndex = itemIndex;\n\t}\n\n\t/**\n\t * Assuming that all items have the same width\n\t * @private\n\t */\n\tget items(): Array<ItemsInfo> {\n\t\treturn this.content.map((item, idx) => {\n\t\t\tconst visible = this.isItemInViewport(idx);\n\t\t\treturn {\n\t\t\t\tid: `${this._id}-carousel-item-${idx + 1}`,\n\t\t\t\titem,\n\t\t\t\ttabIndex: visible ? 0 : -1,\n\t\t\t\tposinset: idx + 1,\n\t\t\t\tsetsize: this.content.length,\n\t\t\t\tselected: visible,\n\t\t\t};\n\t\t});\n\t}\n\n\tget effectiveItemsPerPage(): number {\n\t\tconst itemsPerPageArray = this.itemsPerPage.split(\" \");\n\t\tlet itemsPerPageSizeS = 1,\n\t\t\titemsPerPageSizeM = 1,\n\t\t\titemsPerPageSizeL = 1,\n\t\t\titemsPerPageSizeXL = 1;\n\n\t\titemsPerPageArray.forEach(element => {\n\t\t\tif (element.startsWith(\"S\")) {\n\t\t\t\titemsPerPageSizeS = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"M\")) {\n\t\t\t\titemsPerPageSizeM = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"L\")) {\n\t\t\t\titemsPerPageSizeL = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"XL\")) {\n\t\t\t\titemsPerPageSizeXL = Number(element.slice(2)) || 1;\n\t\t\t}\n\t\t});\n\n\t\tif (!this._width) {\n\t\t\treturn itemsPerPageSizeL;\n\t\t}\n\n\t\tif (this._width < 600) {\n\t\t\treturn itemsPerPageSizeS;\n\t\t}\n\n\t\tif (this._width >= 600 && this._width < 1024) {\n\t\t\treturn itemsPerPageSizeM;\n\t\t}\n\n\t\tif (this._width >= 1024 && this._width < 1440) {\n\t\t\treturn itemsPerPageSizeL;\n\t\t}\n\n\t\treturn itemsPerPageSizeXL;\n\t}\n\n\tisItemInViewport(index: number): boolean {\n\t\treturn index >= this._selectedIndex && index <= this._selectedIndex + this.effectiveItemsPerPage - 1;\n\t}\n\n\tisIndexInRange(index: number): boolean {\n\t\treturn index >= 0 && index <= this.pagesCount - 1;\n\t}\n\n\t/**\n\t * @private\n\t */\n\tget renderNavigation() {\n\t\tif (!this.hasManyPages) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (this.hidePageIndicator) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tget hasManyPages() {\n\t\treturn this.pagesCount > 1;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tviewport: {\n\t\t\t\t\"ui5-carousel-viewport\": true,\n\t\t\t\t\"ui5-carousel-viewport--single\": this.pagesCount === 1,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-carousel-content\": true,\n\t\t\t\t\"ui5-carousel-content-no-animation\": this.suppressAnimation,\n\t\t\t\t\"ui5-carousel-content-has-navigation\": this.renderNavigation,\n\t\t\t\t\"ui5-carousel-content-has-navigation-and-buttons\": this.renderNavigation && this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows,\n\t\t\t},\n\t\t\tnavigation: {\n\t\t\t\t\"ui5-carousel-navigation-wrapper\": true,\n\t\t\t\t\"ui5-carousel-navigation-with-buttons\": this.renderNavigation && this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows,\n\t\t\t\t[`ui5-carousel-navigation-wrapper-bg-${this.pageIndicatorBackgroundDesign.toLowerCase()}`]: true,\n\t\t\t\t[`ui5-carousel-navigation-wrapper-border-${this.pageIndicatorBorderDesign.toLowerCase()}`]: true,\n\t\t\t},\n\t\t};\n\t}\n\n\tget pagesCount() {\n\t\tconst items = this.content.length;\n\t\treturn items > this.effectiveItemsPerPage ? items - this.effectiveItemsPerPage + 1 : 1;\n\t}\n\n\tget isPageTypeDots() {\n\t\tif (this.pageIndicatorType === CarouselPageIndicatorType.Numeric) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn this.pagesCount < Carousel.pageTypeLimit;\n\t}\n\n\tget dots() {\n\t\tconst dots = [];\n\t\tconst pages = this.pagesCount;\n\n\t\tfor (let index = 0; index < pages; index++) {\n\t\t\tdots.push({\n\t\t\t\tactive: index === this._selectedIndex,\n\t\t\t\tariaLabel: Carousel.i18nBundle.getText(CAROUSEL_DOT_TEXT, index + 1, pages),\n\t\t\t});\n\t\t}\n\n\t\treturn dots;\n\t}\n\n\tget showArrows() {\n\t\tconst displayArrows = this._visibleNavigationArrows && this.hasManyPages;\n\t\treturn {\n\t\t\tcontent: !this.hideNavigationArrows && displayArrows && this.arrowsPlacement === CarouselArrowsPlacement.Content,\n\t\t\tnavigation: !this.hideNavigationArrows && displayArrows && this.arrowsPlacement === CarouselArrowsPlacement.Navigation,\n\t\t};\n\t}\n\n\tget hasPrev() {\n\t\treturn this.cyclic || this._selectedIndex - 1 >= 0;\n\t}\n\n\tget hasNext() {\n\t\treturn this.cyclic || this._selectedIndex + 1 <= this.pagesCount - 1;\n\t}\n\n\tget suppressAnimation() {\n\t\treturn this._resizing || getAnimationMode() === AnimationMode.None;\n\t}\n\n\tget _isRTL() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget selectedIndexToShow() {\n\t\treturn this._isRTL ? this.pagesCount - (this.pagesCount - this._selectedIndex) + 1 : this._selectedIndex + 1;\n\t}\n\n\tget ofText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_OF_TEXT);\n\t}\n\n\tget ariaActiveDescendant() {\n\t\treturn this.content.length ? `${this._id}-carousel-item-${this._selectedIndex + 1}` : undefined;\n\t}\n\n\tget ariaLabelTxt() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget nextPageText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_NEXT_ARROW_TEXT);\n\t}\n\n\tget previousPageText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_PREVIOUS_ARROW_TEXT);\n\t}\n\n\tget _roleDescription() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_ARIA_ROLE_DESCRIPTION);\n\t}\n\n\t/**\n\t * The indices of the currently visible items of the component.\n\t * @public\n\t * @since 1.0.0-rc.15\n\t * @default []\n\t */\n\tget visibleItemsIndices() : Array<number> {\n\t\tconst visibleItemsIndices: Array<number> = [];\n\n\t\tthis.items.forEach((item, index) => {\n\t\t\tif (this.isItemInViewport(index)) {\n\t\t\t\tvisibleItemsIndices.push(index);\n\t\t\t}\n\t\t});\n\n\t\treturn visibleItemsIndices;\n\t}\n}\n\nCarousel.define();\n\nexport default Carousel;\nexport type {\n\tCarouselNavigateEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Carousel.js","sourceRoot":"","sources":["../src/Carousel.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,KAAK,EACL,UAAU,EACV,QAAQ,GACR,MAAM,sCAAsC,CAAC;AAE9C,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,gBAAgB,MAAM,2DAA2D,CAAC;AAEzF,OAAO,aAAa,MAAM,wDAAwD,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,aAAa,MAAM,qDAAqD,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAC1G,OAAO,EACN,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,wBAAwB,EACxB,8BAA8B,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,yBAAyB,MAAM,sCAAsC,CAAC;AAG7E,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wDAAwD,CAAC;AAClG,OAAO,KAAK,MAAM,4CAA4C,CAAC;AAE/D,SAAS;AACT,OAAO,WAAW,MAAM,oCAAoC,CAAC;AAgB7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAqBH,IAAM,QAAQ,gBAAd,MAAM,QAAS,SAAQ,UAAU;IAoLhC,MAAM,KAAK,aAAa;QACvB,OAAO,CAAC,CAAC;IACV,CAAC;IAED;QACC,KAAK,EAAE,CAAC;QAnKT;;;;WAIG;QAEH,WAAM,GAAG,KAAK,CAAC;QAEf;;;;;;;;;;;WAWG;QAEH,iBAAY,GAAG,cAAc,CAAC;QAE9B;;;;;;;WAOG;QAEH,yBAAoB,GAAG,KAAK,CAAC;QAE7B;;;;;;;WAOG;QAEH,uBAAkB,GAAW,CAAC,CAAC;QAE/B;;;;;;WAMG;QAEH,sBAAiB,GAAG,KAAK,CAAC;QAE1B;;;;;;;;;WASG;QAEH,sBAAiB,GAAmC,SAAS,CAAC;QAE9D;;;;;WAKG;QAEH,qBAAgB,GAA0B,aAAa,CAAC;QAExD;;;;;WAKG;QAEH,kCAA6B,GAA0B,OAAO,CAAC;QAE/D;;;;;WAKG;QAEH,8BAAyB,GAAsB,OAAO,CAAC;QAEvD;;;;WAIG;QAEH,sBAAiB,GAAG,CAAC,CAAC;QAEtB;;;;;;;;;WASG;QAEH,oBAAe,GAAiC,SAAS,CAAC;QAgB1D;;;;WAIG;QAEH,6BAAwB,GAAG,KAAK,CAAC;QAQjC,cAAS,GAAW,EAAE,CAAC;QAEvB,mBAAc,GAAW,CAAC,CAAC;QAmB1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE;YAClD,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,sDAAsD;QAE9E,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,UAAU,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACjF,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC9B,CAAC;IAED,gBAAgB;QACf,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,EAAG,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,mBAAmB;IAC5C,CAAC;IAED,UAAU;QACT,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;IAED,SAAS;QACR,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrD,CAAC;IAED,qBAAqB;QACpB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,SAAS;QACR,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAExD,6DAA6D;QAC7D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,gEAAgE;QAChE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACvE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAElD,gDAAgD;QAChD,uDAAuD;QACvD,IAAI,IAAI,CAAC,qBAAqB,KAAK,oBAAoB,EAAE,CAAC;YACzD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACjI,CAAC;IAED,gBAAgB,CAAC,CAAqC;QACrD,IAAI,CAAC,CAAC,EAAE,CAAC;YACR,OAAO;QACR,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,YAAY,EAAE,CAAC;QACrB,CAAC;aAAM,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACb,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACrB,OAAO;QACR,CAAC;QACD,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,YAAY,EAAE,CAAC;QACrB,CAAC;aAAM,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;IAED,UAAU,CAAC,CAAa;QACvB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QAEvC,IAAI,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACjC,OAAO;QACR,CAAC;QAED,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAgB,CAAC,EAAE,CAAC;gBACnG,SAAS,GAAG,CAAC,CAAC;gBACd,MAAM;YACP,CAAC;QACF,CAAC;QAED,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,2DAA2D;QAC3D,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;QAE9C,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzG,CAAC;IACF,CAAC;IAED,WAAW;QACV,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,OAAO,EAAE,CAAC;YAC9D,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;QACvC,CAAC;IACF,CAAC;IAED,YAAY;QACX,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,OAAO,EAAE,CAAC;YAC9D,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACtC,CAAC;IACF,CAAC;IAED,aAAa,CAAC,CAAa;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,IAAI,MAAM,CAAC,YAAY,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACjG,CAAC,CAAC,cAAc,EAAE,CAAC;QACpB,CAAC;IACF,CAAC;IAED,YAAY,CAAC,CAAa;QACzB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,IAAI,MAAM,CAAC,YAAY,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACjG,CAAC,CAAC,cAAc,EAAE,CAAC;QACpB,CAAC;IACF,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,CAAgB;QAClC,MAAM,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAC1F,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACpC,MAAM,cAAc,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/F,cAAc,EAAE,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC,wBAAwB,GAAG,cAAc,IAAI,SAAS,CAAC;QAC7D,CAAC;aAAM,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,kBAAkB,IAAI,kBAAkB,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACzH,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAC,MAAqB,CAAC;QACzD,CAAC;aAAM,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC1C,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC;IACF,CAAC;IAED,WAAW,CAAC,CAAgB;QAC3B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,aAAa,CAAC,CAAgB;QAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChJ,CAAC;IAED,eAAe,CAAC,CAAgB;QAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED,IAAI,8BAA8B;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;YAEnD,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtC,OAAO,SAAS,CAAC;YAClB,CAAC;QACF,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAC/B,CAAC;IAED,YAAY;QACX,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,MAAM,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAErD,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC1D,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,IAAI,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;oBACpE,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAChD,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAC1B,CAAC;QAED,IAAI,qBAAqB,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChF,CAAC;IACF,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,MAAM,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAErD,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;oBACxF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC5B,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,OAAO;YACR,CAAC;QACF,CAAC;aAAM,CAAC;YACP,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAC1B,CAAC;QAED,IAAI,qBAAqB,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChF,CAAC;IACF,CAAC;IAED,kBAAkB;QACjB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9H,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;YACpG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChG,CAAC;IACF,CAAC;IAED,wBAAwB,CAAC,iBAAyB,EAAE,QAAgB;QACnE,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,CAAC;QACV,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAEhD,IAAI,UAAU,CAAC;QAEf,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,iBAAiB,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,CAAC;YACV,CAAC;YAED,IAAI,iBAAiB,IAAI,IAAI,CAAC,UAAU,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAC1D,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YAC5B,CAAC;YAED,UAAU,GAAG,iBAAiB,GAAG,QAAQ,CAAC;QAC3C,CAAC;aAAM,CAAC;YACP,UAAU,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAC1E,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,iBAAiB,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC7C,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBAC5B,CAAC;gBAED,IAAI,iBAAiB,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACjE,OAAO,CAAC,CAAC;gBACV,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,WAAW,CAAC,UAAkB;QAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;QACR,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,EACvD,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAC9B,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAEtB,IAAI,MAAM,IAAI,qBAAqB,KAAK,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9F,OAAO;QACR,CAAC;QAED,IAAI,UAAU,GAAG,qBAAqB,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;YACzD,UAAU,GAAG,UAAU,GAAG,qBAAqB,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC;IACtC,CAAC;IAED,SAAS;QACR,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,eAAe,CAAC,CAAgC;QAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,MAAc,CAAC;QAChC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,MAAM,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,CAAC;QACF,CAAC;aAAM,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClD,IAAI,MAAM,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,SAAiB;QAC3B,IAAI,IAAI,CAAC,iBAAiB,GAAG,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1D,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,MAAc;QAClD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,IAAI,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;YAChF,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACtB,UAAU,GAAG,CAAC,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,cAAc,EAAE,CAAC;QAEvB,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACrC,OAAO;gBACN,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,kBAAkB,GAAG,GAAG,CAAC,EAAE;gBAC1C,IAAI;gBACJ,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChE,QAAQ,EAAE,GAAG,GAAG,CAAC;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC5B,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;aACnC,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,qBAAqB;QACxB,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,iBAAiB,GAAG,CAAC,EACxB,iBAAiB,GAAG,CAAC,EACrB,iBAAiB,GAAG,CAAC,EACrB,kBAAkB,GAAG,CAAC,CAAC;QAExB,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACnC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpC,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpC,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,iBAAiB,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,OAAO,iBAAiB,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YAC9C,OAAO,iBAAiB,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YAC/C,OAAO,iBAAiB,CAAC;QAC1B,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,gBAAgB,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,mBAAmB,CAAC,KAAY;QAC/B,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,qBAAqB,GAAW,IAAI,CAAC,qBAAqB,CAAC;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,IAAI,YAAY,GAAG,KAAK,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;YACzD,YAAY,GAAG,KAAK,CAAC,MAAM,GAAI,qBAAqB,CAAC;QACtD,CAAC;QACD,MAAM,aAAa,GAAG,YAAY,GAAG,qBAAqB,CAAC;QAE3D,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAE/B,KAAK,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAED,cAAc,CAAC,KAAa;QAC3B,OAAO,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QACnB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/F,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,QAAQ,EAAE;gBACT,uBAAuB,EAAE,IAAI;gBAC7B,+BAA+B,EAAE,IAAI,CAAC,UAAU,KAAK,CAAC;aACtD;YACD,OAAO,EAAE;gBACR,sBAAsB,EAAE,IAAI;gBAC5B,mCAAmC,EAAE,IAAI,CAAC,iBAAiB;gBAC3D,qCAAqC,EAAE,IAAI,CAAC,gBAAgB;gBAC5D,iDAAiD,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,oBAAoB;aACrK;YACD,UAAU,EAAE;gBACX,iCAAiC,EAAE,IAAI;gBACvC,sCAAsC,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,oBAAoB;gBAC1J,CAAC,sCAAsC,IAAI,CAAC,6BAA6B,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,IAAI;gBAChG,CAAC,0CAA0C,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,IAAI;aAChG;SACD,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACb,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,OAAO,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,cAAc;QACjB,IAAI,IAAI,CAAC,iBAAiB,KAAK,yBAAyB,CAAC,OAAO,EAAE,CAAC;YAClE,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,GAAG,UAAQ,CAAC,aAAa,CAAC;IACjD,CAAC;IAED,IAAI,IAAI;QACP,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;QAE9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,IAAI,CAAC;gBACT,MAAM,EAAE,KAAK,KAAK,IAAI,CAAC,kBAAkB;gBACzC,SAAS,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC;aAC3E,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,UAAU;QACb,MAAM,aAAa,GAAG,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,YAAY,CAAC;QACzE,OAAO;YACN,OAAO,EAAE,CAAC,IAAI,CAAC,oBAAoB,IAAI,aAAa,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,OAAO;YAChH,UAAU,EAAE,CAAC,IAAI,CAAC,oBAAoB,IAAI,aAAa,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC,UAAU;SACtH,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,KAAK,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IAChI,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,SAAS,IAAI,gBAAgB,EAAE,KAAK,aAAa,CAAC,IAAI,CAAC;IACpE,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC;IACpC,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;IACxH,CAAC;IAED,IAAI,MAAM;QACT,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,kBAAkB,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,CAAC;IAED,IAAI,YAAY;QACf,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,YAAY;QACf,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACpE,CAAC;IAED,kBAAkB,CAAC,GAAW;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC/C,OAAO,KAAK,KAAK,GAAG,CAAC;QACtB,CAAC,CAAuB,CAAC;IAC1B,CAAC;CACD,CAAA;AApwBA;IADC,QAAQ,EAAE;gDACa;AASxB;IADC,QAAQ,EAAE;mDACgB;AAQ3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACb;AAef;IADC,QAAQ,EAAE;8CACmB;AAW9B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sDACC;AAW7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;oDACf;AAU/B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;mDACF;AAa1B;IADC,QAAQ,EAAE;mDACmD;AAS9D;IADC,QAAQ,EAAE;kDAC6C;AASxD;IADC,QAAQ,EAAE;+DACoD;AAS/D;IADC,QAAQ,EAAE;2DAC4C;AAQvD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;mDACxB;AAatB;IADC,QAAQ,EAAE;iDAC+C;AAO1D;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wCACX;AAOhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4CACP;AAQpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;0DACd;AAiBjC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;yCACvC;AAGtB;IADN,IAAI,CAAC,oBAAoB,CAAC;kCACG;AAlLzB,QAAQ;IApBb,aAAa,CAAC;QACd,GAAG,EAAE,cAAc;QACnB,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,gBAAgB;KAC1B,CAAC;IACF;;;;;;;OAOG;;IACF,KAAK,CAAC,UAAU,EAAE;QAClB,OAAO,EAAE,IAAI;KACb,CAAC;GAEI,QAAQ,CA+wBb;AAED,QAAQ,CAAC,MAAM,EAAE,CAAC;AAElB,eAAe,QAAQ,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisDown,\n\tisUp,\n\tisF7,\n\tisHome,\n\tisEnd,\n\tisPageDown,\n\tisPageUp,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { UI5CustomEvent } from \"@ui5/webcomponents-base\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport type { ScrollEnablementEventListenerParam } from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport {\n\tCAROUSEL_OF_TEXT,\n\tCAROUSEL_DOT_TEXT,\n\tCAROUSEL_PREVIOUS_ARROW_TEXT,\n\tCAROUSEL_NEXT_ARROW_TEXT,\n\tCAROUSEL_ARIA_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CarouselArrowsPlacement from \"./types/CarouselArrowsPlacement.js\";\nimport CarouselPageIndicatorType from \"./types/CarouselPageIndicatorType.js\";\nimport type BackgroundDesign from \"./types/BackgroundDesign.js\";\nimport type BorderDesign from \"./types/BorderDesign.js\";\nimport CarouselTemplate from \"./CarouselTemplate.js\";\nimport type Icon from \"./Icon.js\";\nimport { getFirstFocusableElement } from \"@ui5/webcomponents-base/dist/util/FocusableElements.js\";\nimport clamp from \"@ui5/webcomponents-base/dist/util/clamp.js\";\n\n// Styles\nimport CarouselCss from \"./generated/themes/Carousel.css.js\";\n\ntype CarouselNavigateEventDetail = {\n\tselectedIndex: number;\n}\n\ntype ItemsInfo = {\n\tid: string,\n\titem: HTMLElement & { _individualSlot?: string },\n\ttabIndex: number,\n\tposinset: number,\n\tsetsize: number,\n\tvisible: boolean,\n\t_individualSlot?: string,\n}\n\n/**\n * @class\n *\n * ### Overview\n * The Carousel allows the user to browse through a set of items.\n * The component is mostly used for showing a gallery of images, but can hold any other HTML element.\n *\n * There are several ways to perform navigation:\n *\n * - on desktop - the user can navigate using the navigation arrows or with keyboard shortcuts.\n * - on touch devices - the user can navigate using the navigation arrows (always visible) or can use swipe gestures.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - The items you want to display are very different from each other.\n * - You want to display the items one after the other.\n *\n * #### When not to use:\n *\n * - The items you want to display need to be visible at the same time.\n * - The items you want to display are uniform and very similar.\n *\n * ### Keyboard Handling\n *\n * #### Basic Navigation\n * When the `ui5-carousel` is focused the user can navigate between the items\n * with the following keyboard shortcuts:\n *\n * - [Up] or [Down] - Navigates to previous and next item\n * - [Left] or [Right] - Navigates to previous and next item\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n *\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Carousel.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.6\n * @public\n * @csspart content - Used to style the content of the component\n */\n@customElement({\n\ttag: \"ui5-carousel\",\n\tlanguageAware: true,\n\tfastNavigation: true,\n\trenderer: jsxRenderer,\n\tstyles: CarouselCss,\n\ttemplate: CarouselTemplate,\n})\n/**\n * Fired whenever the page changes due to user interaction,\n * when the user clicks on the navigation arrows or while resizing,\n * based on the `items-per-page` property.\n * @param {Integer} selectedIndex the current selected index\n * @public\n * @since 1.0.0-rc.7\n */\n@event(\"navigate\", {\n\tbubbles: true,\n})\n\nclass Carousel extends UI5Element {\n\teventDetails!: {\n\t\tnavigate: CarouselNavigateEventDetail;\n\t}\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.24\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the input.\n\t * @default undefined\n\t * @public\n\t * @since 1.24\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines whether the carousel should loop, i.e show the first page after the last page is reached and vice versa.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tcyclic = false;\n\n\t/**\n\t * Defines the number of items per page depending on the carousel width.\n\t *\n\t * - 'S' for screens smaller than 600 pixels.\n\t * - 'M' for screens greater than or equal to 600 pixels and smaller than 1024 pixels.\n\t * - 'L' for screens greater than or equal to 1024 pixels and smaller than 1440 pixels.\n\t * - 'XL' for screens greater than or equal to 1440 pixels.\n\t *\n\t * One item per page is shown by default.\n\t * @default \"S1 M1 L1 XL1\"\n\t * @public\n\t */\n\t@property()\n\titemsPerPage = \"S1 M1 L1 XL1\";\n\n\t/**\n\t * Defines the visibility of the navigation arrows.\n\t * If set to true the navigation arrows will be hidden.\n\t *\n\t * @since 1.0.0-rc.15\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideNavigationArrows = false;\n\n\t/**\n\t * Defines the current first visible item in the viewport.\n\t * Default value is 0, which means the first item in the viewport.\n\t *\n\t * @since 1.0.0-rc.15\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_currentSlideIndex: number = 0;\n\n\t/**\n\t * Defines the visibility of the page indicator.\n\t * If set to true the page indicator will be hidden.\n\t * @since 1.0.0-rc.15\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thidePageIndicator = false;\n\n\t/**\n\t * Defines the style of the page indicator.\n\t * Available options are:\n\t *\n\t * - `Default` - The page indicator will be visualized as dots if there are fewer than 9 pages. If there are more pages, the page indicator will switch to displaying the current page and the total number of pages. (e.g. X of Y)\n\t * - `Numeric` - The page indicator will display the current page and the total number of pages. (e.g. X of Y)\n\t * @since 1.10\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorType: `${CarouselPageIndicatorType}` = \"Default\";\n\n\t/**\n\t * Defines the carousel's background design.\n\t * @since 1.14\n\t * @default \"Translucent\"\n\t * @public\n\t */\n\t@property()\n\tbackgroundDesign: `${BackgroundDesign}` = \"Translucent\";\n\n\t/**\n\t * Defines the page indicator background design.\n\t * @since 1.14\n\t * @default \"Solid\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorBackgroundDesign: `${BackgroundDesign}` = \"Solid\";\n\n\t/**\n\t * Defines the page indicator border design.\n\t * @since 1.14\n\t * @default \"Solid\"\n\t * @public\n\t */\n\t@property()\n\tpageIndicatorBorderDesign: `${BorderDesign}` = \"Solid\";\n\n\t/**\n\t * Defines the index of the initially selected item.\n\t * @default 0\n\t * @private\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_focusedItemIndex = 0;\n\n\t/**\n\t * Defines the position of arrows.\n\t *\n\t * Available options are:\n\t *\n\t * - `Content` - the arrows are placed on the sides of the current page.\n\t * - `Navigation` - the arrows are placed on the sides of the page indicator.\n\t * @default \"Content\"\n\t * @public\n\t */\n\t@property()\n\tarrowsPlacement: `${CarouselArrowsPlacement}` = \"Content\";\n\n\t/**\n\t * Defines the carousel width in pixels.\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_width?: number;\n\n\t/**\n\t * Defines the carousel item width in pixels.\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_itemWidth?: number;\n\n\t/**\n\t * If set to true navigation arrows are shown.\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_visibleNavigationArrows = false;\n\n\t_scrollEnablement: ScrollEnablement;\n\t_onResizeBound: ResizeObserverCallback;\n\t_resizing: boolean;\n\t_lastFocusedElements: Array<HTMLElement>;\n\t_orderOfLastFocusedPages: Array<number>;\n\t_lastInnerFocusedElement?: HTMLElement;\n\t_pageStep: number = 10;\n\t_visibleItemsIndexes: Array<number>;\n\t_itemIndicator: number = 0;\n\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, individualSlots: true })\n\tcontent!: Array<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic get pageTypeLimit() {\n\t\treturn 9;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t\tthis._scrollEnablement.attachEvent(\"touchend\", e => {\n\t\t\tthis._updateScrolling(e);\n\t\t});\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._resizing = false; // indicates if the carousel is in process of resizing\n\n\t\tthis._lastFocusedElements = [];\n\t\tthis._orderOfLastFocusedPages = [];\n\t\tthis._visibleItemsIndexes = [];\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Navigation || !isDesktop()) {\n\t\t\tthis._visibleNavigationArrows = true;\n\t\t}\n\n\t\tthis.validateSelectedIndex();\n\t}\n\n\tonAfterRendering() {\n\t\tthis._scrollEnablement.scrollContainer = this.getDomRef()!;\n\t\tthis._resizing = false; // not invalidating\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResizeBound);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t}\n\n\tvalidateSelectedIndex() {\n\t\tif (!this.isIndexInRange(this._focusedItemIndex)) {\n\t\t\tthis._focusedItemIndex = 0;\n\t\t}\n\t}\n\n\t_onResize() {\n\t\tconst previousItemsPerPage = this.effectiveItemsPerPage;\n\n\t\t// Set the resizing flag to suppress animation while resizing\n\t\tthis._resizing = true;\n\n\t\t// Change transitively effectiveItemsPerPage by modifying _width\n\t\tthis._width = this.offsetWidth;\n\t\tthis._itemWidth = Math.floor(this._width / this.effectiveItemsPerPage);\n\t\tthis._updateVisibleItems(this._currentSlideIndex);\n\n\t\t// Items per page did not change or the current,\n\t\t// therefore page index does not need to be re-adjusted\n\t\tif (this.effectiveItemsPerPage === previousItemsPerPage) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusedItemIndex = clamp(this._focusedItemIndex, this._currentSlideIndex, this.items.length - this.effectiveItemsPerPage);\n\t}\n\n\t_updateScrolling(e: ScrollEnablementEventListenerParam) {\n\t\tif (!e) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (e.isLeft) {\n\t\t\tthis.navigateLeft();\n\t\t} else if (e.isRight) {\n\t\t\tthis.navigateRight();\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isF7(e)) {\n\t\t\tthis._handleF7Key(e);\n\t\t\treturn;\n\t\t}\n\t\tif (isHome(e)) {\n\t\t\tthis._handleHome(e);\n\t\t}\n\t\tif (isEnd(e)) {\n\t\t\tthis._handleEnd(e);\n\t\t}\n\t\tif (isPageUp(e)) {\n\t\t\tthis._handlePageUp(e);\n\t\t}\n\t\tif (isPageDown(e)) {\n\t\t\tthis._handlePageDown(e);\n\t\t}\n\n\t\tif (isLeft(e) || isUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.navigateLeft();\n\t\t} else if (isRight(e) || isDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.navigateRight();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target === this.getDomRef()) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet pageIndex = -1;\n\t\tfor (let i = 0; i < this.content.length; i++) {\n\t\t\tif (this.content[i].isEqualNode(target?.querySelector(\"slot\")?.assignedNodes()[0] as HTMLElement)) {\n\t\t\t\tpageIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tif (pageIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusedItemIndex = pageIndex;\n\t\t// Save reference of the last focused element for each page\n\t\tthis._lastFocusedElements[pageIndex] = target;\n\n\t\tconst sortedPageIndex = this._orderOfLastFocusedPages.indexOf(pageIndex);\n\t\tif (sortedPageIndex === -1) {\n\t\t\tthis._orderOfLastFocusedPages.unshift(pageIndex);\n\t\t} else {\n\t\t\tthis._orderOfLastFocusedPages.splice(0, 0, this._orderOfLastFocusedPages.splice(sortedPageIndex, 1)[0]);\n\t\t}\n\t}\n\n\t_onmouseout() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Content) {\n\t\t\tthis._visibleNavigationArrows = false;\n\t\t}\n\t}\n\n\t_onmouseover() {\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Content) {\n\t\t\tthis._visibleNavigationArrows = true;\n\t\t}\n\t}\n\n\t_ontouchstart(e: TouchEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target.hasAttribute(\"data-ui5-arrow-forward\") || target.hasAttribute(\"data-ui5-arrow-back\")) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (target.hasAttribute(\"data-ui5-arrow-forward\") || target.hasAttribute(\"data-ui5-arrow-back\")) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tasync _handleF7Key(e: KeyboardEvent) {\n\t\tconst lastFocusedElement = this._lastFocusedElements[this._getLastFocusedActivePageIndex];\n\t\tif (!this._lastInnerFocusedElement) {\n\t\t\tconst firstFocusable = await getFirstFocusableElement(this.items[this._focusedItemIndex].item);\n\t\t\tfirstFocusable?.focus();\n\t\t\tthis._lastInnerFocusedElement = firstFocusable || undefined;\n\t\t} else if (this.carouselItemDomRef(this._focusedItemIndex)[0] === lastFocusedElement && lastFocusedElement !== e.target) {\n\t\t\tlastFocusedElement.focus();\n\t\t\tthis._lastInnerFocusedElement = e.target as HTMLElement;\n\t\t} else if (this._lastInnerFocusedElement) {\n\t\t\tthis._lastInnerFocusedElement.focus();\n\t\t}\n\t}\n\n\t_handleHome(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tthis.navigateTo(0);\n\t}\n\n\t_handleEnd(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tthis.navigateTo(this.items.length - 1);\n\t}\n\n\t_handlePageUp(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tthis.navigateTo(this._focusedItemIndex\t+ this._pageStep < this.items.length ? this._focusedItemIndex + this._pageStep : this.items.length - 1);\n\t}\n\n\t_handlePageDown(e: KeyboardEvent) {\n\t\te.preventDefault();\n\t\tthis.navigateTo(this._focusedItemIndex\t- this._pageStep > 0 ? this._focusedItemIndex - this._pageStep : 0);\n\t}\n\n\tget _backgroundDesign() {\n\t\treturn this.backgroundDesign.toLowerCase();\n\t}\n\n\tget _getLastFocusedActivePageIndex() {\n\t\tfor (let i = 0; i < this._orderOfLastFocusedPages.length; i++) {\n\t\t\tconst pageIndex = this._orderOfLastFocusedPages[i];\n\n\t\t\tif (this.isItemInViewport(pageIndex)) {\n\t\t\t\treturn pageIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn this._focusedItemIndex;\n\t}\n\n\tnavigateLeft() {\n\t\tthis._resizing = false;\n\n\t\tconst previousSelectedIndex = this._focusedItemIndex;\n\n\t\tif (this._focusedItemIndex - 1 < 0) {\n\t\t\tif (this.cyclic && this._visibleItemsIndexes.length >= 1) {\n\t\t\t\tif (this._focusedItemIndex === 0 && this.effectiveItemsPerPage > 1) {\n\t\t\t\t\tthis._focusedItemIndex = 0;\n\t\t\t\t} else {\n\t\t\t\t\tthis._focusedItemIndex = this.items.length - 1;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t--this._focusedItemIndex;\n\t\t}\n\n\t\tif (previousSelectedIndex !== this._focusedItemIndex) {\n\t\t\tthis.skipToItem(this._focusedItemIndex, -1);\n\t\t\tthis.fireDecoratorEvent(\"navigate\", { selectedIndex: this._focusedItemIndex });\n\t\t}\n\t}\n\n\tnavigateRight() {\n\t\tthis._resizing = false;\n\n\t\tconst previousSelectedIndex = this._focusedItemIndex;\n\n\t\tif (this._focusedItemIndex + 1 > this.items.length - 1) {\n\t\t\tif (this.cyclic) {\n\t\t\t\tif (this._focusedItemIndex === this.items.length - 1 && this.effectiveItemsPerPage > 1) {\n\t\t\t\t\tthis._focusedItemIndex = this.items.length - 1;\n\t\t\t\t} else {\n\t\t\t\t\tthis._focusedItemIndex = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\t++this._focusedItemIndex;\n\t\t}\n\n\t\tif (previousSelectedIndex !== this._focusedItemIndex) {\n\t\t\tthis.skipToItem(this._focusedItemIndex, 1);\n\t\t\tthis.fireDecoratorEvent(\"navigate\", { selectedIndex: this._focusedItemIndex });\n\t\t}\n\t}\n\n\tnavigateArrowRight() {\n\t\tif (this._focusedItemIndex === this._visibleItemsIndexes[0]) {\n\t\t\tthis.navigateTo(this._focusedItemIndex + 1);\n\t\t\tthis._moveToItem(this._currentSlideIndex + 1);\n\t\t} else {\n\t\t\tthis._moveToItem(this._currentSlideIndex + 1);\n\t\t\tthis.navigateTo(this._focusedItemIndex);\n\t\t}\n\t}\n\n\tnavigateArrowLeft() {\n\t\tif (this._focusedItemIndex > 0 && this._focusedItemIndex === this._visibleItemsIndexes[this._visibleItemsIndexes.length - 1]) {\n\t\t\tthis.navigateTo(this._focusedItemIndex - 1);\n\t\t\tthis._moveToItem(this._currentSlideIndex - 1);\n\t\t} else {\n\t\t\tthis._moveToItem(this._currentSlideIndex === 0 ? this.pagesCount - 1 : this._currentSlideIndex - 1);\n\t\t\tthis.navigateTo(this._focusedItemIndex === 0 ? this.items.length - 1 : this._focusedItemIndex);\n\t\t}\n\t}\n\n\t_calculateItemSlideIndex(currentSlideIndex: number, itemStep: number) {\n\t\tif (this.isItemInViewport(this._focusedItemIndex)) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst itemsPerPage = this.effectiveItemsPerPage;\n\n\t\tlet slideIndex;\n\n\t\tif (itemsPerPage > 1) {\n\t\t\tif (currentSlideIndex === 0 && itemStep < 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (currentSlideIndex >= this.pagesCount && itemStep > 0) {\n\t\t\t\treturn this.pagesCount - 1;\n\t\t\t}\n\n\t\t\tslideIndex = currentSlideIndex + itemStep;\n\t\t} else {\n\t\t\tslideIndex = itemStep > 0 ? currentSlideIndex + 1 : currentSlideIndex - 1;\n\t\t\tif (this.cyclic) {\n\t\t\t\tif (currentSlideIndex === 0 && itemStep < 0) {\n\t\t\t\t\treturn this.pagesCount - 1;\n\t\t\t\t}\n\n\t\t\t\tif (currentSlideIndex === this.items.length - 1 && itemStep > 0) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn slideIndex;\n\t}\n\n\t_moveToItem(slideIndex: number) {\n\t\tif (this.items.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst itemsInViewportToShow = this.effectiveItemsPerPage,\n\t\t\titemsCount = this.items.length,\n\t\t\tcyclic = this.cyclic;\n\n\t\tif (cyclic && itemsInViewportToShow !== 1 && (slideIndex < 0 || slideIndex > itemsCount - 1)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (slideIndex + itemsInViewportToShow > itemsCount - 1) {\n\t\t\tslideIndex = itemsCount - itemsInViewportToShow;\n\t\t}\n\n\t\tthis._updateVisibleItems(slideIndex);\n\t\tthis._currentSlideIndex = slideIndex;\n\t}\n\n\tfocusItem() {\n\t\tthis.carouselItemDomRef(this._focusedItemIndex)[0].focus({ preventScroll: true });\n\t}\n\n\t_navButtonClick(e: UI5CustomEvent<Icon, \"click\">) {\n\t\tconst target = e.target as Icon;\n\t\tif (this._visibleItemsIndexes.length > 1) {\n\t\t\tif (target.hasAttribute(\"data-ui5-arrow-forward\")) {\n\t\t\t\tthis.navigateArrowRight();\n\t\t\t} else {\n\t\t\t\tthis.navigateArrowLeft();\n\t\t\t}\n\t\t} else if (this._visibleItemsIndexes.length <= 1) {\n\t\t\tif (target.hasAttribute(\"data-ui5-arrow-forward\")) {\n\t\t\t\tthis.navigateRight();\n\t\t\t} else {\n\t\t\t\tthis.navigateLeft();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Changes the currently displayed page.\n\t * @param itemIndex The index of the target page\n\t * @since 1.0.0-rc.15\n\t * @public\n\t */\n\tnavigateTo(itemIndex: number) {\n\t\tif (this._focusedItemIndex < itemIndex) {\n\t\t\tthis._itemIndicator = 1;\n\t\t}\n\t\tthis._focusedItemIndex = itemIndex;\n\t\tthis._currentSlideIndex = itemIndex - this._itemIndicator;\n\t\tif (this.isItemInViewport(itemIndex)) {\n\t\t\tthis._currentSlideIndex = this._visibleItemsIndexes[0];\n\t\t\tthis.focusItem();\n\t\t\treturn;\n\t\t}\n\t\tthis.skipToItem(this._focusedItemIndex, 1);\n\t}\n\n\tasync skipToItem(focusIndex: number, offset: number) {\n\t\tif (!this.isItemInViewport(focusIndex)) {\n\t\t\tlet slideIndex = this._calculateItemSlideIndex(this._currentSlideIndex, offset);\n\t\t\tif (focusIndex === 0) {\n\t\t\t\tslideIndex = 0;\n\t\t\t}\n\t\t\tthis._moveToItem(slideIndex);\n\t\t}\n\n\t\tawait renderFinished();\n\n\t\tthis.focusItem();\n\t}\n\n\t/**\n\t * Assuming that all items have the same width\n\t * @private\n\t */\n\tget items(): Array<ItemsInfo> {\n\t\treturn this.content.map((item, idx) => {\n\t\t\treturn {\n\t\t\t\tid: `${this._id}-carousel-item-${idx + 1}`,\n\t\t\t\titem,\n\t\t\t\ttabIndex: this.isItemInViewport(this._focusedItemIndex) ? 0 : -1,\n\t\t\t\tposinset: idx + 1,\n\t\t\t\tsetsize: this.content.length,\n\t\t\t\tvisible: this.isItemInViewport(idx),\n\t\t\t};\n\t\t});\n\t}\n\tget effectiveItemsPerPage(): number {\n\t\tconst itemsPerPageArray = this.itemsPerPage.split(\" \");\n\t\tlet itemsPerPageSizeS = 1,\n\t\t\titemsPerPageSizeM = 1,\n\t\t\titemsPerPageSizeL = 1,\n\t\t\titemsPerPageSizeXL = 1;\n\n\t\titemsPerPageArray.forEach(element => {\n\t\t\tif (element.startsWith(\"S\")) {\n\t\t\t\titemsPerPageSizeS = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"M\")) {\n\t\t\t\titemsPerPageSizeM = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"L\")) {\n\t\t\t\titemsPerPageSizeL = Number(element.slice(1)) || 1;\n\t\t\t} else if (element.startsWith(\"XL\")) {\n\t\t\t\titemsPerPageSizeXL = Number(element.slice(2)) || 1;\n\t\t\t}\n\t\t});\n\n\t\tif (!this._width) {\n\t\t\treturn itemsPerPageSizeL;\n\t\t}\n\n\t\tif (this._width < 600) {\n\t\t\treturn itemsPerPageSizeS;\n\t\t}\n\n\t\tif (this._width >= 600 && this._width < 1024) {\n\t\t\treturn itemsPerPageSizeM;\n\t\t}\n\n\t\tif (this._width >= 1024 && this._width < 1440) {\n\t\t\treturn itemsPerPageSizeL;\n\t\t}\n\n\t\treturn itemsPerPageSizeXL;\n\t}\n\n\tisItemInViewport(index: number): boolean {\n\t\treturn this._visibleItemsIndexes.includes(index);\n\t}\n\n\t_updateVisibleItems(index:number) {\n\t\tlet newItemIndex = index;\n\t\tconst effectiveItemsPerPage: number = this.effectiveItemsPerPage;\n\t\tconst items = this.items;\n\n\t\tif (!items.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (newItemIndex > items.length - effectiveItemsPerPage) {\n\t\t\tnewItemIndex = items.length\t - effectiveItemsPerPage;\n\t\t}\n\t\tconst lastItemIndex = newItemIndex + effectiveItemsPerPage;\n\n\t\tthis._visibleItemsIndexes = [];\n\n\t\tfor (let i = newItemIndex; i < lastItemIndex; i++) {\n\t\t\tthis._visibleItemsIndexes.push(i);\n\t\t}\n\t}\n\n\tisIndexInRange(index: number): boolean {\n\t\treturn index >= 0 && index <= this.items.length - 1;\n\t}\n\n\t/**\n\t * @private\n\t */\n\tget renderNavigation() {\n\t\tif (!this.hasManyPages) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (this.hidePageIndicator) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tget hasManyPages() {\n\t\treturn this.pagesCount > 1;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tviewport: {\n\t\t\t\t\"ui5-carousel-viewport\": true,\n\t\t\t\t\"ui5-carousel-viewport--single\": this.pagesCount === 1,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-carousel-content\": true,\n\t\t\t\t\"ui5-carousel-content-no-animation\": this.suppressAnimation,\n\t\t\t\t\"ui5-carousel-content-has-navigation\": this.renderNavigation,\n\t\t\t\t\"ui5-carousel-content-has-navigation-and-buttons\": this.renderNavigation && this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows,\n\t\t\t},\n\t\t\tnavigation: {\n\t\t\t\t\"ui5-carousel-navigation-wrapper\": true,\n\t\t\t\t\"ui5-carousel-navigation-with-buttons\": this.renderNavigation && this.arrowsPlacement === CarouselArrowsPlacement.Navigation && !this.hideNavigationArrows,\n\t\t\t\t[`ui5-carousel-navigation-wrapper-bg-${this.pageIndicatorBackgroundDesign.toLowerCase()}`]: true,\n\t\t\t\t[`ui5-carousel-navigation-wrapper-border-${this.pageIndicatorBorderDesign.toLowerCase()}`]: true,\n\t\t\t},\n\t\t};\n\t}\n\n\tget pagesCount() {\n\t\tconst items = this.content.length;\n\t\treturn items > this.effectiveItemsPerPage ? items - this.effectiveItemsPerPage + 1 : 1;\n\t}\n\tget isPageTypeDots() {\n\t\tif (this.pageIndicatorType === CarouselPageIndicatorType.Numeric) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn this.pagesCount < Carousel.pageTypeLimit;\n\t}\n\n\tget dots() {\n\t\tconst dots = [];\n\t\tconst pages = this.pagesCount;\n\n\t\tfor (let index = 0; index < pages; index++) {\n\t\t\tdots.push({\n\t\t\t\tactive: index === this._currentSlideIndex,\n\t\t\t\tariaLabel: Carousel.i18nBundle.getText(CAROUSEL_DOT_TEXT, index + 1, pages),\n\t\t\t});\n\t\t}\n\n\t\treturn dots;\n\t}\n\n\tget showArrows() {\n\t\tconst displayArrows = this._visibleNavigationArrows && this.hasManyPages;\n\t\treturn {\n\t\t\tcontent: !this.hideNavigationArrows && displayArrows && this.arrowsPlacement === CarouselArrowsPlacement.Content,\n\t\t\tnavigation: !this.hideNavigationArrows && displayArrows && this.arrowsPlacement === CarouselArrowsPlacement.Navigation,\n\t\t};\n\t}\n\n\tget hasPrev() {\n\t\treturn this.cyclic || (this._focusedItemIndex - 1 >= 0 && this._currentSlideIndex !== 0);\n\t}\n\n\tget hasNext() {\n\t\treturn this.cyclic || (this._focusedItemIndex + 1 <= this.content.length - 1 && this._currentSlideIndex < this.pagesCount - 1);\n\t}\n\n\tget suppressAnimation() {\n\t\treturn this._resizing || getAnimationMode() === AnimationMode.None;\n\t}\n\n\tget _isRTL() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget selectedIndexToShow() {\n\t\treturn this._isRTL ? this.items.length - (this.items.length - this._focusedItemIndex) + 1 : this._focusedItemIndex + 1;\n\t}\n\n\tget ofText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_OF_TEXT);\n\t}\n\n\tget ariaActiveDescendant() {\n\t\treturn this.content.length ? `${this._id}-carousel-item-${this._focusedItemIndex + 1}` : undefined;\n\t}\n\n\tget ariaLabelTxt() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget nextPageText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_NEXT_ARROW_TEXT);\n\t}\n\n\tget previousPageText() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_PREVIOUS_ARROW_TEXT);\n\t}\n\n\tget _roleDescription() {\n\t\treturn Carousel.i18nBundle.getText(CAROUSEL_ARIA_ROLE_DESCRIPTION);\n\t}\n\n\tcarouselItemDomRef(idx: number) : Array<HTMLElement> {\n\t\tconst items = this.getDomRef()?.querySelectorAll(\".ui5-carousel-item\") || [];\n\t\treturn Array.from(items).filter((item, index) => {\n\t\t\treturn index === idx;\n\t\t}) as Array<HTMLElement>;\n\t}\n}\n\nCarousel.define();\n\nexport default Carousel;\nexport type {\n\tCarouselNavigateEventDetail,\n};\n"]}
@@ -1,36 +1,36 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
2
- import Button from "./Button.js";
2
+ import Icon from "./Icon.js";
3
3
  import slimArrowLeft from "@ui5/webcomponents-icons/dist/slim-arrow-left.js";
4
4
  import slimArrowRight from "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
5
5
  export default function CarouselTemplate() {
6
6
  return (_jsxs("section", { class: {
7
7
  "ui5-carousel-root": true,
8
8
  [`ui5-carousel-background-${this._backgroundDesign}`]: true,
9
- }, tabindex: 0, role: "list", "aria-label": this.ariaLabelTxt, "aria-roledescription": this._roleDescription, "aria-activedescendant": this.ariaActiveDescendant, onFocusIn: this._onfocusin, onKeyDown: this._onkeydown, onMouseOut: this._onmouseout, onMouseOver: this._onmouseover, children: [_jsxs("div", { class: this.classes.viewport, part: "content", children: [_jsx("div", { class: this.classes.content, style: { transform: `translateX(${this._isRTL ? "" : "-"}${this._selectedIndex * (this._itemWidth || 0)}px` }, children: this.items.map(itemInfo => _jsx("div", { id: itemInfo.id, class: {
9
+ }, role: "region", "aria-label": this.ariaLabelTxt, "aria-roledescription": this._roleDescription, onFocusIn: this._onfocusin, onKeyDown: this._onkeydown, onMouseOut: this._onmouseout, onMouseOver: this._onmouseover, onTouchStart: this._ontouchstart, onMouseDown: this._onmousedown, children: [_jsxs("div", { class: this.classes.viewport, part: "content", children: [_jsx("div", { role: "list", class: this.classes.content, style: { transform: `translate3d(${this._isRTL ? "" : "-"}${this._currentSlideIndex * (this._itemWidth || 0)}px, 0, 0` }, children: this.items.map(itemInfo => _jsx("div", { "data-sap-focus-ref": true, id: itemInfo.id, class: {
10
10
  "ui5-carousel-item": true,
11
- "ui5-carousel-item--hidden": !itemInfo.selected,
12
- }, style: { width: `${this._itemWidth || 0}px` }, part: "item", role: "listitem", "aria-posinset": itemInfo.posinset, "aria-setsize": itemInfo.setsize, "aria-selected": itemInfo.selected, children: _jsx("slot", { name: itemInfo.item._individualSlot, tabindex: itemInfo.tabIndex }) })) }), this.showArrows.content &&
11
+ "ui5-carousel-item--hidden": !itemInfo.visible,
12
+ }, style: { width: `${this._itemWidth || 0}px` }, part: "item", role: "listitem", "aria-posinset": itemInfo.posinset, "aria-setsize": itemInfo.setsize, "aria-hidden": !itemInfo.visible, tabindex: itemInfo.tabIndex, children: _jsx("slot", { name: itemInfo.item._individualSlot, tabindex: itemInfo.tabIndex }) })) }), this.showArrows.content &&
13
13
  _jsxs("div", { class: "ui5-carousel-navigation-arrows", children: [arrowBack.call(this), arrowForward.call(this)] })] }), this.renderNavigation &&
14
14
  _jsxs("div", { class: this.classes.navigation, children: [this.showArrows.navigation && arrowBack.call(this), _jsx("div", { class: "ui5-carousel-navigation", children: !this.hidePageIndicator && navIndicator.call(this) }), this.showArrows.navigation && arrowForward.call(this)] })] }));
15
15
  }
16
16
  function arrowBack() {
17
- return _jsx(Button, { icon: slimArrowLeft, tabindex: -1, tooltip: this.previousPageText, class: {
17
+ return _jsx(Icon, { name: slimArrowLeft, tabindex: -1, "data-ui5-arrow-back": true, title: this.previousPageText, mode: "Decorative", class: {
18
18
  "ui5-carousel-navigation-button": true,
19
19
  "ui5-carousel-navigation-button--hidden": !this.hasPrev
20
- }, "data-ui5-arrow-back": true, onClick: this._navButtonClick });
20
+ }, onClick: this._navButtonClick });
21
21
  }
22
22
  function arrowForward() {
23
- return _jsx(Button, { icon: slimArrowRight, tabindex: -1, tooltip: this.nextPageText, class: {
23
+ return _jsx(Icon, { name: slimArrowRight, tabindex: -1, "data-ui5-arrow-forward": true, title: this.nextPageText, mode: "Decorative", class: {
24
24
  "ui5-carousel-navigation-button": true,
25
25
  "ui5-carousel-navigation-button--hidden": !this.hasNext
26
- }, "data-ui5-arrow-forward": true, onClick: this._navButtonClick });
26
+ }, onClick: this._navButtonClick });
27
27
  }
28
28
  function navIndicator() {
29
- return this.isPageTypeDots ? this.dots.map(dot => _jsx("div", { role: "img", "aria-label": dot.ariaLabel, class: {
29
+ return this.isPageTypeDots ? this.dots.map(dot => _jsx("div", { "aria-label": dot.ariaLabel, role: "presentation", "aria-hidden": "true", class: {
30
30
  "ui5-carousel-navigation-dot": true,
31
31
  "ui5-carousel-navigation-dot--active": dot.active
32
32
  } }))
33
33
  :
34
- _jsxs("div", { dir: "auto", class: "ui5-carousel-navigation-text", children: [this.selectedIndexToShow, "\u00A0", this.ofText, "\u00A0", this.pagesCount] });
34
+ _jsxs("div", { dir: "auto", class: "ui5-carousel-navigation-text", children: [this._currentSlideIndex + 1, "\u00A0", this.ofText, "\u00A0", this.pagesCount] });
35
35
  }
36
36
  //# sourceMappingURL=CarouselTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselTemplate.js","sourceRoot":"","sources":["../src/CarouselTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type Carousel from \"./Carousel.js\";\nimport Button from \"./Button.js\";\nimport slimArrowLeft from \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport slimArrowRight from \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nexport default function CarouselTemplate(this: Carousel) {\n\treturn (\n\t\t<section\n\t\t\tclass={{\n\t\t\t\t\"ui5-carousel-root\": true,\n\t\t\t\t[`ui5-carousel-background-${this._backgroundDesign}`]: true,\n\t\t\t}}\n\t\t\ttabindex={0}\n\t\t\trole=\"list\"\n\t\t\taria-label={this.ariaLabelTxt}\n\t\t\taria-roledescription={this._roleDescription}\n\t\t\taria-activedescendant={this.ariaActiveDescendant}\n\t\t\tonFocusIn={this._onfocusin}\n\t\t\tonKeyDown={this._onkeydown}\n\t\t\tonMouseOut={this._onmouseout}\n\t\t\tonMouseOver={this._onmouseover}\n\t\t>\n\t\t\t<div class={this.classes.viewport} part=\"content\">\n\t\t\t\t<div class={this.classes.content} style={{ transform: `translateX(${this._isRTL ? \"\" : \"-\"}${this._selectedIndex * (this._itemWidth || 0)}px` }}>\n\t\t\t\t\t{this.items.map(itemInfo =>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tid={itemInfo.id}\n\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\"ui5-carousel-item\": true,\n\t\t\t\t\t\t\t\t\"ui5-carousel-item--hidden\": !itemInfo.selected,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={{ width: `${this._itemWidth || 0}px` }}\n\t\t\t\t\t\t\tpart=\"item\"\n\t\t\t\t\t\t\trole=\"listitem\"\n\t\t\t\t\t\t\taria-posinset={itemInfo.posinset}\n\t\t\t\t\t\t\taria-setsize={itemInfo.setsize}\n\t\t\t\t\t\t\taria-selected = {itemInfo.selected}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot name={itemInfo.item._individualSlot} tabindex={itemInfo.tabIndex}></slot>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{this.showArrows.content &&\n\t\t\t\t\t<div class=\"ui5-carousel-navigation-arrows\">\n\t\t\t\t\t\t{arrowBack.call(this)}\n\t\t\t\t\t\t{arrowForward.call(this)}\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t</div>\n\n\t\t\t{this.renderNavigation &&\n\t\t\t\t<div class={this.classes.navigation}>\n\t\t\t\t\t{this.showArrows.navigation && arrowBack.call(this)}\n\n\t\t\t\t\t<div class=\"ui5-carousel-navigation\">\n\t\t\t\t\t\t{ !this.hidePageIndicator && navIndicator.call(this) }\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{this.showArrows.navigation && arrowForward.call(this)}\n\t\t\t\t</div>\n\t\t\t}\n\t\t</section>\n\t);\n}\n\nfunction arrowBack(this: Carousel) {\n\treturn <Button\n\t\ticon={slimArrowLeft}\n\t\ttabindex={-1}\n\t\ttooltip={this.previousPageText}\n\t\tclass={{\n\t\t\t\"ui5-carousel-navigation-button\": true,\n\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasPrev\n\t\t}}\n\t\tdata-ui5-arrow-back\n\t\tonClick={this._navButtonClick}\n\t/>;\n}\n\nfunction arrowForward(this: Carousel) {\n\treturn <Button\n\t\ticon={slimArrowRight}\n\t\ttabindex={-1}\n\t\ttooltip={this.nextPageText}\n\t\tclass={{\n\t\t\t\"ui5-carousel-navigation-button\": true,\n\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasNext\n\t\t}}\n\t\tdata-ui5-arrow-forward\n\t\tonClick={this._navButtonClick}\n\t/>;\n}\n\nfunction navIndicator(this: Carousel) {\n\treturn this.isPageTypeDots ? this.dots.map(dot =>\n\t\t<div\n\t\t\trole=\"img\"\n\t\t\taria-label={dot.ariaLabel}\n\t\t\tclass={{\n\t\t\t\t\"ui5-carousel-navigation-dot\": true,\n\t\t\t\t\"ui5-carousel-navigation-dot--active\": dot.active\n\t\t\t}}\n\t\t></div>)\n\t\t:\n\t\t<div\n\t\t\tdir=\"auto\"\n\t\t\tclass=\"ui5-carousel-navigation-text\"\n\t\t>{this.selectedIndexToShow}&nbsp;{this.ofText}&nbsp;{this.pagesCount}</div>;\n}\n"]}
1
+ {"version":3,"file":"CarouselTemplate.js","sourceRoot":"","sources":["../src/CarouselTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type Carousel from \"./Carousel.js\";\nimport Icon from \"./Icon.js\";\nimport slimArrowLeft from \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport slimArrowRight from \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nexport default function CarouselTemplate(this: Carousel) {\n\treturn (\n\t\t<section\n\t\t\tclass={{\n\t\t\t\t\"ui5-carousel-root\": true,\n\t\t\t\t[`ui5-carousel-background-${this._backgroundDesign}`]: true,\n\t\t\t}}\n\t\t\trole=\"region\"\n\t\t\taria-label={this.ariaLabelTxt}\n\t\t\taria-roledescription={this._roleDescription}\n\t\t\tonFocusIn={this._onfocusin}\n\t\t\tonKeyDown={this._onkeydown}\n\t\t\tonMouseOut={this._onmouseout}\n\t\t\tonMouseOver={this._onmouseover}\n\t\t\tonTouchStart={this._ontouchstart}\n\t\t\tonMouseDown={this._onmousedown}\n\t\t>\n\t\t\t<div class={this.classes.viewport} part=\"content\">\n\t\t\t\t<div role=\"list\" class={this.classes.content} style={{ transform: `translate3d(${this._isRTL ? \"\" : \"-\"}${this._currentSlideIndex * (this._itemWidth || 0)}px, 0, 0` }}>\n\t\t\t\t\t{this.items.map(itemInfo =>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\t\t\tid={itemInfo.id}\n\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\"ui5-carousel-item\": true,\n\t\t\t\t\t\t\t\t\"ui5-carousel-item--hidden\": !itemInfo.visible,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={{ width: `${this._itemWidth || 0}px` }}\n\t\t\t\t\t\t\tpart=\"item\"\n\t\t\t\t\t\t\trole=\"listitem\"\n\t\t\t\t\t\t\taria-posinset={itemInfo.posinset}\n\t\t\t\t\t\t\taria-setsize={itemInfo.setsize}\n\t\t\t\t\t\t\taria-hidden={!itemInfo.visible}\n\t\t\t\t\t\t\ttabindex= {itemInfo.tabIndex}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot name={itemInfo.item._individualSlot} tabindex={itemInfo.tabIndex}></slot>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{this.showArrows.content &&\n\t\t\t\t\t<div class=\"ui5-carousel-navigation-arrows\">\n\t\t\t\t\t\t{arrowBack.call(this)}\n\t\t\t\t\t\t{arrowForward.call(this)}\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t</div>\n\n\t\t\t{this.renderNavigation &&\n\t\t\t\t<div class={this.classes.navigation}>\n\t\t\t\t\t{this.showArrows.navigation && arrowBack.call(this)}\n\t\t\t\t\t<div class=\"ui5-carousel-navigation\">\n\t\t\t\t\t\t{ !this.hidePageIndicator && navIndicator.call(this) }\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.showArrows.navigation && arrowForward.call(this)}\n\t\t\t\t</div>\n\t\t\t}\n\t\t</section>\n\t);\n}\n\nfunction arrowBack(this: Carousel) {\n\treturn <Icon name={slimArrowLeft}\n\t\ttabindex={-1}\n\t\tdata-ui5-arrow-back\n\t\ttitle={this.previousPageText\t}\n\t\tmode=\"Decorative\"\n\t\tclass={{\n\t\t\t\"ui5-carousel-navigation-button\": true,\n\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasPrev\n\t\t}}\n\t\tonClick={this._navButtonClick}\n\t/>;\n}\n\nfunction arrowForward(this: Carousel) {\n\treturn <Icon name={slimArrowRight}\n\t\ttabindex={-1}\n\t\tdata-ui5-arrow-forward\n\t\ttitle={this.nextPageText}\n\t\tmode=\"Decorative\"\n\t\tclass={{\n\t\t\t\"ui5-carousel-navigation-button\": true,\n\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasNext\n\t\t}}\n\t\tonClick={this._navButtonClick}\n\t/>;\n}\n\nfunction navIndicator(this: Carousel) {\n\treturn this.isPageTypeDots ? this.dots.map(dot =>\n\t\t<div\n\t\t\taria-label={dot.ariaLabel}\n\t\t\trole=\"presentation\"\n\t\t\taria-hidden=\"true\"\n\t\t\tclass={{\n\t\t\t\t\"ui5-carousel-navigation-dot\": true,\n\t\t\t\t\"ui5-carousel-navigation-dot--active\": dot.active\n\t\t\t}}\n\t\t></div>)\n\t\t:\n\t\t<div\n\t\t\tdir=\"auto\"\n\t\t\tclass=\"ui5-carousel-navigation-text\"\n\t\t>{this._currentSlideIndex + 1}&nbsp;{this.ofText}&nbsp;{this.pagesCount}</div>;\n}\n"]}
@@ -81,7 +81,7 @@ let DateComponentBase = class DateComponentBase extends UI5Element {
81
81
  return maxDate || getMaxCalendarDate(this._primaryCalendarType);
82
82
  }
83
83
  get _formatPattern() {
84
- return this.formatPattern || "medium"; // get from config
84
+ return this.formatPattern || this.valueFormat || "medium"; // get from config
85
85
  }
86
86
  get _isPattern() {
87
87
  return this._formatPattern !== "medium" && this._formatPattern !== "short" && this._formatPattern !== "long";
@@ -1 +1 @@
1
- {"version":3,"file":"DateComponentBase.js","sourceRoot":"","sources":["../src/DateComponentBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getCalendarType, getSecondaryCalendarType } from \"@ui5/webcomponents-base/dist/config/CalendarType.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport type CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { getMaxCalendarDate, getMinCalendarDate } from \"@ui5/webcomponents-localization/dist/dates/ExtremeDates.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type CalendarWeekNumbering from \"./types/CalendarWeekNumbering.js\";\n\n/**\n * @class\n *\n * Abstract class that provides common functionality for date-related components (day picker, month picker, year picker, calendar, date picker, date range picker, date time picker)\n * This includes:\n * - \"languageAware: true\" metadata setting, CLDR fetch and i18n initialization\n * - common properties (primaryCalendar, minDate, maxDate and formatPattern) declaration and methods that operate on them\n * - additional common methods\n * @constructor\n * @abstract\n * @extends UI5Element\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tcldr: true,\n\trenderer: jsxRenderer,\n})\nclass DateComponentBase extends UI5Element {\n\t/**\n\t * Sets a calendar type used for display.\n\t * If not set, the calendar type of the global configuration is used.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines the secondary calendar type.\n\t * If not set, the calendar will only show the primary calendar type.\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @deprecated Use displayFormat and valueFormat instead\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tdisplayFormat?: string;\n\n\t/**\n\t * Determines the format, used for the value attribute.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tvalueFormat?: string;\n\n\t/**\n\t * Determines the minimum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the minDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tminDate = \"\";\n\n\t/**\n\t * Determines the maximum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the maxDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tmaxDate = \"\";\n\n\t/**\n\t * Defines how to calculate calendar weeks and first day of the week.\n\t * If not set, the calendar will be displayed according to the currently set global configuration.\n\t * @default \"Default\"\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property()\n\tcalendarWeekNumbering: `${CalendarWeekNumbering}` = \"Default\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle?: I18nBundle;\n\n\t/**\n\t * Cached instance of DateFormat with a format pattern of \"yyyy-MM-dd\".\n\t * Used by the getISOFormat method to avoid creating a new DateFormat instance on each call.\n\t * @private\n\t */\n\t_isoFormatInstance?: DateFormat;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _primaryCalendarType() {\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn this.primaryCalendarType || getCalendarType() || localeData.getPreferredCalendarType();\n\t}\n\n\tget _secondaryCalendarType() {\n\t\treturn this.secondaryCalendarType || getSecondaryCalendarType();\n\t}\n\n\tget _minDate() {\n\t\tlet minDate;\n\n\t\tif (this.minDate) {\n\t\t\tminDate = this._getMinMaxCalendarDateFromString(this.minDate);\n\t\t}\n\n\t\treturn minDate || getMinCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _maxDate() {\n\t\tlet maxDate;\n\n\t\tif (this.maxDate) {\n\t\t\tmaxDate = this._getMinMaxCalendarDateFromString(this.maxDate)!;\n\t\t}\n\n\t\treturn maxDate || getMaxCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _formatPattern() {\n\t\treturn this.formatPattern || \"medium\"; // get from config\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget _isValueFormatPattern() {\n\t\treturn this._valueFormat !== \"medium\" && this._valueFormat !== \"short\" && this._valueFormat !== \"long\";\n\t}\n\n\tget _isDisplayFormatPattern() {\n\t\treturn this._displayFormat !== \"medium\" && this._displayFormat !== \"short\" && this._displayFormat !== \"long\";\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\t_getMinMaxCalendarDateFromString(date: string) {\n\t\tif (this.getFormat().parse(date)) {\n\t\t\treturn this._getCalendarDateFromString(date);\n\t\t}\n\n\t\tconst jsDate = this.getISOFormat().parse(date) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromString(value: string) {\n\t\tconst jsDate = this.getValueFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromStringDisplayValue(value: string) {\n\t\tconst jsDate = this.getDisplayFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getTimeStampFromString(value: string) {\n\t\tconst calDate = this._getCalendarDateFromString(value);\n\t\tif (calDate) {\n\t\t\treturn calDate.toUTCJSDate().valueOf();\n\t\t}\n\t}\n\n\t_getStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getFormat().format(localDate, true);\n\t}\n\n\t_getDisplayStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getDisplayFormat().format(localDate, true);\n\t}\n\n\t_getValueStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getValueFormat().format(localDate, true);\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tget _displayFormat() {\n\t\tif (this.displayFormat) {\n\t\t\treturn this.displayFormat;\n\t\t}\n\n\t\treturn this._formatPattern;\n\t}\n\n\tget _valueFormat() {\n\t\tif (this.valueFormat) {\n\t\t\treturn this.valueFormat;\n\t\t}\n\n\t\tif (this._formatPattern) {\n\t\t\treturn this._formatPattern;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tgetDisplayFormat() {\n\t\treturn this._isDisplayFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetValueFormat() {\n\t\tif (!this._valueFormat) {\n\t\t\treturn this.getISOFormat();\n\t\t}\n\n\t\treturn this._isValueFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetISOFormat() {\n\t\tif (!this._isoFormatInstance) {\n\t\t\tthis._isoFormatInstance = DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: \"yyyy-MM-dd\",\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t\t}\n\t\treturn this._isoFormatInstance;\n\t}\n}\n\nexport default DateComponentBase;\n"]}
1
+ {"version":3,"file":"DateComponentBase.js","sourceRoot":"","sources":["../src/DateComponentBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getCalendarType, getSecondaryCalendarType } from \"@ui5/webcomponents-base/dist/config/CalendarType.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport type CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { getMaxCalendarDate, getMinCalendarDate } from \"@ui5/webcomponents-localization/dist/dates/ExtremeDates.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport type CalendarWeekNumbering from \"./types/CalendarWeekNumbering.js\";\n\n/**\n * @class\n *\n * Abstract class that provides common functionality for date-related components (day picker, month picker, year picker, calendar, date picker, date range picker, date time picker)\n * This includes:\n * - \"languageAware: true\" metadata setting, CLDR fetch and i18n initialization\n * - common properties (primaryCalendar, minDate, maxDate and formatPattern) declaration and methods that operate on them\n * - additional common methods\n * @constructor\n * @abstract\n * @extends UI5Element\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tcldr: true,\n\trenderer: jsxRenderer,\n})\nclass DateComponentBase extends UI5Element {\n\t/**\n\t * Sets a calendar type used for display.\n\t * If not set, the calendar type of the global configuration is used.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines the secondary calendar type.\n\t * If not set, the calendar will only show the primary calendar type.\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @deprecated Use displayFormat and valueFormat instead\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tdisplayFormat?: string;\n\n\t/**\n\t * Determines the format, used for the value attribute.\n\t * @default undefined\n\t * @since 2.14.0\n\t * @public\n\t */\n\t@property()\n\tvalueFormat?: string;\n\n\t/**\n\t * Determines the minimum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the minDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tminDate = \"\";\n\n\t/**\n\t * Determines the maximum date available for selection.\n\t *\n\t * **Note:** If the formatPattern property is not set, the maxDate value must be provided in the ISO date format (yyyy-MM-dd).\n\t * @default \"\"\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@property()\n\tmaxDate = \"\";\n\n\t/**\n\t * Defines how to calculate calendar weeks and first day of the week.\n\t * If not set, the calendar will be displayed according to the currently set global configuration.\n\t * @default \"Default\"\n\t * @since 2.2.0\n\t * @public\n\t */\n\t@property()\n\tcalendarWeekNumbering: `${CalendarWeekNumbering}` = \"Default\";\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle?: I18nBundle;\n\n\t/**\n\t * Cached instance of DateFormat with a format pattern of \"yyyy-MM-dd\".\n\t * Used by the getISOFormat method to avoid creating a new DateFormat instance on each call.\n\t * @private\n\t */\n\t_isoFormatInstance?: DateFormat;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tget _primaryCalendarType() {\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn this.primaryCalendarType || getCalendarType() || localeData.getPreferredCalendarType();\n\t}\n\n\tget _secondaryCalendarType() {\n\t\treturn this.secondaryCalendarType || getSecondaryCalendarType();\n\t}\n\n\tget _minDate() {\n\t\tlet minDate;\n\n\t\tif (this.minDate) {\n\t\t\tminDate = this._getMinMaxCalendarDateFromString(this.minDate);\n\t\t}\n\n\t\treturn minDate || getMinCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _maxDate() {\n\t\tlet maxDate;\n\n\t\tif (this.maxDate) {\n\t\t\tmaxDate = this._getMinMaxCalendarDateFromString(this.maxDate)!;\n\t\t}\n\n\t\treturn maxDate || getMaxCalendarDate(this._primaryCalendarType);\n\t}\n\n\tget _formatPattern() {\n\t\treturn this.formatPattern || this.valueFormat || \"medium\"; // get from config\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget _isValueFormatPattern() {\n\t\treturn this._valueFormat !== \"medium\" && this._valueFormat !== \"short\" && this._valueFormat !== \"long\";\n\t}\n\n\tget _isDisplayFormatPattern() {\n\t\treturn this._displayFormat !== \"medium\" && this._displayFormat !== \"short\" && this._displayFormat !== \"long\";\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\t_getMinMaxCalendarDateFromString(date: string) {\n\t\tif (this.getFormat().parse(date)) {\n\t\t\treturn this._getCalendarDateFromString(date);\n\t\t}\n\n\t\tconst jsDate = this.getISOFormat().parse(date) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromString(value: string) {\n\t\tconst jsDate = this.getValueFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getCalendarDateFromStringDisplayValue(value: string) {\n\t\tconst jsDate = this.getDisplayFormat().parse(value) as Date;\n\t\tif (jsDate) {\n\t\t\treturn CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);\n\t\t}\n\t}\n\n\t_getTimeStampFromString(value: string) {\n\t\tconst calDate = this._getCalendarDateFromString(value);\n\t\tif (calDate) {\n\t\t\treturn calDate.toUTCJSDate().valueOf();\n\t\t}\n\t}\n\n\t_getStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getFormat().format(localDate, true);\n\t}\n\n\t_getDisplayStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getDisplayFormat().format(localDate, true);\n\t}\n\n\t_getValueStringFromTimestamp(timestamp: number) {\n\t\tif (!timestamp) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(timestamp);\n\t\treturn this.getValueFormat().format(localDate, true);\n\t}\n\n\tgetFormat() {\n\t\treturn this._isPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tget _displayFormat() {\n\t\tif (this.displayFormat) {\n\t\t\treturn this.displayFormat;\n\t\t}\n\n\t\treturn this._formatPattern;\n\t}\n\n\tget _valueFormat() {\n\t\tif (this.valueFormat) {\n\t\t\treturn this.valueFormat;\n\t\t}\n\n\t\tif (this._formatPattern) {\n\t\t\treturn this._formatPattern;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tgetDisplayFormat() {\n\t\treturn this._isDisplayFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._displayFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetValueFormat() {\n\t\tif (!this._valueFormat) {\n\t\t\treturn this.getISOFormat();\n\t\t}\n\n\t\treturn this._isValueFormatPattern\n\t\t\t? DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t})\n\t\t\t: DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tstyle: this._valueFormat,\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t}\n\n\tgetISOFormat() {\n\t\tif (!this._isoFormatInstance) {\n\t\t\tthis._isoFormatInstance = DateFormat.getDateInstance({\n\t\t\t\tstrictParsing: true,\n\t\t\t\tpattern: \"yyyy-MM-dd\",\n\t\t\t\tcalendarType: this._primaryCalendarType,\n\t\t\t});\n\t\t}\n\t\treturn this._isoFormatInstance;\n\t}\n}\n\nexport default DateComponentBase;\n"]}
@@ -17,5 +17,11 @@ declare class DateTimeInput extends Input {
17
17
  */
18
18
  get hasValueStateMessage(): boolean;
19
19
  get _isMobileDevice(): boolean;
20
+ /**
21
+ * Override to handle nested slot structure from DatePicker -> DateTimeInput slot forwarding.
22
+ * Assumes DateTimeInput always has slot-within-slot structure for valueStateMessage.
23
+ * @override
24
+ */
25
+ get ariaValueStateHiddenText(): string | undefined;
20
26
  }
21
27
  export default DateTimeInput;
@@ -5,6 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
8
+ import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
8
9
  // Styles
9
10
  import Input from "./Input.js";
10
11
  import { property } from "@ui5/webcomponents-base/dist/decorators.js";
@@ -34,6 +35,35 @@ let DateTimeInput = class DateTimeInput extends Input {
34
35
  get _isMobileDevice() {
35
36
  return !isDesktop() && (isPhone() || isTablet());
36
37
  }
38
+ /**
39
+ * Override to handle nested slot structure from DatePicker -> DateTimeInput slot forwarding.
40
+ * Assumes DateTimeInput always has slot-within-slot structure for valueStateMessage.
41
+ * @override
42
+ */
43
+ get ariaValueStateHiddenText() {
44
+ if (!this.hasValueState) {
45
+ return;
46
+ }
47
+ const valueState = this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : "";
48
+ if (this.shouldDisplayDefaultValueStateMessage) {
49
+ return this.valueStateText ? `${valueState} ${this.valueStateText}` : valueState;
50
+ }
51
+ // Handle the specific nested slot case: outer slot -> inner slot -> actual content
52
+ if (this.valueStateMessage.length) {
53
+ const outerSlot = this.valueStateMessage[0];
54
+ if (outerSlot.tagName === "SLOT") {
55
+ const assignedNodes = outerSlot.assignedNodes({ flatten: true });
56
+ const textContent = assignedNodes
57
+ .map(node => node.textContent || "")
58
+ .join(" ")
59
+ .trim();
60
+ return textContent ? `${valueState} ${textContent}` : valueState;
61
+ }
62
+ // Fallback for non-slot content
63
+ return `${valueState} ${outerSlot.textContent || ""}`.trim();
64
+ }
65
+ return valueState;
66
+ }
37
67
  };
38
68
  __decorate([
39
69
  property({ noAttribute: true })
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimeInput.js","sourceRoot":"","sources":["../src/DateTimeInput.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF,SAAS;AACT,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAEtF;;;;;;GAMG;AAKH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,KAAK;IAAjC;;QAEC,iCAA4B,GAAG,KAAK,CAAC;IAgBtC,CAAC;IAdA;;;;;;OAMG;IACH,IAAI,oBAAoB;QACvB,OAAO,IAAI,CAAC,4BAA4B,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACjG,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;CACD,CAAA;AAhBA;IADC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;mEACK;AAFhC,aAAa;IAJlB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;KACzB,CAAC;GAEI,aAAa,CAkBlB;AAED,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\n\n// Styles\nimport Input from \"./Input.js\";\nimport { property } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\n\n/**\n * Extention of the UI5 Input, so we do not modify Input's private properties within the datetime components.\n * Intended to be used for the DateTime components.\n *\n * @class\n * @private\n */\n@customElement({\n\ttag: \"ui5-datetime-input\",\n})\n\nclass DateTimeInput extends Input {\n\t@property({ noAttribute: true })\n\t_shouldOpenValueStatePopover = false;\n\n\t/**\n\t * Prevents the value state message popover from appearing when a responsive popover (like time selection) is open\n\t * since the responsive popover already includes the necessary information in its header.\n\t *\n\t * @protected\n\t * @override\n\t */\n\tget hasValueStateMessage() {\n\t\treturn this._shouldOpenValueStatePopover && super.hasValueStateMessage && !this._isMobileDevice;\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n}\n\nDateTimeInput.define();\n\nexport default DateTimeInput;\n"]}
1
+ {"version":3,"file":"DateTimeInput.js","sourceRoot":"","sources":["../src/DateTimeInput.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,UAAU,MAAM,kDAAkD,CAAC;AAE1E,SAAS;AACT,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAEtF;;;;;;GAMG;AAKH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,KAAK;IAAjC;;QAEC,iCAA4B,GAAG,KAAK,CAAC;IAkDtC,CAAC;IAhDA;;;;;;OAMG;IACH,IAAI,oBAAoB;QACvB,OAAO,IAAI,CAAC,4BAA4B,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACjG,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,IAAI,wBAAwB;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3G,IAAI,IAAI,CAAC,qCAAqC,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAClF,CAAC;QAED,mFAAmF;QACnF,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,SAAS,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAClC,MAAM,aAAa,GAAI,SAA6B,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtF,MAAM,WAAW,GAAG,aAAa;qBAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;qBACnC,IAAI,CAAC,GAAG,CAAC;qBACT,IAAI,EAAE,CAAC;gBACT,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;YAClE,CAAC;YACD,gCAAgC;YAChC,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9D,CAAC;QAED,OAAO,UAAU,CAAC;IACnB,CAAC;CACD,CAAA;AAlDA;IADC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;mEACK;AAFhC,aAAa;IAJlB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;KACzB,CAAC;GAEI,aAAa,CAoDlB;AAED,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\n\n// Styles\nimport Input from \"./Input.js\";\nimport { property } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\n\n/**\n * Extention of the UI5 Input, so we do not modify Input's private properties within the datetime components.\n * Intended to be used for the DateTime components.\n *\n * @class\n * @private\n */\n@customElement({\n\ttag: \"ui5-datetime-input\",\n})\n\nclass DateTimeInput extends Input {\n\t@property({ noAttribute: true })\n\t_shouldOpenValueStatePopover = false;\n\n\t/**\n\t * Prevents the value state message popover from appearing when a responsive popover (like time selection) is open\n\t * since the responsive popover already includes the necessary information in its header.\n\t *\n\t * @protected\n\t * @override\n\t */\n\tget hasValueStateMessage() {\n\t\treturn this._shouldOpenValueStatePopover && super.hasValueStateMessage && !this._isMobileDevice;\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n\n\t/**\n\t * Override to handle nested slot structure from DatePicker -> DateTimeInput slot forwarding.\n\t * Assumes DateTimeInput always has slot-within-slot structure for valueStateMessage.\n\t * @override\n\t */\n\tget ariaValueStateHiddenText(): string | undefined {\n\t\tif (!this.hasValueState) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valueState = this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : \"\";\n\n\t\tif (this.shouldDisplayDefaultValueStateMessage) {\n\t\t\treturn this.valueStateText ? `${valueState} ${this.valueStateText}` : valueState;\n\t\t}\n\n\t\t// Handle the specific nested slot case: outer slot -> inner slot -> actual content\n\t\tif (this.valueStateMessage.length) {\n\t\t\tconst outerSlot = this.valueStateMessage[0];\n\t\t\tif (outerSlot.tagName === \"SLOT\") {\n\t\t\t\tconst assignedNodes = (outerSlot as HTMLSlotElement).assignedNodes({ flatten: true });\n\t\t\t\tconst textContent = assignedNodes\n\t\t\t\t\t.map(node => node.textContent || \"\")\n\t\t\t\t\t.join(\" \")\n\t\t\t\t\t.trim();\n\t\t\t\treturn textContent ? `${valueState} ${textContent}` : valueState;\n\t\t\t}\n\t\t\t// Fallback for non-slot content\n\t\t\treturn `${valueState} ${outerSlot.textContent || \"\"}`.trim();\n\t\t}\n\n\t\treturn valueState;\n\t}\n}\n\nDateTimeInput.define();\n\nexport default DateTimeInput;\n"]}
@@ -100,6 +100,11 @@ declare class DateTimePicker extends DatePicker implements IFormInputElement {
100
100
  * @private
101
101
  */
102
102
  _previewValues: PreviewValues;
103
+ /**
104
+ * Stores the last valid value to preserve time when entering invalid values
105
+ * @private
106
+ */
107
+ _lastValidValue: string;
103
108
  _clocks: TimeSelectionClocks;
104
109
  _handleResizeBound: ResizeObserverCallback;
105
110
  constructor();
@@ -175,6 +180,10 @@ declare class DateTimePicker extends DatePicker implements IFormInputElement {
175
180
  * @override
176
181
  */
177
182
  _modifyDateValue(amount: number, unit: string, preserveDate: boolean): void;
183
+ /**
184
+ * @override
185
+ */
186
+ _updateValueAndFireEvents(value: string, normalizeValue: boolean, events: Array<"change" | "value-changed" | "input">, updateValue?: boolean): void;
178
187
  /**
179
188
  * Checks if the provided value is valid and within valid range.
180
189
  * @override
@@ -116,6 +116,11 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
116
116
  * @private
117
117
  */
118
118
  this._previewValues = {};
119
+ /**
120
+ * Stores the last valid value to preserve time when entering invalid values
121
+ * @private
122
+ */
123
+ this._lastValidValue = "";
119
124
  this._handleResizeBound = this._handleResize.bind(this);
120
125
  }
121
126
  /**
@@ -142,9 +147,14 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
142
147
  _togglePicker() {
143
148
  super._togglePicker();
144
149
  if (this.open) {
150
+ let timeSelectionValue = this.value;
151
+ // If current value is invalid, use the last valid value for time selection
152
+ if (!timeSelectionValue || !this.isValidValue(timeSelectionValue)) {
153
+ timeSelectionValue = this._lastValidValue || this.getValueFormat().format(UI5Date.getInstance());
154
+ }
145
155
  this._previewValues = {
146
156
  ...this._previewValues,
147
- timeSelectionValue: this.value || this.getValueFormat().format(UI5Date.getInstance()),
157
+ timeSelectionValue,
148
158
  };
149
159
  }
150
160
  }
@@ -217,13 +227,17 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
217
227
  */
218
228
  async onSelectedDatesChange(e) {
219
229
  e.preventDefault();
220
- // @ts-ignore Needed for FF
221
- const dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];
230
+ // Try to get the current time value from the time picker,
231
+ // but fallback to last valid value if current picker time is empty or invalid
232
+ let timeValue = this._clocks?.value || "";
233
+ if (!timeValue || !this.isValidValue(timeValue)) {
234
+ timeValue = this._lastValidValue || this.getValueFormat().format(UI5Date.getInstance());
235
+ }
222
236
  this._previewValues = {
223
237
  ...this._previewValues,
224
238
  calendarTimestamp: e.detail.timestamp,
225
239
  calendarValue: e.detail.selectedValues[0],
226
- timeSelectionValue: dateTimePickerContent.lastChild.value,
240
+ timeSelectionValue: timeValue,
227
241
  };
228
242
  this._showTimeView = true;
229
243
  if (this.showDateView) {
@@ -294,6 +308,16 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
294
308
  const newValue = this.formatValue(modifiedLocalDate);
295
309
  this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
296
310
  }
311
+ /**
312
+ * @override
313
+ */
314
+ _updateValueAndFireEvents(value, normalizeValue, events, updateValue = true) {
315
+ super._updateValueAndFireEvents(value, normalizeValue, events, updateValue);
316
+ // Always store the current value if it's valid (handles both updates and initial values)
317
+ if (this.value && this.isValidValue(this.value)) {
318
+ this._lastValidValue = this.value;
319
+ }
320
+ }
297
321
  /**
298
322
  * Checks if the provided value is valid and within valid range.
299
323
  * @override
@@ -383,6 +407,9 @@ __decorate([
383
407
  __decorate([
384
408
  property({ type: Object })
385
409
  ], DateTimePicker.prototype, "_previewValues", void 0);
410
+ __decorate([
411
+ property()
412
+ ], DateTimePicker.prototype, "_lastValidValue", void 0);
386
413
  __decorate([
387
414
  query("[ui5-time-selection-clocks]")
388
415
  ], DateTimePicker.prototype, "_clocks", void 0);