@emfts/codegen 0.0.1-next.8 → 0.0.2-next.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.
Files changed (152) hide show
  1. package/dist/cli/commands/generate.d.ts.map +1 -1
  2. package/dist/cli/commands/generate.js +12 -12
  3. package/dist/cli/commands/generate.js.map +1 -1
  4. package/dist/cli/commands/init.d.ts +6 -0
  5. package/dist/cli/commands/init.d.ts.map +1 -1
  6. package/dist/cli/commands/init.js +69 -16
  7. package/dist/cli/commands/init.js.map +1 -1
  8. package/dist/cli/import-mappings.d.ts +5 -0
  9. package/dist/cli/import-mappings.d.ts.map +1 -0
  10. package/dist/cli/import-mappings.js +16 -0
  11. package/dist/cli/import-mappings.js.map +1 -0
  12. package/dist/genconfig/GenConfig.d.ts +14 -0
  13. package/dist/genconfig/GenConfig.d.ts.map +1 -1
  14. package/dist/genconfig/GenConfig.js.map +1 -1
  15. package/dist/genconfig/GenConfigConverter.d.ts.map +1 -1
  16. package/dist/genconfig/GenConfigConverter.js +4 -1
  17. package/dist/genconfig/GenConfigConverter.js.map +1 -1
  18. package/dist/genconfig/GenConfigLoader.d.ts +4 -4
  19. package/dist/genconfig/GenConfigLoader.d.ts.map +1 -1
  20. package/dist/genconfig/GenConfigLoader.js +38 -27
  21. package/dist/genconfig/GenConfigLoader.js.map +1 -1
  22. package/dist/genconfig/model/ClassDefaults.d.ts +12 -0
  23. package/dist/genconfig/model/ClassDefaults.d.ts.map +1 -0
  24. package/dist/genconfig/model/ClassDefaults.js +8 -0
  25. package/dist/genconfig/model/ClassDefaults.js.map +1 -0
  26. package/dist/genconfig/model/ClassDefaultsImpl.d.ts +46 -0
  27. package/dist/genconfig/model/ClassDefaultsImpl.d.ts.map +1 -0
  28. package/dist/genconfig/model/ClassDefaultsImpl.js +205 -0
  29. package/dist/genconfig/model/ClassDefaultsImpl.js.map +1 -0
  30. package/dist/genconfig/model/ClassOverride.d.ts +15 -0
  31. package/dist/genconfig/model/ClassOverride.d.ts.map +1 -0
  32. package/dist/genconfig/model/ClassOverride.js +8 -0
  33. package/dist/genconfig/model/ClassOverride.js.map +1 -0
  34. package/dist/genconfig/model/ClassOverrideImpl.d.ts +53 -0
  35. package/dist/genconfig/model/ClassOverrideImpl.d.ts.map +1 -0
  36. package/dist/genconfig/model/ClassOverrideImpl.js +248 -0
  37. package/dist/genconfig/model/ClassOverrideImpl.js.map +1 -0
  38. package/dist/genconfig/model/FeatureDefaults.d.ts +11 -0
  39. package/dist/genconfig/model/FeatureDefaults.d.ts.map +1 -0
  40. package/dist/genconfig/model/FeatureDefaults.js +8 -0
  41. package/dist/genconfig/model/FeatureDefaults.js.map +1 -0
  42. package/dist/genconfig/model/FeatureDefaultsImpl.d.ts +39 -0
  43. package/dist/genconfig/model/FeatureDefaultsImpl.d.ts.map +1 -0
  44. package/dist/genconfig/model/FeatureDefaultsImpl.js +136 -0
  45. package/dist/genconfig/model/FeatureDefaultsImpl.js.map +1 -0
  46. package/dist/genconfig/model/FeatureOverride.d.ts +14 -0
  47. package/dist/genconfig/model/FeatureOverride.d.ts.map +1 -0
  48. package/dist/genconfig/model/FeatureOverride.js +8 -0
  49. package/dist/genconfig/model/FeatureOverride.js.map +1 -0
  50. package/dist/genconfig/model/FeatureOverrideImpl.d.ts +51 -0
  51. package/dist/genconfig/model/FeatureOverrideImpl.d.ts.map +1 -0
  52. package/dist/genconfig/model/FeatureOverrideImpl.js +241 -0
  53. package/dist/genconfig/model/FeatureOverrideImpl.js.map +1 -0
  54. package/dist/genconfig/model/GenConfig.d.ts +21 -0
  55. package/dist/genconfig/model/GenConfig.d.ts.map +1 -0
  56. package/dist/genconfig/model/GenConfig.js +8 -0
  57. package/dist/genconfig/model/GenConfig.js.map +1 -0
  58. package/dist/genconfig/model/GenConfigFactory.d.ts +56 -0
  59. package/dist/genconfig/model/GenConfigFactory.d.ts.map +1 -0
  60. package/dist/genconfig/model/GenConfigFactory.js +108 -0
  61. package/dist/genconfig/model/GenConfigFactory.js.map +1 -0
  62. package/dist/genconfig/model/GenConfigImpl.d.ts +62 -0
  63. package/dist/genconfig/model/GenConfigImpl.d.ts.map +1 -0
  64. package/dist/genconfig/model/GenConfigImpl.js +283 -0
  65. package/dist/genconfig/model/GenConfigImpl.js.map +1 -0
  66. package/dist/genconfig/model/GenConfigPackage.d.ts +68 -0
  67. package/dist/genconfig/model/GenConfigPackage.d.ts.map +1 -0
  68. package/dist/genconfig/model/GenConfigPackage.js +463 -0
  69. package/dist/genconfig/model/GenConfigPackage.js.map +1 -0
  70. package/dist/genconfig/model/GenerationMode.d.ts +19 -0
  71. package/dist/genconfig/model/GenerationMode.d.ts.map +1 -0
  72. package/dist/genconfig/model/GenerationMode.js +34 -0
  73. package/dist/genconfig/model/GenerationMode.js.map +1 -0
  74. package/dist/genconfig/model/GenerationSettings.d.ts +14 -0
  75. package/dist/genconfig/model/GenerationSettings.d.ts.map +1 -0
  76. package/dist/genconfig/model/GenerationSettings.js +8 -0
  77. package/dist/genconfig/model/GenerationSettings.js.map +1 -0
  78. package/dist/genconfig/model/GenerationSettingsImpl.d.ts +51 -0
  79. package/dist/genconfig/model/GenerationSettingsImpl.d.ts.map +1 -0
  80. package/dist/genconfig/model/GenerationSettingsImpl.js +241 -0
  81. package/dist/genconfig/model/GenerationSettingsImpl.js.map +1 -0
  82. package/dist/genconfig/model/PackageSettings.d.ts +13 -0
  83. package/dist/genconfig/model/PackageSettings.d.ts.map +1 -0
  84. package/dist/genconfig/model/PackageSettings.js +8 -0
  85. package/dist/genconfig/model/PackageSettings.js.map +1 -0
  86. package/dist/genconfig/model/PackageSettingsImpl.d.ts +50 -0
  87. package/dist/genconfig/model/PackageSettingsImpl.d.ts.map +1 -0
  88. package/dist/genconfig/model/PackageSettingsImpl.js +240 -0
  89. package/dist/genconfig/model/PackageSettingsImpl.js.map +1 -0
  90. package/dist/genconfig/model/PropertyMode.d.ts +19 -0
  91. package/dist/genconfig/model/PropertyMode.d.ts.map +1 -0
  92. package/dist/genconfig/model/PropertyMode.js +34 -0
  93. package/dist/genconfig/model/PropertyMode.js.map +1 -0
  94. package/dist/genconfig/model/ReferencedPackage.d.ts +10 -0
  95. package/dist/genconfig/model/ReferencedPackage.d.ts.map +1 -0
  96. package/dist/genconfig/model/ReferencedPackage.js +8 -0
  97. package/dist/genconfig/model/ReferencedPackage.js.map +1 -0
  98. package/dist/genconfig/model/ReferencedPackageImpl.d.ts +38 -0
  99. package/dist/genconfig/model/ReferencedPackageImpl.d.ts.map +1 -0
  100. package/dist/genconfig/model/ReferencedPackageImpl.js +135 -0
  101. package/dist/genconfig/model/ReferencedPackageImpl.js.map +1 -0
  102. package/dist/genconfig/model/index.d.ts +21 -0
  103. package/dist/genconfig/model/index.d.ts.map +1 -0
  104. package/dist/genconfig/model/index.js +22 -0
  105. package/dist/genconfig/model/index.js.map +1 -0
  106. package/dist/generator/CodeGenerator.d.ts.map +1 -1
  107. package/dist/generator/CodeGenerator.js +2 -1
  108. package/dist/generator/CodeGenerator.js.map +1 -1
  109. package/dist/generator/ImportResolver.d.ts.map +1 -1
  110. package/dist/generator/ImportResolver.js +28 -5
  111. package/dist/generator/ImportResolver.js.map +1 -1
  112. package/dist/generator/TypeMapper.d.ts +2 -0
  113. package/dist/generator/TypeMapper.d.ts.map +1 -1
  114. package/dist/generator/TypeMapper.js +48 -3
  115. package/dist/generator/TypeMapper.js.map +1 -1
  116. package/dist/generator/modes/BaseGenerator.d.ts +6 -0
  117. package/dist/generator/modes/BaseGenerator.d.ts.map +1 -1
  118. package/dist/generator/modes/BaseGenerator.js +21 -1
  119. package/dist/generator/modes/BaseGenerator.js.map +1 -1
  120. package/dist/generator/modes/DecoratorGenerator.d.ts +5 -0
  121. package/dist/generator/modes/DecoratorGenerator.d.ts.map +1 -1
  122. package/dist/generator/modes/DecoratorGenerator.js +11 -2
  123. package/dist/generator/modes/DecoratorGenerator.js.map +1 -1
  124. package/dist/generator/modes/EmfGenerator.d.ts +1 -0
  125. package/dist/generator/modes/EmfGenerator.d.ts.map +1 -1
  126. package/dist/generator/modes/EmfGenerator.js +12 -4
  127. package/dist/generator/modes/EmfGenerator.js.map +1 -1
  128. package/dist/genmodel/GenModel.d.ts +2 -0
  129. package/dist/genmodel/GenModel.d.ts.map +1 -1
  130. package/dist/genmodel/GenModel.js.map +1 -1
  131. package/dist/index.js +15 -2
  132. package/dist/index.js.map +1 -1
  133. package/dist/loader/EcoreLoader.d.ts +4 -0
  134. package/dist/loader/EcoreLoader.d.ts.map +1 -1
  135. package/dist/loader/EcoreLoader.js +20 -0
  136. package/dist/loader/EcoreLoader.js.map +1 -1
  137. package/dist/templates/partials/decorator/class-file.ejs +99 -27
  138. package/dist/templates/partials/decorator/enum-file.ejs +1 -1
  139. package/dist/templates/partials/decorator/interface-file.ejs +1 -7
  140. package/dist/templates/partials/decorator/model-annotations.ejs +7 -6
  141. package/dist/templates/partials/decorator/package-file.ejs +4 -2
  142. package/dist/templates/partials/emf/class-file.ejs +97 -17
  143. package/dist/templates/partials/emf/factory-file.ejs +3 -3
  144. package/dist/templates/partials/emf/index-file.ejs +12 -6
  145. package/dist/templates/partials/emf/interface-file.ejs +5 -0
  146. package/dist/templates/partials/emf/package-file.ejs +42 -12
  147. package/dist/templates/partials/plain/class-file.ejs +1 -7
  148. package/dist/templates/partials/plain/interface-file.ejs +1 -7
  149. package/dist/templates/partials/plain/package-file.ejs +1 -1
  150. package/model/genconfig.ecore +21 -0
  151. package/model/genconfig.genconfig.xmi +11 -0
  152. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyMode.d.ts","sourceRoot":"","sources":["../../../src/genconfig/model/PropertyMode.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE1E;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEtE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAKlF"}
@@ -0,0 +1,34 @@
1
+ /*
2
+ * This file was generated by emfts-codegen.
3
+ * DO NOT EDIT - changes will be overwritten.
4
+ *
5
+ * @generated
6
+ */
7
+ /**
8
+ * PropertyMode
9
+ * @generated
10
+ */
11
+ export const PropertyMode = {
12
+ editable: 'editable',
13
+ readonly: 'readonly',
14
+ none: 'none'
15
+ };
16
+ /**
17
+ * Get enum value by name
18
+ */
19
+ export function getPropertyMode(name) {
20
+ return PropertyMode[name];
21
+ }
22
+ /**
23
+ * Get enum value by literal
24
+ */
25
+ export function getPropertyModeByLiteral(literal) {
26
+ if (literal === 'editable')
27
+ return PropertyMode.editable;
28
+ if (literal === 'readonly')
29
+ return PropertyMode.readonly;
30
+ if (literal === 'none')
31
+ return PropertyMode.none;
32
+ return undefined;
33
+ }
34
+ //# sourceMappingURL=PropertyMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyMode.js","sourceRoot":"","sources":["../../../src/genconfig/model/PropertyMode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;CACJ,CAAC;AAIX;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAQ,YAAuC,CAAC,IAAI,CAA6B,CAAC;AACpF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAe;IACtD,IAAI,OAAO,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACzD,IAAI,OAAO,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACzD,IAAI,OAAO,KAAK,MAAM;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC;IACjD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { EObject } from '@emfts/core';
2
+ /**
3
+ * ReferencedPackage
4
+ * @generated
5
+ */
6
+ export interface ReferencedPackage extends EObject {
7
+ nsURI: string;
8
+ importPath: string;
9
+ }
10
+ //# sourceMappingURL=ReferencedPackage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencedPackage.d.ts","sourceRoot":"","sources":["../../../src/genconfig/model/ReferencedPackage.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAA4C,MAAM,aAAa,CAAC;AAErF;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CAEpB"}
@@ -0,0 +1,8 @@
1
+ /*
2
+ * This file was generated by emfts-codegen.
3
+ * DO NOT EDIT - changes will be overwritten.
4
+ *
5
+ * @generated
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=ReferencedPackage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencedPackage.js","sourceRoot":"","sources":["../../../src/genconfig/model/ReferencedPackage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,38 @@
1
+ import { BasicEObject } from '@emfts/core';
2
+ import type { EClass, EStructuralFeature } from '@emfts/core';
3
+ import type { ReferencedPackage } from './ReferencedPackage.js';
4
+ /**
5
+ * Implementation of ReferencedPackage
6
+ * @generated
7
+ */
8
+ export declare class ReferencedPackageImpl extends BasicEObject implements ReferencedPackage {
9
+ static readonly NS_U_R_I: number;
10
+ static readonly IMPORT_PATH: number;
11
+ private _nsURI;
12
+ private _importPath;
13
+ /**
14
+ * Returns the EClass of this object
15
+ */
16
+ eClass(): EClass;
17
+ get nsURI(): string;
18
+ set nsURI(value: string);
19
+ get importPath(): string;
20
+ set importPath(value: string);
21
+ /**
22
+ * Returns the value of the given feature
23
+ */
24
+ eGet(feature: EStructuralFeature): unknown;
25
+ /**
26
+ * Sets the value of the given feature
27
+ */
28
+ eSet(feature: EStructuralFeature, newValue: unknown): void;
29
+ /**
30
+ * Returns whether the feature has been set
31
+ */
32
+ eIsSet(feature: EStructuralFeature): boolean;
33
+ /**
34
+ * Unsets the given feature
35
+ */
36
+ eUnset(feature: EStructuralFeature): void;
37
+ }
38
+ //# sourceMappingURL=ReferencedPackageImpl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencedPackageImpl.d.ts","sourceRoot":"","sources":["../../../src/genconfig/model/ReferencedPackageImpl.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGhE;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,YAAa,YAAW,iBAAiB;IAElF,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAK;IACrC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAK;IAGxC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,WAAW,CAAc;IAEjC;;OAEG;IACM,MAAM,IAAI,MAAM;IAKzB,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAkBtB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAkB3B;IAID;;OAEG;IACM,IAAI,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAYnD;;OAEG;IACM,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAgBnE;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAYrD;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;CAcnD"}
@@ -0,0 +1,135 @@
1
+ /*
2
+ * This file was generated by emfts-codegen.
3
+ * DO NOT EDIT - changes will be overwritten.
4
+ *
5
+ * @generated
6
+ */
7
+ import { BasicEObject } from '@emfts/core';
8
+ import { GenConfigPackage } from './GenConfigPackage.js';
9
+ /**
10
+ * Implementation of ReferencedPackage
11
+ * @generated
12
+ */
13
+ export class ReferencedPackageImpl extends BasicEObject {
14
+ // Feature ID Constants (eLiterals)
15
+ static NS_U_R_I = 0;
16
+ static IMPORT_PATH = 1;
17
+ // Private fields
18
+ _nsURI = "";
19
+ _importPath = "";
20
+ /**
21
+ * Returns the EClass of this object
22
+ */
23
+ eClass() {
24
+ return GenConfigPackage.Literals.REFERENCED_PACKAGE;
25
+ }
26
+ // Getters and Setters
27
+ get nsURI() {
28
+ return this._nsURI;
29
+ }
30
+ set nsURI(value) {
31
+ const oldValue = this._nsURI;
32
+ this._nsURI = value;
33
+ if (this.eDeliver()) {
34
+ this.eNotify({
35
+ getNotifier: () => this,
36
+ getEventType: () => 1, // SET
37
+ getFeature: () => this.eClass().getEStructuralFeature(ReferencedPackageImpl.NS_U_R_I),
38
+ getOldValue: () => oldValue,
39
+ getNewValue: () => value,
40
+ getPosition: () => -1,
41
+ wasSet: () => true,
42
+ isTouch: () => false,
43
+ isReset: () => false,
44
+ getFeatureID: () => ReferencedPackageImpl.NS_U_R_I,
45
+ merge: () => false
46
+ });
47
+ }
48
+ }
49
+ get importPath() {
50
+ return this._importPath;
51
+ }
52
+ set importPath(value) {
53
+ const oldValue = this._importPath;
54
+ this._importPath = value;
55
+ if (this.eDeliver()) {
56
+ this.eNotify({
57
+ getNotifier: () => this,
58
+ getEventType: () => 1, // SET
59
+ getFeature: () => this.eClass().getEStructuralFeature(ReferencedPackageImpl.IMPORT_PATH),
60
+ getOldValue: () => oldValue,
61
+ getNewValue: () => value,
62
+ getPosition: () => -1,
63
+ wasSet: () => true,
64
+ isTouch: () => false,
65
+ isReset: () => false,
66
+ getFeatureID: () => ReferencedPackageImpl.IMPORT_PATH,
67
+ merge: () => false
68
+ });
69
+ }
70
+ }
71
+ // Reflective API
72
+ /**
73
+ * Returns the value of the given feature
74
+ */
75
+ eGet(feature) {
76
+ const featureID = this.eClass().getFeatureID(feature);
77
+ switch (featureID) {
78
+ case ReferencedPackageImpl.NS_U_R_I:
79
+ return this.nsURI;
80
+ case ReferencedPackageImpl.IMPORT_PATH:
81
+ return this.importPath;
82
+ default:
83
+ return super.eGet(feature);
84
+ }
85
+ }
86
+ /**
87
+ * Sets the value of the given feature
88
+ */
89
+ eSet(feature, newValue) {
90
+ const featureID = this.eClass().getFeatureID(feature);
91
+ switch (featureID) {
92
+ case ReferencedPackageImpl.NS_U_R_I:
93
+ this.nsURI = newValue;
94
+ super.eSet(feature, newValue);
95
+ break;
96
+ case ReferencedPackageImpl.IMPORT_PATH:
97
+ this.importPath = newValue;
98
+ super.eSet(feature, newValue);
99
+ break;
100
+ default:
101
+ super.eSet(feature, newValue);
102
+ }
103
+ }
104
+ /**
105
+ * Returns whether the feature has been set
106
+ */
107
+ eIsSet(feature) {
108
+ const featureID = this.eClass().getFeatureID(feature);
109
+ switch (featureID) {
110
+ case ReferencedPackageImpl.NS_U_R_I:
111
+ return this._nsURI !== "";
112
+ case ReferencedPackageImpl.IMPORT_PATH:
113
+ return this._importPath !== "";
114
+ default:
115
+ return super.eIsSet(feature);
116
+ }
117
+ }
118
+ /**
119
+ * Unsets the given feature
120
+ */
121
+ eUnset(feature) {
122
+ const featureID = this.eClass().getFeatureID(feature);
123
+ switch (featureID) {
124
+ case ReferencedPackageImpl.NS_U_R_I:
125
+ this._nsURI = "";
126
+ return;
127
+ case ReferencedPackageImpl.IMPORT_PATH:
128
+ this._importPath = "";
129
+ return;
130
+ default:
131
+ super.eUnset(feature);
132
+ }
133
+ }
134
+ }
135
+ //# sourceMappingURL=ReferencedPackageImpl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencedPackageImpl.js","sourceRoot":"","sources":["../../../src/genconfig/model/ReferencedPackageImpl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export { GenConfigPackage } from './GenConfigPackage.js';
2
+ export { GenConfigFactory } from './GenConfigFactory.js';
3
+ export type { GenConfig } from './GenConfig.js';
4
+ export type { ReferencedPackage } from './ReferencedPackage.js';
5
+ export type { GenerationSettings } from './GenerationSettings.js';
6
+ export type { PackageSettings } from './PackageSettings.js';
7
+ export type { ClassDefaults } from './ClassDefaults.js';
8
+ export type { FeatureDefaults } from './FeatureDefaults.js';
9
+ export type { ClassOverride } from './ClassOverride.js';
10
+ export type { FeatureOverride } from './FeatureOverride.js';
11
+ export { GenConfigImpl } from './GenConfigImpl.js';
12
+ export { ReferencedPackageImpl } from './ReferencedPackageImpl.js';
13
+ export { GenerationSettingsImpl } from './GenerationSettingsImpl.js';
14
+ export { PackageSettingsImpl } from './PackageSettingsImpl.js';
15
+ export { ClassDefaultsImpl } from './ClassDefaultsImpl.js';
16
+ export { FeatureDefaultsImpl } from './FeatureDefaultsImpl.js';
17
+ export { ClassOverrideImpl } from './ClassOverrideImpl.js';
18
+ export { FeatureOverrideImpl } from './FeatureOverrideImpl.js';
19
+ export { GenerationMode, getGenerationMode, getGenerationModeByLiteral } from './GenerationMode.js';
20
+ export { PropertyMode, getPropertyMode, getPropertyModeByLiteral } from './PropertyMode.js';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/genconfig/model/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /*
2
+ * This file was generated by emfts-codegen.
3
+ * DO NOT EDIT - changes will be overwritten.
4
+ *
5
+ * @generated
6
+ */
7
+ // Package and Factory
8
+ export { GenConfigPackage } from './GenConfigPackage.js';
9
+ export { GenConfigFactory } from './GenConfigFactory.js';
10
+ // Implementations (including abstract classes, as they're extended by subclasses)
11
+ export { GenConfigImpl } from './GenConfigImpl.js';
12
+ export { ReferencedPackageImpl } from './ReferencedPackageImpl.js';
13
+ export { GenerationSettingsImpl } from './GenerationSettingsImpl.js';
14
+ export { PackageSettingsImpl } from './PackageSettingsImpl.js';
15
+ export { ClassDefaultsImpl } from './ClassDefaultsImpl.js';
16
+ export { FeatureDefaultsImpl } from './FeatureDefaultsImpl.js';
17
+ export { ClassOverrideImpl } from './ClassOverrideImpl.js';
18
+ export { FeatureOverrideImpl } from './FeatureOverrideImpl.js';
19
+ // Enums
20
+ export { GenerationMode, getGenerationMode, getGenerationModeByLiteral } from './GenerationMode.js';
21
+ export { PropertyMode, getPropertyMode, getPropertyModeByLiteral } from './PropertyMode.js';
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genconfig/model/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAYzD,kFAAkF;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,QAAQ;AACR,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CodeGenerator.d.ts","sourceRoot":"","sources":["../../src/generator/CodeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKnD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,KAAK,EAAE,aAAa,EAAE,CAAC;IAEvB,qCAAqC;IACrC,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAgB;gBAErB,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAMnE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAyB3C;;OAEG;YACW,eAAe;IAqE7B;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC;CASvC"}
1
+ {"version":3,"file":"CodeGenerator.d.ts","sourceRoot":"","sources":["../../src/generator/CodeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKnD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,KAAK,EAAE,aAAa,EAAE,CAAC;IAEvB,qCAAqC;IACrC,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAgB;gBAErB,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAMnE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAyB3C;;OAEG;YACW,eAAe;IAsE7B;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC;CASvC"}
@@ -104,7 +104,8 @@ export class CodeGenerator {
104
104
  }
105
105
  }
106
106
  // Generate mode-specific additional files
107
- if (this.generator instanceof DecoratorGenerator) {
107
+ if (this.generator instanceof DecoratorGenerator && !this.genModel.annotationsPackage) {
108
+ // With annotationsPackage the decorators come from a shared package (#26)
108
109
  const annotationsFile = await this.generator.generateModelAnnotations(genPackage);
109
110
  files.push(annotationsFile);
110
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CodeGenerator.js","sourceRoot":"","sources":["../../src/generator/CodeGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeGenerator.js","sourceRoot":"","sources":["../../src/generator/CodeGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAmB,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAiB,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAgBnD;;GAEG;AACH,MAAM,OAAO,aAAa;IAChB,QAAQ,CAAW;IACnB,OAAO,CAAmB;IAC1B,SAAS,CAAgB;IAEjC,YAAY,QAAkB,EAAE,OAAmC;QACjE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAoB;QAC9C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,cAAc,CAAC,KAAK;gBACvB,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE1C,KAAK,cAAc,CAAC,SAAS;gBAC3B,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE9C,KAAK,cAAc,CAAC,GAAG;gBACrB,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAExC;gBACE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,6BAA6B,CAAC,CAAC;gBACtE,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,IAAI,CAAC;YACH,wBAAwB;YACxB,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACnD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBAC5D,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO;gBACL,KAAK;gBACL,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;gBACrC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;aACnC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,OAAO;gBACL,KAAK;gBACL,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;gBACrC,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,UAAsB;QAClD,MAAM,KAAK,GAAoB,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAE9E,6DAA6D;QAC7D,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACpE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACrC,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC7C,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;oBAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC5E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAClC,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC7C,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;oBAChE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACxE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBACtE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACzE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QAED,+CAA+C;QAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACrE,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACxC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,IAAI,IAAI,CAAC,SAAS,YAAY,kBAAkB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACtF,0EAA0E;YAC1E,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;YAClF,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,YAAY,YAAY,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;QAED,uCAAuC;QACvC,KAAK,MAAM,aAAa,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAsB;QACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG;QACP,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QAErC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ImportResolver.d.ts","sourceRoot":"","sources":["../../src/generator/ImportResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAuE,MAAM,aAAa,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,UAAU,EAAE,OAAO,CAAC;CACrB;AAsBD;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAkC;IAExD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAIxD;;OAEG;IACH,sBAAsB,CACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,cAAc,GACnB,UAAU,EAAE;IA2Bf;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA2E9B;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAiBhB;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,yBAAyB,CACvB,QAAQ,EAAE,GAAG,EAAE,EACf,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,GACrB,UAAU,EAAE;IAQf;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwB5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAoBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsC1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKpD;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;IACH,OAAO,CAAC,cAAc;IAuCtB;;OAEG;IACH,OAAO,CAAC,OAAO;IAoBf;;OAEG;IACH,OAAO,CAAC,WAAW;IA0BnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM;CAuB7C"}
1
+ {"version":3,"file":"ImportResolver.d.ts","sourceRoot":"","sources":["../../src/generator/ImportResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAuE,MAAM,aAAa,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,UAAU,EAAE,OAAO,CAAC;CACrB;AAsBD;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAkC;IAExD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAIxD;;OAEG;IACH,sBAAsB,CACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,cAAc,GACnB,UAAU,EAAE;IA2Bf;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA2E9B;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAiBhB;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,yBAAyB,CACvB,QAAQ,EAAE,GAAG,EAAE,EACf,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,GACrB,UAAU,EAAE;IAQf;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwB5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAoBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmD1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKpD;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;IACH,OAAO,CAAC,cAAc;IAuCtB;;OAEG;IACH,OAAO,CAAC,OAAO;IA8Bf;;OAEG;IACH,OAAO,CAAC,WAAW;IA0BnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM;CAuB7C"}
@@ -317,11 +317,24 @@ export class ImportResolver {
317
317
  if (isLocalFile) {
318
318
  return {
319
319
  typeName,
320
- importPath: `./${typeName}`,
320
+ importPath: `./${typeName}.js`,
321
321
  isTypeOnly: false
322
322
  };
323
323
  }
324
- const importPath = this.getRegisteredPath(packageURI) ?? this.uriToImportPath(packageURI);
324
+ let importPath = this.getRegisteredPath(packageURI);
325
+ if (!importPath && !packageURI.startsWith('http://') && !packageURI.startsWith('https://')) {
326
+ // The resource loader absolutizes relative hrefs (bare nsURIs or .ecore
327
+ // file references) against the model location - match mappings on the
328
+ // trailing segment and emit bare specifiers literally, never as paths
329
+ const lastSegment = packageURI.substring(packageURI.lastIndexOf('/') + 1);
330
+ if (lastSegment.endsWith('.ecore')) {
331
+ return { typeName, importPath: `./${typeName}.js`, isTypeOnly: false };
332
+ }
333
+ importPath = this.getRegisteredPath(lastSegment) ?? lastSegment;
334
+ }
335
+ if (!importPath) {
336
+ importPath = this.uriToImportPath(packageURI);
337
+ }
325
338
  return {
326
339
  typeName,
327
340
  importPath,
@@ -334,9 +347,9 @@ export class ImportResolver {
334
347
  getImportPath(sourcePackage, currentPackage, typeName) {
335
348
  const sourceURI = sourcePackage.getNsURI();
336
349
  const currentURI = currentPackage.getNsURI();
337
- // Same package - relative import
350
+ // Same package - relative import (with .js extension for Node ESM)
338
351
  if (sourceURI === currentURI) {
339
- return `./${typeName}`;
352
+ return `./${typeName}.js`;
340
353
  }
341
354
  // Different package - check registered paths
342
355
  if (sourceURI && this.packagePathMap.has(sourceURI)) {
@@ -374,7 +387,7 @@ export class ImportResolver {
374
387
  case 'decorator':
375
388
  imports.set('ModelAnnotations', {
376
389
  typeName: 'Documentation, Attribute, ModelClass, Reference, Enum',
377
- importPath: './ModelAnnotations',
390
+ importPath: './ModelAnnotations.js',
378
391
  isTypeOnly: false
379
392
  });
380
393
  break;
@@ -411,6 +424,16 @@ export class ImportResolver {
411
424
  if (typeof obj.getName === 'function') {
412
425
  return obj.getName();
413
426
  }
427
+ // Unresolved proxy: eGet would throw, extract the name from the proxy URI (…#//Name)
428
+ if (typeof obj.eIsProxy === 'function' && obj.eIsProxy()) {
429
+ const uri = obj.eProxyURI?.()?.toString?.() ?? '';
430
+ const hashIdx = uri.indexOf('#');
431
+ if (hashIdx >= 0) {
432
+ const segments = uri.substring(hashIdx + 1).split('/').filter(Boolean);
433
+ return segments[segments.length - 1] || null;
434
+ }
435
+ return null;
436
+ }
414
437
  // Try eGet for dynamic objects
415
438
  if (typeof obj.eGet === 'function' && typeof obj.eClass === 'function') {
416
439
  const eClass = obj.eClass();
@@ -1 +1 @@
1
- {"version":3,"file":"ImportResolver.js","sourceRoot":"","sources":["../../src/generator/ImportResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImportResolver.js","sourceRoot":"","sources":["../../src/generator/ImportResolver.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ import type { EClassifier, EStructuralFeature, EAttribute, EReference, EGenericT
4
4
  */
5
5
  export declare class TypeMapper {
6
6
  private customMappings;
7
+ /** When true, many-valued features use EList<T> instead of T[]. */
8
+ useEList: boolean;
7
9
  constructor();
8
10
  private initDefaultMappings;
9
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"TypeMapper.d.ts","sourceRoot":"","sources":["../../src/generator/TypeMapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAA4B,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnI;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,cAAc,CAAkC;;IAMxD,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAInD;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,GAAG,MAAM;IA+BrD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAU/C;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAMvD;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,YAAY,GAAG,MAAM;IAuBjD;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAqB3D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgC3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAUzC;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAU1C;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAU7C;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,IAAI,UAAU;IAI/D;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,IAAI,UAAU;CAGhE"}
1
+ {"version":3,"file":"TypeMapper.d.ts","sourceRoot":"","sources":["../../src/generator/TypeMapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAA4B,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnI;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,cAAc,CAAkC;IACxD,mEAAmE;IACnE,QAAQ,EAAE,OAAO,CAAS;;IAM1B,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAInD;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,GAAG,MAAM;IA+BrD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAU/C;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAgBvD;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,YAAY,GAAG,MAAM;IAuBjD;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IA+C3D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4C3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAUzC;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAU1C;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO;IAU7C;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,IAAI,UAAU;IAI/D;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,IAAI,UAAU;CAGhE"}
@@ -4,6 +4,8 @@ import * as EObjectHelper from '../util/EObjectHelper.js';
4
4
  */
5
5
  export class TypeMapper {
6
6
  customMappings = new Map();
7
+ /** When true, many-valued features use EList<T> instead of T[]. */
8
+ useEList = false;
7
9
  constructor() {
8
10
  this.initDefaultMappings();
9
11
  }
@@ -83,7 +85,7 @@ export class TypeMapper {
83
85
  const baseType = this.mapFeatureBaseType(feature);
84
86
  const many = EObjectHelper.isMany(feature);
85
87
  if (many) {
86
- return `${baseType}[]`;
88
+ return this.useEList ? `EList<${baseType}>` : `${baseType}[]`;
87
89
  }
88
90
  return baseType;
89
91
  }
@@ -91,6 +93,15 @@ export class TypeMapper {
91
93
  * Map the base type of a feature (without array wrapper)
92
94
  */
93
95
  mapFeatureBaseType(feature) {
96
+ // A generic type with type arguments carries more information than the
97
+ // plain eType (e.g. VariableWrapper<string> instead of VariableWrapper)
98
+ const genericType = feature.getEGenericType?.();
99
+ if (genericType) {
100
+ const typeArguments = EObjectHelper.getFeatureValue(genericType, 'eTypeArguments') || [];
101
+ if (typeArguments.length > 0) {
102
+ return this.mapGenericType(genericType);
103
+ }
104
+ }
94
105
  // Use eType directly
95
106
  const eType = EObjectHelper.getEType(feature);
96
107
  return this.mapClassifier(eType);
@@ -125,7 +136,31 @@ export class TypeMapper {
125
136
  return this.convertDefaultValue(feature, defaultLiteral);
126
137
  }
127
138
  if (EObjectHelper.isMany(feature)) {
128
- return '[]';
139
+ return this.useEList ? null : '[]';
140
+ }
141
+ // EMF semantics: an EEnum attribute without explicit default defaults
142
+ // to the first enum literal
143
+ const eType = EObjectHelper.getEType(feature);
144
+ if (eType && this.isEEnum(eType)) {
145
+ const literals = EObjectHelper.getELiterals(eType);
146
+ const first = literals?.[0];
147
+ const firstName = first ? EObjectHelper.getName(first) : null;
148
+ if (firstName) {
149
+ return `${EObjectHelper.getName(eType)}.${firstName}`;
150
+ }
151
+ }
152
+ // Decorator/plain mode: a single-valued reference to a concrete class is
153
+ // instantiated with its no-arg constructor (#33). Abstract classes,
154
+ // interfaces, direct self-references and Ecore metaclasses (type-only in
155
+ // @emfts/core) stay unset; an unresolved proxy is presumed concrete
156
+ if (!this.useEList && eType && this.isReference(feature)) {
157
+ const isAbstract = typeof eType.isAbstract === 'function' && eType.isAbstract();
158
+ const isInterface = typeof eType.isInterface === 'function' && eType.isInterface();
159
+ const isSelfReference = feature.getEContainingClass?.() === eType;
160
+ const isEcoreType = EObjectHelper.getEPackage(eType)?.getNsURI?.() === 'http://www.eclipse.org/emf/2002/Ecore';
161
+ if (!isAbstract && !isInterface && !isSelfReference && !isEcoreType) {
162
+ return `new ${this.mapFeatureBaseType(feature)}()`;
163
+ }
129
164
  }
130
165
  // Check if required
131
166
  const lowerBound = EObjectHelper.getLowerBound(feature);
@@ -160,7 +195,17 @@ export class TypeMapper {
160
195
  const eType = EObjectHelper.getEType(feature);
161
196
  if (eType && this.isEEnum(eType)) {
162
197
  const enumName = EObjectHelper.getName(eType) ?? typeName;
163
- return `${enumName}.${literal}`;
198
+ // The defaultValueLiteral holds the EEnumLiteral literal (or name);
199
+ // the generated member is always named after the literal's name
200
+ const literals = EObjectHelper.getELiterals(eType) ?? [];
201
+ const match = literals.find((l) => EObjectHelper.getLiteral(l) === literal || EObjectHelper.getName(l) === literal);
202
+ const memberName = match ? EObjectHelper.getName(match) : literal;
203
+ return `${enumName}.${memberName}`;
204
+ }
205
+ // A reference default needs an instance - emitting the raw literal
206
+ // would assign e.g. a number to a class-typed feature (#29)
207
+ if (this.isReference(feature)) {
208
+ return `new ${typeName}()`;
164
209
  }
165
210
  return literal;
166
211
  }