@diagrammo/dgmo 0.64.1 → 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 (148) hide show
  1. package/LICENSE +1 -1
  2. package/dist/advanced.d.ts +6771 -0
  3. package/dist/advanced.js +71 -71
  4. package/dist/block.d.ts +142 -0
  5. package/dist/block.js +15 -15
  6. package/dist/chart-meta-D98NbYDp.d.ts +238 -0
  7. package/dist/chart-meta.d.ts +2 -0
  8. package/dist/chart-meta.js +3 -3
  9. package/dist/{charts-d3-ZTXJWEHI.js → charts-d3-I6OE5K3B.js} +9 -9
  10. package/dist/{chunk-C6DMG2V6.js → chunk-27YPE7NO.js} +28 -12
  11. package/dist/{chunk-RBAW7VUG.js → chunk-2EPV7CLY.js} +5 -7
  12. package/dist/{chunk-SCJ7CAJF.js → chunk-3HOCNSPD.js} +2 -2
  13. package/dist/{chunk-Z2ADWRSW.js → chunk-3PSPUYT5.js} +3 -3
  14. package/dist/{chunk-RBBJIHNL.js → chunk-4IE42ODL.js} +11 -11
  15. package/dist/{chunk-SMCUX42K.js → chunk-4TM7MWU4.js} +7 -6
  16. package/dist/{chunk-H3HFC3SQ.js → chunk-5GM6BZO7.js} +3 -3
  17. package/dist/{chunk-7T3A2UK3.js → chunk-5T7K6QND.js} +15 -16
  18. package/dist/{chunk-NKRCPBTJ.js → chunk-6BOPYGJC.js} +6 -6
  19. package/dist/{chunk-37EHGTQ2.js → chunk-6E5YZR4S.js} +18 -16
  20. package/dist/{chunk-MHI6W6XS.js → chunk-6IUL6LER.js} +10 -7
  21. package/dist/{chunk-S5RWWISJ.js → chunk-7L53J53J.js} +4 -4
  22. package/dist/{chunk-WDJ4HAGO.js → chunk-A6CTYC7O.js} +2 -2
  23. package/dist/{chunk-CDMF7P5A.js → chunk-BBCKUAUR.js} +2 -2
  24. package/dist/{chunk-AA4M6F2P.js → chunk-BBY57XAA.js} +3 -3
  25. package/dist/{chunk-NKRVFQGO.js → chunk-BDI25HWH.js} +18 -6
  26. package/dist/{chunk-SVR3YFM3.js → chunk-C666LP3O.js} +20 -15
  27. package/dist/{chunk-KRTO7NRK.js → chunk-D2WHS23S.js} +2 -2
  28. package/dist/{chunk-LYTEVE2N.js → chunk-DBF4IM4U.js} +20 -15
  29. package/dist/{chunk-PCWPYOT4.js → chunk-ET4R3AU5.js} +4 -4
  30. package/dist/{chunk-2KOBOIB2.js → chunk-FBD5ASMB.js} +2 -2
  31. package/dist/{chunk-ES66QH6J.js → chunk-FG24NXKN.js} +2 -2
  32. package/dist/{chunk-3CIOJ5YJ.js → chunk-FJ57274M.js} +3 -1
  33. package/dist/{chunk-6BVIZW5N.js → chunk-FLFBY5GN.js} +14 -12
  34. package/dist/{chunk-XUN3MIO3.js → chunk-G64OVYUT.js} +2 -2
  35. package/dist/{chunk-RQL25P3U.js → chunk-G7QZF6T3.js} +9 -9
  36. package/dist/{chunk-IGIJZHB6.js → chunk-GC7CBX6C.js} +6 -6
  37. package/dist/{chunk-B6AONGTI.js → chunk-GDQN2TPX.js} +21 -14
  38. package/dist/{chunk-CZUSH6NI.js → chunk-GMLSYNFP.js} +10 -9
  39. package/dist/{chunk-R6HCNSP6.js → chunk-GOW5VO6M.js} +2 -2
  40. package/dist/{chunk-SPHC4RYF.js → chunk-GXOMKWQ5.js} +10 -9
  41. package/dist/{chunk-MQHOKBJ6.js → chunk-IJ4FUFTR.js} +5 -5
  42. package/dist/{chunk-V3UQSKWJ.js → chunk-IJSFEU4J.js} +9 -9
  43. package/dist/{chunk-LSFZDBAP.js → chunk-IKHV5IJB.js} +2 -2
  44. package/dist/{chunk-LMXAB4YM.js → chunk-IZ6RWMBM.js} +9 -9
  45. package/dist/{chunk-6VJCURWU.js → chunk-J2EXBAPZ.js} +4 -5
  46. package/dist/{chunk-IX6N5MCY.js → chunk-JCL4K7AK.js} +12 -11
  47. package/dist/{chunk-OBKM6GIJ.js → chunk-JTUDM7S4.js} +10 -10
  48. package/dist/{chunk-CVVICCSB.js → chunk-L65WI4HO.js} +4 -4
  49. package/dist/{chunk-67D4MN2H.js → chunk-LK6LTSLH.js} +2 -2
  50. package/dist/{chunk-KOHIF4LD.js → chunk-MBODBL7C.js} +6 -5
  51. package/dist/chunk-MTGGOCND.js +638 -0
  52. package/dist/{chunk-VJARCVMH.js → chunk-MU3CJPJF.js} +2 -2
  53. package/dist/{chunk-RKTIIU7Z.js → chunk-N6XI5VTA.js} +4 -4
  54. package/dist/{chunk-ODUT5WMC.js → chunk-NVOU7N6C.js} +2 -2
  55. package/dist/{chunk-T4QXHE34.js → chunk-OWUWLZJT.js} +13 -11
  56. package/dist/{chunk-LDVUPGWC.js → chunk-OWVDD5EC.js} +2 -2
  57. package/dist/{chunk-M4HYPDER.js → chunk-P5OCINCI.js} +8 -8
  58. package/dist/{chunk-JU2VMFYC.js → chunk-PZOFMBF3.js} +2 -2
  59. package/dist/{chunk-YLK3JNWP.js → chunk-QNCXONBR.js} +2 -2
  60. package/dist/{chunk-DB2KQ5DN.js → chunk-QRWY5QTA.js} +5 -5
  61. package/dist/{chunk-I2ATN25N.js → chunk-R4XM44BW.js} +25 -16
  62. package/dist/{chunk-DJCZWQ2A.js → chunk-RTTZIX34.js} +4 -4
  63. package/dist/{chunk-OMTBYLKN.js → chunk-TPKNA2U5.js} +9 -7
  64. package/dist/{chunk-DN5HEDE4.js → chunk-TT5B36WO.js} +16 -20
  65. package/dist/{chunk-SF3JAWMY.js → chunk-TWILCDUE.js} +3 -3
  66. package/dist/{chunk-NIZM3LAG.js → chunk-UINRIO77.js} +10 -10
  67. package/dist/{chunk-5H2LIQIH.js → chunk-UJXCDF4E.js} +4 -4
  68. package/dist/{chunk-Z5ID35YP.js → chunk-UTCPNJND.js} +2 -4
  69. package/dist/{chunk-U42ZEK7L.js → chunk-V4BYBIBU.js} +24 -15
  70. package/dist/{chunk-L4IN4OBB.js → chunk-VLI5SYXW.js} +7 -7
  71. package/dist/{chunk-43E26CDA.js → chunk-VS2M72PF.js} +4 -4
  72. package/dist/{chunk-KZ3PCDUJ.js → chunk-VV6HZQ5K.js} +2 -2
  73. package/dist/{chunk-Z5BTSBWW.js → chunk-WF2HDQPG.js} +4 -4
  74. package/dist/{chunk-TAJ2XFTT.js → chunk-XKMCL2YJ.js} +19 -16
  75. package/dist/{chunk-7GUYGQR4.js → chunk-XVEPB2UU.js} +4 -4
  76. package/dist/{chunk-YHTKDIF2.js → chunk-YGFNITPC.js} +11 -11
  77. package/dist/{chunk-I24O2RWT.js → chunk-YJOOIOSR.js} +84 -14
  78. package/dist/{chunk-KPX2OWZR.js → chunk-YKWHUPBP.js} +13 -14
  79. package/dist/{chunk-FRC4LDTQ.js → chunk-YMYPFX4O.js} +36 -30
  80. package/dist/{chunk-VOJOARA6.js → chunk-ZZXPYVS4.js} +82 -77
  81. package/dist/cloud-reference.d.ts +96 -0
  82. package/dist/completion-registry.d.ts +129 -0
  83. package/dist/{dgmo-router-QWRF7ZKM.js → dgmo-router-464FE256.js} +4 -4
  84. package/dist/dgmo-router-Dd5PTjxl.d.ts +540 -0
  85. package/dist/{dimensions-ES6O2T4H.js → dimensions-ILAVBRQ3.js} +7 -7
  86. package/dist/{flowchart-renderer-EXMRHFTQ.js → flowchart-renderer-6JKM2FA4.js} +7 -7
  87. package/dist/index.d.ts +207 -0
  88. package/dist/index.js +15 -15
  89. package/dist/{layout-HBWT2G23.js → layout-4LNMXLVK.js} +3 -3
  90. package/dist/{layout-UU4VJTOP.js → layout-62ERBWCM.js} +3 -3
  91. package/dist/{layout-N6X46MWG.js → layout-6SKHNQYO.js} +4 -4
  92. package/dist/{layout-OH4VQ3OI.js → layout-7JULRP4Y.js} +4 -4
  93. package/dist/{layout-QTZO6CW5.js → layout-FA37VP7V.js} +4 -4
  94. package/dist/layout-IN53LAE6.js +9 -0
  95. package/dist/{layout-H4H4OFE4.js → layout-IO6ORC5T.js} +3 -3
  96. package/dist/{layout-54P3DAXY.js → layout-LVMWK4QY.js} +5 -5
  97. package/dist/{layout-WCOEZPOI.js → layout-MNOTDWXW.js} +4 -4
  98. package/dist/{layout-2T2VCCTM.js → layout-RD7GDM4I.js} +5 -5
  99. package/dist/{layout-SKQMIXTG.js → layout-SBQTN2YM.js} +4 -4
  100. package/dist/{layout-5E2NQZNM.js → layout-SGYR6HBX.js} +3 -3
  101. package/dist/{layout-W3ZBJOIK.js → layout-WIMQIHBU.js} +5 -5
  102. package/dist/{layout-search-AJ6VUVUI.js → layout-search-C44CJQOB.js} +5 -5
  103. package/dist/{legend-constants-QQU3QYBF.js → legend-constants-RGINV5SF.js} +3 -3
  104. package/dist/live-link-resolve.d.ts +73 -0
  105. package/dist/{parser-KSIYWKYF.js → parser-CSKF2KNO.js} +8 -4
  106. package/dist/{parser-2BGDJJ2L.js → parser-WLL63XH7.js} +2 -2
  107. package/dist/{renderer-XLEYPLVL.js → renderer-2UIQVKXK.js} +8 -8
  108. package/dist/{renderer-KOWVTTYR.js → renderer-3GG2DEFQ.js} +7 -7
  109. package/dist/{renderer-XLPNUOYA.js → renderer-6NDYVZXQ.js} +10 -10
  110. package/dist/{renderer-2ARNFXSC.js → renderer-6ST44AVP.js} +10 -10
  111. package/dist/{renderer-YLM4CGBG.js → renderer-ALP46W2X.js} +8 -8
  112. package/dist/{renderer-NHFRVCDC.js → renderer-AOFIEF2T.js} +9 -9
  113. package/dist/{renderer-HLWEJQJW.js → renderer-BEVY3UP5.js} +5 -5
  114. package/dist/{renderer-H6AQ4UIR.js → renderer-BXPWSNTJ.js} +13 -13
  115. package/dist/{renderer-BYWLJDT4.js → renderer-EWTETTII.js} +8 -8
  116. package/dist/{renderer-KK2534AF.js → renderer-FHXAWDNI.js} +4 -4
  117. package/dist/{renderer-OB77AT7V.js → renderer-FI4IKF4I.js} +7 -7
  118. package/dist/{renderer-DMVUBKP7.js → renderer-GHYH6DLG.js} +4 -4
  119. package/dist/{renderer-LSBXYOID.js → renderer-GYYJ4APT.js} +10 -10
  120. package/dist/{renderer-M43ROWET.js → renderer-JFOHE3YB.js} +9 -9
  121. package/dist/{renderer-OA7FSZ4A.js → renderer-L5QGQTLV.js} +3 -3
  122. package/dist/{renderer-7OOC2ZO2.js → renderer-L7S6YVM6.js} +4 -4
  123. package/dist/{renderer-YELZR4QT.js → renderer-LCHVBTV4.js} +12 -12
  124. package/dist/{renderer-IN3UPTZS.js → renderer-M4DAYNWC.js} +3 -3
  125. package/dist/{renderer-WN47AMUM.js → renderer-NXIK3LOA.js} +8 -8
  126. package/dist/{renderer-QR5343AR.js → renderer-OWUXQDHM.js} +3 -3
  127. package/dist/{renderer-FCO42JLK.js → renderer-PJNJOCLB.js} +8 -8
  128. package/dist/{renderer-OYTERGAO.js → renderer-QQBUBD66.js} +9 -9
  129. package/dist/{renderer-PM7JPC3J.js → renderer-REFE3YFH.js} +11 -11
  130. package/dist/{renderer-C6KOE774.js → renderer-RL2JGVPC.js} +10 -10
  131. package/dist/{renderer-ZNTLBQ45.js → renderer-RVFPPKWN.js} +9 -9
  132. package/dist/{renderer-QEHUJHRK.js → renderer-SFQHFPC5.js} +10 -10
  133. package/dist/{renderer-LO4FXQHP.js → renderer-T4CMBGA5.js} +8 -8
  134. package/dist/{renderer-M3PQKXK2.js → renderer-TJD6A3AK.js} +13 -13
  135. package/dist/{renderer-2E7LQC32.js → renderer-URPIVAPI.js} +3 -3
  136. package/dist/{renderer-T5CUGSXP.js → renderer-WENGQEX6.js} +7 -7
  137. package/dist/{renderer-WR3FA3FF.js → renderer-WR6J7NKH.js} +8 -8
  138. package/dist/{renderer-YBEZ5V2H.js → renderer-X3V2G4UL.js} +3 -3
  139. package/dist/{renderer-KPEQ72FY.js → renderer-YAW4VHAI.js} +11 -11
  140. package/dist/{renderer-radial-XWAKJACV.js → renderer-radial-HOUGPUPW.js} +7 -7
  141. package/dist/{state-renderer-LIESKSBO.js → state-renderer-JJSQJZEL.js} +11 -11
  142. package/dist/themes-DiUAG4Bf.d.ts +631 -0
  143. package/docs/ai-integration.md +1 -1
  144. package/docs/language-reference.md +5 -0
  145. package/gallery/fixtures/er.dgmo +1 -1
  146. package/package.json +5 -3
  147. package/dist/chunk-4ASYQ347.js +0 -185
  148. package/dist/layout-5XGYNYVT.js +0 -9
@@ -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
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  layoutInlineHeader
3
- } from "./chunk-6VJCURWU.js";
3
+ } from "./chunk-J2EXBAPZ.js";
4
4
  import {
5
5
  TITLE_FONT_SIZE,
6
6
  TITLE_FONT_WEIGHT,
@@ -8,20 +8,20 @@ import {
8
8
  } from "./chunk-A4GOY3PE.js";
9
9
  import {
10
10
  renderIntegratedLegend
11
- } from "./chunk-RBAW7VUG.js";
11
+ } from "./chunk-2EPV7CLY.js";
12
12
  import {
13
13
  getLegendExtent,
14
14
  getMaxLegendReservedHeight
15
- } from "./chunk-ES66QH6J.js";
15
+ } from "./chunk-FG24NXKN.js";
16
16
  import {
17
17
  FONT_FAMILY
18
- } from "./chunk-Z5ID35YP.js";
18
+ } from "./chunk-UTCPNJND.js";
19
19
  import {
20
20
  LEGEND_GROUP_GAP
21
- } from "./chunk-SCJ7CAJF.js";
21
+ } from "./chunk-3HOCNSPD.js";
22
22
  import {
23
23
  measureText
24
- } from "./chunk-4ASYQ347.js";
24
+ } from "./chunk-MTGGOCND.js";
25
25
  import {
26
26
  isBlockNode
27
27
  } from "./chunk-XSVWUOUZ.js";
@@ -287,12 +287,13 @@ function colorOf(node, ctx) {
287
287
  return resolveTagColor(node.metadata, ctx.tagGroups, ctx.activeGroup) ?? null;
288
288
  }
289
289
  function clipLabel(s, maxWidth, fs) {
290
- if (measureText(s, fs) <= maxWidth) return s;
290
+ if (measureText(s, fs, { bold: true }) <= maxWidth) return s;
291
291
  let lo = 0;
292
292
  let hi = s.length;
293
293
  while (lo < hi) {
294
294
  const mid = Math.ceil((lo + hi) / 2);
295
- if (measureText(s.slice(0, mid) + "\u2026", fs) <= maxWidth) lo = mid;
295
+ if (measureText(s.slice(0, mid) + "\u2026", fs, { bold: true }) <= maxWidth)
296
+ lo = mid;
296
297
  else hi = mid - 1;
297
298
  }
298
299
  return lo <= 0 ? "" : s.slice(0, lo) + "\u2026";
@@ -396,4 +397,4 @@ export {
396
397
  renderBlock,
397
398
  authoredCollapsedIds
398
399
  };
399
- //# sourceMappingURL=chunk-CZUSH6NI.js.map
400
+ //# sourceMappingURL=chunk-GMLSYNFP.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  measureText
3
- } from "./chunk-4ASYQ347.js";
3
+ } from "./chunk-MTGGOCND.js";
4
4
  import {
5
5
  formatDuration,
6
6
  formatScheduleValue,
@@ -603,4 +603,4 @@ export {
603
603
  layoutPert,
604
604
  relayoutPert
605
605
  };
606
- //# sourceMappingURL=chunk-R6HCNSP6.js.map
606
+ //# sourceMappingURL=chunk-GOW5VO6M.js.map
@@ -9,19 +9,19 @@ import {
9
9
  } from "./chunk-3A7KMF33.js";
10
10
  import {
11
11
  renderIntegratedLegend
12
- } from "./chunk-RBAW7VUG.js";
12
+ } from "./chunk-2EPV7CLY.js";
13
13
  import {
14
14
  getMaxLegendReservedHeight
15
- } from "./chunk-ES66QH6J.js";
15
+ } from "./chunk-FG24NXKN.js";
16
16
  import {
17
17
  FONT_FAMILY
18
- } from "./chunk-Z5ID35YP.js";
18
+ } from "./chunk-UTCPNJND.js";
19
19
  import {
20
20
  LEGEND_GROUP_GAP
21
- } from "./chunk-SCJ7CAJF.js";
21
+ } from "./chunk-3HOCNSPD.js";
22
22
  import {
23
23
  measureText
24
- } from "./chunk-4ASYQ347.js";
24
+ } from "./chunk-MTGGOCND.js";
25
25
  import {
26
26
  tagAttrKey
27
27
  } from "./chunk-MDI5FMWO.js";
@@ -362,7 +362,7 @@ function isBottomHalf(cell) {
362
362
  return mid > Math.PI / 2 && mid < 3 * Math.PI / 2;
363
363
  }
364
364
  function fitFs(text, maxFs, availLen) {
365
- const w = measureText(text, maxFs);
365
+ const w = measureText(text, maxFs, { bold: true });
366
366
  if (w <= availLen) return maxFs;
367
367
  return Math.max(MIN_LABEL_FS, Math.floor(maxFs * availLen / w));
368
368
  }
@@ -406,12 +406,13 @@ function clampFs(base, thickness) {
406
406
  return Math.max(8, Math.min(base, Math.round(thickness * 0.9)));
407
407
  }
408
408
  function clip(s, maxWidth, fs) {
409
- if (measureText(s, fs) <= maxWidth) return s;
409
+ if (measureText(s, fs, { bold: true }) <= maxWidth) return s;
410
410
  let lo = 0;
411
411
  let hi = s.length;
412
412
  while (lo < hi) {
413
413
  const mid = Math.ceil((lo + hi) / 2);
414
- if (measureText(s.slice(0, mid) + "\u2026", fs) <= maxWidth) lo = mid;
414
+ if (measureText(s.slice(0, mid) + "\u2026", fs, { bold: true }) <= maxWidth)
415
+ lo = mid;
415
416
  else hi = mid - 1;
416
417
  }
417
418
  return lo <= 0 ? "" : s.slice(0, lo) + "\u2026";
@@ -422,4 +423,4 @@ export {
422
423
  renderTreemapRadialForExport,
423
424
  renderTreemapRadial
424
425
  };
425
- //# sourceMappingURL=chunk-SPHC4RYF.js.map
426
+ //# sourceMappingURL=chunk-GXOMKWQ5.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  MONO_FAMILY
3
- } from "./chunk-S5RWWISJ.js";
3
+ } from "./chunk-7L53J53J.js";
4
4
  import {
5
5
  FONT_FAMILY
6
- } from "./chunk-Z5ID35YP.js";
6
+ } from "./chunk-UTCPNJND.js";
7
7
  import {
8
8
  truncateText
9
- } from "./chunk-4ASYQ347.js";
9
+ } from "./chunk-MTGGOCND.js";
10
10
 
11
11
  // src/live-link/renderer.ts
12
12
  var W = 560;
@@ -25,7 +25,7 @@ function renderLiveLinkCard(parsed, palette, theme) {
25
25
  const headline = parsed.title ?? parsed.id ?? "Unresolved live link";
26
26
  const headlineMono = parsed.title === null && parsed.id !== null;
27
27
  parts.push(
28
- `<text x="${CONTENT_X}" y="${y}" fill="${palette.text}" font-family="${headlineMono ? MONO_FAMILY : FONT_FAMILY}" font-size="${HEADLINE_FS}" font-weight="${headlineMono ? 500 : 700}">${escapeXml(truncateText(headline, HEADLINE_FS, CONTENT_W))}</text>`
28
+ `<text x="${CONTENT_X}" y="${y}" fill="${palette.text}" font-family="${headlineMono ? MONO_FAMILY : FONT_FAMILY}" font-size="${HEADLINE_FS}" font-weight="${headlineMono ? 500 : 700}">${escapeXml(truncateText(headline, HEADLINE_FS, CONTENT_W, { bold: !headlineMono }))}</text>`
29
29
  );
30
30
  y += 30;
31
31
  parts.push(
@@ -62,4 +62,4 @@ function escapeXml(s) {
62
62
  export {
63
63
  renderLiveLinkCard
64
64
  };
65
- //# sourceMappingURL=chunk-MQHOKBJ6.js.map
65
+ //# sourceMappingURL=chunk-IJ4FUFTR.js.map
@@ -11,10 +11,10 @@ import {
11
11
  META_LINE_HEIGHT,
12
12
  NODE_STROKE_WIDTH,
13
13
  SEPARATOR_GAP
14
- } from "./chunk-3CIOJ5YJ.js";
14
+ } from "./chunk-FJ57274M.js";
15
15
  import {
16
16
  layoutInlineHeader
17
- } from "./chunk-6VJCURWU.js";
17
+ } from "./chunk-J2EXBAPZ.js";
18
18
  import {
19
19
  TITLE_FONT_SIZE,
20
20
  TITLE_FONT_WEIGHT,
@@ -22,20 +22,20 @@ import {
22
22
  } from "./chunk-A4GOY3PE.js";
23
23
  import {
24
24
  renderIntegratedLegend
25
- } from "./chunk-RBAW7VUG.js";
25
+ } from "./chunk-2EPV7CLY.js";
26
26
  import {
27
27
  getLegendExtent,
28
28
  getMaxLegendReservedHeight
29
- } from "./chunk-ES66QH6J.js";
29
+ } from "./chunk-FG24NXKN.js";
30
30
  import {
31
31
  FONT_FAMILY
32
- } from "./chunk-Z5ID35YP.js";
32
+ } from "./chunk-UTCPNJND.js";
33
33
  import {
34
34
  LEGEND_GROUP_GAP
35
- } from "./chunk-SCJ7CAJF.js";
35
+ } from "./chunk-3HOCNSPD.js";
36
36
  import {
37
37
  measureText
38
- } from "./chunk-4ASYQ347.js";
38
+ } from "./chunk-MTGGOCND.js";
39
39
  import {
40
40
  EMPHASIS_DIM_OPACITY
41
41
  } from "./chunk-2CW5ZTNH.js";
@@ -260,7 +260,7 @@ function renderFamilyForExport(container, parsed, layout, palette, isDark, opts
260
260
  if (v) g.attr(`data-tag-${key}`, v.toLowerCase());
261
261
  }
262
262
  g.append("rect").attr("x", 0).attr("y", 0).attr("width", node.width).attr("height", node.height).attr("rx", CARD_RADIUS).attr("fill", fill).attr("stroke", stroke).attr("stroke-width", NODE_STROKE_WIDTH);
263
- g.append("text").attr("x", node.width / 2).attr("y", HEADER_HEIGHT / 2 + LABEL_FONT_SIZE / 2 - 2).attr("text-anchor", "middle").attr("fill", labelColor).attr("font-size", LABEL_FONT_SIZE).attr("font-weight", "bold").text(noDaggers ? node.label : familyDisplayLabel(node));
263
+ g.append("text").attr("x", node.width / 2).attr("y", HEADER_HEIGHT / 2).attr("dominant-baseline", "central").attr("text-anchor", "middle").attr("fill", labelColor).attr("font-size", LABEL_FONT_SIZE).attr("font-weight", "bold").text(noDaggers ? node.label : familyDisplayLabel(node));
264
264
  if (isPh) continue;
265
265
  const fx = node.width - 13;
266
266
  const fy = 9;
@@ -317,4 +317,4 @@ export {
317
317
  renderFamilyForExport,
318
318
  renderFamily
319
319
  };
320
- //# sourceMappingURL=chunk-V3UQSKWJ.js.map
320
+ //# sourceMappingURL=chunk-IJSFEU4J.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-6EK55ART.js";
5
5
  import {
6
6
  noteBoxSize
7
- } from "./chunk-VJARCVMH.js";
7
+ } from "./chunk-MU3CJPJF.js";
8
8
  import {
9
9
  resolveNotes
10
10
  } from "./chunk-7NK42OIB.js";
@@ -311,4 +311,4 @@ function layoutGraph(graph, options) {
311
311
  export {
312
312
  layoutGraph
313
313
  };
314
- //# sourceMappingURL=chunk-LSFZDBAP.js.map
314
+ //# sourceMappingURL=chunk-IKHV5IJB.js.map