@likec4/language-server 1.15.0 → 1.16.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.
- package/contrib/likec4.tmLanguage.json +1 -1
- package/dist/browser.cjs +1 -1
- package/dist/browser.d.cts +2 -2
- package/dist/browser.d.mts +2 -2
- package/dist/browser.d.ts +2 -2
- package/dist/browser.mjs +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +2 -2
- package/dist/model-graph/index.cjs +1 -1
- package/dist/model-graph/index.d.cts +4 -2
- package/dist/model-graph/index.d.mts +4 -2
- package/dist/model-graph/index.d.ts +4 -2
- package/dist/model-graph/index.mjs +1 -1
- package/dist/shared/language-server.7iILaJYc.d.ts +1338 -0
- package/dist/shared/{language-server.80ITEDo5.cjs → language-server.Bd3NZ8uH.cjs} +130 -76
- package/dist/shared/{language-server.DXC9g4_f.mjs → language-server.C5gxpVUH.mjs} +132 -78
- package/dist/shared/language-server.CmBZHwSl.d.cts +1338 -0
- package/dist/shared/{language-server.U2piOAVt.d.cts → language-server.CnkCWVtf.d.cts} +44 -10
- package/dist/shared/{language-server.DfMwkd2l.d.mts → language-server.DIaiY0-C.d.mts} +44 -10
- package/dist/shared/language-server.DViE1Zxi.d.mts +1338 -0
- package/dist/shared/{language-server.zY53FGJE.mjs → language-server.D_13fWJQ.mjs} +216 -94
- package/dist/shared/{language-server.j-ShR6as.d.ts → language-server.DwyQ1FtY.d.ts} +44 -10
- package/dist/shared/{language-server.BUtiWTKg.cjs → language-server.Dym6GL4P.cjs} +214 -92
- package/package.json +8 -8
- package/src/ast.ts +11 -3
- package/src/formatting/LikeC4Formatter.ts +44 -4
- package/src/generated/ast.ts +111 -10
- package/src/generated/grammar.ts +1 -1
- package/src/like-c4.langium +19 -0
- package/src/lsp/SemanticTokenProvider.ts +3 -1
- package/src/model/model-builder.ts +34 -32
- package/src/model/model-parser.ts +91 -18
- package/src/model-graph/LikeC4ModelGraph.ts +22 -11
- package/src/model-graph/compute-view/__test__/fixture.ts +114 -44
- package/src/model-graph/compute-view/compute.ts +77 -72
- package/src/model-graph/dynamic-view/compute.ts +4 -1
- package/src/model-graph/utils/applyCustomRelationProperties.ts +7 -38
- package/src/model-graph/utils/applyViewRuleStyles.ts +0 -4
- package/src/model-graph/utils/relationExpressionToPredicates.ts +43 -0
- package/src/references/scope-computation.ts +10 -0
- package/src/validation/index.ts +3 -0
- package/src/validation/specification.ts +21 -0
- package/src/view-utils/index.ts +0 -1
- package/src/view-utils/resolve-global-rules.ts +66 -50
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
"name": "keyword.control.likec4",
|
|
15
|
-
"match": "\\b(BottomTop|LeftRight|RightLeft|TopBottom|amber|and|autoLayout|blue|border|browser|color|crow|cylinder|dashed|description|diamond|dot|dotted|dynamic|element|element\\.kind|element\\.tag|exclude|extend|extends|global|gray|green|group|head|icon|icons|include|indigo|is|kind|likec4lib|line|link|metadata|mobile|model|muted|navigateTo|none|normal|not|notation|notes|odiamond|odot|of|onormal|opacity|open|or|par|parallel|person|primary|queue|rectangle|red|relationship|secondary|shape|sky|slate|solid|specification|storage|style|styleGroup|tag|tail|technology|title|vee|view|views|where|with)\\b"
|
|
15
|
+
"match": "\\b(BottomTop|LeftRight|RightLeft|TopBottom|amber|and|autoLayout|blue|border|browser|color|crow|cylinder|dashed|description|diamond|dot|dotted|dynamic|dynamicPredicateGroup|element|element\\.kind|element\\.tag|exclude|extend|extends|global|gray|green|group|head|icon|icons|include|indigo|is|kind|likec4lib|line|link|metadata|mobile|model|muted|navigateTo|none|normal|not|notation|notes|odiamond|odot|of|onormal|opacity|open|or|par|parallel|person|predicate|predicateGroup|primary|queue|rectangle|red|relationship|secondary|shape|sky|slate|solid|specification|storage|style|styleGroup|tag|tail|technology|title|vee|view|views|where|with)\\b"
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
"name": "string.quoted.double.likec4",
|
package/dist/browser.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const lsp = require('langium/lsp');
|
|
4
4
|
const browser = require('vscode-languageserver/browser');
|
|
5
|
-
const module$1 = require('./shared/language-server.
|
|
5
|
+
const module$1 = require('./shared/language-server.Dym6GL4P.cjs');
|
|
6
6
|
|
|
7
7
|
function startLanguageServer() {
|
|
8
8
|
const messageReader = new browser.BrowserMessageReader(self);
|
package/dist/browser.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.CnkCWVtf.cjs';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.CnkCWVtf.cjs';
|
|
3
3
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
4
4
|
import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageserver/browser';
|
|
5
5
|
import 'langium';
|
package/dist/browser.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.DIaiY0-C.mjs';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.DIaiY0-C.mjs';
|
|
3
3
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
4
4
|
import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageserver/browser';
|
|
5
5
|
import 'langium';
|
package/dist/browser.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.DwyQ1FtY.js';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, s as setLogLevel } from './shared/language-server.DwyQ1FtY.js';
|
|
3
3
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
4
4
|
import { BrowserMessageReader, BrowserMessageWriter } from 'vscode-languageserver/browser';
|
|
5
5
|
import 'langium';
|
package/dist/browser.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { startLanguageServer as startLanguageServer$1 } from 'langium/lsp';
|
|
2
2
|
import { BrowserMessageReader, BrowserMessageWriter, createConnection } from 'vscode-languageserver/browser';
|
|
3
|
-
import { c as createLanguageServices } from './shared/language-server.
|
|
4
|
-
export { L as LikeC4Module, a as createCustomLanguageServices, s as setLogLevel } from './shared/language-server.
|
|
3
|
+
import { c as createLanguageServices } from './shared/language-server.D_13fWJQ.mjs';
|
|
4
|
+
export { L as LikeC4Module, a as createCustomLanguageServices, s as setLogLevel } from './shared/language-server.D_13fWJQ.mjs';
|
|
5
5
|
|
|
6
6
|
function startLanguageServer() {
|
|
7
7
|
const messageReader = new BrowserMessageReader(self);
|
package/dist/index.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
const lsp = require('langium/lsp');
|
|
4
4
|
const node$1 = require('langium/node');
|
|
5
5
|
const node = require('vscode-languageserver/node');
|
|
6
|
-
const module$1 = require('./shared/language-server.
|
|
6
|
+
const module$1 = require('./shared/language-server.Dym6GL4P.cjs');
|
|
7
7
|
|
|
8
8
|
function startLanguageServer() {
|
|
9
9
|
const connection = node.createConnection(node.ProposedFeatures.all);
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.CnkCWVtf.cjs';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.CnkCWVtf.cjs';
|
|
3
3
|
import * as vscode_languageserver_lib_common_inlineCompletion_proposed from 'vscode-languageserver/lib/common/inlineCompletion.proposed';
|
|
4
4
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
5
5
|
import 'langium';
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.DIaiY0-C.mjs';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.DIaiY0-C.mjs';
|
|
3
3
|
import * as vscode_languageserver_lib_common_inlineCompletion_proposed from 'vscode-languageserver/lib/common/inlineCompletion.proposed';
|
|
4
4
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
5
5
|
import 'langium';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.
|
|
2
|
-
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.
|
|
1
|
+
import { L as LikeC4SharedServices, a as LikeC4Services } from './shared/language-server.DwyQ1FtY.js';
|
|
2
|
+
export { f as FqnIndex, F as FqnIndexEntry, I as IsValidFn, k as LanguageServicesContext, j as LikeC4AddedServices, g as LikeC4ModelBuilder, h as LikeC4ModelLocator, i as LikeC4ModelParser, d as LikeC4Module, M as ModelParsedListener, e as computeDocumentFqn, c as createCustomLanguageServices, b as createLanguageServices, l as createSharedServices, m as lspLogger, s as setLogLevel } from './shared/language-server.DwyQ1FtY.js';
|
|
3
3
|
import * as vscode_languageserver_lib_common_inlineCompletion_proposed from 'vscode-languageserver/lib/common/inlineCompletion.proposed';
|
|
4
4
|
import * as vscode_languageserver from 'vscode-languageserver';
|
|
5
5
|
import 'langium';
|
package/dist/index.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { startLanguageServer as startLanguageServer$1 } from 'langium/lsp';
|
|
2
2
|
import { NodeFileSystem } from 'langium/node';
|
|
3
3
|
import { createConnection, ProposedFeatures } from 'vscode-languageserver/node';
|
|
4
|
-
import { c as createLanguageServices } from './shared/language-server.
|
|
5
|
-
export { L as LikeC4Module, a as createCustomLanguageServices, l as lspLogger, s as setLogLevel } from './shared/language-server.
|
|
4
|
+
import { c as createLanguageServices } from './shared/language-server.D_13fWJQ.mjs';
|
|
5
|
+
export { L as LikeC4Module, a as createCustomLanguageServices, l as lspLogger, s as setLogLevel } from './shared/language-server.D_13fWJQ.mjs';
|
|
6
6
|
|
|
7
7
|
function startLanguageServer() {
|
|
8
8
|
const connection = createConnection(ProposedFeatures.all);
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
1
|
+
import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
2
2
|
|
|
3
3
|
type Params = {
|
|
4
4
|
elements: Record<Fqn, Element>;
|
|
5
5
|
relations: Record<RelationID, Relation>;
|
|
6
|
+
globals?: ModelGlobals;
|
|
6
7
|
};
|
|
7
8
|
type RelationEdge = {
|
|
8
9
|
source: Element;
|
|
@@ -17,7 +18,8 @@ type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
|
|
|
17
18
|
*/
|
|
18
19
|
declare class LikeC4ModelGraph {
|
|
19
20
|
#private;
|
|
20
|
-
|
|
21
|
+
readonly globals: ModelGlobals;
|
|
22
|
+
constructor({ elements, relations, globals }: Params);
|
|
21
23
|
get rootElements(): Element[];
|
|
22
24
|
get elements(): Element[];
|
|
23
25
|
element(id: Fqn): Element;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
1
|
+
import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
2
2
|
|
|
3
3
|
type Params = {
|
|
4
4
|
elements: Record<Fqn, Element>;
|
|
5
5
|
relations: Record<RelationID, Relation>;
|
|
6
|
+
globals?: ModelGlobals;
|
|
6
7
|
};
|
|
7
8
|
type RelationEdge = {
|
|
8
9
|
source: Element;
|
|
@@ -17,7 +18,8 @@ type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
|
|
|
17
18
|
*/
|
|
18
19
|
declare class LikeC4ModelGraph {
|
|
19
20
|
#private;
|
|
20
|
-
|
|
21
|
+
readonly globals: ModelGlobals;
|
|
22
|
+
constructor({ elements, relations, globals }: Params);
|
|
21
23
|
get rootElements(): Element[];
|
|
22
24
|
get elements(): Element[];
|
|
23
25
|
element(id: Fqn): Element;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
1
|
+
import { ModelGlobals, Element, Fqn, Relation, RelationID, ElementView, ComputedElementView, DynamicView, ComputedDynamicView } from '@likec4/core';
|
|
2
2
|
|
|
3
3
|
type Params = {
|
|
4
4
|
elements: Record<Fqn, Element>;
|
|
5
5
|
relations: Record<RelationID, Relation>;
|
|
6
|
+
globals?: ModelGlobals;
|
|
6
7
|
};
|
|
7
8
|
type RelationEdge = {
|
|
8
9
|
source: Element;
|
|
@@ -17,7 +18,8 @@ type FqnsOrElements = ReadonlyArray<Fqn> | ReadonlyArray<Element>;
|
|
|
17
18
|
*/
|
|
18
19
|
declare class LikeC4ModelGraph {
|
|
19
20
|
#private;
|
|
20
|
-
|
|
21
|
+
readonly globals: ModelGlobals;
|
|
22
|
+
constructor({ elements, relations, globals }: Params);
|
|
21
23
|
get rootElements(): Element[];
|
|
22
24
|
get elements(): Element[];
|
|
23
25
|
element(id: Fqn): Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { L as LikeC4ModelGraph, b as computeDynamicView, c as computeElementView, a as computeView } from '../shared/language-server.
|
|
1
|
+
export { L as LikeC4ModelGraph, b as computeDynamicView, c as computeElementView, a as computeView } from '../shared/language-server.C5gxpVUH.mjs';
|