@sapudex/web-components 2.4.2 → 2.6.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 (698) hide show
  1. package/cypress/specs/Accordion.cy.tsx +18 -10
  2. package/cypress/specs/Divider.cy.tsx +16 -0
  3. package/cypress/support/component-imports.instrumented.ts +2 -0
  4. package/cypress/support/component-imports.src.ts +4 -2
  5. package/dist/Accordion.d.ts +6 -5
  6. package/dist/Accordion.js +21 -20
  7. package/dist/Accordion.js.map +1 -1
  8. package/dist/AccordionItem.d.ts +1 -3
  9. package/dist/AccordionItem.js +17 -19
  10. package/dist/AccordionItem.js.map +1 -1
  11. package/dist/AccordionItemTemplate.d.ts +2 -0
  12. package/dist/AccordionItemTemplate.js +14 -0
  13. package/dist/AccordionItemTemplate.js.map +1 -0
  14. package/dist/AccordionTemplate.d.ts +2 -0
  15. package/dist/AccordionTemplate.js +11 -0
  16. package/dist/AccordionTemplate.js.map +1 -0
  17. package/dist/AssetsVariables.js +5 -1
  18. package/dist/AssetsVariables.js.map +1 -1
  19. package/dist/Avatar.d.ts +2 -1
  20. package/dist/Avatar.js +7 -9
  21. package/dist/Avatar.js.map +1 -1
  22. package/dist/AvatarTemplate.d.ts +2 -0
  23. package/dist/AvatarTemplate.js +6 -0
  24. package/dist/AvatarTemplate.js.map +1 -0
  25. package/dist/Badge.d.ts +1 -2
  26. package/dist/Badge.js +6 -9
  27. package/dist/Badge.js.map +1 -1
  28. package/dist/BadgeTemplate.d.ts +2 -0
  29. package/dist/BadgeTemplate.js +8 -0
  30. package/dist/BadgeTemplate.js.map +1 -0
  31. package/dist/Carousel.d.ts +16 -4
  32. package/dist/Carousel.js +21 -11
  33. package/dist/Carousel.js.map +1 -1
  34. package/dist/CarouselTemplate.d.ts +2 -0
  35. package/dist/CarouselTemplate.js +15 -0
  36. package/dist/CarouselTemplate.js.map +1 -0
  37. package/dist/ContactItemTemplate.js +2 -1
  38. package/dist/ContactItemTemplate.js.map +1 -1
  39. package/dist/CountrySelector.d.ts +1 -1
  40. package/dist/CountrySelector.js +6 -7
  41. package/dist/CountrySelector.js.map +1 -1
  42. package/dist/Divider.d.ts +10 -2
  43. package/dist/Divider.js +11 -4
  44. package/dist/Divider.js.map +1 -1
  45. package/dist/DividerTemplate.d.ts +2 -0
  46. package/dist/DividerTemplate.js +5 -0
  47. package/dist/DividerTemplate.js.map +1 -0
  48. package/dist/Dropdown.js +2 -1
  49. package/dist/Dropdown.js.map +1 -1
  50. package/dist/FilterMenu.d.ts +0 -7
  51. package/dist/FilterMenu.js +12 -12
  52. package/dist/FilterMenu.js.map +1 -1
  53. package/dist/List.js +1 -1
  54. package/dist/List.js.map +1 -1
  55. package/dist/MastheadCountrySelector.d.ts +5 -0
  56. package/dist/MastheadCountrySelector.js +17 -2
  57. package/dist/MastheadCountrySelector.js.map +1 -1
  58. package/dist/MastheadItem.d.ts +3 -0
  59. package/dist/MastheadItem.js +17 -1
  60. package/dist/MastheadItem.js.map +1 -1
  61. package/dist/MastheadMenu.d.ts +3 -1
  62. package/dist/MastheadMenu.js +23 -14
  63. package/dist/MastheadMenu.js.map +1 -1
  64. package/dist/MastheadMobileMenu.d.ts +4 -0
  65. package/dist/MastheadMobileMenu.js +50 -9
  66. package/dist/MastheadMobileMenu.js.map +1 -1
  67. package/dist/MastheadShell.d.ts +78 -16
  68. package/dist/MastheadShell.js +99 -81
  69. package/dist/MastheadShell.js.map +1 -1
  70. package/dist/Modal.js +2 -2
  71. package/dist/Modal.js.map +1 -1
  72. package/dist/Search.js +5 -4
  73. package/dist/Search.js.map +1 -1
  74. package/dist/SearchableListBase.d.ts +24 -2
  75. package/dist/SearchableListBase.js +54 -4
  76. package/dist/SearchableListBase.js.map +1 -1
  77. package/dist/SecondaryNavigation.js +1 -1
  78. package/dist/SecondaryNavigation.js.map +1 -1
  79. package/dist/SecondaryNavigationItem.js +1 -2
  80. package/dist/SecondaryNavigationItem.js.map +1 -1
  81. package/dist/SegmentedButton.js +6 -4
  82. package/dist/SegmentedButton.js.map +1 -1
  83. package/dist/SelectBox.d.ts +0 -7
  84. package/dist/SelectBox.js +10 -13
  85. package/dist/SelectBox.js.map +1 -1
  86. package/dist/TabNavigation.d.ts +5 -0
  87. package/dist/TabNavigation.js +8 -0
  88. package/dist/TabNavigation.js.map +1 -1
  89. package/dist/Table.js +1 -1
  90. package/dist/Table.js.map +1 -1
  91. package/dist/TagGroup.js +3 -2
  92. package/dist/TagGroup.js.map +1 -1
  93. package/dist/TextArea.js +1 -1
  94. package/dist/TextArea.js.map +1 -1
  95. package/dist/assets/InputSuggestions-D_DpCFML.js +2 -0
  96. package/dist/assets/{ListItemStandardExpandableTextTemplate-87ypSvqu.js → ListItemStandardExpandableTextTemplate-Cd1WOyFc.js} +3 -3
  97. package/dist/assets/bundle-S1uYREqT.css +1 -0
  98. package/dist/assets/bundle.esm-B9JnRRJp.js +475 -0
  99. package/dist/assets/messagebundle_ar-C39XMRa3.js +1 -0
  100. package/dist/assets/messagebundle_bg-CFuqxDUo.js +1 -0
  101. package/dist/assets/messagebundle_cs-HZFdxP5k.js +1 -0
  102. package/dist/assets/messagebundle_da-Cb19y_UU.js +1 -0
  103. package/dist/assets/messagebundle_de-BPtfcnG8.js +1 -0
  104. package/dist/assets/messagebundle_el-BfR2BVvB.js +1 -0
  105. package/dist/assets/messagebundle_en-CKeTZNW3.js +1 -0
  106. package/dist/assets/messagebundle_es-DEz3xznF.js +1 -0
  107. package/dist/assets/messagebundle_et-BHSda64J.js +1 -0
  108. package/dist/assets/messagebundle_fi-DTkxmWJb.js +1 -0
  109. package/dist/assets/messagebundle_fr-BEq1Nxlj.js +1 -0
  110. package/dist/assets/messagebundle_hr-BzWPMYA7.js +1 -0
  111. package/dist/assets/messagebundle_hu-DQvndOA8.js +1 -0
  112. package/dist/assets/messagebundle_it-Bx7wA4HY.js +1 -0
  113. package/dist/assets/messagebundle_iw-L2hZONxh.js +1 -0
  114. package/dist/assets/messagebundle_ko-D4ckbm7i.js +1 -0
  115. package/dist/assets/messagebundle_lt-BriAnQM8.js +1 -0
  116. package/dist/assets/messagebundle_lv-Di1Ng3Tk.js +1 -0
  117. package/dist/assets/messagebundle_nl-Bhq20VT1.js +1 -0
  118. package/dist/assets/messagebundle_no-bTeyeWYl.js +1 -0
  119. package/dist/assets/messagebundle_pl-BnBUJpAL.js +1 -0
  120. package/dist/assets/messagebundle_pt-Cd_ey78V.js +1 -0
  121. package/dist/assets/messagebundle_ro-Cy-zHe5i.js +1 -0
  122. package/dist/assets/messagebundle_ru-CiDd56L1.js +1 -0
  123. package/dist/assets/messagebundle_sk-DJS6mahY.js +1 -0
  124. package/dist/assets/messagebundle_sl-BUi3OLzP.js +1 -0
  125. package/dist/assets/messagebundle_sr-BtodsTa0.js +1 -0
  126. package/dist/assets/messagebundle_sv-CVVuFZcm.js +1 -0
  127. package/dist/assets/messagebundle_tr-CqVlQ8yY.js +1 -0
  128. package/dist/assets/messagebundle_uk-aDyDoabO.js +1 -0
  129. package/dist/assets/messagebundle_zh_CN-CTb6-Dhs.js +1 -0
  130. package/dist/assets/messagebundle_zh_TW-DtT5REQh.js +1 -0
  131. package/dist/assets/parameters-bundle.css-B168-DcZ.js +2 -0
  132. package/dist/assets/parameters-bundle.css-B4OkERQ9.js +2 -0
  133. package/dist/assets/parameters-bundle.css-D1Mp0DP7.js +2 -0
  134. package/dist/assets/parameters-bundle.css-DPQMdjrz.js +2 -0
  135. package/dist/assets/parameters-bundle.css-DW-8EaO7.js +2 -0
  136. package/dist/assets/parameters-bundle.css-DpI130zX.js +2 -0
  137. package/dist/assets/parameters-bundle.css-DsEtCihj.js +2 -0
  138. package/dist/assets/parameters-bundle.css-y5CBgtzD.js +2 -0
  139. package/dist/css/themes/CountrySelector.css +1 -1
  140. package/dist/css/themes/MastheadCountrySelector.css +1 -1
  141. package/dist/css/themes/MastheadItem.css +1 -1
  142. package/dist/css/themes/MastheadMenuItem.css +1 -1
  143. package/dist/css/themes/MastheadMobileMenu.css +1 -1
  144. package/dist/css/themes/MastheadShell.css +1 -1
  145. package/dist/css/themes/RatingIndicator.css +1 -1
  146. package/dist/css/themes/Search.css +1 -1
  147. package/dist/css/themes/SearchableList.css +1 -1
  148. package/dist/css/themes/SegmentedButtonItem.css +1 -1
  149. package/dist/css/themes/Slider.css +1 -1
  150. package/dist/css/themes/TextArea.css +1 -1
  151. package/dist/custom-elements-internal.json +391 -88
  152. package/dist/custom-elements.json +379 -88
  153. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  154. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  155. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  156. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  157. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  158. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  159. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  160. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  161. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  162. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  163. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  164. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  165. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  166. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  167. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  168. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  169. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  170. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  171. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  173. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  174. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  175. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  176. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  177. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  178. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  179. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  180. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  181. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  182. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  183. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  184. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  185. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  186. package/dist/generated/i18n/i18n-defaults.js +2 -1
  187. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  188. package/dist/generated/json-imports/Themes-fetch.js +1 -1
  189. package/dist/generated/json-imports/Themes-fetch.js.map +1 -1
  190. package/dist/generated/json-imports/Themes-node.js +1 -1
  191. package/dist/generated/json-imports/Themes-node.js.map +1 -1
  192. package/dist/generated/json-imports/Themes.js +1 -1
  193. package/dist/generated/json-imports/Themes.js.map +1 -1
  194. package/dist/generated/json-imports/i18n-fetch.js +1 -1
  195. package/dist/generated/json-imports/i18n-fetch.js.map +1 -1
  196. package/dist/generated/json-imports/i18n-node.js +1 -1
  197. package/dist/generated/json-imports/i18n-node.js.map +1 -1
  198. package/dist/generated/json-imports/i18n.js +1 -1
  199. package/dist/generated/json-imports/i18n.js.map +1 -1
  200. package/dist/generated/templates/HeroBannerTemplate.lit.js +1 -1
  201. package/dist/generated/templates/HeroBannerTemplate.lit.js.map +1 -1
  202. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +3 -3
  203. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -1
  204. package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -3
  205. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
  206. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +11 -11
  207. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +1 -1
  208. package/dist/generated/templates/MastheadShellTemplate.lit.js +17 -14
  209. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
  210. package/dist/generated/templates/SearchableListBaseTemplate.lit.js +2 -2
  211. package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
  212. package/dist/generated/themes/Accordion.css.js +2 -2
  213. package/dist/generated/themes/Accordion.css.js.map +1 -1
  214. package/dist/generated/themes/AccordionItem.css.js +2 -2
  215. package/dist/generated/themes/AccordionItem.css.js.map +1 -1
  216. package/dist/generated/themes/Avatar.css.js +2 -2
  217. package/dist/generated/themes/Avatar.css.js.map +1 -1
  218. package/dist/generated/themes/Badge.css.js +2 -2
  219. package/dist/generated/themes/Badge.css.js.map +1 -1
  220. package/dist/generated/themes/Breadcrumbs.css.js +2 -2
  221. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  222. package/dist/generated/themes/BreadcrumbsPopover.css.js +2 -2
  223. package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
  224. package/dist/generated/themes/Button.css.js +2 -2
  225. package/dist/generated/themes/Button.css.js.map +1 -1
  226. package/dist/generated/themes/Carousel.css.js +2 -2
  227. package/dist/generated/themes/Carousel.css.js.map +1 -1
  228. package/dist/generated/themes/Checkbox.css.js +2 -2
  229. package/dist/generated/themes/Checkbox.css.js.map +1 -1
  230. package/dist/generated/themes/Contact.css.js +2 -2
  231. package/dist/generated/themes/Contact.css.js.map +1 -1
  232. package/dist/generated/themes/ContactItem.css.js +2 -2
  233. package/dist/generated/themes/ContactItem.css.js.map +1 -1
  234. package/dist/generated/themes/ControlButton.css.js +2 -2
  235. package/dist/generated/themes/ControlButton.css.js.map +1 -1
  236. package/dist/generated/themes/CountrySelector.css.d.ts +1 -1
  237. package/dist/generated/themes/CountrySelector.css.js +3 -3
  238. package/dist/generated/themes/CountrySelector.css.js.map +1 -1
  239. package/dist/generated/themes/DatePicker.css.js +2 -2
  240. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  241. package/dist/generated/themes/DatePickerPopover.css.js +2 -2
  242. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  243. package/dist/generated/themes/Divider.css.js +2 -2
  244. package/dist/generated/themes/Divider.css.js.map +1 -1
  245. package/dist/generated/themes/Dropdown.css.js +2 -2
  246. package/dist/generated/themes/Dropdown.css.js.map +1 -1
  247. package/dist/generated/themes/EventRibbon.css.js +2 -2
  248. package/dist/generated/themes/EventRibbon.css.js.map +1 -1
  249. package/dist/generated/themes/FilterMenu.css.js +2 -2
  250. package/dist/generated/themes/FilterMenu.css.js.map +1 -1
  251. package/dist/generated/themes/Footer.css.js +2 -2
  252. package/dist/generated/themes/Footer.css.js.map +1 -1
  253. package/dist/generated/themes/HeroBanner.css.js +2 -2
  254. package/dist/generated/themes/HeroBanner.css.js.map +1 -1
  255. package/dist/generated/themes/InputGroup.css.js +2 -2
  256. package/dist/generated/themes/InputGroup.css.js.map +1 -1
  257. package/dist/generated/themes/Link.css.js +2 -2
  258. package/dist/generated/themes/Link.css.js.map +1 -1
  259. package/dist/generated/themes/List.css.js +2 -2
  260. package/dist/generated/themes/List.css.js.map +1 -1
  261. package/dist/generated/themes/ListGroupHeader.css.js +2 -2
  262. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  263. package/dist/generated/themes/ListItem.css.js +2 -2
  264. package/dist/generated/themes/ListItem.css.js.map +1 -1
  265. package/dist/generated/themes/MastheadCountrySelector.css.d.ts +1 -1
  266. package/dist/generated/themes/MastheadCountrySelector.css.js +3 -3
  267. package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -1
  268. package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
  269. package/dist/generated/themes/MastheadItem.css.js +3 -3
  270. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  271. package/dist/generated/themes/MastheadMenu.css.js +2 -2
  272. package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
  273. package/dist/generated/themes/MastheadMenuItem.css.d.ts +1 -1
  274. package/dist/generated/themes/MastheadMenuItem.css.js +3 -3
  275. package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
  276. package/dist/generated/themes/MastheadMobileMenu.css.d.ts +1 -1
  277. package/dist/generated/themes/MastheadMobileMenu.css.js +3 -3
  278. package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
  279. package/dist/generated/themes/MastheadProfileMenu.css.js +2 -2
  280. package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
  281. package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
  282. package/dist/generated/themes/MastheadShell.css.js +3 -3
  283. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  284. package/dist/generated/themes/MediaPlayer.css.js +2 -2
  285. package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
  286. package/dist/generated/themes/MediaPlayerYoutube.css.js +2 -2
  287. package/dist/generated/themes/MediaPlayerYoutube.css.js.map +1 -1
  288. package/dist/generated/themes/MessageStrip.css.js +2 -2
  289. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  290. package/dist/generated/themes/Modal.css.js +2 -2
  291. package/dist/generated/themes/Modal.css.js.map +1 -1
  292. package/dist/generated/themes/Pagination.css.js +2 -2
  293. package/dist/generated/themes/Pagination.css.js.map +1 -1
  294. package/dist/generated/themes/PhoneNumberField.css.js +2 -2
  295. package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
  296. package/dist/generated/themes/ProgressBar.css.js +2 -2
  297. package/dist/generated/themes/ProgressBar.css.js.map +1 -1
  298. package/dist/generated/themes/Quote.css.js +2 -2
  299. package/dist/generated/themes/Quote.css.js.map +1 -1
  300. package/dist/generated/themes/RadioButton.css.js +2 -2
  301. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  302. package/dist/generated/themes/RatingBar.css.js +2 -2
  303. package/dist/generated/themes/RatingBar.css.js.map +1 -1
  304. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  305. package/dist/generated/themes/RatingIndicator.css.js +3 -3
  306. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  307. package/dist/generated/themes/Review.css.js +2 -2
  308. package/dist/generated/themes/Review.css.js.map +1 -1
  309. package/dist/generated/themes/ReviewItem.css.js +2 -2
  310. package/dist/generated/themes/ReviewItem.css.js.map +1 -1
  311. package/dist/generated/themes/Search.css.d.ts +1 -1
  312. package/dist/generated/themes/Search.css.js +3 -3
  313. package/dist/generated/themes/Search.css.js.map +1 -1
  314. package/dist/generated/themes/SearchSuggestions.css.js +2 -2
  315. package/dist/generated/themes/SearchSuggestions.css.js.map +1 -1
  316. package/dist/generated/themes/SearchableList.css.d.ts +1 -1
  317. package/dist/generated/themes/SearchableList.css.js +3 -3
  318. package/dist/generated/themes/SearchableList.css.js.map +1 -1
  319. package/dist/generated/themes/SecondaryNavigation.css.js +2 -2
  320. package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
  321. package/dist/generated/themes/SecondaryNavigationItem.css.js +2 -2
  322. package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
  323. package/dist/generated/themes/SecondaryNavigationSubItem.css.js +2 -2
  324. package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
  325. package/dist/generated/themes/SegmentedButton.css.js +2 -2
  326. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  327. package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
  328. package/dist/generated/themes/SegmentedButtonItem.css.js +3 -3
  329. package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
  330. package/dist/generated/themes/SelectBox.css.js +2 -2
  331. package/dist/generated/themes/SelectBox.css.js.map +1 -1
  332. package/dist/generated/themes/SideNavigation.css.js +2 -2
  333. package/dist/generated/themes/SideNavigation.css.js.map +1 -1
  334. package/dist/generated/themes/SideNavigationGroup.css.js +2 -2
  335. package/dist/generated/themes/SideNavigationGroup.css.js.map +1 -1
  336. package/dist/generated/themes/SideNavigationItem.css.js +2 -2
  337. package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
  338. package/dist/generated/themes/SideNavigationMobile.css.js +2 -2
  339. package/dist/generated/themes/SideNavigationMobile.css.js.map +1 -1
  340. package/dist/generated/themes/SideNavigationMobileDropdown.css.js +2 -2
  341. package/dist/generated/themes/SideNavigationMobileDropdown.css.js.map +1 -1
  342. package/dist/generated/themes/SideNavigationSubItem.css.js +2 -2
  343. package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
  344. package/dist/generated/themes/Slider.css.d.ts +1 -1
  345. package/dist/generated/themes/Slider.css.js +3 -3
  346. package/dist/generated/themes/Slider.css.js.map +1 -1
  347. package/dist/generated/themes/StatusBadge.css.js +2 -2
  348. package/dist/generated/themes/StatusBadge.css.js.map +1 -1
  349. package/dist/generated/themes/StatusMessage.css.js +2 -2
  350. package/dist/generated/themes/StatusMessage.css.js.map +1 -1
  351. package/dist/generated/themes/StepInput.css.js +2 -2
  352. package/dist/generated/themes/StepInput.css.js.map +1 -1
  353. package/dist/generated/themes/Switch.css.js +2 -2
  354. package/dist/generated/themes/Switch.css.js.map +1 -1
  355. package/dist/generated/themes/TabInOverflow.css.js +2 -2
  356. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  357. package/dist/generated/themes/TabNavigation.css.js +2 -2
  358. package/dist/generated/themes/TabNavigation.css.js.map +1 -1
  359. package/dist/generated/themes/Table.css.js +2 -2
  360. package/dist/generated/themes/Table.css.js.map +1 -1
  361. package/dist/generated/themes/TableCell.css.js +2 -2
  362. package/dist/generated/themes/TableCell.css.js.map +1 -1
  363. package/dist/generated/themes/TableCellBase.css.js +2 -2
  364. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  365. package/dist/generated/themes/TableGroupRow.css.js +2 -2
  366. package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
  367. package/dist/generated/themes/TableHeaderCell.css.js +2 -2
  368. package/dist/generated/themes/TableHeaderCell.css.js.map +1 -1
  369. package/dist/generated/themes/TableRowBase.css.js +2 -2
  370. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  371. package/dist/generated/themes/Tag.css.js +2 -2
  372. package/dist/generated/themes/Tag.css.js.map +1 -1
  373. package/dist/generated/themes/TagGroup.css.js +2 -2
  374. package/dist/generated/themes/TagGroup.css.js.map +1 -1
  375. package/dist/generated/themes/TextArea.css.d.ts +1 -1
  376. package/dist/generated/themes/TextArea.css.js +3 -3
  377. package/dist/generated/themes/TextArea.css.js.map +1 -1
  378. package/dist/generated/themes/TextField.css.js +2 -2
  379. package/dist/generated/themes/TextField.css.js.map +1 -1
  380. package/dist/generated/themes/Tile.css.js +2 -2
  381. package/dist/generated/themes/Tile.css.js.map +1 -1
  382. package/dist/generated/themes/Toast.css.js +2 -2
  383. package/dist/generated/themes/Toast.css.js.map +1 -1
  384. package/dist/generated/themes/Tooltip.css.js +2 -2
  385. package/dist/generated/themes/Tooltip.css.js.map +1 -1
  386. package/dist/generated/themes/TruncatedText.css.js +2 -2
  387. package/dist/generated/themes/TruncatedText.css.js.map +1 -1
  388. package/dist/generated/themes/Upload.css.js +2 -2
  389. package/dist/generated/themes/Upload.css.js.map +1 -1
  390. package/dist/generated/themes/UploadItem.css.js +2 -2
  391. package/dist/generated/themes/UploadItem.css.js.map +1 -1
  392. package/dist/generated/themes/Wizard.css.js +2 -2
  393. package/dist/generated/themes/Wizard.css.js.map +1 -1
  394. package/dist/generated/themes/WizardTab.css.js +2 -2
  395. package/dist/generated/themes/WizardTab.css.js.map +1 -1
  396. package/dist/messagebundle.properties +3 -0
  397. package/dist/messagebundle_ar.properties +3 -0
  398. package/dist/messagebundle_bg.properties +3 -0
  399. package/dist/messagebundle_cs.properties +3 -0
  400. package/dist/messagebundle_da.properties +3 -0
  401. package/dist/messagebundle_de.properties +3 -0
  402. package/dist/messagebundle_el.properties +3 -0
  403. package/dist/messagebundle_en.properties +1 -0
  404. package/dist/messagebundle_es.properties +3 -0
  405. package/dist/messagebundle_et.properties +3 -0
  406. package/dist/messagebundle_fi.properties +3 -0
  407. package/dist/messagebundle_fr.properties +3 -0
  408. package/dist/messagebundle_hr.properties +3 -0
  409. package/dist/messagebundle_hu.properties +3 -0
  410. package/dist/messagebundle_it.properties +3 -0
  411. package/dist/messagebundle_iw.properties +3 -1
  412. package/dist/messagebundle_ko.properties +3 -0
  413. package/dist/messagebundle_lt.properties +3 -0
  414. package/dist/messagebundle_lv.properties +3 -0
  415. package/dist/messagebundle_nl.properties +3 -0
  416. package/dist/messagebundle_no.properties +3 -0
  417. package/dist/messagebundle_pl.properties +3 -0
  418. package/dist/messagebundle_pt.properties +3 -0
  419. package/dist/messagebundle_pt_BR.properties +3 -0
  420. package/dist/messagebundle_ro.properties +3 -0
  421. package/dist/messagebundle_ru.properties +3 -0
  422. package/dist/messagebundle_sk.properties +3 -0
  423. package/dist/messagebundle_sl.properties +3 -0
  424. package/dist/messagebundle_sr.properties +3 -1
  425. package/dist/messagebundle_sv.properties +3 -0
  426. package/dist/messagebundle_tr.properties +3 -0
  427. package/dist/messagebundle_uk.properties +3 -0
  428. package/dist/messagebundle_zh_CN.properties +3 -1
  429. package/dist/messagebundle_zh_TW.properties +3 -0
  430. package/dist/types/SearchableListBase.d.ts +5 -0
  431. package/dist/types/SearchableListBase.js +6 -0
  432. package/dist/types/SearchableListBase.js.map +1 -1
  433. package/dist/utils/getEffectiveScrollbarStyle.d.ts +4 -0
  434. package/dist/utils/getEffectiveScrollbarStyle.js +45 -0
  435. package/dist/utils/getEffectiveScrollbarStyle.js.map +1 -0
  436. package/dist/vscode.html-custom-data.json +71 -16
  437. package/dist/web-types.json +158 -44
  438. package/package.json +7 -7
  439. package/src/Accordion.ts +38 -31
  440. package/src/AccordionItem.ts +23 -27
  441. package/src/AccordionItemTemplate.tsx +54 -0
  442. package/src/AccordionTemplate.tsx +37 -0
  443. package/src/AssetsVariables.ts +5 -1
  444. package/src/Avatar.ts +9 -11
  445. package/src/AvatarTemplate.tsx +22 -0
  446. package/src/Badge.ts +8 -12
  447. package/src/BadgeTemplate.tsx +22 -0
  448. package/src/Carousel.ts +30 -24
  449. package/src/CarouselTemplate.tsx +56 -0
  450. package/src/ContactItemTemplate.tsx +2 -1
  451. package/src/CountrySelector.ts +9 -10
  452. package/src/Divider.ts +13 -5
  453. package/src/DividerTemplate.tsx +11 -0
  454. package/src/Dropdown.ts +2 -1
  455. package/src/FilterMenu.ts +15 -18
  456. package/src/HeroBanner.hbs +1 -0
  457. package/src/List.ts +1 -1
  458. package/src/MastheadCountrySelector.hbs +5 -9
  459. package/src/MastheadCountrySelector.ts +19 -0
  460. package/src/MastheadItem.ts +21 -2
  461. package/src/MastheadMenu.hbs +3 -3
  462. package/src/MastheadMenu.ts +32 -15
  463. package/src/MastheadMobileMenu.hbs +13 -2
  464. package/src/MastheadMobileMenu.ts +57 -10
  465. package/src/MastheadShell.hbs +64 -30
  466. package/src/MastheadShell.ts +168 -43
  467. package/src/Modal.ts +2 -2
  468. package/src/Search.hbs +1 -1
  469. package/src/Search.ts +5 -4
  470. package/src/SearchableListBase.hbs +7 -1
  471. package/src/SearchableListBase.ts +69 -9
  472. package/src/SecondaryNavigation.ts +1 -1
  473. package/src/SecondaryNavigationItem.ts +1 -2
  474. package/src/SegmentedButton.ts +7 -4
  475. package/src/SelectBox.ts +13 -19
  476. package/src/TabNavigation.ts +13 -0
  477. package/src/Table.ts +1 -1
  478. package/src/TagGroup.ts +3 -2
  479. package/src/TextArea.ts +1 -1
  480. package/src/generated/i18n/i18n-defaults.ts +2 -2
  481. package/src/generated/json-imports/Themes-fetch.ts +1 -1
  482. package/src/generated/json-imports/Themes-node.ts +1 -1
  483. package/src/generated/json-imports/Themes.ts +1 -1
  484. package/src/generated/json-imports/i18n-fetch.ts +1 -1
  485. package/src/generated/json-imports/i18n-node.ts +1 -1
  486. package/src/generated/json-imports/i18n.ts +1 -1
  487. package/src/generated/templates/HeroBannerTemplate.lit.ts +1 -1
  488. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +3 -3
  489. package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -3
  490. package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +11 -11
  491. package/src/generated/templates/MastheadShellTemplate.lit.ts +17 -14
  492. package/src/generated/templates/SearchableListBaseTemplate.lit.ts +2 -2
  493. package/src/generated/themes/Accordion.css.ts +2 -2
  494. package/src/generated/themes/AccordionItem.css.ts +2 -2
  495. package/src/generated/themes/Avatar.css.ts +2 -2
  496. package/src/generated/themes/Badge.css.ts +2 -2
  497. package/src/generated/themes/Breadcrumbs.css.ts +2 -2
  498. package/src/generated/themes/BreadcrumbsPopover.css.ts +2 -2
  499. package/src/generated/themes/Button.css.ts +2 -2
  500. package/src/generated/themes/Carousel.css.ts +2 -2
  501. package/src/generated/themes/Checkbox.css.ts +2 -2
  502. package/src/generated/themes/Contact.css.ts +2 -2
  503. package/src/generated/themes/ContactItem.css.ts +2 -2
  504. package/src/generated/themes/ControlButton.css.ts +2 -2
  505. package/src/generated/themes/CountrySelector.css.ts +3 -3
  506. package/src/generated/themes/DatePicker.css.ts +2 -2
  507. package/src/generated/themes/DatePickerPopover.css.ts +2 -2
  508. package/src/generated/themes/Divider.css.ts +2 -2
  509. package/src/generated/themes/Dropdown.css.ts +2 -2
  510. package/src/generated/themes/EventRibbon.css.ts +2 -2
  511. package/src/generated/themes/FilterMenu.css.ts +2 -2
  512. package/src/generated/themes/Footer.css.ts +2 -2
  513. package/src/generated/themes/HeroBanner.css.ts +2 -2
  514. package/src/generated/themes/InputGroup.css.ts +2 -2
  515. package/src/generated/themes/Link.css.ts +2 -2
  516. package/src/generated/themes/List.css.ts +2 -2
  517. package/src/generated/themes/ListGroupHeader.css.ts +2 -2
  518. package/src/generated/themes/ListItem.css.ts +2 -2
  519. package/src/generated/themes/MastheadCountrySelector.css.ts +3 -3
  520. package/src/generated/themes/MastheadItem.css.ts +3 -3
  521. package/src/generated/themes/MastheadMenu.css.ts +2 -2
  522. package/src/generated/themes/MastheadMenuItem.css.ts +3 -3
  523. package/src/generated/themes/MastheadMobileMenu.css.ts +3 -3
  524. package/src/generated/themes/MastheadProfileMenu.css.ts +2 -2
  525. package/src/generated/themes/MastheadShell.css.ts +3 -3
  526. package/src/generated/themes/MediaPlayer.css.ts +2 -2
  527. package/src/generated/themes/MediaPlayerYoutube.css.ts +2 -2
  528. package/src/generated/themes/MessageStrip.css.ts +2 -2
  529. package/src/generated/themes/Modal.css.ts +2 -2
  530. package/src/generated/themes/Pagination.css.ts +2 -2
  531. package/src/generated/themes/PhoneNumberField.css.ts +2 -2
  532. package/src/generated/themes/ProgressBar.css.ts +2 -2
  533. package/src/generated/themes/Quote.css.ts +2 -2
  534. package/src/generated/themes/RadioButton.css.ts +2 -2
  535. package/src/generated/themes/RatingBar.css.ts +2 -2
  536. package/src/generated/themes/RatingIndicator.css.ts +3 -3
  537. package/src/generated/themes/Review.css.ts +2 -2
  538. package/src/generated/themes/ReviewItem.css.ts +2 -2
  539. package/src/generated/themes/Search.css.ts +3 -3
  540. package/src/generated/themes/SearchSuggestions.css.ts +2 -2
  541. package/src/generated/themes/SearchableList.css.ts +3 -3
  542. package/src/generated/themes/SecondaryNavigation.css.ts +2 -2
  543. package/src/generated/themes/SecondaryNavigationItem.css.ts +2 -2
  544. package/src/generated/themes/SecondaryNavigationSubItem.css.ts +2 -2
  545. package/src/generated/themes/SegmentedButton.css.ts +2 -2
  546. package/src/generated/themes/SegmentedButtonItem.css.ts +3 -3
  547. package/src/generated/themes/SelectBox.css.ts +2 -2
  548. package/src/generated/themes/SideNavigation.css.ts +2 -2
  549. package/src/generated/themes/SideNavigationGroup.css.ts +2 -2
  550. package/src/generated/themes/SideNavigationItem.css.ts +2 -2
  551. package/src/generated/themes/SideNavigationMobile.css.ts +2 -2
  552. package/src/generated/themes/SideNavigationMobileDropdown.css.ts +2 -2
  553. package/src/generated/themes/SideNavigationSubItem.css.ts +2 -2
  554. package/src/generated/themes/Slider.css.ts +3 -3
  555. package/src/generated/themes/StatusBadge.css.ts +2 -2
  556. package/src/generated/themes/StatusMessage.css.ts +2 -2
  557. package/src/generated/themes/StepInput.css.ts +2 -2
  558. package/src/generated/themes/Switch.css.ts +2 -2
  559. package/src/generated/themes/TabInOverflow.css.ts +2 -2
  560. package/src/generated/themes/TabNavigation.css.ts +2 -2
  561. package/src/generated/themes/Table.css.ts +2 -2
  562. package/src/generated/themes/TableCell.css.ts +2 -2
  563. package/src/generated/themes/TableCellBase.css.ts +2 -2
  564. package/src/generated/themes/TableGroupRow.css.ts +2 -2
  565. package/src/generated/themes/TableHeaderCell.css.ts +2 -2
  566. package/src/generated/themes/TableRowBase.css.ts +2 -2
  567. package/src/generated/themes/Tag.css.ts +2 -2
  568. package/src/generated/themes/TagGroup.css.ts +2 -2
  569. package/src/generated/themes/TextArea.css.ts +3 -3
  570. package/src/generated/themes/TextField.css.ts +2 -2
  571. package/src/generated/themes/Tile.css.ts +2 -2
  572. package/src/generated/themes/Toast.css.ts +2 -2
  573. package/src/generated/themes/Tooltip.css.ts +2 -2
  574. package/src/generated/themes/TruncatedText.css.ts +2 -2
  575. package/src/generated/themes/Upload.css.ts +2 -2
  576. package/src/generated/themes/UploadItem.css.ts +2 -2
  577. package/src/generated/themes/Wizard.css.ts +2 -2
  578. package/src/generated/themes/WizardTab.css.ts +2 -2
  579. package/src/i18n/messagebundle.properties +3 -0
  580. package/src/i18n/messagebundle_ar.properties +3 -0
  581. package/src/i18n/messagebundle_bg.properties +3 -0
  582. package/src/i18n/messagebundle_cs.properties +3 -0
  583. package/src/i18n/messagebundle_da.properties +3 -0
  584. package/src/i18n/messagebundle_de.properties +3 -0
  585. package/src/i18n/messagebundle_el.properties +3 -0
  586. package/src/i18n/messagebundle_en.properties +1 -0
  587. package/src/i18n/messagebundle_es.properties +3 -0
  588. package/src/i18n/messagebundle_et.properties +3 -0
  589. package/src/i18n/messagebundle_fi.properties +3 -0
  590. package/src/i18n/messagebundle_fr.properties +3 -0
  591. package/src/i18n/messagebundle_hr.properties +3 -0
  592. package/src/i18n/messagebundle_hu.properties +3 -0
  593. package/src/i18n/messagebundle_it.properties +3 -0
  594. package/src/i18n/messagebundle_iw.properties +3 -1
  595. package/src/i18n/messagebundle_ko.properties +3 -0
  596. package/src/i18n/messagebundle_lt.properties +3 -0
  597. package/src/i18n/messagebundle_lv.properties +3 -0
  598. package/src/i18n/messagebundle_nl.properties +3 -0
  599. package/src/i18n/messagebundle_no.properties +3 -0
  600. package/src/i18n/messagebundle_pl.properties +3 -0
  601. package/src/i18n/messagebundle_pt.properties +3 -0
  602. package/src/i18n/messagebundle_pt_BR.properties +3 -0
  603. package/src/i18n/messagebundle_ro.properties +3 -0
  604. package/src/i18n/messagebundle_ru.properties +3 -0
  605. package/src/i18n/messagebundle_sk.properties +3 -0
  606. package/src/i18n/messagebundle_sl.properties +3 -0
  607. package/src/i18n/messagebundle_sr.properties +3 -1
  608. package/src/i18n/messagebundle_sv.properties +3 -0
  609. package/src/i18n/messagebundle_tr.properties +3 -0
  610. package/src/i18n/messagebundle_uk.properties +3 -0
  611. package/src/i18n/messagebundle_zh_CN.properties +3 -1
  612. package/src/i18n/messagebundle_zh_TW.properties +3 -0
  613. package/src/themes/CountrySelector.css +11 -0
  614. package/src/themes/List.css +1 -0
  615. package/src/themes/MastheadCountrySelector.css +11 -0
  616. package/src/themes/MastheadItem.css +6 -2
  617. package/src/themes/MastheadMenuItem.css +5 -0
  618. package/src/themes/MastheadMobileMenu.css +1 -0
  619. package/src/themes/MastheadShell.css +42 -8
  620. package/src/themes/Search.css +3 -1
  621. package/src/themes/SearchableList.css +15 -0
  622. package/src/themes/SegmentedButtonItem.css +2 -2
  623. package/src/themes/TextArea.css +0 -7
  624. package/src/types/SearchableListBase.ts +6 -0
  625. package/src/utils/getEffectiveScrollbarStyle.ts +48 -0
  626. package/dist/assets/InputSuggestions-BaPMxFm1.js +0 -2
  627. package/dist/assets/bundle-C9ZlnwwH.css +0 -1
  628. package/dist/assets/bundle.esm-CoBHnkfj.js +0 -399
  629. package/dist/assets/messagebundle_ar-9zPDAqTU.js +0 -1
  630. package/dist/assets/messagebundle_bg-DWxB0fCn.js +0 -1
  631. package/dist/assets/messagebundle_cs-C_ZNAcZs.js +0 -1
  632. package/dist/assets/messagebundle_da-CRRThnbQ.js +0 -1
  633. package/dist/assets/messagebundle_de-CEztl_Bk.js +0 -1
  634. package/dist/assets/messagebundle_el-dli9W3Ld.js +0 -1
  635. package/dist/assets/messagebundle_en-DXEe5nWA.js +0 -1
  636. package/dist/assets/messagebundle_es-BKJxfGUS.js +0 -1
  637. package/dist/assets/messagebundle_et-CEgPnb-F.js +0 -1
  638. package/dist/assets/messagebundle_fi-CB9L6Ted.js +0 -1
  639. package/dist/assets/messagebundle_fr-DV0xFXy7.js +0 -1
  640. package/dist/assets/messagebundle_hr-CxG6YfU9.js +0 -1
  641. package/dist/assets/messagebundle_hu-BD5GvMh2.js +0 -1
  642. package/dist/assets/messagebundle_it-CcnIcv1Q.js +0 -1
  643. package/dist/assets/messagebundle_iw-njoSdOP-.js +0 -1
  644. package/dist/assets/messagebundle_ko-BsIdyV2m.js +0 -1
  645. package/dist/assets/messagebundle_lt-Cx5dKaVi.js +0 -1
  646. package/dist/assets/messagebundle_lv-CjYkt6X6.js +0 -1
  647. package/dist/assets/messagebundle_nl-BxcksDMG.js +0 -1
  648. package/dist/assets/messagebundle_no-6rWbHkD4.js +0 -1
  649. package/dist/assets/messagebundle_pl-CdoiDA_-.js +0 -1
  650. package/dist/assets/messagebundle_pt-DtbX15Ym.js +0 -1
  651. package/dist/assets/messagebundle_ro-C5ojQbzO.js +0 -1
  652. package/dist/assets/messagebundle_ru-BcLhFIo9.js +0 -1
  653. package/dist/assets/messagebundle_sk-B4D9Y2b-.js +0 -1
  654. package/dist/assets/messagebundle_sl-D43o0FSO.js +0 -1
  655. package/dist/assets/messagebundle_sr-Co2xNpod.js +0 -1
  656. package/dist/assets/messagebundle_sv-4hT4lgLu.js +0 -1
  657. package/dist/assets/messagebundle_tr-DxFj6Icf.js +0 -1
  658. package/dist/assets/messagebundle_uk-Sdu5cmOP.js +0 -1
  659. package/dist/assets/messagebundle_zh_CN-CuN02AOJ.js +0 -1
  660. package/dist/assets/messagebundle_zh_TW-CRXaxYip.js +0 -1
  661. package/dist/assets/parameters-bundle.css-1GGBOW8m.js +0 -2
  662. package/dist/assets/parameters-bundle.css-A9eeRg2R.js +0 -2
  663. package/dist/assets/parameters-bundle.css-COBI_9-U.js +0 -2
  664. package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +0 -2
  665. package/dist/assets/parameters-bundle.css-DuFHHRNK.js +0 -2
  666. package/dist/assets/parameters-bundle.css-Pf68NO0T.js +0 -2
  667. package/dist/assets/parameters-bundle.css-aX_t_-9o.js +0 -2
  668. package/dist/assets/parameters-bundle.css-rNSryFKH.js +0 -2
  669. package/dist/generated/templates/AccordionItemTemplate.lit.d.ts +0 -3
  670. package/dist/generated/templates/AccordionItemTemplate.lit.js +0 -8
  671. package/dist/generated/templates/AccordionItemTemplate.lit.js.map +0 -1
  672. package/dist/generated/templates/AccordionTemplate.lit.d.ts +0 -3
  673. package/dist/generated/templates/AccordionTemplate.lit.js +0 -10
  674. package/dist/generated/templates/AccordionTemplate.lit.js.map +0 -1
  675. package/dist/generated/templates/AvatarTemplate.lit.d.ts +0 -3
  676. package/dist/generated/templates/AvatarTemplate.lit.js +0 -9
  677. package/dist/generated/templates/AvatarTemplate.lit.js.map +0 -1
  678. package/dist/generated/templates/BadgeTemplate.lit.d.ts +0 -3
  679. package/dist/generated/templates/BadgeTemplate.lit.js +0 -9
  680. package/dist/generated/templates/BadgeTemplate.lit.js.map +0 -1
  681. package/dist/generated/templates/CarouselTemplate.lit.d.ts +0 -3
  682. package/dist/generated/templates/CarouselTemplate.lit.js +0 -10
  683. package/dist/generated/templates/CarouselTemplate.lit.js.map +0 -1
  684. package/dist/generated/templates/DividerTemplate.lit.d.ts +0 -3
  685. package/dist/generated/templates/DividerTemplate.lit.js +0 -7
  686. package/dist/generated/templates/DividerTemplate.lit.js.map +0 -1
  687. package/src/Accordion.hbs +0 -25
  688. package/src/AccordionItem.hbs +0 -37
  689. package/src/Avatar.hbs +0 -19
  690. package/src/Badge.hbs +0 -16
  691. package/src/Carousel.hbs +0 -45
  692. package/src/Divider.hbs +0 -1
  693. package/src/generated/templates/AccordionItemTemplate.lit.ts +0 -12
  694. package/src/generated/templates/AccordionTemplate.lit.ts +0 -14
  695. package/src/generated/templates/AvatarTemplate.lit.ts +0 -13
  696. package/src/generated/templates/BadgeTemplate.lit.ts +0 -13
  697. package/src/generated/templates/CarouselTemplate.lit.ts +0 -14
  698. package/src/generated/templates/DividerTemplate.lit.ts +0 -11
@@ -17,18 +17,30 @@ import { isLeft, isRight, isSpace, isEnter, isEscape, } from "@ui5/webcomponents
17
17
  import "@ui5/webcomponents-icons/dist/decline.js";
18
18
  import "@ui5/webcomponents-icons/dist/menu2.js";
19
19
  import "@ui5/webcomponents-icons/dist/search.js";
20
+ import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
20
21
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
21
22
  import { MAIN_LINKS } from "./generated/i18n/i18n-defaults.js";
22
23
  import UDExMastheadItem, { UDExMastheadDropdownItemAction } from "./MastheadItem.js";
23
24
  import UDExMastheadMenu from "./MastheadMenu.js";
24
25
  import UDExControlButton from "./ControlButton.js";
25
26
  import UDExMastheadMobileMenu from "./MastheadMobileMenu.js";
26
- import MastheadShellTemplate from "./generated/templates/MastheadShellTemplate.lit.js";
27
27
  import { BreakpointUtils } from "./utils/Breakpoints.js";
28
28
  import AnalyticsName from "./types/AnalyticsName.js";
29
+ import MastheadShellTemplate from "./generated/templates/MastheadShellTemplate.lit.js";
29
30
  // Styles
30
31
  import MastheadShellCss from "./generated/themes/MastheadShell.css.js";
31
32
  const canvasContentFont = "16px '72 Brand Variable'";
33
+ export var UDExMastheadVariable;
34
+ (function (UDExMastheadVariable) {
35
+ UDExMastheadVariable["mobileMenuHeight"] = "--udex-masthead-shell-mobile-menu-height";
36
+ UDExMastheadVariable["itemButtonIconSize"] = "--udex-masthead-item-button-icon-size";
37
+ UDExMastheadVariable["itemArrowIconSize"] = "--udex-masthead-item-arrow-icon-size";
38
+ UDExMastheadVariable["rightMenuPadding"] = "--udex-masthead-right-menu-padding";
39
+ UDExMastheadVariable["exploreMargin"] = "--udex-masthead-shell-explore-margin";
40
+ UDExMastheadVariable["itemIconGap"] = "--udex-masthead-shell-item-icon-gap";
41
+ UDExMastheadVariable["mastheadHeight"] = "--udex-masthead-shell-height";
42
+ UDExMastheadVariable["itemGap"] = "--udex-masthead-shell-item-gap";
43
+ })(UDExMastheadVariable || (UDExMastheadVariable = {}));
32
44
  /**
33
45
  * @class
34
46
  *
@@ -49,62 +61,6 @@ const canvasContentFont = "16px '72 Brand Variable'";
49
61
  let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI5Element {
50
62
  constructor() {
51
63
  super();
52
- /**
53
- * Defines URL for site label. It will be used as a link on a logo and a site label
54
- *
55
- * @default ""
56
- * @public
57
- */
58
- this.siteLabelUrl = "";
59
- /**
60
- * Defines the Logo image URL
61
- *
62
- * @default ""
63
- * @public
64
- */
65
- this.logoUrl = "";
66
- /**
67
- * Defines the Logo default title
68
- *
69
- * @default ""
70
- * @public
71
- */
72
- this.logoTitle = "";
73
- /**
74
- * Defines a site label. It will be displayed next to a logo.
75
- *
76
- * @default ""
77
- * @public
78
- */
79
- this.siteLabel = "";
80
- /**
81
- * Defines an alt text for logo
82
- *
83
- * @default ""
84
- * @public
85
- */
86
- this.logoAlt = "";
87
- /**
88
- * Defines an accessible name for close icon for the search bar
89
- *
90
- * @default ""
91
- * @public
92
- */
93
- this.closeButtonAccessibleName = "";
94
- /**
95
- * Defines an aria label for the homepage link
96
- *
97
- * @default ""
98
- * @public
99
- */
100
- this.homepageAriaLabel = "";
101
- /**
102
- * Defines an aria label for the site label
103
- *
104
- * @default ""
105
- * @public
106
- */
107
- this.siteLabelAriaLabel = "";
108
64
  this._handleResizeBound = this._handleResize.bind(this);
109
65
  }
110
66
  onBeforeRendering() {
@@ -122,9 +78,13 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
122
78
  if (this._closeBtnClicked) {
123
79
  this.focusSearchBtn();
124
80
  }
81
+ this.updateVisibility();
125
82
  }
126
83
  onEnterDOM() {
127
84
  ResizeHandler.register(this, this._handleResizeBound);
85
+ if (isDesktop()) {
86
+ this.setAttribute("desktop", "");
87
+ }
128
88
  }
129
89
  onExitDOM() {
130
90
  ResizeHandler.deregister(this, this._handleResizeBound);
@@ -160,6 +120,7 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
160
120
  else {
161
121
  this.removeMobileMode();
162
122
  }
123
+ this._isVisible = true;
163
124
  }
164
125
  }
165
126
  handleKeyDown(e) {
@@ -206,6 +167,9 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
206
167
  handleSiteLabelClick(e) {
207
168
  this.fireMastheadEvent("site-label-click", e);
208
169
  }
170
+ handleCoBrandClick(e) {
171
+ this.fireMastheadEvent("co-brand-click", e);
172
+ }
209
173
  handleSearchClick(e) {
210
174
  e.stopPropagation();
211
175
  this.fireMastheadEvent("search-click", e);
@@ -237,7 +201,7 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
237
201
  if (this.bodyOverflow) {
238
202
  this.setOverflowBody();
239
203
  }
240
- this.fireDecoratorEvent("mobile-menu-open");
204
+ this.fireMastheadEvent("mobile-menu-open");
241
205
  }
242
206
  handleCloseSearch(e) {
243
207
  this._closeBtnClicked = true;
@@ -321,24 +285,34 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
321
285
  const itemsIcon = [...this.shadowRoot.querySelectorAll(".udex-masthead-shell__item_icon")];
322
286
  const itemIconWidths = itemsIcon.length * this.getItemIconWidth();
323
287
  const itemIconGaps = itemsIcon.length * this.getItemIconGap();
324
- const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(this.exploreSAP[0]) : 0;
288
+ const exploreItem = this.exploreSAP[0];
289
+ const exploreItemIconWidth = exploreItem.hasArrowDown ? this.getItemArrowIconWidth() : 0;
290
+ const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(exploreItem) : 0;
325
291
  const rightMenuGaps = this.getRightMenuGap() + this.getExploreSapBtnGap() + itemIconGaps;
326
- return exploreSAPWidth + itemIconWidths + rightMenuGaps;
292
+ return exploreSAPWidth + exploreItemIconWidth + itemIconWidths + rightMenuGaps;
327
293
  }
328
- getItemIconWidth() {
294
+ getItemIconSize(cssVariableName) {
329
295
  const item = this.querySelector("[udex-masthead-item]");
330
296
  if (!item) {
331
297
  return 0;
332
298
  }
333
299
  const style = window.getComputedStyle(item);
334
- const itemIconWidthVar = style.getPropertyValue("--udex-masthead-item-button-icon-size");
335
- return parseInt(itemIconWidthVar);
300
+ const iconSizeVar = style.getPropertyValue(cssVariableName);
301
+ return parseInt(iconSizeVar);
302
+ }
303
+ getItemIconWidth() {
304
+ return this.getItemIconSize(UDExMastheadVariable.itemButtonIconSize);
305
+ }
306
+ getItemArrowIconWidth() {
307
+ return this.getItemIconSize(UDExMastheadVariable.itemArrowIconSize);
336
308
  }
337
309
  getMainMenuWidth() {
338
310
  const mainItems = this.getSlottedNodes("menuItems");
339
- const gapItemVar = this.getRootVar("--udex-masthead-shell-item-gap");
311
+ const gapItemVar = this.getRootVar(UDExMastheadVariable.itemGap);
340
312
  return mainItems.reduce((accumulatedWidth, item, index) => {
341
- return accumulatedWidth + this.getItemWidth(item) + (index && parseInt(gapItemVar));
313
+ const mainItem = item;
314
+ const arrowIconWidth = mainItem.hasArrowDown ? this.getItemArrowIconWidth() : 0;
315
+ return accumulatedWidth + this.getItemWidth(mainItem) + (index && parseInt(gapItemVar) + arrowIconWidth);
342
316
  }, 0);
343
317
  }
344
318
  getDomElement(selector) {
@@ -354,15 +328,15 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
354
328
  return canvas.getContext("2d");
355
329
  }
356
330
  getItemIconGap() {
357
- const gapIconItemVar = this.getRootVar("--udex-masthead-shell-item-icon-gap");
331
+ const gapIconItemVar = this.getRootVar(UDExMastheadVariable.itemIconGap);
358
332
  return parseInt(gapIconItemVar);
359
333
  }
360
334
  getExploreSapBtnGap() {
361
- const exploreSapBtnGapVar = this.getRootVar("--udex-masthead-shell-explore-margin");
335
+ const exploreSapBtnGapVar = this.getRootVar(UDExMastheadVariable.exploreMargin);
362
336
  return this.hasExploreSAP ? parseInt(exploreSapBtnGapVar) : 0;
363
337
  }
364
338
  getRightMenuGap() {
365
- const rightMenuGapVar = this.getRootVar("--udex-masthead-right-menu-padding");
339
+ const rightMenuGapVar = this.getRootVar(UDExMastheadVariable.rightMenuPadding);
366
340
  return parseInt(rightMenuGapVar);
367
341
  }
368
342
  getRootVar(variableName) {
@@ -389,9 +363,9 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
389
363
  });
390
364
  }
391
365
  setMobileMenuHeight() {
392
- const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue("--udex-masthead-shell-height"));
366
+ const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue(UDExMastheadVariable.mastheadHeight));
393
367
  const mobileMenuHeight = `${window.innerHeight - mastheadHeight}px`;
394
- this.style.setProperty("--udex-masthead-shell-mobile-menu-height", mobileMenuHeight);
368
+ this.style.setProperty(UDExMastheadVariable.mobileMenuHeight, mobileMenuHeight);
395
369
  }
396
370
  removeMobileMode() {
397
371
  this._isMobileMode = false;
@@ -399,6 +373,9 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
399
373
  item?.removeAttribute("_is-mobile-mode");
400
374
  });
401
375
  }
376
+ updateVisibility() {
377
+ this.style.opacity = this.isVisible ? "1" : "0";
378
+ }
402
379
  fireMastheadEvent(eventName, e) {
403
380
  const eventDetails = {
404
381
  analyticsName: AnalyticsName.Header,
@@ -458,7 +435,7 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
458
435
  if (this.bodyOverflow) {
459
436
  this.removeOverflowBody();
460
437
  }
461
- this.fireDecoratorEvent("mobile-menu-close");
438
+ this.fireMastheadEvent("mobile-menu-close");
462
439
  }
463
440
  get slottedItems() {
464
441
  return [
@@ -539,17 +516,33 @@ let UDExMastheadShell = UDExMastheadShell_1 = class UDExMastheadShell extends UI
539
516
  return this._isMobileMode || this.isAtMostBreakpointSizeM;
540
517
  }
541
518
  get isMainMenuVisible() {
542
- return !this.showSearchByDefault && !this._isSearchOpened;
519
+ return !this.showSearchByDefault && !this._isSearchOpened && !!this.menuItems.length;
543
520
  }
544
521
  get isSearchVisible() {
545
522
  return this.showSearchByDefault || this._isSearchOpened;
546
523
  }
524
+ get isVisible() {
525
+ return this.isMobileMenuMode || !this.menuItems.length || this._isVisible;
526
+ }
547
527
  get shouldHandleMobileView() {
548
- return !this.isAtMostBreakpointSizeM && !this.showSearchByDefault;
528
+ return !this.isAtMostBreakpointSizeM && this.isMainMenuVisible;
549
529
  }
550
530
  get mainNavigationAriaLabel() {
551
531
  return UDExMastheadShell_1.i18nBundle.getText(MAIN_LINKS);
552
532
  }
533
+ get isSimpleExploreMode() {
534
+ return !this.hasSearch && !this.hasProfile && !this.hasCart && !this.hasSupport && !this.hasCountrySelector;
535
+ }
536
+ get rightMenuClass() {
537
+ const root = "udex-masthead-shell__right-menu";
538
+ const simpleExploreClass = this.isSimpleExploreMode ? `${root}_simple-explore` : "";
539
+ return `${root} ${simpleExploreClass}`.trim();
540
+ }
541
+ get mainClass() {
542
+ const root = "udex-masthead-shell";
543
+ const coBrandWithoutNavClass = (!!this.coBrandImage && !this.menuItems.length) ? `${root}_co-brand-without-nav` : "";
544
+ return `${root} ${coBrandWithoutNavClass}`.trim();
545
+ }
553
546
  };
554
547
  __decorate([
555
548
  slot({ type: Node })
@@ -576,10 +569,10 @@ __decorate([
576
569
  slot({ type: HTMLElement })
577
570
  ], UDExMastheadShell.prototype, "support", void 0);
578
571
  __decorate([
579
- property({ type: String })
572
+ property()
580
573
  ], UDExMastheadShell.prototype, "homeUrl", void 0);
581
574
  __decorate([
582
- property({ type: String })
575
+ property()
583
576
  ], UDExMastheadShell.prototype, "siteLabelUrl", void 0);
584
577
  __decorate([
585
578
  property({ type: Boolean })
@@ -590,26 +583,44 @@ __decorate([
590
583
  __decorate([
591
584
  property({ type: Boolean })
592
585
  ], UDExMastheadShell.prototype, "stickyPosition", void 0);
586
+ __decorate([
587
+ property()
588
+ ], UDExMastheadShell.prototype, "coBrandImage", void 0);
593
589
  __decorate([
594
590
  property({ type: String })
591
+ ], UDExMastheadShell.prototype, "coBrandAlt", void 0);
592
+ __decorate([
593
+ property()
594
+ ], UDExMastheadShell.prototype, "coBrandUrl", void 0);
595
+ __decorate([
596
+ property()
597
+ ], UDExMastheadShell.prototype, "coBrandTitle", void 0);
598
+ __decorate([
599
+ property()
600
+ ], UDExMastheadShell.prototype, "coBrandAriaLabel", void 0);
601
+ __decorate([
602
+ property()
595
603
  ], UDExMastheadShell.prototype, "logoUrl", void 0);
596
604
  __decorate([
597
- property({ type: String })
605
+ property()
598
606
  ], UDExMastheadShell.prototype, "logoTitle", void 0);
599
607
  __decorate([
600
- property({ type: String })
608
+ property()
609
+ ], UDExMastheadShell.prototype, "siteLabelTitle", void 0);
610
+ __decorate([
611
+ property()
601
612
  ], UDExMastheadShell.prototype, "siteLabel", void 0);
602
613
  __decorate([
603
- property({ type: String })
614
+ property()
604
615
  ], UDExMastheadShell.prototype, "logoAlt", void 0);
605
616
  __decorate([
606
- property({ type: String })
617
+ property()
607
618
  ], UDExMastheadShell.prototype, "closeButtonAccessibleName", void 0);
608
619
  __decorate([
609
- property({ type: String })
620
+ property()
610
621
  ], UDExMastheadShell.prototype, "homepageAriaLabel", void 0);
611
622
  __decorate([
612
- property({ type: String })
623
+ property()
613
624
  ], UDExMastheadShell.prototype, "siteLabelAriaLabel", void 0);
614
625
  __decorate([
615
626
  property({ type: Boolean })
@@ -725,6 +736,13 @@ UDExMastheadShell = UDExMastheadShell_1 = __decorate([
725
736
  */
726
737
  ,
727
738
  event("site-label-click", { bubbles: true })
739
+ /**
740
+ * Fired event when the user clicks the co-brand.
741
+ *
742
+ * @public
743
+ */
744
+ ,
745
+ event("co-brand-click", { bubbles: true })
728
746
  ], UDExMastheadShell);
729
747
  UDExMastheadShell.define();
730
748
  export default UDExMastheadShell;
@@ -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.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.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 isLeft, isRight, 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 i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { MAIN_LINKS } 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 MastheadShellTemplate from \"./generated/templates/MastheadShellTemplate.lit.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport AnalyticsName from \"./types/AnalyticsName.js\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst canvasContentFont = \"16px '72 Brand Variable'\";\ntype MastheadSlottedItem = UDExMastheadItem | UDExMastheadProfileMenu | UDExMastheadMenu | UDExMastheadCountrySelector | undefined | null;\ntype MastheadItemType = UDExMastheadItem | null | undefined;\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 */\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 */\n@event(\"mobile-menu-close\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n */\n@event(\"search-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search close button.\n *\n * @public\n */\n@event(\"search-close-click\", { bubbles: true })\n\n/**\n * Fired event when the search panel is opened.\n *\n * @public\n */\n@event(\"search-opened\", { bubbles: true })\n\n/**\n * Fired event when the search panel is closed.\n *\n * @public\n */\n@event(\"search-closed\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n */\n@event(\"cart-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the support button trigger.\n *\n * @public\n */\n@event(\"support-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\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 */\n@event(\"country-selector-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n */\n@event(\"logo-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n */\n@event(\"site-label-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 \"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 };\n /**\n * Slot for country selector item.\n *\n * @public\n */\n @slot({ type: Node })\n countrySelector!: Array<UDExMastheadItem>;\n\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Array<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: Array<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!: Array<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Array<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Array<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Array<UDExMastheadItem>;\n\n /**\n * Slot for support\n *\n * @public\n */\n @slot({ type: HTMLElement })\n support!: Array<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({ type: String })\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 \"\"\n * @public\n */\n @property({ type: String })\n siteLabelUrl: string = \"\";\n\n /**\n * Defines overflow style for the body after clicking mobile menu opener button\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines the visibility of the Search by default.\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n showSearchByDefault!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n stickyPosition!: boolean;\n\n /**\n * Defines the Logo image URL\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoUrl: string = \"\";\n\n /**\n * Defines the Logo default title\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoTitle: string = \"\";\n\n /**\n * Defines a site label. It will be displayed next to a logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n siteLabel: string = \"\";\n\n /**\n * Defines an alt text for logo\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoAlt: string = \"\";\n\n /**\n * Defines an accessible name for close icon for the search bar\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n closeButtonAccessibleName: string = \"\";\n /**\n * Defines an aria label for the homepage link\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n homepageAriaLabel: string = \"\";\n\n /**\n * Defines an aria label for the site label\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\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 _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.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._mobileMenu = this.mastheadMobileMenu;\n\n if (this._isSearchOpened) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\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 }\n\n this._shouldHandleResize = true;\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 }\n\n handleKeyDown(e: KeyboardEvent): void {\n e.stopPropagation();\n this.handleLeftArrow(e);\n this.handleRightArrow(e);\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 handleLeftArrow(e: KeyboardEvent): void {\n if (isLeft(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n if (currentItem.selected) {\n currentItem.closeDropdown();\n }\n this.focusPreviousMenuItem(currentItem);\n }\n }\n }\n\n handleRightArrow(e: KeyboardEvent): void {\n if (isRight(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n if (currentItem.selected) {\n currentItem.closeDropdown();\n }\n this.focusNextMenuItem(currentItem);\n }\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 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 }\n\n handleProfileClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"profile-click\", e);\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 }\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.fireDecoratorEvent(\"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 }\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 searchSlot = this.querySelector<UDExSearch>(\"[udex-search]\");\n if (searchSlot) {\n const input = searchSlot.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n }\n\n focusPreviousMenuItem(item: UDExMastheadItem): void {\n const menuItems = this.menuItems;\n const lastItemIndex = menuItems.length - 1;\n const currentSelectedIndex = this.getCurrentIndex(item);\n const previousSelectIndex = currentSelectedIndex - 1 < 0 ? lastItemIndex : currentSelectedIndex - 1;\n menuItems[previousSelectIndex].focus();\n }\n\n focusNextMenuItem(item: UDExMastheadItem): void {\n const menuItems = this.menuItems;\n const currentSelectedIndex = this.getCurrentIndex(item);\n const nextSelectIndex = currentSelectedIndex + 1 > menuItems.length - 1 ? 0 : currentSelectedIndex + 1;\n menuItems[nextSelectIndex].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 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 getCurrentIndex(item: UDExMastheadItem): number {\n return this.menuItems.indexOf(item);\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\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 exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(this.exploreSAP[0]) : 0;\n const rightMenuGaps = this.getRightMenuGap() + this.getExploreSapBtnGap() + itemIconGaps;\n return exploreSAPWidth + itemIconWidths + rightMenuGaps;\n }\n\n getItemIconWidth(): number {\n const item = this.querySelector(\"[udex-masthead-item]\");\n\n if (!item) { return 0; }\n\n const style = window.getComputedStyle(item);\n const itemIconWidthVar = style.getPropertyValue(\"--udex-masthead-item-button-icon-size\");\n return parseInt(itemIconWidthVar);\n }\n\n getMainMenuWidth(): number {\n const mainItems = this.getSlottedNodes(\"menuItems\");\n const gapItemVar = this.getRootVar(\"--udex-masthead-shell-item-gap\");\n return mainItems.reduce((accumulatedWidth, item, index) => {\n return accumulatedWidth + this.getItemWidth(item as UDExMastheadItem) + (index && parseInt(gapItemVar));\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(\"--udex-masthead-shell-item-icon-gap\");\n return parseInt(gapIconItemVar);\n }\n\n getExploreSapBtnGap(): number {\n const exploreSapBtnGapVar = this.getRootVar(\"--udex-masthead-shell-explore-margin\");\n return this.hasExploreSAP ? parseInt(exploreSapBtnGapVar) : 0;\n }\n\n getRightMenuGap(): number {\n const rightMenuGapVar = this.getRootVar(\"--udex-masthead-right-menu-padding\");\n return parseInt(rightMenuGapVar);\n }\n\n getRootVar(variableName: string): string {\n return window.getComputedStyle(this.getDomRef()!).getPropertyValue(`${variableName}`);\n }\n\n isNavigationItem(item: UDExMastheadItem): boolean {\n return this.menuItems.some(menuItem => menuItem === item);\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(\"--udex-masthead-shell-height\"));\n const mobileMenuHeight = `${window.innerHeight - mastheadHeight}px`;\n this.style.setProperty(\"--udex-masthead-shell-mobile-menu-height\", mobileMenuHeight);\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 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 /**\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 /**\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._isMobileMenuOpen = false;\n this._mobileMenu?.showFirstLevelMenu();\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n\n this.fireDecoratorEvent(\"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.profileMenu,\n this.profileMenuLinks,\n this.countrySelectorItem,\n this.countrySelectorMenu,\n ];\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 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;\n }\n\n get isSearchVisible(): boolean {\n return this.showSearchByDefault || this._isSearchOpened;\n }\n\n get shouldHandleMobileView(): boolean {\n return !this.isAtMostBreakpointSizeM && !this.showSearchByDefault;\n }\n\n get mainNavigationAriaLabel(): string {\n return UDExMastheadShell.i18nBundle.getText(MAIN_LINKS);\n }\n}\n\nUDExMastheadShell.define();\n\nexport default UDExMastheadShell;\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.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.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 isLeft, isRight, 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 } 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\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst canvasContentFont = \"16px '72 Brand Variable'\";\ntype MastheadSlottedItem = UDExMastheadItem | UDExMastheadProfileMenu | UDExMastheadMenu | UDExMastheadCountrySelector | undefined | null;\ntype MastheadItemType = UDExMastheadItem | null | undefined;\n\ntype UDExMastheadShellBaseEventDetail = {\n originalEvent: PointerEvent,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n item?: UDExMastheadItem,\n}\n\ntype UDExMastheadShellAnalyticsNameEventDetail = {\n analyticsName: AnalyticsName,\n}\n\nexport enum UDExMastheadVariable {\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\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 */\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 */\n@event(\"mobile-menu-close\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n */\n@event(\"search-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the search close button.\n *\n * @public\n */\n@event(\"search-close-click\", { bubbles: true })\n\n/**\n * Fired event when the search panel is opened.\n *\n * @public\n */\n@event(\"search-opened\", { bubbles: true })\n\n/**\n * Fired event when the search panel is closed.\n *\n * @public\n */\n@event(\"search-closed\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n */\n@event(\"cart-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the support button trigger.\n *\n * @public\n */\n@event(\"support-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\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 */\n@event(\"country-selector-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n */\n@event(\"logo-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n */\n@event(\"site-label-click\", { bubbles: true })\n\n/**\n * Fired event when the user clicks the co-brand.\n *\n * @public\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 \"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!: Array<UDExMastheadItem>;\n\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Array<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: Array<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!: Array<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Array<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Array<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Array<UDExMastheadItem>;\n\n /**\n * Slot for support\n *\n * @public\n */\n @slot({ type: HTMLElement })\n support!: Array<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 \"\"\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines the visibility of the Search by default.\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n showSearchByDefault!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default \"\"\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 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 _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n _isVisible!: boolean;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.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._mobileMenu = this.mastheadMobileMenu;\n\n if (this._isSearchOpened) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n\n this.updateVisibility();\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\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 }\n\n this._shouldHandleResize = true;\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 this.handleLeftArrow(e);\n this.handleRightArrow(e);\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 handleLeftArrow(e: KeyboardEvent): void {\n if (isLeft(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n if (currentItem.selected) {\n currentItem.closeDropdown();\n }\n this.focusPreviousMenuItem(currentItem);\n }\n }\n }\n\n handleRightArrow(e: KeyboardEvent): void {\n if (isRight(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n if (currentItem.selected) {\n currentItem.closeDropdown();\n }\n this.focusNextMenuItem(currentItem);\n }\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 }\n\n handleProfileClick(e: PointerEvent): void {\n e.stopPropagation();\n this.fireMastheadEvent(\"profile-click\", e);\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 }\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 }\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 searchSlot = this.querySelector<UDExSearch>(\"[udex-search]\");\n if (searchSlot) {\n const input = searchSlot.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n }\n\n focusPreviousMenuItem(item: UDExMastheadItem): void {\n const menuItems = this.menuItems;\n const lastItemIndex = menuItems.length - 1;\n const currentSelectedIndex = this.getCurrentIndex(item);\n const previousSelectIndex = currentSelectedIndex - 1 < 0 ? lastItemIndex : currentSelectedIndex - 1;\n menuItems[previousSelectIndex].focus();\n }\n\n focusNextMenuItem(item: UDExMastheadItem): void {\n const menuItems = this.menuItems;\n const currentSelectedIndex = this.getCurrentIndex(item);\n const nextSelectIndex = currentSelectedIndex + 1 > menuItems.length - 1 ? 0 : currentSelectedIndex + 1;\n menuItems[nextSelectIndex].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 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 getCurrentIndex(item: UDExMastheadItem): number {\n return this.menuItems.indexOf(item);\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\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 exploreItemIconWidth = exploreItem.hasArrowDown ? 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 return this.getItemIconSize(UDExMastheadVariable.itemArrowIconSize);\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 arrowIconWidth = mainItem.hasArrowDown ? 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 isNavigationItem(item: UDExMastheadItem): boolean {\n return this.menuItems.some(menuItem => menuItem === item);\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 mobileMenuHeight = `${window.innerHeight - mastheadHeight}px`;\n this.style.setProperty(UDExMastheadVariable.mobileMenuHeight, mobileMenuHeight);\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 /**\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 /**\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._isMobileMenuOpen = false;\n this._mobileMenu?.showFirstLevelMenu();\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.profileMenu,\n this.profileMenuLinks,\n this.countrySelectorItem,\n this.countrySelectorMenu,\n ];\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 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 mainNavigationAriaLabel(): string {\n return UDExMastheadShell.i18nBundle.getText(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;\n"]}
package/dist/Modal.js CHANGED
@@ -10,10 +10,10 @@ import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
10
10
  import Dialog from "@ui5/webcomponents/dist/Dialog.js";
11
11
  import Popup from "@ui5/webcomponents/dist/Popup.js";
12
12
  // Styles
13
- import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
14
13
  import PopupsCommonCss from "@ui5/webcomponents/dist/generated/themes/PopupsCommon.css.js";
15
14
  import dialogCSS from "@ui5/webcomponents/dist/generated/themes/Dialog.css.js";
16
15
  import ModalCss from "./generated/themes/Modal.css.js";
16
+ import getEffectiveScrollbarStyle from "./utils/getEffectiveScrollbarStyle.js";
17
17
  export var UDExModalType;
18
18
  (function (UDExModalType) {
19
19
  UDExModalType["default"] = "default";
@@ -54,10 +54,10 @@ UDExModal = __decorate([
54
54
  renderer: jsxRenderer,
55
55
  styles: [
56
56
  Popup.styles,
57
- getEffectiveScrollbarStyle(),
58
57
  PopupsCommonCss,
59
58
  dialogCSS,
60
59
  ModalCss,
60
+ getEffectiveScrollbarStyle(),
61
61
  ],
62
62
  })
63
63
  ], UDExModal);
package/dist/Modal.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,KAAK,MAAM,kCAAkC,CAAC;AAErD,SAAS;AACT,OAAO,0BAA0B,MAAM,iEAAiE,CAAC;AACzG,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAC3F,OAAO,SAAS,MAAM,wDAAwD,CAAC;AAC/E,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAEvD,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACjB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;;;;;;;;;;;GAWG;AAYH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,MAAM;IAA9B;;QACE;;;;;;;UAOE;QAEA,SAAI,GAAuB,aAAa,CAAC,OAAO,CAAC;IACrD,CAAC;CAAA,CAAA;AADG;IADD,QAAQ,EAAE;uCACwC;AAV/C,SAAS;IAXd,aAAa,CAAC;QACb,GAAG,EAAE,YAAY;QACjB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE;YACN,KAAK,CAAC,MAAM;YACZ,0BAA0B,EAAE;YAC5B,eAAe;YACf,SAAS;YACT,QAAQ;SACT;KACF,CAAC;GACI,SAAS,CAWd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport Dialog from \"@ui5/webcomponents/dist/Dialog.js\";\nimport Popup from \"@ui5/webcomponents/dist/Popup.js\";\n\n// Styles\nimport getEffectiveScrollbarStyle from \"@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js\";\nimport PopupsCommonCss from \"@ui5/webcomponents/dist/generated/themes/PopupsCommon.css.js\";\nimport dialogCSS from \"@ui5/webcomponents/dist/generated/themes/Dialog.css.js\";\nimport ModalCss from \"./generated/themes/Modal.css.js\";\n\nexport enum UDExModalType {\n default = \"default\",\n basic = \"basic\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-modal</code> component is a demo component that displays some text.\n *\n * @constructor\n * @extends Dialog\n * @tagname udex-modal\n * @public\n */\n@customElement({\n tag: \"udex-modal\",\n renderer: jsxRenderer,\n styles: [\n Popup.styles,\n getEffectiveScrollbarStyle(),\n PopupsCommonCss,\n dialogCSS,\n ModalCss,\n ],\n})\nclass UDExModal extends Dialog {\n /**\n * Defines modal display type\n * <br><br>\n * <b>Note:</b> The <code>basic</code> type is simplified version of styling.\n *\n * @public\n * @default \"default\"\n */\n @property()\n type: `${UDExModalType}` = UDExModalType.default;\n}\n\nUDExModal.define();\n\nexport default UDExModal;\n"]}
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,KAAK,MAAM,kCAAkC,CAAC;AAErD,SAAS;AACT,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAC3F,OAAO,SAAS,MAAM,wDAAwD,CAAC;AAC/E,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AACvD,OAAO,0BAA0B,MAAM,uCAAuC,CAAC;AAE/E,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACjB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;;;;;;;;;;;GAWG;AAYH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,MAAM;IAA9B;;QACE;;;;;;;UAOE;QAEA,SAAI,GAAuB,aAAa,CAAC,OAAO,CAAC;IACrD,CAAC;CAAA,CAAA;AADG;IADD,QAAQ,EAAE;uCACwC;AAV/C,SAAS;IAXd,aAAa,CAAC;QACb,GAAG,EAAE,YAAY;QACjB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE;YACN,KAAK,CAAC,MAAM;YACZ,eAAe;YACf,SAAS;YACT,QAAQ;YACR,0BAA0B,EAAE;SAC7B;KACF,CAAC;GACI,SAAS,CAWd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport Dialog from \"@ui5/webcomponents/dist/Dialog.js\";\nimport Popup from \"@ui5/webcomponents/dist/Popup.js\";\n\n// Styles\nimport PopupsCommonCss from \"@ui5/webcomponents/dist/generated/themes/PopupsCommon.css.js\";\nimport dialogCSS from \"@ui5/webcomponents/dist/generated/themes/Dialog.css.js\";\nimport ModalCss from \"./generated/themes/Modal.css.js\";\nimport getEffectiveScrollbarStyle from \"./utils/getEffectiveScrollbarStyle.js\";\n\nexport enum UDExModalType {\n default = \"default\",\n basic = \"basic\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-modal</code> component is a demo component that displays some text.\n *\n * @constructor\n * @extends Dialog\n * @tagname udex-modal\n * @public\n */\n@customElement({\n tag: \"udex-modal\",\n renderer: jsxRenderer,\n styles: [\n Popup.styles,\n PopupsCommonCss,\n dialogCSS,\n ModalCss,\n getEffectiveScrollbarStyle(),\n ],\n})\nclass UDExModal extends Dialog {\n /**\n * Defines modal display type\n * <br><br>\n * <b>Note:</b> The <code>basic</code> type is simplified version of styling.\n *\n * @public\n * @default \"default\"\n */\n @property()\n type: `${UDExModalType}` = UDExModalType.default;\n}\n\nUDExModal.define();\n\nexport default UDExModal;\n"]}
package/dist/Search.js CHANGED
@@ -16,7 +16,6 @@ import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
16
16
  import Popover from "@ui5/webcomponents/dist/Popover.js";
17
17
  import { isEnter, isTabNext, isTabPrevious, isUp, isDown, isEscape, isSpace, } from "@ui5/webcomponents-base/dist/Keys.js";
18
18
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
19
- import Button from "@ui5/webcomponents/dist/Button.js";
20
19
  import Icon from "@ui5/webcomponents/dist/Icon.js";
21
20
  import List from "./List.js";
22
21
  import ControlButton from "./ControlButton.js";
@@ -27,11 +26,13 @@ import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
27
26
  import debounce from "./utils/debounce.js";
28
27
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
29
28
  import { SUGGESTED_TEXT, RECOMMENDED_TEXT, AVAILABLE_VALUES, NO_MATCHES_FOUND, ACCESSIBLE_NAME_RESET_ICON, ACCESSIBLE_NAME_SEARCH_ICON, TOOLTIP_RESET_BUTTON, TOOLTIP_VOICE_BUTTON, TOOLTIP_SUBMIT_BUTTON, LISTENING, OF, } from "./generated/i18n/i18n-defaults.js";
29
+ import retryUntilSuccessful from "./utils/retryUntilSuccessful.js";
30
+ import UDExButton from "./Button.js";
30
31
  import SearchTemplate from "./generated/templates/SearchTemplate.lit.js";
31
32
  // Styles
32
33
  import SearchCss from "./generated/themes/Search.css.js";
33
34
  import SearchSuggestionsCss from "./generated/themes/SearchSuggestions.css.js";
34
- import retryUntilSuccessful from "./utils/retryUntilSuccessful.js";
35
+ import getEffectiveScrollbarStyle from "./utils/getEffectiveScrollbarStyle.js";
35
36
  const SearchIcon = "sap-icon://search";
36
37
  const SuggestionsPopoverId = "suggestions-popover";
37
38
  export var Mode;
@@ -944,11 +945,11 @@ UDExSearch = UDExSearch_1 = __decorate([
944
945
  customElement({
945
946
  tag: "udex-search",
946
947
  renderer: litRender,
947
- styles: [SearchCss, SearchSuggestionsCss],
948
+ styles: [SearchCss, SearchSuggestionsCss, getEffectiveScrollbarStyle()],
948
949
  template: SearchTemplate,
949
950
  get dependencies() {
950
951
  const Suggestion = getFeature("SearchInputSuggestion");
951
- return [ControlButton, Button, Icon, List, Popover].concat(Suggestion ? [...Suggestion.dependencies] : []);
952
+ return [ControlButton, UDExButton, Icon, List, Popover].concat(Suggestion ? [...Suggestion.dependencies] : []);
952
953
  },
953
954
  })
954
955
  /**