@sapudex/web-components 2.57.0 → 2.59.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 (645) hide show
  1. package/cypress/specs/FilterMenu.cy.tsx +209 -19
  2. package/cypress/specs/List.cy.tsx +67 -4
  3. package/cypress/specs/ListItem.cy.tsx +35 -9
  4. package/cypress/specs/SelectBox.cy.tsx +101 -1
  5. package/cypress/specs/TabNavigation.cy.tsx +351 -21
  6. package/cypress/specs/TagGroup.cy.tsx +1 -1
  7. package/dist/List.d.ts +15 -1
  8. package/dist/List.js +23 -2
  9. package/dist/List.js.map +1 -1
  10. package/dist/ListGroupHeaderBase.d.ts +13 -0
  11. package/dist/ListGroupHeaderBase.js +43 -2
  12. package/dist/ListGroupHeaderBase.js.map +1 -1
  13. package/dist/ListGroupHeaderTemplate.js +26 -7
  14. package/dist/ListGroupHeaderTemplate.js.map +1 -1
  15. package/dist/ListItem.d.ts +0 -3
  16. package/dist/ListItem.js +18 -12
  17. package/dist/ListItem.js.map +1 -1
  18. package/dist/ListItemBase.d.ts +17 -0
  19. package/dist/ListItemBase.js +15 -0
  20. package/dist/ListItemBase.js.map +1 -1
  21. package/dist/ListItemTemplate.js +2 -2
  22. package/dist/ListItemTemplate.js.map +1 -1
  23. package/dist/MastheadCountrySelector.js +5 -5
  24. package/dist/MastheadCountrySelector.js.map +1 -1
  25. package/dist/MastheadCountrySelectorTemplate.d.ts +2 -0
  26. package/dist/MastheadCountrySelectorTemplate.js +15 -0
  27. package/dist/MastheadCountrySelectorTemplate.js.map +1 -0
  28. package/dist/MastheadItem.d.ts +0 -3
  29. package/dist/MastheadItem.js +3 -6
  30. package/dist/MastheadItem.js.map +1 -1
  31. package/dist/MastheadItemTemplate.d.ts +2 -0
  32. package/dist/MastheadItemTemplate.js +41 -0
  33. package/dist/MastheadItemTemplate.js.map +1 -0
  34. package/dist/MastheadMenu.d.ts +1 -0
  35. package/dist/MastheadMenu.js +4 -6
  36. package/dist/MastheadMenu.js.map +1 -1
  37. package/dist/MastheadMenuItem.d.ts +0 -3
  38. package/dist/MastheadMenuItem.js +3 -6
  39. package/dist/MastheadMenuItem.js.map +1 -1
  40. package/dist/MastheadMenuItemTemplate.d.ts +2 -0
  41. package/dist/MastheadMenuItemTemplate.js +36 -0
  42. package/dist/MastheadMenuItemTemplate.js.map +1 -0
  43. package/dist/MastheadMenuTemplate.d.ts +2 -0
  44. package/dist/MastheadMenuTemplate.js +13 -0
  45. package/dist/MastheadMenuTemplate.js.map +1 -0
  46. package/dist/MastheadMobileMenu.js +3 -3
  47. package/dist/MastheadMobileMenu.js.map +1 -1
  48. package/dist/MastheadMobileMenuTemplate.d.ts +2 -0
  49. package/dist/MastheadMobileMenuTemplate.js +33 -0
  50. package/dist/MastheadMobileMenuTemplate.js.map +1 -0
  51. package/dist/MastheadProfileMenu.d.ts +2 -4
  52. package/dist/MastheadProfileMenu.js +5 -20
  53. package/dist/MastheadProfileMenu.js.map +1 -1
  54. package/dist/MastheadProfileMenuTemplate.d.ts +2 -0
  55. package/dist/MastheadProfileMenuTemplate.js +24 -0
  56. package/dist/MastheadProfileMenuTemplate.js.map +1 -0
  57. package/dist/MastheadShell.js +3 -5
  58. package/dist/MastheadShell.js.map +1 -1
  59. package/dist/MastheadShellTemplate.d.ts +2 -0
  60. package/dist/MastheadShellTemplate.js +20 -0
  61. package/dist/MastheadShellTemplate.js.map +1 -0
  62. package/dist/RatingIndicatorTemplate.js +1 -1
  63. package/dist/RatingIndicatorTemplate.js.map +1 -1
  64. package/dist/SearchableListBase.d.ts +10 -0
  65. package/dist/SearchableListBase.js +34 -1
  66. package/dist/SearchableListBase.js.map +1 -1
  67. package/dist/SearchableListBaseTemplate.js +35 -4
  68. package/dist/SearchableListBaseTemplate.js.map +1 -1
  69. package/dist/SecondaryNavigation.d.ts +1 -0
  70. package/dist/SecondaryNavigation.js +23 -9
  71. package/dist/SecondaryNavigation.js.map +1 -1
  72. package/dist/SecondaryNavigationItem.d.ts +0 -1
  73. package/dist/SecondaryNavigationItem.js +4 -6
  74. package/dist/SecondaryNavigationItem.js.map +1 -1
  75. package/dist/SecondaryNavigationItemBase.js +2 -2
  76. package/dist/SecondaryNavigationItemBase.js.map +1 -1
  77. package/dist/SecondaryNavigationItemTemplate.d.ts +2 -0
  78. package/dist/SecondaryNavigationItemTemplate.js +12 -0
  79. package/dist/SecondaryNavigationItemTemplate.js.map +1 -0
  80. package/dist/SecondaryNavigationSubItem.d.ts +0 -2
  81. package/dist/SecondaryNavigationSubItem.js +3 -7
  82. package/dist/SecondaryNavigationSubItem.js.map +1 -1
  83. package/dist/SecondaryNavigationSubItemTemplate.d.ts +2 -0
  84. package/dist/SecondaryNavigationSubItemTemplate.js +16 -0
  85. package/dist/SecondaryNavigationSubItemTemplate.js.map +1 -0
  86. package/dist/SecondaryNavigationTemplate.d.ts +2 -0
  87. package/dist/SecondaryNavigationTemplate.js +7 -0
  88. package/dist/SecondaryNavigationTemplate.js.map +1 -0
  89. package/dist/SelectBase.js +8 -3
  90. package/dist/SelectBase.js.map +1 -1
  91. package/dist/SideNavigationMobile.d.ts +2 -3
  92. package/dist/SideNavigationMobile.js +22 -16
  93. package/dist/SideNavigationMobile.js.map +1 -1
  94. package/dist/SideNavigationMobileTemplate.d.ts +2 -0
  95. package/dist/SideNavigationMobileTemplate.js +11 -0
  96. package/dist/SideNavigationMobileTemplate.js.map +1 -0
  97. package/dist/Tab.d.ts +0 -7
  98. package/dist/Tab.js +4 -19
  99. package/dist/Tab.js.map +1 -1
  100. package/dist/TabHeaderTemplate.d.ts +2 -0
  101. package/dist/TabHeaderTemplate.js +15 -0
  102. package/dist/TabHeaderTemplate.js.map +1 -0
  103. package/dist/TabInOverflowTemplate.d.ts +2 -0
  104. package/dist/TabInOverflowTemplate.js +7 -0
  105. package/dist/TabInOverflowTemplate.js.map +1 -0
  106. package/dist/TabNavigation.d.ts +15 -4
  107. package/dist/TabNavigation.js +70 -40
  108. package/dist/TabNavigation.js.map +1 -1
  109. package/dist/TabNavigationPopoverTemplate.d.ts +2 -0
  110. package/dist/TabNavigationPopoverTemplate.js +9 -0
  111. package/dist/TabNavigationPopoverTemplate.js.map +1 -0
  112. package/dist/TabNavigationTemplate.d.ts +2 -0
  113. package/dist/TabNavigationTemplate.js +10 -0
  114. package/dist/TabNavigationTemplate.js.map +1 -0
  115. package/dist/TabTemplate.d.ts +2 -0
  116. package/dist/TabTemplate.js +5 -0
  117. package/dist/TabTemplate.js.map +1 -0
  118. package/dist/TagGroup.d.ts +2 -2
  119. package/dist/TagGroup.js +14 -3
  120. package/dist/TagGroup.js.map +1 -1
  121. package/dist/assets/InputSuggestions-CloTVyrf.js +2 -0
  122. package/dist/assets/{ListItemStandardExpandableTextTemplate-BQtSr7yg.js → ListItemStandardExpandableTextTemplate-DpquSMb2.js} +1 -1
  123. package/dist/assets/{ar-6UKwJun6.js → ar-CMU2PGtw.js} +1 -1
  124. package/dist/assets/{ar_EG-BTSal4jr.js → ar_EG-Bi2CIb24.js} +1 -1
  125. package/dist/assets/{ar_SA-Ck13AOrQ.js → ar_SA-BXTzBfWR.js} +1 -1
  126. package/dist/assets/{bg-fF9FXKHH.js → bg-B6_PMtzW.js} +1 -1
  127. package/dist/assets/{bundle.esm-GvPkDyXP.js → bundle.esm-Cyz8a5IX.js} +244 -262
  128. package/dist/assets/{ca-ZuvXTynI.js → ca-DFP6ILMq.js} +1 -1
  129. package/dist/assets/{cnr-CiidS6E_.js → cnr-Grlu3JuX.js} +1 -1
  130. package/dist/assets/{cs-CKH0PBiM.js → cs-lgNqqL4u.js} +1 -1
  131. package/dist/assets/{da-DLJy-V4w.js → da-ZKggtzGq.js} +1 -1
  132. package/dist/assets/{de-0N92OkSB.js → de-DL1zgfsi.js} +1 -1
  133. package/dist/assets/{de_AT-D8g7Tth2.js → de_AT-CmarUHhe.js} +1 -1
  134. package/dist/assets/{de_CH-DYTcKEqU.js → de_CH-CFp86jVo.js} +1 -1
  135. package/dist/assets/{el-OYZuNIHv.js → el-FdvefiDT.js} +1 -1
  136. package/dist/assets/{el_CY-D79vuMAa.js → el_CY-BJPkkKi8.js} +1 -1
  137. package/dist/assets/{en-CllNN7YY.js → en-B1Q_JFFb.js} +1 -1
  138. package/dist/assets/{en_AU-Ddrviu44.js → en_AU-Bm6lcfFm.js} +1 -1
  139. package/dist/assets/{en_GB-B9eSErHy.js → en_GB-CCipb5dG.js} +1 -1
  140. package/dist/assets/{en_HK-FdAjB4tQ.js → en_HK-Bu8Js72H.js} +1 -1
  141. package/dist/assets/{en_IE-zdmtzUDu.js → en_IE-BZXJHeYM.js} +1 -1
  142. package/dist/assets/{en_IN-DJJRjMIF.js → en_IN-Dh3537uv.js} +1 -1
  143. package/dist/assets/{en_NZ-BY--qj4s.js → en_NZ-Bx3mG4fb.js} +1 -1
  144. package/dist/assets/{en_PG-RcJi2hvJ.js → en_PG-CyRO9VGd.js} +1 -1
  145. package/dist/assets/{en_SG-BUtJMBS2.js → en_SG-BEsuw651.js} +1 -1
  146. package/dist/assets/{en_ZA-D-uqJ4Za.js → en_ZA-i0tdkruX.js} +1 -1
  147. package/dist/assets/{es-DgitLRHt.js → es-BKtAFDBk.js} +1 -1
  148. package/dist/assets/{es_AR-7a81KXAl.js → es_AR-Cgh6Q2W_.js} +1 -1
  149. package/dist/assets/{es_BO-CdNGyTgv.js → es_BO-CaK9OOQC.js} +1 -1
  150. package/dist/assets/{es_CL-DuHBIVFo.js → es_CL-u6fJ6PPk.js} +1 -1
  151. package/dist/assets/{es_CO-C0CJWwB-.js → es_CO-DAO-13dw.js} +1 -1
  152. package/dist/assets/{es_MX-DtPgyxGD.js → es_MX-D1KhXUy4.js} +1 -1
  153. package/dist/assets/{es_PE-DGF7Yjrt.js → es_PE-DEUen4VG.js} +1 -1
  154. package/dist/assets/{es_UY-fD9lVhfR.js → es_UY-CPBMwHSz.js} +1 -1
  155. package/dist/assets/{es_VE-BX3pigg8.js → es_VE-CNZouG2K.js} +1 -1
  156. package/dist/assets/{et-BMj4rjsT.js → et-DNQPssPo.js} +1 -1
  157. package/dist/assets/{fa-CQhbGi8S.js → fa-4zj1zCg1.js} +1 -1
  158. package/dist/assets/{fi-DBKA9_K5.js → fi-C6HFNTL6.js} +1 -1
  159. package/dist/assets/{fr-CMQtkd4R.js → fr-BydrHZkq.js} +1 -1
  160. package/dist/assets/{fr_BE-Bl0FruWm.js → fr_BE-C8hcZNOL.js} +1 -1
  161. package/dist/assets/{fr_CA-DFlIL_d4.js → fr_CA-Cw2zy44G.js} +1 -1
  162. package/dist/assets/{fr_CH-C8lyCDBe.js → fr_CH-BbCQFx3s.js} +1 -1
  163. package/dist/assets/{fr_LU-CG5r3b1-.js → fr_LU-BpH6nMiI.js} +1 -1
  164. package/dist/assets/{he-D3P1Q9GQ.js → he-CfKmVVrF.js} +1 -1
  165. package/dist/assets/{hi-B3yky8gy.js → hi-D1WBUmI6.js} +1 -1
  166. package/dist/assets/{hr-cQ9G2h7E.js → hr-pnk2hlkB.js} +1 -1
  167. package/dist/assets/{hu-D0ywysYs.js → hu-CCzBj3iT.js} +1 -1
  168. package/dist/assets/{id-B-yAWgiT.js → id-BeGrqJpK.js} +1 -1
  169. package/dist/assets/{it-DLzjbv-9.js → it-B6Mz1czr.js} +1 -1
  170. package/dist/assets/{it_CH-DKz1oDNC.js → it_CH-CwPXoj3N.js} +1 -1
  171. package/dist/assets/{ja-C8zg_Zor.js → ja-BILluLT2.js} +1 -1
  172. package/dist/assets/{kk-DZZOQ4wh.js → kk-YSUtf5Jy.js} +1 -1
  173. package/dist/assets/{ko-BEJWYeL9.js → ko-DUlXl0QQ.js} +1 -1
  174. package/dist/assets/{lt-Cji-Zk_r.js → lt-Dn5sAAtt.js} +1 -1
  175. package/dist/assets/{lv-rjxWTRTn.js → lv-D_k8IElJ.js} +1 -1
  176. package/dist/assets/messagebundle_ar-C3EXytoC.js +1 -0
  177. package/dist/assets/messagebundle_ar-DmZrrjEF.js +1 -0
  178. package/dist/assets/messagebundle_bg-BaZ97Q_b.js +1 -0
  179. package/dist/assets/messagebundle_bg-CgU7GPvK.js +1 -0
  180. package/dist/assets/messagebundle_ca-BwjVUbUA.js +1 -0
  181. package/dist/assets/messagebundle_ca-YiUGbO_8.js +1 -0
  182. package/dist/assets/messagebundle_cnr-CN2hPZIN.js +1 -0
  183. package/dist/assets/messagebundle_cnr-zdEdPJvc.js +1 -0
  184. package/dist/assets/messagebundle_cs-CGbnEjza.js +1 -0
  185. package/dist/assets/messagebundle_cs-DmRWH--o.js +1 -0
  186. package/dist/assets/messagebundle_cy-BF0YH9Iz.js +1 -0
  187. package/dist/assets/messagebundle_cy-CUiGsjO6.js +1 -0
  188. package/dist/assets/messagebundle_da-CWKLQJiq.js +1 -0
  189. package/dist/assets/messagebundle_da-bTkr4pUc.js +1 -0
  190. package/dist/assets/messagebundle_de-BmnClk4G.js +1 -0
  191. package/dist/assets/messagebundle_de-vB6qhgvG.js +1 -0
  192. package/dist/assets/messagebundle_el-DKdItEgW.js +1 -0
  193. package/dist/assets/messagebundle_el-Gv1Ly8aj.js +1 -0
  194. package/dist/assets/messagebundle_en-B7YJOdQz.js +1 -0
  195. package/dist/assets/messagebundle_en-DbKo-Dkl.js +1 -0
  196. package/dist/assets/messagebundle_en-DcV886MF.js +1 -0
  197. package/dist/assets/messagebundle_en_GB-Be93_Z4H.js +1 -0
  198. package/dist/assets/messagebundle_en_GB-CFh7e8hQ.js +1 -0
  199. package/dist/assets/messagebundle_en_US_sappsd-HCarC-Yr.js +1 -0
  200. package/dist/assets/messagebundle_en_US_sappsd-Se8GgI58.js +1 -0
  201. package/dist/assets/messagebundle_en_US_saprigi-CCHFk7YZ.js +1 -0
  202. package/dist/assets/messagebundle_en_US_saprigi-CbfvaHUL.js +1 -0
  203. package/dist/assets/messagebundle_en_US_saptrc-B8AIRzlo.js +1 -0
  204. package/dist/assets/messagebundle_en_US_saptrc-yJ3PcdEm.js +1 -0
  205. package/dist/assets/messagebundle_es-BH-a8BxO.js +1 -0
  206. package/dist/assets/messagebundle_es-Dt93wbGV.js +1 -0
  207. package/dist/assets/messagebundle_es_MX-BedlYlF3.js +1 -0
  208. package/dist/assets/messagebundle_es_MX-COPqooo9.js +1 -0
  209. package/dist/assets/messagebundle_et-BsYgDw46.js +1 -0
  210. package/dist/assets/messagebundle_et-UwpqUE-p.js +1 -0
  211. package/dist/assets/messagebundle_fi-BN3UWEz0.js +1 -0
  212. package/dist/assets/messagebundle_fi-Cwf7Puui.js +1 -0
  213. package/dist/assets/messagebundle_fr-43w09LAE.js +1 -0
  214. package/dist/assets/messagebundle_fr-CVRaf9_H.js +1 -0
  215. package/dist/assets/messagebundle_fr_CA-BM04X6xU.js +1 -0
  216. package/dist/assets/messagebundle_fr_CA-CdnVYumi.js +1 -0
  217. package/dist/assets/messagebundle_hi-DfeonbAH.js +1 -0
  218. package/dist/assets/messagebundle_hi-JRJlP9Uh.js +1 -0
  219. package/dist/assets/messagebundle_hr-CKOnn34q.js +1 -0
  220. package/dist/assets/messagebundle_hr-CbyIBlH3.js +1 -0
  221. package/dist/assets/messagebundle_hu-DF1gQudE.js +1 -0
  222. package/dist/assets/messagebundle_hu-D_IQ9kTy.js +1 -0
  223. package/dist/assets/messagebundle_id-B0K1usj4.js +1 -0
  224. package/dist/assets/messagebundle_id-gDJYoaGq.js +1 -0
  225. package/dist/assets/messagebundle_it-B80_R2Ih.js +1 -0
  226. package/dist/assets/messagebundle_it-CVqU4g6t.js +1 -0
  227. package/dist/assets/messagebundle_iw-BoelOIS4.js +1 -0
  228. package/dist/assets/messagebundle_iw-iMDtLxaa.js +1 -0
  229. package/dist/assets/messagebundle_ja-BlRbv4vb.js +1 -0
  230. package/dist/assets/messagebundle_ja-BrDH-19-.js +1 -0
  231. package/dist/assets/messagebundle_kk-C7VPek1-.js +1 -0
  232. package/dist/assets/messagebundle_kk-DhAT_bim.js +1 -0
  233. package/dist/assets/messagebundle_ko-CIqP8x6n.js +1 -0
  234. package/dist/assets/messagebundle_ko-DgD6uyZ5.js +1 -0
  235. package/dist/assets/messagebundle_lt-BGK5mpcm.js +1 -0
  236. package/dist/assets/messagebundle_lt-BV0kKrY0.js +1 -0
  237. package/dist/assets/messagebundle_lv-5IcjoxWD.js +1 -0
  238. package/dist/assets/messagebundle_lv-DDBi7iKe.js +1 -0
  239. package/dist/assets/messagebundle_mk-BUrn04sZ.js +1 -0
  240. package/dist/assets/messagebundle_mk-P5veRdg2.js +1 -0
  241. package/dist/assets/messagebundle_ms-9VDLR5en.js +1 -0
  242. package/dist/assets/messagebundle_ms-CB8sQUg2.js +1 -0
  243. package/dist/assets/messagebundle_nl-BaAgPO7h.js +1 -0
  244. package/dist/assets/messagebundle_nl-f1Up3dB9.js +1 -0
  245. package/dist/assets/messagebundle_no-C-_ldp7o.js +1 -0
  246. package/dist/assets/messagebundle_no-DRSqWQ-C.js +1 -0
  247. package/dist/assets/messagebundle_pl-BQoPaokq.js +1 -0
  248. package/dist/assets/messagebundle_pl-DBO1atMe.js +1 -0
  249. package/dist/assets/messagebundle_pt-BNEglYxa.js +1 -0
  250. package/dist/assets/messagebundle_pt-DgAMHmW-.js +1 -0
  251. package/dist/assets/messagebundle_pt_PT-BtYzp9KB.js +1 -0
  252. package/dist/assets/messagebundle_pt_PT-D1Ef8kUU.js +1 -0
  253. package/dist/assets/messagebundle_ro-CuDPp2fe.js +1 -0
  254. package/dist/assets/messagebundle_ro-D591wJ6f.js +1 -0
  255. package/dist/assets/messagebundle_ru-D0NridWi.js +1 -0
  256. package/dist/assets/messagebundle_ru-I8YLCfrn.js +1 -0
  257. package/dist/assets/messagebundle_sh-BswdbSRi.js +1 -0
  258. package/dist/assets/messagebundle_sh-Dw2y_oct.js +1 -0
  259. package/dist/assets/messagebundle_sk-BG4S4ZVk.js +1 -0
  260. package/dist/assets/messagebundle_sk-CXOF1RuF.js +1 -0
  261. package/dist/assets/messagebundle_sl-CAnJO_8X.js +1 -0
  262. package/dist/assets/messagebundle_sl-kpVWxIp_.js +1 -0
  263. package/dist/assets/messagebundle_sr-BTWvO8VQ.js +1 -0
  264. package/dist/assets/messagebundle_sr-VJmRSdj4.js +1 -0
  265. package/dist/assets/messagebundle_sv-B-RCgnW_.js +1 -0
  266. package/dist/assets/messagebundle_sv-Bd4wCcDb.js +1 -0
  267. package/dist/assets/messagebundle_th-CMHmLdI3.js +1 -0
  268. package/dist/assets/messagebundle_th-CZ1imsCy.js +1 -0
  269. package/dist/assets/messagebundle_tr-BfWAYIdW.js +1 -0
  270. package/dist/assets/messagebundle_tr-D-BnBirv.js +1 -0
  271. package/dist/assets/messagebundle_uk-DhxIThVl.js +1 -0
  272. package/dist/assets/messagebundle_uk-HU8hI0yj.js +1 -0
  273. package/dist/assets/messagebundle_vi-BUTqUKd4.js +1 -0
  274. package/dist/assets/messagebundle_vi-D1El4_Wj.js +1 -0
  275. package/dist/assets/messagebundle_zh_CN-Dt0azUea.js +1 -0
  276. package/dist/assets/messagebundle_zh_CN-Ofgx2uXY.js +1 -0
  277. package/dist/assets/messagebundle_zh_TW-5lv7yYS1.js +1 -0
  278. package/dist/assets/messagebundle_zh_TW-LSErOAsd.js +1 -0
  279. package/dist/assets/{mk-9_dtu4u_.js → mk-DTLhuyCG.js} +1 -1
  280. package/dist/assets/{ms-9b0nct8m.js → ms-BrLiVOVI.js} +1 -1
  281. package/dist/assets/{nb-CbGeVRux.js → nb-BeQEL0TR.js} +1 -1
  282. package/dist/assets/{nl-C0vlsmuT.js → nl-CGAh49hZ.js} +1 -1
  283. package/dist/assets/{nl_BE-Cteh34au.js → nl_BE-CxJbQu5q.js} +1 -1
  284. package/dist/assets/{parameters-bundle.css-D7WciSOr.js → parameters-bundle.css-B68EyCuR.js} +2 -0
  285. package/dist/assets/{parameters-bundle.css-CT-eTeTy.js → parameters-bundle.css-BkJSEiFx.js} +2 -0
  286. package/dist/assets/{parameters-bundle.css-BXQ-0CBp.js → parameters-bundle.css-C5V2Zp_F.js} +2 -0
  287. package/dist/assets/{parameters-bundle.css-XYDTPt-n.js → parameters-bundle.css-COeynv6D.js} +3 -1
  288. package/dist/assets/parameters-bundle.css-CnIzAMdG.js +3 -0
  289. package/dist/assets/parameters-bundle.css-CsV5qbZp.js +3 -0
  290. package/dist/assets/{parameters-bundle.css-C7KCPeJ8.js → parameters-bundle.css-DCvHNL3s.js} +1 -1
  291. package/dist/assets/{parameters-bundle.css-CQFZmxYm.js → parameters-bundle.css-DK40uKOQ.js} +1 -1
  292. package/dist/assets/parameters-bundle.css-DMfTAqMv.js +2 -0
  293. package/dist/assets/parameters-bundle.css-DO35k9r0.js +2 -0
  294. package/dist/assets/parameters-bundle.css-Df7wtRW4.js +2 -0
  295. package/dist/assets/{parameters-bundle.css-CxjtOlRD.js → parameters-bundle.css-DmEWEk0u.js} +36 -28
  296. package/dist/assets/{parameters-bundle.css-CSUOmZKr.js → parameters-bundle.css-DvAfqdlT.js} +1 -1
  297. package/dist/assets/{parameters-bundle.css-DPz62M1p.js → parameters-bundle.css-K-MvKimD.js} +3 -1
  298. package/dist/assets/parameters-bundle.css-KoXGNyLG.js +3 -0
  299. package/dist/assets/{parameters-bundle.css-CLLnzh9T.js → parameters-bundle.css-P_M_rm9z.js} +1 -1
  300. package/dist/assets/parameters-bundle.css-UJIxXHL5.js +2 -0
  301. package/dist/assets/{parameters-bundle.css-V2I5eOdH.js → parameters-bundle.css-co26r5Nz.js} +1 -1
  302. package/dist/assets/parameters-bundle.css-uT62L0va.js +3 -0
  303. package/dist/assets/{parameters-bundle.css-Cmk27zY9.js → parameters-bundle.css-vNsSPPU5.js} +38 -31
  304. package/dist/assets/{pl-CDjXMBDR.js → pl-DaZJCEN3.js} +1 -1
  305. package/dist/assets/{pt-BXklB5_T.js → pt-RxoGfR56.js} +1 -1
  306. package/dist/assets/{pt_PT-DEzSdlMb.js → pt_PT-CuC22O4H.js} +1 -1
  307. package/dist/assets/{ro-bFLE5ZuX.js → ro-kcCACdbI.js} +1 -1
  308. package/dist/assets/{ru-DuGdFJZn.js → ru-BQzoU2Gq.js} +1 -1
  309. package/dist/assets/{ru_UA-DujiLlPN.js → ru_UA-BtdbuqWW.js} +1 -1
  310. package/dist/assets/{sk-GkzEgQor.js → sk-D4C2H17S.js} +1 -1
  311. package/dist/assets/{sl-BhuoMxwQ.js → sl-7ESgddjQ.js} +1 -1
  312. package/dist/assets/{sr-Bb668mIq.js → sr-m2FCxV00.js} +1 -1
  313. package/dist/assets/{sr_Latn-C61cXg9o.js → sr_Latn-Dh8ru1_a.js} +1 -1
  314. package/dist/assets/{sv-yft9g0aL.js → sv-DkcDHqsr.js} +1 -1
  315. package/dist/assets/{th-BiAki51N.js → th-sJeg9F0h.js} +1 -1
  316. package/dist/assets/{tr-DDt0vBOs.js → tr-C2e7ABy0.js} +1 -1
  317. package/dist/assets/{uk-A-zqF2vZ.js → uk-Cdp63d6T.js} +1 -1
  318. package/dist/assets/{vi-Bleu1lwm.js → vi-DuFuMCO2.js} +1 -1
  319. package/dist/assets/{zh_CN-kJCGkFOs.js → zh_CN-BOAGYFIg.js} +1 -1
  320. package/dist/assets/{zh_HK-BJMkT2Ze.js → zh_HK-Bmft66uR.js} +1 -1
  321. package/dist/assets/{zh_SG-Lz9Li7LQ.js → zh_SG-ChcB0A9F.js} +1 -1
  322. package/dist/assets/{zh_TW-P8-QBSyv.js → zh_TW-C8FI5AC8.js} +1 -1
  323. package/dist/css/themes/AccordionSpotlight.css +1 -1
  324. package/dist/css/themes/Button.css +1 -1
  325. package/dist/css/themes/Checkbox.css +1 -1
  326. package/dist/css/themes/Footer.css +1 -1
  327. package/dist/css/themes/ListGroupHeader.css +1 -1
  328. package/dist/css/themes/PromoTile.css +1 -1
  329. package/dist/css/themes/RatingIndicator.css +1 -1
  330. package/dist/css/themes/SecondaryNavigation.css +1 -1
  331. package/dist/css/themes/SecondaryNavigationItem.css +1 -1
  332. package/dist/css/themes/SecondaryNavigationSubItem.css +1 -1
  333. package/dist/css/themes/TabInOverflow.css +1 -1
  334. package/dist/css/themes/WizardTab.css +1 -1
  335. package/dist/custom-elements-internal.json +19 -0
  336. package/dist/custom-elements.json +52 -0
  337. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  338. package/dist/generated/i18n/i18n-defaults.d.ts +3 -1
  339. package/dist/generated/i18n/i18n-defaults.js +3 -1
  340. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  341. package/dist/generated/themes/AccordionSpotlight.css.d.ts +1 -1
  342. package/dist/generated/themes/AccordionSpotlight.css.js +1 -1
  343. package/dist/generated/themes/AccordionSpotlight.css.js.map +1 -1
  344. package/dist/generated/themes/Button.css.d.ts +1 -1
  345. package/dist/generated/themes/Button.css.js +1 -1
  346. package/dist/generated/themes/Button.css.js.map +1 -1
  347. package/dist/generated/themes/Checkbox.css.d.ts +1 -1
  348. package/dist/generated/themes/Checkbox.css.js +1 -1
  349. package/dist/generated/themes/Checkbox.css.js.map +1 -1
  350. package/dist/generated/themes/Footer.css.d.ts +1 -1
  351. package/dist/generated/themes/Footer.css.js +1 -1
  352. package/dist/generated/themes/Footer.css.js.map +1 -1
  353. package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
  354. package/dist/generated/themes/ListGroupHeader.css.js +1 -1
  355. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  356. package/dist/generated/themes/PromoTile.css.d.ts +1 -1
  357. package/dist/generated/themes/PromoTile.css.js +1 -1
  358. package/dist/generated/themes/PromoTile.css.js.map +1 -1
  359. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  360. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  361. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  362. package/dist/generated/themes/SecondaryNavigation.css.d.ts +1 -1
  363. package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
  364. package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
  365. package/dist/generated/themes/SecondaryNavigationItem.css.d.ts +1 -1
  366. package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
  367. package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
  368. package/dist/generated/themes/SecondaryNavigationSubItem.css.d.ts +1 -1
  369. package/dist/generated/themes/SecondaryNavigationSubItem.css.js +1 -1
  370. package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
  371. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  372. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  373. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  374. package/dist/generated/themes/WizardTab.css.d.ts +1 -1
  375. package/dist/generated/themes/WizardTab.css.js +1 -1
  376. package/dist/generated/themes/WizardTab.css.js.map +1 -1
  377. package/dist/messagebundle.properties +4 -0
  378. package/dist/messagebundle_en.properties +2 -0
  379. package/dist/utils/Breakpoints.d.ts +20 -1
  380. package/dist/utils/Breakpoints.js +38 -8
  381. package/dist/utils/Breakpoints.js.map +1 -1
  382. package/dist/vscode.html-custom-data.json +115 -456
  383. package/dist/web-types.json +11 -1
  384. package/package.json +8 -8
  385. package/src/List.ts +24 -2
  386. package/src/ListGroupHeaderBase.ts +44 -2
  387. package/src/ListGroupHeaderTemplate.tsx +74 -23
  388. package/src/ListItem.ts +18 -15
  389. package/src/ListItemBase.ts +30 -0
  390. package/src/ListItemTemplate.tsx +4 -4
  391. package/src/MastheadCountrySelector.ts +5 -5
  392. package/src/MastheadCountrySelectorTemplate.tsx +98 -0
  393. package/src/MastheadItem.ts +3 -6
  394. package/src/MastheadItemTemplate.tsx +178 -0
  395. package/src/MastheadMenu.ts +5 -6
  396. package/src/MastheadMenuItem.ts +3 -7
  397. package/src/MastheadMenuItemTemplate.tsx +123 -0
  398. package/src/MastheadMenuTemplate.tsx +142 -0
  399. package/src/MastheadMobileMenu.ts +3 -3
  400. package/src/MastheadMobileMenuTemplate.tsx +274 -0
  401. package/src/MastheadProfileMenu.ts +10 -23
  402. package/src/MastheadProfileMenuTemplate.tsx +143 -0
  403. package/src/MastheadShell.ts +3 -5
  404. package/src/MastheadShellTemplate.tsx +228 -0
  405. package/src/RatingIndicatorTemplate.tsx +0 -1
  406. package/src/SearchableListBase.ts +37 -1
  407. package/src/SearchableListBaseTemplate.tsx +38 -2
  408. package/src/SecondaryNavigation.ts +24 -9
  409. package/src/SecondaryNavigationItem.ts +4 -6
  410. package/src/SecondaryNavigationItemBase.ts +2 -2
  411. package/src/SecondaryNavigationItemTemplate.tsx +80 -0
  412. package/src/SecondaryNavigationSubItem.ts +3 -7
  413. package/src/SecondaryNavigationSubItemTemplate.tsx +63 -0
  414. package/src/SecondaryNavigationTemplate.tsx +90 -0
  415. package/src/SelectBase.ts +8 -3
  416. package/src/SideNavigationMobile.ts +24 -17
  417. package/src/SideNavigationMobileTemplate.tsx +59 -0
  418. package/src/Tab.ts +4 -24
  419. package/src/TabHeaderTemplate.tsx +153 -0
  420. package/src/TabInOverflowTemplate.tsx +68 -0
  421. package/src/TabNavigation.ts +78 -44
  422. package/src/TabNavigationPopoverTemplate.tsx +27 -0
  423. package/src/TabNavigationTemplate.tsx +98 -0
  424. package/src/TabTemplate.tsx +7 -0
  425. package/src/TagGroup.ts +16 -5
  426. package/src/generated/i18n/i18n-defaults.ts +2 -2
  427. package/src/generated/themes/AccordionSpotlight.css.ts +1 -1
  428. package/src/generated/themes/Button.css.ts +1 -1
  429. package/src/generated/themes/Checkbox.css.ts +1 -1
  430. package/src/generated/themes/Footer.css.ts +1 -1
  431. package/src/generated/themes/ListGroupHeader.css.ts +1 -1
  432. package/src/generated/themes/PromoTile.css.ts +1 -1
  433. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  434. package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
  435. package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
  436. package/src/generated/themes/SecondaryNavigationSubItem.css.ts +1 -1
  437. package/src/generated/themes/TabInOverflow.css.ts +1 -1
  438. package/src/generated/themes/WizardTab.css.ts +1 -1
  439. package/src/i18n/messagebundle.properties +4 -0
  440. package/src/i18n/messagebundle_en.properties +2 -0
  441. package/src/themes/AccordionSpotlight.css +1 -1
  442. package/src/themes/Button.css +2 -1
  443. package/src/themes/Checkbox.css +5 -1
  444. package/src/themes/Footer.css +4 -4
  445. package/src/themes/ListGroupHeader.css +50 -7
  446. package/src/themes/PromoTile.css +1 -0
  447. package/src/themes/RatingIndicator.css +6 -1
  448. package/src/themes/SecondaryNavigation.css +3 -3
  449. package/src/themes/SecondaryNavigationItem.css +2 -2
  450. package/src/themes/SecondaryNavigationSubItem.css +2 -2
  451. package/src/themes/TabInOverflow.css +9 -4
  452. package/src/themes/WizardTab.css +6 -1
  453. package/src/utils/Breakpoints.ts +39 -8
  454. package/dist/assets/InputSuggestions-C8grDr_8.js +0 -2
  455. package/dist/assets/messagebundle_ar-BRkfjlVF.js +0 -1
  456. package/dist/assets/messagebundle_ar-D5A573iZ.js +0 -1
  457. package/dist/assets/messagebundle_bg-ByA8yRlQ.js +0 -1
  458. package/dist/assets/messagebundle_bg-CIVFOczQ.js +0 -1
  459. package/dist/assets/messagebundle_ca-BR3XuU9o.js +0 -1
  460. package/dist/assets/messagebundle_ca-CnMQ87v0.js +0 -1
  461. package/dist/assets/messagebundle_cnr-C6YhRiS7.js +0 -1
  462. package/dist/assets/messagebundle_cnr-CKZii51E.js +0 -1
  463. package/dist/assets/messagebundle_cs-DcOu8IOK.js +0 -1
  464. package/dist/assets/messagebundle_cs-I7yYpbsI.js +0 -1
  465. package/dist/assets/messagebundle_cy-BxrFUGJ9.js +0 -1
  466. package/dist/assets/messagebundle_cy-iXD_sJ-H.js +0 -1
  467. package/dist/assets/messagebundle_da-BVQHPgwf.js +0 -1
  468. package/dist/assets/messagebundle_da-CMGObFa5.js +0 -1
  469. package/dist/assets/messagebundle_de-CSl05u5u.js +0 -1
  470. package/dist/assets/messagebundle_de-Ca8NttFO.js +0 -1
  471. package/dist/assets/messagebundle_el-Cqfj_U5v.js +0 -1
  472. package/dist/assets/messagebundle_el-D9Zgq5tn.js +0 -1
  473. package/dist/assets/messagebundle_en-D0JTZvAf.js +0 -1
  474. package/dist/assets/messagebundle_en-DBpf5Il2.js +0 -1
  475. package/dist/assets/messagebundle_en-DWqF0cay.js +0 -1
  476. package/dist/assets/messagebundle_en_GB-CGB_FKp4.js +0 -1
  477. package/dist/assets/messagebundle_en_GB-Cl7ekzz2.js +0 -1
  478. package/dist/assets/messagebundle_en_US_sappsd-7UdOh8vN.js +0 -1
  479. package/dist/assets/messagebundle_en_US_sappsd-B8rqsyFQ.js +0 -1
  480. package/dist/assets/messagebundle_en_US_saprigi-9VCo5QY0.js +0 -1
  481. package/dist/assets/messagebundle_en_US_saprigi-DfLzOCPY.js +0 -1
  482. package/dist/assets/messagebundle_en_US_saptrc-DZqYka05.js +0 -1
  483. package/dist/assets/messagebundle_en_US_saptrc-Wh_IysAB.js +0 -1
  484. package/dist/assets/messagebundle_es-DKn8EzzP.js +0 -1
  485. package/dist/assets/messagebundle_es-lf5AJZNW.js +0 -1
  486. package/dist/assets/messagebundle_es_MX-DyYZGjON.js +0 -1
  487. package/dist/assets/messagebundle_es_MX-yBTcvu7u.js +0 -1
  488. package/dist/assets/messagebundle_et-Dz8Ohhcp.js +0 -1
  489. package/dist/assets/messagebundle_et-rMWbS-Nu.js +0 -1
  490. package/dist/assets/messagebundle_fi-Bfbyhuuz.js +0 -1
  491. package/dist/assets/messagebundle_fi-DnXm7LPH.js +0 -1
  492. package/dist/assets/messagebundle_fr-BvbeCfZ-.js +0 -1
  493. package/dist/assets/messagebundle_fr-KQhoZEew.js +0 -1
  494. package/dist/assets/messagebundle_fr_CA-CE2lzYx5.js +0 -1
  495. package/dist/assets/messagebundle_fr_CA-CIhDzHAJ.js +0 -1
  496. package/dist/assets/messagebundle_hi-BRQ9tZ6F.js +0 -1
  497. package/dist/assets/messagebundle_hi-DPwH9vag.js +0 -1
  498. package/dist/assets/messagebundle_hr-BSKQ6zHT.js +0 -1
  499. package/dist/assets/messagebundle_hr-D3gQg5JN.js +0 -1
  500. package/dist/assets/messagebundle_hu-CAA4oM1C.js +0 -1
  501. package/dist/assets/messagebundle_hu-CZNs1K9T.js +0 -1
  502. package/dist/assets/messagebundle_id-9H0uJyXB.js +0 -1
  503. package/dist/assets/messagebundle_id-m6iosVVP.js +0 -1
  504. package/dist/assets/messagebundle_it-BWzxa-Mi.js +0 -1
  505. package/dist/assets/messagebundle_it-Cm_0HF21.js +0 -1
  506. package/dist/assets/messagebundle_iw-DpB2YXTa.js +0 -1
  507. package/dist/assets/messagebundle_iw-NfqePNtD.js +0 -1
  508. package/dist/assets/messagebundle_ja-BCSZcI8t.js +0 -1
  509. package/dist/assets/messagebundle_ja-C-qqwzFf.js +0 -1
  510. package/dist/assets/messagebundle_kk--PGqyTVS.js +0 -1
  511. package/dist/assets/messagebundle_kk-DAlCQkFU.js +0 -1
  512. package/dist/assets/messagebundle_ko-D8mIkPe1.js +0 -1
  513. package/dist/assets/messagebundle_ko-qoWc4ZGG.js +0 -1
  514. package/dist/assets/messagebundle_lt-BIEH02V4.js +0 -1
  515. package/dist/assets/messagebundle_lt-ruMxSuY-.js +0 -1
  516. package/dist/assets/messagebundle_lv-C2om7wu0.js +0 -1
  517. package/dist/assets/messagebundle_lv-Dfrbh1ci.js +0 -1
  518. package/dist/assets/messagebundle_mk-DHvZle6t.js +0 -1
  519. package/dist/assets/messagebundle_mk-l_Kubx1p.js +0 -1
  520. package/dist/assets/messagebundle_ms-CKCmj1p_.js +0 -1
  521. package/dist/assets/messagebundle_ms-IhSEK5ij.js +0 -1
  522. package/dist/assets/messagebundle_nl-BiIb6e5c.js +0 -1
  523. package/dist/assets/messagebundle_nl-DquG38Cj.js +0 -1
  524. package/dist/assets/messagebundle_no-CX23v_jg.js +0 -1
  525. package/dist/assets/messagebundle_no-DFdvykvP.js +0 -1
  526. package/dist/assets/messagebundle_pl-BAeue3mo.js +0 -1
  527. package/dist/assets/messagebundle_pl-iHE_prgN.js +0 -1
  528. package/dist/assets/messagebundle_pt-BpQnTLvl.js +0 -1
  529. package/dist/assets/messagebundle_pt-C_bG3Erm.js +0 -1
  530. package/dist/assets/messagebundle_pt_PT-CR7qXFK-.js +0 -1
  531. package/dist/assets/messagebundle_pt_PT-DyseXKQQ.js +0 -1
  532. package/dist/assets/messagebundle_ro-CHU1E6hv.js +0 -1
  533. package/dist/assets/messagebundle_ro-C_amsd63.js +0 -1
  534. package/dist/assets/messagebundle_ru-Cab4H6Ud.js +0 -1
  535. package/dist/assets/messagebundle_ru-D6JMraBp.js +0 -1
  536. package/dist/assets/messagebundle_sh-DusYn00L.js +0 -1
  537. package/dist/assets/messagebundle_sh-hThvw_lF.js +0 -1
  538. package/dist/assets/messagebundle_sk-BqiUMEcX.js +0 -1
  539. package/dist/assets/messagebundle_sk-CZHfFNQ_.js +0 -1
  540. package/dist/assets/messagebundle_sl-B79d3kfY.js +0 -1
  541. package/dist/assets/messagebundle_sl-SfAn6n6j.js +0 -1
  542. package/dist/assets/messagebundle_sr-4iz7n4Te.js +0 -1
  543. package/dist/assets/messagebundle_sr-DxELdG62.js +0 -1
  544. package/dist/assets/messagebundle_sv-CPOHCrxs.js +0 -1
  545. package/dist/assets/messagebundle_sv-i6GuWK0l.js +0 -1
  546. package/dist/assets/messagebundle_th-D-kPI3tt.js +0 -1
  547. package/dist/assets/messagebundle_th-D64J-JvN.js +0 -1
  548. package/dist/assets/messagebundle_tr-CuE9DqZT.js +0 -1
  549. package/dist/assets/messagebundle_tr-gTuGftNt.js +0 -1
  550. package/dist/assets/messagebundle_uk-C6JSX-jF.js +0 -1
  551. package/dist/assets/messagebundle_uk-IKxyo-LT.js +0 -1
  552. package/dist/assets/messagebundle_vi-BRdRT5L6.js +0 -1
  553. package/dist/assets/messagebundle_vi-rZGL12-x.js +0 -1
  554. package/dist/assets/messagebundle_zh_CN-L55Y4Dfs.js +0 -1
  555. package/dist/assets/messagebundle_zh_CN-ZalS15WG.js +0 -1
  556. package/dist/assets/messagebundle_zh_TW-BcMzZCW2.js +0 -1
  557. package/dist/assets/messagebundle_zh_TW-sRVDBYOx.js +0 -1
  558. package/dist/assets/parameters-bundle.css-8pAQYERs.js +0 -3
  559. package/dist/assets/parameters-bundle.css-B_KvbSAR.js +0 -2
  560. package/dist/assets/parameters-bundle.css-Ciey0vhA.js +0 -2
  561. package/dist/assets/parameters-bundle.css-D7Hj83QD.js +0 -2
  562. package/dist/assets/parameters-bundle.css-DJgsxqD8.js +0 -2
  563. package/dist/assets/parameters-bundle.css-DMVuljH3.js +0 -3
  564. package/dist/assets/parameters-bundle.css-DkHyiuRq.js +0 -3
  565. package/dist/assets/parameters-bundle.css-Dvgwa73x.js +0 -3
  566. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.d.ts +0 -3
  567. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +0 -13
  568. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +0 -1
  569. package/dist/generated/templates/MastheadItemTemplate.lit.d.ts +0 -3
  570. package/dist/generated/templates/MastheadItemTemplate.lit.js +0 -43
  571. package/dist/generated/templates/MastheadItemTemplate.lit.js.map +0 -1
  572. package/dist/generated/templates/MastheadMenuItemTemplate.lit.d.ts +0 -3
  573. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +0 -21
  574. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +0 -1
  575. package/dist/generated/templates/MastheadMenuTemplate.lit.d.ts +0 -3
  576. package/dist/generated/templates/MastheadMenuTemplate.lit.js +0 -25
  577. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +0 -1
  578. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.d.ts +0 -3
  579. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +0 -37
  580. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +0 -1
  581. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.d.ts +0 -3
  582. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +0 -18
  583. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +0 -1
  584. package/dist/generated/templates/MastheadShellTemplate.lit.d.ts +0 -3
  585. package/dist/generated/templates/MastheadShellTemplate.lit.js +0 -28
  586. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +0 -1
  587. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.d.ts +0 -3
  588. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +0 -13
  589. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +0 -1
  590. package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.d.ts +0 -3
  591. package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js +0 -12
  592. package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js.map +0 -1
  593. package/dist/generated/templates/SecondaryNavigationTemplate.lit.d.ts +0 -3
  594. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +0 -15
  595. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +0 -1
  596. package/dist/generated/templates/SideNavigationMobileTemplate.lit.d.ts +0 -3
  597. package/dist/generated/templates/SideNavigationMobileTemplate.lit.js +0 -10
  598. package/dist/generated/templates/SideNavigationMobileTemplate.lit.js.map +0 -1
  599. package/dist/generated/templates/TabHeaderTemplate.lit.d.ts +0 -3
  600. package/dist/generated/templates/TabHeaderTemplate.lit.js +0 -52
  601. package/dist/generated/templates/TabHeaderTemplate.lit.js.map +0 -1
  602. package/dist/generated/templates/TabInOverflowTemplate.lit.d.ts +0 -3
  603. package/dist/generated/templates/TabInOverflowTemplate.lit.js +0 -15
  604. package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +0 -1
  605. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.d.ts +0 -3
  606. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js +0 -8
  607. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js.map +0 -1
  608. package/dist/generated/templates/TabNavigationTemplate.lit.d.ts +0 -3
  609. package/dist/generated/templates/TabNavigationTemplate.lit.js +0 -16
  610. package/dist/generated/templates/TabNavigationTemplate.lit.js.map +0 -1
  611. package/dist/generated/templates/TabTemplate.lit.d.ts +0 -3
  612. package/dist/generated/templates/TabTemplate.lit.js +0 -7
  613. package/dist/generated/templates/TabTemplate.lit.js.map +0 -1
  614. package/src/MastheadCountrySelector.hbs +0 -76
  615. package/src/MastheadItem.hbs +0 -136
  616. package/src/MastheadMenu.hbs +0 -131
  617. package/src/MastheadMenuItem.hbs +0 -102
  618. package/src/MastheadMobileMenu.hbs +0 -253
  619. package/src/MastheadProfileMenu.hbs +0 -121
  620. package/src/MastheadShell.hbs +0 -223
  621. package/src/SecondaryNavigation.hbs +0 -87
  622. package/src/SecondaryNavigationItem.hbs +0 -68
  623. package/src/SecondaryNavigationSubItem.hbs +0 -47
  624. package/src/SideNavigationMobile.hbs +0 -41
  625. package/src/Tab.hbs +0 -1
  626. package/src/TabHeader.hbs +0 -141
  627. package/src/TabInOverflow.hbs +0 -59
  628. package/src/TabNavigation.hbs +0 -88
  629. package/src/TabNavigationPopover.hbs +0 -18
  630. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +0 -17
  631. package/src/generated/templates/MastheadItemTemplate.lit.ts +0 -47
  632. package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +0 -25
  633. package/src/generated/templates/MastheadMenuTemplate.lit.ts +0 -29
  634. package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +0 -41
  635. package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +0 -22
  636. package/src/generated/templates/MastheadShellTemplate.lit.ts +0 -32
  637. package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +0 -17
  638. package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +0 -16
  639. package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +0 -19
  640. package/src/generated/templates/SideNavigationMobileTemplate.lit.ts +0 -14
  641. package/src/generated/templates/TabHeaderTemplate.lit.ts +0 -56
  642. package/src/generated/templates/TabInOverflowTemplate.lit.ts +0 -19
  643. package/src/generated/templates/TabNavigationPopoverTemplate.lit.ts +0 -12
  644. package/src/generated/templates/TabNavigationTemplate.lit.ts +0 -20
  645. package/src/generated/templates/TabTemplate.lit.ts +0 -11
@@ -1 +1 @@
1
- {"version":3,"file":"MastheadShell.js","sourceRoot":"","sources":["../src/MastheadShell.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 slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport type { DefaultSlot, Slot, ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n isSpace, isEnter, isEscape,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/menu2.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { MAIN_LINKS, SEARCH } from \"./generated/i18n/i18n-defaults.js\";\nimport UDExMastheadItem, { UDExMastheadDropdownItemAction } from \"./MastheadItem.js\";\nimport UDExMastheadMenu from \"./MastheadMenu.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport type UDExSearch from \"./Search.js\";\nimport UDExMastheadMobileMenu from \"./MastheadMobileMenu.js\";\nimport type UDExMastheadProfileMenu from \"./MastheadProfileMenu.js\";\nimport type UDExMastheadCountrySelector from \"./MastheadCountrySelector.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport AnalyticsName from \"./types/AnalyticsName.js\";\nimport MastheadShellTemplate from \"./generated/templates/MastheadShellTemplate.lit.js\";\nimport translate from \"./utils/translate.js\";\nimport ensureSearchBackdropStyles from \"./utils/searchBackdrop.js\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst canvasContentFont = \"14px '72 Brand Variable'\";\n\nexport type MastheadSlottedItem = UDExMastheadItem | UDExMastheadProfileMenu | UDExMastheadMenu | UDExMastheadCountrySelector | undefined | null;\nexport type MastheadItemType = UDExMastheadItem | null | undefined;\n\nexport enum UDExMastheadVariable {\n itemArrowIconMarginInlineStart = \"--udex-masthead-item-arrow-margin-inline-start\",\n mobileMenuHeight = \"--udex-masthead-shell-mobile-menu-height\",\n itemButtonIconSize = \"--udex-masthead-item-button-icon-size\",\n itemArrowIconSize = \"--udex-masthead-item-arrow-icon-size\",\n rightMenuPadding = \"--udex-masthead-right-menu-padding\",\n exploreMargin = \"--udex-masthead-shell-explore-margin\",\n itemIconGap = \"--udex-masthead-shell-item-icon-gap\",\n mastheadHeight = \"--udex-masthead-shell-height\",\n itemGap = \"--udex-masthead-shell-item-gap\",\n}\n\ntype UDExMastheadShellBaseEventDetail = {\n originalEvent: PointerEvent,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n item?: UDExMastheadItem,\n}\n\ntype UDExMastheadShellAnalyticsNameEventDetail = {\n analyticsName: AnalyticsName,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-masthead-shell</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MastheadShell.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-shell\",\n languageAware: true,\n renderer: litRender,\n styles: MastheadShellCss,\n template: MastheadShellTemplate,\n dependencies: [\n UDExMastheadMobileMenu,\n UDExControlButton,\n UDExMastheadItem,\n UDExMastheadMenu,\n UI5Icon,\n ],\n})\n\n/**\n * Fired event when the user clicks the mobile menu button opener.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the mobile menu open event\n */\n@event(\"mobile-menu-open\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the mobile menu button closer.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the mobile menu close event\n */\n@event(\"mobile-menu-close\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n *\n */\n@event(\"search-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search close button.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search close click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"search-close-click\", { bubbles: true })\n\n/**\n * Fired event when the search panel is opened.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search opened event\n */\n@event(\"search-opened\", { bubbles: true })\n\n/**\n * Fired event when the search panel is closed.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search closed event\n */\n@event(\"search-closed\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the joule button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the joule click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"joule-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the cart click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"cart-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the support button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the support click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"support-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the profile click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"profile-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the country selector button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the country selector click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"country-selector-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the logo click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"logo-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the site label click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"site-label-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the co-brand.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the co-brand click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"co-brand-click\", { bubbles: true })\n\nclass UDExMastheadShell extends UI5Element {\n eventDetails!: {\n \"mobile-menu-open\": UDExMastheadShellAnalyticsNameEventDetail,\n \"mobile-menu-close\": UDExMastheadShellAnalyticsNameEventDetail,\n \"search-opened\": UDExMastheadShellAnalyticsNameEventDetail,\n \"search-closed\": UDExMastheadShellAnalyticsNameEventDetail,\n \"joule-click\": UDExMastheadShellBaseEventDetail,\n \"cart-click\": UDExMastheadShellBaseEventDetail,\n \"support-click\": UDExMastheadShellBaseEventDetail,\n \"profile-click\": UDExMastheadShellBaseEventDetail,\n \"country-selector-click\": UDExMastheadShellBaseEventDetail,\n \"search-click\": UDExMastheadShellBaseEventDetail,\n \"search-close-click\": UDExMastheadShellBaseEventDetail,\n \"logo-click\": UDExMastheadShellBaseEventDetail,\n \"site-label-click\": UDExMastheadShellBaseEventDetail,\n \"co-brand-click\": UDExMastheadShellBaseEventDetail,\n };\n /**\n * Slot for country selector item.\n *\n * @public\n */\n @slot({ type: Node })\n countrySelector!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Slot<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: DefaultSlot<UDExMastheadItem>;\n\n /**\n * Slot for search component - will be visible on search icon click.\n * Note: search component should be hidden by default.\n * Note: search icon won't be visible if this slot would be empty\n *\n * @public\n */\n @slot({ type: Node })\n search!: Slot<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for joule menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n joule!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for support\n *\n * @public\n */\n @slot({ type: HTMLElement })\n support!: Slot<UDExMastheadItem>;\n\n /**\n * Defines URL to homepage. It will be used as a link on a logo and a site label\n *\n * @default undefined\n * @public\n */\n @property()\n homeUrl?: string;\n\n /**\n * Defines URL for site label. It will be used as a link on a logo and a site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelUrl?: string;\n\n /**\n * Defines overflow style for the body after clicking mobile menu opener button\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines the visibility of the Search by default.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n showSearchByDefault!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n stickyPosition!: boolean;\n\n /**\n * Defines the co-brand image\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandImage?: string;\n\n /**\n * Defines an alt text for the co-brand image\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n coBrandAlt?: string;\n\n /**\n * Defines the co-brand URL\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandUrl?: string;\n\n /**\n * Defines the default tooltip title for co-brand\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandTitle?: string;\n\n /**\n * Defines an aria label for the co-brand link\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandAriaLabel?: string;\n\n /**\n * Defines the Logo image URL\n *\n * @default undefined\n * @public\n */\n @property()\n logoUrl?: string;\n\n /**\n * Defines the Logo default title\n *\n * @default undefined\n * @public\n */\n @property()\n logoTitle?: string;\n\n /**\n * Defines the default tooltip title for site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelTitle?: string;\n\n /**\n * Defines a site label. It will be displayed next to a logo.\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabel?: string;\n\n /**\n * Defines an alt text for logo\n *\n * @default undefined\n * @public\n */\n @property()\n logoAlt?: string;\n\n /**\n * Defines an accessible name for close icon for the search bar\n *\n * @default undefined\n * @public\n */\n @property()\n closeButtonAccessibleName?: string;\n\n /**\n * Defines an accessible name for open search icon\n *\n * @default undefined\n * @public\n */\n @property()\n openSearchButtonAccessibleName?: string;\n\n /**\n * Defines an accessible name for the close mobile menu button\n *\n * @default undefined\n * @public\n */\n @property()\n mobileCloseButtonAccessibleName?: string;\n\n /**\n * Defines an aria label for the homepage link\n *\n * @default undefined\n * @public\n */\n @property()\n homepageAriaLabel?: string;\n\n /**\n * Defines an aria label for the site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelAriaLabel?: string;\n\n /**\n * Defines if the search container is opened\n *\n * @private\n */\n @property({ type: Boolean })\n _isSearchOpened!: boolean;\n\n /**\n * Defines if the mobile menu is open\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMenuOpen!: boolean;\n\n /**\n * Defines the mobile mode for component\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMode!: boolean;\n\n /**\n * Defines if the close button was clicked\n *\n * @private\n */\n @property({ type: Boolean })\n _closeBtnClicked!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _searchOpener!: UDExMastheadItem | null | undefined;\n _desktopSearch!: UDExSearch | null | undefined;\n _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _handleWindowResizeBound: () => void;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n _isVisible!: boolean;\n _handleSuggestionOpenedBound!: () => void;\n _handleSuggestionClosedBound!: () => void;\n _bodyBackdropEl: HTMLElement | null = null;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n this._handleWindowResizeBound = this._handleWindowResize.bind(this);\n this._handleSuggestionOpenedBound = this._showSearchBackdrop.bind(this);\n this._handleSuggestionClosedBound = this._hideSearchBackdrop.bind(this);\n }\n\n onBeforeRendering() {\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n }\n }\n\n onAfterRendering() {\n this._rootHolder = this.mastheadHolder;\n this._searchOpener = this.searchOpener;\n this._desktopSearch = this.desktopSearchSlot;\n this._mobileMenu = this.mastheadMobileMenu;\n\n if (this._isSearchOpened && this._desktopSearch) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n\n if (this.shouldHandleMobileView) {\n this.updateVisibility();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n window.addEventListener(\"resize\", this._handleWindowResizeBound);\n this.addEventListener(\"suggestion-popover-opened\", this._handleSuggestionOpenedBound);\n this.addEventListener(\"suggestion-popover-closed\", this._handleSuggestionClosedBound);\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n window.removeEventListener(\"resize\", this._handleWindowResizeBound);\n this.removeEventListener(\"suggestion-popover-opened\", this._handleSuggestionOpenedBound);\n this.removeEventListener(\"suggestion-popover-closed\", this._handleSuggestionClosedBound);\n this._bodyBackdropEl?.remove();\n this._bodyBackdropEl = null;\n }\n\n _handleWindowResize(): void {\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n }\n }\n\n onInvalidation({ name }: ChangeInfo): void {\n if (name === \"default\" && this.shouldHandleMobileView) {\n this.handleMobileMode();\n }\n }\n\n _handleResize(): void {\n if (this.shouldHandleMobileView) {\n this.handleMobileMode();\n }\n\n if (this.isAtMostBreakpointSizeM) {\n this._isSearchOpened = false;\n }\n\n if (this._shouldHandleResize && this._isMobileMenuOpen) {\n this.closeMobileMenu();\n this.resetSelectedItems();\n return;\n }\n\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n this.setProfileMobileMode();\n }\n\n this.recalculateOpenDropdownPosition();\n this._shouldHandleResize = true;\n }\n\n recalculateOpenDropdownPosition(): void {\n this.getSelectedItems()\n .filter(item => item.hasDropdownSlot && !item.isMobile && !item.isExploreBtn)\n .forEach(item => item.recalculateDropdownPosition());\n }\n\n handleMobileMode(): void {\n const rootHolder = this.getDomRef();\n if (rootHolder) {\n const rootHolderWidth = this.getRootHolderWidth(rootHolder);\n const landingHolderWidth = this.getLandingHolderWidth();\n const rightMenuWidth = this.getRightMenuWidth();\n const mainMenuWidth = this.getMainMenuWidth();\n const availableWidth = rootHolderWidth - rightMenuWidth - landingHolderWidth;\n\n if (mainMenuWidth >= availableWidth) {\n this.setMobileMode();\n } else {\n this.removeMobileMode();\n }\n\n this._isVisible = true;\n }\n }\n\n handleKeyDown(e: KeyboardEvent): void {\n e.stopPropagation();\n }\n\n handleSearchKeyDown(e: CustomEvent): void {\n e.stopPropagation();\n const keyEvent = e.detail.e as KeyboardEvent;\n\n if (isEscape(keyEvent)) {\n if (this.showSearchByDefault && this.isAtLeastBreakpointSizeM) {\n return;\n }\n this.closeSearch();\n this.focusSearchBtn();\n }\n }\n\n handleLogoClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"logo-click\", e);\n }\n\n handleSiteLabelClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"site-label-click\", e);\n }\n\n handleCoBrandClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"co-brand-click\", e);\n }\n\n handleSearchClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"search-click\", e);\n this.openSearch();\n }\n\n handleCartClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"cart-click\", e);\n this.mobileMenuReset();\n }\n\n handleJouleClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"joule-click\", e);\n this.mobileMenuReset();\n }\n\n handleProfileClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"profile-click\", e);\n this.mobileMenuReset();\n }\n\n handleSupportClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"support-click\", e);\n }\n\n handleCountrySelectorClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"country-selector-click\", e);\n this.mobileMenuReset();\n }\n\n handleOpenMobileMenu(): void {\n const clickedItem = this.mobileBtn as UDExMastheadItem;\n if (!clickedItem) {\n return;\n }\n\n this.resetSelectedItems(clickedItem._id);\n this._isMobileMenuOpen = true;\n\n if (this.bodyOverflow) {\n this.setOverflowBody();\n }\n\n this.fireMastheadEvent(\"mobile-menu-open\");\n }\n\n handleCloseSearch(e: PointerEvent): void {\n this._closeBtnClicked = true;\n this.fireMastheadEvent(\"search-close-click\", e);\n this.closeSearch();\n this.resetSearch();\n }\n\n handleEnterAndSpaceOnCloseBtn(e: KeyboardEvent): void {\n if (isSpace(e) || isEnter(e)) {\n e.preventDefault();\n this.closeMobileMenu();\n this.mobileBtn?.focus();\n }\n }\n\n focusSearchInput(): void {\n const input = this._desktopSearch?.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n\n resetSelectedItems(clickedId?: string): void {\n this.getSelectedItems().forEach(item => {\n if (item._id !== clickedId && item.selected) {\n if (item.hasDropdownSlot) {\n item.fireDropdownCloseEvent(item.eventItemTitle, UDExMastheadDropdownItemAction.ClickOutside);\n }\n item.selected = false;\n }\n });\n }\n\n resetSearch(): void {\n if (this._desktopSearch) {\n this._desktopSearch.value = \"\";\n }\n }\n\n setSelectedItem(e: CustomEvent): void {\n const clickedItem: UDExMastheadItem = e.detail.item;\n if (clickedItem) {\n this.resetSelectedItems(clickedItem._id);\n }\n }\n\n focusSearchBtn(): void {\n if (this._searchOpener) {\n this._searchOpener.focus();\n this._closeBtnClicked = false;\n }\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\n ...this.joule,\n ...this.cart,\n ...this.support,\n ...this.profile,\n ...this.countrySelector,\n ...(this.mobileBtn && this.closeBtn ? [this.mobileBtn, this.closeBtn] : []),\n ];\n\n return buttonsArray.filter(({ selected }) => selected);\n }\n\n getRootHolderWidth(root: HTMLElement): number {\n const rootPadding = parseInt(window.getComputedStyle(root).getPropertyValue(\"padding-left\")) * 2;\n const scrollWidth = window.innerWidth - document.documentElement.clientWidth;\n return this.getDomRef()!.clientWidth + scrollWidth - rootPadding;\n }\n\n getLandingHolderWidth(): number {\n const landingHolder = this.getDomElement(\".udex-masthead-shell__landing-wrap\");\n return landingHolder?.offsetWidth || 0;\n }\n\n getRightMenuWidth(): number {\n const itemsIcon = [...this.shadowRoot!.querySelectorAll<HTMLDivElement>(\".udex-masthead-shell__item_icon\")];\n const itemIconWidths = itemsIcon.length * this.getItemIconWidth();\n const itemIconGaps = itemsIcon.length * this.getItemIconGap();\n const exploreItem = this.exploreSAP[0];\n const hasArrowIcon = exploreItem?.hasArrowDown && !exploreItem?.hideArrowIcon;\n const exploreItemIconWidth = hasArrowIcon ? this.getItemArrowIconWidth() : 0;\n const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(exploreItem) : 0;\n const rightMenuGaps = this.getRightMenuGap() + this.getExploreSapBtnGap() + itemIconGaps;\n return exploreSAPWidth + exploreItemIconWidth + itemIconWidths + rightMenuGaps;\n }\n\n getItemIconSize(cssVariableName: string): number {\n const item = this.querySelector(\"[udex-masthead-item]\");\n\n if (!item) {\n return 0;\n }\n\n const style = window.getComputedStyle(item);\n const iconSizeVar = style.getPropertyValue(cssVariableName);\n return parseInt(iconSizeVar);\n }\n\n getItemIconWidth(): number {\n return this.getItemIconSize(UDExMastheadVariable.itemButtonIconSize);\n }\n\n getItemArrowIconWidth(): number {\n const arrowIconSize = this.getItemIconSize(UDExMastheadVariable.itemArrowIconSize);\n const marginInlineStart = this.getItemIconSize(UDExMastheadVariable.itemArrowIconMarginInlineStart);\n return arrowIconSize + marginInlineStart;\n }\n\n getMainMenuWidth(): number {\n const mainItems = this.getSlottedNodes(\"menuItems\");\n const gapItemVar = this.getRootVar(UDExMastheadVariable.itemGap);\n return mainItems.reduce((accumulatedWidth, item, index) => {\n const mainItem = item as UDExMastheadItem;\n const hasArrowIcon = mainItem.hasArrowDown && !mainItem.hideArrowIcon;\n const arrowIconWidth = hasArrowIcon ? this.getItemArrowIconWidth() : 0;\n return accumulatedWidth + this.getItemWidth(mainItem) + (index && parseInt(gapItemVar)) + arrowIconWidth;\n }, 0);\n }\n\n getDomElement(selector: string): HTMLElement | undefined | null {\n return this.shadowRoot?.querySelector(`${selector}`);\n }\n\n getItemWidth(item: UDExMastheadItem): number {\n const context = this.getCanvasContext();\n context.font = canvasContentFont;\n return Math.ceil(context.measureText(item.innerText.trim()).width);\n }\n\n getCanvasContext(): CanvasRenderingContext2D {\n const canvas = document.createElement(\"canvas\");\n return canvas.getContext(\"2d\")!;\n }\n\n getItemIconGap(): number {\n const gapIconItemVar = this.getRootVar(UDExMastheadVariable.itemIconGap);\n return parseInt(gapIconItemVar);\n }\n\n getExploreSapBtnGap(): number {\n const exploreSapBtnGapVar = this.getRootVar(UDExMastheadVariable.exploreMargin);\n return this.hasExploreSAP ? parseInt(exploreSapBtnGapVar) : 0;\n }\n\n getRightMenuGap(): number {\n const rightMenuGapVar = this.getRootVar(UDExMastheadVariable.rightMenuPadding);\n return parseInt(rightMenuGapVar);\n }\n\n getRootVar(variableName: string): string {\n return window.getComputedStyle(this.getDomRef()!).getPropertyValue(`${variableName}`);\n }\n\n setOverflowBody() {\n const { body: { style } } = document;\n this._shouldHandleResize = false;\n style.overflow = \"hidden\";\n }\n\n removeOverflowBody() {\n const { body: { style } } = document;\n style.removeProperty(\"overflow\");\n }\n\n setMobileMode(): void {\n this._isMobileMode = true;\n this.slottedItems.forEach((item: MastheadSlottedItem) => {\n if (item) {\n item._isMobileMode = true;\n }\n });\n }\n\n setMobileMenuHeight(): void {\n const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue(UDExMastheadVariable.mastheadHeight));\n const rectTop = this.getBoundingClientRect().top;\n const mobileMenuHeight = `${window.innerHeight - mastheadHeight - rectTop}px`;\n this.style.setProperty(UDExMastheadVariable.mobileMenuHeight, mobileMenuHeight);\n }\n\n setProfileMobileMode(): void {\n if (this.profileMenu) {\n this.profileMenu._isMobileMode = this.isMobileMenuMode;\n }\n }\n\n removeMobileMode(): void {\n this._isMobileMode = false;\n this.slottedItems.forEach((item: MastheadSlottedItem) => {\n item?.removeAttribute(\"_is-mobile-mode\");\n });\n }\n\n updateVisibility(): void {\n this.style.opacity = this.isVisible ? \"1\" : \"0\";\n }\n\n fireMastheadEvent(eventName: keyof this[\"eventDetails\"], e?: PointerEvent): void {\n const eventDetails = {\n analyticsName: AnalyticsName.Header,\n ...(e && { originalEvent: e }),\n ...(e && { sourceNode: e.currentTarget as HTMLElement }),\n } as this[\"eventDetails\"][typeof eventName];\n this.fireDecoratorEvent(eventName, eventDetails);\n }\n\n mobileMenuReset(): void {\n if (this._isMobileMenuOpen) {\n this._mobileMenu?.showFirstLevelMenu();\n this._mobileMenu?.resetSearch();\n }\n }\n\n /**\n * Close the search panel.\n * @public\n */\n closeSearch(): void {\n this._isSearchOpened = false;\n this.fireMastheadEvent(\"search-closed\");\n }\n\n /**\n * Open the search panel.\n * @public\n */\n openSearch(): void {\n const shouldPreventOpeningSearch = this._isSearchOpened\n || (this.isAtMostBreakpointSizeM && !this.showSearchByDefault)\n || this._isMobileMode\n || (this.isAtLeastBreakpointSizeM && this.showSearchByDefault);\n\n if (shouldPreventOpeningSearch) {\n return;\n }\n\n this._isSearchOpened = true;\n this.resetSelectedItems();\n\n if (this._searchOpener) {\n this._searchOpener.selected = false;\n }\n\n this.fireMastheadEvent(\"search-opened\");\n }\n\n private _getBackdropEl(): HTMLElement {\n if (!this._bodyBackdropEl) {\n ensureSearchBackdropStyles(this.ownerDocument);\n const el = this.ownerDocument.createElement(\"div\");\n el.className = \"udex-search-backdrop\";\n el.addEventListener(\"click\", () => this.handleBackdropClick());\n this.ownerDocument.body.appendChild(el);\n this._bodyBackdropEl = el;\n }\n return this._bodyBackdropEl;\n }\n\n private _showSearchBackdrop(): void {\n if (!this.showSearchByDefault && this.isMobileMenuMode) {\n return;\n }\n const backdrop = this._getBackdropEl();\n const top = this.getBoundingClientRect().bottom;\n backdrop.style.top = `${top}px`;\n backdrop.style.display = \"block\";\n }\n\n private _hideSearchBackdrop(): void {\n if (this._bodyBackdropEl) {\n this._bodyBackdropEl.style.display = \"none\";\n }\n }\n\n handleBackdropClick(): void {\n this._desktopSearch?.onClosePopover();\n }\n\n /**\n * Open the mobile menu panel.\n * @public\n */\n openMobileMenu(): void {\n if (!this._isMobileMenuOpen && this.isMobileMenuMode) {\n this.mobileBtn?.handleSelectedChange();\n this.handleOpenMobileMenu();\n }\n }\n\n /**\n * Close the mobile menu panel.\n * @public\n */\n closeMobileMenu(): void {\n if (!this._isMobileMenuOpen) {\n return;\n }\n\n (this.mobileBtn as UDExMastheadItem).selected = false;\n this.mobileMenuReset();\n this._isMobileMenuOpen = false;\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n\n this.fireMastheadEvent(\"mobile-menu-close\");\n }\n\n get slottedItems(): (MastheadSlottedItem)[] {\n return [\n this.profileItem,\n this.profileMenu,\n this.cartItem,\n this.supportItem,\n this.profileMenuLinks,\n this.countrySelectorItem,\n this.countrySelectorMenu,\n ];\n }\n\n get desktopSearchSlot(): UDExSearch | null {\n return this.querySelector<UDExSearch>(\"[udex-search]\");\n }\n\n get searchOpener(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__search-btn\");\n }\n\n get mastheadHolder(): HTMLElement | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell\");\n }\n\n get mastheadMobileMenu(): UDExMastheadMobileMenu | null {\n return this.querySelector(\"[udex-masthead-mobile-menu]\");\n }\n\n get mobileBtn(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__menu-btn\");\n }\n\n get closeBtn(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__close-btn\");\n }\n\n get profileItem(): UDExMastheadItem {\n return this.getSlottedNodes<UDExMastheadItem>(\"profile\")[0];\n }\n\n get countrySelectorItem(): UDExMastheadItem {\n return this.getSlottedNodes<UDExMastheadItem>(\"countrySelector\")[0];\n }\n\n get cartItem(): MastheadItemType {\n return this.getSlottedNodes<UDExMastheadItem>(\"cart\")[0];\n }\n\n get supportItem(): MastheadItemType {\n return this.getSlottedNodes<UDExMastheadItem>(\"support\")[0];\n }\n\n get profileMenu(): UDExMastheadProfileMenu {\n return this.querySelector(\"[udex-masthead-profile-menu]\")!;\n }\n\n get countrySelectorMenu(): UDExMastheadCountrySelector {\n return this.querySelector(\"[udex-masthead-country-selector]\")!;\n }\n\n get profileMenuLinks(): UDExMastheadMenu | undefined | null {\n return this.profileMenu?.shadowRoot?.querySelector(\"[udex-masthead-menu]\");\n }\n\n get hasProfile(): boolean {\n return !!this.profile.length;\n }\n\n get hasCart(): boolean {\n return !!this.cart.length;\n }\n\n get hasSearch(): boolean {\n return !!this.search.length;\n }\n\n get hasExploreSAP(): boolean {\n return !!this.exploreSAP.length;\n }\n\n get hasJoule(): boolean {\n return !!this.joule.length;\n }\n\n get hasCountrySelector(): boolean {\n return !!this.countrySelector.length;\n }\n\n get hasSupport(): boolean {\n return !!this.support.length;\n }\n\n get hasMobileMenuButtons(): boolean {\n return !!this.mobileMenu.length;\n }\n\n get isAtMostBreakpointSizeM(): boolean {\n return BreakpointUtils.isAtMost(\"M\");\n }\n\n get isAtLeastBreakpointSizeM(): boolean {\n return BreakpointUtils.isAtLeast(\"M\");\n }\n\n get isMobileMenuMode(): boolean {\n return this._isMobileMode || this.isAtMostBreakpointSizeM;\n }\n\n get isMainMenuVisible(): boolean {\n return !this.showSearchByDefault && !this._isSearchOpened && !!this.menuItems.length;\n }\n\n get isSearchVisible(): boolean {\n return this.showSearchByDefault || this._isSearchOpened;\n }\n\n get isVisible(): boolean {\n return this.isMobileMenuMode || !this.menuItems.length || this._isVisible;\n }\n\n get shouldHandleMobileView(): boolean {\n return !this.isAtMostBreakpointSizeM && this.isMainMenuVisible;\n }\n\n get openSearchButtonAccessibleNameText(): string {\n return this.openSearchButtonAccessibleName || translate(UDExMastheadShell, SEARCH);\n }\n\n get mainNavigationAriaLabel(): string {\n return translate(UDExMastheadShell, MAIN_LINKS);\n }\n\n get isSimpleExploreMode(): boolean {\n return !this.hasSearch && !this.hasProfile && !this.hasCart && !this.hasSupport && !this.hasCountrySelector;\n }\n\n get rightMenuClass(): string {\n const root = \"udex-masthead-shell__right-menu\";\n const simpleExploreClass = this.isSimpleExploreMode ? `${root}_simple-explore` : \"\";\n return `${root} ${simpleExploreClass}`.trim();\n }\n\n get mainClass(): string {\n const root = \"udex-masthead-shell\";\n const coBrandWithoutNavClass = (!!this.coBrandImage && !this.menuItems.length) ? `${root}_co-brand-without-nav` : \"\";\n return `${root} ${coBrandWithoutNavClass}`.trim();\n }\n}\n\nUDExMastheadShell.define();\n\nexport default UDExMastheadShell;\nexport type { UDExMastheadShellBaseEventDetail, UDExMastheadShellAnalyticsNameEventDetail };\n"]}
1
+ {"version":3,"file":"MastheadShell.js","sourceRoot":"","sources":["../src/MastheadShell.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 slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport type { DefaultSlot, Slot, ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n isSpace, isEnter, isEscape,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/menu2.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { MAIN_LINKS, SEARCH } from \"./generated/i18n/i18n-defaults.js\";\nimport UDExMastheadItem, { UDExMastheadDropdownItemAction } from \"./MastheadItem.js\";\nimport UDExMastheadMenu from \"./MastheadMenu.js\";\nimport type UDExSearch from \"./Search.js\";\nimport UDExMastheadMobileMenu from \"./MastheadMobileMenu.js\";\nimport type UDExMastheadProfileMenu from \"./MastheadProfileMenu.js\";\nimport type UDExMastheadCountrySelector from \"./MastheadCountrySelector.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport AnalyticsName from \"./types/AnalyticsName.js\";\nimport MastheadShellTemplate from \"./MastheadShellTemplate.js\";\nimport translate from \"./utils/translate.js\";\nimport ensureSearchBackdropStyles from \"./utils/searchBackdrop.js\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst canvasContentFont = \"14px '72 Brand Variable'\";\n\nexport type MastheadSlottedItem = UDExMastheadItem | UDExMastheadProfileMenu | UDExMastheadMenu | UDExMastheadCountrySelector | undefined | null;\nexport type MastheadItemType = UDExMastheadItem | null | undefined;\n\nexport enum UDExMastheadVariable {\n itemArrowIconMarginInlineStart = \"--udex-masthead-item-arrow-margin-inline-start\",\n mobileMenuHeight = \"--udex-masthead-shell-mobile-menu-height\",\n itemButtonIconSize = \"--udex-masthead-item-button-icon-size\",\n itemArrowIconSize = \"--udex-masthead-item-arrow-icon-size\",\n rightMenuPadding = \"--udex-masthead-right-menu-padding\",\n exploreMargin = \"--udex-masthead-shell-explore-margin\",\n itemIconGap = \"--udex-masthead-shell-item-icon-gap\",\n mastheadHeight = \"--udex-masthead-shell-height\",\n itemGap = \"--udex-masthead-shell-item-gap\",\n}\n\ntype UDExMastheadShellBaseEventDetail = {\n originalEvent: PointerEvent,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n item?: UDExMastheadItem,\n}\n\ntype UDExMastheadShellAnalyticsNameEventDetail = {\n analyticsName: AnalyticsName,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-masthead-shell</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MastheadShell.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-shell\",\n languageAware: true,\n renderer: jsxRenderer,\n styles: MastheadShellCss,\n template: MastheadShellTemplate,\n dependencies: [\n UDExMastheadMobileMenu,\n UDExMastheadItem,\n UDExMastheadMenu,\n UI5Icon,\n ],\n})\n\n/**\n * Fired event when the user clicks the mobile menu button opener.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the mobile menu open event\n */\n@event(\"mobile-menu-open\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the mobile menu button closer.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the mobile menu close event\n */\n@event(\"mobile-menu-close\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n *\n */\n@event(\"search-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search close button.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search close click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"search-close-click\", { bubbles: true })\n\n/**\n * Fired event when the search panel is opened.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search opened event\n */\n@event(\"search-opened\", { bubbles: true })\n\n/**\n * Fired event when the search panel is closed.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the search closed event\n */\n@event(\"search-closed\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the joule button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the joule click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"joule-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the cart click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"cart-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the support button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the support click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"support-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the profile click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"profile-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the country selector button trigger.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the country selector click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"country-selector-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the logo click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"logo-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the site label click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"site-label-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the co-brand.\n *\n * @public\n * @param {AnalyticsName} analyticsName The analytics name for the co-brand click event\n * @param {PointerEvent} originalEvent The original pointer event\n * @param {HTMLElement} sourceNode The source element that fired the event\n * @param {UDExMastheadItem} [item] The masthead item that was clicked\n */\n@event(\"co-brand-click\", { bubbles: true })\n\nclass UDExMastheadShell extends UI5Element {\n eventDetails!: {\n \"mobile-menu-open\": UDExMastheadShellAnalyticsNameEventDetail,\n \"mobile-menu-close\": UDExMastheadShellAnalyticsNameEventDetail,\n \"search-opened\": UDExMastheadShellAnalyticsNameEventDetail,\n \"search-closed\": UDExMastheadShellAnalyticsNameEventDetail,\n \"joule-click\": UDExMastheadShellBaseEventDetail,\n \"cart-click\": UDExMastheadShellBaseEventDetail,\n \"support-click\": UDExMastheadShellBaseEventDetail,\n \"profile-click\": UDExMastheadShellBaseEventDetail,\n \"country-selector-click\": UDExMastheadShellBaseEventDetail,\n \"search-click\": UDExMastheadShellBaseEventDetail,\n \"search-close-click\": UDExMastheadShellBaseEventDetail,\n \"logo-click\": UDExMastheadShellBaseEventDetail,\n \"site-label-click\": UDExMastheadShellBaseEventDetail,\n \"co-brand-click\": UDExMastheadShellBaseEventDetail,\n };\n /**\n * Slot for country selector item.\n *\n * @public\n */\n @slot({ type: Node })\n countrySelector!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Slot<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: DefaultSlot<UDExMastheadItem>;\n\n /**\n * Slot for search component - will be visible on search icon click.\n * Note: search component should be hidden by default.\n * Note: search icon won't be visible if this slot would be empty\n *\n * @public\n */\n @slot({ type: Node })\n search!: Slot<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for joule menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n joule!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Slot<UDExMastheadItem>;\n\n /**\n * Slot for support\n *\n * @public\n */\n @slot({ type: HTMLElement })\n support!: Slot<UDExMastheadItem>;\n\n /**\n * Defines URL to homepage. It will be used as a link on a logo and a site label\n *\n * @default undefined\n * @public\n */\n @property()\n homeUrl?: string;\n\n /**\n * Defines URL for site label. It will be used as a link on a logo and a site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelUrl?: string;\n\n /**\n * Defines overflow style for the body after clicking mobile menu opener button\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines the visibility of the Search by default.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n showSearchByDefault!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n stickyPosition!: boolean;\n\n /**\n * Defines the co-brand image\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandImage?: string;\n\n /**\n * Defines an alt text for the co-brand image\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n coBrandAlt?: string;\n\n /**\n * Defines the co-brand URL\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandUrl?: string;\n\n /**\n * Defines the default tooltip title for co-brand\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandTitle?: string;\n\n /**\n * Defines an aria label for the co-brand link\n *\n * @default undefined\n * @public\n */\n @property()\n coBrandAriaLabel?: string;\n\n /**\n * Defines the Logo image URL\n *\n * @default undefined\n * @public\n */\n @property()\n logoUrl?: string;\n\n /**\n * Defines the Logo default title\n *\n * @default undefined\n * @public\n */\n @property()\n logoTitle?: string;\n\n /**\n * Defines the default tooltip title for site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelTitle?: string;\n\n /**\n * Defines a site label. It will be displayed next to a logo.\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabel?: string;\n\n /**\n * Defines an alt text for logo\n *\n * @default undefined\n * @public\n */\n @property()\n logoAlt?: string;\n\n /**\n * Defines an accessible name for close icon for the search bar\n *\n * @default undefined\n * @public\n */\n @property()\n closeButtonAccessibleName?: string;\n\n /**\n * Defines an accessible name for open search icon\n *\n * @default undefined\n * @public\n */\n @property()\n openSearchButtonAccessibleName?: string;\n\n /**\n * Defines an accessible name for the close mobile menu button\n *\n * @default undefined\n * @public\n */\n @property()\n mobileCloseButtonAccessibleName?: string;\n\n /**\n * Defines an aria label for the homepage link\n *\n * @default undefined\n * @public\n */\n @property()\n homepageAriaLabel?: string;\n\n /**\n * Defines an aria label for the site label\n *\n * @default undefined\n * @public\n */\n @property()\n siteLabelAriaLabel?: string;\n\n /**\n * Defines if the search container is opened\n *\n * @private\n */\n @property({ type: Boolean })\n _isSearchOpened!: boolean;\n\n /**\n * Defines if the mobile menu is open\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMenuOpen!: boolean;\n\n /**\n * Defines the mobile mode for component\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMode!: boolean;\n\n /**\n * Defines if the close button was clicked\n *\n * @private\n */\n @property({ type: Boolean })\n _closeBtnClicked!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _searchOpener!: UDExMastheadItem | null | undefined;\n _desktopSearch!: UDExSearch | null | undefined;\n _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _handleWindowResizeBound: () => void;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n _isVisible!: boolean;\n _handleSuggestionOpenedBound!: () => void;\n _handleSuggestionClosedBound!: () => void;\n _bodyBackdropEl: HTMLElement | null = null;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n this._handleWindowResizeBound = this._handleWindowResize.bind(this);\n this._handleSuggestionOpenedBound = this._showSearchBackdrop.bind(this);\n this._handleSuggestionClosedBound = this._hideSearchBackdrop.bind(this);\n }\n\n onBeforeRendering() {\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n }\n }\n\n onAfterRendering() {\n this._rootHolder = this.mastheadHolder;\n this._searchOpener = this.searchOpener;\n this._desktopSearch = this.desktopSearchSlot;\n this._mobileMenu = this.mastheadMobileMenu;\n\n if (this._isSearchOpened && this._desktopSearch) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n\n if (this.shouldHandleMobileView) {\n this.updateVisibility();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n window.addEventListener(\"resize\", this._handleWindowResizeBound);\n this.addEventListener(\"suggestion-popover-opened\", this._handleSuggestionOpenedBound);\n this.addEventListener(\"suggestion-popover-closed\", this._handleSuggestionClosedBound);\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n window.removeEventListener(\"resize\", this._handleWindowResizeBound);\n this.removeEventListener(\"suggestion-popover-opened\", this._handleSuggestionOpenedBound);\n this.removeEventListener(\"suggestion-popover-closed\", this._handleSuggestionClosedBound);\n this._bodyBackdropEl?.remove();\n this._bodyBackdropEl = null;\n }\n\n _handleWindowResize(): void {\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n }\n }\n\n onInvalidation({ name }: ChangeInfo): void {\n if (name === \"default\" && this.shouldHandleMobileView) {\n this.handleMobileMode();\n }\n }\n\n _handleResize(): void {\n if (this.shouldHandleMobileView) {\n this.handleMobileMode();\n }\n\n if (this.isAtMostBreakpointSizeM) {\n this._isSearchOpened = false;\n }\n\n if (this._shouldHandleResize && this._isMobileMenuOpen) {\n this.closeMobileMenu();\n this.resetSelectedItems();\n return;\n }\n\n if (this.isMobileMenuMode) {\n this.setMobileMenuHeight();\n this.setProfileMobileMode();\n }\n\n this.recalculateOpenDropdownPosition();\n this._shouldHandleResize = true;\n }\n\n recalculateOpenDropdownPosition(): void {\n this.getSelectedItems()\n .filter(item => item.hasDropdownSlot && !item.isMobile && !item.isExploreBtn)\n .forEach(item => item.recalculateDropdownPosition());\n }\n\n handleMobileMode(): void {\n const rootHolder = this.getDomRef();\n if (rootHolder) {\n const rootHolderWidth = this.getRootHolderWidth(rootHolder);\n const landingHolderWidth = this.getLandingHolderWidth();\n const rightMenuWidth = this.getRightMenuWidth();\n const mainMenuWidth = this.getMainMenuWidth();\n const availableWidth = rootHolderWidth - rightMenuWidth - landingHolderWidth;\n\n if (mainMenuWidth >= availableWidth) {\n this.setMobileMode();\n } else {\n this.removeMobileMode();\n }\n\n this._isVisible = true;\n }\n }\n\n handleKeyDown(e: KeyboardEvent): void {\n e.stopPropagation();\n }\n\n handleSearchKeyDown(e: CustomEvent): void {\n e.stopPropagation();\n const keyEvent = e.detail.e as KeyboardEvent;\n\n if (isEscape(keyEvent)) {\n if (this.showSearchByDefault && this.isAtLeastBreakpointSizeM) {\n return;\n }\n this.closeSearch();\n this.focusSearchBtn();\n }\n }\n\n handleLogoClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"logo-click\", e);\n }\n\n handleSiteLabelClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"site-label-click\", e);\n }\n\n handleCoBrandClick(e: PointerEvent): void {\n this.fireMastheadEvent(\"co-brand-click\", e);\n }\n\n handleSearchClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"search-click\", e);\n this.openSearch();\n }\n\n handleCartClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"cart-click\", e);\n this.mobileMenuReset();\n }\n\n handleJouleClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"joule-click\", e);\n this.mobileMenuReset();\n }\n\n handleProfileClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"profile-click\", e);\n this.mobileMenuReset();\n }\n\n handleSupportClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"support-click\", e);\n }\n\n handleCountrySelectorClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"country-selector-click\", e);\n this.mobileMenuReset();\n }\n\n handleOpenMobileMenu(): void {\n const clickedItem = this.mobileBtn as UDExMastheadItem;\n if (!clickedItem) {\n return;\n }\n\n this.resetSelectedItems(clickedItem._id);\n this._isMobileMenuOpen = true;\n\n if (this.bodyOverflow) {\n this.setOverflowBody();\n }\n\n this.fireMastheadEvent(\"mobile-menu-open\");\n }\n\n handleCloseSearch(e: PointerEvent): void {\n this._closeBtnClicked = true;\n this.fireMastheadEvent(\"search-close-click\", e);\n this.closeSearch();\n this.resetSearch();\n }\n\n handleEnterAndSpaceOnCloseBtn(e: KeyboardEvent): void {\n if (isSpace(e) || isEnter(e)) {\n e.preventDefault();\n this.closeMobileMenu();\n this.mobileBtn?.focus();\n }\n }\n\n focusSearchInput(): void {\n const input = this._desktopSearch?.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n\n resetSelectedItems(clickedId?: string): void {\n this.getSelectedItems().forEach(item => {\n if (item._id !== clickedId && item.selected) {\n if (item.hasDropdownSlot) {\n item.fireDropdownCloseEvent(item.eventItemTitle, UDExMastheadDropdownItemAction.ClickOutside);\n }\n item.selected = false;\n }\n });\n }\n\n resetSearch(): void {\n if (this._desktopSearch) {\n this._desktopSearch.value = \"\";\n }\n }\n\n setSelectedItem(e: CustomEvent): void {\n const clickedItem: UDExMastheadItem = e.detail.item;\n if (clickedItem) {\n this.resetSelectedItems(clickedItem._id);\n }\n }\n\n focusSearchBtn(): void {\n if (this._searchOpener) {\n this._searchOpener.focus();\n this._closeBtnClicked = false;\n }\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\n ...this.joule,\n ...this.cart,\n ...this.support,\n ...this.profile,\n ...this.countrySelector,\n ...(this.mobileBtn && this.closeBtn ? [this.mobileBtn, this.closeBtn] : []),\n ];\n\n return buttonsArray.filter(({ selected }) => selected);\n }\n\n getRootHolderWidth(root: HTMLElement): number {\n const rootPadding = parseInt(window.getComputedStyle(root).getPropertyValue(\"padding-left\")) * 2;\n const scrollWidth = window.innerWidth - document.documentElement.clientWidth;\n return this.getDomRef()!.clientWidth + scrollWidth - rootPadding;\n }\n\n getLandingHolderWidth(): number {\n const landingHolder = this.getDomElement(\".udex-masthead-shell__landing-wrap\");\n return landingHolder?.offsetWidth || 0;\n }\n\n getRightMenuWidth(): number {\n const itemsIcon = [...this.shadowRoot!.querySelectorAll<HTMLDivElement>(\".udex-masthead-shell__item_icon\")];\n const itemIconWidths = itemsIcon.length * this.getItemIconWidth();\n const itemIconGaps = itemsIcon.length * this.getItemIconGap();\n const exploreItem = this.exploreSAP[0];\n const hasArrowIcon = exploreItem?.hasArrowDown && !exploreItem?.hideArrowIcon;\n const exploreItemIconWidth = hasArrowIcon ? this.getItemArrowIconWidth() : 0;\n const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(exploreItem) : 0;\n const rightMenuGaps = this.getRightMenuGap() + this.getExploreSapBtnGap() + itemIconGaps;\n return exploreSAPWidth + exploreItemIconWidth + itemIconWidths + rightMenuGaps;\n }\n\n getItemIconSize(cssVariableName: string): number {\n const item = this.querySelector(\"[udex-masthead-item]\");\n\n if (!item) {\n return 0;\n }\n\n const style = window.getComputedStyle(item);\n const iconSizeVar = style.getPropertyValue(cssVariableName);\n return parseInt(iconSizeVar);\n }\n\n getItemIconWidth(): number {\n return this.getItemIconSize(UDExMastheadVariable.itemButtonIconSize);\n }\n\n getItemArrowIconWidth(): number {\n const arrowIconSize = this.getItemIconSize(UDExMastheadVariable.itemArrowIconSize);\n const marginInlineStart = this.getItemIconSize(UDExMastheadVariable.itemArrowIconMarginInlineStart);\n return arrowIconSize + marginInlineStart;\n }\n\n getMainMenuWidth(): number {\n const mainItems = this.getSlottedNodes(\"menuItems\");\n const gapItemVar = this.getRootVar(UDExMastheadVariable.itemGap);\n return mainItems.reduce((accumulatedWidth, item, index) => {\n const mainItem = item as UDExMastheadItem;\n const hasArrowIcon = mainItem.hasArrowDown && !mainItem.hideArrowIcon;\n const arrowIconWidth = hasArrowIcon ? this.getItemArrowIconWidth() : 0;\n return accumulatedWidth + this.getItemWidth(mainItem) + (index && parseInt(gapItemVar)) + arrowIconWidth;\n }, 0);\n }\n\n getDomElement(selector: string): HTMLElement | undefined | null {\n return this.shadowRoot?.querySelector(`${selector}`);\n }\n\n getItemWidth(item: UDExMastheadItem): number {\n const context = this.getCanvasContext();\n context.font = canvasContentFont;\n return Math.ceil(context.measureText(item.innerText.trim()).width);\n }\n\n getCanvasContext(): CanvasRenderingContext2D {\n const canvas = document.createElement(\"canvas\");\n return canvas.getContext(\"2d\")!;\n }\n\n getItemIconGap(): number {\n const gapIconItemVar = this.getRootVar(UDExMastheadVariable.itemIconGap);\n return parseInt(gapIconItemVar);\n }\n\n getExploreSapBtnGap(): number {\n const exploreSapBtnGapVar = this.getRootVar(UDExMastheadVariable.exploreMargin);\n return this.hasExploreSAP ? parseInt(exploreSapBtnGapVar) : 0;\n }\n\n getRightMenuGap(): number {\n const rightMenuGapVar = this.getRootVar(UDExMastheadVariable.rightMenuPadding);\n return parseInt(rightMenuGapVar);\n }\n\n getRootVar(variableName: string): string {\n return window.getComputedStyle(this.getDomRef()!).getPropertyValue(`${variableName}`);\n }\n\n setOverflowBody() {\n const { body: { style } } = document;\n this._shouldHandleResize = false;\n style.overflow = \"hidden\";\n }\n\n removeOverflowBody() {\n const { body: { style } } = document;\n style.removeProperty(\"overflow\");\n }\n\n setMobileMode(): void {\n this._isMobileMode = true;\n this.slottedItems.forEach((item: MastheadSlottedItem) => {\n if (item) {\n item._isMobileMode = true;\n }\n });\n }\n\n setMobileMenuHeight(): void {\n const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue(UDExMastheadVariable.mastheadHeight));\n const rectTop = this.getBoundingClientRect().top;\n const mobileMenuHeight = `${window.innerHeight - mastheadHeight - rectTop}px`;\n this.style.setProperty(UDExMastheadVariable.mobileMenuHeight, mobileMenuHeight);\n }\n\n setProfileMobileMode(): void {\n if (this.profileMenu) {\n this.profileMenu._isMobileMode = this.isMobileMenuMode;\n }\n }\n\n removeMobileMode(): void {\n this._isMobileMode = false;\n this.slottedItems.forEach((item: MastheadSlottedItem) => {\n item?.removeAttribute(\"_is-mobile-mode\");\n });\n }\n\n updateVisibility(): void {\n this.style.opacity = this.isVisible ? \"1\" : \"0\";\n }\n\n fireMastheadEvent(eventName: keyof this[\"eventDetails\"], e?: PointerEvent): void {\n const eventDetails = {\n analyticsName: AnalyticsName.Header,\n ...(e && { originalEvent: e }),\n ...(e && { sourceNode: e.currentTarget as HTMLElement }),\n } as this[\"eventDetails\"][typeof eventName];\n this.fireDecoratorEvent(eventName, eventDetails);\n }\n\n mobileMenuReset(): void {\n if (this._isMobileMenuOpen) {\n this._mobileMenu?.showFirstLevelMenu();\n this._mobileMenu?.resetSearch();\n }\n }\n\n /**\n * Close the search panel.\n * @public\n */\n closeSearch(): void {\n this._isSearchOpened = false;\n this.fireMastheadEvent(\"search-closed\");\n }\n\n /**\n * Open the search panel.\n * @public\n */\n openSearch(): void {\n const shouldPreventOpeningSearch = this._isSearchOpened\n || (this.isAtMostBreakpointSizeM && !this.showSearchByDefault)\n || this._isMobileMode\n || (this.isAtLeastBreakpointSizeM && this.showSearchByDefault);\n\n if (shouldPreventOpeningSearch) {\n return;\n }\n\n this._isSearchOpened = true;\n this.resetSelectedItems();\n\n if (this._searchOpener) {\n this._searchOpener.selected = false;\n }\n\n this.fireMastheadEvent(\"search-opened\");\n }\n\n private _getBackdropEl(): HTMLElement {\n if (!this._bodyBackdropEl) {\n ensureSearchBackdropStyles(this.ownerDocument);\n const el = this.ownerDocument.createElement(\"div\");\n el.className = \"udex-search-backdrop\";\n el.addEventListener(\"click\", () => this.handleBackdropClick());\n this.ownerDocument.body.appendChild(el);\n this._bodyBackdropEl = el;\n }\n return this._bodyBackdropEl;\n }\n\n private _showSearchBackdrop(): void {\n if (!this.showSearchByDefault && this.isMobileMenuMode) {\n return;\n }\n const backdrop = this._getBackdropEl();\n const top = this.getBoundingClientRect().bottom;\n backdrop.style.top = `${top}px`;\n backdrop.style.display = \"block\";\n }\n\n private _hideSearchBackdrop(): void {\n if (this._bodyBackdropEl) {\n this._bodyBackdropEl.style.display = \"none\";\n }\n }\n\n handleBackdropClick(): void {\n this._desktopSearch?.onClosePopover();\n }\n\n /**\n * Open the mobile menu panel.\n * @public\n */\n openMobileMenu(): void {\n if (!this._isMobileMenuOpen && this.isMobileMenuMode) {\n this.mobileBtn?.handleSelectedChange();\n this.handleOpenMobileMenu();\n }\n }\n\n /**\n * Close the mobile menu panel.\n * @public\n */\n closeMobileMenu(): void {\n if (!this._isMobileMenuOpen) {\n return;\n }\n\n (this.mobileBtn as UDExMastheadItem).selected = false;\n this.mobileMenuReset();\n this._isMobileMenuOpen = false;\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n\n this.fireMastheadEvent(\"mobile-menu-close\");\n }\n\n get slottedItems(): (MastheadSlottedItem)[] {\n return [\n this.profileItem,\n this.profileMenu,\n this.cartItem,\n this.supportItem,\n this.profileMenuLinks,\n this.countrySelectorItem,\n this.countrySelectorMenu,\n ];\n }\n\n get desktopSearchSlot(): UDExSearch | null {\n return this.querySelector<UDExSearch>(\"[udex-search]\");\n }\n\n get searchOpener(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__search-btn\");\n }\n\n get mastheadHolder(): HTMLElement | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell\");\n }\n\n get mastheadMobileMenu(): UDExMastheadMobileMenu | null {\n return this.querySelector(\"[udex-masthead-mobile-menu]\");\n }\n\n get mobileBtn(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__menu-btn\");\n }\n\n get closeBtn(): MastheadItemType {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__close-btn\");\n }\n\n get profileItem(): UDExMastheadItem {\n return this.getSlottedNodes<UDExMastheadItem>(\"profile\")[0];\n }\n\n get countrySelectorItem(): UDExMastheadItem {\n return this.getSlottedNodes<UDExMastheadItem>(\"countrySelector\")[0];\n }\n\n get cartItem(): MastheadItemType {\n return this.getSlottedNodes<UDExMastheadItem>(\"cart\")[0];\n }\n\n get supportItem(): MastheadItemType {\n return this.getSlottedNodes<UDExMastheadItem>(\"support\")[0];\n }\n\n get profileMenu(): UDExMastheadProfileMenu {\n return this.querySelector(\"[udex-masthead-profile-menu]\")!;\n }\n\n get countrySelectorMenu(): UDExMastheadCountrySelector {\n return this.querySelector(\"[udex-masthead-country-selector]\")!;\n }\n\n get profileMenuLinks(): UDExMastheadMenu | undefined | null {\n return this.profileMenu?.shadowRoot?.querySelector(\"[udex-masthead-menu]\");\n }\n\n get hasProfile(): boolean {\n return !!this.profile.length;\n }\n\n get hasCart(): boolean {\n return !!this.cart.length;\n }\n\n get hasSearch(): boolean {\n return !!this.search.length;\n }\n\n get hasExploreSAP(): boolean {\n return !!this.exploreSAP.length;\n }\n\n get hasJoule(): boolean {\n return !!this.joule.length;\n }\n\n get hasCountrySelector(): boolean {\n return !!this.countrySelector.length;\n }\n\n get hasSupport(): boolean {\n return !!this.support.length;\n }\n\n get hasMobileMenuButtons(): boolean {\n return !!this.mobileMenu.length;\n }\n\n get isAtMostBreakpointSizeM(): boolean {\n return BreakpointUtils.isAtMost(\"M\");\n }\n\n get isAtLeastBreakpointSizeM(): boolean {\n return BreakpointUtils.isAtLeast(\"M\");\n }\n\n get isMobileMenuMode(): boolean {\n return this._isMobileMode || this.isAtMostBreakpointSizeM;\n }\n\n get isMainMenuVisible(): boolean {\n return !this.showSearchByDefault && !this._isSearchOpened && !!this.menuItems.length;\n }\n\n get isSearchVisible(): boolean {\n return this.showSearchByDefault || this._isSearchOpened;\n }\n\n get isVisible(): boolean {\n return this.isMobileMenuMode || !this.menuItems.length || this._isVisible;\n }\n\n get shouldHandleMobileView(): boolean {\n return !this.isAtMostBreakpointSizeM && this.isMainMenuVisible;\n }\n\n get openSearchButtonAccessibleNameText(): string {\n return this.openSearchButtonAccessibleName || translate(UDExMastheadShell, SEARCH);\n }\n\n get mainNavigationAriaLabel(): string {\n return translate(UDExMastheadShell, MAIN_LINKS);\n }\n\n get isSimpleExploreMode(): boolean {\n return !this.hasSearch && !this.hasProfile && !this.hasCart && !this.hasSupport && !this.hasCountrySelector;\n }\n\n get rightMenuClass(): string {\n const root = \"udex-masthead-shell__right-menu\";\n const simpleExploreClass = this.isSimpleExploreMode ? `${root}_simple-explore` : \"\";\n return `${root} ${simpleExploreClass}`.trim();\n }\n\n get mainClass(): string {\n const root = \"udex-masthead-shell\";\n const coBrandWithoutNavClass = (!!this.coBrandImage && !this.menuItems.length) ? `${root}_co-brand-without-nav` : \"\";\n return `${root} ${coBrandWithoutNavClass}`.trim();\n }\n}\n\nUDExMastheadShell.define();\n\nexport default UDExMastheadShell;\nexport type { UDExMastheadShellBaseEventDetail, UDExMastheadShellAnalyticsNameEventDetail };\n"]}
@@ -0,0 +1,2 @@
1
+ import type UDExMastheadShell from "./MastheadShell.js";
2
+ export default function MastheadShellTemplate(this: UDExMastheadShell): import("@ui5/webcomponents-base").JSX.Element;
@@ -0,0 +1,20 @@
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import UDExMastheadItem from "./MastheadItem.js";
3
+ import UDExControlButton from "./ControlButton.js";
4
+ import UDExButtonSize from "./types/ButtonSize.js";
5
+ import declineIcon from "@ui5/webcomponents-icons/dist/decline.js";
6
+ import searchIcon from "@ui5/webcomponents-icons/dist/search.js";
7
+ import menuIcon from "@ui5/webcomponents-icons/dist/menu2.js";
8
+ export default function MastheadShellTemplate() {
9
+ return (_jsxs("header", { className: this.mainClass, onKeyDown: this.handleKeyDown, children: [_jsxs("div", { className: "udex-masthead-shell__main-content", children: [_jsxs("div", { className: "udex-masthead-shell__landing-wrap", children: [this.logoUrl && logo.call(this), this.siteLabel && siteLabel.call(this), this.coBrandImage && coBrand.call(this)] }), this.isMainMenuVisible && (_jsx("nav", { className: "udex-masthead-shell__nav", "aria-label": this.mainNavigationAriaLabel, children: _jsx("ul", { className: "udex-masthead-shell__main-menu", "aria-label": this.mainNavigationAriaLabel, children: this.menuItems.map(item => (_jsx("li", { className: "udex-masthead-shell__item", "onui5-item-click": this.setSelectedItem, children: _jsx("slot", { name: item._individualSlot }) }, item._id))) }) }))] }), this.isSearchVisible && (_jsxs(_Fragment, { children: [_jsx("div", { className: "udex-masthead-shell__search-container", "onui5-search-keydown": this.handleSearchKeyDown, children: _jsx("slot", { name: "search" }) }), this._isSearchOpened && (_jsx("div", { className: "udex-masthead-shell__btn-holder", children: _jsx(UDExControlButton, { class: "udex-masthead-shell__close-search-btn", part: "search-close-button", size: UDExButtonSize.Small, icon: declineIcon, tooltip: this.closeButtonAccessibleName, "accessible-name": this.closeButtonAccessibleName, onClick: this.handleCloseSearch }) }))] })), _jsxs("div", { className: this.rightMenuClass, children: [this.hasExploreSAP && (_jsx("div", { className: "udex-masthead-shell__explore", "onui5-item-click": this.setSelectedItem, children: _jsx("slot", { name: "exploreSAP" }) })), this.hasSearch && (_jsx("div", { className: "udex-masthead-shell__search-icon udex-masthead-shell__item_icon", children: _jsx(UDExMastheadItem, { class: "udex-masthead-shell__search-btn", part: "search-button", icon: searchIcon, onClick: this.handleSearchClick, "accessible-name": this.openSearchButtonAccessibleNameText, "icon-alt": this.openSearchButtonAccessibleNameText }) })), this.hasJoule && (_jsx("div", { className: "udex-masthead-shell__joule udex-masthead-shell__item_icon", "onui5-item-click": this.setSelectedItem, onClick: this.handleJouleClick, children: _jsx("slot", { name: "joule" }) })), this.hasCart && (_jsx("div", { className: "udex-masthead-shell__cart udex-masthead-shell__item_icon", "onui5-item-click": this.setSelectedItem, onClick: this.handleCartClick, children: _jsx("slot", { name: "cart" }) })), this.hasSupport && (_jsx("div", { className: "udex-masthead-shell__support udex-masthead-shell__item_icon", "onui5-item-click": this.setSelectedItem, onClick: this.handleSupportClick, children: _jsx("slot", { name: "support" }) })), this.hasProfile && (_jsx("div", { className: "udex-masthead-shell__profile udex-masthead-shell__item_icon", "onui5-item-click": this.setSelectedItem, "onclick-default": this.handleProfileClick, children: _jsx("slot", { name: "profile" }) })), this.hasCountrySelector && (_jsx("div", { className: "udex-masthead-shell__country-selector udex-masthead-shell__item_icon", "onui5-item-click": this.setSelectedItem, onClick: this.handleCountrySelectorClick, children: _jsx("slot", { name: "countrySelector" }) })), this.hasMobileMenuButtons && (_jsxs(_Fragment, { children: [_jsx(UDExMastheadItem, { class: "udex-masthead-shell__menu-btn", "accessible-role": "button", part: "menu-open-btn", "accessible-name": "menu", icon: menuIcon, "onui5-item-click": this.handleOpenMobileMenu, "_is-menu-open-btn": "", children: _jsx("slot", { slot: "dropdown", name: "mobileMenu" }) }), _jsx(UDExMastheadItem, { class: "udex-masthead-shell__close-btn", "accessible-role": "button", part: "menu-close-btn", onKeyDown: this.handleEnterAndSpaceOnCloseBtn, "onui5-item-click": this.closeMobileMenu, icon: declineIcon, "accessible-name": this.mobileCloseButtonAccessibleName, "hide-active-border": true, "_is-menu-close-btn": "" })] }))] })] }));
10
+ }
11
+ function logo() {
12
+ return this.homeUrl ? (_jsx("a", { className: "udex-masthead-shell__logo udex-masthead-shell__logo--link", target: "_self", role: "link", tabindex: 0, onClick: this.handleLogoClick, href: this.homeUrl, title: this.logoTitle, "aria-label": this.homepageAriaLabel, children: _jsx("img", { className: "udex-masthead-shell__logo-image", src: this.logoUrl, alt: this.logoAlt }) })) : (_jsx("div", { className: "udex-masthead-shell__logo", children: _jsx("img", { className: "udex-masthead-shell__logo-image", src: this.logoUrl, alt: this.logoAlt }) }));
13
+ }
14
+ function siteLabel() {
15
+ return this.siteLabelUrl ? (_jsx("a", { className: "udex-masthead-shell__site-label udex-masthead-shell__site-label--link", role: "link", target: "_self", onClick: this.handleSiteLabelClick, href: this.siteLabelUrl, tabindex: 0, title: this.siteLabelTitle, "aria-label": this.siteLabelAriaLabel, children: this.siteLabel })) : (_jsx("div", { className: "udex-masthead-shell__site-label", children: this.siteLabel }));
16
+ }
17
+ function coBrand() {
18
+ return this.coBrandUrl ? (_jsx("div", { className: "udex-masthead-shell__co-brand", children: _jsx("a", { className: "udex-masthead-shell__co-brand-link", target: "_self", role: "link", onClick: this.handleCoBrandClick, href: this.coBrandUrl, tabindex: 0, title: this.coBrandTitle, "aria-label": this.coBrandAriaLabel, children: _jsx("img", { className: "udex-masthead-shell__co-brand-image", src: this.coBrandImage, alt: this.coBrandAlt }) }) })) : (_jsx("div", { className: "udex-masthead-shell__co-brand", children: _jsx("img", { className: "udex-masthead-shell__co-brand-image", src: this.coBrandImage, alt: this.coBrandAlt }) }));
19
+ }
20
+ //# sourceMappingURL=MastheadShellTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MastheadShellTemplate.js","sourceRoot":"","sources":["../src/MastheadShellTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExMastheadShell from \"./MastheadShell.js\";\nimport UDExMastheadItem from \"./MastheadItem.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport declineIcon from \"@ui5/webcomponents-icons/dist/decline.js\";\nimport searchIcon from \"@ui5/webcomponents-icons/dist/search.js\";\nimport menuIcon from \"@ui5/webcomponents-icons/dist/menu2.js\";\n\nexport default function MastheadShellTemplate(this: UDExMastheadShell) {\n return (\n <header\n className={this.mainClass}\n onKeyDown={this.handleKeyDown}>\n <div className=\"udex-masthead-shell__main-content\">\n <div className=\"udex-masthead-shell__landing-wrap\">\n {this.logoUrl && logo.call(this)}\n {this.siteLabel && siteLabel.call(this)}\n {this.coBrandImage && coBrand.call(this)}\n </div>\n\n {this.isMainMenuVisible && (\n <nav\n className=\"udex-masthead-shell__nav\"\n aria-label={this.mainNavigationAriaLabel}>\n <ul\n className=\"udex-masthead-shell__main-menu\"\n aria-label={this.mainNavigationAriaLabel}>\n {this.menuItems.map(item => (\n <li\n key={item._id}\n className=\"udex-masthead-shell__item\"\n onui5-item-click={this.setSelectedItem}>\n <slot name={item._individualSlot}></slot>\n </li>\n ))}\n </ul>\n </nav>\n )}\n </div>\n\n {this.isSearchVisible && (\n <>\n <div\n className=\"udex-masthead-shell__search-container\"\n onui5-search-keydown={this.handleSearchKeyDown}>\n <slot name=\"search\"></slot>\n </div>\n {this._isSearchOpened && (\n <div className=\"udex-masthead-shell__btn-holder\">\n <UDExControlButton\n class=\"udex-masthead-shell__close-search-btn\"\n part=\"search-close-button\"\n size={UDExButtonSize.Small}\n icon={declineIcon}\n tooltip={this.closeButtonAccessibleName}\n accessible-name={this.closeButtonAccessibleName}\n onClick={this.handleCloseSearch as any}>\n </UDExControlButton>\n </div>\n )}\n </>\n )}\n\n <div className={this.rightMenuClass}>\n {this.hasExploreSAP && (\n <div\n className=\"udex-masthead-shell__explore\"\n onui5-item-click={this.setSelectedItem}>\n <slot name=\"exploreSAP\"></slot>\n </div>\n )}\n {this.hasSearch && (\n <div className=\"udex-masthead-shell__search-icon udex-masthead-shell__item_icon\">\n <UDExMastheadItem\n class=\"udex-masthead-shell__search-btn\"\n part=\"search-button\"\n icon={searchIcon}\n onClick={this.handleSearchClick as any}\n accessible-name={this.openSearchButtonAccessibleNameText}\n icon-alt={this.openSearchButtonAccessibleNameText}>\n </UDExMastheadItem>\n </div>\n )}\n {this.hasJoule && (\n <div\n className=\"udex-masthead-shell__joule udex-masthead-shell__item_icon\"\n onui5-item-click={this.setSelectedItem}\n onClick={this.handleJouleClick as any}>\n <slot name=\"joule\"></slot>\n </div>\n )}\n {this.hasCart && (\n <div\n className=\"udex-masthead-shell__cart udex-masthead-shell__item_icon\"\n onui5-item-click={this.setSelectedItem}\n onClick={this.handleCartClick as any}>\n <slot name=\"cart\"></slot>\n </div>\n )}\n {this.hasSupport && (\n <div\n className=\"udex-masthead-shell__support udex-masthead-shell__item_icon\"\n onui5-item-click={this.setSelectedItem}\n onClick={this.handleSupportClick as any}>\n <slot name=\"support\"></slot>\n </div>\n )}\n {this.hasProfile && (\n <div\n className=\"udex-masthead-shell__profile udex-masthead-shell__item_icon\"\n onui5-item-click={this.setSelectedItem}\n onclick-default={this.handleProfileClick}>\n <slot name=\"profile\"></slot>\n </div>\n )}\n {this.hasCountrySelector && (\n <div\n className=\"udex-masthead-shell__country-selector udex-masthead-shell__item_icon\"\n onui5-item-click={this.setSelectedItem}\n onClick={this.handleCountrySelectorClick as any}>\n <slot name=\"countrySelector\"></slot>\n </div>\n )}\n {this.hasMobileMenuButtons && (\n <>\n <UDExMastheadItem\n class=\"udex-masthead-shell__menu-btn\"\n accessible-role=\"button\"\n part=\"menu-open-btn\"\n accessible-name=\"menu\"\n icon={menuIcon}\n onui5-item-click={this.handleOpenMobileMenu}\n {...{ \"_is-menu-open-btn\": \"\" }}>\n <slot slot=\"dropdown\" name=\"mobileMenu\"></slot>\n </UDExMastheadItem>\n <UDExMastheadItem\n class=\"udex-masthead-shell__close-btn\"\n accessible-role=\"button\"\n part=\"menu-close-btn\"\n onKeyDown={this.handleEnterAndSpaceOnCloseBtn}\n onui5-item-click={this.closeMobileMenu}\n icon={declineIcon}\n accessible-name={this.mobileCloseButtonAccessibleName}\n hide-active-border\n {...{ \"_is-menu-close-btn\": \"\" }}>\n </UDExMastheadItem>\n </>\n )}\n </div>\n </header>\n );\n}\n\nfunction logo(this: UDExMastheadShell) {\n return this.homeUrl ? (\n <a\n className=\"udex-masthead-shell__logo udex-masthead-shell__logo--link\"\n target=\"_self\"\n role=\"link\"\n tabindex={0}\n onClick={this.handleLogoClick as any}\n href={this.homeUrl}\n title={this.logoTitle}\n aria-label={this.homepageAriaLabel}>\n <img\n className=\"udex-masthead-shell__logo-image\"\n src={this.logoUrl}\n alt={this.logoAlt}\n />\n </a>\n ) : (\n <div className=\"udex-masthead-shell__logo\">\n <img\n className=\"udex-masthead-shell__logo-image\"\n src={this.logoUrl}\n alt={this.logoAlt}\n />\n </div>\n );\n}\n\nfunction siteLabel(this: UDExMastheadShell) {\n return this.siteLabelUrl ? (\n <a\n className=\"udex-masthead-shell__site-label udex-masthead-shell__site-label--link\"\n role=\"link\"\n target=\"_self\"\n onClick={this.handleSiteLabelClick as any}\n href={this.siteLabelUrl}\n tabindex={0}\n title={this.siteLabelTitle}\n aria-label={this.siteLabelAriaLabel}>\n {this.siteLabel}\n </a>\n ) : (\n <div className=\"udex-masthead-shell__site-label\">{this.siteLabel}</div>\n );\n}\n\nfunction coBrand(this: UDExMastheadShell) {\n return this.coBrandUrl ? (\n <div className=\"udex-masthead-shell__co-brand\">\n <a\n className=\"udex-masthead-shell__co-brand-link\"\n target=\"_self\"\n role=\"link\"\n onClick={this.handleCoBrandClick as any}\n href={this.coBrandUrl}\n tabindex={0}\n title={this.coBrandTitle}\n aria-label={this.coBrandAriaLabel}>\n <img\n className=\"udex-masthead-shell__co-brand-image\"\n src={this.coBrandImage}\n alt={this.coBrandAlt}\n />\n </a>\n </div>\n ) : (\n <div className=\"udex-masthead-shell__co-brand\">\n <img\n className=\"udex-masthead-shell__co-brand-image\"\n src={this.coBrandImage}\n alt={this.coBrandAlt}\n />\n </div>\n );\n}\n"]}
@@ -3,7 +3,7 @@ import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
3
3
  export default function RatingIndicatorTemplate() {
4
4
  const rootClass = "udex-rating-indicator";
5
5
  const ui5Class = "ui5-rating-indicator";
6
- return (_jsxs("div", { class: `${rootClass} ${rootClass}--${this.display.toLowerCase()} ${ui5Class}-root`, role: this.readonly ? "img" : "slider", "aria-roledescription": this._ariaRoleDescription, "aria-valuemin": 0, "aria-valuenow": this.value, "aria-valuemax": this.max, "aria-valuetext": `${this.value} of ${this.max}`, "aria-orientation": "horizontal", "aria-disabled": this._ariaDisabled, "aria-readonly": this.ariaReadonly, "aria-description": this._ariaDescription, tabindex: this.effectiveTabIndex, onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, onClick: this._onclick, onKeyDown: this._onkeydown, title: this.ratingTooltip, "aria-label": this.readonly ? this._readonlyAriaLabel : this._ariaLabel, children: [_jsx("ul", { class: `${rootClass}__list ${ui5Class}-list`, "aria-hidden": "true", children: this._stars.map(star => (_jsx("li", { "data-ui5-value": star.index, class: {
6
+ return (_jsxs("div", { class: `${rootClass} ${rootClass}--${this.display.toLowerCase()} ${ui5Class}-root`, role: this.readonly ? "img" : "slider", "aria-roledescription": this._ariaRoleDescription, "aria-valuemin": 0, "aria-valuenow": this.value, "aria-valuemax": this.max, "aria-valuetext": `${this.value} of ${this.max}`, "aria-orientation": "horizontal", "aria-disabled": this._ariaDisabled, "aria-readonly": this.ariaReadonly, "aria-description": this._ariaDescription, tabindex: this.effectiveTabIndex, onFocusIn: this._onfocusin, onClick: this._onclick, onKeyDown: this._onkeydown, title: this.ratingTooltip, "aria-label": this.readonly ? this._readonlyAriaLabel : this._ariaLabel, children: [_jsx("ul", { class: `${rootClass}__list ${ui5Class}-list`, "aria-hidden": "true", children: this._stars.map(star => (_jsx("li", { "data-ui5-value": star.index, class: {
7
7
  "udex-rating-indicator__item ui5-rating-indicator-item": true,
8
8
  "udex-rating-indicator__item-sel ui5-rating-indicator-item-sel": star.selected,
9
9
  "udex-rating-indicator__item-unsel ui5-rating-indicator-item-unsel": !star.selected && !star.halfStar,
@@ -1 +1 @@
1
- {"version":3,"file":"RatingIndicatorTemplate.js","sourceRoot":"","sources":["../src/RatingIndicatorTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExRatingIndicator from \"./RatingIndicator.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\n\ntype Star = {\n selected: boolean;\n index: number;\n halfStar: boolean;\n};\n\nexport default function RatingIndicatorTemplate(this: UDExRatingIndicator) {\n const rootClass = \"udex-rating-indicator\";\n const ui5Class = \"ui5-rating-indicator\";\n\n return (\n <div class={`${rootClass} ${rootClass}--${this.display.toLowerCase()} ${ui5Class}-root`}\n role={this.readonly ? \"img\" : \"slider\"}\n aria-roledescription={this._ariaRoleDescription}\n aria-valuemin={0}\n aria-valuenow={this.value}\n aria-valuemax={this.max}\n aria-valuetext={`${this.value} of ${this.max}`}\n aria-orientation=\"horizontal\"\n aria-disabled={this._ariaDisabled}\n aria-readonly={this.ariaReadonly}\n aria-description={this._ariaDescription}\n tabindex={this.effectiveTabIndex}\n onFocusIn={this._onfocusin}\n onFocusOut={this._onfocusout}\n onClick={this._onclick}\n onKeyDown={this._onkeydown}\n title={this.ratingTooltip}\n aria-label={this.readonly ? this._readonlyAriaLabel : this._ariaLabel}>\n <ul class={`${rootClass}__list ${ui5Class}-list`}\n aria-hidden=\"true\">\n {this._stars.map(star => (\n <li data-ui5-value={star.index}\n class={{\n \"udex-rating-indicator__item ui5-rating-indicator-item\": true,\n \"udex-rating-indicator__item-sel ui5-rating-indicator-item-sel\": star.selected,\n \"udex-rating-indicator__item-unsel ui5-rating-indicator-item-unsel\": !star.selected && !star.halfStar,\n \"udex-rating-indicator__item-half ui5-rating-indicator-item-half udex-rating-indicator__item-unsel\": star.halfStar && !star.selected,\n }}>\n {starRender.call(this, star, ui5Class, rootClass)}\n </li>\n ))}\n </ul>\n {(this.hasRatingCount || this.hasTotalCount) && (\n <div class={`${rootClass}__total`}>\n {this.hasRatingCount && <>{this.ratingCount} </>}\n {this.hasTotalCount && <>&#40;{this.totalCount}&#41;</>}\n </div>\n )}\n </div>\n );\n}\n\nfunction starRender(this: UDExRatingIndicator, star: Star, ui5Class: string, rootClass: string) {\n if (star.selected) {\n return (\n <UI5Icon data-ui5-value={star.index} name=\"favorite\"/>\n );\n }\n if (star.halfStar) {\n return (\n <>\n <UI5Icon data-ui5-value={star.index} name={this.readonly ? \"favorite\" : \"unfavorite\"}/>\n <div class={`${rootClass}__half-icon-wrapper ${ui5Class}-half-icon-wrapper`}>\n <UI5Icon data-ui5-value={star.index} name=\"favorite\" class={`${rootClass}__half-icon ${ui5Class}-half-icon`}></UI5Icon>\n </div>\n </>\n );\n }\n if (this.readonly) {\n return (\n <UI5Icon data-ui5-value={star.index} name=\"favorite\"/>\n );\n }\n return (\n <UI5Icon data-ui5-value={star.index} name=\"unfavorite\"/>\n );\n}\n"]}
1
+ {"version":3,"file":"RatingIndicatorTemplate.js","sourceRoot":"","sources":["../src/RatingIndicatorTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExRatingIndicator from \"./RatingIndicator.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\n\ntype Star = {\n selected: boolean;\n index: number;\n halfStar: boolean;\n};\n\nexport default function RatingIndicatorTemplate(this: UDExRatingIndicator) {\n const rootClass = \"udex-rating-indicator\";\n const ui5Class = \"ui5-rating-indicator\";\n\n return (\n <div class={`${rootClass} ${rootClass}--${this.display.toLowerCase()} ${ui5Class}-root`}\n role={this.readonly ? \"img\" : \"slider\"}\n aria-roledescription={this._ariaRoleDescription}\n aria-valuemin={0}\n aria-valuenow={this.value}\n aria-valuemax={this.max}\n aria-valuetext={`${this.value} of ${this.max}`}\n aria-orientation=\"horizontal\"\n aria-disabled={this._ariaDisabled}\n aria-readonly={this.ariaReadonly}\n aria-description={this._ariaDescription}\n tabindex={this.effectiveTabIndex}\n onFocusIn={this._onfocusin}\n onClick={this._onclick}\n onKeyDown={this._onkeydown}\n title={this.ratingTooltip}\n aria-label={this.readonly ? this._readonlyAriaLabel : this._ariaLabel}>\n <ul class={`${rootClass}__list ${ui5Class}-list`}\n aria-hidden=\"true\">\n {this._stars.map(star => (\n <li data-ui5-value={star.index}\n class={{\n \"udex-rating-indicator__item ui5-rating-indicator-item\": true,\n \"udex-rating-indicator__item-sel ui5-rating-indicator-item-sel\": star.selected,\n \"udex-rating-indicator__item-unsel ui5-rating-indicator-item-unsel\": !star.selected && !star.halfStar,\n \"udex-rating-indicator__item-half ui5-rating-indicator-item-half udex-rating-indicator__item-unsel\": star.halfStar && !star.selected,\n }}>\n {starRender.call(this, star, ui5Class, rootClass)}\n </li>\n ))}\n </ul>\n {(this.hasRatingCount || this.hasTotalCount) && (\n <div class={`${rootClass}__total`}>\n {this.hasRatingCount && <>{this.ratingCount} </>}\n {this.hasTotalCount && <>&#40;{this.totalCount}&#41;</>}\n </div>\n )}\n </div>\n );\n}\n\nfunction starRender(this: UDExRatingIndicator, star: Star, ui5Class: string, rootClass: string) {\n if (star.selected) {\n return (\n <UI5Icon data-ui5-value={star.index} name=\"favorite\"/>\n );\n }\n if (star.halfStar) {\n return (\n <>\n <UI5Icon data-ui5-value={star.index} name={this.readonly ? \"favorite\" : \"unfavorite\"}/>\n <div class={`${rootClass}__half-icon-wrapper ${ui5Class}-half-icon-wrapper`}>\n <UI5Icon data-ui5-value={star.index} name=\"favorite\" class={`${rootClass}__half-icon ${ui5Class}-half-icon`}></UI5Icon>\n </div>\n </>\n );\n }\n if (this.readonly) {\n return (\n <UI5Icon data-ui5-value={star.index} name=\"favorite\"/>\n );\n }\n return (\n <UI5Icon data-ui5-value={star.index} name=\"unfavorite\"/>\n );\n}\n"]}
@@ -258,6 +258,16 @@ declare class UDExSearchableListBase extends UI5Element {
258
258
  get nonGroupItems(): Array<UDExListItemBase>;
259
259
  get roleForGroupList(): string;
260
260
  get accessibleRoleForList(): string;
261
+ /**
262
+ * FilterMenu real-focus SingleSelect where EVERY top-level item is a group.
263
+ * Renders each group as its own role="listbox" so JAWS counts options natively
264
+ * per group ("1 of 4"): JAWS ignores role="group" boundaries and author
265
+ * aria-posinset within a single listbox, but counts reliably within a flat
266
+ * listbox. Not engaged for aria-activedescendant widgets (SelectBox), trees,
267
+ * MultiSelect/RadioGroup, or mixed grouped+ungrouped lists (ungrouped options
268
+ * would be orphaned once the outer listbox role is dropped).
269
+ */
270
+ get isPerGroupListbox(): boolean;
261
271
  get listItemRole(): string;
262
272
  get hideDropdownSearch(): boolean;
263
273
  }
@@ -13,7 +13,7 @@ import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
13
13
  import { cleanLabel } from "./utils/listItemLabelUtils.js";
14
14
  import { UDExListMode, UDExListStyleType } from "./types/List.js";
15
15
  import { SHOW_SEARCH_AFTER_COUNT, UDExPopoverPart } from "./types/SearchableListBase.js";
16
- import { NO_MATCHES_FOUND, RESULT_RETURNED, STARS } from "./generated/i18n/i18n-defaults.js";
16
+ import { NO_MATCHES_FOUND, RESULT_RETURNED, STARS, } from "./generated/i18n/i18n-defaults.js";
17
17
  import translate from "./utils/translate.js";
18
18
  /**
19
19
  * @class
@@ -152,6 +152,17 @@ let UDExSearchableListBase = UDExSearchableListBase_1 = class UDExSearchableList
152
152
  }
153
153
  originalItem.collapsed = e.detail.collapsed;
154
154
  originalItem.setCollapsedItems?.();
155
+ // NOTE: no dynamic screen-reader announcement of the new expanded/collapsed state
156
+ // is emitted here. JAWS announces it natively — the list uses role="tree" (see
157
+ // List._hasCollapsibleGroups) so JAWS enters application mode and reads the focused
158
+ // header's aria-expanded on every arrow toggle. VoiceOver, however, refuses to
159
+ // re-announce aria-expanded on a treeitem whose children role="group" is a sibling
160
+ // rather than a DOM descendant (unavoidable across the shadow boundary; aria-owns
161
+ // can't bridge the nested shadow roots in multi-select). Every aria-live approach
162
+ // (a shadow-local span, UI5's top-level InvisibleMessage) is dropped by VoiceOver
163
+ // inside this teleported popover, and a same-element focus re-read is suppressed by
164
+ // VoiceOver. VoiceOver still reads the full state when focus first lands on the
165
+ // header. This is a documented VoiceOver-specific limitation.
155
166
  }
156
167
  onSelectAllHeaderPress(e) {
157
168
  const item = e.detail.item;
@@ -578,8 +589,30 @@ let UDExSearchableListBase = UDExSearchableListBase_1 = class UDExSearchableList
578
589
  if (this.isTreeStructure) {
579
590
  return "tree";
580
591
  }
592
+ if (this.isPerGroupListbox) {
593
+ // Each group is its own role="listbox" (see ListGroupHeaderTemplate); the outer
594
+ // container must be transparent, otherwise the per-group listboxes would be nested
595
+ // inside a listbox (invalid, and JAWS would fall back to one flat count).
596
+ return "presentation";
597
+ }
581
598
  return this.defaultAccessibleRole;
582
599
  }
600
+ /**
601
+ * FilterMenu real-focus SingleSelect where EVERY top-level item is a group.
602
+ * Renders each group as its own role="listbox" so JAWS counts options natively
603
+ * per group ("1 of 4"): JAWS ignores role="group" boundaries and author
604
+ * aria-posinset within a single listbox, but counts reliably within a flat
605
+ * listbox. Not engaged for aria-activedescendant widgets (SelectBox), trees,
606
+ * MultiSelect/RadioGroup, or mixed grouped+ungrouped lists (ungrouped options
607
+ * would be orphaned once the outer listbox role is dropped).
608
+ */
609
+ get isPerGroupListbox() {
610
+ if (this.isTreeStructure || this._activeDescendantMode || !this.modeSingleSelect) {
611
+ return false;
612
+ }
613
+ const items = this.items;
614
+ return items.length > 0 && items.every(item => item.isGroup);
615
+ }
583
616
  get listItemRole() {
584
617
  if (this.isTreeStructure) {
585
618
  return "treeitem";