@marimo-team/frontend 0.13.8-dev7 → 0.13.8-dev8

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 (89) hide show
  1. package/dist/assets/{ConnectedDataExplorerComponent-tRswAOcH.js → ConnectedDataExplorerComponent-DmFHsmd7.js} +1 -1
  2. package/dist/assets/{VegaLite-CFx00sbr.js → VegaLite-DAfj0Cc2.js} +1 -1
  3. package/dist/assets/{_baseEach-9ix_BC03.js → _baseEach-CeieKYHo.js} +1 -1
  4. package/dist/assets/_baseMap-CJymCcqn.js +1 -0
  5. package/dist/assets/{_baseUniq-CAc6RKGX.js → _baseUniq-V9TCLwLc.js} +1 -1
  6. package/dist/assets/{_createAggregator-CwwHl9YW.js → _createAggregator-DEnNrI3B.js} +1 -1
  7. package/dist/assets/{any-language-editor-DLJAK0HX.js → any-language-editor-CAdxHJE0.js} +1 -1
  8. package/dist/assets/{architectureDiagram-IEHRJDOE-Bu6IOBlR.js → architectureDiagram-IEHRJDOE-BUBVsY1I.js} +1 -1
  9. package/dist/assets/{blockDiagram-JOT3LUYC-DXM7QxJu.js → blockDiagram-JOT3LUYC-CwZVj_qI.js} +1 -1
  10. package/dist/assets/{c4Diagram-VJAJSXHY-NGT1MIq-.js → c4Diagram-VJAJSXHY-D--bSzuI.js} +1 -1
  11. package/dist/assets/channel-6wVtAafb.js +1 -0
  12. package/dist/assets/{chunk-4BMEZGHF-BlotxOg1.js → chunk-4BMEZGHF-DPj_kFqe.js} +1 -1
  13. package/dist/assets/{chunk-A2AXSNBT-BWaRt59m.js → chunk-A2AXSNBT-CopQ_6xr.js} +1 -1
  14. package/dist/assets/{chunk-AEK57VVT-BMFLCsWK.js → chunk-AEK57VVT-DFzNnb-Q.js} +1 -1
  15. package/dist/assets/{chunk-D6G4REZN-BG39MymC.js → chunk-D6G4REZN-DEz7cukf.js} +1 -1
  16. package/dist/assets/{chunk-RZ5BOZE2-C3C9R8MQ.js → chunk-RZ5BOZE2-Dqx-NMbh.js} +1 -1
  17. package/dist/assets/{chunk-XZIHB7SX-BNZQaGta.js → chunk-XZIHB7SX-U4GGVDHj.js} +1 -1
  18. package/dist/assets/{circle-play-B_LTUBNL.js → circle-play-vz70VEyV.js} +1 -1
  19. package/dist/assets/classDiagram-GIVACNV2-02CJiCae.js +1 -0
  20. package/dist/assets/classDiagram-v2-COTLJTTW-02CJiCae.js +1 -0
  21. package/dist/assets/clone-P_mSE6qS.js +1 -0
  22. package/dist/assets/{compile-B8JHGdFR.js → compile-Cg21TymY.js} +1 -1
  23. package/dist/assets/{dagre-OKDRZEBW-BMyZF1Jw.js → dagre-OKDRZEBW-BdB5oQOT.js} +1 -1
  24. package/dist/assets/{data-editor-DIVqbVSk.js → data-editor-CYTs9dny.js} +1 -1
  25. package/dist/assets/{diagram-SSKATNLV-BmMXwHFM.js → diagram-SSKATNLV-DgKChBer.js} +1 -1
  26. package/dist/assets/{diagram-VNBRO52H-1GizFVBj.js → diagram-VNBRO52H-DZ0Iwn9T.js} +1 -1
  27. package/dist/assets/{edit-page-B19lrsaw.js → edit-page-CRCjocMS.js} +5 -5
  28. package/dist/assets/{erDiagram-Q7BY3M3F-BriHOQjQ.js → erDiagram-Q7BY3M3F-Dd7LI3O_.js} +1 -1
  29. package/dist/assets/{flowDiagram-4HSFHLVR-B0ZFVz-s.js → flowDiagram-4HSFHLVR-BqMwK7fR.js} +1 -1
  30. package/dist/assets/{ganttDiagram-APWFNJXF-CySr7oLb.js → ganttDiagram-APWFNJXF-BoivCVsU.js} +1 -1
  31. package/dist/assets/{gitGraphDiagram-7IBYFJ6S-DtMtyKLb.js → gitGraphDiagram-7IBYFJ6S-CewGfHV-.js} +1 -1
  32. package/dist/assets/{graph-VvRd119J.js → graph-0Be_VN40.js} +1 -1
  33. package/dist/assets/{home-page-DhLPU9pc.js → home-page-D7pO4vFh.js} +1 -1
  34. package/dist/assets/{index-C4Zr3viS.js → index-B2cID-pn.js} +1 -1
  35. package/dist/assets/{index-CT2A9Hn9.js → index-BMGr0oV_.js} +1 -1
  36. package/dist/assets/{index-YCAi57LT.js → index-BuwFjc5_.js} +1 -1
  37. package/dist/assets/{index-B-_NVy7m.js → index-C0on-X4j.js} +1 -1
  38. package/dist/assets/{index-D47psS1_.js → index-C5-GdsNM.js} +1 -1
  39. package/dist/assets/{index-Dx9gn_FG.js → index-CM0XFOUa.js} +1 -1
  40. package/dist/assets/{index-CmG9MrOr.js → index-CMLOU_BO.js} +1 -1
  41. package/dist/assets/{index-1nyzSR19.js → index-CN35jd1e.js} +1 -1
  42. package/dist/assets/{index-qbBE-iiM.js → index-CSE1l0xK.js} +13 -13
  43. package/dist/assets/{index-BVXhpCHs.js → index-CV408jAY.js} +1 -1
  44. package/dist/assets/{index-CYV3BkfM.js → index-Cbo9OYyr.js} +1 -1
  45. package/dist/assets/{index-3rQYWVHF.js → index-CkDokV2s.js} +1 -1
  46. package/dist/assets/{index-DvlRlxR8.js → index-D4EEX5uX.js} +1 -1
  47. package/dist/assets/{index-A1gwAZJG.js → index-DIT4-EJ1.js} +1 -1
  48. package/dist/assets/{index-DhQS35jj.js → index-DgXHiIZT.js} +1 -1
  49. package/dist/assets/{index-Cw4-8Jo7.js → index-Dj-4onwb.js} +1 -1
  50. package/dist/assets/{index-BizZsrzV.js → index-EZsw_jbT.js} +1 -1
  51. package/dist/assets/{index-CFwA74aq.js → index-i2xlW6C6.js} +1 -1
  52. package/dist/assets/{index-yw2RaMvU.js → index-vUrqgDgs.js} +1 -1
  53. package/dist/assets/infoDiagram-PH2N3AL5-6S6X4zC3.js +2 -0
  54. package/dist/assets/{journeyDiagram-U35MCT3I-rrj1hvUI.js → journeyDiagram-U35MCT3I-Dbi8MuAo.js} +1 -1
  55. package/dist/assets/{kanban-definition-NDS4AKOZ-q_uIrAby.js → kanban-definition-NDS4AKOZ-nzwRaJDj.js} +1 -1
  56. package/dist/assets/{layout-BThYhAsu.js → layout-CKLhmwbe.js} +1 -1
  57. package/dist/assets/{linear-BsUxYFbe.js → linear-Dhb4rgSN.js} +1 -1
  58. package/dist/assets/{mermaid-MYM7EKyT.js → mermaid-Cj8iTY32.js} +4 -4
  59. package/dist/assets/{min-C2RPk2J2.js → min-B9ZWeo3O.js} +1 -1
  60. package/dist/assets/{mindmap-definition-ALO5MXBD-BjC6wdzr.js → mindmap-definition-ALO5MXBD-DyYK69Zo.js} +1 -1
  61. package/dist/assets/{pieDiagram-IB7DONF6-CZo46217.js → pieDiagram-IB7DONF6-D0uwYuRO.js} +1 -1
  62. package/dist/assets/{quadrantDiagram-7GDLP6J5-DNIFVnnX.js → quadrantDiagram-7GDLP6J5-Bv-WEDdz.js} +1 -1
  63. package/dist/assets/{radar-MK3ICKWK-DsmviwW3.js → radar-MK3ICKWK-CfePAbPF.js} +1 -1
  64. package/dist/assets/{react-plotly-sVMdA0mT.js → react-plotly-DGnh3DNI.js} +1 -1
  65. package/dist/assets/{requirementDiagram-KVF5MWMF-mVTDIS61.js → requirementDiagram-KVF5MWMF-BouIVpZJ.js} +1 -1
  66. package/dist/assets/{run-page-BViSheME.js → run-page-B-bgtw2l.js} +1 -1
  67. package/dist/assets/{sankeyDiagram-QLVOVGJD-w78oDwtf.js → sankeyDiagram-QLVOVGJD-D9kEFgSb.js} +1 -1
  68. package/dist/assets/{sequenceDiagram-X6HHIX6F-DdTAnSK1.js → sequenceDiagram-X6HHIX6F-BG1CbWF4.js} +1 -1
  69. package/dist/assets/{slides-component-Ca-l5jVZ.js → slides-component-CEnRk5G9.js} +1 -1
  70. package/dist/assets/{sortBy-CDNYssum.js → sortBy-BPwT3VFi.js} +1 -1
  71. package/dist/assets/{stateDiagram-DGXRK772-C6Xi4b_i.js → stateDiagram-DGXRK772-BqCpjtS9.js} +1 -1
  72. package/dist/assets/stateDiagram-v2-YXO3MK2T-qKSf-p23.js +1 -0
  73. package/dist/assets/{terminal-BRjpW5WO.js → terminal-C-Ph3RUO.js} +1 -1
  74. package/dist/assets/{time-DmxLhhdw.js → time-BovHLFQk.js} +1 -1
  75. package/dist/assets/{timeline-definition-BDJGKUSR-CRbDYPEj.js → timeline-definition-BDJGKUSR-1zPl7U7c.js} +1 -1
  76. package/dist/assets/{tracing-B3etNkK-.js → tracing-BlSgtDl7.js} +2 -2
  77. package/dist/assets/{tree-AkpVM_5R.js → tree-D1piYkPA.js} +1 -1
  78. package/dist/assets/{useMarimoWebSocket-CbCoIj6h.js → useMarimoWebSocket-DBY68Cc9.js} +3 -3
  79. package/dist/assets/{vega-component-Cso4-77L.js → vega-component-CO2pXY2s.js} +1 -1
  80. package/dist/assets/{xychartDiagram-VJFVF3MP-_2fuh0dM.js → xychartDiagram-VJFVF3MP-DSGOPuEK.js} +1 -1
  81. package/dist/index.html +1 -1
  82. package/package.json +1 -1
  83. package/dist/assets/_baseMap-BgNlcTmm.js +0 -1
  84. package/dist/assets/channel-Zq-5KaaB.js +0 -1
  85. package/dist/assets/classDiagram-GIVACNV2-DEm5wjs4.js +0 -1
  86. package/dist/assets/classDiagram-v2-COTLJTTW-DEm5wjs4.js +0 -1
  87. package/dist/assets/clone-V1ft-Cma.js +0 -1
  88. package/dist/assets/infoDiagram-PH2N3AL5-B7zGCLeH.js +0 -2
  89. package/dist/assets/stateDiagram-v2-YXO3MK2T-QfdUNLlh.js +0 -1
@@ -1,4 +1,4 @@
1
- import{_ as m,aa as M,ab as L,ac as Y,ad as j,l as i,c as H,ae as _,af as $,$ as q,a4 as z,a0 as O,Y as K,ag as Q,ah as U,ai as V}from"./mermaid-MYM7EKyT.js";import{G}from"./graph-VvRd119J.js";import{l as W}from"./layout-BThYhAsu.js";import{i as x}from"./_baseUniq-CAc6RKGX.js";import{c as Z}from"./clone-V1ft-Cma.js";import{m as k}from"./min-C2RPk2J2.js";import"./index-qbBE-iiM.js";import"./transform-Cyp0GDF-.js";import"./timer-DFzT7np-.js";import"./step-BwsUM5iJ.js";import"./_baseEach-9ix_BC03.js";import"./sortBy-CDNYssum.js";import"./_baseMap-BgNlcTmm.js";function X(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ee(e),edges:te(e)};return x(e.graph())||(r.value=Z(e.graph())),r}function ee(e){return k(e.nodes(),function(r){var t=e.node(r),o=e.parent(r),d={v:r};return x(t)||(d.value=t),x(o)||(d.parent=o),d})}function te(e){return k(e.edges(),function(r){var t=e.edge(r),o={v:r.v,w:r.w};return x(r.name)||(o.name=r.name),x(t)||(o.value=t),o})}var l=new Map,b=new Map,P=new Map,re=m(()=>{b.clear(),P.clear(),l.clear()},"clear"),D=m((e,r)=>{const t=b.get(r)||[];return i.trace("In isDescendant",r," ",e," = ",t.includes(e)),t.includes(e)},"isDescendant"),ne=m((e,r)=>{const t=b.get(r)||[];return i.info("Descendants of ",r," is ",t),i.info("Edge is ",e),e.v!==r&&e.w!==r&&(t?t.includes(e.v)||D(e.v,r)||D(e.w,r)||t.includes(e.w):(i.debug("Tilt, ",r,",not in descendants"),!1))},"edgeInCluster"),B=m((e,r,t,o)=>{i.warn("Copying children of ",e,"root",o,"data",r.node(e),o);const d=r.children(e)||[];e!==o&&d.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",d),d.forEach(s=>{if(r.children(s).length>0)B(s,r,t,o);else{const a=r.node(s);i.info("cp ",s," to ",o," with parent ",e),t.setNode(s,a),o!==r.parent(s)&&(i.warn("Setting parent",s,r.parent(s)),t.setParent(s,r.parent(s))),e!==o&&s!==e?(i.debug("Setting parent",s,e),t.setParent(s,e)):(i.info("In copy ",e,"root",o,"data",r.node(e),o),i.debug("Not Setting parent for node=",s,"cluster!==rootId",e!==o,"node!==clusterId",s!==e));const c=r.edges(s);i.debug("Copying Edges",c),c.forEach(f=>{i.info("Edge",f);const E=r.edge(f.v,f.w,f.name);i.info("Edge data",E,o);try{ne(f,o)?(i.info("Copying as ",f.v,f.w,E,f.name),t.setEdge(f.v,f.w,E,f.name),i.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]))):i.info("Skipping copy of edge ",f.v,"-->",f.w," rootId: ",o," clusterId:",e)}catch(C){i.error(C)}})}i.debug("Removing node",s),r.removeNode(s)})},"copy"),J=m((e,r)=>{const t=r.children(e);let o=[...t];for(const d of t)P.set(d,e),o=[...o,...J(d,r)];return o},"extractDescendants"),ie=m((e,r,t)=>{const o=e.edges().filter(c=>c.v===r||c.w===r),d=e.edges().filter(c=>c.v===t||c.w===t),s=o.map(c=>({v:c.v===r?t:c.v,w:c.w===r?r:c.w})),a=d.map(c=>({v:c.v,w:c.w}));return s.filter(c=>a.some(f=>c.v===f.v&&c.w===f.w))},"findCommonEdges"),I=m((e,r,t)=>{const o=r.children(e);if(i.trace("Searching children of id ",e,o),o.length<1)return e;let d;for(const s of o){const a=I(s,r,t),c=ie(r,t,a);if(a){if(!(c.length>0))return a;d=a}}return d},"findNonClusterChild"),A=m(e=>l.has(e)&&l.get(e).externalConnections&&l.has(e)?l.get(e).id:e,"getAnchorId"),ae=m((e,r)=>{if(!e||r>10)i.debug("Opting out, no graph ");else{i.debug("Opting in, graph "),e.nodes().forEach(function(t){e.children(t).length>0&&(i.warn("Cluster identified",t," Replacement id in edges: ",I(t,e,t)),b.set(t,J(t,e)),l.set(t,{id:I(t,e,t),clusterData:e.node(t)}))}),e.nodes().forEach(function(t){const o=e.children(t),d=e.edges();o.length>0?(i.debug("Cluster identified",t,b),d.forEach(s=>{D(s.v,t)^D(s.w,t)&&(i.warn("Edge: ",s," leaves cluster ",t),i.warn("Descendants of XXX ",t,": ",b.get(t)),l.get(t).externalConnections=!0)})):i.debug("Not a cluster ",t,b)});for(let t of l.keys()){const o=l.get(t).id,d=e.parent(o);d!==t&&l.has(d)&&!l.get(d).externalConnections&&(l.get(t).id=d)}e.edges().forEach(function(t){const o=e.edge(t);i.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),i.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let d=t.v,s=t.w;if(i.warn("Fix XXX",l,"ids:",t.v,t.w,"Translating: ",l.get(t.v)," --- ",l.get(t.w)),l.get(t.v)||l.get(t.w)){if(i.warn("Fixing and trying - removing XXX",t.v,t.w,t.name),d=A(t.v),s=A(t.w),e.removeEdge(t.v,t.w,t.name),d!==t.v){const a=e.parent(d);l.get(a).externalConnections=!0,o.fromCluster=t.v}if(s!==t.w){const a=e.parent(s);l.get(a).externalConnections=!0,o.toCluster=t.w}i.warn("Fix Replacing with XXX",d,s,t.name),e.setEdge(d,s,o,t.name)}}),i.warn("Adjusted Graph",X(e)),T(e,0),i.trace(l)}},"adjustClustersAndEdges"),T=m((e,r)=>{var d,s;if(i.warn("extractor - ",r,X(e),e.children("D")),r>10)return void i.error("Bailing out");let t=e.nodes(),o=!1;for(const a of t){const c=e.children(a);o=o||c.length>0}if(o){i.debug("Nodes = ",t,r);for(const a of t)if(i.debug("Extracting node",a,l,l.has(a)&&!l.get(a).externalConnections,!e.parent(a),e.node(a),e.children("D")," Depth ",r),l.has(a))if(!l.get(a).externalConnections&&e.children(a)&&e.children(a).length>0){i.warn("Cluster without external connections, without a parent and with children",a,r);let c=e.graph().rankdir==="TB"?"LR":"TB";(s=(d=l.get(a))==null?void 0:d.clusterData)!=null&&s.dir&&(c=l.get(a).clusterData.dir,i.warn("Fixing dir",l.get(a).clusterData.dir,c));const f=new G({multigraph:!0,compound:!0}).setGraph({rankdir:c,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",X(e)),B(a,e,f,a),e.setNode(a,{clusterNode:!0,id:a,clusterData:l.get(a).clusterData,label:l.get(a).label,graph:f}),i.warn("New graph after copy node: (",a,")",X(f)),i.debug("Old graph after copy",X(e))}else i.warn("Cluster ** ",a," **not meeting the criteria !externalConnections:",!l.get(a).externalConnections," no parent: ",!e.parent(a)," children ",e.children(a)&&e.children(a).length>0,e.children("D"),r),i.debug(l);else i.debug("Not a cluster",a,r);t=e.nodes(),i.warn("New list of nodes",t);for(const a of t){const c=e.node(a);i.warn(" Now next level",a,c),c!=null&&c.clusterNode&&T(c.graph,r+1)}}else i.debug("Done, no node has children",e.nodes())},"extractor"),R=m((e,r)=>{if(r.length===0)return[];let t=Object.assign([],r);return r.forEach(o=>{const d=e.children(o),s=R(e,d);t=[...t,...s]}),t},"sorter"),oe=m(e=>R(e,e.children()),"sortNodesByHierarchy"),F=m(async(e,r,t,o,d,s)=>{i.warn("Graph in recursive render:XAX",X(r),d);const a=r.graph().rankdir;i.trace("Dir in recursive render - dir:",a);const c=e.insert("g").attr("class","root");r.nodes()?i.info("Recursive render XXX",r.nodes()):i.info("No nodes found for",r),r.edges().length>0&&i.info("Recursive edges",r.edge(r.edges()[0]));const f=c.insert("g").attr("class","clusters"),E=c.insert("g").attr("class","edgePaths"),C=c.insert("g").attr("class","edgeLabels"),p=c.insert("g").attr("class","nodes");await Promise.all(r.nodes().map(async function(g){const n=r.node(g);if(d!==void 0){const h=JSON.parse(JSON.stringify(d.clusterData));i.trace(`Setting data for parent cluster XXX
1
+ import{_ as m,aa as M,ab as L,ac as Y,ad as j,l as i,c as H,ae as _,af as $,$ as q,a4 as z,a0 as O,Y as K,ag as Q,ah as U,ai as V}from"./mermaid-Cj8iTY32.js";import{G}from"./graph-0Be_VN40.js";import{l as W}from"./layout-CKLhmwbe.js";import{i as x}from"./_baseUniq-V9TCLwLc.js";import{c as Z}from"./clone-P_mSE6qS.js";import{m as k}from"./min-B9ZWeo3O.js";import"./index-CSE1l0xK.js";import"./transform-Cyp0GDF-.js";import"./timer-DFzT7np-.js";import"./step-BwsUM5iJ.js";import"./_baseEach-CeieKYHo.js";import"./sortBy-BPwT3VFi.js";import"./_baseMap-CJymCcqn.js";function X(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ee(e),edges:te(e)};return x(e.graph())||(r.value=Z(e.graph())),r}function ee(e){return k(e.nodes(),function(r){var t=e.node(r),o=e.parent(r),d={v:r};return x(t)||(d.value=t),x(o)||(d.parent=o),d})}function te(e){return k(e.edges(),function(r){var t=e.edge(r),o={v:r.v,w:r.w};return x(r.name)||(o.name=r.name),x(t)||(o.value=t),o})}var l=new Map,b=new Map,P=new Map,re=m(()=>{b.clear(),P.clear(),l.clear()},"clear"),D=m((e,r)=>{const t=b.get(r)||[];return i.trace("In isDescendant",r," ",e," = ",t.includes(e)),t.includes(e)},"isDescendant"),ne=m((e,r)=>{const t=b.get(r)||[];return i.info("Descendants of ",r," is ",t),i.info("Edge is ",e),e.v!==r&&e.w!==r&&(t?t.includes(e.v)||D(e.v,r)||D(e.w,r)||t.includes(e.w):(i.debug("Tilt, ",r,",not in descendants"),!1))},"edgeInCluster"),B=m((e,r,t,o)=>{i.warn("Copying children of ",e,"root",o,"data",r.node(e),o);const d=r.children(e)||[];e!==o&&d.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",d),d.forEach(s=>{if(r.children(s).length>0)B(s,r,t,o);else{const a=r.node(s);i.info("cp ",s," to ",o," with parent ",e),t.setNode(s,a),o!==r.parent(s)&&(i.warn("Setting parent",s,r.parent(s)),t.setParent(s,r.parent(s))),e!==o&&s!==e?(i.debug("Setting parent",s,e),t.setParent(s,e)):(i.info("In copy ",e,"root",o,"data",r.node(e),o),i.debug("Not Setting parent for node=",s,"cluster!==rootId",e!==o,"node!==clusterId",s!==e));const c=r.edges(s);i.debug("Copying Edges",c),c.forEach(f=>{i.info("Edge",f);const E=r.edge(f.v,f.w,f.name);i.info("Edge data",E,o);try{ne(f,o)?(i.info("Copying as ",f.v,f.w,E,f.name),t.setEdge(f.v,f.w,E,f.name),i.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]))):i.info("Skipping copy of edge ",f.v,"-->",f.w," rootId: ",o," clusterId:",e)}catch(C){i.error(C)}})}i.debug("Removing node",s),r.removeNode(s)})},"copy"),J=m((e,r)=>{const t=r.children(e);let o=[...t];for(const d of t)P.set(d,e),o=[...o,...J(d,r)];return o},"extractDescendants"),ie=m((e,r,t)=>{const o=e.edges().filter(c=>c.v===r||c.w===r),d=e.edges().filter(c=>c.v===t||c.w===t),s=o.map(c=>({v:c.v===r?t:c.v,w:c.w===r?r:c.w})),a=d.map(c=>({v:c.v,w:c.w}));return s.filter(c=>a.some(f=>c.v===f.v&&c.w===f.w))},"findCommonEdges"),I=m((e,r,t)=>{const o=r.children(e);if(i.trace("Searching children of id ",e,o),o.length<1)return e;let d;for(const s of o){const a=I(s,r,t),c=ie(r,t,a);if(a){if(!(c.length>0))return a;d=a}}return d},"findNonClusterChild"),A=m(e=>l.has(e)&&l.get(e).externalConnections&&l.has(e)?l.get(e).id:e,"getAnchorId"),ae=m((e,r)=>{if(!e||r>10)i.debug("Opting out, no graph ");else{i.debug("Opting in, graph "),e.nodes().forEach(function(t){e.children(t).length>0&&(i.warn("Cluster identified",t," Replacement id in edges: ",I(t,e,t)),b.set(t,J(t,e)),l.set(t,{id:I(t,e,t),clusterData:e.node(t)}))}),e.nodes().forEach(function(t){const o=e.children(t),d=e.edges();o.length>0?(i.debug("Cluster identified",t,b),d.forEach(s=>{D(s.v,t)^D(s.w,t)&&(i.warn("Edge: ",s," leaves cluster ",t),i.warn("Descendants of XXX ",t,": ",b.get(t)),l.get(t).externalConnections=!0)})):i.debug("Not a cluster ",t,b)});for(let t of l.keys()){const o=l.get(t).id,d=e.parent(o);d!==t&&l.has(d)&&!l.get(d).externalConnections&&(l.get(t).id=d)}e.edges().forEach(function(t){const o=e.edge(t);i.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),i.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let d=t.v,s=t.w;if(i.warn("Fix XXX",l,"ids:",t.v,t.w,"Translating: ",l.get(t.v)," --- ",l.get(t.w)),l.get(t.v)||l.get(t.w)){if(i.warn("Fixing and trying - removing XXX",t.v,t.w,t.name),d=A(t.v),s=A(t.w),e.removeEdge(t.v,t.w,t.name),d!==t.v){const a=e.parent(d);l.get(a).externalConnections=!0,o.fromCluster=t.v}if(s!==t.w){const a=e.parent(s);l.get(a).externalConnections=!0,o.toCluster=t.w}i.warn("Fix Replacing with XXX",d,s,t.name),e.setEdge(d,s,o,t.name)}}),i.warn("Adjusted Graph",X(e)),T(e,0),i.trace(l)}},"adjustClustersAndEdges"),T=m((e,r)=>{var d,s;if(i.warn("extractor - ",r,X(e),e.children("D")),r>10)return void i.error("Bailing out");let t=e.nodes(),o=!1;for(const a of t){const c=e.children(a);o=o||c.length>0}if(o){i.debug("Nodes = ",t,r);for(const a of t)if(i.debug("Extracting node",a,l,l.has(a)&&!l.get(a).externalConnections,!e.parent(a),e.node(a),e.children("D")," Depth ",r),l.has(a))if(!l.get(a).externalConnections&&e.children(a)&&e.children(a).length>0){i.warn("Cluster without external connections, without a parent and with children",a,r);let c=e.graph().rankdir==="TB"?"LR":"TB";(s=(d=l.get(a))==null?void 0:d.clusterData)!=null&&s.dir&&(c=l.get(a).clusterData.dir,i.warn("Fixing dir",l.get(a).clusterData.dir,c));const f=new G({multigraph:!0,compound:!0}).setGraph({rankdir:c,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",X(e)),B(a,e,f,a),e.setNode(a,{clusterNode:!0,id:a,clusterData:l.get(a).clusterData,label:l.get(a).label,graph:f}),i.warn("New graph after copy node: (",a,")",X(f)),i.debug("Old graph after copy",X(e))}else i.warn("Cluster ** ",a," **not meeting the criteria !externalConnections:",!l.get(a).externalConnections," no parent: ",!e.parent(a)," children ",e.children(a)&&e.children(a).length>0,e.children("D"),r),i.debug(l);else i.debug("Not a cluster",a,r);t=e.nodes(),i.warn("New list of nodes",t);for(const a of t){const c=e.node(a);i.warn(" Now next level",a,c),c!=null&&c.clusterNode&&T(c.graph,r+1)}}else i.debug("Done, no node has children",e.nodes())},"extractor"),R=m((e,r)=>{if(r.length===0)return[];let t=Object.assign([],r);return r.forEach(o=>{const d=e.children(o),s=R(e,d);t=[...t,...s]}),t},"sorter"),oe=m(e=>R(e,e.children()),"sortNodesByHierarchy"),F=m(async(e,r,t,o,d,s)=>{i.warn("Graph in recursive render:XAX",X(r),d);const a=r.graph().rankdir;i.trace("Dir in recursive render - dir:",a);const c=e.insert("g").attr("class","root");r.nodes()?i.info("Recursive render XXX",r.nodes()):i.info("No nodes found for",r),r.edges().length>0&&i.info("Recursive edges",r.edge(r.edges()[0]));const f=c.insert("g").attr("class","clusters"),E=c.insert("g").attr("class","edgePaths"),C=c.insert("g").attr("class","edgeLabels"),p=c.insert("g").attr("class","nodes");await Promise.all(r.nodes().map(async function(g){const n=r.node(g);if(d!==void 0){const h=JSON.parse(JSON.stringify(d.clusterData));i.trace(`Setting data for parent cluster XXX
2
2
  Node.id = `,g,`
3
3
  data=`,h.height,`
4
4
  Parent cluster`,d.height),r.setNode(d.id,h),r.parent(g)||(i.trace("Setting parent",g,d.id),r.setParent(g,d.id,h))}if(i.info("(Insert) Node XXX"+g+": "+JSON.stringify(r.node(g))),n==null?void 0:n.clusterNode){i.info("Cluster identified XBX",g,n.width,r.node(g));const{ranksep:h,nodesep:u}=r.graph();n.graph.setGraph({...n.graph.graph(),ranksep:h+25,nodesep:u});const N=await F(p,n.graph,t,o,r.node(g),s),S=N.elem;_(n,S),n.diff=N.diff||0,i.info("New compound node after recursive render XAX",g,"width",n.width,"height",n.height),$(S,n)}else r.children(g).length>0?(i.trace("Cluster - the non recursive path XBX",g,n.id,n,n.width,"Graph:",r),i.trace(I(n.id,r)),l.set(n.id,{id:I(n.id,r),node:n})):(i.trace("Node - the non recursive path XAX",g,p,r.node(g),a),await q(p,r.node(g),{config:s,dir:a}))})),await m(async()=>{const g=r.edges().map(async function(n){const h=r.edge(n.v,n.w,n.name);i.info("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.info("Edge "+n.v+" -> "+n.w+": ",n," ",JSON.stringify(r.edge(n))),i.info("Fix",l,"ids:",n.v,n.w,"Translating: ",l.get(n.v),l.get(n.w)),await V(C,h)});await Promise.all(g)},"processEdges")(),i.info("Graph before layout:",JSON.stringify(X(r))),i.info("############################################# XXX"),i.info("### Layout ### XXX"),i.info("############################################# XXX"),W(r),i.info("Graph after layout:",JSON.stringify(X(r)));let y=0,{subGraphTitleTotalMargin:v}=z(s);return await Promise.all(oe(r).map(async function(g){var h;const n=r.node(g);if(i.info("Position XBX => "+g+": ("+n.x,","+n.y,") width: ",n.width," height: ",n.height),n==null?void 0:n.clusterNode)n.y+=v,i.info("A tainted cluster node XBX1",g,n.id,n.width,n.height,n.x,n.y,r.parent(g)),l.get(n.id).node=n,O(n);else if(r.children(g).length>0){i.info("A pure cluster node XBX1",g,n.id,n.x,n.y,n.width,n.height,r.parent(g)),n.height+=v,r.node(n.parentId);const u=(n==null?void 0:n.padding)/2||0,N=((h=n==null?void 0:n.labelBBox)==null?void 0:h.height)||0,S=N-u||0;i.debug("OffsetY",S,"labelHeight",N,"halfPadding",u),await K(f,n),l.get(n.id).node=n}else{const u=r.node(n.parentId);n.y+=v/2,i.info("A regular node XBX1 - using the padding",n.id,"parent",n.parentId,n.width,n.height,n.x,n.y,"offsetY",n.offsetY,"parent",u,u==null?void 0:u.offsetY,n),O(n)}})),r.edges().forEach(function(g){const n=r.edge(g);i.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(n),n),n.points.forEach(S=>S.y+=v/2);const h=r.node(g.v);var u=r.node(g.w);const N=Q(E,n,l,t,h,u,o);U(n,N)}),r.nodes().forEach(function(g){const n=r.node(g);i.info(g,n.type,n.diff),n.isGroup&&(y=n.diff)}),i.warn("Returning from recursive render XAX",c,y),{elem:c,diff:y}},"recursiveRender"),se=m(async(e,r)=>{var s,a,c,f,E,C;const t=new G({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:((s=e.config)==null?void 0:s.nodeSpacing)||((c=(a=e.config)==null?void 0:a.flowchart)==null?void 0:c.nodeSpacing)||e.nodeSpacing,ranksep:((f=e.config)==null?void 0:f.rankSpacing)||((C=(E=e.config)==null?void 0:E.flowchart)==null?void 0:C.rankSpacing)||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),o=r.select("g");M(o,e.markers,e.type,e.diagramId),L(),Y(),j(),re(),e.nodes.forEach(p=>{t.setNode(p.id,{...p}),p.parentId&&t.setParent(p.id,p.parentId)}),i.debug("Edges:",e.edges),e.edges.forEach(p=>{if(p.start===p.end){const w=p.start,y=w+"---"+w+"---1",v=w+"---"+w+"---2",g=t.node(w);t.setNode(y,{domId:y,id:y,parentId:g.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),t.setParent(y,g.parentId),t.setNode(v,{domId:v,id:v,parentId:g.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),t.setParent(v,g.parentId);const n=structuredClone(p),h=structuredClone(p),u=structuredClone(p);n.label="",n.arrowTypeEnd="none",n.id=w+"-cyclic-special-1",h.arrowTypeStart="none",h.arrowTypeEnd="none",h.id=w+"-cyclic-special-mid",u.label="",g.isGroup&&(n.fromCluster=w,u.toCluster=w),u.id=w+"-cyclic-special-2",u.arrowTypeStart="none",t.setEdge(w,y,n,w+"-cyclic-special-0"),t.setEdge(y,v,h,w+"-cyclic-special-1"),t.setEdge(v,w,u,w+"-cyc<lic-special-2")}else t.setEdge(p.start,p.end,{...p},p.id)}),i.warn("Graph at first:",JSON.stringify(X(t))),ae(t),i.warn("Graph after XAX:",JSON.stringify(X(t)));const d=H();await F(o,t,e.type,e.diagramId,void 0,d)},"render");export{se as render};