@blateral/b.kit 2.3.0-beta.1.2 → 2.3.0-beta.1.3
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.
- package/cjs/Actions-6dd616e0.js +2 -0
- package/cjs/Actions-6dd616e0.js.map +1 -0
- package/cjs/Bdot-d898ba3b.js +2 -0
- package/cjs/Bdot-d898ba3b.js.map +1 -0
- package/cjs/Button-72747f63.js +2 -0
- package/cjs/Button-72747f63.js.map +1 -0
- package/cjs/ButtonGhost-046437c5.js +2 -0
- package/cjs/ButtonGhost-046437c5.js.map +1 -0
- package/cjs/Control-eead1a4c.js +2 -0
- package/cjs/Control-eead1a4c.js.map +1 -0
- package/cjs/FilterField-497e998f.js +2 -0
- package/cjs/{FilterField-569d60e5.js.map → FilterField-497e998f.js.map} +1 -1
- package/cjs/Image-d9681be0.js +2 -0
- package/cjs/Image-d9681be0.js.map +1 -0
- package/cjs/LanguageSwitcher-47e25e95.js +2 -0
- package/cjs/LanguageSwitcher-47e25e95.js.map +1 -0
- package/cjs/Navigation-3f5d6088.js +2 -0
- package/cjs/{Navigation-ebb27a9b.js.map → Navigation-3f5d6088.js.map} +1 -1
- package/cjs/POICard-9911980e.js +2 -0
- package/cjs/POICard-9911980e.js.map +1 -0
- package/cjs/Pointer-3588eadf.js +2 -0
- package/cjs/Pointer-3588eadf.js.map +1 -0
- package/cjs/SocialList-da77e994.js +2 -0
- package/cjs/SocialList-da77e994.js.map +1 -0
- package/cjs/TableBlock-080c9c2e.js +2 -0
- package/cjs/TableBlock-080c9c2e.js.map +1 -0
- package/cjs/VideoCard-1fa209fc.js +2 -0
- package/cjs/VideoCard-1fa209fc.js.map +1 -0
- package/cjs/blocks.js +1 -1
- package/cjs/buttons.js +1 -1
- package/cjs/cookies.js +1 -1
- package/cjs/cookies.js.map +1 -1
- package/cjs/fields.js +1 -1
- package/cjs/fields.js.map +1 -1
- package/cjs/footer.js +2 -0
- package/cjs/footer.js.map +1 -0
- package/cjs/hooks.js +1 -1
- package/cjs/hooks.js.map +1 -1
- package/cjs/navigation.js +1 -1
- package/cjs/navigation.js.map +1 -1
- package/cjs/sections.js +1 -1
- package/cjs/sections.js.map +1 -1
- package/cjs/sections_news.js +2 -0
- package/cjs/sections_news.js.map +1 -0
- package/cjs/statusFormatter-0393122b.js +2 -0
- package/cjs/statusFormatter-0393122b.js.map +1 -0
- package/cjs/{urlParams-51ce7168.js → urlParams-1d03b5a6.js} +2 -2
- package/cjs/urlParams-1d03b5a6.js.map +1 -0
- package/cjs/useIE-aef9decc.js +2 -0
- package/cjs/useIE-aef9decc.js.map +1 -0
- package/esm/Actions-73e13c48.js +57 -0
- package/esm/Actions-73e13c48.js.map +1 -0
- package/esm/Bdot-30b047cc.js +24 -0
- package/esm/Bdot-30b047cc.js.map +1 -0
- package/esm/Button-678be396.js +115 -0
- package/esm/Button-678be396.js.map +1 -0
- package/esm/ButtonGhost-6673a07e.js +112 -0
- package/esm/ButtonGhost-6673a07e.js.map +1 -0
- package/esm/{Callout-03ad4c6e.js → Callout-439308f6.js} +4 -4
- package/esm/{Callout-03ad4c6e.js.map → Callout-439308f6.js.map} +1 -1
- package/esm/{Checkbox-76c2576b.js → Checkbox-a365d733.js} +5 -5
- package/esm/{Checkbox-76c2576b.js.map → Checkbox-a365d733.js.map} +1 -1
- package/esm/{ClockFilled-cff5900e.js → ClockFilled-8784ddac.js} +2 -2
- package/esm/{ClockFilled-cff5900e.js.map → ClockFilled-8784ddac.js.map} +1 -1
- package/esm/Control-e61c9395.js +52 -0
- package/esm/Control-e61c9395.js.map +1 -0
- package/esm/{Copy-d2be4fb7.js → Copy-3444d005.js} +4 -4
- package/esm/{Copy-d2be4fb7.js.map → Copy-3444d005.js.map} +1 -1
- package/esm/{FilterField-b1a28df7.js → FilterField-f423b4d1.js} +8 -7
- package/esm/{FilterField-b1a28df7.js.map → FilterField-f423b4d1.js.map} +1 -1
- package/esm/Image-82417953.js +193 -0
- package/esm/Image-82417953.js.map +1 -0
- package/esm/LanguageSwitcher-a53094d3.js +70 -0
- package/esm/LanguageSwitcher-a53094d3.js.map +1 -0
- package/esm/{LibThemeProvider-17012395.js → LibThemeProvider-90a5375f.js} +3 -3
- package/esm/{LibThemeProvider-17012395.js.map → LibThemeProvider-90a5375f.js.map} +1 -1
- package/esm/{Link-42f0b80f.js → Link-ee8a48ed.js} +3 -3
- package/esm/{Link-42f0b80f.js.map → Link-ee8a48ed.js.map} +1 -1
- package/esm/{Navigation-fae92776.js → Navigation-ece0ff0d.js} +10 -9
- package/esm/{Navigation-fae92776.js.map → Navigation-ece0ff0d.js.map} +1 -1
- package/esm/{Bdot-a103eeef.js → POICard-d8832988.js} +56 -280
- package/esm/POICard-d8832988.js.map +1 -0
- package/esm/Pointer-da4d0977.js +111 -0
- package/esm/Pointer-da4d0977.js.map +1 -0
- package/esm/SocialList-7c00c70e.js +61 -0
- package/esm/SocialList-7c00c70e.js.map +1 -0
- package/esm/TableBlock-0bbde956.js +218 -0
- package/esm/TableBlock-0bbde956.js.map +1 -0
- package/esm/VideoCard-2557407b.js +187 -0
- package/esm/VideoCard-2557407b.js.map +1 -0
- package/esm/{Wrapper-38c912a6.js → Wrapper-f4a70e30.js} +3 -3
- package/esm/{Wrapper-38c912a6.js.map → Wrapper-f4a70e30.js.map} +1 -1
- package/esm/base.js +3 -3
- package/esm/blocks.js +15 -10
- package/esm/blocks.js.map +1 -1
- package/esm/buttons.js +6 -4
- package/esm/buttons.js.map +1 -1
- package/esm/cookies.js +9 -8
- package/esm/cookies.js.map +1 -1
- package/esm/fields.js +9 -8
- package/esm/fields.js.map +1 -1
- package/esm/footer.js +300 -0
- package/esm/footer.js.map +1 -0
- package/esm/hooks.js +10 -9
- package/esm/hooks.js.map +1 -1
- package/esm/icons.js +1 -1
- package/esm/index.js +3 -3
- package/esm/{navigation-e135836f.js → navigation-49280321.js} +2 -2
- package/esm/{navigation-e135836f.js.map → navigation-49280321.js.map} +1 -1
- package/esm/navigation.js +12 -10
- package/esm/navigation.js.map +1 -1
- package/esm/sections.js +493 -1933
- package/esm/sections.js.map +1 -1
- package/esm/sections_news.js +1018 -0
- package/esm/sections_news.js.map +1 -0
- package/esm/{Actions-59bdbbf7.js → statusFormatter-9be0fbff.js} +2 -57
- package/esm/statusFormatter-9be0fbff.js.map +1 -0
- package/esm/{styles-eca3acc8.js → styles-5f78e59d.js} +2 -2
- package/esm/{styles-eca3acc8.js.map → styles-5f78e59d.js.map} +1 -1
- package/esm/typography.js +6 -6
- package/esm/{urlParams-c16d7370.js → urlParams-882563ce.js} +4 -15
- package/esm/urlParams-882563ce.js.map +1 -0
- package/esm/{useCookieConsent-cd262961.js → useCookieConsent-db86e5cb.js} +2 -2
- package/esm/{useCookieConsent-cd262961.js.map → useCookieConsent-db86e5cb.js.map} +1 -1
- package/esm/{useGeolocation-c99d76bd.js → useGeolocation-c81e3efc.js} +2 -2
- package/esm/{useGeolocation-c99d76bd.js.map → useGeolocation-c81e3efc.js.map} +1 -1
- package/esm/useIE-a9c56989.js +15 -0
- package/esm/useIE-a9c56989.js.map +1 -0
- package/esm/{useMediaQuery-07eee3f4.js → useMediaQuery-43629cbb.js} +2 -2
- package/esm/{useMediaQuery-07eee3f4.js.map → useMediaQuery-43629cbb.js.map} +1 -1
- package/footer/package.json +7 -0
- package/package.json +2 -1
- package/sections/news/package.json +7 -0
- package/types/footer.d.ts +4 -0
- package/types/footer.d.ts.map +1 -0
- package/types/sections.d.ts +0 -13
- package/types/sections.d.ts.map +1 -1
- package/types/sections_news.d.ts +10 -0
- package/types/sections_news.d.ts.map +1 -0
- package/cjs/Actions-487104b2.js +0 -2
- package/cjs/Actions-487104b2.js.map +0 -1
- package/cjs/Bdot-760e0e3a.js +0 -2
- package/cjs/Bdot-760e0e3a.js.map +0 -1
- package/cjs/ButtonGhost-e9644acd.js +0 -2
- package/cjs/ButtonGhost-e9644acd.js.map +0 -1
- package/cjs/Control-23259241.js +0 -2
- package/cjs/Control-23259241.js.map +0 -1
- package/cjs/FilterField-569d60e5.js +0 -2
- package/cjs/Navigation-ebb27a9b.js +0 -2
- package/cjs/SocialList-79ddf9d6.js +0 -2
- package/cjs/SocialList-79ddf9d6.js.map +0 -1
- package/cjs/urlParams-51ce7168.js.map +0 -1
- package/esm/Actions-59bdbbf7.js.map +0 -1
- package/esm/Bdot-a103eeef.js.map +0 -1
- package/esm/ButtonGhost-422fd723.js +0 -220
- package/esm/ButtonGhost-422fd723.js.map +0 -1
- package/esm/Control-52ff8784.js +0 -157
- package/esm/Control-52ff8784.js.map +0 -1
- package/esm/SocialList-385cde53.js +0 -307
- package/esm/SocialList-385cde53.js.map +0 -1
- package/esm/urlParams-c16d7370.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urlParams-51ce7168.js","sources":["../src/utils/useFontsLoaded.ts","../src/utils/useResizeThrottle.ts","../src/utils/urlParams.ts","../src/utils/useEqualSheetHeight.ts","../src/utils/useIE.ts","../src/utils/useScrollTo.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nexport const useFontsLoaded = () => {\n const [allFontsLoaded, setFontLoaded] = useState<boolean | undefined>(\n false\n );\n\n useEffect(() => {\n const waitForFonts = () => {\n (document as any)?.fonts?.ready?.then(() => {\n setFontLoaded(true);\n });\n };\n\n if ((document as any).fonts === undefined) setFontLoaded(undefined);\n else waitForFonts();\n }, []);\n\n return allFontsLoaded;\n};\n","import { useEffect, useRef, useState } from 'react';\n\nexport interface ResizeState {\n clientWidth: number;\n clientHeight: number;\n innerHeight: number;\n innerWidth: number;\n}\n\nconst useResizeThrottle = (\n timeout = 0,\n callback?: (state: ResizeState) => void\n) => {\n const [throttledState, setThrottledState] =\n useState<ResizeState | null>(null);\n\n const timeoutRef = useRef<number>(-1);\n const lastState = useRef<ResizeState>({\n clientWidth: 0,\n clientHeight: 0,\n innerHeight: 0,\n innerWidth: 0,\n });\n\n const updateResizeState = () => {\n if (typeof window === 'undefined' || typeof document === 'undefined') {\n return;\n }\n\n lastState.current = {\n clientWidth: document.documentElement.clientWidth,\n clientHeight: document.documentElement.clientHeight,\n innerHeight: window.innerHeight,\n innerWidth: window.innerWidth,\n };\n };\n\n useEffect(() => {\n if (typeof window === 'undefined') return;\n\n const handleResize = () => {\n updateResizeState();\n\n if (timeoutRef.current === -1) {\n timeoutRef.current = window.setTimeout(() => {\n callback?.(lastState.current);\n setThrottledState(lastState.current);\n timeoutRef.current = -1;\n }, timeout);\n }\n };\n\n updateResizeState();\n callback?.(lastState.current);\n setThrottledState(lastState.current);\n\n window.addEventListener('resize', handleResize);\n\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [callback, timeout]);\n\n return throttledState;\n};\n\nexport default useResizeThrottle;\n","import { concat } from './concat';\n\nconst isSupported =\n typeof window !== 'undefined' && 'URLSearchParams' in window;\n\nexport const getUrlParams = () => {\n const obj: Record<string, string> = {};\n if (!isSupported) return obj;\n\n const paramsObj = Object.fromEntries(\n new URLSearchParams(window.location.search)\n );\n\n for (const param in paramsObj) {\n let value = paramsObj[param];\n if (typeof value === 'string') {\n value = decodeURIComponent(value);\n }\n obj[param] = value;\n }\n\n return obj;\n};\n\nexport const setUrlParam = (key: string, value: string | number) => {\n if (\n !isSupported ||\n (typeof value !== 'string' && typeof value !== 'number')\n ) {\n return;\n }\n\n const params = getUrlParams();\n params[key] = value.toString();\n\n const currentParams = new URLSearchParams(window.location.search);\n for (const param in params) {\n currentParams.set(param, encodeURIComponent(params[param]));\n }\n\n updateUrl(currentParams);\n};\n\nexport const deleteUrlParam = (key: string) => {\n if (!isSupported) return;\n const currentParams = new URLSearchParams(window.location.search);\n currentParams.delete(key);\n\n updateUrl(currentParams);\n};\n\nconst updateUrl = (params: URLSearchParams) => {\n if (!params) return;\n\n const queries = params.toString();\n const url = queries\n ? concat([location.pathname, queries + location.hash], '?')\n : location.pathname + location.hash;\n\n window.history.replaceState({}, '', url);\n};\n","import {\n useEffect,\n useState,\n MutableRefObject,\n createRef,\n useCallback,\n} from 'react';\nimport { useMediaQuery } from './useMediaQuery';\nimport { useFontsLoaded } from 'utils/useFontsLoaded';\nimport useResizeThrottle from './useResizeThrottle';\n\ninterface ItemsPerRow {\n small?: number;\n medium?: number;\n semilarge?: number;\n large?: number;\n xlarge?: number;\n}\n\ntype Mq = keyof ItemsPerRow;\n\n// ********************\n// useEqualSheetHeight\n// ********************\n\nexport const useEqualSheetHeight = <T extends HTMLElement>(props: {\n listLength: number;\n identifiers: string[];\n responsive?: ItemsPerRow;\n /** Throttle timeout for resize events. Default: 400ms */\n resizeThrottleTimeout?: number;\n}) => {\n const defaultResponsive = {\n small: 1,\n medium: 1,\n semilarge: 2,\n large: 3,\n xlarge: 3,\n ...props.responsive,\n };\n const mqs: Mq[] = ['small', 'medium', 'semilarge', 'large', 'xlarge'];\n const currentMq = useMediaQuery(mqs) as Mq | undefined;\n const itemsPerRow = currentMq\n ? defaultResponsive[currentMq]\n : defaultResponsive.small;\n\n const [sheetRefs, setSheetRefs] = useState<MutableRefObject<T>[]>([]);\n const fontsLoaded = useFontsLoaded();\n\n const setHeights = useCallback(\n (\n heights: (number | null)[],\n selector: string,\n refs: MutableRefObject<T>[]\n ) => {\n const makeRows = (\n result: Array<number | null>[],\n _: number,\n index: number,\n arr: Array<number | null>\n ) => {\n // make new row after 3 items\n if (index % itemsPerRow === 0) {\n result.push(\n arr.slice(index, index + itemsPerRow) as Array<number>\n );\n }\n return result;\n };\n\n // put item heights in 2-dimensional array to sort them in rows\n const heightsInRows = heights.reduce(makeRows, []);\n\n heightsInRows.forEach((rowHeights, y) => {\n const validHeights = rowHeights.filter(\n (height) => height !== null\n ) as number[];\n\n const highest = validHeights.slice().sort((vA, vB) => {\n if (vA && vB) {\n if (vA > vB) return -1;\n return 1;\n } else return 0;\n })[0];\n\n // set height of all items in row to the highest value\n if (rowHeights.length > 1 && highest) {\n for (let x = 0; x < rowHeights.length; x++) {\n const index = x + y * itemsPerRow;\n const el = refs[index].current.querySelector(selector);\n\n el?.setAttribute('style', `height: ${highest}px`);\n }\n }\n });\n },\n [itemsPerRow]\n );\n\n // Throttle viewport resize event for performance\n const resizeState = useResizeThrottle(\n props.resizeThrottleTimeout !== undefined\n ? props.resizeThrottleTimeout\n : 400\n );\n\n useEffect(() => {\n const resize = (refs: MutableRefObject<T>[]) => () => {\n const identifierSizes = new Map<string, Array<number | null>>();\n\n // create identifier map\n for (let i = 0; i < props.identifiers.length; i++) {\n identifierSizes.set(props.identifiers[i], []);\n }\n\n // set height values\n refs.filter((ref) => ref.current).forEach(({ current }) => {\n // get height for each element\n props.identifiers.forEach((id) => {\n const element = current.querySelector(id);\n const prevHeights = identifierSizes.get(id);\n let height: number | null = null;\n\n if (element) {\n element.removeAttribute('style');\n height = element.getBoundingClientRect().height;\n }\n\n if (prevHeights) {\n identifierSizes.set(id, [...prevHeights, height]);\n }\n });\n });\n\n // set heights for each identifier\n identifierSizes.forEach((value, key) => {\n setHeights(value, key, refs);\n });\n };\n\n const resizeHandler = resize(sheetRefs);\n resizeHandler();\n }, [props.identifiers, resizeState, setHeights, sheetRefs, fontsLoaded]);\n\n const triggerCalculation = useCallback(() => {\n setSheetRefs((prev) =>\n Array(props.listLength)\n .fill(null)\n .map((_, i) => prev[i] || createRef())\n );\n }, [props.listLength]);\n\n useEffect(() => {\n setSheetRefs((prev) =>\n Array(props.listLength)\n .fill(null)\n .map((_, i) => prev[i] || createRef())\n );\n }, [props.listLength]);\n\n return {\n sheetRefs,\n triggerCalculation,\n };\n};\n","import { useState, useEffect } from 'react';\n\nconst useIE = (initialValue?: boolean) => {\n const [isIE, setIE] = useState(initialValue || false);\n\n useEffect(() => {\n setIE((document.body.style as any).msTouchAction !== undefined);\n }, []);\n return isIE;\n};\n\nexport default useIE;\n","import { useEffect, useRef, useState } from 'react';\n\nexport const useScrollTo = (fallbackScrollDuration: number) => {\n const startTime = useRef<number>(-1);\n const firstPos = useRef<number>(0);\n const [targetPos, setTargetPos] = useState<number | undefined>(undefined);\n\n const outQuad = (n: number) => {\n return n * (2 - n);\n };\n\n useEffect(() => {\n if (targetPos === undefined) return;\n if ('scrollBehavior' in document.documentElement.style) {\n window.scroll({\n top: targetPos,\n left: 0,\n behavior: 'smooth',\n });\n setTargetPos(undefined);\n } else {\n const animate = (timestamp: number) => {\n if (startTime.current === -1) {\n startTime.current = timestamp || new Date().getTime();\n }\n\n const elapsed = timestamp - startTime.current;\n const progress = elapsed / fallbackScrollDuration;\n const easeProgress = +outQuad(progress).toFixed(2);\n\n const newPos =\n targetPos === 0\n ? firstPos.current - firstPos.current * easeProgress\n : firstPos.current + targetPos * easeProgress;\n\n // scroll to new position\n window.scrollTo(0, newPos);\n\n if (\n (targetPos > 0 && newPos >= firstPos.current + targetPos) ||\n (targetPos < 0 && newPos <= firstPos.current + targetPos) ||\n (targetPos === 0 && newPos <= 0)\n ) {\n cancelAnimationFrame(startTime.current);\n startTime.current = -1;\n setTargetPos(undefined);\n } else {\n window.requestAnimationFrame(animate);\n }\n };\n\n cancelAnimationFrame(startTime.current);\n startTime.current = -1;\n firstPos.current =\n window.pageYOffset || document.documentElement.scrollTop;\n window.requestAnimationFrame(animate);\n }\n }, [targetPos, fallbackScrollDuration]);\n\n return setTargetPos;\n};\n"],"names":["useFontsLoaded","_a","useState","allFontsLoaded","setFontLoaded","useEffect","undefined","document","fonts","_b","ready","then","waitForFonts","useResizeThrottle","timeout","callback","throttledState","setThrottledState","timeoutRef","useRef","lastState","clientWidth","clientHeight","innerHeight","innerWidth","updateResizeState","window","current","documentElement","handleResize","setTimeout","addEventListener","removeEventListener","isSupported","getUrlParams","obj","paramsObj","Object","fromEntries","URLSearchParams","location","search","param","value","decodeURIComponent","updateUrl","params","queries","toString","url","concat","pathname","hash","history","replaceState","key","currentParams","delete","set","encodeURIComponent","props","defaultResponsive","__assign","small","medium","semilarge","large","xlarge","responsive","currentMq","useMediaQuery","itemsPerRow","sheetRefs","setSheetRefs","fontsLoaded","setHeights","useCallback","heights","selector","refs","reduce","result","_","index","arr","push","slice","forEach","rowHeights","y","validHeights","highest","filter","height","sort","vA","vB","length","x","el","querySelector","setAttribute","resizeState","resizeThrottleTimeout","resizeHandler","identifierSizes","Map","i","identifiers","ref","id","element","prevHeights","get","removeAttribute","getBoundingClientRect","triggerCalculation","prev","Array","listLength","fill","map","createRef","initialValue","isIE","setIE","body","style","msTouchAction","fallbackScrollDuration","startTime","firstPos","targetPos","setTargetPos","scroll","top","left","behavior","animate_1","timestamp","Date","getTime","n","elapsed","easeProgress","toFixed","newPos","scrollTo","cancelAnimationFrame","requestAnimationFrame","pageYOffset","scrollTop"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Actions-59bdbbf7.js","sources":["../src/utils/statusFormatter.ts","../src/components/blocks/Actions.tsx"],"sourcesContent":["interface DateReplacementHolder {\n [key: string]: () => string;\n}\n\nexport default class StatusFormatter {\n private timestamp: number;\n private input: string;\n private dateFormat: string;\n private timeFormat: string;\n\n private localeKey: string;\n private date: Date;\n\n constructor(\n timestamp: number,\n input: string,\n dateFormat: string,\n timeFormat: string,\n localeKey?: string\n ) {\n this.timestamp = timestamp;\n this.input = input;\n this.dateFormat = dateFormat;\n this.timeFormat = timeFormat;\n\n this.localeKey = localeKey ? localeKey : 'de';\n this.date = new Date(this.timestamp);\n }\n\n private dateReplacements: DateReplacementHolder = {\n dddd: () => {\n return weekDays[this.localeKey].long[this.date.getDay()];\n },\n DDDD: () => {\n return weekDays[this.localeKey].long[this.date.getDay()];\n },\n ddd: () => {\n return weekDays[this.localeKey].short[this.date.getDay()];\n },\n DDD: () => {\n return weekDays[this.localeKey].short[this.date.getDay()];\n },\n dd: () => {\n return this.getDay();\n },\n DD: () => {\n return this.getDay();\n },\n MMMM: () => {\n return monthNames[this.localeKey].long[this.date.getMonth()];\n },\n mmmm: () => {\n return monthNames[this.localeKey].long[this.date.getMonth()];\n },\n MMM: () => {\n return monthNames[this.localeKey].short[this.date.getMonth()];\n },\n mmm: () => {\n return monthNames[this.localeKey].short[this.date.getMonth()];\n },\n mm: () => {\n return this.getMonth();\n },\n MM: () => {\n return this.getMonth();\n },\n yyyy: () => {\n return this.getYear();\n },\n YYYY: () => {\n return this.getYear();\n },\n yy: () => {\n return this.getYear().substr(-2);\n },\n YY: () => {\n return this.getYear().substr(-2);\n },\n };\n\n private timeReplacements: DateReplacementHolder = {\n hh: () => {\n return this.getHours();\n },\n HH: () => {\n return this.getHours();\n },\n hs: () => {\n return this.getHours12h();\n },\n HS: () => {\n return this.getHours12h();\n },\n mm: () => {\n return this.getMinutes();\n },\n MM: () => {\n return this.getMinutes();\n },\n ss: () => {\n return this.getSeconds();\n },\n SS: () => {\n return this.getSeconds();\n },\n ap: () => {\n const hours = this.date.getHours();\n return hours >= 12 ? 'pm' : 'am';\n },\n AP: () => {\n const hours = this.date.getHours();\n return hours >= 12 ? 'PM' : 'AM';\n },\n };\n\n public setDate(timestamp: number) {\n this.date = new Date(timestamp);\n }\n\n public setLocale(localeKey: string) {\n this.localeKey = localeKey;\n }\n\n public getFormattedStatus() {\n const placeholders: {\n [key: string]: any;\n } = {\n '<DATE>': this.getFormattedDate(),\n '<TIME>': this.getFormattedTime(),\n };\n\n const formattedInput = this.input.replace(/<\\w+>/g, (foundString) => {\n return placeholders[foundString] || foundString;\n });\n return formattedInput;\n }\n\n public getFormattedDate() {\n // replace placeholders with values from dateReplacements object\n const dataKeys = Object.keys(this.dateReplacements);\n let formattedDate = this.dateFormat;\n for (let i = 0; i < dataKeys.length; i++) {\n formattedDate = formattedDate.replace(\n new RegExp(dataKeys[i], 'g'),\n (foundString) => {\n return this.dateReplacements[foundString].call(this);\n }\n );\n }\n return formattedDate;\n }\n\n public getFormattedTime() {\n // replace placeholders with values from timeReplacements object\n const dataKeys = Object.keys(this.timeReplacements);\n let formattedTime = this.timeFormat;\n for (let i = 0; i < dataKeys.length; i++) {\n formattedTime = formattedTime.replace(\n new RegExp(dataKeys[i], 'g'),\n (foundString) => {\n return this.timeReplacements[foundString].call(this);\n }\n );\n }\n return formattedTime;\n }\n\n public areOnSameDay(first: Date, second: Date) {\n return (\n first.getFullYear() === second.getFullYear() &&\n first.getMonth() === second.getMonth() &&\n first.getDate() === second.getDate()\n );\n }\n\n /**\n * Get formatted string of timespan from current date + duration in seconds\n * @param duration Duration in seconds. Added to current date\n * @returns\n */\n public getFormattedTimespan(\n format = '',\n duration?: number,\n seperator = ' - '\n ) {\n const startTime = this.getFormattedTime();\n let endTime = '';\n\n if (duration === undefined) return '';\n\n // create endDate\n if (duration > 0) {\n const endDate = new Date(this.date);\n endDate.setSeconds(this.date.getSeconds() + duration);\n\n const endTimeFormatter = new StatusFormatter(\n endDate.getTime(),\n this.input,\n this.dateFormat,\n this.timeFormat,\n this.localeKey\n );\n\n endTime = endTimeFormatter.getFormattedTime();\n }\n\n // concatenate timespan string\n const placeholders: {\n [key: string]: any;\n } = {\n '<START>': startTime,\n '<END>': endTime,\n '<SEP>': seperator,\n };\n\n const formattedTimespan = format.replace(/<\\w+>/g, (foundString) => {\n if (foundString === '<SEP>' && !(startTime && endTime)) return '';\n if (foundString === '<END>' && !endTime) return '';\n\n return placeholders[foundString] || foundString;\n });\n\n return formattedTimespan;\n }\n\n private getDoubleDigitString(value: number) {\n return value < 10 ? '0' + value.toString() : value.toString();\n }\n\n private getDay() {\n return this.getDoubleDigitString(this.date.getDate());\n }\n\n private getMonth() {\n return this.getDoubleDigitString(this.date.getMonth() + 1);\n }\n\n private getYear() {\n return this.date.getFullYear().toString();\n }\n\n private getHours() {\n return this.getDoubleDigitString(this.date.getHours());\n }\n\n private getHours12h() {\n let hours = this.date.getHours();\n hours = hours % 12;\n hours = hours === 0 ? 12 : hours;\n return this.getDoubleDigitString(hours);\n }\n\n private getMinutes() {\n return this.getDoubleDigitString(this.date.getMinutes());\n }\n\n private getSeconds() {\n return this.getDoubleDigitString(this.date.getSeconds());\n }\n}\n\ninterface WeekDays {\n [key: string]: {\n long: string[];\n short: string[];\n };\n}\n\ninterface MonthNames {\n [key: string]: {\n long: string[];\n short: string[];\n };\n}\n\nconst weekDays: WeekDays = {\n de: {\n long: [\n 'Sonntag',\n 'Montag',\n 'Dienstag',\n 'Mittwoch',\n 'Donnerstag',\n 'Freitag',\n 'Samstag',\n ],\n short: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],\n },\n en: {\n long: [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n ],\n short: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n },\n};\n\nconst monthNames: MonthNames = {\n de: {\n long: [\n 'Januar',\n 'Februar',\n 'März',\n 'April',\n 'Mai',\n 'Juni',\n 'Juli',\n 'August',\n 'September',\n 'Oktober',\n 'November',\n 'Dezember',\n ],\n short: [\n 'Jan.',\n 'Febr.',\n 'März',\n 'Apr.',\n 'Mai',\n 'Juni',\n 'Juli',\n 'Aug.',\n 'Sept.',\n 'Okt.',\n 'Nov.',\n 'Dez',\n ],\n },\n en: {\n long: [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ],\n short: [\n 'Jan.',\n 'Feb.',\n 'Mar.',\n 'Apr.',\n 'May',\n 'June',\n 'July',\n 'Aug.',\n 'Sept.',\n 'Oct.',\n 'Nov.',\n 'Dec.',\n ],\n },\n};\n","import React, { FC } from 'react';\nimport styled from 'styled-components';\n\nimport { mq, spacings } from 'utils/styles';\n\nconst View = styled.div<{ isCovered?: boolean }>`\n display: block;\n\n @media ${mq.medium} {\n display: ${({ isCovered }) => (isCovered ? 'block' : 'inline-block')};\n }\n`;\n\nconst Content = styled.div<{\n isMirrored?: boolean;\n isCovered?: boolean;\n}>`\n display: flex;\n flex-wrap: wrap;\n flex-direction: ${({ isMirrored }) =>\n isMirrored ? 'column-reverse' : 'column'};\n\n margin-top: -${spacings.nudge * 2}px;\n margin-left: -${spacings.spacer}px;\n\n &&& > * {\n /* flex: 1 1 ${({ isCovered }) => (isCovered ? '100%' : '0px')}; */\n margin-top: ${spacings.nudge * 2}px;\n margin-left: ${spacings.spacer}px;\n\n /* min-width: ${({ isCovered }) => isCovered && '0px'}; */\n }\n\n @media ${mq.medium} {\n display: ${({ isCovered }) => (isCovered ? 'flex' : 'inline-flex')};\n flex-direction: ${({ isMirrored }) =>\n isMirrored ? 'row-reverse' : 'row'};\n align-items: stretch;\n width: auto;\n }\n`;\n\nconst TertiaryWrapper = styled.div`\n align-self: flex-start;\n\n @media ${mq.medium} {\n align-self: center;\n }\n`;\n\nexport type ActionMode = 'wrap' | 'cover';\n\nconst Actions: FC<{\n /** Behaviour of content wrapping. If set to cover the action container always tries to fill full width */\n mode?: ActionMode;\n /** Switch order of primary and secondary action */\n isMirrored?: boolean;\n /** React node of primary action */\n primary?: React.ReactNode;\n /** React node of secondary action */\n secondary?: React.ReactNode;\n /** React node of tertiary action */\n tertiary?: React.ReactNode;\n className?: string;\n}> = ({\n mode = 'wrap',\n isMirrored = false,\n primary,\n secondary,\n tertiary,\n className,\n}) => {\n return (\n <View isCovered={mode === 'cover'} className={className}>\n <Content isCovered={mode === 'cover'} isMirrored={isMirrored}>\n {primary && primary}\n {secondary && secondary}\n {tertiary && <TertiaryWrapper>{tertiary}</TertiaryWrapper>}\n </Content>\n </View>\n );\n};\n\nexport default Actions;\n"],"names":["StatusFormatter","timestamp","input","dateFormat","timeFormat","localeKey","_this","dateReplacements","dddd","weekDays","long","date","getDay","DDDD","ddd","short","DDD","dd","DD","MMMM","monthNames","getMonth","mmmm","MMM","mmm","mm","MM","yyyy","getYear","YYYY","yy","substr","YY","timeReplacements","hh","getHours","HH","hs","getHours12h","HS","getMinutes","ss","getSeconds","SS","ap","hours","AP","Date","prototype","setDate","setLocale","getFormattedStatus","placeholders","getFormattedDate","getFormattedTime","formattedInput","replace","foundString","dataKeys","Object","keys","formattedDate","i","length","RegExp","call","formattedTime","areOnSameDay","first","second","getFullYear","getDate","getFormattedTimespan","format","duration","seperator","startTime","endTime","undefined","endDate","setSeconds","endTimeFormatter","getTime","formattedTimespan","getDoubleDigitString","value","toString","de","en","View","styled","div","mq","medium","_a","isCovered","Content","templateObject_2","__makeTemplateObject","isMirrored","spacings","nudge","spacer","TertiaryWrapper","templateObject_3","Actions","_b","mode","_c","primary","secondary","tertiary","className","React","createElement"],"mappings":"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"}
|
package/esm/Bdot-a103eeef.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Bdot-a103eeef.js","sources":["../src/components/blocks/Title.tsx","../src/components/blocks/IntroBlock.tsx","../src/components/blocks/Tag.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/TableBlock.tsx","../src/components/blocks/VideoBlock.tsx","../src/components/blocks/POIFacts.tsx","../src/components/blocks/POICard.tsx","../src/components/blocks/Bdot.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport Heading, { HeadlineTag } from 'components/typography/Heading';\nimport { FontType, spacings } from 'utils/styles';\nimport { useLibTheme } from 'utils/LibThemeProvider';\n\nconst View = styled.div<{ isCentered?: boolean }>`\n display: block;\n text-align: ${({ isCentered }) => (isCentered ? 'center' : 'left')};\n margin: ${({ isCentered }) => isCentered && '0 auto'};\n\n & > * + * {\n margin-top: ${spacings.nudge * 2}px;\n }\n`;\n\nconst SuperTitle = styled(Heading)`\n display: block;\n\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\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\nconst MainTitle = styled(Heading)<{ maxLines?: number }>`\n display: block;\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\nexport type TitleSize = Extract<FontType, 'heading-1' | 'heading-2'>;\n\nconst Title: FC<{\n /**\n * Text color mode mostly background dependent.\n * The value onImage is used if the title is placed on an underlying image\n * */\n colorMode?: 'default' | 'inverted' | 'onImage';\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 /** Main title text */\n title?: string;\n\n /** Main title HTML tag type (h2, h3, h4...) */\n titleAs?: HeadlineTag;\n\n /** Style type of main title */\n titleSize?: TitleSize;\n\n /** Clamp lines of text to specific number */\n maxLines?: number;\n\n /** Center texts */\n isCentered?: boolean;\n\n /** Enable titel text hypens */\n titleHyphens?: boolean;\n\n className?: string;\n}> = ({\n colorMode = 'default',\n superTitle,\n superTitleAs,\n title,\n titleAs,\n titleSize = 'heading-2',\n maxLines,\n isCentered = false,\n titleHyphens,\n className,\n}) => {\n const { colors } = useLibTheme();\n\n return (\n <View isCentered={isCentered} className={className}>\n {superTitle && (\n <SuperTitle\n renderAs={superTitleAs || 'div'}\n size=\"super\"\n textColor={\n colorMode === 'onImage'\n ? colors.text.inverted\n : undefined\n }\n isInverted={colorMode === 'inverted'}\n innerHTML={superTitle}\n />\n )}\n {title && (\n <MainTitle\n renderAs={titleAs || 'h2'}\n size={titleSize === 'heading-1' ? 'heading-1' : 'heading-2'}\n hyphens={titleHyphens}\n textColor={\n colorMode === 'onImage'\n ? colors.text.inverted\n : undefined\n }\n isInverted={colorMode === 'inverted'}\n innerHTML={title}\n maxLines={maxLines}\n />\n )}\n </View>\n );\n};\n\nexport default Title;\n","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, { FC } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { copyStyle } from 'components/typography/Copy';\nimport Link, { LinkProps } from 'components/typography/Link';\nimport { getColors, spacings } from 'utils/styles';\n\nconst View = styled(Link)<{\n isInverted?: boolean;\n isActive?: boolean;\n isClickable?: boolean;\n}>`\n display: inline-block;\n border: 1px solid\n ${({ isInverted }) => (isInverted ? '#dddddd' : '#444444')};\n border-radius: 8px;\n\n padding: 1px ${spacings.nudge}px;\n max-height: 28px;\n min-width: 60px;\n user-select: none;\n\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: center;\n\n text-decoration: none;\n\n ${copyStyle('copy', 'small')}\n\n background: none;\n\n && {\n background-color: ${({ isActive, isInverted }) =>\n isActive && (isInverted ? '#dddddd' : '#444444')};\n color: ${({ isActive, isInverted }) => {\n if (isActive) {\n return isInverted ? '#444444' : '#ffff';\n } else {\n return isInverted ? '#dddddd' : '#444444';\n }\n }};\n\n transition: background-color 0.2s ease-in-out, color 0.1s ease-in-out;\n }\n\n cursor: ${({ isClickable }) => (isClickable ? 'pointer' : 'default')};\n\n ${({ isClickable, isInverted }) =>\n isClickable &&\n css`\n @media (hover: hover) and (pointer: fine) {\n &&:hover {\n background-color: ${isInverted ? '#dddddd' : '#444444'};\n color: ${isInverted ? '#444444' : '#ffff'};\n }\n }\n `}\n\n &:focus {\n /* background-color: ${({ isInverted }) =>\n isInverted ? '#dddddd' : '#444444'};\n color: ${({ isInverted }) => (isInverted ? '#444444' : '#ffff')}; */\n outline: 2px solid\n ${({ isInverted, theme }) =>\n isInverted\n ? getColors(theme).primary.inverted\n : getColors(theme).primary.default};\n outline-offset: -1px;\n text-decoration: underline;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n text-decoration: none;\n }\n`;\n\nexport interface TagProps {\n name?: string;\n link?: LinkProps;\n}\n\nconst Tag: FC<\n TagProps & {\n /** Invert colors to use on dark background */\n isInverted?: boolean;\n\n /** Highlight tag if active */\n isActive?: boolean;\n\n /** Click callback */\n onClick?: (ev?: React.SyntheticEvent<HTMLElement>) => void;\n className?: string;\n children?: React.ReactNode;\n }\n> = ({ name, link, isInverted, isActive, onClick, className, children }) => {\n const tag = link?.href ? 'a' : onClick ? 'button' : 'span';\n\n return (\n <View\n as={tag}\n isInverted={isInverted}\n isActive={isActive}\n onClick={onClick}\n isClickable={!!onClick || !!(link && link.href)}\n className={className}\n {...link}\n >\n {name || children}\n </View>\n );\n};\n\nexport default Tag;\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 Copy from 'components/typography/Copy';\nimport React, { forwardRef } from 'react';\nimport styled from 'styled-components';\n\nimport { getColors as color, spacings } from 'utils/styles';\n\nconst View = styled.div`\n &:focus {\n outline: 1px dashed ${({ theme }) => color(theme).primary.default};\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n`;\n\nconst Caption = styled(Copy)`\n margin-bottom: ${spacings.nudge}px;\n padding: 0 ${spacings.nudge * 2}px;\n text-align: left;\n`;\n\nconst TableContainer = styled.div`\n overflow-x: scroll;\n overflow-y: hidden;\n white-space: nowrap;\n\n &:focus {\n outline: none;\n border: 1px solid ${({ theme }) => color(theme).primary.default};\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n border: none;\n }\n\n &::-webkit-scrollbar {\n display: none;\n scrollbar-width: none;\n }\n`;\n\nconst TableBody = styled.table`\n width: 100%;\n max-width: 100%;\n\n border-collapse: separate;\n border-spacing: 0 ${spacings.nudge * 0.5}px;\n\n padding: 0 ${spacings.nudge * 2}px;\n`;\n\nconst TableHead = styled(Copy)<{\n isInverted?: boolean;\n alignRight?: boolean;\n}>`\n text-align: left;\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.inverted : color(theme).text.default};\n background-color: ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).elementBg.dark\n : color(theme).elementBg.medium};\n\n padding: 0 ${spacings.nudge * 3}px;\n height: 56px;\n box-sizing: content-box;\n\n :last-child {\n padding-right: ${spacings.spacer * 2.5}px;\n text-align: ${({ alignRight }) => (alignRight ? 'right' : 'left')};\n }\n`;\n\nconst TableData = styled(Copy)<{\n hasBack?: boolean;\n alignRight?: boolean;\n}>`\n padding: 0 ${spacings.nudge * 3}px;\n height: 56px;\n box-sizing: content-box;\n\n background-color: ${({ hasBack, theme }) =>\n hasBack ? color(theme).elementBg.light : color(theme).elementBg.medium};\n\n :last-child {\n text-align: ${({ alignRight }) => (alignRight ? 'right' : 'left')};\n padding-right: ${spacings.spacer * 2.5}px;\n }\n`;\n\nexport interface TableProps {\n tableTitle?: string;\n rowTitle?: string[];\n row: Array<{\n cols: string[];\n }>;\n isInverted?: boolean;\n hasBack?: boolean;\n lastCol?: 'left' | 'right';\n}\n\nconst TableBlock = forwardRef<HTMLDivElement, TableProps>(\n (\n {\n row,\n tableTitle,\n rowTitle,\n isInverted = false,\n hasBack = false,\n lastCol = 'left',\n },\n ref\n ) => {\n return (\n <View ref={ref}>\n <TableContainer tabIndex={1}>\n <TableBody>\n {tableTitle && (\n <Caption\n renderAs=\"caption\"\n type=\"copy-b\"\n isInverted={isInverted}\n >\n {tableTitle}\n </Caption>\n )}\n {rowTitle && (\n <thead>\n <tr>\n {rowTitle.map((item, ii) => (\n <TableHead\n key={ii}\n type=\"copy-b\"\n renderAs=\"th\"\n isInverted={!isInverted}\n alignRight={lastCol === 'right'}\n >\n {item}\n </TableHead>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {row.map(({ cols }, i) => (\n <tr key={i}>\n {cols.map((itemText, ii) => {\n return (\n <TableData\n key={ii}\n renderAs=\"td\"\n hasBack={hasBack}\n alignRight={lastCol === 'right'}\n innerHTML={itemText}\n />\n );\n })}\n </tr>\n ))}\n </tbody>\n </TableBody>\n </TableContainer>\n </View>\n );\n }\n);\n\nTableBlock.displayName = 'TableBlock';\n\nexport default TableBlock;\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","import * as React from 'react';\nimport styled from 'styled-components';\nimport Link from 'components/typography/Link';\n\nconst bdotColor = '#1fc2f4';\n\nconst Dot = styled(Link)`\n width: 14px;\n height: 14px;\n\n display: inline-block;\n vertical-align: middle;\n border-radius: 50%;\n\n background: ${bdotColor};\n color: ${bdotColor};\n text-decoration: none;\n\n span {\n visibility: hidden;\n font-size: 0;\n color: transparent;\n }\n`;\n\nconst Bdot: React.FC<{ className?: string }> = ({ className }) => {\n return (\n <Dot\n ariaLabel=\"b.lateral - creative agency\"\n className={className}\n href=\"https://blateral.com\"\n isExternal\n >\n <span>b.lateral - creative agency</span>\n </Dot>\n );\n};\n\nexport default Bdot;\n"],"names":["View","styled","div","templateObject_1","__makeTemplateObject","_a","isCentered","spacings","nudge","SuperTitle","Heading","templateObject_2","MainTitle","templateObject_4","maxLines","css","Title","_b","colorMode","superTitle","superTitleAs","title","titleAs","_c","titleSize","_d","titleHyphens","className","colors","useLibTheme","React","createElement","renderAs","size","textColor","text","inverted","undefined","isInverted","innerHTML","hyphens","mq","semilarge","spacer","Content","StyledTitle","templateObject_3","clamp","ContentBlock","Copy","templateObject_5","StyledActions","Actions","medium","MobileImageContainer","templateObject_7","DesktopImageContainer","templateObject_8","IntroBlock","abstract","_e","textType","_f","textSize","primaryAction","secondaryAction","_g","_h","clampTitle","_j","clampAbstract","maxTitleLines","maxAbstractLines","_k","clampText","maxTextLines","image","coverSpace","as","small","Image","__assign","allowEdgeRadius","type","primary","secondary","Link","copyStyle","isActive","isClickable","theme","getColors","default","Tag","name","link","onClick","children","tag","href","large","ImageContainer","MainContent","TagContainer","TitleWrapper","TagWrapper","templateObject_6","TitleLink","font","big","colorInverted","color","Text","EventBlock","customTag","onTagClick","date","tags","action","globals","publishedAt","formatter","StatusFormatter","getTime","sections","eventDateFormat","eventTimeFormat","eventLocaleKey","getFormattedDate","handleTagClick","ev","preventDefault","filteredTags","useMemo","filter","ratios","w","h","isValidArray","map","i","key","clickHandler","Container","ul","Item","li","Infos","Icon","InfoList","items","group","groupItems","item","hasItems","info","ii","icon","allowLinkIcons","AnimationContainer","PosterImage","AnimationImage","img","scale","concat","opacity","zoomPoint","AnimationImages","zoom","interval","images","onChange","intervalRef","useRef","initialTimeoutRef","useState","activeImg","setActiveImg","useEffect","changeImage","prev","length","current","window","setTimeout","clearInterval","setInterval","clearTimeout","Fragment","imgZoom","imgZoomPoint","getValidZoomPoint","style","zIndex","src","alt","preloadImages","loadedImages","req","Promise","resolve","onload","point","clampValue","HeaderKenBurns","onImageChange","mqs","currentMq","useMediaQuery","xlarge","setLoadedImages","loadedForMq","requestedImages","id","imagePromises","__awaiter","promise","loadedImg","sent","find","e","_i","imagePromises_1","PosterView","BgImage","focus","HeaderPoster","bgImage","PlaceholderImg","AutoplayVideo","video","isVisible","HeaderVideo","loadOnMobile","placeholderImg","videoUrl","videoRef","viewRef","isLoaded","setLoaded","isObserverSupported","useObserverSupport","isMobile","isVideoAllowed","isVideoActive","setVideoActive","readyState","useUpdateEffect","observer","IntersectionObserver","entries","entry","isIntersecting","unobserve","target","rootMargin","viewEl","observe","ref","muted","autoPlay","loop","playsInline","onCanPlayThrough","Caption","TableContainer","TableBody","table","TableHead","elementBg","dark","alignRight","TableData","hasBack","light","TableBlock","forwardRef","row","tableTitle","rowTitle","lastCol","tabIndex","cols","itemText","displayName","AspectContainer","global","edgeRadius","imagePlaceholderBg","Video","VideoBlock","urls","controls","useImperativeHandle","url","FactsWrapper","Fact","span","copyInverted","copy","POIFacts","facts","customFact","fact","Check","Description","Body","Col","InfoCol","Action","POICard","shortDescription","infos","hasFacts","hasInfos","bdotColor","Dot","Bdot","ariaLabel","isExternal"],"mappings":"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"}
|