@diagrammo/dgmo 0.64.0 → 0.65.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.
Files changed (138) hide show
  1. package/LICENSE +1 -1
  2. package/dist/advanced.js +71 -71
  3. package/dist/block.js +15 -15
  4. package/dist/chart-meta.js +3 -3
  5. package/dist/{charts-d3-ZTXJWEHI.js → charts-d3-I6OE5K3B.js} +9 -9
  6. package/dist/{chunk-C6DMG2V6.js → chunk-27YPE7NO.js} +28 -12
  7. package/dist/{chunk-RBAW7VUG.js → chunk-2EPV7CLY.js} +5 -7
  8. package/dist/{chunk-SCJ7CAJF.js → chunk-3HOCNSPD.js} +2 -2
  9. package/dist/{chunk-Z2ADWRSW.js → chunk-3PSPUYT5.js} +3 -3
  10. package/dist/{chunk-RBBJIHNL.js → chunk-4IE42ODL.js} +11 -11
  11. package/dist/{chunk-SMCUX42K.js → chunk-4TM7MWU4.js} +7 -6
  12. package/dist/{chunk-H3HFC3SQ.js → chunk-5GM6BZO7.js} +3 -3
  13. package/dist/{chunk-7T3A2UK3.js → chunk-5T7K6QND.js} +15 -16
  14. package/dist/{chunk-NKRCPBTJ.js → chunk-6BOPYGJC.js} +6 -6
  15. package/dist/{chunk-37EHGTQ2.js → chunk-6E5YZR4S.js} +18 -16
  16. package/dist/{chunk-MHI6W6XS.js → chunk-6IUL6LER.js} +10 -7
  17. package/dist/{chunk-S5RWWISJ.js → chunk-7L53J53J.js} +4 -4
  18. package/dist/{chunk-WDJ4HAGO.js → chunk-A6CTYC7O.js} +2 -2
  19. package/dist/{chunk-CDMF7P5A.js → chunk-BBCKUAUR.js} +2 -2
  20. package/dist/{chunk-AA4M6F2P.js → chunk-BBY57XAA.js} +3 -3
  21. package/dist/{chunk-NKRVFQGO.js → chunk-BDI25HWH.js} +18 -6
  22. package/dist/{chunk-SVR3YFM3.js → chunk-C666LP3O.js} +20 -15
  23. package/dist/{chunk-KRTO7NRK.js → chunk-D2WHS23S.js} +2 -2
  24. package/dist/{chunk-LYTEVE2N.js → chunk-DBF4IM4U.js} +20 -15
  25. package/dist/{chunk-PCWPYOT4.js → chunk-ET4R3AU5.js} +4 -4
  26. package/dist/{chunk-2KOBOIB2.js → chunk-FBD5ASMB.js} +2 -2
  27. package/dist/{chunk-ES66QH6J.js → chunk-FG24NXKN.js} +2 -2
  28. package/dist/{chunk-3CIOJ5YJ.js → chunk-FJ57274M.js} +3 -1
  29. package/dist/{chunk-6BVIZW5N.js → chunk-FLFBY5GN.js} +14 -12
  30. package/dist/{chunk-XUN3MIO3.js → chunk-G64OVYUT.js} +2 -2
  31. package/dist/{chunk-RQL25P3U.js → chunk-G7QZF6T3.js} +9 -9
  32. package/dist/{chunk-IGIJZHB6.js → chunk-GC7CBX6C.js} +6 -6
  33. package/dist/{chunk-B6AONGTI.js → chunk-GDQN2TPX.js} +21 -14
  34. package/dist/{chunk-CZUSH6NI.js → chunk-GMLSYNFP.js} +10 -9
  35. package/dist/{chunk-R6HCNSP6.js → chunk-GOW5VO6M.js} +2 -2
  36. package/dist/{chunk-SPHC4RYF.js → chunk-GXOMKWQ5.js} +10 -9
  37. package/dist/{chunk-MQHOKBJ6.js → chunk-IJ4FUFTR.js} +5 -5
  38. package/dist/{chunk-V3UQSKWJ.js → chunk-IJSFEU4J.js} +9 -9
  39. package/dist/{chunk-LSFZDBAP.js → chunk-IKHV5IJB.js} +2 -2
  40. package/dist/{chunk-LMXAB4YM.js → chunk-IZ6RWMBM.js} +9 -9
  41. package/dist/{chunk-6VJCURWU.js → chunk-J2EXBAPZ.js} +4 -5
  42. package/dist/{chunk-IX6N5MCY.js → chunk-JCL4K7AK.js} +12 -11
  43. package/dist/{chunk-OBKM6GIJ.js → chunk-JTUDM7S4.js} +10 -10
  44. package/dist/{chunk-CVVICCSB.js → chunk-L65WI4HO.js} +4 -4
  45. package/dist/{chunk-67D4MN2H.js → chunk-LK6LTSLH.js} +2 -2
  46. package/dist/{chunk-KOHIF4LD.js → chunk-MBODBL7C.js} +6 -5
  47. package/dist/chunk-MTGGOCND.js +638 -0
  48. package/dist/{chunk-VJARCVMH.js → chunk-MU3CJPJF.js} +2 -2
  49. package/dist/{chunk-RKTIIU7Z.js → chunk-N6XI5VTA.js} +4 -4
  50. package/dist/{chunk-ODUT5WMC.js → chunk-NVOU7N6C.js} +2 -2
  51. package/dist/{chunk-T4QXHE34.js → chunk-OWUWLZJT.js} +13 -11
  52. package/dist/{chunk-LDVUPGWC.js → chunk-OWVDD5EC.js} +2 -2
  53. package/dist/{chunk-M4HYPDER.js → chunk-P5OCINCI.js} +8 -8
  54. package/dist/{chunk-JU2VMFYC.js → chunk-PZOFMBF3.js} +2 -2
  55. package/dist/{chunk-YLK3JNWP.js → chunk-QNCXONBR.js} +2 -2
  56. package/dist/{chunk-DB2KQ5DN.js → chunk-QRWY5QTA.js} +5 -5
  57. package/dist/{chunk-I2ATN25N.js → chunk-R4XM44BW.js} +25 -16
  58. package/dist/{chunk-DJCZWQ2A.js → chunk-RTTZIX34.js} +4 -4
  59. package/dist/{chunk-OMTBYLKN.js → chunk-TPKNA2U5.js} +9 -7
  60. package/dist/{chunk-DN5HEDE4.js → chunk-TT5B36WO.js} +16 -20
  61. package/dist/{chunk-SF3JAWMY.js → chunk-TWILCDUE.js} +3 -3
  62. package/dist/{chunk-NIZM3LAG.js → chunk-UINRIO77.js} +10 -10
  63. package/dist/{chunk-5H2LIQIH.js → chunk-UJXCDF4E.js} +4 -4
  64. package/dist/{chunk-Z5ID35YP.js → chunk-UTCPNJND.js} +2 -4
  65. package/dist/{chunk-U42ZEK7L.js → chunk-V4BYBIBU.js} +24 -15
  66. package/dist/{chunk-L4IN4OBB.js → chunk-VLI5SYXW.js} +7 -7
  67. package/dist/{chunk-43E26CDA.js → chunk-VS2M72PF.js} +4 -4
  68. package/dist/{chunk-KZ3PCDUJ.js → chunk-VV6HZQ5K.js} +2 -2
  69. package/dist/{chunk-Z5BTSBWW.js → chunk-WF2HDQPG.js} +4 -4
  70. package/dist/{chunk-TAJ2XFTT.js → chunk-XKMCL2YJ.js} +19 -16
  71. package/dist/{chunk-7GUYGQR4.js → chunk-XVEPB2UU.js} +4 -4
  72. package/dist/{chunk-YHTKDIF2.js → chunk-YGFNITPC.js} +11 -11
  73. package/dist/{chunk-I24O2RWT.js → chunk-YJOOIOSR.js} +84 -14
  74. package/dist/{chunk-KPX2OWZR.js → chunk-YKWHUPBP.js} +13 -14
  75. package/dist/{chunk-FRC4LDTQ.js → chunk-YMYPFX4O.js} +36 -30
  76. package/dist/{chunk-VOJOARA6.js → chunk-ZZXPYVS4.js} +82 -77
  77. package/dist/{dgmo-router-QWRF7ZKM.js → dgmo-router-464FE256.js} +4 -4
  78. package/dist/{dimensions-ES6O2T4H.js → dimensions-ILAVBRQ3.js} +7 -7
  79. package/dist/{flowchart-renderer-EXMRHFTQ.js → flowchart-renderer-6JKM2FA4.js} +7 -7
  80. package/dist/index.js +15 -15
  81. package/dist/{layout-HBWT2G23.js → layout-4LNMXLVK.js} +3 -3
  82. package/dist/{layout-UU4VJTOP.js → layout-62ERBWCM.js} +3 -3
  83. package/dist/{layout-N6X46MWG.js → layout-6SKHNQYO.js} +4 -4
  84. package/dist/{layout-OH4VQ3OI.js → layout-7JULRP4Y.js} +4 -4
  85. package/dist/{layout-QTZO6CW5.js → layout-FA37VP7V.js} +4 -4
  86. package/dist/layout-IN53LAE6.js +9 -0
  87. package/dist/{layout-H4H4OFE4.js → layout-IO6ORC5T.js} +3 -3
  88. package/dist/{layout-54P3DAXY.js → layout-LVMWK4QY.js} +5 -5
  89. package/dist/{layout-WCOEZPOI.js → layout-MNOTDWXW.js} +4 -4
  90. package/dist/{layout-2T2VCCTM.js → layout-RD7GDM4I.js} +5 -5
  91. package/dist/{layout-SKQMIXTG.js → layout-SBQTN2YM.js} +4 -4
  92. package/dist/{layout-5E2NQZNM.js → layout-SGYR6HBX.js} +3 -3
  93. package/dist/{layout-W3ZBJOIK.js → layout-WIMQIHBU.js} +5 -5
  94. package/dist/{layout-search-AJ6VUVUI.js → layout-search-C44CJQOB.js} +5 -5
  95. package/dist/{legend-constants-QQU3QYBF.js → legend-constants-RGINV5SF.js} +3 -3
  96. package/dist/{parser-KSIYWKYF.js → parser-CSKF2KNO.js} +8 -4
  97. package/dist/{parser-2BGDJJ2L.js → parser-WLL63XH7.js} +2 -2
  98. package/dist/{renderer-XLEYPLVL.js → renderer-2UIQVKXK.js} +8 -8
  99. package/dist/{renderer-KOWVTTYR.js → renderer-3GG2DEFQ.js} +7 -7
  100. package/dist/{renderer-XLPNUOYA.js → renderer-6NDYVZXQ.js} +10 -10
  101. package/dist/{renderer-2ARNFXSC.js → renderer-6ST44AVP.js} +10 -10
  102. package/dist/{renderer-YLM4CGBG.js → renderer-ALP46W2X.js} +8 -8
  103. package/dist/{renderer-NHFRVCDC.js → renderer-AOFIEF2T.js} +9 -9
  104. package/dist/{renderer-HLWEJQJW.js → renderer-BEVY3UP5.js} +5 -5
  105. package/dist/{renderer-H6AQ4UIR.js → renderer-BXPWSNTJ.js} +13 -13
  106. package/dist/{renderer-BYWLJDT4.js → renderer-EWTETTII.js} +8 -8
  107. package/dist/{renderer-KK2534AF.js → renderer-FHXAWDNI.js} +4 -4
  108. package/dist/{renderer-OB77AT7V.js → renderer-FI4IKF4I.js} +7 -7
  109. package/dist/{renderer-DMVUBKP7.js → renderer-GHYH6DLG.js} +4 -4
  110. package/dist/{renderer-LSBXYOID.js → renderer-GYYJ4APT.js} +10 -10
  111. package/dist/{renderer-M43ROWET.js → renderer-JFOHE3YB.js} +9 -9
  112. package/dist/{renderer-OA7FSZ4A.js → renderer-L5QGQTLV.js} +3 -3
  113. package/dist/{renderer-7OOC2ZO2.js → renderer-L7S6YVM6.js} +4 -4
  114. package/dist/{renderer-YELZR4QT.js → renderer-LCHVBTV4.js} +12 -12
  115. package/dist/{renderer-IN3UPTZS.js → renderer-M4DAYNWC.js} +3 -3
  116. package/dist/{renderer-WN47AMUM.js → renderer-NXIK3LOA.js} +8 -8
  117. package/dist/{renderer-QR5343AR.js → renderer-OWUXQDHM.js} +3 -3
  118. package/dist/{renderer-FCO42JLK.js → renderer-PJNJOCLB.js} +8 -8
  119. package/dist/{renderer-OYTERGAO.js → renderer-QQBUBD66.js} +9 -9
  120. package/dist/{renderer-PM7JPC3J.js → renderer-REFE3YFH.js} +11 -11
  121. package/dist/{renderer-C6KOE774.js → renderer-RL2JGVPC.js} +10 -10
  122. package/dist/{renderer-ZNTLBQ45.js → renderer-RVFPPKWN.js} +9 -9
  123. package/dist/{renderer-QEHUJHRK.js → renderer-SFQHFPC5.js} +10 -10
  124. package/dist/{renderer-LO4FXQHP.js → renderer-T4CMBGA5.js} +8 -8
  125. package/dist/{renderer-M3PQKXK2.js → renderer-TJD6A3AK.js} +13 -13
  126. package/dist/{renderer-2E7LQC32.js → renderer-URPIVAPI.js} +3 -3
  127. package/dist/{renderer-T5CUGSXP.js → renderer-WENGQEX6.js} +7 -7
  128. package/dist/{renderer-WR3FA3FF.js → renderer-WR6J7NKH.js} +8 -8
  129. package/dist/{renderer-YBEZ5V2H.js → renderer-X3V2G4UL.js} +3 -3
  130. package/dist/{renderer-KPEQ72FY.js → renderer-YAW4VHAI.js} +11 -11
  131. package/dist/{renderer-radial-XWAKJACV.js → renderer-radial-HOUGPUPW.js} +7 -7
  132. package/dist/{state-renderer-LIESKSBO.js → state-renderer-JJSQJZEL.js} +11 -11
  133. package/docs/ai-integration.md +1 -1
  134. package/docs/language-reference.md +5 -0
  135. package/gallery/fixtures/er.dgmo +1 -1
  136. package/package.json +5 -3
  137. package/dist/chunk-4ASYQ347.js +0 -185
  138. package/dist/layout-5XGYNYVT.js +0 -9
@@ -3,22 +3,23 @@ import {
3
3
  } from "./chunk-ICZ7M6IZ.js";
4
4
  import {
5
5
  layoutInfra
6
- } from "./chunk-43E26CDA.js";
6
+ } from "./chunk-VS2M72PF.js";
7
7
  import {
8
8
  renderInlineText
9
9
  } from "./chunk-WGC42WJU.js";
10
10
  import {
11
11
  COLLAPSE_BAR_HEIGHT,
12
12
  COLLAPSE_BAR_INSET,
13
+ EDGE_LABEL_KNOCKOUT_OPACITY,
13
14
  EDGE_STROKE_WIDTH,
14
15
  NODE_STROKE_WIDTH
15
- } from "./chunk-3CIOJ5YJ.js";
16
+ } from "./chunk-FJ57274M.js";
16
17
  import {
17
18
  ScaleContext
18
19
  } from "./chunk-YYVTBZZC.js";
19
20
  import {
20
21
  layoutInlineHeader
21
- } from "./chunk-6VJCURWU.js";
22
+ } from "./chunk-J2EXBAPZ.js";
22
23
  import {
23
24
  TITLE_FONT_SIZE,
24
25
  TITLE_FONT_WEIGHT,
@@ -27,14 +28,14 @@ import {
27
28
  } from "./chunk-A4GOY3PE.js";
28
29
  import {
29
30
  renderIntegratedLegend
30
- } from "./chunk-RBAW7VUG.js";
31
+ } from "./chunk-2EPV7CLY.js";
31
32
  import {
32
33
  getLegendExtent,
33
34
  getMaxLegendReservedHeight
34
- } from "./chunk-ES66QH6J.js";
35
+ } from "./chunk-FG24NXKN.js";
35
36
  import {
36
37
  FONT_FAMILY
37
- } from "./chunk-Z5ID35YP.js";
38
+ } from "./chunk-UTCPNJND.js";
38
39
  import {
39
40
  LEGEND_CAPSULE_PAD,
40
41
  LEGEND_DOT_R,
@@ -45,12 +46,12 @@ import {
45
46
  LEGEND_PILL_FONT_SIZE,
46
47
  LEGEND_PILL_PAD,
47
48
  measureLegendText
48
- } from "./chunk-SCJ7CAJF.js";
49
+ } from "./chunk-3HOCNSPD.js";
49
50
  import {
50
51
  CHAR_WIDTH_RATIO,
51
52
  measureText,
52
53
  truncateText
53
- } from "./chunk-4ASYQ347.js";
54
+ } from "./chunk-MTGGOCND.js";
54
55
  import {
55
56
  parseInfra
56
57
  } from "./chunk-I7IQ2NEJ.js";
@@ -948,7 +949,7 @@ function renderEdgeLabels(svg, edges, nodes, groups, palette, _isDark, animate,
948
949
  const labelText = edge.label;
949
950
  const g = svg.append("g").attr("class", animate ? "infra-edge-label" : "");
950
951
  const textWidth = measureText(labelText, EDGE_LABEL_FONT_SIZE) + 8;
951
- g.append("rect").attr("x", midPt.x - textWidth / 2).attr("y", midPt.y - 8).attr("width", textWidth).attr("height", 16).attr("rx", 3).attr("fill", palette.bg).attr("opacity", 0.9);
952
+ g.append("rect").attr("x", midPt.x - textWidth / 2).attr("y", midPt.y - 8).attr("width", textWidth).attr("height", 16).attr("rx", 3).attr("fill", palette.bg).attr("opacity", EDGE_LABEL_KNOCKOUT_OPACITY);
952
953
  g.append("text").attr("x", midPt.x).attr("y", midPt.y + 4).attr("text-anchor", "middle").attr("font-family", FONT_FAMILY).attr("font-size", sc.sEdgeLabelFontSize).attr("fill", palette.textMuted).text(labelText);
953
954
  if (animate) {
954
955
  const pathD = buildPathD(wps, direction);
@@ -1123,7 +1124,11 @@ function renderNodes(svg, nodes, palette, isDark, animate, expandedNodeIds, acti
1123
1124
  }
1124
1125
  const rows = [...computedSection, ...declaredSection];
1125
1126
  const maxKeyWidth = Math.max(
1126
- ...rows.map((r) => measureText(`${r.key}: `, sc.sMetaFontSize))
1127
+ ...rows.map(
1128
+ (r) => measureText(`${r.key}: `, sc.sMetaFontSize, {
1129
+ bold: Boolean(r.inverted && r.invertedBg)
1130
+ })
1131
+ )
1127
1132
  );
1128
1133
  const valueX = x + 10 + maxKeyWidth;
1129
1134
  let rowY = sepY + NODE_SEPARATOR_GAP + sc.sMetaFontSize;
@@ -1364,19 +1369,19 @@ function renderLegend(rootSvg, legendGroups, totalWidth, legendY, palette, isDar
1364
1369
  if (playback && playback.expanded && !playbackEl.empty()) {
1365
1370
  const pillWidth = measureLegendText("Playback", LEGEND_PILL_FONT_SIZE) + LEGEND_PILL_PAD;
1366
1371
  let entryX = pillWidth + 8;
1367
- const entryY = LEGEND_HEIGHT / 2 + LEGEND_ENTRY_FONT_SIZE / 2 - 1;
1372
+ const entryY = LEGEND_HEIGHT / 2;
1368
1373
  const ppLabel = playback.paused ? "\u25B6" : "\u23F8";
1369
- playbackEl.append("text").attr("x", entryX).attr("y", entryY).attr("font-family", FONT_FAMILY).attr("font-size", LEGEND_PILL_FONT_SIZE).attr("fill", palette.textMuted).attr("data-playback-action", "toggle-pause").style("cursor", "pointer").text(ppLabel);
1374
+ playbackEl.append("text").attr("x", entryX).attr("y", entryY).attr("dominant-baseline", "central").attr("font-family", FONT_FAMILY).attr("font-size", LEGEND_PILL_FONT_SIZE).attr("fill", palette.textMuted).attr("data-playback-action", "toggle-pause").style("cursor", "pointer").text(ppLabel);
1370
1375
  entryX += LEGEND_PILL_FONT_SIZE * 0.8 + 6;
1371
1376
  for (const s of playback.speedOptions) {
1372
1377
  const label = `${s}x`;
1373
1378
  const isSpeedActive = playback.speed === s;
1374
- const slotW = measureLegendText(label, LEGEND_ENTRY_FONT_SIZE) + SPEED_BADGE_H_PAD * 2;
1379
+ const slotW = measureLegendText(label, LEGEND_ENTRY_FONT_SIZE, { bold: true }) + SPEED_BADGE_H_PAD * 2;
1375
1380
  const badgeH = LEGEND_ENTRY_FONT_SIZE + SPEED_BADGE_V_PAD * 2;
1376
1381
  const badgeY = (LEGEND_HEIGHT - badgeH) / 2;
1377
1382
  const speedG = playbackEl.append("g").attr("data-playback-action", "set-speed").attr("data-playback-value", String(s)).style("cursor", "pointer");
1378
1383
  speedG.append("rect").attr("x", entryX).attr("y", badgeY).attr("width", slotW).attr("height", badgeH).attr("rx", badgeH / 2).attr("fill", isSpeedActive ? palette.primary : "transparent");
1379
- speedG.append("text").attr("x", entryX + slotW / 2).attr("y", entryY).attr("font-family", FONT_FAMILY).attr("font-size", LEGEND_ENTRY_FONT_SIZE).attr("font-weight", isSpeedActive ? "600" : "400").attr("fill", isSpeedActive ? palette.bg : palette.textMuted).attr("text-anchor", "middle").text(label);
1384
+ speedG.append("text").attr("x", entryX + slotW / 2).attr("y", entryY).attr("dominant-baseline", "central").attr("font-family", FONT_FAMILY).attr("font-size", LEGEND_ENTRY_FONT_SIZE).attr("font-weight", isSpeedActive ? "600" : "400").attr("fill", isSpeedActive ? palette.bg : palette.textMuted).attr("text-anchor", "middle").text(label);
1380
1385
  entryX += slotW + SPEED_BADGE_GAP;
1381
1386
  }
1382
1387
  }
@@ -1608,4 +1613,4 @@ export {
1608
1613
  renderInfra,
1609
1614
  parseAndLayoutInfra
1610
1615
  };
1611
- //# sourceMappingURL=chunk-SVR3YFM3.js.map
1616
+ //# sourceMappingURL=chunk-C666LP3O.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  measureText,
3
3
  wrapTextToWidth
4
- } from "./chunk-4ASYQ347.js";
4
+ } from "./chunk-MTGGOCND.js";
5
5
  import {
6
6
  fillModeFromOptions
7
7
  } from "./chunk-P2PUWV3Y.js";
@@ -290,4 +290,4 @@ export {
290
290
  scoreToCurveY,
291
291
  layoutJourneyMap
292
292
  };
293
- //# sourceMappingURL=chunk-KRTO7NRK.js.map
293
+ //# sourceMappingURL=chunk-D2WHS23S.js.map
@@ -13,15 +13,16 @@ import {
13
13
  stripInlineMarkdown
14
14
  } from "./chunk-WGC42WJU.js";
15
15
  import {
16
+ EDGE_LABEL_KNOCKOUT_OPACITY,
16
17
  EDGE_STROKE_WIDTH,
17
18
  NODE_STROKE_WIDTH
18
- } from "./chunk-3CIOJ5YJ.js";
19
+ } from "./chunk-FJ57274M.js";
19
20
  import {
20
21
  ScaleContext
21
22
  } from "./chunk-YYVTBZZC.js";
22
23
  import {
23
24
  layoutInlineHeader
24
- } from "./chunk-6VJCURWU.js";
25
+ } from "./chunk-J2EXBAPZ.js";
25
26
  import {
26
27
  TITLE_FONT_SIZE,
27
28
  TITLE_FONT_WEIGHT,
@@ -29,19 +30,19 @@ import {
29
30
  } from "./chunk-A4GOY3PE.js";
30
31
  import {
31
32
  renderIntegratedLegend
32
- } from "./chunk-RBAW7VUG.js";
33
+ } from "./chunk-2EPV7CLY.js";
33
34
  import {
34
35
  getLegendExtent,
35
36
  getMaxLegendReservedHeight
36
- } from "./chunk-ES66QH6J.js";
37
+ } from "./chunk-FG24NXKN.js";
37
38
  import {
38
39
  FONT_FAMILY
39
- } from "./chunk-Z5ID35YP.js";
40
+ } from "./chunk-UTCPNJND.js";
40
41
  import {
41
42
  CHAR_WIDTH_RATIO,
42
43
  measureText,
43
44
  truncateText
44
- } from "./chunk-4ASYQ347.js";
45
+ } from "./chunk-MTGGOCND.js";
45
46
  import {
46
47
  resolveTagColor
47
48
  } from "./chunk-MDI5FMWO.js";
@@ -126,16 +127,17 @@ function splitLabelChunks(label) {
126
127
  return chunks;
127
128
  }
128
129
  function fitLabelToHeader(label, nodeWidth, maxLines) {
130
+ const BOLD = { bold: true };
129
131
  const maxTextWidth = nodeWidth - NODE_TEXT_PADDING * 2;
130
132
  const words = splitLabelChunks(label);
131
133
  for (let fontSize = NODE_FONT_SIZE; fontSize >= MIN_NODE_FONT_SIZE; fontSize--) {
132
- if (maxTextWidth < measureText("MM", fontSize)) continue;
134
+ if (maxTextWidth < measureText("MM", fontSize, BOLD)) continue;
133
135
  const lines = [];
134
136
  let current = "";
135
137
  for (const word of words) {
136
138
  const joiner = current && word.spaceBefore ? " " : "";
137
139
  const test = current ? `${current}${joiner}${word.text}` : word.text;
138
- if (measureText(test, fontSize) <= maxTextWidth) {
140
+ if (measureText(test, fontSize, BOLD) <= maxTextWidth) {
139
141
  current = test;
140
142
  } else {
141
143
  if (current) lines.push(current);
@@ -143,28 +145,31 @@ function fitLabelToHeader(label, nodeWidth, maxLines) {
143
145
  }
144
146
  }
145
147
  if (current) lines.push(current);
146
- const fits = (l) => measureText(l, fontSize) <= maxTextWidth;
148
+ const fits = (l) => measureText(l, fontSize, BOLD) <= maxTextWidth;
147
149
  if (lines.length <= maxLines && lines.every(fits)) {
148
150
  return { lines, fontSize };
149
151
  }
150
152
  if (lines.length <= maxLines) {
151
153
  const result2 = lines.map(
152
- (l) => fits(l) ? l : truncateText(l, fontSize, maxTextWidth)
154
+ (l) => fits(l) ? l : truncateText(l, fontSize, maxTextWidth, BOLD)
153
155
  );
154
156
  return { lines: result2, fontSize };
155
157
  }
156
- const result = lines.slice(0, maxLines).map((l) => fits(l) ? l : truncateText(l, fontSize, maxTextWidth));
158
+ const result = lines.slice(0, maxLines).map(
159
+ (l) => fits(l) ? l : truncateText(l, fontSize, maxTextWidth, BOLD)
160
+ );
157
161
  const last = result[maxLines - 1];
158
162
  if (!last.endsWith("\u2026")) {
159
163
  result[maxLines - 1] = truncateText(
160
164
  last + "\u2026",
161
165
  fontSize,
162
- maxTextWidth
166
+ maxTextWidth,
167
+ BOLD
163
168
  );
164
169
  }
165
170
  return { lines: result, fontSize };
166
171
  }
167
- const truncated = truncateText(label, MIN_NODE_FONT_SIZE, maxTextWidth);
172
+ const truncated = truncateText(label, MIN_NODE_FONT_SIZE, maxTextWidth, BOLD);
168
173
  return { lines: [truncated], fontSize: MIN_NODE_FONT_SIZE };
169
174
  }
170
175
  function nodeColors(node, tagGroups, activeGroupName, palette, isDark, value, fillMode) {
@@ -738,7 +743,7 @@ function renderBoxesAndLines(container, parsed, layout, palette, isDark, options
738
743
  const lh = le.labelHeight ?? sEdgeLabelFontSize + 6;
739
744
  const lines = le.labelLines;
740
745
  const labelG = labelLayer.append("g").attr("class", "bl-edge-label").attr("data-line-number", String(le.lineNumber));
741
- labelG.append("rect").attr("x", lx - lw / 2).attr("y", ly - lh / 2).attr("width", lw).attr("height", lh).attr("rx", 3).attr("fill", palette.bg).attr("opacity", 0.72);
746
+ labelG.append("rect").attr("x", lx - lw / 2).attr("y", ly - lh / 2).attr("width", lw).attr("height", lh).attr("rx", 3).attr("fill", palette.bg).attr("opacity", EDGE_LABEL_KNOCKOUT_OPACITY);
742
747
  const text = labelG.append("text").attr("x", lx).attr("text-anchor", "middle").attr("font-family", FONT_FAMILY).attr("font-size", sEdgeLabelFontSize).attr("fill", palette.textMuted);
743
748
  const firstY = ly - (lines.length - 1) / 2 * labelLineHeight + sEdgeLabelFontSize / 3;
744
749
  lines.forEach((line2, k) => {
@@ -833,4 +838,4 @@ export {
833
838
  renderBoxesAndLines,
834
839
  renderBoxesAndLinesForExport
835
840
  };
836
- //# sourceMappingURL=chunk-LYTEVE2N.js.map
841
+ //# sourceMappingURL=chunk-DBF4IM4U.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  buildPlacedNotes
3
- } from "./chunk-LDVUPGWC.js";
3
+ } from "./chunk-OWVDD5EC.js";
4
4
  import {
5
5
  noteCanvasShift
6
6
  } from "./chunk-6EK55ART.js";
7
7
  import {
8
8
  measureText
9
- } from "./chunk-4ASYQ347.js";
9
+ } from "./chunk-MTGGOCND.js";
10
10
  import {
11
11
  resolveNotes
12
12
  } from "./chunk-7NK42OIB.js";
@@ -26,7 +26,7 @@ function computeNodeDimensions(node) {
26
26
  const fields = node.members.filter((m) => !m.isMethod);
27
27
  const methods = node.members.filter((m) => m.isMethod);
28
28
  const isEnum = node.modifier === "enum";
29
- let maxTextWidth = measureText(node.name, CLASS_FONT_SIZE);
29
+ let maxTextWidth = measureText(node.name, CLASS_FONT_SIZE, { bold: true });
30
30
  if (node.modifier) {
31
31
  maxTextWidth = Math.max(
32
32
  maxTextWidth,
@@ -201,4 +201,4 @@ function layoutClassDiagram(parsed, options) {
201
201
  export {
202
202
  layoutClassDiagram
203
203
  };
204
- //# sourceMappingURL=chunk-PCWPYOT4.js.map
204
+ //# sourceMappingURL=chunk-ET4R3AU5.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-WGC42WJU.js";
8
8
  import {
9
9
  FONT_FAMILY
10
- } from "./chunk-Z5ID35YP.js";
10
+ } from "./chunk-UTCPNJND.js";
11
11
  import {
12
12
  DAY_MS,
13
13
  applyOrdinalTemplate,
@@ -1030,4 +1030,4 @@ export {
1030
1030
  renderCountdown,
1031
1031
  renderCountdownForExport
1032
1032
  };
1033
- //# sourceMappingURL=chunk-2KOBOIB2.js.map
1033
+ //# sourceMappingURL=chunk-FBD5ASMB.js.map
@@ -13,7 +13,7 @@ import {
13
13
  LEGEND_TOGGLE_DOT_R,
14
14
  measureLegendText,
15
15
  truncateLegendText
16
- } from "./chunk-SCJ7CAJF.js";
16
+ } from "./chunk-3HOCNSPD.js";
17
17
 
18
18
  // src/utils/number-format.ts
19
19
  function compactNumber(n) {
@@ -566,4 +566,4 @@ export {
566
566
  getMaxLegendReservedHeight,
567
567
  getLegendExtent
568
568
  };
569
- //# sourceMappingURL=chunk-ES66QH6J.js.map
569
+ //# sourceMappingURL=chunk-FG24NXKN.js.map
@@ -4,6 +4,7 @@ var EDGE_STROKE_WIDTH = 1.5;
4
4
  var CARD_RADIUS = 6;
5
5
  var CONTAINER_RADIUS = 8;
6
6
  var COLLAPSE_BAR_INSET = 0;
7
+ var EDGE_LABEL_KNOCKOUT_OPACITY = 0.9;
7
8
  var HEADER_HEIGHT = 28;
8
9
  var LABEL_FONT_SIZE = 13;
9
10
  var META_FONT_SIZE = 11;
@@ -21,6 +22,7 @@ export {
21
22
  CARD_RADIUS,
22
23
  CONTAINER_RADIUS,
23
24
  COLLAPSE_BAR_INSET,
25
+ EDGE_LABEL_KNOCKOUT_OPACITY,
24
26
  HEADER_HEIGHT,
25
27
  LABEL_FONT_SIZE,
26
28
  META_FONT_SIZE,
@@ -32,4 +34,4 @@ export {
32
34
  CONTAINER_META_FONT_SIZE,
33
35
  CONTAINER_META_LINE_HEIGHT
34
36
  };
35
- //# sourceMappingURL=chunk-3CIOJ5YJ.js.map
37
+ //# sourceMappingURL=chunk-FJ57274M.js.map
@@ -18,35 +18,35 @@ var GLOBAL_DIRECTIVES = /* @__PURE__ */ new Set([
18
18
  "legend-inline"
19
19
  ]);
20
20
  var EXAMPLE_URL = "https://online.diagrammo.app/d/dgm_7f2a91";
21
- function resolveTarget(value) {
21
+ function resolveLiveLinkTarget(value) {
22
22
  const trimmed = value.trim();
23
23
  const asUrl = parseCloudReferenceUrl(trimmed)?.id;
24
24
  if (asUrl) return asUrl;
25
25
  if (!/^[^\s[\]]+$/.test(trimmed)) return null;
26
26
  return parseCloudReferenceFence(`live-link ${trimmed}`)?.id ?? null;
27
27
  }
28
- function pinnedRevision(value) {
28
+ function liveLinkPinnedRevision(value) {
29
29
  const trimmed = value.trim();
30
- if (resolveTarget(trimmed) !== null) return null;
30
+ if (resolveLiveLinkTarget(trimmed) !== null) return null;
31
31
  try {
32
32
  const url = new URL(trimmed);
33
33
  const at2 = url.searchParams.get("at");
34
34
  if (at2 !== null) {
35
35
  url.searchParams.delete("at");
36
- if (resolveTarget(url.toString()) !== null) return `?at=${at2}`;
36
+ if (resolveLiveLinkTarget(url.toString()) !== null) return `?at=${at2}`;
37
37
  }
38
38
  } catch {
39
39
  }
40
40
  const at = trimmed.indexOf("@");
41
41
  if (at > 0) {
42
42
  const pin = trimmed.slice(at);
43
- if (resolveTarget(trimmed.slice(0, at)) !== null) return pin;
43
+ if (resolveLiveLinkTarget(trimmed.slice(0, at)) !== null) return pin;
44
44
  }
45
45
  return null;
46
46
  }
47
47
  function isLiveLinkLine(line) {
48
48
  const trimmed = line.trim();
49
- return parseCloudReferenceFence(trimmed) !== null || pinnedRevision(trimmed) !== null;
49
+ return parseCloudReferenceFence(trimmed) !== null || liveLinkPinnedRevision(trimmed) !== null;
50
50
  }
51
51
  function parseLiveLink(content) {
52
52
  const diagnostics = [];
@@ -76,7 +76,7 @@ function parseLiveLink(content) {
76
76
  bodyStart = i + 1;
77
77
  break;
78
78
  }
79
- const pin = pinnedRevision(trimmed);
79
+ const pin = liveLinkPinnedRevision(trimmed);
80
80
  if (pin !== null) {
81
81
  fail(
82
82
  i + 1,
@@ -169,7 +169,7 @@ function parseLiveLink(content) {
169
169
  return done(null, null);
170
170
  }
171
171
  if (url) {
172
- const pin = pinnedRevision(url.value);
172
+ const pin = liveLinkPinnedRevision(url.value);
173
173
  if (pin !== null) {
174
174
  fail(
175
175
  url.line,
@@ -177,7 +177,7 @@ function parseLiveLink(content) {
177
177
  );
178
178
  return done(titleSlot, null);
179
179
  }
180
- const id2 = resolveTarget(url.value);
180
+ const id2 = resolveLiveLinkTarget(url.value);
181
181
  if (id2 === null) {
182
182
  fail(
183
183
  url.line,
@@ -194,7 +194,7 @@ function parseLiveLink(content) {
194
194
  );
195
195
  return done(titleSlot, null);
196
196
  }
197
- const shorthandPin = pinnedRevision(titleSlot);
197
+ const shorthandPin = liveLinkPinnedRevision(titleSlot);
198
198
  if (shorthandPin !== null) {
199
199
  fail(
200
200
  titleLineNumber,
@@ -202,7 +202,7 @@ function parseLiveLink(content) {
202
202
  );
203
203
  return done(null, null);
204
204
  }
205
- const id = resolveTarget(titleSlot);
205
+ const id = resolveLiveLinkTarget(titleSlot);
206
206
  if (id === null) {
207
207
  fail(
208
208
  titleLineNumber,
@@ -214,7 +214,9 @@ function parseLiveLink(content) {
214
214
  }
215
215
 
216
216
  export {
217
+ resolveLiveLinkTarget,
218
+ liveLinkPinnedRevision,
217
219
  isLiveLinkLine,
218
220
  parseLiveLink
219
221
  };
220
- //# sourceMappingURL=chunk-6BVIZW5N.js.map
222
+ //# sourceMappingURL=chunk-FLFBY5GN.js.map
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-A4GOY3PE.js";
9
9
  import {
10
10
  FONT_FAMILY
11
- } from "./chunk-Z5ID35YP.js";
11
+ } from "./chunk-UTCPNJND.js";
12
12
  import {
13
13
  resolveTagColor,
14
14
  tagAttrKey
@@ -401,4 +401,4 @@ function drawCenteredLabel(g, label, cx, cy, fill, fontSize, tight = false, halo
401
401
  export {
402
402
  renderSwimlaneForExport
403
403
  };
404
- //# sourceMappingURL=chunk-XUN3MIO3.js.map
404
+ //# sourceMappingURL=chunk-G64OVYUT.js.map
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  computeNodeText,
3
3
  layoutMindmap
4
- } from "./chunk-U42ZEK7L.js";
4
+ } from "./chunk-V4BYBIBU.js";
5
5
  import {
6
6
  extractExportSvg,
7
7
  runInExportContainer
8
- } from "./chunk-KZ3PCDUJ.js";
8
+ } from "./chunk-VV6HZQ5K.js";
9
9
  import {
10
10
  renderInlineText
11
11
  } from "./chunk-WGC42WJU.js";
@@ -13,30 +13,30 @@ import {
13
13
  COLLAPSE_BAR_HEIGHT,
14
14
  EDGE_STROKE_WIDTH,
15
15
  NODE_STROKE_WIDTH
16
- } from "./chunk-3CIOJ5YJ.js";
16
+ } from "./chunk-FJ57274M.js";
17
17
  import {
18
18
  ScaleContext
19
19
  } from "./chunk-YYVTBZZC.js";
20
20
  import {
21
21
  layoutInlineHeader
22
- } from "./chunk-6VJCURWU.js";
22
+ } from "./chunk-J2EXBAPZ.js";
23
23
  import {
24
24
  TITLE_FONT_SIZE,
25
25
  TITLE_FONT_WEIGHT
26
26
  } from "./chunk-A4GOY3PE.js";
27
27
  import {
28
28
  renderIntegratedLegend
29
- } from "./chunk-RBAW7VUG.js";
29
+ } from "./chunk-2EPV7CLY.js";
30
30
  import {
31
31
  getLegendExtent,
32
32
  getMaxLegendReservedHeight
33
- } from "./chunk-ES66QH6J.js";
33
+ } from "./chunk-FG24NXKN.js";
34
34
  import {
35
35
  FONT_FAMILY
36
- } from "./chunk-Z5ID35YP.js";
36
+ } from "./chunk-UTCPNJND.js";
37
37
  import {
38
38
  LEGEND_GROUP_GAP
39
- } from "./chunk-SCJ7CAJF.js";
39
+ } from "./chunk-3HOCNSPD.js";
40
40
  import {
41
41
  parseMindmap
42
42
  } from "./chunk-OLPWKS5L.js";
@@ -426,4 +426,4 @@ export {
426
426
  renderMindmap,
427
427
  renderMindmapForExport
428
428
  };
429
- //# sourceMappingURL=chunk-RQL25P3U.js.map
429
+ //# sourceMappingURL=chunk-G7QZF6T3.js.map
@@ -7,10 +7,10 @@ import {
7
7
  } from "./chunk-A4GOY3PE.js";
8
8
  import {
9
9
  FONT_FAMILY
10
- } from "./chunk-Z5ID35YP.js";
10
+ } from "./chunk-UTCPNJND.js";
11
11
  import {
12
12
  measureText
13
- } from "./chunk-4ASYQ347.js";
13
+ } from "./chunk-MTGGOCND.js";
14
14
  import {
15
15
  fillModeFromOptions
16
16
  } from "./chunk-P2PUWV3Y.js";
@@ -309,7 +309,7 @@ function renderNav(g, node, ctx) {
309
309
  for (const child of el.children) {
310
310
  const isActive = child.states.includes("active");
311
311
  g.append("text").attr("x", x).attr("y", node.height / 2 + 4).attr("fill", isActive ? palette.primary : palette.text).attr("font-size", 13).attr("font-weight", isActive ? "600" : "normal").text(child.label);
312
- const labelW = measureText(child.label, 13);
312
+ const labelW = measureText(child.label, 13, { bold: isActive });
313
313
  if (isActive) {
314
314
  g.append("line").attr("x1", x).attr("y1", node.height - 4).attr("x2", x + labelW).attr("y2", node.height - 4).attr("stroke", palette.primary).attr("stroke-width", 2);
315
315
  }
@@ -323,7 +323,7 @@ function renderTabs(g, node, ctx) {
323
323
  let x = 0;
324
324
  for (const child of el.children) {
325
325
  const isActive = child.states.includes("active");
326
- const tabW = measureText(child.label, 13) + 24;
326
+ const tabW = measureText(child.label, 13, { bold: isActive }) + 24;
327
327
  if (isActive) {
328
328
  g.append("line").attr("x1", x).attr("y1", node.height - 1).attr("x2", x + tabW).attr("y2", node.height - 1).attr("stroke", palette.primary).attr("stroke-width", 2);
329
329
  }
@@ -377,7 +377,7 @@ function renderTableCell(g, text, x, y, maxW, rowH, ctx) {
377
377
  const isGhost = stateStr === "ghost";
378
378
  const isDestructive = stateStr === "destructive";
379
379
  const fill = isDestructive ? palette.destructive : palette.primary;
380
- const btnW = Math.min(measureText(label, 10) + 16, maxW);
380
+ const btnW = Math.min(measureText(label, 10, { bold: true }) + 16, maxW);
381
381
  const btnH = 20;
382
382
  const by = y + (rowH - btnH) / 2;
383
383
  if (isGhost) {
@@ -554,4 +554,4 @@ function renderModal(parent, node, ctx) {
554
554
  export {
555
555
  renderWireframe
556
556
  };
557
- //# sourceMappingURL=chunk-IGIJZHB6.js.map
557
+ //# sourceMappingURL=chunk-GC7CBX6C.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-WGC42WJU.js";
4
4
  import {
5
5
  layoutInlineHeader
6
- } from "./chunk-6VJCURWU.js";
6
+ } from "./chunk-J2EXBAPZ.js";
7
7
  import {
8
8
  TITLE_FONT_SIZE,
9
9
  TITLE_FONT_WEIGHT,
@@ -11,20 +11,20 @@ import {
11
11
  } from "./chunk-A4GOY3PE.js";
12
12
  import {
13
13
  renderIntegratedLegend
14
- } from "./chunk-RBAW7VUG.js";
14
+ } from "./chunk-2EPV7CLY.js";
15
15
  import {
16
16
  getLegendExtent,
17
17
  getMaxLegendReservedHeight
18
- } from "./chunk-ES66QH6J.js";
18
+ } from "./chunk-FG24NXKN.js";
19
19
  import {
20
20
  FONT_FAMILY
21
- } from "./chunk-Z5ID35YP.js";
21
+ } from "./chunk-UTCPNJND.js";
22
22
  import {
23
23
  LEGEND_GROUP_GAP
24
- } from "./chunk-SCJ7CAJF.js";
24
+ } from "./chunk-3HOCNSPD.js";
25
25
  import {
26
26
  measureText
27
- } from "./chunk-4ASYQ347.js";
27
+ } from "./chunk-MTGGOCND.js";
28
28
  import {
29
29
  resolveTagColor,
30
30
  tagAttrKey
@@ -622,13 +622,13 @@ var LEGEND_POSITION = {
622
622
  placement: "top-center",
623
623
  titleRelation: "below-title"
624
624
  };
625
- function clip(s, maxW, fs) {
626
- if (measureText(s, fs) <= maxW) return s;
625
+ function clip(s, maxW, fs, bold) {
626
+ if (measureText(s, fs, { bold }) <= maxW) return s;
627
627
  let lo = 0;
628
628
  let hi = s.length;
629
629
  while (lo < hi) {
630
630
  const mid = Math.ceil((lo + hi) / 2);
631
- if (measureText(s.slice(0, mid) + "\u2026", fs) <= maxW) lo = mid;
631
+ if (measureText(s.slice(0, mid) + "\u2026", fs, { bold }) <= maxW) lo = mid;
632
632
  else hi = mid - 1;
633
633
  }
634
634
  return lo <= 0 ? "" : s.slice(0, lo) + "\u2026";
@@ -806,14 +806,14 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
806
806
  "fill",
807
807
  fillMode === "outline" ? themeBaseBg(palette, isDark) : mix(c, palette.bg, isDark ? 20 : 14)
808
808
  ).attr("stroke", fillMode === "outline" ? c : mix(c, palette.bg, 55)).attr("stroke-width", 1);
809
- root.append("text").attr("x", (s.x0 + s.x1) / 2).attr("y", 18).attr("text-anchor", "middle").attr("font-size", 13).attr("font-weight", 800).attr("letter-spacing", 0.3).attr("fill", c).text(clip(s.label, s.x1 - s.x0, 13));
809
+ root.append("text").attr("x", (s.x0 + s.x1) / 2).attr("y", 18).attr("text-anchor", "middle").attr("font-size", 13).attr("font-weight", 800).attr("letter-spacing", 0.3).attr("fill", c).text(clip(s.label, s.x1 - s.x0, 13, true));
810
810
  }
811
811
  for (const col of layout.columns) {
812
812
  const c = col.color ? resolveColor(col.color, palette) ?? col.color : basePaint.muted;
813
813
  const covered = layout.sideLabels.some(
814
814
  (s) => col.x >= s.x0 && col.x <= s.x1
815
815
  );
816
- root.append("text").attr("x", col.x).attr("y", covered ? roundY : 22).attr("text-anchor", "middle").attr("font-size", covered ? 14 : 15).attr("font-weight", covered ? 700 : 800).attr("fill", c).attr("letter-spacing", 0.4).text(clip(col.label, BOX_W + 20, covered ? 14 : 15));
816
+ root.append("text").attr("x", col.x).attr("y", covered ? roundY : 22).attr("text-anchor", "middle").attr("font-size", covered ? 14 : 15).attr("font-weight", covered ? 700 : 800).attr("fill", c).attr("letter-spacing", 0.4).text(clip(col.label, BOX_W + 20, covered ? 14 : 15, true));
817
817
  }
818
818
  for (const m of layout.matches) {
819
819
  drawConnector(root, m, m.topFrom, m.y - HALF_SPAN2, basePaint);
@@ -940,7 +940,7 @@ function drawBox(g, cx, cy, name, info, sidePaint, palette, isDark, m, activeKey
940
940
  let leftPad = 11;
941
941
  if (info.seed !== null) {
942
942
  cell.append("text").attr("x", x + 9).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 10).attr("font-weight", 700).attr("fill", gutterColor).text(info.seed);
943
- leftPad = 9 + Math.max(12, measureText(String(info.seed), 10)) + 6;
943
+ leftPad = 9 + Math.max(12, measureText(String(info.seed), 10, { bold: true })) + 6;
944
944
  }
945
945
  let rightPad = 11;
946
946
  if (info.score) rightPad += 20;
@@ -948,7 +948,14 @@ function drawBox(g, cx, cy, name, info, sidePaint, palette, isDark, m, activeKey
948
948
  drawHome(cell, x + BOX_W - rightPad - 6, cy, gutterColor);
949
949
  rightPad += 16;
950
950
  }
951
- cell.append("text").attr("x", x + leftPad).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 12.5).attr("font-weight", weight).attr("fill", textColor).text(clip(isTBD ? "TBD" : name, BOX_W - leftPad - rightPad, 12.5));
951
+ cell.append("text").attr("x", x + leftPad).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 12.5).attr("font-weight", weight).attr("fill", textColor).text(
952
+ clip(
953
+ isTBD ? "TBD" : name,
954
+ BOX_W - leftPad - rightPad,
955
+ 12.5,
956
+ weight >= 600
957
+ )
958
+ );
952
959
  if (info.score) {
953
960
  cell.append("text").attr("x", x + BOX_W - 11).attr("y", cy + 4).attr("text-anchor", "end").attr("font-size", 12).attr("font-weight", info.isWinner ? 700 : 500).attr("fill", info.isWinner ? textColor : gutterColor).text(info.score);
954
961
  }
@@ -994,4 +1001,4 @@ export {
994
1001
  renderBracket,
995
1002
  renderBracketForExport
996
1003
  };
997
- //# sourceMappingURL=chunk-B6AONGTI.js.map
1004
+ //# sourceMappingURL=chunk-GDQN2TPX.js.map