@fornari-lanza/domain-design-language-language 0.0.1
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/README.md +24 -0
- package/out/domain-design-language-formatter.d.ts +5 -0
- package/out/domain-design-language-formatter.js +197 -0
- package/out/domain-design-language-formatter.js.map +1 -0
- package/out/domain-design-language-module.d.ts +41 -0
- package/out/domain-design-language-module.js +50 -0
- package/out/domain-design-language-module.js.map +1 -0
- package/out/domain-design-language-scope.d.ts +8 -0
- package/out/domain-design-language-scope.js +79 -0
- package/out/domain-design-language-scope.js.map +1 -0
- package/out/domain-design-language-validator.d.ts +39 -0
- package/out/domain-design-language-validator.js +468 -0
- package/out/domain-design-language-validator.js.map +1 -0
- package/out/generated/ast.d.ts +1393 -0
- package/out/generated/ast.js +1147 -0
- package/out/generated/ast.js.map +1 -0
- package/out/generated/grammar.d.ts +6 -0
- package/out/generated/grammar.js +3430 -0
- package/out/generated/grammar.js.map +1 -0
- package/out/generated/module.d.ts +13 -0
- package/out/generated/module.js +21 -0
- package/out/generated/module.js.map +1 -0
- package/out/index.d.ts +5 -0
- package/out/index.js +6 -0
- package/out/index.js.map +1 -0
- package/package.json +49 -0
- package/src/domain-design-language-formatter.ts +186 -0
- package/src/domain-design-language-module.ts +96 -0
- package/src/domain-design-language-scope.ts +132 -0
- package/src/domain-design-language-validator.ts +699 -0
- package/src/domain-design-language.langium +299 -0
- package/src/generated/ast.ts +1737 -0
- package/src/generated/grammar.ts +3432 -0
- package/src/generated/module.ts +25 -0
- package/src/index.ts +5 -0
|
@@ -0,0 +1,1737 @@
|
|
|
1
|
+
/******************************************************************************
|
|
2
|
+
* This file was generated by langium-cli 4.0.0.
|
|
3
|
+
* DO NOT EDIT MANUALLY!
|
|
4
|
+
******************************************************************************/
|
|
5
|
+
|
|
6
|
+
/* eslint-disable */
|
|
7
|
+
import * as langium from 'langium';
|
|
8
|
+
|
|
9
|
+
export const DomainDesignLanguageTerminals = {
|
|
10
|
+
WS: /\s+/,
|
|
11
|
+
ID: /[_a-zA-Z][\w_]*/,
|
|
12
|
+
STRING: /"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,
|
|
13
|
+
ML_COMMENT: /\/\*[\s\S]*?\*\//,
|
|
14
|
+
SL_COMMENT: /\/\/[^\n\r]*/,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export type DomainDesignLanguageTerminalNames = keyof typeof DomainDesignLanguageTerminals;
|
|
18
|
+
|
|
19
|
+
export type DomainDesignLanguageKeywordNames =
|
|
20
|
+
| "("
|
|
21
|
+
| ")"
|
|
22
|
+
| ","
|
|
23
|
+
| "."
|
|
24
|
+
| ":"
|
|
25
|
+
| "Actor"
|
|
26
|
+
| "AggregateRoot"
|
|
27
|
+
| "AntiCorruptionLayer"
|
|
28
|
+
| "BoundedContext"
|
|
29
|
+
| "Command"
|
|
30
|
+
| "Conformist"
|
|
31
|
+
| "ContextMap"
|
|
32
|
+
| "Customer/Supplier"
|
|
33
|
+
| "DomainEvents"
|
|
34
|
+
| "DomainExceptions"
|
|
35
|
+
| "DomainService"
|
|
36
|
+
| "Entity"
|
|
37
|
+
| "Enum"
|
|
38
|
+
| "EventStorming"
|
|
39
|
+
| "ExternalSystem"
|
|
40
|
+
| "Methods"
|
|
41
|
+
| "OpenHostService"
|
|
42
|
+
| "Partnership"
|
|
43
|
+
| "Policy"
|
|
44
|
+
| "Port"
|
|
45
|
+
| "ProcessFlow"
|
|
46
|
+
| "PublishedLanguage"
|
|
47
|
+
| "ReadModel"
|
|
48
|
+
| "Relationship"
|
|
49
|
+
| "SharedKernel"
|
|
50
|
+
| "UID"
|
|
51
|
+
| "UbiquitousLanguage"
|
|
52
|
+
| "ValueObject"
|
|
53
|
+
| "["
|
|
54
|
+
| "]"
|
|
55
|
+
| "aliases:"
|
|
56
|
+
| "and"
|
|
57
|
+
| "between"
|
|
58
|
+
| "boolean"
|
|
59
|
+
| "calculation"
|
|
60
|
+
| "contract"
|
|
61
|
+
| "coordination"
|
|
62
|
+
| "correctivePolicies:"
|
|
63
|
+
| "date"
|
|
64
|
+
| "definition:"
|
|
65
|
+
| "dependencies:"
|
|
66
|
+
| "downstream:"
|
|
67
|
+
| "emits"
|
|
68
|
+
| "enforcedInvariants:"
|
|
69
|
+
| "given"
|
|
70
|
+
| "hotspot"
|
|
71
|
+
| "input:"
|
|
72
|
+
| "invokes"
|
|
73
|
+
| "issues"
|
|
74
|
+
| "many"
|
|
75
|
+
| "number"
|
|
76
|
+
| "on"
|
|
77
|
+
| "optional"
|
|
78
|
+
| "payload:"
|
|
79
|
+
| "projects"
|
|
80
|
+
| "response:"
|
|
81
|
+
| "string"
|
|
82
|
+
| "then"
|
|
83
|
+
| "to"
|
|
84
|
+
| "triggers"
|
|
85
|
+
| "type:"
|
|
86
|
+
| "upstream:"
|
|
87
|
+
| "uses"
|
|
88
|
+
| "views"
|
|
89
|
+
| "{"
|
|
90
|
+
| "}";
|
|
91
|
+
|
|
92
|
+
export type DomainDesignLanguageTokenNames = DomainDesignLanguageTerminalNames | DomainDesignLanguageKeywordNames;
|
|
93
|
+
|
|
94
|
+
export interface Actor extends langium.AstNode {
|
|
95
|
+
readonly $container: EventStormingDeclaration;
|
|
96
|
+
readonly $type: 'Actor';
|
|
97
|
+
description?: string;
|
|
98
|
+
name: string;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export const Actor = {
|
|
102
|
+
$type: 'Actor',
|
|
103
|
+
description: 'description',
|
|
104
|
+
name: 'name'
|
|
105
|
+
} as const;
|
|
106
|
+
|
|
107
|
+
export function isActor(item: unknown): item is Actor {
|
|
108
|
+
return reflection.isInstance(item, Actor.$type);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export interface ActorCommandStep extends langium.AstNode {
|
|
112
|
+
readonly $container: ProcessFlow;
|
|
113
|
+
readonly $type: 'ActorCommandStep';
|
|
114
|
+
command: langium.Reference<Command>;
|
|
115
|
+
issuer: langium.Reference<Actor>;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export const ActorCommandStep = {
|
|
119
|
+
$type: 'ActorCommandStep',
|
|
120
|
+
command: 'command',
|
|
121
|
+
issuer: 'issuer'
|
|
122
|
+
} as const;
|
|
123
|
+
|
|
124
|
+
export function isActorCommandStep(item: unknown): item is ActorCommandStep {
|
|
125
|
+
return reflection.isInstance(item, ActorCommandStep.$type);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export interface AggregateAttribute extends langium.AstNode {
|
|
129
|
+
readonly $container: AggregateRoot;
|
|
130
|
+
readonly $type: 'AggregateAttribute';
|
|
131
|
+
many: boolean;
|
|
132
|
+
optional: boolean;
|
|
133
|
+
type: Entity | Reference | ValueObject;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export const AggregateAttribute = {
|
|
137
|
+
$type: 'AggregateAttribute',
|
|
138
|
+
many: 'many',
|
|
139
|
+
optional: 'optional',
|
|
140
|
+
type: 'type'
|
|
141
|
+
} as const;
|
|
142
|
+
|
|
143
|
+
export function isAggregateAttribute(item: unknown): item is AggregateAttribute {
|
|
144
|
+
return reflection.isInstance(item, AggregateAttribute.$type);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export interface AggregateRoot extends langium.AstNode {
|
|
148
|
+
readonly $container: BoundedContext;
|
|
149
|
+
readonly $type: 'AggregateRoot';
|
|
150
|
+
attributes: Array<AggregateAttribute>;
|
|
151
|
+
correctivePolicies: Array<string>;
|
|
152
|
+
description: string;
|
|
153
|
+
enforcedInvariants: Array<string>;
|
|
154
|
+
events?: DomainEventsDeclaration;
|
|
155
|
+
exceptions?: ExceptionsDeclaration;
|
|
156
|
+
id: UID;
|
|
157
|
+
methods?: MethodsDeclaration;
|
|
158
|
+
name: string;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export const AggregateRoot = {
|
|
162
|
+
$type: 'AggregateRoot',
|
|
163
|
+
attributes: 'attributes',
|
|
164
|
+
correctivePolicies: 'correctivePolicies',
|
|
165
|
+
description: 'description',
|
|
166
|
+
enforcedInvariants: 'enforcedInvariants',
|
|
167
|
+
events: 'events',
|
|
168
|
+
exceptions: 'exceptions',
|
|
169
|
+
id: 'id',
|
|
170
|
+
methods: 'methods',
|
|
171
|
+
name: 'name'
|
|
172
|
+
} as const;
|
|
173
|
+
|
|
174
|
+
export function isAggregateRoot(item: unknown): item is AggregateRoot {
|
|
175
|
+
return reflection.isInstance(item, AggregateRoot.$type);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export interface AsymmetricRelationship extends langium.AstNode {
|
|
179
|
+
readonly $container: ContextMap;
|
|
180
|
+
readonly $type: 'AsymmetricRelationship';
|
|
181
|
+
customerSupplier: boolean;
|
|
182
|
+
description?: string;
|
|
183
|
+
downstream: langium.Reference<BoundedContext>;
|
|
184
|
+
downstreamRole?: DownstreamRole;
|
|
185
|
+
upstream: langium.Reference<BoundedContext>;
|
|
186
|
+
upstreamRoles: Array<UpstreamRole>;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export const AsymmetricRelationship = {
|
|
190
|
+
$type: 'AsymmetricRelationship',
|
|
191
|
+
customerSupplier: 'customerSupplier',
|
|
192
|
+
description: 'description',
|
|
193
|
+
downstream: 'downstream',
|
|
194
|
+
downstreamRole: 'downstreamRole',
|
|
195
|
+
upstream: 'upstream',
|
|
196
|
+
upstreamRoles: 'upstreamRoles'
|
|
197
|
+
} as const;
|
|
198
|
+
|
|
199
|
+
export function isAsymmetricRelationship(item: unknown): item is AsymmetricRelationship {
|
|
200
|
+
return reflection.isInstance(item, AsymmetricRelationship.$type);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
export interface BoundedContext extends langium.AstNode {
|
|
204
|
+
readonly $container: DomainModel;
|
|
205
|
+
readonly $type: 'BoundedContext';
|
|
206
|
+
aggregates: Array<AggregateRoot>;
|
|
207
|
+
commands: Array<Command>;
|
|
208
|
+
description: string;
|
|
209
|
+
domainServices: Array<DomainService>;
|
|
210
|
+
eventStorming?: EventStormingDeclaration;
|
|
211
|
+
name: string;
|
|
212
|
+
ports: Array<Port>;
|
|
213
|
+
ubiquitousLanguage: UbiquitousLanguageDeclaration;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
export const BoundedContext = {
|
|
217
|
+
$type: 'BoundedContext',
|
|
218
|
+
aggregates: 'aggregates',
|
|
219
|
+
commands: 'commands',
|
|
220
|
+
description: 'description',
|
|
221
|
+
domainServices: 'domainServices',
|
|
222
|
+
eventStorming: 'eventStorming',
|
|
223
|
+
name: 'name',
|
|
224
|
+
ports: 'ports',
|
|
225
|
+
ubiquitousLanguage: 'ubiquitousLanguage'
|
|
226
|
+
} as const;
|
|
227
|
+
|
|
228
|
+
export function isBoundedContext(item: unknown): item is BoundedContext {
|
|
229
|
+
return reflection.isInstance(item, BoundedContext.$type);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
export interface Command extends langium.AstNode {
|
|
233
|
+
readonly $container: BoundedContext;
|
|
234
|
+
readonly $type: 'Command';
|
|
235
|
+
aggregate: langium.Reference<AggregateRoot>;
|
|
236
|
+
dependencies: Array<Dependency>;
|
|
237
|
+
description?: string;
|
|
238
|
+
domainServices: Array<langium.Reference<DomainService>>;
|
|
239
|
+
events: Array<langium.Reference<DomainEvent>>;
|
|
240
|
+
input?: InputDTO;
|
|
241
|
+
name: string;
|
|
242
|
+
response?: ResponseDTO;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
export const Command = {
|
|
246
|
+
$type: 'Command',
|
|
247
|
+
aggregate: 'aggregate',
|
|
248
|
+
dependencies: 'dependencies',
|
|
249
|
+
description: 'description',
|
|
250
|
+
domainServices: 'domainServices',
|
|
251
|
+
events: 'events',
|
|
252
|
+
input: 'input',
|
|
253
|
+
name: 'name',
|
|
254
|
+
response: 'response'
|
|
255
|
+
} as const;
|
|
256
|
+
|
|
257
|
+
export function isCommand(item: unknown): item is Command {
|
|
258
|
+
return reflection.isInstance(item, Command.$type);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
export interface ContextMap extends langium.AstNode {
|
|
262
|
+
readonly $container: DomainModel;
|
|
263
|
+
readonly $type: 'ContextMap';
|
|
264
|
+
relationships: Array<Relationship>;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export const ContextMap = {
|
|
268
|
+
$type: 'ContextMap',
|
|
269
|
+
relationships: 'relationships'
|
|
270
|
+
} as const;
|
|
271
|
+
|
|
272
|
+
export function isContextMap(item: unknown): item is ContextMap {
|
|
273
|
+
return reflection.isInstance(item, ContextMap.$type);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
export interface Dependency extends langium.AstNode {
|
|
277
|
+
readonly $container: Command;
|
|
278
|
+
readonly $type: 'Dependency';
|
|
279
|
+
port: langium.Reference<Port>;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
export const Dependency = {
|
|
283
|
+
$type: 'Dependency',
|
|
284
|
+
port: 'port'
|
|
285
|
+
} as const;
|
|
286
|
+
|
|
287
|
+
export function isDependency(item: unknown): item is Dependency {
|
|
288
|
+
return reflection.isInstance(item, Dependency.$type);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
export interface DomainAttribute extends langium.AstNode {
|
|
292
|
+
readonly $container: DomainServiceInput | DomainServiceResponse | MethodInput;
|
|
293
|
+
readonly $type: 'DomainAttribute';
|
|
294
|
+
many: boolean;
|
|
295
|
+
name: string;
|
|
296
|
+
optional: boolean;
|
|
297
|
+
type: langium.Reference<DomainObject>;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
export const DomainAttribute = {
|
|
301
|
+
$type: 'DomainAttribute',
|
|
302
|
+
many: 'many',
|
|
303
|
+
name: 'name',
|
|
304
|
+
optional: 'optional',
|
|
305
|
+
type: 'type'
|
|
306
|
+
} as const;
|
|
307
|
+
|
|
308
|
+
export function isDomainAttribute(item: unknown): item is DomainAttribute {
|
|
309
|
+
return reflection.isInstance(item, DomainAttribute.$type);
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
export interface DomainEvent extends langium.AstNode {
|
|
313
|
+
readonly $container: DomainEventsDeclaration;
|
|
314
|
+
readonly $type: 'DomainEvent';
|
|
315
|
+
description?: string;
|
|
316
|
+
name: string;
|
|
317
|
+
payload?: Payload;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
export const DomainEvent = {
|
|
321
|
+
$type: 'DomainEvent',
|
|
322
|
+
description: 'description',
|
|
323
|
+
name: 'name',
|
|
324
|
+
payload: 'payload'
|
|
325
|
+
} as const;
|
|
326
|
+
|
|
327
|
+
export function isDomainEvent(item: unknown): item is DomainEvent {
|
|
328
|
+
return reflection.isInstance(item, DomainEvent.$type);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
export interface DomainEventsDeclaration extends langium.AstNode {
|
|
332
|
+
readonly $container: AggregateRoot;
|
|
333
|
+
readonly $type: 'DomainEventsDeclaration';
|
|
334
|
+
events: Array<DomainEvent>;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
export const DomainEventsDeclaration = {
|
|
338
|
+
$type: 'DomainEventsDeclaration',
|
|
339
|
+
events: 'events'
|
|
340
|
+
} as const;
|
|
341
|
+
|
|
342
|
+
export function isDomainEventsDeclaration(item: unknown): item is DomainEventsDeclaration {
|
|
343
|
+
return reflection.isInstance(item, DomainEventsDeclaration.$type);
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
export interface DomainException extends langium.AstNode {
|
|
347
|
+
readonly $container: ExceptionsDeclaration;
|
|
348
|
+
readonly $type: 'DomainException';
|
|
349
|
+
description?: string;
|
|
350
|
+
name: string;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
export const DomainException = {
|
|
354
|
+
$type: 'DomainException',
|
|
355
|
+
description: 'description',
|
|
356
|
+
name: 'name'
|
|
357
|
+
} as const;
|
|
358
|
+
|
|
359
|
+
export function isDomainException(item: unknown): item is DomainException {
|
|
360
|
+
return reflection.isInstance(item, DomainException.$type);
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
export interface DomainModel extends langium.AstNode {
|
|
364
|
+
readonly $type: 'DomainModel';
|
|
365
|
+
boundedContext?: BoundedContext;
|
|
366
|
+
contextMap?: ContextMap;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export const DomainModel = {
|
|
370
|
+
$type: 'DomainModel',
|
|
371
|
+
boundedContext: 'boundedContext',
|
|
372
|
+
contextMap: 'contextMap'
|
|
373
|
+
} as const;
|
|
374
|
+
|
|
375
|
+
export function isDomainModel(item: unknown): item is DomainModel {
|
|
376
|
+
return reflection.isInstance(item, DomainModel.$type);
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
export type DomainObject = AggregateRoot | Entity | ValueObject;
|
|
380
|
+
|
|
381
|
+
export const DomainObject = {
|
|
382
|
+
$type: 'DomainObject'
|
|
383
|
+
} as const;
|
|
384
|
+
|
|
385
|
+
export function isDomainObject(item: unknown): item is DomainObject {
|
|
386
|
+
return reflection.isInstance(item, DomainObject.$type);
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
export interface DomainService extends langium.AstNode {
|
|
390
|
+
readonly $container: BoundedContext;
|
|
391
|
+
readonly $type: 'DomainService';
|
|
392
|
+
description: string;
|
|
393
|
+
input?: DomainServiceInput;
|
|
394
|
+
name: string;
|
|
395
|
+
response?: DomainServiceResponse;
|
|
396
|
+
type: 'calculation' | 'contract' | 'coordination';
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
export const DomainService = {
|
|
400
|
+
$type: 'DomainService',
|
|
401
|
+
description: 'description',
|
|
402
|
+
input: 'input',
|
|
403
|
+
name: 'name',
|
|
404
|
+
response: 'response',
|
|
405
|
+
type: 'type'
|
|
406
|
+
} as const;
|
|
407
|
+
|
|
408
|
+
export function isDomainService(item: unknown): item is DomainService {
|
|
409
|
+
return reflection.isInstance(item, DomainService.$type);
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
export interface DomainServiceInput extends langium.AstNode {
|
|
413
|
+
readonly $container: DomainService;
|
|
414
|
+
readonly $type: 'DomainServiceInput';
|
|
415
|
+
attributes: Array<DomainAttribute>;
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
export const DomainServiceInput = {
|
|
419
|
+
$type: 'DomainServiceInput',
|
|
420
|
+
attributes: 'attributes'
|
|
421
|
+
} as const;
|
|
422
|
+
|
|
423
|
+
export function isDomainServiceInput(item: unknown): item is DomainServiceInput {
|
|
424
|
+
return reflection.isInstance(item, DomainServiceInput.$type);
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
export interface DomainServiceResponse extends langium.AstNode {
|
|
428
|
+
readonly $container: DomainService;
|
|
429
|
+
readonly $type: 'DomainServiceResponse';
|
|
430
|
+
attributes: Array<DomainAttribute | PrimitiveAttribute>;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
export const DomainServiceResponse = {
|
|
434
|
+
$type: 'DomainServiceResponse',
|
|
435
|
+
attributes: 'attributes'
|
|
436
|
+
} as const;
|
|
437
|
+
|
|
438
|
+
export function isDomainServiceResponse(item: unknown): item is DomainServiceResponse {
|
|
439
|
+
return reflection.isInstance(item, DomainServiceResponse.$type);
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
export type DownstreamRole = 'AntiCorruptionLayer' | 'Conformist';
|
|
443
|
+
|
|
444
|
+
export function isDownstreamRole(item: unknown): item is DownstreamRole {
|
|
445
|
+
return item === 'AntiCorruptionLayer' || item === 'Conformist';
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
export interface Entity extends langium.AstNode {
|
|
449
|
+
readonly $container: AggregateAttribute;
|
|
450
|
+
readonly $type: 'Entity';
|
|
451
|
+
attributes: Array<EntityAttribute>;
|
|
452
|
+
description: string;
|
|
453
|
+
id: UID;
|
|
454
|
+
name: string;
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
export const Entity = {
|
|
458
|
+
$type: 'Entity',
|
|
459
|
+
attributes: 'attributes',
|
|
460
|
+
description: 'description',
|
|
461
|
+
id: 'id',
|
|
462
|
+
name: 'name'
|
|
463
|
+
} as const;
|
|
464
|
+
|
|
465
|
+
export function isEntity(item: unknown): item is Entity {
|
|
466
|
+
return reflection.isInstance(item, Entity.$type);
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
export interface EntityAttribute extends langium.AstNode {
|
|
470
|
+
readonly $container: Entity;
|
|
471
|
+
readonly $type: 'EntityAttribute';
|
|
472
|
+
many: boolean;
|
|
473
|
+
optional: boolean;
|
|
474
|
+
type: Reference | ValueObject;
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
export const EntityAttribute = {
|
|
478
|
+
$type: 'EntityAttribute',
|
|
479
|
+
many: 'many',
|
|
480
|
+
optional: 'optional',
|
|
481
|
+
type: 'type'
|
|
482
|
+
} as const;
|
|
483
|
+
|
|
484
|
+
export function isEntityAttribute(item: unknown): item is EntityAttribute {
|
|
485
|
+
return reflection.isInstance(item, EntityAttribute.$type);
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
export interface Enum extends langium.AstNode {
|
|
489
|
+
readonly $container: PrimitiveAttribute;
|
|
490
|
+
readonly $type: 'Enum';
|
|
491
|
+
values: Array<string>;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
export const Enum = {
|
|
495
|
+
$type: 'Enum',
|
|
496
|
+
values: 'values'
|
|
497
|
+
} as const;
|
|
498
|
+
|
|
499
|
+
export function isEnum(item: unknown): item is Enum {
|
|
500
|
+
return reflection.isInstance(item, Enum.$type);
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
export interface EventStormingDeclaration extends langium.AstNode {
|
|
504
|
+
readonly $container: BoundedContext;
|
|
505
|
+
readonly $type: 'EventStormingDeclaration';
|
|
506
|
+
elements: Array<EventStormingElement>;
|
|
507
|
+
flows: Array<ProcessFlow>;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
export const EventStormingDeclaration = {
|
|
511
|
+
$type: 'EventStormingDeclaration',
|
|
512
|
+
elements: 'elements',
|
|
513
|
+
flows: 'flows'
|
|
514
|
+
} as const;
|
|
515
|
+
|
|
516
|
+
export function isEventStormingDeclaration(item: unknown): item is EventStormingDeclaration {
|
|
517
|
+
return reflection.isInstance(item, EventStormingDeclaration.$type);
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
export type EventStormingElement = Actor | ExternalSystem | ReadModel;
|
|
521
|
+
|
|
522
|
+
export const EventStormingElement = {
|
|
523
|
+
$type: 'EventStormingElement'
|
|
524
|
+
} as const;
|
|
525
|
+
|
|
526
|
+
export function isEventStormingElement(item: unknown): item is EventStormingElement {
|
|
527
|
+
return reflection.isInstance(item, EventStormingElement.$type);
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
export interface ExceptionsDeclaration extends langium.AstNode {
|
|
531
|
+
readonly $container: AggregateRoot;
|
|
532
|
+
readonly $type: 'ExceptionsDeclaration';
|
|
533
|
+
exceptions: Array<DomainException>;
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
export const ExceptionsDeclaration = {
|
|
537
|
+
$type: 'ExceptionsDeclaration',
|
|
538
|
+
exceptions: 'exceptions'
|
|
539
|
+
} as const;
|
|
540
|
+
|
|
541
|
+
export function isExceptionsDeclaration(item: unknown): item is ExceptionsDeclaration {
|
|
542
|
+
return reflection.isInstance(item, ExceptionsDeclaration.$type);
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
export interface ExternalSystem extends langium.AstNode {
|
|
546
|
+
readonly $container: EventStormingDeclaration;
|
|
547
|
+
readonly $type: 'ExternalSystem';
|
|
548
|
+
description?: string;
|
|
549
|
+
name: string;
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
export const ExternalSystem = {
|
|
553
|
+
$type: 'ExternalSystem',
|
|
554
|
+
description: 'description',
|
|
555
|
+
name: 'name'
|
|
556
|
+
} as const;
|
|
557
|
+
|
|
558
|
+
export function isExternalSystem(item: unknown): item is ExternalSystem {
|
|
559
|
+
return reflection.isInstance(item, ExternalSystem.$type);
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
export interface GivenStep extends langium.AstNode {
|
|
563
|
+
readonly $container: ProcessFlow;
|
|
564
|
+
readonly $type: 'GivenStep';
|
|
565
|
+
actor: langium.Reference<Actor>;
|
|
566
|
+
readModel: langium.Reference<ReadModel>;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
export const GivenStep = {
|
|
570
|
+
$type: 'GivenStep',
|
|
571
|
+
actor: 'actor',
|
|
572
|
+
readModel: 'readModel'
|
|
573
|
+
} as const;
|
|
574
|
+
|
|
575
|
+
export function isGivenStep(item: unknown): item is GivenStep {
|
|
576
|
+
return reflection.isInstance(item, GivenStep.$type);
|
|
577
|
+
}
|
|
578
|
+
|
|
579
|
+
export type IDType = 'number' | 'string';
|
|
580
|
+
|
|
581
|
+
export function isIDType(item: unknown): item is IDType {
|
|
582
|
+
return item === 'string' || item === 'number';
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
export interface InputDTO extends langium.AstNode {
|
|
586
|
+
readonly $container: Command;
|
|
587
|
+
readonly $type: 'InputDTO';
|
|
588
|
+
attributes: Array<PrimitiveAttribute>;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
export const InputDTO = {
|
|
592
|
+
$type: 'InputDTO',
|
|
593
|
+
attributes: 'attributes'
|
|
594
|
+
} as const;
|
|
595
|
+
|
|
596
|
+
export function isInputDTO(item: unknown): item is InputDTO {
|
|
597
|
+
return reflection.isInstance(item, InputDTO.$type);
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
export interface Method extends langium.AstNode {
|
|
601
|
+
readonly $container: MethodsDeclaration;
|
|
602
|
+
readonly $type: 'Method';
|
|
603
|
+
description?: string;
|
|
604
|
+
input?: MethodInput;
|
|
605
|
+
name: string;
|
|
606
|
+
}
|
|
607
|
+
|
|
608
|
+
export const Method = {
|
|
609
|
+
$type: 'Method',
|
|
610
|
+
description: 'description',
|
|
611
|
+
input: 'input',
|
|
612
|
+
name: 'name'
|
|
613
|
+
} as const;
|
|
614
|
+
|
|
615
|
+
export function isMethod(item: unknown): item is Method {
|
|
616
|
+
return reflection.isInstance(item, Method.$type);
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
export interface MethodInput extends langium.AstNode {
|
|
620
|
+
readonly $container: Method;
|
|
621
|
+
readonly $type: 'MethodInput';
|
|
622
|
+
attributes: Array<DomainAttribute>;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
export const MethodInput = {
|
|
626
|
+
$type: 'MethodInput',
|
|
627
|
+
attributes: 'attributes'
|
|
628
|
+
} as const;
|
|
629
|
+
|
|
630
|
+
export function isMethodInput(item: unknown): item is MethodInput {
|
|
631
|
+
return reflection.isInstance(item, MethodInput.$type);
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
export interface MethodsDeclaration extends langium.AstNode {
|
|
635
|
+
readonly $container: AggregateRoot;
|
|
636
|
+
readonly $type: 'MethodsDeclaration';
|
|
637
|
+
methods: Array<Method>;
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
export const MethodsDeclaration = {
|
|
641
|
+
$type: 'MethodsDeclaration',
|
|
642
|
+
methods: 'methods'
|
|
643
|
+
} as const;
|
|
644
|
+
|
|
645
|
+
export function isMethodsDeclaration(item: unknown): item is MethodsDeclaration {
|
|
646
|
+
return reflection.isInstance(item, MethodsDeclaration.$type);
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
export interface Payload extends langium.AstNode {
|
|
650
|
+
readonly $container: DomainEvent;
|
|
651
|
+
readonly $type: 'Payload';
|
|
652
|
+
attributes: Array<PrimitiveAttribute>;
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
export const Payload = {
|
|
656
|
+
$type: 'Payload',
|
|
657
|
+
attributes: 'attributes'
|
|
658
|
+
} as const;
|
|
659
|
+
|
|
660
|
+
export function isPayload(item: unknown): item is Payload {
|
|
661
|
+
return reflection.isInstance(item, Payload.$type);
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
export interface Policy extends langium.AstNode {
|
|
665
|
+
readonly $container: PolicyTrigger;
|
|
666
|
+
readonly $type: 'Policy';
|
|
667
|
+
command: langium.Reference<Command>;
|
|
668
|
+
description?: string;
|
|
669
|
+
name: string;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
export const Policy = {
|
|
673
|
+
$type: 'Policy',
|
|
674
|
+
command: 'command',
|
|
675
|
+
description: 'description',
|
|
676
|
+
name: 'name'
|
|
677
|
+
} as const;
|
|
678
|
+
|
|
679
|
+
export function isPolicy(item: unknown): item is Policy {
|
|
680
|
+
return reflection.isInstance(item, Policy.$type);
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
export interface PolicyTrigger extends langium.AstNode {
|
|
684
|
+
readonly $container: ReactionStep;
|
|
685
|
+
readonly $type: 'PolicyTrigger';
|
|
686
|
+
hotspot?: string;
|
|
687
|
+
policy: Policy;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
export const PolicyTrigger = {
|
|
691
|
+
$type: 'PolicyTrigger',
|
|
692
|
+
hotspot: 'hotspot',
|
|
693
|
+
policy: 'policy'
|
|
694
|
+
} as const;
|
|
695
|
+
|
|
696
|
+
export function isPolicyTrigger(item: unknown): item is PolicyTrigger {
|
|
697
|
+
return reflection.isInstance(item, PolicyTrigger.$type);
|
|
698
|
+
}
|
|
699
|
+
|
|
700
|
+
export interface Port extends langium.AstNode {
|
|
701
|
+
readonly $container: BoundedContext;
|
|
702
|
+
readonly $type: 'Port';
|
|
703
|
+
description?: string;
|
|
704
|
+
name: string;
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
export const Port = {
|
|
708
|
+
$type: 'Port',
|
|
709
|
+
description: 'description',
|
|
710
|
+
name: 'name'
|
|
711
|
+
} as const;
|
|
712
|
+
|
|
713
|
+
export function isPort(item: unknown): item is Port {
|
|
714
|
+
return reflection.isInstance(item, Port.$type);
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
export type Primitive = 'boolean' | 'date' | 'number' | 'string';
|
|
718
|
+
|
|
719
|
+
export function isPrimitive(item: unknown): item is Primitive {
|
|
720
|
+
return item === 'string' || item === 'number' || item === 'boolean' || item === 'date';
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
export interface PrimitiveAttribute extends langium.AstNode {
|
|
724
|
+
readonly $container: DomainServiceResponse | InputDTO | Payload | ResponseDTO | ValueObject;
|
|
725
|
+
readonly $type: 'PrimitiveAttribute';
|
|
726
|
+
many: boolean;
|
|
727
|
+
name: string;
|
|
728
|
+
optional: boolean;
|
|
729
|
+
type: Enum | Primitive;
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
export const PrimitiveAttribute = {
|
|
733
|
+
$type: 'PrimitiveAttribute',
|
|
734
|
+
many: 'many',
|
|
735
|
+
name: 'name',
|
|
736
|
+
optional: 'optional',
|
|
737
|
+
type: 'type'
|
|
738
|
+
} as const;
|
|
739
|
+
|
|
740
|
+
export function isPrimitiveAttribute(item: unknown): item is PrimitiveAttribute {
|
|
741
|
+
return reflection.isInstance(item, PrimitiveAttribute.$type);
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
export interface ProcessFlow extends langium.AstNode {
|
|
745
|
+
readonly $container: EventStormingDeclaration;
|
|
746
|
+
readonly $type: 'ProcessFlow';
|
|
747
|
+
command: ActorCommandStep;
|
|
748
|
+
description?: string;
|
|
749
|
+
given?: GivenStep;
|
|
750
|
+
name: string;
|
|
751
|
+
reactions: Array<ReactionStep>;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
export const ProcessFlow = {
|
|
755
|
+
$type: 'ProcessFlow',
|
|
756
|
+
command: 'command',
|
|
757
|
+
description: 'description',
|
|
758
|
+
given: 'given',
|
|
759
|
+
name: 'name',
|
|
760
|
+
reactions: 'reactions'
|
|
761
|
+
} as const;
|
|
762
|
+
|
|
763
|
+
export function isProcessFlow(item: unknown): item is ProcessFlow {
|
|
764
|
+
return reflection.isInstance(item, ProcessFlow.$type);
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
export interface Projection extends langium.AstNode {
|
|
768
|
+
readonly $container: ReactionStep;
|
|
769
|
+
readonly $type: 'Projection';
|
|
770
|
+
hotspot?: string;
|
|
771
|
+
readModel: langium.Reference<ReadModel>;
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
export const Projection = {
|
|
775
|
+
$type: 'Projection',
|
|
776
|
+
hotspot: 'hotspot',
|
|
777
|
+
readModel: 'readModel'
|
|
778
|
+
} as const;
|
|
779
|
+
|
|
780
|
+
export function isProjection(item: unknown): item is Projection {
|
|
781
|
+
return reflection.isInstance(item, Projection.$type);
|
|
782
|
+
}
|
|
783
|
+
|
|
784
|
+
export type QualifiedName = string;
|
|
785
|
+
|
|
786
|
+
export function isQualifiedName(item: unknown): item is QualifiedName {
|
|
787
|
+
return typeof item === 'string';
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
export type ReactionOutcome = PolicyTrigger | Projection;
|
|
791
|
+
|
|
792
|
+
export const ReactionOutcome = {
|
|
793
|
+
$type: 'ReactionOutcome'
|
|
794
|
+
} as const;
|
|
795
|
+
|
|
796
|
+
export function isReactionOutcome(item: unknown): item is ReactionOutcome {
|
|
797
|
+
return reflection.isInstance(item, ReactionOutcome.$type);
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
export interface ReactionStep extends langium.AstNode {
|
|
801
|
+
readonly $container: ProcessFlow;
|
|
802
|
+
readonly $type: 'ReactionStep';
|
|
803
|
+
outcomes: Array<ReactionOutcome>;
|
|
804
|
+
trigger: langium.Reference<DomainEvent>;
|
|
805
|
+
}
|
|
806
|
+
|
|
807
|
+
export const ReactionStep = {
|
|
808
|
+
$type: 'ReactionStep',
|
|
809
|
+
outcomes: 'outcomes',
|
|
810
|
+
trigger: 'trigger'
|
|
811
|
+
} as const;
|
|
812
|
+
|
|
813
|
+
export function isReactionStep(item: unknown): item is ReactionStep {
|
|
814
|
+
return reflection.isInstance(item, ReactionStep.$type);
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
export interface ReadModel extends langium.AstNode {
|
|
818
|
+
readonly $container: EventStormingDeclaration;
|
|
819
|
+
readonly $type: 'ReadModel';
|
|
820
|
+
description?: string;
|
|
821
|
+
name: string;
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
export const ReadModel = {
|
|
825
|
+
$type: 'ReadModel',
|
|
826
|
+
description: 'description',
|
|
827
|
+
name: 'name'
|
|
828
|
+
} as const;
|
|
829
|
+
|
|
830
|
+
export function isReadModel(item: unknown): item is ReadModel {
|
|
831
|
+
return reflection.isInstance(item, ReadModel.$type);
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
export interface Reference extends langium.AstNode {
|
|
835
|
+
readonly $container: AggregateAttribute | EntityAttribute;
|
|
836
|
+
readonly $type: 'Reference';
|
|
837
|
+
name: string;
|
|
838
|
+
to: langium.Reference<AggregateRoot>;
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
export const Reference = {
|
|
842
|
+
$type: 'Reference',
|
|
843
|
+
name: 'name',
|
|
844
|
+
to: 'to'
|
|
845
|
+
} as const;
|
|
846
|
+
|
|
847
|
+
export function isReference(item: unknown): item is Reference {
|
|
848
|
+
return reflection.isInstance(item, Reference.$type);
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
export type Relationship = AsymmetricRelationship | SymmetricRelationship;
|
|
852
|
+
|
|
853
|
+
export const Relationship = {
|
|
854
|
+
$type: 'Relationship'
|
|
855
|
+
} as const;
|
|
856
|
+
|
|
857
|
+
export function isRelationship(item: unknown): item is Relationship {
|
|
858
|
+
return reflection.isInstance(item, Relationship.$type);
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
export interface ResponseDTO extends langium.AstNode {
|
|
862
|
+
readonly $container: Command;
|
|
863
|
+
readonly $type: 'ResponseDTO';
|
|
864
|
+
attributes: Array<PrimitiveAttribute>;
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
export const ResponseDTO = {
|
|
868
|
+
$type: 'ResponseDTO',
|
|
869
|
+
attributes: 'attributes'
|
|
870
|
+
} as const;
|
|
871
|
+
|
|
872
|
+
export function isResponseDTO(item: unknown): item is ResponseDTO {
|
|
873
|
+
return reflection.isInstance(item, ResponseDTO.$type);
|
|
874
|
+
}
|
|
875
|
+
|
|
876
|
+
export interface SymmetricRelationship extends langium.AstNode {
|
|
877
|
+
readonly $container: ContextMap;
|
|
878
|
+
readonly $type: 'SymmetricRelationship';
|
|
879
|
+
description?: string;
|
|
880
|
+
participant1: langium.Reference<BoundedContext>;
|
|
881
|
+
participant2: langium.Reference<BoundedContext>;
|
|
882
|
+
type: 'Partnership' | 'SharedKernel';
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
export const SymmetricRelationship = {
|
|
886
|
+
$type: 'SymmetricRelationship',
|
|
887
|
+
description: 'description',
|
|
888
|
+
participant1: 'participant1',
|
|
889
|
+
participant2: 'participant2',
|
|
890
|
+
type: 'type'
|
|
891
|
+
} as const;
|
|
892
|
+
|
|
893
|
+
export function isSymmetricRelationship(item: unknown): item is SymmetricRelationship {
|
|
894
|
+
return reflection.isInstance(item, SymmetricRelationship.$type);
|
|
895
|
+
}
|
|
896
|
+
|
|
897
|
+
export interface Term extends langium.AstNode {
|
|
898
|
+
readonly $container: UbiquitousLanguageDeclaration;
|
|
899
|
+
readonly $type: 'Term';
|
|
900
|
+
aliases: Array<string>;
|
|
901
|
+
definition: string;
|
|
902
|
+
name: string;
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
export const Term = {
|
|
906
|
+
$type: 'Term',
|
|
907
|
+
aliases: 'aliases',
|
|
908
|
+
definition: 'definition',
|
|
909
|
+
name: 'name'
|
|
910
|
+
} as const;
|
|
911
|
+
|
|
912
|
+
export function isTerm(item: unknown): item is Term {
|
|
913
|
+
return reflection.isInstance(item, Term.$type);
|
|
914
|
+
}
|
|
915
|
+
|
|
916
|
+
export interface UbiquitousLanguageDeclaration extends langium.AstNode {
|
|
917
|
+
readonly $container: BoundedContext;
|
|
918
|
+
readonly $type: 'UbiquitousLanguageDeclaration';
|
|
919
|
+
terms: Array<Term>;
|
|
920
|
+
}
|
|
921
|
+
|
|
922
|
+
export const UbiquitousLanguageDeclaration = {
|
|
923
|
+
$type: 'UbiquitousLanguageDeclaration',
|
|
924
|
+
terms: 'terms'
|
|
925
|
+
} as const;
|
|
926
|
+
|
|
927
|
+
export function isUbiquitousLanguageDeclaration(item: unknown): item is UbiquitousLanguageDeclaration {
|
|
928
|
+
return reflection.isInstance(item, UbiquitousLanguageDeclaration.$type);
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
export interface UID extends langium.AstNode {
|
|
932
|
+
readonly $container: AggregateRoot | Entity;
|
|
933
|
+
readonly $type: 'UID';
|
|
934
|
+
enforcedInvariants: Array<string>;
|
|
935
|
+
type: IDType;
|
|
936
|
+
}
|
|
937
|
+
|
|
938
|
+
export const UID = {
|
|
939
|
+
$type: 'UID',
|
|
940
|
+
enforcedInvariants: 'enforcedInvariants',
|
|
941
|
+
type: 'type'
|
|
942
|
+
} as const;
|
|
943
|
+
|
|
944
|
+
export function isUID(item: unknown): item is UID {
|
|
945
|
+
return reflection.isInstance(item, UID.$type);
|
|
946
|
+
}
|
|
947
|
+
|
|
948
|
+
export type UpstreamRole = 'OpenHostService' | 'PublishedLanguage';
|
|
949
|
+
|
|
950
|
+
export function isUpstreamRole(item: unknown): item is UpstreamRole {
|
|
951
|
+
return item === 'OpenHostService' || item === 'PublishedLanguage';
|
|
952
|
+
}
|
|
953
|
+
|
|
954
|
+
export interface ValueObject extends langium.AstNode {
|
|
955
|
+
readonly $container: AggregateAttribute | EntityAttribute;
|
|
956
|
+
readonly $type: 'ValueObject';
|
|
957
|
+
attributes: Array<PrimitiveAttribute>;
|
|
958
|
+
description?: string;
|
|
959
|
+
enforcedInvariants: Array<string>;
|
|
960
|
+
name: string;
|
|
961
|
+
}
|
|
962
|
+
|
|
963
|
+
export const ValueObject = {
|
|
964
|
+
$type: 'ValueObject',
|
|
965
|
+
attributes: 'attributes',
|
|
966
|
+
description: 'description',
|
|
967
|
+
enforcedInvariants: 'enforcedInvariants',
|
|
968
|
+
name: 'name'
|
|
969
|
+
} as const;
|
|
970
|
+
|
|
971
|
+
export function isValueObject(item: unknown): item is ValueObject {
|
|
972
|
+
return reflection.isInstance(item, ValueObject.$type);
|
|
973
|
+
}
|
|
974
|
+
|
|
975
|
+
export type DomainDesignLanguageAstType = {
|
|
976
|
+
Actor: Actor
|
|
977
|
+
ActorCommandStep: ActorCommandStep
|
|
978
|
+
AggregateAttribute: AggregateAttribute
|
|
979
|
+
AggregateRoot: AggregateRoot
|
|
980
|
+
AsymmetricRelationship: AsymmetricRelationship
|
|
981
|
+
BoundedContext: BoundedContext
|
|
982
|
+
Command: Command
|
|
983
|
+
ContextMap: ContextMap
|
|
984
|
+
Dependency: Dependency
|
|
985
|
+
DomainAttribute: DomainAttribute
|
|
986
|
+
DomainEvent: DomainEvent
|
|
987
|
+
DomainEventsDeclaration: DomainEventsDeclaration
|
|
988
|
+
DomainException: DomainException
|
|
989
|
+
DomainModel: DomainModel
|
|
990
|
+
DomainObject: DomainObject
|
|
991
|
+
DomainService: DomainService
|
|
992
|
+
DomainServiceInput: DomainServiceInput
|
|
993
|
+
DomainServiceResponse: DomainServiceResponse
|
|
994
|
+
Entity: Entity
|
|
995
|
+
EntityAttribute: EntityAttribute
|
|
996
|
+
Enum: Enum
|
|
997
|
+
EventStormingDeclaration: EventStormingDeclaration
|
|
998
|
+
EventStormingElement: EventStormingElement
|
|
999
|
+
ExceptionsDeclaration: ExceptionsDeclaration
|
|
1000
|
+
ExternalSystem: ExternalSystem
|
|
1001
|
+
GivenStep: GivenStep
|
|
1002
|
+
InputDTO: InputDTO
|
|
1003
|
+
Method: Method
|
|
1004
|
+
MethodInput: MethodInput
|
|
1005
|
+
MethodsDeclaration: MethodsDeclaration
|
|
1006
|
+
Payload: Payload
|
|
1007
|
+
Policy: Policy
|
|
1008
|
+
PolicyTrigger: PolicyTrigger
|
|
1009
|
+
Port: Port
|
|
1010
|
+
PrimitiveAttribute: PrimitiveAttribute
|
|
1011
|
+
ProcessFlow: ProcessFlow
|
|
1012
|
+
Projection: Projection
|
|
1013
|
+
ReactionOutcome: ReactionOutcome
|
|
1014
|
+
ReactionStep: ReactionStep
|
|
1015
|
+
ReadModel: ReadModel
|
|
1016
|
+
Reference: Reference
|
|
1017
|
+
Relationship: Relationship
|
|
1018
|
+
ResponseDTO: ResponseDTO
|
|
1019
|
+
SymmetricRelationship: SymmetricRelationship
|
|
1020
|
+
Term: Term
|
|
1021
|
+
UID: UID
|
|
1022
|
+
UbiquitousLanguageDeclaration: UbiquitousLanguageDeclaration
|
|
1023
|
+
ValueObject: ValueObject
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
export class DomainDesignLanguageAstReflection extends langium.AbstractAstReflection {
|
|
1027
|
+
override readonly types = {
|
|
1028
|
+
Actor: {
|
|
1029
|
+
name: Actor.$type,
|
|
1030
|
+
properties: {
|
|
1031
|
+
description: {
|
|
1032
|
+
name: Actor.description
|
|
1033
|
+
},
|
|
1034
|
+
name: {
|
|
1035
|
+
name: Actor.name
|
|
1036
|
+
}
|
|
1037
|
+
},
|
|
1038
|
+
superTypes: [EventStormingElement.$type]
|
|
1039
|
+
},
|
|
1040
|
+
ActorCommandStep: {
|
|
1041
|
+
name: ActorCommandStep.$type,
|
|
1042
|
+
properties: {
|
|
1043
|
+
command: {
|
|
1044
|
+
name: ActorCommandStep.command,
|
|
1045
|
+
referenceType: Command.$type
|
|
1046
|
+
},
|
|
1047
|
+
issuer: {
|
|
1048
|
+
name: ActorCommandStep.issuer,
|
|
1049
|
+
referenceType: Actor.$type
|
|
1050
|
+
}
|
|
1051
|
+
},
|
|
1052
|
+
superTypes: []
|
|
1053
|
+
},
|
|
1054
|
+
AggregateAttribute: {
|
|
1055
|
+
name: AggregateAttribute.$type,
|
|
1056
|
+
properties: {
|
|
1057
|
+
many: {
|
|
1058
|
+
name: AggregateAttribute.many,
|
|
1059
|
+
defaultValue: false
|
|
1060
|
+
},
|
|
1061
|
+
optional: {
|
|
1062
|
+
name: AggregateAttribute.optional,
|
|
1063
|
+
defaultValue: false
|
|
1064
|
+
},
|
|
1065
|
+
type: {
|
|
1066
|
+
name: AggregateAttribute.type
|
|
1067
|
+
}
|
|
1068
|
+
},
|
|
1069
|
+
superTypes: []
|
|
1070
|
+
},
|
|
1071
|
+
AggregateRoot: {
|
|
1072
|
+
name: AggregateRoot.$type,
|
|
1073
|
+
properties: {
|
|
1074
|
+
attributes: {
|
|
1075
|
+
name: AggregateRoot.attributes,
|
|
1076
|
+
defaultValue: []
|
|
1077
|
+
},
|
|
1078
|
+
correctivePolicies: {
|
|
1079
|
+
name: AggregateRoot.correctivePolicies,
|
|
1080
|
+
defaultValue: []
|
|
1081
|
+
},
|
|
1082
|
+
description: {
|
|
1083
|
+
name: AggregateRoot.description
|
|
1084
|
+
},
|
|
1085
|
+
enforcedInvariants: {
|
|
1086
|
+
name: AggregateRoot.enforcedInvariants,
|
|
1087
|
+
defaultValue: []
|
|
1088
|
+
},
|
|
1089
|
+
events: {
|
|
1090
|
+
name: AggregateRoot.events
|
|
1091
|
+
},
|
|
1092
|
+
exceptions: {
|
|
1093
|
+
name: AggregateRoot.exceptions
|
|
1094
|
+
},
|
|
1095
|
+
id: {
|
|
1096
|
+
name: AggregateRoot.id
|
|
1097
|
+
},
|
|
1098
|
+
methods: {
|
|
1099
|
+
name: AggregateRoot.methods
|
|
1100
|
+
},
|
|
1101
|
+
name: {
|
|
1102
|
+
name: AggregateRoot.name
|
|
1103
|
+
}
|
|
1104
|
+
},
|
|
1105
|
+
superTypes: [DomainObject.$type]
|
|
1106
|
+
},
|
|
1107
|
+
AsymmetricRelationship: {
|
|
1108
|
+
name: AsymmetricRelationship.$type,
|
|
1109
|
+
properties: {
|
|
1110
|
+
customerSupplier: {
|
|
1111
|
+
name: AsymmetricRelationship.customerSupplier,
|
|
1112
|
+
defaultValue: false
|
|
1113
|
+
},
|
|
1114
|
+
description: {
|
|
1115
|
+
name: AsymmetricRelationship.description
|
|
1116
|
+
},
|
|
1117
|
+
downstream: {
|
|
1118
|
+
name: AsymmetricRelationship.downstream,
|
|
1119
|
+
referenceType: BoundedContext.$type
|
|
1120
|
+
},
|
|
1121
|
+
downstreamRole: {
|
|
1122
|
+
name: AsymmetricRelationship.downstreamRole
|
|
1123
|
+
},
|
|
1124
|
+
upstream: {
|
|
1125
|
+
name: AsymmetricRelationship.upstream,
|
|
1126
|
+
referenceType: BoundedContext.$type
|
|
1127
|
+
},
|
|
1128
|
+
upstreamRoles: {
|
|
1129
|
+
name: AsymmetricRelationship.upstreamRoles,
|
|
1130
|
+
defaultValue: []
|
|
1131
|
+
}
|
|
1132
|
+
},
|
|
1133
|
+
superTypes: [Relationship.$type]
|
|
1134
|
+
},
|
|
1135
|
+
BoundedContext: {
|
|
1136
|
+
name: BoundedContext.$type,
|
|
1137
|
+
properties: {
|
|
1138
|
+
aggregates: {
|
|
1139
|
+
name: BoundedContext.aggregates,
|
|
1140
|
+
defaultValue: []
|
|
1141
|
+
},
|
|
1142
|
+
commands: {
|
|
1143
|
+
name: BoundedContext.commands,
|
|
1144
|
+
defaultValue: []
|
|
1145
|
+
},
|
|
1146
|
+
description: {
|
|
1147
|
+
name: BoundedContext.description
|
|
1148
|
+
},
|
|
1149
|
+
domainServices: {
|
|
1150
|
+
name: BoundedContext.domainServices,
|
|
1151
|
+
defaultValue: []
|
|
1152
|
+
},
|
|
1153
|
+
eventStorming: {
|
|
1154
|
+
name: BoundedContext.eventStorming
|
|
1155
|
+
},
|
|
1156
|
+
name: {
|
|
1157
|
+
name: BoundedContext.name
|
|
1158
|
+
},
|
|
1159
|
+
ports: {
|
|
1160
|
+
name: BoundedContext.ports,
|
|
1161
|
+
defaultValue: []
|
|
1162
|
+
},
|
|
1163
|
+
ubiquitousLanguage: {
|
|
1164
|
+
name: BoundedContext.ubiquitousLanguage
|
|
1165
|
+
}
|
|
1166
|
+
},
|
|
1167
|
+
superTypes: []
|
|
1168
|
+
},
|
|
1169
|
+
Command: {
|
|
1170
|
+
name: Command.$type,
|
|
1171
|
+
properties: {
|
|
1172
|
+
aggregate: {
|
|
1173
|
+
name: Command.aggregate,
|
|
1174
|
+
referenceType: AggregateRoot.$type
|
|
1175
|
+
},
|
|
1176
|
+
dependencies: {
|
|
1177
|
+
name: Command.dependencies,
|
|
1178
|
+
defaultValue: []
|
|
1179
|
+
},
|
|
1180
|
+
description: {
|
|
1181
|
+
name: Command.description
|
|
1182
|
+
},
|
|
1183
|
+
domainServices: {
|
|
1184
|
+
name: Command.domainServices,
|
|
1185
|
+
defaultValue: [],
|
|
1186
|
+
referenceType: DomainService.$type
|
|
1187
|
+
},
|
|
1188
|
+
events: {
|
|
1189
|
+
name: Command.events,
|
|
1190
|
+
defaultValue: [],
|
|
1191
|
+
referenceType: DomainEvent.$type
|
|
1192
|
+
},
|
|
1193
|
+
input: {
|
|
1194
|
+
name: Command.input
|
|
1195
|
+
},
|
|
1196
|
+
name: {
|
|
1197
|
+
name: Command.name
|
|
1198
|
+
},
|
|
1199
|
+
response: {
|
|
1200
|
+
name: Command.response
|
|
1201
|
+
}
|
|
1202
|
+
},
|
|
1203
|
+
superTypes: []
|
|
1204
|
+
},
|
|
1205
|
+
ContextMap: {
|
|
1206
|
+
name: ContextMap.$type,
|
|
1207
|
+
properties: {
|
|
1208
|
+
relationships: {
|
|
1209
|
+
name: ContextMap.relationships,
|
|
1210
|
+
defaultValue: []
|
|
1211
|
+
}
|
|
1212
|
+
},
|
|
1213
|
+
superTypes: []
|
|
1214
|
+
},
|
|
1215
|
+
Dependency: {
|
|
1216
|
+
name: Dependency.$type,
|
|
1217
|
+
properties: {
|
|
1218
|
+
port: {
|
|
1219
|
+
name: Dependency.port,
|
|
1220
|
+
referenceType: Port.$type
|
|
1221
|
+
}
|
|
1222
|
+
},
|
|
1223
|
+
superTypes: []
|
|
1224
|
+
},
|
|
1225
|
+
DomainAttribute: {
|
|
1226
|
+
name: DomainAttribute.$type,
|
|
1227
|
+
properties: {
|
|
1228
|
+
many: {
|
|
1229
|
+
name: DomainAttribute.many,
|
|
1230
|
+
defaultValue: false
|
|
1231
|
+
},
|
|
1232
|
+
name: {
|
|
1233
|
+
name: DomainAttribute.name
|
|
1234
|
+
},
|
|
1235
|
+
optional: {
|
|
1236
|
+
name: DomainAttribute.optional,
|
|
1237
|
+
defaultValue: false
|
|
1238
|
+
},
|
|
1239
|
+
type: {
|
|
1240
|
+
name: DomainAttribute.type,
|
|
1241
|
+
referenceType: DomainObject.$type
|
|
1242
|
+
}
|
|
1243
|
+
},
|
|
1244
|
+
superTypes: []
|
|
1245
|
+
},
|
|
1246
|
+
DomainEvent: {
|
|
1247
|
+
name: DomainEvent.$type,
|
|
1248
|
+
properties: {
|
|
1249
|
+
description: {
|
|
1250
|
+
name: DomainEvent.description
|
|
1251
|
+
},
|
|
1252
|
+
name: {
|
|
1253
|
+
name: DomainEvent.name
|
|
1254
|
+
},
|
|
1255
|
+
payload: {
|
|
1256
|
+
name: DomainEvent.payload
|
|
1257
|
+
}
|
|
1258
|
+
},
|
|
1259
|
+
superTypes: []
|
|
1260
|
+
},
|
|
1261
|
+
DomainEventsDeclaration: {
|
|
1262
|
+
name: DomainEventsDeclaration.$type,
|
|
1263
|
+
properties: {
|
|
1264
|
+
events: {
|
|
1265
|
+
name: DomainEventsDeclaration.events,
|
|
1266
|
+
defaultValue: []
|
|
1267
|
+
}
|
|
1268
|
+
},
|
|
1269
|
+
superTypes: []
|
|
1270
|
+
},
|
|
1271
|
+
DomainException: {
|
|
1272
|
+
name: DomainException.$type,
|
|
1273
|
+
properties: {
|
|
1274
|
+
description: {
|
|
1275
|
+
name: DomainException.description
|
|
1276
|
+
},
|
|
1277
|
+
name: {
|
|
1278
|
+
name: DomainException.name
|
|
1279
|
+
}
|
|
1280
|
+
},
|
|
1281
|
+
superTypes: []
|
|
1282
|
+
},
|
|
1283
|
+
DomainModel: {
|
|
1284
|
+
name: DomainModel.$type,
|
|
1285
|
+
properties: {
|
|
1286
|
+
boundedContext: {
|
|
1287
|
+
name: DomainModel.boundedContext
|
|
1288
|
+
},
|
|
1289
|
+
contextMap: {
|
|
1290
|
+
name: DomainModel.contextMap
|
|
1291
|
+
}
|
|
1292
|
+
},
|
|
1293
|
+
superTypes: []
|
|
1294
|
+
},
|
|
1295
|
+
DomainObject: {
|
|
1296
|
+
name: DomainObject.$type,
|
|
1297
|
+
properties: {
|
|
1298
|
+
},
|
|
1299
|
+
superTypes: []
|
|
1300
|
+
},
|
|
1301
|
+
DomainService: {
|
|
1302
|
+
name: DomainService.$type,
|
|
1303
|
+
properties: {
|
|
1304
|
+
description: {
|
|
1305
|
+
name: DomainService.description
|
|
1306
|
+
},
|
|
1307
|
+
input: {
|
|
1308
|
+
name: DomainService.input
|
|
1309
|
+
},
|
|
1310
|
+
name: {
|
|
1311
|
+
name: DomainService.name
|
|
1312
|
+
},
|
|
1313
|
+
response: {
|
|
1314
|
+
name: DomainService.response
|
|
1315
|
+
},
|
|
1316
|
+
type: {
|
|
1317
|
+
name: DomainService.type
|
|
1318
|
+
}
|
|
1319
|
+
},
|
|
1320
|
+
superTypes: []
|
|
1321
|
+
},
|
|
1322
|
+
DomainServiceInput: {
|
|
1323
|
+
name: DomainServiceInput.$type,
|
|
1324
|
+
properties: {
|
|
1325
|
+
attributes: {
|
|
1326
|
+
name: DomainServiceInput.attributes,
|
|
1327
|
+
defaultValue: []
|
|
1328
|
+
}
|
|
1329
|
+
},
|
|
1330
|
+
superTypes: []
|
|
1331
|
+
},
|
|
1332
|
+
DomainServiceResponse: {
|
|
1333
|
+
name: DomainServiceResponse.$type,
|
|
1334
|
+
properties: {
|
|
1335
|
+
attributes: {
|
|
1336
|
+
name: DomainServiceResponse.attributes,
|
|
1337
|
+
defaultValue: []
|
|
1338
|
+
}
|
|
1339
|
+
},
|
|
1340
|
+
superTypes: []
|
|
1341
|
+
},
|
|
1342
|
+
Entity: {
|
|
1343
|
+
name: Entity.$type,
|
|
1344
|
+
properties: {
|
|
1345
|
+
attributes: {
|
|
1346
|
+
name: Entity.attributes,
|
|
1347
|
+
defaultValue: []
|
|
1348
|
+
},
|
|
1349
|
+
description: {
|
|
1350
|
+
name: Entity.description
|
|
1351
|
+
},
|
|
1352
|
+
id: {
|
|
1353
|
+
name: Entity.id
|
|
1354
|
+
},
|
|
1355
|
+
name: {
|
|
1356
|
+
name: Entity.name
|
|
1357
|
+
}
|
|
1358
|
+
},
|
|
1359
|
+
superTypes: [DomainObject.$type]
|
|
1360
|
+
},
|
|
1361
|
+
EntityAttribute: {
|
|
1362
|
+
name: EntityAttribute.$type,
|
|
1363
|
+
properties: {
|
|
1364
|
+
many: {
|
|
1365
|
+
name: EntityAttribute.many,
|
|
1366
|
+
defaultValue: false
|
|
1367
|
+
},
|
|
1368
|
+
optional: {
|
|
1369
|
+
name: EntityAttribute.optional,
|
|
1370
|
+
defaultValue: false
|
|
1371
|
+
},
|
|
1372
|
+
type: {
|
|
1373
|
+
name: EntityAttribute.type
|
|
1374
|
+
}
|
|
1375
|
+
},
|
|
1376
|
+
superTypes: []
|
|
1377
|
+
},
|
|
1378
|
+
Enum: {
|
|
1379
|
+
name: Enum.$type,
|
|
1380
|
+
properties: {
|
|
1381
|
+
values: {
|
|
1382
|
+
name: Enum.values,
|
|
1383
|
+
defaultValue: []
|
|
1384
|
+
}
|
|
1385
|
+
},
|
|
1386
|
+
superTypes: []
|
|
1387
|
+
},
|
|
1388
|
+
EventStormingDeclaration: {
|
|
1389
|
+
name: EventStormingDeclaration.$type,
|
|
1390
|
+
properties: {
|
|
1391
|
+
elements: {
|
|
1392
|
+
name: EventStormingDeclaration.elements,
|
|
1393
|
+
defaultValue: []
|
|
1394
|
+
},
|
|
1395
|
+
flows: {
|
|
1396
|
+
name: EventStormingDeclaration.flows,
|
|
1397
|
+
defaultValue: []
|
|
1398
|
+
}
|
|
1399
|
+
},
|
|
1400
|
+
superTypes: []
|
|
1401
|
+
},
|
|
1402
|
+
EventStormingElement: {
|
|
1403
|
+
name: EventStormingElement.$type,
|
|
1404
|
+
properties: {
|
|
1405
|
+
},
|
|
1406
|
+
superTypes: []
|
|
1407
|
+
},
|
|
1408
|
+
ExceptionsDeclaration: {
|
|
1409
|
+
name: ExceptionsDeclaration.$type,
|
|
1410
|
+
properties: {
|
|
1411
|
+
exceptions: {
|
|
1412
|
+
name: ExceptionsDeclaration.exceptions,
|
|
1413
|
+
defaultValue: []
|
|
1414
|
+
}
|
|
1415
|
+
},
|
|
1416
|
+
superTypes: []
|
|
1417
|
+
},
|
|
1418
|
+
ExternalSystem: {
|
|
1419
|
+
name: ExternalSystem.$type,
|
|
1420
|
+
properties: {
|
|
1421
|
+
description: {
|
|
1422
|
+
name: ExternalSystem.description
|
|
1423
|
+
},
|
|
1424
|
+
name: {
|
|
1425
|
+
name: ExternalSystem.name
|
|
1426
|
+
}
|
|
1427
|
+
},
|
|
1428
|
+
superTypes: [EventStormingElement.$type]
|
|
1429
|
+
},
|
|
1430
|
+
GivenStep: {
|
|
1431
|
+
name: GivenStep.$type,
|
|
1432
|
+
properties: {
|
|
1433
|
+
actor: {
|
|
1434
|
+
name: GivenStep.actor,
|
|
1435
|
+
referenceType: Actor.$type
|
|
1436
|
+
},
|
|
1437
|
+
readModel: {
|
|
1438
|
+
name: GivenStep.readModel,
|
|
1439
|
+
referenceType: ReadModel.$type
|
|
1440
|
+
}
|
|
1441
|
+
},
|
|
1442
|
+
superTypes: []
|
|
1443
|
+
},
|
|
1444
|
+
InputDTO: {
|
|
1445
|
+
name: InputDTO.$type,
|
|
1446
|
+
properties: {
|
|
1447
|
+
attributes: {
|
|
1448
|
+
name: InputDTO.attributes,
|
|
1449
|
+
defaultValue: []
|
|
1450
|
+
}
|
|
1451
|
+
},
|
|
1452
|
+
superTypes: []
|
|
1453
|
+
},
|
|
1454
|
+
Method: {
|
|
1455
|
+
name: Method.$type,
|
|
1456
|
+
properties: {
|
|
1457
|
+
description: {
|
|
1458
|
+
name: Method.description
|
|
1459
|
+
},
|
|
1460
|
+
input: {
|
|
1461
|
+
name: Method.input
|
|
1462
|
+
},
|
|
1463
|
+
name: {
|
|
1464
|
+
name: Method.name
|
|
1465
|
+
}
|
|
1466
|
+
},
|
|
1467
|
+
superTypes: []
|
|
1468
|
+
},
|
|
1469
|
+
MethodInput: {
|
|
1470
|
+
name: MethodInput.$type,
|
|
1471
|
+
properties: {
|
|
1472
|
+
attributes: {
|
|
1473
|
+
name: MethodInput.attributes,
|
|
1474
|
+
defaultValue: []
|
|
1475
|
+
}
|
|
1476
|
+
},
|
|
1477
|
+
superTypes: []
|
|
1478
|
+
},
|
|
1479
|
+
MethodsDeclaration: {
|
|
1480
|
+
name: MethodsDeclaration.$type,
|
|
1481
|
+
properties: {
|
|
1482
|
+
methods: {
|
|
1483
|
+
name: MethodsDeclaration.methods,
|
|
1484
|
+
defaultValue: []
|
|
1485
|
+
}
|
|
1486
|
+
},
|
|
1487
|
+
superTypes: []
|
|
1488
|
+
},
|
|
1489
|
+
Payload: {
|
|
1490
|
+
name: Payload.$type,
|
|
1491
|
+
properties: {
|
|
1492
|
+
attributes: {
|
|
1493
|
+
name: Payload.attributes,
|
|
1494
|
+
defaultValue: []
|
|
1495
|
+
}
|
|
1496
|
+
},
|
|
1497
|
+
superTypes: []
|
|
1498
|
+
},
|
|
1499
|
+
Policy: {
|
|
1500
|
+
name: Policy.$type,
|
|
1501
|
+
properties: {
|
|
1502
|
+
command: {
|
|
1503
|
+
name: Policy.command,
|
|
1504
|
+
referenceType: Command.$type
|
|
1505
|
+
},
|
|
1506
|
+
description: {
|
|
1507
|
+
name: Policy.description
|
|
1508
|
+
},
|
|
1509
|
+
name: {
|
|
1510
|
+
name: Policy.name
|
|
1511
|
+
}
|
|
1512
|
+
},
|
|
1513
|
+
superTypes: []
|
|
1514
|
+
},
|
|
1515
|
+
PolicyTrigger: {
|
|
1516
|
+
name: PolicyTrigger.$type,
|
|
1517
|
+
properties: {
|
|
1518
|
+
hotspot: {
|
|
1519
|
+
name: PolicyTrigger.hotspot
|
|
1520
|
+
},
|
|
1521
|
+
policy: {
|
|
1522
|
+
name: PolicyTrigger.policy
|
|
1523
|
+
}
|
|
1524
|
+
},
|
|
1525
|
+
superTypes: [ReactionOutcome.$type]
|
|
1526
|
+
},
|
|
1527
|
+
Port: {
|
|
1528
|
+
name: Port.$type,
|
|
1529
|
+
properties: {
|
|
1530
|
+
description: {
|
|
1531
|
+
name: Port.description
|
|
1532
|
+
},
|
|
1533
|
+
name: {
|
|
1534
|
+
name: Port.name
|
|
1535
|
+
}
|
|
1536
|
+
},
|
|
1537
|
+
superTypes: []
|
|
1538
|
+
},
|
|
1539
|
+
PrimitiveAttribute: {
|
|
1540
|
+
name: PrimitiveAttribute.$type,
|
|
1541
|
+
properties: {
|
|
1542
|
+
many: {
|
|
1543
|
+
name: PrimitiveAttribute.many,
|
|
1544
|
+
defaultValue: false
|
|
1545
|
+
},
|
|
1546
|
+
name: {
|
|
1547
|
+
name: PrimitiveAttribute.name
|
|
1548
|
+
},
|
|
1549
|
+
optional: {
|
|
1550
|
+
name: PrimitiveAttribute.optional,
|
|
1551
|
+
defaultValue: false
|
|
1552
|
+
},
|
|
1553
|
+
type: {
|
|
1554
|
+
name: PrimitiveAttribute.type
|
|
1555
|
+
}
|
|
1556
|
+
},
|
|
1557
|
+
superTypes: []
|
|
1558
|
+
},
|
|
1559
|
+
ProcessFlow: {
|
|
1560
|
+
name: ProcessFlow.$type,
|
|
1561
|
+
properties: {
|
|
1562
|
+
command: {
|
|
1563
|
+
name: ProcessFlow.command
|
|
1564
|
+
},
|
|
1565
|
+
description: {
|
|
1566
|
+
name: ProcessFlow.description
|
|
1567
|
+
},
|
|
1568
|
+
given: {
|
|
1569
|
+
name: ProcessFlow.given
|
|
1570
|
+
},
|
|
1571
|
+
name: {
|
|
1572
|
+
name: ProcessFlow.name
|
|
1573
|
+
},
|
|
1574
|
+
reactions: {
|
|
1575
|
+
name: ProcessFlow.reactions,
|
|
1576
|
+
defaultValue: []
|
|
1577
|
+
}
|
|
1578
|
+
},
|
|
1579
|
+
superTypes: []
|
|
1580
|
+
},
|
|
1581
|
+
Projection: {
|
|
1582
|
+
name: Projection.$type,
|
|
1583
|
+
properties: {
|
|
1584
|
+
hotspot: {
|
|
1585
|
+
name: Projection.hotspot
|
|
1586
|
+
},
|
|
1587
|
+
readModel: {
|
|
1588
|
+
name: Projection.readModel,
|
|
1589
|
+
referenceType: ReadModel.$type
|
|
1590
|
+
}
|
|
1591
|
+
},
|
|
1592
|
+
superTypes: [ReactionOutcome.$type]
|
|
1593
|
+
},
|
|
1594
|
+
ReactionOutcome: {
|
|
1595
|
+
name: ReactionOutcome.$type,
|
|
1596
|
+
properties: {
|
|
1597
|
+
},
|
|
1598
|
+
superTypes: []
|
|
1599
|
+
},
|
|
1600
|
+
ReactionStep: {
|
|
1601
|
+
name: ReactionStep.$type,
|
|
1602
|
+
properties: {
|
|
1603
|
+
outcomes: {
|
|
1604
|
+
name: ReactionStep.outcomes,
|
|
1605
|
+
defaultValue: []
|
|
1606
|
+
},
|
|
1607
|
+
trigger: {
|
|
1608
|
+
name: ReactionStep.trigger,
|
|
1609
|
+
referenceType: DomainEvent.$type
|
|
1610
|
+
}
|
|
1611
|
+
},
|
|
1612
|
+
superTypes: []
|
|
1613
|
+
},
|
|
1614
|
+
ReadModel: {
|
|
1615
|
+
name: ReadModel.$type,
|
|
1616
|
+
properties: {
|
|
1617
|
+
description: {
|
|
1618
|
+
name: ReadModel.description
|
|
1619
|
+
},
|
|
1620
|
+
name: {
|
|
1621
|
+
name: ReadModel.name
|
|
1622
|
+
}
|
|
1623
|
+
},
|
|
1624
|
+
superTypes: [EventStormingElement.$type]
|
|
1625
|
+
},
|
|
1626
|
+
Reference: {
|
|
1627
|
+
name: Reference.$type,
|
|
1628
|
+
properties: {
|
|
1629
|
+
name: {
|
|
1630
|
+
name: Reference.name
|
|
1631
|
+
},
|
|
1632
|
+
to: {
|
|
1633
|
+
name: Reference.to,
|
|
1634
|
+
referenceType: AggregateRoot.$type
|
|
1635
|
+
}
|
|
1636
|
+
},
|
|
1637
|
+
superTypes: []
|
|
1638
|
+
},
|
|
1639
|
+
Relationship: {
|
|
1640
|
+
name: Relationship.$type,
|
|
1641
|
+
properties: {
|
|
1642
|
+
},
|
|
1643
|
+
superTypes: []
|
|
1644
|
+
},
|
|
1645
|
+
ResponseDTO: {
|
|
1646
|
+
name: ResponseDTO.$type,
|
|
1647
|
+
properties: {
|
|
1648
|
+
attributes: {
|
|
1649
|
+
name: ResponseDTO.attributes,
|
|
1650
|
+
defaultValue: []
|
|
1651
|
+
}
|
|
1652
|
+
},
|
|
1653
|
+
superTypes: []
|
|
1654
|
+
},
|
|
1655
|
+
SymmetricRelationship: {
|
|
1656
|
+
name: SymmetricRelationship.$type,
|
|
1657
|
+
properties: {
|
|
1658
|
+
description: {
|
|
1659
|
+
name: SymmetricRelationship.description
|
|
1660
|
+
},
|
|
1661
|
+
participant1: {
|
|
1662
|
+
name: SymmetricRelationship.participant1,
|
|
1663
|
+
referenceType: BoundedContext.$type
|
|
1664
|
+
},
|
|
1665
|
+
participant2: {
|
|
1666
|
+
name: SymmetricRelationship.participant2,
|
|
1667
|
+
referenceType: BoundedContext.$type
|
|
1668
|
+
},
|
|
1669
|
+
type: {
|
|
1670
|
+
name: SymmetricRelationship.type
|
|
1671
|
+
}
|
|
1672
|
+
},
|
|
1673
|
+
superTypes: [Relationship.$type]
|
|
1674
|
+
},
|
|
1675
|
+
Term: {
|
|
1676
|
+
name: Term.$type,
|
|
1677
|
+
properties: {
|
|
1678
|
+
aliases: {
|
|
1679
|
+
name: Term.aliases,
|
|
1680
|
+
defaultValue: []
|
|
1681
|
+
},
|
|
1682
|
+
definition: {
|
|
1683
|
+
name: Term.definition
|
|
1684
|
+
},
|
|
1685
|
+
name: {
|
|
1686
|
+
name: Term.name
|
|
1687
|
+
}
|
|
1688
|
+
},
|
|
1689
|
+
superTypes: []
|
|
1690
|
+
},
|
|
1691
|
+
UID: {
|
|
1692
|
+
name: UID.$type,
|
|
1693
|
+
properties: {
|
|
1694
|
+
enforcedInvariants: {
|
|
1695
|
+
name: UID.enforcedInvariants,
|
|
1696
|
+
defaultValue: []
|
|
1697
|
+
},
|
|
1698
|
+
type: {
|
|
1699
|
+
name: UID.type
|
|
1700
|
+
}
|
|
1701
|
+
},
|
|
1702
|
+
superTypes: []
|
|
1703
|
+
},
|
|
1704
|
+
UbiquitousLanguageDeclaration: {
|
|
1705
|
+
name: UbiquitousLanguageDeclaration.$type,
|
|
1706
|
+
properties: {
|
|
1707
|
+
terms: {
|
|
1708
|
+
name: UbiquitousLanguageDeclaration.terms,
|
|
1709
|
+
defaultValue: []
|
|
1710
|
+
}
|
|
1711
|
+
},
|
|
1712
|
+
superTypes: []
|
|
1713
|
+
},
|
|
1714
|
+
ValueObject: {
|
|
1715
|
+
name: ValueObject.$type,
|
|
1716
|
+
properties: {
|
|
1717
|
+
attributes: {
|
|
1718
|
+
name: ValueObject.attributes,
|
|
1719
|
+
defaultValue: []
|
|
1720
|
+
},
|
|
1721
|
+
description: {
|
|
1722
|
+
name: ValueObject.description
|
|
1723
|
+
},
|
|
1724
|
+
enforcedInvariants: {
|
|
1725
|
+
name: ValueObject.enforcedInvariants,
|
|
1726
|
+
defaultValue: []
|
|
1727
|
+
},
|
|
1728
|
+
name: {
|
|
1729
|
+
name: ValueObject.name
|
|
1730
|
+
}
|
|
1731
|
+
},
|
|
1732
|
+
superTypes: [DomainObject.$type]
|
|
1733
|
+
}
|
|
1734
|
+
} as const satisfies langium.AstMetaData
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
export const reflection = new DomainDesignLanguageAstReflection();
|