{
  "version": 3,
  "sources": ["/cdn/shop/t/2/assets/gns.js"],
  "sourcesContent": ["/* Game Night Society \u2014 storefront behaviors (progressive enhancement).\n   Cart count + add-to-bag without a full reload; falls back to native form posts. */\n(function () {\n  'use strict'\n\n  var lastCart = null\n\n  function refreshCartCount(bump) {\n    return fetch('/cart.js', { headers: { Accept: 'application/json' } })\n      .then(function (res) { return res.ok ? res.json() : Promise.reject() })\n      .then(function (cart) {\n        lastCart = cart\n        document.querySelectorAll('.gns-cart-count').forEach(function (el) {\n          el.textContent = cart.item_count\n          el.style.display = cart.item_count > 0 ? '' : 'none'\n          if (bump && cart.item_count > 0) {\n            el.classList.remove('is-bumped')\n            void el.offsetWidth // restart the animation if added repeatedly\n            el.classList.add('is-bumped')\n            setTimeout(function () { el.classList.remove('is-bumped') }, 650)\n          }\n        })\n      })\n      .then(function () { return lastCart })\n      .catch(function () { /* no-op */ })\n  }\n\n  // Bottom toast after an add: \"<name> added. View bag\" plus free US shipping progress.\n  var toastEl = null, toastT = null\n  function money(cents) { return '$' + (cents / 100).toFixed(2) }\n  function shortName(title) { return String(title || '').split(',')[0].trim() }\n  function showToast(name, cart) {\n    if (!toastEl) {\n      toastEl = document.createElement('div')\n      toastEl.className = 'gns-toast'\n      toastEl.setAttribute('role', 'status')\n      toastEl.setAttribute('aria-live', 'polite')\n      toastEl.innerHTML = '<span class=\"gns-toast__msg\"></span><a class=\"gns-toast__link\" href=\"/cart\">View bag</a><span class=\"gns-toast__ship\" hidden></span>'\n      document.body.appendChild(toastEl)\n    }\n    toastEl.querySelector('.gns-toast__msg').textContent = (name ? name + ' added.' : 'Added to your bag.')\n    var ship = toastEl.querySelector('.gns-toast__ship')\n    var threshold = parseInt(document.body.getAttribute('data-gns-free-ship') || '0', 10)\n    if (cart && threshold > 0) {\n      var gap = threshold - cart.total_price\n      ship.textContent = gap > 0\n        ? 'You are ' + money(gap) + ' away from free US shipping.'\n        : 'Free US shipping unlocked.'\n      ship.hidden = false\n    } else {\n      ship.hidden = true\n    }\n    toastEl.classList.add('is-visible')\n    clearTimeout(toastT)\n    toastT = setTimeout(function () { toastEl.classList.remove('is-visible') }, 5000)\n  }\n\n  // Flash success feedback on the button that was clicked.\n  function showAdded(btn) {\n    if (!btn) return\n    var isText = btn.hasAttribute('data-gns-add')\n    btn.classList.add('is-added')\n    if (isText) {\n      if (!btn.dataset.origLabel) btn.dataset.origLabel = btn.textContent\n      btn.textContent = 'Added \u2713'\n    }\n    clearTimeout(btn._gnsAddT)\n    btn._gnsAddT = setTimeout(function () {\n      btn.classList.remove('is-added')\n      if (isText) btn.textContent = btn.dataset.addLabel || btn.dataset.origLabel || 'Add to bag'\n    }, 1300)\n  }\n\n  // Intercept add-to-cart forms (product cards + PDP) for an inline add with feedback.\n  document.addEventListener('submit', function (e) {\n    var form = e.target\n    if (!form || !form.action || form.action.indexOf('/cart/add') === -1) return\n    e.preventDefault()\n    var btn = form.querySelector('.gns-card__add, [data-gns-add]')\n    fetch('/cart/add.js', { method: 'POST', body: new FormData(form), headers: { Accept: 'application/json' } })\n      .then(function (r) { return r.ok ? r.json() : Promise.reject() })\n      .then(function (added) {\n        var item = added && added.items ? added.items[0] : added\n        var name = (btn && btn.getAttribute('data-gns-name')) || shortName(item && item.product_title)\n        showAdded(btn)\n        refreshCartCount(true).then(function (cart) { showToast(name, cart) })\n      })\n      .catch(function () { form.submit() })\n  })\n\n  document.addEventListener('DOMContentLoaded', function () { refreshCartCount(false) })\n})();\n\n/* Product page: variant picker + per-variant gallery.\n   The gallery is grouped by image alt text (= variant title), so each variant shows only\n   its own images (flat + lifestyle), rebuilt live as the selection changes. */\n(function () {\n  'use strict'\n  function initProduct() {\n    var root = document.querySelector('[data-gns-product]')\n    if (!root) return\n\n    var main = root.querySelector('[data-gns-main]')\n    var thumbsEl = root.querySelector('[data-gns-thumbs]')\n    var dataEl = root.querySelector('[data-gns-variants]')\n    var mediaEl = root.querySelector('[data-gns-media]')\n    if (!dataEl) return\n    var variants = [], media = []\n    try { variants = JSON.parse(dataEl.textContent) } catch (e) { return }\n    try { media = JSON.parse(mediaEl.textContent) } catch (e) { media = [] }\n\n    var selects = [].slice.call(root.querySelectorAll('.gns-variant-select'))\n    var idInput = root.querySelector('[data-gns-id]')\n    var priceEl = root.querySelector('[data-gns-price]')\n    var compareEl = root.querySelector('[data-gns-compare]')\n    var addBtn = root.querySelector('[data-gns-add]')\n\n    var hero = media.filter(function (m) { return m.alt === '__hero__' })[0]\n\n    // Swap the main image. It carries a srcset, so src alone would not change what is shown.\n    // Skip when it already shows this image, so the server-rendered (LCP) image is never refetched.\n    function setMain(m) {\n      if (!main || !m || !m.url) return\n      if (main.getAttribute('src') === m.url) return\n      if (m.srcset) main.setAttribute('srcset', m.srcset)\n      else main.removeAttribute('srcset')\n      main.src = m.url\n    }\n    function mediaFor(url) {\n      return media.filter(function (m) { return m.url === url })[0] || { url: url }\n    }\n\n    function renderGallery(variantTitle, chosenOptions) {\n      var imgs = media.filter(function (m) { return m.alt === variantTitle })\n      var colorIndex = selects.findIndex(function (s) { return s.name === 'options[Color]' })\n      var colorGroup = colorIndex >= 0 ? '__color__:' + chosenOptions[colorIndex] : ''\n      var colorImgs = colorGroup ? media.filter(function (m) { return m.alt === colorGroup }) : []\n      var shared = media.filter(function (m) { return m.alt === '__shared__' })\n      imgs = shared.concat(colorImgs, imgs)\n      if (hero) imgs = [hero].concat(imgs)\n      if (!imgs.length) imgs = media.length ? [media[0]] : []\n      if (imgs[0]) setMain(imgs[0])\n      if (!thumbsEl) return\n      if (imgs.length > 1) {\n        thumbsEl.innerHTML = imgs.map(function (m, i) {\n          return '<button type=\"button\" class=\"gns-pdp__thumb' + (i === 0 ? ' is-active' : '')\n            + '\" data-gns-thumb data-full=\"' + m.url + '\" aria-label=\"View image ' + (i + 1) + '\"><img src=\"' + m.thumb + '\" alt=\"\" loading=\"lazy\"></button>'\n        }).join('')\n        thumbsEl.hidden = false\n      } else {\n        thumbsEl.innerHTML = ''\n        thumbsEl.hidden = true\n      }\n    }\n\n    // Delegate thumbnail clicks (thumbs are rebuilt on variant change).\n    if (thumbsEl) {\n      thumbsEl.addEventListener('click', function (e) {\n        var btn = e.target.closest('[data-gns-thumb]')\n        if (!btn) return\n        if (btn.dataset.full) setMain(mediaFor(btn.dataset.full));\n        [].forEach.call(thumbsEl.querySelectorAll('[data-gns-thumb]'), function (b) {\n          b.classList.toggle('is-active', b === btn)\n        })\n      })\n    }\n\n    // Keep ?variant= in the address bar so a shared or reloaded link opens the chosen size.\n    function syncUrl(id) {\n      if (!window.history || !history.replaceState || !window.URL) return\n      try {\n        var u = new URL(window.location.href)\n        if (u.searchParams.get('variant') === String(id)) return\n        u.searchParams.set('variant', id)\n        history.replaceState(history.state, '', u.toString())\n      } catch (e) { /* no-op */ }\n    }\n\n    function update(fromUser) {\n      var chosen = selects.map(function (s) { return s.value })\n      var v = variants.find(function (v) {\n        return v.options.length === chosen.length && v.options.every(function (o, i) { return o === chosen[i] })\n      })\n      if (!v) return\n      if (idInput) idInput.value = v.id\n      if (priceEl) priceEl.textContent = v.price\n      if (compareEl) {\n        if (v.compare) { compareEl.textContent = v.compare; compareEl.hidden = false } else { compareEl.hidden = true }\n      }\n      if (addBtn) {\n        addBtn.disabled = !v.available\n        addBtn.textContent = v.available ? (addBtn.dataset.addLabel || 'Add to bag') : 'Sold out'\n      }\n      renderGallery(v.title, chosen)\n      if (fromUser === true) syncUrl(v.id)\n    }\n    selects.forEach(function (s) { s.addEventListener('change', function () { update(true) }) })\n    update(false)\n  }\n  if (document.readyState !== 'loading') initProduct()\n  else document.addEventListener('DOMContentLoaded', initProduct)\n})();\n\n/* Mobile nav toggle (hamburger). */\n(function () {\n  'use strict'\n  document.addEventListener('DOMContentLoaded', function () {\n    var toggle = document.querySelector('.gns-nav-toggle')\n    var menu = document.getElementById('gns-mobile-nav')\n    if (!toggle || !menu) return\n    toggle.addEventListener('click', function () {\n      var open = menu.classList.toggle('is-open')\n      toggle.setAttribute('aria-expanded', open ? 'true' : 'false')\n    })\n    // Close the menu if the viewport grows back to desktop.\n    window.addEventListener('resize', function () {\n      if (window.innerWidth > 768 && menu.classList.contains('is-open')) {\n        menu.classList.remove('is-open')\n        toggle.setAttribute('aria-expanded', 'false')\n      }\n    })\n  })\n})()\n\n/* Holiday order-by line (snippets/holiday-order-by.liquid). Liquid picks the phase when Shopify renders the page,\n   but a cached page can outlive a date boundary, so re-pick it from the visitor's clock in the store's time zone:\n   hidden before data-from, the order-by text through data-cutoff, the after-cutoff text through data-end. */\n;(function () {\n  'use strict'\n  function storeDate(tz) {\n    try {\n      var parts = new Intl.DateTimeFormat('en-US', { timeZone: tz, year: 'numeric', month: '2-digit', day: '2-digit' }).formatToParts(new Date())\n      var get = function (type) { return (parts.filter(function (p) { return p.type === type })[0] || {}).value || '' }\n      return parseInt(get('year') + get('month') + get('day'), 10) || 0\n    } catch (e) { return 0 }\n  }\n  function update() {\n    [].forEach.call(document.querySelectorAll('[data-gns-holiday]'), function (el) {\n      var today = storeDate(el.getAttribute('data-tz') || 'America/New_York')\n      if (!today) return\n      var show = today >= Number(el.getAttribute('data-from')) && today <= Number(el.getAttribute('data-end'))\n      var text = el.querySelector('[data-gns-holiday-text]')\n      if (show && text) text.textContent = el.getAttribute(today <= Number(el.getAttribute('data-cutoff')) ? 'data-open' : 'data-closed')\n      el.hidden = !show\n      // Announcement bar: the holiday line stands in for the usual text while it shows.\n      var usual = el.parentNode && el.parentNode.querySelector('[data-gns-holiday-default]')\n      if (usual) usual.hidden = show\n    })\n  }\n  if (document.readyState !== 'loading') update()\n  else document.addEventListener('DOMContentLoaded', update)\n})()\n"],
  "mappings": "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",
  "names": ["v"]
}
