{"version":3,"sources":["../node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.config.js","../node_modules/@scandipwa/scandipwa/src/component/VideoPopup/index.js","../node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.container.js","../node_modules/@scandipwa/scandipwa/src/component/ClickOutside/ClickOutside.component.js","../node_modules/@scandipwa/scandipwa/src/component/ClickOutside/index.js","../node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.container.js","../node_modules/@scandipwa/scandipwa/src/component/Popup/index.js","../node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.component.js","webpack:///./node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.style.scss?05ba","../node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.style.scss","../node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.config.js","../node_modules/@scandipwa/scandipwa/src/component/Overlay/Overlay.component.js","webpack:///./node_modules/@scandipwa/scandipwa/src/component/Overlay/Overlay.style.scss?253e","../node_modules/@scandipwa/scandipwa/src/component/Overlay/Overlay.style.scss","../node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.component.js","webpack:///./node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.style.scss?8181","../node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.style.scss"],"names":["VIDEO_POPUP_ID","VIMEO_FORMAT","RegExp","mapStateToProps","Mosaic","middleware","state","payload","PopupReducer","popupPayload","mapDispatchToProps","connect","VideoPopup","ClickOutside","_class","_Mosaic$Extensible","_inherits","ClickOutside_","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","handleClick","bind","_assertThisInitialized","_createClass","key","value","props","_get","_getPrototypeOf","prototype","children","this","childrenRefs","Children","map","createRef","document","addEventListener","removeEventListener","_ref","target","onClick","every","ref","_ref$current","_ref$current$overlayR","current","overlayRef","contains","_this2","element","idx","cloneElement","Extensible","PureComponent","defaultProps","noopFn","activeOverlay","OverlayReducer","areOtherOverlaysOpen","shouldPopupClose","isMobile","ConfigReducer","device","dispatch","hideActiveOverlay","resetHideActivePopup","hideActivePopup","changeHeaderState","changeNavigationState","TOP_NAVIGATION_TYPE","goToPreviousNavigationState","_checkBEM","require","checkBEMProps","PopupContainer","PopupContainer_","containerFunctions","onVisible","_this$props","name","POPUP","title","_getPopupTitle","onCloseClick","history","back","_this$props2","isCloseOnOutsideClick","id","isStatic","mix","contentMix","onClose","onHide","_this$props3","React","Popup","Object","assign","containerProps","VideoPopup_","loadVimeoLibrary","loadYouTubeLibrary","Promise","all","vimeoPromise","youTubePromise","then","forceUpdate","cancel","videoId","Vimeo","vimeoComponent","autoplay","YouTube","youTubeComponent","containerClassName","className","opts","playerVars","makeCancelable","promise","vimeo","default","_this3","_ref2","youTube","_this$props$payload$m","media","_this$props$payload$m3","video_content","video_url","_ref3","exec","vimeoId","_slicedToArray","_renderVimeoVideo","_YOUTUBE_FORMAT$exec","YOUTUBE_FORMAT","youtubeId","_renderYoutubeVideo","block","elem","_renderVideoContent","api","content","__esModule","module","i","options","exports","locals","___CSS_LOADER_EXPORT___","push","ESCAPE_KEY","Overlay","Overlay_","prevProps","prevWasVisible","getIsVisible","isVisible","freezeScroll","focus","unfreezeScroll","undefined","YoffsetWhenScrollDisabled","window","pageYOffset","body","scrollTop","toggleScroll","style","marginTop","scrollTo","isRenderInPortal","createPortal","_this$props4","renderInMobilePortal","mods","isInstant","_objectSpread","Popup_","hidePopUp","hidePopupAndGoBack","handleClickOutside","handleKeyDown","prevShouldPopupClose","pushState","popupOpen","location","pathname","search","hash","goBack","e","keyCode","aria-label","__","CloseIcon","NotificationList","renderTitle","renderCloseButton","renderNotifications","_this$props5","renderContent","propTypes","PropTypes","bool","isRequired","string"],"mappings":"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","file":"static/js/52.chunk.js","sourcesContent":["/* eslint-disable import/prefer-default-export */\n\n/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nexport const VIDEO_POPUP_ID = 'VIDEO_POPUP_ID';\n\n/**\n * An expression that checks for vimeo URLs described in https://developer.vimeo.com/api/oembed/videos#table-1 and matches the video id\n * @type {RegExp}\n */\nexport const VIMEO_FORMAT = new RegExp('(?:https?//)?vimeo.com[\\\\w/]*/(\\\\d+)$');\nexport const YOUTUBE_FORMAT = new RegExp('(?:https?//)?www.youtube.com/watch\\\\?v=([\\\\w\\\\-]+)');\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nexport { default } from './VideoPopup.container';\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport { connect } from 'react-redux';\n\nimport VideoPopup from './VideoPopup.component';\nimport { VIDEO_POPUP_ID } from './VideoPopup.config';\n\n/** @namespace Component/VideoPopup/Container/mapStateToProps */\nexport const mapStateToProps = (state) => ({\n payload: state.PopupReducer.popupPayload[VIDEO_POPUP_ID] || {}\n});\n\n/** @namespace Component/VideoPopup/Container/mapDispatchToProps */\nexport const mapDispatchToProps = () => ({});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(VideoPopup);\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport PropTypes from 'prop-types';\nimport {\n Children,\n cloneElement,\n createRef,\n PureComponent\n} from 'react';\n\nimport { ChildrenType } from 'Type/Common.type';\nimport { noopFn } from 'Util/Common';\n\n/** @namespace Component/ClickOutside/Component */\nexport class ClickOutside extends PureComponent {\n static propTypes = {\n onClick: PropTypes.func,\n children: ChildrenType\n };\n\n static defaultProps = {\n onClick: noopFn,\n children: []\n };\n\n handleClick = this.handleClick.bind(this);\n\n __construct(props) {\n super.__construct(props);\n\n const { children } = this.props;\n\n this.childrenRefs = Children.map(\n children,\n () => createRef()\n );\n }\n\n componentDidMount() {\n document.addEventListener('click', this.handleClick);\n }\n\n componentWillUnmount() {\n document.removeEventListener('click', this.handleClick);\n }\n\n handleClick({ target }) {\n const { onClick } = this.props;\n\n if (this.childrenRefs.every(\n (ref) => {\n const elementRef = ref.current?.overlayRef?.current || ref.current;\n\n return !elementRef.contains(target);\n }\n )) {\n onClick();\n }\n }\n\n render() {\n const { children } = this.props;\n\n return Children.map(children, (element, idx) => (\n cloneElement(element, { ref: this.childrenRefs[idx] })\n ));\n }\n}\n\nexport default ClickOutside;\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nexport { default } from './ClickOutside.component';\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport PropTypes from 'prop-types';\nimport { PureComponent } from 'react';\nimport { connect } from 'react-redux';\n\nimport { POPUP } from 'Component/Header/Header.config';\nimport { changeNavigationState, goToPreviousNavigationState } from 'Store/Navigation/Navigation.action';\nimport { TOP_NAVIGATION_TYPE } from 'Store/Navigation/Navigation.reducer';\nimport { hideActiveOverlay, hideActivePopup } from 'Store/Overlay/Overlay.action';\nimport { ChildrenType, MixType } from 'Type/Common.type';\nimport { noopFn } from 'Util/Common';\n\nimport Popup from './Popup.component';\n\n/** @namespace Component/Popup/Container/mapStateToProps */\nexport const mapStateToProps = (state) => ({\n activeOverlay: state.OverlayReducer.activeOverlay,\n areOtherOverlaysOpen: state.OverlayReducer.areOtherOverlaysOpen,\n shouldPopupClose: state.PopupReducer.shouldPopupClose,\n payload: state.PopupReducer.popupPayload,\n isMobile: state.ConfigReducer.device.isMobile\n});\n\n/** @namespace Component/Popup/Container/mapDispatchToProps */\nexport const mapDispatchToProps = (dispatch) => ({\n hideActiveOverlay: () => dispatch(hideActiveOverlay()),\n resetHideActivePopup: () => dispatch(hideActivePopup(false)),\n changeHeaderState: (state) => dispatch(changeNavigationState(TOP_NAVIGATION_TYPE, state)),\n goToPreviousNavigationState: (state) => dispatch(goToPreviousNavigationState(TOP_NAVIGATION_TYPE, state))\n});\n\n/** @namespace Component/Popup/Container */\nexport class PopupContainer extends PureComponent {\n static propTypes = {\n mix: MixType,\n contentMix: MixType,\n payload: PropTypes.objectOf(\n PropTypes.shape({\n title: PropTypes.string\n })\n ).isRequired,\n isCloseOnOutsideClick: PropTypes.bool,\n activeOverlay: PropTypes.string.isRequired,\n goToPreviousNavigationState: PropTypes.func.isRequired,\n areOtherOverlaysOpen: PropTypes.bool.isRequired,\n changeHeaderState: PropTypes.func.isRequired,\n onVisible: PropTypes.func,\n onClose: PropTypes.func,\n onHide: PropTypes.func,\n isStatic: PropTypes.bool,\n children: ChildrenType,\n id: PropTypes.string.isRequired,\n shouldPopupClose: PropTypes.bool.isRequired,\n isMobile: PropTypes.bool.isRequired,\n hideActiveOverlay: PropTypes.func.isRequired,\n resetHideActivePopup: PropTypes.func.isRequired\n };\n\n static defaultProps = {\n onVisible: noopFn,\n onClose: noopFn,\n onHide: noopFn,\n mix: {},\n contentMix: {},\n children: [],\n isStatic: false,\n isCloseOnOutsideClick: true\n };\n\n containerFunctions = {\n onVisible: this.onVisible.bind(this)\n };\n\n onVisible() {\n const { changeHeaderState, onVisible } = this.props;\n\n changeHeaderState({\n name: POPUP,\n title: this._getPopupTitle(),\n onCloseClick: () => {\n history.back();\n }\n });\n\n onVisible();\n }\n\n containerProps() {\n const {\n isCloseOnOutsideClick,\n activeOverlay,\n areOtherOverlaysOpen,\n changeHeaderState,\n children,\n id,\n isMobile,\n isStatic,\n mix,\n contentMix,\n onClose,\n onHide,\n onVisible,\n shouldPopupClose,\n hideActiveOverlay,\n resetHideActivePopup,\n goToPreviousNavigationState\n } = this.props;\n\n return {\n isCloseOnOutsideClick,\n activeOverlay,\n areOtherOverlaysOpen,\n changeHeaderState,\n children,\n id,\n isMobile,\n isStatic,\n mix,\n contentMix,\n shouldPopupClose,\n onClose,\n onHide,\n onVisible,\n hideActiveOverlay,\n resetHideActivePopup,\n goToPreviousNavigationState,\n title: this._getPopupTitle()\n };\n }\n\n _getPopupTitle() {\n const { payload, activeOverlay } = this.props;\n const { title } = payload[activeOverlay] || {};\n\n return title;\n }\n\n render() {\n return (\n \n );\n }\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(PopupContainer);\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nexport { default } from './Popup.container';\n","/* eslint-disable react/no-unused-state */\n\n/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport { PureComponent } from 'react';\n\nimport Popup from 'Component/Popup';\nimport { MediaItemType } from 'Type/ProductList.type';\nimport { makeCancelable } from 'Util/Promise';\n\nimport { VIDEO_POPUP_ID, VIMEO_FORMAT, YOUTUBE_FORMAT } from './VideoPopup.config';\n\nimport './VideoPopup.style';\n\n/**\n * A popup capable of displaying a video\n * @class VideoPopup\n * @namespace Component/VideoPopup/Component\n */\nexport class VideoPopup extends PureComponent {\n static propTypes = {\n payload: MediaItemType.isRequired\n };\n\n componentDidMount() {\n this.loadVimeoLibrary();\n this.loadYouTubeLibrary();\n\n Promise.all([\n this.vimeoPromise,\n this.youTubePromise\n ]).then(\n /** @namespace Component/VideoPopup/Component/VideoPopup/componentDidMount/all/then */\n () => this.forceUpdate()\n );\n }\n\n componentWillUnmount() {\n if (this.youTubePromise) {\n this.youTubePromise.cancel();\n }\n\n if (this.vimeoPromise) {\n this.vimeoPromise.cancel();\n }\n }\n\n /**\n * Renders a video provided by Vimeo\n * @param videoId\n * @returns {*}\n * @private\n */\n _renderVimeoVideo(videoId) {\n const Vimeo = this.vimeoComponent;\n\n if (!Vimeo) {\n return null;\n }\n\n return (\n \n );\n }\n\n /**\n * Renders a video provided by Youtube\n * @param videoId\n * @returns {*}\n * @private\n */\n _renderYoutubeVideo(videoId) {\n const YouTube = this.youTubeComponent;\n\n if (!YouTube) {\n return null;\n }\n\n return (\n \n );\n }\n\n loadVimeoLibrary() {\n this.vimeoPromise = makeCancelable(import('react-vimeo'));\n\n this.vimeoPromise.promise.then(\n /** @namespace Component/VideoPopup/Component/VideoPopup/loadVimeoLibrary/then */\n ({ default: vimeo }) => {\n this.vimeoComponent = vimeo;\n }\n );\n }\n\n loadYouTubeLibrary() {\n this.youTubePromise = makeCancelable(import('react-youtube'));\n\n this.youTubePromise.promise.then(\n /** @namespace Component/VideoPopup/Component/VideoPopup/loadYouTubeLibrary/then */\n ({ default: youTube }) => {\n this.youTubeComponent = youTube;\n }\n );\n }\n\n /**\n * Parses the video URL and renders the video accordingly\n * @returns {null|*}\n * @private\n */\n _renderVideoContent() {\n const {\n payload: {\n media: {\n video_content: { video_url } = {}\n } = {}\n }\n } = this.props;\n\n if (!video_url) {\n return null;\n }\n\n const [, vimeoId] = VIMEO_FORMAT.exec(video_url) || [];\n\n if (vimeoId) {\n return this._renderVimeoVideo(vimeoId);\n }\n\n const [, youtubeId] = YOUTUBE_FORMAT.exec(video_url);\n\n if (youtubeId) {\n return this._renderYoutubeVideo(youtubeId);\n }\n\n return null;\n }\n\n render() {\n return (\n \n
\n
\n { this._renderVideoContent() }\n
\n
\n
\n );\n }\n}\n\nexport default VideoPopup;\n","var api = require(\"!../../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../css-loader/dist/cjs.js??ref--5-oneOf-6-1!../../../../../postcss-loader/src/index.js??postcss!../../../../../resolve-url-loader/index.js??ref--5-oneOf-6-3!../../../../../sass-loader/dist/cjs.js??ref--5-oneOf-6-4!../../../../../sass-resources-loader/lib/loader.js??ref--5-oneOf-6-5!./VideoPopup.style.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {\"injectType\":\"styleTag\"};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--star-size: 18px;--plus-minus-icon-size: 24px;--wishlist-heart-size: 23px}:root{--product-card-content-height: 150px;--page-inline-padding: 80px;--page-inline-gap: 24px}@media (min-width: 811px) and (max-width: 1024px) and (-webkit-min-device-pixel-ratio: 1){:root{--page-inline-padding: 32px;--page-inline-gap: 16px}}@media screen and (max-width: 810px){:root{--page-inline-padding: 16px;--page-inline-gap: 12px}}.VideoPopup{--popup-min-width: none;--popup-content-padding: 0;--content-wrapper-width: none;--popup-max-height: none}@media screen and (max-width: 810px){.VideoPopup{--popup-content-padding: 0}}.VideoPopup-VideoPlayer{overflow:hidden;width:100vw;height:calc(100vh - 40px);background:black}@media (min-width: 811px){.VideoPopup-VideoPlayer{width:calc(100vw - 130px);height:0;-webkit-padding-before:56.3%;padding-top:56.3%;max-width:calc((100vh - 300px) / .563)}}[dir=\\\"ltr\\\"] .VideoPopup-PlayerContent{right:0}[dir=\\\"rtl\\\"] .VideoPopup-PlayerContent{left:0}[dir=\\\"ltr\\\"] .VideoPopup-PlayerContent{left:0}[dir=\\\"rtl\\\"] .VideoPopup-PlayerContent{right:0}.VideoPopup-PlayerContent{position:absolute;top:0;bottom:0}.VideoPopup-PlayerContent .vimeo{height:100%;width:100%}.VideoPopup-PlayerContent .vimeo iframe{width:100%;height:100%}.VideoPopup-YouTube,.VideoPopup-YouTubeContainer{height:100%;width:100%}.VideoPopup .Popup-Header{display:none}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_icons.scss\",\"webpack://src/style/abstract/_global.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_media.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/component/VideoPopup/VideoPopup.style.scss\"],\"names\":[],\"mappings\":\"AAWA,MACI,iBAAY,CACZ,4BAAuB,CACvB,2BAAsB,CACzB,MCdG,oCAA8B,CAE9B,2BAAsB,CACtB,uBAAkB,CCkClB,0FDtCJ,MAOQ,2BAAsB,CACtB,uBAAkB,CAOzB,CCiDG,qCDhEJ,MAYQ,2BAAsB,CACtB,uBAAkB,CAEzB,CEQD,YACI,uBAAkB,CAClB,0BAAwB,CACxB,6BAAwB,CACxB,wBAAmB,CA+CtB,qCAnDD,YAOQ,0BAAwB,CA4C/B,CAzCG,wBACI,eAAgB,CAChB,WAAY,CACZ,yBAA0B,CAC1B,gBAAiB,CAQpB,0BAZD,wBAOQ,yBAA0B,CAC1B,QAAS,CACT,4BAA0B,CAA1B,iBAA0B,CAC1B,sCAAuC,CAE9C,CAED,sCAGI,OAEqB,CALzB,sCAGI,MAEqB,CALzB,sCAKI,MAAqB,CALzB,sCAKI,OAAqB,CALzB,0BACI,iBAAkB,CAClB,KAAoB,CAEpB,QACqB,CALxB,iCAQO,WAAY,CACZ,UAAW,CATlB,wCAYW,UAAW,CACX,WAAY,CACf,iDAML,WAAY,CACZ,UAAW,CA7CnB,0BAiDQ,YAAa\",\"sourcesContent\":[\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n:root {\\n --star-size: 18px;\\n --plus-minus-icon-size: 24px;\\n --wishlist-heart-size: 23px;\\n}\\n\\n@mixin icon-black-hover-effect {\\n fill: var(--color-black);\\n\\n &:hover {\\n fill: var(--primary-base-color);\\n }\\n}\\n\\n@mixin icon-primary {\\n fill: var(--primary-base-color);\\n\\n @include hoverable { \\n &:hover {\\n fill: var(--primary-dark-color);\\n }\\n }\\n\\n &:active {\\n fill: var(--primary-dark-color);\\n }\\n}\\n\\n@mixin not-available {\\n content: '';\\n position: absolute;\\n width: 1px;\\n height: 32px;\\n transform-origin: 50% 50%;\\n inset-inline-start: 15px;\\n inset-block-start: 1px;\\n transform: rotate(45deg);\\n box-shadow: none;\\n border-radius: 0;\\n opacity: 1;\\n}\\n\\n@mixin ios-share {\\n $color-dodger-blue: #3b9cfe;\\n\\n border: 2px solid $color-dodger-blue;\\n inset-block-end: -3px;\\n height: 18px;\\n margin: 0 4px;\\n width: 18px;\\n\\n &::before {\\n content: '';\\n border-inline-start: 2px solid $color-dodger-blue;\\n border-block-start: 2px solid $color-dodger-blue;\\n display: block;\\n height: 6px;\\n inset-inline-start: 3px;\\n position: relative;\\n inset-block-start: -9px;\\n transform: rotate(45deg);\\n width: 6px;\\n\\n [dir=\\\"rtl\\\"] & {\\n transform: rotate(315deg);\\n }\\n }\\n\\n &::after {\\n border-inline-start: 2px solid $color-dodger-blue;\\n content: '';\\n display: block;\\n height: 16px;\\n inset-inline-start: 6px;\\n position: relative;\\n inset-block-start: -16px;\\n width: 19px;\\n }\\n}\\n\\n@mixin ios-plus {\\n $color-storm-grey: #7b7b86;\\n\\n background: linear-gradient($white, $white),\\n linear-gradient($white, $white),\\n $color-storm-grey;\\n background-position: center;\\n background-repeat: no-repeat;\\n background-size: 52% 1px, 1px 48%;\\n border-radius: 5px;\\n height: 20px;\\n margin: 0 4px;\\n width: 20px;\\n}\\n\\n@mixin rtl-icon {\\n [dir=\\\"rtl\\\"] & {\\n transform: scaleX(-1);\\n }\\n}\\n\",\":root {\\n --product-card-content-height: 150px;\\n\\n --page-inline-padding: 80px;\\n --page-inline-gap: 24px;\\n\\n @include tablet {\\n --page-inline-padding: 32px;\\n --page-inline-gap: 16px;\\n }\\n\\n @include mobile {\\n --page-inline-padding: 16px;\\n --page-inline-gap: 12px;\\n }\\n}\\n\\n@mixin inline-padding {\\n margin-inline: auto;\\n padding-inline: var(--page-inline-padding);\\n max-width: var(--content-wrapper-width);\\n}\\n\\n@mixin overflow-to-full-screen-width {\\n width: 100vw;\\n margin-inline: -50vw;\\n inset-inline: 50%;\\n}\\n\",\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n@mixin desktop {\\n @media (min-width: 811px) {\\n @content;\\n }\\n}\\n\\n@mixin ultra-narrow-desktop {\\n @media (min-width: 810px)\\n and (max-width: 1160px) {\\n @content;\\n }\\n}\\n\\n@mixin narrow-desktop {\\n @media (min-width: 1024px)\\n and (max-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin wide-desktop {\\n @media (min-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin tablet {\\n @media (min-width: 811px)\\n and (max-width: 1024px)\\n and (-webkit-min-device-pixel-ratio: 1) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-portrait {\\n @media (min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: portrait) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-landscape {\\n @media(min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: landscape) {\\n @content;\\n }\\n}\\n\\n@mixin mobile {\\n @media screen and (max-width: 810px) {\\n @content;\\n }\\n}\\n\\n@mixin standalone {\\n /* stylelint-disable-next-line media-feature-name-no-unknown */\\n @media all and (display-mode: standalone) {\\n @content;\\n }\\n}\\n\\n@mixin hoverable {\\n @media (hover: hover) and (pointer: fine) { \\n @content;\\n }\\n}\\n\",\"@import '../../../../../../src/style/abstract/variables';\\n@import '../../../../../../src/style/abstract/variables.override';\\n@import '../../../../../../src/style/abstract/media';\\n@import '../../../../../../src/style/abstract/button';\\n@import '../../../../../../src/style/abstract/button.override';\\n@import '../../../../../../src/style/abstract/loader';\\n@import '../../../../../../src/style/abstract/loader.override';\\n@import '../../../../../../src/style/abstract/icons';\\n@import '../../../../../../src/style/abstract/parts';\\n@import '../../../../../../src/style/abstract/global';\\n@import '../../../../../../src/style/abstract/typography';\\n\\n/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n.VideoPopup {\\n --popup-min-width: none;\\n --popup-content-padding: 0;\\n --content-wrapper-width: none;\\n --popup-max-height: none;\\n\\n @include mobile {\\n --popup-content-padding: 0;\\n }\\n\\n &-VideoPlayer {\\n overflow: hidden;\\n width: 100vw;\\n height: calc(100vh - 40px);\\n background: black;\\n\\n @include desktop {\\n width: calc(100vw - 130px);\\n height: 0;\\n padding-block-start: 56.3%; // 16x9 proportion\\n max-width: calc((100vh - 300px) / .563);\\n }\\n }\\n\\n &-PlayerContent {\\n position: absolute;\\n inset-block-start: 0;\\n inset-inline-end: 0;\\n inset-block-end: 0;\\n inset-inline-start: 0;\\n\\n .vimeo {\\n height: 100%;\\n width: 100%;\\n\\n iframe {\\n width: 100%;\\n height: 100%;\\n }\\n }\\n }\\n\\n &-YouTube,\\n &-YouTubeContainer {\\n height: 100%;\\n width: 100%;\\n }\\n\\n .Popup-Header {\\n display: none;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/* eslint-disable import/prefer-default-export */\n\n/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nexport const ESCAPE_KEY = 27;\n","/* eslint-disable react/no-unused-prop-types */\n\n/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport PropTypes from 'prop-types';\nimport { createRef, PureComponent } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { ChildrenType, MixType } from 'Type/Common.type';\nimport { toggleScroll } from 'Util/Browser';\nimport { noopFn } from 'Util/Common';\n\nimport './Overlay.style';\n\n/** @namespace Component/Overlay/Component */\nexport class Overlay extends PureComponent {\n static propTypes = {\n mix: MixType,\n id: PropTypes.string.isRequired,\n onVisible: PropTypes.func,\n onHide: PropTypes.func,\n activeOverlay: PropTypes.string.isRequired,\n areOtherOverlaysOpen: PropTypes.bool.isRequired,\n isStatic: PropTypes.bool,\n isRenderInPortal: PropTypes.bool,\n children: ChildrenType,\n isMobile: PropTypes.bool.isRequired\n };\n\n static defaultProps = {\n mix: {},\n children: [],\n onVisible: noopFn,\n isStatic: false,\n onHide: noopFn,\n isRenderInPortal: true\n };\n\n overlayRef = createRef();\n\n componentDidUpdate(prevProps) {\n const prevWasVisible = this.getIsVisible(prevProps);\n const isVisible = this.getIsVisible();\n\n if (isVisible && !prevWasVisible) {\n this.onVisible();\n }\n\n if (!isVisible && prevWasVisible) {\n this.onHide();\n }\n }\n\n onVisible() {\n const { onVisible, isStatic, isMobile } = this.props;\n\n if (isStatic) {\n return;\n }\n\n if (isMobile) {\n this.freezeScroll();\n }\n\n this.overlayRef.current.focus();\n onVisible();\n }\n\n onHide() {\n const { onHide, isStatic, isMobile } = this.props;\n\n if (isStatic) {\n return;\n }\n\n if (isMobile) {\n this.unfreezeScroll();\n }\n onHide();\n }\n\n getIsVisible(props = this.props) {\n const { id, activeOverlay, isStatic } = props;\n\n return isStatic || id === activeOverlay;\n }\n\n freezeScroll() {\n this.YoffsetWhenScrollDisabled = window.pageYOffset || document.body.scrollTop;\n toggleScroll(false);\n document.body.style.marginTop = `${-this.YoffsetWhenScrollDisabled}px`;\n }\n\n unfreezeScroll() {\n toggleScroll(true);\n document.body.style.marginTop = 0;\n window.scrollTo(0, this.YoffsetWhenScrollDisabled);\n }\n\n renderInMobilePortal(content) {\n const { isStatic, isRenderInPortal, isMobile } = this.props;\n\n if (!isStatic && isMobile && isRenderInPortal) {\n return createPortal(content, document.body);\n }\n\n return content;\n }\n\n render() {\n const {\n children,\n mix,\n areOtherOverlaysOpen,\n isStatic\n } = this.props;\n\n const isVisible = this.getIsVisible();\n\n return this.renderInMobilePortal(\n \n { children && children }\n \n );\n }\n}\n\nexport default Overlay;\n","var api = require(\"!../../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../css-loader/dist/cjs.js??ref--5-oneOf-6-1!../../../../../postcss-loader/src/index.js??postcss!../../../../../resolve-url-loader/index.js??ref--5-oneOf-6-3!../../../../../sass-loader/dist/cjs.js??ref--5-oneOf-6-4!../../../../../sass-resources-loader/lib/loader.js??ref--5-oneOf-6-5!./Overlay.style.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {\"injectType\":\"styleTag\"};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--star-size: 18px;--plus-minus-icon-size: 24px;--wishlist-heart-size: 23px}:root{--product-card-content-height: 150px;--page-inline-padding: 80px;--page-inline-gap: 24px}@media (min-width: 811px) and (max-width: 1024px) and (-webkit-min-device-pixel-ratio: 1){:root{--page-inline-padding: 32px;--page-inline-gap: 16px}}@media screen and (max-width: 810px){:root{--page-inline-padding: 16px;--page-inline-gap: 12px}}:root{--overlay-background: var(--secondary-base-color);--overlay-content-background: #fff;--overlay-desktop-border-color: var(--primary-divider-color)}@media (min-width: 811px){:root{--overlay-background: #fff}}.Overlay{pointer-events:none;will-change:opacity;z-index:10;opacity:0;background-color:#fff;background-color:var(--overlay-content-background)}@media screen and (max-width: 810px){[dir=\\\"ltr\\\"] .Overlay:not(.Overlay_isStatic){left:0}[dir=\\\"rtl\\\"] .Overlay:not(.Overlay_isStatic){right:0}.Overlay:not(.Overlay_isStatic){-webkit-overflow-scrolling:touch;position:fixed;top:var(--header-total-height);width:100%;height:calc(100% - var(--header-total-height));-webkit-padding-after:var(--navigation-tabs-height);padding-bottom:var(--navigation-tabs-height);overflow:scroll;overflow-x:hidden;max-width:100%}}@media (min-width: 811px){.Overlay{position:absolute;transition:opacity 200ms;height:0;overflow:hidden}}.Overlay_isVisible{pointer-events:all;touch-action:pan-y;opacity:1;z-index:99}@media (min-width: 811px){.Overlay_isVisible{height:auto;overflow:visible}}.Overlay>*{background-color:#fff;background-color:var(--overlay-content-background)}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_icons.scss\",\"webpack://src/style/abstract/_global.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_media.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/component/Overlay/Overlay.style.scss\"],\"names\":[],\"mappings\":\"AAWA,MACI,iBAAY,CACZ,4BAAuB,CACvB,2BAAsB,CACzB,MCdG,oCAA8B,CAE9B,2BAAsB,CACtB,uBAAkB,CCkClB,0FDtCJ,MAOQ,2BAAsB,CACtB,uBAAkB,CAOzB,CCiDG,qCDhEJ,MAYQ,2BAAsB,CACtB,uBAAkB,CAEzB,CEQD,MACI,iDAAqB,CACrB,kCAA6B,CAC7B,4DAA+B,CAKlC,0BARD,MAMQ,0BAAqB,CAE5B,CAED,SACI,mBAAoB,CACpB,mBAAoB,CACpB,UAAW,CACX,SAAU,CACV,qBAAA,CAAA,kDAAmD,CAuCtD,qCA5CD,4CAYY,MAMe,CAlB3B,4CAYY,OAMe,CAlB3B,gCASY,gCAAiC,CACjC,cAAe,CACf,8BAA6C,CAE7C,UAAW,CACX,8CAA+C,CAC/C,mDAAgD,CAAhD,4CAAgD,CAChD,eAAgB,CAChB,iBAAkB,CAClB,cAAe,CAEtB,CDzCD,0BCqBJ,SAuBQ,iBAAkB,CAClB,wBAAyB,CACzB,QAAS,CACT,eAAgB,CAkBvB,CAfG,mBACI,kBAAmB,CACnB,kBAAmB,CACnB,SAAU,CACV,UAAW,CAMd,0BAVD,mBAOQ,WAAY,CACZ,gBAAiB,CAExB,CAvCL,WA0CQ,qBAAA,CAAA,kDAAmD\",\"sourcesContent\":[\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n:root {\\n --star-size: 18px;\\n --plus-minus-icon-size: 24px;\\n --wishlist-heart-size: 23px;\\n}\\n\\n@mixin icon-black-hover-effect {\\n fill: var(--color-black);\\n\\n &:hover {\\n fill: var(--primary-base-color);\\n }\\n}\\n\\n@mixin icon-primary {\\n fill: var(--primary-base-color);\\n\\n @include hoverable { \\n &:hover {\\n fill: var(--primary-dark-color);\\n }\\n }\\n\\n &:active {\\n fill: var(--primary-dark-color);\\n }\\n}\\n\\n@mixin not-available {\\n content: '';\\n position: absolute;\\n width: 1px;\\n height: 32px;\\n transform-origin: 50% 50%;\\n inset-inline-start: 15px;\\n inset-block-start: 1px;\\n transform: rotate(45deg);\\n box-shadow: none;\\n border-radius: 0;\\n opacity: 1;\\n}\\n\\n@mixin ios-share {\\n $color-dodger-blue: #3b9cfe;\\n\\n border: 2px solid $color-dodger-blue;\\n inset-block-end: -3px;\\n height: 18px;\\n margin: 0 4px;\\n width: 18px;\\n\\n &::before {\\n content: '';\\n border-inline-start: 2px solid $color-dodger-blue;\\n border-block-start: 2px solid $color-dodger-blue;\\n display: block;\\n height: 6px;\\n inset-inline-start: 3px;\\n position: relative;\\n inset-block-start: -9px;\\n transform: rotate(45deg);\\n width: 6px;\\n\\n [dir=\\\"rtl\\\"] & {\\n transform: rotate(315deg);\\n }\\n }\\n\\n &::after {\\n border-inline-start: 2px solid $color-dodger-blue;\\n content: '';\\n display: block;\\n height: 16px;\\n inset-inline-start: 6px;\\n position: relative;\\n inset-block-start: -16px;\\n width: 19px;\\n }\\n}\\n\\n@mixin ios-plus {\\n $color-storm-grey: #7b7b86;\\n\\n background: linear-gradient($white, $white),\\n linear-gradient($white, $white),\\n $color-storm-grey;\\n background-position: center;\\n background-repeat: no-repeat;\\n background-size: 52% 1px, 1px 48%;\\n border-radius: 5px;\\n height: 20px;\\n margin: 0 4px;\\n width: 20px;\\n}\\n\\n@mixin rtl-icon {\\n [dir=\\\"rtl\\\"] & {\\n transform: scaleX(-1);\\n }\\n}\\n\",\":root {\\n --product-card-content-height: 150px;\\n\\n --page-inline-padding: 80px;\\n --page-inline-gap: 24px;\\n\\n @include tablet {\\n --page-inline-padding: 32px;\\n --page-inline-gap: 16px;\\n }\\n\\n @include mobile {\\n --page-inline-padding: 16px;\\n --page-inline-gap: 12px;\\n }\\n}\\n\\n@mixin inline-padding {\\n margin-inline: auto;\\n padding-inline: var(--page-inline-padding);\\n max-width: var(--content-wrapper-width);\\n}\\n\\n@mixin overflow-to-full-screen-width {\\n width: 100vw;\\n margin-inline: -50vw;\\n inset-inline: 50%;\\n}\\n\",\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n@mixin desktop {\\n @media (min-width: 811px) {\\n @content;\\n }\\n}\\n\\n@mixin ultra-narrow-desktop {\\n @media (min-width: 810px)\\n and (max-width: 1160px) {\\n @content;\\n }\\n}\\n\\n@mixin narrow-desktop {\\n @media (min-width: 1024px)\\n and (max-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin wide-desktop {\\n @media (min-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin tablet {\\n @media (min-width: 811px)\\n and (max-width: 1024px)\\n and (-webkit-min-device-pixel-ratio: 1) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-portrait {\\n @media (min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: portrait) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-landscape {\\n @media(min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: landscape) {\\n @content;\\n }\\n}\\n\\n@mixin mobile {\\n @media screen and (max-width: 810px) {\\n @content;\\n }\\n}\\n\\n@mixin standalone {\\n /* stylelint-disable-next-line media-feature-name-no-unknown */\\n @media all and (display-mode: standalone) {\\n @content;\\n }\\n}\\n\\n@mixin hoverable {\\n @media (hover: hover) and (pointer: fine) { \\n @content;\\n }\\n}\\n\",\"@import '../../../../../../src/style/abstract/variables';\\n@import '../../../../../../src/style/abstract/variables.override';\\n@import '../../../../../../src/style/abstract/media';\\n@import '../../../../../../src/style/abstract/button';\\n@import '../../../../../../src/style/abstract/button.override';\\n@import '../../../../../../src/style/abstract/loader';\\n@import '../../../../../../src/style/abstract/loader.override';\\n@import '../../../../../../src/style/abstract/icons';\\n@import '../../../../../../src/style/abstract/parts';\\n@import '../../../../../../src/style/abstract/global';\\n@import '../../../../../../src/style/abstract/typography';\\n\\n/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n:root {\\n --overlay-background: var(--secondary-base-color);\\n --overlay-content-background: #fff;\\n --overlay-desktop-border-color: var(--primary-divider-color);\\n\\n @include desktop {\\n --overlay-background: #fff;\\n }\\n}\\n\\n.Overlay {\\n pointer-events: none;\\n will-change: opacity;\\n z-index: 10;\\n opacity: 0;\\n background-color: var(--overlay-content-background);\\n\\n &:not(.Overlay_isStatic) {\\n @include mobile {\\n -webkit-overflow-scrolling: touch;\\n position: fixed;\\n inset-block-start: var(--header-total-height);\\n inset-inline-start: 0;\\n width: 100%;\\n height: calc(100% - var(--header-total-height));\\n padding-block-end: var(--navigation-tabs-height);\\n overflow: scroll;\\n overflow-x: hidden;\\n max-width: 100%;\\n }\\n }\\n\\n @include desktop {\\n position: absolute;\\n transition: opacity 200ms;\\n height: 0;\\n overflow: hidden;\\n }\\n\\n &_isVisible {\\n pointer-events: all;\\n touch-action: pan-y;\\n opacity: 1;\\n z-index: 99;\\n\\n @include desktop {\\n height: auto;\\n overflow: visible;\\n }\\n }\\n\\n > * {\\n background-color: var(--overlay-content-background);\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * ScandiPWA - Progressive Web App for Magento\n *\n * Copyright © Scandiweb, Inc. All rights reserved.\n * See LICENSE for license details.\n *\n * @license OSL-3.0 (Open Software License (\"OSL\") v. 3.0)\n * @package scandipwa/scandipwa\n * @link https://github.com/scandipwa/scandipwa\n */\n\nimport PropTypes from 'prop-types';\nimport { createPortal } from 'react-dom';\n\nimport ClickOutside from 'Component/ClickOutside';\nimport CloseIcon from 'Component/CloseIcon';\nimport NotificationList from 'Component/NotificationList';\nimport Overlay from 'Component/Overlay/Overlay.component';\nimport history from 'Util/History';\n\nimport { ESCAPE_KEY } from './Popup.config';\n\nimport './Popup.style';\n\n/** @namespace Component/Popup/Component */\nexport class Popup extends Overlay {\n static propTypes = {\n ...Overlay.propTypes,\n isCloseOnOutsideClick: PropTypes.bool.isRequired,\n title: PropTypes.string\n };\n\n static defaultProps = {\n ...Overlay.defaultProps,\n title: ''\n };\n\n hidePopUp = this.hidePopUp.bind(this);\n\n hidePopupAndGoBack = this.hidePopupAndGoBack.bind(this);\n\n handleClickOutside = this.handleClickOutside.bind(this);\n\n componentDidMount() {\n document.addEventListener('keydown', this.handleKeyDown.bind(this));\n }\n\n componentDidUpdate(prevProps) {\n const { shouldPopupClose, resetHideActivePopup } = this.props;\n const { shouldPopupClose: prevShouldPopupClose } = prevProps;\n\n if (shouldPopupClose && shouldPopupClose !== prevShouldPopupClose) {\n this.hidePopUp();\n resetHideActivePopup();\n }\n\n super.componentDidUpdate(prevProps);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleKeyDown.bind(this));\n }\n\n onVisible() {\n const { onVisible } = this.props;\n\n this.freezeScroll();\n this.overlayRef.current.focus();\n\n window.addEventListener('popstate', this.hidePopUp);\n\n window.history.pushState(\n {\n popupOpen: true\n },\n '',\n `${location.pathname}${location.search}${location.hash}`\n );\n\n onVisible();\n }\n\n onHide() {\n const { onHide } = this.props;\n\n window.removeEventListener('popstate', this.hidePopUp);\n\n this.unfreezeScroll();\n\n onHide();\n }\n\n hidePopUp() {\n const { hideActiveOverlay, goToPreviousNavigationState, onClose } = this.props;\n const isVisible = this.getIsVisible();\n\n if (isVisible) {\n this.unfreezeScroll();\n hideActiveOverlay();\n goToPreviousNavigationState();\n onClose();\n }\n }\n\n hidePopupAndGoBack() {\n this.hidePopUp();\n history.goBack();\n }\n\n // Same with click outside\n handleClickOutside() {\n const { isCloseOnOutsideClick, isMobile } = this.props;\n\n if (!isCloseOnOutsideClick) {\n return;\n }\n\n if (isMobile) {\n return;\n }\n\n this.hidePopupAndGoBack();\n }\n\n handleKeyDown(e) {\n switch (e.keyCode) {\n case ESCAPE_KEY:\n this.hidePopupAndGoBack();\n break;\n default:\n break;\n }\n }\n\n renderTitle() {\n const { title } = this.props;\n\n if (!title) {\n return null;\n }\n\n return (\n

\n { title }\n

\n );\n }\n\n renderCloseButton() {\n return (\n \n \n \n );\n }\n\n renderNotifications() {\n const { isMobile } = this.props;\n\n if (!isMobile) {\n return null;\n }\n\n return ;\n }\n\n renderContent() {\n const { children, contentMix } = this.props;\n const isVisible = this.getIsVisible();\n\n if (!isVisible) {\n return null;\n }\n\n return (\n \n
\n
\n { this.renderTitle() }\n { this.renderCloseButton() }\n
\n { this.renderNotifications() }\n { children }\n
\n
\n );\n }\n\n render() {\n const { mix, areOtherOverlaysOpen } = this.props;\n const isVisible = this.getIsVisible();\n\n return createPortal(\n \n { this.renderContent() }\n ,\n document.body\n );\n }\n}\n\nexport default Popup;\n","var api = require(\"!../../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../../../css-loader/dist/cjs.js??ref--5-oneOf-6-1!../../../../../postcss-loader/src/index.js??postcss!../../../../../resolve-url-loader/index.js??ref--5-oneOf-6-3!../../../../../sass-loader/dist/cjs.js??ref--5-oneOf-6-4!../../../../../sass-resources-loader/lib/loader.js??ref--5-oneOf-6-5!./Popup.style.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {\"injectType\":\"styleTag\"};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--star-size: 18px;--plus-minus-icon-size: 24px;--wishlist-heart-size: 23px}:root{--product-card-content-height: 150px;--page-inline-padding: 80px;--page-inline-gap: 24px}@media (min-width: 811px) and (max-width: 1024px) and (-webkit-min-device-pixel-ratio: 1){:root{--page-inline-padding: 32px;--page-inline-gap: 16px}}@media screen and (max-width: 810px){:root{--page-inline-padding: 16px;--page-inline-gap: 12px}}:root{--popup-background: #0003;--popup-content-background: #fff;--popup-min-width: 100%;--popup-content-padding: 12px;--popup-max-height: 80%}@media screen and (max-width: 810px){:root{--popup-content-padding: 14px}}@media (min-width: 811px){:root{--popup-min-width: 490px;--popup-content-padding: 24px}}[dir=\\\"ltr\\\"] .Popup{left:0}[dir=\\\"rtl\\\"] .Popup{right:0}.Popup{opacity:0;pointer-events:none;z-index:400;position:fixed;background-color:#0003;background-color:var(--popup-background);top:var(--header-total-height);display:flex;justify-content:center;align-items:center}@media screen and (max-width: 810px){.Popup{align-items:stretch}}.Popup_isVisible{pointer-events:all;opacity:1;width:100vw;height:100vh;top:0}@media screen and (max-width: 810px){.Popup_isVisible{top:var(--header-total-height);height:calc(100% - var(--header-total-height))}}.Popup-Heading{text-decoration:none;font-weight:400;-webkit-margin-before:0;margin-top:0}@media screen and (max-width: 810px){.Popup-Header{display:none}}.Popup-Content{background-color:#fff;background-color:var(--popup-content-background);border-radius:5px;padding:12px;padding:var(--popup-content-padding);-webkit-padding-after:0;padding-bottom:0;min-width:100%;min-width:var(--popup-min-width);max-width:100%;overflow-x:hidden;max-height:80%;max-height:var(--popup-max-height);overflow-y:auto}.Popup-Content::after{content:'';display:block;-webkit-padding-after:12px;padding-bottom:12px;-webkit-padding-after:var(--popup-content-padding);padding-bottom:var(--popup-content-padding)}@media screen and (max-width: 810px){.Popup-Content{border-radius:0;max-height:100%}}[dir=\\\"ltr\\\"] .Popup .Popup-CloseBtn{right:-6px}[dir=\\\"rtl\\\"] .Popup .Popup-CloseBtn{left:-6px}.Popup .Popup-CloseBtn{position:absolute;top:-4px;z-index:5}.Popup .Popup-CloseBtn .CloseIcon{height:30px;width:30px}@media screen and (max-width: 810px){.Popup .Popup-CloseBtn{top:25px}}@media screen and (max-width: 810px){.Popup .Loader{position:fixed}}[dir=\\\"ltr\\\"] .Popup .NotificationList{left:calc(0px - 12px)}[dir=\\\"rtl\\\"] .Popup .NotificationList{right:calc(0px - 12px)}[dir=\\\"ltr\\\"] .Popup .NotificationList{left:calc(0px - var(--popup-content-padding))}[dir=\\\"rtl\\\"] .Popup .NotificationList{right:calc(0px - var(--popup-content-padding))}.Popup .NotificationList{width:100vw;top:0;position:relative}.scrollDisabled{-webkit-margin-before:0;margin-top:0;width:100%}@media (min-width: 811px){.scrollDisabled{position:fixed;overflow-y:scroll}}@media screen and (max-width: 810px){.scrollDisabled{overflow:hidden}}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_icons.scss\",\"webpack://src/style/abstract/_global.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/style/abstract/_media.scss\",\"webpack://node_modules/@scandipwa/scandipwa/src/component/Popup/Popup.style.scss\"],\"names\":[],\"mappings\":\"AAWA,MACI,iBAAY,CACZ,4BAAuB,CACvB,2BAAsB,CACzB,MCdG,oCAA8B,CAE9B,2BAAsB,CACtB,uBAAkB,CCkClB,0FDtCJ,MAOQ,2BAAsB,CACtB,uBAAkB,CAOzB,CCiDG,qCDhEJ,MAYQ,2BAAsB,CACtB,uBAAkB,CAEzB,CEQD,MACI,yBAAmB,CAMnB,gCAA2B,CAC3B,uBAAkB,CAClB,6BAAwB,CACxB,uBAAmB,CAMtB,qCAhBD,MAIQ,6BAAwB,CAY/B,CD3BG,0BCWJ,MAaQ,wBAAkB,CAClB,6BAAwB,CAE/B,CAED,mBAMI,MAImB,CAVvB,mBAMI,OAImB,CAVvB,OACI,SAAU,CACV,mBAAoB,CACpB,WAAY,CACZ,cAAe,CACf,sBAAyC,CAAzC,wCAAyC,CAEzC,8BAA6C,CAC7C,YAAa,CACb,sBAAuB,CACvB,kBAAmB,CAkFtB,qCA5FD,OAaQ,mBAAoB,CA+E3B,CA5EG,iBACI,kBAAmB,CACnB,SAAU,CACV,WAAY,CACZ,YAAa,CACb,KAAoB,CAMvB,qCAXD,iBAQQ,8BAA6C,CAC7C,8CAA+C,CAEtD,CAED,eACI,oBAAqB,CACrB,eAAgB,CAChB,uBAAA,CAAA,YAAqB,CACxB,qCAED,cAEQ,YAAa,CAEpB,CAED,eACI,qBAAiD,CAAjD,gDAAiD,CACjD,iBAAkB,CAClB,YAAqC,CAArC,oCAAqC,CACrC,uBAAoB,CAApB,gBAAoB,CACpB,cAAiC,CAAjC,gCAAiC,CACjC,cAAe,CACf,iBAAkB,CAClB,cAAmC,CAAnC,kCAAmC,CACnC,eAAgB,CATnB,sBAYO,UAAW,CACX,aAAc,CACd,0BAAA,CAAA,mBAAA,CAAA,kDAAA,CAAA,2CAA+C,CAClD,qCAfL,eAkBQ,eAAgB,CAChB,eAAgB,CAEvB,CA9DL,mCAmEQ,UACU,CApElB,mCAmEQ,SACU,CApElB,uBAiEQ,iBAAkB,CAClB,QAAuB,CAEvB,SAAU,CApElB,kCAuEY,WAAY,CACZ,UAAW,CACd,qCAzET,uBA4EY,QAAuB,CAE9B,CDvDD,qCCvBJ,eAkFY,cAAe,CAEtB,CApFL,qCAyFQ,qBACkB,CA1F1B,qCAyFQ,sBACkB,CA1F1B,qCAyFQ,6CACkB,CA1F1B,qCAyFQ,8CACkB,CA1F1B,yBAuFQ,WAAY,CACZ,KAAoB,CAEpB,iBAAkB,CACrB,gBAID,uBAAqB,CAArB,YAAqB,CACrB,UAAW,CAUd,0BAZD,gBAKQ,cAAe,CACf,iBAAkB,CAMzB,CDnFG,qCCuEJ,gBAUQ,eAAgB,CAEvB\",\"sourcesContent\":[\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n:root {\\n --star-size: 18px;\\n --plus-minus-icon-size: 24px;\\n --wishlist-heart-size: 23px;\\n}\\n\\n@mixin icon-black-hover-effect {\\n fill: var(--color-black);\\n\\n &:hover {\\n fill: var(--primary-base-color);\\n }\\n}\\n\\n@mixin icon-primary {\\n fill: var(--primary-base-color);\\n\\n @include hoverable { \\n &:hover {\\n fill: var(--primary-dark-color);\\n }\\n }\\n\\n &:active {\\n fill: var(--primary-dark-color);\\n }\\n}\\n\\n@mixin not-available {\\n content: '';\\n position: absolute;\\n width: 1px;\\n height: 32px;\\n transform-origin: 50% 50%;\\n inset-inline-start: 15px;\\n inset-block-start: 1px;\\n transform: rotate(45deg);\\n box-shadow: none;\\n border-radius: 0;\\n opacity: 1;\\n}\\n\\n@mixin ios-share {\\n $color-dodger-blue: #3b9cfe;\\n\\n border: 2px solid $color-dodger-blue;\\n inset-block-end: -3px;\\n height: 18px;\\n margin: 0 4px;\\n width: 18px;\\n\\n &::before {\\n content: '';\\n border-inline-start: 2px solid $color-dodger-blue;\\n border-block-start: 2px solid $color-dodger-blue;\\n display: block;\\n height: 6px;\\n inset-inline-start: 3px;\\n position: relative;\\n inset-block-start: -9px;\\n transform: rotate(45deg);\\n width: 6px;\\n\\n [dir=\\\"rtl\\\"] & {\\n transform: rotate(315deg);\\n }\\n }\\n\\n &::after {\\n border-inline-start: 2px solid $color-dodger-blue;\\n content: '';\\n display: block;\\n height: 16px;\\n inset-inline-start: 6px;\\n position: relative;\\n inset-block-start: -16px;\\n width: 19px;\\n }\\n}\\n\\n@mixin ios-plus {\\n $color-storm-grey: #7b7b86;\\n\\n background: linear-gradient($white, $white),\\n linear-gradient($white, $white),\\n $color-storm-grey;\\n background-position: center;\\n background-repeat: no-repeat;\\n background-size: 52% 1px, 1px 48%;\\n border-radius: 5px;\\n height: 20px;\\n margin: 0 4px;\\n width: 20px;\\n}\\n\\n@mixin rtl-icon {\\n [dir=\\\"rtl\\\"] & {\\n transform: scaleX(-1);\\n }\\n}\\n\",\":root {\\n --product-card-content-height: 150px;\\n\\n --page-inline-padding: 80px;\\n --page-inline-gap: 24px;\\n\\n @include tablet {\\n --page-inline-padding: 32px;\\n --page-inline-gap: 16px;\\n }\\n\\n @include mobile {\\n --page-inline-padding: 16px;\\n --page-inline-gap: 12px;\\n }\\n}\\n\\n@mixin inline-padding {\\n margin-inline: auto;\\n padding-inline: var(--page-inline-padding);\\n max-width: var(--content-wrapper-width);\\n}\\n\\n@mixin overflow-to-full-screen-width {\\n width: 100vw;\\n margin-inline: -50vw;\\n inset-inline: 50%;\\n}\\n\",\"/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n@mixin desktop {\\n @media (min-width: 811px) {\\n @content;\\n }\\n}\\n\\n@mixin ultra-narrow-desktop {\\n @media (min-width: 810px)\\n and (max-width: 1160px) {\\n @content;\\n }\\n}\\n\\n@mixin narrow-desktop {\\n @media (min-width: 1024px)\\n and (max-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin wide-desktop {\\n @media (min-width: 1280px) {\\n @content;\\n }\\n}\\n\\n@mixin tablet {\\n @media (min-width: 811px)\\n and (max-width: 1024px)\\n and (-webkit-min-device-pixel-ratio: 1) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-portrait {\\n @media (min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: portrait) {\\n @content;\\n }\\n}\\n\\n@mixin tablet-landscape {\\n @media(min-width: 811px)\\n and (max-width: 1023px)\\n and (-webkit-min-device-pixel-ratio: 1)\\n and (orientation: landscape) {\\n @content;\\n }\\n}\\n\\n@mixin mobile {\\n @media screen and (max-width: 810px) {\\n @content;\\n }\\n}\\n\\n@mixin standalone {\\n /* stylelint-disable-next-line media-feature-name-no-unknown */\\n @media all and (display-mode: standalone) {\\n @content;\\n }\\n}\\n\\n@mixin hoverable {\\n @media (hover: hover) and (pointer: fine) { \\n @content;\\n }\\n}\\n\",\"@import '../../../../../../src/style/abstract/variables';\\n@import '../../../../../../src/style/abstract/variables.override';\\n@import '../../../../../../src/style/abstract/media';\\n@import '../../../../../../src/style/abstract/button';\\n@import '../../../../../../src/style/abstract/button.override';\\n@import '../../../../../../src/style/abstract/loader';\\n@import '../../../../../../src/style/abstract/loader.override';\\n@import '../../../../../../src/style/abstract/icons';\\n@import '../../../../../../src/style/abstract/parts';\\n@import '../../../../../../src/style/abstract/global';\\n@import '../../../../../../src/style/abstract/typography';\\n\\n/**\\n * ScandiPWA - Progressive Web App for Magento\\n *\\n * Copyright © Scandiweb, Inc. All rights reserved.\\n * See LICENSE for license details.\\n *\\n * @license OSL-3.0 (Open Software License (\\\"OSL\\\") v. 3.0)\\n * @package scandipwa/scandipwa\\n * @link https://github.com/scandipwa/scandipwa\\n */\\n\\n:root {\\n --popup-background: #0003;\\n\\n @include mobile {\\n --popup-content-padding: 14px;\\n }\\n\\n --popup-content-background: #{$white};\\n --popup-min-width: 100%;\\n --popup-content-padding: 12px;\\n --popup-max-height: 80%;\\n\\n @include desktop {\\n --popup-min-width: 490px;\\n --popup-content-padding: 24px;\\n }\\n}\\n\\n.Popup {\\n opacity: 0;\\n pointer-events: none;\\n z-index: 400;\\n position: fixed;\\n background-color: var(--popup-background);\\n inset-inline-start: 0;\\n inset-block-start: var(--header-total-height);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n\\n @include mobile {\\n align-items: stretch;\\n }\\n\\n &_isVisible {\\n pointer-events: all;\\n opacity: 1;\\n width: 100vw;\\n height: 100vh;\\n inset-block-start: 0;\\n\\n @include mobile {\\n inset-block-start: var(--header-total-height);\\n height: calc(100% - var(--header-total-height));\\n }\\n }\\n\\n &-Heading {\\n text-decoration: none;\\n font-weight: 400;\\n margin-block-start: 0;\\n }\\n\\n &-Header {\\n @include mobile {\\n display: none;\\n }\\n }\\n\\n &-Content {\\n background-color: var(--popup-content-background);\\n border-radius: 5px;\\n padding: var(--popup-content-padding);\\n padding-block-end: 0;\\n min-width: var(--popup-min-width);\\n max-width: 100%;\\n overflow-x: hidden;\\n max-height: var(--popup-max-height);\\n overflow-y: auto;\\n\\n &::after {\\n content: '';\\n display: block;\\n padding-block-end: var(--popup-content-padding);\\n }\\n\\n @include mobile {\\n border-radius: 0;\\n max-height: 100%;\\n }\\n }\\n\\n & &-CloseBtn {\\n position: absolute;\\n inset-block-start: -4px;\\n inset-inline-end: -6px;\\n z-index: 5;\\n\\n .CloseIcon {\\n height: 30px;\\n width: 30px;\\n }\\n\\n @include mobile {\\n inset-block-start: 25px;\\n }\\n }\\n\\n .Loader {\\n @include mobile {\\n position: fixed;\\n }\\n }\\n\\n .NotificationList {\\n width: 100vw;\\n inset-block-start: 0;\\n inset-inline-start: calc(0px - var(--popup-content-padding));\\n position: relative;\\n }\\n}\\n\\n.scrollDisabled {\\n margin-block-start: 0;\\n width: 100%;\\n\\n @include desktop {\\n position: fixed;\\n overflow-y: scroll;\\n }\\n\\n @include mobile {\\n overflow: hidden;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"sourceRoot":""}