memor-code-cli 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -465,7 +465,9 @@ Ground every claim in <diff_hunks> and <context>. Never invent. Plain words, no
465
465
  cacheDirty = true;
466
466
  }
467
467
  }
468
- catch { /* non-fatal */ }
468
+ catch (err) {
469
+ console.error(`[memor] LLM summary failed for ${file}:`, err instanceof Error ? err.message : String(err));
470
+ }
469
471
  }));
470
472
  // Persist briefs so they stay stable across runs.
471
473
  if (cacheDirty) {
@@ -1 +1 @@
1
- {"version":3,"file":"buildBranchStory.js","sourceRoot":"","sources":["../../src/analysis/buildBranchStory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildBranchStory.js","sourceRoot":"","sources":["../../src/analysis/buildBranchStory.ts"],"names":[],"mappings":"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"}
package/dist/anthropic.js CHANGED
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createAnthropicClient = createAnthropicClient;
7
7
  const sdk_1 = __importDefault(require("@anthropic-ai/sdk"));
8
- const PROXY_BASE = "https://api.memor.dev";
8
+ const PROXY_BASE = "https://memor-proxy.vercel.app";
9
9
  const PROXY_SENTINEL = "memor-proxy";
10
10
  function createAnthropicClient(apiKey) {
11
11
  if (apiKey && apiKey !== PROXY_SENTINEL) {
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../src/anthropic.ts"],"names":[],"mappings":";;;;;AAKA,sDAKC;AAVD,4DAA0C;AAE1C,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAC3C,MAAM,cAAc,GAAG,aAAa,CAAC;AAErC,SAAgB,qBAAqB,CAAC,MAAe;IACnD,IAAI,MAAM,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QACxC,OAAO,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../src/anthropic.ts"],"names":[],"mappings":";;;;;AAKA,sDAKC;AAVD,4DAA0C;AAE1C,MAAM,UAAU,GAAG,gCAAgC,CAAC;AACpD,MAAM,cAAc,GAAG,aAAa,CAAC;AAErC,SAAgB,qBAAqB,CAAC,MAAe;IACnD,IAAI,MAAM,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QACxC,OAAO,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC"}
@@ -24,7 +24,7 @@ Error generating stack: `+i.message+`
24
24
  `]},o):a?(0,Pi.jsxs)("span",{"data-hl":p,style:{...f,color:"#8b949e",fontStyle:"italic"},children:[i,`
25
25
  `]},o):s||l||i.startsWith(" ")?(0,Pi.jsxs)("span",{"data-hl":p,style:f,children:[(0,Pi.jsx)("span",{style:{color:s?"#3fb950":l?"#f85149":"#484f58"},children:i[0]}),LB(i.slice(1)),`
26
26
  `]},o):(0,Pi.jsxs)("span",{"data-hl":p,style:{...f,color:"#c9d1d9"},children:[LB(i),`
27
- `]},o)})}function Mr({diffText:e,highlight:t,style:n}){return(0,Pi.jsx)("pre",{style:{margin:0,padding:"10px 14px",fontSize:11.5,fontFamily:"JetBrains Mono, monospace",lineHeight:1.65,whiteSpace:"pre",...n},children:(0,Pi.jsx)("code",{style:sae,children:lae(e,t)})})}var Pi,OB,ba,aae,sae,Dv=Z(()=>{"use strict";Pi=xt(In()),OB=/(\/\/[^\n]*|\/\*[\s\S]*?\*\/)|("(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|`(?:\\.|[^`\\])*`)|(\b\d[\w.]*\b)|\b(const|let|var|function|return|if|else|for|while|do|switch|case|break|continue|new|class|extends|export|import|from|default|async|await|yield|try|catch|finally|throw|typeof|instanceof|in|of|void|delete|this|super|null|undefined|true|false|static|get|set|public|private|protected|readonly|interface|type|enum|implements|namespace|declare|as|satisfies)\b|([A-Za-z_$][\w$]*)(?=\s*\()|\b([A-Z][\w$]*)\b|([A-Za-z_$][\w$]*)|([{}()[\].;,:=+\-*/%<>!&|?~^@]+)|(\s+)/g,ba={comment:"#6e7681",string:"#a5d6ff",number:"#79c0ff",keyword:"#ff7b72",func:"#d2a8ff",type:"#ffa657",punct:"#8b949e"};aae={display:"block",minWidth:"100%",width:"max-content",boxSizing:"border-box"},sae={display:"inline-block",minWidth:"100%",verticalAlign:"top"}});function qB(e,t,n,i={}){let o=i.color??"#334155",r={type:hr.ArrowClosed,width:10,height:10,color:o};return{id:e,source:t,target:n,type:"smoothstep",markerEnd:r,style:{stroke:o,strokeWidth:1.2,opacity:.5,strokeDasharray:i.dashed?"4 3":void 0},label:i.label,labelStyle:{fontSize:9,fill:o},labelBgStyle:{fill:"#0f172a",fillOpacity:.85},labelBgPadding:[4,2],labelBgBorderRadius:3}}function Hp(e,t,n){if(!e||!t)return e;let i=new Set,o=/([A-Za-z_$][\w$]*)\s*\(/g,r;for(;(r=o.exec(t))!==null;)i.add(r[1]);if(i.size===0)return e;let a=/[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*/g,s=[],l=0,u=0,d;for(;(d=a.exec(e))!==null;){let f=d[0],p=f.split("."),h=p[p.length-1],y=p.length>1;i.has(h)&&(!y&&!/[A-Z]/.test(f)||(d.index>l&&s.push(e.slice(l,d.index)),s.push((0,c.jsx)("em",{onClick:n?()=>n(f):void 0,style:{fontStyle:"italic",...n?{borderBottom:"1px dotted currentColor",cursor:"pointer",paddingBottom:.5}:{}},children:f},u++)),l=d.index+f.length))}return s.length===0?e:(l<e.length&&s.push(e.slice(l)),s)}function uae({source:e}){let t=YB[e]??"#475569";return(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.06em",color:t,background:t+"18",border:`1px solid ${t}44`,borderRadius:3,padding:"1px 4px",fontFamily:"monospace",textTransform:"uppercase"},children:e})}function HB({path:e}){if(e.endsWith("/"))return(0,c.jsx)("span",{className:"l1-of-ext-folder",children:dae});let t=e.split(".").pop()?.toLowerCase()??"",i={ts:"devicon-typescript-plain colored",tsx:"devicon-typescript-plain colored",js:"devicon-javascript-plain colored",jsx:"devicon-javascript-plain colored",py:"devicon-python-plain colored",go:"devicon-go-plain colored",rs:"devicon-rust-plain",prisma:"devicon-prisma-original",vue:"devicon-vuejs-plain colored",svelte:"devicon-svelte-plain colored"}[t];return i?(0,c.jsx)("i",{className:`${i} l1-of-ext-icon`}):null}function jB(e,t){if(e.length<=t)return[e];let n=e.split(" "),i=[],o="";for(let r of n){let a=o?`${o} ${r}`:r;a.length<=t?o=a:(o&&i.push(o),o=r)}return o&&i.push(o),i}function $p({x:e,y:t,title:n,lines:i,svgW:o=9999}){let a=[];n&&a.push({t:n,bold:!0});for(let y of i)for(let x of jB(y,27))a.push({t:x,bold:!1});if(a.length===0)return null;let s=220,l=16,u=10,d=8,f=d*2+a.length*l,p=e+s>(o??680)-4?e-s-4:e,h=t-f<8?t+8:t-f-4;return(0,c.jsxs)("g",{pointerEvents:"none",children:[(0,c.jsx)("rect",{x:p,y:h,width:s,height:f,rx:3,fill:"#000",stroke:"#333",strokeWidth:.5,opacity:.92}),a.map((y,x)=>(0,c.jsx)("text",{x:p+u,y:h+d+(x+1)*l-2,fill:y.bold?"#fff":"#aaa",fontSize:12,fontWeight:y.bold?600:400,fontFamily:"JetBrains Mono, monospace",children:y.t},x))]})}function GB(e,t,n){let i=Math.floor((t-22)/n);return e.length>i?e.slice(0,i-1)+"\u2026":e}function hae({data:e,onDrill:t,showAll:n=!1,onNodeSelect:i}){let[o,r]=(0,J.useState)(null),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(null),d=i?null:l,f=V=>{i?i(V):u(V)},[p,h]=(0,J.useState)(null);(0,J.useEffect)(()=>{let V=fe=>{fe.key==="Escape"&&u(null)};return window.addEventListener("keydown",V),()=>window.removeEventListener("keydown",V)},[]);let y=e.textSummary,x=y?.systems.primary??[],S=y?.systems.secondary??[],b=(y?.systems.support??[]).sort((V,fe)=>fe.incomingCount-V.incomingCount),v=e.analysis.systems.length,g,m,w;if(n||v<=UB)g=x,m=S,w=b;else{g=x;let V=UB-g.length;m=S.slice(0,Math.max(V,0)),w=[]}let M=[];if(g.length&&M.push({label:Fp.primary,systems:g,tier:"primary"}),m.length&&M.push({label:Fp.secondary,systems:m,tier:"secondary"}),w.length&&M.push({label:Fp.support,systems:w,tier:"support"}),M.length===0)return null;let E=g.length+m.length+w.length;function N(V){if(V.length<=pae)return[V];let fe=Math.ceil(V.length/2);return[V.slice(0,fe),V.slice(fe)]}function A(V,fe){return V*fe+(V-1)*Ip}let $=[...N(g).map(V=>A(V.length,Js.primary.w)),...N(m).map(V=>A(V.length,Js.secondary.w)),...N(w).map(V=>A(V.length,Js.support.w))],D=Math.max(...$,400)+Ao*2,T=[],j=[],_=Ao,L=0;for(let V of M){let{w:fe}=Js[V.tier],he=N(V.systems);j.push(_+11);let Ge=_+FB;for(let Ie=0;Ie<he.length;Ie++){let ct=he[Ie],et=A(ct.length,fe),ft=Math.max(Ao,(D-et)/2);ct.forEach((jt,en)=>{T.push({sys:jt,x:ft+en*(fe+Ip),y:Ge,tier:V.tier,nodeColor:IB[L++%IB.length]})}),Ie<he.length-1&&(Ge+=kr+fae)}_=Ge+kr+Ov}let R=_-Ov+Ao,I=100,O=new Map;for(let V of T){let fe=e.synthesisResult?.systems.find(he=>he.id===V.sys.id);if(fe)for(let he of fe.uses_infra){let Ge=he.target.toLowerCase();O.has(Ge)||O.set(Ge,{name:he.target,usedByIds:[]}),O.get(Ge).usedByIds.push(V.sys.id)}}let Y=[...O.values()],B=R+Ov*.7,U=B+FB,H=Y.length*I+Math.max(0,Y.length-1)*Ip,te=Math.max(Ao,(D-H)/2),oe=Y.map((V,fe)=>({...V,x:te+fe*(I+Ip),y:U})),de=Y.length>0?U+kr+Ao:R,ue=new Map;for(let V of T){let fe=Js[V.tier].w;ue.set(V.sys.id,{cx:V.x+fe/2,cy:V.y+kr})}let pe=new Map;for(let V of oe)pe.set(V.name.toLowerCase(),{cx:V.x+I/2,cy:V.y});let K=new Set(T.map(V=>V.sys.id)),ge={primary:0,secondary:1,support:2},we=new Map(T.map(V=>[V.sys.id,V.tier])),Ce=new Map(T.map(V=>[V.sys.id,V.nodeColor])),ie=new Map(e.analysis.systems.map(V=>[V.id,V])),ne=[],Me=new Set;for(let{sys:V,tier:fe}of T)for(let he of ie.get(V.id)?.connections?.outgoing??[]){if(he.confidence<Gp||!K.has(he.targetSystemId))continue;let Ge=we.get(he.targetSystemId);if(!Ge)continue;let Ie=ge[fe]??0,ct=ge[Ge]??0;if(V.id===he.targetSystemId)continue;let et=`${V.id}>${he.targetSystemId}`;if(Me.has(et))continue;Me.add(et);let ft=ue.get(V.id),jt=ue.get(he.targetSystemId),en=Ce.get(V.id)??"#888",Je=he.confidence>=.8?2:he.confidence>=.6?1.4:1;if(ft&&jt){let rn=ft.cy<=jt.cy;ne.push({srcId:V.id,tgtId:he.targetSystemId,x1:ft.cx,cy1:ft.cy,x2e:jt.cx,cy2:rn?jt.cy-kr:jt.cy,color:en,markerId:`sarrow-${V.id.replace(/[^a-z0-9]/gi,"_")}`,thickness:Je})}}let me=new Set;if(o){me.add(o);for(let V of ne)V.srcId===o&&me.add(V.tgtId),V.tgtId===o&&me.add(V.srcId)}function Oe(V){return o?me.has(V)?1:.15:1}function Ve(V,fe){return o?V===o||fe===o?.9:.05:.5}return(0,c.jsxs)("div",{style:{position:"relative",width:"100%",height:"100%",background:"#000"},children:[(0,c.jsxs)("svg",{viewBox:`0 0 ${D} ${de}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"100%",maxHeight:"100%",background:"#000"},xmlns:"http://www.w3.org/2000/svg",onMouseLeave:()=>r(null),children:[(0,c.jsx)("defs",{children:T.map(V=>(0,c.jsx)("marker",{id:`sarrow-${V.sys.id.replace(/[^a-z0-9]/gi,"_")}`,viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"7",markerHeight:"7",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 2 L 8 5 L 0 8 z",fill:V.nodeColor})},V.sys.id))}),E<v&&(0,c.jsxs)("text",{x:D-Ao,y:11,textAnchor:"end",fill:"#484848",fontSize:9,fontFamily:"JetBrains Mono, monospace",children:["top ",E," of ",v," systems shown"]}),ne.map((V,fe)=>{let he=o&&(V.srcId===o||V.tgtId===o);return(0,c.jsx)("line",{x1:V.x1,y1:V.cy1,x2:V.x2e,y2:V.cy2,stroke:V.color,strokeWidth:he?V.thickness:.5,opacity:Ve(V.srcId,V.tgtId),markerEnd:`url(#${V.markerId})`},fe)}),oe.flatMap(V=>V.usedByIds.map(fe=>{let he=ue.get(fe),Ge=pe.get(V.name.toLowerCase());if(!he||!Ge)return null;let Ie=o===fe,ct=a===V.name.toLowerCase(),et=Ie||ct,ft=!!(o||a);return(0,c.jsx)("line",{x1:he.cx,y1:he.cy,x2:Ge.cx,y2:Ge.cy,stroke:"#1e3a3a",strokeWidth:et?1.4:.6,strokeDasharray:"3 2",opacity:ft?et?.7:.04:.35},`infra-${fe}-${V.name}`)})),M.map((V,fe)=>{let{w:he}=Js[V.tier],Ge=T.filter(Ie=>Ie.tier===V.tier);return(0,c.jsxs)("g",{children:[(0,c.jsx)("text",{x:Ao,y:j[fe],fill:"#383838",fontSize:8.5,fontWeight:700,letterSpacing:1.8,fontFamily:"JetBrains Mono, monospace",children:V.label}),Ge.map(({sys:Ie,x:ct,y:et})=>{let ft=Ie.incomingCount===0,jt=GB(Ie.name,he,7.2),en=GB(Ie.description??Ie.type.replace(/-/g," "),he,5.4),Je=(ie.get(Ie.id)?.connections?.outgoing??[]).filter(Di=>Di.confidence>=Gp&&K.has(Di.targetSystemId)).length,rn=Ie.incomingCount>0&&Je>0?`used by ${Ie.incomingCount} \xB7 uses ${Je}`:Ie.incomingCount>0?`used by ${Ie.incomingCount}`:Je>0?`uses ${Je}`:"",Ei=Oe(Ie.id);return(0,c.jsxs)("g",{opacity:Ei,onClick:()=>f(Ie.id),onMouseEnter:Di=>{r(Ie.id),h({x:ct+he/2,y:et})},onMouseLeave:()=>{r(null),h(null)},style:{cursor:"pointer",transition:"opacity 0.15s"},children:[(0,c.jsx)("rect",{x:ct,y:et,width:he,height:kr,rx:4,fill:"#111",stroke:"#1e1e1e",strokeWidth:1}),(0,c.jsx)("text",{x:ct+9,y:et+20,fill:"#c8c8c8",fontSize:10,fontWeight:600,fontFamily:"JetBrains Mono, monospace",children:jt}),(0,c.jsx)("text",{x:ct+9,y:et+34,fill:"#484848",fontSize:8,children:en}),rn&&(0,c.jsx)("text",{x:ct+9,y:et+52,fill:"#333",fontSize:7.5,fontFamily:"JetBrains Mono, monospace",children:rn})]},Ie.id)})]},V.tier)}),oe.length>0&&(0,c.jsxs)("g",{children:[(0,c.jsx)("text",{x:Ao,y:B+11,fill:"#1e3a3a",fontSize:8.5,fontWeight:700,letterSpacing:1.8,fontFamily:"JetBrains Mono, monospace",children:"EXTERNAL"}),oe.map(V=>{let fe=a===V.name.toLowerCase(),he=o&&!V.usedByIds.includes(o),Ge=a&&a!==V.name.toLowerCase(),Ie=he||Ge?.1:1,ct=V.usedByIds.map(et=>ie.get(et)?.name??et);return(0,c.jsxs)("g",{opacity:Ie,style:{cursor:"pointer",transition:"opacity 0.15s"},onMouseEnter:()=>{s(V.name.toLowerCase()),r(null)},onMouseLeave:()=>s(null),children:[(0,c.jsx)("rect",{x:V.x,y:V.y,width:I,height:kr,rx:4,fill:fe?"rgba(30,58,58,0.25)":"transparent",stroke:fe?"#2a6a6a":"#1e3a3a",strokeWidth:1,strokeDasharray:"4 2"}),(0,c.jsx)("text",{x:V.x+9,y:V.y+22,fill:fe?"#3a8a8a":"#2a5a5a",fontSize:10,fontWeight:600,fontFamily:"JetBrains Mono, monospace",children:V.name.length>12?V.name.slice(0,11)+"\u2026":V.name}),(0,c.jsx)("text",{x:V.x+9,y:V.y+38,fill:"#1e3a3a",fontSize:7.5,children:"external service"}),(0,c.jsx)("text",{x:V.x+9,y:V.y+52,fill:"#1a3a3a",fontSize:7.5,fontFamily:"JetBrains Mono, monospace",children:V.usedByIds.length===1?"used by 1":`used by ${V.usedByIds.length}`}),(0,c.jsx)("rect",{x:V.x,y:V.y,width:I,height:kr,rx:4,fill:"transparent"}),fe&&(0,c.jsx)($p,{x:V.x+I/2,y:V.y,title:V.name,lines:["Used by: "+ct.join(", ")],svgW:D})]},V.name)})]}),o&&p&&(()=>{let V=T.find(he=>he.sys.id===o),fe=V?.sys.description??"";return fe?(0,c.jsx)($p,{x:p.x,y:p.y,title:V?.sys.name,lines:[fe],svgW:D}):null})()]}),d&&(0,c.jsx)(VB,{sysId:d,data:e,onClose:()=>u(null),onNodeClick:V=>u(V),onDrillFull:(V,fe)=>{u(null),t(V,fe)}})]})}function gae({data:e,onDrill:t,onClose:n}){let[i,o]=(0,J.useState)(.9),[r,a]=(0,J.useState)({x:0,y:0}),[s,l]=(0,J.useState)(!1),[u,d]=(0,J.useState)(null),f=(0,J.useRef)(null),p=(0,J.useRef)(null);(0,J.useEffect)(()=>{let v=g=>{g.key==="Escape"&&n()};return window.addEventListener("keydown",v),()=>window.removeEventListener("keydown",v)},[n]);let h=(0,J.useCallback)(v=>{if(!p.current)return;let g=p.current.getBoundingClientRect(),m=v.clientX-g.left,w=v.clientY-g.top,M=v.deltaY<0?1.12:1/1.12;o(E=>{let N=Math.max(.15,Math.min(5,E*M));return a(A=>({x:m-(m-A.x)*(N/E),y:w-(w-A.y)*(N/E)})),N})},[]),y=(0,J.useCallback)(v=>{f.current={startX:v.clientX,startY:v.clientY,panX:r.x,panY:r.y},l(!0)},[r]),x=(0,J.useCallback)(v=>{f.current&&a({x:f.current.panX+(v.clientX-f.current.startX),y:f.current.panY+(v.clientY-f.current.startY)})},[]),S=(0,J.useCallback)(()=>{l(!1),f.current=null},[]),b={background:"none",border:"1px solid #1e1e1e",color:"#484848",borderRadius:4,padding:"3px 8px",cursor:"pointer",fontSize:13,lineHeight:1,fontFamily:"monospace"};return(0,c.jsx)("div",{style:{position:"fixed",inset:0,zIndex:2e3,background:"#000000bb"},onClick:n,children:(0,c.jsxs)("div",{style:{position:"absolute",inset:32,background:"#000",border:"1px solid #1a1a1a",borderRadius:8,overflow:"hidden",display:"flex",flexDirection:"column"},onClick:v=>v.stopPropagation(),children:[(0,c.jsxs)("div",{style:{padding:"8px 16px",borderBottom:"1px solid #1a1a1a",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,c.jsx)("span",{style:{fontSize:10,color:"#383838",fontWeight:700,letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace"},children:"Architecture Map"}),(0,c.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[(0,c.jsx)("button",{onClick:()=>o(v=>Math.min(5,v*1.25)),style:b,children:"+"}),(0,c.jsxs)("span",{style:{fontSize:10,color:"#484848",fontFamily:"monospace",minWidth:38,textAlign:"center"},children:[Math.round(i*100),"%"]}),(0,c.jsx)("button",{onClick:()=>o(v=>Math.max(.15,v/1.25)),style:b,children:"\u2212"}),(0,c.jsx)("button",{onClick:()=>{o(.9),a({x:0,y:0})},style:{...b,marginLeft:4,padding:"3px 10px"},children:"Reset"}),(0,c.jsx)("button",{onClick:n,style:{...b,marginLeft:8,fontSize:16,padding:"1px 8px",color:"#6e7681"},children:"\xD7"})]})]}),(0,c.jsx)("div",{ref:p,style:{flex:1,overflow:"hidden",cursor:s?"grabbing":"grab"},onWheel:h,onMouseDown:y,onMouseMove:x,onMouseUp:S,onMouseLeave:S,children:(0,c.jsx)("div",{style:{width:"100%",height:"100%",transform:`translate(${r.x}px, ${r.y}px) scale(${i})`,transformOrigin:"0 0",userSelect:"none"},children:(0,c.jsx)(hae,{data:e,showAll:!0,onDrill:(v,g)=>{n(),t(v,g)},onNodeSelect:v=>d(v)})})}),u&&(0,c.jsx)(VB,{sysId:u,data:e,onClose:()=>d(null),onNodeClick:v=>d(v),onDrillFull:(v,g)=>{d(null),n(),t(v,g)}})]})})}function Zs({filePath:e,onClose:t}){return(0,c.jsx)("div",{className:"sdm-backdrop",onClick:t,style:{zIndex:3e3},children:(0,c.jsx)("div",{className:"sdm-modal",onClick:n=>n.stopPropagation(),style:{maxWidth:1040,width:"92vw",height:"88vh",overflow:"hidden",display:"flex",flexDirection:"column"},children:(0,c.jsx)("div",{style:{flex:1,overflow:"hidden"},children:(0,c.jsx)(Bv,{filePath:e,onClose:t})})})})}function VB({sysId:e,data:t,onClose:n,onNodeClick:i,onDrillFull:o}){let[r,a]=(0,J.useState)(null);(0,J.useEffect)(()=>{let f=p=>{if(p.key==="Escape"){if(r){a(null);return}n()}};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[n,r]);let s=t.analysis.systems.find(f=>f.id===e);if(!s)return null;let l=t.synthesisResult?.systems.find(f=>f.id===e),u=Fp[s.systemTier]??s.systemTier.toUpperCase(),d=(s.entryPoints??[]).slice(0,1);return(0,Up.createPortal)((0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("div",{className:"sdm-backdrop",onClick:n,children:(0,c.jsxs)("div",{className:"sdm-modal",onClick:f=>f.stopPropagation(),children:[(0,c.jsx)("div",{className:"sdm-header",children:(0,c.jsxs)("div",{className:"sdm-header-left",children:[(0,c.jsxs)("div",{className:"sdm-header-top-row",children:[(0,c.jsx)("span",{className:"sdm-tier-badge",children:u}),s.type&&s.type!=="unknown"&&(0,c.jsx)("span",{className:"sdm-badge",children:s.type}),s.packageArchetype&&(0,c.jsx)("span",{className:"sdm-badge",children:s.packageArchetype}),(s.detectedTech??[]).slice(0,3).map(f=>(0,c.jsx)("span",{className:"sdm-badge",children:f},f))]}),(0,c.jsx)("div",{className:"sdm-name",children:s.name}),s.description&&(0,c.jsx)("div",{className:"sdm-desc",children:s.description}),d.length>0&&(0,c.jsx)("div",{className:"sdm-ep-strip",style:{alignItems:"flex-start",marginTop:10},children:d.map((f,p)=>(0,c.jsxs)("div",{className:"sdm-ep-chip",title:f.reason??f.path,children:[(0,c.jsx)(HB,{path:f.path}),(0,c.jsx)("span",{className:"sdm-ep-path",children:f.path})]},p))}),s.blocks&&s.blocks.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:["Files \xB7 ",s.blocks.length," ",(0,c.jsx)("span",{style:{color:"#334155",fontWeight:400,fontSize:8},children:"\xB7 click to X-Ray"})]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:s.blocks.map((f,p)=>(0,c.jsxs)("button",{onClick:()=>a(f.path),style:{display:"inline-flex",alignItems:"center",gap:4,fontSize:10,fontFamily:"monospace",color:"#94a3b8",background:"rgba(255,255,255,0.05)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:4,padding:"2px 7px",cursor:"pointer",whiteSpace:"nowrap"},onMouseEnter:h=>{h.currentTarget.style.background="rgba(99,102,241,0.15)",h.currentTarget.style.borderColor="rgba(99,102,241,0.4)",h.currentTarget.style.color="#c7d2fe"},onMouseLeave:h=>{h.currentTarget.style.background="rgba(255,255,255,0.05)",h.currentTarget.style.borderColor="rgba(255,255,255,0.08)",h.currentTarget.style.color="#94a3b8"},children:[(0,c.jsx)(HB,{path:f.path}),f.name]},p))})]}),l&&l.owns_models.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:["Domain Models \xB7 ",l.owns_models.length]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:l.owns_models.map(f=>(0,c.jsx)("span",{style:{fontSize:10,fontFamily:"monospace",color:"#c4b5fd",background:"rgba(139,92,246,0.12)",border:"1px solid rgba(139,92,246,0.25)",borderRadius:4,padding:"2px 7px"},children:f},f))})]}),l&&l.uses_infra.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:"Infra Dependencies"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:l.uses_infra.map(f=>(0,c.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:10,fontFamily:"monospace",color:"#94a3b8",background:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:4,padding:"2px 7px"},children:[f.target,(0,c.jsx)(uae,{source:f.source})]},f.target))})]})]})}),(0,c.jsx)("div",{className:"sdm-graph",children:(0,c.jsx)(mae,{data:t,focusId:e,onNodeClick:i})}),(0,c.jsx)("div",{className:"sdm-modal-footer",children:(0,c.jsx)("button",{className:"sdm-drill-btn",onClick:()=>o(s.id,s.name),children:"Open full detail \u2192"})})]})}),r&&(0,c.jsx)(Zs,{filePath:r,onClose:()=>a(null)})]}),document.body)}function mae({data:e,focusId:t,onNodeClick:n}){let i=e.analysis.systems.find(H=>H.id===t),[o,r]=(0,J.useState)(null);if(!i)return null;let a=new Map(e.analysis.systems.map(H=>[H.id,H])),s=5,l=(i.connections?.incoming??[]).filter(H=>H.confidence>=Gp),u=(i.connections?.outgoing??[]).filter(H=>H.confidence>=Gp),d=new Set(u.map(H=>H.targetSystemId)),f=l.filter(H=>!d.has(H.targetSystemId)),p=f.slice(0,s),h=u.slice(0,6),y=f.length-p.length,x=p.length>0||h.length>0,S=180,b=96,v=180,g=50,m=10,w=68,M=20,E=38,N="#4a9eff",A=i.description??i.type??"",$=jB(A,26).slice(0,2),D=p.length*g+Math.max(0,p.length-1)*m,T=h.length*g+Math.max(0,h.length-1)*m,j=Math.max(b,D,T)+M*2,_=j+E,L=x?M+v+w+S+w+v+M:M+S+M,R=M,I=x?M+v+w:M,O=x?I+S+w:0,Y=(j-b)/2,B=Y+b/2;function U(H,te){let oe=te*g+Math.max(0,te-1)*m;return(j-oe)/2+H*(g+m)}return(0,c.jsxs)("svg",{viewBox:`0 0 ${L} ${_}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"100%",maxHeight:"100%"},children:[(0,c.jsxs)("defs",{children:[(0,c.jsx)("marker",{id:"ego-arrow-in",viewBox:"0 0 10 10",refX:"7",refY:"5",markerWidth:"4",markerHeight:"4",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 1 L 9 5 L 0 9 z",fill:"#555"})}),(0,c.jsx)("marker",{id:"ego-arrow-out",viewBox:"0 0 10 10",refX:"7",refY:"5",markerWidth:"4",markerHeight:"4",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 1 L 9 5 L 0 9 z",fill:N})}),(0,c.jsx)("clipPath",{id:"ego-clip-center",children:(0,c.jsx)("rect",{x:I+1,y:Y+1,width:S-16,height:b-2})}),p.map((H,te)=>(0,c.jsx)("clipPath",{id:`ego-clip-in-${te}`,children:(0,c.jsx)("rect",{x:R+1,y:U(te,p.length)+1,width:v-14,height:g-2})},H.targetSystemId)),h.map((H,te)=>(0,c.jsx)("clipPath",{id:`ego-clip-out-${te}`,children:(0,c.jsx)("rect",{x:O+1,y:U(te,h.length)+1,width:v-14,height:g-2})},H.targetSystemId))]}),p.map((H,te)=>{let oe=U(te,p.length)+g/2;return(0,c.jsx)("line",{x1:R+v,y1:oe,x2:I,y2:B,stroke:"#555",strokeWidth:1,opacity:.6,markerEnd:"url(#ego-arrow-in)"},H.targetSystemId)}),h.map((H,te)=>{let oe=U(te,h.length)+g/2,de=(I+S+O)/2,ue=(B+oe)/2,pe=H.reason,K=pe?YB[pe]??"#475569":"#475569";return(0,c.jsxs)("g",{children:[(0,c.jsx)("line",{x1:I+S,y1:B,x2:O,y2:oe,stroke:N,strokeWidth:1,opacity:.6,markerEnd:"url(#ego-arrow-out)"}),pe&&pe!=="import"&&(0,c.jsxs)("g",{children:[(0,c.jsx)("rect",{x:de-14,y:ue-7,width:28,height:12,rx:2,fill:"#0a0a0a",stroke:K+"55",strokeWidth:.5}),(0,c.jsx)("text",{x:de,y:ue+3,textAnchor:"middle",fill:K,fontSize:7,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:.3,children:pe})]})]},H.targetSystemId)}),p.map((H,te)=>{let oe=U(te,p.length),de=a.get(H.targetSystemId)?.description??"";return(0,c.jsxs)("g",{onClick:()=>n?.(H.targetSystemId),onMouseEnter:()=>de&&r({x:R,y:oe,lines:[de]}),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,c.jsx)("rect",{x:R,y:oe,width:v,height:g,rx:4,fill:"#111",stroke:"#222",strokeWidth:1}),(0,c.jsx)("text",{x:R+10,y:oe+g/2+4,fill:"#ccc",fontSize:11,fontWeight:600,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#ego-clip-in-${te})`,children:H.targetSystemName})]},H.targetSystemId)}),(0,c.jsx)("rect",{x:I,y:Y,width:S,height:b,rx:5,fill:"#0f1620",stroke:N,strokeWidth:1.5}),(0,c.jsx)("text",{x:I+12,y:Y+30,fill:"#d0d8e8",fontSize:13,fontWeight:700,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-center)",children:i.name}),$.map((H,te)=>(0,c.jsx)("text",{x:I+12,y:Y+52+te*14,fill:"#4a6080",fontSize:9.5,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-center)",children:H},te)),x&&p.length>0&&(0,c.jsx)("text",{x:R,y:j+11,fill:"#666",fontSize:9,fontWeight:600,letterSpacing:.5,fontFamily:"JetBrains Mono, monospace",children:`\u25B2 CONSUMERS OF "${i.name}"`}),y>0&&(0,c.jsxs)("text",{x:R,y:j+24,fill:"#555",fontSize:8.5,fontFamily:"JetBrains Mono, monospace",children:["+",y," more not shown"]}),x&&h.length>0&&(0,c.jsx)("text",{x:O,y:j+11,fill:"#666",fontSize:9,fontWeight:600,letterSpacing:.5,fontFamily:"JetBrains Mono, monospace",children:`\u25BC "${i.name}" DEPENDS ON`}),h.map((H,te)=>{let oe=U(te,h.length),de=a.get(H.targetSystemId)?.description??"";return(0,c.jsxs)("g",{onClick:()=>n?.(H.targetSystemId),onMouseEnter:()=>de&&r({x:O,y:oe,lines:[de]}),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,c.jsx)("rect",{x:O,y:oe,width:v,height:g,rx:4,fill:"#111",stroke:"#222",strokeWidth:1}),(0,c.jsx)("text",{x:O+10,y:oe+g/2+4,fill:"#ccc",fontSize:11,fontWeight:600,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#ego-clip-out-${te})`,children:H.targetSystemName})]},H.targetSystemId)}),o&&(0,c.jsx)($p,{x:o.x,y:o.y,lines:o.lines,svgW:L})]})}function yae(e,t){if(!e)return{nodes:[],edges:[]};let n=e.folders.filter(a=>a.depth===1),i=e.filesByFolder.__root__??[],o=[],r=[];o.push({id:"__root__",type:"folder",position:{x:0,y:0},data:{name:e.systemName,role:"lib",fileCount:i.length,isRoot:!0,onDrill:()=>t("__root__",e.systemName)}});for(let a of n)o.push({id:a.id,type:"folder",position:{x:0,y:0},data:{name:a.name,role:a.role,fileCount:a.fileCount,isRoot:!1,onDrill:()=>t(a.id,a.name)}}),r.push(qB(`e-root-${a.id}`,"__root__",a.id,{color:"#334155"}));if(n.length<=6){let a=e.folders.filter(s=>s.depth===2);for(let s of a)o.find(l=>l.id===s.id)||o.push({id:s.id,type:"folder",position:{x:0,y:0},data:{name:s.name,role:s.role,fileCount:s.fileCount,isRoot:!1,onDrill:()=>t(s.id,s.name)}}),s.parentId&&o.find(l=>l.id===s.parentId)&&r.push(qB(`e-${s.parentId}-${s.id}`,s.parentId,s.id,{color:"#1e293b"}))}return _B(o,r,"TB",{nodeWidth:180,nodeHeight:56,rankSep:60,nodeSep:30})}function bae({files:e,onSelect:t,selected:n}){let i={};for(let a of e)i[a.role]||(i[a.role]=[]),i[a.role].push(a);let r=["entry","service","component","types","util","config","style","test","other"].filter(a=>i[a]?.length>0);return(0,c.jsxs)("div",{className:"l3-grid",children:[r.map(a=>(0,c.jsxs)("div",{className:"l3-group",children:[(0,c.jsx)("div",{className:"l3-group-label",style:{color:$B[a]},children:vae[a]}),i[a].map(s=>(0,c.jsxs)("div",{className:`l3-file${n===s.path?" l3-file-selected":""}${s.isEntry?" l3-file-entry":""}`,onClick:()=>t(s),children:[(0,c.jsx)("span",{className:"l3-file-ext",style:{background:$B[a]},children:s.ext.replace(".","")||"?"}),(0,c.jsx)("span",{className:"l3-file-name",children:s.name})]},s.path))]},a)),e.length===0&&(0,c.jsx)("div",{className:"l3-empty",children:"No code files detected in this folder."})]})}function xae({systemId:e,data:t}){let n=t.analysis.systems.find(i=>i.id===e);return n?(0,c.jsxs)("div",{className:"detail-body",children:[(0,c.jsxs)("div",{className:"detail-type-row",children:[(0,c.jsx)("span",{className:"detail-type-badge",children:n.type}),(0,c.jsx)("span",{className:"detail-tier-badge",children:n.systemTier}),n.detectedTech?.slice(0,3).map(i=>(0,c.jsx)("span",{className:"detail-tech-badge",children:i},i))]}),(0,c.jsx)("p",{className:"detail-desc",children:n.description}),n.entryPoints?.length>0&&(0,c.jsxs)("div",{className:"detail-section",children:[(0,c.jsxs)("div",{className:"detail-section-title",children:["Entry points",(0,c.jsx)("span",{className:"detail-derive-label",children:"\xB7 detected from code"})]}),n.entryPoints.slice(0,3).map((i,o)=>(0,c.jsxs)("div",{className:"detail-entry",children:[(0,c.jsx)("span",{className:"detail-entry-path",children:i.path}),(0,c.jsx)("span",{className:"detail-entry-reason",children:i.reason})]},o))]})]}):null}function Sae({zoom:e,repoName:t,onNavigate:n}){let i=[{label:t,level:1}];return e.level>=2&&i.push({label:e.systemName,level:2}),e.level>=3&&i.push({label:e.folderName,level:3}),e.level>=4&&i.push({label:e.fileName,level:4}),(0,c.jsx)("div",{className:"breadcrumb",children:i.map((o,r)=>(0,c.jsxs)(J.default.Fragment,{children:[r>0&&(0,c.jsx)("span",{className:"bc-sep",children:"\u203A"}),(0,c.jsx)("button",{className:`bc-crumb${r===i.length-1?" bc-crumb-active":""}`,onClick:()=>r<i.length-1&&n(o.level),children:o.label})]},r))})}function wae({nodes:e,edges:t}){let[n,,i]=y3(e),[o,,r]=v3(t),{fitView:a}=Lc();return(0,J.useEffect)(()=>{setTimeout(()=>a({padding:.12,duration:300}),60)},[e.length]),(0,c.jsxs)(m3,{nodes:n,edges:o,onNodesChange:i,onEdgesChange:r,nodeTypes:T3,fitView:!0,fitViewOptions:{padding:.12},minZoom:.25,maxZoom:2.5,proOptions:{hideAttribution:!0},children:[(0,c.jsx)(w3,{showInteractive:!1}),(0,c.jsx)(x3,{variant:Vi.Dots,gap:20,size:1,color:"#1e293b"})]})}function Eae(e,t,n){let i=new Map;for(let[y,x]of Object.entries(t.clusterFiles))for(let S of x)i.set(S,y);let o=new Map;for(let y of n)y.rootPath&&o.set(y.rootPath,y);let r=new Map;for(let y of t.edges)r.has(y.to)||r.set(y.to,[]),r.get(y.to).push(y.from);let a=new Set,s=[];for(let y of e){let x=i.get(y);x?a.add(x):s.push(y)}let l=new Map,u=[];for(let y of a)l.set(y,{hops:0,via:[]}),u.push({clusterId:y,hops:0,via:[]});for(;u.length>0;){let{clusterId:y,hops:x,via:S}=u.shift(),b=r.get(y)??[];for(let v of b)if(!l.has(v)){let g=o.get(y),m=g?[...S,g.name]:S;l.set(v,{hops:x+1,via:m}),u.push({clusterId:v,hops:x+1,via:m})}}let d=[],f=[],p=[],h=[];for(let y of n){if(!y.rootPath)continue;let x=l.get(y.rootPath);x?x.hops===0?d.push(y):x.hops===1?f.push({system:y,via:x.via}):p.push({system:y,hops:x.hops,via:x.via}):h.push(y)}return p.sort((y,x)=>y.hops-x.hops),{changedSystems:d,directConsumers:f,transitiveConsumers:p,notAffected:h,unknownFiles:s}}function Lv({sys:e,badge:t,badgeColor:n,via:i}){let o=e.systemTier==="primary"?"#6366f1":e.systemTier==="secondary"?"#0ea5e9":"#374151";return(0,c.jsxs)("div",{style:{padding:"10px 20px 10px 16px",borderBottom:"1px solid #0d0d0d",display:"flex",gap:12,alignItems:"flex-start"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:o,marginTop:5,flexShrink:0}}),(0,c.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:2},children:[(0,c.jsx)("span",{style:{fontSize:13,fontWeight:600,color:"#c8c8c8"},children:e.name}),e.type&&e.type!=="unknown"&&(0,c.jsx)("span",{style:{fontSize:9,color:"#2a2a2a",fontFamily:"monospace"},children:e.type})]}),e.description&&(0,c.jsxs)("div",{style:{fontSize:11,color:"#3a3a3a",lineHeight:1.4},children:[e.description.slice(0,100),e.description.length>100?"\u2026":""]}),i&&i.length>0&&(0,c.jsxs)("div",{style:{fontSize:10,color:"#282828",fontFamily:"monospace",marginTop:4},children:["via \u2192 ",i.join(" \u2192 ")]})]}),(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,letterSpacing:"0.06em",fontFamily:"monospace",padding:"3px 8px",borderRadius:10,flexShrink:0,alignSelf:"flex-start",marginTop:1,background:n+"18",color:n,border:`1px solid ${n}30`},children:t})]})}function Cae(e){if(!e)return[];let t=new Set;for(let l of e.edges)t.add(l.from),t.add(l.to);for(let l of Object.keys(e.clusterFiles))t.add(l);let n=t.size,i=new Map;for(let l of t)i.set(l,[]);for(let l of e.edges)i.get(l.to)?.push(l.from);let o=new Map;for(let l of t){let u=new Set,d=[l];for(;d.length;){let f=d.shift();if(!u.has(f)){u.add(f);for(let p of i.get(f)??[])u.has(p)||d.push(p)}}o.set(l,u.size-1)}let r=Object.keys(e.clusterFiles).map(l=>o.get(l)??0).filter(l=>l>0),a=Math.max(...r,1),s=[];for(let[l,u]of Object.entries(e.clusterFiles)){if(!u.length)continue;let d=o.get(l)??0;if(d===0)continue;let f=d>=a*.6?"high":d>=a*.25?"medium":"low",p=[...u].sort((h,y)=>{let x=/\/(index|main|mod)\.(ts|tsx|js|jsx)$/.test(h),S=/\/(index|main|mod)\.(ts|tsx|js|jsx)$/.test(y);return x===S?h.length-y.length:x?-1:1});for(let h of p.slice(0,2))s.push({file:h,shortName:h.split("/").pop()??h,cluster:l,reach:d,level:f})}return s.sort((l,u)=>u.reach-l.reach).slice(0,40)}function qv({label:e,count:t,color:n}){return(0,c.jsxs)("div",{style:{padding:"8px 12px 4px",display:"flex",alignItems:"center",gap:6,borderTop:"1px solid #0d0d0d"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:n,display:"inline-block",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,fontWeight:700,color:n,letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:[e," \xB7 ",t]})]})}function Hv({r:e,selected:t,onToggle:n,onDetail:i}){let o=hu[e.level],[r,a]=(0,J.useState)(!1);return(0,c.jsxs)("div",{onMouseEnter:()=>a(!0),onMouseLeave:()=>a(!1),title:e.file,style:{display:"flex",alignItems:"center",gap:8,padding:"6px 10px 6px 12px",background:t?o.bg:r?"#0a0a0a":"transparent",borderLeft:`2px solid ${t?o.dot:"transparent"}`,transition:"background 0.1s"},children:[(0,c.jsx)("div",{onClick:n,style:{width:13,height:13,borderRadius:3,flexShrink:0,cursor:"pointer",border:`1px solid ${t?o.dot:"#222"}`,background:t?o.dot:"transparent",display:"flex",alignItems:"center",justifyContent:"center"},children:t&&(0,c.jsx)("svg",{width:"7",height:"7",viewBox:"0 0 8 8",fill:"none",children:(0,c.jsx)("path",{d:"M1.5 4L3 5.5L6.5 2",stroke:"#000",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,c.jsxs)("div",{onClick:i,style:{flex:1,minWidth:0,cursor:"pointer"},children:[(0,c.jsx)("div",{style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:t?"#c8c8c8":r?"#606060":"#484848",fontWeight:t?600:400,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e.shortName}),(0,c.jsx)("div",{style:{fontSize:9,color:"#252525",fontFamily:"monospace",marginTop:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e.cluster})]}),(0,c.jsxs)("span",{style:{fontSize:9,color:t?o.text:"#282828",flexShrink:0,fontFamily:"monospace"},children:[e.reach,"sys"]})]})}function Mae({data:e}){let[t,n]=(0,J.useState)(new Set),[i,o]=(0,J.useState)(null),[r,a]=(0,J.useState)(""),[s,l]=(0,J.useState)(null),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1),[h,y]=(0,J.useState)(null),x=!!e.graphData,S=(0,J.useMemo)(()=>Cae(e.graphData),[e.graphData]),b=(0,J.useMemo)(()=>{if(!r.trim())return S;let T=r.toLowerCase();return S.filter(j=>j.file.toLowerCase().includes(T)||j.shortName.toLowerCase().includes(T))},[S,r]),v=b.filter(T=>T.level==="high"),g=b.filter(T=>T.level==="medium"),m=b.filter(T=>T.level==="low");(0,J.useEffect)(()=>{if(!e.graphData||t.size===0){o(null);return}o(Eae([...t],e.graphData,e.analysis.systems))},[t,e.graphData,e.analysis.systems]);let w=(0,J.useCallback)(T=>{n(j=>{let _=new Set(j);return _.has(T)?_.delete(T):_.add(T),_})},[]),M=(0,J.useCallback)(()=>{d(!0),y(null),fetch("/api/git-changes").then(T=>T.json()).then(T=>{T.files?.length>0?n(new Set(T.files)):y("No staged or modified source files found."),d(!1)}).catch(()=>{y("Could not fetch git changes."),d(!1)})},[]),E=(0,J.useCallback)(()=>{p(!0),y(null),fetch("/api/git-head").then(T=>T.json()).then(T=>{T.files?.length>0?n(new Set(T.files)):y("No source files in HEAD commit."),p(!1)}).catch(()=>{y("Could not fetch HEAD commit."),p(!1)})},[]),N=i?i.changedSystems.length+i.directConsumers.length+i.transitiveConsumers.length:0,A=(0,J.useMemo)(()=>{let T=new Map;for(let j of S)T.set(j.file,j);return T},[S]),$={fontSize:10,padding:"3px 9px",borderRadius:4,cursor:"pointer",border:"1px solid #1e1e1e",background:"transparent",color:"#484848",fontFamily:"JetBrains Mono, monospace",whiteSpace:"nowrap"},D=(T,j,_)=>(0,c.jsxs)("div",{style:{padding:"14px 20px 6px",display:"flex",alignItems:"baseline",gap:10},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,color:_,letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:T}),(0,c.jsx)("span",{style:{fontSize:9,color:"#282828",fontFamily:"monospace"},children:j})]});return(0,c.jsxs)("div",{style:{display:"flex",height:"100%",background:"#000",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{width:272,flexShrink:0,borderRight:"1px solid #111",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{padding:"12px 12px 10px",borderBottom:"1px solid #111",flexShrink:0},children:[(0,c.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#2a2a2a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:8},children:"Most Impactful Files"}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,marginBottom:8,flexWrap:"wrap"},children:[(0,c.jsx)("button",{onClick:E,disabled:f,style:$,children:f?"\u2026":"\u2191 HEAD commit"}),(0,c.jsx)("button",{onClick:M,disabled:u,style:$,children:u?"\u2026":"\u2191 Staged changes"}),t.size>0&&(0,c.jsx)("button",{onClick:()=>n(new Set),style:{...$,color:"#ef444488",borderColor:"#ef444430"},children:"Clear"})]}),h&&(0,c.jsx)("div",{style:{fontSize:10,color:"#f59e0b",marginBottom:7,fontFamily:"monospace"},children:h}),(0,c.jsx)("input",{type:"text",placeholder:"Search files\u2026",value:r,onChange:T=>a(T.target.value),style:{width:"100%",boxSizing:"border-box",background:"#0a0a0a",border:"1px solid #1a1a1a",borderRadius:4,padding:"5px 9px",fontSize:11,color:"#606060",fontFamily:"JetBrains Mono, monospace",outline:"none"}})]}),(0,c.jsxs)("div",{style:{flex:1,overflowY:"auto"},children:[!x&&(0,c.jsx)("div",{style:{padding:"16px 12px",fontSize:10,color:"#f59e0b",fontFamily:"monospace"},children:"\u26A0 Run Memor with an API key to build the import graph"}),x&&b.length===0&&(0,c.jsx)("div",{style:{padding:"16px 12px",fontSize:10,color:"#282828",fontFamily:"monospace"},children:r?"No files match.":"No import relationships found."}),v.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"HIGH",count:v.length,color:hu.high.dot}),v.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]}),g.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"MEDIUM",count:g.length,color:hu.medium.dot}),g.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]}),m.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"LOW",count:m.length,color:hu.low.dot}),m.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]})]})]}),(0,c.jsx)("div",{style:{flex:1,overflowY:"auto"},children:t.size===0?(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",gap:14,padding:"0 48px",textAlign:"center"},children:[(0,c.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",style:{opacity:.12},children:[(0,c.jsx)("circle",{cx:"12",cy:"12",r:"3",stroke:"#fff",strokeWidth:"1.5"}),(0,c.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"5",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"12",y1:"19",x2:"12",y2:"22",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"2",y1:"12",x2:"5",y2:"12",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"19",y1:"12",x2:"22",y2:"12",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"})]}),(0,c.jsxs)("div",{style:{fontSize:11,color:"#282828",lineHeight:1.7,fontFamily:"monospace"},children:["Check a file's checkbox to see which systems would break.",(0,c.jsx)("br",{}),"Click a filename to inspect its imports, exports, and functions.",(0,c.jsx)("br",{}),"Or load changes from git automatically."]})]}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("div",{style:{padding:"10px 20px",borderBottom:"1px solid #0d0d0d",display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,color:"#252525",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace",marginRight:2,flexShrink:0},children:"Checking"}),[...t].map(T=>{let j=A.get(T),_=j?hu[j.level].dot:"#333",L=T.split("/").pop()??T;return(0,c.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:10,fontFamily:"monospace",padding:"2px 7px 2px 6px",borderRadius:4,border:`1px solid ${_}35`,background:_+"0e",color:"#484848"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:_,flexShrink:0}}),L,(0,c.jsx)("span",{onClick:()=>w(T),style:{cursor:"pointer",color:"#303030",marginLeft:3,lineHeight:1,fontSize:13},children:"\xD7"})]},T)})]}),i&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("div",{style:{padding:"12px 20px",borderBottom:"1px solid #0d0d0d",background:N>0?"#ef444406":"#22c55e06"},children:N>0?(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:16,flexWrap:"wrap"},children:[(0,c.jsxs)("span",{style:{fontSize:14,fontWeight:700,color:"#ef4444",fontFamily:"monospace"},children:["\u26A1 ",N," ",N===1?"system":"systems"," in blast radius"]}),(0,c.jsxs)("div",{style:{display:"flex",gap:12},children:[i.changedSystems.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#f59e0b",fontFamily:"monospace"},children:[i.changedSystems.length," directly modified"]}),i.directConsumers.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#ef4444",fontFamily:"monospace"},children:[i.directConsumers.length," direct consumers"]}),i.transitiveConsumers.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#f97316",fontFamily:"monospace"},children:[i.transitiveConsumers.length," downstream"]})]})]}):(0,c.jsx)("span",{style:{fontSize:13,fontWeight:700,color:"#22c55e",fontFamily:"monospace"},children:"\u2713 No known systems affected \u2014 change is isolated"})}),i.unknownFiles.length>0&&(0,c.jsxs)("div",{style:{padding:"8px 20px 10px",borderBottom:"1px solid #0d0d0d"},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#f59e0b",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:4},children:["Not in import graph \xB7 ",i.unknownFiles.length," file",i.unknownFiles.length!==1?"s":""]}),(0,c.jsx)("div",{style:{fontSize:10,color:"#484848",fontFamily:"monospace"},children:i.unknownFiles.map(T=>T.split("/").pop()).join(" \xB7 ")})]}),i.changedSystems.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Directly Modified","\u2014 your changed files live in these systems","#f59e0b"),i.changedSystems.map(T=>(0,c.jsx)(Lv,{sys:T,badge:"MODIFIED",badgeColor:"#f59e0b"},T.id))]}),i.directConsumers.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Direct Consumers","\u2014 these systems import the code you changed","#ef4444"),i.directConsumers.map(({system:T,via:j})=>(0,c.jsx)(Lv,{sys:T,badge:"1 HOP",badgeColor:"#ef4444",via:j.length>0?j:void 0},T.id))]}),i.transitiveConsumers.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Downstream Effects","\u2014 indirectly affected through the import chain","#f97316"),i.transitiveConsumers.map(({system:T,hops:j,via:_})=>(0,c.jsx)(Lv,{sys:T,badge:`${j} HOPS`,badgeColor:"#f97316",via:_.length>0?_:void 0},T.id))]}),i.notAffected.length>0&&(0,c.jsxs)("div",{style:{padding:"14px 20px 20px"},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#1a2a1a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:8},children:["Not Affected \xB7 ",i.notAffected.length," systems"]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5},children:i.notAffected.map(T=>(0,c.jsx)("span",{style:{fontSize:10,padding:"2px 8px",borderRadius:10,background:"#0a0a0a",color:"#242424",border:"1px solid #111",fontFamily:"monospace"},children:T.name},T.id))})]})]})]})}),s&&(0,c.jsx)(Zs,{filePath:s,onClose:()=>l(null)})]})}function Nae(e){let t=e.toLowerCase().trim();if(Iv[t])return Iv[t];for(let[n,i]of Object.entries(Iv))if(t.includes(n)||n.includes(t))return i;return null}function Aae(e){let t=e.toLowerCase();return t.includes("delete")||t.includes("remove")?{method:"DELETE",color:"#ef4444"}:t.includes("create")||t.includes("new")?{method:"POST",color:"#3b82f6"}:t.includes("update")||t.includes("edit")?{method:"PUT",color:"#f59e0b"}:t.startsWith("/api/")||t.includes("[id]")?{method:"GET",color:"#22c55e"}:{method:"GET",color:"#4b5563"}}function zae(e){let t=e.name.toLowerCase(),n=(t+" "+(e.description??"")+" "+(e.layer??"")).toLowerCase();return/auth|login|session|oauth|jwt|permission/.test(t)?"auth":/payment|billing|stripe|invoice|subscript/.test(t)?"payment":/\bui\b|component library|ui library/.test(t)?"ui":/database|prisma|data layer|data store/.test(t)?"database":/email|mail|smtp|sendgrid|notification/.test(t)?"email":/analytics|metrics|reporting|insight|tracking/.test(t)?"analytics":/cache|redis/.test(t)?"cache":/queue|job|worker|cron|background/.test(t)?"queue":/storage|upload|asset|s3|bucket/.test(t)?"storage":/workflow|automation|orchestrat/.test(t)?"workflow":/calendar|schedul|availab|slot|booking/.test(t)?"calendar":/video|call|meet|conference/.test(t)?"video":/search|elastic/.test(t)?"search":/i18n|international|translat|locale/.test(t)?"i18n":/config|setting/.test(t)?"config":/trpc/.test(t)?"trpc":/routing|form.*route|route.*form/.test(t)?"routing":/embed/.test(t)?"embed":/prisma|postgres|mysql|mongo|repository|orm/.test(n)?"database":(e.owns_routes?.length??0)>2?"api":null}function Bae({am:e,onNodeClick:t,onFileClick:n,changedFiles:i}){let[o,r]=(0,J.useState)(null),a=(0,J.useRef)(null),s=(0,J.useRef)(new Map),[l,u]=(0,J.useState)(new Map);(0,J.useEffect)(()=>{let m=()=>{if(!a.current)return;let M=new Map;for(let[E,N]of s.current)M.set(E,{cx:N.offsetLeft+N.offsetWidth/2,cy:N.offsetTop+N.offsetHeight/2});u(M)};m();let w=new ResizeObserver(m);return a.current&&w.observe(a.current),()=>w.disconnect()},[e]);let d=(0,J.useMemo)(()=>{if(!o)return new Map;let m=new Map,w=(E,N)=>{let A=m.get(E);A?A!==N&&m.set(E,"both"):m.set(E,N)};e.edges.forEach(E=>{E.from===o&&w(E.to,"used-by"),E.to===o&&w(E.from,"uses")});let M=e.external.find(E=>E.id===o);return M?M.used_by?.forEach(E=>w(E,"uses")):e.external.forEach(E=>{E.used_by?.includes(o)&&w(E.id,"used-by")}),m},[o,e]),f=o!==null,p=(0,J.useMemo)(()=>{let m=new Map,w=M=>m.set(M,(m.get(M)??0)+1);return e.edges.forEach(M=>{w(M.from),w(M.to)}),e.external.forEach(M=>(M.used_by??[]).forEach(()=>w(M.id))),m},[e]),h=(0,J.useMemo)(()=>Math.max(0,...p.values()),[p]),y=m=>{if(h<=2)return"hub";let w=p.get(m)??0;return w>=h*.6?"hub":w>=h*.3?"elevated":"normal"},x={"user-facing":0,api:1,service:2,"data-client":3},S={core:0,primary:1,secondary:2,support:3},b=(0,J.useMemo)(()=>[...e.systems].sort((m,w)=>{let M=x[m.layer??""]??4,E=x[w.layer??""]??4;if(M!==E)return M-E;let N=S[m.tier??""]??4,A=S[w.tier??""]??4;return N-A}),[e.systems]),v=(0,J.useMemo)(()=>{let m=[],w={"user-facing":"user-facing",api:"api",service:"service","data-client":"data-client"};for(let M of b){let E=M.layer??"service";(!m.length||m[m.length-1].layer!==E)&&m.push({layer:E,label:w[E]??E,items:[]}),m[m.length-1].items.push(M)}return m},[b]),g=m=>m.type==="database"?"\u{1F5C4}\uFE0F":m.type==="cache"?"\u26A1":m.type==="monitoring"?"\u{1F4E1}":m.type==="auth"?"\u{1F510}":m.type==="storage"?"\u{1F4C1}":m.type==="queue"?"\u2699\uFE0F":m.name.toLowerCase().includes("mail")||m.name.toLowerCase().includes("send")?"\u2709\uFE0F":m.name.toLowerCase().includes("stripe")||m.name.toLowerCase().includes("payment")?"\u{1F4B3}":m.name.toLowerCase().includes("video")||m.name.toLowerCase().includes("daily")?"\u{1F3A5}":m.name.toLowerCase().includes("calendar")?"\u{1F4C5}":"\u{1F50C}";return(0,c.jsxs)("div",{style:{flex:1,overflow:"auto",background:"#0c0c0c",position:"relative",zIndex:20},children:[(0,c.jsx)("div",{style:{position:"fixed",inset:0,pointerEvents:"none",zIndex:0,backgroundImage:"radial-gradient(circle, #191919 1px, transparent 1px)",backgroundSize:"22px 22px"}}),(0,c.jsxs)("div",{style:{padding:"40px 56px 0",position:"relative",zIndex:2},children:[(0,c.jsx)("div",{style:{fontFamily:"Inter, sans-serif",fontSize:22,fontWeight:600,color:"#e2e8f0",marginBottom:6},children:e.repo?.name??""}),e.repo?.description&&(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:11,color:"#4a4a4a",maxWidth:640,lineHeight:1.65},children:e.repo.description})]}),(0,c.jsxs)("div",{ref:a,style:{position:"relative",zIndex:2,padding:"28px 56px 52px"},children:[o&&(0,c.jsx)("svg",{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",zIndex:0,overflow:"visible"},children:[...d.entries()].map(([m,w])=>{let M=l.get(o),E=l.get(m);if(!M||!E)return null;let N=w==="uses"?"#4a9eff":w==="used-by"?"#22c55e":"#a78bfa",A=w==="uses"?Math.atan2(M.cy-E.cy,M.cx-E.cx):Math.atan2(E.cy-M.cy,E.cx-M.cx),$=(M.cx+E.cx)/2,D=(M.cy+E.cy)/2,T=4,j=Math.PI/5,_=$-T*Math.cos(A-j),L=D-T*Math.sin(A-j),R=$-T*Math.cos(A+j),I=D-T*Math.sin(A+j);return(0,c.jsxs)("g",{children:[(0,c.jsx)("line",{x1:M.cx,y1:M.cy,x2:E.cx,y2:E.cy,stroke:N,strokeWidth:1,strokeOpacity:.3}),(0,c.jsx)("polyline",{points:`${_},${L} ${$},${D} ${R},${I}`,stroke:N,strokeWidth:1,strokeOpacity:.75,fill:"none",strokeLinecap:"round",strokeLinejoin:"round"})]},m)})}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:"28px 20px",alignItems:"flex-start",position:"relative",zIndex:1},children:[v.map(m=>(0,c.jsxs)("div",{style:{width:"100%"},children:[(0,c.jsx)("div",{style:{marginBottom:8},children:(0,c.jsx)("span",{style:{fontSize:11,color:"#666",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.12em",textTransform:"uppercase"},children:m.label})}),(0,c.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:14},children:m.items.map(w=>{let M=d.get(w.id),E=o===w.id,N=d.has(w.id),A=!!w.owns_routes?.length,$=i.length>0&&w.key_files?.some(O=>i.some(Y=>Y.endsWith(O)||O.endsWith(Y))),D=zae(w),T=w.description??w.layer??w.section??"",j=f&&!E&&!N?.18:1,_=y(w.id),L=_==="hub"?"#585858":_==="elevated"?"#303030":"#1c1c1c",R=_==="hub"?"#ffffff":_==="elevated"?"#cccccc":"#707070",I=E?"1px solid #ffffff40":M==="uses"?"1px solid #4a9eff55":M==="used-by"?"1px solid #22c55e55":M==="both"?"1px solid #a78bfa55":`1px solid ${L}`;return(0,c.jsxs)("div",{ref:O=>{O?s.current.set(w.id,O):s.current.delete(w.id)},"data-am-sys":w.id,"data-am-conn":E?void 0:M,onClick:()=>t(w.id),onMouseEnter:()=>r(w.id),onMouseLeave:()=>r(null),style:{opacity:j,transition:"opacity 0.15s, border 0.15s",background:"#000000",border:I,borderRadius:8,padding:"14px 15px",cursor:"pointer"},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:T?7:10},children:[(0,c.jsx)("span",{style:{fontSize:15,flexShrink:0,opacity:.65},children:D?gu[D]:"\u{1F4E6}"}),(0,c.jsx)("div",{style:{fontSize:12,fontWeight:600,color:R,fontFamily:"Inter, sans-serif",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:w.name})]}),T&&(0,c.jsx)("div",{style:{fontSize:10,color:_==="hub"?"#4a4a4a":_==="elevated"?"#3a3a3a":"#2a2a2a",lineHeight:1.5,fontFamily:"JetBrains Mono, monospace",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",marginBottom:10},children:T}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,flexWrap:"wrap",alignItems:"center"},children:[w.tier&&(0,c.jsx)("span",{style:{fontSize:8,color:"#3a3a3a",border:"1px solid #1e1e1e",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:w.tier}),A&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e",border:"1px solid #14532d",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:"entry"}),$&&(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:"#f59e0b",boxShadow:"0 0 4px #f59e0b88"}}),M==="uses"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#4a9eff99",fontFamily:"JetBrains Mono, monospace"},children:"uses it"}),M==="used-by"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e99",fontFamily:"JetBrains Mono, monospace"},children:"it uses"}),M==="both"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#a78bfa99",fontFamily:"JetBrains Mono, monospace"},children:"\u2194 both"})]})]},w.id)})})]},m.layer)),e.external.length>0&&(0,c.jsxs)("div",{style:{width:"100%"},children:[(0,c.jsx)("div",{style:{marginBottom:8},children:(0,c.jsx)("span",{style:{fontSize:11,color:"#666",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.12em",textTransform:"uppercase"},children:"external"})}),(0,c.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:14},children:e.external.map(m=>{let w=d.get(m.id),M=o===m.id,E=d.has(m.id),N=f&&!M&&!E?.18:1,A=y(m.id),$=A==="hub"?"#585858":A==="elevated"?"#303030":"#1c1c1c",D=A==="hub"?"#ffffff":A==="elevated"?"#cccccc":"#707070",T=M?"1px solid #ffffff40":w==="uses"?"1px solid #4a9eff55":w==="used-by"?"1px solid #22c55e55":`1px solid ${$}`;return(0,c.jsxs)("div",{ref:j=>{j?s.current.set(m.id,j):s.current.delete(m.id)},"data-am-sys":m.id,"data-am-conn":M?void 0:w,onClick:()=>t(m.id),onMouseEnter:()=>r(m.id),onMouseLeave:()=>r(null),style:{opacity:N,transition:"opacity 0.15s, border 0.15s",background:"#000000",border:T,borderRadius:8,padding:"14px 15px",cursor:"pointer"},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:8},children:[(0,c.jsx)("span",{style:{fontSize:15,opacity:.65},children:g(m)}),(0,c.jsx)("div",{style:{fontSize:12,fontWeight:600,color:D,fontFamily:"Inter, sans-serif",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:m.name})]}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,alignItems:"center"},children:[(0,c.jsx)("span",{style:{fontSize:8,color:"#3a3a3a",border:"1px solid #1e1e1e",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:m.type}),w==="uses"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#4a9eff99",fontFamily:"JetBrains Mono, monospace"},children:"uses it"}),w==="used-by"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e99",fontFamily:"JetBrains Mono, monospace"},children:"it uses"}),w==="both"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#a78bfa99",fontFamily:"JetBrains Mono, monospace"},children:"\u2194 both"})]})]},m.id)})})]})]})]}),o&&(()=>{let m=e.systems.find(E=>E.id===o)??e.external.find(E=>E.id===o);if(!m)return null;let w=[...d.values()].filter(E=>E==="uses"||E==="both").length,M=[...d.values()].filter(E=>E==="used-by"||E==="both").length;return(0,c.jsxs)("div",{style:{position:"fixed",bottom:24,right:24,zIndex:200,background:"#0a0a0a",border:"1px solid #1c1c1c",borderRadius:8,padding:"12px 16px",minWidth:200,fontFamily:"JetBrains Mono, monospace",pointerEvents:"none"},children:[(0,c.jsx)("div",{style:{fontSize:11,color:"#e2e8f0",fontWeight:600,marginBottom:10,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:220},children:m.name}),w>0&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[(0,c.jsx)("div",{style:{width:8,height:8,borderRadius:2,background:"rgba(74,158,255,0.7)",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#4a7aaa"},children:["uses this \xB7 ",w]})]}),M>0&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("div",{style:{width:8,height:8,borderRadius:2,background:"rgba(34,197,94,0.7)",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#4a7a5a"},children:["used by this \xB7 ",M]})]}),w===0&&M===0&&(0,c.jsx)("div",{style:{fontSize:9,color:"#333"},children:"no connections"})]})})()]})}function Dae({am:e,systemId:t,incoming:n,outgoing:i,onNodeClick:o}){let r=e.systems.find(ie=>ie.id===t)??e.external.find(ie=>ie.id===t);if(!r)return null;let a=n.slice(0,9),s=i.slice(0,9),l=a.length>0,u=s.length>0,d=420,f=3,p=128,h=54,y=16,x=12,S=190,b=52,v=70,g=Math.floor((p-18)/7);function m(ie){if(ie.length<=g)return[ie,""];let ne=ie.lastIndexOf(" ",g);return ne===-1?[ie.slice(0,g),ie.slice(g)]:[ie.slice(0,ne),ie.slice(ne+1)]}function w(ie){return Math.ceil(ie/f)}function M(ie){let ne=w(ie);return ne*h+Math.max(0,ne-1)*x}function E(ie,ne){let Me=Math.min(ie,f),me=Me*p+Math.max(0,Me-1)*y,Oe=Math.max(0,(d-me)/2);return Array.from({length:ie},(Ve,V)=>({x:Oe+V%f*(p+y),y:ne+Math.floor(V/f)*(h+x)}))}let N=l?v:0,A=l?M(a.length):0,$=l?N+A+v:v,D=u?$+b+v:0,T=u?M(s.length):0,j=u?D+T+v:$+b+v,_=(d-S)/2,L=d/2,R=$,I=$+b,O=E(a.length,N),Y=E(s.length,D),[B,U]=(0,J.useState)(null),H=l?N+A:0,te=u?D:0,oe=Rae,de=l?oe[a[0].type]??"#555":"#555",ue=u?oe[s[0].type]??"#4a9eff":"#4a9eff";function pe(ie){return e.systems.find(ne=>ne.id===ie)?.name??e.external.find(ne=>ne.id===ie)?.name??ie}function K(ie){let ne=e.systems.find(me=>me.id===ie);return ne?ne.section??ne.layer??"":e.external.find(me=>me.id===ie)?.type??""}function ge(ie){return e.systems.find(ne=>ne.id===ie)?.description??""}function we(ie,ne,Me,me){let Ve=(me>=ne?1:-1)*Math.max(Math.abs(me-ne)*.45,20);return`M ${ie} ${ne} C ${ie} ${ne+Ve}, ${Me} ${me-Ve}, ${Me} ${me}`}function Ce({id:ie,layout:ne,clipId:Me}){let me=pe(ie),Oe=K(ie),Ve=ge(ie),V=me.length>g?me.slice(0,g-1)+"\u2026":me,[fe,he]=(0,J.useState)(!1),Ge=!!o;return(0,c.jsxs)("g",{onClick:Ge?()=>o(ie):void 0,onMouseEnter:()=>{Ge&&he(!0),Ve&&U({x:ne.x+p/2,y:ne.y,lines:[me,Ve]})},onMouseLeave:()=>{Ge&&he(!1),U(null)},style:Ge?{cursor:"pointer"}:void 0,children:[(0,c.jsx)("rect",{x:ne.x,y:ne.y,width:p,height:h,rx:5,fill:fe?"#1a2233":"#111",stroke:fe?"#3b82f6":"#222",strokeWidth:1,style:{transition:"fill 0.12s, stroke 0.12s"}}),(0,c.jsx)("clipPath",{id:Me,children:(0,c.jsx)("rect",{x:ne.x+8,y:ne.y+2,width:p-14,height:h-4})}),(0,c.jsx)("text",{x:ne.x+9,y:ne.y+22,fill:fe?"#c0d0e8":"#888",fontSize:11,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#${Me})`,children:V}),Oe&&(0,c.jsx)("text",{x:ne.x+9,y:ne.y+38,fill:"#3a3a3a",fontSize:9,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#${Me})`,children:Oe})]})}return(0,c.jsxs)("svg",{viewBox:`0 0 ${d} ${j}`,style:{width:"100%",height:j,overflow:"visible"},children:[(0,c.jsxs)("defs",{children:[(0,c.jsx)("clipPath",{id:"ego-clip-cen",children:(0,c.jsx)("rect",{x:_+10,y:$,width:S-18,height:b})}),(0,c.jsx)("marker",{id:"ego-arr-in",markerWidth:"6",markerHeight:"6",refX:"5",refY:"3",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 0 L 6 3 L 0 6 z",fill:de,opacity:"0.8"})}),(0,c.jsx)("marker",{id:"ego-arr-out",markerWidth:"6",markerHeight:"6",refX:"5",refY:"3",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 0 L 6 3 L 0 6 z",fill:ue,opacity:"0.8"})})]}),l&&(()=>{let ne=R-10,Me=H+10,me=(R+H)/2,Oe="USED BY",Ve=52;return(0,c.jsxs)("g",{children:[(0,c.jsx)("path",{d:we(L,ne,L,Me),fill:"none",stroke:de,strokeWidth:1.3,opacity:.55,markerEnd:"url(#ego-arr-in)"}),(0,c.jsx)("rect",{x:L-Ve/2,y:me-9,width:Ve,height:15,rx:3,fill:"#0d0d0d"}),(0,c.jsx)("text",{x:L,y:me+2,textAnchor:"middle",fill:"#404040",fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.1em",children:Oe})]})})(),u&&(()=>{let ne=I+10,Me=te-10,me=(I+te)/2,Oe="USES",Ve=38;return(0,c.jsxs)("g",{children:[(0,c.jsx)("path",{d:we(L,ne,L,Me),fill:"none",stroke:ue,strokeWidth:1.3,opacity:.55,markerEnd:"url(#ego-arr-out)"}),(0,c.jsx)("rect",{x:L-Ve/2,y:me-9,width:Ve,height:15,rx:3,fill:"#0d0d0d"}),(0,c.jsx)("text",{x:L,y:me+2,textAnchor:"middle",fill:"#404040",fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.1em",children:Oe})]})})(),a.map((ie,ne)=>(0,c.jsx)(Ce,{id:ie.from,layout:O[ne],clipId:`ego-clip-in-${ne}`},`in-${ne}`)),(0,c.jsx)("rect",{x:_,y:$,width:S,height:b,rx:6,fill:"#0c1520",stroke:"#4a9eff",strokeWidth:1.5}),(0,c.jsx)("clipPath",{id:"ego-clip-cen-desc",children:(0,c.jsx)("rect",{x:_+10,y:$,width:S-18,height:b})}),(0,c.jsx)("text",{x:_+12,y:$+28,fill:"#d0d8e8",fontSize:13,fontWeight:700,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-cen)",children:r.name}),s.map((ie,ne)=>(0,c.jsx)(Ce,{id:ie.to,layout:Y[ne],clipId:`ego-clip-out-${ne}`},`out-${ne}`)),B&&(0,c.jsx)($p,{x:B.x,y:B.y,lines:B.lines,svgW:d})]})}function Oae({am:e,systemId:t,data:n,onClose:i,onNavigate:o}){let[r,a]=(0,J.useState)(null),[s,l]=(0,J.useState)(!1);(0,J.useEffect)(()=>{let m=w=>{w.key==="Escape"&&(r?a(null):i())};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[i,r]);let u=e.systems.find(m=>m.id===t),d=u?null:e.external.find(m=>m.id===t);if(!u&&!d)return null;let f=n?.analysis.systems.find(m=>m.name===u?.name),p=(f&&n?.systemFolders?.[f.id]?.allFiles)??[],h=!u,y=h?_ae[d.type]??"#64748b":kae[u.tier]??"#475569",x=h?d.type.toUpperCase():Tae[u.tier]??u.tier.toUpperCase(),S=h?(d.used_by??[]).map(m=>({from:m,to:t,label:"uses",type:"import",critical:!1})):e.edges.filter(m=>m.to===t),b=[...e.edges.filter(m=>m.from===t),...h?[]:e.external.filter(m=>(m.used_by??[]).includes(t)).map(m=>({from:t,to:m.id,label:m.name,type:"import",critical:!1}))],v=S.length>0||b.length>0,g={fontSize:9,fontWeight:700,color:"#334155",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"JetBrains Mono, monospace",marginBottom:8};return(0,c.jsxs)(c.Fragment,{children:[(0,Up.createPortal)((0,c.jsx)("div",{className:"sdm-backdrop",onClick:i,children:(0,c.jsxs)("div",{className:"sdm-modal",onClick:m=>m.stopPropagation(),style:{display:"flex",flexDirection:"column",maxHeight:"88vh",position:"relative"},children:[(0,c.jsxs)("button",{onClick:i,title:"Close (Esc)",style:{position:"absolute",top:14,right:16,zIndex:10,background:"none",border:"none",cursor:"pointer",display:"flex",alignItems:"center",gap:5,padding:"2px 4px"},children:[(0,c.jsx)("span",{style:{fontSize:16,color:"#334155",lineHeight:1},children:"\xD7"}),(0,c.jsx)("span",{style:{fontSize:9,color:"#1e293b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.05em"},children:"esc"})]}),(0,c.jsxs)("div",{style:{display:"flex",flex:1,overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{flex:"0 0 420px",overflowY:"auto",padding:"28px 32px",borderRight:"1px solid #111"},children:[(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginBottom:12},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,letterSpacing:"0.08em",color:y,borderColor:y+"44",background:y+"12",border:`1px solid ${y}44`,borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace"},children:x}),u?.section&&u.section.toUpperCase()!==x&&(0,c.jsx)("span",{className:"sdm-badge",children:u.section}),u?.layer&&u.layer.toUpperCase()!==x&&(0,c.jsx)("span",{className:"sdm-badge",children:u.layer})]}),(0,c.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#e2e8f0",fontFamily:"Inter, sans-serif",lineHeight:1.2,marginBottom:10},children:u?.name??d?.name}),u?.description&&(0,c.jsxs)("div",{style:{marginBottom:16},children:[(0,c.jsx)("div",{style:{fontSize:13,color:"#475569",lineHeight:1.65,fontFamily:"Inter, sans-serif",marginBottom:6},children:u.description}),u.key_files?.length>0&&(0,c.jsxs)("button",{onClick:()=>a(u.key_files[0]),style:{display:"inline-flex",alignItems:"center",gap:4,background:"none",border:"1px solid #1e293b",borderRadius:3,padding:"2px 7px",cursor:"pointer",fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#334155",letterSpacing:"0.05em"},onMouseEnter:m=>{m.currentTarget.style.borderColor="#334155",m.currentTarget.style.color="#64748b"},onMouseLeave:m=>{m.currentTarget.style.borderColor="#1e293b",m.currentTarget.style.color="#334155"},title:u.key_files[0],children:["Source* \u2192 ",u.key_files[0].split("/").pop()]})]}),S.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18,padding:"8px 12px",background:"#0d1117",border:"1px solid #1e293b",borderRadius:5,display:"flex",flexDirection:"column",gap:6},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("span",{style:{fontSize:10,color:"#ef4444",fontFamily:"JetBrains Mono, monospace"},children:"\u26A0"}),(0,c.jsxs)("span",{style:{fontSize:11,color:"#475569",fontFamily:"Inter, sans-serif"},children:["Changing this affects"," ",(0,c.jsxs)("strong",{style:{color:"#94a3b8"},children:[S.length," system",S.length!==1?"s":""]})]})]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,paddingLeft:18},children:[S.slice(0,8).map(m=>{let w=e.systems.find(M=>M.id===m.from)?.name??m.from;return(0,c.jsx)("span",{style:{fontSize:9,fontFamily:"JetBrains Mono, monospace",color:"#334155",background:"#0a0f1a",border:"1px solid #1e293b",borderRadius:3,padding:"2px 6px"},children:w},m.from)}),S.length>8&&(0,c.jsxs)("span",{style:{fontSize:9,color:"#1e293b",fontFamily:"JetBrains Mono, monospace"},children:["+",S.length-8," more"]})]})]}),u?.tech&&u.tech.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Tech"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[...new Set(u.tech.filter(m=>!cae.has(m)))].map(m=>{let w=Nae(m),M=/^[a-z@]/.test(m)&&!/^(react|vue|angular|svelte|next|nuxt|remix|astro|solid)$/i.test(m)&&!w;return w?(0,c.jsx)("img",{src:`/tIcons/${w}`,title:m,style:{width:18,height:18,objectFit:"contain",opacity:.8}},m):(0,c.jsxs)("span",{style:{fontSize:10,fontFamily:"JetBrains Mono, monospace",color:"#94a3b8",background:"#1a1a1a",border:"1px solid #2a2a2a",borderRadius:3,padding:"2px 7px",display:"inline-flex",alignItems:"center",gap:4},children:[M&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:"#cb3837",letterSpacing:0},children:"npm"}),m]},m)})})]}),u?.key_files&&u.key_files.length>0&&(()=>{let m=new Set(["ts","tsx","js","jsx","mjs","cjs","py","go","rs","java","rb","cs","php","swift","kt"]),w=u.key_files.filter(E=>m.has(E.split(".").pop()?.toLowerCase()??"")),M=u.key_files.filter(E=>!m.has(E.split(".").pop()?.toLowerCase()??""));return(0,c.jsxs)(c.Fragment,{children:[w.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Files"}),(0,c.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:w.map((E,N)=>{let A=E.split(".").pop()?.toLowerCase(),$=A==="ts"||A==="tsx"?{label:"TS",color:"#3b82f6"}:A==="js"||A==="jsx"||A==="mjs"?{label:"JS",color:"#eab308"}:null;return(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[$&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:$.color,fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:$.label}),(0,c.jsx)("span",{onClick:()=>a(E),style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:"#64748b",textDecoration:"underline",textUnderlineOffset:3,cursor:"pointer"},onMouseEnter:D=>D.currentTarget.style.color="#94a3b8",onMouseLeave:D=>D.currentTarget.style.color="#64748b",children:E})]},N)})}),p.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("button",{onClick:()=>l(!s),style:{marginTop:8,background:"none",border:"none",color:"#475569",fontSize:10,fontFamily:"JetBrains Mono, monospace",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:4},onMouseEnter:E=>E.currentTarget.style.color="#94a3b8",onMouseLeave:E=>E.currentTarget.style.color="#475569",children:[s?"Hide":"See all files"," (",p.length,") ",s?"\u25B2":"\u25BC"]}),s&&(0,c.jsx)("div",{style:{marginTop:6,maxHeight:220,overflowY:"auto",background:"#0a0a0a",border:"1px solid #1e1e1e",borderRadius:4,padding:"6px 0"},children:p.map((E,N)=>{let A=E.ext?.replace(".","").toLowerCase(),$=A==="ts"||A==="tsx"?{label:"TS",color:"#3b82f6"}:A==="js"||A==="jsx"||A==="mjs"?{label:"JS",color:"#eab308"}:null;return(0,c.jsxs)("div",{onClick:()=>a(E.relPath),style:{display:"flex",alignItems:"center",gap:6,padding:"3px 10px",cursor:"pointer"},onMouseEnter:D=>D.currentTarget.style.background="#111",onMouseLeave:D=>D.currentTarget.style.background="transparent",children:[$&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:$.color,fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:$.label}),(0,c.jsx)("span",{style:{fontSize:10,fontFamily:"JetBrains Mono, monospace",color:"#4b5563"},children:E.relPath})]},N)})})]})]}),M.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Folders"}),(0,c.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:M.map((E,N)=>(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,c.jsx)("span",{style:{fontSize:12},children:"\u{1F4C1}"}),(0,c.jsx)("span",{style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:"#64748b"},children:E})]},N))})]})]})})(),u?.owns_routes&&u.owns_routes.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsxs)("div",{style:g,children:["Routes \xB7 ",u.owns_routes.length]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:[u.owns_routes.slice(0,10).map((m,w)=>{let{method:M,color:E}=Aae(m);return(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:E,fontFamily:"JetBrains Mono, monospace"},children:M}),(0,c.jsx)("code",{style:{fontSize:10,color:"#4b5563",background:"#111",border:"1px solid #1e1e1e",borderRadius:3,padding:"2px 6px"},children:m})]},w)}),u.owns_routes.length>10&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#334155"},children:["+",u.owns_routes.length-10," more"]})]})]}),u?.observations&&u.observations.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Patterns"}),u.observations.map((m,w)=>(0,c.jsx)("div",{style:{fontSize:11,color:"#b45309",lineHeight:1.55,marginBottom:6,paddingLeft:10,borderLeft:"2px solid #78350f",fontFamily:"Inter, sans-serif"},children:m},w))]}),d&&d.used_by?.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Used By"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:d.used_by.map(m=>{let w=e.systems.find(M=>M.id===m);return(0,c.jsx)("span",{style:{fontSize:10,color:"#38bdf8",background:"#38bdf810",border:"1px solid #38bdf825",borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace"},children:w?.name??m},m)})})]})]}),(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:"28px 24px",overflowY:"auto",background:"#000",backgroundImage:"radial-gradient(rgba(255,255,255,0.09) 1px, transparent 1px), radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px)",backgroundSize:"22px 22px, 13px 13px",backgroundPosition:"0 0, 8px 11px"},children:v?(0,c.jsx)(Dae,{am:e,systemId:t,incoming:S,outgoing:b,onNodeClick:o}):(0,c.jsx)("div",{style:{fontSize:11,color:"#1e293b",fontFamily:"JetBrains Mono, monospace"},children:"No connections"})})]})]})}),document.body),r&&(0,Up.createPortal)((0,c.jsx)(Zs,{filePath:r,onClose:()=>a(null)}),document.body)]})}function qae(e){let t=e.split(".").pop()?.toLowerCase()??"";return t==="tsx"?{label:"TSX",color:"#38bdf8"}:t==="ts"?{label:"TS",color:"#3b82f6"}:t==="jsx"?{label:"JSX",color:"#f59e0b"}:t==="js"?{label:"JS",color:"#eab308"}:t==="prisma"?{label:"DB",color:"#8b5cf6"}:{label:t.toUpperCase().slice(0,3),color:"#64748b"}}function Hae({file:e,onOpenXray:t}){let{label:n,color:i}=qae(e);return(0,c.jsxs)("div",{onClick:()=>t?.(e),style:{display:"flex",alignItems:"center",gap:7,cursor:t?"pointer":"default",padding:"2px 0"},onMouseEnter:o=>{let r=o.currentTarget.querySelector(".ef-path");r&&(r.style.color="#94a3b8")},onMouseLeave:o=>{let r=o.currentTarget.querySelector(".ef-path");r&&(r.style.color="#4a6a80")},title:e,children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.04em",color:i,background:i+"18",border:`1px solid ${i}33`,borderRadius:3,padding:"1px 4px",fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:n}),(0,c.jsx)("span",{className:"ef-path",style:{fontSize:11,color:"#4a6a80",fontFamily:"JetBrains Mono, monospace",lineHeight:1,transition:"color 0.12s",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e})]})}function Iae({step:e,index:t,am:n,onOpenXray:i}){let[o,r]=(0,J.useState)(!1),a=e.is_external?n.external?.find(S=>S.id===e.system_id):n.systems.find(S=>S.id===e.system_id),s=a?.name??e.system_id,l=e.is_external?"external":a?.layer??"service",u=Lae[l]??"#475569",d=e.evidenceFiles??[],f=!e.is_external&&d.length===0?(a?.key_files??[]).slice(0,3):[],p=f.length>0,h=p?f:d,y=o?h:h.slice(0,Fv),x=h.length-Fv;return(0,c.jsxs)("div",{style:{width:420,flexShrink:0,background:"#080808",border:"3px solid rgb(30, 30, 30)",borderRadius:6,padding:"18px 22px",position:"relative",display:"flex",flexDirection:"column",gap:10},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.1em",color:u,background:u+"15",border:`1px solid ${u}30`,borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace",textTransform:"uppercase"},children:e.is_external?"external":l}),(0,c.jsx)("span",{style:{fontSize:9,color:"#253040",fontFamily:"JetBrains Mono, monospace"},children:String(t+1).padStart(2,"0")})]}),(0,c.jsx)("div",{style:{fontSize:15,fontWeight:700,color:"#e2e8f0",fontFamily:"Inter, sans-serif",lineHeight:1.2},children:s}),(0,c.jsx)("div",{style:{fontSize:13,color:"#64748b",fontFamily:"Inter, sans-serif",lineHeight:1.65},children:e.action}),h.length>0&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:2,marginTop:4,borderTop:"1px solid #0f1820",paddingTop:10},children:[(0,c.jsx)("div",{style:{fontSize:8,fontFamily:"JetBrains Mono, monospace",color:"#1e3a2a",letterSpacing:"0.1em",marginBottom:4},children:p?"KEY FILES":"EVIDENCE"}),y.map(S=>(0,c.jsx)(Hae,{file:S,onOpenXray:i},S)),x>0&&!o&&(0,c.jsxs)("span",{onClick:()=>r(!0),style:{fontSize:10,color:"#2a4a6a",fontFamily:"JetBrains Mono, monospace",cursor:"pointer",marginTop:3},onMouseEnter:S=>{S.currentTarget.style.color="#4a7a9a"},onMouseLeave:S=>{S.currentTarget.style.color="#2a4a6a"},children:["+ ",x," more file",x>1?"s":""]}),o&&h.length>Fv&&(0,c.jsx)("span",{onClick:()=>r(!1),style:{fontSize:10,color:"#2a4a6a",fontFamily:"JetBrains Mono, monospace",cursor:"pointer",marginTop:3},onMouseEnter:S=>{S.currentTarget.style.color="#4a7a9a"},onMouseLeave:S=>{S.currentTarget.style.color="#2a4a6a"},children:"\u2191 show less"})]})]})}function Fae({flow:e,am:t,onOpenXray:n}){return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"},children:[(0,c.jsxs)("div",{style:{marginBottom:40,alignSelf:"flex-start"},children:[(0,c.jsx)("div",{style:{fontSize:16,fontWeight:700,color:"#c8c8c8",fontFamily:"Inter, sans-serif",marginBottom:6},children:e.name}),(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.12em",color:"#334155",background:"#0a0a0a",border:"1px solid #1a1a1a",borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace",textTransform:"uppercase"},children:"TRIGGER"}),(0,c.jsx)("span",{style:{fontSize:11,color:"#475569",fontFamily:"Inter, sans-serif"},children:e.trigger})]})]}),e.steps.map((i,o)=>{let r=o===e.steps.length-1;return(0,c.jsxs)(J.default.Fragment,{children:[(0,c.jsx)(Iae,{step:i,index:o,am:t,onOpenXray:n}),!r&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",height:40},children:[(0,c.jsx)("div",{style:{flex:1,width:1.5,background:"#1a2a3a"}}),(0,c.jsx)("svg",{width:"16",height:"10",viewBox:"0 0 16 10",style:{flexShrink:0},children:(0,c.jsx)("polygon",{points:"0,0 16,0 8,10",fill:"#1a2a3a"})})]})]},o)})]})}function Uae({am:e,onFlowsReady:t}){let[n,i]=(0,J.useState)(null),[o,r]=(0,J.useState)(!1),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(null);(0,J.useEffect)(()=>{let p=new EventSource("/api/events");return p.onmessage=h=>{try{let y=JSON.parse(h.data);y.type==="flows-progress"&&s(y.step),y.type==="flows-ready"&&(r(!1),s(null),t()),y.type==="flows-error"&&(r(!1),s(`Error: ${y.error}`))}catch{}},()=>p.close()},[t]);function d(){r(!0),s("Starting\u2026"),fetch("/api/generate-flows",{method:"POST"}).catch(()=>r(!1))}if(!e)return(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",color:"#2a2a2a",fontSize:12,fontFamily:"JetBrains Mono, monospace"},children:"Generate an Architecture Map first to see flows."});let f=e.flows.length>0?e.flows.find(p=>p.id===n)??e.flows[0]:null;return(0,c.jsxs)("div",{style:{display:"flex",height:"100%",background:"#000",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{width:360,flexShrink:0,borderRight:"1px solid #111",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{padding:"12px 18px 10px",borderBottom:"1px solid #111",display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,c.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"#3a3a3a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:["Flows \xB7 ",e.flows.length]}),(0,c.jsx)("button",{onClick:d,disabled:o,style:{background:"none",border:"1px solid #1a2030",borderRadius:4,padding:"3px 10px",cursor:o?"not-allowed":"pointer",fontSize:9,color:o?"#2a3a4a":"#3a5a7a",fontFamily:"monospace",letterSpacing:"0.06em",opacity:o?.6:1},children:o?"\u2026":"\u21BB Refresh"})]}),o&&a&&(0,c.jsx)("div",{style:{padding:"6px 18px",borderBottom:"1px solid #0a0a0a",fontSize:9,color:"#2a4a6a",fontFamily:"monospace"},children:a}),e.flows.length===0?(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontSize:10,color:"#1a1a1a",fontFamily:"monospace",textAlign:"center",lineHeight:1.6},children:o?"Generating flows\u2026":`No flows yet.
27
+ `]},o)})}function Mr({diffText:e,highlight:t,style:n}){return(0,Pi.jsx)("pre",{style:{margin:0,padding:"10px 14px",fontSize:13,fontFamily:"JetBrains Mono, monospace",lineHeight:1.65,whiteSpace:"pre",...n},children:(0,Pi.jsx)("code",{style:sae,children:lae(e,t)})})}var Pi,OB,ba,aae,sae,Dv=Z(()=>{"use strict";Pi=xt(In()),OB=/(\/\/[^\n]*|\/\*[\s\S]*?\*\/)|("(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|`(?:\\.|[^`\\])*`)|(\b\d[\w.]*\b)|\b(const|let|var|function|return|if|else|for|while|do|switch|case|break|continue|new|class|extends|export|import|from|default|async|await|yield|try|catch|finally|throw|typeof|instanceof|in|of|void|delete|this|super|null|undefined|true|false|static|get|set|public|private|protected|readonly|interface|type|enum|implements|namespace|declare|as|satisfies)\b|([A-Za-z_$][\w$]*)(?=\s*\()|\b([A-Z][\w$]*)\b|([A-Za-z_$][\w$]*)|([{}()[\].;,:=+\-*/%<>!&|?~^@]+)|(\s+)/g,ba={comment:"#6e7681",string:"#a5d6ff",number:"#79c0ff",keyword:"#ff7b72",func:"#d2a8ff",type:"#ffa657",punct:"#8b949e"};aae={display:"block",minWidth:"100%",width:"max-content",boxSizing:"border-box"},sae={display:"inline-block",minWidth:"100%",verticalAlign:"top"}});function qB(e,t,n,i={}){let o=i.color??"#334155",r={type:hr.ArrowClosed,width:10,height:10,color:o};return{id:e,source:t,target:n,type:"smoothstep",markerEnd:r,style:{stroke:o,strokeWidth:1.2,opacity:.5,strokeDasharray:i.dashed?"4 3":void 0},label:i.label,labelStyle:{fontSize:9,fill:o},labelBgStyle:{fill:"#0f172a",fillOpacity:.85},labelBgPadding:[4,2],labelBgBorderRadius:3}}function Hp(e,t,n){if(!e||!t)return e;let i=new Set,o=/([A-Za-z_$][\w$]*)\s*\(/g,r;for(;(r=o.exec(t))!==null;)i.add(r[1]);if(i.size===0)return e;let a=/[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)*/g,s=[],l=0,u=0,d;for(;(d=a.exec(e))!==null;){let f=d[0],p=f.split("."),h=p[p.length-1],y=p.length>1;i.has(h)&&(!y&&!/[A-Z]/.test(f)||(d.index>l&&s.push(e.slice(l,d.index)),s.push((0,c.jsx)("em",{onClick:n?()=>n(f):void 0,style:{fontStyle:"italic",...n?{borderBottom:"1px dotted currentColor",cursor:"pointer",paddingBottom:.5}:{}},children:f},u++)),l=d.index+f.length))}return s.length===0?e:(l<e.length&&s.push(e.slice(l)),s)}function uae({source:e}){let t=YB[e]??"#475569";return(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.06em",color:t,background:t+"18",border:`1px solid ${t}44`,borderRadius:3,padding:"1px 4px",fontFamily:"monospace",textTransform:"uppercase"},children:e})}function HB({path:e}){if(e.endsWith("/"))return(0,c.jsx)("span",{className:"l1-of-ext-folder",children:dae});let t=e.split(".").pop()?.toLowerCase()??"",i={ts:"devicon-typescript-plain colored",tsx:"devicon-typescript-plain colored",js:"devicon-javascript-plain colored",jsx:"devicon-javascript-plain colored",py:"devicon-python-plain colored",go:"devicon-go-plain colored",rs:"devicon-rust-plain",prisma:"devicon-prisma-original",vue:"devicon-vuejs-plain colored",svelte:"devicon-svelte-plain colored"}[t];return i?(0,c.jsx)("i",{className:`${i} l1-of-ext-icon`}):null}function jB(e,t){if(e.length<=t)return[e];let n=e.split(" "),i=[],o="";for(let r of n){let a=o?`${o} ${r}`:r;a.length<=t?o=a:(o&&i.push(o),o=r)}return o&&i.push(o),i}function $p({x:e,y:t,title:n,lines:i,svgW:o=9999}){let a=[];n&&a.push({t:n,bold:!0});for(let y of i)for(let x of jB(y,27))a.push({t:x,bold:!1});if(a.length===0)return null;let s=220,l=16,u=10,d=8,f=d*2+a.length*l,p=e+s>(o??680)-4?e-s-4:e,h=t-f<8?t+8:t-f-4;return(0,c.jsxs)("g",{pointerEvents:"none",children:[(0,c.jsx)("rect",{x:p,y:h,width:s,height:f,rx:3,fill:"#000",stroke:"#333",strokeWidth:.5,opacity:.92}),a.map((y,x)=>(0,c.jsx)("text",{x:p+u,y:h+d+(x+1)*l-2,fill:y.bold?"#fff":"#aaa",fontSize:12,fontWeight:y.bold?600:400,fontFamily:"JetBrains Mono, monospace",children:y.t},x))]})}function GB(e,t,n){let i=Math.floor((t-22)/n);return e.length>i?e.slice(0,i-1)+"\u2026":e}function hae({data:e,onDrill:t,showAll:n=!1,onNodeSelect:i}){let[o,r]=(0,J.useState)(null),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(null),d=i?null:l,f=V=>{i?i(V):u(V)},[p,h]=(0,J.useState)(null);(0,J.useEffect)(()=>{let V=fe=>{fe.key==="Escape"&&u(null)};return window.addEventListener("keydown",V),()=>window.removeEventListener("keydown",V)},[]);let y=e.textSummary,x=y?.systems.primary??[],S=y?.systems.secondary??[],b=(y?.systems.support??[]).sort((V,fe)=>fe.incomingCount-V.incomingCount),v=e.analysis.systems.length,g,m,w;if(n||v<=UB)g=x,m=S,w=b;else{g=x;let V=UB-g.length;m=S.slice(0,Math.max(V,0)),w=[]}let M=[];if(g.length&&M.push({label:Fp.primary,systems:g,tier:"primary"}),m.length&&M.push({label:Fp.secondary,systems:m,tier:"secondary"}),w.length&&M.push({label:Fp.support,systems:w,tier:"support"}),M.length===0)return null;let E=g.length+m.length+w.length;function N(V){if(V.length<=pae)return[V];let fe=Math.ceil(V.length/2);return[V.slice(0,fe),V.slice(fe)]}function A(V,fe){return V*fe+(V-1)*Ip}let $=[...N(g).map(V=>A(V.length,Js.primary.w)),...N(m).map(V=>A(V.length,Js.secondary.w)),...N(w).map(V=>A(V.length,Js.support.w))],D=Math.max(...$,400)+Ao*2,T=[],j=[],_=Ao,L=0;for(let V of M){let{w:fe}=Js[V.tier],he=N(V.systems);j.push(_+11);let Ge=_+FB;for(let Ie=0;Ie<he.length;Ie++){let ct=he[Ie],et=A(ct.length,fe),ft=Math.max(Ao,(D-et)/2);ct.forEach((jt,en)=>{T.push({sys:jt,x:ft+en*(fe+Ip),y:Ge,tier:V.tier,nodeColor:IB[L++%IB.length]})}),Ie<he.length-1&&(Ge+=kr+fae)}_=Ge+kr+Ov}let R=_-Ov+Ao,I=100,O=new Map;for(let V of T){let fe=e.synthesisResult?.systems.find(he=>he.id===V.sys.id);if(fe)for(let he of fe.uses_infra){let Ge=he.target.toLowerCase();O.has(Ge)||O.set(Ge,{name:he.target,usedByIds:[]}),O.get(Ge).usedByIds.push(V.sys.id)}}let Y=[...O.values()],B=R+Ov*.7,U=B+FB,H=Y.length*I+Math.max(0,Y.length-1)*Ip,te=Math.max(Ao,(D-H)/2),oe=Y.map((V,fe)=>({...V,x:te+fe*(I+Ip),y:U})),de=Y.length>0?U+kr+Ao:R,ue=new Map;for(let V of T){let fe=Js[V.tier].w;ue.set(V.sys.id,{cx:V.x+fe/2,cy:V.y+kr})}let pe=new Map;for(let V of oe)pe.set(V.name.toLowerCase(),{cx:V.x+I/2,cy:V.y});let K=new Set(T.map(V=>V.sys.id)),ge={primary:0,secondary:1,support:2},we=new Map(T.map(V=>[V.sys.id,V.tier])),Ce=new Map(T.map(V=>[V.sys.id,V.nodeColor])),ie=new Map(e.analysis.systems.map(V=>[V.id,V])),ne=[],Me=new Set;for(let{sys:V,tier:fe}of T)for(let he of ie.get(V.id)?.connections?.outgoing??[]){if(he.confidence<Gp||!K.has(he.targetSystemId))continue;let Ge=we.get(he.targetSystemId);if(!Ge)continue;let Ie=ge[fe]??0,ct=ge[Ge]??0;if(V.id===he.targetSystemId)continue;let et=`${V.id}>${he.targetSystemId}`;if(Me.has(et))continue;Me.add(et);let ft=ue.get(V.id),jt=ue.get(he.targetSystemId),en=Ce.get(V.id)??"#888",Je=he.confidence>=.8?2:he.confidence>=.6?1.4:1;if(ft&&jt){let rn=ft.cy<=jt.cy;ne.push({srcId:V.id,tgtId:he.targetSystemId,x1:ft.cx,cy1:ft.cy,x2e:jt.cx,cy2:rn?jt.cy-kr:jt.cy,color:en,markerId:`sarrow-${V.id.replace(/[^a-z0-9]/gi,"_")}`,thickness:Je})}}let me=new Set;if(o){me.add(o);for(let V of ne)V.srcId===o&&me.add(V.tgtId),V.tgtId===o&&me.add(V.srcId)}function Oe(V){return o?me.has(V)?1:.15:1}function Ve(V,fe){return o?V===o||fe===o?.9:.05:.5}return(0,c.jsxs)("div",{style:{position:"relative",width:"100%",height:"100%",background:"#000"},children:[(0,c.jsxs)("svg",{viewBox:`0 0 ${D} ${de}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"100%",maxHeight:"100%",background:"#000"},xmlns:"http://www.w3.org/2000/svg",onMouseLeave:()=>r(null),children:[(0,c.jsx)("defs",{children:T.map(V=>(0,c.jsx)("marker",{id:`sarrow-${V.sys.id.replace(/[^a-z0-9]/gi,"_")}`,viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"7",markerHeight:"7",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 2 L 8 5 L 0 8 z",fill:V.nodeColor})},V.sys.id))}),E<v&&(0,c.jsxs)("text",{x:D-Ao,y:11,textAnchor:"end",fill:"#484848",fontSize:9,fontFamily:"JetBrains Mono, monospace",children:["top ",E," of ",v," systems shown"]}),ne.map((V,fe)=>{let he=o&&(V.srcId===o||V.tgtId===o);return(0,c.jsx)("line",{x1:V.x1,y1:V.cy1,x2:V.x2e,y2:V.cy2,stroke:V.color,strokeWidth:he?V.thickness:.5,opacity:Ve(V.srcId,V.tgtId),markerEnd:`url(#${V.markerId})`},fe)}),oe.flatMap(V=>V.usedByIds.map(fe=>{let he=ue.get(fe),Ge=pe.get(V.name.toLowerCase());if(!he||!Ge)return null;let Ie=o===fe,ct=a===V.name.toLowerCase(),et=Ie||ct,ft=!!(o||a);return(0,c.jsx)("line",{x1:he.cx,y1:he.cy,x2:Ge.cx,y2:Ge.cy,stroke:"#1e3a3a",strokeWidth:et?1.4:.6,strokeDasharray:"3 2",opacity:ft?et?.7:.04:.35},`infra-${fe}-${V.name}`)})),M.map((V,fe)=>{let{w:he}=Js[V.tier],Ge=T.filter(Ie=>Ie.tier===V.tier);return(0,c.jsxs)("g",{children:[(0,c.jsx)("text",{x:Ao,y:j[fe],fill:"#383838",fontSize:8.5,fontWeight:700,letterSpacing:1.8,fontFamily:"JetBrains Mono, monospace",children:V.label}),Ge.map(({sys:Ie,x:ct,y:et})=>{let ft=Ie.incomingCount===0,jt=GB(Ie.name,he,7.2),en=GB(Ie.description??Ie.type.replace(/-/g," "),he,5.4),Je=(ie.get(Ie.id)?.connections?.outgoing??[]).filter(Di=>Di.confidence>=Gp&&K.has(Di.targetSystemId)).length,rn=Ie.incomingCount>0&&Je>0?`used by ${Ie.incomingCount} \xB7 uses ${Je}`:Ie.incomingCount>0?`used by ${Ie.incomingCount}`:Je>0?`uses ${Je}`:"",Ei=Oe(Ie.id);return(0,c.jsxs)("g",{opacity:Ei,onClick:()=>f(Ie.id),onMouseEnter:Di=>{r(Ie.id),h({x:ct+he/2,y:et})},onMouseLeave:()=>{r(null),h(null)},style:{cursor:"pointer",transition:"opacity 0.15s"},children:[(0,c.jsx)("rect",{x:ct,y:et,width:he,height:kr,rx:4,fill:"#111",stroke:"#1e1e1e",strokeWidth:1}),(0,c.jsx)("text",{x:ct+9,y:et+20,fill:"#c8c8c8",fontSize:10,fontWeight:600,fontFamily:"JetBrains Mono, monospace",children:jt}),(0,c.jsx)("text",{x:ct+9,y:et+34,fill:"#484848",fontSize:8,children:en}),rn&&(0,c.jsx)("text",{x:ct+9,y:et+52,fill:"#333",fontSize:7.5,fontFamily:"JetBrains Mono, monospace",children:rn})]},Ie.id)})]},V.tier)}),oe.length>0&&(0,c.jsxs)("g",{children:[(0,c.jsx)("text",{x:Ao,y:B+11,fill:"#1e3a3a",fontSize:8.5,fontWeight:700,letterSpacing:1.8,fontFamily:"JetBrains Mono, monospace",children:"EXTERNAL"}),oe.map(V=>{let fe=a===V.name.toLowerCase(),he=o&&!V.usedByIds.includes(o),Ge=a&&a!==V.name.toLowerCase(),Ie=he||Ge?.1:1,ct=V.usedByIds.map(et=>ie.get(et)?.name??et);return(0,c.jsxs)("g",{opacity:Ie,style:{cursor:"pointer",transition:"opacity 0.15s"},onMouseEnter:()=>{s(V.name.toLowerCase()),r(null)},onMouseLeave:()=>s(null),children:[(0,c.jsx)("rect",{x:V.x,y:V.y,width:I,height:kr,rx:4,fill:fe?"rgba(30,58,58,0.25)":"transparent",stroke:fe?"#2a6a6a":"#1e3a3a",strokeWidth:1,strokeDasharray:"4 2"}),(0,c.jsx)("text",{x:V.x+9,y:V.y+22,fill:fe?"#3a8a8a":"#2a5a5a",fontSize:10,fontWeight:600,fontFamily:"JetBrains Mono, monospace",children:V.name.length>12?V.name.slice(0,11)+"\u2026":V.name}),(0,c.jsx)("text",{x:V.x+9,y:V.y+38,fill:"#1e3a3a",fontSize:7.5,children:"external service"}),(0,c.jsx)("text",{x:V.x+9,y:V.y+52,fill:"#1a3a3a",fontSize:7.5,fontFamily:"JetBrains Mono, monospace",children:V.usedByIds.length===1?"used by 1":`used by ${V.usedByIds.length}`}),(0,c.jsx)("rect",{x:V.x,y:V.y,width:I,height:kr,rx:4,fill:"transparent"}),fe&&(0,c.jsx)($p,{x:V.x+I/2,y:V.y,title:V.name,lines:["Used by: "+ct.join(", ")],svgW:D})]},V.name)})]}),o&&p&&(()=>{let V=T.find(he=>he.sys.id===o),fe=V?.sys.description??"";return fe?(0,c.jsx)($p,{x:p.x,y:p.y,title:V?.sys.name,lines:[fe],svgW:D}):null})()]}),d&&(0,c.jsx)(VB,{sysId:d,data:e,onClose:()=>u(null),onNodeClick:V=>u(V),onDrillFull:(V,fe)=>{u(null),t(V,fe)}})]})}function gae({data:e,onDrill:t,onClose:n}){let[i,o]=(0,J.useState)(.9),[r,a]=(0,J.useState)({x:0,y:0}),[s,l]=(0,J.useState)(!1),[u,d]=(0,J.useState)(null),f=(0,J.useRef)(null),p=(0,J.useRef)(null);(0,J.useEffect)(()=>{let v=g=>{g.key==="Escape"&&n()};return window.addEventListener("keydown",v),()=>window.removeEventListener("keydown",v)},[n]);let h=(0,J.useCallback)(v=>{if(!p.current)return;let g=p.current.getBoundingClientRect(),m=v.clientX-g.left,w=v.clientY-g.top,M=v.deltaY<0?1.12:1/1.12;o(E=>{let N=Math.max(.15,Math.min(5,E*M));return a(A=>({x:m-(m-A.x)*(N/E),y:w-(w-A.y)*(N/E)})),N})},[]),y=(0,J.useCallback)(v=>{f.current={startX:v.clientX,startY:v.clientY,panX:r.x,panY:r.y},l(!0)},[r]),x=(0,J.useCallback)(v=>{f.current&&a({x:f.current.panX+(v.clientX-f.current.startX),y:f.current.panY+(v.clientY-f.current.startY)})},[]),S=(0,J.useCallback)(()=>{l(!1),f.current=null},[]),b={background:"none",border:"1px solid #1e1e1e",color:"#484848",borderRadius:4,padding:"3px 8px",cursor:"pointer",fontSize:13,lineHeight:1,fontFamily:"monospace"};return(0,c.jsx)("div",{style:{position:"fixed",inset:0,zIndex:2e3,background:"#000000bb"},onClick:n,children:(0,c.jsxs)("div",{style:{position:"absolute",inset:32,background:"#000",border:"1px solid #1a1a1a",borderRadius:8,overflow:"hidden",display:"flex",flexDirection:"column"},onClick:v=>v.stopPropagation(),children:[(0,c.jsxs)("div",{style:{padding:"8px 16px",borderBottom:"1px solid #1a1a1a",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,c.jsx)("span",{style:{fontSize:10,color:"#383838",fontWeight:700,letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace"},children:"Architecture Map"}),(0,c.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[(0,c.jsx)("button",{onClick:()=>o(v=>Math.min(5,v*1.25)),style:b,children:"+"}),(0,c.jsxs)("span",{style:{fontSize:10,color:"#484848",fontFamily:"monospace",minWidth:38,textAlign:"center"},children:[Math.round(i*100),"%"]}),(0,c.jsx)("button",{onClick:()=>o(v=>Math.max(.15,v/1.25)),style:b,children:"\u2212"}),(0,c.jsx)("button",{onClick:()=>{o(.9),a({x:0,y:0})},style:{...b,marginLeft:4,padding:"3px 10px"},children:"Reset"}),(0,c.jsx)("button",{onClick:n,style:{...b,marginLeft:8,fontSize:16,padding:"1px 8px",color:"#6e7681"},children:"\xD7"})]})]}),(0,c.jsx)("div",{ref:p,style:{flex:1,overflow:"hidden",cursor:s?"grabbing":"grab"},onWheel:h,onMouseDown:y,onMouseMove:x,onMouseUp:S,onMouseLeave:S,children:(0,c.jsx)("div",{style:{width:"100%",height:"100%",transform:`translate(${r.x}px, ${r.y}px) scale(${i})`,transformOrigin:"0 0",userSelect:"none"},children:(0,c.jsx)(hae,{data:e,showAll:!0,onDrill:(v,g)=>{n(),t(v,g)},onNodeSelect:v=>d(v)})})}),u&&(0,c.jsx)(VB,{sysId:u,data:e,onClose:()=>d(null),onNodeClick:v=>d(v),onDrillFull:(v,g)=>{d(null),n(),t(v,g)}})]})})}function Zs({filePath:e,onClose:t}){return(0,c.jsx)("div",{className:"sdm-backdrop",onClick:t,style:{zIndex:3e3},children:(0,c.jsx)("div",{className:"sdm-modal",onClick:n=>n.stopPropagation(),style:{maxWidth:1040,width:"92vw",height:"88vh",overflow:"hidden",display:"flex",flexDirection:"column"},children:(0,c.jsx)("div",{style:{flex:1,overflow:"hidden"},children:(0,c.jsx)(Bv,{filePath:e,onClose:t})})})})}function VB({sysId:e,data:t,onClose:n,onNodeClick:i,onDrillFull:o}){let[r,a]=(0,J.useState)(null);(0,J.useEffect)(()=>{let f=p=>{if(p.key==="Escape"){if(r){a(null);return}n()}};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[n,r]);let s=t.analysis.systems.find(f=>f.id===e);if(!s)return null;let l=t.synthesisResult?.systems.find(f=>f.id===e),u=Fp[s.systemTier]??s.systemTier.toUpperCase(),d=(s.entryPoints??[]).slice(0,1);return(0,Up.createPortal)((0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("div",{className:"sdm-backdrop",onClick:n,children:(0,c.jsxs)("div",{className:"sdm-modal",onClick:f=>f.stopPropagation(),children:[(0,c.jsx)("div",{className:"sdm-header",children:(0,c.jsxs)("div",{className:"sdm-header-left",children:[(0,c.jsxs)("div",{className:"sdm-header-top-row",children:[(0,c.jsx)("span",{className:"sdm-tier-badge",children:u}),s.type&&s.type!=="unknown"&&(0,c.jsx)("span",{className:"sdm-badge",children:s.type}),s.packageArchetype&&(0,c.jsx)("span",{className:"sdm-badge",children:s.packageArchetype}),(s.detectedTech??[]).slice(0,3).map(f=>(0,c.jsx)("span",{className:"sdm-badge",children:f},f))]}),(0,c.jsx)("div",{className:"sdm-name",children:s.name}),s.description&&(0,c.jsx)("div",{className:"sdm-desc",children:s.description}),d.length>0&&(0,c.jsx)("div",{className:"sdm-ep-strip",style:{alignItems:"flex-start",marginTop:10},children:d.map((f,p)=>(0,c.jsxs)("div",{className:"sdm-ep-chip",title:f.reason??f.path,children:[(0,c.jsx)(HB,{path:f.path}),(0,c.jsx)("span",{className:"sdm-ep-path",children:f.path})]},p))}),s.blocks&&s.blocks.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:["Files \xB7 ",s.blocks.length," ",(0,c.jsx)("span",{style:{color:"#334155",fontWeight:400,fontSize:8},children:"\xB7 click to X-Ray"})]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:s.blocks.map((f,p)=>(0,c.jsxs)("button",{onClick:()=>a(f.path),style:{display:"inline-flex",alignItems:"center",gap:4,fontSize:10,fontFamily:"monospace",color:"#94a3b8",background:"rgba(255,255,255,0.05)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:4,padding:"2px 7px",cursor:"pointer",whiteSpace:"nowrap"},onMouseEnter:h=>{h.currentTarget.style.background="rgba(99,102,241,0.15)",h.currentTarget.style.borderColor="rgba(99,102,241,0.4)",h.currentTarget.style.color="#c7d2fe"},onMouseLeave:h=>{h.currentTarget.style.background="rgba(255,255,255,0.05)",h.currentTarget.style.borderColor="rgba(255,255,255,0.08)",h.currentTarget.style.color="#94a3b8"},children:[(0,c.jsx)(HB,{path:f.path}),f.name]},p))})]}),l&&l.owns_models.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:["Domain Models \xB7 ",l.owns_models.length]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:l.owns_models.map(f=>(0,c.jsx)("span",{style:{fontSize:10,fontFamily:"monospace",color:"#c4b5fd",background:"rgba(139,92,246,0.12)",border:"1px solid rgba(139,92,246,0.25)",borderRadius:4,padding:"2px 7px"},children:f},f))})]}),l&&l.uses_infra.length>0&&(0,c.jsxs)("div",{style:{marginTop:12},children:[(0,c.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#475569",letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:6},children:"Infra Dependencies"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:l.uses_infra.map(f=>(0,c.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:10,fontFamily:"monospace",color:"#94a3b8",background:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:4,padding:"2px 7px"},children:[f.target,(0,c.jsx)(uae,{source:f.source})]},f.target))})]})]})}),(0,c.jsx)("div",{className:"sdm-graph",children:(0,c.jsx)(mae,{data:t,focusId:e,onNodeClick:i})}),(0,c.jsx)("div",{className:"sdm-modal-footer",children:(0,c.jsx)("button",{className:"sdm-drill-btn",onClick:()=>o(s.id,s.name),children:"Open full detail \u2192"})})]})}),r&&(0,c.jsx)(Zs,{filePath:r,onClose:()=>a(null)})]}),document.body)}function mae({data:e,focusId:t,onNodeClick:n}){let i=e.analysis.systems.find(H=>H.id===t),[o,r]=(0,J.useState)(null);if(!i)return null;let a=new Map(e.analysis.systems.map(H=>[H.id,H])),s=5,l=(i.connections?.incoming??[]).filter(H=>H.confidence>=Gp),u=(i.connections?.outgoing??[]).filter(H=>H.confidence>=Gp),d=new Set(u.map(H=>H.targetSystemId)),f=l.filter(H=>!d.has(H.targetSystemId)),p=f.slice(0,s),h=u.slice(0,6),y=f.length-p.length,x=p.length>0||h.length>0,S=180,b=96,v=180,g=50,m=10,w=68,M=20,E=38,N="#4a9eff",A=i.description??i.type??"",$=jB(A,26).slice(0,2),D=p.length*g+Math.max(0,p.length-1)*m,T=h.length*g+Math.max(0,h.length-1)*m,j=Math.max(b,D,T)+M*2,_=j+E,L=x?M+v+w+S+w+v+M:M+S+M,R=M,I=x?M+v+w:M,O=x?I+S+w:0,Y=(j-b)/2,B=Y+b/2;function U(H,te){let oe=te*g+Math.max(0,te-1)*m;return(j-oe)/2+H*(g+m)}return(0,c.jsxs)("svg",{viewBox:`0 0 ${L} ${_}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"100%",maxHeight:"100%"},children:[(0,c.jsxs)("defs",{children:[(0,c.jsx)("marker",{id:"ego-arrow-in",viewBox:"0 0 10 10",refX:"7",refY:"5",markerWidth:"4",markerHeight:"4",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 1 L 9 5 L 0 9 z",fill:"#555"})}),(0,c.jsx)("marker",{id:"ego-arrow-out",viewBox:"0 0 10 10",refX:"7",refY:"5",markerWidth:"4",markerHeight:"4",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 1 L 9 5 L 0 9 z",fill:N})}),(0,c.jsx)("clipPath",{id:"ego-clip-center",children:(0,c.jsx)("rect",{x:I+1,y:Y+1,width:S-16,height:b-2})}),p.map((H,te)=>(0,c.jsx)("clipPath",{id:`ego-clip-in-${te}`,children:(0,c.jsx)("rect",{x:R+1,y:U(te,p.length)+1,width:v-14,height:g-2})},H.targetSystemId)),h.map((H,te)=>(0,c.jsx)("clipPath",{id:`ego-clip-out-${te}`,children:(0,c.jsx)("rect",{x:O+1,y:U(te,h.length)+1,width:v-14,height:g-2})},H.targetSystemId))]}),p.map((H,te)=>{let oe=U(te,p.length)+g/2;return(0,c.jsx)("line",{x1:R+v,y1:oe,x2:I,y2:B,stroke:"#555",strokeWidth:1,opacity:.6,markerEnd:"url(#ego-arrow-in)"},H.targetSystemId)}),h.map((H,te)=>{let oe=U(te,h.length)+g/2,de=(I+S+O)/2,ue=(B+oe)/2,pe=H.reason,K=pe?YB[pe]??"#475569":"#475569";return(0,c.jsxs)("g",{children:[(0,c.jsx)("line",{x1:I+S,y1:B,x2:O,y2:oe,stroke:N,strokeWidth:1,opacity:.6,markerEnd:"url(#ego-arrow-out)"}),pe&&pe!=="import"&&(0,c.jsxs)("g",{children:[(0,c.jsx)("rect",{x:de-14,y:ue-7,width:28,height:12,rx:2,fill:"#0a0a0a",stroke:K+"55",strokeWidth:.5}),(0,c.jsx)("text",{x:de,y:ue+3,textAnchor:"middle",fill:K,fontSize:7,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:.3,children:pe})]})]},H.targetSystemId)}),p.map((H,te)=>{let oe=U(te,p.length),de=a.get(H.targetSystemId)?.description??"";return(0,c.jsxs)("g",{onClick:()=>n?.(H.targetSystemId),onMouseEnter:()=>de&&r({x:R,y:oe,lines:[de]}),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,c.jsx)("rect",{x:R,y:oe,width:v,height:g,rx:4,fill:"#111",stroke:"#222",strokeWidth:1}),(0,c.jsx)("text",{x:R+10,y:oe+g/2+4,fill:"#ccc",fontSize:11,fontWeight:600,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#ego-clip-in-${te})`,children:H.targetSystemName})]},H.targetSystemId)}),(0,c.jsx)("rect",{x:I,y:Y,width:S,height:b,rx:5,fill:"#0f1620",stroke:N,strokeWidth:1.5}),(0,c.jsx)("text",{x:I+12,y:Y+30,fill:"#d0d8e8",fontSize:13,fontWeight:700,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-center)",children:i.name}),$.map((H,te)=>(0,c.jsx)("text",{x:I+12,y:Y+52+te*14,fill:"#4a6080",fontSize:9.5,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-center)",children:H},te)),x&&p.length>0&&(0,c.jsx)("text",{x:R,y:j+11,fill:"#666",fontSize:9,fontWeight:600,letterSpacing:.5,fontFamily:"JetBrains Mono, monospace",children:`\u25B2 CONSUMERS OF "${i.name}"`}),y>0&&(0,c.jsxs)("text",{x:R,y:j+24,fill:"#555",fontSize:8.5,fontFamily:"JetBrains Mono, monospace",children:["+",y," more not shown"]}),x&&h.length>0&&(0,c.jsx)("text",{x:O,y:j+11,fill:"#666",fontSize:9,fontWeight:600,letterSpacing:.5,fontFamily:"JetBrains Mono, monospace",children:`\u25BC "${i.name}" DEPENDS ON`}),h.map((H,te)=>{let oe=U(te,h.length),de=a.get(H.targetSystemId)?.description??"";return(0,c.jsxs)("g",{onClick:()=>n?.(H.targetSystemId),onMouseEnter:()=>de&&r({x:O,y:oe,lines:[de]}),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,c.jsx)("rect",{x:O,y:oe,width:v,height:g,rx:4,fill:"#111",stroke:"#222",strokeWidth:1}),(0,c.jsx)("text",{x:O+10,y:oe+g/2+4,fill:"#ccc",fontSize:11,fontWeight:600,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#ego-clip-out-${te})`,children:H.targetSystemName})]},H.targetSystemId)}),o&&(0,c.jsx)($p,{x:o.x,y:o.y,lines:o.lines,svgW:L})]})}function yae(e,t){if(!e)return{nodes:[],edges:[]};let n=e.folders.filter(a=>a.depth===1),i=e.filesByFolder.__root__??[],o=[],r=[];o.push({id:"__root__",type:"folder",position:{x:0,y:0},data:{name:e.systemName,role:"lib",fileCount:i.length,isRoot:!0,onDrill:()=>t("__root__",e.systemName)}});for(let a of n)o.push({id:a.id,type:"folder",position:{x:0,y:0},data:{name:a.name,role:a.role,fileCount:a.fileCount,isRoot:!1,onDrill:()=>t(a.id,a.name)}}),r.push(qB(`e-root-${a.id}`,"__root__",a.id,{color:"#334155"}));if(n.length<=6){let a=e.folders.filter(s=>s.depth===2);for(let s of a)o.find(l=>l.id===s.id)||o.push({id:s.id,type:"folder",position:{x:0,y:0},data:{name:s.name,role:s.role,fileCount:s.fileCount,isRoot:!1,onDrill:()=>t(s.id,s.name)}}),s.parentId&&o.find(l=>l.id===s.parentId)&&r.push(qB(`e-${s.parentId}-${s.id}`,s.parentId,s.id,{color:"#1e293b"}))}return _B(o,r,"TB",{nodeWidth:180,nodeHeight:56,rankSep:60,nodeSep:30})}function bae({files:e,onSelect:t,selected:n}){let i={};for(let a of e)i[a.role]||(i[a.role]=[]),i[a.role].push(a);let r=["entry","service","component","types","util","config","style","test","other"].filter(a=>i[a]?.length>0);return(0,c.jsxs)("div",{className:"l3-grid",children:[r.map(a=>(0,c.jsxs)("div",{className:"l3-group",children:[(0,c.jsx)("div",{className:"l3-group-label",style:{color:$B[a]},children:vae[a]}),i[a].map(s=>(0,c.jsxs)("div",{className:`l3-file${n===s.path?" l3-file-selected":""}${s.isEntry?" l3-file-entry":""}`,onClick:()=>t(s),children:[(0,c.jsx)("span",{className:"l3-file-ext",style:{background:$B[a]},children:s.ext.replace(".","")||"?"}),(0,c.jsx)("span",{className:"l3-file-name",children:s.name})]},s.path))]},a)),e.length===0&&(0,c.jsx)("div",{className:"l3-empty",children:"No code files detected in this folder."})]})}function xae({systemId:e,data:t}){let n=t.analysis.systems.find(i=>i.id===e);return n?(0,c.jsxs)("div",{className:"detail-body",children:[(0,c.jsxs)("div",{className:"detail-type-row",children:[(0,c.jsx)("span",{className:"detail-type-badge",children:n.type}),(0,c.jsx)("span",{className:"detail-tier-badge",children:n.systemTier}),n.detectedTech?.slice(0,3).map(i=>(0,c.jsx)("span",{className:"detail-tech-badge",children:i},i))]}),(0,c.jsx)("p",{className:"detail-desc",children:n.description}),n.entryPoints?.length>0&&(0,c.jsxs)("div",{className:"detail-section",children:[(0,c.jsxs)("div",{className:"detail-section-title",children:["Entry points",(0,c.jsx)("span",{className:"detail-derive-label",children:"\xB7 detected from code"})]}),n.entryPoints.slice(0,3).map((i,o)=>(0,c.jsxs)("div",{className:"detail-entry",children:[(0,c.jsx)("span",{className:"detail-entry-path",children:i.path}),(0,c.jsx)("span",{className:"detail-entry-reason",children:i.reason})]},o))]})]}):null}function Sae({zoom:e,repoName:t,onNavigate:n}){let i=[{label:t,level:1}];return e.level>=2&&i.push({label:e.systemName,level:2}),e.level>=3&&i.push({label:e.folderName,level:3}),e.level>=4&&i.push({label:e.fileName,level:4}),(0,c.jsx)("div",{className:"breadcrumb",children:i.map((o,r)=>(0,c.jsxs)(J.default.Fragment,{children:[r>0&&(0,c.jsx)("span",{className:"bc-sep",children:"\u203A"}),(0,c.jsx)("button",{className:`bc-crumb${r===i.length-1?" bc-crumb-active":""}`,onClick:()=>r<i.length-1&&n(o.level),children:o.label})]},r))})}function wae({nodes:e,edges:t}){let[n,,i]=y3(e),[o,,r]=v3(t),{fitView:a}=Lc();return(0,J.useEffect)(()=>{setTimeout(()=>a({padding:.12,duration:300}),60)},[e.length]),(0,c.jsxs)(m3,{nodes:n,edges:o,onNodesChange:i,onEdgesChange:r,nodeTypes:T3,fitView:!0,fitViewOptions:{padding:.12},minZoom:.25,maxZoom:2.5,proOptions:{hideAttribution:!0},children:[(0,c.jsx)(w3,{showInteractive:!1}),(0,c.jsx)(x3,{variant:Vi.Dots,gap:20,size:1,color:"#1e293b"})]})}function Eae(e,t,n){let i=new Map;for(let[y,x]of Object.entries(t.clusterFiles))for(let S of x)i.set(S,y);let o=new Map;for(let y of n)y.rootPath&&o.set(y.rootPath,y);let r=new Map;for(let y of t.edges)r.has(y.to)||r.set(y.to,[]),r.get(y.to).push(y.from);let a=new Set,s=[];for(let y of e){let x=i.get(y);x?a.add(x):s.push(y)}let l=new Map,u=[];for(let y of a)l.set(y,{hops:0,via:[]}),u.push({clusterId:y,hops:0,via:[]});for(;u.length>0;){let{clusterId:y,hops:x,via:S}=u.shift(),b=r.get(y)??[];for(let v of b)if(!l.has(v)){let g=o.get(y),m=g?[...S,g.name]:S;l.set(v,{hops:x+1,via:m}),u.push({clusterId:v,hops:x+1,via:m})}}let d=[],f=[],p=[],h=[];for(let y of n){if(!y.rootPath)continue;let x=l.get(y.rootPath);x?x.hops===0?d.push(y):x.hops===1?f.push({system:y,via:x.via}):p.push({system:y,hops:x.hops,via:x.via}):h.push(y)}return p.sort((y,x)=>y.hops-x.hops),{changedSystems:d,directConsumers:f,transitiveConsumers:p,notAffected:h,unknownFiles:s}}function Lv({sys:e,badge:t,badgeColor:n,via:i}){let o=e.systemTier==="primary"?"#6366f1":e.systemTier==="secondary"?"#0ea5e9":"#374151";return(0,c.jsxs)("div",{style:{padding:"10px 20px 10px 16px",borderBottom:"1px solid #0d0d0d",display:"flex",gap:12,alignItems:"flex-start"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:o,marginTop:5,flexShrink:0}}),(0,c.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:2},children:[(0,c.jsx)("span",{style:{fontSize:13,fontWeight:600,color:"#c8c8c8"},children:e.name}),e.type&&e.type!=="unknown"&&(0,c.jsx)("span",{style:{fontSize:9,color:"#2a2a2a",fontFamily:"monospace"},children:e.type})]}),e.description&&(0,c.jsxs)("div",{style:{fontSize:11,color:"#3a3a3a",lineHeight:1.4},children:[e.description.slice(0,100),e.description.length>100?"\u2026":""]}),i&&i.length>0&&(0,c.jsxs)("div",{style:{fontSize:10,color:"#282828",fontFamily:"monospace",marginTop:4},children:["via \u2192 ",i.join(" \u2192 ")]})]}),(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,letterSpacing:"0.06em",fontFamily:"monospace",padding:"3px 8px",borderRadius:10,flexShrink:0,alignSelf:"flex-start",marginTop:1,background:n+"18",color:n,border:`1px solid ${n}30`},children:t})]})}function Cae(e){if(!e)return[];let t=new Set;for(let l of e.edges)t.add(l.from),t.add(l.to);for(let l of Object.keys(e.clusterFiles))t.add(l);let n=t.size,i=new Map;for(let l of t)i.set(l,[]);for(let l of e.edges)i.get(l.to)?.push(l.from);let o=new Map;for(let l of t){let u=new Set,d=[l];for(;d.length;){let f=d.shift();if(!u.has(f)){u.add(f);for(let p of i.get(f)??[])u.has(p)||d.push(p)}}o.set(l,u.size-1)}let r=Object.keys(e.clusterFiles).map(l=>o.get(l)??0).filter(l=>l>0),a=Math.max(...r,1),s=[];for(let[l,u]of Object.entries(e.clusterFiles)){if(!u.length)continue;let d=o.get(l)??0;if(d===0)continue;let f=d>=a*.6?"high":d>=a*.25?"medium":"low",p=[...u].sort((h,y)=>{let x=/\/(index|main|mod)\.(ts|tsx|js|jsx)$/.test(h),S=/\/(index|main|mod)\.(ts|tsx|js|jsx)$/.test(y);return x===S?h.length-y.length:x?-1:1});for(let h of p.slice(0,2))s.push({file:h,shortName:h.split("/").pop()??h,cluster:l,reach:d,level:f})}return s.sort((l,u)=>u.reach-l.reach).slice(0,40)}function qv({label:e,count:t,color:n}){return(0,c.jsxs)("div",{style:{padding:"8px 12px 4px",display:"flex",alignItems:"center",gap:6,borderTop:"1px solid #0d0d0d"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:n,display:"inline-block",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,fontWeight:700,color:n,letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:[e," \xB7 ",t]})]})}function Hv({r:e,selected:t,onToggle:n,onDetail:i}){let o=hu[e.level],[r,a]=(0,J.useState)(!1);return(0,c.jsxs)("div",{onMouseEnter:()=>a(!0),onMouseLeave:()=>a(!1),title:e.file,style:{display:"flex",alignItems:"center",gap:8,padding:"6px 10px 6px 12px",background:t?o.bg:r?"#0a0a0a":"transparent",borderLeft:`2px solid ${t?o.dot:"transparent"}`,transition:"background 0.1s"},children:[(0,c.jsx)("div",{onClick:n,style:{width:13,height:13,borderRadius:3,flexShrink:0,cursor:"pointer",border:`1px solid ${t?o.dot:"#222"}`,background:t?o.dot:"transparent",display:"flex",alignItems:"center",justifyContent:"center"},children:t&&(0,c.jsx)("svg",{width:"7",height:"7",viewBox:"0 0 8 8",fill:"none",children:(0,c.jsx)("path",{d:"M1.5 4L3 5.5L6.5 2",stroke:"#000",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,c.jsxs)("div",{onClick:i,style:{flex:1,minWidth:0,cursor:"pointer"},children:[(0,c.jsx)("div",{style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:t?"#c8c8c8":r?"#606060":"#484848",fontWeight:t?600:400,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e.shortName}),(0,c.jsx)("div",{style:{fontSize:9,color:"#252525",fontFamily:"monospace",marginTop:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e.cluster})]}),(0,c.jsxs)("span",{style:{fontSize:9,color:t?o.text:"#282828",flexShrink:0,fontFamily:"monospace"},children:[e.reach,"sys"]})]})}function Mae({data:e}){let[t,n]=(0,J.useState)(new Set),[i,o]=(0,J.useState)(null),[r,a]=(0,J.useState)(""),[s,l]=(0,J.useState)(null),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1),[h,y]=(0,J.useState)(null),x=!!e.graphData,S=(0,J.useMemo)(()=>Cae(e.graphData),[e.graphData]),b=(0,J.useMemo)(()=>{if(!r.trim())return S;let T=r.toLowerCase();return S.filter(j=>j.file.toLowerCase().includes(T)||j.shortName.toLowerCase().includes(T))},[S,r]),v=b.filter(T=>T.level==="high"),g=b.filter(T=>T.level==="medium"),m=b.filter(T=>T.level==="low");(0,J.useEffect)(()=>{if(!e.graphData||t.size===0){o(null);return}o(Eae([...t],e.graphData,e.analysis.systems))},[t,e.graphData,e.analysis.systems]);let w=(0,J.useCallback)(T=>{n(j=>{let _=new Set(j);return _.has(T)?_.delete(T):_.add(T),_})},[]),M=(0,J.useCallback)(()=>{d(!0),y(null),fetch("/api/git-changes").then(T=>T.json()).then(T=>{T.files?.length>0?n(new Set(T.files)):y("No staged or modified source files found."),d(!1)}).catch(()=>{y("Could not fetch git changes."),d(!1)})},[]),E=(0,J.useCallback)(()=>{p(!0),y(null),fetch("/api/git-head").then(T=>T.json()).then(T=>{T.files?.length>0?n(new Set(T.files)):y("No source files in HEAD commit."),p(!1)}).catch(()=>{y("Could not fetch HEAD commit."),p(!1)})},[]),N=i?i.changedSystems.length+i.directConsumers.length+i.transitiveConsumers.length:0,A=(0,J.useMemo)(()=>{let T=new Map;for(let j of S)T.set(j.file,j);return T},[S]),$={fontSize:10,padding:"3px 9px",borderRadius:4,cursor:"pointer",border:"1px solid #1e1e1e",background:"transparent",color:"#484848",fontFamily:"JetBrains Mono, monospace",whiteSpace:"nowrap"},D=(T,j,_)=>(0,c.jsxs)("div",{style:{padding:"14px 20px 6px",display:"flex",alignItems:"baseline",gap:10},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,color:_,letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:T}),(0,c.jsx)("span",{style:{fontSize:9,color:"#282828",fontFamily:"monospace"},children:j})]});return(0,c.jsxs)("div",{style:{display:"flex",height:"100%",background:"#000",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{width:272,flexShrink:0,borderRight:"1px solid #111",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{padding:"12px 12px 10px",borderBottom:"1px solid #111",flexShrink:0},children:[(0,c.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#2a2a2a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:8},children:"Most Impactful Files"}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,marginBottom:8,flexWrap:"wrap"},children:[(0,c.jsx)("button",{onClick:E,disabled:f,style:$,children:f?"\u2026":"\u2191 HEAD commit"}),(0,c.jsx)("button",{onClick:M,disabled:u,style:$,children:u?"\u2026":"\u2191 Staged changes"}),t.size>0&&(0,c.jsx)("button",{onClick:()=>n(new Set),style:{...$,color:"#ef444488",borderColor:"#ef444430"},children:"Clear"})]}),h&&(0,c.jsx)("div",{style:{fontSize:10,color:"#f59e0b",marginBottom:7,fontFamily:"monospace"},children:h}),(0,c.jsx)("input",{type:"text",placeholder:"Search files\u2026",value:r,onChange:T=>a(T.target.value),style:{width:"100%",boxSizing:"border-box",background:"#0a0a0a",border:"1px solid #1a1a1a",borderRadius:4,padding:"5px 9px",fontSize:11,color:"#606060",fontFamily:"JetBrains Mono, monospace",outline:"none"}})]}),(0,c.jsxs)("div",{style:{flex:1,overflowY:"auto"},children:[!x&&(0,c.jsx)("div",{style:{padding:"16px 12px",fontSize:10,color:"#f59e0b",fontFamily:"monospace"},children:"\u26A0 Run Memor with an API key to build the import graph"}),x&&b.length===0&&(0,c.jsx)("div",{style:{padding:"16px 12px",fontSize:10,color:"#282828",fontFamily:"monospace"},children:r?"No files match.":"No import relationships found."}),v.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"HIGH",count:v.length,color:hu.high.dot}),v.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]}),g.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"MEDIUM",count:g.length,color:hu.medium.dot}),g.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]}),m.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(qv,{label:"LOW",count:m.length,color:hu.low.dot}),m.map(T=>(0,c.jsx)(Hv,{r:T,selected:t.has(T.file),onToggle:()=>w(T.file),onDetail:()=>l(T.file)},T.file))]})]})]}),(0,c.jsx)("div",{style:{flex:1,overflowY:"auto"},children:t.size===0?(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",gap:14,padding:"0 48px",textAlign:"center"},children:[(0,c.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",style:{opacity:.12},children:[(0,c.jsx)("circle",{cx:"12",cy:"12",r:"3",stroke:"#fff",strokeWidth:"1.5"}),(0,c.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"5",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"12",y1:"19",x2:"12",y2:"22",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"2",y1:"12",x2:"5",y2:"12",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"19",y1:"12",x2:"22",y2:"12",stroke:"#fff",strokeWidth:"1.5",strokeLinecap:"round"})]}),(0,c.jsxs)("div",{style:{fontSize:11,color:"#282828",lineHeight:1.7,fontFamily:"monospace"},children:["Check a file's checkbox to see which systems would break.",(0,c.jsx)("br",{}),"Click a filename to inspect its imports, exports, and functions.",(0,c.jsx)("br",{}),"Or load changes from git automatically."]})]}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("div",{style:{padding:"10px 20px",borderBottom:"1px solid #0d0d0d",display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,color:"#252525",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace",marginRight:2,flexShrink:0},children:"Checking"}),[...t].map(T=>{let j=A.get(T),_=j?hu[j.level].dot:"#333",L=T.split("/").pop()??T;return(0,c.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:10,fontFamily:"monospace",padding:"2px 7px 2px 6px",borderRadius:4,border:`1px solid ${_}35`,background:_+"0e",color:"#484848"},children:[(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:_,flexShrink:0}}),L,(0,c.jsx)("span",{onClick:()=>w(T),style:{cursor:"pointer",color:"#303030",marginLeft:3,lineHeight:1,fontSize:13},children:"\xD7"})]},T)})]}),i&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("div",{style:{padding:"12px 20px",borderBottom:"1px solid #0d0d0d",background:N>0?"#ef444406":"#22c55e06"},children:N>0?(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:16,flexWrap:"wrap"},children:[(0,c.jsxs)("span",{style:{fontSize:14,fontWeight:700,color:"#ef4444",fontFamily:"monospace"},children:["\u26A1 ",N," ",N===1?"system":"systems"," in blast radius"]}),(0,c.jsxs)("div",{style:{display:"flex",gap:12},children:[i.changedSystems.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#f59e0b",fontFamily:"monospace"},children:[i.changedSystems.length," directly modified"]}),i.directConsumers.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#ef4444",fontFamily:"monospace"},children:[i.directConsumers.length," direct consumers"]}),i.transitiveConsumers.length>0&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#f97316",fontFamily:"monospace"},children:[i.transitiveConsumers.length," downstream"]})]})]}):(0,c.jsx)("span",{style:{fontSize:13,fontWeight:700,color:"#22c55e",fontFamily:"monospace"},children:"\u2713 No known systems affected \u2014 change is isolated"})}),i.unknownFiles.length>0&&(0,c.jsxs)("div",{style:{padding:"8px 20px 10px",borderBottom:"1px solid #0d0d0d"},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#f59e0b",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:4},children:["Not in import graph \xB7 ",i.unknownFiles.length," file",i.unknownFiles.length!==1?"s":""]}),(0,c.jsx)("div",{style:{fontSize:10,color:"#484848",fontFamily:"monospace"},children:i.unknownFiles.map(T=>T.split("/").pop()).join(" \xB7 ")})]}),i.changedSystems.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Directly Modified","\u2014 your changed files live in these systems","#f59e0b"),i.changedSystems.map(T=>(0,c.jsx)(Lv,{sys:T,badge:"MODIFIED",badgeColor:"#f59e0b"},T.id))]}),i.directConsumers.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Direct Consumers","\u2014 these systems import the code you changed","#ef4444"),i.directConsumers.map(({system:T,via:j})=>(0,c.jsx)(Lv,{sys:T,badge:"1 HOP",badgeColor:"#ef4444",via:j.length>0?j:void 0},T.id))]}),i.transitiveConsumers.length>0&&(0,c.jsxs)("div",{style:{borderBottom:"1px solid #0a0a0a"},children:[D("Downstream Effects","\u2014 indirectly affected through the import chain","#f97316"),i.transitiveConsumers.map(({system:T,hops:j,via:_})=>(0,c.jsx)(Lv,{sys:T,badge:`${j} HOPS`,badgeColor:"#f97316",via:_.length>0?_:void 0},T.id))]}),i.notAffected.length>0&&(0,c.jsxs)("div",{style:{padding:"14px 20px 20px"},children:[(0,c.jsxs)("div",{style:{fontSize:9,fontWeight:700,color:"#1a2a1a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace",marginBottom:8},children:["Not Affected \xB7 ",i.notAffected.length," systems"]}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5},children:i.notAffected.map(T=>(0,c.jsx)("span",{style:{fontSize:10,padding:"2px 8px",borderRadius:10,background:"#0a0a0a",color:"#242424",border:"1px solid #111",fontFamily:"monospace"},children:T.name},T.id))})]})]})]})}),s&&(0,c.jsx)(Zs,{filePath:s,onClose:()=>l(null)})]})}function Nae(e){let t=e.toLowerCase().trim();if(Iv[t])return Iv[t];for(let[n,i]of Object.entries(Iv))if(t.includes(n)||n.includes(t))return i;return null}function Aae(e){let t=e.toLowerCase();return t.includes("delete")||t.includes("remove")?{method:"DELETE",color:"#ef4444"}:t.includes("create")||t.includes("new")?{method:"POST",color:"#3b82f6"}:t.includes("update")||t.includes("edit")?{method:"PUT",color:"#f59e0b"}:t.startsWith("/api/")||t.includes("[id]")?{method:"GET",color:"#22c55e"}:{method:"GET",color:"#4b5563"}}function zae(e){let t=e.name.toLowerCase(),n=(t+" "+(e.description??"")+" "+(e.layer??"")).toLowerCase();return/auth|login|session|oauth|jwt|permission/.test(t)?"auth":/payment|billing|stripe|invoice|subscript/.test(t)?"payment":/\bui\b|component library|ui library/.test(t)?"ui":/database|prisma|data layer|data store/.test(t)?"database":/email|mail|smtp|sendgrid|notification/.test(t)?"email":/analytics|metrics|reporting|insight|tracking/.test(t)?"analytics":/cache|redis/.test(t)?"cache":/queue|job|worker|cron|background/.test(t)?"queue":/storage|upload|asset|s3|bucket/.test(t)?"storage":/workflow|automation|orchestrat/.test(t)?"workflow":/calendar|schedul|availab|slot|booking/.test(t)?"calendar":/video|call|meet|conference/.test(t)?"video":/search|elastic/.test(t)?"search":/i18n|international|translat|locale/.test(t)?"i18n":/config|setting/.test(t)?"config":/trpc/.test(t)?"trpc":/routing|form.*route|route.*form/.test(t)?"routing":/embed/.test(t)?"embed":/prisma|postgres|mysql|mongo|repository|orm/.test(n)?"database":(e.owns_routes?.length??0)>2?"api":null}function Bae({am:e,onNodeClick:t,onFileClick:n,changedFiles:i}){let[o,r]=(0,J.useState)(null),a=(0,J.useRef)(null),s=(0,J.useRef)(new Map),[l,u]=(0,J.useState)(new Map);(0,J.useEffect)(()=>{let m=()=>{if(!a.current)return;let M=new Map;for(let[E,N]of s.current)M.set(E,{cx:N.offsetLeft+N.offsetWidth/2,cy:N.offsetTop+N.offsetHeight/2});u(M)};m();let w=new ResizeObserver(m);return a.current&&w.observe(a.current),()=>w.disconnect()},[e]);let d=(0,J.useMemo)(()=>{if(!o)return new Map;let m=new Map,w=(E,N)=>{let A=m.get(E);A?A!==N&&m.set(E,"both"):m.set(E,N)};e.edges.forEach(E=>{E.from===o&&w(E.to,"used-by"),E.to===o&&w(E.from,"uses")});let M=e.external.find(E=>E.id===o);return M?M.used_by?.forEach(E=>w(E,"uses")):e.external.forEach(E=>{E.used_by?.includes(o)&&w(E.id,"used-by")}),m},[o,e]),f=o!==null,p=(0,J.useMemo)(()=>{let m=new Map,w=M=>m.set(M,(m.get(M)??0)+1);return e.edges.forEach(M=>{w(M.from),w(M.to)}),e.external.forEach(M=>(M.used_by??[]).forEach(()=>w(M.id))),m},[e]),h=(0,J.useMemo)(()=>Math.max(0,...p.values()),[p]),y=m=>{if(h<=2)return"hub";let w=p.get(m)??0;return w>=h*.6?"hub":w>=h*.3?"elevated":"normal"},x={"user-facing":0,api:1,service:2,"data-client":3},S={core:0,primary:1,secondary:2,support:3},b=(0,J.useMemo)(()=>[...e.systems].sort((m,w)=>{let M=x[m.layer??""]??4,E=x[w.layer??""]??4;if(M!==E)return M-E;let N=S[m.tier??""]??4,A=S[w.tier??""]??4;return N-A}),[e.systems]),v=(0,J.useMemo)(()=>{let m=[],w={"user-facing":"user-facing",api:"api",service:"service","data-client":"data-client"};for(let M of b){let E=M.layer??"service";(!m.length||m[m.length-1].layer!==E)&&m.push({layer:E,label:w[E]??E,items:[]}),m[m.length-1].items.push(M)}return m},[b]),g=m=>m.type==="database"?"\u{1F5C4}\uFE0F":m.type==="cache"?"\u26A1":m.type==="monitoring"?"\u{1F4E1}":m.type==="auth"?"\u{1F510}":m.type==="storage"?"\u{1F4C1}":m.type==="queue"?"\u2699\uFE0F":m.name.toLowerCase().includes("mail")||m.name.toLowerCase().includes("send")?"\u2709\uFE0F":m.name.toLowerCase().includes("stripe")||m.name.toLowerCase().includes("payment")?"\u{1F4B3}":m.name.toLowerCase().includes("video")||m.name.toLowerCase().includes("daily")?"\u{1F3A5}":m.name.toLowerCase().includes("calendar")?"\u{1F4C5}":"\u{1F50C}";return(0,c.jsxs)("div",{style:{flex:1,overflow:"auto",background:"#0c0c0c",position:"relative",zIndex:20},children:[(0,c.jsx)("div",{style:{position:"fixed",inset:0,pointerEvents:"none",zIndex:0,backgroundImage:"radial-gradient(circle, #191919 1px, transparent 1px)",backgroundSize:"22px 22px"}}),(0,c.jsxs)("div",{style:{padding:"40px 56px 0",position:"relative",zIndex:2},children:[(0,c.jsx)("div",{style:{fontFamily:"Inter, sans-serif",fontSize:22,fontWeight:600,color:"#e2e8f0",marginBottom:6},children:e.repo?.name??""}),e.repo?.description&&(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:11,color:"#4a4a4a",maxWidth:640,lineHeight:1.65},children:e.repo.description})]}),(0,c.jsxs)("div",{ref:a,style:{position:"relative",zIndex:2,padding:"28px 56px 52px"},children:[o&&(0,c.jsx)("svg",{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",zIndex:0,overflow:"visible"},children:[...d.entries()].map(([m,w])=>{let M=l.get(o),E=l.get(m);if(!M||!E)return null;let N=w==="uses"?"#4a9eff":w==="used-by"?"#22c55e":"#a78bfa",A=w==="uses"?Math.atan2(M.cy-E.cy,M.cx-E.cx):Math.atan2(E.cy-M.cy,E.cx-M.cx),$=(M.cx+E.cx)/2,D=(M.cy+E.cy)/2,T=4,j=Math.PI/5,_=$-T*Math.cos(A-j),L=D-T*Math.sin(A-j),R=$-T*Math.cos(A+j),I=D-T*Math.sin(A+j);return(0,c.jsxs)("g",{children:[(0,c.jsx)("line",{x1:M.cx,y1:M.cy,x2:E.cx,y2:E.cy,stroke:N,strokeWidth:1,strokeOpacity:.3}),(0,c.jsx)("polyline",{points:`${_},${L} ${$},${D} ${R},${I}`,stroke:N,strokeWidth:1,strokeOpacity:.75,fill:"none",strokeLinecap:"round",strokeLinejoin:"round"})]},m)})}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:"28px 20px",alignItems:"flex-start",position:"relative",zIndex:1},children:[v.map(m=>(0,c.jsxs)("div",{style:{width:"100%"},children:[(0,c.jsx)("div",{style:{marginBottom:8},children:(0,c.jsx)("span",{style:{fontSize:11,color:"#666",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.12em",textTransform:"uppercase"},children:m.label})}),(0,c.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:14},children:m.items.map(w=>{let M=d.get(w.id),E=o===w.id,N=d.has(w.id),A=!!w.owns_routes?.length,$=i.length>0&&w.key_files?.some(O=>i.some(Y=>Y.endsWith(O)||O.endsWith(Y))),D=zae(w),T=w.description??w.layer??w.section??"",j=f&&!E&&!N?.18:1,_=y(w.id),L=_==="hub"?"#585858":_==="elevated"?"#303030":"#1c1c1c",R=_==="hub"?"#ffffff":_==="elevated"?"#cccccc":"#707070",I=E?"1px solid #ffffff40":M==="uses"?"1px solid #4a9eff55":M==="used-by"?"1px solid #22c55e55":M==="both"?"1px solid #a78bfa55":`1px solid ${L}`;return(0,c.jsxs)("div",{ref:O=>{O?s.current.set(w.id,O):s.current.delete(w.id)},"data-am-sys":w.id,"data-am-conn":E?void 0:M,onClick:()=>t(w.id),onMouseEnter:()=>r(w.id),onMouseLeave:()=>r(null),style:{opacity:j,transition:"opacity 0.15s, border 0.15s",background:"#000000",border:I,borderRadius:8,padding:"14px 15px",cursor:"pointer"},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:T?7:10},children:[(0,c.jsx)("span",{style:{fontSize:15,flexShrink:0,opacity:.65},children:D?gu[D]:"\u{1F4E6}"}),(0,c.jsx)("div",{style:{fontSize:12,fontWeight:600,color:R,fontFamily:"Inter, sans-serif",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:w.name})]}),T&&(0,c.jsx)("div",{style:{fontSize:10,color:_==="hub"?"#4a4a4a":_==="elevated"?"#3a3a3a":"#2a2a2a",lineHeight:1.5,fontFamily:"JetBrains Mono, monospace",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",marginBottom:10},children:T}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,flexWrap:"wrap",alignItems:"center"},children:[w.tier&&(0,c.jsx)("span",{style:{fontSize:8,color:"#3a3a3a",border:"1px solid #1e1e1e",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:w.tier}),A&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e",border:"1px solid #14532d",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:"entry"}),$&&(0,c.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:"#f59e0b",boxShadow:"0 0 4px #f59e0b88"}}),M==="uses"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#4a9eff99",fontFamily:"JetBrains Mono, monospace"},children:"uses it"}),M==="used-by"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e99",fontFamily:"JetBrains Mono, monospace"},children:"it uses"}),M==="both"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#a78bfa99",fontFamily:"JetBrains Mono, monospace"},children:"\u2194 both"})]})]},w.id)})})]},m.layer)),e.external.length>0&&(0,c.jsxs)("div",{style:{width:"100%"},children:[(0,c.jsx)("div",{style:{marginBottom:8},children:(0,c.jsx)("span",{style:{fontSize:11,color:"#666",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.12em",textTransform:"uppercase"},children:"external"})}),(0,c.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:14},children:e.external.map(m=>{let w=d.get(m.id),M=o===m.id,E=d.has(m.id),N=f&&!M&&!E?.18:1,A=y(m.id),$=A==="hub"?"#585858":A==="elevated"?"#303030":"#1c1c1c",D=A==="hub"?"#ffffff":A==="elevated"?"#cccccc":"#707070",T=M?"1px solid #ffffff40":w==="uses"?"1px solid #4a9eff55":w==="used-by"?"1px solid #22c55e55":`1px solid ${$}`;return(0,c.jsxs)("div",{ref:j=>{j?s.current.set(m.id,j):s.current.delete(m.id)},"data-am-sys":m.id,"data-am-conn":M?void 0:w,onClick:()=>t(m.id),onMouseEnter:()=>r(m.id),onMouseLeave:()=>r(null),style:{opacity:N,transition:"opacity 0.15s, border 0.15s",background:"#000000",border:T,borderRadius:8,padding:"14px 15px",cursor:"pointer"},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:8},children:[(0,c.jsx)("span",{style:{fontSize:15,opacity:.65},children:g(m)}),(0,c.jsx)("div",{style:{fontSize:12,fontWeight:600,color:D,fontFamily:"Inter, sans-serif",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:m.name})]}),(0,c.jsxs)("div",{style:{display:"flex",gap:5,alignItems:"center"},children:[(0,c.jsx)("span",{style:{fontSize:8,color:"#3a3a3a",border:"1px solid #1e1e1e",borderRadius:3,padding:"1px 5px",fontFamily:"JetBrains Mono, monospace"},children:m.type}),w==="uses"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#4a9eff99",fontFamily:"JetBrains Mono, monospace"},children:"uses it"}),w==="used-by"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#22c55e99",fontFamily:"JetBrains Mono, monospace"},children:"it uses"}),w==="both"&&(0,c.jsx)("span",{style:{fontSize:8,color:"#a78bfa99",fontFamily:"JetBrains Mono, monospace"},children:"\u2194 both"})]})]},m.id)})})]})]})]}),o&&(()=>{let m=e.systems.find(E=>E.id===o)??e.external.find(E=>E.id===o);if(!m)return null;let w=[...d.values()].filter(E=>E==="uses"||E==="both").length,M=[...d.values()].filter(E=>E==="used-by"||E==="both").length;return(0,c.jsxs)("div",{style:{position:"fixed",bottom:24,right:24,zIndex:200,background:"#0a0a0a",border:"1px solid #1c1c1c",borderRadius:8,padding:"12px 16px",minWidth:200,fontFamily:"JetBrains Mono, monospace",pointerEvents:"none"},children:[(0,c.jsx)("div",{style:{fontSize:11,color:"#e2e8f0",fontWeight:600,marginBottom:10,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:220},children:m.name}),w>0&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[(0,c.jsx)("div",{style:{width:8,height:8,borderRadius:2,background:"rgba(74,158,255,0.7)",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#4a7aaa"},children:["uses this \xB7 ",w]})]}),M>0&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("div",{style:{width:8,height:8,borderRadius:2,background:"rgba(34,197,94,0.7)",flexShrink:0}}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#4a7a5a"},children:["used by this \xB7 ",M]})]}),w===0&&M===0&&(0,c.jsx)("div",{style:{fontSize:9,color:"#333"},children:"no connections"})]})})()]})}function Dae({am:e,systemId:t,incoming:n,outgoing:i,onNodeClick:o}){let r=e.systems.find(ie=>ie.id===t)??e.external.find(ie=>ie.id===t);if(!r)return null;let a=n.slice(0,9),s=i.slice(0,9),l=a.length>0,u=s.length>0,d=420,f=3,p=128,h=54,y=16,x=12,S=190,b=52,v=70,g=Math.floor((p-18)/7);function m(ie){if(ie.length<=g)return[ie,""];let ne=ie.lastIndexOf(" ",g);return ne===-1?[ie.slice(0,g),ie.slice(g)]:[ie.slice(0,ne),ie.slice(ne+1)]}function w(ie){return Math.ceil(ie/f)}function M(ie){let ne=w(ie);return ne*h+Math.max(0,ne-1)*x}function E(ie,ne){let Me=Math.min(ie,f),me=Me*p+Math.max(0,Me-1)*y,Oe=Math.max(0,(d-me)/2);return Array.from({length:ie},(Ve,V)=>({x:Oe+V%f*(p+y),y:ne+Math.floor(V/f)*(h+x)}))}let N=l?v:0,A=l?M(a.length):0,$=l?N+A+v:v,D=u?$+b+v:0,T=u?M(s.length):0,j=u?D+T+v:$+b+v,_=(d-S)/2,L=d/2,R=$,I=$+b,O=E(a.length,N),Y=E(s.length,D),[B,U]=(0,J.useState)(null),H=l?N+A:0,te=u?D:0,oe=Rae,de=l?oe[a[0].type]??"#555":"#555",ue=u?oe[s[0].type]??"#4a9eff":"#4a9eff";function pe(ie){return e.systems.find(ne=>ne.id===ie)?.name??e.external.find(ne=>ne.id===ie)?.name??ie}function K(ie){let ne=e.systems.find(me=>me.id===ie);return ne?ne.section??ne.layer??"":e.external.find(me=>me.id===ie)?.type??""}function ge(ie){return e.systems.find(ne=>ne.id===ie)?.description??""}function we(ie,ne,Me,me){let Ve=(me>=ne?1:-1)*Math.max(Math.abs(me-ne)*.45,20);return`M ${ie} ${ne} C ${ie} ${ne+Ve}, ${Me} ${me-Ve}, ${Me} ${me}`}function Ce({id:ie,layout:ne,clipId:Me}){let me=pe(ie),Oe=K(ie),Ve=ge(ie),V=me.length>g?me.slice(0,g-1)+"\u2026":me,[fe,he]=(0,J.useState)(!1),Ge=!!o;return(0,c.jsxs)("g",{onClick:Ge?()=>o(ie):void 0,onMouseEnter:()=>{Ge&&he(!0),Ve&&U({x:ne.x+p/2,y:ne.y,lines:[me,Ve]})},onMouseLeave:()=>{Ge&&he(!1),U(null)},style:Ge?{cursor:"pointer"}:void 0,children:[(0,c.jsx)("rect",{x:ne.x,y:ne.y,width:p,height:h,rx:5,fill:fe?"#1a2233":"#111",stroke:fe?"#3b82f6":"#222",strokeWidth:1,style:{transition:"fill 0.12s, stroke 0.12s"}}),(0,c.jsx)("clipPath",{id:Me,children:(0,c.jsx)("rect",{x:ne.x+8,y:ne.y+2,width:p-14,height:h-4})}),(0,c.jsx)("text",{x:ne.x+9,y:ne.y+22,fill:fe?"#c0d0e8":"#888",fontSize:11,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#${Me})`,children:V}),Oe&&(0,c.jsx)("text",{x:ne.x+9,y:ne.y+38,fill:"#3a3a3a",fontSize:9,fontFamily:"JetBrains Mono, monospace",clipPath:`url(#${Me})`,children:Oe})]})}return(0,c.jsxs)("svg",{viewBox:`0 0 ${d} ${j}`,style:{width:"100%",height:j,overflow:"visible"},children:[(0,c.jsxs)("defs",{children:[(0,c.jsx)("clipPath",{id:"ego-clip-cen",children:(0,c.jsx)("rect",{x:_+10,y:$,width:S-18,height:b})}),(0,c.jsx)("marker",{id:"ego-arr-in",markerWidth:"6",markerHeight:"6",refX:"5",refY:"3",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 0 L 6 3 L 0 6 z",fill:de,opacity:"0.8"})}),(0,c.jsx)("marker",{id:"ego-arr-out",markerWidth:"6",markerHeight:"6",refX:"5",refY:"3",orient:"auto",children:(0,c.jsx)("path",{d:"M 0 0 L 6 3 L 0 6 z",fill:ue,opacity:"0.8"})})]}),l&&(()=>{let ne=R-10,Me=H+10,me=(R+H)/2,Oe="USED BY",Ve=52;return(0,c.jsxs)("g",{children:[(0,c.jsx)("path",{d:we(L,ne,L,Me),fill:"none",stroke:de,strokeWidth:1.3,opacity:.55,markerEnd:"url(#ego-arr-in)"}),(0,c.jsx)("rect",{x:L-Ve/2,y:me-9,width:Ve,height:15,rx:3,fill:"#0d0d0d"}),(0,c.jsx)("text",{x:L,y:me+2,textAnchor:"middle",fill:"#404040",fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.1em",children:Oe})]})})(),u&&(()=>{let ne=I+10,Me=te-10,me=(I+te)/2,Oe="USES",Ve=38;return(0,c.jsxs)("g",{children:[(0,c.jsx)("path",{d:we(L,ne,L,Me),fill:"none",stroke:ue,strokeWidth:1.3,opacity:.55,markerEnd:"url(#ego-arr-out)"}),(0,c.jsx)("rect",{x:L-Ve/2,y:me-9,width:Ve,height:15,rx:3,fill:"#0d0d0d"}),(0,c.jsx)("text",{x:L,y:me+2,textAnchor:"middle",fill:"#404040",fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.1em",children:Oe})]})})(),a.map((ie,ne)=>(0,c.jsx)(Ce,{id:ie.from,layout:O[ne],clipId:`ego-clip-in-${ne}`},`in-${ne}`)),(0,c.jsx)("rect",{x:_,y:$,width:S,height:b,rx:6,fill:"#0c1520",stroke:"#4a9eff",strokeWidth:1.5}),(0,c.jsx)("clipPath",{id:"ego-clip-cen-desc",children:(0,c.jsx)("rect",{x:_+10,y:$,width:S-18,height:b})}),(0,c.jsx)("text",{x:_+12,y:$+28,fill:"#d0d8e8",fontSize:13,fontWeight:700,fontFamily:"JetBrains Mono, monospace",clipPath:"url(#ego-clip-cen)",children:r.name}),s.map((ie,ne)=>(0,c.jsx)(Ce,{id:ie.to,layout:Y[ne],clipId:`ego-clip-out-${ne}`},`out-${ne}`)),B&&(0,c.jsx)($p,{x:B.x,y:B.y,lines:B.lines,svgW:d})]})}function Oae({am:e,systemId:t,data:n,onClose:i,onNavigate:o}){let[r,a]=(0,J.useState)(null),[s,l]=(0,J.useState)(!1);(0,J.useEffect)(()=>{let m=w=>{w.key==="Escape"&&(r?a(null):i())};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[i,r]);let u=e.systems.find(m=>m.id===t),d=u?null:e.external.find(m=>m.id===t);if(!u&&!d)return null;let f=n?.analysis.systems.find(m=>m.name===u?.name),p=(f&&n?.systemFolders?.[f.id]?.allFiles)??[],h=!u,y=h?_ae[d.type]??"#64748b":kae[u.tier]??"#475569",x=h?d.type.toUpperCase():Tae[u.tier]??u.tier.toUpperCase(),S=h?(d.used_by??[]).map(m=>({from:m,to:t,label:"uses",type:"import",critical:!1})):e.edges.filter(m=>m.to===t),b=[...e.edges.filter(m=>m.from===t),...h?[]:e.external.filter(m=>(m.used_by??[]).includes(t)).map(m=>({from:t,to:m.id,label:m.name,type:"import",critical:!1}))],v=S.length>0||b.length>0,g={fontSize:9,fontWeight:700,color:"#334155",letterSpacing:"0.12em",textTransform:"uppercase",fontFamily:"JetBrains Mono, monospace",marginBottom:8};return(0,c.jsxs)(c.Fragment,{children:[(0,Up.createPortal)((0,c.jsx)("div",{className:"sdm-backdrop",onClick:i,children:(0,c.jsxs)("div",{className:"sdm-modal",onClick:m=>m.stopPropagation(),style:{display:"flex",flexDirection:"column",maxHeight:"88vh",position:"relative"},children:[(0,c.jsxs)("button",{onClick:i,title:"Close (Esc)",style:{position:"absolute",top:14,right:16,zIndex:10,background:"none",border:"none",cursor:"pointer",display:"flex",alignItems:"center",gap:5,padding:"2px 4px"},children:[(0,c.jsx)("span",{style:{fontSize:16,color:"#334155",lineHeight:1},children:"\xD7"}),(0,c.jsx)("span",{style:{fontSize:9,color:"#1e293b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.05em"},children:"esc"})]}),(0,c.jsxs)("div",{style:{display:"flex",flex:1,overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{flex:"0 0 420px",overflowY:"auto",padding:"28px 32px",borderRight:"1px solid #111"},children:[(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginBottom:12},children:[(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,letterSpacing:"0.08em",color:y,borderColor:y+"44",background:y+"12",border:`1px solid ${y}44`,borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace"},children:x}),u?.section&&u.section.toUpperCase()!==x&&(0,c.jsx)("span",{className:"sdm-badge",children:u.section}),u?.layer&&u.layer.toUpperCase()!==x&&(0,c.jsx)("span",{className:"sdm-badge",children:u.layer})]}),(0,c.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#e2e8f0",fontFamily:"Inter, sans-serif",lineHeight:1.2,marginBottom:10},children:u?.name??d?.name}),u?.description&&(0,c.jsxs)("div",{style:{marginBottom:16},children:[(0,c.jsx)("div",{style:{fontSize:13,color:"#475569",lineHeight:1.65,fontFamily:"Inter, sans-serif",marginBottom:6},children:u.description}),u.key_files?.length>0&&(0,c.jsxs)("button",{onClick:()=>a(u.key_files[0]),style:{display:"inline-flex",alignItems:"center",gap:4,background:"none",border:"1px solid #1e293b",borderRadius:3,padding:"2px 7px",cursor:"pointer",fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#334155",letterSpacing:"0.05em"},onMouseEnter:m=>{m.currentTarget.style.borderColor="#334155",m.currentTarget.style.color="#64748b"},onMouseLeave:m=>{m.currentTarget.style.borderColor="#1e293b",m.currentTarget.style.color="#334155"},title:u.key_files[0],children:["Source* \u2192 ",u.key_files[0].split("/").pop()]})]}),S.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18,padding:"8px 12px",background:"#0d1117",border:"1px solid #1e293b",borderRadius:5,display:"flex",flexDirection:"column",gap:6},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("span",{style:{fontSize:10,color:"#ef4444",fontFamily:"JetBrains Mono, monospace"},children:"\u26A0"}),(0,c.jsxs)("span",{style:{fontSize:11,color:"#475569",fontFamily:"Inter, sans-serif"},children:["Changing this affects"," ",(0,c.jsxs)("strong",{style:{color:"#94a3b8"},children:[S.length," system",S.length!==1?"s":""]})]})]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,paddingLeft:18},children:[S.slice(0,8).map(m=>{let w=e.systems.find(M=>M.id===m.from)?.name??m.from;return(0,c.jsx)("span",{style:{fontSize:9,fontFamily:"JetBrains Mono, monospace",color:"#334155",background:"#0a0f1a",border:"1px solid #1e293b",borderRadius:3,padding:"2px 6px"},children:w},m.from)}),S.length>8&&(0,c.jsxs)("span",{style:{fontSize:9,color:"#1e293b",fontFamily:"JetBrains Mono, monospace"},children:["+",S.length-8," more"]})]})]}),u?.tech&&u.tech.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Tech"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[...new Set(u.tech.filter(m=>!cae.has(m)))].map(m=>{let w=Nae(m),M=/^[a-z@]/.test(m)&&!/^(react|vue|angular|svelte|next|nuxt|remix|astro|solid)$/i.test(m)&&!w;return w?(0,c.jsx)("img",{src:`/tIcons/${w}`,title:m,style:{width:18,height:18,objectFit:"contain",opacity:.8}},m):(0,c.jsxs)("span",{style:{fontSize:10,fontFamily:"JetBrains Mono, monospace",color:"#94a3b8",background:"#1a1a1a",border:"1px solid #2a2a2a",borderRadius:3,padding:"2px 7px",display:"inline-flex",alignItems:"center",gap:4},children:[M&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:"#cb3837",letterSpacing:0},children:"npm"}),m]},m)})})]}),u?.key_files&&u.key_files.length>0&&(()=>{let m=new Set(["ts","tsx","js","jsx","mjs","cjs","py","go","rs","java","rb","cs","php","swift","kt"]),w=u.key_files.filter(E=>m.has(E.split(".").pop()?.toLowerCase()??"")),M=u.key_files.filter(E=>!m.has(E.split(".").pop()?.toLowerCase()??""));return(0,c.jsxs)(c.Fragment,{children:[w.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Files"}),(0,c.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:w.map((E,N)=>{let A=E.split(".").pop()?.toLowerCase(),$=A==="ts"||A==="tsx"?{label:"TS",color:"#3b82f6"}:A==="js"||A==="jsx"||A==="mjs"?{label:"JS",color:"#eab308"}:null;return(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[$&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:$.color,fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:$.label}),(0,c.jsx)("span",{onClick:()=>a(E),style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:"#64748b",textDecoration:"underline",textUnderlineOffset:3,cursor:"pointer"},onMouseEnter:D=>D.currentTarget.style.color="#94a3b8",onMouseLeave:D=>D.currentTarget.style.color="#64748b",children:E})]},N)})}),p.length>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("button",{onClick:()=>l(!s),style:{marginTop:8,background:"none",border:"none",color:"#475569",fontSize:10,fontFamily:"JetBrains Mono, monospace",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:4},onMouseEnter:E=>E.currentTarget.style.color="#94a3b8",onMouseLeave:E=>E.currentTarget.style.color="#475569",children:[s?"Hide":"See all files"," (",p.length,") ",s?"\u25B2":"\u25BC"]}),s&&(0,c.jsx)("div",{style:{marginTop:6,maxHeight:220,overflowY:"auto",background:"#0a0a0a",border:"1px solid #1e1e1e",borderRadius:4,padding:"6px 0"},children:p.map((E,N)=>{let A=E.ext?.replace(".","").toLowerCase(),$=A==="ts"||A==="tsx"?{label:"TS",color:"#3b82f6"}:A==="js"||A==="jsx"||A==="mjs"?{label:"JS",color:"#eab308"}:null;return(0,c.jsxs)("div",{onClick:()=>a(E.relPath),style:{display:"flex",alignItems:"center",gap:6,padding:"3px 10px",cursor:"pointer"},onMouseEnter:D=>D.currentTarget.style.background="#111",onMouseLeave:D=>D.currentTarget.style.background="transparent",children:[$&&(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:$.color,fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:$.label}),(0,c.jsx)("span",{style:{fontSize:10,fontFamily:"JetBrains Mono, monospace",color:"#4b5563"},children:E.relPath})]},N)})})]})]}),M.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Folders"}),(0,c.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:M.map((E,N)=>(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,c.jsx)("span",{style:{fontSize:12},children:"\u{1F4C1}"}),(0,c.jsx)("span",{style:{fontSize:11,fontFamily:"JetBrains Mono, monospace",color:"#64748b"},children:E})]},N))})]})]})})(),u?.owns_routes&&u.owns_routes.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsxs)("div",{style:g,children:["Routes \xB7 ",u.owns_routes.length]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:[u.owns_routes.slice(0,10).map((m,w)=>{let{method:M,color:E}=Aae(m);return(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,color:E,fontFamily:"JetBrains Mono, monospace"},children:M}),(0,c.jsx)("code",{style:{fontSize:10,color:"#4b5563",background:"#111",border:"1px solid #1e1e1e",borderRadius:3,padding:"2px 6px"},children:m})]},w)}),u.owns_routes.length>10&&(0,c.jsxs)("span",{style:{fontSize:10,color:"#334155"},children:["+",u.owns_routes.length-10," more"]})]})]}),u?.observations&&u.observations.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Key Patterns"}),u.observations.map((m,w)=>(0,c.jsx)("div",{style:{fontSize:11,color:"#b45309",lineHeight:1.55,marginBottom:6,paddingLeft:10,borderLeft:"2px solid #78350f",fontFamily:"Inter, sans-serif"},children:m},w))]}),d&&d.used_by?.length>0&&(0,c.jsxs)("div",{style:{marginBottom:18},children:[(0,c.jsx)("div",{style:g,children:"Used By"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:d.used_by.map(m=>{let w=e.systems.find(M=>M.id===m);return(0,c.jsx)("span",{style:{fontSize:10,color:"#38bdf8",background:"#38bdf810",border:"1px solid #38bdf825",borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace"},children:w?.name??m},m)})})]})]}),(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:"28px 24px",overflowY:"auto",background:"#000",backgroundImage:"radial-gradient(rgba(255,255,255,0.09) 1px, transparent 1px), radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px)",backgroundSize:"22px 22px, 13px 13px",backgroundPosition:"0 0, 8px 11px"},children:v?(0,c.jsx)(Dae,{am:e,systemId:t,incoming:S,outgoing:b,onNodeClick:o}):(0,c.jsx)("div",{style:{fontSize:11,color:"#1e293b",fontFamily:"JetBrains Mono, monospace"},children:"No connections"})})]})]})}),document.body),r&&(0,Up.createPortal)((0,c.jsx)(Zs,{filePath:r,onClose:()=>a(null)}),document.body)]})}function qae(e){let t=e.split(".").pop()?.toLowerCase()??"";return t==="tsx"?{label:"TSX",color:"#38bdf8"}:t==="ts"?{label:"TS",color:"#3b82f6"}:t==="jsx"?{label:"JSX",color:"#f59e0b"}:t==="js"?{label:"JS",color:"#eab308"}:t==="prisma"?{label:"DB",color:"#8b5cf6"}:{label:t.toUpperCase().slice(0,3),color:"#64748b"}}function Hae({file:e,onOpenXray:t}){let{label:n,color:i}=qae(e);return(0,c.jsxs)("div",{onClick:()=>t?.(e),style:{display:"flex",alignItems:"center",gap:7,cursor:t?"pointer":"default",padding:"2px 0"},onMouseEnter:o=>{let r=o.currentTarget.querySelector(".ef-path");r&&(r.style.color="#94a3b8")},onMouseLeave:o=>{let r=o.currentTarget.querySelector(".ef-path");r&&(r.style.color="#4a6a80")},title:e,children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.04em",color:i,background:i+"18",border:`1px solid ${i}33`,borderRadius:3,padding:"1px 4px",fontFamily:"JetBrains Mono, monospace",flexShrink:0},children:n}),(0,c.jsx)("span",{className:"ef-path",style:{fontSize:11,color:"#4a6a80",fontFamily:"JetBrains Mono, monospace",lineHeight:1,transition:"color 0.12s",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e})]})}function Iae({step:e,index:t,am:n,onOpenXray:i}){let[o,r]=(0,J.useState)(!1),a=e.is_external?n.external?.find(S=>S.id===e.system_id):n.systems.find(S=>S.id===e.system_id),s=a?.name??e.system_id,l=e.is_external?"external":a?.layer??"service",u=Lae[l]??"#475569",d=e.evidenceFiles??[],f=!e.is_external&&d.length===0?(a?.key_files??[]).slice(0,3):[],p=f.length>0,h=p?f:d,y=o?h:h.slice(0,Fv),x=h.length-Fv;return(0,c.jsxs)("div",{style:{width:420,flexShrink:0,background:"#080808",border:"3px solid rgb(30, 30, 30)",borderRadius:6,padding:"18px 22px",position:"relative",display:"flex",flexDirection:"column",gap:10},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.1em",color:u,background:u+"15",border:`1px solid ${u}30`,borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace",textTransform:"uppercase"},children:e.is_external?"external":l}),(0,c.jsx)("span",{style:{fontSize:9,color:"#253040",fontFamily:"JetBrains Mono, monospace"},children:String(t+1).padStart(2,"0")})]}),(0,c.jsx)("div",{style:{fontSize:15,fontWeight:700,color:"#e2e8f0",fontFamily:"Inter, sans-serif",lineHeight:1.2},children:s}),(0,c.jsx)("div",{style:{fontSize:13,color:"#64748b",fontFamily:"Inter, sans-serif",lineHeight:1.65},children:e.action}),h.length>0&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:2,marginTop:4,borderTop:"1px solid #0f1820",paddingTop:10},children:[(0,c.jsx)("div",{style:{fontSize:8,fontFamily:"JetBrains Mono, monospace",color:"#1e3a2a",letterSpacing:"0.1em",marginBottom:4},children:p?"KEY FILES":"EVIDENCE"}),y.map(S=>(0,c.jsx)(Hae,{file:S,onOpenXray:i},S)),x>0&&!o&&(0,c.jsxs)("span",{onClick:()=>r(!0),style:{fontSize:10,color:"#2a4a6a",fontFamily:"JetBrains Mono, monospace",cursor:"pointer",marginTop:3},onMouseEnter:S=>{S.currentTarget.style.color="#4a7a9a"},onMouseLeave:S=>{S.currentTarget.style.color="#2a4a6a"},children:["+ ",x," more file",x>1?"s":""]}),o&&h.length>Fv&&(0,c.jsx)("span",{onClick:()=>r(!1),style:{fontSize:10,color:"#2a4a6a",fontFamily:"JetBrains Mono, monospace",cursor:"pointer",marginTop:3},onMouseEnter:S=>{S.currentTarget.style.color="#4a7a9a"},onMouseLeave:S=>{S.currentTarget.style.color="#2a4a6a"},children:"\u2191 show less"})]})]})}function Fae({flow:e,am:t,onOpenXray:n}){return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"},children:[(0,c.jsxs)("div",{style:{marginBottom:40,alignSelf:"flex-start"},children:[(0,c.jsx)("div",{style:{fontSize:16,fontWeight:700,color:"#c8c8c8",fontFamily:"Inter, sans-serif",marginBottom:6},children:e.name}),(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("span",{style:{fontSize:8,fontWeight:700,letterSpacing:"0.12em",color:"#334155",background:"#0a0a0a",border:"1px solid #1a1a1a",borderRadius:3,padding:"2px 7px",fontFamily:"JetBrains Mono, monospace",textTransform:"uppercase"},children:"TRIGGER"}),(0,c.jsx)("span",{style:{fontSize:11,color:"#475569",fontFamily:"Inter, sans-serif"},children:e.trigger})]})]}),e.steps.map((i,o)=>{let r=o===e.steps.length-1;return(0,c.jsxs)(J.default.Fragment,{children:[(0,c.jsx)(Iae,{step:i,index:o,am:t,onOpenXray:n}),!r&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",height:40},children:[(0,c.jsx)("div",{style:{flex:1,width:1.5,background:"#1a2a3a"}}),(0,c.jsx)("svg",{width:"16",height:"10",viewBox:"0 0 16 10",style:{flexShrink:0},children:(0,c.jsx)("polygon",{points:"0,0 16,0 8,10",fill:"#1a2a3a"})})]})]},o)})]})}function Uae({am:e,onFlowsReady:t}){let[n,i]=(0,J.useState)(null),[o,r]=(0,J.useState)(!1),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(null);(0,J.useEffect)(()=>{let p=new EventSource("/api/events");return p.onmessage=h=>{try{let y=JSON.parse(h.data);y.type==="flows-progress"&&s(y.step),y.type==="flows-ready"&&(r(!1),s(null),t()),y.type==="flows-error"&&(r(!1),s(`Error: ${y.error}`))}catch{}},()=>p.close()},[t]);function d(){r(!0),s("Starting\u2026"),fetch("/api/generate-flows",{method:"POST"}).catch(()=>r(!1))}if(!e)return(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",color:"#2a2a2a",fontSize:12,fontFamily:"JetBrains Mono, monospace"},children:"Generate an Architecture Map first to see flows."});let f=e.flows.length>0?e.flows.find(p=>p.id===n)??e.flows[0]:null;return(0,c.jsxs)("div",{style:{display:"flex",height:"100%",background:"#000",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{width:360,flexShrink:0,borderRight:"1px solid #111",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,c.jsxs)("div",{style:{padding:"12px 18px 10px",borderBottom:"1px solid #111",display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,c.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"#3a3a3a",letterSpacing:"0.14em",textTransform:"uppercase",fontFamily:"monospace"},children:["Flows \xB7 ",e.flows.length]}),(0,c.jsx)("button",{onClick:d,disabled:o,style:{background:"none",border:"1px solid #1a2030",borderRadius:4,padding:"3px 10px",cursor:o?"not-allowed":"pointer",fontSize:9,color:o?"#2a3a4a":"#3a5a7a",fontFamily:"monospace",letterSpacing:"0.06em",opacity:o?.6:1},children:o?"\u2026":"\u21BB Refresh"})]}),o&&a&&(0,c.jsx)("div",{style:{padding:"6px 18px",borderBottom:"1px solid #0a0a0a",fontSize:9,color:"#2a4a6a",fontFamily:"monospace"},children:a}),e.flows.length===0?(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontSize:10,color:"#1a1a1a",fontFamily:"monospace",textAlign:"center",lineHeight:1.6},children:o?"Generating flows\u2026":`No flows yet.
28
28
  Click \u21BB refresh.`}):(0,c.jsx)("div",{style:{flex:1,overflowY:"auto"},children:e.flows.map(p=>{let h=f!==null&&p.id===f.id;return(0,c.jsxs)("div",{onClick:()=>i(p.id),style:{padding:"14px 18px",cursor:"pointer",background:h?"#0a0a0a":"transparent",borderLeft:`3px solid ${h?"#4a9eff":"transparent"}`,borderBottom:"1px solid #0d0d0d"},children:[(0,c.jsx)("div",{style:{fontSize:14,fontWeight:600,fontFamily:"Inter, sans-serif",color:h?"#d0d8e8":"#686868",marginBottom:5,lineHeight:1.3},children:p.name}),(0,c.jsxs)("div",{style:{fontSize:11,color:h?"#3a5a7a":"#282828",fontFamily:"monospace",lineHeight:1.5},children:[p.steps.length," steps \xB7 ",p.trigger]})]},p.id)})})]}),(0,c.jsx)("div",{style:{flex:1,overflow:"auto",padding:"40px 48px",display:"flex",flexDirection:"column",alignItems:"center"},children:(0,c.jsx)("div",{style:{width:"100%",maxWidth:640},children:f&&(0,c.jsx)(Fae,{flow:f,am:e,onOpenXray:u})})}),l&&(0,c.jsx)(Zs,{filePath:l,onClose:()=>u(null)})]})}function Gae({onOpenXray:e,am:t,onSystemClick:n}){let[i,o]=(0,J.useState)(null),[r,a]=(0,J.useState)(!0),[s,l]=(0,J.useState)(!1),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(0),[h,y]=(0,J.useState)(null),[x,S]=(0,J.useState)(new Set),b=z=>S(re=>{let ae=new Set(re);return ae.has(z)?ae.delete(z):ae.add(z),ae}),v=z=>"ripple-file-"+z.replace(/[^a-zA-Z0-9]/g,"-"),g=z=>{S(re=>{let ae=new Set(re);return ae.add(z),ae}),setTimeout(()=>{document.getElementById(v(z))?.scrollIntoView({behavior:"smooth",block:"center"})},80)},[m,w]=(0,J.useState)(new Set),M=z=>w(re=>{let ae=new Set(re);return ae.has(z)?ae.delete(z):ae.add(z),ae}),[E,N]=(0,J.useState)(null),[A,$]=(0,J.useState)(new Set),[D,T]=(0,J.useState)({}),j=(0,J.useCallback)((z,re)=>{$(ae=>{let ye=new Set(ae);return ye.has(z)?ye.delete(z):ye.add(z),ye}),T(ae=>(ae[z]!==void 0||fetch(`/api/branch-diff?file=${encodeURIComponent(z)}&base=${encodeURIComponent(re)}`).then(ye=>ye.ok?ye.json():null).then(ye=>{ye?.diff!=null&&T(be=>({...be,[z]:ye.diff}))}).catch(()=>{}),ae))},[]),[_,L]=(0,J.useState)(null),[R,I]=(0,J.useState)([]),[O,Y]=(0,J.useState)("main"),[B,U]=(0,J.useState)("main"),[H,te]=(0,J.useState)("working-tree"),[oe,de]=(0,J.useState)(new Set(["working-tree"])),[ue,pe]=(0,J.useState)(null),[K,ge]=(0,J.useState)(""),[we,Ce]=(0,J.useState)(!1),[ie,ne]=(0,J.useState)(!1),Me=(0,J.useRef)(null),[me,Oe]=(0,J.useState)(null),[Ve,V]=(0,J.useState)(null),fe=(0,J.useRef)(null);(0,J.useEffect)(()=>{V(null)},[me]),(0,J.useEffect)(()=>{if(!Ve)return;fe.current?.querySelector('[data-hl="1"]')?.scrollIntoView({block:"center",behavior:"smooth"})},[Ve]);let he=(0,J.useCallback)((z,re)=>{T(ae=>(ae[z]!==void 0||fetch(`/api/branch-diff?file=${encodeURIComponent(z)}&base=${encodeURIComponent(re)}`).then(ye=>ye.ok?ye.json():null).then(ye=>{ye?.diff!=null&&T(be=>({...be,[z]:ye.diff}))}).catch(()=>{}),ae))},[]);(0,J.useEffect)(()=>{if(!E||!i)return;let z=i.threads?.find(re=>re.id===E);if(z){Oe(null);for(let re of z.files)i.nodes.some(ae=>ae.file===re)&&he(re,O)}},[E,i,O,he]),(0,J.useEffect)(()=>{fetch("/api/default-branch").then(z=>z.ok?z.json():null).then(z=>{z?.defaultBranch&&(U(z.defaultBranch),Y(z.defaultBranch))}).catch(()=>{})},[]);let Ge=(0,J.useCallback)((z,re=!1)=>{re?l(!0):(a(!0),pe(null)),Promise.all([fetch(`/api/branch-story?base=${encodeURIComponent(z)}`).then(ae=>ae.ok?ae.json():null),fetch(`/api/commit-log?base=${encodeURIComponent(z)}`).then(ae=>ae.ok?ae.json():null)]).then(([ae,ye])=>{o(ae??null),I(ye?.commits??[]),a(!1),l(!1),ae&&(ae.nodes??[]).some(be=>be.status!=="context")&&(d(!0),fetch(`/api/branch-story?base=${encodeURIComponent(z)}&enrich=1`).then(be=>be.ok?be.json():null).then(be=>{be&&o(be)}).catch(()=>{}).finally(()=>d(!1)))}).catch(()=>{re||(o(null),I([])),a(!1),l(!1)})},[]);(0,J.useEffect)(()=>{Ge(O)},[O]),(0,J.useEffect)(()=>{let z=new EventSource("/api/events");return z.onmessage=re=>{try{JSON.parse(re.data).type==="code-changed"&&(Ge(O,!0),p(ye=>ye+1))}catch{}},()=>z.close()},[O,Ge]),(0,J.useEffect)(()=>{if(!ue){ge("");return}fetch(`/api/branch-diff?file=${encodeURIComponent(ue)}&base=${encodeURIComponent(O)}`).then(z=>z.ok?z.json():null).then(z=>ge(z?.diff??"")).catch(()=>ge(""))},[ue,O]);let Ie=z=>{de(re=>{let ae=new Set(re);return ae.has(z)?ae.delete(z):ae.add(z),ae})},ct=z=>{te(z),oe.has(z)||Ie(z)},et=i?i.nodes.filter(z=>z.status!=="context"):[],ft=R.flatMap(z=>z.files),jt=new Set([...et.map(z=>z.file),...ft.map(z=>z.path)]).size,en={added:"+",modified:"~",deleted:"\u2212"},Je={added:"#22c55e",modified:"#f59e0b",deleted:"#ef4444"},rn={added:"A",modified:"M",deleted:"D"},Ei=z=>{if(!z)return"";let re=new Date(z),ye=Math.floor((new Date().getTime()-re.getTime())/864e5);return ye===0?"today":ye===1?"yesterday":ye<7?`${ye}d ago`:re.toLocaleDateString("en",{month:"short",day:"numeric"})},Di=(z,re,ae,ye,be,Ne,ze,gt)=>{let Ct=H===z,ke=oe.has(z);return(0,c.jsxs)("div",{style:{borderBottom:"1px solid #141414"},children:[(0,c.jsxs)("div",{onClick:()=>ct(z),style:{display:"flex",alignItems:"flex-start",gap:10,padding:"12px 16px",cursor:"pointer",background:Ct?"#121212":"transparent",transition:"background 0.2s ease-in-out"},onMouseEnter:it=>{Ct||(it.currentTarget.style.background="rgba(23,23,23,0.5)")},onMouseLeave:it=>{Ct||(it.currentTarget.style.background="transparent")},children:[gt?(0,c.jsx)("span",{style:{fontSize:14,flexShrink:0,marginTop:1,lineHeight:1},children:gt}):(0,c.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:re,flexShrink:0,marginTop:5}}),(0,c.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:6},children:[(0,c.jsx)("span",{style:{fontSize:13,fontWeight:600,color:Ct?"#f4f4f5":"#d4d4d8",fontFamily:"Inter, sans-serif",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:ae}),be&&(0,c.jsx)("span",{style:{fontSize:8,color:"#52525b",fontFamily:"JetBrains Mono, monospace",flexShrink:0,whiteSpace:"nowrap",letterSpacing:"0.04em"},children:be})]}),(0,c.jsx)("div",{style:{fontSize:10,color:"#71717a",fontFamily:"Inter, sans-serif",marginTop:3,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:ye})]}),Ne&&Ne.length>0&&(0,c.jsx)("span",{onClick:it=>{it.stopPropagation(),Ie(z)},style:{fontSize:9,color:"#3f3f46",flexShrink:0,marginTop:4,cursor:"pointer",userSelect:"none",transition:"color 0.2s"},children:ke?"\u25BE":"\u25B8"})]}),ke&&Ne&&Ne.length>0&&(0,c.jsx)("div",{style:{paddingBottom:8},children:Ne.map((it,pn)=>{let Ht=it.status==="deleted",Mt=ue===it.path;return(0,c.jsxs)("div",{onClick:()=>{ze?.(it),pe(it.path)},style:{display:"grid",gridTemplateColumns:"1fr 20px 100px",alignItems:"center",gap:8,padding:"5px 16px 5px 34px",cursor:"pointer",background:Mt?"rgba(99,102,241,0.07)":"transparent",borderBottom:pn<Ne.length-1?"1px dotted #1e1e1e":"none",transition:"all 0.2s ease-in-out"},onMouseEnter:Sn=>{Mt||(Sn.currentTarget.style.background="rgba(23,23,23,0.6)")},onMouseLeave:Sn=>{Mt||(Sn.currentTarget.style.background="transparent")},children:[(0,c.jsx)("span",{style:{fontSize:11,color:Mt?"#e5e7eb":"#d4d4d8",fontFamily:"JetBrains Mono, monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,textDecoration:Ht?"line-through":"none",textDecorationColor:Ht?"#ef4444":void 0,opacity:Ht?.6:1},children:it.path.split("/").pop()}),(0,c.jsx)("span",{style:{fontSize:9,fontWeight:700,color:Je[it.status],fontFamily:"JetBrains Mono, monospace",textAlign:"center"},children:rn[it.status]}),(0,c.jsx)("span",{style:{fontSize:9,color:"#71717a",fontFamily:"JetBrains Mono, monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,textAlign:"right"},children:it.path.split("/").slice(0,-1).join("/").replace("src/","")||"\xB7"})]},pn)})})]},z)};if(r)return(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",background:"rgb(12,12,12)"},children:(0,c.jsx)("span",{style:{color:"#2a2a2a",fontFamily:"JetBrains Mono, monospace",fontSize:11},children:"Analyzing changes\u2026"})});if(!i&&R.length===0)return(0,c.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",background:"rgb(12,12,12)",backgroundImage:"radial-gradient(circle, rgb(25,25,25) 1px, transparent 1px)",backgroundSize:"22px 22px"},children:(0,c.jsxs)("span",{style:{color:"#2a2a2a",fontFamily:"JetBrains Mono, monospace",fontSize:13},children:["No changes vs ",(0,c.jsx)("code",{style:{color:"#333"},children:O})]})});let Ci=i.systemEdgeDelta??[],$n=new Map;for(let z of i.nodes){if(z.status==="context")continue;let re=z.systemId??"__unknown__";$n.has(re)||$n.set(re,[]),$n.get(re).push(z)}let G=i.nodes.filter(z=>z.status!=="context"),W=G.filter(z=>z.status==="added"),se=G.filter(z=>z.status==="modified"),Fe=G.filter(z=>z.status==="deleted"),Be=new Set([...$n.keys()].filter(z=>z!=="__unknown__")),Ee=Ci.filter(z=>z.kind==="added"),Pe=Ci.filter(z=>z.kind==="removed"),vt=new Set(Ee.map(z=>z.to).filter(z=>Pe.some(re=>re.from===z))),Jt=[...Ee.map((z,re)=>({id:`nc-${re}`,from:z.from,to:z.to,kind:"new-connection"})),...Pe.filter(z=>vt.has(z.from)).map((z,re)=>({id:`bl-${re}`,from:z.from,to:z.to,kind:"broken-link"})),...Pe.filter(z=>!vt.has(z.from)).map((z,re)=>({id:`cr-${re}`,from:z.from,to:z.to,kind:"connection-removed"}))],Sa=[...new Set([...Jt.flatMap(z=>[z.from,z.to]),...Be])].map(z=>{let re=$n.get(z)??[],ae=Jt.some(ze=>ze.to===z&&(ze.kind==="broken-link"||ze.kind==="connection-removed")),ye=re.length===0&&ae?"impacted":re.length>0&&re.every(ze=>ze.status==="added")?"new":"modified",be=t?.systems?.find(ze=>ze.id===z),Ne=be?Object.keys(gu).find(ze=>z.includes(ze)||(be.tech??[]).some(gt=>gt.toLowerCase().includes(ze))):void 0;return{id:z,name:be?.name??z,icon:Ne?gu[Ne]:"\u{1F4E6}",state:ye,files:re}}),dn=48,oi=210,Jp=130,wa=64,Zp=80,yu=72,Pp=24,Tr=Jt.filter(z=>z.kind==="new-connection"),vu=Jt.filter(z=>z.kind==="broken-link"),el=Jt.filter(z=>z.kind==="connection-removed"),zo=dn+oi+Jp,Ea=z=>yu+Math.max(0,Math.ceil(($n.get(z)?.length??0)/3)-0)*Pp,fn=new Map,bu=[...new Set(Tr.map(z=>z.to))],Oi=dn+32;bu.forEach(z=>{let re=Ea(z);fn.set(z,{x:zo,y:Oi,cx:zo+oi/2,cy:Oi+re/2,h:re}),Oi+=re+wa});let Kp=[...new Set(vu.map(z=>z.to))].filter(z=>!bu.includes(z));Oi+=Zp-wa,Kp.forEach(z=>{let re=Ea(z);fn.set(z,{x:zo,y:Oi,cx:zo+oi/2,cy:Oi+re/2,h:re}),Oi+=re+wa}),[...new Set(Tr.map(z=>z.from))].forEach(z=>{let re=Tr.filter(ze=>ze.from===z).map(ze=>fn.get(ze.to)?.cy??dn),ae=re.length?re.reduce((ze,gt)=>ze+gt,0)/re.length:dn+yu/2,ye=Ea(z),be=[...Tr,...el].filter(ze=>ze.from===z).map(ze=>fn.get(ze.to)?.cy??dn),Ne=be.length>1?(Math.min(...be)+Math.max(...be))/2:ae;fn.set(z,{x:dn,y:Ne-ye/2,cx:dn+oi/2,cy:Ne,h:ye})}),[...new Set(el.flatMap(z=>[z.from,z.to]))].filter(z=>!fn.has(z)).forEach((z,re)=>{let ae=Ea(z),ye=re%2===0?dn:zo,be=Oi+Math.floor(re/2)*(ae+wa);fn.set(z,{x:ye,y:be,cx:ye+oi/2,cy:be+ae/2,h:ae})});let xu=Math.max(...[...fn.values()].map(z=>z.y+z.h),280)+dn,th=zo+oi+dn,_e=ue?i.nodes.find(z=>z.file===ue):null,an=ue?(i.blastRadius??[]).filter(z=>z.importedFiles.includes(ue)):[],Ro=_e?.systemId?t?.systems?.find(z=>z.id===_e.systemId):null,Su=Ro?Object.keys(gu).find(z=>_e?.systemId?.includes(z)||(Ro.tech??[]).some(re=>re.toLowerCase().includes(z))):void 0,wu=Su?gu[Su]:"\u{1F4C4}",Ca=(()=>{if(!ue||!_e)return[];let z=ue.split("/").pop(),re=_e.functions??[],ae=[];for(let Ne of t?.flows??[]){let ze=null;for(let gt=0;gt<(Ne.steps??[]).length;gt++){let Ct=Ne.steps[gt],ke=(Ct.evidenceFiles??[]).some(En=>En===ue||ue.endsWith(En)||En.endsWith(z)),it=ke?[]:re.filter(En=>En.length>3&&Ct.action?.includes(En)),pn=!ke&&it.length>0,Ht=!ke&&!pn&&_e.systemId&&Ct.system_id===_e.systemId;if(!ke&&!pn&&!Ht)continue;let Mt=ke?"file":pn?"fn":"system",Sn={flowId:Ne.id,flowName:Ne.name,trigger:Ne.trigger??"",stepIndex:gt+1,action:Ct.action??"",matchKind:Mt,matchedFns:it},It={file:3,fn:2,system:1};(!ze||It[Mt]>It[ze.matchKind])&&(ze=Sn)}ze&&ae.push(ze)}let ye={file:3,fn:2,system:1};return ae.sort((Ne,ze)=>ye[ze.matchKind]-ye[Ne.matchKind]),(ae.some(Ne=>Ne.matchKind!=="system")?ae.filter(Ne=>Ne.matchKind!=="system"):ae).slice(0,6)})(),Yv=(()=>{if(!ue||!_e)return[];let z=ue.toLowerCase(),re=ue.split("/").pop()?.toLowerCase()??"",ae=[];(re==="package.json"||re==="package-lock.json"||re==="yarn.lock"||re==="pnpm-lock.yaml")&&ae.push({severity:"high",label:"SDK DRIFT",detail:"Package file changed. Transitive consumers of updated packages may break silently without any import relationship."}),(re.startsWith(".env")||/\.(env)$/.test(re))&&ae.push({severity:"high",label:"SHARED STATE",detail:"Environment file changed. All systems consuming these variables are affected, with no traceable code dependency."}),(z.includes("schema")||z.includes("migration")||z.endsWith(".sql")||z.endsWith(".prisma"))&&ae.push({severity:"high",label:"SHARED STATE \u2014 SCHEMA",detail:"Schema or migration change. Systems querying this table directly may break without any import in the code graph."}),(re==="dockerfile"||z.includes("docker-compose")||z.includes("/.github/")||z.includes("kubernetes")||z.includes("terraform")||/\.(nginx|conf)$/.test(z))&&ae.push({severity:"high",label:"INFRA COUPLING",detail:"Infrastructure-layer change. Application code dependency graphs are blind to network, DNS, and container-level impact."}),an.length>=4?ae.push({severity:"high",label:`HIGH BLAST RADIUS (${an.length} files)`,detail:"Many files outside this changeset import this one. A breaking change or bad export here cascades across the codebase."}):an.length>0&&ae.push({severity:"med",label:`BLAST RADIUS (${an.length} file${an.length>1?"s":""})`,detail:`${an.length} file${an.length>1?"s":""} outside this changeset depend on this one directly.`});let ye=(_e.linesAdded??0)+(_e.linesRemoved??0),be=/\.(json|lock|yaml|yml|toml|ini|env|config\..+)$/.test(re)||re.endsWith(".config.ts")||re.endsWith(".config.js")||z.includes("cache")||z.includes("generated"),Ne=_e.lineCount>0&&_e.lineCount<20;return be||Ne?ye>0&&ae.push({severity:"med",label:"METADATA UPDATE",detail:`${_e.linesAdded??0} lines added, ${_e.linesRemoved??0} removed. Churn % suppressed for ${be?"config/cache":"small"} files \u2014 percentage math is misleading at this scale.`}):_e.lineCount>0&&ye/_e.lineCount>.4&&ae.push({severity:"med",label:"LARGE CHANGE",detail:`${_e.linesAdded??0} lines added, ${_e.linesRemoved??0} removed \u2014 ${Math.round(ye/_e.lineCount*100)}% of the file changed.`}),ae})(),jv={handler:an.filter(z=>z.category==="handler"),service:an.filter(z=>z.category==="service"),transitive:an.filter(z=>z.category==="transitive")};return(0,c.jsx)("div",{style:{flex:1,display:"flex",overflow:"hidden",background:"rgb(12,12,12)"},children:(0,c.jsx)("div",{ref:Me,style:{flex:1,overflow:"auto",background:"rgb(12,12,12)",backgroundImage:"radial-gradient(circle, rgb(19,19,19) 1px, transparent 1px)",backgroundSize:"22px 22px"},children:_e?_e?(()=>{let z=_e.summary,re=_e.lineCount>0?Math.min(100,Math.round(((_e.linesAdded??0)+(_e.linesRemoved??0))/_e.lineCount*100)):0,ae=ue.split("/").pop()??ue,ye=ue.split("/").slice(0,-1).join("/"),be=_e.status==="added"?"NEW FILE":_e.status==="deleted"?"DELETED":"MODIFIED",Ne=Je[_e.status]??"#888",ze=(ke,it)=>{if(it.length===0)return(0,c.jsx)("span",{children:ke});let pn=ke.split(new RegExp(`(${it.map(Ht=>Ht.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|")})`,"g"));return(0,c.jsx)(c.Fragment,{children:pn.map((Ht,Mt)=>it.includes(Ht)?(0,c.jsx)("span",{style:{color:"#a5b4fc",fontFamily:"JetBrains Mono, monospace",fontWeight:600},children:Ht},Mt):(0,c.jsx)("span",{children:Ht},Mt))})},gt=K.split(`
29
29
  `).filter(ke=>ke.startsWith("+")&&!ke.startsWith("+++")).length,Ct=K.split(`
30
30
  `).filter(ke=>ke.startsWith("-")&&!ke.startsWith("---")).length;return(0,c.jsxs)("div",{style:{padding:"24px 32px",maxWidth:820,margin:"0 auto"},children:[(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:18},children:[(0,c.jsx)("button",{onClick:()=>pe(null),style:{background:"transparent",border:"1px solid #1e1e1e",borderRadius:4,color:"#374151",fontSize:9,padding:"3px 9px",cursor:"pointer",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.06em"},children:"\u2190 back"}),(0,c.jsx)("span",{style:{fontSize:8,color:"#1e2a35",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.14em"},children:"FILE INTELLIGENCE"})]}),(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:18,paddingBottom:16,borderBottom:"1px solid #0f0f0f"},children:[(0,c.jsx)("span",{style:{fontSize:18,flexShrink:0},children:wu}),(0,c.jsx)("span",{style:{fontSize:14,fontWeight:700,color:"#e2e8f0",fontFamily:"Inter, sans-serif"},children:ae}),(0,c.jsx)("span",{style:{fontSize:7,fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.06em",color:Ne,border:`1px solid ${Ne}44`,borderRadius:3,padding:"1px 7px"},children:be}),(0,c.jsx)("span",{style:{flex:1}}),Ro&&(0,c.jsx)("span",{style:{fontSize:9,color:"#374151",fontFamily:"Inter, sans-serif"},children:Ro.name}),Ro&&(0,c.jsx)("span",{style:{color:"#1a1a1a"},children:"\xB7"}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#1f2937",fontFamily:"JetBrains Mono, monospace"},children:[_e.lineCount," lines"]}),(_e.linesAdded??0)+(_e.linesRemoved??0)>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{style:{color:"#1a1a1a"},children:"\xB7"}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#22c55e",fontFamily:"JetBrains Mono, monospace"},children:["+",_e.linesAdded]}),(0,c.jsxs)("span",{style:{fontSize:9,color:"#ef4444",fontFamily:"JetBrains Mono, monospace"},children:["\u2212",_e.linesRemoved]})]})]}),(0,c.jsxs)("div",{style:{marginBottom:22},children:[(0,c.jsx)("div",{style:{fontSize:8,color:"#52525b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.14em",marginBottom:9},children:"WHAT CHANGED IN THE FILE"}),z?(0,c.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:z.split(/\n+/).map(ke=>ke.trim().replace(/^[-•*]\s*/,"")).filter(Boolean).map((ke,it)=>(0,c.jsxs)("div",{style:{display:"flex",gap:9,alignItems:"baseline"},children:[(0,c.jsx)("span",{style:{color:"#3b6ea5",fontSize:10,flexShrink:0},children:"\u2022"}),(0,c.jsx)("span",{style:{fontSize:12,color:"#9aa0aa",fontFamily:"Inter, sans-serif",lineHeight:1.5},children:Hp(ke,K)})]},it))}):(0,c.jsx)("span",{style:{fontSize:11,color:"#5b6470",fontFamily:"Inter, sans-serif"},children:(_e.linesAdded??0)+(_e.linesRemoved??0)>0?`+${_e.linesAdded} / \u2212${_e.linesRemoved} lines changed.`:"No summary available."})]}),(0,c.jsxs)("div",{style:{marginBottom:22},children:[(0,c.jsx)("div",{style:{fontSize:8,color:"#52525b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.14em",marginBottom:9},children:"SYSTEM"}),(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("span",{style:{fontSize:13,flexShrink:0},children:wu}),(0,c.jsx)("span",{style:{fontSize:13,color:"#94a3b8",fontFamily:"Inter, sans-serif",fontWeight:600},children:Ro?.name??"Unassigned"})]})]}),(_e.role||(_e.exports?.length??0)>0||_e.functions.length>0)&&(0,c.jsxs)("div",{style:{marginBottom:22},children:[(0,c.jsx)("div",{style:{fontSize:8,color:"#52525b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.14em",marginBottom:9},children:"WHAT THIS FILE DOES"}),_e.role?(0,c.jsx)("span",{style:{fontSize:12,color:"#9aa0aa",fontFamily:"Inter, sans-serif",lineHeight:1.5},children:_e.role}):(0,c.jsxs)("span",{style:{fontSize:10,color:"#5b6470",fontFamily:"JetBrains Mono, monospace"},children:[_e.exports?.length?"exports ":"defines ",((_e.exports?.length?_e.exports:_e.functions)??[]).slice(0,6).join(", ")]})]}),Ca.length>0&&(0,c.jsxs)("div",{style:{marginBottom:22},children:[(0,c.jsxs)("span",{onClick:()=>ne(ke=>!ke),style:{fontSize:10,color:"#6366f1",fontFamily:"JetBrains Mono, monospace",cursor:"pointer",letterSpacing:"0.04em"},children:[ie?"\u25BE":"\u25B8"," View Flows (",Ca.length,")"]}),ie&&(0,c.jsx)("div",{style:{marginTop:11,display:"flex",flexDirection:"column",gap:8},children:Ca.map((ke,it)=>(0,c.jsxs)("div",{style:{background:"#0b0b0b",border:"1px solid #1a1a1a",borderRadius:8,padding:"10px 12px"},children:[(0,c.jsxs)("div",{style:{fontSize:11,color:"#94a3b8",fontFamily:"Inter, sans-serif",fontWeight:600,marginBottom:4},children:["\u2192 ",ke.flowName]}),(0,c.jsxs)("div",{style:{fontSize:10,color:"#4b5563",fontFamily:"Inter, sans-serif",lineHeight:1.5},children:["step ",ke.stepIndex,": ",ke.action.length>110?ke.action.slice(0,110)+"\u2026":ke.action]}),ke.trigger&&(0,c.jsxs)("div",{style:{fontSize:9,color:"#1e2a35",fontFamily:"Inter, sans-serif",fontStyle:"italic",marginTop:4},children:["triggered by ",ke.trigger]})]},it))})]}),(0,c.jsxs)("div",{style:{marginBottom:22},children:[(0,c.jsx)("div",{style:{fontSize:8,color:"#52525b",fontFamily:"JetBrains Mono, monospace",letterSpacing:"0.14em",marginBottom:9},children:"BLAST RADIUS"}),an.length===0?(0,c.jsx)("span",{style:{fontSize:11,color:"#5b6470",fontFamily:"Inter, sans-serif"},children:"Isolated \u2014 nothing else imports this file."}):(0,c.jsxs)("div",{children:[(0,c.jsxs)("span",{style:{fontSize:11,color:"#9aa0aa",fontFamily:"Inter, sans-serif"},children:["Depended on by ",an.length," file",an.length>1?"s":"",":"]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginTop:8},children:[an.slice(0,10).map((ke,it)=>(0,c.jsx)("span",{style:{fontSize:9,color:"#64748b",fontFamily:"JetBrains Mono, monospace",background:"#0d0d0d",border:"1px solid #1a1a1a",borderRadius:3,padding:"2px 7px"},children:ke.file.split("/").pop()},it)),an.length>10&&(0,c.jsxs)("span",{style:{fontSize:8,color:"#3f3f46",fontFamily:"JetBrains Mono, monospace",alignSelf:"center"},children:["+",an.length-10]})]})]}),(()=>{let ke=new Set([..._e.functions??[],..._e.exports??[]]),it=new Set(["if","for","while","switch","catch","return","function","await","async","typeof","new","delete","void","yield","super","do","else","try","finally","throw","case","break","continue","map","filter","forEach","Boolean","Number","String","Array","Object","require"]),pn=new Map;for(let Mt of K.split(`
@@ -36,7 +36,7 @@ Click \u21BB refresh.`}):(0,c.jsx)("div",{style:{flex:1,overflowY:"auto"},childr
36
36
  `}),(0,c.jsxs)("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:8},children:[(0,c.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:10,color:"#555",minHeight:16},children:te>=90&&H===4?(0,c.jsx)("span",{style:{animation:"label-fade 2.2s ease"},children:pe[de]},de):H>=0?U[H].label:"Starting\u2026"}),(0,c.jsxs)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:13,color:"#4a9eff",fontWeight:600},children:[Math.round(te),"%"]})]}),(0,c.jsx)("div",{style:{width:"100%",height:2,background:"#1a1a1a",borderRadius:2,overflow:"hidden",position:"relative"},children:(0,c.jsx)("div",{style:{height:"100%",borderRadius:2,width:`${te}%`,background:"linear-gradient(90deg, #1d4ed8, #4a9eff)",transition:"width 0.6s ease",position:"relative",overflow:"hidden"},children:te>=90&&H===4&&(0,c.jsx)("div",{style:{position:"absolute",top:0,left:0,height:"100%",width:"20%",background:"linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent)",animation:"shimmer-travel 1.8s linear infinite"}})})})]}),(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",gap:0,width:"100%"},children:U.map((W,se)=>{let Fe=se<H,Be=se===H,Ee=Fe||Be?"#4a9eff":"#2a2a2a",Pe=Be?"0 0 8px #4a9eff88":"none",vt=(()=>{switch(W.id){case"l1":return(0,c.jsx)("rect",{x:"1",y:"1",width:"10",height:"10",rx:"1.5",fill:Ee,style:{filter:Be?"drop-shadow(0 0 3px #4a9eff)":"none",transition:"all 0.3s"}});case"l2":return(0,c.jsx)("polygon",{points:"6,0 12,6 6,12 0,6",fill:Ee,style:{filter:Be?"drop-shadow(0 0 3px #4a9eff)":"none",transition:"all 0.3s"}});case"l3":return(0,c.jsx)("polygon",{points:"6,0 12,12 0,12",fill:Ee,style:{filter:Be?"drop-shadow(0 0 3px #4a9eff)":"none",transition:"all 0.3s"}});case"l4":return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("circle",{cx:"6",cy:"6",r:"5.5",fill:"none",stroke:Ee,strokeWidth:"1.5",style:{transition:"all 0.3s"}}),(0,c.jsx)("circle",{cx:"6",cy:"6",r:"2.5",fill:Ee,style:{transition:"all 0.3s"}})]});case"llm":return(0,c.jsx)(c.Fragment,{children:(0,c.jsx)("polygon",{points:"6,0 7.5,4.5 12,4.5 8.5,7.5 9.5,12 6,9 2.5,12 3.5,7.5 0,4.5 4.5,4.5",fill:Ee,style:{filter:Be?"drop-shadow(0 0 4px #4a9effaa)":"none",transition:"all 0.3s"}})});case"edges":return(0,c.jsx)("path",{d:"M5,0 L7,0 L7,5 L12,5 L12,7 L7,7 L7,12 L5,12 L5,7 L0,7 L0,5 L5,5 Z",fill:Ee,style:{transition:"all 0.3s"}});case"done":return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("circle",{cx:"6",cy:"6",r:"5.5",fill:"none",stroke:Ee,strokeWidth:"1.5"}),(0,c.jsx)("polyline",{points:"3,6.5 5.5,9 9,3.5",fill:"none",stroke:Ee,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]});default:return(0,c.jsx)("circle",{cx:"6",cy:"6",r:"5",fill:Ee})}})();return(0,c.jsxs)(J.default.Fragment,{children:[(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:8,flex:1},children:[(0,c.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",style:{overflow:"visible",filter:Be?"drop-shadow(0 0 5px #4a9eff88)":"none",transition:"filter 0.3s"},children:vt}),(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:Fe?"#4a7aaa":Be?"#4a9eff":"#2d2d2d",textAlign:"center",letterSpacing:"0.04em",transition:"color 0.3s"},children:W.short})]}),se<U.length-1&&(0,c.jsx)("div",{style:{flex:1,height:1,background:se<H?"#1d4ed8":"#1a1a1a",marginBottom:22,transition:"background 0.3s"}})]},W.id)})}),R&&H>=4&&(0,c.jsxs)("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:14,animation:"intel-fade-in 0.6s ease"},children:[(0,c.jsxs)("div",{style:{borderTop:"1px solid #161616",paddingTop:16,display:"flex",gap:20,fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#383838"},children:[(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{style:{color:"#4a9eff"},children:R.totalFiles.toLocaleString()})," files"]}),R.routes.length>0&&(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{style:{color:"#4a9eff"},children:R.routes.length})," routes"]}),R.dataModels.length>0&&(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{style:{color:"#4a9eff"},children:R.dataModels.length})," models"]}),R.hotspots.length>0&&(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{style:{color:"#4a9eff"},children:R.hotspots.length})," hotspots"]})]}),R.techStack.length>0&&(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5},children:R.techStack.slice(0,14).map(W=>(0,c.jsx)("span",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#4a7aaa",background:"#080e18",border:"1px solid #0e2040",borderRadius:3,padding:"3px 7px",letterSpacing:"0.04em"},children:W},W))}),R.hotspots.length>0&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#2a2a2a",letterSpacing:"0.1em"},children:"DEPENDENCY HOTSPOTS"}),R.hotspots.slice(0,7).map(W=>{let se=R.hotspots[0].inDegree||1,Fe=W.inDegree/se*100,Be=W.id.split("/").slice(-2).join("/");return(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#3a4a5a",width:180,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:Be}),(0,c.jsx)("div",{style:{flex:1,height:2,background:"#0d0d0d",borderRadius:1,position:"relative"},children:(0,c.jsx)("div",{style:{position:"absolute",left:0,top:0,height:"100%",width:`${Fe}%`,background:"linear-gradient(90deg, #0e2040, #1d4ed8)",borderRadius:1,transition:"width 0.4s ease"}})}),(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#1d3a5a",minWidth:24,textAlign:"right"},children:W.inDegree})]},W.id)})]}),R.routes.length>0&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#2a2a2a",letterSpacing:"0.1em"},children:"DETECTED ROUTES"}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:"3px 14px"},children:[R.routes.slice(0,16).map((W,se)=>(0,c.jsx)("span",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#1a3a28"},children:W},se)),R.routes.length>16&&(0,c.jsxs)("span",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#222"},children:["+",R.routes.length-16," more"]})]})]}),R.dataModels.length>0&&(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#2a2a2a",letterSpacing:"0.1em"},children:"DATA MODELS"}),(0,c.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:"3px 12px"},children:R.dataModels.map((W,se)=>(0,c.jsx)("span",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#2a3a2a"},children:W},se))})]}),R.clusters.length>0&&(()=>{let W=["api","service","data-client","unknown"],se={api:"API",service:"SERVICE","data-client":"DATA",unknown:"MODULES"},Fe=W.reduce((Ee,Pe)=>(Ee[Pe]=R.clusters.filter(vt=>vt.layer===Pe).sort((vt,Jt)=>Jt.inDegree-vt.inDegree),Ee),{});return W.some(Ee=>Fe[Ee].length>0)?(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,borderTop:"1px solid #161616",paddingTop:16},children:[(0,c.jsxs)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:8,color:"#2a2a2a",letterSpacing:"0.1em"},children:["DETECTED MODULES ",(0,c.jsx)("span",{style:{color:"#1a1a1a"},children:"\u2014 ai is naming & connecting"})]}),W.map(Ee=>{let Pe=Fe[Ee];return Pe.length?(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:7,color:"#1e1e1e",letterSpacing:"0.12em"},children:se[Ee]}),(0,c.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:[Pe.slice(0,12).map(vt=>{let Jt=vt.id.split("/").slice(-2).join("/");return(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#1e2a38",background:"#080d14",border:"1px solid #0e1a28",borderRadius:4,padding:"4px 8px",letterSpacing:"0.02em",animation:"skel-shimmer 2.4s ease-in-out infinite",animationDelay:`${Pe.indexOf(vt)*.15%1.2}s`,maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:vt.id,children:Jt},vt.id)}),Pe.length>12&&(0,c.jsxs)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#151515",padding:"4px 0"},children:["+",Pe.length-12]})]})]},Ee):null})]}):null})()]})]})]}):(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:20,width:380},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:11,color:"#333",letterSpacing:"0.06em"},children:"no architecture map yet"}),we!=="set"&&(0,c.jsxs)("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:6},children:[(0,c.jsx)("div",{style:{fontFamily:"JetBrains Mono, monospace",fontSize:9,color:"#444",letterSpacing:"0.08em"},children:"ANTHROPIC API KEY"}),(0,c.jsx)("input",{type:"text",value:K,onChange:W=>ge(W.target.value),onKeyDown:W=>{W.key==="Enter"&&me()},placeholder:"sk-ant-api03-\u2026",style:{width:"100%",boxSizing:"border-box",background:"#0d0d0d",border:"1px solid #222",borderRadius:5,color:"#c8d4e3",fontSize:11,padding:"9px 12px",fontFamily:"JetBrains Mono, monospace",outline:"none"}})]}),we==="set"&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,fontFamily:"JetBrains Mono, monospace",fontSize:10,color:"#4ade80"},children:[(0,c.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:"#4ade80",display:"inline-block"}}),"API key ready"]}),(0,c.jsx)("button",{onClick:me,disabled:we!=="set"&&!K.trim(),style:{width:"100%",padding:"10px 0",background:we==="set"||K.trim()?"#1d4ed8":"#111",color:we==="set"||K.trim()?"#fff":"#333",border:"none",borderRadius:6,fontSize:12,fontFamily:"JetBrains Mono, monospace",cursor:we==="set"||K.trim()?"pointer":"not-allowed",fontWeight:600,letterSpacing:"0.04em",transition:"background 0.2s, color 0.2s"},children:"Generate Architecture Map"})]})})]}),G&&i==="xray"&&(0,c.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:"#475569",fontFamily:"monospace",fontSize:13,textAlign:"center",gap:8,flexDirection:"column"},children:[(0,c.jsxs)("svg",{width:"32",height:"32",viewBox:"0 0 14 14",fill:"none",style:{opacity:.3},children:[(0,c.jsx)("rect",{x:"1",y:"2",width:"12",height:"10",rx:"1.5",stroke:"currentColor",strokeWidth:"1.2"}),(0,c.jsx)("line",{x1:"4",y1:"5",x2:"10",y2:"5",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"4",y1:"7.5",x2:"8",y2:"7.5",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),(0,c.jsx)("line",{x1:"4",y1:"10",x2:"6.5",y2:"10",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"})]}),(0,c.jsx)("span",{style:{opacity:.4},children:"Click any file in a system modal to X-Ray it"})]}),G&&i==="flows"&&(0,c.jsx)("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"},children:(0,c.jsx)(Uae,{am:v,onFlowsReady:()=>window.location.reload()})}),G&&i==="blast"&&(0,c.jsx)("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"},children:(0,c.jsx)(Mae,{data:e})}),!G&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("div",{className:"memor-canvas",children:[t.level===2&&(0,c.jsx)(rp,{children:(0,c.jsx)(wae,{nodes:en.nodes,edges:en.edges})}),t.level===3&&(0,c.jsxs)("div",{className:"l3-container",children:[(0,c.jsxs)("div",{className:"l3-header",children:[(0,c.jsx)("span",{className:"l3-path",children:Je==="__root__"?Ei:Je}),(0,c.jsxs)("span",{className:"l3-count",children:[Ci.length," files"]})]}),(0,c.jsx)(bae,{files:Ci,selected:x,onSelect:W=>Ge(rn,Ei,Je,Di,W.path,W.name)})]}),t.level===4&&(0,c.jsx)(Bv,{filePath:t.filePath,onClose:()=>Ie(t.level-1)}),(0,c.jsx)("button",{className:"memor-back-btn",onClick:()=>Ie(t.level-1),children:"\u2190 Back"})]}),h&&(0,c.jsxs)("div",{className:"memor-detail",ref:b,children:[(0,c.jsxs)("div",{className:"detail-header",children:[(0,c.jsxs)("span",{className:"detail-title",children:[h.type==="system"&&e.analysis.systems.find(W=>W.id===h.systemId)?.name,h.type==="folder"&&h.folderId,h.type==="file"&&h.filePath?.split("/").pop()]}),(0,c.jsx)("button",{className:"detail-close",onClick:()=>y(null),children:"\xD7"})]}),h.type==="system"&&h.systemId&&(0,c.jsx)(xae,{systemId:h.systemId,data:e}),h.type==="folder"&&(0,c.jsxs)("div",{className:"detail-body",children:[(0,c.jsxs)("p",{className:"detail-desc",children:[(V[h.systemId??""]?.filesByFolder[h.folderId??"__root__"]??[]).length," files in this folder."]}),(0,c.jsx)("div",{className:"detail-derive-label",style:{marginTop:8},children:"\xB7 derived from filesystem"})]})]})]})]}),f&&(0,c.jsx)(gae,{data:e,onDrill:fe,onClose:()=>p(!1)})]})}function Yp({data:e}){return(0,c.jsx)(rp,{children:(0,c.jsx)($ae,{data:e})})}var J,Up,c,cae,YB,dae,IB,Gp,Fp,Js,kr,Ip,Ov,fae,FB,Ao,UB,pae,$B,vae,hu,kae,_ae,Tae,Iv,gu,Rae,Lae,Fv,WB=Z(()=>{"use strict";J=xt(ai()),Up=xt(sl());i0();N3();TB();RB();DB();Dv();c=xt(In());cae=new Set(["TypeScript","JavaScript","Python","Go","Rust","Java","C#","Ruby","PHP","Swift","Kotlin","C++","C","Scala","Elixir","Clojure","Haskell","Dart","R","MATLAB"]),YB={import:"#475569",intentional:"#64748b",env:"#d97706",orm:"#8b5cf6",http:"#3b82f6",trpc:"#22c55e",proxy:"#f97316"};dae=(0,c.jsxs)("svg",{width:"14",height:"12",viewBox:"0 0 14 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{d:"M1 2.5C1 1.67 1.67 1 2.5 1H5.38C5.76 1 6.12 1.16 6.37 1.44L7.13 2.31C7.38 2.59 7.74 2.75 8.12 2.75H11.5C12.33 2.75 13 3.42 13 4.25V9.5C13 10.33 12.33 11 11.5 11H2.5C1.67 11 1 10.33 1 9.5V2.5Z",fill:"#d97706",fillOpacity:"0.9"}),(0,c.jsx)("path",{d:"M1 4.75H13",stroke:"#b45309",strokeWidth:"0.5",strokeOpacity:"0.4"})]});IB=["#4a9eff","#e06c75","#56b6c2","#d19a66","#c678dd","#98c379","#e5c07b","#61afef","#ff8c69","#abb2bf"],Gp=.35,Fp={primary:"CORE",secondary:"SYSTEMS",support:"SUPPORT"};Js={primary:{w:150},secondary:{w:118},support:{w:138}},kr=68,Ip=10,Ov=48,fae=10,FB=16,Ao=10,UB=15,pae=5;$B={entry:"#6366f1",service:"#0ea5e9",component:"#8b5cf6",types:"#14b8a6",test:"#64748b",config:"#d97706",util:"#94a3b8",style:"#ec4899",other:"#475569"},vae={entry:"Entry",service:"Service",component:"Component",types:"Types",test:"Test",config:"Config",util:"Util",style:"Style",other:"\u2014"};hu={high:{dot:"#ef4444",text:"#ef4444",bg:"#ef444412",border:"#ef444430"},medium:{dot:"#f97316",text:"#f97316",bg:"#f9731612",border:"#f9731630"},low:{dot:"#64748b",text:"#64748b",bg:"#64748b12",border:"#64748b30"}};kae={core:"#818cf8",primary:"#38bdf8",secondary:"#64748b",support:"#334155"},_ae={database:"#10b981",cache:"#f59e0b",queue:"#a78bfa",api:"#38bdf8",auth:"#ef4444",storage:"#8b5cf6",cloud:"#64748b",monitoring:"#0d9488"},Tae={core:"CORE",primary:"PRIMARY",secondary:"SECONDARY",support:"SUPPORT"},Iv={"next.js":"nextjs_icon_dark.svg",nextjs:"nextjs_icon_dark.svg",react:"react_dark.svg",typescript:"typescript.svg",ts:"typescript.svg",javascript:"javascript.svg",js:"javascript.svg",tailwind:"tailwindcss.svg",tailwindcss:"tailwindcss.svg",prisma:"prisma.svg",nestjs:"nestjs.svg",express:"expressjs.svg",expressjs:"expressjs.svg",vite:"vite.svg",jest:"jest.svg",docker:"docker.svg",css:"css.svg",html:"html5.svg",html5:"html5.svg",bun:"bun.svg",npm:"npm.svg",yarn:"yarn.svg",pnpm:"pnpm.svg",turborepo:"turborepo-icon-light.svg",supabase:"supabase.svg"};gu={auth:"\u{1F510}",payment:"\u{1F4B3}",database:"\u{1F5C4}\uFE0F",email:"\u2709\uFE0F",analytics:"\u{1F4CA}",cache:"\u26A1",queue:"\u2699\uFE0F",storage:"\u{1F4C1}",ui:"\u{1F9E9}",workflow:"\u{1F504}",calendar:"\u{1F4C5}",video:"\u{1F3A5}",search:"\u{1F50D}",i18n:"\u{1F30D}",config:"\u{1F39B}\uFE0F",api:"\u{1F310}",routing:"\u{1F500}",trpc:"\u{1F4E1}",embed:"\u{1F50C}"};Rae={data:"#38bdf8",import:"#4b5563",event:"#a78bfa",auth:"#ef4444",config:"#f59e0b"};Lae={"user-facing":"#8b5cf6",api:"#4a9eff",service:"#22c55e","data-client":"#f59e0b",external:"#2dd4bf"};Fv=2});function Yae(e){return e.startsWith("diff ")||e.startsWith("index ")||e.startsWith("--- ")||e.startsWith("+++ ")}function Ps(e){let t=e.trim();if(!t)return[];let n=t.split(`
37
37
  `),i=[],o=[],r=[],a=!1;for(let s of n){if(s.startsWith("@@")){a=!0,r.length&&o.push([...i,...r].join(`
38
38
  `)),r=[s];continue}if(!a&&Yae(s)){i.push(s);continue}r.length?r.push(s):a||i.push(s)}return r.length&&o.push([...i,...r].join(`
39
- `)),o.length===0?[t]:o}var XB=Z(()=>{"use strict"});var JB=Z(()=>{"use strict";XB()});function _r(e){return e==="critical"?"#f85149":e==="high"?"#f59e0b":e==="medium"?"#eab308":"#8b949e"}function Uv(e){let t=e.lastIndexOf(".");return t!==-1&&jae.has(e.slice(t))}function jp({file:e}){let t=(e.split(".").pop()||"").toLowerCase(),n=Wae[t];if(n)return(0,C.jsx)("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:19,height:19,flexShrink:0},children:(0,C.jsx)("img",{src:`/tIcons/${n}`,alt:t,width:16,height:16,style:{display:"block"}})});let i=Vae[t]||{label:(t.slice(0,2)||"\xB7").toUpperCase(),color:"#6b7280"};return(0,C.jsx)("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:19,height:19,borderRadius:4,fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",color:i.color,background:i.color+"1f",flexShrink:0},children:i.label})}function KB({size:e=12,color:t}){return(0,C.jsx)("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,style:{display:"block",flexShrink:0,color:t},children:(0,C.jsx)("path",{d:"M1 21h22L12 2 1 21zm11-3h-2v-2h2v2zm0-8h-2v6h2v-6z"})})}function QB(e){return(e??"").split(/\n+/).map(t=>t.trim().replace(/^[-•*]\s*/,"")).filter(Boolean)}function Xae(e){if(e.length<=Wp)return e;let t=e.slice(0,Wp),n=t.lastIndexOf(" ");return`${(n>Wp*.55?t.slice(0,n):t).trimEnd()}\u2026`}function Jae(e,t){let n=t.toLowerCase(),i=e.toLowerCase();if(i.length>4&&n.includes(i.replace(/\s+/g,""))||(i.match(/[\d.]+/g)||[]).some(s=>s.length>1&&n.includes(s)))return!0;let r=i.split(/[^a-z0-9.+>=\-]+/).filter(s=>s.length>2);return r.length?r.filter(s=>n.includes(s)).length>=Math.min(2,r.length):!1}function Zae(e,t,n,i,o){let r=new Map,a=s=>(r.has(s)||r.set(s,{findings:[]}),r.get(s));if(e.length===0)return r;if(n?.silentKiller){let s=!1;for(let l=0;l<e.length;l++){let u=Ps(t)[e[l].chunkIndex]??t,d=`${e[l].text} ${u}`.toLowerCase(),f=n.signals.some(h=>Jae(h,u)),p=/engine|dependenc|version|runtime|node|module|docker|env|config|ci|build/.test(d);(f||n.signals.length===0&&p)&&(a(l).silentKiller=n,s=!0)}if(!s){let l=e.findIndex((u,d)=>{let f=Ps(t)[e[d].chunkIndex]??t;return/engine|dependenc|version|node|runtime|infra|config/.test(`${u.text} ${f}`.toLowerCase())});a(l>=0?l:0).silentKiller=n}}for(let s of i){let l=s.evidence.filter(p=>p.file===o);if(!l.length)continue;let u=0,d=-1;for(let p=0;p<e.length;p++){let h=(Ps(t)[e[p].chunkIndex]??t).toLowerCase(),y=0;for(let x of l){x.detail&&h.includes(x.detail.slice(0,24).toLowerCase())&&(y+=3),x.line&&h.includes(String(x.line))&&(y+=2);let S=x.file.split("/").pop()?.toLowerCase();S&&h.includes(S)&&(y+=1)}y>d&&(d=y,u=p)}let f=a(u);f.findings.includes(s)||f.findings.push(s)}return r}function Pae(e,t,n,i,o){if(e.length===0){let s=[];n?.silentKiller&&s.push({point:{text:n.reason,chunkIndex:0},hidden:{silentKiller:n,findings:[]}});for(let l of i)s.some(u=>u.hidden?.findings.includes(l))||s.push({point:{text:l.title,chunkIndex:0},hidden:{findings:[l]}});return s}let r=Zae(e,t,n,i,o),a=e.map((s,l)=>({point:s,hidden:r.get(l)}));n?.silentKiller&&!a.some(s=>s.hidden?.silentKiller)&&a.push({point:{text:n.reason,chunkIndex:e[0]?.chunkIndex??0},hidden:{silentKiller:n,findings:[]}});for(let s of i)a.some(l=>l.hidden?.findings.includes(s))||a.push({point:{text:s.title,chunkIndex:e[0]?.chunkIndex??0},hidden:{findings:[s]}});return a}function eD(e){return e?[e.silentKiller?.tier,...e.findings.map(n=>n.severity)].filter(Boolean).sort((n,i)=>(Ks[i]??0)-(Ks[n]??0))[0]??"medium":"medium"}function PB({hidden:e,compact:t}){let n=eD(e),i=_r(n),o=e.silentKiller?.reason??e.findings[0]?.title??"Hidden failure",r=e.silentKiller?.signals??[];return(0,C.jsxs)("div",{style:{marginTop:t?8:0,border:`1px solid ${i}55`,background:`${i}10`,borderRadius:6,padding:t?"8px 10px":"12px 14px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:t?4:8},children:[(0,C.jsx)(KB,{size:t?10:12,color:i}),(0,C.jsxs)("span",{style:{fontSize:t?9.5:10.5,color:i,fontFamily:le,fontWeight:700,letterSpacing:"0.06em"},children:["HIDDEN FAILURE",e.silentKiller?` \xB7 ${e.silentKiller.tier.toUpperCase()}`:""]})]}),(0,C.jsx)("div",{style:{fontSize:t?11:12.5,color:F.text,lineHeight:1.45,fontFamily:le},children:o}),!t&&e.findings.map((a,s)=>(0,C.jsx)("div",{style:{fontSize:11.5,color:F.dim,lineHeight:1.45,fontFamily:le,marginTop:8},children:a.narrative},s)),r.length>0&&(0,C.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginTop:t?6:8},children:r.slice(0,t?2:4).map((a,s)=>(0,C.jsx)("span",{style:{fontSize:10,color:i,fontFamily:le,background:"#0006",border:`1px solid ${i}44`,borderRadius:4,padding:"1px 6px"},children:a},s))})]})}function Kae(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<10)return"just now";if(t<60)return`${t}s ago`;let n=Math.floor(t/60);if(n<60)return`${n}m ago`;let i=Math.floor(n/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}function Qae({nodes:e,story:t}){let n=e.reduce((d,f)=>d+(f.linesAdded??0),0),i=e.reduce((d,f)=>d+(f.linesRemoved??0),0),{added:o,modified:r,deleted:a}=t.summary,s=new Set(e.map(d=>d.file.split("/")[0]).filter(Boolean)),l=n>0||i>0,u=(0,C.jsx)("span",{style:{fontSize:12,color:F.ghost,margin:"0 10px"},children:"\xB7"});return(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:0,marginBottom:20},children:[!!o&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.green,fontFamily:le},children:[o," added"]}),(!!r||!!a||l||s.size>1)&&u]}),!!r&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.amber,fontFamily:le},children:[r," modified"]}),(!!a||l||s.size>1)&&u]}),!!a&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.red,fontFamily:le},children:[a," deleted"]}),(l||s.size>1)&&u]}),l&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,fontFamily:le},children:[(0,C.jsxs)("span",{style:{color:F.green},children:["+",n]})," ",(0,C.jsxs)("span",{style:{color:F.red},children:["\u2212",i]})," ",(0,C.jsx)("span",{style:{color:F.dim},children:"lines"})]}),s.size>1&&u]}),s.size>1&&(0,C.jsxs)("span",{style:{fontSize:12,color:F.dim,fontFamily:le},children:[s.size," systems"]})]})}function ese({blast:e,hasRisk:t,nodes:n}){if(n.length>0&&n.every(l=>!Uv(l.file)))return null;let i=e.length===0&&!t,o=e.filter(l=>l.category==="handler").length,r=e.filter(l=>l.category==="service").length,a=e.filter(l=>l.category==="transitive").length,s=[o>0&&`${o} handler${o!==1?"s":""}`,r>0&&`${r} service${r!==1?"s":""}`,a>0&&`${a} transitive`].filter(Boolean).join(" \xB7 ");return(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:20,flexWrap:"wrap"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:i?F.green:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em"},children:"BLAST RADIUS"}),(0,C.jsx)("span",{style:{fontSize:12,color:i?F.green:F.dim,fontFamily:le},children:i?"No downstream callers \u2014 safe to push":e.length===0?"hidden risks detected":`${e.length} file${e.length!==1?"s":""} downstream`}),!i&&e.length>0&&s&&(0,C.jsx)("span",{style:{fontSize:11,color:F.ghost,fontFamily:le},children:s})]})}function tse({node:e,blast:t,findings:n,onClick:i}){let o=e.file.split("/").pop()??e.file,r=e.file.includes("/")?e.file.split("/").slice(0,-1).join("/"):"",a=t.length,s=n.reduce((d,f)=>(Ks[f.severity]??0)>(Ks[d??""]??0)?f.severity:d,null),l=e.changePoints?.[0]?.text??QB(e.summary)[0],u=l&&l.length>100?l.slice(0,l.lastIndexOf(" ",97)||97)+"\u2026":l;return(0,C.jsxs)("div",{onClick:i,style:{background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:10,padding:"14px 16px",cursor:"pointer"},onMouseEnter:d=>{d.currentTarget.style.borderColor=F.ghost},onMouseLeave:d=>{d.currentTarget.style.borderColor=F.cardBorder},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:e.role||u?8:0},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:Vp[e.status]??F.dim,flexShrink:0}}),(0,C.jsx)(jp,{file:e.file}),(0,C.jsx)("span",{style:{fontSize:13,fontWeight:700,color:F.text,fontFamily:le},children:o}),r&&(0,C.jsx)("span",{style:{fontSize:10,color:F.ghost,fontFamily:le},children:r}),(0,C.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:6,flexShrink:0},children:[(e.linesAdded??0)>0&&(0,C.jsxs)("span",{style:{fontSize:10,color:F.green,fontFamily:le},children:["+",e.linesAdded]}),(e.linesRemoved??0)>0&&(0,C.jsxs)("span",{style:{fontSize:10,color:F.red,fontFamily:le},children:["\u2212",e.linesRemoved]})]})]}),e.role&&(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginBottom:u?7:10,paddingLeft:14},children:[(0,C.jsx)("span",{style:{fontSize:8,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginTop:3,flexShrink:0,minWidth:48},children:"DOES"}),(0,C.jsx)("span",{style:{fontSize:11.5,color:F.dim,lineHeight:1.4},children:e.role})]}),u&&(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginBottom:10,paddingLeft:14},children:[(0,C.jsx)("span",{style:{fontSize:8,color:F.accent,fontFamily:le,letterSpacing:"0.12em",marginTop:3,flexShrink:0,minWidth:48},children:"CHANGED"}),(0,C.jsx)("span",{style:{fontSize:12,color:F.text,lineHeight:1.4},children:u})]}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,paddingLeft:14,flexWrap:"wrap"},children:[Uv(e.file)&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:a===0?F.green:a>=4?F.red:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:10,color:a===0?F.green:F.dim,fontFamily:le},children:a===0?"no callers":`${a} caller${a!==1?"s":""}`})]}),s&&(0,C.jsxs)("span",{style:{fontSize:9,color:_r(s),fontFamily:le,background:_r(s)+"18",border:`1px solid ${_r(s)}55`,borderRadius:4,padding:"1px 7px",display:"inline-flex",alignItems:"center",gap:4},children:[(0,C.jsx)(KB,{size:8,color:_r(s)}),n.length," hidden failure",n.length!==1?"s":""]})]})]})}function nse({selNode:e,diff:t,diffLoading:n,findings:i,changeIdx:o,setChangeIdx:r,expandedInference:a,setExpandedInference:s,onViewFullDiff:l}){let u=i.filter(w=>w.evidence.some(M=>M.file===e.file)),d=e.changePoints?.length?e.changePoints:QB(e.summary).map(w=>({text:w,chunkIndex:0})),f=Pae(d,t,e.risk,u,e.file),p=f.map(w=>w.point),h=f.length?Math.min(o,f.length-1):0,y=f[h]?.hidden,x=Ps(t),S=Math.min(p[h]?.chunkIndex??0,Math.max(x.length-1,0)),b=(0,Te.useRef)([]);(0,Te.useEffect)(()=>{b.current[S]?.scrollIntoView({block:"nearest",behavior:"smooth"})},[S,h]);let v=f.length,g=h>0,m=h<v-1;return(0,C.jsxs)("div",{style:{display:"flex",gap:14,alignItems:"stretch",height:"calc(100vh - 240px)",minHeight:360},children:[(0,C.jsxs)("div",{style:{flex:"0 0 40%",maxWidth:"40%",minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:10,flexShrink:0},children:[(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.12em",flex:1},children:"INFERENCE POINTS"}),v>1&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("button",{type:"button",onClick:()=>r((h-1+v)%v),style:{background:"transparent",border:`1px solid ${F.line}`,borderRadius:3,color:g?F.dim:F.ghost,cursor:"pointer",padding:"1px 6px",fontSize:11,fontFamily:le,opacity:g?1:.4},children:"\u2190"}),(0,C.jsx)("button",{type:"button",onClick:()=>r((h+1)%v),style:{background:"transparent",border:`1px solid ${F.line}`,borderRadius:3,color:m?F.dim:F.ghost,cursor:"pointer",padding:"1px 6px",fontSize:11,fontFamily:le,opacity:m?1:.4},children:"\u2192"})]})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",paddingRight:6},children:f.length?f.map(({point:w,hidden:M},E)=>{let N=E===h,$=f.length>4&&w.text.length>Wp,D=a.has(E),T=!$||N&&D?w.text:Xae(w.text),j=$&&N,_=M?_r(eD(M)):void 0;return(0,C.jsxs)("button",{type:"button",onClick:()=>r(E),style:{display:"flex",gap:10,width:"100%",textAlign:"left",background:N?"#000":"transparent",border:`1px solid ${N?_??"#52525b":M?`${_}55`:F.line}`,borderRadius:8,padding:"13px 12px",marginBottom:12,cursor:"pointer",fontFamily:le},children:[(0,C.jsx)("span",{style:{fontSize:11,fontWeight:700,color:N?F.text:F.ghost,fontFamily:le,flexShrink:0,marginTop:2},children:E+1}),(0,C.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,C.jsx)("span",{style:{fontSize:12,color:N?F.text:F.dim,lineHeight:1.4,fontFamily:le,display:"block"},children:T}),M&&(0,C.jsx)(PB,{hidden:M,compact:!0}),j&&(0,C.jsx)("span",{role:"button",tabIndex:0,onClick:L=>{L.stopPropagation(),s(R=>{let I=new Set(R);return I.has(E)?I.delete(E):I.add(E),I})},onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),L.stopPropagation(),L.currentTarget.click())},style:{display:"inline-block",marginTop:6,fontSize:10.5,color:F.accent,fontFamily:le,cursor:"pointer",textDecoration:"underline",textUnderlineOffset:2},children:D?"Show less":"Read more"})]})]},E)}):(0,C.jsx)(mu,{children:"(enrich pending or no summary)"})})]}),(0,C.jsxs)("div",{style:{flex:"1 1 60%",minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10,flexShrink:0},children:[(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.12em"},children:"DIFF"}),(0,C.jsx)("span",{style:{flex:1}}),t&&(0,C.jsx)("button",{type:"button",onClick:l,style:{background:"transparent",border:"none",padding:0,fontSize:10.5,color:F.accent,fontFamily:le,cursor:"pointer",textDecoration:"underline",textUnderlineOffset:2},children:"View Complete Diff"})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:y?"1 1 55%":1,minHeight:0,background:"#060606",border:`1px solid ${F.line}`,borderRadius:8,overflow:"auto"},children:n?(0,C.jsx)("div",{style:{padding:14,color:F.ghost,fontFamily:le,fontSize:11},children:"loading diff\u2026"}):t?x.length>1?x.map((w,M)=>(0,C.jsx)("div",{ref:E=>{b.current[M]=E},style:{borderLeft:`3px solid ${M===S?F.accent:"transparent"}`,marginBottom:1},children:(0,C.jsx)(Mr,{diffText:w})},M)):(0,C.jsx)(Mr,{diffText:t}):(0,C.jsx)("div",{style:{padding:14,color:F.ghost,fontFamily:le,fontSize:11},children:"no diff"})}),y&&(0,C.jsx)("div",{style:{flex:"0 0 auto",marginTop:10},children:(0,C.jsx)(PB,{hidden:y})})]})]})}function Gv(){let[e,t]=(0,Te.useState)([]),[n,i]=(0,Te.useState)(""),[o,r]=(0,Te.useState)(()=>localStorage.getItem("memor_source")??"working"),[a,s]=(0,Te.useState)(()=>localStorage.getItem("memor_target")??"main"),[l,u]=(0,Te.useState)(null),[d,f]=(0,Te.useState)(!1),[p,h]=(0,Te.useState)(null),[y,x]=(0,Te.useState)("changes"),[S,b]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{b(!1)},[o,a]),(0,Te.useEffect)(()=>{x("changes")},[p]);let[v,g]=(0,Te.useState)(""),[m,w]=(0,Te.useState)(0),[M,E]=(0,Te.useState)(()=>new Set),[N,A]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{w(0),E(new Set),A(!1)},[p,v]);let[$,D]=(0,Te.useState)(!1),[T,j]=(0,Te.useState)(!1),[_,L]=(0,Te.useState)(null),[R,I]=(0,Te.useState)(""),[O,Y]=(0,Te.useState)(""),[B,U]=(0,Te.useState)(!1),[H,te]=(0,Te.useState)(!1),[oe,de]=(0,Te.useState)([]),[ue,pe]=(0,Te.useState)(null),[K,ge]=(0,Te.useState)("main"),[,we]=(0,Te.useState)(0);(0,Te.useEffect)(()=>{let G=setInterval(()=>we(W=>W+1),3e4);return()=>clearInterval(G)},[]),(0,Te.useEffect)(()=>{if(!N)return;let G=W=>{W.key==="Escape"&&A(!1)};return window.addEventListener("keydown",G),()=>window.removeEventListener("keydown",G)},[N]),(0,Te.useEffect)(()=>{fetch("/api/repo-root").then(G=>G.json()).then(G=>I((G.repoRoot||"").split("/").filter(Boolean).pop()||"")).catch(()=>{})},[]),(0,Te.useEffect)(()=>{localStorage.setItem("memor_source",o)},[o]),(0,Te.useEffect)(()=>{localStorage.setItem("memor_target",a)},[a]);let Ce=(0,Te.useRef)(!!localStorage.getItem("memor_target")),ie=(0,Te.useCallback)(()=>fetch("/api/branches").then(G=>G.json()).then(G=>{t(G.branches||[]),i(G.current||""),L(G.fetchedAt??null),Y(G.defaultBranch||""),!Ce.current&&G.defaultBranch&&(Ce.current=!0,s(G.defaultBranch))}).catch(()=>{}),[]);(0,Te.useEffect)(()=>{ie()},[ie]);let ne=(0,Te.useCallback)(()=>{f(!0),D(!1),h(null),g(""),u(null),fetch(`/api/branch-story?base=${encodeURIComponent(a)}&source=${encodeURIComponent(o)}&enrich=1`).then(G=>G.json()).then(G=>{u(G),f(!1)}).catch(()=>f(!1))},[a,o]);(0,Te.useEffect)(()=>{ne()},[ne]);let Me=(0,Te.useCallback)(()=>{j(!0),fetch("/api/fetch",{method:"POST"}).then(G=>G.json()).then(()=>ie()).then(()=>ne()).finally(()=>j(!1))},[ie,ne]),me=(0,Te.useCallback)(()=>{U(!0),te(!0),pe(null),ge(O||a||"main"),fetch("/api/fetch",{method:"POST"}).then(()=>fetch("/api/branches?counts=1")).then(G=>G.json()).then(G=>{de(G.branches||[]),t(G.branches||[]),L(G.fetchedAt??null),G.defaultBranch&&(Y(G.defaultBranch),ge(G.defaultBranch))}).catch(()=>{}).finally(()=>te(!1))},[O,a]),Oe=(0,Te.useCallback)(()=>{ue&&(h(null),r(ue),s(K),U(!1))},[ue,K]);(0,Te.useEffect)(()=>{let G=null,W=1e3,se=null,Fe=!1;function Be(){Fe||(G=new EventSource("/api/events"),G.onmessage=Ee=>{W=1e3;try{JSON.parse(Ee.data).type==="code-changed"&&D(!0)}catch{}},G.onerror=()=>{G?.close(),G=null,Fe||(se=setTimeout(()=>{W=Math.min(W*2,8e3),Be()},W))})}return Be(),()=>{Fe=!0,se&&clearTimeout(se),G?.close()}},[]);let[Ve,V]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{if(!p){g("");return}V(!0),fetch(`/api/branch-diff?file=${encodeURIComponent(p)}&base=${encodeURIComponent(a)}&source=${encodeURIComponent(o)}`).then(G=>G.json()).then(G=>{g(G.diff||""),V(!1)}).catch(()=>{g(""),V(!1)})},[p,a,o]);let fe=(l?.nodes||[]).filter(G=>G.status!=="context").sort((G,W)=>Ie(W)-Ie(G)||(W.linesAdded??0)+(W.linesRemoved??0)-((G.linesAdded??0)+(G.linesRemoved??0))),he=fe.find(G=>G.file===p)||null;function Ge(G){return(l?.blastRadius||[]).filter(W=>W.importedFiles.includes(G))}function Ie(G){return Ge(G.file).length}function ct(G){return(l?.edges||[]).filter(W=>W.to===G).map(W=>W.from)}let et=l?.failureReport?.findings??[],ft=fe.filter(G=>G.risk?.silentKiller),jt=et.reduce((G,W)=>Math.max(G,Ks[W.severity]||0),0),en=Math.max(ft.reduce((G,W)=>Math.max(G,Ks[W.risk.tier]||0),0),jt),Je=en>=4?{color:F.red,label:"RED \xB7 DO NOT MERGE BLIND",sub:`${ft.length} silent killer${ft.length!==1?"s":""} \u2014 a critical runtime/infra change the code graph can't see.`}:en>=3?{color:F.amber,label:"AMBER \xB7 REVIEW BEFORE MERGE",sub:`${ft.length} high-risk config/runtime change${ft.length!==1?"s":""} in this set.`}:en>=1?{color:"#eab308",label:"AMBER \xB7 CHECK BEFORE MERGE",sub:"A config change that can fail silently at runtime."}:fe.length?{color:F.green,label:"GREEN \xB7 NO SILENT KILLERS",sub:"No runtime/infra risk outside the code graph."}:null,rn=(G,W,se)=>(0,C.jsxs)("div",{style:{position:"relative",width:"100%"},children:[(0,C.jsx)("select",{value:G,onChange:Fe=>W(Fe.target.value),style:{appearance:"none",WebkitAppearance:"none",MozAppearance:"none",width:"100%",boxSizing:"border-box",background:F.main,color:F.text,border:`1px solid ${F.border}`,borderRadius:6,padding:"6px 26px 6px 10px",fontSize:11.5,fontFamily:le,cursor:"pointer",outline:"none",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"},children:se.map(Fe=>(0,C.jsx)("option",{value:Fe.v,children:Fe.label},Fe.v))}),(0,C.jsx)("span",{style:{position:"absolute",right:10,top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:F.dim,fontSize:9},children:"\u25BC"})]}),Ei=[{v:"working",label:`Current changes \xB7 ${n||"HEAD"}`},...e.filter(G=>!G.merged).map(G=>({v:G.name,label:G.name}))],Di=Date.now()-2160*60*60*1e3,Ci=[{v:"HEAD",label:"HEAD (uncommitted only)"},...e.filter(G=>G.isCurrent||G.name===O||G.lastCommit>Di).map(G=>({v:G.name,label:`vs ${G.name}`}))],$n=oe.filter(G=>!G.merged).sort((G,W)=>(W.ahead??0)-(G.ahead??0)||W.lastCommit-G.lastCommit);return(0,C.jsxs)("div",{style:{height:"100vh",display:"flex",background:F.main,color:F.text,fontFamily:xa},children:[(0,C.jsxs)("div",{style:{width:300,flexShrink:0,background:F.sidebar,borderRight:`1px solid ${F.line}`,display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,C.jsxs)("div",{style:{padding:"15px 16px 12px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9},children:[(0,C.jsx)("span",{style:{width:18,height:18,borderRadius:5,background:"linear-gradient(135deg,#818cf8,#a371f7)",display:"inline-block",flexShrink:0}}),(0,C.jsx)("span",{style:{fontWeight:800,fontSize:15,fontFamily:le,letterSpacing:"-0.02em",color:F.text},children:"memor"})]}),R&&(0,C.jsx)("div",{style:{fontSize:11,color:F.dim,fontFamily:le,marginTop:7,marginLeft:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:R})]}),(0,C.jsxs)("div",{style:{padding:"4px 16px 8px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:7,marginBottom:5},children:[(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase"},children:"Source"}),(0,C.jsx)("button",{onClick:Me,disabled:T,title:"git fetch origin --prune",style:{display:"inline-flex",alignItems:"center",background:"transparent",border:"none",color:T?F.faint:F.dim,cursor:T?"default":"pointer",padding:0,fontSize:11},children:(0,C.jsx)("span",{style:{display:"inline-block",animation:T?"spin 0.8s linear infinite":"none"},children:"\u27F3"})}),_&&!T&&(0,C.jsx)("span",{style:{fontSize:9,color:F.ghost,fontFamily:le},children:Kae(_)})]}),rn(o,r,Ei)]}),(0,C.jsxs)("div",{style:{padding:"4px 16px 12px"},children:[(0,C.jsx)("div",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:5},children:"Target"}),rn(a,s,Ci),l&&(0,C.jsxs)("div",{style:{fontSize:9.5,color:F.ghost,fontFamily:le,marginTop:8,display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[l.baseSha&&(0,C.jsxs)("span",{children:["@ ",l.baseSha.slice(0,7)]}),l.branchState&&(0,C.jsxs)("span",{children:[l.branchState.ahead,"\u2191 ",l.branchState.behind,"\u2193"]}),o==="working"&&(0,C.jsx)("span",{style:{background:"#facc1522",color:"#facc15",border:"1px solid #facc1544",borderRadius:3,padding:"0 4px",fontSize:9},children:"+ uncommitted"}),(0,C.jsx)("span",{style:{color:F.ghost},children:l.fidelity==="diff-only"?"diff-only":"full"})]})]}),(0,C.jsxs)("div",{onClick:()=>h(null),style:{padding:"11px 16px 8px",cursor:"pointer",borderTop:`1px solid ${F.line}`},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,C.jsx)("span",{style:{fontSize:12.5,fontWeight:700,color:p===null?F.accent:F.text,fontFamily:xa},children:"The Change"}),(0,C.jsxs)("span",{style:{marginLeft:"auto",fontSize:9.5,color:F.faint,fontFamily:le},children:[fe.length," file",fe.length!==1?"s":""]})]}),l&&(0,C.jsxs)("div",{style:{fontSize:9.5,color:F.ghost,fontFamily:le,marginTop:3},children:[l.summary.added,"A \xB7 ",l.summary.modified,"M \xB7 ",l.summary.deleted,"D"]})]}),(0,C.jsxs)("div",{className:"memor-scroll",style:{flex:1,overflowY:"scroll",padding:"2px 0 12px"},children:[d&&(0,C.jsx)(ise,{}),!d&&fe.length===0&&(0,C.jsx)("div",{style:{padding:"8px 16px",fontSize:10.5,color:F.faint,fontFamily:le,lineHeight:1.6},children:l&&o==="working"?"No changes detected in working directory. Try selecting a different source branch above.":l&&(l.branchState?.ahead??0)===0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("b",{style:{color:F.amber},children:o})," is even with ",a," \u2014 nothing to compare."]}):"no changes."}),(()=>{let G=new Map;for(let se of fe){let Fe=se.file.split("/"),Be=Fe.length>1?Fe.slice(0,-1).join("/"):"";G.has(Be)||G.set(Be,[]),G.get(Be).push(se)}return[...G.keys()].sort().map(se=>{let Fe=G.get(se);return(0,C.jsxs)("div",{children:[se&&(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"8px 16px 4px",userSelect:"none"},children:[(0,C.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",style:{color:F.faint,flexShrink:0},children:(0,C.jsx)("path",{d:"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"})}),(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.04em",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:se})]}),(0,C.jsx)("div",{style:se?{marginLeft:22,borderLeft:"1px solid rgba(255,255,255,0.18)"}:{},children:Fe.map(Be=>{let Ee=Ie(Be),Pe=p===Be.file,vt=l?.fidelity!=="diff-only",Jt=Ee===0?ct(Be.file).length:0,Qs=Ee>=6?"#ef4444":Ee>=3?"#f59e0b":Ee>=1?"#eab308":Jt>0?"#79c0ff":"#22c55e",Sa=Vp[Be.status]??F.dim;return(0,C.jsxs)("div",{onClick:()=>h(Be.file),style:{display:"flex",alignItems:"center",gap:0,paddingTop:5,paddingBottom:5,paddingRight:16,paddingLeft:se?0:16,cursor:"pointer",background:Pe?"#17171a":"transparent",transition:"background 0.1s"},onMouseEnter:dn=>{Pe||(dn.currentTarget.style.background="#141417")},onMouseLeave:dn=>{Pe||(dn.currentTarget.style.background="transparent")},children:[se&&(0,C.jsx)("div",{style:{width:10,height:1,background:"rgba(255,255,255,0.18)",flexShrink:0}}),(0,C.jsx)(jp,{file:Be.file}),(0,C.jsx)("span",{style:{flex:1,fontSize:12,color:Pe?F.text:"#c2c6cc",fontFamily:xa,fontWeight:500,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",marginLeft:8,minWidth:0},children:Be.file.split("/").pop()}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,flexShrink:0,marginLeft:6},children:[(Be.linesAdded??0)+(Be.linesRemoved??0)>0&&(0,C.jsxs)("span",{style:{fontSize:9,fontFamily:le},children:[(0,C.jsxs)("span",{style:{color:F.green},children:["+",Be.linesAdded??0]})," ",(0,C.jsxs)("span",{style:{color:F.red},children:["-",Be.linesRemoved??0]})]}),(0,C.jsx)("span",{style:{width:13,height:13,borderRadius:3,background:Sa,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:(0,C.jsx)("span",{style:{fontSize:7.5,color:"#0b0b0f",fontFamily:le,fontWeight:900,lineHeight:1},children:ZB[Be.status]??"?"})})]}),vt&&Ee===0&&Jt===0&&(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:Qs,flexShrink:0,marginLeft:5},title:"Zero Blast"}),vt&&(Ee>0||Jt>0)&&(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:Qs,flexShrink:0,marginLeft:5},title:Ee>0?`Blast: ${Ee}`:`Wired \xB7 ${Jt} internal`})]},Be.file)})})]},se||"__root__")})})()]})]}),(0,C.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",padding:18,gap:12},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[$&&(0,C.jsxs)("div",{onClick:ne,style:{display:"flex",alignItems:"center",gap:8,background:"#1d4ed8",color:"#fff",borderRadius:7,padding:"8px 13px",fontSize:12,fontFamily:le,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:"#fff",animation:"pulse 1s infinite"}})," Changes detected \xB7 reload"]}),!d&&l!==null&&fe.length>0&&fe.every(G=>!G.summary)&&(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:7,background:`${F.amber}12`,border:`1px solid ${F.amber}44`,borderRadius:7,padding:"7px 12px"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:11,color:F.amber,fontFamily:le,fontWeight:600,letterSpacing:"0.04em"},children:"AI narration off \xB7 add API key in Settings"})]}),S&&Je&&!d&&(0,C.jsxs)("div",{title:Je.sub,style:{display:"flex",alignItems:"center",gap:7,background:`${Je.color}1a`,border:`1px solid ${Je.color}66`,borderRadius:7,padding:"7px 12px"},children:[(0,C.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:Je.color,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:11,color:Je.color,fontFamily:le,fontWeight:700,letterSpacing:"0.04em"},children:Je.label})]}),(0,C.jsx)("span",{style:{flex:1}}),(0,C.jsxs)("button",{onClick:me,style:{display:"flex",alignItems:"center",gap:8,background:F.accent,color:"#0b0b0f",border:"none",borderRadius:7,padding:"8px 15px",fontSize:12.5,fontWeight:700,fontFamily:xa,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{fontSize:13},children:"\u2387"})," Review a Pull Request"]})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,overflow:"auto",background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:12,padding:"26px 30px",boxSizing:"border-box"},children:he?(0,C.jsxs)("div",{children:[(0,C.jsxs)("div",{onClick:()=>h(null),style:{display:"inline-flex",alignItems:"center",gap:5,marginBottom:14,cursor:"pointer",color:F.dim,fontFamily:le,fontSize:11},children:[(0,C.jsx)("span",{children:"\u2190"}),(0,C.jsx)("span",{style:{textDecoration:"underline",textUnderlineOffset:2},children:"overview"})]}),(0,C.jsx)("div",{style:{display:"flex",alignItems:"flex-start",gap:12,marginBottom:18},children:(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,flex:1,minWidth:0},children:[(0,C.jsx)(jp,{file:he.file}),(0,C.jsx)("span",{title:he.file,style:{fontSize:17,fontWeight:700,color:F.text,fontFamily:le,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",cursor:"default"},children:he.file.split("/").pop()}),(0,C.jsx)("span",{style:{fontSize:10,fontWeight:700,color:Vp[he.status]??F.dim,fontFamily:le,border:`1px solid ${Vp[he.status]??F.dim}55`,borderRadius:3,padding:"1px 6px",flexShrink:0},children:ZB[he.status]??"?"})]})}),(0,C.jsx)("div",{style:{marginBottom:22},children:he.role?(0,C.jsx)("div",{style:{fontSize:13,color:F.dim,fontFamily:le,lineHeight:1.55},children:he.role}):(0,C.jsx)(mu,{children:"(role available on the checked-out branch)"})}),(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(rse,{tabs:[{id:"changes",label:"What Changes in the File"},{id:"blast",label:"Blast Radius"}],active:y,onSelect:x}),y==="changes"&&(0,C.jsx)(nse,{selNode:he,diff:v,diffLoading:Ve,findings:et,changeIdx:m,setChangeIdx:w,expandedInference:M,setExpandedInference:E,onViewFullDiff:()=>A(!0)}),y==="blast"&&(0,C.jsxs)(ase,{label:"BLAST RADIUS",children:[(he.entryPoints?.length??0)>0&&(0,C.jsxs)("div",{style:{marginBottom:20},children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:9},children:"WHAT CALLS THIS"}),he.entryPoints.slice(0,4).map((W,se)=>(0,C.jsxs)("div",{style:{fontSize:12,color:F.green,fontFamily:le,marginBottom:3},children:[W.method?(0,C.jsxs)("span",{style:{color:F.faint},children:[W.method," "]}):null,W.path,W.via?(0,C.jsxs)("span",{style:{color:F.ghost},children:[" \xB7 via ",W.via]}):null]},se))]}),Ge(he.file).length>0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{style:{fontSize:12,color:Ge(he.file).length>=4?F.red:F.amber,fontFamily:le,marginBottom:8},children:["\u25C8 ",Ge(he.file).length," file(s) outside this change import it"]}),Ge(he.file).slice(0,12).map((W,se)=>(0,C.jsxs)("div",{style:{fontSize:11,color:F.dim,fontFamily:le,marginBottom:3},children:[W.file," ",(0,C.jsxs)("span",{style:{color:F.ghost},children:["\xB7 ",W.category]})]},se))]}):l?.fidelity==="diff-only"?(0,C.jsx)(mu,{children:"available on the checked-out branch"}):ct(he.file).length>0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{style:{fontSize:12,color:F.blue,fontFamily:le,marginBottom:8},children:["\u25C8 new, wired into ",ct(he.file).length," file(s) in this change"]}),ct(he.file).slice(0,12).map((W,se)=>(0,C.jsxs)("div",{onClick:()=>h(W),style:{fontSize:11,color:F.dim,fontFamily:le,marginBottom:3,cursor:"pointer"},children:[W," ",(0,C.jsx)("span",{style:{color:F.ghost},children:"\xB7 imports this"})]},se)),(0,C.jsx)("div",{style:{fontSize:10.5,color:F.ghost,fontFamily:le,marginTop:5},children:"nothing outside the change imports it yet"})]}):Uv(he.file)?(0,C.jsx)(mu,{children:"nothing imports it \u2014 isolated"}):(0,C.jsxs)(mu,{children:["blast radius tracks JS/TS imports \u2014 not available for ",he.file.slice(he.file.lastIndexOf("."))||"this file type"]})]})]})]}):(0,C.jsxs)("div",{children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:14},children:"THE CHANGE"}),d&&(0,C.jsx)(ose,{}),!d&&S&&et.length===0&&ft.length===0&&fe.length>0&&(0,C.jsxs)("div",{style:{marginBottom:18,border:`1px solid ${F.green}55`,background:`${F.green}10`,borderRadius:10,padding:"14px 18px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9},children:[(0,C.jsx)("span",{style:{width:9,height:9,borderRadius:"50%",background:F.green}}),(0,C.jsx)("span",{style:{fontSize:13,color:F.green,fontFamily:le,fontWeight:700},children:"GREEN \xB7 NO SIMULATED FAILURES"})]}),(0,C.jsxs)("div",{style:{fontSize:12,color:F.dim,marginTop:6,lineHeight:1.5},children:["No runtime/startup/infra risks found across ",fe.length," changed file",fe.length!==1?"s":"",". Not analyzed: ",l?.failureReport?.notChecked?.slice(0,3).join(", "),"\u2026"]})]}),!d&&S&&Je&&ft.length>0&&(0,C.jsxs)("div",{style:{marginBottom:18,border:`1px solid ${Je.color}66`,background:`${Je.color}12`,borderRadius:10,padding:"15px 18px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:7},children:[(0,C.jsx)("span",{style:{width:9,height:9,borderRadius:"50%",background:Je.color}}),(0,C.jsx)("span",{style:{fontSize:14,color:Je.color,fontFamily:le,fontWeight:700,letterSpacing:"0.04em"},children:Je.label})]}),(0,C.jsx)("div",{style:{fontSize:13,color:F.text,lineHeight:1.5,marginBottom:10},children:Je.sub}),ft.map(G=>(0,C.jsxs)("div",{onClick:()=>h(G.file),style:{display:"flex",alignItems:"center",gap:8,cursor:"pointer",fontSize:11.5,fontFamily:le,color:F.dim,marginBottom:3},children:[(0,C.jsxs)("span",{style:{color:_r(G.risk.tier)},children:["\u2620 ",G.risk.tier.toUpperCase()]}),(0,C.jsx)("span",{style:{color:F.text},children:G.file.split("/").pop()}),(0,C.jsxs)("span",{style:{color:F.ghost},children:["\xB7 ",G.file]})]},G.file))]}),!d&&S&&et.length>0&&(0,C.jsxs)("div",{style:{marginBottom:20},children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:10},children:"\u2620 SIMULATE A FAILURE \xB7 PRE-MORTEM"}),et.map((G,W)=>{let se=_r(G.severity),Fe=G.tier==="speculative",Be=G.severity==="critical"?"\u2620":G.severity==="high"?"\u25B2":"\u25CF",Ee=G.tier==="proven"?F.green:G.tier==="inferred"?F.amber:F.faint;return(0,C.jsxs)("div",{style:{marginBottom:14,border:`1px ${Fe?"dashed":"solid"} ${se}${Fe?"44":"66"}`,background:`${se}${Fe?"08":"10"}`,borderRadius:10,padding:"15px 17px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:9,flexWrap:"wrap"},children:[(0,C.jsx)("span",{style:{fontSize:12,color:se},children:Be}),(0,C.jsx)("span",{style:{fontSize:11,color:se,fontFamily:le,fontWeight:700,letterSpacing:"0.05em"},children:G.severity.toUpperCase()}),(0,C.jsx)("span",{style:{fontSize:14,color:F.text,fontWeight:700},children:G.title}),(0,C.jsxs)("span",{style:{fontSize:8.5,color:Ee,fontFamily:le,fontWeight:700,border:`1px solid ${Ee}55`,borderRadius:3,padding:"1px 6px",letterSpacing:"0.06em"},children:[G.tier.toUpperCase(),G.confidence?` \xB7 ${G.confidence}`:""]}),(0,C.jsxs)("span",{style:{fontSize:8.5,color:F.ghost,fontFamily:le,marginLeft:"auto"},children:[G.patternId," \xB7 ",G.failureMode]})]}),(0,C.jsx)("div",{style:{fontSize:13,color:F.text,lineHeight:1.55,marginBottom:12},children:G.narrative}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"EVIDENCE CHAIN"}),(0,C.jsx)("div",{style:{marginBottom:12,paddingLeft:2},children:G.evidence.map((Pe,vt)=>(0,C.jsxs)("div",{onClick:()=>fe.some(Jt=>Jt.file===Pe.file)&&h(Pe.file),style:{display:"flex",gap:8,marginBottom:5,cursor:fe.some(Jt=>Jt.file===Pe.file)?"pointer":"default"},children:[(0,C.jsx)("span",{style:{color:se,fontSize:11,flexShrink:0},children:vt===0?"\u250C":vt===G.evidence.length-1?"\u2514":"\u2502"}),(0,C.jsxs)("div",{style:{minWidth:0},children:[(0,C.jsxs)("span",{style:{fontSize:11.5,color:F.blue,fontFamily:le},children:[Pe.file,Pe.line?`:${Pe.line}`:""]}),(0,C.jsxs)("span",{style:{fontSize:12,color:F.dim},children:[" \u2014 ",Pe.detail]})]})]},vt))}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"SIMULATE BEFORE MERGE"}),(0,C.jsx)("div",{style:{marginBottom:12},children:G.simulate.map((Pe,vt)=>(0,C.jsxs)("div",{onClick:()=>navigator.clipboard?.writeText(Pe.cmd),title:"click to copy",style:{display:"flex",alignItems:"baseline",gap:8,background:"#0007",border:`1px solid ${F.line}`,borderRadius:5,padding:"6px 10px",marginBottom:5,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{color:F.green,fontFamily:le,fontSize:11},children:"$"}),(0,C.jsx)("span",{style:{color:F.text,fontFamily:le,fontSize:11.5,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:Pe.cmd}),(0,C.jsx)("span",{style:{marginLeft:"auto",color:F.ghost,fontFamily:le,fontSize:9,flexShrink:0},children:Pe.purpose})]},vt))}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"ANSWER BEFORE SHIPPING"}),G.questions.map((Pe,vt)=>(0,C.jsxs)("div",{style:{display:"flex",gap:8,marginBottom:4},children:[(0,C.jsx)("span",{style:{color:F.amber},children:"?"}),(0,C.jsx)("span",{style:{fontSize:12.5,color:F.text,lineHeight:1.5},children:Pe})]},vt)),G.ciGateTemplate&&(0,C.jsxs)("div",{style:{marginTop:12},children:[(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"SUGGESTED CI GATE \xB7 click to copy"}),(0,C.jsx)("pre",{onClick:()=>navigator.clipboard?.writeText(G.ciGateTemplate),title:"click to copy",style:{margin:0,background:"#0007",border:`1px solid ${F.line}`,borderRadius:5,padding:"8px 11px",fontSize:11,fontFamily:le,color:F.dim,lineHeight:1.5,cursor:"pointer",whiteSpace:"pre",overflow:"auto"},children:G.ciGateTemplate})]})]},W)}),l?.failureReport?.notChecked?.length?(0,C.jsxs)("div",{style:{fontSize:10.5,color:F.ghost,fontFamily:le,lineHeight:1.5},children:["Not analyzed (unknown): ",l.failureReport.notChecked.join(" \xB7 ")]}):null]}),!d&&(l?.prSummary?(0,C.jsx)("div",{style:{fontSize:19,fontWeight:700,color:F.text,marginBottom:12,lineHeight:1.4},children:l.prSummary}):(0,C.jsx)("div",{style:{fontSize:15,color:F.dim,marginBottom:16},children:"Select a Source and Target to see the change."})),l?.fidelity==="diff-only"&&(0,C.jsx)("div",{style:{fontSize:11,color:F.amber,fontFamily:le,marginBottom:12},children:"diff-only \u2014 blast radius & deep analysis available on the checked-out working tree."}),l&&fe.length>0&&(0,C.jsx)(Qae,{nodes:fe,story:l}),l&&fe.length>0&&(0,C.jsx)(ese,{blast:l.blastRadius??[],hasRisk:ft.length>0||et.length>0,nodes:fe}),l&&fe.length>0&&(0,C.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:fe.map(G=>(0,C.jsx)(tse,{node:G,blast:Ge(G.file),findings:et.filter(W=>W.evidence.some(se=>se.file===G.file)),onClick:()=>h(G.file)},G.file))})]})})]}),N&&he&&(0,C.jsx)("div",{onClick:()=>A(!1),style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.58)",zIndex:60,display:"flex",justifyContent:"flex-end"},children:(0,C.jsxs)("div",{onClick:G=>G.stopPropagation(),style:{width:"min(760px, 94vw)",height:"100vh",background:F.card,borderLeft:`1px solid ${F.cardBorder}`,display:"flex",flexDirection:"column",boxShadow:"-16px 0 56px rgba(0,0,0,0.5)"},children:[(0,C.jsxs)("div",{style:{padding:"16px 20px",borderBottom:`1px solid ${F.line}`,display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[(0,C.jsx)(jp,{file:he.file}),(0,C.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,C.jsx)("div",{style:{fontSize:14,fontWeight:700,color:F.text,fontFamily:le},children:he.file.split("/").pop()}),(0,C.jsx)("div",{style:{fontSize:10,color:F.ghost,fontFamily:le,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:he.file})]}),(0,C.jsx)("button",{type:"button",onClick:()=>A(!1),style:{background:"transparent",border:"none",color:F.faint,fontSize:22,lineHeight:1,cursor:"pointer",padding:"4px 8px"},"aria-label":"Close",children:"\xD7"})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,minHeight:0,overflow:"auto",background:"#060606"},children:v?(0,C.jsx)(Mr,{diffText:v,style:{padding:"14px 18px",fontSize:12,lineHeight:1.65}}):(0,C.jsx)("div",{style:{padding:18,color:F.ghost,fontFamily:le,fontSize:11},children:"no diff"})})]})}),B&&(0,C.jsx)("div",{onClick:()=>U(!1),style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.62)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:50},children:(0,C.jsxs)("div",{onClick:G=>G.stopPropagation(),style:{width:520,maxHeight:"78vh",background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:14,padding:"22px 24px",display:"flex",flexDirection:"column",boxShadow:"0 24px 60px rgba(0,0,0,0.5)"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",marginBottom:5},children:[(0,C.jsx)("span",{style:{fontSize:16,fontWeight:700,color:F.text},children:"Review a Pull Request"}),(0,C.jsx)("span",{style:{flex:1}}),(0,C.jsx)("span",{onClick:()=>U(!1),style:{cursor:"pointer",color:F.faint,fontSize:20,lineHeight:1},children:"\xD7"})]}),(0,C.jsx)("div",{style:{fontSize:11,color:F.faint,fontFamily:le,marginBottom:16},children:H?"fetching latest from origin\u2026":`pick a branch to review against ${K}`}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:14},children:[(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase"},children:"Target"}),(0,C.jsx)("select",{value:K,onChange:G=>ge(G.target.value),style:{background:F.main,color:F.text,border:`1px solid ${F.border}`,borderRadius:6,padding:"5px 9px",fontSize:11.5,fontFamily:le,cursor:"pointer",outline:"none"},children:[O||"main",...e.map(G=>G.name).filter(G=>G!==(O||"main"))].map(G=>(0,C.jsx)("option",{value:G,children:G},G))})]}),(0,C.jsx)("div",{style:{flex:1,overflow:"auto",border:`1px solid ${F.line}`,borderRadius:8},children:H?(0,C.jsx)("div",{style:{padding:16,fontSize:12,color:F.faint,fontFamily:le},children:"loading branches\u2026"}):$n.length===0?(0,C.jsx)("div",{style:{padding:16,fontSize:12,color:F.faint,fontFamily:le},children:"no open branches to review."}):$n.map(G=>(0,C.jsxs)("div",{onClick:()=>pe(G.name),style:{display:"flex",alignItems:"center",gap:10,padding:"10px 13px",cursor:"pointer",background:ue===G.name?F.accent+"26":"transparent",borderBottom:`1px solid ${F.line}`},onMouseEnter:W=>{ue!==G.name&&(W.currentTarget.style.background="#1c1c1f")},onMouseLeave:W=>{ue!==G.name&&(W.currentTarget.style.background="transparent")},children:[(0,C.jsx)("span",{style:{fontSize:13,color:F.text,fontFamily:le},children:G.name}),G.ahead!=null&&(0,C.jsxs)("span",{style:{marginLeft:"auto",fontSize:10,color:F.amber,fontFamily:le},children:[G.ahead,"\u2191"]})]},G.name))}),(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginTop:16,justifyContent:"flex-end"},children:[(0,C.jsx)("button",{onClick:()=>U(!1),style:{background:"transparent",color:F.dim,border:`1px solid ${F.border}`,borderRadius:7,padding:"7px 14px",fontSize:12,fontFamily:xa,cursor:"pointer"},children:"Cancel"}),(0,C.jsx)("button",{onClick:Oe,disabled:!ue,style:{background:F.accent,color:"#0b0b0f",border:"none",borderRadius:7,padding:"7px 16px",fontSize:12.5,fontWeight:700,fontFamily:xa,cursor:ue?"pointer":"default",opacity:ue?1:.45},children:"Review \u2192"})]})]})}),(0,C.jsx)("style",{children:`@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.3}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes sk-shimmer{0%{background-position:-600px 0}100%{background-position:600px 0}}
39
+ `)),o.length===0?[t]:o}var XB=Z(()=>{"use strict"});var JB=Z(()=>{"use strict";XB()});function _r(e){return e==="critical"?"#f85149":e==="high"?"#f59e0b":e==="medium"?"#eab308":"#8b949e"}function Uv(e){let t=e.lastIndexOf(".");return t!==-1&&jae.has(e.slice(t))}function jp({file:e}){let t=(e.split(".").pop()||"").toLowerCase(),n=Wae[t];if(n)return(0,C.jsx)("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:19,height:19,flexShrink:0},children:(0,C.jsx)("img",{src:`/tIcons/${n}`,alt:t,width:16,height:16,style:{display:"block"}})});let i=Vae[t]||{label:(t.slice(0,2)||"\xB7").toUpperCase(),color:"#6b7280"};return(0,C.jsx)("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:19,height:19,borderRadius:4,fontSize:8,fontWeight:700,fontFamily:"JetBrains Mono, monospace",color:i.color,background:i.color+"1f",flexShrink:0},children:i.label})}function KB({size:e=12,color:t}){return(0,C.jsx)("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,style:{display:"block",flexShrink:0,color:t},children:(0,C.jsx)("path",{d:"M1 21h22L12 2 1 21zm11-3h-2v-2h2v2zm0-8h-2v6h2v-6z"})})}function QB(e){return(e??"").split(/\n+/).map(t=>t.trim().replace(/^[-•*]\s*/,"")).filter(Boolean)}function Xae(e){if(e.length<=Wp)return e;let t=e.slice(0,Wp),n=t.lastIndexOf(" ");return`${(n>Wp*.55?t.slice(0,n):t).trimEnd()}\u2026`}function Jae(e,t){let n=t.toLowerCase(),i=e.toLowerCase();if(i.length>4&&n.includes(i.replace(/\s+/g,""))||(i.match(/[\d.]+/g)||[]).some(s=>s.length>1&&n.includes(s)))return!0;let r=i.split(/[^a-z0-9.+>=\-]+/).filter(s=>s.length>2);return r.length?r.filter(s=>n.includes(s)).length>=Math.min(2,r.length):!1}function Zae(e,t,n,i,o){let r=new Map,a=s=>(r.has(s)||r.set(s,{findings:[]}),r.get(s));if(e.length===0)return r;if(n?.silentKiller){let s=!1;for(let l=0;l<e.length;l++){let u=Ps(t)[e[l].chunkIndex]??t,d=`${e[l].text} ${u}`.toLowerCase(),f=n.signals.some(h=>Jae(h,u)),p=/engine|dependenc|version|runtime|node|module|docker|env|config|ci|build/.test(d);(f||n.signals.length===0&&p)&&(a(l).silentKiller=n,s=!0)}if(!s){let l=e.findIndex((u,d)=>{let f=Ps(t)[e[d].chunkIndex]??t;return/engine|dependenc|version|node|runtime|infra|config/.test(`${u.text} ${f}`.toLowerCase())});a(l>=0?l:0).silentKiller=n}}for(let s of i){let l=s.evidence.filter(p=>p.file===o);if(!l.length)continue;let u=0,d=-1;for(let p=0;p<e.length;p++){let h=(Ps(t)[e[p].chunkIndex]??t).toLowerCase(),y=0;for(let x of l){x.detail&&h.includes(x.detail.slice(0,24).toLowerCase())&&(y+=3),x.line&&h.includes(String(x.line))&&(y+=2);let S=x.file.split("/").pop()?.toLowerCase();S&&h.includes(S)&&(y+=1)}y>d&&(d=y,u=p)}let f=a(u);f.findings.includes(s)||f.findings.push(s)}return r}function Pae(e,t,n,i,o){if(e.length===0){let s=[];n?.silentKiller&&s.push({point:{text:n.reason,chunkIndex:0},hidden:{silentKiller:n,findings:[]}});for(let l of i)s.some(u=>u.hidden?.findings.includes(l))||s.push({point:{text:l.title,chunkIndex:0},hidden:{findings:[l]}});return s}let r=Zae(e,t,n,i,o),a=e.map((s,l)=>({point:s,hidden:r.get(l)}));n?.silentKiller&&!a.some(s=>s.hidden?.silentKiller)&&a.push({point:{text:n.reason,chunkIndex:e[0]?.chunkIndex??0},hidden:{silentKiller:n,findings:[]}});for(let s of i)a.some(l=>l.hidden?.findings.includes(s))||a.push({point:{text:s.title,chunkIndex:e[0]?.chunkIndex??0},hidden:{findings:[s]}});return a}function eD(e){return e?[e.silentKiller?.tier,...e.findings.map(n=>n.severity)].filter(Boolean).sort((n,i)=>(Ks[i]??0)-(Ks[n]??0))[0]??"medium":"medium"}function PB({hidden:e,compact:t}){let n=eD(e),i=_r(n),o=e.silentKiller?.reason??e.findings[0]?.title??"Hidden failure",r=e.silentKiller?.signals??[];return(0,C.jsxs)("div",{style:{marginTop:t?8:0,border:`1px solid ${i}55`,background:`${i}10`,borderRadius:6,padding:t?"8px 10px":"12px 14px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:t?4:8},children:[(0,C.jsx)(KB,{size:t?10:12,color:i}),(0,C.jsxs)("span",{style:{fontSize:t?9.5:10.5,color:i,fontFamily:le,fontWeight:700,letterSpacing:"0.06em"},children:["HIDDEN FAILURE",e.silentKiller?` \xB7 ${e.silentKiller.tier.toUpperCase()}`:""]})]}),(0,C.jsx)("div",{style:{fontSize:t?11:12.5,color:F.text,lineHeight:1.45,fontFamily:le},children:o}),!t&&e.findings.map((a,s)=>(0,C.jsx)("div",{style:{fontSize:11.5,color:F.dim,lineHeight:1.45,fontFamily:le,marginTop:8},children:a.narrative},s)),r.length>0&&(0,C.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginTop:t?6:8},children:r.slice(0,t?2:4).map((a,s)=>(0,C.jsx)("span",{style:{fontSize:10,color:i,fontFamily:le,background:"#0006",border:`1px solid ${i}44`,borderRadius:4,padding:"1px 6px"},children:a},s))})]})}function Kae(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<10)return"just now";if(t<60)return`${t}s ago`;let n=Math.floor(t/60);if(n<60)return`${n}m ago`;let i=Math.floor(n/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}function Qae({nodes:e,story:t}){let n=e.reduce((d,f)=>d+(f.linesAdded??0),0),i=e.reduce((d,f)=>d+(f.linesRemoved??0),0),{added:o,modified:r,deleted:a}=t.summary,s=new Set(e.map(d=>d.file.split("/")[0]).filter(Boolean)),l=n>0||i>0,u=(0,C.jsx)("span",{style:{fontSize:12,color:F.ghost,margin:"0 10px"},children:"\xB7"});return(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:0,marginBottom:20},children:[!!o&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.green,fontFamily:le},children:[o," added"]}),(!!r||!!a||l||s.size>1)&&u]}),!!r&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.amber,fontFamily:le},children:[r," modified"]}),(!!a||l||s.size>1)&&u]}),!!a&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,color:F.red,fontFamily:le},children:[a," deleted"]}),(l||s.size>1)&&u]}),l&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("span",{style:{fontSize:12,fontFamily:le},children:[(0,C.jsxs)("span",{style:{color:F.green},children:["+",n]})," ",(0,C.jsxs)("span",{style:{color:F.red},children:["\u2212",i]})," ",(0,C.jsx)("span",{style:{color:F.dim},children:"lines"})]}),s.size>1&&u]}),s.size>1&&(0,C.jsxs)("span",{style:{fontSize:12,color:F.dim,fontFamily:le},children:[s.size," systems"]})]})}function ese({blast:e,hasRisk:t,nodes:n}){if(n.length>0&&n.every(l=>!Uv(l.file)))return null;let i=e.length===0&&!t,o=e.filter(l=>l.category==="handler").length,r=e.filter(l=>l.category==="service").length,a=e.filter(l=>l.category==="transitive").length,s=[o>0&&`${o} handler${o!==1?"s":""}`,r>0&&`${r} service${r!==1?"s":""}`,a>0&&`${a} transitive`].filter(Boolean).join(" \xB7 ");return(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:20,flexWrap:"wrap"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:i?F.green:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em"},children:"BLAST RADIUS"}),(0,C.jsx)("span",{style:{fontSize:12,color:i?F.green:F.dim,fontFamily:le},children:i?"No downstream callers \u2014 safe to push":e.length===0?"hidden risks detected":`${e.length} file${e.length!==1?"s":""} downstream`}),!i&&e.length>0&&s&&(0,C.jsx)("span",{style:{fontSize:11,color:F.ghost,fontFamily:le},children:s})]})}function tse({node:e,blast:t,findings:n,onClick:i}){let o=e.file.split("/").pop()??e.file,r=e.file.includes("/")?e.file.split("/").slice(0,-1).join("/"):"",a=t.length,s=n.reduce((d,f)=>(Ks[f.severity]??0)>(Ks[d??""]??0)?f.severity:d,null),l=e.changePoints?.[0]?.text??QB(e.summary)[0],u=l&&l.length>100?l.slice(0,l.lastIndexOf(" ",97)||97)+"\u2026":l;return(0,C.jsxs)("div",{onClick:i,style:{background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:10,padding:"14px 16px",cursor:"pointer"},onMouseEnter:d=>{d.currentTarget.style.borderColor=F.ghost},onMouseLeave:d=>{d.currentTarget.style.borderColor=F.cardBorder},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:e.role||u?8:0},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:Vp[e.status]??F.dim,flexShrink:0}}),(0,C.jsx)(jp,{file:e.file}),(0,C.jsx)("span",{style:{fontSize:13,fontWeight:700,color:F.text,fontFamily:le},children:o}),r&&(0,C.jsx)("span",{style:{fontSize:10,color:F.ghost,fontFamily:le},children:r}),(0,C.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:6,flexShrink:0},children:[(e.linesAdded??0)>0&&(0,C.jsxs)("span",{style:{fontSize:10,color:F.green,fontFamily:le},children:["+",e.linesAdded]}),(e.linesRemoved??0)>0&&(0,C.jsxs)("span",{style:{fontSize:10,color:F.red,fontFamily:le},children:["\u2212",e.linesRemoved]})]})]}),e.role&&(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginBottom:u?7:10,paddingLeft:14},children:[(0,C.jsx)("span",{style:{fontSize:8,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginTop:3,flexShrink:0,minWidth:48},children:"DOES"}),(0,C.jsx)("span",{style:{fontSize:11.5,color:F.dim,lineHeight:1.4},children:e.role})]}),u&&(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginBottom:10,paddingLeft:14},children:[(0,C.jsx)("span",{style:{fontSize:8,color:F.accent,fontFamily:le,letterSpacing:"0.12em",marginTop:3,flexShrink:0,minWidth:48},children:"CHANGED"}),(0,C.jsx)("span",{style:{fontSize:12,color:F.text,lineHeight:1.4},children:u})]}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,paddingLeft:14,flexWrap:"wrap"},children:[Uv(e.file)&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:a===0?F.green:a>=4?F.red:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:10,color:a===0?F.green:F.dim,fontFamily:le},children:a===0?"no callers":`${a} caller${a!==1?"s":""}`})]}),s&&(0,C.jsxs)("span",{style:{fontSize:9,color:_r(s),fontFamily:le,background:_r(s)+"18",border:`1px solid ${_r(s)}55`,borderRadius:4,padding:"1px 7px",display:"inline-flex",alignItems:"center",gap:4},children:[(0,C.jsx)(KB,{size:8,color:_r(s)}),n.length," hidden failure",n.length!==1?"s":""]})]})]})}function nse({selNode:e,diff:t,diffLoading:n,findings:i,changeIdx:o,setChangeIdx:r,expandedInference:a,setExpandedInference:s,onViewFullDiff:l}){let u=i.filter(w=>w.evidence.some(M=>M.file===e.file)),d=e.changePoints?.length?e.changePoints:QB(e.summary).map(w=>({text:w,chunkIndex:0})),f=Pae(d,t,e.risk,u,e.file),p=f.map(w=>w.point),h=f.length?Math.min(o,f.length-1):0,y=f[h]?.hidden,x=Ps(t),S=Math.min(p[h]?.chunkIndex??0,Math.max(x.length-1,0)),b=(0,Te.useRef)([]);(0,Te.useEffect)(()=>{b.current[S]?.scrollIntoView({block:"nearest",behavior:"smooth"})},[S,h]);let v=f.length,g=h>0,m=h<v-1;return(0,C.jsxs)("div",{style:{display:"flex",gap:14,alignItems:"stretch",height:"calc(100vh - 240px)",minHeight:360},children:[(0,C.jsxs)("div",{style:{flex:"0 0 40%",maxWidth:"40%",minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:10,flexShrink:0},children:[(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.12em",flex:1},children:"INFERENCE POINTS"}),v>1&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("button",{type:"button",onClick:()=>r((h-1+v)%v),style:{background:"transparent",border:`1px solid ${F.line}`,borderRadius:3,color:g?F.dim:F.ghost,cursor:"pointer",padding:"1px 6px",fontSize:11,fontFamily:le,opacity:g?1:.4},children:"\u2190"}),(0,C.jsx)("button",{type:"button",onClick:()=>r((h+1)%v),style:{background:"transparent",border:`1px solid ${F.line}`,borderRadius:3,color:m?F.dim:F.ghost,cursor:"pointer",padding:"1px 6px",fontSize:11,fontFamily:le,opacity:m?1:.4},children:"\u2192"})]})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",paddingRight:6},children:f.length?f.map(({point:w,hidden:M},E)=>{let N=E===h,$=f.length>4&&w.text.length>Wp,D=a.has(E),T=!$||N&&D?w.text:Xae(w.text),j=$&&N,_=M?_r(eD(M)):void 0;return(0,C.jsxs)("button",{type:"button",onClick:()=>r(E),style:{display:"flex",gap:10,width:"100%",textAlign:"left",background:N?"#000":"transparent",border:`1px solid ${N?_??"#52525b":M?`${_}55`:F.line}`,borderRadius:8,padding:"13px 12px",marginBottom:12,cursor:"pointer",fontFamily:le},children:[(0,C.jsx)("span",{style:{fontSize:11,fontWeight:700,color:N?F.text:F.ghost,fontFamily:le,flexShrink:0,marginTop:2},children:E+1}),(0,C.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,C.jsx)("span",{style:{fontSize:12,color:N?F.text:F.dim,lineHeight:1.4,fontFamily:le,display:"block"},children:T}),M&&(0,C.jsx)(PB,{hidden:M,compact:!0}),j&&(0,C.jsx)("span",{role:"button",tabIndex:0,onClick:L=>{L.stopPropagation(),s(R=>{let I=new Set(R);return I.has(E)?I.delete(E):I.add(E),I})},onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),L.stopPropagation(),L.currentTarget.click())},style:{display:"inline-block",marginTop:6,fontSize:10.5,color:F.accent,fontFamily:le,cursor:"pointer",textDecoration:"underline",textUnderlineOffset:2},children:D?"Show less":"Read more"})]})]},E)}):(0,C.jsx)(mu,{children:"(enrich pending or no summary)"})})]}),(0,C.jsxs)("div",{style:{flex:"1 1 60%",minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10,flexShrink:0},children:[(0,C.jsx)("span",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.12em"},children:"DIFF"}),(0,C.jsx)("span",{style:{flex:1}}),t&&(0,C.jsx)("button",{type:"button",onClick:l,style:{background:"transparent",border:"none",padding:0,fontSize:10.5,color:F.accent,fontFamily:le,cursor:"pointer",textDecoration:"underline",textUnderlineOffset:2},children:"View Complete Diff"})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:y?"1 1 55%":1,minHeight:0,background:"#060606",border:`1px solid ${F.line}`,borderRadius:8,overflow:"auto"},children:n?(0,C.jsx)("div",{style:{padding:14,color:F.ghost,fontFamily:le,fontSize:11},children:"loading diff\u2026"}):t?x.length>1?x.map((w,M)=>(0,C.jsx)("div",{ref:E=>{b.current[M]=E},style:{borderLeft:`3px solid ${M===S?F.accent:"transparent"}`,marginBottom:1},children:(0,C.jsx)(Mr,{diffText:w})},M)):(0,C.jsx)(Mr,{diffText:t}):(0,C.jsx)("div",{style:{padding:14,color:F.ghost,fontFamily:le,fontSize:11},children:"no diff"})}),y&&(0,C.jsx)("div",{style:{flex:"0 0 auto",marginTop:10},children:(0,C.jsx)(PB,{hidden:y})})]})]})}function Gv(){let[e,t]=(0,Te.useState)([]),[n,i]=(0,Te.useState)(""),[o,r]=(0,Te.useState)(()=>localStorage.getItem("memor_source")??"working"),[a,s]=(0,Te.useState)(()=>localStorage.getItem("memor_target")??"main"),[l,u]=(0,Te.useState)(null),[d,f]=(0,Te.useState)(!1),[p,h]=(0,Te.useState)(null),[y,x]=(0,Te.useState)("changes"),[S,b]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{b(!1)},[o,a]),(0,Te.useEffect)(()=>{x("changes")},[p]);let[v,g]=(0,Te.useState)(""),[m,w]=(0,Te.useState)(0),[M,E]=(0,Te.useState)(()=>new Set),[N,A]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{w(0),E(new Set),A(!1)},[p,v]);let[$,D]=(0,Te.useState)(!1),[T,j]=(0,Te.useState)(!1),[_,L]=(0,Te.useState)(null),[R,I]=(0,Te.useState)(""),[O,Y]=(0,Te.useState)(""),[B,U]=(0,Te.useState)(!1),[H,te]=(0,Te.useState)(!1),[oe,de]=(0,Te.useState)([]),[ue,pe]=(0,Te.useState)(null),[K,ge]=(0,Te.useState)("main"),[,we]=(0,Te.useState)(0);(0,Te.useEffect)(()=>{let G=setInterval(()=>we(W=>W+1),3e4);return()=>clearInterval(G)},[]),(0,Te.useEffect)(()=>{if(!N)return;let G=W=>{W.key==="Escape"&&A(!1)};return window.addEventListener("keydown",G),()=>window.removeEventListener("keydown",G)},[N]),(0,Te.useEffect)(()=>{fetch("/api/repo-root").then(G=>G.json()).then(G=>I((G.repoRoot||"").split("/").filter(Boolean).pop()||"")).catch(()=>{})},[]),(0,Te.useEffect)(()=>{localStorage.setItem("memor_source",o)},[o]),(0,Te.useEffect)(()=>{localStorage.setItem("memor_target",a)},[a]);let Ce=(0,Te.useRef)(!!localStorage.getItem("memor_target")),ie=(0,Te.useCallback)(()=>fetch("/api/branches").then(G=>G.json()).then(G=>{t(G.branches||[]),i(G.current||""),L(G.fetchedAt??null),Y(G.defaultBranch||""),!Ce.current&&G.defaultBranch&&(Ce.current=!0,s(G.defaultBranch))}).catch(()=>{}),[]);(0,Te.useEffect)(()=>{ie()},[ie]);let ne=(0,Te.useCallback)(()=>{f(!0),D(!1),h(null),g(""),u(null),fetch(`/api/branch-story?base=${encodeURIComponent(a)}&source=${encodeURIComponent(o)}&enrich=1`).then(G=>G.json()).then(G=>{u(G),f(!1)}).catch(()=>f(!1))},[a,o]);(0,Te.useEffect)(()=>{ne()},[ne]);let Me=(0,Te.useCallback)(()=>{j(!0),fetch("/api/fetch",{method:"POST"}).then(G=>G.json()).then(()=>ie()).then(()=>ne()).finally(()=>j(!1))},[ie,ne]),me=(0,Te.useCallback)(()=>{U(!0),te(!0),pe(null),ge(O||a||"main"),fetch("/api/fetch",{method:"POST"}).then(()=>fetch("/api/branches?counts=1")).then(G=>G.json()).then(G=>{de(G.branches||[]),t(G.branches||[]),L(G.fetchedAt??null),G.defaultBranch&&(Y(G.defaultBranch),ge(G.defaultBranch))}).catch(()=>{}).finally(()=>te(!1))},[O,a]),Oe=(0,Te.useCallback)(()=>{ue&&(h(null),r(ue),s(K),U(!1))},[ue,K]);(0,Te.useEffect)(()=>{let G=null,W=1e3,se=null,Fe=!1;function Be(){Fe||(G=new EventSource("/api/events"),G.onmessage=Ee=>{W=1e3;try{JSON.parse(Ee.data).type==="code-changed"&&D(!0)}catch{}},G.onerror=()=>{G?.close(),G=null,Fe||(se=setTimeout(()=>{W=Math.min(W*2,8e3),Be()},W))})}return Be(),()=>{Fe=!0,se&&clearTimeout(se),G?.close()}},[]);let[Ve,V]=(0,Te.useState)(!1);(0,Te.useEffect)(()=>{if(!p){g("");return}V(!0),fetch(`/api/branch-diff?file=${encodeURIComponent(p)}&base=${encodeURIComponent(a)}&source=${encodeURIComponent(o)}`).then(G=>G.json()).then(G=>{g(G.diff||""),V(!1)}).catch(()=>{g(""),V(!1)})},[p,a,o]);let fe=(l?.nodes||[]).filter(G=>G.status!=="context").sort((G,W)=>Ie(W)-Ie(G)||(W.linesAdded??0)+(W.linesRemoved??0)-((G.linesAdded??0)+(G.linesRemoved??0))),he=fe.find(G=>G.file===p)||null;function Ge(G){return(l?.blastRadius||[]).filter(W=>W.importedFiles.includes(G))}function Ie(G){return Ge(G.file).length}function ct(G){return(l?.edges||[]).filter(W=>W.to===G).map(W=>W.from)}let et=l?.failureReport?.findings??[],ft=fe.filter(G=>G.risk?.silentKiller),jt=et.reduce((G,W)=>Math.max(G,Ks[W.severity]||0),0),en=Math.max(ft.reduce((G,W)=>Math.max(G,Ks[W.risk.tier]||0),0),jt),Je=en>=4?{color:F.red,label:"RED \xB7 DO NOT MERGE BLIND",sub:`${ft.length} silent killer${ft.length!==1?"s":""} \u2014 a critical runtime/infra change the code graph can't see.`}:en>=3?{color:F.amber,label:"AMBER \xB7 REVIEW BEFORE MERGE",sub:`${ft.length} high-risk config/runtime change${ft.length!==1?"s":""} in this set.`}:en>=1?{color:"#eab308",label:"AMBER \xB7 CHECK BEFORE MERGE",sub:"A config change that can fail silently at runtime."}:fe.length?{color:F.green,label:"GREEN \xB7 NO SILENT KILLERS",sub:"No runtime/infra risk outside the code graph."}:null,rn=(G,W,se)=>(0,C.jsxs)("div",{style:{position:"relative",width:"100%"},children:[(0,C.jsx)("select",{value:G,onChange:Fe=>W(Fe.target.value),style:{appearance:"none",WebkitAppearance:"none",MozAppearance:"none",width:"100%",boxSizing:"border-box",background:F.main,color:F.text,border:`1px solid ${F.border}`,borderRadius:6,padding:"6px 26px 6px 10px",fontSize:11.5,fontFamily:le,cursor:"pointer",outline:"none",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"},children:se.map(Fe=>(0,C.jsx)("option",{value:Fe.v,children:Fe.label},Fe.v))}),(0,C.jsx)("span",{style:{position:"absolute",right:10,top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:F.dim,fontSize:9},children:"\u25BC"})]}),Ei=[{v:"working",label:`Current changes \xB7 ${n||"HEAD"}`},...e.filter(G=>!G.merged).map(G=>({v:G.name,label:G.name}))],Di=Date.now()-2160*60*60*1e3,Ci=[{v:"HEAD",label:"HEAD (uncommitted only)"},...e.filter(G=>G.isCurrent||G.name===O||G.lastCommit>Di).map(G=>({v:G.name,label:`vs ${G.name}`}))],$n=oe.filter(G=>!G.merged).sort((G,W)=>(W.ahead??0)-(G.ahead??0)||W.lastCommit-G.lastCommit);return(0,C.jsxs)("div",{style:{height:"100vh",display:"flex",background:F.main,color:F.text,fontFamily:xa},children:[(0,C.jsxs)("div",{style:{width:300,flexShrink:0,background:F.sidebar,borderRight:`1px solid ${F.line}`,display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,C.jsxs)("div",{style:{padding:"15px 16px 12px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9},children:[(0,C.jsx)("span",{style:{width:18,height:18,borderRadius:5,background:"linear-gradient(135deg,#818cf8,#a371f7)",display:"inline-block",flexShrink:0}}),(0,C.jsx)("span",{style:{fontWeight:800,fontSize:15,fontFamily:le,letterSpacing:"-0.02em",color:F.text},children:"memor"})]}),R&&(0,C.jsx)("div",{style:{fontSize:11,color:F.dim,fontFamily:le,marginTop:7,marginLeft:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:R})]}),(0,C.jsxs)("div",{style:{padding:"4px 16px 8px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:7,marginBottom:5},children:[(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase"},children:"Source"}),(0,C.jsx)("button",{onClick:Me,disabled:T,title:"git fetch origin --prune",style:{display:"inline-flex",alignItems:"center",background:"transparent",border:"none",color:T?F.faint:F.dim,cursor:T?"default":"pointer",padding:0,fontSize:11},children:(0,C.jsx)("span",{style:{display:"inline-block",animation:T?"spin 0.8s linear infinite":"none"},children:"\u27F3"})}),_&&!T&&(0,C.jsx)("span",{style:{fontSize:9,color:F.ghost,fontFamily:le},children:Kae(_)})]}),rn(o,r,Ei)]}),(0,C.jsxs)("div",{style:{padding:"4px 16px 12px"},children:[(0,C.jsx)("div",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase",marginBottom:5},children:"Target"}),rn(a,s,Ci),l&&(0,C.jsxs)("div",{style:{fontSize:9.5,color:F.ghost,fontFamily:le,marginTop:8,display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[l.baseSha&&(0,C.jsxs)("span",{children:["@ ",l.baseSha.slice(0,7)]}),l.branchState&&(0,C.jsxs)("span",{children:[l.branchState.ahead,"\u2191 ",l.branchState.behind,"\u2193"]}),o==="working"&&(0,C.jsx)("span",{style:{background:"#facc1522",color:"#facc15",border:"1px solid #facc1544",borderRadius:3,padding:"0 4px",fontSize:9},children:"+ uncommitted"}),(0,C.jsx)("span",{style:{color:F.ghost},children:l.fidelity==="diff-only"?"diff-only":"full"})]})]}),(0,C.jsxs)("div",{onClick:()=>h(null),style:{padding:"11px 16px 8px",cursor:"pointer",borderTop:`1px solid ${F.line}`},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,C.jsx)("span",{style:{fontSize:12.5,fontWeight:700,color:p===null?F.accent:F.text,fontFamily:xa},children:"The Change"}),(0,C.jsxs)("span",{style:{marginLeft:"auto",fontSize:9.5,color:F.faint,fontFamily:le},children:[fe.length," file",fe.length!==1?"s":""]})]}),l&&(0,C.jsxs)("div",{style:{fontSize:9.5,color:F.ghost,fontFamily:le,marginTop:3},children:[l.summary.added,"A \xB7 ",l.summary.modified,"M \xB7 ",l.summary.deleted,"D"]})]}),(0,C.jsxs)("div",{className:"memor-scroll",style:{flex:1,overflowY:"scroll",padding:"2px 0 12px"},children:[d&&(0,C.jsx)(ise,{}),!d&&fe.length===0&&(0,C.jsx)("div",{style:{padding:"8px 16px",fontSize:10.5,color:F.faint,fontFamily:le,lineHeight:1.6},children:l&&o==="working"?"No changes detected in working directory. Try selecting a different source branch above.":l&&(l.branchState?.ahead??0)===0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("b",{style:{color:F.amber},children:o})," is even with ",a," \u2014 nothing to compare."]}):"no changes."}),(()=>{let G=new Map;for(let se of fe){let Fe=se.file.split("/"),Be=Fe.length>1?Fe.slice(0,-1).join("/"):"";G.has(Be)||G.set(Be,[]),G.get(Be).push(se)}return[...G.keys()].sort().map(se=>{let Fe=G.get(se);return(0,C.jsxs)("div",{children:[se&&(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"8px 16px 4px",userSelect:"none"},children:[(0,C.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",style:{color:F.faint,flexShrink:0},children:(0,C.jsx)("path",{d:"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"})}),(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.04em",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:se})]}),(0,C.jsx)("div",{style:se?{marginLeft:22,borderLeft:"1px solid rgba(255,255,255,0.18)"}:{},children:Fe.map(Be=>{let Ee=Ie(Be),Pe=p===Be.file,vt=l?.fidelity!=="diff-only",Jt=Ee===0?ct(Be.file).length:0,Qs=Ee>=6?"#ef4444":Ee>=3?"#f59e0b":Ee>=1?"#eab308":Jt>0?"#79c0ff":"#22c55e",Sa=Vp[Be.status]??F.dim;return(0,C.jsxs)("div",{onClick:()=>h(Be.file),style:{display:"flex",alignItems:"center",gap:0,paddingTop:5,paddingBottom:5,paddingRight:16,paddingLeft:se?0:16,cursor:"pointer",background:Pe?"#17171a":"transparent",transition:"background 0.1s"},onMouseEnter:dn=>{Pe||(dn.currentTarget.style.background="#141417")},onMouseLeave:dn=>{Pe||(dn.currentTarget.style.background="transparent")},children:[se&&(0,C.jsx)("div",{style:{width:10,height:1,background:"rgba(255,255,255,0.18)",flexShrink:0}}),(0,C.jsx)(jp,{file:Be.file}),(0,C.jsx)("span",{style:{flex:1,fontSize:12,color:Pe?F.text:"#c2c6cc",fontFamily:xa,fontWeight:500,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",marginLeft:8,minWidth:0},children:Be.file.split("/").pop()}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,flexShrink:0,marginLeft:6},children:[(Be.linesAdded??0)+(Be.linesRemoved??0)>0&&(0,C.jsxs)("span",{style:{fontSize:9,fontFamily:le},children:[(0,C.jsxs)("span",{style:{color:F.green},children:["+",Be.linesAdded??0]})," ",(0,C.jsxs)("span",{style:{color:F.red},children:["-",Be.linesRemoved??0]})]}),(0,C.jsx)("span",{style:{width:13,height:13,borderRadius:3,background:Sa,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:(0,C.jsx)("span",{style:{fontSize:7.5,color:"#0b0b0f",fontFamily:le,fontWeight:900,lineHeight:1},children:ZB[Be.status]??"?"})})]}),vt&&Ee===0&&Jt===0&&(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:Qs,flexShrink:0,marginLeft:5},title:"Zero Blast"}),vt&&(Ee>0||Jt>0)&&(0,C.jsx)("span",{style:{width:5,height:5,borderRadius:"50%",background:Qs,flexShrink:0,marginLeft:5},title:Ee>0?`Blast: ${Ee}`:`Wired \xB7 ${Jt} internal`})]},Be.file)})})]},se||"__root__")})})()]})]}),(0,C.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",padding:18,gap:12},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[$&&(0,C.jsxs)("div",{onClick:ne,style:{display:"flex",alignItems:"center",gap:8,background:"#1d4ed8",color:"#fff",borderRadius:7,padding:"8px 13px",fontSize:12,fontFamily:le,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:"#fff",animation:"pulse 1s infinite"}})," Changes detected \xB7 reload"]}),!d&&l!==null&&fe.length>0&&fe.every(G=>!G.summary)&&(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:7,background:`${F.amber}12`,border:`1px solid ${F.amber}44`,borderRadius:7,padding:"7px 12px"},children:[(0,C.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:F.amber,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:11,color:F.amber,fontFamily:le,fontWeight:600,letterSpacing:"0.04em"},children:"AI narration unavailable \xB7 check terminal for errors or add API key in Settings"})]}),S&&Je&&!d&&(0,C.jsxs)("div",{title:Je.sub,style:{display:"flex",alignItems:"center",gap:7,background:`${Je.color}1a`,border:`1px solid ${Je.color}66`,borderRadius:7,padding:"7px 12px"},children:[(0,C.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:Je.color,flexShrink:0}}),(0,C.jsx)("span",{style:{fontSize:11,color:Je.color,fontFamily:le,fontWeight:700,letterSpacing:"0.04em"},children:Je.label})]}),(0,C.jsx)("span",{style:{flex:1}}),(0,C.jsxs)("button",{onClick:me,style:{display:"flex",alignItems:"center",gap:8,background:F.accent,color:"#0b0b0f",border:"none",borderRadius:7,padding:"8px 15px",fontSize:12.5,fontWeight:700,fontFamily:xa,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{fontSize:13},children:"\u2387"})," Review a Pull Request"]})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,overflow:"auto",background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:12,padding:"26px 30px",boxSizing:"border-box"},children:he?(0,C.jsxs)("div",{children:[(0,C.jsxs)("div",{onClick:()=>h(null),style:{display:"inline-flex",alignItems:"center",gap:5,marginBottom:14,cursor:"pointer",color:F.dim,fontFamily:le,fontSize:11},children:[(0,C.jsx)("span",{children:"\u2190"}),(0,C.jsx)("span",{style:{textDecoration:"underline",textUnderlineOffset:2},children:"overview"})]}),(0,C.jsx)("div",{style:{display:"flex",alignItems:"flex-start",gap:12,marginBottom:18},children:(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,flex:1,minWidth:0},children:[(0,C.jsx)(jp,{file:he.file}),(0,C.jsx)("span",{title:he.file,style:{fontSize:17,fontWeight:700,color:F.text,fontFamily:le,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",cursor:"default"},children:he.file.split("/").pop()}),(0,C.jsx)("span",{style:{fontSize:10,fontWeight:700,color:Vp[he.status]??F.dim,fontFamily:le,border:`1px solid ${Vp[he.status]??F.dim}55`,borderRadius:3,padding:"1px 6px",flexShrink:0},children:ZB[he.status]??"?"})]})}),(0,C.jsx)("div",{style:{marginBottom:22},children:he.role?(0,C.jsx)("div",{style:{fontSize:13,color:F.dim,fontFamily:le,lineHeight:1.55},children:he.role}):(0,C.jsx)(mu,{children:"(role available on the checked-out branch)"})}),(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(rse,{tabs:[{id:"changes",label:"What Changes in the File"},{id:"blast",label:"Blast Radius"}],active:y,onSelect:x}),y==="changes"&&(0,C.jsx)(nse,{selNode:he,diff:v,diffLoading:Ve,findings:et,changeIdx:m,setChangeIdx:w,expandedInference:M,setExpandedInference:E,onViewFullDiff:()=>A(!0)}),y==="blast"&&(0,C.jsxs)(ase,{label:"BLAST RADIUS",children:[(he.entryPoints?.length??0)>0&&(0,C.jsxs)("div",{style:{marginBottom:20},children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:9},children:"WHAT CALLS THIS"}),he.entryPoints.slice(0,4).map((W,se)=>(0,C.jsxs)("div",{style:{fontSize:12,color:F.green,fontFamily:le,marginBottom:3},children:[W.method?(0,C.jsxs)("span",{style:{color:F.faint},children:[W.method," "]}):null,W.path,W.via?(0,C.jsxs)("span",{style:{color:F.ghost},children:[" \xB7 via ",W.via]}):null]},se))]}),Ge(he.file).length>0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{style:{fontSize:12,color:Ge(he.file).length>=4?F.red:F.amber,fontFamily:le,marginBottom:8},children:["\u25C8 ",Ge(he.file).length," file(s) outside this change import it"]}),Ge(he.file).slice(0,12).map((W,se)=>(0,C.jsxs)("div",{style:{fontSize:11,color:F.dim,fontFamily:le,marginBottom:3},children:[W.file," ",(0,C.jsxs)("span",{style:{color:F.ghost},children:["\xB7 ",W.category]})]},se))]}):l?.fidelity==="diff-only"?(0,C.jsx)(mu,{children:"available on the checked-out branch"}):ct(he.file).length>0?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)("div",{style:{fontSize:12,color:F.blue,fontFamily:le,marginBottom:8},children:["\u25C8 new, wired into ",ct(he.file).length," file(s) in this change"]}),ct(he.file).slice(0,12).map((W,se)=>(0,C.jsxs)("div",{onClick:()=>h(W),style:{fontSize:11,color:F.dim,fontFamily:le,marginBottom:3,cursor:"pointer"},children:[W," ",(0,C.jsx)("span",{style:{color:F.ghost},children:"\xB7 imports this"})]},se)),(0,C.jsx)("div",{style:{fontSize:10.5,color:F.ghost,fontFamily:le,marginTop:5},children:"nothing outside the change imports it yet"})]}):Uv(he.file)?(0,C.jsx)(mu,{children:"nothing imports it \u2014 isolated"}):(0,C.jsxs)(mu,{children:["blast radius tracks JS/TS imports \u2014 not available for ",he.file.slice(he.file.lastIndexOf("."))||"this file type"]})]})]})]}):(0,C.jsxs)("div",{children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:14},children:"THE CHANGE"}),d&&(0,C.jsx)(ose,{}),!d&&S&&et.length===0&&ft.length===0&&fe.length>0&&(0,C.jsxs)("div",{style:{marginBottom:18,border:`1px solid ${F.green}55`,background:`${F.green}10`,borderRadius:10,padding:"14px 18px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9},children:[(0,C.jsx)("span",{style:{width:9,height:9,borderRadius:"50%",background:F.green}}),(0,C.jsx)("span",{style:{fontSize:13,color:F.green,fontFamily:le,fontWeight:700},children:"GREEN \xB7 NO SIMULATED FAILURES"})]}),(0,C.jsxs)("div",{style:{fontSize:12,color:F.dim,marginTop:6,lineHeight:1.5},children:["No runtime/startup/infra risks found across ",fe.length," changed file",fe.length!==1?"s":"",". Not analyzed: ",l?.failureReport?.notChecked?.slice(0,3).join(", "),"\u2026"]})]}),!d&&S&&Je&&ft.length>0&&(0,C.jsxs)("div",{style:{marginBottom:18,border:`1px solid ${Je.color}66`,background:`${Je.color}12`,borderRadius:10,padding:"15px 18px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:7},children:[(0,C.jsx)("span",{style:{width:9,height:9,borderRadius:"50%",background:Je.color}}),(0,C.jsx)("span",{style:{fontSize:14,color:Je.color,fontFamily:le,fontWeight:700,letterSpacing:"0.04em"},children:Je.label})]}),(0,C.jsx)("div",{style:{fontSize:13,color:F.text,lineHeight:1.5,marginBottom:10},children:Je.sub}),ft.map(G=>(0,C.jsxs)("div",{onClick:()=>h(G.file),style:{display:"flex",alignItems:"center",gap:8,cursor:"pointer",fontSize:11.5,fontFamily:le,color:F.dim,marginBottom:3},children:[(0,C.jsxs)("span",{style:{color:_r(G.risk.tier)},children:["\u2620 ",G.risk.tier.toUpperCase()]}),(0,C.jsx)("span",{style:{color:F.text},children:G.file.split("/").pop()}),(0,C.jsxs)("span",{style:{color:F.ghost},children:["\xB7 ",G.file]})]},G.file))]}),!d&&S&&et.length>0&&(0,C.jsxs)("div",{style:{marginBottom:20},children:[(0,C.jsx)("div",{style:{fontSize:9,color:F.faint,fontFamily:le,letterSpacing:"0.14em",marginBottom:10},children:"\u2620 SIMULATE A FAILURE \xB7 PRE-MORTEM"}),et.map((G,W)=>{let se=_r(G.severity),Fe=G.tier==="speculative",Be=G.severity==="critical"?"\u2620":G.severity==="high"?"\u25B2":"\u25CF",Ee=G.tier==="proven"?F.green:G.tier==="inferred"?F.amber:F.faint;return(0,C.jsxs)("div",{style:{marginBottom:14,border:`1px ${Fe?"dashed":"solid"} ${se}${Fe?"44":"66"}`,background:`${se}${Fe?"08":"10"}`,borderRadius:10,padding:"15px 17px"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:9,flexWrap:"wrap"},children:[(0,C.jsx)("span",{style:{fontSize:12,color:se},children:Be}),(0,C.jsx)("span",{style:{fontSize:11,color:se,fontFamily:le,fontWeight:700,letterSpacing:"0.05em"},children:G.severity.toUpperCase()}),(0,C.jsx)("span",{style:{fontSize:14,color:F.text,fontWeight:700},children:G.title}),(0,C.jsxs)("span",{style:{fontSize:8.5,color:Ee,fontFamily:le,fontWeight:700,border:`1px solid ${Ee}55`,borderRadius:3,padding:"1px 6px",letterSpacing:"0.06em"},children:[G.tier.toUpperCase(),G.confidence?` \xB7 ${G.confidence}`:""]}),(0,C.jsxs)("span",{style:{fontSize:8.5,color:F.ghost,fontFamily:le,marginLeft:"auto"},children:[G.patternId," \xB7 ",G.failureMode]})]}),(0,C.jsx)("div",{style:{fontSize:13,color:F.text,lineHeight:1.55,marginBottom:12},children:G.narrative}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"EVIDENCE CHAIN"}),(0,C.jsx)("div",{style:{marginBottom:12,paddingLeft:2},children:G.evidence.map((Pe,vt)=>(0,C.jsxs)("div",{onClick:()=>fe.some(Jt=>Jt.file===Pe.file)&&h(Pe.file),style:{display:"flex",gap:8,marginBottom:5,cursor:fe.some(Jt=>Jt.file===Pe.file)?"pointer":"default"},children:[(0,C.jsx)("span",{style:{color:se,fontSize:11,flexShrink:0},children:vt===0?"\u250C":vt===G.evidence.length-1?"\u2514":"\u2502"}),(0,C.jsxs)("div",{style:{minWidth:0},children:[(0,C.jsxs)("span",{style:{fontSize:11.5,color:F.blue,fontFamily:le},children:[Pe.file,Pe.line?`:${Pe.line}`:""]}),(0,C.jsxs)("span",{style:{fontSize:12,color:F.dim},children:[" \u2014 ",Pe.detail]})]})]},vt))}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"SIMULATE BEFORE MERGE"}),(0,C.jsx)("div",{style:{marginBottom:12},children:G.simulate.map((Pe,vt)=>(0,C.jsxs)("div",{onClick:()=>navigator.clipboard?.writeText(Pe.cmd),title:"click to copy",style:{display:"flex",alignItems:"baseline",gap:8,background:"#0007",border:`1px solid ${F.line}`,borderRadius:5,padding:"6px 10px",marginBottom:5,cursor:"pointer"},children:[(0,C.jsx)("span",{style:{color:F.green,fontFamily:le,fontSize:11},children:"$"}),(0,C.jsx)("span",{style:{color:F.text,fontFamily:le,fontSize:11.5,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:Pe.cmd}),(0,C.jsx)("span",{style:{marginLeft:"auto",color:F.ghost,fontFamily:le,fontSize:9,flexShrink:0},children:Pe.purpose})]},vt))}),(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"ANSWER BEFORE SHIPPING"}),G.questions.map((Pe,vt)=>(0,C.jsxs)("div",{style:{display:"flex",gap:8,marginBottom:4},children:[(0,C.jsx)("span",{style:{color:F.amber},children:"?"}),(0,C.jsx)("span",{style:{fontSize:12.5,color:F.text,lineHeight:1.5},children:Pe})]},vt)),G.ciGateTemplate&&(0,C.jsxs)("div",{style:{marginTop:12},children:[(0,C.jsx)("div",{style:{fontSize:8.5,color:F.faint,fontFamily:le,letterSpacing:"0.12em",marginBottom:6},children:"SUGGESTED CI GATE \xB7 click to copy"}),(0,C.jsx)("pre",{onClick:()=>navigator.clipboard?.writeText(G.ciGateTemplate),title:"click to copy",style:{margin:0,background:"#0007",border:`1px solid ${F.line}`,borderRadius:5,padding:"8px 11px",fontSize:11,fontFamily:le,color:F.dim,lineHeight:1.5,cursor:"pointer",whiteSpace:"pre",overflow:"auto"},children:G.ciGateTemplate})]})]},W)}),l?.failureReport?.notChecked?.length?(0,C.jsxs)("div",{style:{fontSize:10.5,color:F.ghost,fontFamily:le,lineHeight:1.5},children:["Not analyzed (unknown): ",l.failureReport.notChecked.join(" \xB7 ")]}):null]}),!d&&(l?.prSummary?(0,C.jsx)("div",{style:{fontSize:19,fontWeight:700,color:F.text,marginBottom:12,lineHeight:1.4},children:l.prSummary}):(0,C.jsx)("div",{style:{fontSize:15,color:F.dim,marginBottom:16},children:"Select a Source and Target to see the change."})),l?.fidelity==="diff-only"&&(0,C.jsx)("div",{style:{fontSize:11,color:F.amber,fontFamily:le,marginBottom:12},children:"diff-only \u2014 blast radius & deep analysis available on the checked-out working tree."}),l&&fe.length>0&&(0,C.jsx)(Qae,{nodes:fe,story:l}),l&&fe.length>0&&(0,C.jsx)(ese,{blast:l.blastRadius??[],hasRisk:ft.length>0||et.length>0,nodes:fe}),l&&fe.length>0&&(0,C.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:fe.map(G=>(0,C.jsx)(tse,{node:G,blast:Ge(G.file),findings:et.filter(W=>W.evidence.some(se=>se.file===G.file)),onClick:()=>h(G.file)},G.file))})]})})]}),N&&he&&(0,C.jsx)("div",{onClick:()=>A(!1),style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.58)",zIndex:60,display:"flex",justifyContent:"flex-end"},children:(0,C.jsxs)("div",{onClick:G=>G.stopPropagation(),style:{width:"min(760px, 94vw)",height:"100vh",background:F.card,borderLeft:`1px solid ${F.cardBorder}`,display:"flex",flexDirection:"column",boxShadow:"-16px 0 56px rgba(0,0,0,0.5)"},children:[(0,C.jsxs)("div",{style:{padding:"16px 20px",borderBottom:`1px solid ${F.line}`,display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[(0,C.jsx)(jp,{file:he.file}),(0,C.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,C.jsx)("div",{style:{fontSize:14,fontWeight:700,color:F.text,fontFamily:le},children:he.file.split("/").pop()}),(0,C.jsx)("div",{style:{fontSize:10,color:F.ghost,fontFamily:le,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:he.file})]}),(0,C.jsx)("button",{type:"button",onClick:()=>A(!1),style:{background:"transparent",border:"none",color:F.faint,fontSize:22,lineHeight:1,cursor:"pointer",padding:"4px 8px"},"aria-label":"Close",children:"\xD7"})]}),(0,C.jsx)("div",{className:"memor-scroll",style:{flex:1,minHeight:0,overflow:"auto",background:"#060606"},children:v?(0,C.jsx)(Mr,{diffText:v,style:{padding:"14px 18px",fontSize:12,lineHeight:1.65}}):(0,C.jsx)("div",{style:{padding:18,color:F.ghost,fontFamily:le,fontSize:11},children:"no diff"})})]})}),B&&(0,C.jsx)("div",{onClick:()=>U(!1),style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.62)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:50},children:(0,C.jsxs)("div",{onClick:G=>G.stopPropagation(),style:{width:520,maxHeight:"78vh",background:F.card,border:`1px solid ${F.cardBorder}`,borderRadius:14,padding:"22px 24px",display:"flex",flexDirection:"column",boxShadow:"0 24px 60px rgba(0,0,0,0.5)"},children:[(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",marginBottom:5},children:[(0,C.jsx)("span",{style:{fontSize:16,fontWeight:700,color:F.text},children:"Review a Pull Request"}),(0,C.jsx)("span",{style:{flex:1}}),(0,C.jsx)("span",{onClick:()=>U(!1),style:{cursor:"pointer",color:F.faint,fontSize:20,lineHeight:1},children:"\xD7"})]}),(0,C.jsx)("div",{style:{fontSize:11,color:F.faint,fontFamily:le,marginBottom:16},children:H?"fetching latest from origin\u2026":`pick a branch to review against ${K}`}),(0,C.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:9,marginBottom:14},children:[(0,C.jsx)("span",{style:{fontSize:10,color:F.faint,fontFamily:le,letterSpacing:"0.1em",textTransform:"uppercase"},children:"Target"}),(0,C.jsx)("select",{value:K,onChange:G=>ge(G.target.value),style:{background:F.main,color:F.text,border:`1px solid ${F.border}`,borderRadius:6,padding:"5px 9px",fontSize:11.5,fontFamily:le,cursor:"pointer",outline:"none"},children:[O||"main",...e.map(G=>G.name).filter(G=>G!==(O||"main"))].map(G=>(0,C.jsx)("option",{value:G,children:G},G))})]}),(0,C.jsx)("div",{style:{flex:1,overflow:"auto",border:`1px solid ${F.line}`,borderRadius:8},children:H?(0,C.jsx)("div",{style:{padding:16,fontSize:12,color:F.faint,fontFamily:le},children:"loading branches\u2026"}):$n.length===0?(0,C.jsx)("div",{style:{padding:16,fontSize:12,color:F.faint,fontFamily:le},children:"no open branches to review."}):$n.map(G=>(0,C.jsxs)("div",{onClick:()=>pe(G.name),style:{display:"flex",alignItems:"center",gap:10,padding:"10px 13px",cursor:"pointer",background:ue===G.name?F.accent+"26":"transparent",borderBottom:`1px solid ${F.line}`},onMouseEnter:W=>{ue!==G.name&&(W.currentTarget.style.background="#1c1c1f")},onMouseLeave:W=>{ue!==G.name&&(W.currentTarget.style.background="transparent")},children:[(0,C.jsx)("span",{style:{fontSize:13,color:F.text,fontFamily:le},children:G.name}),G.ahead!=null&&(0,C.jsxs)("span",{style:{marginLeft:"auto",fontSize:10,color:F.amber,fontFamily:le},children:[G.ahead,"\u2191"]})]},G.name))}),(0,C.jsxs)("div",{style:{display:"flex",gap:10,marginTop:16,justifyContent:"flex-end"},children:[(0,C.jsx)("button",{onClick:()=>U(!1),style:{background:"transparent",color:F.dim,border:`1px solid ${F.border}`,borderRadius:7,padding:"7px 14px",fontSize:12,fontFamily:xa,cursor:"pointer"},children:"Cancel"}),(0,C.jsx)("button",{onClick:Oe,disabled:!ue,style:{background:F.accent,color:"#0b0b0f",border:"none",borderRadius:7,padding:"7px 16px",fontSize:12.5,fontWeight:700,fontFamily:xa,cursor:ue?"pointer":"default",opacity:ue?1:.45},children:"Review \u2192"})]})]})}),(0,C.jsx)("style",{children:`@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.3}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes sk-shimmer{0%{background-position:-600px 0}100%{background-position:600px 0}}
40
40
  .memor-scroll::-webkit-scrollbar{width:10px}
41
41
  .memor-scroll::-webkit-scrollbar-track{background:transparent}
42
42
  .memor-scroll::-webkit-scrollbar-thumb{background:#2c2c33;border-radius:8px;border:2px solid transparent;background-clip:content-box}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memor-code-cli",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Software is alive. See it. Interactive architecture projection for any TS/JS codebase.",
5
5
  "type": "commonjs",
6
6
  "main": "dist/index.js",