{"version":3,"file":"jOrhZzjCy.qoyAxRjL.mjs","names":["useMemo","useRef","x","LEDMatrixFred","React.useContext","React.useMemo","React.Fragment","useRef","React.useId"],"sources":["https:/framerusercontent.com/modules/xj62twi0vY2iU68wjNRJ/aTrdVjxuKG0frhtBIBvH/LED_Matrix_Fred.js","https:/framerusercontent.com/modules/yQc31De0q5pBPHPb7aRg/Ce49Iaas8IXuNVcloe3P/jOrhZzjCy.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useMemo}from\"react\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerDisableUnlink\n *\n * @framerIntrinsicHeight 300\n * @framerIntrinsicWidth 300\n */export default function LedMatrix(props){const{shapeType,size,gap,primaryColor,secondaryColor,radius,probability,animSpeed}=props;const extractRGBColorFromString=str=>{const rgbRegex=/(rgba|rgb)\\(.*?\\)/g;const match=str.match(rgbRegex);return match?match[0]:\"#ffffff\";};// Memoize colors to avoid recalculating on every render\nconst formattedPrimaryColor=useMemo(()=>extractRGBColorFromString(primaryColor),[primaryColor]);const formattedSecondaryColor=useMemo(()=>extractRGBColorFromString(secondaryColor),[secondaryColor]);const canvasRef=useRef(null);const shapesRef=useRef([]);const animationFrameIdRef=useRef(null);const getColor=()=>Math.random()<probability/100?formattedPrimaryColor:formattedSecondaryColor;// Dynamically adjust canvas size and initialize\nconst adjustCanvasSize=()=>{const canvas=canvasRef.current;if(canvas){// Adjust canvas resolution based on its displayed size for sharp rendering\ncanvas.width=canvas.offsetWidth;canvas.height=canvas.offsetHeight;}};// Initialize with dynamic positioning, delay, and duration\nconst initialize=(ctx,width,height)=>{const shapes=[];for(let y=0;y<height;y+=size+gap){for(let x=0;x<width;x+=size+gap){shapes.push({x,y,delay:Math.random()*(-99.9*animSpeed+10099.9),duration:Math.random()*(-99.9*animSpeed+10099.9),startTime:performance.now()+Math.random()*5e3,color:getColor(),shapeType,radius:size/2});}}return shapes;};// Draw squares based on their state\nconst draw=(ctx,shapes,width,height)=>{const currentTime=performance.now();shapes.forEach(shape=>{let timeElapsed=currentTime-shape.startTime;if(timeElapsed>shape.delay+shape.duration){shape.startTime=currentTime+shape.delay;shape.color=getColor();}ctx.fillStyle=shape.color;if(shape.shapeType===\"Square\"){ctx.fillRect(shape.x,shape.y,size,size);}else{ctx.beginPath();ctx.arc(shape.x+shape.radius,shape.y+shape.radius,shape.radius,0,2*Math.PI);ctx.fill();}});};useEffect(()=>{const canvas=canvasRef.current;const ctx=canvas.getContext(\"2d\");const render=()=>{// Clear the canvas and redraw\nctx.clearRect(0,0,canvas.width,canvas.height);draw(ctx,shapesRef.current,canvas.width,canvas.height);animationFrameIdRef.current=requestAnimationFrame(render);};const resizeObserver=new ResizeObserver(entries=>{adjustCanvasSize();for(let entry of entries){shapesRef.current=initialize(ctx,entry.contentRect.width,entry.contentRect.height);}});resizeObserver.observe(canvas);// Start the animation\nanimationFrameIdRef.current=requestAnimationFrame(render);return()=>{// Clean up the animation frame when component unmounts or effect reruns\nif(animationFrameIdRef.current){cancelAnimationFrame(animationFrameIdRef.current);}// Clean up the resize observer\nresizeObserver.unobserve(canvas);};},[size,gap,shapeType,animSpeed,probability,formattedPrimaryColor,formattedSecondaryColor]);return /*#__PURE__*/_jsx(motion.div,{...props,style:{borderRadius:`${radius}px`,...props.style},children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{width:\"100%\",height:\"100%\",borderRadius:\"inherit\"}})});}LedMatrix.displayName=\"LED Matrix Fred\";addPropertyControls(LedMatrix,{shapeType:{title:\"Shape\",type:ControlType.Enum,options:[\"Square\",\"Circle\"],optionTitles:[\"Square\",\"Circle\"],defaultValue:\"Square\"},size:{title:\"Size\",type:ControlType.Number,description:\"Small sizes might impact performance in Framer, but they won't affect your live website. If you need a smaller size and Framer starts lagging, remember to hide the component by setting 'visible' to 'no', then reload the project. Set the component back to visible once you're done editing the website and ready to publish.\",defaultValue:10},gap:{title:\"Gap\",type:ControlType.Number,defaultValue:2},primaryColor:{title:\"Accent\",type:ControlType.Color,defaultValue:\"#059AFF\"},secondaryColor:{title:\"Secondary\",type:ControlType.Color,defaultValue:\"#1A1C1D\"},radius:{title:\"Radius\",type:ControlType.Number,defaultValue:0},probability:{title:\"Accent Amount\",type:ControlType.Number,description:\"The higher the number, the more accent color will be displayed.\",defaultValue:4,min:0,max:100},animSpeed:{title:\"Speed\",type:ControlType.Number,defaultValue:90,min:1,max:100}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"LedMatrix\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"300\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LED_Matrix_Fred.map","// Generated by Framer (99f3353)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useOnVariantChange,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import LEDMatrixFred from\"https://framerusercontent.com/modules/xj62twi0vY2iU68wjNRJ/aTrdVjxuKG0frhtBIBvH/LED_Matrix_Fred.js\";const LEDMatrixFredFonts=getFonts(LEDMatrixFred);const SmartComponentScopedContainerWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(SmartComponentScopedContainer));const cycleOrder=[\"FoF26TSyB\",\"y1FpToi46\",\"tkffYThBW\",\"Ku9s_3zmu\",\"JZ1JLcJDy\",\"oDaAZCkI2\",\"CzQplSgnJ\",\"BM7KNmv7a\",\"PoPNGTqr_\",\"pJsPGMJ7T\"];const serializationHash=\"framer-7HZZr\";const variantClassNames={BM7KNmv7a:\"framer-v-aup1v6\",CzQplSgnJ:\"framer-v-1cwqsf6\",FoF26TSyB:\"framer-v-15ddl9i\",JZ1JLcJDy:\"framer-v-1hztchq\",Ku9s_3zmu:\"framer-v-1ucj3y2\",oDaAZCkI2:\"framer-v-rg0i3a\",pJsPGMJ7T:\"framer-v-hhmnug\",PoPNGTqr_:\"framer-v-18f0l43\",tkffYThBW:\"framer-v-1tlhc8o\",y1FpToi46:\"framer-v-1f698jm\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const animation={opacity:.65,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Bottom Appear\":\"BM7KNmv7a\",\"Bottom Right Appear\":\"oDaAZCkI2\",\"Bottom Right\":\"JZ1JLcJDy\",\"Bright Default Appear\":\"pJsPGMJ7T\",\"Bright Default\":\"PoPNGTqr_\",\"Default Appear\":\"y1FpToi46\",\"Top Right Appear\":\"Ku9s_3zmu\",\"Top Right\":\"tkffYThBW\",Bottom:\"CzQplSgnJ\",Default:\"FoF26TSyB\"};const getProps=({accent,height,id,secondary,width,...props})=>{return{...props,a6SE8oOam:secondary??props.a6SE8oOam??\"rgba(0, 89, 255, 0.14)\",s1RkPaPh3:accent??props.s1RkPaPh3??\"rgb(0, 89, 255)\",variant:humanReadableVariantMap[props.variant]??props.variant??\"FoF26TSyB\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,s1RkPaPh3,a6SE8oOam,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"FoF26TSyB\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onAppear1hntdsi=activeVariantCallback(async(...args)=>{setVariant(\"FoF26TSyB\",true);});const onAppear1v07jzk=activeVariantCallback(async(...args)=>{setVariant(\"tkffYThBW\",true);});const onAppearahxwxc=activeVariantCallback(async(...args)=>{setVariant(\"JZ1JLcJDy\",true);});const onAppear179nx5w=activeVariantCallback(async(...args)=>{setVariant(\"CzQplSgnJ\",true);});const onAppear1j9e0gv=activeVariantCallback(async(...args)=>{setVariant(\"PoPNGTqr_\",true);});useOnVariantChange(baseVariant,{BM7KNmv7a:onAppear179nx5w,Ku9s_3zmu:onAppear1v07jzk,oDaAZCkI2:onAppearahxwxc,pJsPGMJ7T:onAppear1j9e0gv,y1FpToi46:onAppear1hntdsi});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"y1FpToi46\",\"Ku9s_3zmu\",\"oDaAZCkI2\",\"BM7KNmv7a\",\"pJsPGMJ7T\"].includes(baseVariant))return false;return true;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-15ddl9i\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"FoF26TSyB\",ref:refBinding,style:{mask:\"radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,1) 22.07207207207207%, rgba(0,0,0,0) 100%) add\",WebkitMask:\"radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,1) 22.07207207207207%, rgba(0,0,0,0) 100%) add\",...style},variants:{BM7KNmv7a:{mask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 90%) add\",WebkitMask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 90%) add\"},CzQplSgnJ:{mask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 90%) add\",WebkitMask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 90%) add\"},JZ1JLcJDy:{mask:\"linear-gradient(310deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\",WebkitMask:\"linear-gradient(310deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\"},Ku9s_3zmu:{mask:\"linear-gradient(218deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\",WebkitMask:\"linear-gradient(218deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\"},oDaAZCkI2:{mask:\"linear-gradient(310deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\",WebkitMask:\"linear-gradient(310deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\"},tkffYThBW:{mask:\"linear-gradient(218deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\",WebkitMask:\"linear-gradient(218deg, rgb(0, 0, 0) 0%, rgba(0,0,0,0) 52%) add\"}},...addPropertyOverrides({BM7KNmv7a:{\"data-framer-name\":\"Bottom Appear\",\"data-highlight\":true},CzQplSgnJ:{\"data-framer-name\":\"Bottom\"},JZ1JLcJDy:{\"data-framer-name\":\"Bottom Right\"},Ku9s_3zmu:{\"data-framer-name\":\"Top Right Appear\",\"data-highlight\":true},oDaAZCkI2:{\"data-framer-name\":\"Bottom Right Appear\",\"data-highlight\":true},pJsPGMJ7T:{\"data-framer-name\":\"Bright Default Appear\",\"data-highlight\":true},PoPNGTqr_:{\"data-framer-name\":\"Bright Default\"},tkffYThBW:{\"data-framer-name\":\"Top Right\"},y1FpToi46:{\"data-framer-name\":\"Default Appear\",\"data-highlight\":true}},baseVariant,gestureVariant),children:isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainerWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:.65,animate:animation,className:\"framer-bx6amf-container\",\"data-framer-appear-id\":\"bx6amf\",initial:animation1,isAuthoredByUser:true,layoutDependency:layoutDependency,layoutId:\"HoyMBbU42-container\",nodeId:\"HoyMBbU42\",optimized:true,rendersWithMotion:true,scopeId:\"jOrhZzjCy\",style:{opacity:.65},variants:{PoPNGTqr_:{opacity:1}},...addPropertyOverrides({PoPNGTqr_:{__targetOpacity:1,animate:animation2}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(LEDMatrixFred,{animSpeed:54,gap:4,height:\"100%\",id:\"HoyMBbU42\",layoutId:\"HoyMBbU42\",primaryColor:s1RkPaPh3,probability:14,radius:0,secondaryColor:a6SE8oOam,shapeType:\"Circle\",size:4,style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({CzQplSgnJ:{radius:20},JZ1JLcJDy:{radius:20},PoPNGTqr_:{shapeType:\"Square\"},tkffYThBW:{radius:20}},baseVariant,gestureVariant)})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-7HZZr.framer-1u702ej, .framer-7HZZr .framer-1u702ej { display: block; }\",\".framer-7HZZr.framer-15ddl9i { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: 120px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 561px; }\",\".framer-7HZZr .framer-bx6amf-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-7HZZr.framer-15ddl9i { gap: 0px; } .framer-7HZZr.framer-15ddl9i > * { margin: 0px; margin-left: calc(16px / 2); margin-right: calc(16px / 2); } .framer-7HZZr.framer-15ddl9i > :first-child { margin-left: 0px; } .framer-7HZZr.framer-15ddl9i > :last-child { margin-right: 0px; } }\",\".framer-7HZZr.framer-v-1tlhc8o.framer-15ddl9i, .framer-7HZZr.framer-v-1ucj3y2.framer-15ddl9i, .framer-7HZZr.framer-v-1hztchq.framer-15ddl9i, .framer-7HZZr.framer-v-rg0i3a.framer-15ddl9i, .framer-7HZZr.framer-v-1cwqsf6.framer-15ddl9i, .framer-7HZZr.framer-v-aup1v6.framer-15ddl9i { height: 400px; width: 400px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 120\n * @framerIntrinsicWidth 561\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"y1FpToi46\":{\"layout\":[\"fixed\",\"fixed\"]},\"tkffYThBW\":{\"layout\":[\"fixed\",\"fixed\"]},\"Ku9s_3zmu\":{\"layout\":[\"fixed\",\"fixed\"]},\"JZ1JLcJDy\":{\"layout\":[\"fixed\",\"fixed\"]},\"oDaAZCkI2\":{\"layout\":[\"fixed\",\"fixed\"]},\"CzQplSgnJ\":{\"layout\":[\"fixed\",\"fixed\"]},\"BM7KNmv7a\":{\"layout\":[\"fixed\",\"fixed\"]},\"PoPNGTqr_\":{\"layout\":[\"fixed\",\"fixed\"]},\"pJsPGMJ7T\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"s1RkPaPh3\":\"accent\",\"a6SE8oOam\":\"secondary\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerjOrhZzjCy=withCSS(Component,css,\"framer-7HZZr\");export default FramerjOrhZzjCy;FramerjOrhZzjCy.displayName=\"LED Matrix Wrapper\";FramerjOrhZzjCy.defaultProps={height:120,width:561};addPropertyControls(FramerjOrhZzjCy,{variant:{options:[\"FoF26TSyB\",\"y1FpToi46\",\"tkffYThBW\",\"Ku9s_3zmu\",\"JZ1JLcJDy\",\"oDaAZCkI2\",\"CzQplSgnJ\",\"BM7KNmv7a\",\"PoPNGTqr_\",\"pJsPGMJ7T\"],optionTitles:[\"Default\",\"Default Appear\",\"Top Right\",\"Top Right Appear\",\"Bottom Right\",\"Bottom Right Appear\",\"Bottom\",\"Bottom Appear\",\"Bright Default\",\"Bright Default Appear\"],title:\"Variant\",type:ControlType.Enum},s1RkPaPh3:{defaultValue:\"rgb(0, 89, 255)\",title:\"Accent\",type:ControlType.Color},a6SE8oOam:{defaultValue:\"rgba(0, 89, 255, 0.14)\",title:\"Secondary\",type:ControlType.Color}});addFonts(FramerjOrhZzjCy,[{explicitInter:true,fonts:[]},...LEDMatrixFredFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerjOrhZzjCy\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"s1RkPaPh3\\\":\\\"accent\\\",\\\"a6SE8oOam\\\":\\\"secondary\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"120\",\"framerIntrinsicWidth\":\"561\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"y1FpToi46\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"tkffYThBW\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Ku9s_3zmu\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"JZ1JLcJDy\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"oDaAZCkI2\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"CzQplSgnJ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"BM7KNmv7a\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"PoPNGTqr_\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"pJsPGMJ7T\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./jOrhZzjCy.map"],"mappings":"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"}