{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/FuzwByOfvMdAutD4tRGx/o08OTgRUFYIX4nqvdGNJ/Image_sequience.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useRef,useEffect}from\"react\";import{useScroll,useMotionValueEvent}from\"framer-motion\";const VARIANT_LENGTH=10;export const withScrollVariants=Component=>{const variants=Array.from({length:VARIANT_LENGTH},(_,i)=>`Variant ${i}`);return props=>{const[variantIndex,setVariantIndex]=useState(0);const[imagesLoaded,setImagesLoaded]=useState(false);const ref=useRef(null);const{scrollYProgress}=useScroll({target:ref,offset:[\"start 0.7\",\"end 0.32\"]});useEffect(()=>{const imageSources=[];document.querySelectorAll(\"img\").forEach(imgElement=>{imageSources.push(imgElement.src);});const imagePromises=imageSources.map(src=>{return new Promise((resolve,reject)=>{const img=new Image;img.onload=()=>resolve(src);img.onerror=()=>reject(src);img.src=src;});});Promise.all(imagePromises).then(()=>setImagesLoaded(true)).catch(()=>setImagesLoaded(false));},[]);useEffect(()=>{const newVariantIndex=Math.round(scrollYProgress.current*(VARIANT_LENGTH-2))+1;setVariantIndex(newVariantIndex);},[scrollYProgress.current]);useMotionValueEvent(scrollYProgress,\"change\",currentProgress=>{const newVariantIndex=Math.round(scrollYProgress.current*(VARIANT_LENGTH-2))+1;if(newVariantIndex!==variantIndex&&imagesLoaded){setVariantIndex(newVariantIndex);}});return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"},children:variants.map(variant=>/*#__PURE__*/_jsx(Component,{...props,variant:variant},variant))}),/*#__PURE__*/_jsx(Component,{...props,variant:variants[variantIndex],ref:ref})]});};};\nexport const __FramerMetadata__ = {\"exports\":{\"withScrollVariants\":{\"type\":\"reactHoc\",\"name\":\"withScrollVariants\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Image_sequience.map"],
  "mappings": "4HAAqL,IAAMA,EAAe,GAAgBC,EAAmBC,GAAW,CAAC,IAAMC,EAAS,MAAM,KAAK,CAAC,OAAOH,CAAc,EAAE,CAACI,EAAEC,IAAI,WAAWA,CAAC,EAAE,EAAE,OAAOC,GAAO,CAAC,GAAK,CAACC,EAAaC,CAAe,EAAEC,EAAS,CAAC,EAAO,CAACC,EAAaC,CAAe,EAAEF,EAAS,EAAK,EAAQG,EAAIC,EAAO,IAAI,EAAO,CAAC,gBAAAC,CAAe,EAAEC,EAAU,CAAC,OAAOH,EAAI,OAAO,CAAC,YAAY,UAAU,CAAC,CAAC,EAAE,OAAAI,EAAU,IAAI,CAAC,IAAMC,EAAa,CAAC,EAAE,SAAS,iBAAiB,KAAK,EAAE,QAAQC,GAAY,CAACD,EAAa,KAAKC,EAAW,GAAG,CAAE,CAAC,EAAE,IAAMC,EAAcF,EAAa,IAAIG,GAAa,IAAI,QAAQ,CAACC,EAAQC,IAAS,CAAC,IAAMC,EAAI,IAAI,MAAMA,EAAI,OAAO,IAAIF,EAAQD,CAAG,EAAEG,EAAI,QAAQ,IAAID,EAAOF,CAAG,EAAEG,EAAI,IAAIH,CAAI,CAAC,CAAG,EAAE,QAAQ,IAAID,CAAa,EAAE,KAAK,IAAIR,EAAgB,EAAI,CAAC,EAAE,MAAM,IAAIA,EAAgB,EAAK,CAAC,CAAE,EAAE,CAAC,CAAC,EAAEK,EAAU,IAAI,CAAC,IAAMQ,EAAgB,KAAK,MAAMV,EAAgB,SAASd,EAAe,EAAE,EAAE,EAAEQ,EAAgBgB,CAAe,CAAE,EAAE,CAACV,EAAgB,OAAO,CAAC,EAAEW,EAAoBX,EAAgB,SAASY,GAAiB,CAAC,IAAMF,EAAgB,KAAK,MAAMV,EAAgB,SAASd,EAAe,EAAE,EAAE,EAAKwB,IAAkBjB,GAAcG,GAAcF,EAAgBgB,CAAe,CAAG,CAAC,EAAsBG,EAAMC,EAAU,CAAC,SAAS,CAAcC,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,MAAM,EAAE,SAAS1B,EAAS,IAAI2B,GAAsBD,EAAK3B,EAAU,CAAC,GAAGI,EAAM,QAAQwB,CAAO,EAAEA,CAAO,CAAC,CAAC,CAAC,EAAeD,EAAK3B,EAAU,CAAC,GAAGI,EAAM,QAAQH,EAASI,CAAY,EAAE,IAAIK,CAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAE",
  "names": ["VARIANT_LENGTH", "withScrollVariants", "Component", "variants", "_", "i", "props", "variantIndex", "setVariantIndex", "ye", "imagesLoaded", "setImagesLoaded", "ref", "pe", "scrollYProgress", "useScroll", "ue", "imageSources", "imgElement", "imagePromises", "src", "resolve", "reject", "img", "newVariantIndex", "useMotionValueEvent", "currentProgress", "u", "l", "p", "variant"]
}
