@likec4/language-server 1.17.1 → 1.19.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 (268) hide show
  1. package/contrib/likec4.tmLanguage.json +1 -1
  2. package/dist/LikeC4FileSystem.d.ts +13 -0
  3. package/dist/LikeC4FileSystem.js +27 -0
  4. package/dist/Rpc.d.ts +9 -0
  5. package/dist/Rpc.js +126 -0
  6. package/dist/ast.d.ts +200 -0
  7. package/dist/ast.js +276 -0
  8. package/dist/browser.d.ts +6 -20
  9. package/dist/browser.js +13 -0
  10. package/dist/formatting/LikeC4Formatter.d.ts +27 -0
  11. package/dist/formatting/LikeC4Formatter.js +261 -0
  12. package/dist/formatting/utils.d.ts +6 -0
  13. package/dist/formatting/utils.js +15 -0
  14. package/dist/generated/ast.d.ts +1242 -0
  15. package/dist/generated/ast.js +1945 -0
  16. package/dist/generated/grammar.d.ts +6 -0
  17. package/dist/generated/grammar.js +3 -0
  18. package/dist/generated/module.d.ts +9 -0
  19. package/dist/generated/module.js +23 -0
  20. package/dist/generated-lib/icons.d.ts +1 -0
  21. package/dist/{likec4lib.mjs → generated-lib/icons.js} +1 -6
  22. package/dist/index.d.ts +8 -31
  23. package/dist/index.js +13 -0
  24. package/dist/like-c4.langium +845 -0
  25. package/dist/likec4lib.d.ts +4 -6
  26. package/dist/likec4lib.js +4 -0
  27. package/dist/logger.d.ts +7 -0
  28. package/dist/logger.js +73 -0
  29. package/dist/lsp/CodeLensProvider.d.ts +9 -0
  30. package/dist/lsp/CodeLensProvider.js +40 -0
  31. package/dist/lsp/CompletionProvider.d.ts +6 -0
  32. package/dist/lsp/CompletionProvider.js +135 -0
  33. package/dist/lsp/DocumentHighlightProvider.d.ts +9 -0
  34. package/dist/lsp/DocumentHighlightProvider.js +10 -0
  35. package/dist/lsp/DocumentLinkProvider.d.ts +11 -0
  36. package/dist/lsp/DocumentLinkProvider.js +49 -0
  37. package/dist/lsp/DocumentSymbolProvider.d.ts +23 -0
  38. package/dist/lsp/DocumentSymbolProvider.js +202 -0
  39. package/dist/lsp/HoverProvider.d.ts +10 -0
  40. package/dist/lsp/HoverProvider.js +69 -0
  41. package/dist/lsp/RenameProvider.d.ts +5 -0
  42. package/dist/lsp/RenameProvider.js +6 -0
  43. package/dist/lsp/SemanticTokenProvider.d.ts +7 -0
  44. package/dist/lsp/SemanticTokenProvider.js +297 -0
  45. package/dist/lsp/index.d.ts +7 -0
  46. package/dist/lsp/index.js +7 -0
  47. package/dist/model/deployments-index.d.ts +60 -0
  48. package/dist/model/deployments-index.js +181 -0
  49. package/dist/model/fqn-computation.d.ts +3 -0
  50. package/dist/model/fqn-computation.js +72 -0
  51. package/dist/model/fqn-index.d.ts +25 -0
  52. package/dist/model/fqn-index.js +96 -0
  53. package/dist/model/index.d.ts +6 -0
  54. package/dist/model/index.js +6 -0
  55. package/dist/model/model-builder.d.ts +32 -0
  56. package/dist/model/model-builder.js +598 -0
  57. package/dist/model/model-locator.d.ts +23 -0
  58. package/dist/model/model-locator.js +126 -0
  59. package/dist/model/model-parser-where.d.ts +3 -0
  60. package/dist/model/model-parser-where.js +70 -0
  61. package/dist/model/model-parser.d.ts +292 -0
  62. package/dist/model/model-parser.js +72 -0
  63. package/dist/model/parser/Base.d.ts +28 -0
  64. package/dist/model/parser/Base.js +87 -0
  65. package/dist/model/parser/DeploymentModelParser.d.ts +33 -0
  66. package/dist/model/parser/DeploymentModelParser.js +162 -0
  67. package/dist/model/parser/DeploymentViewParser.d.ts +38 -0
  68. package/dist/model/parser/DeploymentViewParser.js +98 -0
  69. package/dist/model/parser/FqnRefParser.d.ts +29 -0
  70. package/dist/model/parser/FqnRefParser.js +108 -0
  71. package/dist/model/parser/GlobalsParser.d.ts +66 -0
  72. package/dist/model/parser/GlobalsParser.js +80 -0
  73. package/dist/model/parser/ModelParser.d.ts +27 -0
  74. package/dist/model/parser/ModelParser.js +122 -0
  75. package/dist/model/parser/PredicatesParser.d.ts +34 -0
  76. package/dist/model/parser/PredicatesParser.js +272 -0
  77. package/dist/model/parser/SpecificationParser.d.ts +27 -0
  78. package/dist/model/parser/SpecificationParser.js +120 -0
  79. package/dist/model/parser/ViewsParser.d.ts +64 -0
  80. package/dist/model/parser/ViewsParser.js +377 -0
  81. package/dist/model-change/ModelChanges.d.ts +15 -0
  82. package/dist/model-change/ModelChanges.js +89 -0
  83. package/dist/model-change/changeElementStyle.d.ts +16 -0
  84. package/dist/model-change/changeElementStyle.js +136 -0
  85. package/dist/model-change/changeViewLayout.d.ts +12 -0
  86. package/dist/model-change/changeViewLayout.js +32 -0
  87. package/dist/model-change/saveManualLayout.d.ts +11 -0
  88. package/dist/model-change/saveManualLayout.js +27 -0
  89. package/dist/module.d.ts +62 -0
  90. package/dist/module.js +123 -0
  91. package/dist/protocol.d.ts +27 -27
  92. package/dist/protocol.js +14 -0
  93. package/dist/references/index.d.ts +3 -0
  94. package/dist/references/index.js +3 -0
  95. package/dist/references/name-provider.d.ts +9 -0
  96. package/dist/references/name-provider.js +33 -0
  97. package/dist/references/scope-computation.d.ts +20 -0
  98. package/dist/references/scope-computation.js +281 -0
  99. package/dist/references/scope-provider.d.ts +16 -0
  100. package/dist/references/scope-provider.js +165 -0
  101. package/dist/shared/NodeKindProvider.d.ts +15 -0
  102. package/dist/shared/NodeKindProvider.js +108 -0
  103. package/dist/shared/WorkspaceManager.d.ts +18 -0
  104. package/dist/shared/WorkspaceManager.js +36 -0
  105. package/dist/shared/WorkspaceSymbolProvider.d.ts +3 -0
  106. package/dist/shared/WorkspaceSymbolProvider.js +3 -0
  107. package/dist/shared/index.d.ts +3 -0
  108. package/dist/shared/index.js +3 -0
  109. package/dist/test/index.d.ts +1 -0
  110. package/dist/test/index.js +1 -0
  111. package/dist/test/setup.d.ts +1 -0
  112. package/dist/test/setup.js +7 -0
  113. package/dist/test/testServices.d.ts +22 -0
  114. package/dist/test/testServices.js +119 -0
  115. package/dist/utils/elementRef.d.ts +11 -0
  116. package/dist/utils/elementRef.js +15 -0
  117. package/dist/utils/fqnRef.d.ts +8 -0
  118. package/dist/utils/fqnRef.js +46 -0
  119. package/dist/utils/index.d.ts +1 -0
  120. package/dist/utils/index.js +1 -0
  121. package/dist/utils/printDocs.d.ts +2 -0
  122. package/dist/utils/printDocs.js +1 -0
  123. package/dist/utils/stringHash.d.ts +1 -0
  124. package/dist/utils/stringHash.js +5 -0
  125. package/dist/validation/_shared.d.ts +3 -0
  126. package/dist/validation/_shared.js +22 -0
  127. package/dist/validation/deployment-checks.d.ts +6 -0
  128. package/dist/validation/deployment-checks.js +114 -0
  129. package/dist/validation/dynamic-view-rule.d.ts +4 -0
  130. package/dist/validation/dynamic-view-rule.js +16 -0
  131. package/dist/validation/dynamic-view-step.d.ts +4 -0
  132. package/dist/validation/dynamic-view-step.js +33 -0
  133. package/dist/validation/element.d.ts +4 -0
  134. package/dist/validation/element.js +49 -0
  135. package/dist/validation/index.d.ts +15 -0
  136. package/dist/validation/index.js +152 -0
  137. package/dist/validation/property-checks.d.ts +6 -0
  138. package/dist/validation/property-checks.js +38 -0
  139. package/dist/validation/relation.d.ts +5 -0
  140. package/dist/validation/relation.js +56 -0
  141. package/dist/validation/specification.d.ts +11 -0
  142. package/dist/validation/specification.js +136 -0
  143. package/dist/validation/view-predicates/element-with.d.ts +4 -0
  144. package/dist/validation/view-predicates/element-with.js +30 -0
  145. package/dist/validation/view-predicates/expanded-element.d.ts +4 -0
  146. package/dist/validation/view-predicates/expanded-element.js +11 -0
  147. package/dist/validation/view-predicates/expression-v2.d.ts +5 -0
  148. package/dist/validation/view-predicates/expression-v2.js +83 -0
  149. package/dist/validation/view-predicates/incoming.d.ts +4 -0
  150. package/dist/validation/view-predicates/incoming.js +15 -0
  151. package/dist/validation/view-predicates/index.d.ts +6 -0
  152. package/dist/validation/view-predicates/index.js +6 -0
  153. package/dist/validation/view-predicates/outgoing.d.ts +4 -0
  154. package/dist/validation/view-predicates/outgoing.js +15 -0
  155. package/dist/validation/view-predicates/relation-with.d.ts +4 -0
  156. package/dist/validation/view-predicates/relation-with.js +12 -0
  157. package/dist/validation/view.d.ts +4 -0
  158. package/dist/validation/view.js +23 -0
  159. package/dist/view-utils/assignNavigateTo.d.ts +2 -0
  160. package/dist/view-utils/assignNavigateTo.js +25 -0
  161. package/dist/view-utils/index.d.ts +2 -0
  162. package/dist/view-utils/index.js +2 -0
  163. package/dist/view-utils/manual-layout.d.ts +7 -0
  164. package/dist/view-utils/manual-layout.js +99 -0
  165. package/dist/view-utils/resolve-relative-paths.d.ts +2 -0
  166. package/dist/view-utils/resolve-relative-paths.js +78 -0
  167. package/package.json +42 -73
  168. package/src/LikeC4FileSystem.ts +22 -21
  169. package/src/Rpc.ts +6 -3
  170. package/src/ast.ts +136 -172
  171. package/src/browser.ts +10 -11
  172. package/src/generated/ast.ts +656 -40
  173. package/src/generated/grammar.ts +1 -1
  174. package/src/index.ts +11 -8
  175. package/src/like-c4.langium +173 -22
  176. package/src/logger.ts +41 -57
  177. package/src/lsp/CodeLensProvider.ts +0 -1
  178. package/src/lsp/CompletionProvider.ts +20 -5
  179. package/src/lsp/DocumentSymbolProvider.ts +5 -2
  180. package/src/lsp/HoverProvider.ts +37 -3
  181. package/src/lsp/SemanticTokenProvider.ts +58 -32
  182. package/src/model/deployments-index.ts +222 -0
  183. package/src/model/fqn-computation.ts +1 -1
  184. package/src/model/fqn-index.ts +0 -1
  185. package/src/model/index.ts +1 -0
  186. package/src/model/model-builder.ts +176 -39
  187. package/src/model/model-locator.ts +36 -7
  188. package/src/model/model-parser.ts +69 -1119
  189. package/src/model/parser/Base.ts +107 -0
  190. package/src/model/parser/DeploymentModelParser.ts +192 -0
  191. package/src/model/parser/DeploymentViewParser.ts +116 -0
  192. package/src/model/parser/FqnRefParser.ts +118 -0
  193. package/src/model/parser/GlobalsParser.ts +96 -0
  194. package/src/model/parser/ModelParser.ts +141 -0
  195. package/src/model/parser/PredicatesParser.ts +291 -0
  196. package/src/model/parser/SpecificationParser.ts +133 -0
  197. package/src/model/parser/ViewsParser.ts +428 -0
  198. package/src/model-change/changeViewLayout.ts +2 -2
  199. package/src/module.ts +26 -21
  200. package/src/protocol.ts +10 -6
  201. package/src/references/index.ts +1 -0
  202. package/src/references/name-provider.ts +37 -0
  203. package/src/references/scope-computation.ts +130 -21
  204. package/src/references/scope-provider.ts +68 -35
  205. package/src/shared/NodeKindProvider.ts +15 -3
  206. package/src/{elementRef.ts → utils/elementRef.ts} +1 -1
  207. package/src/utils/fqnRef.ts +56 -0
  208. package/src/utils/stringHash.ts +2 -2
  209. package/src/validation/_shared.ts +6 -5
  210. package/src/validation/deployment-checks.ts +131 -0
  211. package/src/validation/dynamic-view-step.ts +1 -1
  212. package/src/validation/index.ts +104 -6
  213. package/src/validation/relation.ts +1 -1
  214. package/src/validation/view-predicates/expression-v2.ts +101 -0
  215. package/src/validation/view-predicates/index.ts +1 -0
  216. package/src/view-utils/assignNavigateTo.ts +6 -5
  217. package/src/view-utils/index.ts +0 -1
  218. package/src/view-utils/manual-layout.ts +25 -0
  219. package/dist/browser.cjs +0 -25
  220. package/dist/browser.d.cts +0 -23
  221. package/dist/browser.d.mts +0 -23
  222. package/dist/browser.mjs +0 -20
  223. package/dist/index.cjs +0 -53
  224. package/dist/index.d.cts +0 -34
  225. package/dist/index.d.mts +0 -34
  226. package/dist/index.mjs +0 -46
  227. package/dist/likec4lib.cjs +0 -1546
  228. package/dist/likec4lib.d.cts +0 -6
  229. package/dist/likec4lib.d.mts +0 -6
  230. package/dist/model-graph/index.cjs +0 -10
  231. package/dist/model-graph/index.d.cts +0 -81
  232. package/dist/model-graph/index.d.mts +0 -81
  233. package/dist/model-graph/index.d.ts +0 -81
  234. package/dist/model-graph/index.mjs +0 -1
  235. package/dist/protocol.cjs +0 -25
  236. package/dist/protocol.d.cts +0 -45
  237. package/dist/protocol.d.mts +0 -45
  238. package/dist/protocol.mjs +0 -17
  239. package/dist/shared/language-server.BIbAD1T-.mjs +0 -6292
  240. package/dist/shared/language-server.BQRvVmE0.d.cts +0 -1303
  241. package/dist/shared/language-server.BysPcTxr.d.ts +0 -1303
  242. package/dist/shared/language-server.D2QdbOJO.cjs +0 -1995
  243. package/dist/shared/language-server.DGrBGmsd.mjs +0 -1981
  244. package/dist/shared/language-server.DKV_FdPN.cjs +0 -6304
  245. package/dist/shared/language-server._wkyPgso.d.mts +0 -1303
  246. package/src/model-graph/LikeC4ModelGraph.ts +0 -338
  247. package/src/model-graph/compute-view/__test__/fixture.ts +0 -630
  248. package/src/model-graph/compute-view/compute.ts +0 -788
  249. package/src/model-graph/compute-view/index.ts +0 -33
  250. package/src/model-graph/compute-view/predicates.ts +0 -509
  251. package/src/model-graph/dynamic-view/__test__/fixture.ts +0 -61
  252. package/src/model-graph/dynamic-view/compute.ts +0 -313
  253. package/src/model-graph/dynamic-view/index.ts +0 -29
  254. package/src/model-graph/index.ts +0 -3
  255. package/src/model-graph/utils/applyCustomElementProperties.ts +0 -65
  256. package/src/model-graph/utils/applyCustomRelationProperties.ts +0 -41
  257. package/src/model-graph/utils/applyViewRuleStyles.ts +0 -49
  258. package/src/model-graph/utils/buildComputeNodes.ts +0 -113
  259. package/src/model-graph/utils/buildElementNotations.ts +0 -63
  260. package/src/model-graph/utils/elementExpressionToPredicate.ts +0 -39
  261. package/src/model-graph/utils/relationExpressionToPredicates.ts +0 -43
  262. package/src/model-graph/utils/sortNodes.ts +0 -105
  263. package/src/model-graph/utils/uniqueTags.test.ts +0 -42
  264. package/src/model-graph/utils/uniqueTags.ts +0 -19
  265. package/src/utils/graphlib.ts +0 -9
  266. package/src/view-utils/resolve-extended-views.ts +0 -66
  267. package/src/view-utils/resolve-global-rules.ts +0 -88
  268. package/src/view-utils/view-hash.ts +0 -27
@@ -1,6 +0,0 @@
1
- declare const LibIcons: string;
2
-
3
- declare const Scheme = "likec4builtin";
4
- declare const Uri: "likec4builtin:///likec4/lib/icons.c4";
5
-
6
- export { LibIcons as Content, Scheme, Uri };
@@ -1,6 +0,0 @@
1
- declare const LibIcons: string;
2
-
3
- declare const Scheme = "likec4builtin";
4
- declare const Uri: "likec4builtin:///likec4/lib/icons.c4";
5
-
6
- export { LibIcons as Content, Scheme, Uri };
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- const LikeC4ModelGraph = require('../shared/language-server.D2QdbOJO.cjs');
4
-
5
-
6
-
7
- exports.LikeC4ModelGraph = LikeC4ModelGraph.LikeC4ModelGraph;
8
- exports.computeDynamicView = LikeC4ModelGraph.computeDynamicView;
9
- exports.computeElementView = LikeC4ModelGraph.computeElementView;
10
- exports.computeView = LikeC4ModelGraph.computeView;
@@ -1,81 +0,0 @@
1
- import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
2
-
3
- type Params = {
4
- elements: Record<Fqn, Element>;
5
- relations: Record<RelationID, Relation>;
6
- globals?: ModelGlobals;
7
- };
8
- type RelationEdge = {
9
- source: Element;
10
- target: Element;
11
- relations: Relation[];
12
- };
13
- type FqnOrElement = Fqn | Element;
14
- type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
15
- /**
16
- * Used only for views calculations.
17
- * Subject to change.
18
- */
19
- declare class LikeC4ModelGraph {
20
- #private;
21
- readonly globals: ModelGlobals;
22
- constructor({ elements, relations, globals }: Params);
23
- get rootElements(): Element[];
24
- get elements(): Element[];
25
- element(id: Fqn): Element;
26
- connectedRelations(id: Fqn): Relation[];
27
- children(id: Fqn): Element[];
28
- childrenOrElement(id: Fqn): Element[];
29
- siblings(element: Fqn | Element): Element[];
30
- /**
31
- * Get all ancestor elements (i.e. parent, parent’s parent, etc.)
32
- * (from closest to root)
33
- */
34
- ancestors(element: Fqn | Element): Array<Element>;
35
- /**
36
- * Resolve siblings of the element and its ancestors
37
- * (from closest to root)
38
- */
39
- ascendingSiblings(element: Fqn | Element): Array<Element>;
40
- /**
41
- * Resolve all RelationEdges between element and others (any direction)
42
- */
43
- anyEdgesBetween(_element: Fqn | Element, others: ReadonlyArray<Fqn> | ReadonlyArray<Element>): Array<RelationEdge>;
44
- /**
45
- * Resolve all RelationEdges between elements (any direction)
46
- */
47
- edgesWithin<T extends Fqn[] | Element[]>(elements: T): Array<RelationEdge>;
48
- /**
49
- * Get directed RelationEdge between source and target if exists
50
- */
51
- edgesBetween(_sources: FqnOrElement | FqnsOrElements, _targets: FqnOrElement | FqnsOrElements): RelationEdge[];
52
- private addElement;
53
- private addRelation;
54
- private _childrenOf;
55
- private _incomingTo;
56
- private _outgoingFrom;
57
- private _internalOf;
58
- }
59
-
60
- declare function computeElementView(view: ElementView, graph: LikeC4ModelGraph): ComputedElementView<string, string>;
61
- type ComputeViewResult$1 = {
62
- isSuccess: true;
63
- view: ComputedElementView;
64
- } | {
65
- isSuccess: false;
66
- error: Error;
67
- view: undefined;
68
- };
69
- declare function computeView(view: ElementView, graph: LikeC4ModelGraph): ComputeViewResult$1;
70
-
71
- type ComputeViewResult = {
72
- isSuccess: true;
73
- view: ComputedDynamicView;
74
- } | {
75
- isSuccess: false;
76
- error: Error;
77
- view: undefined;
78
- };
79
- declare function computeDynamicView(view: DynamicView, graph: LikeC4ModelGraph): ComputeViewResult;
80
-
81
- export { LikeC4ModelGraph, computeDynamicView, computeElementView, computeView };
@@ -1,81 +0,0 @@
1
- import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
2
-
3
- type Params = {
4
- elements: Record<Fqn, Element>;
5
- relations: Record<RelationID, Relation>;
6
- globals?: ModelGlobals;
7
- };
8
- type RelationEdge = {
9
- source: Element;
10
- target: Element;
11
- relations: Relation[];
12
- };
13
- type FqnOrElement = Fqn | Element;
14
- type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
15
- /**
16
- * Used only for views calculations.
17
- * Subject to change.
18
- */
19
- declare class LikeC4ModelGraph {
20
- #private;
21
- readonly globals: ModelGlobals;
22
- constructor({ elements, relations, globals }: Params);
23
- get rootElements(): Element[];
24
- get elements(): Element[];
25
- element(id: Fqn): Element;
26
- connectedRelations(id: Fqn): Relation[];
27
- children(id: Fqn): Element[];
28
- childrenOrElement(id: Fqn): Element[];
29
- siblings(element: Fqn | Element): Element[];
30
- /**
31
- * Get all ancestor elements (i.e. parent, parent’s parent, etc.)
32
- * (from closest to root)
33
- */
34
- ancestors(element: Fqn | Element): Array<Element>;
35
- /**
36
- * Resolve siblings of the element and its ancestors
37
- * (from closest to root)
38
- */
39
- ascendingSiblings(element: Fqn | Element): Array<Element>;
40
- /**
41
- * Resolve all RelationEdges between element and others (any direction)
42
- */
43
- anyEdgesBetween(_element: Fqn | Element, others: ReadonlyArray<Fqn> | ReadonlyArray<Element>): Array<RelationEdge>;
44
- /**
45
- * Resolve all RelationEdges between elements (any direction)
46
- */
47
- edgesWithin<T extends Fqn[] | Element[]>(elements: T): Array<RelationEdge>;
48
- /**
49
- * Get directed RelationEdge between source and target if exists
50
- */
51
- edgesBetween(_sources: FqnOrElement | FqnsOrElements, _targets: FqnOrElement | FqnsOrElements): RelationEdge[];
52
- private addElement;
53
- private addRelation;
54
- private _childrenOf;
55
- private _incomingTo;
56
- private _outgoingFrom;
57
- private _internalOf;
58
- }
59
-
60
- declare function computeElementView(view: ElementView, graph: LikeC4ModelGraph): ComputedElementView<string, string>;
61
- type ComputeViewResult$1 = {
62
- isSuccess: true;
63
- view: ComputedElementView;
64
- } | {
65
- isSuccess: false;
66
- error: Error;
67
- view: undefined;
68
- };
69
- declare function computeView(view: ElementView, graph: LikeC4ModelGraph): ComputeViewResult$1;
70
-
71
- type ComputeViewResult = {
72
- isSuccess: true;
73
- view: ComputedDynamicView;
74
- } | {
75
- isSuccess: false;
76
- error: Error;
77
- view: undefined;
78
- };
79
- declare function computeDynamicView(view: DynamicView, graph: LikeC4ModelGraph): ComputeViewResult;
80
-
81
- export { LikeC4ModelGraph, computeDynamicView, computeElementView, computeView };
@@ -1,81 +0,0 @@
1
- import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
2
-
3
- type Params = {
4
- elements: Record<Fqn, Element>;
5
- relations: Record<RelationID, Relation>;
6
- globals?: ModelGlobals;
7
- };
8
- type RelationEdge = {
9
- source: Element;
10
- target: Element;
11
- relations: Relation[];
12
- };
13
- type FqnOrElement = Fqn | Element;
14
- type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
15
- /**
16
- * Used only for views calculations.
17
- * Subject to change.
18
- */
19
- declare class LikeC4ModelGraph {
20
- #private;
21
- readonly globals: ModelGlobals;
22
- constructor({ elements, relations, globals }: Params);
23
- get rootElements(): Element[];
24
- get elements(): Element[];
25
- element(id: Fqn): Element;
26
- connectedRelations(id: Fqn): Relation[];
27
- children(id: Fqn): Element[];
28
- childrenOrElement(id: Fqn): Element[];
29
- siblings(element: Fqn | Element): Element[];
30
- /**
31
- * Get all ancestor elements (i.e. parent, parent’s parent, etc.)
32
- * (from closest to root)
33
- */
34
- ancestors(element: Fqn | Element): Array<Element>;
35
- /**
36
- * Resolve siblings of the element and its ancestors
37
- * (from closest to root)
38
- */
39
- ascendingSiblings(element: Fqn | Element): Array<Element>;
40
- /**
41
- * Resolve all RelationEdges between element and others (any direction)
42
- */
43
- anyEdgesBetween(_element: Fqn | Element, others: ReadonlyArray<Fqn> | ReadonlyArray<Element>): Array<RelationEdge>;
44
- /**
45
- * Resolve all RelationEdges between elements (any direction)
46
- */
47
- edgesWithin<T extends Fqn[] | Element[]>(elements: T): Array<RelationEdge>;
48
- /**
49
- * Get directed RelationEdge between source and target if exists
50
- */
51
- edgesBetween(_sources: FqnOrElement | FqnsOrElements, _targets: FqnOrElement | FqnsOrElements): RelationEdge[];
52
- private addElement;
53
- private addRelation;
54
- private _childrenOf;
55
- private _incomingTo;
56
- private _outgoingFrom;
57
- private _internalOf;
58
- }
59
-
60
- declare function computeElementView(view: ElementView, graph: LikeC4ModelGraph): ComputedElementView<string, string>;
61
- type ComputeViewResult$1 = {
62
- isSuccess: true;
63
- view: ComputedElementView;
64
- } | {
65
- isSuccess: false;
66
- error: Error;
67
- view: undefined;
68
- };
69
- declare function computeView(view: ElementView, graph: LikeC4ModelGraph): ComputeViewResult$1;
70
-
71
- type ComputeViewResult = {
72
- isSuccess: true;
73
- view: ComputedDynamicView;
74
- } | {
75
- isSuccess: false;
76
- error: Error;
77
- view: undefined;
78
- };
79
- declare function computeDynamicView(view: DynamicView, graph: LikeC4ModelGraph): ComputeViewResult;
80
-
81
- export { LikeC4ModelGraph, computeDynamicView, computeElementView, computeView };
@@ -1 +0,0 @@
1
- export { L as LikeC4ModelGraph, b as computeDynamicView, c as computeElementView, a as computeView } from '../shared/language-server.DGrBGmsd.mjs';
package/dist/protocol.cjs DELETED
@@ -1,25 +0,0 @@
1
- 'use strict';
2
-
3
- const vscodeJsonrpc = require('vscode-jsonrpc');
4
-
5
- const onDidChangeModel = new vscodeJsonrpc.NotificationType("likec4/onDidChangeModel");
6
- const fetchModel = new vscodeJsonrpc.RequestType0(
7
- "likec4/fetchModel"
8
- );
9
- const fetchComputedModel = new vscodeJsonrpc.RequestType(
10
- "likec4/fetchComputedModel"
11
- );
12
- const computeView = new vscodeJsonrpc.RequestType(
13
- "likec4/computeView"
14
- );
15
- const buildDocuments = new vscodeJsonrpc.RequestType("likec4/build");
16
- const locate = new vscodeJsonrpc.RequestType("likec4/locate");
17
- const changeView = new vscodeJsonrpc.RequestType("likec4/change-view");
18
-
19
- exports.buildDocuments = buildDocuments;
20
- exports.changeView = changeView;
21
- exports.computeView = computeView;
22
- exports.fetchComputedModel = fetchComputedModel;
23
- exports.fetchModel = fetchModel;
24
- exports.locate = locate;
25
- exports.onDidChangeModel = onDidChangeModel;
@@ -1,45 +0,0 @@
1
- import { ParsedLikeC4Model, ComputedLikeC4Model, ViewID, ComputedView, Fqn, RelationID, ViewChange } from '@likec4/core';
2
- import { NotificationType, RequestType0, RequestType } from 'vscode-jsonrpc';
3
- import { DocumentUri, Location } from 'vscode-languageserver-types';
4
-
5
- declare const onDidChangeModel: NotificationType<string>;
6
- type OnDidChangeModelNotification = typeof onDidChangeModel;
7
- declare const fetchModel: RequestType0<{
8
- model: ParsedLikeC4Model | null;
9
- }, void>;
10
- type FetchModelRequest = typeof fetchModel;
11
- declare const fetchComputedModel: RequestType<{
12
- cleanCaches?: boolean | undefined;
13
- }, {
14
- model: ComputedLikeC4Model | null;
15
- }, void>;
16
- type FetchComputedModelRequest = typeof fetchComputedModel;
17
- declare const computeView: RequestType<{
18
- viewId: ViewID;
19
- }, {
20
- view: ComputedView | null;
21
- }, void>;
22
- type ComputeViewRequest = typeof computeView;
23
- interface BuildDocumentsParams {
24
- docs: DocumentUri[];
25
- }
26
- declare const buildDocuments: RequestType<BuildDocumentsParams, void, void>;
27
- type BuildDocumentsRequest = typeof buildDocuments;
28
- type LocateParams = {
29
- element: Fqn;
30
- property?: string;
31
- } | {
32
- relation: RelationID;
33
- } | {
34
- view: ViewID;
35
- };
36
- declare const locate: RequestType<LocateParams, Location, void>;
37
- type LocateRequest = typeof locate;
38
- interface ChangeViewRequestParams {
39
- viewId: ViewID;
40
- change: ViewChange;
41
- }
42
- declare const changeView: RequestType<ChangeViewRequestParams, Location, void>;
43
- type ChangeViewRequest = typeof changeView;
44
-
45
- export { type BuildDocumentsParams, type BuildDocumentsRequest, type ChangeViewRequest, type ChangeViewRequestParams, type ComputeViewRequest, type FetchComputedModelRequest, type FetchModelRequest, type LocateParams, type LocateRequest, type OnDidChangeModelNotification, buildDocuments, changeView, computeView, fetchComputedModel, fetchModel, locate, onDidChangeModel };
@@ -1,45 +0,0 @@
1
- import { ParsedLikeC4Model, ComputedLikeC4Model, ViewID, ComputedView, Fqn, RelationID, ViewChange } from '@likec4/core';
2
- import { NotificationType, RequestType0, RequestType } from 'vscode-jsonrpc';
3
- import { DocumentUri, Location } from 'vscode-languageserver-types';
4
-
5
- declare const onDidChangeModel: NotificationType<string>;
6
- type OnDidChangeModelNotification = typeof onDidChangeModel;
7
- declare const fetchModel: RequestType0<{
8
- model: ParsedLikeC4Model | null;
9
- }, void>;
10
- type FetchModelRequest = typeof fetchModel;
11
- declare const fetchComputedModel: RequestType<{
12
- cleanCaches?: boolean | undefined;
13
- }, {
14
- model: ComputedLikeC4Model | null;
15
- }, void>;
16
- type FetchComputedModelRequest = typeof fetchComputedModel;
17
- declare const computeView: RequestType<{
18
- viewId: ViewID;
19
- }, {
20
- view: ComputedView | null;
21
- }, void>;
22
- type ComputeViewRequest = typeof computeView;
23
- interface BuildDocumentsParams {
24
- docs: DocumentUri[];
25
- }
26
- declare const buildDocuments: RequestType<BuildDocumentsParams, void, void>;
27
- type BuildDocumentsRequest = typeof buildDocuments;
28
- type LocateParams = {
29
- element: Fqn;
30
- property?: string;
31
- } | {
32
- relation: RelationID;
33
- } | {
34
- view: ViewID;
35
- };
36
- declare const locate: RequestType<LocateParams, Location, void>;
37
- type LocateRequest = typeof locate;
38
- interface ChangeViewRequestParams {
39
- viewId: ViewID;
40
- change: ViewChange;
41
- }
42
- declare const changeView: RequestType<ChangeViewRequestParams, Location, void>;
43
- type ChangeViewRequest = typeof changeView;
44
-
45
- export { type BuildDocumentsParams, type BuildDocumentsRequest, type ChangeViewRequest, type ChangeViewRequestParams, type ComputeViewRequest, type FetchComputedModelRequest, type FetchModelRequest, type LocateParams, type LocateRequest, type OnDidChangeModelNotification, buildDocuments, changeView, computeView, fetchComputedModel, fetchModel, locate, onDidChangeModel };
package/dist/protocol.mjs DELETED
@@ -1,17 +0,0 @@
1
- import { NotificationType, RequestType0, RequestType } from 'vscode-jsonrpc';
2
-
3
- const onDidChangeModel = new NotificationType("likec4/onDidChangeModel");
4
- const fetchModel = new RequestType0(
5
- "likec4/fetchModel"
6
- );
7
- const fetchComputedModel = new RequestType(
8
- "likec4/fetchComputedModel"
9
- );
10
- const computeView = new RequestType(
11
- "likec4/computeView"
12
- );
13
- const buildDocuments = new RequestType("likec4/build");
14
- const locate = new RequestType("likec4/locate");
15
- const changeView = new RequestType("likec4/change-view");
16
-
17
- export { buildDocuments, changeView, computeView, fetchComputedModel, fetchModel, locate, onDidChangeModel };