@ui5/webcomponents 1.16.0 → 1.17.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (602) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/BusyIndicator.d.ts +0 -9
  3. package/dist/BusyIndicator.js.map +1 -1
  4. package/dist/Carousel.d.ts +2 -6
  5. package/dist/Carousel.js.map +1 -1
  6. package/dist/CheckBox.d.ts +1 -6
  7. package/dist/CheckBox.js.map +1 -1
  8. package/dist/Label.d.ts +1 -5
  9. package/dist/Label.js.map +1 -1
  10. package/dist/Link.d.ts +1 -5
  11. package/dist/Link.js.map +1 -1
  12. package/dist/Menu.d.ts +9 -0
  13. package/dist/Menu.js +31 -3
  14. package/dist/Menu.js.map +1 -1
  15. package/dist/Popover.d.ts +0 -24
  16. package/dist/Popover.js.map +1 -1
  17. package/dist/Popup.d.ts +2 -6
  18. package/dist/Popup.js.map +1 -1
  19. package/dist/RadioButton.d.ts +1 -15
  20. package/dist/RadioButton.js.map +1 -1
  21. package/dist/TabContainer.d.ts +2 -23
  22. package/dist/TabContainer.js.map +1 -1
  23. package/dist/Title.d.ts +1 -5
  24. package/dist/Title.js.map +1 -1
  25. package/dist/api.json +1 -1
  26. package/dist/assets/messagebundle_ar.5776a62e.js +1 -0
  27. package/dist/assets/messagebundle_bg.5e0f2a79.js +1 -0
  28. package/dist/assets/messagebundle_ca.a20af091.js +1 -0
  29. package/dist/assets/messagebundle_cs.edbf5f06.js +1 -0
  30. package/dist/assets/{messagebundle_cy.9f3ae845.js → messagebundle_cy.fd352fd8.js} +1 -1
  31. package/dist/assets/messagebundle_da.5dfdc1d3.js +1 -0
  32. package/dist/assets/messagebundle_de.e00b1548.js +1 -0
  33. package/dist/assets/messagebundle_el.164e847b.js +1 -0
  34. package/dist/assets/messagebundle_es.013382a0.js +1 -0
  35. package/dist/assets/messagebundle_es_MX.4195bad0.js +1 -0
  36. package/dist/assets/messagebundle_et.edbeb7fd.js +1 -0
  37. package/dist/assets/messagebundle_fi.cfa5ef16.js +1 -0
  38. package/dist/assets/messagebundle_fr.50a9c210.js +1 -0
  39. package/dist/assets/messagebundle_fr_CA.8e6c3d53.js +1 -0
  40. package/dist/assets/messagebundle_hi.b8831a44.js +1 -0
  41. package/dist/assets/messagebundle_hr.0cd4bdab.js +1 -0
  42. package/dist/assets/messagebundle_hu.cbe04412.js +1 -0
  43. package/dist/assets/messagebundle_it.a20a5390.js +1 -0
  44. package/dist/assets/messagebundle_iw.7b588631.js +1 -0
  45. package/dist/assets/messagebundle_ja.469bce93.js +1 -0
  46. package/dist/assets/messagebundle_kk.c87937c2.js +1 -0
  47. package/dist/assets/messagebundle_ko.e43561ec.js +1 -0
  48. package/dist/assets/messagebundle_lt.c9d71df8.js +1 -0
  49. package/dist/assets/messagebundle_lv.7134c734.js +1 -0
  50. package/dist/assets/messagebundle_ms.5eae3a5e.js +1 -0
  51. package/dist/assets/messagebundle_nl.c6cefe8e.js +1 -0
  52. package/dist/assets/messagebundle_no.60ab9453.js +1 -0
  53. package/dist/assets/messagebundle_pl.71703ec1.js +1 -0
  54. package/dist/assets/{messagebundle_pt.1a8ac668.js → messagebundle_pt.b3a26fb9.js} +1 -1
  55. package/dist/assets/{messagebundle_pt_PT.58717716.js → messagebundle_pt_PT.455a32ca.js} +1 -1
  56. package/dist/assets/messagebundle_ro.b7dd70a4.js +1 -0
  57. package/dist/assets/messagebundle_ru.29504567.js +1 -0
  58. package/dist/assets/messagebundle_sh.8942e1b7.js +1 -0
  59. package/dist/assets/messagebundle_sk.6cf84c7f.js +1 -0
  60. package/dist/assets/messagebundle_sl.2e8e8fba.js +1 -0
  61. package/dist/assets/messagebundle_sv.3688b397.js +1 -0
  62. package/dist/assets/messagebundle_th.e0214cc0.js +1 -0
  63. package/dist/assets/messagebundle_tr.51efddd2.js +1 -0
  64. package/dist/assets/messagebundle_uk.b065845c.js +1 -0
  65. package/dist/assets/messagebundle_vi.24b93d46.js +1 -0
  66. package/dist/assets/messagebundle_zh_CN.7e354392.js +1 -0
  67. package/dist/assets/messagebundle_zh_TW.6fb88bfe.js +1 -0
  68. package/dist/assets/{parameters-bundle.css.8f59133b.js → parameters-bundle.css.105ad911.js} +9 -9
  69. package/dist/assets/{parameters-bundle.css.c610dedc.js → parameters-bundle.css.1b7fc7e5.js} +9 -9
  70. package/dist/assets/{parameters-bundle.css.17439899.js → parameters-bundle.css.1c5f44da.js} +157 -157
  71. package/dist/assets/{parameters-bundle.css.145bbc1b.js → parameters-bundle.css.27d68bda.js} +9 -9
  72. package/dist/assets/{parameters-bundle.css.6bcb45b6.js → parameters-bundle.css.4f0ce521.js} +13 -13
  73. package/dist/assets/{parameters-bundle.css.90d73b57.js → parameters-bundle.css.682518ae.js} +102 -102
  74. package/dist/assets/{parameters-bundle.css.43287dee.js → parameters-bundle.css.7c5bb757.js} +9 -9
  75. package/dist/assets/parameters-bundle.css.7e67b41b.js +962 -0
  76. package/dist/assets/parameters-bundle.css.8b2bb349.js +954 -0
  77. package/dist/assets/{parameters-bundle.css.b71b5135.js → parameters-bundle.css.a02ea0f7.js} +7 -7
  78. package/dist/assets/parameters-bundle.css.a3494474.js +2834 -0
  79. package/dist/assets/parameters-bundle.css.b1baadbb.js +954 -0
  80. package/dist/assets/{parameters-bundle.css.61b5d26e.js → parameters-bundle.css.b5f97663.js} +102 -102
  81. package/dist/assets/{parameters-bundle.css.7a1bb4dd.js → parameters-bundle.css.ba3e0f1d.js} +11 -11
  82. package/dist/assets/parameters-bundle.css.cebda7b9.js +2645 -0
  83. package/dist/assets/{parameters-bundle.css.0397bbd6.js → parameters-bundle.css.d57fe5d7.js} +11 -11
  84. package/dist/assets/parameters-bundle.css.d7a9ab4d.js +2830 -0
  85. package/dist/assets/{parameters-bundle.css.351dbe3d.js → parameters-bundle.css.d9175432.js} +1005 -377
  86. package/dist/assets/{parameters-bundle.css.83fced7d.js → parameters-bundle.css.e5ed0312.js} +13 -13
  87. package/dist/assets/test/pages/{ComboBox.html.15d66df1.js → ComboBox.html.818c1aa7.js} +1 -1
  88. package/dist/assets/test/pages/{Icon.html.d087fb99.js → Icon.html.176a3eba.js} +1 -1
  89. package/dist/assets/test/pages/{Label.html.1359f352.js → Label.html.46ab33d3.js} +1 -1
  90. package/dist/assets/test/pages/{Popups.html.de6d06fd.js → Popups.html.7fb4be58.js} +1 -1
  91. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -0
  92. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  93. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -0
  94. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -0
  95. package/dist/custom-elements.json +1 -1
  96. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  97. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  98. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  99. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  100. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  105. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  110. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  111. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  112. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  113. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  115. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  119. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  123. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  134. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  135. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  136. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  137. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  138. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -0
  139. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  140. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -0
  141. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -0
  142. package/dist/generated/json-imports/Themes-static.js +8 -2
  143. package/dist/generated/json-imports/Themes.js +4 -1
  144. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.d.ts +3 -0
  145. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +3 -0
  146. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -0
  147. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  148. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  149. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.d.ts +3 -0
  150. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +3 -0
  151. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -0
  152. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.d.ts +3 -0
  153. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +3 -0
  154. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -0
  155. package/dist/i18n/messagebundle_ar.properties +1 -1
  156. package/dist/i18n/messagebundle_bg.properties +1 -1
  157. package/dist/i18n/messagebundle_ca.properties +1 -1
  158. package/dist/i18n/messagebundle_cs.properties +1 -1
  159. package/dist/i18n/messagebundle_cy.properties +1 -1
  160. package/dist/i18n/messagebundle_da.properties +1 -1
  161. package/dist/i18n/messagebundle_de.properties +1 -1
  162. package/dist/i18n/messagebundle_el.properties +1 -1
  163. package/dist/i18n/messagebundle_es.properties +1 -1
  164. package/dist/i18n/messagebundle_es_MX.properties +1 -1
  165. package/dist/i18n/messagebundle_et.properties +1 -1
  166. package/dist/i18n/messagebundle_fi.properties +1 -1
  167. package/dist/i18n/messagebundle_fr.properties +1 -1
  168. package/dist/i18n/messagebundle_fr_CA.properties +1 -1
  169. package/dist/i18n/messagebundle_hi.properties +1 -1
  170. package/dist/i18n/messagebundle_hr.properties +1 -1
  171. package/dist/i18n/messagebundle_hu.properties +1 -1
  172. package/dist/i18n/messagebundle_id.properties +1 -1
  173. package/dist/i18n/messagebundle_it.properties +1 -1
  174. package/dist/i18n/messagebundle_iw.properties +1 -1
  175. package/dist/i18n/messagebundle_ja.properties +1 -1
  176. package/dist/i18n/messagebundle_kk.properties +1 -1
  177. package/dist/i18n/messagebundle_ko.properties +1 -1
  178. package/dist/i18n/messagebundle_lt.properties +1 -1
  179. package/dist/i18n/messagebundle_lv.properties +1 -1
  180. package/dist/i18n/messagebundle_ms.properties +1 -1
  181. package/dist/i18n/messagebundle_nl.properties +1 -1
  182. package/dist/i18n/messagebundle_no.properties +1 -1
  183. package/dist/i18n/messagebundle_pl.properties +1 -1
  184. package/dist/i18n/messagebundle_pt.properties +1 -1
  185. package/dist/i18n/messagebundle_pt_PT.properties +1 -1
  186. package/dist/i18n/messagebundle_ro.properties +1 -1
  187. package/dist/i18n/messagebundle_ru.properties +2 -2
  188. package/dist/i18n/messagebundle_sh.properties +1 -1
  189. package/dist/i18n/messagebundle_sk.properties +1 -1
  190. package/dist/i18n/messagebundle_sl.properties +1 -1
  191. package/dist/i18n/messagebundle_sv.properties +1 -1
  192. package/dist/i18n/messagebundle_th.properties +1 -1
  193. package/dist/i18n/messagebundle_tr.properties +1 -1
  194. package/dist/i18n/messagebundle_uk.properties +1 -1
  195. package/dist/i18n/messagebundle_vi.properties +1 -1
  196. package/dist/i18n/messagebundle_zh_CN.properties +1 -1
  197. package/dist/i18n/messagebundle_zh_TW.properties +1 -1
  198. package/dist/test/pages/72override.html +1 -1
  199. package/dist/test/pages/AnimanitionOff.html +1 -1
  200. package/dist/test/pages/Avatar.html +1 -1
  201. package/dist/test/pages/AvatarGroup.html +1 -1
  202. package/dist/test/pages/Badge.html +1 -1
  203. package/dist/test/pages/Breadcrumbs.html +1 -1
  204. package/dist/test/pages/BusyIndicator.html +1 -1
  205. package/dist/test/pages/Button.html +1 -1
  206. package/dist/test/pages/ButtonDesign.html +46 -0
  207. package/dist/test/pages/Calendar.html +1 -1
  208. package/dist/test/pages/Card.html +1 -1
  209. package/dist/test/pages/Carousel.html +1 -1
  210. package/dist/test/pages/CheckBox.html +1 -1
  211. package/dist/test/pages/ColorPalette.html +1 -1
  212. package/dist/test/pages/ColorPalettePopover.html +1 -1
  213. package/dist/test/pages/ColorPicker.html +1 -1
  214. package/dist/test/pages/ComboBox.html +2 -2
  215. package/dist/test/pages/Components.html +1 -1
  216. package/dist/test/pages/CoreControls.html +1 -1
  217. package/dist/test/pages/CoreControls_exp.html +1 -1
  218. package/dist/test/pages/CustomCSS.html +1 -1
  219. package/dist/test/pages/DatePicker.html +1 -1
  220. package/dist/test/pages/DatePicker_test_page.html +1 -1
  221. package/dist/test/pages/DateRangePicker.html +1 -1
  222. package/dist/test/pages/DateTimePicker.html +1 -1
  223. package/dist/test/pages/DateTimePicker_Timezone.html +1 -1
  224. package/dist/test/pages/DayPicker.html +1 -1
  225. package/dist/test/pages/Dialog.html +1 -1
  226. package/dist/test/pages/DialogLifecycle.html +1 -1
  227. package/dist/test/pages/DialogSemantic.html +1 -1
  228. package/dist/test/pages/Eventing.html +1 -1
  229. package/dist/test/pages/F6Test1.html +1 -1
  230. package/dist/test/pages/F6Test2.html +1 -1
  231. package/dist/test/pages/F6Test3.html +1 -1
  232. package/dist/test/pages/F6Test4.html +1 -1
  233. package/dist/test/pages/F6Test5.html +1 -1
  234. package/dist/test/pages/F6Test6.html +1 -1
  235. package/dist/test/pages/F6Test7.html +1 -1
  236. package/dist/test/pages/FileUploader.html +1 -1
  237. package/dist/test/pages/FontFace.html +1 -1
  238. package/dist/test/pages/FormComponents.html +1 -1
  239. package/dist/test/pages/FormSupport.html +1 -1
  240. package/dist/test/pages/HCB.html +1 -1
  241. package/dist/test/pages/Icon.html +2 -2
  242. package/dist/test/pages/Icon_and_theming.html +1 -1
  243. package/dist/test/pages/Icon_custom.html +1 -1
  244. package/dist/test/pages/Input.html +1 -1
  245. package/dist/test/pages/InputFieldLabels.html +1 -1
  246. package/dist/test/pages/InputFieldMinWidth.html +1 -1
  247. package/dist/test/pages/InputIcons.html +1 -1
  248. package/dist/test/pages/Input_quickview.html +1 -1
  249. package/dist/test/pages/Input_variations.html +59 -0
  250. package/dist/test/pages/InputsAlignment.html +1 -1
  251. package/dist/test/pages/InputsLazyLoading.html +1 -1
  252. package/dist/test/pages/ItemNavigation.html +1 -1
  253. package/dist/test/pages/Kitchen.html +1 -1
  254. package/dist/test/pages/Kitchen.openui5.html +1 -1
  255. package/dist/test/pages/Label.html +2 -2
  256. package/dist/test/pages/Link.html +1 -1
  257. package/dist/test/pages/List.html +1 -1
  258. package/dist/test/pages/ListGrowing_Button.html +1 -1
  259. package/dist/test/pages/ListGrowing_Scroll.html +1 -1
  260. package/dist/test/pages/List_keyboard_support.html +1 -1
  261. package/dist/test/pages/List_test_page.html +1 -1
  262. package/dist/test/pages/LitKeyFunction.html +1 -1
  263. package/dist/test/pages/MemoryLeak.html +1 -1
  264. package/dist/test/pages/Menu.html +1 -1
  265. package/dist/test/pages/MessagePage.html +1 -1
  266. package/dist/test/pages/MessageStrip.html +1 -1
  267. package/dist/test/pages/MultiComboBox.html +1 -1
  268. package/dist/test/pages/MultiInput.html +1 -1
  269. package/dist/test/pages/MultiInput_Suggestions.html +1 -1
  270. package/dist/test/pages/OpenUI5-second.html +1 -1
  271. package/dist/test/pages/OpenUI5.html +1 -1
  272. package/dist/test/pages/OpenUI5Nightly.html +1 -1
  273. package/dist/test/pages/Panel.html +1 -1
  274. package/dist/test/pages/Popover.html +1 -1
  275. package/dist/test/pages/PopoverArrowBounds.html +1 -1
  276. package/dist/test/pages/Popups.html +2 -2
  277. package/dist/test/pages/ProgressIndicator.html +1 -1
  278. package/dist/test/pages/RTL.html +1 -1
  279. package/dist/test/pages/RadioButton.html +1 -1
  280. package/dist/test/pages/RangeSlider.html +1 -1
  281. package/dist/test/pages/RatingIndicator.html +1 -1
  282. package/dist/test/pages/ResizeHandler.html +1 -1
  283. package/dist/test/pages/ResponsivePopover.html +1 -1
  284. package/dist/test/pages/SegmentedButton.html +1 -1
  285. package/dist/test/pages/Select.html +1 -1
  286. package/dist/test/pages/Simple.html +1 -1
  287. package/dist/test/pages/Slider.html +1 -1
  288. package/dist/test/pages/SplitButton.html +1 -1
  289. package/dist/test/pages/StepInput.html +1 -1
  290. package/dist/test/pages/Switch.html +1 -1
  291. package/dist/test/pages/TabContainer.html +1 -1
  292. package/dist/test/pages/Table-perf-pure.html +1 -1
  293. package/dist/test/pages/Table-perf.html +1 -1
  294. package/dist/test/pages/Table.html +1 -1
  295. package/dist/test/pages/Table2.html +1 -1
  296. package/dist/test/pages/TableAllPopin.html +1 -1
  297. package/dist/test/pages/TableCustomStyling.html +1 -1
  298. package/dist/test/pages/TableGrouping.html +1 -1
  299. package/dist/test/pages/TableGrowingWithButton.html +1 -1
  300. package/dist/test/pages/TableGrowingWithScroll.html +1 -1
  301. package/dist/test/pages/TableSelection.html +1 -1
  302. package/dist/test/pages/TextArea.html +1 -1
  303. package/dist/test/pages/TimePicker.html +1 -1
  304. package/dist/test/pages/TimePickerClock.html +1 -1
  305. package/dist/test/pages/TimeSelection.html +1 -1
  306. package/dist/test/pages/TimeSelectionClocks.html +1 -1
  307. package/dist/test/pages/Title.html +1 -1
  308. package/dist/test/pages/Toast.html +1 -1
  309. package/dist/test/pages/ToggleButton.html +1 -1
  310. package/dist/test/pages/Tokenizer.html +1 -1
  311. package/dist/test/pages/Tree.html +1 -1
  312. package/dist/test/pages/TreeDynamic.html +1 -1
  313. package/dist/test/pages/WheelSlider_Test_Page.html +1 -1
  314. package/dist/test/pages/base/AriaLabelHelper.html +1 -1
  315. package/dist/test/pages/base/DOMObserver.html +1 -1
  316. package/dist/test/pages/base/IconCollection.html +1 -1
  317. package/dist/test/pages/base/IconCollectionInCustomTheme.html +1 -1
  318. package/dist/test/pages/base/IgnoreCustomElements.html +1 -1
  319. package/dist/test/pages/base/InvisibleMessage.html +1 -1
  320. package/dist/test/pages/form.html +1 -1
  321. package/dist/test/pages/i18n-defaultLang.html +1 -1
  322. package/dist/test/pages/i18n-demo.html +1 -1
  323. package/package.json +7 -7
  324. package/src/i18n/messagebundle_ar.properties +1 -1
  325. package/src/i18n/messagebundle_bg.properties +1 -1
  326. package/src/i18n/messagebundle_ca.properties +1 -1
  327. package/src/i18n/messagebundle_cs.properties +1 -1
  328. package/src/i18n/messagebundle_cy.properties +1 -1
  329. package/src/i18n/messagebundle_da.properties +1 -1
  330. package/src/i18n/messagebundle_de.properties +1 -1
  331. package/src/i18n/messagebundle_el.properties +1 -1
  332. package/src/i18n/messagebundle_es.properties +1 -1
  333. package/src/i18n/messagebundle_es_MX.properties +1 -1
  334. package/src/i18n/messagebundle_et.properties +1 -1
  335. package/src/i18n/messagebundle_fi.properties +1 -1
  336. package/src/i18n/messagebundle_fr.properties +1 -1
  337. package/src/i18n/messagebundle_fr_CA.properties +1 -1
  338. package/src/i18n/messagebundle_hi.properties +1 -1
  339. package/src/i18n/messagebundle_hr.properties +1 -1
  340. package/src/i18n/messagebundle_hu.properties +1 -1
  341. package/src/i18n/messagebundle_id.properties +1 -1
  342. package/src/i18n/messagebundle_it.properties +1 -1
  343. package/src/i18n/messagebundle_iw.properties +1 -1
  344. package/src/i18n/messagebundle_ja.properties +1 -1
  345. package/src/i18n/messagebundle_kk.properties +1 -1
  346. package/src/i18n/messagebundle_ko.properties +1 -1
  347. package/src/i18n/messagebundle_lt.properties +1 -1
  348. package/src/i18n/messagebundle_lv.properties +1 -1
  349. package/src/i18n/messagebundle_ms.properties +1 -1
  350. package/src/i18n/messagebundle_nl.properties +1 -1
  351. package/src/i18n/messagebundle_no.properties +1 -1
  352. package/src/i18n/messagebundle_pl.properties +1 -1
  353. package/src/i18n/messagebundle_pt.properties +1 -1
  354. package/src/i18n/messagebundle_pt_PT.properties +1 -1
  355. package/src/i18n/messagebundle_ro.properties +1 -1
  356. package/src/i18n/messagebundle_ru.properties +2 -2
  357. package/src/i18n/messagebundle_sh.properties +1 -1
  358. package/src/i18n/messagebundle_sk.properties +1 -1
  359. package/src/i18n/messagebundle_sl.properties +1 -1
  360. package/src/i18n/messagebundle_sv.properties +1 -1
  361. package/src/i18n/messagebundle_th.properties +1 -1
  362. package/src/i18n/messagebundle_tr.properties +1 -1
  363. package/src/i18n/messagebundle_uk.properties +1 -1
  364. package/src/i18n/messagebundle_vi.properties +1 -1
  365. package/src/i18n/messagebundle_zh_CN.properties +1 -1
  366. package/src/i18n/messagebundle_zh_TW.properties +1 -1
  367. package/src/themes/sap_horizon_dark_exp/Avatar-parameters.css +54 -0
  368. package/src/themes/sap_horizon_dark_exp/Badge-parameters.css +43 -0
  369. package/src/themes/sap_horizon_dark_exp/Breadcrumbs-parameters.css +3 -0
  370. package/src/themes/sap_horizon_dark_exp/BusyIndicator-parameters.css +7 -0
  371. package/src/themes/sap_horizon_dark_exp/Button-parameters.css +19 -0
  372. package/src/themes/sap_horizon_dark_exp/CalendarHeader-parameters.css +19 -0
  373. package/src/themes/sap_horizon_dark_exp/Card-parameters.css +15 -0
  374. package/src/themes/sap_horizon_dark_exp/CheckBox-parameters.css +44 -0
  375. package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +21 -0
  376. package/src/themes/sap_horizon_dark_exp/ColorPicker-parameters.css +12 -0
  377. package/src/themes/sap_horizon_dark_exp/DatePicker-parameters.css +6 -0
  378. package/src/themes/sap_horizon_dark_exp/DayPicker-parameters.css +48 -0
  379. package/src/themes/sap_horizon_dark_exp/Dialog-parameters.css +11 -0
  380. package/src/themes/sap_horizon_dark_exp/FileUploader-parameters.css +5 -0
  381. package/src/themes/sap_horizon_dark_exp/GrowingButton-parameters.css +6 -0
  382. package/src/themes/sap_horizon_dark_exp/Icon-parameters.css +3 -0
  383. package/src/themes/sap_horizon_dark_exp/Input-parameters.css +32 -0
  384. package/src/themes/sap_horizon_dark_exp/InputIcon-parameters.css +24 -0
  385. package/src/themes/sap_horizon_dark_exp/Link-parameters.css +16 -0
  386. package/src/themes/sap_horizon_dark_exp/List-parameters.css +5 -0
  387. package/src/themes/sap_horizon_dark_exp/ListItemBase-parameters.css +5 -0
  388. package/src/themes/sap_horizon_dark_exp/Menu-parameters.css +5 -0
  389. package/src/themes/sap_horizon_dark_exp/MessageStrip-parameters.css +5 -0
  390. package/src/themes/sap_horizon_dark_exp/MonthPicker-parameters.css +16 -0
  391. package/src/themes/sap_horizon_dark_exp/MultiComboBox-parameters.css +5 -0
  392. package/src/themes/sap_horizon_dark_exp/Panel-parameters.css +14 -0
  393. package/src/themes/sap_horizon_dark_exp/PopupsCommon-parameters.css +6 -0
  394. package/src/themes/sap_horizon_dark_exp/RadioButton-parameters.css +19 -0
  395. package/src/themes/sap_horizon_dark_exp/RatingIndicator-parameters.css +17 -0
  396. package/src/themes/sap_horizon_dark_exp/SegmentedButtton-parameters.css +10 -0
  397. package/src/themes/sap_horizon_dark_exp/Select-parameters.css +5 -0
  398. package/src/themes/sap_horizon_dark_exp/SelectPopover-parameters.css +4 -0
  399. package/src/themes/sap_horizon_dark_exp/SliderBase-parameters.css +82 -0
  400. package/src/themes/sap_horizon_dark_exp/SplitButton-parameters.css +17 -0
  401. package/src/themes/sap_horizon_dark_exp/StepInput-parameters.css +25 -0
  402. package/src/themes/sap_horizon_dark_exp/Switch-parameters.css +148 -0
  403. package/src/themes/sap_horizon_dark_exp/TabContainer-parameters.css +38 -0
  404. package/src/themes/sap_horizon_dark_exp/Table-parameters.css +8 -0
  405. package/src/themes/sap_horizon_dark_exp/TableColumn-parameters.css +5 -0
  406. package/src/themes/sap_horizon_dark_exp/TableGroupRow-parameters.css +6 -0
  407. package/src/themes/sap_horizon_dark_exp/TableRow-parameters.css +5 -0
  408. package/src/themes/sap_horizon_dark_exp/TextArea-parameters.css +45 -0
  409. package/src/themes/sap_horizon_dark_exp/TimePicker-parameters.css +6 -0
  410. package/src/themes/sap_horizon_dark_exp/ToggleButton-parameters.css +1 -0
  411. package/src/themes/sap_horizon_dark_exp/Token-parameters.css +28 -0
  412. package/src/themes/sap_horizon_dark_exp/Tokenizer-parameters.css +5 -0
  413. package/src/themes/sap_horizon_dark_exp/TreeItem-parameters.css +6 -0
  414. package/src/themes/sap_horizon_dark_exp/ValueStateMessage-parameters.css +12 -0
  415. package/src/themes/sap_horizon_dark_exp/WheelSlider-parameters.css +19 -0
  416. package/src/themes/sap_horizon_dark_exp/YearPicker-parameters.css +15 -0
  417. package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +64 -0
  418. package/src/themes/sap_horizon_dark_exp/sizes-parameters.css +46 -0
  419. package/src/themes/sap_horizon_exp/Avatar-parameters.css +54 -0
  420. package/src/themes/sap_horizon_exp/AvatarGroup-parameters.css +5 -0
  421. package/src/themes/sap_horizon_exp/Badge-parameters.css +32 -80
  422. package/src/themes/sap_horizon_exp/Breadcrumbs-parameters.css +3 -0
  423. package/src/themes/sap_horizon_exp/BusyIndicator-parameters.css +7 -0
  424. package/src/themes/sap_horizon_exp/Button-parameters.css +7 -0
  425. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +11 -0
  426. package/src/themes/sap_horizon_exp/Card-parameters.css +15 -0
  427. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +41 -31
  428. package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +21 -0
  429. package/src/themes/sap_horizon_exp/ColorPicker-parameters.css +12 -0
  430. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +4 -3
  431. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +47 -2
  432. package/src/themes/sap_horizon_exp/Dialog-parameters.css +11 -0
  433. package/src/themes/sap_horizon_exp/FileUploader-parameters.css +5 -0
  434. package/src/themes/sap_horizon_exp/GrowingButton-parameters.css +6 -0
  435. package/src/themes/sap_horizon_exp/Icon-parameters.css +3 -0
  436. package/src/themes/sap_horizon_exp/Input-parameters.css +28 -34
  437. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +20 -9
  438. package/src/themes/sap_horizon_exp/Link-parameters.css +11 -2
  439. package/src/themes/sap_horizon_exp/List-parameters.css +1 -1
  440. package/src/themes/sap_horizon_exp/ListItemBase-parameters.css +5 -0
  441. package/src/themes/sap_horizon_exp/Menu-parameters.css +5 -0
  442. package/src/themes/sap_horizon_exp/MessageStrip-parameters.css +5 -0
  443. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +12 -1
  444. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +0 -2
  445. package/src/themes/sap_horizon_exp/Panel-parameters.css +9 -0
  446. package/src/themes/sap_horizon_exp/PopupsCommon-parameters.css +6 -0
  447. package/src/themes/sap_horizon_exp/ProgressIndicator-parameters.css +38 -0
  448. package/src/themes/sap_horizon_exp/ProgressIndicatorLayout-parameters.css +39 -0
  449. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +16 -26
  450. package/src/themes/sap_horizon_exp/RatingIndicator-parameters.css +3 -2
  451. package/src/themes/sap_horizon_exp/SegmentedButtton-parameters.css +10 -0
  452. package/src/themes/sap_horizon_exp/Select-parameters.css +1 -1
  453. package/src/themes/sap_horizon_exp/SelectPopover-parameters.css +4 -0
  454. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +71 -19
  455. package/src/themes/sap_horizon_exp/SplitButton-parameters.css +17 -0
  456. package/src/themes/sap_horizon_exp/StepInput-parameters.css +25 -0
  457. package/src/themes/sap_horizon_exp/Switch-parameters.css +147 -43
  458. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +28 -26
  459. package/src/themes/sap_horizon_exp/Table-parameters.css +8 -0
  460. package/src/themes/sap_horizon_exp/TableColumn-parameters.css +5 -0
  461. package/src/themes/sap_horizon_exp/TableGroupRow-parameters.css +6 -0
  462. package/src/themes/sap_horizon_exp/TableRow-parameters.css +5 -0
  463. package/src/themes/sap_horizon_exp/TextArea-parameters.css +45 -0
  464. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +1 -0
  465. package/src/themes/sap_horizon_exp/ToggleButton-parameters.css +1 -0
  466. package/src/themes/sap_horizon_exp/Token-parameters.css +22 -1
  467. package/src/themes/sap_horizon_exp/Tokenizer-parameters.css +5 -0
  468. package/src/themes/sap_horizon_exp/TreeItem-parameters.css +6 -0
  469. package/src/themes/sap_horizon_exp/ValueStateMessage-parameters.css +12 -0
  470. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +7 -4
  471. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +11 -1
  472. package/src/themes/sap_horizon_exp/parameters-bundle.css +35 -18
  473. package/src/themes/sap_horizon_exp/sizes-parameters.css +46 -0
  474. package/src/themes/sap_horizon_hcb_exp/Avatar-parameters.css +54 -0
  475. package/src/themes/sap_horizon_hcb_exp/Badge-parameters.css +43 -0
  476. package/src/themes/sap_horizon_hcb_exp/BusyIndicator-parameters.css +5 -0
  477. package/src/themes/sap_horizon_hcb_exp/Button-parameters.css +10 -0
  478. package/src/themes/sap_horizon_hcb_exp/CalendarHeader-parameters.css +11 -0
  479. package/src/themes/sap_horizon_hcb_exp/Card-parameters.css +11 -0
  480. package/src/themes/sap_horizon_hcb_exp/Carousel-parameters.css +9 -0
  481. package/src/themes/sap_horizon_hcb_exp/CheckBox-parameters.css +45 -0
  482. package/src/themes/sap_horizon_hcb_exp/ColorPicker-parameters.css +10 -0
  483. package/src/themes/sap_horizon_hcb_exp/DatePicker-parameters.css +5 -0
  484. package/src/themes/sap_horizon_hcb_exp/DayPicker-parameters.css +44 -0
  485. package/src/themes/sap_horizon_hcb_exp/Dialog-parameters.css +10 -0
  486. package/src/themes/sap_horizon_hcb_exp/FileUploader-parameters.css +6 -0
  487. package/src/themes/sap_horizon_hcb_exp/GrowingButton-parameters.css +8 -0
  488. package/src/themes/sap_horizon_hcb_exp/Input-parameters.css +32 -0
  489. package/src/themes/sap_horizon_hcb_exp/InputIcon-parameters.css +11 -0
  490. package/src/themes/sap_horizon_hcb_exp/Link-parameters.css +12 -0
  491. package/src/themes/sap_horizon_hcb_exp/ListItem-parameters.css +3 -0
  492. package/src/themes/sap_horizon_hcb_exp/Menu-parameters.css +5 -0
  493. package/src/themes/sap_horizon_hcb_exp/MessageStrip-parameters.css +10 -0
  494. package/src/themes/sap_horizon_hcb_exp/MonthPicker-parameters.css +12 -0
  495. package/src/themes/sap_horizon_hcb_exp/Panel-parameters.css +10 -0
  496. package/src/themes/sap_horizon_hcb_exp/PopupsCommon-parameters.css +6 -0
  497. package/src/themes/sap_horizon_hcb_exp/ProgressIndicator-parameters.css +21 -0
  498. package/src/themes/sap_horizon_hcb_exp/RadioButton-parameters.css +17 -0
  499. package/src/themes/sap_horizon_hcb_exp/RatingIndicator-parameters.css +16 -0
  500. package/src/themes/sap_horizon_hcb_exp/SegmentedButtton-parameters.css +9 -0
  501. package/src/themes/sap_horizon_hcb_exp/Select-parameters.css +10 -0
  502. package/src/themes/sap_horizon_hcb_exp/SliderBase-parameters.css +79 -0
  503. package/src/themes/sap_horizon_hcb_exp/SplitButton-parameters.css +12 -0
  504. package/src/themes/sap_horizon_hcb_exp/Switch-parameters.css +144 -0
  505. package/src/themes/sap_horizon_hcb_exp/TabContainer-parameters.css +49 -0
  506. package/src/themes/sap_horizon_hcb_exp/Table-parameters.css +9 -0
  507. package/src/themes/sap_horizon_hcb_exp/TableGroupRow-parameters.css +6 -0
  508. package/src/themes/sap_horizon_hcb_exp/TableRow-parameters.css +5 -0
  509. package/src/themes/sap_horizon_hcb_exp/TextArea-parameters.css +42 -0
  510. package/src/themes/sap_horizon_hcb_exp/TimePicker-parameters.css +5 -0
  511. package/src/themes/sap_horizon_hcb_exp/ToggleButton-parameters.css +1 -0
  512. package/src/themes/sap_horizon_hcb_exp/Token-parameters.css +17 -0
  513. package/src/themes/sap_horizon_hcb_exp/TreeItem-parameters.css +6 -0
  514. package/src/themes/sap_horizon_hcb_exp/ValueStateMessage-parameters.css +13 -0
  515. package/src/themes/sap_horizon_hcb_exp/WheelSlider-parameters.css +17 -0
  516. package/src/themes/sap_horizon_hcb_exp/YearPicker-parameters.css +12 -0
  517. package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +57 -0
  518. package/src/themes/sap_horizon_hcb_exp/sizes-parameters.css +9 -0
  519. package/src/themes/sap_horizon_hcw_exp/Avatar-parameters.css +54 -0
  520. package/src/themes/sap_horizon_hcw_exp/Badge-parameters.css +43 -0
  521. package/src/themes/sap_horizon_hcw_exp/BusyIndicator-parameters.css +5 -0
  522. package/src/themes/sap_horizon_hcw_exp/Button-parameters.css +10 -0
  523. package/src/themes/sap_horizon_hcw_exp/CalendarHeader-parameters.css +11 -0
  524. package/src/themes/sap_horizon_hcw_exp/Card-parameters.css +11 -0
  525. package/src/themes/sap_horizon_hcw_exp/Carousel-parameters.css +9 -0
  526. package/src/themes/sap_horizon_hcw_exp/CheckBox-parameters.css +45 -0
  527. package/src/themes/sap_horizon_hcw_exp/ColorPicker-parameters.css +10 -0
  528. package/src/themes/sap_horizon_hcw_exp/DatePicker-parameters.css +5 -0
  529. package/src/themes/sap_horizon_hcw_exp/DayPicker-parameters.css +46 -0
  530. package/src/themes/sap_horizon_hcw_exp/Dialog-parameters.css +10 -0
  531. package/src/themes/sap_horizon_hcw_exp/FileUploader-parameters.css +6 -0
  532. package/src/themes/sap_horizon_hcw_exp/GrowingButton-parameters.css +8 -0
  533. package/src/themes/sap_horizon_hcw_exp/Input-parameters.css +32 -0
  534. package/src/themes/sap_horizon_hcw_exp/InputIcon-parameters.css +11 -0
  535. package/src/themes/sap_horizon_hcw_exp/Link-parameters.css +12 -0
  536. package/src/themes/sap_horizon_hcw_exp/ListItem-parameters.css +3 -0
  537. package/src/themes/sap_horizon_hcw_exp/Menu-parameters.css +5 -0
  538. package/src/themes/sap_horizon_hcw_exp/MessageStrip-parameters.css +10 -0
  539. package/src/themes/sap_horizon_hcw_exp/MonthPicker-parameters.css +12 -0
  540. package/src/themes/sap_horizon_hcw_exp/Panel-parameters.css +11 -0
  541. package/src/themes/sap_horizon_hcw_exp/PopupsCommon-parameters.css +6 -0
  542. package/src/themes/sap_horizon_hcw_exp/RadioButton-parameters.css +21 -0
  543. package/src/themes/sap_horizon_hcw_exp/RatingIndicator-parameters.css +16 -0
  544. package/src/themes/sap_horizon_hcw_exp/SegmentedButtton-parameters.css +9 -0
  545. package/src/themes/sap_horizon_hcw_exp/Select-parameters.css +10 -0
  546. package/src/themes/sap_horizon_hcw_exp/SliderBase-parameters.css +80 -0
  547. package/src/themes/sap_horizon_hcw_exp/SplitButton-parameters.css +12 -0
  548. package/src/themes/sap_horizon_hcw_exp/Switch-parameters.css +149 -0
  549. package/src/themes/sap_horizon_hcw_exp/TabContainer-parameters.css +49 -0
  550. package/src/themes/sap_horizon_hcw_exp/Table-parameters.css +9 -0
  551. package/src/themes/sap_horizon_hcw_exp/TableGroupRow-parameters.css +6 -0
  552. package/src/themes/sap_horizon_hcw_exp/TableRow-parameters.css +5 -0
  553. package/src/themes/sap_horizon_hcw_exp/TextArea-parameters.css +42 -0
  554. package/src/themes/sap_horizon_hcw_exp/TimePicker-parameters.css +5 -0
  555. package/src/themes/sap_horizon_hcw_exp/ToggleButton-parameters.css +1 -0
  556. package/src/themes/sap_horizon_hcw_exp/Token-parameters.css +17 -0
  557. package/src/themes/sap_horizon_hcw_exp/TreeItem-parameters.css +6 -0
  558. package/src/themes/sap_horizon_hcw_exp/ValueStateMessage-parameters.css +13 -0
  559. package/src/themes/sap_horizon_hcw_exp/WheelSlider-parameters.css +17 -0
  560. package/src/themes/sap_horizon_hcw_exp/YearPicker-parameters.css +12 -0
  561. package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +57 -0
  562. package/src/themes/sap_horizon_hcw_exp/sizes-parameters.css +9 -0
  563. package/dist/assets/messagebundle_ar.38fc245f.js +0 -1
  564. package/dist/assets/messagebundle_bg.e37d62ed.js +0 -1
  565. package/dist/assets/messagebundle_ca.a3087412.js +0 -1
  566. package/dist/assets/messagebundle_cs.8201ca03.js +0 -1
  567. package/dist/assets/messagebundle_da.945e42db.js +0 -1
  568. package/dist/assets/messagebundle_de.bb305427.js +0 -1
  569. package/dist/assets/messagebundle_el.a36dfdb0.js +0 -1
  570. package/dist/assets/messagebundle_es.e3a4852e.js +0 -1
  571. package/dist/assets/messagebundle_es_MX.9cca1c08.js +0 -1
  572. package/dist/assets/messagebundle_et.a0ba005f.js +0 -1
  573. package/dist/assets/messagebundle_fi.f63fc946.js +0 -1
  574. package/dist/assets/messagebundle_fr.8e446595.js +0 -1
  575. package/dist/assets/messagebundle_fr_CA.ec2d54be.js +0 -1
  576. package/dist/assets/messagebundle_hi.4d509425.js +0 -1
  577. package/dist/assets/messagebundle_hr.c54f0729.js +0 -1
  578. package/dist/assets/messagebundle_hu.d604f66c.js +0 -1
  579. package/dist/assets/messagebundle_it.8ec36217.js +0 -1
  580. package/dist/assets/messagebundle_iw.977d877f.js +0 -1
  581. package/dist/assets/messagebundle_ja.b8fb62f3.js +0 -1
  582. package/dist/assets/messagebundle_kk.fb530aff.js +0 -1
  583. package/dist/assets/messagebundle_ko.d0e0041a.js +0 -1
  584. package/dist/assets/messagebundle_lt.890220d5.js +0 -1
  585. package/dist/assets/messagebundle_lv.ee598ceb.js +0 -1
  586. package/dist/assets/messagebundle_ms.1287d1a7.js +0 -1
  587. package/dist/assets/messagebundle_nl.08d4eee5.js +0 -1
  588. package/dist/assets/messagebundle_no.7c8de9d3.js +0 -1
  589. package/dist/assets/messagebundle_pl.58636cbe.js +0 -1
  590. package/dist/assets/messagebundle_ro.05bb3fb8.js +0 -1
  591. package/dist/assets/messagebundle_ru.f0d249d9.js +0 -1
  592. package/dist/assets/messagebundle_sh.1e6cd04e.js +0 -1
  593. package/dist/assets/messagebundle_sk.a79dfced.js +0 -1
  594. package/dist/assets/messagebundle_sl.b30f0404.js +0 -1
  595. package/dist/assets/messagebundle_sv.17a648bd.js +0 -1
  596. package/dist/assets/messagebundle_th.ed642bdf.js +0 -1
  597. package/dist/assets/messagebundle_tr.313c5258.js +0 -1
  598. package/dist/assets/messagebundle_uk.b372813e.js +0 -1
  599. package/dist/assets/messagebundle_vi.9a2c9ebf.js +0 -1
  600. package/dist/assets/messagebundle_zh_CN.e61c89fe.js +0 -1
  601. package/dist/assets/messagebundle_zh_TW.f9bbb34a.js +0 -1
  602. package/src/themes/sap_horizon_exp/Popover-parameters.css +0 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.17.0-rc.0](https://github.com/SAP/ui5-webcomponents/compare/v1.16.0...v1.17.0-rc.0) (2023-08-10)
7
+
8
+
9
+ ### Features
10
+
11
+ * **ui5-menu:** add delay between opening and closing submenu and sub menu items ([#7246](https://github.com/SAP/ui5-webcomponents/issues/7246)) ([b46eda5](https://github.com/SAP/ui5-webcomponents/commit/b46eda5a6dccc9b783d40fc33353c6e08b4652e7))
12
+
13
+
14
+
15
+
16
+
6
17
  # [1.16.0](https://github.com/SAP/ui5-webcomponents/compare/v1.16.0-rc.4...v1.16.0) (2023-08-03)
7
18
 
8
19
  **Note:** Version bump only for package @ui5/webcomponents
@@ -58,15 +58,6 @@ declare class BusyIndicator extends UI5Element {
58
58
  /**
59
59
  * Defines the size of the component.
60
60
  *
61
- * <br><br>
62
- * <b>Note:</b>
63
- *
64
- * <ul>
65
- * <li><code>Small</code></li>
66
- * <li><code>Medium</code></li>
67
- * <li><code>Large</code></li>
68
- * </ul>
69
- *
70
61
  * @type {sap.ui.webc.main.types.BusyIndicatorSize}
71
62
  * @name sap.ui.webc.main.BusyIndicator.prototype.size
72
63
  * @defaultvalue "Medium"
@@ -1 +1 @@
1
- {"version":3,"file":"BusyIndicator.js","sourceRoot":"","sources":["../src/BusyIndicator.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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isTabNext } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport BusyIndicatorSize from \"./types/BusyIndicatorSize.js\";\nimport Label from \"./Label.js\";\n\n// Template\nimport BusyIndicatorTemplate from \"./generated/templates/BusyIndicatorTemplate.lit.js\";\n\nimport { BUSY_INDICATOR_TITLE } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport busyIndicatorCss from \"./generated/themes/BusyIndicator.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-busy-indicator</code> signals that some operation is going on and that the\n * user must wait. It does not block the current UI screen so other operations could be triggered in parallel.\n * It displays 3 dots and each dot expands and shrinks at a different rate, resulting in a cascading flow of animation.\n *\n * <h3>Usage</h3>\n * For the <code>ui5-busy-indicator</code> you can define the size, the text and whether it is shown or hidden.\n * In order to hide it, use the \"active\" property.\n * <br><br>\n * In order to show busy state over an HTML element, simply nest the HTML element in a <code>ui5-busy-indicator</code> instance.\n * <br>\n * <b>Note:</b> Since <code>ui5-busy-indicator</code> has <code>display: inline-block;</code> by default and no width of its own,\n * whenever you need to wrap a block-level element, you should set <code>display: block</code> to the busy indicator as well.\n *\n * <h4>When to use:</h4>\n * <ul>\n * <li>The user needs to be able to cancel the operation.</li>\n * <li>Only part of the application or a particular component is affected.</li>\n * </ul>\n *\n * <h4>When not to use:</h4>\n * <ul>\n * <li>The operation takes less than one second.</li>\n * <li>You need to block the screen and prevent the user from starting another activity.</li>\n * <li>Do not show multiple busy indicators at once.</li>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/BusyIndicator\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.BusyIndicator\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-busy-indicator\n * @public\n * @since 0.12.0\n */\n@customElement({\n\ttag: \"ui5-busy-indicator\",\n\tlanguageAware: true,\n\tstyles: busyIndicatorCss,\n\trenderer: litRender,\n\ttemplate: BusyIndicatorTemplate,\n\tdependencies: [Label],\n})\nclass BusyIndicator extends UI5Element {\n\t/**\n\t * Defines text to be displayed below the component. It can be used to inform the user of the current operation.\n\t * @type {string}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.text\n\t * @public\n\t * @defaultvalue \"\"\n\t * @since 1.0.0-rc.7\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the size of the component.\n\t *\n\t * <br><br>\n\t * <b>Note:</b>\n\t *\n\t * <ul>\n\t * <li><code>Small</code></li>\n\t * <li><code>Medium</code></li>\n\t * <li><code>Large</code></li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.BusyIndicatorSize}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.size\n\t * @defaultvalue \"Medium\"\n\t * @public\n\t */\n\t@property({ type: BusyIndicatorSize, defaultValue: BusyIndicatorSize.Medium })\n\tsize!: `${BusyIndicatorSize}`;\n\n\t/**\n\t * Defines if the busy indicator is visible on the screen. By default it is not.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.active\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the busy indicator will be visible on the screen.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.delay\n\t * @defaultValue 1000\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1000 })\n\tdelay!: number;\n\n\t/**\n\t * Defines if the component is currently in busy state.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isBusy!: boolean;\n\n\t/**\n\t * Determines the content over which the component will appear.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_keydownHandler: (e: KeyboardEvent) => void;\n\t_preventEventHandler: (e: KeyboardEvent) => void;\n\t_busyTimeoutId?: Timeout;\n\tfocusForward?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._keydownHandler = this._handleKeydown.bind(this);\n\t\tthis._preventEventHandler = this._preventEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tthis.addEventListener(\"keydown\", this._keydownHandler, {\n\t\t\tcapture: true,\n\t\t});\n\t\tthis.addEventListener(\"keyup\", this._preventEventHandler, {\n\t\t\tcapture: true,\n\t\t});\n\t}\n\n\tonExitDOM() {\n\t\tif (this._busyTimeoutId) {\n\t\t\tclearTimeout(this._busyTimeoutId);\n\t\t\tdelete this._busyTimeoutId;\n\t\t}\n\n\t\tthis.removeEventListener(\"keydown\", this._keydownHandler, true);\n\t\tthis.removeEventListener(\"keyup\", this._preventEventHandler, true);\n\t}\n\n\tstatic async onDefine() {\n\t\tBusyIndicator.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget ariaTitle() {\n\t\treturn BusyIndicator.i18nBundle.getText(BUSY_INDICATOR_TITLE);\n\t}\n\n\tget labelId() {\n\t\treturn this.text ? `${this._id}-label` : undefined;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-busy-indicator-root\": true,\n\t\t\t},\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.active) {\n\t\t\tif (!this._isBusy && !this._busyTimeoutId) {\n\t\t\t\tthis._busyTimeoutId = setTimeout(() => {\n\t\t\t\t\tdelete this._busyTimeoutId;\n\t\t\t\t\tthis._isBusy = true;\n\t\t\t\t}, Math.max(0, this.delay));\n\t\t\t}\n\t\t} else {\n\t\t\tif (this._busyTimeoutId) {\n\t\t\t\tclearTimeout(this._busyTimeoutId);\n\t\t\t\tdelete this._busyTimeoutId;\n\t\t\t}\n\t\t\tthis._isBusy = false;\n\t\t}\n\t}\n\n\t_handleKeydown(e: KeyboardEvent) {\n\t\tif (!this._isBusy) {\n\t\t\treturn;\n\t\t}\n\n\t\te.stopImmediatePropagation();\n\n\t\t// move the focus to the last element in this DOM and let TAB continue to the next focusable element\n\t\tif (isTabNext(e)) {\n\t\t\tthis.focusForward = true;\n\t\t\tthis.shadowRoot!.querySelector<HTMLElement>(\"[data-ui5-focus-redirect]\")!.focus();\n\t\t\tthis.focusForward = false;\n\t\t}\n\t}\n\n\t_preventEvent(e: KeyboardEvent) {\n\t\tif (this._isBusy) {\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\t}\n\n\t/**\n\t * Moves the focus to busy area when coming with SHIFT + TAB\n\t */\n\t_redirectFocus(e: FocusEvent) {\n\t\tif (this.focusForward) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tthis.shadowRoot!.querySelector<HTMLElement>(\".ui5-busy-indicator-busy-area\")!.focus();\n\t}\n}\n\nBusyIndicator.define();\n\nexport default BusyIndicator;\n"]}
1
+ {"version":3,"file":"BusyIndicator.js","sourceRoot":"","sources":["../src/BusyIndicator.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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isTabNext } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport BusyIndicatorSize from \"./types/BusyIndicatorSize.js\";\nimport Label from \"./Label.js\";\n\n// Template\nimport BusyIndicatorTemplate from \"./generated/templates/BusyIndicatorTemplate.lit.js\";\n\nimport { BUSY_INDICATOR_TITLE } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport busyIndicatorCss from \"./generated/themes/BusyIndicator.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-busy-indicator</code> signals that some operation is going on and that the\n * user must wait. It does not block the current UI screen so other operations could be triggered in parallel.\n * It displays 3 dots and each dot expands and shrinks at a different rate, resulting in a cascading flow of animation.\n *\n * <h3>Usage</h3>\n * For the <code>ui5-busy-indicator</code> you can define the size, the text and whether it is shown or hidden.\n * In order to hide it, use the \"active\" property.\n * <br><br>\n * In order to show busy state over an HTML element, simply nest the HTML element in a <code>ui5-busy-indicator</code> instance.\n * <br>\n * <b>Note:</b> Since <code>ui5-busy-indicator</code> has <code>display: inline-block;</code> by default and no width of its own,\n * whenever you need to wrap a block-level element, you should set <code>display: block</code> to the busy indicator as well.\n *\n * <h4>When to use:</h4>\n * <ul>\n * <li>The user needs to be able to cancel the operation.</li>\n * <li>Only part of the application or a particular component is affected.</li>\n * </ul>\n *\n * <h4>When not to use:</h4>\n * <ul>\n * <li>The operation takes less than one second.</li>\n * <li>You need to block the screen and prevent the user from starting another activity.</li>\n * <li>Do not show multiple busy indicators at once.</li>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/BusyIndicator\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.BusyIndicator\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-busy-indicator\n * @public\n * @since 0.12.0\n */\n@customElement({\n\ttag: \"ui5-busy-indicator\",\n\tlanguageAware: true,\n\tstyles: busyIndicatorCss,\n\trenderer: litRender,\n\ttemplate: BusyIndicatorTemplate,\n\tdependencies: [Label],\n})\nclass BusyIndicator extends UI5Element {\n\t/**\n\t * Defines text to be displayed below the component. It can be used to inform the user of the current operation.\n\t * @type {string}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.text\n\t * @public\n\t * @defaultvalue \"\"\n\t * @since 1.0.0-rc.7\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the size of the component.\n\t *\n\t * @type {sap.ui.webc.main.types.BusyIndicatorSize}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.size\n\t * @defaultvalue \"Medium\"\n\t * @public\n\t */\n\t@property({ type: BusyIndicatorSize, defaultValue: BusyIndicatorSize.Medium })\n\tsize!: `${BusyIndicatorSize}`;\n\n\t/**\n\t * Defines if the busy indicator is visible on the screen. By default it is not.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.active\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the busy indicator will be visible on the screen.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.delay\n\t * @defaultValue 1000\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1000 })\n\tdelay!: number;\n\n\t/**\n\t * Defines if the component is currently in busy state.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isBusy!: boolean;\n\n\t/**\n\t * Determines the content over which the component will appear.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.BusyIndicator.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_keydownHandler: (e: KeyboardEvent) => void;\n\t_preventEventHandler: (e: KeyboardEvent) => void;\n\t_busyTimeoutId?: Timeout;\n\tfocusForward?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._keydownHandler = this._handleKeydown.bind(this);\n\t\tthis._preventEventHandler = this._preventEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tthis.addEventListener(\"keydown\", this._keydownHandler, {\n\t\t\tcapture: true,\n\t\t});\n\t\tthis.addEventListener(\"keyup\", this._preventEventHandler, {\n\t\t\tcapture: true,\n\t\t});\n\t}\n\n\tonExitDOM() {\n\t\tif (this._busyTimeoutId) {\n\t\t\tclearTimeout(this._busyTimeoutId);\n\t\t\tdelete this._busyTimeoutId;\n\t\t}\n\n\t\tthis.removeEventListener(\"keydown\", this._keydownHandler, true);\n\t\tthis.removeEventListener(\"keyup\", this._preventEventHandler, true);\n\t}\n\n\tstatic async onDefine() {\n\t\tBusyIndicator.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget ariaTitle() {\n\t\treturn BusyIndicator.i18nBundle.getText(BUSY_INDICATOR_TITLE);\n\t}\n\n\tget labelId() {\n\t\treturn this.text ? `${this._id}-label` : undefined;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-busy-indicator-root\": true,\n\t\t\t},\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.active) {\n\t\t\tif (!this._isBusy && !this._busyTimeoutId) {\n\t\t\t\tthis._busyTimeoutId = setTimeout(() => {\n\t\t\t\t\tdelete this._busyTimeoutId;\n\t\t\t\t\tthis._isBusy = true;\n\t\t\t\t}, Math.max(0, this.delay));\n\t\t\t}\n\t\t} else {\n\t\t\tif (this._busyTimeoutId) {\n\t\t\t\tclearTimeout(this._busyTimeoutId);\n\t\t\t\tdelete this._busyTimeoutId;\n\t\t\t}\n\t\t\tthis._isBusy = false;\n\t\t}\n\t}\n\n\t_handleKeydown(e: KeyboardEvent) {\n\t\tif (!this._isBusy) {\n\t\t\treturn;\n\t\t}\n\n\t\te.stopImmediatePropagation();\n\n\t\t// move the focus to the last element in this DOM and let TAB continue to the next focusable element\n\t\tif (isTabNext(e)) {\n\t\t\tthis.focusForward = true;\n\t\t\tthis.shadowRoot!.querySelector<HTMLElement>(\"[data-ui5-focus-redirect]\")!.focus();\n\t\t\tthis.focusForward = false;\n\t\t}\n\t}\n\n\t_preventEvent(e: KeyboardEvent) {\n\t\tif (this._isBusy) {\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\t}\n\n\t/**\n\t * Moves the focus to busy area when coming with SHIFT + TAB\n\t */\n\t_redirectFocus(e: FocusEvent) {\n\t\tif (this.focusForward) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\t\tthis.shadowRoot!.querySelector<HTMLElement>(\".ui5-busy-indicator-busy-area\")!.focus();\n\t}\n}\n\nBusyIndicator.define();\n\nexport default BusyIndicator;\n"]}
@@ -189,13 +189,9 @@ declare class Carousel extends UI5Element {
189
189
  * <br><br>
190
190
  * Available options are:
191
191
  * <ul>
192
- * <li><code>Content</code></li>
193
- * <li><code>Navigation</code></li>
192
+ * <li><code>Content</code> - the arrows are placed on the sides of the current page.</li>
193
+ * <li><code>Navigation</code> - the arrows are placed on the sides of the page indicator.</li>
194
194
  * </ul>
195
- * <br>
196
- * When set to "Content", the arrows are placed on the sides of the current page.
197
- * <br>
198
- * When set to "Navigation", the arrows are placed on the sides of the page indicator.
199
195
  * @type {sap.ui.webc.main.types.CarouselArrowsPlacement}
200
196
  * @name sap.ui.webc.main.Carousel.prototype.arrowsPlacement
201
197
  * @defaultvalue "Content"
@@ -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.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisDown,\n\tisUp,\n\tisF7,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.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 {\n\tCAROUSEL_OF_TEXT,\n\tCAROUSEL_DOT_TEXT,\n\tCAROUSEL_PREVIOUS_ARROW_TEXT,\n\tCAROUSEL_NEXT_ARROW_TEXT,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CarouselArrowsPlacement from \"./types/CarouselArrowsPlacement.js\";\nimport CarouselPageIndicatorStyle from \"./types/CarouselPageIndicatorStyle.js\";\nimport BackgroundDesign from \"./types/BackgroundDesign.js\";\nimport BorderDesign from \"./types/BorderDesign.js\";\nimport CarouselTemplate from \"./generated/templates/CarouselTemplate.lit.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nimport Button from \"./Button.js\";\nimport Label from \"./Label.js\";\n\n// Styles\nimport CarouselCss from \"./generated/themes/Carousel.css.js\";\n\ntype CarouselNavigateEventDetail = {\n\tselectedIndex: number;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\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 * <br>\n * There are several ways to perform navigation:\n * <ul>\n * <li>on desktop - the user can navigate using the navigation arrows or with keyboard shorcuts.</li>\n * <li>on mobile - the user can use swipe gestures.</li>\n * </ul>\n *\n * <h3>Usage</h3>\n *\n * <h4>When to use:</h4>\n *\n * <ul>\n * <li>The items you want to display are very different from each other.</li>\n * <li>You want to display the items one after the other.</li>\n * </ul>\n *\n * <h4>When not to use:</h4>\n *\n * <ul>\n * <li>The items you want to display need to be visible at the same time.</li>\n * <li>The items you want to display are uniform and very similar.</li>\n * </ul>\n *\n * <h3>Keyboard Handling</h3>\n *\n * <h4>Basic Navigation</h4>\n * When the <code>ui5-carousel</code> is focused the user can navigate between the items\n * with the following keyboard shortcuts:\n * <br>\n * <ul>\n * <li>[UP/DOWN] - Navigates to previous and next item</li>\n * <li>[LEFT/RIGHT] - Navigates to previous and next item</li>\n * </ul>\n *\n * <h3>Fast Navigation</h3>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n * <h3>CSS Shadow Parts</h3>\n *\n * <ui5-link target=\"_blank\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/::part\">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.\n * <br>\n * The <code>ui5-carousel</code> exposes the following CSS Shadow Parts:\n * <ul>\n * <li>content - Used to style the content of the component</li>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Carousel.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Carousel\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-carousel\n * @since 1.0.0-rc.6\n * @public\n */\n@customElement({\n\ttag: \"ui5-carousel\",\n\tlanguageAware: true,\n\tfastNavigation: true,\n\trenderer: litRender,\n\tstyles: CarouselCss,\n\ttemplate: CarouselTemplate,\n\tdependencies: [\n\t\tButton,\n\t\tLabel,\n\t],\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 <code>items-per-page-l</code>, <code>items-per-page-m</code> and <code>items-per-page-s</code> properties.\n *\n * @event sap.ui.webc.main.Carousel#navigate\n * @param {Integer} selectedIndex the current selected index\n * @public\n * @since 1.0.0-rc.7\n */\n@event(\"navigate\", {\n\tdetail: {\n\t\tselectedIndex: { type: Integer },\n\t},\n})\n\nclass Carousel extends UI5Element {\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 * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.cyclic\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tcyclic!: boolean;\n\n\t/**\n\t * Defines the number of items per page on small size (up to 640px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageS\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageS!: number;\n\n\t/**\n\t * Defines the number of items per page on medium size (from 640px to 1024px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageM\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageM!: number;\n\n\t/**\n\t * Defines the number of items per page on large size (more than 1024px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageL\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageL!: number;\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 * <br><br>\n\t * <b>Note:</b> The navigation arrows are never displayed on touch devices.\n\t * In this case, the user can swipe to navigate through the items.\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.hideNavigationArrows\n\t * @since 1.0.0-rc.15\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideNavigationArrows!: boolean;\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 * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.hidePageIndicator\n\t * @since 1.0.0-rc.15\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thidePageIndicator!: boolean;\n\n\t/**\n\t * Defines the style of the page indicator.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>Default</code> - 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)</li>\n\t * <li><code>Numeric</code> - The page indicator will display the current page and the total number of pages. (e.g. X of Y)</li>\n\t * </ul>\n\t * @type {sap.ui.webc.main.types.CarouselPageIndicatorStyle}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorStyle\n\t * @since 1.10\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: CarouselPageIndicatorStyle, defaultValue: CarouselPageIndicatorStyle.Default })\n\tpageIndicatorStyle!: `${CarouselPageIndicatorStyle}`;\n\n\t/**\n\t * Defines the carousel's background design.\n\t * @type {sap.ui.webc.main.types.BackgroundDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.backgroundDesign\n\t * @since 1.14\n\t * @defaultvalue \"Translucent\"\n\t * @public\n\t */\n\t@property({ type: BackgroundDesign, defaultValue: BackgroundDesign.Translucent })\n\tbackgroundDesign!: BackgroundDesign;\n\n\t/**\n\t * Defines the page indicator background design.\n\t * @type {sap.ui.webc.main.types.BackgroundDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorBackgroundDesign\n\t * @since 1.14\n\t * @defaultvalue \"Solid\"\n\t * @public\n\t */\n\t@property({ type: BackgroundDesign, defaultValue: BackgroundDesign.Solid })\n\tpageIndicatorBackgroundDesign!: BackgroundDesign;\n\n\t/**\n\t * Defines the page indicator border design.\n\t * @type {sap.ui.webc.main.types.BorderDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorBorderDesign\n\t * @since 1.14\n\t * @defaultvalue \"Solid\"\n\t * @public\n\t */\n\t@property({ type: BorderDesign, defaultValue: BorderDesign.Solid })\n\tpageIndicatorBorderDesign!: BorderDesign;\n\n\t/**\n\t * Defines the index of the initially selected item.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype._selectedIndex\n\t * @defaultvalue 0\n\t * @private\n\t */\n\t@property({ validator: Integer, defaultValue: 0 })\n\t_selectedIndex!: number;\n\n\t/**\n\t * Defines the position of arrows.\n\t * <br><br>\n\t * Available options are:\n\t * <ul>\n\t * <li><code>Content</code></li>\n\t * <li><code>Navigation</code></li>\n\t * </ul>\n\t * <br>\n\t * When set to \"Content\", the arrows are placed on the sides of the current page.\n\t * <br>\n\t * When set to \"Navigation\", the arrows are placed on the sides of the page indicator.\n\t * @type {sap.ui.webc.main.types.CarouselArrowsPlacement}\n\t * @name sap.ui.webc.main.Carousel.prototype.arrowsPlacement\n\t * @defaultvalue \"Content\"\n\t * @public\n\t */\n\t@property({ type: CarouselArrowsPlacement, defaultValue: CarouselArrowsPlacement.Content })\n\tarrowsPlacement!: `${CarouselArrowsPlacement}`;\n\n\t/**\n\t * Defines the carousel width in pixels.\n\t * @private\n\t */\n\t@property({ validator: Integer })\n\t_width?: number;\n\n\t/**\n\t * Defines the carousel item width in pixels.\n\t * @private\n\t */\n\t@property({ validator: Integer })\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!: boolean;\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 * @type {HTMLElement[]}\n\t * @slot\n\t * @name sap.ui.webc.main.Carousel.prototype.default\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, individualSlots: true })\n\tcontent!: Array<HTMLElement>;\n\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) {\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}\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.fireEvent<CarouselNavigateEventDetail>(\"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.fireEvent<CarouselNavigateEventDetail>(\"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.fireEvent<CarouselNavigateEventDetail>(\"navigate\", { selectedIndex: this._selectedIndex });\n\t\t}\n\t}\n\n\t_navButtonClick(e: MouseEvent) {\n\t\tconst button = e.target as Button;\n\t\tif (button.hasAttribute(\"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 {Integer} itemIndex The index of the target page\n\t * @since 1.0.0-rc.15\n\t * @method\n\t * @name sap.ui.webc.main.Carousel#navigateTo\n\t * @public\n\t */\n\tnavigateTo(itemIndex: number) {\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() {\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\tstyles: {\n\t\t\t\t\twidth: `${this._itemWidth || 0}px`,\n\t\t\t\t},\n\t\t\t\tclasses: visible ? \"\" : \"ui5-carousel-item--hidden\",\n\t\t\t};\n\t\t});\n\t}\n\n\tget effectiveItemsPerPage(): number {\n\t\tif (!this._width) {\n\t\t\treturn this.itemsPerPageL;\n\t\t}\n\n\t\tif (this._width <= 640) {\n\t\t\treturn this.itemsPerPageS;\n\t\t}\n\n\t\tif (this._width <= 1024) {\n\t\t\treturn this.itemsPerPageM;\n\t\t}\n\n\t\treturn this.itemsPerPageL;\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 styles() {\n\t\tconst items = this._itemWidth || 0;\n\t\treturn {\n\t\t\tcontent: {\n\t\t\t\ttransform: `translateX(${this._isRTL ? \"\" : \"-\"}${this._selectedIndex * items}px`,\n\t\t\t},\n\t\t};\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\tnavPrevButton: {\n\t\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasPrev,\n\t\t\t},\n\t\t\tnavNextButton: {\n\t\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasNext,\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.pageIndicatorStyle === CarouselPageIndicatorStyle.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 && isDesktop();\n\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 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\t/**\n\t * The indices of the currently visible items of the component.\n\t * @public\n\t * @readonly\n\t * @since 1.0.0-rc.15\n\t * @returns {Integer[]} the indices of the visible items\n\t */\n\tget visibleItemsIndices() {\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\tstatic async onDefine() {\n\t\tCarousel.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\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":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisDown,\n\tisUp,\n\tisF7,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.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 {\n\tCAROUSEL_OF_TEXT,\n\tCAROUSEL_DOT_TEXT,\n\tCAROUSEL_PREVIOUS_ARROW_TEXT,\n\tCAROUSEL_NEXT_ARROW_TEXT,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport CarouselArrowsPlacement from \"./types/CarouselArrowsPlacement.js\";\nimport CarouselPageIndicatorStyle from \"./types/CarouselPageIndicatorStyle.js\";\nimport BackgroundDesign from \"./types/BackgroundDesign.js\";\nimport BorderDesign from \"./types/BorderDesign.js\";\nimport CarouselTemplate from \"./generated/templates/CarouselTemplate.lit.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nimport Button from \"./Button.js\";\nimport Label from \"./Label.js\";\n\n// Styles\nimport CarouselCss from \"./generated/themes/Carousel.css.js\";\n\ntype CarouselNavigateEventDetail = {\n\tselectedIndex: number;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\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 * <br>\n * There are several ways to perform navigation:\n * <ul>\n * <li>on desktop - the user can navigate using the navigation arrows or with keyboard shorcuts.</li>\n * <li>on mobile - the user can use swipe gestures.</li>\n * </ul>\n *\n * <h3>Usage</h3>\n *\n * <h4>When to use:</h4>\n *\n * <ul>\n * <li>The items you want to display are very different from each other.</li>\n * <li>You want to display the items one after the other.</li>\n * </ul>\n *\n * <h4>When not to use:</h4>\n *\n * <ul>\n * <li>The items you want to display need to be visible at the same time.</li>\n * <li>The items you want to display are uniform and very similar.</li>\n * </ul>\n *\n * <h3>Keyboard Handling</h3>\n *\n * <h4>Basic Navigation</h4>\n * When the <code>ui5-carousel</code> is focused the user can navigate between the items\n * with the following keyboard shortcuts:\n * <br>\n * <ul>\n * <li>[UP/DOWN] - Navigates to previous and next item</li>\n * <li>[LEFT/RIGHT] - Navigates to previous and next item</li>\n * </ul>\n *\n * <h3>Fast Navigation</h3>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n * <h3>CSS Shadow Parts</h3>\n *\n * <ui5-link target=\"_blank\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/::part\">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.\n * <br>\n * The <code>ui5-carousel</code> exposes the following CSS Shadow Parts:\n * <ul>\n * <li>content - Used to style the content of the component</li>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Carousel.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Carousel\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-carousel\n * @since 1.0.0-rc.6\n * @public\n */\n@customElement({\n\ttag: \"ui5-carousel\",\n\tlanguageAware: true,\n\tfastNavigation: true,\n\trenderer: litRender,\n\tstyles: CarouselCss,\n\ttemplate: CarouselTemplate,\n\tdependencies: [\n\t\tButton,\n\t\tLabel,\n\t],\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 <code>items-per-page-l</code>, <code>items-per-page-m</code> and <code>items-per-page-s</code> properties.\n *\n * @event sap.ui.webc.main.Carousel#navigate\n * @param {Integer} selectedIndex the current selected index\n * @public\n * @since 1.0.0-rc.7\n */\n@event(\"navigate\", {\n\tdetail: {\n\t\tselectedIndex: { type: Integer },\n\t},\n})\n\nclass Carousel extends UI5Element {\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 * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.cyclic\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tcyclic!: boolean;\n\n\t/**\n\t * Defines the number of items per page on small size (up to 640px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageS\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageS!: number;\n\n\t/**\n\t * Defines the number of items per page on medium size (from 640px to 1024px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageM\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageM!: number;\n\n\t/**\n\t * Defines the number of items per page on large size (more than 1024px). One item per page shown by default.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype.itemsPerPageL\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\titemsPerPageL!: number;\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 * <br><br>\n\t * <b>Note:</b> The navigation arrows are never displayed on touch devices.\n\t * In this case, the user can swipe to navigate through the items.\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.hideNavigationArrows\n\t * @since 1.0.0-rc.15\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideNavigationArrows!: boolean;\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 * @type {boolean}\n\t * @name sap.ui.webc.main.Carousel.prototype.hidePageIndicator\n\t * @since 1.0.0-rc.15\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thidePageIndicator!: boolean;\n\n\t/**\n\t * Defines the style of the page indicator.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>Default</code> - 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)</li>\n\t * <li><code>Numeric</code> - The page indicator will display the current page and the total number of pages. (e.g. X of Y)</li>\n\t * </ul>\n\t * @type {sap.ui.webc.main.types.CarouselPageIndicatorStyle}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorStyle\n\t * @since 1.10\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: CarouselPageIndicatorStyle, defaultValue: CarouselPageIndicatorStyle.Default })\n\tpageIndicatorStyle!: `${CarouselPageIndicatorStyle}`;\n\n\t/**\n\t * Defines the carousel's background design.\n\t * @type {sap.ui.webc.main.types.BackgroundDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.backgroundDesign\n\t * @since 1.14\n\t * @defaultvalue \"Translucent\"\n\t * @public\n\t */\n\t@property({ type: BackgroundDesign, defaultValue: BackgroundDesign.Translucent })\n\tbackgroundDesign!: BackgroundDesign;\n\n\t/**\n\t * Defines the page indicator background design.\n\t * @type {sap.ui.webc.main.types.BackgroundDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorBackgroundDesign\n\t * @since 1.14\n\t * @defaultvalue \"Solid\"\n\t * @public\n\t */\n\t@property({ type: BackgroundDesign, defaultValue: BackgroundDesign.Solid })\n\tpageIndicatorBackgroundDesign!: BackgroundDesign;\n\n\t/**\n\t * Defines the page indicator border design.\n\t * @type {sap.ui.webc.main.types.BorderDesign}\n\t * @name sap.ui.webc.main.Carousel.prototype.pageIndicatorBorderDesign\n\t * @since 1.14\n\t * @defaultvalue \"Solid\"\n\t * @public\n\t */\n\t@property({ type: BorderDesign, defaultValue: BorderDesign.Solid })\n\tpageIndicatorBorderDesign!: BorderDesign;\n\n\t/**\n\t * Defines the index of the initially selected item.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Carousel.prototype._selectedIndex\n\t * @defaultvalue 0\n\t * @private\n\t */\n\t@property({ validator: Integer, defaultValue: 0 })\n\t_selectedIndex!: number;\n\n\t/**\n\t * Defines the position of arrows.\n\t * <br><br>\n\t * Available options are:\n\t * <ul>\n\t * <li><code>Content</code> - the arrows are placed on the sides of the current page.</li>\n\t * <li><code>Navigation</code> - the arrows are placed on the sides of the page indicator.</li>\n\t * </ul>\n\t * @type {sap.ui.webc.main.types.CarouselArrowsPlacement}\n\t * @name sap.ui.webc.main.Carousel.prototype.arrowsPlacement\n\t * @defaultvalue \"Content\"\n\t * @public\n\t */\n\t@property({ type: CarouselArrowsPlacement, defaultValue: CarouselArrowsPlacement.Content })\n\tarrowsPlacement!: `${CarouselArrowsPlacement}`;\n\n\t/**\n\t * Defines the carousel width in pixels.\n\t * @private\n\t */\n\t@property({ validator: Integer })\n\t_width?: number;\n\n\t/**\n\t * Defines the carousel item width in pixels.\n\t * @private\n\t */\n\t@property({ validator: Integer })\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!: boolean;\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 * @type {HTMLElement[]}\n\t * @slot\n\t * @name sap.ui.webc.main.Carousel.prototype.default\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, individualSlots: true })\n\tcontent!: Array<HTMLElement>;\n\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) {\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}\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.fireEvent<CarouselNavigateEventDetail>(\"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.fireEvent<CarouselNavigateEventDetail>(\"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.fireEvent<CarouselNavigateEventDetail>(\"navigate\", { selectedIndex: this._selectedIndex });\n\t\t}\n\t}\n\n\t_navButtonClick(e: MouseEvent) {\n\t\tconst button = e.target as Button;\n\t\tif (button.hasAttribute(\"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 {Integer} itemIndex The index of the target page\n\t * @since 1.0.0-rc.15\n\t * @method\n\t * @name sap.ui.webc.main.Carousel#navigateTo\n\t * @public\n\t */\n\tnavigateTo(itemIndex: number) {\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() {\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\tstyles: {\n\t\t\t\t\twidth: `${this._itemWidth || 0}px`,\n\t\t\t\t},\n\t\t\t\tclasses: visible ? \"\" : \"ui5-carousel-item--hidden\",\n\t\t\t};\n\t\t});\n\t}\n\n\tget effectiveItemsPerPage(): number {\n\t\tif (!this._width) {\n\t\t\treturn this.itemsPerPageL;\n\t\t}\n\n\t\tif (this._width <= 640) {\n\t\t\treturn this.itemsPerPageS;\n\t\t}\n\n\t\tif (this._width <= 1024) {\n\t\t\treturn this.itemsPerPageM;\n\t\t}\n\n\t\treturn this.itemsPerPageL;\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 styles() {\n\t\tconst items = this._itemWidth || 0;\n\t\treturn {\n\t\t\tcontent: {\n\t\t\t\ttransform: `translateX(${this._isRTL ? \"\" : \"-\"}${this._selectedIndex * items}px`,\n\t\t\t},\n\t\t};\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\tnavPrevButton: {\n\t\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasPrev,\n\t\t\t},\n\t\t\tnavNextButton: {\n\t\t\t\t\"ui5-carousel-navigation-button--hidden\": !this.hasNext,\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.pageIndicatorStyle === CarouselPageIndicatorStyle.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 && isDesktop();\n\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 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\t/**\n\t * The indices of the currently visible items of the component.\n\t * @public\n\t * @readonly\n\t * @since 1.0.0-rc.15\n\t * @returns {Integer[]} the indices of the visible items\n\t */\n\tget visibleItemsIndices() {\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\tstatic async onDefine() {\n\t\tCarousel.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nCarousel.define();\n\nexport default Carousel;\nexport type {\n\tCarouselNavigateEventDetail,\n};\n"]}
@@ -178,12 +178,7 @@ declare class CheckBox extends UI5Element implements IFormElement {
178
178
  valueState: `${ValueState}`;
179
179
  /**
180
180
  * Defines whether the component text wraps when there is not enough space.
181
- * <br><br>
182
- * Available options are:
183
- * <ul>
184
- * <li><code>None</code> - The text will be truncated with an ellipsis.</li>
185
- * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>
186
- * </ul>
181
+ * <br><b>Note:</b> for option "Normal" the text will wrap and the words will not be broken based on hyphenation.
187
182
  *
188
183
  * @type {sap.ui.webc.main.types.WrappingType}
189
184
  * @name sap.ui.webc.main.CheckBox.prototype.wrappingType
@@ -1 +1 @@
1
- {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/accept.js\";\nimport Icon from \"./Icon.js\";\nimport Label from \"./Label.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\nimport type FormSupport from \"./features/InputElementsFormSupport.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\n\n// Template\nimport CheckBoxTemplate from \"./generated/templates/CheckBoxTemplate.lit.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n * <br><br>\n * The <code>ui5-checkbox</code> component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the <code>ui5-checkbox</code>, the user has to click or tap the square\n * box or its label.\n * <br><br>\n * The <code>ui5-checkbox</code> component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the <code>ui5-checkbox</code> between checked and unchecked state.\n *\n * <h3>Usage</h3>\n *\n * You can define the checkbox text with via the <code>text</code> property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to wrap, set the <code>wrappingType</code> property to \"Normal\".\n * The touchable area for toggling the <code>ui5-checkbox</code> ends where the text ends.\n * <br><br>\n * You can disable the <code>ui5-checkbox</code> by setting the <code>disabled</code> property to\n * <code>true</code>,\n * or use the <code>ui5-checkbox</code> in read-only mode by setting the <code>readonly</code>\n * property to <code>true</code>.\n *\n * <br><br>\n * <h3>CSS Shadow Parts</h3>\n *\n * <ui5-link target=\"_blank\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/::part\">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.\n * <br>\n * The <code>ui5-checkbox</code> exposes the following CSS Shadow Parts:\n * <ul>\n * <li>root - Used to style the outermost wrapper of the <code>ui5-checkbox</code></li>\n * </ul>\n *\n * <br><br>\n * <h3>Keyboard Handling</h3>\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the <code>ui5-checkbox</code>.\n * <ul>\n * <li>[SPACE, ENTER] - Toggles between different states: checked, not checked.</li>\n * </ul>\n * <br><br>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/CheckBox\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.CheckBox\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-checkbox\n * @public\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n\tdependencies: [\n\t\tLabel,\n\t\tIcon,\n\t],\n})\n/**\n * Fired when the component checked state changes.\n *\n * @public\n * @event sap.ui.webc.main.CheckBox#change\n */\n@event(\"change\")\n\nclass CheckBox extends UI5Element implements IFormElement {\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @name sap.ui.webc.main.CheckBox.prototype.accessibleNameRef\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @public\n\t * @name sap.ui.webc.main.CheckBox.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is completely noninteractive.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.readonly\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.required\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t* <br><br>\n\t* <b>Note:</b> The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the <code>indeterminate</code>\n\t* and <code>checked</code> properties:\n\t* <ul>\n\t* <li> If the component is checked and indeterminate, it will be displayed as partially checked\n\t* <li> If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* <li> If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* </ul>\n\t*\n\t* @type {boolean}\n\t* @name sap.ui.webc.main.CheckBox.prototype.indeterminate\n\t* @defaultvalue false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate!: boolean;\n\n\t/**\n\t * Defines if the component is checked.\n\t * <br><br>\n\t * <b>Note:</b> The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.checked\n\t * @defaultvalue false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.CheckBox.prototype.text\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t *\n\t * <br><br>\n\t * <b>Note:</b>\n\t *\n\t * <ul>\n\t * <li><code>Warning</code></li>\n\t * <li><code>Error</code></li>\n\t * <li><code>None</code>(default)</li>\n\t * <li><code>Success</code></li>\n\t * <li><code>Information</code></li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.base.types.ValueState}\n\t * @name sap.ui.webc.main.CheckBox.prototype.valueState\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t * <br><br>\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.CheckBox.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Determines the name with which the component will be submitted in an HTML form.\n\t *\n\t * <br><br>\n\t * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * <br><br>\n\t * <b>Note:</b> When set, a native <code>input</code> HTML element\n\t * will be created inside the component so that it can be submitted as\n\t * part of an HTML form. Do not use this property unless you need to submit a form.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.CheckBox.prototype.name\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * The slot is used to render native <code>input</code> HTML element within Light DOM to enable form submit,\n\t * when <code>name</code> property is set.\n\t * @type {HTMLElement[]}\n\t * @slot\n\t * @private\n\t */\n\t@slot()\n\tformSupport!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._enableFormSupport();\n\t}\n\n\t_enableFormSupport() {\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (formSupport) {\n\t\t\tformSupport.syncNativeHiddenInput(this, (element: IFormElement, nativeInput: HTMLInputElement) => {\n\t\t\t\tnativeInput.disabled = !!element.disabled;\n\t\t\t\tnativeInput.checked = !!element.checked;\n\t\t\t\tnativeInput.value = element.checked ? \"on\" : \"\";\n\t\t\t});\n\t\t} else if (this.name) {\n\t\t\tconsole.warn(`In order for the \"name\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.active = true;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireEvent(\"change\", null, true);\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChagnePrevented = !this.fireEvent(\"value-changed\", null, true);\n\n\t\t\tif (changePrevented || valueChagnePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Error\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Warning\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Success\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\t\treturn this.disabled ? undefined : tabindex || \"0\";\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tstatic async onDefine() {\n\t\tCheckBox.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
1
+ {"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/accept.js\";\nimport Icon from \"./Icon.js\";\nimport Label from \"./Label.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\nimport type FormSupport from \"./features/InputElementsFormSupport.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\n\n// Template\nimport CheckBoxTemplate from \"./generated/templates/CheckBoxTemplate.lit.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n * <br><br>\n * The <code>ui5-checkbox</code> component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the <code>ui5-checkbox</code>, the user has to click or tap the square\n * box or its label.\n * <br><br>\n * The <code>ui5-checkbox</code> component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the <code>ui5-checkbox</code> between checked and unchecked state.\n *\n * <h3>Usage</h3>\n *\n * You can define the checkbox text with via the <code>text</code> property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to wrap, set the <code>wrappingType</code> property to \"Normal\".\n * The touchable area for toggling the <code>ui5-checkbox</code> ends where the text ends.\n * <br><br>\n * You can disable the <code>ui5-checkbox</code> by setting the <code>disabled</code> property to\n * <code>true</code>,\n * or use the <code>ui5-checkbox</code> in read-only mode by setting the <code>readonly</code>\n * property to <code>true</code>.\n *\n * <br><br>\n * <h3>CSS Shadow Parts</h3>\n *\n * <ui5-link target=\"_blank\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/::part\">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.\n * <br>\n * The <code>ui5-checkbox</code> exposes the following CSS Shadow Parts:\n * <ul>\n * <li>root - Used to style the outermost wrapper of the <code>ui5-checkbox</code></li>\n * </ul>\n *\n * <br><br>\n * <h3>Keyboard Handling</h3>\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the <code>ui5-checkbox</code>.\n * <ul>\n * <li>[SPACE, ENTER] - Toggles between different states: checked, not checked.</li>\n * </ul>\n * <br><br>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/CheckBox\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.CheckBox\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-checkbox\n * @public\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n\tdependencies: [\n\t\tLabel,\n\t\tIcon,\n\t],\n})\n/**\n * Fired when the component checked state changes.\n *\n * @public\n * @event sap.ui.webc.main.CheckBox#change\n */\n@event(\"change\")\n\nclass CheckBox extends UI5Element implements IFormElement {\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @name sap.ui.webc.main.CheckBox.prototype.accessibleNameRef\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @public\n\t * @name sap.ui.webc.main.CheckBox.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is completely noninteractive.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.readonly\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.required\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t* <br><br>\n\t* <b>Note:</b> The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the <code>indeterminate</code>\n\t* and <code>checked</code> properties:\n\t* <ul>\n\t* <li> If the component is checked and indeterminate, it will be displayed as partially checked\n\t* <li> If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* <li> If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* </ul>\n\t*\n\t* @type {boolean}\n\t* @name sap.ui.webc.main.CheckBox.prototype.indeterminate\n\t* @defaultvalue false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate!: boolean;\n\n\t/**\n\t * Defines if the component is checked.\n\t * <br><br>\n\t * <b>Note:</b> The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.CheckBox.prototype.checked\n\t * @defaultvalue false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.CheckBox.prototype.text\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t *\n\t * <br><br>\n\t * <b>Note:</b>\n\t *\n\t * <ul>\n\t * <li><code>Warning</code></li>\n\t * <li><code>Error</code></li>\n\t * <li><code>None</code>(default)</li>\n\t * <li><code>Success</code></li>\n\t * <li><code>Information</code></li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.base.types.ValueState}\n\t * @name sap.ui.webc.main.CheckBox.prototype.valueState\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t * <br><b>Note:</b> for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.CheckBox.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Determines the name with which the component will be submitted in an HTML form.\n\t *\n\t * <br><br>\n\t * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * <br><br>\n\t * <b>Note:</b> When set, a native <code>input</code> HTML element\n\t * will be created inside the component so that it can be submitted as\n\t * part of an HTML form. Do not use this property unless you need to submit a form.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.CheckBox.prototype.name\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * The slot is used to render native <code>input</code> HTML element within Light DOM to enable form submit,\n\t * when <code>name</code> property is set.\n\t * @type {HTMLElement[]}\n\t * @slot\n\t * @private\n\t */\n\t@slot()\n\tformSupport!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._enableFormSupport();\n\t}\n\n\t_enableFormSupport() {\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (formSupport) {\n\t\t\tformSupport.syncNativeHiddenInput(this, (element: IFormElement, nativeInput: HTMLInputElement) => {\n\t\t\t\tnativeInput.disabled = !!element.disabled;\n\t\t\t\tnativeInput.checked = !!element.checked;\n\t\t\t\tnativeInput.value = element.checked ? \"on\" : \"\";\n\t\t\t});\n\t\t} else if (this.name) {\n\t\t\tconsole.warn(`In order for the \"name\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.active = true;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireEvent(\"change\", null, true);\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChagnePrevented = !this.fireEvent(\"value-changed\", null, true);\n\n\t\t\tif (changePrevented || valueChagnePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Error\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Warning\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Success\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\t\treturn this.disabled ? undefined : tabindex || \"0\";\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tstatic async onDefine() {\n\t\tCheckBox.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
package/dist/Label.d.ts CHANGED
@@ -63,11 +63,7 @@ declare class Label extends UI5Element {
63
63
  required: boolean;
64
64
  /**
65
65
  * Defines how the text of a component will be displayed when there is not enough space.
66
- * Available options are:
67
- * <ul>
68
- * <li><code>None</code> - The text will be truncated with an ellipsis.</li>
69
- * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>
70
- * </ul>
66
+ * <br><b>Note:</b> for option "Normal" the text will wrap and the words will not be broken based on hyphenation.
71
67
  *
72
68
  * @name sap.ui.webc.main.Label.prototype.wrappingType
73
69
  * @type {sap.ui.webc.main.types.WrappingType}
package/dist/Label.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE,WAAW;AACX,OAAO,aAAa,MAAM,4CAA4C,CAAC;AAEvE,SAAS;AACT,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAOH,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,UAAU;IA2D7B,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,OAAK,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;OAQG;IAEH,QAAQ;QACP,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACP;QAED,MAAM,cAAc,GAAI,IAAI,CAAC,WAAW,EAAkB,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAgB,CAAC;QACxG,IAAI,cAAc,EAAE;YACnB,cAAc,CAAC,KAAK,EAAE,CAAC;SACvB;IACF,CAAC;IAED,IAAI,YAAY;QACf,OAAO,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;CACD,CAAA;AA3EA;IADC,QAAQ,EAAE;kCACE;AAYb;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACR;AAepB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACT;AAgBnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;2CACjC;AAvD5B,KAAK;IANV,aAAa,CAAC;QACd,GAAG,EAAE,WAAW;QAChB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,QAAQ;KAChB,CAAC;GACI,KAAK,CAuFV;AAED,KAAK,CAAC,MAAM,EAAE,CAAC;AAEf,eAAe,KAAK,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport LabelTemplate from \"./generated/templates/LabelTemplate.lit.js\";\n\n// Styles\nimport labelCss from \"./generated/themes/Label.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-label</code> is a component used to represent a label for elements like input, textarea, select. <br><br>\n * The <code>for</code> property of the <code>ui5-label</code> must be the same as the id attribute of the related input element.<br><br>\n * Screen readers read out the label, when the user focuses the labelled control.\n * <br><br>\n * The <code>ui5-label</code> appearance can be influenced by properties,\n * such as <code>required</code> and <code>wrappingType</code>.\n * The appearance of the Label can be configured in a limited way by using the design property.\n * For a broader choice of designs, you can use custom styles.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Label\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Label\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-label\n * @public\n */\n@customElement({\n\ttag: \"ui5-label\",\n\trenderer: litRender,\n\ttemplate: LabelTemplate,\n\tstyles: labelCss,\n})\nclass Label extends UI5Element {\n\t/**\n\t * Defines the labeled input by providing its ID.\n\t * <br><br>\n\t * <b>Note:</b> Can be used with both <code>ui5-input</code> and native input.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Label.prototype.for\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tfor!: string;\n\n\t/**\n\t * Defines whether colon is added to the component text.\n\t * <br><br>\n\t * <b>Note:</b> Usually used in forms.\n\t * @name sap.ui.webc.main.Label.prototype.showColon\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowColon!: boolean;\n\n\t/**\n\t * Defines whether an asterisk character is added to the component text.\n\t * <br><br>\n\t * <b>Note:</b> Usually indicates that user input (bound with the <code>for</code> property) is required.\n\t * In that case the <code>required</> property of\n\t * the corresponding input should also be set.\n\t *\n\t * @name sap.ui.webc.main.Label.prototype.required\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @name sap.ui.webc.main.Label.prototype.wrappingType\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tLabel.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @slot\n\t * @public\n\t * @name sap.ui.webc.main.Label.prototype.default\n\t */\n\n\t_onclick() {\n\t\tif (!this.for) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementToFocus = (this.getRootNode() as HTMLElement).querySelector(`#${this.for}`) as HTMLElement;\n\t\tif (elementToFocus) {\n\t\t\telementToFocus.focus();\n\t\t}\n\t}\n\n\tget _colonSymbol() {\n\t\treturn Label.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nLabel.define();\n\nexport default Label;\n"]}
1
+ {"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE,WAAW;AACX,OAAO,aAAa,MAAM,4CAA4C,CAAC;AAEvE,SAAS;AACT,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAOH,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,UAAU;IAuD7B,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,OAAK,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;OAQG;IAEH,QAAQ;QACP,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACP;QAED,MAAM,cAAc,GAAI,IAAI,CAAC,WAAW,EAAkB,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAgB,CAAC;QACxG,IAAI,cAAc,EAAE;YACnB,cAAc,CAAC,KAAK,EAAE,CAAC;SACvB;IACF,CAAC;IAED,IAAI,YAAY;QACf,OAAO,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;CACD,CAAA;AAvEA;IADC,QAAQ,EAAE;kCACE;AAYb;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACR;AAepB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACT;AAYnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;2CACjC;AAnD5B,KAAK;IANV,aAAa,CAAC;QACd,GAAG,EAAE,WAAW;QAChB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,QAAQ;KAChB,CAAC;GACI,KAAK,CAmFV;AAED,KAAK,CAAC,MAAM,EAAE,CAAC;AAEf,eAAe,KAAK,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport WrappingType from \"./types/WrappingType.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport LabelTemplate from \"./generated/templates/LabelTemplate.lit.js\";\n\n// Styles\nimport labelCss from \"./generated/themes/Label.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-label</code> is a component used to represent a label for elements like input, textarea, select. <br><br>\n * The <code>for</code> property of the <code>ui5-label</code> must be the same as the id attribute of the related input element.<br><br>\n * Screen readers read out the label, when the user focuses the labelled control.\n * <br><br>\n * The <code>ui5-label</code> appearance can be influenced by properties,\n * such as <code>required</code> and <code>wrappingType</code>.\n * The appearance of the Label can be configured in a limited way by using the design property.\n * For a broader choice of designs, you can use custom styles.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Label\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Label\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-label\n * @public\n */\n@customElement({\n\ttag: \"ui5-label\",\n\trenderer: litRender,\n\ttemplate: LabelTemplate,\n\tstyles: labelCss,\n})\nclass Label extends UI5Element {\n\t/**\n\t * Defines the labeled input by providing its ID.\n\t * <br><br>\n\t * <b>Note:</b> Can be used with both <code>ui5-input</code> and native input.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Label.prototype.for\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tfor!: string;\n\n\t/**\n\t * Defines whether colon is added to the component text.\n\t * <br><br>\n\t * <b>Note:</b> Usually used in forms.\n\t * @name sap.ui.webc.main.Label.prototype.showColon\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowColon!: boolean;\n\n\t/**\n\t * Defines whether an asterisk character is added to the component text.\n\t * <br><br>\n\t * <b>Note:</b> Usually indicates that user input (bound with the <code>for</code> property) is required.\n\t * In that case the <code>required</> property of\n\t * the corresponding input should also be set.\n\t *\n\t * @name sap.ui.webc.main.Label.prototype.required\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * <br><b>Note:</b> for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t *\n\t * @name sap.ui.webc.main.Label.prototype.wrappingType\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tLabel.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @slot\n\t * @public\n\t * @name sap.ui.webc.main.Label.prototype.default\n\t */\n\n\t_onclick() {\n\t\tif (!this.for) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementToFocus = (this.getRootNode() as HTMLElement).querySelector(`#${this.for}`) as HTMLElement;\n\t\tif (elementToFocus) {\n\t\t\telementToFocus.focus();\n\t\t}\n\t}\n\n\tget _colonSymbol() {\n\t\treturn Label.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nLabel.define();\n\nexport default Label;\n"]}
package/dist/Link.d.ts CHANGED
@@ -107,11 +107,7 @@ declare class Link extends UI5Element implements ITabbable {
107
107
  design: `${LinkDesign}`;
108
108
  /**
109
109
  * Defines how the text of a component will be displayed when there is not enough space.
110
- * Available options are:
111
- * <ul>
112
- * <li><code>None</code> - The text will be truncated with an ellipsis.</li>
113
- * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>
114
- * </ul>
110
+ * <br><b>Note:</b> for option "Normal" the text will wrap and the words will not be broken based on hyphenation.
115
111
  *
116
112
  * @type {sap.ui.webc.main.types.WrappingType}
117
113
  * @name sap.ui.webc.main.Link.prototype.wrappingType
package/dist/Link.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.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 event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code>&lt;a&gt;&lt;a&#47;&gt;</code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: `${LinkDesign}`;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\" };\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
1
+ {"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.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 event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code>&lt;a&gt;&lt;a&#47;&gt;</code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: `${LinkDesign}`;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * <br><b>Note:</b> for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: `${WrappingType}`;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\" };\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
package/dist/Menu.d.ts CHANGED
@@ -1,8 +1,10 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
3
3
  import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
4
+ import { Timeout } from "@ui5/webcomponents-base/dist/types.js";
4
5
  import ResponsivePopover from "./ResponsivePopover.js";
5
6
  import type { ResponsivePopoverBeforeCloseEventDetail } from "./ResponsivePopover.js";
7
+ import StandardListItem from "./StandardListItem.js";
6
8
  import type MenuItem from "./MenuItem.js";
7
9
  import type { ListItemClickEventDetail } from "./List.js";
8
10
  type CurrentItem = {
@@ -20,6 +22,9 @@ type MenuBeforeOpenEventDetail = {
20
22
  type MenuBeforeCloseEventDetail = {
21
23
  escPressed: boolean;
22
24
  };
25
+ type OpenerStandardListItem = StandardListItem & {
26
+ associatedItem: MenuItem;
27
+ };
23
28
  /**
24
29
  * @class
25
30
  *
@@ -160,6 +165,7 @@ declare class Menu extends UI5Element {
160
165
  */
161
166
  items: Array<MenuItem>;
162
167
  static i18nBundle: I18nBundle;
168
+ _timeout?: Timeout;
163
169
  static onDefine(): Promise<void>;
164
170
  get itemsWithChildren(): boolean;
165
171
  get itemsWithIcon(): boolean;
@@ -198,6 +204,9 @@ declare class Menu extends UI5Element {
198
204
  _closeSubMenuPopover(subMenu: Menu, forceClose?: boolean): void;
199
205
  _prepareSubMenuDesktopTablet(item: MenuItem, opener: HTMLElement, actionId: string): void;
200
206
  _prepareSubMenuPhone(item: MenuItem): void;
207
+ _startOpenTimeout(item: MenuItem, opener: OpenerStandardListItem, hoverId: string): void;
208
+ _startCloseTimeout(item: MenuItem): void;
209
+ _clearTimeout(): void;
201
210
  _itemMouseOver(e: MouseEvent): void;
202
211
  _busyMouseOver(): void;
203
212
  _itemMouseOut(e: MouseEvent): void;