{"version":3,"file":"Pulse.C40F__gn.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/lBHzk6ZZ7vhaiw8Dushd/6ATlrUbGGDclDyTjKteW/Pulse.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";import{useEffect,useState}from\"react\";function Pulse({props,onAnimationComplete}){const animateOut=props.direction===\"out\";return /*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",backgroundColor:props.style===\"border\"?\"none\":props.color,border:props.style===\"border\"?`${props.borderWidth}px solid ${props.color}`:\"none\"},variants:{in:{opacity:props.pulseOpacity,inset:\"0px\",borderRadius:props.radiusType==\"full\"?1e4:props.radiusValue},out:{opacity:0,inset:`-${props.pulseSize}px`,borderRadius:props.radiusType==\"full\"?1e4:props.radiusValue+props.pulseSize}},initial:animateOut?\"in\":\"out\",animate:animateOut?\"out\":\"in\",transition:props.transition,onAnimationComplete:onAnimationComplete});}/*\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 20\n * @framerIntrinsicHeight 20\n */export default function PulseEffect(props){const[pulses,setPulses]=useState([]);useEffect(()=>{const createPulse=()=>{const newPulseKey=Date.now()// Unique key for new pulse\n;setPulses(prevPulses=>[...prevPulses,newPulseKey]);};const interval=setInterval(createPulse,props.delay*1e3);createPulse();return()=>clearInterval(interval)// Clear interval on component unmount\n;},[]);const handleAnimationComplete=completedPulseKey=>{setPulses(prevPulses=>prevPulses.filter(key=>key!==completedPulseKey));};return /*#__PURE__*/_jsxs(\"div\",{children:[pulses.map(key=>/*#__PURE__*/_jsx(Pulse,{props:props,onAnimationComplete:()=>handleAnimationComplete(key)},key)),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,backgroundColor:props.color,borderRadius:props.radiusType==\"full\"?1e4:props.radiusValue}})]});}PulseEffect.displayName=\"Pulse\";addPropertyControls(PulseEffect,{color:{type:ControlType.Color},delay:{type:ControlType.Number,defaultValue:1,min:.1,step:.01,unit:\"s\"},direction:{type:ControlType.Enum,defaultValue:\"out\",options:[\"in\",\"out\"],optionTitles:[\"In\",\"Out\"],displaySegmentedControl:true},pulseSize:{type:ControlType.Number,defaultValue:20,min:1,step:1},pulseOpacity:{type:ControlType.Number,defaultValue:.5,min:0,max:1,step:.01},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"border\"],optionTitles:[\"Solid\",\"Outline\"],displaySegmentedControl:true},borderWidth:{type:ControlType.Number,defaultValue:5,min:1,step:1,title:\"Outline Width\",hidden:props=>props.style!==\"border\"},radiusType:{type:ControlType.Enum,defaultValue:\"full\",options:[\"full\",\"custom\"],optionTitles:[\"Full\",\"Custom\"],displaySegmentedControl:true,title:\"Radius\"},radiusValue:{type:ControlType.Number,defaultValue:20,min:1,step:1,title:\" \",hidden:props=>props.radiusType!==\"custom\"},transition:{type:ControlType.Transition,defaultValue:{type:\"spring\",stiffness:150,damping:60}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PulseEffect\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"20\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"20\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Pulse.map"],"mappings":"oOAAqL,SAAS,EAAM,CAAC,QAAM,uBAAqB,CAAC,IAAM,EAAW,EAAM,YAAY,MAAM,OAAoB,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,SAAS,WAAW,gBAAgB,EAAM,QAAQ,SAAS,OAAO,EAAM,MAAM,OAAO,EAAM,QAAQ,SAAS,GAAG,EAAM,YAAY,WAAW,EAAM,QAAQ,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAM,aAAa,MAAM,MAAM,aAAa,EAAM,YAAY,OAAO,IAAI,EAAM,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAM,UAAU,IAAI,aAAa,EAAM,YAAY,OAAO,IAAI,EAAM,YAAY,EAAM,SAAS,CAAC,EAAE,QAAQ,EAAW,KAAK,MAAM,QAAQ,EAAW,MAAM,KAAK,WAAW,EAAM,WAA+B,qBAAmB,CAAC,CAAE,CAKp0B,SAAwB,EAAY,EAAM,CAAC,GAAK,CAAC,EAAO,GAAWA,EAAS,CAAC,CAAC,EAAE,MAAc,CAAC,IAAM,MAAgB,CAAC,IAAM,EAAY,KAAK,IAAI,EACnJ,EAAU,GAAY,CAAC,GAAG,EAAW,CAAW,CAAC,CAAE,EAAQ,EAAS,YAAY,EAAY,EAAM,MAAM,GAAG,EAAgB,OAAd,EAAY,MAAY,cAAc,CAAQ,CAC3J,EAAE,CAAC,CAAC,EAAE,IAAM,EAAwB,GAAmB,CAAC,EAAU,GAAY,EAAW,OAAO,GAAK,IAAM,CAAiB,CAAC,CAAE,EAAE,OAAoB,EAAM,MAAM,CAAC,SAAS,CAAC,EAAO,IAAI,GAAkB,EAAK,EAAM,CAAO,QAAM,wBAAwB,EAAwB,CAAG,CAAC,EAAE,CAAG,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,gBAAgB,EAAM,MAAM,aAAa,EAAM,YAAY,OAAO,IAAI,EAAM,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,iBAPhY,IAAoD,IAAkC,IAAsC,EAOqQ,EAAY,YAAY,QAAQ,EAAoB,EAAY,CAAC,MAAM,CAAC,KAAK,EAAY,KAAK,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,GAAG,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,aAAa,MAAM,QAAQ,CAAC,KAAK,KAAK,EAAE,aAAa,CAAC,KAAK,KAAK,EAAE,wBAAwB,EAAI,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,CAAC,KAAK,EAAY,KAAK,aAAa,QAAQ,QAAQ,CAAC,QAAQ,QAAQ,EAAE,aAAa,CAAC,QAAQ,SAAS,EAAE,wBAAwB,EAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,gBAAgB,OAAO,GAAO,EAAM,QAAQ,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,aAAa,OAAO,QAAQ,CAAC,OAAO,QAAQ,EAAE,aAAa,CAAC,OAAO,QAAQ,EAAE,wBAAwB,GAAK,MAAM,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,OAAO,GAAO,EAAM,aAAa,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAY,WAAW,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC"}