@diagrammo/dgmo 0.8.3 → 0.8.5

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 (122) hide show
  1. package/.claude/commands/dgmo-diagram-this.md +60 -0
  2. package/.claude/commands/dgmo-document-project.md +128 -0
  3. package/.claude/commands/dgmo.md +452 -50
  4. package/.cursorrules +32 -37
  5. package/.github/copilot-instructions.md +35 -44
  6. package/.windsurfrules +32 -37
  7. package/README.md +4 -4
  8. package/dist/cli.cjs +188 -185
  9. package/dist/editor.cjs +338 -0
  10. package/dist/editor.cjs.map +1 -0
  11. package/dist/editor.d.cts +27 -0
  12. package/dist/editor.d.ts +27 -0
  13. package/dist/editor.js +307 -0
  14. package/dist/editor.js.map +1 -0
  15. package/dist/highlight.cjs +560 -0
  16. package/dist/highlight.cjs.map +1 -0
  17. package/dist/highlight.d.cts +32 -0
  18. package/dist/highlight.d.ts +32 -0
  19. package/dist/highlight.js +530 -0
  20. package/dist/highlight.js.map +1 -0
  21. package/dist/index.cjs +3467 -1078
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.d.cts +22 -1
  24. package/dist/index.d.ts +22 -1
  25. package/dist/index.js +3466 -1078
  26. package/dist/index.js.map +1 -1
  27. package/docs/language-reference.md +46 -37
  28. package/gallery/fixtures/arc.dgmo +18 -0
  29. package/gallery/fixtures/area.dgmo +19 -0
  30. package/gallery/fixtures/bar-stacked.dgmo +10 -0
  31. package/gallery/fixtures/bar.dgmo +10 -0
  32. package/gallery/fixtures/c4-full.dgmo +52 -0
  33. package/gallery/fixtures/c4.dgmo +17 -0
  34. package/gallery/fixtures/chord.dgmo +12 -0
  35. package/gallery/fixtures/class-basic.dgmo +14 -0
  36. package/gallery/fixtures/class-full.dgmo +43 -0
  37. package/gallery/fixtures/doughnut.dgmo +8 -0
  38. package/gallery/fixtures/flowchart-basic.dgmo +3 -0
  39. package/gallery/fixtures/flowchart-colors.dgmo +5 -0
  40. package/gallery/fixtures/flowchart-complex.dgmo +17 -0
  41. package/gallery/fixtures/flowchart-decision.dgmo +5 -0
  42. package/gallery/fixtures/flowchart-full.dgmo +13 -0
  43. package/gallery/fixtures/flowchart-groups.dgmo +10 -0
  44. package/gallery/fixtures/flowchart-loop.dgmo +7 -0
  45. package/gallery/fixtures/flowchart-nested.dgmo +7 -0
  46. package/gallery/fixtures/flowchart-shapes.dgmo +5 -0
  47. package/gallery/fixtures/function.dgmo +8 -0
  48. package/gallery/fixtures/funnel.dgmo +7 -0
  49. package/gallery/fixtures/gantt-full.dgmo +49 -0
  50. package/gallery/fixtures/gantt.dgmo +42 -0
  51. package/gallery/fixtures/heatmap.dgmo +8 -0
  52. package/gallery/fixtures/infra-full.dgmo +78 -0
  53. package/gallery/fixtures/infra-overload.dgmo +25 -0
  54. package/gallery/fixtures/infra.dgmo +47 -0
  55. package/gallery/fixtures/initiative-status-full.dgmo +46 -0
  56. package/gallery/fixtures/initiative-status-phases.dgmo +29 -0
  57. package/gallery/fixtures/initiative-status.dgmo +9 -0
  58. package/gallery/fixtures/line.dgmo +19 -0
  59. package/gallery/fixtures/multi-line.dgmo +11 -0
  60. package/gallery/fixtures/org-basic.dgmo +16 -0
  61. package/gallery/fixtures/org-full.dgmo +69 -0
  62. package/gallery/fixtures/org-teams.dgmo +25 -0
  63. package/gallery/fixtures/pie.dgmo +9 -0
  64. package/gallery/fixtures/polar-area.dgmo +8 -0
  65. package/gallery/fixtures/quadrant.dgmo +18 -0
  66. package/gallery/fixtures/radar.dgmo +8 -0
  67. package/gallery/fixtures/sankey.dgmo +31 -0
  68. package/gallery/fixtures/scatter.dgmo +21 -0
  69. package/gallery/fixtures/sequence-tags-protocols.dgmo +45 -0
  70. package/gallery/fixtures/sequence-tags.dgmo +41 -0
  71. package/gallery/fixtures/sequence.dgmo +35 -0
  72. package/gallery/fixtures/sitemap-basic.dgmo +12 -0
  73. package/gallery/fixtures/sitemap-full.dgmo +156 -0
  74. package/gallery/fixtures/slope.dgmo +9 -0
  75. package/gallery/fixtures/spr-eras.dgmo +62 -0
  76. package/gallery/fixtures/state.dgmo +30 -0
  77. package/gallery/fixtures/timeline-intraday.dgmo +14 -0
  78. package/gallery/fixtures/timeline.dgmo +32 -0
  79. package/gallery/fixtures/venn.dgmo +10 -0
  80. package/gallery/fixtures/wordcloud.dgmo +24 -0
  81. package/package.json +71 -2
  82. package/src/c4/layout.ts +372 -90
  83. package/src/c4/parser.ts +100 -55
  84. package/src/chart.ts +91 -28
  85. package/src/class/parser.ts +41 -12
  86. package/src/cli.ts +211 -62
  87. package/src/completion.ts +378 -183
  88. package/src/d3.ts +1044 -303
  89. package/src/dgmo-mermaid.ts +16 -13
  90. package/src/dgmo-router.ts +69 -23
  91. package/src/echarts.ts +646 -153
  92. package/src/editor/dgmo.grammar +69 -0
  93. package/src/editor/dgmo.grammar.d.ts +2 -0
  94. package/src/editor/dgmo.grammar.js +18 -0
  95. package/src/editor/dgmo.grammar.terms.d.ts +5 -0
  96. package/src/editor/dgmo.grammar.terms.js +35 -0
  97. package/src/editor/highlight-api.ts +444 -0
  98. package/src/editor/highlight.ts +36 -0
  99. package/src/editor/index.ts +28 -0
  100. package/src/editor/keywords.ts +222 -0
  101. package/src/editor/tokens.ts +30 -0
  102. package/src/er/parser.ts +48 -14
  103. package/src/er/renderer.ts +112 -53
  104. package/src/gantt/calculator.ts +91 -29
  105. package/src/gantt/parser.ts +197 -71
  106. package/src/gantt/renderer.ts +1120 -350
  107. package/src/graph/flowchart-parser.ts +46 -25
  108. package/src/graph/state-parser.ts +47 -17
  109. package/src/index.ts +96 -31
  110. package/src/infra/parser.ts +157 -53
  111. package/src/infra/renderer.ts +723 -271
  112. package/src/initiative-status/parser.ts +138 -44
  113. package/src/kanban/parser.ts +25 -14
  114. package/src/org/layout.ts +111 -44
  115. package/src/org/parser.ts +69 -22
  116. package/src/palettes/index.ts +3 -2
  117. package/src/sequence/parser.ts +193 -61
  118. package/src/sitemap/parser.ts +65 -29
  119. package/src/utils/arrows.ts +2 -22
  120. package/src/utils/duration.ts +39 -21
  121. package/src/utils/legend-constants.ts +0 -2
  122. package/src/utils/parsing.ts +75 -31
@@ -0,0 +1,9 @@
1
+ slope Programming Language Popularity
2
+
3
+ period 2020 2022 2025
4
+
5
+ Python (blue) 3 1 1
6
+ JavaScript (yellow) 1 2 2
7
+ TypeScript (cyan) 7 4 3
8
+ Rust (orange) 18 12 5
9
+ Go (green) 10 8 7
@@ -0,0 +1,62 @@
1
+ line U.S. Strategic Petroleum Reserve
2
+ y-label Million Barrels
3
+
4
+ era '77 -> '81 Carter (blue)
5
+ era '81 -> '89 Reagan (red)
6
+ era '89 -> '93 Bush (red)
7
+ era '93 -> '01 Clinton (blue)
8
+ era '01 -> '09 Bush (red)
9
+ era '09 -> '17 Obama (blue)
10
+ era '17 -> '21 Trump (red)
11
+ era '21 -> '25 Biden (blue)
12
+ era '25 -> '25 Trump (red)
13
+
14
+ '77 7
15
+ '78 67
16
+ '79 91
17
+ '80 108
18
+ '81 230
19
+ '82 294
20
+ '83 379
21
+ '84 451
22
+ '85 493
23
+ '86 512
24
+ '87 541
25
+ '88 560
26
+ '89 580
27
+ '90 586
28
+ '91 569
29
+ '92 575
30
+ '93 587
31
+ '94 592
32
+ '95 592
33
+ '96 566
34
+ '97 563
35
+ '98 571
36
+ '99 567
37
+ '00 541
38
+ '01 550
39
+ '02 599
40
+ '03 638
41
+ '04 676
42
+ '05 685
43
+ '06 689
44
+ '07 697
45
+ '08 702
46
+ '09 727
47
+ '10 727
48
+ '11 696
49
+ '12 695
50
+ '13 696
51
+ '14 691
52
+ '15 695
53
+ '16 695
54
+ '17 663
55
+ '18 649
56
+ '19 635
57
+ '20 638
58
+ '21 594
59
+ '22 372
60
+ '23 355
61
+ '24 394
62
+ '25 413
@@ -0,0 +1,30 @@
1
+ state Order Lifecycle
2
+
3
+ [*] -> Pending
4
+
5
+ Pending
6
+ -submit-> Validating
7
+
8
+ Validating
9
+ -approved-> Processing
10
+ -rejected-> Cancelled
11
+
12
+ [Fulfillment]
13
+ Processing
14
+ -pack-> Shipping
15
+ -out of stock-> Cancelled
16
+
17
+ Shipping
18
+ -delivered-> Delivered
19
+ -lost-> Refunded
20
+
21
+ [Resolution]
22
+ Delivered
23
+ -return request-> Returning
24
+
25
+ Returning
26
+ -received-> Refunded
27
+
28
+ Cancelled -> [*]
29
+ Refunded -> [*]
30
+ Delivered -> [*]
@@ -0,0 +1,14 @@
1
+ gantt Conference Day 1
2
+ start 2024-06-15 08:00
3
+
4
+ 30min Registration
5
+ 1.5h Opening Keynote
6
+ 15min Break
7
+ parallel
8
+ 1h Track A - Workshop
9
+ 1h Track B - Panel
10
+ 30min Lunch
11
+ 2h Afternoon Sessions
12
+
13
+ marker 2024-06-15 12:30 Lunch
14
+ era 2024-06-15 08:00 -> 2024-06-15 09:30 Morning Block
@@ -0,0 +1,32 @@
1
+ timeline Product Roadmap 2024-2025
2
+ sort tag:Team
3
+
4
+ tag Team alias t
5
+ Engineering(blue)
6
+ Design(purple)
7
+ Product(green)
8
+
9
+ era 2024-01 -> 2024-06 Phase 1 - Foundation
10
+ era 2024-07 -> 2024-12 Phase 2 - Growth
11
+ era 2025-01 -> 2025-06 Phase 3 - Scale
12
+
13
+ marker 2024-03 Beta Launch
14
+ marker 2024-09 GA Release
15
+ marker 2025-01 Series A
16
+
17
+ 2024-01->2024-03 Core API Development | t: Engineering
18
+ 2024-02->2024-05 Auth & Permissions | t: Engineering
19
+ 2024-04->2024-07 Real-time Features | t: Engineering
20
+ 2024-08->2024-11 Performance Optimization | t: Engineering
21
+ 2025-01->2025-04 Multi-region Deploy | t: Engineering
22
+
23
+ 2024-01->2024-02 Design System v1 | t: Design
24
+ 2024-03->2024-05 User Research | t: Design
25
+ 2024-06->2024-08 Design System v2 | t: Design
26
+ 2024-09->2024-11 Accessibility Audit | t: Design
27
+ 2025-02->2025-05 Mobile Redesign | t: Design
28
+
29
+ 2024-02 Competitor Analysis | t: Product
30
+ 2024-06 User Survey | t: Product
31
+ 2024-10 Pricing Strategy | t: Product
32
+ 2025-01->2025-03 Enterprise Features | t: Product
@@ -0,0 +1,10 @@
1
+ venn Full-Stack Developer Skills
2
+
3
+ Frontend(blue) alias fe
4
+ Backend(green) alias be
5
+ DevOps(orange) alias de
6
+
7
+ fe + be Web Systems
8
+ be + de Platform Ops
9
+ fe + de Dev Tools
10
+ fe + be + de Full Stack
@@ -0,0 +1,24 @@
1
+ wordcloud Tech Conference Topics
2
+
3
+ Kubernetes 95
4
+ Machine Learning 88
5
+ Microservices 72
6
+ DevOps 68
7
+ Serverless 55
8
+ GraphQL 48
9
+ TypeScript 82
10
+ Rust 62
11
+ WebAssembly 45
12
+ Edge Computing 38
13
+ Observability 52
14
+ Platform Engineering 60
15
+ AI Agents 90
16
+ LLM 85
17
+ RAG 70
18
+ Vector Database 58
19
+ Terraform 42
20
+ Docker 65
21
+ GitOps 35
22
+ Zero Trust 30
23
+ Service Mesh 28
24
+ eBPF 25
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@diagrammo/dgmo",
3
- "version": "0.8.3",
3
+ "version": "0.8.5",
4
4
  "description": "DGMO diagram markup language — parser, renderer, and color system",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -20,12 +20,33 @@
20
20
  "types": "./dist/index.d.cts",
21
21
  "default": "./dist/index.cjs"
22
22
  }
23
+ },
24
+ "./editor": {
25
+ "import": {
26
+ "types": "./dist/editor.d.ts",
27
+ "default": "./dist/editor.js"
28
+ },
29
+ "require": {
30
+ "types": "./dist/editor.d.cts",
31
+ "default": "./dist/editor.cjs"
32
+ }
33
+ },
34
+ "./highlight": {
35
+ "import": {
36
+ "types": "./dist/highlight.d.ts",
37
+ "default": "./dist/highlight.js"
38
+ },
39
+ "require": {
40
+ "types": "./dist/highlight.d.cts",
41
+ "default": "./dist/highlight.cjs"
42
+ }
23
43
  }
24
44
  },
25
45
  "files": [
26
46
  "dist",
27
47
  "src",
28
48
  "docs",
49
+ "gallery/fixtures",
29
50
  ".claude/commands",
30
51
  ".github/copilot-instructions.md",
31
52
  ".cursorrules",
@@ -34,15 +55,23 @@
34
55
  ],
35
56
  "sideEffects": false,
36
57
  "scripts": {
58
+ "prebuild": "rm -rf dist && lezer-generator src/editor/dgmo.grammar -o src/editor/dgmo.grammar.js",
37
59
  "build": "tsup",
38
60
  "typecheck": "tsc --noEmit",
39
61
  "dev": "tsup --watch",
40
62
  "test": "vitest run",
41
63
  "test:watch": "vitest",
42
64
  "gallery": "pnpm build && node scripts/generate-gallery.mjs",
65
+ "lint": "eslint .",
66
+ "lint:fix": "eslint . --fix",
67
+ "format": "prettier --write src/",
68
+ "format:check": "prettier --check src/",
43
69
  "check:duplication": "jscpd ./src",
44
70
  "check:deadcode": "knip",
45
- "postinstall": "node -e \"console.log('\\nšŸ’” Claude Code user? Run: dgmo --install-claude-skill\\n')\""
71
+ "check:spelling": "cspell \"src/**/*.ts\" \"tests/**/*.ts\"",
72
+ "check:size": "pnpm build && du -sh dist/ && echo '---' && ls -lh dist/*.js dist/*.cjs",
73
+ "postinstall": "node -e \"console.log('\\nšŸ’” Claude Code user? Run: dgmo --install-claude-skill\\n')\"",
74
+ "prepare": "husky"
46
75
  },
47
76
  "dependencies": {
48
77
  "@dagrejs/dagre": "^2.0.4",
@@ -60,6 +89,10 @@
60
89
  "jsdom": "^28.1.0"
61
90
  },
62
91
  "devDependencies": {
92
+ "@codemirror/language": "^6.12.3",
93
+ "@codemirror/state": "^6.6.0",
94
+ "@eslint/js": "^10.0.1",
95
+ "@lezer/generator": "^1.8.0",
63
96
  "@types/d3-array": "^3.2.1",
64
97
  "@types/d3-cloud": "^1.2.9",
65
98
  "@types/d3-hierarchy": "^3.1.7",
@@ -67,10 +100,46 @@
67
100
  "@types/d3-selection": "^3.0.11",
68
101
  "@types/d3-shape": "^3.1.7",
69
102
  "@types/jsdom": "^28.0.0",
103
+ "cspell": "^9.7.0",
104
+ "eslint": "^10.1.0",
105
+ "husky": "^9.1.7",
70
106
  "jscpd": "^4.0.8",
71
107
  "knip": "^6.0.1",
108
+ "lint-staged": "^16.4.0",
109
+ "prettier": "^3.8.1",
72
110
  "tsup": "^8.5.1",
73
111
  "typescript": "^5.7.3",
112
+ "typescript-eslint": "^8.57.2",
74
113
  "vitest": "^4.0.18"
114
+ },
115
+ "lint-staged": {
116
+ "*.ts": [
117
+ "eslint --fix",
118
+ "prettier --write"
119
+ ]
120
+ },
121
+ "peerDependencies": {
122
+ "@codemirror/language": "^6.12.3",
123
+ "@codemirror/state": "^6.6.0",
124
+ "@lezer/common": "^1.5.1",
125
+ "@lezer/highlight": "^1.2.3",
126
+ "@lezer/lr": "^1.4.8"
127
+ },
128
+ "peerDependenciesMeta": {
129
+ "@codemirror/language": {
130
+ "optional": true
131
+ },
132
+ "@codemirror/state": {
133
+ "optional": true
134
+ },
135
+ "@lezer/common": {
136
+ "optional": true
137
+ },
138
+ "@lezer/highlight": {
139
+ "optional": true
140
+ },
141
+ "@lezer/lr": {
142
+ "optional": true
143
+ }
75
144
  }
76
145
  }