@sapudex/web-components 2.56.0 → 2.58.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 (425) hide show
  1. package/README.md +258 -0
  2. package/cypress/specs/FilterMenu.cy.tsx +209 -19
  3. package/cypress/specs/List.cy.tsx +67 -4
  4. package/cypress/specs/ListItem.cy.tsx +35 -9
  5. package/cypress/specs/SelectBox.cy.tsx +100 -0
  6. package/cypress/specs/TabNavigation.cy.tsx +297 -21
  7. package/cypress/specs/TagGroup.cy.tsx +35 -0
  8. package/dist/Carousel.d.ts +9 -3
  9. package/dist/Carousel.js +35 -6
  10. package/dist/Carousel.js.map +1 -1
  11. package/dist/CarouselTemplate.js +3 -3
  12. package/dist/CarouselTemplate.js.map +1 -1
  13. package/dist/List.d.ts +15 -1
  14. package/dist/List.js +23 -2
  15. package/dist/List.js.map +1 -1
  16. package/dist/ListGroupHeaderBase.d.ts +13 -0
  17. package/dist/ListGroupHeaderBase.js +43 -2
  18. package/dist/ListGroupHeaderBase.js.map +1 -1
  19. package/dist/ListGroupHeaderTemplate.js +26 -7
  20. package/dist/ListGroupHeaderTemplate.js.map +1 -1
  21. package/dist/ListItem.d.ts +0 -3
  22. package/dist/ListItem.js +18 -12
  23. package/dist/ListItem.js.map +1 -1
  24. package/dist/ListItemBase.d.ts +17 -0
  25. package/dist/ListItemBase.js +15 -0
  26. package/dist/ListItemBase.js.map +1 -1
  27. package/dist/ListItemTemplate.js +2 -2
  28. package/dist/ListItemTemplate.js.map +1 -1
  29. package/dist/MastheadCountrySelector.js +5 -5
  30. package/dist/MastheadCountrySelector.js.map +1 -1
  31. package/dist/MastheadCountrySelectorTemplate.d.ts +2 -0
  32. package/dist/MastheadCountrySelectorTemplate.js +15 -0
  33. package/dist/MastheadCountrySelectorTemplate.js.map +1 -0
  34. package/dist/MastheadItem.d.ts +0 -3
  35. package/dist/MastheadItem.js +3 -6
  36. package/dist/MastheadItem.js.map +1 -1
  37. package/dist/MastheadItemTemplate.d.ts +2 -0
  38. package/dist/MastheadItemTemplate.js +41 -0
  39. package/dist/MastheadItemTemplate.js.map +1 -0
  40. package/dist/MastheadMenu.d.ts +1 -0
  41. package/dist/MastheadMenu.js +4 -6
  42. package/dist/MastheadMenu.js.map +1 -1
  43. package/dist/MastheadMenuItem.d.ts +0 -3
  44. package/dist/MastheadMenuItem.js +3 -6
  45. package/dist/MastheadMenuItem.js.map +1 -1
  46. package/dist/MastheadMenuItemTemplate.d.ts +2 -0
  47. package/dist/MastheadMenuItemTemplate.js +36 -0
  48. package/dist/MastheadMenuItemTemplate.js.map +1 -0
  49. package/dist/MastheadMenuTemplate.d.ts +2 -0
  50. package/dist/MastheadMenuTemplate.js +13 -0
  51. package/dist/MastheadMenuTemplate.js.map +1 -0
  52. package/dist/MastheadMobileMenu.js +3 -3
  53. package/dist/MastheadMobileMenu.js.map +1 -1
  54. package/dist/MastheadMobileMenuTemplate.d.ts +2 -0
  55. package/dist/MastheadMobileMenuTemplate.js +33 -0
  56. package/dist/MastheadMobileMenuTemplate.js.map +1 -0
  57. package/dist/MastheadProfileMenu.d.ts +2 -4
  58. package/dist/MastheadProfileMenu.js +5 -20
  59. package/dist/MastheadProfileMenu.js.map +1 -1
  60. package/dist/MastheadProfileMenuTemplate.d.ts +2 -0
  61. package/dist/MastheadProfileMenuTemplate.js +24 -0
  62. package/dist/MastheadProfileMenuTemplate.js.map +1 -0
  63. package/dist/MastheadShell.js +3 -5
  64. package/dist/MastheadShell.js.map +1 -1
  65. package/dist/MastheadShellTemplate.d.ts +2 -0
  66. package/dist/MastheadShellTemplate.js +20 -0
  67. package/dist/MastheadShellTemplate.js.map +1 -0
  68. package/dist/SearchableListBase.d.ts +10 -0
  69. package/dist/SearchableListBase.js +34 -1
  70. package/dist/SearchableListBase.js.map +1 -1
  71. package/dist/SearchableListBaseTemplate.js +35 -4
  72. package/dist/SearchableListBaseTemplate.js.map +1 -1
  73. package/dist/SecondaryNavigation.d.ts +1 -0
  74. package/dist/SecondaryNavigation.js +20 -6
  75. package/dist/SecondaryNavigation.js.map +1 -1
  76. package/dist/SelectBase.js +8 -3
  77. package/dist/SelectBase.js.map +1 -1
  78. package/dist/Tab.d.ts +0 -7
  79. package/dist/Tab.js +4 -19
  80. package/dist/Tab.js.map +1 -1
  81. package/dist/TabHeaderTemplate.d.ts +2 -0
  82. package/dist/TabHeaderTemplate.js +15 -0
  83. package/dist/TabHeaderTemplate.js.map +1 -0
  84. package/dist/TabInOverflowTemplate.d.ts +2 -0
  85. package/dist/TabInOverflowTemplate.js +7 -0
  86. package/dist/TabInOverflowTemplate.js.map +1 -0
  87. package/dist/TabNavigation.d.ts +6 -6
  88. package/dist/TabNavigation.js +56 -42
  89. package/dist/TabNavigation.js.map +1 -1
  90. package/dist/TabNavigationPopoverTemplate.d.ts +2 -0
  91. package/dist/TabNavigationPopoverTemplate.js +9 -0
  92. package/dist/TabNavigationPopoverTemplate.js.map +1 -0
  93. package/dist/TabNavigationTemplate.d.ts +2 -0
  94. package/dist/TabNavigationTemplate.js +10 -0
  95. package/dist/TabNavigationTemplate.js.map +1 -0
  96. package/dist/TabTemplate.d.ts +2 -0
  97. package/dist/TabTemplate.js +5 -0
  98. package/dist/TabTemplate.js.map +1 -0
  99. package/dist/Tag.d.ts +1 -0
  100. package/dist/Tag.js +6 -0
  101. package/dist/Tag.js.map +1 -1
  102. package/dist/TagGroup.js +4 -2
  103. package/dist/TagGroup.js.map +1 -1
  104. package/dist/assets/{InputSuggestions-ChhTxYh4.js → InputSuggestions-CMYjJsHw.js} +1 -1
  105. package/dist/assets/{ListItemStandardExpandableTextTemplate-Bh1HxZfH.js → ListItemStandardExpandableTextTemplate-D2i8wWuR.js} +1 -1
  106. package/dist/assets/{bundle.esm-DCX_ohoZ.js → bundle.esm-BjN47C_y.js} +242 -242
  107. package/dist/assets/messagebundle_ar-BvIvqOKJ.js +1 -0
  108. package/dist/assets/messagebundle_bg-CbE9TJP3.js +1 -0
  109. package/dist/assets/messagebundle_cs-D7sDCnrw.js +1 -0
  110. package/dist/assets/messagebundle_da-BKcG2gb3.js +1 -0
  111. package/dist/assets/messagebundle_de-CqojOAqG.js +1 -0
  112. package/dist/assets/messagebundle_el-DLfp0_Vm.js +1 -0
  113. package/dist/assets/messagebundle_en-B7YJOdQz.js +1 -0
  114. package/dist/assets/messagebundle_es-dcaagZn0.js +1 -0
  115. package/dist/assets/messagebundle_et-XYXhCdvm.js +1 -0
  116. package/dist/assets/messagebundle_fi-Dffg0zEq.js +1 -0
  117. package/dist/assets/messagebundle_fr-CW8ENL86.js +1 -0
  118. package/dist/assets/messagebundle_hr-onMgZwRd.js +1 -0
  119. package/dist/assets/messagebundle_hu-BPDuHAe0.js +1 -0
  120. package/dist/assets/messagebundle_it-BcfXVW1A.js +1 -0
  121. package/dist/assets/messagebundle_ja-EWp-Nkd9.js +1 -0
  122. package/dist/assets/messagebundle_ko-BKQ27UJW.js +1 -0
  123. package/dist/assets/messagebundle_lt-A-f2EeMY.js +1 -0
  124. package/dist/assets/messagebundle_lv-CHVU_rnx.js +1 -0
  125. package/dist/assets/messagebundle_nl-gmf1np1i.js +1 -0
  126. package/dist/assets/messagebundle_no-CazfcIRA.js +1 -0
  127. package/dist/assets/messagebundle_pl-iv_zMkL4.js +1 -0
  128. package/dist/assets/messagebundle_pt-usY49ESJ.js +1 -0
  129. package/dist/assets/messagebundle_pt_PT-DTLEUiTC.js +1 -0
  130. package/dist/assets/messagebundle_ro-BHeGIHaV.js +1 -0
  131. package/dist/assets/messagebundle_ru-DJB1z_R0.js +1 -0
  132. package/dist/assets/messagebundle_sk-DlNIpzr3.js +1 -0
  133. package/dist/assets/messagebundle_sl-Day075Cf.js +1 -0
  134. package/dist/assets/messagebundle_sr-iI_TwIHf.js +1 -0
  135. package/dist/assets/messagebundle_sv-BPj73b5X.js +1 -0
  136. package/dist/assets/messagebundle_tr-DpdBqQtI.js +1 -0
  137. package/dist/assets/messagebundle_uk-CT4EqEBF.js +1 -0
  138. package/dist/assets/messagebundle_zh_CN-B_42cWcu.js +1 -0
  139. package/dist/assets/messagebundle_zh_TW-D25iNCcy.js +1 -0
  140. package/dist/css/themes/Button.css +1 -1
  141. package/dist/css/themes/Carousel.css +1 -1
  142. package/dist/css/themes/ListGroupHeader.css +1 -1
  143. package/dist/css/themes/PromoTile.css +1 -1
  144. package/dist/css/themes/Switch.css +1 -1
  145. package/dist/css/themes/TabInOverflow.css +1 -1
  146. package/dist/css/themes/TabNavigation.css +1 -1
  147. package/dist/css/themes/Tooltip.css +1 -1
  148. package/dist/custom-elements-internal.json +12 -12
  149. package/dist/custom-elements.json +12 -12
  150. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  151. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  152. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  153. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  154. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  155. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  156. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  157. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  158. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  159. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  160. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  161. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  162. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  163. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  164. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  165. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  166. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  167. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  168. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  169. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  170. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  171. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  173. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  174. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  175. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  176. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  177. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  178. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  179. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  180. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  181. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  182. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  183. package/dist/generated/i18n/i18n-defaults.d.ts +3 -9
  184. package/dist/generated/i18n/i18n-defaults.js +3 -9
  185. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  186. package/dist/generated/themes/Button.css.d.ts +1 -1
  187. package/dist/generated/themes/Button.css.js +1 -1
  188. package/dist/generated/themes/Button.css.js.map +1 -1
  189. package/dist/generated/themes/Carousel.css.d.ts +1 -1
  190. package/dist/generated/themes/Carousel.css.js +1 -1
  191. package/dist/generated/themes/Carousel.css.js.map +1 -1
  192. package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
  193. package/dist/generated/themes/ListGroupHeader.css.js +1 -1
  194. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  195. package/dist/generated/themes/PromoTile.css.d.ts +1 -1
  196. package/dist/generated/themes/PromoTile.css.js +1 -1
  197. package/dist/generated/themes/PromoTile.css.js.map +1 -1
  198. package/dist/generated/themes/Switch.css.d.ts +1 -1
  199. package/dist/generated/themes/Switch.css.js +1 -1
  200. package/dist/generated/themes/Switch.css.js.map +1 -1
  201. package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
  202. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  203. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  204. package/dist/generated/themes/TabNavigation.css.d.ts +1 -1
  205. package/dist/generated/themes/TabNavigation.css.js +1 -1
  206. package/dist/generated/themes/TabNavigation.css.js.map +1 -1
  207. package/dist/generated/themes/Tooltip.css.d.ts +1 -1
  208. package/dist/generated/themes/Tooltip.css.js +1 -1
  209. package/dist/generated/themes/Tooltip.css.js.map +1 -1
  210. package/dist/messagebundle.properties +4 -10
  211. package/dist/messagebundle_ar.properties +0 -6
  212. package/dist/messagebundle_bg.properties +0 -8
  213. package/dist/messagebundle_cs.properties +0 -8
  214. package/dist/messagebundle_da.properties +0 -8
  215. package/dist/messagebundle_de.properties +0 -8
  216. package/dist/messagebundle_el.properties +0 -8
  217. package/dist/messagebundle_en.properties +2 -8
  218. package/dist/messagebundle_es.properties +0 -8
  219. package/dist/messagebundle_et.properties +0 -8
  220. package/dist/messagebundle_fi.properties +0 -8
  221. package/dist/messagebundle_fr.properties +0 -8
  222. package/dist/messagebundle_hr.properties +0 -8
  223. package/dist/messagebundle_hu.properties +0 -8
  224. package/dist/messagebundle_it.properties +0 -8
  225. package/dist/messagebundle_ja.properties +0 -8
  226. package/dist/messagebundle_ko.properties +0 -8
  227. package/dist/messagebundle_lt.properties +0 -8
  228. package/dist/messagebundle_lv.properties +0 -8
  229. package/dist/messagebundle_nl.properties +0 -8
  230. package/dist/messagebundle_no.properties +0 -8
  231. package/dist/messagebundle_pl.properties +0 -8
  232. package/dist/messagebundle_pt.properties +0 -8
  233. package/dist/messagebundle_pt_PT.properties +0 -8
  234. package/dist/messagebundle_ro.properties +0 -8
  235. package/dist/messagebundle_ru.properties +0 -8
  236. package/dist/messagebundle_sk.properties +0 -8
  237. package/dist/messagebundle_sl.properties +0 -7
  238. package/dist/messagebundle_sr.properties +0 -8
  239. package/dist/messagebundle_sv.properties +0 -8
  240. package/dist/messagebundle_tr.properties +0 -8
  241. package/dist/messagebundle_uk.properties +0 -8
  242. package/dist/messagebundle_zh_CN.properties +0 -8
  243. package/dist/messagebundle_zh_TW.properties +0 -8
  244. package/dist/vscode.html-custom-data.json +10 -2
  245. package/dist/web-types.json +6 -6
  246. package/package.json +1 -1
  247. package/src/Carousel.ts +51 -8
  248. package/src/CarouselTemplate.tsx +7 -7
  249. package/src/List.ts +24 -2
  250. package/src/ListGroupHeaderBase.ts +44 -2
  251. package/src/ListGroupHeaderTemplate.tsx +74 -23
  252. package/src/ListItem.ts +18 -15
  253. package/src/ListItemBase.ts +30 -0
  254. package/src/ListItemTemplate.tsx +4 -4
  255. package/src/MastheadCountrySelector.ts +5 -5
  256. package/src/MastheadCountrySelectorTemplate.tsx +98 -0
  257. package/src/MastheadItem.ts +3 -6
  258. package/src/MastheadItemTemplate.tsx +178 -0
  259. package/src/MastheadMenu.ts +5 -6
  260. package/src/MastheadMenuItem.ts +3 -7
  261. package/src/MastheadMenuItemTemplate.tsx +123 -0
  262. package/src/MastheadMenuTemplate.tsx +142 -0
  263. package/src/MastheadMobileMenu.ts +3 -3
  264. package/src/MastheadMobileMenuTemplate.tsx +274 -0
  265. package/src/MastheadProfileMenu.ts +10 -23
  266. package/src/MastheadProfileMenuTemplate.tsx +143 -0
  267. package/src/MastheadShell.ts +3 -5
  268. package/src/MastheadShellTemplate.tsx +228 -0
  269. package/src/SearchableListBase.ts +37 -1
  270. package/src/SearchableListBaseTemplate.tsx +38 -2
  271. package/src/SecondaryNavigation.ts +21 -6
  272. package/src/SelectBase.ts +8 -3
  273. package/src/Tab.ts +4 -24
  274. package/src/TabHeaderTemplate.tsx +153 -0
  275. package/src/TabInOverflowTemplate.tsx +68 -0
  276. package/src/TabNavigation.ts +64 -46
  277. package/src/TabNavigationPopoverTemplate.tsx +27 -0
  278. package/src/TabNavigationTemplate.tsx +98 -0
  279. package/src/TabTemplate.tsx +7 -0
  280. package/src/Tag.ts +7 -0
  281. package/src/TagGroup.ts +4 -2
  282. package/src/generated/i18n/i18n-defaults.ts +2 -2
  283. package/src/generated/themes/Button.css.ts +1 -1
  284. package/src/generated/themes/Carousel.css.ts +1 -1
  285. package/src/generated/themes/ListGroupHeader.css.ts +1 -1
  286. package/src/generated/themes/PromoTile.css.ts +1 -1
  287. package/src/generated/themes/Switch.css.ts +1 -1
  288. package/src/generated/themes/TabInOverflow.css.ts +1 -1
  289. package/src/generated/themes/TabNavigation.css.ts +1 -1
  290. package/src/generated/themes/Tooltip.css.ts +1 -1
  291. package/src/i18n/messagebundle.properties +4 -10
  292. package/src/i18n/messagebundle_ar.properties +0 -6
  293. package/src/i18n/messagebundle_bg.properties +0 -8
  294. package/src/i18n/messagebundle_cs.properties +0 -8
  295. package/src/i18n/messagebundle_da.properties +0 -8
  296. package/src/i18n/messagebundle_de.properties +0 -8
  297. package/src/i18n/messagebundle_el.properties +0 -8
  298. package/src/i18n/messagebundle_en.properties +2 -8
  299. package/src/i18n/messagebundle_es.properties +0 -8
  300. package/src/i18n/messagebundle_et.properties +0 -8
  301. package/src/i18n/messagebundle_fi.properties +0 -8
  302. package/src/i18n/messagebundle_fr.properties +0 -8
  303. package/src/i18n/messagebundle_hr.properties +0 -8
  304. package/src/i18n/messagebundle_hu.properties +0 -8
  305. package/src/i18n/messagebundle_it.properties +0 -8
  306. package/src/i18n/messagebundle_ja.properties +0 -8
  307. package/src/i18n/messagebundle_ko.properties +0 -8
  308. package/src/i18n/messagebundle_lt.properties +0 -8
  309. package/src/i18n/messagebundle_lv.properties +0 -8
  310. package/src/i18n/messagebundle_nl.properties +0 -8
  311. package/src/i18n/messagebundle_no.properties +0 -8
  312. package/src/i18n/messagebundle_pl.properties +0 -8
  313. package/src/i18n/messagebundle_pt.properties +0 -8
  314. package/src/i18n/messagebundle_pt_PT.properties +0 -8
  315. package/src/i18n/messagebundle_ro.properties +0 -8
  316. package/src/i18n/messagebundle_ru.properties +0 -8
  317. package/src/i18n/messagebundle_sk.properties +0 -8
  318. package/src/i18n/messagebundle_sl.properties +0 -7
  319. package/src/i18n/messagebundle_sr.properties +0 -8
  320. package/src/i18n/messagebundle_sv.properties +0 -8
  321. package/src/i18n/messagebundle_tr.properties +0 -8
  322. package/src/i18n/messagebundle_uk.properties +0 -8
  323. package/src/i18n/messagebundle_zh_CN.properties +0 -8
  324. package/src/i18n/messagebundle_zh_TW.properties +0 -8
  325. package/src/themes/Button.css +2 -1
  326. package/src/themes/Carousel.css +17 -10
  327. package/src/themes/ListGroupHeader.css +50 -7
  328. package/src/themes/PromoTile.css +1 -0
  329. package/src/themes/Switch.css +2 -2
  330. package/src/themes/TabInOverflow.css +9 -4
  331. package/src/themes/TabNavigation.css +1 -0
  332. package/src/themes/Tooltip.css +5 -4
  333. package/dist/assets/messagebundle_ar-BUZ_gTvQ.js +0 -1
  334. package/dist/assets/messagebundle_bg-4ainC3nj.js +0 -1
  335. package/dist/assets/messagebundle_cs-CFtmLavu.js +0 -1
  336. package/dist/assets/messagebundle_da-BHL-qTPd.js +0 -1
  337. package/dist/assets/messagebundle_de-SMiMT-ST.js +0 -1
  338. package/dist/assets/messagebundle_el-ChAszJ4A.js +0 -1
  339. package/dist/assets/messagebundle_en-B0P3kkb6.js +0 -1
  340. package/dist/assets/messagebundle_es-LGmRBKqB.js +0 -1
  341. package/dist/assets/messagebundle_et-yYsmBPXN.js +0 -1
  342. package/dist/assets/messagebundle_fi-DeMNrHC9.js +0 -1
  343. package/dist/assets/messagebundle_fr-qEm5Eykz.js +0 -1
  344. package/dist/assets/messagebundle_hr-NBdiYo-T.js +0 -1
  345. package/dist/assets/messagebundle_hu-CBV3ISbF.js +0 -1
  346. package/dist/assets/messagebundle_it-BML2SC0W.js +0 -1
  347. package/dist/assets/messagebundle_ja-zyFfZHcj.js +0 -1
  348. package/dist/assets/messagebundle_ko-BCPaSqNp.js +0 -1
  349. package/dist/assets/messagebundle_lt-DB4b6FVx.js +0 -1
  350. package/dist/assets/messagebundle_lv-tAOia5tU.js +0 -1
  351. package/dist/assets/messagebundle_nl-BKUpVV-D.js +0 -1
  352. package/dist/assets/messagebundle_no-BZQfeWxT.js +0 -1
  353. package/dist/assets/messagebundle_pl-CsXeN1y6.js +0 -1
  354. package/dist/assets/messagebundle_pt-D9rap3lj.js +0 -1
  355. package/dist/assets/messagebundle_pt_PT-CQ5YAsmx.js +0 -1
  356. package/dist/assets/messagebundle_ro-BTNJ9YdP.js +0 -1
  357. package/dist/assets/messagebundle_ru-BTDmH8CB.js +0 -1
  358. package/dist/assets/messagebundle_sk-Lb4jvtpc.js +0 -1
  359. package/dist/assets/messagebundle_sl-BZi2bKSy.js +0 -1
  360. package/dist/assets/messagebundle_sr-B9TYgxO1.js +0 -1
  361. package/dist/assets/messagebundle_sv-DWlY9RTQ.js +0 -1
  362. package/dist/assets/messagebundle_tr-DOeCmUdx.js +0 -1
  363. package/dist/assets/messagebundle_uk-CCv57GhV.js +0 -1
  364. package/dist/assets/messagebundle_zh_CN-CHwH3F3-.js +0 -1
  365. package/dist/assets/messagebundle_zh_TW-FO0BCkub.js +0 -1
  366. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.d.ts +0 -3
  367. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +0 -13
  368. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +0 -1
  369. package/dist/generated/templates/MastheadItemTemplate.lit.d.ts +0 -3
  370. package/dist/generated/templates/MastheadItemTemplate.lit.js +0 -43
  371. package/dist/generated/templates/MastheadItemTemplate.lit.js.map +0 -1
  372. package/dist/generated/templates/MastheadMenuItemTemplate.lit.d.ts +0 -3
  373. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +0 -21
  374. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +0 -1
  375. package/dist/generated/templates/MastheadMenuTemplate.lit.d.ts +0 -3
  376. package/dist/generated/templates/MastheadMenuTemplate.lit.js +0 -25
  377. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +0 -1
  378. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.d.ts +0 -3
  379. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +0 -37
  380. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +0 -1
  381. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.d.ts +0 -3
  382. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +0 -18
  383. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +0 -1
  384. package/dist/generated/templates/MastheadShellTemplate.lit.d.ts +0 -3
  385. package/dist/generated/templates/MastheadShellTemplate.lit.js +0 -28
  386. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +0 -1
  387. package/dist/generated/templates/TabHeaderTemplate.lit.d.ts +0 -3
  388. package/dist/generated/templates/TabHeaderTemplate.lit.js +0 -52
  389. package/dist/generated/templates/TabHeaderTemplate.lit.js.map +0 -1
  390. package/dist/generated/templates/TabInOverflowTemplate.lit.d.ts +0 -3
  391. package/dist/generated/templates/TabInOverflowTemplate.lit.js +0 -15
  392. package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +0 -1
  393. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.d.ts +0 -3
  394. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js +0 -8
  395. package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js.map +0 -1
  396. package/dist/generated/templates/TabNavigationTemplate.lit.d.ts +0 -3
  397. package/dist/generated/templates/TabNavigationTemplate.lit.js +0 -16
  398. package/dist/generated/templates/TabNavigationTemplate.lit.js.map +0 -1
  399. package/dist/generated/templates/TabTemplate.lit.d.ts +0 -3
  400. package/dist/generated/templates/TabTemplate.lit.js +0 -7
  401. package/dist/generated/templates/TabTemplate.lit.js.map +0 -1
  402. package/src/MastheadCountrySelector.hbs +0 -76
  403. package/src/MastheadItem.hbs +0 -136
  404. package/src/MastheadMenu.hbs +0 -131
  405. package/src/MastheadMenuItem.hbs +0 -102
  406. package/src/MastheadMobileMenu.hbs +0 -253
  407. package/src/MastheadProfileMenu.hbs +0 -121
  408. package/src/MastheadShell.hbs +0 -223
  409. package/src/Tab.hbs +0 -1
  410. package/src/TabHeader.hbs +0 -141
  411. package/src/TabInOverflow.hbs +0 -59
  412. package/src/TabNavigation.hbs +0 -86
  413. package/src/TabNavigationPopover.hbs +0 -18
  414. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +0 -17
  415. package/src/generated/templates/MastheadItemTemplate.lit.ts +0 -47
  416. package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +0 -25
  417. package/src/generated/templates/MastheadMenuTemplate.lit.ts +0 -29
  418. package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +0 -41
  419. package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +0 -22
  420. package/src/generated/templates/MastheadShellTemplate.lit.ts +0 -32
  421. package/src/generated/templates/TabHeaderTemplate.lit.ts +0 -56
  422. package/src/generated/templates/TabInOverflowTemplate.lit.ts +0 -19
  423. package/src/generated/templates/TabNavigationPopoverTemplate.lit.ts +0 -12
  424. package/src/generated/templates/TabNavigationTemplate.lit.ts +0 -20
  425. package/src/generated/templates/TabTemplate.lit.ts +0 -11
@@ -0,0 +1,142 @@
1
+ import type UDExMastheadMenu from "./MastheadMenu.js";
2
+ import type { SubMenuLinkItem } from "./MastheadMenu.js";
3
+ import UDExMastheadMenuItem from "./MastheadMenuItem.js";
4
+ import UDExDivider from "./Divider.js";
5
+
6
+ export default function MastheadMenuTemplate(this: UDExMastheadMenu) {
7
+ return (
8
+ <div
9
+ class={`udex-masthead-menu ${this.oneRowClass}`}
10
+ part="menu"
11
+ onKeyDown={this.handleKeyDown}>
12
+ {this.menuTitle && (
13
+ <div class="udex-masthead-menu__title">{this.menuTitle}</div>
14
+ )}
15
+ {this.itemsList.map((mainItem, index) => (
16
+ <div class="udex-masthead-menu__row" key={index}>
17
+ {mainItem.subMenuLinkItems.map(subMenu => (
18
+ <div class="udex-masthead-menu__column" part="column" key={subMenu.categoryId}>
19
+ {subMenu.category && header.call(this, subMenu)}
20
+ {list.call(this, subMenu)}
21
+ </div>
22
+ ))}
23
+ </div>
24
+ ))}
25
+ </div>
26
+ );
27
+ }
28
+
29
+ function header(this: UDExMastheadMenu, subMenu: SubMenuLinkItem) {
30
+ return (
31
+ <div class="udex-masthead-menu__header">
32
+ {subMenu.url ? (
33
+ this._isMobileMode ? (
34
+ <>
35
+ <UDExMastheadMenuItem
36
+ id={`category-${subMenu.categoryId}`}
37
+ type="Heading"
38
+ part="menu-item"
39
+ exportparts="menu-item"
40
+ label={subMenu.category}
41
+ has-border={true}>
42
+ </UDExMastheadMenuItem>
43
+ <UDExMastheadMenuItem
44
+ part="menu-item"
45
+ accessible-role="link"
46
+ exportparts="menu-item"
47
+ label={this.overviewHeaderLinkText}
48
+ url={subMenu.url}
49
+ has-border={true}>
50
+ </UDExMastheadMenuItem>
51
+ </>
52
+ ) : (
53
+ <UDExMastheadMenuItem
54
+ id={`category-${subMenu.categoryId}`}
55
+ type="Heading"
56
+ part="menu-item"
57
+ exportparts="menu-item"
58
+ accessible-role="link"
59
+ onClick={this.handleMenuItemClick as any}
60
+ url={subMenu.url}
61
+ label={subMenu.category}
62
+ icon-end={true}
63
+ has-border={true}>
64
+ </UDExMastheadMenuItem>
65
+ )
66
+ ) : (
67
+ <UDExMastheadMenuItem
68
+ id={`category-${subMenu.categoryId}`}
69
+ type="Heading"
70
+ part="menu-item"
71
+ exportparts="menu-item"
72
+ label={subMenu.category}
73
+ has-border={true}>
74
+ </UDExMastheadMenuItem>
75
+ )}
76
+ </div>
77
+ );
78
+ }
79
+
80
+ function list(this: UDExMastheadMenu, subMenu: SubMenuLinkItem) {
81
+ return (
82
+ <ul
83
+ class="udex-masthead-menu__list"
84
+ aria-labelledby={`category-${subMenu.categoryId}`}
85
+ {...{ category: subMenu.category }}>
86
+ {subMenu.items.map((item, index) => (
87
+ <li key={index}>
88
+ {item.isDivider ? (
89
+ <UDExDivider class="udex-masthead-menu__item-divider"></UDExDivider>
90
+ ) : item.subItems ? (
91
+ <>
92
+ {item.url ? (
93
+ <UDExMastheadMenuItem
94
+ part="menu-item"
95
+ accessible-role="link"
96
+ exportparts="menu-item"
97
+ onClick={this.handleMenuItemClick as any}
98
+ url={item.url}
99
+ label={item.title}
100
+ class="udex-masthead-menu__sub-category">
101
+ </UDExMastheadMenuItem>
102
+ ) : (
103
+ <span class="udex-masthead-menu__sub-category">{item.title}</span>
104
+ )}
105
+ <ul class="udex-masthead-menu__sub-list" aria-label={item.title}>
106
+ {item.subItems.map((subItem, subIndex) => (
107
+ <li key={subIndex}>
108
+ {subItem.isDivider ? (
109
+ <UDExDivider class="udex-masthead-menu__item-divider"></UDExDivider>
110
+ ) : (
111
+ <UDExMastheadMenuItem
112
+ part="menu-item"
113
+ accessible-role="link"
114
+ exportparts="badge"
115
+ onClick={this.handleMenuItemClick as any}
116
+ badge={subItem.badge}
117
+ external-link={subItem.externalLink}
118
+ url={subItem.url}
119
+ label={subItem.title}>
120
+ </UDExMastheadMenuItem>
121
+ )}
122
+ </li>
123
+ ))}
124
+ </ul>
125
+ </>
126
+ ) : (
127
+ <UDExMastheadMenuItem
128
+ part="menu-item"
129
+ accessible-role="link"
130
+ exportparts="badge"
131
+ onClick={this.handleMenuItemClick as any}
132
+ badge={item.badge}
133
+ external-link={item.externalLink}
134
+ url={item.url}
135
+ label={item.title}>
136
+ </UDExMastheadMenuItem>
137
+ )}
138
+ </li>
139
+ ))}
140
+ </ul>
141
+ );
142
+ }
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot, Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
5
+ import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
6
6
  import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
7
7
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
8
8
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
@@ -16,7 +16,7 @@ import type UDExSearch from "./Search.js";
16
16
  import UDExMastheadMenuItem, { UDExItemType } from "./MastheadMenuItem.js";
17
17
  import { OVERVIEW } from "./generated/i18n/i18n-defaults.js";
18
18
  import AnalyticsName from "./types/AnalyticsName.js";
19
- import MastheadMobileMenuTemplate from "./generated/templates/MastheadMobileMenuTemplate.lit.js";
19
+ import MastheadMobileMenuTemplate from "./MastheadMobileMenuTemplate.js";
20
20
  import type UDExMastheadShell from "./MastheadShell.js";
21
21
  import translate from "./utils/translate.js";
22
22
 
@@ -62,7 +62,7 @@ type UDExMastheadMobileMenuExploreClickEventDetail = {
62
62
  */
63
63
  @customElement({
64
64
  tag: "udex-masthead-mobile-menu",
65
- renderer: litRender,
65
+ renderer: jsxRenderer,
66
66
  styles: MastheadMobileMenuCss,
67
67
  template: MastheadMobileMenuTemplate,
68
68
  dependencies: [UDExMastheadMenuItem],
@@ -0,0 +1,274 @@
1
+ import UDExMastheadMenuItem from "./MastheadMenuItem.js";
2
+ import type UDExMastheadMobileMenu from "./MastheadMobileMenu.js";
3
+ import type { CategoryItem, SubMenuLinkItem } from "./MastheadItem.js";
4
+
5
+ export default function MastheadMobileMenuTemplate(this: UDExMastheadMobileMenu) {
6
+ return (
7
+ <nav class="udex-masthead-mobile-menu">
8
+ <div class="udex-masthead-mobile-menu__nav-holder">
9
+ {this.hasSearchSlot && (
10
+ <div class="udex-masthead-mobile-menu__list-search">
11
+ <slot name="search"></slot>
12
+ </div>
13
+ )}
14
+ <ul class="udex-masthead-mobile-menu__list" role="menu" onKeyDown={this.handlePressKey}>
15
+ {this.showNavigation && navItems.call(this)}
16
+ {this._showCategories && (
17
+ <>
18
+ <li class="udex-masthead-mobile-menu__list-item" role="none">
19
+ {this._hideExploreSapBtn ? (
20
+ <UDExMastheadMenuItem
21
+ class="udex-masthead-mobile-menu__back-item"
22
+ part="menu-item"
23
+ type="Button"
24
+ onClick={this.handleExploreBackToMenuItems as any}
25
+ label={this._clickedItem.innerText}
26
+ has-border={true}
27
+ icon-start={true}
28
+ {...{ "is-back": "", "is-explore-back": "" }}>
29
+ </UDExMastheadMenuItem>
30
+ ) : this.isNotMultipleMode ? (
31
+ <UDExMastheadMenuItem
32
+ class="udex-masthead-mobile-menu__heading"
33
+ part="menu-item"
34
+ type="Heading"
35
+ label={this._clickedItem.innerText}
36
+ has-border={true}>
37
+ </UDExMastheadMenuItem>
38
+ ) : (
39
+ <UDExMastheadMenuItem
40
+ class="udex-masthead-mobile-menu__back-item"
41
+ part="menu-item"
42
+ aria-haspopup="true"
43
+ type="Button"
44
+ onClick={this.handleBackToMenuItems as any}
45
+ label={this._clickedItem.innerText}
46
+ has-border={true}
47
+ icon-start={true}
48
+ {...{ "is-back": "", "is-back-to-nav": "" }}>
49
+ </UDExMastheadMenuItem>
50
+ )}
51
+ </li>
52
+ {categories.call(this)}
53
+ </>
54
+ )}
55
+ {this._showCategoryItems && (
56
+ <>
57
+ <li class="udex-masthead-mobile-menu__list-item" role="none">
58
+ <UDExMastheadMenuItem
59
+ class="udex-masthead-mobile-menu__back-item"
60
+ part="menu-item"
61
+ type="Button"
62
+ aria-haspopup="true"
63
+ onClick={this.handleBackToCategories as any}
64
+ label={this._category.category}
65
+ has-border={true}
66
+ icon-start={true}
67
+ {...{ "is-back": "", "is-back-to-categories": "" }}>
68
+ </UDExMastheadMenuItem>
69
+ </li>
70
+ {categoryItems.call(this)}
71
+ </>
72
+ )}
73
+ </ul>
74
+ </div>
75
+ {this.showExploreBtn && (
76
+ <UDExMastheadMenuItem
77
+ class="udex-masthead-mobile-menu__explore-btn"
78
+ part="menu-item"
79
+ type="Button"
80
+ aria-haspopup="true"
81
+ id={this.exploreItem._id}
82
+ onClick={this.handleExploreSapClick as any}
83
+ icon-end={true}
84
+ label={this.exploreItem.innerText}
85
+ {...{
86
+ "accessible-role-text": "button",
87
+ "first-level-btn": "",
88
+ "first-level": "",
89
+ "is-explore": "",
90
+ }}>
91
+ </UDExMastheadMenuItem>
92
+ )}
93
+ </nav>
94
+ );
95
+ }
96
+
97
+ function navItems(this: UDExMastheadMobileMenu) {
98
+ return this.items.map((item, index) => (
99
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={index}>
100
+ {item.subItems ? (
101
+ <UDExMastheadMenuItem
102
+ part="menu-item"
103
+ type="Button"
104
+ aria-haspopup="true"
105
+ onClick={this.handleMenuItemClick as any}
106
+ label={item.innerText}
107
+ id={item._id}
108
+ has-border={true}
109
+ icon-end={true}
110
+ {...{ "first-level-btn": "", "first-level": "" }}>
111
+ </UDExMastheadMenuItem>
112
+ ) : (
113
+ <UDExMastheadMenuItem
114
+ part="menu-item"
115
+ onClick={this.handleMobileItemEvent as any}
116
+ url={item.href}
117
+ label={item.innerText}
118
+ target={item.target}
119
+ has-border={true}
120
+ {...{ "first-level": "" }}>
121
+ </UDExMastheadMenuItem>
122
+ )}
123
+ </li>
124
+ ));
125
+ }
126
+
127
+ function categories(this: UDExMastheadMobileMenu) {
128
+ return (
129
+ <>
130
+ {this._clickedItem.href && (
131
+ <li class="udex-masthead-mobile-menu__list-item" role="none">
132
+ <UDExMastheadMenuItem
133
+ part="menu-item"
134
+ url={this._clickedItem.href}
135
+ label={this.overviewLinkText}
136
+ onClick={this.handleMobileItemEvent as any}
137
+ has-border={true}
138
+ {...{ "second-level": "" }}>
139
+ </UDExMastheadMenuItem>
140
+ </li>
141
+ )}
142
+ {this._categories.map((category, index) => categoryEntry.call(this, category, index))}
143
+ </>
144
+ );
145
+ }
146
+
147
+ function categoryEntry(this: UDExMastheadMobileMenu, category: SubMenuLinkItem, index: number) {
148
+ if (category.items.length) {
149
+ if (category.category) {
150
+ return (
151
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={index}>
152
+ <UDExMastheadMenuItem
153
+ part="menu-item"
154
+ onClick={this.handleMenuCategoryClick as any}
155
+ id={`${index}`}
156
+ label={category.category}
157
+ aria-haspopup="true"
158
+ type="Button"
159
+ has-border={true}
160
+ icon-end={true}
161
+ {...{ "second-level-btn": "", "second-level": "" }}>
162
+ </UDExMastheadMenuItem>
163
+ </li>
164
+ );
165
+ }
166
+
167
+ return category.items.map((item, itemIndex) => (
168
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={`${index}-${itemIndex}`}>
169
+ <UDExMastheadMenuItem
170
+ part="menu-item"
171
+ onClick={this.handleMobileItemEvent as any}
172
+ url={item.url}
173
+ label={item.title}
174
+ has-border={true}
175
+ {...{ "second-level": "" }}>
176
+ </UDExMastheadMenuItem>
177
+ </li>
178
+ ));
179
+ }
180
+
181
+ return (
182
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={index}>
183
+ {category.url ? (
184
+ <UDExMastheadMenuItem
185
+ id={`${index}`}
186
+ onClick={this.handleMobileItemEvent as any}
187
+ label={category.category}
188
+ url={category.url}
189
+ part="menu-item"
190
+ type="Link"
191
+ has-border={true}
192
+ {...{ "second-level": "" }}>
193
+ </UDExMastheadMenuItem>
194
+ ) : (
195
+ <UDExMastheadMenuItem
196
+ id={`${index}`}
197
+ onClick={this.handleMobileItemEvent as any}
198
+ label={category.category}
199
+ part="menu-item"
200
+ type="Button"
201
+ has-border={true}
202
+ {...{ "second-level": "" }}>
203
+ </UDExMastheadMenuItem>
204
+ )}
205
+ </li>
206
+ );
207
+ }
208
+
209
+ function categoryItems(this: UDExMastheadMobileMenu) {
210
+ return (
211
+ <>
212
+ {this._category.url && (
213
+ <li class="udex-masthead-mobile-menu__list-item" role="none">
214
+ <UDExMastheadMenuItem
215
+ part="menu-item"
216
+ onClick={this.handleMobileCategoryItemEvent as any}
217
+ url={this._category.url}
218
+ label={this.overviewLinkText}
219
+ has-border={true}
220
+ {...{ "third-level": "" }}>
221
+ </UDExMastheadMenuItem>
222
+ </li>
223
+ )}
224
+ {this._category.items.map((item, index) => categoryItemEntry.call(this, item, index))}
225
+ </>
226
+ );
227
+ }
228
+
229
+ function categoryItemEntry(this: UDExMastheadMobileMenu, item: CategoryItem, index: number) {
230
+ if (item.subItems) {
231
+ return (
232
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={index}>
233
+ {item.url ? (
234
+ <UDExMastheadMenuItem
235
+ class="udex-masthead-mobile-menu__sub-category"
236
+ part="menu-item"
237
+ onClick={this.handleMobileCategoryItemEvent as any}
238
+ label={item.title}
239
+ url={item.url}
240
+ {...{ "third-level": "" }}>
241
+ </UDExMastheadMenuItem>
242
+ ) : (
243
+ <span class="udex-masthead-mobile-menu__sub-category">{item.title}</span>
244
+ )}
245
+ <ul class="udex-masthead-mobile-menu__sub-list" aria-label={item.title}>
246
+ {item.subItems.map((subItem, subIndex) => (subItem.url ? (
247
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={`${index}-${subIndex}`}>
248
+ <UDExMastheadMenuItem
249
+ part="menu-item"
250
+ onClick={this.handleMobileCategoryItemEvent as any}
251
+ label={subItem.title}
252
+ url={subItem.url}
253
+ {...{ "third-level": "" }}>
254
+ </UDExMastheadMenuItem>
255
+ </li>
256
+ ) : undefined))}
257
+ </ul>
258
+ </li>
259
+ );
260
+ }
261
+
262
+ return item.url ? (
263
+ <li class="udex-masthead-mobile-menu__list-item" role="none" key={index}>
264
+ <UDExMastheadMenuItem
265
+ part="menu-item"
266
+ onClick={this.handleMobileCategoryItemEvent as any}
267
+ label={item.title}
268
+ url={item.url}
269
+ has-border={true}
270
+ {...{ "third-level": "" }}>
271
+ </UDExMastheadMenuItem>
272
+ </li>
273
+ ) : undefined;
274
+ }
@@ -4,7 +4,7 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
5
  import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
7
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
7
+ import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
8
8
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
9
9
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
10
10
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
@@ -12,24 +12,19 @@ import {
12
12
  LOGOUT, SWITCH_ACCOUNT, BACK, OTHER_IDENTITIES, ADD_OR_REMOVE_ACCOUNT,
13
13
  } from "./generated/i18n/i18n-defaults.js";
14
14
  import { isEscape } from "@ui5/webcomponents-base/Keys.js";
15
- import UDExMastheadMenu from "./MastheadMenu.js";
16
- import UDExButton from "./Button.js";
17
- import UDExList from "./List.js";
18
- import UDExLink from "./Link.js";
19
- import UDExListItem from "./ListItem.js";
20
- import UDExMastheadMenuItem from "./MastheadMenuItem.js";
21
- import MastheadProfileMenuTemplate from "./generated/templates/MastheadProfileMenuTemplate.lit.js";
15
+ import MastheadProfileMenuTemplate from "./MastheadProfileMenuTemplate.js";
22
16
  import parseArrayFromString from "./utils/parseArrayFromString.js";
17
+ import translate from "./utils/translate.js";
23
18
  import AnalyticsName from "./types/AnalyticsName.js";
24
- import type UDExMastheadShell from "./MastheadShell.js";
25
- import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
26
- import "@ui5/webcomponents-icons/dist/action.js";
27
- import type { LinkClickEventDetail } from "@ui5/webcomponents/dist/Link.js";
19
+ import UDExMastheadMenu from "./MastheadMenu.js";
28
20
  import UDExStatusBadgeValueState from "./types/StatusBadgeValueState.js";
29
- import type { ResizeObserverCallback } from "@ui5/webcomponents-base/delegate/ResizeHandler.js";
30
21
  import ResizeHandler from "@ui5/webcomponents-base/delegate/ResizeHandler.js";
31
22
  import { BreakpointUtils } from "./utils/Breakpoints.js";
32
- import translate from "./utils/translate.js";
23
+ import type UDExMastheadShell from "./MastheadShell.js";
24
+ import type { LinkClickEventDetail } from "@ui5/webcomponents/dist/Link.js";
25
+ import type { ResizeObserverCallback } from "@ui5/webcomponents-base/delegate/ResizeHandler.js";
26
+ import type UDExButton from "./Button.js";
27
+ import type UDExMastheadMenuItem from "./MastheadMenuItem.js";
33
28
 
34
29
  // Styles
35
30
  import MastheadProfileMenuCss from "./generated/themes/MastheadProfileMenu.css.js";
@@ -91,17 +86,9 @@ type UDExMastheadProfileMenuAddOrRemoveClickEventDetail = {
91
86
  */
92
87
  @customElement({
93
88
  tag: "udex-masthead-profile-menu",
94
- renderer: litRender,
89
+ renderer: jsxRenderer,
95
90
  styles: [UDExMastheadMenu.styles, MastheadProfileMenuCss],
96
91
  template: MastheadProfileMenuTemplate,
97
- dependencies: [
98
- UDExMastheadMenuItem,
99
- UDExMastheadMenu,
100
- UDExListItem,
101
- UDExButton,
102
- UDExList,
103
- UDExLink,
104
- ],
105
92
  })
106
93
 
107
94
  /**
@@ -0,0 +1,143 @@
1
+ import actionIcon from "@ui5/webcomponents-icons/dist/action.js";
2
+ import slimArrowRightIcon from "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
3
+ import UI5LinkDesign from "@ui5/webcomponents/types/LinkDesign.js";
4
+ import UDExAvatar, { UDExAvatarSize } from "./Avatar.js";
5
+ import UDExButton from "./Button.js";
6
+ import UDExLink from "./Link.js";
7
+ import UDExList from "./List.js";
8
+ import UDExListItem from "./ListItem.js";
9
+ import UDExMastheadMenu from "./MastheadMenu.js";
10
+ import UDExMastheadMenuItem from "./MastheadMenuItem.js";
11
+ import UDExButtonSize from "./types/ButtonSize.js";
12
+ import UDExButtonDesign from "./types/ButtonDesign.js";
13
+ import { UDExListMode } from "./types/List.js";
14
+ import type UDExMastheadProfileMenu from "./MastheadProfileMenu.js";
15
+
16
+ export default function MastheadProfileMenuTemplate(this: UDExMastheadProfileMenu) {
17
+ return (
18
+ <div onKeyDown={this.handleKeydown} class={this.rootClass}>
19
+ {this._openIdentities ? accountIdentities.call(this) : accountProfile.call(this)}
20
+ </div>
21
+ );
22
+ }
23
+
24
+ function accountProfile(this: UDExMastheadProfileMenu) {
25
+ return (
26
+ <>
27
+ {this.hasUserData && (
28
+ <div class="udex-masthead-profile-menu__header">
29
+ <UDExAvatar
30
+ aria-hidden="true"
31
+ size={UDExAvatarSize.L}
32
+ initials={this.userData.avatarInitials}
33
+ fallback-icon={this.userData.fallbackIcon}>
34
+ {this.userData.avatarUrl && (
35
+ <img src={this.userData.avatarUrl} alt="avatar" />
36
+ )}
37
+ </UDExAvatar>
38
+ <div>
39
+ <p class="udex-profile-menu__account-name">{this.userData.name}</p>
40
+ <p class="udex-profile-menu__account-email">{this.userData.email}</p>
41
+ {this.hasIdentities && (
42
+ <UDExButton
43
+ onClick={this.handleSwitcherClick}
44
+ class="udex-masthead-profile-menu__btn-switcher"
45
+ size={UDExButtonSize.Large}
46
+ end-icon={slimArrowRightIcon}
47
+ design={UDExButtonDesign.Invisible}>
48
+ {this.switcherAccountText}
49
+ </UDExButton>
50
+ )}
51
+ </div>
52
+ </div>
53
+ )}
54
+ {this.messageAvailable && (
55
+ <div class="udex-masthead-profile-menu__message">
56
+ <slot name="message"></slot>
57
+ </div>
58
+ )}
59
+ <div class="udex-masthead-profile-menu__content">
60
+ <div
61
+ class="udex-masthead-profile-menu__links"
62
+ onScroll={this.handleProfileMenuShadowVisible}>
63
+ <UDExMastheadMenu
64
+ exportparts="badge, menu-item"
65
+ part="menu"
66
+ sub-items={this.linksList}
67
+ onui5-menu-item-click={this.handleProfileMenuItemClick}
68
+ {...{ "_scroll-into-view": "Center" }}>
69
+ </UDExMastheadMenu>
70
+ </div>
71
+ </div>
72
+ {this.hasActionButton && (
73
+ <div class="udex-masthead-profile-menu__actions">
74
+ {this.hasLogoutButton ? (
75
+ <div class="udex-masthead-profile-menu__btn">
76
+ <slot name="logoutButton"></slot>
77
+ </div>
78
+ ) : (
79
+ <UDExLink
80
+ accessible-role="Link"
81
+ onClick={this.handleUserLogoutClick as any}
82
+ end-icon={actionIcon}
83
+ design={UI5LinkDesign.Default}
84
+ href={this.logoutUrl}>
85
+ {this.logoutText}
86
+ </UDExLink>
87
+ )}
88
+ </div>
89
+ )}
90
+ </>
91
+ );
92
+ }
93
+
94
+ function accountIdentities(this: UDExMastheadProfileMenu) {
95
+ return (
96
+ <>
97
+ <div class="udex-masthead-profile-menu__header-wrap back-btn">
98
+ <UDExMastheadMenuItem
99
+ type="Button"
100
+ class="udex-masthead-profile-menu__btn-back"
101
+ onClick={this.handleSwitcherClick}
102
+ label={this.btnBackText}
103
+ icon-start={true}>
104
+ </UDExMastheadMenuItem>
105
+ <span class="udex-masthead-profile-menu__switcher-title">{this.switcherAccountText}</span>
106
+ </div>
107
+ <span class="udex-masthead-profile-menu__identities-list-title">{this.listTitleText}</span>
108
+ <div class="udex-masthead-profile-menu__identities-list-wrap">
109
+ {this.identitiesList.length > 0 && (
110
+ <UDExList
111
+ class="udex-masthead-profile-menu__identities-list"
112
+ mode={UDExListMode.SingleSelect}
113
+ accessible-name={this.listTitleText}
114
+ onScroll={this.handleIdentitiesListShadowVisible}
115
+ controlled={true}
116
+ {...{ "_scroll-into-view": "Center" }}>
117
+ {this.identitiesList.map((identity, index) => (
118
+ <UDExListItem
119
+ key={index}
120
+ id={identity.idsUser}
121
+ class="udex-masthead-profile-menu__identities-list-item"
122
+ onui5-item-press={this.fireEventIdentityItemClick}
123
+ image-badge-state={identity.statusBadge}
124
+ image={identity.avatarUrl}
125
+ image-alt={identity.name}
126
+ {...{ "supporting-text": identity.supportingText }}>
127
+ {identity.email}
128
+ </UDExListItem>
129
+ ))}
130
+ </UDExList>
131
+ )}
132
+ </div>
133
+ <UDExButton
134
+ onClick={this.fireEventAddOrRemoveAccountClick as any}
135
+ class="udex-masthead-profile-menu__add-remove-btn"
136
+ design={UDExButtonDesign.Primary}
137
+ end-icon={actionIcon}
138
+ size={UDExButtonSize.Large}>
139
+ {this.addOrRemoveAccountText}
140
+ </UDExButton>
141
+ </>
142
+ );
143
+ }
@@ -5,7 +5,7 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
5
5
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
6
6
  import type { DefaultSlot, Slot, ChangeInfo } from "@ui5/webcomponents-base/dist/UI5Element.js";
7
7
  import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
8
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
8
+ import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
9
9
  import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
10
10
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
11
11
  import {
@@ -20,14 +20,13 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
20
20
  import { MAIN_LINKS, SEARCH } from "./generated/i18n/i18n-defaults.js";
21
21
  import UDExMastheadItem, { UDExMastheadDropdownItemAction } from "./MastheadItem.js";
22
22
  import UDExMastheadMenu from "./MastheadMenu.js";
23
- import UDExControlButton from "./ControlButton.js";
24
23
  import type UDExSearch from "./Search.js";
25
24
  import UDExMastheadMobileMenu from "./MastheadMobileMenu.js";
26
25
  import type UDExMastheadProfileMenu from "./MastheadProfileMenu.js";
27
26
  import type UDExMastheadCountrySelector from "./MastheadCountrySelector.js";
28
27
  import { BreakpointUtils } from "./utils/Breakpoints.js";
29
28
  import AnalyticsName from "./types/AnalyticsName.js";
30
- import MastheadShellTemplate from "./generated/templates/MastheadShellTemplate.lit.js";
29
+ import MastheadShellTemplate from "./MastheadShellTemplate.js";
31
30
  import translate from "./utils/translate.js";
32
31
  import ensureSearchBackdropStyles from "./utils/searchBackdrop.js";
33
32
 
@@ -82,12 +81,11 @@ type UDExMastheadShellAnalyticsNameEventDetail = {
82
81
  @customElement({
83
82
  tag: "udex-masthead-shell",
84
83
  languageAware: true,
85
- renderer: litRender,
84
+ renderer: jsxRenderer,
86
85
  styles: MastheadShellCss,
87
86
  template: MastheadShellTemplate,
88
87
  dependencies: [
89
88
  UDExMastheadMobileMenu,
90
- UDExControlButton,
91
89
  UDExMastheadItem,
92
90
  UDExMastheadMenu,
93
91
  UI5Icon,