@notjustcoders/ioc-arise 1.1.10 → 1.1.11
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 +37 -115
- package/dist/analyser/ast-parser.d.ts.map +1 -1
- package/dist/analyser/ast-parser.js +4 -4
- package/dist/analyser/ast-parser.js.map +1 -1
- package/dist/analyser/class-analyzer.d.ts.map +1 -1
- package/dist/analyser/class-analyzer.js +8 -5
- package/dist/analyser/class-analyzer.js.map +1 -1
- package/dist/analyser/project-analyzer.d.ts.map +1 -1
- package/dist/analyser/project-analyzer.js +7 -6
- package/dist/analyser/project-analyzer.js.map +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +12 -11
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +37 -16
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/visualize.d.ts.map +1 -1
- package/dist/commands/visualize.js +10 -9
- package/dist/commands/visualize.js.map +1 -1
- package/dist/errors/IoCError.d.ts +7 -0
- package/dist/errors/IoCError.d.ts.map +1 -1
- package/dist/errors/IoCError.js +16 -1
- package/dist/errors/IoCError.js.map +1 -1
- package/dist/errors/errorFactory.d.ts +1 -1
- package/dist/errors/errorFactory.d.ts.map +1 -1
- package/dist/errors/errorFactory.js +23 -23
- package/dist/errors/errorFactory.js.map +1 -1
- package/dist/generator/index.d.ts +2 -19
- package/dist/generator/index.d.ts.map +1 -1
- package/dist/generator/index.js +16 -34
- package/dist/generator/index.js.map +1 -1
- package/dist/generator/ioc-container-generator.d.ts +27 -0
- package/dist/generator/ioc-container-generator.d.ts.map +1 -0
- package/dist/generator/ioc-container-generator.js +353 -0
- package/dist/generator/ioc-container-generator.js.map +1 -0
- package/dist/generator/type-declaration-generator.d.ts +10 -0
- package/dist/generator/type-declaration-generator.d.ts.map +1 -0
- package/dist/generator/type-declaration-generator.js +140 -0
- package/dist/generator/type-declaration-generator.js.map +1 -0
- package/dist/utils/circular-dependency-detector.d.ts +16 -0
- package/dist/utils/circular-dependency-detector.d.ts.map +1 -0
- package/dist/utils/circular-dependency-detector.js +70 -0
- package/dist/utils/circular-dependency-detector.js.map +1 -0
- package/dist/utils/configManager.d.ts.map +1 -1
- package/dist/utils/configManager.js +6 -5
- package/dist/utils/configManager.js.map +1 -1
- package/dist/utils/configValidator.d.ts +1 -1
- package/dist/utils/configValidator.d.ts.map +1 -1
- package/dist/utils/configValidator.js +12 -11
- package/dist/utils/configValidator.js.map +1 -1
- package/dist/utils/moduleResolver.d.ts +1 -1
- package/dist/utils/moduleResolver.d.ts.map +1 -1
- package/dist/utils/moduleResolver.js +5 -5
- package/dist/utils/moduleResolver.js.map +1 -1
- package/package.json +3 -2
|
@@ -6,9 +6,11 @@ const path_1 = require("path");
|
|
|
6
6
|
const fs_1 = require("fs");
|
|
7
7
|
const analyser_1 = require("../analyser");
|
|
8
8
|
const generator_1 = require("../generator");
|
|
9
|
+
const circular_dependency_detector_1 = require("../utils/circular-dependency-detector");
|
|
9
10
|
const configManager_1 = require("../utils/configManager");
|
|
10
11
|
const configValidator_1 = require("../utils/configValidator");
|
|
11
|
-
const
|
|
12
|
+
const errorFactory_1 = require("../errors/errorFactory");
|
|
13
|
+
const IoCError_1 = require("../errors/IoCError");
|
|
12
14
|
const moduleResolver_1 = require("../utils/moduleResolver");
|
|
13
15
|
const one_logger_client_sdk_1 = require("@notjustcoders/one-logger-client-sdk");
|
|
14
16
|
exports.generateCommand = new commander_1.Command('generate')
|
|
@@ -55,8 +57,8 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
59
|
if (!(0, fs_1.existsSync)(sourceDir)) {
|
|
58
|
-
const error =
|
|
59
|
-
console.error(`❌ ${
|
|
60
|
+
const error = errorFactory_1.ErrorFactory.sourceDirectoryNotFound(sourceDir);
|
|
61
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
60
62
|
process.exit(1);
|
|
61
63
|
}
|
|
62
64
|
if (mergedOptions.verbose) {
|
|
@@ -75,8 +77,8 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
75
77
|
});
|
|
76
78
|
console.log("analysis results", classes);
|
|
77
79
|
if (classes.length === 0) {
|
|
78
|
-
const error =
|
|
79
|
-
console.error(`❌ ${
|
|
80
|
+
const error = errorFactory_1.ErrorFactory.noClassesFound(mergedOptions.interface || 'interfaces with "implements" keyword');
|
|
81
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
80
82
|
process.exit(1);
|
|
81
83
|
return;
|
|
82
84
|
}
|
|
@@ -110,14 +112,14 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
110
112
|
});
|
|
111
113
|
}
|
|
112
114
|
}
|
|
113
|
-
// Check for circular dependencies
|
|
114
|
-
const cycles =
|
|
115
|
+
// Check for circular dependencies between classes
|
|
116
|
+
const cycles = circular_dependency_detector_1.CircularDependencyDetector.detect(classes);
|
|
115
117
|
if (cycles.length > 0) {
|
|
116
118
|
const firstCycle = cycles[0];
|
|
117
119
|
if (firstCycle && firstCycle.length > 0) {
|
|
118
120
|
const className = firstCycle[0] || 'unknown';
|
|
119
|
-
const error =
|
|
120
|
-
console.error(`❌ ${
|
|
121
|
+
const error = errorFactory_1.ErrorFactory.circularDependency(className, firstCycle);
|
|
122
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
121
123
|
if (cycles.length > 1) {
|
|
122
124
|
console.error('\n Additional cycles:');
|
|
123
125
|
cycles.slice(1).forEach((cycle, index) => {
|
|
@@ -130,30 +132,49 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
130
132
|
}
|
|
131
133
|
process.exit(1);
|
|
132
134
|
}
|
|
135
|
+
// Check for circular dependencies between modules
|
|
136
|
+
if (moduleGroupedClasses && moduleGroupedClasses.size > 1) {
|
|
137
|
+
const moduleCycles = circular_dependency_detector_1.CircularDependencyDetector.detectModuleCycles(moduleGroupedClasses);
|
|
138
|
+
if (moduleCycles.length > 0) {
|
|
139
|
+
console.error(`❌ Circular dependencies detected between modules:`);
|
|
140
|
+
moduleCycles.forEach((cycle, index) => {
|
|
141
|
+
if (cycle.length > 0) {
|
|
142
|
+
// The cycle already includes the starting node at the end from TopologicalSorter
|
|
143
|
+
const cycleDisplay = cycle.join(' → ');
|
|
144
|
+
console.error(` ${index + 1}. ${cycleDisplay}`);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
console.error('\n Module dependencies must form a directed acyclic graph (DAG).');
|
|
148
|
+
console.error(' Consider refactoring to break the circular dependency or merging the modules.');
|
|
149
|
+
process.exit(1);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
133
152
|
if (mergedOptions.checkCycles) {
|
|
134
|
-
console.log('✅ No circular dependencies found.');
|
|
153
|
+
console.log('✅ No circular dependencies found (classes or modules).');
|
|
135
154
|
return;
|
|
136
155
|
}
|
|
137
156
|
// Generate container file
|
|
138
|
-
|
|
157
|
+
console.log(`🚀 Generating container using 'ioc-arise' runtime...`);
|
|
158
|
+
generator_1.IoCContainerGenerator.generate(classes, outputPath, moduleGroupedClasses);
|
|
139
159
|
console.log(`✅ Container generated successfully!`);
|
|
140
160
|
console.log(` File: ${outputPath}`);
|
|
141
161
|
console.log(` Classes: ${classes.length}`);
|
|
142
162
|
if (mergedOptions.verbose) {
|
|
143
163
|
console.log('\n🎉 You can now import and use your container:');
|
|
144
164
|
console.log(' import { container } from "./container.gen";');
|
|
145
|
-
console.log('
|
|
165
|
+
console.log(' // Usage examples:');
|
|
166
|
+
console.log(' // const userService = container.resolve(UserService);');
|
|
146
167
|
}
|
|
147
168
|
// Force process exit to prevent hanging due to one-logger SDK
|
|
148
169
|
process.exit(0);
|
|
149
170
|
}
|
|
150
171
|
catch (error) {
|
|
151
|
-
if (
|
|
152
|
-
console.error(`❌ ${
|
|
172
|
+
if (IoCError_1.ErrorUtils.isIoCError(error)) {
|
|
173
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
153
174
|
}
|
|
154
175
|
else {
|
|
155
|
-
const wrappedError =
|
|
156
|
-
console.error(`❌ ${
|
|
176
|
+
const wrappedError = errorFactory_1.ErrorFactory.unexpectedError(error);
|
|
177
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(wrappedError)}`);
|
|
157
178
|
}
|
|
158
179
|
process.exit(1);
|
|
159
180
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+BAA+B;AAC/B,2BAAgC;AAChC,0CAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualize.d.ts","sourceRoot":"","sources":["../../src/commands/visualize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"visualize.d.ts","sourceRoot":"","sources":["../../src/commands/visualize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,eAAO,MAAM,gBAAgB,SAwEzB,CAAC"}
|
|
@@ -5,11 +5,12 @@ const commander_1 = require("commander");
|
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const fs_1 = require("fs");
|
|
7
7
|
const analyser_1 = require("../analyser");
|
|
8
|
-
const
|
|
8
|
+
const circular_dependency_detector_1 = require("../utils/circular-dependency-detector");
|
|
9
9
|
const console_analysis_renderer_1 = require("../renderer/console-analysis-renderer");
|
|
10
10
|
const configManager_1 = require("../utils/configManager");
|
|
11
11
|
const configValidator_1 = require("../utils/configValidator");
|
|
12
|
-
const
|
|
12
|
+
const errorFactory_1 = require("../errors/errorFactory");
|
|
13
|
+
const IoCError_1 = require("../errors/IoCError");
|
|
13
14
|
exports.visualizeCommand = new commander_1.Command('visualize')
|
|
14
15
|
.description('Visualize project dependencies and analysis results')
|
|
15
16
|
.option('-s, --source <dir>', 'Source directory to scan', 'src')
|
|
@@ -32,8 +33,8 @@ exports.visualizeCommand = new commander_1.Command('visualize')
|
|
|
32
33
|
const mergedOptions = configManager.mergeWithCliOptions(options);
|
|
33
34
|
const sourceDir = (0, path_1.resolve)(mergedOptions.source);
|
|
34
35
|
if (!(0, fs_1.existsSync)(sourceDir)) {
|
|
35
|
-
const error =
|
|
36
|
-
console.error(`❌ ${
|
|
36
|
+
const error = errorFactory_1.ErrorFactory.sourceDirectoryNotFound(sourceDir);
|
|
37
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
37
38
|
process.exit(1);
|
|
38
39
|
}
|
|
39
40
|
if (configManager.hasConfigFile()) {
|
|
@@ -51,7 +52,7 @@ exports.visualizeCommand = new commander_1.Command('visualize')
|
|
|
51
52
|
return;
|
|
52
53
|
}
|
|
53
54
|
// Detect circular dependencies
|
|
54
|
-
const circularDependencies =
|
|
55
|
+
const circularDependencies = circular_dependency_detector_1.CircularDependencyDetector.detect(classes);
|
|
55
56
|
// Prepare analysis results
|
|
56
57
|
const analysisResults = {
|
|
57
58
|
classes,
|
|
@@ -63,12 +64,12 @@ exports.visualizeCommand = new commander_1.Command('visualize')
|
|
|
63
64
|
renderer.render(analysisResults);
|
|
64
65
|
}
|
|
65
66
|
catch (error) {
|
|
66
|
-
if (
|
|
67
|
-
console.error(`❌ ${
|
|
67
|
+
if (IoCError_1.ErrorUtils.isIoCError(error)) {
|
|
68
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(error)}`);
|
|
68
69
|
}
|
|
69
70
|
else {
|
|
70
|
-
const wrappedError =
|
|
71
|
-
console.error(`❌ ${
|
|
71
|
+
const wrappedError = errorFactory_1.ErrorFactory.unexpectedError(error);
|
|
72
|
+
console.error(`❌ ${IoCError_1.ErrorUtils.formatForConsole(wrappedError)}`);
|
|
72
73
|
}
|
|
73
74
|
process.exit(1);
|
|
74
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visualize.js","sourceRoot":"","sources":["../../src/commands/visualize.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+BAA+B;AAC/B,2BAAgC;AAChC,0CAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"visualize.js","sourceRoot":"","sources":["../../src/commands/visualize.ts"],"names":[],"mappings":"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"}
|
|
@@ -105,4 +105,11 @@ export declare class ValidationError extends IoCError {
|
|
|
105
105
|
export declare class FileSystemError extends IoCError {
|
|
106
106
|
constructor(code: IoCErrorCode, message: string, context?: ErrorContext, suggestions?: string[]);
|
|
107
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Utility for error handling
|
|
110
|
+
*/
|
|
111
|
+
export declare class ErrorUtils {
|
|
112
|
+
static formatForConsole(error: IoCError | Error): string;
|
|
113
|
+
static isIoCError(error: any): error is IoCError;
|
|
114
|
+
}
|
|
108
115
|
//# sourceMappingURL=IoCError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IoCError.d.ts","sourceRoot":"","sources":["../../src/errors/IoCError.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IoCError.d.ts","sourceRoot":"","sources":["../../src/errors/IoCError.ts"],"names":[],"mappings":"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"}
|
package/dist/errors/IoCError.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FileSystemError = exports.ValidationError = exports.GenerationError = exports.AnalysisError = exports.ConfigError = exports.IoCError = exports.ErrorSeverity = exports.IoCErrorCode = void 0;
|
|
3
|
+
exports.ErrorUtils = exports.FileSystemError = exports.ValidationError = exports.GenerationError = exports.AnalysisError = exports.ConfigError = exports.IoCError = exports.ErrorSeverity = exports.IoCErrorCode = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Error codes for IoC Arise CLI
|
|
6
6
|
*/
|
|
@@ -175,4 +175,19 @@ class FileSystemError extends IoCError {
|
|
|
175
175
|
}
|
|
176
176
|
}
|
|
177
177
|
exports.FileSystemError = FileSystemError;
|
|
178
|
+
/**
|
|
179
|
+
* Utility for error handling
|
|
180
|
+
*/
|
|
181
|
+
class ErrorUtils {
|
|
182
|
+
static formatForConsole(error) {
|
|
183
|
+
if (error instanceof IoCError) {
|
|
184
|
+
return error.getFormattedMessage();
|
|
185
|
+
}
|
|
186
|
+
return error.message;
|
|
187
|
+
}
|
|
188
|
+
static isIoCError(error) {
|
|
189
|
+
return error instanceof IoCError;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
exports.ErrorUtils = ErrorUtils;
|
|
178
193
|
//# sourceMappingURL=IoCError.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IoCError.js","sourceRoot":"","sources":["../../src/errors/IoCError.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IoCError.js","sourceRoot":"","sources":["../../src/errors/IoCError.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IoCError, IoCErrorCode, ErrorContext, ConfigError, AnalysisError, GenerationError, ValidationError, FileSystemError } from './IoCError
|
|
1
|
+
import { IoCError, IoCErrorCode, ErrorContext, ConfigError, AnalysisError, GenerationError, ValidationError, FileSystemError } from './IoCError';
|
|
2
2
|
/**
|
|
3
3
|
* Factory functions for creating specific IoC errors
|
|
4
4
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorFactory.d.ts","sourceRoot":"","sources":["../../src/errors/errorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,YAAY,EAEZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,eAAe,EAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"errorFactory.d.ts","sourceRoot":"","sources":["../../src/errors/errorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,YAAY,EAEZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,YAAY;IAEvB,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW;IAapD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW;IAa1E,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,WAAW;IAc7F,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe;IAanE,MAAM,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAc9D,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAcxD,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,aAAa;IAatF,MAAM,CAAC,gCAAgC,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa;IAahG,MAAM,CAAC,+BAA+B,CAAC,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa;IAcnG,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe;IAa7E,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe;IAc1E,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;IAa/E,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,eAAe;IAcjF,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe;IAatD,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe;IAatE,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe;IAcvE,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,eAAe;IAchF,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,QAAQ;IAetE,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ;IAcvD;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,QAAQ;IAapF;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,eAAe;CAYzH"}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ErrorFactory = void 0;
|
|
4
|
-
const
|
|
4
|
+
const IoCError_1 = require("./IoCError");
|
|
5
5
|
/**
|
|
6
6
|
* Factory functions for creating specific IoC errors
|
|
7
7
|
*/
|
|
8
8
|
class ErrorFactory {
|
|
9
9
|
// Configuration errors
|
|
10
10
|
static configNotFound(filePath) {
|
|
11
|
-
return new
|
|
11
|
+
return new IoCError_1.ConfigError(IoCError_1.IoCErrorCode.CONFIG_FILE_NOT_FOUND, `Configuration file not found: ${filePath}`, { filePath }, [
|
|
12
12
|
'Create an ioc.config.json file in your project root',
|
|
13
13
|
'Use --config flag to specify a different config file path',
|
|
14
14
|
'Run with --help to see configuration options'
|
|
15
15
|
]);
|
|
16
16
|
}
|
|
17
17
|
static configParseError(filePath, parseError) {
|
|
18
|
-
return new
|
|
18
|
+
return new IoCError_1.ConfigError(IoCError_1.IoCErrorCode.CONFIG_PARSE_ERROR, `Failed to parse configuration file: ${parseError}`, { filePath }, [
|
|
19
19
|
'Check JSON syntax in your configuration file',
|
|
20
20
|
'Validate JSON using an online JSON validator',
|
|
21
21
|
'Ensure all strings are properly quoted'
|
|
22
22
|
]);
|
|
23
23
|
}
|
|
24
24
|
static configValidationError(property, value, expectedType) {
|
|
25
|
-
return new
|
|
25
|
+
return new IoCError_1.ConfigError(IoCError_1.IoCErrorCode.CONFIG_VALIDATION_ERROR, `Invalid configuration property '${property}': expected ${expectedType}, got ${typeof value}`, { configProperty: property }, [
|
|
26
26
|
`Set '${property}' to a valid ${expectedType}`,
|
|
27
27
|
'Check the configuration documentation for valid values',
|
|
28
28
|
'Remove the property to use default value'
|
|
@@ -30,14 +30,14 @@ class ErrorFactory {
|
|
|
30
30
|
}
|
|
31
31
|
// Source directory errors
|
|
32
32
|
static sourceDirectoryNotFound(sourcePath) {
|
|
33
|
-
return new
|
|
33
|
+
return new IoCError_1.FileSystemError(IoCError_1.IoCErrorCode.SOURCE_DIR_NOT_FOUND, `Source directory not found: ${sourcePath}`, { filePath: sourcePath }, [
|
|
34
34
|
'Check if the source directory path is correct',
|
|
35
35
|
'Ensure the directory exists',
|
|
36
36
|
'Use absolute path if relative path is not working'
|
|
37
37
|
]);
|
|
38
38
|
}
|
|
39
39
|
static sourceDirectoryEmpty(sourcePath) {
|
|
40
|
-
return new
|
|
40
|
+
return new IoCError_1.AnalysisError(IoCError_1.IoCErrorCode.SOURCE_DIR_EMPTY, `Source directory contains no TypeScript files: ${sourcePath}`, { filePath: sourcePath }, [
|
|
41
41
|
'Add TypeScript files to the source directory',
|
|
42
42
|
'Check if files have .ts extension',
|
|
43
43
|
'Verify exclude patterns are not filtering out all files'
|
|
@@ -45,7 +45,7 @@ class ErrorFactory {
|
|
|
45
45
|
}
|
|
46
46
|
// Analysis errors
|
|
47
47
|
static noClassesFound(sourcePath) {
|
|
48
|
-
return new
|
|
48
|
+
return new IoCError_1.AnalysisError(IoCError_1.IoCErrorCode.NO_CLASSES_FOUND, `No classes found for dependency injection in: ${sourcePath}`, { filePath: sourcePath }, [
|
|
49
49
|
'Add classes that implement interfaces or extend abstract classes',
|
|
50
50
|
'Check if classes are properly exported',
|
|
51
51
|
'Verify interface patterns match your interfaces',
|
|
@@ -53,21 +53,21 @@ class ErrorFactory {
|
|
|
53
53
|
]);
|
|
54
54
|
}
|
|
55
55
|
static circularDependency(className, dependencyChain) {
|
|
56
|
-
return new
|
|
56
|
+
return new IoCError_1.AnalysisError(IoCError_1.IoCErrorCode.CIRCULAR_DEPENDENCY, `Circular dependency detected in class '${className}': ${dependencyChain.join(' -> ')}`, { className }, [
|
|
57
57
|
'Refactor classes to remove circular dependencies',
|
|
58
58
|
'Use interfaces to break dependency cycles',
|
|
59
59
|
'Consider using factory pattern or lazy loading'
|
|
60
60
|
]);
|
|
61
61
|
}
|
|
62
62
|
static duplicateInterfaceImplementation(interfaceName, classes) {
|
|
63
|
-
return new
|
|
63
|
+
return new IoCError_1.AnalysisError(IoCError_1.IoCErrorCode.DUPLICATE_INTERFACE_IMPLEMENTATION, `Multiple implementations found for interface '${interfaceName}': ${classes.join(', ')}`, { interfaceName }, [
|
|
64
64
|
'Use different interface names for different implementations',
|
|
65
65
|
'Configure module-specific bindings',
|
|
66
66
|
'Use qualifiers to distinguish implementations'
|
|
67
67
|
]);
|
|
68
68
|
}
|
|
69
69
|
static duplicateAbstractClassExtension(abstractClassName, classes) {
|
|
70
|
-
return new
|
|
70
|
+
return new IoCError_1.AnalysisError(IoCError_1.IoCErrorCode.DUPLICATE_ABSTRACT_CLASS_EXTENSION, `Multiple classes extending abstract class '${abstractClassName}': ${classes.join(', ')}`, { className: abstractClassName }, [
|
|
71
71
|
'Use composition instead of inheritance where possible',
|
|
72
72
|
'Create separate abstract classes for different implementations',
|
|
73
73
|
'Consider using interfaces with default implementations'
|
|
@@ -75,14 +75,14 @@ class ErrorFactory {
|
|
|
75
75
|
}
|
|
76
76
|
// Generation errors
|
|
77
77
|
static generationFailed(reason, outputPath) {
|
|
78
|
-
return new
|
|
78
|
+
return new IoCError_1.GenerationError(IoCError_1.IoCErrorCode.GENERATION_FAILED, `Container generation failed: ${reason}`, { filePath: outputPath }, [
|
|
79
79
|
'Check if output directory is writable',
|
|
80
80
|
'Verify all dependencies are resolvable',
|
|
81
81
|
'Review analysis results for errors'
|
|
82
82
|
]);
|
|
83
83
|
}
|
|
84
84
|
static outputFileError(outputPath, error) {
|
|
85
|
-
return new
|
|
85
|
+
return new IoCError_1.GenerationError(IoCError_1.IoCErrorCode.OUTPUT_FILE_ERROR, `Failed to write output file '${outputPath}': ${error}`, { filePath: outputPath }, [
|
|
86
86
|
'Check if output directory exists and is writable',
|
|
87
87
|
'Ensure sufficient disk space',
|
|
88
88
|
'Verify file permissions'
|
|
@@ -90,14 +90,14 @@ class ErrorFactory {
|
|
|
90
90
|
}
|
|
91
91
|
// Module errors
|
|
92
92
|
static moduleConfigInvalid(moduleName, reason) {
|
|
93
|
-
return new
|
|
93
|
+
return new IoCError_1.ValidationError(IoCError_1.IoCErrorCode.MODULE_CONFIG_INVALID, `Invalid module configuration for '${moduleName}': ${reason}`, { moduleName }, [
|
|
94
94
|
'Check module configuration syntax',
|
|
95
95
|
'Verify all required properties are present',
|
|
96
96
|
'Review module configuration documentation'
|
|
97
97
|
]);
|
|
98
98
|
}
|
|
99
99
|
static modulePatternInvalid(pattern, moduleName) {
|
|
100
|
-
return new
|
|
100
|
+
return new IoCError_1.ValidationError(IoCError_1.IoCErrorCode.MODULE_PATTERN_INVALID, `Invalid pattern '${pattern}' in module '${moduleName}'`, { moduleName }, [
|
|
101
101
|
'Use valid glob patterns (e.g., **/*.service.ts)',
|
|
102
102
|
'Check pattern syntax documentation',
|
|
103
103
|
'Test patterns with a glob testing tool'
|
|
@@ -105,21 +105,21 @@ class ErrorFactory {
|
|
|
105
105
|
}
|
|
106
106
|
// File system errors
|
|
107
107
|
static fileNotFound(filePath) {
|
|
108
|
-
return new
|
|
108
|
+
return new IoCError_1.FileSystemError(IoCError_1.IoCErrorCode.FILE_NOT_FOUND, `File not found: ${filePath}`, { filePath }, [
|
|
109
109
|
'Check if the file path is correct',
|
|
110
110
|
'Ensure the file exists',
|
|
111
111
|
'Verify file permissions'
|
|
112
112
|
]);
|
|
113
113
|
}
|
|
114
114
|
static fileReadError(filePath, error) {
|
|
115
|
-
return new
|
|
115
|
+
return new IoCError_1.FileSystemError(IoCError_1.IoCErrorCode.FILE_READ_ERROR, `Failed to read file '${filePath}': ${error}`, { filePath }, [
|
|
116
116
|
'Check file permissions',
|
|
117
117
|
'Ensure file is not locked by another process',
|
|
118
118
|
'Verify file is not corrupted'
|
|
119
119
|
]);
|
|
120
120
|
}
|
|
121
121
|
static fileWriteError(filePath, error) {
|
|
122
|
-
return new
|
|
122
|
+
return new IoCError_1.FileSystemError(IoCError_1.IoCErrorCode.FILE_WRITE_ERROR, `Failed to write file '${filePath}': ${error}`, { filePath }, [
|
|
123
123
|
'Check directory permissions',
|
|
124
124
|
'Ensure sufficient disk space',
|
|
125
125
|
'Verify parent directory exists'
|
|
@@ -127,7 +127,7 @@ class ErrorFactory {
|
|
|
127
127
|
}
|
|
128
128
|
// Validation errors
|
|
129
129
|
static validationError(message, context) {
|
|
130
|
-
return new
|
|
130
|
+
return new IoCError_1.ValidationError(IoCError_1.IoCErrorCode.VALIDATION_ERROR, message, context, [
|
|
131
131
|
'Review the validation requirements',
|
|
132
132
|
'Check input data format',
|
|
133
133
|
'Consult documentation for valid values'
|
|
@@ -135,7 +135,7 @@ class ErrorFactory {
|
|
|
135
135
|
}
|
|
136
136
|
// Runtime errors
|
|
137
137
|
static unexpectedError(error, context) {
|
|
138
|
-
return new
|
|
138
|
+
return new IoCError_1.IoCError(IoCError_1.IoCErrorCode.UNEXPECTED_ERROR, `Unexpected error: ${error.message}`, IoCError_1.ErrorSeverity.CRITICAL, context, [
|
|
139
139
|
'Report this issue to the development team',
|
|
140
140
|
'Include the full error stack trace',
|
|
141
141
|
'Provide steps to reproduce the error'
|
|
@@ -143,7 +143,7 @@ class ErrorFactory {
|
|
|
143
143
|
}
|
|
144
144
|
// Renderer errors
|
|
145
145
|
static rendererNotFound(rendererName) {
|
|
146
|
-
return new
|
|
146
|
+
return new IoCError_1.IoCError(IoCError_1.IoCErrorCode.RENDERER_NOT_FOUND, `Renderer not found: ${rendererName}`, IoCError_1.ErrorSeverity.HIGH, undefined, [
|
|
147
147
|
'Check if the renderer name is correct',
|
|
148
148
|
'Verify available renderers with --list-renderers',
|
|
149
149
|
'Use a supported renderer (mermaid, plantuml, etc.)'
|
|
@@ -153,16 +153,16 @@ class ErrorFactory {
|
|
|
153
153
|
* Wrap a generic error with IoC error context
|
|
154
154
|
*/
|
|
155
155
|
static wrapError(error, code, context) {
|
|
156
|
-
if (error instanceof
|
|
156
|
+
if (error instanceof IoCError_1.IoCError) {
|
|
157
157
|
return error;
|
|
158
158
|
}
|
|
159
|
-
return new
|
|
159
|
+
return new IoCError_1.IoCError(code, error.message, IoCError_1.ErrorSeverity.MEDIUM, context);
|
|
160
160
|
}
|
|
161
161
|
/**
|
|
162
162
|
* Create error from validation result
|
|
163
163
|
*/
|
|
164
164
|
static fromValidationResult(property, value, expectedType, context) {
|
|
165
|
-
return new
|
|
165
|
+
return new IoCError_1.ValidationError(IoCError_1.IoCErrorCode.SCHEMA_VALIDATION_ERROR, `Validation failed for property '${property}': expected ${expectedType}, got ${typeof value}`, { ...context, configProperty: property }, [
|
|
166
166
|
`Ensure '${property}' is of type ${expectedType}`,
|
|
167
167
|
'Check the schema documentation',
|
|
168
168
|
'Validate your input against the expected format'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorFactory.js","sourceRoot":"","sources":["../../src/errors/errorFactory.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"errorFactory.js","sourceRoot":"","sources":["../../src/errors/errorFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* Generates a container file from either flat classes or module-grouped classes.
|
|
4
|
-
*
|
|
5
|
-
* @param classesOrModules - Either a flat array of classes or a Map of module-grouped classes
|
|
6
|
-
* @param outputPath - The output path for the generated container file
|
|
7
|
-
*/
|
|
8
|
-
export declare function generateContainerFile(classesOrModules: Map<string, ClassInfo[]>, outputPath: string): void;
|
|
9
|
-
/**
|
|
10
|
-
* Detects circular dependencies in a flat array of classes.
|
|
11
|
-
*
|
|
12
|
-
* @param classes - The classes to check for circular dependencies
|
|
13
|
-
* @returns An array of circular dependency chains
|
|
14
|
-
*/
|
|
15
|
-
export declare function detectCircularDependencies(classes: ClassInfo[]): string[][];
|
|
16
|
-
export { ContainerGeneratorFactory } from './container-generator-factory';
|
|
17
|
-
export { BaseContainerGenerator } from './base-container-generator';
|
|
18
|
-
export { ModularContainerGenerator } from './modular/modular-container-generator';
|
|
19
|
-
export { PathInjectionUtils } from './shared/path-injection-utils';
|
|
1
|
+
export * from './ioc-container-generator';
|
|
2
|
+
export * from './type-declaration-generator';
|
|
20
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC"}
|
package/dist/generator/index.js
CHANGED
|
@@ -1,37 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
exports
|
|
5
|
-
exports.detectCircularDependencies = detectCircularDependencies;
|
|
6
|
-
const dependency_resolver_1 = require("../analyser/dependency-resolver");
|
|
7
|
-
const container_generator_factory_1 = require("./container-generator-factory");
|
|
8
|
-
/**
|
|
9
|
-
* Generates a container file from either flat classes or module-grouped classes.
|
|
10
|
-
*
|
|
11
|
-
* @param classesOrModules - Either a flat array of classes or a Map of module-grouped classes
|
|
12
|
-
* @param outputPath - The output path for the generated container file
|
|
13
|
-
*/
|
|
14
|
-
function generateContainerFile(classesOrModules, outputPath) {
|
|
15
|
-
const generator = container_generator_factory_1.ContainerGeneratorFactory.create(classesOrModules, outputPath);
|
|
16
|
-
generator.generate();
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Detects circular dependencies in a flat array of classes.
|
|
20
|
-
*
|
|
21
|
-
* @param classes - The classes to check for circular dependencies
|
|
22
|
-
* @returns An array of circular dependency chains
|
|
23
|
-
*/
|
|
24
|
-
function detectCircularDependencies(classes) {
|
|
25
|
-
const resolver = new dependency_resolver_1.DependencyResolver(classes);
|
|
26
|
-
return resolver.detectCircularDependencies();
|
|
27
|
-
}
|
|
28
|
-
// Re-export the factory for advanced usage
|
|
29
|
-
var container_generator_factory_2 = require("./container-generator-factory");
|
|
30
|
-
Object.defineProperty(exports, "ContainerGeneratorFactory", { enumerable: true, get: function () { return container_generator_factory_2.ContainerGeneratorFactory; } });
|
|
31
|
-
var base_container_generator_1 = require("./base-container-generator");
|
|
32
|
-
Object.defineProperty(exports, "BaseContainerGenerator", { enumerable: true, get: function () { return base_container_generator_1.BaseContainerGenerator; } });
|
|
33
|
-
var modular_container_generator_1 = require("./modular/modular-container-generator");
|
|
34
|
-
Object.defineProperty(exports, "ModularContainerGenerator", { enumerable: true, get: function () { return modular_container_generator_1.ModularContainerGenerator; } });
|
|
35
|
-
var path_injection_utils_1 = require("./shared/path-injection-utils");
|
|
36
|
-
Object.defineProperty(exports, "PathInjectionUtils", { enumerable: true, get: function () { return path_injection_utils_1.PathInjectionUtils; } });
|
|
17
|
+
__exportStar(require("./ioc-container-generator"), exports);
|
|
18
|
+
__exportStar(require("./type-declaration-generator"), exports);
|
|
37
19
|
//# sourceMappingURL=index.js.map
|