@lionweb/class-core 0.7.0-beta.13 → 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/CHANGELOG.md +8 -1
- package/dist/base-types.d.ts +0 -4
- package/dist/base-types.d.ts.map +1 -1
- package/dist/base-types.js +0 -25
- package/dist/base-types.js.map +1 -1
- package/dist/deltas/inverters.d.ts.map +1 -1
- package/dist/deltas/inverters.js +33 -9
- package/dist/deltas/inverters.js.map +1 -1
- package/dist/deltas/receivers.d.ts.map +1 -1
- package/dist/deltas/receivers.js +2 -1
- package/dist/deltas/receivers.js.map +1 -1
- package/dist/deserializer.d.ts.map +1 -1
- package/dist/deserializer.js +3 -14
- package/dist/deserializer.js.map +1 -1
- package/dist/factory.d.ts +8 -0
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +25 -16
- package/dist/factory.js.map +1 -1
- package/dist/id-mapping.d.ts +21 -3
- package/dist/id-mapping.d.ts.map +1 -1
- package/dist/id-mapping.js +37 -17
- package/dist/id-mapping.js.map +1 -1
- package/dist/textualizer.js +1 -1
- package/dist/textualizer.js.map +1 -1
- package/dist/value-managers/annotations.d.ts.map +1 -1
- package/dist/value-managers/annotations.js +1 -2
- package/dist/value-managers/annotations.js.map +1 -1
- package/dist/value-managers/containments.d.ts +2 -2
- package/dist/value-managers/containments.d.ts.map +1 -1
- package/dist/value-managers/containments.js +89 -27
- package/dist/value-managers/containments.js.map +1 -1
- package/dist/value-managers/references.js +2 -2
- package/package.json +34 -34
- package/src/base-types.ts +0 -25
- package/src/deltas/inverters.ts +33 -9
- package/src/deltas/receivers.ts +2 -1
- package/src/deserializer.ts +3 -19
- package/src/factory.ts +30 -16
- package/src/id-mapping.ts +26 -5
- package/src/textualizer.ts +1 -1
- package/src/value-managers/annotations.ts +2 -2
- package/src/value-managers/containments.ts +87 -27
- package/src/value-managers/references.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/value-managers/annotations.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/value-managers/annotations.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ export declare abstract class SingleContainmentValueManager<T extends INodeBase>
|
|
|
21
21
|
isSet(): boolean;
|
|
22
22
|
setDirectly(newChild: T | undefined): void;
|
|
23
23
|
addDirectly(newChild: T): void;
|
|
24
|
-
replaceWith(
|
|
24
|
+
replaceWith(movedChild: T): void;
|
|
25
25
|
}
|
|
26
26
|
export declare class OptionalSingleContainmentValueManager<T extends INodeBase> extends SingleContainmentValueManager<T> {
|
|
27
27
|
constructor(containment: Containment, container: INodeBase);
|
|
@@ -42,7 +42,7 @@ export declare abstract class MultiContainmentValueManager<T extends INodeBase>
|
|
|
42
42
|
addDirectly(newChild: T): void;
|
|
43
43
|
add(newChild: T): void;
|
|
44
44
|
insertAtIndexDirectly(newChild: T, index: number): void;
|
|
45
|
-
insertAtIndex(newChild: T,
|
|
45
|
+
insertAtIndex(newChild: T, newIndex: number): void;
|
|
46
46
|
removeDirectly(childToRemove: T): number;
|
|
47
47
|
removeAtIndexDirectly(index: number): void;
|
|
48
48
|
moveDirectly(oldIndex: number, newIndex: number): T | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containments.d.ts","sourceRoot":"","sources":["../../src/value-managers/containments.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAG3C,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"containments.d.ts","sourceRoot":"","sources":["../../src/value-managers/containments.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,8 +49,7 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
|
|
|
49
49
|
done = true;
|
|
50
50
|
};
|
|
51
51
|
import { action, observable } from "mobx";
|
|
52
|
-
import {
|
|
53
|
-
import { ChildAddedDelta, ChildDeletedDelta, ChildMovedAndReplacedFromOtherContainmentInSameParentDelta, ChildMovedAndReplacedInSameContainmentDelta, ChildMovedFromOtherContainmentDelta, ChildMovedInSameContainmentDelta, ChildReplacedDelta } from "../deltas/index.js";
|
|
52
|
+
import { ChildAddedDelta, ChildDeletedDelta, ChildMovedAndReplacedFromOtherContainmentDelta, ChildMovedAndReplacedFromOtherContainmentInSameParentDelta, ChildMovedAndReplacedInSameContainmentDelta, ChildMovedFromOtherContainmentDelta, ChildMovedFromOtherContainmentInSameParentDelta, ChildMovedInSameContainmentDelta, ChildReplacedDelta } from "../deltas/index.js";
|
|
54
53
|
import { checkIndex, FeatureValueManager } from "./base.js";
|
|
55
54
|
/**
|
|
56
55
|
* An instance manages the value of a particular containment feature on a particular instance of a classifier.
|
|
@@ -89,26 +88,43 @@ let SingleContainmentValueManager = (() => {
|
|
|
89
88
|
}
|
|
90
89
|
this.child.set(newChild);
|
|
91
90
|
}
|
|
92
|
-
replaceWith(
|
|
93
|
-
const
|
|
94
|
-
if (
|
|
91
|
+
replaceWith(movedChild) {
|
|
92
|
+
const replacedChild = this.getDirectly();
|
|
93
|
+
if (replacedChild === undefined) {
|
|
95
94
|
// not a proper replace, but an add-set => delegate to regular setter (— unfortunately, through necessarily “unfolding the hierarchy”):
|
|
96
95
|
if (this instanceof OptionalSingleContainmentValueManager) {
|
|
97
|
-
this.set(
|
|
96
|
+
this.set(movedChild);
|
|
98
97
|
}
|
|
99
98
|
if (this instanceof RequiredSingleContainmentValueManager) {
|
|
100
|
-
this.set(
|
|
99
|
+
this.set(movedChild);
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
102
|
else {
|
|
104
|
-
if (
|
|
103
|
+
if (replacedChild === movedChild) {
|
|
105
104
|
// do nothing: nothing's changed
|
|
106
105
|
}
|
|
107
106
|
else {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
107
|
+
if (movedChild.parent === undefined) {
|
|
108
|
+
this.emitDelta(() => new ChildReplacedDelta(this.container, this.feature, 0, replacedChild, movedChild));
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
if (movedChild.parent === this.container) {
|
|
112
|
+
if (movedChild.containment === this.containment) {
|
|
113
|
+
this.emitDelta(() => new ChildMovedAndReplacedInSameContainmentDelta(this.container, this.containment, 0, 0, movedChild, replacedChild));
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
const oldIndex = removeFromContainment(replacedChild);
|
|
117
|
+
this.emitDelta(() => new ChildMovedAndReplacedFromOtherContainmentInSameParentDelta(this.container, movedChild.containment, oldIndex, this.containment, 0, movedChild, replacedChild));
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
const oldIndex = removeFromContainment(replacedChild);
|
|
122
|
+
this.emitDelta(() => new ChildMovedAndReplacedFromOtherContainmentDelta(this.container, this.containment, 0, movedChild, movedChild.parent, movedChild.containment, oldIndex, replacedChild));
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
this.setDirectly(movedChild);
|
|
126
|
+
movedChild.attachTo(this.container, this.containment);
|
|
127
|
+
replacedChild.detach();
|
|
112
128
|
}
|
|
113
129
|
}
|
|
114
130
|
}
|
|
@@ -149,7 +165,7 @@ let OptionalSingleContainmentValueManager = (() => {
|
|
|
149
165
|
else {
|
|
150
166
|
if (newChild.parent && newChild.containment) {
|
|
151
167
|
const oldParent = newChild.parent;
|
|
152
|
-
|
|
168
|
+
removeFromContainment(newChild);
|
|
153
169
|
this.emitDelta(() => new ChildMovedFromOtherContainmentDelta(oldParent, newChild.containment, 0, this.container, this.feature, 0, newChild));
|
|
154
170
|
}
|
|
155
171
|
else {
|
|
@@ -170,13 +186,14 @@ let OptionalSingleContainmentValueManager = (() => {
|
|
|
170
186
|
// do nothing: nothing's changed
|
|
171
187
|
}
|
|
172
188
|
else {
|
|
189
|
+
// FIXME this could emit 2 deltas where it should be a single ChildReplaced-delta
|
|
173
190
|
if (oldChild.parent && oldChild.containment && oldChild.parent === this.container && oldChild.containment === this.feature) {
|
|
174
191
|
// FIXME oldChild.parent COULD be this.container
|
|
175
192
|
this.emitDelta(() => new ChildDeletedDelta(this.container, this.feature, 0, oldChild));
|
|
176
193
|
}
|
|
177
194
|
oldChild.detach();
|
|
178
195
|
if (newChild.parent && newChild.containment) {
|
|
179
|
-
|
|
196
|
+
removeFromContainment(newChild);
|
|
180
197
|
}
|
|
181
198
|
this.setDirectly(newChild);
|
|
182
199
|
newChild.attachTo(this.container, this.feature);
|
|
@@ -222,7 +239,7 @@ let RequiredSingleContainmentValueManager = (() => {
|
|
|
222
239
|
else {
|
|
223
240
|
if (newChild.parent && newChild.containment) {
|
|
224
241
|
const oldParent = newChild.parent;
|
|
225
|
-
|
|
242
|
+
removeFromContainment(newChild);
|
|
226
243
|
this.emitDelta(() => new ChildMovedFromOtherContainmentDelta(oldParent, newChild.containment, 0, this.container, this.feature, 0, newChild));
|
|
227
244
|
}
|
|
228
245
|
else {
|
|
@@ -247,7 +264,7 @@ let RequiredSingleContainmentValueManager = (() => {
|
|
|
247
264
|
}
|
|
248
265
|
oldChild.detach();
|
|
249
266
|
if (newChild.parent && newChild.containment) {
|
|
250
|
-
|
|
267
|
+
removeFromContainment(newChild);
|
|
251
268
|
}
|
|
252
269
|
this.setDirectly(newChild);
|
|
253
270
|
newChild.attachTo(this.container, this.feature);
|
|
@@ -304,17 +321,34 @@ let MultiContainmentValueManager = (() => {
|
|
|
304
321
|
checkIndex(index, this.children.length, true);
|
|
305
322
|
this.children.splice(index, 0, newChild);
|
|
306
323
|
}
|
|
307
|
-
insertAtIndex(newChild,
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
324
|
+
insertAtIndex(newChild, newIndex) {
|
|
325
|
+
if (newChild.parent === undefined) {
|
|
326
|
+
this.insertAtIndexDirectly(newChild, newIndex);
|
|
327
|
+
newChild.attachTo(this.container, this.containment);
|
|
328
|
+
this.emitDelta(() => new ChildAddedDelta(this.container, this.containment, newIndex, newChild));
|
|
311
329
|
}
|
|
312
330
|
else {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
331
|
+
if (newChild.parent === this.container) {
|
|
332
|
+
if (newChild.containment === this.containment) {
|
|
333
|
+
const oldIndex = this.children.indexOf(newChild);
|
|
334
|
+
this.moveDirectly(oldIndex, newIndex);
|
|
335
|
+
this.emitDelta(() => new ChildMovedInSameContainmentDelta(this.container, this.containment, oldIndex, newIndex, newChild));
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
const oldIndex = removeFromContainment(newChild);
|
|
339
|
+
checkIndex(newIndex, this.children.length, true);
|
|
340
|
+
this.insertAtIndexDirectly(newChild, newIndex);
|
|
341
|
+
this.emitDelta(() => new ChildMovedFromOtherContainmentInSameParentDelta(this.container, newChild.containment, oldIndex, newChild, this.containment, newIndex));
|
|
342
|
+
newChild.attachTo(this.container, this.containment);
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
const oldIndex = removeFromContainment(newChild);
|
|
347
|
+
this.insertAtIndexDirectly(newChild, newIndex);
|
|
348
|
+
this.emitDelta(() => new ChildMovedFromOtherContainmentDelta(newChild.parent, newChild.containment, oldIndex, this.container, this.containment, newIndex, newChild));
|
|
349
|
+
newChild.attachTo(this.container, this.containment);
|
|
350
|
+
}
|
|
316
351
|
}
|
|
317
|
-
newChild.attachTo(this.container, this.containment);
|
|
318
352
|
}
|
|
319
353
|
removeDirectly(childToRemove) {
|
|
320
354
|
const children = this.getDirectly();
|
|
@@ -347,19 +381,21 @@ let MultiContainmentValueManager = (() => {
|
|
|
347
381
|
}
|
|
348
382
|
replaceAtIndex(movedChild, newIndex) {
|
|
349
383
|
checkIndex(newIndex, this.children.length, false);
|
|
384
|
+
if (movedChild.parent === undefined) {
|
|
385
|
+
throw new Error(`a child-to-move (id=${movedChild.id}) must already be contained`);
|
|
386
|
+
}
|
|
350
387
|
const replacedChild = this.children[newIndex];
|
|
351
388
|
if (replacedChild === movedChild) {
|
|
352
389
|
// do nothing: nothing's changed
|
|
353
390
|
}
|
|
354
391
|
else {
|
|
355
392
|
this.children.splice(newIndex, 1, movedChild);
|
|
356
|
-
if (replacedChild.parent) {
|
|
393
|
+
if (replacedChild.parent !== undefined) {
|
|
357
394
|
const oldValueManager = replacedChild.parent.getContainmentValueManager(replacedChild.containment);
|
|
358
395
|
const oldIndex = oldValueManager instanceof SingleContainmentValueManager
|
|
359
396
|
? 0
|
|
360
397
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
361
398
|
: oldValueManager.children.indexOf(replacedChild);
|
|
362
|
-
replacedChild.detach();
|
|
363
399
|
if (replacedChild.parent === movedChild.parent) {
|
|
364
400
|
if (replacedChild.containment === movedChild.containment) {
|
|
365
401
|
this.emitDelta(() => new ChildMovedAndReplacedInSameContainmentDelta(this.container, this.containment, oldIndex, newIndex, movedChild, replacedChild));
|
|
@@ -369,8 +405,9 @@ let MultiContainmentValueManager = (() => {
|
|
|
369
405
|
}
|
|
370
406
|
}
|
|
371
407
|
else {
|
|
372
|
-
this.emitDelta(() => new
|
|
408
|
+
this.emitDelta(() => new ChildMovedAndReplacedFromOtherContainmentDelta(this.container, this.containment, newIndex, movedChild, movedChild.parent, movedChild.containment, oldIndex, replacedChild));
|
|
373
409
|
}
|
|
410
|
+
replacedChild.detach();
|
|
374
411
|
}
|
|
375
412
|
else {
|
|
376
413
|
// not a move+replace, but a regular replace instead:
|
|
@@ -475,4 +512,29 @@ let RequiredMultiContainmentValueManager = (() => {
|
|
|
475
512
|
_a;
|
|
476
513
|
})();
|
|
477
514
|
export { RequiredMultiContainmentValueManager };
|
|
515
|
+
/**
|
|
516
|
+
* Removes the given child node from its containment, and returns the containment index it had before removal.
|
|
517
|
+
*/
|
|
518
|
+
const removeFromContainment = (child) => {
|
|
519
|
+
if (child.parent === undefined) {
|
|
520
|
+
throw new Error(`can't remove an orphan from its parent`);
|
|
521
|
+
}
|
|
522
|
+
if (child.containment === undefined) {
|
|
523
|
+
throw new Error(`can't remove an orphan from its containing feature`);
|
|
524
|
+
}
|
|
525
|
+
if (child.containment === null) {
|
|
526
|
+
throw new Error(`can't remove an annotation`);
|
|
527
|
+
}
|
|
528
|
+
const valueManager = child.parent.getContainmentValueManager(child.containment);
|
|
529
|
+
if (valueManager instanceof SingleContainmentValueManager) {
|
|
530
|
+
valueManager.setDirectly(undefined);
|
|
531
|
+
return 0;
|
|
532
|
+
}
|
|
533
|
+
else if (valueManager instanceof MultiContainmentValueManager) {
|
|
534
|
+
return valueManager.removeDirectly(child);
|
|
535
|
+
}
|
|
536
|
+
else {
|
|
537
|
+
throw new Error(`don't know how to remove a child that's contained through a value manager of type ${valueManager.constructor.name}`);
|
|
538
|
+
}
|
|
539
|
+
};
|
|
478
540
|
//# sourceMappingURL=containments.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containments.js","sourceRoot":"","sources":["../../src/value-managers/containments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"containments.js","sourceRoot":"","sources":["../../src/value-managers/containments.ts"],"names":[],"mappings":"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"}
|
|
@@ -130,7 +130,7 @@ let OptionalSingleReferenceValueManager = (() => {
|
|
|
130
130
|
this.emitDelta(() => new ReferenceAddedDelta(this.container, this.reference, 0, newTarget));
|
|
131
131
|
}
|
|
132
132
|
else {
|
|
133
|
-
this.emitDelta(() => new ReferenceChangedDelta(this.container, this.reference, 0,
|
|
133
|
+
this.emitDelta(() => new ReferenceChangedDelta(this.container, this.reference, 0, newTarget, oldTarget));
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
}
|
|
@@ -177,7 +177,7 @@ let RequiredSingleReferenceValueManager = (() => {
|
|
|
177
177
|
this.emitDelta(() => new ReferenceAddedDelta(this.container, this.reference, 0, newTarget));
|
|
178
178
|
}
|
|
179
179
|
else {
|
|
180
|
-
this.emitDelta(() => new ReferenceChangedDelta(this.container, this.reference, 0,
|
|
180
|
+
this.emitDelta(() => new ReferenceChangedDelta(this.container, this.reference, 0, newTarget, oldTarget));
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
183
|
}
|
package/package.json
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
2
|
+
"name": "@lionweb/class-core",
|
|
3
|
+
"version": "0.7.0-beta.14",
|
|
4
|
+
"description": "Generic, language-aspecific base types for generated TypeScript APIs",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"typings": "dist/index.d.ts",
|
|
8
|
+
"type": "module",
|
|
9
|
+
"license": "Apache-2.0",
|
|
10
|
+
"repository": {
|
|
11
|
+
"type": "git",
|
|
12
|
+
"url": "git+https://github.com/LionWeb-io/lionweb-typescript.git"
|
|
13
|
+
},
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/LionWeb-io/lionweb-typescript/issues"
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"clean": "npx rimraf dist node_modules -g lionweb-class-core-*.tgz",
|
|
19
|
+
"build": "npx rimraf dist && tsc",
|
|
20
|
+
"lint": "eslint src",
|
|
21
|
+
"prep:pre-release": "npm run clean && npm install && npm run build",
|
|
22
|
+
"prerelease-alpha": "npm run prep:pre-release",
|
|
23
|
+
"release-alpha": "npm publish --tag alpha",
|
|
24
|
+
"prerelease-beta": "npm run prep:pre-release",
|
|
25
|
+
"release-beta": "npm publish --tag beta",
|
|
26
|
+
"prerelease": "npm run prep:pre-release",
|
|
27
|
+
"release": "npm publish"
|
|
28
|
+
},
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"@lionweb/core": "0.7.0-beta.14",
|
|
31
|
+
"@lionweb/json": "0.7.0-beta.14",
|
|
32
|
+
"@lionweb/ts-utils": "0.7.0-beta.14",
|
|
33
|
+
"littoral-templates": "0.5.0",
|
|
34
|
+
"mobx": "6.13.7"
|
|
35
|
+
}
|
|
36
36
|
}
|
package/src/base-types.ts
CHANGED
|
@@ -351,28 +351,3 @@ export interface ILanguageBase {
|
|
|
351
351
|
enumLiteralFrom<T>(enumerationLiteral: EnumerationLiteral): T;
|
|
352
352
|
}
|
|
353
353
|
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
* Removes the given child node from its parent, and returns its containment index.
|
|
357
|
-
*/
|
|
358
|
-
export const removeFromParent = (parent: INodeBase | undefined, child: INodeBase): number => {
|
|
359
|
-
if (parent === undefined) {
|
|
360
|
-
throw new Error(`can't remove an orphan from its parent`);
|
|
361
|
-
}
|
|
362
|
-
if (child.containment instanceof Containment) {
|
|
363
|
-
const valueManager = parent.getContainmentValueManager(child.containment);
|
|
364
|
-
if (valueManager instanceof SingleContainmentValueManager) {
|
|
365
|
-
valueManager.setDirectly(undefined);
|
|
366
|
-
return 0;
|
|
367
|
-
} else if (valueManager instanceof MultiContainmentValueManager) {
|
|
368
|
-
return valueManager.removeDirectly(child);
|
|
369
|
-
} else {
|
|
370
|
-
throw new Error(`don't know how to remove a child that's contained through a value manager of type ${valueManager.constructor.name}`);
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
if (child.containment === null) {
|
|
374
|
-
return parent.annotationsValueManager.removeDirectly(child);
|
|
375
|
-
}
|
|
376
|
-
throw new Error(`not going to remove a child from its parent without knowing how it's contained`);
|
|
377
|
-
}
|
|
378
|
-
|
package/src/deltas/inverters.ts
CHANGED
|
@@ -91,13 +91,22 @@ export const invertDelta = (delta: IDelta): IDelta => {
|
|
|
91
91
|
return new ChildMovedInSameContainmentDelta(delta.parent, delta.containment, delta.newIndex, delta.oldIndex, delta.movedChild);
|
|
92
92
|
}
|
|
93
93
|
if (delta instanceof ChildMovedAndReplacedFromOtherContainmentDelta) {
|
|
94
|
-
|
|
94
|
+
return new CompositeDelta([
|
|
95
|
+
new ChildMovedFromOtherContainmentDelta(delta.newParent, delta.newContainment, delta.newIndex, delta.oldParent, delta.oldContainment, delta.oldIndex, delta.movedChild),
|
|
96
|
+
new ChildAddedDelta(delta.newParent, delta.newContainment, delta.newIndex, delta.replacedChild)
|
|
97
|
+
]);
|
|
95
98
|
}
|
|
96
99
|
if (delta instanceof ChildMovedAndReplacedFromOtherContainmentInSameParentDelta) {
|
|
97
|
-
|
|
100
|
+
return new CompositeDelta([
|
|
101
|
+
new ChildMovedFromOtherContainmentInSameParentDelta(delta.parent, delta.newContainment, delta.newIndex, delta.movedChild, delta.oldContainment, delta.oldIndex),
|
|
102
|
+
new ChildAddedDelta(delta.parent, delta.newContainment, delta.newIndex, delta.replacedChild)
|
|
103
|
+
]);
|
|
98
104
|
}
|
|
99
105
|
if (delta instanceof ChildMovedAndReplacedInSameContainmentDelta) {
|
|
100
|
-
|
|
106
|
+
return new CompositeDelta([
|
|
107
|
+
new ChildMovedInSameContainmentDelta(delta.parent, delta.containment, delta.newIndex, delta.oldIndex, delta.movedChild),
|
|
108
|
+
new ChildAddedDelta(delta.parent, delta.containment, delta.newIndex, delta.replacedChild)
|
|
109
|
+
]);
|
|
101
110
|
}
|
|
102
111
|
if (delta instanceof AnnotationAddedDelta) {
|
|
103
112
|
return new AnnotationDeletedDelta(delta.parent, delta.index, delta.newAnnotation);
|
|
@@ -115,10 +124,16 @@ export const invertDelta = (delta: IDelta): IDelta => {
|
|
|
115
124
|
return new AnnotationMovedInSameParentDelta(delta.parent, delta.newIndex, delta.oldIndex, delta.movedAnnotation);
|
|
116
125
|
}
|
|
117
126
|
if (delta instanceof AnnotationMovedAndReplacedFromOtherParentDelta) {
|
|
118
|
-
|
|
127
|
+
return new CompositeDelta([
|
|
128
|
+
new AnnotationMovedFromOtherParentDelta(delta.newParent, delta.newIndex, delta.oldParent, delta.oldIndex, delta.movedAnnotation),
|
|
129
|
+
new AnnotationAddedDelta(delta.newParent, delta.newIndex, delta.replacedAnnotation)
|
|
130
|
+
]);
|
|
119
131
|
}
|
|
120
132
|
if (delta instanceof AnnotationMovedAndReplacedInSameParentDelta) {
|
|
121
|
-
|
|
133
|
+
return new CompositeDelta([
|
|
134
|
+
new AnnotationMovedInSameParentDelta(delta.parent, delta.newIndex, delta.oldIndex, delta.movedAnnotation),
|
|
135
|
+
new AnnotationAddedDelta(delta.parent, delta.newIndex, delta.replacedAnnotation)
|
|
136
|
+
]);
|
|
122
137
|
}
|
|
123
138
|
if (delta instanceof ReferenceAddedDelta) {
|
|
124
139
|
return new ReferenceDeletedDelta(delta.parent, delta.reference, delta.index, delta.newTarget);
|
|
@@ -133,19 +148,28 @@ export const invertDelta = (delta: IDelta): IDelta => {
|
|
|
133
148
|
return new EntryMovedFromOtherReferenceDelta(delta.newParent, delta.newReference, delta.newIndex, delta.oldParent, delta.oldReference, delta.oldIndex, delta.movedTarget);
|
|
134
149
|
}
|
|
135
150
|
if (delta instanceof EntryMovedFromOtherReferenceInSameParentDelta) {
|
|
136
|
-
|
|
151
|
+
return new EntryMovedFromOtherReferenceInSameParentDelta(delta.parent, delta.newReference, delta.newIndex, delta.oldReference, delta.oldIndex, delta.movedTarget);
|
|
137
152
|
}
|
|
138
153
|
if (delta instanceof EntryMovedInSameReferenceDelta) {
|
|
139
154
|
return new EntryMovedInSameReferenceDelta(delta.parent, delta.reference, delta.newIndex, delta.oldIndex, delta.movedTarget);
|
|
140
155
|
}
|
|
141
156
|
if (delta instanceof EntryMovedAndReplacedFromOtherReferenceDelta) {
|
|
142
|
-
|
|
157
|
+
return new CompositeDelta([
|
|
158
|
+
new EntryMovedFromOtherReferenceDelta(delta.newParent, delta.newReference, delta.newIndex, delta.oldParent, delta.oldReference, delta.oldIndex, delta.movedTarget),
|
|
159
|
+
new ReferenceAddedDelta(delta.newParent, delta.newReference, delta.newIndex, delta.replacedTarget)
|
|
160
|
+
]);
|
|
143
161
|
}
|
|
144
162
|
if (delta instanceof EntryMovedAndReplacedFromOtherReferenceInSameParentDelta) {
|
|
145
|
-
return new
|
|
163
|
+
return new CompositeDelta([
|
|
164
|
+
new EntryMovedFromOtherReferenceInSameParentDelta(delta.parent, delta.newReference, delta.newIndex, delta.oldReference, delta.oldIndex, delta.movedTarget),
|
|
165
|
+
new ReferenceAddedDelta(delta.parent, delta.newReference, delta.newIndex, delta.replacedTarget)
|
|
166
|
+
]);
|
|
146
167
|
}
|
|
147
168
|
if (delta instanceof EntryMovedAndReplacedInSameReferenceDelta) {
|
|
148
|
-
|
|
169
|
+
return new CompositeDelta([
|
|
170
|
+
new EntryMovedInSameReferenceDelta(delta.parent, delta.reference, delta.newIndex, delta.oldIndex, delta.movedTarget),
|
|
171
|
+
new ReferenceAddedDelta(delta.parent, delta.reference, delta.newIndex, delta.replacedTarget)
|
|
172
|
+
]);
|
|
149
173
|
}
|
|
150
174
|
if (delta instanceof CompositeDelta) {
|
|
151
175
|
return new CompositeDelta(delta.parts.map(invertDelta));
|
package/src/deltas/receivers.ts
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
17
|
|
|
18
|
+
import { asPrettyJsonString } from "@lionweb/ts-utils"
|
|
18
19
|
import { IDelta } from "./base.js"
|
|
19
20
|
import { serializeDelta } from "./serialization/index.js"
|
|
20
21
|
|
|
@@ -37,7 +38,7 @@ export const collectingDeltaReceiver = (printSerializations = false): [DeltaRece
|
|
|
37
38
|
const receiveDelta: DeltaReceiver = (delta) => {
|
|
38
39
|
deltas.push(delta);
|
|
39
40
|
if (printSerializations) {
|
|
40
|
-
console.log(
|
|
41
|
+
console.log(asPrettyJsonString(serializeDelta(delta)));
|
|
41
42
|
}
|
|
42
43
|
};
|
|
43
44
|
return [receiveDelta, deltas];
|
package/src/deserializer.ts
CHANGED
|
@@ -21,7 +21,6 @@ import {
|
|
|
21
21
|
Containment,
|
|
22
22
|
defaultSimplisticHandler,
|
|
23
23
|
Enumeration,
|
|
24
|
-
Language,
|
|
25
24
|
MemoisingSymbolTable,
|
|
26
25
|
PrimitiveType,
|
|
27
26
|
Property,
|
|
@@ -34,6 +33,7 @@ import { LionWebId, LionWebJsonChunk, LionWebJsonNode } from "@lionweb/json"
|
|
|
34
33
|
import { byIdMap, keepDefineds } from "@lionweb/ts-utils"
|
|
35
34
|
|
|
36
35
|
import { DeltaReceiver, IdMapping, ILanguageBase, INodeBase } from "./index.js"
|
|
36
|
+
import { combinedLanguageBaseLookupFor } from "./factory.js"
|
|
37
37
|
import { NodesToInstall } from "./linking.js"
|
|
38
38
|
|
|
39
39
|
|
|
@@ -48,21 +48,6 @@ export type Deserializer<T> = (
|
|
|
48
48
|
) => T;
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
const languageBaseLookupFor = (languageBases: ILanguageBase[]) =>
|
|
52
|
-
(language: Language) => {
|
|
53
|
-
const languageBase = languageBases.find((languageBase) => languageBase.language === language);
|
|
54
|
-
if (languageBase === undefined) {
|
|
55
|
-
throw new Error(`language ${language.name} (with key=${language.key} and version=${language.version}) not known`);
|
|
56
|
-
}
|
|
57
|
-
return languageBase;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
const factoryLookupFor = (languageBases: ILanguageBase[], receiveDelta?: DeltaReceiver) => {
|
|
61
|
-
const lookup = languageBaseLookupFor(languageBases);
|
|
62
|
-
return (language: Language) => lookup(language).factory(receiveDelta);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
66
51
|
/**
|
|
67
52
|
* A quasi-tuple of the roots (of type {@link INodeBase}) of a model,
|
|
68
53
|
* and its {@link IdMapping} instance.
|
|
@@ -78,8 +63,7 @@ export type RootsWithIdMapping = { roots: INodeBase[], idMapping: IdMapping };
|
|
|
78
63
|
export const nodeBaseDeserializerWithIdMapping = (languageBases: ILanguageBase[], receiveDelta?: DeltaReceiver): Deserializer<RootsWithIdMapping> => {
|
|
79
64
|
|
|
80
65
|
const symbolTable = new MemoisingSymbolTable(languageBases.map(({language}) => language));
|
|
81
|
-
const languageBaseFor =
|
|
82
|
-
const factoryFor = factoryLookupFor(languageBases, receiveDelta);
|
|
66
|
+
const languageBaseFor = combinedLanguageBaseLookupFor(languageBases);
|
|
83
67
|
|
|
84
68
|
return (
|
|
85
69
|
serializationChunk: LionWebJsonChunk,
|
|
@@ -98,7 +82,7 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases: ILanguageBase[]
|
|
|
98
82
|
return undefined;
|
|
99
83
|
}
|
|
100
84
|
|
|
101
|
-
const node =
|
|
85
|
+
const node = languageBaseFor(classifier.language).factory(receiveDelta)(classifier, id);
|
|
102
86
|
|
|
103
87
|
properties.forEach(({property: propertyMetaPointer, value}) => {
|
|
104
88
|
const feature = symbolTable.featureMatching(classifierMetaPointer, propertyMetaPointer);
|