{"version":3,"file":"CampaignIntroduction-Chunk-49a4ba4f923d6f4c8d3e.js","mappings":"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","sources":["webpack://nikon-client/./utility/hooks/useHorizontalGrabScroll.ts","webpack://nikon-client/./utility/hooks/useHorizontalScrollShadows.ts","webpack://nikon-client/./components/atoms/ShadowContainerHorizontal/ShadowContainerHorizontal.tsx","webpack://nikon-client/./components/atoms/Video/Video.tsx","webpack://nikon-client/./components/atoms/CountdownItem/CountdownItem.tsx","webpack://nikon-client/./components/molecules/CountdownBlock/CountdownBlock.tsx","webpack://nikon-client/./config/video.config.ts","webpack://nikon-client/./models/enums/VideoProviderEnum.ts","webpack://nikon-client/./components/molecules/ExternalVideo/ExternalVideo.tsx","webpack://nikon-client/./components/molecules/VideoModal/VideoModal.tsx","webpack://nikon-client/./components/organisms/CampaignIntroduction/CampaignIntroduction.tsx","webpack://nikon-client/./components/molecules/ImageMasonryItem/ImageMasonryItem.tsx","webpack://nikon-client/./utility/hooks/useMasonryLayout.ts","webpack://nikon-client/./components/molecules/ImageMasonry/ImageMasonry.tsx","webpack://nikon-client/./components/organisms/ImageGalleryBlock/ImageGalleryBlock.tsx","webpack://nikon-client/./state-management/CookieStatusStore.ts","webpack://nikon-client/./node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.js","webpack://nikon-client/./node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/advancedFormat.js","webpack://nikon-client/./node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/isSameOrAfter.js"],"sourcesContent":["import { RefObject, useEffect, useRef, useState } from 'react';\n\nconst useHorizontalGrabScroll = (\n containerRef: RefObject,\n disabled: boolean\n) => {\n const [isMouseDown, setIsMouseDown] = useState(false);\n const mouseScrollPosition = useRef<{\n top: number;\n left: number;\n x: number;\n y: number;\n }>({\n top: 0,\n left: 0,\n x: 0,\n y: 0,\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.clientWidth) return;\n\n if (container.clientWidth >= container.scrollWidth || disabled) {\n container.style.cursor = 'inherit';\n return;\n }\n\n if (isMouseDown) {\n container.style.cursor = 'grabbing';\n return;\n }\n\n container.style.cursor = 'grab';\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isMouseDown, disabled]);\n\n useEffect(() => {\n mouseScrollPosition.current = { top: 0, left: 0, x: 0, y: 0 };\n const container = containerRef.current;\n\n if (!container) return () => ({});\n if (disabled) {\n container.scrollTop = 0;\n container.scrollLeft = 0;\n\n return () => ({});\n }\n\n const mouseMoveHandler = (e: MouseEvent) => {\n const dx = e.clientX - mouseScrollPosition.current.x;\n const dy = e.clientY - mouseScrollPosition.current.y;\n\n container.scrollTop = mouseScrollPosition.current.top - dy;\n container.scrollLeft = mouseScrollPosition.current.left - dx;\n };\n\n const mouseUpHandler = () => {\n document.removeEventListener('mousemove', mouseMoveHandler);\n document.removeEventListener('mouseup', mouseUpHandler);\n setIsMouseDown(false);\n };\n\n const mouseDownHandler = (e: MouseEvent) => {\n mouseScrollPosition.current = {\n top: container.scrollTop,\n left: container.scrollLeft,\n x: e.clientX,\n y: e.clientY,\n };\n setIsMouseDown(true);\n\n document.addEventListener('mousemove', mouseMoveHandler);\n document.addEventListener('mouseup', mouseUpHandler);\n };\n\n const onWheel = (e: WheelEvent) => {\n if (e.deltaY === 0) return;\n\n container.scrollTo({\n left: container.scrollLeft + e.deltaY,\n behavior: 'smooth',\n });\n };\n\n container.addEventListener('mousedown', mouseDownHandler);\n container.addEventListener('wheel', onWheel, { passive: true });\n\n return () => {\n container.removeEventListener('mousedown', mouseDownHandler);\n container.removeEventListener('wheel', onWheel);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disabled]);\n};\n\nexport default useHorizontalGrabScroll;\n","import ScrollProgressEnum from '@models/enums/ScrollProgressEnum';\nimport { useMotionValueEvent, useScroll } from 'framer-motion';\nimport { RefObject, useEffect, useState } from 'react';\n\nconst useHorizontalScrollShadows = (\n containerRef: RefObject,\n threshold: number,\n disabled: boolean\n) => {\n const { scrollXProgress } = useScroll({ container: containerRef });\n const [isStart, setIsStart] = useState(true);\n const [isEnd, setIsEnd] = useState(false);\n const [scrollProgress, setScrollProgress] = useState(\n ScrollProgressEnum.Start\n );\n\n useMotionValueEvent(scrollXProgress, 'change', (value: number) => {\n if (value < threshold) {\n setScrollProgress(ScrollProgressEnum.Start);\n }\n\n if (value >= threshold && value <= 1 - threshold) {\n setScrollProgress(ScrollProgressEnum.Middle);\n }\n\n if (value > 1 - threshold) {\n setScrollProgress(ScrollProgressEnum.End);\n }\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.clientWidth || disabled) return;\n\n const { clientWidth, scrollWidth } = container;\n if (clientWidth >= scrollWidth) {\n setIsStart(true);\n setIsEnd(true);\n\n return;\n }\n\n if (scrollProgress === ScrollProgressEnum.Start) {\n setIsStart(true);\n setIsEnd(false);\n }\n\n if (scrollProgress === ScrollProgressEnum.Middle) {\n setIsStart(false);\n setIsEnd(false);\n }\n\n if (scrollProgress === ScrollProgressEnum.End) {\n setIsEnd(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disabled, scrollProgress]);\n\n return { isStart, isEnd };\n};\n\nexport default useHorizontalScrollShadows;\n","import useHorizontalGrabScroll from '@utils/hooks/useHorizontalGrabScroll';\nimport useHorizontalScrollShadows from '@utils/hooks/useHorizontalScrollShadows';\nimport classNames from 'classnames';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport {\n PropsWithChildren,\n forwardRef,\n useImperativeHandle,\n useRef,\n} from 'react';\n\nexport interface IShadowContainerHorizontalRef {\n readonly scrollTo: (offset: number) => void;\n readonly getOffsetWidth: () => number;\n}\n\ninterface Props {\n readonly className?: string;\n readonly shadowColour?: string;\n readonly threshold?: number;\n readonly showStart?: boolean; // Manually override shadows from a parent component\n readonly showEnd?: boolean;\n readonly disableScroll?: boolean; // Used together with showStart/showEnd to disable scrolling within the container (e.g. when we want to wrap a carousel within some left/right shadows, we want to use the carousel's scrolling/swiping, not the container's one)\n readonly shadowWidth?: string;\n readonly isNoWrapEnabled?: boolean;\n}\n\nconst ShadowContainerHorizontal = forwardRef<\n IShadowContainerHorizontalRef,\n PropsWithChildren\n>(\n (\n {\n children,\n className,\n disableScroll = false,\n shadowColour = 'from-white dark:from-black-100',\n threshold = 0.05,\n showStart = false,\n showEnd = true,\n shadowWidth = 'w-10',\n isNoWrapEnabled = true,\n },\n ref\n ) => {\n const containerRef = useRef(null);\n const { isStart, isEnd } = useHorizontalScrollShadows(\n containerRef,\n threshold,\n disableScroll\n );\n useHorizontalGrabScroll(containerRef, disableScroll);\n\n useImperativeHandle(ref, () => ({\n scrollTo: (leftOffset: number) => {\n containerRef.current?.scrollTo({\n left: leftOffset,\n behavior: 'smooth',\n });\n },\n getOffsetWidth: () => containerRef.current?.offsetWidth ?? 0,\n }));\n\n return (\n
\n \n {(!isStart || showStart) && (\n \n )}\n \n\n \n {children}\n
\n\n {/* isEnd is always false when using showEnd override so !isEnd is always true */}\n \n {!isEnd && showEnd && (\n \n )}\n \n \n );\n }\n);\n\nexport default ShadowContainerHorizontal;\n","import loadable from '@loadable/component';\nimport { AspectRatioType } from '@models/IAspectRatio';\nimport { IVideoAttributes } from '@models/IVideoAttributes';\nimport updateDataLayer from '@utils/helpers/gtm';\nimport classNames from 'classnames';\nimport { motion, MotionValue } from 'framer-motion';\nimport {\n ChangeEvent,\n ForwardedRef,\n forwardRef,\n useEffect,\n useState,\n} from 'react';\nimport { Config } from 'react-player';\n\nconst ReactPlayer = loadable(\n () => import(/* webpackChunkName: \"react-player\" */ 'react-player')\n);\n\ninterface Props {\n readonly classes?: string;\n readonly config?: Config;\n readonly controls?: boolean;\n readonly epiEdit?: string;\n readonly isPlaying?: boolean;\n readonly title?: string;\n readonly url?: string;\n readonly videoAttributes?: IVideoAttributes;\n readonly videoRatio?: AspectRatioType;\n readonly videoSource?: string;\n readonly videoWrapperOpacityProgress?: MotionValue;\n readonly onEndedVideo?: () => void;\n readonly onVideoReady?: () => void;\n readonly onVideoStart?: () => void;\n readonly onVolumeChange?: (videoElement: HTMLVideoElement) => void;\n readonly setIsPlaying?: (playing: boolean) => void;\n}\n\nconst Video = forwardRef(\n (\n {\n classes,\n config,\n controls = true,\n epiEdit,\n isPlaying,\n title,\n videoAttributes,\n videoRatio = 'aspect-video',\n videoSource,\n videoWrapperOpacityProgress,\n onEndedVideo,\n onVideoReady,\n onVideoStart,\n onVolumeChange,\n setIsPlaying,\n }: Props,\n ref\n ) => {\n const [prevProgress, setPrevProgress] = useState(0);\n const [isBrowser, setIsBrowser] = useState(false);\n\n useEffect(() => {\n setIsBrowser(typeof window !== 'undefined');\n }, []);\n\n useEffect(() => {\n setPrevProgress(0);\n }, [title]);\n\n const handleProgressUpdate = (progress: string) => {\n updateDataLayer({\n event: 'videoInteraction',\n video_interaction: 'video_progress',\n video_progress: progress,\n video_title: title,\n });\n };\n\n const handleVideoAction = (action: string) => {\n updateDataLayer({\n event: 'videoInteraction',\n video_interaction:\n action === 'START' ? 'video_start' : 'video_complete',\n video_progress: action === 'START' ? 'video_start' : 'video_complete',\n video_title: title,\n });\n };\n\n const updateVideoProgressData = (progress: number) => {\n if (prevProgress < 0.25 && progress > 0.25) {\n handleProgressUpdate('25%');\n }\n if (prevProgress < 0.5 && progress > 0.5) {\n handleProgressUpdate('50%');\n }\n if (prevProgress < 0.75 && progress > 0.75) {\n handleProgressUpdate('75%');\n }\n if (prevProgress > 0.9 && progress < 0.1) {\n handleVideoAction('COMPLETE');\n }\n setPrevProgress(progress);\n };\n\n if (!videoSource) return null;\n\n return (\n }\n className={classNames(classes, videoRatio, 'w-full')}\n data-epi-property-name={epiEdit}\n data-testid={isPlaying ? 'video-playing' : 'video-paused'}\n style={{\n opacity: videoWrapperOpacityProgress ?? 1,\n }}\n >\n {isBrowser && (\n updateVideoProgressData(played)}\n onStart={() => {\n onVideoStart?.();\n handleVideoAction('START');\n }}\n onEnded={() => {\n onEndedVideo?.();\n handleVideoAction('COMPLETE');\n }}\n onPause={() => setIsPlaying?.(false)}\n onPlay={() => setIsPlaying?.(true)}\n onReady={onVideoReady}\n config={config}\n onVolumeChange={(event: ChangeEvent) => {\n onVolumeChange?.(event.target);\n }}\n {...videoAttributes}\n />\n )}\n \n );\n }\n);\n\nexport default Video;\n","import { AnimatePresence, motion } from 'framer-motion';\nimport { useEffect, useState } from 'react';\n\ninterface Props {\n readonly dateItem: string;\n readonly label: string;\n}\n\nconst CountdownItem = ({ dateItem, label }: Props) => {\n const [animationInitialised, setAnimationInitialised] = useState(false);\n\n useEffect(() => {\n setAnimationInitialised(true);\n }, []);\n\n return (\n \n
\n \n {dateItem}\n \n\n \n {label}\n \n
\n
\n );\n};\n\nexport default CountdownItem;\n","import CountdownItem from '@atoms/CountdownItem/CountdownItem';\nimport dayjs from 'dayjs';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter';\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\ndayjs.extend(isSameOrAfter);\n\ninterface Props {\n readonly date: Date;\n readonly daysLabel: string;\n readonly hoursLabel: string;\n readonly minutesLabel: string;\n readonly dataTestId?: string;\n}\n\nconst CountdownBlock = ({\n date,\n daysLabel,\n hoursLabel,\n minutesLabel,\n dataTestId,\n}: Props) => {\n const [dayDiff, setDayDiff] = useState();\n const [hourDiff, setHourDiff] = useState();\n const [minuteDiff, setMinuteDiff] = useState();\n const intervalRef = useRef>();\n\n const formatNumber = (number: number) => {\n if (number < 0) return '00';\n if (`${number}`.length > 1) return `${number}`;\n return `0${number}`;\n };\n\n const setDateDifference = useCallback(() => {\n const days = dayjs(date).diff(dayjs(), 'd');\n const hours = dayjs(date).diff(dayjs().add(days, 'd'), 'h');\n const minutes = dayjs(date).diff(\n dayjs().add(days, 'd').add(hours, 'h'),\n 'minute'\n );\n\n const dayDiffFormatted = formatNumber(days);\n const hourDiffFormatted = formatNumber(hours);\n const minuteDiffFormatted = formatNumber(minutes);\n\n if (dayDiff !== dayDiffFormatted) {\n setDayDiff(dayDiffFormatted);\n }\n\n if (hourDiff !== hourDiffFormatted) {\n setHourDiff(hourDiffFormatted);\n }\n\n if (minuteDiff !== minuteDiffFormatted) {\n setMinuteDiff(minuteDiffFormatted);\n }\n\n if (dayjs().isSameOrAfter(date, 'minute')) {\n clearInterval(intervalRef.current);\n }\n }, [date, dayDiff, hourDiff, minuteDiff]);\n\n useEffect(() => {\n setDateDifference();\n\n intervalRef.current = setInterval(() => {\n setDateDifference();\n }, 1000);\n\n return () => clearInterval(intervalRef.current);\n }, [date, setDateDifference]);\n\n if (!dayDiff || !hourDiff || !minuteDiff) {\n return null;\n }\n\n return (\n
\n {dayDiff && }\n\n {hourDiff && }\n\n {minuteDiff && (\n \n )}\n
\n );\n};\n\nexport default CountdownBlock;\n","export const autoPlayYoutubePlayerAttributes = {\n playsinline: true,\n muted: true,\n playing: true,\n};\n\nexport const autoPlayYoutubePlayerConfig = {\n youtube: {\n playerVars: {\n autoplay: 1,\n mute: 1,\n enablejsapi: 1,\n showinfo: 0,\n },\n },\n};\n\nexport const standardYoutubePlayerAttributes = {\n playsinline: true,\n muted: true,\n playing: false,\n};\n\nexport const standardYoutubePlayerConfig = {\n youtube: {\n playerVars: {\n autoplay: 0,\n mute: 0,\n enablejsapi: 1,\n showinfo: 0,\n },\n },\n};\n\nexport const autoPlayVimeoPlayerAttributes = {\n playsinline: true,\n muted: true,\n playing: true,\n};\n\nexport const autoPlayVimeoPlayerConfig = {\n vimeo: {\n playerOptions: {\n autoplay: true,\n muted: true,\n },\n },\n};\n\nexport const standardVimeoPlayerAttributes = {\n playsinline: true,\n muted: false,\n playing: false,\n loop: true,\n};\n\nexport const standardViemoPlayerConfig = {\n vimeo: {\n playerOptions: {\n autoplay: false,\n muted: false,\n },\n },\n};\n","enum VideoProviderEnum {\n Youtube = 'youtube',\n Vimeo = 'vimeo',\n}\n\nexport default VideoProviderEnum;\n","import Video from '@atoms/Video/Video';\nimport {\n autoPlayVimeoPlayerAttributes,\n autoPlayVimeoPlayerConfig,\n autoPlayYoutubePlayerAttributes,\n autoPlayYoutubePlayerConfig,\n standardViemoPlayerConfig,\n standardVimeoPlayerAttributes,\n standardYoutubePlayerAttributes,\n standardYoutubePlayerConfig,\n} from '@config/video.config';\nimport VideoProviderEnum from '@models/enums/VideoProviderEnum';\nimport IExternalVideo from '@models/IExternalVideo';\nimport { IVideoAttributes } from '@models/IVideoAttributes';\nimport classNames from 'classnames';\nimport { forwardRef, PropsWithChildren } from 'react';\n\ninterface Props extends IExternalVideo {\n readonly autoPlay: boolean;\n readonly onEndedVideo?: () => void;\n readonly onVideoReady?: () => void;\n readonly onVideoStart?: () => void;\n readonly classes?: string;\n readonly customVideoAttributes?: IVideoAttributes;\n readonly isInvisible?: boolean;\n readonly dataTestId?: string;\n}\n\nconst ExternalVideo = forwardRef(\n (\n {\n videoProvider = VideoProviderEnum.Youtube,\n videoId,\n autoPlay,\n onEndedVideo,\n onVideoReady,\n onVideoStart,\n classes,\n children,\n title,\n customVideoAttributes,\n isInvisible = false,\n dataTestId = 'External-Video',\n }: PropsWithChildren,\n ref\n ) => {\n const options = {\n youtube: {\n autoPlay: {\n videoAttributes: autoPlayYoutubePlayerAttributes,\n videoConfig: autoPlayYoutubePlayerConfig,\n },\n standard: {\n videoAttributes: standardYoutubePlayerAttributes,\n videoConfig: standardYoutubePlayerConfig,\n },\n },\n vimeo: {\n autoPlay: {\n videoAttributes: autoPlayVimeoPlayerAttributes,\n videoConfig: autoPlayVimeoPlayerConfig,\n },\n standard: {\n videoAttributes: standardVimeoPlayerAttributes,\n videoConfig: standardViemoPlayerConfig,\n },\n },\n };\n\n return (\n \n \n {children}\n \n );\n }\n);\n\nexport default ExternalVideo;\n","import Modal from '@atoms/Modal/Modal';\nimport Video from '@atoms/Video/Video';\nimport VideoProviderEnum from '@models/enums/VideoProviderEnum';\nimport ExternalVideo from '@molecules/ExternalVideo/ExternalVideo';\nimport { useState } from 'react';\n\ninterface Props {\n readonly dataTestId?: string;\n readonly videoTitle?: string;\n readonly videoProvider?: VideoProviderEnum;\n readonly videoId?: string;\n readonly videoUrl?: string;\n readonly isOpen: boolean;\n readonly onOpenChange: (isOpen: boolean) => void;\n readonly onCloseCallback?: () => void;\n readonly shouldCloseOnClickOutsideContent?: boolean;\n readonly transparent?: boolean;\n}\n\nconst VideoModal = ({\n videoTitle,\n videoProvider,\n videoId,\n isOpen,\n onOpenChange,\n onCloseCallback,\n shouldCloseOnClickOutsideContent = true,\n transparent = true,\n videoUrl,\n dataTestId,\n}: Props) => {\n const [isPlaying, setIsPlaying] = useState(true);\n\n return (\n \n {videoId && videoProvider && (\n \n )}\n\n {videoUrl && (\n \n )}\n \n );\n};\n\nexport default VideoModal;\n","import Button from '@atoms/Button/Button';\nimport Icon from '@atoms/Icon/Icon';\nimport ShadowContainerHorizontal from '@atoms/ShadowContainerHorizontal/ShadowContainerHorizontal';\nimport { ICampaign } from '@models/ICampaign';\nimport { ICampaignIntroduction } from '@models/ICampaignIntroduction';\nimport CountdownBlock from '@molecules/CountdownBlock/CountdownBlock';\nimport VideoModal from '@molecules/VideoModal/VideoModal';\nimport ImageGalleryBlock from '@organisms/ImageGalleryBlock/ImageGalleryBlock';\nimport useCookieStatusStore from '@state/CookieStatusStore';\nimport classNames from 'classnames';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { useState } from 'react';\n\ndayjs.extend(advancedFormat);\n\nconst CampaignIntroduction = ({\n campaigns,\n componentName,\n}: ICampaignIntroduction) => {\n const [selectedCampaign, setSelectedCampaign] = useState(campaigns[0]!);\n const [isVideoModalOpen, setIsVideoModalOpen] = useState(false);\n const { cookieStatus } = useCookieStatusStore((state) => ({\n cookieStatus: state.cookieStatus,\n }));\n\n const isLive = (campaign: ICampaign) =>\n dayjs().isAfter(campaign.startDate) && dayjs().isBefore(campaign.endDate);\n\n const transition = {\n damping: 20,\n duration: 0.4,\n mass: 1.2,\n stiffness: 80,\n type: 'spring',\n };\n\n return (\n \n
\n
\n \n
\n {campaigns.map((campaign, index) => (\n \n setSelectedCampaign(campaign)}\n type=\"button\"\n data-testid={`CT-33-Campaign-Intro-Tab-${index}`}\n >\n {campaign.name}\n \n\n \n {isLive(campaign)\n ? campaign.liveNowLabel\n : dayjs(campaign.startDate).format(\n campaign.dateFormat === 'MMM dd' ? 'MMM D' : 'D MMM'\n )}\n \n
\n ))}\n
\n \n\n \n \n
\n
\n \n {selectedCampaign.link?.name && selectedCampaign.video && (\n <>\n {\n if (cookieStatus) {\n setIsVideoModalOpen(true);\n }\n }}\n className=\"mt-7.5 flex items-center justify-center\"\n data-testid=\"CT-33-Campaign-Intro-Video-Button\"\n >\n {selectedCampaign.link.name}\n \n \n\n \n \n )}\n {selectedCampaign.link?.name &&\n selectedCampaign.link.url &&\n !selectedCampaign.video && (\n \n {selectedCampaign.link.name}\n \n )}\n
\n
\n {isLive(selectedCampaign) ? (\n \n ) : (\n \n {dayjs(selectedCampaign.startDate).format(\n selectedCampaign.dateFormat === 'MMM dd'\n ? 'MMM Do'\n : 'Do MMM'\n )}\n \n )}\n
\n
\n \n
\n
\n \n\n \n \n \n \n \n \n );\n};\n\nexport default CampaignIntroduction;\n","import { ICameraImage } from '@models/ICameraImage';\nimport ImageLightBox from '@molecules/ImageLightBox/ImageLightBox';\nimport useMediaQuery from '@utils/hooks/useMediaQuery';\nimport classNames from 'classnames';\n\ninterface Props extends ICameraImage {\n readonly className?: string;\n readonly isDoubleSize?: boolean;\n readonly gap: number;\n readonly width: number;\n readonly contentIds: string[];\n readonly dataTestId?: string;\n}\n\nconst ImageMasonryItem = ({\n className,\n isDoubleSize = false,\n gap,\n width,\n dataTestId,\n ...props\n}: Props) => {\n const { image, componentName } = props;\n const isBelowXLargeDesktop = useMediaQuery(1900);\n if (!image?.desktop?.url) return null;\n\n // (original height / original width) x new width = new height\n const calculatedHeight = Math.floor(\n (image.desktop.height / image.desktop.width) * width\n );\n const height =\n !isBelowXLargeDesktop && isDoubleSize\n ? calculatedHeight * 2\n : calculatedHeight;\n\n return (\n \n \n \n );\n};\n\nexport default ImageMasonryItem;\n","/* We were initially using the react-masonry-component (https://www.npmjs.com/package/react-masonry-component)\nfor rendering the masonry layout, but this library is not supported by React 18. \nThe alternative was to implement a custom solution using the core library\nthat is also used by react-masonry-component, i.e. masonry-layout (https://www.npmjs.com/package/masonry-layout).\nThe approach below partially follows the approach used \nhere - https://github.com/eiriklv/react-masonry-component/blob/master/lib/index.js - which could be used for further\nreferences if any more changes are needed to our logic in the future.\nThe library was first imported in order to get the type and then the main library had to be conditionally\nimported so it is only used on the client side, otherwise this will crash when used with \nthe server in place since the window object used within will be undefined on the server side. */\n\nimport { RefObject, useCallback, useEffect, useRef } from 'react';\nimport MasonryLayoutType from 'masonry-layout';\n\nconst MasonryLayout =\n typeof window !== 'undefined' ? require('masonry-layout') : null;\n\ninterface MasonryConfig {\n readonly columnWidth: string | number;\n readonly itemSelector: string;\n readonly gutter: number;\n readonly horizontalOrder: boolean;\n}\n\nconst useMasonryLayout = (\n containerRef: RefObject,\n { columnWidth, itemSelector, gutter, horizontalOrder }: MasonryConfig\n) => {\n const masonryInstance = useRef(null);\n const latestKnownItems = useRef([]);\n\n const getCurrentItems = useCallback(() => {\n if (!containerRef.current) return [];\n\n return Array.from(\n containerRef.current.querySelectorAll(itemSelector)\n ) as HTMLElement[];\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [itemSelector]);\n\n const initializeMasonry = useCallback(async () => {\n if (!containerRef.current) return;\n\n masonryInstance.current = new MasonryLayout(containerRef.current, {\n columnWidth,\n itemSelector,\n gutter,\n horizontalOrder,\n });\n latestKnownItems.current = getCurrentItems();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [columnWidth, itemSelector, gutter, horizontalOrder, getCurrentItems]);\n\n useEffect(() => {\n initializeMasonry();\n\n return () => {\n masonryInstance.current?.destroy?.();\n };\n }, [initializeMasonry]);\n\n useEffect(() => {\n const currentItems = getCurrentItems();\n const newItems = currentItems.filter(\n (item) => latestKnownItems.current.indexOf(item) === -1\n );\n const pivotIndex = latestKnownItems.current[0]\n ? currentItems.indexOf(latestKnownItems.current[0])\n : 0;\n const prependedItems = newItems.filter(\n (item) => currentItems.indexOf(item) < pivotIndex\n );\n const appendedItems = newItems.filter(\n (item) => prependedItems.indexOf(item) === -1\n );\n const removedItems = latestKnownItems.current.filter(\n (item) => currentItems.indexOf(item) === -1\n );\n\n latestKnownItems.current = currentItems;\n\n if (removedItems.length) {\n masonryInstance.current?.remove?.(removedItems);\n }\n if (appendedItems.length) {\n masonryInstance.current?.appended?.(appendedItems);\n }\n if (prependedItems.length) {\n masonryInstance.current?.prepended?.(prependedItems);\n }\n\n masonryInstance.current?.reloadItems?.();\n masonryInstance.current?.layout?.();\n });\n};\n\nexport default useMasonryLayout;\n","import { ResizeObserver } from '@juggle/resize-observer';\nimport { IImageMasonry } from '@models/IImageMasonry';\nimport ImageMasonryItem from '@molecules/ImageMasonryItem/ImageMasonryItem';\nimport useMasonryLayout from '@utils/hooks/useMasonryLayout';\nimport classNames from 'classnames';\nimport { useRef } from 'react';\nimport useMeasure from 'react-use-measure';\n\nconst ImageMasonry = ({ images, language }: IImageMasonry) => {\n // Pollyfill is for storybook only, but it will get bundled into the output bundle sooo\n const [columnSizerRef, columnSizerBounds] = useMeasure({\n polyfill: ResizeObserver,\n });\n const masonryContainerRef = useRef(null);\n const columnSizerClassName = 'grid-sizer';\n const itemClassName = 'grid-item';\n const gutter = 16;\n\n useMasonryLayout(masonryContainerRef, {\n columnWidth: `.${columnSizerClassName}`,\n itemSelector: `.${itemClassName}`,\n gutter,\n horizontalOrder: true,\n });\n\n return (\n
\n \n
\n\n {images.map((cameraImage, index) => (\n meta?.contentLink as string)}\n dataTestId={`Image-Masonry-Item-${index}`}\n />\n ))}\n
\n
\n );\n};\n\nexport default ImageMasonry;\n","import { IImageGalleryBlock } from '@models/IImageGalleryBlock';\nimport { ILightBoxImage } from '@models/ILightBoxImage';\nimport ImageMasonry from '@molecules/ImageMasonry/ImageMasonry';\nimport ListingResultsContainer from '@molecules/ListingResultsContainer/ListingResultsContainer';\nimport LoadMoreListing from '@molecules/LoadMoreListing/LoadMoreListing';\nimport ContentFilters from '@organisms/ContentFilters/ContentFilters';\nimport useListingComponentProps from '@utils/hooks/useListingComponentProps';\nimport classNames from 'classnames';\nimport { AnimatePresence, motion } from 'framer-motion';\n\nconst ImageGalleryBlock = (props: IImageGalleryBlock) => {\n const {\n anchorId = '',\n componentName,\n endpoint,\n galleryId,\n imageCountText,\n showExpandedFilters,\n liveFeed,\n liveFeedLabel,\n sectionTitle,\n showFacets,\n showTotalImages,\n title,\n } = props;\n\n const persistingParams = { galleryId: [galleryId] };\n\n const { results, ...listingProps } = useListingComponentProps({\n ...props,\n endpoint: `/${endpoint}`,\n persistingParams,\n });\n\n if (!results?.length) return null;\n\n return (\n \n
\n
\n {sectionTitle && (\n

\n {sectionTitle}\n

\n )}\n {showTotalImages && (\n
\n \n {!listingProps.loading && (\n \n {imageCountText && (\n

\n {listingProps.totalNumberResults || 0}\n {imageCountText}\n

\n )}\n \n )}\n
\n
\n )}\n\n {!showTotalImages && (\n
\n \n {title}\n \n {liveFeed && liveFeedLabel && (\n \n {liveFeedLabel}\n \n \n \n \n )}\n
\n )}\n
\n {showFacets && (\n \n )}\n
\n
\n
\n\n \n \n \n\n {results?.length > 0 && results.length < listingProps.total && (\n
\n
\n \n
\n
\n )}\n \n );\n};\n\nexport default ImageGalleryBlock;\n","import create from 'zustand';\n\ninterface ICookieStatusState {\n readonly cookieStatus: boolean;\n readonly setCookieStatus: (cookieStatus: boolean) => void;\n}\n\nconst useCookieStatusStore = create((set) => ({\n cookieStatus: false,\n setCookieStatus: (cookieStatus: boolean) => set({ cookieStatus }),\n}));\n\nexport default useCookieStatusStore;\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)