@likec4/language-server 0.57.1 → 0.58.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/dist/Rpc.js +9 -22
- package/dist/ast.d.ts +1 -0
- package/dist/ast.js +2 -2
- package/dist/browser/index.js +2 -2
- package/dist/generated/ast.d.ts +3 -3
- package/dist/generated/ast.js +322 -49
- package/dist/generated/grammar.d.ts +1 -1
- package/dist/generated/grammar.js +1 -1
- package/dist/generated/module.d.ts +4 -4
- package/dist/index.d.ts +2 -1
- package/dist/logger.js +4 -0
- package/dist/lsp/CodeLensProvider.d.ts +3 -2
- package/dist/lsp/CodeLensProvider.js +5 -1
- package/dist/lsp/DocumentHighlightProvider.d.ts +2 -1
- package/dist/lsp/DocumentHighlightProvider.js +1 -1
- package/dist/lsp/DocumentLinkProvider.d.ts +2 -1
- package/dist/lsp/DocumentLinkProvider.js +3 -3
- package/dist/lsp/DocumentSymbolProvider.d.ts +3 -2
- package/dist/lsp/DocumentSymbolProvider.js +6 -8
- package/dist/lsp/HoverProvider.d.ts +2 -1
- package/dist/lsp/HoverProvider.js +1 -1
- package/dist/lsp/SemanticTokenProvider.d.ts +2 -1
- package/dist/lsp/SemanticTokenProvider.js +1 -1
- package/dist/model/model-builder.d.ts +4 -4
- package/dist/model/model-builder.js +53 -43
- package/dist/model/model-locator.js +3 -1
- package/dist/model/model-parser.js +6 -3
- package/dist/module.d.ts +2 -1
- package/dist/module.js +3 -5
- package/dist/node/index.js +1 -1
- package/dist/references/scope-provider.js +9 -6
- package/dist/shared/NodeKindProvider.d.ts +3 -2
- package/dist/shared/WorkspaceSymbolProvider.d.ts +1 -1
- package/dist/shared/WorkspaceSymbolProvider.js +1 -1
- package/dist/test/testServices.d.ts +1 -0
- package/dist/test/testServices.js +39 -30
- package/dist/validation/element.js +14 -10
- package/dist/validation/index.js +16 -22
- package/dist/validation/specification.d.ts +1 -1
- package/dist/validation/specification.js +38 -9
- package/package.json +8 -8
package/dist/Rpc.js
CHANGED
|
@@ -30,30 +30,17 @@ export class Rpc {
|
|
|
30
30
|
}
|
|
31
31
|
)
|
|
32
32
|
);
|
|
33
|
-
connection.onRequest(fetchModel, async (
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
model = modelBuilder.buildModel() ?? null;
|
|
37
|
-
} catch (e) {
|
|
38
|
-
model = null;
|
|
39
|
-
logError(e);
|
|
40
|
-
}
|
|
41
|
-
return Promise.resolve({ model });
|
|
33
|
+
connection.onRequest(fetchModel, async (cancelToken) => {
|
|
34
|
+
const model = await modelBuilder.buildModel(cancelToken);
|
|
35
|
+
return { model };
|
|
42
36
|
});
|
|
43
|
-
connection.onRequest(fetchRawModel, async (
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
rawmodel = modelBuilder.buildRawModel() ?? null;
|
|
47
|
-
} catch (e) {
|
|
48
|
-
rawmodel = null;
|
|
49
|
-
logError(e);
|
|
50
|
-
}
|
|
51
|
-
return Promise.resolve({ rawmodel });
|
|
37
|
+
connection.onRequest(fetchRawModel, async (cancelToken) => {
|
|
38
|
+
const rawmodel = await modelBuilder.buildRawModel(cancelToken);
|
|
39
|
+
return { rawmodel };
|
|
52
40
|
});
|
|
53
|
-
connection.onRequest(computeView, async ({ viewId },
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
});
|
|
41
|
+
connection.onRequest(computeView, async ({ viewId }, cancelToken) => {
|
|
42
|
+
const view = await modelBuilder.computeView(viewId, cancelToken);
|
|
43
|
+
return { view };
|
|
57
44
|
});
|
|
58
45
|
connection.onRequest(buildDocuments, async ({ docs }, cancelToken) => {
|
|
59
46
|
const changed = docs.map((d) => URI.parse(d));
|
package/dist/ast.d.ts
CHANGED
package/dist/ast.js
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
nonexhaustive,
|
|
8
8
|
RelationRefError
|
|
9
9
|
} from "@likec4/core";
|
|
10
|
-
import {
|
|
10
|
+
import { AstUtils, DocumentState } from "langium";
|
|
11
11
|
import { isNil } from "remeda";
|
|
12
12
|
import { DiagnosticSeverity } from "vscode-languageserver-protocol";
|
|
13
13
|
import { elementRef } from "./elementRef.js";
|
|
@@ -77,7 +77,7 @@ export function checksFromDiagnostics(doc) {
|
|
|
77
77
|
const invalidNodes = new WeakSet(
|
|
78
78
|
doc.diagnostics?.flatMap((d) => {
|
|
79
79
|
if (d.severity === DiagnosticSeverity.Error) {
|
|
80
|
-
return getContainerOfType(d.node, isValidatableAstNode) ?? [];
|
|
80
|
+
return AstUtils.getContainerOfType(d.node, isValidatableAstNode) ?? [];
|
|
81
81
|
}
|
|
82
82
|
return [];
|
|
83
83
|
}) ?? []
|
package/dist/browser/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { startLanguageServer as startLanguim } from "langium/lsp";
|
|
2
2
|
import { BrowserMessageReader, BrowserMessageWriter, createConnection } from "vscode-languageserver/browser";
|
|
3
3
|
import { createLanguageServices } from "../module.js";
|
|
4
4
|
export function startLanguageServer() {
|
|
5
5
|
const messageReader = new BrowserMessageReader(self);
|
|
6
6
|
const messageWriter = new BrowserMessageWriter(self);
|
|
7
7
|
const connection = createConnection(messageReader, messageWriter);
|
|
8
|
-
const services = createLanguageServices({ connection
|
|
8
|
+
const services = createLanguageServices({ connection });
|
|
9
9
|
startLanguim(services.shared);
|
|
10
10
|
return {
|
|
11
11
|
...services,
|
package/dist/generated/ast.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
|
-
* This file was generated by langium-cli
|
|
2
|
+
* This file was generated by langium-cli 3.0.1.
|
|
3
3
|
* DO NOT EDIT MANUALLY!
|
|
4
4
|
******************************************************************************/
|
|
5
5
|
import type { AstNode, Reference, ReferenceInfo, TypeMetaData } from 'langium';
|
|
@@ -38,7 +38,7 @@ export declare function isLineOptions(item: unknown): item is LineOptions;
|
|
|
38
38
|
export type Relation = ExplicitRelation | ImplicitRelation;
|
|
39
39
|
export declare const Relation = "Relation";
|
|
40
40
|
export declare function isRelation(item: unknown): item is Relation;
|
|
41
|
-
export type RelationProperty = RelationStringProperty | RelationStyleProperty;
|
|
41
|
+
export type RelationProperty = LinkProperty | RelationStringProperty | RelationStyleProperty;
|
|
42
42
|
export declare const RelationProperty = "RelationProperty";
|
|
43
43
|
export declare function isRelationProperty(item: unknown): item is RelationProperty;
|
|
44
44
|
export type RelationshipStyleProperty = ArrowProperty | ColorProperty | LineProperty;
|
|
@@ -288,7 +288,7 @@ export interface LineProperty extends AstNode {
|
|
|
288
288
|
export declare const LineProperty = "LineProperty";
|
|
289
289
|
export declare function isLineProperty(item: unknown): item is LineProperty;
|
|
290
290
|
export interface LinkProperty extends AstNode {
|
|
291
|
-
readonly $container: ElementBody | ElementViewBody;
|
|
291
|
+
readonly $container: ElementBody | ElementViewBody | RelationBody;
|
|
292
292
|
readonly $type: 'LinkProperty';
|
|
293
293
|
key: 'link';
|
|
294
294
|
value: Uri;
|
package/dist/generated/ast.js
CHANGED
|
@@ -321,7 +321,7 @@ export class LikeC4AstReflection extends AbstractAstReflection {
|
|
|
321
321
|
return this.isSubtype(StyleProperty, supertype);
|
|
322
322
|
}
|
|
323
323
|
case LinkProperty: {
|
|
324
|
-
return this.isSubtype(ElementProperty, supertype) || this.isSubtype(ViewProperty, supertype);
|
|
324
|
+
return this.isSubtype(ElementProperty, supertype) || this.isSubtype(RelationProperty, supertype) || this.isSubtype(ViewProperty, supertype);
|
|
325
325
|
}
|
|
326
326
|
case RelationStringProperty:
|
|
327
327
|
case RelationStyleProperty: {
|
|
@@ -369,177 +369,450 @@ export class LikeC4AstReflection extends AbstractAstReflection {
|
|
|
369
369
|
}
|
|
370
370
|
getTypeMetaData(type) {
|
|
371
371
|
switch (type) {
|
|
372
|
+
case "ArrowProperty": {
|
|
373
|
+
return {
|
|
374
|
+
name: "ArrowProperty",
|
|
375
|
+
properties: [
|
|
376
|
+
{ name: "key" },
|
|
377
|
+
{ name: "value" }
|
|
378
|
+
]
|
|
379
|
+
};
|
|
380
|
+
}
|
|
381
|
+
case "ColorProperty": {
|
|
382
|
+
return {
|
|
383
|
+
name: "ColorProperty",
|
|
384
|
+
properties: [
|
|
385
|
+
{ name: "key" },
|
|
386
|
+
{ name: "value" }
|
|
387
|
+
]
|
|
388
|
+
};
|
|
389
|
+
}
|
|
390
|
+
case "CustomElementExpr": {
|
|
391
|
+
return {
|
|
392
|
+
name: "CustomElementExpr",
|
|
393
|
+
properties: [
|
|
394
|
+
{ name: "body" },
|
|
395
|
+
{ name: "target" }
|
|
396
|
+
]
|
|
397
|
+
};
|
|
398
|
+
}
|
|
372
399
|
case "CustomElementExprBody": {
|
|
373
400
|
return {
|
|
374
401
|
name: "CustomElementExprBody",
|
|
375
|
-
|
|
376
|
-
{ name: "props",
|
|
402
|
+
properties: [
|
|
403
|
+
{ name: "props", defaultValue: [] }
|
|
404
|
+
]
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
case "DescedantsExpr": {
|
|
408
|
+
return {
|
|
409
|
+
name: "DescedantsExpr",
|
|
410
|
+
properties: [
|
|
411
|
+
{ name: "parent" }
|
|
377
412
|
]
|
|
378
413
|
};
|
|
379
414
|
}
|
|
380
415
|
case "Element": {
|
|
381
416
|
return {
|
|
382
417
|
name: "Element",
|
|
383
|
-
|
|
384
|
-
{ name: "
|
|
418
|
+
properties: [
|
|
419
|
+
{ name: "body" },
|
|
420
|
+
{ name: "kind" },
|
|
421
|
+
{ name: "name" },
|
|
422
|
+
{ name: "props" }
|
|
385
423
|
]
|
|
386
424
|
};
|
|
387
425
|
}
|
|
388
426
|
case "ElementBody": {
|
|
389
427
|
return {
|
|
390
428
|
name: "ElementBody",
|
|
391
|
-
|
|
392
|
-
{ name: "elements",
|
|
393
|
-
{ name: "props",
|
|
429
|
+
properties: [
|
|
430
|
+
{ name: "elements", defaultValue: [] },
|
|
431
|
+
{ name: "props", defaultValue: [] },
|
|
432
|
+
{ name: "tags" }
|
|
433
|
+
]
|
|
434
|
+
};
|
|
435
|
+
}
|
|
436
|
+
case "ElementKind": {
|
|
437
|
+
return {
|
|
438
|
+
name: "ElementKind",
|
|
439
|
+
properties: [
|
|
440
|
+
{ name: "name" }
|
|
394
441
|
]
|
|
395
442
|
};
|
|
396
443
|
}
|
|
397
444
|
case "ElementKindExpr": {
|
|
398
445
|
return {
|
|
399
446
|
name: "ElementKindExpr",
|
|
400
|
-
|
|
401
|
-
{ name: "isEqual",
|
|
447
|
+
properties: [
|
|
448
|
+
{ name: "isEqual", defaultValue: false },
|
|
449
|
+
{ name: "kind" }
|
|
450
|
+
]
|
|
451
|
+
};
|
|
452
|
+
}
|
|
453
|
+
case "ElementRef": {
|
|
454
|
+
return {
|
|
455
|
+
name: "ElementRef",
|
|
456
|
+
properties: [
|
|
457
|
+
{ name: "el" },
|
|
458
|
+
{ name: "parent" }
|
|
459
|
+
]
|
|
460
|
+
};
|
|
461
|
+
}
|
|
462
|
+
case "ElementStringProperty": {
|
|
463
|
+
return {
|
|
464
|
+
name: "ElementStringProperty",
|
|
465
|
+
properties: [
|
|
466
|
+
{ name: "key" },
|
|
467
|
+
{ name: "value" }
|
|
402
468
|
]
|
|
403
469
|
};
|
|
404
470
|
}
|
|
405
471
|
case "ElementTagExpr": {
|
|
406
472
|
return {
|
|
407
473
|
name: "ElementTagExpr",
|
|
408
|
-
|
|
409
|
-
{ name: "isEqual",
|
|
474
|
+
properties: [
|
|
475
|
+
{ name: "isEqual", defaultValue: false },
|
|
476
|
+
{ name: "tag" }
|
|
477
|
+
]
|
|
478
|
+
};
|
|
479
|
+
}
|
|
480
|
+
case "ElementView": {
|
|
481
|
+
return {
|
|
482
|
+
name: "ElementView",
|
|
483
|
+
properties: [
|
|
484
|
+
{ name: "body" },
|
|
485
|
+
{ name: "extends" },
|
|
486
|
+
{ name: "name" },
|
|
487
|
+
{ name: "viewOf" }
|
|
410
488
|
]
|
|
411
489
|
};
|
|
412
490
|
}
|
|
413
491
|
case "ElementViewBody": {
|
|
414
492
|
return {
|
|
415
493
|
name: "ElementViewBody",
|
|
416
|
-
|
|
417
|
-
{ name: "props",
|
|
418
|
-
{ name: "rules",
|
|
494
|
+
properties: [
|
|
495
|
+
{ name: "props", defaultValue: [] },
|
|
496
|
+
{ name: "rules", defaultValue: [] },
|
|
497
|
+
{ name: "tags" }
|
|
498
|
+
]
|
|
499
|
+
};
|
|
500
|
+
}
|
|
501
|
+
case "ElementViewRef": {
|
|
502
|
+
return {
|
|
503
|
+
name: "ElementViewRef",
|
|
504
|
+
properties: [
|
|
505
|
+
{ name: "view" }
|
|
419
506
|
]
|
|
420
507
|
};
|
|
421
508
|
}
|
|
422
509
|
case "ExcludePredicate": {
|
|
423
510
|
return {
|
|
424
511
|
name: "ExcludePredicate",
|
|
425
|
-
|
|
426
|
-
{ name: "expressions",
|
|
512
|
+
properties: [
|
|
513
|
+
{ name: "expressions", defaultValue: [] }
|
|
514
|
+
]
|
|
515
|
+
};
|
|
516
|
+
}
|
|
517
|
+
case "ExplicitRelation": {
|
|
518
|
+
return {
|
|
519
|
+
name: "ExplicitRelation",
|
|
520
|
+
properties: [
|
|
521
|
+
{ name: "body" },
|
|
522
|
+
{ name: "kind" },
|
|
523
|
+
{ name: "source" },
|
|
524
|
+
{ name: "tags" },
|
|
525
|
+
{ name: "target" },
|
|
526
|
+
{ name: "title" }
|
|
527
|
+
]
|
|
528
|
+
};
|
|
529
|
+
}
|
|
530
|
+
case "ExtendElement": {
|
|
531
|
+
return {
|
|
532
|
+
name: "ExtendElement",
|
|
533
|
+
properties: [
|
|
534
|
+
{ name: "body" },
|
|
535
|
+
{ name: "element" }
|
|
427
536
|
]
|
|
428
537
|
};
|
|
429
538
|
}
|
|
430
539
|
case "ExtendElementBody": {
|
|
431
540
|
return {
|
|
432
541
|
name: "ExtendElementBody",
|
|
433
|
-
|
|
434
|
-
{ name: "elements",
|
|
542
|
+
properties: [
|
|
543
|
+
{ name: "elements", defaultValue: [] }
|
|
544
|
+
]
|
|
545
|
+
};
|
|
546
|
+
}
|
|
547
|
+
case "FqnElementRef": {
|
|
548
|
+
return {
|
|
549
|
+
name: "FqnElementRef",
|
|
550
|
+
properties: [
|
|
551
|
+
{ name: "el" },
|
|
552
|
+
{ name: "parent" }
|
|
553
|
+
]
|
|
554
|
+
};
|
|
555
|
+
}
|
|
556
|
+
case "IconProperty": {
|
|
557
|
+
return {
|
|
558
|
+
name: "IconProperty",
|
|
559
|
+
properties: [
|
|
560
|
+
{ name: "key" },
|
|
561
|
+
{ name: "value" }
|
|
562
|
+
]
|
|
563
|
+
};
|
|
564
|
+
}
|
|
565
|
+
case "ImplicitRelation": {
|
|
566
|
+
return {
|
|
567
|
+
name: "ImplicitRelation",
|
|
568
|
+
properties: [
|
|
569
|
+
{ name: "body" },
|
|
570
|
+
{ name: "kind" },
|
|
571
|
+
{ name: "tags" },
|
|
572
|
+
{ name: "target" },
|
|
573
|
+
{ name: "title" }
|
|
435
574
|
]
|
|
436
575
|
};
|
|
437
576
|
}
|
|
438
577
|
case "IncludePredicate": {
|
|
439
578
|
return {
|
|
440
579
|
name: "IncludePredicate",
|
|
441
|
-
|
|
442
|
-
{ name: "expressions",
|
|
580
|
+
properties: [
|
|
581
|
+
{ name: "expressions", defaultValue: [] }
|
|
582
|
+
]
|
|
583
|
+
};
|
|
584
|
+
}
|
|
585
|
+
case "IncomingExpr": {
|
|
586
|
+
return {
|
|
587
|
+
name: "IncomingExpr",
|
|
588
|
+
properties: [
|
|
589
|
+
{ name: "to" }
|
|
590
|
+
]
|
|
591
|
+
};
|
|
592
|
+
}
|
|
593
|
+
case "InOutExpr": {
|
|
594
|
+
return {
|
|
595
|
+
name: "InOutExpr",
|
|
596
|
+
properties: [
|
|
597
|
+
{ name: "inout" }
|
|
443
598
|
]
|
|
444
599
|
};
|
|
445
600
|
}
|
|
446
601
|
case "LikeC4Grammar": {
|
|
447
602
|
return {
|
|
448
603
|
name: "LikeC4Grammar",
|
|
449
|
-
|
|
450
|
-
{ name: "models",
|
|
451
|
-
{ name: "specifications",
|
|
452
|
-
{ name: "views",
|
|
604
|
+
properties: [
|
|
605
|
+
{ name: "models", defaultValue: [] },
|
|
606
|
+
{ name: "specifications", defaultValue: [] },
|
|
607
|
+
{ name: "views", defaultValue: [] }
|
|
608
|
+
]
|
|
609
|
+
};
|
|
610
|
+
}
|
|
611
|
+
case "LineProperty": {
|
|
612
|
+
return {
|
|
613
|
+
name: "LineProperty",
|
|
614
|
+
properties: [
|
|
615
|
+
{ name: "key" },
|
|
616
|
+
{ name: "value" }
|
|
617
|
+
]
|
|
618
|
+
};
|
|
619
|
+
}
|
|
620
|
+
case "LinkProperty": {
|
|
621
|
+
return {
|
|
622
|
+
name: "LinkProperty",
|
|
623
|
+
properties: [
|
|
624
|
+
{ name: "key" },
|
|
625
|
+
{ name: "value" }
|
|
453
626
|
]
|
|
454
627
|
};
|
|
455
628
|
}
|
|
456
629
|
case "Model": {
|
|
457
630
|
return {
|
|
458
631
|
name: "Model",
|
|
459
|
-
|
|
460
|
-
{ name: "elements",
|
|
632
|
+
properties: [
|
|
633
|
+
{ name: "elements", defaultValue: [] },
|
|
634
|
+
{ name: "name" }
|
|
461
635
|
]
|
|
462
636
|
};
|
|
463
637
|
}
|
|
464
638
|
case "ModelViews": {
|
|
465
639
|
return {
|
|
466
640
|
name: "ModelViews",
|
|
467
|
-
|
|
468
|
-
{ name: "
|
|
641
|
+
properties: [
|
|
642
|
+
{ name: "name" },
|
|
643
|
+
{ name: "views", defaultValue: [] }
|
|
644
|
+
]
|
|
645
|
+
};
|
|
646
|
+
}
|
|
647
|
+
case "NavigateToProperty": {
|
|
648
|
+
return {
|
|
649
|
+
name: "NavigateToProperty",
|
|
650
|
+
properties: [
|
|
651
|
+
{ name: "value" }
|
|
652
|
+
]
|
|
653
|
+
};
|
|
654
|
+
}
|
|
655
|
+
case "OutgoingExpr": {
|
|
656
|
+
return {
|
|
657
|
+
name: "OutgoingExpr",
|
|
658
|
+
properties: [
|
|
659
|
+
{ name: "from" }
|
|
469
660
|
]
|
|
470
661
|
};
|
|
471
662
|
}
|
|
472
663
|
case "RelationBody": {
|
|
473
664
|
return {
|
|
474
665
|
name: "RelationBody",
|
|
475
|
-
|
|
476
|
-
{ name: "props",
|
|
666
|
+
properties: [
|
|
667
|
+
{ name: "props", defaultValue: [] },
|
|
668
|
+
{ name: "tags" }
|
|
669
|
+
]
|
|
670
|
+
};
|
|
671
|
+
}
|
|
672
|
+
case "RelationExpr": {
|
|
673
|
+
return {
|
|
674
|
+
name: "RelationExpr",
|
|
675
|
+
properties: [
|
|
676
|
+
{ name: "source" },
|
|
677
|
+
{ name: "target" }
|
|
678
|
+
]
|
|
679
|
+
};
|
|
680
|
+
}
|
|
681
|
+
case "RelationshipKind": {
|
|
682
|
+
return {
|
|
683
|
+
name: "RelationshipKind",
|
|
684
|
+
properties: [
|
|
685
|
+
{ name: "name" }
|
|
686
|
+
]
|
|
687
|
+
};
|
|
688
|
+
}
|
|
689
|
+
case "RelationStringProperty": {
|
|
690
|
+
return {
|
|
691
|
+
name: "RelationStringProperty",
|
|
692
|
+
properties: [
|
|
693
|
+
{ name: "key" },
|
|
694
|
+
{ name: "value" }
|
|
477
695
|
]
|
|
478
696
|
};
|
|
479
697
|
}
|
|
480
698
|
case "RelationStyleProperty": {
|
|
481
699
|
return {
|
|
482
700
|
name: "RelationStyleProperty",
|
|
483
|
-
|
|
484
|
-
{ name: "
|
|
701
|
+
properties: [
|
|
702
|
+
{ name: "key" },
|
|
703
|
+
{ name: "props", defaultValue: [] }
|
|
704
|
+
]
|
|
705
|
+
};
|
|
706
|
+
}
|
|
707
|
+
case "ShapeProperty": {
|
|
708
|
+
return {
|
|
709
|
+
name: "ShapeProperty",
|
|
710
|
+
properties: [
|
|
711
|
+
{ name: "key" },
|
|
712
|
+
{ name: "value" }
|
|
713
|
+
]
|
|
714
|
+
};
|
|
715
|
+
}
|
|
716
|
+
case "SpecificationElementKind": {
|
|
717
|
+
return {
|
|
718
|
+
name: "SpecificationElementKind",
|
|
719
|
+
properties: [
|
|
720
|
+
{ name: "kind" },
|
|
721
|
+
{ name: "style" }
|
|
485
722
|
]
|
|
486
723
|
};
|
|
487
724
|
}
|
|
488
725
|
case "SpecificationRelationshipKind": {
|
|
489
726
|
return {
|
|
490
727
|
name: "SpecificationRelationshipKind",
|
|
491
|
-
|
|
492
|
-
{ name: "
|
|
728
|
+
properties: [
|
|
729
|
+
{ name: "kind" },
|
|
730
|
+
{ name: "props", defaultValue: [] }
|
|
493
731
|
]
|
|
494
732
|
};
|
|
495
733
|
}
|
|
496
734
|
case "SpecificationRule": {
|
|
497
735
|
return {
|
|
498
736
|
name: "SpecificationRule",
|
|
499
|
-
|
|
500
|
-
{ name: "elements",
|
|
501
|
-
{ name: "
|
|
502
|
-
{ name: "
|
|
737
|
+
properties: [
|
|
738
|
+
{ name: "elements", defaultValue: [] },
|
|
739
|
+
{ name: "name" },
|
|
740
|
+
{ name: "relationships", defaultValue: [] },
|
|
741
|
+
{ name: "tags", defaultValue: [] }
|
|
742
|
+
]
|
|
743
|
+
};
|
|
744
|
+
}
|
|
745
|
+
case "SpecificationTag": {
|
|
746
|
+
return {
|
|
747
|
+
name: "SpecificationTag",
|
|
748
|
+
properties: [
|
|
749
|
+
{ name: "tag" }
|
|
503
750
|
]
|
|
504
751
|
};
|
|
505
752
|
}
|
|
506
753
|
case "StyleProperties": {
|
|
507
754
|
return {
|
|
508
755
|
name: "StyleProperties",
|
|
509
|
-
|
|
510
|
-
{ name: "
|
|
756
|
+
properties: [
|
|
757
|
+
{ name: "key" },
|
|
758
|
+
{ name: "props", defaultValue: [] }
|
|
759
|
+
]
|
|
760
|
+
};
|
|
761
|
+
}
|
|
762
|
+
case "Tag": {
|
|
763
|
+
return {
|
|
764
|
+
name: "Tag",
|
|
765
|
+
properties: [
|
|
766
|
+
{ name: "name" }
|
|
511
767
|
]
|
|
512
768
|
};
|
|
513
769
|
}
|
|
514
770
|
case "Tags": {
|
|
515
771
|
return {
|
|
516
772
|
name: "Tags",
|
|
517
|
-
|
|
518
|
-
{ name: "value",
|
|
773
|
+
properties: [
|
|
774
|
+
{ name: "value", defaultValue: [] }
|
|
775
|
+
]
|
|
776
|
+
};
|
|
777
|
+
}
|
|
778
|
+
case "ViewRuleAutoLayout": {
|
|
779
|
+
return {
|
|
780
|
+
name: "ViewRuleAutoLayout",
|
|
781
|
+
properties: [
|
|
782
|
+
{ name: "direction" }
|
|
519
783
|
]
|
|
520
784
|
};
|
|
521
785
|
}
|
|
522
786
|
case "ViewRuleStyle": {
|
|
523
787
|
return {
|
|
524
788
|
name: "ViewRuleStyle",
|
|
525
|
-
|
|
526
|
-
{ name: "styleprops",
|
|
527
|
-
{ name: "targets",
|
|
789
|
+
properties: [
|
|
790
|
+
{ name: "styleprops", defaultValue: [] },
|
|
791
|
+
{ name: "targets", defaultValue: [] }
|
|
792
|
+
]
|
|
793
|
+
};
|
|
794
|
+
}
|
|
795
|
+
case "ViewStringProperty": {
|
|
796
|
+
return {
|
|
797
|
+
name: "ViewStringProperty",
|
|
798
|
+
properties: [
|
|
799
|
+
{ name: "key" },
|
|
800
|
+
{ name: "value" }
|
|
528
801
|
]
|
|
529
802
|
};
|
|
530
803
|
}
|
|
531
804
|
case "WildcardExpr": {
|
|
532
805
|
return {
|
|
533
806
|
name: "WildcardExpr",
|
|
534
|
-
|
|
535
|
-
{ name: "isWildcard",
|
|
807
|
+
properties: [
|
|
808
|
+
{ name: "isWildcard", defaultValue: false }
|
|
536
809
|
]
|
|
537
810
|
};
|
|
538
811
|
}
|
|
539
812
|
default: {
|
|
540
813
|
return {
|
|
541
814
|
name: type,
|
|
542
|
-
|
|
815
|
+
properties: []
|
|
543
816
|
};
|
|
544
817
|
}
|
|
545
818
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
|
-
* This file was generated by langium-cli
|
|
2
|
+
* This file was generated by langium-cli 3.0.1.
|
|
3
3
|
* DO NOT EDIT MANUALLY!
|
|
4
4
|
******************************************************************************/
|
|
5
5
|
import type { Grammar } from 'langium';
|