likec4 1.59.4 → 1.61.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 (186) hide show
  1. package/README.md +2 -0
  2. package/__app__/codegen/react.mjs +4 -10
  3. package/__app__/codegen/webcomponent.mjs +6 -131
  4. package/__app__/index.html +15 -15
  5. package/__app__/src/aichat/index.mjs +11 -7
  6. package/__app__/src/chunks/AIChat.mjs +1355 -739
  7. package/__app__/src/chunks/ErrorComponent.mjs +444 -0
  8. package/__app__/src/chunks/Header.mjs +269 -0
  9. package/__app__/src/chunks/ViewReact.mjs +438 -0
  10. package/__app__/src/chunks/find.mjs +38 -0
  11. package/__app__/src/chunks/hooks.mjs +158 -472
  12. package/__app__/src/chunks/libs/@tabler/icons-react.mjs +340 -0
  13. package/__app__/src/chunks/libs/@tanstack-ai.mjs +11841 -1417
  14. package/__app__/src/chunks/libs/@tanstack.mjs +5110 -2404
  15. package/__app__/src/chunks/libs/fast-equals.mjs +507 -214
  16. package/__app__/src/chunks/libs/html-to-image.mjs +613 -0
  17. package/__app__/src/chunks/libs/nanostores.mjs +170 -0
  18. package/__app__/src/chunks/libs/react-resizable-panels.mjs +2792 -0
  19. package/__app__/src/chunks/react.mjs +22 -0
  20. package/__app__/src/chunks/rolldown-runtime.mjs +16 -29
  21. package/__app__/src/chunks/router.mjs +106 -0
  22. package/__app__/src/chunks/scope.mjs +106 -0
  23. package/__app__/src/chunks/searchParams.mjs +29 -0
  24. package/__app__/src/chunks/single-index.mjs +465 -0
  25. package/__app__/src/chunks/styled-system.mjs +1826 -2528
  26. package/__app__/src/chunks/useAsync.mjs +69 -0
  27. package/__app__/src/chunks/useSyncedRef.mjs +16 -0
  28. package/__app__/src/components/ColorSchemeToggle.mjs +124 -0
  29. package/__app__/src/components/CopyToClipboard.mjs +53 -0
  30. package/__app__/src/components/ErrorComponent.mjs +1 -0
  31. package/__app__/src/components/NavigationPanel.mjs +63 -0
  32. package/__app__/src/components/NotFound.mjs +155 -0
  33. package/__app__/src/components/ViewOutlet.mjs +9 -0
  34. package/__app__/src/components/model-diff/CompareModelProvider.mjs +44 -0
  35. package/__app__/src/components/model-diff/ModelDiffPanel.mjs +179 -0
  36. package/__app__/src/components/model-diff/compare-model.mjs +76 -0
  37. package/__app__/src/components/model-diff/state.mjs +45 -0
  38. package/__app__/src/components/search/OverviewSearch.mjs +92 -0
  39. package/__app__/src/components/search/OverviewSearchAdapter.mjs +94 -0
  40. package/__app__/src/components/sidebar/DiagramTree.css.mjs +48 -0
  41. package/__app__/src/components/sidebar/DiagramsTree.mjs +304 -0
  42. package/__app__/src/components/sidebar/Drawer.mjs +178 -0
  43. package/__app__/src/components/sidebar/SidebarBurger.mjs +28 -0
  44. package/__app__/src/components/sidebar/data.mjs +94 -0
  45. package/__app__/src/components/sidebar/state.mjs +16 -0
  46. package/__app__/src/components/view-page/Header.mjs +1 -0
  47. package/__app__/src/components/view-page/SelectProject.mjs +258 -0
  48. package/__app__/src/components/view-page/ShareModal.mjs +111 -0
  49. package/__app__/src/components/view-page/share-modal/AlertLocalhost.mjs +31 -0
  50. package/__app__/src/components/view-page/share-modal/CopyButtonChild.mjs +36 -0
  51. package/__app__/src/components/view-page/share-modal/EmbedPanel.mjs +100 -0
  52. package/__app__/src/components/view-page/share-modal/WebcomponentsPanel.mjs +264 -0
  53. package/__app__/src/components/view-page/state.mjs +17 -0
  54. package/__app__/src/context/LikeC4CustomizationContext.mjs +26 -0
  55. package/__app__/src/context/LikeC4IconRendererContext.mjs +29 -0
  56. package/__app__/src/context/LikeC4ModelContext.mjs +34 -0
  57. package/__app__/src/context/LikeC4ProjectsContext.mjs +40 -0
  58. package/__app__/src/context/ModelDiffsContext.mjs +33 -0
  59. package/__app__/src/context/safeCtx.mjs +14 -0
  60. package/__app__/src/fonts.css +112 -1
  61. package/__app__/src/hooks.mjs +1 -0
  62. package/__app__/src/main.mjs +6 -29151
  63. package/__app__/src/pages/EmbedPage.mjs +93 -0
  64. package/__app__/src/pages/ExportPage.mjs +691 -0
  65. package/__app__/src/pages/ProjectsOverview.mjs +23 -0
  66. package/__app__/src/pages/ViewAsD2.mjs +105 -0
  67. package/__app__/src/pages/ViewAsDot.mjs +65 -0
  68. package/__app__/src/pages/ViewAsMmd.mjs +109 -0
  69. package/__app__/src/pages/ViewAsPuml.mjs +105 -0
  70. package/__app__/src/pages/ViewEditor.mjs +220 -0
  71. package/__app__/src/pages/ViewReact.mjs +1 -0
  72. package/__app__/src/pages/export-layout.mjs +95 -0
  73. package/__app__/src/pages/export-page-params.mjs +9 -0
  74. package/__app__/src/pages/styles.css.mjs +23 -0
  75. package/__app__/src/routeTree.gen.mjs +105 -0
  76. package/__app__/src/router.mjs +1 -0
  77. package/__app__/src/routes/__root.mjs +65 -0
  78. package/__app__/src/routes/index.css.mjs +29 -0
  79. package/__app__/src/routes/index.mjs +32 -0
  80. package/__app__/src/routes/project._projectId/-components.mjs +100 -0
  81. package/__app__/src/routes/project._projectId/embed._viewId.mjs +5 -0
  82. package/__app__/src/routes/project._projectId/export._viewId.mjs +24 -0
  83. package/__app__/src/routes/project._projectId/index.mjs +14 -0
  84. package/__app__/src/routes/project._projectId/route.mjs +93 -0
  85. package/__app__/src/routes/project._projectId/view._viewId.d2.mjs +34 -0
  86. package/__app__/src/routes/project._projectId/view._viewId.dot.mjs +41 -0
  87. package/__app__/src/routes/project._projectId/view._viewId.index.mjs +7 -0
  88. package/__app__/src/routes/project._projectId/view._viewId.mjs +23 -0
  89. package/__app__/src/routes/project._projectId/view._viewId.mmd.mjs +39 -0
  90. package/__app__/src/routes/project._projectId/view._viewId.puml.mjs +34 -0
  91. package/__app__/src/routes/projects.mjs +36 -0
  92. package/__app__/src/routes/single-index.mjs +1 -0
  93. package/__app__/src/routes/webcomponent._.mjs +94 -0
  94. package/__app__/src/style.css +18497 -1
  95. package/config/schema.json +146 -97
  96. package/dist/app/render-view-client.css +1 -1
  97. package/dist/app/render-view-client.js +394 -238
  98. package/dist/chunks/enableServer.mjs +1 -1
  99. package/dist/chunks/filenames.mjs +25 -17
  100. package/dist/chunks/generate-likec4.mjs +5 -0
  101. package/dist/chunks/index.d.mts +255 -194
  102. package/dist/chunks/index2.d.mts +8246 -3610
  103. package/dist/chunks/libs/@chenglou/pretext.mjs +9 -0
  104. package/dist/chunks/libs/@chevrotain/gast.mjs +27 -1
  105. package/dist/chunks/libs/@chevrotain/regexp-to-ast.mjs +81 -9
  106. package/dist/chunks/libs/@logtape/logtape.mjs +5 -4
  107. package/dist/chunks/libs/@lume/kiwi.mjs +1 -1
  108. package/dist/chunks/libs/@ts-graphviz/common.d.mts +2 -4
  109. package/dist/chunks/libs/@ts-graphviz/core.mjs +1 -1
  110. package/dist/chunks/libs/birpc.mjs +1 -1
  111. package/dist/chunks/libs/chevrotain-allstar.mjs +2 -2
  112. package/dist/chunks/libs/chevrotain.mjs +88 -36
  113. package/dist/chunks/libs/clone.mjs +1 -0
  114. package/dist/chunks/libs/eventemitter3.mjs +1 -1
  115. package/dist/chunks/libs/fast-equals.mjs +1 -0
  116. package/dist/chunks/libs/fontkit.mjs +1 -0
  117. package/dist/chunks/libs/json5.mjs +4 -4
  118. package/dist/chunks/libs/langium.d.mts +6707 -6715
  119. package/dist/chunks/libs/langium.mjs +16 -24
  120. package/dist/chunks/libs/merge-error-cause.mjs +1 -1
  121. package/dist/chunks/libs/p-limit.mjs +1 -0
  122. package/dist/chunks/libs/p-queue.mjs +1 -1
  123. package/dist/chunks/libs/package-manager-detector.mjs +1 -1
  124. package/dist/chunks/libs/pako.mjs +1 -1
  125. package/dist/chunks/libs/pathe.mjs +1 -1
  126. package/dist/chunks/libs/pretty-ms.mjs +1 -1
  127. package/dist/chunks/libs/remeda.mjs +1 -1
  128. package/dist/chunks/libs/ufo.mjs +1 -1
  129. package/dist/chunks/libs/unstorage.mjs +1 -1
  130. package/dist/chunks/libs/which.mjs +1 -1
  131. package/dist/chunks/node.mjs +111 -77
  132. package/dist/chunks/rolldown-runtime.mjs +1 -1
  133. package/dist/chunks/sequence-view.mjs +1 -1
  134. package/dist/chunks/vite-plugin.mjs +185 -166
  135. package/dist/cli/index.mjs +254 -1306
  136. package/dist/config/index.d.mts +66 -5
  137. package/dist/config/index.mjs +1 -1
  138. package/dist/generators/likec4.d.mts +6530 -0
  139. package/dist/generators/likec4.mjs +1 -0
  140. package/dist/index.d.mts +2 -4
  141. package/dist/model/index.d.mts +0 -7
  142. package/dist/vite-plugin/index.d.mts +83 -58
  143. package/dist/vite-plugin/index.mjs +1 -1
  144. package/dist/vite-plugin/internal/chunks/rolldown-runtime.mjs +8 -0
  145. package/dist/vite-plugin/internal/index.d.mts +92 -17
  146. package/dist/vite-plugin/internal/index.mjs +225 -126
  147. package/generators/likec4/package.json +4 -0
  148. package/package.json +134 -122
  149. package/react/index.d.mts +7496 -26659
  150. package/react/index.mjs +533 -63936
  151. package/react/rolldown-runtime-CfRud99p.js +1 -0
  152. package/skills/likec4-dsl/SKILL.md +474 -0
  153. package/skills/likec4-dsl/evals/evals-public.json +207 -0
  154. package/skills/likec4-dsl/evals/grading-spec.json +603 -0
  155. package/skills/likec4-dsl/references/bridge-leanix-drawio.md +42 -0
  156. package/skills/likec4-dsl/references/cli.md +168 -0
  157. package/skills/likec4-dsl/references/configuration.md +266 -0
  158. package/skills/likec4-dsl/references/deployment.md +160 -0
  159. package/skills/likec4-dsl/references/diffs.md +52 -0
  160. package/skills/likec4-dsl/references/dynamic-views.md +455 -0
  161. package/skills/likec4-dsl/references/examples.md +370 -0
  162. package/skills/likec4-dsl/references/identifier-validity.md +90 -0
  163. package/skills/likec4-dsl/references/include-predicates-wildcards.md +180 -0
  164. package/skills/likec4-dsl/references/model.md +182 -0
  165. package/skills/likec4-dsl/references/predicates.md +123 -0
  166. package/skills/likec4-dsl/references/relationships-bidirectional.md +176 -0
  167. package/skills/likec4-dsl/references/specification.md +79 -0
  168. package/skills/likec4-dsl/references/style-tokens-colors.md +150 -0
  169. package/skills/likec4-dsl/references/troubleshooting.md +101 -0
  170. package/skills/likec4-dsl/references/views.md +329 -0
  171. package/vite-plugin-modules.d.ts +126 -51
  172. package/__app__/src/chunks/LikeC4Styles.mjs +0 -2306
  173. package/__app__/src/chunks/ProjectsOverview.mjs +0 -537
  174. package/__app__/src/chunks/es.mjs +0 -439
  175. package/__app__/src/chunks/libs/@floating-ui.mjs +0 -2532
  176. package/__app__/src/chunks/libs/@mantine.mjs +0 -13868
  177. package/__app__/src/chunks/libs/@xstate/react.mjs +0 -2015
  178. package/__app__/src/chunks/libs/@xyflow/react.mjs +0 -5367
  179. package/__app__/src/chunks/libs/bezier-js.mjs +0 -1007
  180. package/__app__/src/chunks/libs/d3.mjs +0 -2817
  181. package/__app__/src/chunks/libs/framer.mjs +0 -5926
  182. package/__app__/src/chunks/libs/zod.mjs +0 -3176
  183. package/dist/chunks/libs/@chevrotain/types.d.mts +0 -108
  184. package/dist/chunks/libs/picomatch.mjs +0 -1
  185. package/dist/chunks/libs/zod.d.mts +0 -3840
  186. package/dist/chunks/libs/zod.mjs +0 -65
@@ -1,102 +1,129 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "type": "object",
4
- "properties": {
5
- "name": {
6
- "type": "string",
7
- "minLength": 1,
8
- "description": "Project name, must be unique in the workspace"
9
- },
10
- "extends": {
11
- "description": "Extend styles from other config files",
12
- "anyOf": [
13
- {
3
+ "$ref": "#/$defs/LikeC4ProjectConfig",
4
+ "$defs": {
5
+ "LikeC4ProjectConfig": {
6
+ "type": "object",
7
+ "properties": {
8
+ "name": {
9
+ "type": "string",
10
+ "minLength": 1,
11
+ "description": "Project name, must be unique in the workspace"
12
+ },
13
+ "extends": {
14
+ "description": "Extend styles from other config files",
15
+ "anyOf": [
16
+ {
17
+ "type": "string",
18
+ "minLength": 1
19
+ },
20
+ {
21
+ "minItems": 1,
22
+ "type": "array",
23
+ "items": {
24
+ "type": "string",
25
+ "minLength": 1
26
+ }
27
+ }
28
+ ]
29
+ },
30
+ "title": {
31
+ "description": "A human readable title for the project",
14
32
  "type": "string",
15
33
  "minLength": 1
16
34
  },
17
- {
18
- "minItems": 1,
35
+ "contactPerson": {
36
+ "description": "A person who has been involved in creating or maintaining this project",
37
+ "type": "string",
38
+ "minLength": 1
39
+ },
40
+ "metadata": {
41
+ "description": "Arbitrary metadata as key-value pairs for custom project information",
42
+ "type": "object",
43
+ "propertyNames": {
44
+ "type": "string"
45
+ },
46
+ "additionalProperties": {}
47
+ },
48
+ "styles": {
49
+ "description": "Project styles customization",
50
+ "type": "object",
51
+ "properties": {
52
+ "theme": {
53
+ "description": "Project theme customization",
54
+ "$ref": "#/$defs/ThemeCustomization"
55
+ },
56
+ "defaults": {
57
+ "description": "Override default values for style properties\nThese values will be used if such property is not defined",
58
+ "$ref": "#/$defs/DefaultStyleValues"
59
+ },
60
+ "customCss": {
61
+ "description": "Custom CSS (or list of CSS files) to be included in the generated diagrams",
62
+ "anyOf": [
63
+ {
64
+ "$ref": "#/$defs/CustomStylesheets"
65
+ },
66
+ {
67
+ "type": "object",
68
+ "properties": {
69
+ "paths": {
70
+ "readOnly": true,
71
+ "type": "array",
72
+ "items": {
73
+ "type": "string"
74
+ }
75
+ },
76
+ "content": {
77
+ "type": "string"
78
+ }
79
+ },
80
+ "required": [
81
+ "paths",
82
+ "content"
83
+ ],
84
+ "additionalProperties": false
85
+ }
86
+ ]
87
+ }
88
+ },
89
+ "additionalProperties": false
90
+ },
91
+ "imageAliases": {
92
+ "$ref": "#/$defs/ImageAliases"
93
+ },
94
+ "include": {
95
+ "$ref": "#/$defs/include-config"
96
+ },
97
+ "exclude": {
98
+ "description": "List of file patterns to exclude from the project, default is [\"**/node_modules/**\"]",
19
99
  "type": "array",
20
100
  "items": {
21
- "type": "string",
22
- "minLength": 1
101
+ "type": "string"
23
102
  }
24
- }
25
- ]
26
- },
27
- "title": {
28
- "description": "A human readable title for the project",
29
- "type": "string",
30
- "minLength": 1
31
- },
32
- "contactPerson": {
33
- "description": "A person who has been involved in creating or maintaining this project",
34
- "type": "string",
35
- "minLength": 1
36
- },
37
- "metadata": {
38
- "description": "Arbitrary metadata as key-value pairs for custom project information",
39
- "type": "object",
40
- "propertyNames": {
41
- "type": "string"
42
- },
43
- "additionalProperties": {}
44
- },
45
- "styles": {
46
- "description": "Project styles customization",
47
- "type": "object",
48
- "properties": {
49
- "theme": {
50
- "description": "Project theme customization",
51
- "$ref": "#/$defs/ThemeCustomization"
52
103
  },
53
- "defaults": {
54
- "description": "Override default values for style properties\nThese values will be used if such property is not defined",
55
- "$ref": "#/$defs/DefaultStyleValues"
104
+ "manualLayouts": {
105
+ "$ref": "#/$defs/ManualLayoutsConfig"
106
+ },
107
+ "inferTechnologyFromIcon": {
108
+ "description": "Automatically derive element technology from icon name when technology is not set explicitly.\nApplies to aws:, azure:, gcp:, and tech: icons. Generic bootstrap: and md: icons are excluded.\nDefaults to true.",
109
+ "type": "boolean"
56
110
  },
57
- "customCss": {
58
- "description": "Custom CSS (or list of CSS files) to be included in the generated diagrams",
59
- "$ref": "#/$defs/CustomStylesheets"
111
+ "implicitViews": {
112
+ "description": "Auto-generate scoped views for elements without explicit views. Defaults to false.",
113
+ "type": "boolean"
114
+ },
115
+ "landingPage": {
116
+ "$ref": "#/$defs/LandingPageConfig"
117
+ },
118
+ "webapp": {
119
+ "$ref": "#/$defs/WebappConfig"
60
120
  }
61
121
  },
62
- "additionalProperties": false
63
- },
64
- "imageAliases": {
65
- "$ref": "#/$defs/ImageAliases"
66
- },
67
- "include": {
68
- "$ref": "#/$defs/include-config"
69
- },
70
- "exclude": {
71
- "description": "List of file patterns to exclude from the project, default is [\"**/node_modules/**\"]",
72
- "type": "array",
73
- "items": {
74
- "type": "string"
75
- }
76
- },
77
- "manualLayouts": {
78
- "$ref": "#/$defs/ManualLayoutsConfig"
79
- },
80
- "inferTechnologyFromIcon": {
81
- "description": "Automatically derive element technology from icon name when technology is not set explicitly.\nApplies to aws:, azure:, gcp:, and tech: icons. Bootstrap icons are excluded.\nDefaults to true.",
82
- "type": "boolean"
83
- },
84
- "implicitViews": {
85
- "description": "Auto-generate scoped views for elements without explicit views. Defaults to false.",
86
- "type": "boolean"
87
- },
88
- "landingPage": {
89
- "$ref": "#/$defs/LandingPageConfig"
122
+ "required": [
123
+ "name"
124
+ ],
125
+ "description": "LikeC4 Project Configuration"
90
126
  },
91
- "webapp": {
92
- "$ref": "#/$defs/WebappConfig"
93
- }
94
- },
95
- "required": [
96
- "name"
97
- ],
98
- "description": "LikeC4 Project Configuration",
99
- "$defs": {
100
127
  "ThemeCustomization": {
101
128
  "type": "object",
102
129
  "properties": {
@@ -124,6 +151,16 @@
124
151
  "additionalProperties": false,
125
152
  "description": "Customize theme colors and sizes"
126
153
  },
154
+ "ColorName": {
155
+ "anyOf": [
156
+ {
157
+ "$ref": "#/$defs/ThemeColorName"
158
+ },
159
+ {
160
+ "$ref": "#/$defs/CustomColorName"
161
+ }
162
+ ]
163
+ },
127
164
  "ThemeColorName": {
128
165
  "type": "string",
129
166
  "enum": [
@@ -141,16 +178,6 @@
141
178
  ]
142
179
  },
143
180
  "CustomColorName": {},
144
- "ColorName": {
145
- "anyOf": [
146
- {
147
- "$ref": "#/$defs/ThemeColorName"
148
- },
149
- {
150
- "$ref": "#/$defs/CustomColorName"
151
- }
152
- ]
153
- },
154
181
  "ThemeColorValues": {
155
182
  "description": "Exact value (hex, rgb, rgba, hsl, hsla ...) or break down of specific color values",
156
183
  "anyOf": [
@@ -312,6 +339,9 @@
312
339
  },
313
340
  "relationship": {
314
341
  "$ref": "#/$defs/RelationshipDefaultStyleValues"
342
+ },
343
+ "view": {
344
+ "$ref": "#/$defs/ViewDefaultValues"
315
345
  }
316
346
  },
317
347
  "additionalProperties": false
@@ -343,7 +373,8 @@
343
373
  "queue",
344
374
  "bucket",
345
375
  "document",
346
- "component"
376
+ "component",
377
+ "agent"
347
378
  ]
348
379
  },
349
380
  "IconPosition": {
@@ -415,6 +446,24 @@
415
446
  "vee"
416
447
  ]
417
448
  },
449
+ "ViewDefaultValues": {
450
+ "type": "object",
451
+ "properties": {
452
+ "routing": {
453
+ "description": "Default edge routing: `spline` for curves or `ortho` for right-angle bends.\nA view can override this default with its `routing` property or `autoLayout` routing parameter.",
454
+ "$ref": "#/$defs/EdgeRouting"
455
+ }
456
+ },
457
+ "additionalProperties": false,
458
+ "description": "Default view settings.\nExplicit settings in a view override these defaults."
459
+ },
460
+ "EdgeRouting": {
461
+ "type": "string",
462
+ "enum": [
463
+ "spline",
464
+ "ortho"
465
+ ]
466
+ },
418
467
  "CustomStylesheets": {
419
468
  "anyOf": [
420
469
  {