@skodaflow/web-library 8.1.0 → 8.3.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 (490) hide show
  1. package/cjs/components/advancedTable/agGrid.js +1 -1
  2. package/cjs/components/advancedTable/agGrid.js.map +1 -1
  3. package/cjs/components/advancedTable/agGridSkodaTheme.js +1 -1
  4. package/cjs/components/advancedTable/agGridSkodaTheme.js.map +1 -1
  5. package/cjs/components/banner/Banner.js +1 -1
  6. package/cjs/components/banner/Banner.js.map +1 -1
  7. package/cjs/components/bottomSheet/BottomSheet.js +1 -1
  8. package/cjs/components/bottomSheet/BottomSheet.js.map +1 -1
  9. package/cjs/components/bypassBlock/BypassBlock.js +1 -1
  10. package/cjs/components/bypassBlock/BypassBlock.js.map +1 -1
  11. package/cjs/components/carousel/Autoplay.d.ts +7 -2
  12. package/cjs/components/carousel/Autoplay.js +1 -1
  13. package/cjs/components/carousel/Autoplay.js.map +1 -1
  14. package/cjs/components/carousel/Carousel.js +1 -1
  15. package/cjs/components/carousel/Carousel.js.map +1 -1
  16. package/cjs/components/carousel/Navigation.js +1 -1
  17. package/cjs/components/carousel/Navigation.js.map +1 -1
  18. package/cjs/components/carousel/Pagination.d.ts +6 -6
  19. package/cjs/components/carousel/Pagination.js +1 -1
  20. package/cjs/components/carousel/Pagination.js.map +1 -1
  21. package/cjs/components/carousel/Slide.js +1 -1
  22. package/cjs/components/carousel/Slide.js.map +1 -1
  23. package/cjs/components/carousel/hooks.js +1 -1
  24. package/cjs/components/carousel/hooks.js.map +1 -1
  25. package/cjs/components/errorContent/ErrorContent.js +1 -1
  26. package/cjs/components/errorContent/ErrorContent.js.map +1 -1
  27. package/cjs/components/flag/FlowFlag.js +1 -1
  28. package/cjs/components/flag/FlowFlag.js.map +1 -1
  29. package/cjs/components/footer/Footer.js +1 -1
  30. package/cjs/components/footer/Footer.js.map +1 -1
  31. package/cjs/components/footer/FooterAccordion.js +1 -1
  32. package/cjs/components/footer/FooterAccordion.js.map +1 -1
  33. package/cjs/components/footer/FooterLink.js +1 -1
  34. package/cjs/components/footer/FooterLink.js.map +1 -1
  35. package/cjs/components/footer/FooterMenu.js +1 -1
  36. package/cjs/components/footer/FooterMenu.js.map +1 -1
  37. package/cjs/components/footer/FooterSectionContact.js +1 -1
  38. package/cjs/components/footer/FooterSectionContact.js.map +1 -1
  39. package/cjs/components/footer/FooterSectionLinks.js +1 -1
  40. package/cjs/components/footer/FooterSectionLinks.js.map +1 -1
  41. package/cjs/components/footer/FooterSectionMenu.js +1 -1
  42. package/cjs/components/footer/FooterSectionMenu.js.map +1 -1
  43. package/cjs/components/formMessage/FormMessage.js +1 -1
  44. package/cjs/components/formMessage/FormMessage.js.map +1 -1
  45. package/cjs/components/header/Header.js +1 -1
  46. package/cjs/components/header/Header.js.map +1 -1
  47. package/cjs/components/header/HeaderButton.js +1 -1
  48. package/cjs/components/header/HeaderButton.js.map +1 -1
  49. package/cjs/components/header/HeaderLanguageSelect.d.ts +6 -6
  50. package/cjs/components/header/HeaderLanguageSelect.js +1 -1
  51. package/cjs/components/header/HeaderLanguageSelect.js.map +1 -1
  52. package/cjs/components/header/HeaderLogo.d.ts +2 -2
  53. package/cjs/components/header/HeaderLogo.js +1 -1
  54. package/cjs/components/header/HeaderLogo.js.map +1 -1
  55. package/cjs/components/header/HeaderNavigationHero.js +1 -1
  56. package/cjs/components/header/HeaderNavigationHero.js.map +1 -1
  57. package/cjs/components/header/HeaderNavigationLink.js +1 -1
  58. package/cjs/components/header/HeaderNavigationLink.js.map +1 -1
  59. package/cjs/components/header/HeaderNavigationMenu.js +1 -1
  60. package/cjs/components/header/HeaderNavigationMenu.js.map +1 -1
  61. package/cjs/components/hotspotCard/HotspotCard.js +1 -1
  62. package/cjs/components/hotspotCard/HotspotCard.js.map +1 -1
  63. package/cjs/components/icon/filled/CarChargingFilledIcon.d.ts +6 -0
  64. package/cjs/components/icon/filled/CarChargingFilledIcon.js +2 -0
  65. package/cjs/components/icon/filled/CarChargingFilledIcon.js.map +1 -0
  66. package/cjs/components/icon/filled/EmissionLabelFilledIcon.d.ts +6 -0
  67. package/cjs/components/icon/filled/EmissionLabelFilledIcon.js +2 -0
  68. package/cjs/components/icon/filled/EmissionLabelFilledIcon.js.map +1 -0
  69. package/cjs/components/icon/filled/PictureErrorFilledIcon.d.ts +6 -0
  70. package/cjs/components/icon/filled/PictureErrorFilledIcon.js +2 -0
  71. package/cjs/components/icon/filled/PictureErrorFilledIcon.js.map +1 -0
  72. package/cjs/components/icon/filled/PowerpassFilledIcon.d.ts +6 -0
  73. package/cjs/components/icon/filled/PowerpassFilledIcon.js +2 -0
  74. package/cjs/components/icon/filled/PowerpassFilledIcon.js.map +1 -0
  75. package/cjs/components/icon/filled/index.d.ts +4 -0
  76. package/cjs/components/icon/icon.definitions.js +1 -1
  77. package/cjs/components/icon/icon.definitions.js.map +1 -1
  78. package/cjs/components/icon/stroke/CarChargingIcon.d.ts +6 -0
  79. package/cjs/components/icon/stroke/CarChargingIcon.js +2 -0
  80. package/cjs/components/icon/stroke/CarChargingIcon.js.map +1 -0
  81. package/cjs/components/icon/stroke/EmissionLabelIcon.d.ts +6 -0
  82. package/cjs/components/icon/stroke/EmissionLabelIcon.js +2 -0
  83. package/cjs/components/icon/stroke/EmissionLabelIcon.js.map +1 -0
  84. package/cjs/components/icon/stroke/PictureErrorIcon.d.ts +6 -0
  85. package/cjs/components/icon/stroke/PictureErrorIcon.js +2 -0
  86. package/cjs/components/icon/stroke/PictureErrorIcon.js.map +1 -0
  87. package/cjs/components/icon/stroke/PowerpassIcon.d.ts +6 -0
  88. package/cjs/components/icon/stroke/PowerpassIcon.js +2 -0
  89. package/cjs/components/icon/stroke/PowerpassIcon.js.map +1 -0
  90. package/cjs/components/icon/stroke/SoundwaveIcon.js +1 -1
  91. package/cjs/components/icon/stroke/SoundwaveIcon.js.map +1 -1
  92. package/cjs/components/icon/stroke/index.d.ts +4 -0
  93. package/cjs/components/image/Image.d.ts +5 -1
  94. package/cjs/components/image/Image.js +1 -1
  95. package/cjs/components/image/Image.js.map +1 -1
  96. package/cjs/components/index.d.ts +1 -0
  97. package/cjs/components/label/Label.js +1 -1
  98. package/cjs/components/label/Label.js.map +1 -1
  99. package/cjs/components/logo/Logo.js +1 -1
  100. package/cjs/components/logo/Logo.js.map +1 -1
  101. package/cjs/components/notification/Notification.d.ts +2 -2
  102. package/cjs/components/notification/Notification.js +1 -1
  103. package/cjs/components/notification/Notification.js.map +1 -1
  104. package/cjs/components/notification/NotificationCenter.js +1 -1
  105. package/cjs/components/notification/NotificationCenter.js.map +1 -1
  106. package/cjs/components/notification/NotificationCenterCategory.js +1 -1
  107. package/cjs/components/notification/NotificationCenterCategory.js.map +1 -1
  108. package/cjs/components/notification/NotificationCenterHeaderButton.js +1 -1
  109. package/cjs/components/notification/NotificationCenterHeaderButton.js.map +1 -1
  110. package/cjs/components/overlay/Overlay.js +1 -1
  111. package/cjs/components/overlay/Overlay.js.map +1 -1
  112. package/cjs/components/pageLayout/PageLayout.js +1 -1
  113. package/cjs/components/pageLayout/PageLayout.js.map +1 -1
  114. package/cjs/components/playPauseButton/PlayPauseButton.js +1 -1
  115. package/cjs/components/playPauseButton/PlayPauseButton.js.map +1 -1
  116. package/cjs/components/progress/Loader.js +1 -1
  117. package/cjs/components/progress/Loader.js.map +1 -1
  118. package/cjs/components/progress/LoadingText.js +1 -1
  119. package/cjs/components/progress/LoadingText.js.map +1 -1
  120. package/cjs/components/progress/ProgressState.js +1 -1
  121. package/cjs/components/progress/ProgressState.js.map +1 -1
  122. package/cjs/components/progress/Spinner.js +1 -1
  123. package/cjs/components/progress/Spinner.js.map +1 -1
  124. package/cjs/components/promptBar/PromptAttachments.d.ts +58 -0
  125. package/cjs/components/promptBar/PromptAttachments.js +2 -0
  126. package/cjs/components/promptBar/PromptAttachments.js.map +1 -0
  127. package/cjs/components/promptBar/PromptBar.d.ts +71 -0
  128. package/cjs/components/promptBar/PromptBar.js +2 -0
  129. package/cjs/components/promptBar/PromptBar.js.map +1 -0
  130. package/cjs/components/promptBar/PromptSubmitIconButton.d.ts +54 -0
  131. package/cjs/components/promptBar/PromptSubmitIconButton.js +2 -0
  132. package/cjs/components/promptBar/PromptSubmitIconButton.js.map +1 -0
  133. package/cjs/components/promptBar/index.d.ts +3 -0
  134. package/cjs/components/quickLink/QuickLink.d.ts +3 -3
  135. package/cjs/components/quickLink/QuickLink.js +1 -1
  136. package/cjs/components/quickLink/QuickLink.js.map +1 -1
  137. package/cjs/components/search/CollapsableSearch.js +1 -1
  138. package/cjs/components/search/CollapsableSearch.js.map +1 -1
  139. package/cjs/components/search/Search.d.ts +9 -1
  140. package/cjs/components/search/Search.js +1 -1
  141. package/cjs/components/search/Search.js.map +1 -1
  142. package/cjs/components/secondaryNavigation/SecondaryNavigation.js +1 -1
  143. package/cjs/components/secondaryNavigation/SecondaryNavigation.js.map +1 -1
  144. package/cjs/components/shortcut/Shortcut.js +1 -1
  145. package/cjs/components/shortcut/Shortcut.js.map +1 -1
  146. package/cjs/components/skodaThemeProvider/SkodaThemeProvider.js +1 -1
  147. package/cjs/components/skodaThemeProvider/SkodaThemeProvider.js.map +1 -1
  148. package/cjs/components/spacing/Spacing.js +1 -1
  149. package/cjs/components/spacing/Spacing.js.map +1 -1
  150. package/cjs/components/textAndCta/AppStoreButton.js +1 -1
  151. package/cjs/components/textAndCta/AppStoreButton.js.map +1 -1
  152. package/cjs/components/textAndCta/TextAndCta.js +1 -1
  153. package/cjs/components/textAndCta/TextAndCta.js.map +1 -1
  154. package/cjs/components/tooltipHeader/TooltipHeader.js +1 -1
  155. package/cjs/components/tooltipHeader/TooltipHeader.js.map +1 -1
  156. package/cjs/components/upload/components/uploadList/UploadList.js +1 -1
  157. package/cjs/components/upload/components/uploadList/UploadList.js.map +1 -1
  158. package/cjs/components/upload/components/uploadList/UploadListItem.js +1 -1
  159. package/cjs/components/upload/components/uploadList/UploadListItem.js.map +1 -1
  160. package/cjs/components/upload/components/uploadPreview/UploadPreview.js +1 -1
  161. package/cjs/components/upload/components/uploadPreview/UploadPreview.js.map +1 -1
  162. package/cjs/components/upload/components/uploadPreview/UploadPreviewImage.js +1 -1
  163. package/cjs/components/upload/components/uploadPreview/UploadPreviewImage.js.map +1 -1
  164. package/cjs/components/upload/components/uploadWrapper/UploadContent.js +1 -1
  165. package/cjs/components/upload/components/uploadWrapper/UploadContent.js.map +1 -1
  166. package/cjs/components/upload/components/uploadWrapper/UploadWrapper.js +1 -1
  167. package/cjs/components/upload/components/uploadWrapper/UploadWrapper.js.map +1 -1
  168. package/cjs/components/video/Video.js +1 -1
  169. package/cjs/components/video/Video.js.map +1 -1
  170. package/cjs/index.js +1 -1
  171. package/cjs/materialui/accordion/AccordionSummaryExpandWrapper.js +1 -1
  172. package/cjs/materialui/accordion/AccordionSummaryExpandWrapper.js.map +1 -1
  173. package/cjs/materialui/autocomplete/autocomplete.theme.js +1 -1
  174. package/cjs/materialui/autocomplete/autocomplete.theme.js.map +1 -1
  175. package/cjs/materialui/card/Card.js +1 -1
  176. package/cjs/materialui/card/Card.js.map +1 -1
  177. package/cjs/materialui/card/card.theme.js +1 -1
  178. package/cjs/materialui/card/card.theme.js.map +1 -1
  179. package/cjs/materialui/datepicker/datecalendar.theme.d.ts +1178 -1178
  180. package/cjs/materialui/datepicker/digitalclock.theme.d.ts +1176 -1176
  181. package/cjs/materialui/datepicker/pickersday.theme.d.ts +1 -1
  182. package/cjs/materialui/datepicker/pickersday.theme.js +1 -1
  183. package/cjs/materialui/datepicker/pickersday.theme.js.map +1 -1
  184. package/cjs/materialui/dialog/DialogTitle.js +1 -1
  185. package/cjs/materialui/dialog/DialogTitle.js.map +1 -1
  186. package/cjs/materialui/dialog/dialogTitle.theme.js +1 -1
  187. package/cjs/materialui/dialog/dialogTitle.theme.js.map +1 -1
  188. package/cjs/materialui/drawer/DrawerContent.d.ts +39 -0
  189. package/cjs/materialui/drawer/DrawerContent.js +2 -0
  190. package/cjs/materialui/drawer/DrawerContent.js.map +1 -0
  191. package/cjs/materialui/drawer/drawer.theme.js +1 -1
  192. package/cjs/materialui/drawer/drawer.theme.js.map +1 -1
  193. package/cjs/materialui/drawer/index.d.ts +2 -0
  194. package/cjs/materialui/iconButton/iconButton.theme.js +1 -1
  195. package/cjs/materialui/iconButton/iconButton.theme.js.map +1 -1
  196. package/cjs/materialui/list/listItemText.theme.js +1 -1
  197. package/cjs/materialui/list/listItemText.theme.js.map +1 -1
  198. package/cjs/materialui/slider/SliderContainer.js +1 -1
  199. package/cjs/materialui/slider/SliderContainer.js.map +1 -1
  200. package/cjs/materialui/slider/SliderValues.js +1 -1
  201. package/cjs/materialui/slider/SliderValues.js.map +1 -1
  202. package/cjs/materialui/stepper/stepConnector.theme.js +1 -1
  203. package/cjs/materialui/stepper/stepConnector.theme.js.map +1 -1
  204. package/cjs/materialui/stepper/stepper.theme.js +1 -1
  205. package/cjs/materialui/stepper/stepper.theme.js.map +1 -1
  206. package/cjs/materialui/switch/switch.theme.js +1 -1
  207. package/cjs/materialui/switch/switch.theme.js.map +1 -1
  208. package/cjs/materialui/table/tablePagination.theme.js +1 -1
  209. package/cjs/materialui/table/tablePagination.theme.js.map +1 -1
  210. package/cjs/materialui/tabs/tabs.theme.js +1 -1
  211. package/cjs/materialui/tabs/tabs.theme.js.map +1 -1
  212. package/cjs/materialui/textfield/FormHelperText.js +1 -1
  213. package/cjs/materialui/textfield/FormHelperText.js.map +1 -1
  214. package/cjs/materialui/textfield/HelperTextContent.js +1 -1
  215. package/cjs/materialui/textfield/HelperTextContent.js.map +1 -1
  216. package/cjs/materialui/textfield/filledInput.theme.js +1 -1
  217. package/cjs/materialui/textfield/filledInput.theme.js.map +1 -1
  218. package/cjs/materialui/textfield/inputAdornment.theme.js +1 -1
  219. package/cjs/materialui/textfield/inputAdornment.theme.js.map +1 -1
  220. package/cjs/materialui/textfield/inputBase.theme.js +1 -1
  221. package/cjs/materialui/textfield/inputBase.theme.js.map +1 -1
  222. package/cjs/materialui/textfield/inputLabel.theme.js +1 -1
  223. package/cjs/materialui/textfield/inputLabel.theme.js.map +1 -1
  224. package/cjs/materialui/textfield/textField.theme.js +1 -1
  225. package/cjs/materialui/textfield/textField.theme.js.map +1 -1
  226. package/cjs/materialui/theme/paletteDark.theme.js +1 -1
  227. package/cjs/materialui/theme/paletteDark.theme.js.map +1 -1
  228. package/cjs/materialui/theme/sxConfig.d.ts +2 -0
  229. package/cjs/materialui/theme/sxConfig.js +2 -0
  230. package/cjs/materialui/theme/sxConfig.js.map +1 -0
  231. package/cjs/materialui/theme/theme.extensions.d.ts +19 -0
  232. package/cjs/materialui/theme/theme.js +1 -1
  233. package/cjs/materialui/theme/theme.js.map +1 -1
  234. package/cjs/materialui/themeProvider/baseline.theme.js +1 -1
  235. package/cjs/materialui/themeProvider/baseline.theme.js.map +1 -1
  236. package/cjs/materialui/typography/typography.theme.d.ts +4 -0
  237. package/cjs/materialui/typography/typography.theme.js +1 -1
  238. package/cjs/materialui/typography/typography.theme.js.map +1 -1
  239. package/cjs/node_modules/swiper/shared/swiper-core.js +1 -1
  240. package/cjs/node_modules/swiper/shared/swiper-core.js.map +1 -1
  241. package/cjs/node_modules/swiper/swiper-react.js.map +1 -1
  242. package/cjs/utils/index.d.ts +1 -0
  243. package/cjs/utils/sxOverride/index.d.ts +1 -0
  244. package/cjs/utils/sxOverride/sxOverride.d.ts +10 -0
  245. package/cjs/utils/sxOverride/sxOverride.js +2 -0
  246. package/cjs/utils/sxOverride/sxOverride.js.map +1 -0
  247. package/components/advancedTable/agGrid.js +1 -1
  248. package/components/advancedTable/agGrid.js.map +1 -1
  249. package/components/advancedTable/agGridSkodaTheme.js +1 -1
  250. package/components/advancedTable/agGridSkodaTheme.js.map +1 -1
  251. package/components/banner/Banner.js +1 -1
  252. package/components/banner/Banner.js.map +1 -1
  253. package/components/bottomSheet/BottomSheet.js +1 -1
  254. package/components/bottomSheet/BottomSheet.js.map +1 -1
  255. package/components/bypassBlock/BypassBlock.js +1 -1
  256. package/components/bypassBlock/BypassBlock.js.map +1 -1
  257. package/components/carousel/Autoplay.d.ts +7 -2
  258. package/components/carousel/Autoplay.js +1 -1
  259. package/components/carousel/Autoplay.js.map +1 -1
  260. package/components/carousel/Carousel.js +1 -1
  261. package/components/carousel/Carousel.js.map +1 -1
  262. package/components/carousel/Navigation.js +1 -1
  263. package/components/carousel/Navigation.js.map +1 -1
  264. package/components/carousel/Pagination.d.ts +6 -6
  265. package/components/carousel/Pagination.js +1 -1
  266. package/components/carousel/Pagination.js.map +1 -1
  267. package/components/carousel/Slide.js +1 -1
  268. package/components/carousel/Slide.js.map +1 -1
  269. package/components/carousel/hooks.js +1 -1
  270. package/components/carousel/hooks.js.map +1 -1
  271. package/components/errorContent/ErrorContent.js +1 -1
  272. package/components/errorContent/ErrorContent.js.map +1 -1
  273. package/components/flag/FlowFlag.js +1 -1
  274. package/components/flag/FlowFlag.js.map +1 -1
  275. package/components/footer/Footer.js +1 -1
  276. package/components/footer/Footer.js.map +1 -1
  277. package/components/footer/FooterAccordion.js +1 -1
  278. package/components/footer/FooterAccordion.js.map +1 -1
  279. package/components/footer/FooterLink.js +1 -1
  280. package/components/footer/FooterLink.js.map +1 -1
  281. package/components/footer/FooterMenu.js +1 -1
  282. package/components/footer/FooterMenu.js.map +1 -1
  283. package/components/footer/FooterSectionContact.js +1 -1
  284. package/components/footer/FooterSectionContact.js.map +1 -1
  285. package/components/footer/FooterSectionLinks.js +1 -1
  286. package/components/footer/FooterSectionLinks.js.map +1 -1
  287. package/components/footer/FooterSectionMenu.js +1 -1
  288. package/components/footer/FooterSectionMenu.js.map +1 -1
  289. package/components/formMessage/FormMessage.js +1 -1
  290. package/components/formMessage/FormMessage.js.map +1 -1
  291. package/components/header/Header.js +1 -1
  292. package/components/header/Header.js.map +1 -1
  293. package/components/header/HeaderButton.js +1 -1
  294. package/components/header/HeaderButton.js.map +1 -1
  295. package/components/header/HeaderLanguageSelect.d.ts +6 -6
  296. package/components/header/HeaderLanguageSelect.js +1 -1
  297. package/components/header/HeaderLanguageSelect.js.map +1 -1
  298. package/components/header/HeaderLogo.d.ts +2 -2
  299. package/components/header/HeaderLogo.js +1 -1
  300. package/components/header/HeaderLogo.js.map +1 -1
  301. package/components/header/HeaderNavigationHero.js +1 -1
  302. package/components/header/HeaderNavigationHero.js.map +1 -1
  303. package/components/header/HeaderNavigationLink.js +1 -1
  304. package/components/header/HeaderNavigationLink.js.map +1 -1
  305. package/components/header/HeaderNavigationMenu.js +1 -1
  306. package/components/header/HeaderNavigationMenu.js.map +1 -1
  307. package/components/hotspotCard/HotspotCard.js +1 -1
  308. package/components/hotspotCard/HotspotCard.js.map +1 -1
  309. package/components/icon/filled/CarChargingFilledIcon.d.ts +6 -0
  310. package/components/icon/filled/CarChargingFilledIcon.js +2 -0
  311. package/components/icon/filled/CarChargingFilledIcon.js.map +1 -0
  312. package/components/icon/filled/EmissionLabelFilledIcon.d.ts +6 -0
  313. package/components/icon/filled/EmissionLabelFilledIcon.js +2 -0
  314. package/components/icon/filled/EmissionLabelFilledIcon.js.map +1 -0
  315. package/components/icon/filled/PictureErrorFilledIcon.d.ts +6 -0
  316. package/components/icon/filled/PictureErrorFilledIcon.js +2 -0
  317. package/components/icon/filled/PictureErrorFilledIcon.js.map +1 -0
  318. package/components/icon/filled/PowerpassFilledIcon.d.ts +6 -0
  319. package/components/icon/filled/PowerpassFilledIcon.js +2 -0
  320. package/components/icon/filled/PowerpassFilledIcon.js.map +1 -0
  321. package/components/icon/filled/index.d.ts +4 -0
  322. package/components/icon/icon.definitions.js +1 -1
  323. package/components/icon/icon.definitions.js.map +1 -1
  324. package/components/icon/stroke/CarChargingIcon.d.ts +6 -0
  325. package/components/icon/stroke/CarChargingIcon.js +2 -0
  326. package/components/icon/stroke/CarChargingIcon.js.map +1 -0
  327. package/components/icon/stroke/EmissionLabelIcon.d.ts +6 -0
  328. package/components/icon/stroke/EmissionLabelIcon.js +2 -0
  329. package/components/icon/stroke/EmissionLabelIcon.js.map +1 -0
  330. package/components/icon/stroke/PictureErrorIcon.d.ts +6 -0
  331. package/components/icon/stroke/PictureErrorIcon.js +2 -0
  332. package/components/icon/stroke/PictureErrorIcon.js.map +1 -0
  333. package/components/icon/stroke/PowerpassIcon.d.ts +6 -0
  334. package/components/icon/stroke/PowerpassIcon.js +2 -0
  335. package/components/icon/stroke/PowerpassIcon.js.map +1 -0
  336. package/components/icon/stroke/SoundwaveIcon.js +1 -1
  337. package/components/icon/stroke/SoundwaveIcon.js.map +1 -1
  338. package/components/icon/stroke/index.d.ts +4 -0
  339. package/components/image/Image.d.ts +5 -1
  340. package/components/image/Image.js +1 -1
  341. package/components/image/Image.js.map +1 -1
  342. package/components/index.d.ts +1 -0
  343. package/components/label/Label.js +1 -1
  344. package/components/label/Label.js.map +1 -1
  345. package/components/logo/Logo.js +1 -1
  346. package/components/logo/Logo.js.map +1 -1
  347. package/components/notification/Notification.d.ts +2 -2
  348. package/components/notification/Notification.js +1 -1
  349. package/components/notification/Notification.js.map +1 -1
  350. package/components/notification/NotificationCenter.js +1 -1
  351. package/components/notification/NotificationCenter.js.map +1 -1
  352. package/components/notification/NotificationCenterCategory.js +1 -1
  353. package/components/notification/NotificationCenterCategory.js.map +1 -1
  354. package/components/notification/NotificationCenterHeaderButton.js +1 -1
  355. package/components/notification/NotificationCenterHeaderButton.js.map +1 -1
  356. package/components/overlay/Overlay.js +1 -1
  357. package/components/overlay/Overlay.js.map +1 -1
  358. package/components/pageLayout/PageLayout.js +1 -1
  359. package/components/pageLayout/PageLayout.js.map +1 -1
  360. package/components/playPauseButton/PlayPauseButton.js +1 -1
  361. package/components/playPauseButton/PlayPauseButton.js.map +1 -1
  362. package/components/progress/Loader.js +1 -1
  363. package/components/progress/Loader.js.map +1 -1
  364. package/components/progress/LoadingText.js +1 -1
  365. package/components/progress/LoadingText.js.map +1 -1
  366. package/components/progress/ProgressState.js +1 -1
  367. package/components/progress/ProgressState.js.map +1 -1
  368. package/components/progress/Spinner.js +1 -1
  369. package/components/progress/Spinner.js.map +1 -1
  370. package/components/promptBar/PromptAttachments.d.ts +58 -0
  371. package/components/promptBar/PromptAttachments.js +2 -0
  372. package/components/promptBar/PromptAttachments.js.map +1 -0
  373. package/components/promptBar/PromptBar.d.ts +71 -0
  374. package/components/promptBar/PromptBar.js +2 -0
  375. package/components/promptBar/PromptBar.js.map +1 -0
  376. package/components/promptBar/PromptSubmitIconButton.d.ts +54 -0
  377. package/components/promptBar/PromptSubmitIconButton.js +2 -0
  378. package/components/promptBar/PromptSubmitIconButton.js.map +1 -0
  379. package/components/promptBar/index.d.ts +3 -0
  380. package/components/quickLink/QuickLink.d.ts +3 -3
  381. package/components/quickLink/QuickLink.js +1 -1
  382. package/components/quickLink/QuickLink.js.map +1 -1
  383. package/components/search/CollapsableSearch.js +1 -1
  384. package/components/search/CollapsableSearch.js.map +1 -1
  385. package/components/search/Search.d.ts +9 -1
  386. package/components/search/Search.js +1 -1
  387. package/components/search/Search.js.map +1 -1
  388. package/components/secondaryNavigation/SecondaryNavigation.js +1 -1
  389. package/components/secondaryNavigation/SecondaryNavigation.js.map +1 -1
  390. package/components/shortcut/Shortcut.js +1 -1
  391. package/components/shortcut/Shortcut.js.map +1 -1
  392. package/components/skodaThemeProvider/SkodaThemeProvider.js +1 -1
  393. package/components/skodaThemeProvider/SkodaThemeProvider.js.map +1 -1
  394. package/components/spacing/Spacing.js +1 -1
  395. package/components/spacing/Spacing.js.map +1 -1
  396. package/components/textAndCta/AppStoreButton.js +1 -1
  397. package/components/textAndCta/AppStoreButton.js.map +1 -1
  398. package/components/textAndCta/TextAndCta.js +1 -1
  399. package/components/textAndCta/TextAndCta.js.map +1 -1
  400. package/components/tooltipHeader/TooltipHeader.js +1 -1
  401. package/components/tooltipHeader/TooltipHeader.js.map +1 -1
  402. package/components/upload/components/uploadList/UploadList.js +1 -1
  403. package/components/upload/components/uploadList/UploadList.js.map +1 -1
  404. package/components/upload/components/uploadList/UploadListItem.js +1 -1
  405. package/components/upload/components/uploadList/UploadListItem.js.map +1 -1
  406. package/components/upload/components/uploadPreview/UploadPreview.js +1 -1
  407. package/components/upload/components/uploadPreview/UploadPreview.js.map +1 -1
  408. package/components/upload/components/uploadPreview/UploadPreviewImage.js +1 -1
  409. package/components/upload/components/uploadPreview/UploadPreviewImage.js.map +1 -1
  410. package/components/upload/components/uploadWrapper/UploadContent.js +1 -1
  411. package/components/upload/components/uploadWrapper/UploadContent.js.map +1 -1
  412. package/components/upload/components/uploadWrapper/UploadWrapper.js +1 -1
  413. package/components/upload/components/uploadWrapper/UploadWrapper.js.map +1 -1
  414. package/components/video/Video.js +1 -1
  415. package/components/video/Video.js.map +1 -1
  416. package/index.js +1 -1
  417. package/materialui/accordion/AccordionSummaryExpandWrapper.js +1 -1
  418. package/materialui/accordion/AccordionSummaryExpandWrapper.js.map +1 -1
  419. package/materialui/autocomplete/autocomplete.theme.js +1 -1
  420. package/materialui/autocomplete/autocomplete.theme.js.map +1 -1
  421. package/materialui/card/Card.js +1 -1
  422. package/materialui/card/Card.js.map +1 -1
  423. package/materialui/card/card.theme.js +1 -1
  424. package/materialui/card/card.theme.js.map +1 -1
  425. package/materialui/datepicker/datecalendar.theme.d.ts +1178 -1178
  426. package/materialui/datepicker/digitalclock.theme.d.ts +1176 -1176
  427. package/materialui/datepicker/pickersday.theme.d.ts +1 -1
  428. package/materialui/datepicker/pickersday.theme.js +1 -1
  429. package/materialui/datepicker/pickersday.theme.js.map +1 -1
  430. package/materialui/dialog/DialogTitle.js +1 -1
  431. package/materialui/dialog/DialogTitle.js.map +1 -1
  432. package/materialui/dialog/dialogTitle.theme.js +1 -1
  433. package/materialui/dialog/dialogTitle.theme.js.map +1 -1
  434. package/materialui/drawer/DrawerContent.d.ts +39 -0
  435. package/materialui/drawer/DrawerContent.js +2 -0
  436. package/materialui/drawer/DrawerContent.js.map +1 -0
  437. package/materialui/drawer/drawer.theme.js +1 -1
  438. package/materialui/drawer/drawer.theme.js.map +1 -1
  439. package/materialui/drawer/index.d.ts +2 -0
  440. package/materialui/iconButton/iconButton.theme.js +1 -1
  441. package/materialui/iconButton/iconButton.theme.js.map +1 -1
  442. package/materialui/list/listItemText.theme.js +1 -1
  443. package/materialui/list/listItemText.theme.js.map +1 -1
  444. package/materialui/slider/SliderContainer.js +1 -1
  445. package/materialui/slider/SliderContainer.js.map +1 -1
  446. package/materialui/slider/SliderValues.js +1 -1
  447. package/materialui/slider/SliderValues.js.map +1 -1
  448. package/materialui/stepper/stepConnector.theme.js +1 -1
  449. package/materialui/stepper/stepConnector.theme.js.map +1 -1
  450. package/materialui/stepper/stepper.theme.js +1 -1
  451. package/materialui/stepper/stepper.theme.js.map +1 -1
  452. package/materialui/switch/switch.theme.js +1 -1
  453. package/materialui/switch/switch.theme.js.map +1 -1
  454. package/materialui/table/tablePagination.theme.js +1 -1
  455. package/materialui/table/tablePagination.theme.js.map +1 -1
  456. package/materialui/tabs/tabs.theme.js +1 -1
  457. package/materialui/tabs/tabs.theme.js.map +1 -1
  458. package/materialui/textfield/FormHelperText.js +1 -1
  459. package/materialui/textfield/FormHelperText.js.map +1 -1
  460. package/materialui/textfield/HelperTextContent.js +1 -1
  461. package/materialui/textfield/HelperTextContent.js.map +1 -1
  462. package/materialui/textfield/filledInput.theme.js +1 -1
  463. package/materialui/textfield/filledInput.theme.js.map +1 -1
  464. package/materialui/textfield/inputAdornment.theme.js +1 -1
  465. package/materialui/textfield/inputAdornment.theme.js.map +1 -1
  466. package/materialui/textfield/inputBase.theme.js +1 -1
  467. package/materialui/textfield/inputBase.theme.js.map +1 -1
  468. package/materialui/textfield/inputLabel.theme.js +1 -1
  469. package/materialui/textfield/inputLabel.theme.js.map +1 -1
  470. package/materialui/textfield/textField.theme.js +1 -1
  471. package/materialui/textfield/textField.theme.js.map +1 -1
  472. package/materialui/theme/paletteDark.theme.js +1 -1
  473. package/materialui/theme/paletteDark.theme.js.map +1 -1
  474. package/materialui/theme/sxConfig.d.ts +2 -0
  475. package/materialui/theme/sxConfig.js +2 -0
  476. package/materialui/theme/sxConfig.js.map +1 -0
  477. package/materialui/theme/theme.extensions.d.ts +19 -0
  478. package/materialui/theme/theme.js +1 -1
  479. package/materialui/theme/theme.js.map +1 -1
  480. package/materialui/themeProvider/baseline.theme.js +1 -1
  481. package/materialui/themeProvider/baseline.theme.js.map +1 -1
  482. package/materialui/typography/typography.theme.d.ts +4 -0
  483. package/materialui/typography/typography.theme.js +1 -1
  484. package/materialui/typography/typography.theme.js.map +1 -1
  485. package/package.json +1 -1
  486. package/utils/index.d.ts +1 -0
  487. package/utils/sxOverride/index.d.ts +1 -0
  488. package/utils/sxOverride/sxOverride.d.ts +10 -0
  489. package/utils/sxOverride/sxOverride.js +2 -0
  490. package/utils/sxOverride/sxOverride.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"FooterAccordion.js","sources":["../../../src/components/footer/FooterAccordion.tsx"],"sourcesContent":["import React, { FC, forwardRef, ReactNode, ElementType } from 'react';\nimport {\n Accordion,\n AccordionSummary,\n AccordionDetails,\n AccordionProps,\n AccordionSummaryProps,\n AccordionDetailsProps,\n Typography,\n TypographyProps,\n useTheme,\n} from '@mui/material';\nimport { getInteractiveStyle } from '@/src/materialui/button/interactive';\n\nexport interface FooterAccordionProps extends Omit<AccordionProps, 'variant'> {\n /**\n * Label of the Accordion\n */\n label?: ReactNode;\n /**\n * Props applied to the wrapper of label\n */\n accordionSummaryProps?: AccordionSummaryProps<ElementType>;\n /**\n * Props applied to the content of the accodion\n */\n accordionDetailsProps?: AccordionDetailsProps;\n /**\n * Properties applied to wrapper of children\n */\n contentProps?: TypographyProps<ElementType>;\n /**\n * Variant of accordion\n * @default compact\n */\n variant?: 'compact' | 'standard';\n}\n\n/**\n * Collapsible footer section\n */\nexport const FooterAccordion: FC<FooterAccordionProps> = forwardRef(\n (\n {\n sx,\n children,\n className,\n label,\n accordionSummaryProps,\n accordionDetailsProps,\n contentProps,\n variant = 'compact',\n ...rest\n },\n ref,\n ) => {\n const { sx: accordionSummarySx, ...restAccordionSummary } = accordionSummaryProps ?? {};\n const theme = useTheme();\n\n return (\n <Accordion\n ref={ref}\n data-testid=\"FooterAccordion\"\n className={[\n 'FooterAccordion-root',\n `FooterAccordion-variant${variant.charAt(0).toUpperCase()}${variant.slice(1)}`,\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n sx={{\n // recolor to dark mode\n color: 'currentColor',\n ...(variant === 'compact' && {\n border: 'none',\n }),\n ...sx,\n }}\n {...rest}\n >\n <AccordionSummary\n data-testid=\"FooterAccordion.label\"\n aria-controls=\"footer-accordion\"\n id=\"footer-accordion\"\n sx={{\n // recolor to dark mode\n color: 'currentColor',\n '&:hover': {\n color: 'currentColor',\n // hover over IconButton\n '& .MuiAccordion-IconButton': {\n backgroundColor: theme.palette.transparent.tertiary,\n },\n },\n // change variant of icon button to small & white\n '& .MuiAccordion-IconButton': {\n height: '32px',\n width: '32px',\n ...getInteractiveStyle(\n {\n backgroundColor: 'transparent',\n color: theme.palette.onSurface.os0,\n },\n {\n color: theme.palette.onSurface.os0,\n backgroundColor: theme.palette.transparent.tertiary,\n },\n ),\n },\n ...(variant === 'compact' && {\n ...theme.typography.caption2,\n p: '0',\n gap: 1.5,\n justifyContent: 'flex-start',\n // move icon next to label\n '& .MuiAccordionSummary-content': {\n flexGrow: '0',\n },\n }),\n ...accordionSummarySx,\n }}\n {...restAccordionSummary}\n >\n {label}\n </AccordionSummary>\n <AccordionDetails data-testid=\"FooterAccordion.children\" {...accordionDetailsProps}>\n <Typography variant=\"disclaimer1\" {...contentProps}>\n {children}\n </Typography>\n </AccordionDetails>\n </Accordion>\n );\n },\n);\n"],"names":["FooterAccordion","forwardRef","sx","children","className","label","accordionSummaryProps","accordionDetailsProps","contentProps","variant","rest","ref","accordionSummarySx","restAccordionSummary","theme","useTheme","_jsxs","Accordion","charAt","toUpperCase","slice","filter","Boolean","join","color","border","_jsx","AccordionSummary","id","backgroundColor","palette","transparent","tertiary","height","width","getInteractiveStyle","onSurface","os0","typography","caption2","p","gap","justifyContent","flexGrow","AccordionDetails","Typography"],"mappings":"sRAyCO,MAAMA,EAA4CC,EACvD,EAEIC,KACAC,WACAC,YACAC,QACAC,wBACAC,wBACAC,eACAC,UAAU,aACPC,GAELC,KAEA,MAAQT,GAAIU,KAAuBC,GAAyBP,GAAyB,CAAA,EAC/EQ,EAAQC,IAEd,OACEC,EAACC,EAAS,CACRN,IAAKA,EAAG,cACI,kBACZP,UAAW,CACT,uBACA,0BAA0BK,EAAQS,OAAO,GAAGC,gBAAgBV,EAAQW,MAAM,KAC1EhB,GAECiB,OAAOC,SACPC,KAAK,KACRrB,GAAI,CAEFsB,MAAO,kBACS,YAAZf,GAAyB,CAC3BgB,OAAQ,WAEPvB,MAEDQ,EAAIP,SAAA,CAERuB,EAACC,iBACa,wBAAuB,gBACrB,mBACdC,GAAG,mBACH1B,GAAI,CAEFsB,MAAO,eACP,UAAW,CACTA,MAAO,eAEP,6BAA8B,CAC5BK,gBAAiBf,EAAMgB,QAAQC,YAAYC,WAI/C,6BAA8B,CAC5BC,OAAQ,OACRC,MAAO,UACJC,EACD,CACEN,gBAAiB,cACjBL,MAAOV,EAAMgB,QAAQM,UAAUC,KAEjC,CACEb,MAAOV,EAAMgB,QAAQM,UAAUC,IAC/BR,gBAAiBf,EAAMgB,QAAQC,YAAYC,eAIjC,YAAZvB,GAAyB,IACxBK,EAAMwB,WAAWC,SACpBC,EAAG,IACHC,IAAK,IACLC,eAAgB,aAEhB,iCAAkC,CAChCC,SAAU,SAGX/B,MAEDC,EAAoBV,SAEvBE,IAEHqB,EAACkB,EAAgB,CAAA,cAAa,8BAA+BrC,EAAqBJ,SAChFuB,EAACmB,EAAU,CAACpC,QAAQ,iBAAkBD,EAAYL,SAC/CA"}
1
+ {"version":3,"file":"FooterAccordion.js","sources":["../../../src/components/footer/FooterAccordion.tsx"],"sourcesContent":["import React, { FC, forwardRef, ReactNode, ElementType } from 'react';\nimport {\n Accordion,\n AccordionSummary,\n AccordionDetails,\n AccordionProps,\n AccordionSummaryProps,\n AccordionDetailsProps,\n Typography,\n TypographyProps,\n useTheme,\n} from '@mui/material';\nimport { getInteractiveStyle } from '@/src/materialui/button/interactive';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterAccordionProps extends Omit<AccordionProps, 'variant'> {\n /**\n * Label of the Accordion\n */\n label?: ReactNode;\n /**\n * Props applied to the wrapper of label\n */\n accordionSummaryProps?: AccordionSummaryProps<ElementType>;\n /**\n * Props applied to the content of the accodion\n */\n accordionDetailsProps?: AccordionDetailsProps;\n /**\n * Properties applied to wrapper of children\n */\n contentProps?: TypographyProps<ElementType>;\n /**\n * Variant of accordion\n * @default compact\n */\n variant?: 'compact' | 'standard';\n}\n\n/**\n * Collapsible footer section\n */\nexport const FooterAccordion: FC<FooterAccordionProps> = forwardRef(\n (\n {\n sx,\n children,\n className,\n label,\n accordionSummaryProps,\n accordionDetailsProps,\n contentProps,\n variant = 'compact',\n ...rest\n },\n ref,\n ) => {\n const { sx: accordionSummarySx, ...restAccordionSummary } = accordionSummaryProps ?? {};\n const theme = useTheme();\n\n return (\n <Accordion\n ref={ref}\n data-testid=\"FooterAccordion\"\n className={[\n 'FooterAccordion-root',\n `FooterAccordion-variant${variant.charAt(0).toUpperCase()}${variant.slice(1)}`,\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n sx={sxOverride(\n {\n // recolor to dark mode\n color: 'currentColor',\n ...(variant === 'compact' && {\n border: 'none',\n }),\n },\n sx,\n )}\n {...rest}\n >\n <AccordionSummary\n data-testid=\"FooterAccordion.label\"\n aria-controls=\"footer-accordion\"\n id=\"footer-accordion\"\n sx={sxOverride(\n {\n // recolor to dark mode\n color: 'currentColor',\n '&:hover': {\n color: 'currentColor',\n // hover over IconButton\n '& .MuiAccordion-IconButton': {\n backgroundColor: theme.palette.transparent.tertiary,\n },\n },\n // change variant of icon button to small & white\n '& .MuiAccordion-IconButton': {\n height: '32px',\n width: '32px',\n ...getInteractiveStyle(\n {\n backgroundColor: 'transparent',\n color: theme.palette.onSurface.os0,\n },\n {\n color: theme.palette.onSurface.os0,\n backgroundColor: theme.palette.transparent.tertiary,\n },\n ),\n },\n ...(variant === 'compact' && {\n ...theme.typography.caption2,\n p: '0',\n gap: 1.5,\n justifyContent: 'flex-start',\n // move icon next to label\n '& .MuiAccordionSummary-content': {\n flexGrow: '0',\n },\n }),\n },\n accordionSummarySx,\n )}\n {...restAccordionSummary}\n >\n {label}\n </AccordionSummary>\n <AccordionDetails data-testid=\"FooterAccordion.children\" {...accordionDetailsProps}>\n <Typography variant=\"disclaimer1\" {...contentProps}>\n {children}\n </Typography>\n </AccordionDetails>\n </Accordion>\n );\n },\n);\n"],"names":["FooterAccordion","forwardRef","sx","children","className","label","accordionSummaryProps","accordionDetailsProps","contentProps","variant","rest","ref","accordionSummarySx","restAccordionSummary","theme","useTheme","_jsxs","Accordion","charAt","toUpperCase","slice","filter","Boolean","join","sxOverride","color","border","_jsx","AccordionSummary","id","backgroundColor","palette","transparent","tertiary","height","width","getInteractiveStyle","onSurface","os0","typography","caption2","p","gap","justifyContent","flexGrow","AccordionDetails","Typography"],"mappings":"wVA0CO,MAAMA,EAA4CC,EACvD,EAEIC,KACAC,WACAC,YACAC,QACAC,wBACAC,wBACAC,eACAC,UAAU,aACPC,GAELC,KAEA,MAAQT,GAAIU,KAAuBC,GAAyBP,GAAyB,CAAA,EAC/EQ,EAAQC,IAEd,OACEC,EAACC,EAAS,CACRN,IAAKA,EAAG,cACI,kBACZP,UAAW,CACT,uBACA,0BAA0BK,EAAQS,OAAO,GAAGC,gBAAgBV,EAAQW,MAAM,KAC1EhB,GAECiB,OAAOC,SACPC,KAAK,KACRrB,GAAIsB,EACF,CAEEC,MAAO,kBACS,YAAZhB,GAAyB,CAC3BiB,OAAQ,SAGZxB,MAEEQ,EAAIP,SAAA,CAERwB,EAACC,EAAgB,CAAA,cACH,wCACE,mBACdC,GAAG,mBACH3B,GAAIsB,EACF,CAEEC,MAAO,eACP,UAAW,CACTA,MAAO,eAEP,6BAA8B,CAC5BK,gBAAiBhB,EAAMiB,QAAQC,YAAYC,WAI/C,6BAA8B,CAC5BC,OAAQ,OACRC,MAAO,UACJC,EACD,CACEN,gBAAiB,cACjBL,MAAOX,EAAMiB,QAAQM,UAAUC,KAEjC,CACEb,MAAOX,EAAMiB,QAAQM,UAAUC,IAC/BR,gBAAiBhB,EAAMiB,QAAQC,YAAYC,eAIjC,YAAZxB,GAAyB,IACxBK,EAAMyB,WAAWC,SACpBC,EAAG,IACHC,IAAK,IACLC,eAAgB,aAEhB,iCAAkC,CAChCC,SAAU,OAIhBhC,MAEEC,EAAoBV,SAEvBE,IAEHsB,EAACkB,EAAgB,CAAA,cAAa,8BAA+BtC,EAAqBJ,SAChFwB,EAACmB,EAAU,CAACrC,QAAQ,iBAAkBD,EAAYL,SAC/CA"}
@@ -1,2 +1,2 @@
1
- import{jsx as t}from"react/jsx-runtime";import{forwardRef as e}from"react";import{Link as r}from"@mui/material";const i=e(({sx:e,children:i,label:o,...n},a)=>t(r,{sx:{display:"inline-flex",gap:1.5,alignItems:"center",justifyContent:"flex-start",padding:"4px 8px","&, &:hover":{textDecoration:"underline",color:"common.white"},"& .MuiSvgIcon-root":{fontSize:"20px"},...e},variant:"list",ref:a,...n,children:i||o}));export{i as FooterLink};
1
+ import{jsx as r}from"react/jsx-runtime";import{forwardRef as e}from"react";import{Link as t}from"@mui/material";import{sxOverride as i}from"../../utils/sxOverride/sxOverride.js";const o=e(({sx:e,children:o,label:n,...l},m)=>r(t,{sx:i({display:"inline-flex",gap:1.5,alignItems:"center",justifyContent:"flex-start",padding:"4px 8px","&, &:hover":{textDecoration:"underline",color:"common.white"},"& .MuiSvgIcon-root":{fontSize:"20px"}},e),variant:"list",ref:m,...l,children:o||n}));export{o as FooterLink};
2
2
  //# sourceMappingURL=FooterLink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FooterLink.js","sources":["../../../src/components/footer/FooterLink.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef, ForwardedRef, ReactNode } from 'react';\nimport { Link, LinkProps } from '@mui/material';\n\nexport interface FooterLinkProps extends LinkProps<ElementType> {\n /**\n * Displayed navigation text, can be provided as children as well\n */\n label?: ReactNode;\n}\n\n/**\n * Component to render styled link in the footer\n */\nexport const FooterLink: FC<FooterLinkProps> = forwardRef(({ sx, children, label, ...rest }, ref) => {\n return (\n <Link\n sx={{\n // icon and text next to each other\n display: 'inline-flex',\n gap: 1.5,\n alignItems: 'center',\n justifyContent: 'flex-start',\n padding: '4px 8px',\n // styling\n '&, &:hover': {\n textDecoration: 'underline',\n color: 'common.white',\n },\n // size of icon\n '& .MuiSvgIcon-root': {\n fontSize: '20px',\n },\n ...sx,\n }}\n variant=\"list\"\n ref={ref as ForwardedRef<HTMLAnchorElement>}\n {...rest}\n >\n {children || label}\n </Link>\n );\n});\n"],"names":["FooterLink","forwardRef","sx","children","label","rest","ref","_jsx","Link","display","gap","alignItems","justifyContent","padding","textDecoration","color","fontSize","variant"],"mappings":"sHAaaA,EAAkCC,EAAW,EAAGC,KAAIC,WAAUC,WAAUC,GAAQC,IAEzFC,EAACC,EAAI,CACHN,GAAI,CAEFO,QAAS,cACTC,IAAK,IACLC,WAAY,SACZC,eAAgB,aAChBC,QAAS,UAET,aAAc,CACZC,eAAgB,YAChBC,MAAO,gBAGT,qBAAsB,CACpBC,SAAU,WAETd,GAELe,QAAQ,OACRX,IAAKA,KACDD,WAEHF,GAAYC"}
1
+ {"version":3,"file":"FooterLink.js","sources":["../../../src/components/footer/FooterLink.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef, ForwardedRef, ReactNode } from 'react';\nimport { Link, LinkProps } from '@mui/material';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterLinkProps extends LinkProps<ElementType> {\n /**\n * Displayed navigation text, can be provided as children as well\n */\n label?: ReactNode;\n}\n\n/**\n * Component to render styled link in the footer\n */\nexport const FooterLink: FC<FooterLinkProps> = forwardRef(({ sx, children, label, ...rest }, ref) => {\n return (\n <Link\n sx={sxOverride(\n {\n // icon and text next to each other\n display: 'inline-flex',\n gap: 1.5,\n alignItems: 'center',\n justifyContent: 'flex-start',\n padding: '4px 8px',\n // styling\n '&, &:hover': {\n textDecoration: 'underline',\n color: 'common.white',\n },\n // size of icon\n '& .MuiSvgIcon-root': {\n fontSize: '20px',\n },\n },\n sx,\n )}\n variant=\"list\"\n ref={ref as ForwardedRef<HTMLAnchorElement>}\n {...rest}\n >\n {children || label}\n </Link>\n );\n});\n"],"names":["FooterLink","forwardRef","sx","children","label","rest","ref","_jsx","Link","sxOverride","display","gap","alignItems","justifyContent","padding","textDecoration","color","fontSize","variant"],"mappings":"wLAcaA,EAAkCC,EAAW,EAAGC,KAAIC,WAAUC,WAAUC,GAAQC,IAEzFC,EAACC,GACCN,GAAIO,EACF,CAEEC,QAAS,cACTC,IAAK,IACLC,WAAY,SACZC,eAAgB,aAChBC,QAAS,UAET,aAAc,CACZC,eAAgB,YAChBC,MAAO,gBAGT,qBAAsB,CACpBC,SAAU,SAGdf,GAEFgB,QAAQ,OACRZ,IAAKA,KACDD,EAAIF,SAEPA,GAAYC"}
@@ -1,2 +1,2 @@
1
- import{jsx as o}from"react/jsx-runtime";import{forwardRef as r,useState as e}from"react";import{useTheme as t,useMediaQuery as n}from"@mui/material";import{FooterAccordion as a}from"./FooterAccordion.js";const i=r(({sx:r,children:i,label:s,accordionSummaryProps:c,contentProps:d,variant:p="auto",...l},m)=>{const{sx:u,...x}=d??{},{sx:f,...y}=c??{},b=t(),h=n(b.breakpoints.down("lg")),g="auto"===p?h:"accordion"===p,[v,M]=e(!1);return o(a,{ref:m,"data-testid":"FooterMenu",expanded:!g||v,onChange:(o,r)=>M(r),variant:"standard",sx:{flexBasis:{lg:"20%"},borderColor:"onSurface.os700",...!g&&{border:"none"},...r},accordionSummaryProps:{"data-testid":"FooterMenu.label",sx:{padding:"18px 0 8px","& .MuiLink-root":{...b.typography.subheadline,p:0,"&, &:hover":{textDecoration:"none",color:"common.white"}},...!g&&{overflow:"visible","&&:not(.Mui-disabled)":{cursor:"unset"},"& .MuiAccordionSummary-expandIconWrapper":{display:"none"}},...f},...y},label:s,contentProps:{component:"div","data-testid":"FooterMenu.content",sx:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",flexDirection:"column",gap:1.5,"& .MuiLink-root":{...b.typography.caption2,p:0,"&, &:hover":{textDecoration:"none",color:"onSurface.os200"}},...u},...x},...l,children:i},`${g}`)});export{i as FooterMenu};
1
+ import{jsx as o}from"react/jsx-runtime";import{forwardRef as r,useState as e}from"react";import{useTheme as t,useMediaQuery as n}from"@mui/material";import{FooterAccordion as a}from"./FooterAccordion.js";import{sxOverride as i}from"../../utils/sxOverride/sxOverride.js";const s=r(({sx:r,children:s,label:d,accordionSummaryProps:c,contentProps:p,variant:l="auto",...m},u)=>{const{sx:x,...f}=p??{},{sx:y,...b}=c??{},g=t(),h=n(g.breakpoints.down("lg")),v="auto"===l?h:"accordion"===l,[M,S]=e(!1);return o(a,{ref:u,"data-testid":"FooterMenu",expanded:!v||M,onChange:(o,r)=>S(r),variant:"standard",sx:i({flexBasis:{lg:"20%"},borderColor:"onSurface.os700",...!v&&{border:"none"}},r),accordionSummaryProps:{"data-testid":"FooterMenu.label",sx:i({padding:"14px 0","& .MuiLink-root":{...g.typography.subheadline,p:0,"&, &:hover":{textDecoration:"none",color:"common.white"}},...!v&&{padding:"18px 0 8px",overflow:"visible","&&:not(.Mui-disabled)":{cursor:"unset"},"& .MuiAccordionSummary-expandIconWrapper":{display:"none"}}},y),...b},label:d,contentProps:{component:"div","data-testid":"FooterMenu.content",sx:i({display:"flex",alignItems:"flex-start",justifyContent:"flex-start",flexDirection:"column",gap:1.5,"& .MuiLink-root":{...g.typography.caption2,p:0,"&, &:hover":{textDecoration:"none",color:"onSurface.os200"}}},x),...f},...m,children:s},`${v}`)});export{s as FooterMenu};
2
2
  //# sourceMappingURL=FooterMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FooterMenu.js","sources":["../../../src/components/footer/FooterMenu.tsx"],"sourcesContent":["import React, { FC, forwardRef, useState } from 'react';\nimport { Theme, useMediaQuery, useTheme } from '@mui/material';\nimport { FooterAccordion, FooterAccordionProps } from './FooterAccordion';\n\nexport interface FooterMenuProps extends Omit<FooterAccordionProps, 'variant' | 'children'> {\n /**\n * Items in the menu\n */\n children?: React.ReactNode;\n /**\n * Variant of the menu\n * - auto: renders on large resolution as list and on mobile as accordion\n * - list: renders as list with title\n * - accordion: renders as collapsible accordion\n * @default auto\n */\n variant?: 'auto' | 'list' | 'accordion';\n}\n\n/**\n * Section for the secondary links, copyright and optional button\n */\nexport const FooterMenu: FC<FooterMenuProps> = forwardRef(\n ({ sx, children, label, accordionSummaryProps, contentProps, variant = 'auto', ...rest }, ref) => {\n const { sx: contentSx, ...restContent } = contentProps ?? {};\n const { sx: accSummarySx, ...restAccSummary } = accordionSummaryProps ?? {};\n const theme = useTheme();\n const downLg = useMediaQuery<Theme>(theme.breakpoints.down('lg'));\n const isAccordion = variant === 'auto' ? downLg : variant === 'accordion';\n const [expanded, setExpanded] = useState(false);\n\n return (\n <FooterAccordion\n key={`${isAccordion}`}\n ref={ref}\n data-testid=\"FooterMenu\"\n expanded={isAccordion ? expanded : true}\n onChange={(_, v) => setExpanded(v)}\n variant=\"standard\"\n sx={{\n // spacing in the FooterSectionMenu, take max 1/5 of space\n flexBasis: { lg: '20%' },\n borderColor: 'onSurface.os700',\n ...(!isAccordion && {\n border: 'none',\n }),\n ...sx,\n }}\n accordionSummaryProps={{\n ['data-testid']: 'FooterMenu.label',\n sx: {\n // adjust proportions to be closer to menu\n padding: '18px 0 8px',\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.subheadline,\n p: 0,\n '&, &:hover': {\n textDecoration: 'none',\n color: 'common.white',\n },\n },\n ...(!isAccordion && {\n // allow overflow of focus ring\n overflow: 'visible',\n // no longer clickable\n '&&:not(.Mui-disabled)': {\n cursor: 'unset',\n },\n // hide icon\n '& .MuiAccordionSummary-expandIconWrapper': {\n display: 'none',\n },\n }),\n ...accSummarySx,\n },\n ...restAccSummary,\n }}\n label={label}\n contentProps={{\n component: 'div',\n ['data-testid']: 'FooterMenu.content',\n sx: {\n display: 'flex',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n flexDirection: 'column',\n gap: 1.5,\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.caption2,\n p: 0,\n '&, &:hover': {\n textDecoration: 'none',\n color: 'onSurface.os200',\n },\n },\n ...contentSx,\n },\n ...restContent,\n }}\n {...rest}\n >\n {children}\n </FooterAccordion>\n );\n },\n);\n"],"names":["FooterMenu","forwardRef","sx","children","label","accordionSummaryProps","contentProps","variant","rest","ref","contentSx","restContent","accSummarySx","restAccSummary","theme","useTheme","downLg","useMediaQuery","breakpoints","down","isAccordion","expanded","setExpanded","useState","_jsx","FooterAccordion","onChange","_","v","flexBasis","lg","borderColor","border","padding","typography","subheadline","p","textDecoration","color","overflow","cursor","display","component","alignItems","justifyContent","flexDirection","gap","caption2"],"mappings":"4MAsBO,MAAMA,EAAkCC,EAC7C,EAAGC,KAAIC,WAAUC,QAAOC,wBAAuBC,eAAcC,UAAU,UAAWC,GAAQC,KACxF,MAAQP,GAAIQ,KAAcC,GAAgBL,GAAgB,CAAA,GAClDJ,GAAIU,KAAiBC,GAAmBR,GAAyB,CAAA,EACnES,EAAQC,IACRC,EAASC,EAAqBH,EAAMI,YAAYC,KAAK,OACrDC,EAA0B,SAAZb,EAAqBS,EAAqB,cAAZT,GAC3Cc,EAAUC,GAAeC,GAAS,GAEzC,OACEC,EAACC,GAEChB,IAAKA,EAAG,cACI,aACZY,UAAUD,GAAcC,EACxBK,SAAU,CAACC,EAAGC,IAAMN,EAAYM,GAChCrB,QAAQ,WACRL,GAAI,CAEF2B,UAAW,CAAEC,GAAI,OACjBC,YAAa,sBACRX,GAAe,CAClBY,OAAQ,WAEP9B,GAELG,sBAAuB,CACrB,cAAiB,mBACjBH,GAAI,CAEF+B,QAAS,aAET,kBAAmB,IACdnB,EAAMoB,WAAWC,YACpBC,EAAG,EACH,aAAc,CACZC,eAAgB,OAChBC,MAAO,qBAGNlB,GAAe,CAElBmB,SAAU,UAEV,wBAAyB,CACvBC,OAAQ,SAGV,2CAA4C,CAC1CC,QAAS,YAGV7B,MAEFC,GAELT,MAAOA,EACPE,aAAc,CACZoC,UAAW,MACX,cAAiB,qBACjBxC,GAAI,CACFuC,QAAS,OACTE,WAAY,aACZC,eAAgB,aAChBC,cAAe,SACfC,IAAK,IAEL,kBAAmB,IACdhC,EAAMoB,WAAWa,SACpBX,EAAG,EACH,aAAc,CACZC,eAAgB,OAChBC,MAAO,uBAGR5B,MAEFC,MAEDH,WAEHL,GAtEI,GAAGiB"}
1
+ {"version":3,"file":"FooterMenu.js","sources":["../../../src/components/footer/FooterMenu.tsx"],"sourcesContent":["import React, { FC, forwardRef, useState } from 'react';\nimport { Theme, useMediaQuery, useTheme } from '@mui/material';\nimport { FooterAccordion, FooterAccordionProps } from './FooterAccordion';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterMenuProps extends Omit<FooterAccordionProps, 'variant' | 'children'> {\n /**\n * Items in the menu\n */\n children?: React.ReactNode;\n /**\n * Variant of the menu\n * - auto: renders on large resolution as list and on mobile as accordion\n * - list: renders as list with title\n * - accordion: renders as collapsible accordion\n * @default auto\n */\n variant?: 'auto' | 'list' | 'accordion';\n}\n\n/**\n * Section for the secondary links, copyright and optional button\n */\nexport const FooterMenu: FC<FooterMenuProps> = forwardRef(\n ({ sx, children, label, accordionSummaryProps, contentProps, variant = 'auto', ...rest }, ref) => {\n const { sx: contentSx, ...restContent } = contentProps ?? {};\n const { sx: accSummarySx, ...restAccSummary } = accordionSummaryProps ?? {};\n const theme = useTheme();\n const downLg = useMediaQuery<Theme>(theme.breakpoints.down('lg'));\n const isAccordion = variant === 'auto' ? downLg : variant === 'accordion';\n const [expanded, setExpanded] = useState(false);\n\n return (\n <FooterAccordion\n key={`${isAccordion}`}\n ref={ref}\n data-testid=\"FooterMenu\"\n expanded={isAccordion ? expanded : true}\n onChange={(_, v) => setExpanded(v)}\n variant=\"standard\"\n sx={sxOverride(\n {\n // spacing in the FooterSectionMenu, take max 1/5 of space\n flexBasis: { lg: '20%' },\n borderColor: 'onSurface.os700',\n ...(!isAccordion && {\n border: 'none',\n }),\n },\n sx,\n )}\n accordionSummaryProps={{\n ['data-testid']: 'FooterMenu.label',\n sx: sxOverride(\n {\n // adjust proportions\n padding: '14px 0',\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.subheadline,\n p: 0,\n '&, &:hover': {\n textDecoration: 'none',\n color: 'common.white',\n },\n },\n ...(!isAccordion && {\n // adjust proportions to be closer to menu\n padding: '18px 0 8px',\n // allow overflow of focus ring\n overflow: 'visible',\n // no longer clickable\n '&&:not(.Mui-disabled)': {\n cursor: 'unset',\n },\n // hide icon\n '& .MuiAccordionSummary-expandIconWrapper': {\n display: 'none',\n },\n }),\n },\n accSummarySx,\n ),\n ...restAccSummary,\n }}\n label={label}\n contentProps={{\n component: 'div',\n ['data-testid']: 'FooterMenu.content',\n sx: sxOverride(\n {\n display: 'flex',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n flexDirection: 'column',\n gap: 1.5,\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.caption2,\n p: 0,\n '&, &:hover': {\n textDecoration: 'none',\n color: 'onSurface.os200',\n },\n },\n },\n contentSx,\n ),\n ...restContent,\n }}\n {...rest}\n >\n {children}\n </FooterAccordion>\n );\n },\n);\n"],"names":["FooterMenu","forwardRef","sx","children","label","accordionSummaryProps","contentProps","variant","rest","ref","contentSx","restContent","accSummarySx","restAccSummary","theme","useTheme","downLg","useMediaQuery","breakpoints","down","isAccordion","expanded","setExpanded","useState","_jsx","FooterAccordion","onChange","_","v","sxOverride","flexBasis","lg","borderColor","border","padding","typography","subheadline","p","textDecoration","color","overflow","cursor","display","component","alignItems","justifyContent","flexDirection","gap","caption2"],"mappings":"8QAuBO,MAAMA,EAAkCC,EAC7C,EAAGC,KAAIC,WAAUC,QAAOC,wBAAuBC,eAAcC,UAAU,UAAWC,GAAQC,KACxF,MAAQP,GAAIQ,KAAcC,GAAgBL,GAAgB,CAAA,GAClDJ,GAAIU,KAAiBC,GAAmBR,GAAyB,CAAA,EACnES,EAAQC,IACRC,EAASC,EAAqBH,EAAMI,YAAYC,KAAK,OACrDC,EAA0B,SAAZb,EAAqBS,EAAqB,cAAZT,GAC3Cc,EAAUC,GAAeC,GAAS,GAEzC,OACEC,EAACC,GAEChB,IAAKA,EAAG,cACI,aACZY,UAAUD,GAAcC,EACxBK,SAAU,CAACC,EAAGC,IAAMN,EAAYM,GAChCrB,QAAQ,WACRL,GAAI2B,EACF,CAEEC,UAAW,CAAEC,GAAI,OACjBC,YAAa,sBACRZ,GAAe,CAClBa,OAAQ,SAGZ/B,GAEFG,sBAAuB,CACrB,cAAiB,mBACjBH,GAAI2B,EACF,CAEEK,QAAS,SAET,kBAAmB,IACdpB,EAAMqB,WAAWC,YACpBC,EAAG,EACH,aAAc,CACZC,eAAgB,OAChBC,MAAO,qBAGNnB,GAAe,CAElBc,QAAS,aAETM,SAAU,UAEV,wBAAyB,CACvBC,OAAQ,SAGV,2CAA4C,CAC1CC,QAAS,UAIf9B,MAECC,GAELT,MAAOA,EACPE,aAAc,CACZqC,UAAW,MACX,cAAiB,qBACjBzC,GAAI2B,EACF,CACEa,QAAS,OACTE,WAAY,aACZC,eAAgB,aAChBC,cAAe,SACfC,IAAK,IAEL,kBAAmB,IACdjC,EAAMqB,WAAWa,SACpBX,EAAG,EACH,aAAc,CACZC,eAAgB,OAChBC,MAAO,qBAIb7B,MAECC,MAEDH,WAEHL,GA9EI,GAAGiB"}
@@ -1,2 +1,2 @@
1
- import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as o}from"react";import{Box as a}from"@mui/material";const l=o(({sx:o,children:l,className:r,contactSlot:s,contactSlotProps:n,socialSlot:c,socialSlotProps:i,...x},f)=>{const{sx:p,...m}=n??{},{sx:d,...g}=i??{};return t(a,{sx:{display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"space-between",flexWrap:"wrap",gap:{xs:4,lg:2},flexDirection:{xs:"column",lg:"row"},...o},ref:f,"data-testid":"FooterSectionContact",className:["FlowSectionContact-root",r].filter(Boolean).join(" "),...x,children:[t(a,{sx:{display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"flex-start",flexWrap:"wrap",gap:2,flexDirection:{xs:"column",lg:"row"},...p},"data-testid":"FooterSectionContact.contact",...m,children:[l,s]}),e(a,{sx:{display:"flex",alignItems:"center",justifyContent:{xs:"flex-start",lg:"flex-end"},flexWrap:"wrap",gap:.5,...d},"data-testid":"FooterSectionContact.social",...g,children:c})]})});export{l as FooterSectionContact};
1
+ import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as o}from"react";import{Box as r}from"@mui/material";import{sxOverride as a}from"../../utils/sxOverride/sxOverride.js";const l=o(({sx:o,children:l,className:s,contactSlot:i,contactSlotProps:n,socialSlot:c,socialSlotProps:x,...f},p)=>{const{sx:m,...d}=n??{},{sx:g,...u}=x??{};return t(r,{sx:a({display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"space-between",flexWrap:"wrap",gap:{xs:4,lg:2},flexDirection:{xs:"column",lg:"row"}},o),ref:p,"data-testid":"FooterSectionContact",className:["FlowSectionContact-root",s].filter(Boolean).join(" "),...f,children:[t(r,{sx:a({display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"flex-start",flexWrap:"wrap",gap:2,flexDirection:{xs:"column",lg:"row"}},m),"data-testid":"FooterSectionContact.contact",...d,children:[l,i]}),e(r,{sx:a({display:"flex",alignItems:"center",justifyContent:{xs:"flex-start",lg:"flex-end"},flexWrap:"wrap",gap:.5},g),"data-testid":"FooterSectionContact.social",...u,children:c})]})});export{l as FooterSectionContact};
2
2
  //# sourceMappingURL=FooterSectionContact.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FooterSectionContact.js","sources":["../../../src/components/footer/FooterSectionContact.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef, ReactNode } from 'react';\nimport { Box, BoxProps } from '@mui/material';\n\nexport interface FooterSectionContactProps extends BoxProps<ElementType> {\n /**\n * Items that should be rendered in left side\n */\n contactSlot?: ReactNode;\n /**\n * Properties applied to the contact wrapper\n */\n contactSlotProps?: BoxProps<ElementType>;\n /**\n * Items that should be rendered in right side\n */\n socialSlot?: ReactNode;\n /**\n * Properties applied to the social wrapper\n */\n socialSlotProps?: BoxProps<ElementType>;\n}\n\n/**\n * Section for the main contact links and social media\n */\nexport const FooterSectionContact: FC<FooterSectionContactProps> = forwardRef(\n ({ sx, children, className, contactSlot, contactSlotProps, socialSlot, socialSlotProps, ...rest }, ref) => {\n const { sx: contactSlotSx, ...restContactSlot } = contactSlotProps ?? {};\n const { sx: socialSlotSx, ...restSocialSlot } = socialSlotProps ?? {};\n\n return (\n <Box\n sx={{\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n gap: { xs: 4, lg: 2 },\n flexDirection: { xs: 'column', lg: 'row' },\n ...sx,\n }}\n ref={ref}\n data-testid=\"FooterSectionContact\"\n className={['FlowSectionContact-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n <Box\n sx={{\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'flex-start',\n flexWrap: 'wrap',\n gap: 2,\n flexDirection: {\n xs: 'column',\n lg: 'row',\n },\n ...contactSlotSx,\n }}\n data-testid=\"FooterSectionContact.contact\"\n {...restContactSlot}\n >\n {children}\n {contactSlot}\n </Box>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: { xs: 'flex-start', lg: 'flex-end' },\n flexWrap: 'wrap',\n gap: 0.5,\n ...socialSlotSx,\n }}\n data-testid=\"FooterSectionContact.social\"\n {...restSocialSlot}\n >\n {socialSlot}\n </Box>\n </Box>\n );\n },\n);\n"],"names":["FooterSectionContact","forwardRef","sx","children","className","contactSlot","contactSlotProps","socialSlot","socialSlotProps","rest","ref","contactSlotSx","restContactSlot","socialSlotSx","restSocialSlot","_jsxs","Box","display","alignItems","xs","lg","justifyContent","flexWrap","gap","flexDirection","filter","Boolean","join","_jsx"],"mappings":"yHAyBO,MAAMA,EAAsDC,EACjE,EAAGC,KAAIC,WAAUC,YAAWC,cAAaC,mBAAkBC,aAAYC,qBAAoBC,GAAQC,KACjG,MAAQR,GAAIS,KAAkBC,GAAoBN,GAAoB,CAAA,GAC9DJ,GAAIW,KAAiBC,GAAmBN,GAAmB,CAAA,EAEnE,OACEO,EAACC,EAAG,CACFd,GAAI,CACFe,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,gBAChBC,SAAU,OACVC,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAClBI,cAAe,CAAEL,GAAI,SAAUC,GAAI,UAChClB,GAELQ,IAAKA,EAAG,cACI,uBACZN,UAAW,CAAC,0BAA2BA,GAAWqB,OAAOC,SAASC,KAAK,QACnElB,EAAIN,SAAA,CAERY,EAACC,EAAG,CACFd,GAAI,CACFe,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,aAChBC,SAAU,OACVC,IAAK,EACLC,cAAe,CACbL,GAAI,SACJC,GAAI,UAEHT,GACJ,cACW,kCACRC,EAAeT,SAAA,CAElBA,EACAE,KAEHuB,EAACZ,EAAG,CACFd,GAAI,CACFe,QAAS,OACTC,WAAY,SACZG,eAAgB,CAAEF,GAAI,aAAcC,GAAI,YACxCE,SAAU,OACVC,IAAK,MACFV,GACJ,cACW,iCACRC,EAAcX,SAEjBI"}
1
+ {"version":3,"file":"FooterSectionContact.js","sources":["../../../src/components/footer/FooterSectionContact.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef, ReactNode } from 'react';\nimport { Box, BoxProps } from '@mui/material';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterSectionContactProps extends BoxProps<ElementType> {\n /**\n * Items that should be rendered in left side\n */\n contactSlot?: ReactNode;\n /**\n * Properties applied to the contact wrapper\n */\n contactSlotProps?: BoxProps<ElementType>;\n /**\n * Items that should be rendered in right side\n */\n socialSlot?: ReactNode;\n /**\n * Properties applied to the social wrapper\n */\n socialSlotProps?: BoxProps<ElementType>;\n}\n\n/**\n * Section for the main contact links and social media\n */\nexport const FooterSectionContact: FC<FooterSectionContactProps> = forwardRef(\n ({ sx, children, className, contactSlot, contactSlotProps, socialSlot, socialSlotProps, ...rest }, ref) => {\n const { sx: contactSlotSx, ...restContactSlot } = contactSlotProps ?? {};\n const { sx: socialSlotSx, ...restSocialSlot } = socialSlotProps ?? {};\n\n return (\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n gap: { xs: 4, lg: 2 },\n flexDirection: { xs: 'column', lg: 'row' },\n },\n sx,\n )}\n ref={ref}\n data-testid=\"FooterSectionContact\"\n className={['FlowSectionContact-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'flex-start',\n flexWrap: 'wrap',\n gap: 2,\n flexDirection: {\n xs: 'column',\n lg: 'row',\n },\n },\n contactSlotSx,\n )}\n data-testid=\"FooterSectionContact.contact\"\n {...restContactSlot}\n >\n {children}\n {contactSlot}\n </Box>\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: 'center',\n justifyContent: { xs: 'flex-start', lg: 'flex-end' },\n flexWrap: 'wrap',\n gap: 0.5,\n },\n socialSlotSx,\n )}\n data-testid=\"FooterSectionContact.social\"\n {...restSocialSlot}\n >\n {socialSlot}\n </Box>\n </Box>\n );\n },\n);\n"],"names":["FooterSectionContact","forwardRef","sx","children","className","contactSlot","contactSlotProps","socialSlot","socialSlotProps","rest","ref","contactSlotSx","restContactSlot","socialSlotSx","restSocialSlot","_jsxs","Box","sxOverride","display","alignItems","xs","lg","justifyContent","flexWrap","gap","flexDirection","filter","Boolean","join","_jsx"],"mappings":"2LA0BO,MAAMA,EAAsDC,EACjE,EAAGC,KAAIC,WAAUC,YAAWC,cAAaC,mBAAkBC,aAAYC,qBAAoBC,GAAQC,KACjG,MAAQR,GAAIS,KAAkBC,GAAoBN,GAAoB,CAAA,GAC9DJ,GAAIW,KAAiBC,GAAmBN,GAAmB,CAAA,EAEnE,OACEO,EAACC,GACCd,GAAIe,EACF,CACEC,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,gBAChBC,SAAU,OACVC,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAClBI,cAAe,CAAEL,GAAI,SAAUC,GAAI,QAErCnB,GAEFQ,IAAKA,EAAG,cACI,uBACZN,UAAW,CAAC,0BAA2BA,GAAWsB,OAAOC,SAASC,KAAK,QACnEnB,EAAIN,SAAA,CAERY,EAACC,EAAG,CACFd,GAAIe,EACF,CACEC,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,aAChBC,SAAU,OACVC,IAAK,EACLC,cAAe,CACbL,GAAI,SACJC,GAAI,QAGRV,GACD,cACW,kCACRC,YAEHT,EACAE,KAEHwB,EAACb,GACCd,GAAIe,EACF,CACEC,QAAS,OACTC,WAAY,SACZG,eAAgB,CAAEF,GAAI,aAAcC,GAAI,YACxCE,SAAU,OACVC,IAAK,IAEPX,GACD,cACW,iCACRC,EAAcX,SAEjBI"}
@@ -1,2 +1,2 @@
1
- import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as o}from"react";import{useTheme as r,Box as n,Typography as i,Button as l}from"@mui/material";const s=o(({sx:o,children:s,className:a,textSlot:c,buttonSlot:x,buttonSlotProps:p,textTypographyProps:d,buttonProps:m,linksWrapperProps:f,...g},u)=>{const{sx:h,...y}=d??{},{sx:S,...k}=f??{},{sx:b,...w}=p??{},{label:L,...F}=m??{},j=r();return t(n,{sx:{display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"space-between",flexWrap:"wrap",gap:2,flexDirection:{xs:"column",lg:"row"},...o},ref:u,"data-testid":"FooterSectionLinks",className:["FooterSectionLinks-root",a].filter(Boolean).join(" "),...g,children:[c&&e(i,{variant:"disclaimer1",sx:{my:{xs:2,lg:0},color:"onSurface.os200",...s&&{display:"inline-flex",alignItems:"center",justifyContent:"flex-start",mr:{lg:2},"&:after":{content:{xs:"none",lg:"''"},display:"block",height:"14px",width:"1px",backgroundColor:"onSurface.os700",ml:4},order:{xs:1,lg:0}},...h},"data-testid":"FooterSectionLinks.text",...y,children:c}),s&&e(n,{sx:{display:"flex",alignItems:{xs:"flex-start",lg:"center"},flexDirection:{xs:"column",lg:"row"},flexWrap:"wrap",flexGrow:"1",gap:{xs:2,lg:3},"& .MuiButton-root":{alignSelf:{xs:"stretch",lg:"auto"}},"& .MuiLink-root":{...j.typography.disclaimer1,p:0,"&, &:hover":{textDecoration:"underline",color:"common.white"}},...S},"data-testid":"FooterSectionLinks.content",...k,children:s}),(x||L)&&e(n,{"data-testid":"FooterSectionLinks.button",sx:{order:2,...b},...w,children:x||e(l,{variant:"shortcut",color:"inherit",...F,children:L})})]})});export{s as FooterSectionLinks};
1
+ import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as o}from"react";import{useTheme as r,Box as i,Typography as n,Button as s}from"@mui/material";import{sxOverride as l}from"../../utils/sxOverride/sxOverride.js";const a=o(({sx:o,children:a,className:c,textSlot:x,buttonSlot:p,buttonSlotProps:d,textTypographyProps:m,buttonProps:f,linksWrapperProps:u,...g},h)=>{const{sx:y,...S}=m??{},{sx:k,...b}=u??{},{sx:w,...L}=d??{},{label:j,...v}=f??{},F=r();return t(i,{sx:l({display:"flex",alignItems:{xs:"flex-start",lg:"center"},justifyContent:"space-between",flexWrap:"wrap",gap:2,flexDirection:{xs:"column",lg:"row"}},o),ref:h,"data-testid":"FooterSectionLinks",className:["FooterSectionLinks-root",c].filter(Boolean).join(" "),...g,children:[x&&e(n,{variant:"disclaimer1",sx:l({my:{xs:2,lg:0},color:"onSurface.os200",...a&&{display:"inline-flex",alignItems:"center",justifyContent:"flex-start",mr:{lg:2},"&:after":{content:{xs:"none",lg:"''"},display:"block",height:"14px",width:"1px",backgroundColor:"onSurface.os700",ml:4},order:{xs:1,lg:0}}},y),"data-testid":"FooterSectionLinks.text",...S,children:x}),a&&e(i,{sx:l({display:"flex",alignItems:{xs:"flex-start",lg:"center"},flexDirection:{xs:"column",lg:"row"},flexWrap:"wrap",flexGrow:"1",gap:{xs:2,lg:3},"& .MuiButton-root":{alignSelf:{xs:"stretch",lg:"auto"}},"& .MuiLink-root":{...F.typography.disclaimer1,p:0,"&, &:hover":{textDecoration:"underline",color:"common.white"}}},k),"data-testid":"FooterSectionLinks.content",...b,children:a}),(p||j)&&e(i,{"data-testid":"FooterSectionLinks.button",sx:l({order:2},w),...L,children:p||e(s,{variant:"shortcut",color:"inherit",...v,children:j})})]})});export{a as FooterSectionLinks};
2
2
  //# sourceMappingURL=FooterSectionLinks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FooterSectionLinks.js","sources":["../../../src/components/footer/FooterSectionLinks.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef } from 'react';\nimport { Box, BoxProps, Button, ButtonProps, Typography, TypographyProps, useTheme } from '@mui/material';\n\nexport interface FooterSectionLinksProps extends BoxProps<ElementType> {\n /**\n * Text wrapped by styled Typography component\n */\n textSlot?: React.ReactNode;\n /**\n * Properties applied to text typography\n */\n textTypographyProps?: TypographyProps<ElementType>;\n /**\n * Alternative to providing button props\n */\n buttonSlot?: React.ReactNode;\n /**\n * Properties applied to button wrapper\n */\n buttonSlotProps?: BoxProps<ElementType>;\n /**\n * Props for button\n */\n buttonProps?: ButtonProps & { label?: React.ReactNode };\n /**\n * Properties applied to link container\n */\n linksWrapperProps?: BoxProps<ElementType>;\n}\n\n/**\n * Section for the secondary links, copyright and optional button\n */\nexport const FooterSectionLinks: FC<FooterSectionLinksProps> = forwardRef(\n (\n {\n sx,\n children,\n className,\n textSlot,\n buttonSlot,\n buttonSlotProps,\n textTypographyProps,\n buttonProps,\n linksWrapperProps,\n ...rest\n },\n ref,\n ) => {\n const { sx: testSx, ...restText } = textTypographyProps ?? {};\n const { sx: linksWrapperSx, ...restLinksWrapper } = linksWrapperProps ?? {};\n const { sx: buttonSlotSx, ...restButtonSlot } = buttonSlotProps ?? {};\n const { label, ...restButton } = buttonProps ?? {};\n const theme = useTheme();\n\n return (\n <Box\n sx={{\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n gap: 2,\n flexDirection: { xs: 'column', lg: 'row' },\n ...sx,\n }}\n ref={ref}\n data-testid=\"FooterSectionLinks\"\n className={['FooterSectionLinks-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n {textSlot && (\n <Typography\n variant=\"disclaimer1\"\n sx={{\n my: { xs: 2, lg: 0 },\n color: 'onSurface.os200',\n ...(children && {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n // separator between text and links\n mr: { lg: 2 },\n '&:after': {\n content: { xs: 'none', lg: \"''\" },\n display: 'block',\n height: '14px',\n width: '1px',\n backgroundColor: 'onSurface.os700',\n ml: 4,\n },\n // move after the links on mobile\n order: { xs: 1, lg: 0 },\n }),\n ...testSx,\n }}\n data-testid=\"FooterSectionLinks.text\"\n {...restText}\n >\n {textSlot}\n </Typography>\n )}\n {children && (\n <Box\n sx={{\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n flexDirection: { xs: 'column', lg: 'row' },\n flexWrap: 'wrap',\n flexGrow: '1',\n gap: { xs: 2, lg: 3 },\n // manipulate style of buttons inside\n '& .MuiButton-root': {\n alignSelf: { xs: 'stretch', lg: 'auto' },\n },\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.disclaimer1,\n p: 0,\n '&, &:hover': {\n textDecoration: 'underline',\n color: 'common.white',\n },\n },\n ...linksWrapperSx,\n }}\n data-testid=\"FooterSectionLinks.content\"\n {...restLinksWrapper}\n >\n {children}\n </Box>\n )}\n {(buttonSlot || label) && (\n <Box data-testid=\"FooterSectionLinks.button\" sx={{ order: 2, ...buttonSlotSx }} {...restButtonSlot}>\n {buttonSlot || (\n <Button variant=\"shortcut\" color=\"inherit\" {...restButton}>\n {label}\n </Button>\n )}\n </Box>\n )}\n </Box>\n );\n },\n);\n"],"names":["FooterSectionLinks","forwardRef","sx","children","className","textSlot","buttonSlot","buttonSlotProps","textTypographyProps","buttonProps","linksWrapperProps","rest","ref","testSx","restText","linksWrapperSx","restLinksWrapper","buttonSlotSx","restButtonSlot","label","restButton","theme","useTheme","_jsxs","Box","display","alignItems","xs","lg","justifyContent","flexWrap","gap","flexDirection","filter","Boolean","join","_jsx","Typography","variant","my","color","mr","content","height","width","backgroundColor","ml","order","flexGrow","alignSelf","typography","disclaimer1","p","textDecoration","Button"],"mappings":"mKAiCO,MAAMA,EAAkDC,EAC7D,EAEIC,KACAC,WACAC,YACAC,WACAC,aACAC,kBACAC,sBACAC,cACAC,uBACGC,GAELC,KAEA,MAAQV,GAAIW,KAAWC,GAAaN,GAAuB,CAAA,GACnDN,GAAIa,KAAmBC,GAAqBN,GAAqB,CAAA,GACjER,GAAIe,KAAiBC,GAAmBX,GAAmB,CAAA,GAC7DY,MAAEA,KAAUC,GAAeX,GAAe,CAAA,EAC1CY,EAAQC,IAEd,OACEC,EAACC,EAAG,CACFtB,GAAI,CACFuB,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,gBAChBC,SAAU,OACVC,IAAK,EACLC,cAAe,CAAEL,GAAI,SAAUC,GAAI,UAChC1B,GAELU,IAAKA,EAAG,cACI,qBACZR,UAAW,CAAC,0BAA2BA,GAAW6B,OAAOC,SAASC,KAAK,QACnExB,YAEHN,GACC+B,EAACC,EAAU,CACTC,QAAQ,cACRpC,GAAI,CACFqC,GAAI,CAAEZ,GAAI,EAAGC,GAAI,GACjBY,MAAO,qBACHrC,GAAY,CACdsB,QAAS,cACTC,WAAY,SACZG,eAAgB,aAEhBY,GAAI,CAAEb,GAAI,GACV,UAAW,CACTc,QAAS,CAAEf,GAAI,OAAQC,GAAI,MAC3BH,QAAS,QACTkB,OAAQ,OACRC,MAAO,MACPC,gBAAiB,kBACjBC,GAAI,GAGNC,MAAO,CAAEpB,GAAI,EAAGC,GAAI,OAEnBf,GACJ,cACW,6BACRC,EAAQX,SAEXE,IAGJF,GACCiC,EAACZ,EAAG,CACFtB,GAAI,CACFuB,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCI,cAAe,CAAEL,GAAI,SAAUC,GAAI,OACnCE,SAAU,OACVkB,SAAU,IACVjB,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAElB,oBAAqB,CACnBqB,UAAW,CAAEtB,GAAI,UAAWC,GAAI,SAGlC,kBAAmB,IACdP,EAAM6B,WAAWC,YACpBC,EAAG,EACH,aAAc,CACZC,eAAgB,YAChBb,MAAO,oBAGRzB,GACJ,cACW,gCACRC,EAAgBb,SAEnBA,KAGHG,GAAca,IACdiB,EAACZ,EAAG,CAAA,cAAa,4BAA4BtB,GAAI,CAAE6C,MAAO,KAAM9B,MAAoBC,EAAcf,SAC/FG,GACC8B,EAACkB,EAAM,CAAChB,QAAQ,WAAWE,MAAM,aAAcpB,EAAUjB,SACtDgB"}
1
+ {"version":3,"file":"FooterSectionLinks.js","sources":["../../../src/components/footer/FooterSectionLinks.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef } from 'react';\nimport { Box, BoxProps, Button, ButtonProps, Typography, TypographyProps, useTheme } from '@mui/material';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterSectionLinksProps extends BoxProps<ElementType> {\n /**\n * Text wrapped by styled Typography component\n */\n textSlot?: React.ReactNode;\n /**\n * Properties applied to text typography\n */\n textTypographyProps?: TypographyProps<ElementType>;\n /**\n * Alternative to providing button props\n */\n buttonSlot?: React.ReactNode;\n /**\n * Properties applied to button wrapper\n */\n buttonSlotProps?: BoxProps<ElementType>;\n /**\n * Props for button\n */\n buttonProps?: ButtonProps & { label?: React.ReactNode };\n /**\n * Properties applied to link container\n */\n linksWrapperProps?: BoxProps<ElementType>;\n}\n\n/**\n * Section for the secondary links, copyright and optional button\n */\nexport const FooterSectionLinks: FC<FooterSectionLinksProps> = forwardRef(\n (\n {\n sx,\n children,\n className,\n textSlot,\n buttonSlot,\n buttonSlotProps,\n textTypographyProps,\n buttonProps,\n linksWrapperProps,\n ...rest\n },\n ref,\n ) => {\n const { sx: testSx, ...restText } = textTypographyProps ?? {};\n const { sx: linksWrapperSx, ...restLinksWrapper } = linksWrapperProps ?? {};\n const { sx: buttonSlotSx, ...restButtonSlot } = buttonSlotProps ?? {};\n const { label, ...restButton } = buttonProps ?? {};\n const theme = useTheme();\n\n return (\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n gap: 2,\n flexDirection: { xs: 'column', lg: 'row' },\n },\n sx,\n )}\n ref={ref}\n data-testid=\"FooterSectionLinks\"\n className={['FooterSectionLinks-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n {textSlot && (\n <Typography\n variant=\"disclaimer1\"\n sx={sxOverride(\n {\n my: { xs: 2, lg: 0 },\n color: 'onSurface.os200',\n ...(children && {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n // separator between text and links\n mr: { lg: 2 },\n '&:after': {\n content: { xs: 'none', lg: \"''\" },\n display: 'block',\n height: '14px',\n width: '1px',\n backgroundColor: 'onSurface.os700',\n ml: 4,\n },\n // move after the links on mobile\n order: { xs: 1, lg: 0 },\n }),\n },\n testSx,\n )}\n data-testid=\"FooterSectionLinks.text\"\n {...restText}\n >\n {textSlot}\n </Typography>\n )}\n {children && (\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: { xs: 'flex-start', lg: 'center' },\n flexDirection: { xs: 'column', lg: 'row' },\n flexWrap: 'wrap',\n flexGrow: '1',\n gap: { xs: 2, lg: 3 },\n // manipulate style of buttons inside\n '& .MuiButton-root': {\n alignSelf: { xs: 'stretch', lg: 'auto' },\n },\n // manipulates style of links inside\n '& .MuiLink-root': {\n ...theme.typography.disclaimer1,\n p: 0,\n '&, &:hover': {\n textDecoration: 'underline',\n color: 'common.white',\n },\n },\n },\n linksWrapperSx,\n )}\n data-testid=\"FooterSectionLinks.content\"\n {...restLinksWrapper}\n >\n {children}\n </Box>\n )}\n {(buttonSlot || label) && (\n <Box data-testid=\"FooterSectionLinks.button\" sx={sxOverride({ order: 2 }, buttonSlotSx)} {...restButtonSlot}>\n {buttonSlot || (\n <Button variant=\"shortcut\" color=\"inherit\" {...restButton}>\n {label}\n </Button>\n )}\n </Box>\n )}\n </Box>\n );\n },\n);\n"],"names":["FooterSectionLinks","forwardRef","sx","children","className","textSlot","buttonSlot","buttonSlotProps","textTypographyProps","buttonProps","linksWrapperProps","rest","ref","testSx","restText","linksWrapperSx","restLinksWrapper","buttonSlotSx","restButtonSlot","label","restButton","theme","useTheme","_jsxs","Box","sxOverride","display","alignItems","xs","lg","justifyContent","flexWrap","gap","flexDirection","filter","Boolean","join","_jsx","Typography","variant","my","color","mr","content","height","width","backgroundColor","ml","order","flexGrow","alignSelf","typography","disclaimer1","p","textDecoration","Button"],"mappings":"qOAkCO,MAAMA,EAAkDC,EAC7D,EAEIC,KACAC,WACAC,YACAC,WACAC,aACAC,kBACAC,sBACAC,cACAC,uBACGC,GAELC,KAEA,MAAQV,GAAIW,KAAWC,GAAaN,GAAuB,CAAA,GACnDN,GAAIa,KAAmBC,GAAqBN,GAAqB,CAAA,GACjER,GAAIe,KAAiBC,GAAmBX,GAAmB,CAAA,GAC7DY,MAAEA,KAAUC,GAAeX,GAAe,CAAA,EAC1CY,EAAQC,IAEd,OACEC,EAACC,GACCtB,GAAIuB,EACF,CACEC,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCC,eAAgB,gBAChBC,SAAU,OACVC,IAAK,EACLC,cAAe,CAAEL,GAAI,SAAUC,GAAI,QAErC3B,GAEFU,IAAKA,gBACO,qBACZR,UAAW,CAAC,0BAA2BA,GAAW8B,OAAOC,SAASC,KAAK,QACnEzB,EAAIR,SAAA,CAEPE,GACCgC,EAACC,EAAU,CACTC,QAAQ,cACRrC,GAAIuB,EACF,CACEe,GAAI,CAAEZ,GAAI,EAAGC,GAAI,GACjBY,MAAO,qBACHtC,GAAY,CACduB,QAAS,cACTC,WAAY,SACZG,eAAgB,aAEhBY,GAAI,CAAEb,GAAI,GACV,UAAW,CACTc,QAAS,CAAEf,GAAI,OAAQC,GAAI,MAC3BH,QAAS,QACTkB,OAAQ,OACRC,MAAO,MACPC,gBAAiB,kBACjBC,GAAI,GAGNC,MAAO,CAAEpB,GAAI,EAAGC,GAAI,KAGxBhB,GACD,cACW,6BACRC,EAAQX,SAEXE,IAGJF,GACCkC,EAACb,GACCtB,GAAIuB,EACF,CACEC,QAAS,OACTC,WAAY,CAAEC,GAAI,aAAcC,GAAI,UACpCI,cAAe,CAAEL,GAAI,SAAUC,GAAI,OACnCE,SAAU,OACVkB,SAAU,IACVjB,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAElB,oBAAqB,CACnBqB,UAAW,CAAEtB,GAAI,UAAWC,GAAI,SAGlC,kBAAmB,IACdR,EAAM8B,WAAWC,YACpBC,EAAG,EACH,aAAc,CACZC,eAAgB,YAChBb,MAAO,kBAIb1B,GACD,cACW,gCACRC,EAAgBb,SAEnBA,KAGHG,GAAca,IACdkB,EAACb,EAAG,CAAA,cAAa,4BAA4BtB,GAAIuB,EAAW,CAAEuB,MAAO,GAAK/B,MAAmBC,EAAcf,SACxGG,GACC+B,EAACkB,EAAM,CAAChB,QAAQ,WAAWE,MAAM,aAAcrB,EAAUjB,SACtDgB"}
@@ -1,2 +1,2 @@
1
- import{jsx as t}from"react/jsx-runtime";import{forwardRef as o}from"react";import{Box as e}from"@mui/material";const r=o(({sx:o,children:r,className:l,contactSlot:s,contactSlotProps:i,socialSlot:a,socialSlotProps:c,...n},m)=>t(e,{sx:{display:"flex",alignItems:{xs:"stretch",lg:"flex-start"},justifyContent:"stretch",flexDirection:{xs:"column",lg:"row"},gap:{xs:0,lg:2},mb:{xs:4,lg:8},...o},ref:m,"data-testid":"FooterSectionMenu",className:["FooterSectionMenu-root",l].filter(Boolean).join(" "),...n,children:r}));export{r as FooterSectionMenu};
1
+ import{jsx as t}from"react/jsx-runtime";import{forwardRef as o}from"react";import{Box as e}from"@mui/material";import{sxOverride as r}from"../../utils/sxOverride/sxOverride.js";const s=o(({sx:o,children:s,className:i,contactSlot:l,contactSlotProps:a,socialSlot:c,socialSlotProps:n,...m},x)=>t(e,{sx:r({display:"flex",alignItems:{xs:"stretch",lg:"flex-start"},justifyContent:"stretch",flexDirection:{xs:"column",lg:"row"},gap:{xs:0,lg:2},mb:{xs:4,lg:8}},o),ref:x,"data-testid":"FooterSectionMenu",className:["FooterSectionMenu-root",i].filter(Boolean).join(" "),...m,children:s}));export{s as FooterSectionMenu};
2
2
  //# sourceMappingURL=FooterSectionMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FooterSectionMenu.js","sources":["../../../src/components/footer/FooterSectionMenu.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef } from 'react';\nimport { Box, BoxProps } from '@mui/material';\n\nexport interface FooterSectionMenuProps extends BoxProps<ElementType> {}\n\n/**\n * Section for the multiple FooterMenu\n */\nexport const FooterSectionMenu: FC<FooterSectionMenuProps> = forwardRef(\n ({ sx, children, className, contactSlot, contactSlotProps, socialSlot, socialSlotProps, ...rest }, ref) => {\n return (\n <Box\n sx={{\n display: 'flex',\n alignItems: { xs: 'stretch', lg: 'flex-start' },\n justifyContent: 'stretch',\n flexDirection: { xs: 'column', lg: 'row' },\n gap: { xs: 0, lg: 2 },\n mb: { xs: 4, lg: 8 },\n ...sx,\n }}\n ref={ref}\n data-testid=\"FooterSectionMenu\"\n className={['FooterSectionMenu-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n {children}\n </Box>\n );\n },\n);\n"],"names":["FooterSectionMenu","forwardRef","sx","children","className","contactSlot","contactSlotProps","socialSlot","socialSlotProps","rest","ref","_jsx","Box","display","alignItems","xs","lg","justifyContent","flexDirection","gap","mb","filter","Boolean","join"],"mappings":"+GAQO,MAAMA,EAAgDC,EAC3D,EAAGC,KAAIC,WAAUC,YAAWC,cAAaC,mBAAkBC,aAAYC,qBAAoBC,GAAQC,IAE/FC,EAACC,EAAG,CACFV,GAAI,CACFW,QAAS,OACTC,WAAY,CAAEC,GAAI,UAAWC,GAAI,cACjCC,eAAgB,UAChBC,cAAe,CAAEH,GAAI,SAAUC,GAAI,OACnCG,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAClBI,GAAI,CAAEL,GAAI,EAAGC,GAAI,MACdd,GAELQ,IAAKA,EAAG,cACI,oBACZN,UAAW,CAAC,yBAA0BA,GAAWiB,OAAOC,SAASC,KAAK,QAClEd,EAAIN,SAEPA"}
1
+ {"version":3,"file":"FooterSectionMenu.js","sources":["../../../src/components/footer/FooterSectionMenu.tsx"],"sourcesContent":["import React, { ElementType, FC, forwardRef } from 'react';\nimport { Box, BoxProps } from '@mui/material';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FooterSectionMenuProps extends BoxProps<ElementType> {}\n\n/**\n * Section for the multiple FooterMenu\n */\nexport const FooterSectionMenu: FC<FooterSectionMenuProps> = forwardRef(\n ({ sx, children, className, contactSlot, contactSlotProps, socialSlot, socialSlotProps, ...rest }, ref) => {\n return (\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: { xs: 'stretch', lg: 'flex-start' },\n justifyContent: 'stretch',\n flexDirection: { xs: 'column', lg: 'row' },\n gap: { xs: 0, lg: 2 },\n mb: { xs: 4, lg: 8 },\n },\n sx,\n )}\n ref={ref}\n data-testid=\"FooterSectionMenu\"\n className={['FooterSectionMenu-root', className].filter(Boolean).join(' ')}\n {...rest}\n >\n {children}\n </Box>\n );\n },\n);\n"],"names":["FooterSectionMenu","forwardRef","sx","children","className","contactSlot","contactSlotProps","socialSlot","socialSlotProps","rest","ref","_jsx","Box","sxOverride","display","alignItems","xs","lg","justifyContent","flexDirection","gap","mb","filter","Boolean","join"],"mappings":"iLASO,MAAMA,EAAgDC,EAC3D,EAAGC,KAAIC,WAAUC,YAAWC,cAAaC,mBAAkBC,aAAYC,qBAAoBC,GAAQC,IAE/FC,EAACC,GACCV,GAAIW,EACF,CACEC,QAAS,OACTC,WAAY,CAAEC,GAAI,UAAWC,GAAI,cACjCC,eAAgB,UAChBC,cAAe,CAAEH,GAAI,SAAUC,GAAI,OACnCG,IAAK,CAAEJ,GAAI,EAAGC,GAAI,GAClBI,GAAI,CAAEL,GAAI,EAAGC,GAAI,IAEnBf,GAEFQ,IAAKA,EAAG,cACI,oBACZN,UAAW,CAAC,yBAA0BA,GAAWkB,OAAOC,SAASC,KAAK,QAClEf,EAAIN,SAEPA"}
@@ -1,2 +1,2 @@
1
- import{jsxs as r,jsx as i}from"react/jsx-runtime";import{CircleExclamationFilledIcon as e}from"../icon/filled/CircleExclamationFilledIcon.js";import{CircleInformationFilledIcon as t}from"../icon/filled/CircleInformationFilledIcon.js";import{WarningFilledIcon as o}from"../icon/filled/WarningFilledIcon.js";import{Box as n,Typography as l}from"@mui/material";import{forwardRef as a,useMemo as s}from"react";const m=a(({children:a,variant:m="error",sx:c,iconProps:f,IconComponent:x,typographyProps:p,...d},g)=>{const{sx:u,...h}=f||{},{sx:I,...j}=p||{},[w,y]=s(()=>{switch(m){case"error":return["error.main",o];case"warning":return["warning.main",e];default:return["info.main",t]}},[m]);return r(n,{role:"alert","aria-atomic":"true","aria-live":"assertive",sx:{display:"flex",width:"100%",alignItems:"flex-start",justifyContent:"flex-start",gap:1,textAlign:"left",color:w,pb:1,...c},ref:g,...d,children:[i(x||y,{sx:{fontSize:"20px",mx:"2px",...u},...h}),i(l,{sx:{flexGrow:"1",fontSize:{xs:"14px"},lineHeight:{xs:"20px"},fontWeight:{xs:"400"},...I},...j,children:a})]})});export{m as FormMessage};
1
+ import{jsxs as r,jsx as i}from"react/jsx-runtime";import{CircleExclamationFilledIcon as e}from"../icon/filled/CircleExclamationFilledIcon.js";import{CircleInformationFilledIcon as t}from"../icon/filled/CircleInformationFilledIcon.js";import{WarningFilledIcon as o}from"../icon/filled/WarningFilledIcon.js";import{Box as n,Typography as l}from"@mui/material";import{forwardRef as a,useMemo as s}from"react";import{sxOverride as m}from"../../utils/sxOverride/sxOverride.js";const x=a(({children:a,variant:x="error",sx:c,iconProps:f,IconComponent:p,typographyProps:d,...u},g)=>{const{sx:h,...j}=f||{},{sx:I,...v}=d||{},[w,y]=s(()=>{switch(x){case"error":return["error.main",o];case"warning":return["warning.main",e];default:return["info.main",t]}},[x]),C=p||y;return r(n,{role:"alert","aria-atomic":"true","aria-live":"assertive",sx:m({display:"flex",width:"100%",alignItems:"flex-start",justifyContent:"flex-start",gap:1,textAlign:"left",color:w,pb:1},c),ref:g,...u,children:[i(C,{sx:m({fontSize:"20px",mx:"2px"},h),...j}),i(l,{sx:m({flexGrow:"1",fontSize:{xs:"14px"},lineHeight:{xs:"20px"},fontWeight:{xs:"400"}},I),...v,children:a})]})});export{x as FormMessage};
2
2
  //# sourceMappingURL=FormMessage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormMessage.js","sources":["../../../src/components/formMessage/FormMessage.tsx"],"sourcesContent":["import { CircleExclamationFilledIcon } from '@/src/components/icon/filled/CircleExclamationFilledIcon';\nimport { CircleInformationFilledIcon } from '@/src/components/icon/filled/CircleInformationFilledIcon';\nimport { WarningFilledIcon } from '@/src/components/icon/filled/WarningFilledIcon';\nimport { Box, BoxProps, SvgIconProps, Typography, TypographyProps } from '@mui/material';\nimport React, { ComponentType, ElementType, forwardRef, useMemo } from 'react';\n\nexport interface FormMessageProps extends BoxProps<ElementType> {\n /**\n * Defines which variant of Banner component should be rendered\n * @default error\n */\n variant?: 'info' | 'warning' | 'error';\n /**\n * Properties passed to indicator icon\n */\n iconProps?: SvgIconProps;\n /**\n * Icon node to be used\n */\n IconComponent?: ComponentType<SvgIconProps>;\n /**\n * Properties passed to wrapper of children\n */\n typographyProps?: TypographyProps<ElementType>;\n}\n\n/**\n * Message indicating form error or additional info.\n * Intended to be used in combination with <FormGroup />\n */\nexport const FormMessage: React.FC<FormMessageProps> = forwardRef(\n ({ children, variant = 'error', sx, iconProps, IconComponent, typographyProps, ...rest }, ref) => {\n const { sx: iconSx, ...restIcon } = iconProps || {};\n const { sx: typographySx, ...restTypography } = typographyProps || {};\n\n const [color, IconVariantComponent] = useMemo(() => {\n switch (variant) {\n case 'error':\n return ['error.main', WarningFilledIcon];\n case 'warning':\n return ['warning.main', CircleExclamationFilledIcon];\n case 'info':\n default:\n return ['info.main', CircleInformationFilledIcon];\n }\n }, [variant]);\n const ErrorMessageIcon = IconComponent || IconVariantComponent;\n\n return (\n <Box\n role=\"alert\"\n aria-atomic=\"true\"\n aria-live=\"assertive\"\n sx={{\n display: 'flex',\n width: '100%',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n gap: 1,\n textAlign: 'left',\n color: color,\n pb: 1,\n ...sx,\n }}\n ref={ref}\n {...rest}\n >\n <ErrorMessageIcon\n sx={{\n fontSize: '20px',\n // align with checkbox/radio (return to 24px width)\n mx: '2px',\n ...iconSx,\n }}\n {...restIcon}\n />\n <Typography\n sx={{\n flexGrow: '1',\n // custom font according to Figma\n fontSize: { xs: '14px' },\n lineHeight: { xs: '20px' },\n fontWeight: { xs: '400' },\n ...typographySx,\n }}\n {...restTypography}\n >\n {children}\n </Typography>\n </Box>\n );\n },\n);\n"],"names":["FormMessage","forwardRef","children","variant","sx","iconProps","IconComponent","typographyProps","rest","ref","iconSx","restIcon","typographySx","restTypography","color","IconVariantComponent","useMemo","WarningFilledIcon","CircleExclamationFilledIcon","CircleInformationFilledIcon","_jsxs","Box","role","display","width","alignItems","justifyContent","gap","textAlign","pb","_jsx","fontSize","mx","Typography","flexGrow","xs","lineHeight","fontWeight"],"mappings":"sZA8BO,MAAMA,EAA0CC,EACrD,EAAGC,WAAUC,UAAU,QAASC,KAAIC,YAAWC,gBAAeC,qBAAoBC,GAAQC,KACxF,MAAQL,GAAIM,KAAWC,GAAaN,GAAa,CAAA,GACzCD,GAAIQ,KAAiBC,GAAmBN,GAAmB,CAAA,GAE5DO,EAAOC,GAAwBC,EAAQ,KAC5C,OAAQb,GACN,IAAK,QACH,MAAO,CAAC,aAAcc,GACxB,IAAK,UACH,MAAO,CAAC,eAAgBC,GAE1B,QACE,MAAO,CAAC,YAAaC,KAExB,CAAChB,IAGJ,OACEiB,EAACC,EAAG,CACFC,KAAK,QAAO,cACA,OAAM,YACR,YACVlB,GAAI,CACFmB,QAAS,OACTC,MAAO,OACPC,WAAY,aACZC,eAAgB,aAChBC,IAAK,EACLC,UAAW,OACXd,MAAOA,EACPe,GAAI,KACDzB,GAELK,IAAKA,KACDD,YAEJsB,EArBqBxB,GAAiBS,EAqBrB,CACfX,GAAI,CACF2B,SAAU,OAEVC,GAAI,SACDtB,MAEDC,IAENmB,EAACG,EAAU,CACT7B,GAAI,CACF8B,SAAU,IAEVH,SAAU,CAAEI,GAAI,QAChBC,WAAY,CAAED,GAAI,QAClBE,WAAY,CAAEF,GAAI,UACfvB,MAEDC,EAAcX,SAEjBA"}
1
+ {"version":3,"file":"FormMessage.js","sources":["../../../src/components/formMessage/FormMessage.tsx"],"sourcesContent":["import { CircleExclamationFilledIcon } from '@/src/components/icon/filled/CircleExclamationFilledIcon';\nimport { CircleInformationFilledIcon } from '@/src/components/icon/filled/CircleInformationFilledIcon';\nimport { WarningFilledIcon } from '@/src/components/icon/filled/WarningFilledIcon';\nimport { Box, BoxProps, SvgIconProps, Typography, TypographyProps } from '@mui/material';\nimport React, { ComponentType, ElementType, forwardRef, useMemo } from 'react';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface FormMessageProps extends BoxProps<ElementType> {\n /**\n * Defines which variant of Banner component should be rendered\n * @default error\n */\n variant?: 'info' | 'warning' | 'error';\n /**\n * Properties passed to indicator icon\n */\n iconProps?: SvgIconProps;\n /**\n * Icon node to be used\n */\n IconComponent?: ComponentType<SvgIconProps>;\n /**\n * Properties passed to wrapper of children\n */\n typographyProps?: TypographyProps<ElementType>;\n}\n\n/**\n * Message indicating form error or additional info.\n * Intended to be used in combination with <FormGroup />\n */\nexport const FormMessage: React.FC<FormMessageProps> = forwardRef(\n ({ children, variant = 'error', sx, iconProps, IconComponent, typographyProps, ...rest }, ref) => {\n const { sx: iconSx, ...restIcon } = iconProps || {};\n const { sx: typographySx, ...restTypography } = typographyProps || {};\n\n const [color, IconVariantComponent] = useMemo(() => {\n switch (variant) {\n case 'error':\n return ['error.main', WarningFilledIcon];\n case 'warning':\n return ['warning.main', CircleExclamationFilledIcon];\n case 'info':\n default:\n return ['info.main', CircleInformationFilledIcon];\n }\n }, [variant]);\n const ErrorMessageIcon = IconComponent || IconVariantComponent;\n\n return (\n <Box\n role=\"alert\"\n aria-atomic=\"true\"\n aria-live=\"assertive\"\n sx={sxOverride(\n {\n display: 'flex',\n width: '100%',\n alignItems: 'flex-start',\n justifyContent: 'flex-start',\n gap: 1,\n textAlign: 'left',\n color: color,\n pb: 1,\n },\n sx,\n )}\n ref={ref}\n {...rest}\n >\n <ErrorMessageIcon\n sx={sxOverride(\n {\n fontSize: '20px',\n // align with checkbox/radio (return to 24px width)\n mx: '2px',\n },\n iconSx,\n )}\n {...restIcon}\n />\n <Typography\n sx={sxOverride(\n {\n flexGrow: '1',\n // custom font according to Figma\n fontSize: { xs: '14px' },\n lineHeight: { xs: '20px' },\n fontWeight: { xs: '400' },\n },\n typographySx,\n )}\n {...restTypography}\n >\n {children}\n </Typography>\n </Box>\n );\n },\n);\n"],"names":["FormMessage","forwardRef","children","variant","sx","iconProps","IconComponent","typographyProps","rest","ref","iconSx","restIcon","typographySx","restTypography","color","IconVariantComponent","useMemo","WarningFilledIcon","CircleExclamationFilledIcon","CircleInformationFilledIcon","ErrorMessageIcon","_jsxs","Box","role","sxOverride","display","width","alignItems","justifyContent","gap","textAlign","pb","_jsx","fontSize","mx","Typography","flexGrow","xs","lineHeight","fontWeight"],"mappings":"wdA+BO,MAAMA,EAA0CC,EACrD,EAAGC,WAAUC,UAAU,QAASC,KAAIC,YAAWC,gBAAeC,qBAAoBC,GAAQC,KACxF,MAAQL,GAAIM,KAAWC,GAAaN,GAAa,CAAA,GACzCD,GAAIQ,KAAiBC,GAAmBN,GAAmB,CAAA,GAE5DO,EAAOC,GAAwBC,EAAQ,KAC5C,OAAQb,GACN,IAAK,QACH,MAAO,CAAC,aAAcc,GACxB,IAAK,UACH,MAAO,CAAC,eAAgBC,GAE1B,QACE,MAAO,CAAC,YAAaC,KAExB,CAAChB,IACEiB,EAAmBd,GAAiBS,EAE1C,OACEM,EAACC,EAAG,CACFC,KAAK,QAAO,cACA,mBACF,YACVnB,GAAIoB,EACF,CACEC,QAAS,OACTC,MAAO,OACPC,WAAY,aACZC,eAAgB,aAChBC,IAAK,EACLC,UAAW,OACXhB,MAAOA,EACPiB,GAAI,GAEN3B,GAEFK,IAAKA,KACDD,EAAIN,SAAA,CAER8B,EAACZ,EAAgB,CACfhB,GAAIoB,EACF,CACES,SAAU,OAEVC,GAAI,OAENxB,MAEEC,IAENqB,EAACG,EAAU,CACT/B,GAAIoB,EACF,CACEY,SAAU,IAEVH,SAAU,CAAEI,GAAI,QAChBC,WAAY,CAAED,GAAI,QAClBE,WAAY,CAAEF,GAAI,QAEpBzB,MAEEC,WAEHX"}
@@ -1,2 +1,2 @@
1
- import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{forwardRef as r,useState as n,useMemo as i,Children as s,Fragment as a,isValidElement as l,cloneElement as d}from"react";import{useTheme as p,useMediaQuery as c,AppBar as u,Toolbar as m,Box as x,Drawer as f}from"@mui/material";import{MenuIcon as h}from"../icon/stroke/MenuIcon.js";import{CloseIcon as b}from"../icon/stroke/CloseIcon.js";import{getFocusRingStyle as g}from"../focusring/focusring.js";import{HeaderButton as y}from"./HeaderButton.js";import{HeaderLanguageSelect as v}from"./HeaderLanguageSelect.js";import{HeaderNavigationLink as k}from"./HeaderNavigationLink.js";import{HeaderNavigationHero as H}from"./HeaderNavigationHero.js";import{HeaderNavigationMenu as j}from"./HeaderNavigationMenu.js";const I=r(({children:r,logo:I,buttons:P,visibleButtons:C,mobile:w,open:B,setOpen:M,inContainer:S=!1,toolbarProps:$,logoProps:F,contentProps:L,mobileContentProps:N,buttonsProps:T,menuButtonProps:z,menuIcon:E,closeMenuIcon:G,drawerProps:A,...D},O)=>{const R=p(),V=c(R.breakpoints.down("lg")),W=void 0===w?V:w,{sx:q,...J}=F??{},{sx:K,...Q}=L??{},{sx:U,...X}=N??{},{sx:Y,...Z}=T??{},{sx:_,slotProps:ee,...oe}=A??{},{paper:te,backdrop:re,...ne}=ee??{},{sx:ie,...se}=te??{},{sx:ae,...le}=re??{},[de,pe]=n(!1),ce=B??de,ue=M??pe,[me,xe,fe]=i(()=>{function e(o,t,r){const n=[];return s.forEach(o,(o,i)=>{o?.type===a?n.push(...e(o.props.children,t,`${r}-n`)):l(o)&&[y,v,k,H,j].includes(o?.type)&&t?n.push(d(o,{extend:!0,key:`${r}-${i}`})):"string"==typeof o?n.push(o):n.push(d(o,{key:`${r}-${i}`}))}),n?.length?n:void 0}const o=e(r,W,"children");if(C){const t=!0===C?void 0:e(C,!1,"visibleButtons"),r=e(P,W,"restButton");return W?[o,t,r]:[o,[...t||[],...r||[]],void 0]}return[o,e(P,!1,"buttons"),void 0]},[r,C,P,W]);return e(o,{children:[t(u,{ref:O,"data-testid":"Header",...D,children:e(m,{disableGutters:!S,...$,children:[I&&t(x,{"data-testid":"Header.logo",sx:{color:"dark"===R.palette.mode?"brand.secondary":"brand.tertiary",flexShrink:"0","& .MuiLink-root":{display:"block",position:"relative",py:1,...g(R),"&.Mui-focusVisible":{boxShadow:"none"}},"& .MuiSvgIcon-root":{display:"block"},...q},...J,children:I}),t(x,{sx:{minWidth:"0",flexGrow:"1",alignSelf:"stretch",display:"flex",alignItems:"stretch",justifyContent:"flex-start",gap:{lg:2,xl:4},...!W&&I&&{pl:4},mb:"-1px",...K},"data-testid":"Header.nav",...Q,children:!W&&me}),(xe||W&&(me||fe))&&e(x,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:.25,mr:{xs:-1,lg:0},...Y},"data-testid":"Header.btns",...Z,children:[xe,W&&(me||fe)&&t(y,{"aria-label":"Toggle menu",extend:!1,onClick:()=>ue(e=>!e),...z,children:ce?G||t(b,{}):E||t(h,{})},"menu")]})]})}),W&&(me||fe)&&e(f,{disablePortal:!0,disableEnforceFocus:!0,disableAutoFocus:!0,anchor:"top",open:ce,onClose:()=>ue(!1),sx:{zIndex:R.zIndex.appBar-10,top:R.mixins.toolbar.minHeight,bottom:"auto",height:`calc(100vh - ${R.mixins.toolbar.minHeight})`,position:"absolute",..._},slotProps:{backdrop:{sx:{position:"absolute",...ae},...le},paper:{sx:{position:"absolute",height:"100%",display:"grid",gridTemplateRows:"auto max-content",...ie},...se},...ne},...oe,children:[t(x,{sx:{p:2,overflow:"auto",...U},"data-testid":"Header.mobilenav",...X,children:me}),fe&&t(x,{sx:{p:2,pt:0},children:t(x,{sx:{pt:.75,display:"flex",flexDirection:"column-reverse",alignItems:"stretch",justifyContent:"flex-start",borderTop:1,borderColor:"dark"===R.palette.mode?"onSurface.os700":"surface.secondary"},children:fe})})]})]})});export{I as Header};
1
+ import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{forwardRef as r,useState as i,useMemo as s,Children as n,Fragment as a,isValidElement as l,cloneElement as d}from"react";import{sxOverride as p}from"../../utils/sxOverride/sxOverride.js";import{useTheme as c,useMediaQuery as m,AppBar as u,Toolbar as x,Box as f,Drawer as h}from"@mui/material";import{MenuIcon as b}from"../icon/stroke/MenuIcon.js";import{CloseIcon as g}from"../icon/stroke/CloseIcon.js";import{getFocusRingStyle as y}from"../focusring/focusring.js";import{HeaderButton as v}from"./HeaderButton.js";import{HeaderLanguageSelect as k}from"./HeaderLanguageSelect.js";import{HeaderNavigationLink as j}from"./HeaderNavigationLink.js";import{HeaderNavigationHero as H}from"./HeaderNavigationHero.js";import{HeaderNavigationMenu as I}from"./HeaderNavigationMenu.js";const C=r(({children:r,logo:C,buttons:P,visibleButtons:w,mobile:B,open:M,setOpen:S,inContainer:$=!1,toolbarProps:F,logoProps:L,contentProps:N,mobileContentProps:O,buttonsProps:T,menuButtonProps:z,menuIcon:E,closeMenuIcon:G,drawerProps:A,...D},R)=>{const V=c(),W=m(V.breakpoints.down("lg")),q=void 0===B?W:B,{sx:J,...K}=L??{},{sx:Q,...U}=N??{},{sx:X,...Y}=O??{},{sx:Z,..._}=T??{},{sx:ee,slotProps:oe,...te}=A??{},{paper:re,backdrop:ie,...se}=oe??{},{sx:ne,...ae}=re??{},{sx:le,...de}=ie??{},[pe,ce]=i(!1),me=M??pe,ue=S??ce,[xe,fe,he]=s(()=>{function e(o,t,r){const i=[];return n.forEach(o,(o,s)=>{o?.type===a?i.push(...e(o.props.children,t,`${r}-n`)):l(o)&&[v,k,j,H,I].includes(o?.type)&&t?i.push(d(o,{extend:!0,key:`${r}-${s}`})):"string"==typeof o?i.push(o):i.push(d(o,{key:`${r}-${s}`}))}),i?.length?i:void 0}const o=e(r,q,"children");if(w){const t=!0===w?void 0:e(w,!1,"visibleButtons"),r=e(P,q,"restButton");return q?[o,t,r]:[o,[...t||[],...r||[]],void 0]}return[o,e(P,!1,"buttons"),void 0]},[r,w,P,q]);return e(o,{children:[t(u,{ref:R,"data-testid":"Header",...D,children:e(x,{disableGutters:!$,...F,children:[C&&t(f,{"data-testid":"Header.logo",sx:p({color:"dark"===V.palette.mode?"brand.secondary":"brand.tertiary",flexShrink:"0",display:"flex",alignItems:"center",justifyContent:"flex-start","& .MuiLink-root":{display:"block",position:"relative",py:1,...y(V),"&.Mui-focusVisible":{boxShadow:"none"}},"& .MuiSvgIcon-root":{display:"block"}},J),...K,children:C}),t(f,{sx:p({minWidth:"0",flexGrow:"1",alignSelf:"stretch",display:"flex",alignItems:"stretch",justifyContent:"flex-start",gap:{lg:2,xl:4},...!q&&C&&{pl:4},mb:"-1px"},Q),"data-testid":"Header.nav",...U,children:!q&&xe}),(fe||q&&(xe||he))&&e(f,{sx:p({display:"flex",alignItems:"center",justifyContent:"flex-end",gap:.25,mr:{xs:-1,lg:0}},Z),"data-testid":"Header.btns",..._,children:[fe,q&&(xe||he)&&t(v,{"aria-label":"Toggle menu",extend:!1,onClick:()=>ue(e=>!e),...z,children:me?G||t(g,{}):E||t(b,{})},"menu")]})]})}),q&&(xe||he)&&e(h,{disablePortal:!0,disableEnforceFocus:!0,disableAutoFocus:!0,anchor:"top",open:me,onClose:()=>ue(!1),sx:p({zIndex:V.zIndex.appBar-10,top:V.mixins.toolbar.minHeight,bottom:"auto",height:`calc(100vh - ${V.mixins.toolbar.minHeight})`,position:"absolute"},ee),slotProps:{backdrop:{sx:p({position:"absolute"},le),...de},paper:{sx:p({position:"absolute",height:"100%",display:"grid",gridTemplateRows:"auto max-content"},ne),...ae},...se},...te,children:[t(f,{sx:p({p:2,overflow:"auto"},X),"data-testid":"Header.mobilenav",...Y,children:xe}),he&&t(f,{sx:{p:2,pt:0},children:t(f,{sx:{pt:.75,display:"flex",flexDirection:"column-reverse",alignItems:"stretch",justifyContent:"flex-start",borderTop:1,borderColor:"dark"===V.palette.mode?"onSurface.os700":"surface.secondary"},children:he})})]})]})});export{C as Header};
2
2
  //# sourceMappingURL=Header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sources":["../../../src/components/header/Header.tsx"],"sourcesContent":["import React, {\n FC,\n useState,\n forwardRef,\n ReactNode,\n ElementType,\n Children,\n cloneElement,\n useMemo,\n Fragment,\n isValidElement,\n} from 'react';\nimport {\n AppBar,\n AppBarProps,\n BackdropProps,\n Box,\n BoxProps,\n Drawer,\n DrawerProps,\n PaperProps,\n Toolbar,\n ToolbarProps,\n useMediaQuery,\n useTheme,\n} from '@mui/material';\nimport { MenuIcon } from '@/src/components/icon/stroke/MenuIcon';\nimport { CloseIcon } from '@/src/components/icon/stroke/CloseIcon';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\nimport { HeaderButton, HeaderButtonProps } from './HeaderButton';\nimport { HeaderLanguageSelect } from './HeaderLanguageSelect';\nimport { HeaderNavigationLink } from './HeaderNavigationLink';\nimport { HeaderNavigationHero } from './HeaderNavigationHero';\nimport { HeaderNavigationMenu } from './HeaderNavigationMenu';\n\nexport interface HeaderProps extends Omit<AppBarProps, 'color'> {\n /**\n * Logo component\n */\n logo?: ReactNode;\n /**\n * Wrap the navigation into container\n * @default false\n */\n inContainer?: boolean;\n /**\n * ActionButtons on the right side\n */\n buttons?: ReactNode;\n /**\n * ActionButtons on the right side that stays visible even on mobile\n */\n visibleButtons?: ReactNode | true;\n /**\n * Controls if mobile version of Header should be shown, this collapses children into mobile menu\n *\n * @default undefined, leads to usage useMediaQuery(theme.breakpoints.down('lg'))\n */\n mobile?: boolean;\n /**\n * Controls open/close state of mobile menu\n */\n open?: boolean;\n /**\n * Function to toggle open state of menu\n */\n setOpen?: (open: boolean) => void;\n /**\n * Properties applied to toolbar container\n */\n toolbarProps?: ToolbarProps<ElementType>;\n /**\n * Properties applied to logo wrapper\n */\n logoProps?: BoxProps<ElementType>;\n /**\n * Properties applied to content wrapper\n */\n contentProps?: BoxProps<ElementType>;\n /**\n * Properties applied to content wrapper in drawer\n */\n mobileContentProps?: BoxProps<ElementType>;\n /**\n * Properties applied to button wrapper\n */\n buttonsProps?: BoxProps<ElementType>;\n /**\n * Properties applied to hamburger menu\n */\n menuButtonProps?: HeaderButtonProps;\n /**\n * Icon of the hamburger menu\n */\n menuIcon?: ReactNode;\n /**\n * Icon of the close hamburger menu\n */\n closeMenuIcon?: ReactNode;\n /**\n * Props applied to mobile drawer\n */\n drawerProps?: DrawerProps;\n}\n\n/**\n * Component to render Header with navigation and action buttons at the top of the page\n */\nexport const Header: FC<HeaderProps> = forwardRef(\n (\n {\n children,\n logo,\n buttons,\n visibleButtons,\n mobile: propMobile,\n open: propOpen,\n setOpen: propSetOpen,\n inContainer = false,\n toolbarProps,\n logoProps,\n contentProps,\n mobileContentProps,\n buttonsProps,\n menuButtonProps,\n menuIcon,\n closeMenuIcon,\n drawerProps,\n ...rest\n },\n ref,\n ) => {\n const theme = useTheme();\n const downLg = useMediaQuery(theme.breakpoints.down('lg'));\n // determine if mobile condition is controlled or default downLg\n const mobile = propMobile === undefined ? downLg : propMobile;\n const { sx: logoSx, ...restLogo } = logoProps ?? {};\n const { sx: contentSx, ...restContent } = contentProps ?? {};\n const { sx: mobileContentSx, ...restMobileContent } = mobileContentProps ?? {};\n const { sx: buttonsSx, ...restButtons } = buttonsProps ?? {};\n const { sx: drawerSx, slotProps: drawerSlotProps, ...restDrawer } = drawerProps ?? {};\n const { paper: drawerPaperProps, backdrop: drawerBackdropProps, ...restDrawerSlotProps } = drawerSlotProps ?? {};\n const { sx: drawerPaperSx, ...restDrawerPaper } = (drawerPaperProps as PaperProps) ?? {};\n const { sx: drawerBackdropSx, ...restDrawerBackdrop } = (drawerBackdropProps as BackdropProps) ?? {};\n const [rawOpen, rawSetOpen] = useState(false);\n const open = propOpen ?? rawOpen;\n const setOpen: React.Dispatch<React.SetStateAction<boolean>> = propSetOpen ?? rawSetOpen;\n\n /**\n * Process child nodes\n */\n const [processedChildren, processedButtons, drawerButtons] = useMemo(() => {\n function flatten(nodes, extend, keyid) {\n const result = [];\n Children.forEach(nodes, (child, idx) => {\n if (child?.type === Fragment) {\n result.push(...flatten(child.props.children, extend, `${keyid}-n`));\n } else if (\n isValidElement(child) &&\n [\n HeaderButton,\n HeaderLanguageSelect,\n HeaderNavigationLink,\n HeaderNavigationHero,\n HeaderNavigationMenu,\n ].includes(child?.type as FC) &&\n extend\n ) {\n result.push(\n cloneElement(child, {\n extend: true,\n key: `${keyid}-${idx}`,\n } as HeaderButtonProps),\n );\n } else {\n if (typeof child === 'string') {\n result.push(child);\n } else {\n result.push(cloneElement(child, { key: `${keyid}-${idx}` }));\n }\n }\n });\n return result?.length ? result : undefined;\n }\n\n const flattenedChildren = flatten(children, mobile, 'children');\n // check if we have visibleButtons property\n if (visibleButtons) {\n const flattenedVisibleButtons =\n visibleButtons === true ? undefined : flatten(visibleButtons, false, 'visibleButtons');\n const flattenedRestButtons = flatten(buttons, mobile, 'restButton');\n // mobile\n if (mobile) {\n // split visible buttons and put buttons in drawer\n return [flattenedChildren, flattenedVisibleButtons, flattenedRestButtons];\n } else {\n // on PC, all buttons are visible\n return [flattenedChildren, [...(flattenedVisibleButtons || []), ...(flattenedRestButtons || [])], undefined];\n }\n } else {\n // in case visibleButtons property is not provided, do not put buttons into drawer at all\n return [flattenedChildren, flatten(buttons, false, 'buttons'), undefined];\n }\n }, [children, visibleButtons, buttons, mobile]);\n\n return (\n <>\n <AppBar ref={ref} data-testid=\"Header\" {...rest}>\n <Toolbar disableGutters={!inContainer} {...toolbarProps}>\n {logo && (\n <Box\n data-testid=\"Header.logo\"\n sx={{\n color: theme.palette.mode === 'dark' ? 'brand.secondary' : 'brand.tertiary',\n flexShrink: '0',\n // restyle wrapper link, same style is applied in HeaderLogo\n '& .MuiLink-root': {\n display: 'block',\n position: 'relative',\n py: 1,\n // add proper focus ring\n ...getFocusRingStyle(theme),\n // remove default link box shadow\n '&.Mui-focusVisible': {\n boxShadow: 'none',\n },\n },\n '& .MuiSvgIcon-root': {\n display: 'block',\n },\n ...logoSx,\n }}\n {...restLogo}\n >\n {logo}\n </Box>\n )}\n <Box\n sx={{\n minWidth: '0',\n flexGrow: '1',\n alignSelf: 'stretch',\n display: 'flex',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n gap: { lg: 2, xl: 4 },\n ...(!mobile &&\n logo && {\n // increase size between logo and nav\n pl: 4,\n }),\n // move directly into border\n mb: '-1px',\n ...contentSx,\n }}\n data-testid=\"Header.nav\"\n {...restContent}\n >\n {!mobile && processedChildren}\n </Box>\n {(processedButtons || (mobile && (processedChildren || drawerButtons))) && (\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: 0.25,\n mr: { xs: -1, lg: 0 },\n ...buttonsSx,\n }}\n data-testid=\"Header.btns\"\n {...restButtons}\n >\n {processedButtons}\n {mobile && (processedChildren || drawerButtons) && (\n <HeaderButton\n key=\"menu\"\n aria-label=\"Toggle menu\"\n extend={false}\n onClick={() => setOpen((prev: boolean) => !prev)}\n {...menuButtonProps}\n >\n {open ? closeMenuIcon || <CloseIcon /> : menuIcon || <MenuIcon />}\n </HeaderButton>\n )}\n </Box>\n )}\n </Toolbar>\n </AppBar>\n {mobile && (processedChildren || drawerButtons) && (\n <Drawer\n disablePortal\n disableEnforceFocus\n disableAutoFocus\n anchor=\"top\"\n open={open}\n onClose={() => setOpen(false)}\n sx={{\n // bellow Header, above SecondaryNavigation\n zIndex: theme.zIndex.appBar - 10,\n // header offset\n top: theme.mixins.toolbar.minHeight,\n bottom: 'auto',\n height: `calc(100vh - ${theme.mixins.toolbar.minHeight})`,\n // adjust position\n position: 'absolute',\n ...drawerSx,\n }}\n slotProps={{\n backdrop: {\n sx: {\n position: 'absolute',\n ...drawerBackdropSx,\n },\n ...restDrawerBackdrop,\n },\n paper: {\n sx: {\n position: 'absolute',\n height: '100%',\n display: 'grid',\n gridTemplateRows: 'auto max-content',\n ...drawerPaperSx,\n },\n ...restDrawerPaper,\n },\n ...restDrawerSlotProps,\n }}\n {...restDrawer}\n >\n <Box\n sx={{\n p: 2,\n overflow: 'auto',\n ...mobileContentSx,\n }}\n data-testid=\"Header.mobilenav\"\n {...restMobileContent}\n >\n {processedChildren}\n </Box>\n {drawerButtons && (\n <Box sx={{ p: 2, pt: 0 }}>\n <Box\n sx={{\n pt: 0.75,\n display: 'flex',\n flexDirection: 'column-reverse',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n // border from appbar.theme.ts\n borderTop: 1,\n borderColor: theme.palette.mode === 'dark' ? 'onSurface.os700' : 'surface.secondary',\n }}\n >\n {drawerButtons}\n </Box>\n </Box>\n )}\n </Drawer>\n )}\n </>\n );\n },\n);\n"],"names":["Header","forwardRef","children","logo","buttons","visibleButtons","mobile","propMobile","open","propOpen","setOpen","propSetOpen","inContainer","toolbarProps","logoProps","contentProps","mobileContentProps","buttonsProps","menuButtonProps","menuIcon","closeMenuIcon","drawerProps","rest","ref","theme","useTheme","downLg","useMediaQuery","breakpoints","down","undefined","sx","logoSx","restLogo","contentSx","restContent","mobileContentSx","restMobileContent","buttonsSx","restButtons","drawerSx","slotProps","drawerSlotProps","restDrawer","paper","drawerPaperProps","backdrop","drawerBackdropProps","restDrawerSlotProps","drawerPaperSx","restDrawerPaper","drawerBackdropSx","restDrawerBackdrop","rawOpen","rawSetOpen","useState","processedChildren","processedButtons","drawerButtons","useMemo","flatten","nodes","extend","keyid","result","Children","forEach","child","idx","type","Fragment","push","props","isValidElement","HeaderButton","HeaderLanguageSelect","HeaderNavigationLink","HeaderNavigationHero","HeaderNavigationMenu","includes","cloneElement","key","length","flattenedChildren","flattenedVisibleButtons","flattenedRestButtons","_jsxs","_Fragment","_jsx","AppBar","Toolbar","disableGutters","Box","color","palette","mode","flexShrink","display","position","py","getFocusRingStyle","boxShadow","minWidth","flexGrow","alignSelf","alignItems","justifyContent","gap","lg","xl","pl","mb","mr","xs","onClick","prev","CloseIcon","MenuIcon","Drawer","disablePortal","disableEnforceFocus","disableAutoFocus","anchor","onClose","zIndex","appBar","top","mixins","toolbar","minHeight","bottom","height","gridTemplateRows","p","overflow","pt","flexDirection","borderTop","borderColor"],"mappings":"2wBA4GO,MAAMA,EAA0BC,EACrC,EAEIC,WACAC,OACAC,UACAC,iBACAC,OAAQC,EACRC,KAAMC,EACNC,QAASC,EACTC,eAAc,EACdC,eACAC,YACAC,eACAC,qBACAC,eACAC,kBACAC,WACAC,gBACAC,iBACGC,GAELC,KAEA,MAAMC,EAAQC,IACRC,EAASC,EAAcH,EAAMI,YAAYC,KAAK,OAE9CvB,OAAwBwB,IAAfvB,EAA2BmB,EAASnB,GAC3CwB,GAAIC,KAAWC,GAAanB,GAAa,CAAA,GACzCiB,GAAIG,KAAcC,GAAgBpB,GAAgB,CAAA,GAClDgB,GAAIK,KAAoBC,GAAsBrB,GAAsB,CAAA,GACpEe,GAAIO,KAAcC,GAAgBtB,GAAgB,CAAA,GAClDc,GAAIS,EAAUC,UAAWC,MAAoBC,IAAetB,GAAe,CAAA,GAC3EuB,MAAOC,GAAkBC,SAAUC,MAAwBC,IAAwBN,IAAmB,CAAA,GACtGX,GAAIkB,MAAkBC,IAAqBL,IAAmC,CAAA,GAC9Ed,GAAIoB,MAAqBC,IAAwBL,IAAyC,CAAA,GAC3FM,GAASC,IAAcC,GAAS,GACjC/C,GAAOC,GAAY4C,GACnB3C,GAAyDC,GAAe2C,IAKvEE,GAAmBC,GAAkBC,IAAiBC,EAAQ,KACnE,SAASC,EAAQC,EAAOC,EAAQC,GAC9B,MAAMC,EAAS,GA6Bf,OA5BAC,EAASC,QAAQL,EAAO,CAACM,EAAOC,KAC1BD,GAAOE,OAASC,EAClBN,EAAOO,QAAQX,EAAQO,EAAMK,MAAMtE,SAAU4D,EAAQ,GAAGC,QAExDU,EAAeN,IACf,CACEO,EACAC,EACAC,EACAC,EACAC,GACAC,SAASZ,GAAOE,OAClBP,EAEAE,EAAOO,KACLS,EAAab,EAAO,CAClBL,QAAQ,EACRmB,IAAK,GAAGlB,KAASK,OAIA,iBAAVD,EACTH,EAAOO,KAAKJ,GAEZH,EAAOO,KAAKS,EAAab,EAAO,CAAEc,IAAK,GAAGlB,KAASK,SAIlDJ,GAAQkB,OAASlB,OAASlC,CACnC,CAEA,MAAMqD,EAAoBvB,EAAQ1D,EAAUI,EAAQ,YAEpD,GAAID,EAAgB,CAClB,MAAM+E,GACe,IAAnB/E,OAA0ByB,EAAY8B,EAAQvD,GAAgB,EAAO,kBACjEgF,EAAuBzB,EAAQxD,EAASE,EAAQ,cAEtD,OAAIA,EAEK,CAAC6E,EAAmBC,EAAyBC,GAG7C,CAACF,EAAmB,IAAKC,GAA2B,MAASC,GAAwB,SAAMvD,EAEtG,CAEE,MAAO,CAACqD,EAAmBvB,EAAQxD,GAAS,EAAO,gBAAY0B,IAEhE,CAAC5B,EAAUG,EAAgBD,EAASE,IAEvC,OACEgF,EAAAC,EAAA,CAAArF,SAAA,CACEsF,EAACC,GAAOlE,IAAKA,EAAG,cAAc,YAAaD,EAAIpB,SAC7CoF,EAACI,EAAO,CAACC,gBAAiB/E,KAAiBC,YACxCV,GACCqF,EAACI,EAAG,CAAA,cACU,cACZ7D,GAAI,CACF8D,MAA8B,SAAvBrE,EAAMsE,QAAQC,KAAkB,kBAAoB,iBAC3DC,WAAY,IAEZ,kBAAmB,CACjBC,QAAS,QACTC,SAAU,WACVC,GAAI,KAEDC,EAAkB5E,GAErB,qBAAsB,CACpB6E,UAAW,SAGf,qBAAsB,CACpBJ,QAAS,YAERjE,MAEDC,EAAQ/B,SAEXC,IAGLqF,EAACI,EAAG,CACF7D,GAAI,CACFuE,SAAU,IACVC,SAAU,IACVC,UAAW,UACXP,QAAS,OACTQ,WAAY,UACZC,eAAgB,aAChBC,IAAK,CAAEC,GAAI,EAAGC,GAAI,OACbvG,GACHH,GAAQ,CAEN2G,GAAI,GAGRC,GAAI,UACD7E,GACJ,cACW,gBACRC,EAAWjC,UAEbI,GAAUkD,MAEZC,IAAqBnD,IAAWkD,IAAqBE,MACrD4B,EAACM,EAAG,CACF7D,GAAI,CACFkE,QAAS,OACTQ,WAAY,SACZC,eAAgB,WAChBC,IAAK,IACLK,GAAI,CAAEC,MAAQL,GAAI,MACftE,GACJ,cACW,iBACRC,EAAWrC,SAAA,CAEduD,GACAnD,IAAWkD,IAAqBE,KAC/B8B,EAACd,EAAY,CAAA,aAEA,cACXZ,QAAQ,EACRoD,QAAS,IAAMxG,GAASyG,IAAmBA,MACvCjG,EAAehB,SAElBM,GAAOY,GAAiBoE,EAAC4B,EAAS,CAAA,GAAMjG,GAAYqE,EAAC6B,OANlD,gBAaf/G,IAAWkD,IAAqBE,KAC/B4B,EAACgC,GACCC,eAAa,EACbC,qBAAmB,EACnBC,kBAAgB,EAChBC,OAAO,MACPlH,KAAMA,GACNmH,QAAS,IAAMjH,IAAQ,GACvBqB,GAAI,CAEF6F,OAAQpG,EAAMoG,OAAOC,OAAS,GAE9BC,IAAKtG,EAAMuG,OAAOC,QAAQC,UAC1BC,OAAQ,OACRC,OAAQ,gBAAgB3G,EAAMuG,OAAOC,QAAQC,aAE7C/B,SAAU,cACP1D,GAELC,UAAW,CACTK,SAAU,CACRf,GAAI,CACFmE,SAAU,cACP/C,OAEFC,IAELR,MAAO,CACLb,GAAI,CACFmE,SAAU,WACViC,OAAQ,OACRlC,QAAS,OACTmC,iBAAkB,sBACfnF,OAEFC,OAEFF,OAEDL,GAAUzC,SAAA,CAEdsF,EAACI,EAAG,CACF7D,GAAI,CACFsG,EAAG,EACHC,SAAU,UACPlG,GACJ,cACW,sBACRC,EAAiBnC,SAEpBsD,KAEFE,IACC8B,EAACI,EAAG,CAAC7D,GAAI,CAAEsG,EAAG,EAAGE,GAAI,GAAGrI,SACtBsF,EAACI,EAAG,CACF7D,GAAI,CACFwG,GAAI,IACJtC,QAAS,OACTuC,cAAe,iBACf/B,WAAY,UACZC,eAAgB,aAEhB+B,UAAW,EACXC,YAAoC,SAAvBlH,EAAMsE,QAAQC,KAAkB,kBAAoB,qBAClE7F,SAEAwD"}
1
+ {"version":3,"file":"Header.js","sources":["../../../src/components/header/Header.tsx"],"sourcesContent":["import React, {\n FC,\n useState,\n forwardRef,\n ReactNode,\n ElementType,\n Children,\n cloneElement,\n useMemo,\n Fragment,\n isValidElement,\n} from 'react';\nimport { sxOverride } from '@/src/utils/sxOverride';\nimport {\n AppBar,\n AppBarProps,\n BackdropProps,\n Box,\n BoxProps,\n Drawer,\n DrawerProps,\n PaperProps,\n Toolbar,\n ToolbarProps,\n useMediaQuery,\n useTheme,\n} from '@mui/material';\nimport { MenuIcon } from '@/src/components/icon/stroke/MenuIcon';\nimport { CloseIcon } from '@/src/components/icon/stroke/CloseIcon';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\nimport { HeaderButton, HeaderButtonProps } from './HeaderButton';\nimport { HeaderLanguageSelect } from './HeaderLanguageSelect';\nimport { HeaderNavigationLink } from './HeaderNavigationLink';\nimport { HeaderNavigationHero } from './HeaderNavigationHero';\nimport { HeaderNavigationMenu } from './HeaderNavigationMenu';\n\nexport interface HeaderProps extends Omit<AppBarProps, 'color'> {\n /**\n * Logo component\n */\n logo?: ReactNode;\n /**\n * Wrap the navigation into container\n * @default false\n */\n inContainer?: boolean;\n /**\n * ActionButtons on the right side\n */\n buttons?: ReactNode;\n /**\n * ActionButtons on the right side that stays visible even on mobile\n */\n visibleButtons?: ReactNode | true;\n /**\n * Controls if mobile version of Header should be shown, this collapses children into mobile menu\n *\n * @default undefined, leads to usage useMediaQuery(theme.breakpoints.down('lg'))\n */\n mobile?: boolean;\n /**\n * Controls open/close state of mobile menu\n */\n open?: boolean;\n /**\n * Function to toggle open state of menu\n */\n setOpen?: (open: boolean) => void;\n /**\n * Properties applied to toolbar container\n */\n toolbarProps?: ToolbarProps<ElementType>;\n /**\n * Properties applied to logo wrapper\n */\n logoProps?: BoxProps<ElementType>;\n /**\n * Properties applied to content wrapper\n */\n contentProps?: BoxProps<ElementType>;\n /**\n * Properties applied to content wrapper in drawer\n */\n mobileContentProps?: BoxProps<ElementType>;\n /**\n * Properties applied to button wrapper\n */\n buttonsProps?: BoxProps<ElementType>;\n /**\n * Properties applied to hamburger menu\n */\n menuButtonProps?: HeaderButtonProps;\n /**\n * Icon of the hamburger menu\n */\n menuIcon?: ReactNode;\n /**\n * Icon of the close hamburger menu\n */\n closeMenuIcon?: ReactNode;\n /**\n * Props applied to mobile drawer\n */\n drawerProps?: DrawerProps;\n}\n\n/**\n * Component to render Header with navigation and action buttons at the top of the page\n */\nexport const Header: FC<HeaderProps> = forwardRef(\n (\n {\n children,\n logo,\n buttons,\n visibleButtons,\n mobile: propMobile,\n open: propOpen,\n setOpen: propSetOpen,\n inContainer = false,\n toolbarProps,\n logoProps,\n contentProps,\n mobileContentProps,\n buttonsProps,\n menuButtonProps,\n menuIcon,\n closeMenuIcon,\n drawerProps,\n ...rest\n },\n ref,\n ) => {\n const theme = useTheme();\n const downLg = useMediaQuery(theme.breakpoints.down('lg'));\n // determine if mobile condition is controlled or default downLg\n const mobile = propMobile === undefined ? downLg : propMobile;\n const { sx: logoSx, ...restLogo } = logoProps ?? {};\n const { sx: contentSx, ...restContent } = contentProps ?? {};\n const { sx: mobileContentSx, ...restMobileContent } = mobileContentProps ?? {};\n const { sx: buttonsSx, ...restButtons } = buttonsProps ?? {};\n const { sx: drawerSx, slotProps: drawerSlotProps, ...restDrawer } = drawerProps ?? {};\n const { paper: drawerPaperProps, backdrop: drawerBackdropProps, ...restDrawerSlotProps } = drawerSlotProps ?? {};\n const { sx: drawerPaperSx, ...restDrawerPaper } = (drawerPaperProps as PaperProps) ?? {};\n const { sx: drawerBackdropSx, ...restDrawerBackdrop } = (drawerBackdropProps as BackdropProps) ?? {};\n const [rawOpen, rawSetOpen] = useState(false);\n const open = propOpen ?? rawOpen;\n const setOpen: React.Dispatch<React.SetStateAction<boolean>> = propSetOpen ?? rawSetOpen;\n\n /**\n * Process child nodes\n */\n const [processedChildren, processedButtons, drawerButtons] = useMemo(() => {\n function flatten(nodes, extend, keyid) {\n const result = [];\n Children.forEach(nodes, (child, idx) => {\n if (child?.type === Fragment) {\n result.push(...flatten(child.props.children, extend, `${keyid}-n`));\n } else if (\n isValidElement(child) &&\n [\n HeaderButton,\n HeaderLanguageSelect,\n HeaderNavigationLink,\n HeaderNavigationHero,\n HeaderNavigationMenu,\n ].includes(child?.type as FC) &&\n extend\n ) {\n result.push(\n cloneElement(child, {\n extend: true,\n key: `${keyid}-${idx}`,\n } as HeaderButtonProps),\n );\n } else {\n if (typeof child === 'string') {\n result.push(child);\n } else {\n result.push(cloneElement(child, { key: `${keyid}-${idx}` }));\n }\n }\n });\n return result?.length ? result : undefined;\n }\n\n const flattenedChildren = flatten(children, mobile, 'children');\n // check if we have visibleButtons property\n if (visibleButtons) {\n const flattenedVisibleButtons =\n visibleButtons === true ? undefined : flatten(visibleButtons, false, 'visibleButtons');\n const flattenedRestButtons = flatten(buttons, mobile, 'restButton');\n // mobile\n if (mobile) {\n // split visible buttons and put buttons in drawer\n return [flattenedChildren, flattenedVisibleButtons, flattenedRestButtons];\n } else {\n // on PC, all buttons are visible\n return [flattenedChildren, [...(flattenedVisibleButtons || []), ...(flattenedRestButtons || [])], undefined];\n }\n } else {\n // in case visibleButtons property is not provided, do not put buttons into drawer at all\n return [flattenedChildren, flatten(buttons, false, 'buttons'), undefined];\n }\n }, [children, visibleButtons, buttons, mobile]);\n\n return (\n <>\n <AppBar ref={ref} data-testid=\"Header\" {...rest}>\n <Toolbar disableGutters={!inContainer} {...toolbarProps}>\n {logo && (\n <Box\n data-testid=\"Header.logo\"\n sx={sxOverride(\n {\n color: theme.palette.mode === 'dark' ? 'brand.secondary' : 'brand.tertiary',\n flexShrink: '0',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n // restyle wrapper link, same style is applied in HeaderLogo\n '& .MuiLink-root': {\n display: 'block',\n position: 'relative',\n py: 1,\n // add proper focus ring\n ...getFocusRingStyle(theme),\n // remove default link box shadow\n '&.Mui-focusVisible': {\n boxShadow: 'none',\n },\n },\n '& .MuiSvgIcon-root': {\n display: 'block',\n },\n },\n logoSx,\n )}\n {...restLogo}\n >\n {logo}\n </Box>\n )}\n <Box\n sx={sxOverride(\n {\n minWidth: '0',\n flexGrow: '1',\n alignSelf: 'stretch',\n display: 'flex',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n gap: { lg: 2, xl: 4 },\n ...(!mobile &&\n logo && {\n // increase size between logo and nav\n pl: 4,\n }),\n // move directly into border\n mb: '-1px',\n },\n contentSx,\n )}\n data-testid=\"Header.nav\"\n {...restContent}\n >\n {!mobile && processedChildren}\n </Box>\n {(processedButtons || (mobile && (processedChildren || drawerButtons))) && (\n <Box\n sx={sxOverride(\n {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: 0.25,\n mr: { xs: -1, lg: 0 },\n },\n buttonsSx,\n )}\n data-testid=\"Header.btns\"\n {...restButtons}\n >\n {processedButtons}\n {mobile && (processedChildren || drawerButtons) && (\n <HeaderButton\n key=\"menu\"\n aria-label=\"Toggle menu\"\n extend={false}\n onClick={() => setOpen((prev: boolean) => !prev)}\n {...menuButtonProps}\n >\n {open ? closeMenuIcon || <CloseIcon /> : menuIcon || <MenuIcon />}\n </HeaderButton>\n )}\n </Box>\n )}\n </Toolbar>\n </AppBar>\n {mobile && (processedChildren || drawerButtons) && (\n <Drawer\n disablePortal\n disableEnforceFocus\n disableAutoFocus\n anchor=\"top\"\n open={open}\n onClose={() => setOpen(false)}\n sx={sxOverride(\n {\n // bellow Header, above SecondaryNavigation\n zIndex: theme.zIndex.appBar - 10,\n // header offset\n top: theme.mixins.toolbar.minHeight,\n bottom: 'auto',\n height: `calc(100vh - ${theme.mixins.toolbar.minHeight})`,\n // adjust position\n position: 'absolute',\n },\n drawerSx,\n )}\n slotProps={{\n backdrop: {\n sx: sxOverride(\n {\n position: 'absolute',\n },\n drawerBackdropSx,\n ),\n ...restDrawerBackdrop,\n },\n paper: {\n sx: sxOverride(\n {\n position: 'absolute',\n height: '100%',\n display: 'grid',\n gridTemplateRows: 'auto max-content',\n },\n drawerPaperSx,\n ),\n ...restDrawerPaper,\n },\n ...restDrawerSlotProps,\n }}\n {...restDrawer}\n >\n <Box\n sx={sxOverride(\n {\n p: 2,\n overflow: 'auto',\n },\n mobileContentSx,\n )}\n data-testid=\"Header.mobilenav\"\n {...restMobileContent}\n >\n {processedChildren}\n </Box>\n {drawerButtons && (\n <Box sx={{ p: 2, pt: 0 }}>\n <Box\n sx={{\n pt: 0.75,\n display: 'flex',\n flexDirection: 'column-reverse',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n // border from appbar.theme.ts\n borderTop: 1,\n borderColor: theme.palette.mode === 'dark' ? 'onSurface.os700' : 'surface.secondary',\n }}\n >\n {drawerButtons}\n </Box>\n </Box>\n )}\n </Drawer>\n )}\n </>\n );\n },\n);\n"],"names":["Header","forwardRef","children","logo","buttons","visibleButtons","mobile","propMobile","open","propOpen","setOpen","propSetOpen","inContainer","toolbarProps","logoProps","contentProps","mobileContentProps","buttonsProps","menuButtonProps","menuIcon","closeMenuIcon","drawerProps","rest","ref","theme","useTheme","downLg","useMediaQuery","breakpoints","down","undefined","sx","logoSx","restLogo","contentSx","restContent","mobileContentSx","restMobileContent","buttonsSx","restButtons","drawerSx","slotProps","drawerSlotProps","restDrawer","paper","drawerPaperProps","backdrop","drawerBackdropProps","restDrawerSlotProps","drawerPaperSx","restDrawerPaper","drawerBackdropSx","restDrawerBackdrop","rawOpen","rawSetOpen","useState","processedChildren","processedButtons","drawerButtons","useMemo","flatten","nodes","extend","keyid","result","Children","forEach","child","idx","type","Fragment","push","props","isValidElement","HeaderButton","HeaderLanguageSelect","HeaderNavigationLink","HeaderNavigationHero","HeaderNavigationMenu","includes","cloneElement","key","length","flattenedChildren","flattenedVisibleButtons","flattenedRestButtons","_jsxs","_Fragment","_jsx","AppBar","Toolbar","disableGutters","Box","sxOverride","color","palette","mode","flexShrink","display","alignItems","justifyContent","position","py","getFocusRingStyle","boxShadow","minWidth","flexGrow","alignSelf","gap","lg","xl","pl","mb","mr","xs","onClick","prev","CloseIcon","MenuIcon","Drawer","disablePortal","disableEnforceFocus","disableAutoFocus","anchor","onClose","zIndex","appBar","top","mixins","toolbar","minHeight","bottom","height","gridTemplateRows","p","overflow","pt","flexDirection","borderTop","borderColor"],"mappings":"60BA6GO,MAAMA,EAA0BC,EACrC,EAEIC,WACAC,OACAC,UACAC,iBACAC,OAAQC,EACRC,KAAMC,EACNC,QAASC,EACTC,eAAc,EACdC,eACAC,YACAC,eACAC,qBACAC,eACAC,kBACAC,WACAC,gBACAC,iBACGC,GAELC,KAEA,MAAMC,EAAQC,IACRC,EAASC,EAAcH,EAAMI,YAAYC,KAAK,OAE9CvB,OAAwBwB,IAAfvB,EAA2BmB,EAASnB,GAC3CwB,GAAIC,KAAWC,GAAanB,GAAa,CAAA,GACzCiB,GAAIG,KAAcC,GAAgBpB,GAAgB,CAAA,GAClDgB,GAAIK,KAAoBC,GAAsBrB,GAAsB,CAAA,GACpEe,GAAIO,KAAcC,GAAgBtB,GAAgB,CAAA,GAClDc,GAAIS,GAAUC,UAAWC,MAAoBC,IAAetB,GAAe,CAAA,GAC3EuB,MAAOC,GAAkBC,SAAUC,MAAwBC,IAAwBN,IAAmB,CAAA,GACtGX,GAAIkB,MAAkBC,IAAqBL,IAAmC,CAAA,GAC9Ed,GAAIoB,MAAqBC,IAAwBL,IAAyC,CAAA,GAC3FM,GAASC,IAAcC,GAAS,GACjC/C,GAAOC,GAAY4C,GACnB3C,GAAyDC,GAAe2C,IAKvEE,GAAmBC,GAAkBC,IAAiBC,EAAQ,KACnE,SAASC,EAAQC,EAAOC,EAAQC,GAC9B,MAAMC,EAAS,GA6Bf,OA5BAC,EAASC,QAAQL,EAAO,CAACM,EAAOC,KAC1BD,GAAOE,OAASC,EAClBN,EAAOO,QAAQX,EAAQO,EAAMK,MAAMtE,SAAU4D,EAAQ,GAAGC,QAExDU,EAAeN,IACf,CACEO,EACAC,EACAC,EACAC,EACAC,GACAC,SAASZ,GAAOE,OAClBP,EAEAE,EAAOO,KACLS,EAAab,EAAO,CAClBL,QAAQ,EACRmB,IAAK,GAAGlB,KAASK,OAIA,iBAAVD,EACTH,EAAOO,KAAKJ,GAEZH,EAAOO,KAAKS,EAAab,EAAO,CAAEc,IAAK,GAAGlB,KAASK,SAIlDJ,GAAQkB,OAASlB,OAASlC,CACnC,CAEA,MAAMqD,EAAoBvB,EAAQ1D,EAAUI,EAAQ,YAEpD,GAAID,EAAgB,CAClB,MAAM+E,GACe,IAAnB/E,OAA0ByB,EAAY8B,EAAQvD,GAAgB,EAAO,kBACjEgF,EAAuBzB,EAAQxD,EAASE,EAAQ,cAEtD,OAAIA,EAEK,CAAC6E,EAAmBC,EAAyBC,GAG7C,CAACF,EAAmB,IAAKC,GAA2B,MAASC,GAAwB,SAAMvD,EAEtG,CAEE,MAAO,CAACqD,EAAmBvB,EAAQxD,GAAS,EAAO,gBAAY0B,IAEhE,CAAC5B,EAAUG,EAAgBD,EAASE,IAEvC,OACEgF,EAAAC,EAAA,CAAArF,SAAA,CACEsF,EAACC,GAAOlE,IAAKA,EAAG,cAAc,YAAaD,EAAIpB,SAC7CoF,EAACI,EAAO,CAACC,gBAAiB/E,KAAiBC,EAAYX,SAAA,CACpDC,GACCqF,EAACI,iBACa,cACZ7D,GAAI8D,EACF,CACEC,MAA8B,SAAvBtE,EAAMuE,QAAQC,KAAkB,kBAAoB,iBAC3DC,WAAY,IACZC,QAAS,OACTC,WAAY,SACZC,eAAgB,aAEhB,kBAAmB,CACjBF,QAAS,QACTG,SAAU,WACVC,GAAI,KAEDC,EAAkB/E,GAErB,qBAAsB,CACpBgF,UAAW,SAGf,qBAAsB,CACpBN,QAAS,UAGblE,MAEEC,WAEH9B,IAGLqF,EAACI,EAAG,CACF7D,GAAI8D,EACF,CACEY,SAAU,IACVC,SAAU,IACVC,UAAW,UACXT,QAAS,OACTC,WAAY,UACZC,eAAgB,aAChBQ,IAAK,CAAEC,GAAI,EAAGC,GAAI,OACbxG,GACHH,GAAQ,CAEN4G,GAAI,GAGRC,GAAI,QAEN9E,GACD,cACW,gBACRC,EAAWjC,UAEbI,GAAUkD,MAEZC,IAAqBnD,IAAWkD,IAAqBE,MACrD4B,EAACM,EAAG,CACF7D,GAAI8D,EACF,CACEK,QAAS,OACTC,WAAY,SACZC,eAAgB,WAChBQ,IAAK,IACLK,GAAI,CAAEC,MAAQL,GAAI,IAEpBvE,GACD,cACW,iBACRC,EAAWrC,SAAA,CAEduD,GACAnD,IAAWkD,IAAqBE,KAC/B8B,EAACd,EAAY,CAAA,aAEA,cACXZ,QAAQ,EACRqD,QAAS,IAAMzG,GAAS0G,IAAmBA,MACvClG,EAAehB,SAElBM,GAAOY,GAAiBoE,EAAC6B,EAAS,CAAA,GAAMlG,GAAYqE,EAAC8B,EAAQ,CAAA,IAN1D,gBAafhH,IAAWkD,IAAqBE,KAC/B4B,EAACiC,EAAM,CACLC,eAAa,EACbC,qBAAmB,EACnBC,kBAAgB,EAChBC,OAAO,MACPnH,KAAMA,GACNoH,QAAS,IAAMlH,IAAQ,GACvBqB,GAAI8D,EACF,CAEEgC,OAAQrG,EAAMqG,OAAOC,OAAS,GAE9BC,IAAKvG,EAAMwG,OAAOC,QAAQC,UAC1BC,OAAQ,OACRC,OAAQ,gBAAgB5G,EAAMwG,OAAOC,QAAQC,aAE7C7B,SAAU,YAEZ7D,IAEFC,UAAW,CACTK,SAAU,CACRf,GAAI8D,EACF,CACEQ,SAAU,YAEZlD,OAECC,IAELR,MAAO,CACLb,GAAI8D,EACF,CACEQ,SAAU,WACV+B,OAAQ,OACRlC,QAAS,OACTmC,iBAAkB,oBAEpBpF,OAECC,OAEFF,OAEDL,aAEJ6C,EAACI,GACC7D,GAAI8D,EACF,CACEyC,EAAG,EACHC,SAAU,QAEZnG,GACD,cACW,sBACRC,EAAiBnC,SAEpBsD,KAEFE,IACC8B,EAACI,EAAG,CAAC7D,GAAI,CAAEuG,EAAG,EAAGE,GAAI,GAAGtI,SACtBsF,EAACI,EAAG,CACF7D,GAAI,CACFyG,GAAI,IACJtC,QAAS,OACTuC,cAAe,iBACftC,WAAY,UACZC,eAAgB,aAEhBsC,UAAW,EACXC,YAAoC,SAAvBnH,EAAMuE,QAAQC,KAAkB,kBAAoB,qBAClE9F,SAEAwD"}
@@ -1,2 +1,2 @@
1
- import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as r}from"react";import{useTheme as i,ButtonBase as o,Badge as n,Tooltip as a,IconButton as s}from"@mui/material";import{getFocusRingStyle as d}from"../focusring/focusring.js";import{getInteractiveStyle as l}from"../../materialui/button/interactive.js";const m=r(({children:r,sx:m,label:p,extend:c,tooltipProps:f,badgeProps:u,...x},g)=>{const h=i(),{title:b,...y}=f??{};return c?t(o,{sx:{...h.typography.list,display:"flex",alignItems:"center",justifyContent:"flex-start",gap:1.25,py:1.5,px:1.25,"& .MuiSvgIcon-root":{fontSize:"17px"},"&.Mui-disabled":{color:"disabled.tertiary"},...l({fontWeight:"300"},{fontWeight:"700"}),...d(h),"&&:before":{borderRadius:"4px"},...m},ref:g,"data-testid":"HeaderButton",...x,children:[e(n,{...u,children:r}),p||b]}):e(a,{title:p||b,...y,children:e(s,{sx:m,size:"medium",ref:g,"data-testid":"HeaderButton",...x,children:e(n,{...u,children:r})})})});export{m as HeaderButton};
1
+ import{jsxs as t,jsx as e}from"react/jsx-runtime";import{forwardRef as r}from"react";import{useTheme as i,ButtonBase as o,Badge as s,Tooltip as n,IconButton as a}from"@mui/material";import{getFocusRingStyle as d}from"../focusring/focusring.js";import{getInteractiveStyle as l}from"../../materialui/button/interactive.js";import{sxOverride as m}from"../../utils/sxOverride/sxOverride.js";const p=r(({children:r,sx:p,label:f,extend:c,tooltipProps:u,badgeProps:x,...g},h)=>{const b=i(),{title:y,...j}=u??{};return c?t(o,{sx:m({...b.typography.list,display:"flex",alignItems:"center",justifyContent:"flex-start",gap:1.25,py:1.5,px:1.25,"& .MuiSvgIcon-root":{fontSize:"17px"},"&.Mui-disabled":{color:"disabled.tertiary"},...l({fontWeight:"300"},{fontWeight:"700"}),...d(b),"&&:before":{borderRadius:"4px"}},p),ref:h,"data-testid":"HeaderButton",...g,children:[e(s,{...x,children:r}),f||y]}):e(n,{title:f||y,...j,children:e(a,{sx:p,size:"medium",ref:h,"data-testid":"HeaderButton",...g,children:e(s,{...x,children:r})})})});export{p as HeaderButton};
2
2
  //# sourceMappingURL=HeaderButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderButton.js","sources":["../../../src/components/header/HeaderButton.tsx"],"sourcesContent":["import React, { ElementType, FC, ForwardedRef, forwardRef } from 'react';\nimport {\n IconButton,\n IconButtonProps,\n ButtonBase,\n Tooltip,\n TooltipProps,\n Badge,\n BadgeProps,\n useTheme,\n} from '@mui/material';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\nimport { getInteractiveStyle } from '@/src/materialui/button/interactive';\n\nexport interface HeaderButtonProps extends IconButtonProps<ElementType> {\n /**\n * Label for the tooltip or the text button\n */\n label?: TooltipProps['title'];\n /**\n * Change icon button with tooltip into button\n */\n extend?: boolean;\n /**\n * Properties applied to tooltip\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * Properties applied to badge\n */\n badgeProps?: BadgeProps;\n}\n\n/**\n * IconButton for the action links\n */\nexport const HeaderButton: FC<HeaderButtonProps> = forwardRef(\n ({ children, sx, label, extend, tooltipProps, badgeProps, ...rest }, ref) => {\n const theme = useTheme();\n const { title, ...restTooltip } = tooltipProps ?? {};\n\n if (extend) {\n return (\n <ButtonBase\n sx={{\n ...theme.typography.list,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n gap: 1.25,\n py: 1.5,\n px: 1.25,\n // icon inside\n '& .MuiSvgIcon-root': {\n fontSize: '17px',\n },\n // disabled style\n '&.Mui-disabled': {\n color: 'disabled.tertiary',\n },\n // interactive style\n ...getInteractiveStyle(\n {\n fontWeight: '300',\n },\n {\n fontWeight: '700',\n },\n ),\n // focus ring\n ...getFocusRingStyle(theme),\n '&&:before': {\n borderRadius: '4px',\n },\n ...sx,\n }}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n data-testid=\"HeaderButton\"\n {...rest}\n >\n <Badge {...badgeProps}>{children}</Badge>\n {label || title}\n </ButtonBase>\n );\n }\n\n return (\n <Tooltip title={label || title} {...restTooltip}>\n <IconButton\n sx={sx}\n size=\"medium\"\n ref={ref as ForwardedRef<HTMLButtonElement>}\n data-testid=\"HeaderButton\"\n {...rest}\n >\n <Badge {...badgeProps}>{children}</Badge>\n </IconButton>\n </Tooltip>\n );\n },\n);\n"],"names":["HeaderButton","forwardRef","children","sx","label","extend","tooltipProps","badgeProps","rest","ref","theme","useTheme","title","restTooltip","_jsxs","ButtonBase","typography","list","display","alignItems","justifyContent","gap","py","px","fontSize","color","getInteractiveStyle","fontWeight","getFocusRingStyle","borderRadius","_jsx","Badge","Tooltip","IconButton","size"],"mappings":"iUAoCO,MAAMA,EAAsCC,EACjD,EAAGC,WAAUC,KAAIC,QAAOC,SAAQC,eAAcC,gBAAeC,GAAQC,KACnE,MAAMC,EAAQC,KACRC,MAAEA,KAAUC,GAAgBP,GAAgB,CAAA,EAElD,OAAID,EAEAS,EAACC,EAAU,CACTZ,GAAI,IACCO,EAAMM,WAAWC,KACpBC,QAAS,OACTC,WAAY,SACZC,eAAgB,aAChBC,IAAK,KACLC,GAAI,IACJC,GAAI,KAEJ,qBAAsB,CACpBC,SAAU,QAGZ,iBAAkB,CAChBC,MAAO,wBAGNC,EACD,CACEC,WAAY,OAEd,CACEA,WAAY,WAIbC,EAAkBlB,GACrB,YAAa,CACXmB,aAAc,UAEb1B,GAELM,IAAKA,EAAsC,cAC/B,kBACRD,YAEJsB,EAACC,MAAUxB,EAAUL,SAAGA,IACvBE,GAASQ,KAMdkB,EAACE,GAAQpB,MAAOR,GAASQ,KAAWC,WAClCiB,EAACG,GACC9B,GAAIA,EACJ+B,KAAK,SACLzB,IAAKA,EAAsC,cAC/B,kBACRD,EAAIN,SAER4B,EAACC,EAAK,IAAKxB,EAAUL,SAAGA"}
1
+ {"version":3,"file":"HeaderButton.js","sources":["../../../src/components/header/HeaderButton.tsx"],"sourcesContent":["import React, { ElementType, FC, ForwardedRef, forwardRef } from 'react';\nimport {\n IconButton,\n IconButtonProps,\n ButtonBase,\n Tooltip,\n TooltipProps,\n Badge,\n BadgeProps,\n useTheme,\n} from '@mui/material';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\nimport { getInteractiveStyle } from '@/src/materialui/button/interactive';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface HeaderButtonProps extends IconButtonProps<ElementType> {\n /**\n * Label for the tooltip or the text button\n */\n label?: TooltipProps['title'];\n /**\n * Change icon button with tooltip into button\n */\n extend?: boolean;\n /**\n * Properties applied to tooltip\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * Properties applied to badge\n */\n badgeProps?: BadgeProps;\n}\n\n/**\n * IconButton for the action links\n */\nexport const HeaderButton: FC<HeaderButtonProps> = forwardRef(\n ({ children, sx, label, extend, tooltipProps, badgeProps, ...rest }, ref) => {\n const theme = useTheme();\n const { title, ...restTooltip } = tooltipProps ?? {};\n\n if (extend) {\n return (\n <ButtonBase\n sx={sxOverride(\n {\n ...theme.typography.list,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n gap: 1.25,\n py: 1.5,\n px: 1.25,\n // icon inside\n '& .MuiSvgIcon-root': {\n fontSize: '17px',\n },\n // disabled style\n '&.Mui-disabled': {\n color: 'disabled.tertiary',\n },\n // interactive style\n ...getInteractiveStyle(\n {\n fontWeight: '300',\n },\n {\n fontWeight: '700',\n },\n ),\n // focus ring\n ...getFocusRingStyle(theme),\n '&&:before': {\n borderRadius: '4px',\n },\n },\n sx,\n )}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n data-testid=\"HeaderButton\"\n {...rest}\n >\n <Badge {...badgeProps}>{children}</Badge>\n {label || title}\n </ButtonBase>\n );\n }\n\n return (\n <Tooltip title={label || title} {...restTooltip}>\n <IconButton\n sx={sx}\n size=\"medium\"\n ref={ref as ForwardedRef<HTMLButtonElement>}\n data-testid=\"HeaderButton\"\n {...rest}\n >\n <Badge {...badgeProps}>{children}</Badge>\n </IconButton>\n </Tooltip>\n );\n },\n);\n"],"names":["HeaderButton","forwardRef","children","sx","label","extend","tooltipProps","badgeProps","rest","ref","theme","useTheme","title","restTooltip","_jsxs","ButtonBase","sxOverride","typography","list","display","alignItems","justifyContent","gap","py","px","fontSize","color","getInteractiveStyle","fontWeight","getFocusRingStyle","borderRadius","_jsx","Badge","Tooltip","IconButton","size"],"mappings":"mYAqCO,MAAMA,EAAsCC,EACjD,EAAGC,WAAUC,KAAIC,QAAOC,SAAQC,eAAcC,gBAAeC,GAAQC,KACnE,MAAMC,EAAQC,KACRC,MAAEA,KAAUC,GAAgBP,GAAgB,CAAA,EAElD,OAAID,EAEAS,EAACC,GACCZ,GAAIa,EACF,IACKN,EAAMO,WAAWC,KACpBC,QAAS,OACTC,WAAY,SACZC,eAAgB,aAChBC,IAAK,KACLC,GAAI,IACJC,GAAI,KAEJ,qBAAsB,CACpBC,SAAU,QAGZ,iBAAkB,CAChBC,MAAO,wBAGNC,EACD,CACEC,WAAY,OAEd,CACEA,WAAY,WAIbC,EAAkBnB,GACrB,YAAa,CACXoB,aAAc,QAGlB3B,GAEFM,IAAKA,EAAsC,cAC/B,kBACRD,EAAIN,SAAA,CAER6B,EAACC,EAAK,IAAKzB,EAAUL,SAAGA,IACvBE,GAASQ,KAMdmB,EAACE,GAAQrB,MAAOR,GAASQ,KAAWC,WAClCkB,EAACG,GACC/B,GAAIA,EACJgC,KAAK,SACL1B,IAAKA,EAAsC,cAC/B,kBACRD,EAAIN,SAER6B,EAACC,EAAK,IAAKzB,EAAUL,SAAGA"}
@@ -26,17 +26,17 @@ export interface HeaderLanguageSelectProps extends HeaderButtonProps {
26
26
  */
27
27
  menuProps?: MenuProps;
28
28
  /**
29
- * Props applied to each MenuItem
29
+ * Props applied to each MenuItem, or a factory receiving the item index and language
30
30
  */
31
- menuItemProps?: MenuItemProps;
31
+ menuItemProps?: MenuItemProps | ((index: number, language: HeaderLanguageType) => MenuItemProps);
32
32
  /**
33
- * Props applied to Radio inside MenuItem
33
+ * Props applied to Radio inside each MenuItem, or a factory receiving the item index and language
34
34
  */
35
- radioProps?: RadioProps;
35
+ radioProps?: RadioProps | ((index: number, language: HeaderLanguageType) => RadioProps);
36
36
  /**
37
- * Props applied to ListItemText inside MenuIte
37
+ * Props applied to ListItemText inside each MenuItem, or a factory receiving the item index and language
38
38
  */
39
- listItemTextProps?: ListItemTextProps;
39
+ listItemTextProps?: ListItemTextProps | ((index: number, language: HeaderLanguageType) => ListItemTextProps);
40
40
  }
41
41
  /**
42
42
  * IconButton with menu selector for languages
@@ -1,2 +1,2 @@
1
- import{jsxs as e,Fragment as r,jsx as t}from"react/jsx-runtime";import{forwardRef as o,useState as n}from"react";import{Menu as l,MenuItem as c,Radio as i,ListItemText as a}from"@mui/material";import{HeaderButton as m}from"./HeaderButton.js";import{GlobeIcon as s}from"../icon/stroke/GlobeIcon.js";const d=o(({children:o,languages:d,onSelect:u,defaultLanguage:p=0,menuProps:f,menuItemProps:g,radioProps:h,listItemTextProps:k,...x},I)=>{const[P,j]=n(null),[C,b]=n(p);return e(r,{children:[t(m,{onClick:e=>j(e.currentTarget),ref:I,"data-testid":"HeaderLanguageSelect",...x,children:o||t(s,{})}),t(l,{open:!!P,anchorEl:P,onClose:()=>j(null),...f,children:d?.map((r,o)=>{const n=C===o,l="string"==typeof r?r:r.full;return e(c,{selected:n,onClick:()=>{u?.(r,o),b(o)},...g,children:[t(i,{checked:n,tabIndex:-1,...h}),t(a,{...k,children:l})]},l)})})]})});export{d as HeaderLanguageSelect};
1
+ import{jsxs as e,Fragment as t,jsx as r}from"react/jsx-runtime";import{forwardRef as o,useState as n}from"react";import{Menu as c,MenuItem as i,Radio as l,ListItemText as a}from"@mui/material";import{HeaderButton as m}from"./HeaderButton.js";import{GlobeIcon as u}from"../icon/stroke/GlobeIcon.js";const s=o(({children:o,languages:s,onSelect:p,defaultLanguage:d=0,menuProps:f,menuItemProps:g,radioProps:h,listItemTextProps:k,...x},y)=>{const[I,P]=n(null),[j,C]=n(d);return e(t,{children:[r(m,{onClick:e=>P(e.currentTarget),ref:y,"data-testid":"HeaderLanguageSelect",...x,children:o||r(u,{})}),r(c,{open:!!I,anchorEl:I,onClose:()=>P(null),...f,children:s?.map((t,o)=>{const n=j===o,c="string"==typeof t?t:t.full,m="function"==typeof g?g(o,t):g,u="function"==typeof h?h(o,t):h,s="function"==typeof k?k(o,t):k;return e(i,{selected:n,onClick:()=>{p?.(t,o),C(o)},...m,children:[r(l,{checked:n,tabIndex:-1,...u}),r(a,{...s,children:c})]},c)})})]})});export{s as HeaderLanguageSelect};
2
2
  //# sourceMappingURL=HeaderLanguageSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderLanguageSelect.js","sources":["../../../src/components/header/HeaderLanguageSelect.tsx"],"sourcesContent":["import React, { FC, forwardRef, useState } from 'react';\nimport {\n Menu,\n MenuItem,\n Radio,\n ListItemText,\n MenuProps,\n MenuItemProps,\n RadioProps,\n ListItemTextProps,\n} from '@mui/material';\nimport { HeaderButton, HeaderButtonProps } from './HeaderButton';\nimport { GlobeIcon } from '@/src/components/icon/stroke/GlobeIcon';\n\ntype HeaderLanguageType = string | { short?: string; full?: string };\n\nexport interface HeaderLanguageSelectProps extends HeaderButtonProps {\n /**\n * List of languages\n */\n languages?: HeaderLanguageType[];\n /**\n * Index of selected language\n * @default 0\n */\n defaultLanguage?: number;\n /**\n * Function that is triggered on language change\n * @param language - provided language\n * @param index - index of language\n */\n onSelect?: (language: HeaderLanguageType, index: number) => void;\n /**\n * Props applied to menu\n */\n menuProps?: MenuProps;\n /**\n * Props applied to each MenuItem\n */\n menuItemProps?: MenuItemProps;\n /**\n * Props applied to Radio inside MenuItem\n */\n radioProps?: RadioProps;\n /**\n * Props applied to ListItemText inside MenuIte\n */\n listItemTextProps?: ListItemTextProps;\n}\n\n/**\n * IconButton with menu selector for languages\n */\nexport const HeaderLanguageSelect: FC<HeaderLanguageSelectProps> = forwardRef(\n (\n {\n children,\n languages,\n onSelect,\n defaultLanguage = 0,\n menuProps,\n menuItemProps,\n radioProps,\n listItemTextProps,\n ...rest\n },\n ref,\n ) => {\n const [anchor, setAnchor] = useState(null);\n const [selected, setSelected] = useState(defaultLanguage);\n\n return (\n <>\n <HeaderButton\n onClick={(e) => setAnchor(e.currentTarget)}\n ref={ref}\n data-testid=\"HeaderLanguageSelect\"\n {...rest}\n >\n {children || <GlobeIcon />}\n </HeaderButton>\n <Menu open={!!anchor} anchorEl={anchor} onClose={() => setAnchor(null)} {...menuProps}>\n {languages?.map((lang, idx) => {\n const isSelected = selected === idx;\n const value = typeof lang === 'string' ? lang : lang.full;\n\n return (\n <MenuItem\n key={value}\n selected={isSelected}\n onClick={() => {\n onSelect?.(lang, idx);\n setSelected(idx);\n }}\n {...menuItemProps}\n >\n <Radio checked={isSelected} tabIndex={-1} {...radioProps} />\n <ListItemText {...listItemTextProps}>{value}</ListItemText>\n </MenuItem>\n );\n })}\n </Menu>\n </>\n );\n },\n);\n"],"names":["HeaderLanguageSelect","forwardRef","children","languages","onSelect","defaultLanguage","menuProps","menuItemProps","radioProps","listItemTextProps","rest","ref","anchor","setAnchor","useState","selected","setSelected","_jsxs","_Fragment","_jsx","HeaderButton","onClick","e","currentTarget","GlobeIcon","Menu","open","anchorEl","onClose","map","lang","idx","isSelected","value","full","MenuItem","Radio","checked","tabIndex","ListItemText"],"mappings":"0SAqDO,MAAMA,EAAsDC,EACjE,EAEIC,WACAC,YACAC,WACAC,kBAAkB,EAClBC,YACAC,gBACAC,aACAC,uBACGC,GAELC,KAEA,MAAOC,EAAQC,GAAaC,EAAS,OAC9BC,EAAUC,GAAeF,EAAST,GAEzC,OACEY,EAAAC,EAAA,CAAAhB,SAAA,CACEiB,EAACC,GACCC,QAAUC,GAAMT,EAAUS,EAAEC,eAC5BZ,IAAKA,gBACO,0BACRD,EAAIR,SAEPA,GAAYiB,EAACK,QAEhBL,EAACM,EAAI,CAACC,OAAQd,EAAQe,SAAUf,EAAQgB,QAAS,IAAMf,EAAU,SAAWP,WACzEH,GAAW0B,IAAI,CAACC,EAAMC,KACrB,MAAMC,EAAajB,IAAagB,EAC1BE,EAAwB,iBAATH,EAAoBA,EAAOA,EAAKI,KAErD,OACEjB,EAACkB,EAAQ,CAEPpB,SAAUiB,EACVX,QAAS,KACPjB,IAAW0B,EAAMC,GACjBf,EAAYe,OAEVxB,EAAaL,SAAA,CAEjBiB,EAACiB,EAAK,CAACC,QAASL,EAAYM,UAAU,KAAQ9B,IAC9CW,EAACoB,EAAY,IAAK9B,EAAiBP,SAAG+B,MATjCA"}
1
+ {"version":3,"file":"HeaderLanguageSelect.js","sources":["../../../src/components/header/HeaderLanguageSelect.tsx"],"sourcesContent":["import React, { FC, forwardRef, useState } from 'react';\nimport {\n Menu,\n MenuItem,\n Radio,\n ListItemText,\n MenuProps,\n MenuItemProps,\n RadioProps,\n ListItemTextProps,\n} from '@mui/material';\nimport { HeaderButton, HeaderButtonProps } from './HeaderButton';\nimport { GlobeIcon } from '@/src/components/icon/stroke/GlobeIcon';\n\ntype HeaderLanguageType = string | { short?: string; full?: string };\n\nexport interface HeaderLanguageSelectProps extends HeaderButtonProps {\n /**\n * List of languages\n */\n languages?: HeaderLanguageType[];\n /**\n * Index of selected language\n * @default 0\n */\n defaultLanguage?: number;\n /**\n * Function that is triggered on language change\n * @param language - provided language\n * @param index - index of language\n */\n onSelect?: (language: HeaderLanguageType, index: number) => void;\n /**\n * Props applied to menu\n */\n menuProps?: MenuProps;\n /**\n * Props applied to each MenuItem, or a factory receiving the item index and language\n */\n menuItemProps?: MenuItemProps | ((index: number, language: HeaderLanguageType) => MenuItemProps);\n /**\n * Props applied to Radio inside each MenuItem, or a factory receiving the item index and language\n */\n radioProps?: RadioProps | ((index: number, language: HeaderLanguageType) => RadioProps);\n /**\n * Props applied to ListItemText inside each MenuItem, or a factory receiving the item index and language\n */\n listItemTextProps?: ListItemTextProps | ((index: number, language: HeaderLanguageType) => ListItemTextProps);\n}\n\n/**\n * IconButton with menu selector for languages\n */\nexport const HeaderLanguageSelect: FC<HeaderLanguageSelectProps> = forwardRef(\n (\n {\n children,\n languages,\n onSelect,\n defaultLanguage = 0,\n menuProps,\n menuItemProps,\n radioProps,\n listItemTextProps,\n ...rest\n },\n ref,\n ) => {\n const [anchor, setAnchor] = useState(null);\n const [selected, setSelected] = useState(defaultLanguage);\n\n return (\n <>\n <HeaderButton\n onClick={(e) => setAnchor(e.currentTarget)}\n ref={ref}\n data-testid=\"HeaderLanguageSelect\"\n {...rest}\n >\n {children || <GlobeIcon />}\n </HeaderButton>\n <Menu open={!!anchor} anchorEl={anchor} onClose={() => setAnchor(null)} {...menuProps}>\n {languages?.map((lang, idx) => {\n const isSelected = selected === idx;\n const value = typeof lang === 'string' ? lang : lang.full;\n const resolvedMenuItemProps = typeof menuItemProps === 'function' ? menuItemProps(idx, lang) : menuItemProps;\n const resolvedRadioProps = typeof radioProps === 'function' ? radioProps(idx, lang) : radioProps;\n const resolvedListItemTextProps =\n typeof listItemTextProps === 'function' ? listItemTextProps(idx, lang) : listItemTextProps;\n\n return (\n <MenuItem\n key={value}\n selected={isSelected}\n onClick={() => {\n onSelect?.(lang, idx);\n setSelected(idx);\n }}\n {...resolvedMenuItemProps}\n >\n <Radio checked={isSelected} tabIndex={-1} {...resolvedRadioProps} />\n <ListItemText {...resolvedListItemTextProps}>{value}</ListItemText>\n </MenuItem>\n );\n })}\n </Menu>\n </>\n );\n },\n);\n"],"names":["HeaderLanguageSelect","forwardRef","children","languages","onSelect","defaultLanguage","menuProps","menuItemProps","radioProps","listItemTextProps","rest","ref","anchor","setAnchor","useState","selected","setSelected","_jsxs","_Fragment","_jsx","HeaderButton","onClick","e","currentTarget","GlobeIcon","Menu","open","anchorEl","onClose","map","lang","idx","isSelected","value","full","resolvedMenuItemProps","resolvedRadioProps","resolvedListItemTextProps","MenuItem","Radio","checked","tabIndex","ListItemText"],"mappings":"0SAqDO,MAAMA,EAAsDC,EACjE,EAEIC,WACAC,YACAC,WACAC,kBAAkB,EAClBC,YACAC,gBACAC,aACAC,uBACGC,GAELC,KAEA,MAAOC,EAAQC,GAAaC,EAAS,OAC9BC,EAAUC,GAAeF,EAAST,GAEzC,OACEY,EAAAC,EAAA,CAAAhB,SAAA,CACEiB,EAACC,GACCC,QAAUC,GAAMT,EAAUS,EAAEC,eAC5BZ,IAAKA,gBACO,0BACRD,EAAIR,SAEPA,GAAYiB,EAACK,QAEhBL,EAACM,EAAI,CAACC,OAAQd,EAAQe,SAAUf,EAAQgB,QAAS,IAAMf,EAAU,SAAWP,WACzEH,GAAW0B,IAAI,CAACC,EAAMC,KACrB,MAAMC,EAAajB,IAAagB,EAC1BE,EAAwB,iBAATH,EAAoBA,EAAOA,EAAKI,KAC/CC,EAAiD,mBAAlB5B,EAA+BA,EAAcwB,EAAKD,GAAQvB,EACzF6B,EAA2C,mBAAf5B,EAA4BA,EAAWuB,EAAKD,GAAQtB,EAChF6B,EACyB,mBAAtB5B,EAAmCA,EAAkBsB,EAAKD,GAAQrB,EAE3E,OACEQ,EAACqB,EAAQ,CAEPvB,SAAUiB,EACVX,QAAS,KACPjB,IAAW0B,EAAMC,GACjBf,EAAYe,OAEVI,EAAqBjC,SAAA,CAEzBiB,EAACoB,EAAK,CAACC,QAASR,EAAYS,UAAU,KAAQL,IAC9CjB,EAACuB,EAAY,IAAKL,EAAyBnC,SAAG+B,MATzCA"}
@@ -1,7 +1,7 @@
1
- import { FC } from 'react';
1
+ import { FC, ElementType } from 'react';
2
2
  import { LinkProps } from '@mui/material';
3
3
  import { LogoProps } from '@/src/components/logo/Logo';
4
- export interface HeaderLogoProps extends LinkProps {
4
+ export interface HeaderLogoProps extends LinkProps<ElementType> {
5
5
  /**
6
6
  * Properties applied to Logo component
7
7
  */
@@ -1,2 +1,2 @@
1
- import{jsx as o,Fragment as r}from"react/jsx-runtime";import{forwardRef as i}from"react";import{useTheme as e,Link as s}from"@mui/material";import{Logo as t}from"../logo/Logo.js";import{getFocusRingStyle as l}from"../focusring/focusring.js";const c=i(({sx:i,children:c,href:m,logoProps:n,...f},a)=>{const p=e();return m||f.onClick?o(s,{sx:{display:"block",position:"relative",py:1,...l(p),"&.Mui-focusVisible":{boxShadow:"none"},"& .MuiSvgIcon-root":{display:"block"}},href:m||"#",ref:a,"aria-label":"Home",...f,children:c||o(t,{...n})}):o(r,{children:c||o(t,{sx:i,ref:a,...n})})});export{c as HeaderLogo};
1
+ import{jsx as o,Fragment as r}from"react/jsx-runtime";import{forwardRef as i}from"react";import{useTheme as e,Link as s}from"@mui/material";import{Logo as t}from"../logo/Logo.js";import{getFocusRingStyle as l}from"../focusring/focusring.js";import{sxOverride as m}from"../../utils/sxOverride/sxOverride.js";const c=i(({sx:i,children:c,href:n,logoProps:f,...p},a)=>{const u=e();return n||p.onClick?o(s,{sx:m({display:"block",position:"relative",py:1,...l(u),"&.Mui-focusVisible":{boxShadow:"none"},"& .MuiSvgIcon-root":{display:"block"}},i),href:n||"#",ref:a,"aria-label":"Home",...p,children:c||o(t,{...f})}):o(r,{children:c||o(t,{sx:i,ref:a,...f})})});export{c as HeaderLogo};
2
2
  //# sourceMappingURL=HeaderLogo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderLogo.js","sources":["../../../src/components/header/HeaderLogo.tsx"],"sourcesContent":["import React, { FC, ForwardedRef, forwardRef } from 'react';\nimport { Link, LinkProps, useTheme } from '@mui/material';\nimport { Logo, LogoProps } from '@/src/components/logo/Logo';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\n\nexport interface HeaderLogoProps extends LinkProps {\n /**\n * Properties applied to Logo component\n */\n logoProps?: LogoProps;\n}\n\n/**\n * Logo with link wrapper\n */\nexport const HeaderLogo: FC<HeaderLogoProps> = forwardRef(({ sx, children, href, logoProps, ...rest }, ref) => {\n const theme = useTheme();\n\n if (href || rest.onClick) {\n return (\n <Link\n sx={{\n // same style is applied in Header logo wrapper\n display: 'block',\n position: 'relative',\n py: 1,\n // add proper focus ring\n ...getFocusRingStyle(theme),\n // remove default link box shadow\n '&.Mui-focusVisible': {\n boxShadow: 'none',\n },\n '& .MuiSvgIcon-root': {\n display: 'block',\n },\n }}\n href={href || '#'}\n ref={ref}\n aria-label=\"Home\"\n {...rest}\n >\n {children || <Logo {...logoProps} />}\n </Link>\n );\n }\n return <>{children || <Logo sx={sx} ref={ref as unknown as ForwardedRef<SVGSVGElement>} {...logoProps} />}</>;\n});\n"],"names":["HeaderLogo","forwardRef","sx","children","href","logoProps","rest","ref","theme","useTheme","onClick","_jsx","Link","display","position","py","getFocusRingStyle","boxShadow","Logo"],"mappings":"uPAeaA,EAAkCC,EAAW,EAAGC,KAAIC,WAAUC,OAAMC,eAAcC,GAAQC,KACrG,MAAMC,EAAQC,IAEd,OAAIL,GAAQE,EAAKI,QAEbC,EAACC,EAAI,CACHV,GAAI,CAEFW,QAAS,QACTC,SAAU,WACVC,GAAI,KAEDC,EAAkBR,GAErB,qBAAsB,CACpBS,UAAW,QAEb,qBAAsB,CACpBJ,QAAS,UAGbT,KAAMA,GAAQ,IACdG,IAAKA,EAAG,aACG,UACPD,EAAIH,SAEPA,GAAYQ,EAACO,MAASb,MAItBM,cAAGR,GAAYQ,EAACO,GAAKhB,GAAIA,EAAIK,IAAKA,KAAmDF"}
1
+ {"version":3,"file":"HeaderLogo.js","sources":["../../../src/components/header/HeaderLogo.tsx"],"sourcesContent":["import React, { FC, ForwardedRef, forwardRef, ElementType } from 'react';\nimport { Link, LinkProps, useTheme } from '@mui/material';\nimport { Logo, LogoProps } from '@/src/components/logo/Logo';\nimport { getFocusRingStyle } from '@/src/components/focusring/focusring';\nimport { sxOverride } from '@/src/utils/sxOverride';\n\nexport interface HeaderLogoProps extends LinkProps<ElementType> {\n /**\n * Properties applied to Logo component\n */\n logoProps?: LogoProps;\n}\n\n/**\n * Logo with link wrapper\n */\nexport const HeaderLogo: FC<HeaderLogoProps> = forwardRef(({ sx, children, href, logoProps, ...rest }, ref) => {\n const theme = useTheme();\n\n if (href || rest.onClick) {\n return (\n <Link\n sx={sxOverride(\n {\n // same style is applied in Header logo wrapper\n display: 'block',\n position: 'relative',\n py: 1,\n // add proper focus ring\n ...getFocusRingStyle(theme),\n // remove default link box shadow\n '&.Mui-focusVisible': {\n boxShadow: 'none',\n },\n '& .MuiSvgIcon-root': {\n display: 'block',\n },\n },\n sx,\n )}\n href={href || '#'}\n ref={ref as ForwardedRef<HTMLAnchorElement>}\n aria-label=\"Home\"\n {...rest}\n >\n {children || <Logo {...logoProps} />}\n </Link>\n );\n }\n return <>{children || <Logo sx={sx} ref={ref as unknown as ForwardedRef<SVGSVGElement>} {...logoProps} />}</>;\n});\n"],"names":["HeaderLogo","forwardRef","sx","children","href","logoProps","rest","ref","theme","useTheme","onClick","_jsx","Link","sxOverride","display","position","py","getFocusRingStyle","boxShadow","Logo"],"mappings":"yTAgBaA,EAAkCC,EAAW,EAAGC,KAAIC,WAAUC,OAAMC,eAAcC,GAAQC,KACrG,MAAMC,EAAQC,IAEd,OAAIL,GAAQE,EAAKI,QAEbC,EAACC,GACCV,GAAIW,EACF,CAEEC,QAAS,QACTC,SAAU,WACVC,GAAI,KAEDC,EAAkBT,GAErB,qBAAsB,CACpBU,UAAW,QAEb,qBAAsB,CACpBJ,QAAS,UAGbZ,GAEFE,KAAMA,GAAQ,IACdG,IAAKA,EAAsC,aAChC,UACPD,EAAIH,SAEPA,GAAYQ,EAACQ,EAAI,IAAKd,MAItBM,cAAGR,GAAYQ,EAACQ,GAAKjB,GAAIA,EAAIK,IAAKA,KAAmDF"}
@@ -1,2 +1,2 @@
1
- import{jsxs as o,Fragment as r,jsx as t}from"react/jsx-runtime";import{forwardRef as e,useRef as n,useState as i}from"react";import{useTheme as a,useMediaQuery as s,ClickAwayListener as c,Box as l,Collapse as d,Container as p,Portal as x,Backdrop as m}from"@mui/material";import{ChevronDownIcon as u}from"../icon/stroke/ChevronDownIcon.js";import{HeaderNavigationLink as f}from"./HeaderNavigationLink.js";const g=e(({children:e,sx:g,label:h,icon:k,extend:v,inContainer:b=!1,disableBackdrop:C=!1,onClick:w,clickAwayListenerProps:y,contentProps:P,wrapperProps:H,containerProps:S,collapseProps:j,portalProps:z,backdropProps:I,...A},B)=>{const L=n(null),[N,$]=i(!1),D=a(),W=s(D.breakpoints.down("lg")),q=void 0===v?W:v,{sx:E,...F}=I??{},{sx:G,...J}=H??{},{sx:K,...M}=P??{};return o(r,{children:[t(f,{active:N,extend:v,icon:k||t(u,{sx:{"&&&":{fontSize:void 0===v?{xs:"20px",lg:"14px"}:["20px","14px"][+!v]},color:void 0===v?{xs:"dark"===D.palette.mode?"onSurface.os300":"onSurface.os700",lg:"currentColor"}:["dark"===D.palette.mode?"onSurface.os300":"onSurface.os700","currentColor"][+!v],transform:`rotate(${N?"180":"0"}deg)`,transition:void 0===v?{xs:D.transitions.create("transform",{duration:D.transitions.duration.shortest}),lg:"none"}:[D.transitions.create("transform",{duration:D.transitions.duration.shortest}),"none"][+!v]}}),onClick:o=>{w?.(o),$(o=>!o)},sx:{justifyContent:void 0===v?{xs:"space-between",lg:"flex-start"}:["space-between","flex-start"][+!v],...g},ref:B??L,"data-testid":"HeaderNavigationHero",...A,children:h}),t(c,{onClickAway:o=>!(B??L)?.current?.contains(o?.target)&&$(!1),...y,children:t(l,{sx:{position:void 0===v?{xs:"static",lg:"absolute"}:["static","absolute"][+!v],zIndex:"10",left:"0",right:"0",top:D.mixins.toolbar.minHeight,maxHeight:`calc(100vh - ${D.mixins.toolbar.minHeight})`,overflow:"auto",...G},...J,children:t(d,{in:N,...j,children:t(l,{sx:{backgroundColor:void 0===v?{xs:"unset",lg:"dark"===D.palette.mode?"surface.primary":"background.primary"}:["unset","dark"===D.palette.mode?"surface.primary":"background.primary"][+!v],py:void 0===v?{xs:0,lg:2}:[0,2][+!v],px:void 0===v?{xs:1,lg:2}:[1,2][+!v],...b&&{px:0},...K},...M,children:b?t(p,{maxWidth:"xl",...S,children:e}):e})})})}),!C&&!q&&t(x,{...z,children:t(m,{open:N,sx:{zIndex:D.zIndex.appBar-50,...E},...F})})]})});export{g as HeaderNavigationHero};
1
+ import{jsxs as r,Fragment as o,jsx as e}from"react/jsx-runtime";import{forwardRef as t,useRef as n,useState as i}from"react";import{useTheme as a,useMediaQuery as s,ClickAwayListener as c,Box as d,Collapse as l,Container as p,Portal as x,Backdrop as m}from"@mui/material";import{sxOverride as u}from"../../utils/sxOverride/sxOverride.js";import{ChevronDownIcon as f}from"../icon/stroke/ChevronDownIcon.js";import{HeaderNavigationLink as g}from"./HeaderNavigationLink.js";const h=t(({children:t,sx:h,label:v,icon:k,extend:b,inContainer:C=!1,disableBackdrop:w=!1,onClick:y,clickAwayListenerProps:P,contentProps:H,wrapperProps:j,containerProps:S,collapseProps:z,portalProps:I,backdropProps:A,...B},L)=>{const N=n(null),[O,$]=i(!1),D=a(),W=s(D.breakpoints.down("lg")),q=void 0===b?W:b,{sx:E,...F}=A??{},{sx:G,...J}=j??{},{sx:K,...M}=H??{};return r(o,{children:[e(g,{active:O,extend:b,icon:k||e(f,{sx:{"&&&":{fontSize:void 0===b?{xs:"20px",lg:"14px"}:["20px","14px"][+!b]},color:void 0===b?{xs:"dark"===D.palette.mode?"onSurface.os300":"onSurface.os700",lg:"currentColor"}:["dark"===D.palette.mode?"onSurface.os300":"onSurface.os700","currentColor"][+!b],transform:`rotate(${O?"180":"0"}deg)`,transition:void 0===b?{xs:D.transitions.create("transform",{duration:D.transitions.duration.shortest}),lg:"none"}:[D.transitions.create("transform",{duration:D.transitions.duration.shortest}),"none"][+!b]}}),onClick:r=>{y?.(r),$(r=>!r)},sx:u({justifyContent:void 0===b?{xs:"space-between",lg:"flex-start"}:["space-between","flex-start"][+!b]},h),ref:L??N,"data-testid":"HeaderNavigationHero",...B,children:v}),e(c,{onClickAway:r=>!(L??N)?.current?.contains(r?.target)&&$(!1),...P,children:e(d,{sx:u({position:void 0===b?{xs:"static",lg:"absolute"}:["static","absolute"][+!b],zIndex:"10",left:"0",right:"0",top:D.mixins.toolbar.minHeight,maxHeight:`calc(100vh - ${D.mixins.toolbar.minHeight})`,overflow:"auto"},G),...J,children:e(l,{in:O,...z,children:e(d,{sx:u({backgroundColor:void 0===b?{xs:"unset",lg:"dark"===D.palette.mode?"surface.primary":"background.primary"}:["unset","dark"===D.palette.mode?"surface.primary":"background.primary"][+!b],py:void 0===b?{xs:0,lg:2}:[0,2][+!b],px:void 0===b?{xs:1,lg:2}:[1,2][+!b],...C&&{px:0}},K),...M,children:C?e(p,{maxWidth:"xl",...S,children:t}):t})})})}),!w&&!q&&e(x,{...I,children:e(m,{open:O,sx:u({zIndex:D.zIndex.appBar-50},E),...F})})]})});export{h as HeaderNavigationHero};
2
2
  //# sourceMappingURL=HeaderNavigationHero.js.map