@notjustcoders/ioc-arise 1.1.28 → 1.1.30

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.
@@ -17,41 +17,106 @@ class FactoryAnalyzer {
17
17
  }
18
18
  }
19
19
  }
20
- async analyzeFiles(filePaths) {
21
- const allFactories = [];
22
- const allInterfaces = new Set();
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
- fileASTMap.set(filePath, root);
30
- const interfaces = this.astParser.extractInterfaces(root);
31
- interfaces.forEach(interfaceName => allInterfaces.add(interfaceName));
32
- const classNodes = this.astParser.findAllClasses(root);
33
- for (const classNode of classNodes) {
34
- const className = this.astParser.extractClassName(classNode);
35
- if (className) {
36
- allClassNames.add(className);
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 parse ${filePath}:`, { error });
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
- const root = fileASTMap.get(filePath);
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 (commentRange.end.line < functionRange.start.line &&
154
- functionRange.start.line - commentRange.end.line <= 2) {
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 class
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
- if (isInterface || isClass) {
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 class
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
- if (isInterface || isClass) {
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;IAsBxG,OAAO,CAAC,sCAAsC;IA8C9C,OAAO,CAAC,gCAAgC;IA6CxC,OAAO,CAAC,qCAAqC;CA6C9C"}
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
- // Analyze all files in a single batch operation for better performance
20
- const allClasses = await this.classAnalyzer.analyzeFiles(tsFiles);
21
- const allFactories = await this.factoryAnalyzer.analyzeFiles(tsFiles);
22
- const allValues = await this.valueAnalyzer.analyzeFiles(tsFiles);
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":"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"}
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
- analyzeFiles(filePaths: string[]): Promise<ValueInfo[]>;
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;YA8B/C,kBAAkB;IA0DhC,OAAO,CAAC,kBAAkB;IA8B1B,OAAO,CAAC,mBAAmB;CAM9B"}
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 analyzeFiles(filePaths) {
21
- const allValues = [];
22
- const allInterfaces = new Set();
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
- fileASTMap.set(filePath, root);
29
- const interfaces = this.astParser.extractInterfaces(root);
30
- interfaces.forEach(interfaceName => allInterfaces.add(interfaceName));
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 parse ${filePath}:`, { error });
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
- const root = fileASTMap.get(filePath);
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":"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"}
1
+ {"version":3,"file":"value-analyzer.js","sourceRoot":"","sources":["../../src/analyser/value-analyzer.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { Command } from 'commander';
1
+ import { Command } from "commander";
2
2
  export declare const generateCommand: Command;
3
3
  //# sourceMappingURL=generate.d.ts.map
@@ -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;AAepC,eAAO,MAAM,eAAe,SAkMxB,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,eAAO,MAAM,eAAe,SA6QxB,CAAC"}