@blateral/b.kit 2.5.4 → 2.7.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.
- package/cjs/TableBlock-f2c59d9b.js +2 -0
- package/cjs/TableBlock-f2c59d9b.js.map +1 -0
- package/cjs/{VideoBlock-a7d6ff7d.js → VideoBlock-dea7de8a.js} +2 -2
- package/cjs/{VideoBlock-a7d6ff7d.js.map → VideoBlock-dea7de8a.js.map} +1 -1
- package/cjs/blocks.js +1 -1
- package/cjs/hooks.js +1 -1
- package/cjs/hooks.js.map +1 -1
- package/cjs/sections.js +1 -1
- package/cjs/sections.js.map +1 -1
- package/cjs/sections.news.js +1 -1
- package/cjs/sections.news.js.map +1 -1
- package/esm/{TableBlock-cc49e089.js → TableBlock-67fe2385.js} +186 -14
- package/esm/TableBlock-67fe2385.js.map +1 -0
- package/esm/{VideoBlock-5fe94711.js → VideoBlock-b227ae6e.js} +2 -2
- package/esm/{VideoBlock-5fe94711.js.map → VideoBlock-b227ae6e.js.map} +1 -1
- package/esm/blocks.js +2 -2
- package/esm/hooks.js +1 -1
- package/esm/hooks.js.map +1 -1
- package/esm/sections.js +76 -53
- package/esm/sections.js.map +1 -1
- package/esm/sections.news.js +19 -15
- package/esm/sections.news.js.map +1 -1
- package/package.json +1 -1
- package/types/components/base/icons/ButtonLeft.d.ts +9 -0
- package/types/components/base/icons/ButtonLeft.d.ts.map +1 -0
- package/types/components/base/icons/ButtonRight.d.ts +9 -0
- package/types/components/base/icons/ButtonRight.d.ts.map +1 -0
- package/types/components/blocks/TableBlock.d.ts +2 -2
- package/types/components/blocks/TableBlock.d.ts.map +1 -1
- package/types/components/sections/HtmlCode.d.ts +21 -0
- package/types/components/sections/HtmlCode.d.ts.map +1 -0
- package/types/components/sections/Table.d.ts.map +1 -1
- package/types/components/sections/news/NewsTable.d.ts.map +1 -1
- package/types/sections.d.ts +1 -0
- package/types/sections.d.ts.map +1 -1
- package/cjs/TableBlock-007f8e34.js +0 -2
- package/cjs/TableBlock-007f8e34.js.map +0 -1
- package/esm/TableBlock-cc49e089.js.map +0 -1
package/esm/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sources":["../src/utils/useItemHeight.ts","../src/utils/useScroll.ts","../src/utils/usePoster.ts","../src/utils/useInterval.ts","../src/utils/useTouch.ts","../src/utils/useArray.ts","../src/utils/useImgPreload.ts","../src/utils/backgroundImage.ts","../src/utils/fontLoading.tsx","../src/utils/getLinkIcon.ts","../src/utils/useParams.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nexport const useItemHeight = () => {\n const [element, setElement] = useState<HTMLElement | null>(null);\n const [height, setHeight] = useState<number>(0);\n\n useEffect(() => {\n const calcHeight = () => {\n if (element) setHeight(element.offsetHeight);\n };\n\n if (element) {\n calcHeight();\n window.addEventListener('resize', calcHeight);\n }\n\n return () => {\n window.removeEventListener('resize', calcHeight);\n };\n }, [element]);\n\n return {\n setElement,\n height,\n };\n};\n","import { useEffect, useRef, useState } from 'react';\n\nexport enum ScrollDirection {\n UP,\n DOWN,\n}\n\nexport const useScroll = ({\n initialTopOffset = 0,\n onLeftOffset,\n onEnterOffset,\n}: {\n initialTopOffset?: number;\n onLeftOffset?: () => void;\n onEnterOffset?: () => void;\n}) => {\n const [topOffset, setTopOffset] = useState<number>(initialTopOffset);\n const [isTop, setIsTop] = useState<boolean>(true);\n const [isInOffset, setIsInOffset] = useState<boolean>(true);\n const [scrollDirection, setScrollDirection] = useState<ScrollDirection>(\n ScrollDirection.DOWN\n );\n const lastScrollPos = useRef<number>(0);\n\n useEffect(() => {\n if (typeof window === 'undefined') return;\n const handleScroll = () => {\n setIsTop(window.pageYOffset <= 1);\n setIsInOffset(window.pageYOffset <= 1 + topOffset);\n\n if (lastScrollPos.current) {\n // check if top offset is left\n if (\n window.pageYOffset > 1 + topOffset &&\n lastScrollPos.current <= 1 + topOffset\n ) {\n onLeftOffset && onLeftOffset();\n }\n\n // check if top offset was joined\n if (\n window.pageYOffset <= 1 + topOffset &&\n lastScrollPos.current > 1 + topOffset\n ) {\n onEnterOffset && onEnterOffset();\n }\n\n setScrollDirection((prev) => {\n if (window.pageYOffset <= 1) return ScrollDirection.DOWN;\n return window.pageYOffset > lastScrollPos.current\n ? ScrollDirection.DOWN\n : window.pageYOffset < lastScrollPos.current\n ? ScrollDirection.UP\n : prev;\n });\n }\n lastScrollPos.current = window.pageYOffset;\n };\n\n handleScroll();\n window.addEventListener('scroll', handleScroll);\n\n return () => {\n window.removeEventListener('scroll', handleScroll);\n };\n }, [\n lastScrollPos,\n onLeftOffset,\n onEnterOffset,\n scrollDirection,\n topOffset,\n ]);\n\n return {\n isTop,\n isInOffset,\n scrollDirection,\n setTopOffset,\n topOffset,\n };\n};\n","import { useEffect, useState } from 'react';\nimport { isBrowser, useMediaQuery } from './useMediaQuery';\n\n// *****************\n// usePoster\n// *****************\n\ninterface PosterImage {\n small: string;\n medium?: string;\n semilarge?: string;\n large?: string;\n xlarge?: string;\n}\n\nexport const canUseWebP = () => {\n if (!isBrowser) return false;\n\n const elem = document.createElement('canvas');\n\n if (!(elem.getContext && elem.getContext('2d'))) {\n // was able or not to get WebP representation\n return elem.toDataURL('image/webp').indexOf('data:image/webp') == 0;\n }\n\n // very old browser like IE 8, canvas not supported\n return false;\n};\n\nexport type PosterMq = 'small' | 'medium' | 'semilarge' | 'large' | 'xlarge';\n\nexport const usePoster = (\n posterImage: PosterImage & {\n webp?: PosterImage;\n },\n mqs?: PosterMq[]\n) => {\n const [currentImage, setCurrentImage] = useState<string | undefined>();\n\n const workingImage =\n posterImage.webp && canUseWebP() ? posterImage.webp : posterImage;\n const currentMq = useMediaQuery(\n mqs || ['small', 'medium', 'semilarge', 'large', 'xlarge']\n ) as PosterMq | undefined;\n\n useEffect(() => {\n if (\n currentMq &&\n workingImage[currentMq] &&\n workingImage[currentMq] !== currentImage\n ) {\n setCurrentImage(workingImage[currentMq]);\n }\n }, [currentImage, currentMq, workingImage]);\n\n return currentImage;\n};\n","import { useCallback, useEffect, useRef } from 'react';\n\nexport default function useInterval(callback: () => void, delay: number) {\n const callbackRef = useRef(callback);\n const intervalRef = useRef<number>();\n\n // Remember the latest callback.\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n\n const set = useCallback(() => {\n intervalRef.current = window.setInterval(\n () => callbackRef.current?.(),\n delay\n );\n }, [delay]);\n\n const clear = useCallback(() => {\n intervalRef.current && window.clearTimeout(intervalRef.current);\n }, []);\n\n useEffect(() => {\n set();\n return clear;\n }, [delay, set, clear]);\n\n const reset = useCallback(() => {\n clear();\n set();\n }, [clear, set]);\n\n return { clear, reset };\n}\n","import { useState, useEffect } from 'react';\n\nconst useTouch = () => {\n const [canTouch, setCanTouch] = useState(false);\n\n useEffect(() => {\n setCanTouch(\n 'ontouchstart' in window ||\n navigator.maxTouchPoints > 0 ||\n (navigator as any).msMaxTouchPoints > 0\n );\n }, []);\n return canTouch;\n};\n\nexport default useTouch;\n","import { useState } from 'react';\n\nconst useArray = <T>(defaultValue?: Array<T>) => {\n const [array, setArray] = useState<Array<T>>(defaultValue || []);\n\n const push = (element: T | T[]) => {\n if (Array.isArray(element)) {\n setArray((prev) => [...prev, ...element]);\n } else {\n setArray((prev) => [...prev, element]);\n }\n };\n\n const pop = () => {\n let lastEl: T | undefined;\n\n setArray((prev) => {\n const copy = [...prev];\n lastEl = copy.pop();\n return copy;\n });\n return lastEl;\n };\n\n const filter = (\n callback: (value: T, index: number, array: T[]) => void\n ) => {\n setArray((prev) => prev.filter(callback));\n };\n\n const update = (index: number, newEl: T) => {\n setArray((prev) => [\n ...prev.slice(0, index),\n newEl,\n ...prev.slice(index + 1, prev.length),\n ]);\n };\n\n const remove = (index: number) => {\n setArray((prev) => [\n ...prev.slice(0, index),\n ...prev.slice(index + 1, prev.length),\n ]);\n };\n\n const clear = () => {\n setArray([]);\n };\n\n return {\n array,\n set: setArray,\n push,\n filter,\n update,\n remove,\n clear,\n pop,\n };\n};\n\nexport default useArray;\n","import { ImageProps } from 'components/blocks/Image';\nimport { useEffect, useState } from 'react';\nimport { MediaQueryType } from './styles';\nimport { useMediaQuery } from './useMediaQuery';\n\nexport const useImgPreload = (\n imageUrls: ImageProps[],\n mqs: MediaQueryType[] = ['semilarge', 'large']\n) => {\n const [isReady, setReady] = useState(false);\n const [isLoaded, setLoaded] = useState(false);\n const currentMq = useMediaQuery(mqs as MediaQueryType[]);\n const [loadedImages, setLoadedImages] = useState<{\n [key: string]: { id: number | string; image: string }[];\n }>({\n small: [],\n medium: [],\n semilarge: [],\n large: [],\n xlarge: [],\n xxlarge: [],\n xxxLarge: [],\n });\n\n const preloadImages = (imageUrls: (string | undefined)[]) => {\n const images = (imageUrls.filter((img) => img) as string[]).map(\n (src, i) => {\n return new Promise((res) => {\n const img = new window.Image();\n img.src = src;\n img.onload = () => res({ url: src, i });\n });\n }\n );\n\n return images;\n };\n\n useEffect(() => {\n if (isReady && loadedImages && currentMq) {\n const loadedForMq = loadedImages[currentMq];\n\n if (loadedForMq.length < imageUrls.length && imageUrls.length > 0) {\n const requestedImages = imageUrls.map((img) => img[currentMq]);\n\n const resolve = async (items: any) => {\n for (const item of items) {\n const x = await item;\n\n setLoadedImages((prev) => {\n // check if image id already exists in array\n if (!prev[currentMq].find((e) => e.id === x.i)) {\n return {\n ...prev,\n [currentMq]: [\n ...prev[currentMq],\n {\n id: x.i,\n image: x.url,\n },\n ],\n };\n } else return prev;\n });\n }\n };\n\n resolve(preloadImages(requestedImages));\n }\n }\n }, [currentMq, imageUrls, isReady, loadedImages]);\n\n useEffect(() => {\n if (loadedImages && currentMq) {\n const imgCount = imageUrls.filter((img) => img[currentMq]).length;\n setLoaded(loadedImages[currentMq].length >= imgCount);\n }\n }, [currentMq, imageUrls, loadedImages]);\n\n return {\n loadedImages: currentMq && loadedImages[currentMq],\n isLoaded,\n setReady,\n };\n};\n","export const getBgImage = (\n bgImage: {\n small: string;\n medium?: string;\n semilarge?: string;\n large?: string;\n xlarge?: string;\n },\n mq?: 'small' | 'medium' | 'semilarge' | 'large' | 'xlarge'\n): string => {\n switch (mq) {\n default:\n case 'small':\n return bgImage.small;\n\n case 'medium':\n return (\n bgImage.medium ||\n bgImage.semilarge ||\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.small\n );\n\n case 'semilarge':\n return (\n bgImage.semilarge ||\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.medium ||\n bgImage.small\n );\n\n case 'large':\n return (\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.semilarge ||\n bgImage.medium ||\n bgImage.small\n );\n\n case 'xlarge':\n return (\n bgImage.xlarge ||\n bgImage.large ||\n bgImage.semilarge ||\n bgImage.medium ||\n bgImage.small\n );\n }\n};\n","import React from 'react';\n\ninterface FontFallback {\n name: string;\n altFont: string;\n sizeAdjust: string;\n}\n\nexport interface Font {\n rootPath: string;\n sourcePath: string;\n fallbacks?: FontFallback[];\n}\n\nexport const importFonts = (fonts: Font[]) => {\n return (\n <React.Fragment>\n {fonts && fonts.length > 0 && (\n <style\n dangerouslySetInnerHTML={{\n __html: fonts?.reduce((acc, current) => {\n if (current?.fallbacks) {\n acc += current?.fallbacks?.reduce(\n (fallAcc, f) => {\n fallAcc += `@font-face { font-family: '${f.name}'; size-adjust: ${f.sizeAdjust}; src: local('${f.altFont}'); } `;\n return fallAcc;\n },\n\n ''\n );\n return acc;\n } else return acc;\n }, ''),\n }}\n />\n )}\n\n {fonts?.map((font, i) => (\n <link\n key={i}\n rel=\"preconnect\"\n href={font.rootPath}\n crossOrigin=\"true\"\n />\n ))}\n {fonts?.map((font, i) => (\n <link key={i} rel=\"preload\" as=\"style\" href={font.sourcePath} />\n ))}\n\n <style\n dangerouslySetInnerHTML={{\n __html: `</style>${fonts?.reduce<string>(\n (prev, current) => {\n return (prev += `\n <link rel=\"stylesheet\" href=\"${current.sourcePath}\" media=\"print\" onload=\"this.media='all'\" />`);\n },\n ''\n )}<style>`,\n }}\n />\n\n <noscript>\n {fonts?.map((font, i) => (\n <link key={i} rel=\"stylesheet\" href={font.sourcePath} />\n ))}\n </noscript>\n </React.Fragment>\n );\n};\n","import { DefaultTheme } from 'styled-components';\nimport { getGlobals as global } from 'utils/styles';\n\nexport const getLinkIcon = (\n theme: DefaultTheme,\n href: string,\n isInverted?: boolean\n): string => {\n const linkIcons = global(theme).icons.linkIcons;\n\n const fileExtension = `.${href?.split('.').pop() || ''}`;\n const result = linkIcons.find((icon) => {\n return icon.patterns?.find((pattern) => pattern.match(fileExtension));\n });\n\n return result?.iconChar || result?.iconUrl?.(isInverted) || '';\n};\n","import { useCallback, useEffect, useState } from 'react';\n\nconst isSupported =\n typeof window !== 'undefined' && 'URLSearchParams' in window;\n\nconst getParamsObj = (params?: URLSearchParams) => {\n const obj: Record<string, string> = {};\n\n const paramsObj = Object.fromEntries(\n params || 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\nconst useParams = () => {\n const [params, setParams] = useState<Record<string, string>>({});\n\n useEffect(() => {\n if (!isSupported) return;\n\n setParams(getParamsObj());\n }, []);\n\n const update = useCallback(\n (key: string, value: string) => {\n if (!isSupported) return;\n\n const newParams = { ...params };\n newParams[key] = value;\n\n const currentParams = new URLSearchParams(window.location.search);\n for (const param in newParams) {\n currentParams.set(param, encodeURIComponent(newParams[param]));\n }\n\n setParams(getParamsObj(currentParams));\n\n window.history.replaceState(\n {},\n '',\n `${location.pathname}?${\n currentParams.toString() + location.hash\n }`\n );\n },\n [params]\n );\n\n return { params, update };\n};\n\nexport default useParams;\n"],"names":["useItemHeight","_a","useState","element","setElement","_b","height","setHeight","useEffect","calcHeight","offsetHeight","window","addEventListener","removeEventListener","ScrollDirection","useScroll","initialTopOffset","onLeftOffset","onEnterOffset","_c","topOffset","setTopOffset","_d","isTop","setIsTop","_e","isInOffset","setIsInOffset","_f","DOWN","scrollDirection","setScrollDirection","lastScrollPos","useRef","handleScroll","pageYOffset","current","prev","UP","canUseWebP","isBrowser","elem","document","createElement","getContext","toDataURL","indexOf","usePoster","posterImage","mqs","currentImage","setCurrentImage","workingImage","webp","currentMq","useMediaQuery","useInterval","callback","delay","callbackRef","intervalRef","set","useCallback","setInterval","call","clear","clearTimeout","reset","useTouch","canTouch","setCanTouch","navigator","maxTouchPoints","msMaxTouchPoints","useArray","defaultValue","array","setArray","push","Array","isArray","__spreadArray","pop","lastEl","copy","filter","update","index","newEl","slice","length","remove","useImgPreload","imageUrls","isReady","setReady","isLoaded","setLoaded","small","medium","semilarge","large","xlarge","xxlarge","xxxLarge","loadedImages","setLoadedImages","preloadImages","images","img","map","src","i","Promise","res","Image","onload","url","loadedForMq","requestedImages","resolve","items","__awaiter","item","x","sent","find","e","id","__assign","image","_i","items_1","imgCount","getBgImage","bgImage","mq","importFonts","fonts","React","Fragment","dangerouslySetInnerHTML","__html","reduce","acc","fallbacks","fallAcc","f","concat","name","sizeAdjust","altFont","font","key","rel","href","rootPath","crossOrigin","as","sourcePath","getLinkIcon","theme","isInverted","linkIcons","global","icons","fileExtension","split","result","icon","patterns","pattern","match","iconChar","iconUrl","isSupported","getParamsObj","params","obj","paramsObj","Object","fromEntries","URLSearchParams","location","search","param","value","decodeURIComponent","useParams","setParams","newParams","currentParams","encodeURIComponent","history","replaceState","pathname","toString","hash"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hooks.js","sources":["../src/utils/useItemHeight.ts","../src/utils/useScroll.ts","../src/utils/usePoster.ts","../src/utils/useInterval.ts","../src/utils/useTouch.ts","../src/utils/useArray.ts","../src/utils/useImgPreload.ts","../src/utils/backgroundImage.ts","../src/utils/fontLoading.tsx","../src/utils/getLinkIcon.ts","../src/utils/useParams.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nexport const useItemHeight = () => {\n const [element, setElement] = useState<HTMLElement | null>(null);\n const [height, setHeight] = useState<number>(0);\n\n useEffect(() => {\n const calcHeight = () => {\n if (element) setHeight(element.offsetHeight);\n };\n\n if (element) {\n calcHeight();\n window.addEventListener('resize', calcHeight);\n }\n\n return () => {\n window.removeEventListener('resize', calcHeight);\n };\n }, [element]);\n\n return {\n setElement,\n height,\n };\n};\n","import { useEffect, useRef, useState } from 'react';\n\nexport enum ScrollDirection {\n UP,\n DOWN,\n}\n\nexport const useScroll = ({\n initialTopOffset = 0,\n onLeftOffset,\n onEnterOffset,\n}: {\n initialTopOffset?: number;\n onLeftOffset?: () => void;\n onEnterOffset?: () => void;\n}) => {\n const [topOffset, setTopOffset] = useState<number>(initialTopOffset);\n const [isTop, setIsTop] = useState<boolean>(true);\n const [isInOffset, setIsInOffset] = useState<boolean>(true);\n const [scrollDirection, setScrollDirection] = useState<ScrollDirection>(\n ScrollDirection.DOWN\n );\n const lastScrollPos = useRef<number>(0);\n\n useEffect(() => {\n if (typeof window === 'undefined') return;\n const handleScroll = () => {\n setIsTop(window.pageYOffset <= 1);\n setIsInOffset(window.pageYOffset <= 1 + topOffset);\n\n if (lastScrollPos.current) {\n // check if top offset is left\n if (\n window.pageYOffset > 1 + topOffset &&\n lastScrollPos.current <= 1 + topOffset\n ) {\n onLeftOffset && onLeftOffset();\n }\n\n // check if top offset was joined\n if (\n window.pageYOffset <= 1 + topOffset &&\n lastScrollPos.current > 1 + topOffset\n ) {\n onEnterOffset && onEnterOffset();\n }\n\n setScrollDirection((prev) => {\n if (window.pageYOffset <= 1) return ScrollDirection.DOWN;\n return window.pageYOffset > lastScrollPos.current\n ? ScrollDirection.DOWN\n : window.pageYOffset < lastScrollPos.current\n ? ScrollDirection.UP\n : prev;\n });\n }\n lastScrollPos.current = window.pageYOffset;\n };\n\n handleScroll();\n window.addEventListener('scroll', handleScroll);\n\n return () => {\n window.removeEventListener('scroll', handleScroll);\n };\n }, [\n lastScrollPos,\n onLeftOffset,\n onEnterOffset,\n scrollDirection,\n topOffset,\n ]);\n\n return {\n isTop,\n isInOffset,\n scrollDirection,\n setTopOffset,\n topOffset,\n };\n};\n","import { useEffect, useState } from 'react';\nimport { isBrowser, useMediaQuery } from './useMediaQuery';\n\n// *****************\n// usePoster\n// *****************\n\ninterface PosterImage {\n small: string;\n medium?: string;\n semilarge?: string;\n large?: string;\n xlarge?: string;\n}\n\nexport const canUseWebP = () => {\n if (!isBrowser) return false;\n\n const elem = document.createElement('canvas');\n\n if (!(elem.getContext && elem.getContext('2d'))) {\n // was able or not to get WebP representation\n return elem.toDataURL('image/webp').indexOf('data:image/webp') == 0;\n }\n\n // very old browser like IE 8, canvas not supported\n return false;\n};\n\nexport type PosterMq = 'small' | 'medium' | 'semilarge' | 'large' | 'xlarge';\n\nexport const usePoster = (\n posterImage: PosterImage & {\n webp?: PosterImage;\n },\n mqs?: PosterMq[]\n) => {\n const [currentImage, setCurrentImage] = useState<string | undefined>();\n\n const workingImage =\n posterImage.webp && canUseWebP() ? posterImage.webp : posterImage;\n const currentMq = useMediaQuery(\n mqs || ['small', 'medium', 'semilarge', 'large', 'xlarge']\n ) as PosterMq | undefined;\n\n useEffect(() => {\n if (\n currentMq &&\n workingImage[currentMq] &&\n workingImage[currentMq] !== currentImage\n ) {\n setCurrentImage(workingImage[currentMq]);\n }\n }, [currentImage, currentMq, workingImage]);\n\n return currentImage;\n};\n","import { useCallback, useEffect, useRef } from 'react';\n\nexport default function useInterval(callback: () => void, delay: number) {\n const callbackRef = useRef(callback);\n const intervalRef = useRef<number>();\n\n // Remember the latest callback.\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n\n const set = useCallback(() => {\n intervalRef.current = window.setInterval(\n () => callbackRef.current?.(),\n delay\n );\n }, [delay]);\n\n const clear = useCallback(() => {\n intervalRef.current && window.clearInterval(intervalRef.current);\n }, []);\n\n useEffect(() => {\n set();\n return clear;\n }, [delay, set, clear]);\n\n const reset = useCallback(() => {\n clear();\n set();\n }, [clear, set]);\n\n return { clear, reset };\n}\n","import { useState, useEffect } from 'react';\n\nconst useTouch = () => {\n const [canTouch, setCanTouch] = useState(false);\n\n useEffect(() => {\n setCanTouch(\n 'ontouchstart' in window ||\n navigator.maxTouchPoints > 0 ||\n (navigator as any).msMaxTouchPoints > 0\n );\n }, []);\n return canTouch;\n};\n\nexport default useTouch;\n","import { useState } from 'react';\n\nconst useArray = <T>(defaultValue?: Array<T>) => {\n const [array, setArray] = useState<Array<T>>(defaultValue || []);\n\n const push = (element: T | T[]) => {\n if (Array.isArray(element)) {\n setArray((prev) => [...prev, ...element]);\n } else {\n setArray((prev) => [...prev, element]);\n }\n };\n\n const pop = () => {\n let lastEl: T | undefined;\n\n setArray((prev) => {\n const copy = [...prev];\n lastEl = copy.pop();\n return copy;\n });\n return lastEl;\n };\n\n const filter = (\n callback: (value: T, index: number, array: T[]) => void\n ) => {\n setArray((prev) => prev.filter(callback));\n };\n\n const update = (index: number, newEl: T) => {\n setArray((prev) => [\n ...prev.slice(0, index),\n newEl,\n ...prev.slice(index + 1, prev.length),\n ]);\n };\n\n const remove = (index: number) => {\n setArray((prev) => [\n ...prev.slice(0, index),\n ...prev.slice(index + 1, prev.length),\n ]);\n };\n\n const clear = () => {\n setArray([]);\n };\n\n return {\n array,\n set: setArray,\n push,\n filter,\n update,\n remove,\n clear,\n pop,\n };\n};\n\nexport default useArray;\n","import { ImageProps } from 'components/blocks/Image';\nimport { useEffect, useState } from 'react';\nimport { MediaQueryType } from './styles';\nimport { useMediaQuery } from './useMediaQuery';\n\nexport const useImgPreload = (\n imageUrls: ImageProps[],\n mqs: MediaQueryType[] = ['semilarge', 'large']\n) => {\n const [isReady, setReady] = useState(false);\n const [isLoaded, setLoaded] = useState(false);\n const currentMq = useMediaQuery(mqs as MediaQueryType[]);\n const [loadedImages, setLoadedImages] = useState<{\n [key: string]: { id: number | string; image: string }[];\n }>({\n small: [],\n medium: [],\n semilarge: [],\n large: [],\n xlarge: [],\n xxlarge: [],\n xxxLarge: [],\n });\n\n const preloadImages = (imageUrls: (string | undefined)[]) => {\n const images = (imageUrls.filter((img) => img) as string[]).map(\n (src, i) => {\n return new Promise((res) => {\n const img = new window.Image();\n img.src = src;\n img.onload = () => res({ url: src, i });\n });\n }\n );\n\n return images;\n };\n\n useEffect(() => {\n if (isReady && loadedImages && currentMq) {\n const loadedForMq = loadedImages[currentMq];\n\n if (loadedForMq.length < imageUrls.length && imageUrls.length > 0) {\n const requestedImages = imageUrls.map((img) => img[currentMq]);\n\n const resolve = async (items: any) => {\n for (const item of items) {\n const x = await item;\n\n setLoadedImages((prev) => {\n // check if image id already exists in array\n if (!prev[currentMq].find((e) => e.id === x.i)) {\n return {\n ...prev,\n [currentMq]: [\n ...prev[currentMq],\n {\n id: x.i,\n image: x.url,\n },\n ],\n };\n } else return prev;\n });\n }\n };\n\n resolve(preloadImages(requestedImages));\n }\n }\n }, [currentMq, imageUrls, isReady, loadedImages]);\n\n useEffect(() => {\n if (loadedImages && currentMq) {\n const imgCount = imageUrls.filter((img) => img[currentMq]).length;\n setLoaded(loadedImages[currentMq].length >= imgCount);\n }\n }, [currentMq, imageUrls, loadedImages]);\n\n return {\n loadedImages: currentMq && loadedImages[currentMq],\n isLoaded,\n setReady,\n };\n};\n","export const getBgImage = (\n bgImage: {\n small: string;\n medium?: string;\n semilarge?: string;\n large?: string;\n xlarge?: string;\n },\n mq?: 'small' | 'medium' | 'semilarge' | 'large' | 'xlarge'\n): string => {\n switch (mq) {\n default:\n case 'small':\n return bgImage.small;\n\n case 'medium':\n return (\n bgImage.medium ||\n bgImage.semilarge ||\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.small\n );\n\n case 'semilarge':\n return (\n bgImage.semilarge ||\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.medium ||\n bgImage.small\n );\n\n case 'large':\n return (\n bgImage.large ||\n bgImage.xlarge ||\n bgImage.semilarge ||\n bgImage.medium ||\n bgImage.small\n );\n\n case 'xlarge':\n return (\n bgImage.xlarge ||\n bgImage.large ||\n bgImage.semilarge ||\n bgImage.medium ||\n bgImage.small\n );\n }\n};\n","import React from 'react';\n\ninterface FontFallback {\n name: string;\n altFont: string;\n sizeAdjust: string;\n}\n\nexport interface Font {\n rootPath: string;\n sourcePath: string;\n fallbacks?: FontFallback[];\n}\n\nexport const importFonts = (fonts: Font[]) => {\n return (\n <React.Fragment>\n {fonts && fonts.length > 0 && (\n <style\n dangerouslySetInnerHTML={{\n __html: fonts?.reduce((acc, current) => {\n if (current?.fallbacks) {\n acc += current?.fallbacks?.reduce(\n (fallAcc, f) => {\n fallAcc += `@font-face { font-family: '${f.name}'; size-adjust: ${f.sizeAdjust}; src: local('${f.altFont}'); } `;\n return fallAcc;\n },\n\n ''\n );\n return acc;\n } else return acc;\n }, ''),\n }}\n />\n )}\n\n {fonts?.map((font, i) => (\n <link\n key={i}\n rel=\"preconnect\"\n href={font.rootPath}\n crossOrigin=\"true\"\n />\n ))}\n {fonts?.map((font, i) => (\n <link key={i} rel=\"preload\" as=\"style\" href={font.sourcePath} />\n ))}\n\n <style\n dangerouslySetInnerHTML={{\n __html: `</style>${fonts?.reduce<string>(\n (prev, current) => {\n return (prev += `\n <link rel=\"stylesheet\" href=\"${current.sourcePath}\" media=\"print\" onload=\"this.media='all'\" />`);\n },\n ''\n )}<style>`,\n }}\n />\n\n <noscript>\n {fonts?.map((font, i) => (\n <link key={i} rel=\"stylesheet\" href={font.sourcePath} />\n ))}\n </noscript>\n </React.Fragment>\n );\n};\n","import { DefaultTheme } from 'styled-components';\nimport { getGlobals as global } from 'utils/styles';\n\nexport const getLinkIcon = (\n theme: DefaultTheme,\n href: string,\n isInverted?: boolean\n): string => {\n const linkIcons = global(theme).icons.linkIcons;\n\n const fileExtension = `.${href?.split('.').pop() || ''}`;\n const result = linkIcons.find((icon) => {\n return icon.patterns?.find((pattern) => pattern.match(fileExtension));\n });\n\n return result?.iconChar || result?.iconUrl?.(isInverted) || '';\n};\n","import { useCallback, useEffect, useState } from 'react';\n\nconst isSupported =\n typeof window !== 'undefined' && 'URLSearchParams' in window;\n\nconst getParamsObj = (params?: URLSearchParams) => {\n const obj: Record<string, string> = {};\n\n const paramsObj = Object.fromEntries(\n params || 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\nconst useParams = () => {\n const [params, setParams] = useState<Record<string, string>>({});\n\n useEffect(() => {\n if (!isSupported) return;\n\n setParams(getParamsObj());\n }, []);\n\n const update = useCallback(\n (key: string, value: string) => {\n if (!isSupported) return;\n\n const newParams = { ...params };\n newParams[key] = value;\n\n const currentParams = new URLSearchParams(window.location.search);\n for (const param in newParams) {\n currentParams.set(param, encodeURIComponent(newParams[param]));\n }\n\n setParams(getParamsObj(currentParams));\n\n window.history.replaceState(\n {},\n '',\n `${location.pathname}?${\n currentParams.toString() + location.hash\n }`\n );\n },\n [params]\n );\n\n return { params, update };\n};\n\nexport default useParams;\n"],"names":["useItemHeight","_a","useState","element","setElement","_b","height","setHeight","useEffect","calcHeight","offsetHeight","window","addEventListener","removeEventListener","ScrollDirection","useScroll","initialTopOffset","onLeftOffset","onEnterOffset","_c","topOffset","setTopOffset","_d","isTop","setIsTop","_e","isInOffset","setIsInOffset","_f","DOWN","scrollDirection","setScrollDirection","lastScrollPos","useRef","handleScroll","pageYOffset","current","prev","UP","canUseWebP","isBrowser","elem","document","createElement","getContext","toDataURL","indexOf","usePoster","posterImage","mqs","currentImage","setCurrentImage","workingImage","webp","currentMq","useMediaQuery","useInterval","callback","delay","callbackRef","intervalRef","set","useCallback","setInterval","call","clear","clearInterval","reset","useTouch","canTouch","setCanTouch","navigator","maxTouchPoints","msMaxTouchPoints","useArray","defaultValue","array","setArray","push","Array","isArray","__spreadArray","pop","lastEl","copy","filter","update","index","newEl","slice","length","remove","useImgPreload","imageUrls","isReady","setReady","isLoaded","setLoaded","small","medium","semilarge","large","xlarge","xxlarge","xxxLarge","loadedImages","setLoadedImages","preloadImages","images","img","map","src","i","Promise","res","Image","onload","url","loadedForMq","requestedImages","resolve","items","__awaiter","item","x","sent","find","e","id","__assign","image","_i","items_1","imgCount","getBgImage","bgImage","mq","importFonts","fonts","React","Fragment","dangerouslySetInnerHTML","__html","reduce","acc","fallbacks","fallAcc","f","concat","name","sizeAdjust","altFont","font","key","rel","href","rootPath","crossOrigin","as","sourcePath","getLinkIcon","theme","isInverted","linkIcons","global","icons","fileExtension","split","result","icon","patterns","pattern","match","iconChar","iconUrl","isSupported","getParamsObj","params","obj","paramsObj","Object","fromEntries","URLSearchParams","location","search","param","value","decodeURIComponent","useParams","setParams","newParams","currentParams","encodeURIComponent","history","replaceState","pathname","toString","hash"],"mappings":"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"}
|