@emfts/codegen 0.0.1-next.1
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/README.md +39 -0
- package/dist/cli/commands/generate-rest-client.d.ts +3 -0
- package/dist/cli/commands/generate-rest-client.d.ts.map +1 -0
- package/dist/cli/commands/generate-rest-client.js +38 -0
- package/dist/cli/commands/generate-rest-client.js.map +1 -0
- package/dist/cli/commands/generate.d.ts +3 -0
- package/dist/cli/commands/generate.d.ts.map +1 -0
- package/dist/cli/commands/generate.js +108 -0
- package/dist/cli/commands/generate.js.map +1 -0
- package/dist/cli/commands/init.d.ts +3 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +57 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +15 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/debug-abstract.d.ts +2 -0
- package/dist/debug-abstract.d.ts.map +1 -0
- package/dist/debug-abstract.js +25 -0
- package/dist/debug-abstract.js.map +1 -0
- package/dist/debug-genmodel.d.ts +2 -0
- package/dist/debug-genmodel.d.ts.map +1 -0
- package/dist/debug-genmodel.js +41 -0
- package/dist/debug-genmodel.js.map +1 -0
- package/dist/genconfig/GenConfig.d.ts +125 -0
- package/dist/genconfig/GenConfig.d.ts.map +1 -0
- package/dist/genconfig/GenConfig.js +46 -0
- package/dist/genconfig/GenConfig.js.map +1 -0
- package/dist/genconfig/GenConfigConverter.d.ts +64 -0
- package/dist/genconfig/GenConfigConverter.d.ts.map +1 -0
- package/dist/genconfig/GenConfigConverter.js +293 -0
- package/dist/genconfig/GenConfigConverter.js.map +1 -0
- package/dist/genconfig/GenConfigLoader.d.ts +83 -0
- package/dist/genconfig/GenConfigLoader.d.ts.map +1 -0
- package/dist/genconfig/GenConfigLoader.js +455 -0
- package/dist/genconfig/GenConfigLoader.js.map +1 -0
- package/dist/genconfig/index.d.ts +4 -0
- package/dist/genconfig/index.d.ts.map +1 -0
- package/dist/genconfig/index.js +4 -0
- package/dist/genconfig/index.js.map +1 -0
- package/dist/generator/CodeGenerator.d.ts +45 -0
- package/dist/generator/CodeGenerator.d.ts.map +1 -0
- package/dist/generator/CodeGenerator.js +142 -0
- package/dist/generator/CodeGenerator.js.map +1 -0
- package/dist/generator/GeneratedFile.d.ts +23 -0
- package/dist/generator/GeneratedFile.d.ts.map +1 -0
- package/dist/generator/GeneratedFile.js +42 -0
- package/dist/generator/GeneratedFile.js.map +1 -0
- package/dist/generator/GeneratorContext.d.ts +73 -0
- package/dist/generator/GeneratorContext.d.ts.map +1 -0
- package/dist/generator/GeneratorContext.js +99 -0
- package/dist/generator/GeneratorContext.js.map +1 -0
- package/dist/generator/GeneratorOptions.d.ts +26 -0
- package/dist/generator/GeneratorOptions.d.ts.map +1 -0
- package/dist/generator/GeneratorOptions.js +16 -0
- package/dist/generator/GeneratorOptions.js.map +1 -0
- package/dist/generator/ImportResolver.d.ts +85 -0
- package/dist/generator/ImportResolver.d.ts.map +1 -0
- package/dist/generator/ImportResolver.js +381 -0
- package/dist/generator/ImportResolver.js.map +1 -0
- package/dist/generator/RestClientGenerator.d.ts +72 -0
- package/dist/generator/RestClientGenerator.d.ts.map +1 -0
- package/dist/generator/RestClientGenerator.js +488 -0
- package/dist/generator/RestClientGenerator.js.map +1 -0
- package/dist/generator/TypeMapper.d.ts +62 -0
- package/dist/generator/TypeMapper.d.ts.map +1 -0
- package/dist/generator/TypeMapper.js +224 -0
- package/dist/generator/TypeMapper.js.map +1 -0
- package/dist/generator/index.d.ts +9 -0
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +9 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/modes/BaseGenerator.d.ts +67 -0
- package/dist/generator/modes/BaseGenerator.d.ts.map +1 -0
- package/dist/generator/modes/BaseGenerator.js +128 -0
- package/dist/generator/modes/BaseGenerator.js.map +1 -0
- package/dist/generator/modes/DecoratorGenerator.d.ts +28 -0
- package/dist/generator/modes/DecoratorGenerator.d.ts.map +1 -0
- package/dist/generator/modes/DecoratorGenerator.js +147 -0
- package/dist/generator/modes/DecoratorGenerator.js.map +1 -0
- package/dist/generator/modes/EmfGenerator.d.ts +22 -0
- package/dist/generator/modes/EmfGenerator.d.ts.map +1 -0
- package/dist/generator/modes/EmfGenerator.js +202 -0
- package/dist/generator/modes/EmfGenerator.js.map +1 -0
- package/dist/generator/modes/PlainGenerator.d.ts +16 -0
- package/dist/generator/modes/PlainGenerator.d.ts.map +1 -0
- package/dist/generator/modes/PlainGenerator.js +95 -0
- package/dist/generator/modes/PlainGenerator.js.map +1 -0
- package/dist/generator/modes/index.d.ts +5 -0
- package/dist/generator/modes/index.d.ts.map +1 -0
- package/dist/generator/modes/index.js +5 -0
- package/dist/generator/modes/index.js.map +1 -0
- package/dist/genmodel/GenClass.d.ts +37 -0
- package/dist/genmodel/GenClass.d.ts.map +1 -0
- package/dist/genmodel/GenClass.js +14 -0
- package/dist/genmodel/GenClass.js.map +1 -0
- package/dist/genmodel/GenDataType.d.ts +19 -0
- package/dist/genmodel/GenDataType.d.ts.map +1 -0
- package/dist/genmodel/GenDataType.js +46 -0
- package/dist/genmodel/GenDataType.js.map +1 -0
- package/dist/genmodel/GenEnum.d.ts +30 -0
- package/dist/genmodel/GenEnum.d.ts.map +1 -0
- package/dist/genmodel/GenEnum.js +11 -0
- package/dist/genmodel/GenEnum.js.map +1 -0
- package/dist/genmodel/GenFeature.d.ts +30 -0
- package/dist/genmodel/GenFeature.d.ts.map +1 -0
- package/dist/genmodel/GenFeature.js +15 -0
- package/dist/genmodel/GenFeature.js.map +1 -0
- package/dist/genmodel/GenModel.d.ts +54 -0
- package/dist/genmodel/GenModel.d.ts.map +1 -0
- package/dist/genmodel/GenModel.js +24 -0
- package/dist/genmodel/GenModel.js.map +1 -0
- package/dist/genmodel/GenOperation.d.ts +19 -0
- package/dist/genmodel/GenOperation.d.ts.map +1 -0
- package/dist/genmodel/GenOperation.js +10 -0
- package/dist/genmodel/GenOperation.js.map +1 -0
- package/dist/genmodel/GenPackage.d.ts +42 -0
- package/dist/genmodel/GenPackage.d.ts.map +1 -0
- package/dist/genmodel/GenPackage.js +25 -0
- package/dist/genmodel/GenPackage.js.map +1 -0
- package/dist/genmodel/GenerationMode.d.ts +23 -0
- package/dist/genmodel/GenerationMode.d.ts.map +1 -0
- package/dist/genmodel/GenerationMode.js +25 -0
- package/dist/genmodel/GenerationMode.js.map +1 -0
- package/dist/genmodel/index.d.ts +9 -0
- package/dist/genmodel/index.d.ts.map +1 -0
- package/dist/genmodel/index.js +10 -0
- package/dist/genmodel/index.js.map +1 -0
- package/dist/index.d.ts +66 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +110 -0
- package/dist/index.js.map +1 -0
- package/dist/loader/EcoreLoader.d.ts +33 -0
- package/dist/loader/EcoreLoader.d.ts.map +1 -0
- package/dist/loader/EcoreLoader.js +91 -0
- package/dist/loader/EcoreLoader.js.map +1 -0
- package/dist/loader/index.d.ts +2 -0
- package/dist/loader/index.d.ts.map +1 -0
- package/dist/loader/index.js +2 -0
- package/dist/loader/index.js.map +1 -0
- package/dist/templates/partials/decorator/class-file.ejs +98 -0
- package/dist/templates/partials/decorator/enum-file.ejs +35 -0
- package/dist/templates/partials/decorator/interface-file.ejs +61 -0
- package/dist/templates/partials/decorator/model-annotations.ejs +91 -0
- package/dist/templates/partials/decorator/package-file.ejs +7 -0
- package/dist/templates/partials/emf/class-file.ejs +226 -0
- package/dist/templates/partials/emf/enum-file.ejs +36 -0
- package/dist/templates/partials/emf/factory-file.ejs +54 -0
- package/dist/templates/partials/emf/index-file.ejs +29 -0
- package/dist/templates/partials/emf/interface-file.ejs +72 -0
- package/dist/templates/partials/emf/package-file.ejs +149 -0
- package/dist/templates/partials/plain/class-file.ejs +75 -0
- package/dist/templates/partials/plain/enum-file.ejs +28 -0
- package/dist/templates/partials/plain/interface-file.ejs +61 -0
- package/dist/templates/partials/plain/package-file.ejs +6 -0
- package/dist/templates/templates/partials/decorator/class-file.ejs +98 -0
- package/dist/templates/templates/partials/decorator/enum-file.ejs +35 -0
- package/dist/templates/templates/partials/decorator/interface-file.ejs +61 -0
- package/dist/templates/templates/partials/decorator/model-annotations.ejs +91 -0
- package/dist/templates/templates/partials/decorator/package-file.ejs +7 -0
- package/dist/templates/templates/partials/emf/class-file.ejs +226 -0
- package/dist/templates/templates/partials/emf/enum-file.ejs +36 -0
- package/dist/templates/templates/partials/emf/factory-file.ejs +54 -0
- package/dist/templates/templates/partials/emf/index-file.ejs +29 -0
- package/dist/templates/templates/partials/emf/interface-file.ejs +72 -0
- package/dist/templates/templates/partials/emf/package-file.ejs +149 -0
- package/dist/templates/templates/partials/plain/class-file.ejs +75 -0
- package/dist/templates/templates/partials/plain/enum-file.ejs +28 -0
- package/dist/templates/templates/partials/plain/interface-file.ejs +61 -0
- package/dist/templates/templates/partials/plain/package-file.ejs +6 -0
- package/dist/util/EObjectHelper.d.ts +90 -0
- package/dist/util/EObjectHelper.d.ts.map +1 -0
- package/dist/util/EObjectHelper.js +381 -0
- package/dist/util/EObjectHelper.js.map +1 -0
- package/dist/util/StringUtils.d.ts +44 -0
- package/dist/util/StringUtils.d.ts.map +1 -0
- package/dist/util/StringUtils.js +115 -0
- package/dist/util/StringUtils.js.map +1 -0
- package/dist/util/index.d.ts +3 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +3 -0
- package/dist/util/index.js.map +1 -0
- package/package.json +60 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { GenConfig } from './GenConfig.js';
|
|
2
|
+
import type { GenModel } from '../genmodel/GenModel.js';
|
|
3
|
+
/**
|
|
4
|
+
* Converts GenConfig to GenModel for the CodeGenerator
|
|
5
|
+
*/
|
|
6
|
+
export declare class GenConfigConverter {
|
|
7
|
+
/**
|
|
8
|
+
* Convert GenConfig to GenModel
|
|
9
|
+
*/
|
|
10
|
+
convert(config: GenConfig): GenModel;
|
|
11
|
+
/**
|
|
12
|
+
* Convert mode string to GenerationMode enum
|
|
13
|
+
*/
|
|
14
|
+
private convertMode;
|
|
15
|
+
/**
|
|
16
|
+
* Convert package
|
|
17
|
+
*/
|
|
18
|
+
private convertPackage;
|
|
19
|
+
/**
|
|
20
|
+
* Convert class
|
|
21
|
+
*/
|
|
22
|
+
private convertClass;
|
|
23
|
+
/**
|
|
24
|
+
* Convert feature
|
|
25
|
+
*/
|
|
26
|
+
private convertFeature;
|
|
27
|
+
/**
|
|
28
|
+
* Convert property mode string to PropertyMode enum
|
|
29
|
+
*/
|
|
30
|
+
private convertPropertyMode;
|
|
31
|
+
/**
|
|
32
|
+
* Convert operation
|
|
33
|
+
*/
|
|
34
|
+
private convertOperation;
|
|
35
|
+
/**
|
|
36
|
+
* Convert enum
|
|
37
|
+
*/
|
|
38
|
+
private convertEnum;
|
|
39
|
+
/**
|
|
40
|
+
* Convert data type
|
|
41
|
+
*/
|
|
42
|
+
private convertDataType;
|
|
43
|
+
/**
|
|
44
|
+
* Map Ecore type name to TypeScript type
|
|
45
|
+
*/
|
|
46
|
+
private mapDefaultTsType;
|
|
47
|
+
/**
|
|
48
|
+
* Check if classifier is an EClass
|
|
49
|
+
*/
|
|
50
|
+
private isEClass;
|
|
51
|
+
/**
|
|
52
|
+
* Check if classifier is an EEnum
|
|
53
|
+
*/
|
|
54
|
+
private isEEnum;
|
|
55
|
+
/**
|
|
56
|
+
* Check if classifier is an EDataType (but not EEnum)
|
|
57
|
+
*/
|
|
58
|
+
private isEDataType;
|
|
59
|
+
/**
|
|
60
|
+
* Check if feature is containment
|
|
61
|
+
*/
|
|
62
|
+
private isContainment;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=GenConfigConverter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenConfigConverter.d.ts","sourceRoot":"","sources":["../../src/genconfig/GenConfigConverter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAkC,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAUxD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ;IA+BpC;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;IACH,OAAO,CAAC,cAAc;IA4CtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAkCpB;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkCxB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAUhB;;OAEG;IACH,OAAO,CAAC,OAAO;IAUf;;OAEG;IACH,OAAO,CAAC,WAAW;IAYnB;;OAEG;IACH,OAAO,CAAC,aAAa;CAkBtB"}
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
import { GenerationMode, PropertyMode } from '../genmodel/GenerationMode.js';
|
|
2
|
+
import { getName } from '../util/EObjectHelper.js';
|
|
3
|
+
/**
|
|
4
|
+
* Converts GenConfig to GenModel for the CodeGenerator
|
|
5
|
+
*/
|
|
6
|
+
export class GenConfigConverter {
|
|
7
|
+
/**
|
|
8
|
+
* Convert GenConfig to GenModel
|
|
9
|
+
*/
|
|
10
|
+
convert(config) {
|
|
11
|
+
const genPackage = this.convertPackage(config);
|
|
12
|
+
return {
|
|
13
|
+
// Generation settings
|
|
14
|
+
generationMode: this.convertMode(config.generation.mode),
|
|
15
|
+
modelDirectory: config.generation.outputDir,
|
|
16
|
+
// Class defaults
|
|
17
|
+
rootExtendsClass: config.classDefaults?.rootExtendsClass || 'BasicEObject',
|
|
18
|
+
rootExtendsInterface: config.classDefaults?.rootExtendsInterface || 'EObject',
|
|
19
|
+
// Package settings
|
|
20
|
+
generateFactory: config.package.generateFactory ?? true,
|
|
21
|
+
generatePackage: config.package.generatePackage ?? true,
|
|
22
|
+
generateInterfaces: config.classDefaults?.generateInterface ?? true,
|
|
23
|
+
generateClasses: config.classDefaults?.generateImpl ?? true,
|
|
24
|
+
// Required defaults
|
|
25
|
+
generateResource: false,
|
|
26
|
+
boundedGenericTypeNames: false,
|
|
27
|
+
usedGenPackages: [],
|
|
28
|
+
featureDelegation: 'None',
|
|
29
|
+
suppressEMFTypes: false,
|
|
30
|
+
suppressGenModelAnnotations: false,
|
|
31
|
+
// Packages
|
|
32
|
+
genPackages: [genPackage]
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Convert mode string to GenerationMode enum
|
|
37
|
+
*/
|
|
38
|
+
convertMode(mode) {
|
|
39
|
+
switch (mode) {
|
|
40
|
+
case 'emf':
|
|
41
|
+
return GenerationMode.EMF;
|
|
42
|
+
case 'decorator':
|
|
43
|
+
return GenerationMode.DECORATOR;
|
|
44
|
+
case 'plain':
|
|
45
|
+
return GenerationMode.PLAIN;
|
|
46
|
+
default:
|
|
47
|
+
return GenerationMode.EMF;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Convert package
|
|
52
|
+
*/
|
|
53
|
+
convertPackage(config) {
|
|
54
|
+
const ePackage = config.ecorePackage;
|
|
55
|
+
const rawClassifiers = ePackage.getEClassifiers?.() || [];
|
|
56
|
+
const classifiers = Array.isArray(rawClassifiers) ? rawClassifiers : Array.from(rawClassifiers);
|
|
57
|
+
const pkgName = getName(ePackage) || 'model';
|
|
58
|
+
// Build override maps for quick lookup
|
|
59
|
+
const classOverrideMap = new Map();
|
|
60
|
+
for (const override of config.classOverrides || []) {
|
|
61
|
+
classOverrideMap.set(override.ecoreClass, override);
|
|
62
|
+
}
|
|
63
|
+
// Convert classes, enums, and data types
|
|
64
|
+
const genClasses = [];
|
|
65
|
+
const genEnums = [];
|
|
66
|
+
const genDataTypes = [];
|
|
67
|
+
for (const classifier of classifiers) {
|
|
68
|
+
if (this.isEClass(classifier)) {
|
|
69
|
+
const classOverride = classOverrideMap.get(classifier);
|
|
70
|
+
genClasses.push(this.convertClass(classifier, config, classOverride));
|
|
71
|
+
}
|
|
72
|
+
else if (this.isEEnum(classifier)) {
|
|
73
|
+
genEnums.push(this.convertEnum(classifier));
|
|
74
|
+
}
|
|
75
|
+
else if (this.isEDataType(classifier)) {
|
|
76
|
+
genDataTypes.push(this.convertDataType(classifier));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
ecorePackage: ePackage,
|
|
81
|
+
prefix: config.package.prefix,
|
|
82
|
+
basePackage: config.package.basePackage || '',
|
|
83
|
+
interfacePackageSuffix: '',
|
|
84
|
+
classPackageSuffix: 'impl',
|
|
85
|
+
adapterFactory: false,
|
|
86
|
+
generateResourceFactory: false,
|
|
87
|
+
fileExtension: pkgName.toLowerCase(),
|
|
88
|
+
genClasses,
|
|
89
|
+
genEnums,
|
|
90
|
+
genDataTypes,
|
|
91
|
+
nestedGenPackages: []
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Convert class
|
|
96
|
+
*/
|
|
97
|
+
convertClass(eClass, config, override) {
|
|
98
|
+
// Build feature override map
|
|
99
|
+
const featureOverrideMap = new Map();
|
|
100
|
+
if (override?.featureOverrides) {
|
|
101
|
+
for (const fo of override.featureOverrides) {
|
|
102
|
+
featureOverrideMap.set(fo.ecoreFeature, fo);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
// Convert features
|
|
106
|
+
const rawFeatures = eClass.getEStructuralFeatures?.() || [];
|
|
107
|
+
const features = Array.isArray(rawFeatures) ? rawFeatures : Array.from(rawFeatures);
|
|
108
|
+
const genFeatures = [];
|
|
109
|
+
for (const feature of features) {
|
|
110
|
+
const featureOverride = featureOverrideMap.get(feature);
|
|
111
|
+
genFeatures.push(this.convertFeature(feature, config, featureOverride));
|
|
112
|
+
}
|
|
113
|
+
// Convert operations
|
|
114
|
+
const rawOperations = eClass.getEOperations?.() || [];
|
|
115
|
+
const operations = Array.isArray(rawOperations) ? rawOperations : Array.from(rawOperations);
|
|
116
|
+
const genOperations = operations.map(op => this.convertOperation(op));
|
|
117
|
+
return {
|
|
118
|
+
ecoreClass: eClass,
|
|
119
|
+
generateInterface: override?.generateInterface ?? config.classDefaults?.generateInterface ?? true,
|
|
120
|
+
generateImpl: override?.generateImpl ?? config.classDefaults?.generateImpl ?? true,
|
|
121
|
+
dynamic: false,
|
|
122
|
+
genFeatures,
|
|
123
|
+
genOperations
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Convert feature
|
|
128
|
+
*/
|
|
129
|
+
convertFeature(feature, config, override) {
|
|
130
|
+
// Determine notify - use override, then feature defaults, then mode-based default
|
|
131
|
+
let notify = override?.notify;
|
|
132
|
+
if (notify === undefined) {
|
|
133
|
+
notify = config.featureDefaults?.notify;
|
|
134
|
+
}
|
|
135
|
+
if (notify === undefined) {
|
|
136
|
+
notify = config.generation.mode === 'emf';
|
|
137
|
+
}
|
|
138
|
+
// Determine property mode
|
|
139
|
+
let property = override?.property;
|
|
140
|
+
if (property === undefined) {
|
|
141
|
+
property = config.featureDefaults?.property;
|
|
142
|
+
}
|
|
143
|
+
if (property === undefined) {
|
|
144
|
+
property = 'editable';
|
|
145
|
+
}
|
|
146
|
+
return {
|
|
147
|
+
ecoreFeature: feature,
|
|
148
|
+
notify,
|
|
149
|
+
property: this.convertPropertyMode(property),
|
|
150
|
+
children: false,
|
|
151
|
+
createChild: this.isContainment(feature),
|
|
152
|
+
propertySortChoices: false
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Convert property mode string to PropertyMode enum
|
|
157
|
+
*/
|
|
158
|
+
convertPropertyMode(mode) {
|
|
159
|
+
switch (mode) {
|
|
160
|
+
case 'readonly':
|
|
161
|
+
return PropertyMode.READONLY;
|
|
162
|
+
case 'none':
|
|
163
|
+
return PropertyMode.NONE;
|
|
164
|
+
case 'editable':
|
|
165
|
+
default:
|
|
166
|
+
return PropertyMode.EDITABLE;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Convert operation
|
|
171
|
+
*/
|
|
172
|
+
convertOperation(op) {
|
|
173
|
+
return {
|
|
174
|
+
ecoreOperation: op,
|
|
175
|
+
generateBody: false,
|
|
176
|
+
body: undefined
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Convert enum
|
|
181
|
+
*/
|
|
182
|
+
convertEnum(eEnum) {
|
|
183
|
+
return {
|
|
184
|
+
ecoreEnum: eEnum,
|
|
185
|
+
useStringValues: false,
|
|
186
|
+
generateAsConst: false
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Convert data type
|
|
191
|
+
*/
|
|
192
|
+
convertDataType(dataType) {
|
|
193
|
+
const typeName = getName(dataType) || 'any';
|
|
194
|
+
return {
|
|
195
|
+
ecoreDataType: dataType,
|
|
196
|
+
tsType: this.mapDefaultTsType(typeName)
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Map Ecore type name to TypeScript type
|
|
201
|
+
*/
|
|
202
|
+
mapDefaultTsType(typeName) {
|
|
203
|
+
switch (typeName) {
|
|
204
|
+
case 'EString':
|
|
205
|
+
case 'EChar':
|
|
206
|
+
case 'ECharacterObject':
|
|
207
|
+
return 'string';
|
|
208
|
+
case 'EBoolean':
|
|
209
|
+
case 'EBooleanObject':
|
|
210
|
+
return 'boolean';
|
|
211
|
+
case 'EInt':
|
|
212
|
+
case 'EIntegerObject':
|
|
213
|
+
case 'EByte':
|
|
214
|
+
case 'EByteObject':
|
|
215
|
+
case 'ELong':
|
|
216
|
+
case 'ELongObject':
|
|
217
|
+
case 'EShort':
|
|
218
|
+
case 'EShortObject':
|
|
219
|
+
case 'EFloat':
|
|
220
|
+
case 'EFloatObject':
|
|
221
|
+
case 'EDouble':
|
|
222
|
+
case 'EDoubleObject':
|
|
223
|
+
case 'EBigInteger':
|
|
224
|
+
case 'EBigDecimal':
|
|
225
|
+
return 'number';
|
|
226
|
+
case 'EDate':
|
|
227
|
+
return 'Date';
|
|
228
|
+
case 'EJavaObject':
|
|
229
|
+
case 'EJavaClass':
|
|
230
|
+
return 'any';
|
|
231
|
+
default:
|
|
232
|
+
return typeName;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Check if classifier is an EClass
|
|
237
|
+
*/
|
|
238
|
+
isEClass(classifier) {
|
|
239
|
+
// Check for static interface
|
|
240
|
+
if ('getEStructuralFeatures' in classifier)
|
|
241
|
+
return true;
|
|
242
|
+
// Check for dynamic object
|
|
243
|
+
const eClass = classifier.eClass?.();
|
|
244
|
+
const eClassName = eClass?.getName?.();
|
|
245
|
+
return eClassName === 'EClass';
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Check if classifier is an EEnum
|
|
249
|
+
*/
|
|
250
|
+
isEEnum(classifier) {
|
|
251
|
+
// Check for static interface
|
|
252
|
+
if ('getELiterals' in classifier)
|
|
253
|
+
return true;
|
|
254
|
+
// Check for dynamic object
|
|
255
|
+
const eClass = classifier.eClass?.();
|
|
256
|
+
const eClassName = eClass?.getName?.();
|
|
257
|
+
return eClassName === 'EEnum';
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Check if classifier is an EDataType (but not EEnum)
|
|
261
|
+
*/
|
|
262
|
+
isEDataType(classifier) {
|
|
263
|
+
if (this.isEEnum(classifier))
|
|
264
|
+
return false;
|
|
265
|
+
// Check for static interface
|
|
266
|
+
if ('isSerializable' in classifier)
|
|
267
|
+
return true;
|
|
268
|
+
// Check for dynamic object
|
|
269
|
+
const eClass = classifier.eClass?.();
|
|
270
|
+
const eClassName = eClass?.getName?.();
|
|
271
|
+
return eClassName === 'EDataType';
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Check if feature is containment
|
|
275
|
+
*/
|
|
276
|
+
isContainment(feature) {
|
|
277
|
+
if ('isContainment' in feature && typeof feature.isContainment === 'function') {
|
|
278
|
+
return feature.isContainment();
|
|
279
|
+
}
|
|
280
|
+
// Dynamic object
|
|
281
|
+
if (typeof feature.eGet === 'function' && typeof feature.eClass === 'function') {
|
|
282
|
+
const eClass = feature.eClass();
|
|
283
|
+
if (eClass) {
|
|
284
|
+
const containmentFeature = eClass.getEStructuralFeature?.('containment');
|
|
285
|
+
if (containmentFeature) {
|
|
286
|
+
return feature.eGet(containmentFeature) === true;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return false;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
//# sourceMappingURL=GenConfigConverter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenConfigConverter.js","sourceRoot":"","sources":["../../src/genconfig/GenConfigConverter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { EPackage } from '@emfts/core';
|
|
2
|
+
import type { GenConfig } from './GenConfig.js';
|
|
3
|
+
/**
|
|
4
|
+
* Loads GenConfig from XMI files
|
|
5
|
+
*/
|
|
6
|
+
export declare class GenConfigLoader {
|
|
7
|
+
private resourceSet;
|
|
8
|
+
private genconfigPackage;
|
|
9
|
+
private ecorePackages;
|
|
10
|
+
/**
|
|
11
|
+
* Initialize the loader
|
|
12
|
+
*/
|
|
13
|
+
init(): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Load the genconfig.ecore metamodel
|
|
16
|
+
*/
|
|
17
|
+
private loadGenConfigMetamodel;
|
|
18
|
+
/**
|
|
19
|
+
* Register an EPackage for reference resolution
|
|
20
|
+
*/
|
|
21
|
+
registerPackage(ePackage: EPackage): void;
|
|
22
|
+
/**
|
|
23
|
+
* Load a GenConfig from XMI file
|
|
24
|
+
*/
|
|
25
|
+
load(configPath: string): Promise<GenConfig>;
|
|
26
|
+
/**
|
|
27
|
+
* Convert dynamic EObject to GenConfig
|
|
28
|
+
*/
|
|
29
|
+
private convertToGenConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Convert GenerationSettings
|
|
32
|
+
*/
|
|
33
|
+
private convertGenerationSettings;
|
|
34
|
+
/**
|
|
35
|
+
* Convert mode value (can be enum literal or string)
|
|
36
|
+
*/
|
|
37
|
+
private convertMode;
|
|
38
|
+
/**
|
|
39
|
+
* Convert PackageSettings
|
|
40
|
+
*/
|
|
41
|
+
private convertPackageSettings;
|
|
42
|
+
/**
|
|
43
|
+
* Convert ClassDefaults
|
|
44
|
+
*/
|
|
45
|
+
private convertClassDefaults;
|
|
46
|
+
/**
|
|
47
|
+
* Convert FeatureDefaults
|
|
48
|
+
*/
|
|
49
|
+
private convertFeatureDefaults;
|
|
50
|
+
/**
|
|
51
|
+
* Convert property mode value
|
|
52
|
+
*/
|
|
53
|
+
private convertPropertyMode;
|
|
54
|
+
/**
|
|
55
|
+
* Convert ClassOverrides array
|
|
56
|
+
*/
|
|
57
|
+
private convertClassOverrides;
|
|
58
|
+
/**
|
|
59
|
+
* Convert FeatureOverrides array
|
|
60
|
+
*/
|
|
61
|
+
private convertFeatureOverrides;
|
|
62
|
+
/**
|
|
63
|
+
* Resolve EPackage reference from URI
|
|
64
|
+
*/
|
|
65
|
+
private resolvePackageReference;
|
|
66
|
+
/**
|
|
67
|
+
* Resolve EPackage from URI string
|
|
68
|
+
*/
|
|
69
|
+
private resolvePackageFromURI;
|
|
70
|
+
/**
|
|
71
|
+
* Resolve EClass reference from URI
|
|
72
|
+
*/
|
|
73
|
+
private resolveClassReference;
|
|
74
|
+
/**
|
|
75
|
+
* Resolve EStructuralFeature reference from URI
|
|
76
|
+
*/
|
|
77
|
+
private resolveFeatureReference;
|
|
78
|
+
/**
|
|
79
|
+
* Get feature value from dynamic EObject
|
|
80
|
+
*/
|
|
81
|
+
private getFeatureValue;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=GenConfigLoader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenConfigLoader.d.ts","sourceRoot":"","sources":["../../src/genconfig/GenConfigLoader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAA2C,MAAM,aAAa,CAAC;AACrF,OAAO,KAAK,EACV,SAAS,EASV,MAAM,gBAAgB,CAAC;AAQxB;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,aAAa,CAAoC;IAEzD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B;;OAEG;YACW,sBAAsB;IAmBpC;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAUzC;;OAEG;IACG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAuBlD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiD1B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgBjC;;OAEG;IACH,OAAO,CAAC,WAAW;IAuBnB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAc9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAQ9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA4B7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwB/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqC7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;OAEG;IACH,OAAO,CAAC,eAAe;CAoExB"}
|