{
  "version": 3,
  "sources": ["/cdn/shop/t/249/assets/lf-card-delivery.js?cb=1355"],
  "sourcesContent": ["// Fills each collection card's delivery date from the shared engine, reading the shop's rules once per page.\n(function () {\n  var data = null;\n\n  function readData() {\n    var el = document.getElementById('lf-card-dd-data');\n    if (!el) return null;\n    try {\n      var d = JSON.parse(el.textContent);\n      d.rules = Object.assign({}, d.rules, { productTypes: d.productTypes || {} });\n      return d;\n    } catch (e) {\n      return null;\n    }\n  }\n\n  function number(value) {\n    return value === null || value === '' ? null : Number(value);\n  }\n\n  function update(rows) {\n    var engine = window.LfDeliveryDates;\n    if (!engine || !rows.length) return;\n    data = data || readData();\n    if (!data) return;\n    var now = new Date();\n    var region = data.country || undefined;\n    // US arrival depends on the state (shown at checkout), so US cards say when it ships, like the product page.\n    var arrival = data.rules.market !== 'US';\n\n    rows.forEach(function (row) {\n      row.setAttribute('data-lf-card-dd-done', '');\n      var items = [{\n        productType: row.getAttribute('data-product-type'),\n        makeDays: number(row.getAttribute('data-make-days')),\n        extraDays: number(row.getAttribute('data-extra-days')) || 0,\n        variant: row.getAttribute('data-variant') || ''\n      }];\n      // Elsewhere the card shows the earliest arrival over every method, the product page's \"as soon as\" date.\n      var res = arrival ? engine.fastest(data.rules, items, { now: now, region: region })\n        : engine.estimate(data.rules, items, { now: now });\n      var ymd = res && (arrival ? res.deliveryDate : res.dispatchDate);\n      if (arrival && ymd) {\n        var season = engine.seasonState(data.rules, data.seasons || [], items, { now: now, region: region });\n        if (engine.hidesForSeason(season, res.method, ymd)) ymd = null;\n      }\n      // Without a date the row is invisible but keeps its line, so the card doesn't change height.\n      row.querySelector('[data-lf-card-dd-date]').textContent = ymd ? engine.formatDate(data.rules, ymd, 'short') : '';\n      row.classList.toggle('invisible', !ymd);\n    });\n  }\n\n  function updateAll() {\n    update(document.querySelectorAll('[data-lf-card-dd]'));\n  }\n\n  function start() {\n    updateAll();\n    // Cut-offs and season deadlines pass while the page is open, so recompute each minute, as the product page does.\n    setInterval(updateAll, 60000);\n    // Filtering and sorting swap the grid in place, so fill any new cards as they arrive.\n    var pending = false;\n    new MutationObserver(function () {\n      if (pending) return;\n      pending = true;\n      requestAnimationFrame(function () {\n        pending = false;\n        update(document.querySelectorAll('[data-lf-card-dd]:not([data-lf-card-dd-done])'));\n      });\n    }).observe(document.body, { childList: true, subtree: true });\n  }\n\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', start);\n  else start();\n  document.addEventListener('shopify:section:load', updateAll);\n})();\n"],
  "mappings": "CACC,UAAY,CACX,IAAI,KAAO,KAEX,SAAS,UAAW,CAClB,IAAI,GAAK,SAAS,eAAe,iBAAiB,EAClD,GAAI,CAAC,GAAI,OAAO,KAChB,GAAI,CACF,IAAI,EAAI,KAAK,MAAM,GAAG,WAAW,EACjC,SAAE,MAAQ,OAAO,OAAO,CAAC,EAAG,EAAE,MAAO,CAAE,aAAc,EAAE,cAAgB,CAAC,CAAE,CAAC,EACpE,CACT,OAAS,EAAG,CACV,OAAO,IACT,CACF,CAEA,SAAS,OAAO,MAAO,CACrB,OAAO,QAAU,MAAQ,QAAU,GAAK,KAAO,OAAO,KAAK,CAC7D,CAEA,SAAS,OAAO,KAAM,CACpB,IAAI,OAAS,OAAO,gBACpB,GAAI,GAAC,QAAU,CAAC,KAAK,UACrB,KAAO,MAAQ,SAAS,EACpB,EAAC,MACL,KAAI,IAAM,IAAI,KACV,OAAS,KAAK,SAAW,OAEzB,QAAU,KAAK,MAAM,SAAW,KAEpC,KAAK,QAAQ,SAAU,IAAK,CAC1B,IAAI,aAAa,uBAAwB,EAAE,EAC3C,IAAI,MAAQ,CAAC,CACX,YAAa,IAAI,aAAa,mBAAmB,EACjD,SAAU,OAAO,IAAI,aAAa,gBAAgB,CAAC,EACnD,UAAW,OAAO,IAAI,aAAa,iBAAiB,CAAC,GAAK,EAC1D,QAAS,IAAI,aAAa,cAAc,GAAK,EAC/C,CAAC,EAEG,IAAM,QAAU,OAAO,QAAQ,KAAK,MAAO,MAAO,CAAE,IAAK,IAAK,OAAQ,MAAO,CAAC,EAC9E,OAAO,SAAS,KAAK,MAAO,MAAO,CAAE,IAAK,GAAI,CAAC,EAC/C,IAAM,MAAQ,QAAU,IAAI,aAAe,IAAI,cACnD,GAAI,SAAW,IAAK,CAClB,IAAI,OAAS,OAAO,YAAY,KAAK,MAAO,KAAK,SAAW,CAAC,EAAG,MAAO,CAAE,IAAK,IAAK,OAAQ,MAAO,CAAC,EAC/F,OAAO,eAAe,OAAQ,IAAI,OAAQ,GAAG,IAAG,IAAM,KAC5D,CAEA,IAAI,cAAc,wBAAwB,EAAE,YAAc,IAAM,OAAO,WAAW,KAAK,MAAO,IAAK,OAAO,EAAI,GAC9G,IAAI,UAAU,OAAO,YAAa,CAAC,GAAG,CACxC,CAAC,EACH,CAEA,SAAS,WAAY,CACnB,OAAO,SAAS,iBAAiB,mBAAmB,CAAC,CACvD,CAEA,SAAS,OAAQ,CACf,UAAU,EAEV,YAAY,UAAW,GAAK,EAE5B,IAAI,QAAU,GACd,IAAI,iBAAiB,UAAY,CAC3B,UACJ,QAAU,GACV,sBAAsB,UAAY,CAChC,QAAU,GACV,OAAO,SAAS,iBAAiB,+CAA+C,CAAC,CACnF,CAAC,EACH,CAAC,EAAE,QAAQ,SAAS,KAAM,CAAE,UAAW,GAAM,QAAS,EAAK,CAAC,CAC9D,CAEI,SAAS,aAAe,UAAW,SAAS,iBAAiB,mBAAoB,KAAK,EACrF,MAAM,EACX,SAAS,iBAAiB,uBAAwB,SAAS,CAC7D,GAAG",
  "names": []
}
