@lionweb/class-core 0.7.0-beta.0 → 0.7.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{lionCore_builtins.g.d.ts → LionCore_builtins.g.d.ts} +1 -1
- package/dist/{lionCore_builtins.g.d.ts.map → LionCore_builtins.g.d.ts.map} +1 -1
- package/dist/{lionCore_builtins.g.js → LionCore_builtins.g.js} +1 -1
- package/dist/{lionCore_builtins.g.js.map → LionCore_builtins.g.js.map} +1 -1
- package/dist/deltas/serialization/serializer-helpers.d.ts +1 -1
- package/dist/deltas/serialization/serializer-helpers.d.ts.map +1 -1
- package/dist/deltas/serialization/serializer-helpers.js +4 -4
- package/dist/deltas/serialization/serializer-helpers.js.map +1 -1
- package/dist/deserializer.d.ts +2 -2
- package/dist/deserializer.d.ts.map +1 -1
- package/dist/deserializer.js +4 -4
- package/dist/deserializer.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/serializer.d.ts +3 -3
- package/dist/serializer.d.ts.map +1 -1
- package/dist/serializer.js +3 -3
- package/dist/serializer.js.map +1 -1
- package/dist/textualizer.js +1 -1
- package/package.json +12 -10
- package/src/deltas/serialization/serializer-helpers.ts +10 -4
- package/src/deserializer.ts +7 -7
- package/src/index.ts +3 -3
- package/src/serializer.ts +6 -7
- package/src/textualizer.ts +1 -1
- /package/src/{lionCore_builtins.g.ts → LionCore_builtins.g.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"LionCore_builtins.g.d.ts","sourceRoot":"","sources":["../src/LionCore_builtins.g.ts"],"names":[],"mappings":"AA6BA,OAAO,EAEH,OAAO,EACP,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACX,MAAM,eAAe,CAAC;AAMvB,OAAO,EACH,YAAY,EACZ,aAAa,EACb,SAAS,EACT,QAAQ,EACR,eAAe,EAClB,MAAM,YAAY,CAAC;AAGpB,qBAAa,qBAAsB,YAAW,aAAa;IAEvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmG;IAC7H,IAAI,QAAQ,IAAI,QAAQ,CAGvB;IAED,SAAgB,OAAO,gBAAuG;IAC9H,IAAI,MAAM,IAAI,aAAa,CAG1B;IAED,SAAgB,QAAQ,gBAA0G;IAClI,IAAI,OAAO,IAAI,aAAa,CAG3B;IAED,SAAgB,QAAQ,gBAA0G;IAClI,IAAI,OAAO,IAAI,aAAa,CAG3B;IAED,SAAgB,KAAK,gBAAiG;IACtH,IAAI,IAAI,IAAI,aAAa,CAGxB;IAED,SAAgB,KAAK,UAAiG;IACtH,IAAI,IAAI,IAAI,OAAO,CAGlB;IAED,SAAgB,OAAO,YAAmG;IAC1H,IAAI,MAAM,IAAI,SAAS,CAGtB;IACD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwG;IACrI,IAAI,WAAW,IAAI,QAAQ,CAG1B;IAED,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,eAAe;IAOrD,eAAe,CAAC,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,GAAG,QAAQ;IAM3E,gBAAuB,QAAQ,wBAA+B;CACjE;AAGD,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC;AAE5B,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC;AAE9B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC;AAE3B,8BAAsB,IAAK,SAAQ,QAAQ;CAC1C;AAED,MAAM,WAAW,MAAO,SAAQ,SAAS;IACrC,IAAI,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"LionCore_builtins.g.js","sourceRoot":"","sources":["../src/LionCore_builtins.g.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { IdOrUnresolved, Property, SingleRef } from "@lionweb/core";
|
|
|
2
2
|
import { INodeBase } from "../../base-types.js";
|
|
3
3
|
/**
|
|
4
4
|
* A function that serializes the given value of the given {@link Property property},
|
|
5
|
-
* using (an instance of) the same {@link
|
|
5
|
+
* using (an instance of) the same {@link BuiltinPropertyValueSerializer} class as the {@link serializeNodeBases} function.
|
|
6
6
|
*/
|
|
7
7
|
export declare const serializePropertyValue: <T>(value: T, property: Property) => string;
|
|
8
8
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer-helpers.d.ts","sourceRoot":"","sources":["../../../src/deltas/serialization/serializer-helpers.ts"],"names":[],"mappings":"AAiBA,OAAO,
|
|
1
|
+
{"version":3,"file":"serializer-helpers.d.ts","sourceRoot":"","sources":["../../../src/deltas/serialization/serializer-helpers.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEH,cAAc,EACd,QAAQ,EACR,SAAS,EAEZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAG/C;;;GAGG;AACH,eAAO,MAAM,sBAAsB,0BAA2B,QAAQ,KAAG,MACE,CAAA;AAG3E;;GAEG;AACH,eAAO,MAAM,MAAM,QAAS,UAAU,SAAS,CAAC,KAAG,cACb,CAAA"}
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
//
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
|
-
import {
|
|
18
|
-
const
|
|
17
|
+
import { BuiltinPropertyValueSerializer, unresolved } from "@lionweb/core";
|
|
18
|
+
const defaultBuiltinsPropertyValueSerializer = new BuiltinPropertyValueSerializer(); // (suffices because serializeNodeBases also uses this class)
|
|
19
19
|
/**
|
|
20
20
|
* A function that serializes the given value of the given {@link Property property},
|
|
21
|
-
* using (an instance of) the same {@link
|
|
21
|
+
* using (an instance of) the same {@link BuiltinPropertyValueSerializer} class as the {@link serializeNodeBases} function.
|
|
22
22
|
*/
|
|
23
|
-
export const serializePropertyValue = (value, property) =>
|
|
23
|
+
export const serializePropertyValue = (value, property) => defaultBuiltinsPropertyValueSerializer.serializeValue(value, property);
|
|
24
24
|
/**
|
|
25
25
|
* @return the ID of a given reference to a {@link INodeBase}, or {@link unresolved} if that reference was previously unresolved.
|
|
26
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer-helpers.js","sourceRoot":"","sources":["../../../src/deltas/serialization/serializer-helpers.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,
|
|
1
|
+
{"version":3,"file":"serializer-helpers.js","sourceRoot":"","sources":["../../../src/deltas/serialization/serializer-helpers.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,EACH,8BAA8B,EAI9B,UAAU,EACb,MAAM,eAAe,CAAA;AAGtB,MAAM,sCAAsC,GAAG,IAAI,8BAA8B,EAAE,CAAA,CAAG,6DAA6D;AACnJ;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAI,KAAQ,EAAE,QAAkB,EAAU,EAAE,CAC9E,sCAAsC,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAE,CAAA;AAG3E;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAyB,EAAkB,EAAE,CAChE,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAA"}
|
package/dist/deserializer.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PropertyValueDeserializer, SimplisticHandler } from "@lionweb/core";
|
|
2
2
|
import { LionWebJsonChunk } from "@lionweb/json";
|
|
3
3
|
import { DeltaHandler, IdMapping, ILanguageBase, INodeBase } from "./index.js";
|
|
4
4
|
/**
|
|
5
5
|
* A type for deserializer functions that are parametrized in their return type.
|
|
6
6
|
*/
|
|
7
|
-
export type Deserializer<T> = (serializationChunk: LionWebJsonChunk, dependentNodes?: INodeBase[],
|
|
7
|
+
export type Deserializer<T> = (serializationChunk: LionWebJsonChunk, dependentNodes?: INodeBase[], propertyValueDeserializer?: PropertyValueDeserializer, problemHandler?: SimplisticHandler) => T;
|
|
8
8
|
/**
|
|
9
9
|
* A quasi-tuple of the roots (of type {@link INodeBase}) of a model,
|
|
10
10
|
* and its {@link IdMapping} instance.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../src/deserializer.ts"],"names":[],"mappings":"AAiBA,OAAO,
|
|
1
|
+
{"version":3,"file":"deserializer.d.ts","sourceRoot":"","sources":["../src/deserializer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAUH,yBAAyB,EAEzB,iBAAiB,EAEpB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAa,gBAAgB,EAAmB,MAAM,eAAe,CAAA;AAG5E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAI9E;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAC1B,kBAAkB,EAAE,gBAAgB,EACpC,cAAc,CAAC,EAAE,SAAS,EAAE,EAC5B,yBAAyB,CAAC,EAAE,yBAAyB,EACrD,cAAc,CAAC,EAAE,iBAAiB,KACjC,CAAC,CAAC;AAkBP;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAAC;AAG9E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,kBAAmB,aAAa,EAAE,gBAAgB,YAAY,KAAG,aAAa,kBAAkB,CAwI7I,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,kBAAmB,aAAa,EAAE,gBAAgB,YAAY,KAAG,aAAa,SAAS,EAAE,CASzH,CAAA"}
|
package/dist/deserializer.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
|
-
import { Classifier, Containment,
|
|
17
|
+
import { BuiltinPropertyValueDeserializer, Classifier, Containment, defaultSimplisticHandler, Enumeration, MemoisingSymbolTable, PrimitiveType, Property, Reference, unresolved } from "@lionweb/core";
|
|
18
18
|
import { byIdMap } from "@lionweb/ts-utils";
|
|
19
19
|
import { IdMapping } from "./index.js";
|
|
20
20
|
const languageBaseLookupFor = (languageBases) => (language) => {
|
|
@@ -37,7 +37,7 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases, handleDelta) =>
|
|
|
37
37
|
const symbolTable = new MemoisingSymbolTable(languageBases.map(({ language }) => language));
|
|
38
38
|
const languageBaseFor = languageBaseLookupFor(languageBases);
|
|
39
39
|
const factoryFor = factoryLookupFor(languageBases, handleDelta);
|
|
40
|
-
return (serializationChunk, dependentNodes = [],
|
|
40
|
+
return (serializationChunk, dependentNodes = [], propertyValueDeserializer = new BuiltinPropertyValueDeserializer(), problemsHandler = defaultSimplisticHandler) => {
|
|
41
41
|
const nodesToInstall = [];
|
|
42
42
|
const createNode = ({ id, classifier: classifierMetaPointer, properties, containments, references, annotations }) => {
|
|
43
43
|
const languageMessage = `language ${classifierMetaPointer.language} (${classifierMetaPointer.version})`;
|
|
@@ -54,7 +54,7 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases, handleDelta) =>
|
|
|
54
54
|
}
|
|
55
55
|
else if (feature instanceof Property) {
|
|
56
56
|
if (feature.type instanceof PrimitiveType) {
|
|
57
|
-
node.getPropertyValueManager(feature).setDirectly(value === null ? undefined :
|
|
57
|
+
node.getPropertyValueManager(feature).setDirectly(value === null ? undefined : propertyValueDeserializer.deserializeValue(value, feature));
|
|
58
58
|
}
|
|
59
59
|
else if (feature.type instanceof Enumeration) {
|
|
60
60
|
if (value !== undefined) {
|
|
@@ -164,6 +164,6 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases, handleDelta) =>
|
|
|
164
164
|
*/
|
|
165
165
|
export const nodeBaseDeserializer = (languageBases, handleDelta) => {
|
|
166
166
|
const deserializerWithIdMapping = nodeBaseDeserializerWithIdMapping(languageBases, handleDelta);
|
|
167
|
-
return (serializationChunk, dependentNodes = [],
|
|
167
|
+
return (serializationChunk, dependentNodes = [], propertyValueDeserializer = new BuiltinPropertyValueDeserializer(), problemsHandler = defaultSimplisticHandler) => deserializerWithIdMapping(serializationChunk, dependentNodes, propertyValueDeserializer, problemsHandler).roots;
|
|
168
168
|
};
|
|
169
169
|
//# sourceMappingURL=deserializer.js.map
|
package/dist/deserializer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserializer.js","sourceRoot":"","sources":["../src/deserializer.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,EACH,UAAU,EACV,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"deserializer.js","sourceRoot":"","sources":["../src/deserializer.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ export * from "./deltas/index.js";
|
|
|
4
4
|
export * from "./deserializer.js";
|
|
5
5
|
export { deepDuplicateWith } from "./duplicator.js";
|
|
6
6
|
export * from "./id-mapping.js";
|
|
7
|
-
export * from "./
|
|
7
|
+
export * from "./LionCore_builtins.g.js";
|
|
8
8
|
export { serializeNodeBases } from "./serializer.js";
|
|
9
|
-
export * from "./value-managers/index.js";
|
|
10
9
|
export { asTreeTextWith } from "./textualizer.js";
|
|
10
|
+
export * from "./value-managers/index.js";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,cAAc,iBAAiB,CAAC;AAEhC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,cAAc,2BAA2B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -21,8 +21,8 @@ export * from "./deserializer.js";
|
|
|
21
21
|
export { deepDuplicateWith } from "./duplicator.js";
|
|
22
22
|
export * from "./id-mapping.js";
|
|
23
23
|
// skip linking.js: see comment there
|
|
24
|
-
export * from "./
|
|
24
|
+
export * from "./LionCore_builtins.g.js";
|
|
25
25
|
export { serializeNodeBases } from "./serializer.js";
|
|
26
|
-
export * from "./value-managers/index.js";
|
|
27
26
|
export { asTreeTextWith } from "./textualizer.js";
|
|
27
|
+
export * from "./value-managers/index.js";
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.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,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.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,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,cAAc,iBAAiB,CAAC;AAChC,qCAAqC;AACrC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,cAAc,2BAA2B,CAAC"}
|
package/dist/serializer.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Feature, Reader } from "@lionweb/core";
|
|
2
2
|
import { INodeBase } from "./index.js";
|
|
3
3
|
/**
|
|
4
4
|
* @return the value of the given {@link Feature feature} (2nd argument) on the given node (of type {@link INodeBase}; 1st argument).
|
|
@@ -6,10 +6,10 @@ import { INodeBase } from "./index.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const getFeatureValue: (node: INodeBase, feature: Feature) => unknown;
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* A {@link Reader} that works on/for {@link INodeBase}s specifically.
|
|
10
10
|
* **Note** that this function is for internal use only!
|
|
11
11
|
*/
|
|
12
|
-
export declare const nodeBaseReader:
|
|
12
|
+
export declare const nodeBaseReader: Reader<INodeBase>;
|
|
13
13
|
/**
|
|
14
14
|
* @return a serialization of the given nodes (of type {@link INodeBase}) as a {@link LionWebJsonChunk}.
|
|
15
15
|
*/
|
package/dist/serializer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAKH,
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAKH,OAAO,EAGP,MAAM,EAET,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,SAAS,EAAyB,MAAM,YAAY,CAAA;AAG7D;;;GAGG;AACH,eAAO,MAAM,eAAe,SAAU,SAAS,WAAW,OAAO,YAWhE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,SAAS,CAyB5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,kEAAoE,CAAC"}
|
package/dist/serializer.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
|
-
import { allSuperTypesOf, builtinClassifiers, builtinFeatures, Containment, Property, Reference
|
|
17
|
+
import { allSuperTypesOf, builtinClassifiers, builtinFeatures, Containment, nodeSerializer, Property, Reference } from "@lionweb/core";
|
|
18
18
|
import { LionCore_builtinsBase } from "./index.js";
|
|
19
19
|
/**
|
|
20
20
|
* @return the value of the given {@link Feature feature} (2nd argument) on the given node (of type {@link INodeBase}; 1st argument).
|
|
@@ -33,7 +33,7 @@ export const getFeatureValue = (node, feature) => {
|
|
|
33
33
|
throw new Error(`unhandled Feature sub type ${feature.constructor.name}`);
|
|
34
34
|
};
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* A {@link Reader} that works on/for {@link INodeBase}s specifically.
|
|
37
37
|
* **Note** that this function is for internal use only!
|
|
38
38
|
*/
|
|
39
39
|
export const nodeBaseReader = {
|
|
@@ -66,5 +66,5 @@ export const nodeBaseReader = {
|
|
|
66
66
|
/**
|
|
67
67
|
* @return a serialization of the given nodes (of type {@link INodeBase}) as a {@link LionWebJsonChunk}.
|
|
68
68
|
*/
|
|
69
|
-
export const serializeNodeBases = (
|
|
69
|
+
export const serializeNodeBases = nodeSerializer(nodeBaseReader, { serializeEmptyFeatures: false });
|
|
70
70
|
//# sourceMappingURL=serializer.js.map
|
package/dist/serializer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.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,EACH,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,WAAW,
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.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,EACH,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,WAAW,EAEX,cAAc,EACd,QAAQ,EAER,SAAS,EACZ,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAa,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAG7D;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAe,EAAE,OAAgB,EAAE,EAAE;IACjE,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,YAAY,SAAS,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;AAC7E,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC7C,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU;IACvC,eAAe;IACf,sBAAsB,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE;QAC9C,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAE,CAAC;IAC7E,CAAC;IACD,cAAc,EAAE,CAAC,IAAe,EAAE,EAAE;QAChC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACjB,8FAA8F;YAC9F,IAAI,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;gBACxB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACzD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QACD,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,aAAa,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACxD,OAAO,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,WAAW,EAA0B,CAAC;QAC3G,CAAC;QACD,IAAI,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,uBAAuB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAA0B,CAAC;QAC1H,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC"}
|
package/dist/textualizer.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
17
|
import { allFeaturesOf, Containment, Property, Reference, unresolved } from "@lionweb/core";
|
|
18
18
|
import { asString, indentWith } from "littoral-templates";
|
|
19
|
-
import { LionCore_builtinsBase } from "./
|
|
19
|
+
import { LionCore_builtinsBase } from "./LionCore_builtins.g.js";
|
|
20
20
|
const indent = indentWith(" ")(1);
|
|
21
21
|
const prependWith = (template, prefix) => prefix + asString(template);
|
|
22
22
|
const asINodeBases = (value) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lionweb/class-core",
|
|
3
|
-
"version": "0.7.0-beta.
|
|
3
|
+
"version": "0.7.0-beta.2",
|
|
4
4
|
"description": "Generic, language-aspecific base types for generated TypeScript APIs",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -18,17 +18,19 @@
|
|
|
18
18
|
"clean": "rm -rf dist/ node_modules/ lionweb-class-core-*.tgz",
|
|
19
19
|
"build": "rm -rf dist && tsc",
|
|
20
20
|
"lint": "eslint src",
|
|
21
|
-
"pre-release
|
|
22
|
-
"prerelease": "npm run pre-release
|
|
23
|
-
"release": "npm publish",
|
|
24
|
-
"prerelease-beta": "npm run pre-release
|
|
25
|
-
"release-beta": "npm publish --tag beta"
|
|
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"
|
|
26
28
|
},
|
|
27
29
|
"dependencies": {
|
|
28
|
-
"@lionweb/core": "0.7.0-beta.
|
|
29
|
-
"@lionweb/json": "0.7.0-beta.
|
|
30
|
-
"@lionweb/ts-utils": "0.7.0-beta.
|
|
31
|
-
"littoral-templates": "0.
|
|
30
|
+
"@lionweb/core": "0.7.0-beta.2",
|
|
31
|
+
"@lionweb/json": "0.7.0-beta.2",
|
|
32
|
+
"@lionweb/ts-utils": "0.7.0-beta.2",
|
|
33
|
+
"littoral-templates": "0.4.0-rc.3",
|
|
32
34
|
"mobx": "6.13.7"
|
|
33
35
|
},
|
|
34
36
|
"devDependencies": {
|
|
@@ -15,16 +15,22 @@
|
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
17
|
|
|
18
|
-
import {
|
|
18
|
+
import {
|
|
19
|
+
BuiltinPropertyValueSerializer,
|
|
20
|
+
IdOrUnresolved,
|
|
21
|
+
Property,
|
|
22
|
+
SingleRef,
|
|
23
|
+
unresolved
|
|
24
|
+
} from "@lionweb/core"
|
|
19
25
|
import { INodeBase } from "../../base-types.js"
|
|
20
26
|
|
|
21
|
-
const
|
|
27
|
+
const defaultBuiltinsPropertyValueSerializer = new BuiltinPropertyValueSerializer() // (suffices because serializeNodeBases also uses this class)
|
|
22
28
|
/**
|
|
23
29
|
* A function that serializes the given value of the given {@link Property property},
|
|
24
|
-
* using (an instance of) the same {@link
|
|
30
|
+
* using (an instance of) the same {@link BuiltinPropertyValueSerializer} class as the {@link serializeNodeBases} function.
|
|
25
31
|
*/
|
|
26
32
|
export const serializePropertyValue = <T>(value: T, property: Property): string =>
|
|
27
|
-
|
|
33
|
+
defaultBuiltinsPropertyValueSerializer.serializeValue(value, property)!
|
|
28
34
|
|
|
29
35
|
|
|
30
36
|
/**
|
package/src/deserializer.ts
CHANGED
|
@@ -16,16 +16,16 @@
|
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
17
|
|
|
18
18
|
import {
|
|
19
|
+
BuiltinPropertyValueDeserializer,
|
|
19
20
|
Classifier,
|
|
20
21
|
Containment,
|
|
21
|
-
DefaultPrimitiveTypeDeserializer,
|
|
22
22
|
defaultSimplisticHandler,
|
|
23
23
|
Enumeration,
|
|
24
24
|
Language,
|
|
25
25
|
MemoisingSymbolTable,
|
|
26
26
|
PrimitiveType,
|
|
27
|
-
PrimitiveTypeDeserializer,
|
|
28
27
|
Property,
|
|
28
|
+
PropertyValueDeserializer,
|
|
29
29
|
Reference,
|
|
30
30
|
SimplisticHandler,
|
|
31
31
|
unresolved
|
|
@@ -43,7 +43,7 @@ import { NodesToInstall } from "./linking.js"
|
|
|
43
43
|
export type Deserializer<T> = (
|
|
44
44
|
serializationChunk: LionWebJsonChunk,
|
|
45
45
|
dependentNodes?: INodeBase[],
|
|
46
|
-
|
|
46
|
+
propertyValueDeserializer?: PropertyValueDeserializer,
|
|
47
47
|
problemHandler?: SimplisticHandler
|
|
48
48
|
) => T;
|
|
49
49
|
|
|
@@ -84,7 +84,7 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases: ILanguageBase[]
|
|
|
84
84
|
return (
|
|
85
85
|
serializationChunk: LionWebJsonChunk,
|
|
86
86
|
dependentNodes: INodeBase[] = [],
|
|
87
|
-
|
|
87
|
+
propertyValueDeserializer: PropertyValueDeserializer = new BuiltinPropertyValueDeserializer(),
|
|
88
88
|
problemsHandler: SimplisticHandler = defaultSimplisticHandler
|
|
89
89
|
): RootsWithIdMapping => {
|
|
90
90
|
|
|
@@ -106,7 +106,7 @@ export const nodeBaseDeserializerWithIdMapping = (languageBases: ILanguageBase[]
|
|
|
106
106
|
problemsHandler.reportProblem(`can't deserialize value for feature with key ${propertyMetaPointer.key} in ${languageMessage}: feature not found on classifier ${classifierMetaPointer.key} in language (${classifierMetaPointer.language}, ${classifierMetaPointer.version}) - skipping`);
|
|
107
107
|
} else if (feature instanceof Property) {
|
|
108
108
|
if (feature.type instanceof PrimitiveType) {
|
|
109
|
-
node.getPropertyValueManager(feature).setDirectly(value === null ? undefined :
|
|
109
|
+
node.getPropertyValueManager(feature).setDirectly(value === null ? undefined : propertyValueDeserializer.deserializeValue(value, feature));
|
|
110
110
|
} else if (feature.type instanceof Enumeration) {
|
|
111
111
|
if (value !== undefined) {
|
|
112
112
|
const literal = feature.type.literals.find((literal) => literal.key === value);
|
|
@@ -224,9 +224,9 @@ export const nodeBaseDeserializer = (languageBases: ILanguageBase[], handleDelta
|
|
|
224
224
|
return (
|
|
225
225
|
serializationChunk: LionWebJsonChunk,
|
|
226
226
|
dependentNodes: INodeBase[] = [],
|
|
227
|
-
|
|
227
|
+
propertyValueDeserializer: PropertyValueDeserializer = new BuiltinPropertyValueDeserializer(),
|
|
228
228
|
problemsHandler: SimplisticHandler = defaultSimplisticHandler
|
|
229
229
|
): INodeBase[] =>
|
|
230
|
-
deserializerWithIdMapping(serializationChunk, dependentNodes,
|
|
230
|
+
deserializerWithIdMapping(serializationChunk, dependentNodes, propertyValueDeserializer, problemsHandler).roots
|
|
231
231
|
}
|
|
232
232
|
|
package/src/index.ts
CHANGED
|
@@ -19,11 +19,11 @@ export * from "./base-types.js";
|
|
|
19
19
|
export * from "./convenience.js";
|
|
20
20
|
export * from "./deltas/index.js";
|
|
21
21
|
export * from "./deserializer.js";
|
|
22
|
-
export {deepDuplicateWith} from "./duplicator.js";
|
|
22
|
+
export { deepDuplicateWith } from "./duplicator.js";
|
|
23
23
|
export * from "./id-mapping.js";
|
|
24
24
|
// skip linking.js: see comment there
|
|
25
|
-
export * from "./
|
|
25
|
+
export * from "./LionCore_builtins.g.js";
|
|
26
26
|
export {serializeNodeBases} from "./serializer.js";
|
|
27
|
+
export { asTreeTextWith } from "./textualizer.js";
|
|
27
28
|
export * from "./value-managers/index.js";
|
|
28
|
-
export {asTreeTextWith} from "./textualizer.js";
|
|
29
29
|
|
package/src/serializer.ts
CHANGED
|
@@ -20,11 +20,11 @@ import {
|
|
|
20
20
|
builtinClassifiers,
|
|
21
21
|
builtinFeatures,
|
|
22
22
|
Containment,
|
|
23
|
-
ExtractionFacade,
|
|
24
23
|
Feature,
|
|
24
|
+
nodeSerializer,
|
|
25
25
|
Property,
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
Reader,
|
|
27
|
+
Reference
|
|
28
28
|
} from "@lionweb/core"
|
|
29
29
|
|
|
30
30
|
import { INodeBase, LionCore_builtinsBase } from "./index.js"
|
|
@@ -48,10 +48,10 @@ export const getFeatureValue = (node: INodeBase, feature: Feature) => {
|
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
-
*
|
|
51
|
+
* A {@link Reader} that works on/for {@link INodeBase}s specifically.
|
|
52
52
|
* **Note** that this function is for internal use only!
|
|
53
53
|
*/
|
|
54
|
-
export const nodeBaseReader:
|
|
54
|
+
export const nodeBaseReader: Reader<INodeBase> = {
|
|
55
55
|
classifierOf: (node) => node.classifier,
|
|
56
56
|
getFeatureValue,
|
|
57
57
|
enumerationLiteralFrom: (encoding, enumeration) => {
|
|
@@ -81,6 +81,5 @@ export const nodeBaseReader: ExtractionFacade<INodeBase> = {
|
|
|
81
81
|
/**
|
|
82
82
|
* @return a serialization of the given nodes (of type {@link INodeBase}) as a {@link LionWebJsonChunk}.
|
|
83
83
|
*/
|
|
84
|
-
export const serializeNodeBases = (
|
|
85
|
-
serializeNodes(nodes, nodeBaseReader, { serializeEmptyFeatures: false });
|
|
84
|
+
export const serializeNodeBases = nodeSerializer(nodeBaseReader, { serializeEmptyFeatures: false });
|
|
86
85
|
|
package/src/textualizer.ts
CHANGED
|
@@ -19,7 +19,7 @@ import { allFeaturesOf, Containment, Feature, Property, Reference, unresolved }
|
|
|
19
19
|
import { asString, indentWith, Template } from "littoral-templates"
|
|
20
20
|
|
|
21
21
|
import { INodeBase } from "./base-types.js"
|
|
22
|
-
import { LionCore_builtinsBase } from "./
|
|
22
|
+
import { LionCore_builtinsBase } from "./LionCore_builtins.g.js"
|
|
23
23
|
|
|
24
24
|
const indent = indentWith(" ")(1)
|
|
25
25
|
|
|
File without changes
|