@lionweb/core 0.8.0-beta.5 → 0.8.0-beta.6

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.
Files changed (118) hide show
  1. package/CHANGELOG.md +27 -5
  2. package/dist/deserializer.d.ts +10 -2
  3. package/dist/deserializer.d.ts.map +1 -1
  4. package/dist/deserializer.js +8 -7
  5. package/dist/deserializer.js.map +1 -1
  6. package/dist/dynamic-facade.d.ts +1 -1
  7. package/dist/dynamic-facade.d.ts.map +1 -1
  8. package/dist/dynamic-facade.js +3 -3
  9. package/dist/dynamic-facade.js.map +1 -1
  10. package/dist/index.d.ts +0 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +0 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/m3/builtins-common.d.ts +70 -0
  15. package/dist/m3/builtins-common.d.ts.map +1 -0
  16. package/dist/m3/builtins-common.js +88 -0
  17. package/dist/m3/builtins-common.js.map +1 -0
  18. package/dist/m3/builtins-function.d.ts +9 -0
  19. package/dist/m3/builtins-function.d.ts.map +1 -0
  20. package/dist/m3/builtins-function.js +19 -0
  21. package/dist/m3/builtins-function.js.map +1 -0
  22. package/dist/m3/deserializer.d.ts +25 -0
  23. package/dist/m3/deserializer.d.ts.map +1 -1
  24. package/dist/m3/deserializer.js +18 -11
  25. package/dist/m3/deserializer.js.map +1 -1
  26. package/dist/m3/index.d.ts +7 -3
  27. package/dist/m3/index.d.ts.map +1 -1
  28. package/dist/m3/index.js +6 -3
  29. package/dist/m3/index.js.map +1 -1
  30. package/dist/m3/lioncore-common.d.ts +37 -0
  31. package/dist/m3/lioncore-common.d.ts.map +1 -0
  32. package/dist/m3/lioncore-common.js +10 -0
  33. package/dist/m3/lioncore-common.js.map +1 -0
  34. package/dist/m3/reading-writing.d.ts +41 -0
  35. package/dist/m3/reading-writing.d.ts.map +1 -0
  36. package/dist/m3/reading-writing.js +84 -0
  37. package/dist/m3/reading-writing.js.map +1 -0
  38. package/dist/m3/serializer.d.ts +17 -0
  39. package/dist/m3/serializer.d.ts.map +1 -1
  40. package/dist/m3/serializer.js +11 -2
  41. package/dist/m3/serializer.js.map +1 -1
  42. package/dist/m3/types.d.ts +9 -13
  43. package/dist/m3/types.d.ts.map +1 -1
  44. package/dist/m3/types.js +1 -5
  45. package/dist/m3/types.js.map +1 -1
  46. package/dist/m3/version.d.ts +19 -0
  47. package/dist/m3/version.d.ts.map +1 -0
  48. package/dist/m3/version.js +19 -0
  49. package/dist/m3/version.js.map +1 -0
  50. package/dist/m3/versions/v2023_1/builtins-legacy.d.ts +44 -0
  51. package/dist/m3/versions/v2023_1/builtins-legacy.d.ts.map +1 -0
  52. package/dist/m3/{builtins.js → versions/v2023_1/builtins-legacy.js} +24 -79
  53. package/dist/m3/versions/v2023_1/builtins-legacy.js.map +1 -0
  54. package/dist/m3/versions/v2023_1/builtins.d.ts +34 -0
  55. package/dist/m3/versions/v2023_1/builtins.d.ts.map +1 -0
  56. package/dist/m3/versions/v2023_1/builtins.js +75 -0
  57. package/dist/m3/versions/v2023_1/builtins.js.map +1 -0
  58. package/dist/m3/versions/v2023_1/lioncore.d.ts +34 -0
  59. package/dist/m3/versions/v2023_1/lioncore.d.ts.map +1 -0
  60. package/dist/m3/versions/v2023_1/lioncore.js +86 -0
  61. package/dist/m3/versions/v2023_1/lioncore.js.map +1 -0
  62. package/dist/m3/versions/v2023_1/version.d.ts +6 -0
  63. package/dist/m3/versions/v2023_1/version.d.ts.map +1 -0
  64. package/dist/m3/versions/v2023_1/version.js +8 -0
  65. package/dist/m3/versions/v2023_1/version.js.map +1 -0
  66. package/dist/m3/versions.d.ts +27 -0
  67. package/dist/m3/versions.d.ts.map +1 -0
  68. package/dist/m3/versions.js +28 -0
  69. package/dist/m3/versions.js.map +1 -0
  70. package/dist/reading.d.ts +2 -0
  71. package/dist/reading.d.ts.map +1 -1
  72. package/dist/serializer.d.ts +12 -1
  73. package/dist/serializer.d.ts.map +1 -1
  74. package/dist/serializer.js +4 -4
  75. package/dist/serializer.js.map +1 -1
  76. package/dist/writing.d.ts +2 -0
  77. package/dist/writing.d.ts.map +1 -1
  78. package/dist/writing.js.map +1 -1
  79. package/package.json +3 -3
  80. package/src/deserializer.ts +18 -14
  81. package/src/dynamic-facade.ts +3 -4
  82. package/src/index.ts +0 -1
  83. package/src/m3/README.md +1 -1
  84. package/src/m3/builtins-common.ts +143 -0
  85. package/src/m3/builtins-function.ts +22 -0
  86. package/src/m3/deserializer.ts +43 -14
  87. package/src/m3/index.ts +7 -3
  88. package/src/m3/lioncore-common.ts +42 -0
  89. package/src/m3/reading-writing.ts +160 -0
  90. package/src/m3/serializer.ts +25 -2
  91. package/src/m3/types.ts +10 -16
  92. package/src/m3/version.ts +23 -0
  93. package/src/m3/versions/v2023_1/builtins-legacy.ts +126 -0
  94. package/src/m3/versions/v2023_1/builtins.ts +102 -0
  95. package/src/m3/{lioncore.ts → versions/v2023_1/lioncore.ts} +53 -76
  96. package/src/m3/versions/v2023_1/version.ts +9 -0
  97. package/src/m3/versions.ts +37 -0
  98. package/src/reading.ts +2 -0
  99. package/src/serializer.ts +18 -5
  100. package/src/writing.ts +2 -0
  101. package/dist/m3/builtins.d.ts +0 -82
  102. package/dist/m3/builtins.d.ts.map +0 -1
  103. package/dist/m3/builtins.js.map +0 -1
  104. package/dist/m3/facade.d.ts +0 -17
  105. package/dist/m3/facade.d.ts.map +0 -1
  106. package/dist/m3/facade.js +0 -58
  107. package/dist/m3/facade.js.map +0 -1
  108. package/dist/m3/lioncore.d.ts +0 -41
  109. package/dist/m3/lioncore.d.ts.map +0 -1
  110. package/dist/m3/lioncore.js +0 -90
  111. package/dist/m3/lioncore.js.map +0 -1
  112. package/dist/version.d.ts +0 -5
  113. package/dist/version.d.ts.map +0 -1
  114. package/dist/version.js +0 -5
  115. package/dist/version.js.map +0 -1
  116. package/src/m3/builtins.ts +0 -198
  117. package/src/m3/facade.ts +0 -130
  118. package/src/version.ts +0 -5
@@ -1,63 +1,8 @@
1
1
  import { asMinimalJsonString } from "@lionweb/ts-utils";
2
- import { currentReleaseVersion } from "../version.js";
3
- import { LanguageFactory } from "./factory.js";
4
- import { Concept, lioncoreBuiltinsKey } from "./types.js";
5
- import { isUnresolvedReference } from "../references.js";
6
- const lioncoreBuiltinsIdAndKeyGenerator = (...names) => [lioncoreBuiltinsKey, ...names.slice(1)].join("-");
7
- const factory = new LanguageFactory("LionCore_builtins", currentReleaseVersion, lioncoreBuiltinsIdAndKeyGenerator, lioncoreBuiltinsIdAndKeyGenerator);
8
- /*
9
- * ID == key: `LionCore-builtins-${qualified name _without_ "LionCore-builtins", dash-separated}`
10
- */
11
- /**
12
- * Definition of a LionCore language that serves as a standard library of built-in primitive types.
13
- */
14
- const lioncoreBuiltins = factory.language;
15
- const stringDataType = factory.primitiveType("String");
16
- const booleanDataType = factory.primitiveType("Boolean");
17
- const integerDataType = factory.primitiveType("Integer");
18
- const jsonDataType = factory.primitiveType("JSON");
19
- const node = factory.concept("Node", true);
20
- const isBuiltinNodeConcept = (classifier) => classifier instanceof Concept &&
21
- classifier.language.key === lioncoreBuiltinsKey &&
22
- classifier.language.version === currentReleaseVersion &&
23
- classifier.key === builtinClassifiers.node.key &&
24
- classifier.abstract;
25
- const inamed = factory.interface("INamed");
26
- const inamed_name = factory.property(inamed, "name").ofType(stringDataType);
27
- const builtinPrimitives = {
28
- stringDataType,
29
- booleanDataType,
30
- integerDataType,
31
- jsonDataType,
32
- /**
33
- * Misspelled alias of {@link stringDataType}, kept for backward compatibility, and to be deprecated and removed later.
34
- */
35
- stringDatatype: stringDataType,
36
- /**
37
- * Misspelled alias of {@link booleanDataType}, kept for backward compatibility, and to be deprecated and removed later.
38
- */
39
- booleanDatatype: booleanDataType,
40
- /**
41
- * Misspelled alias of {@link integerDataType}, kept for backward compatibility, and to be deprecated and removed later.
42
- */
43
- integerDatatype: integerDataType,
44
- /**
45
- * Misspelled alias of {@link jsonDataType}, kept for backward compatibility, and to be deprecated and removed later.
46
- */
47
- jsonDatatype: jsonDataType
48
- };
49
- const builtinClassifiers = {
50
- node,
51
- inamed
52
- };
53
- const builtinFeatures = {
54
- inamed_name
55
- };
56
- /**
57
- * Determines whether two data types should be structurally equal based on equality of: meta type, key, and language's key.
58
- */
59
- const shouldBeIdentical = (left, right) => left.key === right.key && left.language.key === right.language.key && left.metaType() === right.metaType();
60
- class DataTypeRegister {
2
+ import { shouldBeIdentical } from "../../builtins-common.js";
3
+ import { isUnresolvedReference } from "../../../references.js";
4
+ import { v2023_1 } from "./version.js";
5
+ class DataTypeRegistry {
61
6
  constructor() {
62
7
  this.map = new Map();
63
8
  this._sealed = false;
@@ -81,16 +26,19 @@ class DataTypeRegister {
81
26
  return undefined;
82
27
  }
83
28
  }
29
+ const { booleanDataType, integerDataType, jsonDataType, stringDataType } = v2023_1.builtinsFacade.primitiveTypes;
84
30
  /**
85
31
  * An implementation of {@link PropertyValueDeserializer} that knows how to deserialize serialized values of all the built-in primitive types.
32
+ *
33
+ * @deprecated
86
34
  */
87
- export class BuiltinPropertyValueDeserializer extends DataTypeRegister {
35
+ export class BuiltinPropertyValueDeserializer extends DataTypeRegistry {
88
36
  constructor() {
89
37
  super();
90
- this.register(stringDataType, value => value);
91
- this.register(booleanDataType, value => JSON.parse(value));
92
- this.register(integerDataType, value => Number(value));
93
- this.register(jsonDataType, value => JSON.parse(value));
38
+ this.register(stringDataType, (value) => value);
39
+ this.register(booleanDataType, (value) => JSON.parse(value));
40
+ this.register(integerDataType, (value) => Number(value));
41
+ this.register(jsonDataType, (value) => JSON.parse(value));
94
42
  }
95
43
  deserializeValue(value, property) {
96
44
  if (value === undefined) {
@@ -112,25 +60,25 @@ export class BuiltinPropertyValueDeserializer extends DataTypeRegister {
112
60
  }
113
61
  }
114
62
  }
115
- /**
116
- * Singleton instance of {@link BuiltinPropertyValueDeserializer}.
117
- */
118
- export const builtinPropertyValueDeserializer = new BuiltinPropertyValueDeserializer().sealed();
119
63
  /**
120
64
  * Misspelled alias of {@link BuiltinPropertyValueDeserializer}, kept for backward compatibility, and to be deprecated and removed later.
65
+ *
66
+ * @deprecated
121
67
  */
122
68
  export class DefaultPrimitiveTypeDeserializer extends BuiltinPropertyValueDeserializer {
123
69
  }
124
70
  /**
125
71
  * An implementation of {@link PropertyValueSerializer} that knows how to serialize values of all the built-in primitive types.
72
+ *
73
+ * @deprecated
126
74
  */
127
- export class BuiltinPropertyValueSerializer extends DataTypeRegister {
75
+ export class BuiltinPropertyValueSerializer extends DataTypeRegistry {
128
76
  constructor() {
129
77
  super();
130
- this.register(stringDataType, value => value);
131
- this.register(booleanDataType, value => `${value}`);
132
- this.register(integerDataType, value => `${value}`);
133
- this.register(jsonDataType, value => asMinimalJsonString(value));
78
+ this.register(stringDataType, (value) => value);
79
+ this.register(booleanDataType, (value) => `${value}`);
80
+ this.register(integerDataType, (value) => `${value}`);
81
+ this.register(jsonDataType, (value) => asMinimalJsonString(value));
134
82
  }
135
83
  serializeValue(value, property) {
136
84
  if (value === undefined) {
@@ -152,14 +100,11 @@ export class BuiltinPropertyValueSerializer extends DataTypeRegister {
152
100
  }
153
101
  }
154
102
  }
155
- /**
156
- * Singleton instance of {@link BuiltinPropertyValueSerializer}.
157
- */
158
- export const builtinPropertyValueSerializer = new BuiltinPropertyValueSerializer().sealed();
159
103
  /**
160
104
  * Misspelled alias of {@link BuiltinPropertyValueSerializer}, kept for backward compatibility, and to be deprecated and removed later.
105
+ *
106
+ * @deprecated
161
107
  */
162
108
  export class DefaultPrimitiveTypeSerializer extends BuiltinPropertyValueSerializer {
163
109
  }
164
- export { builtinPrimitives, builtinClassifiers, builtinFeatures, isBuiltinNodeConcept, lioncoreBuiltins, shouldBeIdentical };
165
- //# sourceMappingURL=builtins.js.map
110
+ //# sourceMappingURL=builtins-legacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtins-legacy.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins-legacy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { LionCoreBuiltinsFacade } from "../../builtins-common.js";
2
+ export declare const lioncoreBuiltinsFacade: LionCoreBuiltinsFacade;
3
+ /**
4
+ * Definition of a LionCore language that serves as a standard library of built-in primitive types.
5
+ *
6
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.isBuiltinNodeConcept` instead.
7
+ */
8
+ export declare const lioncoreBuiltins: import("../../types.js").Language;
9
+ /**
10
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.primitiveTypes` instead.
11
+ */
12
+ export declare const builtinPrimitives: {
13
+ booleanDataType: import("../../types.js").PrimitiveType;
14
+ integerDataType: import("../../types.js").PrimitiveType;
15
+ stringDataType: import("../../types.js").PrimitiveType;
16
+ } & Record<string, import("../../types.js").PrimitiveType>;
17
+ /**
18
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.classifiers` instead.
19
+ */
20
+ export declare const builtinClassifiers: {
21
+ node: import("../../types.js").Concept;
22
+ inamed: import("../../types.js").Interface;
23
+ };
24
+ /**
25
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.features` instead.
26
+ */
27
+ export declare const builtinFeatures: {
28
+ inamed_name: import("../../types.js").Property;
29
+ };
30
+ /**
31
+ * @deprecated Use {@link isBuiltinNodeConcept} instead.
32
+ */
33
+ export declare const isBuiltinConcept: (classifier: import("../../types.js").Classifier, lionWebVersion?: import("../../version.js").LionWebVersion) => boolean;
34
+ //# sourceMappingURL=builtins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EAMzB,MAAM,0BAA0B,CAAA;AA4BjC,eAAO,MAAM,sBAAsB,EAAE,sBAwCpC,CAAA;AAGD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,mCAAmB,CAAA;AAChD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;0DAAwC,CAAA;AACtE;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;CAAqC,CAAA;AACpE;;GAEG;AACH,eAAO,MAAM,eAAe;;CAAkC,CAAA;AAC9D;;GAEG;AACH,eAAO,MAAM,gBAAgB,0HAAuB,CAAA"}
@@ -0,0 +1,75 @@
1
+ import { asMinimalJsonString } from "@lionweb/ts-utils";
2
+ import { lioncoreBuiltinsIdAndKeyGenerator, newPropertyValueDeserializerRegistry, newPropertyValueSerializerRegistry, propertyValueDeserializerFrom, propertyValueSerializerFrom } from "../../builtins-common.js";
3
+ import { isBuiltinNodeConcept } from "../../builtins-function.js";
4
+ import { LanguageFactory } from "../../factory.js";
5
+ const factory = new LanguageFactory("LionCore_builtins", "2023.1", lioncoreBuiltinsIdAndKeyGenerator, lioncoreBuiltinsIdAndKeyGenerator);
6
+ /*
7
+ * ID == key: `LionCore-builtins-${qualified name _without_ "LionCore-builtins", dash-separated}`
8
+ */
9
+ const stringDataType = factory.primitiveType("String");
10
+ const booleanDataType = factory.primitiveType("Boolean");
11
+ const integerDataType = factory.primitiveType("Integer");
12
+ const jsonDataType = factory.primitiveType("JSON");
13
+ const node = factory.concept("Node", true);
14
+ const inamed = factory.interface("INamed");
15
+ const inamed_name = factory.property(inamed, "name").ofType(stringDataType);
16
+ export const lioncoreBuiltinsFacade = {
17
+ language: factory.language,
18
+ propertyValueDeserializer: propertyValueDeserializerFrom(newPropertyValueDeserializerRegistry()
19
+ .set(stringDataType, (value) => value)
20
+ .set(booleanDataType, (value) => JSON.parse(value))
21
+ .set(integerDataType, (value) => Number(value))
22
+ .set(jsonDataType, (value) => JSON.parse(value))),
23
+ propertyValueSerializer: propertyValueSerializerFrom(newPropertyValueSerializerRegistry()
24
+ .set(stringDataType, (value) => value)
25
+ .set(booleanDataType, (value) => `${value}`)
26
+ .set(integerDataType, (value) => `${value}`)
27
+ .set(jsonDataType, (value) => asMinimalJsonString(value))),
28
+ classifiers: { node, inamed },
29
+ features: { inamed_name },
30
+ primitiveTypes: {
31
+ stringDataType,
32
+ booleanDataType,
33
+ integerDataType,
34
+ jsonDataType,
35
+ /**
36
+ * Misspelled alias of {@link stringDataType}, kept for backward compatibility, and to be deprecated and removed later.
37
+ */
38
+ stringDatatype: stringDataType,
39
+ /**
40
+ * Misspelled alias of {@link booleanDataType}, kept for backward compatibility, and to be deprecated and removed later.
41
+ */
42
+ booleanDatatype: booleanDataType,
43
+ /**
44
+ * Misspelled alias of {@link integerDataType}, kept for backward compatibility, and to be deprecated and removed later.
45
+ */
46
+ integerDatatype: integerDataType,
47
+ /**
48
+ * Misspelled alias of {@link jsonDataType}, kept for backward compatibility, and to be deprecated and removed later.
49
+ */
50
+ jsonDatatype: jsonDataType
51
+ }
52
+ };
53
+ /**
54
+ * Definition of a LionCore language that serves as a standard library of built-in primitive types.
55
+ *
56
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.isBuiltinNodeConcept` instead.
57
+ */
58
+ export const lioncoreBuiltins = factory.language;
59
+ /**
60
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.primitiveTypes` instead.
61
+ */
62
+ export const builtinPrimitives = lioncoreBuiltinsFacade.primitiveTypes;
63
+ /**
64
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.classifiers` instead.
65
+ */
66
+ export const builtinClassifiers = lioncoreBuiltinsFacade.classifiers;
67
+ /**
68
+ * @deprecated Use `<LionWebVersion>.builtinsFacade.features` instead.
69
+ */
70
+ export const builtinFeatures = lioncoreBuiltinsFacade.features;
71
+ /**
72
+ * @deprecated Use {@link isBuiltinNodeConcept} instead.
73
+ */
74
+ export const isBuiltinConcept = isBuiltinNodeConcept;
75
+ //# sourceMappingURL=builtins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { LionCoreFacade } from "../../lioncore-common.js";
2
+ /**
3
+ * Definition of LionCore in terms of itself.
4
+ *
5
+ * @deprecated Use {@code lioncoreFacade.language} instead.
6
+ */
7
+ export declare const lioncore: import("../../types.js").Language;
8
+ export declare const lioncoreFacade: LionCoreFacade;
9
+ /**
10
+ * @deprecated Use {@code <LionWeb version>.lioncoreFacade.metaConcepts} instead.
11
+ */
12
+ export declare const metaConcepts: {
13
+ annotation: import("../../types.js").Concept;
14
+ classifier: import("../../types.js").Concept;
15
+ concept: import("../../types.js").Concept;
16
+ interface: import("../../types.js").Concept;
17
+ containment: import("../../types.js").Concept;
18
+ enumeration: import("../../types.js").Concept;
19
+ enumerationLiteral: import("../../types.js").Concept;
20
+ ikeyed: import("../../types.js").Interface;
21
+ language: import("../../types.js").Concept;
22
+ primitiveType: import("../../types.js").Concept;
23
+ property: import("../../types.js").Concept;
24
+ reference: import("../../types.js").Concept;
25
+ };
26
+ /**
27
+ * @deprecated Use {@code <LionWeb version>.lioncoreFacade.metaFeatures} instead.
28
+ */
29
+ export declare const metaFeatures: {
30
+ concept_abstract: import("../../types.js").Property;
31
+ ikeyed_key: import("../../types.js").Property;
32
+ language_version: import("../../types.js").Property;
33
+ };
34
+ //# sourceMappingURL=lioncore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lioncore.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAcnF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,mCAA4C,CAAA;AA6DjE,eAAO,MAAM,cAAc,EAAE,cAqB5B,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;CAA8B,CAAA;AAEvD;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAA8B,CAAA"}
@@ -0,0 +1,86 @@
1
+ import { lioncoreBuiltinsFacade } from "./builtins.js";
2
+ import { LanguageFactory } from "../../factory.js";
3
+ import { generatedLionCoreKeyFrom } from "../../lioncore-common.js";
4
+ const factory = new LanguageFactory("LionCore_M3", "2023.1", (...names) => "-id-" + generatedLionCoreKeyFrom(...names), generatedLionCoreKeyFrom);
5
+ /*
6
+ * ID: `-id-${key}`
7
+ * key: qualified name _without_ "LionCore_M3", dash-separated
8
+ */
9
+ /**
10
+ * Definition of LionCore in terms of itself.
11
+ *
12
+ * @deprecated Use {@code lioncoreFacade.language} instead.
13
+ */
14
+ export const lioncore = factory.language.havingKey("LionCore-M3");
15
+ const { inamed } = lioncoreBuiltinsFacade.classifiers;
16
+ const { booleanDataType, stringDataType } = lioncoreBuiltinsFacade.primitiveTypes;
17
+ const ikeyed = factory.interface("IKeyed").extending(inamed);
18
+ const ikeyed_key = factory.property(ikeyed, "key").ofType(stringDataType);
19
+ const feature = factory.concept("Feature", true).implementing(ikeyed);
20
+ factory.property(feature, "optional").ofType(booleanDataType);
21
+ const property = factory.concept("Property", false, feature);
22
+ const property_type = factory.reference(property, "type");
23
+ const link = factory.concept("Link", true, feature);
24
+ factory.property(link, "multiple").ofType(booleanDataType);
25
+ const link_type = factory.reference(link, "type");
26
+ const containment = factory.concept("Containment", false, link);
27
+ const reference = factory.concept("Reference", false, link);
28
+ const languageEntity = factory.concept("LanguageEntity", true).implementing(ikeyed);
29
+ const classifier = factory.concept("Classifier", true, languageEntity);
30
+ factory.containment(classifier, "features").isOptional().isMultiple().ofType(feature);
31
+ link_type.ofType(classifier);
32
+ const annotation = factory.concept("Annotation", false, classifier);
33
+ factory.reference(annotation, "annotates").isOptional().ofType(classifier);
34
+ factory.reference(annotation, "extends").isOptional().ofType(annotation);
35
+ const annotation_implements = factory.reference(annotation, "implements").isMultiple().isOptional();
36
+ const concept = factory.concept("Concept", false, classifier);
37
+ const concept_abstract = factory.property(concept, "abstract").ofType(booleanDataType);
38
+ factory.property(concept, "partition").ofType(booleanDataType);
39
+ factory.reference(concept, "extends").isOptional().ofType(concept);
40
+ const concept_implements = factory.reference(concept, "implements").isOptional().isMultiple();
41
+ const interface_ = factory.concept("Interface", false, classifier);
42
+ factory.reference(interface_, "extends").isOptional().isMultiple().ofType(interface_);
43
+ annotation_implements.ofType(interface_);
44
+ concept_implements.ofType(interface_);
45
+ const dataType = factory.concept("DataType", true, languageEntity);
46
+ property_type.ofType(dataType);
47
+ const primitiveType = factory.concept("PrimitiveType", false, dataType);
48
+ const enumeration = factory.concept("Enumeration", false, dataType);
49
+ const enumeration_literals = factory.containment(enumeration, "literals").isMultiple().isOptional();
50
+ const enumerationLiteral = factory.concept("EnumerationLiteral", false).implementing(ikeyed);
51
+ enumeration_literals.ofType(enumerationLiteral);
52
+ const language = factory.concept("Language", false).implementing(ikeyed).isPartition();
53
+ const language_version = factory.property(language, "version").ofType(stringDataType);
54
+ factory.containment(language, "entities").isOptional().isMultiple().ofType(languageEntity);
55
+ factory.reference(language, "dependsOn").isOptional().isMultiple().ofType(language);
56
+ export const lioncoreFacade = {
57
+ language: factory.language,
58
+ metaConcepts: {
59
+ annotation,
60
+ classifier,
61
+ concept,
62
+ interface: interface_,
63
+ containment,
64
+ enumeration,
65
+ enumerationLiteral,
66
+ ikeyed,
67
+ language,
68
+ primitiveType,
69
+ property,
70
+ reference
71
+ },
72
+ metaFeatures: {
73
+ concept_abstract,
74
+ ikeyed_key,
75
+ language_version
76
+ }
77
+ };
78
+ /**
79
+ * @deprecated Use {@code <LionWeb version>.lioncoreFacade.metaConcepts} instead.
80
+ */
81
+ export const metaConcepts = lioncoreFacade.metaConcepts;
82
+ /**
83
+ * @deprecated Use {@code <LionWeb version>.lioncoreFacade.metaFeatures} instead.
84
+ */
85
+ export const metaFeatures = lioncoreFacade.metaFeatures;
86
+ //# sourceMappingURL=lioncore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lioncore.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { LionWebVersion } from "../../version.js";
2
+ /**
3
+ * A representation of the 2023.1 LionWeb version.
4
+ */
5
+ export declare const v2023_1: LionWebVersion;
6
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/version.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,OAAO,gBAAuE,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { lioncoreBuiltinsFacade } from "./builtins.js";
2
+ import { lioncoreFacade } from "./lioncore.js";
3
+ import { LionWebVersion } from "../../version.js";
4
+ /**
5
+ * A representation of the 2023.1 LionWeb version.
6
+ */
7
+ export const v2023_1 = new LionWebVersion("2023.1", lioncoreFacade, lioncoreBuiltinsFacade);
8
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { LionWebVersion } from "./version.js";
2
+ /**
3
+ * The *current* release(d) version.
4
+ *
5
+ * @deprecated Use {@code defaultLionWebVersion.serializationFormatVersion} instead.
6
+ */
7
+ export declare const currentReleaseVersion = "2023.1";
8
+ /**
9
+ * An enumeration (as const object) of all LionWeb versions currently supported by the WIP specification.
10
+ */
11
+ export declare const LionWebVersions: {
12
+ readonly v2023_1: LionWebVersion;
13
+ };
14
+ /**
15
+ * All LionWeb versions.
16
+ */
17
+ export declare const allLionWebVersions: LionWebVersion[];
18
+ /**
19
+ * The current default LionWeb version.
20
+ */
21
+ export declare const defaultLionWebVersion: LionWebVersion;
22
+ /**
23
+ * @return the {@link LionWebVersion} matching the given `serializationFormatVersion` string,
24
+ * or {@link undefined} if there’s none.
25
+ */
26
+ export declare const lionWebVersionFrom: (serializationFormatVersion: string) => LionWebVersion | undefined;
27
+ //# sourceMappingURL=versions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/m3/versions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG7C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,WAAW,CAAA;AAG7C;;GAEG;AACH,eAAO,MAAM,eAAe;;CAGlB,CAAA;AAEV;;GAEG;AACH,eAAO,MAAM,kBAAkB,kBAAiC,CAAA;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB,gBAA0B,CAAA;AAE5D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,4BAA4B,MAAM,KAAG,cAAc,GAAG,SACkB,CAAA"}
@@ -0,0 +1,28 @@
1
+ import { v2023_1 } from "./versions/v2023_1/version.js";
2
+ /**
3
+ * The *current* release(d) version.
4
+ *
5
+ * @deprecated Use {@code defaultLionWebVersion.serializationFormatVersion} instead.
6
+ */
7
+ export const currentReleaseVersion = "2023.1";
8
+ /**
9
+ * An enumeration (as const object) of all LionWeb versions currently supported by the WIP specification.
10
+ */
11
+ export const LionWebVersions = {
12
+ // LionWeb standard version 2023.1 — defined at https://lionweb.io/specification/2023.1
13
+ v2023_1
14
+ };
15
+ /**
16
+ * All LionWeb versions.
17
+ */
18
+ export const allLionWebVersions = Object.values(LionWebVersions);
19
+ /**
20
+ * The current default LionWeb version.
21
+ */
22
+ export const defaultLionWebVersion = LionWebVersions.v2023_1;
23
+ /**
24
+ * @return the {@link LionWebVersion} matching the given `serializationFormatVersion` string,
25
+ * or {@link undefined} if there’s none.
26
+ */
27
+ export const lionWebVersionFrom = (serializationFormatVersion) => allLionWebVersions.find((version) => version.serializationFormatVersion === serializationFormatVersion);
28
+ //# sourceMappingURL=versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/m3/versions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAIvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAA;AAG7C;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,uFAAuF;IACvF,OAAO;CACD,CAAA;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;AAEhE;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC,OAAO,CAAA;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,0BAAkC,EAA8B,EAAE,CACjG,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,0BAA0B,KAAK,0BAA0B,CAAC,CAAA"}
package/dist/reading.d.ts CHANGED
@@ -40,6 +40,8 @@ export interface Reader<NT extends Node> {
40
40
  }
41
41
  /**
42
42
  * Alias for {@link Reader}, kept for backward compatibility, and to be deprecated and removed later.
43
+ *
44
+ * @deprecated Use {@link Reader} instead.
43
45
  */
44
46
  export interface ExtractionFacade<NT extends Node> extends Reader<NT> {
45
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../src/reading.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC/F,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGjC;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,UAAU,CAAA;AAEzE;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,KAAK,MAAM,GAAG,SAAS,CAAA;AAExG;;;;;;GAMG;AACH,MAAM,WAAW,MAAM,CAAC,EAAE,SAAS,IAAI;IAEnC;;OAEG;IACH,YAAY,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAA;IAEnC;;OAEG;IACH,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAA;IAGxD;;;OAGG;IACH,sBAAsB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,KAAK,kBAAkB,GAAG,IAAI,CAAA;IAElG;;;OAGG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAA;CAE1C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,EAAE,SAAS,IAAI,CAAE,SAAQ,MAAM,CAAC,EAAE,CAAC;CAAG"}
1
+ {"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../src/reading.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC/F,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGjC;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,UAAU,CAAA;AAEzE;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,KAAK,MAAM,GAAG,SAAS,CAAA;AAExG;;;;;;GAMG;AACH,MAAM,WAAW,MAAM,CAAC,EAAE,SAAS,IAAI;IAEnC;;OAEG;IACH,YAAY,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAA;IAEnC;;OAEG;IACH,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAA;IAGxD;;;OAGG;IACH,sBAAsB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,KAAK,kBAAkB,GAAG,IAAI,CAAA;IAElG;;;OAGG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAA;CAE1C;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB,CAAC,EAAE,SAAS,IAAI,CAAE,SAAQ,MAAM,CAAC,EAAE,CAAC;CAAG"}
@@ -2,6 +2,7 @@ import { LionWebJsonChunk } from "@lionweb/json";
2
2
  import { Reader } from "./reading.js";
3
3
  import { Node } from "./types.js";
4
4
  import { Property } from "./m3/types.js";
5
+ import { LionWebVersion } from "./m3/version.js";
5
6
  /**
6
7
  * Type definition for functions that serializes nodes as a {@link LionWebJsonChunk serialization chunk}.
7
8
  */
@@ -14,6 +15,8 @@ export interface PropertyValueSerializer {
14
15
  }
15
16
  /**
16
17
  * Misspelled alias of {@link PropertyValueSerializer}, kept for backward compatibility, and to be deprecated and removed later.
18
+ *
19
+ * @deprecated Use {@link PropertyValueSerializer} instead.
17
20
  */
18
21
  export interface PrimitiveTypeSerializer extends PropertyValueSerializer {
19
22
  }
@@ -29,11 +32,14 @@ export type SerializationOptions = Partial<{
29
32
  serializeEmptyFeatures: boolean;
30
33
  /**
31
34
  * A {@link PropertyValueSerializer} implementation.
32
- * Default = {@link builtinPropertyValueSerializer}.
35
+ * Default = the value of the `propertyValueSerializer` property of the {@link LionWebVersion version} of the LionWeb serialization format,
36
+ * configured through {@code SerializerConfiguration.lionWebVersion} (which itself defaults to {@link defaultLionWebVersion}).
33
37
  */
34
38
  propertyValueSerializer: PropertyValueSerializer;
35
39
  /**
36
40
  * Misspelled alias of {@link #propertyValueSerializer}, kept for backward compatibility, and to be deprecated and removed later.
41
+ *
42
+ * @deprecated Use {@link propertyValueSerializer} instead.
37
43
  */
38
44
  primitiveTypeSerializer: PropertyValueSerializer;
39
45
  }>;
@@ -49,6 +55,11 @@ export type SerializerConfiguration<NT extends Node> = {
49
55
  * An interface with functions to “read” – i.e., introspect – nodes.
50
56
  */
51
57
  reader: Reader<NT>;
58
+ /**
59
+ * The version of the LionWeb serialization format to serialize in.
60
+ * Default = {@link defaultLionWebVersion}.
61
+ */
62
+ lionWebVersion?: LionWebVersion;
52
63
  } & SerializationOptions;
53
64
  /**
54
65
  * @return a {@link Serializer} function that serializes the {@link Node nodes} passed to it,
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,gBAAgB,EAAmB,MAAM,eAAe,CAAA;AAG/G,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGjC,OAAO,EAOH,QAAQ,EAGX,MAAM,eAAe,CAAA;AAGtB;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,gBAAgB,CAAA;AAG3E;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAA;CACpE;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,uBAAuB;CAAG;AAQ3E;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC;IAEvC;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAA;IAE/B;;;OAGG;IACH,uBAAuB,EAAE,uBAAuB,CAAA;IAEhD;;OAEG;IACH,uBAAuB,EAAE,uBAAuB,CAAA;CAEnD,CAAC,CAAA;AAGF;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,CAAC,EAAE,SAAS,IAAI,IAAI;IACnD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;CACrB,GAAG,oBAAoB,CAAA;AAGxB;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAAE,QAAQ,MAAM,CAAC,EAAE,CAAC,EAAE,uBAAuB,oBAAoB,KAAG,UAAU,CAAC,EAAE,CACxE,CAAA;AAGvD;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAAE,eAAe,uBAAuB,CAAC,EAAE,CAAC,KAAG,UAAU,CAAC,EAAE,CA4IzG,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAC1C,OAAO,EAAE,EAAE,EACX,QAAQ,MAAM,CAAC,EAAE,CAAC,EAClB,mCAAmC,uBAAuB,GAAG,oBAAoB,KAClF,gBAQS,CAAA"}
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,gBAAgB,EAAmB,MAAM,eAAe,CAAA;AAG5E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEjC,OAAO,EAOH,QAAQ,EAGX,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAIhD;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,gBAAgB,CAAA;AAG3E;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAA;CACpE;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,uBAAuB;CAAG;AAQ3E;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC;IAEvC;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAA;IAE/B;;;;OAIG;IACH,uBAAuB,EAAE,uBAAuB,CAAA;IAEhD;;;;OAIG;IACH,uBAAuB,EAAE,uBAAuB,CAAA;CAEnD,CAAC,CAAA;AAGF;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,CAAC,EAAE,SAAS,IAAI,IAAI;IACnD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;IAElB;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;CAClC,GAAG,oBAAoB,CAAA;AAGxB;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAAE,QAAQ,MAAM,CAAC,EAAE,CAAC,EAAE,uBAAuB,oBAAoB,KAAG,UAAU,CAAC,EAAE,CACxE,CAAA;AAGvD;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAAE,eAAe,uBAAuB,CAAC,EAAE,CAAC,KAAG,UAAU,CAAC,EAAE,CA6IzG,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,SAAS,IAAI,EAC1C,OAAO,EAAE,EAAE,EACX,QAAQ,MAAM,CAAC,EAAE,CAAC,EAClB,mCAAmC,uBAAuB,GAAG,oBAAoB,KAClF,gBAQS,CAAA"}
@@ -1,9 +1,8 @@
1
- import { currentSerializationFormatVersion } from "@lionweb/json";
2
1
  import { asArray, keepDefineds, lazyMapGet, uniquesAmong } from "@lionweb/ts-utils";
3
2
  import { asIds, metaPointerFor } from "./functions.js";
4
- import { builtinPropertyValueSerializer } from "./m3/builtins.js";
5
3
  import { inheritsDirectlyFrom } from "./m3/functions.js";
6
4
  import { Containment, Enumeration, PrimitiveType, Property, Reference, simpleNameDeducer } from "./m3/types.js";
5
+ import { defaultLionWebVersion } from "./m3/versions.js";
7
6
  const isPropertyValueSerializer = (value) => typeof value === "object" && value !== null && "serializeValue" in value && typeof value.serializeValue === "function";
8
7
  /**
9
8
  * @return a {@link Serializer} function that serializes the {@link Node nodes} passed to it,
@@ -19,7 +18,8 @@ export const nodeSerializer = (reader, serializationOptions) => serializerWith({
19
18
  */
20
19
  export const serializerWith = (configuration) => {
21
20
  const { reader } = configuration;
22
- const propertyValueSerializer = configuration.propertyValueSerializer ?? configuration.primitiveTypeSerializer ?? builtinPropertyValueSerializer;
21
+ const lionWebVersion = configuration?.lionWebVersion ?? defaultLionWebVersion;
22
+ const propertyValueSerializer = configuration.propertyValueSerializer ?? configuration.primitiveTypeSerializer ?? lionWebVersion.builtinsFacade.propertyValueSerializer;
23
23
  const serializeEmptyFeatures = configuration.serializeEmptyFeatures ?? true;
24
24
  const languageKey2version2classifierKey2allFeatures = {};
25
25
  const memoisedAllFeaturesOf = (classifier) => lazyMapGet(lazyMapGet(lazyMapGet(languageKey2version2classifierKey2allFeatures, classifier.language.key, () => ({})), classifier.language.version, () => ({})), classifier.key, () => uniquesAmong(// make unique in case a feature was inherited from multiple super-classifiers
@@ -129,7 +129,7 @@ export const serializerWith = (configuration) => {
129
129
  };
130
130
  nodes.forEach(node => visit(node, undefined));
131
131
  return {
132
- serializationFormatVersion: currentSerializationFormatVersion,
132
+ serializationFormatVersion: lionWebVersion.serializationFormatVersion,
133
133
  languages: languagesUsed.map(({ key, version }) => ({ key, version })),
134
134
  nodes: serializedNodes
135
135
  };
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"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"}