@diagrammo/dgmo 0.57.0 → 0.58.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 (196) hide show
  1. package/dist/advanced.d.ts +57 -7
  2. package/dist/advanced.js +127 -117
  3. package/dist/auto.css +38 -2
  4. package/dist/auto.js +161 -124
  5. package/dist/auto.mjs +1827 -1431
  6. package/dist/block.css +38 -2
  7. package/dist/block.js +94 -52
  8. package/dist/{chart-meta-CPNVUZ5J.d.ts → chart-meta-C6UaqhTP.d.ts} +1 -1
  9. package/dist/chart-meta.d.ts +2 -2
  10. package/dist/chart-meta.js +44 -42
  11. package/dist/{charts-d3-Z6FOKUAL.js → charts-d3-K5M5J5ZM.js} +5 -5
  12. package/dist/{chunk-VYCV5WKH.js → chunk-2JPEBOUQ.js} +60 -44
  13. package/dist/{chunk-FERE46TP.js → chunk-2UBTPFIF.js} +3 -3
  14. package/dist/{chunk-CXI6X54X.js → chunk-3DY7TNZ7.js} +2 -2
  15. package/dist/{chunk-D5FANMSG.js → chunk-3LMUMAUS.js} +2 -2
  16. package/dist/{chunk-5J2RQGFG.js → chunk-4CE2GOC2.js} +3 -3
  17. package/dist/{chunk-T2VMOWAM.js → chunk-4ESLORPX.js} +3 -3
  18. package/dist/chunk-4UNGFVVY.js +181 -0
  19. package/dist/{chunk-ADKDIWCW.js → chunk-52KLHCXQ.js} +3 -3
  20. package/dist/{chunk-VSFAJUEF.js → chunk-5RPSN32F.js} +3 -3
  21. package/dist/{chunk-PKFW6GJD.js → chunk-5RY4W7J6.js} +3 -3
  22. package/dist/{chunk-FMPYKUKI.js → chunk-6F3MVYUW.js} +3 -3
  23. package/dist/{chunk-ST3ZNEUQ.js → chunk-6JYE3SDK.js} +2 -2
  24. package/dist/{chunk-FZECLCCU.js → chunk-6KTRV3O5.js} +3 -3
  25. package/dist/{chunk-57RE4N22.js → chunk-7Q6HX7ON.js} +2 -2
  26. package/dist/{chunk-ULR3BVNH.js → chunk-7SGR7A5K.js} +4 -4
  27. package/dist/{chunk-J6V3SMR3.js → chunk-7UZFAIKI.js} +7 -7
  28. package/dist/{chunk-XBTJJLAU.js → chunk-ATKB7VEN.js} +4 -4
  29. package/dist/{chunk-5VLUAAAE.js → chunk-AU4AQYOA.js} +3 -3
  30. package/dist/{chunk-4MB4UOT5.js → chunk-B4U7RRQ4.js} +2 -2
  31. package/dist/{chunk-QWUYFUNO.js → chunk-BFYPHZ5M.js} +2 -2
  32. package/dist/{chunk-7YPSFQFA.js → chunk-C7IKQOEQ.js} +6 -6
  33. package/dist/{chunk-X3ON4M5S.js → chunk-CBPFVH3N.js} +4 -4
  34. package/dist/{chunk-3M6MKHIQ.js → chunk-CC6XIQDE.js} +2 -2
  35. package/dist/{chunk-G3L4GWLA.js → chunk-CZIFUXI2.js} +3 -3
  36. package/dist/chunk-D3K4U3ZM.js +232 -0
  37. package/dist/{chunk-RQGNELB3.js → chunk-DWAQXY6T.js} +3 -3
  38. package/dist/{chunk-KRKU6WRS.js → chunk-DWMJLEBT.js} +4 -4
  39. package/dist/{chunk-VS7DGDT3.js → chunk-DZUDSGGQ.js} +5 -5
  40. package/dist/chunk-E55OZDFH.js +65 -0
  41. package/dist/{chunk-SQWWYGPT.js → chunk-E6CCWMTT.js} +5 -5
  42. package/dist/{chunk-3KOPPSUQ.js → chunk-E7HANW62.js} +12 -3
  43. package/dist/{chunk-7Q35X3AL.js → chunk-EDJYIQZM.js} +9 -233
  44. package/dist/{chunk-HBRGNLF5.js → chunk-EEF7BUX7.js} +6 -6
  45. package/dist/{chunk-3ZONSZOX.js → chunk-FWNJ45NW.js} +2 -2
  46. package/dist/{chunk-RB4HOOKP.js → chunk-FXIG472W.js} +2 -2
  47. package/dist/{chunk-ORZQVUGW.js → chunk-GAFNYUNJ.js} +4 -4
  48. package/dist/{chunk-PRKPFRC2.js → chunk-GGKWKNOL.js} +4 -4
  49. package/dist/{chunk-OFEUXZPI.js → chunk-HBIGEWRC.js} +3 -3
  50. package/dist/{chunk-D64FRGKU.js → chunk-HUYAMTCD.js} +2 -2
  51. package/dist/{chunk-NIUE5VWY.js → chunk-HXTS54OV.js} +3 -3
  52. package/dist/{chunk-PUGUOFM6.js → chunk-ILZHMKYQ.js} +3 -3
  53. package/dist/{chunk-LZX3RLRP.js → chunk-IRN5GBBO.js} +6 -6
  54. package/dist/{chunk-OYCIVSL3.js → chunk-JM65HLBZ.js} +6 -6
  55. package/dist/{chunk-DIKIHU52.js → chunk-KAG5JCZV.js} +3 -3
  56. package/dist/{chunk-4MJOBVY7.js → chunk-KNCY7YHC.js} +2 -2
  57. package/dist/{chunk-M3IYDSI7.js → chunk-L5DQB4C7.js} +5 -5
  58. package/dist/{chunk-EEKGMS63.js → chunk-LLDNNANC.js} +3 -3
  59. package/dist/{chunk-7SXTD7L6.js → chunk-LYQMN35H.js} +2 -2
  60. package/dist/{chunk-ES3MUYRX.js → chunk-MF4FDLFG.js} +3 -3
  61. package/dist/{chunk-YNAHUNMA.js → chunk-MPPOQOCF.js} +2 -2
  62. package/dist/{chunk-44GBBTMU.js → chunk-N7PF5IRF.js} +2 -2
  63. package/dist/{chunk-QMOX5I3G.js → chunk-NGGVVTP2.js} +5 -5
  64. package/dist/{chunk-UG4MWUXE.js → chunk-NPBAV3QU.js} +5 -5
  65. package/dist/{chunk-6PRLPGJB.js → chunk-NQGE76NC.js} +3 -3
  66. package/dist/{chunk-5XMDSXZT.js → chunk-NSUAU6JQ.js} +2 -2
  67. package/dist/{chunk-OHBIN74X.js → chunk-NW2K6UU2.js} +3 -3
  68. package/dist/{chunk-WOMXS5R7.js → chunk-NYCBN7YE.js} +3 -3
  69. package/dist/{chunk-MXDT446P.js → chunk-OMOU2V3W.js} +3 -3
  70. package/dist/chunk-ON4MEUC4.js +50 -0
  71. package/dist/{chunk-3D6LDLIH.js → chunk-OXANJRNK.js} +2 -2
  72. package/dist/{chunk-X32RDWT5.js → chunk-PH5WK6G5.js} +3 -3
  73. package/dist/{chunk-U3DGAE7L.js → chunk-PIIORN3Q.js} +3 -3
  74. package/dist/{chunk-Q772PVKH.js → chunk-QDOSCTL5.js} +2 -2
  75. package/dist/{chunk-CY5KE2P5.js → chunk-QS37VUFZ.js} +2 -2
  76. package/dist/{chunk-NFAHDPCG.js → chunk-RB3AFVPT.js} +3 -3
  77. package/dist/{chunk-LV5BFA24.js → chunk-RDHZRHDG.js} +3 -3
  78. package/dist/{chunk-SADYIA5Q.js → chunk-S3AZMBK7.js} +3 -3
  79. package/dist/{chunk-6HSRT6WI.js → chunk-SBQXLX6Y.js} +3 -3
  80. package/dist/{chunk-SFVG4AIG.js → chunk-SQK4EKOW.js} +3 -3
  81. package/dist/{chunk-6DR2GMDM.js → chunk-STYJ6EOV.js} +157 -134
  82. package/dist/{chunk-BQLJAYVB.js → chunk-TQC2SUMJ.js} +2 -2
  83. package/dist/{chunk-TZ72UBOA.js → chunk-TXQXPJTG.js} +2 -2
  84. package/dist/{chunk-RV2N7COG.js → chunk-UFDLQKCR.js} +2 -2
  85. package/dist/{chunk-INU6ANOH.js → chunk-UPTAWSCG.js} +2 -2
  86. package/dist/{chunk-K2GDF2ZR.js → chunk-VBSKNQUO.js} +4 -4
  87. package/dist/{chunk-KH74OWHU.js → chunk-VJYERZ2Q.js} +3 -3
  88. package/dist/{chunk-USFZQPJ2.js → chunk-W22JRLNA.js} +3 -3
  89. package/dist/{chunk-CQJ5SE5T.js → chunk-W2RU24DD.js} +4 -4
  90. package/dist/{chunk-NHZAYL2X.js → chunk-W6T5QRIR.js} +4 -4
  91. package/dist/{chunk-APD52YJV.js → chunk-WQWVLAA5.js} +4 -4
  92. package/dist/{chunk-D76B4DMV.js → chunk-WYG5VJY2.js} +2 -2
  93. package/dist/{chunk-VYEQPPS6.js → chunk-WYGLKR4I.js} +3 -3
  94. package/dist/{chunk-MGLJA5TK.js → chunk-X3YNX4DR.js} +2 -2
  95. package/dist/{chunk-3G7BCZ4J.js → chunk-X4JEAY73.js} +5 -5
  96. package/dist/{chunk-M65UOFJA.js → chunk-XHTRLRZ5.js} +3 -3
  97. package/dist/{chunk-3NSOKT7C.js → chunk-XXAHWYQU.js} +2 -2
  98. package/dist/{chunk-A6XELFU6.js → chunk-YAG7WAQE.js} +8 -8
  99. package/dist/{chunk-KF575IXC.js → chunk-YILSSUEL.js} +3 -3
  100. package/dist/{chunk-U4FSWAOJ.js → chunk-YKMOI6ZG.js} +4 -4
  101. package/dist/{chunk-TGOMHUOV.js → chunk-ZEIYC7XO.js} +12 -1
  102. package/dist/{chunk-PFG3EVRD.js → chunk-ZKNSLC35.js} +3 -3
  103. package/dist/{chunk-5LBCOFA5.js → chunk-ZW7LTYW2.js} +2 -2
  104. package/dist/cli.cjs +143 -142
  105. package/dist/cloud-reference.d.ts +15 -8
  106. package/dist/cloud-reference.js +8 -39
  107. package/dist/completion-registry.js +24 -5
  108. package/dist/dgmo-router-2637N4DY.js +90 -0
  109. package/dist/{dimensions-XRWIPAFO.js → dimensions-HSIQYP5Z.js} +5 -5
  110. package/dist/editor.js +11 -2
  111. package/dist/element.js +164 -127
  112. package/dist/element.mjs +1827 -1431
  113. package/dist/{flowchart-parser-DA3V2SLH.js → flowchart-parser-I2TEUWAP.js} +4 -4
  114. package/dist/{flowchart-renderer-JGLZB5P5.js → flowchart-renderer-ER66DNCI.js} +5 -5
  115. package/dist/highlight.js +11 -2
  116. package/dist/index.d.ts +13 -4
  117. package/dist/index.js +55 -49
  118. package/dist/{layout-5CX27X7I.js → layout-3QMCSW6B.js} +3 -3
  119. package/dist/{layout-NU5LQ4UP.js → layout-DH6GSKAH.js} +2 -2
  120. package/dist/{layout-AO3TPZUS.js → layout-HTDK3DMG.js} +4 -4
  121. package/dist/{layout-EQTOVNEE.js → layout-K4S54TX7.js} +4 -4
  122. package/dist/{layout-WHOOLGPO.js → layout-V5X3U3WB.js} +4 -4
  123. package/dist/{layout-TZKPVXKJ.js → layout-VFUHKLTS.js} +3 -3
  124. package/dist/{layout-AQXLQVAJ.js → layout-VNEBCYPX.js} +4 -4
  125. package/dist/{layout-search-6CVR2MTZ.js → layout-search-N6NQI5OQ.js} +5 -5
  126. package/dist/{parser-5UZWYSIV.js → parser-2RTQF2LA.js} +4 -4
  127. package/dist/{parser-4ZIJDGPG.js → parser-2VTOUMJY.js} +4 -4
  128. package/dist/{parser-HMQZPPOK.js → parser-3M3QQRCZ.js} +4 -4
  129. package/dist/{parser-RBNOWHGM.js → parser-4WSJVVG6.js} +4 -4
  130. package/dist/{parser-Q3KNFXQR.js → parser-67JHR6I6.js} +4 -4
  131. package/dist/{parser-MH62NYKM.js → parser-6GXEHNZD.js} +4 -4
  132. package/dist/{parser-O5XCVGZG.js → parser-6I3NOLKL.js} +3 -3
  133. package/dist/{parser-6CM27UPA.js → parser-7VNCLF77.js} +4 -4
  134. package/dist/{parser-QL2LBPFE.js → parser-AE7RC4IJ.js} +4 -4
  135. package/dist/{parser-DQ2DGDYO.js → parser-BDGMJSZB.js} +3 -3
  136. package/dist/{parser-WT3DSNPQ.js → parser-BVHECXAJ.js} +4 -4
  137. package/dist/{parser-QEWSTNEJ.js → parser-FLCLHHOM.js} +4 -4
  138. package/dist/{parser-LMNFVTIV.js → parser-FSSAJO2M.js} +4 -4
  139. package/dist/{parser-73YUU35J.js → parser-GH2Y6CR4.js} +3 -3
  140. package/dist/{parser-AYZTKZC3.js → parser-GUUNA7WE.js} +3 -3
  141. package/dist/{parser-DTXM5ROT.js → parser-ISJJO7TJ.js} +5 -5
  142. package/dist/parser-J3FUTZAQ.js +12 -0
  143. package/dist/{parser-Q62VR2UJ.js → parser-JY7ZU5PP.js} +5 -5
  144. package/dist/{parser-4TX6U4ZU.js → parser-KKBW25LM.js} +3 -3
  145. package/dist/{parser-XWNSCDY6.js → parser-M74SVSPT.js} +4 -4
  146. package/dist/{parser-CCAUZLYI.js → parser-MKJ52TD7.js} +4 -4
  147. package/dist/{parser-A6M25MLK.js → parser-MPQTXCBQ.js} +3 -3
  148. package/dist/{parser-IQLLBMBQ.js → parser-N3AAAGTA.js} +3 -3
  149. package/dist/{parser-OPOGIKFR.js → parser-N7SSE4SK.js} +4 -4
  150. package/dist/{parser-D7YZX3CH.js → parser-NH6IAVZJ.js} +3 -3
  151. package/dist/{parser-IPBEW2DG.js → parser-NKHBUGAX.js} +4 -4
  152. package/dist/{parser-PQXN6SBB.js → parser-QVX4FR3J.js} +5 -5
  153. package/dist/{parser-XQNM7BGD.js → parser-S6QH3QIK.js} +4 -4
  154. package/dist/{parser-PEBXIOPX.js → parser-UODHU3EP.js} +4 -4
  155. package/dist/{parser-5WMH55UA.js → parser-UVS6OHCO.js} +4 -4
  156. package/dist/{parser-SJ7ECFAP.js → parser-X3TCE7P5.js} +4 -4
  157. package/dist/{parser-QN3GJJ3J.js → parser-XQKSQBOT.js} +3 -3
  158. package/dist/{parser-KTVDCWHG.js → parser-XXYB4TRG.js} +4 -4
  159. package/dist/{registry-CaSw0PSH.d.ts → registry-C0HvobTb.d.ts} +17 -0
  160. package/dist/renderer-2G7Q3L5W.js +77 -0
  161. package/dist/{renderer-2TEGR3RX.js → renderer-2IO3H53I.js} +5 -5
  162. package/dist/{renderer-Q6TJ52B4.js → renderer-2KDW3TWO.js} +5 -5
  163. package/dist/{renderer-W5GF5USI.js → renderer-2SK7UM4O.js} +5 -5
  164. package/dist/{renderer-BNEO5W3E.js → renderer-34GG6RHO.js} +6 -6
  165. package/dist/{renderer-LRQ3OPNJ.js → renderer-44EXXXRC.js} +7 -7
  166. package/dist/{renderer-XKMG3SYD.js → renderer-4SH6U6WF.js} +6 -6
  167. package/dist/{renderer-TIIHLRMM.js → renderer-4WQRF2SK.js} +5 -5
  168. package/dist/{renderer-KXMKAXPQ.js → renderer-7AVFPE3Q.js} +4 -4
  169. package/dist/{renderer-EJ3FETD2.js → renderer-BA6WTWVL.js} +5 -5
  170. package/dist/{renderer-5BFS4NBL.js → renderer-BLPXBLUP.js} +5 -5
  171. package/dist/{renderer-I2P5FTZ2.js → renderer-C7LFE5CB.js} +7 -7
  172. package/dist/{renderer-3WYLLPQL.js → renderer-CUXXNHFU.js} +6 -6
  173. package/dist/{renderer-B6XOO6EE.js → renderer-DRNJJNAE.js} +3 -3
  174. package/dist/{renderer-N4V7XVC3.js → renderer-DVUKHOFB.js} +7 -7
  175. package/dist/{renderer-6OFPEBHG.js → renderer-I7Q5U2TU.js} +5 -5
  176. package/dist/{renderer-ND7YIUHD.js → renderer-JIUVU3PF.js} +3 -3
  177. package/dist/{renderer-HDLM6OY6.js → renderer-LXIIZ3BH.js} +7 -7
  178. package/dist/{renderer-VWBNIZV3.js → renderer-MTX6PLPA.js} +6 -6
  179. package/dist/{renderer-LU4R3BP2.js → renderer-QGZ2BOJG.js} +4 -4
  180. package/dist/{renderer-AK2X3VRY.js → renderer-SL5IQJKB.js} +7 -7
  181. package/dist/{renderer-IAJMS5U5.js → renderer-SL5LE7MU.js} +7 -7
  182. package/dist/{renderer-JHYUK5TN.js → renderer-SXZBGMEH.js} +3 -3
  183. package/dist/{renderer-LNOBG226.js → renderer-UPANX7XK.js} +7 -7
  184. package/dist/{renderer-FQLFE3TQ.js → renderer-VDCGDJ6L.js} +5 -5
  185. package/dist/{renderer-BZZKS7KQ.js → renderer-XJFRVCF6.js} +7 -7
  186. package/dist/{renderer-LMLSA457.js → renderer-XRC5R3OP.js} +5 -5
  187. package/dist/{renderer-PLRNQ6T3.js → renderer-Y64MT4JM.js} +7 -7
  188. package/dist/{renderer-XSZ5MUIF.js → renderer-ZLJ5CCSO.js} +5 -5
  189. package/dist/{renderer-W3JK5YVD.js → renderer-ZY5TXTS5.js} +5 -5
  190. package/dist/{renderer-radial-LZAPQVM5.js → renderer-radial-4YKK4JNW.js} +6 -6
  191. package/dist/{state-parser-NQGVYSM3.js → state-parser-3PFFJO5M.js} +5 -5
  192. package/dist/{state-renderer-KSAKMFQ2.js → state-renderer-2HDVRUNG.js} +7 -7
  193. package/dist/{themes-tbBkIVsn.d.ts → themes-l406Vj2z.d.ts} +1 -1
  194. package/docs/language-reference.md +29 -0
  195. package/package.json +1 -1
  196. package/dist/dgmo-router-PMEKTIJ7.js +0 -88
@@ -1,19 +1,26 @@
1
1
  /**
2
- * Cloud references — the shared resolver (Diagrammo Cloud story 10.6).
2
+ * Live links — the shared resolver (Diagrammo Cloud story 10.6).
3
3
  *
4
- * A reference points at a diagram living in Diagrammo Cloud instead of at bytes
5
- * pasted into a document. The point of it is CURRENCY: a referenced diagram is
4
+ * A live link points at a diagram living in Diagrammo Cloud instead of at bytes
5
+ * pasted into a document. The point of it is CURRENCY: a linked diagram is
6
6
  * never stale, which is true for a team of one and needs no distribution to be
7
7
  * worth having.
8
8
  *
9
9
  * There are three SPELLINGS and exactly ONE parser, because each spelling is
10
10
  * native to where it gets typed:
11
11
  *
12
- * | Surface | Form |
13
- * |------------------------|--------------------------|
14
- * | docs frameworks | `cloud abc123` in a fence|
15
- * | Obsidian, desktop app | `![[cloud:abc123]]` |
16
- * | anywhere taking a URL | the plain URL |
12
+ * | Surface | Form |
13
+ * |------------------------|-----------------------------|
14
+ * | docs frameworks | `live-link abc123` in a fence|
15
+ * | Obsidian, desktop app | `![[live-link:abc123]]` |
16
+ * | anywhere taking a URL | the plain URL |
17
+ *
18
+ * The keyword was `cloud` until 2026-08-01 (decision #53). `cloud` named where
19
+ * the thing lives; `live-link` names what it is, and it is the publish dialog's
20
+ * own phrase, so one word now spans both sides of the exchange. Pre-1.0 there
21
+ * is no dual-accept window — `cloud abc123` simply stops resolving. The module
22
+ * and its package subpath keep the old name deliberately: renaming a subpath
23
+ * export breaks the app's `pnpm dev` while the production build stays green.
17
24
  *
18
25
  * 🔴 EVERY future modifier must land in all three (A9), and
19
26
  * `cloud-reference.test.ts` asserts parity across the forms from ONE table so a
@@ -1,43 +1,12 @@
1
+ import {
2
+ CLOUD_API_BASE,
3
+ CLOUD_APP_BASE,
4
+ parseCloudReference,
5
+ parseCloudReferenceUrl,
6
+ referenceShareUrl,
7
+ referenceSourceUrl
8
+ } from "./chunk-ON4MEUC4.js";
1
9
  import "./chunk-5WRI5ZAA.js";
2
-
3
- // src/cloud-reference.ts
4
- var CLOUD_API_BASE = "https://api.diagrammo.app";
5
- var CLOUD_APP_BASE = "https://online.diagrammo.app";
6
- var ID = String.raw`[A-Za-z0-9_-]{3,64}`;
7
- var FENCE_RE = new RegExp(`^\\s*cloud\\s+(${ID})\\s*$`);
8
- var EMBED_RE = new RegExp(`^\\s*!\\[\\[\\s*cloud:\\s*(${ID})\\s*\\]\\]\\s*$`);
9
- var URL_PATH_RE = new RegExp(
10
- `^/(?:public/diagrams/(${ID})/source|d/(${ID})|view/(${ID}))/?$`
11
- );
12
- function parseCloudReference(text) {
13
- const fence = FENCE_RE.exec(text) ?? EMBED_RE.exec(text);
14
- if (fence) return reference(fence[1]);
15
- return parseCloudReferenceUrl(text);
16
- }
17
- function parseCloudReferenceUrl(text) {
18
- let url;
19
- try {
20
- url = new URL(text.trim());
21
- } catch {
22
- return null;
23
- }
24
- if (url.protocol !== "https:" && url.protocol !== "http:") return null;
25
- const match = URL_PATH_RE.exec(url.pathname);
26
- if (!match) return null;
27
- if (url.searchParams.has("at")) return null;
28
- return reference(match[1] ?? match[2] ?? match[3]);
29
- }
30
- function reference(id) {
31
- return id ? { id } : null;
32
- }
33
- function referenceSourceUrl(ref, options = {}) {
34
- const base = (options.base ?? CLOUD_API_BASE).replace(/\/+$/, "");
35
- return `${base}/public/diagrams/${ref.id}/source`;
36
- }
37
- function referenceShareUrl(ref, options = {}) {
38
- const base = (options.base ?? CLOUD_APP_BASE).replace(/\/+$/, "");
39
- return `${base}/d/${ref.id}`;
40
- }
41
10
  export {
42
11
  CLOUD_API_BASE,
43
12
  CLOUD_APP_BASE,
@@ -1,21 +1,29 @@
1
1
  import {
2
2
  chartTypes
3
- } from "./chunk-TGOMHUOV.js";
3
+ } from "./chunk-ZEIYC7XO.js";
4
4
  import {
5
5
  ALL_MARKERS
6
6
  } from "./chunk-I55PVEIX.js";
7
7
  import {
8
8
  GROUP_ONLY_METADATA,
9
9
  STATE_KEYWORDS
10
- } from "./chunk-FZECLCCU.js";
11
- import "./chunk-D5FANMSG.js";
10
+ } from "./chunk-6KTRV3O5.js";
11
+ import "./chunk-3LMUMAUS.js";
12
12
  import {
13
13
  ALL_CHART_TYPES
14
- } from "./chunk-3KOPPSUQ.js";
14
+ } from "./chunk-E7HANW62.js";
15
15
  import "./chunk-EXNKNJ65.js";
16
16
  import "./chunk-OLMWTJVU.js";
17
17
  import "./chunk-5WRI5ZAA.js";
18
18
 
19
+ // src/utils/offered-types.ts
20
+ var INTERNAL_CHART_TYPE_IDS = new Set(
21
+ chartTypes.filter((c) => c.internal).map((c) => c.id)
22
+ );
23
+ function withoutInternalChartTypes(ids) {
24
+ return ids.filter((id) => !INTERNAL_CHART_TYPE_IDS.has(id));
25
+ }
26
+
19
27
  // src/completion-registry.ts
20
28
  var GLOBAL_DIRECTIVES = {
21
29
  palette: {
@@ -784,6 +792,17 @@ var COMPLETION_REGISTRY = /* @__PURE__ */ new Map([
784
792
  description: "Always fan out coincident POI markers instead of collapsing them into a count badge"
785
793
  }
786
794
  })
795
+ ],
796
+ // ── Live link (internal type) ────────────────────────────
797
+ // The type never appears in the chart-type popup, but a pointer file that is
798
+ // already open still autocompletes its one directive.
799
+ [
800
+ "live-link",
801
+ withGlobals({
802
+ url: {
803
+ description: "The published diagram this file points at \u2014 a Diagrammo link or a bare diagram id"
804
+ }
805
+ })
787
806
  ]
788
807
  ]);
789
808
  var FILL_FAMILY_CAPABLE = /* @__PURE__ */ new Set([
@@ -845,7 +864,7 @@ for (const [type, spec] of COMPLETION_REGISTRY) {
845
864
  var CHART_TYPE_DESCRIPTIONS = Object.fromEntries(
846
865
  chartTypes.map((c) => [c.id, c.description])
847
866
  );
848
- var CHART_TYPES = [...ALL_CHART_TYPES].map((name) => ({
867
+ var CHART_TYPES = withoutInternalChartTypes([...ALL_CHART_TYPES]).map((name) => ({
849
868
  name,
850
869
  description: CHART_TYPE_DESCRIPTIONS[name] ?? name
851
870
  }));
@@ -0,0 +1,90 @@
1
+ import {
2
+ CHART_TYPE_DESCRIPTIONS,
3
+ chartTypeParsers,
4
+ getAllChartTypes,
5
+ getRenderCategory,
6
+ isExtendedChartType,
7
+ knownChartTypeIds,
8
+ looksLikeC4,
9
+ looksLikeGantt,
10
+ parseDgmo,
11
+ parseDgmoChartType
12
+ } from "./chunk-2JPEBOUQ.js";
13
+ import "./chunk-TQC2SUMJ.js";
14
+ import "./chunk-LLDNNANC.js";
15
+ import "./chunk-4UNGFVVY.js";
16
+ import "./chunk-QS37VUFZ.js";
17
+ import "./chunk-2CW5ZTNH.js";
18
+ import "./chunk-BDXC7MDK.js";
19
+ import "./chunk-X3YNX4DR.js";
20
+ import "./chunk-UFDLQKCR.js";
21
+ import "./chunk-5RPSN32F.js";
22
+ import "./chunk-4CE2GOC2.js";
23
+ import "./chunk-XSVWUOUZ.js";
24
+ import "./chunk-NSUAU6JQ.js";
25
+ import "./chunk-BFYPHZ5M.js";
26
+ import "./chunk-OQKP2X3D.js";
27
+ import "./chunk-MPPOQOCF.js";
28
+ import "./chunk-A2RUBBVT.js";
29
+ import "./chunk-RB3AFVPT.js";
30
+ import "./chunk-W22JRLNA.js";
31
+ import "./chunk-RT7ACF77.js";
32
+ import "./chunk-AU4AQYOA.js";
33
+ import "./chunk-MF4FDLFG.js";
34
+ import "./chunk-QQJUTGQH.js";
35
+ import "./chunk-YILSSUEL.js";
36
+ import "./chunk-3DY7TNZ7.js";
37
+ import "./chunk-B4U7RRQ4.js";
38
+ import "./chunk-DWAQXY6T.js";
39
+ import "./chunk-ATKB7VEN.js";
40
+ import "./chunk-KNCY7YHC.js";
41
+ import "./chunk-HUYAMTCD.js";
42
+ import "./chunk-PH5WK6G5.js";
43
+ import "./chunk-HXTS54OV.js";
44
+ import "./chunk-OMOU2V3W.js";
45
+ import "./chunk-52KLHCXQ.js";
46
+ import "./chunk-NYCBN7YE.js";
47
+ import "./chunk-W6T5QRIR.js";
48
+ import "./chunk-2UBTPFIF.js";
49
+ import "./chunk-C3Z4DX3V.js";
50
+ import "./chunk-RDHZRHDG.js";
51
+ import "./chunk-7TF3QOOD.js";
52
+ import "./chunk-WQWVLAA5.js";
53
+ import "./chunk-NXMESY4J.js";
54
+ import "./chunk-WYGLKR4I.js";
55
+ import "./chunk-7SGR7A5K.js";
56
+ import "./chunk-6JYE3SDK.js";
57
+ import "./chunk-7NK42OIB.js";
58
+ import "./chunk-RRX4Z4TH.js";
59
+ import "./chunk-ZKNSLC35.js";
60
+ import "./chunk-NW2K6UU2.js";
61
+ import "./chunk-IYULMRBE.js";
62
+ import "./chunk-KAG5JCZV.js";
63
+ import "./chunk-3TYUXC7D.js";
64
+ import "./chunk-EQW6HOP4.js";
65
+ import "./chunk-DAOFNU6J.js";
66
+ import "./chunk-NOTA6TEI.js";
67
+ import "./chunk-ZEIYC7XO.js";
68
+ import "./chunk-I55PVEIX.js";
69
+ import "./chunk-6KTRV3O5.js";
70
+ import "./chunk-3LMUMAUS.js";
71
+ import "./chunk-E7HANW62.js";
72
+ import "./chunk-ON4MEUC4.js";
73
+ import "./chunk-R3XI2VC7.js";
74
+ import "./chunk-42IT4BG2.js";
75
+ import "./chunk-EXNKNJ65.js";
76
+ import "./chunk-OLMWTJVU.js";
77
+ import "./chunk-5WRI5ZAA.js";
78
+ export {
79
+ CHART_TYPE_DESCRIPTIONS,
80
+ chartTypeParsers,
81
+ getAllChartTypes,
82
+ getRenderCategory,
83
+ isExtendedChartType,
84
+ knownChartTypeIds,
85
+ looksLikeC4,
86
+ looksLikeGantt,
87
+ parseDgmo,
88
+ parseDgmoChartType
89
+ };
90
+ //# sourceMappingURL=dgmo-router-2637N4DY.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  mapContentAspect,
3
3
  mapExportDimensions
4
- } from "./chunk-INU6ANOH.js";
5
- import "./chunk-5LBCOFA5.js";
4
+ } from "./chunk-UPTAWSCG.js";
5
+ import "./chunk-ZW7LTYW2.js";
6
6
  import "./chunk-4QV26TEG.js";
7
7
  import "./chunk-VHO3YBTB.js";
8
8
  import "./chunk-ES66QH6J.js";
9
9
  import "./chunk-A4GOY3PE.js";
10
- import "./chunk-D5FANMSG.js";
11
- import "./chunk-3KOPPSUQ.js";
10
+ import "./chunk-3LMUMAUS.js";
11
+ import "./chunk-E7HANW62.js";
12
12
  import "./chunk-SCJ7CAJF.js";
13
13
  import "./chunk-4ASYQ347.js";
14
14
  import "./chunk-42IT4BG2.js";
@@ -19,4 +19,4 @@ export {
19
19
  mapContentAspect,
20
20
  mapExportDimensions
21
21
  };
22
- //# sourceMappingURL=dimensions-XRWIPAFO.js.map
22
+ //# sourceMappingURL=dimensions-HSIQYP5Z.js.map
package/dist/editor.js CHANGED
@@ -375,7 +375,14 @@ var DIRECTIVES_REGISTRY = [
375
375
  { token: "no-rounds", category: "modifier" },
376
376
  { token: "single-elim", category: "modifier" },
377
377
  { token: "double-elim", category: "modifier" },
378
- { token: "seeded", category: "modifier" }
378
+ { token: "seeded", category: "modifier" },
379
+ // ── Live link (§38) ──────────────────────────────────────
380
+ // The pointer type's one directive. Registered so it highlights and
381
+ // autocompletes like `palette` does — §38 justifies the shape by calling it
382
+ // "the ordinary DGMO directive shape", and an unregistered `url` would make
383
+ // that sentence false in the editor: `editor/tokens.ts` specializes only
384
+ // against the keyword registries, so it would render as plain identifier text.
385
+ { token: "url", category: "directive" }
379
386
  ];
380
387
  function tokensWhere(pred) {
381
388
  const out = /* @__PURE__ */ new Set();
@@ -470,7 +477,9 @@ var CHART_TYPES = /* @__PURE__ */ new Set([
470
477
  "venn",
471
478
  "quadrant",
472
479
  "map",
473
- "body"
480
+ "body",
481
+ // Pointer type — internal, but it must still highlight when one is open
482
+ "live-link"
474
483
  ]);
475
484
  var METADATA_KEYS = /* @__PURE__ */ new Set([
476
485
  "title",