{"version":3,"file":"shared-lib.CG573B8m.mjs","names":["useRef","useCallback","cx","p","metadata","metadataVersion","__FramerMetadata__","metadata","siteMetadata"],"sources":["https:/framerusercontent.com/modules/yfJsDPYoDPAYQF8xBWxR/oYckq3GVSuHfyQ8xnDms/Backgroudn.js","https:/framerusercontent.com/modules/UF7SHAmCwXzJ13niKGsV/mUZAeM4NBicjR9r8OcCb/r5biuyNmO.js","https:/framerusercontent.com/modules/swOPGVXBwCz1sqKyHWtf/Glz71Tc0qgUsadRNXEi9/augiA20Il.js","https:/framerusercontent.com/modules/vuRfENvMwEN7sRHxlsoJ/rraz3MYzXK34xxlR7p5f/siteMetadata.js","https:/framerusercontent.com/modules/fwHrBFKWTmsZdXb2bX3q/HjzSK3zu6g9XPRXJuEhZ/Ti1lTIdjV.js"],"sourcesContent":["/**\n * Agora — Enterprise Graph Background v6\n *\n * A living network visualisation with data particles flowing along edges,\n * breathing node pulses, and ambient drift. Designed to read unmistakably\n * as \"graph infrastructure\" at a glance.\n *\n * Key visual features:\n *  - Luminous data particles that travel along edge paths\n *  - Nodes that pulse/breathe with staggered phases\n *  - Soft glow halos around hub nodes\n *  - Geometric hex-grid cluster placement for structured feel\n *  - Visible ambient drift of the entire network\n *  - Gradient edges with distance-based opacity\n *\n * Performance: all colours pre-baked, glow/vignette pre-rendered.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useCallback}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/* ───────────────────────────── Component ─────────────────────────── */const AgoraGraphBackground=({nodeCount=120,edgeDensity=.7,particleCount=80,particleSpeed=.5,nodePulseSpeed=.5,driftSpeed=.5,driftAmount=30,edgeGlow=1,nodeGlow=.7,primaryHue=170,accentHue=175,brightness=1,vignetteStrength=.35,style})=>{const canvasRef=useRef(null);const S=useRef({nodes:[],edges:[],particles:[],w:0,h:0,t:0,animId:0,vigCanvas:null,glowCanvas:null});/* ─── Build the graph ──────────────────────────────────── */const build=useCallback(()=>{const s=S.current;const{w:W,h:H}=s;if(!W||!H)return;const nodes=[];const edges=[];const cx=W/2,cy=H/2;const diag=Math.hypot(W,H);// Colour helpers\nconst pri=a=>`hsla(${primaryHue},40%,65%,${a})`;const acc=a=>`hsla(${accentHue},50%,72%,${a})`;// ── Place nodes with relaxed Poisson-disc ──\nconst minDist=Math.max(55,Math.sqrt(W*H/nodeCount)*.7);const placed=[];let tries=0;const margin=30;while(placed.length<nodeCount&&tries<4e3){const px=margin+Math.random()*(W-margin*2);const py=margin+Math.random()*(H-margin*2);let ok=true;for(const p of placed){if(Math.hypot(p.x-px,p.y-py)<minDist){ok=false;break;}}if(ok)placed.push({x:px,y:py});tries++;}// Create nodes — ~15% are hubs\nfor(let i=0;i<placed.length;i++){const{x,y}=placed[i];const distRatio=Math.hypot(x-cx,y-cy)/(diag*.5);const isHub=Math.random()<.15;const baseA=(.4+Math.random()*.4)*brightness*(1-distRatio*.2);nodes.push({ox:x,oy:y,x,y,r:isHub?3+Math.random()*2.5:1.2+Math.random()*1.8,hub:isHub,phase:Math.random()*Math.PI*2,driftPhase:Math.random()*Math.PI*2,baseAlpha:baseA,color:isHub?acc(baseA):pri(baseA),pulseColor:isHub?acc(Math.min(baseA*2.2,.95)):pri(Math.min(baseA*1.8,.8))});}// ── Build edges — connect nearby nodes ──\nconst maxEdgeDist=minDist*(2.5+edgeDensity*2);for(let i=0;i<nodes.length;i++){for(let j=i+1;j<nodes.length;j++){const dx=nodes[i].ox-nodes[j].ox;const dy=nodes[i].oy-nodes[j].oy;const d=Math.sqrt(dx*dx+dy*dy);if(d<maxEdgeDist){// Probability falls off with distance\nconst prob=(1-d/maxEdgeDist)*edgeDensity;if(Math.random()<prob){const isAccent=nodes[i].hub||nodes[j].hub;const distRatio=Math.hypot((nodes[i].ox+nodes[j].ox)/2-cx,(nodes[i].oy+nodes[j].oy)/2-cy)/(diag*.5);const proximity=1-d/maxEdgeDist;const ea=(.12+proximity*.35)*edgeGlow*brightness*(1-distRatio*.15);edges.push({a:i,b:j,alpha:ea,width:isAccent?1+Math.random()*.5:.6+Math.random()*.4,len:d});}}}}// ── Seed particles on random edges ──\nconst particles=[];if(edges.length>0){for(let i=0;i<particleCount;i++){particles.push({edgeIdx:Math.floor(Math.random()*edges.length),t:Math.random(),speed:(.15+Math.random()*.35)*particleSpeed,size:1+Math.random()*1.5,alpha:.3+Math.random()*.5});}}s.nodes=nodes;s.edges=edges;s.particles=particles;},[nodeCount,edgeDensity,particleCount,particleSpeed,primaryHue,accentHue,brightness,edgeGlow]);/* ─── Pre-render sprites ───────────────────────────────── */const buildSprites=useCallback(()=>{const s=S.current;const{w:W,h:H}=s;const dpr=Math.min(window.devicePixelRatio||1,2);// Vignette\nif(vignetteStrength>0){const vc=document.createElement(\"canvas\");vc.width=W*dpr;vc.height=H*dpr;const vx=vc.getContext(\"2d\");vx.setTransform(dpr,0,0,dpr,0,0);const g=vx.createRadialGradient(W/2,H/2,Math.min(W,H)*.2,W/2,H/2,Math.max(W,H)*.75);g.addColorStop(0,\"rgba(8,12,16,0)\");g.addColorStop(.45,\"rgba(8,12,16,0)\");g.addColorStop(.75,`rgba(8,12,16,${(vignetteStrength*.55).toFixed(2)})`);g.addColorStop(1,`rgba(8,12,16,${vignetteStrength.toFixed(2)})`);vx.fillStyle=g;vx.fillRect(0,0,W,H);s.vigCanvas=vc;}// Node glow sprite — soft white circle\nconst gs=128;const gc=document.createElement(\"canvas\");gc.width=gs;gc.height=gs;const gx=gc.getContext(\"2d\");const gg=gx.createRadialGradient(gs/2,gs/2,0,gs/2,gs/2,gs/2);gg.addColorStop(0,\"rgba(255,255,255,0.5)\");gg.addColorStop(.25,\"rgba(255,255,255,0.12)\");gg.addColorStop(1,\"rgba(255,255,255,0)\");gx.fillStyle=gg;gx.fillRect(0,0,gs,gs);s.glowCanvas=gc;},[vignetteStrength]);/* ─── Main effect ──────────────────────────────────────── */useEffect(()=>{const canvas=canvasRef.current;if(!canvas)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;const s=S.current;const resize=()=>{const p=canvas.parentElement;const w=p?.clientWidth||window.innerWidth;const h=p?.clientHeight||window.innerHeight;const dpr=Math.min(window.devicePixelRatio||1,2);canvas.width=w*dpr;canvas.height=h*dpr;canvas.style.width=w+\"px\";canvas.style.height=h+\"px\";ctx.setTransform(dpr,0,0,dpr,0,0);s.w=w;s.h=h;};resize();build();buildSprites();window.addEventListener(\"resize\",()=>{resize();build();buildSprites();});// ── Colour helpers for particles ──\nconst particleColor=a=>`hsla(${accentHue},60%,80%,${a})`;const draw=()=>{const{nodes,edges,particles,w:W,h:H,vigCanvas,glowCanvas}=s;ctx.clearRect(0,0,W,H);const dt=.016// ~60fps timestep\n;s.t+=dt;const t=s.t;// ── Animate node positions (drift) ──\nconst da=driftAmount;const ds=driftSpeed*.3;for(const n of nodes){const p=n.driftPhase;n.x=n.ox+Math.sin(t*ds+p)*da+Math.cos(t*ds*.7+p*1.4)*da*.4;n.y=n.oy+Math.cos(t*ds*.8+p)*da*.6+Math.sin(t*ds*.5+p*.9)*da*.3;}// ── Draw edges ──\nctx.lineCap=\"round\";for(const e of edges){const na=nodes[e.a],nb=nodes[e.b];ctx.beginPath();ctx.moveTo(na.x,na.y);ctx.lineTo(nb.x,nb.y);ctx.strokeStyle=`hsla(${primaryHue},35%,60%,${e.alpha})`;ctx.lineWidth=e.width;ctx.stroke();}// ── Draw particles flowing along edges ──\nfor(const pt of particles){pt.t+=pt.speed*dt;if(pt.t>1){pt.t-=1;// Jump to a random connected edge for continuity\nconst currentEdge=edges[pt.edgeIdx];const endNode=Math.random()<.5?currentEdge.a:currentEdge.b;// Find edges connected to this node\nconst connected=[];for(let i=0;i<edges.length;i++){if(i!==pt.edgeIdx&&(edges[i].a===endNode||edges[i].b===endNode)){connected.push(i);}}if(connected.length>0){pt.edgeIdx=connected[Math.floor(Math.random()*connected.length)];// Orient direction: start from the shared node\nconst ne=edges[pt.edgeIdx];if(ne.b===endNode){// Swap so particle travels a→b starting from endNode\npt.t=1-pt.t;}}else{pt.edgeIdx=Math.floor(Math.random()*edges.length);}}const e=edges[pt.edgeIdx];if(!e)continue;const na=nodes[e.a],nb=nodes[e.b];const px=na.x+(nb.x-na.x)*pt.t;const py=na.y+(nb.y-na.y)*pt.t;// Fade in/out at ends\nconst edgeFade=Math.min(pt.t*4,(1-pt.t)*4,1);const pa=pt.alpha*edgeFade*brightness;// Particle glow\nctx.globalCompositeOperation=\"lighter\";ctx.beginPath();ctx.arc(px,py,pt.size*3,0,Math.PI*2);ctx.fillStyle=particleColor(pa*.3);ctx.fill();// Particle core\nctx.beginPath();ctx.arc(px,py,pt.size,0,Math.PI*2);ctx.fillStyle=particleColor(pa);ctx.fill();ctx.globalCompositeOperation=\"source-over\";}// ── Draw nodes with pulse ──\nconst pulseT=t*nodePulseSpeed;for(const n of nodes){const pulse=.5+.5*Math.sin(pulseT*Math.PI*2+n.phase);const currentAlpha=n.baseAlpha*(.6+pulse*.4);// Hub glow\nif(n.hub&&glowCanvas){const gs=n.r*(8+pulse*4);ctx.globalCompositeOperation=\"lighter\";ctx.globalAlpha=currentAlpha*nodeGlow*.4;ctx.drawImage(glowCanvas,n.x-gs,n.y-gs,gs*2,gs*2);ctx.globalAlpha=1;ctx.globalCompositeOperation=\"source-over\";}// Node body\nctx.beginPath();ctx.arc(n.x,n.y,n.r*(.9+pulse*.2),0,Math.PI*2);ctx.fillStyle=pulse>.5?n.pulseColor:n.color;ctx.fill();// Specular on hubs\nif(n.hub){ctx.beginPath();ctx.arc(n.x-n.r*.2,n.y-n.r*.25,n.r*.3,0,Math.PI*2);ctx.fillStyle=`rgba(255,255,255,${(.12+pulse*.08).toFixed(2)})`;ctx.fill();}}// ── Vignette ──\nif(vigCanvas)ctx.drawImage(vigCanvas,0,0,W,H);s.animId=requestAnimationFrame(draw);};s.animId=requestAnimationFrame(draw);return()=>{cancelAnimationFrame(s.animId);};},[build,buildSprites,driftSpeed,driftAmount,nodePulseSpeed,particleSpeed,nodeGlow,brightness,primaryHue,accentHue]);return /*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\",...style}});};/* ─────────────────────── Framer Property Controls ─────────────────── */addPropertyControls(AgoraGraphBackground,{nodeCount:{type:ControlType.Number,title:\"Nodes\",defaultValue:120,min:40,max:200,step:10},edgeDensity:{type:ControlType.Number,title:\"Edge Density\",defaultValue:.7,min:.2,max:1,step:.05},particleCount:{type:ControlType.Number,title:\"Particles\",defaultValue:80,min:10,max:150,step:5},particleSpeed:{type:ControlType.Number,title:\"Particle Speed\",defaultValue:.5,min:.1,max:1.5,step:.05},nodePulseSpeed:{type:ControlType.Number,title:\"Pulse Speed\",defaultValue:.5,min:.1,max:2,step:.1},driftSpeed:{type:ControlType.Number,title:\"Drift Speed\",defaultValue:.5,min:.1,max:2,step:.1},driftAmount:{type:ControlType.Number,title:\"Drift Amount\",defaultValue:30,min:5,max:80,step:5},edgeGlow:{type:ControlType.Number,title:\"Edge Glow\",defaultValue:1,min:.1,max:1.5,step:.05},nodeGlow:{type:ControlType.Number,title:\"Node Glow\",defaultValue:.7,min:.1,max:1.2,step:.05},primaryHue:{type:ControlType.Number,title:\"Primary Hue\",defaultValue:170,min:0,max:360,step:5},accentHue:{type:ControlType.Number,title:\"Accent Hue\",defaultValue:175,min:0,max:360,step:5},brightness:{type:ControlType.Number,title:\"Brightness\",defaultValue:1,min:.2,max:1.5,step:.05},vignetteStrength:{type:ControlType.Number,title:\"Vignette\",defaultValue:.35,min:0,max:1,step:.05}});export default AgoraGraphBackground;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AgoraGraphBackground\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Backgroudn.map","// Generated by Framer (4a2adb5)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.img,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"img\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,alt:\"\",className:cx(\"framer-9GWZG\",className),layoutId:layoutId,ref:ref,src:'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 252 152\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 86.587 0 L 30.986 139.034 L 145.902 139.034 L 201.503 0 Z M 203.104 29.06 L 167.814 117.517 L 181.777 117.517 L 191.319 92.854 L 227.666 92.854 L 237.209 117.517 L 252 117.517 L 215.864 29.06 Z M 61.486 29.063 L 0 29.077 L 0 117.541 L 13.274 117.541 L 13.274 78.809 L 41.595 78.809 L 46.108 67.532 L 13.274 67.532 L 13.274 40.468 L 56.939 40.468 Z M 115.127 29.65 C 119.707 29.65 123.818 30.192 127.447 31.271 C 131.08 32.347 134.26 33.694 136.982 35.312 C 139.704 36.93 142.043 38.691 143.987 40.6 C 145.933 42.508 147.51 44.33 148.721 46.073 L 139.9 53.291 C 138.862 51.883 137.63 50.407 136.208 48.871 C 134.781 47.339 133.07 45.95 131.083 44.705 C 129.094 43.461 126.8 42.425 124.205 41.596 C 121.614 40.766 118.629 40.35 115.257 40.35 C 110.502 40.35 106.242 41.223 102.48 42.963 C 98.719 44.705 95.519 47.066 92.881 50.053 C 90.247 53.04 88.233 56.522 86.851 60.503 C 85.469 64.485 84.778 68.718 84.778 73.194 C 84.778 77.675 85.491 81.885 86.918 85.821 C 88.345 89.762 90.358 93.185 92.948 96.085 C 95.543 98.989 98.696 101.268 102.416 102.925 C 106.134 104.587 110.284 105.413 114.867 105.413 C 118.759 105.413 122.111 104.939 124.919 103.982 C 127.731 103.031 130.108 101.892 132.054 100.562 C 133.998 99.237 135.598 97.89 136.852 96.52 C 138.104 95.154 139.164 94.013 140.027 93.101 L 148.721 100.066 C 147.769 101.557 146.298 103.261 144.311 105.167 C 142.321 107.073 139.902 108.879 137.049 110.579 C 134.194 112.278 130.907 113.709 127.19 114.87 C 123.472 116.032 119.362 116.613 114.867 116.613 C 108.468 116.613 102.63 115.531 97.358 113.378 C 92.083 111.221 87.546 108.217 83.74 104.36 C 79.936 100.502 76.975 95.942 74.855 90.673 C 72.733 85.406 71.677 79.661 71.677 73.44 C 71.677 67.388 72.733 61.709 74.855 56.4 C 76.975 51.092 79.936 46.447 83.74 42.467 C 87.546 38.486 92.106 35.352 97.421 33.07 C 102.74 30.791 108.642 29.65 115.127 29.65 Z M 209.465 43.25 L 223.658 82.111 L 195.191 82.111 Z\" fill=\"rgb(255, 255, 255)\" height=\"139.03448281822534px\" id=\"hw3gFEDcb\" transform=\"translate(0 3.99)\" width=\"251.99998423777652px\"/></svg>',style:{...style}});});const css=[`.framer-9GWZG { -webkit-mask: ${mask}; aspect-ratio: 1.6578947368421053; display: block; mask: ${mask}; user-select: none; width: 252px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 252\n * @framerIntrinsicHeight 152\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"path655\",\"color\":{\"type\":\"static\",\"value\":\"rgb(255, 255, 255)\"},\"set\":{\"localId\":\"vectorSet/ide8FJn6G\",\"id\":\"ide8FJn6G\",\"moduleId\":\"OX5976mvk5qUEJudXgrn\"}}\n */const Icon=withCSS(Component,css,\"framer-9GWZG\");Icon.displayName=\"path655\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"152\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"252\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"path655\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"rgb(255, 255, 255)\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/ide8FJn6G\\\",\\\"id\\\":\\\"ide8FJn6G\\\",\\\"moduleId\\\":\\\"OX5976mvk5qUEJudXgrn\\\"}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (18229b5)\nexport default function metadata(params,activeLocale){return{breakpoints:[{hash:\"72rtr7\",mediaQuery:\"(min-width: 1200px)\"},{hash:\"1vsxv61\",mediaQuery:\"(min-width: 810px) and (max-width: 1199.98px)\"},{hash:\"gqi40l\",mediaQuery:\"(max-width: 809.98px)\"}],description:\"Agora is building the market orchestration layer for custody, provenance, and workflows across financial and physical assets. FCA regulated. Request access.\",elements:{},framerSearch:{index:true},robots:\"max-image-preview:large\",serializationId:\"framer-yKGH4\",socialImage:\"https://framerusercontent.com/assets/w9VyqvTjl5PYI4kinnpmDUUMI.png\",title:\"Agora | Digital Twins for Financial and Physical Assets\",viewport:\"width=device-width\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (5ce23eb)\nexport default function metadata(params,activeLocale){return{description:\"Made with Framer\",favicon:\"https://framerusercontent.com/assets/BaTQy8gl9350m6W5DLBURBy28.png\",robots:\"max-image-preview:large\",title:\"My Framer Site\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (841fdc4)\nimport siteMetadata from\"#framer/local/siteMetadata/siteMetadata/siteMetadata.js\";export default function metadata(params,activeLocale){return{breakpoints:[{hash:\"1095ns3\",mediaQuery:\"(min-width: 1440px)\"},{hash:\"k6ncxf\",mediaQuery:\"(min-width: 810px) and (max-width: 1439.98px)\"},{hash:\"2iabo8\",mediaQuery:\"(max-width: 809.98px)\"}],description:siteMetadata(params,activeLocale).description,elements:{},robots:\"max-image-preview:large\",serializationId:\"framer-Dko18\",title:siteMetadata(params,activeLocale).title||\"Home 2\",viewport:\"width=device-width\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}