{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/n8w8eRM2IAgGZExPRc3I/i6M54QSgpTF9b5VdjNkE/Matrixeffect.js"],
  "sourcesContent": ["import{jsx as _jsx,Fragment as _Fragment}from\"react/jsx-runtime\";import{useRef,useEffect}from\"react\";function MatrixEffect(){const canvasRef=useRef(null);useEffect(()=>{const canvas=canvasRef.current;const ctx=canvas.getContext(\"2d\");// Function to update canvas size\nconst updateCanvasSize=()=>{canvas.width=window.innerWidth;canvas.height=window.innerHeight;};// Update canvas size on mount and add resize event listener\nupdateCanvasSize();window.addEventListener(\"resize\",updateCanvasSize);let letters=\"ABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZ\";letters=letters.split(\"\");const fontSize=10// You can make this dynamic based on screen size if necessary\n;const columns=canvas.width/fontSize;const drops=Array.from({length:columns}).fill(1);function draw(){ctx.fillStyle=\"rgba(0, 0, 0, .1)\";ctx.fillRect(0,0,canvas.width,canvas.height);for(let i=0;i<drops.length;i++){const text=letters[Math.floor(Math.random()*letters.length)];ctx.fillStyle=\"#0f0\";ctx.fillText(text,i*fontSize,drops[i]*fontSize);drops[i]++;if(drops[i]*fontSize>canvas.height&&Math.random()>.95){drops[i]=0;}}}const intervalId=setInterval(draw,30);// Cleanup: Remove event listener and clear interval on unmount\nreturn()=>{clearInterval(intervalId);window.removeEventListener(\"resize\",updateCanvasSize);};},[]);// Inline styles\nconst canvasStyle={display:\"block\",width:\"100vw\",height:\"100vh\"};const bodyStyle={margin:0,padding:0,background:\"#000\"};return /*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(\"div\",{style:bodyStyle,children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:canvasStyle})})});}export default MatrixEffect;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"MatrixEffect\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Matrixeffect.map"],
  "mappings": "uGAAqG,SAASA,GAAc,CAAC,IAAMC,EAAUC,EAAO,IAAI,EAAE,OAAAC,EAAU,IAAI,CAAC,IAAMC,EAAOH,EAAU,QAAcI,EAAID,EAAO,WAAW,IAAI,EAClOE,EAAiB,IAAI,CAACF,EAAO,MAAMG,EAAO,WAAWH,EAAO,OAAOG,EAAO,WAAY,EAC5FD,EAAiB,EAAEC,EAAO,iBAAiB,SAASD,CAAgB,EAAE,IAAIE,EAAQ,yJAAyJA,EAAQA,EAAQ,MAAM,EAAE,EAAE,IAAMC,EAAS,GAC7QC,EAAQN,EAAO,MAAMK,EAAeE,EAAM,MAAM,KAAK,CAAC,OAAOD,CAAO,CAAC,EAAE,KAAK,CAAC,EAAE,SAASE,GAAM,CAACP,EAAI,UAAU,oBAAoBA,EAAI,SAAS,EAAE,EAAED,EAAO,MAAMA,EAAO,MAAM,EAAE,QAAQS,EAAE,EAAEA,EAAEF,EAAM,OAAOE,IAAI,CAAC,IAAMC,EAAKN,EAAQ,KAAK,MAAM,KAAK,OAAO,EAAEA,EAAQ,MAAM,CAAC,EAAEH,EAAI,UAAU,OAAOA,EAAI,SAASS,EAAKD,EAAEJ,EAASE,EAAME,CAAC,EAAEJ,CAAQ,EAAEE,EAAME,CAAC,IAAOF,EAAME,CAAC,EAAEJ,EAASL,EAAO,QAAQ,KAAK,OAAO,EAAE,MAAKO,EAAME,CAAC,EAAE,EAAG,CAAC,CAAC,IAAME,EAAW,YAAYH,EAAK,EAAE,EAC3c,MAAM,IAAI,CAAC,cAAcG,CAAU,EAAER,EAAO,oBAAoB,SAASD,CAAgB,CAAE,CAAE,EAAE,CAAC,CAAC,EAC2CU,EAAKC,EAAU,CAAC,SAAsBD,EAAK,MAAM,CAAC,MAA7G,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,MAAM,EAAwF,SAAsBA,EAAK,SAAS,CAAC,IAAIf,EAAU,MAA/O,CAAC,QAAQ,QAAQ,MAAM,QAAQ,OAAO,OAAO,CAAmN,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAOiB,EAAQlB",
  "names": ["MatrixEffect", "canvasRef", "pe", "ue", "canvas", "ctx", "updateCanvasSize", "window", "letters", "fontSize", "columns", "drops", "draw", "i", "text", "intervalId", "p", "l", "Matrixeffect_default"]
}
