{
  "version": 3,
  "sources": ["/cdn/shop/t/49/assets/eb-pause-offscreen-animations.js?version=1.0.276"],
  "sourcesContent": ["(() => {\n  // eb-pause-offscreen-animations v1.0.0 (Task 101)\n  // \u0412 \u0442\u0435\u043C\u0435 \u0435\u0441\u0442\u044C \u0431\u0435\u0441\u043A\u043E\u043D\u0435\u0447\u043D\u044B\u0435 CSS-\u0430\u043D\u0438\u043C\u0430\u0446\u0438\u0438: typing \u0443 .field-label (\u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0430 \u0432 \u043F\u043E\u0434\u0432\u0430\u043B\u0435 \u0435\u0441\u0442\u044C \u043D\u0430 \u043A\u0430\u0436\u0434\u043E\u0439\n  // \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435) \u0438 spin \u0443 \u0434\u0435\u043A\u043E\u0440\u0430\u0442\u0438\u0432\u043D\u044B\u0445 \u0444\u0438\u0433\u0443\u0440 .deco \u0432 \u0441\u0435\u043A\u0446\u0438\u044F\u0445 image-with-text \u0438 image-banner. \u0411\u0440\u0430\u0443\u0437\u0435\u0440\n  // \u043F\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u044B\u0432\u0430\u0435\u0442 \u0438\u0445 \u0441\u0442\u0438\u043B\u044C \u0432 \u043A\u0430\u0436\u0434\u043E\u043C \u043A\u0430\u0434\u0440\u0435, \u0434\u0430\u0436\u0435 \u043A\u043E\u0433\u0434\u0430 \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0434\u0430\u043B\u0435\u043A\u043E \u0437\u0430 \u044D\u043A\u0440\u0430\u043D\u043E\u043C. \u0417\u0430\u043C\u0435\u0440 \u043F\u0440\u043E\u043A\u0440\u0443\u0442\u043A\u0438\n  // \u0433\u043B\u0430\u0432\u043D\u043E\u0439 (CPU x4, \u0442\u0435\u043B\u0435\u0444\u043E\u043D, 3 \u043F\u0440\u043E\u0433\u043E\u043D\u0430, \u043C\u0435\u0434\u0438\u0430\u043D\u044B): \u0441 \u0430\u043D\u0438\u043C\u0430\u0446\u0438\u044F\u043C\u0438 \u043F\u0435\u0440\u0435\u0441\u0447\u0451\u0442 \u0441\u0442\u0438\u043B\u0435\u0439 521 \u043C\u0441 \u0438 436 \u0440\u0430\u0437,\n  // \u0431\u0435\u0437 \u043D\u0438\u0445 238 \u043C\u0441 \u0438 198 \u0440\u0430\u0437, \u0440\u0430\u0431\u043E\u0442\u0430 \u0433\u043B\u0430\u0432\u043D\u043E\u0433\u043E \u043F\u043E\u0442\u043E\u043A\u0430 2139 \u043F\u0440\u043E\u0442\u0438\u0432 1664 \u043C\u0441.\n  // \u0417\u0434\u0435\u0441\u044C \u0430\u043D\u0438\u043C\u0430\u0446\u0438\u0438 \u043D\u0435 \u0432\u044B\u043A\u043B\u044E\u0447\u0430\u044E\u0442\u0441\u044F, \u0430 \u0441\u0442\u0430\u0432\u044F\u0442\u0441\u044F \u043D\u0430 \u043F\u0430\u0443\u0437\u0443, \u043F\u043E\u043A\u0430 \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0432\u043D\u0435 \u044D\u043A\u0440\u0430\u043D\u0430.\n  const PAUSED_CLASS = 'eb-anim-offscreen';\n  const ROOT_MARGIN = '200px';\n  const watched = new WeakSet();\n  let observer = null;\n\n  const getObserver = () => {\n    if (observer) return observer;\n\n    observer = new IntersectionObserver(\n      (entries) => {\n        entries.forEach((entry) => {\n          entry.target.classList.toggle(PAUSED_CLASS, !entry.isIntersecting);\n        });\n      },\n      { rootMargin: ROOT_MARGIN }\n    );\n\n    return observer;\n  };\n\n  // \u0411\u0435\u0441\u043A\u043E\u043D\u0435\u0447\u043D\u044B\u0435 \u0430\u043D\u0438\u043C\u0430\u0446\u0438\u0438 \u0431\u0435\u0440\u0451\u043C \u0443 \u0441\u0430\u043C\u043E\u0433\u043E \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430: document.getAnimations() \u043E\u0442\u0434\u0430\u0451\u0442 \u0442\u043E, \u0447\u0442\u043E \u0440\u0435\u0430\u043B\u044C\u043D\u043E\n  // \u0437\u0430\u043F\u0443\u0449\u0435\u043D\u043E, \u0431\u0435\u0437 \u043E\u0431\u0445\u043E\u0434\u0430 \u0432\u0441\u0435\u0445 \u0443\u0437\u043B\u043E\u0432 \u0438 \u0447\u0442\u0435\u043D\u0438\u044F \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u043D\u044B\u0445 \u0441\u0442\u0438\u043B\u0435\u0439.\n  const scan = () => {\n    if (typeof document.getAnimations !== 'function') return;\n\n    document.getAnimations().forEach((animation) => {\n      const target = animation.effect && animation.effect.target;\n      if (!target || watched.has(target)) return;\n\n      const timing = animation.effect.getTiming ? animation.effect.getTiming() : null;\n      if (!timing || timing.iterations !== Infinity) return;\n\n      watched.add(target);\n      getObserver().observe(target);\n    });\n  };\n\n  // v1.1.0: getAnimations() recalculates styles, so it runs right after the browser's own style and layout pass.\n  const scheduleScan = () => {\n    const layoutObserver = new ResizeObserver(() => {\n      layoutObserver.disconnect();\n      scan();\n    });\n    layoutObserver.observe(document.documentElement);\n  };\n\n  if (document.readyState === 'complete') {\n    scheduleScan();\n  } else {\n    window.addEventListener('load', scheduleScan, { once: true });\n  }\n\n  // \u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u0438 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440 \u0442\u0435\u043C\u044B \u0434\u043E\u0440\u0438\u0441\u043E\u0432\u044B\u0432\u0430\u044E\u0442 \u0441\u0435\u043A\u0446\u0438\u0438 \u043F\u043E\u0437\u0436\u0435, \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u043F\u0440\u043E\u0445\u043E\u0434\u0438\u043C \u0435\u0449\u0451 \u0440\u0430\u0437.\n  window.setTimeout(scheduleScan, 3000);\n  document.addEventListener('shopify:section:load', scheduleScan);\n})();\n"],
  "mappings": "CAAC,IAAM,CAQL,MAAM,aAAe,oBACf,YAAc,QACd,QAAU,IAAI,QACpB,IAAI,SAAW,KAEf,MAAM,YAAc,IACd,WAEJ,SAAW,IAAI,qBACZ,SAAY,CACX,QAAQ,QAAS,OAAU,CACzB,MAAM,OAAO,UAAU,OAAO,aAAc,CAAC,MAAM,cAAc,CACnE,CAAC,CACH,EACA,CAAE,WAAY,WAAY,CAC5B,EAEO,UAKH,KAAO,IAAM,CACb,OAAO,SAAS,eAAkB,YAEtC,SAAS,cAAc,EAAE,QAAS,WAAc,CAC9C,MAAM,OAAS,UAAU,QAAU,UAAU,OAAO,OACpD,GAAI,CAAC,QAAU,QAAQ,IAAI,MAAM,EAAG,OAEpC,MAAM,OAAS,UAAU,OAAO,UAAY,UAAU,OAAO,UAAU,EAAI,KACvE,CAAC,QAAU,OAAO,aAAe,MAErC,QAAQ,IAAI,MAAM,EAClB,YAAY,EAAE,QAAQ,MAAM,EAC9B,CAAC,CACH,EAGM,aAAe,IAAM,CACzB,MAAM,eAAiB,IAAI,eAAe,IAAM,CAC9C,eAAe,WAAW,EAC1B,KAAK,CACP,CAAC,EACD,eAAe,QAAQ,SAAS,eAAe,CACjD,EAEI,SAAS,aAAe,WAC1B,aAAa,EAEb,OAAO,iBAAiB,OAAQ,aAAc,CAAE,KAAM,EAAK,CAAC,EAI9D,OAAO,WAAW,aAAc,GAAI,EACpC,SAAS,iBAAiB,uBAAwB,YAAY,CAChE,GAAG",
  "names": []
}
