{"version":3,"file":"static/chunks/6358.e77d7025818fa16e.js","mappings":"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","sources":["webpack://_N_E/./adapters/model/service/api/buyNowLite.js","webpack://_N_E/./components/ProductOverlay/ProductOverlay.js"],"sourcesContent":["import {BuyNowLiteConstants} from '../../../helpers/Constants';\n\nexport function generateHeader() {\n let header = new Headers();\n header.append(BuyNowLiteConstants.accessControlAllowOrigin, '*');\n header.append(BuyNowLiteConstants.passKey, process.env.BUY_NOW_LITE_PASS_KEY);\n header.append(BuyNowLiteConstants.ocpApimSubscriptionKey, process.env.BUY_NOW_LITE_SUBSCRIPTION_KEY);\n\n return header;\n}\n\nexport const getBuyNowLiteRetailerList = (sku, onSuccess = function(){}, onFailure = function(){}) => {\n const header = generateHeader();\n\n const requestOptions = {\n method: 'GET',\n headers: header,\n };\n\n let url = process.env.BUY_NOW_LITE_URL.replace('{sku}', sku);\n\n fetch(url, requestOptions)\n .then(response => response.json())\n .then(data => {\n if(data.constructor === Array) {\n onSuccess(data, sku);\n } else {\n onFailure();\n }\n })\n .catch(error => {\n console.error(error);\n onFailure();\n });\n}","import React, { useEffect, useRef, useState, Suspense } from 'react';\nimport dynamic from 'next/dynamic';\nimport Block from '../../adapters/helpers/Block';\nimport throttle from 'lodash/throttle';\nimport PropTypes from 'prop-types';\nimport { ProductOverlayConstants } from '../../adapters/helpers/Constants';\nimport { toggleScroll } from '../../adapters/helpers/Utils';\nimport { loadScript } from '../../adapters/helpers/Utils';\nimport {getBuyNowLiteRetailerList} from '../../adapters/model/service/api/buyNowLite';\nconst Icon = dynamic(() => import('../Icon/Icon'));\nimport Loader from '../../adapters/helpers/Loader';\n\nexport default function ProductOverlay(props) {\n const displayBuyNowLite = (process.env.ACTIVATE_BUY_NOW_LITE || false) === 'TRUE';\n\n const { customEvent, onClickCallback, states, extraAttributes } = props;\n const block = new Block(props);\n const [isOverlayOpen, setIsOverlayOpen] = useState(states.isOverlayOpen);\n const [lastButton, setLastButton] = useState(null);\n const [lastScroll, setLastScroll] = useState(0);\n const [productSku, setProductSku] = useState('');\n const KEYCODE_ESC = 27;\n const anchorId = block.getAnchorId();\n const productOverlayRef = useRef();\n const closeOverlayLabel = block.getFieldValue(ProductOverlayConstants.closeOverlayLabel)?.fields?.text;\n const buyNowLiteErrorLabel = block.getFieldValue(ProductOverlayConstants.buyNowLiteErrorLabel)?.fields?.text;\n let classNames = block.getFieldValue(ProductOverlayConstants.classNames) ? block.getFieldValue(ProductOverlayConstants.classNames) : ProductOverlayConstants.empty;\n classNames += `${anchorId}`;\n\n useEffect(() => {\n setLastScroll(window.pageYOffset);\n const productVariants = extraAttributes?.entity?.productOverview?.fields?.productVariants;\n const series = extraAttributes?.entity?.series;\n let initialSku = '';\n if (extraAttributes) {\n if (productVariants?.length > 0 && productVariants[0]?.fields?.sku) {\n\n initialSku = extraAttributes?.entity?.productOverview?.fields?.productVariants[0]?.fields?.sku;\n\n } else if (series?.length > 0 && series[0]?.fields?.featuredProduct?.fields?.productVariants?.length > 0 && series[0]?.fields?.featuredProduct?.fields?.productVariants[0]?.fields?.sku) {\n\n initialSku = extraAttributes?.entity?.series[0]?.fields?.featuredProduct?.fields?.productVariants[0]?.fields?.sku;\n\n }\n }\n setProductSku(initialSku);\n }, []);\n\n const onGetBuyNowLiteRetailerListSuccess = (data) => {\n const buyNowLiteContainer = document.querySelector('.buy-now-lite-container');\n for (const item of data) {\n let linkNode = document.createElement('a');\n linkNode.href = item.BuyNowUrl;\n linkNode.target = '_blank';\n linkNode.rel = 'noopener noreferrer';\n linkNode.className = 'buy-now-lite-link';\n\n let imgNode = document.createElement('img');\n imgNode.src = 'data:image/png;base64,' + item.Retailerlogo;\n imgNode.className = 'buy-now-lite-img';\n imgNode.alt = '';\n linkNode.appendChild(imgNode);\n\n buyNowLiteContainer.appendChild(linkNode);\n }\n\n openBuyNowLiteModal();\n };\n\n const onGetBuyNowLiteRetailerListFailure = () => {\n // close modal and remove buy now lite retailer images from modal.\n const buyNowLiteContainer = document.querySelector('.buy-now-lite-container');\n let paragraphNode = document.createElement('p');\n paragraphNode.className = 'buy-now-lite-error-message';\n paragraphNode.textContent = buyNowLiteErrorLabel;\n\n buyNowLiteContainer.appendChild(paragraphNode);\n\n openBuyNowLiteModal();\n };\n\n useEffect(() => {\n if (!customEvent?.event) {\n return;\n }\n if (customEvent.event instanceof HTMLElement || customEvent.event instanceof Node) {\n if (displayBuyNowLite) {\n customEvent.event.disabled = true;\n }\n const sku = customEvent?.event?.dataset?.sku ? customEvent.event.dataset.sku : '';\n let resetCountryCode = customEvent?.event?.dataset?.resetCountryCode ? customEvent.event.dataset.resetCountryCode : false;\n\n // ACTIVATE_BUY_NOW_LITE is true for japan\n if (process.env.ACTIVATE_BUY_NOW_LITE) {\n if(sku !== '') {\n // Ajax call to get retailer data.\n getBuyNowLiteRetailerList(sku, onGetBuyNowLiteRetailerListSuccess, onGetBuyNowLiteRetailerListFailure);\n } else {\n // If no sku, close modal and remove buy now lite retailer images from modal.\n const buyNowLiteContainer = document.querySelector('.buy-now-lite-container');\n buyNowLiteContainer.innerHTML = '';\n closeBuyNowLiteModal();\n }\n } else { // Price spider buy now case.\n if (sku !== '' && window.PriceSpider === undefined) {\n // script priceSpider with callback\n loadScript(ProductOverlayConstants.priceSpiderSource, (error) => {\n if (error) {\n console.log(ProductOverlayConstants.priceSpiderConsoleLogMessageError);\n } else {\n // script loaded successfully\n setProductSku(sku);\n setLastButton(customEvent.event);\n setIsOverlayOpen(true);\n }\n });\n } else if (sku !== '') {\n // script already loaded\n setProductSku(sku);\n setLastButton(customEvent.event);\n setIsOverlayOpen(true);\n } else {\n setProductSku('');\n setIsOverlayOpen(false);\n }\n\n if (resetCountryCode && window?.PriceSpider) {\n window.PriceSpider.reset();\n }\n }\n }\n }, [customEvent]);\n\n useEffect(() => {\n if (productSku !== '' && window?.PriceSpider) {\n window.PriceSpider.rebind();\n }\n }, [productSku]);\n\n useEffect(() => {\n if (productOverlayRef?.current) {\n toggleOverlay();\n productOverlayRef.current.addEventListener(ProductOverlayConstants.keydown, trapFocusInOverlay);\n return () => {\n productOverlayRef.current.removeEventListener(ProductOverlayConstants.keydown, trapFocusInOverlay)\n }\n }\n },[isOverlayOpen]);\n\n useEffect(() => {\n const handleScroll = throttle(() => {\n if (!document.body.classList.contains(ProductOverlayConstants.noScroll)) {\n setLastScroll(window.pageYOffset);\n }\n }, 100);\n window.addEventListener(ProductOverlayConstants.scroll, handleScroll);\n return () => {\n window.removeEventListener(ProductOverlayConstants.scroll, handleScroll);\n }\n },[lastScroll]);\n\n const closeBuyNowLiteModal = () => {\n setProductSku('');\n setIsOverlayOpen(false);\n }\n\n const openBuyNowLiteModal = () => {\n if (displayBuyNowLite) {\n customEvent.event.disabled = false;\n }\n setLastButton(customEvent.event);\n setIsOverlayOpen(true);\n }\n\n const toggleOverlay = () => {\n const productOverlayElem = productOverlayRef.current;\n let ele = document.getElementById('ob-product-subnav-scroll');\n\n if (isOverlayOpen) {\n if(ele) {\n ele.setAttribute('style', 'z-index:99 !important');\n }\n productOverlayElem.classList.add(ProductOverlayConstants.isActive);\n productOverlayElem.focus();\n } else {\n if(ele) {\n ele.setAttribute('style', 'z-index:999 !important');\n }\n productOverlayElem.classList.remove(ProductOverlayConstants.isActive);\n document.body.style.top = null;\n document.body.style.height = null;\n if (lastButton) {\n lastButton.focus();\n }\n }\n toggleScroll(isOverlayOpen, lastScroll);\n };\n\n const trapFocusInOverlay = event => {\n if (!isOverlayOpen) {\n return;\n }\n const element = event.currentTarget;\n const focusableElements = element.querySelectorAll(ProductOverlayConstants.querySelectorAll);\n const firstFocusableElement = focusableElements[0];\n const lastFocusableElement = focusableElements[focusableElements.length - 1];\n const KEYCODE_TAB = 9;\n\n const isTabPressed = (event.key === ProductOverlayConstants.Tab || event.keyCode === KEYCODE_TAB);\n\n handleEscapeKeyPress(event);\n\n if (!isTabPressed) {\n return;\n }\n\n if ( event.shiftKey ) /* shift + tab */ {\n if (document.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n event.preventDefault();\n }\n } else /* tab */ {\n if (document.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n event.preventDefault();\n }\n }\n };\n\n const handleBackgroundClick = event => {\n event.stopPropagation();\n if (event.target === document.querySelector('.ob-product-overlay')) {\n setIsOverlayOpen(false);\n\n if(displayBuyNowLite) {\n // When clicking in background remove buy now lite retailer.\n const buyNowLiteContainer = document.querySelector('.buy-now-lite-container');\n buyNowLiteContainer.innerHTML = '';\n }\n }\n };\n\n const handleEscapeKeyPress = event => {\n if (event.key === ProductOverlayConstants.Escape || event.keyCode === KEYCODE_ESC) {\n setIsOverlayOpen(false);\n }\n }\n\n return (\n }>\n
\n
\n {\n isOverlayOpen &&\n \n }\n
\n {displayBuyNowLite ?\n <>\n
\n\n
\n \n :\n <>\n
\n \n }\n\n\n
\n
\n
\n
\n )\n}\n\nProductOverlay.defaultProps = {\n states: {isOverlayOpen: false}\n};\n\nProductOverlay.propTypes = {\n customEvent: PropTypes.object,\n onClickCallback: PropTypes.func,\n states: PropTypes.object,\n children: PropTypes.node,\n extraAttributes: PropTypes.object,\n};\n"],"names":["getBuyNowLiteRetailerList","sku","header","onSuccess","arguments","length","undefined","onFailure","Headers","append","BuyNowLiteConstants","accessControlAllowOrigin","passKey","process","env","BUY_NOW_LITE_PASS_KEY","ocpApimSubscriptionKey","BUY_NOW_LITE_SUBSCRIPTION_KEY","fetch","BUY_NOW_LITE_URL","replace","method","headers","then","response","json","data","constructor","Array","error","console","Icon","dynamic","__webpack_require__","e","bind","loadableGenerated","webpack","ProductOverlay","props","_block$getFieldValue","_block$getFieldValue$","_block$getFieldValue2","_block$getFieldValue3","displayBuyNowLite","ACTIVATE_BUY_NOW_LITE","customEvent","onClickCallback","states","extraAttributes","block","Block","_useState","useState","isOverlayOpen","setIsOverlayOpen","_useState2","lastButton","setLastButton","_useState3","lastScroll","setLastScroll","_useState4","productSku","setProductSku","anchorId","getAnchorId","productOverlayRef","useRef","closeOverlayLabel","getFieldValue","ProductOverlayConstants","fields","text","buyNowLiteErrorLabel","classNames","empty","concat","useEffect","window","pageYOffset","_extraAttributes$enti","_extraAttributes$enti2","_extraAttributes$enti3","_extraAttributes$enti4","_productVariants$","_productVariants$$fie","_series$","_series$$fields","_series$$fields$featu","_series$$fields$featu2","_series$$fields$featu3","_series$2","_series$2$fields","_series$2$fields$feat","_series$2$fields$feat2","_series$2$fields$feat3","_series$2$fields$feat4","_extraAttributes$enti5","_extraAttributes$enti6","_extraAttributes$enti7","_extraAttributes$enti8","_extraAttributes$enti9","_extraAttributes$enti10","_extraAttributes$enti11","_extraAttributes$enti12","_extraAttributes$enti13","_extraAttributes$enti14","_extraAttributes$enti15","_extraAttributes$enti16","productVariants","entity","productOverview","series","initialSku","featuredProduct","onGetBuyNowLiteRetailerListSuccess","_step","buyNowLiteContainer","document","querySelector","_iterator","_createForOfIteratorHelper","s","n","done","item","value","linkNode","createElement","href","BuyNowUrl","target","rel","className","imgNode","src","Retailerlogo","alt","appendChild","err","f","openBuyNowLiteModal","onGetBuyNowLiteRetailerListFailure","paragraphNode","textContent","event","HTMLElement","Node","disabled","_customEvent$event","_customEvent$event$da","_customEvent$event2","_customEvent$event2$d","_window","dataset","resetCountryCode","innerHTML","closeBuyNowLiteModal","PriceSpider","loadScript","priceSpiderSource","log","priceSpiderConsoleLogMessageError","reset","_window2","rebind","current","toggleOverlay","addEventListener","keydown","trapFocusInOverlay","removeEventListener","handleScroll","throttle","body","classList","contains","noScroll","scroll","productOverlayElem","ele","getElementById","setAttribute","add","isActive","focus","remove","style","top","height","toggleScroll","focusableElements","element","currentTarget","querySelectorAll","firstFocusableElement","lastFocusableElement","isTabPressed","key","Tab","keyCode","handleEscapeKeyPress","shiftKey","activeElement","preventDefault","Escape","_jsx","Suspense","fallback","Loader","children","role","onClick","stopPropagation","onKeyDown","ref","_jsxs","name","close","size","color","id","_Fragment","defaultProps"],"sourceRoot":""}