@layers-app/editor 0.7.17 → 0.7.18

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 (244) hide show
  1. package/dist/index.cjs +2 -2
  2. package/dist/index.js +3 -3
  3. package/dist/layers.94hwidA2.js +198 -0
  4. package/dist/layers.B4l6ta1Q.js +1 -0
  5. package/dist/{layers.DfazY_Pm.js → layers.BMrOAD_P.js} +1 -1
  6. package/dist/{layers.C35KTUy2.js → layers.D99OBX9u.js} +8 -8
  7. package/dist/{layers.B3S_Iz7U.js → layers.DOzLBYZr.js} +31 -31
  8. package/dist/layers.YRyXopy_.js +151 -0
  9. package/dist/{layers.BlQ-fVEN.js → layers.usKC_Id5.js} +1 -1
  10. package/dist/{layers.CNTFg_PV.js → layers.zu-IYGYU.js} +12483 -13053
  11. package/package.json +24 -23
  12. package/dist/layers.04n4wbqY.js +0 -40
  13. package/dist/layers.0AjqeHO0.js +0 -52
  14. package/dist/layers.0YKivPbS.js +0 -40
  15. package/dist/layers.0ay1od4k.js +0 -41
  16. package/dist/layers.0cCD7Trw.js +0 -10
  17. package/dist/layers.192DYlty.js +0 -8
  18. package/dist/layers.1ws9_bfy.js +0 -1
  19. package/dist/layers.3NAUDSdp.js +0 -1
  20. package/dist/layers.41VWy-aG.js +0 -33
  21. package/dist/layers.52famHy6.js +0 -1
  22. package/dist/layers.5QVC7kU0.js +0 -1
  23. package/dist/layers.6IpHt_7d.js +0 -32
  24. package/dist/layers.7JqFgE4-.js +0 -15
  25. package/dist/layers.8CQh8R7p.js +0 -1
  26. package/dist/layers.9iKrwzo8.js +0 -32
  27. package/dist/layers.9p0T4nVw.js +0 -1
  28. package/dist/layers.9pNaFvaX.js +0 -1
  29. package/dist/layers.B19hGmey.js +0 -1
  30. package/dist/layers.B1auaUb-.js +0 -40
  31. package/dist/layers.B37cfkOz.js +0 -32
  32. package/dist/layers.B3D4g2HH.js +0 -1
  33. package/dist/layers.B5XF9q_I.js +0 -40
  34. package/dist/layers.B6hh7kZl.js +0 -6
  35. package/dist/layers.B7K7JjK6.js +0 -1510
  36. package/dist/layers.B7rTjLeq.js +0 -208
  37. package/dist/layers.B8_yUZ0B.js +0 -207
  38. package/dist/layers.B9JA0HLK.js +0 -2966
  39. package/dist/layers.BABmXbhN.js +0 -1088
  40. package/dist/layers.BAtv1CM7.js +0 -1
  41. package/dist/layers.BCWekfj1.js +0 -38
  42. package/dist/layers.BDhkw0hD.js +0 -2479
  43. package/dist/layers.BEm0EevB.js +0 -295
  44. package/dist/layers.BFOGMUuA.js +0 -8
  45. package/dist/layers.BFc__DH6.js +0 -6
  46. package/dist/layers.BGTnvNP0.js +0 -10
  47. package/dist/layers.BGdwpbmj.js +0 -32
  48. package/dist/layers.BGrn4rLd.js +0 -1
  49. package/dist/layers.BHgpnpIV.js +0 -320
  50. package/dist/layers.BIeVwYKL.js +0 -1
  51. package/dist/layers.BIwMjJXk.js +0 -1
  52. package/dist/layers.BJ0kBYXi.js +0 -41
  53. package/dist/layers.BJDrjORS.js +0 -244
  54. package/dist/layers.BK0gUtws.js +0 -9
  55. package/dist/layers.BLd2spTm.js +0 -1
  56. package/dist/layers.BMyOFpSB.js +0 -9
  57. package/dist/layers.BO1-27wB.js +0 -1
  58. package/dist/layers.BO54hyIV.js +0 -10
  59. package/dist/layers.BOUezSTL.js +0 -41
  60. package/dist/layers.BP0j0dgn.js +0 -7
  61. package/dist/layers.BPc2aeAC.js +0 -6
  62. package/dist/layers.BRrrKVX0.js +0 -51
  63. package/dist/layers.BRw0W8BA.js +0 -14
  64. package/dist/layers.BSTBZrFn.js +0 -1
  65. package/dist/layers.BSUQkbOc.js +0 -42
  66. package/dist/layers.BUA_HqY5.js +0 -13
  67. package/dist/layers.BVcL_n_M.js +0 -268
  68. package/dist/layers.BWePEr40.js +0 -1126
  69. package/dist/layers.BXcsZWke.js +0 -1
  70. package/dist/layers.BZfVYPU5.js +0 -1
  71. package/dist/layers.BbCfEXyj.js +0 -55
  72. package/dist/layers.BbJS6RnG.js +0 -35
  73. package/dist/layers.BbVq4Peg.js +0 -39
  74. package/dist/layers.BbXyLjxZ.js +0 -42
  75. package/dist/layers.Be1uXPSh.js +0 -9
  76. package/dist/layers.BeACRp58.js +0 -4
  77. package/dist/layers.Ben_68X-.js +0 -33
  78. package/dist/layers.BfaQveOZ.js +0 -198
  79. package/dist/layers.BgJtKoXK.js +0 -160
  80. package/dist/layers.BifTQ-Px.js +0 -32
  81. package/dist/layers.BjN6TTXp.js +0 -11
  82. package/dist/layers.BjkK2efb.js +0 -7
  83. package/dist/layers.BlHp_VrY.js +0 -3
  84. package/dist/layers.Blc7rw4s.js +0 -6
  85. package/dist/layers.Bnsmp92P.js +0 -11
  86. package/dist/layers.BpilXLfW.js +0 -6
  87. package/dist/layers.BqqCs8jG.js +0 -96
  88. package/dist/layers.BsmgPu7t.js +0 -42
  89. package/dist/layers.Bt7tcN4s.js +0 -6
  90. package/dist/layers.Btzp1z-r.js +0 -36
  91. package/dist/layers.BwTFFS1L.js +0 -8
  92. package/dist/layers.Bx3h2n9l.js +0 -39
  93. package/dist/layers.BxM1KZfC.js +0 -61
  94. package/dist/layers.BxM9-XMl.js +0 -9
  95. package/dist/layers.C0J8aakp.js +0 -5
  96. package/dist/layers.C0rSyLVd.js +0 -9
  97. package/dist/layers.C2Ghtbvc.js +0 -8
  98. package/dist/layers.C2jhvzOq.js +0 -21620
  99. package/dist/layers.C39A_3mH.js +0 -8
  100. package/dist/layers.C5BRzalR.js +0 -38
  101. package/dist/layers.C5Fx7NyW.js +0 -39
  102. package/dist/layers.C5hEmFnZ.js +0 -40
  103. package/dist/layers.C6s-F8xr.js +0 -7
  104. package/dist/layers.C7FVdo84.js +0 -37
  105. package/dist/layers.C7dJDI3p.js +0 -10
  106. package/dist/layers.C89PpG1h.js +0 -769
  107. package/dist/layers.C8_lu5UH.js +0 -23
  108. package/dist/layers.CAn91HUr.js +0 -7
  109. package/dist/layers.CDyM6rfz.js +0 -1619
  110. package/dist/layers.CG5E1s6L.js +0 -5
  111. package/dist/layers.CH6vY6nz.js +0 -793
  112. package/dist/layers.CHZsXQcr.js +0 -1
  113. package/dist/layers.CI8n-mXC.js +0 -8
  114. package/dist/layers.CIIPaPYQ.js +0 -37
  115. package/dist/layers.CJjfGFRn.js +0 -7
  116. package/dist/layers.CLyrFyTt.js +0 -7
  117. package/dist/layers.COxTigDs.js +0 -1359
  118. package/dist/layers.CPPTxpTa.js +0 -198
  119. package/dist/layers.CQw2c-FF.js +0 -1
  120. package/dist/layers.CS_v9If4.js +0 -118
  121. package/dist/layers.CTEInOdX.js +0 -41
  122. package/dist/layers.CTzj-R3i.js +0 -41
  123. package/dist/layers.CULMlCQg.js +0 -1580
  124. package/dist/layers.CWVWuX-h.js +0 -802
  125. package/dist/layers.CWetNlAM.js +0 -186
  126. package/dist/layers.CZLAcdMj.js +0 -960
  127. package/dist/layers.CZcNOn_g.js +0 -5
  128. package/dist/layers.C_IvrzZ3.js +0 -7
  129. package/dist/layers.C_gG9xio.js +0 -36
  130. package/dist/layers.CagLZWJV.js +0 -36
  131. package/dist/layers.CcQRJhOy.js +0 -10
  132. package/dist/layers.CdI08cP2.js +0 -37
  133. package/dist/layers.CfGn3EEn.js +0 -11
  134. package/dist/layers.CfTomFD-.js +0 -74
  135. package/dist/layers.Ci-h8bbt.js +0 -36
  136. package/dist/layers.CiOE4x64.js +0 -42
  137. package/dist/layers.CjDmXlbI.js +0 -32
  138. package/dist/layers.CkvEBALf.js +0 -1
  139. package/dist/layers.ClbtOgXD.js +0 -1
  140. package/dist/layers.CmMJ2vrz.js +0 -40
  141. package/dist/layers.CoHrmJZb.js +0 -1
  142. package/dist/layers.CqOjrhqg.js +0 -34
  143. package/dist/layers.CqVTtuYm.js +0 -6
  144. package/dist/layers.Cq_SVM9v.js +0 -2
  145. package/dist/layers.CtBDhkfE.js +0 -2
  146. package/dist/layers.Cvcaleoh.js +0 -425
  147. package/dist/layers.Cx1Gq9Dp.js +0 -10
  148. package/dist/layers.CxhBPjuM.js +0 -257
  149. package/dist/layers.CxzexeO2.js +0 -41
  150. package/dist/layers.Cyiby-Np.js +0 -4
  151. package/dist/layers.Cyzu9PKQ.js +0 -1
  152. package/dist/layers.CzPTBQLq.js +0 -7
  153. package/dist/layers.D-Jn2ZYp.js +0 -202
  154. package/dist/layers.D0zn4_Mx.js +0 -1
  155. package/dist/layers.D3f2mUJi.js +0 -904
  156. package/dist/layers.D3lMBPw_.js +0 -44
  157. package/dist/layers.D4HzIdc6.js +0 -116
  158. package/dist/layers.D4T8fTcj.js +0 -1223
  159. package/dist/layers.D66jwaU4.js +0 -39
  160. package/dist/layers.D7ZMXlyX.js +0 -423
  161. package/dist/layers.D7jGxypv.js +0 -8
  162. package/dist/layers.D8q3-pj1.js +0 -40
  163. package/dist/layers.D9YR6XE8.js +0 -437
  164. package/dist/layers.D9jdGpJr.js +0 -8
  165. package/dist/layers.DAl7I5u0.js +0 -39
  166. package/dist/layers.DGi30IzW.js +0 -6
  167. package/dist/layers.DJF9fzWp.js +0 -9
  168. package/dist/layers.DLwuMfdd.js +0 -84
  169. package/dist/layers.DMkBISW1.js +0 -1
  170. package/dist/layers.DN7zqtdR.js +0 -803
  171. package/dist/layers.DN9HoVxI.js +0 -18
  172. package/dist/layers.DODiJHd5.js +0 -8
  173. package/dist/layers.DOrgOHBr.js +0 -1
  174. package/dist/layers.DPgcx12Q.js +0 -1
  175. package/dist/layers.DPiZNyNm.js +0 -9166
  176. package/dist/layers.DQhlH0a7.js +0 -501
  177. package/dist/layers.DTik-pik.js +0 -11
  178. package/dist/layers.DVrOalPV.js +0 -7
  179. package/dist/layers.DWaBBiuP.js +0 -19
  180. package/dist/layers.DZkaq_lv.js +0 -1265
  181. package/dist/layers.DacVDKlC.js +0 -9
  182. package/dist/layers.DbaKVP5e.js +0 -1
  183. package/dist/layers.DgCULOvY.js +0 -40
  184. package/dist/layers.DgjixQuR.js +0 -84
  185. package/dist/layers.DhtGL7-o.js +0 -39
  186. package/dist/layers.DjUOC4st.js +0 -16
  187. package/dist/layers.DjYl24mJ.js +0 -40
  188. package/dist/layers.DkUY5uNV.js +0 -1
  189. package/dist/layers.DouGTsMz.js +0 -9
  190. package/dist/layers.Dq2XAyOc.js +0 -139
  191. package/dist/layers.DqL7bG3g.js +0 -41
  192. package/dist/layers.DrYzFfW_.js +0 -139
  193. package/dist/layers.DrdslLaU.js +0 -10
  194. package/dist/layers.Ds9-wuCp.js +0 -10
  195. package/dist/layers.DsLySzfR.js +0 -8
  196. package/dist/layers.DsXVRfSf.js +0 -41
  197. package/dist/layers.DtYnjrXZ.js +0 -8
  198. package/dist/layers.Dtg6Vr-6.js +0 -39
  199. package/dist/layers.DuwOgI-l.js +0 -40
  200. package/dist/layers.DwXNFr-I.js +0 -35
  201. package/dist/layers.DxA6ocdw.js +0 -70
  202. package/dist/layers.Dy1naDTQ.js +0 -14
  203. package/dist/layers.Ev3O6tfW.js +0 -1
  204. package/dist/layers.GRwBofUp.js +0 -37
  205. package/dist/layers.HAyebP5S.js +0 -791
  206. package/dist/layers.J8v8A5JD.js +0 -35
  207. package/dist/layers.JWCLFILJ.js +0 -1
  208. package/dist/layers.MerAdE1w.js +0 -39
  209. package/dist/layers.OE83Ve6T.js +0 -5
  210. package/dist/layers.P6mLQhtB.js +0 -42
  211. package/dist/layers.PV80K4Xy.js +0 -11
  212. package/dist/layers.QNYkTpWx.js +0 -39
  213. package/dist/layers.R8mPlCA0.js +0 -261
  214. package/dist/layers.RTKoEILv.js +0 -9
  215. package/dist/layers.SLjiLvui.js +0 -4
  216. package/dist/layers.VJ5q1w0_.js +0 -21938
  217. package/dist/layers.XOfuSupS.js +0 -373
  218. package/dist/layers.YNcfYAuY.js +0 -9
  219. package/dist/layers.YO08nJMd.js +0 -10
  220. package/dist/layers.YqzV3yPW.js +0 -220
  221. package/dist/layers.Z4R1XaSC.js +0 -1
  222. package/dist/layers.ZZQfmNLr.js +0 -10
  223. package/dist/layers.b0h5ZBmD.js +0 -61
  224. package/dist/layers.b9B2NY7n.js +0 -11690
  225. package/dist/layers.bHmhGLR5.js +0 -931
  226. package/dist/layers.cgUeweX2.js +0 -84
  227. package/dist/layers.dYPOB_yR.js +0 -5
  228. package/dist/layers.easeN7iP.js +0 -1
  229. package/dist/layers.f7Ihj79-.js +0 -1034
  230. package/dist/layers.hLd2Pb2X.js +0 -1
  231. package/dist/layers.i0Y9asvx.js +0 -2235
  232. package/dist/layers.ib9vHAA4.js +0 -2
  233. package/dist/layers.k6E3SRkR.js +0 -70
  234. package/dist/layers.lCpg7dOn.js +0 -21
  235. package/dist/layers.lDwCLT0I.js +0 -1
  236. package/dist/layers.lP9uODKD.js +0 -1283
  237. package/dist/layers.pc1SXYEj.js +0 -1089
  238. package/dist/layers.snXT5mu6.js +0 -1
  239. package/dist/layers.vIfEp2lU.js +0 -48146
  240. package/dist/layers.wJNNYF6u.js +0 -122
  241. package/dist/layers.wKL0lWNs.js +0 -4
  242. package/dist/layers.wU0hxeTl.js +0 -65
  243. package/dist/layers.wj-nS-86.js +0 -38
  244. package/dist/layers.xiOwns_l.js +0 -1
@@ -1 +0,0 @@
1
- "use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.wKL0lWNs.js"),i=require("./layers.BqqCs8jG.js"),j=require("./layers.BP0j0dgn.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;