@sapudex/web-components 2.49.0 → 2.51.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 (332) hide show
  1. package/cypress/specs/TabNavigation.cy.tsx +56 -0
  2. package/dist/HeroBanner.d.ts +18 -9
  3. package/dist/HeroBanner.js +38 -35
  4. package/dist/HeroBanner.js.map +1 -1
  5. package/dist/HeroBannerTemplate.js +2 -2
  6. package/dist/HeroBannerTemplate.js.map +1 -1
  7. package/dist/MessageStrip.d.ts +3 -0
  8. package/dist/MessageStrip.js +40 -8
  9. package/dist/MessageStrip.js.map +1 -1
  10. package/dist/Modal.d.ts +1 -0
  11. package/dist/Modal.js +7 -0
  12. package/dist/Modal.js.map +1 -1
  13. package/dist/TabNavigation.d.ts +1 -1
  14. package/dist/TabNavigation.js +3 -2
  15. package/dist/TabNavigation.js.map +1 -1
  16. package/dist/Wizard.d.ts +5 -0
  17. package/dist/Wizard.js +11 -0
  18. package/dist/Wizard.js.map +1 -1
  19. package/dist/assets/{InputSuggestions-DaB1A6jW.js → InputSuggestions-7eP5S95I.js} +1 -1
  20. package/dist/assets/{ListItemStandardExpandableTextTemplate-Co4KQuVw.js → ListItemStandardExpandableTextTemplate-CLcWBFcg.js} +1 -1
  21. package/dist/assets/{bundle.esm-al3NYhoB.js → bundle.esm-D4--IDh7.js} +311 -313
  22. package/dist/assets/messagebundle_ar-BRkfjlVF.js +1 -0
  23. package/dist/assets/messagebundle_ar-D5A573iZ.js +1 -0
  24. package/dist/assets/messagebundle_bg-ByA8yRlQ.js +1 -0
  25. package/dist/assets/messagebundle_bg-CIVFOczQ.js +1 -0
  26. package/dist/assets/messagebundle_ca-BR3XuU9o.js +1 -0
  27. package/dist/assets/messagebundle_ca-CnMQ87v0.js +1 -0
  28. package/dist/assets/messagebundle_cnr-C6YhRiS7.js +1 -0
  29. package/dist/assets/messagebundle_cnr-CKZii51E.js +1 -0
  30. package/dist/assets/messagebundle_cs-DcOu8IOK.js +1 -0
  31. package/dist/assets/messagebundle_cs-I7yYpbsI.js +1 -0
  32. package/dist/assets/messagebundle_cy-BxrFUGJ9.js +1 -0
  33. package/dist/assets/messagebundle_cy-iXD_sJ-H.js +1 -0
  34. package/dist/assets/messagebundle_da-BVQHPgwf.js +1 -0
  35. package/dist/assets/messagebundle_da-CMGObFa5.js +1 -0
  36. package/dist/assets/messagebundle_de-Ca8NttFO.js +1 -0
  37. package/dist/assets/messagebundle_el-Cqfj_U5v.js +1 -0
  38. package/dist/assets/messagebundle_el-D9Zgq5tn.js +1 -0
  39. package/dist/assets/messagebundle_en-D0JTZvAf.js +1 -0
  40. package/dist/assets/messagebundle_en-DWqF0cay.js +1 -0
  41. package/dist/assets/messagebundle_en_GB-CGB_FKp4.js +1 -0
  42. package/dist/assets/messagebundle_en_GB-Cl7ekzz2.js +1 -0
  43. package/dist/assets/messagebundle_en_US_sappsd-7UdOh8vN.js +1 -0
  44. package/dist/assets/messagebundle_en_US_sappsd-B8rqsyFQ.js +1 -0
  45. package/dist/assets/messagebundle_en_US_saprigi-9VCo5QY0.js +1 -0
  46. package/dist/assets/messagebundle_en_US_saprigi-DfLzOCPY.js +1 -0
  47. package/dist/assets/messagebundle_en_US_saptrc-DZqYka05.js +1 -0
  48. package/dist/assets/messagebundle_en_US_saptrc-Wh_IysAB.js +1 -0
  49. package/dist/assets/messagebundle_es-DKn8EzzP.js +1 -0
  50. package/dist/assets/messagebundle_es-lf5AJZNW.js +1 -0
  51. package/dist/assets/messagebundle_es_MX-DyYZGjON.js +1 -0
  52. package/dist/assets/messagebundle_es_MX-yBTcvu7u.js +1 -0
  53. package/dist/assets/messagebundle_et-Dz8Ohhcp.js +1 -0
  54. package/dist/assets/messagebundle_et-rMWbS-Nu.js +1 -0
  55. package/dist/assets/messagebundle_fi-Bfbyhuuz.js +1 -0
  56. package/dist/assets/messagebundle_fi-DnXm7LPH.js +1 -0
  57. package/dist/assets/messagebundle_fr-BvbeCfZ-.js +1 -0
  58. package/dist/assets/messagebundle_fr-KQhoZEew.js +1 -0
  59. package/dist/assets/messagebundle_fr_CA-CE2lzYx5.js +1 -0
  60. package/dist/assets/messagebundle_fr_CA-CIhDzHAJ.js +1 -0
  61. package/dist/assets/messagebundle_hi-BRQ9tZ6F.js +1 -0
  62. package/dist/assets/messagebundle_hi-DPwH9vag.js +1 -0
  63. package/dist/assets/messagebundle_hr-BSKQ6zHT.js +1 -0
  64. package/dist/assets/messagebundle_hr-D3gQg5JN.js +1 -0
  65. package/dist/assets/messagebundle_hu-CAA4oM1C.js +1 -0
  66. package/dist/assets/messagebundle_hu-CZNs1K9T.js +1 -0
  67. package/dist/assets/messagebundle_id-9H0uJyXB.js +1 -0
  68. package/dist/assets/messagebundle_id-m6iosVVP.js +1 -0
  69. package/dist/assets/messagebundle_it-BWzxa-Mi.js +1 -0
  70. package/dist/assets/messagebundle_it-Cm_0HF21.js +1 -0
  71. package/dist/assets/messagebundle_iw-DpB2YXTa.js +1 -0
  72. package/dist/assets/messagebundle_iw-NfqePNtD.js +1 -0
  73. package/dist/assets/messagebundle_ja-BCSZcI8t.js +1 -0
  74. package/dist/assets/messagebundle_ja-C-qqwzFf.js +1 -0
  75. package/dist/assets/messagebundle_kk--PGqyTVS.js +1 -0
  76. package/dist/assets/messagebundle_kk-DAlCQkFU.js +1 -0
  77. package/dist/assets/messagebundle_ko-D8mIkPe1.js +1 -0
  78. package/dist/assets/messagebundle_ko-qoWc4ZGG.js +1 -0
  79. package/dist/assets/messagebundle_lt-BIEH02V4.js +1 -0
  80. package/dist/assets/messagebundle_lt-ruMxSuY-.js +1 -0
  81. package/dist/assets/messagebundle_lv-C2om7wu0.js +1 -0
  82. package/dist/assets/messagebundle_lv-Dfrbh1ci.js +1 -0
  83. package/dist/assets/messagebundle_mk-DHvZle6t.js +1 -0
  84. package/dist/assets/messagebundle_mk-l_Kubx1p.js +1 -0
  85. package/dist/assets/messagebundle_ms-CKCmj1p_.js +1 -0
  86. package/dist/assets/messagebundle_ms-IhSEK5ij.js +1 -0
  87. package/dist/assets/messagebundle_nl-BiIb6e5c.js +1 -0
  88. package/dist/assets/messagebundle_nl-DquG38Cj.js +1 -0
  89. package/dist/assets/messagebundle_no-CX23v_jg.js +1 -0
  90. package/dist/assets/messagebundle_no-DFdvykvP.js +1 -0
  91. package/dist/assets/messagebundle_pl-BAeue3mo.js +1 -0
  92. package/dist/assets/messagebundle_pl-iHE_prgN.js +1 -0
  93. package/dist/assets/messagebundle_pt-BpQnTLvl.js +1 -0
  94. package/dist/assets/messagebundle_pt-C_bG3Erm.js +1 -0
  95. package/dist/assets/messagebundle_pt_PT-CR7qXFK-.js +1 -0
  96. package/dist/assets/messagebundle_pt_PT-DyseXKQQ.js +1 -0
  97. package/dist/assets/messagebundle_ro-CHU1E6hv.js +1 -0
  98. package/dist/assets/messagebundle_ro-C_amsd63.js +1 -0
  99. package/dist/assets/messagebundle_ru-Cab4H6Ud.js +1 -0
  100. package/dist/assets/messagebundle_ru-D6JMraBp.js +1 -0
  101. package/dist/assets/messagebundle_sh-DusYn00L.js +1 -0
  102. package/dist/assets/messagebundle_sh-hThvw_lF.js +1 -0
  103. package/dist/assets/messagebundle_sk-BqiUMEcX.js +1 -0
  104. package/dist/assets/messagebundle_sk-CZHfFNQ_.js +1 -0
  105. package/dist/assets/{messagebundle_sl-Bn5tocYe.js → messagebundle_sl-B79d3kfY.js} +1 -1
  106. package/dist/assets/messagebundle_sl-SfAn6n6j.js +1 -0
  107. package/dist/assets/messagebundle_sr-4iz7n4Te.js +1 -0
  108. package/dist/assets/messagebundle_sr-DxELdG62.js +1 -0
  109. package/dist/assets/messagebundle_sv-CPOHCrxs.js +1 -0
  110. package/dist/assets/messagebundle_sv-i6GuWK0l.js +1 -0
  111. package/dist/assets/messagebundle_th-D-kPI3tt.js +1 -0
  112. package/dist/assets/messagebundle_th-D64J-JvN.js +1 -0
  113. package/dist/assets/messagebundle_tr-CuE9DqZT.js +1 -0
  114. package/dist/assets/messagebundle_tr-gTuGftNt.js +1 -0
  115. package/dist/assets/messagebundle_uk-C6JSX-jF.js +1 -0
  116. package/dist/assets/messagebundle_uk-IKxyo-LT.js +1 -0
  117. package/dist/assets/messagebundle_vi-BRdRT5L6.js +1 -0
  118. package/dist/assets/messagebundle_vi-rZGL12-x.js +1 -0
  119. package/dist/assets/messagebundle_zh_CN-L55Y4Dfs.js +1 -0
  120. package/dist/assets/messagebundle_zh_CN-ZalS15WG.js +1 -0
  121. package/dist/assets/messagebundle_zh_TW-BcMzZCW2.js +1 -0
  122. package/dist/assets/messagebundle_zh_TW-sRVDBYOx.js +1 -0
  123. package/dist/assets/parameters-bundle.css-8pAQYERs.js +3 -0
  124. package/dist/assets/{parameters-bundle.css-Dd5ajhZR.js → parameters-bundle.css-BXQ-0CBp.js} +1 -12
  125. package/dist/assets/parameters-bundle.css-B_KvbSAR.js +2 -0
  126. package/dist/assets/{parameters-bundle.css-BVXLOlqR.js → parameters-bundle.css-Bleiw2gk.js} +1 -1
  127. package/dist/assets/{parameters-bundle.css-DH_wndOj.js → parameters-bundle.css-C3eDVARm.js} +1 -1
  128. package/dist/assets/parameters-bundle.css-C7KCPeJ8.js +3 -0
  129. package/dist/assets/{parameters-bundle.css-CWfGvXBZ.js → parameters-bundle.css-CCL9q8h_.js} +1 -1
  130. package/dist/assets/{parameters-bundle.css-BCB-2TTY.js → parameters-bundle.css-CDc9A-MF.js} +1 -1
  131. package/dist/assets/parameters-bundle.css-CLLnzh9T.js +3 -0
  132. package/dist/assets/parameters-bundle.css-CQFZmxYm.js +3 -0
  133. package/dist/assets/parameters-bundle.css-CSUOmZKr.js +3 -0
  134. package/dist/assets/{parameters-bundle.css-CKNWL0nG.js → parameters-bundle.css-CT-eTeTy.js} +1 -12
  135. package/dist/assets/parameters-bundle.css-Ciey0vhA.js +2 -0
  136. package/dist/assets/{parameters-bundle.css-DuHP0Q5Y.js → parameters-bundle.css-Cmk27zY9.js} +6 -9
  137. package/dist/assets/{parameters-bundle.css-yvuwi247.js → parameters-bundle.css-Cv89y49I.js} +1 -1
  138. package/dist/assets/{parameters-bundle.css-BQB0pxRT.js → parameters-bundle.css-Cx9nDxJ1.js} +1 -1
  139. package/dist/assets/{parameters-bundle.css-BBdTemt8.js → parameters-bundle.css-CxjtOlRD.js} +7 -10
  140. package/dist/assets/{parameters-bundle.css-DXuX1n-u.js → parameters-bundle.css-D6dc2la8.js} +1 -1
  141. package/dist/assets/parameters-bundle.css-D7Hj83QD.js +2 -0
  142. package/dist/assets/{parameters-bundle.css-BiSP-Gf0.js → parameters-bundle.css-D7WciSOr.js} +1 -12
  143. package/dist/assets/{parameters-bundle.css-tevTlrPX.js → parameters-bundle.css-D9YZOKyE.js} +1 -1
  144. package/dist/assets/{parameters-bundle.css-CTIq7sCI.js → parameters-bundle.css-DE8FUbIS.js} +1 -1
  145. package/dist/assets/parameters-bundle.css-DJgsxqD8.js +2 -0
  146. package/dist/assets/parameters-bundle.css-DMVuljH3.js +3 -0
  147. package/dist/assets/{parameters-bundle.css-1rRun2sT.js → parameters-bundle.css-DPz62M1p.js} +3 -14
  148. package/dist/assets/parameters-bundle.css-DkHyiuRq.js +3 -0
  149. package/dist/assets/parameters-bundle.css-Dvgwa73x.js +3 -0
  150. package/dist/assets/parameters-bundle.css-V2I5eOdH.js +3 -0
  151. package/dist/assets/{parameters-bundle.css-DUGC7SPT.js → parameters-bundle.css-XYDTPt-n.js} +1 -12
  152. package/dist/assets/{parameters-bundle.css-C90ijvPq.js → parameters-bundle.css-tmGa6wuH.js} +1 -1
  153. package/dist/css/themes/HeroBanner.css +1 -1
  154. package/dist/css/themes/InputGroup.css +1 -1
  155. package/dist/css/themes/MastheadProfileMenu.css +1 -1
  156. package/dist/css/themes/MessageStrip.css +1 -1
  157. package/dist/css/themes/Modal.css +1 -1
  158. package/dist/css/themes/PromoTile.css +1 -1
  159. package/dist/css/themes/RadioButton.css +1 -1
  160. package/dist/css/themes/Search.css +1 -1
  161. package/dist/custom-elements-internal.json +91 -16
  162. package/dist/custom-elements.json +51 -12
  163. package/dist/generated/templates/TabNavigationTemplate.lit.js +1 -1
  164. package/dist/generated/templates/TabNavigationTemplate.lit.js.map +1 -1
  165. package/dist/generated/themes/HeroBanner.css.d.ts +1 -1
  166. package/dist/generated/themes/HeroBanner.css.js +1 -1
  167. package/dist/generated/themes/HeroBanner.css.js.map +1 -1
  168. package/dist/generated/themes/InputGroup.css.d.ts +1 -1
  169. package/dist/generated/themes/InputGroup.css.js +1 -1
  170. package/dist/generated/themes/InputGroup.css.js.map +1 -1
  171. package/dist/generated/themes/MastheadProfileMenu.css.d.ts +1 -1
  172. package/dist/generated/themes/MastheadProfileMenu.css.js +1 -1
  173. package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
  174. package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
  175. package/dist/generated/themes/MessageStrip.css.js +1 -1
  176. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  177. package/dist/generated/themes/Modal.css.d.ts +1 -1
  178. package/dist/generated/themes/Modal.css.js +1 -1
  179. package/dist/generated/themes/Modal.css.js.map +1 -1
  180. package/dist/generated/themes/PromoTile.css.d.ts +1 -1
  181. package/dist/generated/themes/PromoTile.css.js +1 -1
  182. package/dist/generated/themes/PromoTile.css.js.map +1 -1
  183. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  184. package/dist/generated/themes/RadioButton.css.js +1 -1
  185. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  186. package/dist/generated/themes/Search.css.d.ts +1 -1
  187. package/dist/generated/themes/Search.css.js +1 -1
  188. package/dist/generated/themes/Search.css.js.map +1 -1
  189. package/dist/types/MessageStrip.d.ts +22 -1
  190. package/dist/types/MessageStrip.js +21 -0
  191. package/dist/types/MessageStrip.js.map +1 -1
  192. package/dist/vscode.html-custom-data.json +16 -5
  193. package/dist/web-types.json +22 -11
  194. package/package.json +8 -8
  195. package/src/HeroBanner.ts +60 -46
  196. package/src/HeroBannerTemplate.tsx +35 -22
  197. package/src/MessageStrip.ts +41 -9
  198. package/src/Modal.ts +8 -0
  199. package/src/TabNavigation.hbs +1 -1
  200. package/src/TabNavigation.ts +2 -1
  201. package/src/Wizard.ts +15 -1
  202. package/src/generated/templates/TabNavigationTemplate.lit.ts +1 -1
  203. package/src/generated/themes/HeroBanner.css.ts +1 -1
  204. package/src/generated/themes/InputGroup.css.ts +1 -1
  205. package/src/generated/themes/MastheadProfileMenu.css.ts +1 -1
  206. package/src/generated/themes/MessageStrip.css.ts +1 -1
  207. package/src/generated/themes/Modal.css.ts +1 -1
  208. package/src/generated/themes/PromoTile.css.ts +1 -1
  209. package/src/generated/themes/RadioButton.css.ts +1 -1
  210. package/src/generated/themes/Search.css.ts +1 -1
  211. package/src/themes/HeroBanner.css +2 -0
  212. package/src/themes/InputGroup.css +1 -1
  213. package/src/themes/MastheadProfileMenu.css +0 -4
  214. package/src/themes/MessageStrip.css +384 -10
  215. package/src/themes/Modal.css +2 -2
  216. package/src/themes/PromoTile.css +156 -0
  217. package/src/themes/RadioButton.css +2 -2
  218. package/src/themes/Search.css +6 -4
  219. package/src/types/MessageStrip.ts +21 -0
  220. package/dist/assets/messagebundle_ar-DcH18L3h.js +0 -1
  221. package/dist/assets/messagebundle_ar-Ic4ckTUt.js +0 -1
  222. package/dist/assets/messagebundle_bg-BOgOglXh.js +0 -1
  223. package/dist/assets/messagebundle_bg-dZrlFeKZ.js +0 -1
  224. package/dist/assets/messagebundle_ca-2bFyG5Ty.js +0 -1
  225. package/dist/assets/messagebundle_ca-B2inwHsb.js +0 -1
  226. package/dist/assets/messagebundle_cnr-CSmWG9_V.js +0 -1
  227. package/dist/assets/messagebundle_cnr-DZsc1R1r.js +0 -1
  228. package/dist/assets/messagebundle_cs-BZXuIszN.js +0 -1
  229. package/dist/assets/messagebundle_cs-Dso9kSig.js +0 -1
  230. package/dist/assets/messagebundle_cy-B66O9oBx.js +0 -1
  231. package/dist/assets/messagebundle_cy-BSiMgZtA.js +0 -1
  232. package/dist/assets/messagebundle_da-CAPY9nnT.js +0 -1
  233. package/dist/assets/messagebundle_da-DTOADw3Y.js +0 -1
  234. package/dist/assets/messagebundle_de-DWsuh-jj.js +0 -1
  235. package/dist/assets/messagebundle_el-ByL7ikpl.js +0 -1
  236. package/dist/assets/messagebundle_el-CwjQKEGb.js +0 -1
  237. package/dist/assets/messagebundle_en-4Wpx2jqf.js +0 -1
  238. package/dist/assets/messagebundle_en-Bi068VCa.js +0 -1
  239. package/dist/assets/messagebundle_en_GB-BEZ3LbT5.js +0 -1
  240. package/dist/assets/messagebundle_en_GB-DKEddq_J.js +0 -1
  241. package/dist/assets/messagebundle_en_US_sappsd-Bc-vQnEr.js +0 -1
  242. package/dist/assets/messagebundle_en_US_sappsd-CEGC_XRQ.js +0 -1
  243. package/dist/assets/messagebundle_en_US_saprigi--hAUIdWq.js +0 -1
  244. package/dist/assets/messagebundle_en_US_saprigi-C_gnMw05.js +0 -1
  245. package/dist/assets/messagebundle_en_US_saptrc-CIbQNg_d.js +0 -1
  246. package/dist/assets/messagebundle_en_US_saptrc-DY0WM5Yp.js +0 -1
  247. package/dist/assets/messagebundle_es-BHY_U2xi.js +0 -1
  248. package/dist/assets/messagebundle_es-vhzI0nML.js +0 -1
  249. package/dist/assets/messagebundle_es_MX-DjJ15Ns4.js +0 -1
  250. package/dist/assets/messagebundle_es_MX-DmINMi1e.js +0 -1
  251. package/dist/assets/messagebundle_et-CpVk1Xin.js +0 -1
  252. package/dist/assets/messagebundle_et-DLssZHh4.js +0 -1
  253. package/dist/assets/messagebundle_fi-DmGIB0sc.js +0 -1
  254. package/dist/assets/messagebundle_fi-YfxQ0aOR.js +0 -1
  255. package/dist/assets/messagebundle_fr-BFMaF4AX.js +0 -1
  256. package/dist/assets/messagebundle_fr-BZ-VJ002.js +0 -1
  257. package/dist/assets/messagebundle_fr_CA-B5jFryz1.js +0 -1
  258. package/dist/assets/messagebundle_fr_CA-hZ2LGeU2.js +0 -1
  259. package/dist/assets/messagebundle_hi-92qX3F1U.js +0 -1
  260. package/dist/assets/messagebundle_hi-DFXk6QGw.js +0 -1
  261. package/dist/assets/messagebundle_hr-CUaLQBjG.js +0 -1
  262. package/dist/assets/messagebundle_hr-selqadPV.js +0 -1
  263. package/dist/assets/messagebundle_hu-BtupF5BC.js +0 -1
  264. package/dist/assets/messagebundle_hu-D_rF_cCp.js +0 -1
  265. package/dist/assets/messagebundle_id-Bvmpblmf.js +0 -1
  266. package/dist/assets/messagebundle_id-P3JSHcmu.js +0 -1
  267. package/dist/assets/messagebundle_it-BINon06x.js +0 -1
  268. package/dist/assets/messagebundle_it-CXnIcrL4.js +0 -1
  269. package/dist/assets/messagebundle_iw-BzixLMjm.js +0 -1
  270. package/dist/assets/messagebundle_iw-Cb6M5XGj.js +0 -1
  271. package/dist/assets/messagebundle_ja-DQ5MCYLw.js +0 -1
  272. package/dist/assets/messagebundle_ja-J8eqPj7N.js +0 -1
  273. package/dist/assets/messagebundle_kk-BIeQLfxu.js +0 -1
  274. package/dist/assets/messagebundle_kk-DIOzUeHN.js +0 -1
  275. package/dist/assets/messagebundle_ko-B9_Ss1b5.js +0 -1
  276. package/dist/assets/messagebundle_ko-BLMVyKh5.js +0 -1
  277. package/dist/assets/messagebundle_lt-CbB2wq2X.js +0 -1
  278. package/dist/assets/messagebundle_lt-RzsUvi_1.js +0 -1
  279. package/dist/assets/messagebundle_lv-6quK3a4e.js +0 -1
  280. package/dist/assets/messagebundle_lv-BQO-79MM.js +0 -1
  281. package/dist/assets/messagebundle_mk-2lJhEAgI.js +0 -1
  282. package/dist/assets/messagebundle_mk-o-SATTof.js +0 -1
  283. package/dist/assets/messagebundle_ms-3Zupz0mA.js +0 -1
  284. package/dist/assets/messagebundle_ms-DnacCQys.js +0 -1
  285. package/dist/assets/messagebundle_nl-BVNQuB_K.js +0 -1
  286. package/dist/assets/messagebundle_nl-DTnHMKsv.js +0 -1
  287. package/dist/assets/messagebundle_no-BQMw-opH.js +0 -1
  288. package/dist/assets/messagebundle_no-OUP0Fraw.js +0 -1
  289. package/dist/assets/messagebundle_pl-BQW6qi8p.js +0 -1
  290. package/dist/assets/messagebundle_pl-PZiQh0Xy.js +0 -1
  291. package/dist/assets/messagebundle_pt-BlqCbnEN.js +0 -1
  292. package/dist/assets/messagebundle_pt-DEVzhHU_.js +0 -1
  293. package/dist/assets/messagebundle_pt_PT-BV1ec-3v.js +0 -1
  294. package/dist/assets/messagebundle_pt_PT-CL5hgi4Q.js +0 -1
  295. package/dist/assets/messagebundle_ro-D3lrScIy.js +0 -1
  296. package/dist/assets/messagebundle_ro-mHJ-r7ez.js +0 -1
  297. package/dist/assets/messagebundle_ru-BD3A7Zsx.js +0 -1
  298. package/dist/assets/messagebundle_ru-D7z2G7DP.js +0 -1
  299. package/dist/assets/messagebundle_sh-BoaW1EWP.js +0 -1
  300. package/dist/assets/messagebundle_sh-DXM15u1O.js +0 -1
  301. package/dist/assets/messagebundle_sk-Bjnhb-_D.js +0 -1
  302. package/dist/assets/messagebundle_sk-Clc7AaEc.js +0 -1
  303. package/dist/assets/messagebundle_sl-DJj-8V96.js +0 -1
  304. package/dist/assets/messagebundle_sr-Dsio4Srd.js +0 -1
  305. package/dist/assets/messagebundle_sr-w0tnyPzk.js +0 -1
  306. package/dist/assets/messagebundle_sv-B-KDauoz.js +0 -1
  307. package/dist/assets/messagebundle_sv-DCsGSCfn.js +0 -1
  308. package/dist/assets/messagebundle_th-D8qcTN_b.js +0 -1
  309. package/dist/assets/messagebundle_th-rPoqCsGu.js +0 -1
  310. package/dist/assets/messagebundle_tr-DIqpdL9d.js +0 -1
  311. package/dist/assets/messagebundle_tr-Dw7toCgs.js +0 -1
  312. package/dist/assets/messagebundle_uk-CycQpntH.js +0 -1
  313. package/dist/assets/messagebundle_uk-L4kmWPZY.js +0 -1
  314. package/dist/assets/messagebundle_vi-D1-iiI56.js +0 -1
  315. package/dist/assets/messagebundle_vi-wJJaYHj7.js +0 -1
  316. package/dist/assets/messagebundle_zh_CN-CIR_auXr.js +0 -1
  317. package/dist/assets/messagebundle_zh_CN-D3UfRQq7.js +0 -1
  318. package/dist/assets/messagebundle_zh_TW-CG9O1F7p.js +0 -1
  319. package/dist/assets/messagebundle_zh_TW-qc8ADbuf.js +0 -1
  320. package/dist/assets/parameters-bundle.css-BA_cQYjH.js +0 -2
  321. package/dist/assets/parameters-bundle.css-BBLk8nbD.js +0 -3
  322. package/dist/assets/parameters-bundle.css-B_rCq3Nc.js +0 -3
  323. package/dist/assets/parameters-bundle.css-CTw0R0y7.js +0 -2
  324. package/dist/assets/parameters-bundle.css-CV2FCAf_.js +0 -3
  325. package/dist/assets/parameters-bundle.css-CX7V5RGm.js +0 -3
  326. package/dist/assets/parameters-bundle.css-D9AHurfl.js +0 -2
  327. package/dist/assets/parameters-bundle.css-DENVM9pb.js +0 -3
  328. package/dist/assets/parameters-bundle.css-DHLZEUsz.js +0 -3
  329. package/dist/assets/parameters-bundle.css-DUAp19rB.js +0 -3
  330. package/dist/assets/parameters-bundle.css-Dp55UvXM.js +0 -3
  331. package/dist/assets/parameters-bundle.css-DpJfefgg.js +0 -3
  332. package/dist/assets/parameters-bundle.css-YNYQDxyY.js +0 -2
@@ -1927,6 +1927,62 @@ describe("Tab Navigation component", () => {
1927
1927
  });
1928
1928
  });
1929
1929
 
1930
+ describe("Overflow menu — tab-select event", () => {
1931
+ const mountOverflowNav = (onTabSelect: (...args: any[]) => void) => {
1932
+ cy.mount(
1933
+ <UDExTabNavigation id="overflow-tab-nav" onTabSelect={onTabSelect}>
1934
+ <UDExTab text="Tab 1" selected><div>Content 1</div></UDExTab>
1935
+ <UDExTab text="Tab 2"><div>Content 2</div></UDExTab>
1936
+ <UDExTab text="Tab 3"><div>Content 3</div></UDExTab>
1937
+ </UDExTabNavigation>
1938
+ );
1939
+ };
1940
+
1941
+ it("fires tab-select when onItemSelect is called (overflow click path)", () => {
1942
+ const tabSelectHandler = cy.stub().as("tabSelect");
1943
+ mountOverflowNav(tabSelectHandler);
1944
+
1945
+ cy.get("[udex-tab-navigation]").then($el => {
1946
+ const nav = $el[0] as any;
1947
+ nav.onItemSelect(nav.items[1].__id);
1948
+ });
1949
+
1950
+ cy.get("@tabSelect").should("have.been.called");
1951
+ });
1952
+
1953
+ it("tab-select detail contains tab and tabIndex when triggered via onItemSelect", () => {
1954
+ const tabSelectHandler = cy.stub().as("tabSelect");
1955
+ mountOverflowNav(tabSelectHandler);
1956
+
1957
+ cy.get("[udex-tab-navigation]").then($el => {
1958
+ const nav = $el[0] as any;
1959
+ nav.onItemSelect(nav.items[1].__id);
1960
+ });
1961
+
1962
+ cy.get("@tabSelect").should("have.been.calledOnce").then(() => {
1963
+ const event: CustomEvent = tabSelectHandler.firstCall.args[0];
1964
+ expect(event.detail).to.have.property("tab");
1965
+ expect(event.detail).to.have.property("tabIndex");
1966
+ expect(event.detail.tabIndex).to.equal(1);
1967
+ });
1968
+ });
1969
+
1970
+ it("tab-select fires with correct tabIndex for each tab via onItemSelect", () => {
1971
+ const tabSelectHandler = cy.stub().as("tabSelect");
1972
+ mountOverflowNav(tabSelectHandler);
1973
+
1974
+ cy.get("[udex-tab-navigation]").then($el => {
1975
+ const nav = $el[0] as any;
1976
+ nav.onItemSelect(nav.items[2].__id);
1977
+ });
1978
+
1979
+ cy.get("@tabSelect").should("have.been.calledOnce").then(() => {
1980
+ const event: CustomEvent = tabSelectHandler.firstCall.args[0];
1981
+ expect(event.detail.tabIndex).to.equal(2);
1982
+ });
1983
+ });
1984
+ });
1985
+
1930
1986
  // ── Process Tab variant ──────────────────────────────────────────────────────
1931
1987
 
1932
1988
  describe("TabNavigation - Process Tab variant", () => {
@@ -1,4 +1,6 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
+ import type UDExBreadcrumbs from "./Breadcrumbs.js";
2
4
  export declare enum UDExImageLoadingStrategies {
3
5
  Eager = "eager",
4
6
  Lazy = "lazy"
@@ -70,28 +72,40 @@ declare class UDExHeroBanner extends UI5Element {
70
72
  * @slot
71
73
  * @public
72
74
  */
73
- content?: Array<HTMLElement>;
75
+ content: Slot<HTMLElement>;
74
76
  /**
75
77
  * Slot for image or video content.
76
78
  *
77
79
  * @slot
78
80
  * @public
79
81
  */
80
- mediaContent?: Array<HTMLElement>;
82
+ mediaContent: Slot<HTMLElement>;
81
83
  /**
82
84
  * Slot for any additional content.
83
85
  *
84
86
  * @slot
85
87
  * @public
86
88
  */
87
- additionalContent?: Array<HTMLElement>;
89
+ additionalContent: Slot<HTMLElement>;
88
90
  /**
89
91
  * Slot background picture override.
90
92
  *
91
93
  * @slot
92
94
  * @public
93
95
  */
94
- backgroundPicture?: Array<HTMLElement>;
96
+ backgroundPicture: Slot<HTMLElement>;
97
+ /**
98
+ * Slot for breadcrumbs.
99
+ *
100
+ * @slot breadcrumbs
101
+ * @public
102
+ */
103
+ breadcrumbs: Slot<UDExBreadcrumbs>;
104
+ onEnterDOM(): void;
105
+ _toggleMediaButton(): void;
106
+ _calculateMediaButtonState(): void;
107
+ _isHTMLDivElement: (element: HTMLElement) => element is HTMLDivElement;
108
+ _handleKeydown(event: KeyboardEvent): void;
95
109
  get hasBackgroundImage(): boolean;
96
110
  get hasBackgroundVideo(): boolean;
97
111
  get wrapperBackgroundColor(): string;
@@ -105,10 +119,5 @@ declare class UDExHeroBanner extends UI5Element {
105
119
  get hasAdditionalContent(): boolean;
106
120
  get hasCustomBackgroundPicture(): boolean;
107
121
  get _video(): HTMLVideoElement | null | undefined;
108
- _toggleMediaButton(): void;
109
- _calculateMediaButtonState(): void;
110
- _isHTMLDivElement: (element: HTMLElement) => element is HTMLDivElement;
111
- _handleKeydown(event: KeyboardEvent): void;
112
- onEnterDOM(): void;
113
122
  }
114
123
  export default UDExHeroBanner;
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
8
8
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
9
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
10
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
11
11
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
12
12
  import { isSpace } from "@ui5/webcomponents-base/dist/Keys.js";
13
13
  import Icon from "@ui5/webcomponents/dist/Icon.js";
@@ -40,6 +40,36 @@ let UDExHeroBanner = class UDExHeroBanner extends UI5Element {
40
40
  return element.tagName === "DIV";
41
41
  };
42
42
  }
43
+ onEnterDOM() {
44
+ if (this.backgroundVideo) {
45
+ if (this.backgroundColor) {
46
+ this.style.setProperty("--udexHeroBannerBackgroundVideoColor", `${this.wrapperBackgroundColor}`);
47
+ }
48
+ this._video?.addEventListener("play", () => {
49
+ this._calculateMediaButtonState();
50
+ });
51
+ }
52
+ }
53
+ _toggleMediaButton() {
54
+ if (this._video?.paused) {
55
+ this._video?.play();
56
+ }
57
+ else {
58
+ this._video?.pause();
59
+ }
60
+ this._calculateMediaButtonState();
61
+ }
62
+ _calculateMediaButtonState() {
63
+ this._isVideoRunning = this._video ? !this._video.paused : false;
64
+ }
65
+ _handleKeydown(event) {
66
+ const target = event.target;
67
+ if (this._isHTMLDivElement(target) && isSpace(event)) {
68
+ event.preventDefault();
69
+ event.stopPropagation();
70
+ this._toggleMediaButton();
71
+ }
72
+ }
43
73
  get hasBackgroundImage() {
44
74
  return !!this.backgroundImage;
45
75
  }
@@ -77,36 +107,6 @@ let UDExHeroBanner = class UDExHeroBanner extends UI5Element {
77
107
  get _video() {
78
108
  return this.shadowRoot?.querySelector("video");
79
109
  }
80
- _toggleMediaButton() {
81
- if (this._video?.paused) {
82
- this._video?.play();
83
- }
84
- else {
85
- this._video?.pause();
86
- }
87
- this._calculateMediaButtonState();
88
- }
89
- _calculateMediaButtonState() {
90
- this._isVideoRunning = this._video ? !this._video.paused : false;
91
- }
92
- _handleKeydown(event) {
93
- const target = event.target;
94
- if (this._isHTMLDivElement(target) && isSpace(event)) {
95
- event.preventDefault();
96
- event.stopPropagation();
97
- this._toggleMediaButton();
98
- }
99
- }
100
- onEnterDOM() {
101
- if (this.backgroundVideo) {
102
- if (this.backgroundColor) {
103
- this.style.setProperty("--udexHeroBannerBackgroundVideoColor", `${this.wrapperBackgroundColor}`);
104
- }
105
- this._video?.addEventListener("play", () => {
106
- this._calculateMediaButtonState();
107
- });
108
- }
109
- }
110
110
  };
111
111
  __decorate([
112
112
  property({ type: String })
@@ -133,17 +133,20 @@ __decorate([
133
133
  property({ type: Boolean, noAttribute: true })
134
134
  ], UDExHeroBanner.prototype, "_isVideoRunning", void 0);
135
135
  __decorate([
136
- slot()
136
+ slot({ type: HTMLElement })
137
137
  ], UDExHeroBanner.prototype, "content", void 0);
138
138
  __decorate([
139
- slot()
139
+ slot({ type: HTMLElement })
140
140
  ], UDExHeroBanner.prototype, "mediaContent", void 0);
141
141
  __decorate([
142
- slot()
142
+ slot({ type: HTMLElement })
143
143
  ], UDExHeroBanner.prototype, "additionalContent", void 0);
144
144
  __decorate([
145
- slot()
145
+ slot({ type: HTMLElement })
146
146
  ], UDExHeroBanner.prototype, "backgroundPicture", void 0);
147
+ __decorate([
148
+ slot({ type: HTMLElement })
149
+ ], UDExHeroBanner.prototype, "breadcrumbs", void 0);
147
150
  UDExHeroBanner = __decorate([
148
151
  customElement({
149
152
  tag: "udex-hero-banner",
@@ -1 +1 @@
1
- {"version":3,"file":"HeroBanner.js","sourceRoot":"","sources":["../src/HeroBanner.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,WAAW,MAAM,iDAAiD,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,OAAO,IAAI,MAAM,iCAAiC,CAAC;AACnD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD,SAAS;AACT,OAAO,aAAa,MAAM,sCAAsC,CAAC;AAEjE,MAAM,CAAN,IAAY,0BAGX;AAHD,WAAY,0BAA0B;IACpC,6CAAe,CAAA;IACf,2CAAa,CAAA;AACf,CAAC,EAHW,0BAA0B,KAA1B,0BAA0B,QAGrC;AAED;;;;;;;GAOG;AAQH,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,UAAU;IAAvC;;QASE;;;;WAIG;QAED,mCAA8B,GAAoC,0BAA0B,CAAC,KAAK,CAAC;QAoJrG,sBAAiB,GAAG,CAAC,OAAoB,EAA6B,EAAE;YACtE,OAAO,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC;QACnC,CAAC,CAAC;IAqBJ,CAAC;IAjFC,IAAI,kBAAkB;QACpB,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IACD,IAAI,kBAAkB;QACpB,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IACD,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC;IACrE,CAAC;IAED,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,mBAAmB;QACrB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC,OAAO,CAAC;IACxE,CAAC;IAED,IAAI,iBAAiB;QACnB,MAAM,iBAAiB,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,iBAAiB,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;IACrC,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC1C,CAAC;IAED,IAAI,0BAA0B;QAC5B,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAmB,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,kBAAkB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAED,0BAA0B;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IACnE,CAAC;IAMD,cAAc,CAAC,KAAoB;QACjC,MAAM,MAAM,GAAgB,KAAK,CAAC,MAAM,CAAC;QACzC,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sCAAsC,EAAE,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;YACnG,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;gBACzC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACpC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF,CAAA;AAnLG;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDACA;AAQzB;IADD,QAAQ,EAAE;sEAC0F;AAQnG;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4DACK;AAQ9B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDACA;AAQzB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4DACK;AAc9B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDACA;AAWzB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;0DACG;AAG5B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;uDACnB;AAS1B;IADD,IAAI,EAAE;+CACwB;AAS7B;IADD,IAAI,EAAE;oDAC6B;AASlC;IADD,IAAI,EAAE;yDACkC;AASvC;IADD,IAAI,EAAE;yDACkC;AAvGrC,cAAc;IAPnB,aAAa,CAAC;QACb,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,kBAAkB;QAC5B,YAAY,EAAE,CAAC,IAAI,CAAC;KACrB,CAAC;GACI,cAAc,CA0LnB;AACD,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport { isSpace } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport HeroBannerTemplate from \"./HeroBannerTemplate.js\";\n\n// Styles\nimport HeroBannerCss from \"./generated/themes/HeroBanner.css.js\";\n\nexport enum UDExImageLoadingStrategies {\n Eager = \"eager\",\n Lazy = \"lazy\",\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-hero-banner\n * @public\n */\n@customElement({\n tag: \"udex-hero-banner\",\n renderer: jsxRenderer,\n styles: HeroBannerCss,\n template: HeroBannerTemplate,\n dependencies: [Icon],\n})\nclass UDExHeroBanner extends UI5Element {\n /**\n * Allows control over the background image source.\n *\n * @public\n */\n @property({ type: String })\n backgroundImage?: string;\n\n /**\n * Allows control over the background image loading strategy.\n *\n * @public\n */\n @property()\n backgroundImageLoadingStrategy: `${UDExImageLoadingStrategies}` = UDExImageLoadingStrategies.Eager;\n\n /**\n * Used as the label for background image.\n *\n * @public\n */\n @property({ type: String })\n backgroundImageLabel?: string;\n\n /**\n * Allows control over the background video source.\n *\n * @public\n */\n @property({ type: String })\n backgroundVideo?: string;\n\n /**\n * Used as the label for background video.\n *\n * @public\n */\n @property({ type: String })\n backgroundVideoLabel?: string;\n\n /**\n * Allows control over the background color.\n * Value provided should be compatible with standard CSS rendering, e.g:\n * - HEX: \"#FFF\", \"#FFFFFF\", \"FFFFFFFF\"\n * - RGB/A: \"rgb(255, 255, 255)\", \"rgba(255, 255, 255, 1)\"\n * - HSL/A: \"hsl(0, 100%, 100%)\", \"hsla(0, 100%, 100%, 1\"\n * - Variables: \"var(--sapShell_Background)\", \"var(--udexColorNeutralWhite)\"\n * - Text values: \"white\", \"red\"\n *\n * @public\n */\n @property({ type: String })\n backgroundColor?: string;\n\n /**\n * Allows control over the background-image to set css gradient.\n * Value provided should be compatible with standard CSS linear-gradient rendering, e.g:\n * linear-gradient(to bottom, #1e5799 0%,#7db9e8 100%);\n * linear-gradient(to bottom, var(--udexColorBlue2) 0%,var(--udexColorBlue4) 100%);\n *\n * @public\n */\n @property({ type: String })\n backgroundGradient?: string;\n\n @property({ type: Boolean, noAttribute: true })\n _isVideoRunning?: boolean;\n\n /**\n * Slot for primary content.\n *\n * @slot\n * @public\n */\n @slot()\n content?: Array<HTMLElement>;\n\n /**\n * Slot for image or video content.\n *\n * @slot\n * @public\n */\n @slot()\n mediaContent?: Array<HTMLElement>;\n\n /**\n * Slot for any additional content.\n *\n * @slot\n * @public\n */\n @slot()\n additionalContent?: Array<HTMLElement>;\n\n /**\n * Slot background picture override.\n *\n * @slot\n * @public\n */\n @slot()\n backgroundPicture?: Array<HTMLElement>;\n\n get hasBackgroundImage(): boolean {\n return !!this.backgroundImage;\n }\n get hasBackgroundVideo(): boolean {\n return !!this.backgroundVideo;\n }\n get wrapperBackgroundColor(): string {\n return this.backgroundColor ? this.backgroundColor : \"transparent\";\n }\n\n get wrapperBackgroundImage(): string {\n return this.backgroundGradient ? this.backgroundGradient : \"\";\n }\n\n /**\n * Determines if the video should autoplay based on the user's global preference.\n */\n get shouldVideoAutoplay() {\n return !window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n }\n\n get heroBannerClasses(): string {\n const heroBannerClasses = [\"udex-hero-banner\"];\n if (this.hasBackgroundVideo) {\n heroBannerClasses.push(\"udex-hero-banner--video\");\n }\n return heroBannerClasses.join(\" \");\n }\n\n get hasMediaContent() {\n return !!this.mediaContent?.length;\n }\n\n get hasAdditionalContent() {\n return !!this.additionalContent?.length;\n }\n\n get hasCustomBackgroundPicture() {\n return !!this.backgroundPicture?.length;\n }\n\n get _video() {\n return this.shadowRoot?.querySelector<HTMLVideoElement>(\"video\");\n }\n\n _toggleMediaButton(): void {\n if (this._video?.paused) {\n this._video?.play();\n } else {\n this._video?.pause();\n }\n this._calculateMediaButtonState();\n }\n\n _calculateMediaButtonState() {\n this._isVideoRunning = this._video ? !this._video.paused : false;\n }\n\n _isHTMLDivElement = (element: HTMLElement): element is HTMLDivElement => {\n return element.tagName === \"DIV\";\n };\n\n _handleKeydown(event: KeyboardEvent): void {\n const target = <HTMLElement>event.target;\n if (this._isHTMLDivElement(target) && isSpace(event)) {\n event.preventDefault();\n event.stopPropagation();\n this._toggleMediaButton();\n }\n }\n\n onEnterDOM() {\n if (this.backgroundVideo) {\n if (this.backgroundColor) {\n this.style.setProperty(\"--udexHeroBannerBackgroundVideoColor\", `${this.wrapperBackgroundColor}`);\n }\n this._video?.addEventListener(\"play\", () => {\n this._calculateMediaButtonState();\n });\n }\n }\n}\nUDExHeroBanner.define();\n\nexport default UDExHeroBanner;\n"]}
1
+ {"version":3,"file":"HeroBanner.js","sourceRoot":"","sources":["../src/HeroBanner.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 type { Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport { isSpace } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport HeroBannerTemplate from \"./HeroBannerTemplate.js\";\nimport type UDExBreadcrumbs from \"./Breadcrumbs.js\";\n\n// Styles\nimport HeroBannerCss from \"./generated/themes/HeroBanner.css.js\";\n\nexport enum UDExImageLoadingStrategies {\n Eager = \"eager\",\n Lazy = \"lazy\",\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-hero-banner\n * @public\n */\n@customElement({\n tag: \"udex-hero-banner\",\n renderer: jsxRenderer,\n styles: HeroBannerCss,\n template: HeroBannerTemplate,\n dependencies: [Icon],\n})\nclass UDExHeroBanner extends UI5Element {\n /**\n * Allows control over the background image source.\n *\n * @public\n */\n @property({ type: String })\n backgroundImage?: string;\n\n /**\n * Allows control over the background image loading strategy.\n *\n * @public\n */\n @property()\n backgroundImageLoadingStrategy: `${UDExImageLoadingStrategies}` = UDExImageLoadingStrategies.Eager;\n\n /**\n * Used as the label for background image.\n *\n * @public\n */\n @property({ type: String })\n backgroundImageLabel?: string;\n\n /**\n * Allows control over the background video source.\n *\n * @public\n */\n @property({ type: String })\n backgroundVideo?: string;\n\n /**\n * Used as the label for background video.\n *\n * @public\n */\n @property({ type: String })\n backgroundVideoLabel?: string;\n\n /**\n * Allows control over the background color.\n * Value provided should be compatible with standard CSS rendering, e.g:\n * - HEX: \"#FFF\", \"#FFFFFF\", \"FFFFFFFF\"\n * - RGB/A: \"rgb(255, 255, 255)\", \"rgba(255, 255, 255, 1)\"\n * - HSL/A: \"hsl(0, 100%, 100%)\", \"hsla(0, 100%, 100%, 1\"\n * - Variables: \"var(--sapShell_Background)\", \"var(--udexColorNeutralWhite)\"\n * - Text values: \"white\", \"red\"\n *\n * @public\n */\n @property({ type: String })\n backgroundColor?: string;\n\n /**\n * Allows control over the background-image to set css gradient.\n * Value provided should be compatible with standard CSS linear-gradient rendering, e.g:\n * linear-gradient(to bottom, #1e5799 0%,#7db9e8 100%);\n * linear-gradient(to bottom, var(--udexColorBlue2) 0%,var(--udexColorBlue4) 100%);\n *\n * @public\n */\n @property({ type: String })\n backgroundGradient?: string;\n\n @property({ type: Boolean, noAttribute: true })\n _isVideoRunning?: boolean;\n\n /**\n * Slot for primary content.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n content!: Slot<HTMLElement>;\n\n /**\n * Slot for image or video content.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n mediaContent!: Slot<HTMLElement>;\n\n /**\n * Slot for any additional content.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n additionalContent!: Slot<HTMLElement>;\n\n /**\n * Slot background picture override.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n backgroundPicture!: Slot<HTMLElement>;\n\n /**\n * Slot for breadcrumbs.\n *\n * @slot breadcrumbs\n * @public\n */\n @slot({ type: HTMLElement })\n breadcrumbs!: Slot<UDExBreadcrumbs>;\n\n onEnterDOM() {\n if (this.backgroundVideo) {\n if (this.backgroundColor) {\n this.style.setProperty(\"--udexHeroBannerBackgroundVideoColor\", `${this.wrapperBackgroundColor}`);\n }\n this._video?.addEventListener(\"play\", () => {\n this._calculateMediaButtonState();\n });\n }\n }\n\n _toggleMediaButton(): void {\n if (this._video?.paused) {\n this._video?.play();\n } else {\n this._video?.pause();\n }\n this._calculateMediaButtonState();\n }\n\n _calculateMediaButtonState() {\n this._isVideoRunning = this._video ? !this._video.paused : false;\n }\n\n _isHTMLDivElement = (element: HTMLElement): element is HTMLDivElement => {\n return element.tagName === \"DIV\";\n };\n\n _handleKeydown(event: KeyboardEvent): void {\n const target = <HTMLElement>event.target;\n if (this._isHTMLDivElement(target) && isSpace(event)) {\n event.preventDefault();\n event.stopPropagation();\n this._toggleMediaButton();\n }\n }\n\n get hasBackgroundImage(): boolean {\n return !!this.backgroundImage;\n }\n\n get hasBackgroundVideo(): boolean {\n return !!this.backgroundVideo;\n }\n\n get wrapperBackgroundColor(): string {\n return this.backgroundColor ? this.backgroundColor : \"transparent\";\n }\n\n get wrapperBackgroundImage(): string {\n return this.backgroundGradient ? this.backgroundGradient : \"\";\n }\n\n /**\n * Determines if the video should autoplay based on the user's global preference.\n */\n get shouldVideoAutoplay() {\n return !window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n }\n\n get heroBannerClasses(): string {\n const heroBannerClasses = [\"udex-hero-banner\"];\n if (this.hasBackgroundVideo) {\n heroBannerClasses.push(\"udex-hero-banner--video\");\n }\n return heroBannerClasses.join(\" \");\n }\n\n get hasMediaContent() {\n return !!this.mediaContent?.length;\n }\n\n get hasAdditionalContent() {\n return !!this.additionalContent?.length;\n }\n\n get hasCustomBackgroundPicture() {\n return !!this.backgroundPicture?.length;\n }\n\n get _video() {\n return this.shadowRoot?.querySelector<HTMLVideoElement>(\"video\");\n }\n}\n\nUDExHeroBanner.define();\n\nexport default UDExHeroBanner;\n"]}
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
2
2
  import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
3
3
  import "@ui5/webcomponents-icons/dist/play.js";
4
4
  import "@ui5/webcomponents-icons/dist/pause.js";
@@ -10,6 +10,6 @@ export default function HeroBannerTemplate() {
10
10
  return (_jsxs("div", { className: this.heroBannerClasses, part: "wrapper", style: {
11
11
  backgroundColor: this.wrapperBackgroundColor,
12
12
  ...(this.wrapperBackgroundImage ? { backgroundImage: this.wrapperBackgroundImage } : {})
13
- }, children: [this.hasBackgroundVideo ? (_jsxs("div", { className: `${rootClass}__background-video-wrapper`, tabIndex: 0, onKeyDown: this._handleKeydown, children: [_jsx("video", { autoPlay: this.shouldVideoAutoplay, muted: true, loop: true, playsInline: true, part: "background-video", className: `${rootClass}__background-video`, "aria-label": this.backgroundVideoLabel, children: _jsx("source", { src: this.backgroundVideo, type: "video/mp4" }) }), _jsx("div", { className: `${rootClass}__background-video-overlay` }), this.hasBackgroundImage && (_jsx("picture", { children: _jsx("img", { loading: this.backgroundImageLoadingStrategy, src: this.backgroundImage, part: "background-image", className: `${rootClass}__background-image`, alt: this.backgroundImageLabel }) })), _jsxs("div", { className: `${rootClass}__content-container`, children: [_jsx("slot", { id: `${rootClass}__content`, name: "content", part: "content" }), _jsx("slot", { id: `${rootClass}__additionalContent`, name: "additionalContent", part: "additionalContent" })] }), _jsx("button", { className: `${rootClass}__media-button`, "aria-label": "Play / Pause button", role: "button", onClick: this._toggleMediaButton, children: _jsx(UI5Icon, { name: btnIcon }) })] })) : (_jsxs("div", { className: `${rootClass}__container`, children: [this.hasCustomBackgroundPicture ? (_jsx("slot", { name: "backgroundPicture" })) : this.hasBackgroundImage ? (_jsx("picture", { children: _jsx("img", { loading: this.backgroundImageLoadingStrategy, src: this.backgroundImage, part: "background-image", className: `${rootClass}__background-image`, alt: this.backgroundImageLabel }) })) : null, _jsxs("div", { className: `${rootClass}__content-container`, children: [_jsx("slot", { id: `${rootClass}__content`, name: "content", part: "content" }), this.hasAdditionalContent && (_jsx("slot", { id: `${rootClass}__additionalContent`, name: "additionalContent", part: "additionalContent" }))] })] })), this.hasMediaContent && (_jsx("slot", { id: `${rootClass}__mediaContent`, name: "mediaContent", part: "mediaContent" }))] }));
13
+ }, children: [this.hasBackgroundVideo ? (_jsxs("div", { className: `${rootClass}__background-video-wrapper`, tabIndex: 0, onKeyDown: this._handleKeydown, children: [_jsx("video", { autoPlay: this.shouldVideoAutoplay, muted: true, loop: true, playsInline: true, part: "background-video", className: `${rootClass}__background-video`, "aria-label": this.backgroundVideoLabel, children: _jsx("source", { src: this.backgroundVideo, type: "video/mp4" }) }), _jsx("div", { className: `${rootClass}__background-video-overlay` }), this.hasBackgroundImage && (_jsx("picture", { children: _jsx("img", { loading: this.backgroundImageLoadingStrategy, src: this.backgroundImage, part: "background-image", className: `${rootClass}__background-image`, alt: this.backgroundImageLabel }) })), _jsxs(_Fragment, { children: [_jsx("slot", { id: `${rootClass}__breadcrumbs`, name: "breadcrumbs", part: "breadcrumbs" }), _jsxs("div", { className: `${rootClass}__content-container`, children: [_jsx("slot", { id: `${rootClass}__content`, name: "content", part: "content" }), _jsx("slot", { id: `${rootClass}__additionalContent`, name: "additionalContent", part: "additionalContent" })] }), _jsx("button", { className: `${rootClass}__media-button`, "aria-label": "Play / Pause button", role: "button", onClick: this._toggleMediaButton, children: _jsx(UI5Icon, { name: btnIcon }) })] })] })) : (_jsxs("div", { className: `${rootClass}__container`, children: [this.hasCustomBackgroundPicture ? (_jsx("slot", { name: "backgroundPicture" })) : this.hasBackgroundImage ? (_jsx("picture", { children: _jsx("img", { loading: this.backgroundImageLoadingStrategy, src: this.backgroundImage, part: "background-image", className: `${rootClass}__background-image`, alt: this.backgroundImageLabel }) })) : null, _jsxs("div", { className: `${rootClass}__content-container`, children: [_jsxs("div", { id: `${rootClass}__content`, children: [_jsx("slot", { id: `${rootClass}__breadcrumbs`, name: "breadcrumbs", part: "breadcrumbs" }), _jsx("slot", { name: "content", part: "content" })] }), this.hasAdditionalContent && (_jsx("slot", { id: `${rootClass}__additionalContent`, name: "additionalContent", part: "additionalContent" }))] })] })), this.hasMediaContent && (_jsx("slot", { id: `${rootClass}__mediaContent`, name: "mediaContent", part: "mediaContent" }))] }));
14
14
  }
15
15
  //# sourceMappingURL=HeroBannerTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeroBannerTemplate.js","sourceRoot":"","sources":["../src/HeroBannerTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type HeroBanner from \"./HeroBanner.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/play.js\";\nimport \"@ui5/webcomponents-icons/dist/pause.js\";\nimport playIcon from \"@ui5/webcomponents-icons/play.js\";\nimport pauseIcon from \"@ui5/webcomponents-icons/pause.js\";\n\nexport default function HeroBannerTemplate(this: HeroBanner) {\n const rootClass = \"udex-hero-banner\";\n const btnIcon = this._isVideoRunning ? playIcon : pauseIcon;\n\n return (\n <div\n className={this.heroBannerClasses}\n part=\"wrapper\"\n style={{\n backgroundColor: this.wrapperBackgroundColor,\n ...(this.wrapperBackgroundImage ? { backgroundImage: this.wrapperBackgroundImage } : {})\n }}>\n {this.hasBackgroundVideo ? (\n <div\n className={`${rootClass}__background-video-wrapper`}\n tabIndex={0}\n onKeyDown={this._handleKeydown}>\n <video\n autoPlay={this.shouldVideoAutoplay}\n muted\n loop\n playsInline\n part=\"background-video\"\n className={`${rootClass}__background-video`}\n aria-label={this.backgroundVideoLabel}>\n <source src={this.backgroundVideo} type=\"video/mp4\" />\n </video>\n <div className={`${rootClass}__background-video-overlay`}></div>\n {this.hasBackgroundImage && (\n <picture>\n <img\n loading={this.backgroundImageLoadingStrategy}\n src={this.backgroundImage}\n part=\"background-image\"\n className={`${rootClass}__background-image`}\n alt={this.backgroundImageLabel}/>\n </picture>\n )}\n <div className={`${rootClass}__content-container`}>\n <slot\n id={`${rootClass}__content`}\n name=\"content\"\n part=\"content\">\n </slot>\n <slot\n id={`${rootClass}__additionalContent`}\n name=\"additionalContent\"\n part=\"additionalContent\">\n </slot>\n </div>\n <button\n className={`${rootClass}__media-button`}\n aria-label=\"Play / Pause button\"\n role=\"button\"\n onClick={this._toggleMediaButton}>\n <UI5Icon name={btnIcon}></UI5Icon>\n </button>\n </div>\n ) : (\n <div className={`${rootClass}__container`}>\n {this.hasCustomBackgroundPicture ? (\n <slot name=\"backgroundPicture\"></slot>\n ) : this.hasBackgroundImage ? (\n <picture>\n <img\n loading={this.backgroundImageLoadingStrategy}\n src={this.backgroundImage}\n part=\"background-image\"\n className={`${rootClass}__background-image`}\n alt={this.backgroundImageLabel}\n />\n </picture>\n ) : null}\n <div className={`${rootClass}__content-container`}>\n <slot\n id={`${rootClass}__content`}\n name=\"content\"\n part=\"content\">\n </slot>\n {this.hasAdditionalContent && (\n <slot\n id={`${rootClass}__additionalContent`}\n name=\"additionalContent\"\n part=\"additionalContent\">\n </slot>\n )}\n </div>\n </div>\n )}\n {this.hasMediaContent && (\n <slot\n id={`${rootClass}__mediaContent`}\n name=\"mediaContent\"\n part=\"mediaContent\">\n </slot>\n )}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"HeroBannerTemplate.js","sourceRoot":"","sources":["../src/HeroBannerTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type HeroBanner from \"./HeroBanner.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/play.js\";\nimport \"@ui5/webcomponents-icons/dist/pause.js\";\nimport playIcon from \"@ui5/webcomponents-icons/play.js\";\nimport pauseIcon from \"@ui5/webcomponents-icons/pause.js\";\n\nexport default function HeroBannerTemplate(this: HeroBanner) {\n const rootClass = \"udex-hero-banner\";\n const btnIcon = this._isVideoRunning ? playIcon : pauseIcon;\n\n return (\n <div\n className={this.heroBannerClasses}\n part=\"wrapper\"\n style={{\n backgroundColor: this.wrapperBackgroundColor,\n ...(this.wrapperBackgroundImage ? { backgroundImage: this.wrapperBackgroundImage } : {})\n }}>\n {this.hasBackgroundVideo ? (\n <div\n className={`${rootClass}__background-video-wrapper`}\n tabIndex={0}\n onKeyDown={this._handleKeydown}>\n <video\n autoPlay={this.shouldVideoAutoplay}\n muted\n loop\n playsInline\n part=\"background-video\"\n className={`${rootClass}__background-video`}\n aria-label={this.backgroundVideoLabel}>\n <source src={this.backgroundVideo} type=\"video/mp4\" />\n </video>\n <div className={`${rootClass}__background-video-overlay`}></div>\n {this.hasBackgroundImage && (\n <picture>\n <img\n loading={this.backgroundImageLoadingStrategy}\n src={this.backgroundImage}\n part=\"background-image\"\n className={`${rootClass}__background-image`}\n alt={this.backgroundImageLabel}/>\n </picture>\n )}\n <>\n <slot\n id={`${rootClass}__breadcrumbs`}\n name=\"breadcrumbs\"\n part=\"breadcrumbs\">\n </slot>\n <div className={`${rootClass}__content-container`}>\n <slot\n id={`${rootClass}__content`}\n name=\"content\"\n part=\"content\">\n </slot>\n <slot\n id={`${rootClass}__additionalContent`}\n name=\"additionalContent\"\n part=\"additionalContent\">\n </slot>\n </div>\n <button\n className={`${rootClass}__media-button`}\n aria-label=\"Play / Pause button\"\n role=\"button\"\n onClick={this._toggleMediaButton}>\n <UI5Icon name={btnIcon}></UI5Icon>\n </button>\n </>\n </div>\n ) : (\n <div className={`${rootClass}__container`}>\n {this.hasCustomBackgroundPicture ? (\n <slot name=\"backgroundPicture\"></slot>\n ) : this.hasBackgroundImage ? (\n <picture>\n <img\n loading={this.backgroundImageLoadingStrategy}\n src={this.backgroundImage}\n part=\"background-image\"\n className={`${rootClass}__background-image`}\n alt={this.backgroundImageLabel}\n />\n </picture>\n ) : null}\n <div className={`${rootClass}__content-container`}>\n <div id={`${rootClass}__content`}>\n <slot\n id={`${rootClass}__breadcrumbs`}\n name=\"breadcrumbs\"\n part=\"breadcrumbs\">\n </slot>\n <slot\n name=\"content\"\n part=\"content\">\n </slot>\n </div>\n {this.hasAdditionalContent && (\n <slot\n id={`${rootClass}__additionalContent`}\n name=\"additionalContent\"\n part=\"additionalContent\">\n </slot>\n )}\n </div>\n </div>\n )}\n {this.hasMediaContent && (\n <slot\n id={`${rootClass}__mediaContent`}\n name=\"mediaContent\"\n part=\"mediaContent\">\n </slot>\n )}\n </div>\n );\n}\n"]}
@@ -21,6 +21,8 @@ declare class UDExMessageStrip extends MessageStrip {
21
21
  /**
22
22
  * Defines the component Status Type.
23
23
  *
24
+ * `Text` value is DEPRECATED! Use `Icon` instead.
25
+ *
24
26
  * @public
25
27
  */
26
28
  statusType: `${UDExMessageStripStatusType}`;
@@ -81,6 +83,7 @@ declare class UDExMessageStrip extends MessageStrip {
81
83
  getTranslation(text: I18nText): string;
82
84
  textStatusTypeMapping(): Record<string, string>;
83
85
  isDesignAction(): boolean;
86
+ get isDecorativeDesign(): boolean;
84
87
  get isDesignWarning(): boolean;
85
88
  _closeClick(): void;
86
89
  get shouldHideIcon(): boolean;
@@ -34,16 +34,18 @@ let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends Messa
34
34
  *
35
35
  * @public
36
36
  */
37
- this.design = UDExMessageStripDesign.Action;
37
+ this.design = UDExMessageStripDesign.Neutral;
38
38
  /**
39
39
  * Defines the component Status Type.
40
40
  *
41
+ * `Text` value is DEPRECATED! Use `Icon` instead.
42
+ *
41
43
  * @public
42
44
  */
43
45
  this.statusType = UDExMessageStripStatusType.Icon;
44
46
  }
45
47
  onBeforeRendering() {
46
- if (this.isDesignActionOrIsNotIconType) {
48
+ if (this.isNotIconStatusType || (this.isDecorativeDesign && this.icon.length === 0)) {
47
49
  this.hideIcon = true;
48
50
  }
49
51
  }
@@ -57,10 +59,36 @@ let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends Messa
57
59
  [UDExMessageStripDesign.Negative]: this.statusErrorText || this.getTranslation(MESSAGE_STRIP_ERROR),
58
60
  [UDExMessageStripDesign.Warning]: this.statusWarningText || this.getTranslation(MESSAGE_STRIP_WARNING),
59
61
  [UDExMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),
62
+ [UDExMessageStripDesign.Neutral]: this.getTranslation(MESSAGE_STRIP_ACTION),
60
63
  };
61
64
  }
62
65
  isDesignAction() {
63
- return this.design === UDExMessageStripDesign.Action;
66
+ return this.design === UDExMessageStripDesign.Action || this.design === UDExMessageStripDesign.Neutral;
67
+ }
68
+ get isDecorativeDesign() {
69
+ const decorativeDesigns = [
70
+ UDExMessageStripDesign.Action,
71
+ UDExMessageStripDesign.Neutral,
72
+ UDExMessageStripDesign.GreyLight,
73
+ UDExMessageStripDesign.GreyDark,
74
+ UDExMessageStripDesign.RedLight,
75
+ UDExMessageStripDesign.RedDark,
76
+ UDExMessageStripDesign.MangoLight,
77
+ UDExMessageStripDesign.MangoDark,
78
+ UDExMessageStripDesign.GreenLight,
79
+ UDExMessageStripDesign.GreenDark,
80
+ UDExMessageStripDesign.TealLight,
81
+ UDExMessageStripDesign.TealDark,
82
+ UDExMessageStripDesign.BlueLight,
83
+ UDExMessageStripDesign.BlueDark,
84
+ UDExMessageStripDesign.IndigoLight,
85
+ UDExMessageStripDesign.IndigoDark,
86
+ UDExMessageStripDesign.PinkLight,
87
+ UDExMessageStripDesign.PinkDark,
88
+ UDExMessageStripDesign.RaspberryLight,
89
+ UDExMessageStripDesign.RaspberryDark,
90
+ ];
91
+ return decorativeDesigns.includes(this.design);
64
92
  }
65
93
  get isDesignWarning() {
66
94
  return this.design === UDExMessageStripDesign.Warning;
@@ -69,16 +97,19 @@ let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends Messa
69
97
  this.fireDecoratorEvent("close");
70
98
  }
71
99
  get shouldHideIcon() {
72
- if (this.isDesignActionOrIsNotIconType) {
100
+ if (this.isDecorativeDesign) {
101
+ return this.icon.length === 0;
102
+ }
103
+ if (this.isNotIconStatusType) {
73
104
  return this.hideIcon || this.icon.length === 0;
74
105
  }
75
106
  return this.hideIcon;
76
107
  }
77
108
  get hideTextStatus() {
78
- return this.statusType !== UDExMessageStripStatusType.Text || this.isDesignAction();
109
+ return this.statusType !== UDExMessageStripStatusType.Text || this.isDecorativeDesign;
79
110
  }
80
111
  get textStatus() {
81
- if (this.design !== UDExMessageStripDesign.Action) {
112
+ if (!this.isDecorativeDesign) {
82
113
  return this.textStatusTypeMapping()[this.design];
83
114
  }
84
115
  }
@@ -92,10 +123,11 @@ let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends Messa
92
123
  return this.icon.length > 0;
93
124
  }
94
125
  get isDesignActionOrIsNotIconType() {
95
- return this.isDesignAction() || this.isNotIconStatusType;
126
+ return this.isDecorativeDesign || this.isNotIconStatusType;
96
127
  }
97
128
  get hiddenText() {
98
- return `${this.textStatusTypeMapping()[this.design]} ${this.hideCloseButton ? "" : this._closableText}`;
129
+ const statusText = this.isDecorativeDesign ? (this.textStatusTypeMapping()[this.design] ?? "") : this.textStatusTypeMapping()[this.design];
130
+ return `${statusText} ${this.hideCloseButton ? "" : this._closableText}`.trim();
99
131
  }
100
132
  };
101
133
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport MessageStrip from \"@ui5/webcomponents/dist/MessageStrip.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n MESSAGE_STRIP_ERROR,\n MESSAGE_STRIP_INFORMATION,\n MESSAGE_STRIP_SUCCESS,\n MESSAGE_STRIP_WARNING,\n MESSAGE_STRIP_ACTION,\n MESSAGE_STRIP_CLOSE_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport { UDExMessageStripDesign, UDExMessageStripStatusType } from \"./types/MessageStrip.js\";\nimport translate from \"./utils/translate.js\";\n\n// Template\nimport MessageStripTemplate from \"./MessageStripTemplate.js\";\n\n// Styles\nimport MessageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\n/**\n * @class\n *\n * @constructor\n * @extends MessageStrip\n * @tagname udex-message-strip\n * @public\n */\n@customElement({\n tag: \"udex-message-strip\",\n renderer: jsxRenderer,\n styles: [MessageStrip.styles, MessageStripCss],\n template: MessageStripTemplate,\n})\n\nclass UDExMessageStrip extends MessageStrip {\n /**\n * Defines the component type.\n *\n * @public\n */\n @property()\n /** @ts-expect-error */\n design!: `${UDExMessageStripDesign}` = UDExMessageStripDesign.Action;\n\n /**\n * Defines the component Status Type.\n *\n * @public\n */\n @property()\n statusType: `${UDExMessageStripStatusType}` = UDExMessageStripStatusType.Icon;\n\n /**\n * Defines whether the MessageStrip renders close button.\n *\n * @public\n */\n @property({ type: Boolean })\n hideCloseButton!: boolean;\n\n /**\n * Defines custom status text for information type\n *\n * @default \"\"\n * @public\n */\n @property()\n statusInformationText!: string;\n\n /**\n * Defines custom status text for success type\n * @default \"\"\n * @public\n */\n @property()\n statusSuccessText!: string;\n\n /**\n * Defines custom status text for error type\n * @default \"\"\n * @public\n */\n @property()\n statusErrorText!: string;\n\n /**\n * Defines custom status text for warning type\n * @default \"\"\n * @public\n */\n @property()\n statusWarningText!: string;\n\n /**\n * Defines accessible name for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconAccessibleName!: string;\n\n /**\n * Defines tooltip for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconTooltip!: string;\n\n /**\n * Defines the content of the component.\n *\n * @slot\n * @public\n */\n @slot({ type: Node }) default!: Node;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering() {\n if (this.isDesignActionOrIsNotIconType) {\n this.hideIcon = true;\n }\n }\n\n getTranslation(text: I18nText): string {\n return translate(UDExMessageStrip, text);\n }\n\n textStatusTypeMapping(): Record<string, string> {\n return {\n [UDExMessageStripDesign.Information]: this.statusInformationText || this.getTranslation(MESSAGE_STRIP_INFORMATION),\n [UDExMessageStripDesign.Positive]: this.statusSuccessText || this.getTranslation(MESSAGE_STRIP_SUCCESS),\n [UDExMessageStripDesign.Negative]: this.statusErrorText || this.getTranslation(MESSAGE_STRIP_ERROR),\n [UDExMessageStripDesign.Warning]: this.statusWarningText || this.getTranslation(MESSAGE_STRIP_WARNING),\n [UDExMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),\n };\n }\n\n isDesignAction(): boolean {\n return this.design === UDExMessageStripDesign.Action;\n }\n\n get isDesignWarning(): boolean {\n return this.design === UDExMessageStripDesign.Warning;\n }\n\n _closeClick(): void {\n this.fireDecoratorEvent(\"close\");\n }\n\n get shouldHideIcon(): boolean {\n if (this.isDesignActionOrIsNotIconType) {\n return this.hideIcon || this.icon.length === 0;\n }\n\n return this.hideIcon;\n }\n\n get hideTextStatus(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Text || this.isDesignAction();\n }\n\n get textStatus(): string | undefined {\n if (this.design !== UDExMessageStripDesign.Action) {\n return this.textStatusTypeMapping()[this.design];\n }\n }\n\n get _closeButtonText(): string {\n return this.closeIconTooltip || `${this.textStatus ?? \"\"} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;\n }\n\n get isNotIconStatusType(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Icon;\n }\n\n get hasIcon(): boolean {\n return this.icon.length > 0;\n }\n\n get isDesignActionOrIsNotIconType(): boolean {\n return this.isDesignAction() || this.isNotIconStatusType;\n }\n\n get hiddenText(): string {\n return `${this.textStatusTypeMapping()[this.design]} ${this.hideCloseButton ? \"\" : this._closableText}`;\n }\n}\n\nUDExMessageStrip.define();\n\nexport default UDExMessageStrip;\n"]}
1
+ {"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport MessageStrip from \"@ui5/webcomponents/dist/MessageStrip.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n MESSAGE_STRIP_ERROR,\n MESSAGE_STRIP_INFORMATION,\n MESSAGE_STRIP_SUCCESS,\n MESSAGE_STRIP_WARNING,\n MESSAGE_STRIP_ACTION,\n MESSAGE_STRIP_CLOSE_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport { UDExMessageStripDesign, UDExMessageStripStatusType } from \"./types/MessageStrip.js\";\nimport translate from \"./utils/translate.js\";\n\n// Template\nimport MessageStripTemplate from \"./MessageStripTemplate.js\";\n\n// Styles\nimport MessageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\n/**\n * @class\n *\n * @constructor\n * @extends MessageStrip\n * @tagname udex-message-strip\n * @public\n */\n@customElement({\n tag: \"udex-message-strip\",\n renderer: jsxRenderer,\n styles: [MessageStrip.styles, MessageStripCss],\n template: MessageStripTemplate,\n})\n\nclass UDExMessageStrip extends MessageStrip {\n /**\n * Defines the component type.\n *\n * @public\n */\n @property()\n /** @ts-expect-error */\n design!: `${UDExMessageStripDesign}` = UDExMessageStripDesign.Neutral;\n\n /**\n * Defines the component Status Type.\n *\n * `Text` value is DEPRECATED! Use `Icon` instead.\n *\n * @public\n */\n @property()\n statusType: `${UDExMessageStripStatusType}` = UDExMessageStripStatusType.Icon;\n\n /**\n * Defines whether the MessageStrip renders close button.\n *\n * @public\n */\n @property({ type: Boolean })\n hideCloseButton!: boolean;\n\n /**\n * Defines custom status text for information type\n *\n * @default \"\"\n * @public\n */\n @property()\n statusInformationText!: string;\n\n /**\n * Defines custom status text for success type\n * @default \"\"\n * @public\n */\n @property()\n statusSuccessText!: string;\n\n /**\n * Defines custom status text for error type\n * @default \"\"\n * @public\n */\n @property()\n statusErrorText!: string;\n\n /**\n * Defines custom status text for warning type\n * @default \"\"\n * @public\n */\n @property()\n statusWarningText!: string;\n\n /**\n * Defines accessible name for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconAccessibleName!: string;\n\n /**\n * Defines tooltip for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconTooltip!: string;\n\n /**\n * Defines the content of the component.\n *\n * @slot\n * @public\n */\n @slot({ type: Node }) default!: Node;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering() {\n if (this.isNotIconStatusType || (this.isDecorativeDesign && this.icon.length === 0)) {\n this.hideIcon = true;\n }\n }\n\n getTranslation(text: I18nText): string {\n return translate(UDExMessageStrip, text);\n }\n\n textStatusTypeMapping(): Record<string, string> {\n return {\n [UDExMessageStripDesign.Information]: this.statusInformationText || this.getTranslation(MESSAGE_STRIP_INFORMATION),\n [UDExMessageStripDesign.Positive]: this.statusSuccessText || this.getTranslation(MESSAGE_STRIP_SUCCESS),\n [UDExMessageStripDesign.Negative]: this.statusErrorText || this.getTranslation(MESSAGE_STRIP_ERROR),\n [UDExMessageStripDesign.Warning]: this.statusWarningText || this.getTranslation(MESSAGE_STRIP_WARNING),\n [UDExMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),\n [UDExMessageStripDesign.Neutral]: this.getTranslation(MESSAGE_STRIP_ACTION),\n };\n }\n\n isDesignAction(): boolean {\n return this.design === UDExMessageStripDesign.Action || this.design === UDExMessageStripDesign.Neutral;\n }\n\n get isDecorativeDesign(): boolean {\n const decorativeDesigns: string[] = [\n UDExMessageStripDesign.Action,\n UDExMessageStripDesign.Neutral,\n UDExMessageStripDesign.GreyLight,\n UDExMessageStripDesign.GreyDark,\n UDExMessageStripDesign.RedLight,\n UDExMessageStripDesign.RedDark,\n UDExMessageStripDesign.MangoLight,\n UDExMessageStripDesign.MangoDark,\n UDExMessageStripDesign.GreenLight,\n UDExMessageStripDesign.GreenDark,\n UDExMessageStripDesign.TealLight,\n UDExMessageStripDesign.TealDark,\n UDExMessageStripDesign.BlueLight,\n UDExMessageStripDesign.BlueDark,\n UDExMessageStripDesign.IndigoLight,\n UDExMessageStripDesign.IndigoDark,\n UDExMessageStripDesign.PinkLight,\n UDExMessageStripDesign.PinkDark,\n UDExMessageStripDesign.RaspberryLight,\n UDExMessageStripDesign.RaspberryDark,\n ];\n return decorativeDesigns.includes(this.design);\n }\n\n get isDesignWarning(): boolean {\n return this.design === UDExMessageStripDesign.Warning;\n }\n\n _closeClick(): void {\n this.fireDecoratorEvent(\"close\");\n }\n\n get shouldHideIcon(): boolean {\n if (this.isDecorativeDesign) {\n return this.icon.length === 0;\n }\n if (this.isNotIconStatusType) {\n return this.hideIcon || this.icon.length === 0;\n }\n return this.hideIcon;\n }\n\n get hideTextStatus(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Text || this.isDecorativeDesign;\n }\n\n get textStatus(): string | undefined {\n if (!this.isDecorativeDesign) {\n return this.textStatusTypeMapping()[this.design];\n }\n }\n\n get _closeButtonText(): string {\n return this.closeIconTooltip || `${this.textStatus ?? \"\"} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;\n }\n\n get isNotIconStatusType(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Icon;\n }\n\n get hasIcon(): boolean {\n return this.icon.length > 0;\n }\n\n get isDesignActionOrIsNotIconType(): boolean {\n return this.isDecorativeDesign || this.isNotIconStatusType;\n }\n\n get hiddenText(): string {\n const statusText = this.isDecorativeDesign ? (this.textStatusTypeMapping()[this.design] ?? \"\") : this.textStatusTypeMapping()[this.design];\n return `${statusText} ${this.hideCloseButton ? \"\" : this._closableText}`.trim();\n }\n}\n\nUDExMessageStrip.define();\n\nexport default UDExMessageStrip;\n"]}
package/dist/Modal.d.ts CHANGED
@@ -25,5 +25,6 @@ declare class UDExModal extends Dialog {
25
25
  * @default "default"
26
26
  */
27
27
  type: `${UDExModalType}`;
28
+ onAfterRendering(): void;
28
29
  }
29
30
  export default UDExModal;
package/dist/Modal.js CHANGED
@@ -44,6 +44,13 @@ let UDExModal = class UDExModal extends Dialog {
44
44
  */
45
45
  this.type = UDExModalType.default;
46
46
  }
47
+ onAfterRendering() {
48
+ const content = this.shadowRoot?.querySelector(".ui5-popup-content");
49
+ if (content) {
50
+ const gutterWidth = content.offsetWidth - content.clientWidth;
51
+ this.style.setProperty("--udex-modal-scrollbar-width", `${gutterWidth}px`);
52
+ }
53
+ }
47
54
  };
48
55
  __decorate([
49
56
  property()
package/dist/Modal.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,KAAK,MAAM,kCAAkC,CAAC;AAErD,SAAS;AACT,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAC3F,OAAO,SAAS,MAAM,wDAAwD,CAAC;AAC/E,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AACvD,OAAO,0BAA0B,MAAM,uCAAuC,CAAC;AAE/E,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACjB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;;;;;;;;;;;GAWG;AAYH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,MAAM;IAA9B;;QACE;;;;;;;UAOE;QAEA,SAAI,GAAuB,aAAa,CAAC,OAAO,CAAC;IACrD,CAAC;CAAA,CAAA;AADG;IADD,QAAQ,EAAE;uCACwC;AAV/C,SAAS;IAXd,aAAa,CAAC;QACb,GAAG,EAAE,YAAY;QACjB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE;YACN,KAAK,CAAC,MAAM;YACZ,eAAe;YACf,SAAS;YACT,QAAQ;YACR,0BAA0B,EAAE;SAC7B;KACF,CAAC;GACI,SAAS,CAWd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport Dialog from \"@ui5/webcomponents/dist/Dialog.js\";\nimport Popup from \"@ui5/webcomponents/dist/Popup.js\";\n\n// Styles\nimport PopupsCommonCss from \"@ui5/webcomponents/dist/generated/themes/PopupsCommon.css.js\";\nimport dialogCSS from \"@ui5/webcomponents/dist/generated/themes/Dialog.css.js\";\nimport ModalCss from \"./generated/themes/Modal.css.js\";\nimport getEffectiveScrollbarStyle from \"./utils/getEffectiveScrollbarStyle.js\";\n\nexport enum UDExModalType {\n default = \"default\",\n basic = \"basic\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-modal</code> component is a demo component that displays some text.\n *\n * @constructor\n * @extends Dialog\n * @tagname udex-modal\n * @public\n */\n@customElement({\n tag: \"udex-modal\",\n renderer: jsxRenderer,\n styles: [\n Popup.styles,\n PopupsCommonCss,\n dialogCSS,\n ModalCss,\n getEffectiveScrollbarStyle(),\n ],\n})\nclass UDExModal extends Dialog {\n /**\n * Defines modal display type\n * <br><br>\n * <b>Note:</b> The <code>basic</code> type is simplified version of styling.\n *\n * @public\n * @default \"default\"\n */\n @property()\n type: `${UDExModalType}` = UDExModalType.default;\n}\n\nUDExModal.define();\n\nexport default UDExModal;\n"]}
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,KAAK,MAAM,kCAAkC,CAAC;AAErD,SAAS;AACT,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAC3F,OAAO,SAAS,MAAM,wDAAwD,CAAC;AAC/E,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AACvD,OAAO,0BAA0B,MAAM,uCAAuC,CAAC;AAE/E,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACjB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;;;;;;;;;;;GAWG;AAYH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,MAAM;IAA9B;;QACE;;;;;;;UAOE;QAEA,SAAI,GAAuB,aAAa,CAAC,OAAO,CAAC;IASrD,CAAC;IAPC,gBAAgB;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAc,oBAAoB,CAAC,CAAC;QAClF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YAC9D,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,8BAA8B,EAAE,GAAG,WAAW,IAAI,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;CACF,CAAA;AATG;IADD,QAAQ,EAAE;uCACwC;AAV/C,SAAS;IAXd,aAAa,CAAC;QACb,GAAG,EAAE,YAAY;QACjB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE;YACN,KAAK,CAAC,MAAM;YACZ,eAAe;YACf,SAAS;YACT,QAAQ;YACR,0BAA0B,EAAE;SAC7B;KACF,CAAC;GACI,SAAS,CAmBd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport Dialog from \"@ui5/webcomponents/dist/Dialog.js\";\nimport Popup from \"@ui5/webcomponents/dist/Popup.js\";\n\n// Styles\nimport PopupsCommonCss from \"@ui5/webcomponents/dist/generated/themes/PopupsCommon.css.js\";\nimport dialogCSS from \"@ui5/webcomponents/dist/generated/themes/Dialog.css.js\";\nimport ModalCss from \"./generated/themes/Modal.css.js\";\nimport getEffectiveScrollbarStyle from \"./utils/getEffectiveScrollbarStyle.js\";\n\nexport enum UDExModalType {\n default = \"default\",\n basic = \"basic\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-modal</code> component is a demo component that displays some text.\n *\n * @constructor\n * @extends Dialog\n * @tagname udex-modal\n * @public\n */\n@customElement({\n tag: \"udex-modal\",\n renderer: jsxRenderer,\n styles: [\n Popup.styles,\n PopupsCommonCss,\n dialogCSS,\n ModalCss,\n getEffectiveScrollbarStyle(),\n ],\n})\nclass UDExModal extends Dialog {\n /**\n * Defines modal display type\n * <br><br>\n * <b>Note:</b> The <code>basic</code> type is simplified version of styling.\n *\n * @public\n * @default \"default\"\n */\n @property()\n type: `${UDExModalType}` = UDExModalType.default;\n\n onAfterRendering() {\n const content = this.shadowRoot?.querySelector<HTMLElement>(\".ui5-popup-content\");\n if (content) {\n const gutterWidth = content.offsetWidth - content.clientWidth;\n this.style.setProperty(\"--udex-modal-scrollbar-width\", `${gutterWidth}px`);\n }\n }\n}\n\nUDExModal.define();\n\nexport default UDExModal;\n"]}
@@ -66,7 +66,7 @@ declare class UDExTabNavigation extends UI5Element {
66
66
  * @public
67
67
  * @default "Small"
68
68
  */
69
- UDExsizeMoreButton: `${UDExSizeMoreButton}`;
69
+ sizeMoreButton: `${UDExSizeMoreButton}`;
70
70
  /**
71
71
  * Defines the mode of the component.
72
72
  *
@@ -85,7 +85,7 @@ let UDExTabNavigation = UDExTabNavigation_1 = class UDExTabNavigation extends UI
85
85
  * @public
86
86
  * @default "Small"
87
87
  */
88
- this.UDExsizeMoreButton = "Small";
88
+ this.sizeMoreButton = "Small";
89
89
  /**
90
90
  * Defines the mode of the component.
91
91
  *
@@ -505,6 +505,7 @@ let UDExTabNavigation = UDExTabNavigation_1 = class UDExTabNavigation extends UI
505
505
  this.setVisibleTabs();
506
506
  this.setTabsIndex(selectedTabIndex);
507
507
  this.emitClickEvent(selectedTabIndex + 1);
508
+ this.fireDecoratorEvent("tab-select", { tab: this._selectedTab, tabIndex: selectedTabIndex });
508
509
  }
509
510
  getMoreButton() {
510
511
  return this.shadowRoot.querySelector(".udex-tab-navigation__button-more");
@@ -836,7 +837,7 @@ let UDExTabNavigation = UDExTabNavigation_1 = class UDExTabNavigation extends UI
836
837
  };
837
838
  __decorate([
838
839
  property()
839
- ], UDExTabNavigation.prototype, "UDExsizeMoreButton", void 0);
840
+ ], UDExTabNavigation.prototype, "sizeMoreButton", void 0);
840
841
  __decorate([
841
842
  property()
842
843
  ], UDExTabNavigation.prototype, "mode", void 0);