{"version":3,"file":"CtaFeature-Chunk-ebdac494f99dac362128.js","mappings":"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","sources":["webpack://nikon-client/./components/atoms/Button/Button.tsx","webpack://nikon-client/./components/atoms/Image/Image.tsx","webpack://nikon-client/./models/enums/HorizontalAlignmentEnum.ts","webpack://nikon-client/./models/enums/VerticalAlignmentEnum.ts","webpack://nikon-client/./components/molecules/Banner/Banner.tsx","webpack://nikon-client/./components/organisms/CtaFeature/CtaFeature.tsx","webpack://nikon-client/./models/enums/BreakpointEnum.ts","webpack://nikon-client/./models/enums/IBackgroundColourEnum.ts","webpack://nikon-client/./utility/helpers/gtm.ts","webpack://nikon-client/./utility/hooks/useBreakpoint.ts","webpack://nikon-client/./assets/hue.svg","webpack://nikon-client/./node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/index.js"],"sourcesContent":["import { ILink } from '@models/ILink';\nimport classNames from 'classnames';\nimport {\n ButtonHTMLAttributes,\n DetailedHTMLProps,\n PropsWithChildren,\n} from 'react';\n\ninterface Props {\n readonly className?: string;\n readonly dataTestId?: string;\n readonly disabled?: boolean;\n readonly editHint?: string;\n readonly link?: ILink;\n readonly linkCallback?: () => void;\n readonly secondary?: boolean;\n readonly secondaryBackgroundClassName?: string;\n readonly isLightMode?: boolean;\n readonly inverted?: boolean;\n}\n\ntype ButtonProps = Props &\n DetailedHTMLProps, HTMLButtonElement>;\n\nconst Button = ({\n children,\n className,\n dataTestId,\n disabled = false,\n editHint,\n link,\n linkCallback,\n secondary = false,\n secondaryBackgroundClassName = 'bg-transparent',\n isLightMode,\n inverted = false,\n ...buttonProps\n}: PropsWithChildren) => {\n const buttonClasses = classNames(\n {\n 'bg-yellow py-1 px-4 text-black-100 hover:bg-yellow-100 focus:bg-yellow-500 active:bg-yellow-500':\n !disabled && !secondary && !inverted,\n //\n [`${secondaryBackgroundClassName} border border-yellow py-[3px] px-[15px] text-black-100 hover:border-yellow-100 hover:bg-yellow-100 hover:text-black-100 focus:border-yellow-500 focus:bg-yellow-500 active:border-yellow-500 active:bg-yellow-500 ${\n isLightMode\n ? ''\n : 'dark:text-white dark:hover:text-black-100 dark:focus:text-black-100 dark:active:text-black-100'\n }`]: !disabled && secondary && !inverted,\n //\n 'bg-grey text-grey-500 py-1 px-4': disabled,\n //\n 'bg-black text-white py-1 px-4 active:bg-grey-600 hover:bg-grey-600 focus:bg-grey-600':\n !disabled && !secondary && inverted,\n },\n 'cta rounded-full inline-block min-h-min select-none',\n className\n );\n\n return link?.url && (link?.name || children) && !disabled ? (\n \n {children || link.name}\n \n ) : (\n \n {children}\n \n );\n};\n\nexport default Button;\n","import BreakpointEnum from '@models/enums/BreakpointEnum';\nimport { IImage } from '@models/IImage';\nimport useBreakpoint from '@utils/hooks/useBreakpoint';\nimport classNames from 'classnames';\nimport { PropsWithChildren, RefObject, useState } from 'react';\n\ninterface Props {\n readonly classes?: string;\n readonly dataTestId?: string;\n readonly epiEdit?: string;\n readonly image?: IImage;\n readonly imageClasses?: string;\n readonly imageRef?:\n | RefObject\n | ((node: HTMLElement | null) => void);\n readonly lazyLoad?: boolean;\n readonly progressiveLoad?: boolean;\n readonly sizes?: string;\n}\n\nconst Image = ({\n children,\n classes,\n dataTestId,\n epiEdit,\n image,\n imageClasses,\n imageRef,\n lazyLoad = true,\n progressiveLoad = true,\n sizes = '',\n}: PropsWithChildren) => {\n const mobileSource = image?.mobile;\n const tabletSource = image?.tablet;\n const desktopSource = image?.desktop;\n const largeDesktopSource = image?.largeDesktop;\n const breakpoint = useBreakpoint() as BreakpointEnum;\n const [isLoaded, setIsLoaded] = useState(false);\n\n if (!desktopSource?.url) return null;\n\n const currentSrc = {\n [BreakpointEnum.Small]: mobileSource,\n [BreakpointEnum.Medium]: tabletSource,\n [BreakpointEnum.Large]: desktopSource,\n [BreakpointEnum.XLarge]: largeDesktopSource,\n };\n\n return (\n \n \n setIsLoaded(true)}\n sizes={sizes}\n src={\n isLoaded && progressiveLoad\n ? currentSrc[breakpoint]?.url\n : mobileSource?.url\n }\n height={currentSrc[breakpoint]?.height}\n width={currentSrc[breakpoint]?.width}\n srcSet={`${mobileSource?.originalUrl} 376w, ${tabletSource?.originalUrl} 768w, ${desktopSource?.originalUrl} 1024w, ${largeDesktopSource?.originalUrl} 1440w`}\n {...(dataTestId && { 'data-testid': dataTestId })}\n />\n {isLoaded && children}\n \n );\n};\n\nexport default Image;\n","enum HorizontalAlignmentEnum {\n Left = 'LEFT',\n Right = 'RIGHT',\n Center = 'CENTER',\n}\n\nexport default HorizontalAlignmentEnum;\n","enum VerticalAlignmentEnum {\n Top = 'TOP',\n Bottom = 'BOTTOM',\n Center = 'CENTER',\n}\n\nexport default VerticalAlignmentEnum;\n","import Hue from '@assets/hue.svg';\nimport Button from '@atoms/Button/Button';\nimport Image from '@atoms/Image/Image';\nimport { IBanner } from '@models/IBanner';\nimport HorizontalAlignmentEnum from '@models/enums/HorizontalAlignmentEnum';\nimport BackgroundColourEnum from '@models/enums/IBackgroundColourEnum';\nimport VerticalAlignmentEnum from '@models/enums/VerticalAlignmentEnum';\nimport updateDataLayer from '@utils/helpers/gtm';\nimport classNames from 'classnames';\n\nconst mobileBackgroundColourClassName = {\n [BackgroundColourEnum.Yellow]: 'max-lg:bg-yellow',\n [BackgroundColourEnum.Black]: 'max-lg:bg-black-100',\n [BackgroundColourEnum.OffWhite]: 'max-lg:bg-grey-100',\n [BackgroundColourEnum.ShadowGrey]: 'max-lg:bg-grey-600',\n};\nconst desktopBackgroundColourClassName = {\n [BackgroundColourEnum.Yellow]: 'lg:bg-yellow',\n [BackgroundColourEnum.Black]: 'lg:bg-black-100',\n [BackgroundColourEnum.OffWhite]: 'lg:bg-grey-100',\n [BackgroundColourEnum.ShadowGrey]: 'lg:bg-grey-600',\n};\nconst desktopToMobileAlignmentMap = {\n [HorizontalAlignmentEnum.Left]: VerticalAlignmentEnum.Top,\n [HorizontalAlignmentEnum.Right]: VerticalAlignmentEnum.Bottom,\n [HorizontalAlignmentEnum.Center]: VerticalAlignmentEnum.Center,\n};\n\nconst Banner = ({\n title,\n titleTextColour,\n desktopAlignment = HorizontalAlignmentEnum.Center,\n mobileAlignment: savedMobileAlignment,\n backgroundColour = BackgroundColourEnum.ShadowGrey,\n text,\n image,\n mobileImage,\n link,\n linkText,\n ctaCallback,\n fullWidth,\n tint,\n glow,\n meta,\n invertCTA = false,\n isInCarousel = false,\n dataTestId = 'Banner',\n}: IBanner) => {\n const mobileAlignment = (() => {\n if (savedMobileAlignment) return savedMobileAlignment;\n if (isInCarousel) return VerticalAlignmentEnum.Center;\n return desktopToMobileAlignmentMap[desktopAlignment];\n })();\n\n const isMobileTop = mobileAlignment === VerticalAlignmentEnum.Top;\n const isMobileBottom = mobileAlignment === VerticalAlignmentEnum.Bottom;\n const isMobileCenter = mobileAlignment === VerticalAlignmentEnum.Center;\n const isMobileFullWidth = isMobileCenter || fullWidth;\n const mobileBackgroundColour = isMobileCenter\n ? mobileBackgroundColourClassName[BackgroundColourEnum.Yellow]\n : mobileBackgroundColourClassName[backgroundColour];\n\n const isDesktopLeft = desktopAlignment === HorizontalAlignmentEnum.Left;\n const isDesktopRight = desktopAlignment === HorizontalAlignmentEnum.Right;\n const isDesktopCenter = desktopAlignment === HorizontalAlignmentEnum.Center;\n const isDesktopFullWidth = isDesktopCenter || fullWidth;\n const desktopBackgroundColour = isDesktopCenter\n ? desktopBackgroundColourClassName[BackgroundColourEnum.Yellow]\n : desktopBackgroundColourClassName[backgroundColour];\n\n return (\n \n
\n \n \n {tint && (\n \n )}\n\n \n\n {mobileImage && (\n \n )}\n\n {glow && (\n \n )}\n
\n\n \n \n\n {text && (\n \n {text}\n

\n )}\n\n {ctaCallback && linkText && (\n \n {linkText}\n \n )}\n\n {link?.url && link?.name && (\n {\n updateDataLayer({\n event: 'selectContent',\n content_type: 'cta_feature_block',\n link_text: link.name,\n });\n }}\n link={link}\n dataTestId={`${dataTestId}-CTA-Link`}\n inverted={invertCTA}\n />\n )}\n \n \n \n \n );\n};\n\nexport default Banner;\n","import { ICTAFeature } from '@models/ICTAFeature';\nimport Banner from '@molecules/Banner/Banner';\n\nconst CtaFeature = (props: ICTAFeature) => (\n \n);\n\nexport default CtaFeature;\n","const enum BreakpointEnum {\n Small = 'sm',\n Medium = 'md',\n Large = 'lg',\n XLarge = 'xl',\n}\n\nexport default BreakpointEnum;\n","const enum BackgroundColourEnum {\n Black = 'black',\n Grey = 'grey',\n OffWhite = 'off-white',\n ShadowGrey = 'shadow-grey',\n Yellow = 'yellow',\n}\n\nexport default BackgroundColourEnum;\n","const updateDataLayer = (eventPayload: Record) => {\n if (typeof window !== 'undefined') {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(eventPayload);\n }\n};\n\nexport default updateDataLayer;\n","import BreakpointEnum from '@models/enums/BreakpointEnum';\nimport { useCallback, useEffect, useState } from 'react';\n\nconst getCurrentBreakpoint = () => {\n const breakpoints = { tablet: 768, desktop: 1024, lgDesktop: 1440 };\n const width = window.innerWidth;\n\n if (width < breakpoints.tablet) {\n return BreakpointEnum.Small;\n }\n if (width >= breakpoints.tablet && width < breakpoints.desktop) {\n return BreakpointEnum.Medium;\n }\n if (width >= breakpoints.desktop && width < breakpoints.lgDesktop) {\n return BreakpointEnum.Large;\n }\n return BreakpointEnum.XLarge;\n};\n\nconst useBreakpoint = () => {\n const [screen, setScreen] = useState();\n\n const resizeHandler = useCallback(\n () => setScreen(getCurrentBreakpoint()),\n []\n );\n\n useEffect(() => {\n window.addEventListener('resize', resizeHandler);\n setScreen(getCurrentBreakpoint());\n\n return () => {\n window.removeEventListener('resize', resizeHandler);\n };\n }, [resizeHandler]);\n\n return screen;\n};\n\nexport default useBreakpoint;\n","module.exports = \"data:image/svg+xml,%3csvg width='906' height='906' viewBox='0 0 906 906' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cg opacity='0.5' filter='url(%23filter0_df_5839_100698)'%3e %3ccircle cx='453' cy='453' r='263' fill='%23FFDD00'/%3e %3c/g%3e %3cdefs%3e %3cfilter id='filter0_df_5839_100698' x='0' y='0' width='906' height='906' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3e %3cfeFlood flood-opacity='0' result='BackgroundImageFix'/%3e %3cfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0' result='hardAlpha'/%3e %3cfeOffset dy='1.66516'/%3e %3cfeGaussianBlur stdDeviation='0.832579'/%3e %3cfeComposite in2='hardAlpha' operator='out'/%3e %3cfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0'/%3e %3cfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow_5839_100698'/%3e %3cfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow_5839_100698' result='shape'/%3e %3cfeGaussianBlur stdDeviation='95' result='effect2_foregroundBlur_5839_100698'/%3e %3c/filter%3e %3c/defs%3e %3c/svg%3e\"","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n"],"names":["_ref","children","className","dataTestId","disabled","editHint","link","linkCallback","secondary","secondaryBackgroundClassName","isLightMode","inverted","buttonProps","buttonClasses","classNames","url","name","React","createElement","href","target","onClick","_extends","classes","epiEdit","image","imageClasses","imageRef","lazyLoad","progressiveLoad","sizes","mobileSource","mobile","tabletSource","tablet","desktopSource","desktop","largeDesktopSource","largeDesktop","breakpoint","useBreakpoint","isLoaded","setIsLoaded","useState","currentSrc","BreakpointEnum","Small","Medium","Large","XLarge","type","srcSet","ref","alt","altText","length","draggable","loading","onLoad","src","height","width","originalUrl","HorizontalAlignmentEnum","VerticalAlignmentEnum","mobileBackgroundColourClassName","BackgroundColourEnum","Yellow","Black","OffWhite","ShadowGrey","desktopBackgroundColourClassName","desktopToMobileAlignmentMap","Left","Top","Right","Bottom","Center","title","titleTextColour","desktopAlignment","mobileAlignment","savedMobileAlignment","backgroundColour","text","mobileImage","linkText","ctaCallback","fullWidth","tint","glow","meta","invertCTA","isInCarousel","isMobileTop","isMobileBottom","isMobileCenter","isMobileFullWidth","mobileBackgroundColour","isDesktopLeft","isDesktopRight","isDesktopCenter","isDesktopFullWidth","desktopBackgroundColour","editHints","Image","Hue","dangerouslySetInnerHTML","__html","Button","updateDataLayer","event","content_type","link_text","props","Banner","eventPayload","window","dataLayer","push","getCurrentBreakpoint","breakpoints","innerWidth","screen","setScreen","resizeHandler","useCallback","useEffect","addEventListener","removeEventListener","module","exports","hasOwn","hasOwnProperty","i","arguments","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","default"],"sourceRoot":""}