{
  "version": 3,
  "sources": ["/cdn/shop/t/20/assets/cf-in-cart.js?cfv=58"],
  "sourcesContent": ["/**\n * Marks product cards for items already in the cart.\n *\n * Baymard's list-view research is blunt about this: without it, shoppers who\n * browse back into a collection re-add something they already have, or stall\n * because they can't remember. The cart is read once per page, then refreshed on\n * the theme's own cart:update event so an add from the drawer is reflected\n * without a reload.\n */\nconst MARKER = 'data-cf-in-cart';\n\nasync function readCart() {\n  try {\n    const response = await fetch(`${window.Shopify?.routes?.root || '/'}cart.js`);\n    if (!response.ok) return [];\n    const cart = await response.json();\n    return cart.items || [];\n  } catch {\n    // A failed cart read should cost nothing: cards simply go unmarked\n    return [];\n  }\n}\n\nfunction mark(items) {\n  document.querySelectorAll(`[${MARKER}]`).forEach((card) => card.removeAttribute(MARKER));\n  if (!items.length) return;\n\n  const handles = new Set(items.map((item) => item.handle).filter(Boolean));\n\n  for (const handle of handles) {\n    // Product links carry the handle, which is the only identifier a rendered\n    // card is guaranteed to expose.\n    document.querySelectorAll(`a[href*=\"/products/${handle}\"]`).forEach((link) => {\n      const card = link.closest('.product-card, .product-grid__item, .cf-prow__item');\n      if (card) card.setAttribute(MARKER, '');\n    });\n  }\n}\n\nasync function refresh() {\n  mark(await readCart());\n}\n\nif (document.readyState === 'loading') {\n  document.addEventListener('DOMContentLoaded', refresh, { once: true });\n} else {\n  refresh();\n}\n\ndocument.addEventListener('cart:update', refresh);\n"],
  "mappings": "AASA,MAAM,OAAS,kBAEf,eAAe,UAAW,CACxB,GAAI,CACF,MAAM,SAAW,MAAM,MAAM,GAAG,OAAO,SAAS,QAAQ,MAAQ,GAAG,SAAS,EAC5E,OAAK,SAAS,IACD,MAAM,SAAS,KAAK,GACrB,OAAS,CAAC,EAFG,CAAC,CAG5B,MAAQ,CAEN,MAAO,CAAC,CACV,CACF,CAEA,SAAS,KAAK,MAAO,CAEnB,GADA,SAAS,iBAAiB,IAAI,MAAM,GAAG,EAAE,QAAS,MAAS,KAAK,gBAAgB,MAAM,CAAC,EACnF,CAAC,MAAM,OAAQ,OAEnB,MAAM,QAAU,IAAI,IAAI,MAAM,IAAK,MAAS,KAAK,MAAM,EAAE,OAAO,OAAO,CAAC,EAExE,UAAW,UAAU,QAGnB,SAAS,iBAAiB,sBAAsB,MAAM,IAAI,EAAE,QAAS,MAAS,CAC5E,MAAM,KAAO,KAAK,QAAQ,oDAAoD,EAC1E,MAAM,KAAK,aAAa,OAAQ,EAAE,CACxC,CAAC,CAEL,CAEA,eAAe,SAAU,CACvB,KAAK,MAAM,SAAS,CAAC,CACvB,CAEI,SAAS,aAAe,UAC1B,SAAS,iBAAiB,mBAAoB,QAAS,CAAE,KAAM,EAAK,CAAC,EAErE,QAAQ,EAGV,SAAS,iBAAiB,cAAe,OAAO",
  "names": []
}
