@reddb-io/ui 0.3.2 → 0.3.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.
Files changed (33) hide show
  1. package/build/_app/immutable/assets/0.CEQwbG0J.css +1 -0
  2. package/build/_app/immutable/chunks/{C7kf23SQ.js → C9pP73gT.js} +1 -1
  3. package/build/_app/immutable/chunks/{Bgb6fHGb.js → CEBul73-.js} +1 -1
  4. package/build/_app/immutable/chunks/{B-yl15ta.js → CXuFZWQe.js} +1 -1
  5. package/build/_app/immutable/chunks/{CP65IkJc.js → CgIoFKBK.js} +1 -1
  6. package/build/_app/immutable/chunks/{CxnvJShw.js → D6XJvoMn.js} +4 -4
  7. package/build/_app/immutable/chunks/DLDgyIn5.js +1164 -0
  8. package/build/_app/immutable/entry/{app.BeX4Tmu5.js → app.BBk9O_OI.js} +2 -2
  9. package/build/_app/immutable/entry/start.C9qfj9ex.js +1 -0
  10. package/build/_app/immutable/nodes/{0.C0e5KQVb.js → 0.BBf1ZyjL.js} +2 -2
  11. package/build/_app/immutable/nodes/{1.ceiVuZbB.js → 1.BmVeJAGw.js} +1 -1
  12. package/build/_app/immutable/nodes/{10.DeFqKRR2.js → 10.DZmZgLvj.js} +2 -2
  13. package/build/_app/immutable/nodes/15.CRwZaU1B.js +60 -0
  14. package/build/_app/version.json +1 -1
  15. package/build/index.html +11 -11
  16. package/dist/embed/{AnalyticsView-SKyGxeAx.js → AnalyticsView-BWwvQS2I.js} +2 -2
  17. package/dist/embed/{AnalyticsView-SKyGxeAx.js.map → AnalyticsView-BWwvQS2I.js.map} +1 -1
  18. package/dist/embed/RedUiEmbedRoot-DAB-6DEr.js +35587 -0
  19. package/dist/embed/RedUiEmbedRoot-DAB-6DEr.js.map +1 -0
  20. package/dist/embed/index-Bgo4yw4C.js +856 -0
  21. package/dist/embed/{index-BY6fc1oQ.js.map → index-Bgo4yw4C.js.map} +1 -1
  22. package/dist/embed/index.js +1 -1
  23. package/dist/embed/{sigma.esm-BawyGZ3s.js → sigma.esm-BOgYLguI.js} +2 -2
  24. package/dist/embed/{sigma.esm-BawyGZ3s.js.map → sigma.esm-BOgYLguI.js.map} +1 -1
  25. package/package.json +3 -3
  26. package/src/app.css +5 -0
  27. package/build/_app/immutable/assets/0.BWZTMKZW.css +0 -1
  28. package/build/_app/immutable/chunks/CO7K4bD2.js +0 -1164
  29. package/build/_app/immutable/entry/start.D7y1MZex.js +0 -1
  30. package/build/_app/immutable/nodes/15.CRDBqbiH.js +0 -60
  31. package/dist/embed/RedUiEmbedRoot-BzVzGAFK.js +0 -31960
  32. package/dist/embed/RedUiEmbedRoot-BzVzGAFK.js.map +0 -1
  33. package/dist/embed/index-BY6fc1oQ.js +0 -856
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.C0e5KQVb.js","../chunks/Bzak7iHL.js","../chunks/CGFL56WJ.js","../chunks/DIeogL5L.js","../chunks/DN7v3Tar.js","../chunks/CxnvJShw.js","../chunks/69_IOA4Y.js","../chunks/BRIMmWzq.js","../chunks/DCJ0QyYH.js","../chunks/Btd6PFkC.js","../chunks/C3SGj6Qd.js","../assets/EmptyState.RXcH7ryE.css","../chunks/CP65IkJc.js","../chunks/B-yl15ta.js","../chunks/CO7K4bD2.js","../assets/Workspace.DM2E1WiF.css","../assets/0.BWZTMKZW.css","../nodes/1.ceiVuZbB.js","../nodes/2.CAG5_cGP.js","../nodes/3.CAG5_cGP.js","../nodes/4.CAG5_cGP.js","../nodes/5.CAG5_cGP.js","../nodes/6.CAG5_cGP.js","../nodes/7.CAG5_cGP.js","../nodes/8.CAG5_cGP.js","../nodes/9.CAG5_cGP.js","../nodes/10.DeFqKRR2.js","../chunks/DRlh90Cv.js","../chunks/BgOTHNR5.js","../nodes/11.CAG5_cGP.js","../nodes/12.CzMvqoYS.js","../nodes/13.CAG5_cGP.js","../nodes/14.CAG5_cGP.js","../nodes/15.CRDBqbiH.js","../assets/15.Dblyk0Kr.css"])))=>i.map(i=>d[i]);
2
- var q=e=>{throw TypeError(e)};var G=(e,t,r)=>t.has(e)||q("Cannot "+r);var i=(e,t,r)=>(G(e,t,"read from private field"),r?r.call(e):t.get(e)),L=(e,t,r)=>t.has(e)?q("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),A=(e,t,r,n)=>(G(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);import{p as D,c as I,b as T,_ as o}from"../chunks/BRIMmWzq.js";import{bm as y,L as Q,at as l,as as U,af as W,b0 as X,b9 as Z,bP as $,bO as tt,bH as et,aq as R,bw as rt,b6 as at,bz as V,a6 as st,bg as ot,bG as it,bN as w}from"../chunks/CGFL56WJ.js";import{m as nt,p as _t,x as mt,a as b,e as x,k as M,w as ct,u as ut}from"../chunks/DN7v3Tar.js";import"../chunks/Bzak7iHL.js";import{a as lt}from"../chunks/Btd6PFkC.js";import{i as k}from"../chunks/DCJ0QyYH.js";function dt(e){return class extends ft{constructor(t){super({component:e,...t})}}}var d,m;class ft{constructor(t){L(this,d);L(this,m);var E;var r=new Map,n=(a,s)=>{var f=X(s,!1,!1);return r.set(a,f),f};const u=new Proxy({...t.props||{},$$events:{}},{get(a,s){return l(r.get(s)??n(s,Reflect.get(a,s)))},has(a,s){return s===Q?!0:(l(r.get(s)??n(s,Reflect.get(a,s))),Reflect.has(a,s))},set(a,s,f){return y(r.get(s)??n(s,f),f),Reflect.set(a,s,f)}});A(this,m,(t.hydrate?nt:_t)(t.component,{target:t.target,anchor:t.anchor,props:u,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError})),(!((E=t==null?void 0:t.props)!=null&&E.$$host)||t.sync===!1)&&U(),A(this,d,u.$$events);for(const a of Object.keys(i(this,m)))a==="$set"||a==="$destroy"||a==="$on"||W(this,a,{get(){return i(this,m)[a]},set(s){i(this,m)[a]=s},enumerable:!0});i(this,m).$set=a=>{Object.assign(u,a)},i(this,m).$destroy=()=>{mt(i(this,m))}}$set(t){i(this,m).$set(t)}$on(t,r){i(this,d)[t]=i(this,d)[t]||[];const n=(...u)=>r.call(this,...u);return i(this,d)[t].push(n),()=>{i(this,d)[t]=i(this,d)[t].filter(u=>u!==n)}}$destroy(){i(this,m).$destroy()}}d=new WeakMap,m=new WeakMap;const Dt={};var vt=M('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),ht=M("<!> <!>",1);function gt(e,t){Z(t,!0);let r=D(t,"components",23,()=>[]),n=D(t,"data_0",3,null),u=D(t,"data_1",3,null);$(()=>t.stores.page.set(t.page)),tt(()=>{t.stores,t.page,t.constructors,r(),t.form,n(),u(),t.stores.page.notify()});let E=V(!1),a=V(!1),s=V(null);lt(()=>{const _=t.stores.page.subscribe(()=>{l(E)&&(y(a,!0),et().then(()=>{y(s,document.title||"untitled page",!0)}))});return y(E,!0),_});const f=w(()=>t.constructors[1]);var j=ht(),C=R(j);{var H=_=>{const v=w(()=>t.constructors[0]);var h=x(),P=R(h);I(P,()=>l(v),(g,p)=>{T(p(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params},children:(c,pt)=>{var S=x(),F=R(S);I(F,()=>l(f),(J,K)=>{T(K(J,{get data(){return u()},get form(){return t.form},get params(){return t.page.params}}),O=>r()[1]=O,()=>{var O;return(O=r())==null?void 0:O[1]})}),b(c,S)},$$slots:{default:!0}}),c=>r()[0]=c,()=>{var c;return(c=r())==null?void 0:c[0]})}),b(_,h)},N=_=>{const v=w(()=>t.constructors[0]);var h=x(),P=R(h);I(P,()=>l(v),(g,p)=>{T(p(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params}}),c=>r()[0]=c,()=>{var c;return(c=r())==null?void 0:c[0]})}),b(_,h)};k(C,_=>{t.constructors[1]?_(H):_(N,-1)})}var Y=rt(C,2);{var B=_=>{var v=vt(),h=st(v);{var P=g=>{var p=ct();it(()=>ut(p,l(s))),b(g,p)};k(h,g=>{l(a)&&g(P)})}ot(v),b(_,v)};k(Y,_=>{l(E)&&_(B)})}b(e,j),at()}const It=dt(gt),Tt=[()=>o(()=>import("../nodes/0.C0e5KQVb.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),()=>o(()=>import("../nodes/1.ceiVuZbB.js"),__vite__mapDeps([17,1,2,3,4,13,12,9]),import.meta.url),()=>o(()=>import("../nodes/2.CAG5_cGP.js"),__vite__mapDeps([18,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/3.CAG5_cGP.js"),__vite__mapDeps([19,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/4.CAG5_cGP.js"),__vite__mapDeps([20,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/5.CAG5_cGP.js"),__vite__mapDeps([21,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/6.CAG5_cGP.js"),__vite__mapDeps([22,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/7.CAG5_cGP.js"),__vite__mapDeps([23,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/8.CAG5_cGP.js"),__vite__mapDeps([24,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/9.CAG5_cGP.js"),__vite__mapDeps([25,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/10.DeFqKRR2.js"),__vite__mapDeps([26,1,9,2,3,4,8,27,5,6,7,10,11,28,13,12]),import.meta.url),()=>o(()=>import("../nodes/11.CAG5_cGP.js"),__vite__mapDeps([29,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/12.CzMvqoYS.js"),__vite__mapDeps([30,1,2,3,4,8,28,10]),import.meta.url),()=>o(()=>import("../nodes/13.CAG5_cGP.js"),__vite__mapDeps([31,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/14.CAG5_cGP.js"),__vite__mapDeps([32,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/15.CRDBqbiH.js"),__vite__mapDeps([33,1,6,3,9,2,4,28,7,8,5,10,11,14,15,27,34]),import.meta.url)],Vt=[],wt={"/":[2],"/analytics":[3],"/appearance":[4],"/ask":[5],"/cluster":[8],"/collections":[9],"/c/[collection]":[6],"/c/[collection]/p/[subpage]":[7],"/graph":[10],"/query":[11],"/redwire-ws-spike":[12],"/security":[13],"/settings":[14],"/shadow-dom-spike":[15]},z={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},Et=Object.fromEntries(Object.entries(z.transport).map(([e,t])=>[e,t.decode])),xt=Object.fromEntries(Object.entries(z.transport).map(([e,t])=>[e,t.encode])),kt=!1,jt=(e,t)=>Et[e](t);export{jt as decode,Et as decoders,wt as dictionary,xt as encoders,kt as hash,z as hooks,Dt as matchers,Tt as nodes,It as root,Vt as server_loads};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.BBf1ZyjL.js","../chunks/Bzak7iHL.js","../chunks/CGFL56WJ.js","../chunks/DIeogL5L.js","../chunks/DN7v3Tar.js","../chunks/D6XJvoMn.js","../chunks/69_IOA4Y.js","../chunks/BRIMmWzq.js","../chunks/DCJ0QyYH.js","../chunks/Btd6PFkC.js","../chunks/C3SGj6Qd.js","../assets/EmptyState.RXcH7ryE.css","../chunks/CgIoFKBK.js","../chunks/CXuFZWQe.js","../chunks/DLDgyIn5.js","../assets/Workspace.DM2E1WiF.css","../assets/0.CEQwbG0J.css","../nodes/1.BmVeJAGw.js","../nodes/2.CAG5_cGP.js","../nodes/3.CAG5_cGP.js","../nodes/4.CAG5_cGP.js","../nodes/5.CAG5_cGP.js","../nodes/6.CAG5_cGP.js","../nodes/7.CAG5_cGP.js","../nodes/8.CAG5_cGP.js","../nodes/9.CAG5_cGP.js","../nodes/10.DZmZgLvj.js","../chunks/DRlh90Cv.js","../chunks/BgOTHNR5.js","../nodes/11.CAG5_cGP.js","../nodes/12.CzMvqoYS.js","../nodes/13.CAG5_cGP.js","../nodes/14.CAG5_cGP.js","../nodes/15.CRwZaU1B.js","../assets/15.Dblyk0Kr.css"])))=>i.map(i=>d[i]);
2
+ var q=e=>{throw TypeError(e)};var G=(e,t,r)=>t.has(e)||q("Cannot "+r);var i=(e,t,r)=>(G(e,t,"read from private field"),r?r.call(e):t.get(e)),L=(e,t,r)=>t.has(e)?q("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),A=(e,t,r,n)=>(G(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);import{p as D,c as I,b as T,_ as o}from"../chunks/BRIMmWzq.js";import{bm as y,L as Q,at as l,as as U,af as W,b0 as X,b9 as Z,bP as $,bO as tt,bH as et,aq as R,bw as rt,b6 as at,bz as V,a6 as st,bg as ot,bG as it,bN as w}from"../chunks/CGFL56WJ.js";import{m as nt,p as _t,x as mt,a as b,e as x,k as M,w as ct,u as ut}from"../chunks/DN7v3Tar.js";import"../chunks/Bzak7iHL.js";import{a as lt}from"../chunks/Btd6PFkC.js";import{i as k}from"../chunks/DCJ0QyYH.js";function dt(e){return class extends ft{constructor(t){super({component:e,...t})}}}var d,m;class ft{constructor(t){L(this,d);L(this,m);var E;var r=new Map,n=(a,s)=>{var f=X(s,!1,!1);return r.set(a,f),f};const u=new Proxy({...t.props||{},$$events:{}},{get(a,s){return l(r.get(s)??n(s,Reflect.get(a,s)))},has(a,s){return s===Q?!0:(l(r.get(s)??n(s,Reflect.get(a,s))),Reflect.has(a,s))},set(a,s,f){return y(r.get(s)??n(s,f),f),Reflect.set(a,s,f)}});A(this,m,(t.hydrate?nt:_t)(t.component,{target:t.target,anchor:t.anchor,props:u,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError})),(!((E=t==null?void 0:t.props)!=null&&E.$$host)||t.sync===!1)&&U(),A(this,d,u.$$events);for(const a of Object.keys(i(this,m)))a==="$set"||a==="$destroy"||a==="$on"||W(this,a,{get(){return i(this,m)[a]},set(s){i(this,m)[a]=s},enumerable:!0});i(this,m).$set=a=>{Object.assign(u,a)},i(this,m).$destroy=()=>{mt(i(this,m))}}$set(t){i(this,m).$set(t)}$on(t,r){i(this,d)[t]=i(this,d)[t]||[];const n=(...u)=>r.call(this,...u);return i(this,d)[t].push(n),()=>{i(this,d)[t]=i(this,d)[t].filter(u=>u!==n)}}$destroy(){i(this,m).$destroy()}}d=new WeakMap,m=new WeakMap;const Dt={};var vt=M('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),ht=M("<!> <!>",1);function gt(e,t){Z(t,!0);let r=D(t,"components",23,()=>[]),n=D(t,"data_0",3,null),u=D(t,"data_1",3,null);$(()=>t.stores.page.set(t.page)),tt(()=>{t.stores,t.page,t.constructors,r(),t.form,n(),u(),t.stores.page.notify()});let E=V(!1),a=V(!1),s=V(null);lt(()=>{const _=t.stores.page.subscribe(()=>{l(E)&&(y(a,!0),et().then(()=>{y(s,document.title||"untitled page",!0)}))});return y(E,!0),_});const f=w(()=>t.constructors[1]);var j=ht(),C=R(j);{var H=_=>{const v=w(()=>t.constructors[0]);var h=x(),P=R(h);I(P,()=>l(v),(g,p)=>{T(p(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params},children:(c,pt)=>{var S=x(),F=R(S);I(F,()=>l(f),(J,K)=>{T(K(J,{get data(){return u()},get form(){return t.form},get params(){return t.page.params}}),O=>r()[1]=O,()=>{var O;return(O=r())==null?void 0:O[1]})}),b(c,S)},$$slots:{default:!0}}),c=>r()[0]=c,()=>{var c;return(c=r())==null?void 0:c[0]})}),b(_,h)},N=_=>{const v=w(()=>t.constructors[0]);var h=x(),P=R(h);I(P,()=>l(v),(g,p)=>{T(p(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params}}),c=>r()[0]=c,()=>{var c;return(c=r())==null?void 0:c[0]})}),b(_,h)};k(C,_=>{t.constructors[1]?_(H):_(N,-1)})}var Y=rt(C,2);{var B=_=>{var v=vt(),h=st(v);{var P=g=>{var p=ct();it(()=>ut(p,l(s))),b(g,p)};k(h,g=>{l(a)&&g(P)})}ot(v),b(_,v)};k(Y,_=>{l(E)&&_(B)})}b(e,j),at()}const It=dt(gt),Tt=[()=>o(()=>import("../nodes/0.BBf1ZyjL.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),()=>o(()=>import("../nodes/1.BmVeJAGw.js"),__vite__mapDeps([17,1,2,3,4,13,12,9]),import.meta.url),()=>o(()=>import("../nodes/2.CAG5_cGP.js"),__vite__mapDeps([18,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/3.CAG5_cGP.js"),__vite__mapDeps([19,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/4.CAG5_cGP.js"),__vite__mapDeps([20,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/5.CAG5_cGP.js"),__vite__mapDeps([21,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/6.CAG5_cGP.js"),__vite__mapDeps([22,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/7.CAG5_cGP.js"),__vite__mapDeps([23,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/8.CAG5_cGP.js"),__vite__mapDeps([24,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/9.CAG5_cGP.js"),__vite__mapDeps([25,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/10.DZmZgLvj.js"),__vite__mapDeps([26,1,9,2,3,4,8,27,5,6,7,10,11,28,13,12]),import.meta.url),()=>o(()=>import("../nodes/11.CAG5_cGP.js"),__vite__mapDeps([29,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/12.CzMvqoYS.js"),__vite__mapDeps([30,1,2,3,4,8,28,10]),import.meta.url),()=>o(()=>import("../nodes/13.CAG5_cGP.js"),__vite__mapDeps([31,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/14.CAG5_cGP.js"),__vite__mapDeps([32,1,6,3]),import.meta.url),()=>o(()=>import("../nodes/15.CRwZaU1B.js"),__vite__mapDeps([33,1,6,3,9,2,4,28,7,8,5,10,11,14,15,27,34]),import.meta.url)],Vt=[],wt={"/":[2],"/analytics":[3],"/appearance":[4],"/ask":[5],"/cluster":[8],"/collections":[9],"/c/[collection]":[6],"/c/[collection]/p/[subpage]":[7],"/graph":[10],"/query":[11],"/redwire-ws-spike":[12],"/security":[13],"/settings":[14],"/shadow-dom-spike":[15]},z={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},Et=Object.fromEntries(Object.entries(z.transport).map(([e,t])=>[e,t.decode])),xt=Object.fromEntries(Object.entries(z.transport).map(([e,t])=>[e,t.encode])),kt=!1,jt=(e,t)=>Et[e](t);export{jt as decode,Et as decoders,wt as dictionary,xt as encoders,kt as hash,z as hooks,Dt as matchers,Tt as nodes,It as root,Vt as server_loads};
@@ -0,0 +1 @@
1
+ import{l as o,s as r}from"../chunks/CgIoFKBK.js";export{o as load_css,r as start};
@@ -1,2 +1,2 @@
1
- import"../chunks/Bzak7iHL.js";import{aq as w,b3 as T,a6 as c,b2 as K,bg as d,bw as x,at as s,bG as j,bN as _,b9 as Q,b6 as U}from"../chunks/CGFL56WJ.js";import{h as V,e as y,c as X,a as p,u as C,i as M,k as B}from"../chunks/DN7v3Tar.js";import{C as D,e as P}from"../chunks/CxnvJShw.js";import{i as G}from"../chunks/DCJ0QyYH.js";import{g as Z,b as v}from"../chunks/CP65IkJc.js";import{p as z}from"../chunks/B-yl15ta.js";import{R as $,t as q,p as ee,W as te}from"../chunks/CO7K4bD2.js";const ae=!1,re=!1,oe="never",xe=Object.freeze(Object.defineProperty({__proto__:null,prerender:ae,ssr:re,trailingSlash:oe},Symbol.toStringTag,{value:"Module"}));var ne=B('<pre class="m-0 max-h-52 w-full max-w-2xl overflow-auto rounded-lg border border-line-1 bg-bg-1 p-3 text-left font-mono text-[11px] leading-relaxed text-fg-3"> </pre>'),se=B(`<div role="alert" class="flex h-full w-full flex-col items-center justify-center gap-5 overflow-auto bg-bg-0 px-6 py-10 text-center"><div class="flex flex-col items-center gap-2"><!> <h1 class="type-h2 m-0 text-fg-0">Something crashed while rendering</h1> <p class="m-0 max-w-lg text-[13px] leading-relaxed text-fg-2">The workspace hit an unexpected error. Your connection is untouched —
2
- retry the render, or reload the window to start clean.</p></div> <p class="m-0 max-w-lg break-words font-mono text-[12px] text-accent"> </p> <!> <div class="flex items-center gap-2"><button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg bg-accent px-3 text-[12px] font-medium text-white hover:bg-accent/90"><!> Retry render</button> <button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg border border-line-1 bg-bg-1 px-3 text-[12px] font-medium text-fg-1 hover:bg-bg-2"><!> Reload window</button></div></div>`);function ie(e,r){function o(){typeof window<"u"&&window.location.reload()}function i(a){return a instanceof Error?a.message||a.name:String(a)}function h(a){return a instanceof Error&&a.stack?a.stack:null}var g=y(),k=w(g);X(k,{failed:(m,t=T,n=T)=>{var f=se(),R=c(f),H=c(R);P(H,{class:"size-8 text-fg-3",strokeWidth:1.4}),K(4),d(R);var S=x(R,2),L=c(S,!0);d(S);var E=x(S,2);{var N=l=>{var u=ne(),I=c(u,!0);d(u),j(J=>C(I,J),[()=>h(t())]),p(l,u)},Y=_(()=>h(t()));G(E,l=>{s(Y)&&l(N)})}var O=x(E,2),b=c(O),A=c(b);P(A,{class:"size-3.5",strokeWidth:2}),K(),d(b);var W=x(b,2),F=c(W);$(F,{class:"size-3.5",strokeWidth:2}),K(),d(W),d(O),d(f),j(l=>C(L,l),[()=>i(t())]),M("click",b,function(...l){var u;(u=n())==null||u.apply(this,l)}),M("click",W,o),p(m,f)}},m=>{var t=y(),n=w(t);D(n,()=>r.children),p(m,t)}),p(e,g)}V(["click"]);function le(e){return e instanceof MouseEvent?e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey:!1}function ce(){const e=_(()=>ee(z.url.pathname.slice(v.length)||"/"));return{get view(){return s(e).view},get collection(){return s(e).collection},get subpage(){return s(e).subpage},get path(){return z.url.pathname},href:r=>v+q(r),go:(r,o,i)=>{le(o)||(o==null||o.preventDefault(),Z(v+q(r),{replaceState:i??!1}))}}}function ve(e,r){Q(r,!0);const o=ce(),i=_(()=>z.url.pathname.slice(v.length)||"/"),h=_(()=>s(i)==="/graph"||s(i)==="/shadow-dom-spike"||s(i)==="/redwire-ws-spike");var g=y(),k=w(g);{var a=t=>{var n=y(),f=w(n);D(f,()=>r.children),p(t,n)},m=t=>{ie(t,{children:(n,f)=>{te(n,{get router(){return o}})}})};G(k,t=>{s(h)?t(a):t(m,-1)})}p(e,g),U()}export{ve as component,xe as universal};
1
+ import"../chunks/Bzak7iHL.js";import{aq as w,b3 as T,a6 as c,b2 as K,bg as d,bw as x,at as s,bG as j,bN as _,b9 as Q,b6 as U}from"../chunks/CGFL56WJ.js";import{h as V,e as y,c as X,a as p,u as M,i as P,k as q}from"../chunks/DN7v3Tar.js";import{D as B,e as C}from"../chunks/D6XJvoMn.js";import{i as G}from"../chunks/DCJ0QyYH.js";import{g as Z,b as v}from"../chunks/CgIoFKBK.js";import{p as z}from"../chunks/CXuFZWQe.js";import{R as $,t as D,p as ee,W as te}from"../chunks/DLDgyIn5.js";const ae=!1,re=!1,oe="never",xe=Object.freeze(Object.defineProperty({__proto__:null,prerender:ae,ssr:re,trailingSlash:oe},Symbol.toStringTag,{value:"Module"}));var ne=q('<pre class="m-0 max-h-52 w-full max-w-2xl overflow-auto rounded-lg border border-line-1 bg-bg-1 p-3 text-left font-mono text-[11px] leading-relaxed text-fg-3"> </pre>'),se=q(`<div role="alert" class="flex h-full w-full flex-col items-center justify-center gap-5 overflow-auto bg-bg-0 px-6 py-10 text-center"><div class="flex flex-col items-center gap-2"><!> <h1 class="type-h2 m-0 text-fg-0">Something crashed while rendering</h1> <p class="m-0 max-w-lg text-[13px] leading-relaxed text-fg-2">The workspace hit an unexpected error. Your connection is untouched —
2
+ retry the render, or reload the window to start clean.</p></div> <p class="m-0 max-w-lg break-words font-mono text-[12px] text-accent"> </p> <!> <div class="flex items-center gap-2"><button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg bg-accent px-3 text-[12px] font-medium text-white hover:bg-accent/90"><!> Retry render</button> <button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg border border-line-1 bg-bg-1 px-3 text-[12px] font-medium text-fg-1 hover:bg-bg-2"><!> Reload window</button></div></div>`);function ie(e,r){function o(){typeof window<"u"&&window.location.reload()}function i(a){return a instanceof Error?a.message||a.name:String(a)}function h(a){return a instanceof Error&&a.stack?a.stack:null}var g=y(),k=w(g);X(k,{failed:(m,t=T,n=T)=>{var f=se(),R=c(f),H=c(R);C(H,{class:"size-8 text-fg-3",strokeWidth:1.4}),K(4),d(R);var S=x(R,2),L=c(S,!0);d(S);var E=x(S,2);{var N=l=>{var u=ne(),I=c(u,!0);d(u),j(J=>M(I,J),[()=>h(t())]),p(l,u)},Y=_(()=>h(t()));G(E,l=>{s(Y)&&l(N)})}var O=x(E,2),b=c(O),A=c(b);C(A,{class:"size-3.5",strokeWidth:2}),K(),d(b);var W=x(b,2),F=c(W);$(F,{class:"size-3.5",strokeWidth:2}),K(),d(W),d(O),d(f),j(l=>M(L,l),[()=>i(t())]),P("click",b,function(...l){var u;(u=n())==null||u.apply(this,l)}),P("click",W,o),p(m,f)}},m=>{var t=y(),n=w(t);B(n,()=>r.children),p(m,t)}),p(e,g)}V(["click"]);function le(e){return e instanceof MouseEvent?e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey:!1}function ce(){const e=_(()=>ee(z.url.pathname.slice(v.length)||"/"));return{get view(){return s(e).view},get collection(){return s(e).collection},get subpage(){return s(e).subpage},get path(){return z.url.pathname},href:r=>v+D(r),go:(r,o,i)=>{le(o)||(o==null||o.preventDefault(),Z(v+D(r),{replaceState:i??!1}))}}}function ve(e,r){Q(r,!0);const o=ce(),i=_(()=>z.url.pathname.slice(v.length)||"/"),h=_(()=>s(i)==="/graph"||s(i)==="/shadow-dom-spike"||s(i)==="/redwire-ws-spike");var g=y(),k=w(g);{var a=t=>{var n=y(),f=w(n);B(f,()=>r.children),p(t,n)},m=t=>{ie(t,{children:(n,f)=>{te(n,{get router(){return o}})}})};G(k,t=>{s(h)?t(a):t(m,-1)})}p(e,g),U()}export{ve as component,xe as universal};
@@ -1 +1 @@
1
- import"../chunks/Bzak7iHL.js";import{b9 as u,aq as b,bw as v,bG as c,b6 as g,a6 as s,bg as o}from"../chunks/CGFL56WJ.js";import{a as l,k as _,u as p}from"../chunks/DN7v3Tar.js";import{p as m}from"../chunks/B-yl15ta.js";var x=_("<h1> </h1> <p> </p>",1);function E(i,f){u(f,!0);var a=x(),r=b(a),h=s(r,!0);o(r);var t=v(r,2),n=s(t,!0);o(t),c(()=>{var e;p(h,m.status),p(n,(e=m.error)==null?void 0:e.message)}),l(i,a),g()}export{E as component};
1
+ import"../chunks/Bzak7iHL.js";import{b9 as u,aq as b,bw as v,bG as c,b6 as g,a6 as s,bg as o}from"../chunks/CGFL56WJ.js";import{a as l,k as _,u as p}from"../chunks/DN7v3Tar.js";import{p as m}from"../chunks/CXuFZWQe.js";var x=_("<h1> </h1> <p> </p>",1);function E(i,f){u(f,!0);var a=x(),r=b(a),h=s(r,!0);o(r);var t=v(r,2),n=s(t,!0);o(t),c(()=>{var e;p(h,m.status),p(n,(e=m.error)==null?void 0:e.message)}),l(i,a),g()}export{E as component};
@@ -1,4 +1,4 @@
1
- import"../chunks/Bzak7iHL.js";import{a as Lt}from"../chunks/Btd6PFkC.js";import{aq as j,b9 as Nt,b6 as zt,bm as g,al as It,$ as jt,a6 as i,at as n,bg as s,bz as V,bw as m,b2 as Ve,bG as I,bN as re}from"../chunks/CGFL56WJ.js";import{e as ae,a as x,h as Et,k as S,u as y,i as Y,j as Gt,w as Le}from"../chunks/DN7v3Tar.js";import{i as T}from"../chunks/DCJ0QyYH.js";import{k as At}from"../chunks/DRlh90Cv.js";import{I as he,B as _e,i as Ft,F as Ye,e as Mt,E as Rt,b as Tt,L as Pt,G as Ot,m as Pe,r as Oe}from"../chunks/CxnvJShw.js";import{h as Dt}from"../chunks/BgOTHNR5.js";import{e as Ke,j as Qe,r as Ut,d as qt,k as Bt}from"../chunks/C3SGj6Qd.js";import{l as ye,s as $e,b as Jt}from"../chunks/BRIMmWzq.js";import{p as Ht}from"../chunks/B-yl15ta.js";import"../chunks/69_IOA4Y.js";function Vt(e,t){const o=ye(t,["children","$$slots","$$events","$$legacy"]);/**
1
+ import"../chunks/Bzak7iHL.js";import{a as Lt}from"../chunks/Btd6PFkC.js";import{aq as j,b9 as Nt,b6 as zt,bm as g,al as It,$ as jt,a6 as i,at as n,bg as s,bz as V,bw as m,b2 as Ve,bG as I,bN as re}from"../chunks/CGFL56WJ.js";import{e as ae,a as x,h as Et,k as S,u as y,i as Y,j as Gt,w as Le}from"../chunks/DN7v3Tar.js";import{i as T}from"../chunks/DCJ0QyYH.js";import{k as At}from"../chunks/DRlh90Cv.js";import{I as he,C as _e,i as Ft,F as Ye,e as Mt,E as Rt,b as Tt,L as Pt,G as Ot,m as Pe,s as Oe}from"../chunks/D6XJvoMn.js";import{h as Dt}from"../chunks/BgOTHNR5.js";import{e as Ke,j as Qe,r as Ut,d as qt,k as Bt}from"../chunks/C3SGj6Qd.js";import{l as ye,s as $e,b as Jt}from"../chunks/BRIMmWzq.js";import{p as Ht}from"../chunks/CXuFZWQe.js";import"../chunks/69_IOA4Y.js";function Vt(e,t){const o=ye(t,["children","$$slots","$$events","$$legacy"]);/**
2
2
  * @license lucide-svelte v0.475.0 - ISC
3
3
  *
4
4
  * ISC License
@@ -93,4 +93,4 @@ import"../chunks/Bzak7iHL.js";import{a as Lt}from"../chunks/Btd6PFkC.js";import{
93
93
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
94
94
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
95
95
  *
96
- */const r=[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["polyline",{points:"17 8 12 3 7 8"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15"}]];he(e,$e({name:"upload"},()=>o,{get iconNode(){return r},children:(a,u)=>{var l=ae(),f=j(l);_e(f,t,"default",{},null),x(a,l)},$$slots:{default:!0}}))}const ze=1;class $ extends Error{constructor(t){super(t),this.name="GraphContractError"}}function ee(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function K(e,t){for(const o of t){const r=e[o];if(r!=null&&r!=="")return r}}function Zt(e){const t=K(e,["version","schema_version","schemaVersion"]);if(typeof t!="string"||t.trim()==="")throw new $(`Graph export is missing a "version" string. This viewer supports the version ${ze}.x contract.`);const o=Number.parseInt(t.split(".")[0]??"",10);if(!Number.isFinite(o))throw new $(`Graph export declares an unparseable version "${t}". This viewer supports version ${ze}.x.`);if(o!==ze)throw new $(`Unsupported graph export version "${t}". This viewer supports version ${ze}.x.`);return t}function Wt(e,t){if(!ee(e))throw new $(`Graph node at index ${t} is not an object.`);const o=K(e,["id","rid","_id","uid"]);if(o===void 0)throw new $(`Graph node at index ${t} is missing the required "id" field.`);const r=String(o),a=K(e,["label","name","title"]),u=K(e,["type","node_type","kind"]),l=e.community;return{id:r,label:a!==void 0?String(a):r,type:u!==void 0?String(u):void 0,community:typeof l=="number"?l:void 0,data:e}}function Xt(e,t){if(!ee(e))throw new $(`Graph edge at index ${t} is not an object.`);const o=K(e,["source","from","src","start","from_rid"]);if(o===void 0)throw new $(`Graph edge at index ${t} is missing the required "source" field.`);const r=K(e,["target","to","dst","end","to_rid"]);if(r===void 0)throw new $(`Graph edge at index ${t} is missing the required "target" field.`);const a=K(e,["kind","type","label","rel"]),u=String(o),l=String(r),f=K(e,["id","rid"]);return{id:f!==void 0?String(f):`${u}->${l}:${a??""}#${t}`,source:u,target:l,type:a!==void 0?String(a):void 0,data:e}}function en(e){if(e==null)return[];if(!Array.isArray(e))throw new $('Graph export "communities" must be an array when present.');return e.map((t,o)=>{if(!ee(t))throw new $(`Community at index ${o} is not an object.`);if(typeof t.id!="number")throw new $(`Community at index ${o} is missing a numeric "id".`);const r=t.id;return{id:r,label:typeof t.label=="string"?t.label:`Community ${r}`,color:typeof t.color=="string"?t.color:Ft(r),size:typeof t.size=="number"?t.size:0}})}function tn(e,t){const o={};for(const a of e)o[a.id]={...a.data,id:a.id,label:a.label,...a.type!==void 0?{node_type:a.type}:{}};const r={};for(const a of t)r[a.id]={...a.data,source:a.source,target:a.target,...a.type!==void 0?{type:a.type}:{}};return{ok:!0,query:"",capability:"graph",record_count:e.length+t.length,result:{columns:["nodes","edges"],records:[{values:{},nodes:o,edges:r}]}}}function nn(e){if(!ee(e))throw new $('Graph export must be a JSON object with "version" and graph data.');const t=ee(e.contract)?e.contract:null,o=Zt(t??e),r=t??(ee(e.graph)?e.graph:e),a=r.nodes,u=r.edges;if(!Array.isArray(a))throw new $('Graph export "nodes" must be an array.');if(!Array.isArray(u))throw new $('Graph export "edges" must be an array.');const l=a.map(Wt),f=u.map(Xt),p=en(e.communities??r.communities);return{version:o,model:{nodes:l,edges:f,communities:p},result:tn(l,f),meta:ee(e.meta)?e.meta:{}}}function Xe(e){let t;try{t=JSON.parse(e)}catch(o){const r=o instanceof Error?o.message:String(o);throw new $(`Graph export is not valid JSON: ${r}`)}return nn(t)}async function on(e,t={}){const o=t.fetch??globalThis.fetch;if(typeof o!="function")throw new $("No fetch implementation available to load the graph.");let r;try{r=await o(e)}catch(u){const l=u instanceof Error?u.message:String(u);throw new $(`Failed to fetch graph from "${e}": ${l}`)}if(!r.ok)throw new $(`Failed to load graph from "${e}": HTTP ${r.status} ${r.statusText}`.trim());const a=await r.text();return Xe(a)}const rn=["layer","layer_name","layerName","layer_id","layerId","domain","namespace"],an=["community","community_name","communityName","community_id","communityId"],sn=["component","component_name","componentName","component_id","componentId","package","module","service","collection","file","path"],et={id:"unassigned",label:"Unassigned",color:"#94a3b8"},ln=/^(#[0-9a-f]{3,8}|rgba?\([\d\s.,%+-]+\)|hsla?\([\d\s.,%+-]+\)|oklch\([\d\s.%+-]+(?:\/\s*[\d.]+%?)?\))$/i;function cn(e){const t=e.trim();return ln.test(t)?t:et.color}function xe(e,t){for(const o of t){const r=e[o];if(!(r==null||r==="")&&(typeof r=="string"||typeof r=="number"))return String(r)}return null}function Ie(e,t){return`${e}:${t.toLowerCase().replace(/[^a-z0-9._:/-]+/g,"-")}`}function dn(e){return new Map(e.communities.map(t=>[t.id,{label:t.label,color:cn(t.color)}]))}function un(e,t){const o=xe(e.data,rn);if(o)return{id:Ie("layer",o),label:o,color:"#94a3b8"};if(typeof e.community=="number"){const a=t.get(e.community);return{id:`community:${e.community}`,label:(a==null?void 0:a.label)??`Community ${e.community}`,color:(a==null?void 0:a.color)??"#94a3b8"}}const r=xe(e.data,an);return r?{id:Ie("community",r),label:r,color:"#94a3b8"}:et}function pn(e){const t=xe(e.data,sn);if(t)return{id:Ie("component",t),label:t};const o=e.type??xe(e.data,["node_type","kind"]);return o?{id:Ie("type",o),label:`${o} nodes`}:{id:"component:unassigned",label:"Unassigned"}}function Ze(e,t){let o=0,r=0,a=0;for(const u of t){const l=e.has(u.source),f=e.has(u.target);!l&&!f||(o+=1,l&&f?r+=1:a+=1)}return{connectionCount:o,internalConnectionCount:r,externalConnectionCount:a}}function fn(e,t){let o=0,r=0;for(const a of t)a.source===e.id&&(r+=1),a.target===e.id&&(o+=1);return{id:e.id,label:e.label,type:e.type??xe(e.data,["node_type","kind"])??"node",degree:o+r,incoming:o,outgoing:r}}function We(e,t){const o=t.nodeCount-e.nodeCount;if(o!==0)return o;const r=t.connectionCount-e.connectionCount;if(r!==0)return r;const a=e.label.localeCompare(t.label);return a!==0?a:e.id.localeCompare(t.id)}function vn(e){const t=dn(e),o=new Map;for(const a of e.nodes){const u=un(a,t),l=o.get(u.id);l?l.nodes.push(a):o.set(u.id,{...u,nodes:[a]})}return{layers:[...o.values()].map(a=>{const u=a.nodes.map(w=>w.id),l=new Set(u),f=Ze(l,e.edges),p=new Map;for(const w of a.nodes){const _=pn(w),k=p.get(_.id);k?k.nodes.push(w):p.set(_.id,{..._,nodes:[w]})}const D=[...p.values()].map(w=>{const _=w.nodes.map(U=>U.id),k=Ze(new Set(_),e.edges);return{id:w.id,label:w.label,nodeCount:w.nodes.length,nodeIds:_,nodes:w.nodes.map(U=>fn(U,e.edges)).sort((U,se)=>se.degree-U.degree||U.label.localeCompare(se.label)),...k}}).sort(We);return{id:a.id,label:a.label,color:a.color,nodeCount:a.nodes.length,componentCount:D.length,nodeIds:u,components:D,...f}}).sort(We)}}function mn(e,t){const o=t===null?null:new Set(t),r=o?e.nodes.filter(p=>o.has(p.id)):e.nodes,a=new Set(r.map(p=>p.id)),u=e.edges.filter(p=>a.has(p.source)&&a.has(p.target)),l={};for(const p of r)l[p.id]={...p.data,id:p.id,label:p.label,...p.type!==void 0?{node_type:p.type}:{}};const f={};for(const p of u)f[p.id]={...p.data,source:p.source,target:p.target,...p.type!==void 0?{type:p.type}:{}};return{ok:!0,query:"",capability:"graph",record_count:r.length+u.length,result:{columns:["nodes","edges"],records:[{values:{},nodes:l,edges:f}]}}}var gn=S('<button type="button" aria-label="Back" class="inline-flex size-6 items-center justify-center rounded border border-line-1 text-fg-3 hover:border-line-2 hover:text-fg-1"><!></button>'),bn=S('<span class="inline-flex size-6 items-center justify-center rounded border border-line-1 text-fg-3"><!></span>'),xn=S('<!> <button type="button"> </button>',1),hn=S('<!> <span class="truncate rounded bg-bg-2 px-1.5 py-0.5 text-fg-0"> </span>',1),_n=S('<button type="button" class="w-full px-3 py-2.5 text-left hover:bg-bg-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40"><div class="flex items-start gap-2.5"><span class="mt-1.5 size-2 rounded-full shrink-0"></span> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-[13px] font-medium text-fg-0"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></span> <span class="mt-1 block font-mono text-[11px] text-fg-3"> </span></span> <!></div></button>'),yn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),$n=S('<button type="button" class="w-full px-3 py-2.5 text-left hover:bg-bg-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40"><div class="flex items-start gap-2.5"><span class="mt-1 text-fg-3"><!></span> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-fg-0"> </span> <span class="mt-1 block font-mono text-[11px] text-fg-3"> </span></span> <!></div></button>'),wn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),kn=S('<div class="px-3 py-2.5"><div class="flex items-start gap-2.5"><span class="mt-1 text-fg-3"><!></span> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-fg-0"> </span> <span class="mt-1 block truncate font-mono text-[11px] text-fg-3"> </span></span></div></div>'),Cn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),Sn=S('<div class="flex-1 min-h-0 overflow-auto"><!></div>'),Ln=S('<div class="flex items-center justify-between gap-4 px-3 py-2 border-b border-line-1 bg-bg-1 shrink-0"><span class="flex items-center gap-2 min-w-0 text-fg-2 text-[13px]"><!> <span class="font-mono text-fg-1 truncate max-w-[38vw]"> </span> <span class="text-fg-3 whitespace-nowrap"> <!></span></span> <button type="button" class="flex items-center gap-1.5 px-3 py-1.5 rounded-md border border-line-1 text-fg-2 text-[12px] hover:border-fg-3 hover:text-fg-1"><!> Load another</button></div> <div class="flex-1 min-h-0 flex"><aside class="w-[min(320px,48vw)] shrink-0 border-r border-line-1 bg-bg-1/80 flex flex-col min-h-0"><div class="px-3 py-2 border-b border-line-1"><div class="flex items-center gap-2 text-fg-1"><!> <div class="min-w-0"><div class="type-label"><!></div> <div class="truncate text-[12px] font-medium text-fg-0"> </div></div></div> <nav class="mt-2 flex min-w-0 items-center gap-1 text-[11px] font-mono text-fg-3"><button type="button">overview</button> <!> <!></nav></div> <!></aside> <div class="flex-1 min-w-0"><!></div></div>',1),Nn=S('<p class="m-0 px-3 py-2 rounded-md text-accent text-[12px] leading-relaxed border border-accent/35 bg-accent/10"> </p>'),zn=S('<div class="flex flex-col gap-3 w-[min(34rem,90vw)] text-left"><form class="flex gap-2"><div class="relative flex-1 flex items-center"><!> <input class="w-full pl-8 pr-2.5 py-2 bg-bg-2 border border-line-1 rounded-md text-fg-1 text-[13px] font-mono focus:outline-none focus:border-accent" type="text" placeholder="https://host/graph.json or /exports/memory.json" spellcheck="false" autocapitalize="off" autocorrect="off"/></div> <button class="px-4 py-2 bg-accent text-white rounded-md text-[13px] font-medium whitespace-nowrap disabled:opacity-50" type="submit"> </button></form> <div class="flex items-center gap-2 text-fg-3 text-[11px] uppercase tracking-wide"><span class="flex-1 h-px bg-line-1"></span> or <span class="flex-1 h-px bg-line-1"></span></div> <button type="button" class="flex items-center justify-center gap-2 px-3 py-2 bg-bg-2 border border-line-1 rounded-md text-fg-1 text-[13px] hover:border-fg-3 disabled:opacity-50"><!> Choose a local graph.json</button> <input type="file" accept="application/json,.json" class="hidden"/> <!></div>'),In=S('<div class="flex items-center justify-center h-full w-full p-8"><!></div>'),jn=S('<div class="flex h-screen w-full flex-col"><!></div>');function Bn(e,t){Nt(t,!0);let o=V(null),r=V(!1),a=V(null),u=V(null),l=V(null),f=V(null),p=V(""),D=V(null);const w=re(()=>n(o)?vn(n(o).model):null),_=re(()=>{var d;return n(l)?(d=n(w))==null?void 0:d.layers.find(b=>b.id===n(l)):void 0}),k=re(()=>{var d;return n(f)?(d=n(_))==null?void 0:d.components.find(b=>b.id===n(f)):void 0}),U=re(()=>n(k)?n(k).nodeIds:n(_)?n(_).nodeIds:null),se=re(()=>n(o)?mn(n(o).model,n(U)):null),tt=re(()=>`${n(u)??"graph"}:${n(l)??"overview"}:${n(f)??"all"}`);async function De(d){const b=d.trim();if(b){g(r,!0),g(a,null);try{g(o,await on(b,{fetch}),!0),g(u,b,!0),we()}catch(z){g(o,null),g(a,z instanceof Error?z.message:String(z),!0)}finally{g(r,!1)}}}async function nt(d){g(r,!0),g(a,null);try{g(o,Xe(await d.text()),!0),g(u,d.name,!0),we()}catch(b){g(o,null),g(a,b instanceof Error?b.message:String(b),!0)}finally{g(r,!1)}}function ot(d){d.preventDefault(),De(n(p))}function rt(d){var z;const b=(z=d.target.files)==null?void 0:z[0];b&&nt(b)}function at(){g(o,null),g(a,null),g(u,null),g(p,""),we(),n(D)&&(n(D).value="")}function we(){g(l,null),g(f,null)}function st(d){g(l,d.id,!0),g(f,null)}function it(d){g(f,d.id,!0)}function lt(){if(n(f)){g(f,null);return}g(l,null)}function P(d,b){return`${d.toLocaleString()} ${b}${d===1?"":"s"}`}function je(d){const b=P(d.connectionCount,"connection");return d.externalConnectionCount===0?b:`${b} · ${d.externalConnectionCount.toLocaleString()} external`}Lt(()=>{const d=Ht.url.searchParams.get("src");d&&(g(p,d,!0),De(d))});var Ee=jn();Dt("315y67",d=>{It(()=>{jt.title="Load graph · red-ui"})});var ct=i(Ee);{var dt=d=>{var b=Ln(),z=j(b),ke=i(z),Ce=i(ke);Ye(Ce,{size:14});var Q=m(Ce,2),te=i(Q,!0);s(Q);var ne=m(Q,2),ie=i(ne),le=m(ie);{var ce=c=>{var v=Le();I(()=>y(v,`· ${n(o).model.communities.length??""} communities`)),x(c,v)};T(le,c=>{n(o).model.communities.length&&c(ce)})}s(ne),s(ke);var de=m(ke,2),Z=i(de);Mt(Z,{size:13}),Ve(),s(de),s(z);var Se=m(z,2),W=i(Se),ue=i(W),pe=i(ue),L=i(pe);{var fe=c=>{var v=gn(),C=i(v);Vt(C,{size:13}),s(v),Y("click",v,lt),x(c,v)},Ge=c=>{var v=bn(),C=i(v);Pt(C,{size:13}),s(v),x(c,v)};T(L,c=>{n(_)?c(fe):c(Ge,-1)})}var Ue=m(L,2),Ae=i(Ue),pt=i(Ae);{var ft=c=>{var v=Le("nodes");x(c,v)},vt=c=>{var v=Le("components");x(c,v)},mt=c=>{var v=Le("overview");x(c,v)};T(pt,c=>{n(k)?c(ft):n(_)?c(vt,1):c(mt,-1)})}s(Ae);var qe=m(Ae,2),gt=i(qe,!0);s(qe),s(Ue),s(pe);var Be=m(pe,2),Fe=i(Be),Je=m(Fe,2);{var bt=c=>{var v=xn(),C=j(v);Ne(C,{size:12,class:"shrink-0"});var E=m(C,2),ve=i(E,!0);s(E),I(Me=>{Qe(E,1,Me),y(ve,n(_).label)},[()=>Ke(["truncate rounded px-1.5 py-0.5 hover:bg-bg-2 hover:text-fg-1",n(_)&&!n(k)?"text-fg-0 bg-bg-2":""].join(" "))]),Y("click",E,()=>g(f,null)),x(c,v)};T(Je,c=>{n(_)&&c(bt)})}var xt=m(Je,2);{var ht=c=>{var v=hn(),C=j(v);Ne(C,{size:12,class:"shrink-0"});var E=m(C,2),ve=i(E,!0);s(E),I(()=>y(ve,n(k).label)),x(c,v)};T(xt,c=>{n(k)&&c(ht)})}s(Be),s(ue);var _t=m(ue,2);{var yt=c=>{var v=Sn(),C=i(v);{var E=O=>{var q=yn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(w).layers,Oe,(A,h)=>{var N=_n(),J=i(N),M=i(J),X=m(M,2),R=i(X),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H,!0);s(H),s(R);var oe=m(R,2),Re=i(oe);s(oe),s(X);var Te=m(X,2);Ne(Te,{size:14,class:"mt-1 shrink-0 text-fg-3"}),s(J),s(N),I((kt,Ct,St)=>{Bt(M,`background:${n(h).color};box-shadow:0 0 8px ${n(h).color}`),y(ge,n(h).label),y(be,kt),y(Re,`${Ct??""} · ${St??""}`)},[()=>P(n(h).componentCount,"component"),()=>P(n(h).nodeCount,"node"),()=>je(n(h))]),Y("click",N,()=>st(n(h))),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(w).layers.length,"group"),()=>P(n(o).model.nodes.length,"node")]),x(O,q)},ve=O=>{var q=wn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(_).components,Oe,(A,h)=>{var N=$n(),J=i(N),M=i(J),X=i(M);Yt(X,{size:14}),s(M);var R=m(M,2),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H);s(H),s(R);var oe=m(R,2);Ne(oe,{size:14,class:"mt-1 shrink-0 text-fg-3"}),s(J),s(N),I((Re,Te)=>{y(ge,n(h).label),y(be,`${Re??""} · ${Te??""}`)},[()=>P(n(h).nodeCount,"node"),()=>je(n(h))]),Y("click",N,()=>it(n(h))),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(_).components.length,"component"),()=>P(n(_).nodeCount,"node")]),x(O,q)},Me=O=>{var q=Cn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(k).nodes,Oe,(A,h)=>{var N=kn(),J=i(N),M=i(J),X=i(M);Kt(X,{size:13}),s(M);var R=m(M,2),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H);s(H),s(R),s(J),s(N),I(oe=>{y(ge,n(h).label),y(be,`${n(h).type??""} · degree ${oe??""} · ${n(h).id??""}`)},[()=>n(h).degree.toLocaleString()]),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(k).nodes.length,"node"),()=>je(n(k))]),x(O,q)};T(C,O=>{n(_)?n(k)?O(Me,-1):O(ve,1):O(E)})}s(v),x(c,v)};T(_t,c=>{n(w)&&c(yt)})}s(W);var He=m(W,2),$t=i(He);{var wt=c=>{var v=ae(),C=j(v);At(C,()=>n(tt),E=>{Ot(E,{get result(){return n(se)}})}),x(c,v)};T($t,c=>{n(se)&&c(wt)})}s(He),s(Se),I(c=>{var v,C;y(te,n(u)),y(ie,`${n(o).model.nodes.length??""} nodes · ${n(o).model.edges.length??""} edges`),y(gt,((v=n(k))==null?void 0:v.label)??((C=n(_))==null?void 0:C.label)??"Layers and communities"),Qe(Fe,1,c)},[()=>Ke(["truncate rounded px-1.5 py-0.5 hover:bg-bg-2 hover:text-fg-1",n(_)?"":"text-fg-0 bg-bg-2"].join(" "))]),Y("click",de,at),Y("click",Fe,we),x(d,b)},ut=d=>{var b=In(),z=i(b);Rt(z,{title:"Load a graph",message:"Render any contract-conformant graph.json — memory exports, codebase graphs, or graphify output — from a URL, a path, or a local file. No connection required.",get icon(){return Ye},actions:Ce=>{var Q=zn(),te=i(Q),ne=i(te),ie=i(ne);Tt(ie,{size:15,class:"absolute left-2.5 text-fg-3 pointer-events-none"});var le=m(ie,2);Ut(le),s(ne);var ce=m(ne,2),de=i(ce,!0);s(ce),s(te);var Z=m(te,4),Se=i(Z);Qt(Se,{size:15}),Ve(),s(Z);var W=m(Z,2);Jt(W,L=>g(D,L),()=>n(D));var ue=m(W,2);{var pe=L=>{var fe=Nn(),Ge=i(fe,!0);s(fe),I(()=>y(Ge,n(a))),x(L,fe)};T(ue,L=>{n(a)&&L(pe)})}s(Q),I(L=>{le.disabled=n(r),ce.disabled=L,y(de,n(r)?"Loading…":"Load"),Z.disabled=n(r)},[()=>n(r)||!n(p).trim()]),Gt("submit",te,ot),qt(le,()=>n(p),L=>g(p,L)),Y("click",Z,()=>{var L;return(L=n(D))==null?void 0:L.click()}),Y("change",W,rt),x(Ce,Q)}}),s(b),x(d,b)};T(ct,d=>{n(o)?d(dt):d(ut,-1)})}s(Ee),x(e,Ee),zt()}Et(["click","change"]);export{Bn as component};
96
+ */const r=[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["polyline",{points:"17 8 12 3 7 8"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15"}]];he(e,$e({name:"upload"},()=>o,{get iconNode(){return r},children:(a,u)=>{var l=ae(),f=j(l);_e(f,t,"default",{},null),x(a,l)},$$slots:{default:!0}}))}const ze=1;class $ extends Error{constructor(t){super(t),this.name="GraphContractError"}}function ee(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function K(e,t){for(const o of t){const r=e[o];if(r!=null&&r!=="")return r}}function Zt(e){const t=K(e,["version","schema_version","schemaVersion"]);if(typeof t!="string"||t.trim()==="")throw new $(`Graph export is missing a "version" string. This viewer supports the version ${ze}.x contract.`);const o=Number.parseInt(t.split(".")[0]??"",10);if(!Number.isFinite(o))throw new $(`Graph export declares an unparseable version "${t}". This viewer supports version ${ze}.x.`);if(o!==ze)throw new $(`Unsupported graph export version "${t}". This viewer supports version ${ze}.x.`);return t}function Wt(e,t){if(!ee(e))throw new $(`Graph node at index ${t} is not an object.`);const o=K(e,["id","rid","_id","uid"]);if(o===void 0)throw new $(`Graph node at index ${t} is missing the required "id" field.`);const r=String(o),a=K(e,["label","name","title"]),u=K(e,["type","node_type","kind"]),l=e.community;return{id:r,label:a!==void 0?String(a):r,type:u!==void 0?String(u):void 0,community:typeof l=="number"?l:void 0,data:e}}function Xt(e,t){if(!ee(e))throw new $(`Graph edge at index ${t} is not an object.`);const o=K(e,["source","from","src","start","from_rid"]);if(o===void 0)throw new $(`Graph edge at index ${t} is missing the required "source" field.`);const r=K(e,["target","to","dst","end","to_rid"]);if(r===void 0)throw new $(`Graph edge at index ${t} is missing the required "target" field.`);const a=K(e,["kind","type","label","rel"]),u=String(o),l=String(r),f=K(e,["id","rid"]);return{id:f!==void 0?String(f):`${u}->${l}:${a??""}#${t}`,source:u,target:l,type:a!==void 0?String(a):void 0,data:e}}function en(e){if(e==null)return[];if(!Array.isArray(e))throw new $('Graph export "communities" must be an array when present.');return e.map((t,o)=>{if(!ee(t))throw new $(`Community at index ${o} is not an object.`);if(typeof t.id!="number")throw new $(`Community at index ${o} is missing a numeric "id".`);const r=t.id;return{id:r,label:typeof t.label=="string"?t.label:`Community ${r}`,color:typeof t.color=="string"?t.color:Ft(r),size:typeof t.size=="number"?t.size:0}})}function tn(e,t){const o={};for(const a of e)o[a.id]={...a.data,id:a.id,label:a.label,...a.type!==void 0?{node_type:a.type}:{}};const r={};for(const a of t)r[a.id]={...a.data,source:a.source,target:a.target,...a.type!==void 0?{type:a.type}:{}};return{ok:!0,query:"",capability:"graph",record_count:e.length+t.length,result:{columns:["nodes","edges"],records:[{values:{},nodes:o,edges:r}]}}}function nn(e){if(!ee(e))throw new $('Graph export must be a JSON object with "version" and graph data.');const t=ee(e.contract)?e.contract:null,o=Zt(t??e),r=t??(ee(e.graph)?e.graph:e),a=r.nodes,u=r.edges;if(!Array.isArray(a))throw new $('Graph export "nodes" must be an array.');if(!Array.isArray(u))throw new $('Graph export "edges" must be an array.');const l=a.map(Wt),f=u.map(Xt),p=en(e.communities??r.communities);return{version:o,model:{nodes:l,edges:f,communities:p},result:tn(l,f),meta:ee(e.meta)?e.meta:{}}}function Xe(e){let t;try{t=JSON.parse(e)}catch(o){const r=o instanceof Error?o.message:String(o);throw new $(`Graph export is not valid JSON: ${r}`)}return nn(t)}async function on(e,t={}){const o=t.fetch??globalThis.fetch;if(typeof o!="function")throw new $("No fetch implementation available to load the graph.");let r;try{r=await o(e)}catch(u){const l=u instanceof Error?u.message:String(u);throw new $(`Failed to fetch graph from "${e}": ${l}`)}if(!r.ok)throw new $(`Failed to load graph from "${e}": HTTP ${r.status} ${r.statusText}`.trim());const a=await r.text();return Xe(a)}const rn=["layer","layer_name","layerName","layer_id","layerId","domain","namespace"],an=["community","community_name","communityName","community_id","communityId"],sn=["component","component_name","componentName","component_id","componentId","package","module","service","collection","file","path"],et={id:"unassigned",label:"Unassigned",color:"#94a3b8"},ln=/^(#[0-9a-f]{3,8}|rgba?\([\d\s.,%+-]+\)|hsla?\([\d\s.,%+-]+\)|oklch\([\d\s.%+-]+(?:\/\s*[\d.]+%?)?\))$/i;function cn(e){const t=e.trim();return ln.test(t)?t:et.color}function xe(e,t){for(const o of t){const r=e[o];if(!(r==null||r==="")&&(typeof r=="string"||typeof r=="number"))return String(r)}return null}function Ie(e,t){return`${e}:${t.toLowerCase().replace(/[^a-z0-9._:/-]+/g,"-")}`}function dn(e){return new Map(e.communities.map(t=>[t.id,{label:t.label,color:cn(t.color)}]))}function un(e,t){const o=xe(e.data,rn);if(o)return{id:Ie("layer",o),label:o,color:"#94a3b8"};if(typeof e.community=="number"){const a=t.get(e.community);return{id:`community:${e.community}`,label:(a==null?void 0:a.label)??`Community ${e.community}`,color:(a==null?void 0:a.color)??"#94a3b8"}}const r=xe(e.data,an);return r?{id:Ie("community",r),label:r,color:"#94a3b8"}:et}function pn(e){const t=xe(e.data,sn);if(t)return{id:Ie("component",t),label:t};const o=e.type??xe(e.data,["node_type","kind"]);return o?{id:Ie("type",o),label:`${o} nodes`}:{id:"component:unassigned",label:"Unassigned"}}function Ze(e,t){let o=0,r=0,a=0;for(const u of t){const l=e.has(u.source),f=e.has(u.target);!l&&!f||(o+=1,l&&f?r+=1:a+=1)}return{connectionCount:o,internalConnectionCount:r,externalConnectionCount:a}}function fn(e,t){let o=0,r=0;for(const a of t)a.source===e.id&&(r+=1),a.target===e.id&&(o+=1);return{id:e.id,label:e.label,type:e.type??xe(e.data,["node_type","kind"])??"node",degree:o+r,incoming:o,outgoing:r}}function We(e,t){const o=t.nodeCount-e.nodeCount;if(o!==0)return o;const r=t.connectionCount-e.connectionCount;if(r!==0)return r;const a=e.label.localeCompare(t.label);return a!==0?a:e.id.localeCompare(t.id)}function vn(e){const t=dn(e),o=new Map;for(const a of e.nodes){const u=un(a,t),l=o.get(u.id);l?l.nodes.push(a):o.set(u.id,{...u,nodes:[a]})}return{layers:[...o.values()].map(a=>{const u=a.nodes.map(w=>w.id),l=new Set(u),f=Ze(l,e.edges),p=new Map;for(const w of a.nodes){const _=pn(w),C=p.get(_.id);C?C.nodes.push(w):p.set(_.id,{..._,nodes:[w]})}const D=[...p.values()].map(w=>{const _=w.nodes.map(U=>U.id),C=Ze(new Set(_),e.edges);return{id:w.id,label:w.label,nodeCount:w.nodes.length,nodeIds:_,nodes:w.nodes.map(U=>fn(U,e.edges)).sort((U,se)=>se.degree-U.degree||U.label.localeCompare(se.label)),...C}}).sort(We);return{id:a.id,label:a.label,color:a.color,nodeCount:a.nodes.length,componentCount:D.length,nodeIds:u,components:D,...f}}).sort(We)}}function mn(e,t){const o=t===null?null:new Set(t),r=o?e.nodes.filter(p=>o.has(p.id)):e.nodes,a=new Set(r.map(p=>p.id)),u=e.edges.filter(p=>a.has(p.source)&&a.has(p.target)),l={};for(const p of r)l[p.id]={...p.data,id:p.id,label:p.label,...p.type!==void 0?{node_type:p.type}:{}};const f={};for(const p of u)f[p.id]={...p.data,source:p.source,target:p.target,...p.type!==void 0?{type:p.type}:{}};return{ok:!0,query:"",capability:"graph",record_count:r.length+u.length,result:{columns:["nodes","edges"],records:[{values:{},nodes:l,edges:f}]}}}var gn=S('<button type="button" aria-label="Back" class="inline-flex size-6 items-center justify-center rounded border border-line-1 text-fg-3 hover:border-line-2 hover:text-fg-1"><!></button>'),bn=S('<span class="inline-flex size-6 items-center justify-center rounded border border-line-1 text-fg-3"><!></span>'),xn=S('<!> <button type="button"> </button>',1),hn=S('<!> <span class="truncate rounded bg-bg-2 px-1.5 py-0.5 text-fg-0"> </span>',1),_n=S('<button type="button" class="w-full px-3 py-2.5 text-left hover:bg-bg-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40"><div class="flex items-start gap-2.5"><span class="mt-1.5 size-2 rounded-full shrink-0"></span> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-[13px] font-medium text-fg-0"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></span> <span class="mt-1 block font-mono text-[11px] text-fg-3"> </span></span> <!></div></button>'),yn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),$n=S('<button type="button" class="w-full px-3 py-2.5 text-left hover:bg-bg-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40"><div class="flex items-start gap-2.5"><span class="mt-1 text-fg-3"><!></span> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-fg-0"> </span> <span class="mt-1 block font-mono text-[11px] text-fg-3"> </span></span> <!></div></button>'),wn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),Cn=S('<div class="px-3 py-2.5"><div class="flex items-start gap-2.5"><span class="mt-1 text-fg-3"><!></span> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-fg-0"> </span> <span class="mt-1 block truncate font-mono text-[11px] text-fg-3"> </span></span></div></div>'),kn=S('<div class="px-3 py-2 text-[11px] font-mono text-fg-3 border-b border-line-1"> </div> <div class="divide-y divide-line-1"></div>',1),Sn=S('<div class="flex-1 min-h-0 overflow-auto"><!></div>'),Ln=S('<div class="flex items-center justify-between gap-4 px-3 py-2 border-b border-line-1 bg-bg-1 shrink-0"><span class="flex items-center gap-2 min-w-0 text-fg-2 text-[13px]"><!> <span class="font-mono text-fg-1 truncate max-w-[38vw]"> </span> <span class="text-fg-3 whitespace-nowrap"> <!></span></span> <button type="button" class="flex items-center gap-1.5 px-3 py-1.5 rounded-md border border-line-1 text-fg-2 text-[12px] hover:border-fg-3 hover:text-fg-1"><!> Load another</button></div> <div class="flex-1 min-h-0 flex"><aside class="w-[min(320px,48vw)] shrink-0 border-r border-line-1 bg-bg-1/80 flex flex-col min-h-0"><div class="px-3 py-2 border-b border-line-1"><div class="flex items-center gap-2 text-fg-1"><!> <div class="min-w-0"><div class="type-label"><!></div> <div class="truncate text-[12px] font-medium text-fg-0"> </div></div></div> <nav class="mt-2 flex min-w-0 items-center gap-1 text-[11px] font-mono text-fg-3"><button type="button">overview</button> <!> <!></nav></div> <!></aside> <div class="flex-1 min-w-0"><!></div></div>',1),Nn=S('<p class="m-0 px-3 py-2 rounded-md text-accent text-[12px] leading-relaxed border border-accent/35 bg-accent/10"> </p>'),zn=S('<div class="flex flex-col gap-3 w-[min(34rem,90vw)] text-left"><form class="flex gap-2"><div class="relative flex-1 flex items-center"><!> <input class="w-full pl-8 pr-2.5 py-2 bg-bg-2 border border-line-1 rounded-md text-fg-1 text-[13px] font-mono focus:outline-none focus:border-accent" type="text" placeholder="https://host/graph.json or /exports/memory.json" spellcheck="false" autocapitalize="off" autocorrect="off"/></div> <button class="px-4 py-2 bg-accent text-white rounded-md text-[13px] font-medium whitespace-nowrap disabled:opacity-50" type="submit"> </button></form> <div class="flex items-center gap-2 text-fg-3 text-[11px] uppercase tracking-wide"><span class="flex-1 h-px bg-line-1"></span> or <span class="flex-1 h-px bg-line-1"></span></div> <button type="button" class="flex items-center justify-center gap-2 px-3 py-2 bg-bg-2 border border-line-1 rounded-md text-fg-1 text-[13px] hover:border-fg-3 disabled:opacity-50"><!> Choose a local graph.json</button> <input type="file" accept="application/json,.json" class="hidden"/> <!></div>'),In=S('<div class="flex items-center justify-center h-full w-full p-8"><!></div>'),jn=S('<div class="flex h-screen w-full flex-col"><!></div>');function Bn(e,t){Nt(t,!0);let o=V(null),r=V(!1),a=V(null),u=V(null),l=V(null),f=V(null),p=V(""),D=V(null);const w=re(()=>n(o)?vn(n(o).model):null),_=re(()=>{var d;return n(l)?(d=n(w))==null?void 0:d.layers.find(b=>b.id===n(l)):void 0}),C=re(()=>{var d;return n(f)?(d=n(_))==null?void 0:d.components.find(b=>b.id===n(f)):void 0}),U=re(()=>n(C)?n(C).nodeIds:n(_)?n(_).nodeIds:null),se=re(()=>n(o)?mn(n(o).model,n(U)):null),tt=re(()=>`${n(u)??"graph"}:${n(l)??"overview"}:${n(f)??"all"}`);async function De(d){const b=d.trim();if(b){g(r,!0),g(a,null);try{g(o,await on(b,{fetch}),!0),g(u,b,!0),we()}catch(z){g(o,null),g(a,z instanceof Error?z.message:String(z),!0)}finally{g(r,!1)}}}async function nt(d){g(r,!0),g(a,null);try{g(o,Xe(await d.text()),!0),g(u,d.name,!0),we()}catch(b){g(o,null),g(a,b instanceof Error?b.message:String(b),!0)}finally{g(r,!1)}}function ot(d){d.preventDefault(),De(n(p))}function rt(d){var z;const b=(z=d.target.files)==null?void 0:z[0];b&&nt(b)}function at(){g(o,null),g(a,null),g(u,null),g(p,""),we(),n(D)&&(n(D).value="")}function we(){g(l,null),g(f,null)}function st(d){g(l,d.id,!0),g(f,null)}function it(d){g(f,d.id,!0)}function lt(){if(n(f)){g(f,null);return}g(l,null)}function P(d,b){return`${d.toLocaleString()} ${b}${d===1?"":"s"}`}function je(d){const b=P(d.connectionCount,"connection");return d.externalConnectionCount===0?b:`${b} · ${d.externalConnectionCount.toLocaleString()} external`}Lt(()=>{const d=Ht.url.searchParams.get("src");d&&(g(p,d,!0),De(d))});var Ee=jn();Dt("315y67",d=>{It(()=>{jt.title="Load graph · red-ui"})});var ct=i(Ee);{var dt=d=>{var b=Ln(),z=j(b),Ce=i(z),ke=i(Ce);Ye(ke,{size:14});var Q=m(ke,2),te=i(Q,!0);s(Q);var ne=m(Q,2),ie=i(ne),le=m(ie);{var ce=c=>{var v=Le();I(()=>y(v,`· ${n(o).model.communities.length??""} communities`)),x(c,v)};T(le,c=>{n(o).model.communities.length&&c(ce)})}s(ne),s(Ce);var de=m(Ce,2),Z=i(de);Mt(Z,{size:13}),Ve(),s(de),s(z);var Se=m(z,2),W=i(Se),ue=i(W),pe=i(ue),L=i(pe);{var fe=c=>{var v=gn(),k=i(v);Vt(k,{size:13}),s(v),Y("click",v,lt),x(c,v)},Ge=c=>{var v=bn(),k=i(v);Pt(k,{size:13}),s(v),x(c,v)};T(L,c=>{n(_)?c(fe):c(Ge,-1)})}var Ue=m(L,2),Ae=i(Ue),pt=i(Ae);{var ft=c=>{var v=Le("nodes");x(c,v)},vt=c=>{var v=Le("components");x(c,v)},mt=c=>{var v=Le("overview");x(c,v)};T(pt,c=>{n(C)?c(ft):n(_)?c(vt,1):c(mt,-1)})}s(Ae);var qe=m(Ae,2),gt=i(qe,!0);s(qe),s(Ue),s(pe);var Be=m(pe,2),Fe=i(Be),Je=m(Fe,2);{var bt=c=>{var v=xn(),k=j(v);Ne(k,{size:12,class:"shrink-0"});var E=m(k,2),ve=i(E,!0);s(E),I(Me=>{Qe(E,1,Me),y(ve,n(_).label)},[()=>Ke(["truncate rounded px-1.5 py-0.5 hover:bg-bg-2 hover:text-fg-1",n(_)&&!n(C)?"text-fg-0 bg-bg-2":""].join(" "))]),Y("click",E,()=>g(f,null)),x(c,v)};T(Je,c=>{n(_)&&c(bt)})}var xt=m(Je,2);{var ht=c=>{var v=hn(),k=j(v);Ne(k,{size:12,class:"shrink-0"});var E=m(k,2),ve=i(E,!0);s(E),I(()=>y(ve,n(C).label)),x(c,v)};T(xt,c=>{n(C)&&c(ht)})}s(Be),s(ue);var _t=m(ue,2);{var yt=c=>{var v=Sn(),k=i(v);{var E=O=>{var q=yn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(w).layers,Oe,(A,h)=>{var N=_n(),J=i(N),M=i(J),X=m(M,2),R=i(X),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H,!0);s(H),s(R);var oe=m(R,2),Re=i(oe);s(oe),s(X);var Te=m(X,2);Ne(Te,{size:14,class:"mt-1 shrink-0 text-fg-3"}),s(J),s(N),I((Ct,kt,St)=>{Bt(M,`background:${n(h).color};box-shadow:0 0 8px ${n(h).color}`),y(ge,n(h).label),y(be,Ct),y(Re,`${kt??""} · ${St??""}`)},[()=>P(n(h).componentCount,"component"),()=>P(n(h).nodeCount,"node"),()=>je(n(h))]),Y("click",N,()=>st(n(h))),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(w).layers.length,"group"),()=>P(n(o).model.nodes.length,"node")]),x(O,q)},ve=O=>{var q=wn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(_).components,Oe,(A,h)=>{var N=$n(),J=i(N),M=i(J),X=i(M);Yt(X,{size:14}),s(M);var R=m(M,2),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H);s(H),s(R);var oe=m(R,2);Ne(oe,{size:14,class:"mt-1 shrink-0 text-fg-3"}),s(J),s(N),I((Re,Te)=>{y(ge,n(h).label),y(be,`${Re??""} · ${Te??""}`)},[()=>P(n(h).nodeCount,"node"),()=>je(n(h))]),Y("click",N,()=>it(n(h))),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(_).components.length,"component"),()=>P(n(_).nodeCount,"node")]),x(O,q)},Me=O=>{var q=kn(),G=j(q),me=i(G);s(G);var B=m(G,2);Pe(B,21,()=>n(C).nodes,Oe,(A,h)=>{var N=Cn(),J=i(N),M=i(J),X=i(M);Kt(X,{size:13}),s(M);var R=m(M,2),F=i(R),ge=i(F,!0);s(F);var H=m(F,2),be=i(H);s(H),s(R),s(J),s(N),I(oe=>{y(ge,n(h).label),y(be,`${n(h).type??""} · degree ${oe??""} · ${n(h).id??""}`)},[()=>n(h).degree.toLocaleString()]),x(A,N)}),s(B),I((A,h)=>y(me,`${A??""} · ${h??""}`),[()=>P(n(C).nodes.length,"node"),()=>je(n(C))]),x(O,q)};T(k,O=>{n(_)?n(C)?O(Me,-1):O(ve,1):O(E)})}s(v),x(c,v)};T(_t,c=>{n(w)&&c(yt)})}s(W);var He=m(W,2),$t=i(He);{var wt=c=>{var v=ae(),k=j(v);At(k,()=>n(tt),E=>{Ot(E,{get result(){return n(se)}})}),x(c,v)};T($t,c=>{n(se)&&c(wt)})}s(He),s(Se),I(c=>{var v,k;y(te,n(u)),y(ie,`${n(o).model.nodes.length??""} nodes · ${n(o).model.edges.length??""} edges`),y(gt,((v=n(C))==null?void 0:v.label)??((k=n(_))==null?void 0:k.label)??"Layers and communities"),Qe(Fe,1,c)},[()=>Ke(["truncate rounded px-1.5 py-0.5 hover:bg-bg-2 hover:text-fg-1",n(_)?"":"text-fg-0 bg-bg-2"].join(" "))]),Y("click",de,at),Y("click",Fe,we),x(d,b)},ut=d=>{var b=In(),z=i(b);Rt(z,{title:"Load a graph",message:"Render any contract-conformant graph.json — memory exports, codebase graphs, or graphify output — from a URL, a path, or a local file. No connection required.",get icon(){return Ye},actions:ke=>{var Q=zn(),te=i(Q),ne=i(te),ie=i(ne);Tt(ie,{size:15,class:"absolute left-2.5 text-fg-3 pointer-events-none"});var le=m(ie,2);Ut(le),s(ne);var ce=m(ne,2),de=i(ce,!0);s(ce),s(te);var Z=m(te,4),Se=i(Z);Qt(Se,{size:15}),Ve(),s(Z);var W=m(Z,2);Jt(W,L=>g(D,L),()=>n(D));var ue=m(W,2);{var pe=L=>{var fe=Nn(),Ge=i(fe,!0);s(fe),I(()=>y(Ge,n(a))),x(L,fe)};T(ue,L=>{n(a)&&L(pe)})}s(Q),I(L=>{le.disabled=n(r),ce.disabled=L,y(de,n(r)?"Loading…":"Load"),Z.disabled=n(r)},[()=>n(r)||!n(p).trim()]),Gt("submit",te,ot),qt(le,()=>n(p),L=>g(p,L)),Y("click",Z,()=>{var L;return(L=n(D))==null?void 0:L.click()}),Y("change",W,rt),x(ke,Q)}}),s(b),x(d,b)};T(ct,d=>{n(o)?d(dt):d(ut,-1)})}s(Ee),x(e,Ee),zt()}Et(["click","change"]);export{Bn as component};