doclific 0.2.8 → 0.3.0
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/bin/doclific.js +50 -1
- package/dist/core/ai.js +140 -0
- package/dist/core/codebase.js +49 -3
- package/dist/public/assets/Assistant-Bold-gm-uSS1B.woff2 +0 -0
- package/dist/public/assets/Assistant-Medium-DrcxCXg3.woff2 +0 -0
- package/dist/public/assets/Assistant-Regular-DVxZuzxb.woff2 +0 -0
- package/dist/public/assets/Assistant-SemiBold-SCI4bEL9.woff2 +0 -0
- package/dist/public/assets/Preview-CfLVfmH2.js +1 -0
- package/dist/public/assets/Preview-yL612J-Y.js +1 -0
- package/dist/public/assets/Tableau10-B-NsZVaP.js +1 -0
- package/dist/public/assets/ar-SA-G6X2FPQ2-nSShYC9c.js +10 -0
- package/dist/public/assets/ar-SA-G6X2FPQ2-zGa4nmKj.js +10 -0
- package/dist/public/assets/arc-DPZnwcfX.js +1 -0
- package/dist/public/assets/arc-RHlRFoUH.js +1 -0
- package/dist/public/assets/array-BKyUJesY.js +1 -0
- package/dist/public/assets/az-AZ-76LH7QW2-2ofaYqg_.js +1 -0
- package/dist/public/assets/az-AZ-76LH7QW2-DulzdJU-.js +1 -0
- package/dist/public/assets/bg-BG-XCXSNQG7-bifIDIiP.js +5 -0
- package/dist/public/assets/bg-BG-XCXSNQG7-djDKLEln.js +5 -0
- package/dist/public/assets/blockDiagram-38ab4fdb-BpDJl5wM.js +118 -0
- package/dist/public/assets/blockDiagram-38ab4fdb-CkyydZLe.js +118 -0
- package/dist/public/assets/bn-BD-2XOGV67Q-BvjZoveq.js +5 -0
- package/dist/public/assets/bn-BD-2XOGV67Q-DHBogyv-.js +5 -0
- package/dist/public/assets/c4Diagram-3d4e48cf-R8x2FAAi.js +10 -0
- package/dist/public/assets/c4Diagram-3d4e48cf-aEsToGmZ.js +10 -0
- package/dist/public/assets/ca-ES-6MX7JW3Y-OWWCWvuP.js +8 -0
- package/dist/public/assets/ca-ES-6MX7JW3Y-_GJrF93G.js +8 -0
- package/dist/public/assets/channel-BE2ulzlx.js +1 -0
- package/dist/public/assets/channel-DzTwH3ut.js +1 -0
- package/dist/public/assets/classDiagram-70f12bd4-BP-7G8u1.js +2 -0
- package/dist/public/assets/classDiagram-70f12bd4-BTycZwZN.js +2 -0
- package/dist/public/assets/classDiagram-v2-f2320105-k8KFvaSn.js +2 -0
- package/dist/public/assets/classDiagram-v2-f2320105-k_XaW7Mw.js +2 -0
- package/dist/public/assets/clone-axZLZjOa.js +1 -0
- package/dist/public/assets/clone-rdfclP1b.js +1 -0
- package/dist/public/assets/createText-2e5e7dd3-Cbi8xL03.js +7 -0
- package/dist/public/assets/createText-2e5e7dd3-DuYw4Tl5.js +7 -0
- package/dist/public/assets/cs-CZ-2BRQDIVT-B2fBOA1Y.js +11 -0
- package/dist/public/assets/cs-CZ-2BRQDIVT-CP9xiC8w.js +11 -0
- package/dist/public/assets/da-DK-5WZEPLOC-Cpbm5Bju.js +5 -0
- package/dist/public/assets/da-DK-5WZEPLOC-dDp_pJjn.js +5 -0
- package/dist/public/assets/de-DE-XR44H4JA-D8rOmKQW.js +8 -0
- package/dist/public/assets/de-DE-XR44H4JA-DC6YpEoE.js +8 -0
- package/dist/public/assets/directory-open-01563666-DWU9wJ6I.js +1 -0
- package/dist/public/assets/directory-open-4ed118d0-CunoC1EB.js +1 -0
- package/dist/public/assets/edges-e0da2a9e-Cv6SpBo3.js +4 -0
- package/dist/public/assets/edges-e0da2a9e-DfbFOUG6.js +4 -0
- package/dist/public/assets/el-GR-BZB4AONW-BgQNs1cl.js +10 -0
- package/dist/public/assets/el-GR-BZB4AONW-BulpRKs1.js +10 -0
- package/dist/public/assets/erDiagram-9861fffd-BFVcrfkn.js +51 -0
- package/dist/public/assets/erDiagram-9861fffd-CLds4aY4.js +51 -0
- package/dist/public/assets/es-ES-U4NZUMDT-C1M-3kUi.js +9 -0
- package/dist/public/assets/es-ES-U4NZUMDT-Ct28khSM.js +9 -0
- package/dist/public/assets/eu-ES-A7QVB2H4-CbyIkWcA.js +11 -0
- package/dist/public/assets/eu-ES-A7QVB2H4-sIoA4F86.js +11 -0
- package/dist/public/assets/fa-IR-HGAKTJCU-CBLdXTih.js +8 -0
- package/dist/public/assets/fa-IR-HGAKTJCU-CtmSfjBe.js +8 -0
- package/dist/public/assets/fi-FI-Z5N7JZ37-BzRFOkPN.js +6 -0
- package/dist/public/assets/fi-FI-Z5N7JZ37-CkqAf83a.js +6 -0
- package/dist/public/assets/file-open-002ab408-DIuFHtCF.js +1 -0
- package/dist/public/assets/file-open-7c801643-684qeFg4.js +1 -0
- package/dist/public/assets/file-save-3189631c-C1wFhQhH.js +1 -0
- package/dist/public/assets/file-save-745eba88-Bb9F9Kg7.js +1 -0
- package/dist/public/assets/flowDb-956e92f1-D2t0qhMs.js +10 -0
- package/dist/public/assets/flowDb-956e92f1-VASBzIvX.js +10 -0
- package/dist/public/assets/flowDiagram-66a62f08-00amExuc.js +4 -0
- package/dist/public/assets/flowDiagram-66a62f08-n0k1fu1f.js +4 -0
- package/dist/public/assets/flowDiagram-v2-96b9c2cf-DPV3KQs-.js +1 -0
- package/dist/public/assets/flowDiagram-v2-96b9c2cf-DvEC9OW-.js +1 -0
- package/dist/public/assets/flowchart-elk-definition-4a651766-Ckm-u0tB.js +139 -0
- package/dist/public/assets/flowchart-elk-definition-4a651766-DuK0a8x4.js +139 -0
- package/dist/public/assets/fr-FR-RHASNOE6-B0ZsTvE2.js +9 -0
- package/dist/public/assets/fr-FR-RHASNOE6-BLTlR38v.js +9 -0
- package/dist/public/assets/ganttDiagram-c361ad54--PpHRpmK.js +257 -0
- package/dist/public/assets/ganttDiagram-c361ad54-Bfv8sOWo.js +257 -0
- package/dist/public/assets/gitGraphDiagram-72cf32ee-CJcs55Tw.js +70 -0
- package/dist/public/assets/gitGraphDiagram-72cf32ee-wLpa30-u.js +70 -0
- package/dist/public/assets/gl-ES-HMX3MZ6V-8Dvu3COr.js +10 -0
- package/dist/public/assets/gl-ES-HMX3MZ6V-DiriMGaf.js +10 -0
- package/dist/public/assets/graph-CI2pnyC5.js +1 -0
- package/dist/public/assets/graph-CzpZTUYm.js +1 -0
- package/dist/public/assets/he-IL-6SHJWFNN-BGgOoPZG.js +10 -0
- package/dist/public/assets/he-IL-6SHJWFNN-CIKv515H.js +10 -0
- package/dist/public/assets/hi-IN-IWLTKZ5I-C4QTfw3M.js +4 -0
- package/dist/public/assets/hi-IN-IWLTKZ5I-Dq9i2dbW.js +4 -0
- package/dist/public/assets/hu-HU-A5ZG7DT2-DGtzDRRU.js +7 -0
- package/dist/public/assets/hu-HU-A5ZG7DT2-EAD1mJZb.js +7 -0
- package/dist/public/assets/id-ID-SAP4L64H-B951c4Ob.js +10 -0
- package/dist/public/assets/id-ID-SAP4L64H-CzcaN-wr.js +10 -0
- package/dist/public/assets/image-blob-reduce.esm-BLtmMM_J.js +2 -0
- package/dist/public/assets/index-3862675e-BHyuTWf3.js +1 -0
- package/dist/public/assets/index-3862675e-CyylykW1.js +1 -0
- package/dist/public/assets/index-BMiq8nhK.js +95 -0
- package/dist/public/assets/index-BZnxyWWd.js +613 -0
- package/dist/public/assets/index-Bu97Fipb.js +95 -0
- package/dist/public/assets/index-CbwMLPrZ.css +1 -0
- package/dist/public/assets/index-CpBi0vus.js +3299 -0
- package/dist/public/assets/index-Cr2gUYn7.js +613 -0
- package/dist/public/assets/index-DTAYnrjZ.css +1 -0
- package/dist/public/assets/index-rmPcGL9S.js +3299 -0
- package/dist/public/assets/infoDiagram-f8f76790-Bzs_oiEq.js +7 -0
- package/dist/public/assets/infoDiagram-f8f76790-DnC7uKZu.js +7 -0
- package/dist/public/assets/init-Gi6I4Gst.js +1 -0
- package/dist/public/assets/it-IT-JPQ66NNP-DEqzEHhG.js +11 -0
- package/dist/public/assets/it-IT-JPQ66NNP-FqEOs8V_.js +11 -0
- package/dist/public/assets/ja-JP-DBVTYXUO-1bI1uZ7i.js +8 -0
- package/dist/public/assets/ja-JP-DBVTYXUO-DQOZh6jj.js +8 -0
- package/dist/public/assets/journeyDiagram-49397b02-B8902FwX.js +139 -0
- package/dist/public/assets/journeyDiagram-49397b02-hbhF2GTs.js +139 -0
- package/dist/public/assets/kaa-6HZHGXH3-CIEfiJBq.js +1 -0
- package/dist/public/assets/kaa-6HZHGXH3-DAsn8pMz.js +1 -0
- package/dist/public/assets/kab-KAB-ZGHBKWFO-DufzFqgZ.js +8 -0
- package/dist/public/assets/kab-KAB-ZGHBKWFO-hbSn2yHo.js +8 -0
- package/dist/public/assets/kk-KZ-P5N5QNE5-CY4y9tDn.js +1 -0
- package/dist/public/assets/kk-KZ-P5N5QNE5-DJbDGpSa.js +1 -0
- package/dist/public/assets/km-KH-HSX4SM5Z-5whf9ZS1.js +11 -0
- package/dist/public/assets/km-KH-HSX4SM5Z-CF1cSYpx.js +11 -0
- package/dist/public/assets/ko-KR-MTYHY66A-CSj-Cw0T.js +9 -0
- package/dist/public/assets/ko-KR-MTYHY66A-D0j8sNVo.js +9 -0
- package/dist/public/assets/ku-TR-6OUDTVRD-DZ47lKMP.js +9 -0
- package/dist/public/assets/ku-TR-6OUDTVRD-ETLSr72d.js +9 -0
- package/dist/public/assets/layout-Ch5pbbc5.js +1 -0
- package/dist/public/assets/layout-DWyqbrTF.js +1 -0
- package/dist/public/assets/line-BEMT2b8O.js +1 -0
- package/dist/public/assets/line-OgJiSIcA.js +1 -0
- package/dist/public/assets/linear-DrlVBQ0m.js +1 -0
- package/dist/public/assets/linear-lQEAUsIr.js +1 -0
- package/dist/public/assets/lt-LT-XHIRWOB4-B_rQQq9i.js +3 -0
- package/dist/public/assets/lt-LT-XHIRWOB4-VDM_qh72.js +3 -0
- package/dist/public/assets/lv-LV-5QDEKY6T-CLpzoE_t.js +7 -0
- package/dist/public/assets/lv-LV-5QDEKY6T-owXNC2sk.js +7 -0
- package/dist/public/assets/mindmap-definition-fc14e90a-4BkML5nr.js +415 -0
- package/dist/public/assets/mindmap-definition-fc14e90a-I2HuZmtK.js +415 -0
- package/dist/public/assets/mr-IN-CRQNXWMA-BUEgszaQ.js +13 -0
- package/dist/public/assets/mr-IN-CRQNXWMA-mcuymSpi.js +13 -0
- package/dist/public/assets/my-MM-5M5IBNSE-BiJAlR2l.js +1 -0
- package/dist/public/assets/my-MM-5M5IBNSE-Dn6dj_g-.js +1 -0
- package/dist/public/assets/nb-NO-T6EIAALU-CDRfxO5D.js +10 -0
- package/dist/public/assets/nb-NO-T6EIAALU-W5EpHGX0.js +10 -0
- package/dist/public/assets/nl-NL-IS3SIHDZ-C7BWZ57w.js +8 -0
- package/dist/public/assets/nl-NL-IS3SIHDZ-D4djrptd.js +8 -0
- package/dist/public/assets/nn-NO-6E72VCQL-BjqkP7Au.js +8 -0
- package/dist/public/assets/nn-NO-6E72VCQL-DgWcUCmS.js +8 -0
- package/dist/public/assets/oc-FR-POXYY2M6-C64no2Sz.js +8 -0
- package/dist/public/assets/oc-FR-POXYY2M6-hkWhLsfj.js +8 -0
- package/dist/public/assets/ordinal-Cboi1Yqb.js +1 -0
- package/dist/public/assets/pa-IN-N4M65BXN-BzVAnhAz.js +4 -0
- package/dist/public/assets/pa-IN-N4M65BXN-CdXAiUa-.js +4 -0
- package/dist/public/assets/path-CbwjOpE9.js +1 -0
- package/dist/public/assets/percentages-BXMCSKIN-B0roEqNs.js +159 -0
- package/dist/public/assets/percentages-BXMCSKIN-DmjnxD3b.js +159 -0
- package/dist/public/assets/pica-BI1bTxzy.js +2 -0
- package/dist/public/assets/pica-UyEFQr7o.js +2 -0
- package/dist/public/assets/pieDiagram-8a3498a8-BnZKl0HM.js +35 -0
- package/dist/public/assets/pieDiagram-8a3498a8-DToH0Umi.js +35 -0
- package/dist/public/assets/pl-PL-T2D74RX3-BfktR2GC.js +9 -0
- package/dist/public/assets/pl-PL-T2D74RX3-I3Od_pte.js +9 -0
- package/dist/public/assets/pt-BR-5N22H2LF-BMS0hGhj.js +9 -0
- package/dist/public/assets/pt-BR-5N22H2LF-DDlkalmL.js +9 -0
- package/dist/public/assets/pt-PT-UZXXM6DQ-BVksmEeI.js +9 -0
- package/dist/public/assets/pt-PT-UZXXM6DQ-Clt_m-aW.js +9 -0
- package/dist/public/assets/quadrantDiagram-120e2f19-CIZifO3c.js +7 -0
- package/dist/public/assets/quadrantDiagram-120e2f19-Cle8VMl3.js +7 -0
- package/dist/public/assets/react-8ZZPYhoA.js +6 -0
- package/dist/public/assets/react-AWXP2p19.js +6 -0
- package/dist/public/assets/react-B3b69yLH.js +21 -0
- package/dist/public/assets/react-BY3n_q7a.js +19 -0
- package/dist/public/assets/react-BZVgOt_z.js +22 -0
- package/dist/public/assets/react-BxN1Fkhi.js +34 -0
- package/dist/public/assets/react-COPmcfNO.js +1 -0
- package/dist/public/assets/react-Cgkl0rf4.js +19 -0
- package/dist/public/assets/react-D70vKkpT.js +19 -0
- package/dist/public/assets/react-DBLYdRms.js +21 -0
- package/dist/public/assets/react-DGFZQemO.js +1 -0
- package/dist/public/assets/react-DMuqKR18.js +17 -0
- package/dist/public/assets/react-DPzOK4iK.js +17 -0
- package/dist/public/assets/react-Ds4RMtsz.js +19 -0
- package/dist/public/assets/react-JOrDKzAZ.js +34 -0
- package/dist/public/assets/react-XtS51ONh.js +22 -0
- package/dist/public/assets/requirementDiagram-deff3bca-CYs2kOsx.js +52 -0
- package/dist/public/assets/requirementDiagram-deff3bca-D-aHYgF7.js +52 -0
- package/dist/public/assets/ro-RO-JPDTUUEW-8VZwJRTB.js +11 -0
- package/dist/public/assets/ro-RO-JPDTUUEW-CFz9EPTz.js +11 -0
- package/dist/public/assets/roundRect-mAH3dD0p.js +1 -0
- package/dist/public/assets/ru-RU-B4JR7IUQ-DXB6WjCJ.js +9 -0
- package/dist/public/assets/ru-RU-B4JR7IUQ-Dg_Ptvez.js +9 -0
- package/dist/public/assets/sankeyDiagram-04a897e0-CjgF0ShR.js +8 -0
- package/dist/public/assets/sankeyDiagram-04a897e0-Dfqu1Z59.js +8 -0
- package/dist/public/assets/sequenceDiagram-704730f1-DwTvFI-O.js +122 -0
- package/dist/public/assets/sequenceDiagram-704730f1-YZDjgz23.js +122 -0
- package/dist/public/assets/si-LK-N5RQ5JYF-3OCpve4d.js +1 -0
- package/dist/public/assets/si-LK-N5RQ5JYF-BGL74ce-.js +1 -0
- package/dist/public/assets/sk-SK-C5VTKIMK-BEWKAYUl.js +6 -0
- package/dist/public/assets/sk-SK-C5VTKIMK-a7S9S07m.js +6 -0
- package/dist/public/assets/sl-SI-NN7IZMDC-C_2tXhis.js +6 -0
- package/dist/public/assets/sl-SI-NN7IZMDC-CjuniHw8.js +6 -0
- package/dist/public/assets/stateDiagram-587899a1-BYww5TLf.js +1 -0
- package/dist/public/assets/stateDiagram-587899a1-CJKF3UH6.js +1 -0
- package/dist/public/assets/stateDiagram-v2-d93cdb3a-CuD2RI5c.js +1 -0
- package/dist/public/assets/stateDiagram-v2-d93cdb3a-_alqERD3.js +1 -0
- package/dist/public/assets/styles-6aaf32cf-D-L1HpzD.js +207 -0
- package/dist/public/assets/styles-6aaf32cf-DD-NSjsR.js +207 -0
- package/dist/public/assets/styles-9a916d00-CEw3szBU.js +160 -0
- package/dist/public/assets/styles-9a916d00-VifZbF1m.js +160 -0
- package/dist/public/assets/styles-c10674c1-BmyOVyx7.js +116 -0
- package/dist/public/assets/styles-c10674c1-PtYrOZV8.js +116 -0
- package/dist/public/assets/subset-shared.chunk-Brk9kdoc.js +22 -0
- package/dist/public/assets/subset-shared.chunk-BwUUnLRt.js +22 -0
- package/dist/public/assets/subset-worker.chunk-CHKbzn25.js +1 -0
- package/dist/public/assets/subset-worker.chunk-DA7gR3-1.js +1 -0
- package/dist/public/assets/sv-SE-XGPEYMSR-C02T2BPU.js +10 -0
- package/dist/public/assets/sv-SE-XGPEYMSR-tBT_anCV.js +10 -0
- package/dist/public/assets/svgDrawCommon-08f97a94-CEqvQOUt.js +1 -0
- package/dist/public/assets/svgDrawCommon-08f97a94-DKUomX3W.js +1 -0
- package/dist/public/assets/ta-IN-2NMHFXQM-BqK8b4tL.js +9 -0
- package/dist/public/assets/ta-IN-2NMHFXQM-Dwu_LpR7.js +9 -0
- package/dist/public/assets/th-TH-HPSO5L25-BAmgMbAJ.js +2 -0
- package/dist/public/assets/th-TH-HPSO5L25-DKdxRh3E.js +2 -0
- package/dist/public/assets/timeline-definition-85554ec2-B0w8BliX.js +61 -0
- package/dist/public/assets/timeline-definition-85554ec2-CFt0t_Cz.js +61 -0
- package/dist/public/assets/tr-TR-DEFEU3FU-8fP_g7lX.js +7 -0
- package/dist/public/assets/tr-TR-DEFEU3FU-vTO9xmBO.js +7 -0
- package/dist/public/assets/uk-UA-QMV73CPH-Mx0VvPGB.js +6 -0
- package/dist/public/assets/uk-UA-QMV73CPH-yUd9Af6s.js +6 -0
- package/dist/public/assets/vi-VN-M7AON7JQ-Cy6tHM0s.js +5 -0
- package/dist/public/assets/vi-VN-M7AON7JQ-_lTRG-8u.js +5 -0
- package/dist/public/assets/xychartDiagram-e933f94c-2LytheaB.js +7 -0
- package/dist/public/assets/xychartDiagram-e933f94c-3I_ghsu8.js +7 -0
- package/dist/public/assets/zh-CN-LNUGB5OW-BKmxs4M8.js +10 -0
- package/dist/public/assets/zh-CN-LNUGB5OW-CEpRPAMM.js +10 -0
- package/dist/public/assets/zh-HK-E62DVLB3-B7dqTsZx.js +1 -0
- package/dist/public/assets/zh-HK-E62DVLB3-CB9sD2Uu.js +1 -0
- package/dist/public/assets/zh-TW-RAJ6MFWO-C9A8RaNK.js +9 -0
- package/dist/public/assets/zh-TW-RAJ6MFWO-TZmXrCyi.js +9 -0
- package/dist/public/index.html +3 -3
- package/dist/server/index.js +1 -1
- package/dist/server/router.js +9 -0
- package/package.json +7 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as N,G as A}from"./graph-CI2pnyC5.js";import{m as $,l as H}from"./layout-DWyqbrTF.js";import{c as V}from"./clone-rdfclP1b.js";import{i as U,u as W,s as _,c as q,b as z,g as D,d as O,a as K,p as Q,e as p,f as J,h as Y,j as Z}from"./edges-e0da2a9e-DfbFOUG6.js";import{l as s,g as T,t as S,d as L}from"./index-BMiq8nhK.js";import{c as I}from"./createText-2e5e7dd3-DuYw4Tl5.js";function m(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:tt(e),edges:et(e)};return N(e.graph())||(t.value=V(e.graph())),t}function tt(e){return $(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),i={v:t};return N(n)||(i.value=n),N(r)||(i.parent=r),i})}function et(e){return $(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return N(t.name)||(r.name=t.name),N(n)||(r.value=n),r})}let l={},g={},R={};const nt=()=>{g={},R={},l={}},B=(e,t)=>(s.trace("In isDescendant",t," ",e," = ",g[t].includes(e)),!!g[t].includes(e)),it=(e,t)=>(s.info("Descendants of ",t," is ",g[t]),s.info("Edge is ",e),e.v===t||e.w===t?!1:g[t]?g[t].includes(e.v)||B(e.v,t)||B(e.w,t)||g[t].includes(e.w):(s.debug("Tilt, ",t,",not in descendants"),!1)),P=(e,t,n,r)=>{s.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const i=t.children(e)||[];e!==r&&i.push(e),s.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(a=>{if(t.children(a).length>0)P(a,t,n,r);else{const d=t.node(a);s.info("cp ",a," to ",r," with parent ",e),n.setNode(a,d),r!==t.parent(a)&&(s.warn("Setting parent",a,t.parent(a)),n.setParent(a,t.parent(a))),e!==r&&a!==e?(s.debug("Setting parent",a,e),n.setParent(a,e)):(s.info("In copy ",e,"root",r,"data",t.node(e),r),s.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==r,"node!==clusterId",a!==e));const u=t.edges(a);s.debug("Copying Edges",u),u.forEach(f=>{s.info("Edge",f);const h=t.edge(f.v,f.w,f.name);s.info("Edge data",h,r);try{it(f,r)?(s.info("Copying as ",f.v,f.w,h,f.name),n.setEdge(f.v,f.w,h,f.name),s.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):s.info("Skipping copy of edge ",f.v,"-->",f.w," rootId: ",r," clusterId:",e)}catch(w){s.error(w)}})}s.debug("Removing node",a),t.removeNode(a)})},k=(e,t)=>{const n=t.children(e);let r=[...n];for(const i of n)R[i]=e,r=[...r,...k(i,t)];return r},C=(e,t)=>{s.trace("Searching",e);const n=t.children(e);if(s.trace("Searching children of id ",e,n),n.length<1)return s.trace("This is a valid node",e),e;for(const r of n){const i=C(r,t);if(i)return s.trace("Found replacement for",e," => ",i),i}},X=e=>!l[e]||!l[e].externalConnections?e:l[e]?l[e].id:e,st=(e,t)=>{if(!e||t>10){s.debug("Opting out, no graph ");return}else s.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(s.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),g[n]=k(n,e),l[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),i=e.edges();r.length>0?(s.debug("Cluster identified",n,g),i.forEach(a=>{if(a.v!==n&&a.w!==n){const d=B(a.v,n),u=B(a.w,n);d^u&&(s.warn("Edge: ",a," leaves cluster ",n),s.warn("Descendants of XXX ",n,": ",g[n]),l[n].externalConnections=!0)}})):s.debug("Not a cluster ",n,g)});for(let n of Object.keys(l)){const r=l[n].id,i=e.parent(r);i!==n&&l[i]&&!l[i].externalConnections&&(l[n].id=i)}e.edges().forEach(function(n){const r=e.edge(n);s.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),s.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let i=n.v,a=n.w;if(s.warn("Fix XXX",l,"ids:",n.v,n.w,"Translating: ",l[n.v]," --- ",l[n.w]),l[n.v]&&l[n.w]&&l[n.v]===l[n.w]){s.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),s.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),i=X(n.v),a=X(n.w),e.removeEdge(n.v,n.w,n.name);const d=n.w+"---"+n.v;e.setNode(d,{domId:d,id:d,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const u=structuredClone(r),f=structuredClone(r);u.label="",u.arrowTypeEnd="none",f.label="",u.fromCluster=n.v,f.toCluster=n.v,e.setEdge(i,d,u,n.name+"-cyclic-special"),e.setEdge(d,a,f,n.name+"-cyclic-special")}else if(l[n.v]||l[n.w]){if(s.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),i=X(n.v),a=X(n.w),e.removeEdge(n.v,n.w,n.name),i!==n.v){const d=e.parent(i);l[d].externalConnections=!0,r.fromCluster=n.v}if(a!==n.w){const d=e.parent(a);l[d].externalConnections=!0,r.toCluster=n.w}s.warn("Fix Replacing with XXX",i,a,n.name),e.setEdge(i,a,r,n.name)}}),s.warn("Adjusted Graph",m(e)),F(e,0),s.trace(l)},F=(e,t)=>{if(s.warn("extractor - ",t,m(e),e.children("D")),t>10){s.error("Bailing out");return}let n=e.nodes(),r=!1;for(const i of n){const a=e.children(i);r=r||a.length>0}if(!r){s.debug("Done, no node has children",e.nodes());return}s.debug("Nodes = ",n,t);for(const i of n)if(s.debug("Extracting node",i,l,l[i]&&!l[i].externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),!l[i])s.debug("Not a cluster",i,t);else if(!l[i].externalConnections&&e.children(i)&&e.children(i).length>0){s.warn("Cluster without external connections, without a parent and with children",i,t);let d=e.graph().rankdir==="TB"?"LR":"TB";l[i]&&l[i].clusterData&&l[i].clusterData.dir&&(d=l[i].clusterData.dir,s.warn("Fixing dir",l[i].clusterData.dir,d));const u=new A({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});s.warn("Old graph before copy",m(e)),P(i,e,u,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:l[i].clusterData,labelText:l[i].labelText,graph:u}),s.warn("New graph after copy node: (",i,")",m(u)),s.debug("Old graph after copy",m(e))}else s.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!l[i].externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),s.debug(l);n=e.nodes(),s.warn("New list of nodes",n);for(const i of n){const a=e.node(i);s.warn(" Now next level",i,a),a.clusterNode&&F(a.graph,t+1)}},G=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const i=e.children(r),a=G(e,i);n=[...n,...a]}),n},rt=e=>G(e,e.children()),at=(e,t)=>{s.info("Creating subgraph rect for ",t.id,t);const n=T(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),i=r.insert("rect",":first-child"),a=S(n.flowchart.htmlLabels),d=r.insert("g").attr("class","cluster-label"),u=t.labelType==="markdown"?I(d,t.labelText,{style:t.labelStyle,useHtmlLabels:a}):d.node().appendChild(J(t.labelText,t.labelStyle,void 0,!0));let f=u.getBBox();if(S(n.flowchart.htmlLabels)){const c=u.children[0],o=L(u);f=c.getBoundingClientRect(),o.attr("width",f.width),o.attr("height",f.height)}const h=0*t.padding,w=h/2,x=t.width<=f.width+h?f.width+h:t.width;t.width<=f.width+h?t.diff=(f.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,s.trace("Data ",t,JSON.stringify(t)),i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-x/2).attr("y",t.y-t.height/2-w).attr("width",x).attr("height",t.height+h);const{subGraphTitleTopMargin:v}=D(n);a?d.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2+v})`):d.attr("transform",`translate(${t.x}, ${t.y-t.height/2+v})`);const y=i.node().getBBox();return t.width=y.width,t.height=y.height,t.intersect=function(c){return p(t,c)},r},ct=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),i=0*t.padding,a=i/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+i).attr("height",t.height+i).attr("fill","none");const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.intersect=function(u){return p(t,u)},n},ot=(e,t)=>{const n=T(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),i=r.insert("rect",":first-child"),a=r.insert("g").attr("class","cluster-label"),d=r.append("rect"),u=a.node().appendChild(J(t.labelText,t.labelStyle,void 0,!0));let f=u.getBBox();if(S(n.flowchart.htmlLabels)){const c=u.children[0],o=L(u);f=c.getBoundingClientRect(),o.attr("width",f.width),o.attr("height",f.height)}f=u.getBBox();const h=0*t.padding,w=h/2,x=t.width<=f.width+t.padding?f.width+t.padding:t.width;t.width<=f.width+t.padding?t.diff=(f.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,i.attr("class","outer").attr("x",t.x-x/2-w).attr("y",t.y-t.height/2-w).attr("width",x+h).attr("height",t.height+h),d.attr("class","inner").attr("x",t.x-x/2-w).attr("y",t.y-t.height/2-w+f.height-1).attr("width",x+h).attr("height",t.height+h-f.height-3);const{subGraphTitleTopMargin:v}=D(n);a.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2-t.padding/3+(S(n.flowchart.htmlLabels)?5:3)+v})`);const y=i.node().getBBox();return t.height=y.height,t.intersect=function(c){return p(t,c)},r},lt=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),i=0*t.padding,a=i/2;r.attr("class","divider").attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2).attr("width",t.width+i).attr("height",t.height+i);const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.diff=-t.padding/2,t.intersect=function(u){return p(t,u)},n},ft={rect:at,roundedWithTitle:ot,noteGroup:ct,divider:lt};let j={};const dt=(e,t)=>{s.trace("Inserting cluster");const n=t.shape||"rect";j[t.id]=ft[n](e,t)},ut=()=>{j={}},M=async(e,t,n,r,i,a)=>{s.info("Graph in recursive render: XXX",m(t),i);const d=t.graph().rankdir;s.trace("Dir in recursive render - dir:",d);const u=e.insert("g").attr("class","root");t.nodes()?s.info("Recursive render XXX",t.nodes()):s.info("No nodes found for",t),t.edges().length>0&&s.trace("Recursive edges",t.edge(t.edges()[0]));const f=u.insert("g").attr("class","clusters"),h=u.insert("g").attr("class","edgePaths"),w=u.insert("g").attr("class","edgeLabels"),x=u.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(c){const o=t.node(c);if(i!==void 0){const b=JSON.parse(JSON.stringify(i.clusterData));s.info("Setting data for cluster XXX (",c,") ",b,i),t.setNode(i.id,b),t.parent(c)||(s.trace("Setting parent",c,i.id),t.setParent(c,i.id,b))}if(s.info("(Insert) Node XXX"+c+": "+JSON.stringify(t.node(c))),o&&o.clusterNode){s.info("Cluster identified",c,o.width,t.node(c));const b=await M(x,o.graph,n,r,t.node(c),a),E=b.elem;W(o,E),o.diff=b.diff||0,s.info("Node bounds (abc123)",c,o,o.width,o.x,o.y),_(E,o),s.warn("Recursive render complete ",E,o)}else t.children(c).length>0?(s.info("Cluster - the non recursive path XXX",c,o.id,o,t),s.info(C(o.id,t)),l[o.id]={id:C(o.id,t),node:o}):(s.info("Node - the non recursive path",c,o.id,o),await q(x,t.node(c),d))})),t.edges().forEach(function(c){const o=t.edge(c.v,c.w,c.name);s.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c)),s.info("Edge "+c.v+" -> "+c.w+": ",c," ",JSON.stringify(t.edge(c))),s.info("Fix",l,"ids:",c.v,c.w,"Translating: ",l[c.v],l[c.w]),z(w,o)}),t.edges().forEach(function(c){s.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c))}),s.info("#############################################"),s.info("### Layout ###"),s.info("#############################################"),s.info(t),H(t),s.info("Graph after layout:",m(t));let v=0;const{subGraphTitleTotalMargin:y}=D(a);return rt(t).forEach(function(c){const o=t.node(c);s.info("Position "+c+": "+JSON.stringify(t.node(c))),s.info("Position "+c+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o&&o.clusterNode?(o.y+=y,O(o)):t.children(c).length>0?(o.height+=y,dt(f,o),l[o.id].node=o):(o.y+=y/2,O(o))}),t.edges().forEach(function(c){const o=t.edge(c);s.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(o),o),o.points.forEach(E=>E.y+=y/2);const b=K(h,c,o,l,n,t,r);Q(o,b)}),t.nodes().forEach(function(c){const o=t.node(c);s.info(c,o.type,o.diff),o.type==="group"&&(v=o.diff)}),{elem:u,diff:v}},bt=async(e,t,n,r,i)=>{U(e,n,r,i),Y(),Z(),ut(),nt(),s.warn("Graph at first:",JSON.stringify(m(t))),st(t),s.warn("Graph after:",JSON.stringify(m(t)));const a=T();await M(e,t,r,i,void 0,a)};export{bt as r};
|