@likec4/language-server 1.32.1 → 1.33.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/ast.d.ts +6 -5
- package/dist/ast.js +3 -0
- package/dist/bundled.mjs +3347 -2559
- package/dist/config/schema.d.ts +2 -2
- package/dist/config/schema.js +8 -11
- package/dist/formatting/LikeC4Formatter.js +2 -2
- package/dist/generated/ast.d.ts +22 -11
- package/dist/generated/ast.js +19 -5
- package/dist/generated/grammar.js +1 -1
- package/dist/lsp/SemanticTokenProvider.js +1 -1
- package/dist/mcp/LikeC4MCPServerFactory.d.ts +4 -0
- package/dist/mcp/LikeC4MCPServerFactory.js +6 -0
- package/dist/mcp/LikeC4MCPTools.js +5 -2
- package/dist/mcp/sseserver/MCPServer.d.ts +4 -2
- package/dist/mcp/sseserver/MCPServer.js +12 -6
- package/dist/mcp/sseserver/with-mcp-server.js +22 -6
- package/dist/model/builder/MergedSpecification.js +8 -4
- package/dist/model/index.d.ts +1 -0
- package/dist/model/index.js +1 -0
- package/dist/model/model-builder.js +20 -19
- package/dist/model/model-parser.d.ts +126 -0
- package/dist/model/parser/Base.d.ts +30 -2
- package/dist/model/parser/Base.js +54 -3
- package/dist/model/parser/DeploymentModelParser.d.ts +14 -0
- package/dist/model/parser/DeploymentModelParser.js +28 -23
- package/dist/model/parser/DeploymentViewParser.d.ts +14 -0
- package/dist/model/parser/DeploymentViewParser.js +15 -6
- package/dist/model/parser/FqnRefParser.d.ts +14 -0
- package/dist/model/parser/FqnRefParser.js +8 -6
- package/dist/model/parser/GlobalsParser.d.ts +14 -0
- package/dist/model/parser/ImportsParser.d.ts +14 -0
- package/dist/model/parser/ModelParser.d.ts +14 -0
- package/dist/model/parser/ModelParser.js +27 -17
- package/dist/model/parser/PredicatesParser.d.ts +14 -0
- package/dist/model/parser/SpecificationParser.d.ts +14 -0
- package/dist/model/parser/SpecificationParser.js +16 -11
- package/dist/model/parser/ValueConverter.d.ts +4 -0
- package/dist/model/parser/ValueConverter.js +12 -0
- package/dist/model/parser/ViewsParser.d.ts +14 -0
- package/dist/model/parser/ViewsParser.js +21 -7
- package/dist/module.d.ts +6 -3
- package/dist/module.js +9 -5
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.js +19 -0
- package/dist/views/configurable-layouter.d.ts +2 -2
- package/dist/views/configurable-layouter.js +23 -27
- package/dist/views/likec4-views.d.ts +2 -3
- package/dist/views/likec4-views.js +28 -50
- package/dist/workspace/ProjectsManager.d.ts +0 -1
- package/dist/workspace/ProjectsManager.js +15 -4
- package/package.json +24 -23
package/dist/config/schema.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
2
|
export declare const ProjectConfig: v.ObjectSchema<{
|
|
3
|
-
readonly name: v.SchemaWithPipe<readonly [v.
|
|
4
|
-
readonly contactPerson: v.OptionalSchema<v.SchemaWithPipe<readonly [v.
|
|
3
|
+
readonly name: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, "Project name cannot be empty">, v.ExcludesAction<string, "default", "Project name cannot be \"default\"">, v.ExcludesAction<string, ".", "Project name cannot contain \".\", try to use A-z, 0-9, _ and -">, v.ExcludesAction<string, "@", "Project name cannot contain \"@\", try to use A-z, 0-9, _ and -">, v.ExcludesAction<string, "#", "Project name cannot contain \"#\", try to use A-z, 0-9, _ and -">, v.DescriptionAction<string, "Project name, must be unique in the workspace">]>;
|
|
4
|
+
readonly contactPerson: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, "Contact person cannot be empty if specified">, v.DescriptionAction<string, "A person who has been involved in creating or maintaining this project">]>, undefined>;
|
|
5
5
|
readonly exclude: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.DescriptionAction<string[], "List of file patterns to exclude from the project, default is [\"**/node_modules/**/*\"]">]>, undefined>;
|
|
6
6
|
}, undefined>;
|
|
7
7
|
export type ProjectConfig = v.InferOutput<typeof ProjectConfig>;
|
package/dist/config/schema.js
CHANGED
|
@@ -1,25 +1,22 @@
|
|
|
1
1
|
import JSON5 from "json5";
|
|
2
2
|
import * as v from "valibot";
|
|
3
|
-
const nonEmptyString = v.pipe(v.string(), v.nonEmpty());
|
|
4
3
|
export const ProjectConfig = v.object({
|
|
5
4
|
name: v.pipe(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
v.string(),
|
|
6
|
+
v.nonEmpty("Project name cannot be empty"),
|
|
7
|
+
v.excludes("default", 'Project name cannot be "default"'),
|
|
8
|
+
v.excludes(".", 'Project name cannot contain ".", try to use A-z, 0-9, _ and -'),
|
|
9
|
+
v.excludes("@", 'Project name cannot contain "@", try to use A-z, 0-9, _ and -'),
|
|
10
|
+
v.excludes("#", 'Project name cannot contain "#", try to use A-z, 0-9, _ and -'),
|
|
9
11
|
v.description("Project name, must be unique in the workspace")
|
|
10
12
|
),
|
|
11
13
|
contactPerson: v.optional(
|
|
12
14
|
v.pipe(
|
|
13
|
-
|
|
15
|
+
v.string(),
|
|
16
|
+
v.nonEmpty("Contact person cannot be empty if specified"),
|
|
14
17
|
v.description("A person who has been involved in creating or maintaining this project")
|
|
15
18
|
)
|
|
16
19
|
),
|
|
17
|
-
// imports: v.optional(
|
|
18
|
-
// v.pipe(
|
|
19
|
-
// v.record(v.string(), nonEmptyString),
|
|
20
|
-
// v.description('Imported projects'),
|
|
21
|
-
// ),
|
|
22
|
-
// ),
|
|
23
20
|
exclude: v.optional(
|
|
24
21
|
v.pipe(
|
|
25
22
|
v.array(v.string()),
|
|
@@ -79,7 +79,7 @@ export class LikeC4Formatter extends AbstractFormatter {
|
|
|
79
79
|
n.target,
|
|
80
80
|
n.tags
|
|
81
81
|
], isTruthy)).prepend(FormattingOptions.oneSpace);
|
|
82
|
-
f.properties("title", "technology").prepend(FormattingOptions.oneSpace);
|
|
82
|
+
f.properties("title", "description", "technology").prepend(FormattingOptions.oneSpace);
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
85
|
formatExtendDeployment(node) {
|
|
@@ -100,7 +100,7 @@ export class LikeC4Formatter extends AbstractFormatter {
|
|
|
100
100
|
n.target,
|
|
101
101
|
n.tags
|
|
102
102
|
], isTruthy)).prepend(FormattingOptions.oneSpace);
|
|
103
|
-
f.properties("title", "technology").prepend(FormattingOptions.oneSpace);
|
|
103
|
+
f.properties("title", "description", "technology").prepend(FormattingOptions.oneSpace);
|
|
104
104
|
}
|
|
105
105
|
);
|
|
106
106
|
this.on(node, ast.isDynamicViewStep, (n, f) => {
|
package/dist/generated/ast.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export declare const LikeC4Terminals: {
|
|
|
8
8
|
LINE_COMMENT: RegExp;
|
|
9
9
|
WS: RegExp;
|
|
10
10
|
NL: RegExp;
|
|
11
|
+
BOOLEAN: RegExp;
|
|
11
12
|
LIB_ICON: RegExp;
|
|
12
13
|
URI_WITH_SCHEMA: RegExp;
|
|
13
14
|
URI_RELATIVE: RegExp;
|
|
@@ -19,6 +20,7 @@ export declare const LikeC4Terminals: {
|
|
|
19
20
|
NotEqual: RegExp;
|
|
20
21
|
Eq: RegExp;
|
|
21
22
|
Percent: RegExp;
|
|
23
|
+
MarkdownString: RegExp;
|
|
22
24
|
String: RegExp;
|
|
23
25
|
Float: RegExp;
|
|
24
26
|
Number: RegExp;
|
|
@@ -26,12 +28,10 @@ export declare const LikeC4Terminals: {
|
|
|
26
28
|
IdTerminal: RegExp;
|
|
27
29
|
};
|
|
28
30
|
export type LikeC4TerminalNames = keyof typeof LikeC4Terminals;
|
|
29
|
-
export type LikeC4KeywordNames = "(" | ")" | "*" | "," | "->" | "-[" | ":" | ";" | "<-" | "<->" | "BottomTop" | "LeftRight" | "RightLeft" | "TopBottom" | "]->" | "amber" | "and" | "autoLayout" | "blue" | "border" | "browser" | "color" | "crow" | "cylinder" | "dashed" | "deployment" | "deploymentNode" | "description" | "diamond" | "dot" | "dotted" | "dynamic" | "dynamicPredicateGroup" | "element" | "element.kind" | "element.tag" | "exclude" | "extend" | "extends" | "
|
|
31
|
+
export type LikeC4KeywordNames = "(" | ")" | "*" | "," | "->" | "-[" | ":" | ";" | "<-" | "<->" | "BottomTop" | "LeftRight" | "RightLeft" | "TopBottom" | "]->" | "amber" | "and" | "autoLayout" | "blue" | "border" | "browser" | "color" | "crow" | "cylinder" | "dashed" | "deployment" | "deploymentNode" | "description" | "diamond" | "dot" | "dotted" | "dynamic" | "dynamicPredicateGroup" | "element" | "element.kind" | "element.tag" | "exclude" | "extend" | "extends" | "from" | "global" | "gray" | "green" | "group" | "head" | "icon" | "icons" | "import" | "include" | "indigo" | "instance" | "instanceOf" | "is" | "kind" | "large" | "lg" | "likec4lib" | "line" | "link" | "md" | "medium" | "metadata" | "mobile" | "model" | "multiple" | "muted" | "navigateTo" | "node" | "none" | "normal" | "not" | "notation" | "notes" | "odiamond" | "odot" | "of" | "onormal" | "opacity" | "open" | "or" | "padding" | "par" | "parallel" | "person" | "predicate" | "predicateGroup" | "primary" | "queue" | "rectangle" | "red" | "relationship" | "rgb" | "rgba" | "secondary" | "shape" | "size" | "sky" | "slate" | "sm" | "small" | "solid" | "source" | "specification" | "storage" | "style" | "styleGroup" | "tag" | "tail" | "target" | "technology" | "textSize" | "title" | "vee" | "view" | "views" | "where" | "with" | "xl" | "xlarge" | "xs" | "xsmall" | "{" | "}";
|
|
30
32
|
export type LikeC4TokenNames = LikeC4TerminalNames | LikeC4KeywordNames;
|
|
31
33
|
export type ArrowType = 'crow' | 'diamond' | 'dot' | 'none' | 'normal' | 'odiamond' | 'odot' | 'onormal' | 'open' | 'vee';
|
|
32
34
|
export declare function isArrowType(item: unknown): item is ArrowType;
|
|
33
|
-
export type Boolean = boolean;
|
|
34
|
-
export declare function isBoolean(item: unknown): item is Boolean;
|
|
35
35
|
export type BorderStyleValue = 'none' | LineOptions;
|
|
36
36
|
export declare function isBorderStyleValue(item: unknown): item is BorderStyleValue;
|
|
37
37
|
export type ColorLiteral = HexColor | RGBAColor;
|
|
@@ -251,6 +251,7 @@ export interface DeploymentRelation extends langium.AstNode {
|
|
|
251
251
|
readonly $container: DeployedInstanceBody | DeploymentNodeBody | ExtendDeploymentBody | ModelDeployments;
|
|
252
252
|
readonly $type: 'DeploymentRelation';
|
|
253
253
|
body?: DeploymentRelationBody;
|
|
254
|
+
description?: string;
|
|
254
255
|
dotKind?: RelationKindDotRef;
|
|
255
256
|
kind?: langium.Reference<RelationshipKind>;
|
|
256
257
|
source?: FqnRef;
|
|
@@ -414,7 +415,7 @@ export interface ElementStringProperty extends langium.AstNode {
|
|
|
414
415
|
readonly $container: CustomElementProperties | DeployedInstanceBody | DeploymentNodeBody | ElementBody;
|
|
415
416
|
readonly $type: 'ElementStringProperty';
|
|
416
417
|
key: 'description' | 'technology' | 'title';
|
|
417
|
-
value:
|
|
418
|
+
value: MarkdownOrString;
|
|
418
419
|
}
|
|
419
420
|
export declare const ElementStringProperty = "ElementStringProperty";
|
|
420
421
|
export declare function isElementStringProperty(item: unknown): item is ElementStringProperty;
|
|
@@ -680,11 +681,19 @@ export interface LinkProperty extends langium.AstNode {
|
|
|
680
681
|
}
|
|
681
682
|
export declare const LinkProperty = "LinkProperty";
|
|
682
683
|
export declare function isLinkProperty(item: unknown): item is LinkProperty;
|
|
684
|
+
export interface MarkdownOrString extends langium.AstNode {
|
|
685
|
+
readonly $container: ElementStringProperty | MetadataAttribute | NotationProperty | NotesProperty | RelationStringProperty | SpecificationRelationshipStringProperty | ViewStringProperty;
|
|
686
|
+
readonly $type: 'MarkdownOrString';
|
|
687
|
+
markdown?: string;
|
|
688
|
+
text?: string;
|
|
689
|
+
}
|
|
690
|
+
export declare const MarkdownOrString = "MarkdownOrString";
|
|
691
|
+
export declare function isMarkdownOrString(item: unknown): item is MarkdownOrString;
|
|
683
692
|
export interface MetadataAttribute extends langium.AstNode {
|
|
684
693
|
readonly $container: MetadataBody;
|
|
685
694
|
readonly $type: 'MetadataAttribute';
|
|
686
695
|
key: string;
|
|
687
|
-
value:
|
|
696
|
+
value: MarkdownOrString;
|
|
688
697
|
}
|
|
689
698
|
export declare const MetadataAttribute = "MetadataAttribute";
|
|
690
699
|
export declare function isMetadataAttribute(item: unknown): item is MetadataAttribute;
|
|
@@ -724,7 +733,7 @@ export interface MultipleProperty extends langium.AstNode {
|
|
|
724
733
|
readonly $container: CustomElementProperties | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | ViewRuleStyle;
|
|
725
734
|
readonly $type: 'MultipleProperty';
|
|
726
735
|
key: 'multiple';
|
|
727
|
-
value:
|
|
736
|
+
value: boolean;
|
|
728
737
|
}
|
|
729
738
|
export declare const MultipleProperty = "MultipleProperty";
|
|
730
739
|
export declare function isMultipleProperty(item: unknown): item is MultipleProperty;
|
|
@@ -740,7 +749,7 @@ export interface NotationProperty extends langium.AstNode {
|
|
|
740
749
|
readonly $container: CustomElementProperties | CustomRelationProperties | DeploymentViewRuleStyle | GlobalStyle | ViewRuleStyle;
|
|
741
750
|
readonly $type: 'NotationProperty';
|
|
742
751
|
key: 'notation';
|
|
743
|
-
value:
|
|
752
|
+
value: MarkdownOrString;
|
|
744
753
|
}
|
|
745
754
|
export declare const NotationProperty = "NotationProperty";
|
|
746
755
|
export declare function isNotationProperty(item: unknown): item is NotationProperty;
|
|
@@ -748,7 +757,7 @@ export interface NotesProperty extends langium.AstNode {
|
|
|
748
757
|
readonly $container: CustomRelationProperties;
|
|
749
758
|
readonly $type: 'NotesProperty';
|
|
750
759
|
key: 'notes';
|
|
751
|
-
value:
|
|
760
|
+
value: MarkdownOrString;
|
|
752
761
|
}
|
|
753
762
|
export declare const NotesProperty = "NotesProperty";
|
|
754
763
|
export declare function isNotesProperty(item: unknown): item is NotesProperty;
|
|
@@ -782,6 +791,7 @@ export interface Relation extends langium.AstNode {
|
|
|
782
791
|
readonly $container: ElementBody | ExtendElementBody | Model;
|
|
783
792
|
readonly $type: 'Relation';
|
|
784
793
|
body?: RelationBody;
|
|
794
|
+
description?: string;
|
|
785
795
|
dotKind?: RelationKindDotRef;
|
|
786
796
|
kind?: langium.Reference<RelationshipKind>;
|
|
787
797
|
source?: FqnRef;
|
|
@@ -842,7 +852,7 @@ export interface RelationStringProperty extends langium.AstNode {
|
|
|
842
852
|
readonly $container: CustomRelationProperties | DeploymentRelationBody | RelationBody;
|
|
843
853
|
readonly $type: 'RelationStringProperty';
|
|
844
854
|
key: 'description' | 'technology' | 'title';
|
|
845
|
-
value:
|
|
855
|
+
value: MarkdownOrString;
|
|
846
856
|
}
|
|
847
857
|
export declare const RelationStringProperty = "RelationStringProperty";
|
|
848
858
|
export declare function isRelationStringProperty(item: unknown): item is RelationStringProperty;
|
|
@@ -926,7 +936,7 @@ export interface SpecificationRelationshipStringProperty extends langium.AstNode
|
|
|
926
936
|
readonly $container: SpecificationRelationshipKind;
|
|
927
937
|
readonly $type: 'SpecificationRelationshipStringProperty';
|
|
928
938
|
key: 'notation' | 'technology';
|
|
929
|
-
value:
|
|
939
|
+
value: MarkdownOrString;
|
|
930
940
|
}
|
|
931
941
|
export declare const SpecificationRelationshipStringProperty = "SpecificationRelationshipStringProperty";
|
|
932
942
|
export declare function isSpecificationRelationshipStringProperty(item: unknown): item is SpecificationRelationshipStringProperty;
|
|
@@ -1055,7 +1065,7 @@ export interface ViewStringProperty extends langium.AstNode {
|
|
|
1055
1065
|
readonly $container: DeploymentViewBody | DynamicViewBody | ElementViewBody;
|
|
1056
1066
|
readonly $type: 'ViewStringProperty';
|
|
1057
1067
|
key: 'description' | 'title';
|
|
1058
|
-
value:
|
|
1068
|
+
value: MarkdownOrString;
|
|
1059
1069
|
}
|
|
1060
1070
|
export declare const ViewStringProperty = "ViewStringProperty";
|
|
1061
1071
|
export declare function isViewStringProperty(item: unknown): item is ViewStringProperty;
|
|
@@ -1222,6 +1232,7 @@ export type LikeC4AstType = {
|
|
|
1222
1232
|
LikeC4View: LikeC4View;
|
|
1223
1233
|
LineProperty: LineProperty;
|
|
1224
1234
|
LinkProperty: LinkProperty;
|
|
1235
|
+
MarkdownOrString: MarkdownOrString;
|
|
1225
1236
|
MetadataAttribute: MetadataAttribute;
|
|
1226
1237
|
MetadataBody: MetadataBody;
|
|
1227
1238
|
MetadataProperty: MetadataProperty;
|
package/dist/generated/ast.js
CHANGED
|
@@ -4,6 +4,7 @@ export const LikeC4Terminals = {
|
|
|
4
4
|
LINE_COMMENT: /\/\/[^\n\r]*/,
|
|
5
5
|
WS: /[\t ]+/,
|
|
6
6
|
NL: /[\r\n]+/,
|
|
7
|
+
BOOLEAN: /true|false/,
|
|
7
8
|
LIB_ICON: /(aws|azure|gcp|tech):[-\w]*/,
|
|
8
9
|
URI_WITH_SCHEMA: /\w+:\/{2}\S+/,
|
|
9
10
|
URI_RELATIVE: /\.{0,2}\/[^\/]\S+/,
|
|
@@ -15,6 +16,7 @@ export const LikeC4Terminals = {
|
|
|
15
16
|
NotEqual: /\!\={1,2}/,
|
|
16
17
|
Eq: /\={1,2}/,
|
|
17
18
|
Percent: /\b\d+%/,
|
|
19
|
+
MarkdownString: /(('''([\s\S]*?'''))|("""([\s\S]*?""")))/,
|
|
18
20
|
String: /"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'/,
|
|
19
21
|
Float: /\b\d+\.\d+\b/,
|
|
20
22
|
Number: /\b\d+\b/,
|
|
@@ -24,9 +26,6 @@ export const LikeC4Terminals = {
|
|
|
24
26
|
export function isArrowType(item) {
|
|
25
27
|
return item === "none" || item === "normal" || item === "onormal" || item === "dot" || item === "odot" || item === "diamond" || item === "odiamond" || item === "crow" || item === "open" || item === "vee";
|
|
26
28
|
}
|
|
27
|
-
export function isBoolean(item) {
|
|
28
|
-
return typeof item === "boolean";
|
|
29
|
-
}
|
|
30
29
|
export function isBorderStyleValue(item) {
|
|
31
30
|
return isLineOptions(item) || item === "none";
|
|
32
31
|
}
|
|
@@ -448,6 +447,10 @@ export const LinkProperty = "LinkProperty";
|
|
|
448
447
|
export function isLinkProperty(item) {
|
|
449
448
|
return reflection.isInstance(item, LinkProperty);
|
|
450
449
|
}
|
|
450
|
+
export const MarkdownOrString = "MarkdownOrString";
|
|
451
|
+
export function isMarkdownOrString(item) {
|
|
452
|
+
return reflection.isInstance(item, MarkdownOrString);
|
|
453
|
+
}
|
|
451
454
|
export const MetadataAttribute = "MetadataAttribute";
|
|
452
455
|
export function isMetadataAttribute(item) {
|
|
453
456
|
return reflection.isInstance(item, MetadataAttribute);
|
|
@@ -674,7 +677,7 @@ export function isWildcardExpression(item) {
|
|
|
674
677
|
}
|
|
675
678
|
export class LikeC4AstReflection extends langium.AbstractAstReflection {
|
|
676
679
|
getAllTypes() {
|
|
677
|
-
return [ArrowProperty, BorderProperty, ColorLiteral, ColorProperty, CustomColor, CustomElementProperties, CustomRelationProperties, DeployedInstance, DeployedInstanceBody, DeploymentElement, DeploymentNode, DeploymentNodeBody, DeploymentNodeKind, DeploymentNodeOrElementKind, DeploymentRelation, DeploymentRelationBody, DeploymentView, DeploymentViewBody, DeploymentViewRule, DeploymentViewRulePredicate, DeploymentViewRuleStyle, DirectedRelationExpr, DynamicView, DynamicViewBody, DynamicViewGlobalPredicateRef, DynamicViewIncludePredicate, DynamicViewParallelSteps, DynamicViewRef, DynamicViewRule, DynamicViewStep, Element, ElementBody, ElementKind, ElementKindExpression, ElementProperty, ElementRef, ElementStringProperty, ElementStyleProperty, ElementTagExpression, ElementView, ElementViewBody, ElementViewRef, ExpressionV2, Expressions, ExtendDeployment, ExtendDeploymentBody, ExtendElement, ExtendElementBody, ExtendElementProperty, FqnExpr, FqnExprOrWhere, FqnExprOrWith, FqnExprWhere, FqnExprWith, FqnExpressions, FqnRef, FqnRefExpr, FqnReferenceable, GlobalDynamicPredicateGroup, GlobalPredicateGroup, GlobalStyle, GlobalStyleGroup, GlobalStyleId, Globals, HexColor, IconProperty, Imported, ImportsFromPoject, InOutRelationExpr, IncomingRelationExpr, LibIcon, LikeC4Grammar, LikeC4Lib, LikeC4View, LineProperty, LinkProperty, MetadataAttribute, MetadataBody, MetadataProperty, Model, ModelDeployments, ModelReferenceable, ModelViews, MultipleProperty, NavigateToProperty, NotationProperty, NotesProperty, OpacityProperty, OutgoingRelationExpr, PaddingSizeProperty, RGBAColor, Referenceable, Relation, RelationBody, RelationExpr, RelationExprOrWhere, RelationExprOrWith, RelationExprWhere, RelationExprWith, RelationKindDotRef, RelationNavigateToProperty, RelationProperty, RelationStringProperty, RelationStyleProperty, RelationshipKind, RelationshipStyleProperty, ShapeProperty, ShapeSizeProperty, SizeProperty, SpecificationColor, SpecificationDeploymentNodeKind, SpecificationElementKind, SpecificationElementStringProperty, SpecificationRelationshipKind, SpecificationRelationshipStringProperty, SpecificationRule, SpecificationTag, StrictFqnElementRef, StrictFqnRef, StringProperty, StyleProperty, Tag, TagRef, Tags, TextSizeProperty, ViewProperty, ViewRef, ViewRule, ViewRuleAutoLayout, ViewRuleGlobalPredicateRef, ViewRuleGlobalStyle, ViewRuleGroup, ViewRulePredicate, ViewRuleStyle, ViewRuleStyleOrGlobalRef, ViewStringProperty, WhereBinaryExpression, WhereElement, WhereElementExpression, WhereElementKind, WhereElementNegation, WhereElementTag, WhereExpression, WhereKindEqual, WhereRelation, WhereRelationExpression, WhereRelationKind, WhereRelationNegation, WhereRelationParticipantKind, WhereRelationParticipantTag, WhereRelationTag, WhereTagEqual, WildcardExpression];
|
|
680
|
+
return [ArrowProperty, BorderProperty, ColorLiteral, ColorProperty, CustomColor, CustomElementProperties, CustomRelationProperties, DeployedInstance, DeployedInstanceBody, DeploymentElement, DeploymentNode, DeploymentNodeBody, DeploymentNodeKind, DeploymentNodeOrElementKind, DeploymentRelation, DeploymentRelationBody, DeploymentView, DeploymentViewBody, DeploymentViewRule, DeploymentViewRulePredicate, DeploymentViewRuleStyle, DirectedRelationExpr, DynamicView, DynamicViewBody, DynamicViewGlobalPredicateRef, DynamicViewIncludePredicate, DynamicViewParallelSteps, DynamicViewRef, DynamicViewRule, DynamicViewStep, Element, ElementBody, ElementKind, ElementKindExpression, ElementProperty, ElementRef, ElementStringProperty, ElementStyleProperty, ElementTagExpression, ElementView, ElementViewBody, ElementViewRef, ExpressionV2, Expressions, ExtendDeployment, ExtendDeploymentBody, ExtendElement, ExtendElementBody, ExtendElementProperty, FqnExpr, FqnExprOrWhere, FqnExprOrWith, FqnExprWhere, FqnExprWith, FqnExpressions, FqnRef, FqnRefExpr, FqnReferenceable, GlobalDynamicPredicateGroup, GlobalPredicateGroup, GlobalStyle, GlobalStyleGroup, GlobalStyleId, Globals, HexColor, IconProperty, Imported, ImportsFromPoject, InOutRelationExpr, IncomingRelationExpr, LibIcon, LikeC4Grammar, LikeC4Lib, LikeC4View, LineProperty, LinkProperty, MarkdownOrString, MetadataAttribute, MetadataBody, MetadataProperty, Model, ModelDeployments, ModelReferenceable, ModelViews, MultipleProperty, NavigateToProperty, NotationProperty, NotesProperty, OpacityProperty, OutgoingRelationExpr, PaddingSizeProperty, RGBAColor, Referenceable, Relation, RelationBody, RelationExpr, RelationExprOrWhere, RelationExprOrWith, RelationExprWhere, RelationExprWith, RelationKindDotRef, RelationNavigateToProperty, RelationProperty, RelationStringProperty, RelationStyleProperty, RelationshipKind, RelationshipStyleProperty, ShapeProperty, ShapeSizeProperty, SizeProperty, SpecificationColor, SpecificationDeploymentNodeKind, SpecificationElementKind, SpecificationElementStringProperty, SpecificationRelationshipKind, SpecificationRelationshipStringProperty, SpecificationRule, SpecificationTag, StrictFqnElementRef, StrictFqnRef, StringProperty, StyleProperty, Tag, TagRef, Tags, TextSizeProperty, ViewProperty, ViewRef, ViewRule, ViewRuleAutoLayout, ViewRuleGlobalPredicateRef, ViewRuleGlobalStyle, ViewRuleGroup, ViewRulePredicate, ViewRuleStyle, ViewRuleStyleOrGlobalRef, ViewStringProperty, WhereBinaryExpression, WhereElement, WhereElementExpression, WhereElementKind, WhereElementNegation, WhereElementTag, WhereExpression, WhereKindEqual, WhereRelation, WhereRelationExpression, WhereRelationKind, WhereRelationNegation, WhereRelationParticipantKind, WhereRelationParticipantTag, WhereRelationTag, WhereTagEqual, WildcardExpression];
|
|
678
681
|
}
|
|
679
682
|
computeIsSubtype(subtype, supertype) {
|
|
680
683
|
switch (subtype) {
|
|
@@ -1019,6 +1022,7 @@ export class LikeC4AstReflection extends langium.AbstractAstReflection {
|
|
|
1019
1022
|
name: DeploymentRelation,
|
|
1020
1023
|
properties: [
|
|
1021
1024
|
{ name: "body" },
|
|
1025
|
+
{ name: "description" },
|
|
1022
1026
|
{ name: "dotKind" },
|
|
1023
1027
|
{ name: "kind" },
|
|
1024
1028
|
{ name: "source" },
|
|
@@ -1500,6 +1504,15 @@ export class LikeC4AstReflection extends langium.AbstractAstReflection {
|
|
|
1500
1504
|
]
|
|
1501
1505
|
};
|
|
1502
1506
|
}
|
|
1507
|
+
case MarkdownOrString: {
|
|
1508
|
+
return {
|
|
1509
|
+
name: MarkdownOrString,
|
|
1510
|
+
properties: [
|
|
1511
|
+
{ name: "markdown" },
|
|
1512
|
+
{ name: "text" }
|
|
1513
|
+
]
|
|
1514
|
+
};
|
|
1515
|
+
}
|
|
1503
1516
|
case MetadataAttribute: {
|
|
1504
1517
|
return {
|
|
1505
1518
|
name: MetadataAttribute,
|
|
@@ -1550,7 +1563,7 @@ export class LikeC4AstReflection extends langium.AbstractAstReflection {
|
|
|
1550
1563
|
name: MultipleProperty,
|
|
1551
1564
|
properties: [
|
|
1552
1565
|
{ name: "key" },
|
|
1553
|
-
{ name: "value" }
|
|
1566
|
+
{ name: "value", defaultValue: false }
|
|
1554
1567
|
]
|
|
1555
1568
|
};
|
|
1556
1569
|
}
|
|
@@ -1615,6 +1628,7 @@ export class LikeC4AstReflection extends langium.AbstractAstReflection {
|
|
|
1615
1628
|
name: Relation,
|
|
1616
1629
|
properties: [
|
|
1617
1630
|
{ name: "body" },
|
|
1631
|
+
{ name: "description" },
|
|
1618
1632
|
{ name: "dotKind" },
|
|
1619
1633
|
{ name: "kind" },
|
|
1620
1634
|
{ name: "source" },
|