@diagrammo/dgmo 0.69.0 → 0.71.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/README.md +2 -0
- package/dist/advanced.d.ts +11 -4
- package/dist/advanced.js +90 -90
- package/dist/block.js +46 -46
- package/dist/{calculator-GU4NVYE2.js → calculator-4CNL2GKU.js} +3 -3
- package/dist/{chart-meta-DNsYpNbh.d.ts → chart-meta-6JaOudSs.d.ts} +8 -1
- package/dist/chart-meta.d.ts +2 -2
- package/dist/chart-meta.js +42 -42
- package/dist/{charts-d3-C6UIUGNF.js → charts-d3-6IHGTXBR.js} +5 -5
- package/dist/{chunk-J2IMCVKB.js → chunk-2JY7KE7C.js} +6 -6
- package/dist/{chunk-NPOUCNXP.js → chunk-376ATV2Q.js} +19 -5
- package/dist/{chunk-SI766DED.js → chunk-3HN32MEK.js} +2 -2
- package/dist/{chunk-EAGUQK5P.js → chunk-3SNE4CLI.js} +3 -3
- package/dist/{chunk-KO6FGEEG.js → chunk-4VUFJ7UA.js} +3 -3
- package/dist/{chunk-7YCHRBD3.js → chunk-5DYDPP7K.js} +2 -2
- package/dist/{chunk-R2UUKZ6R.js → chunk-5GTYY2XV.js} +3 -3
- package/dist/{chunk-42FSJTZB.js → chunk-6EDBUKC7.js} +2 -2
- package/dist/{chunk-IODPKTRZ.js → chunk-6PA32CUB.js} +2 -2
- package/dist/{chunk-QP773H5T.js → chunk-6S53NO3M.js} +5 -2
- package/dist/{chunk-GOR4VFYB.js → chunk-722TKHMS.js} +4 -4
- package/dist/{chunk-C3OPOLID.js → chunk-7BHM774H.js} +6 -6
- package/dist/{chunk-D6MVQTMK.js → chunk-7REARI5N.js} +2 -2
- package/dist/{chunk-JWJEYIQF.js → chunk-7SEQPFBX.js} +38 -7
- package/dist/{chunk-PUBBTLAA.js → chunk-7TSBM4BV.js} +3 -3
- package/dist/{chunk-3QLXP6QZ.js → chunk-AEYRSPVV.js} +2 -2
- package/dist/{chunk-C2YYMYNR.js → chunk-BYSRXYRW.js} +4 -4
- package/dist/{chunk-WVJ2S4LU.js → chunk-C3MVZ7EW.js} +3 -3
- package/dist/{chunk-WBFRYH52.js → chunk-CH4WODSG.js} +3 -3
- package/dist/{chunk-XQBZFQE2.js → chunk-CR5WIA6I.js} +2 -2
- package/dist/{chunk-U2OLG4PB.js → chunk-DEVZWCD5.js} +17 -5
- package/dist/{chunk-WKOQQDQO.js → chunk-DPGI742S.js} +31 -2
- package/dist/{chunk-GZY5WEOQ.js → chunk-E36Q5ABQ.js} +4 -4
- package/dist/{chunk-HC3I53WV.js → chunk-EETUTZ5C.js} +2 -2
- package/dist/{chunk-V6TRRCXS.js → chunk-ELIGVSLE.js} +10 -3
- package/dist/{chunk-7N7QLRR5.js → chunk-ENJWB5LU.js} +6 -6
- package/dist/{chunk-5B4ZSR6O.js → chunk-FAJS2N4O.js} +5 -5
- package/dist/{chunk-TDKWKVN3.js → chunk-FFD6A3B2.js} +22 -5
- package/dist/{chunk-LRGSJI5X.js → chunk-FLXDMH7B.js} +3 -3
- package/dist/{chunk-UJ4FJLBF.js → chunk-FX2USYOU.js} +13 -1
- package/dist/{chunk-5TESTTMF.js → chunk-HTGYAMOK.js} +3 -3
- package/dist/{chunk-6766D4YT.js → chunk-HWNF22ZZ.js} +20 -15
- package/dist/{chunk-Y37EDBPR.js → chunk-IFJIYUI6.js} +2 -2
- package/dist/{chunk-QQI4JTJB.js → chunk-IQ4W4Q2R.js} +2 -2
- package/dist/{chunk-2QCQHMQO.js → chunk-ISKO4MQ5.js} +4 -4
- package/dist/{chunk-4RYDF2IG.js → chunk-IWNHEK5K.js} +6 -6
- package/dist/{chunk-7LYXDGGT.js → chunk-JIWDWOYA.js} +3 -3
- package/dist/{chunk-HAGHVHR7.js → chunk-K6MQJ5IV.js} +2 -2
- package/dist/{chunk-MOMPLSQI.js → chunk-KJWIU5AM.js} +2 -2
- package/dist/{chunk-QILJY2UY.js → chunk-KOVRFBGR.js} +25 -4
- package/dist/{chunk-SHS3O7ZZ.js → chunk-LJS4Z326.js} +3 -3
- package/dist/{chunk-TXPB6TBM.js → chunk-LSHROB27.js} +3 -3
- package/dist/{chunk-Q7UM3R3Y.js → chunk-LTGOPJUV.js} +2 -2
- package/dist/{chunk-BQH75ZPE.js → chunk-LUI425JB.js} +3 -3
- package/dist/{chunk-N6P3F3FB.js → chunk-LXGUK56B.js} +5 -5
- package/dist/{chunk-KZZYRA5T.js → chunk-MC2H32SM.js} +3 -3
- package/dist/{chunk-GB5RPD4S.js → chunk-MFSTE3YG.js} +18 -4
- package/dist/{chunk-SICO5DVQ.js → chunk-MKNWMFZU.js} +15 -5
- package/dist/{chunk-6NWCQCJV.js → chunk-MWWRIOEN.js} +2 -2
- package/dist/{chunk-HK3JTWG3.js → chunk-MX3BYU7V.js} +2 -2
- package/dist/{chunk-76XAJN7L.js → chunk-NEC7R2CB.js} +2 -2
- package/dist/{chunk-DBWTM5IJ.js → chunk-NJKUTY4M.js} +3 -3
- package/dist/{chunk-D62K46CW.js → chunk-NNMNHE3J.js} +2 -2
- package/dist/{chunk-DTC6RVQX.js → chunk-NTBHGUXY.js} +13 -3
- package/dist/{chunk-YYFIZ3AO.js → chunk-NUF7YTHA.js} +2 -2
- package/dist/{chunk-ODSGYHFP.js → chunk-PBV2C3BW.js} +27 -6
- package/dist/{chunk-RXYYJRM5.js → chunk-PLSTP7P4.js} +40 -40
- package/dist/{chunk-CJGSCQNP.js → chunk-QAJFIXJE.js} +19 -5
- package/dist/{chunk-L44SMVRY.js → chunk-QPG55HGH.js} +3 -3
- package/dist/{chunk-VOYADVBN.js → chunk-REBTZP3W.js} +2 -2
- package/dist/{chunk-H7LQGRM3.js → chunk-RJI6MHHK.js} +3 -3
- package/dist/{chunk-CU56CB3V.js → chunk-RNSGPTOZ.js} +3 -3
- package/dist/{chunk-YN4VMZCL.js → chunk-T3LNWU7B.js} +6 -6
- package/dist/{chunk-G5UTJZFR.js → chunk-T7W5LM4N.js} +11 -3
- package/dist/{chunk-2VMPJRPH.js → chunk-TF7CFAZ5.js} +3 -3
- package/dist/{chunk-GJ42T24G.js → chunk-TGGKBY22.js} +58 -15
- package/dist/{chunk-F7SKUWWS.js → chunk-UIBPFSIT.js} +6 -6
- package/dist/{chunk-5J42K7HM.js → chunk-UNM2PX5D.js} +3 -3
- package/dist/{chunk-JR6H5MEF.js → chunk-UNTFANSM.js} +3 -3
- package/dist/{chunk-IPMHIKVA.js → chunk-UTVKOGFF.js} +2 -2
- package/dist/{chunk-XRDRIUUB.js → chunk-UVAOL2EO.js} +5 -5
- package/dist/{chunk-MGAWLZQE.js → chunk-UY77QQWU.js} +2 -2
- package/dist/{chunk-DR43UCVQ.js → chunk-VE7PPEU3.js} +105 -18
- package/dist/{chunk-MZBEPHFY.js → chunk-VGLSKDDI.js} +2 -2
- package/dist/{chunk-LPMYDZSO.js → chunk-VMXV2CL5.js} +21 -5
- package/dist/{chunk-5ZADM7W2.js → chunk-W27BULCB.js} +4 -4
- package/dist/{chunk-U4UKJPTE.js → chunk-W7SZKJR6.js} +3 -3
- package/dist/{chunk-XCWYBBKH.js → chunk-WEC3JPTN.js} +4 -4
- package/dist/{chunk-YUTT3PV7.js → chunk-WPXHTYET.js} +16 -11
- package/dist/{chunk-HQBY3N3S.js → chunk-X2NX2SK6.js} +2 -2
- package/dist/{chunk-ZEHF5OVE.js → chunk-XIZCHGP7.js} +3 -3
- package/dist/{chunk-VCNJRCG2.js → chunk-XJZSN42P.js} +188 -120
- package/dist/{chunk-GK2ZDR6X.js → chunk-XQW4KFJ4.js} +8 -8
- package/dist/{chunk-Z44WBXIC.js → chunk-YCOGUPHL.js} +4 -4
- package/dist/{chunk-RP53JR6M.js → chunk-YG35ZCNW.js} +20 -5
- package/dist/{chunk-Y65TFTLX.js → chunk-YH5KJIO5.js} +4 -4
- package/dist/{chunk-N5XT3OWL.js → chunk-YTFA4VTW.js} +2 -2
- package/dist/{chunk-F5DNAUXY.js → chunk-YYBQ55V2.js} +35 -74
- package/dist/{chunk-M2QQQWM3.js → chunk-ZJJWON5O.js} +15 -5
- package/dist/{chunk-MJDV4DKP.js → chunk-ZNHPCITV.js} +4 -4
- package/dist/collapse-JRGPUE67.js +13 -0
- package/dist/completion-registry.js +15 -10
- package/dist/dgmo-router-J6OWNMEJ.js +89 -0
- package/dist/{dgmo-router-EAW7XiBE.d.ts → dgmo-router-Lya7cs3R.d.ts} +28 -0
- package/dist/{dimensions-NB72XI2A.js → dimensions-EFEBIRS6.js} +5 -5
- package/dist/editor.js +6 -3
- package/dist/{flowchart-parser-A64T3OEL.js → flowchart-parser-LZF2GW2P.js} +4 -4
- package/dist/{flowchart-renderer-F6PDPKK7.js → flowchart-renderer-HB277GNE.js} +5 -5
- package/dist/highlight.d.ts +45 -1
- package/dist/highlight.js +30 -3
- package/dist/index.d.ts +1 -1
- package/dist/index.js +55 -46
- package/dist/{layout-2D6VKW6G.js → layout-2DVT24YY.js} +3 -3
- package/dist/{layout-FFCYSTW7.js → layout-AWPST2S3.js} +3 -3
- package/dist/{layout-RNPKIRS6.js → layout-BGXLVSXL.js} +4 -4
- package/dist/{layout-4ICO4K3X.js → layout-BNR6ZDB6.js} +4 -4
- package/dist/{layout-A5AYRVOR.js → layout-N6ZOOAYT.js} +4 -4
- package/dist/{layout-OQUUQ7YW.js → layout-PBB2RQJ4.js} +4 -4
- package/dist/{parser-NIDJMNWX.js → parser-2CXA7K5C.js} +4 -4
- package/dist/{parser-43YM7XW3.js → parser-4E2TVMOK.js} +4 -4
- package/dist/{parser-V7HFGTVF.js → parser-52AZJ3BA.js} +4 -4
- package/dist/{parser-LYCYRROE.js → parser-52BOCAVQ.js} +4 -4
- package/dist/{parser-BL3KLB75.js → parser-5IPCYVXY.js} +4 -4
- package/dist/{parser-S7IV6DOA.js → parser-6BF5TJQH.js} +4 -4
- package/dist/{parser-SEFSLUXW.js → parser-6VZISXFY.js} +3 -3
- package/dist/{parser-H2CUQVPH.js → parser-6Y5BMNNJ.js} +5 -5
- package/dist/{parser-LJZIQJRA.js → parser-7HUZBXKW.js} +3 -3
- package/dist/{parser-PXI5UCVR.js → parser-AEJ73QJS.js} +3 -3
- package/dist/{parser-RTT3NOQC.js → parser-AWNEAGMJ.js} +4 -4
- package/dist/{parser-WGCE3G7P.js → parser-C2QRTZPJ.js} +4 -4
- package/dist/{parser-DLIBNGNQ.js → parser-CBSYFN6U.js} +3 -3
- package/dist/{parser-FYBJYHSN.js → parser-CDMP3UVH.js} +4 -4
- package/dist/{parser-XMWFEFEH.js → parser-CNKHKQKZ.js} +4 -4
- package/dist/{parser-ZNGAQ6NR.js → parser-EX3AGFT5.js} +4 -4
- package/dist/{parser-QZJIGMZR.js → parser-GK3JWVHY.js} +5 -5
- package/dist/{parser-H2P45TGS.js → parser-GZKR6BFA.js} +4 -4
- package/dist/{parser-YCRATNR6.js → parser-K26KDCZN.js} +3 -3
- package/dist/{parser-GLFHIKQC.js → parser-LTJ5AKY4.js} +4 -4
- package/dist/{parser-Q2K7TDEA.js → parser-NIGB4EYX.js} +3 -3
- package/dist/{parser-DAMYSBVY.js → parser-O7GTECFP.js} +3 -3
- package/dist/{parser-3QXKYLDG.js → parser-OHWDJGCP.js} +3 -3
- package/dist/{parser-RZIIZ3EW.js → parser-QCVEWLCO.js} +3 -3
- package/dist/{parser-DRZMT3IZ.js → parser-SUAOF72Y.js} +4 -4
- package/dist/{parser-TPQUTZPP.js → parser-TJ3SP2MJ.js} +4 -4
- package/dist/{parser-GEELVJ4X.js → parser-W2HXBHNC.js} +3 -3
- package/dist/{parser-HIHYCA3P.js → parser-WF4R7225.js} +4 -4
- package/dist/{parser-XLPLW3PI.js → parser-XM6JC3UK.js} +4 -4
- package/dist/{parser-FUBDH74F.js → parser-XRZQ7SC7.js} +4 -4
- package/dist/{parser-ZXI4IQ5Y.js → parser-YRJAGBV7.js} +4 -4
- package/dist/{parser-VBYTR624.js → parser-Z3LN7P6G.js} +5 -5
- package/dist/{parser-GGZTPX6F.js → parser-ZIEEBJMU.js} +4 -4
- package/dist/{renderer-JP6BTAST.js → renderer-2MEPYGAP.js} +7 -7
- package/dist/{renderer-UNHVCJ5Z.js → renderer-35HBBPIQ.js} +5 -5
- package/dist/{renderer-FTGHCZOE.js → renderer-3DSU72CP.js} +7 -7
- package/dist/{renderer-CH5U3R2K.js → renderer-4CUV63GT.js} +7 -7
- package/dist/{renderer-GN3HCUY6.js → renderer-4ORE7HJ3.js} +5 -5
- package/dist/{renderer-TQCVWCW4.js → renderer-5FQFMCBZ.js} +7 -7
- package/dist/{renderer-CP56XH3X.js → renderer-5YV6KP4U.js} +7 -7
- package/dist/{renderer-CEFMVEWU.js → renderer-7BGC4KPZ.js} +5 -5
- package/dist/{renderer-72UWS5MQ.js → renderer-7VPABTMS.js} +7 -7
- package/dist/{renderer-SZTUE5TE.js → renderer-ANWAX5QO.js} +6 -6
- package/dist/{renderer-U7INHN4J.js → renderer-BQWAUDEF.js} +4 -4
- package/dist/renderer-DGZDRRJW.js +76 -0
- package/dist/{renderer-7AG5MS32.js → renderer-E3UQ24DE.js} +5 -5
- package/dist/{renderer-HVEITTJC.js → renderer-FCIOD2QK.js} +5 -5
- package/dist/{renderer-MFZE5HBB.js → renderer-H5QR3LC3.js} +4 -4
- package/dist/{renderer-KVRTLE2D.js → renderer-JFZVWH2G.js} +3 -3
- package/dist/{renderer-2F3JUDTX.js → renderer-JHWGW4Q7.js} +5 -5
- package/dist/{renderer-RY7RQQ37.js → renderer-JWSO5O2L.js} +3 -3
- package/dist/{renderer-NRHU4AZ6.js → renderer-KFWZPVYT.js} +7 -7
- package/dist/{renderer-KBZ223H6.js → renderer-KQIJV5WD.js} +5 -5
- package/dist/{renderer-TQJWTC62.js → renderer-LVAUI6T6.js} +6 -6
- package/dist/{renderer-PD3Q7VKJ.js → renderer-MZ4N2SVV.js} +5 -5
- package/dist/{renderer-4LUPOZH2.js → renderer-QMSFXMAL.js} +5 -5
- package/dist/{renderer-OXOAUAVI.js → renderer-QOWN3XDI.js} +8 -6
- package/dist/{renderer-5L6INN2B.js → renderer-S5MGQHRQ.js} +6 -6
- package/dist/{renderer-FJ6VAUNW.js → renderer-V3PN5ZQS.js} +5 -5
- package/dist/{renderer-33U3KRCL.js → renderer-VOXE7V6L.js} +7 -7
- package/dist/{renderer-LPA6UC62.js → renderer-WBG576LB.js} +5 -5
- package/dist/{renderer-ZOP3SXFR.js → renderer-YXYEP46H.js} +6 -6
- package/dist/{renderer-BT6TOWBE.js → renderer-ZEPPPA3W.js} +3 -3
- package/dist/{renderer-radial-AZLCCE4C.js → renderer-radial-KZ3W4WXI.js} +6 -6
- package/dist/{state-parser-W6OCOJ2S.js → state-parser-HJNCGIFT.js} +5 -5
- package/dist/{state-renderer-26JXGKT6.js → state-renderer-776LP3NE.js} +7 -7
- package/docs/ai-integration.md +1 -1
- package/docs/language-reference.md +49 -31
- package/gallery/fixtures/event-line-now-color.dgmo +23 -0
- package/package.json +2 -1
- package/dist/collapse-CLPJD2RL.js +0 -11
- package/dist/dgmo-router-ND3PUDVF.js +0 -89
- package/dist/renderer-6YEVDIZJ.js +0 -76
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-A4GOY3PE.js";
|
|
18
18
|
import {
|
|
19
19
|
renderIntegratedLegend
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-6S53NO3M.js";
|
|
21
21
|
import {
|
|
22
22
|
getLegendExtent,
|
|
23
23
|
getMaxLegendReservedHeight
|
|
@@ -36,16 +36,16 @@ import {
|
|
|
36
36
|
isSequenceBlock,
|
|
37
37
|
isSequenceNote,
|
|
38
38
|
isSequenceSection
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-FFD6A3B2.js";
|
|
40
40
|
import {
|
|
41
41
|
resolveActiveTagGroup,
|
|
42
42
|
tagAttrKey
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-DPGI742S.js";
|
|
44
44
|
import {
|
|
45
45
|
fillModeFromOptions,
|
|
46
46
|
legendInlineRequested,
|
|
47
47
|
legendSuppressed
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-ZJJWON5O.js";
|
|
49
49
|
import {
|
|
50
50
|
contrastText,
|
|
51
51
|
mix,
|
|
@@ -415,24 +415,40 @@ var SECTION_LABEL_CLEARANCE_ABOVE = 12;
|
|
|
415
415
|
var SECTION_LABEL_CLEARANCE_BELOW = 5;
|
|
416
416
|
function summarizeSectionParticipation(messages, msgIndices) {
|
|
417
417
|
const summary = /* @__PURE__ */ new Map();
|
|
418
|
-
const bump = (id, key) => {
|
|
419
|
-
const entry = summary.get(id) ?? {
|
|
418
|
+
const bump = (id, key, lineNumber) => {
|
|
419
|
+
const entry = summary.get(id) ?? {
|
|
420
|
+
sends: 0,
|
|
421
|
+
receives: 0,
|
|
422
|
+
firstLine: lineNumber
|
|
423
|
+
};
|
|
420
424
|
entry[key] += 1;
|
|
421
425
|
summary.set(id, entry);
|
|
422
426
|
};
|
|
423
427
|
for (const idx of msgIndices) {
|
|
424
428
|
const msg = messages[idx];
|
|
425
429
|
if (!msg) continue;
|
|
426
|
-
bump(msg.from, "sends");
|
|
427
|
-
bump(msg.to, "receives");
|
|
430
|
+
bump(msg.from, "sends", msg.lineNumber);
|
|
431
|
+
bump(msg.to, "receives", msg.lineNumber);
|
|
428
432
|
}
|
|
429
433
|
return summary;
|
|
430
434
|
}
|
|
435
|
+
function collapsedGroupMemberLine(labels, maxWidth, fontSize) {
|
|
436
|
+
if (labels.length === 0) return "";
|
|
437
|
+
const full = labels.join(" \xB7 ");
|
|
438
|
+
if (measureText(full, fontSize) <= maxWidth) return full;
|
|
439
|
+
for (let keep = labels.length - 1; keep >= 1; keep--) {
|
|
440
|
+
const line = `${labels.slice(0, keep).join(" \xB7 ")} +${labels.length - keep}`;
|
|
441
|
+
if (measureText(line, fontSize) <= maxWidth) return line;
|
|
442
|
+
}
|
|
443
|
+
const count = labels.length === 1 ? "1 member" : `${labels.length} members`;
|
|
444
|
+
return measureText(count, fontSize) <= maxWidth ? count : "";
|
|
445
|
+
}
|
|
431
446
|
function sectionMarkRadius(touches) {
|
|
432
447
|
if (touches >= 4) return 6;
|
|
433
448
|
if (touches >= 2) return 4.5;
|
|
434
449
|
return 3.5;
|
|
435
450
|
}
|
|
451
|
+
var SECTION_MARK_HIT_RADIUS = 9;
|
|
436
452
|
function buildRenderSequence(messages) {
|
|
437
453
|
const steps = [];
|
|
438
454
|
const stack = [];
|
|
@@ -1036,6 +1052,12 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1036
1052
|
const GROUP_PADDING_TOP = 22;
|
|
1037
1053
|
const GROUP_PADDING_BOTTOM = 8;
|
|
1038
1054
|
const GROUP_LABEL_SIZE = 11;
|
|
1055
|
+
const sGroupLabelSize = ctx.text(GROUP_LABEL_SIZE);
|
|
1056
|
+
const GROUP_LABEL_WEIGHT = "bold";
|
|
1057
|
+
const GROUP_MEMBER_SIZE = 9;
|
|
1058
|
+
const sGroupMemberSize = ctx.text(GROUP_MEMBER_SIZE);
|
|
1059
|
+
const GROUP_MEMBER_GAP = 3;
|
|
1060
|
+
const GROUP_MEMBER_PADDING_X = 6;
|
|
1039
1061
|
const showTitle = !!title && parsedOptions["no-title"] !== "on";
|
|
1040
1062
|
const titleOffset = showTitle ? sTitleHeight : 0;
|
|
1041
1063
|
const LEGEND_FIXED_GAP = 8;
|
|
@@ -1363,10 +1385,18 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1363
1385
|
collapsedGroupNames.add(group.name);
|
|
1364
1386
|
collapsedGroupMeta.set(group.name, {
|
|
1365
1387
|
lineNumber: group.lineNumber,
|
|
1388
|
+
participantIds: group.participantIds,
|
|
1366
1389
|
...group.metadata !== void 0 && { metadata: group.metadata }
|
|
1367
1390
|
});
|
|
1368
1391
|
}
|
|
1369
1392
|
}
|
|
1393
|
+
const participantLabels = new Map(
|
|
1394
|
+
parsed.participants.map((p) => [String(p.id), p.label])
|
|
1395
|
+
);
|
|
1396
|
+
const groupToggleName = (groupName, memberIds) => {
|
|
1397
|
+
const labels = memberIds.map((id) => participantLabels.get(id) ?? id);
|
|
1398
|
+
return labels.length > 0 ? `${groupName}, ${labels.join(", ")}` : groupName;
|
|
1399
|
+
};
|
|
1370
1400
|
const participantTagColor = (id) => {
|
|
1371
1401
|
const direct = getTagColor(tagMap?.participants.get(id));
|
|
1372
1402
|
if (direct) return direct;
|
|
@@ -1386,11 +1416,10 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1386
1416
|
const groupTagColor = getTagColor(groupTagValue || void 0);
|
|
1387
1417
|
const fillColor = groupTagColor ? mix(groupTagColor, themeBaseBg(palette, isDark), isDark ? 15 : 20) : isDark ? palette.surface : palette.bg;
|
|
1388
1418
|
const strokeColor = groupTagColor || palette.textMuted;
|
|
1389
|
-
const groupG = svg.append("g").attr("class", "group-box-wrapper").attr("data-group-toggle", "").attr("data-group-line", String(group.lineNumber)).attr("tabindex", "0").attr("role", "button").attr("aria-expanded", "true").attr("cursor", "pointer");
|
|
1390
|
-
groupG.append("title").text("Click to collapse");
|
|
1419
|
+
const groupG = svg.append("g").attr("class", "group-box-wrapper").attr("data-group-toggle", "").attr("data-group-line", String(group.lineNumber)).attr("tabindex", "0").attr("role", "button").attr("aria-expanded", "true").attr("aria-label", groupToggleName(group.name, group.participantIds)).attr("cursor", "pointer");
|
|
1391
1420
|
groupG.append("rect").attr("x", minX).attr("y", boxY).attr("width", maxX - minX).attr("height", boxH).attr("rx", 6).attr("fill", fillColor).attr("stroke", strokeColor).attr("stroke-width", 1).attr("stroke-opacity", 0.5).attr("pointer-events", "none").attr("class", "group-box");
|
|
1392
1421
|
groupG.append("rect").attr("x", minX).attr("y", boxY).attr("width", maxX - minX).attr("height", participantStartY - boxY).attr("fill", "transparent").attr("class", "group-label-hit");
|
|
1393
|
-
groupG.append("text").attr("x", (minX + maxX) / 2).attr("y", boxY +
|
|
1422
|
+
groupG.append("text").attr("x", (minX + maxX) / 2).attr("y", boxY + sGroupLabelSize + 4).attr("text-anchor", "middle").attr("fill", strokeColor).attr("font-size", sGroupLabelSize).attr("font-weight", GROUP_LABEL_WEIGHT).attr("opacity", 0.7).attr("pointer-events", "none").attr("class", "group-label").text(group.name);
|
|
1394
1423
|
}
|
|
1395
1424
|
const bandLeftmostX = Math.min(...Array.from(participantX.values()));
|
|
1396
1425
|
const bandRightmostX = Math.max(...Array.from(participantX.values()));
|
|
@@ -1461,12 +1490,24 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1461
1490
|
const participantG = svg.select(
|
|
1462
1491
|
`.participant[data-participant-id="${participant.id}"]`
|
|
1463
1492
|
);
|
|
1464
|
-
participantG.attr("data-group-toggle", "").attr("data-group-line", String(meta.lineNumber)).attr("tabindex", "0").attr("role", "button").attr("aria-expanded", "false").attr(
|
|
1465
|
-
|
|
1493
|
+
participantG.attr("data-group-toggle", "").attr("data-group-line", String(meta.lineNumber)).attr("tabindex", "0").attr("role", "button").attr("aria-expanded", "false").attr(
|
|
1494
|
+
"aria-label",
|
|
1495
|
+
groupToggleName(participant.id, meta.participantIds)
|
|
1496
|
+
).attr("cursor", "pointer");
|
|
1466
1497
|
const pFill = effectiveTagColor ? mix(effectiveTagColor, themeBaseBg(palette, isDark), isDark ? 30 : 40) : isDark ? mix(palette.overlay, palette.surface, 50) : mix(palette.bg, palette.surface, 50);
|
|
1467
1498
|
const pStroke = effectiveTagColor || palette.border;
|
|
1468
1499
|
participantG.append("rect").attr("x", -boxW / 2).attr("y", -GROUP_PADDING_TOP).attr("width", boxW).attr("height", fullH).attr("rx", 6).attr("fill", pFill).attr("stroke", pStroke).attr("stroke-width", 1.5);
|
|
1469
|
-
|
|
1500
|
+
const memberLine = collapsedGroupMemberLine(
|
|
1501
|
+
meta.participantIds.map((id) => participantLabels.get(id) ?? id),
|
|
1502
|
+
boxW - GROUP_MEMBER_PADDING_X * 2,
|
|
1503
|
+
sGroupMemberSize
|
|
1504
|
+
);
|
|
1505
|
+
const boxMidY = -GROUP_PADDING_TOP + fullH / 2;
|
|
1506
|
+
const nameY = memberLine ? boxMidY - (sGroupMemberSize + GROUP_MEMBER_GAP) / 2 : boxMidY;
|
|
1507
|
+
participantG.append("text").attr("x", 0).attr("y", nameY).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("fill", palette.text).attr("font-size", sGroupLabelSize).attr("font-weight", GROUP_LABEL_WEIGHT).attr("class", "collapsed-group-label").text(participant.label);
|
|
1508
|
+
if (memberLine) {
|
|
1509
|
+
participantG.append("text").attr("x", 0).attr("y", boxMidY + (sGroupLabelSize + GROUP_MEMBER_GAP) / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("fill", palette.textMuted).attr("font-size", sGroupMemberSize).attr("class", "collapsed-group-members").text(memberLine);
|
|
1510
|
+
}
|
|
1470
1511
|
participantG.append("clipPath").attr("id", clipId).append("rect").attr("x", -boxW / 2).attr("y", -GROUP_PADDING_TOP).attr("width", boxW).attr("height", fullH).attr("rx", 6);
|
|
1471
1512
|
participantG.append("rect").attr("class", "sequence-drill-bar").attr("x", -boxW / 2).attr("y", -GROUP_PADDING_TOP + fullH - drillBarH).attr("width", boxW).attr("height", drillBarH).attr("fill", drillColor).attr("clip-path", `url(#${clipId})`);
|
|
1472
1513
|
}
|
|
@@ -1752,6 +1793,7 @@ function renderSequenceDiagram(container, parsed, palette, isDark, _onNavigateTo
|
|
|
1752
1793
|
}
|
|
1753
1794
|
const markColor = participantTagColor(participant.id) ?? palette.text;
|
|
1754
1795
|
const radius = sectionMarkRadius(part.sends + part.receives);
|
|
1796
|
+
sectionG.append("circle").attr("cx", markX).attr("cy", markY).attr("r", Math.max(radius, SECTION_MARK_HIT_RADIUS)).attr("fill", "transparent").attr("class", "section-mark-hit").attr("data-participant-id", participant.id).attr("data-section-mark-line", String(part.firstLine)).attr("cursor", "pointer");
|
|
1755
1797
|
if (part.sends === 0) {
|
|
1756
1798
|
mark.attr("r", radius).attr("fill", bandFill).attr("stroke", markColor).attr("stroke-width", 1.6).attr("class", "section-mark section-mark-receives");
|
|
1757
1799
|
} else {
|
|
@@ -2015,6 +2057,7 @@ export {
|
|
|
2015
2057
|
applyCollapseProjection,
|
|
2016
2058
|
groupMessagesBySection,
|
|
2017
2059
|
summarizeSectionParticipation,
|
|
2060
|
+
collapsedGroupMemberLine,
|
|
2018
2061
|
buildRenderSequence,
|
|
2019
2062
|
computeActivations,
|
|
2020
2063
|
applyPositionOverrides,
|
|
@@ -2022,4 +2065,4 @@ export {
|
|
|
2022
2065
|
renderSequenceDiagram,
|
|
2023
2066
|
buildNoteMessageMap
|
|
2024
2067
|
};
|
|
2025
|
-
//# sourceMappingURL=chunk-
|
|
2068
|
+
//# sourceMappingURL=chunk-TGGKBY22.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
computeNodeText,
|
|
3
3
|
layoutMindmap
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6EDBUKC7.js";
|
|
5
5
|
import {
|
|
6
6
|
extractExportSvg,
|
|
7
7
|
runInExportContainer
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
} from "./chunk-A4GOY3PE.js";
|
|
27
27
|
import {
|
|
28
28
|
renderIntegratedLegend
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-6S53NO3M.js";
|
|
30
30
|
import {
|
|
31
31
|
getLegendExtent,
|
|
32
32
|
getMaxLegendReservedHeight
|
|
@@ -39,18 +39,18 @@ import {
|
|
|
39
39
|
} from "./chunk-QX53GOI7.js";
|
|
40
40
|
import {
|
|
41
41
|
parseMindmap
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-QAJFIXJE.js";
|
|
43
43
|
import {
|
|
44
44
|
preprocessDescriptionLine
|
|
45
45
|
} from "./chunk-IYULMRBE.js";
|
|
46
46
|
import {
|
|
47
47
|
tagAttrKey
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-DPGI742S.js";
|
|
49
49
|
import {
|
|
50
50
|
fillModeFromOptions,
|
|
51
51
|
legendInlineRequested,
|
|
52
52
|
legendSuppressed
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-ZJJWON5O.js";
|
|
54
54
|
import {
|
|
55
55
|
contrastText,
|
|
56
56
|
shapeFill
|
|
@@ -426,4 +426,4 @@ export {
|
|
|
426
426
|
renderMindmap,
|
|
427
427
|
renderMindmapForExport
|
|
428
428
|
};
|
|
429
|
-
//# sourceMappingURL=chunk-
|
|
429
|
+
//# sourceMappingURL=chunk-UIBPFSIT.js.map
|
|
@@ -9,13 +9,13 @@ import {
|
|
|
9
9
|
matchTagBlockHeading,
|
|
10
10
|
stripDefaultModifier,
|
|
11
11
|
tagAttrKey
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-DPGI742S.js";
|
|
13
13
|
import {
|
|
14
14
|
extractColor,
|
|
15
15
|
fillModeFromToken,
|
|
16
16
|
measureIndent,
|
|
17
17
|
parseFirstLine
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-ZJJWON5O.js";
|
|
19
19
|
import {
|
|
20
20
|
emit
|
|
21
21
|
} from "./chunk-OLMWTJVU.js";
|
|
@@ -264,4 +264,4 @@ export {
|
|
|
264
264
|
parseBody,
|
|
265
265
|
extractSymbols
|
|
266
266
|
};
|
|
267
|
-
//# sourceMappingURL=chunk-
|
|
267
|
+
//# sourceMappingURL=chunk-UNM2PX5D.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
tryCollectNote
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MX3BYU7V.js";
|
|
4
4
|
import {
|
|
5
5
|
resolveNotes
|
|
6
6
|
} from "./chunk-7NK42OIB.js";
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
measureIndent,
|
|
17
17
|
parseFirstLine,
|
|
18
18
|
tryParseSharedOption
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-ZJJWON5O.js";
|
|
20
20
|
import {
|
|
21
21
|
resolveColorWithDiagnostic
|
|
22
22
|
} from "./chunk-EXNKNJ65.js";
|
|
@@ -445,4 +445,4 @@ export {
|
|
|
445
445
|
looksLikeClassDiagram,
|
|
446
446
|
extractSymbols
|
|
447
447
|
};
|
|
448
|
-
//# sourceMappingURL=chunk-
|
|
448
|
+
//# sourceMappingURL=chunk-UNTFANSM.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
isTagBlockHeading,
|
|
6
6
|
matchTagBlockHeading
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-DPGI742S.js";
|
|
8
8
|
import {
|
|
9
9
|
makeDgmoError
|
|
10
10
|
} from "./chunk-OLMWTJVU.js";
|
|
@@ -402,4 +402,4 @@ export {
|
|
|
402
402
|
normalizePertSourceForShare,
|
|
403
403
|
resolveOrgImports
|
|
404
404
|
};
|
|
405
|
-
//# sourceMappingURL=chunk-
|
|
405
|
+
//# sourceMappingURL=chunk-UTVKOGFF.js.map
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
} from "./chunk-A4GOY3PE.js";
|
|
17
17
|
import {
|
|
18
18
|
renderIntegratedLegend
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-6S53NO3M.js";
|
|
20
20
|
import {
|
|
21
21
|
getMaxLegendReservedHeight
|
|
22
22
|
} from "./chunk-MTPKBSTR.js";
|
|
@@ -32,14 +32,14 @@ import {
|
|
|
32
32
|
} from "./chunk-MTGGOCND.js";
|
|
33
33
|
import {
|
|
34
34
|
parseKanban
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-MKNWMFZU.js";
|
|
36
36
|
import {
|
|
37
37
|
tagAttrKey
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-DPGI742S.js";
|
|
39
39
|
import {
|
|
40
40
|
fillModeFromOptions,
|
|
41
41
|
legendSuppressed
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-ZJJWON5O.js";
|
|
43
43
|
import {
|
|
44
44
|
contrastText,
|
|
45
45
|
mix,
|
|
@@ -892,4 +892,4 @@ export {
|
|
|
892
892
|
renderKanban,
|
|
893
893
|
renderKanbanForExport
|
|
894
894
|
};
|
|
895
|
-
//# sourceMappingURL=chunk-
|
|
895
|
+
//# sourceMappingURL=chunk-UVAOL2EO.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
normalizeNumericToken,
|
|
13
13
|
parseFirstLine,
|
|
14
14
|
parseSeriesNames
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ZJJWON5O.js";
|
|
16
16
|
import {
|
|
17
17
|
RECOGNIZED_COLOR_NAMES,
|
|
18
18
|
resolveColorWithDiagnostic
|
|
@@ -1204,4 +1204,4 @@ export {
|
|
|
1204
1204
|
getSimpleChartLegendGroups,
|
|
1205
1205
|
getExtendedChartLegendGroups
|
|
1206
1206
|
};
|
|
1207
|
-
//# sourceMappingURL=chunk-
|
|
1207
|
+
//# sourceMappingURL=chunk-UY77QQWU.js.map
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
getSimpleChartLegendGroups,
|
|
43
43
|
parseChart,
|
|
44
44
|
parseExtendedChart
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-UY77QQWU.js";
|
|
46
46
|
import {
|
|
47
47
|
EMPHASIS_DIM_OPACITY,
|
|
48
48
|
EMPHASIS_DIM_TEXT_OPACITY,
|
|
@@ -50,7 +50,7 @@ import {
|
|
|
50
50
|
} from "./chunk-2CW5ZTNH.js";
|
|
51
51
|
import {
|
|
52
52
|
tagAttrKey
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-DPGI742S.js";
|
|
54
54
|
import {
|
|
55
55
|
contrastText,
|
|
56
56
|
getSegmentColors,
|
|
@@ -282,6 +282,70 @@ function tagDatum(sel, o) {
|
|
|
282
282
|
function drawValueLabel(svg, text, x, y, color, anchor = "middle") {
|
|
283
283
|
svg.append("text").attr("x", x).attr("y", y).attr("text-anchor", anchor).attr("fill", color).attr("font-size", VALUE_FONT).attr("font-family", FONT_FAMILY).text(text);
|
|
284
284
|
}
|
|
285
|
+
var LABEL_ROTATE_DEG = 40;
|
|
286
|
+
var LABEL_GAP = 8;
|
|
287
|
+
var LABEL_LINE_HEIGHT = 1.25;
|
|
288
|
+
function spreadIndices(total, count) {
|
|
289
|
+
if (total <= 0) return /* @__PURE__ */ new Set();
|
|
290
|
+
if (total === 1 || count <= 1) return /* @__PURE__ */ new Set([0]);
|
|
291
|
+
const n = Math.min(count, total);
|
|
292
|
+
const keep = /* @__PURE__ */ new Set();
|
|
293
|
+
for (let k = 0; k < n; k++) {
|
|
294
|
+
keep.add(Math.round(k * (total - 1) / (n - 1)));
|
|
295
|
+
}
|
|
296
|
+
return keep;
|
|
297
|
+
}
|
|
298
|
+
function planCategoryLabels(labels, slot, font = TICK_FONT) {
|
|
299
|
+
const n = labels.length;
|
|
300
|
+
if (n === 0) {
|
|
301
|
+
return { rotate: false, stride: 1, height: 18, keep: /* @__PURE__ */ new Set() };
|
|
302
|
+
}
|
|
303
|
+
const widest = Math.max(...labels.map((t) => measureText(t, font)));
|
|
304
|
+
const flatNeeds = widest + LABEL_GAP;
|
|
305
|
+
const flatHeight = Math.round(font * LABEL_LINE_HEIGHT) + 6;
|
|
306
|
+
const all = (stride2) => (
|
|
307
|
+
// How many labels fit at this spacing, both ends included.
|
|
308
|
+
spreadIndices(n, Math.floor((n - 1) / stride2) + 1)
|
|
309
|
+
);
|
|
310
|
+
if (slot <= 0 || flatNeeds <= slot) {
|
|
311
|
+
return {
|
|
312
|
+
rotate: false,
|
|
313
|
+
stride: 1,
|
|
314
|
+
height: flatHeight,
|
|
315
|
+
keep: spreadIndices(n, n)
|
|
316
|
+
};
|
|
317
|
+
}
|
|
318
|
+
const flatStride = Math.ceil(flatNeeds / slot);
|
|
319
|
+
if (flatStride <= 2) {
|
|
320
|
+
return { rotate: false, stride: 2, height: flatHeight, keep: all(2) };
|
|
321
|
+
}
|
|
322
|
+
const rad = LABEL_ROTATE_DEG * Math.PI / 180;
|
|
323
|
+
const rotNeeds = font * LABEL_LINE_HEIGHT / Math.sin(rad);
|
|
324
|
+
const stride = Math.max(1, Math.ceil(rotNeeds / slot));
|
|
325
|
+
return {
|
|
326
|
+
rotate: true,
|
|
327
|
+
stride,
|
|
328
|
+
height: Math.round(widest * Math.sin(rad)) + 12,
|
|
329
|
+
keep: all(stride)
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
function labelSurvives(plan, i) {
|
|
333
|
+
return plan.keep.has(i);
|
|
334
|
+
}
|
|
335
|
+
function drawCategoryLabels(svg, labels, plan, xFor, baseline, textColor, font = TICK_FONT) {
|
|
336
|
+
labels.forEach((label, i) => {
|
|
337
|
+
if (!labelSurvives(plan, i)) return;
|
|
338
|
+
const t = svg.append("text").attr("class", "dgmo-tick").attr("fill", textColor).attr("font-size", font).attr("font-family", FONT_FAMILY).text(label);
|
|
339
|
+
if (plan.rotate) {
|
|
340
|
+
t.attr(
|
|
341
|
+
"transform",
|
|
342
|
+
`translate(${xFor(i)},${baseline + font}) rotate(-${LABEL_ROTATE_DEG})`
|
|
343
|
+
).attr("text-anchor", "end");
|
|
344
|
+
} else {
|
|
345
|
+
t.attr("x", xFor(i)).attr("y", baseline + font + 6).attr("text-anchor", "middle");
|
|
346
|
+
}
|
|
347
|
+
});
|
|
348
|
+
}
|
|
285
349
|
|
|
286
350
|
// src/charts-d3/bar.ts
|
|
287
351
|
import { scaleBand, scaleLinear } from "d3-scale";
|
|
@@ -332,13 +396,18 @@ function renderBar(svg, chart, width, height, colors, palette, isDark, textColor
|
|
|
332
396
|
const loVal = Math.min(0, minVal);
|
|
333
397
|
const niceMax = hiVal === 0 && loVal === 0 ? 1 : hiVal;
|
|
334
398
|
const leftLabels = horizontal ? data.map((d) => d.label) : [fmtNum(niceMax), fmtNum(niceMax / 2), fmtNum(loVal), fmtNum(loVal / 2)];
|
|
399
|
+
const mLeft = computeLeftMargin(chart.ylabel, leftLabels);
|
|
400
|
+
const plotW = width - mLeft - 32;
|
|
401
|
+
const labelPlan = planCategoryLabels(
|
|
402
|
+
data.map((d) => d.label),
|
|
403
|
+
horizontal || data.length === 0 ? Infinity : plotW / data.length
|
|
404
|
+
);
|
|
335
405
|
const m = {
|
|
336
406
|
top: top + 8,
|
|
337
407
|
right: 32,
|
|
338
|
-
bottom: 64,
|
|
339
|
-
left:
|
|
408
|
+
bottom: horizontal ? 64 : Math.max(64, labelPlan.height + (chart.xlabel ? 40 : 18)),
|
|
409
|
+
left: mLeft
|
|
340
410
|
};
|
|
341
|
-
const plotW = width - m.left - m.right;
|
|
342
411
|
const plotH = height - m.top - m.bottom;
|
|
343
412
|
const horiz = horizontal;
|
|
344
413
|
const catRange = horiz ? [m.top, m.top + plotH] : [m.left, m.left + plotW];
|
|
@@ -356,13 +425,20 @@ function renderBar(svg, chart, width, height, colors, palette, isDark, textColor
|
|
|
356
425
|
svg.append("text").attr("x", m.left - 10).attr("y", y + 4).attr("text-anchor", "end").attr("fill", textColor).attr("font-size", TICK_FONT).attr("font-family", FONT_FAMILY).text(fmtNum(t));
|
|
357
426
|
}
|
|
358
427
|
}
|
|
359
|
-
|
|
360
|
-
const
|
|
361
|
-
|
|
428
|
+
if (horiz) {
|
|
429
|
+
for (const d of data) {
|
|
430
|
+
const c = (cat(d.label) ?? 0) + cat.bandwidth() / 2;
|
|
362
431
|
svg.append("text").attr("x", m.left - 10).attr("y", c + 4).attr("text-anchor", "end").attr("fill", textColor).attr("font-size", TICK_FONT).attr("font-family", FONT_FAMILY).text(d.label);
|
|
363
|
-
} else {
|
|
364
|
-
svg.append("text").attr("x", c).attr("y", m.top + plotH + 18).attr("text-anchor", "middle").attr("fill", textColor).attr("font-size", TICK_FONT).attr("font-family", FONT_FAMILY).text(d.label);
|
|
365
432
|
}
|
|
433
|
+
} else {
|
|
434
|
+
drawCategoryLabels(
|
|
435
|
+
svg,
|
|
436
|
+
data.map((d) => d.label),
|
|
437
|
+
labelPlan,
|
|
438
|
+
(i) => (cat(data[i].label) ?? 0) + cat.bandwidth() / 2,
|
|
439
|
+
m.top + plotH,
|
|
440
|
+
textColor
|
|
441
|
+
);
|
|
366
442
|
}
|
|
367
443
|
const zero = val(0);
|
|
368
444
|
const inner = stacked ? null : scaleBand().domain(seriesNames.map((_, i) => i)).range([0, cat.bandwidth()]).padding(0.12);
|
|
@@ -554,13 +630,19 @@ function renderLine(svg, chart, width, height, colors, palette, isDark, textColo
|
|
|
554
630
|
};
|
|
555
631
|
const [loL, hiL] = extentFor("left");
|
|
556
632
|
const [loR, hiR] = dual ? extentFor("right") : [0, 1];
|
|
633
|
+
const mLeft = computeLeftMargin(chart.ylabel, [fmtNum(hiL), fmtNum(loL)]);
|
|
634
|
+
const mRight = dual ? computeLeftMargin(chart.yrlabel, [fmtNum(hiR), fmtNum(loR)]) : 32;
|
|
635
|
+
const plotW = width - mLeft - mRight;
|
|
636
|
+
const labelPlan = planCategoryLabels(
|
|
637
|
+
data.map((d) => d.label),
|
|
638
|
+
data.length > 0 ? plotW / data.length : plotW
|
|
639
|
+
);
|
|
557
640
|
const m = {
|
|
558
641
|
top: top + 8,
|
|
559
|
-
right:
|
|
560
|
-
bottom: 64,
|
|
561
|
-
left:
|
|
642
|
+
right: mRight,
|
|
643
|
+
bottom: Math.max(64, labelPlan.height + (chart.xlabel ? 40 : 18)),
|
|
644
|
+
left: mLeft
|
|
562
645
|
};
|
|
563
|
-
const plotW = width - m.left - m.right;
|
|
564
646
|
const plotH = height - m.top - m.bottom;
|
|
565
647
|
const x = scalePoint().domain(data.map((d) => d.label)).range([m.left, m.left + plotW]).padding(0.5);
|
|
566
648
|
const yL = scaleLinear2().domain([loL, hiL]).nice().range([m.top + plotH, m.top]);
|
|
@@ -588,9 +670,14 @@ function renderLine(svg, chart, width, height, colors, palette, isDark, textColo
|
|
|
588
670
|
svg.append("text").attr("class", "dgmo-tick").attr("x", m.left + plotW + 10).attr("y", yR(t) + 4).attr("text-anchor", "start").attr("fill", rightTint ?? textColor).attr("font-size", TICK_FONT).attr("font-family", FONT_FAMILY).text(fmtNum(t));
|
|
589
671
|
}
|
|
590
672
|
}
|
|
591
|
-
|
|
592
|
-
svg
|
|
593
|
-
|
|
673
|
+
drawCategoryLabels(
|
|
674
|
+
svg,
|
|
675
|
+
data.map((d) => d.label),
|
|
676
|
+
labelPlan,
|
|
677
|
+
(i) => x(data[i].label) ?? 0,
|
|
678
|
+
m.top + plotH,
|
|
679
|
+
textColor
|
|
680
|
+
);
|
|
594
681
|
svg.append("rect").attr("class", "dgmo-plot-rect").attr("x", m.left).attr("y", m.top).attr("width", plotW).attr("height", plotH).attr("fill", "transparent");
|
|
595
682
|
for (let s = 0; s < seriesCount; s++) {
|
|
596
683
|
const color = seriesColor(s);
|
|
@@ -2064,4 +2151,4 @@ export {
|
|
|
2064
2151
|
supportsD3DataChart,
|
|
2065
2152
|
renderDataChartD3
|
|
2066
2153
|
};
|
|
2067
|
-
//# sourceMappingURL=chunk-
|
|
2154
|
+
//# sourceMappingURL=chunk-VE7PPEU3.js.map
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
} from "./chunk-NOTA6TEI.js";
|
|
9
9
|
import {
|
|
10
10
|
peelQuotedName
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-ZJJWON5O.js";
|
|
12
12
|
import {
|
|
13
13
|
makeDgmoError
|
|
14
14
|
} from "./chunk-OLMWTJVU.js";
|
|
@@ -787,4 +787,4 @@ export {
|
|
|
787
787
|
resolveTaskName,
|
|
788
788
|
calculateSchedule
|
|
789
789
|
};
|
|
790
|
-
//# sourceMappingURL=chunk-
|
|
790
|
+
//# sourceMappingURL=chunk-VGLSKDDI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
extractDatePrefix,
|
|
3
3
|
parseTimelineDate
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-NNMNHE3J.js";
|
|
5
5
|
import {
|
|
6
6
|
makeYearContext,
|
|
7
7
|
parseDateToken,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
tagAttrKey,
|
|
17
17
|
validateTagGroupNames,
|
|
18
18
|
validateTagValues
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-DPGI742S.js";
|
|
20
20
|
import {
|
|
21
21
|
EVENT_LINE_REGISTRY,
|
|
22
22
|
extractColor,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
tryParseSharedOption,
|
|
28
28
|
warnUnknownMetaKeys,
|
|
29
29
|
withTagAliases
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-ZJJWON5O.js";
|
|
31
31
|
import {
|
|
32
32
|
emit,
|
|
33
33
|
formatDgmoError,
|
|
@@ -358,13 +358,28 @@ function parseEventLine(content, palette) {
|
|
|
358
358
|
{
|
|
359
359
|
const nowMatch = trimmed.match(NOW_RE);
|
|
360
360
|
if (nowMatch) {
|
|
361
|
-
|
|
361
|
+
let rest = nowMatch[1].trim();
|
|
362
|
+
let color = null;
|
|
363
|
+
if (rest) {
|
|
364
|
+
const token = rest.split(/\s+/).pop();
|
|
365
|
+
const ex = extractColor(
|
|
366
|
+
`x ${token}`,
|
|
367
|
+
palette,
|
|
368
|
+
result.diagnostics,
|
|
369
|
+
lineNumber
|
|
370
|
+
);
|
|
371
|
+
if (ex.color !== void 0) {
|
|
372
|
+
color = token;
|
|
373
|
+
rest = rest.slice(0, rest.length - token.length).trim();
|
|
374
|
+
}
|
|
375
|
+
}
|
|
362
376
|
if (!rest) {
|
|
363
377
|
result.now = {
|
|
364
378
|
computed: true,
|
|
365
379
|
date: null,
|
|
366
380
|
dateValue: null,
|
|
367
381
|
label: null,
|
|
382
|
+
color,
|
|
368
383
|
lineNumber
|
|
369
384
|
};
|
|
370
385
|
} else {
|
|
@@ -376,6 +391,7 @@ function parseEventLine(content, palette) {
|
|
|
376
391
|
date: prefix.startDate,
|
|
377
392
|
dateValue: parseTimelineDate(prefix.startDate),
|
|
378
393
|
label,
|
|
394
|
+
color,
|
|
379
395
|
lineNumber
|
|
380
396
|
};
|
|
381
397
|
} else {
|
|
@@ -670,4 +686,4 @@ export {
|
|
|
670
686
|
EVENT_LINE_DIAGNOSTICS,
|
|
671
687
|
parseEventLine
|
|
672
688
|
};
|
|
673
|
-
//# sourceMappingURL=chunk-
|
|
689
|
+
//# sourceMappingURL=chunk-VMXV2CL5.js.map
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "./chunk-A4GOY3PE.js";
|
|
23
23
|
import {
|
|
24
24
|
renderIntegratedLegend
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-6S53NO3M.js";
|
|
26
26
|
import {
|
|
27
27
|
getLegendExtent,
|
|
28
28
|
getMaxLegendReservedHeight
|
|
@@ -42,12 +42,12 @@ import {
|
|
|
42
42
|
import {
|
|
43
43
|
resolveTagColor,
|
|
44
44
|
tagAttrKey
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-DPGI742S.js";
|
|
46
46
|
import {
|
|
47
47
|
fillModeFromOptions,
|
|
48
48
|
legendInlineRequested,
|
|
49
49
|
legendSuppressed
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-ZJJWON5O.js";
|
|
51
51
|
import {
|
|
52
52
|
contrastText,
|
|
53
53
|
mix,
|
|
@@ -317,4 +317,4 @@ export {
|
|
|
317
317
|
renderFamilyForExport,
|
|
318
318
|
renderFamily
|
|
319
319
|
};
|
|
320
|
-
//# sourceMappingURL=chunk-
|
|
320
|
+
//# sourceMappingURL=chunk-W27BULCB.js.map
|
|
@@ -15,10 +15,10 @@ import {
|
|
|
15
15
|
} from "./chunk-MTGGOCND.js";
|
|
16
16
|
import {
|
|
17
17
|
tagAttrKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-DPGI742S.js";
|
|
19
19
|
import {
|
|
20
20
|
legendSuppressed
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-ZJJWON5O.js";
|
|
22
22
|
|
|
23
23
|
// src/c4/layout.ts
|
|
24
24
|
import dagre from "@dagrejs/dagre";
|
|
@@ -1718,4 +1718,4 @@ export {
|
|
|
1718
1718
|
layoutC4Components,
|
|
1719
1719
|
layoutC4Deployment
|
|
1720
1720
|
};
|
|
1721
|
-
//# sourceMappingURL=chunk-
|
|
1721
|
+
//# sourceMappingURL=chunk-W7SZKJR6.js.map
|