@notjustcoders/ioc-arise 1.0.4 → 1.0.6
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/__tests__/generator/container-generator.test.js +1 -1
- package/dist/__tests__/generator/container-generator.test.js.map +1 -1
- package/dist/__tests__/generator/dependency-resolver.test.js +1 -1
- package/dist/__tests__/generator/dependency-resolver.test.js.map +1 -1
- package/dist/__tests__/generator/instantiation-generator.test.js +1 -1
- package/dist/__tests__/generator/instantiation-generator.test.js.map +1 -1
- package/dist/analyser/ast-parser.d.ts +1 -0
- package/dist/analyser/ast-parser.d.ts.map +1 -1
- package/dist/analyser/ast-parser.js +40 -0
- package/dist/analyser/ast-parser.js.map +1 -1
- package/dist/analyser/class-analyzer.d.ts +4 -1
- package/dist/analyser/class-analyzer.d.ts.map +1 -1
- package/dist/analyser/class-analyzer.js +96 -11
- package/dist/analyser/class-analyzer.js.map +1 -1
- package/dist/analyser/project-analyzer.d.ts +0 -1
- package/dist/analyser/project-analyzer.d.ts.map +1 -1
- package/dist/analyser/project-analyzer.js +4 -27
- package/dist/analyser/project-analyzer.js.map +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +1 -0
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +4 -2
- package/dist/commands/generate.js.map +1 -1
- package/dist/container.gen.d.ts +18 -0
- package/dist/container.gen.d.ts.map +1 -0
- package/dist/container.gen.js +88 -0
- package/dist/container.gen.js.map +1 -0
- package/dist/generator/{container-file-generator.d.ts → Container-file-generator.d.ts} +1 -1
- package/dist/generator/{container-file-generator.d.ts.map → Container-file-generator.d.ts.map} +1 -1
- package/dist/generator/{container-file-generator.js → Container-file-generator.js} +1 -1
- package/dist/generator/{container-file-generator.js.map → Container-file-generator.js.map} +1 -1
- package/dist/generator/base-container-generator.d.ts +28 -0
- package/dist/generator/base-container-generator.d.ts.map +1 -0
- package/dist/generator/base-container-generator.js +27 -0
- package/dist/generator/base-container-generator.js.map +1 -0
- package/dist/generator/container-generator-factory.d.ts +40 -0
- package/dist/generator/container-generator-factory.d.ts.map +1 -0
- package/dist/generator/container-generator-factory.js +84 -0
- package/dist/generator/container-generator-factory.js.map +1 -0
- package/dist/generator/flat/container-generator.d.ts +8 -0
- package/dist/generator/flat/container-generator.d.ts.map +1 -0
- package/dist/generator/flat/container-generator.js +35 -0
- package/dist/generator/flat/container-generator.js.map +1 -0
- package/dist/generator/flat/dependency-resolver.d.ts +11 -0
- package/dist/generator/flat/dependency-resolver.d.ts.map +1 -0
- package/dist/generator/flat/dependency-resolver.js +83 -0
- package/dist/generator/flat/dependency-resolver.js.map +1 -0
- package/dist/generator/flat/flat-container-generator.d.ts +25 -0
- package/dist/generator/flat/flat-container-generator.d.ts.map +1 -0
- package/dist/generator/flat/flat-container-generator.js +44 -0
- package/dist/generator/flat/flat-container-generator.js.map +1 -0
- package/dist/generator/flat/instantiation-generator.d.ts +21 -0
- package/dist/generator/flat/instantiation-generator.d.ts.map +1 -0
- package/dist/generator/flat/instantiation-generator.js +116 -0
- package/dist/generator/flat/instantiation-generator.js.map +1 -0
- package/dist/generator/flat-container-generator.d.ts +25 -0
- package/dist/generator/flat-container-generator.d.ts.map +1 -0
- package/dist/generator/flat-container-generator.js +44 -0
- package/dist/generator/flat-container-generator.js.map +1 -0
- package/dist/generator/import-generator.d.ts.map +1 -1
- package/dist/generator/import-generator.js +2 -4
- package/dist/generator/import-generator.js.map +1 -1
- package/dist/generator/index.d.ts +16 -0
- package/dist/generator/index.d.ts.map +1 -1
- package/dist/generator/index.js +25 -13
- package/dist/generator/index.js.map +1 -1
- package/dist/generator/instantiation-generator.d.ts +13 -0
- package/dist/generator/instantiation-generator.d.ts.map +1 -1
- package/dist/generator/instantiation-generator.js +96 -133
- package/dist/generator/instantiation-generator.js.map +1 -1
- package/dist/generator/modular/class-sorter.d.ts +17 -0
- package/dist/generator/modular/class-sorter.d.ts.map +1 -0
- package/dist/generator/modular/class-sorter.js +40 -0
- package/dist/generator/modular/class-sorter.js.map +1 -0
- package/dist/generator/modular/container-aggregator.d.ts +18 -0
- package/dist/generator/modular/container-aggregator.d.ts.map +1 -0
- package/dist/generator/modular/container-aggregator.js +34 -0
- package/dist/generator/modular/container-aggregator.js.map +1 -0
- package/dist/generator/modular/index.d.ts +5 -0
- package/dist/generator/modular/index.d.ts.map +1 -0
- package/dist/generator/modular/index.js +21 -0
- package/dist/generator/modular/index.js.map +1 -0
- package/dist/generator/modular/modular-container-code-generator.d.ts +65 -0
- package/dist/generator/modular/modular-container-code-generator.d.ts.map +1 -0
- package/dist/generator/modular/modular-container-code-generator.js +157 -0
- package/dist/generator/modular/modular-container-code-generator.js.map +1 -0
- package/dist/generator/modular/modular-container-generator.d.ts +21 -0
- package/dist/generator/modular/modular-container-generator.d.ts.map +1 -0
- package/dist/generator/modular/modular-container-generator.js +57 -0
- package/dist/generator/modular/modular-container-generator.js.map +1 -0
- package/dist/generator/modular/module-container-function-generator.d.ts +78 -0
- package/dist/generator/modular/module-container-function-generator.d.ts.map +1 -0
- package/dist/generator/modular/module-container-function-generator.js +246 -0
- package/dist/generator/modular/module-container-function-generator.js.map +1 -0
- package/dist/generator/modular/module-dependency-resolver.d.ts +36 -0
- package/dist/generator/modular/module-dependency-resolver.d.ts.map +1 -0
- package/dist/generator/modular/module-dependency-resolver.js +69 -0
- package/dist/generator/modular/module-dependency-resolver.js.map +1 -0
- package/dist/generator/modular/module-export-generator.d.ts +42 -0
- package/dist/generator/modular/module-export-generator.d.ts.map +1 -0
- package/dist/generator/modular/module-export-generator.js +82 -0
- package/dist/generator/modular/module-export-generator.js.map +1 -0
- package/dist/generator/modular/module-instantiation-generator.d.ts +26 -0
- package/dist/generator/modular/module-instantiation-generator.d.ts.map +1 -0
- package/dist/generator/modular/module-instantiation-generator.js +54 -0
- package/dist/generator/modular/module-instantiation-generator.js.map +1 -0
- package/dist/generator/modular/module-scope-generator.d.ts +47 -0
- package/dist/generator/modular/module-scope-generator.d.ts.map +1 -0
- package/dist/generator/modular/module-scope-generator.js +111 -0
- package/dist/generator/modular/module-scope-generator.js.map +1 -0
- package/dist/generator/modular/refactored-modular-container-generator.d.ts +38 -0
- package/dist/generator/modular/refactored-modular-container-generator.d.ts.map +1 -0
- package/dist/generator/modular/refactored-modular-container-generator.js +73 -0
- package/dist/generator/modular/refactored-modular-container-generator.js.map +1 -0
- package/dist/generator/modular-container-generator.d.ts +21 -0
- package/dist/generator/modular-container-generator.d.ts.map +1 -0
- package/dist/generator/modular-container-generator.js +57 -0
- package/dist/generator/modular-container-generator.js.map +1 -0
- package/dist/generator/module-container-function-generator.d.ts +30 -0
- package/dist/generator/module-container-function-generator.d.ts.map +1 -0
- package/dist/generator/module-container-function-generator.js +199 -0
- package/dist/generator/module-container-function-generator.js.map +1 -0
- package/package.json +2 -2
- package/dist/generator/module-container-generator.d.ts +0 -10
- package/dist/generator/module-container-generator.d.ts.map +0 -1
- package/dist/generator/module-container-generator.js +0 -51
- package/dist/generator/module-container-generator.js.map +0 -1
|
@@ -24,7 +24,8 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
24
24
|
description: "ioc-maker",
|
|
25
25
|
tracer: {
|
|
26
26
|
batchSize: 1,
|
|
27
|
-
}
|
|
27
|
+
},
|
|
28
|
+
isDev: process.env.NODE_ENV === "development",
|
|
28
29
|
});
|
|
29
30
|
// Initialize config manager with the source directory
|
|
30
31
|
const initialSourceDir = (0, path_1.resolve)(options.source);
|
|
@@ -68,7 +69,7 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
68
69
|
interfacePattern: mergedOptions.interface,
|
|
69
70
|
excludePatterns: mergedOptions.exclude
|
|
70
71
|
});
|
|
71
|
-
|
|
72
|
+
console.dir({ classes }, { depth: 100 });
|
|
72
73
|
if (classes.length === 0) {
|
|
73
74
|
console.log('⚠️ No classes implementing interfaces found.');
|
|
74
75
|
if (mergedOptions.interface) {
|
|
@@ -77,6 +78,7 @@ exports.generateCommand = new commander_1.Command('generate')
|
|
|
77
78
|
else {
|
|
78
79
|
console.log(' Make sure classes implement interfaces using the "implements" keyword.');
|
|
79
80
|
}
|
|
81
|
+
process.exit(-1);
|
|
80
82
|
return;
|
|
81
83
|
}
|
|
82
84
|
// Group classes by modules if module resolver is available
|
|
@@ -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,4CAAiF;AACjF,0DAAuD;AACvD,4DAAyD;AACzD,gFAAkF;AAErE,QAAA,eAAe,GAAG,IAAI,mBAAO,CAAC,UAAU,CAAC;KACnD,WAAW,CAAC,gDAAgD,CAAC;KAC7D,MAAM,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,KAAK,CAAC;KAC/D,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;KACrE,MAAM,CAAC,2BAA2B,EAAE,yCAAyC,CAAC;KAC9E,MAAM,CAAC,6BAA6B,EAAE,4BAA4B,CAAC;KACnE,MAAM,CAAC,gBAAgB,EAAE,yDAAyD,CAAC;KACnF,MAAM,CAAC,WAAW,EAAE,wBAAwB,CAAC;KAC7C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QAET,MAAM,IAAA,2CAAmB,EAAC;YACxB,IAAI,EAAC,WAAW;YAChB,WAAW,EAAC,WAAW;YACvB,MAAM,EAAC;gBACL,SAAS,EAAC,CAAC;aACZ;
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ModularContainerGenerator } from './generator/modular-container-generator';
|
|
2
|
+
import { InstantiationGenerator } from './generator/instantiation-generator';
|
|
3
|
+
import { ImportGenerator } from './generator/import-generator';
|
|
4
|
+
import { FlatContainerGenerator } from './generator/flat-container-generator';
|
|
5
|
+
import { DependencyResolver } from './generator/dependency-resolver';
|
|
6
|
+
import { ContainerGenerator } from './generator/container-generator';
|
|
7
|
+
import { ModuleDependencyResolver } from './analyser/module-dependency-resolver';
|
|
8
|
+
export declare const container: {
|
|
9
|
+
readonly ModularContainerGenerator: ModularContainerGenerator;
|
|
10
|
+
readonly InstantiationGenerator: InstantiationGenerator;
|
|
11
|
+
readonly ImportGenerator: ImportGenerator;
|
|
12
|
+
readonly FlatContainerGenerator: FlatContainerGenerator;
|
|
13
|
+
readonly DependencyResolver: DependencyResolver;
|
|
14
|
+
readonly ContainerGenerator: ContainerGenerator;
|
|
15
|
+
readonly ModuleDependencyResolver: ModuleDependencyResolver;
|
|
16
|
+
};
|
|
17
|
+
export type Container = typeof container;
|
|
18
|
+
//# sourceMappingURL=container.gen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container.gen.d.ts","sourceRoot":"","sources":["../src/container.gen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAwDjF,eAAO,MAAM,SAAS;wCACa,yBAAyB;qCAG5B,sBAAsB;8BAG7B,eAAe;qCAGR,sBAAsB;iCAY1B,kBAAkB;iCANlB,kBAAkB;uCAGZ,wBAAwB;CAMzD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.container = void 0;
|
|
4
|
+
const modular_container_generator_1 = require("./generator/modular-container-generator");
|
|
5
|
+
const instantiation_generator_1 = require("./generator/instantiation-generator");
|
|
6
|
+
const import_generator_1 = require("./generator/import-generator");
|
|
7
|
+
const flat_container_generator_1 = require("./generator/flat-container-generator");
|
|
8
|
+
const dependency_resolver_1 = require("./generator/dependency-resolver");
|
|
9
|
+
const container_generator_1 = require("./generator/container-generator");
|
|
10
|
+
const module_dependency_resolver_1 = require("./analyser/module-dependency-resolver");
|
|
11
|
+
// Lazy initialization variables for singletons
|
|
12
|
+
let flatContainerGenerator;
|
|
13
|
+
let containerGenerator;
|
|
14
|
+
let dependencyResolver;
|
|
15
|
+
let instantiationGenerator;
|
|
16
|
+
let modularContainerGenerator;
|
|
17
|
+
let importGenerator;
|
|
18
|
+
let moduleDependencyResolver;
|
|
19
|
+
// Lazy getter functions for singletons
|
|
20
|
+
const getModuleDependencyResolver = () => {
|
|
21
|
+
if (!moduleDependencyResolver) {
|
|
22
|
+
moduleDependencyResolver = new module_dependency_resolver_1.ModuleDependencyResolver(new Map());
|
|
23
|
+
}
|
|
24
|
+
return moduleDependencyResolver;
|
|
25
|
+
};
|
|
26
|
+
const getImportGenerator = () => {
|
|
27
|
+
if (!importGenerator) {
|
|
28
|
+
importGenerator = new import_generator_1.ImportGenerator(new ClassInfo());
|
|
29
|
+
}
|
|
30
|
+
return importGenerator;
|
|
31
|
+
};
|
|
32
|
+
const getModularContainerGenerator = () => {
|
|
33
|
+
if (!modularContainerGenerator) {
|
|
34
|
+
modularContainerGenerator = new modular_container_generator_1.ModularContainerGenerator(getModuleDependencyResolver(), getImportGenerator(), getModuleDependencyResolver(), getImportGenerator());
|
|
35
|
+
}
|
|
36
|
+
return modularContainerGenerator;
|
|
37
|
+
};
|
|
38
|
+
const getInstantiationGenerator = () => {
|
|
39
|
+
if (!instantiationGenerator) {
|
|
40
|
+
instantiationGenerator = new instantiation_generator_1.InstantiationGenerator(new ClassInfo());
|
|
41
|
+
}
|
|
42
|
+
return instantiationGenerator;
|
|
43
|
+
};
|
|
44
|
+
const getDependencyResolver = () => {
|
|
45
|
+
if (!dependencyResolver) {
|
|
46
|
+
dependencyResolver = new dependency_resolver_1.DependencyResolver(new ClassInfo());
|
|
47
|
+
}
|
|
48
|
+
return dependencyResolver;
|
|
49
|
+
};
|
|
50
|
+
const getContainerGenerator = () => {
|
|
51
|
+
if (!containerGenerator) {
|
|
52
|
+
containerGenerator = new container_generator_1.ContainerGenerator(new ClassInfo());
|
|
53
|
+
}
|
|
54
|
+
return containerGenerator;
|
|
55
|
+
};
|
|
56
|
+
const getFlatContainerGenerator = () => {
|
|
57
|
+
if (!flatContainerGenerator) {
|
|
58
|
+
flatContainerGenerator = new flat_container_generator_1.FlatContainerGenerator(getDependencyResolver(), getImportGenerator(), getInstantiationGenerator(), getContainerGenerator(), getInstantiationGenerator(), new ContainerCodeGenerator());
|
|
59
|
+
}
|
|
60
|
+
return flatContainerGenerator;
|
|
61
|
+
};
|
|
62
|
+
exports.container = {
|
|
63
|
+
get ModularContainerGenerator() {
|
|
64
|
+
return getModularContainerGenerator();
|
|
65
|
+
},
|
|
66
|
+
get InstantiationGenerator() {
|
|
67
|
+
return getInstantiationGenerator();
|
|
68
|
+
},
|
|
69
|
+
get ImportGenerator() {
|
|
70
|
+
return getImportGenerator();
|
|
71
|
+
},
|
|
72
|
+
get FlatContainerGenerator() {
|
|
73
|
+
return getFlatContainerGenerator();
|
|
74
|
+
},
|
|
75
|
+
get DependencyResolver() {
|
|
76
|
+
return getDependencyResolver();
|
|
77
|
+
},
|
|
78
|
+
get ContainerGenerator() {
|
|
79
|
+
return getContainerGenerator();
|
|
80
|
+
},
|
|
81
|
+
get ModuleDependencyResolver() {
|
|
82
|
+
return getModuleDependencyResolver();
|
|
83
|
+
},
|
|
84
|
+
get DependencyResolver() {
|
|
85
|
+
return getDependencyResolver();
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=container.gen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container.gen.js","sourceRoot":"","sources":["../src/container.gen.ts"],"names":[],"mappings":"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"}
|
package/dist/generator/{container-file-generator.d.ts.map → Container-file-generator.d.ts.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Container-file-generator.d.ts","sourceRoot":"","sources":["../../src/generator/Container-file-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAa,MAAM,UAAU,CAAC;AAOvD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,sBAAsB,CAAyB;IACvD,OAAO,CAAC,sBAAsB,CAAyB;IACvD,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,oBAAoB,CAAC,CAA2B;gBAE5C,OAAO,EAAE,gBAAgB;IAsBrC,iBAAiB,IAAI,IAAI;IAWzB,wBAAwB,IAAI,IAAI;IA0BhC,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,4BAA4B;IAUpC,OAAO,CAAC,wBAAwB;IAyJhC,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,yBAAyB;CAqClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-file-generator.js","sourceRoot":"","sources":["../../src/generator/container-file-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Container-file-generator.js","sourceRoot":"","sources":["../../src/generator/Container-file-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { FileWriter } from './file-writer';
|
|
2
|
+
import { ImportGenerator } from './import-generator';
|
|
3
|
+
/**
|
|
4
|
+
* Abstract base class for container generators.
|
|
5
|
+
* Defines the common interface and shared functionality.
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class BaseContainerGenerator {
|
|
8
|
+
protected fileWriter: FileWriter;
|
|
9
|
+
protected importGenerator: ImportGenerator;
|
|
10
|
+
constructor(fileWriter: FileWriter, importGenerator: ImportGenerator);
|
|
11
|
+
/**
|
|
12
|
+
* Main entry point for generating the container.
|
|
13
|
+
*/
|
|
14
|
+
abstract generate(): void;
|
|
15
|
+
/**
|
|
16
|
+
* Generates the complete container code.
|
|
17
|
+
*/
|
|
18
|
+
protected abstract generateContainerCode(): string;
|
|
19
|
+
/**
|
|
20
|
+
* Utility method to convert strings to camelCase.
|
|
21
|
+
*/
|
|
22
|
+
protected camelCase(str: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Writes the generated container code to file.
|
|
25
|
+
*/
|
|
26
|
+
protected writeContainer(containerCode: string): void;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=base-container-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-container-generator.d.ts","sourceRoot":"","sources":["../../src/generator/base-container-generator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;GAGG;AACH,8BAAsB,sBAAsB;IAC1C,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IACjC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;gBAE/B,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe;IAKpE;;OAEG;IACH,QAAQ,CAAC,QAAQ,IAAI,IAAI;IAEzB;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,qBAAqB,IAAI,MAAM;IAElD;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIxC;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;CAGtD"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseContainerGenerator = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Abstract base class for container generators.
|
|
6
|
+
* Defines the common interface and shared functionality.
|
|
7
|
+
*/
|
|
8
|
+
class BaseContainerGenerator {
|
|
9
|
+
constructor(fileWriter, importGenerator) {
|
|
10
|
+
this.fileWriter = fileWriter;
|
|
11
|
+
this.importGenerator = importGenerator;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Utility method to convert strings to camelCase.
|
|
15
|
+
*/
|
|
16
|
+
camelCase(str) {
|
|
17
|
+
return str.charAt(0).toLowerCase() + str.slice(1).replace(/[^a-zA-Z0-9]/g, '');
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Writes the generated container code to file.
|
|
21
|
+
*/
|
|
22
|
+
writeContainer(containerCode) {
|
|
23
|
+
this.fileWriter.writeContainer(containerCode);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.BaseContainerGenerator = BaseContainerGenerator;
|
|
27
|
+
//# sourceMappingURL=base-container-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-container-generator.js","sourceRoot":"","sources":["../../src/generator/base-container-generator.ts"],"names":[],"mappings":";;;AAIA;;;GAGG;AACH,MAAsB,sBAAsB;IAI1C,YAAY,UAAsB,EAAE,eAAgC;QAClE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAYD;;OAEG;IACO,SAAS,CAAC,GAAW;QAC7B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,aAAqB;QAC5C,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;CACF;AAhCD,wDAgCC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { BaseContainerGenerator } from './base-container-generator';
|
|
2
|
+
import { ClassInfo } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Factory class for creating the appropriate container generator
|
|
5
|
+
* based on the input type (flat classes or module-grouped classes).
|
|
6
|
+
* Handles dependency injection at the factory level instead of constructor level.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ContainerGeneratorFactory {
|
|
9
|
+
/**
|
|
10
|
+
* Creates the appropriate container generator based on the input type.
|
|
11
|
+
* Injects all necessary dependencies in the constructor.
|
|
12
|
+
*
|
|
13
|
+
* @param classesOrModules - Either a flat array of classes or a Map of module-grouped classes
|
|
14
|
+
* @param outputPath - The output path for the generated container file
|
|
15
|
+
* @returns The appropriate container generator instance with dependencies injected
|
|
16
|
+
*/
|
|
17
|
+
static create(classesOrModules: ClassInfo[] | Map<string, ClassInfo[]>, outputPath: string): BaseContainerGenerator;
|
|
18
|
+
/**
|
|
19
|
+
* Determines if the input represents a modular structure.
|
|
20
|
+
*
|
|
21
|
+
* @param classesOrModules - The input to check
|
|
22
|
+
* @returns true if the input is a Map (modular), false if it's an array (flat)
|
|
23
|
+
*/
|
|
24
|
+
static isModular(classesOrModules: ClassInfo[] | Map<string, ClassInfo[]>): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Gets the total number of classes from either flat or modular input.
|
|
27
|
+
*
|
|
28
|
+
* @param classesOrModules - The input to count classes from
|
|
29
|
+
* @returns The total number of classes
|
|
30
|
+
*/
|
|
31
|
+
static getClassCount(classesOrModules: ClassInfo[] | Map<string, ClassInfo[]>): number;
|
|
32
|
+
/**
|
|
33
|
+
* Gets the number of modules from modular input.
|
|
34
|
+
*
|
|
35
|
+
* @param classesOrModules - The input to count modules from
|
|
36
|
+
* @returns The number of modules, or 1 for flat structure
|
|
37
|
+
*/
|
|
38
|
+
static getModuleCount(classesOrModules: ClassInfo[] | Map<string, ClassInfo[]>): number;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=container-generator-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-generator-factory.d.ts","sourceRoot":"","sources":["../../src/generator/container-generator-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AASpE,OAAO,EAAoB,SAAS,EAAE,MAAM,UAAU,CAAC;AAEvD;;;;GAIG;AACH,qBAAa,yBAAyB;IACpC;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CACX,gBAAgB,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EACxD,UAAU,EAAE,MAAM,GACjB,sBAAsB;IAkCzB;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,OAAO;IAInF;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,gBAAgB,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM;IAQtF;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM;CAOxF"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContainerGeneratorFactory = void 0;
|
|
4
|
+
const flat_container_generator_1 = require("./flat/flat-container-generator");
|
|
5
|
+
const modular_container_generator_1 = require("./modular/modular-container-generator");
|
|
6
|
+
const dependency_resolver_1 = require("../analyser/dependency-resolver");
|
|
7
|
+
const module_dependency_resolver_1 = require("../analyser/module-dependency-resolver");
|
|
8
|
+
const import_generator_1 = require("./import-generator");
|
|
9
|
+
const instantiation_generator_1 = require("./flat/instantiation-generator");
|
|
10
|
+
const container_generator_1 = require("./flat/container-generator");
|
|
11
|
+
const file_writer_1 = require("./file-writer");
|
|
12
|
+
/**
|
|
13
|
+
* Factory class for creating the appropriate container generator
|
|
14
|
+
* based on the input type (flat classes or module-grouped classes).
|
|
15
|
+
* Handles dependency injection at the factory level instead of constructor level.
|
|
16
|
+
*/
|
|
17
|
+
class ContainerGeneratorFactory {
|
|
18
|
+
/**
|
|
19
|
+
* Creates the appropriate container generator based on the input type.
|
|
20
|
+
* Injects all necessary dependencies in the constructor.
|
|
21
|
+
*
|
|
22
|
+
* @param classesOrModules - Either a flat array of classes or a Map of module-grouped classes
|
|
23
|
+
* @param outputPath - The output path for the generated container file
|
|
24
|
+
* @returns The appropriate container generator instance with dependencies injected
|
|
25
|
+
*/
|
|
26
|
+
static create(classesOrModules, outputPath) {
|
|
27
|
+
// Create FileWriter instance that will be injected into generators
|
|
28
|
+
const fileWriter = new file_writer_1.FileWriter(outputPath);
|
|
29
|
+
if (classesOrModules instanceof Map) {
|
|
30
|
+
// Module-based generation - create dependencies and inject in constructor
|
|
31
|
+
const moduleDependencyResolver = new module_dependency_resolver_1.ModuleDependencyResolver(classesOrModules);
|
|
32
|
+
const allClasses = Array.from(classesOrModules.values()).flat();
|
|
33
|
+
const importGenerator = new import_generator_1.ImportGenerator(allClasses);
|
|
34
|
+
return new modular_container_generator_1.ModularContainerGenerator(fileWriter, classesOrModules, moduleDependencyResolver, importGenerator);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
// Backward compatibility: flat classes array - create dependencies and inject in constructor
|
|
38
|
+
const dependencyResolver = new dependency_resolver_1.DependencyResolver(classesOrModules);
|
|
39
|
+
const importGenerator = new import_generator_1.ImportGenerator(classesOrModules);
|
|
40
|
+
const instantiationGenerator = new instantiation_generator_1.InstantiationGenerator(classesOrModules);
|
|
41
|
+
const containerCodeGenerator = new container_generator_1.ContainerGenerator(classesOrModules);
|
|
42
|
+
return new flat_container_generator_1.FlatContainerGenerator(fileWriter, classesOrModules, dependencyResolver, importGenerator, instantiationGenerator, containerCodeGenerator);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Determines if the input represents a modular structure.
|
|
47
|
+
*
|
|
48
|
+
* @param classesOrModules - The input to check
|
|
49
|
+
* @returns true if the input is a Map (modular), false if it's an array (flat)
|
|
50
|
+
*/
|
|
51
|
+
static isModular(classesOrModules) {
|
|
52
|
+
return classesOrModules instanceof Map;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Gets the total number of classes from either flat or modular input.
|
|
56
|
+
*
|
|
57
|
+
* @param classesOrModules - The input to count classes from
|
|
58
|
+
* @returns The total number of classes
|
|
59
|
+
*/
|
|
60
|
+
static getClassCount(classesOrModules) {
|
|
61
|
+
if (classesOrModules instanceof Map) {
|
|
62
|
+
return Array.from(classesOrModules.values()).flat().length;
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
return classesOrModules.length;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Gets the number of modules from modular input.
|
|
70
|
+
*
|
|
71
|
+
* @param classesOrModules - The input to count modules from
|
|
72
|
+
* @returns The number of modules, or 1 for flat structure
|
|
73
|
+
*/
|
|
74
|
+
static getModuleCount(classesOrModules) {
|
|
75
|
+
if (classesOrModules instanceof Map) {
|
|
76
|
+
return classesOrModules.size;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
return 1; // Flat structure is considered as one implicit module
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.ContainerGeneratorFactory = ContainerGeneratorFactory;
|
|
84
|
+
//# sourceMappingURL=container-generator-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-generator-factory.js","sourceRoot":"","sources":["../../src/generator/container-generator-factory.ts"],"names":[],"mappings":";;;AACA,8EAAyE;AACzE,uFAAkF;AAClF,yEAAqE;AACrE,uFAAkF;AAClF,yDAAqD;AACrD,4EAAwE;AACxE,oEAA0F;AAC1F,+CAA2C;AAG3C;;;;GAIG;AACH,MAAa,yBAAyB;IACpC;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CACX,gBAAwD,EACxD,UAAkB;QAElB,mEAAmE;QACnE,MAAM,UAAU,GAAG,IAAI,wBAAU,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,gBAAgB,YAAY,GAAG,EAAE,CAAC;YACpC,0EAA0E;YAC1E,MAAM,wBAAwB,GAAG,IAAI,qDAAwB,CAAC,gBAAgB,CAAC,CAAC;YAChF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,MAAM,eAAe,GAAG,IAAI,kCAAe,CAAC,UAAU,CAAC,CAAC;YAExD,OAAO,IAAI,uDAAyB,CAClC,UAAU,EACV,gBAAgB,EAChB,wBAAwB,EACxB,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,6FAA6F;YAC7F,MAAM,kBAAkB,GAAG,IAAI,wCAAkB,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,eAAe,GAAG,IAAI,kCAAe,CAAC,gBAAgB,CAAC,CAAC;YAC9D,MAAM,sBAAsB,GAAG,IAAI,gDAAsB,CAAC,gBAAgB,CAAC,CAAC;YAC5E,MAAM,sBAAsB,GAAG,IAAI,wCAAsB,CAAC,gBAAgB,CAAC,CAAC;YAE5E,OAAO,IAAI,iDAAsB,CAC/B,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,gBAAwD;QACvE,OAAO,gBAAgB,YAAY,GAAG,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,gBAAwD;QAC3E,IAAI,gBAAgB,YAAY,GAAG,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,OAAO,gBAAgB,CAAC,MAAM,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,gBAAwD;QAC5E,IAAI,gBAAgB,YAAY,GAAG,EAAE,CAAC;YACpC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,CAAC,CAAC,sDAAsD;QAClE,CAAC;IACH,CAAC;CACF;AAnFD,8DAmFC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/flat/container-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAc;gBAEjB,OAAO,EAAE,SAAS,EAAE;IAIhC,uBAAuB,IAAI,MAAM;IAwBjC,kBAAkB,IAAI,MAAM;CAG7B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContainerGenerator = void 0;
|
|
4
|
+
const naming_1 = require("../../utils/naming");
|
|
5
|
+
class ContainerGenerator {
|
|
6
|
+
constructor(classes) {
|
|
7
|
+
this.classes = classes;
|
|
8
|
+
}
|
|
9
|
+
generateContainerObject() {
|
|
10
|
+
const singletonProperties = [];
|
|
11
|
+
const transientProperties = [];
|
|
12
|
+
for (const classInfo of this.classes) {
|
|
13
|
+
const variableName = (0, naming_1.toVariableName)(classInfo.name);
|
|
14
|
+
const interfaceName = classInfo.interfaceName || classInfo.name;
|
|
15
|
+
const getterName = `get${classInfo.name}`;
|
|
16
|
+
if (classInfo.scope === 'singleton') {
|
|
17
|
+
singletonProperties.push(` get ${interfaceName}(): ${classInfo.name} {
|
|
18
|
+
return ${getterName}();
|
|
19
|
+
},`);
|
|
20
|
+
}
|
|
21
|
+
else if (classInfo.scope === 'transient') {
|
|
22
|
+
transientProperties.push(` get ${interfaceName}(): ${classInfo.name} {
|
|
23
|
+
return ${variableName}Factory();
|
|
24
|
+
},`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const allProperties = [...singletonProperties, ...transientProperties];
|
|
28
|
+
return `export const container = {\n${allProperties.join('\n')}\n};`;
|
|
29
|
+
}
|
|
30
|
+
generateTypeExport() {
|
|
31
|
+
return 'export type Container = typeof container;';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.ContainerGenerator = ContainerGenerator;
|
|
35
|
+
//# sourceMappingURL=container-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-generator.js","sourceRoot":"","sources":["../../../src/generator/flat/container-generator.ts"],"names":[],"mappings":";;;AACA,+CAAoD;AAEpD,MAAa,kBAAkB;IAG7B,YAAY,OAAoB;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,uBAAuB;QACrB,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,IAAA,uBAAc,EAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,IAAI,SAAS,CAAC,IAAI,CAAC;YAChE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YAE1C,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBACpC,mBAAmB,CAAC,IAAI,CAAC,SAAS,aAAa,OAAO,SAAS,CAAC,IAAI;aAC/D,UAAU;KAClB,CAAC,CAAC;YACD,CAAC;iBAAM,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC3C,mBAAmB,CAAC,IAAI,CAAC,SAAS,aAAa,OAAO,SAAS,CAAC,IAAI;aAC/D,YAAY;KACpB,CAAC,CAAC;YACD,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,GAAG,mBAAmB,EAAE,GAAG,mBAAmB,CAAC,CAAC;QACvE,OAAO,+BAA+B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IACvE,CAAC;IAED,kBAAkB;QAChB,OAAO,2CAA2C,CAAC;IACrD,CAAC;CACF;AAlCD,gDAkCC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ClassInfo } from '../../types';
|
|
2
|
+
export declare class DependencyResolver {
|
|
3
|
+
private classes;
|
|
4
|
+
constructor(classes: ClassInfo[]);
|
|
5
|
+
createInterfaceToClassMap(): Map<string, string>;
|
|
6
|
+
resolveDependencies(classInfo: ClassInfo, interfaceToClassMap: Map<string, string>, classMap: Map<string, ClassInfo>): string;
|
|
7
|
+
private createUnmanagedDependencyInstance;
|
|
8
|
+
private generateConstructorArgs;
|
|
9
|
+
getDefaultValueForType(type: string, isOptional: boolean): string;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=dependency-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-resolver.d.ts","sourceRoot":"","sources":["../../../src/generator/flat/dependency-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAwB,MAAM,aAAa,CAAC;AAG9D,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAc;gBAEjB,OAAO,EAAE,SAAS,EAAE;IAIhC,yBAAyB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAUhD,mBAAmB,CACjB,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACxC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC/B,MAAM;IA4BT,OAAO,CAAC,iCAAiC;IAWzC,OAAO,CAAC,uBAAuB;IAI/B,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM;CAyBlE"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DependencyResolver = void 0;
|
|
4
|
+
const naming_1 = require("../../utils/naming");
|
|
5
|
+
class DependencyResolver {
|
|
6
|
+
constructor(classes) {
|
|
7
|
+
this.classes = classes;
|
|
8
|
+
}
|
|
9
|
+
createInterfaceToClassMap() {
|
|
10
|
+
const interfaceToClassMap = new Map();
|
|
11
|
+
for (const classInfo of this.classes) {
|
|
12
|
+
if (classInfo.interfaceName) {
|
|
13
|
+
interfaceToClassMap.set(classInfo.interfaceName, classInfo.name);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return interfaceToClassMap;
|
|
17
|
+
}
|
|
18
|
+
resolveDependencies(classInfo, interfaceToClassMap, classMap) {
|
|
19
|
+
return classInfo.dependencies
|
|
20
|
+
.map(dep => {
|
|
21
|
+
// Check if dependency is an interface name
|
|
22
|
+
const implementingClass = interfaceToClassMap.get(dep);
|
|
23
|
+
if (implementingClass) {
|
|
24
|
+
const depClassInfo = classMap.get(implementingClass);
|
|
25
|
+
if (depClassInfo && depClassInfo.scope === 'transient') {
|
|
26
|
+
// For transient dependencies, use factory call
|
|
27
|
+
return `${(0, naming_1.toVariableName)(implementingClass)}Factory()`;
|
|
28
|
+
}
|
|
29
|
+
return (0, naming_1.toVariableName)(implementingClass);
|
|
30
|
+
}
|
|
31
|
+
// Check if dependency is a class name
|
|
32
|
+
if (classMap.has(dep)) {
|
|
33
|
+
const depClassInfo = classMap.get(dep);
|
|
34
|
+
if (depClassInfo && depClassInfo.scope === 'transient') {
|
|
35
|
+
return `${(0, naming_1.toVariableName)(dep)}Factory()`;
|
|
36
|
+
}
|
|
37
|
+
return (0, naming_1.toVariableName)(dep);
|
|
38
|
+
}
|
|
39
|
+
// Check if dependency is a class that exists in the same file but not managed
|
|
40
|
+
return this.createUnmanagedDependencyInstance(dep);
|
|
41
|
+
})
|
|
42
|
+
.filter(dep => dep !== null)
|
|
43
|
+
.join(', ');
|
|
44
|
+
}
|
|
45
|
+
createUnmanagedDependencyInstance(className) {
|
|
46
|
+
// Find the class info for this unmanaged dependency
|
|
47
|
+
const classInfo = this.classes.find(c => c.name === className);
|
|
48
|
+
if (!classInfo || !classInfo.constructorParams.length) {
|
|
49
|
+
return `new ${className}()`;
|
|
50
|
+
}
|
|
51
|
+
const args = this.generateConstructorArgs(classInfo.constructorParams);
|
|
52
|
+
return `new ${className}(${args})`;
|
|
53
|
+
}
|
|
54
|
+
generateConstructorArgs(params) {
|
|
55
|
+
return params.map(param => this.getDefaultValueForType(param.type, param.isOptional)).join(', ');
|
|
56
|
+
}
|
|
57
|
+
getDefaultValueForType(type, isOptional) {
|
|
58
|
+
if (isOptional) {
|
|
59
|
+
return 'undefined';
|
|
60
|
+
}
|
|
61
|
+
// Handle primitive types
|
|
62
|
+
switch (type.toLowerCase()) {
|
|
63
|
+
case 'string':
|
|
64
|
+
return '"default"';
|
|
65
|
+
case 'number':
|
|
66
|
+
return '0';
|
|
67
|
+
case 'boolean':
|
|
68
|
+
return 'false';
|
|
69
|
+
case 'date':
|
|
70
|
+
return 'new Date()';
|
|
71
|
+
default:
|
|
72
|
+
// For class types, try to find if it's a managed dependency
|
|
73
|
+
const classMap = new Map(this.classes.map(c => [c.name, c]));
|
|
74
|
+
if (classMap.has(type)) {
|
|
75
|
+
return (0, naming_1.toVariableName)(type);
|
|
76
|
+
}
|
|
77
|
+
// For unmanaged class types, create a simple instance
|
|
78
|
+
return `new ${type}()`;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.DependencyResolver = DependencyResolver;
|
|
83
|
+
//# sourceMappingURL=dependency-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../../src/generator/flat/dependency-resolver.ts"],"names":[],"mappings":"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"}
|