{"version":3,"file":"Static/dist/PictureBlock.js","mappings":"AACIA,SAASC,iBAAiB,oBAAoB,KAE1C,IAAIC,EAAeF,SAASG,iBAAiB,uCAG7C,MAAMC,EAAwBC,IAC1B,IAAIC,EAAQD,EAAME,UAAUC,SAAS,qBAAuBC,OAAOC,cAAgB,EAAI,EACvFC,YAAW,KACPN,EAAMO,aAAa,MAAOP,EAAMQ,aAAa,aAC7CR,EAAMS,OAAS,KACXT,EAAMU,gBAAgB,WAAW,CACpC,GACFT,EAAM,EAIb,GAAI,yBAA0BG,OAAQ,CAClC,MAAMO,EAAW,IAAIC,sBAAqB,CAACC,EAAOF,KAC9CE,EAAMC,SAASC,IACPA,EAAKC,iBACLjB,EAAqBgB,EAAKE,QAC1BN,EAASO,UAAUH,EAAKE,QAC5B,GACF,IAGNpB,EAAaiB,SAASK,IAClBR,EAASS,QAAQD,EAAI,GAE7B,MACItB,EAAaiB,SAASK,IAClBpB,EAAqBoB,EAAI,IAK5Bf,OAAOiB,6BACRjB,OAAOiB,2BAA6B,IAAIC,gBAAgBC,IACpD,IAAK,MAAMC,KAASD,EAChB,GAAIC,EAAMC,eAAgB,CACtB,MAAMC,EAAQF,EAAMC,eAAe,GAAGE,WAGhCC,EAAe,mBAFPJ,EAAMP,OAAOY,cAAcC,QAAQC,UAG3CC,EAAUrC,SAASsC,cAAcL,GACnCI,IACAA,EAAQE,MAAMR,MAAS,GAAES,KAAKC,MAAMV,OAC5C,CACJ,KAKQ/B,SAASG,iBAAkB,6BACnCgB,SAASuB,IACbA,EAAOzC,iBAAiB,QAAS0C,IAC7B,MACMV,EAAe,mBADPU,EAAGrB,OAAOY,cAAcC,QAAQC,UAExCC,EAAUrC,SAASsC,cAAcL,GACnCI,GACAA,EAAQ9B,UAAUqC,IAAI,QAE1BD,EAAGrB,OAAOf,UAAUqC,IAAI,OAAO,IAGnCnC,OAAOiB,2BAA2BD,QAAQiB,EAAO,GACnD,I","sources":["webpack://static/./Static/js/Content/PictureBlock.js"],"sourcesContent":["(()=> {\r\n    document.addEventListener('DOMContentLoaded', () => {\r\n        /* Get all of the Picture Block img elements with a data-src */\r\n        let imagesToLoad = document.querySelectorAll(\"picture.picture-block img[data-src]\");\r\n\r\n        /* Sets an img src to the data-src, then removes data-src */\r\n        const loadImageFromDataSrc = (image) => {\r\n            let delay = image.classList.contains('above-the-fold-sm') ? window.PictureDelay ?? 0 : 0;\r\n            setTimeout(() => {\r\n                image.setAttribute(\"src\", image.getAttribute(\"data-src\"));\r\n                image.onload = () => {\r\n                    image.removeAttribute(\"data-src\");\r\n                };\r\n            }, delay);\r\n        };\r\n\r\n        /* Setup global Intersection Observer and add Picture Block img to be observed */\r\n        if (\"IntersectionObserver\" in window) {\r\n            const observer = new IntersectionObserver((items, observer) => {\r\n                items.forEach((item) => {\r\n                    if (item.isIntersecting) {\r\n                        loadImageFromDataSrc(item.target);\r\n                        observer.unobserve(item.target);\r\n                    }\r\n                });\r\n            });\r\n\r\n            imagesToLoad.forEach((img) => {\r\n                observer.observe(img);\r\n            });\r\n        } else {\r\n            imagesToLoad.forEach((img) => {\r\n                loadImageFromDataSrc(img);\r\n            });\r\n        }\r\n\r\n        /* Setup global Picture Block Resize Observer */\r\n        if (!window.PictureBlockResizeObserver) {\r\n            window.PictureBlockResizeObserver = new ResizeObserver((entries) => {\r\n                for (const entry of entries) {\r\n                    if (entry.contentBoxSize) {\r\n                        const width = entry.contentBoxSize[0].inlineSize;\r\n                        const block = entry.target.parentElement.dataset.block;\r\n\r\n                        const imgSelector = `img[data-block=\"${block}\"]`;\r\n                        const preview = document.querySelector(imgSelector);\r\n                        if (preview)\r\n                            preview.style.width = `${Math.floor(width)}px`;\r\n                    }\r\n                }\r\n            });\r\n        }\r\n\r\n        /* Get all of the Picture Block img elements */\r\n        const picImgs = document.querySelectorAll(`picture.picture-block img`);\r\n        picImgs.forEach((picImg) => {\r\n            picImg.addEventListener('load', (ev) => {\r\n                const block = ev.target.parentElement.dataset.block;\r\n                const imgSelector = `img[data-block=\"${block}\"]`;\r\n                const preview = document.querySelector(imgSelector);\r\n                if (preview)\r\n                    preview.classList.add('hide');\r\n\r\n                ev.target.classList.add('show');\r\n            });\r\n\r\n            window.PictureBlockResizeObserver.observe(picImg);\r\n        });\r\n    });\r\n}\r\n)();"],"names":["document","addEventListener","imagesToLoad","querySelectorAll","loadImageFromDataSrc","image","delay","classList","contains","window","PictureDelay","setTimeout","setAttribute","getAttribute","onload","removeAttribute","observer","IntersectionObserver","items","forEach","item","isIntersecting","target","unobserve","img","observe","PictureBlockResizeObserver","ResizeObserver","entries","entry","contentBoxSize","width","inlineSize","imgSelector","parentElement","dataset","block","preview","querySelector","style","Math","floor","picImg","ev","add"],"sourceRoot":""}