{"version":3,"file":"TEKsystems.SitecoreXP.LazyLoad.js","names":["define","Init","resources","document","querySelectorAll","assetsObserver","IntersectionObserver","entries","filter","entry","isIntersecting","forEach","asset","src","getAttribute","classList","remove","_lazyLoadAsset","target","unobserve","selector","threshold","rootMargin","resource","observe"],"sources":["site/TEKsystems.SitecoreXP.LazyLoad.js"],"mappings":"AAAAA,OAAO,IAAI,WA4BP,MAAO,CACHC,KA5BJ,WACI,IAKIC,EAAYC,SAASC,iBAAiB,SAE1C,MAAMC,EAAiB,IAAIC,sBAAqB,CAACC,EAASF,KACtDE,EAAQC,QAAOC,GAASA,EAAMC,iBAAgBC,SAAQF,KAU9D,SAAwBG,GACpB,MAAMC,EAAMD,EAAME,aAAa,YAC3BD,IACAD,EAAMC,IAAMA,GAEhBD,EAAMG,UAAUC,OAAO,OAC3B,CAfYC,CAAeR,EAAMS,QACrBb,EAAec,UAAUV,EAAMS,OAAO,GACxC,GAXQ,CACVE,SAAU,CAAC,SACXC,UAAW,IACXC,WAAY,wBAUhBpB,EAAUS,SAAQY,IACdlB,EAAemB,QAAQD,EAAS,GAExC,EAaJ","sourcesContent":["define([], function () {\r\n function Init() {\r\n let options = {\r\n selector: ['.lazy'],\r\n threshold: 0.01,\r\n rootMargin: '100px 0px 100px 0px',\r\n };\r\n let resources = document.querySelectorAll('.lazy');\r\n \r\n const assetsObserver = new IntersectionObserver((entries, assetsObserver) => {\r\n entries.filter(entry => entry.isIntersecting).forEach(entry => {\r\n _lazyLoadAsset(entry.target);\r\n assetsObserver.unobserve(entry.target);\r\n });\r\n }, options);\r\n resources.forEach(resource => {\r\n assetsObserver.observe(resource);\r\n });\r\n }\r\n\r\n function _lazyLoadAsset(asset) {\r\n const src = asset.getAttribute('data-src');\r\n if (src) {\r\n asset.src = src;\r\n }\r\n asset.classList.remove('lazy');\r\n }\r\n\r\n return {\r\n Init: Init\r\n };\r\n});"]}