@blateral/b.kit 2.3.0-beta.1.3 → 2.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 (753) hide show
  1. package/lib/components/base/icons/Icons.d.ts +66 -0
  2. package/lib/components/base/icons/Icons.d.ts.map +1 -0
  3. package/{types → lib}/components/fields/FilterField.d.ts.map +1 -1
  4. package/lib/components/sections/NumberList.d.ts +36 -0
  5. package/lib/components/sections/NumberList.d.ts.map +1 -0
  6. package/{types → lib}/components/sections/header/Header.d.ts +3 -3
  7. package/lib/components/sections/header/Header.d.ts.map +1 -0
  8. package/lib/components/sections/navigation/menu/variations/MenuFlyout.d.ts.map +1 -0
  9. package/lib/components/sections/navigation/menu/variations/MenuLarge.d.ts.map +1 -0
  10. package/{types → lib}/components/typography/Callout.d.ts +2 -2
  11. package/lib/components/typography/Callout.d.ts.map +1 -0
  12. package/lib/index.d.ts +158 -0
  13. package/lib/index.d.ts.map +1 -0
  14. package/lib/index.es.js +2 -0
  15. package/lib/index.es.js.map +1 -0
  16. package/lib/index.js +2 -0
  17. package/lib/index.js.map +1 -0
  18. package/{types → lib}/utils/styles.d.ts +8 -1
  19. package/lib/utils/styles.d.ts.map +1 -0
  20. package/{types → lib}/utils/useEqualSheetHeight.d.ts +9 -2
  21. package/lib/utils/useEqualSheetHeight.d.ts.map +1 -0
  22. package/{types → lib}/utils/useMediaQuery.d.ts +4 -0
  23. package/{types → lib}/utils/useMediaQuery.d.ts.map +1 -1
  24. package/package.json +5 -19
  25. package/base/package.json +0 -7
  26. package/blocks/package.json +0 -7
  27. package/buttons/package.json +0 -7
  28. package/cjs/Actions-6dd616e0.js +0 -2
  29. package/cjs/Actions-6dd616e0.js.map +0 -1
  30. package/cjs/Bdot-d898ba3b.js +0 -2
  31. package/cjs/Bdot-d898ba3b.js.map +0 -1
  32. package/cjs/Button-72747f63.js +0 -2
  33. package/cjs/Button-72747f63.js.map +0 -1
  34. package/cjs/ButtonGhost-046437c5.js +0 -2
  35. package/cjs/ButtonGhost-046437c5.js.map +0 -1
  36. package/cjs/Callout-2713f870.js +0 -2
  37. package/cjs/Callout-2713f870.js.map +0 -1
  38. package/cjs/Checkbox-14000bf0.js +0 -2
  39. package/cjs/Checkbox-14000bf0.js.map +0 -1
  40. package/cjs/ClockFilled-2483aa4a.js +0 -2
  41. package/cjs/ClockFilled-2483aa4a.js.map +0 -1
  42. package/cjs/Control-eead1a4c.js +0 -2
  43. package/cjs/Control-eead1a4c.js.map +0 -1
  44. package/cjs/Copy-e860efe7.js +0 -2
  45. package/cjs/Copy-e860efe7.js.map +0 -1
  46. package/cjs/FilterField-497e998f.js +0 -2
  47. package/cjs/FilterField-497e998f.js.map +0 -1
  48. package/cjs/Image-d9681be0.js +0 -2
  49. package/cjs/Image-d9681be0.js.map +0 -1
  50. package/cjs/LanguageSwitcher-47e25e95.js +0 -2
  51. package/cjs/LanguageSwitcher-47e25e95.js.map +0 -1
  52. package/cjs/LibThemeProvider-fb99fd6d.js +0 -2
  53. package/cjs/LibThemeProvider-fb99fd6d.js.map +0 -1
  54. package/cjs/Link-70143bb7.js +0 -2
  55. package/cjs/Link-70143bb7.js.map +0 -1
  56. package/cjs/Navigation-3f5d6088.js +0 -2
  57. package/cjs/Navigation-3f5d6088.js.map +0 -1
  58. package/cjs/POICard-9911980e.js +0 -2
  59. package/cjs/POICard-9911980e.js.map +0 -1
  60. package/cjs/Pointer-3588eadf.js +0 -2
  61. package/cjs/Pointer-3588eadf.js.map +0 -1
  62. package/cjs/SocialList-da77e994.js +0 -2
  63. package/cjs/SocialList-da77e994.js.map +0 -1
  64. package/cjs/TableBlock-080c9c2e.js +0 -2
  65. package/cjs/TableBlock-080c9c2e.js.map +0 -1
  66. package/cjs/VideoCard-1fa209fc.js +0 -2
  67. package/cjs/VideoCard-1fa209fc.js.map +0 -1
  68. package/cjs/Wrapper-3b9c9e89.js +0 -2
  69. package/cjs/Wrapper-3b9c9e89.js.map +0 -1
  70. package/cjs/arrays-c272ed59.js +0 -2
  71. package/cjs/arrays-c272ed59.js.map +0 -1
  72. package/cjs/base.js +0 -2
  73. package/cjs/base.js.map +0 -1
  74. package/cjs/blocks.js +0 -2
  75. package/cjs/blocks.js.map +0 -1
  76. package/cjs/buttons.js +0 -2
  77. package/cjs/buttons.js.map +0 -1
  78. package/cjs/clamp-bd21d587.js +0 -2
  79. package/cjs/clamp-bd21d587.js.map +0 -1
  80. package/cjs/concat-f387d848.js +0 -2
  81. package/cjs/concat-f387d848.js.map +0 -1
  82. package/cjs/cookies.js +0 -2
  83. package/cjs/cookies.js.map +0 -1
  84. package/cjs/fields.js +0 -2
  85. package/cjs/fields.js.map +0 -1
  86. package/cjs/footer.js +0 -2
  87. package/cjs/footer.js.map +0 -1
  88. package/cjs/hexRgbConverter-91b28aea.js +0 -2
  89. package/cjs/hexRgbConverter-91b28aea.js.map +0 -1
  90. package/cjs/hooks.js +0 -2
  91. package/cjs/hooks.js.map +0 -1
  92. package/cjs/icons.js +0 -2
  93. package/cjs/icons.js.map +0 -1
  94. package/cjs/index.js +0 -2
  95. package/cjs/index.js.map +0 -1
  96. package/cjs/navigation-bf154e6e.js +0 -2
  97. package/cjs/navigation-bf154e6e.js.map +0 -1
  98. package/cjs/navigation.js +0 -2
  99. package/cjs/navigation.js.map +0 -1
  100. package/cjs/sections.js +0 -2
  101. package/cjs/sections.js.map +0 -1
  102. package/cjs/sections_news.js +0 -2
  103. package/cjs/sections_news.js.map +0 -1
  104. package/cjs/statusFormatter-0393122b.js +0 -2
  105. package/cjs/statusFormatter-0393122b.js.map +0 -1
  106. package/cjs/styles-0f1a0aea.js +0 -2
  107. package/cjs/styles-0f1a0aea.js.map +0 -1
  108. package/cjs/typography.js +0 -2
  109. package/cjs/typography.js.map +0 -1
  110. package/cjs/urlParams-1d03b5a6.js +0 -2
  111. package/cjs/urlParams-1d03b5a6.js.map +0 -1
  112. package/cjs/useCookieConsent-0bf94751.js +0 -2
  113. package/cjs/useCookieConsent-0bf94751.js.map +0 -1
  114. package/cjs/useGeolocation-4d38150b.js +0 -2
  115. package/cjs/useGeolocation-4d38150b.js.map +0 -1
  116. package/cjs/useIE-aef9decc.js +0 -2
  117. package/cjs/useIE-aef9decc.js.map +0 -1
  118. package/cjs/useMediaQuery-d4f81f88.js +0 -2
  119. package/cjs/useMediaQuery-d4f81f88.js.map +0 -1
  120. package/cjs/useMounted-0bba9869.js +0 -2
  121. package/cjs/useMounted-0bba9869.js.map +0 -1
  122. package/cjs/useObserverSupport-5ab320dd.js +0 -2
  123. package/cjs/useObserverSupport-5ab320dd.js.map +0 -1
  124. package/cjs/useUpdateEffect-4d233e2c.js +0 -2
  125. package/cjs/useUpdateEffect-4d233e2c.js.map +0 -1
  126. package/cookies/package.json +0 -7
  127. package/esm/Actions-73e13c48.js +0 -57
  128. package/esm/Actions-73e13c48.js.map +0 -1
  129. package/esm/Bdot-30b047cc.js +0 -24
  130. package/esm/Bdot-30b047cc.js.map +0 -1
  131. package/esm/Button-678be396.js +0 -115
  132. package/esm/Button-678be396.js.map +0 -1
  133. package/esm/ButtonGhost-6673a07e.js +0 -112
  134. package/esm/ButtonGhost-6673a07e.js.map +0 -1
  135. package/esm/Callout-439308f6.js +0 -99
  136. package/esm/Callout-439308f6.js.map +0 -1
  137. package/esm/Checkbox-a365d733.js +0 -135
  138. package/esm/Checkbox-a365d733.js.map +0 -1
  139. package/esm/ClockFilled-8784ddac.js +0 -1793
  140. package/esm/ClockFilled-8784ddac.js.map +0 -1
  141. package/esm/Control-e61c9395.js +0 -52
  142. package/esm/Control-e61c9395.js.map +0 -1
  143. package/esm/Copy-3444d005.js +0 -270
  144. package/esm/Copy-3444d005.js.map +0 -1
  145. package/esm/FilterField-f423b4d1.js +0 -4907
  146. package/esm/FilterField-f423b4d1.js.map +0 -1
  147. package/esm/Image-82417953.js +0 -193
  148. package/esm/Image-82417953.js.map +0 -1
  149. package/esm/LanguageSwitcher-a53094d3.js +0 -70
  150. package/esm/LanguageSwitcher-a53094d3.js.map +0 -1
  151. package/esm/LibThemeProvider-90a5375f.js +0 -115
  152. package/esm/LibThemeProvider-90a5375f.js.map +0 -1
  153. package/esm/Link-ee8a48ed.js +0 -60
  154. package/esm/Link-ee8a48ed.js.map +0 -1
  155. package/esm/Navigation-ece0ff0d.js +0 -1664
  156. package/esm/Navigation-ece0ff0d.js.map +0 -1
  157. package/esm/POICard-d8832988.js +0 -917
  158. package/esm/POICard-d8832988.js.map +0 -1
  159. package/esm/Pointer-da4d0977.js +0 -111
  160. package/esm/Pointer-da4d0977.js.map +0 -1
  161. package/esm/SocialList-7c00c70e.js +0 -61
  162. package/esm/SocialList-7c00c70e.js.map +0 -1
  163. package/esm/TableBlock-0bbde956.js +0 -218
  164. package/esm/TableBlock-0bbde956.js.map +0 -1
  165. package/esm/VideoCard-2557407b.js +0 -187
  166. package/esm/VideoCard-2557407b.js.map +0 -1
  167. package/esm/Wrapper-f4a70e30.js +0 -420
  168. package/esm/Wrapper-f4a70e30.js.map +0 -1
  169. package/esm/arrays-65b644ef.js +0 -17
  170. package/esm/arrays-65b644ef.js.map +0 -1
  171. package/esm/base.js +0 -10
  172. package/esm/base.js.map +0 -1
  173. package/esm/blocks.js +0 -22
  174. package/esm/blocks.js.map +0 -1
  175. package/esm/buttons.js +0 -12
  176. package/esm/buttons.js.map +0 -1
  177. package/esm/clamp-12d37b65.js +0 -10
  178. package/esm/clamp-12d37b65.js.map +0 -1
  179. package/esm/concat-ab3c66f2.js +0 -40
  180. package/esm/concat-ab3c66f2.js.map +0 -1
  181. package/esm/cookies.js +0 -270
  182. package/esm/cookies.js.map +0 -1
  183. package/esm/fields.js +0 -187
  184. package/esm/fields.js.map +0 -1
  185. package/esm/footer.js +0 -300
  186. package/esm/footer.js.map +0 -1
  187. package/esm/hexRgbConverter-edb91624.js +0 -36
  188. package/esm/hexRgbConverter-edb91624.js.map +0 -1
  189. package/esm/hooks.js +0 -527
  190. package/esm/hooks.js.map +0 -1
  191. package/esm/icons.js +0 -4
  192. package/esm/icons.js.map +0 -1
  193. package/esm/index.js +0 -7
  194. package/esm/index.js.map +0 -1
  195. package/esm/navigation-49280321.js +0 -132
  196. package/esm/navigation-49280321.js.map +0 -1
  197. package/esm/navigation.js +0 -159
  198. package/esm/navigation.js.map +0 -1
  199. package/esm/sections.js +0 -7126
  200. package/esm/sections.js.map +0 -1
  201. package/esm/sections_news.js +0 -1018
  202. package/esm/sections_news.js.map +0 -1
  203. package/esm/statusFormatter-9be0fbff.js +0 -255
  204. package/esm/statusFormatter-9be0fbff.js.map +0 -1
  205. package/esm/styles-5f78e59d.js +0 -462
  206. package/esm/styles-5f78e59d.js.map +0 -1
  207. package/esm/typography.js +0 -11
  208. package/esm/typography.js.map +0 -1
  209. package/esm/urlParams-882563ce.js +0 -297
  210. package/esm/urlParams-882563ce.js.map +0 -1
  211. package/esm/useCookieConsent-db86e5cb.js +0 -339
  212. package/esm/useCookieConsent-db86e5cb.js.map +0 -1
  213. package/esm/useGeolocation-c81e3efc.js +0 -471
  214. package/esm/useGeolocation-c81e3efc.js.map +0 -1
  215. package/esm/useIE-a9c56989.js +0 -15
  216. package/esm/useIE-a9c56989.js.map +0 -1
  217. package/esm/useMediaQuery-43629cbb.js +0 -109
  218. package/esm/useMediaQuery-43629cbb.js.map +0 -1
  219. package/esm/useMounted-1e4cc87b.js +0 -12
  220. package/esm/useMounted-1e4cc87b.js.map +0 -1
  221. package/esm/useObserverSupport-02bce7f5.js +0 -19
  222. package/esm/useObserverSupport-02bce7f5.js.map +0 -1
  223. package/esm/useUpdateEffect-824c0c84.js +0 -18
  224. package/esm/useUpdateEffect-824c0c84.js.map +0 -1
  225. package/fields/package.json +0 -7
  226. package/footer/package.json +0 -7
  227. package/hooks/package.json +0 -7
  228. package/icons/package.json +0 -7
  229. package/navigation/package.json +0 -7
  230. package/sections/news/package.json +0 -7
  231. package/sections/package.json +0 -7
  232. package/types/base.d.ts +0 -5
  233. package/types/base.d.ts.map +0 -1
  234. package/types/blocks.d.ts +0 -18
  235. package/types/blocks.d.ts.map +0 -1
  236. package/types/buttons.d.ts +0 -6
  237. package/types/buttons.d.ts.map +0 -1
  238. package/types/components/sections/NumberList.d.ts +0 -31
  239. package/types/components/sections/NumberList.d.ts.map +0 -1
  240. package/types/components/sections/header/Header.d.ts.map +0 -1
  241. package/types/components/sections/navigation/menu/variations/MenuFlyout.d.ts.map +0 -1
  242. package/types/components/sections/navigation/menu/variations/MenuLarge.d.ts.map +0 -1
  243. package/types/components/typography/Callout.d.ts.map +0 -1
  244. package/types/cookies.d.ts +0 -3
  245. package/types/cookies.d.ts.map +0 -1
  246. package/types/fields.d.ts +0 -14
  247. package/types/fields.d.ts.map +0 -1
  248. package/types/footer.d.ts +0 -4
  249. package/types/footer.d.ts.map +0 -1
  250. package/types/hooks.d.ts +0 -35
  251. package/types/hooks.d.ts.map +0 -1
  252. package/types/icons.d.ts +0 -66
  253. package/types/icons.d.ts.map +0 -1
  254. package/types/index.d.ts +0 -18
  255. package/types/index.d.ts.map +0 -1
  256. package/types/navigation.d.ts +0 -10
  257. package/types/navigation.d.ts.map +0 -1
  258. package/types/sections.d.ts +0 -42
  259. package/types/sections.d.ts.map +0 -1
  260. package/types/sections_news.d.ts +0 -10
  261. package/types/sections_news.d.ts.map +0 -1
  262. package/types/typography.d.ts +0 -6
  263. package/types/typography.d.ts.map +0 -1
  264. package/types/utils/styles.d.ts.map +0 -1
  265. package/types/utils/useEqualSheetHeight.d.ts.map +0 -1
  266. package/typography/package.json +0 -7
  267. /package/{types → lib}/components/base/Grid.d.ts +0 -0
  268. /package/{types → lib}/components/base/Grid.d.ts.map +0 -0
  269. /package/{types → lib}/components/base/Section.d.ts +0 -0
  270. /package/{types → lib}/components/base/Section.d.ts.map +0 -0
  271. /package/{types → lib}/components/base/Wrapper.d.ts +0 -0
  272. /package/{types → lib}/components/base/Wrapper.d.ts.map +0 -0
  273. /package/{types → lib}/components/base/icons/AngleDown.d.ts +0 -0
  274. /package/{types → lib}/components/base/icons/AngleDown.d.ts.map +0 -0
  275. /package/{types → lib}/components/base/icons/AngleLeft.d.ts +0 -0
  276. /package/{types → lib}/components/base/icons/AngleLeft.d.ts.map +0 -0
  277. /package/{types → lib}/components/base/icons/AngleRight.d.ts +0 -0
  278. /package/{types → lib}/components/base/icons/AngleRight.d.ts.map +0 -0
  279. /package/{types → lib}/components/base/icons/AngleUp.d.ts +0 -0
  280. /package/{types → lib}/components/base/icons/AngleUp.d.ts.map +0 -0
  281. /package/{types → lib}/components/base/icons/ArrowDown.d.ts +0 -0
  282. /package/{types → lib}/components/base/icons/ArrowDown.d.ts.map +0 -0
  283. /package/{types → lib}/components/base/icons/ArrowLeft.d.ts +0 -0
  284. /package/{types → lib}/components/base/icons/ArrowLeft.d.ts.map +0 -0
  285. /package/{types → lib}/components/base/icons/ArrowLeftGhost.d.ts +0 -0
  286. /package/{types → lib}/components/base/icons/ArrowLeftGhost.d.ts.map +0 -0
  287. /package/{types → lib}/components/base/icons/ArrowLeftRight.d.ts +0 -0
  288. /package/{types → lib}/components/base/icons/ArrowLeftRight.d.ts.map +0 -0
  289. /package/{types → lib}/components/base/icons/ArrowRight.d.ts +0 -0
  290. /package/{types → lib}/components/base/icons/ArrowRight.d.ts.map +0 -0
  291. /package/{types → lib}/components/base/icons/ArrowRightGhost.d.ts +0 -0
  292. /package/{types → lib}/components/base/icons/ArrowRightGhost.d.ts.map +0 -0
  293. /package/{types → lib}/components/base/icons/ArrowUp.d.ts +0 -0
  294. /package/{types → lib}/components/base/icons/ArrowUp.d.ts.map +0 -0
  295. /package/{types → lib}/components/base/icons/BoxArrowUpRight.d.ts +0 -0
  296. /package/{types → lib}/components/base/icons/BoxArrowUpRight.d.ts.map +0 -0
  297. /package/{types → lib}/components/base/icons/CalendarToday.d.ts +0 -0
  298. /package/{types → lib}/components/base/icons/CalendarToday.d.ts.map +0 -0
  299. /package/{types → lib}/components/base/icons/Category.d.ts +0 -0
  300. /package/{types → lib}/components/base/icons/Category.d.ts.map +0 -0
  301. /package/{types → lib}/components/base/icons/Check.d.ts +0 -0
  302. /package/{types → lib}/components/base/icons/Check.d.ts.map +0 -0
  303. /package/{types → lib}/components/base/icons/Clock.d.ts +0 -0
  304. /package/{types → lib}/components/base/icons/Clock.d.ts.map +0 -0
  305. /package/{types → lib}/components/base/icons/ClockFilled.d.ts +0 -0
  306. /package/{types → lib}/components/base/icons/ClockFilled.d.ts.map +0 -0
  307. /package/{types → lib}/components/base/icons/Computer.d.ts +0 -0
  308. /package/{types → lib}/components/base/icons/Computer.d.ts.map +0 -0
  309. /package/{types → lib}/components/base/icons/Cross.d.ts +0 -0
  310. /package/{types → lib}/components/base/icons/Cross.d.ts.map +0 -0
  311. /package/{types → lib}/components/base/icons/CrossSmall.d.ts +0 -0
  312. /package/{types → lib}/components/base/icons/CrossSmall.d.ts.map +0 -0
  313. /package/{types → lib}/components/base/icons/CurrentLocation.d.ts +0 -0
  314. /package/{types → lib}/components/base/icons/CurrentLocation.d.ts.map +0 -0
  315. /package/{types → lib}/components/base/icons/DateRange.d.ts +0 -0
  316. /package/{types → lib}/components/base/icons/DateRange.d.ts.map +0 -0
  317. /package/{types → lib}/components/base/icons/DeleteForever.d.ts +0 -0
  318. /package/{types → lib}/components/base/icons/DeleteForever.d.ts.map +0 -0
  319. /package/{types → lib}/components/base/icons/External.d.ts +0 -0
  320. /package/{types → lib}/components/base/icons/External.d.ts.map +0 -0
  321. /package/{types → lib}/components/base/icons/Filter.d.ts +0 -0
  322. /package/{types → lib}/components/base/icons/Filter.d.ts.map +0 -0
  323. /package/{types → lib}/components/base/icons/FlyTo.d.ts +0 -0
  324. /package/{types → lib}/components/base/icons/FlyTo.d.ts.map +0 -0
  325. /package/{types → lib}/components/base/icons/Info.d.ts +0 -0
  326. /package/{types → lib}/components/base/icons/Info.d.ts.map +0 -0
  327. /package/{types → lib}/components/base/icons/Language.d.ts +0 -0
  328. /package/{types → lib}/components/base/icons/Language.d.ts.map +0 -0
  329. /package/{types → lib}/components/base/icons/LocationPin.d.ts +0 -0
  330. /package/{types → lib}/components/base/icons/LocationPin.d.ts.map +0 -0
  331. /package/{types → lib}/components/base/icons/LocationSearch.d.ts +0 -0
  332. /package/{types → lib}/components/base/icons/LocationSearch.d.ts.map +0 -0
  333. /package/{types → lib}/components/base/icons/Magnifier.d.ts +0 -0
  334. /package/{types → lib}/components/base/icons/Magnifier.d.ts.map +0 -0
  335. /package/{types → lib}/components/base/icons/Mail.d.ts +0 -0
  336. /package/{types → lib}/components/base/icons/Mail.d.ts.map +0 -0
  337. /package/{types → lib}/components/base/icons/Map.d.ts +0 -0
  338. /package/{types → lib}/components/base/icons/Map.d.ts.map +0 -0
  339. /package/{types → lib}/components/base/icons/MenuBurger.d.ts +0 -0
  340. /package/{types → lib}/components/base/icons/MenuBurger.d.ts.map +0 -0
  341. /package/{types → lib}/components/base/icons/Minus.d.ts +0 -0
  342. /package/{types → lib}/components/base/icons/Minus.d.ts.map +0 -0
  343. /package/{types → lib}/components/base/icons/Money.d.ts +0 -0
  344. /package/{types → lib}/components/base/icons/Money.d.ts.map +0 -0
  345. /package/{types → lib}/components/base/icons/MyLocation.d.ts +0 -0
  346. /package/{types → lib}/components/base/icons/MyLocation.d.ts.map +0 -0
  347. /package/{types → lib}/components/base/icons/Person.d.ts +0 -0
  348. /package/{types → lib}/components/base/icons/Person.d.ts.map +0 -0
  349. /package/{types → lib}/components/base/icons/Phone.d.ts +0 -0
  350. /package/{types → lib}/components/base/icons/Phone.d.ts.map +0 -0
  351. /package/{types → lib}/components/base/icons/Place.d.ts +0 -0
  352. /package/{types → lib}/components/base/icons/Place.d.ts.map +0 -0
  353. /package/{types → lib}/components/base/icons/Play.d.ts +0 -0
  354. /package/{types → lib}/components/base/icons/Play.d.ts.map +0 -0
  355. /package/{types → lib}/components/base/icons/Plus.d.ts +0 -0
  356. /package/{types → lib}/components/base/icons/Plus.d.ts.map +0 -0
  357. /package/{types → lib}/components/base/icons/Route.d.ts +0 -0
  358. /package/{types → lib}/components/base/icons/Route.d.ts.map +0 -0
  359. /package/{types → lib}/components/base/icons/Star.d.ts +0 -0
  360. /package/{types → lib}/components/base/icons/Star.d.ts.map +0 -0
  361. /package/{types → lib}/components/base/icons/ToggleOff.d.ts +0 -0
  362. /package/{types → lib}/components/base/icons/ToggleOff.d.ts.map +0 -0
  363. /package/{types → lib}/components/base/icons/ToggleOn.d.ts +0 -0
  364. /package/{types → lib}/components/base/icons/ToggleOn.d.ts.map +0 -0
  365. /package/{types → lib}/components/base/icons/UnfoldMore.d.ts +0 -0
  366. /package/{types → lib}/components/base/icons/UnfoldMore.d.ts.map +0 -0
  367. /package/{types → lib}/components/base/icons/files/Excel.d.ts +0 -0
  368. /package/{types → lib}/components/base/icons/files/Excel.d.ts.map +0 -0
  369. /package/{types → lib}/components/base/icons/files/Image.d.ts +0 -0
  370. /package/{types → lib}/components/base/icons/files/Image.d.ts.map +0 -0
  371. /package/{types → lib}/components/base/icons/files/Pdf.d.ts +0 -0
  372. /package/{types → lib}/components/base/icons/files/Pdf.d.ts.map +0 -0
  373. /package/{types → lib}/components/base/icons/files/PowerPoint.d.ts +0 -0
  374. /package/{types → lib}/components/base/icons/files/PowerPoint.d.ts.map +0 -0
  375. /package/{types → lib}/components/base/icons/files/UploadFile.d.ts +0 -0
  376. /package/{types → lib}/components/base/icons/files/UploadFile.d.ts.map +0 -0
  377. /package/{types → lib}/components/base/icons/files/Word.d.ts +0 -0
  378. /package/{types → lib}/components/base/icons/files/Word.d.ts.map +0 -0
  379. /package/{types → lib}/components/base/icons/files/Zip.d.ts +0 -0
  380. /package/{types → lib}/components/base/icons/files/Zip.d.ts.map +0 -0
  381. /package/{types → lib}/components/base/icons/socials/Facebook.d.ts +0 -0
  382. /package/{types → lib}/components/base/icons/socials/Facebook.d.ts.map +0 -0
  383. /package/{types → lib}/components/base/icons/socials/Instagram.d.ts +0 -0
  384. /package/{types → lib}/components/base/icons/socials/Instagram.d.ts.map +0 -0
  385. /package/{types → lib}/components/base/icons/socials/LinkedIn.d.ts +0 -0
  386. /package/{types → lib}/components/base/icons/socials/LinkedIn.d.ts.map +0 -0
  387. /package/{types → lib}/components/base/icons/socials/Twitter.d.ts +0 -0
  388. /package/{types → lib}/components/base/icons/socials/Twitter.d.ts.map +0 -0
  389. /package/{types → lib}/components/base/icons/socials/Xing.d.ts +0 -0
  390. /package/{types → lib}/components/base/icons/socials/Xing.d.ts.map +0 -0
  391. /package/{types → lib}/components/base/icons/socials/Youtube.d.ts +0 -0
  392. /package/{types → lib}/components/base/icons/socials/Youtube.d.ts.map +0 -0
  393. /package/{types → lib}/components/base/nl2br.d.ts +0 -0
  394. /package/{types → lib}/components/base/nl2br.d.ts.map +0 -0
  395. /package/{types → lib}/components/blocks/Actions.d.ts +0 -0
  396. /package/{types → lib}/components/blocks/Actions.d.ts.map +0 -0
  397. /package/{types → lib}/components/blocks/Alert.d.ts +0 -0
  398. /package/{types → lib}/components/blocks/Alert.d.ts.map +0 -0
  399. /package/{types → lib}/components/blocks/Bdot.d.ts +0 -0
  400. /package/{types → lib}/components/blocks/Bdot.d.ts.map +0 -0
  401. /package/{types → lib}/components/blocks/CookieConsent.d.ts +0 -0
  402. /package/{types → lib}/components/blocks/CookieConsent.d.ts.map +0 -0
  403. /package/{types → lib}/components/blocks/EventBlock.d.ts +0 -0
  404. /package/{types → lib}/components/blocks/EventBlock.d.ts.map +0 -0
  405. /package/{types → lib}/components/blocks/Fact.d.ts +0 -0
  406. /package/{types → lib}/components/blocks/Fact.d.ts.map +0 -0
  407. /package/{types → lib}/components/blocks/Feature.d.ts +0 -0
  408. /package/{types → lib}/components/blocks/Feature.d.ts.map +0 -0
  409. /package/{types → lib}/components/blocks/Image.d.ts +0 -0
  410. /package/{types → lib}/components/blocks/Image.d.ts.map +0 -0
  411. /package/{types → lib}/components/blocks/InfoList.d.ts +0 -0
  412. /package/{types → lib}/components/blocks/InfoList.d.ts.map +0 -0
  413. /package/{types → lib}/components/blocks/IntroBlock.d.ts +0 -0
  414. /package/{types → lib}/components/blocks/IntroBlock.d.ts.map +0 -0
  415. /package/{types → lib}/components/blocks/JobCard.d.ts +0 -0
  416. /package/{types → lib}/components/blocks/JobCard.d.ts.map +0 -0
  417. /package/{types → lib}/components/blocks/LanguageSwitcher.d.ts +0 -0
  418. /package/{types → lib}/components/blocks/LanguageSwitcher.d.ts.map +0 -0
  419. /package/{types → lib}/components/blocks/NavBlock.d.ts +0 -0
  420. /package/{types → lib}/components/blocks/NavBlock.d.ts.map +0 -0
  421. /package/{types → lib}/components/blocks/NewsCard.d.ts +0 -0
  422. /package/{types → lib}/components/blocks/NewsCard.d.ts.map +0 -0
  423. /package/{types → lib}/components/blocks/POICard.d.ts +0 -0
  424. /package/{types → lib}/components/blocks/POICard.d.ts.map +0 -0
  425. /package/{types → lib}/components/blocks/POIFacts.d.ts +0 -0
  426. /package/{types → lib}/components/blocks/POIFacts.d.ts.map +0 -0
  427. /package/{types → lib}/components/blocks/PriceTag.d.ts +0 -0
  428. /package/{types → lib}/components/blocks/PriceTag.d.ts.map +0 -0
  429. /package/{types → lib}/components/blocks/PromotionCard.d.ts +0 -0
  430. /package/{types → lib}/components/blocks/PromotionCard.d.ts.map +0 -0
  431. /package/{types → lib}/components/blocks/SocialList.d.ts +0 -0
  432. /package/{types → lib}/components/blocks/SocialList.d.ts.map +0 -0
  433. /package/{types → lib}/components/blocks/TableBlock.d.ts +0 -0
  434. /package/{types → lib}/components/blocks/TableBlock.d.ts.map +0 -0
  435. /package/{types → lib}/components/blocks/Tag.d.ts +0 -0
  436. /package/{types → lib}/components/blocks/Tag.d.ts.map +0 -0
  437. /package/{types → lib}/components/blocks/Title.d.ts +0 -0
  438. /package/{types → lib}/components/blocks/Title.d.ts.map +0 -0
  439. /package/{types → lib}/components/blocks/VideoBlock.d.ts +0 -0
  440. /package/{types → lib}/components/blocks/VideoBlock.d.ts.map +0 -0
  441. /package/{types → lib}/components/blocks/VideoCard.d.ts +0 -0
  442. /package/{types → lib}/components/blocks/VideoCard.d.ts.map +0 -0
  443. /package/{types → lib}/components/buttons/Button.d.ts +0 -0
  444. /package/{types → lib}/components/buttons/Button.d.ts.map +0 -0
  445. /package/{types → lib}/components/buttons/ButtonGhost.d.ts +0 -0
  446. /package/{types → lib}/components/buttons/ButtonGhost.d.ts.map +0 -0
  447. /package/{types → lib}/components/buttons/Control.d.ts +0 -0
  448. /package/{types → lib}/components/buttons/Control.d.ts.map +0 -0
  449. /package/{types → lib}/components/buttons/Pointer.d.ts +0 -0
  450. /package/{types → lib}/components/buttons/Pointer.d.ts.map +0 -0
  451. /package/{types → lib}/components/debug/DebugLines.d.ts +0 -0
  452. /package/{types → lib}/components/debug/DebugLines.d.ts.map +0 -0
  453. /package/{types → lib}/components/examples/hooks/ArrayHookExample.d.ts +0 -0
  454. /package/{types → lib}/components/examples/hooks/ArrayHookExample.d.ts.map +0 -0
  455. /package/{types → lib}/components/examples/hooks/IntervalHookExample.d.ts +0 -0
  456. /package/{types → lib}/components/examples/hooks/IntervalHookExample.d.ts.map +0 -0
  457. /package/{types → lib}/components/fields/Checkbox.d.ts +0 -0
  458. /package/{types → lib}/components/fields/Checkbox.d.ts.map +0 -0
  459. /package/{types → lib}/components/fields/CompactForm.d.ts +0 -0
  460. /package/{types → lib}/components/fields/CompactForm.d.ts.map +0 -0
  461. /package/{types → lib}/components/fields/Datepicker.d.ts +0 -0
  462. /package/{types → lib}/components/fields/Datepicker.d.ts.map +0 -0
  463. /package/{types → lib}/components/fields/FileUpload.d.ts +0 -0
  464. /package/{types → lib}/components/fields/FileUpload.d.ts.map +0 -0
  465. /package/{types → lib}/components/fields/FilterField.d.ts +0 -0
  466. /package/{types → lib}/components/fields/FormField.d.ts +0 -0
  467. /package/{types → lib}/components/fields/FormField.d.ts.map +0 -0
  468. /package/{types → lib}/components/fields/LocationField.d.ts +0 -0
  469. /package/{types → lib}/components/fields/LocationField.d.ts.map +0 -0
  470. /package/{types → lib}/components/fields/Radio.d.ts +0 -0
  471. /package/{types → lib}/components/fields/Radio.d.ts.map +0 -0
  472. /package/{types → lib}/components/fields/SearchInput.d.ts +0 -0
  473. /package/{types → lib}/components/fields/SearchInput.d.ts.map +0 -0
  474. /package/{types → lib}/components/fields/SelectDropdown.d.ts +0 -0
  475. /package/{types → lib}/components/fields/SelectDropdown.d.ts.map +0 -0
  476. /package/{types → lib}/components/fields/Textarea.d.ts +0 -0
  477. /package/{types → lib}/components/fields/Textarea.d.ts.map +0 -0
  478. /package/{types → lib}/components/fields/Textfield.d.ts +0 -0
  479. /package/{types → lib}/components/fields/Textfield.d.ts.map +0 -0
  480. /package/{types → lib}/components/sections/Accordion.d.ts +0 -0
  481. /package/{types → lib}/components/sections/Accordion.d.ts.map +0 -0
  482. /package/{types → lib}/components/sections/AlertList.d.ts +0 -0
  483. /package/{types → lib}/components/sections/AlertList.d.ts.map +0 -0
  484. /package/{types → lib}/components/sections/Article.d.ts +0 -0
  485. /package/{types → lib}/components/sections/Article.d.ts.map +0 -0
  486. /package/{types → lib}/components/sections/CallToAction.d.ts +0 -0
  487. /package/{types → lib}/components/sections/CallToAction.d.ts.map +0 -0
  488. /package/{types → lib}/components/sections/CardList.d.ts +0 -0
  489. /package/{types → lib}/components/sections/CardList.d.ts.map +0 -0
  490. /package/{types → lib}/components/sections/ComparisonSlider.d.ts +0 -0
  491. /package/{types → lib}/components/sections/ComparisonSlider.d.ts.map +0 -0
  492. /package/{types → lib}/components/sections/CrossPromotion.d.ts +0 -0
  493. /package/{types → lib}/components/sections/CrossPromotion.d.ts.map +0 -0
  494. /package/{types → lib}/components/sections/FactGrid.d.ts +0 -0
  495. /package/{types → lib}/components/sections/FactGrid.d.ts.map +0 -0
  496. /package/{types → lib}/components/sections/FactList.d.ts +0 -0
  497. /package/{types → lib}/components/sections/FactList.d.ts.map +0 -0
  498. /package/{types → lib}/components/sections/FeatureList.d.ts +0 -0
  499. /package/{types → lib}/components/sections/FeatureList.d.ts.map +0 -0
  500. /package/{types → lib}/components/sections/Gallery.d.ts +0 -0
  501. /package/{types → lib}/components/sections/Gallery.d.ts.map +0 -0
  502. /package/{types → lib}/components/sections/IconList.d.ts +0 -0
  503. /package/{types → lib}/components/sections/IconList.d.ts.map +0 -0
  504. /package/{types → lib}/components/sections/IndexList.d.ts +0 -0
  505. /package/{types → lib}/components/sections/IndexList.d.ts.map +0 -0
  506. /package/{types → lib}/components/sections/Intro.d.ts +0 -0
  507. /package/{types → lib}/components/sections/Intro.d.ts.map +0 -0
  508. /package/{types → lib}/components/sections/Map.d.ts +0 -0
  509. /package/{types → lib}/components/sections/Map.d.ts.map +0 -0
  510. /package/{types → lib}/components/sections/NavList.d.ts +0 -0
  511. /package/{types → lib}/components/sections/NavList.d.ts.map +0 -0
  512. /package/{types → lib}/components/sections/NewsletterForm.d.ts +0 -0
  513. /package/{types → lib}/components/sections/NewsletterForm.d.ts.map +0 -0
  514. /package/{types → lib}/components/sections/ParallaxBackground.d.ts +0 -0
  515. /package/{types → lib}/components/sections/ParallaxBackground.d.ts.map +0 -0
  516. /package/{types → lib}/components/sections/Poster.d.ts +0 -0
  517. /package/{types → lib}/components/sections/Poster.d.ts.map +0 -0
  518. /package/{types → lib}/components/sections/PriceList.d.ts +0 -0
  519. /package/{types → lib}/components/sections/PriceList.d.ts.map +0 -0
  520. /package/{types → lib}/components/sections/PriceTable.d.ts +0 -0
  521. /package/{types → lib}/components/sections/PriceTable.d.ts.map +0 -0
  522. /package/{types → lib}/components/sections/Quote.d.ts +0 -0
  523. /package/{types → lib}/components/sections/Quote.d.ts.map +0 -0
  524. /package/{types → lib}/components/sections/RawVideo.d.ts +0 -0
  525. /package/{types → lib}/components/sections/RawVideo.d.ts.map +0 -0
  526. /package/{types → lib}/components/sections/SimpleImage.d.ts +0 -0
  527. /package/{types → lib}/components/sections/SimpleImage.d.ts.map +0 -0
  528. /package/{types → lib}/components/sections/SocialWall.d.ts +0 -0
  529. /package/{types → lib}/components/sections/SocialWall.d.ts.map +0 -0
  530. /package/{types → lib}/components/sections/Table.d.ts +0 -0
  531. /package/{types → lib}/components/sections/Table.d.ts.map +0 -0
  532. /package/{types → lib}/components/sections/Teaser.d.ts +0 -0
  533. /package/{types → lib}/components/sections/Teaser.d.ts.map +0 -0
  534. /package/{types → lib}/components/sections/TeaserWide.d.ts +0 -0
  535. /package/{types → lib}/components/sections/TeaserWide.d.ts.map +0 -0
  536. /package/{types → lib}/components/sections/Timeline.d.ts +0 -0
  537. /package/{types → lib}/components/sections/Timeline.d.ts.map +0 -0
  538. /package/{types → lib}/components/sections/Video.d.ts +0 -0
  539. /package/{types → lib}/components/sections/Video.d.ts.map +0 -0
  540. /package/{types → lib}/components/sections/events/EventDetail.d.ts +0 -0
  541. /package/{types → lib}/components/sections/events/EventDetail.d.ts.map +0 -0
  542. /package/{types → lib}/components/sections/events/EventList.d.ts +0 -0
  543. /package/{types → lib}/components/sections/events/EventList.d.ts.map +0 -0
  544. /package/{types → lib}/components/sections/events/EventOverview.d.ts +0 -0
  545. /package/{types → lib}/components/sections/events/EventOverview.d.ts.map +0 -0
  546. /package/{types → lib}/components/sections/footer/Footer.d.ts +0 -0
  547. /package/{types → lib}/components/sections/footer/Footer.d.ts.map +0 -0
  548. /package/{types → lib}/components/sections/footer/partials/FooterBottomBar.d.ts +0 -0
  549. /package/{types → lib}/components/sections/footer/partials/FooterBottomBar.d.ts.map +0 -0
  550. /package/{types → lib}/components/sections/footer/partials/FooterColumn.d.ts +0 -0
  551. /package/{types → lib}/components/sections/footer/partials/FooterColumn.d.ts.map +0 -0
  552. /package/{types → lib}/components/sections/footer/partials/index.d.ts +0 -0
  553. /package/{types → lib}/components/sections/footer/partials/index.d.ts.map +0 -0
  554. /package/{types → lib}/components/sections/footer/skeletons/FooterArticle.d.ts +0 -0
  555. /package/{types → lib}/components/sections/footer/skeletons/FooterArticle.d.ts.map +0 -0
  556. /package/{types → lib}/components/sections/footer/skeletons/FooterBottomGrid.d.ts +0 -0
  557. /package/{types → lib}/components/sections/footer/skeletons/FooterBottomGrid.d.ts.map +0 -0
  558. /package/{types → lib}/components/sections/footer/skeletons/index.d.ts +0 -0
  559. /package/{types → lib}/components/sections/footer/skeletons/index.d.ts.map +0 -0
  560. /package/{types → lib}/components/sections/form/DynamicForm.d.ts +0 -0
  561. /package/{types → lib}/components/sections/form/DynamicForm.d.ts.map +0 -0
  562. /package/{types → lib}/components/sections/form/renderer/areaRenderer.d.ts +0 -0
  563. /package/{types → lib}/components/sections/form/renderer/areaRenderer.d.ts.map +0 -0
  564. /package/{types → lib}/components/sections/form/renderer/datepickerRenderer.d.ts +0 -0
  565. /package/{types → lib}/components/sections/form/renderer/datepickerRenderer.d.ts.map +0 -0
  566. /package/{types → lib}/components/sections/form/renderer/fieldGroupRenderer.d.ts +0 -0
  567. /package/{types → lib}/components/sections/form/renderer/fieldGroupRenderer.d.ts.map +0 -0
  568. /package/{types → lib}/components/sections/form/renderer/fieldRenderer.d.ts +0 -0
  569. /package/{types → lib}/components/sections/form/renderer/fieldRenderer.d.ts.map +0 -0
  570. /package/{types → lib}/components/sections/form/renderer/locationRenderer.d.ts +0 -0
  571. /package/{types → lib}/components/sections/form/renderer/locationRenderer.d.ts.map +0 -0
  572. /package/{types → lib}/components/sections/form/renderer/selectRenderer.d.ts +0 -0
  573. /package/{types → lib}/components/sections/form/renderer/selectRenderer.d.ts.map +0 -0
  574. /package/{types → lib}/components/sections/form/renderer/uploadRenderer.d.ts +0 -0
  575. /package/{types → lib}/components/sections/form/renderer/uploadRenderer.d.ts.map +0 -0
  576. /package/{types → lib}/components/sections/form/validators/areaValidator.d.ts +0 -0
  577. /package/{types → lib}/components/sections/form/validators/areaValidator.d.ts.map +0 -0
  578. /package/{types → lib}/components/sections/form/validators/datepickerValidator.d.ts +0 -0
  579. /package/{types → lib}/components/sections/form/validators/datepickerValidator.d.ts.map +0 -0
  580. /package/{types → lib}/components/sections/form/validators/fieldGroupValidator.d.ts +0 -0
  581. /package/{types → lib}/components/sections/form/validators/fieldGroupValidator.d.ts.map +0 -0
  582. /package/{types → lib}/components/sections/form/validators/fieldValidator.d.ts +0 -0
  583. /package/{types → lib}/components/sections/form/validators/fieldValidator.d.ts.map +0 -0
  584. /package/{types → lib}/components/sections/form/validators/locationValidator.d.ts +0 -0
  585. /package/{types → lib}/components/sections/form/validators/locationValidator.d.ts.map +0 -0
  586. /package/{types → lib}/components/sections/form/validators/selectValidator.d.ts +0 -0
  587. /package/{types → lib}/components/sections/form/validators/selectValidator.d.ts.map +0 -0
  588. /package/{types → lib}/components/sections/form/validators/uploadValidator.d.ts +0 -0
  589. /package/{types → lib}/components/sections/form/validators/uploadValidator.d.ts.map +0 -0
  590. /package/{types → lib}/components/sections/header/HeaderKenBurns.d.ts +0 -0
  591. /package/{types → lib}/components/sections/header/HeaderKenBurns.d.ts.map +0 -0
  592. /package/{types → lib}/components/sections/header/HeaderPoster.d.ts +0 -0
  593. /package/{types → lib}/components/sections/header/HeaderPoster.d.ts.map +0 -0
  594. /package/{types → lib}/components/sections/header/HeaderVideo.d.ts +0 -0
  595. /package/{types → lib}/components/sections/header/HeaderVideo.d.ts.map +0 -0
  596. /package/{types → lib}/components/sections/jobs/JobArticle.d.ts +0 -0
  597. /package/{types → lib}/components/sections/jobs/JobArticle.d.ts.map +0 -0
  598. /package/{types → lib}/components/sections/jobs/JobList.d.ts +0 -0
  599. /package/{types → lib}/components/sections/jobs/JobList.d.ts.map +0 -0
  600. /package/{types → lib}/components/sections/navigation/NavBar.d.ts +0 -0
  601. /package/{types → lib}/components/sections/navigation/NavBar.d.ts.map +0 -0
  602. /package/{types → lib}/components/sections/navigation/Navigation.d.ts +0 -0
  603. /package/{types → lib}/components/sections/navigation/Navigation.d.ts.map +0 -0
  604. /package/{types → lib}/components/sections/navigation/menu/Menu.d.ts +0 -0
  605. /package/{types → lib}/components/sections/navigation/menu/Menu.d.ts.map +0 -0
  606. /package/{types → lib}/components/sections/navigation/menu/variations/MenuFlyout.d.ts +0 -0
  607. /package/{types → lib}/components/sections/navigation/menu/variations/MenuLarge.d.ts +0 -0
  608. /package/{types → lib}/components/sections/navigation/partials/MenuFooter.d.ts +0 -0
  609. /package/{types → lib}/components/sections/navigation/partials/MenuFooter.d.ts.map +0 -0
  610. /package/{types → lib}/components/sections/navigation/partials/MenuHeader.d.ts +0 -0
  611. /package/{types → lib}/components/sections/navigation/partials/MenuHeader.d.ts.map +0 -0
  612. /package/{types → lib}/components/sections/navigation/partials/NavBarBottom.d.ts +0 -0
  613. /package/{types → lib}/components/sections/navigation/partials/NavBarBottom.d.ts.map +0 -0
  614. /package/{types → lib}/components/sections/navigation/partials/NavBarMain.d.ts +0 -0
  615. /package/{types → lib}/components/sections/navigation/partials/NavBarMain.d.ts.map +0 -0
  616. /package/{types → lib}/components/sections/navigation/partials/NavBarTop.d.ts +0 -0
  617. /package/{types → lib}/components/sections/navigation/partials/NavBarTop.d.ts.map +0 -0
  618. /package/{types → lib}/components/sections/navigation/partials/index.d.ts +0 -0
  619. /package/{types → lib}/components/sections/navigation/partials/index.d.ts.map +0 -0
  620. /package/{types → lib}/components/sections/navigation/skeletons/BarBreadCrumbs.d.ts +0 -0
  621. /package/{types → lib}/components/sections/navigation/skeletons/BarBreadCrumbs.d.ts.map +0 -0
  622. /package/{types → lib}/components/sections/navigation/skeletons/BarColumn.d.ts +0 -0
  623. /package/{types → lib}/components/sections/navigation/skeletons/BarColumn.d.ts.map +0 -0
  624. /package/{types → lib}/components/sections/navigation/skeletons/BarLogo.d.ts +0 -0
  625. /package/{types → lib}/components/sections/navigation/skeletons/BarLogo.d.ts.map +0 -0
  626. /package/{types → lib}/components/sections/navigation/skeletons/BarMenuToggle.d.ts +0 -0
  627. /package/{types → lib}/components/sections/navigation/skeletons/BarMenuToggle.d.ts.map +0 -0
  628. /package/{types → lib}/components/sections/navigation/skeletons/BarNavList.d.ts +0 -0
  629. /package/{types → lib}/components/sections/navigation/skeletons/BarNavList.d.ts.map +0 -0
  630. /package/{types → lib}/components/sections/navigation/skeletons/index.d.ts +0 -0
  631. /package/{types → lib}/components/sections/navigation/skeletons/index.d.ts.map +0 -0
  632. /package/{types → lib}/components/sections/news/NewsAuthorCard.d.ts +0 -0
  633. /package/{types → lib}/components/sections/news/NewsAuthorCard.d.ts.map +0 -0
  634. /package/{types → lib}/components/sections/news/NewsFooter.d.ts +0 -0
  635. /package/{types → lib}/components/sections/news/NewsFooter.d.ts.map +0 -0
  636. /package/{types → lib}/components/sections/news/NewsImages.d.ts +0 -0
  637. /package/{types → lib}/components/sections/news/NewsImages.d.ts.map +0 -0
  638. /package/{types → lib}/components/sections/news/NewsIntro.d.ts +0 -0
  639. /package/{types → lib}/components/sections/news/NewsIntro.d.ts.map +0 -0
  640. /package/{types → lib}/components/sections/news/NewsList.d.ts +0 -0
  641. /package/{types → lib}/components/sections/news/NewsList.d.ts.map +0 -0
  642. /package/{types → lib}/components/sections/news/NewsOverview.d.ts +0 -0
  643. /package/{types → lib}/components/sections/news/NewsOverview.d.ts.map +0 -0
  644. /package/{types → lib}/components/sections/news/NewsTable.d.ts +0 -0
  645. /package/{types → lib}/components/sections/news/NewsTable.d.ts.map +0 -0
  646. /package/{types → lib}/components/sections/news/NewsText.d.ts +0 -0
  647. /package/{types → lib}/components/sections/news/NewsText.d.ts.map +0 -0
  648. /package/{types → lib}/components/sections/news/NewsVideo.d.ts +0 -0
  649. /package/{types → lib}/components/sections/news/NewsVideo.d.ts.map +0 -0
  650. /package/{types → lib}/components/sections/pois/PointOfInterestDetail.d.ts +0 -0
  651. /package/{types → lib}/components/sections/pois/PointOfInterestDetail.d.ts.map +0 -0
  652. /package/{types → lib}/components/sections/pois/PointOfInterestMap.d.ts +0 -0
  653. /package/{types → lib}/components/sections/pois/PointOfInterestMap.d.ts.map +0 -0
  654. /package/{types → lib}/components/sections/pois/PointOfInterestOverview.d.ts +0 -0
  655. /package/{types → lib}/components/sections/pois/PointOfInterestOverview.d.ts.map +0 -0
  656. /package/{types → lib}/components/typography/Copy.d.ts +0 -0
  657. /package/{types → lib}/components/typography/Copy.d.ts.map +0 -0
  658. /package/{types → lib}/components/typography/Heading.d.ts +0 -0
  659. /package/{types → lib}/components/typography/Heading.d.ts.map +0 -0
  660. /package/{types → lib}/components/typography/Link.d.ts +0 -0
  661. /package/{types → lib}/components/typography/Link.d.ts.map +0 -0
  662. /package/{types → lib}/utils/LibThemeProvider.d.ts +0 -0
  663. /package/{types → lib}/utils/LibThemeProvider.d.ts.map +0 -0
  664. /package/{types → lib}/utils/arrays.d.ts +0 -0
  665. /package/{types → lib}/utils/arrays.d.ts.map +0 -0
  666. /package/{types → lib}/utils/backgroundImage.d.ts +0 -0
  667. /package/{types → lib}/utils/backgroundImage.d.ts.map +0 -0
  668. /package/{types → lib}/utils/clamp.d.ts +0 -0
  669. /package/{types → lib}/utils/clamp.d.ts.map +0 -0
  670. /package/{types → lib}/utils/concat.d.ts +0 -0
  671. /package/{types → lib}/utils/concat.d.ts.map +0 -0
  672. /package/{types → lib}/utils/cookie-consent/cookie.d.ts +0 -0
  673. /package/{types → lib}/utils/cookie-consent/cookie.d.ts.map +0 -0
  674. /package/{types → lib}/utils/cookie-consent/mutations.d.ts +0 -0
  675. /package/{types → lib}/utils/cookie-consent/mutations.d.ts.map +0 -0
  676. /package/{types → lib}/utils/cookie-consent/useCookieConsent.d.ts +0 -0
  677. /package/{types → lib}/utils/cookie-consent/useCookieConsent.d.ts.map +0 -0
  678. /package/{types → lib}/utils/dataURI.d.ts +0 -0
  679. /package/{types → lib}/utils/dataURI.d.ts.map +0 -0
  680. /package/{types → lib}/utils/escape.d.ts +0 -0
  681. /package/{types → lib}/utils/escape.d.ts.map +0 -0
  682. /package/{types → lib}/utils/filters.d.ts +0 -0
  683. /package/{types → lib}/utils/filters.d.ts.map +0 -0
  684. /package/{types → lib}/utils/fontLoading.d.ts +0 -0
  685. /package/{types → lib}/utils/fontLoading.d.ts.map +0 -0
  686. /package/{types → lib}/utils/formFieldText.d.ts +0 -0
  687. /package/{types → lib}/utils/formFieldText.d.ts.map +0 -0
  688. /package/{types → lib}/utils/getLinkIcon.d.ts +0 -0
  689. /package/{types → lib}/utils/getLinkIcon.d.ts.map +0 -0
  690. /package/{types → lib}/utils/hexRgbConverter.d.ts +0 -0
  691. /package/{types → lib}/utils/hexRgbConverter.d.ts.map +0 -0
  692. /package/{types → lib}/utils/menuHooks.d.ts +0 -0
  693. /package/{types → lib}/utils/menuHooks.d.ts.map +0 -0
  694. /package/{types → lib}/utils/navigation.d.ts +0 -0
  695. /package/{types → lib}/utils/navigation.d.ts.map +0 -0
  696. /package/{types → lib}/utils/statusFormatter.d.ts +0 -0
  697. /package/{types → lib}/utils/statusFormatter.d.ts.map +0 -0
  698. /package/{types → lib}/utils/storyHelpers.d.ts +0 -0
  699. /package/{types → lib}/utils/storyHelpers.d.ts.map +0 -0
  700. /package/{types → lib}/utils/structuredData.d.ts +0 -0
  701. /package/{types → lib}/utils/structuredData.d.ts.map +0 -0
  702. /package/{types → lib}/utils/types.d.ts +0 -0
  703. /package/{types → lib}/utils/types.d.ts.map +0 -0
  704. /package/{types → lib}/utils/urlParams.d.ts +0 -0
  705. /package/{types → lib}/utils/urlParams.d.ts.map +0 -0
  706. /package/{types → lib}/utils/useArray.d.ts +0 -0
  707. /package/{types → lib}/utils/useArray.d.ts.map +0 -0
  708. /package/{types → lib}/utils/useDebounce.d.ts +0 -0
  709. /package/{types → lib}/utils/useDebounce.d.ts.map +0 -0
  710. /package/{types → lib}/utils/useFontsLoaded.d.ts +0 -0
  711. /package/{types → lib}/utils/useFontsLoaded.d.ts.map +0 -0
  712. /package/{types → lib}/utils/useGeolocation.d.ts +0 -0
  713. /package/{types → lib}/utils/useGeolocation.d.ts.map +0 -0
  714. /package/{types → lib}/utils/useIE.d.ts +0 -0
  715. /package/{types → lib}/utils/useIE.d.ts.map +0 -0
  716. /package/{types → lib}/utils/useImgPreload.d.ts +0 -0
  717. /package/{types → lib}/utils/useImgPreload.d.ts.map +0 -0
  718. /package/{types → lib}/utils/useInterval.d.ts +0 -0
  719. /package/{types → lib}/utils/useInterval.d.ts.map +0 -0
  720. /package/{types → lib}/utils/useItemHeight.d.ts +0 -0
  721. /package/{types → lib}/utils/useItemHeight.d.ts.map +0 -0
  722. /package/{types → lib}/utils/useLazyInput.d.ts +0 -0
  723. /package/{types → lib}/utils/useLazyInput.d.ts.map +0 -0
  724. /package/{types → lib}/utils/useLeafletMap.d.ts +0 -0
  725. /package/{types → lib}/utils/useLeafletMap.d.ts.map +0 -0
  726. /package/{types → lib}/utils/useMounted.d.ts +0 -0
  727. /package/{types → lib}/utils/useMounted.d.ts.map +0 -0
  728. /package/{types → lib}/utils/useObserverSupport.d.ts +0 -0
  729. /package/{types → lib}/utils/useObserverSupport.d.ts.map +0 -0
  730. /package/{types → lib}/utils/usePageScroll.d.ts +0 -0
  731. /package/{types → lib}/utils/usePageScroll.d.ts.map +0 -0
  732. /package/{types → lib}/utils/useParams.d.ts +0 -0
  733. /package/{types → lib}/utils/useParams.d.ts.map +0 -0
  734. /package/{types → lib}/utils/usePoster.d.ts +0 -0
  735. /package/{types → lib}/utils/usePoster.d.ts.map +0 -0
  736. /package/{types → lib}/utils/usePrevious.d.ts +0 -0
  737. /package/{types → lib}/utils/usePrevious.d.ts.map +0 -0
  738. /package/{types → lib}/utils/useResizeThrottle.d.ts +0 -0
  739. /package/{types → lib}/utils/useResizeThrottle.d.ts.map +0 -0
  740. /package/{types → lib}/utils/useScroll.d.ts +0 -0
  741. /package/{types → lib}/utils/useScroll.d.ts.map +0 -0
  742. /package/{types → lib}/utils/useScrollIntoView.d.ts +0 -0
  743. /package/{types → lib}/utils/useScrollIntoView.d.ts.map +0 -0
  744. /package/{types → lib}/utils/useScrollThrottle.d.ts +0 -0
  745. /package/{types → lib}/utils/useScrollThrottle.d.ts.map +0 -0
  746. /package/{types → lib}/utils/useScrollTo.d.ts +0 -0
  747. /package/{types → lib}/utils/useScrollTo.d.ts.map +0 -0
  748. /package/{types → lib}/utils/useTimeout.d.ts +0 -0
  749. /package/{types → lib}/utils/useTimeout.d.ts.map +0 -0
  750. /package/{types → lib}/utils/useTouch.d.ts +0 -0
  751. /package/{types → lib}/utils/useTouch.d.ts.map +0 -0
  752. /package/{types → lib}/utils/useUpdateEffect.d.ts +0 -0
  753. /package/{types → lib}/utils/useUpdateEffect.d.ts.map +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"Navigation-3f5d6088.js","sources":["../src/utils/usePageScroll.ts","../src/components/sections/navigation/skeletons/BarBreadCrumbs.tsx","../src/components/sections/navigation/skeletons/BarColumn.tsx","../src/components/sections/navigation/skeletons/BarLogo.tsx","../src/components/sections/navigation/skeletons/BarMenuToggle.tsx","../src/components/sections/navigation/skeletons/BarNavList.tsx","../src/components/sections/navigation/partials/MenuHeader.tsx","../src/components/sections/navigation/menu/variations/MenuFlyout.tsx","../src/components/sections/navigation/menu/Menu.tsx","../src/components/sections/navigation/NavBar.tsx","../src/components/sections/navigation/Navigation.tsx","../src/utils/menuHooks.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport useScrollThrottle from './useScrollThrottle';\n\nexport enum PageScrollDirection {\n UP,\n DOWN,\n}\n\ninterface ScrollSettings {\n /** Direction state change delay in pixels */\n directionOffset?: {\n up?: number;\n down?: number;\n };\n /** Set top offset area */\n offset?: number;\n /** On leave top offset callback */\n onLeftOffset?: (dir: PageScrollDirection) => void;\n /** Throttle timeout of resize event. Default: 200ms */\n resizeThrottleTimeout?: number;\n}\n\nconst usePageScroll = (settings?: ScrollSettings) => {\n const [isTop, setIsTop] = useState<boolean>(true);\n const [isInOffset, setIsInOffset] = useState<boolean>(true);\n const [leftOffsetFromTop, setLeftOffsetFromTop] = useState<boolean>(false);\n\n const lastScrollPos = useRef<number>(0);\n const pxSinceLastSwitch = useRef<number>(0);\n\n const [scrollDirection, setScrollDirection] = useState<PageScrollDirection>(\n PageScrollDirection.DOWN\n );\n\n const directionDownOffset = settings?.directionOffset?.down || 0;\n const directionUpOffset = settings?.directionOffset?.up || 0;\n\n // Throttle scroll event for perfomance\n const scrollState = useScrollThrottle(\n settings?.resizeThrottleTimeout !== undefined\n ? settings.resizeThrottleTimeout\n : 200\n );\n\n useEffect(() => {\n if (!scrollState) return;\n if (typeof window === 'undefined') return;\n\n const scrollY = scrollState.scrollY;\n const isTop = scrollY <= 0;\n\n // check if page is scroll on top\n setIsTop(isTop);\n\n // check offset\n if (settings?.offset && scrollY <= settings.offset) {\n setIsInOffset(true);\n } else {\n setIsInOffset((prev) => {\n if (prev) {\n settings?.onLeftOffset?.(scrollDirection);\n setLeftOffsetFromTop(true);\n }\n return false;\n });\n }\n\n /**\n * calculate direction changes\n */\n\n // get difference between current and last scrollY position\n const diff = scrollY - lastScrollPos.current;\n // get accumulated pixels since last direction change\n let absAccPx = Math.abs(pxSinceLastSwitch.current);\n\n // check if direction changed. if not iterate accumulated pixels value\n if (diff < 0 && pxSinceLastSwitch.current > 0) {\n pxSinceLastSwitch.current = 0;\n } else if (diff > 0 && pxSinceLastSwitch.current < 0) {\n pxSinceLastSwitch.current = 0;\n } else {\n pxSinceLastSwitch.current += diff;\n }\n\n // set current accumulated value\n absAccPx = Math.abs(pxSinceLastSwitch.current);\n\n // set direction states\n if (isTop) {\n setScrollDirection(PageScrollDirection.DOWN);\n } else if (diff < 0 && absAccPx >= directionUpOffset) {\n setScrollDirection(PageScrollDirection.UP);\n } else if (diff > 0 && absAccPx >= directionDownOffset) {\n setScrollDirection(PageScrollDirection.DOWN);\n }\n\n // save last scroll position\n lastScrollPos.current = scrollY;\n }, [\n directionDownOffset,\n directionUpOffset,\n scrollDirection,\n scrollState,\n settings,\n ]);\n\n useEffect(() => {\n // reset left offset flag on top\n if (isTop) setLeftOffsetFromTop(false);\n }, [isTop]);\n\n return {\n isTop,\n scrollDirection,\n isInOffset,\n leftOffsetFromTop,\n };\n};\n\nexport default usePageScroll;\n","import React, { FC, useMemo } from 'react';\nimport styled from 'styled-components';\n\nimport { NavItem } from '../menu/Menu';\nimport Link, { LinkProps } from 'components/typography/Link';\nimport { spacings, getColors as color, mq } from 'utils/styles';\nimport Copy, { copyStyle } from 'components/typography/Copy';\nimport AngleLeft from 'components/base/icons/AngleLeft';\nimport { getCurrentNavPath } from 'utils/navigation';\n\nconst View = styled.nav`\n min-width: 0;\n`;\n\nconst List = styled.ul`\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n min-width: inherit;\n\n & > li:first-child {\n flex: 1 0 auto;\n }\n\n @media ${mq.semilarge} {\n & > li + li {\n margin-left: ${spacings.nudge}px;\n }\n }\n`;\n\nconst ListItem = styled.li<{ isCurrent?: boolean }>`\n display: ${({ isCurrent }) => (isCurrent ? 'flex' : 'none')};\n min-width: inherit;\n\n @media ${mq.semilarge} {\n display: flex;\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n }\n`;\n\nconst NavLink = styled(Link)<{\n isInverted?: boolean;\n clamp?: boolean;\n showOnMobile?: boolean;\n showOnDesktop?: boolean;\n}>`\n display: ${({ showOnMobile }) => (showOnMobile ? 'inline-flex' : 'none')};\n align-items: center;\n max-width: ${({ clamp }) => clamp && '120px'};\n\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n ${copyStyle('copy', 'small')}\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.default};\n text-decoration: underline;\n\n & > * {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n color: ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).text.inverted\n : color(theme).text.default};\n }\n }\n\n @media ${mq.semilarge} {\n display: ${({ showOnDesktop }) =>\n showOnDesktop ? 'inline-block' : 'none'};\n }\n`;\n\nconst NavLabel = styled.span<{\n isInverted?: boolean;\n clamp?: boolean;\n showOnMobile?: boolean;\n showOnDesktop?: boolean;\n}>`\n display: ${({ showOnMobile }) => (showOnMobile ? 'inline-flex' : 'none')};\n align-items: center;\n max-width: ${({ clamp }) => clamp && '120px'};\n\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n ${copyStyle('copy', 'small')}\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.default};\n text-decoration: none;\n\n & > * {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n\n @media ${mq.semilarge} {\n display: ${({ showOnDesktop }) =>\n showOnDesktop ? 'inline-block' : 'none'};\n }\n`;\n\nconst Seperator = styled(Copy)`\n display: none;\n\n transition: color 0.2s ease-in-out;\n\n @media ${mq.semilarge} {\n display: inline-block;\n }\n`;\n\nconst BackIconContainer = styled.span`\n flex: 0 0 auto;\n`;\n\nconst BreadcrumbItem: FC<\n NavItem & {\n isInverted?: boolean;\n showOnMobile?: boolean;\n showOnDesktop?: boolean;\n children?: React.ReactNode;\n }\n> = ({ isInverted, label, link, showOnMobile, showOnDesktop, children }) => {\n if (link?.href) {\n return (\n <NavLink\n {...link}\n isInverted={isInverted}\n showOnMobile={showOnMobile}\n showOnDesktop={showOnDesktop}\n >\n {children || label}\n </NavLink>\n );\n } else {\n return (\n <NavLabel\n isInverted={isInverted}\n showOnMobile={showOnMobile}\n showOnDesktop={showOnDesktop}\n >\n {children || label}\n </NavLabel>\n );\n }\n};\n\nconst BarBreadcrumbs: FC<{\n isInverted?: boolean;\n rootLink?: LinkProps;\n rootLabel?: string;\n navItems?: Array<NavItem>;\n seperator?: (props: { isInverted?: boolean }) => React.ReactNode;\n back?: (props: { isInverted?: boolean }) => React.ReactNode;\n className?: string;\n}> = ({\n isInverted = false,\n rootLink,\n rootLabel,\n navItems,\n seperator,\n back,\n className,\n}) => {\n const currentNavPath = useMemo(() => {\n return getCurrentNavPath(\n navItems,\n rootLink?.href ? [rootLink?.href] : []\n );\n }, [navItems, rootLink?.href]);\n\n const rootItem: NavItem = {\n uid: 'root',\n label: rootLabel || 'Home',\n link: rootLink,\n };\n\n return (\n <View aria-label=\"breadcrumbs\" className={className}>\n <List>\n <ListItem>\n <BreadcrumbItem\n showOnDesktop\n isInverted={isInverted}\n {...rootItem}\n />\n </ListItem>\n\n {currentNavPath?.map((item, i) => {\n const isCurrent = i === currentNavPath.length - 1;\n const prev = i - 1 >= 0 ? currentNavPath[i - 1] : rootItem;\n\n return (\n <ListItem key={i} isCurrent={isCurrent}>\n <Seperator size=\"small\" isInverted={isInverted}>\n {seperator ? seperator({ isInverted }) : '/'}\n </Seperator>\n {isCurrent ? (\n <>\n {prev && (\n <BreadcrumbItem\n {...prev}\n showOnMobile\n isInverted={isInverted}\n >\n <BackIconContainer>\n {back ? (\n back({ isInverted })\n ) : (\n <AngleLeft />\n )}\n </BackIconContainer>\n <span>{prev.label}</span>\n </BreadcrumbItem>\n )}\n <BreadcrumbItem\n {...item}\n link={{}}\n showOnDesktop\n isInverted={isInverted}\n />\n </>\n ) : (\n <BreadcrumbItem\n {...item}\n showOnDesktop\n isInverted={isInverted}\n />\n )}\n </ListItem>\n );\n })}\n </List>\n </View>\n );\n};\n\nexport default BarBreadcrumbs;\n","import styled from 'styled-components';\nimport { spacings, getColors as color } from 'utils/styles';\n\nconst Column = styled.div<{\n isInverted?: boolean;\n takeSpace?: boolean;\n vAlign?: 'top' | 'center' | 'bottom';\n}>`\n flex: ${({ takeSpace }) => (takeSpace ? 1 : undefined)};\n\n padding: ${spacings.nudge}px 0;\n min-width: -webkit-min-content;\n align-self: ${({ vAlign }) => {\n switch (vAlign) {\n case 'center':\n return 'center';\n\n case 'bottom':\n return 'flex-end';\n\n case 'top':\n return 'flex-start';\n\n default:\n return undefined;\n }\n }};\n\n text-align: center;\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.inverted};\n\n &:first-child {\n text-align: left;\n }\n\n &:last-child {\n text-align: right;\n }\n\n &:not(:first-child):not(:last-child) {\n margin: 0 ${spacings.nudge * 2}px;\n }\n`;\n\nexport default Column;\n","import React, { FC } from 'react';\nimport styled from 'styled-components';\n\nimport Link, { LinkProps } from 'components/typography/Link';\nimport Image, { ImageProps } from 'components/blocks/Image';\nimport { getColors } from 'utils/styles';\n\nconst View = styled(Link)`\n display: block;\n display: flex;\n justify-content: center;\n min-width: 60px;\n max-width: 100%;\n max-height: 100%;\n\n &:focus {\n outline: 2px solid ${({ theme }) => getColors(theme).primary.default};\n outline-offset: 1px;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n`;\n\nconst Logo = styled(Image)`\n width: auto;\n height: 100%;\n object-fit: contain;\n`;\n\nexport interface Logo {\n src?: string;\n alt?: string;\n}\n\nconst BarLogo: FC<{\n link?: Omit<LinkProps, 'coverSpace' | 'ratios'>;\n logo?: ImageProps;\n className?: string;\n}> = ({ link, logo, className }) => {\n return (\n <View {...link} className={className}>\n {logo?.small && (\n <Logo\n {...logo}\n coverSpace={false}\n ratios={undefined}\n showPlaceholder={false}\n />\n )}\n </View>\n );\n};\n\nexport default BarLogo;\n","import React, { FC } from 'react';\nimport styled from 'styled-components';\n\nimport { getColors as color, spacings } from 'utils/styles';\n\nconst Toggle = styled.button<{ isInverted?: boolean }>`\n background: transparent;\n border: none;\n color: ${({ isInverted, theme }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.default};\n\n padding: ${spacings.nudge}px;\n margin-left: -${spacings.nudge}px;\n outline: none;\n\n cursor: pointer;\n\n transition: color 0.2s ease-in-out;\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n color: ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.invertedHover\n : color(theme).primary.hover};\n }\n }\n\n &:focus > * {\n outline: dotted 2px\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default};\n outline-offset: 4px;\n\n color: ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.invertedHover\n : color(theme).primary.hover};\n }\n\n &:focus:not(:focus-visible) > * {\n outline: none;\n }\n`;\n\nconst BarMenuToggle: FC<{\n isInverted?: boolean;\n isExpanded?: boolean;\n onClick?: (ev?: React.SyntheticEvent<HTMLButtonElement>) => void;\n className?: string;\n children?: React.ReactNode;\n}> = ({ isInverted, isExpanded = false, onClick, children, className }) => {\n return (\n <Toggle\n isInverted={isInverted}\n aria-expanded={isExpanded}\n aria-label={isExpanded ? 'close menu' : 'open menu'}\n aria-haspopup=\"true\"\n aria-controls=\"mainMenu\"\n onClick={onClick}\n className={className}\n >\n {children}\n </Toggle>\n );\n};\n\nexport default BarMenuToggle;\n","import React, { FC } from 'react';\nimport styled from 'styled-components';\n\nimport Link from 'components/typography/Link';\nimport { spacings, getColors as color } from 'utils/styles';\nimport { copyStyle } from 'components/typography/Copy';\nimport { NavItem } from '../menu/Menu';\n\nconst View = styled.nav<{ isInverted?: boolean }>`\n display: inline-flex;\n align-items: center;\n\n margin: 0 -${spacings.nudge}px;\n\n & > * + * {\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 3px;\n left: 0;\n height: 1em;\n width: 2px;\n background-color: ${({ isInverted, theme }) =>\n isInverted\n ? color(theme).text.inverted\n : color(theme).text.default};\n\n transition: background-color 0.2s ease-in-out;\n }\n }\n`;\n\nconst NavLink = styled(Link)<{ isInverted?: boolean; isActive?: boolean }>`\n display: inline-block;\n position: relative;\n padding: 0 ${spacings.nudge}px;\n\n ${copyStyle('copy', 'medium')}\n font-weight: ${({ isActive }) => isActive && '700'};\n\n color: ${({ isInverted, theme }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.default};\n text-decoration: none;\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n color: ${({ isInverted, theme }) =>\n isInverted\n ? color(theme).text.inverted\n : color(theme).text.default};\n text-decoration: underline;\n }\n }\n`;\n\nconst BarNavList: FC<{\n isInverted?: boolean;\n navLinks?: NavItem[];\n className?: string;\n}> = ({ isInverted, navLinks, className }) => {\n return (\n <View isInverted={isInverted} className={className}>\n {navLinks?.map((item, i) => (\n <NavLink\n key={i}\n {...item.link}\n isInverted={isInverted}\n isActive={item.isCurrent}\n >\n {item.label}\n </NavLink>\n ))}\n </View>\n );\n};\n\nexport default BarNavList;\n","import Cross from 'components/base/icons/Cross';\nimport React, { FC } from 'react';\n\nimport styled from 'styled-components';\nimport { spacings } from 'utils/styles';\nimport { NavMenuStates } from '../Navigation';\nimport * as Skeletons from 'components/sections/navigation/skeletons/index';\nimport LanguageSwitcher, { Language } from 'components/blocks/LanguageSwitcher';\nimport { isValidArray } from 'utils/arrays';\n\nconst Header = styled.div`\n display: flex;\n align-items: center;\n\n padding: 0 ${spacings.nudge * 2}px;\n padding-top: ${spacings.nudge * 5}px;\n`;\n\nconst LanguageCol = styled.div`\n display: block;\n margin-left: ${spacings.nudge * 3}px;\n margin-top: 2px;\n`;\n\nconst MenuHeader: FC<{\n isInverted?: boolean;\n menuStates?: NavMenuStates;\n customToggle?: (props: { isInverted?: boolean }) => React.ReactNode;\n langs?: Language[];\n action?: (\n props: { isInverted?: boolean } & NavMenuStates\n ) => React.ReactNode;\n}> = ({ isInverted, customToggle, menuStates, langs, action }) => {\n return (\n <React.Fragment>\n <Header>\n <Skeletons.MenuToggle\n isInverted={isInverted}\n isExpanded={true}\n onClick={menuStates?.closeMenu}\n >\n {customToggle ? (\n customToggle({ isInverted })\n ) : (\n <Cross ariaHidden={true} />\n )}\n </Skeletons.MenuToggle>\n {isValidArray(langs, false) && (\n <LanguageCol>\n <LanguageSwitcher\n isInverted={isInverted}\n langs={langs}\n />\n </LanguageCol>\n )}\n {action && action({ isInverted, ...menuStates })}\n </Header>\n </React.Fragment>\n );\n};\n\nexport default MenuHeader;\n","import AngleRight from 'components/base/icons/AngleRight';\nimport Link, { LinkProps } from 'components/typography/Link';\nimport React, {\n FC,\n useState,\n useMemo,\n useRef,\n useEffect,\n forwardRef,\n} from 'react';\nimport styled, { DefaultTheme } from 'styled-components';\nimport { isValidArray } from 'utils/arrays';\nimport { clampValue } from 'utils/clamp';\nimport { useLibTheme } from 'utils/LibThemeProvider';\nimport { getCurrentNavItem } from 'utils/navigation';\nimport {\n mq,\n spacings,\n getColors as color,\n getFonts as font,\n getGlobals as global,\n withRange,\n Fonts,\n} from 'utils/styles';\nimport { NavBarSize } from '../../NavBar';\nimport MenuHeader from '../../partials/MenuHeader';\nimport { MenuBaseProps, NavItem } from '../Menu';\nimport { css } from 'styled-components';\n\ntype NavigationFontType = keyof Fonts['navigation'];\n\nconst navigationStyle = (type: NavigationFontType) => css`\n font-family: ${({ theme }) => font(theme).navigation[type].family};\n font-weight: ${({ theme }) => font(theme).navigation[type].weight};\n font-style: ${({ theme }) => font(theme).navigation[type].style};\n ${({ theme }) => withRange(font(theme).navigation[type].size, 'font-size')}\n line-height: ${({ theme }) => font(theme).navigation[type].lineHeight};\n letter-spacing: ${({ theme }) =>\n font(theme).navigation[type].letterSpacing};\n text-transform: ${({ theme }) =>\n font(theme).navigation[type].textTransform};\n text-decoration: ${({ theme }) =>\n font(theme).navigation[type].textDecoration};\n`;\n\nconst Backdrop = styled.div<{ isOpen?: boolean; filter?: string }>`\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: ${({ isOpen }) => (isOpen ? 1 : 0)};\n pointer-events: ${({ isOpen }) => (isOpen ? 'all' : 'none')};\n z-index: 101;\n\n transition: opacity 0.3s ease-in-out;\n\n @supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {\n backdrop-filter: ${({ filter }) => filter};\n }\n`;\n\nconst Stage = styled.div<{ isOpen?: boolean; clampWidth?: 'content' | 'full' }>`\n position: fixed;\n top: 0;\n left: ${({ isOpen }) => (isOpen ? '50%' : '0px')};\n height: 100vh;\n width: 100vw;\n max-width: ${({ clampWidth }) =>\n clampWidth === 'content' ? spacings.wrapper : spacings.wrapperLarge}px;\n pointer-events: none;\n\n z-index: 102;\n\n transform: translate(${({ isOpen }) => (isOpen ? '-50%' : '-100%')}, 0px);\n\n transition: transform 0.4s ease-in-out, left 0.4s ease-in-out;\n will-change: transform;\n`;\n\nconst Flyout = styled.div<{ isOpen?: boolean }>`\n display: flex;\n flex-direction: column;\n visibility: visible;\n\n position: relative;\n width: 100%;\n height: 100%;\n background-color: ${({ theme }) => color(theme).elementBg.light};\n\n pointer-events: ${({ isOpen }) => (isOpen ? 'all' : 'none')};\n\n /** Animation to disable keyboard tabbing if flyout is closed */\n animation: ${({ isOpen }) => !isOpen && 'hideAnim 0s ease-in 2s forwards'};\n\n @media ${mq.medium} {\n width: 384px;\n }\n\n @media ${mq.large} {\n width: 460px;\n }\n\n &:before {\n content: '';\n position: absolute;\n top: 0;\n left: 2px;\n height: 100%;\n width: 40vw;\n background-color: ${({ theme }) => color(theme).elementBg.light};\n z-index: -1;\n\n transform: translateX(-100%);\n }\n\n @keyframes hideAnim {\n to {\n visibility: hidden;\n }\n }\n`;\n\nexport const getMenuHeaderHeights = (\n theme: DefaultTheme,\n size?: NavBarSize\n): [number, number] => {\n const heights =\n size === 'large'\n ? global(theme).navigation.menu.headerHeight.large\n : global(theme).navigation.menu.headerHeight.small;\n\n // if second value is not defined use first array index value for both\n return [\n clampValue(heights[0], 0),\n clampValue(heights?.[1] === undefined ? heights[0] : heights[1], 0),\n ];\n};\n\nexport const hasMenuHeader = (theme: DefaultTheme) => {\n const largeHeights = getMenuHeaderHeights(theme, 'large');\n const smallHeights = getMenuHeaderHeights(theme, 'small');\n\n return (\n largeHeights[0] > 0 ||\n largeHeights[1] > 0 ||\n smallHeights[0] > 0 ||\n smallHeights[1] > 0\n );\n};\n\nconst Header = styled.div<{ navBarSize?: NavBarSize }>`\n flex: 0 0\n ${({ theme, navBarSize }) =>\n getMenuHeaderHeights(theme, navBarSize)[0]}px;\n height: ${({ theme, navBarSize }) =>\n getMenuHeaderHeights(theme, navBarSize)[0]}px;\n\n @media ${mq.semilarge} {\n height: ${({ theme, navBarSize }) =>\n getMenuHeaderHeights(theme, navBarSize)[1]}px;\n flex: 0 0\n ${({ theme, navBarSize }) =>\n getMenuHeaderHeights(theme, navBarSize)[1]}px;\n }\n`;\n\nconst ScrollContainer = styled.div`\n display: block;\n max-height: 100%;\n min-height: 0;\n`;\n\nconst ScrollArea = styled.div`\n display: block;\n width: 100vw;\n max-height: 100%;\n overflow: auto;\n -ms-overflow-style: none; /* for Internet Explorer, Edge */\n scrollbar-width: none; /* for Firefox */\n overflow-y: scroll;\n\n &::-webkit-scrollbar {\n display: none; /* for Chrome, Safari, and Opera */\n }\n\n & > *:last-child {\n margin-bottom: ${spacings.nudge * 10}px;\n }\n\n @media ${mq.medium} {\n max-width: 100%;\n }\n`;\n\n//#region NAVIGATION\n//#region NAVIGATION.Containers\nconst NavView = styled.nav``;\n\nconst Navigation: FC<{ children?: React.ReactNode }> = ({ children }) => {\n return <NavView aria-label=\"menu\">{children}</NavView>;\n};\n\nconst NavList = styled.ul<{ hasNonFeaturedItems?: boolean }>`\n margin: 0;\n padding: 0;\n list-style: none;\n margin: ${spacings.nudge * 2}px 0;\n\n border-bottom: ${({ hasNonFeaturedItems, theme }) =>\n hasNonFeaturedItems && `solid 2px ${color(theme).elementBg.medium}`};\n`;\n\n// #endregion\n// #region NAVIGATION.NavItem\nconst NavItemView = styled.li<{ isActive?: boolean }>`\n flex: 0 0 80px;\n\n height: 100%;\n background-color: ${({ theme, isActive }) =>\n isActive\n ? color(theme).elementBg.medium\n : color(theme).elementBg.light};\n\n transition: background-color 0.2s ease-in-out;\n\n li + &:not([data-featured='true']) {\n border-top: solid 2px ${({ theme }) => color(theme).elementBg.medium};\n }\n\n li[data-featured='true'] + &:not([data-featured='true']) {\n margin-top: ${spacings.spacer}px;\n }\n\n &:not([data-featured='true']):first-child {\n border-top: solid 2px ${({ theme }) => color(theme).elementBg.medium};\n }\n\n @media ${mq.semilarge} {\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n }\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n background-color: ${({ theme }) => color(theme).elementBg.medium};\n }\n }\n`;\n\nconst NavItemContent = styled.span<{\n isCurrent?: boolean;\n isFeatured?: boolean;\n}>`\n display: flex;\n align-items: center;\n position: relative;\n min-height: 80px;\n\n padding: 0 ${spacings.nudge * 2}px;\n\n ${({ isFeatured }) => navigationStyle(isFeatured ? 'featured' : 'main')}\n color: ${({ theme, isFeatured }) =>\n isFeatured\n ? font(theme).navigation.featured.color\n : font(theme).navigation.main.color};\n text-decoration: ${({ isCurrent }) => (isCurrent ? 'underline' : 'none')};\n`;\n\nconst NavItemIcon = styled.span`\n display: flex;\n align-items: center;\n width: 48px;\n max-width: 48px;\n\n * {\n width: 100%;\n max-width: 48px;\n max-height: 80px;\n }\n`;\n\nconst NavItemLabel = styled.span`\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:not(:first-child) {\n margin-left: ${spacings.nudge * 2}px;\n }\n`;\n\nconst NavItemCollapse = styled.span`\n display: block;\n margin-left: auto;\n padding-left: ${spacings.nudge * 3}px;\n`;\n\nconst NavItemCollapseIcon = styled(AngleRight)<{ isCollapsed?: boolean }>`\n transform: ${({ isCollapsed }) => !isCollapsed && 'rotate(90deg)'};\n\n transition: transform 0.2s ease-in-out;\n\n @media ${mq.semilarge} {\n transform: rotate(0deg);\n }\n`;\n\nconst NavItemLink = styled(Link)`\n display: block;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n &:focus {\n outline: solid 2px\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default};\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n`;\n\nconst NavItemButton = styled.button`\n display: block;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n background: none;\n border: none;\n border-bottom: solid 2px ${({ theme }) => color(theme).elementBg.light};\n width: 100%;\n cursor: pointer;\n outline: none;\n border-radius: 0px;\n\n &:focus {\n outline: solid 2px ${({ theme }) => color(theme).primary.default};\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n @media ${mq.semilarge} {\n border-bottom: none;\n }\n`;\n\nconst SubNavList = styled.ul<{ isActive?: boolean; isIndented?: boolean }>`\n display: ${({ isActive }) => !isActive && 'none'};\n position: relative;\n margin: 0;\n padding: 0;\n padding-left: ${({ isIndented }) =>\n isIndented ? 48 + spacings.nudge * 4 : spacings.nudge * 2}px;\n padding-right: ${spacings.nudge * 2}px;\n list-style: none;\n\n max-height: 100%;\n overflow: auto;\n -ms-overflow-style: none; /* for Internet Explorer, Edge */\n scrollbar-width: none; /* for Firefox */\n overflow-y: scroll;\n\n &::-webkit-scrollbar {\n display: none; /* for Chrome, Safari, and Opera */\n }\n\n background-color: ${({ theme }) => color(theme).elementBg.medium};\n\n @media ${mq.semilarge} {\n position: absolute;\n top: 0;\n left: calc(100% - 1px);\n width: 100vw;\n height: 100%;\n max-width: 384px;\n padding-left: ${spacings.nudge * 3}px;\n }\n`;\n\nconst NavigationItem = forwardRef<\n HTMLLIElement,\n {\n isCurrent?: boolean;\n isActive?: boolean;\n isFeatured?: boolean;\n label?: string;\n link?: LinkProps;\n icon?: React.ReactNode;\n\n subNavTitle?: string;\n\n navBarSize?: NavBarSize;\n onItemClick?: () => void;\n collapseIcon?: (props: { isCollapsed?: boolean }) => React.ReactNode;\n canFocus?: boolean;\n children?: React.ReactNode;\n }\n>(\n (\n {\n isCurrent,\n isActive,\n isFeatured,\n label,\n link,\n icon,\n subNavTitle,\n navBarSize,\n onItemClick,\n collapseIcon,\n canFocus,\n children,\n },\n ref\n ) => {\n const hasSubItems = !!children && React.Children.count(children) > 0;\n\n return (\n <NavItemView\n ref={ref}\n isActive={isActive}\n data-featured={isFeatured}\n >\n <NavItemContent isCurrent={isCurrent} isFeatured={isFeatured}>\n {icon && <NavItemIcon>{icon}</NavItemIcon>}\n {label && <NavItemLabel>{label}</NavItemLabel>}\n {hasSubItems && (\n <NavItemCollapse>\n {collapseIcon ? (\n collapseIcon({\n isCollapsed: !isActive,\n })\n ) : (\n <NavItemCollapseIcon\n ariaHidden\n isCollapsed={!isActive}\n />\n )}\n </NavItemCollapse>\n )}\n {!hasSubItems && link?.href && (\n <NavItemLink\n {...link}\n ariaLabel={label}\n tabIndex={!canFocus ? -1 : undefined}\n />\n )}\n {hasSubItems && (\n <React.Fragment>\n <NavItemButton\n aria-label={label}\n aria-expanded={isActive}\n onClick={onItemClick}\n tabIndex={!canFocus ? -1 : undefined}\n />\n </React.Fragment>\n )}\n </NavItemContent>\n {hasSubItems && (\n <SubNavList isActive={isActive} isIndented={!!icon}>\n {link?.href && (\n <MenuNav.SubItem\n key=\"overview\"\n link={link}\n label={subNavTitle || 'Overview'}\n navBarSize={navBarSize}\n canFocus={canFocus}\n />\n )}\n {children}\n </SubNavList>\n )}\n </NavItemView>\n );\n }\n);\n\nNavigationItem.displayName = 'NavigationItem';\n\n//#endregion NAVIGATION.NavItem\n//#region NAVIGATION.SubNavItem\nconst SubNavItem = styled.li<{ navBarSize?: NavBarSize }>`\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n height: 56px;\n\n ${navigationStyle('main')}\n color: ${({ theme }) => font(theme).navigation.sub.color};\n\n @media ${mq.semilarge} {\n &:first-child {\n margin-top: ${({ theme, navBarSize }) =>\n getMenuHeaderHeights(theme, navBarSize)[1] +\n spacings.nudge * 2}px;\n }\n\n &:last-child {\n margin-bottom: ${spacings.spacer}px;\n }\n }\n`;\n\nconst SubNavLink = styled(Link)<{ isCurrent?: boolean }>`\n /* width: 100%; */\n padding: ${spacings.nudge}px 0;\n outline-color: ${({ theme }) => color(theme).primary.default};\n vertical-align: middle;\n\n ${navigationStyle('sub')}\n color: ${({ theme }) => font(theme).navigation.sub.color};\n text-decoration: ${({ isCurrent }) => (isCurrent ? 'underline' : 'none')};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n & > * {\n margin: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n &:focus > * {\n outline: dashed 1px\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default};\n outline-offset: 1px;\n }\n\n &:focus:not(:focus-visible) > * {\n outline: none;\n }\n`;\n\nconst NavigationSubItem = forwardRef<\n HTMLLIElement,\n {\n isCurrent?: boolean;\n label: string;\n link?: LinkProps;\n navBarSize?: NavBarSize;\n canFocus?: boolean;\n }\n>(({ isCurrent, label, link, navBarSize, canFocus }, ref) => {\n return (\n <SubNavItem ref={ref} navBarSize={navBarSize}>\n <SubNavLink\n tabIndex={!canFocus ? -1 : undefined}\n isCurrent={isCurrent}\n {...link}\n >\n <span>{label}</span>\n </SubNavLink>\n </SubNavItem>\n );\n});\n\nNavigationSubItem.displayName = 'NavigationSubItem';\n//#endregion\n//#region NAVIGATION.SecondaryNavigation\nconst SecondaryNavList = styled.ul`\n display: block;\n list-style: none;\n padding: 0 ${spacings.nudge * 2}px;\n margin: ${spacings.spacer}px 0;\n\n li {\n display: flex;\n margin: 0;\n padding: 0;\n }\n`;\n\nconst SecondaryNavLink = styled(Link)<{ isCurrent?: boolean }>`\n display: inline-block;\n padding: ${spacings.nudge * 0.5}px 0;\n outline-color: ${({ theme }) => color(theme).primary.default};\n vertical-align: middle;\n\n ${navigationStyle('secondary')}\n color: ${({ theme }) => font(theme).navigation.secondary.color};\n text-decoration: ${({ isCurrent }) => (isCurrent ? 'underline' : 'none')};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:focus {\n outline: dashed 2px\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default};\n outline-offset: 1px;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n`;\n\nconst SecondaryNavigation: FC<{\n items?: NavItem[];\n canFocus?: boolean;\n}> = ({ items, canFocus }) => {\n return items && items.length > 0 ? (\n <SecondaryNavList>\n {items\n ?.filter((n) => n.link?.href)\n .map((item, i) => (\n <li key={i}>\n <SecondaryNavLink\n isCurrent={item.isCurrent}\n href={item.link?.href}\n tabIndex={!canFocus ? -1 : undefined}\n >\n {item.label}\n </SecondaryNavLink>\n </li>\n ))}\n </SecondaryNavList>\n ) : null;\n};\n//#endregion\n\nconst MenuNav = {\n View: Navigation,\n List: NavList,\n Item: NavigationItem,\n SubItem: NavigationSubItem,\n SubList: SecondaryNavigation,\n};\n// #endregion\n\nexport interface FlyoutMenuProps {\n type: 'flyout';\n collapseIcon?: (props: { isCollapsed?: boolean }) => React.ReactNode;\n subNavTitle?: string;\n backdropFilter?: string;\n}\n\nconst menuFilter = (item: NavItem) =>\n !item.hideFromMenu && item.uid && item.label;\n\nconst MenuFlyout: FC<MenuBaseProps & FlyoutMenuProps> = ({\n isOpen,\n clampWidth,\n isIndexPage,\n mainNavigation,\n subNavigation,\n navBarSize,\n subNavTitle,\n backdropFilter = 'grayscale(1)',\n header,\n footer,\n onClose,\n collapseIcon,\n navItemsHeader,\n}) => {\n const { theme } = useLibTheme();\n const flyoutRef = useRef<HTMLDivElement>(null);\n const hasHeader = useMemo(() => hasMenuHeader(theme), [theme]);\n\n const mainList = useMemo(() => {\n const featured = mainNavigation?.filter((n) => n.isFeatured) || [];\n const main = mainNavigation?.filter((n) => !n.isFeatured) || [];\n\n return [...featured, ...main].filter(menuFilter);\n }, [mainNavigation]);\n\n const hasNonFeaturedItems = useMemo(() => {\n const main = mainNavigation?.filter((n) => !n.isFeatured) || [];\n return main && main.length > 0;\n }, [mainNavigation]);\n\n const subList = useMemo(() => {\n return subNavigation?.filter(menuFilter);\n }, [subNavigation]);\n\n const [activeItems, setActiveItems] = useState<string[]>(() => {\n const initial = getCurrentNavItem(mainList, true)?.root?.uid;\n return initial ? [initial] : [''];\n });\n const [currentNavEl, setCurrentNavEl] =\n useState<HTMLLIElement | null>(null);\n const [currentSubNavEl, setCurrentSubNavEl] =\n useState<HTMLLIElement | null>(null);\n\n const toggleActiveItem = (uid: string) => {\n setActiveItems((prev) => (prev.includes(uid) ? [] : [uid]));\n\n // if multiple nav items can be selected:\n // setActiveItems((prev) => {\n // const copy = [...prev];\n // const activeIndex = activeItems.indexOf(index);\n // if (activeIndex !== -1) {\n // copy.splice(activeIndex, 1);\n // } else {\n // copy.push(index);\n // }\n // return copy;\n // });\n };\n\n // check if flyout lost focus\n useEffect(() => {\n const handleFocus = (ev: FocusEvent) => {\n if (!flyoutRef.current || !ev.target) return;\n const isFlyoutChild = flyoutRef.current.contains(\n ev.target as Element\n );\n\n if (!isFlyoutChild) onClose && onClose();\n };\n\n if (isOpen) {\n document.addEventListener('focusin', handleFocus);\n } else {\n document.removeEventListener('focusin', handleFocus);\n }\n\n return () => {\n document.removeEventListener('focusin', handleFocus);\n };\n }, [isOpen, onClose]);\n\n // scroll to current nav items\n useEffect(() => {\n try {\n currentNavEl?.scrollIntoView({\n block: 'center',\n inline: 'start',\n });\n currentSubNavEl?.scrollIntoView({\n block: 'center',\n inline: 'start',\n });\n } catch (e) {\n // console.log(e);\n }\n }, [currentNavEl, currentSubNavEl]);\n\n return (\n <React.Fragment>\n <Backdrop\n isOpen={isOpen}\n filter={backdropFilter}\n onClick={onClose}\n />\n <Stage isOpen={isOpen} clampWidth={clampWidth}>\n <Flyout ref={flyoutRef} isOpen={isOpen}>\n {hasHeader && (\n <Header navBarSize={navBarSize}>\n {header ? (\n header({\n isOpen,\n mainNavigation: mainList,\n subNavigation: subList,\n isIndexPage,\n navBarSize,\n })\n ) : (\n <MenuHeader\n menuStates={{\n isOpen,\n mainNavigation,\n subNavigation,\n isIndexPage,\n navBarSize,\n }}\n />\n )}\n </Header>\n )}\n\n <ScrollContainer>\n <ScrollArea>\n {navItemsHeader &&\n navItemsHeader({\n isOpen,\n mainNavigation: mainList,\n subNavigation: subList,\n isIndexPage,\n navBarSize,\n })}\n <MenuNav.View>\n {isValidArray(mainList, false) && (\n <MenuNav.List\n id=\"mainMenu\"\n hasNonFeaturedItems={\n hasNonFeaturedItems\n }\n >\n {mainList.map((item) => {\n const isActive =\n activeItems.includes(item.uid);\n const hasCurrentSubItem =\n item?.subItems\n ? item.subItems.findIndex(\n (n) => n.isCurrent\n ) >= 0\n : false;\n\n const isCurrent =\n item.isCurrent ||\n hasCurrentSubItem;\n\n return (\n <MenuNav.Item\n key={item.uid}\n {...item}\n ref={\n isCurrent\n ? setCurrentNavEl\n : undefined\n }\n isActive={isActive}\n isCurrent={isCurrent}\n subNavTitle={subNavTitle}\n navBarSize={navBarSize}\n collapseIcon={collapseIcon}\n onItemClick={() =>\n toggleActiveItem(\n item.uid\n )\n }\n canFocus={isOpen}\n >\n {item?.subItems\n ?.filter(menuFilter)\n .map((subItem) => (\n <MenuNav.SubItem\n key={\n subItem.uid\n }\n ref={\n subItem.isCurrent\n ? setCurrentSubNavEl\n : undefined\n }\n {...subItem}\n navBarSize={\n navBarSize\n }\n canFocus={\n isOpen\n }\n />\n ))}\n </MenuNav.Item>\n );\n })}\n </MenuNav.List>\n )}\n {isValidArray(subList, false) && (\n <MenuNav.SubList\n items={subList}\n canFocus={isOpen}\n />\n )}\n </MenuNav.View>\n {footer\n ? footer({\n isOpen,\n mainNavigation: mainList,\n subNavigation: subList,\n isIndexPage,\n })\n : ''}\n </ScrollArea>\n </ScrollContainer>\n </Flyout>\n </Stage>\n </React.Fragment>\n );\n};\n\nexport default MenuFlyout;\n","import React, { FC } from 'react';\n\nimport { LinkProps } from 'components/typography/Link';\n\n/** Menu Variations */\nimport MenuFlyout, { FlyoutMenuProps } from './variations/MenuFlyout';\nimport { /* MenuLarge,*/ LargeMenuProps } from './variations/MenuLarge';\nimport { NavBarSize } from '../NavBar';\n\n/** Navigation item types */\n\nexport interface NavItem {\n uid: string;\n label: string;\n link?: LinkProps;\n isCurrent?: boolean;\n subItems?: NavItem[];\n isFeatured?: boolean;\n icon?: React.ReactNode;\n hideFromMenu?: boolean;\n}\n\n/** Menu base type */\nexport interface MenuStates {\n isOpen?: boolean;\n isIndexPage?: boolean;\n mainNavigation?: Array<NavItem>;\n subNavigation?: Array<NavItem>;\n navBarSize?: NavBarSize;\n}\n\nexport interface MenuBaseProps {\n isOpen?: boolean;\n clampWidth?: 'content' | 'full';\n isIndexPage?: boolean;\n mainNavigation?: Array<NavItem>;\n subNavigation?: Array<NavItem>;\n navBarSize?: NavBarSize;\n header?: (props: MenuStates) => React.ReactNode;\n footer?: (props: MenuStates) => React.ReactNode;\n navItemsHeader?: (menuStates: MenuStates) => React.ReactNode;\n onClose?: () => void;\n}\n\nexport type MenuTypeProps = FlyoutMenuProps | LargeMenuProps;\n\nconst Menu: FC<MenuBaseProps & { typeSettings?: MenuTypeProps }> = ({\n isOpen,\n clampWidth,\n isIndexPage,\n mainNavigation,\n subNavigation,\n navBarSize,\n header,\n footer,\n navItemsHeader,\n onClose,\n typeSettings,\n}) => {\n if (!typeSettings) {\n typeSettings = { type: 'flyout' };\n }\n\n switch (typeSettings?.type) {\n // case 'large': {\n // return (\n // <MenuLarge\n // isOpen={isOpen}\n // clampWidth={clampWidth}\n // isIndexPage={isIndexPage}\n // mainNavigation={mainNavigation}\n // subNavigation={subNavigation}\n // navBarSize={navBarSize}\n // header={header}\n // footer={footer}\n // navItemsHeader={navItemsHeader}\n // onClose={onClose}\n // {...(typeSettings as LargeMenuProps)}\n // />\n // );\n // }\n\n default:\n case 'flyout': {\n return (\n <MenuFlyout\n isOpen={isOpen}\n clampWidth={clampWidth}\n isIndexPage={isIndexPage}\n mainNavigation={mainNavigation}\n subNavigation={subNavigation}\n navBarSize={navBarSize}\n header={header}\n footer={footer}\n onClose={onClose}\n navItemsHeader={navItemsHeader}\n {...(typeSettings as FlyoutMenuProps)}\n />\n );\n }\n }\n};\n\nexport default Menu;\n","import React, { FC, useMemo } from 'react';\nimport styled, { DefaultTheme } from 'styled-components';\nimport {\n spacings,\n mq,\n getGlobals as global,\n getColors as color,\n} from 'utils/styles';\nimport { clampValue } from 'utils/clamp';\nimport { useLibTheme } from 'utils/LibThemeProvider';\nimport * as Skeletons from 'components/sections/navigation/skeletons/index';\n\nexport const getTopHeights = (\n theme: DefaultTheme,\n size?: NavBarSize\n): [number, number] => {\n const heights =\n size === 'large'\n ? global(theme).navigation.navBar.topHeight.large\n : global(theme).navigation.navBar.topHeight.small;\n\n // if second value is not defined use first array index value for both\n return [\n clampValue(heights[0], 0),\n clampValue(heights?.[1] === undefined ? heights[0] : heights[1], 0),\n ];\n};\n\nexport const hasTopBar = (theme: DefaultTheme) => {\n const largeHeights = getTopHeights(theme, 'large');\n const smallHeights = getTopHeights(theme, 'small');\n\n return (\n largeHeights[0] > 0 ||\n largeHeights[1] > 0 ||\n smallHeights[0] > 0 ||\n smallHeights[1] > 0\n );\n};\n\nexport const getMainHeights = (\n theme: DefaultTheme,\n size?: NavBarSize\n): [number, number] => {\n const heights =\n size === 'large'\n ? global(theme).navigation.navBar.mainHeight.large\n : global(theme).navigation.navBar.mainHeight.small;\n\n // if second value is not defined use first array index value for both\n return [\n clampValue(heights[0], 0),\n clampValue(heights?.[1] === undefined ? heights[0] : heights[1], 0),\n ];\n};\n\nexport const getBottomHeights = (\n theme: DefaultTheme,\n size?: NavBarSize\n): [number, number] => {\n const heights =\n size === 'large'\n ? global(theme).navigation.navBar.bottomHeight.large\n : global(theme).navigation.navBar.bottomHeight.small;\n\n // if second value is not defined use first array index value for both\n return [\n clampValue(heights[0], 0),\n clampValue(heights?.[1] === undefined ? heights[0] : heights[1], 0),\n ];\n};\n\nexport const hasBottomBar = (theme: DefaultTheme) => {\n const largeHeights = getBottomHeights(theme, 'large');\n const smallHeights = getBottomHeights(theme, 'small');\n\n return (\n largeHeights[0] > 0 ||\n largeHeights[1] > 0 ||\n smallHeights[0] > 0 ||\n smallHeights[1] > 0\n );\n};\n\nexport type ExcludeType = 'top' | 'main' | 'bottom';\n\n/**\n * Get full height of navigation bar\n * @param theme Theme object\n * @param size Navigation bar size\n * @param exclude Exclude parts of the navbar for height calculation\n * @returns [mobile, desktop]\n */\nexport const getFullHeight = (\n theme: DefaultTheme,\n size?: NavBarSize,\n exclude?: ExcludeType[]\n): [number, number] => {\n const includeTop = exclude ? exclude.indexOf('top') === -1 : true;\n const includeMain = exclude ? exclude.indexOf('main') === -1 : true;\n const includeBottom = exclude ? exclude.indexOf('bottom') === -1 : true;\n\n const topHeights = includeTop ? getTopHeights(theme, size) : [0, 0];\n const mainHeights = includeMain ? getMainHeights(theme, size) : [0, 0];\n const bottomHeights = includeBottom\n ? getBottomHeights(theme, size)\n : [0, 0];\n\n // calculate mobile navbar height\n const mobile = topHeights[0] + mainHeights[0] + bottomHeights[0];\n\n // calculate desktop navbar height\n const desktop = topHeights[1] + mainHeights[1] + bottomHeights[1];\n\n return [mobile, desktop];\n};\n\nconst View = styled.div<{\n isOpen?: boolean;\n isSticky?: boolean;\n isAnimated?: boolean;\n bgGradient?: string;\n}>`\n position: ${({ isSticky }) => (isSticky ? 'fixed' : 'absolute')};\n top: 0;\n left: 0;\n right: 0;\n\n transform: ${({ isOpen }) => !isOpen && 'translate3d(0, -101%, 0)'};\n\n margin: 0 auto;\n /* max-width: ${spacings.wrapperLarge}px; */\n z-index: 100;\n\n ${({ isAnimated }) => `transition: ${\n isAnimated ? 'transform 0.3s ease-in-out, ' : ''\n }height 0.3s ease-in-out,\n opacity 0.3s ease-in-out;`}\n will-change: transform;\n\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: ${({ bgGradient }) => bgGradient || ''};\n margin: 0 auto;\n max-width: ${spacings.wrapperLarge}px;\n z-index: -1;\n }\n\n // print version\n @media print {\n position: relative;\n }\n`;\n\nconst Header = styled.div<{ size?: NavBarSize; background?: string }>`\n opacity: ${({ theme, size }) =>\n getTopHeights(theme, size)[0] > 0 ? 1 : 0};\n pointer-events: ${({ theme, size }) =>\n getTopHeights(theme, size)[0] > 0 ? 'all' : 'none'};\n overflow: ${({ theme, size }) =>\n getTopHeights(theme, size)[0] <= 0 && 'hidden'};\n\n background-color: ${({ background }) => background};\n color: ${({ theme, background }) =>\n background ? color(theme).text.default : color(theme).text.inverted};\n\n transition: background-color 0.2s ease-in-out;\n\n @media ${mq.semilarge} {\n opacity: ${({ theme, size }) =>\n getTopHeights(theme, size)[1] > 0 ? 1 : 0};\n pointer-events: ${({ theme, size }) =>\n getTopHeights(theme, size)[1] > 0 ? 'all' : 'none'};\n overflow: ${({ theme, size }) =>\n getTopHeights(theme, size)[1] <= 0 && 'hidden'};\n }\n`;\n\nconst Main = styled.div<{ background?: string }>`\n background-color: ${({ background }) => background};\n color: ${({ theme, background }) =>\n background ? color(theme).text.default : color(theme).text.inverted};\n\n transition: background-color 0.2s ease-in-out;\n`;\n\nconst Footer = styled.div<{ size?: NavBarSize; background?: string }>`\n opacity: ${({ theme, size }) =>\n getBottomHeights(theme, size)[0] > 0 ? 1 : 0};\n pointer-events: ${({ theme, size }) =>\n getBottomHeights(theme, size)[0] > 0 ? 'all' : 'none'};\n overflow: ${({ theme, size }) =>\n getBottomHeights(theme, size)[0] <= 0 && 'hidden'};\n\n background-color: ${({ background }) => background};\n color: ${({ theme, background }) =>\n background ? color(theme).text.default : color(theme).text.inverted};\n\n opacity: ${({ theme, size }) =>\n getBottomHeights(theme, size)[0] > 0 ? 1 : 0};\n\n transition: background-color 0.2s ease-in-out, opacity 0.2s ease-in-out;\n\n @media ${mq.semilarge} {\n opacity: ${({ theme, size }) =>\n getBottomHeights(theme, size)[1] > 0 ? 1 : 0};\n pointer-events: ${({ theme, size }) =>\n getBottomHeights(theme, size)[1] > 0 ? 'all' : 'none'};\n overflow: ${({ theme, size }) =>\n getBottomHeights(theme, size)[1] <= 0 && 'hidden'};\n\n opacity: ${({ theme, size }) =>\n getBottomHeights(theme, size)[1] > 0 ? 1 : 0};\n }\n`;\n\nconst TopContent = styled.div<{ size?: NavBarSize; clamp?: boolean }>`\n display: flex;\n justify-content: flex-end;\n position: relative;\n max-width: ${({ clamp }) =>\n clamp ? spacings.wrapper : spacings.wrapperLarge}px;\n padding: ${({ size, theme }) =>\n getTopHeights(theme, size)[0] > 0 && `0 ${spacings.nudge * 2}px`};\n margin: 0 auto;\n\n height: ${({ theme, size }) => getTopHeights(theme, size)[0]}px;\n\n transition: height 0.2s ease-in-out, padding-top 0.2s ease-in-out,\n padding-bottom 0.2s ease-in-out;\n will-change: height;\n\n @media ${mq.semilarge} {\n height: ${({ theme, size }) => getTopHeights(theme, size)[1]}px;\n padding: ${({ size, theme }) =>\n getTopHeights(theme, size)[1] > 0 && `0 ${spacings.nudge * 2}px`};\n }\n`;\n\nconst Content = styled.div<{ size?: NavBarSize; clamp?: boolean }>`\n display: flex;\n position: relative;\n max-width: ${({ clamp }) =>\n clamp ? spacings.wrapper : spacings.wrapperLarge}px;\n padding: 0 ${spacings.nudge * 2}px;\n margin: 0 auto;\n\n height: ${({ theme, size }) => getMainHeights(theme, size)[0]}px;\n\n transition: height 0.2s ease-in-out;\n will-change: height;\n\n @media ${mq.semilarge} {\n height: ${({ theme, size }) =>\n getMainHeights(theme, size)[1] || getMainHeights(theme, size)[0]}px;\n }\n`;\n\nconst BottomContent = styled.div<{ size?: NavBarSize; clamp?: boolean }>`\n display: flex;\n justify-content: flex-start;\n position: relative;\n max-width: ${({ clamp }) =>\n clamp ? spacings.wrapper : spacings.wrapperLarge}px;\n padding: 0 ${spacings.nudge * 2}px;\n margin: 0 auto;\n\n height: ${({ theme, size }) => getBottomHeights(theme, size)[0]}px;\n transition: 0.2s height ease-in-out;\n\n @media ${mq.semilarge} {\n height: ${({ theme, size }) => getBottomHeights(theme, size)[1]}px;\n padding: 0 ${spacings.nudge * 2}px;\n }\n`;\n\nconst BarSpacer = styled.div<{ hasHeader?: boolean; hasFooter?: boolean }>`\n height: ${({ theme, hasHeader, hasFooter }) => {\n const excludes: ExcludeType[] = [];\n if (!hasHeader) excludes.push('top');\n if (!hasFooter) excludes.push('bottom');\n\n return getFullHeight(theme, 'large', excludes)[0];\n }}px;\n\n @media ${mq.semilarge} {\n height: ${({ theme, hasHeader, hasFooter }) => {\n const excludes: ExcludeType[] = [];\n if (!hasHeader) excludes.push('top');\n if (!hasFooter) excludes.push('bottom');\n\n return getFullHeight(theme, 'large', excludes)[1];\n }}px;\n }\n\n // print version\n @media print {\n display: none;\n }\n`;\n\nexport type NavBarSize = 'small' | 'large';\n\nexport interface BarStates {\n size: NavBarSize;\n isOpen?: boolean;\n isSticky?: boolean;\n pageFlow?: PageFlow;\n}\n\nexport type PageFlow = 'overContent' | 'beforeContent';\n\nexport interface NavBarProps {\n size?: NavBarSize;\n isOpen?: boolean;\n isSticky?: boolean;\n isAnimated?: boolean;\n clampWidth?: 'content' | 'full';\n pageFlow?: PageFlow;\n\n topBg?: string;\n mainBg?: string;\n bottomBg?: string;\n /** Custom background value for NavBar with pageFlow === overContent and large size */\n onContentBg?: string;\n\n topBar?: ((props: BarStates) => React.ReactNode) | null;\n mainBar?: ((props: BarStates) => React.ReactNode) | null;\n bottomBar?: ((props: BarStates) => React.ReactNode) | null;\n}\n\nconst NavBar: FC<\n NavBarProps & {\n className?: string;\n }\n> = ({\n size = 'large',\n isOpen = false,\n isSticky = false,\n isAnimated = false,\n clampWidth = false,\n pageFlow = 'beforeContent',\n topBg,\n mainBg,\n bottomBg,\n onContentBg,\n topBar,\n mainBar,\n bottomBar,\n className,\n}) => {\n const { theme, colors } = useLibTheme();\n const clampContent = clampWidth === 'content';\n const isOverContent = pageFlow === 'overContent';\n\n const hasHeader = useMemo(\n () => hasTopBar(theme) && topBar !== null,\n [theme, topBar]\n );\n const hasFooter = useMemo(\n () => hasBottomBar(theme) && bottomBar !== null,\n [bottomBar, theme]\n );\n const showBg = useMemo(\n () => size === 'small' || (size === 'large' && !isOverContent),\n [isOverContent, size]\n );\n\n const topBackground = topBg || colors.elementBg.light;\n const mainBackground = mainBg || colors.elementBg.light;\n const bottomBackground = bottomBg || colors.elementBg.light;\n const onContentBackground =\n onContentBg ||\n 'linear-gradient(180deg,rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.2) 40%, rgba(0,0,0,0) 100%)';\n\n const topBarContent = useMemo(\n () =>\n topBar &&\n topBar({\n size,\n isOpen,\n isSticky,\n pageFlow,\n }),\n [isOpen, isSticky, pageFlow, size, topBar]\n );\n\n const mainBarContent = useMemo(\n () =>\n mainBar &&\n mainBar({\n size,\n isOpen,\n isSticky,\n pageFlow,\n }),\n [isOpen, isSticky, mainBar, pageFlow, size]\n );\n\n const bottomBarContent = useMemo(\n () =>\n bottomBar &&\n bottomBar({\n size,\n isOpen,\n isSticky,\n pageFlow,\n }),\n [bottomBar, isOpen, isSticky, pageFlow, size]\n );\n\n return (\n <React.Fragment>\n {pageFlow === 'beforeContent' && (\n <BarSpacer hasHeader={hasHeader} hasFooter={hasFooter} />\n )}\n <View\n isOpen={isOpen}\n isSticky={isSticky}\n isAnimated={isAnimated}\n bgGradient={\n size === 'large' && isOverContent\n ? onContentBackground\n : undefined\n }\n className={className}\n >\n {hasHeader && (\n <Header\n size={size}\n background={showBg ? topBackground : undefined}\n >\n <TopContent size={size} clamp={clampContent}>\n {topBarContent ? (\n topBarContent\n ) : (\n <Skeletons.Column isInverted>\n Top Nav\n </Skeletons.Column>\n )}\n </TopContent>\n </Header>\n )}\n {mainBar !== null && (\n <Main background={showBg ? mainBackground : undefined}>\n <Content size={size} clamp={clampContent}>\n {mainBarContent ? (\n mainBarContent\n ) : (\n <React.Fragment>\n <Skeletons.Column\n takeSpace\n isInverted={\n size === 'large' && isOverContent\n }\n >\n Left\n </Skeletons.Column>\n <Skeletons.Column\n isInverted={\n size === 'large' && isOverContent\n }\n >\n Center\n </Skeletons.Column>\n <Skeletons.Column\n takeSpace\n isInverted={\n size === 'large' && isOverContent\n }\n >\n Right\n </Skeletons.Column>\n </React.Fragment>\n )}\n </Content>\n </Main>\n )}\n {hasFooter && (\n <Footer\n size={size}\n background={showBg ? bottomBackground : undefined}\n >\n <BottomContent size={size} clamp={clampContent}>\n {bottomBarContent ? bottomBarContent : 'bottom bar'}\n </BottomContent>\n </Footer>\n )}\n </View>\n </React.Fragment>\n );\n};\n\nexport default NavBar;\n","import React, { FC, useEffect, useMemo, useState } from 'react';\nimport { DefaultTheme } from 'styled-components';\nimport {\n LibThemeProvider,\n ThemeMods,\n useLibTheme,\n} from 'utils/LibThemeProvider';\nimport { useMediaQueries } from 'utils/useMediaQuery';\nimport { useMenuKeyboard } from 'utils/menuHooks';\nimport usePageScroll, { PageScrollDirection } from 'utils/usePageScroll';\nimport Menu, { MenuStates, MenuTypeProps, NavItem } from './menu/Menu';\n\nimport NavBar, {\n getFullHeight,\n NavBarSize,\n BarStates,\n hasTopBar,\n hasBottomBar,\n ExcludeType,\n PageFlow,\n} from './NavBar';\n\n/**\n * Checks which navbar parts are defined in navigation.\n * With this values you can calculate each height by the Navbar component functions\n * @param ident Identification string from Navigation component\n * @returns\n */\nexport const getNavbarState = (ident: string) => {\n const navbarIdent = ident || '';\n\n let pageFlow: PageFlow | undefined = undefined;\n switch (true) {\n case navbarIdent.search('overContent') !== -1: {\n pageFlow = 'overContent';\n break;\n }\n\n case navbarIdent.search('beforeContent') !== -1: {\n pageFlow = 'beforeContent';\n break;\n }\n }\n\n return {\n hasTop: navbarIdent.search('top') !== -1,\n hasMain: navbarIdent.search('main') !== -1,\n hasBottom: navbarIdent.search('bottom') !== -1,\n pageFlow: pageFlow,\n isStickable: navbarIdent.search('stickable') !== -1,\n };\n};\n\n/** Generate Navbar identifier */\nexport const generateNavbarIdent = (props: {\n hasTop?: boolean;\n hasMain?: boolean;\n hasBottom?: boolean;\n pageFlow?: PageFlow;\n isStickable?: boolean;\n}): string => {\n if (!props) return '';\n const stateArray: string[] = [];\n\n if (props.hasTop) stateArray.push('top');\n if (props.hasMain) stateArray.push('main');\n if (props.hasBottom) stateArray.push('bottom');\n if (props.isStickable) stateArray.push('stickable');\n if (props.pageFlow) stateArray.push(props.pageFlow);\n\n return stateArray.join('-');\n};\n\n/**\n * Get full navbar heights\n * @param theme Theme object\n * @param ident Indentification string from Navigation component\n * @returns\n */\nexport const getFullNavbarHeights = (theme: DefaultTheme, ident: string) => {\n const { hasTop, hasBottom } = getNavbarState(ident || '');\n const excludes: ExcludeType[] = [];\n if (!hasTop) excludes.push('top');\n if (!hasBottom) excludes.push('bottom');\n\n return {\n large: getFullHeight(theme, 'large', excludes),\n small: getFullHeight(theme, 'small', excludes),\n };\n};\n\nexport interface NavBarStates extends BarStates {\n isMenuOpen?: boolean;\n openMenu?: () => void;\n closeMenu?: () => void;\n mainNavigation?: Array<NavItem>;\n subNavigation?: Array<NavItem>;\n isOnPageTop?: boolean;\n isInTopOffset?: boolean;\n}\n\nexport interface NavMenuStates extends MenuStates {\n isMenuOpen?: boolean;\n openMenu?: () => void;\n closeMenu?: () => void;\n navBarSize?: NavBarSize;\n}\n\nexport interface NavBarSettings {\n isStickable?: boolean;\n isCollapsible?: boolean;\n pageFlow?: 'overContent' | 'beforeContent';\n\n topBg?: string;\n mainBg?: string;\n bottomBg?: string;\n /** Custom background value for NavBar with pageFlow === overContent and large size */\n onContentBg?: string;\n\n topBar?: ((props: NavBarStates) => React.ReactNode) | null;\n mainBar?: ((props: NavBarStates) => React.ReactNode) | null;\n bottomBar?: ((props: NavBarStates) => React.ReactNode) | null;\n theme?: ThemeMods;\n}\n\nexport interface MenuSettings {\n isIndexPage?: boolean;\n mainNavigation?: Array<NavItem>;\n subNavigation?: Array<NavItem>;\n header?: (props: NavMenuStates) => React.ReactNode;\n footer?: (props: NavMenuStates) => React.ReactNode;\n navItemsHeader?: (props: NavMenuStates) => React.ReactNode;\n typeSettings: MenuTypeProps;\n\n theme?: ThemeMods;\n}\n\nexport interface NavigationProps {\n navBar?: NavBarSettings;\n menu?: MenuSettings;\n clampWidth?: 'content' | 'full';\n}\n\nconst Navigation: FC<NavigationProps> = ({\n clampWidth = 'content',\n navBar,\n menu,\n}) => {\n const isStickable = navBar?.isStickable || false;\n const isCollapsible = navBar?.isCollapsible || false;\n\n const mediaQueries = useMediaQueries();\n\n const { theme } = useLibTheme();\n\n /** Navigation bar states */\n const [isNavBarSticky, setIsNavBarSticky] = useState<boolean>(false);\n const [isNavBarOpen, setNavBarOpen] = useState<boolean>(true);\n const { isTop, scrollDirection, isInOffset, leftOffsetFromTop } =\n usePageScroll({\n directionOffset: { up: 40, down: 40 },\n offset: getFullHeight(theme, 'large')[\n mediaQueries.semilarge ? 1 : 0\n ],\n });\n\n const navbarSize = useMemo<NavBarSize>(() => {\n return isTop || isInOffset || !isStickable ? 'large' : 'small';\n }, [isTop, isInOffset, isStickable]);\n\n useEffect(() => {\n if (isStickable && isCollapsible) {\n setNavBarOpen(\n isTop ||\n isInOffset ||\n scrollDirection === PageScrollDirection.UP\n );\n }\n }, [scrollDirection, isTop, isStickable, isInOffset, isCollapsible]);\n\n useEffect(() => {\n if (!isStickable) return;\n if (\n !isCollapsible ||\n (leftOffsetFromTop && scrollDirection === PageScrollDirection.UP)\n ) {\n setIsNavBarSticky(true);\n } else if (isTop) {\n setIsNavBarSticky(false);\n }\n }, [isCollapsible, isStickable, isTop, leftOffsetFromTop, scrollDirection]);\n\n /** Menu states */\n const { isMenuOpen, setIsMenuOpen, setRoot } = useMenuKeyboard(false, {});\n\n const openMenu = () => {\n setIsMenuOpen(true);\n };\n\n const closeMenu = () => {\n setIsMenuOpen(false);\n };\n\n useEffect(() => {\n document.body.style.overflow = isMenuOpen ? 'hidden' : 'visible';\n }, [isMenuOpen]);\n\n const topBar = navBar?.topBar\n ? (props: BarStates) => {\n if (!navBar?.topBar) return '';\n return navBar.topBar({\n ...props,\n isMenuOpen,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n isOnPageTop: isTop,\n isInTopOffset: isInOffset,\n });\n }\n : navBar?.topBar;\n\n const mainBar = navBar?.mainBar\n ? (props: BarStates) => {\n if (!navBar?.mainBar) return '';\n return navBar.mainBar({\n ...props,\n isMenuOpen,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n isOnPageTop: isTop,\n isInTopOffset: isInOffset,\n });\n }\n : navBar?.mainBar;\n\n const bottomBar = navBar?.bottomBar\n ? (props: BarStates) => {\n if (!navBar?.bottomBar) return '';\n return navBar.bottomBar({\n ...props,\n isMenuOpen,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n isOnPageTop: isTop,\n isInTopOffset: isInOffset,\n });\n }\n : navBar?.bottomBar;\n\n const menuHeader = menu?.header\n ? (props: MenuStates) => {\n if (!menu?.header) return '';\n return menu?.header({\n ...props,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n navBarSize: navbarSize,\n });\n }\n : undefined;\n\n const menuFooter = menu?.footer\n ? (props: MenuStates) => {\n if (!menu?.footer) return '';\n return menu?.footer({\n ...props,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n navBarSize: navbarSize,\n });\n }\n : undefined;\n\n const menuNavItemsHeader = menu?.navItemsHeader\n ? (props: MenuStates) => {\n if (!menu?.navItemsHeader) return '';\n return menu?.navItemsHeader({\n ...props,\n openMenu,\n closeMenu,\n mainNavigation: menu?.mainNavigation,\n subNavigation: menu?.subNavigation,\n navBarSize: navbarSize,\n });\n }\n : undefined;\n\n /**\n * Get ident string that shows if each navbar section is defined.\n * @returns Navbar ident string\n */\n const getNavBarIdent = (theme: DefaultTheme) => {\n const ident = generateNavbarIdent({\n hasTop: topBar !== null && hasTopBar(theme),\n hasMain: mainBar !== null,\n hasBottom: bottomBar !== null && hasBottomBar(theme),\n isStickable: navBar?.isStickable,\n pageFlow: navBar?.pageFlow,\n });\n\n return ident;\n };\n\n return (\n <header ref={setRoot} data-navbar-ident={getNavBarIdent(theme)}>\n <LibThemeProvider theme={navBar?.theme}>\n <NavBar\n isOpen={isNavBarOpen}\n isSticky={isNavBarSticky}\n isAnimated\n size={navbarSize}\n clampWidth={clampWidth}\n pageFlow={navBar?.pageFlow}\n topBar={topBar}\n mainBar={mainBar}\n bottomBar={bottomBar}\n topBg={navBar?.topBg}\n mainBg={navBar?.mainBg}\n bottomBg={navBar?.bottomBg}\n onContentBg={navBar?.onContentBg}\n />\n </LibThemeProvider>\n <LibThemeProvider theme={menu?.theme}>\n <Menu\n isOpen={isMenuOpen}\n clampWidth={clampWidth}\n isIndexPage={menu?.isIndexPage}\n mainNavigation={menu?.mainNavigation}\n subNavigation={menu?.subNavigation}\n typeSettings={menu?.typeSettings}\n navBarSize={navbarSize}\n header={menuHeader}\n footer={menuFooter}\n navItemsHeader={menuNavItemsHeader}\n onClose={closeMenu}\n />\n </LibThemeProvider>\n </header>\n );\n};\n\nexport default Navigation;\n","import { useEffect, useRef, useState } from 'react';\n\ninterface Settings {\n openMenuIdent: string;\n closeMenuIdent: string;\n}\n\n/**\n * Hooks in to menu state to control it with keyboard inputs\n * @param initialMenuState\n * @param settings\n * @returns\n */\nexport const useMenuKeyboard = (\n initialMenuState: boolean,\n settings: Partial<Settings>\n) => {\n const [isMenuOpen, setIsMenuOpen] = useState(initialMenuState);\n const prevMenuState = useRef<boolean>(false);\n\n const [root, setRoot] = useState<HTMLElement | null>(null);\n const openBtnRef = useRef<HTMLButtonElement | null>(null);\n const closeBtnRef = useRef<HTMLButtonElement | null>(null);\n\n const defaultSettings: Settings = {\n openMenuIdent: 'button[aria-label=\"open menu\"]',\n closeMenuIdent: 'button[aria-label=\"close menu\"]',\n ...settings,\n };\n\n useEffect(() => {\n if (!root) return;\n\n // setting up menu toggle button refs\n if (!openBtnRef.current) {\n openBtnRef.current = root.querySelector(\n defaultSettings.openMenuIdent\n );\n }\n if (!closeBtnRef.current) {\n closeBtnRef.current = root.querySelector(\n defaultSettings.closeMenuIdent\n );\n }\n }, [\n defaultSettings.closeMenuIdent,\n defaultSettings.openMenuIdent,\n isMenuOpen,\n root,\n ]);\n\n useEffect(() => {\n const handleKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === 'Escape' && isMenuOpen) {\n setIsMenuOpen(false);\n }\n };\n\n // settings focus if menu is open\n if (isMenuOpen) {\n closeBtnRef?.current?.focus();\n } else if (prevMenuState.current) {\n openBtnRef?.current?.focus();\n }\n\n prevMenuState.current = isMenuOpen;\n\n window.addEventListener('keydown', handleKeyDown);\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n };\n }, [isMenuOpen]);\n\n return {\n setRoot,\n isMenuOpen,\n setIsMenuOpen,\n };\n};\n"],"names":["PageScrollDirection","View","styled","nav","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","List","ul","templateObject_2","mq","semilarge","spacings","nudge","ListItem","li","templateObject_3","_a","isCurrent","NavLink","Link","templateObject_4","showOnMobile","clamp","copyStyle","theme","isInverted","color","text","inverted","default","showOnDesktop","NavLabel","span","templateObject_5","Seperator","Copy","templateObject_6","BackIconContainer","templateObject_7","BreadcrumbItem","label","link","children","href","React","__assign","Column","div","takeSpace","undefined","vAlign","getColors","primary","Logo","Image","Toggle","button","invertedHover","hover","BarMenuToggle","_b","isExpanded","onClick","className","createElement","isActive","Header","LanguageCol","MenuHeader","customToggle","menuStates","langs","action","Fragment","Skeletons","closeMenu","Cross","ariaHidden","isValidArray","LanguageSwitcher","navigationStyle","type","css","font","navigation","family","weight","style","withRange","getFonts","size","lineHeight","letterSpacing","textTransform","textDecoration","Backdrop","isOpen","filter","Stage","clampWidth","wrapper","wrapperLarge","Flyout","elementBg","light","medium","large","getMenuHeaderHeights","heights","global","getGlobals","menu","headerHeight","small","clampValue","navBarSize","ScrollContainer","ScrollArea","NavView","templateObject_8","NavList","templateObject_9","hasNonFeaturedItems","concat","NavItemView","templateObject_10","spacer","NavItemContent","templateObject_11","isFeatured","featured","main","NavItemIcon","templateObject_12","NavItemLabel","NavItemCollapse","NavItemCollapseIcon","AngleRight","templateObject_15","isCollapsed","NavItemLink","templateObject_16","NavItemButton","templateObject_17","SubNavList","templateObject_18","isIndented","NavigationItem","forwardRef","ref","icon","subNavTitle","onItemClick","collapseIcon","canFocus","hasSubItems","Children","count","ariaLabel","tabIndex","MenuNav","SubItem","key","SubNavItem","sub","SubNavLink","templateObject_20","NavigationSubItem","SecondaryNavList","templateObject_21","SecondaryNavLink","templateObject_22","secondary","Item","SubList","items","length","n","map","item","i","menuFilter","hideFromMenu","uid","MenuFlyout","isIndexPage","mainNavigation","subNavigation","backdropFilter","header","footer","onClose","navItemsHeader","useLibTheme","flyoutRef","useRef","hasHeader","useMemo","hasMenuHeader","largeHeights","smallHeights","mainList","__spreadArray","subList","_c","useState","initial","getCurrentNavItem","root","activeItems","setActiveItems","_d","currentNavEl","setCurrentNavEl","_e","currentSubNavEl","setCurrentSubNavEl","useEffect","handleFocus","ev","current","target","contains","document","addEventListener","removeEventListener","scrollIntoView","block","inline","e","id","includes","hasCurrentSubItem","subItems","findIndex","prev","subItem","Menu","typeSettings","getTopHeights","navBar","topHeight","hasTopBar","getMainHeights","mainHeight","getBottomHeights","bottomHeight","hasBottomBar","getFullHeight","exclude","includeTop","indexOf","includeMain","includeBottom","topHeights","mainHeights","bottomHeights","isSticky","isAnimated","bgGradient","background","Main","Footer","TopContent","Content","BottomContent","BarSpacer","hasFooter","excludes","push","NavBar","_f","_g","pageFlow","topBg","mainBg","bottomBg","onContentBg","topBar","mainBar","bottomBar","_h","colors","clampContent","isOverContent","showBg","topBackground","mainBackground","bottomBackground","onContentBackground","topBarContent","mainBarContent","bottomBarContent","getNavbarState","ident","navbarIdent","search","hasTop","hasMain","hasBottom","isStickable","generateNavbarIdent","props","stateArray","join","rootLink","rootLabel","navItems","seperator","back","currentNavPath","getCurrentNavPath","rootItem","AngleLeft","logo","coverSpace","ratios","showPlaceholder","navLinks","isCollapsible","mediaQueries","useMediaQueries","isNavBarSticky","setIsNavBarSticky","isNavBarOpen","setNavBarOpen","settings","isTop","setIsTop","isInOffset","setIsInOffset","leftOffsetFromTop","setLeftOffsetFromTop","lastScrollPos","pxSinceLastSwitch","DOWN","scrollDirection","setScrollDirection","directionDownOffset","directionOffset","down","directionUpOffset","up","scrollState","useScrollThrottle","resizeThrottleTimeout","window","scrollY","offset","onLeftOffset","call","diff","absAccPx","Math","abs","UP","usePageScroll","navbarSize","initialMenuState","isMenuOpen","setIsMenuOpen","prevMenuState","setRoot","openBtnRef","closeBtnRef","defaultSettings","openMenuIdent","closeMenuIdent","querySelector","handleKeyDown","focus","useMenuKeyboard","openMenu","body","overflow","isOnPageTop","isInTopOffset","menuHeader","menuFooter","menuNavItemsHeader","getNavBarIdent","LibThemeProvider"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";var n=require("./ClockFilled-2483aa4a.js"),e=require("react"),t=require("styled-components"),i=require("./styles-0f1a0aea.js"),a=require("./TableBlock-080c9c2e.js"),o=require("./Copy-e860efe7.js"),l=require("./Actions-6dd616e0.js"),r=require("./Image-d9681be0.js"),d=require("./statusFormatter-0393122b.js"),s=require("./LibThemeProvider-fb99fd6d.js"),c=require("./Link-70143bb7.js"),p=require("./arrays-c272ed59.js"),m=require("./useMediaQuery-d4f81f88.js"),u=require("./clamp-bd21d587.js"),f=require("./useObserverSupport-5ab320dd.js"),g=require("./useUpdateEffect-4d233e2c.js");function v(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var x,h,w,b,_,y,I,k,C,j,T,E,O,N,q,z,P,B,A,L,V,S,H,F,M,R,D,K,G,Q,U,W,J,X,Y=v(e),Z=v(t),$=Z.default.div.withConfig({displayName:"IntroBlock__View",componentId:"sc-w71lok-0"})(x||(x=n.__makeTemplateObject(["\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ",";\n\n @media "," {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ","px;\n }\n }\n"],["\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ",";\n\n @media "," {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ","px;\n }\n }\n"])),(function(n){return n.isCentered&&"center"}),i.mq.semilarge,i.spacings.spacer),nn=Z.default.div.withConfig({displayName:"IntroBlock__Content",componentId:"sc-w71lok-1"})(h||(h=n.__makeTemplateObject(["\n & > * + * {\n margin-top: ","px;\n }\n\n max-width: 100%;\n\n @media "," {\n flex: 1 0 66.66%;\n }\n"],["\n & > * + * {\n margin-top: ","px;\n }\n\n max-width: 100%;\n\n @media "," {\n flex: 1 0 66.66%;\n }\n"])),i.spacings.spacer,i.mq.semilarge),en=Z.default(a.Title).withConfig({displayName:"IntroBlock__StyledTitle",componentId:"sc-w71lok-2"})(w||(w=n.__makeTemplateObject(["\n max-width: ",";\n"],["\n max-width: ",";\n"])),(function(n){return n.clamp&&"880px"})),tn=Z.default(o.Copy).withConfig({displayName:"IntroBlock__ContentBlock",componentId:"sc-w71lok-3"})(_||(_=n.__makeTemplateObject(["\n display: block;\n max-width: ",";\n margin-left: ",";\n margin-right: ",";\n\n ","\n\n & + & {\n margin-top: ","px;\n }\n"],["\n display: block;\n max-width: ",";\n margin-left: ",";\n margin-right: ",";\n\n ","\n\n & + & {\n margin-top: ","px;\n }\n"])),(function(n){return n.clamp&&"880px"}),(function(n){return n.isCentered&&"auto"}),(function(n){return n.isCentered&&"auto"}),(function(e){var i=e.maxLines;return i&&i>0&&t.css(b||(b=n.__makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ","; /* number of lines to show */\n line-clamp: ",";\n -webkit-box-orient: vertical;\n "],["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ","; /* number of lines to show */\n line-clamp: ",";\n -webkit-box-orient: vertical;\n "])),i,i)}),3*i.spacings.nudge),an=Z.default(l.Actions).withConfig({displayName:"IntroBlock__StyledActions",componentId:"sc-w71lok-4"})(y||(y=n.__makeTemplateObject(["\n @media "," {\n display: block;\n text-align: ",";\n }\n"],["\n @media "," {\n display: block;\n text-align: ",";\n }\n"])),i.mq.medium,(function(n){return n.isCentered&&"center"})),on=Z.default.div.withConfig({displayName:"IntroBlock__MobileImageContainer",componentId:"sc-w71lok-5"})(I||(I=n.__makeTemplateObject(["\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: 400px;\n text-align: center;\n\n margin: 0 auto;\n margin-top: ","px;\n\n @media "," {\n display: ",";\n }\n"],["\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: 400px;\n text-align: center;\n\n margin: 0 auto;\n margin-top: ","px;\n\n @media "," {\n display: ",";\n }\n"])),i.spacings.spacer,i.mq.semilarge,(function(n){return n.isCentered?"block":"none"})),ln=Z.default.div.withConfig({displayName:"IntroBlock__DesktopImageContainer",componentId:"sc-w71lok-6"})(k||(k=n.__makeTemplateObject(["\n display: none;\n width: 100%;\n\n @media "," {\n display: block;\n /* flex: 1 0 33.33%; */\n\n max-width: 400px;\n }\n"],["\n display: none;\n width: 100%;\n\n @media "," {\n display: block;\n /* flex: 1 0 33.33%; */\n\n max-width: 400px;\n }\n"])),i.mq.semilarge),rn=Z.default.div.withConfig({displayName:"EventBlock__View",componentId:"sc-1nnq189-0"})(C||(C=n.__makeTemplateObject(["\n text-decoration: none;\n color: inherit;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n display: flex;\n justify-content: flex-end;\n flex-direction: row-reverse;\n\n & > * + * {\n margin-top: 0;\n padding-right: ","px;\n }\n }\n"],["\n text-decoration: none;\n color: inherit;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n display: flex;\n justify-content: flex-end;\n flex-direction: row-reverse;\n\n & > * + * {\n margin-top: 0;\n padding-right: ","px;\n }\n }\n"])),3*i.spacings.nudge,i.mq.large,i.spacings.spacer),dn=Z.default.div.withConfig({displayName:"EventBlock__ImageContainer",componentId:"sc-1nnq189-1"})(j||(j=n.__makeTemplateObject(["\n flex: 0 1 30%;\n margin-left: auto;\n"],["\n flex: 0 1 30%;\n margin-left: auto;\n"]))),sn=Z.default.div.withConfig({displayName:"EventBlock__MainContent",componentId:"sc-1nnq189-2"})(T||(T=n.__makeTemplateObject(["\n flex: 0 1 70%;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n max-width: 830px;\n }\n"],["\n flex: 0 1 70%;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n max-width: 830px;\n }\n"])),3*i.spacings.nudge,i.mq.large),cn=Z.default.div.withConfig({displayName:"EventBlock__TagContainer",componentId:"sc-1nnq189-3"})(E||(E=n.__makeTemplateObject(["\n margin-top: -","px;\n margin-left: -","px;\n\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n"],["\n margin-top: -","px;\n margin-left: -","px;\n\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n"])),i.spacings.nudge,i.spacings.nudge),pn=Z.default.div.withConfig({displayName:"EventBlock__TitleWrapper",componentId:"sc-1nnq189-4"})(O||(O=n.__makeTemplateObject(["\n & > * + * {\n margin-top: ","px;\n }\n"],["\n & > * + * {\n margin-top: ","px;\n }\n"])),i.spacings.nudge),mn=Z.default.div.withConfig({displayName:"EventBlock__TagWrapper",componentId:"sc-1nnq189-5"})(N||(N=n.__makeTemplateObject(["\n padding-top: ","px;\n padding-left: ","px;\n"],["\n padding-top: ","px;\n padding-left: ","px;\n"])),i.spacings.nudge,i.spacings.nudge),un=Z.default(c.Link).withConfig({displayName:"EventBlock__TitleLink",componentId:"sc-1nnq189-6"})(q||(q=n.__makeTemplateObject(["\n display: inline-block;\n ","\n\n color: ",";\n text-decoration: none;\n"],["\n display: inline-block;\n ","\n\n color: ",";\n text-decoration: none;\n"])),o.copyStyle("copy-b","big"),(function(n){var e=n.theme;return n.isInverted?i.getFonts(e)["copy-b"].big.colorInverted:i.getFonts(e)["copy-b"].big.color})),fn=Z.default(o.Copy).withConfig({displayName:"EventBlock__Text",componentId:"sc-1nnq189-7"})(z||(z=n.__makeTemplateObject(["\n display: -webkit-box;\n -webkit-line-clamp: 4;\n -webkit-box-orient: vertical;\n overflow: hidden;\n"],["\n display: -webkit-box;\n -webkit-line-clamp: 4;\n -webkit-box-orient: vertical;\n overflow: hidden;\n"]))),gn=Z.default.div.withConfig({displayName:"InfoList__View",componentId:"sc-1bggeo0-0"})(P||(P=n.__makeTemplateObject([""],[""]))),vn=Z.default.ul.withConfig({displayName:"InfoList__Container",componentId:"sc-1bggeo0-1"})(B||(B=n.__makeTemplateObject(["\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin: 0;\n padding: 0;\n margin-left: -","px;\n margin-top: -","px;\n list-style: none;\n"],["\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin: 0;\n padding: 0;\n margin-left: -","px;\n margin-top: -","px;\n list-style: none;\n"])),i.spacings.spacer,5*i.spacings.nudge),xn=Z.default.li.withConfig({displayName:"InfoList__Item",componentId:"sc-1bggeo0-2"})(A||(A=n.__makeTemplateObject(["\n flex: 1 1 100%;\n padding-left: ","px;\n padding-top: ","px;\n\n @media "," {\n flex: 1 1 300px;\n }\n"],["\n flex: 1 1 100%;\n padding-left: ","px;\n padding-top: ","px;\n\n @media "," {\n flex: 1 1 300px;\n }\n"])),i.spacings.spacer,5*i.spacings.nudge,i.mq.medium),hn=Z.default(o.Copy).withConfig({displayName:"InfoList__Title",componentId:"sc-1bggeo0-3"})(L||(L=n.__makeTemplateObject(["\n display: block;\n margin-bottom: ","px;\n"],["\n display: block;\n margin-bottom: ","px;\n"])),3*i.spacings.nudge),wn=Z.default.ul.withConfig({displayName:"InfoList__Infos",componentId:"sc-1bggeo0-4"})(V||(V=n.__makeTemplateObject(["\n list-style: none;\n margin: 0;\n padding: 0;\n"],["\n list-style: none;\n margin: 0;\n padding: 0;\n"]))),bn=Z.default.li.withConfig({displayName:"InfoList__Content",componentId:"sc-1bggeo0-5"})(S||(S=n.__makeTemplateObject(["\n display: -ms-grid;\n display: grid;\n margin: 0;\n\n -ms-grid-columns: min-content 1fr;\n grid-template-columns: min-content 1fr;\n -ms-grid-rows: min-content 1fr;\n grid-auto-rows: min-content 1fr;\n\n & + & {\n margin-top: ","px;\n }\n\n & > * + * {\n margin-left: ","px;\n }\n"],["\n display: -ms-grid;\n display: grid;\n margin: 0;\n\n -ms-grid-columns: min-content 1fr;\n grid-template-columns: min-content 1fr;\n -ms-grid-rows: min-content 1fr;\n grid-auto-rows: min-content 1fr;\n\n & + & {\n margin-top: ","px;\n }\n\n & > * + * {\n margin-left: ","px;\n }\n"])),2*i.spacings.nudge,2*i.spacings.nudge),_n=Z.default(o.Copy).withConfig({displayName:"InfoList__Icon",componentId:"sc-1bggeo0-6"})(H||(H=n.__makeTemplateObject(["\n height: 20px;\n width: 20px;\n\n & > * {\n height: 20px;\n width: 20px;\n }\n"],["\n height: 20px;\n width: 20px;\n\n & > * {\n height: 20px;\n width: 20px;\n }\n"]))),yn=function(n){var e=n.isInverted,t=n.items,i=n.className;return Y.default.createElement(gn,{className:i},Y.default.createElement(vn,null,null==t?void 0:t.map((function(n,t){var i,a=(null===(i=null==n?void 0:n.items)||void 0===i?void 0:i.filter((function(n){return n.text})))||[],l=p.isValidArray(a,!1);return Y.default.createElement(xn,{key:t},n.title&&Y.default.createElement(hn,{size:"small",type:"copy-b",renderAs:"span",isInverted:e},n.title),l&&Y.default.createElement(wn,null,a.map((function(n,t){return Y.default.createElement(bn,{key:t},Y.default.createElement(_n,{isInverted:e},n.icon&&n.icon(e)),n.text&&Y.default.createElement(o.Copy,{size:"small",isInverted:e,innerHTML:n.text,allowLinkIcons:!1}))}))))}))))},In=Z.default.div.withConfig({displayName:"HeaderKenBurns__AnimationContainer",componentId:"sc-1hmc5d0-0"})(F||(F=n.__makeTemplateObject(["\n position: relative;\n width: 100%;\n height: 100%;\n overflow: hidden;\n"],["\n position: relative;\n width: 100%;\n height: 100%;\n overflow: hidden;\n"]))),kn=Z.default(r.Image).withConfig({displayName:"HeaderKenBurns__PosterImage",componentId:"sc-1hmc5d0-1"})(M||(M=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n\n height: 100%;\n width: 100%;\n\n img {\n height: 100%;\n }\n"],["\n position: absolute;\n top: 0;\n left: 0;\n\n height: 100%;\n width: 100%;\n\n img {\n height: 100%;\n }\n"]))),Cn=Z.default.img.withConfig({displayName:"HeaderKenBurns__AnimationImage",componentId:"sc-1hmc5d0-2"})(R||(R=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n\n object-fit: cover;\n object-position: center;\n\n transition-property: opacity, transform;\n transition-duration: ",";\n transition-delay: ",";\n\n opacity: ",";\n transform: scale(",")\n rotate(","deg);\n transform-origin: ",";\n\n will-change: transform, opacity;\n"],["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n\n object-fit: cover;\n object-position: center;\n\n transition-property: opacity, transform;\n transition-duration: ",";\n transition-delay: ",";\n\n opacity: ",";\n transform: scale(",")\n rotate(","deg);\n transform-origin: ",";\n\n will-change: transform, opacity;\n"])),(function(n){var e=n.scale;return"2s, ".concat(1===e?"0s":"13s")}),(function(n){var e=n.scale;return"".concat(1===e?"1s":"0s",", ").concat(1===e?"3s":"0s")}),(function(n){var e=n.opacity;return e&&e}),(function(n){return n.scale||1}),(function(n){return 1!==n.scale?.04:0}),(function(n){var e=n.zoomPoint;return e?"".concat(100*e[0],"% ").concat(100*e[1],"%"):"center"})),jn=function(n){var t=n.zoom,i=void 0===t?1.08:t,a=n.zoomPoint,o=void 0===a?[.5,.5]:a,l=n.interval,r=void 0===l?1e4:l,d=n.images,s=n.onChange,c=e.useRef(),p=e.useRef(),m=e.useState(-1),u=m[0],f=m[1];return e.useEffect((function(){var n=function(){f((function(n){return(n+1)%d.length}))};return p.current=window.setTimeout(n,200),c.current&&window.clearInterval(c.current),c.current=window.setInterval(n,r),function(){p.current&&window.clearTimeout(p.current),c.current&&window.clearInterval(c.current)}}),[d,r]),e.useEffect((function(){-1!==u&&s&&s(u)}),[u]),Y.default.createElement(Y.default.Fragment,null,d.map((function(n,e){var t=1,a=o;return e===u&&(t=void 0!==n.zoom?n.zoom:i),n.zoomPoint&&(a=Tn(n.zoomPoint)),Y.default.createElement(Cn,{key:e,style:{zIndex:e===u?1:0},src:n.image,scale:t,opacity:e===u?1:0,zoomPoint:a,alt:n.alt||""})})))},Tn=function(n){return[u.clampValue(n[0],0,1),u.clampValue(n[1],0,1)]},En=Z.default.div.withConfig({displayName:"HeaderPoster__PosterView",componentId:"sc-9zhj-0"})(D||(D=n.__makeTemplateObject(["\n position: relative;\n width: 100%;\n height: 100%;\n"],["\n position: relative;\n width: 100%;\n height: 100%;\n"]))),On=Z.default(r.Image).withConfig({displayName:"HeaderPoster__BgImage",componentId:"sc-9zhj-1"})(K||(K=n.__makeTemplateObject(["\n height: 100%;\n\n img {\n height: 100%;\n object-position: ",";\n }\n"],["\n height: 100%;\n\n img {\n height: 100%;\n object-position: ",";\n }\n"])),(function(n){var e=n.focus;return"".concat((null==e?void 0:e[0])||"center"," ").concat((null==e?void 0:e[1])||"center")})),Nn=Z.default.div.withConfig({displayName:"HeaderVideo__PosterView",componentId:"sc-i0iu8j-0"})(G||(G=n.__makeTemplateObject(["\n position: relative;\n width: 100%;\n height: 100%;\n"],["\n position: relative;\n width: 100%;\n height: 100%;\n"]))),qn=Z.default(r.Image).withConfig({displayName:"HeaderVideo__PlaceholderImg",componentId:"sc-i0iu8j-1"})(Q||(Q=n.__makeTemplateObject(["\n position: relative;\n height: 100%;\n\n img {\n object-position: ",";\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n z-index: 0;\n }\n\n margin: 0 auto;\n\n @media "," {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: ","px;\n z-index: 2;\n\n & > * {\n margin-top: ","px;\n max-width: 880px;\n }\n }\n"],["\n position: relative;\n height: 100%;\n\n img {\n object-position: ",";\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n z-index: 0;\n }\n\n margin: 0 auto;\n\n @media "," {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: ","px;\n z-index: 2;\n\n & > * {\n margin-top: ","px;\n max-width: 880px;\n }\n }\n"])),(function(n){var e=n.focus;return"".concat((null==e?void 0:e[0])||"center"," ").concat((null==e?void 0:e[1])||"center")}),i.mq.medium,2*i.spacings.spacer,i.spacings.spacer),zn=Z.default.video.withConfig({displayName:"HeaderVideo__AutoplayVideo",componentId:"sc-i0iu8j-2"})(U||(U=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: cover;\n object-position: ",";\n opacity: ",";\n pointer-events: none;\n z-index: 1;\n\n transition: opacity 0.3s ease-in-out;\n"],["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: cover;\n object-position: ",";\n opacity: ",";\n pointer-events: none;\n z-index: 1;\n\n transition: opacity 0.3s ease-in-out;\n"])),(function(n){var e=n.focus;return"".concat((null==e?void 0:e[0])||"center"," ").concat((null==e?void 0:e[1])||"center")}),(function(n){return n.isVisible?1:0})),Pn=Z.default.div.withConfig({displayName:"VideoBlock__AspectContainer",componentId:"sc-160aafd-0"})(J||(J=n.__makeTemplateObject(["\n position: relative;\n border-radius: ",";\n overflow: hidden;\n\n aspect-ratio: ",";\n width: ",";\n max-width: 100%;\n\n background: ",";\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ",";\n padding-top: ",";\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n ","\n"],["\n position: relative;\n border-radius: ",";\n overflow: hidden;\n\n aspect-ratio: ",";\n width: ",";\n max-width: 100%;\n\n background: ",";\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ",";\n padding-top: ",";\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n ","\n"])),(function(n){var e=n.theme;return i.getGlobals(e).sections.edgeRadius}),(function(n){var e=n.ratios;return null==e?void 0:e.small}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&"100%"}),(function(n){var e=n.theme;return n.isInverted?i.getGlobals(e).sections.imagePlaceholderBg.inverted:i.getGlobals(e).sections.imagePlaceholderBg.default}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&0}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&"calc(100% / ".concat(null==e?void 0:e.small,")")}),i.mq.medium,(function(n){var e=n.ratios;return null==e?void 0:e.medium}),(function(n){var e=n.ratios;return(null==e?void 0:e.medium)&&"calc(100% / ".concat(null==e?void 0:e.medium,")")}),i.mq.semilarge,(function(n){var e=n.ratios;return null==e?void 0:e.semilarge}),(function(n){var e=n.ratios;return(null==e?void 0:e.semilarge)&&"calc(100% / ".concat(null==e?void 0:e.semilarge,")")}),i.mq.large,(function(n){var e=n.ratios;return null==e?void 0:e.large}),(function(n){var e=n.ratios;return(null==e?void 0:e.large)&&"calc(100% / ".concat(null==e?void 0:e.large,")")}),i.mq.xlarge,(function(n){var e=n.ratios;return null==e?void 0:e.xlarge}),(function(n){var e=n.ratios;return(null==e?void 0:e.xlarge)&&"calc(100% / ".concat(null==e?void 0:e.xlarge,")")}),(function(e){return e.ratios&&t.css(W||(W=n.__makeTemplateObject(["\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n "],["\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n "])))})),Bn=Z.default.video.withConfig({displayName:"VideoBlock__Video",componentId:"sc-160aafd-1"})(X||(X=n.__makeTemplateObject(["\n display: block;\n"],["\n display: block;\n"]))),An=e.forwardRef((function(n,t){var i=n.urls,a=n.ratios,o=n.isInverted,l=n.muted,r=void 0!==l&&l,d=n.autoPlay,s=void 0!==d&&d,c=n.loop,p=void 0!==c&&c,m=n.controls,u=void 0!==m&&m,f=n.playsInline,g=void 0===f||f,v=n.onCanPlayThrough,x=n.className,h=e.useRef(null);return e.useImperativeHandle(t,(function(){return h.current})),e.useEffect((function(){h.current&&h.current.readyState>3&&(null==v||v())}),[v]),Y.default.createElement(Pn,{ratios:a,isInverted:o,className:x},Y.default.createElement(Bn,{ref:h,muted:r,autoPlay:s,loop:p,controls:u,onCanPlayThrough:v,playsInline:g},null==i?void 0:i.map((function(n,e){return Y.default.createElement("source",{src:n,key:e})}))))}));An.displayName="VideoBlock";var Ln,Vn,Sn,Hn,Fn,Mn,Rn,Dn,Kn,Gn,Qn=Z.default.div.withConfig({displayName:"POIFacts__View",componentId:"sc-zp61fw-0"})(Ln||(Ln=n.__makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -","px;\n margin-left: -","px;\n\n &:not(:first-child) {\n margin-top: ","px;\n }\n"],["\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -","px;\n margin-left: -","px;\n\n &:not(:first-child) {\n margin-top: ","px;\n }\n"])),i.spacings.nudge,2*i.spacings.nudge,3*i.spacings.nudge),Un=Z.default.div.withConfig({displayName:"POIFacts__FactsWrapper",componentId:"sc-zp61fw-1"})(Vn||(Vn=n.__makeTemplateObject(["\n padding-top: ","px;\n padding-left: ","px;\n"],["\n padding-top: ","px;\n padding-left: ","px;\n"])),i.spacings.nudge,2*i.spacings.nudge),Wn=Z.default.span.withConfig({displayName:"POIFacts__Fact",componentId:"sc-zp61fw-2"})(Sn||(Sn=n.__makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n ","\n color: ",";\n\n & > * + * {\n margin-left: ","px;\n }\n"],["\n display: inline-flex;\n align-items: center;\n ","\n color: ",";\n\n & > * + * {\n margin-left: ","px;\n }\n"])),o.copyStyle("copy","medium"),(function(n){var e=n.theme;return n.isInverted?i.getColors(e).text.copyInverted:i.getColors(e).text.copy}),.5*i.spacings.nudge),Jn=function(e){var t=e.facts,i=e.customFact,a=e.isInverted;return Y.default.createElement(Qn,null,t.map((function(e,t){return Y.default.createElement(Un,{key:"tag_"+t},i?i({key:"headtag-".concat(t),name:e||"",isInverted:a}):Y.default.createElement(Wn,{isInverted:a},Y.default.createElement(n.Check,null),Y.default.createElement("span",null,e)))})))},Xn=Z.default.div.withConfig({displayName:"POICard__View",componentId:"sc-1l0tnmw-0"})(Hn||(Hn=n.__makeTemplateObject(["\n border: 1px solid\n ",";\n padding: ","px;\n border-radius: ","px;\n overflow: hidden;\n\n & > * + * {\n margin-top: ","px;\n }\n"],["\n border: 1px solid\n ",";\n padding: ","px;\n border-radius: ","px;\n overflow: hidden;\n\n & > * + * {\n margin-top: ","px;\n }\n"])),(function(n){var e=n.theme;return n.isInverted?i.getColors(e).elementBg.light:i.getColors(e).elementBg.dark}),2*i.spacings.nudge,i.spacings.nudge,3*i.spacings.nudge),Yn=Z.default(o.Copy).withConfig({displayName:"POICard__Title",componentId:"sc-1l0tnmw-1"})(Fn||(Fn=n.__makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ","px;\n }\n"],["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ","px;\n }\n"])),3*i.spacings.nudge),Zn=Z.default(o.Copy).withConfig({displayName:"POICard__Description",componentId:"sc-1l0tnmw-2"})(Mn||(Mn=n.__makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n"],["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n"]))),$n=Z.default.div.withConfig({displayName:"POICard__Body",componentId:"sc-1l0tnmw-3"})(Rn||(Rn=n.__makeTemplateObject(["\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media "," {\n margin-left: -","px;\n margin-right: -","px;\n\n & > * + * {\n border-left: 1px solid\n ",";\n }\n }\n"],["\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media "," {\n margin-left: -","px;\n margin-right: -","px;\n\n & > * + * {\n border-left: 1px solid\n ",";\n }\n }\n"])),i.mq.semilarge,i.spacings.spacer,i.spacings.spacer,(function(n){var e=n.theme;return n.isInverted?i.getColors(e).elementBg.light:i.getColors(e).elementBg.dark})),ne=Z.default.div.withConfig({displayName:"POICard__Col",componentId:"sc-1l0tnmw-4"})(Dn||(Dn=n.__makeTemplateObject(["\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n flex: 1 0 60%;\n padding: 0 ","px;\n }\n\n @media "," {\n flex: 1 0 ","%;\n }\n"],["\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n flex: 1 0 60%;\n padding: 0 ","px;\n }\n\n @media "," {\n flex: 1 0 ","%;\n }\n"])),3*i.spacings.nudge,i.mq.semilarge,i.spacings.spacer,i.mq.large,2/3*100),ee=Z.default(ne).withConfig({displayName:"POICard__InfoCol",componentId:"sc-1l0tnmw-5"})(Kn||(Kn=n.__makeTemplateObject(["\n display: none;\n margin-bottom: ","px;\n\n @media "," {\n display: block;\n flex: 1 0 40%;\n }\n\n @media "," {\n display: block;\n flex: 1 0 ","%;\n }\n"],["\n display: none;\n margin-bottom: ","px;\n\n @media "," {\n display: block;\n flex: 1 0 40%;\n }\n\n @media "," {\n display: block;\n flex: 1 0 ","%;\n }\n"])),2*i.spacings.nudge,i.mq.semilarge,i.mq.large,1/3*100),te=Z.default.div.withConfig({displayName:"POICard__Action",componentId:"sc-1l0tnmw-6"})(Gn||(Gn=n.__makeTemplateObject([""],[""])));exports.EventBlock=function(t){var i=t.customTag,l=t.onTagClick,c=t.title,m=t.image,u=t.date,f=t.text,g=t.link,v=t.tags,x=t.isInverted,h=t.action,w=s.useLibTheme().globals,b="";u&&(b=new d.StatusFormatter(u.getTime(),"",w.sections.eventDateFormat(u),w.sections.eventTimeFormat(u),w.sections.eventLocaleKey).getFormattedDate());var _=function(n){return l?function(e){null==e||e.preventDefault(),l(n)}:void 0},y=e.useMemo((function(){return null==v?void 0:v.filter((function(n){return n.name}))}),[v]);return Y.default.createElement(rn,null,(null==m?void 0:m.small)&&Y.default.createElement(dn,null,Y.default.createElement(r.Image,n.__assign({},m,{coverSpace:!0,allowEdgeRadius:!0,isInverted:x,ratios:{small:{w:640,h:320},medium:{w:752,h:276},large:{w:375,h:250}}}))),Y.default.createElement(sn,null,p.isValidArray(y,!1)&&Y.default.createElement(cn,null,y.map((function(n,e){return n&&Y.default.createElement(mn,{key:"tag_"+e},i?i({key:"tag_"+e,name:n.name||"",isInverted:x,isActive:!1,link:n.link||{},clickHandler:_(n)}):Y.default.createElement(a.Tag,{isInverted:x,name:n.name,link:n.link,onClick:_(n)}))}))),Y.default.createElement(pn,null,u&&Y.default.createElement(o.Copy,{isInverted:x,size:"medium",type:"copy"},b),c&&Y.default.createElement(un,n.__assign({},g,{isInverted:x}),c)),f&&Y.default.createElement(fn,{size:"small",isInverted:x,innerHTML:f}),h&&Y.default.createElement("div",null," ",h({isInverted:x})," ")))},exports.HeaderKenBurns=function(t){var i=t.images,a=t.zoom,o=void 0===a?1.08:a,l=t.zoomPoint,r=void 0===l?[.5,.5]:l,d=t.interval,s=void 0===d?1e4:d,c=t.onImageChange,p=t.className,u=t.children,f=m.useMediaQuery(["small","medium","large","xlarge"]),g=e.useState({small:[],medium:[],large:[],xlarge:[]}),v=g[0],x=g[1];return e.useEffect((function(){var e;if(f&&(v[f].length<i.length&&i.length>=2)){var t=i.map((function(n,e){return{id:e,image:n[f],zoom:n.zoom||o,zoomPoint:n.zoomPoint||r,alt:n.alt}}));e=function(n){return n.map((function(n){return new Promise((function(e){var t=new window.Image;t.src=n.image,t.onload=function(){return e(n)}}))}))}(t),n.__awaiter(void 0,void 0,void 0,(function(){var t,i,a,o;return n.__generator(this,(function(l){switch(l.label){case 0:t=function(e){var t;return n.__generator(this,(function(i){switch(i.label){case 0:return[4,e];case 1:return t=i.sent(),x((function(e){var i;return e[f].find((function(n){return n.id===t.id}))?e:n.__assign(n.__assign({},e),((i={})[f]=n.__spreadArray(n.__spreadArray([],e[f],!0),[t],!1),i))})),[2]}}))},i=0,a=e,l.label=1;case 1:return i<a.length?(o=a[i],[5,t(o)]):[3,4];case 2:l.sent(),l.label=3;case 3:return i++,[3,1];case 4:return[2]}}))}))}}),[f,i,v,o,r]),Y.default.createElement(In,{className:p},Y.default.createElement(kn,n.__assign({},i[0],{coverSpace:!0,ratios:void 0})),f&&v[f].length>=i.length&&Y.default.createElement(jn,{zoom:o,zoomPoint:Tn(r),interval:s,images:v[f],onChange:function(n){return i[n]&&c&&c(i[n])}}),u)},exports.HeaderPoster=function(e){var t=e.isInverted,i=e.bgImage,a=e.focus,o=e.className,l=e.children;return Y.default.createElement(En,{className:o},i&&Y.default.createElement(On,n.__assign({},i,{coverSpace:!0,ratios:void 0,isInverted:t,focus:a})),l)},exports.HeaderVideo=function(t){var i=t.isInverted,a=t.loadOnMobile,o=void 0===a||a,l=t.placeholderImg,r=t.focus,d=t.videoUrl,s=t.className,c=t.children,p=e.useRef(null),u=e.useRef(null),v=e.useState(!(null==l?void 0:l.small)||!1),x=v[0],h=v[1],w=f.useObserverSupport(),b=m.useMediaQuery(["small","medium","semilarge","large","xlarge"]),_=void 0===b||"small"===b,y=o||!_,I=e.useState(!1),k=I[0],C=I[1];return e.useEffect((function(){y||h(!1)}),[_,y,o]),e.useEffect((function(){p.current&&p.current.readyState>3&&h(!0)}),[]),g.useUpdateEffect((function(){if(y&&d&&u.current){if(w){var n=new IntersectionObserver((function(n,e){var t=n[0];t.isIntersecting&&(e.unobserve(t.target),C(!0))}),{rootMargin:"200px 0px 200px 0px"}),e=u.current;return n.observe(e),function(){e&&n.unobserve(e)}}C(!0)}}),[w,y]),Y.default.createElement(Nn,{ref:u,className:s},(null==l?void 0:l.small)&&!x&&Y.default.createElement(qn,n.__assign({},l,{coverSpace:!0,ratios:void 0,isInverted:i,focus:r})),d&&y&&Y.default.createElement(zn,{ref:p,isVisible:x,src:k?d:void 0,muted:!0,autoPlay:!0,loop:!0,playsInline:!0,onCanPlayThrough:function(){h(!0)},focus:r}),c)},exports.InfoList=yn,exports.IntroBlock=function(e){var t=e.renderAs,i=void 0===t?"div":t,a=e.colorMode,o=void 0===a?"default":a,l=e.title,d=e.titleAs,s=e.titleSize,c=void 0===s?"heading-2":s,p=e.superTitle,m=e.superTitleAs,u=e.abstract,f=e.text,g=e.textType,v=void 0===g?"copy":g,x=e.textSize,h=void 0===x?"medium":x,w=e.primaryAction,b=e.secondaryAction,_=e.isCentered,y=void 0!==_&&_,I=e.clampTitle,k=void 0!==I&&I,C=e.clampAbstract,j=void 0!==C&&C,T=e.maxTitleLines,E=e.maxAbstractLines,O=e.clampText,N=void 0!==O&&O,q=e.maxTextLines,z=e.className,P=e.titleHyphens,B=e.image,A="inverted"===o||"onImage"===o,L=!1!==(null==B?void 0:B.coverSpace);return Y.default.createElement($,{as:i,isCentered:y,className:z},Y.default.createElement(nn,null,(l||p)&&Y.default.createElement(en,{colorMode:o,title:l,titleAs:d,titleSize:c,superTitle:p,superTitleAs:m,isCentered:y,clamp:k,maxLines:T,titleHyphens:P}),(null==B?void 0:B.small)&&Y.default.createElement(on,{isCentered:y},Y.default.createElement(r.Image,n.__assign({},B,{coverSpace:L,allowEdgeRadius:!0,isInverted:A}))),u&&Y.default.createElement(tn,{type:"copy",size:"big",textColor:"onImage"===o?"#fff":void 0,isInverted:A,isCentered:y,innerHTML:u,clamp:j,maxLines:E}),f&&Y.default.createElement(tn,{type:v,size:h,textColor:"onImage"===o?"#fff":void 0,isInverted:A,isCentered:y,innerHTML:f,clamp:N,maxLines:q}),(w||b)&&Y.default.createElement(an,{primary:w&&w(A),secondary:b&&b(A)})),(null==B?void 0:B.small)&&!y&&Y.default.createElement(ln,null,Y.default.createElement(r.Image,n.__assign({},B,{coverSpace:L,allowEdgeRadius:!0,isInverted:A}))))},exports.POICard=function(n){var e=n.isInverted,t=n.name,i=n.shortDescription,a=n.facts,o=n.infos,l=n.customFact,r=n.action,d=p.isValidArray(a,!1),s=p.isValidArray(o,!1);return Y.default.createElement(Xn,{isInverted:e},t&&Y.default.createElement(Yn,{type:"copy-b",size:"big",isInverted:e},t),(d||i||s||r)&&Y.default.createElement($n,{isInverted:e},Y.default.createElement(ne,null,p.isValidArray(a,!1)&&Y.default.createElement(Jn,{facts:a,isInverted:e,customFact:l}),i&&Y.default.createElement(Zn,{isInverted:e,innerHTML:i}),r&&Y.default.createElement(te,null,r(e))),p.isValidArray(o,!1)&&Y.default.createElement(ee,null,Y.default.createElement(yn,{isInverted:e,items:[{items:o}]}))))},exports.POIFacts=Jn,exports.VideoBlock=An;
2
- //# sourceMappingURL=POICard-9911980e.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"POICard-9911980e.js","sources":["../src/components/blocks/IntroBlock.tsx","../src/components/blocks/EventBlock.tsx","../src/components/blocks/InfoList.tsx","../src/components/sections/header/HeaderKenBurns.tsx","../src/components/sections/header/HeaderPoster.tsx","../src/components/sections/header/HeaderVideo.tsx","../src/components/blocks/VideoBlock.tsx","../src/components/blocks/POIFacts.tsx","../src/components/blocks/POICard.tsx"],"sourcesContent":["import React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { spacings, mq, FontOptions } from 'utils/styles';\n\nimport Title, { TitleSize } from 'components/blocks/Title';\nimport Copy, { CopyType } from 'components/typography/Copy';\nimport Actions from 'components/blocks/Actions';\nimport { HeadlineTag } from 'components/typography/Heading';\nimport Image, { ImageProps } from './Image';\n\nconst View = styled.div<{ isCentered?: boolean }>`\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n\n @media ${mq.semilarge} {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ${spacings.spacer}px;\n }\n }\n`;\n\nconst Content = styled.div`\n & > * + * {\n margin-top: ${spacings.spacer}px;\n }\n\n max-width: 100%;\n\n @media ${mq.semilarge} {\n flex: 1 0 66.66%;\n }\n`;\n\nconst StyledTitle = styled(Title)<{ clamp?: boolean }>`\n max-width: ${({ clamp }) => clamp && '880px'};\n`;\n\nconst ContentBlock = styled(Copy)<{\n isCentered?: boolean;\n clamp?: boolean;\n maxLines?: number;\n}>`\n display: block;\n max-width: ${({ clamp }) => clamp && '880px'};\n margin-left: ${({ isCentered }) => isCentered && 'auto'};\n margin-right: ${({ isCentered }) => isCentered && 'auto'};\n\n ${({ maxLines }) =>\n maxLines &&\n maxLines > 0 &&\n css`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ${maxLines}; /* number of lines to show */\n line-clamp: ${maxLines};\n -webkit-box-orient: vertical;\n `}\n\n & + & {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst StyledActions = styled(Actions)<{ isCentered?: boolean }>`\n @media ${mq.medium} {\n display: block;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n }\n`;\n\nconst MobileImageContainer = styled.div<{ isCentered?: boolean }>`\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: 400px;\n text-align: center;\n\n margin: 0 auto;\n margin-top: ${spacings.spacer}px;\n\n @media ${mq.semilarge} {\n display: ${({ isCentered }) => (isCentered ? 'block' : 'none')};\n }\n`;\n\nconst DesktopImageContainer = styled.div`\n display: none;\n width: 100%;\n\n @media ${mq.semilarge} {\n display: block;\n /* flex: 1 0 33.33%; */\n\n max-width: 400px;\n }\n`;\n\nconst IntroBlock: React.FC<{\n /** Define rendered HTML DOM tag of intro container */\n renderAs?: 'div' | 'figcaption';\n\n /** Color presets for text and blocks. onImage has always a white text color */\n colorMode?: 'default' | 'inverted' | 'onImage';\n\n /** Main title text */\n title?: string;\n\n /** Main title HTML tag type (h2, h3, h4...) */\n titleAs?: HeadlineTag;\n\n /** Main title size */\n titleSize?: TitleSize;\n\n /** Superior title that stands above main title */\n superTitle?: string;\n\n /** Superior title HTML tag type (h3, h4 ...) */\n superTitleAs?: HeadlineTag;\n\n /** Intro text underneath the title (richtext) */\n abstract?: string;\n\n /** Main intro text (richtext) */\n text?: string;\n\n /** Intro image. coverSpace defaults to true */\n image?: ImageProps;\n\n /** Copy type of intro text (limits richtext capabilites on textType == copy-b or copy-i) */\n textType?: CopyType;\n\n /** Copy size of intro text */\n textSize?: keyof FontOptions;\n\n /** Function to inject custom primary button */\n primaryAction?: (isInverted?: boolean) => React.ReactNode;\n\n /** Function to inject custom secondary button */\n secondaryAction?: (isInverted?: boolean) => React.ReactNode;\n\n /** Center text and actions */\n isCentered?: boolean;\n\n /** Clamp title to max width of 880px */\n clampTitle?: boolean;\n\n /** Limit lines of title. Cut of with elipsis */\n maxTitleLines?: number;\n\n /** Clamp text to max width of 880px */\n clampText?: boolean;\n\n /** Clamp abstract to max width of 880px */\n clampAbstract?: boolean;\n\n /** Limit lines of text. Cut of with elipsis */\n maxTextLines?: number;\n\n /** Limit lines of abstract text. Cut of with elipsis */\n maxAbstractLines?: number;\n\n /** Main title hyphens */\n titleHyphens?: boolean;\n\n className?: string;\n}> = ({\n renderAs = 'div',\n colorMode = 'default',\n title,\n titleAs,\n titleSize = 'heading-2',\n superTitle,\n superTitleAs,\n abstract,\n text,\n textType = 'copy',\n textSize = 'medium',\n primaryAction,\n secondaryAction,\n isCentered = false,\n clampTitle = false,\n clampAbstract = false,\n maxTitleLines,\n maxAbstractLines,\n clampText = false,\n maxTextLines,\n className,\n titleHyphens,\n image,\n}) => {\n const isInverted = colorMode === 'inverted' || colorMode === 'onImage';\n const coverSpace = image?.coverSpace === false ? false : true;\n\n return (\n <View as={renderAs} isCentered={isCentered} className={className}>\n <Content>\n {(title || superTitle) && (\n <StyledTitle\n colorMode={colorMode}\n title={title}\n titleAs={titleAs}\n titleSize={titleSize}\n superTitle={superTitle}\n superTitleAs={superTitleAs}\n isCentered={isCentered}\n clamp={clampTitle}\n maxLines={maxTitleLines}\n titleHyphens={titleHyphens}\n />\n )}\n {image?.small && (\n <MobileImageContainer isCentered={isCentered}>\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </MobileImageContainer>\n )}\n {abstract && (\n <ContentBlock\n type=\"copy\"\n size=\"big\"\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={abstract}\n clamp={clampAbstract}\n maxLines={maxAbstractLines}\n />\n )}\n {text && (\n <ContentBlock\n type={textType}\n size={textSize}\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={text}\n clamp={clampText}\n maxLines={maxTextLines}\n />\n )}\n {(primaryAction || secondaryAction) && (\n <StyledActions\n primary={primaryAction && primaryAction(isInverted)}\n secondary={\n secondaryAction && secondaryAction(isInverted)\n }\n />\n )}\n </Content>\n\n {image?.small && !isCentered && (\n <DesktopImageContainer>\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </DesktopImageContainer>\n )}\n </View>\n );\n};\n\nexport default IntroBlock;\n","import React, { useMemo } from 'react';\nimport styled from 'styled-components';\n\nimport Tag, { TagProps } from './Tag';\nimport Copy, { copyStyle } from 'components/typography/Copy';\nimport { spacings, mq, getFonts as font } from 'utils/styles';\nimport StatusFormatter from 'utils/statusFormatter';\nimport { useLibTheme } from 'utils/LibThemeProvider';\nimport Image, { ImageProps } from './Image';\nimport Link, { LinkProps } from 'components/typography/Link';\nimport { isValidArray } from 'utils/arrays';\n\nconst View = styled.div`\n text-decoration: none;\n color: inherit;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n\n @media ${mq.large} {\n display: flex;\n justify-content: flex-end;\n flex-direction: row-reverse;\n\n & > * + * {\n margin-top: 0;\n padding-right: ${spacings.spacer}px;\n }\n }\n`;\n\nconst ImageContainer = styled.div`\n flex: 0 1 30%;\n margin-left: auto;\n`;\n\nconst MainContent = styled.div`\n flex: 0 1 70%;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n\n @media ${mq.large} {\n max-width: 830px;\n }\n`;\n\nconst TagContainer = styled.div`\n margin-top: -${spacings.nudge}px;\n margin-left: -${spacings.nudge}px;\n\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n`;\n\nconst TitleWrapper = styled.div`\n & > * + * {\n margin-top: ${spacings.nudge}px;\n }\n`;\n\nconst TagWrapper = styled.div`\n padding-top: ${spacings.nudge}px;\n padding-left: ${spacings.nudge}px;\n`;\n\nconst TitleLink = styled(Link)`\n display: inline-block;\n ${copyStyle('copy-b', 'big')}\n\n color: ${({ theme, isInverted }) =>\n isInverted\n ? font(theme)['copy-b'].big.colorInverted\n : font(theme)['copy-b'].big.color};\n text-decoration: none;\n`;\n\nconst Text = styled(Copy)`\n display: -webkit-box;\n -webkit-line-clamp: 4;\n -webkit-box-orient: vertical;\n overflow: hidden;\n`;\n\nexport interface EventProps {\n /** Array of tag item settings */\n tags?: TagProps[];\n\n /** Active tags that are highlighted in this event */\n activeTags?: string[];\n\n /** Event image */\n image?: Omit<ImageProps, 'coverSpace' | 'ratios'>;\n\n /** Event title */\n title?: string;\n\n /** Event publish date */\n date?: Date;\n\n /** Event duration in seconds */\n duration?: number;\n\n /** Event text (richtext) */\n text?: string;\n\n /** Invert color and background for darker themes */\n isInverted?: boolean;\n\n /** Event link settings */\n link?: LinkProps;\n\n /** Function to inject action elements */\n action?: (props: { isInverted?: boolean }) => React.ReactNode;\n\n /** Function to inject custom tag node */\n customTag?: (props: {\n key: React.Key;\n name: string;\n isInverted?: boolean;\n isActive?: boolean;\n link: LinkProps;\n clickHandler?: (ev?: React.SyntheticEvent<HTMLElement>) => void;\n }) => React.ReactNode;\n\n /** Callback function if tag in news iten has been clicked */\n onTagClick?: (tag: TagProps) => void;\n}\n\nconst EventBlock: React.FC<EventProps> = ({\n customTag,\n onTagClick,\n title,\n image,\n date,\n text,\n link,\n tags,\n isInverted,\n action,\n}) => {\n const { globals } = useLibTheme();\n\n let publishedAt = '';\n if (date) {\n const formatter = new StatusFormatter(\n date.getTime(),\n '',\n globals.sections.eventDateFormat(date),\n globals.sections.eventTimeFormat(date),\n globals.sections.eventLocaleKey\n );\n publishedAt = formatter.getFormattedDate();\n }\n\n const handleTagClick = (tag: TagProps) =>\n onTagClick\n ? (ev?: React.SyntheticEvent<HTMLElement>) => {\n ev?.preventDefault();\n onTagClick(tag);\n }\n : undefined;\n\n const filteredTags = useMemo(() => {\n return tags?.filter((tag) => tag.name);\n }, [tags]);\n\n return (\n <View>\n {image?.small && (\n <ImageContainer>\n <Image\n {...image}\n coverSpace\n allowEdgeRadius\n isInverted={isInverted}\n ratios={{\n small: { w: 640, h: 320 },\n medium: { w: 752, h: 276 },\n large: { w: 375, h: 250 },\n }}\n />\n </ImageContainer>\n )}\n <MainContent>\n {isValidArray(filteredTags, false) && (\n <TagContainer>\n {filteredTags.map(\n (tag, i) =>\n tag && (\n <TagWrapper key={'tag_' + i}>\n {customTag ? (\n customTag({\n key: 'tag_' + i,\n name: tag.name || '',\n isInverted: isInverted,\n isActive: false,\n link: tag.link || {},\n clickHandler:\n handleTagClick(tag),\n })\n ) : (\n <Tag\n isInverted={isInverted}\n name={tag.name}\n link={tag.link}\n onClick={handleTagClick(tag)}\n />\n )}\n </TagWrapper>\n )\n )}\n </TagContainer>\n )}\n <TitleWrapper>\n {date && (\n <Copy isInverted={isInverted} size=\"medium\" type=\"copy\">\n {publishedAt}\n </Copy>\n )}\n {title && (\n <TitleLink {...link} isInverted={isInverted}>\n {title}\n </TitleLink>\n )}\n </TitleWrapper>\n {text && (\n <Text\n size=\"small\"\n isInverted={isInverted}\n innerHTML={text}\n />\n )}\n {action && <div> {action({ isInverted })} </div>}\n </MainContent>\n </View>\n );\n};\n\nexport default EventBlock;\n","import Copy from 'components/typography/Copy';\nimport React, { FC } from 'react';\nimport styled from 'styled-components';\nimport { isValidArray } from 'utils/arrays';\n\nimport { mq, spacings } from 'utils/styles';\n\nconst View = styled.div``;\n\nconst Container = styled.ul`\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin: 0;\n padding: 0;\n margin-left: -${spacings.spacer}px;\n margin-top: -${spacings.nudge * 5}px;\n list-style: none;\n`;\n\nconst Item = styled.li`\n flex: 1 1 100%;\n padding-left: ${spacings.spacer}px;\n padding-top: ${spacings.nudge * 5}px;\n\n @media ${mq.medium} {\n flex: 1 1 300px;\n }\n`;\n\nconst Title = styled(Copy)`\n display: block;\n margin-bottom: ${spacings.nudge * 3}px;\n`;\n\nconst Infos = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n`;\n\nconst Content = styled.li`\n display: -ms-grid;\n display: grid;\n margin: 0;\n\n -ms-grid-columns: min-content 1fr;\n grid-template-columns: min-content 1fr;\n -ms-grid-rows: min-content 1fr;\n grid-auto-rows: min-content 1fr;\n\n & + & {\n margin-top: ${spacings.nudge * 2}px;\n }\n\n & > * + * {\n margin-left: ${spacings.nudge * 2}px;\n }\n`;\n\nconst Icon = styled(Copy)`\n height: 20px;\n width: 20px;\n\n & > * {\n height: 20px;\n width: 20px;\n }\n`;\n\nexport interface InfoGroup {\n title?: string;\n items: Info[];\n}\n\nexport interface Info {\n /** icon injection function */\n icon?: (isInverted?: boolean) => React.ReactNode;\n /** info text (richtText) */\n text?: string;\n}\n\nconst InfoList: FC<{\n /** Invert text and icon color for dark backgrounds */\n isInverted?: boolean;\n\n /** Array of info groups */\n items?: InfoGroup[];\n\n className?: string;\n}> = ({ isInverted, items, className }) => {\n return (\n <View className={className}>\n <Container>\n {items?.map((group, i) => {\n const groupItems =\n group?.items?.filter((item) => item.text) || [];\n const hasItems = isValidArray(groupItems, false);\n\n return (\n <Item key={i}>\n {group.title && (\n <Title\n size=\"small\"\n type=\"copy-b\"\n renderAs=\"span\"\n isInverted={isInverted}\n >\n {group.title}\n </Title>\n )}\n {hasItems && (\n <Infos>\n {groupItems.map((info, ii) => (\n <Content key={ii}>\n <Icon isInverted={isInverted}>\n {info.icon &&\n info.icon(isInverted)}\n </Icon>\n {info.text && (\n <Copy\n size=\"small\"\n isInverted={isInverted}\n innerHTML={info.text}\n allowLinkIcons={false}\n />\n )}\n </Content>\n ))}\n </Infos>\n )}\n </Item>\n );\n })}\n </Container>\n </View>\n );\n};\n\nexport default InfoList;\n","import React, { FC, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { useMediaQuery } from 'utils/useMediaQuery';\nimport Image from 'components/blocks/Image';\nimport { clampValue } from 'utils/clamp';\nimport { HeaderImage } from './Header';\n\nconst AnimationContainer = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n overflow: hidden;\n`;\n\nconst PosterImage = styled(Image)`\n position: absolute;\n top: 0;\n left: 0;\n\n height: 100%;\n width: 100%;\n\n img {\n height: 100%;\n }\n`;\n\nconst AnimationImage = styled.img<{\n scale?: number;\n opacity?: number;\n zoomPoint?: [number, number];\n}>`\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n\n object-fit: cover;\n object-position: center;\n\n transition-property: opacity, transform;\n transition-duration: ${({ scale }) => `2s, ${scale === 1 ? '0s' : '13s'}`};\n transition-delay: ${({ scale }) =>\n `${scale === 1 ? '1s' : '0s'}, ${scale === 1 ? '3s' : '0s'}`};\n\n opacity: ${({ opacity }) => opacity && opacity};\n transform: scale(${({ scale }) => scale || 1})\n rotate(${({ scale }) => (scale !== 1 ? 0.04 : 0)}deg);\n transform-origin: ${({ zoomPoint }) =>\n zoomPoint ? `${zoomPoint[0] * 100}% ${zoomPoint[1] * 100}%` : 'center'};\n\n will-change: transform, opacity;\n`;\n\nconst AnimationImages: FC<{\n zoom?: number;\n zoomPoint?: [number, number];\n images: KenBurnsImage[];\n interval?: number;\n onChange?: (imgId: number) => void;\n}> = ({\n zoom = 1.08,\n zoomPoint = [0.5, 0.5],\n interval = 10000,\n images,\n onChange,\n}) => {\n const intervalRef = useRef<number | null>();\n const initialTimeoutRef = useRef<number | null>();\n const [activeImg, setActiveImg] = useState<number>(-1);\n\n useEffect(() => {\n const changeImage = () => {\n setActiveImg((prev) => {\n return (prev + 1) % images.length;\n });\n };\n\n // changeImage();\n initialTimeoutRef.current = window.setTimeout(changeImage, 200);\n if (intervalRef.current) window.clearInterval(intervalRef.current);\n intervalRef.current = window.setInterval(changeImage, interval);\n\n return () => {\n if (initialTimeoutRef.current)\n window.clearTimeout(initialTimeoutRef.current);\n if (intervalRef.current) window.clearInterval(intervalRef.current);\n };\n }, [images, interval]);\n\n useEffect(() => {\n if (activeImg !== -1) onChange && onChange(activeImg);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeImg]);\n\n return (\n <React.Fragment>\n {images.map((img, i) => {\n let imgZoom = 1;\n let imgZoomPoint = zoomPoint;\n\n if (i === activeImg) {\n imgZoom = img.zoom !== undefined ? img.zoom : zoom;\n }\n\n if (img.zoomPoint) {\n imgZoomPoint = getValidZoomPoint(img.zoomPoint);\n }\n\n return (\n <AnimationImage\n key={i}\n style={{\n zIndex: i === activeImg ? 1 : 0,\n }}\n src={img.image}\n scale={imgZoom}\n opacity={i === activeImg ? 1 : 0}\n zoomPoint={imgZoomPoint}\n alt={img.alt || ''}\n />\n );\n })}\n </React.Fragment>\n );\n};\n\nconst preloadImages = (images: KenBurnsImage[]): Promise<KenBurnsImage>[] => {\n const loadedImages: Promise<KenBurnsImage>[] = images.map((req) => {\n return new Promise((resolve) => {\n const img = new window.Image();\n img.src = req.image;\n img.onload = () => resolve(req);\n });\n });\n\n return loadedImages;\n};\n\ntype KenBurnsMq = 'small' | 'medium' | 'large' | 'xlarge';\n\ninterface KenBurnsImage {\n id: number | string;\n image: string;\n alt?: string;\n zoom?: number;\n zoomPoint?: [number, number];\n}\n\nconst getValidZoomPoint = (point: [number, number]) => {\n return [clampValue(point[0], 0, 1), clampValue(point[1], 0, 1)] as [\n number,\n number\n ];\n};\n\nconst HeaderKenBurns: React.FC<{\n images: HeaderImage[];\n zoom?: number;\n zoomPoint?: [number, number];\n interval?: number;\n onImageChange?: (currentImg: HeaderImage) => void;\n className?: string;\n children?: React.ReactNode;\n}> = ({\n images,\n zoom = 1.08,\n zoomPoint = [0.5, 0.5],\n interval = 10000,\n onImageChange,\n className,\n children,\n}) => {\n const mqs: KenBurnsMq[] = ['small', 'medium', 'large', 'xlarge'];\n const currentMq = useMediaQuery(mqs) as KenBurnsMq | undefined;\n\n const [loadedImages, setLoadedImages] = useState<{\n [key: string]: KenBurnsImage[];\n }>({\n small: [],\n medium: [],\n large: [],\n xlarge: [],\n });\n\n useEffect(() => {\n if (currentMq) {\n const loadedForMq = loadedImages[currentMq];\n\n if (loadedForMq.length < images.length && images.length >= 2) {\n const requestedImages: KenBurnsImage[] = images.map(\n (img, i) => ({\n id: i,\n image: img[currentMq] as string,\n zoom: img.zoom || zoom,\n zoomPoint: img.zoomPoint || zoomPoint,\n alt: img.alt,\n })\n );\n\n const resolve = async (\n imagePromises: Promise<KenBurnsImage>[]\n ) => {\n for (const promise of imagePromises) {\n const loadedImg = await promise;\n\n setLoadedImages((prev) => {\n // check if image id already exists in array\n if (\n !prev[currentMq].find(\n (e) => e.id === loadedImg.id\n )\n ) {\n return {\n ...prev,\n [currentMq]: [\n ...prev[currentMq],\n loadedImg,\n ],\n };\n } else return prev;\n });\n }\n };\n\n resolve(preloadImages(requestedImages));\n }\n }\n }, [currentMq, images, loadedImages, zoom, zoomPoint]);\n\n return (\n <AnimationContainer className={className}>\n <PosterImage {...images[0]} coverSpace ratios={undefined} />\n {currentMq && loadedImages[currentMq].length >= images.length && (\n <AnimationImages\n zoom={zoom}\n zoomPoint={getValidZoomPoint(zoomPoint)}\n interval={interval}\n images={loadedImages[currentMq]}\n onChange={(id) =>\n images[id] && onImageChange && onImageChange(images[id])\n }\n />\n )}\n {children}\n </AnimationContainer>\n );\n};\n\nexport default HeaderKenBurns;\n","import React from 'react';\nimport styled from 'styled-components';\n\nimport Image, { ImageProps } from 'components/blocks/Image';\nimport { HeaderFocus } from './Header';\n\nconst PosterView = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n`;\n\nconst BgImage = styled(Image)<{ focus?: HeaderFocus }>`\n height: 100%;\n\n img {\n height: 100%;\n object-position: ${({ focus }) =>\n `${focus?.[0] || 'center'} ${focus?.[1] || 'center'}`};\n }\n`;\n\nconst HeaderPoster: React.FC<{\n isInverted?: boolean;\n bgImage?: Omit<ImageProps, 'ratios' | 'coverSpace'>;\n focus?: HeaderFocus;\n className?: string;\n children?: React.ReactNode;\n}> = ({ isInverted, bgImage, focus, className, children }) => {\n return (\n <PosterView className={className}>\n {bgImage && (\n <BgImage\n {...bgImage}\n coverSpace\n ratios={undefined}\n isInverted={isInverted}\n focus={focus}\n />\n )}\n {children}\n </PosterView>\n );\n};\n\nexport default HeaderPoster;\n","import React, { useRef } from 'react';\nimport styled from 'styled-components';\n\nimport { useState, useEffect } from 'react';\nimport Image from 'components/blocks/Image';\nimport { useMediaQuery } from 'utils/useMediaQuery';\nimport { HeaderFocus, HeaderImage } from './Header';\nimport { mq, spacings } from 'utils/styles';\nimport { useObserverSupport } from 'utils/useObserverSupport';\nimport useUpdateEffect from 'utils/useUpdateEffect';\n\nconst PosterView = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n`;\n\nconst PlaceholderImg = styled(Image)<{ focus?: HeaderFocus }>`\n position: relative;\n height: 100%;\n\n img {\n object-position: ${({ focus }) =>\n `${focus?.[0] || 'center'} ${focus?.[1] || 'center'}`};\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n z-index: 0;\n }\n\n margin: 0 auto;\n\n @media ${mq.medium} {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: ${spacings.spacer * 2}px;\n z-index: 2;\n\n & > * {\n margin-top: ${spacings.spacer}px;\n max-width: 880px;\n }\n }\n`;\n\nconst AutoplayVideo = styled.video<{\n isVisible?: boolean;\n focus?: HeaderFocus;\n}>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: cover;\n object-position: ${({ focus }) =>\n `${focus?.[0] || 'center'} ${focus?.[1] || 'center'}`};\n opacity: ${({ isVisible }) => (isVisible ? 1 : 0)};\n pointer-events: none;\n z-index: 1;\n\n transition: opacity 0.3s ease-in-out;\n`;\n\ntype HeaderVideoMq = 'small' | 'medium' | 'semilarge' | 'large' | 'xlarge';\n\nconst HeaderVideo: React.FC<{\n isInverted?: boolean;\n loadOnMobile?: boolean;\n placeholderImg?: HeaderImage;\n focus?: HeaderFocus;\n videoUrl?: string;\n className?: string;\n children?: React.ReactNode;\n}> = ({\n isInverted,\n loadOnMobile = true,\n placeholderImg,\n focus,\n videoUrl,\n className,\n children,\n}) => {\n const videoRef = useRef<HTMLVideoElement | null>(null);\n const viewRef = useRef<HTMLDivElement | null>(null);\n const [isLoaded, setLoaded] = useState<boolean>(\n !placeholderImg?.small || false\n );\n const isObserverSupported = useObserverSupport();\n const currentMq = useMediaQuery([\n 'small',\n 'medium',\n 'semilarge',\n 'large',\n 'xlarge',\n ]) as HeaderVideoMq | undefined;\n\n const isMobile = currentMq === undefined || currentMq === 'small';\n const isVideoAllowed = loadOnMobile || !isMobile;\n\n const [isVideoActive, setVideoActive] = useState<boolean>(false);\n\n useEffect(() => {\n if (!isVideoAllowed) setLoaded(false);\n }, [isMobile, isVideoAllowed, loadOnMobile]);\n\n useEffect(() => {\n if (!videoRef.current) return;\n\n if (videoRef.current.readyState > 3) {\n setLoaded(true);\n }\n }, []);\n\n useUpdateEffect(() => {\n if (!isVideoAllowed || !videoUrl || !viewRef.current) return;\n if (!isObserverSupported) {\n setVideoActive(true);\n return;\n }\n\n const observer = new IntersectionObserver(\n (entries, observer) => {\n const [entry] = entries;\n\n if (entry.isIntersecting) {\n observer.unobserve(entry.target);\n setVideoActive(true);\n }\n },\n {\n rootMargin: '200px 0px 200px 0px',\n }\n );\n\n const viewEl = viewRef.current;\n observer.observe(viewEl);\n\n return () => {\n if (viewEl) observer.unobserve(viewEl);\n };\n }, [isObserverSupported, isVideoAllowed]);\n\n return (\n <PosterView ref={viewRef} className={className}>\n {placeholderImg?.small && !isLoaded && (\n <PlaceholderImg\n {...placeholderImg}\n coverSpace\n ratios={undefined}\n isInverted={isInverted}\n focus={focus}\n />\n )}\n {videoUrl && isVideoAllowed && (\n <AutoplayVideo\n ref={videoRef}\n isVisible={isLoaded}\n src={isVideoActive ? videoUrl : undefined}\n muted\n autoPlay\n loop\n playsInline\n onCanPlayThrough={() => {\n setLoaded(true);\n }}\n focus={focus}\n />\n )}\n {children}\n </PosterView>\n );\n};\n\nexport default HeaderVideo;\n","import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n} from 'react';\nimport styled, { css } from 'styled-components';\nimport { getGlobals as global, mq } from 'utils/styles';\n\nconst AspectContainer = styled.div<{\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n}>`\n position: relative;\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n aspect-ratio: ${({ ratios }) => ratios?.small};\n width: ${({ ratios }) => ratios?.small && '100%'};\n max-width: 100%;\n\n background: ${({ theme, isInverted }) =>\n isInverted\n ? global(theme).sections.imagePlaceholderBg.inverted\n : global(theme).sections.imagePlaceholderBg.default};\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ${({ ratios }) => ratios?.small && 0};\n padding-top: ${({ ratios }) =>\n ratios?.small && `calc(100% / ${ratios?.small})`};\n }\n\n @media ${mq.medium} {\n aspect-ratio: ${({ ratios }) => ratios?.medium};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.medium && `calc(100% / ${ratios?.medium})`};\n }\n }\n\n @media ${mq.semilarge} {\n aspect-ratio: ${({ ratios }) => ratios?.semilarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.semilarge && `calc(100% / ${ratios?.semilarge})`};\n }\n }\n\n @media ${mq.large} {\n aspect-ratio: ${({ ratios }) => ratios?.large};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.large && `calc(100% / ${ratios?.large})`};\n }\n }\n\n @media ${mq.xlarge} {\n aspect-ratio: ${({ ratios }) => ratios?.xlarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.xlarge && `calc(100% / ${ratios?.xlarge})`};\n }\n }\n\n ${({ ratios }) =>\n ratios &&\n css`\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n `}\n`;\n\nconst Video = styled.video`\n display: block;\n`;\n\nexport interface VideoAspectRatios {\n small: number;\n medium?: number;\n semilarge?: number;\n large?: number;\n xlarge?: number;\n}\n\nexport interface VideoProps {\n urls?: string[];\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n\n muted?: boolean;\n autoPlay?: boolean;\n loop?: boolean;\n controls?: boolean;\n playsInline?: boolean;\n onCanPlayThrough?: () => void;\n}\n\nconst VideoBlock = forwardRef<\n HTMLVideoElement,\n VideoProps & { className?: string }\n>(\n (\n {\n urls,\n ratios,\n isInverted,\n muted = false,\n autoPlay = false,\n loop = false,\n controls = false,\n playsInline = true,\n onCanPlayThrough,\n className,\n },\n ref\n ) => {\n const videoRef = useRef<HTMLVideoElement | null>(null);\n\n useImperativeHandle<HTMLVideoElement | null, HTMLVideoElement | null>(\n ref,\n () => videoRef.current\n );\n\n useEffect(() => {\n if (videoRef.current && videoRef.current.readyState > 3) {\n onCanPlayThrough?.();\n }\n }, [onCanPlayThrough]);\n\n return (\n <AspectContainer\n ratios={ratios}\n isInverted={isInverted}\n className={className}\n >\n <Video\n ref={videoRef}\n muted={muted}\n autoPlay={autoPlay}\n loop={loop}\n controls={controls}\n onCanPlayThrough={onCanPlayThrough}\n playsInline={playsInline}\n >\n {urls?.map((url, i) => (\n <source src={url} key={i} />\n ))}\n </Video>\n </AspectContainer>\n );\n }\n);\n\nVideoBlock.displayName = 'VideoBlock';\n\nexport default VideoBlock;\n","import Check from 'components/base/icons/Check';\nimport { copyStyle } from 'components/typography/Copy';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { getColors as color, spacings } from 'utils/styles';\n\nconst View = styled.div`\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -${spacings.nudge}px;\n margin-left: -${spacings.nudge * 2}px;\n\n &:not(:first-child) {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst FactsWrapper = styled.div`\n padding-top: ${spacings.nudge}px;\n padding-left: ${spacings.nudge * 2}px;\n`;\n\nconst Fact = styled.span<{ isInverted?: boolean }>`\n display: inline-flex;\n align-items: center;\n ${copyStyle('copy', 'medium')}\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.copyInverted : color(theme).text.copy};\n\n & > * + * {\n margin-left: ${spacings.nudge * 0.5}px;\n }\n`;\n\nconst POIFacts: React.FC<{\n facts: string[];\n customFact?: (props: {\n key: React.Key;\n name: string;\n isInverted?: boolean;\n }) => React.ReactNode;\n isInverted?: boolean;\n}> = ({ facts, customFact, isInverted }) => {\n return (\n <View>\n {facts.map((fact, i) => (\n <FactsWrapper key={'tag_' + i}>\n {customFact ? (\n customFact({\n key: `headtag-${i}`,\n name: fact || '',\n isInverted: isInverted,\n })\n ) : (\n <Fact isInverted={isInverted}>\n <Check />\n <span>{fact}</span>\n </Fact>\n )}\n </FactsWrapper>\n ))}\n </View>\n );\n};\n\nexport default POIFacts;\n","import React from 'react';\nimport styled from 'styled-components';\n\nimport POIFacts from 'components/blocks/POIFacts';\nimport Copy from 'components/typography/Copy';\nimport { isValidArray } from 'utils/arrays';\nimport { getColors as color, mq, spacings } from 'utils/styles';\nimport InfoList, { Info } from './InfoList';\n\nconst View = styled.div<{ isInverted?: boolean }>`\n border: 1px solid\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).elementBg.light\n : color(theme).elementBg.dark};\n padding: ${spacings.nudge * 2}px;\n border-radius: ${spacings.nudge}px;\n overflow: hidden;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst Title = styled(Copy)`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst Description = styled(Copy)`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n`;\n\nconst Body = styled.div<{ isInverted?: boolean }>`\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media ${mq.semilarge} {\n margin-left: -${spacings.spacer}px;\n margin-right: -${spacings.spacer}px;\n\n & > * + * {\n border-left: 1px solid\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).elementBg.light\n : color(theme).elementBg.dark};\n }\n }\n`;\n\nconst Col = styled.div`\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n\n @media ${mq.semilarge} {\n flex: 1 0 60%;\n padding: 0 ${spacings.spacer}px;\n }\n\n @media ${mq.large} {\n flex: 1 0 ${(2 / 3) * 100}%;\n }\n`;\n\nconst InfoCol = styled(Col)`\n display: none;\n margin-bottom: ${spacings.nudge * 2}px;\n\n @media ${mq.semilarge} {\n display: block;\n flex: 1 0 40%;\n }\n\n @media ${mq.large} {\n display: block;\n flex: 1 0 ${(1 / 3) * 100}%;\n }\n`;\n\nconst Action = styled.div``;\n\nexport type POILocation = {\n address: string;\n street: string;\n postalCode: string;\n city: string;\n coordinates?: { lat: number; long: number };\n mail: string;\n phone: string;\n web: string;\n};\n\nexport type POIContact = {\n name: string;\n position: string;\n street: string;\n postalCode: string;\n city: string;\n mail: string;\n phone: string;\n};\n\nexport interface POICardProps {\n /** Invert text and background for use on dark sections */\n isInverted?: boolean;\n\n /** POI name */\n name: string;\n\n /** Short POI description text (RichText) */\n shortDescription?: string;\n\n /** Array of additional POI informations */\n infos?: Info[];\n\n /** Array of POI facts */\n facts?: string[];\n\n /** Function to inject custom fact node */\n customFact?: (props: {\n key: React.Key;\n name: string;\n isInverted?: boolean;\n }) => React.ReactNode;\n\n /** Function to inject custom action node */\n action?: (isInverted?: boolean) => React.ReactNode;\n}\n\nconst POICard: React.FC<POICardProps> = ({\n isInverted,\n name,\n shortDescription,\n facts,\n infos,\n customFact,\n action,\n}) => {\n const hasFacts = isValidArray(facts, false);\n const hasInfos = isValidArray(infos, false);\n\n return (\n <View isInverted={isInverted}>\n {name && (\n <Title type=\"copy-b\" size=\"big\" isInverted={isInverted}>\n {name}\n </Title>\n )}\n {(hasFacts || shortDescription || hasInfos || action) && (\n <Body isInverted={isInverted}>\n <Col>\n {isValidArray(facts, false) && (\n <POIFacts\n facts={facts}\n isInverted={isInverted}\n customFact={customFact}\n />\n )}\n {shortDescription && (\n <Description\n isInverted={isInverted}\n innerHTML={shortDescription}\n />\n )}\n {action && <Action>{action(isInverted)}</Action>}\n </Col>\n {isValidArray(infos, false) && (\n <InfoCol>\n <InfoList\n isInverted={isInverted}\n items={[\n {\n items: infos,\n },\n ]}\n />\n </InfoCol>\n )}\n </Body>\n )}\n </View>\n );\n};\n\nexport default POICard;\n"],"names":["View","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","isCentered","mq","semilarge","spacings","spacer","Content","templateObject_2","StyledTitle","Title","templateObject_3","clamp","ContentBlock","Copy","templateObject_5","maxLines","css","nudge","StyledActions","Actions","medium","MobileImageContainer","templateObject_7","DesktopImageContainer","templateObject_8","large","ImageContainer","MainContent","TagContainer","templateObject_4","TitleWrapper","TagWrapper","templateObject_6","TitleLink","Link","copyStyle","theme","isInverted","font","getFonts","big","colorInverted","color","Text","Container","ul","Item","li","Infos","Icon","InfoList","items","className","React","createElement","map","group","i","groupItems","filter","item","text","hasItems","isValidArray","key","title","size","type","renderAs","info","ii","icon","innerHTML","allowLinkIcons","AnimationContainer","PosterImage","Image","AnimationImage","img","scale","concat","opacity","zoomPoint","AnimationImages","_b","zoom","_c","_d","interval","images","onChange","intervalRef","useRef","initialTimeoutRef","_e","useState","activeImg","setActiveImg","useEffect","changeImage","prev","length","current","window","setTimeout","clearInterval","setInterval","clearTimeout","Fragment","imgZoom","imgZoomPoint","undefined","getValidZoomPoint","style","zIndex","src","image","alt","point","clampValue","PosterView","BgImage","focus","PlaceholderImg","AutoplayVideo","video","isVisible","AspectContainer","global","sections","edgeRadius","ratios","small","getGlobals","imagePlaceholderBg","inverted","default","xlarge","Video","VideoBlock","forwardRef","ref","urls","muted","autoPlay","loop","controls","_f","playsInline","onCanPlayThrough","videoRef","useImperativeHandle","readyState","url","FactsWrapper","Fact","span","copyInverted","copy","POIFacts","facts","customFact","fact","name","Check","elementBg","light","dark","Description","Body","Col","InfoCol","Action","customTag","onTagClick","date","link","tags","action","globals","useLibTheme","publishedAt","StatusFormatter","getTime","eventDateFormat","eventTimeFormat","eventLocaleKey","getFormattedDate","handleTagClick","tag","ev","preventDefault","filteredTags","useMemo","__assign","coverSpace","allowEdgeRadius","w","h","isActive","clickHandler","Tag","onClick","onImageChange","children","currentMq","useMediaQuery","loadedImages","setLoadedImages","imagePromises","requestedImages","id","req","Promise","resolve","onload","preloadImages","__awaiter","promise","loadedImg","sent","find","e","_i","imagePromises_1","bgImage","loadOnMobile","placeholderImg","videoUrl","viewRef","isLoaded","setLoaded","isObserverSupported","useObserverSupport","isMobile","isVideoAllowed","isVideoActive","setVideoActive","useUpdateEffect","observer","IntersectionObserver","entries","entry","isIntersecting","unobserve","target","rootMargin","viewEl","observe","colorMode","titleAs","titleSize","superTitle","superTitleAs","abstract","textType","textSize","primaryAction","secondaryAction","_g","_h","clampTitle","_j","clampAbstract","maxTitleLines","maxAbstractLines","_k","clampText","maxTextLines","titleHyphens","as","textColor","primary","secondary","shortDescription","infos","hasFacts","hasInfos"],"mappings":"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"}