@diagrammo/dgmo 0.49.0 → 0.50.1

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 (198) hide show
  1. package/.cursorrules +6 -2
  2. package/.github/copilot-instructions.md +6 -2
  3. package/.windsurfrules +6 -2
  4. package/SKILL.md +6 -2
  5. package/dist/advanced.js +557 -195
  6. package/dist/auto.js +129 -119
  7. package/dist/auto.mjs +19496 -12761
  8. package/dist/block.js +145 -48
  9. package/dist/{charts-d3-EW3YQTEA.js → charts-d3-LR6D3D7A.js} +5 -5
  10. package/dist/{chunk-5FGDJIJX.js → chunk-2C56LEML.js} +3 -3
  11. package/dist/{chunk-XJ7J6WOO.js → chunk-2KGXHFYK.js} +4 -4
  12. package/dist/{chunk-T7IKPCMI.js → chunk-3LH5CLP4.js} +3 -3
  13. package/dist/{chunk-ZDUQGL3N.js → chunk-3LKM6FMW.js} +2 -2
  14. package/dist/{chunk-4FIV4K4Z.js → chunk-3NODSS6A.js} +7 -7
  15. package/dist/{chunk-4BD7EVPK.js → chunk-3P2DKJCG.js} +2 -2
  16. package/dist/{chunk-TC3YWBFO.js → chunk-3UIKSPFB.js} +35 -9
  17. package/dist/{chunk-SJEGO2QL.js → chunk-3XGZF2QJ.js} +4 -4
  18. package/dist/chunk-3XPUDB7B.js +420 -0
  19. package/dist/{chunk-O5MQPK7E.js → chunk-3Y2DRD7S.js} +3 -3
  20. package/dist/chunk-3YPY3OXD.js +354 -0
  21. package/dist/{chunk-N4J5KGWG.js → chunk-4MJ7M6YL.js} +8 -8
  22. package/dist/{chunk-JFPY3UJ7.js → chunk-4S52SK6G.js} +8 -8
  23. package/dist/{chunk-ALRHIR6I.js → chunk-5GJYGP5Z.js} +4 -4
  24. package/dist/{chunk-SQDFK5ZQ.js → chunk-5OWVC2A6.js} +3 -3
  25. package/dist/{chunk-7VLUGEMJ.js → chunk-66NVRO4K.js} +4 -4
  26. package/dist/{chunk-ZREZOIGS.js → chunk-66RUL3XF.js} +6 -6
  27. package/dist/{chunk-MJCG5K2O.js → chunk-6BFZKBGD.js} +2 -2
  28. package/dist/{chunk-2WMBWZY2.js → chunk-6HJBFVLO.js} +3 -3
  29. package/dist/{chunk-XCC2RENT.js → chunk-6IAA2QQ2.js} +2 -2
  30. package/dist/{chunk-B57V3DWN.js → chunk-7L3R6I3U.js} +3 -3
  31. package/dist/chunk-7PQYTZMA.js +681 -0
  32. package/dist/{chunk-6SA7FJE4.js → chunk-7QKLIMRZ.js} +10 -10
  33. package/dist/{chunk-YTN572Q2.js → chunk-7TV5Y53Y.js} +2 -2
  34. package/dist/{chunk-6CLKNXVP.js → chunk-BBGDM4NQ.js} +457 -78
  35. package/dist/{chunk-3NFJWFNP.js → chunk-BDXC7MDK.js} +1045 -124
  36. package/dist/{chunk-D5AVQCDN.js → chunk-BH3UYK36.js} +3 -3
  37. package/dist/chunk-BTUTZMPT.js +482 -0
  38. package/dist/{chunk-LVHPTBO3.js → chunk-C2CVAM3U.js} +4 -4
  39. package/dist/{chunk-BCT5G2VN.js → chunk-DFTFPYUD.js} +5 -5
  40. package/dist/{chunk-KV6Y2HE6.js → chunk-DSWVNQVS.js} +4 -4
  41. package/dist/{chunk-4YNP6O47.js → chunk-DZXYF2F5.js} +13 -3
  42. package/dist/{chunk-FUCAB3KQ.js → chunk-EAMEADTV.js} +3 -3
  43. package/dist/chunk-FA6K3FWM.js +940 -0
  44. package/dist/{chunk-HBVD67XG.js → chunk-FJUNPCYI.js} +2 -2
  45. package/dist/{chunk-6VE3VLWM.js → chunk-GBE54KY6.js} +6 -5
  46. package/dist/{chunk-YRVLP7UU.js → chunk-GKC3HILQ.js} +4 -4
  47. package/dist/{chunk-ZXL6MB4R.js → chunk-GL5UZ6NY.js} +3 -3
  48. package/dist/{chunk-GB3YZTAM.js → chunk-H73FP42Q.js} +5 -5
  49. package/dist/{chunk-4UDKKGHH.js → chunk-HEVYAHLW.js} +2 -2
  50. package/dist/{chunk-DDTJ5N7Q.js → chunk-HLJVEAOF.js} +6 -6
  51. package/dist/{chunk-CLR4A2N2.js → chunk-HTMN2Z6U.js} +4 -4
  52. package/dist/{chunk-TLKMTQYL.js → chunk-I2WKW7C7.js} +3 -3
  53. package/dist/{chunk-IUK7AGD4.js → chunk-I7F2A35O.js} +2 -2
  54. package/dist/{chunk-IBC35BTK.js → chunk-IUMPEA64.js} +2 -2
  55. package/dist/{chunk-5XCM7UUW.js → chunk-J6K7RP6P.js} +100 -36
  56. package/dist/{chunk-AJ2PEY7J.js → chunk-JJUOHGX2.js} +2 -2
  57. package/dist/{chunk-CEHZOPGM.js → chunk-KFZYNWWO.js} +2 -2
  58. package/dist/{chunk-4NQ3IKUM.js → chunk-KHEYDLMT.js} +5 -5
  59. package/dist/{chunk-YM2BSPYW.js → chunk-LE4MYMLI.js} +2 -2
  60. package/dist/{chunk-PU3AUQPA.js → chunk-M5RXSRO2.js} +2 -2
  61. package/dist/{chunk-XKTN7CZF.js → chunk-MCZ5LBZD.js} +4 -4
  62. package/dist/{chunk-35BBZDFE.js → chunk-NU3XLTGP.js} +4 -4
  63. package/dist/{chunk-BPIJLRYE.js → chunk-NWED7CYO.js} +3 -3
  64. package/dist/{chunk-YYX3SU6H.js → chunk-OMNGQPEZ.js} +257 -101
  65. package/dist/{chunk-BGJV5ATD.js → chunk-ONA5KPV3.js} +2 -2
  66. package/dist/{chunk-ZNQX6QWH.js → chunk-OTAL43EH.js} +6 -2
  67. package/dist/{chunk-F743CM2N.js → chunk-OTQKUHRS.js} +3 -3
  68. package/dist/{chunk-KUBBJ2CD.js → chunk-P7CE7LXL.js} +6 -6
  69. package/dist/{chunk-UVCXZEGU.js → chunk-PFHVU7UA.js} +2 -2
  70. package/dist/{chunk-5ZZLLBFK.js → chunk-PGEGPSCZ.js} +2 -2
  71. package/dist/chunk-Q4V4XQWV.js +158 -0
  72. package/dist/{chunk-IHLSHCPZ.js → chunk-QJP6PG7F.js} +5 -5
  73. package/dist/{chunk-EYN7VFKL.js → chunk-QROYX7TT.js} +3 -3
  74. package/dist/chunk-QXKWYZNR.js +379 -0
  75. package/dist/{chunk-VC3TR4NL.js → chunk-RZ6YKEUJ.js} +3 -3
  76. package/dist/{chunk-K6HNAY5V.js → chunk-SCHXJTZL.js} +2 -2
  77. package/dist/{chunk-7OVSJI2V.js → chunk-SQLNBA64.js} +3 -3
  78. package/dist/{chunk-65RTDUZH.js → chunk-SXRTRMEE.js} +3 -3
  79. package/dist/{chunk-3BIAFYD2.js → chunk-T4VOVZT5.js} +2 -2
  80. package/dist/{chunk-UWDO3O52.js → chunk-TN35C5KM.js} +2 -2
  81. package/dist/{chunk-IFK3GIUW.js → chunk-TSA237IM.js} +2 -2
  82. package/dist/{chunk-DKEPS5LH.js → chunk-U2HGPLZS.js} +36 -2
  83. package/dist/{chunk-4HVNZ7WF.js → chunk-VBYSIOOY.js} +3 -3
  84. package/dist/{chunk-ZTLWVRNS.js → chunk-VDOOQZUD.js} +2 -2
  85. package/dist/{chunk-RTERS6S5.js → chunk-VUJGMJE6.js} +4 -4
  86. package/dist/{chunk-X2CH42BN.js → chunk-VVW3F3MD.js} +7 -7
  87. package/dist/{chunk-RI4NIMFP.js → chunk-VVZRV54S.js} +75 -35
  88. package/dist/{chunk-LG4TWW4U.js → chunk-WW32K72E.js} +8 -8
  89. package/dist/{chunk-NVT6C2VE.js → chunk-X6EZPSW6.js} +4 -4
  90. package/dist/{chunk-KQAEKMIX.js → chunk-XDXNDSKO.js} +2 -2
  91. package/dist/{chunk-FMKTYMP4.js → chunk-XJLKLU4D.js} +3 -3
  92. package/dist/chunk-Y4RNXEAO.js +952 -0
  93. package/dist/{chunk-26RVGM44.js → chunk-YIA4LEX4.js} +15 -7
  94. package/dist/chunk-YNRDWYZP.js +295 -0
  95. package/dist/{chunk-SGHSY3LU.js → chunk-Z6XJQ6KO.js} +81 -6
  96. package/dist/{chunk-SVDWQGX2.js → chunk-ZAD4HV2G.js} +139 -78
  97. package/dist/cli.cjs +153 -144
  98. package/dist/clock.d.ts +10 -0
  99. package/dist/clock.js +235 -0
  100. package/dist/countdown.d.ts +12 -0
  101. package/dist/countdown.js +450 -0
  102. package/dist/dgmo-router-YTU3ENAX.js +84 -0
  103. package/dist/{dimensions-WSIJXT5Q.js → dimensions-OTBKC5M6.js} +5 -5
  104. package/dist/editor.js +39 -1
  105. package/dist/element.js +131 -121
  106. package/dist/element.mjs +19496 -12761
  107. package/dist/{flowchart-parser-IVZN7CQN.js → flowchart-parser-OE4WHLTF.js} +4 -4
  108. package/dist/{flowchart-renderer-GMI2U3DD.js → flowchart-renderer-GPCSMTOR.js} +6 -6
  109. package/dist/highlight.d.ts +17 -1
  110. package/dist/highlight.js +156 -5
  111. package/dist/index.js +50 -45
  112. package/dist/{layout-HQMBPJVS.js → layout-46366KBT.js} +2 -2
  113. package/dist/{layout-D42XE4RE.js → layout-5BG6DFCU.js} +3 -3
  114. package/dist/{layout-K2ZN3Q42.js → layout-7MZ5NF2N.js} +4 -4
  115. package/dist/{layout-4Z5JM7PT.js → layout-FWODLIMP.js} +4 -4
  116. package/dist/{layout-GZ2CWONU.js → layout-J36454XU.js} +4 -4
  117. package/dist/{layout-S3EK4IYO.js → layout-LD6XTLD6.js} +4 -4
  118. package/dist/{parser-CLMFZWCC.js → parser-36HVKU5U.js} +5 -5
  119. package/dist/{parser-MCJWF5G3.js → parser-4AI5ZN5F.js} +3 -3
  120. package/dist/{parser-DERPY5KC.js → parser-4NO6VZ6S.js} +4 -4
  121. package/dist/parser-4WQQQXCG.js +13 -0
  122. package/dist/{parser-4ROBKVUR.js → parser-5OXGPNBF.js} +5 -5
  123. package/dist/{parser-XWUDFJ7P.js → parser-AGVYTQXV.js} +4 -4
  124. package/dist/{parser-TITK4YW6.js → parser-AXKBDGNO.js} +5 -5
  125. package/dist/parser-B5FVS7O6.js +11 -0
  126. package/dist/parser-CSFUN3CT.js +14 -0
  127. package/dist/parser-CVMEDULU.js +15 -0
  128. package/dist/{parser-KPMN5KKE.js → parser-D5VILGN2.js} +4 -4
  129. package/dist/{parser-IKZFTLOJ.js → parser-DFFEDKHH.js} +3 -3
  130. package/dist/{parser-JD7OQ2E6.js → parser-H3XEPFPV.js} +4 -4
  131. package/dist/{parser-UBGPTIZD.js → parser-HYRTF3DO.js} +3 -3
  132. package/dist/{parser-K647FRI4.js → parser-IBWNAPY4.js} +3 -3
  133. package/dist/{parser-4BKIFG2C.js → parser-IJBMRXMC.js} +5 -5
  134. package/dist/{parser-MBJSBTL5.js → parser-JJR52VAT.js} +5 -5
  135. package/dist/{parser-SMBJO3XN.js → parser-K3XXLMUW.js} +4 -4
  136. package/dist/{parser-OBQG655V.js → parser-KCR2WS3V.js} +4 -4
  137. package/dist/{parser-HVJFTOXL.js → parser-LWKKBNSA.js} +3 -3
  138. package/dist/{parser-ZYC3XGNS.js → parser-MPCE5JBG.js} +4 -4
  139. package/dist/{parser-QJYS7KQQ.js → parser-MTOMTWTD.js} +4 -4
  140. package/dist/{parser-GFSOPDB7.js → parser-O4HIUN6G.js} +4 -4
  141. package/dist/{parser-BL7Z72EY.js → parser-PSA4UBSP.js} +4 -4
  142. package/dist/{parser-TNYX5S7E.js → parser-RV4M6AS2.js} +4 -4
  143. package/dist/parser-RZPVAQVX.js +11 -0
  144. package/dist/{parser-UGA23PYK.js → parser-TGQZJ5OT.js} +4 -4
  145. package/dist/parser-TXND652E.js +13 -0
  146. package/dist/{parser-WISPH7LW.js → parser-VKOJM7KS.js} +4 -4
  147. package/dist/{parser-ZKF5K2H2.js → parser-W4PQUGX3.js} +4 -4
  148. package/dist/{parser-MRBPXXIV.js → parser-WAV5JRPT.js} +4 -4
  149. package/dist/{parser-D6ONJQFR.js → parser-YS7TOS2K.js} +3 -3
  150. package/dist/pert.d.ts +8 -0
  151. package/dist/{renderer-VFUVRNLK.js → renderer-2AZ5HJFK.js} +4 -4
  152. package/dist/{renderer-V3JEMWMM.js → renderer-2QPMJ2DA.js} +6 -6
  153. package/dist/renderer-45PSOL3E.js +19 -0
  154. package/dist/{renderer-BB5PREMY.js → renderer-4ITCHBT7.js} +4 -4
  155. package/dist/{renderer-XEKIRPI6.js → renderer-5DSEWF74.js} +5 -5
  156. package/dist/{renderer-QNHUXCRL.js → renderer-6OKF44KS.js} +9 -9
  157. package/dist/renderer-72LGR2YF.js +14 -0
  158. package/dist/{renderer-YHXPN3GF.js → renderer-7SD6MSBS.js} +7 -7
  159. package/dist/renderer-A5VE5BCI.js +24 -0
  160. package/dist/{renderer-A5VFZQQK.js → renderer-AUW2BE6G.js} +6 -6
  161. package/dist/{renderer-LWGJFT3D.js → renderer-B5TBNZJE.js} +5 -5
  162. package/dist/{renderer-4IUPINAE.js → renderer-BSR2O2H6.js} +7 -7
  163. package/dist/{renderer-DKESNMU5.js → renderer-CYB4LK3G.js} +6 -6
  164. package/dist/{renderer-MFJ7HY2H.js → renderer-FF24KZCI.js} +5 -5
  165. package/dist/{renderer-CGW7QPNA.js → renderer-FPE3J5VZ.js} +7 -7
  166. package/dist/{renderer-6T3KK4S3.js → renderer-FYSVXL7M.js} +7 -7
  167. package/dist/{renderer-THD6V5TL.js → renderer-HDCCZURL.js} +9 -7
  168. package/dist/{renderer-TPIBXNOS.js → renderer-JCCHNECZ.js} +6 -6
  169. package/dist/{renderer-QL5KO6SK.js → renderer-KS7YZJE2.js} +7 -7
  170. package/dist/{renderer-SQ3JUAI7.js → renderer-NGXZTRK6.js} +6 -6
  171. package/dist/{renderer-MJDDU27W.js → renderer-ODUUOPVT.js} +10 -10
  172. package/dist/renderer-PJM35LJN.js +17 -0
  173. package/dist/{renderer-TYXRHMRI.js → renderer-PPIHO5FI.js} +9 -9
  174. package/dist/{renderer-W5RMOURB.js → renderer-PSMMZCKH.js} +6 -6
  175. package/dist/{renderer-UZF3JROD.js → renderer-QAOBLRXV.js} +8 -8
  176. package/dist/{renderer-ROV756WT.js → renderer-R2WNIC2C.js} +5 -5
  177. package/dist/{renderer-VICQ4WNY.js → renderer-SBS3YWU5.js} +5 -5
  178. package/dist/{renderer-6L3NBEY5.js → renderer-UYMQQCJK.js} +6 -6
  179. package/dist/{renderer-radial-MHO2VDXN.js → renderer-radial-F7X5F2VU.js} +6 -6
  180. package/dist/{state-parser-RX3GXOIB.js → state-parser-3REXRK3R.js} +4 -4
  181. package/dist/{state-renderer-AJUKGNWU.js → state-renderer-XYLNRWXR.js} +6 -6
  182. package/docs/ai-integration.md +6 -2
  183. package/docs/language-reference.md +253 -22
  184. package/gallery/fixtures/body.dgmo +17 -0
  185. package/gallery/fixtures/bracket.dgmo +30 -0
  186. package/gallery/fixtures/clock.dgmo +8 -0
  187. package/gallery/fixtures/countdown.dgmo +3 -0
  188. package/gallery/fixtures/goal.dgmo +4 -0
  189. package/package.json +12 -4
  190. package/dist/advanced.d.ts +0 -6162
  191. package/dist/auto.d.ts +0 -54
  192. package/dist/block.d.ts +0 -123
  193. package/dist/dgmo-router-ODKPEJ3P.js +0 -79
  194. package/dist/element.d.ts +0 -62
  195. package/dist/index.d.ts +0 -166
  196. package/dist/parser-667RGSUW.js +0 -13
  197. package/dist/parser-J3P2D6IP.js +0 -13
  198. package/dist/themes-1-CuKpeH.d.ts +0 -908
package/.cursorrules CHANGED
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 50-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -76,6 +76,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
78
  | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
79
+ | `bracket` | single-elimination tournament bracket: winners auto-advance; seed the field for a day-0 skeleton or list results casually; two sides mirror to a championship |
79
80
  | `kanban` | task-board columns |
80
81
  | `gantt` | project scheduling with task dependencies and milestones |
81
82
  | `pert` | project network with three-point estimates and critical path |
@@ -94,6 +95,9 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
94
95
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
95
96
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
97
  | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
98
+ | `goal` | single progress-toward-a-target value (`now` vs `target`) as a progress bar, thermometer, or gauge — KPIs, fundraising, quotas |
99
+ | `countdown` | live "N days until X" that ticks every second and is accurate on every load — trip dates, launches, deadlines; the only dynamic chart type |
100
+ | `clock` | live world-clock board: current time for people/places across time zones, ticking every second, with optional working-hours status and sundown line |
97
101
  | `map` | geographic concept map: regions, points, routes |
98
102
  | `wireframe` | low-fidelity UI layout with panels and controls |
99
103
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -117,7 +121,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
117
121
 
118
122
  ### Common examples (curated, parse-clean)
119
123
 
120
- _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
124
+ _The most common types, inline so you can generate them without a fetch. For the other 42, get the per-type section (see below)._
121
125
 
122
126
  #### journey-map
123
127
 
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 50-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -76,6 +76,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
78
  | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
79
+ | `bracket` | single-elimination tournament bracket: winners auto-advance; seed the field for a day-0 skeleton or list results casually; two sides mirror to a championship |
79
80
  | `kanban` | task-board columns |
80
81
  | `gantt` | project scheduling with task dependencies and milestones |
81
82
  | `pert` | project network with three-point estimates and critical path |
@@ -94,6 +95,9 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
94
95
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
95
96
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
97
  | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
98
+ | `goal` | single progress-toward-a-target value (`now` vs `target`) as a progress bar, thermometer, or gauge — KPIs, fundraising, quotas |
99
+ | `countdown` | live "N days until X" that ticks every second and is accurate on every load — trip dates, launches, deadlines; the only dynamic chart type |
100
+ | `clock` | live world-clock board: current time for people/places across time zones, ticking every second, with optional working-hours status and sundown line |
97
101
  | `map` | geographic concept map: regions, points, routes |
98
102
  | `wireframe` | low-fidelity UI layout with panels and controls |
99
103
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -117,7 +121,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
117
121
 
118
122
  ### Common examples (curated, parse-clean)
119
123
 
120
- _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
124
+ _The most common types, inline so you can generate them without a fetch. For the other 42, get the per-type section (see below)._
121
125
 
122
126
  #### journey-map
123
127
 
package/.windsurfrules CHANGED
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 50-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -76,6 +76,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
78
  | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
79
+ | `bracket` | single-elimination tournament bracket: winners auto-advance; seed the field for a day-0 skeleton or list results casually; two sides mirror to a championship |
79
80
  | `kanban` | task-board columns |
80
81
  | `gantt` | project scheduling with task dependencies and milestones |
81
82
  | `pert` | project network with three-point estimates and critical path |
@@ -94,6 +95,9 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
94
95
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
95
96
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
97
  | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
98
+ | `goal` | single progress-toward-a-target value (`now` vs `target`) as a progress bar, thermometer, or gauge — KPIs, fundraising, quotas |
99
+ | `countdown` | live "N days until X" that ticks every second and is accurate on every load — trip dates, launches, deadlines; the only dynamic chart type |
100
+ | `clock` | live world-clock board: current time for people/places across time zones, ticking every second, with optional working-hours status and sundown line |
97
101
  | `map` | geographic concept map: regions, points, routes |
98
102
  | `wireframe` | low-fidelity UI layout with panels and controls |
99
103
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -117,7 +121,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
117
121
 
118
122
  ### Common examples (curated, parse-clean)
119
123
 
120
- _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
124
+ _The most common types, inline so you can generate them without a fetch. For the other 42, get the per-type section (see below)._
121
125
 
122
126
  #### journey-map
123
127
 
package/SKILL.md CHANGED
@@ -11,7 +11,7 @@ Use dgmo tools to create, render, and share diagrams. dgmo is a text-based diagr
11
11
  <!-- DGMO-AI-CORE:START -->
12
12
  ## DGMO AI Core
13
13
 
14
- _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
14
+ _Generated from `language-reference.md` — the anti-patterns and 50-type index below are identical across every DGMO AI surface._
15
15
 
16
16
  ### Disambiguation — where DGMO diverges from LLM priors
17
17
 
@@ -81,6 +81,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
81
81
  | `mindmap` | radial hierarchy of ideas from a central topic |
82
82
  | `org` | reporting hierarchy |
83
83
  | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
84
+ | `bracket` | single-elimination tournament bracket: winners auto-advance; seed the field for a day-0 skeleton or list results casually; two sides mirror to a championship |
84
85
  | `kanban` | task-board columns |
85
86
  | `gantt` | project scheduling with task dependencies and milestones |
86
87
  | `pert` | project network with three-point estimates and critical path |
@@ -99,6 +100,9 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
99
100
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
100
101
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
101
102
  | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
103
+ | `goal` | single progress-toward-a-target value (`now` vs `target`) as a progress bar, thermometer, or gauge — KPIs, fundraising, quotas |
104
+ | `countdown` | live "N days until X" that ticks every second and is accurate on every load — trip dates, launches, deadlines; the only dynamic chart type |
105
+ | `clock` | live world-clock board: current time for people/places across time zones, ticking every second, with optional working-hours status and sundown line |
102
106
  | `map` | geographic concept map: regions, points, routes |
103
107
  | `wireframe` | low-fidelity UI layout with panels and controls |
104
108
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -122,7 +126,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
122
126
 
123
127
  ### Common examples (curated, parse-clean)
124
128
 
125
- _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
129
+ _The most common types, inline so you can generate them without a fetch. For the other 42, get the per-type section (see below)._
126
130
 
127
131
  #### journey-map
128
132