{"version":3,"file":"ImageBlinker.BS-P_vUN.mjs","names":["useState","useMemo"],"sources":["https:/framerusercontent.com/modules/gtNLcq0nHLgmqYCtwk3u/NgGxQev6Qmkn2G4oBfu0/ImageBlinker.js"],"sourcesContent":["// Custom React component that cycles through images with configurable timing\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect,startTransition,useMemo}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function ImageBlinker(props){const{images=[{src:\"https://framerusercontent.com/images/GfGkADagM4KEibNcIiRUWlfrR0.jpg\",alt:\"Gradient 1 - Blue\"},{src:\"https://framerusercontent.com/images/aNsAT3jCvt4zglbWCUoFe33Q.jpg\",alt:\"Gradient 2 - Purple\"},{src:\"https://framerusercontent.com/images/BYnxEV1zjYb9bhWh1IwBZ1ZoS60.jpg\",alt:\"Gradient 3 - Orange\"}],frameDuration=1e3,loop=true,transition=\"ease-in-out\",randomizeOrder=false}=props;const[currentIndex,setCurrentIndex]=useState(0);const isStatic=useIsStaticRenderer();// Shuffle images when randomizeOrder is enabled\nconst shuffledImages=useMemo(()=>{if(!randomizeOrder)return images;const shuffled=[...images];for(let i=shuffled.length-1;i>0;i--){const j=Math.floor(Math.random()*(i+1));[shuffled[i],shuffled[j]]=[shuffled[j],shuffled[i]];}return shuffled;},[images,randomizeOrder]);useEffect(()=>{if(isStatic||shuffledImages.length<=1||!loop)return;const interval=setInterval(()=>{startTransition(()=>{setCurrentIndex(prevIndex=>(prevIndex+1)%shuffledImages.length);});},frameDuration);return()=>clearInterval(interval);},[frameDuration,shuffledImages.length,isStatic,loop]);if(shuffledImages.length===0){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:\"#000000\",color:\"#ffffff\",fontSize:\"14px\",padding:\"16px 24px 16px 24px\",textAlign:\"center\"},children:\"No images provided\"});}return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\"},children:shuffledImages.map((image,index)=>/*#__PURE__*/_jsx(\"img\",{src:image.src,alt:image.alt||`Image ${index+1}`,style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",opacity:index===currentIndex?1:0,transition:isStatic?\"none\":transition===\"linear\"?\"opacity 0s\":`opacity 0.3s ${transition}`}},index))});}addPropertyControls(ImageBlinker,{images:{type:ControlType.Array,title:\"Images\",control:{type:ControlType.ResponsiveImage},maxCount:20},frameDuration:{type:ControlType.Number,title:\"Frame Duration\",defaultValue:1e3,min:100,max:1e4,step:100,unit:\"ms\"},loop:{type:ControlType.Boolean,title:\"Loop\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},randomizeOrder:{type:ControlType.Boolean,title:\"Randomize Order\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},transition:{type:ControlType.Enum,title:\"Transition\",options:[\"linear\",\"ease\",\"ease-in\",\"ease-out\",\"ease-in-out\"],optionTitles:[\"Linear\",\"Ease\",\"Ease In\",\"Ease Out\",\"Ease In Out\"],defaultValue:\"ease-in-out\",displaySegmentedControl:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ImageBlinker\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ImageBlinker.map"],"mappings":"kTAIG,SAAwB,EAAa,EAAM,CAAC,GAAK,CAAC,SAAO,CAAC,CAAC,IAAI,sEAAsE,IAAI,oBAAoB,CAAC,CAAC,IAAI,oEAAoE,IAAI,sBAAsB,CAAC,CAAC,IAAI,uEAAuE,IAAI,sBAAsB,CAAC,CAAC,gBAAc,IAAI,OAAK,GAAK,aAAW,cAAc,iBAAe,GAAM,CAAC,EAAW,CAAC,EAAa,EAAgB,CAACA,EAAS,GAAS,EAAS,IACvf,EAAeC,MAAY,CAAC,GAAG,CAAC,EAAe,OAAO,EAAO,IAAM,EAAS,CAAC,GAAG,EAAO,CAAC,IAAI,IAAI,EAAE,EAAS,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,IAAM,EAAE,KAAK,MAAM,KAAK,UAAU,EAAE,IAAI,CAAC,EAAS,GAAG,EAAS,GAAG,CAAC,CAAC,EAAS,GAAG,EAAS,GAAG,AAAE,QAAO,CAAU,EAAC,CAAC,EAAO,EAAe,EAA+kB,OAA7kB,MAAc,CAAC,GAAG,GAAU,EAAe,QAAQ,GAAG,CAAC,EAAK,OAAO,IAAM,EAAS,gBAAgB,CAAC,MAAoB,CAAC,EAAgB,IAAY,EAAU,GAAG,EAAe,OAAS,EAAG,EAAC,GAAe,UAAU,cAAc,EAAW,EAAC,CAAC,EAAc,EAAe,OAAO,EAAS,EAAK,EAAK,EAAe,SAAS,EAAuB,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,gBAAgB,UAAU,MAAM,UAAU,SAAS,OAAO,QAAQ,sBAAsB,UAAU,SAAS,CAAC,SAAS,qBAAqB,EAAuB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,SAAS,SAAS,CAAC,SAAS,EAAe,KAAK,EAAM,IAAqB,EAAK,MAAM,CAAC,IAAI,EAAM,IAAI,IAAI,EAAM,KAAK,SAAS,EAAM,IAAI,MAAM,CAAC,SAAS,WAAW,IAAI,EAAE,KAAK,EAAE,MAAM,OAAO,OAAO,OAAO,UAAU,QAAQ,QAAQ,IAAQ,EAAa,EAAE,EAAE,WAAW,EAAS,OAAO,IAAa,SAAS,aAAa,gBAAgB,IAAa,CAAC,CAAC,IAAQ,CAAG,6BAAoB,EAAa,CAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,QAAQ,CAAC,KAAK,EAAY,gBAAgB,CAAC,SAAS,GAAG,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,CAAC,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,CAAC,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,SAAS,OAAO,UAAU,WAAW,cAAc,CAAC,aAAa,CAAC,SAAS,OAAO,UAAU,WAAW,cAAc,CAAC,aAAa,cAAc,wBAAwB,GAAM,CAAC"}