@marimo-team/frontend 0.14.8-dev8 → 0.14.8-dev9

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-CYmpnTn_.js → ConnectedDataExplorerComponent-Dgb4evDM.js} +1 -1
  2. package/dist/assets/{ImageComparisonComponent--5-lO_ES.js → ImageComparisonComponent-CYLLP2Ek.js} +1 -1
  3. package/dist/assets/{VegaLite-DLW84dFp.js → VegaLite-Byuc9HjF.js} +1 -1
  4. package/dist/assets/{_baseEach-FnH5SKIB.js → _baseEach-6MHNR_Pm.js} +1 -1
  5. package/dist/assets/_baseMap-_1wf2RNm.js +1 -0
  6. package/dist/assets/{_baseUniq-BzMvLNro.js → _baseUniq-Bsn6wvQA.js} +1 -1
  7. package/dist/assets/{_createAggregator-Cvb8EMxO.js → _createAggregator-CLwaUrk2.js} +1 -1
  8. package/dist/assets/{any-language-editor-DxHcCRUo.js → any-language-editor-D1-wajW_.js} +1 -1
  9. package/dist/assets/{architectureDiagram-IEHRJDOE-CO83sI0X.js → architectureDiagram-IEHRJDOE-C0U1Eedd.js} +1 -1
  10. package/dist/assets/{blockDiagram-JOT3LUYC-oxKIgJ23.js → blockDiagram-JOT3LUYC-BrSo70tz.js} +1 -1
  11. package/dist/assets/{c4Diagram-VJAJSXHY-B1nBFpfO.js → c4Diagram-VJAJSXHY-CD6JO-0Q.js} +1 -1
  12. package/dist/assets/channel-Bj1QAQF4.js +1 -0
  13. package/dist/assets/{chunk-4BMEZGHF-BPuJg8QQ.js → chunk-4BMEZGHF-BVhacirt.js} +1 -1
  14. package/dist/assets/{chunk-A2AXSNBT-CFIg1rGY.js → chunk-A2AXSNBT-Bhagzotk.js} +1 -1
  15. package/dist/assets/{chunk-AEK57VVT-CuK-nwV4.js → chunk-AEK57VVT-BUt4fWBU.js} +1 -1
  16. package/dist/assets/{chunk-D6G4REZN-BNb4759I.js → chunk-D6G4REZN-3A-1N-Bx.js} +1 -1
  17. package/dist/assets/{chunk-RZ5BOZE2-BeZYs5Ig.js → chunk-RZ5BOZE2-BvGg5Ad5.js} +1 -1
  18. package/dist/assets/{chunk-XZIHB7SX-D72sGxGq.js → chunk-XZIHB7SX-qFX3K-h3.js} +1 -1
  19. package/dist/assets/{circle-play-Cvl-9kpT.js → circle-play-C-FzGo4q.js} +1 -1
  20. package/dist/assets/classDiagram-GIVACNV2-UVDFb9da.js +1 -0
  21. package/dist/assets/classDiagram-v2-COTLJTTW-UVDFb9da.js +1 -0
  22. package/dist/assets/clone-BlkjaVo9.js +1 -0
  23. package/dist/assets/{compile-BMCn2vE3.js → compile-BkD0vkR5.js} +1 -1
  24. package/dist/assets/{dagre-OKDRZEBW-BbWEbhHb.js → dagre-OKDRZEBW-Cizv3xrb.js} +1 -1
  25. package/dist/assets/{data-editor-DO8px2IC.js → data-editor-pNYnj_rT.js} +1 -1
  26. package/dist/assets/{diagram-SSKATNLV-CmcpVSp6.js → diagram-SSKATNLV-BqqwfmYX.js} +1 -1
  27. package/dist/assets/{diagram-VNBRO52H-CjiRqp8W.js → diagram-VNBRO52H-DuciCp2W.js} +1 -1
  28. package/dist/assets/{edit-page-DpIs4Jeh.js → edit-page-BLaffrTE.js} +44 -44
  29. package/dist/assets/{erDiagram-Q7BY3M3F-D23p5cbI.js → erDiagram-Q7BY3M3F-P6axxYAk.js} +1 -1
  30. package/dist/assets/{flowDiagram-4HSFHLVR-3ExDKEGl.js → flowDiagram-4HSFHLVR-Bnsq5u-0.js} +1 -1
  31. package/dist/assets/{ganttDiagram-APWFNJXF-D9VTD9XD.js → ganttDiagram-APWFNJXF-Ld8jhdTu.js} +1 -1
  32. package/dist/assets/{gitGraphDiagram-7IBYFJ6S-Bn_pINfE.js → gitGraphDiagram-7IBYFJ6S-Cqs2EjRy.js} +1 -1
  33. package/dist/assets/{graph-Cv0AtaRf.js → graph-CIH2GQ51.js} +1 -1
  34. package/dist/assets/{home-page-CRP3IHpV.js → home-page-CrCjPLno.js} +1 -1
  35. package/dist/assets/{index-BTMKLO1n.js → index-2juiKmzh.js} +1 -1
  36. package/dist/assets/{index-G5_5OkDd.js → index-B725LHBp.js} +1 -1
  37. package/dist/assets/{index-Cd9N2R3M.js → index-BIHhaFPx.js} +1 -1
  38. package/dist/assets/{index-B6DH7WAG.js → index-BQaHnozn.js} +1 -1
  39. package/dist/assets/{index-DdLVbr3B.js → index-BgUxY5Si.js} +1 -1
  40. package/dist/assets/{index-BKIw-nTk.js → index-BgVM0N6Q.js} +1 -1
  41. package/dist/assets/{index-D-01nLUB.js → index-Bim2uhxc.js} +1 -1
  42. package/dist/assets/{index-DW39dZX6.js → index-BuPaMPZS.js} +1 -1
  43. package/dist/assets/{index-UohZ6mc7.js → index-BzqZ_6cl.js} +1 -1
  44. package/dist/assets/{index-DJwntWVz.js → index-C9s7wpCG.js} +1 -1
  45. package/dist/assets/{index-CH_vjHJs.js → index-CX02FBw9.js} +1 -1
  46. package/dist/assets/{index-C1GzY49R.js → index-CfektYKc.js} +1 -1
  47. package/dist/assets/{index-BoVrSPna.js → index-DIOux9Rd.js} +1 -1
  48. package/dist/assets/{index-CfCsWmku.js → index-DuRflRhD.js} +1 -1
  49. package/dist/assets/{index-Cb2EzYJO.js → index-QthAcefu.js} +1 -1
  50. package/dist/assets/{index-DlZmbF5y.js → index-eTpeTAvV.js} +1 -1
  51. package/dist/assets/{index-l_wokygA.js → index-jgUiUrDR.js} +162 -162
  52. package/dist/assets/{index-B2gQZNft.js → index-uKHcJyiC.js} +1 -1
  53. package/dist/assets/{index-Dneegn3v.js → index-xggWyI0a.js} +1 -1
  54. package/dist/assets/{infoDiagram-PH2N3AL5-Bf4uF_kd.js → infoDiagram-PH2N3AL5-Du_lo9xe.js} +1 -1
  55. package/dist/assets/{journeyDiagram-U35MCT3I-Dm-d6spo.js → journeyDiagram-U35MCT3I-CwfdkzJ0.js} +1 -1
  56. package/dist/assets/{kanban-definition-NDS4AKOZ-Dp7Lt7a7.js → kanban-definition-NDS4AKOZ-B_lx6PJd.js} +1 -1
  57. package/dist/assets/{layout-DBIauRjl.js → layout-C5kPa4yS.js} +1 -1
  58. package/dist/assets/{mermaid-Cb2iP_U0.js → mermaid-B7Nz4kzp.js} +4 -4
  59. package/dist/assets/{min-DWa_Ex5z.js → min-M3nZZf4_.js} +1 -1
  60. package/dist/assets/{mindmap-definition-ALO5MXBD-BK82nZEj.js → mindmap-definition-ALO5MXBD-DjXnAr08.js} +1 -1
  61. package/dist/assets/{pieDiagram-IB7DONF6-CrSKNHpL.js → pieDiagram-IB7DONF6-DKAAam0A.js} +1 -1
  62. package/dist/assets/{quadrantDiagram-7GDLP6J5-DBYendvc.js → quadrantDiagram-7GDLP6J5-C8jEDsmL.js} +1 -1
  63. package/dist/assets/{radar-MK3ICKWK-D4iXNJyD.js → radar-MK3ICKWK-BQ7QRUVq.js} +1 -1
  64. package/dist/assets/{react-plotly-jrAUcM2q.js → react-plotly-Reh2raq7.js} +1 -1
  65. package/dist/assets/{requirementDiagram-KVF5MWMF-Cvshvvk-.js → requirementDiagram-KVF5MWMF-AEggFxKQ.js} +1 -1
  66. package/dist/assets/{run-page-Bep2eRDR.js → run-page-CjDDCCGY.js} +1 -1
  67. package/dist/assets/{sankeyDiagram-QLVOVGJD-Dp3RYFKL.js → sankeyDiagram-QLVOVGJD-gX20aHSj.js} +1 -1
  68. package/dist/assets/{sequenceDiagram-X6HHIX6F-DkbSZR7j.js → sequenceDiagram-X6HHIX6F-B3rT7R0R.js} +1 -1
  69. package/dist/assets/{shutdown-button-D0N1es_c.js → shutdown-button-Bj1uRucX.js} +11 -11
  70. package/dist/assets/{slides-component-DN5s759D.js → slides-component-S7_QnsnB.js} +1 -1
  71. package/dist/assets/{sortBy-C53me3k8.js → sortBy-EwO_LOkf.js} +1 -1
  72. package/dist/assets/{stateDiagram-DGXRK772-DL3Ta588.js → stateDiagram-DGXRK772-D6PN5xO7.js} +1 -1
  73. package/dist/assets/stateDiagram-v2-YXO3MK2T-UBeNvudT.js +1 -0
  74. package/dist/assets/{storage-BhACHptC.js → storage-mO56v_mR.js} +3 -3
  75. package/dist/assets/{terminal-GCVl-wqy.js → terminal-87tuZyuY.js} +1 -1
  76. package/dist/assets/{timeline-definition-BDJGKUSR-Dea-r6Ah.js → timeline-definition-BDJGKUSR-BoKGEjbf.js} +1 -1
  77. package/dist/assets/{tracing-ChqPtgQh.js → tracing-Bk2J7-fB.js} +2 -2
  78. package/dist/assets/{transform-Bze8Q3sQ.js → transform-DDoQUs93.js} +1 -1
  79. package/dist/assets/{vega-component-DJl4V3OP.js → vega-component-D35_Bdao.js} +1 -1
  80. package/dist/assets/{worker-CJ614ngf.js → worker-D-0VSZQ3.js} +1 -1
  81. package/dist/assets/{xychartDiagram-VJFVF3MP-JON3t4jP.js → xychartDiagram-VJFVF3MP-BOUSi4dh.js} +1 -1
  82. package/dist/index.html +1 -1
  83. package/package.json +1 -1
  84. package/dist/assets/_baseMap-KGy9mFen.js +0 -1
  85. package/dist/assets/channel-BzmH5ale.js +0 -1
  86. package/dist/assets/classDiagram-GIVACNV2-DHdsmdYC.js +0 -1
  87. package/dist/assets/classDiagram-v2-COTLJTTW-DHdsmdYC.js +0 -1
  88. package/dist/assets/clone-CLY66C3E.js +0 -1
  89. package/dist/assets/stateDiagram-v2-YXO3MK2T-CzvyvBru.js +0 -1
@@ -1,4 +1,4 @@
1
- import{_ as m,aa as Y,ab as F,ac as L,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-Cb2iP_U0.js";import{G}from"./graph-Cv0AtaRf.js";import{l as W}from"./layout-DBIauRjl.js";import{i as x}from"./_baseUniq-BzMvLNro.js";import{c as Z}from"./clone-CLY66C3E.js";import{m as k}from"./min-DWa_Ex5z.js";import"./index-l_wokygA.js";import"./transform-Bze8Q3sQ.js";import"./_baseEach-FnH5SKIB.js";import"./sortBy-C53me3k8.js";import"./_baseMap-KGy9mFen.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"),M=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 Y,ab as F,ac as L,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-B7Nz4kzp.js";import{G}from"./graph-CIH2GQ51.js";import{l as W}from"./layout-C5kPa4yS.js";import{i as x}from"./_baseUniq-Bsn6wvQA.js";import{c as Z}from"./clone-BlkjaVo9.js";import{m as k}from"./min-M3nZZf4_.js";import"./index-jgUiUrDR.js";import"./transform-DDoQUs93.js";import"./_baseEach-6MHNR_Pm.js";import"./sortBy-EwO_LOkf.js";import"./_baseMap-_1wf2RNm.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"),M=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 M(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");Y(o,e.markers,e.type,e.diagramId),F(),L(),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 M(o,t,e.type,e.diagramId,void 0,d)},"render");export{se as render};