{
  "version": 3,
  "sources": ["/cdn/shop/t/2/assets/product-quickshop.js?view=quick"],
  "sourcesContent": ["if (!customElements.get('wau-quick-add')) {\n\tcustomElements.define('wau-quick-add', class extends HTMLElement {\n\t\tconnectedCallback() {\n\t\t\tthis.querySelector('details')?.addEventListener('toggle', async ({target}) => {\n\n\t\t\t\t// Only run when the disclosure is open.\n\t\t\t\tif (!target.open) return;\n\n\t\t\t\tif (typeof WAU.Helpers.scriptLoader !== 'function') return;\n\n\t\t\t\tconst loader = new WAU.Helpers.scriptLoader();\n\n\t\t\t\ttry {\n\t\t\t\t\tawait loader.load([jsAssets.product]);\n\t\t\t\t\tProductQuickForm(target);\n\t\t\t\t} catch(error) {\n\t\t\t\t\tconsole.log(`error: ${error}.`);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n  });\n};\n\nWAU.Quickshop = {\n\tcache: new Map(),\n  init: function init() {\n\n    var selectors = {\n      quickviewButton: '.js-quickview-trigger'\n    }\n\n\t\t// Remove section contents\n\t\tif ( document.getElementById('quickshopTemplate') ) {\n\t\t\tdocument.getElementById('quickshopTemplate').innerHTML = '';\n\t\t}\n\n    // Init on click event for buttons\n    document.querySelectorAll(selectors.quickviewButton).forEach((button, i) => {\n\n      button.addEventListener('click', function(event) {\n        event.preventDefault();\n\t\t\t\tevent.target.classList.add('loading-quickshop');\n\n\t\t\t\tvar productUrl = this.dataset.productUrl,\n\t\t\t\t\t\tproductUrl = WAU.Quickshop.cleanUrl(productUrl, 'variant');\n\n\t\t\t\tlet singleVariant = event.target.hasAttribute('data-quick-add');\n\n\t\t\t\tconst loader = new WAU.Helpers.scriptLoader();\n\n        if ( this.dataset.hasModel )loader.load([jsAssets.productModel]).finally(() => {});\n        if ( this.dataset.hasVideo )loader.load([jsAssets.productVideo]).finally(() => {});\n\n\t\t\t\tloader.load([jsAssets.flickity]).finally(() => {\n\t\t\t\t\tloader.load([jsAssets.product]).finally(() => {\n\t\t\t\t\t\tWAU.Quickshop.getTemplate(productUrl, singleVariant, event.target);\n\t\t\t\t\t});\n\t\t\t\t});\n\n      });\n    });\n\n\t\t// TODO: Merge into the above\n\t\t// Prefetch Quickviews\n    document.querySelectorAll(selectors.quickviewButton).forEach(button => {\n      if (!'IntersectionObserver' in window) return;\n      const observer = new IntersectionObserver((entries, observer) => {\n        if (!entries[0].isIntersecting) return;\n        observer.unobserve(button);\n        WAU.Quickshop.prefetchQuickview(button);\n      },\n      {\n        rootMargin: '0px 0px 200px 0px',\n      });\n      observer.observe(button);\n    });\n\n\t\t// Open placeholder product on edit\n\t\tdocument.addEventListener(\"shopify:section:select\", function(event) {\n\t\t  if (event.target.id != 'shopify-section-quickshop') return false;\n\n\t\t\tWAU.Quickshop.getOnboard();\n\n\t\t});\n  },\n\tprefetchQuickview: async function({dataset}) {\n    const { productUrl } = dataset;\n    const cleanUrl = WAU.Quickshop.cleanUrl(productUrl);\n\n    // Add the cached HTML if it does not already exist.\n    if (!WAU.Quickshop.cache.has(cleanUrl)) {\n      const response = await fetch(productUrl);\n      htmlText = await response.text();\n      WAU.Quickshop.cache.set(cleanUrl, htmlText);\n    }\n  },\n  formatTemplate: function formatTemplate(response) {\n\t\tconst html = new DOMParser()\n      .parseFromString(response, 'text/html')\n      .getElementById('quickshopTemplate').innerHTML;\n\n    return html;\n  },\n  showModal: function showModal(trigger) {\n\t\ttrigger.setAttribute('data-wau-modal-target', 'quickview');\n\t\ttrigger.classList.add('js-modal-open');\n\n\t\tWAU.Modal._openByName(\"modal-quickview\");\n  },\n  hideModal: function hideModal() {\n\t\tdocument.querySelector('.js-quickview-content').innerHTML = '';\n\n    WAU.Modal._closeByName(\"modal-quickview\");\n  },\n\tshowDrawer: function showDrawer(trigger) {\n\t\ttrigger.setAttribute('data-wau-slideout-target', 'quickview');\n\t\ttrigger.setAttribute('data-slideout-direction', 'right');\n\t\ttrigger.classList.add('js-slideout-open');\n\n\t\tWAU.Slideout._openByName(\"slideout-quickview\");\n\t},\n\thideDrawer: function hideDrawer() {\n\t\tdocument.querySelector('.js-quickview-content').innerHTML = '';\n\n\t\tWAU.Slideout._closeByName(\"slideout-quickview\");\n\t},\n  cleanUrl: function cleanUrl(url, key) {\n    return url.split('?')[0] + '?view=quick';\n  },\n\tgetTemplate: async function getTemplate(url, singleVariant, trigger) {\n\t\ttry {\n\t\t\tlet htmlText;\n\n      // Use cached HTML if available\n      if (WAU.Quickshop.cache.has(url)) {\n        htmlText = WAU.Quickshop.cache.get(url);\n      } else {\n        const response = await fetch(url);\n        htmlText = await response.text();\n      }\n\n\t\t\tlet content = WAU.Quickshop.formatTemplate(htmlText);\n\n\t\t\t// Replace content\n\t\t\tdocument.querySelector('.js-quickview-content').innerHTML = content;\n\n\t\t\t// Set context\n\t\t\tlet context;\n\t\t\tif ( !singleVariant) {\n\t\t\t\tcontext = document.querySelector('#quickview-form > .quickshop-product');\n\t\t\t} else {\n\t\t\t\tcontext = document.querySelector('#quickview-form');\n\t\t\t}\n\n\t\t\t// Load product js function\n\t\t\tProduct(context);\n\n\t\t\t// Load Payment Buttons\n\t\t\tif (context.querySelector('.js-quickview-wrapper')) {\n\t\t\t\tif (\n\t\t\t\t\tcontext.querySelector('.js-quickview-wrapper').dataset.paymentButton == 'true' &&\n\t\t\t\t\tShopify.PaymentButton\n\t\t\t\t) {\n\t\t\t\t\tShopify.PaymentButton.init();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Trigger event for add to cart\n\t\t\tif (context.querySelector('.js-ajax-submit')) {\n\t\t\t\tcontext.querySelector('.js-ajax-submit').addEventListener('click', function (e) {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tvar addToCartForm = this.closest('form');\n\n\t\t\t\t\tlet cartConfig = document.getElementById('cart-config');\n\t\t\t\t\tif ( !cartConfig ) return false;\n\t\t\t\t\tcartConfig = JSON.parse(cartConfig.innerHTML || '{}');\n\n\t\t\t\t\tWAU.AjaxCart.addToCart(addToCartForm, null, cartConfig, true, false);\n\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tlet type = context.dataset.quickshopType,\n\t\t\t\tquickAdd = context.dataset.quickshopAdd === 'true';\n\n\t\t\tif (quickAdd === true && singleVariant === true) {\n\t\t\t\t// Add to cart if single variant and quick add is enabled\n\t\t\t\tvar addToCartForm = context.querySelector('#product-form-buttons-quickshop');\n\n\t\t\t\tlet cartConfig = document.getElementById('cart-config');\n\t\t\t\tif ( !cartConfig ) return false;\n\t\t\t\tcartConfig = JSON.parse(cartConfig.innerHTML || '{}');\n\n\t\t\t\ttrigger.classList.add('js-quick-adding');\n\n\t\t\t\tWAU.AjaxCart.addToCart(addToCartForm, null, cartConfig, true, true);\n\n        trigger.classList.remove('loading-quickshop');\n\t\t\t} else {\n\t\t\t\t// Open quick shop\n\t\t\t\tif ( type === 'modal' ) {\n\t\t\t\t\tWAU.Quickshop.showModal(trigger);\n\t\t\t\t} else {\n\t\t\t\t\tWAU.Quickshop.showDrawer(trigger);\n\t\t\t\t}\n\t\t\t\ttrigger.classList.remove('loading-quickshop');\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.log(error);\n\t\t}\n\t},\n\tgetOnboard: function getOnboard() {\n\t\tlet content = document.querySelector('.js-quickview-onboard');\n\t\tdocument.querySelector('.js-quickview-content').innerHTML = content.innerHTML;\n\n\t\tlet type = content.dataset.quickshopType,\n\t\t\t\ttrigger = document.querySelector('.js-quickview-onboard-trigger');\n\n\t\tif ( type == 'modal' ) {\n\n\t\t\tif (document.body.classList.contains('slideout-right--open')) document.body.classList.remove('slideout-right--open');\n\t\t\tWAU.Quickshop.showModal(trigger);\n\n\t\t\tsetTimeout(function() {\n\t\t\t\tdocument.getElementById('modal-quickview').style.top = `calc(${window.scrollY}px + 10vh)`;\n\t\t\t}, 500);\n\n\t\t} else {\n\t\t\tif (document.body.classList.contains('modal--open')) document.body.classList.remove('modal--open');\n\t\t\tWAU.Quickshop.showDrawer(trigger);\n\t\t}\n\n\t}\n}\n\ndocument.addEventListener('DOMContentLoaded', function() {\n  WAU.Quickshop.init();\n});\n\ndocument.addEventListener('shopify:section:select', function(event){\n  WAU.Quickshop.init();\n});\n"],
  "mappings": "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",
  "names": ["observer", "cleanUrl", "htmlText", "addToCartForm"]
}
