{"version":3,"file":"static/chunks/4238.730a9f4f45b62343.js","mappings":"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","sources":["webpack://_N_E/./adapters/model/service/api/buyNowLite.js","webpack://_N_E/./components/ProductOverlay/ProductOverlay.js","webpack://_N_E/"],"sourcesContent":["import {BuyNowLiteConstants} from '../../../helpers/Constants';\n\nexport function generateHeader() {\n let header = new Headers();\n header.append(BuyNowLiteConstants.accessControlAllowOrigin, '*');\n header.append(BuyNowLiteConstants.xFunctionKey, process.env.BUY_NOW_LITE_FUNCTION_KEY);\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);\n } else {\n onFailure();\n }\n })\n .catch(error => {\n console.error(error);\n onFailure();\n });\n}","import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport throttle from 'lodash/throttle';\nimport Block from '../../adapters/helpers/Block';\nimport { toggleScroll } from '../../adapters/helpers/Utils';\nimport dynamic from 'next/dynamic';\nconst Icon = dynamic(() =>import('../Icon/Icon'))\nimport { ProductOverlayConstants } from '../../adapters/helpers/Constants';\nimport { loadScript } from '../../adapters/helpers/Utils';\nimport {getBuyNowLiteRetailerList} from '../../adapters/model/service/api/buyNowLite';\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 isOverlayOpen &&\n \n }\n
\n {displayBuyNowLite ?\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","\"use strict\";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4238],{14238:function(e,n,t){t.r(n),t.d(n,{default:function(){return w}});var r=t(67294),l=t(23493),o=t.n(l),i=t(40483),u=t(8996),c=t(5152),a=t.n(c),s=t(24036),d=t(34155);function f(){var e=new Headers;return e.append(s.t8.accessControlAllowOrigin,\"*\"),e.append(s.t8.xFunctionKey,d.env.BUY_NOW_LITE_FUNCTION_KEY),e.append(s.t8.passKey,d.env.BUY_NOW_LITE_PASS_KEY),e.append(s.t8.ocpApimSubscriptionKey,d.env.BUY_NOW_LITE_SUBSCRIPTION_KEY),e}var v=t(85893),p=t(34155);function y(e,n){var t=\"undefined\"!=typeof Symbol&&e[Symbol.iterator]||e[\"@@iterator\"];if(!t){if(Array.isArray(e)||(t=function(e,n){if(!e)return;if(\"string\"==typeof e)return m(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return m(e,n)}(e))||n&&e&&\"number\"==typeof e.length){t&&(e=t);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var o,i=!0,u=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return i=e.done,e},e:function(e){u=!0,o=e},f:function(){try{i||null==t.return||t.return()}finally{if(u)throw o}}}}function m(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t0&&(null==(l=j[0])||null==(o=l.fields)?void 0:o.sku))k=null==g||null==(b=g.entity)||null==(w=b.productOverview)||null==(h=w.fields)||null==(E=h.productVariants[0])||null==(_=E.fields)?void 0:_.sku;else if((null==S?void 0:S.length)>0&&(null==(i=S[0])||null==(u=i.fields)||null==(c=u.featuredProduct)||null==(a=c.fields)||null==(s=a.productVariants)?void 0:s.length)>0&&(null==(d=S[0])||null==(f=d.fields)||null==(v=f.featuredProduct)||null==(p=v.fields)||null==(y=p.productVariants[0])||null==(m=y.fields)?void 0:m.sku)){var N,C,A,L,T,x,P;k=null==g||null==(N=g.entity)||null==(C=N.series[0])||null==(A=C.fields)||null==(L=A.featuredProduct)||null==(T=L.fields)||null==(x=T.productVariants[0])||null==(P=x.fields)?void 0:P.sku}I(k)}),[]);var F=function(e){var n,t=document.querySelector(\".buy-now-lite-container\"),r=y(e);try{for(r.s();!(n=r.n()).done;){var l=n.value,o=document.createElement(\"a\");o.href=l.BuyNowUrl,o.target=\"_blank\",o.rel=\"noopener noreferrer\",o.className=\"buy-now-lite-link\";var i=document.createElement(\"img\");i.src=\"data:image/png;base64,\"+l.Retailerlogo,i.className=\"buy-now-lite-img\",i.alt=\"\",o.appendChild(i),t.appendChild(o)}}catch(e){r.e(e)}finally{r.f()}W()},K=function(){var e=document.querySelector(\".buy-now-lite-container\"),n=document.createElement(\"p\");n.className=\"buy-now-lite-error-message\",n.textContent=Y,e.appendChild(n),W()};(0,r.useEffect)((function(){if((null==m?void 0:m.event)&&(m.event instanceof HTMLElement||m.event instanceof Node)){var e,n,t,r;a&&(m.event.disabled=!0);var l,o=(null==m||null==(e=m.event)||null==(n=e.dataset)?void 0:n.sku)?m.event.dataset.sku:\"\",i=!!(null==m||null==(t=m.event)||null==(r=t.dataset)?void 0:r.resetCountryCode)&&m.event.dataset.resetCountryCode;if(p.env.ACTIVATE_BUY_NOW_LITE)if(\"\"!==o)!function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){},t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=f(),l={method:\"GET\",headers:r},o=d.env.BUY_NOW_LITE_URL.replace(\"{sku}\",e);fetch(o,l).then((function(e){return e.json()})).then((function(e){e.constructor===Array?n(e):t()})).catch((function(e){console.error(e),t()}))}(o,F,K);else document.querySelector(\".buy-now-lite-container\").innerHTML=\"\",q();else\"\"!==o&&void 0===window.PriceSpider?(0,u.ve)(s.cj.priceSpiderSource,(function(e){e?console.log(s.cj.priceSpiderConsoleLogMessageError):(I(o),C(m.event),S(!0))})):\"\"!==o?(I(o),C(m.event),S(!0)):(I(\"\"),S(!1)),i&&(null==(l=window)?void 0:l.PriceSpider)&&window.PriceSpider.reset()}}),[m]),(0,r.useEffect)((function(){var e;\"\"!==x&&(null==(e=window)?void 0:e.PriceSpider)&&window.PriceSpider.rebind()}),[x]),(0,r.useEffect)((function(){if(null==U?void 0:U.current)return M(),U.current.addEventListener(s.cj.keydown,R),function(){U.current.removeEventListener(s.cj.keydown,R)}}),[j]),(0,r.useEffect)((function(){var e=o()((function(){document.body.classList.contains(s.cj.noScroll)||O(window.pageYOffset)}),100);return window.addEventListener(s.cj.scroll,e),function(){window.removeEventListener(s.cj.scroll,e)}}),[L]);var q=function(){I(\"\"),S(!1)},W=function(){a&&(m.event.disabled=!1),C(m.event),S(!0)},M=function(){var e=U.current,n=document.getElementById(\"ob-product-subnav-scroll\");j?(n&&n.setAttribute(\"style\",\"z-index:99 !important\"),e.classList.add(s.cj.isActive),e.focus()):(n&&n.setAttribute(\"style\",\"z-index:999 !important\"),e.classList.remove(s.cj.isActive),document.body.style.top=null,document.body.style.height=null,N&&N.focus()),(0,u.a9)(j,L)},R=function(e){if(j){var n=e.currentTarget.querySelectorAll(s.cj.querySelectorAll),t=n[0],r=n[n.length-1],l=e.key===s.cj.Tab||9===e.keyCode;H(e),l&&(e.shiftKey?document.activeElement===t&&(r.focus(),e.preventDefault()):document.activeElement===r&&(t.focus(),e.preventDefault()))}},H=function(e){e.key!==s.cj.Escape&&27!==e.keyCode||S(!1)};return(0,v.jsx)(\"div\",{role:\"presentation\",onClick:function(e){(e.stopPropagation(),e.target===document.querySelector(\".ob-product-overlay\"))&&(S(!1),a&&(document.querySelector(\".buy-now-lite-container\").innerHTML=\"\"))},onKeyDown:H,ref:U,className:\"ob-product-overlay \".concat(B),children:(0,v.jsxs)(\"div\",{className:\"ob-product-overlay__wrapper \".concat(a?\"ob-product-overlay__wrapper--buy-now-lite\":\"\"),children:[j&&(0,v.jsx)(\"button\",{\"aria-label\":V,className:\"ob-product-overlay__close-btn\",onClick:function(e){return w(e)},children:(0,v.jsx)(b,{name:s.cj.close,size:2,color:\"#002d72\"})}),(0,v.jsx)(\"div\",{id:\"ob-product-overlay__content\",children:a?(0,v.jsx)(v.Fragment,{children:(0,v.jsx)(\"div\",{className:\"buy-now-lite-container\"})}):(0,v.jsx)(v.Fragment,{children:(0,v.jsx)(\"div\",{className:\"ps-widget\",\"ps-sku\":x,\"data-action-detail\":x})})})]})})}w.defaultProps={states:{isOverlayOpen:!1}}}}]);"],"names":["self","webpackChunk_N_E","push","e","n","t","r","d","default","w","l","o","i","u","c","a","s","v","p","m","length","b","then","bind","loadableGenerated","webpack","env","ACTIVATE_BUY_NOW_LITE","customEvent","onClickCallback","h","states","g","extraAttributes","E","Z","_","useState","isOverlayOpen","j","S","k","N","C","A","L","O","T","x","I","P","getAnchorId","U","useRef","V","getFieldValue","cj","closeOverlayLabel","fields","text","Y","buyNowLiteErrorLabel","B","classNames","empty","concat","useEffect","window","pageYOffset","f","y","entity","productOverview","productVariants","series","sku","featuredProduct","F","document","querySelector","Symbol","iterator","Array","isArray","Object","prototype","toString","call","slice","constructor","name","from","test","done","value","next","return","createElement","href","BuyNowUrl","target","rel","className","src","Retailerlogo","alt","appendChild","W","K","textContent","event","HTMLElement","Node","disabled","dataset","resetCountryCode","arguments","Headers","append","t8","accessControlAllowOrigin","xFunctionKey","BUY_NOW_LITE_FUNCTION_KEY","passKey","BUY_NOW_LITE_PASS_KEY","ocpApimSubscriptionKey","BUY_NOW_LITE_SUBSCRIPTION_KEY","BUY_NOW_LITE_URL","replace","fetch","method","headers","json","catch","console","error","innerHTML","q","PriceSpider","ve","priceSpiderSource","log","priceSpiderConsoleLogMessageError","reset","rebind","current","M","addEventListener","keydown","R","removeEventListener","body","classList","contains","noScroll","scroll","getElementById","setAttribute","add","isActive","focus","remove","style","top","height","a9","currentTarget","querySelectorAll","key","Tab","keyCode","H","shiftKey","activeElement","preventDefault","Escape","jsx","role","onClick","stopPropagation","onKeyDown","ref","children","jsxs","close","size","color","id","Fragment","defaultProps"],"sourceRoot":""}