@diagrammo/dgmo 0.83.0 → 0.85.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/advanced.d.ts +19 -8
- package/dist/advanced.js +8 -9
- package/dist/analyzer-R5UBTRO2.js +0 -1
- package/dist/block.d.ts +2 -2
- package/dist/block.js +10 -8
- package/dist/calculator-35YVW4QO.js +0 -1
- package/dist/{chart-meta-BnVwoPaA.d.ts → chart-meta-PbgpGwYo.d.ts} +2 -2
- package/dist/chart-meta.d.ts +3 -3
- package/dist/chart-meta.js +3 -4
- package/dist/{chart-types-CsUlmuiY.d.ts → chart-types-Db_EGf1o.d.ts} +1 -1
- package/dist/charts-d3-3BZRSZV6.js +0 -1
- package/dist/chunk-23RWHHI5.js +0 -1
- package/dist/chunk-24YPR5EH.js +0 -1
- package/dist/chunk-26EVL454.js +0 -1
- package/dist/chunk-2CW5ZTNH.js +0 -1
- package/dist/chunk-2M4IGSCY.js +0 -1
- package/dist/chunk-2QIGN7KL.js +0 -1
- package/dist/chunk-3AX6MCI6.js +0 -1
- package/dist/chunk-3C2FWS2J.js +0 -1
- package/dist/chunk-3DOQOXXI.js +0 -1
- package/dist/chunk-3DPOIW3W.js +0 -1
- package/dist/chunk-3FCSOYN4.js +0 -1
- package/dist/chunk-3MXJMZAN.js +0 -1
- package/dist/chunk-3RYBTEF5.js +0 -1
- package/dist/chunk-3TYUXC7D.js +0 -1
- package/dist/chunk-44GP7PD5.js +0 -1
- package/dist/chunk-47E5UTXE.js +0 -1
- package/dist/chunk-4QV26TEG.js +0 -1
- package/dist/chunk-4WW3SGMH.js +0 -1
- package/dist/chunk-5DH3KYFH.js +0 -1
- package/dist/chunk-5JO443MB.js +0 -1
- package/dist/chunk-5WRI5ZAA.js +0 -1
- package/dist/chunk-66YFDTT6.js +0 -1
- package/dist/chunk-67USWFFE.js +0 -1
- package/dist/chunk-6EK55ART.js +0 -1
- package/dist/chunk-6HOVLE3H.js +0 -1
- package/dist/chunk-6K7RODXG.js +0 -1
- package/dist/chunk-7256EOAE.js +0 -1
- package/dist/chunk-7HWY4QAJ.js +0 -1
- package/dist/chunk-7TF3QOOD.js +0 -1
- package/dist/chunk-7UDAIP6W.js +0 -1
- package/dist/chunk-A2RUBBVT.js +0 -1
- package/dist/chunk-A4PHPKNR.js +0 -1
- package/dist/chunk-A4XPI4YN.js +0 -1
- package/dist/chunk-A6YINTY6.js +0 -1
- package/dist/{chunk-D7T2K5WT.js → chunk-ADAGWVWJ.js} +6 -7
- package/dist/chunk-AYOVY75O.js +0 -1
- package/dist/chunk-BAZT6CIF.js +0 -1
- package/dist/chunk-BDXC7MDK.js +0 -1
- package/dist/chunk-BIQYWWJ2.js +0 -1
- package/dist/chunk-BOO24UMJ.js +0 -1
- package/dist/chunk-BP4BT5TH.js +0 -1
- package/dist/chunk-BS7SV7C3.js +0 -1
- package/dist/chunk-BYU54C3S.js +0 -1
- package/dist/chunk-C3Z4DX3V.js +0 -1
- package/dist/chunk-C5FEPGSJ.js +0 -1
- package/dist/chunk-C7QRRTAW.js +0 -1
- package/dist/chunk-D3K4U3ZM.js +0 -1
- package/dist/chunk-D7D5YK4J.js +0 -1
- package/dist/chunk-DAOFNU6J.js +0 -1
- package/dist/chunk-DOXBS7F5.js +0 -1
- package/dist/chunk-DV2VEJCC.js +0 -1
- package/dist/chunk-EOYPX6SF.js +0 -1
- package/dist/chunk-EPDBWATV.js +0 -1
- package/dist/chunk-EQW6HOP4.js +0 -1
- package/dist/chunk-ERNCPKD4.js +0 -1
- package/dist/chunk-ETBXIKK6.js +0 -1
- package/dist/chunk-FAV4RDVT.js +0 -1
- package/dist/chunk-FJNXXGTR.js +0 -1
- package/dist/chunk-FKZ2Y3Q5.js +0 -1
- package/dist/chunk-FM3WAVB6.js +0 -1
- package/dist/chunk-FPXMCGS5.js +0 -1
- package/dist/chunk-FWNJDD4U.js +0 -1
- package/dist/chunk-FX2USYOU.js +0 -1
- package/dist/chunk-GDJW64XE.js +0 -1
- package/dist/chunk-GSYZZFI5.js +0 -1
- package/dist/chunk-GUTZCRBT.js +0 -1
- package/dist/chunk-GUYVKGFN.js +0 -1
- package/dist/chunk-H2GEIFUF.js +0 -1
- package/dist/chunk-HATTVAWX.js +0 -1
- package/dist/chunk-HBCAY3KR.js +0 -1
- package/dist/chunk-HEYGGSNQ.js +0 -1
- package/dist/chunk-HMWZQ53A.js +0 -1
- package/dist/chunk-HSRQDWV7.js +0 -1
- package/dist/chunk-HTWH2XQL.js +0 -1
- package/dist/chunk-ICLB27PZ.js +0 -1
- package/dist/chunk-ICZ7M6IZ.js +0 -1
- package/dist/chunk-IDJGV6VM.js +0 -1
- package/dist/chunk-IIEI7VK5.js +0 -1
- package/dist/chunk-ITLPDLBH.js +0 -1
- package/dist/chunk-IVKC4GID.js +0 -1
- package/dist/chunk-IYULMRBE.js +0 -1
- package/dist/chunk-J2ICADUM.js +0 -1
- package/dist/chunk-J64NZ6NF.js +0 -1
- package/dist/chunk-JIPUBFAM.js +0 -1
- package/dist/chunk-JLGN6S4B.js +0 -1
- package/dist/chunk-JQ57AWDL.js +0 -1
- package/dist/chunk-JRUEIRJB.js +0 -1
- package/dist/{chunk-ECIXBEG2.js → chunk-JVRDKR5R.js} +1 -2
- package/dist/chunk-KAO7JL4I.js +0 -1
- package/dist/chunk-KMU65FYM.js +0 -1
- package/dist/chunk-L5AFONQU.js +0 -1
- package/dist/chunk-LCJURK7L.js +0 -1
- package/dist/chunk-LD2JSKU3.js +0 -1
- package/dist/chunk-LHL6HDUL.js +0 -1
- package/dist/chunk-LNO3ASX5.js +0 -1
- package/dist/chunk-LQSNWE3W.js +0 -1
- package/dist/chunk-LRNIYQ6Y.js +0 -1
- package/dist/chunk-LYRDIVSY.js +0 -1
- package/dist/chunk-MGBV4JEI.js +0 -1
- package/dist/chunk-MHAYUS65.js +0 -1
- package/dist/chunk-MIZ46MOF.js +0 -1
- package/dist/chunk-MY6GUH26.js +0 -1
- package/dist/chunk-N4XHXBDQ.js +0 -1
- package/dist/chunk-N7VMGZCU.js +0 -1
- package/dist/chunk-NF5YKFRH.js +0 -1
- package/dist/chunk-NGC3IZRY.js +0 -1
- package/dist/{chunk-AYA6C64M.js → chunk-NJS62BAG.js} +83 -27
- package/dist/chunk-NOTA6TEI.js +0 -1
- package/dist/chunk-NSS2EF5B.js +0 -1
- package/dist/chunk-NXMESY4J.js +0 -1
- package/dist/chunk-NZCSVD4M.js +0 -1
- package/dist/chunk-O753JUEZ.js +0 -1
- package/dist/chunk-OGKP2XGJ.js +0 -1
- package/dist/{chunk-RKBF2SKK.js → chunk-OZTDXMRQ.js} +2 -3
- package/dist/chunk-P3SKSKJI.js +0 -1
- package/dist/chunk-PBEH52A2.js +0 -1
- package/dist/chunk-PEFPTQ3Z.js +0 -1
- package/dist/chunk-PIXJL77H.js +0 -1
- package/dist/chunk-PLE2432T.js +0 -1
- package/dist/chunk-PPH6ILHL.js +0 -1
- package/dist/chunk-PSH5DT26.js +0 -1
- package/dist/chunk-QFHWYWQL.js +0 -1
- package/dist/chunk-QFIXL3OK.js +0 -1
- package/dist/chunk-QJ2JOLFN.js +0 -1
- package/dist/chunk-QNKHJ5CK.js +0 -1
- package/dist/chunk-QQJUTGQH.js +0 -1
- package/dist/{chunk-U7VO6JAA.js → chunk-RE27AX7O.js} +3 -1
- package/dist/chunk-RE6TVIAV.js +0 -1
- package/dist/chunk-REUEU5PU.js +0 -1
- package/dist/chunk-RH2PROYG.js +0 -1
- package/dist/chunk-RMAJIB6S.js +0 -1
- package/dist/chunk-RU725VCJ.js +0 -1
- package/dist/chunk-RYZNNXUV.js +0 -1
- package/dist/chunk-SLMAAJPE.js +0 -1
- package/dist/chunk-SQ7IY53Q.js +0 -1
- package/dist/chunk-SQAG3UXH.js +0 -1
- package/dist/{chunk-KABGWUND.js → chunk-T327J6CE.js} +4 -3
- package/dist/chunk-UG2XG57E.js +0 -1
- package/dist/chunk-UGYZ5Q5Y.js +0 -1
- package/dist/chunk-UJRMARNX.js +0 -1
- package/dist/chunk-ULCB4BLF.js +0 -1
- package/dist/chunk-UNAP6O26.js +0 -1
- package/dist/chunk-UNCCZ3NU.js +0 -1
- package/dist/chunk-UNNJCSSQ.js +0 -1
- package/dist/chunk-UNSN56OJ.js +0 -1
- package/dist/chunk-UZ7EZW3B.js +0 -1
- package/dist/chunk-V3LJIPS4.js +0 -1
- package/dist/chunk-VDMG3MM4.js +0 -1
- package/dist/chunk-VEPIAUSK.js +0 -1
- package/dist/chunk-VLC6WNRD.js +0 -1
- package/dist/{chunk-6EV2F6W7.js → chunk-VPASQOR3.js} +68 -47
- package/dist/chunk-WFA6IULY.js +0 -1
- package/dist/chunk-WMIKC5XO.js +0 -1
- package/dist/chunk-WP2RLGDI.js +0 -1
- package/dist/chunk-WPL5PFXE.js +0 -1
- package/dist/chunk-WQ6G6FFM.js +0 -1
- package/dist/chunk-WTTIODDV.js +0 -1
- package/dist/chunk-X2VEJ5NT.js +0 -1
- package/dist/chunk-XBJJP2HN.js +0 -1
- package/dist/chunk-XD7XL3SF.js +0 -1
- package/dist/chunk-XIYVGO24.js +0 -1
- package/dist/chunk-XSVWUOUZ.js +0 -1
- package/dist/chunk-XXAZ5C4K.js +0 -1
- package/dist/{chunk-4NYXQB7Y.js → chunk-Y7FTHOMD.js} +1 -2
- package/dist/chunk-YRYKTYMQ.js +0 -1
- package/dist/chunk-YWHGWLY6.js +0 -1
- package/dist/chunk-ZGHV4QLK.js +0 -1
- package/dist/chunk-ZUCXFXLD.js +0 -1
- package/dist/chunk-ZUUNTOMG.js +0 -1
- package/dist/clock.js +0 -1
- package/dist/cloud-reference.js +0 -1
- package/dist/collapse-JRGPUE67.js +0 -1
- package/dist/collapse-SLINJQW6.js +0 -1
- package/dist/collapse-ZWUFFCK2.js +0 -1
- package/dist/completion-registry.js +0 -1
- package/dist/compute-JAP5E2E4.js +0 -1
- package/dist/countdown.js +0 -1
- package/dist/{d3-CTGUvjsH.d.ts → d3-B6524aaP.d.ts} +1 -1
- package/dist/{dgmo-router-YW4SBNYB.js → dgmo-router-VILEOWQ2.js} +3 -4
- package/dist/dimensions-F3Y5T54V.js +0 -1
- package/dist/editor.js +0 -1
- package/dist/flowchart-parser-GG7XBLQH.js +0 -1
- package/dist/flowchart-renderer-TGQL4S4L.js +0 -1
- package/dist/highlight.js +0 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.js +6 -7
- package/dist/layout-6JARW64V.js +0 -1
- package/dist/layout-AM57TGN5.js +0 -1
- package/dist/{layout-JLUGD4WH.js → layout-CFTB7GKV.js} +1 -2
- package/dist/layout-FMKSENGL.js +0 -1
- package/dist/layout-JQ3IPJYR.js +0 -1
- package/dist/layout-K6NI4VCS.js +0 -1
- package/dist/layout-MSSHF45T.js +0 -1
- package/dist/layout-NB7TKAWN.js +0 -1
- package/dist/layout-PT7IKVCV.js +0 -1
- package/dist/layout-SOPAVXIH.js +0 -1
- package/dist/layout-SW3XWYKC.js +0 -1
- package/dist/layout-UIV56NUA.js +0 -1
- package/dist/layout-WXVGMSI3.js +0 -1
- package/dist/layout-WZCXK7DF.js +0 -1
- package/dist/layout-YELNBVPC.js +0 -1
- package/dist/{layout-search-RODROCT4.js → layout-search-GRJEBAUF.js} +22 -4
- package/dist/legend-constants-ZVO4FLAK.js +0 -1
- package/dist/live-link-resolve.js +0 -1
- package/dist/palettes-BIV54XLS.js +0 -1
- package/dist/parser-256EIWB2.js +0 -1
- package/dist/parser-5655XSOR.js +0 -1
- package/dist/parser-6TXNMXNB.js +0 -1
- package/dist/parser-7OEE7QT6.js +0 -1
- package/dist/parser-ACW6C6OY.js +0 -1
- package/dist/parser-AKBVJHMK.js +0 -1
- package/dist/parser-AN3MGHRL.js +0 -1
- package/dist/parser-C327BBE3.js +0 -1
- package/dist/parser-DGF3ZEO6.js +0 -1
- package/dist/parser-DHSFIUPU.js +0 -1
- package/dist/parser-GEKPWSSK.js +0 -1
- package/dist/parser-GPW4ZHPQ.js +0 -1
- package/dist/parser-GZ3LVF72.js +0 -1
- package/dist/parser-HCGXNHHL.js +0 -1
- package/dist/parser-J4DVNL4W.js +0 -1
- package/dist/parser-JOOAVBJI.js +0 -1
- package/dist/parser-JXS4426S.js +0 -1
- package/dist/parser-KFYRTGTC.js +0 -1
- package/dist/parser-KYPP2DX6.js +0 -1
- package/dist/parser-KZMALSB2.js +0 -1
- package/dist/parser-KZMJNKDW.js +0 -1
- package/dist/parser-LANGKWRG.js +0 -1
- package/dist/parser-LGS65QPN.js +0 -1
- package/dist/parser-NGHQQGD2.js +0 -1
- package/dist/parser-NOANDFJ4.js +0 -1
- package/dist/parser-NPXPJHWN.js +0 -1
- package/dist/parser-OKB64MMN.js +0 -1
- package/dist/parser-OVQTTTUJ.js +0 -1
- package/dist/{parser-6PHQJO42.js → parser-PVIWHVGY.js} +1 -2
- package/dist/parser-SA3RAJFS.js +0 -1
- package/dist/parser-WEVTMBJ5.js +0 -1
- package/dist/parser-WUK6CP5X.js +0 -1
- package/dist/parser-ZLKYDFI5.js +0 -1
- package/dist/pert.js +0 -1
- package/dist/renderer-3AOOLHJU.js +0 -1
- package/dist/renderer-3F4K2X57.js +0 -1
- package/dist/renderer-3XRDFNYF.js +0 -1
- package/dist/{renderer-QSRJGBH6.js → renderer-5A6VWIVX.js} +5 -6
- package/dist/renderer-5YOF2AHJ.js +0 -1
- package/dist/renderer-6BUUTWVS.js +0 -1
- package/dist/renderer-ADX4DWRJ.js +0 -1
- package/dist/{renderer-GWNSV76V.js → renderer-DRLLZZ6P.js} +2 -3
- package/dist/renderer-E5EKGIX2.js +0 -1
- package/dist/renderer-EU27D4S6.js +0 -1
- package/dist/renderer-FBAFYSIQ.js +0 -1
- package/dist/renderer-FQAZ3KNU.js +0 -1
- package/dist/renderer-FXX3XSNW.js +0 -1
- package/dist/renderer-G72GMBKA.js +0 -1
- package/dist/renderer-HV6ZYJMC.js +0 -1
- package/dist/renderer-HWEGM72C.js +0 -1
- package/dist/renderer-J3O2KVTL.js +0 -1
- package/dist/renderer-JKV2DBYP.js +0 -1
- package/dist/renderer-ML2CLU25.js +0 -1
- package/dist/renderer-OV3GUJRR.js +0 -1
- package/dist/renderer-OVDVFPAI.js +0 -1
- package/dist/renderer-OXSLLQQC.js +0 -1
- package/dist/renderer-P7LQBDU2.js +0 -1
- package/dist/renderer-PQYO2HCE.js +0 -1
- package/dist/renderer-R6VJDZFO.js +0 -1
- package/dist/renderer-RWJ45DWH.js +0 -1
- package/dist/renderer-TF3NTKP3.js +0 -1
- package/dist/renderer-UGA5DGKR.js +0 -1
- package/dist/renderer-WRWVFEX7.js +0 -1
- package/dist/renderer-WUDVV363.js +0 -1
- package/dist/renderer-X4KFEKUK.js +0 -1
- package/dist/renderer-XS42HEXW.js +0 -1
- package/dist/renderer-YSH5EX54.js +0 -1
- package/dist/renderer-radial-XZ5TKUT4.js +0 -1
- package/dist/resolver-XSXE2TRX.js +0 -1
- package/dist/state-collapse-HCGD6IVJ.js +0 -1
- package/dist/state-parser-FE3RF6XY.js +0 -1
- package/dist/state-renderer-B4ZF6ESS.js +0 -1
- package/dist/{tag-groups-CFxENdtP.d.ts → tag-groups-fgxWTyyB.d.ts} +16 -0
- package/dist/{themes-WjudZgda.d.ts → themes-CzuBdx1T.d.ts} +2 -2
- package/docs/language-reference.md +12 -0
- package/gallery/fixtures/sequence-groups-nested.dgmo +50 -0
- package/package.json +2 -1
package/dist/chunk-ETBXIKK6.js
CHANGED
package/dist/chunk-FAV4RDVT.js
CHANGED
package/dist/chunk-FJNXXGTR.js
CHANGED
package/dist/chunk-FKZ2Y3Q5.js
CHANGED
package/dist/chunk-FM3WAVB6.js
CHANGED
package/dist/chunk-FPXMCGS5.js
CHANGED
package/dist/chunk-FWNJDD4U.js
CHANGED
package/dist/chunk-FX2USYOU.js
CHANGED
package/dist/chunk-GDJW64XE.js
CHANGED
package/dist/chunk-GSYZZFI5.js
CHANGED
package/dist/chunk-GUTZCRBT.js
CHANGED
package/dist/chunk-GUYVKGFN.js
CHANGED
package/dist/chunk-H2GEIFUF.js
CHANGED
package/dist/chunk-HATTVAWX.js
CHANGED
package/dist/chunk-HBCAY3KR.js
CHANGED
package/dist/chunk-HEYGGSNQ.js
CHANGED
package/dist/chunk-HMWZQ53A.js
CHANGED
package/dist/chunk-HSRQDWV7.js
CHANGED
package/dist/chunk-HTWH2XQL.js
CHANGED
package/dist/chunk-ICLB27PZ.js
CHANGED
package/dist/chunk-ICZ7M6IZ.js
CHANGED
package/dist/chunk-IDJGV6VM.js
CHANGED
package/dist/chunk-IIEI7VK5.js
CHANGED
package/dist/chunk-ITLPDLBH.js
CHANGED
package/dist/chunk-IVKC4GID.js
CHANGED
package/dist/chunk-IYULMRBE.js
CHANGED
package/dist/chunk-J2ICADUM.js
CHANGED
package/dist/chunk-J64NZ6NF.js
CHANGED
package/dist/chunk-JIPUBFAM.js
CHANGED
package/dist/chunk-JLGN6S4B.js
CHANGED
package/dist/chunk-JQ57AWDL.js
CHANGED
package/dist/chunk-JRUEIRJB.js
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-HMWZQ53A.js";
|
|
7
7
|
import {
|
|
8
8
|
looksLikeSequence
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-VPASQOR3.js";
|
|
10
10
|
import {
|
|
11
11
|
looksLikeFlowchart
|
|
12
12
|
} from "./chunk-JRUEIRJB.js";
|
|
@@ -83,4 +83,3 @@ export {
|
|
|
83
83
|
looksLikeC4,
|
|
84
84
|
parseDgmoChartType
|
|
85
85
|
};
|
|
86
|
-
//# sourceMappingURL=chunk-ECIXBEG2.js.map
|
package/dist/chunk-KAO7JL4I.js
CHANGED
package/dist/chunk-KMU65FYM.js
CHANGED
package/dist/chunk-L5AFONQU.js
CHANGED
package/dist/chunk-LCJURK7L.js
CHANGED
package/dist/chunk-LD2JSKU3.js
CHANGED
package/dist/chunk-LHL6HDUL.js
CHANGED
package/dist/chunk-LNO3ASX5.js
CHANGED
package/dist/chunk-LQSNWE3W.js
CHANGED
package/dist/chunk-LRNIYQ6Y.js
CHANGED
package/dist/chunk-LYRDIVSY.js
CHANGED
package/dist/chunk-MGBV4JEI.js
CHANGED
package/dist/chunk-MHAYUS65.js
CHANGED
package/dist/chunk-MIZ46MOF.js
CHANGED
package/dist/chunk-MY6GUH26.js
CHANGED
package/dist/chunk-N4XHXBDQ.js
CHANGED
package/dist/chunk-N7VMGZCU.js
CHANGED
package/dist/chunk-NF5YKFRH.js
CHANGED
package/dist/chunk-NGC3IZRY.js
CHANGED
|
@@ -43,7 +43,7 @@ import {
|
|
|
43
43
|
isSequenceBlock,
|
|
44
44
|
isSequenceNote,
|
|
45
45
|
isSequenceSection
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-VPASQOR3.js";
|
|
47
47
|
import {
|
|
48
48
|
resolveActiveTagGroup,
|
|
49
49
|
tagAttrKey
|
|
@@ -74,12 +74,28 @@ function applyCollapseProjection(parsed, collapsedGroups) {
|
|
|
74
74
|
collapsedGroupIds: /* @__PURE__ */ new Map()
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
|
+
const byName = new Map(parsed.groups.map((g) => [g.name, g]));
|
|
78
|
+
const insideCollapsed = (group) => {
|
|
79
|
+
let parentName = group.parent;
|
|
80
|
+
const seen = /* @__PURE__ */ new Set();
|
|
81
|
+
while (parentName !== void 0 && !seen.has(parentName)) {
|
|
82
|
+
seen.add(parentName);
|
|
83
|
+
const ancestor = byName.get(parentName);
|
|
84
|
+
if (!ancestor) return false;
|
|
85
|
+
if (collapsedGroups.has(ancestor.lineNumber)) return true;
|
|
86
|
+
parentName = ancestor.parent;
|
|
87
|
+
}
|
|
88
|
+
return false;
|
|
89
|
+
};
|
|
77
90
|
const memberToGroup = /* @__PURE__ */ new Map();
|
|
78
91
|
const collapsedGroupNames = /* @__PURE__ */ new Set();
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
92
|
+
const byDepth = [...parsed.groups].sort((a, b) => a.depth - b.depth);
|
|
93
|
+
for (const group of byDepth) {
|
|
94
|
+
if (!collapsedGroups.has(group.lineNumber)) continue;
|
|
95
|
+
if (insideCollapsed(group)) continue;
|
|
96
|
+
collapsedGroupNames.add(group.name);
|
|
97
|
+
for (const memberId of group.participantIds) {
|
|
98
|
+
if (!memberToGroup.has(memberId)) {
|
|
83
99
|
memberToGroup.set(memberId, group.name);
|
|
84
100
|
}
|
|
85
101
|
}
|
|
@@ -114,9 +130,14 @@ function applyCollapseProjection(parsed, collapsedGroups) {
|
|
|
114
130
|
to: remap(msg.to)
|
|
115
131
|
}));
|
|
116
132
|
const elements = remapElements(parsed.elements, memberToGroup);
|
|
117
|
-
const groups = parsed.groups.filter(
|
|
118
|
-
|
|
119
|
-
|
|
133
|
+
const groups = parsed.groups.filter((g) => !collapsedGroups.has(g.lineNumber) && !insideCollapsed(g)).map((g) => {
|
|
134
|
+
const remapped = [];
|
|
135
|
+
for (const id of g.participantIds) {
|
|
136
|
+
const to = memberToGroup.get(id) ?? id;
|
|
137
|
+
if (!remapped.includes(to)) remapped.push(to);
|
|
138
|
+
}
|
|
139
|
+
return { ...g, participantIds: remapped };
|
|
140
|
+
});
|
|
120
141
|
return {
|
|
121
142
|
participants,
|
|
122
143
|
messages,
|
|
@@ -163,7 +184,7 @@ function remapElements(elements, memberToGroup) {
|
|
|
163
184
|
|
|
164
185
|
// src/sequence/tag-resolution.ts
|
|
165
186
|
function propagateGroupTags(participantMeta, groups) {
|
|
166
|
-
for (const group of groups) {
|
|
187
|
+
for (const group of [...groups].sort((a, b) => b.depth - a.depth)) {
|
|
167
188
|
if (!group.metadata) continue;
|
|
168
189
|
for (const id of group.participantIds) {
|
|
169
190
|
const meta = participantMeta.get(id);
|
|
@@ -592,6 +613,7 @@ function applyPositionOverrides(participants) {
|
|
|
592
613
|
function applyGroupOrdering(participants, groups, messages = []) {
|
|
593
614
|
const idToGroup = /* @__PURE__ */ new Map();
|
|
594
615
|
for (const group of groups) {
|
|
616
|
+
if (group.parent !== void 0) continue;
|
|
595
617
|
for (const id of group.participantIds) {
|
|
596
618
|
idToGroup.set(id, group);
|
|
597
619
|
}
|
|
@@ -672,6 +694,7 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
672
694
|
if (groups.length > 0) {
|
|
673
695
|
const pToG = /* @__PURE__ */ new Map();
|
|
674
696
|
for (let gi = 0; gi < groups.length; gi++) {
|
|
697
|
+
if (groups[gi].parent !== void 0) continue;
|
|
675
698
|
for (const pid of groups[gi].participantIds) pToG.set(pid, gi);
|
|
676
699
|
}
|
|
677
700
|
const LOOSE = -1;
|
|
@@ -1063,7 +1086,11 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1063
1086
|
for (const region of sectionRegions) {
|
|
1064
1087
|
sectionMsgCounts.set(region.section.lineNumber, region.msgIndices.length);
|
|
1065
1088
|
}
|
|
1089
|
+
const sEdgePad = ctx.aesthetic(20);
|
|
1066
1090
|
const GROUP_PADDING_X = 15;
|
|
1091
|
+
const GROUP_NEST_INSET_X = 6;
|
|
1092
|
+
const GROUP_NEST_MIN_PAD_X = 4;
|
|
1093
|
+
const GROUP_NEST_INSET_Y = 6;
|
|
1067
1094
|
const GROUP_PADDING_TOP = 22;
|
|
1068
1095
|
const GROUP_PADDING_BOTTOM = 8;
|
|
1069
1096
|
const GROUP_LABEL_SIZE = 11;
|
|
@@ -1108,11 +1135,13 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1108
1135
|
titleBaselineY: ctx.structural(TITLE_Y),
|
|
1109
1136
|
titleFontSize: ctx.text(TITLE_FONT_SIZE)
|
|
1110
1137
|
});
|
|
1111
|
-
const
|
|
1138
|
+
const maxGroupDepth = parsed.groups.reduce((d, g) => Math.max(d, g.depth), 0);
|
|
1139
|
+
const groupOffset = parsed.groups.length > 0 ? (maxGroupDepth + 1) * GROUP_PADDING_TOP + GROUP_LABEL_SIZE : 0;
|
|
1140
|
+
const groupBottomPad = (depth) => GROUP_PADDING_BOTTOM + (maxGroupDepth - depth) * GROUP_NEST_INSET_Y;
|
|
1112
1141
|
const participantStartY = sTopMargin + titleOffset + (header.inline ? 0 : legendTopSpace) + sParticipantYOffset + groupOffset;
|
|
1113
1142
|
const lifelineStartY0 = participantStartY + sBoxH;
|
|
1114
1143
|
const hasActors = participants.some((p) => p.type === "actor");
|
|
1115
|
-
const messageStartOffset = sMsgStartOffset + (hasActors ? 20 : 0) + (parsed.groups.length > 0 ?
|
|
1144
|
+
const messageStartOffset = sMsgStartOffset + (hasActors ? 20 : 0) + (parsed.groups.length > 0 ? groupBottomPad(0) : 0);
|
|
1116
1145
|
const stepYPositions = [];
|
|
1117
1146
|
const sectionYPositions = /* @__PURE__ */ new Map();
|
|
1118
1147
|
let layoutEndY;
|
|
@@ -1219,13 +1248,16 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1219
1248
|
sWithinGap = sGap * 0.88;
|
|
1220
1249
|
sBetweenGap = (totalGaps * sGap - numWithinGaps * sWithinGap) / numGroupGaps;
|
|
1221
1250
|
}
|
|
1251
|
+
const edgeProjection = (id) => {
|
|
1252
|
+
if (!id) return sBoxW / 2;
|
|
1253
|
+
const framed = parsed.groups.some(
|
|
1254
|
+
(g) => g.participantIds.includes(id)
|
|
1255
|
+
);
|
|
1256
|
+
return framed ? sBoxW / 2 + GROUP_PADDING_X : sBoxW / 2;
|
|
1257
|
+
};
|
|
1222
1258
|
const rightmostId = participants[participants.length - 1]?.id;
|
|
1223
|
-
let rightProjection =
|
|
1259
|
+
let rightProjection = edgeProjection(rightmostId);
|
|
1224
1260
|
if (rightmostId) {
|
|
1225
|
-
if (parsed.groups.some(
|
|
1226
|
-
(g) => g.participantIds.includes(rightmostId)
|
|
1227
|
-
))
|
|
1228
|
-
rightProjection = Math.max(rightProjection, sBoxW / 2 + GROUP_PADDING_X);
|
|
1229
1261
|
for (const step of renderSteps) {
|
|
1230
1262
|
if (step.from === step.to && step.from === rightmostId) {
|
|
1231
1263
|
const selfProj = sActivationWidth + sSelfCallWidth;
|
|
@@ -1253,8 +1285,11 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1253
1285
|
if (elements && hasBlockWithRightmost(elements))
|
|
1254
1286
|
rightProjection = Math.max(rightProjection, sBoxW / 2 + blockFramePadX);
|
|
1255
1287
|
}
|
|
1256
|
-
let rightMargin = Math.max(rightProjection +
|
|
1257
|
-
let leftMargin =
|
|
1288
|
+
let rightMargin = Math.max(rightProjection + sEdgePad, sGap / 2);
|
|
1289
|
+
let leftMargin = Math.max(
|
|
1290
|
+
edgeProjection(participants[0]?.id) + sEdgePad,
|
|
1291
|
+
sGap / 2
|
|
1292
|
+
);
|
|
1258
1293
|
const diagramWidth = Math.max(0, participants.length - 1) * sGap;
|
|
1259
1294
|
let totalWidth = Math.max(
|
|
1260
1295
|
leftMargin + diagramWidth + rightMargin,
|
|
@@ -1392,6 +1427,7 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1392
1427
|
collapsedGroupNames.add(group.name);
|
|
1393
1428
|
collapsedGroupMeta.set(group.name, {
|
|
1394
1429
|
lineNumber: group.lineNumber,
|
|
1430
|
+
depth: group.depth,
|
|
1395
1431
|
participantIds: group.participantIds,
|
|
1396
1432
|
...group.metadata !== void 0 && { metadata: group.metadata }
|
|
1397
1433
|
});
|
|
@@ -1414,14 +1450,35 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1414
1450
|
const hasExpandedGroup = groups.some(
|
|
1415
1451
|
(g) => g.participantIds.some((id) => participantX.has(id))
|
|
1416
1452
|
);
|
|
1417
|
-
|
|
1453
|
+
const framedGroups = [...groups].sort((a, b) => a.depth - b.depth);
|
|
1454
|
+
const allColumnXs = [...participantX.values()].sort((a, b) => a - b);
|
|
1455
|
+
const frameExtents = /* @__PURE__ */ new Map();
|
|
1456
|
+
for (const group of framedGroups) {
|
|
1418
1457
|
if (group.participantIds.length === 0) continue;
|
|
1419
1458
|
const memberXs = group.participantIds.map((id) => participantX.get(id)).filter((x) => x !== void 0);
|
|
1420
1459
|
if (memberXs.length === 0) continue;
|
|
1421
|
-
const
|
|
1422
|
-
const
|
|
1423
|
-
const
|
|
1424
|
-
|
|
1460
|
+
const firstX = Math.min(...memberXs);
|
|
1461
|
+
const lastX = Math.max(...memberXs);
|
|
1462
|
+
const padX = Math.max(
|
|
1463
|
+
GROUP_NEST_MIN_PAD_X,
|
|
1464
|
+
GROUP_PADDING_X - group.depth * GROUP_NEST_INSET_X
|
|
1465
|
+
);
|
|
1466
|
+
let minX = firstX - sBoxW / 2 - padX;
|
|
1467
|
+
let maxX = lastX + sBoxW / 2 + padX;
|
|
1468
|
+
if (group.depth > 0) {
|
|
1469
|
+
const prevX = allColumnXs.filter((x) => x < firstX).pop();
|
|
1470
|
+
const nextX = allColumnXs.find((x) => x > lastX);
|
|
1471
|
+
if (prevX !== void 0) minX = (prevX + firstX) / 2;
|
|
1472
|
+
if (nextX !== void 0) maxX = (lastX + nextX) / 2;
|
|
1473
|
+
const parent = group.parent ? frameExtents.get(group.parent) : void 0;
|
|
1474
|
+
if (parent) {
|
|
1475
|
+
minX = Math.max(minX, parent.minX + GROUP_NEST_MIN_PAD_X);
|
|
1476
|
+
maxX = Math.min(maxX, parent.maxX - GROUP_NEST_MIN_PAD_X);
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
frameExtents.set(group.name, { minX, maxX });
|
|
1480
|
+
const boxY = participantStartY - (maxGroupDepth + 1 - group.depth) * GROUP_PADDING_TOP;
|
|
1481
|
+
const boxH = sBoxH + (participantStartY - boxY) + groupBottomPad(group.depth);
|
|
1425
1482
|
const groupTagValue = tagKey && group.metadata?.[tagKey];
|
|
1426
1483
|
const groupTagColor = getTagColor(groupTagValue || void 0);
|
|
1427
1484
|
const fillColor = groupTagColor ? mix(groupTagColor, themeBaseBg(palette, isDark), isDark ? 15 : 20) : isDark ? palette.surface : palette.bg;
|
|
@@ -1496,8 +1553,8 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1496
1553
|
const drillColor = effectiveTagColor ?? mix(palette.textMuted, themeBaseBg(palette, isDark), 55);
|
|
1497
1554
|
const drillBarH = ctx.structural(COLLAPSE_BAR_HEIGHT);
|
|
1498
1555
|
const boxW = sBoxW;
|
|
1499
|
-
const padTop = hasExpandedGroup ? GROUP_PADDING_TOP : 0;
|
|
1500
|
-
const padBottom = hasExpandedGroup ?
|
|
1556
|
+
const padTop = hasExpandedGroup ? (maxGroupDepth + 1 - meta.depth) * GROUP_PADDING_TOP : 0;
|
|
1557
|
+
const padBottom = hasExpandedGroup ? groupBottomPad(meta.depth) : 0;
|
|
1501
1558
|
const fullH = sBoxH + padTop + padBottom;
|
|
1502
1559
|
const clipId = `clip-drill-group-${participant.id.replace(/[^a-zA-Z0-9-]/g, "-")}`;
|
|
1503
1560
|
const participantG = svg.select(
|
|
@@ -1515,7 +1572,7 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1515
1572
|
participantG.append("clipPath").attr("id", clipId).append("rect").attr("x", -boxW / 2).attr("y", -padTop).attr("width", boxW).attr("height", fullH).attr("rx", 6);
|
|
1516
1573
|
participantG.append("rect").attr("class", "sequence-drill-bar").attr("x", -boxW / 2).attr("y", -padTop + fullH - drillBarH).attr("width", boxW).attr("height", drillBarH).attr("fill", drillColor).attr("clip-path", `url(#${clipId})`);
|
|
1517
1574
|
}
|
|
1518
|
-
const llY = isCollapsedGroup ? lifelineStartY + (hasExpandedGroup ?
|
|
1575
|
+
const llY = isCollapsedGroup ? lifelineStartY + (hasExpandedGroup ? groupBottomPad(collapsedGroupMeta.get(participant.id)?.depth ?? 0) : 0) : participant.type === "actor" ? lifelineStartY + ACTOR_LABEL_CLEARANCE : lifelineStartY;
|
|
1519
1576
|
const llColor = effectiveTagColor || palette.textMuted;
|
|
1520
1577
|
for (const [segTop, segBottom] of lifelineSegments(
|
|
1521
1578
|
cx,
|
|
@@ -2072,4 +2129,3 @@ export {
|
|
|
2072
2129
|
renderSequenceDiagram,
|
|
2073
2130
|
buildNoteMessageMap
|
|
2074
2131
|
};
|
|
2075
|
-
//# sourceMappingURL=chunk-AYA6C64M.js.map
|
package/dist/chunk-NOTA6TEI.js
CHANGED
package/dist/chunk-NSS2EF5B.js
CHANGED
package/dist/chunk-NXMESY4J.js
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=chunk-NXMESY4J.js.map
|
package/dist/chunk-NZCSVD4M.js
CHANGED
package/dist/chunk-O753JUEZ.js
CHANGED
package/dist/chunk-OGKP2XGJ.js
CHANGED
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
} from "./chunk-KAO7JL4I.js";
|
|
9
9
|
import {
|
|
10
10
|
encodeDiagramUrl
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-RE27AX7O.js";
|
|
12
12
|
import {
|
|
13
13
|
parseDgmoChartType
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-JVRDKR5R.js";
|
|
15
15
|
import {
|
|
16
16
|
chartTypes
|
|
17
17
|
} from "./chunk-44GP7PD5.js";
|
|
@@ -203,4 +203,3 @@ export {
|
|
|
203
203
|
docsLink,
|
|
204
204
|
renderErrorCard
|
|
205
205
|
};
|
|
206
|
-
//# sourceMappingURL=chunk-RKBF2SKK.js.map
|
package/dist/chunk-P3SKSKJI.js
CHANGED
package/dist/chunk-PBEH52A2.js
CHANGED
package/dist/chunk-PEFPTQ3Z.js
CHANGED
package/dist/chunk-PIXJL77H.js
CHANGED
package/dist/chunk-PLE2432T.js
CHANGED
package/dist/chunk-PPH6ILHL.js
CHANGED