{"version":3,"file":"1-aab468b4ff7d5ba7a9d9.js","mappings":"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","sources":["webpack://nikon-client/./components/molecules/AuthorPanel/AuthorPanel.tsx","webpack://nikon-client/./models/enums/ImageLightBoxTypeEnum.ts","webpack://nikon-client/./components/molecules/LightBoxInner/LightBoxInner.tsx","webpack://nikon-client/./services/getLightBoxImages.ts","webpack://nikon-client/./components/molecules/LightBoxOuter/LightBoxOuter.tsx","webpack://nikon-client/./components/molecules/ImageLightBox/ImageLightBox.tsx"],"sourcesContent":["import Bullets from '@atoms/Bullets/Bullets';\nimport Icon from '@atoms/Icon/Icon';\nimport ProfilePicture from '@atoms/ProfilePicture/ProfilePicture';\nimport Tooltip from '@atoms/Tooltip/Tooltip';\nimport ProfilePictureSizeEnum from '@models/enums/ProfilePictureSizeEnum';\nimport SizeEnum from '@models/enums/SizeEnum';\nimport TooltipPositionEnum from '@models/enums/TooltipPositionEnum';\nimport { IAuthor } from '@models/IAuthor';\nimport useMediaQuery from '@utils/hooks/useMediaQuery';\nimport classNames from 'classnames';\n\ninterface Props extends IAuthor {\n readonly backgroundColourClassName?: string;\n readonly size?:\n | ProfilePictureSizeEnum.Size50\n | ProfilePictureSizeEnum.Size76\n | ProfilePictureSizeEnum.Size120;\n readonly textSize?: SizeEnum;\n}\n\nconst AuthorPanel = ({\n ambassador,\n authorName,\n backgroundColourClassName = 'bg-grey-100 dark:bg-grey-600',\n iconTooltip,\n initials,\n size,\n specialism,\n subTitle,\n textSize = SizeEnum.Medium,\n thumbnail,\n}: Props) => {\n const filteredSpecialisms = [...[subTitle], ...(specialism ?? [])];\n\n const isBelowLargeDesktop = useMediaQuery(1440);\n const pictureSize = isBelowLargeDesktop\n ? ProfilePictureSizeEnum.Size76\n : ProfilePictureSizeEnum.Size120;\n\n const titleFontSize = {\n [SizeEnum.Small]: 'text-md',\n [SizeEnum.Medium]: 'h6',\n [SizeEnum.Large]: 'h5',\n [SizeEnum.XLarge]: 'h1',\n };\n\n return (\n \n {(thumbnail || initials) && (\n \n )}\n\n
\n {authorName && (\n
\n \n {authorName}\n

\n\n {ambassador && !(thumbnail || initials) && (\n
\n \n {iconTooltip && (\n \n )}\n
\n )}\n
\n )}\n\n \n
\n \n );\n};\n\nexport default AuthorPanel;\n","enum ImageLightBoxTypeEnum {\n none = 'none',\n author = 'author',\n metadata = 'metadata',\n}\n\nexport default ImageLightBoxTypeEnum;\n","import Button from '@atoms/Button/Button';\nimport Icon from '@atoms/Icon/Icon';\nimport Image from '@atoms/Image/Image';\nimport ShadowContainerVertical from '@atoms/ShadowContainerVertical/ShadowContainerVertical';\nimport BrowserTypes from '@models/enums/BrowserEnums';\nimport IconSizeEnum from '@models/enums/IconSizeEnum';\nimport ProfilePictureSizeEnum from '@models/enums/ProfilePictureSizeEnum';\nimport SizeEnum from '@models/enums/SizeEnum';\nimport { ILightBoxImage } from '@models/ILightBoxImage';\nimport AuthorPanel from '@molecules/AuthorPanel/AuthorPanel';\nimport useAriaLabels from '@utils/hooks/useAriaLabels';\nimport useMediaQuery from '@utils/hooks/useMediaQuery';\nimport classNames from 'classnames';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { Dispatch, SetStateAction, useState } from 'react';\nimport { browserName, isIOS } from 'react-device-detect';\n\ninterface Props extends ILightBoxImage {\n readonly isEnlargedImage: boolean;\n readonly setIsEnlargedImage: Dispatch>;\n}\n\nconst LightBoxInner = ({\n ambassadorAuthor,\n cameraModel,\n cameraProductDetailPage,\n description,\n fNumber,\n image,\n isEnlargedImage,\n isoSensitivity,\n lensModel,\n lensProductDetailPage,\n s35mmEquivalent,\n setIsEnlargedImage,\n showLessLabel,\n showMoreLabel,\n shutterSpeed,\n}: Props) => {\n const mobileCutOff = 40;\n const desktopCutOff = 48;\n const maxDescriptionCharCount = 178;\n const largeDescription =\n !!description && description.length >= maxDescriptionCharCount;\n const isPortraitImage = image?.desktop?.width < image?.desktop?.height;\n\n const isMobile = useMediaQuery(1024);\n const [isMobileDescriptionExpanded, setIsMobileDescriptionExpanded] =\n useState(false);\n const [isDesktopDescriptionExpanded, setIsDesktopDescriptionExpanded] =\n useState(false);\n const [desktopDescriptionContentHeight, setDesktopDescriptionContentHeight] =\n useState(0);\n const [mobileDescriptionContentHeight, setMobileDescriptionContentHeight] =\n useState(0);\n\n const { openImageInFullScreenAriaLabel } = useAriaLabels();\n\n const isMobileExpandButtonDisplayed =\n isMobileDescriptionExpanded ||\n mobileDescriptionContentHeight > mobileCutOff;\n const isDesktopExpandButtonDisplayed =\n isDesktopDescriptionExpanded ||\n desktopDescriptionContentHeight > desktopCutOff;\n const imageData = [shutterSpeed, s35mmEquivalent, fNumber, isoSensitivity];\n\n const getDescriptionVariants = (cutOffHeight: number) => ({\n animate: { height: 'auto' },\n initial: { height: `${cutOffHeight}px` },\n transition: { type: 'spring' },\n });\n\n const getLargeScreenHeightClass = () => {\n if (isIOS)\n return browserName === BrowserTypes.MOBILE_SAFARI\n ? 'lg:h-[95vh]'\n : 'lg:h-[90vh]';\n return 'lg:h-screen';\n };\n\n return (\n
\n \n \n {ambassadorAuthor?.authorName && (\n \n
\n {ambassadorAuthor?.link?.url ? (\n \n \n \n ) : (\n \n )}\n
\n\n
\n {cameraModel && cameraProductDetailPage && (\n \n )}\n\n {lensModel && lensProductDetailPage && (\n \n )}\n
\n \n )}\n
\n\n {image && (\n \n \n setIsEnlargedImage(!isEnlargedImage)}\n aria-label={openImageInFullScreenAriaLabel}\n data-testid=\"CT-09-Image-LightBox-Inner-Enlarge/Shrink-Button\"\n >\n \n \n\n
\n {imageData && (\n
\n\n {description && (\n \n {largeDescription ? (\n <>\n \n \n {\n setDesktopDescriptionContentHeight(\n node?.scrollHeight ?? 0\n );\n }}\n className=\"content-area body-four inline-block max-h-[80px] font-thin text-white\"\n dangerouslySetInnerHTML={{\n __html: description,\n }}\n data-testid=\"CT-09-Image-LightBox-Inner-Description\"\n />\n \n \n\n {isDesktopExpandButtonDisplayed && (\n {\n setIsDesktopDescriptionExpanded(\n !isDesktopDescriptionExpanded\n );\n }}\n >\n \n {isDesktopDescriptionExpanded\n ? showLessLabel\n : showMoreLabel}\n \n \n )}\n \n ) : (\n \n )}\n \n )}\n \n \n )}\n\n \n {imageData && (\n
    \n {imageData\n .filter((item) => item)\n .map((item) => (\n \n {item}\n \n ))}\n
\n )}\n\n {description && (\n
\n {!largeDescription && (\n \n )}\n\n {largeDescription && (\n <>\n \n {\n setMobileDescriptionContentHeight(\n node?.scrollHeight ?? 0\n );\n }}\n className=\"content-area body-four inline-block font-thin text-white\"\n dangerouslySetInnerHTML={{\n __html: description,\n }}\n data-testid=\"CT-09-Image-LightBox-Inner-Description\"\n />\n \n\n {isMobileExpandButtonDisplayed && (\n {\n setIsMobileDescriptionExpanded(\n !isMobileDescriptionExpanded\n );\n }}\n >\n \n {isMobileDescriptionExpanded\n ? showLessLabel\n : showMoreLabel}\n \n \n )}\n \n )}\n
\n )}\n\n {((cameraModel && cameraProductDetailPage) ||\n (lensModel && lensProductDetailPage)) && (\n
\n {cameraModel && cameraProductDetailPage && (\n \n )}\n\n {lensProductDetailPage && lensModel && (\n \n )}\n
\n )}\n \n
\n \n );\n};\n\nexport default LightBoxInner;\n","import { ILightBoxImage } from '@models/ILightBoxImage';\nimport axios from 'axios';\n\nconst getLightBoxImages = async ({\n contentIds,\n language,\n}: {\n contentIds: (number | string)[];\n language?: string;\n}) => {\n const queries = contentIds.map((contentId: number | string) =>\n axios.get(`/api/v1/image/${contentId}?language=${language}`)\n );\n const responses = await Promise.all(queries);\n const response = responses.map(({ data }) => data);\n\n return response;\n};\n\nexport default getLightBoxImages;\n","import LoadingSpinner from '@atoms/LoadingSpinner/LoadingSpinner';\nimport Modal from '@atoms/Modal/Modal';\nimport NavButton from '@atoms/NavButton/NavButton';\nimport ErrorBannerNotificationEnum from '@models/enums/ErrorBannerNotificationEnum';\nimport HorizontalDirectionEnum from '@models/enums/HorizontalDirectionEnum';\nimport { ILightBoxImage } from '@models/ILightBoxImage';\nimport Carousel from '@molecules/Carousel/Carousel';\nimport LightBoxInner from '@molecules/LightBoxInner/LightBoxInner';\nimport getLightBoxImages from '@services/getLightBoxImages';\nimport useErrorNotificationStore from '@state/ErrorBannerNotificationDisplayStore';\nimport classNames from 'classnames';\nimport { motion } from 'framer-motion';\nimport { useEffect, useRef, useState } from 'react';\nimport { SwiperSlide } from 'swiper/react';\n\ninterface Props {\n readonly contentIds: string[];\n readonly initialIndex?: number;\n readonly language?: string;\n readonly onClose: () => void;\n}\n\nconst LightBoxOuter = ({\n contentIds,\n initialIndex = 0,\n language,\n onClose,\n}: Props) => {\n const triggeredRequest = useRef(false);\n const [isEnlargedImage, setIsEnlargedImage] = useState(false);\n const [lightBoxImages, setLightBoxImages] = useState();\n const navButtonId = 'lightbox-carousel';\n\n const { setErrorBannerNotification } = useErrorNotificationStore();\n\n useEffect(() => {\n const getImages = async () => {\n try {\n const response = await getLightBoxImages({ contentIds, language });\n setLightBoxImages(response);\n } catch (error) {\n onClose();\n setErrorBannerNotification(\n ErrorBannerNotificationEnum.LightboxOuterImages\n );\n }\n };\n\n if (!triggeredRequest.current) {\n getImages();\n triggeredRequest.current = true;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [contentIds, language, setLightBoxImages]);\n\n return (\n \n {lightBoxImages ? (\n
\n {lightBoxImages.length > 1 && (\n
\n ) : (\n \n )}\n \n );\n};\n\nexport default LightBoxOuter;\n","import Icon from '@atoms/Icon/Icon';\nimport Image from '@atoms/Image/Image';\nimport { IImageLightBox } from '@models/IImageLightBox';\nimport ImageLightBoxTypeEnum from '@models/enums/ImageLightBoxTypeEnum';\nimport LightBoxOuter from '@molecules/LightBoxOuter/LightBoxOuter';\nimport MultipleAuthors from '@molecules/MultipleAuthors/MultipleAuthors';\nimport updateDataLayer from '@utils/helpers/gtm';\nimport useAriaLabels from '@utils/hooks/useAriaLabels';\nimport classNames from 'classnames';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { useState } from 'react';\n\ninterface Props extends IImageLightBox {\n readonly contentIds: string[];\n readonly lightboxIconBottom?: boolean;\n readonly imageClasses?: string;\n readonly showImageDataByDefault?: boolean;\n readonly onLightBoxOpen?: (value: boolean) => void;\n readonly imageType?: ImageLightBoxTypeEnum;\n readonly dataTestId?: string;\n}\n\nconst ImageLightBox = ({\n cameraModel,\n contentIds,\n dataEpiPropertyName,\n fNumber,\n image,\n isoSensitivity,\n language,\n lensModel,\n lightboxIconBottom = false,\n imageClasses,\n meta,\n s35mmEquivalent,\n showImageDataByDefault = false,\n showImageLightbox,\n shutterSpeed,\n onLightBoxOpen,\n author,\n dataTestId = 'CT-09-Image-LightBox',\n imageType = ImageLightBoxTypeEnum.metadata,\n}: Props) => {\n const [isHovering, setIsHovering] = useState(false);\n const [isLightBoxOpen, setIsLightBoxOpen] = useState(false);\n const { openImageInFullScreenAriaLabel } = useAriaLabels();\n\n const imageData = [\n cameraModel,\n lensModel,\n shutterSpeed,\n fNumber,\n s35mmEquivalent,\n isoSensitivity,\n ];\n\n return (\n <>\n {image?.desktop && (\n setIsHovering(false),\n onFocus: () => setIsHovering(true),\n onMouseEnter: () => setIsHovering(true),\n onMouseLeave: () => setIsHovering(false),\n }\n : {})}\n data-testid={dataTestId}\n >\n \n\n
\n {showImageLightbox && (\n {\n setIsLightBoxOpen(true);\n onLightBoxOpen?.(true);\n }}\n className={classNames(\n lightboxIconBottom ? 'bottom-0' : 'top-0',\n 'absolute right-0 m-5 ml-auto flex h-7.5 min-h-[30px] w-7.5 min-w-[30px] cursor-pointer items-center justify-center rounded-full bg-black-100 bg-opacity-50 text-lg text-white hover:bg-black-100'\n )}\n aria-label={openImageInFullScreenAriaLabel}\n data-testid={`${dataTestId}-Open-LightBox-Button`}\n >\n \n \n )}\n\n {imageType === ImageLightBoxTypeEnum.metadata && (\n \n {(showImageDataByDefault || isHovering) && (\n \n )}\n\n {imageType === ImageLightBoxTypeEnum.author && author && (\n {\n updateDataLayer({\n event: 'selectContent',\n content_type: author.ambassador\n ? 'Ambassadors'\n : 'Creators',\n author_name: author.authorName,\n });\n }}\n >\n \n \n {author.authorName}\n
\n \n \n )}\n \n \n )}\n\n {isLightBoxOpen && (\n {\n setIsLightBoxOpen(false);\n onLightBoxOpen?.(false);\n }}\n />\n )}\n \n );\n};\n\nexport default ImageLightBox;\n"],"names":["_ref","ambassador","authorName","backgroundColourClassName","iconTooltip","initials","size","specialism","subTitle","textSize","SizeEnum","Medium","thumbnail","filteredSpecialisms","pictureSize","useMediaQuery","ProfilePictureSizeEnum","Size76","Size120","titleFontSize","Small","Large","XLarge","React","createElement","className","classNames","ProfilePicture","displayCheck","displayOutline","iconToolTip","Icon","name","colorClassName","Tooltip","label","position","TooltipPositionEnum","Top","Bullets","bullets","dataTestId","ImageLightBoxTypeEnum","ambassadorAuthor","cameraModel","cameraProductDetailPage","description","fNumber","image","isEnlargedImage","isoSensitivity","lensModel","lensProductDetailPage","s35mmEquivalent","setIsEnlargedImage","showLessLabel","showMoreLabel","shutterSpeed","largeDescription","length","isPortraitImage","desktop","width","height","isMobile","isMobileDescriptionExpanded","setIsMobileDescriptionExpanded","useState","isDesktopDescriptionExpanded","setIsDesktopDescriptionExpanded","desktopDescriptionContentHeight","setDesktopDescriptionContentHeight","mobileDescriptionContentHeight","setMobileDescriptionContentHeight","openImageInFullScreenAriaLabel","useAriaLabels","isMobileExpandButtonDisplayed","isDesktopExpandButtonDisplayed","imageData","getDescriptionVariants","cutOffHeight","animate","initial","transition","type","isIOS","browserName","BrowserTypes","MOBILE_SAFARI","AnimatePresence","motion","div","opacity","link","url","href","target","AuthorPanel","_extends","Size50","Button","scale","FIREFOX","damping","duration","mass","stiffness","Image","imageClasses","classes","onClick","IconSizeEnum","md","lg","ul","filter","item","map","key","Fragment","variants","ShadowContainerVertical","disableScroll","shadowHeight","shadowColour","ref","node","scrollHeight","dangerouslySetInnerHTML","__html","async","contentIds","language","queries","contentId","axios","Promise","all","_ref2","data","initialIndex","onClose","triggeredRequest","useRef","lightBoxImages","setLightBoxImages","navButtonId","setErrorBannerNotification","useErrorNotificationStore","useEffect","current","response","getLightBoxImages","error","ErrorBannerNotificationEnum","LightboxOuterImages","getImages","Modal","contentClasses","crossColor","isOpen","modalClasses","setIsOpen","isCloseButtonFixed","layout","NavButton","direction","HorizontalDirectionEnum","Left","id","Carousel","breakpoints","spaceBetween","enabled","initialSlide","loop","touchStartPreventDefault","navId","slidesPerView","lightBoxImage","SwiperSlide","meta","contentLink","LightBoxInner","Right","LoadingSpinner","extraClasses","dataEpiPropertyName","lightboxIconBottom","showImageDataByDefault","showImageLightbox","onLightBoxOpen","author","imageType","metadata","isHovering","setIsHovering","isLightBoxOpen","setIsLightBoxOpen","onBlur","onFocus","onMouseEnter","onMouseLeave","y","exit","updateDataLayer","event","content_type","author_name","MultipleAuthors","authors","LightBoxOuter","indexOf"],"sourceRoot":""}