@notjustcoders/ioc-arise 1.1.29 → 1.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analyser/ast-parser.d.ts.map +1 -1
- package/dist/analyser/ast-parser.js +19 -7
- package/dist/analyser/ast-parser.js.map +1 -1
- package/dist/analyser/class-analyzer.d.ts +12 -1
- package/dist/analyser/class-analyzer.d.ts.map +1 -1
- package/dist/analyser/class-analyzer.js +72 -24
- package/dist/analyser/class-analyzer.js.map +1 -1
- package/dist/analyser/factory-analyzer.d.ts +9 -1
- package/dist/analyser/factory-analyzer.d.ts.map +1 -1
- package/dist/analyser/factory-analyzer.js +97 -28
- package/dist/analyser/factory-analyzer.js.map +1 -1
- package/dist/analyser/project-analyzer.d.ts.map +1 -1
- package/dist/analyser/project-analyzer.js +21 -4
- package/dist/analyser/project-analyzer.js.map +1 -1
- package/dist/analyser/value-analyzer.d.ts +7 -1
- package/dist/analyser/value-analyzer.d.ts.map +1 -1
- package/dist/analyser/value-analyzer.js +58 -10
- package/dist/analyser/value-analyzer.js.map +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +13 -3
- package/dist/commands/generate.js.map +1 -1
- package/dist/generator/ioc-container-generator.d.ts +1 -1
- package/dist/generator/ioc-container-generator.d.ts.map +1 -1
- package/dist/generator/ioc-container-generator.js +94 -45
- package/dist/generator/ioc-container-generator.js.map +1 -1
- package/dist/utils/configManager.d.ts +1 -0
- package/dist/utils/configManager.d.ts.map +1 -1
- package/dist/utils/configManager.js +1 -0
- package/dist/utils/configManager.js.map +1 -1
- package/dist/utils/generatedCodeValidator.d.ts +10 -0
- package/dist/utils/generatedCodeValidator.d.ts.map +1 -0
- package/dist/utils/generatedCodeValidator.js +83 -0
- package/dist/utils/generatedCodeValidator.js.map +1 -0
- package/package.json +4 -2
|
@@ -17,41 +17,106 @@ class FactoryAnalyzer {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
async
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const allClassNames = new Set();
|
|
24
|
-
const fileASTMap = new Map();
|
|
25
|
-
// First pass: Collect types for dependency resolution
|
|
20
|
+
async collectTokens(filePaths) {
|
|
21
|
+
const factoryNames = new Set();
|
|
22
|
+
const interfaces = new Set();
|
|
26
23
|
for (const filePath of filePaths) {
|
|
27
24
|
try {
|
|
28
25
|
const root = this.astParser.parseFile(filePath);
|
|
29
|
-
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
26
|
+
// Collect interfaces
|
|
27
|
+
const extractedInterfaces = this.astParser.extractInterfaces(root);
|
|
28
|
+
extractedInterfaces.forEach(i => interfaces.add(i));
|
|
29
|
+
// Collect type aliases
|
|
30
|
+
const typeAliases = this.astParser.extractTypeAliases(root);
|
|
31
|
+
for (const [alias] of typeAliases.entries()) {
|
|
32
|
+
interfaces.add(alias);
|
|
33
|
+
}
|
|
34
|
+
// Collect factory names (exported functions with @factory or pattern match)
|
|
35
|
+
const functionNodes = this.astParser.findAllFunctions(root);
|
|
36
|
+
for (const functionNode of functionNodes) {
|
|
37
|
+
const functionName = this.astParser.extractFunctionName(functionNode);
|
|
38
|
+
if (functionName) {
|
|
39
|
+
const isExported = this.astParser.isExportedFunction(functionNode);
|
|
40
|
+
const hasFactoryAnnotation = this.hasFactoryAnnotation(root, functionNode);
|
|
41
|
+
const matchesFactoryPattern = this.factoryPattern ? this.factoryPattern.test(functionName) : false;
|
|
42
|
+
const returnType = this.astParser.extractFunctionReturnType(functionNode);
|
|
43
|
+
const instanceFactoryFor = returnType ? this.extractCoreInterfaceName(returnType, interfaces) : undefined;
|
|
44
|
+
if (isExported && (hasFactoryAnnotation || matchesFactoryPattern || instanceFactoryFor)) {
|
|
45
|
+
factoryNames.add(functionName);
|
|
46
|
+
if (instanceFactoryFor) {
|
|
47
|
+
interfaces.add(instanceFactoryFor);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
37
50
|
}
|
|
38
51
|
}
|
|
39
52
|
}
|
|
40
53
|
catch (error) {
|
|
41
|
-
logger_1.Logger.warn(`Warning: Could not
|
|
54
|
+
logger_1.Logger.warn(`Warning: Could not collect tokens from ${filePath}:`, { error });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return { factoryNames, interfaces };
|
|
58
|
+
}
|
|
59
|
+
async analyzeFiles(filePaths, tokens) {
|
|
60
|
+
const allFactories = [];
|
|
61
|
+
let allInterfaces = tokens?.interfaces || new Set();
|
|
62
|
+
let allClassNames = tokens?.classNames || new Set();
|
|
63
|
+
let allFactoryNames = tokens?.factoryNames || new Set();
|
|
64
|
+
const fileASTMap = new Map();
|
|
65
|
+
if (!tokens) {
|
|
66
|
+
// First pass: Collect types for dependency resolution
|
|
67
|
+
for (const filePath of filePaths) {
|
|
68
|
+
try {
|
|
69
|
+
const root = this.astParser.parseFile(filePath);
|
|
70
|
+
fileASTMap.set(filePath, root);
|
|
71
|
+
const interfaces = this.astParser.extractInterfaces(root);
|
|
72
|
+
interfaces.forEach(interfaceName => allInterfaces.add(interfaceName));
|
|
73
|
+
const classNodes = this.astParser.findAllClasses(root);
|
|
74
|
+
for (const classNode of classNodes) {
|
|
75
|
+
const className = this.astParser.extractClassName(classNode);
|
|
76
|
+
if (className) {
|
|
77
|
+
allClassNames.add(className);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Collect factory names (exported functions with @factory or pattern match)
|
|
81
|
+
const functionNodes = this.astParser.findAllFunctions(root);
|
|
82
|
+
for (const functionNode of functionNodes) {
|
|
83
|
+
const functionName = this.astParser.extractFunctionName(functionNode);
|
|
84
|
+
if (functionName) {
|
|
85
|
+
const isExported = this.astParser.isExportedFunction(functionNode);
|
|
86
|
+
const hasFactoryAnnotation = this.hasFactoryAnnotation(root, functionNode);
|
|
87
|
+
const matchesFactoryPattern = this.factoryPattern ? this.factoryPattern.test(functionName) : false;
|
|
88
|
+
const returnType = this.astParser.extractFunctionReturnType(functionNode);
|
|
89
|
+
const instanceFactoryFor = returnType ? this.extractCoreInterfaceName(returnType, allInterfaces) : undefined;
|
|
90
|
+
if (isExported && (hasFactoryAnnotation || matchesFactoryPattern || instanceFactoryFor)) {
|
|
91
|
+
allFactoryNames.add(functionName);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
logger_1.Logger.warn(`Warning: Could not parse ${filePath}:`, { error });
|
|
98
|
+
}
|
|
42
99
|
}
|
|
43
100
|
}
|
|
44
101
|
// Second pass: Analyze factory functions
|
|
45
102
|
for (const filePath of filePaths) {
|
|
46
|
-
|
|
103
|
+
let root = fileASTMap.get(filePath);
|
|
104
|
+
if (!root) {
|
|
105
|
+
try {
|
|
106
|
+
root = this.astParser.parseFile(filePath);
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
47
112
|
if (root) {
|
|
48
|
-
const factories = await this.analyzeFileFromAST(filePath, root, allInterfaces, allClassNames);
|
|
113
|
+
const factories = await this.analyzeFileFromAST(filePath, root, allInterfaces, allClassNames, allFactoryNames);
|
|
49
114
|
allFactories.push(...factories);
|
|
50
115
|
}
|
|
51
116
|
}
|
|
52
117
|
return allFactories;
|
|
53
118
|
}
|
|
54
|
-
async analyzeFileFromAST(filePath, root, allInterfaces, allClassNames) {
|
|
119
|
+
async analyzeFileFromAST(filePath, root, allInterfaces, allClassNames, allFactoryNames) {
|
|
55
120
|
const factories = [];
|
|
56
121
|
try {
|
|
57
122
|
const importMappings = this.astParser.extractImportMappings(root);
|
|
@@ -102,11 +167,11 @@ class FactoryAnalyzer {
|
|
|
102
167
|
contextObjectName = contextParam.name;
|
|
103
168
|
contextObjectProperties = this.astParser.extractObjectTypeProperties(functionNode, contextParam.name);
|
|
104
169
|
// Resolve dependencies from context object properties
|
|
105
|
-
dependencies = this.resolveDependenciesFromContextProperties(contextObjectProperties || [], allInterfaces, allClassNames, importMappings);
|
|
170
|
+
dependencies = this.resolveDependenciesFromContextProperties(contextObjectProperties || [], allInterfaces, allClassNames, allFactoryNames, importMappings);
|
|
106
171
|
}
|
|
107
172
|
else {
|
|
108
173
|
// Resolve dependencies from individual parameters (existing behavior)
|
|
109
|
-
dependencies = this.resolveDependencies(parameters, allInterfaces, allClassNames, importMappings);
|
|
174
|
+
dependencies = this.resolveDependencies(parameters, allInterfaces, allClassNames, allFactoryNames, importMappings);
|
|
110
175
|
}
|
|
111
176
|
// Calculate import path
|
|
112
177
|
const importPath = this.calculateImportPath(filePath);
|
|
@@ -144,14 +209,16 @@ class FactoryAnalyzer {
|
|
|
144
209
|
}
|
|
145
210
|
});
|
|
146
211
|
const functionRange = functionNode.range();
|
|
212
|
+
const functionStartLine = functionRange.start.line;
|
|
147
213
|
// Find the JSDoc comment that appears immediately before this function
|
|
148
214
|
for (const comment of comments) {
|
|
149
215
|
const commentText = comment.text();
|
|
150
216
|
if (commentText.includes('/**') && commentText.includes('@factory')) {
|
|
151
217
|
const commentRange = comment.range();
|
|
218
|
+
const commentEndLine = commentRange.end.line;
|
|
152
219
|
// Check if the comment comes before the function (within a few lines)
|
|
153
|
-
if (
|
|
154
|
-
|
|
220
|
+
if (commentEndLine < functionStartLine &&
|
|
221
|
+
functionStartLine - commentEndLine <= 2) {
|
|
155
222
|
return true;
|
|
156
223
|
}
|
|
157
224
|
}
|
|
@@ -162,7 +229,7 @@ class FactoryAnalyzer {
|
|
|
162
229
|
return false;
|
|
163
230
|
}
|
|
164
231
|
}
|
|
165
|
-
resolveDependencies(parameters, allInterfaces, allClassNames, importMappings) {
|
|
232
|
+
resolveDependencies(parameters, allInterfaces, allClassNames, allFactoryNames, importMappings) {
|
|
166
233
|
const dependencies = [];
|
|
167
234
|
for (const param of parameters) {
|
|
168
235
|
const typeName = param.type;
|
|
@@ -174,10 +241,11 @@ class FactoryAnalyzer {
|
|
|
174
241
|
if (typeName.startsWith('{')) {
|
|
175
242
|
continue;
|
|
176
243
|
}
|
|
177
|
-
// Determine if it's an interface or
|
|
244
|
+
// Determine if it's an interface, class, or factory
|
|
178
245
|
const isInterface = allInterfaces.has(typeName);
|
|
179
246
|
const isClass = allClassNames.has(typeName);
|
|
180
|
-
|
|
247
|
+
const isFactory = allFactoryNames.has(typeName);
|
|
248
|
+
if (isInterface || isClass || isFactory) {
|
|
181
249
|
const importPath = importMappings.get(typeName) || './';
|
|
182
250
|
dependencies.push({
|
|
183
251
|
name: typeName,
|
|
@@ -187,7 +255,7 @@ class FactoryAnalyzer {
|
|
|
187
255
|
}
|
|
188
256
|
return dependencies;
|
|
189
257
|
}
|
|
190
|
-
resolveDependenciesFromContextProperties(properties, allInterfaces, allClassNames, importMappings) {
|
|
258
|
+
resolveDependenciesFromContextProperties(properties, allInterfaces, allClassNames, allFactoryNames, importMappings) {
|
|
191
259
|
const dependencies = [];
|
|
192
260
|
for (const prop of properties) {
|
|
193
261
|
const typeName = prop.type;
|
|
@@ -195,10 +263,11 @@ class FactoryAnalyzer {
|
|
|
195
263
|
if (['string', 'number', 'boolean', 'Date', 'Object', 'Array'].includes(typeName)) {
|
|
196
264
|
continue;
|
|
197
265
|
}
|
|
198
|
-
// Determine if it's an interface or
|
|
266
|
+
// Determine if it's an interface, class, or factory
|
|
199
267
|
const isInterface = allInterfaces.has(typeName);
|
|
200
268
|
const isClass = allClassNames.has(typeName);
|
|
201
|
-
|
|
269
|
+
const isFactory = allFactoryNames.has(typeName);
|
|
270
|
+
if (isInterface || isClass || isFactory) {
|
|
202
271
|
const importPath = importMappings.get(typeName) || './';
|
|
203
272
|
dependencies.push({
|
|
204
273
|
name: typeName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory-analyzer.js","sourceRoot":"","sources":["../../src/analyser/factory-analyzer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"factory-analyzer.js","sourceRoot":"","sources":["../../src/analyser/factory-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyser/project-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAS9E,qBAAa,eAAe;IAC1B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,OAAO,EAAE,eAAe;IAO9B,cAAc,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,SAAS,EAAE,WAAW,EAAE,CAAC;QAAC,MAAM,EAAE,SAAS,EAAE,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"project-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyser/project-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAS9E,qBAAa,eAAe;IAC1B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,OAAO,EAAE,eAAe;IAO9B,cAAc,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,SAAS,EAAE,WAAW,EAAE,CAAC;QAAC,MAAM,EAAE,SAAS,EAAE,CAAA;KAAE,CAAC;IA0CxG,OAAO,CAAC,sCAAsC;IA8C9C,OAAO,CAAC,gCAAgC;IA6CxC,OAAO,CAAC,qCAAqC;CA6C9C"}
|
|
@@ -16,10 +16,27 @@ class ProjectAnalyzer {
|
|
|
16
16
|
}
|
|
17
17
|
async analyzeProject() {
|
|
18
18
|
const tsFiles = await this.fileDiscovery.findTypeScriptFiles();
|
|
19
|
-
//
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
19
|
+
// First pass: Collect all tokens from all files
|
|
20
|
+
const classTokens = await this.classAnalyzer.collectTokens(tsFiles);
|
|
21
|
+
const factoryTokens = await this.factoryAnalyzer.collectTokens(tsFiles);
|
|
22
|
+
const valueTokens = await this.valueAnalyzer.collectTokens(tsFiles);
|
|
23
|
+
// Merge all interfaces from all analyzers
|
|
24
|
+
const allInterfaces = new Set([
|
|
25
|
+
...classTokens.interfaces,
|
|
26
|
+
...factoryTokens.interfaces,
|
|
27
|
+
...valueTokens.interfaces
|
|
28
|
+
]);
|
|
29
|
+
const tokens = {
|
|
30
|
+
interfaces: allInterfaces,
|
|
31
|
+
classNames: classTokens.classNames,
|
|
32
|
+
abstractClasses: classTokens.abstractClasses,
|
|
33
|
+
factoryNames: factoryTokens.factoryNames,
|
|
34
|
+
valueNames: valueTokens.valueNames
|
|
35
|
+
};
|
|
36
|
+
// Second pass: Perform full analysis using collected tokens
|
|
37
|
+
const allClasses = await this.classAnalyzer.analyzeFiles(tsFiles, tokens);
|
|
38
|
+
const allFactories = await this.factoryAnalyzer.analyzeFiles(tsFiles, tokens);
|
|
39
|
+
const allValues = await this.valueAnalyzer.analyzeFiles(tsFiles, { interfaces: allInterfaces });
|
|
23
40
|
// Validate that no interface is implemented by multiple classes
|
|
24
41
|
this.validateUniqueInterfaceImplementations(allClasses);
|
|
25
42
|
// Validate that no abstract class is extended by multiple classes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-analyzer.js","sourceRoot":"","sources":["../../src/analyser/project-analyzer.ts"],"names":[],"mappings":";;;AACA,qDAAiD;AACjD,yDAAqD;AACrD,qDAAiD;AACjD,qDAAiD;AACjD,yDAAsD;AACtD,iDAAgD;AAGhD,MAAa,eAAe;IAM1B,YAAY,OAAwB;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QACnF,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpF,IAAI,CAAC,eAAe,GAAG,IAAI,kCAAe,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACtF,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC;QAE/D,
|
|
1
|
+
{"version":3,"file":"project-analyzer.js","sourceRoot":"","sources":["../../src/analyser/project-analyzer.ts"],"names":[],"mappings":";;;AACA,qDAAiD;AACjD,yDAAqD;AACrD,qDAAiD;AACjD,qDAAiD;AACjD,yDAAsD;AACtD,iDAAgD;AAGhD,MAAa,eAAe;IAM1B,YAAY,OAAwB;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QACnF,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpF,IAAI,CAAC,eAAe,GAAG,IAAI,kCAAe,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACtF,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC;QAE/D,gDAAgD;QAChD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACxE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAEpE,0CAA0C;QAC1C,MAAM,aAAa,GAAG,IAAI,GAAG,CAAS;YAClC,GAAG,WAAW,CAAC,UAAU;YACzB,GAAG,aAAa,CAAC,UAAU;YAC3B,GAAG,WAAW,CAAC,UAAU;SAC5B,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG;YACX,UAAU,EAAE,aAAa;YACzB,UAAU,EAAE,WAAW,CAAC,UAAU;YAClC,eAAe,EAAE,WAAW,CAAC,eAAe;YAC5C,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,UAAU,EAAE,WAAW,CAAC,UAAU;SACrC,CAAC;QAEF,4DAA4D;QAC5D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;QAEhG,gEAAgE;QAChE,IAAI,CAAC,sCAAsC,CAAC,UAAU,CAAC,CAAC;QAExD,kEAAkE;QAClE,IAAI,CAAC,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAEvD,sFAAsF;QACtF,iCAAiC;QACjC,IAAI,CAAC,gCAAgC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEhE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC7E,CAAC;IAGO,sCAAsC,CAAC,OAAoB;QACjE,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAC;QAE3D,yCAAyC;QACzC,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;oBACtD,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;gBACvD,CAAC;gBACD,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,IAAI,mBAAmB,EAAE,CAAC;YACvE,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACxC,MAAM,KAAK,GAAG,2BAAY,CAAC,gCAAgC,CACzD,aAAa,EACb,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACrC,CAAC;gBACF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAC9C,MAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjD,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;oBAC5C,MAAM,CAAC,GAAG,CAAC,QAAQ,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,KAAK,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,IAAI,mBAAmB,EAAE,CAAC;gBACvE,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnC,aAAa,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;YAED,MAAM,2BAAY,CAAC,gCAAgC,CACjD,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,aAAa,CACd,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,gCAAgC,CAAC,OAAoB,EAAE,SAAwB;QACrF,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAE5D,gCAAgC;QAChC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;oBACpD,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;gBACrD,CAAC;gBACD,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBAC/B,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC7D,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBACD,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAE,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QAED,8EAA8E;QAC9E,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAC9C,MAAM,CAAC,KAAK,CAAC,0DAA0D,aAAa,IAAI,CAAC,CAAC;gBAC1F,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,KAAK,MAAM,aAAa,IAAI,SAAS,EAAE,CAAC;gBACtC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,2BAAY,CAAC,gCAAgC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAEO,qCAAqC,CAAC,OAAoB;QAChE,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAuB,CAAC;QAE/D,8CAA8C;QAC9C,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBAChC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBAC9D,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,MAAM,wBAAwB,GAAa,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,uBAAuB,EAAE,CAAC;YAC5E,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,wBAAwB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,2BAAY,CAAC,+BAA+B,CACxD,iBAAiB,EACjB,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAClC,CAAC;gBACF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAC9C,MAAM,CAAC,KAAK,CAAC,8CAA8C,iBAAiB,EAAE,CAAC,CAAC;gBAChF,KAAK,MAAM,SAAS,IAAI,gBAAgB,EAAE,CAAC;oBACzC,MAAM,CAAC,GAAG,CAAC,QAAQ,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,KAAK,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,uBAAuB,EAAE,CAAC;gBAC5E,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,aAAa,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,MAAM,2BAAY,CAAC,+BAA+B,CAChD,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,aAAa,CACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA/LD,0CA+LC"}
|
|
@@ -4,7 +4,13 @@ export declare class ValueAnalyzer {
|
|
|
4
4
|
private sourceDir;
|
|
5
5
|
private valuePattern?;
|
|
6
6
|
constructor(sourceDir: string, valuePattern?: string);
|
|
7
|
-
|
|
7
|
+
collectTokens(filePaths: string[]): Promise<{
|
|
8
|
+
valueNames: Set<string>;
|
|
9
|
+
interfaces: Set<string>;
|
|
10
|
+
}>;
|
|
11
|
+
analyzeFiles(filePaths: string[], tokens?: {
|
|
12
|
+
interfaces: Set<string>;
|
|
13
|
+
}): Promise<ValueInfo[]>;
|
|
8
14
|
private analyzeFileFromAST;
|
|
9
15
|
private hasValueAnnotation;
|
|
10
16
|
private calculateImportPath;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyser/value-analyzer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAkB,MAAM,UAAU,CAAC;AAKrD,qBAAa,aAAa;IACtB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAC,CAAS;gBAElB,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAY9C,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"value-analyzer.d.ts","sourceRoot":"","sources":["../../src/analyser/value-analyzer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAkB,MAAM,UAAU,CAAC;AAKrD,qBAAa,aAAa;IACtB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAC,CAAS;gBAElB,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAY9C,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;KAAE,CAAC;IA6CjG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE;QAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YAwCrF,kBAAkB;IA0DhC,OAAO,CAAC,kBAAkB;IA8B1B,OAAO,CAAC,mBAAmB;CAM9B"}
|
|
@@ -17,25 +17,73 @@ class ValueAnalyzer {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
async
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const fileASTMap = new Map();
|
|
24
|
-
// First pass: Collect interfaces for type checking
|
|
20
|
+
async collectTokens(filePaths) {
|
|
21
|
+
const valueNames = new Set();
|
|
22
|
+
const interfaces = new Set();
|
|
25
23
|
for (const filePath of filePaths) {
|
|
26
24
|
try {
|
|
27
25
|
const root = this.astParser.parseFile(filePath);
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
26
|
+
// Collect interfaces
|
|
27
|
+
const extractedInterfaces = this.astParser.extractInterfaces(root);
|
|
28
|
+
extractedInterfaces.forEach(i => interfaces.add(i));
|
|
29
|
+
// Collect type aliases (export type Foo = ...)
|
|
30
|
+
const typeAliases = this.astParser.extractTypeAliases(root);
|
|
31
|
+
for (const [alias] of typeAliases.entries()) {
|
|
32
|
+
interfaces.add(alias);
|
|
33
|
+
}
|
|
34
|
+
// Collect exported values
|
|
35
|
+
const exportedValues = this.astParser.findAllExportedValues(root);
|
|
36
|
+
for (const valueNode of exportedValues) {
|
|
37
|
+
const valueName = this.astParser.extractValueName(valueNode);
|
|
38
|
+
if (valueName) {
|
|
39
|
+
const hasValueAnnotation = this.hasValueAnnotation(root, valueNode);
|
|
40
|
+
const matchesValuePattern = this.valuePattern ? this.valuePattern.test(valueName) : false;
|
|
41
|
+
if (hasValueAnnotation || matchesValuePattern) {
|
|
42
|
+
valueNames.add(valueName);
|
|
43
|
+
// Also check if it has a type that might be an interface
|
|
44
|
+
const interfaceName = this.astParser.extractValueType(valueNode);
|
|
45
|
+
if (interfaceName) {
|
|
46
|
+
interfaces.add(interfaceName);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
31
51
|
}
|
|
32
52
|
catch (error) {
|
|
33
|
-
logger_1.Logger.warn(`Warning: Could not
|
|
53
|
+
logger_1.Logger.warn(`Warning: Could not collect tokens from ${filePath}:`, { error });
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return { valueNames, interfaces };
|
|
57
|
+
}
|
|
58
|
+
async analyzeFiles(filePaths, tokens) {
|
|
59
|
+
const allValues = [];
|
|
60
|
+
let allInterfaces = tokens?.interfaces || new Set();
|
|
61
|
+
const fileASTMap = new Map();
|
|
62
|
+
if (!tokens) {
|
|
63
|
+
// First pass: Collect interfaces for type checking
|
|
64
|
+
for (const filePath of filePaths) {
|
|
65
|
+
try {
|
|
66
|
+
const root = this.astParser.parseFile(filePath);
|
|
67
|
+
fileASTMap.set(filePath, root);
|
|
68
|
+
const interfaces = this.astParser.extractInterfaces(root);
|
|
69
|
+
interfaces.forEach(interfaceName => allInterfaces.add(interfaceName));
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
logger_1.Logger.warn(`Warning: Could not parse ${filePath}:`, { error });
|
|
73
|
+
}
|
|
34
74
|
}
|
|
35
75
|
}
|
|
36
76
|
// Second pass: Analyze exported const values
|
|
37
77
|
for (const filePath of filePaths) {
|
|
38
|
-
|
|
78
|
+
let root = fileASTMap.get(filePath);
|
|
79
|
+
if (!root) {
|
|
80
|
+
try {
|
|
81
|
+
root = this.astParser.parseFile(filePath);
|
|
82
|
+
}
|
|
83
|
+
catch (e) {
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
39
87
|
if (root) {
|
|
40
88
|
const values = await this.analyzeFileFromAST(filePath, root, allInterfaces);
|
|
41
89
|
allValues.push(...values);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value-analyzer.js","sourceRoot":"","sources":["../../src/analyser/value-analyzer.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAGhC,4CAAyC;AACzC,4CAAyC;AAEzC,MAAa,aAAa;IAKtB,YAAY,SAAiB,EAAE,YAAqB;QAChD,IAAI,CAAC,SAAS,GAAG,qBAAS,CAAC,SAAS,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,YAAY,EAAE,CAAC;YACf,IAAI,CAAC;gBACD,IAAI,CAAC,YAAY,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,eAAM,CAAC,IAAI,CAAC,gCAAgC,YAAY,2BAA2B,CAAC,CAAC;YACzF,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAmB;
|
|
1
|
+
{"version":3,"file":"value-analyzer.js","sourceRoot":"","sources":["../../src/analyser/value-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC,eAAO,MAAM,eAAe,SAsRxB,CAAC"}
|
|
@@ -14,6 +14,7 @@ const IoCError_1 = require("../errors/IoCError");
|
|
|
14
14
|
const moduleResolver_1 = require("../utils/moduleResolver");
|
|
15
15
|
const tsConfigPathsResolver_1 = require("../utils/tsConfigPathsResolver");
|
|
16
16
|
const logger_1 = require("../utils/logger");
|
|
17
|
+
const generatedCodeValidator_1 = require("../utils/generatedCodeValidator");
|
|
17
18
|
exports.generateCommand = new commander_1.Command("generate")
|
|
18
19
|
.description("Generate IoC container from TypeScript classes")
|
|
19
20
|
.option("-s, --source <dir>", "Source directory to scan")
|
|
@@ -23,6 +24,7 @@ exports.generateCommand = new commander_1.Command("generate")
|
|
|
23
24
|
.option("--factory-pattern <pattern>", "Factory function name pattern to match (regex). Default: functions with @factory JSDoc comment")
|
|
24
25
|
.option("--value-pattern <pattern>", "Value name pattern to match (regex). Default: values with @value JSDoc comment")
|
|
25
26
|
.option("--check-cycles", "Only check for circular dependencies without generating")
|
|
27
|
+
.option("--no-validate", "Disable validation of generated code")
|
|
26
28
|
.option("--verbose", "Enable verbose logging")
|
|
27
29
|
.action(async (options) => {
|
|
28
30
|
try {
|
|
@@ -83,7 +85,6 @@ exports.generateCommand = new commander_1.Command("generate")
|
|
|
83
85
|
logger_1.Logger.error(IoCError_1.ErrorUtils.formatForConsole(error));
|
|
84
86
|
logger_1.Logger.error("No classes, factories, or values found to generate a container.");
|
|
85
87
|
process.exit(1);
|
|
86
|
-
return;
|
|
87
88
|
}
|
|
88
89
|
// Group everything by module
|
|
89
90
|
let moduleGroupedClasses;
|
|
@@ -152,12 +153,21 @@ exports.generateCommand = new commander_1.Command("generate")
|
|
|
152
153
|
if (mergedOptions.checkCycles) {
|
|
153
154
|
logger_1.Logger.success("No circular dependencies found (classes or modules).");
|
|
154
155
|
process.exit(0);
|
|
155
|
-
return;
|
|
156
156
|
}
|
|
157
157
|
// Generate container file
|
|
158
158
|
logger_1.Logger.custom("🚀", "Generating container...", logger_1.Logger.getColors().cyan + logger_1.Logger.getColors().bright);
|
|
159
159
|
const pathsResolver = new tsConfigPathsResolver_1.TsConfigPathsResolver(sourceDir);
|
|
160
|
-
generator_1.IoCContainerGenerator.generate(classes, outputPath, moduleGroupedClasses, factories, values, moduleGroupedFactories, moduleGroupedValues, pathsResolver, moduleResolver !== null);
|
|
160
|
+
const generatedFiles = generator_1.IoCContainerGenerator.generate(classes, outputPath, moduleGroupedClasses, factories, values, moduleGroupedFactories, moduleGroupedValues, pathsResolver, moduleResolver !== null);
|
|
161
|
+
// Validate generated code
|
|
162
|
+
if (mergedOptions.validate !== false) {
|
|
163
|
+
try {
|
|
164
|
+
generatedCodeValidator_1.GeneratedCodeValidator.validate(generatedFiles, sourceDir);
|
|
165
|
+
}
|
|
166
|
+
catch (validationError) {
|
|
167
|
+
logger_1.Logger.error("Validation failed. Generated code may be invalid.");
|
|
168
|
+
// We don't exit here to allow user to see stats and output path
|
|
169
|
+
}
|
|
170
|
+
}
|
|
161
171
|
const statParts = [];
|
|
162
172
|
if (classes.length > 0)
|
|
163
173
|
statParts.push(`${classes.length} class${classes.length !== 1 ? "es" : ""}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+BAA+B;AAC/B,2BAAgC;AAChC,0CAA0E;AAC1E,4CAAqD;AACrD,wFAAmF;AACnF,0DAAuD;AACvD,8DAA2D;AAC3D,yDAAsD;AACtD,iDAAgD;AAChD,4DAAyD;AACzD,0EAAuE;AACvE,4CAAyC;AAEzC,4EAAyE;AAE5D,QAAA,eAAe,GAAG,IAAI,mBAAO,CAAC,UAAU,CAAC;KACnD,WAAW,CAAC,gDAAgD,CAAC;KAC7D,MAAM,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;KACxD,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;KACjD,MAAM,CACL,2BAA2B,EAC3B,yCAAyC,CAC1C;KACA,MAAM,CAAC,6BAA6B,EAAE,4BAA4B,CAAC;KACnE,MAAM,CACL,6BAA6B,EAC7B,gGAAgG,CACjG;KACA,MAAM,CACL,2BAA2B,EAC3B,gFAAgF,CACjF;KACA,MAAM,CACL,gBAAgB,EAChB,yDAAyD,CAC1D;KACA,MAAM,CAAC,eAAe,EAAE,sCAAsC,CAAC;KAC/D,MAAM,CAAC,WAAW,EAAE,wBAAwB,CAAC;KAC7C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,oBAAoB;QACpB,eAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAEzD,sDAAsD;QACtD,MAAM,gBAAgB,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,IAAI,6BAAa,CAAC,gBAAgB,CAAC,CAAC;QAE1D,6BAA6B;QAC7B,IAAI,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;YACzC,IACE,CAAC,iCAAe,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,CAAC,EACtE,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,MAAM,aAAa,GAAG,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAEjE,MAAM,SAAS,GAAG,IAAA,cAAO,EAAC,aAAa,CAAC,MAAO,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAA,cAAO,EAAC,gBAAgB,EAAE,aAAa,CAAC,MAAO,CAAC,CAAC;QAEpE,IAAI,aAAa,CAAC,aAAa,EAAE,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC3D,eAAM,CAAC,IAAI,CAAC,sBAAsB,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,uDAAuD;QACvD,IAAI,cAAc,GAA0B,IAAI,CAAC;QACjD,IACE,aAAa,CAAC,OAAO;YACrB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAC7C,CAAC;YACD,cAAc,GAAG,IAAI,+BAAc,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACtE,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,eAAM,CAAC,IAAI,CACT,+BAA+B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,UAAU,CACnF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,2BAAY,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YAC9D,eAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,eAAM,CAAC,IAAI,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;YAChD,eAAM,CAAC,IAAI,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC;YAC1C,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;gBAC5B,eAAM,CAAC,IAAI,CAAC,sBAAsB,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,eAAM,CAAC,MAAM,CACX,IAAI,EACJ,sBAAsB,EACtB,eAAM,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CACpD,CAAC;QACF,4CAA4C;QAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,sCAA2B,EACtE,SAAS,EACT;YACE,SAAS;YACT,gBAAgB,EAAE,aAAa,CAAC,SAAS;YACzC,eAAe,EAAE,aAAa,CAAC,OAAO;YACtC,cAAc,EAAE,aAAa,CAAC,cAAc;YAC5C,YAAY,EAAE,aAAa,CAAC,YAAY;SACzC,CACF,CAAC;QAEF,wCAAwC;QACxC,IACE,OAAO,CAAC,MAAM,KAAK,CAAC;YACpB,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAChC,CAAC;YACD,MAAM,KAAK,GAAG,2BAAY,CAAC,cAAc,CACvC,aAAa,CAAC,SAAS,IAAI,sCAAsC,CAClE,CAAC;YACF,eAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,eAAM,CAAC,KAAK,CACV,iEAAiE,CAClE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,6BAA6B;QAC7B,IAAI,oBAA0D,CAAC;QAC/D,IAAI,sBAA8D,CAAC;QACnE,IAAI,mBAAyD,CAAC;QAE9D,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,oBAAoB,GAAG,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,sBAAsB;oBACpB,cAAc,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACrD,CAAC;YACD,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,oCAAoC;QACpC,eAAM,CAAC,OAAO,EAAE,CAAC;QACjB,oBAAoB,CAClB,cAAc,KAAK,IAAI,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,OAAO,EACP,SAAS,EACT,MAAM,EACN,aAAa,CAAC,OAAO,IAAI,KAAK,CAC/B,CAAC;QACF,eAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,kDAAkD;QAClD,MAAM,MAAM,GAAG,yDAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;gBAC7C,MAAM,KAAK,GAAG,2BAAY,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gBACrE,eAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBAEjD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,eAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;oBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;wBACvC,eAAM,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACtD,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,eAAM,CAAC,KAAK,CACV,oEAAoE,CACrE,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,kDAAkD;QAClD,IACE,oBAAoB;YACpB,oBAAoB,CAAC,IAAI,GAAG,CAAC;YAC7B,OAAO,CAAC,MAAM,GAAG,CAAC,EAClB,CAAC;YACD,MAAM,YAAY,GAChB,yDAA0B,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;YACtE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,eAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;gBAChE,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrB,iFAAiF;wBACjF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACvC,eAAM,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,eAAM,CAAC,GAAG,CACR,oEAAoE,CACrE,CAAC;gBACF,eAAM,CAAC,GAAG,CACR,kFAAkF,CACnF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;YAC9B,eAAM,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,0BAA0B;QAC1B,eAAM,CAAC,MAAM,CACX,IAAI,EACJ,yBAAyB,EACzB,eAAM,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CACpD,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,6CAAqB,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,iCAAqB,CAAC,QAAQ,CACnD,OAAO,EACP,UAAU,EACV,oBAAoB,EACpB,SAAS,EACT,MAAM,EACN,sBAAsB,EACtB,mBAAmB,EACnB,aAAa,EACb,cAAc,KAAK,IAAI,CACxB,CAAC;QAEF,0BAA0B;QAC1B,IAAI,aAAa,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,+CAAsB,CAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,eAAe,EAAE,CAAC;gBACzB,eAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;gBAClE,gEAAgE;YAClE,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YACpB,SAAS,CAAC,IAAI,CACZ,GAAG,OAAO,CAAC,MAAM,SAAS,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7D,CAAC;QACJ,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YACnC,SAAS,CAAC,IAAI,CACZ,GAAG,SAAS,CAAC,MAAM,UAAU,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CACpE,CAAC;QACJ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAC7B,SAAS,CAAC,IAAI,CACZ,GAAG,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1D,CAAC;QACJ,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;gBAC1B,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACvC,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;aACvC,CAAC,CAAC,IAAI,CAAC;YACR,SAAS,CAAC,OAAO,CACf,GAAG,WAAW,UAAU,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,CAAC;QACJ,CAAC;QAED,eAAM,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QACpD,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,SAAS,UAAU,EAAE,EAAE,eAAM,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CACpE,CAAC;QACF,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CACjB,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAC7B,eAAM,CAAC,SAAS,EAAE,CAAC,IAAI,CACxB,CACF,CAAC;QAEF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,qBAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,eAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,2BAAY,CAAC,eAAe,CAAC,KAAc,CAAC,CAAC;YAClE,eAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,SAAS,oBAAoB,CAC3B,SAAkB,EAClB,oBAA0D,EAC1D,sBAA8D,EAC9D,mBAAyD,EACzD,OAAoB,EACpB,SAAoC,EACpC,MAA+B,EAC/B,QAAiB;IAEjB,MAAM,CAAC,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;IAE7B,MAAM,UAAU,GAAG,CAAC,GAAc,EAAE,MAAc,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACvE,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YACtB,eAAM,CAAC,GAAG,CACR,IAAI;gBACF,eAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC;gBAChD,eAAM,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAClD,CAAC;QACJ,CAAC;aAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;YACjC,eAAM,CAAC,GAAG,CACR,IAAI;gBACF,eAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC7C,eAAM,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CACtD,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5D,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC/C,eAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CACtC,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,CAAC,OAAoB,EAAE,MAAc,EAAE,EAAE;QAC5D,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAC/B,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,MAAM,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;gBAC3D,eAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC7C,eAAM,CAAC,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAC3D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAC5C,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,MAAM,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;gBAC3D,eAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC7C,eAAM,CAAC,YAAY,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAC/C,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChE,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC/C,eAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CACtC,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAE,MAAc,EAAE,EAAE;QACtD,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;QAC/D,eAAM,CAAC,GAAG,CACR,eAAM,CAAC,YAAY,CAAC,GAAG,MAAM,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;YACvD,eAAM,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC;YAC3C,eAAM,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CACtC,CAAC;QACF,2DAA2D;IAC7D,CAAC,CAAC;IACF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS;YACrC,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACvC,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACzC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACvC,CAAC,CAAC;QAEH,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YACxC,eAAM,CAAC,GAAG,CAAC,eAAM,CAAC,YAAY,CAAC,MAAM,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACvE,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC9D,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,sBAAsB,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBACpE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/D,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,SAAS,IAAI,EAAE,EAAE,CAAC;YACtC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;YACjC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -9,7 +9,7 @@ export declare class IoCContainerGenerator {
|
|
|
9
9
|
* @param factories - Optional: Factory functions to be registered
|
|
10
10
|
* @param values - Optional: Plain object values to be registered with useValue
|
|
11
11
|
*/
|
|
12
|
-
static generate(classes: ClassInfo[], outputPath: string, moduleGroupedClasses?: Map<string, ClassInfo[]>, factories?: FactoryInfo[], values?: ValueInfo[], moduleGroupedFactories?: Map<string, FactoryInfo[]>, moduleGroupedValues?: Map<string, ValueInfo[]>, pathsResolver?: TsConfigPathsResolver, isModular?: boolean):
|
|
12
|
+
static generate(classes: ClassInfo[], outputPath: string, moduleGroupedClasses?: Map<string, ClassInfo[]>, factories?: FactoryInfo[], values?: ValueInfo[], moduleGroupedFactories?: Map<string, FactoryInfo[]>, moduleGroupedValues?: Map<string, ValueInfo[]>, pathsResolver?: TsConfigPathsResolver, isModular?: boolean): string[];
|
|
13
13
|
private static generateFlatCode;
|
|
14
14
|
private static generateModularFiles;
|
|
15
15
|
private static generateModuleFile;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ioc-container-generator.d.ts","sourceRoot":"","sources":["../../src/generator/ioc-container-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"ioc-container-generator.d.ts","sourceRoot":"","sources":["../../src/generator/ioc-container-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,qBAAa,qBAAqB;IAC9B;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,CACX,OAAO,EAAE,SAAS,EAAE,EACpB,UAAU,EAAE,MAAM,EAClB,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAC/C,SAAS,CAAC,EAAE,WAAW,EAAE,EACzB,MAAM,CAAC,EAAE,SAAS,EAAE,EACpB,sBAAsB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EACnD,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAC9C,aAAa,CAAC,EAAE,qBAAqB,EACrC,SAAS,CAAC,EAAE,OAAO,GACpB,MAAM,EAAE;IAkCX,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAwE/B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAmFnC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAmDjC,OAAO,CAAC,MAAM,CAAC,kCAAkC;IAiCjD,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAW/C,OAAO,CAAC,MAAM,CAAC,yBAAyB;IA0BxC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAuElC,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAiBxC,OAAO,CAAC,MAAM,CAAC,4BAA4B;IAY3C,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAwC1C,OAAO,CAAC,MAAM,CAAC,eAAe;IA4F9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAoBrC,OAAO,CAAC,MAAM,CAAC,qBAAqB;IA+CpC,OAAO,CAAC,MAAM,CAAC,4BAA4B;IA2D3C,OAAO,CAAC,MAAM,CAAC,0BAA0B;CAsB5C"}
|