@lionweb/delta-protocol-test-cli 0.7.0-beta.12 → 0.7.0-beta.14

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/src/tasks.ts CHANGED
@@ -18,35 +18,28 @@
18
18
  import { INodeBase } from "@lionweb/class-core"
19
19
  import { LionWebClient } from "@lionweb/delta-protocol-impl"
20
20
  import { LionWebId } from "@lionweb/json"
21
- import { ClientAppliedEvent, ISemanticLogItem } from "@lionweb/delta-protocol-impl/dist/semantic-logging.js"
22
- import { withStylesApplied } from "@lionweb/delta-protocol-impl/dist/utils/ansi.js"
21
+ import { lastOfArray } from "@lionweb/ts-utils"
22
+ import { ClientReceivedMessage, ISemanticLogItem } from "@lionweb/delta-protocol-impl/dist/semantic-logging.js"
23
+ import { clientInfo, genericWarning } from "@lionweb/delta-protocol-impl/dist/utils/ansi.js"
23
24
  import { waitUntil } from "@lionweb/delta-protocol-impl/dist/utils/async.js"
24
- import { Documentation, Geometry, ShapesBase } from "./gen/Shapes.g.js"
25
- import {
26
- DataTypeTestConcept,
27
- LinkTestConcept,
28
- TestAnnotation,
29
- TestLanguageBase
30
- } from "./gen/TestLanguage.g.js"
31
-
32
-
33
- const lastOf = <T>(ts: T[]): T => {
34
- if (ts.length === 0) {
35
- throw new Error(`empty array doesn't have a last element`)
36
- }
37
- return ts[ts.length - 1]
38
- }
25
+ import { DataTypeTestConcept, LinkTestConcept, TestAnnotation, TestLanguageBase } from "./gen/TestLanguage.g.js"
39
26
 
40
27
 
28
+ /**
29
+ * **DEV note**: run
30
+ *
31
+ * $ node src/code-reading/tasks-from-csharp.js
32
+ *
33
+ * inside the build package to generate the contents of the following object.
34
+ */
41
35
  export const recognizedTasks: Record<string, boolean> = {
42
36
  "SignOn": true,
43
37
  "SignOff": true,
44
38
  "Wait": true,
45
- "AddDocs": true,
46
- "SetDocsText": true,
47
39
  "AddStringValue_0_1": true,
48
40
  "SetStringValue_0_1": true,
49
41
  "DeleteStringValue_0_1": true,
42
+ "AddName_Containment_0_1": true,
50
43
  "AddAnnotation": true,
51
44
  "AddAnnotations": true,
52
45
  "AddAnnotation_to_Containment_0_1": true,
@@ -63,6 +56,7 @@ export const recognizedTasks: Record<string, boolean> = {
63
56
  "AddContainment_0_1_Containment_0_1": true,
64
57
  "AddContainment_1_Containment_0_1": true,
65
58
  "AddContainment_0_n": true,
59
+ "AddContainment_0_n_Containment_0_n": true,
66
60
  "AddContainment_1_n": true,
67
61
  "MoveAndReplaceChildFromOtherContainment_Single": true,
68
62
  "MoveAndReplaceChildFromOtherContainmentInSameParent_Single": true,
@@ -71,145 +65,154 @@ export const recognizedTasks: Record<string, boolean> = {
71
65
  "MoveChildFromOtherContainment_Single": true,
72
66
  "MoveChildFromOtherContainment_Multiple": true,
73
67
  "MoveChildFromOtherContainmentInSameParent_Single": true,
74
- "MoveChildFromOtherContainmentInSameParent_Multiple": true,
75
- "AddPartition": true
68
+ "AddPartition": true,
69
+ "MoveChildFromOtherContainmentInSameParent_Multiple": true
76
70
  }
77
71
 
78
72
 
79
- const shapesLanguageBase = ShapesBase.INSTANCE
80
73
  const testLanguageBase = TestLanguageBase.INSTANCE
81
74
 
82
75
 
83
76
  export const taskExecutor = (lionWebClient: LionWebClient, partition: INodeBase, semanticLogItems: ISemanticLogItem[]) => {
84
- const numberOfAppliedEvents = () =>
85
- semanticLogItems.filter((item) => item instanceof ClientAppliedEvent).length
86
77
 
87
- const waitForReceived = async (delta: number) => {
88
- const expectedNumber = numberOfAppliedEvents() + delta // (precompute here)
89
- return waitUntil(10, () => numberOfAppliedEvents() >= expectedNumber)
78
+ const numberOfReceivedMessages = () =>
79
+ semanticLogItems.filter((item) => item instanceof ClientReceivedMessage).length
80
+
81
+ const waitForReceivedMessages = async (numberOfMessagesToReceive: number) => {
82
+ const expectedNumber = numberOfReceivedMessages() + numberOfMessagesToReceive // (precompute here)
83
+ return waitUntil(10, () => numberOfReceivedMessages() >= expectedNumber)
90
84
  .then(() => {
91
- console.log(withStylesApplied("italic")(`(client applied (the deltas from) a total of ${numberOfAppliedEvents()} events so far)`))
85
+ console.log(clientInfo(`(client "${lionWebClient.clientId}" received a total of ${numberOfReceivedMessages()} messages so far)`))
92
86
  })
93
87
  }
94
88
 
95
89
  const annotation = (id: LionWebId) =>
96
- lionWebClient.factory(testLanguageBase.TestAnnotation, id) as TestAnnotation
90
+ lionWebClient.createNode(testLanguageBase.TestAnnotation, id) as TestAnnotation
97
91
 
98
92
  const linkTestConcept = (id?: LionWebId) =>
99
93
  id === undefined
100
94
  ? partition as LinkTestConcept
101
- : lionWebClient.factory(testLanguageBase.LinkTestConcept, id) as LinkTestConcept
95
+ : lionWebClient.createNode(testLanguageBase.LinkTestConcept, id) as LinkTestConcept
102
96
 
103
97
  return async (task: string, queryId: string) => {
98
+ console.log(clientInfo(`client "${lionWebClient.clientId}" is executing task "${task}"`))
104
99
  switch (task) {
105
100
  case "SignOn":
106
- return await lionWebClient.signOn(queryId)
101
+ return await lionWebClient.signOn(queryId, "myRepo")
107
102
  case "SignOff":
108
103
  return await lionWebClient.signOff(queryId)
109
104
  case "Wait": {
110
- return waitForReceived(1)
111
- }
112
- case "AddDocs": {
113
- (partition as Geometry).documentation = lionWebClient.factory(shapesLanguageBase.Documentation, "documentation") as Documentation
114
- return waitForReceived(1)
115
- }
116
- case "SetDocsText": {
117
- (partition as Geometry).documentation!.text = "hello there"
118
- return waitForReceived(1)
105
+ return waitForReceivedMessages(1)
119
106
  }
120
107
  case "AddStringValue_0_1":
121
108
  (partition as DataTypeTestConcept).stringValue_0_1 = "new property"
122
- return waitForReceived(1)
109
+ return waitForReceivedMessages(1)
123
110
  case "SetStringValue_0_1":
124
111
  (partition as DataTypeTestConcept).stringValue_0_1 = "changed property"
125
- return waitForReceived(1)
112
+ return waitForReceivedMessages(1)
126
113
  case "DeleteStringValue_0_1":
127
114
  (partition as DataTypeTestConcept).stringValue_0_1 = undefined
128
- return waitForReceived(1)
115
+ return waitForReceivedMessages(1)
116
+ case "AddName_Containment_0_1":
117
+ linkTestConcept().containment_0_1!.name = "my name"
118
+ return waitForReceivedMessages(1)
129
119
  case "AddAnnotation":
130
120
  linkTestConcept().addAnnotation(annotation("annotation"))
131
- return waitForReceived(1)
121
+ return waitForReceivedMessages(1)
132
122
  case "AddAnnotations":
133
123
  linkTestConcept().addAnnotation(annotation("annotation0")); // (keep ;!)
134
124
  linkTestConcept().addAnnotation(annotation("annotation1"))
135
- return waitForReceived(2)
125
+ return waitForReceivedMessages(2)
136
126
  case "AddAnnotation_to_Containment_0_1":
137
127
  linkTestConcept().containment_0_1!.addAnnotation(annotation("annotation"))
138
- return waitForReceived(1)
128
+ return waitForReceivedMessages(1)
139
129
  case "DeleteAnnotation":
140
130
  linkTestConcept().removeAnnotation(linkTestConcept().annotations[0])
141
- return waitForReceived(1)
131
+ return waitForReceivedMessages(1)
142
132
  case "MoveAnnotationInSameParent":
143
- linkTestConcept().insertAnnotationAtIndex(lastOf(linkTestConcept().annotations), 0)
144
- return waitForReceived(1)
133
+ linkTestConcept().insertAnnotationAtIndex(lastOfArray(linkTestConcept().annotations), 0)
134
+ return waitForReceivedMessages(1)
145
135
  case "MoveAnnotationFromOtherParent":
146
136
  linkTestConcept().addAnnotation(linkTestConcept().containment_0_1!.annotations[0])
147
- return waitForReceived(1)
137
+ return waitForReceivedMessages(1)
148
138
  case "AddReference_0_1_to_Containment_0_1":
149
139
  linkTestConcept().reference_0_1 = linkTestConcept().containment_0_1
150
- return waitForReceived(1)
140
+ return waitForReceivedMessages(1)
151
141
  case "AddReference_0_1_to_Containment_1":
152
142
  linkTestConcept().reference_0_1 = linkTestConcept().containment_1
153
- return waitForReceived(1)
143
+ return waitForReceivedMessages(1)
154
144
  case "DeleteReference_0_1":
155
145
  linkTestConcept().reference_0_1 = undefined
156
- return waitForReceived(1)
146
+ return waitForReceivedMessages(1)
157
147
  case "AddContainment_0_1":
158
148
  linkTestConcept().containment_0_1 = linkTestConcept("containment_0_1")
159
- return waitForReceived(1)
149
+ return waitForReceivedMessages(1)
160
150
  case "AddContainment_1":
161
151
  linkTestConcept().containment_1 = linkTestConcept("containment_1")
162
- return waitForReceived(1)
152
+ return waitForReceivedMessages(1)
163
153
  case "ReplaceContainment_0_1":
164
- linkTestConcept().containment_0_1 = linkTestConcept("substitute")
165
- return waitForReceived(1)
154
+ linkTestConcept().replaceContainment_0_1With(linkTestConcept("substitute"))
155
+ return waitForReceivedMessages(1)
166
156
  case "DeleteContainment_0_1":
167
157
  linkTestConcept().containment_0_1 = undefined
168
- return waitForReceived(1)
158
+ return waitForReceivedMessages(1)
169
159
  case "AddContainment_0_1_Containment_0_1":
170
160
  linkTestConcept().containment_0_1!.containment_0_1 = linkTestConcept("containment_0_1_containment_0_1")
171
- return waitForReceived(1)
161
+ return waitForReceivedMessages(1)
172
162
  case "AddContainment_1_Containment_0_1":
173
163
  linkTestConcept().containment_1.containment_0_1 = linkTestConcept("containment_1_containment_0_1")
174
- return waitForReceived(1)
164
+ return waitForReceivedMessages(1)
175
165
  case "AddContainment_0_n":
176
166
  linkTestConcept().addContainment_0_n(linkTestConcept("containment_0_n_child0")); // (keep ;!)
177
167
  linkTestConcept().addContainment_0_n(linkTestConcept("containment_0_n_child1"))
178
- return waitForReceived(2)
168
+ return waitForReceivedMessages(2)
169
+ case "AddContainment_0_n_Containment_0_n": {
170
+ const outerChild = linkTestConcept("containment_0_n_child0")
171
+ outerChild.addContainment_0_n(linkTestConcept("containment_0_n_containment_0_n_child0"))
172
+ linkTestConcept().addContainment_0_n(outerChild)
173
+ return waitForReceivedMessages(1)
174
+ }
179
175
  case "AddContainment_1_n":
180
176
  linkTestConcept().addContainment_1_n(linkTestConcept("containment_1_n_child0")); // (keep ;!)
181
177
  linkTestConcept().addContainment_1_n(linkTestConcept("containment_1_n_child1"))
182
- return waitForReceived(2)
178
+ return waitForReceivedMessages(2)
183
179
  case "MoveAndReplaceChildFromOtherContainment_Single":
184
180
  linkTestConcept().containment_1.replaceContainment_0_1With(linkTestConcept().containment_0_1!.containment_0_1!)
185
- return waitForReceived(1)
181
+ return waitForReceivedMessages(1)
186
182
  case "MoveAndReplaceChildFromOtherContainmentInSameParent_Single":
187
183
  linkTestConcept().replaceContainment_1With(linkTestConcept().containment_0_1!)
188
- return waitForReceived(1)
184
+ return waitForReceivedMessages(1)
189
185
  case "MoveAndReplaceChildFromOtherContainment_Multiple":
190
- linkTestConcept().replaceContainment_1_nAtIndex(lastOf(linkTestConcept().containment_0_n), linkTestConcept().containment_1_n.length - 1)
191
- return waitForReceived(1)
186
+ if (linkTestConcept().containment_1_n.length === 0) {
187
+ throw new Error(`can't replace an item of an array with no items`)
188
+ }
189
+ linkTestConcept().replaceContainment_1_nAtIndex(
190
+ lastOfArray(lastOfArray(linkTestConcept().containment_0_n).containment_0_n),
191
+ linkTestConcept().containment_1_n.length - 1
192
+ )
193
+ return waitForReceivedMessages(1)
192
194
  case "MoveChildInSameContainment":
193
- linkTestConcept().addContainment_0_nAtIndex(lastOf(linkTestConcept().containment_0_n), 0)
194
- return waitForReceived(1)
195
+ linkTestConcept().addContainment_0_nAtIndex(lastOfArray(linkTestConcept().containment_0_n), 0)
196
+ // Note: this is effectively a move rather than an insert — hence the name of the task.
197
+ return waitForReceivedMessages(1)
195
198
  case "MoveChildFromOtherContainment_Single":
196
199
  linkTestConcept().containment_1 = linkTestConcept().containment_0_1!.containment_0_1!
197
- return waitForReceived(1)
200
+ return waitForReceivedMessages(1)
198
201
  case "MoveChildFromOtherContainment_Multiple":
199
- linkTestConcept().addContainment_1_nAtIndex(lastOf(linkTestConcept().containment_0_n).containment_0_n[0], 1)
200
- return waitForReceived(1)
202
+ linkTestConcept().addContainment_1_nAtIndex(lastOfArray(linkTestConcept().containment_0_n).containment_0_n[0], 1)
203
+ return waitForReceivedMessages(1)
201
204
  case "MoveChildFromOtherContainmentInSameParent_Single":
202
205
  linkTestConcept().containment_1 = linkTestConcept().containment_0_1!
203
- return waitForReceived(1)
206
+ return waitForReceivedMessages(1)
204
207
  case "MoveChildFromOtherContainmentInSameParent_Multiple":
205
- linkTestConcept().addContainment_1_nAtIndex(lastOf(linkTestConcept().containment_0_n), 1)
206
- return waitForReceived(1)
208
+ linkTestConcept().addContainment_1_nAtIndex(lastOfArray(linkTestConcept().containment_0_n), 1)
209
+ return waitForReceivedMessages(1)
207
210
  case "AddPartition":
208
211
  lionWebClient.addPartition(linkTestConcept("partition"))
209
- return waitForReceived(1)
212
+ return waitForReceivedMessages(1)
210
213
 
211
214
  default: {
212
- console.log(withStylesApplied("italic", "red")(`task "${task}" is unknown => ignored`))
215
+ console.log(genericWarning(`task "${task}" is unknown => ignored`))
213
216
  return Promise.resolve()
214
217
  }
215
218
  }
@@ -1,314 +0,0 @@
1
- import { Annotation, Classifier, Concept, Containment, Enumeration, EnumerationLiteral, Interface, Language, PrimitiveType, Property, Reference, SingleRef } from "@lionweb/core";
2
- import { LionWebId } from "@lionweb/json";
3
- import { ContainmentValueManager, DeltaHandler, ILanguageBase, INamed, INodeBase, NodeBase, NodeBaseFactory, Parentage, PropertyValueManager, ReferenceValueManager } from "@lionweb/class-core";
4
- export declare class ShapesBase implements ILanguageBase {
5
- private readonly _language;
6
- get language(): Language;
7
- readonly _Circle: Concept;
8
- get Circle(): Concept;
9
- private readonly _Circle_r;
10
- get Circle_r(): Property;
11
- private readonly _Circle_center;
12
- get Circle_center(): Containment;
13
- readonly _Coord: Concept;
14
- get Coord(): Concept;
15
- private readonly _Coord_x;
16
- get Coord_x(): Property;
17
- private readonly _Coord_y;
18
- get Coord_y(): Property;
19
- private readonly _Coord_z;
20
- get Coord_z(): Property;
21
- readonly _Geometry: Concept;
22
- get Geometry(): Concept;
23
- private readonly _Geometry_shapes;
24
- get Geometry_shapes(): Containment;
25
- private readonly _Geometry_documentation;
26
- get Geometry_documentation(): Containment;
27
- readonly _IShape: Interface;
28
- get IShape(): Interface;
29
- private readonly _IShape_uuid;
30
- get IShape_uuid(): Property;
31
- private readonly _IShape_fixpoints;
32
- get IShape_fixpoints(): Containment;
33
- readonly _Line: Concept;
34
- get Line(): Concept;
35
- private readonly _Line_start;
36
- get Line_start(): Containment;
37
- private readonly _Line_end;
38
- get Line_end(): Containment;
39
- readonly _OffsetDuplicate: Concept;
40
- get OffsetDuplicate(): Concept;
41
- private readonly _OffsetDuplicate_offset;
42
- get OffsetDuplicate_offset(): Containment;
43
- private readonly _OffsetDuplicate_source;
44
- get OffsetDuplicate_source(): Reference;
45
- private readonly _OffsetDuplicate_altSource;
46
- get OffsetDuplicate_altSource(): Reference;
47
- private readonly _OffsetDuplicate_docs;
48
- get OffsetDuplicate_docs(): Containment;
49
- private readonly _OffsetDuplicate_secretDocs;
50
- get OffsetDuplicate_secretDocs(): Containment;
51
- readonly _Shape: Concept;
52
- get Shape(): Concept;
53
- private readonly _Shape_shapeDocs;
54
- get Shape_shapeDocs(): Containment;
55
- readonly _CompositeShape: Concept;
56
- get CompositeShape(): Concept;
57
- private readonly _CompositeShape_parts;
58
- get CompositeShape_parts(): Containment;
59
- private readonly _CompositeShape_disabledParts;
60
- get CompositeShape_disabledParts(): Containment;
61
- private readonly _CompositeShape_evilPart;
62
- get CompositeShape_evilPart(): Containment;
63
- readonly _ReferenceGeometry: Concept;
64
- get ReferenceGeometry(): Concept;
65
- private readonly _ReferenceGeometry_shapes;
66
- get ReferenceGeometry_shapes(): Reference;
67
- readonly _Documentation: Annotation;
68
- get Documentation(): Annotation;
69
- private readonly _Documentation_text;
70
- get Documentation_text(): Property;
71
- private readonly _Documentation_technical;
72
- get Documentation_technical(): Property;
73
- readonly _BillOfMaterials: Annotation;
74
- get BillOfMaterials(): Annotation;
75
- private readonly _BillOfMaterials_materials;
76
- get BillOfMaterials_materials(): Reference;
77
- private readonly _BillOfMaterials_groups;
78
- get BillOfMaterials_groups(): Containment;
79
- private readonly _BillOfMaterials_altGroups;
80
- get BillOfMaterials_altGroups(): Containment;
81
- private readonly _BillOfMaterials_defaultGroup;
82
- get BillOfMaterials_defaultGroup(): Containment;
83
- readonly _MaterialGroup: Concept;
84
- get MaterialGroup(): Concept;
85
- private readonly _MaterialGroup_matterState;
86
- get MaterialGroup_matterState(): Property;
87
- private readonly _MaterialGroup_materials;
88
- get MaterialGroup_materials(): Reference;
89
- private readonly _MaterialGroup_defaultShape;
90
- get MaterialGroup_defaultShape(): Containment;
91
- readonly _MatterState: Enumeration;
92
- get MatterState(): Enumeration;
93
- private readonly _MatterState_solid;
94
- get MatterState_solid(): EnumerationLiteral;
95
- private readonly _MatterState_liquid;
96
- get MatterState_liquid(): EnumerationLiteral;
97
- private readonly _MatterState_gas;
98
- get MatterState_gas(): EnumerationLiteral;
99
- readonly _Time: PrimitiveType;
100
- get Time(): PrimitiveType;
101
- private _wiredUp;
102
- private ensureWiredUp;
103
- factory(handleDelta?: DeltaHandler): NodeBaseFactory;
104
- enumLiteralFrom<EnumType>(enumerationLiteral: EnumerationLiteral): EnumType;
105
- static readonly INSTANCE: ShapesBase;
106
- }
107
- export declare abstract class Shape extends NodeBase implements INamed, IShape {
108
- private readonly _shapeDocs;
109
- get shapeDocs(): Documentation | undefined;
110
- set shapeDocs(newValue: Documentation | undefined);
111
- replaceShapeDocsWith(newValue: Documentation): void;
112
- private readonly _name;
113
- get name(): string;
114
- set name(newValue: string);
115
- private readonly _uuid;
116
- get uuid(): string;
117
- set uuid(newValue: string);
118
- private readonly _fixpoints;
119
- get fixpoints(): Coord[];
120
- addFixpoints(newValue: Coord): void;
121
- removeFixpoints(valueToRemove: Coord): void;
122
- addFixpointsAtIndex(newValue: Coord, index: number): void;
123
- moveFixpoints(oldIndex: number, newIndex: number): void;
124
- replaceFixpointsAtIndex(movedChild: Coord, newIndex: number): void;
125
- protected constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
126
- getPropertyValueManager(property: Property): PropertyValueManager<unknown>;
127
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
128
- }
129
- export declare class Circle extends Shape {
130
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): Circle;
131
- private readonly _r;
132
- get r(): number;
133
- set r(newValue: number);
134
- private readonly _center;
135
- get center(): Coord;
136
- set center(newValue: Coord);
137
- replaceCenterWith(newValue: Coord): void;
138
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
139
- getPropertyValueManager(property: Property): PropertyValueManager<unknown>;
140
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
141
- }
142
- export declare class Coord extends NodeBase {
143
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): Coord;
144
- private readonly _x;
145
- get x(): number;
146
- set x(newValue: number);
147
- private readonly _y;
148
- get y(): number;
149
- set y(newValue: number);
150
- private readonly _z;
151
- get z(): number;
152
- set z(newValue: number);
153
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
154
- getPropertyValueManager(property: Property): PropertyValueManager<unknown>;
155
- }
156
- export declare class Geometry extends NodeBase {
157
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): Geometry;
158
- private readonly _shapes;
159
- get shapes(): IShape[];
160
- addShapes(newValue: IShape): void;
161
- removeShapes(valueToRemove: IShape): void;
162
- addShapesAtIndex(newValue: IShape, index: number): void;
163
- moveShapes(oldIndex: number, newIndex: number): void;
164
- replaceShapesAtIndex(movedChild: IShape, newIndex: number): void;
165
- private readonly _documentation;
166
- get documentation(): Documentation | undefined;
167
- set documentation(newValue: Documentation | undefined);
168
- replaceDocumentationWith(newValue: Documentation): void;
169
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
170
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
171
- }
172
- export interface IShape extends INodeBase {
173
- uuid: string;
174
- fixpoints: Coord[];
175
- }
176
- export declare class Line extends Shape implements INamed {
177
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): Line;
178
- private readonly _start;
179
- get start(): Coord;
180
- set start(newValue: Coord);
181
- replaceStartWith(newValue: Coord): void;
182
- private readonly _end;
183
- get end(): Coord;
184
- set end(newValue: Coord);
185
- replaceEndWith(newValue: Coord): void;
186
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
187
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
188
- }
189
- export declare class OffsetDuplicate extends Shape {
190
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): OffsetDuplicate;
191
- private readonly _offset;
192
- get offset(): Coord;
193
- set offset(newValue: Coord);
194
- replaceOffsetWith(newValue: Coord): void;
195
- private readonly _source;
196
- get source(): SingleRef<Shape>;
197
- set source(newValue: SingleRef<Shape>);
198
- private readonly _altSource;
199
- get altSource(): SingleRef<Shape> | undefined;
200
- set altSource(newValue: SingleRef<Shape> | undefined);
201
- private readonly _docs;
202
- get docs(): Documentation | undefined;
203
- set docs(newValue: Documentation | undefined);
204
- replaceDocsWith(newValue: Documentation): void;
205
- private readonly _secretDocs;
206
- get secretDocs(): Documentation | undefined;
207
- set secretDocs(newValue: Documentation | undefined);
208
- replaceSecretDocsWith(newValue: Documentation): void;
209
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
210
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
211
- getReferenceValueManager(reference: Reference): ReferenceValueManager<INodeBase>;
212
- }
213
- export declare class CompositeShape extends Shape {
214
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): CompositeShape;
215
- private readonly _parts;
216
- get parts(): IShape[];
217
- addParts(newValue: IShape): void;
218
- removeParts(valueToRemove: IShape): void;
219
- addPartsAtIndex(newValue: IShape, index: number): void;
220
- moveParts(oldIndex: number, newIndex: number): void;
221
- replacePartsAtIndex(movedChild: IShape, newIndex: number): void;
222
- private readonly _disabledParts;
223
- get disabledParts(): IShape[];
224
- addDisabledParts(newValue: IShape): void;
225
- removeDisabledParts(valueToRemove: IShape): void;
226
- addDisabledPartsAtIndex(newValue: IShape, index: number): void;
227
- moveDisabledParts(oldIndex: number, newIndex: number): void;
228
- replaceDisabledPartsAtIndex(movedChild: IShape, newIndex: number): void;
229
- private readonly _evilPart;
230
- get evilPart(): IShape;
231
- set evilPart(newValue: IShape);
232
- replaceEvilPartWith(newValue: IShape): void;
233
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
234
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
235
- }
236
- export declare class ReferenceGeometry extends NodeBase {
237
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): ReferenceGeometry;
238
- private readonly _shapes;
239
- get shapes(): SingleRef<IShape>[];
240
- addShapes(newValue: IShape): void;
241
- removeShapes(valueToRemove: IShape): void;
242
- addShapesAtIndex(newValue: IShape, index: number): void;
243
- moveShapes(oldIndex: number, newIndex: number): void;
244
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
245
- getReferenceValueManager(reference: Reference): ReferenceValueManager<INodeBase>;
246
- }
247
- export declare class Documentation extends NodeBase {
248
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): Documentation;
249
- private readonly _text;
250
- get text(): string | undefined;
251
- set text(newValue: string | undefined);
252
- private readonly _technical;
253
- get technical(): boolean | undefined;
254
- set technical(newValue: boolean | undefined);
255
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
256
- getPropertyValueManager(property: Property): PropertyValueManager<unknown>;
257
- }
258
- export declare class BillOfMaterials extends NodeBase {
259
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): BillOfMaterials;
260
- private readonly _materials;
261
- get materials(): SingleRef<IShape>[];
262
- addMaterials(newValue: IShape): void;
263
- removeMaterials(valueToRemove: IShape): void;
264
- addMaterialsAtIndex(newValue: IShape, index: number): void;
265
- moveMaterials(oldIndex: number, newIndex: number): void;
266
- private readonly _groups;
267
- get groups(): MaterialGroup[];
268
- addGroups(newValue: MaterialGroup): void;
269
- removeGroups(valueToRemove: MaterialGroup): void;
270
- addGroupsAtIndex(newValue: MaterialGroup, index: number): void;
271
- moveGroups(oldIndex: number, newIndex: number): void;
272
- replaceGroupsAtIndex(movedChild: MaterialGroup, newIndex: number): void;
273
- private readonly _altGroups;
274
- get altGroups(): MaterialGroup[];
275
- addAltGroups(newValue: MaterialGroup): void;
276
- removeAltGroups(valueToRemove: MaterialGroup): void;
277
- addAltGroupsAtIndex(newValue: MaterialGroup, index: number): void;
278
- moveAltGroups(oldIndex: number, newIndex: number): void;
279
- replaceAltGroupsAtIndex(movedChild: MaterialGroup, newIndex: number): void;
280
- private readonly _defaultGroup;
281
- get defaultGroup(): MaterialGroup | undefined;
282
- set defaultGroup(newValue: MaterialGroup | undefined);
283
- replaceDefaultGroupWith(newValue: MaterialGroup): void;
284
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
285
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
286
- getReferenceValueManager(reference: Reference): ReferenceValueManager<INodeBase>;
287
- }
288
- export declare class MaterialGroup extends NodeBase {
289
- static create(id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage): MaterialGroup;
290
- private readonly _matterState;
291
- get matterState(): MatterState | undefined;
292
- set matterState(newValue: MatterState | undefined);
293
- private readonly _materials;
294
- get materials(): SingleRef<IShape>[];
295
- addMaterials(newValue: IShape): void;
296
- removeMaterials(valueToRemove: IShape): void;
297
- addMaterialsAtIndex(newValue: IShape, index: number): void;
298
- moveMaterials(oldIndex: number, newIndex: number): void;
299
- private readonly _defaultShape;
300
- get defaultShape(): IShape | undefined;
301
- set defaultShape(newValue: IShape | undefined);
302
- replaceDefaultShapeWith(newValue: IShape): void;
303
- constructor(classifier: Classifier, id: LionWebId, handleDelta?: DeltaHandler, parentInfo?: Parentage);
304
- getPropertyValueManager(property: Property): PropertyValueManager<unknown>;
305
- getContainmentValueManager(containment: Containment): ContainmentValueManager<INodeBase>;
306
- getReferenceValueManager(reference: Reference): ReferenceValueManager<INodeBase>;
307
- }
308
- export declare enum MatterState {
309
- solid = "key-solid",
310
- liquid = "key-liquid",
311
- gas = "key-gas"
312
- }
313
- export type Time = string;
314
- //# sourceMappingURL=Shapes.g.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Shapes.g.d.ts","sourceRoot":"","sources":["../../src/gen/Shapes.g.ts"],"names":[],"mappings":"AA6BA,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,SAAS,EACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,MAAM,EACN,SAAS,EAET,QAAQ,EACR,eAAe,EAMf,SAAS,EACT,oBAAoB,EACpB,qBAAqB,EAMxB,MAAM,qBAAqB,CAAC;AAG7B,qBAAa,UAAW,YAAW,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoE;IAC9F,IAAI,QAAQ,IAAI,QAAQ,CAGvB;IAED,SAAgB,OAAO,UAA2E;IAClG,IAAI,MAAM,IAAI,OAAO,CAGpB;IACD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoD;IAC9E,IAAI,QAAQ,IAAI,QAAQ,CAGvB;IACD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsE;IACrG,IAAI,aAAa,IAAI,WAAW,CAG/B;IAED,SAAgB,MAAM,UAAwE;IAC9F,IAAI,KAAK,IAAI,OAAO,CAGnB;IACD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmD;IAC5E,IAAI,OAAO,IAAI,QAAQ,CAGtB;IACD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmD;IAC5E,IAAI,OAAO,IAAI,QAAQ,CAGtB;IACD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmD;IAC5E,IAAI,OAAO,IAAI,QAAQ,CAGtB;IAED,SAAgB,SAAS,UAA+F;IACxH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IACD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkG;IACnI,IAAI,eAAe,IAAI,WAAW,CAGjC;IACD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0G;IAClJ,IAAI,sBAAsB,IAAI,WAAW,CAGxC;IAED,SAAgB,OAAO,YAAsE;IAC7F,IAAI,MAAM,IAAI,SAAS,CAGtB;IACD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6D;IAC1F,IAAI,WAAW,IAAI,QAAQ,CAG1B;IACD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAyG;IAC3I,IAAI,gBAAgB,IAAI,WAAW,CAGlC;IAED,SAAgB,KAAK,UAAqE;IAC1F,IAAI,IAAI,IAAI,OAAO,CAGlB;IACD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiE;IAC7F,IAAI,UAAU,IAAI,WAAW,CAG5B;IACD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2D;IACrF,IAAI,QAAQ,IAAI,WAAW,CAG1B;IAED,SAAgB,gBAAgB,UAAsG;IACtI,IAAI,eAAe,IAAI,OAAO,CAG7B;IACD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA+E;IACvH,IAAI,sBAAsB,IAAI,WAAW,CAGxC;IACD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA6E;IACrH,IAAI,sBAAsB,IAAI,SAAS,CAGtC;IACD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAqG;IAChJ,IAAI,yBAAyB,IAAI,SAAS,CAGzC;IACD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsF;IAC5H,IAAI,oBAAoB,IAAI,WAAW,CAGtC;IACD,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAA0G;IACtJ,IAAI,0BAA0B,IAAI,WAAW,CAG5C;IAED,SAAgB,MAAM,UAAuE;IAC7F,IAAI,KAAK,IAAI,OAAO,CAGnB;IACD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6F;IAC9H,IAAI,eAAe,IAAI,WAAW,CAGjC;IAED,SAAgB,eAAe,UAAmG;IAClI,IAAI,cAAc,IAAI,OAAO,CAG5B;IACD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwF;IAC9H,IAAI,oBAAoB,IAAI,WAAW,CAGtC;IACD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAkH;IAChK,IAAI,4BAA4B,IAAI,WAAW,CAG9C;IACD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAsF;IAC/H,IAAI,uBAAuB,IAAI,WAAW,CAGzC;IAED,SAAgB,kBAAkB,UAA0H;IAC5J,IAAI,iBAAiB,IAAI,OAAO,CAG/B;IACD,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA8H;IACxK,IAAI,wBAAwB,IAAI,SAAS,CAGxC;IAED,SAAgB,cAAc,aAA4F;IAC1H,IAAI,aAAa,IAAI,UAAU,CAG9B;IACD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAiF;IACrH,IAAI,kBAAkB,IAAI,QAAQ,CAGjC;IACD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAgG;IACzI,IAAI,uBAAuB,IAAI,QAAQ,CAGtC;IAED,SAAgB,gBAAgB,aAAkG;IAClI,IAAI,eAAe,IAAI,UAAU,CAGhC;IACD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAgH;IAC3J,IAAI,yBAAyB,IAAI,SAAS,CAGzC;IACD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAyG;IACjJ,IAAI,sBAAsB,IAAI,WAAW,CAGxC;IACD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAoH;IAC/J,IAAI,yBAAyB,IAAI,WAAW,CAG3C;IACD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAgH;IAC9J,IAAI,4BAA4B,IAAI,WAAW,CAG9C;IAED,SAAgB,cAAc,UAAgG;IAC9H,IAAI,aAAa,IAAI,OAAO,CAG3B;IACD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAwG;IACnJ,IAAI,yBAAyB,IAAI,QAAQ,CAGxC;IACD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA6G;IACtJ,IAAI,uBAAuB,IAAI,SAAS,CAGvC;IACD,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAA8G;IAC1J,IAAI,0BAA0B,IAAI,WAAW,CAG5C;IAED,SAAgB,YAAY,cAAuF;IACnH,IAAI,WAAW,IAAI,WAAW,CAG7B;IACD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA+E;IAClH,IAAI,iBAAiB,IAAI,kBAAkB,CAG1C;IACD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkF;IACtH,IAAI,kBAAkB,IAAI,kBAAkB,CAG3C;IACD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyE;IAC1G,IAAI,eAAe,IAAI,kBAAkB,CAGxC;IAED,SAAgB,KAAK,gBAAoE;IACzF,IAAI,IAAI,IAAI,aAAa,CAGxB;IAED,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,aAAa;IAyDrB,OAAO,CAAC,WAAW,CAAC,EAAE,YAAY,GAAG,eAAe;IAqBpD,eAAe,CAAC,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,GAAG,QAAQ;IAS3E,gBAAuB,QAAQ,aAAoB;CACtD;AAGD,8BAAsB,KAAM,SAAQ,QAAS,YAAW,MAAM,EAAE,MAAM;IAElE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuD;IAClF,IAAI,SAAS,IAAI,aAAa,GAAG,SAAS,CAEzC;IACD,IAAI,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAEhD;IACD,oBAAoB,CAAC,QAAQ,EAAE,aAAa;IAI5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAC7D,IAAI,IAAI,IAAI,MAAM,CAEjB;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,EAExB;IAED,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAC7D,IAAI,IAAI,IAAI,MAAM,CAEjB;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,EAExB;IAED,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8C;IACzE,IAAI,SAAS,IAAI,KAAK,EAAE,CAEvB;IACD,YAAY,CAAC,QAAQ,EAAE,KAAK;IAG5B,eAAe,CAAC,aAAa,EAAE,KAAK;IAGpC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IAGlD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAGhD,uBAAuB,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM;IAI3D,SAAS,aAAa,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAQ/G,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;IAQ1E,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;CAO3F;AAED,qBAAa,MAAO,SAAQ,KAAK;IAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM;IAIxF,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAuC;IAC1D,IAAI,CAAC,IAAI,MAAM,CAEd;IACD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAErB;IAED,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,IAAI,MAAM,IAAI,KAAK,CAElB;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,EAEzB;IACD,iBAAiB,CAAC,QAAQ,EAAE,KAAK;gBAId,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAM5G,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;IAO1E,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;CAM3F;AAED,qBAAa,KAAM,SAAQ,QAAQ;IAC/B,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK;IAIvF,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAuC;IAC1D,IAAI,CAAC,IAAI,MAAM,CAEd;IACD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAErB;IAED,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAuC;IAC1D,IAAI,CAAC,IAAI,MAAM,CAEd;IACD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAErB;IAED,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAuC;IAC1D,IAAI,CAAC,IAAI,MAAM,CAEd;IACD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAErB;gBAEkB,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAO5G,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;CAQ7E;AAED,qBAAa,QAAS,SAAQ,QAAQ;IAClC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ;IAI1F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,IAAI,MAAM,IAAI,MAAM,EAAE,CAErB;IACD,SAAS,CAAC,QAAQ,EAAE,MAAM;IAG1B,YAAY,CAAC,aAAa,EAAE,MAAM;IAGlC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGhD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAG7C,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIzD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuD;IACtF,IAAI,aAAa,IAAI,aAAa,GAAG,SAAS,CAE7C;IACD,IAAI,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAEpD;IACD,wBAAwB,CAAC,QAAQ,EAAE,aAAa;gBAI7B,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAM5G,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;CAO3F;AAED,MAAM,WAAW,MAAO,SAAQ,SAAS;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,KAAK,EAAE,CAAC;CACtB;AAED,qBAAa,IAAK,SAAQ,KAAM,YAAW,MAAM;IAC7C,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,IAAI;IAItF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;IACtE,IAAI,KAAK,IAAI,KAAK,CAEjB;IACD,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,EAExB;IACD,gBAAgB,CAAC,QAAQ,EAAE,KAAK;IAIhC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA+C;IACpE,IAAI,GAAG,IAAI,KAAK,CAEf;IACD,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,EAEtB;IACD,cAAc,CAAC,QAAQ,EAAE,KAAK;gBAIX,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAM5G,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;CAO3F;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACtC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,eAAe;IAIjG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,IAAI,MAAM,IAAI,KAAK,CAElB;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,EAEzB;IACD,iBAAiB,CAAC,QAAQ,EAAE,KAAK;IAIjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,IAAI,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,CAE7B;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,EAEpC;IAED,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6C;IACxE,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAE5C;IACD,IAAI,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,EAEnD;IAED,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuD;IAC7E,IAAI,IAAI,IAAI,aAAa,GAAG,SAAS,CAEpC;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAE3C;IACD,eAAe,CAAC,QAAQ,EAAE,aAAa;IAIvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuD;IACnF,IAAI,UAAU,IAAI,aAAa,GAAG,SAAS,CAE1C;IACD,IAAI,UAAU,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAEjD;IACD,qBAAqB,CAAC,QAAQ,EAAE,aAAa;gBAI1B,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAS5G,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;IASxF,wBAAwB,CAAC,SAAS,EAAE,SAAS,GAAG,qBAAqB,CAAC,SAAS,CAAC;CAOnF;AAED,qBAAa,cAAe,SAAQ,KAAK;IACrC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,cAAc;IAIhG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;IACtE,IAAI,KAAK,IAAI,MAAM,EAAE,CAEpB;IACD,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAGzB,WAAW,CAAC,aAAa,EAAE,MAAM;IAGjC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAG/C,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAG5C,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIxD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;IAC9E,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IACD,gBAAgB,CAAC,QAAQ,EAAE,MAAM;IAGjC,mBAAmB,CAAC,aAAa,EAAE,MAAM;IAGzC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGvD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAGpD,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIhE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgD;IAC1E,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IACD,mBAAmB,CAAC,QAAQ,EAAE,MAAM;gBAIjB,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAO5G,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;CAQ3F;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC3C,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,iBAAiB;IAInG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,IAAI,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAEhC;IACD,SAAS,CAAC,QAAQ,EAAE,MAAM;IAG1B,YAAY,CAAC,aAAa,EAAE,MAAM;IAGlC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGhD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;gBAI1B,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAK5G,wBAAwB,CAAC,SAAS,EAAE,SAAS,GAAG,qBAAqB,CAAC,SAAS,CAAC;CAMnF;AAED,qBAAa,aAAc,SAAQ,QAAQ;IACvC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,aAAa;IAI/F,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAC7D,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAEpC;IAED,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,IAAI,SAAS,IAAI,OAAO,GAAG,SAAS,CAEnC;IACD,IAAI,SAAS,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,EAE1C;gBAEkB,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAM5G,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;CAO7E;AAED,qBAAa,eAAgB,SAAQ,QAAQ;IACzC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,eAAe;IAIjG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6C;IACxE,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAEnC;IACD,YAAY,CAAC,QAAQ,EAAE,MAAM;IAG7B,eAAe,CAAC,aAAa,EAAE,MAAM;IAGrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGnD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIhD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsD;IAC9E,IAAI,MAAM,IAAI,aAAa,EAAE,CAE5B;IACD,SAAS,CAAC,QAAQ,EAAE,aAAa;IAGjC,YAAY,CAAC,aAAa,EAAE,aAAa;IAGzC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM;IAGvD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAG7C,oBAAoB,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM;IAIhE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsD;IACjF,IAAI,SAAS,IAAI,aAAa,EAAE,CAE/B;IACD,YAAY,CAAC,QAAQ,EAAE,aAAa;IAGpC,eAAe,CAAC,aAAa,EAAE,aAAa;IAG5C,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM;IAG1D,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAGhD,uBAAuB,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM;IAInE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuD;IACrF,IAAI,YAAY,IAAI,aAAa,GAAG,SAAS,CAE5C;IACD,IAAI,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAEnD;IACD,uBAAuB,CAAC,QAAQ,EAAE,aAAa;gBAI5B,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAQ5G,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;IASxF,wBAAwB,CAAC,SAAS,EAAE,SAAS,GAAG,qBAAqB,CAAC,SAAS,CAAC;CAMnF;AAED,qBAAa,aAAc,SAAQ,QAAQ;IACvC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,aAAa;IAI/F,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4C;IACzE,IAAI,WAAW,IAAI,WAAW,GAAG,SAAS,CAEzC;IACD,IAAI,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,EAEhD;IAED,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6C;IACxE,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAEnC;IACD,YAAY,CAAC,QAAQ,EAAE,MAAM;IAG7B,eAAe,CAAC,aAAa,EAAE,MAAM;IAGrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGnD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIhD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgD;IAC9E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IACD,IAAI,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAE5C;IACD,uBAAuB,CAAC,QAAQ,EAAE,MAAM;gBAIrB,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS;IAO5G,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;IAO1E,0BAA0B,CAAC,WAAW,EAAE,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC;IAOxF,wBAAwB,CAAC,SAAS,EAAE,SAAS,GAAG,qBAAqB,CAAC,SAAS,CAAC;CAMnF;AAED,oBAAY,WAAW;IACnB,KAAK,cAAc;IACnB,MAAM,eAAe;IACrB,GAAG,YAAY;CAClB;AAED,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC"}