PageSourceSearch

https://solana.com/media-assets/_next/static/chunks/3343.30858013af0cb300.js

js solana.com collected 2026-09-24 08:55:48 UTC 16,229 bytes, 1 lines download raw bytes

1try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="91d6dafd-e6fb-428e-b22a-e4d3e33e9086",e._sentryDebugIdIdentifier="sentry-dbid-91d6dafd-e6fb-428e-b22a-e4d3e33e9086")}()}catch(e){}"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3343,7628],{3072:(e,t,n)=>{n.d(t,{M:()=>d});var r=n(52544),a=n(18411),i=n(8521);function d(e){var t,n,d,o={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:(t=e,i.A(t.nodes(),function(e){var n=t.node(e),a=t.parent(e),i={v:e};return r.A(n)||(i.value=n),r.A(a)||(i.parent=a),i})),edges:(n=e,i.A(n.edges(),function(e){var t=n.edge(e),a={v:e.v,w:e.w};return r.A(e.name)||(a.name=e.name),r.A(t)||(a.value=t),a}))};return r.A(e.graph())||(d=e.graph(),o.value=(0,a.A)(d,4)),o}n(24093)},3343:(e,t,n)=>{n.r(t),n.d(t,{getEdgesToRender:()=>m,render:()=>v});var r=n(97628),a=n(31266),i=n(84259);n(98549),n(41305);var d=n(80604);n(31618),n(6924),n(30454);var o=n(81772),l=n(44961),s=n(53367),g=n(18190),c=n(3072),h=n(77959),f=(0,s.K)((e,t,n)=>Math.max(t,Math.min(n,e)),"clamp"),u=(0,s.K)((e="TB")=>{switch(e){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";default:return"top"}},"getDefaultSelfLoopSide"),p=(0,s.K)(e=>"flowchart"===e||"flowchart-v2"===e||"stateDiagram"===e,"shouldMergeSelfLoopSegments"),w=(0,s.K)((e,t,n,r,a)=>{let i=[],d=new Set;if(n.forEach(({start:e,end:t})=>{e!==r&&d.add(e),t!==r&&d.add(t)}),d.forEach(t=>{let n=e.node(t);"number"==typeof n?.x&&"number"==typeof n?.y&&i.push(n)}),0===i.length&&n.forEach(({edge:e})=>{(e.points??[]).forEach(e=>{"number"==typeof e?.x&&"number"==typeof e?.y&&i.push(e)})}),0===i.length)return u(a);let o=i.reduce((e,t)=>({x:e.x+t.x/i.length,y:e.y+t.y/i.length}),{x:0,y:0}),l=o.x-t.x,s=o.y-t.y;return Math.abs(l)>Math.abs(s)?l>0?"right":"left":Math.abs(s)>0?s>0?"bottom":"top":u(a)},"getSelfLoopSide"),y=(0,s.K)((e,t="top",n=0,r=0)=>{let a=e.x,i=e.y-n,d=e.width/2,o=e.height/2,l=Math.max(36,Math.min(100,.8*e.width)),s=f(Math.max(r,.35*e.width),36,l),g=f(.45*Math.min(e.width,e.height),24,48);switch(t){case"bottom":{let e=i+o;return[{x:a-s/2,y:e},{x:a-s/2,y:e+g},{x:a+s/2,y:e+g},{x:a+s/2,y:e}]}case"right":{let e=a+d;return[{x:e,y:i-s/2},{x:e+g,y:i-s/2},{x:e+g,y:i+s/2},{x:e,y:i+s/2}]}case"left":{let e=a-d;return[{x:e,y:i-s/2},{x:e-g,y:i-s/2},{x:e-g,y:i+s/2},{x:e,y:i+s/2}]}default:{let e=i-o;return[{x:a-s/2,y:e},{x:a-s/2,y:e-g},{x:a+s/2,y:e-g},{x:a+s/2,y:e}]}}},"getSelfLoopPoints"),R=(0,s.K)((e,t,n="top",r=0,a={})=>{let i=e.x,d=e.y-r,o=a.width??0,l=a.height??0;switch(n){case"bottom":return{x:i,y:Math.max(...t.map(e=>e.y))+l/2+4};case"right":return{x:Math.max(...t.map(e=>e.x))+o/2+4,y:d};case"left":return{x:Math.min(...t.map(e=>e.x))-o/2-4,y:d};default:return{x:i,y:Math.min(...t.map(e=>e.y))-l/2-4}}},"getSelfLoopLabelPosition"),m=(0,s.K)((e,t=0,{mergeSelfLoops:n=!0}={})=>{let r=new Map,a=[],i=e.graph()?.rankdir;
1return e.edges().forEach(t=>{let i=e.edge(t);if(n&&i.selfLoop){let e=i.selfLoop.id;r.has(e)||r.set(e,[]),r.get(e).push({edge:i,start:t.v,end:t.w})}else a.push({edge:i,start:t.v,end:t.w})}),r.forEach(n=>{if(3!==n.length)return void n.forEach(e=>a.push(e));n.sort((e,t)=>e.edge.selfLoop.order-t.edge.selfLoop.order);let[r,d,o]=n,l=r.edge.originalEdge??d.edge.originalEdge??o.edge.originalEdge??d.edge,s=e.node(l.start);if(!s)return void n.forEach(e=>a.push(e));let g={width:d.edge.width,height:d.edge.height},c=w(e,s,n,l.start,i),h=y(s,c,t,g.width??0),f=R(s,h,c,t,g),u={...d.edge,...l,id:l.id,points:h,start:l.start,end:l.end,x:f.x,y:f.y,width:g.width,height:g.height,labelStyle:d.edge.labelStyle,fromCluster:r.edge.fromCluster??d.edge.fromCluster??o.edge.fromCluster,toCluster:r.edge.toCluster??d.edge.toCluster??o.edge.toCluster};delete u.selfLoop,delete u.originalEdge,a.push({edge:u,start:u.start,end:u.end})}),a},"getEdgesToRender"),b=(0,s.K)(async(e,t,n,o,h,f)=>{l.R.warn("Graph in recursive render:XAX",c.M(t),h);let u=t.graph().rankdir;l.R.trace("Dir in recursive render - dir:",u);let w=e.insert("g").attr("class","root");t.nodes()?l.R.info("Recursive render XXX",t.nodes()):l.R.info("No nodes found for",t),t.edges().length>0&&l.R.info("Recursive edges",t.edge(t.edges()[0]));let y=w.insert("g").attr("class","clusters"),R=w.insert("g").attr("class","edgePaths"),v=w.insert("g").attr("class","edgeLabels"),x=w.insert("g").attr("class","nodes"),E=p(n);await Promise.all(t.nodes().map(async function(e){let a=t.node(e);if(void 0!==h){let n=JSON.parse(JSON.stringify(h.clusterData));l.R.trace("Setting data for parent cluster XXX\n Node.id = ",e,"\n data=",n.height,"\nParent cluster",h.height),t.setNode(h.id,n),t.parent(e)||(l.R.trace("Setting parent",e,h.id),t.setParent(e,h.id,n))}if(l.R.info("(Insert) Node XXX"+e+": "+JSON.stringify(t.node(e))),a?.clusterNode){l.R.info("Cluster identified XBX",e,a.width,t.node(e));let{ranksep:r,nodesep:d}=t.graph();a.graph.setGraph({...a.graph.graph(),ranksep:r+25,nodesep:d});let s=await b(x,a.graph,n,o,t.node(e),f),g=s.elem;(0,i.lC)(a,g),a.diff=s.diff||0,l.R.info("New compound node after recursive render XAX",e,"width",a.width,"height",a.height),(0,i.U7)(g,a)}else t.children(e).length>0?(l.R.trace("Cluster - the non recursive path XBX",e,a.id,a,a.width,"Graph:",t),l.R.trace((0,r.dc)(a.id,t)),r.ju.set(a.id,{id:(0,r.dc)(a.id,t),node:a})):(l.R.trace("Node - the non recursive path XAX",e,x,t.node(e),u),await (0,i.on)(x,t.node(e),{config:f,dir:u}))}));let X=(0,s.K)(async()=>{let e=t.edges().map(async function(e){let n=t.edge(e.v,e.w,e.name);if(l.R.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),l.R.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),l.R.info("Fix",r.ju,"ids:",e.v,e.w,"Translating: ",r.ju.get(e.v),r.ju.get(e.w)),E&&n.selfLoop){if(1!==n.selfLoop.order)return;let e=n.id;n.id=n.selfLoop.id,await (0,a.jP)(v,n),n.id=e;return}await (0,a.jP)(v,n)});await Promise.all(e)},"processEdges");await X(),l.R.info("Graph before layout:",JSON.stringify(c.M(t))),l.R.info("############################################# XXX"),l.R.info("###                Layout                 ### XXX"),l.R.info("############################################# XXX"),(0,g.Zp)(t),l.R.info("Graph after layout:",JSON.stringify(c.M(t)));let C=0,{subGraphTitleTotalMargin:S}=(0,d.O)(f);await Promise.all((0,r.sc)(t).map(async function(e){let n=t.node(e);if(l.R.info("Position XBX => "+e+": ("+n.x,","+n.y,") width: ",n.width," height: ",n.height),n?.clusterNode)n.y+=S,l.R.info("A tainted cluster node XBX1",e,n.id,n.width,n.height,n.x,n.y,t.parent(e)),r.ju.get(n.id).node=n,(0,i.U_)(n);else if(t.children(e).length>0){l.R.info("A pure cluster node XBX1",e,n.id,n.x,n.y,n.width,n.height,t.parent(e)),n.height+=S,t.node(n.parentId);let a=n?.padding/2||0,d=n?.labelBBox?.height||0;l.R.debug("OffsetY",d-a||0,"labelHeight",d,"halfPadding",a),await (0,i.U)(y,n),r.ju.get(n.id).node=n}else{let e=t.node(n.parentId);n.y+=S/2,l.R.info("A regular node XBX1 - using the padding",n.id,"parent",n.parentId,n.width,n.height,n.x,n.y,"offsetY",n.offsetY,"parent",e,e?.offsetY,n),(0,i.U_)(n)}}));let N=S/2;return m(t,N,{mergeSelfLoops:E}
1).forEach(function({edge:e,start:i,end:d}){l.R.info("Edge "+i+" -> "+d+": "+JSON.stringify(e),e),e.points.forEach(e=>e.y+=N);let s=t.node(i),g=t.node(d),c=(0,a.Jo)(R,e,r.ju,n,s,g,o);(0,a.T_)(e,c)}),t.nodes().forEach(function(e){let n=t.node(e);l.R.info(e,n.type,n.diff),n.isGroup&&(C=n.diff)}),l.R.warn("Returning from recursive render XAX",w,C),{elem:w,diff:C}},"recursiveRender"),v=(0,s.K)(async(e,t)=>{let n=new h.T({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),d=t.select("g");(0,a.g0)(d,e.markers,e.type,e.diagramId),(0,i.gh)(),(0,a.IU)(),(0,i.IU)(),(0,r.IU)(),e.nodes.forEach(e=>{n.setNode(e.id,{...e}),e.parentId&&n.setParent(e.id,e.parentId)}),l.R.debug("Edges:",e.edges),e.edges.forEach(e=>{if(e.start===e.end){let t=e.start,r=t+"---"+t+"---1",a=t+"---"+t+"---2",i=n.node(t);n.setNode(r,{domId:r,id:r,parentId:i.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(r,i.parentId),n.setNode(a,{domId:a,id:a,parentId:i.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(a,i.parentId);let d=structuredClone(e),o=structuredClone(e),l=structuredClone(e),s=structuredClone(e);o.originalEdge=d,o.selfLoop={id:d.id,order:0},l.originalEdge=d,l.selfLoop={id:d.id,order:1},s.originalEdge=d,s.selfLoop={id:d.id,order:2},o.label="",o.arrowTypeEnd="none",o.endLabelLeft="",o.endLabelRight="",o.startLabelLeft="",o.id=t+"-cyclic-special-1",l.startLabelRight="",l.startLabelLeft="",l.endLabelLeft="",l.endLabelRight="",l.arrowTypeStart="none",l.arrowTypeEnd="none",l.id=t+"-cyclic-special-mid",s.label="",s.startLabelRight="",s.startLabelLeft="",s.arrowTypeStart="none",i.isGroup&&(o.fromCluster=t,s.toCluster=t),s.id=t+"-cyclic-special-2",s.arrowTypeStart="none",n.setEdge(t,r,o,t+"-cyclic-special-0"),n.setEdge(r,a,l,t+"-cyclic-special-1"),n.setEdge(a,t,s,t+"-cyclic-special-2")}else n.setEdge(e.start,e.end,{...e},e.id)}),l.R.warn("Graph at first:",JSON.stringify(c.M(n))),(0,r.OS)(n),l.R.warn("Graph after XAX:",JSON.stringify(c.M(n)));let s=(0,o.D7)();await b(d,n,e.type,e.diagramId,void 0,s)},"render")},97628:(e,t,n)=>{n.d(t,{IU:()=>g,OS:()=>R,dc:()=>w,ju:()=>o,sc:()=>v});var r=n(44961),a=n(53367),i=n(77959),d=n(3072),o=new Map,l=new Map,s=new Map,g=(0,a.K)(()=>{l.clear(),s.clear(),o.clear()},"clear"),c=(0,a.K)((e,t)=>{let n=l.get(t)||[];return r.R.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),h=(0,a.K)((e,t)=>{let n=l.get(t)||[];return r.R.info("Descendants of ",t," is ",n),r.R.info("Edge is ",e),e.v!==t&&e.w!==t&&(n?n.includes(e.v)||c(e.v,t)||c(e.w,t)||n.includes(e.w):(r.R.debug("Tilt, ",t,",not in descendants"),!1))},"edgeInCluster"),f=(0,a.K)((e,t,n,a)=>{r.R.warn("Copying children of ",e,"root",a,"data",t.node(e),a);let i=t.children(e)||[];e!==a&&i.push(e),r.R.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(i=>{if(t.children(i).length>0)f(i,t,n,a);else{let d=t.node(i);r.R.info("cp ",i," to ",a," with parent ",e),n.setNode(i,d),a!==t.parent(i)&&(r.R.warn("Setting parent",i,t.parent(i)),n.setParent(i,t.parent(i))),e!==a&&i!==e?(r.R.debug("Setting parent",i,e),n.setParent(i,e)):(r.R.info("In copy ",e,"root",a,"data",t.node(e),a),r.R.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==a,"node!==clusterId",i!==e));let o=t.edges(i);r.R.debug("Copying Edges",o),o.forEach(i=>{r.R.info("Edge",i);let d=t.edge(i.v,i.w,i.name);r.R.info("Edge data",d,a);try{if(h(i,a)){let e=l.get(a)||[],o=e.includes(i.v)||c(i.v,a)||i.v===a,s=e.includes(i.w)||c(i.w,a)||i.w===a;if(o&&s)r.R.info("Copying as ",i.v,i.w,d,i.name),n.setEdge(i.v,i.w,d,i.name),r.R.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]));else{let e=o?a:i.v,n=s?a:i.w;r.R.info("Rebinding cross-boundary edge as ",e,n,d,i.name),t.setEdge(e,n,d,i.name)}}else r.R.info("Skipping copy of edge ",i.v,"--\x3e",i.w," rootId: ",a," clusterId:",e)}catch(e){r.R.error(e)}})}r.R.debug("Removing node",i),t.removeNode(i)})},"copy"),u=(0,a.K)((e,t)=>{let n=t.children(e),r=[...n];for(let a of n)s.set(a,e),r=[...r,...u(a,t)];return r},"extractDescendants"),p=(0,a.K)((e,t,n)=>{let r=e.edges().filter(e=>e.v===t||e.w===t),a=e.edges().filter(e=>e.v===n||e.w===n),i=r.map(e=>({v:e.v===t?n:e.v,w:e.w===t?t:e.w})),d=a.map(e=>({v:e.v,w:e.w}));return i.filter(e=>d.some(t=>e.v===t.v&&e.w===t.w))},"findCommonEdges"),w=(0,a.K)((e,t,n)=>{let a,i=t.children(e);if(r.R.trace("Searching children of id ",e,i),i.length<1)return e;for(let e of i){let r=w(e,t,n),i=p(t,n,r);if(r)if(!(i.length>0))return r;else a=r}return a},"findNonClusterChild"),y=(0,a.K)(e=>o.has(e)&&o.get(e).externalConnections&&o.has(e)?o.get(e).id:e,"getAnchorId"),R=(0,a.K)((e,t)=>{if(!e||t>10)return void r.R.debug("Opting out, no graph ");
1for(let t of(r.R.debug("Opting in, graph "),e.nodes().forEach(function(t){e.children(t).length>0&&(r.R.warn("Cluster identified",t," Replacement id in edges: ",w(t,e,t)),l.set(t,u(t,e)),o.set(t,{id:w(t,e,t),clusterData:e.node(t)}))}),e.nodes().forEach(function(t){let n=e.children(t),a=e.edges();n.length>0?(r.R.debug("Cluster identified",t,l),a.forEach(e=>{c(e.v,t)^c(e.w,t)&&(r.R.warn("Edge: ",e," leaves cluster ",t),r.R.warn("Descendants of XXX ",t,": ",l.get(t)),o.get(t).externalConnections=!0)})):r.R.debug("Not a cluster ",t,l)}),o.keys())){let n=o.get(t).id,r=e.parent(n);r!==t&&o.has(r)&&!o.get(r).externalConnections&&(o.get(t).id=r);let a=e.edges().some(e=>e.v===t);if(n&&o.get(t)?.externalConnections&&a&&x(e,n,t)){let r=E(e,t,e.parent(n));r&&(o.get(t).id=r)}}e.edges().forEach(function(t){let n=e.edge(t);r.R.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),r.R.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let a=t.v,i=t.w;if(r.R.warn("Fix XXX",o,"ids:",t.v,t.w,"Translating: ",o.get(t.v)," --- ",o.get(t.w)),o.get(t.v)||o.get(t.w)){if(r.R.warn("Fixing and trying - removing XXX",t.v,t.w,t.name),a=y(t.v),i=y(t.w),e.removeEdge(t.v,t.w,t.name),a!==t.v){let r=e.parent(a);o.get(r).externalConnections=!0,n.fromCluster=t.v}if(i!==t.w){let r=e.parent(i);o.get(r).externalConnections=!0,n.toCluster=t.w}r.R.warn("Fix Replacing with XXX",a,i,t.name),e.setEdge(a,i,n,t.name)}}),r.R.warn("Adjusted Graph",d.M(e)),m(e,0),r.R.trace(o)},"adjustClustersAndEdges"),m=(0,a.K)((e,t)=>{if(r.R.warn("extractor - ",t,d.M(e),e.children("D")),t>10)return void r.R.error("Bailing out");let n=e.nodes(),a=!1;for(let t of n){let n=e.children(t);a=a||n.length>0}if(!a)return void r.R.debug("Done, no node has children",e.nodes());for(let a of(r.R.debug("Nodes = ",n,t),n))if(r.R.debug("Extracting node",a,o,o.has(a)&&!o.get(a).externalConnections,!e.parent(a),e.node(a),e.children("D")," Depth ",t),o.has(a))if(o.get(a)?.clusterData?.explicitDir&&e.children(a)&&e.children(a).length>0){r.R.warn("Cluster with explicit dir, creating subgraph for children",a,t);let n=o.get(a).clusterData.dir,l=new i.T({multigraph:!0,compound:!0}).setGraph({rankdir:n,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});f(a,e,l,a);let s=e.node(a)||{};e.setNode(a,{...s,clusterNode:!0,id:a,clusterData:o.get(a).clusterData,label:o.get(a).label,graph:l}),r.R.warn("Subgraph for cluster with explicit dir created:",a,d.M(l))}else if(!o.get(a).externalConnections&&e.children(a)&&e.children(a).length>0){r.R.warn("Cluster without external connections, without a parent and with children",a,t);let n="TB"===e.graph().rankdir?"LR":"TB";o.get(a)?.clusterData?.dir&&(n=o.get(a).clusterData.dir,r.R.warn("Fixing dir",o.get(a).clusterData.dir,n));let l=new i.T({multigraph:!0,compound:!0}).setGraph({rankdir:n,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});f(a,e,l,a);let s=e.node(a)||{};e.setNode(a,{...s,clusterNode:!0,id:a,clusterData:o.get(a).clusterData,label:o.get(a).label,graph:l}),r.R.debug("Old graph after copy",d.M(e))}else r.R.warn("Cluster ** ",a," **not meeting the criteria !externalConnections:",!o.get(a).externalConnections," no parent: ",!e.parent(a)," children ",e.children(a)&&e.children(a).length>0,e.children("D"),t),r.R.debug(o);else r.R.debug("Not a cluster",a,t);for(let a of(n=e.nodes(),r.R.warn("New list of nodes",n),n)){let n=e.node(a);r.R.warn(" Now next level",a,n),n?.clusterNode&&m(n.graph,t+1)}},"extractor"),b=(0,a.K)((e,t)=>{if(0===t.length)return[];let n=Object.assign([],t);return t.forEach(t=>{let r=e.children(t),a=b(e,r);n=[...n,...a]}),n},"sorter"),v=(0,a.K)(e=>b(e,e.children()),"sortNodesByHierarchy"),x=(0,a.K)((e,t,n)=>{let r=e.parent(t);for(;r&&r!==n;){let t=o.get(r);if(t&&!t.externalConnections)return!0;r=e.parent(r)}return!1},"isNodeInExtractableCluster"),E=(0,a.K)((e,t,n)=>{for(let r of e.children(t)??[]){if(r===n||c(r,n))continue;let a=w(r,e,t);if(a&&!x(e,a,t))return a}return null},"findSafeAnchorNode")}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.