@pi-outpost/embed 0.15.0 → 0.16.1
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.
- package/dist/PdfViewer-BEdoeHbS.cjs +1 -0
- package/dist/{PdfViewer-BHP5lV-o.js → PdfViewer-DvoTT6jM.js} +5 -5
- package/dist/{abnfDiagram-N423BO3Z-WMOVzCba.js → abnfDiagram-VCTEODGH-CYuCmqs8.js} +6 -6
- package/dist/abnfDiagram-VCTEODGH-SjZtzoAs.cjs +1 -0
- package/dist/{arc-BBnpgwVQ.js → arc-CtDF59mU.js} +8 -6
- package/dist/arc-Dh2Zrypi.cjs +1 -0
- package/dist/architecture-7GRP2DOG-BtgYGXkq.cjs +1 -0
- package/dist/architecture-7GRP2DOG-DBQ9eYgM.js +3 -0
- package/dist/{architectureDiagram-T3A2C74G-BH-F8FzB.js → architectureDiagram-5GKGNRK7-D2-hmLgN.js} +327 -318
- package/dist/architectureDiagram-5GKGNRK7-wrDPdf3y.cjs +36 -0
- package/dist/blockDiagram-OSKFZWR5-Boo8WJyt.cjs +129 -0
- package/dist/blockDiagram-OSKFZWR5-Bvi4xQOy.js +1922 -0
- package/dist/{browser-CynjNfkw.js → browser-BmmG9yeb.js} +40 -34
- package/dist/{browser-CAyUayTx.cjs → browser-CUQnQIhV.cjs} +5 -5
- package/dist/c-AHDGPWiJ.cjs +1 -0
- package/dist/{c-Cw4FsAeJ.js → c-BCMbpktW.js} +42 -31
- package/dist/c4Diagram-7LVT6UL2-BCrC0RQo.cjs +38 -0
- package/dist/{c4Diagram-5PPSVZJV-Cfnl6tZM.js → c4Diagram-7LVT6UL2-CU4tNaf1.js} +751 -703
- package/dist/{channel-Bq-0ENlK.js → channel-Cuipqk56.js} +1 -1
- package/dist/channel-DcrLLvcO.cjs +1 -0
- package/dist/{chunk-JQJVKLGR-CZorbEP3.js → chunk-3NF5O7KM-B-2znsHr.js} +155 -115
- package/dist/chunk-3NF5O7KM-B-DpUW2r.cjs +168 -0
- package/dist/chunk-4HAMMTFA-CtkrBT7X.cjs +62 -0
- package/dist/chunk-4HAMMTFA-dRm_HqMI.js +4188 -0
- package/dist/chunk-75Z2AOVW-DOXS9ORa.cjs +2 -0
- package/dist/{chunk-NSK5VX7P-DPxIxDdV.js → chunk-75Z2AOVW-Eg_bFxBJ.js} +60 -96
- package/dist/chunk-DU6HZSFF-3Hhp3Fo5.cjs +127 -0
- package/dist/{chunk-I66GZJ75-DexfhZwA.js → chunk-DU6HZSFF-CaHy-FdL.js} +527 -478
- package/dist/{chunk-2GRJ4B5K-DzaxUd3W.cjs → chunk-F27PBJKO-3UPgzIlN.cjs} +1 -1
- package/dist/{chunk-2GRJ4B5K-DXwE-yr5.js → chunk-F27PBJKO-BriqLvNp.js} +4 -4
- package/dist/{chunk-KEIR6QF5-BVnxrdHo.js → chunk-FOHPRMQF-BNNbqxGX.js} +424 -356
- package/dist/chunk-FOHPRMQF-tmTlwTeH.cjs +161 -0
- package/dist/chunk-GMAD6QVW-B6uvB_wz.cjs +72 -0
- package/dist/{chunk-WRU74C26-D4huAZcy.js → chunk-GMAD6QVW-DCCx2Rg1.js} +503 -267
- package/dist/chunk-GVQU2GXP-BRMv2gX3.js +37 -0
- package/dist/chunk-GVQU2GXP-iZT_vNLp.cjs +1 -0
- package/dist/{chunk-GF5L2VYU-BPBMCCz5.js → chunk-HLEWEB6X-DlG0X171.js} +16 -16
- package/dist/{chunk-GF5L2VYU-DgG-wovM.cjs → chunk-HLEWEB6X-aqFoPl02.cjs} +4 -4
- package/dist/chunk-L3NEJ4N5-DkoFQHrz.js +245 -0
- package/dist/chunk-L3NEJ4N5-vW3qRjIb.cjs +1 -0
- package/dist/{chunk-7Z6QIM7H-CIoK8R3m.js → chunk-OSK3NFVY-CxjvZYNR.js} +232 -150
- package/dist/chunk-OSK3NFVY-DU2FGOlI.cjs +10 -0
- package/dist/chunk-P2QGCYS3-DWeL9spl.cjs +1 -0
- package/dist/{chunk-W5SLKNZC-Djmw_p6f.js → chunk-P2QGCYS3-uCJfSNHC.js} +19 -19
- package/dist/{chunk-KBJHAD2P-CthZVYG5.cjs → chunk-POPQ4Y6H-BRQPB1-9.cjs} +1 -1
- package/dist/{chunk-KBJHAD2P-BlQyFndF.js → chunk-POPQ4Y6H-D2Z11lA3.js} +3 -3
- package/dist/{chunk-4I5QYGJK-LCSWSJfh.cjs → chunk-PWAF6VOD-CZZKCekP.cjs} +1 -1
- package/dist/{chunk-4I5QYGJK-JZmvuONC.js → chunk-PWAF6VOD-j4sFqhOF.js} +7 -9
- package/dist/{chunk-6Q2QTUOP-C5n08EA-.cjs → chunk-SVP7TREG-CTKSOFlx.cjs} +2 -2
- package/dist/{chunk-6Q2QTUOP-DvJxCxMM.js → chunk-SVP7TREG-CtJsmAIb.js} +4 -4
- package/dist/{chunk-XXDRQBXY-DsVp5qjg.js → chunk-XXDRQBXY-fOrVUHLI.js} +1 -1
- package/dist/{chunk-XXDRQBXY-gWcN0uCZ.cjs → chunk-XXDRQBXY-yMT3rT5Y.cjs} +1 -1
- package/dist/chunk-ZLD2IHE6-BZxKwfuv.cjs +231 -0
- package/dist/{chunk-5RXB4S5H-JthGygoA.js → chunk-ZLD2IHE6-tqumZV0E.js} +44 -48
- package/dist/classDiagram-CYGNFDIV-CQLOfBmz.cjs +1 -0
- package/dist/classDiagram-CYGNFDIV-DIu4rTyR.js +30 -0
- package/dist/classDiagram-v2-TLXNO2FR-BsYK4QnI.js +30 -0
- package/dist/classDiagram-v2-TLXNO2FR-CQLOfBmz.cjs +1 -0
- package/dist/{core-BO2hTFeF.js → core-B9pe29T7.js} +8 -7
- package/dist/core-BrupIPpc.cjs +3 -0
- package/dist/{cose-bilkent-JH36ORCC-BFo5zomD.js → cose-bilkent-JH36ORCC-1Ad4jvll.js} +65 -62
- package/dist/cose-bilkent-JH36ORCC-Cc2qvpLA.cjs +1 -0
- package/dist/{cpp-CeyO6lBG.js → cpp-CL2nTisp.js} +25 -14
- package/dist/cpp-DpAsh4uT.cjs +1 -0
- package/dist/{csharp-Ck6Fet_o.js → csharp-CK75iOSn.js} +37 -37
- package/dist/csharp-TOr_W-v9.cjs +1 -0
- package/dist/css-4wogsuks.cjs +1 -0
- package/dist/{css-ClSGJRju.js → css-DJr8nnnu.js} +6 -1
- package/dist/cynefin-OW5HDTMX-BmLJra-4.cjs +1 -0
- package/dist/cynefin-OW5HDTMX-CfYr_cVN.js +3 -0
- package/dist/{cynefinDiagram-MW4NZA55-CB4ZzMEN.js → cynefinDiagram-5FMLGOSQ-BSRTnQvp.js} +29 -23
- package/dist/cynefinDiagram-5FMLGOSQ-GvGZco52.cjs +62 -0
- package/dist/{cytoscape.esm-asYnbYTy.js → cytoscape.esm-Cq7KPj0t.js} +2480 -2480
- package/dist/cytoscape.esm-uHsEX1XI.cjs +321 -0
- package/dist/{dagre-BpqwxFKp.js → dagre-BMKbPnPh.js} +689 -456
- package/dist/dagre-EEW2OxRU.cjs +1 -0
- package/dist/dagre-OS7QT2EB-DFi6nnZc.cjs +4 -0
- package/dist/dagre-OS7QT2EB-DcpSzxsR.js +425 -0
- package/dist/{defaultLocale-up9-vqhM.js → defaultLocale-B4ncmkvI.js} +1 -4
- package/dist/defaultLocale-ybN1Vtvg.cjs +1 -0
- package/dist/diagram-S7CK7UJ4-BA67ZpiO.cjs +30 -0
- package/dist/{diagram-7IWD3JNH-Cschro8T.js → diagram-S7CK7UJ4-Cx2fQdp6.js} +39 -38
- package/dist/{diagram-UB23O5K3-D-yL2fvd.js → diagram-UQ7AKVKN-CvQH-Box.js} +12 -12
- package/dist/diagram-UQ7AKVKN-OteiyKD9.cjs +41 -0
- package/dist/{diagram-B4RE2ZJO-DKbKOwkP.cjs → diagram-VSXAHHWV-BjsZz1JJ.cjs} +1 -1
- package/dist/{diagram-B4RE2ZJO-B94mhDmV.js → diagram-VSXAHHWV-CCpCVOIq.js} +6 -6
- package/dist/diagram-VX7I27RA-Bx9fEhR0.cjs +24 -0
- package/dist/{diagram-Q27KOJAE-Cqn3IliP.js → diagram-VX7I27RA-HE5nQAXN.js} +64 -62
- package/dist/{diagram-LBJQPF4R-D0MEwBt6.js → diagram-Z3DM3KII-BEu4c4pP.js} +11 -11
- package/dist/diagram-Z3DM3KII-jy895UiZ.cjs +24 -0
- package/dist/{dist-D6LMt8nW.js → dist-Dtt9eY41.js} +1 -1
- package/dist/{dist-DNGlMOWd.cjs → dist-Dwv2VYAL.cjs} +1 -1
- package/dist/{ebnfDiagram-BXEA7PRR-B2HDWFYF.js → ebnfDiagram-PWID7BFC-B06rGL3A.js} +6 -6
- package/dist/ebnfDiagram-PWID7BFC-BQZKHpUr.cjs +1 -0
- package/dist/erDiagram-2YWLMYGG-CuEEIv1I.cjs +99 -0
- package/dist/{erDiagram-JOGREHBK-Badv_hu8.js → erDiagram-2YWLMYGG-IL4IhNXb.js} +1046 -807
- package/dist/eventmodeling-NTZA5JFV-D57pc07U.cjs +1 -0
- package/dist/eventmodeling-NTZA5JFV-DUbGOrrF.js +3 -0
- package/dist/flowDiagram-T62WH6J4-DdJo3Te1.js +16 -0
- package/dist/flowDiagram-T62WH6J4-YyzE7N5Z.cjs +1 -0
- package/dist/{ganttDiagram-PKOTCBZU-By0w7TmO.js → ganttDiagram-EL5Y4UJY-CIBhrOW6.js} +26 -36
- package/dist/ganttDiagram-EL5Y4UJY-PTWIufq8.cjs +292 -0
- package/dist/gitGraph-4MIJSDKK-CY4IuhXZ.js +3 -0
- package/dist/gitGraph-4MIJSDKK-D97vaDci.cjs +1 -0
- package/dist/{gitGraphDiagram-DS77QQ5N-B1uJYchG.js → gitGraphDiagram-WWUBYQGX-CjeedV4i.js} +16 -12
- package/dist/{gitGraphDiagram-DS77QQ5N-Fw8a66di.cjs → gitGraphDiagram-WWUBYQGX-D5yozoaq.cjs} +3 -3
- package/dist/{go-rg7jg1mu.js → go-B2E3I9E3.js} +4 -0
- package/dist/{go-D-pz-dmd.cjs → go-BDkypVKn.cjs} +1 -1
- package/dist/{graphlib-CkkG5MuS.cjs → graphlib-BaETKKSa.cjs} +1 -1
- package/dist/{graphlib-B0GbLif1.js → graphlib-CQa_B3rm.js} +5 -5
- package/dist/info-A6RAGUB7-Cx39sHYM.js +3 -0
- package/dist/info-A6RAGUB7-DT06-FB3.cjs +1 -0
- package/dist/{infoDiagram-6WML65LV-CkWm_KTB.js → infoDiagram-FKFFQAWI-BalzsRT4.js} +6 -6
- package/dist/infoDiagram-FKFFQAWI-NPtQF4vB.cjs +2 -0
- package/dist/init-BJdqMO10.cjs +1 -0
- package/dist/{init-CirqLVcp.js → init-CuXVI8k2.js} +1 -3
- package/dist/{ishikawaDiagram-WSZJBQD7-DTeFqC8L.js → ishikawaDiagram-5VMMS53U-BC2vrJSo.js} +14 -14
- package/dist/{ishikawaDiagram-WSZJBQD7-CQWHhozU.cjs → ishikawaDiagram-5VMMS53U-DN23jmFw.cjs} +3 -3
- package/dist/java-DFBMvIUR.cjs +1 -0
- package/dist/{java-HguKEfA2.js → java-T8Nr25pJ.js} +27 -22
- package/dist/{javascript-C8NCH8DE.js → javascript-CIP6I0eT.js} +6 -4
- package/dist/javascript-Gn0piXHk.cjs +1 -0
- package/dist/{journeyDiagram-NVQOT4AX-Cg6C3dFy.js → journeyDiagram-EYS64GPL-CLMBONXO.js} +14 -14
- package/dist/{journeyDiagram-NVQOT4AX-DLomv_vN.cjs → journeyDiagram-EYS64GPL-Co9rp-Q1.cjs} +3 -3
- package/dist/json-DOqjN5nI.js +42 -0
- package/dist/json-LMrXTXZM.cjs +1 -0
- package/dist/{kanban-definition-27J2QSJJ-B9Fog3W7.cjs → kanban-definition-UXKFOSKX-DzKPVjAq.cjs} +5 -5
- package/dist/{kanban-definition-27J2QSJJ-Bb7nb0gX.js → kanban-definition-UXKFOSKX-SNTHZo65.js} +31 -31
- package/dist/katex-CEF6MvLx.cjs +257 -0
- package/dist/katex-ohtLbxXc.js +21977 -0
- package/dist/{line-yqcJYv29.js → line-4_dF7rOW.js} +2 -2
- package/dist/{line-pOZ7Sdj7.cjs → line-D6gR53Af.cjs} +1 -1
- package/dist/{linear-CVhyaVzf.js → linear-C1gZJMVz.js} +8 -9
- package/dist/linear-Nt9BuHfn.cjs +1 -0
- package/dist/{markdown-CzgRofaE.js → markdown-BW-hB0s4.js} +2 -5
- package/dist/markdown-CTkHoGys.cjs +1 -0
- package/dist/{mermaid-parser.core-Cgsz0CdK.cjs → mermaid-parser.core-CBiDgMLi.cjs} +2 -2
- package/dist/{mermaid-parser.core-B8DQcCaz.js → mermaid-parser.core-DLNlSmfj.js} +31 -31
- package/dist/mermaid.core-B3QcBB1O.cjs +43 -0
- package/dist/mermaid.core-BIqYA7q2.js +3012 -0
- package/dist/{mindmap-definition-FAOFIHXS-9wa1P9NT.cjs → mindmap-definition-THT77NOG-Bo3D8RRT.cjs} +4 -4
- package/dist/{mindmap-definition-FAOFIHXS-DFG0Zs_1.js → mindmap-definition-THT77NOG-BtDuvAQ_.js} +27 -29
- package/dist/{ordinal-D0iNZ43g.cjs → ordinal-Bm_chml2.cjs} +1 -1
- package/dist/{ordinal-C1oQzsBn.js → ordinal-D3SPD7Kk.js} +2 -2
- package/dist/packet-AYTQ26CC-BGX2McoE.cjs +1 -0
- package/dist/packet-AYTQ26CC-IgkU2VYK.js +3 -0
- package/dist/path-DIS6ck99.cjs +1 -0
- package/dist/{path-mKa7UESy.js → path-PGqhG0Rz.js} +10 -11
- package/dist/{pdf-DyDm1M1B.js → pdf-B6zVkETi.js} +182 -220
- package/dist/pdf-cYqATYeW.cjs +54 -0
- package/dist/pegDiagram-XKGWAZYB-Cx-wZf4B.cjs +1 -0
- package/dist/{pegDiagram-VL7TDLO6-XOjprD-j.js → pegDiagram-XKGWAZYB-Ucd8o52_.js} +6 -6
- package/dist/{php-C9FOMGEA.js → php-Cn7gPoxt.js} +6 -0
- package/dist/{php-j6EhDZDE.cjs → php-DQmdBizx.cjs} +1 -1
- package/dist/pi-outpost-embed.cjs +62 -62
- package/dist/pi-outpost-embed.js +5192 -5152
- package/dist/pie-WAS4IAKB-CEyPj3UJ.cjs +1 -0
- package/dist/pie-WAS4IAKB-odE0A7fM.js +3 -0
- package/dist/pieDiagram-E7YTZNPT-BC-pW4cK.cjs +39 -0
- package/dist/{pieDiagram-7S7Q4E2Y-Cwe7fXgJ.js → pieDiagram-E7YTZNPT-DSx5wFMY.js} +20 -22
- package/dist/{python-DKAazMIE.js → python-BUfdXZqP.js} +6 -6
- package/dist/python-CrsffQw-.cjs +1 -0
- package/dist/{quadrantDiagram-CIZ2JOQS-CbaMHmYB.js → quadrantDiagram-AXDQQJYC-D8Y50xmh.js} +11 -11
- package/dist/{quadrantDiagram-CIZ2JOQS-CDfrU0dm.cjs → quadrantDiagram-AXDQQJYC-zPfqM9Q4.cjs} +2 -2
- package/dist/radar-RG4KPBEZ-ClYJNseM.cjs +1 -0
- package/dist/radar-RG4KPBEZ-DqbNqlJH.js +3 -0
- package/dist/railroad-74A4TZTK-Dzt4afqg.js +3 -0
- package/dist/railroad-74A4TZTK-hSKcr2y6.cjs +1 -0
- package/dist/railroad-abnf-HS5TGJTU-gq2RybTO.js +3 -0
- package/dist/railroad-abnf-HS5TGJTU-irEXz0eI.cjs +1 -0
- package/dist/railroad-ebnf-LZEXJU2U-CG19A1Xj.cjs +1 -0
- package/dist/railroad-ebnf-LZEXJU2U-D-pNpFrj.js +3 -0
- package/dist/railroad-peg-WCYAUIDC-BLdK3QCV.cjs +1 -0
- package/dist/railroad-peg-WCYAUIDC-Bo7wfe--.js +3 -0
- package/dist/railroadDiagram-O6MQD6OU-3JsgWyLe.cjs +1 -0
- package/dist/{railroadDiagram-AXF67PYL-CVXAv-Uu.js → railroadDiagram-O6MQD6OU-BTg2KtZO.js} +6 -6
- package/dist/{requirementDiagram-LRYGKXZP-Bzik4kgS.js → requirementDiagram-IS5BZ75X-C1OrS7DV.js} +25 -24
- package/dist/{requirementDiagram-LRYGKXZP-BGlGCftH.cjs → requirementDiagram-IS5BZ75X-D1BMLxZg.cjs} +4 -4
- package/dist/{rolldown-runtime-Dqa2HsxW.js → rolldown-runtime-B0aSnxlc.js} +2 -2
- package/dist/{rolldown-runtime-mLOUI7ql.cjs → rolldown-runtime-DF3sbh8G.cjs} +1 -1
- package/dist/{rough.esm-r0QOSzHM.cjs → rough.esm-ChRLLRha.cjs} +1 -1
- package/dist/{rough.esm-C5XyeDCN.js → rough.esm-D2JJJ0Ot.js} +60 -51
- package/dist/{ruby-ClR4zp-1.cjs → ruby-B1inj-Q8.cjs} +1 -1
- package/dist/{ruby-BAUeZQKZ.js → ruby-DYVKXPXk.js} +1 -1
- package/dist/{rust-DiTjMjP5.js → rust-BihXqTNi.js} +38 -25
- package/dist/rust-D39kF6re.cjs +1 -0
- package/dist/{sankeyDiagram-W5VNT64P-OeLUMuT6.cjs → sankeyDiagram-P5KCCOFB-D5BHxcxB.cjs} +2 -2
- package/dist/{sankeyDiagram-W5VNT64P-_8xZpo45.js → sankeyDiagram-P5KCCOFB-DTnkE4oO.js} +17 -15
- package/dist/{scss-CckAvQOx.js → scss-CzfrZ5cc.js} +6 -1
- package/dist/scss-t-vKjRr4.cjs +1 -0
- package/dist/{sequenceDiagram-SI44F4Z6-X4mzY21C.js → sequenceDiagram-WJ2MYXX4-Ba-z2rSx.js} +36 -48
- package/dist/sequenceDiagram-WJ2MYXX4-DlVJIIIl.cjs +162 -0
- package/dist/{sizeCapture-X5ZJPWSS-DKbHZNyz.js → sizeCapture-INFHLROL-B5Lg3qGn.js} +1 -1
- package/dist/{src-DJ4x3y2O.js → src-BMMAFeC3.js} +288 -291
- package/dist/src-D9o9TOtH.cjs +1 -0
- package/dist/{stateDiagram-OKZ733FA-CMM1orC_.js → stateDiagram-XQSTLZYL-BtcUS_dg.js} +21 -21
- package/dist/stateDiagram-XQSTLZYL-mSOJx_Wv.cjs +1 -0
- package/dist/stateDiagram-v2-IH3M54BS-DAa6SuH4.cjs +1 -0
- package/dist/stateDiagram-v2-IH3M54BS-E_Rhduzm.js +30 -0
- package/dist/swimlanes-V6O3JKXN-BooYLGtP.cjs +1 -0
- package/dist/{swimlanes-SLNWSIFB-C7LLK1V2.js → swimlanes-V6O3JKXN-xxlpXv1f.js} +1022 -1109
- package/dist/swimlanesDiagram-JKAHXJPX-BaMCBEUQ.cjs +8 -0
- package/dist/swimlanesDiagram-JKAHXJPX-DyQwD-QO.js +30 -0
- package/dist/timeline-definition-24CTP7MA-D6sSmprF.cjs +120 -0
- package/dist/{timeline-definition-Z64GVDOM-Cgc-2OmU.js → timeline-definition-24CTP7MA-Dr8ouzBO.js} +19 -19
- package/dist/treeView-Q6P3EWNA-BmkQxkVU.cjs +1 -0
- package/dist/treeView-Q6P3EWNA-CPEEGmNv.js +3 -0
- package/dist/treemap-WGGIJYW6-CGULpntJ.js +3 -0
- package/dist/treemap-WGGIJYW6-Dmi9HAR8.cjs +1 -0
- package/dist/typescript-BarIi8q9.cjs +1 -0
- package/dist/{typescript-mdYq8uqf.js → typescript-C93MG6Zk.js} +26 -24
- package/dist/vennDiagram-4TSXK5OY-D5MMYyff.cjs +34 -0
- package/dist/{vennDiagram-T6HMQDX7-BWj1BhMh.js → vennDiagram-4TSXK5OY-i6B1rhUA.js} +15 -15
- package/dist/wardley-WFR3VGLG-9zHZLKh9.js +3 -0
- package/dist/wardley-WFR3VGLG-B6YvLPJA.cjs +1 -0
- package/dist/{wardleyDiagram-T6FBY63Y-d_t4oVLE.js → wardleyDiagram-VM6X3IG4-1SFyFcXg.js} +46 -46
- package/dist/{wardleyDiagram-T6FBY63Y-OomvVIFj.cjs → wardleyDiagram-VM6X3IG4-DzZNzmB8.cjs} +36 -36
- package/dist/{workspacePath-BScUv3M_.js → workspacePath-CfDl0V4n.js} +1 -1
- package/dist/{workspacePath-kqTwbSP1.cjs → workspacePath-EgAFT36l.cjs} +1 -1
- package/dist/{xml-BamqaQOf.cjs → xml-B0vjUBag.cjs} +1 -1
- package/dist/{xml-DVYfB8uY.js → xml-GxASmsT7.js} +2 -6
- package/dist/{xychartDiagram-ELKLHX3M-BOSOdubI.cjs → xychartDiagram-S5SC5T6Z-BOsjfYJh.cjs} +4 -4
- package/dist/{xychartDiagram-ELKLHX3M-Ce-ai3a8.js → xychartDiagram-S5SC5T6Z-D6QDBBGJ.js} +263 -158
- package/dist/{yaml-_1BORZTQ.js → yaml-CHhF1kKQ.js} +25 -25
- package/dist/yaml-DZS9gzaB.cjs +1 -0
- package/package.json +2 -2
- package/dist/PdfViewer-BBmVq73v.cjs +0 -1
- package/dist/abnfDiagram-N423BO3Z-DOZfbvMH.cjs +0 -1
- package/dist/arc-DcUn9_NX.cjs +0 -1
- package/dist/architecture-TIHT7OUA-D-35jO9Y.cjs +0 -1
- package/dist/architecture-TIHT7OUA-DDyMqjR1.js +0 -3
- package/dist/architectureDiagram-T3A2C74G-RJUsi-Sx.cjs +0 -36
- package/dist/blockDiagram-VBNYF7ZC-Bz8oqXJQ.cjs +0 -132
- package/dist/blockDiagram-VBNYF7ZC-DYMmF9bV.js +0 -3160
- package/dist/c-4QgYfi8K.cjs +0 -1
- package/dist/c4Diagram-5PPSVZJV-DM6x-BYG.cjs +0 -10
- package/dist/channel-DoxF0tZj.cjs +0 -1
- package/dist/chunk-3NCLNEKW-CO28EZBG.cjs +0 -1
- package/dist/chunk-3NCLNEKW-dTH67Ne_.js +0 -10
- package/dist/chunk-5RXB4S5H-B5b3tdRl.cjs +0 -231
- package/dist/chunk-7BUUIJ7U-BFUeQBoS.js +0 -82
- package/dist/chunk-7BUUIJ7U-MzS1pW_S.cjs +0 -1
- package/dist/chunk-7Z6QIM7H-Ctljl7Vq.cjs +0 -10
- package/dist/chunk-I66GZJ75-CrpH-Rmq.cjs +0 -127
- package/dist/chunk-J7OUQ5F2-DhMpZbAr.js +0 -57
- package/dist/chunk-J7OUQ5F2-b-MfW4O9.cjs +0 -1
- package/dist/chunk-JQJVKLGR-2AQwaWbm.cjs +0 -156
- package/dist/chunk-KEIR6QF5-Cy_QBNG6.cjs +0 -161
- package/dist/chunk-NSK5VX7P-D5CepZHI.cjs +0 -2
- package/dist/chunk-QR6OTTB3-CQ_jjYb-.js +0 -3736
- package/dist/chunk-QR6OTTB3-DSg3ZWNW.cjs +0 -62
- package/dist/chunk-RYQCIY6F-27FDzaaE.cjs +0 -1
- package/dist/chunk-RYQCIY6F-C-YC3QS_.js +0 -239
- package/dist/chunk-UBXNYLIW-BBncokef.js +0 -32
- package/dist/chunk-UBXNYLIW-DlNyCWjj.cjs +0 -1
- package/dist/chunk-W5SLKNZC-bHBkM2CL.cjs +0 -1
- package/dist/chunk-WRU74C26-9KZxhHnn.cjs +0 -70
- package/dist/chunk-ZIRB5QZD-BU6XQUGC.cjs +0 -32
- package/dist/chunk-ZIRB5QZD-Cj-y77rH.js +0 -1146
- package/dist/classDiagram-JCYQIIEL-DeHc-x8i.cjs +0 -1
- package/dist/classDiagram-JCYQIIEL-DlHKjVPc.js +0 -30
- package/dist/classDiagram-v2-OCEON4UE-DeHc-x8i.cjs +0 -1
- package/dist/classDiagram-v2-OCEON4UE-DlhHN57j.js +0 -30
- package/dist/core-2nR1zkKb.cjs +0 -3
- package/dist/cose-bilkent-JH36ORCC-AyWV1dUo.cjs +0 -1
- package/dist/cpp-BUtp-HE2.cjs +0 -1
- package/dist/csharp-BJu4kEpt.cjs +0 -1
- package/dist/css-DeFr0lev.cjs +0 -1
- package/dist/cynefin-VYW2F7L2-DHhUPDgc.cjs +0 -1
- package/dist/cynefin-VYW2F7L2-DwiVqvhg.js +0 -3
- package/dist/cynefinDiagram-MW4NZA55-By102s5I.cjs +0 -62
- package/dist/cytoscape.esm-ByjvpCPI.cjs +0 -321
- package/dist/dagre-BBlCxSvR.cjs +0 -1
- package/dist/dagre-VZM6K2ZE-5zrH2LqV.js +0 -328
- package/dist/dagre-VZM6K2ZE-CNe7-jhy.cjs +0 -4
- package/dist/defaultLocale-u9yUoUmE.cjs +0 -1
- package/dist/diagram-7IWD3JNH-CSzLXhRw.cjs +0 -30
- package/dist/diagram-LBJQPF4R-DgD0a56I.cjs +0 -24
- package/dist/diagram-Q27KOJAE-DNWfiaD5.cjs +0 -24
- package/dist/diagram-UB23O5K3-DguyM6v_.cjs +0 -41
- package/dist/ebnfDiagram-BXEA7PRR-DuJrkFn-.cjs +0 -1
- package/dist/erDiagram-JOGREHBK-DtyaQROs.cjs +0 -85
- package/dist/eventmodeling-45OFAUF4-COTtdYDJ.js +0 -3
- package/dist/eventmodeling-45OFAUF4-CPEyr9kU.cjs +0 -1
- package/dist/flowDiagram-UKHOOZJN-C7t5VpYH.js +0 -17
- package/dist/flowDiagram-UKHOOZJN-CdkElxh8.cjs +0 -1
- package/dist/ganttDiagram-PKOTCBZU-CFgz4r57.cjs +0 -292
- package/dist/gitGraph-TEB2WS4Q-C3qBT0GM.js +0 -3
- package/dist/gitGraph-TEB2WS4Q-a8KsoPmR.cjs +0 -1
- package/dist/info-DKCQHKI2-BEYhR6ip.cjs +0 -1
- package/dist/info-DKCQHKI2-BPF6-pOb.js +0 -3
- package/dist/infoDiagram-6WML65LV-CB6z_iKE.cjs +0 -2
- package/dist/init-07zIhv_j.cjs +0 -1
- package/dist/java-CUN_usaq.cjs +0 -1
- package/dist/javascript-UZXSyUuu.cjs +0 -1
- package/dist/json-Cp01TR_B.js +0 -36
- package/dist/json-usH_MUzR.cjs +0 -1
- package/dist/linear-Cl2-QuPP.cjs +0 -1
- package/dist/map-CwPlMWPw.cjs +0 -1
- package/dist/map-DU12fF3s.js +0 -241
- package/dist/markdown-qeo95R0i.cjs +0 -1
- package/dist/mermaid.core-BIq27e0A.js +0 -1068
- package/dist/mermaid.core-DpsSj3iy.cjs +0 -10
- package/dist/packet-7NZHBO7P-DqvBYJTR.js +0 -3
- package/dist/packet-7NZHBO7P-Dz0O2bgq.cjs +0 -1
- package/dist/path-Kklx0M1v.cjs +0 -1
- package/dist/pdf-aU0TN69t.cjs +0 -54
- package/dist/pegDiagram-VL7TDLO6-B4FslsmM.cjs +0 -1
- package/dist/pie-RZYD4A2V-Hi9UdoE3.cjs +0 -1
- package/dist/pie-RZYD4A2V-qnruo9sH.js +0 -3
- package/dist/pieDiagram-7S7Q4E2Y-CNzUVS2d.cjs +0 -39
- package/dist/python-BYJzTRkK.cjs +0 -1
- package/dist/radar-I7S5WNFK-Dqdssa34.cjs +0 -1
- package/dist/radar-I7S5WNFK-np_pJCO-.js +0 -3
- package/dist/railroad-3IZDKUUU-NILjDQft.cjs +0 -1
- package/dist/railroad-3IZDKUUU-sjKBeXxB.js +0 -3
- package/dist/railroad-abnf-AHOZXSZD-BojH9sxV.cjs +0 -1
- package/dist/railroad-abnf-AHOZXSZD-x5cC_e_R.js +0 -3
- package/dist/railroad-ebnf-EBAXGLYW-2mlWpz38.js +0 -3
- package/dist/railroad-ebnf-EBAXGLYW-BKCSut1M.cjs +0 -1
- package/dist/railroad-peg-LSFZ7HO6-CsH-gnsp.cjs +0 -1
- package/dist/railroad-peg-LSFZ7HO6-D5vguo03.js +0 -3
- package/dist/railroadDiagram-AXF67PYL-EO1cBHEj.cjs +0 -1
- package/dist/rust-ghVvEWhm.cjs +0 -1
- package/dist/scss-CKxh5HRg.cjs +0 -1
- package/dist/sequenceDiagram-SI44F4Z6-CuaCFBtR.cjs +0 -162
- package/dist/src-CR--T_NF.cjs +0 -1
- package/dist/stateDiagram-OKZ733FA-Dq6hI_pq.cjs +0 -1
- package/dist/stateDiagram-v2-UEYNNEHI-BmWUstzl.js +0 -30
- package/dist/stateDiagram-v2-UEYNNEHI-DZULVhS9.cjs +0 -1
- package/dist/swimlanes-SLNWSIFB-BMS6R0BK.cjs +0 -1
- package/dist/swimlanesDiagram-ULZ7WXOC-DxHKX_pj.cjs +0 -8
- package/dist/swimlanesDiagram-ULZ7WXOC-uXMuqsao.js +0 -31
- package/dist/timeline-definition-Z64GVDOM-PPJqDdOy.cjs +0 -120
- package/dist/treeView-QDETBFTQ-Cpg_YeQ4.cjs +0 -1
- package/dist/treeView-QDETBFTQ-DdpEhzZX.js +0 -3
- package/dist/treemap-6X3UGDF4-BeCuRpkA.js +0 -3
- package/dist/treemap-6X3UGDF4-CFAmnKaf.cjs +0 -1
- package/dist/typescript-clWeqIBY.cjs +0 -1
- package/dist/vennDiagram-T6HMQDX7-DqY7YgNx.cjs +0 -34
- package/dist/wardley-OPB4EBWU-B0jnKd8x.cjs +0 -1
- package/dist/wardley-OPB4EBWU-DlIk2K0J.js +0 -3
- package/dist/yaml-bAgWofBg.cjs +0 -1
- /package/dist/{sizeCapture-X5ZJPWSS-bJ2ZX4Du.cjs → sizeCapture-INFHLROL-bJ2ZX4Du.cjs} +0 -0
|
@@ -1,58 +1,18 @@
|
|
|
1
1
|
import { n as e } from "./chunk-Y2CYZVJY-CwsV_8W4.js";
|
|
2
|
-
import { m as t } from "./src-
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
let n = new s({
|
|
17
|
-
multigraph: !0,
|
|
18
|
-
compound: !0
|
|
19
|
-
}), i = [...t.edges], a = r(), o = e.insert("g").attr("class", "root"), c = o.insert("g").attr("class", "clusters"), u = o.insert("g").attr("class", "edges edgePath"), d = o.insert("g").attr("class", "edgeLabels"), f = o.insert("g").attr("class", "nodes"), p = /* @__PURE__ */ new Map(), m = e.node() != null;
|
|
20
|
-
await Promise.all(t.nodes.map(async (e) => {
|
|
21
|
-
if (e.isGroup) n.setNode(e.id, { ...e });
|
|
22
|
-
else {
|
|
23
|
-
if (m) {
|
|
24
|
-
let t = await l(f, e, {
|
|
25
|
-
config: a,
|
|
26
|
-
dir: e.dir
|
|
27
|
-
}), n = t.node()?.getBBox() ?? {
|
|
28
|
-
width: 0,
|
|
29
|
-
height: 0
|
|
30
|
-
};
|
|
31
|
-
p.set(e.id, t), e.width = n.width, e.height = n.height;
|
|
32
|
-
}
|
|
33
|
-
n.setNode(e.id, { ...e });
|
|
34
|
-
}
|
|
35
|
-
}));
|
|
36
|
-
for (let e of i) n.setEdge(e.start, e.end, { ...e }, e.id), t.edges.some((t) => t.id === e.id) || t.edges.push(e);
|
|
37
|
-
if (globalThis.mermaidCaptureSizes) {
|
|
38
|
-
let { captureNodeSizes: n } = await import("./sizeCapture-X5ZJPWSS-DKbHZNyz.js");
|
|
39
|
-
n(e, t);
|
|
40
|
-
}
|
|
41
|
-
return {
|
|
42
|
-
graph: n,
|
|
43
|
-
groups: {
|
|
44
|
-
clusters: c,
|
|
45
|
-
edgePaths: u,
|
|
46
|
-
edgeLabels: d,
|
|
47
|
-
nodes: f,
|
|
48
|
-
rootGroups: o
|
|
49
|
-
},
|
|
50
|
-
nodeElements: p
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
e(b, "createGraphWithElements");
|
|
54
|
-
var x = 5, S = 1e-5, C = 1e-6;
|
|
55
|
-
function w(e) {
|
|
2
|
+
import { m as t } from "./src-BMMAFeC3.js";
|
|
3
|
+
import "./chunk-DU6HZSFF-CaHy-FdL.js";
|
|
4
|
+
import "./chunk-75Z2AOVW-Eg_bFxBJ.js";
|
|
5
|
+
import "./chunk-PWAF6VOD-j4sFqhOF.js";
|
|
6
|
+
import "./chunk-GMAD6QVW-DCCx2Rg1.js";
|
|
7
|
+
import "./chunk-P2QGCYS3-uCJfSNHC.js";
|
|
8
|
+
import "./chunk-4HAMMTFA-dRm_HqMI.js";
|
|
9
|
+
import "./chunk-GVQU2GXP-BRMv2gX3.js";
|
|
10
|
+
import { o as n } from "./chunk-OSK3NFVY-CxjvZYNR.js";
|
|
11
|
+
import "./chunk-L3NEJ4N5-DkoFQHrz.js";
|
|
12
|
+
import { createCommonLayoutRenderer as r } from "./mermaid.core-BIqYA7q2.js";
|
|
13
|
+
//#region ../node_modules/mermaid/dist/chunks/mermaid.core/swimlanes-V6O3JKXN.mjs
|
|
14
|
+
var i = 5, a = 1e-5, o = 1e-6;
|
|
15
|
+
function s(e) {
|
|
56
16
|
let t = [];
|
|
57
17
|
for (let n = 0; n < e.length - 1; n++) t.push({
|
|
58
18
|
a: e[n],
|
|
@@ -60,36 +20,36 @@ function w(e) {
|
|
|
60
20
|
});
|
|
61
21
|
return t;
|
|
62
22
|
}
|
|
63
|
-
e(
|
|
64
|
-
function
|
|
65
|
-
let i = t.x - e.x, a = t.y - e.y,
|
|
66
|
-
if (
|
|
67
|
-
let
|
|
68
|
-
return
|
|
23
|
+
e(s, "buildSegmentList");
|
|
24
|
+
function c(e, t, n, r) {
|
|
25
|
+
let i = t.x - e.x, a = t.y - e.y, s = r.x - n.x, c = r.y - n.y, l = i * c - a * s;
|
|
26
|
+
if (l === 0) return null;
|
|
27
|
+
let u = n.x - e.x, d = n.y - e.y, f = (u * c - d * s) / l, p = (u * a - d * i) / l;
|
|
28
|
+
return f <= o || f >= 1 - o || p <= o || p >= 1 - o ? null : {
|
|
69
29
|
point: {
|
|
70
|
-
x: e.x +
|
|
71
|
-
y: e.y +
|
|
30
|
+
x: e.x + f * i,
|
|
31
|
+
y: e.y + f * a
|
|
72
32
|
},
|
|
73
|
-
tA:
|
|
74
|
-
tB:
|
|
33
|
+
tA: f,
|
|
34
|
+
tB: p
|
|
75
35
|
};
|
|
76
36
|
}
|
|
77
|
-
e(
|
|
78
|
-
function
|
|
37
|
+
e(c, "segmentIntersection");
|
|
38
|
+
function l(e) {
|
|
79
39
|
return Math.abs(e.b.x - e.a.x) >= Math.abs(e.b.y - e.a.y);
|
|
80
40
|
}
|
|
81
|
-
e(
|
|
82
|
-
function
|
|
41
|
+
e(l, "isHorizontalSeg");
|
|
42
|
+
function u(e) {
|
|
83
43
|
let t = [];
|
|
84
44
|
for (let n = 0; n < e.length; n++) {
|
|
85
|
-
let r = e[n], i =
|
|
45
|
+
let r = e[n], i = s(r.points);
|
|
86
46
|
for (let a = n + 1; a < e.length; a++) {
|
|
87
|
-
let n = e[a], o =
|
|
47
|
+
let n = e[a], o = s(n.points);
|
|
88
48
|
for (let [e, a] of i.entries()) for (let [i, s] of o.entries()) {
|
|
89
|
-
let o =
|
|
49
|
+
let o = c(a.a, a.b, s.a, s.b);
|
|
90
50
|
if (!o) continue;
|
|
91
|
-
let
|
|
92
|
-
|
|
51
|
+
let u = l(a);
|
|
52
|
+
u !== l(s) && u ? t.push({
|
|
93
53
|
jumpEdgeId: r.id,
|
|
94
54
|
otherEdgeId: n.id,
|
|
95
55
|
segIndex: e,
|
|
@@ -107,112 +67,112 @@ function D(e) {
|
|
|
107
67
|
}
|
|
108
68
|
return t;
|
|
109
69
|
}
|
|
110
|
-
e(
|
|
111
|
-
function
|
|
70
|
+
e(u, "findEdgeIntersections");
|
|
71
|
+
function d(e) {
|
|
112
72
|
return `${Math.round(e * 1e3) / 1e3}`;
|
|
113
73
|
}
|
|
114
|
-
e(
|
|
115
|
-
function
|
|
116
|
-
return `${
|
|
74
|
+
e(d, "fmt");
|
|
75
|
+
function f(e) {
|
|
76
|
+
return `${d(e.x)},${d(e.y)}`;
|
|
117
77
|
}
|
|
118
|
-
e(
|
|
119
|
-
function
|
|
78
|
+
e(f, "pointToString");
|
|
79
|
+
function p(e) {
|
|
120
80
|
let t = e.b.x - e.a.x, n = e.b.y - e.a.y;
|
|
121
81
|
return Math.abs(t) >= Math.abs(n) ? +(t >= 0) : +(n >= 0);
|
|
122
82
|
}
|
|
123
|
-
e(
|
|
124
|
-
var
|
|
125
|
-
function
|
|
83
|
+
e(p, "getArcSweepFlag");
|
|
84
|
+
var m = .001;
|
|
85
|
+
function h(e, t) {
|
|
126
86
|
if (e.length < 2) return e.map((e) => ({ ...e }));
|
|
127
|
-
let
|
|
128
|
-
if (r) {
|
|
129
|
-
let t = e[0], i = e[1], a = Math.atan2(i.y - t.y, i.x - t.x);
|
|
130
|
-
n[0].x = t.x + r * Math.cos(a), n[0].y = t.y + r * Math.sin(a);
|
|
131
|
-
}
|
|
132
|
-
let i = t.arrowTypeEnd && a[t.arrowTypeEnd];
|
|
87
|
+
let r = e.map((e) => ({ ...e })), i = t.arrowTypeStart && n[t.arrowTypeStart];
|
|
133
88
|
if (i) {
|
|
134
|
-
let t = e
|
|
135
|
-
|
|
89
|
+
let t = e[0], n = e[1], a = Math.atan2(n.y - t.y, n.x - t.x);
|
|
90
|
+
r[0].x = t.x + i * Math.cos(a), r[0].y = t.y + i * Math.sin(a);
|
|
136
91
|
}
|
|
137
|
-
|
|
92
|
+
let a = t.arrowTypeEnd && n[t.arrowTypeEnd];
|
|
93
|
+
if (a) {
|
|
94
|
+
let t = e.length, n = e[t - 2], i = e[t - 1], o = Math.atan2(i.y - n.y, i.x - n.x);
|
|
95
|
+
r[t - 1].x = i.x - a * Math.cos(o), r[t - 1].y = i.y - a * Math.sin(o);
|
|
96
|
+
}
|
|
97
|
+
return r;
|
|
138
98
|
}
|
|
139
|
-
e(
|
|
140
|
-
function
|
|
99
|
+
e(h, "applyMarkerOffsets");
|
|
100
|
+
function g(e, t, n, r, i) {
|
|
141
101
|
let a = e.point.x, o = e.point.y, s = {
|
|
142
102
|
x: a - t * e.r,
|
|
143
103
|
y: o - n * e.r
|
|
144
104
|
}, c = {
|
|
145
105
|
x: a + t * e.r,
|
|
146
106
|
y: o + n * e.r
|
|
147
|
-
}, l = [`L${
|
|
148
|
-
return i === "arc" ? l.push(`A${
|
|
149
|
-
}
|
|
150
|
-
e(
|
|
151
|
-
function
|
|
152
|
-
let i = t.x - e.x,
|
|
153
|
-
if (
|
|
154
|
-
let
|
|
155
|
-
if (
|
|
156
|
-
let
|
|
107
|
+
}, l = [`L${f(s)}`];
|
|
108
|
+
return i === "arc" ? l.push(`A${d(e.r)},${d(e.r)} 0 0 ${r} ${f(c)}`) : l.push(`M${f(c)}`), l;
|
|
109
|
+
}
|
|
110
|
+
e(g, "emitJump");
|
|
111
|
+
function _(e, t, n, r) {
|
|
112
|
+
let i = t.x - e.x, o = t.y - e.y, s = n.x - t.x, c = n.y - t.y, l = Math.hypot(i, o), u = Math.hypot(s, c);
|
|
113
|
+
if (l < a || u < a) return null;
|
|
114
|
+
let d = i / l, f = o / l, p = s / u, m = c / u, h = d * p + f * m, g = Math.acos(Math.max(-1, Math.min(1, h)));
|
|
115
|
+
if (g < a || Math.abs(Math.PI - g) < a) return null;
|
|
116
|
+
let _ = Math.min(r / Math.sin(g / 2), l / 2, u / 2);
|
|
157
117
|
return {
|
|
158
|
-
startX: t.x -
|
|
159
|
-
startY: t.y -
|
|
160
|
-
endX: t.x +
|
|
161
|
-
endY: t.y +
|
|
118
|
+
startX: t.x - d * _,
|
|
119
|
+
startY: t.y - f * _,
|
|
120
|
+
endX: t.x + p * _,
|
|
121
|
+
endY: t.y + m * _,
|
|
162
122
|
ctrlX: t.x,
|
|
163
123
|
ctrlY: t.y,
|
|
164
|
-
cutLen:
|
|
124
|
+
cutLen: _
|
|
165
125
|
};
|
|
166
126
|
}
|
|
167
|
-
e(
|
|
168
|
-
function
|
|
127
|
+
e(_, "computeRoundedCorner");
|
|
128
|
+
function v(e, t, n) {
|
|
169
129
|
let r = e.points;
|
|
170
130
|
if (r.length < 2) return "";
|
|
171
|
-
let
|
|
131
|
+
let a = h(r, e), o = e.curve === "rounded", c = s(a), l = /* @__PURE__ */ new Map();
|
|
172
132
|
for (let e of t) {
|
|
173
|
-
let t =
|
|
133
|
+
let t = c[e.segIndex];
|
|
174
134
|
if (!t) continue;
|
|
175
|
-
let r = Math.hypot(t.b.x - t.a.x, t.b.y - t.a.y), i =
|
|
135
|
+
let r = Math.hypot(t.b.x - t.a.x, t.b.y - t.a.y), i = l.get(e.segIndex) ?? [];
|
|
176
136
|
i.push({
|
|
177
137
|
t: e.t,
|
|
178
138
|
point: e.point,
|
|
179
139
|
d: e.t * r,
|
|
180
140
|
r: n.jumpRadius
|
|
181
|
-
}),
|
|
182
|
-
}
|
|
183
|
-
let
|
|
184
|
-
for (let e = 0; e <
|
|
185
|
-
let t =
|
|
186
|
-
if (
|
|
187
|
-
let t =
|
|
188
|
-
t && (
|
|
189
|
-
}
|
|
190
|
-
let
|
|
191
|
-
|
|
192
|
-
let
|
|
193
|
-
for (let e of
|
|
194
|
-
for (let e = 0; e <
|
|
195
|
-
let t =
|
|
196
|
-
if (
|
|
141
|
+
}), l.set(e.segIndex, i);
|
|
142
|
+
}
|
|
143
|
+
let u = [`M${f(a[0])}`];
|
|
144
|
+
for (let e = 0; e < c.length; e++) {
|
|
145
|
+
let t = c[e], r = Math.hypot(t.b.x - t.a.x, t.b.y - t.a.y), s = r === 0 ? 0 : (t.b.x - t.a.x) / r, h = r === 0 ? 0 : (t.b.y - t.a.y) / r, v = p(t), y = 0;
|
|
146
|
+
if (o && e > 0) {
|
|
147
|
+
let t = _(a[e - 1], a[e], a[e + 1] ?? a[e], i);
|
|
148
|
+
t && (y = t.cutLen);
|
|
149
|
+
}
|
|
150
|
+
let b = r, x = null;
|
|
151
|
+
o && e < c.length - 1 && (x = _(a[e], a[e + 1], a[e + 2] ?? a[e + 1], i), x && (b = r - x.cutLen));
|
|
152
|
+
let S = [...l.get(e) ?? []].sort((e, t) => e.t - t.t);
|
|
153
|
+
for (let e of S) e.r = Math.min(e.r, e.d - y, b - e.d);
|
|
154
|
+
for (let e = 0; e < S.length - 1; e++) {
|
|
155
|
+
let t = S[e + 1].d - S[e].d;
|
|
156
|
+
if (S[e].r + S[e + 1].r > t) {
|
|
197
157
|
let n = t / 2;
|
|
198
|
-
|
|
158
|
+
S[e].r = Math.min(S[e].r, n), S[e + 1].r = Math.min(S[e + 1].r, n);
|
|
199
159
|
}
|
|
200
160
|
}
|
|
201
|
-
for (let e of
|
|
202
|
-
|
|
161
|
+
for (let e of S) e.r < m || u.push(...g(e, s, h, v, n.jumpStyle));
|
|
162
|
+
o && x ? (u.push(`L${d(x.startX)},${d(x.startY)}`), u.push(`Q${d(x.ctrlX)},${d(x.ctrlY)} ${d(x.endX)},${d(x.endY)}`)) : u.push(`L${f(t.b)}`);
|
|
203
163
|
}
|
|
204
|
-
return
|
|
164
|
+
return u.join(" ");
|
|
205
165
|
}
|
|
206
|
-
e(
|
|
207
|
-
function
|
|
166
|
+
e(v, "rewriteEdgePath");
|
|
167
|
+
function y(e) {
|
|
208
168
|
return /^[\d\s+,.LMelm-]*$/.test(e);
|
|
209
169
|
}
|
|
210
|
-
e(
|
|
211
|
-
function
|
|
212
|
-
return e
|
|
170
|
+
e(y, "isStraightPath");
|
|
171
|
+
function b(e) {
|
|
172
|
+
return !e || e === "linear" || e === "rounded" || e === "step" || e === "stepBefore" || e === "stepAfter";
|
|
213
173
|
}
|
|
214
|
-
e(
|
|
215
|
-
function
|
|
174
|
+
e(b, "curveSupportsLineHops");
|
|
175
|
+
function x(e) {
|
|
216
176
|
if (!e) return null;
|
|
217
177
|
try {
|
|
218
178
|
let t = typeof atob == "function" ? atob(e) : Buffer.from(e, "base64").toString(), n = JSON.parse(t);
|
|
@@ -227,8 +187,8 @@ function P(e) {
|
|
|
227
187
|
return null;
|
|
228
188
|
}
|
|
229
189
|
}
|
|
230
|
-
e(
|
|
231
|
-
function
|
|
190
|
+
e(x, "decodeDataPoints");
|
|
191
|
+
function S(e, t, n) {
|
|
232
192
|
if (!n.enabled) return;
|
|
233
193
|
let r = e.node();
|
|
234
194
|
if (!r) return;
|
|
@@ -239,13 +199,13 @@ function ie(e, t, n) {
|
|
|
239
199
|
let t = typeof CSS < "u" && CSS.escape ? CSS.escape(e.id) : e.id, n = r.querySelector(`path[data-id="${t}"]`);
|
|
240
200
|
if (!n) continue;
|
|
241
201
|
o.set(e.id, n);
|
|
242
|
-
let i =
|
|
202
|
+
let i = x(n.getAttribute("data-points")) ?? e.points;
|
|
243
203
|
a.push({
|
|
244
204
|
...e,
|
|
245
205
|
points: i
|
|
246
206
|
});
|
|
247
207
|
}
|
|
248
|
-
let s =
|
|
208
|
+
let s = u(a);
|
|
249
209
|
if (s.length === 0) return;
|
|
250
210
|
let c = /* @__PURE__ */ new Map();
|
|
251
211
|
for (let e of s) {
|
|
@@ -256,98 +216,46 @@ function ie(e, t, n) {
|
|
|
256
216
|
let t = c.get(e.id);
|
|
257
217
|
if (!t || t.length === 0) continue;
|
|
258
218
|
let r = i.get(e.id)?.curve;
|
|
259
|
-
if (r !== void 0 && !
|
|
219
|
+
if (r !== void 0 && !b(r)) continue;
|
|
260
220
|
let a = o.get(e.id);
|
|
261
|
-
if (!a || r === void 0 && !
|
|
262
|
-
let s = a.getAttribute("style") ?? "", l = /stroke-dasharray\s*:\s*0\s+([\d.]+)\s+[\d.]+\s+([\d.]+)/.exec(s), u = l ? Number.parseFloat(l[1]) : null, d = l ? Number.parseFloat(l[2]) : null, f =
|
|
221
|
+
if (!a || r === void 0 && !y(a.getAttribute("d") ?? "")) continue;
|
|
222
|
+
let s = a.getAttribute("style") ?? "", l = /stroke-dasharray\s*:\s*0\s+([\d.]+)\s+[\d.]+\s+([\d.]+)/.exec(s), u = l ? Number.parseFloat(l[1]) : null, d = l ? Number.parseFloat(l[2]) : null, f = v(e, t, n);
|
|
263
223
|
if (a.setAttribute("d", f), u !== null && d !== null && typeof a.getTotalLength == "function") {
|
|
264
224
|
let e = a.getTotalLength(), t = `0 ${u} ${Math.max(0, e - u - d)} ${d}`, n = s.replace(/stroke-dasharray\s*:[^;]*;?/g, `stroke-dasharray: ${t};`).replace(/;\s*;+/g, ";");
|
|
265
225
|
a.setAttribute("style", n);
|
|
266
226
|
}
|
|
267
227
|
}
|
|
268
228
|
}
|
|
269
|
-
e(
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
arrowTypeEnd: e.arrowTypeEnd
|
|
286
|
-
}));
|
|
287
|
-
ie(t.edgePaths, i, {
|
|
288
|
-
enabled: !0,
|
|
289
|
-
jumpRadius: 6,
|
|
290
|
-
jumpStyle: n
|
|
291
|
-
});
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
e(ae, "adjustLayout");
|
|
295
|
-
function oe(e, r) {
|
|
296
|
-
let a = r?.updatedPath ?? r?.originalPath, { subGraphTitleTotalMargin: s } = o({ flowchart: n().flowchart ?? {} });
|
|
297
|
-
if (e.label) {
|
|
298
|
-
let n = g.get(e.id), o = e.x, c = e.y;
|
|
299
|
-
if (a) {
|
|
300
|
-
let n = i.calcLabelPosition(a);
|
|
301
|
-
t.debug("Moving label " + e.label + " from (", o, ",", c, ") to (", n.x, ",", n.y, ") abc88"), r && (o = n.x, c = n.y);
|
|
302
|
-
}
|
|
303
|
-
n.attr("transform", `translate(${o}, ${c + s / 2})`);
|
|
304
|
-
}
|
|
305
|
-
if (e?.startLabelLeft) {
|
|
306
|
-
let t = v.get(e.id).startLeft, n = e?.x, r = e?.y;
|
|
307
|
-
if (a) {
|
|
308
|
-
let t = i.calcTerminalLabelPosition(e.arrowTypeStart ? 10 : 0, "start_left", a);
|
|
309
|
-
n = t.x, r = t.y;
|
|
310
|
-
}
|
|
311
|
-
t.attr("transform", `translate(${n}, ${r})`);
|
|
312
|
-
}
|
|
313
|
-
if (e.startLabelRight) {
|
|
314
|
-
let t = v.get(e.id).startRight, n = e.x, r = e.y;
|
|
315
|
-
if (a) {
|
|
316
|
-
let t = i.calcTerminalLabelPosition(e.arrowTypeStart ? 10 : 0, "start_right", a);
|
|
317
|
-
n = t.x, r = t.y;
|
|
318
|
-
}
|
|
319
|
-
t.attr("transform", `translate(${n}, ${r})`);
|
|
320
|
-
}
|
|
321
|
-
if (e.endLabelLeft) {
|
|
322
|
-
let t = v.get(e.id).endLeft, n = e.x, r = e.y;
|
|
323
|
-
if (a) {
|
|
324
|
-
let t = i.calcTerminalLabelPosition(e.arrowTypeEnd ? 10 : 0, "end_left", a);
|
|
325
|
-
n = t.x, r = t.y;
|
|
326
|
-
}
|
|
327
|
-
t.attr("transform", `translate(${n}, ${r})`);
|
|
328
|
-
}
|
|
329
|
-
if (e.endLabelRight) {
|
|
330
|
-
let t = v.get(e.id).endRight, n = e.x, r = e.y;
|
|
331
|
-
if (a) {
|
|
332
|
-
let t = i.calcTerminalLabelPosition(e.arrowTypeEnd ? 10 : 0, "end_right", a);
|
|
333
|
-
n = t.x, r = t.y;
|
|
334
|
-
}
|
|
335
|
-
t.attr("transform", `translate(${n}, ${r})`);
|
|
336
|
-
}
|
|
229
|
+
e(S, "applyLineJumpsToSvg");
|
|
230
|
+
function C(e, { measure: t }) {
|
|
231
|
+
let n = e.config?.swimlane?.lineHops;
|
|
232
|
+
if (n === !1) return;
|
|
233
|
+
let r = n === "gap" ? "gap" : "arc", i = e.edges.filter((e) => Array.isArray(e.points) && e.points.length >= 2).map((e) => ({
|
|
234
|
+
id: e.id,
|
|
235
|
+
points: e.points,
|
|
236
|
+
curve: e.curve,
|
|
237
|
+
arrowTypeStart: e.arrowTypeStart,
|
|
238
|
+
arrowTypeEnd: e.arrowTypeEnd
|
|
239
|
+
}));
|
|
240
|
+
S(t.groups.edgePaths, i, {
|
|
241
|
+
enabled: !0,
|
|
242
|
+
jumpRadius: 6,
|
|
243
|
+
jumpStyle: r
|
|
244
|
+
});
|
|
337
245
|
}
|
|
338
|
-
e(
|
|
339
|
-
var
|
|
340
|
-
function
|
|
341
|
-
return Math.max(e.padding ??
|
|
246
|
+
e(C, "applySwimlaneLineJumps");
|
|
247
|
+
var w = "__swimlane_default__", T = 21, E = 20;
|
|
248
|
+
function D(e) {
|
|
249
|
+
return Math.max(e.padding ?? E, E);
|
|
342
250
|
}
|
|
343
|
-
e(
|
|
344
|
-
function
|
|
251
|
+
e(D, "topLaneHorizontalPadding");
|
|
252
|
+
function O(e) {
|
|
345
253
|
let { x: t, y: n, width: r, height: i } = e, a = e.swimlaneContentTop;
|
|
346
254
|
if (typeof t != "number" || typeof n != "number" || typeof r != "number" || typeof i != "number" || typeof a != "number" || !Number.isFinite(t) || !Number.isFinite(n) || !Number.isFinite(r) || !Number.isFinite(i) || !Number.isFinite(a) || r <= 0 || i <= 0) {
|
|
347
255
|
delete e.groupTitleRect;
|
|
348
256
|
return;
|
|
349
257
|
}
|
|
350
|
-
let o = n - i / 2, s = Math.min(a, n + i / 2), c = o + Math.min(
|
|
258
|
+
let o = n - i / 2, s = Math.min(a, n + i / 2), c = o + Math.min(T, Math.max(0, s - o));
|
|
351
259
|
if (c <= o) {
|
|
352
260
|
delete e.groupTitleRect;
|
|
353
261
|
return;
|
|
@@ -359,25 +267,25 @@ function de(e) {
|
|
|
359
267
|
bottom: c
|
|
360
268
|
};
|
|
361
269
|
}
|
|
362
|
-
e(
|
|
363
|
-
function
|
|
270
|
+
e(O, "assignTopLaneTitleRect");
|
|
271
|
+
function k(e) {
|
|
364
272
|
let t = e.direction, n = e.nodes ??= [];
|
|
365
273
|
for (let n of e.nodes ?? []) n.isGroup && !n.parentId && (n.shape = "swimlane", t && (n.direction = t));
|
|
366
274
|
let r = n.filter((e) => !e.isGroup && !e.parentId);
|
|
367
275
|
if (r.length === 0) return;
|
|
368
|
-
let i = n.find((e) => e.id ===
|
|
276
|
+
let i = n.find((e) => e.id === w);
|
|
369
277
|
i ? i.isGroup && (i.shape = "swimlane", t && (i.direction = t)) : (i = {
|
|
370
|
-
id:
|
|
278
|
+
id: w,
|
|
371
279
|
label: "",
|
|
372
280
|
isGroup: !0,
|
|
373
281
|
shape: "swimlane",
|
|
374
282
|
padding: 20,
|
|
375
283
|
...t ? { direction: t } : {}
|
|
376
284
|
}, n.push(i));
|
|
377
|
-
for (let e of r) e.parentId =
|
|
285
|
+
for (let e of r) e.parentId = w;
|
|
378
286
|
}
|
|
379
|
-
e(
|
|
380
|
-
function
|
|
287
|
+
e(k, "prepareLayoutForSwimlanes");
|
|
288
|
+
function A(e) {
|
|
381
289
|
let t = /* @__PURE__ */ new Map();
|
|
382
290
|
for (let n of e.nodes ?? []) t.set(n.id, n);
|
|
383
291
|
let n = [];
|
|
@@ -398,8 +306,8 @@ function pe(e) {
|
|
|
398
306
|
nodeById: t
|
|
399
307
|
};
|
|
400
308
|
}
|
|
401
|
-
e(
|
|
402
|
-
function
|
|
309
|
+
e(A, "toGraphView");
|
|
310
|
+
function j(e, t, n, r) {
|
|
403
311
|
let { layout: i } = e, a = e.nodeById, o = r?.layerGap ?? 100, s = r?.nodeGap ?? 40, c = 0;
|
|
404
312
|
for (let e of t.layers) {
|
|
405
313
|
let t = 0;
|
|
@@ -426,7 +334,7 @@ function F(e, t, n, r) {
|
|
|
426
334
|
}
|
|
427
335
|
if (r === Infinity || a === Infinity) e.x = e.x ?? 0, e.y = e.y ?? 0, e.width = e.width ?? 0, e.height = e.height ?? 0;
|
|
428
336
|
else {
|
|
429
|
-
let t = e.padding ?? 20, n = e.parentId ? t : 2 *
|
|
337
|
+
let t = e.padding ?? 20, n = e.parentId ? t : 2 * D(e), s = t, c = Math.max(0, i - r) + n, l = Math.max(0, o - a) + s, d = (r + i) / 2, f = (a + o) / 2;
|
|
430
338
|
e.x = d, e.y = f, e.width = c, e.height = l, u.set(e.id, {
|
|
431
339
|
minX: r,
|
|
432
340
|
maxX: i,
|
|
@@ -450,7 +358,7 @@ function F(e, t, n, r) {
|
|
|
450
358
|
for (let e of a) {
|
|
451
359
|
let t = u.get(e.id);
|
|
452
360
|
if (!t) continue;
|
|
453
|
-
let n = Math.max(0, t.maxX - t.minX) + 2 *
|
|
361
|
+
let n = Math.max(0, t.maxX - t.minX) + 2 * D(e), r = (t.minX + t.maxX) / 2;
|
|
454
362
|
o.push(e.id), s.push(r), c.push(n);
|
|
455
363
|
}
|
|
456
364
|
let l = o.length;
|
|
@@ -477,22 +385,22 @@ function F(e, t, n, r) {
|
|
|
477
385
|
}
|
|
478
386
|
for (let t of d) {
|
|
479
387
|
let n = e.get(t.id);
|
|
480
|
-
n != null && (t.width = n),
|
|
388
|
+
n != null && (t.width = n), O(t);
|
|
481
389
|
}
|
|
482
390
|
}
|
|
483
391
|
}
|
|
484
392
|
}
|
|
485
393
|
}
|
|
486
|
-
e(
|
|
487
|
-
var
|
|
488
|
-
function
|
|
394
|
+
e(j, "writeBackToLayoutData");
|
|
395
|
+
var ee = "[EdgeLabelNodes]";
|
|
396
|
+
function te(e) {
|
|
489
397
|
let n = [], r = [], i = /* @__PURE__ */ new Map();
|
|
490
398
|
for (let t of e.nodes) i.set(t.id, t);
|
|
491
399
|
for (let a of e.edges) {
|
|
492
400
|
if (!a.label || a.label.length === 0 || a.isLayoutOnly || a.labelNodeId) continue;
|
|
493
401
|
let e = a.start ? i.get(a.start) : void 0, o = a.end ? i.get(a.end) : void 0;
|
|
494
402
|
if (!e || !o) {
|
|
495
|
-
t.warn(
|
|
403
|
+
t.warn(ee, `Edge ${a.id} has missing source or target node`);
|
|
496
404
|
continue;
|
|
497
405
|
}
|
|
498
406
|
let s = `edge-label-${a.start}-${a.end}-${a.id}`, c = e.parentId === o.parentId ? e.parentId : o.parentId, l = {
|
|
@@ -533,20 +441,20 @@ function me(e) {
|
|
|
533
441
|
edges: o
|
|
534
442
|
};
|
|
535
443
|
}
|
|
536
|
-
e(
|
|
537
|
-
var
|
|
538
|
-
function
|
|
444
|
+
e(te, "createEdgeLabelNodes");
|
|
445
|
+
var M = .001;
|
|
446
|
+
function ne(e) {
|
|
539
447
|
let t = e.x ?? 0, n = e.y ?? 0, r = e.width ?? 0, i = e.height ?? 0;
|
|
540
448
|
return r > 0 && i > 0 ? {
|
|
541
449
|
cx: t,
|
|
542
450
|
cy: n,
|
|
543
|
-
rect:
|
|
451
|
+
rect: se(t, n, r, i)
|
|
544
452
|
} : void 0;
|
|
545
453
|
}
|
|
546
|
-
e(
|
|
547
|
-
function
|
|
454
|
+
e(ne, "measuredNodeRect");
|
|
455
|
+
function N(e) {
|
|
548
456
|
if (e.isGroup) return;
|
|
549
|
-
let t =
|
|
457
|
+
let t = ne(e);
|
|
550
458
|
if (t) return {
|
|
551
459
|
id: String(e.id ?? ""),
|
|
552
460
|
cx: t.cx,
|
|
@@ -554,39 +462,39 @@ function ge(e) {
|
|
|
554
462
|
rect: t.rect
|
|
555
463
|
};
|
|
556
464
|
}
|
|
557
|
-
e(
|
|
558
|
-
function
|
|
465
|
+
e(N, "nodeBoundsInfoFor");
|
|
466
|
+
function P(e, t, n = M) {
|
|
559
467
|
return Math.abs(e.x - t.x) < n && Math.abs(e.y - t.y) < n;
|
|
560
468
|
}
|
|
561
|
-
e(
|
|
562
|
-
function
|
|
469
|
+
e(P, "samePoint");
|
|
470
|
+
function F(e, t, n = M) {
|
|
563
471
|
return Math.abs(e.x - t.x) < n;
|
|
564
472
|
}
|
|
565
|
-
e(
|
|
566
|
-
function
|
|
473
|
+
e(F, "sameX");
|
|
474
|
+
function I(e, t, n = M) {
|
|
567
475
|
return Math.abs(e.y - t.y) < n;
|
|
568
476
|
}
|
|
569
|
-
e(
|
|
570
|
-
function
|
|
571
|
-
return
|
|
477
|
+
e(I, "sameY");
|
|
478
|
+
function L(e, t, n = M) {
|
|
479
|
+
return I(e, t, n) && Math.abs(e.x - t.x) > n;
|
|
572
480
|
}
|
|
573
|
-
e(
|
|
574
|
-
function
|
|
575
|
-
return
|
|
481
|
+
e(L, "isHorizontalSegment");
|
|
482
|
+
function R(e, t, n = M) {
|
|
483
|
+
return F(e, t, n) && Math.abs(e.y - t.y) > n;
|
|
576
484
|
}
|
|
577
|
-
e(
|
|
578
|
-
function
|
|
485
|
+
e(R, "isVerticalSegment");
|
|
486
|
+
function z(e, t, n, r) {
|
|
579
487
|
return Math.max(0, Math.min(Math.max(e, t), Math.max(n, r)) - Math.max(Math.min(e, t), Math.min(n, r)));
|
|
580
488
|
}
|
|
581
|
-
e(
|
|
582
|
-
function
|
|
583
|
-
return e.horizontal && t.horizontal &&
|
|
489
|
+
e(z, "overlapLength");
|
|
490
|
+
function B(e, t, n = M) {
|
|
491
|
+
return e.horizontal && t.horizontal && I(e.a, t.a, n) ? z(e.a.x, e.b.x, t.a.x, t.b.x) : e.vertical && t.vertical && F(e.a, t.a, n) ? z(e.a.y, e.b.y, t.a.y, t.b.y) : 0;
|
|
584
492
|
}
|
|
585
|
-
e(
|
|
586
|
-
function
|
|
493
|
+
e(B, "sameAxisSegmentOverlapLength");
|
|
494
|
+
function re(e, t = M) {
|
|
587
495
|
let n = [];
|
|
588
496
|
for (let r = 0; r < e.length - 1; r++) {
|
|
589
|
-
let i = e[r], a = e[r + 1], o =
|
|
497
|
+
let i = e[r], a = e[r + 1], o = L(i, a, t), s = R(i, a, t);
|
|
590
498
|
(o || s) && n.push({
|
|
591
499
|
index: r,
|
|
592
500
|
a: i,
|
|
@@ -597,35 +505,35 @@ function ve(e, t = L) {
|
|
|
597
505
|
}
|
|
598
506
|
return n;
|
|
599
507
|
}
|
|
600
|
-
e(
|
|
601
|
-
function
|
|
602
|
-
let n =
|
|
508
|
+
e(re, "orthogonalSegmentsForPoints");
|
|
509
|
+
function V(e, t = M) {
|
|
510
|
+
let n = re(e, t), r = 0;
|
|
603
511
|
for (let e = 1; e < n.length; e++) n[e - 1].horizontal !== n[e].horizontal && r++;
|
|
604
512
|
return r;
|
|
605
513
|
}
|
|
606
|
-
e(
|
|
607
|
-
function
|
|
514
|
+
e(V, "countOrthogonalBends");
|
|
515
|
+
function H(e, t = M) {
|
|
608
516
|
let n = [];
|
|
609
517
|
for (let r of e) {
|
|
610
518
|
let e = n.length > 0 ? n[n.length - 1] : void 0;
|
|
611
|
-
(!e || !
|
|
519
|
+
(!e || !P(e, r, t)) && n.push({
|
|
612
520
|
x: r.x,
|
|
613
521
|
y: r.y
|
|
614
522
|
});
|
|
615
523
|
}
|
|
616
524
|
return n;
|
|
617
525
|
}
|
|
618
|
-
e(
|
|
619
|
-
function
|
|
526
|
+
e(H, "dedupeConsecutivePoints");
|
|
527
|
+
function ie(e, t = M) {
|
|
620
528
|
if (!e || e.length !== 4) return;
|
|
621
529
|
let [n, r, i, a] = e;
|
|
622
|
-
return
|
|
530
|
+
return L(n, r, t) && R(r, i, t) && L(i, a, t) ? {
|
|
623
531
|
kind: "HVH",
|
|
624
532
|
p0: n,
|
|
625
533
|
p1: r,
|
|
626
534
|
p2: i,
|
|
627
535
|
p3: a
|
|
628
|
-
} :
|
|
536
|
+
} : R(n, r, t) && L(r, i, t) && R(i, a, t) ? {
|
|
629
537
|
kind: "VHV",
|
|
630
538
|
p0: n,
|
|
631
539
|
p1: r,
|
|
@@ -633,25 +541,25 @@ function ye(e, t = L) {
|
|
|
633
541
|
p3: a
|
|
634
542
|
} : void 0;
|
|
635
543
|
}
|
|
636
|
-
e(
|
|
637
|
-
function
|
|
544
|
+
e(ie, "classifyThreeSegmentRoute");
|
|
545
|
+
function ae(e, t, n, r = 0) {
|
|
638
546
|
let i = Math.min(e.x, t.x), a = Math.max(e.x, t.x), o = Math.min(e.y, t.y), s = Math.max(e.y, t.y);
|
|
639
547
|
return a > n.left - r && i < n.right + r && s > n.top - r && o < n.bottom + r;
|
|
640
548
|
}
|
|
641
|
-
e(
|
|
642
|
-
function
|
|
549
|
+
e(ae, "segmentBoundsOverlapRect");
|
|
550
|
+
function U(e, t, n = 0) {
|
|
643
551
|
return e.x > t.left + n && e.x < t.right - n && e.y > t.top + n && e.y < t.bottom - n;
|
|
644
552
|
}
|
|
645
|
-
e(
|
|
646
|
-
function
|
|
553
|
+
e(U, "pointInsideRect");
|
|
554
|
+
function W(e, t) {
|
|
647
555
|
return e.left <= t.left && e.right >= t.right && e.top <= t.top && e.bottom >= t.bottom;
|
|
648
556
|
}
|
|
649
|
-
e(
|
|
650
|
-
function
|
|
557
|
+
e(W, "rectContainsRect");
|
|
558
|
+
function G(e, t) {
|
|
651
559
|
return e.left < t.right && e.right > t.left && e.top < t.bottom && e.bottom > t.top;
|
|
652
560
|
}
|
|
653
|
-
e(
|
|
654
|
-
function
|
|
561
|
+
e(G, "rectsOverlap");
|
|
562
|
+
function oe(e, t) {
|
|
655
563
|
return {
|
|
656
564
|
left: e.left - t,
|
|
657
565
|
right: e.right + t,
|
|
@@ -659,8 +567,8 @@ function we(e, t) {
|
|
|
659
567
|
bottom: e.bottom + t
|
|
660
568
|
};
|
|
661
569
|
}
|
|
662
|
-
e(
|
|
663
|
-
function
|
|
570
|
+
e(oe, "inflateRect");
|
|
571
|
+
function se(e, t, n, r) {
|
|
664
572
|
return {
|
|
665
573
|
left: e - n / 2,
|
|
666
574
|
right: e + n / 2,
|
|
@@ -668,12 +576,12 @@ function Te(e, t, n, r) {
|
|
|
668
576
|
bottom: t + r / 2
|
|
669
577
|
};
|
|
670
578
|
}
|
|
671
|
-
e(
|
|
579
|
+
e(se, "rectFromCenterSize");
|
|
672
580
|
function K(e) {
|
|
673
|
-
return
|
|
581
|
+
return ne(e)?.rect;
|
|
674
582
|
}
|
|
675
583
|
e(K, "rectOfNodeBounds");
|
|
676
|
-
function
|
|
584
|
+
function ce(e, t) {
|
|
677
585
|
switch (t) {
|
|
678
586
|
case "top": return {
|
|
679
587
|
x: e.cx,
|
|
@@ -693,12 +601,12 @@ function Ee(e, t) {
|
|
|
693
601
|
};
|
|
694
602
|
}
|
|
695
603
|
}
|
|
696
|
-
e(
|
|
697
|
-
function
|
|
604
|
+
e(ce, "portForRectSide");
|
|
605
|
+
function le(e, t, n, r, i, a = M) {
|
|
698
606
|
let o = t === "left" || t === "right", s = r === "left" || r === "right";
|
|
699
607
|
if (o && s) {
|
|
700
608
|
if (t === "right" && r === "left" && e.x < n.x || t === "left" && r === "right" && e.x > n.x) {
|
|
701
|
-
if (
|
|
609
|
+
if (I(e, n, a)) return [e, n];
|
|
702
610
|
let t = (e.x + n.x) / 2;
|
|
703
611
|
return [
|
|
704
612
|
e,
|
|
@@ -714,7 +622,7 @@ function De(e, t, n, r, i, a = L) {
|
|
|
714
622
|
];
|
|
715
623
|
}
|
|
716
624
|
if (t === r) {
|
|
717
|
-
if (
|
|
625
|
+
if (I(e, n, a)) return;
|
|
718
626
|
let r = t === "left" ? Math.min(e.x, n.x) - i : Math.max(e.x, n.x) + i;
|
|
719
627
|
return [
|
|
720
628
|
e,
|
|
@@ -733,7 +641,7 @@ function De(e, t, n, r, i, a = L) {
|
|
|
733
641
|
}
|
|
734
642
|
if (!o && !s) {
|
|
735
643
|
if (t === r) {
|
|
736
|
-
if (
|
|
644
|
+
if (F(e, n, a)) return;
|
|
737
645
|
let r = t === "top" ? Math.min(e.y, n.y) - i : Math.max(e.y, n.y) + i;
|
|
738
646
|
return [
|
|
739
647
|
e,
|
|
@@ -749,7 +657,7 @@ function De(e, t, n, r, i, a = L) {
|
|
|
749
657
|
];
|
|
750
658
|
}
|
|
751
659
|
if (!(t === "bottom" && r === "top" && e.y < n.y || t === "top" && r === "bottom" && e.y > n.y)) return;
|
|
752
|
-
if (
|
|
660
|
+
if (F(e, n, a)) return [e, n];
|
|
753
661
|
let o = (e.y + n.y) / 2;
|
|
754
662
|
return [
|
|
755
663
|
e,
|
|
@@ -785,8 +693,8 @@ function De(e, t, n, r, i, a = L) {
|
|
|
785
693
|
n
|
|
786
694
|
] : void 0;
|
|
787
695
|
}
|
|
788
|
-
e(
|
|
789
|
-
function
|
|
696
|
+
e(le, "buildOrthogonalPortPath");
|
|
697
|
+
function ue(e, t, n, r) {
|
|
790
698
|
return t === "left" || t === "right" ? [
|
|
791
699
|
e,
|
|
792
700
|
{
|
|
@@ -811,12 +719,12 @@ function Oe(e, t, n, r) {
|
|
|
811
719
|
n
|
|
812
720
|
];
|
|
813
721
|
}
|
|
814
|
-
e(
|
|
815
|
-
function
|
|
722
|
+
e(ue, "buildSameSideTrackPath");
|
|
723
|
+
function de(e) {
|
|
816
724
|
let t = /* @__PURE__ */ new Map(), n = [];
|
|
817
725
|
for (let r of e) {
|
|
818
726
|
if (r.isEdgeLabel) continue;
|
|
819
|
-
let e =
|
|
727
|
+
let e = N(r);
|
|
820
728
|
e && (t.set(e.id, e), n.push({
|
|
821
729
|
id: e.id,
|
|
822
730
|
rect: e.rect
|
|
@@ -827,11 +735,11 @@ function ke(e) {
|
|
|
827
735
|
realNodeRects: n
|
|
828
736
|
};
|
|
829
737
|
}
|
|
830
|
-
e(
|
|
831
|
-
function
|
|
738
|
+
e(de, "collectRealNodeBounds");
|
|
739
|
+
function q(e) {
|
|
832
740
|
let t = [], n = [];
|
|
833
741
|
for (let r of e) {
|
|
834
|
-
let e =
|
|
742
|
+
let e = N(r);
|
|
835
743
|
if (!e) continue;
|
|
836
744
|
let i = {
|
|
837
745
|
id: e.id,
|
|
@@ -844,21 +752,21 @@ function Ae(e) {
|
|
|
844
752
|
labelNodeRects: n
|
|
845
753
|
};
|
|
846
754
|
}
|
|
847
|
-
e(
|
|
848
|
-
function
|
|
755
|
+
e(q, "collectNodeRectEntries");
|
|
756
|
+
function fe(e, { includeEdgeLabels: t = !0 } = {}) {
|
|
849
757
|
let n = [];
|
|
850
758
|
for (let r of e) {
|
|
851
759
|
if (r.isGroup || !t && r.isEdgeLabel) continue;
|
|
852
760
|
let e = r.x ?? 0, i = r.y ?? 0, a = r.width ?? 0, o = r.height ?? 0;
|
|
853
761
|
n.push({
|
|
854
762
|
nodeId: r.id,
|
|
855
|
-
...
|
|
763
|
+
...se(e, i, a, o)
|
|
856
764
|
});
|
|
857
765
|
}
|
|
858
766
|
return n;
|
|
859
767
|
}
|
|
860
|
-
e(
|
|
861
|
-
function
|
|
768
|
+
e(fe, "collectLayoutNodeRects");
|
|
769
|
+
function pe(e, t, n = M) {
|
|
862
770
|
let r = e.start, i = e.end;
|
|
863
771
|
if (!r || !i) return;
|
|
864
772
|
let a = t.get(r), o = t.get(i);
|
|
@@ -871,14 +779,14 @@ function Me(e, t, n = L) {
|
|
|
871
779
|
collinearY: Math.abs(a.cy - o.cy) < n
|
|
872
780
|
};
|
|
873
781
|
}
|
|
874
|
-
e(
|
|
875
|
-
function
|
|
876
|
-
for (let a of n) if (!r.includes(a.id) &&
|
|
782
|
+
e(pe, "getNodePairGeometry");
|
|
783
|
+
function J(e, t, n, r = [], i = 0) {
|
|
784
|
+
for (let a of n) if (!r.includes(a.id) && ae(e, t, a.rect, -i)) return !0;
|
|
877
785
|
return !1;
|
|
878
786
|
}
|
|
879
|
-
e(
|
|
880
|
-
function
|
|
881
|
-
let o =
|
|
787
|
+
e(J, "segmentHitsAnyRect");
|
|
788
|
+
function me(e, t, n, r, i = M, a = 1e-6) {
|
|
789
|
+
let o = I(e, t, i), s = F(e, t, i), c = I(n, r, i), l = F(n, r, i);
|
|
882
790
|
if (o && c || s && l || !(o || s) || !(c || l)) return !1;
|
|
883
791
|
let u = o ? {
|
|
884
792
|
a: e,
|
|
@@ -897,26 +805,26 @@ function Ne(e, t, n, r, i = L, a = 1e-6) {
|
|
|
897
805
|
let v = Math.abs(h - u.a.x) < a && Math.abs(f - u.a.y) < a || Math.abs(h - u.b.x) < a && Math.abs(f - u.b.y) < a, y = Math.abs(h - d.a.x) < a && Math.abs(f - d.a.y) < a || Math.abs(h - d.b.x) < a && Math.abs(f - d.b.y) < a;
|
|
898
806
|
return !(v && y);
|
|
899
807
|
}
|
|
900
|
-
e(
|
|
901
|
-
function
|
|
902
|
-
let a =
|
|
903
|
-
return o && c &&
|
|
808
|
+
e(me, "orthogonalSegmentsCross");
|
|
809
|
+
function he(e, t, n, r, i = M) {
|
|
810
|
+
let a = I(e, t, i), o = F(e, t, i), s = I(n, r, i), c = F(n, r, i);
|
|
811
|
+
return o && c && F(e, n, i) ? z(e.y, t.y, n.y, r.y) > i : a && s && I(e, n, i) ? z(e.x, t.x, n.x, r.x) > i : !1;
|
|
904
812
|
}
|
|
905
|
-
e(
|
|
906
|
-
function
|
|
813
|
+
e(he, "sameAxisSegmentsOverlap");
|
|
814
|
+
function ge(e, t, n, r, { epsilon: i = M, skipDegenerateOther: a = !1 } = {}) {
|
|
907
815
|
for (let o of n) {
|
|
908
816
|
if (o === r || o.isLayoutOnly) continue;
|
|
909
817
|
let n = o.points;
|
|
910
818
|
if (!(!n || n.length < 2)) for (let r = 0; r < n.length - 1; r++) {
|
|
911
819
|
let o = n[r], s = n[r + 1];
|
|
912
|
-
if (!(a &&
|
|
820
|
+
if (!(a && P(o, s, i)) && (me(e, t, o, s, i) || he(e, t, o, s, i))) return !0;
|
|
913
821
|
}
|
|
914
822
|
}
|
|
915
823
|
return !1;
|
|
916
824
|
}
|
|
917
|
-
e(
|
|
918
|
-
function
|
|
919
|
-
let a =
|
|
825
|
+
e(ge, "segmentConflictsWithAnyEdge");
|
|
826
|
+
function _e(e, t, n, r, i = M) {
|
|
827
|
+
let a = I(e, t, i), o = F(e, t, i), s = I(n, r, i), c = F(n, r, i);
|
|
920
828
|
if (!(a && c || o && s)) return !1;
|
|
921
829
|
let l = a ? {
|
|
922
830
|
a: e,
|
|
@@ -933,26 +841,26 @@ function Ie(e, t, n, r, i = L) {
|
|
|
933
841
|
}, d = l.a.y, f = Math.min(l.a.x, l.b.x), p = Math.max(l.a.x, l.b.x), m = u.a.x, h = Math.min(u.a.y, u.b.y), g = Math.max(u.a.y, u.b.y);
|
|
934
842
|
return m > f + i && m < p - i && d > h + i && d < g - i;
|
|
935
843
|
}
|
|
936
|
-
e(
|
|
937
|
-
function
|
|
844
|
+
e(_e, "orthogonalSegmentsStrictlyCross");
|
|
845
|
+
function ve(e, t, n) {
|
|
938
846
|
let r = Math.min(t, n), i = Math.max(t, n);
|
|
939
|
-
return e > r +
|
|
847
|
+
return e > r + M && e < i - M;
|
|
940
848
|
}
|
|
941
|
-
e(
|
|
942
|
-
function
|
|
943
|
-
return
|
|
849
|
+
e(ve, "strictlyBetween");
|
|
850
|
+
function ye(e, t, n) {
|
|
851
|
+
return F(e, t) && F(t, n) ? ve(t.y, e.y, n.y) : I(e, t) && I(t, n) ? ve(t.x, e.x, n.x) : !1;
|
|
944
852
|
}
|
|
945
|
-
e(
|
|
946
|
-
function
|
|
853
|
+
e(ye, "isCollinearIntermediate");
|
|
854
|
+
function be(e) {
|
|
947
855
|
let t = !1, n = [];
|
|
948
856
|
for (let r = 0; r < e.length; r++) {
|
|
949
857
|
let i = n[n.length - 1], a = e[r], o = r + 1 < e.length ? e[r + 1] : void 0;
|
|
950
858
|
if (i && o) {
|
|
951
|
-
if (
|
|
859
|
+
if (P(i, o)) {
|
|
952
860
|
r++, t = !0;
|
|
953
861
|
continue;
|
|
954
862
|
}
|
|
955
|
-
if (
|
|
863
|
+
if (ye(i, a, o)) {
|
|
956
864
|
t = !0;
|
|
957
865
|
continue;
|
|
958
866
|
}
|
|
@@ -964,13 +872,13 @@ function ze(e) {
|
|
|
964
872
|
changed: t
|
|
965
873
|
};
|
|
966
874
|
}
|
|
967
|
-
e(
|
|
968
|
-
function
|
|
875
|
+
e(be, "simplifyPolylineOnce");
|
|
876
|
+
function xe(e) {
|
|
969
877
|
let t = [e[0]];
|
|
970
878
|
for (let n = 1; n < e.length; n++) {
|
|
971
879
|
let r = t[t.length - 1], i = e[n];
|
|
972
|
-
if (!
|
|
973
|
-
let e = t.length >= 2 ? t[t.length - 2] : void 0, n = e &&
|
|
880
|
+
if (!F(r, i) && !I(r, i)) {
|
|
881
|
+
let e = t.length >= 2 ? t[t.length - 2] : void 0, n = e && F(e, r) ? {
|
|
974
882
|
x: r.x,
|
|
975
883
|
y: i.y
|
|
976
884
|
} : {
|
|
@@ -984,23 +892,23 @@ function Be(e) {
|
|
|
984
892
|
let n = [];
|
|
985
893
|
for (let e of t) {
|
|
986
894
|
let t = n[n.length - 1];
|
|
987
|
-
(!t || !
|
|
895
|
+
(!t || !P(t, e)) && n.push(e);
|
|
988
896
|
}
|
|
989
897
|
return n;
|
|
990
898
|
}
|
|
991
|
-
e(
|
|
992
|
-
function
|
|
899
|
+
e(xe, "orthogonalizePolyline");
|
|
900
|
+
function Se(e) {
|
|
993
901
|
if (e.length < 3) return e;
|
|
994
902
|
let t = [...e];
|
|
995
903
|
for (let e = 0; e < 32; e++) {
|
|
996
|
-
let e =
|
|
904
|
+
let e = be(t);
|
|
997
905
|
if (t = e.points, !e.changed) break;
|
|
998
906
|
}
|
|
999
907
|
return t;
|
|
1000
908
|
}
|
|
1001
|
-
e(
|
|
1002
|
-
var
|
|
1003
|
-
function
|
|
909
|
+
e(Se, "simplifyPolyline");
|
|
910
|
+
var Y = .001, Ce = .5, we = 4;
|
|
911
|
+
function Te(e, t, n) {
|
|
1004
912
|
let r = e;
|
|
1005
913
|
if (r.isLayoutOnly || !r.points || r.points.length < n) return;
|
|
1006
914
|
let i = r.start ? t.get(r.start) : void 0, a = r.end ? t.get(r.end) : void 0;
|
|
@@ -1011,13 +919,13 @@ function We(e, t, n) {
|
|
|
1011
919
|
dstRect: a ? K(a) : void 0
|
|
1012
920
|
};
|
|
1013
921
|
}
|
|
1014
|
-
e(
|
|
1015
|
-
function
|
|
1016
|
-
if (
|
|
922
|
+
e(Te, "endpointContextFor");
|
|
923
|
+
function Ee(e, t, n) {
|
|
924
|
+
if (I(e, t, Y)) return {
|
|
1017
925
|
x: e.x < n.left ? n.left : n.right,
|
|
1018
926
|
y: e.y
|
|
1019
927
|
};
|
|
1020
|
-
if (
|
|
928
|
+
if (F(e, t, Y)) {
|
|
1021
929
|
let t = e.y < n.top ? n.top : n.bottom;
|
|
1022
930
|
return {
|
|
1023
931
|
x: e.x,
|
|
@@ -1029,35 +937,35 @@ function Ge(e, t, n) {
|
|
|
1029
937
|
y: Math.min(n.bottom, Math.max(n.top, e.y))
|
|
1030
938
|
};
|
|
1031
939
|
}
|
|
1032
|
-
e(
|
|
1033
|
-
function
|
|
940
|
+
e(Ee, "segmentEnterPoint");
|
|
941
|
+
function De(e, t, n) {
|
|
1034
942
|
let r = n ? 1 : -1, i = n ? 0 : e.length - 1;
|
|
1035
|
-
for (; i >= 0 && i < e.length &&
|
|
943
|
+
for (; i >= 0 && i < e.length && U(e[i], t, Ce);) i += r;
|
|
1036
944
|
if (i < 0 || i >= e.length) return e;
|
|
1037
945
|
let a = i - r;
|
|
1038
946
|
if (a < 0 || a >= e.length) return e;
|
|
1039
|
-
let o =
|
|
947
|
+
let o = Ee(e[i], e[a], t);
|
|
1040
948
|
return n ? [o, ...e.slice(i)] : [...e.slice(0, i + 1), o];
|
|
1041
949
|
}
|
|
1042
|
-
e(
|
|
1043
|
-
function
|
|
950
|
+
e(De, "clipEndpoint");
|
|
951
|
+
function Oe(e, t) {
|
|
1044
952
|
for (let n of e) {
|
|
1045
|
-
let e =
|
|
953
|
+
let e = Te(n, t, 2);
|
|
1046
954
|
if (!e) continue;
|
|
1047
955
|
let r = [...e.points];
|
|
1048
|
-
e.srcRect && (r =
|
|
956
|
+
e.srcRect && (r = De(r, e.srcRect, !0)), e.dstRect && (r = De(r, e.dstRect, !1)), r = Se(xe(r)), r = ze(r, e.srcRect, e.dstRect), e.edge.points = Se(xe(r));
|
|
1049
957
|
}
|
|
1050
958
|
}
|
|
1051
|
-
e(
|
|
1052
|
-
function
|
|
1053
|
-
if (
|
|
1054
|
-
if (t.y < n.top -
|
|
959
|
+
e(Oe, "clipEdgeEndpointsToNodeBoundaries");
|
|
960
|
+
function ke(e, t, n, r = !1) {
|
|
961
|
+
if (I(e, t, Y)) {
|
|
962
|
+
if (t.y < n.top - Y || t.y > n.bottom + Y) return t;
|
|
1055
963
|
if (r) {
|
|
1056
|
-
if (e.x < n.left -
|
|
964
|
+
if (e.x < n.left - Y) return {
|
|
1057
965
|
x: n.left,
|
|
1058
966
|
y: e.y
|
|
1059
967
|
};
|
|
1060
|
-
if (e.x > n.right +
|
|
968
|
+
if (e.x > n.right + Y) return {
|
|
1061
969
|
x: n.right,
|
|
1062
970
|
y: e.y
|
|
1063
971
|
};
|
|
@@ -1067,14 +975,14 @@ function Je(e, t, n, r = !1) {
|
|
|
1067
975
|
y: e.y
|
|
1068
976
|
};
|
|
1069
977
|
}
|
|
1070
|
-
if (
|
|
1071
|
-
if (t.x < n.left -
|
|
978
|
+
if (F(e, t, Y)) {
|
|
979
|
+
if (t.x < n.left - Y || t.x > n.right + Y) return t;
|
|
1072
980
|
if (r) {
|
|
1073
|
-
if (e.y < n.top -
|
|
981
|
+
if (e.y < n.top - Y) return {
|
|
1074
982
|
x: e.x,
|
|
1075
983
|
y: n.top
|
|
1076
984
|
};
|
|
1077
|
-
if (e.y > n.bottom +
|
|
985
|
+
if (e.y > n.bottom + Y) return {
|
|
1078
986
|
x: e.x,
|
|
1079
987
|
y: n.bottom
|
|
1080
988
|
};
|
|
@@ -1087,18 +995,18 @@ function Je(e, t, n, r = !1) {
|
|
|
1087
995
|
}
|
|
1088
996
|
return t;
|
|
1089
997
|
}
|
|
1090
|
-
e(
|
|
1091
|
-
function
|
|
998
|
+
e(ke, "snapEndpointToBoundary");
|
|
999
|
+
function Ae(e, t, n) {
|
|
1092
1000
|
let r = e[t];
|
|
1093
1001
|
for (let i = t + n; i >= 0 && i < e.length; i += n) {
|
|
1094
1002
|
let t = e[i];
|
|
1095
|
-
if (!
|
|
1003
|
+
if (!P(t, r, Y)) return t;
|
|
1096
1004
|
}
|
|
1097
1005
|
return e[t + n];
|
|
1098
1006
|
}
|
|
1099
|
-
e(
|
|
1100
|
-
function
|
|
1101
|
-
let n = e +
|
|
1007
|
+
e(Ae, "firstDistinctAdjacent");
|
|
1008
|
+
function je(e, t) {
|
|
1009
|
+
let n = e + we, r = t - we;
|
|
1102
1010
|
return n <= r ? {
|
|
1103
1011
|
lo: n,
|
|
1104
1012
|
hi: r
|
|
@@ -1107,50 +1015,50 @@ function Xe(e, t) {
|
|
|
1107
1015
|
hi: (e + t) / 2
|
|
1108
1016
|
};
|
|
1109
1017
|
}
|
|
1110
|
-
e(
|
|
1111
|
-
function
|
|
1112
|
-
let { lo: r, hi: i } =
|
|
1018
|
+
e(je, "cornerClearanceRange");
|
|
1019
|
+
function Me(e, t, n) {
|
|
1020
|
+
let { lo: r, hi: i } = je(t, n);
|
|
1113
1021
|
return Math.min(i, Math.max(r, e));
|
|
1114
1022
|
}
|
|
1115
|
-
e(
|
|
1116
|
-
function
|
|
1023
|
+
e(Me, "clampToCornerClearance");
|
|
1024
|
+
function Ne(e) {
|
|
1117
1025
|
let t = Math.max(...e.map((e) => e.lo)), n = Math.min(...e.map((e) => e.hi));
|
|
1118
1026
|
if (!(t > n)) return {
|
|
1119
1027
|
lo: t,
|
|
1120
1028
|
hi: n
|
|
1121
1029
|
};
|
|
1122
1030
|
}
|
|
1123
|
-
e(
|
|
1124
|
-
function
|
|
1125
|
-
return t === "left" || t === "right" ?
|
|
1031
|
+
e(Ne, "intersectRanges");
|
|
1032
|
+
function Pe(e, t) {
|
|
1033
|
+
return t === "left" || t === "right" ? je(e.top, e.bottom) : je(e.left, e.right);
|
|
1126
1034
|
}
|
|
1127
|
-
e(
|
|
1128
|
-
function
|
|
1129
|
-
let r = e.y >= n.top -
|
|
1130
|
-
if (
|
|
1131
|
-
if (Math.abs(e.x - n.left) <
|
|
1132
|
-
if (Math.abs(e.x - n.right) <
|
|
1035
|
+
e(Pe, "clearanceRangeForSide");
|
|
1036
|
+
function Fe(e, t, n) {
|
|
1037
|
+
let r = e.y >= n.top - Y && e.y <= n.bottom + Y, i = e.x >= n.left - Y && e.x <= n.right + Y;
|
|
1038
|
+
if (I(e, t, Y) && r) {
|
|
1039
|
+
if (Math.abs(e.x - n.left) < Y) return "left";
|
|
1040
|
+
if (Math.abs(e.x - n.right) < Y) return "right";
|
|
1133
1041
|
}
|
|
1134
|
-
if (
|
|
1135
|
-
if (Math.abs(e.y - n.top) <
|
|
1136
|
-
if (Math.abs(e.y - n.bottom) <
|
|
1042
|
+
if (F(e, t, Y) && i) {
|
|
1043
|
+
if (Math.abs(e.y - n.top) < Y) return "top";
|
|
1044
|
+
if (Math.abs(e.y - n.bottom) < Y) return "bottom";
|
|
1137
1045
|
}
|
|
1138
1046
|
}
|
|
1139
|
-
e(
|
|
1140
|
-
function
|
|
1047
|
+
e(Fe, "terminalSideForSegment");
|
|
1048
|
+
function Ie(e) {
|
|
1141
1049
|
return e === "left" || e === "right";
|
|
1142
1050
|
}
|
|
1143
|
-
e(
|
|
1144
|
-
function
|
|
1145
|
-
let a = [], o = n ?
|
|
1146
|
-
return n && o &&
|
|
1051
|
+
e(Ie, "isHorizontalSide");
|
|
1052
|
+
function Le(e, t, n, r, i) {
|
|
1053
|
+
let a = [], o = n ? Fe(e, t, n) : void 0, s = r ? Fe(t, e, r) : void 0;
|
|
1054
|
+
return n && o && Ie(o) === i && a.push(Pe(n, o)), r && s && Ie(s) === i && a.push(Pe(r, s)), a.length > 0 ? Ne(a) : void 0;
|
|
1147
1055
|
}
|
|
1148
|
-
e(
|
|
1149
|
-
function
|
|
1150
|
-
let a =
|
|
1056
|
+
e(Le, "straightClearanceRange");
|
|
1057
|
+
function Re(e, t, n, r, i) {
|
|
1058
|
+
let a = Le(e, t, n, r, i);
|
|
1151
1059
|
if (!a) return;
|
|
1152
1060
|
let o = i ? e.y : e.x, s = Math.min(a.hi, Math.max(a.lo, o));
|
|
1153
|
-
if (!(Math.abs(s - o) <
|
|
1061
|
+
if (!(Math.abs(s - o) < Y)) return i ? [{
|
|
1154
1062
|
x: e.x,
|
|
1155
1063
|
y: s
|
|
1156
1064
|
}, {
|
|
@@ -1164,97 +1072,97 @@ function rt(e, t, n, r, i) {
|
|
|
1164
1072
|
y: t.y
|
|
1165
1073
|
}];
|
|
1166
1074
|
}
|
|
1167
|
-
e(
|
|
1168
|
-
function
|
|
1075
|
+
e(Re, "clearStraightEndpointCornerAxis");
|
|
1076
|
+
function ze(e, t, n) {
|
|
1169
1077
|
if (e.length !== 2) return e;
|
|
1170
1078
|
let [r, i] = e;
|
|
1171
|
-
return
|
|
1079
|
+
return I(r, i, Y) ? Re(r, i, t, n, !0) ?? e : F(r, i, Y) ? Re(r, i, t, n, !1) ?? e : e;
|
|
1172
1080
|
}
|
|
1173
|
-
e(
|
|
1174
|
-
function
|
|
1175
|
-
return
|
|
1081
|
+
e(ze, "clearStraightEndpointCornerConnections");
|
|
1082
|
+
function Be(e, t, n) {
|
|
1083
|
+
return Ie(n) ? {
|
|
1176
1084
|
x: e.x,
|
|
1177
|
-
y:
|
|
1085
|
+
y: Me(e.y, t.top, t.bottom)
|
|
1178
1086
|
} : {
|
|
1179
|
-
x:
|
|
1087
|
+
x: Me(e.x, t.left, t.right),
|
|
1180
1088
|
y: e.y
|
|
1181
1089
|
};
|
|
1182
1090
|
}
|
|
1183
|
-
e(
|
|
1184
|
-
function
|
|
1091
|
+
e(Be, "cornerClearedEndpoint");
|
|
1092
|
+
function Ve(e, t, n, r, i, a) {
|
|
1185
1093
|
let o = e.map((e) => ({ ...e }));
|
|
1186
1094
|
for (let s = t; s >= 0 && s < e.length; s += n) {
|
|
1187
1095
|
let t = e[s];
|
|
1188
|
-
if (a && !
|
|
1096
|
+
if (a && !I(t, r, Y) || !a && !F(t, r, Y)) break;
|
|
1189
1097
|
a ? o[s].y = i.y : o[s].x = i.x;
|
|
1190
1098
|
}
|
|
1191
1099
|
return o;
|
|
1192
1100
|
}
|
|
1193
|
-
e(
|
|
1194
|
-
function
|
|
1101
|
+
e(Ve, "moveCollinearEndpointRun");
|
|
1102
|
+
function He(e, t, n) {
|
|
1195
1103
|
if (e.length < 2) return e;
|
|
1196
|
-
let r = n ? 0 : e.length - 1, i = n ? 1 : -1, a = e[r], o =
|
|
1104
|
+
let r = n ? 0 : e.length - 1, i = n ? 1 : -1, a = e[r], o = Ae(e, r, i);
|
|
1197
1105
|
if (!o) return e;
|
|
1198
|
-
let s =
|
|
1106
|
+
let s = Fe(a, o, t);
|
|
1199
1107
|
if (!s) return e;
|
|
1200
|
-
let c =
|
|
1201
|
-
return
|
|
1202
|
-
}
|
|
1203
|
-
e(
|
|
1204
|
-
function
|
|
1205
|
-
let r = Math.min(e.x, t.x) >= n.left -
|
|
1206
|
-
if (Math.abs(e.y - n.top) <
|
|
1207
|
-
if (Math.abs(e.y - n.bottom) <
|
|
1208
|
-
if (Math.abs(e.x - n.left) <
|
|
1209
|
-
if (Math.abs(e.x - n.right) <
|
|
1210
|
-
}
|
|
1211
|
-
e(
|
|
1212
|
-
function
|
|
1108
|
+
let c = Ie(s), l = Be(a, t, s);
|
|
1109
|
+
return P(a, l, Y) ? e : Ve(e, r, i, a, l, c);
|
|
1110
|
+
}
|
|
1111
|
+
e(He, "clearEndpointCornerConnection");
|
|
1112
|
+
function Ue(e, t, n) {
|
|
1113
|
+
let r = Math.min(e.x, t.x) >= n.left - Y && Math.max(e.x, t.x) <= n.right + Y, i = Math.min(e.y, t.y) >= n.top - Y && Math.max(e.y, t.y) <= n.bottom + Y;
|
|
1114
|
+
if (Math.abs(e.y - n.top) < Y && Math.abs(t.y - n.top) < Y && r) return "top";
|
|
1115
|
+
if (Math.abs(e.y - n.bottom) < Y && Math.abs(t.y - n.bottom) < Y && r) return "bottom";
|
|
1116
|
+
if (Math.abs(e.x - n.left) < Y && Math.abs(t.x - n.left) < Y && i) return "left";
|
|
1117
|
+
if (Math.abs(e.x - n.right) < Y && Math.abs(t.x - n.right) < Y && i) return "right";
|
|
1118
|
+
}
|
|
1119
|
+
e(Ue, "borderSideForSegment");
|
|
1120
|
+
function We(e, t, n, r) {
|
|
1213
1121
|
switch (e) {
|
|
1214
|
-
case "top": return
|
|
1215
|
-
case "bottom": return
|
|
1216
|
-
case "left": return
|
|
1217
|
-
case "right": return
|
|
1122
|
+
case "top": return F(t, n, Y) && n.y < r.top - Y;
|
|
1123
|
+
case "bottom": return F(t, n, Y) && n.y > r.bottom + Y;
|
|
1124
|
+
case "left": return I(t, n, Y) && n.x < r.left - Y;
|
|
1125
|
+
case "right": return I(t, n, Y) && n.x > r.right + Y;
|
|
1218
1126
|
}
|
|
1219
1127
|
}
|
|
1220
|
-
e(
|
|
1221
|
-
function
|
|
1128
|
+
e(We, "leavesOutward");
|
|
1129
|
+
function Ge(e, t, n) {
|
|
1222
1130
|
if (e.length < 3) return e;
|
|
1223
1131
|
if (n) {
|
|
1224
|
-
let n =
|
|
1225
|
-
return n &&
|
|
1132
|
+
let n = Ue(e[0], e[1], t);
|
|
1133
|
+
return n && We(n, e[1], e[2], t) ? e.slice(1) : e;
|
|
1226
1134
|
}
|
|
1227
|
-
let r = e.length - 1, i =
|
|
1228
|
-
return i &&
|
|
1135
|
+
let r = e.length - 1, i = Ue(e[r - 1], e[r], t);
|
|
1136
|
+
return i && We(i, e[r - 1], e[r - 2], t) ? e.slice(0, r) : e;
|
|
1229
1137
|
}
|
|
1230
|
-
e(
|
|
1231
|
-
function
|
|
1138
|
+
e(Ge, "collapseOwnBorderStub");
|
|
1139
|
+
function Ke(e, t, n) {
|
|
1232
1140
|
let r = e;
|
|
1233
1141
|
if (t) {
|
|
1234
|
-
let e =
|
|
1142
|
+
let e = Ae(r, 0, 1);
|
|
1235
1143
|
if (e) {
|
|
1236
|
-
let n =
|
|
1144
|
+
let n = ke(e, r[0], t);
|
|
1237
1145
|
n !== r[0] && (r = [n, ...r.slice(1)]);
|
|
1238
1146
|
}
|
|
1239
|
-
r =
|
|
1147
|
+
r = Ge(r, t, !0);
|
|
1240
1148
|
}
|
|
1241
1149
|
if (n) {
|
|
1242
|
-
let e = r.length - 1, t =
|
|
1150
|
+
let e = r.length - 1, t = Ae(r, e, -1);
|
|
1243
1151
|
if (t) {
|
|
1244
|
-
let i =
|
|
1152
|
+
let i = ke(t, r[e], n, !0);
|
|
1245
1153
|
i !== r[e] && (r = [...r.slice(0, e), i]);
|
|
1246
1154
|
}
|
|
1247
|
-
r =
|
|
1155
|
+
r = Ge(r, n, !1);
|
|
1248
1156
|
}
|
|
1249
|
-
let i =
|
|
1250
|
-
return i !== r || r.length === 2 ? i : (t && (r =
|
|
1157
|
+
let i = ze(r, t, n);
|
|
1158
|
+
return i !== r || r.length === 2 ? i : (t && (r = He(r, t, !0)), n && (r = He(r, n, !1)), r);
|
|
1251
1159
|
}
|
|
1252
|
-
e(
|
|
1253
|
-
function
|
|
1160
|
+
e(Ke, "snapAndCollapseEndpoints");
|
|
1161
|
+
function qe(e, t) {
|
|
1254
1162
|
for (let n of e) {
|
|
1255
|
-
let e =
|
|
1163
|
+
let e = Te(n, t, 2);
|
|
1256
1164
|
if (!e) continue;
|
|
1257
|
-
let r =
|
|
1165
|
+
let r = Ke(H(e.points, Y), e.srcRect, e.dstRect);
|
|
1258
1166
|
if (r.length < 3) {
|
|
1259
1167
|
e.edge.points = r;
|
|
1260
1168
|
continue;
|
|
@@ -1269,12 +1177,12 @@ function ft(e, t) {
|
|
|
1269
1177
|
e.edge.points = i;
|
|
1270
1178
|
}
|
|
1271
1179
|
}
|
|
1272
|
-
e(
|
|
1273
|
-
function
|
|
1180
|
+
e(qe, "prepareEdgeEndpointsForRenderer");
|
|
1181
|
+
function Je(e) {
|
|
1274
1182
|
return new Map(e.map((e) => [e.id, e]));
|
|
1275
1183
|
}
|
|
1276
|
-
e(
|
|
1277
|
-
function
|
|
1184
|
+
e(Je, "buildNodeMap");
|
|
1185
|
+
function Ye(e, t) {
|
|
1278
1186
|
let n = e.parentId, r = null;
|
|
1279
1187
|
for (; n;) {
|
|
1280
1188
|
let e = t.get(n);
|
|
@@ -1283,8 +1191,8 @@ function mt(e, t) {
|
|
|
1283
1191
|
}
|
|
1284
1192
|
return r;
|
|
1285
1193
|
}
|
|
1286
|
-
e(
|
|
1287
|
-
function
|
|
1194
|
+
e(Ye, "resolveTopLevelGroupId");
|
|
1195
|
+
function Xe(e, t) {
|
|
1288
1196
|
let n = 0, r = e.parentId;
|
|
1289
1197
|
for (; r;) {
|
|
1290
1198
|
let e = t.get(r);
|
|
@@ -1293,8 +1201,8 @@ function ht(e, t) {
|
|
|
1293
1201
|
}
|
|
1294
1202
|
return n;
|
|
1295
1203
|
}
|
|
1296
|
-
e(
|
|
1297
|
-
function
|
|
1204
|
+
e(Xe, "groupDepth");
|
|
1205
|
+
function Ze(e) {
|
|
1298
1206
|
let t = Infinity, n = -Infinity, r = Infinity, i = -Infinity;
|
|
1299
1207
|
for (let a of e) {
|
|
1300
1208
|
let e = a.x, o = a.y;
|
|
@@ -1309,21 +1217,21 @@ function gt(e) {
|
|
|
1309
1217
|
maxY: i
|
|
1310
1218
|
};
|
|
1311
1219
|
}
|
|
1312
|
-
e(
|
|
1313
|
-
function
|
|
1220
|
+
e(Ze, "boundsForChildren");
|
|
1221
|
+
function Qe(e, t) {
|
|
1314
1222
|
let n = e.padding ?? 20;
|
|
1315
1223
|
e.x = (t.minX + t.maxX) / 2, e.y = (t.minY + t.maxY) / 2, e.width = Math.max(0, t.maxX - t.minX) + n, e.height = Math.max(0, t.maxY - t.minY) + n;
|
|
1316
1224
|
}
|
|
1317
|
-
e(
|
|
1318
|
-
function
|
|
1319
|
-
let t =
|
|
1225
|
+
e(Qe, "applyGroupBounds");
|
|
1226
|
+
function $e(e) {
|
|
1227
|
+
let t = Je(e), n = e.filter((e) => e.isGroup && e.parentId).sort((e, n) => Xe(n, t) - Xe(e, t));
|
|
1320
1228
|
for (let t of n) {
|
|
1321
|
-
let n =
|
|
1322
|
-
n &&
|
|
1229
|
+
let n = Ze(e.filter((e) => e.parentId === t.id));
|
|
1230
|
+
n && Qe(t, n);
|
|
1323
1231
|
}
|
|
1324
1232
|
}
|
|
1325
|
-
e(
|
|
1326
|
-
function
|
|
1233
|
+
e($e, "recomputeNestedGroupBounds");
|
|
1234
|
+
function et(t, n) {
|
|
1327
1235
|
let r = t.nodes ?? [], i = t.edges ?? [], a = r.filter((e) => !e.isGroup), o = Infinity, s = -Infinity;
|
|
1328
1236
|
for (let e of a) {
|
|
1329
1237
|
let t = e[n];
|
|
@@ -1348,12 +1256,12 @@ function yt(t, n) {
|
|
|
1348
1256
|
for (let e of i) for (let t of e.points ?? []) t[n] = c(t[n]);
|
|
1349
1257
|
return !0;
|
|
1350
1258
|
}
|
|
1351
|
-
e(
|
|
1352
|
-
function
|
|
1353
|
-
return (e.nodes ?? []).some((e) => !e.isGroup)
|
|
1259
|
+
e(et, "mirrorAxis");
|
|
1260
|
+
function tt(e) {
|
|
1261
|
+
return !(e.nodes ?? []).some((e) => !e.isGroup) || et(e, "y");
|
|
1354
1262
|
}
|
|
1355
|
-
e(
|
|
1356
|
-
function
|
|
1263
|
+
e(tt, "applyBtDirectionTransform");
|
|
1264
|
+
function nt(e, t = "LR") {
|
|
1357
1265
|
let n = e.nodes ?? [], r = e.edges ?? [], i = n.filter((e) => !e.isGroup), a = Infinity, o = Infinity;
|
|
1358
1266
|
for (let e of i) {
|
|
1359
1267
|
let t = e.x ?? 0, n = e.y ?? 0;
|
|
@@ -1371,13 +1279,13 @@ function xt(e, t = "LR") {
|
|
|
1371
1279
|
let e = t.x, n = (t.y - o) * d + 36, r = e - a;
|
|
1372
1280
|
t.x = n, t.y = r;
|
|
1373
1281
|
}
|
|
1374
|
-
|
|
1282
|
+
$e(n);
|
|
1375
1283
|
let f = n.filter((e) => e.isGroup && !e.parentId);
|
|
1376
|
-
if (f.length === 0) return t === "RL" &&
|
|
1377
|
-
let p =
|
|
1284
|
+
if (f.length === 0) return t === "RL" && et(e, "x"), !0;
|
|
1285
|
+
let p = Je(n), m = /* @__PURE__ */ new Map();
|
|
1378
1286
|
for (let e of n) {
|
|
1379
1287
|
if (e.isGroup) continue;
|
|
1380
|
-
let t =
|
|
1288
|
+
let t = Ye(e, p);
|
|
1381
1289
|
if (!t) continue;
|
|
1382
1290
|
let n = m.get(t) ?? [];
|
|
1383
1291
|
n.push(e), m.set(t, n);
|
|
@@ -1389,7 +1297,7 @@ function xt(e, t = "LR") {
|
|
|
1389
1297
|
}
|
|
1390
1298
|
let g = [], _ = Infinity, v = -Infinity;
|
|
1391
1299
|
for (let e of f) {
|
|
1392
|
-
let t =
|
|
1300
|
+
let t = Ze(m.get(e.id) ?? []);
|
|
1393
1301
|
t && (_ = Math.min(_, t.minX), v = Math.max(v, t.maxX), g.push({
|
|
1394
1302
|
lane: e,
|
|
1395
1303
|
contentTop: t.minY,
|
|
@@ -1415,34 +1323,34 @@ function xt(e, t = "LR") {
|
|
|
1415
1323
|
bottom: r
|
|
1416
1324
|
};
|
|
1417
1325
|
}
|
|
1418
|
-
return t === "RL" &&
|
|
1326
|
+
return t === "RL" && et(e, "x"), !0;
|
|
1419
1327
|
}
|
|
1420
|
-
e(
|
|
1421
|
-
var
|
|
1328
|
+
e(nt, "applyLrDirectionTransform");
|
|
1329
|
+
var rt = 1e-6, it = 8, at = [
|
|
1422
1330
|
0,
|
|
1423
|
-
|
|
1424
|
-
-
|
|
1425
|
-
2 *
|
|
1426
|
-
-2 *
|
|
1331
|
+
it,
|
|
1332
|
+
-it,
|
|
1333
|
+
2 * it,
|
|
1334
|
+
-2 * it
|
|
1427
1335
|
];
|
|
1428
|
-
function
|
|
1429
|
-
let { nodeInfoById: n, realNodeRects: r } =
|
|
1336
|
+
function ot(e, t) {
|
|
1337
|
+
let { nodeInfoById: n, realNodeRects: r } = de(t);
|
|
1430
1338
|
for (let t of e) {
|
|
1431
1339
|
if (t.isLayoutOnly) continue;
|
|
1432
1340
|
let i = t.points;
|
|
1433
1341
|
if (!i || i.length < 4) continue;
|
|
1434
|
-
let a =
|
|
1342
|
+
let a = ie(H(i, rt), rt);
|
|
1435
1343
|
if (!a) continue;
|
|
1436
|
-
let { p3: o } = a, s = a.kind === "HVH", c =
|
|
1344
|
+
let { p3: o } = a, s = a.kind === "HVH", c = pe(t, n, rt);
|
|
1437
1345
|
if (!c) continue;
|
|
1438
1346
|
let { srcId: l, dstId: u, srcInfo: d, dstInfo: f, collinearX: p, collinearY: m } = c;
|
|
1439
1347
|
if (p || m) continue;
|
|
1440
1348
|
let h, g = d.rect;
|
|
1441
|
-
for (let n of
|
|
1349
|
+
for (let n of at) {
|
|
1442
1350
|
let i, a, c;
|
|
1443
1351
|
if (s) {
|
|
1444
1352
|
let e = f.cy > d.cy ? g.bottom : g.top, t = d.cx + n;
|
|
1445
|
-
if (t <= g.left +
|
|
1353
|
+
if (t <= g.left + rt || t >= g.right - rt) continue;
|
|
1446
1354
|
i = {
|
|
1447
1355
|
x: t,
|
|
1448
1356
|
y: e
|
|
@@ -1455,7 +1363,7 @@ function Tt(e, t) {
|
|
|
1455
1363
|
};
|
|
1456
1364
|
} else {
|
|
1457
1365
|
let e = f.cx > d.cx ? g.right : g.left, t = d.cy + n;
|
|
1458
|
-
if (t <= g.top +
|
|
1366
|
+
if (t <= g.top + rt || t >= g.bottom - rt) continue;
|
|
1459
1367
|
i = {
|
|
1460
1368
|
x: e,
|
|
1461
1369
|
y: t
|
|
@@ -1467,13 +1375,13 @@ function Tt(e, t) {
|
|
|
1467
1375
|
y: o.y
|
|
1468
1376
|
};
|
|
1469
1377
|
}
|
|
1470
|
-
let p =
|
|
1471
|
-
if (p && m || !p &&
|
|
1472
|
-
let _ = !p &&
|
|
1473
|
-
epsilon:
|
|
1378
|
+
let p = P(i, a, rt), m = P(a, c, rt);
|
|
1379
|
+
if (p && m || !p && J(i, a, r, [l], 1) || !m && J(a, c, r, [u], 1)) continue;
|
|
1380
|
+
let _ = !p && ge(i, a, e, t, {
|
|
1381
|
+
epsilon: rt,
|
|
1474
1382
|
skipDegenerateOther: !0
|
|
1475
|
-
}), v = !m &&
|
|
1476
|
-
epsilon:
|
|
1383
|
+
}), v = !m && ge(a, c, e, t, {
|
|
1384
|
+
epsilon: rt,
|
|
1477
1385
|
skipDegenerateOther: !0
|
|
1478
1386
|
});
|
|
1479
1387
|
if (!(_ || v)) {
|
|
@@ -1488,20 +1396,20 @@ function Tt(e, t) {
|
|
|
1488
1396
|
h && (t.points = h);
|
|
1489
1397
|
}
|
|
1490
1398
|
}
|
|
1491
|
-
e(
|
|
1492
|
-
function
|
|
1493
|
-
let r = .001, { realNodeRects: i, labelNodeRects: a } =
|
|
1399
|
+
e(ot, "portSwapToLShape");
|
|
1400
|
+
function st(t, n) {
|
|
1401
|
+
let r = .001, { realNodeRects: i, labelNodeRects: a } = q(n.values());
|
|
1494
1402
|
for (let o of t) {
|
|
1495
1403
|
if (o.isLayoutOnly) continue;
|
|
1496
1404
|
let s = o.points;
|
|
1497
1405
|
if (!s || s.length < 4) continue;
|
|
1498
|
-
let c =
|
|
1406
|
+
let c = H(s, r);
|
|
1499
1407
|
if (c.length < 4) continue;
|
|
1500
1408
|
let l = c.length - 1, u = c[l], d = c[l - 1], f = c[l - 2], p = u.x - d.x, m = u.y - d.y, h = Math.hypot(p, m);
|
|
1501
1409
|
if (h >= 10 || h < r) continue;
|
|
1502
1410
|
let g = d.x - f.x, _ = d.y - f.y;
|
|
1503
1411
|
if (Math.hypot(g, _) < r) continue;
|
|
1504
|
-
let v =
|
|
1412
|
+
let v = L(d, u, r), y = R(d, u, r), b = L(f, d, r), x = R(f, d, r);
|
|
1505
1413
|
if (!(v && x || y && b)) continue;
|
|
1506
1414
|
let S = o.end, C = o.start, w = S ? n.get(S) : void 0;
|
|
1507
1415
|
if (!w) continue;
|
|
@@ -1527,10 +1435,10 @@ function Et(t, n) {
|
|
|
1527
1435
|
y: E
|
|
1528
1436
|
};
|
|
1529
1437
|
}
|
|
1530
|
-
if (
|
|
1438
|
+
if (J(O, k, i, S ? [S] : [], -2) || J(O, k, a, [], -2)) continue;
|
|
1531
1439
|
if (C) {
|
|
1532
1440
|
let e = n.get(C), t = e ? K(e) : void 0;
|
|
1533
|
-
if (t &&
|
|
1441
|
+
if (t && U(O, t, 2)) continue;
|
|
1534
1442
|
}
|
|
1535
1443
|
let A = /* @__PURE__ */ e((e, t) => `${e.x.toFixed(3)},${e.y.toFixed(3)}|${t.x.toFixed(3)},${t.y.toFixed(3)}`, "ownSegmentKey"), j = /* @__PURE__ */ new Set();
|
|
1536
1444
|
for (let e = 0; e < c.length - 1; e++) j.add(A(c[e], c[e + 1]));
|
|
@@ -1540,7 +1448,7 @@ function Et(t, n) {
|
|
|
1540
1448
|
let t = i.points;
|
|
1541
1449
|
if (!(!t || t.length < 2)) for (let i = 0; i < t.length - 1; i++) {
|
|
1542
1450
|
let a = t[i], o = t[i + 1];
|
|
1543
|
-
if (!j.has(A(a, o)) &&
|
|
1451
|
+
if (!j.has(A(a, o)) && _e(e, n, a, o, r)) return !0;
|
|
1544
1452
|
}
|
|
1545
1453
|
}
|
|
1546
1454
|
return !1;
|
|
@@ -1548,7 +1456,7 @@ function Et(t, n) {
|
|
|
1548
1456
|
if (ee(O, k)) continue;
|
|
1549
1457
|
if (l - 3 >= 0) {
|
|
1550
1458
|
let e = c[l - 3], t = [C, S].filter((e) => !!e);
|
|
1551
|
-
if (
|
|
1459
|
+
if (J(e, O, i, t, -2) || ee(e, O)) continue;
|
|
1552
1460
|
}
|
|
1553
1461
|
let te = [
|
|
1554
1462
|
...c.slice(0, l - 2),
|
|
@@ -1564,7 +1472,7 @@ function Et(t, n) {
|
|
|
1564
1472
|
if (t > 0 && n > 0) {
|
|
1565
1473
|
let i, a, o = -1;
|
|
1566
1474
|
for (let e = 0; e < te.length - 1; e++) {
|
|
1567
|
-
let s = te[e], c = te[e + 1], l = Math.hypot(c.x - s.x, c.y - s.y), u =
|
|
1475
|
+
let s = te[e], c = te[e + 1], l = Math.hypot(c.x - s.x, c.y - s.y), u = I(s, c, r), d = F(s, c, r);
|
|
1568
1476
|
(u && l >= t + 2 || d && l >= n + 2) && l > o && (o = l, i = (s.x + c.x) / 2, a = (s.y + c.y) / 2);
|
|
1569
1477
|
}
|
|
1570
1478
|
i !== void 0 && a !== void 0 && (e.x = i, e.y = a);
|
|
@@ -1573,9 +1481,9 @@ function Et(t, n) {
|
|
|
1573
1481
|
}
|
|
1574
1482
|
}
|
|
1575
1483
|
}
|
|
1576
|
-
e(
|
|
1577
|
-
var
|
|
1578
|
-
function
|
|
1484
|
+
e(st, "collapseShortTerminalStub");
|
|
1485
|
+
var X = .001, Z = 8, Q = re, ct = /* @__PURE__ */ e((e, t) => F(e, t, X) || I(e, t, X), "orthogonallyAligned");
|
|
1486
|
+
function lt(t, n) {
|
|
1579
1487
|
let r = /* @__PURE__ */ e((e, t) => {
|
|
1580
1488
|
let n = e.x ?? 0, r = e.y ?? 0, i = t.x - n, a = t.y - r, o = (e.width ?? 0) / 2, s = (e.height ?? 0) / 2;
|
|
1581
1489
|
return Math.abs(a) * o > Math.abs(i) * s ? (a < 0 && (s = -s), {
|
|
@@ -1586,12 +1494,12 @@ function Ot(t, n) {
|
|
|
1586
1494
|
y: r + (i === 0 ? 0 : o * a / i)
|
|
1587
1495
|
});
|
|
1588
1496
|
}, "rectIntersect"), i = /* @__PURE__ */ e((e, t) => {
|
|
1589
|
-
let i =
|
|
1497
|
+
let i = H(e.points ?? []);
|
|
1590
1498
|
if (i.length < 2) return;
|
|
1591
1499
|
let a = t ? e.start : e.end, o = a ? n.get(a) : void 0, s = o ? K(o) : void 0;
|
|
1592
1500
|
if (!o || !a || !s) return;
|
|
1593
1501
|
let c = t ? i[0] : i[i.length - 1], l = t ? i[1] : i[i.length - 2], u = r(o, c), d = c;
|
|
1594
|
-
if (
|
|
1502
|
+
if (ct(l, u) && (d = l), F(u, d, X)) return {
|
|
1595
1503
|
edge: e,
|
|
1596
1504
|
edgeId: String(e.id ?? ""),
|
|
1597
1505
|
nodeId: a,
|
|
@@ -1604,7 +1512,7 @@ function Ot(t, n) {
|
|
|
1604
1512
|
railEnd: d,
|
|
1605
1513
|
rect: s
|
|
1606
1514
|
};
|
|
1607
|
-
if (
|
|
1515
|
+
if (I(u, d, X)) return {
|
|
1608
1516
|
edge: e,
|
|
1609
1517
|
edgeId: String(e.id ?? ""),
|
|
1610
1518
|
nodeId: a,
|
|
@@ -1617,14 +1525,14 @@ function Ot(t, n) {
|
|
|
1617
1525
|
railEnd: d,
|
|
1618
1526
|
rect: s
|
|
1619
1527
|
};
|
|
1620
|
-
}, "terminalLaneFor"), a = /* @__PURE__ */ e((e, t) => Math.max(0, Math.min(e.max, t.max) - Math.max(e.min, t.min)), "projectedOverlapLength"), o = /* @__PURE__ */ e((e, t) => e.nodeId !== t.nodeId || e.orientation !== t.orientation ? !1 : e.orientation === "H" ? (Math.abs(e.boundary.x - e.rect.left) < 1 || Math.abs(e.boundary.x - e.rect.right) < 1) &&
|
|
1528
|
+
}, "terminalLaneFor"), a = /* @__PURE__ */ e((e, t) => Math.max(0, Math.min(e.max, t.max) - Math.max(e.min, t.min)), "projectedOverlapLength"), o = /* @__PURE__ */ e((e, t) => e.nodeId !== t.nodeId || e.orientation !== t.orientation ? !1 : e.orientation === "H" ? (Math.abs(e.boundary.x - e.rect.left) < 1 || Math.abs(e.boundary.x - e.rect.right) < 1) && F(e.boundary, t.boundary, 1) : (Math.abs(e.boundary.y - e.rect.top) < 1 || Math.abs(e.boundary.y - e.rect.bottom) < 1) && I(e.boundary, t.boundary, 1), "sameTerminalFace"), s = /* @__PURE__ */ e((e, t) => e.nodeId !== t.nodeId || e.orientation !== t.orientation ? !1 : a(e, t) >= Z && Math.abs(e.coord - t.coord) < .5, "exactTerminalLaneConflict"), c = /* @__PURE__ */ e((e, t) => {
|
|
1621
1529
|
if (e.nodeId !== t.nodeId || e.orientation !== t.orientation || e.orientation !== "H" || e.atStart === t.atStart) return !1;
|
|
1622
1530
|
let n = a(e, t);
|
|
1623
|
-
if (n <
|
|
1531
|
+
if (n < Z) return !1;
|
|
1624
1532
|
let r = e.rect.bottom - e.rect.top;
|
|
1625
1533
|
return n < r || n > 2 * r ? !1 : o(e, t) && Math.abs(e.coord - t.coord) < 16;
|
|
1626
1534
|
}, "nearTerminalLaneConflict"), l = /* @__PURE__ */ e((t, n) => {
|
|
1627
|
-
let r =
|
|
1535
|
+
let r = H(t.edge.points ?? []);
|
|
1628
1536
|
if (r.length < 2) return;
|
|
1629
1537
|
let i = t.orientation === "V" ? {
|
|
1630
1538
|
x: t.boundary.x + n,
|
|
@@ -1639,28 +1547,28 @@ function Ot(t, n) {
|
|
|
1639
1547
|
x: t.railEnd.x,
|
|
1640
1548
|
y: t.railEnd.y + n
|
|
1641
1549
|
};
|
|
1642
|
-
if (!(/* @__PURE__ */ e(() => Math.abs(t.boundary.y - t.rect.top) < 1 || Math.abs(t.boundary.y - t.rect.bottom) < 1 ?
|
|
1550
|
+
if (!(/* @__PURE__ */ e(() => Math.abs(t.boundary.y - t.rect.top) < 1 || Math.abs(t.boundary.y - t.rect.bottom) < 1 ? I(i, t.boundary, X) && i.x >= t.rect.left + 1 && i.x <= t.rect.right - 1 : Math.abs(t.boundary.x - t.rect.left) < 1 || Math.abs(t.boundary.x - t.rect.right) < 1 ? F(i, t.boundary, X) && i.y >= t.rect.top + 1 && i.y <= t.rect.bottom - 1 : !1, "boundaryStaysOnSameFace"))()) return;
|
|
1643
1551
|
if (t.atStart) {
|
|
1644
|
-
let e = r.length > 1 &&
|
|
1645
|
-
return o && !
|
|
1552
|
+
let e = r.length > 1 && P(r[1], t.railEnd, X), n = r.slice(e ? 2 : 1), o = n[0];
|
|
1553
|
+
return o && !ct(o, a) ? void 0 : [
|
|
1646
1554
|
i,
|
|
1647
1555
|
a,
|
|
1648
1556
|
...n
|
|
1649
1557
|
];
|
|
1650
1558
|
}
|
|
1651
|
-
let o = r.length > 1 &&
|
|
1652
|
-
if (!(c && !
|
|
1559
|
+
let o = r.length > 1 && P(r[r.length - 2], t.railEnd, X), s = r.slice(0, o ? -2 : -1), c = s[s.length - 1];
|
|
1560
|
+
if (!(c && !ct(c, a))) return [
|
|
1653
1561
|
...s,
|
|
1654
1562
|
a,
|
|
1655
1563
|
i
|
|
1656
1564
|
];
|
|
1657
1565
|
}, "shiftedCandidate"), u = /* @__PURE__ */ e((e) => {
|
|
1658
|
-
let t = e.edge, r =
|
|
1566
|
+
let t = e.edge, r = H(t.points ?? []);
|
|
1659
1567
|
if (r.length !== 2) return !1;
|
|
1660
1568
|
let i = t.start, a = t.end, o = i ? n.get(i) : void 0, s = a ? n.get(a) : void 0;
|
|
1661
1569
|
if (!o || !s) return !1;
|
|
1662
1570
|
let c = o.x ?? 0, l = o.y ?? 0, u = s.x ?? 0, d = s.y ?? 0, [f, p] = r;
|
|
1663
|
-
return
|
|
1571
|
+
return I(f, p, X) && Math.abs(l - d) < 1 && Math.abs(c - u) > 1 || F(f, p, X) && Math.abs(c - u) < 1 && Math.abs(l - d) > 1;
|
|
1664
1572
|
}, "laneIsStraightCollinearConnector"), d = [
|
|
1665
1573
|
-7,
|
|
1666
1574
|
7,
|
|
@@ -1697,32 +1605,32 @@ function Ot(t, n) {
|
|
|
1697
1605
|
if (!n) return;
|
|
1698
1606
|
}
|
|
1699
1607
|
}
|
|
1700
|
-
e(
|
|
1701
|
-
function
|
|
1702
|
-
let { realNodeRects: r, labelNodeRects: i } =
|
|
1703
|
-
let a = e.start, o = e.end, s =
|
|
1608
|
+
e(lt, "separateSharedRenderedTerminalLanes");
|
|
1609
|
+
function ut(t, n) {
|
|
1610
|
+
let { realNodeRects: r, labelNodeRects: i } = q(n.values()), a = /* @__PURE__ */ e((e, n) => {
|
|
1611
|
+
let a = e.start, o = e.end, s = Q(n);
|
|
1704
1612
|
if (s.length !== n.length - 1) return !1;
|
|
1705
1613
|
let c = [a, o].filter((e) => !!e);
|
|
1706
|
-
for (let e of s) if (
|
|
1614
|
+
for (let e of s) if (J(e.a, e.b, r, c, -2) || J(e.a, e.b, i, [], -2)) return !1;
|
|
1707
1615
|
for (let n of t) {
|
|
1708
1616
|
if (n === e || n.isLayoutOnly) continue;
|
|
1709
1617
|
let t = n.points;
|
|
1710
1618
|
if (!(!t || t.length < 2)) {
|
|
1711
|
-
for (let e of s) for (let n of
|
|
1619
|
+
for (let e of s) for (let n of Q(H(t))) if (B(e, n, .5) >= Z || _e(e.a, e.b, n.a, n.b, X)) return !1;
|
|
1712
1620
|
}
|
|
1713
1621
|
}
|
|
1714
1622
|
return !0;
|
|
1715
1623
|
}, "candidateIsSafe"), o = /* @__PURE__ */ e((e, t) => {
|
|
1716
1624
|
if (t + 4 >= e.length) return;
|
|
1717
|
-
let n = e[t], r = e[t + 1], i = e[t + 2], a = e[t + 3], o = e[t + 4], s =
|
|
1718
|
-
if (s || c) return
|
|
1625
|
+
let n = e[t], r = e[t + 1], i = e[t + 2], a = e[t + 3], o = e[t + 4], s = L(n, r) && R(r, i) && L(i, a) && R(a, o) && F(n, a, X) && F(n, o, X) && F(r, i, X) && (r.x - n.x) * (a.x - i.x) < 0, c = R(n, r) && L(r, i) && R(i, a) && L(a, o) && I(n, a, X) && I(n, o, X) && I(r, i, X) && (r.y - n.y) * (a.y - i.y) < 0;
|
|
1626
|
+
if (s || c) return H([
|
|
1719
1627
|
...e.slice(0, t + 1),
|
|
1720
1628
|
o,
|
|
1721
1629
|
...e.slice(t + 5)
|
|
1722
1630
|
]);
|
|
1723
1631
|
if (t + 5 >= e.length) return;
|
|
1724
|
-
let l = e[t + 5], u =
|
|
1725
|
-
if (!(!u && !d)) return
|
|
1632
|
+
let l = e[t + 5], u = R(n, r) && L(r, i) && R(i, a) && L(a, o) && R(o, l) && F(n, o, X) && F(n, l, X) && F(i, a, X) && (i.x - r.x) * (o.x - a.x) < 0, d = L(n, r) && R(r, i) && L(i, a) && R(a, o) && L(o, l) && I(n, o, X) && I(n, l, X) && I(i, a, X) && (i.y - r.y) * (o.y - a.y) < 0;
|
|
1633
|
+
if (!(!u && !d)) return H([
|
|
1726
1634
|
...e.slice(0, t + 1),
|
|
1727
1635
|
l,
|
|
1728
1636
|
...e.slice(t + 6)
|
|
@@ -1732,7 +1640,7 @@ function kt(t, n) {
|
|
|
1732
1640
|
let e = !1;
|
|
1733
1641
|
for (let n of t) {
|
|
1734
1642
|
if (n.isLayoutOnly) continue;
|
|
1735
|
-
let t =
|
|
1643
|
+
let t = H(n.points ?? []);
|
|
1736
1644
|
for (let r = 0; r <= t.length - 5; r++) {
|
|
1737
1645
|
let i = o(t, r);
|
|
1738
1646
|
if (!(!i || !a(n, i))) {
|
|
@@ -1745,23 +1653,23 @@ function kt(t, n) {
|
|
|
1745
1653
|
if (!e) return;
|
|
1746
1654
|
}
|
|
1747
1655
|
}
|
|
1748
|
-
e(
|
|
1749
|
-
function
|
|
1750
|
-
let { realNodeRects: r, labelNodeRects: i } =
|
|
1656
|
+
e(ut, "collapseRedundantRectangularDoglegs");
|
|
1657
|
+
function dt(t, n) {
|
|
1658
|
+
let { realNodeRects: r, labelNodeRects: i } = q(n.values()), a = t.filter((e) => !e.isLayoutOnly), o = /* @__PURE__ */ e((e, t, n) => H(e === t ? n ?? [] : e.points ?? []), "pointsFor"), s = /* @__PURE__ */ e((e, t) => {
|
|
1751
1659
|
let n = 0;
|
|
1752
1660
|
for (let r = 0; r < a.length; r++) {
|
|
1753
|
-
let i =
|
|
1661
|
+
let i = Q(o(a[r], e, t));
|
|
1754
1662
|
for (let s = r + 1; s < a.length; s++) {
|
|
1755
|
-
let r =
|
|
1756
|
-
for (let e of i) for (let t of r)
|
|
1663
|
+
let r = Q(o(a[s], e, t));
|
|
1664
|
+
for (let e of i) for (let t of r) _e(e.a, e.b, t.a, t.b, X) && n++;
|
|
1757
1665
|
}
|
|
1758
1666
|
}
|
|
1759
1667
|
return n;
|
|
1760
1668
|
}, "strictCrossingCount"), c = /* @__PURE__ */ e((e) => {
|
|
1761
|
-
let t =
|
|
1669
|
+
let t = Q(e);
|
|
1762
1670
|
if (t.length !== 3) return;
|
|
1763
1671
|
let n = t[1];
|
|
1764
|
-
if (
|
|
1672
|
+
if (t[0].horizontal !== n.horizontal && t[2].horizontal !== n.horizontal) return {
|
|
1765
1673
|
index: n.index,
|
|
1766
1674
|
horizontal: n.horizontal,
|
|
1767
1675
|
vertical: n.vertical,
|
|
@@ -1772,21 +1680,21 @@ function At(t, n) {
|
|
|
1772
1680
|
return r.filter((e) => {
|
|
1773
1681
|
if (n.includes(e.id)) return !1;
|
|
1774
1682
|
let r = e.rect;
|
|
1775
|
-
return t.horizontal ?
|
|
1683
|
+
return t.horizontal ? z(t.a.x, t.b.x, r.left, r.right) >= Z && t.a.y >= r.top - 2 && t.a.y <= r.bottom + 2 : z(t.a.y, t.b.y, r.top, r.bottom) >= Z && t.a.x >= r.left - 2 && t.a.x <= r.right + 2;
|
|
1776
1684
|
});
|
|
1777
1685
|
}, "blockingRectsFor"), u = /* @__PURE__ */ e((e, t, n) => {
|
|
1778
1686
|
let r = e.map((e) => ({ ...e }));
|
|
1779
1687
|
if (t.horizontal) r[t.index].y = n, r[t.index + 1].y = n;
|
|
1780
1688
|
else if (t.vertical) r[t.index].x = n, r[t.index + 1].x = n;
|
|
1781
1689
|
else return;
|
|
1782
|
-
let i =
|
|
1783
|
-
return
|
|
1690
|
+
let i = Se(H(r));
|
|
1691
|
+
return Q(i).length === i.length - 1 ? i : void 0;
|
|
1784
1692
|
}, "candidateByMovingRail"), d = /* @__PURE__ */ e((e, t, n) => {
|
|
1785
|
-
let c = [e.start, e.end].filter((e) => !!e), l =
|
|
1693
|
+
let c = [e.start, e.end].filter((e) => !!e), l = Q(t);
|
|
1786
1694
|
if (l.length !== t.length - 1) return !1;
|
|
1787
|
-
for (let e of l) if (
|
|
1695
|
+
for (let e of l) if (J(e.a, e.b, r, c, -2) || J(e.a, e.b, i, [], -2)) return !1;
|
|
1788
1696
|
for (let t of a) if (t !== e) {
|
|
1789
|
-
for (let e of l) for (let n of
|
|
1697
|
+
for (let e of l) for (let n of Q(o(t))) if (B(e, n, .5) >= Z) return !1;
|
|
1790
1698
|
}
|
|
1791
1699
|
return s(e, t) <= n;
|
|
1792
1700
|
}, "candidateIsSafe");
|
|
@@ -1810,8 +1718,8 @@ function At(t, n) {
|
|
|
1810
1718
|
if (!t) return;
|
|
1811
1719
|
}
|
|
1812
1720
|
}
|
|
1813
|
-
e(
|
|
1814
|
-
function
|
|
1721
|
+
e(dt, "liftObstacleHuggingSameSideRails");
|
|
1722
|
+
function ft(t, n) {
|
|
1815
1723
|
let r = /* @__PURE__ */ e((e) => {
|
|
1816
1724
|
let t = e.groupTitleRect;
|
|
1817
1725
|
if (!(!t || typeof t.left != "number" || typeof t.right != "number" || typeof t.top != "number" || typeof t.bottom != "number" || !Number.isFinite(t.left) || !Number.isFinite(t.right) || !Number.isFinite(t.top) || !Number.isFinite(t.bottom) || t.right <= t.left || t.bottom <= t.top)) return {
|
|
@@ -1834,16 +1742,16 @@ function jt(t, n) {
|
|
|
1834
1742
|
}, "topLaneTitleFor"), a = /* @__PURE__ */ e((e, t) => {
|
|
1835
1743
|
if (!e.horizontal) return !1;
|
|
1836
1744
|
let n = e.a.y;
|
|
1837
|
-
return n <= t.top +
|
|
1745
|
+
return n <= t.top + X || n >= t.bottom - X ? !1 : z(e.a.x, e.b.x, t.left, t.right) >= Z;
|
|
1838
1746
|
}, "horizontalSegmentIntersectsTitle"), o = [...n.values()].map(i).filter((e) => !!e);
|
|
1839
1747
|
if (o.length === 0) return;
|
|
1840
1748
|
let s = 0;
|
|
1841
1749
|
for (let e of t) {
|
|
1842
1750
|
if (e.isLayoutOnly) continue;
|
|
1843
|
-
let t =
|
|
1844
|
-
for (let e of
|
|
1751
|
+
let t = H(e.points ?? []);
|
|
1752
|
+
for (let e of Q(t)) for (let t of o) a(e, t.rect) && (s = Math.max(s, t.rect.bottom - e.a.y + 4));
|
|
1845
1753
|
}
|
|
1846
|
-
if (!(s <=
|
|
1754
|
+
if (!(s <= X)) for (let e of o) {
|
|
1847
1755
|
let t = e.node.y, n = e.node.height;
|
|
1848
1756
|
typeof t != "number" || typeof n != "number" || !Number.isFinite(t) || !Number.isFinite(n) || n <= 0 || (e.node.y = t - s / 2, e.node.height = n + s, e.node.groupTitleRect = {
|
|
1849
1757
|
...e.rect,
|
|
@@ -1852,8 +1760,8 @@ function jt(t, n) {
|
|
|
1852
1760
|
});
|
|
1853
1761
|
}
|
|
1854
1762
|
}
|
|
1855
|
-
e(
|
|
1856
|
-
function
|
|
1763
|
+
e(ft, "liftTopLaneTitleBandsAboveRails");
|
|
1764
|
+
function pt(t, n) {
|
|
1857
1765
|
let r = /* @__PURE__ */ e((e) => {
|
|
1858
1766
|
let t = e.groupTitleRect;
|
|
1859
1767
|
if (!(!t || typeof t.left != "number" || typeof t.right != "number" || typeof t.top != "number" || typeof t.bottom != "number" || !Number.isFinite(t.left) || !Number.isFinite(t.right) || !Number.isFinite(t.top) || !Number.isFinite(t.bottom) || t.right <= t.left || t.bottom <= t.top)) return {
|
|
@@ -1874,24 +1782,24 @@ function Mt(t, n) {
|
|
|
1874
1782
|
}, "leftLaneTitleFor"), a = /* @__PURE__ */ e((e, t) => {
|
|
1875
1783
|
if (!e.vertical) return !1;
|
|
1876
1784
|
let n = e.a.x;
|
|
1877
|
-
return n <= t.left +
|
|
1785
|
+
return n <= t.left + X || n >= t.right - X ? !1 : z(e.a.y, e.b.y, t.top, t.bottom) >= Z;
|
|
1878
1786
|
}, "verticalSegmentIntersectsTitle"), o = /* @__PURE__ */ e((e, t) => {
|
|
1879
1787
|
if (!e.horizontal) return !1;
|
|
1880
1788
|
let n = e.a.y;
|
|
1881
|
-
return n <= t.top +
|
|
1789
|
+
return n <= t.top + X || n >= t.bottom - X ? !1 : z(e.a.x, e.b.x, t.left, t.right) >= Z;
|
|
1882
1790
|
}, "horizontalSegmentIntersectsTitle"), s = [...n.values()].map(i).filter((e) => !!e);
|
|
1883
1791
|
if (s.length === 0) return;
|
|
1884
1792
|
let c = 0;
|
|
1885
1793
|
for (let e of t) {
|
|
1886
1794
|
if (e.isLayoutOnly) continue;
|
|
1887
|
-
let t =
|
|
1888
|
-
for (let e of
|
|
1795
|
+
let t = H(e.points ?? []);
|
|
1796
|
+
for (let e of Q(t)) for (let t of s) if (a(e, t.rect)) c = Math.max(c, t.rect.right - e.a.x + 4);
|
|
1889
1797
|
else if (o(e, t.rect)) {
|
|
1890
1798
|
let n = Math.min(e.a.x, e.b.x);
|
|
1891
1799
|
c = Math.max(c, t.rect.right - n + 4);
|
|
1892
1800
|
}
|
|
1893
1801
|
}
|
|
1894
|
-
if (!(c <=
|
|
1802
|
+
if (!(c <= X)) for (let e of s) {
|
|
1895
1803
|
let t = e.node.x, n = e.node.width;
|
|
1896
1804
|
typeof t != "number" || typeof n != "number" || !Number.isFinite(t) || !Number.isFinite(n) || n <= 0 || (e.node.x = t - c / 2, e.node.width = n + c, e.node.groupTitleRect = {
|
|
1897
1805
|
...e.rect,
|
|
@@ -1900,23 +1808,23 @@ function Mt(t, n) {
|
|
|
1900
1808
|
});
|
|
1901
1809
|
}
|
|
1902
1810
|
}
|
|
1903
|
-
e(
|
|
1904
|
-
function
|
|
1905
|
-
let { realNodeRects: r } =
|
|
1811
|
+
e(pt, "shiftLeftLaneTitleBandsLeftOfRails");
|
|
1812
|
+
function mt(t, n) {
|
|
1813
|
+
let { realNodeRects: r } = q(n.values()), i = t.filter((e) => !e.isLayoutOnly), a = /* @__PURE__ */ e((e, t = /* @__PURE__ */ new Map()) => H(t.get(e) ?? e.points ?? []), "replacementPointsFor"), o = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => {
|
|
1906
1814
|
let t = 0;
|
|
1907
1815
|
for (let n = 0; n < i.length; n++) {
|
|
1908
|
-
let r =
|
|
1816
|
+
let r = Q(a(i[n], e));
|
|
1909
1817
|
for (let o = n + 1; o < i.length; o++) {
|
|
1910
|
-
let n =
|
|
1911
|
-
for (let e of r) for (let r of n)
|
|
1818
|
+
let n = Q(a(i[o], e));
|
|
1819
|
+
for (let e of r) for (let r of n) _e(e.a, e.b, r.a, r.b, X) && t++;
|
|
1912
1820
|
}
|
|
1913
1821
|
}
|
|
1914
1822
|
return t;
|
|
1915
|
-
}, "crossingCount"), s = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => i.reduce((t, n) => t +
|
|
1823
|
+
}, "crossingCount"), s = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => i.reduce((t, n) => t + V(a(n, e)), 0), "totalBends"), c = /* @__PURE__ */ e((e) => {
|
|
1916
1824
|
let t = a(e);
|
|
1917
1825
|
if (t.length < 4) return;
|
|
1918
1826
|
let n = t[t.length - 2], r = t[t.length - 1];
|
|
1919
|
-
if (!(!
|
|
1827
|
+
if (!(!L(n, r, X) && !R(n, r, X))) return {
|
|
1920
1828
|
tailStart: n,
|
|
1921
1829
|
terminal: r
|
|
1922
1830
|
};
|
|
@@ -1924,30 +1832,30 @@ function Nt(t, n) {
|
|
|
1924
1832
|
let n = a(e);
|
|
1925
1833
|
if (n.length < 3) return;
|
|
1926
1834
|
let r = n[0], i = n[1], o;
|
|
1927
|
-
if (
|
|
1835
|
+
if (L(r, i, X)) o = {
|
|
1928
1836
|
x: i.x,
|
|
1929
1837
|
y: t.tailStart.y
|
|
1930
1838
|
};
|
|
1931
|
-
else if (
|
|
1839
|
+
else if (R(r, i, X)) o = {
|
|
1932
1840
|
x: t.tailStart.x,
|
|
1933
1841
|
y: i.y
|
|
1934
1842
|
};
|
|
1935
1843
|
else return;
|
|
1936
|
-
let s =
|
|
1844
|
+
let s = Se(H([
|
|
1937
1845
|
r,
|
|
1938
1846
|
i,
|
|
1939
1847
|
o,
|
|
1940
1848
|
t.tailStart,
|
|
1941
1849
|
t.terminal
|
|
1942
1850
|
]));
|
|
1943
|
-
return
|
|
1851
|
+
return Q(s).length === s.length - 1 ? s : void 0;
|
|
1944
1852
|
}, "candidateWithDestinationTail"), u = /* @__PURE__ */ e((e, t) => {
|
|
1945
1853
|
let n = [e.start, e.end].filter((e) => !!e);
|
|
1946
|
-
for (let e of
|
|
1854
|
+
for (let e of Q(t)) if (J(e.a, e.b, r, n, -2)) return !0;
|
|
1947
1855
|
return !1;
|
|
1948
1856
|
}, "pathHasNodeHit"), d = /* @__PURE__ */ e((e, t, n) => {
|
|
1949
1857
|
for (let r of i) if (r !== e) {
|
|
1950
|
-
for (let e of
|
|
1858
|
+
for (let e of Q(t)) for (let t of Q(a(r, n))) if (B(e, t, .5) >= Z) return !0;
|
|
1951
1859
|
}
|
|
1952
1860
|
return !1;
|
|
1953
1861
|
}, "pathHasSharedTrack"), f = /* @__PURE__ */ e((e, t, n) => !u(e, t) && !d(e, t, n), "candidateIsSafe"), p = /* @__PURE__ */ e(() => {
|
|
@@ -1978,19 +1886,19 @@ function Nt(t, n) {
|
|
|
1978
1886
|
for (let [e, t] of n) e.points = t;
|
|
1979
1887
|
}
|
|
1980
1888
|
}
|
|
1981
|
-
e(
|
|
1982
|
-
function
|
|
1983
|
-
let { realNodeRects: r, labelNodeRects: i } =
|
|
1889
|
+
e(mt, "swapDestinationTerminalTailsToReduceCrossings");
|
|
1890
|
+
function ht(t, n) {
|
|
1891
|
+
let { realNodeRects: r, labelNodeRects: i } = q(n.values()), a = t.filter((e) => !e.isLayoutOnly), o = /* @__PURE__ */ e((e, t = /* @__PURE__ */ new Map()) => H(t.get(e) ?? e.points ?? []), "replacementPointsFor"), s = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => {
|
|
1984
1892
|
let t = 0;
|
|
1985
1893
|
for (let n = 0; n < a.length; n++) {
|
|
1986
|
-
let r =
|
|
1894
|
+
let r = Q(o(a[n], e));
|
|
1987
1895
|
for (let i = n + 1; i < a.length; i++) {
|
|
1988
|
-
let n =
|
|
1989
|
-
for (let e of r) for (let r of n)
|
|
1896
|
+
let n = Q(o(a[i], e));
|
|
1897
|
+
for (let e of r) for (let r of n) _e(e.a, e.b, r.a, r.b, X) && t++;
|
|
1990
1898
|
}
|
|
1991
1899
|
}
|
|
1992
1900
|
return t;
|
|
1993
|
-
}, "strictCrossingCount"), c = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => a.reduce((t, n) => t +
|
|
1901
|
+
}, "strictCrossingCount"), c = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => a.reduce((t, n) => t + V(o(n, e)), 0), "totalBends"), l = /* @__PURE__ */ e((e) => {
|
|
1994
1902
|
let t = e.start, r = e.end, i = t ? n.get(t) : void 0, a = r ? n.get(r) : void 0, o = i ? K(i) : void 0, s = a ? K(a) : void 0;
|
|
1995
1903
|
return o && s ? {
|
|
1996
1904
|
src: o,
|
|
@@ -2001,7 +1909,7 @@ function Pt(t, n) {
|
|
|
2001
1909
|
let r = l(e);
|
|
2002
1910
|
if (r) {
|
|
2003
1911
|
if (n.vertical) {
|
|
2004
|
-
let i = n.a.x, a = Math.min(r.src.left, r.dst.left), o = Math.max(r.src.right, r.dst.right), s = i < a -
|
|
1912
|
+
let i = n.a.x, a = Math.min(r.src.left, r.dst.left), o = Math.max(r.src.right, r.dst.right), s = i < a - X ? "left" : i > o + X ? "right" : void 0;
|
|
2005
1913
|
return s ? {
|
|
2006
1914
|
edge: e,
|
|
2007
1915
|
points: t,
|
|
@@ -2014,7 +1922,7 @@ function Pt(t, n) {
|
|
|
2014
1922
|
} : void 0;
|
|
2015
1923
|
}
|
|
2016
1924
|
if (n.horizontal) {
|
|
2017
|
-
let i = n.a.y, a = Math.min(r.src.top, r.dst.top), o = Math.max(r.src.bottom, r.dst.bottom), s = i < a -
|
|
1925
|
+
let i = n.a.y, a = Math.min(r.src.top, r.dst.top), o = Math.max(r.src.bottom, r.dst.bottom), s = i < a - X ? "top" : i > o + X ? "bottom" : void 0;
|
|
2018
1926
|
return s ? {
|
|
2019
1927
|
edge: e,
|
|
2020
1928
|
points: t,
|
|
@@ -2031,13 +1939,13 @@ function Pt(t, n) {
|
|
|
2031
1939
|
let e = [];
|
|
2032
1940
|
for (let t of a) {
|
|
2033
1941
|
let n = o(t);
|
|
2034
|
-
for (let r of
|
|
1942
|
+
for (let r of Q(n)) {
|
|
2035
1943
|
let i = u(t, n, r);
|
|
2036
1944
|
i && e.push(i);
|
|
2037
1945
|
}
|
|
2038
1946
|
}
|
|
2039
1947
|
return e;
|
|
2040
|
-
}, "collectExternalRails"), f = /* @__PURE__ */ e((e, t) => e.edge !== t.edge && e.axis === t.axis && e.side === t.side &&
|
|
1948
|
+
}, "collectExternalRails"), f = /* @__PURE__ */ e((e, t) => e.edge !== t.edge && e.axis === t.axis && e.side === t.side && z(e.min, e.max, t.min, t.max) >= Z, "railsInteract"), p = /* @__PURE__ */ e((e) => {
|
|
2041
1949
|
let t = [], n = /* @__PURE__ */ new Set();
|
|
2042
1950
|
for (let r of e) {
|
|
2043
1951
|
if (n.has(r)) continue;
|
|
@@ -2052,7 +1960,7 @@ function Pt(t, n) {
|
|
|
2052
1960
|
return t;
|
|
2053
1961
|
}, "connectedComponents"), m = /* @__PURE__ */ e((e) => {
|
|
2054
1962
|
let t = [];
|
|
2055
|
-
for (let n of e) t.some((e) => Math.abs(e - n.coord) <
|
|
1963
|
+
for (let n of e) t.some((e) => Math.abs(e - n.coord) < X) || t.push(n.coord);
|
|
2056
1964
|
for (; t.length < e.length;) {
|
|
2057
1965
|
let n = Math.min(...t), r = Math.max(...t), i = e[0].side;
|
|
2058
1966
|
t.push(i === "left" || i === "top" ? n - 12 * (e.length - t.length) : r + 12 * (e.length - t.length));
|
|
@@ -2063,7 +1971,7 @@ function Pt(t, n) {
|
|
|
2063
1971
|
if (t.length <= 6) {
|
|
2064
1972
|
let a = Array(r.length).fill(!1), o = [], s = /* @__PURE__ */ e(() => {
|
|
2065
1973
|
if (o.length === t.length) {
|
|
2066
|
-
o.some((e, t) => Math.abs(e - n[t]) >=
|
|
1974
|
+
o.some((e, t) => Math.abs(e - n[t]) >= X) && i.push([...o]);
|
|
2067
1975
|
return;
|
|
2068
1976
|
}
|
|
2069
1977
|
for (let [e, t] of r.entries()) a[e] || (a[e] = !0, o.push(t), s(), o.pop(), a[e] = !1);
|
|
@@ -2086,23 +1994,23 @@ function Pt(t, n) {
|
|
|
2086
1994
|
}
|
|
2087
1995
|
let r = /* @__PURE__ */ new Map();
|
|
2088
1996
|
for (let [e, t] of n) {
|
|
2089
|
-
let n =
|
|
2090
|
-
if (
|
|
1997
|
+
let n = Se(H(t));
|
|
1998
|
+
if (Q(n).length !== n.length - 1) return;
|
|
2091
1999
|
r.set(e, n);
|
|
2092
2000
|
}
|
|
2093
2001
|
return r;
|
|
2094
2002
|
}, "replacementsForAssignment"), _ = /* @__PURE__ */ e((e) => {
|
|
2095
2003
|
for (let [t, n] of e) {
|
|
2096
2004
|
let e = [t.start, t.end].filter((e) => !!e);
|
|
2097
|
-
for (let t of
|
|
2005
|
+
for (let t of Q(n)) if (J(t.a, t.b, r, e, -2) || J(t.a, t.b, i, [], -2)) return !1;
|
|
2098
2006
|
}
|
|
2099
2007
|
for (let t = 0; t < a.length; t++) {
|
|
2100
|
-
let n = a[t], r = e.has(n), i =
|
|
2008
|
+
let n = a[t], r = e.has(n), i = Q(o(n, e));
|
|
2101
2009
|
for (let n = t + 1; n < a.length; n++) {
|
|
2102
2010
|
let t = a[n];
|
|
2103
2011
|
if (!r && !e.has(t)) continue;
|
|
2104
|
-
let s =
|
|
2105
|
-
for (let e of i) for (let t of s) if (
|
|
2012
|
+
let s = Q(o(t, e));
|
|
2013
|
+
for (let e of i) for (let t of s) if (B(e, t, .5) >= Z) return !1;
|
|
2106
2014
|
}
|
|
2107
2015
|
}
|
|
2108
2016
|
return !0;
|
|
@@ -2123,29 +2031,29 @@ function Pt(t, n) {
|
|
|
2123
2031
|
for (let [e, n] of t) e.points = n;
|
|
2124
2032
|
}
|
|
2125
2033
|
}
|
|
2126
|
-
e(
|
|
2127
|
-
function
|
|
2128
|
-
let { realNodeRects: r, labelNodeRects: i } =
|
|
2034
|
+
e(ht, "reassignCrossingExternalRailChannels");
|
|
2035
|
+
function gt(t, n) {
|
|
2036
|
+
let { realNodeRects: r, labelNodeRects: i } = q(n.values()), a = t.filter((e) => !e.isLayoutOnly), o = /* @__PURE__ */ e((e, t, n) => H(e === t ? n ?? [] : e.points ?? []), "pointsFor"), s = /* @__PURE__ */ e((e) => Q(e).reduce((e, t) => {
|
|
2129
2037
|
let n = t.a.x - t.b.x, r = t.a.y - t.b.y;
|
|
2130
2038
|
return e + Math.hypot(n, r);
|
|
2131
2039
|
}, 0), "pathLength"), c = /* @__PURE__ */ e((e, t) => {
|
|
2132
2040
|
let n = 0;
|
|
2133
2041
|
for (let r = 0; r < a.length; r++) {
|
|
2134
|
-
let i =
|
|
2042
|
+
let i = Q(o(a[r], e, t));
|
|
2135
2043
|
for (let s = r + 1; s < a.length; s++) {
|
|
2136
|
-
let r =
|
|
2137
|
-
for (let e of i) for (let t of r)
|
|
2044
|
+
let r = Q(o(a[s], e, t));
|
|
2045
|
+
for (let e of i) for (let t of r) _e(e.a, e.b, t.a, t.b, X) && n++;
|
|
2138
2046
|
}
|
|
2139
2047
|
}
|
|
2140
2048
|
return n;
|
|
2141
2049
|
}, "strictCrossingCount"), l = /* @__PURE__ */ e((e, t) => {
|
|
2142
2050
|
if (e.horizontal) {
|
|
2143
2051
|
let n = e.a.y;
|
|
2144
|
-
return (Math.abs(n - t.top) < 1 || Math.abs(n - t.bottom) < 1) &&
|
|
2052
|
+
return (Math.abs(n - t.top) < 1 || Math.abs(n - t.bottom) < 1) && z(e.a.x, e.b.x, t.left, t.right) >= Z;
|
|
2145
2053
|
}
|
|
2146
2054
|
if (e.vertical) {
|
|
2147
2055
|
let n = e.a.x;
|
|
2148
|
-
return (Math.abs(n - t.left) < 1 || Math.abs(n - t.right) < 1) &&
|
|
2056
|
+
return (Math.abs(n - t.left) < 1 || Math.abs(n - t.right) < 1) && z(e.a.y, e.b.y, t.top, t.bottom) >= Z;
|
|
2149
2057
|
}
|
|
2150
2058
|
return !1;
|
|
2151
2059
|
}, "segmentRunsAlongRectBorder"), u = /* @__PURE__ */ e((e) => {
|
|
@@ -2157,9 +2065,9 @@ function Ft(t, n) {
|
|
|
2157
2065
|
return r;
|
|
2158
2066
|
}, "endpointRectsFor"), d = /* @__PURE__ */ e((e, t) => {
|
|
2159
2067
|
if (t + 3 >= e.length) return [];
|
|
2160
|
-
let n = e[t], r = e[t + 1], i = e[t + 2], a = e[t + 3], o =
|
|
2068
|
+
let n = e[t], r = e[t + 1], i = e[t + 2], a = e[t + 3], o = L(n, r, X) && R(r, i, X) && L(i, a, X), s = R(n, r, X) && L(r, i, X) && R(i, a, X);
|
|
2161
2069
|
if (!o && !s || !(o ? Math.sign(r.x - n.x) !== Math.sign(a.x - i.x) : Math.sign(r.y - n.y) !== Math.sign(a.y - i.y))) return [];
|
|
2162
|
-
let c =
|
|
2070
|
+
let c = F(n, a, X) || I(n, a, X) ? [] : [{
|
|
2163
2071
|
x: n.x,
|
|
2164
2072
|
y: a.y
|
|
2165
2073
|
}, {
|
|
@@ -2170,26 +2078,26 @@ function Ft(t, n) {
|
|
|
2170
2078
|
n,
|
|
2171
2079
|
...e.slice(t + 3)
|
|
2172
2080
|
]), u = /* @__PURE__ */ new Set();
|
|
2173
|
-
return l.map((e) =>
|
|
2174
|
-
if (
|
|
2081
|
+
return l.map((e) => Se(H(e))).filter((e) => {
|
|
2082
|
+
if (Q(e).length !== e.length - 1 || !e.some((e) => P(e, a, X))) return !1;
|
|
2175
2083
|
let t = e.map((e) => `${e.x.toFixed(3)},${e.y.toFixed(3)}`).join("|");
|
|
2176
|
-
return u.has(t)
|
|
2084
|
+
return !u.has(t) && (u.add(t), !0);
|
|
2177
2085
|
});
|
|
2178
2086
|
}, "shortcutCandidatesAt"), f = /* @__PURE__ */ e((e, t, n) => {
|
|
2179
2087
|
let s = [e.start, e.end].filter((e) => !!e), d = u(e);
|
|
2180
|
-
for (let e of
|
|
2088
|
+
for (let e of Q(t)) if (J(e.a, e.b, r, s, -2) || J(e.a, e.b, i, [], -2) || d.some((t) => l(e, t))) return !1;
|
|
2181
2089
|
for (let n of a) if (n !== e) {
|
|
2182
|
-
for (let e of
|
|
2090
|
+
for (let e of Q(t)) for (let t of Q(o(n))) if (B(e, t, .5) >= Z) return !1;
|
|
2183
2091
|
}
|
|
2184
2092
|
return c(e, t) <= n;
|
|
2185
2093
|
}, "candidateIsSafe");
|
|
2186
2094
|
for (let e = 0; e < 8; e++) {
|
|
2187
2095
|
let e = c(), t, n, r = e, i = Infinity, l = Infinity;
|
|
2188
2096
|
for (let u of a) {
|
|
2189
|
-
let a = o(u), p =
|
|
2097
|
+
let a = o(u), p = V(a, X), m = s(a);
|
|
2190
2098
|
for (let o = 0; o <= a.length - 4; o++) for (let h of d(a, o)) {
|
|
2191
|
-
let a =
|
|
2192
|
-
if (!(a < p || a === p && o < m -
|
|
2099
|
+
let a = V(h, X), o = s(h);
|
|
2100
|
+
if (!(a < p || a === p && o < m - X) || !f(u, h, e)) continue;
|
|
2193
2101
|
let d = c(u, h);
|
|
2194
2102
|
d > r || d === r && (a > i || a === i && o >= l) || (t = u, n = h, r = d, i = a, l = o);
|
|
2195
2103
|
}
|
|
@@ -2198,8 +2106,8 @@ function Ft(t, n) {
|
|
|
2198
2106
|
t.points = n;
|
|
2199
2107
|
}
|
|
2200
2108
|
}
|
|
2201
|
-
e(
|
|
2202
|
-
function
|
|
2109
|
+
e(gt, "shortcutRedundantOrthogonalJogs");
|
|
2110
|
+
function _t(t, n) {
|
|
2203
2111
|
let r = [];
|
|
2204
2112
|
for (let e of n.values()) {
|
|
2205
2113
|
if (e.isGroup || e.isEdgeLabel) continue;
|
|
@@ -2229,11 +2137,11 @@ function It(t, n) {
|
|
|
2229
2137
|
let t = e === "left" || e === "top" ? -1 : 1, n = [];
|
|
2230
2138
|
for (let r = 0; r <= 2; r++) n.push(s[e] + t * 20 * r);
|
|
2231
2139
|
return n;
|
|
2232
|
-
}, "outwardTracksForSide"), d = /* @__PURE__ */ e((e, t = /* @__PURE__ */ new Map()) =>
|
|
2140
|
+
}, "outwardTracksForSide"), d = /* @__PURE__ */ e((e, t = /* @__PURE__ */ new Map()) => H(t.get(e) ?? e.points ?? []), "replacementPointsFor"), f = /* @__PURE__ */ e((e, t) => {
|
|
2233
2141
|
let n = 0;
|
|
2234
|
-
for (let r of e) for (let e of t)
|
|
2142
|
+
for (let r of e) for (let e of t) _e(r.a, r.b, e.a, e.b, X) && n++;
|
|
2235
2143
|
return n;
|
|
2236
|
-
}, "crossingCountBetweenSegments"), p = /* @__PURE__ */ e((e, t) => f(
|
|
2144
|
+
}, "crossingCountBetweenSegments"), p = /* @__PURE__ */ e((e, t) => f(Q(e), Q(t)), "crossingCountBetweenPaths"), m = /* @__PURE__ */ e((t = /* @__PURE__ */ new Map()) => {
|
|
2237
2145
|
let n = 0, r = [], i = /* @__PURE__ */ new Set(), a = [], o = /* @__PURE__ */ e((e) => {
|
|
2238
2146
|
i.has(e) || (i.add(e), a.push(e));
|
|
2239
2147
|
}, "addEdge");
|
|
@@ -2303,19 +2211,19 @@ function It(t, n) {
|
|
|
2303
2211
|
}, "currentCrossingsByEdge"), x = /* @__PURE__ */ e((e) => e.slice(1).reduce((t, n, r) => {
|
|
2304
2212
|
let i = e[r];
|
|
2305
2213
|
return t + Math.abs(n.x - i.x) + Math.abs(n.y - i.y);
|
|
2306
|
-
}, 0), "pathLength"), S = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => c.reduce((t, n) => t +
|
|
2307
|
-
let r =
|
|
2214
|
+
}, 0), "pathLength"), S = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => c.reduce((t, n) => t + V(d(n, e)), 0), "totalBends"), C = /* @__PURE__ */ e((e = /* @__PURE__ */ new Map()) => c.reduce((t, n) => t + x(d(n, e)), 0), "totalLength"), w = /* @__PURE__ */ e((e, t, n = /* @__PURE__ */ new Map()) => {
|
|
2215
|
+
let r = Q(t);
|
|
2308
2216
|
for (let t of c) if (t !== e) {
|
|
2309
|
-
for (let e of r) for (let r of
|
|
2217
|
+
for (let e of r) for (let r of Q(d(t, n))) if (B(e, r, .5) >= Z) return !0;
|
|
2310
2218
|
}
|
|
2311
2219
|
return !1;
|
|
2312
2220
|
}, "pathHasSegmentConflict"), T = /* @__PURE__ */ e((e, t) => {
|
|
2313
2221
|
let n = [e.start, e.end].filter((e) => !!e);
|
|
2314
|
-
for (let e of
|
|
2222
|
+
for (let e of Q(t)) if (J(e.a, e.b, a, n, -2)) return !0;
|
|
2315
2223
|
return !1;
|
|
2316
2224
|
}, "pathHitsNode"), E = /* @__PURE__ */ e((e, t) => {
|
|
2317
|
-
let n =
|
|
2318
|
-
|
|
2225
|
+
let n = Se(H(t));
|
|
2226
|
+
Q(n).length === n.length - 1 && e.push(n);
|
|
2319
2227
|
}, "pushOrthogonalCandidate"), D = /* @__PURE__ */ e((e) => e === "left" || e === "right", "sideIsHorizontal"), O = /* @__PURE__ */ e((e, t, n) => {
|
|
2320
2228
|
switch (t) {
|
|
2321
2229
|
case "left": return Math.min(e.x, n.x) - 20;
|
|
@@ -2325,7 +2233,7 @@ function It(t, n) {
|
|
|
2325
2233
|
}
|
|
2326
2234
|
}, "localTrackForSameSide"), k = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2327
2235
|
let i = n === "left" || n === "top" ? -1 : 1, a = [O(t, n, r), s[n]];
|
|
2328
|
-
for (let o of a) for (let a = 0; a <= 2; a++) E(e,
|
|
2236
|
+
for (let o of a) for (let a = 0; a <= 2; a++) E(e, ue(t, n, r, o + i * 20 * a));
|
|
2329
2237
|
}, "addSameSideCandidates"), A = /* @__PURE__ */ e((e, t, n, r, i) => {
|
|
2330
2238
|
for (let a of u(n)) for (let n of u(i)) E(e, [
|
|
2331
2239
|
t,
|
|
@@ -2406,19 +2314,19 @@ function It(t, n) {
|
|
|
2406
2314
|
]);
|
|
2407
2315
|
}, "addVerticalPairCandidates"), M = /* @__PURE__ */ e((e) => {
|
|
2408
2316
|
let t = /* @__PURE__ */ new Set();
|
|
2409
|
-
return e.map((e) =>
|
|
2317
|
+
return e.map((e) => H(e)).filter((e) => {
|
|
2410
2318
|
let n = e.map((e) => `${e.x.toFixed(3)},${e.y.toFixed(3)}`).join("|");
|
|
2411
2319
|
return t.has(n) || e.length < 2 ? !1 : (t.add(n), !0);
|
|
2412
2320
|
});
|
|
2413
2321
|
}, "dedupeCandidatePaths"), ne = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2414
|
-
let i = [], a =
|
|
2322
|
+
let i = [], a = le(e, t, n, r, 20, X);
|
|
2415
2323
|
a && E(i, a), t === r && k(i, e, t, n);
|
|
2416
2324
|
let o = D(t), s = D(r);
|
|
2417
2325
|
return o && !s ? A(i, e, t, n, r) : !o && s ? j(i, e, t, n, r) : o ? ee(i, e, t, n, r) : te(i, e, t, n, r), M(i);
|
|
2418
2326
|
}, "buildCandidatesForSides"), N = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2419
2327
|
let i = [...u("left"), ...u("right")], a = [...u("top"), ...u("bottom")];
|
|
2420
2328
|
for (let s of o) {
|
|
2421
|
-
let o =
|
|
2329
|
+
let o = ce(r, s), c = s === "top" || s === "bottom" ? u(s) : a;
|
|
2422
2330
|
for (let r of i) {
|
|
2423
2331
|
E(e, [
|
|
2424
2332
|
t,
|
|
@@ -2452,10 +2360,10 @@ function It(t, n) {
|
|
|
2452
2360
|
]);
|
|
2453
2361
|
}
|
|
2454
2362
|
}
|
|
2455
|
-
}, "addVerticalDepartureOuterTrackCandidates"),
|
|
2363
|
+
}, "addVerticalDepartureOuterTrackCandidates"), P = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2456
2364
|
let i = [...u("left"), ...u("right")], a = [...u("top"), ...u("bottom")];
|
|
2457
2365
|
for (let s of o) {
|
|
2458
|
-
let o =
|
|
2366
|
+
let o = ce(r, s), c = s === "left" || s === "right" ? u(s) : i;
|
|
2459
2367
|
for (let r of a) {
|
|
2460
2368
|
E(e, [
|
|
2461
2369
|
t,
|
|
@@ -2489,88 +2397,88 @@ function It(t, n) {
|
|
|
2489
2397
|
]);
|
|
2490
2398
|
}
|
|
2491
2399
|
}
|
|
2492
|
-
}, "addHorizontalDepartureOuterTrackCandidates"),
|
|
2400
|
+
}, "addHorizontalDepartureOuterTrackCandidates"), F = /* @__PURE__ */ e((e) => {
|
|
2493
2401
|
let t = e.start, n = e.end, r = n ? i.get(n) : void 0;
|
|
2494
2402
|
if (!t || !r) return [];
|
|
2495
|
-
let a =
|
|
2403
|
+
let a = H(e.points ?? []);
|
|
2496
2404
|
if (a.length < 4) return [];
|
|
2497
2405
|
let o = a[0], s = a[1], c = [];
|
|
2498
|
-
return
|
|
2499
|
-
}, "terminalPreservingOuterTrackCandidates"),
|
|
2406
|
+
return R(o, s, X) ? N(c, o, s, r) : L(o, s, X) && P(c, o, s, r), c;
|
|
2407
|
+
}, "terminalPreservingOuterTrackCandidates"), I = /* @__PURE__ */ e((e) => {
|
|
2500
2408
|
let t = e.start, n = e.end, r = t ? i.get(t) : void 0, a = n ? i.get(n) : void 0;
|
|
2501
2409
|
if (!r || !a) return [];
|
|
2502
2410
|
let s = [];
|
|
2503
2411
|
for (let e of o) {
|
|
2504
|
-
let t =
|
|
2505
|
-
for (let n of o) s.push(...ne(t, e,
|
|
2412
|
+
let t = ce(r, e);
|
|
2413
|
+
for (let n of o) s.push(...ne(t, e, ce(a, n), n));
|
|
2506
2414
|
}
|
|
2507
|
-
return s.push(...
|
|
2508
|
-
}, "candidatePathsFor"),
|
|
2415
|
+
return s.push(...F(e)), s;
|
|
2416
|
+
}, "candidatePathsFor"), z = /* @__PURE__ */ e(() => new Map(c.map((e) => [e, Q(d(e))])), "currentSegmentsByEdge"), re = /* @__PURE__ */ e((e, t, n) => {
|
|
2509
2417
|
let r = /* @__PURE__ */ new Set();
|
|
2510
2418
|
for (let i of c) {
|
|
2511
2419
|
if (i === e) continue;
|
|
2512
|
-
let a = n.get(i) ??
|
|
2513
|
-
t.some((e) => a.some((t) =>
|
|
2420
|
+
let a = n.get(i) ?? Q(d(i));
|
|
2421
|
+
t.some((e) => a.some((t) => B(e, t, .5) >= Z)) && r.add(i);
|
|
2514
2422
|
}
|
|
2515
2423
|
return r;
|
|
2516
|
-
}, "sharedTrackConflictsFor"),
|
|
2424
|
+
}, "sharedTrackConflictsFor"), ie = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2517
2425
|
let i = /* @__PURE__ */ new Set();
|
|
2518
|
-
return
|
|
2426
|
+
return I(e).map((e) => Se(H(e))).filter((t) => {
|
|
2519
2427
|
if (T(e, t)) return !1;
|
|
2520
2428
|
let n = t.map((e) => `${e.x.toFixed(3)},${e.y.toFixed(3)}`).join("|");
|
|
2521
2429
|
return i.has(n) || t.length < 2 ? !1 : (i.add(n), !0);
|
|
2522
2430
|
}).map((i) => {
|
|
2523
|
-
let a =
|
|
2524
|
-
for (let t of c) t !== e && (o += f(a, n.get(t) ??
|
|
2431
|
+
let a = Q(i), o = 0;
|
|
2432
|
+
for (let t of c) t !== e && (o += f(a, n.get(t) ?? Q(d(t))));
|
|
2525
2433
|
return {
|
|
2526
2434
|
candidate: i,
|
|
2527
2435
|
candidateSegments: a,
|
|
2528
2436
|
crossings: t.count - (r.get(e) ?? 0) + o,
|
|
2529
|
-
bends:
|
|
2530
|
-
totalBends:
|
|
2437
|
+
bends: V(i, X),
|
|
2438
|
+
totalBends: V(i),
|
|
2531
2439
|
length: x(i)
|
|
2532
2440
|
};
|
|
2533
2441
|
}).filter(({ crossings: e }) => e <= t.count).sort((e, t) => e.crossings - t.crossings || e.bends - t.bends || e.length - t.length).slice(0, 48).map((t) => ({
|
|
2534
2442
|
path: t.candidate,
|
|
2535
2443
|
segments: t.candidateSegments,
|
|
2536
|
-
sharedTrackConflicts:
|
|
2444
|
+
sharedTrackConflicts: re(e, t.candidateSegments, n),
|
|
2537
2445
|
totalBends: t.totalBends,
|
|
2538
2446
|
length: t.length
|
|
2539
2447
|
}));
|
|
2540
|
-
}, "pairCandidatesFor"),
|
|
2448
|
+
}, "pairCandidatesFor"), ae = /* @__PURE__ */ e((e, t, n, r, i, a) => {
|
|
2541
2449
|
let o = 0;
|
|
2542
2450
|
for (let n of e.pairs) (n.first === t || n.second === t || n.first === r || n.second === r) && (o += n.count);
|
|
2543
2451
|
let s = f(n.segments, i.segments);
|
|
2544
2452
|
for (let e of c) {
|
|
2545
2453
|
if (e === t || e === r) continue;
|
|
2546
|
-
let o = a.get(e) ??
|
|
2454
|
+
let o = a.get(e) ?? Q(d(e));
|
|
2547
2455
|
s += f(n.segments, o) + f(i.segments, o);
|
|
2548
2456
|
}
|
|
2549
2457
|
return e.count - o + s;
|
|
2550
|
-
}, "pairCrossingCount"),
|
|
2458
|
+
}, "pairCrossingCount"), U = /* @__PURE__ */ e((e, t) => {
|
|
2551
2459
|
for (let n of e.sharedTrackConflicts) if (n !== t) return !1;
|
|
2552
2460
|
return !0;
|
|
2553
|
-
}, "conflictsOnlyWith"),
|
|
2554
|
-
let a =
|
|
2461
|
+
}, "conflictsOnlyWith"), W = /* @__PURE__ */ e((e, t) => e.segments.some((e) => t.segments.some((t) => B(e, t, .5) >= Z)), "candidatesShareTrack"), G = /* @__PURE__ */ e((e, t, n, r) => U(t, n.edge) && U(r, e.edge) && !W(t, r), "pairCandidatesAreCompatible"), oe = /* @__PURE__ */ e((e, t, n, r, i) => {
|
|
2462
|
+
let a = ae(e.current, t.edge, n, r.edge, i, e.baseSegments);
|
|
2555
2463
|
if (!(a >= e.current.count)) return {
|
|
2556
2464
|
replacements: /* @__PURE__ */ new Map([[t.edge, n.path], [r.edge, i.path]]),
|
|
2557
2465
|
crossings: a,
|
|
2558
2466
|
bends: e.currentBends - (e.baseBendsByEdge.get(t.edge) ?? 0) - (e.baseBendsByEdge.get(r.edge) ?? 0) + n.totalBends + i.totalBends,
|
|
2559
2467
|
length: e.currentLength - (e.baseLengthByEdge.get(t.edge) ?? 0) - (e.baseLengthByEdge.get(r.edge) ?? 0) + n.length + i.length
|
|
2560
2468
|
};
|
|
2561
|
-
}, "scorePairReplacement"),
|
|
2469
|
+
}, "scorePairReplacement"), se = /* @__PURE__ */ e((e, t) => e.crossings < t.crossings || e.crossings === t.crossings && (e.bends < t.bends || e.bends === t.bends && e.length < t.length), "pairScoreIsBetter"), de = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2562
2470
|
let i = r;
|
|
2563
2471
|
for (let r of t.candidates) for (let a of n.candidates) {
|
|
2564
|
-
if (!
|
|
2565
|
-
let o =
|
|
2566
|
-
o &&
|
|
2472
|
+
if (!G(t, r, n, a)) continue;
|
|
2473
|
+
let o = oe(e, t, r, n, a);
|
|
2474
|
+
o && se(o, i) && (i = o);
|
|
2567
2475
|
}
|
|
2568
2476
|
return i;
|
|
2569
|
-
}, "bestScoreForOptionPair"),
|
|
2570
|
-
let t = S(), n = C(), r =
|
|
2477
|
+
}, "bestScoreForOptionPair"), q = /* @__PURE__ */ e((e) => {
|
|
2478
|
+
let t = S(), n = C(), r = z(), i = b(e), a = new Map(c.map((e) => [e, V(d(e))])), o = new Map(c.map((e) => [e, x(d(e))])), s = /* @__PURE__ */ new Map(), l = v(e);
|
|
2571
2479
|
for (let t of l) for (let n of t) {
|
|
2572
2480
|
if (s.has(n)) continue;
|
|
2573
|
-
let t =
|
|
2481
|
+
let t = ie(n, e, r, i);
|
|
2574
2482
|
t.length > 0 && s.set(n, {
|
|
2575
2483
|
edge: n,
|
|
2576
2484
|
candidates: t
|
|
@@ -2595,7 +2503,7 @@ function It(t, n) {
|
|
|
2595
2503
|
let t = r[e];
|
|
2596
2504
|
for (let i = e + 1; i < r.length; i++) {
|
|
2597
2505
|
let e = r[i];
|
|
2598
|
-
!n.has(t.edge) && !n.has(e.edge) || (u =
|
|
2506
|
+
!n.has(t.edge) && !n.has(e.edge) || (u = de(f, t, e, u));
|
|
2599
2507
|
}
|
|
2600
2508
|
}
|
|
2601
2509
|
}
|
|
@@ -2606,9 +2514,9 @@ function It(t, n) {
|
|
|
2606
2514
|
if (t === 0) return;
|
|
2607
2515
|
let n, r, i = t, a = Infinity;
|
|
2608
2516
|
for (let o of e.edges) {
|
|
2609
|
-
let s =
|
|
2610
|
-
for (let c of
|
|
2611
|
-
let l = T(o, c), u = !l && w(o, c), d = y(e, o, c), f =
|
|
2517
|
+
let s = V(d(o), X);
|
|
2518
|
+
for (let c of I(o)) {
|
|
2519
|
+
let l = T(o, c), u = !l && w(o, c), d = y(e, o, c), f = V(c, X);
|
|
2612
2520
|
l || u || (d < t || d === t && f < s) && (d > i || d === i && f >= a || (n = o, r = c, i = d, a = f));
|
|
2613
2521
|
}
|
|
2614
2522
|
}
|
|
@@ -2616,15 +2524,15 @@ function It(t, n) {
|
|
|
2616
2524
|
n.points = r;
|
|
2617
2525
|
continue;
|
|
2618
2526
|
}
|
|
2619
|
-
let o =
|
|
2527
|
+
let o = q(e);
|
|
2620
2528
|
if (!o) return;
|
|
2621
2529
|
for (let [e, t] of o) e.points = t;
|
|
2622
2530
|
}
|
|
2623
2531
|
}
|
|
2624
|
-
e(
|
|
2625
|
-
var
|
|
2626
|
-
function
|
|
2627
|
-
let { nodeInfoById: r, realNodeRects: i } =
|
|
2532
|
+
e(_t, "resolveRenderedOrthogonalCrossings");
|
|
2533
|
+
var vt = .001, yt = 8;
|
|
2534
|
+
function bt(t, n) {
|
|
2535
|
+
let { nodeInfoById: r, realNodeRects: i } = de(n), a = [
|
|
2628
2536
|
"top",
|
|
2629
2537
|
"bottom",
|
|
2630
2538
|
"left",
|
|
@@ -2635,27 +2543,27 @@ function zt(t, n) {
|
|
|
2635
2543
|
left: Math.min(...i.map((e) => e.rect.left)) - 20,
|
|
2636
2544
|
right: Math.max(...i.map((e) => e.rect.right)) + 20
|
|
2637
2545
|
}, s = /* @__PURE__ */ e((e, t, n, r) => {
|
|
2638
|
-
let i = [], a =
|
|
2639
|
-
return a && i.push(a), t === r && i.push(
|
|
2546
|
+
let i = [], a = le(e, t, n, r, 20, vt);
|
|
2547
|
+
return a && i.push(a), t === r && i.push(ue(e, t, n, o[t])), i;
|
|
2640
2548
|
}, "buildOrthogonalPathCandidates"), c = /* @__PURE__ */ e((e, t) => {
|
|
2641
2549
|
for (let n = 0; n < e.length - 1; n++) {
|
|
2642
2550
|
let r = e[n], a = e[n + 1];
|
|
2643
|
-
if (
|
|
2551
|
+
if (J(r, a, i, t, 1)) return !0;
|
|
2644
2552
|
}
|
|
2645
2553
|
return !1;
|
|
2646
2554
|
}, "pathHitsNode"), l = /* @__PURE__ */ e((e, n, r = !1) => {
|
|
2647
|
-
let i = 0, a =
|
|
2555
|
+
let i = 0, a = re(e, vt), o = n.start, s = n.end;
|
|
2648
2556
|
for (let e of t) {
|
|
2649
2557
|
if (e === n || e.isLayoutOnly) continue;
|
|
2650
2558
|
let t = e.start, c = e.end;
|
|
2651
2559
|
if (!r && o && s && (t === o || t === s || c === o || c === s)) continue;
|
|
2652
2560
|
let l = e.points;
|
|
2653
|
-
if (!(!l || l.length < 2)) for (let e of a) for (let t of
|
|
2654
|
-
if (
|
|
2561
|
+
if (!(!l || l.length < 2)) for (let e of a) for (let t of re(l, vt)) {
|
|
2562
|
+
if (me(e.a, e.b, t.a, t.b, vt, vt)) {
|
|
2655
2563
|
i++;
|
|
2656
2564
|
continue;
|
|
2657
2565
|
}
|
|
2658
|
-
|
|
2566
|
+
B(e, t, vt) >= yt && i++;
|
|
2659
2567
|
}
|
|
2660
2568
|
}
|
|
2661
2569
|
return i;
|
|
@@ -2688,7 +2596,7 @@ function zt(t, n) {
|
|
|
2688
2596
|
if (e.isLayoutOnly) continue;
|
|
2689
2597
|
let t = e.points;
|
|
2690
2598
|
if (!t || t.length < 2) continue;
|
|
2691
|
-
let n =
|
|
2599
|
+
let n = V(t, vt);
|
|
2692
2600
|
if (n < 4) continue;
|
|
2693
2601
|
let i = e.start, o = e.end;
|
|
2694
2602
|
if (!i || !o) continue;
|
|
@@ -2697,13 +2605,13 @@ function zt(t, n) {
|
|
|
2697
2605
|
let g = e.id ?? "", _ = l(t, e, !0), v = l(t, e), y, b = _, x = n;
|
|
2698
2606
|
for (let t of a) {
|
|
2699
2607
|
if (p(i, t, g)) continue;
|
|
2700
|
-
let n =
|
|
2608
|
+
let n = ce(m, t);
|
|
2701
2609
|
for (let r of a) {
|
|
2702
2610
|
if (p(o, r, g)) continue;
|
|
2703
|
-
let a =
|
|
2611
|
+
let a = ce(h, r);
|
|
2704
2612
|
for (let u of s(n, t, a, r)) {
|
|
2705
2613
|
if (c(u, [i, o])) continue;
|
|
2706
|
-
let t =
|
|
2614
|
+
let t = V(u, vt);
|
|
2707
2615
|
if (_ > 0) {
|
|
2708
2616
|
let n = l(u, e, !0);
|
|
2709
2617
|
if (n > b || n === b && t >= x) continue;
|
|
@@ -2723,27 +2631,27 @@ function zt(t, n) {
|
|
|
2723
2631
|
}
|
|
2724
2632
|
}
|
|
2725
2633
|
}
|
|
2726
|
-
e(
|
|
2727
|
-
var
|
|
2728
|
-
function
|
|
2634
|
+
e(bt, "simplifyDetouredEdges");
|
|
2635
|
+
var xt = .001, St = 10, Ct = 7;
|
|
2636
|
+
function wt(e, t) {
|
|
2729
2637
|
let n = t ? 0 : e.length - 1, r = t ? 1 : -1, i = e[n], a = e[n + r];
|
|
2730
2638
|
if (!i || !a) return;
|
|
2731
2639
|
let o = a.x - i.x, s = a.y - i.y;
|
|
2732
|
-
if (!(Math.abs(o) + Math.abs(s) <
|
|
2733
|
-
if (Math.abs(s) <=
|
|
2734
|
-
let e = i.x + Math.sign(o) *
|
|
2640
|
+
if (!(Math.abs(o) + Math.abs(s) < xt)) {
|
|
2641
|
+
if (Math.abs(s) <= xt) {
|
|
2642
|
+
let e = i.x + Math.sign(o) * St;
|
|
2735
2643
|
return {
|
|
2736
2644
|
left: Math.min(i.x, e),
|
|
2737
2645
|
right: Math.max(i.x, e),
|
|
2738
|
-
top: i.y -
|
|
2739
|
-
bottom: i.y +
|
|
2646
|
+
top: i.y - Ct,
|
|
2647
|
+
bottom: i.y + Ct
|
|
2740
2648
|
};
|
|
2741
2649
|
}
|
|
2742
|
-
if (Math.abs(o) <=
|
|
2743
|
-
let e = i.y + Math.sign(s) *
|
|
2650
|
+
if (Math.abs(o) <= xt) {
|
|
2651
|
+
let e = i.y + Math.sign(s) * St;
|
|
2744
2652
|
return {
|
|
2745
|
-
left: i.x -
|
|
2746
|
-
right: i.x +
|
|
2653
|
+
left: i.x - Ct,
|
|
2654
|
+
right: i.x + Ct,
|
|
2747
2655
|
top: Math.min(i.y, e),
|
|
2748
2656
|
bottom: Math.max(i.y, e)
|
|
2749
2657
|
};
|
|
@@ -2756,8 +2664,8 @@ function Ht(e, t) {
|
|
|
2756
2664
|
};
|
|
2757
2665
|
}
|
|
2758
2666
|
}
|
|
2759
|
-
e(
|
|
2760
|
-
function
|
|
2667
|
+
e(wt, "markerClearanceRectFor");
|
|
2668
|
+
function Tt(e) {
|
|
2761
2669
|
return {
|
|
2762
2670
|
left: Math.min(e.left, e.right),
|
|
2763
2671
|
right: Math.max(e.left, e.right),
|
|
@@ -2765,13 +2673,13 @@ function Ut(e) {
|
|
|
2765
2673
|
bottom: Math.max(e.top, e.bottom)
|
|
2766
2674
|
};
|
|
2767
2675
|
}
|
|
2768
|
-
e(
|
|
2769
|
-
function
|
|
2770
|
-
let n =
|
|
2771
|
-
return [
|
|
2676
|
+
e(Tt, "normalizeRect");
|
|
2677
|
+
function Et(e, t) {
|
|
2678
|
+
let n = H(t);
|
|
2679
|
+
return [wt(n, !0), wt(n, !1)].some((t) => t && G(e, Tt(t)));
|
|
2772
2680
|
}
|
|
2773
|
-
e(
|
|
2774
|
-
function
|
|
2681
|
+
e(Et, "labelOverlapsOwnMarker");
|
|
2682
|
+
function Dt(t, n) {
|
|
2775
2683
|
let r = [];
|
|
2776
2684
|
for (let e of t) {
|
|
2777
2685
|
if (e.isLayoutOnly) continue;
|
|
@@ -2801,16 +2709,16 @@ function Gt(t, n) {
|
|
|
2801
2709
|
});
|
|
2802
2710
|
}
|
|
2803
2711
|
let o = /* @__PURE__ */ e((e, t) => {
|
|
2804
|
-
let n =
|
|
2805
|
-
for (let { nodeId: t, rect: r } of i) if (t !== e &&
|
|
2712
|
+
let n = oe(t, 3);
|
|
2713
|
+
for (let { nodeId: t, rect: r } of i) if (t !== e && G(n, r)) return !0;
|
|
2806
2714
|
return !1;
|
|
2807
2715
|
}, "labelOverlapsForeignNode"), s = /* @__PURE__ */ e((e, t) => {
|
|
2808
|
-
let n =
|
|
2809
|
-
for (let t of r) if (t.edgeId !== e &&
|
|
2716
|
+
let n = oe(t, 3);
|
|
2717
|
+
for (let t of r) if (t.edgeId !== e && ae(t.p1, t.p2, n)) return !0;
|
|
2810
2718
|
return !1;
|
|
2811
2719
|
}, "labelOverlapsForeignEdge"), c = /* @__PURE__ */ e((e, t, n) => o(e, n) || s(t, n), "labelOverlapsAnything"), l = [], u = /* @__PURE__ */ e((e) => {
|
|
2812
|
-
for (let { id: t, rect: n } of a) if (
|
|
2813
|
-
}, "findContainingLane"), d = /* @__PURE__ */ e((e, t) => l.some((n) => n.labelId !== e &&
|
|
2720
|
+
for (let { id: t, rect: n } of a) if (W(n, e)) return t;
|
|
2721
|
+
}, "findContainingLane"), d = /* @__PURE__ */ e((e, t) => l.some((n) => n.labelId !== e && G(t, n.rect)), "overlapsPlacedLabel");
|
|
2814
2722
|
for (let r of t) {
|
|
2815
2723
|
if (r.isLayoutOnly) continue;
|
|
2816
2724
|
let t = r.labelNodeId;
|
|
@@ -2824,10 +2732,10 @@ function Gt(t, n) {
|
|
|
2824
2732
|
let h = [];
|
|
2825
2733
|
for (let e = 0; e < f.length - 1; e++) {
|
|
2826
2734
|
let t = f[e], n = f[e + 1], r = Math.abs(t.x - n.x), i = Math.abs(t.y - n.y);
|
|
2827
|
-
r <
|
|
2735
|
+
r < xt && i < xt || r >= xt && i >= xt || h.push({
|
|
2828
2736
|
idx: e,
|
|
2829
2737
|
length: r + i,
|
|
2830
|
-
orientation: r >=
|
|
2738
|
+
orientation: r >= xt ? "horizontal" : "vertical",
|
|
2831
2739
|
midX: (t.x + n.x) / 2,
|
|
2832
2740
|
midY: (t.y + n.y) / 2
|
|
2833
2741
|
});
|
|
@@ -2854,8 +2762,8 @@ function Gt(t, n) {
|
|
|
2854
2762
|
midX: n.x + (r.x - n.x) * t,
|
|
2855
2763
|
midY: n.y + (r.y - n.y) * t
|
|
2856
2764
|
};
|
|
2857
|
-
}, "anchorAtT"), w = /* @__PURE__ */ e((e, t, n) => Math.min(n, Math.max(t, e)), "clamp"), T = /* @__PURE__ */ e((e, t) => e.midX >= t.left -
|
|
2858
|
-
let t =
|
|
2765
|
+
}, "anchorAtT"), w = /* @__PURE__ */ e((e, t, n) => Math.min(n, Math.max(t, e)), "clamp"), T = /* @__PURE__ */ e((e, t) => e.midX >= t.left - xt && e.midX <= t.right + xt && e.midY >= t.top - xt && e.midY <= t.bottom + xt, "pointInsideRectInclusive"), E = /* @__PURE__ */ e((e) => {
|
|
2766
|
+
let t = se(e.midX, e.midY, p, m), n = u(t);
|
|
2859
2767
|
if (n) return {
|
|
2860
2768
|
laneId: n,
|
|
2861
2769
|
anchor: e,
|
|
@@ -2868,7 +2776,7 @@ function Gt(t, n) {
|
|
|
2868
2776
|
let l = {
|
|
2869
2777
|
midX: w(e.midX, i, o),
|
|
2870
2778
|
midY: w(e.midY, s, c)
|
|
2871
|
-
}, d =
|
|
2779
|
+
}, d = se(l.midX, l.midY, p, m);
|
|
2872
2780
|
return T(e, d) ? {
|
|
2873
2781
|
laneId: r.id,
|
|
2874
2782
|
anchor: l,
|
|
@@ -2878,11 +2786,11 @@ function Gt(t, n) {
|
|
|
2878
2786
|
let n = (e.orientation === "horizontal" ? p / 2 : m / 2) + 12;
|
|
2879
2787
|
if (e === b) {
|
|
2880
2788
|
let r = f[e.idx];
|
|
2881
|
-
if (D(e, t, r) +
|
|
2789
|
+
if (D(e, t, r) + xt < n) return !1;
|
|
2882
2790
|
}
|
|
2883
2791
|
if (e === x) {
|
|
2884
2792
|
let r = f[e.idx + 1];
|
|
2885
|
-
if (D(e, t, r) +
|
|
2793
|
+
if (D(e, t, r) + xt < n) return !1;
|
|
2886
2794
|
}
|
|
2887
2795
|
return !0;
|
|
2888
2796
|
}, "labelClearsTerminalEndpoints"), k = /* @__PURE__ */ e((e) => {
|
|
@@ -2891,7 +2799,7 @@ function Gt(t, n) {
|
|
|
2891
2799
|
let i = C(e, n);
|
|
2892
2800
|
if (!O(e, i)) continue;
|
|
2893
2801
|
let a = E(i);
|
|
2894
|
-
if (a && !
|
|
2802
|
+
if (a && !Et(a.rect, f) && !d(t, a.rect) && !c(t, r.id, a.rect)) return {
|
|
2895
2803
|
laneId: a.laneId,
|
|
2896
2804
|
anchor: a.anchor
|
|
2897
2805
|
};
|
|
@@ -2905,7 +2813,7 @@ function Gt(t, n) {
|
|
|
2905
2813
|
};
|
|
2906
2814
|
if (n && !O(e, a)) continue;
|
|
2907
2815
|
let c = E(a);
|
|
2908
|
-
if (c && !
|
|
2816
|
+
if (c && !Et(c.rect, f) && !d(t, c.rect) && !o(t, c.rect) && (i || !s(r.id, c.rect))) return {
|
|
2909
2817
|
laneId: c.laneId,
|
|
2910
2818
|
anchor: c.anchor
|
|
2911
2819
|
};
|
|
@@ -2913,7 +2821,7 @@ function Gt(t, n) {
|
|
|
2913
2821
|
}, "findLaneContainingFallback"), j = k(_) ?? (_.length < h.length ? k(h) : void 0) ?? A(h, !0) ?? A(h, !1) ?? A(h, !1, !0);
|
|
2914
2822
|
if (j) {
|
|
2915
2823
|
i.x = j.anchor.midX, i.y = j.anchor.midY, i.parentId = j.laneId;
|
|
2916
|
-
let e =
|
|
2824
|
+
let e = se(j.anchor.midX, j.anchor.midY, p, m), n = l.findIndex((e) => e.labelId === t);
|
|
2917
2825
|
n >= 0 ? l[n] = {
|
|
2918
2826
|
labelId: t,
|
|
2919
2827
|
rect: e
|
|
@@ -2924,14 +2832,14 @@ function Gt(t, n) {
|
|
|
2924
2832
|
}
|
|
2925
2833
|
}
|
|
2926
2834
|
}
|
|
2927
|
-
e(
|
|
2928
|
-
var
|
|
2929
|
-
function
|
|
2835
|
+
e(Dt, "anchorLabelsToPolyline");
|
|
2836
|
+
var Ot = 1e-6, kt = 4, At = 3;
|
|
2837
|
+
function jt(e, t) {
|
|
2930
2838
|
return e < t ? `${e}::${t}` : `${t}::${e}`;
|
|
2931
2839
|
}
|
|
2932
|
-
e(
|
|
2933
|
-
function
|
|
2934
|
-
let { nodeInfoById: r, realNodeRects: i } =
|
|
2840
|
+
e(jt, "pairKey");
|
|
2841
|
+
function Mt(t, n) {
|
|
2842
|
+
let { nodeInfoById: r, realNodeRects: i } = de(n), a = /* @__PURE__ */ new Map();
|
|
2935
2843
|
for (let e of n) {
|
|
2936
2844
|
let t = e.id;
|
|
2937
2845
|
if (!e.isGroup && e.isEdgeLabel) {
|
|
@@ -2943,7 +2851,7 @@ function Xt(t, n) {
|
|
|
2943
2851
|
}
|
|
2944
2852
|
}
|
|
2945
2853
|
let o = /* @__PURE__ */ e((n, r, i, o) => {
|
|
2946
|
-
let s =
|
|
2854
|
+
let s = jt(r, i), c = 0, l = /* @__PURE__ */ e((e) => {
|
|
2947
2855
|
if (!e) return;
|
|
2948
2856
|
let t = a.get(e);
|
|
2949
2857
|
if (!t) return;
|
|
@@ -2954,15 +2862,15 @@ function Xt(t, n) {
|
|
|
2954
2862
|
for (let e of t) {
|
|
2955
2863
|
if (e === n || e.isLayoutOnly) continue;
|
|
2956
2864
|
let t = e.start, r = e.end;
|
|
2957
|
-
!t || !r ||
|
|
2865
|
+
!t || !r || jt(t, r) === s && l(e.labelNodeId);
|
|
2958
2866
|
}
|
|
2959
|
-
return c > 0 ? c +
|
|
2867
|
+
return c > 0 ? c + At : 0;
|
|
2960
2868
|
}, "labelClearanceFor");
|
|
2961
2869
|
for (let e of t) {
|
|
2962
2870
|
if (e.isLayoutOnly) continue;
|
|
2963
2871
|
let n = e.points;
|
|
2964
|
-
if (!
|
|
2965
|
-
let a =
|
|
2872
|
+
if (!ie(n, Ot)) continue;
|
|
2873
|
+
let a = pe(e, r, Ot);
|
|
2966
2874
|
if (!a) continue;
|
|
2967
2875
|
let { srcId: s, dstId: c, srcInfo: l, dstInfo: u, collinearX: d, collinearY: f } = a;
|
|
2968
2876
|
if (d === f) continue;
|
|
@@ -2986,8 +2894,8 @@ function Xt(t, n) {
|
|
|
2986
2894
|
y: u.cy
|
|
2987
2895
|
};
|
|
2988
2896
|
}
|
|
2989
|
-
if (
|
|
2990
|
-
let h = o(e, s, c, d ? "x" : "y"), g = h >
|
|
2897
|
+
if (J(p, m, i, [s, c], 1)) continue;
|
|
2898
|
+
let h = o(e, s, c, d ? "x" : "y"), g = h > kt ? h : kt, _ = [
|
|
2991
2899
|
0,
|
|
2992
2900
|
g,
|
|
2993
2901
|
-g
|
|
@@ -2997,16 +2905,16 @@ function Xt(t, n) {
|
|
|
2997
2905
|
if (d) {
|
|
2998
2906
|
if (r.x += n, a.x += n, r.x <= l.rect.left || r.x >= l.rect.right || a.x <= u.rect.left || a.x >= u.rect.right) continue;
|
|
2999
2907
|
} else if (r.y += n, a.y += n, r.y <= l.rect.top || r.y >= l.rect.bottom || a.y <= u.rect.top || a.y >= u.rect.bottom) continue;
|
|
3000
|
-
if (!
|
|
2908
|
+
if (!J(r, a, i, [s, c], 1) && !ge(r, a, t, e, { epsilon: Ot })) {
|
|
3001
2909
|
e.points = [r, a];
|
|
3002
2910
|
break;
|
|
3003
2911
|
}
|
|
3004
2912
|
}
|
|
3005
2913
|
}
|
|
3006
2914
|
}
|
|
3007
|
-
e(
|
|
3008
|
-
function
|
|
3009
|
-
let r = .001, { realNodeRects: i, labelNodeRects: a } =
|
|
2915
|
+
e(Mt, "straightenCollinearSiblingDetours");
|
|
2916
|
+
function Nt(t, n) {
|
|
2917
|
+
let r = .001, { realNodeRects: i, labelNodeRects: a } = q(n.values()), o = /* @__PURE__ */ e((e, t) => re(t, r).map((n) => ({
|
|
3010
2918
|
...n,
|
|
3011
2919
|
edge: e,
|
|
3012
2920
|
interior: n.index >= 1 && n.index <= t.length - 3
|
|
@@ -3015,24 +2923,24 @@ function Zt(t, n) {
|
|
|
3015
2923
|
for (let n of t) {
|
|
3016
2924
|
if (n.isLayoutOnly) continue;
|
|
3017
2925
|
let t = n.points;
|
|
3018
|
-
!t || t.length < 2 || e.push(...o(n,
|
|
2926
|
+
!t || t.length < 2 || e.push(...o(n, H(t)));
|
|
3019
2927
|
}
|
|
3020
2928
|
return e;
|
|
3021
|
-
}, "allSegments"), c = /* @__PURE__ */ e((e, t) => e.horizontal && t.horizontal ?
|
|
2929
|
+
}, "allSegments"), c = /* @__PURE__ */ e((e, t) => e.horizontal && t.horizontal ? z(e.a.x, e.b.x, t.a.x, t.b.x) >= 8 && Math.abs(e.a.y - t.a.y) < 7 : e.vertical && t.vertical ? z(e.a.y, e.b.y, t.a.y, t.b.y) >= 8 && Math.abs(e.a.x - t.a.x) < 7 : !1, "hasCrowdedParallelTrack"), l = /* @__PURE__ */ e((e, n) => {
|
|
3022
2930
|
let s = e.start, l = e.end, u = o(e, n);
|
|
3023
2931
|
if (u.length !== n.length - 1) return !1;
|
|
3024
2932
|
let d = [s, l].filter((e) => !!e), f = e.labelNodeId ? [e.labelNodeId] : [];
|
|
3025
|
-
for (let e of u) if (
|
|
2933
|
+
for (let e of u) if (J(e.a, e.b, i, d, -2) || J(e.a, e.b, a, f, -2)) return !1;
|
|
3026
2934
|
for (let n of t) {
|
|
3027
2935
|
if (n === e || n.isLayoutOnly) continue;
|
|
3028
2936
|
let t = n.points;
|
|
3029
2937
|
if (!(!t || t.length < 2)) {
|
|
3030
|
-
for (let e of u) for (let i of o(n,
|
|
2938
|
+
for (let e of u) for (let i of o(n, H(t))) if (c(e, i) || _e(e.a, e.b, i.a, i.b, r)) return !1;
|
|
3031
2939
|
}
|
|
3032
2940
|
}
|
|
3033
2941
|
return !0;
|
|
3034
2942
|
}, "candidateIsSafe"), u = /* @__PURE__ */ e((e, t) => {
|
|
3035
|
-
let n =
|
|
2943
|
+
let n = H(e.edge.points ?? []);
|
|
3036
2944
|
if (n.length < 4 || e.index >= n.length - 1) return;
|
|
3037
2945
|
let r = n.map((e) => ({ ...e }));
|
|
3038
2946
|
if (e.horizontal) r[e.index].y += t, r[e.index + 1].y += t;
|
|
@@ -3043,7 +2951,7 @@ function Zt(t, n) {
|
|
|
3043
2951
|
x: e.x ?? (t.left + t.right) / 2,
|
|
3044
2952
|
y: e.y ?? (t.top + t.bottom) / 2
|
|
3045
2953
|
}), "nodeCenter"), f = /* @__PURE__ */ e((e) => {
|
|
3046
|
-
let t = e.edge, r =
|
|
2954
|
+
let t = e.edge, r = H(t.points ?? []);
|
|
3047
2955
|
if (r.length !== 4 || e.index !== 1) return;
|
|
3048
2956
|
let i = t.start ? n.get(t.start) : void 0, a = t.end ? n.get(t.end) : void 0, o = i ? K(i) : void 0, s = a ? K(a) : void 0, c = r.slice(e.index + 2);
|
|
3049
2957
|
if (!(!i || !a || !o || !s || c.length === 0)) return {
|
|
@@ -3056,7 +2964,7 @@ function Zt(t, n) {
|
|
|
3056
2964
|
let s = i.y >= n.y, c = s ? a.bottom : a.top, l = c + (s ? 20 : -20);
|
|
3057
2965
|
if (s && e.b.y <= l + r || !s && e.b.y >= l - r) return;
|
|
3058
2966
|
let u = e.a.x + t;
|
|
3059
|
-
return
|
|
2967
|
+
return H([
|
|
3060
2968
|
{
|
|
3061
2969
|
x: n.x,
|
|
3062
2970
|
y: c
|
|
@@ -3079,7 +2987,7 @@ function Zt(t, n) {
|
|
|
3079
2987
|
let s = i.x >= n.x, c = s ? a.right : a.left, l = c + (s ? 20 : -20);
|
|
3080
2988
|
if (s && e.b.x <= l + r || !s && e.b.x >= l - r) return;
|
|
3081
2989
|
let u = e.a.y + t;
|
|
3082
|
-
return
|
|
2990
|
+
return H([
|
|
3083
2991
|
{
|
|
3084
2992
|
x: c,
|
|
3085
2993
|
y: n.y
|
|
@@ -3137,25 +3045,25 @@ function Zt(t, n) {
|
|
|
3137
3045
|
if (!t) return;
|
|
3138
3046
|
}
|
|
3139
3047
|
}
|
|
3140
|
-
e(
|
|
3141
|
-
function
|
|
3048
|
+
e(Nt, "nudgeSharedInteriorSubpaths");
|
|
3049
|
+
function Pt(e, t, n, r) {
|
|
3142
3050
|
let i = t.x - e.x, a = t.y - e.y, o = r.x - n.x, s = r.y - n.y, c = i * s - a * o;
|
|
3143
3051
|
if (Math.abs(c) < 1e-10) return !1;
|
|
3144
3052
|
let l = n.x - e.x, u = n.y - e.y, d = (l * s - u * o) / c, f = (l * a - u * i) / c, p = .01;
|
|
3145
|
-
return d > p && d <
|
|
3053
|
+
return d > p && d < .99 && f > p && f < .99;
|
|
3146
3054
|
}
|
|
3147
|
-
e(
|
|
3148
|
-
function
|
|
3055
|
+
e(Pt, "segmentsIntersect");
|
|
3056
|
+
function Ft(e) {
|
|
3149
3057
|
let n = e.nodes ?? [], r = e.edges ?? [], i = [];
|
|
3150
3058
|
if (!r.length || !n.length) return i;
|
|
3151
|
-
let a =
|
|
3059
|
+
let a = fe(n), o = [];
|
|
3152
3060
|
for (let e of r) {
|
|
3153
3061
|
if (e.isLayoutOnly) continue;
|
|
3154
3062
|
let t = e.points;
|
|
3155
3063
|
if (!t || t.length < 2) continue;
|
|
3156
3064
|
let n = e.start, r = e.end, s = e.labelNodeId, c = e.id ?? `${n}->${r}`;
|
|
3157
|
-
for (let e of a) if (
|
|
3158
|
-
for (let n = 0; n < t.length - 1; n++) if (
|
|
3065
|
+
for (let e of a) if (e.nodeId !== n && e.nodeId !== r && !(s && e.nodeId === s)) {
|
|
3066
|
+
for (let n = 0; n < t.length - 1; n++) if (ae(t[n], t[n + 1], e, -1)) {
|
|
3159
3067
|
i.push({
|
|
3160
3068
|
type: "edge-node-overlap",
|
|
3161
3069
|
edgeId: c,
|
|
@@ -3176,7 +3084,7 @@ function $t(e) {
|
|
|
3176
3084
|
let s = /* @__PURE__ */ new Set();
|
|
3177
3085
|
for (let e = 0; e < o.length; e++) for (let t = e + 1; t < o.length; t++) {
|
|
3178
3086
|
let n = o[e], r = o[t];
|
|
3179
|
-
if (n.edgeId !== r.edgeId &&
|
|
3087
|
+
if (n.edgeId !== r.edgeId && n.start !== r.start && n.start !== r.end && n.end !== r.start && n.end !== r.end && Pt(n.p1, n.p2, r.p1, r.p2)) {
|
|
3180
3088
|
let e = n.edgeId < r.edgeId ? `${n.edgeId}|${r.edgeId}` : `${r.edgeId}|${n.edgeId}`;
|
|
3181
3089
|
s.has(e) || (s.add(e), i.push({
|
|
3182
3090
|
type: "edge-edge-crossing",
|
|
@@ -3193,26 +3101,26 @@ function $t(e) {
|
|
|
3193
3101
|
}
|
|
3194
3102
|
return i;
|
|
3195
3103
|
}
|
|
3196
|
-
e(
|
|
3197
|
-
function
|
|
3104
|
+
e(Ft, "validateSwimlanesLayout");
|
|
3105
|
+
function It(t, n) {
|
|
3198
3106
|
let r = t.nodes ?? [], i = t.edges ?? [], a = r.filter((e) => !e.isGroup);
|
|
3199
|
-
if ((n === "LR" || n === "RL") && a.length > 0 && !
|
|
3107
|
+
if ((n === "LR" || n === "RL") && a.length > 0 && !nt(t, n) || n === "BT" && a.length > 0 && !tt(t)) return;
|
|
3200
3108
|
for (let e of i) {
|
|
3201
3109
|
if (e.isLayoutOnly) continue;
|
|
3202
3110
|
let t = e.points;
|
|
3203
|
-
!t || t.length < 2 || (e.points =
|
|
3111
|
+
!t || t.length < 2 || (e.points = Se(xe(t)));
|
|
3204
3112
|
}
|
|
3205
|
-
|
|
3113
|
+
bt(i, r), Mt(i, r), ot(i, r);
|
|
3206
3114
|
let o = /* @__PURE__ */ new Map();
|
|
3207
3115
|
for (let e of r) o.set(String(e.id), e);
|
|
3208
|
-
|
|
3116
|
+
Dt(i, o), Oe(i, o), st(i, o), Nt(i, o), lt(i, o), ut(i, o), dt(i, o), mt(i, o);
|
|
3209
3117
|
let s = /* @__PURE__ */ e(() => {
|
|
3210
|
-
|
|
3118
|
+
_t(i, o), ht(i, o), gt(i, o), Dt(i, o), qe(i, o), dt(i, o), Dt(i, o), qe(i, o);
|
|
3211
3119
|
}, "finalizeRenderedEdges");
|
|
3212
|
-
s(),
|
|
3120
|
+
s(), Nt(i, o), s(), ft(i, o), pt(i, o), ft(i, o), pt(i, o);
|
|
3213
3121
|
}
|
|
3214
|
-
e(
|
|
3215
|
-
function
|
|
3122
|
+
e(It, "postProcessSwimlaneLayout");
|
|
3123
|
+
function Lt(e) {
|
|
3216
3124
|
let t = new Map(e.nodeById), n = /* @__PURE__ */ new Set(), r = [];
|
|
3217
3125
|
for (let i of e.edges) {
|
|
3218
3126
|
if (!t.has(i.src) || !t.has(i.dst)) continue;
|
|
@@ -3226,36 +3134,36 @@ function tn(e) {
|
|
|
3226
3134
|
nodeById: t
|
|
3227
3135
|
};
|
|
3228
3136
|
}
|
|
3229
|
-
e(
|
|
3230
|
-
function
|
|
3137
|
+
e(Lt, "normalizeGraph");
|
|
3138
|
+
function Rt(e, t) {
|
|
3231
3139
|
return e.edges.filter((e) => e.dst === t);
|
|
3232
3140
|
}
|
|
3233
|
-
e(
|
|
3234
|
-
function
|
|
3141
|
+
e(Rt, "incoming");
|
|
3142
|
+
function zt(e) {
|
|
3235
3143
|
let t = /* @__PURE__ */ new Map();
|
|
3236
3144
|
for (let n of e.nodes) t.set(n, []);
|
|
3237
3145
|
for (let n of e.edges) t.get(n.src).push(n.dst);
|
|
3238
3146
|
return t;
|
|
3239
3147
|
}
|
|
3240
|
-
e(
|
|
3241
|
-
function
|
|
3242
|
-
let t =
|
|
3148
|
+
e(zt, "buildSuccessorMap");
|
|
3149
|
+
function Bt(e) {
|
|
3150
|
+
let t = zt(e);
|
|
3243
3151
|
for (let e of t.values()) e.sort((e, t) => e.localeCompare(t));
|
|
3244
3152
|
return t;
|
|
3245
3153
|
}
|
|
3246
|
-
e(
|
|
3247
|
-
function
|
|
3154
|
+
e(Bt, "buildSortedSuccessorMap");
|
|
3155
|
+
function Vt(e) {
|
|
3248
3156
|
let t = /* @__PURE__ */ new Map();
|
|
3249
3157
|
for (let n of e.nodes) t.set(n, 0);
|
|
3250
3158
|
for (let n of e.edges) t.set(n.dst, (t.get(n.dst) ?? 0) + 1);
|
|
3251
3159
|
return t;
|
|
3252
3160
|
}
|
|
3253
|
-
e(
|
|
3254
|
-
function
|
|
3161
|
+
e(Vt, "buildInDegreeMap");
|
|
3162
|
+
function Ht(e) {
|
|
3255
3163
|
return [...e.entries()].filter(([, e]) => e === 0).map(([e]) => e).sort((e, t) => e.localeCompare(t));
|
|
3256
3164
|
}
|
|
3257
|
-
e(
|
|
3258
|
-
function
|
|
3165
|
+
e(Ht, "sortedZeroInDegreeNodes");
|
|
3166
|
+
function Ut(e, t = () => !0) {
|
|
3259
3167
|
let n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
|
|
3260
3168
|
for (let t of e.nodes) n.set(t, []), r.set(t, []);
|
|
3261
3169
|
for (let i of e.edges) t(i) && (r.get(i.src).push(i.dst), n.get(i.dst).push(i.src));
|
|
@@ -3264,17 +3172,17 @@ function cn(e, t = () => !0) {
|
|
|
3264
3172
|
succs: r
|
|
3265
3173
|
};
|
|
3266
3174
|
}
|
|
3267
|
-
e(
|
|
3268
|
-
function
|
|
3175
|
+
e(Ut, "buildPredecessorSuccessorMaps");
|
|
3176
|
+
function Wt(e, t, n, r) {
|
|
3269
3177
|
let i = 0;
|
|
3270
3178
|
for (let t of e.nodes) r?.skipGroups && e.nodeById.get(t)?.isGroup || (i = Math.max(i, n[t] ?? 0));
|
|
3271
3179
|
let a = Array.from({ length: i + 1 }, () => []);
|
|
3272
3180
|
for (let i of t) r?.skipGroups && e.nodeById.get(i)?.isGroup || a[Math.max(0, n[i] ?? 0)].push(i);
|
|
3273
3181
|
return a;
|
|
3274
3182
|
}
|
|
3275
|
-
e(
|
|
3276
|
-
function
|
|
3277
|
-
let t =
|
|
3183
|
+
e(Wt, "buildLayersFromRanks");
|
|
3184
|
+
function Gt(e) {
|
|
3185
|
+
let t = Vt(e), n = Ht(t), r = [], i = Bt(e);
|
|
3278
3186
|
for (; n.length;) {
|
|
3279
3187
|
let e = n.shift();
|
|
3280
3188
|
r.push(e);
|
|
@@ -3286,14 +3194,14 @@ function un(e) {
|
|
|
3286
3194
|
}
|
|
3287
3195
|
return r.length === e.nodes.length ? r : null;
|
|
3288
3196
|
}
|
|
3289
|
-
e(
|
|
3290
|
-
function
|
|
3197
|
+
e(Gt, "topoSortIfAcyclic");
|
|
3198
|
+
function Kt(e) {
|
|
3291
3199
|
let t = /* @__PURE__ */ new Map(), n = 0;
|
|
3292
3200
|
for (let r of e) t.set(r, n), n++;
|
|
3293
3201
|
return t;
|
|
3294
3202
|
}
|
|
3295
|
-
e(
|
|
3296
|
-
function
|
|
3203
|
+
e(Kt, "buildLayerIndex");
|
|
3204
|
+
function qt(t) {
|
|
3297
3205
|
let n = Array(t.length), r = /* @__PURE__ */ e((e, i) => {
|
|
3298
3206
|
if (i - e <= 1) return 0;
|
|
3299
3207
|
let a = e + i >> 1, o = r(e, a) + r(a, i), s = e, c = a, l = e;
|
|
@@ -3303,9 +3211,9 @@ function fn(t) {
|
|
|
3303
3211
|
}, "count");
|
|
3304
3212
|
return r(0, t.length);
|
|
3305
3213
|
}
|
|
3306
|
-
e(
|
|
3307
|
-
function
|
|
3308
|
-
let n =
|
|
3214
|
+
e(qt, "countInversions");
|
|
3215
|
+
function Jt(t) {
|
|
3216
|
+
let n = Lt(t), r = /* @__PURE__ */ new Map();
|
|
3309
3217
|
for (let e of n.nodes) r.set(e, []);
|
|
3310
3218
|
for (let e of n.edges) r.get(e.src).push(e);
|
|
3311
3219
|
for (let e of r.values()) e.sort((e, t) => e.dst === t.dst ? e.id.localeCompare(t.id) : e.dst.localeCompare(t.dst));
|
|
@@ -3337,8 +3245,8 @@ function pn(t) {
|
|
|
3337
3245
|
reversed: a
|
|
3338
3246
|
};
|
|
3339
3247
|
}
|
|
3340
|
-
e(
|
|
3341
|
-
function
|
|
3248
|
+
e(Jt, "removeCycles_DFS");
|
|
3249
|
+
function Yt(t) {
|
|
3342
3250
|
let n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ e((e) => {
|
|
3343
3251
|
if (n.has(e)) return n.get(e);
|
|
3344
3252
|
let i = t.nodeById.get(e);
|
|
@@ -3351,46 +3259,46 @@ function mn(t) {
|
|
|
3351
3259
|
for (let e of t.nodes) r(e);
|
|
3352
3260
|
return n;
|
|
3353
3261
|
}
|
|
3354
|
-
e(
|
|
3355
|
-
function
|
|
3356
|
-
let t =
|
|
3262
|
+
e(Yt, "buildTopLaneMap");
|
|
3263
|
+
function Xt(e) {
|
|
3264
|
+
let t = Yt(e);
|
|
3357
3265
|
return (e) => t.get(e) ?? null;
|
|
3358
3266
|
}
|
|
3359
|
-
e(
|
|
3360
|
-
function
|
|
3267
|
+
e(Xt, "createTopLaneResolver");
|
|
3268
|
+
function Zt(e) {
|
|
3361
3269
|
let t = [];
|
|
3362
3270
|
for (let n of e.layout.nodes ?? []) n.isGroup && !n.parentId && t.push(n.id);
|
|
3363
3271
|
return [...new Set(t)].reverse();
|
|
3364
3272
|
}
|
|
3365
|
-
e(
|
|
3366
|
-
function
|
|
3367
|
-
let n =
|
|
3273
|
+
e(Zt, "buildTopLaneOrder");
|
|
3274
|
+
function Qt(e, t) {
|
|
3275
|
+
let n = Zt(e);
|
|
3368
3276
|
if (!t || t.length === 0) return n;
|
|
3369
3277
|
let r = new Set(n), i = /* @__PURE__ */ new Set(), a = [];
|
|
3370
3278
|
for (let e of t) !r.has(e) || i.has(e) || (i.add(e), a.push(e));
|
|
3371
3279
|
for (let e of n) i.has(e) || a.push(e);
|
|
3372
3280
|
return a;
|
|
3373
3281
|
}
|
|
3374
|
-
e(
|
|
3375
|
-
var
|
|
3282
|
+
e(Qt, "resolveTopLaneOrder");
|
|
3283
|
+
var $t = { EPSILON: 1e-6 }, en = {
|
|
3376
3284
|
GRAVITY_ITERATIONS: 8,
|
|
3377
3285
|
MAX_CROSSING_OPTIMIZATION_PASSES: 4,
|
|
3378
3286
|
DEFAULT_COMPACT_SINGLE_INPUT: !0
|
|
3379
|
-
},
|
|
3287
|
+
}, tn = {
|
|
3380
3288
|
DEFAULT_LAYER_GAP: 100,
|
|
3381
3289
|
DEFAULT_NODE_GAP: 40
|
|
3382
3290
|
};
|
|
3383
|
-
function
|
|
3384
|
-
let r =
|
|
3291
|
+
function nn(t, n) {
|
|
3292
|
+
let r = Lt(t), i = n?.laneOf ?? (() => null), a = n?.rankHint, { preds: o } = Ut(r);
|
|
3385
3293
|
for (let e of o.values()) e.sort((e, t) => e.localeCompare(t));
|
|
3386
|
-
let s =
|
|
3294
|
+
let s = Gt(r) ?? [...r.nodes].sort((e, t) => e.localeCompare(t)), c = /* @__PURE__ */ new Map();
|
|
3387
3295
|
for (let [e, t] of s.entries()) c.set(t, e);
|
|
3388
3296
|
let l = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map();
|
|
3389
3297
|
for (let e of r.nodes) u.set(e, []);
|
|
3390
3298
|
for (let e of s) {
|
|
3391
3299
|
let t = (o.get(e) ?? []).filter((e) => l.has(e));
|
|
3392
3300
|
if (t.length > 0) {
|
|
3393
|
-
let n =
|
|
3301
|
+
let n = rn(e, t, {
|
|
3394
3302
|
laneOf: i,
|
|
3395
3303
|
rankHint: a,
|
|
3396
3304
|
topoIndex: c
|
|
@@ -3404,9 +3312,9 @@ function xn(t, n) {
|
|
|
3404
3312
|
let f = [...d].sort((e, t) => {
|
|
3405
3313
|
let n = c.get(e) ?? 0, r = c.get(t) ?? 0;
|
|
3406
3314
|
return n === r ? e.localeCompare(t) : n - r;
|
|
3407
|
-
}), p =
|
|
3315
|
+
}), p = an(r), m = /* @__PURE__ */ new Map();
|
|
3408
3316
|
for (let [e, t] of p.entries()) m.set(e, [...t].sort((e, t) => e.localeCompare(t)));
|
|
3409
|
-
let h =
|
|
3317
|
+
let h = on(m), g = sn(m), _ = /* @__PURE__ */ new Map();
|
|
3410
3318
|
for (let e of r.nodes) _.set(e, []);
|
|
3411
3319
|
for (let e of g) for (let t of e.nodes) {
|
|
3412
3320
|
let n = _.get(t);
|
|
@@ -3434,8 +3342,8 @@ function xn(t, n) {
|
|
|
3434
3342
|
topologicalOrder: s
|
|
3435
3343
|
};
|
|
3436
3344
|
}
|
|
3437
|
-
e(
|
|
3438
|
-
function
|
|
3345
|
+
e(nn, "buildDrivingTree");
|
|
3346
|
+
function rn(e, t, n) {
|
|
3439
3347
|
let r = n.laneOf(e);
|
|
3440
3348
|
return [...t].sort((e, t) => {
|
|
3441
3349
|
let i = n.laneOf(e), a = n.laneOf(t), o = i != null && i === r;
|
|
@@ -3446,15 +3354,15 @@ function Sn(e, t, n) {
|
|
|
3446
3354
|
return l === u ? e.localeCompare(t) : l - u;
|
|
3447
3355
|
})[0];
|
|
3448
3356
|
}
|
|
3449
|
-
e(
|
|
3450
|
-
function
|
|
3357
|
+
e(rn, "chooseParent");
|
|
3358
|
+
function an(e) {
|
|
3451
3359
|
let t = /* @__PURE__ */ new Map();
|
|
3452
3360
|
for (let n of e.nodes) t.set(n, /* @__PURE__ */ new Set());
|
|
3453
3361
|
for (let n of e.edges) t.get(n.src).add(n.dst), t.get(n.dst).add(n.src);
|
|
3454
3362
|
return t;
|
|
3455
3363
|
}
|
|
3456
|
-
e(
|
|
3457
|
-
function
|
|
3364
|
+
e(an, "buildAdjacency");
|
|
3365
|
+
function on(e) {
|
|
3458
3366
|
let t = /* @__PURE__ */ new Map(), n = 0;
|
|
3459
3367
|
for (let r of e.keys()) {
|
|
3460
3368
|
if (t.has(r)) continue;
|
|
@@ -3470,17 +3378,17 @@ function wn(e) {
|
|
|
3470
3378
|
}
|
|
3471
3379
|
return t;
|
|
3472
3380
|
}
|
|
3473
|
-
e(
|
|
3474
|
-
function
|
|
3381
|
+
e(on, "assignComponents");
|
|
3382
|
+
function sn(t) {
|
|
3475
3383
|
let n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map(), i = [], a = [], o = 0, s = /* @__PURE__ */ e((e, c) => {
|
|
3476
3384
|
n.set(e, ++o), r.set(e, o);
|
|
3477
|
-
for (let l of t.get(e) ?? []) l !== c && (n.has(l) ? (n.get(l) ?? 0) < (n.get(e) ?? 0) && (i.push([e, l]), r.set(e, Math.min(r.get(e) ?? o, n.get(l) ?? o))) : (i.push([e, l]), s(l, e), r.set(e, Math.min(r.get(e) ?? o, r.get(l) ?? o)), (r.get(l) ?? 0) >= (n.get(e) ?? 0) && a.push(
|
|
3385
|
+
for (let l of t.get(e) ?? []) l !== c && (n.has(l) ? (n.get(l) ?? 0) < (n.get(e) ?? 0) && (i.push([e, l]), r.set(e, Math.min(r.get(e) ?? o, n.get(l) ?? o))) : (i.push([e, l]), s(l, e), r.set(e, Math.min(r.get(e) ?? o, r.get(l) ?? o)), (r.get(l) ?? 0) >= (n.get(e) ?? 0) && a.push(cn(e, l, i, a.length))));
|
|
3478
3386
|
}, "visit");
|
|
3479
3387
|
for (let e of t.keys()) n.has(e) || s(e, null);
|
|
3480
3388
|
return a;
|
|
3481
3389
|
}
|
|
3482
|
-
e(
|
|
3483
|
-
function
|
|
3390
|
+
e(sn, "computeBlocks");
|
|
3391
|
+
function cn(e, t, n, r) {
|
|
3484
3392
|
let i = [], a = /* @__PURE__ */ new Set();
|
|
3485
3393
|
for (; n.length > 0;) {
|
|
3486
3394
|
let r = n.pop();
|
|
@@ -3492,8 +3400,8 @@ function En(e, t, n, r) {
|
|
|
3492
3400
|
nodes: [...a]
|
|
3493
3401
|
};
|
|
3494
3402
|
}
|
|
3495
|
-
e(
|
|
3496
|
-
function
|
|
3403
|
+
e(cn, "popBlock");
|
|
3404
|
+
function ln(t, n, r) {
|
|
3497
3405
|
let i = [...t.nodes], a = /* @__PURE__ */ new Map();
|
|
3498
3406
|
for (let [e, t] of i.entries()) a.set(t, e);
|
|
3499
3407
|
let o = i.length, s = Array(o).fill(-1), c = Array(o).fill(0), l = [], u = /* @__PURE__ */ new Set();
|
|
@@ -3530,7 +3438,7 @@ function Dn(t, n, r) {
|
|
|
3530
3438
|
if (e === t) return e;
|
|
3531
3439
|
for (let n = d - 1; n >= 0; n--) {
|
|
3532
3440
|
let r = f[n][e], i = f[n][t];
|
|
3533
|
-
r
|
|
3441
|
+
r !== -1 && i !== -1 && r !== i && (e = r, t = i);
|
|
3534
3442
|
}
|
|
3535
3443
|
return f[0][e];
|
|
3536
3444
|
}, "lcaIndex"), m = Array.from({ length: o }, () => /* @__PURE__ */ new Map());
|
|
@@ -3566,11 +3474,11 @@ function Dn(t, n, r) {
|
|
|
3566
3474
|
for (let e of i) _.has(e) || v(e);
|
|
3567
3475
|
return h;
|
|
3568
3476
|
}
|
|
3569
|
-
e(
|
|
3570
|
-
function
|
|
3477
|
+
e(ln, "computeSubtreeCrossCounts");
|
|
3478
|
+
function un(t, n, r) {
|
|
3571
3479
|
let i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ e((e) => {
|
|
3572
3480
|
let t = r[e] ?? 0, o = [...n.get(e) ?? []];
|
|
3573
|
-
o.sort(
|
|
3481
|
+
o.sort(dn(r));
|
|
3574
3482
|
for (let e of o) {
|
|
3575
3483
|
a(e);
|
|
3576
3484
|
let n = i.get(e);
|
|
@@ -3581,15 +3489,15 @@ function On(t, n, r) {
|
|
|
3581
3489
|
for (let e of t) a(e);
|
|
3582
3490
|
return i;
|
|
3583
3491
|
}
|
|
3584
|
-
e(
|
|
3585
|
-
function
|
|
3492
|
+
e(un, "annotateMinimumLayers");
|
|
3493
|
+
function dn(e) {
|
|
3586
3494
|
return (t, n) => {
|
|
3587
3495
|
let r = e[t] ?? 0, i = e[n] ?? 0;
|
|
3588
3496
|
return r === i ? t.localeCompare(n) : r - i;
|
|
3589
3497
|
};
|
|
3590
3498
|
}
|
|
3591
|
-
e(
|
|
3592
|
-
function
|
|
3499
|
+
e(dn, "compareByRankThenId");
|
|
3500
|
+
function fn(t, n, r, i) {
|
|
3593
3501
|
let a = 0;
|
|
3594
3502
|
for (let e of n) {
|
|
3595
3503
|
let t = r[e] ?? 0;
|
|
@@ -3609,8 +3517,8 @@ function An(t, n, r, i) {
|
|
|
3609
3517
|
}
|
|
3610
3518
|
return o;
|
|
3611
3519
|
}
|
|
3612
|
-
e(
|
|
3613
|
-
function
|
|
3520
|
+
e(fn, "emitNodesInTreeOrder");
|
|
3521
|
+
function pn(e) {
|
|
3614
3522
|
let t = [];
|
|
3615
3523
|
for (let n of e) {
|
|
3616
3524
|
let e = /* @__PURE__ */ new Set(), r = [];
|
|
@@ -3619,8 +3527,8 @@ function jn(e) {
|
|
|
3619
3527
|
}
|
|
3620
3528
|
return t;
|
|
3621
3529
|
}
|
|
3622
|
-
e(
|
|
3623
|
-
function
|
|
3530
|
+
e(pn, "deduplicateLayers");
|
|
3531
|
+
function mn(e, t, n, r) {
|
|
3624
3532
|
return (i) => {
|
|
3625
3533
|
let a = e.get(i) ?? [];
|
|
3626
3534
|
if (a.length === 0) return [];
|
|
@@ -3640,24 +3548,24 @@ function Mn(e, t, n, r) {
|
|
|
3640
3548
|
}), [...s.map((e) => e.child), ...c];
|
|
3641
3549
|
};
|
|
3642
3550
|
}
|
|
3643
|
-
e(
|
|
3644
|
-
function
|
|
3645
|
-
let r =
|
|
3551
|
+
e(mn, "createChildOrderer");
|
|
3552
|
+
function hn(e, t, n) {
|
|
3553
|
+
let r = nn(e, {
|
|
3646
3554
|
rankHint: t,
|
|
3647
3555
|
laneOf: n
|
|
3648
3556
|
}), { children: i, roots: a } = r;
|
|
3649
3557
|
for (let t of e.nodes) i.has(t) || i.set(t, []);
|
|
3650
|
-
let o =
|
|
3651
|
-
return l =
|
|
3558
|
+
let o = ln(e, t, r), s = [...a].sort(dn(t)), c = mn(i, t, o, un(s, i, t)), l = fn(s, e.nodes, t, c);
|
|
3559
|
+
return l = pn(l), l;
|
|
3652
3560
|
}
|
|
3653
|
-
e(
|
|
3654
|
-
function
|
|
3655
|
-
let r = new Set(e), i = new Set(t), a =
|
|
3561
|
+
e(hn, "buildMultitreeLayerOrder");
|
|
3562
|
+
function gn(e, t, n) {
|
|
3563
|
+
let r = new Set(e), i = new Set(t), a = Kt(t), o = [];
|
|
3656
3564
|
for (let e of n) r.has(e.src) && i.has(e.dst) && o.push(a.get(e.dst));
|
|
3657
|
-
return
|
|
3565
|
+
return qt(o);
|
|
3658
3566
|
}
|
|
3659
|
-
e(
|
|
3660
|
-
function
|
|
3567
|
+
e(gn, "countCrossingsBetweenAdjacent");
|
|
3568
|
+
function _n(e, t, n) {
|
|
3661
3569
|
let r = [];
|
|
3662
3570
|
for (let e of t) {
|
|
3663
3571
|
let t = n[e.src], i = n[e.dst];
|
|
@@ -3672,12 +3580,12 @@ function Fn(e, t, n) {
|
|
|
3672
3580
|
});
|
|
3673
3581
|
}
|
|
3674
3582
|
let i = 0;
|
|
3675
|
-
for (let t = 0; t + 1 < e.length; t++) i +=
|
|
3583
|
+
for (let t = 0; t + 1 < e.length; t++) i += gn(e[t], e[t + 1], r);
|
|
3676
3584
|
return i;
|
|
3677
3585
|
}
|
|
3678
|
-
e(
|
|
3679
|
-
function
|
|
3680
|
-
let n = { ...t }, { preds: r } =
|
|
3586
|
+
e(_n, "totalCrossings");
|
|
3587
|
+
function vn(e, t) {
|
|
3588
|
+
let n = { ...t }, { preds: r } = Ut(e), i = Xt(e), a = _n(hn(e, n, i), e.edges, n), o = en.MAX_CROSSING_OPTIMIZATION_PASSES;
|
|
3681
3589
|
for (let t = 0; t < o; t++) {
|
|
3682
3590
|
let t = !1, o = [...e.nodes].sort((e, t) => (n[t] ?? 0) - (n[e] ?? 0));
|
|
3683
3591
|
for (let s of o) {
|
|
@@ -3688,16 +3596,16 @@ function In(e, t) {
|
|
|
3688
3596
|
if (c >= o) continue;
|
|
3689
3597
|
let l = o;
|
|
3690
3598
|
n[s] = c;
|
|
3691
|
-
let u =
|
|
3599
|
+
let u = _n(hn(e, n, i), e.edges, n);
|
|
3692
3600
|
u < a ? (a = u, t = !0) : n[s] = l;
|
|
3693
3601
|
}
|
|
3694
3602
|
if (!t) break;
|
|
3695
3603
|
}
|
|
3696
3604
|
return n;
|
|
3697
3605
|
}
|
|
3698
|
-
e(
|
|
3699
|
-
function
|
|
3700
|
-
let n =
|
|
3606
|
+
e(vn, "optimizeRanksByCrossings");
|
|
3607
|
+
function yn(e, t) {
|
|
3608
|
+
let n = Xt(e), r = [...e.nodes].sort((e, n) => (t[e] ?? 0) - (t[n] ?? 0) || e.localeCompare(n));
|
|
3701
3609
|
for (let i of r) {
|
|
3702
3610
|
let r = n(i);
|
|
3703
3611
|
if (!r) continue;
|
|
@@ -3722,13 +3630,13 @@ function Ln(e, t) {
|
|
|
3722
3630
|
p !== u && (t[i] = p);
|
|
3723
3631
|
}
|
|
3724
3632
|
}
|
|
3725
|
-
e(
|
|
3726
|
-
function
|
|
3727
|
-
let n =
|
|
3633
|
+
e(yn, "adjustCrossLaneSources");
|
|
3634
|
+
function bn(e, t) {
|
|
3635
|
+
let n = Lt(e), r = Gt(n) ?? [...n.nodes].sort(), i = t?.compactSingleInput ?? !1, a = Xt(n), o = /* @__PURE__ */ Object.create(null);
|
|
3728
3636
|
for (let e of r) {
|
|
3729
|
-
let r =
|
|
3637
|
+
let r = Rt(n, e), s = t?.ignoreCrossLaneEdges ? r.filter((t) => {
|
|
3730
3638
|
let n = a(t.src), r = a(e);
|
|
3731
|
-
return !n || !r
|
|
3639
|
+
return !n || !r || n === r;
|
|
3732
3640
|
}) : r;
|
|
3733
3641
|
if (s.length === 0) o[e] = 0;
|
|
3734
3642
|
else if (i && s.length === 1) {
|
|
@@ -3740,30 +3648,30 @@ function Rn(e, t) {
|
|
|
3740
3648
|
o[e] = t === -Infinity ? 0 : t;
|
|
3741
3649
|
}
|
|
3742
3650
|
}
|
|
3743
|
-
return (t?.optimizeRanksByCrossings ?? !1) && (o =
|
|
3744
|
-
layers:
|
|
3651
|
+
return (t?.optimizeRanksByCrossings ?? !1) && (o = vn(n, o)), t?.ignoreCrossLaneEdges && yn(n, o), {
|
|
3652
|
+
layers: hn(n, o, a),
|
|
3745
3653
|
rankOf: o,
|
|
3746
3654
|
dummy: /* @__PURE__ */ new Set()
|
|
3747
3655
|
};
|
|
3748
3656
|
}
|
|
3749
|
-
e(
|
|
3750
|
-
function
|
|
3751
|
-
let r =
|
|
3657
|
+
e(bn, "assignLayers_LongestPath");
|
|
3658
|
+
function xn(t, n) {
|
|
3659
|
+
let r = Lt(t), i = { ...bn(r, {
|
|
3752
3660
|
compactSingleInput: n?.compactSingleInput,
|
|
3753
3661
|
ignoreCrossLaneEdges: n?.ignoreCrossLaneEdges,
|
|
3754
3662
|
optimizeRanksByCrossings: n?.optimizeRanksByCrossings
|
|
3755
|
-
}).rankOf }, a =
|
|
3663
|
+
}).rankOf }, a = Xt(r), { preds: o, succs: s } = Ut(r, (e) => {
|
|
3756
3664
|
if (n?.ignoreCrossLaneEdges) {
|
|
3757
3665
|
let t = a(e.src), n = a(e.dst);
|
|
3758
3666
|
if (t && n && t !== n) return !1;
|
|
3759
3667
|
}
|
|
3760
3668
|
return !0;
|
|
3761
|
-
}), c =
|
|
3669
|
+
}), c = Gt(r) ?? [...r.nodes], l = [...c].reverse(), u = /* @__PURE__ */ e((e, t) => {
|
|
3762
3670
|
let n = 0;
|
|
3763
3671
|
for (let t of o.get(e) ?? []) n = Math.max(n, (i[t] ?? 0) + 1);
|
|
3764
3672
|
let r = Infinity, a = s.get(e) ?? [];
|
|
3765
3673
|
return a.length > 0 && (r = Math.min(...a.map((e) => (i[e] ?? 0) - 1))), Number.isFinite(r) || (r = Math.max(n, t)), Math.min(Math.max(t, n), r);
|
|
3766
|
-
}, "clampFeasible"), d =
|
|
3674
|
+
}, "clampFeasible"), d = en.GRAVITY_ITERATIONS, f = /* @__PURE__ */ e((e) => {
|
|
3767
3675
|
let t = !1;
|
|
3768
3676
|
for (let n of e) {
|
|
3769
3677
|
let e = o.get(n) ?? [], r = s.get(n) ?? [];
|
|
@@ -3790,14 +3698,14 @@ function zn(t, n) {
|
|
|
3790
3698
|
}
|
|
3791
3699
|
}
|
|
3792
3700
|
return {
|
|
3793
|
-
layers:
|
|
3701
|
+
layers: Wt(r, c, i),
|
|
3794
3702
|
rankOf: i,
|
|
3795
3703
|
dummy: /* @__PURE__ */ new Set()
|
|
3796
3704
|
};
|
|
3797
3705
|
}
|
|
3798
|
-
e(
|
|
3799
|
-
function
|
|
3800
|
-
let t =
|
|
3706
|
+
e(xn, "assignLayers_Gravity");
|
|
3707
|
+
function Sn(e) {
|
|
3708
|
+
let t = Vt(e), n = Bt(e), r = Ht(t), i = [];
|
|
3801
3709
|
for (; r.length > 0;) {
|
|
3802
3710
|
let e = [];
|
|
3803
3711
|
for (let a of r) {
|
|
@@ -3808,12 +3716,12 @@ function Bn(e) {
|
|
|
3808
3716
|
}
|
|
3809
3717
|
return i.length === e.nodes.length ? i : null;
|
|
3810
3718
|
}
|
|
3811
|
-
e(
|
|
3812
|
-
function
|
|
3813
|
-
let r =
|
|
3719
|
+
e(Sn, "topoSortByGenerationIfAcyclic");
|
|
3720
|
+
function Cn(t, n) {
|
|
3721
|
+
let r = Lt(t), i = n?.direction === "LR" ? Sn(r) ?? [...r.nodes].sort() : Gt(r) ?? [...r.nodes].sort(), a = Xt(r), o = /* @__PURE__ */ e((e) => a(e) ?? e, "laneOf"), s = /* @__PURE__ */ Object.create(null), c = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ e((e, t) => n?.ignoreCrossLaneEdges ?? !0 ? +(o(e) === o(t)) : 1, "edgeWeight");
|
|
3814
3722
|
for (let e of i) {
|
|
3815
3723
|
if (r.nodeById.get(e)?.isGroup) continue;
|
|
3816
|
-
let t =
|
|
3724
|
+
let t = Rt(r, e), n = 0;
|
|
3817
3725
|
if (t.length > 0) for (let r of t) {
|
|
3818
3726
|
let t = r.src, i = s[t] ?? 0;
|
|
3819
3727
|
n = Math.max(n, i + l(t, e));
|
|
@@ -3822,14 +3730,14 @@ function Vn(t, n) {
|
|
|
3822
3730
|
s[e] = u, c.set(i, u + 1);
|
|
3823
3731
|
}
|
|
3824
3732
|
return {
|
|
3825
|
-
layers:
|
|
3733
|
+
layers: Wt(r, i, s, { skipGroups: !0 }),
|
|
3826
3734
|
rankOf: s,
|
|
3827
3735
|
dummy: /* @__PURE__ */ new Set()
|
|
3828
3736
|
};
|
|
3829
3737
|
}
|
|
3830
|
-
e(
|
|
3831
|
-
function
|
|
3832
|
-
let r =
|
|
3738
|
+
e(Cn, "assignLayers_LaneAwareCompact");
|
|
3739
|
+
function wn(t, n) {
|
|
3740
|
+
let r = Lt(n), { rankOf: i } = t, a = t.layers.map((e) => [...e]), o = new Set(t.dummy ? [...t.dummy] : []), s = 0, c = new Map(r.nodeById), l = /* @__PURE__ */ e((e) => {
|
|
3833
3741
|
let t = `placeholder-${s++}`, n = {
|
|
3834
3742
|
id: t,
|
|
3835
3743
|
isGroup: !1,
|
|
@@ -3881,49 +3789,49 @@ function Hn(t, n) {
|
|
|
3881
3789
|
graphWithDummies: f
|
|
3882
3790
|
};
|
|
3883
3791
|
}
|
|
3884
|
-
e(
|
|
3885
|
-
function
|
|
3792
|
+
e(wn, "makeProperLayering");
|
|
3793
|
+
function Tn(e) {
|
|
3886
3794
|
let t = e.length;
|
|
3887
3795
|
if (t === 0) return Infinity;
|
|
3888
3796
|
let n = [...e].sort((e, t) => e - t);
|
|
3889
3797
|
return t % 2 == 1 ? n[(t - 1) / 2] : .5 * (n[t / 2 - 1] + n[t / 2]);
|
|
3890
3798
|
}
|
|
3891
|
-
e(
|
|
3892
|
-
function
|
|
3799
|
+
e(Tn, "median");
|
|
3800
|
+
function En(e) {
|
|
3893
3801
|
return e.length === 0 ? Infinity : e.reduce((e, t) => e + t, 0) / e.length;
|
|
3894
3802
|
}
|
|
3895
|
-
e(
|
|
3896
|
-
function
|
|
3803
|
+
e(En, "barycenter");
|
|
3804
|
+
function Dn(e, t, n, r) {
|
|
3897
3805
|
let i = /* @__PURE__ */ new Map();
|
|
3898
3806
|
for (let t of e) i.set(t, []);
|
|
3899
3807
|
for (let e of n) r === "down" ? t.has(e.src) && i.has(e.dst) && i.get(e.dst).push(t.get(e.src)) : t.has(e.dst) && i.has(e.src) && i.get(e.src).push(t.get(e.dst));
|
|
3900
3808
|
return i;
|
|
3901
3809
|
}
|
|
3902
|
-
e(
|
|
3903
|
-
function
|
|
3810
|
+
e(Dn, "neighborPositionsFor");
|
|
3811
|
+
function On(e, t, n) {
|
|
3904
3812
|
let r = n.get(e) ?? 0, i = n.get(t) ?? 0;
|
|
3905
3813
|
return r === i ? e.localeCompare(t) : r - i;
|
|
3906
3814
|
}
|
|
3907
|
-
e(
|
|
3908
|
-
function
|
|
3909
|
-
let r = new Set(e), i = new Set(t), a =
|
|
3815
|
+
e(On, "currentOrderTieBreak");
|
|
3816
|
+
function kn(e, t, n) {
|
|
3817
|
+
let r = new Set(e), i = new Set(t), a = Kt(e), o = Kt(t), s = [];
|
|
3910
3818
|
for (let e of n) r.has(e.src) && i.has(e.dst) && s.push({
|
|
3911
3819
|
u: a.get(e.src),
|
|
3912
3820
|
v: o.get(e.dst)
|
|
3913
3821
|
});
|
|
3914
|
-
return s.sort((e, t) => e.u === t.u ? e.v - t.v : e.u - t.u),
|
|
3822
|
+
return s.sort((e, t) => e.u === t.u ? e.v - t.v : e.u - t.u), qt(s.map((e) => e.v));
|
|
3915
3823
|
}
|
|
3916
|
-
e(
|
|
3917
|
-
function
|
|
3824
|
+
e(kn, "countCrossingsBetweenAdjacent");
|
|
3825
|
+
function An(e, t, n) {
|
|
3918
3826
|
return [...e].sort((e, r) => {
|
|
3919
|
-
let i =
|
|
3920
|
-
return i === a ?
|
|
3827
|
+
let i = Tn(t.get(e) ?? []), a = Tn(t.get(r) ?? []);
|
|
3828
|
+
return i === a ? On(e, r, n) : isFinite(i) ? isFinite(a) ? i - a : -1 : 1;
|
|
3921
3829
|
});
|
|
3922
3830
|
}
|
|
3923
|
-
e(
|
|
3924
|
-
function
|
|
3925
|
-
let o =
|
|
3926
|
-
if (!i || !a || a.length === 0) return
|
|
3831
|
+
e(An, "sortByHeuristic");
|
|
3832
|
+
function jn(e, t, n, r, i, a) {
|
|
3833
|
+
let o = Kt(e), s = Kt(t), c = Dn(t, o, n, r);
|
|
3834
|
+
if (!i || !a || a.length === 0) return An(t, c, s);
|
|
3927
3835
|
let l = /* @__PURE__ */ new Map();
|
|
3928
3836
|
for (let e of t) {
|
|
3929
3837
|
let t = i(e), n = l.get(t) ?? [];
|
|
@@ -3933,16 +3841,16 @@ function Yn(e, t, n, r, i, a) {
|
|
|
3933
3841
|
for (let e of a) {
|
|
3934
3842
|
let t = l.get(e);
|
|
3935
3843
|
if (!t || t.length === 0) continue;
|
|
3936
|
-
let n =
|
|
3844
|
+
let n = An(t, c, s);
|
|
3937
3845
|
u.push(...n);
|
|
3938
3846
|
}
|
|
3939
3847
|
let d = l.get(null);
|
|
3940
3848
|
if (d && d.length > 0) {
|
|
3941
|
-
let e =
|
|
3849
|
+
let e = An(d, c, s);
|
|
3942
3850
|
for (let t of e) {
|
|
3943
|
-
let e =
|
|
3851
|
+
let e = En(c.get(t) ?? []), n = u.length;
|
|
3944
3852
|
if (isFinite(e)) {
|
|
3945
|
-
for (let [t, r] of u.entries()) if (e <
|
|
3853
|
+
for (let [t, r] of u.entries()) if (e < En(c.get(r) ?? [])) {
|
|
3946
3854
|
n = t;
|
|
3947
3855
|
break;
|
|
3948
3856
|
}
|
|
@@ -3952,11 +3860,11 @@ function Yn(e, t, n, r, i, a) {
|
|
|
3952
3860
|
}
|
|
3953
3861
|
return u;
|
|
3954
3862
|
}
|
|
3955
|
-
e(
|
|
3956
|
-
function
|
|
3863
|
+
e(jn, "reorderLayer");
|
|
3864
|
+
function Mn(t, n, r, i, a) {
|
|
3957
3865
|
let o = [...n], s = new Set(t), c = new Set(n), l = i ? new Set(i) : null, u = r.filter((e) => s.has(e.src) && c.has(e.dst)), d = l ? r.filter((e) => c.has(e.src) && l.has(e.dst)) : void 0, f = /* @__PURE__ */ e((e) => {
|
|
3958
|
-
let n =
|
|
3959
|
-
return d && i && (n +=
|
|
3866
|
+
let n = kn(t, e, u);
|
|
3867
|
+
return d && i && (n += kn(e, i, d)), n;
|
|
3960
3868
|
}, "crossingScore"), p = a ? /* @__PURE__ */ new Map() : null;
|
|
3961
3869
|
if (a && p) for (let e of n) p.set(e, a(e));
|
|
3962
3870
|
let m = !0, h = f(o);
|
|
@@ -3972,18 +3880,18 @@ function Xn(t, n, r, i, a) {
|
|
|
3972
3880
|
}
|
|
3973
3881
|
return o;
|
|
3974
3882
|
}
|
|
3975
|
-
e(
|
|
3976
|
-
function
|
|
3977
|
-
let r = e.layers.map((e) => [...e]), i = t.edges, a =
|
|
3883
|
+
e(Mn, "transposeImprove");
|
|
3884
|
+
function Nn(e, t, n) {
|
|
3885
|
+
let r = e.layers.map((e) => [...e]), i = t.edges, a = Xt(t), o = Qt(t, n?.laneOrder);
|
|
3978
3886
|
for (let e = 0; e < 3; e++) {
|
|
3979
|
-
for (let e = 1; e < r.length; e++) r[e] =
|
|
3980
|
-
for (let e = r.length - 2; e >= 0; e--) r[e] =
|
|
3887
|
+
for (let e = 1; e < r.length; e++) r[e] = jn(r[e - 1], r[e], i, "down", a, o), r[e] = Mn(r[e - 1], r[e], i, r[e + 1], a);
|
|
3888
|
+
for (let e = r.length - 2; e >= 0; e--) r[e] = jn(r[e + 1], r[e], i, "up", a, o), r[e] = Mn(r[e + 1], r[e], i, r[e - 1], a);
|
|
3981
3889
|
}
|
|
3982
3890
|
return { layers: r };
|
|
3983
3891
|
}
|
|
3984
|
-
e(
|
|
3985
|
-
function
|
|
3986
|
-
let i = r?.layerGap ??
|
|
3892
|
+
e(Nn, "orderLayers");
|
|
3893
|
+
function Pn(t, n, r) {
|
|
3894
|
+
let i = r?.layerGap ?? tn.DEFAULT_LAYER_GAP, a = r?.nodeGap ?? tn.DEFAULT_NODE_GAP, o = r?.laneGap ?? a * 2, s = r?.direction ?? "TB", c = s === "LR" || s === "RL", l = t.layers, u = /* @__PURE__ */ Object.create(null), d = /* @__PURE__ */ Object.create(null), f = /* @__PURE__ */ e((e) => n.nodeById.get(e), "getNode"), p = /* @__PURE__ */ e((e) => f(e)?.width ?? 0, "getWidth"), m = /* @__PURE__ */ e((e) => f(e)?.height ?? 0, "getHeight"), h = Xt(n), g = Qt(n, r?.laneOrder), _ = l.map((e) => e.reduce((e, t) => Math.max(e, m(t)), 0)), v = [];
|
|
3987
3895
|
if (c) for (let e = 0; e + 1 < l.length; e++) {
|
|
3988
3896
|
let t = l[e].reduce((e, t) => Math.max(e, p(t)), 0), n = l[e + 1].reduce((e, t) => Math.max(e, p(t)), 0), r = _[e], a = _[e + 1], o = r / 2 + a / 2, s = (t + n) / 2, c = Math.max(0, s - o - i);
|
|
3989
3897
|
v.push(c);
|
|
@@ -4052,22 +3960,22 @@ function Qn(t, n, r) {
|
|
|
4052
3960
|
if (r == null || i == null) continue;
|
|
4053
3961
|
let a = Math.round(((u[r] ?? 0) + (u[i] ?? 0)) / 2), o = /* @__PURE__ */ new Set();
|
|
4054
3962
|
for (let t of e) o.add(t.src), o.add(t.dst);
|
|
4055
|
-
for (let e of o) e
|
|
3963
|
+
for (let e of o) e !== r && e !== i && n.nodeById.get(e)?.isDummy && (u[e] = a);
|
|
4056
3964
|
}
|
|
4057
3965
|
return {
|
|
4058
3966
|
x: u,
|
|
4059
3967
|
y: d
|
|
4060
3968
|
};
|
|
4061
3969
|
}
|
|
4062
|
-
e(
|
|
4063
|
-
var
|
|
4064
|
-
function
|
|
3970
|
+
e(Pn, "assignCoordinates");
|
|
3971
|
+
var Fn = 8;
|
|
3972
|
+
function In(e) {
|
|
4065
3973
|
let t = 2166136261;
|
|
4066
3974
|
for (let n = 0; n < e.length; n++) t ^= e.charCodeAt(n), t = Math.imul(t, 16777619);
|
|
4067
3975
|
return t >>> 0;
|
|
4068
3976
|
}
|
|
4069
|
-
e(
|
|
4070
|
-
function
|
|
3977
|
+
e(In, "hashString");
|
|
3978
|
+
function Ln(e) {
|
|
4071
3979
|
let t = e >>> 0;
|
|
4072
3980
|
return () => {
|
|
4073
3981
|
t += 1831565813;
|
|
@@ -4075,37 +3983,37 @@ function tr(e) {
|
|
|
4075
3983
|
return e = Math.imul(e ^ e >>> 15, e | 1), e ^= e + Math.imul(e ^ e >>> 7, e | 61), ((e ^ e >>> 14) >>> 0) / 4294967296;
|
|
4076
3984
|
};
|
|
4077
3985
|
}
|
|
4078
|
-
e(
|
|
4079
|
-
function
|
|
4080
|
-
let n = [...e], r =
|
|
3986
|
+
e(Ln, "mulberry32");
|
|
3987
|
+
function Rn(e, t) {
|
|
3988
|
+
let n = [...e], r = Ln(t);
|
|
4081
3989
|
for (let e = n.length - 1; e > 0; e--) {
|
|
4082
3990
|
let t = Math.floor(r() * (e + 1));
|
|
4083
3991
|
[n[e], n[t]] = [n[t], n[e]];
|
|
4084
3992
|
}
|
|
4085
3993
|
return n;
|
|
4086
3994
|
}
|
|
4087
|
-
e(
|
|
4088
|
-
function
|
|
3995
|
+
e(Rn, "deterministicShuffle");
|
|
3996
|
+
function zn(e, t) {
|
|
4089
3997
|
let n = 0;
|
|
4090
3998
|
for (let [r, i] of e.entries()) n += Math.abs(r - (t.get(i) ?? r));
|
|
4091
3999
|
return n;
|
|
4092
4000
|
}
|
|
4093
|
-
e(
|
|
4094
|
-
function
|
|
4001
|
+
e(zn, "sourceDistance");
|
|
4002
|
+
function Bn(e, t) {
|
|
4095
4003
|
let n = /* @__PURE__ */ new Map();
|
|
4096
4004
|
for (let [t, r] of e.entries()) n.set(r, t);
|
|
4097
4005
|
let r = 0;
|
|
4098
4006
|
for (let { a: e, b: i, weight: a } of t) {
|
|
4099
4007
|
let t = n.get(e), o = n.get(i);
|
|
4100
|
-
t
|
|
4008
|
+
t != null && o != null && (r += a * Math.abs(t - o));
|
|
4101
4009
|
}
|
|
4102
4010
|
return r;
|
|
4103
4011
|
}
|
|
4104
|
-
e(
|
|
4105
|
-
function
|
|
4106
|
-
let t =
|
|
4012
|
+
e(Bn, "laneArrangementCost");
|
|
4013
|
+
function Vn(e) {
|
|
4014
|
+
let t = Zt(e);
|
|
4107
4015
|
if (t.length < 2) return [];
|
|
4108
|
-
let n = new Map(t.map((e, t) => [e, t])), r =
|
|
4016
|
+
let n = new Map(t.map((e, t) => [e, t])), r = Xt(e), i = /* @__PURE__ */ new Map();
|
|
4109
4017
|
for (let t of e.layout.edges ?? []) {
|
|
4110
4018
|
if (t.isLayoutOnly) continue;
|
|
4111
4019
|
let a = typeof t.start == "string" ? t.start : void 0, o = typeof t.end == "string" ? t.end : void 0;
|
|
@@ -4123,56 +4031,56 @@ function ar(e) {
|
|
|
4123
4031
|
}
|
|
4124
4032
|
return [...i.values()];
|
|
4125
4033
|
}
|
|
4126
|
-
e(
|
|
4127
|
-
function
|
|
4128
|
-
let r = [...e], i =
|
|
4034
|
+
e(Vn, "buildWeightedLaneEdges");
|
|
4035
|
+
function Hn(e, t, n) {
|
|
4036
|
+
let r = [...e], i = Bn(r, t), a = !0, o = 0, s = Math.max(1, r.length);
|
|
4129
4037
|
for (; a && o < s;) {
|
|
4130
4038
|
a = !1, o++;
|
|
4131
4039
|
for (let e = 0; e + 1 < r.length; e++) {
|
|
4132
4040
|
[r[e], r[e + 1]] = [r[e + 1], r[e]];
|
|
4133
|
-
let n =
|
|
4041
|
+
let n = Bn(r, t);
|
|
4134
4042
|
n < i ? (i = n, a = !0) : [r[e], r[e + 1]] = [r[e + 1], r[e]];
|
|
4135
4043
|
}
|
|
4136
4044
|
}
|
|
4137
4045
|
return {
|
|
4138
4046
|
order: r,
|
|
4139
4047
|
cost: i,
|
|
4140
|
-
sourceDistance:
|
|
4048
|
+
sourceDistance: zn(r, n)
|
|
4141
4049
|
};
|
|
4142
4050
|
}
|
|
4143
|
-
e(
|
|
4144
|
-
function
|
|
4051
|
+
e(Hn, "greedySwitch");
|
|
4052
|
+
function Un(e, t) {
|
|
4145
4053
|
return e.cost === t.cost ? e.sourceDistance < t.sourceDistance : e.cost < t.cost;
|
|
4146
4054
|
}
|
|
4147
|
-
e(
|
|
4148
|
-
function
|
|
4055
|
+
e(Un, "isBetterCandidate");
|
|
4056
|
+
function Wn(e, t, n) {
|
|
4149
4057
|
let r = [...t].sort((e, t) => e.a === t.a ? e.b.localeCompare(t.b) : e.a.localeCompare(t.a)).map(({ a: e, b: t, weight: n }) => `${e}:${t}:${n}`).join("|");
|
|
4150
|
-
return
|
|
4058
|
+
return In(`${e.join("|")}#${r}#${n}`);
|
|
4151
4059
|
}
|
|
4152
|
-
e(
|
|
4153
|
-
function
|
|
4154
|
-
let n =
|
|
4060
|
+
e(Wn, "seedForRestart");
|
|
4061
|
+
function Gn(e, t = {}) {
|
|
4062
|
+
let n = Zt(e);
|
|
4155
4063
|
if (n.length < 2) return n;
|
|
4156
|
-
let r =
|
|
4064
|
+
let r = Vn(e);
|
|
4157
4065
|
if (r.length === 0) return n;
|
|
4158
|
-
let i = new Map(n.map((e, t) => [e, t])), a =
|
|
4066
|
+
let i = new Map(n.map((e, t) => [e, t])), a = Hn(n, r, i), o = Math.max(0, t.restarts ?? Fn);
|
|
4159
4067
|
for (let e = 0; e < o; e++) {
|
|
4160
|
-
let t =
|
|
4161
|
-
|
|
4068
|
+
let t = Hn(Rn(n, Wn(n, r, e)), r, i);
|
|
4069
|
+
Un(t, a) && (a = t);
|
|
4162
4070
|
}
|
|
4163
4071
|
return a.order;
|
|
4164
4072
|
}
|
|
4165
|
-
e(
|
|
4166
|
-
function
|
|
4167
|
-
let n = t?.ignoreCrossLaneEdges ?? !0, r = t?.optimizeRanksByCrossings ?? !0, i =
|
|
4168
|
-
compactSingleInput: t?.compactSingleInput ??
|
|
4073
|
+
e(Gn, "optimizeTopLaneOrder");
|
|
4074
|
+
function Kn(e, t) {
|
|
4075
|
+
let n = t?.ignoreCrossLaneEdges ?? !0, r = t?.optimizeRanksByCrossings ?? !0, i = Lt(e), a = t?.automaticLaneOrdering ? Gn(i, { restarts: Fn }) : void 0, o = Jt(i), s = o.acyclic, { layering: c, graphWithDummies: l } = wn(n ? Cn(s, {
|
|
4076
|
+
compactSingleInput: t?.compactSingleInput ?? en.DEFAULT_COMPACT_SINGLE_INPUT,
|
|
4169
4077
|
ignoreCrossLaneEdges: !0,
|
|
4170
4078
|
direction: t?.direction
|
|
4171
|
-
}) :
|
|
4172
|
-
compactSingleInput: t?.compactSingleInput ??
|
|
4079
|
+
}) : xn(s, {
|
|
4080
|
+
compactSingleInput: t?.compactSingleInput ?? en.DEFAULT_COMPACT_SINGLE_INPUT,
|
|
4173
4081
|
ignoreCrossLaneEdges: !1,
|
|
4174
4082
|
optimizeRanksByCrossings: r
|
|
4175
|
-
}), s), u =
|
|
4083
|
+
}), s), u = Nn(c, l, { laneOrder: a }), d = Pn(u, l, {
|
|
4176
4084
|
layerGap: t?.layerGap,
|
|
4177
4085
|
nodeGap: t?.nodeGap,
|
|
4178
4086
|
direction: t?.direction,
|
|
@@ -4186,18 +4094,18 @@ function ur(e, t) {
|
|
|
4186
4094
|
coordinates: d
|
|
4187
4095
|
};
|
|
4188
4096
|
}
|
|
4189
|
-
e(
|
|
4190
|
-
var $ =
|
|
4191
|
-
function
|
|
4097
|
+
e(Kn, "sugiyamaLayout");
|
|
4098
|
+
var $ = $t.EPSILON, qn = 8, Jn = 15, Yn = 15, Xn = 25, Zn = 20, Qn = 10;
|
|
4099
|
+
function $n(e, t, n) {
|
|
4192
4100
|
let r = e.x ?? 0, i = e.y ?? 0, a = t.x - r, o = t.y - i, s = Math.abs(a), c = Math.abs(o);
|
|
4193
4101
|
return s < $ && c < $ ? n : c > $ && c * 3 >= s ? o > 0 ? "bottom" : "top" : s > $ ? a > 0 ? "right" : "left" : n;
|
|
4194
4102
|
}
|
|
4195
|
-
e(
|
|
4196
|
-
function
|
|
4103
|
+
e($n, "chooseOrthogonalSide");
|
|
4104
|
+
function er(e, t) {
|
|
4197
4105
|
return Math.abs(e.to - t.from) < $ || Math.abs(e.to - t.to) < $ ? e.to : e.from;
|
|
4198
4106
|
}
|
|
4199
|
-
e(
|
|
4200
|
-
function
|
|
4107
|
+
e(er, "sharedLineEndpointCoord");
|
|
4108
|
+
function tr(e, t) {
|
|
4201
4109
|
return e.orient === "vertical" ? {
|
|
4202
4110
|
x: e.coord,
|
|
4203
4111
|
y: t
|
|
@@ -4206,8 +4114,8 @@ function yr(e, t) {
|
|
|
4206
4114
|
y: e.coord
|
|
4207
4115
|
};
|
|
4208
4116
|
}
|
|
4209
|
-
e(
|
|
4210
|
-
function
|
|
4117
|
+
e(tr, "pointOnLine");
|
|
4118
|
+
function nr(t, n) {
|
|
4211
4119
|
let r = t.nodes ?? [], i = t.edges ?? [], a = [];
|
|
4212
4120
|
for (let e of i) e.isLayoutOnly || a.push({
|
|
4213
4121
|
...e,
|
|
@@ -4223,7 +4131,7 @@ function br(t, n) {
|
|
|
4223
4131
|
i(t);
|
|
4224
4132
|
}
|
|
4225
4133
|
let d = r.filter((e) => !e.isGroup && !e.isEdgeLabel).map((e) => {
|
|
4226
|
-
let t = e.width ?? 10, n = e.height ?? 10, r = e.x ?? 0, i = e.y ?? 0, a =
|
|
4134
|
+
let t = e.width ?? 10, n = e.height ?? 10, r = e.x ?? 0, i = e.y ?? 0, a = qn;
|
|
4227
4135
|
return {
|
|
4228
4136
|
nodeId: e.id,
|
|
4229
4137
|
minX: r - t / 2 - a,
|
|
@@ -4262,7 +4170,7 @@ function br(t, n) {
|
|
|
4262
4170
|
y: a
|
|
4263
4171
|
};
|
|
4264
4172
|
}
|
|
4265
|
-
}, "portForSide"), m = /* @__PURE__ */ e((e, t, n) => p(e,
|
|
4173
|
+
}, "portForSide"), m = /* @__PURE__ */ e((e, t, n) => p(e, $n(e, t, n ? "bottom" : "top")), "getOrthogonalPort"), h = [], g = [], _ = /* @__PURE__ */ new Set(), v = 1e3, y = /* @__PURE__ */ e((e, t, n) => {
|
|
4266
4174
|
if (h.length === 0) return 0;
|
|
4267
4175
|
let r = Math.abs(t.y - n.y) < $, i = Math.abs(t.x - n.x) < $;
|
|
4268
4176
|
if (!r && !i) return 0;
|
|
@@ -4270,11 +4178,11 @@ function br(t, n) {
|
|
|
4270
4178
|
if (r) {
|
|
4271
4179
|
let r = t.y, i = Math.min(t.x, n.x) - $, o = Math.max(t.x, n.x) + $;
|
|
4272
4180
|
if (o <= i) return 0;
|
|
4273
|
-
for (let t of h) t.edgeIndex
|
|
4181
|
+
for (let t of h) t.edgeIndex !== e && t.orientation === "vertical" && (t.pipe.coord < i || t.pipe.coord > o || t.from - $ <= r && t.to + $ >= r && (a += v));
|
|
4274
4182
|
} else if (i) {
|
|
4275
4183
|
let r = t.x, i = Math.min(t.y, n.y) - $, o = Math.max(t.y, n.y) + $;
|
|
4276
4184
|
if (o <= i) return 0;
|
|
4277
|
-
for (let t of h) t.edgeIndex
|
|
4185
|
+
for (let t of h) t.edgeIndex !== e && t.orientation === "horizontal" && (t.pipe.coord < i || t.pipe.coord > o || t.from - $ <= r && t.to + $ >= r && (a += v));
|
|
4278
4186
|
}
|
|
4279
4187
|
return a;
|
|
4280
4188
|
}, "crossingPenalty"), b = a.map((e, t) => {
|
|
@@ -4300,7 +4208,7 @@ function br(t, n) {
|
|
|
4300
4208
|
return !!d.find((c) => n && c.nodeId === n || r && c.nodeId === r ? !1 : Math.abs(e.x - t.x) > $ ? c.minY < e.y && c.maxY > e.y && c.maxX > i && c.minX < a : c.minX < e.x && c.maxX > e.x && c.maxY > o && c.minY < s);
|
|
4301
4209
|
}, "isSegmentBlocked"), S = /* @__PURE__ */ new Map(), C = /* @__PURE__ */ new Map();
|
|
4302
4210
|
for (let e of a) !e.start || !e.end || e.start === e.end || (C.set(e.start, (C.get(e.start) ?? 0) + 1), C.set(e.end, (C.get(e.end) ?? 0) + 1));
|
|
4303
|
-
let w = /* @__PURE__ */ e((e, t) =>
|
|
4211
|
+
let w = /* @__PURE__ */ e((e, t) => $n(e, t, "bottom"), "determineSide"), T = /* @__PURE__ */ new Map();
|
|
4304
4212
|
for (let [e, t] of a.entries()) {
|
|
4305
4213
|
if (!t.start || !t.end || t.start === t.end || t.points && t.points.length > 0) continue;
|
|
4306
4214
|
let n = o.get(t.start), r = o.get(t.end);
|
|
@@ -4385,7 +4293,7 @@ function br(t, n) {
|
|
|
4385
4293
|
} : {
|
|
4386
4294
|
x: e.x,
|
|
4387
4295
|
y: e.y + n
|
|
4388
|
-
}, "applyPortOffset"),
|
|
4296
|
+
}, "applyPortOffset"), P = /* @__PURE__ */ e((e, t, n) => {
|
|
4389
4297
|
let r = T.get(e), i = {
|
|
4390
4298
|
x: n.x ?? 0,
|
|
4391
4299
|
y: n.y ?? 0
|
|
@@ -4405,8 +4313,8 @@ function br(t, n) {
|
|
|
4405
4313
|
if (g[t] = [], !n.start || !n.end || n.points && n.points.length > 0 || n.start === n.end) continue;
|
|
4406
4314
|
let r = o.get(n.start), i = o.get(n.end);
|
|
4407
4315
|
if (!r || !i) continue;
|
|
4408
|
-
let { pSrcPort: s, pDstPort: u, srcSide: p, dstSide: m } =
|
|
4409
|
-
w ? v.y = s.y > (r.y ?? 0) ? s.y +
|
|
4316
|
+
let { pSrcPort: s, pDstPort: u, srcSide: p, dstSide: m } = P(t, r, i), v = { ...s }, b = { ...u }, w = p === "top" || p === "bottom", T = m === "top" || m === "bottom";
|
|
4317
|
+
w ? v.y = s.y > (r.y ?? 0) ? s.y + Zn : s.y - Zn : v.x = s.x > (r.x ?? 0) ? s.x + Zn : s.x - Zn, T ? b.y = u.y > (i.y ?? 0) ? u.y + Zn : u.y - Zn : b.x = u.x > (i.x ?? 0) ? u.x + Zn : u.x - Zn;
|
|
4410
4318
|
let E = /* @__PURE__ */ e((e, t) => {
|
|
4411
4319
|
for (let n of d) if (!t.includes(n.nodeId) && e.x > n.minX && e.x < n.maxX && e.y > n.minY && e.y < n.maxY) return {
|
|
4412
4320
|
inside: !0,
|
|
@@ -4417,15 +4325,15 @@ function br(t, n) {
|
|
|
4417
4325
|
if (i) {
|
|
4418
4326
|
let i = e.y > (t.y ?? 0);
|
|
4419
4327
|
return {
|
|
4420
|
-
x: (n.x ?? 0) >= e.x ? r.maxX +
|
|
4421
|
-
y: i ? r.maxY +
|
|
4328
|
+
x: (n.x ?? 0) >= e.x ? r.maxX + Jn : r.minX - Jn,
|
|
4329
|
+
y: i ? r.maxY + Yn : r.minY - Yn,
|
|
4422
4330
|
leavesPositiveSide: i
|
|
4423
4331
|
};
|
|
4424
4332
|
}
|
|
4425
4333
|
let a = e.x > (t.x ?? 0), o = (n.y ?? 0) >= e.y;
|
|
4426
4334
|
return {
|
|
4427
|
-
x: a ? r.maxX +
|
|
4428
|
-
y: o ? r.maxY +
|
|
4335
|
+
x: a ? r.maxX + Jn : r.minX - Jn,
|
|
4336
|
+
y: o ? r.maxY + Yn : r.minY - Yn,
|
|
4429
4337
|
leavesPositiveSide: a
|
|
4430
4338
|
};
|
|
4431
4339
|
}, "obstacleDetour"), O = [], k = [n.start, n.end], A = E(v, k);
|
|
@@ -4434,7 +4342,7 @@ function br(t, n) {
|
|
|
4434
4342
|
if (w) {
|
|
4435
4343
|
let t = D(s, r, i, e, !0);
|
|
4436
4344
|
v.x = t.x, v.y = t.y;
|
|
4437
|
-
let n = t.leavesPositiveSide ? Math.min(e.minY - 2, s.y +
|
|
4345
|
+
let n = t.leavesPositiveSide ? Math.min(e.minY - 2, s.y + Zn) : Math.max(e.maxY + 2, s.y - Zn);
|
|
4438
4346
|
O = [
|
|
4439
4347
|
{
|
|
4440
4348
|
x: s.x,
|
|
@@ -4450,7 +4358,7 @@ function br(t, n) {
|
|
|
4450
4358
|
}
|
|
4451
4359
|
];
|
|
4452
4360
|
} else {
|
|
4453
|
-
let t = D(s, r, i, e, !1), n = t.leavesPositiveSide ? Math.min(e.minX - 2, s.x +
|
|
4361
|
+
let t = D(s, r, i, e, !1), n = t.leavesPositiveSide ? Math.min(e.minX - 2, s.x + Zn) : Math.max(e.maxX + 2, s.x - Zn);
|
|
4454
4362
|
v.x = t.x, v.y = t.y, O = [
|
|
4455
4363
|
{
|
|
4456
4364
|
x: n,
|
|
@@ -4491,7 +4399,7 @@ function br(t, n) {
|
|
|
4491
4399
|
}
|
|
4492
4400
|
}
|
|
4493
4401
|
if (O.length === 0 && j.length === 0) {
|
|
4494
|
-
let e =
|
|
4402
|
+
let e = Jn, r = Math.abs(v.x - b.x) < e, i = Math.abs(v.y - b.y) < e, a = te.get(`${t}:src`) !== void 0 || te.get(`${t}:dst`) !== void 0, o = (S.get(`${n.start ?? ""}:${p}:src`)?.length ?? 0) + (S.get(`${n.start ?? ""}:${p}:dst`)?.length ?? 0), c = (S.get(`${n.end ?? ""}:${m}:src`)?.length ?? 0) + (S.get(`${n.end ?? ""}:${m}:dst`)?.length ?? 0), l = o > 1 || c > 1, d = C.get(n.start ?? "") ?? 0, f = C.get(n.end ?? "") ?? 0, g = o > 1 && ne(n.start, p) || c > 1 && ne(n.end, m);
|
|
4495
4403
|
if ((r || i) && !a && (!l || l && !g && (o <= 1 || d <= 2) && (c <= 1 || f <= 2)) && !x(s, u, n.start, n.end)) {
|
|
4496
4404
|
n.points = [
|
|
4497
4405
|
{ ...s },
|
|
@@ -4520,52 +4428,52 @@ function br(t, n) {
|
|
|
4520
4428
|
}
|
|
4521
4429
|
}
|
|
4522
4430
|
v.x = f("vertical", v.x, v.y, v.y).coord, b.x = f("vertical", b.x, b.y, b.y).coord;
|
|
4523
|
-
let M = Math.min(v.x, b.x) - 50, N = Math.max(v.x, b.x) + 50,
|
|
4431
|
+
let M = Math.min(v.x, b.x) - 50, N = Math.max(v.x, b.x) + 50, F = Math.min(v.y, b.y) - 50, I = Math.max(v.y, b.y) + 50;
|
|
4524
4432
|
for (let e of d) {
|
|
4525
4433
|
let t = Math.min(v.x, b.x), n = Math.max(v.x, b.x), r = Math.min(v.y, b.y), i = Math.max(v.y, b.y);
|
|
4526
|
-
e.minX < n && e.maxX > t && e.minY < i && e.maxY > r && (M = Math.min(M, e.minX -
|
|
4434
|
+
e.minX < n && e.maxX > t && e.minY < i && e.maxY > r && (M = Math.min(M, e.minX - Xn), N = Math.max(N, e.maxX + Xn), F = Math.min(F, e.minY - Xn), I = Math.max(I, e.maxY + Xn));
|
|
4527
4435
|
}
|
|
4528
4436
|
for (let e of d) {
|
|
4529
|
-
if (e.maxX < M || e.minX > N || e.maxY <
|
|
4530
|
-
let t =
|
|
4437
|
+
if (e.maxX < M || e.minX > N || e.maxY < F || e.minY > I) continue;
|
|
4438
|
+
let t = Jn;
|
|
4531
4439
|
f("horizontal", e.minY - t, M, N), f("horizontal", e.maxY + t, M, N);
|
|
4532
|
-
let n =
|
|
4533
|
-
f("vertical", e.minX - n,
|
|
4440
|
+
let n = Yn;
|
|
4441
|
+
f("vertical", e.minX - n, F, I), f("vertical", e.maxX + n, F, I);
|
|
4534
4442
|
}
|
|
4535
4443
|
f("horizontal", v.y, M, N), f("horizontal", b.y, M, N);
|
|
4536
|
-
let
|
|
4537
|
-
|
|
4538
|
-
key:
|
|
4444
|
+
let L = c.filter((e) => e.orientation === "horizontal" && e.coord >= F && e.coord <= I), R = c.filter((e) => e.orientation === "vertical" && e.coord >= M && e.coord <= N), z = /* @__PURE__ */ e((e, t) => `${e.toFixed(1)},${t.toFixed(1)}`, "getKey"), B = z(v.x, v.y), re = z(b.x, b.y), V = /* @__PURE__ */ new Map(), H = /* @__PURE__ */ new Map(), ie = /* @__PURE__ */ new Map(), ae = /* @__PURE__ */ new Set(), U = [];
|
|
4445
|
+
V.set(B, 0), ie.set(B, "n"), U.push({
|
|
4446
|
+
key: B,
|
|
4539
4447
|
f: Math.hypot(b.x - v.x, b.y - v.y),
|
|
4540
4448
|
pt: v
|
|
4541
|
-
}),
|
|
4542
|
-
let
|
|
4449
|
+
}), ae.add(B);
|
|
4450
|
+
let W = [], G = /* @__PURE__ */ e((e, t) => x(e, t, n.start, n.end), "checkSegmentBlocked"), oe = {
|
|
4543
4451
|
x: b.x,
|
|
4544
4452
|
y: v.y
|
|
4545
|
-
},
|
|
4453
|
+
}, se = G(v, oe), K = G(oe, b), ce = se || K, le = {
|
|
4546
4454
|
x: v.x,
|
|
4547
4455
|
y: b.y
|
|
4548
|
-
},
|
|
4549
|
-
if (
|
|
4456
|
+
}, ue = G(v, le), de = G(le, b);
|
|
4457
|
+
if (ce ? ue || de || (W = Math.abs(v.x - b.x) < $ ? [v, b] : [
|
|
4550
4458
|
v,
|
|
4551
|
-
|
|
4459
|
+
le,
|
|
4552
4460
|
b
|
|
4553
|
-
]) :
|
|
4461
|
+
]) : W = Math.abs(v.y - b.y) < $ || Math.abs(v.x - b.x) < $ ? [v, b] : [
|
|
4554
4462
|
v,
|
|
4555
|
-
|
|
4463
|
+
oe,
|
|
4556
4464
|
b
|
|
4557
|
-
],
|
|
4558
|
-
|
|
4559
|
-
let e =
|
|
4560
|
-
if (
|
|
4561
|
-
let e =
|
|
4562
|
-
for (
|
|
4563
|
-
let n =
|
|
4564
|
-
|
|
4465
|
+
], W.length === 0) for (; U.length > 0;) {
|
|
4466
|
+
U.sort((e, t) => e.f - t.f);
|
|
4467
|
+
let e = U.shift();
|
|
4468
|
+
if (ae.delete(e.key), e.key === re) {
|
|
4469
|
+
let e = re, t = b;
|
|
4470
|
+
for (W = [t]; H.has(e);) {
|
|
4471
|
+
let n = H.get(e);
|
|
4472
|
+
W.unshift(n), t = n, e = z(n.x, n.y);
|
|
4565
4473
|
}
|
|
4566
4474
|
break;
|
|
4567
4475
|
}
|
|
4568
|
-
let r = e.pt.x, i = e.pt.y, a =
|
|
4476
|
+
let r = e.pt.x, i = e.pt.y, a = R.sort((e, t) => e.coord - t.coord), o = a.findIndex((e) => Math.abs(e.coord - r) < 1), s = L.sort((e, t) => e.coord - t.coord), c = s.findIndex((e) => Math.abs(e.coord - i) < 1), l = [];
|
|
4569
4477
|
o > 0 && l.push({
|
|
4570
4478
|
x: a[o - 1].coord,
|
|
4571
4479
|
y: i
|
|
@@ -4582,35 +4490,37 @@ function br(t, n) {
|
|
|
4582
4490
|
for (let a of l) {
|
|
4583
4491
|
let o = Math.min(r, a.x), s = Math.max(r, a.x), c = Math.min(i, a.y), l = Math.max(i, a.y);
|
|
4584
4492
|
if (d.some((e) => e.nodeId === n.start || e.nodeId === n.end ? !1 : o === s ? e.minX < r && e.maxX > r && e.maxY > c && e.minY < l : e.minY < i && e.maxY > i && e.maxX > o && e.minX < s)) continue;
|
|
4585
|
-
let u =
|
|
4493
|
+
let u = z(a.x, a.y), f = Math.abs(a.x - r) + Math.abs(a.y - i), p = y(t, e.pt, a), m = 0, h = b.x - v.x, g = b.y - v.y, _ = a.x - r, x = a.y - i;
|
|
4586
4494
|
(g > 10 && x < -5 || g < -10 && x > 5) && (m = Math.abs(x) * 100), (h > 10 && _ < -5 || h < -10 && _ > 5) && (m += Math.abs(_) * 50);
|
|
4587
|
-
let S = 0, C =
|
|
4495
|
+
let S = 0, C = ie.get(e.key) ?? "n", w = Math.abs(_) > $ ? "h" : "v";
|
|
4588
4496
|
C !== "n" && C !== w && (S = 50);
|
|
4589
|
-
let T = f + p + m + S, E = (
|
|
4590
|
-
if (E < (
|
|
4591
|
-
|
|
4592
|
-
|
|
4593
|
-
|
|
4594
|
-
|
|
4595
|
-
|
|
4596
|
-
|
|
4597
|
-
|
|
4497
|
+
let T = f + p + m + S, E = (V.get(e.key) ?? Infinity) + T, D = Math.abs(b.x - a.x) + Math.abs(b.y - a.y);
|
|
4498
|
+
if (E < (V.get(u) ?? Infinity)) {
|
|
4499
|
+
if (H.set(u, e.pt), V.set(u, E), ie.set(u, w), !ae.has(u)) U.push({
|
|
4500
|
+
key: u,
|
|
4501
|
+
f: E + D,
|
|
4502
|
+
pt: a
|
|
4503
|
+
}), ae.add(u);
|
|
4504
|
+
else {
|
|
4505
|
+
let e = U.findIndex((e) => e.key === u);
|
|
4506
|
+
e !== -1 && (U[e].f = E + D);
|
|
4507
|
+
}
|
|
4598
4508
|
}
|
|
4599
4509
|
}
|
|
4600
4510
|
}
|
|
4601
|
-
if (
|
|
4511
|
+
if (W.length === 0 && (W = [
|
|
4602
4512
|
v,
|
|
4603
4513
|
{
|
|
4604
4514
|
x: v.x,
|
|
4605
4515
|
y: b.y
|
|
4606
4516
|
},
|
|
4607
4517
|
b
|
|
4608
|
-
]),
|
|
4609
|
-
let t =
|
|
4610
|
-
for (let e of
|
|
4518
|
+
]), W.length > 4) {
|
|
4519
|
+
let t = W[0], n = W[W.length - 1], r = Math.min(t.x, n.x), i = Math.max(t.x, n.x), a = Math.min(t.y, n.y), o = Math.max(t.y, n.y);
|
|
4520
|
+
for (let e of W) r = Math.min(r, e.x), i = Math.max(i, e.x), a = Math.min(a, e.y), o = Math.max(o, e.y);
|
|
4611
4521
|
let s = i > Math.max(t.x, n.x), c = r < Math.min(t.x, n.x);
|
|
4612
4522
|
if (l) {
|
|
4613
|
-
let e =
|
|
4523
|
+
let e = Yn;
|
|
4614
4524
|
if (s) {
|
|
4615
4525
|
let r = Math.max(t.x, n.x), a = Math.min(t.y, n.y), o = Math.max(t.y, n.y), s = d.filter((e) => e.minX < r && e.maxX > r && e.minY < o && e.maxY > a);
|
|
4616
4526
|
if (s.length > 0) {
|
|
@@ -4646,7 +4556,7 @@ function br(t, n) {
|
|
|
4646
4556
|
t.length > 0 && (a = t);
|
|
4647
4557
|
}
|
|
4648
4558
|
if (a.length === 0) return n.y;
|
|
4649
|
-
let o =
|
|
4559
|
+
let o = Jn;
|
|
4650
4560
|
if (r) {
|
|
4651
4561
|
let e = Math.max(...a.map((e) => e.maxY)) + o;
|
|
4652
4562
|
if (e < n.y - $) return e;
|
|
@@ -4665,7 +4575,7 @@ function br(t, n) {
|
|
|
4665
4575
|
}, o = {
|
|
4666
4576
|
x: n.x,
|
|
4667
4577
|
y: r
|
|
4668
|
-
}, s =
|
|
4578
|
+
}, s = G(t, i), c = G(i, a), l = G(a, o), d = r !== n.y && G(o, n);
|
|
4669
4579
|
return !s && !c && !l && !d ? Math.abs(r - n.y) < $ ? [
|
|
4670
4580
|
t,
|
|
4671
4581
|
i,
|
|
@@ -4679,51 +4589,51 @@ function br(t, n) {
|
|
|
4679
4589
|
n
|
|
4680
4590
|
] : null;
|
|
4681
4591
|
}, "trySimplifyWithDetourX"), p = s && !c ? f(i) : c && !s ? f(r) : null;
|
|
4682
|
-
p && (
|
|
4592
|
+
p && (W = p);
|
|
4683
4593
|
}
|
|
4684
|
-
let
|
|
4594
|
+
let q = [
|
|
4685
4595
|
s,
|
|
4686
4596
|
...O,
|
|
4687
|
-
...
|
|
4597
|
+
...W,
|
|
4688
4598
|
...j.reverse(),
|
|
4689
4599
|
u
|
|
4690
4600
|
];
|
|
4691
|
-
if (
|
|
4692
|
-
let e =
|
|
4601
|
+
if (q.length >= 3) {
|
|
4602
|
+
let e = q[q.length - 1], t = q[q.length - 2], n = q[q.length - 3], r = Math.abs(n.y - t.y) < $ && Math.abs(t.y - e.y) < $, i = Math.abs(n.x - t.x) < $ && Math.abs(t.x - e.x) < $;
|
|
4693
4603
|
if (r) {
|
|
4694
4604
|
let r = Math.sign(t.x - n.x), i = Math.sign(e.x - n.x);
|
|
4695
|
-
r !== 0 && r === i && Math.abs(t.x - n.x) > Math.abs(e.x - n.x) &&
|
|
4605
|
+
r !== 0 && r === i && Math.abs(t.x - n.x) > Math.abs(e.x - n.x) && q.splice(-2, 1);
|
|
4696
4606
|
} else if (i) {
|
|
4697
4607
|
let r = Math.sign(t.y - n.y), i = Math.sign(e.y - n.y);
|
|
4698
|
-
r !== 0 && r === i && Math.abs(t.y - n.y) > Math.abs(e.y - n.y) &&
|
|
4608
|
+
r !== 0 && r === i && Math.abs(t.y - n.y) > Math.abs(e.y - n.y) && q.splice(-2, 1);
|
|
4699
4609
|
}
|
|
4700
4610
|
}
|
|
4701
|
-
let
|
|
4702
|
-
for (let e = 1; e <
|
|
4611
|
+
let fe = [q[0]];
|
|
4612
|
+
for (let e = 1; e < q.length - 1; e++) {
|
|
4703
4613
|
if (e === 1) {
|
|
4704
|
-
|
|
4614
|
+
fe.push(q[e]);
|
|
4705
4615
|
continue;
|
|
4706
4616
|
}
|
|
4707
|
-
let t =
|
|
4617
|
+
let t = fe[fe.length - 1], n = q[e], r = q[e + 1];
|
|
4708
4618
|
if (Math.abs(t.y - n.y) < $ && Math.abs(n.y - r.y) < $) {
|
|
4709
4619
|
if (n.x > t.x != r.x > n.x) {
|
|
4710
|
-
|
|
4620
|
+
fe.push(n);
|
|
4711
4621
|
continue;
|
|
4712
4622
|
}
|
|
4713
4623
|
continue;
|
|
4714
4624
|
}
|
|
4715
4625
|
if (Math.abs(t.x - n.x) < $ && Math.abs(n.x - r.x) < $) {
|
|
4716
4626
|
if (n.y > t.y != r.y > n.y) {
|
|
4717
|
-
|
|
4627
|
+
fe.push(n);
|
|
4718
4628
|
continue;
|
|
4719
4629
|
}
|
|
4720
4630
|
continue;
|
|
4721
4631
|
}
|
|
4722
|
-
|
|
4632
|
+
fe.push(n);
|
|
4723
4633
|
}
|
|
4724
|
-
|
|
4725
|
-
for (let e = 0; e <
|
|
4726
|
-
let n =
|
|
4634
|
+
fe.push(q[q.length - 1]);
|
|
4635
|
+
for (let e = 0; e < fe.length - 1; e++) {
|
|
4636
|
+
let n = fe[e], r = fe[e + 1], i = Math.abs(n.x - r.x) < $ ? "vertical" : "horizontal", a = i === "vertical" ? n.x : n.y, o = i === "vertical" ? Math.min(n.y, r.y) : Math.min(n.x, r.x), s = i === "vertical" ? Math.max(n.y, r.y) : Math.max(n.x, r.x), c = f(i, a, o, s), l = {
|
|
4727
4637
|
edgeIndex: t,
|
|
4728
4638
|
segmentIndex: e,
|
|
4729
4639
|
orientation: i,
|
|
@@ -4744,8 +4654,8 @@ function br(t, n) {
|
|
|
4744
4654
|
});
|
|
4745
4655
|
}
|
|
4746
4656
|
}
|
|
4747
|
-
let
|
|
4748
|
-
let i = !r.segments.some((n) => (n.edgeIndex !== t.edgeIndex || n.segmentIndex !== t.segmentIndex) &&
|
|
4657
|
+
let F = /* @__PURE__ */ e((e, t) => e.from < t.to && t.from < e.to, "segmentsOverlap"), I = /* @__PURE__ */ e((e, t, n, r) => {
|
|
4658
|
+
let i = !r.segments.some((n) => (n.edgeIndex !== t.edgeIndex || n.segmentIndex !== t.segmentIndex) && F(n, e)), a = !n.segments.some((n) => (n.edgeIndex !== e.edgeIndex || n.segmentIndex !== e.segmentIndex) && F(n, t));
|
|
4749
4659
|
return i && a ? (e.trackIndex = r.index, t.trackIndex = n.index, n.segments = [...n.segments.filter((t) => t.edgeIndex !== e.edgeIndex || t.segmentIndex !== e.segmentIndex), {
|
|
4750
4660
|
edgeIndex: t.edgeIndex,
|
|
4751
4661
|
segmentIndex: t.segmentIndex,
|
|
@@ -4757,14 +4667,14 @@ function br(t, n) {
|
|
|
4757
4667
|
from: e.from,
|
|
4758
4668
|
to: e.to
|
|
4759
4669
|
}], !0) : !1;
|
|
4760
|
-
}, "trySwapSegmentsAcrossTracks"),
|
|
4670
|
+
}, "trySwapSegmentsAcrossTracks"), L = /* @__PURE__ */ e((e) => {
|
|
4761
4671
|
let t = e.tracks.length;
|
|
4762
4672
|
return e.tracks[t] = {
|
|
4763
4673
|
index: t,
|
|
4764
4674
|
coord: e.coord,
|
|
4765
4675
|
segments: []
|
|
4766
4676
|
}, t;
|
|
4767
|
-
}, "createNewTrack"),
|
|
4677
|
+
}, "createNewTrack"), R = /* @__PURE__ */ e((e, t) => {
|
|
4768
4678
|
let n = e.pipe.tracks[e.trackIndex];
|
|
4769
4679
|
n.segments = n.segments.filter((t) => t.edgeIndex !== e.edgeIndex || t.segmentIndex !== e.segmentIndex), e.trackIndex = t, e.pipe.tracks[t].segments.push({
|
|
4770
4680
|
edgeIndex: e.edgeIndex,
|
|
@@ -4772,39 +4682,39 @@ function br(t, n) {
|
|
|
4772
4682
|
from: e.from,
|
|
4773
4683
|
to: e.to
|
|
4774
4684
|
});
|
|
4775
|
-
}, "moveSegmentToTrack"),
|
|
4685
|
+
}, "moveSegmentToTrack"), z = /* @__PURE__ */ e((e, t) => {
|
|
4776
4686
|
let n = g[e.edgeIndex];
|
|
4777
4687
|
for (let r of n) {
|
|
4778
4688
|
let n = h[r];
|
|
4779
|
-
n.pipe === e.pipe &&
|
|
4689
|
+
n.pipe === e.pipe && R(n, t);
|
|
4780
4690
|
}
|
|
4781
|
-
}, "moveSegmentChainToTrack"),
|
|
4691
|
+
}, "moveSegmentChainToTrack"), B = /* @__PURE__ */ e((e) => {
|
|
4782
4692
|
let t = g[e.edgeIndex], n = t.indexOf(h.indexOf(e)), r = [];
|
|
4783
4693
|
return n > 0 && r.push(h[t[n - 1]]), n < t.length - 1 && r.push(h[t[n + 1]]), r;
|
|
4784
|
-
}, "getAdjacentSegmentsAlongEdge"),
|
|
4694
|
+
}, "getAdjacentSegmentsAlongEdge"), re = /* @__PURE__ */ e((e, t) => {
|
|
4785
4695
|
if (e.orientation === t.orientation) return !1;
|
|
4786
4696
|
let n = e.orientation === "horizontal" ? e : t, r = e.orientation === "horizontal" ? t : e;
|
|
4787
4697
|
return r.pipe.coord > n.from && r.pipe.coord < n.to && n.pipe.coord > r.from && n.pipe.coord < r.to;
|
|
4788
|
-
}, "haveAnyCrossing"),
|
|
4789
|
-
for (let n of e.tracks) if (!n.segments.some((e) => (e.edgeIndex !== t.edgeIndex || e.segmentIndex !== t.segmentIndex) &&
|
|
4698
|
+
}, "haveAnyCrossing"), V = /* @__PURE__ */ e((e, t) => {
|
|
4699
|
+
for (let n of e.tracks) if (!n.segments.some((e) => (e.edgeIndex !== t.edgeIndex || e.segmentIndex !== t.segmentIndex) && F(e, t))) return n.index;
|
|
4790
4700
|
return -1;
|
|
4791
|
-
}, "findAvailableTrack"),
|
|
4792
|
-
if (e.trackIndex === t.trackIndex) return
|
|
4793
|
-
let n =
|
|
4794
|
-
return n.some((e) => r.some((t) =>
|
|
4795
|
-
}, "segmentsConflict"),
|
|
4796
|
-
if (
|
|
4797
|
-
let r =
|
|
4798
|
-
n(t, r === -1 ?
|
|
4799
|
-
}, "resolveTrackConflict"),
|
|
4701
|
+
}, "findAvailableTrack"), H = /* @__PURE__ */ e((e, t) => {
|
|
4702
|
+
if (e.trackIndex === t.trackIndex) return F(e, t);
|
|
4703
|
+
let n = B(e), r = B(t);
|
|
4704
|
+
return n.some((e) => r.some((t) => re(e, t)));
|
|
4705
|
+
}, "segmentsConflict"), ie = /* @__PURE__ */ e((e, t, n) => {
|
|
4706
|
+
if (I(e, t, e.pipe.tracks[e.trackIndex], t.pipe.tracks[t.trackIndex])) return;
|
|
4707
|
+
let r = V(e.pipe, t);
|
|
4708
|
+
n(t, r === -1 ? L(e.pipe) : r);
|
|
4709
|
+
}, "resolveTrackConflict"), ae = /* @__PURE__ */ e((e) => {
|
|
4800
4710
|
let t = 0;
|
|
4801
4711
|
for (let n = 0; n < e.length; n++) for (let r = n + 1; r < e.length; r++) {
|
|
4802
4712
|
let i = e[n], a = e[r];
|
|
4803
|
-
i.pipe === a.pipe &&
|
|
4713
|
+
i.pipe === a.pipe && H(i, a) && (t++, ie(i, a, z));
|
|
4804
4714
|
}
|
|
4805
4715
|
return t;
|
|
4806
|
-
}, "resolveHandleConflicts"),
|
|
4807
|
-
if (
|
|
4716
|
+
}, "resolveHandleConflicts"), U = /* @__PURE__ */ new Map(), W = /* @__PURE__ */ e((e) => {
|
|
4717
|
+
if (U.has(e)) return U.get(e);
|
|
4808
4718
|
let t = g[e];
|
|
4809
4719
|
if (t.length === 0) {
|
|
4810
4720
|
let t = {
|
|
@@ -4813,7 +4723,7 @@ function br(t, n) {
|
|
|
4813
4723
|
base: 0,
|
|
4814
4724
|
delta: 0
|
|
4815
4725
|
};
|
|
4816
|
-
return
|
|
4726
|
+
return U.set(e, t), t;
|
|
4817
4727
|
}
|
|
4818
4728
|
let n = h[t[0]].pipe.coord, r = n;
|
|
4819
4729
|
for (let e = 1; e < t.length; e++) {
|
|
@@ -4830,8 +4740,8 @@ function br(t, n) {
|
|
|
4830
4740
|
base: n,
|
|
4831
4741
|
delta: r - n
|
|
4832
4742
|
};
|
|
4833
|
-
return
|
|
4834
|
-
}, "getDestInfo"),
|
|
4743
|
+
return U.set(e, a), a;
|
|
4744
|
+
}, "getDestInfo"), G = /* @__PURE__ */ e(() => {
|
|
4835
4745
|
let t = 0, n = /* @__PURE__ */ new Map();
|
|
4836
4746
|
for (let [e, t] of a.entries()) g[e].length !== 0 && t.start && (n.has(t.start) || n.set(t.start, []), n.get(t.start).push(e));
|
|
4837
4747
|
let r = /* @__PURE__ */ e((e) => {
|
|
@@ -4844,7 +4754,7 @@ function br(t, n) {
|
|
|
4844
4754
|
}, "getEdgeDistance");
|
|
4845
4755
|
for (let e of n.values()) {
|
|
4846
4756
|
e.sort((e, t) => {
|
|
4847
|
-
let n =
|
|
4757
|
+
let n = W(e), i = W(t);
|
|
4848
4758
|
if (Math.abs(n.deviation - i.deviation) > 1) return n.deviation - i.deviation;
|
|
4849
4759
|
if (Math.abs(n.dest - i.dest) > 1) return n.dest - i.dest;
|
|
4850
4760
|
let a = r(e), o = r(t);
|
|
@@ -4861,10 +4771,10 @@ function br(t, n) {
|
|
|
4861
4771
|
return 0;
|
|
4862
4772
|
});
|
|
4863
4773
|
let n = e.map((e) => h[g[e][0]]);
|
|
4864
|
-
t +=
|
|
4774
|
+
t += ae(n);
|
|
4865
4775
|
}
|
|
4866
4776
|
return t;
|
|
4867
|
-
}, "fixSourceHandleCrossings"),
|
|
4777
|
+
}, "fixSourceHandleCrossings"), oe = /* @__PURE__ */ e(() => {
|
|
4868
4778
|
let t = 0, n = /* @__PURE__ */ new Map();
|
|
4869
4779
|
for (let [e, t] of a.entries()) g[e].length !== 0 && t.end && (n.has(t.end) || n.set(t.end, []), n.get(t.end).push(e));
|
|
4870
4780
|
for (let r of n.values()) {
|
|
@@ -4878,10 +4788,10 @@ function br(t, n) {
|
|
|
4878
4788
|
return Math.abs(i - a) > .1 ? i - a : t - n;
|
|
4879
4789
|
});
|
|
4880
4790
|
let n = r.map((e) => h[g[e][g[e].length - 1]]);
|
|
4881
|
-
t +=
|
|
4791
|
+
t += ae(n);
|
|
4882
4792
|
}
|
|
4883
4793
|
return t;
|
|
4884
|
-
}, "fixTargetHandleCrossings"),
|
|
4794
|
+
}, "fixTargetHandleCrossings"), se = /* @__PURE__ */ e(() => {
|
|
4885
4795
|
let e = 0;
|
|
4886
4796
|
for (let t of c) {
|
|
4887
4797
|
let n = [];
|
|
@@ -4892,17 +4802,17 @@ function br(t, n) {
|
|
|
4892
4802
|
n.sort((e, t) => e.edgeIndex - t.edgeIndex || e.segmentIndex - t.segmentIndex);
|
|
4893
4803
|
for (let t = 0; t < n.length; t++) for (let r = t + 1; r < n.length; r++) {
|
|
4894
4804
|
let i = n[t], a = n[r];
|
|
4895
|
-
|
|
4805
|
+
H(i, a) && (e++, ie(i, a, R));
|
|
4896
4806
|
}
|
|
4897
4807
|
}
|
|
4898
4808
|
return e;
|
|
4899
|
-
}, "fixPipeCrossings"),
|
|
4900
|
-
for (;
|
|
4809
|
+
}, "fixPipeCrossings"), K = 0;
|
|
4810
|
+
for (; K < 10;) {
|
|
4901
4811
|
let e = 0;
|
|
4902
|
-
if (e +=
|
|
4903
|
-
|
|
4812
|
+
if (e += G(), e += oe(), e += se(), e === 0) break;
|
|
4813
|
+
K++;
|
|
4904
4814
|
}
|
|
4905
|
-
let
|
|
4815
|
+
let ce = /* @__PURE__ */ new Map();
|
|
4906
4816
|
for (let t of c) {
|
|
4907
4817
|
let n = [];
|
|
4908
4818
|
t.tracks.forEach((e) => {
|
|
@@ -4930,7 +4840,7 @@ function br(t, n) {
|
|
|
4930
4840
|
n.forEach((e) => r.add(e.trackIndex));
|
|
4931
4841
|
let i = /* @__PURE__ */ new Map();
|
|
4932
4842
|
n.forEach((e) => {
|
|
4933
|
-
let t =
|
|
4843
|
+
let t = W(e.edgeIndex);
|
|
4934
4844
|
i.set(e.trackIndex, (i.get(e.trackIndex) ?? 0) + t.delta);
|
|
4935
4845
|
});
|
|
4936
4846
|
let a = [...r].filter((e) => (i.get(e) ?? 0) < -1), o = [...r].filter((e) => (i.get(e) ?? 0) > 1), s = [...r].filter((e) => Math.abs(i.get(e) ?? 0) <= 1);
|
|
@@ -4938,10 +4848,10 @@ function br(t, n) {
|
|
|
4938
4848
|
let c = /* @__PURE__ */ e((e, r) => {
|
|
4939
4849
|
n.filter((t) => t.trackIndex === e).forEach((e) => {
|
|
4940
4850
|
let n = _.has(e.edgeIndex) ? t.coord : r;
|
|
4941
|
-
|
|
4851
|
+
ce.set(`${e.edgeIndex}-${e.segmentIndex}`, n);
|
|
4942
4852
|
});
|
|
4943
4853
|
}, "assignCoord"), l = 0;
|
|
4944
|
-
for (let e of a) l++, c(e, t.coord - l *
|
|
4854
|
+
for (let e of a) l++, c(e, t.coord - l * Qn);
|
|
4945
4855
|
if (s.length === 0 && r.size > 0) {
|
|
4946
4856
|
let e = [...r].sort((e, t) => Math.abs(i.get(e) ?? 0) - Math.abs(i.get(t) ?? 0))[0], t = a.indexOf(e);
|
|
4947
4857
|
t !== -1 && a.splice(t, 1);
|
|
@@ -4953,19 +4863,19 @@ function br(t, n) {
|
|
|
4953
4863
|
if (u === 0) c(e, t.coord);
|
|
4954
4864
|
else {
|
|
4955
4865
|
let n = u % 2 == 1 ? 1 : -1, r = Math.ceil(u / 2);
|
|
4956
|
-
c(e, t.coord + n * r *
|
|
4866
|
+
c(e, t.coord + n * r * Qn * .5);
|
|
4957
4867
|
}
|
|
4958
4868
|
u++;
|
|
4959
4869
|
}
|
|
4960
4870
|
let d = 0;
|
|
4961
|
-
for (let e of o) d++, c(e, t.coord + d *
|
|
4871
|
+
for (let e of o) d++, c(e, t.coord + d * Qn);
|
|
4962
4872
|
}
|
|
4963
4873
|
}
|
|
4964
4874
|
for (let [e, t] of a.entries()) {
|
|
4965
4875
|
let n = g[e] ?? [];
|
|
4966
4876
|
if (n.length === 0) continue;
|
|
4967
|
-
let r = [], { pSrcPort: i, pDstPort: a } =
|
|
4968
|
-
let t = h[e], n =
|
|
4877
|
+
let r = [], { pSrcPort: i, pDstPort: a } = P(e, o.get(t.start), o.get(t.end)), s = n.map((e) => {
|
|
4878
|
+
let t = h[e], n = ce.get(`${t.edgeIndex}-${t.segmentIndex}`) ?? t.pipe.coord;
|
|
4969
4879
|
return {
|
|
4970
4880
|
orient: t.orientation,
|
|
4971
4881
|
coord: n,
|
|
@@ -4976,14 +4886,15 @@ function br(t, n) {
|
|
|
4976
4886
|
r.push(i);
|
|
4977
4887
|
for (let e = 0; e < s.length; e++) {
|
|
4978
4888
|
let t = s[e], n = r[r.length - 1], i = t.orient === "vertical" ? n.y : n.x, a = t.orient === "vertical" ? n.x : n.y, o = s[e + 1], c = e < s.length - 1;
|
|
4979
|
-
if (Math.abs(a - t.coord) > $ && r.push(
|
|
4980
|
-
|
|
4981
|
-
|
|
4982
|
-
|
|
4983
|
-
|
|
4889
|
+
if (Math.abs(a - t.coord) > $ && r.push(tr(t, i)), c && o.orient === t.orient) {
|
|
4890
|
+
if (Math.abs(t.coord - o.coord) > $) {
|
|
4891
|
+
let e = t.orient === "vertical" ? (i + o.from) / 2 : er(t, o);
|
|
4892
|
+
r.push(tr(t, e), tr(o, e));
|
|
4893
|
+
} else (e === 0 || e === s.length - 2) && r.push(tr(t, er(t, o)));
|
|
4894
|
+
} else if (c) r.push(tr(t, o.coord));
|
|
4984
4895
|
else {
|
|
4985
4896
|
let e = Math.abs(t.from - i) < Math.abs(t.to - i) ? t.to : t.from;
|
|
4986
|
-
r.push(
|
|
4897
|
+
r.push(tr(t, e));
|
|
4987
4898
|
}
|
|
4988
4899
|
}
|
|
4989
4900
|
let c = r[r.length - 1];
|
|
@@ -5001,7 +4912,7 @@ function br(t, n) {
|
|
|
5001
4912
|
t && e.points && (t.points = e.points);
|
|
5002
4913
|
}
|
|
5003
4914
|
t.edges = (t.edges ?? []).filter((e) => !e.isLayoutOnly);
|
|
5004
|
-
let
|
|
4915
|
+
let le = /* @__PURE__ */ e((e, t) => {
|
|
5005
4916
|
let n = t.x ?? 0, r = t.y ?? 0, i = t.width ?? 0, a = t.height ?? 0;
|
|
5006
4917
|
if (i <= 0 || a <= 0) return e;
|
|
5007
4918
|
let o = n - i / 2, s = n + i / 2, c = r - a / 2, l = r + a / 2;
|
|
@@ -5025,17 +4936,17 @@ function br(t, n) {
|
|
|
5025
4936
|
let t = e.points;
|
|
5026
4937
|
if (!t || t.length < 2) continue;
|
|
5027
4938
|
let n = e.start, r = e.end, i = n ? o.get(n) : void 0, a = r ? o.get(r) : void 0;
|
|
5028
|
-
i && (t[0] =
|
|
4939
|
+
i && (t[0] = le(t[0], i)), a && (t[t.length - 1] = le(t[t.length - 1], a));
|
|
5029
4940
|
}
|
|
5030
4941
|
return t;
|
|
5031
4942
|
}
|
|
5032
|
-
e(
|
|
5033
|
-
function
|
|
4943
|
+
e(nr, "routeEdgesOrthogonal");
|
|
4944
|
+
function rr(e) {
|
|
5034
4945
|
return e.direction ?? "TB";
|
|
5035
4946
|
}
|
|
5036
|
-
e(
|
|
5037
|
-
function
|
|
5038
|
-
let t =
|
|
4947
|
+
e(rr, "getSwimlaneDirection");
|
|
4948
|
+
function ir(e) {
|
|
4949
|
+
let t = A(e), n = e.config.flowchart?.nodeSpacing ?? 40, r = e.config.flowchart?.rankSpacing ?? 100, i = e.config.swimlane?.ignoreCrossLaneEdges ?? !0, a = e.config.swimlane?.optimizeRanksByCrossings ?? !0, o = e.config.swimlane?.automaticLaneOrdering ?? !1, s = rr(e), { ordered: c, coordinates: l } = Kn(t, {
|
|
5039
4950
|
nodeGap: n,
|
|
5040
4951
|
layerGap: r,
|
|
5041
4952
|
ignoreCrossLaneEdges: i,
|
|
@@ -5043,24 +4954,26 @@ function Sr(e) {
|
|
|
5043
4954
|
automaticLaneOrdering: o,
|
|
5044
4955
|
direction: s
|
|
5045
4956
|
});
|
|
5046
|
-
|
|
4957
|
+
j(t, c, l, {
|
|
5047
4958
|
nodeGap: n,
|
|
5048
4959
|
layerGap: r
|
|
5049
4960
|
});
|
|
5050
4961
|
for (let t of e.edges ?? []) delete t.points;
|
|
5051
|
-
|
|
4962
|
+
nr(e, s);
|
|
5052
4963
|
for (let t of e.edges ?? []) (!t.curve || t.curve === "basis") && (t.curve = "rounded");
|
|
5053
|
-
return
|
|
5054
|
-
}
|
|
5055
|
-
e(
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
-
|
|
5059
|
-
|
|
5060
|
-
|
|
5061
|
-
|
|
5062
|
-
|
|
5063
|
-
|
|
5064
|
-
|
|
4964
|
+
return It(e, s), Ft(e), s;
|
|
4965
|
+
}
|
|
4966
|
+
e(ir, "runSwimlaneLayoutCore");
|
|
4967
|
+
function ar(e) {
|
|
4968
|
+
k(e);
|
|
4969
|
+
let t = te(e);
|
|
4970
|
+
e.nodes = t.nodes, e.edges = t.edges;
|
|
4971
|
+
}
|
|
4972
|
+
e(ar, "prepareSwimlaneLayout");
|
|
4973
|
+
var or = r({
|
|
4974
|
+
prepareLayout: ar,
|
|
4975
|
+
runLayoutCore: ir,
|
|
4976
|
+
afterPaint: C
|
|
4977
|
+
});
|
|
5065
4978
|
//#endregion
|
|
5066
|
-
export {
|
|
4979
|
+
export { or as render };
|