@notjustcoders/ioc-arise 1.0.10 → 1.0.12

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.
Files changed (183) hide show
  1. package/dist/analyser/ast-parser.d.ts +1 -0
  2. package/dist/analyser/ast-parser.d.ts.map +1 -1
  3. package/dist/analyser/ast-parser.js +53 -0
  4. package/dist/analyser/ast-parser.js.map +1 -1
  5. package/dist/analyser/class-analyzer.d.ts.map +1 -1
  6. package/dist/analyser/class-analyzer.js +23 -8
  7. package/dist/analyser/class-analyzer.js.map +1 -1
  8. package/dist/analyser/dependency-resolver.js +4 -4
  9. package/dist/analyser/dependency-resolver.js.map +1 -1
  10. package/dist/analyser/module-dependency-resolver.js +1 -1
  11. package/dist/analyser/module-dependency-resolver.js.map +1 -1
  12. package/dist/commands/analyze.js +1 -1
  13. package/dist/commands/analyze.js.map +1 -1
  14. package/dist/commands/generate.d.ts.map +1 -1
  15. package/dist/commands/generate.js +2 -2
  16. package/dist/commands/generate.js.map +1 -1
  17. package/dist/container.gen.d.ts +20 -12
  18. package/dist/container.gen.d.ts.map +1 -1
  19. package/dist/container.gen.js +114 -80
  20. package/dist/container.gen.js.map +1 -1
  21. package/dist/generator/file-writer.d.ts +1 -0
  22. package/dist/generator/file-writer.d.ts.map +1 -1
  23. package/dist/generator/file-writer.js +3 -0
  24. package/dist/generator/file-writer.js.map +1 -1
  25. package/dist/generator/import-generator.js +2 -2
  26. package/dist/generator/import-generator.js.map +1 -1
  27. package/dist/generator/modular/modular-container-generator.d.ts +5 -0
  28. package/dist/generator/modular/modular-container-generator.d.ts.map +1 -1
  29. package/dist/generator/modular/modular-container-generator.js +17 -2
  30. package/dist/generator/modular/modular-container-generator.js.map +1 -1
  31. package/dist/generator/modular/module-dependency-resolver.js +1 -1
  32. package/dist/generator/modular/module-dependency-resolver.js.map +1 -1
  33. package/dist/generator/modular/split-file-writer.d.ts +46 -0
  34. package/dist/generator/modular/split-file-writer.d.ts.map +1 -0
  35. package/dist/generator/modular/split-file-writer.js +133 -0
  36. package/dist/generator/modular/split-file-writer.js.map +1 -0
  37. package/dist/generator/shared/instantiation-utils.d.ts.map +1 -1
  38. package/dist/generator/shared/instantiation-utils.js +17 -5
  39. package/dist/generator/shared/instantiation-utils.js.map +1 -1
  40. package/dist/index.d.ts +0 -1
  41. package/dist/index.js +0 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/renderer/console-analysis-renderer.js +1 -1
  44. package/dist/renderer/console-analysis-renderer.js.map +1 -1
  45. package/dist/types.d.ts +5 -1
  46. package/dist/types.d.ts.map +1 -1
  47. package/package.json +1 -1
  48. package/dist/__tests__/analyser/ast-parser.test.d.ts +0 -2
  49. package/dist/__tests__/analyser/ast-parser.test.d.ts.map +0 -1
  50. package/dist/__tests__/analyser/ast-parser.test.js +0 -309
  51. package/dist/__tests__/analyser/ast-parser.test.js.map +0 -1
  52. package/dist/__tests__/analyser/class-analyzer.test.d.ts +0 -2
  53. package/dist/__tests__/analyser/class-analyzer.test.d.ts.map +0 -1
  54. package/dist/__tests__/analyser/class-analyzer.test.js +0 -323
  55. package/dist/__tests__/analyser/class-analyzer.test.js.map +0 -1
  56. package/dist/__tests__/analyser/dependency-resolver.test.d.ts +0 -2
  57. package/dist/__tests__/analyser/dependency-resolver.test.d.ts.map +0 -1
  58. package/dist/__tests__/analyser/dependency-resolver.test.js +0 -128
  59. package/dist/__tests__/analyser/dependency-resolver.test.js.map +0 -1
  60. package/dist/__tests__/analyser/fixtures/ast-parser-fixtures.d.ts +0 -28
  61. package/dist/__tests__/analyser/fixtures/ast-parser-fixtures.d.ts.map +0 -1
  62. package/dist/__tests__/analyser/fixtures/ast-parser-fixtures.js +0 -222
  63. package/dist/__tests__/analyser/fixtures/ast-parser-fixtures.js.map +0 -1
  64. package/dist/__tests__/analyser/fixtures/class-analyzer-fixtures.d.ts +0 -54
  65. package/dist/__tests__/analyser/fixtures/class-analyzer-fixtures.d.ts.map +0 -1
  66. package/dist/__tests__/analyser/fixtures/class-analyzer-fixtures.js +0 -285
  67. package/dist/__tests__/analyser/fixtures/class-analyzer-fixtures.js.map +0 -1
  68. package/dist/__tests__/analyser/fixtures/dependency-resolver-fixtures.d.ts +0 -13
  69. package/dist/__tests__/analyser/fixtures/dependency-resolver-fixtures.d.ts.map +0 -1
  70. package/dist/__tests__/analyser/fixtures/dependency-resolver-fixtures.js +0 -266
  71. package/dist/__tests__/analyser/fixtures/dependency-resolver-fixtures.js.map +0 -1
  72. package/dist/__tests__/analyser/project-analyzer.test.d.ts +0 -2
  73. package/dist/__tests__/analyser/project-analyzer.test.d.ts.map +0 -1
  74. package/dist/__tests__/analyser/project-analyzer.test.js +0 -191
  75. package/dist/__tests__/analyser/project-analyzer.test.js.map +0 -1
  76. package/dist/__tests__/generator/container-generator.test.d.ts +0 -2
  77. package/dist/__tests__/generator/container-generator.test.d.ts.map +0 -1
  78. package/dist/__tests__/generator/container-generator.test.js +0 -185
  79. package/dist/__tests__/generator/container-generator.test.js.map +0 -1
  80. package/dist/__tests__/generator/dependency-resolver.test.d.ts +0 -2
  81. package/dist/__tests__/generator/dependency-resolver.test.d.ts.map +0 -1
  82. package/dist/__tests__/generator/dependency-resolver.test.js +0 -330
  83. package/dist/__tests__/generator/dependency-resolver.test.js.map +0 -1
  84. package/dist/__tests__/generator/fixtures/dependency-resolver.fixtures.d.ts +0 -23
  85. package/dist/__tests__/generator/fixtures/dependency-resolver.fixtures.d.ts.map +0 -1
  86. package/dist/__tests__/generator/fixtures/dependency-resolver.fixtures.js +0 -254
  87. package/dist/__tests__/generator/fixtures/dependency-resolver.fixtures.js.map +0 -1
  88. package/dist/__tests__/generator/fixtures/import-generator.fixtures.d.ts +0 -10
  89. package/dist/__tests__/generator/fixtures/import-generator.fixtures.d.ts.map +0 -1
  90. package/dist/__tests__/generator/fixtures/import-generator.fixtures.js +0 -194
  91. package/dist/__tests__/generator/fixtures/import-generator.fixtures.js.map +0 -1
  92. package/dist/__tests__/generator/import-generator.test.d.ts +0 -2
  93. package/dist/__tests__/generator/import-generator.test.d.ts.map +0 -1
  94. package/dist/__tests__/generator/import-generator.test.js +0 -121
  95. package/dist/__tests__/generator/import-generator.test.js.map +0 -1
  96. package/dist/__tests__/generator/instantiation-generator.test.d.ts +0 -2
  97. package/dist/__tests__/generator/instantiation-generator.test.d.ts.map +0 -1
  98. package/dist/__tests__/generator/instantiation-generator.test.js +0 -251
  99. package/dist/__tests__/generator/instantiation-generator.test.js.map +0 -1
  100. package/dist/generator/Container-file-generator.d.ts +0 -20
  101. package/dist/generator/Container-file-generator.d.ts.map +0 -1
  102. package/dist/generator/Container-file-generator.js +0 -255
  103. package/dist/generator/Container-file-generator.js.map +0 -1
  104. package/dist/generator/base-container-code-generator.d.ts +0 -15
  105. package/dist/generator/base-container-code-generator.d.ts.map +0 -1
  106. package/dist/generator/base-container-code-generator.js +0 -23
  107. package/dist/generator/base-container-code-generator.js.map +0 -1
  108. package/dist/generator/base-dependency-resolver.d.ts +0 -26
  109. package/dist/generator/base-dependency-resolver.d.ts.map +0 -1
  110. package/dist/generator/base-dependency-resolver.js +0 -72
  111. package/dist/generator/base-dependency-resolver.js.map +0 -1
  112. package/dist/generator/base-instantiation-generator.d.ts +0 -55
  113. package/dist/generator/base-instantiation-generator.d.ts.map +0 -1
  114. package/dist/generator/base-instantiation-generator.js +0 -117
  115. package/dist/generator/base-instantiation-generator.js.map +0 -1
  116. package/dist/generator/container-generator.d.ts +0 -8
  117. package/dist/generator/container-generator.d.ts.map +0 -1
  118. package/dist/generator/container-generator.js +0 -35
  119. package/dist/generator/container-generator.js.map +0 -1
  120. package/dist/generator/dependency-resolver.d.ts +0 -11
  121. package/dist/generator/dependency-resolver.d.ts.map +0 -1
  122. package/dist/generator/dependency-resolver.js +0 -83
  123. package/dist/generator/dependency-resolver.js.map +0 -1
  124. package/dist/generator/duplicate-import-resolver.d.ts +0 -44
  125. package/dist/generator/duplicate-import-resolver.d.ts.map +0 -1
  126. package/dist/generator/duplicate-import-resolver.js +0 -162
  127. package/dist/generator/duplicate-import-resolver.js.map +0 -1
  128. package/dist/generator/flat/container-generator.d.ts +0 -8
  129. package/dist/generator/flat/container-generator.d.ts.map +0 -1
  130. package/dist/generator/flat/container-generator.js +0 -17
  131. package/dist/generator/flat/container-generator.js.map +0 -1
  132. package/dist/generator/flat/dependency-resolver.d.ts +0 -8
  133. package/dist/generator/flat/dependency-resolver.d.ts.map +0 -1
  134. package/dist/generator/flat/dependency-resolver.js +0 -43
  135. package/dist/generator/flat/dependency-resolver.js.map +0 -1
  136. package/dist/generator/flat/flat-container-generator.d.ts +0 -25
  137. package/dist/generator/flat/flat-container-generator.d.ts.map +0 -1
  138. package/dist/generator/flat/flat-container-generator.js +0 -44
  139. package/dist/generator/flat/flat-container-generator.js.map +0 -1
  140. package/dist/generator/flat/instantiation-generator.d.ts +0 -24
  141. package/dist/generator/flat/instantiation-generator.d.ts.map +0 -1
  142. package/dist/generator/flat/instantiation-generator.js +0 -125
  143. package/dist/generator/flat/instantiation-generator.js.map +0 -1
  144. package/dist/generator/flat-container-generator.d.ts +0 -25
  145. package/dist/generator/flat-container-generator.d.ts.map +0 -1
  146. package/dist/generator/flat-container-generator.js +0 -44
  147. package/dist/generator/flat-container-generator.js.map +0 -1
  148. package/dist/generator/instantiation-generator.d.ts +0 -21
  149. package/dist/generator/instantiation-generator.d.ts.map +0 -1
  150. package/dist/generator/instantiation-generator.js +0 -116
  151. package/dist/generator/instantiation-generator.js.map +0 -1
  152. package/dist/generator/modular/class-sorter.d.ts +0 -17
  153. package/dist/generator/modular/class-sorter.d.ts.map +0 -1
  154. package/dist/generator/modular/class-sorter.js +0 -40
  155. package/dist/generator/modular/class-sorter.js.map +0 -1
  156. package/dist/generator/modular/modular-container-code-generator.d.ts +0 -65
  157. package/dist/generator/modular/modular-container-code-generator.d.ts.map +0 -1
  158. package/dist/generator/modular/modular-container-code-generator.js +0 -157
  159. package/dist/generator/modular/modular-container-code-generator.js.map +0 -1
  160. package/dist/generator/modular/module-export-generator.d.ts +0 -42
  161. package/dist/generator/modular/module-export-generator.d.ts.map +0 -1
  162. package/dist/generator/modular/module-export-generator.js +0 -82
  163. package/dist/generator/modular/module-export-generator.js.map +0 -1
  164. package/dist/generator/modular/module-scope-generator.d.ts +0 -47
  165. package/dist/generator/modular/module-scope-generator.d.ts.map +0 -1
  166. package/dist/generator/modular/module-scope-generator.js +0 -111
  167. package/dist/generator/modular/module-scope-generator.js.map +0 -1
  168. package/dist/generator/modular/refactored-modular-container-generator.d.ts +0 -38
  169. package/dist/generator/modular/refactored-modular-container-generator.d.ts.map +0 -1
  170. package/dist/generator/modular/refactored-modular-container-generator.js +0 -73
  171. package/dist/generator/modular/refactored-modular-container-generator.js.map +0 -1
  172. package/dist/generator/modular-container-generator.d.ts +0 -21
  173. package/dist/generator/modular-container-generator.d.ts.map +0 -1
  174. package/dist/generator/modular-container-generator.js +0 -57
  175. package/dist/generator/modular-container-generator.js.map +0 -1
  176. package/dist/generator/module-container-function-generator.d.ts +0 -30
  177. package/dist/generator/module-container-function-generator.d.ts.map +0 -1
  178. package/dist/generator/module-container-function-generator.js +0 -199
  179. package/dist/generator/module-container-function-generator.js.map +0 -1
  180. package/dist/generator/shared/dependency-resolver-utils.d.ts +0 -28
  181. package/dist/generator/shared/dependency-resolver-utils.d.ts.map +0 -1
  182. package/dist/generator/shared/dependency-resolver-utils.js +0 -67
  183. package/dist/generator/shared/dependency-resolver-utils.js.map +0 -1
@@ -1,222 +0,0 @@
1
- "use strict";
2
- // Test fixtures for AST parser tests
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.testFileContents = void 0;
5
- exports.testFileContents = {
6
- // parseFile test fixtures
7
- basicClass: `
8
- class TestClass {
9
- constructor() {}
10
- }
11
- `,
12
- emptyFile: '',
13
- // findClassesImplementingInterfaces test fixtures
14
- classWithInterface: `
15
- interface IUserService {
16
- getUser(): string;
17
- }
18
-
19
- class UserService implements IUserService {
20
- getUser(): string {
21
- return 'user';
22
- }
23
- }
24
-
25
- class RegularClass {
26
- doSomething() {}
27
- }
28
- `,
29
- regularClassOnly: `
30
- class RegularClass {
31
- doSomething() {}
32
- }
33
- `,
34
- multipleInterfaceClasses: `
35
- interface IUserService {
36
- getUser(): string;
37
- }
38
-
39
- interface IEmailService {
40
- sendEmail(): void;
41
- }
42
-
43
- class UserService implements IUserService {
44
- getUser(): string {
45
- return 'user';
46
- }
47
- }
48
-
49
- class EmailService implements IEmailService {
50
- sendEmail(): void {}
51
- }
52
- `,
53
- // findAllClasses test fixtures
54
- mixedClasses: `
55
- interface IUserService {
56
- getUser(): string;
57
- }
58
-
59
- class UserService implements IUserService {
60
- constructor(private userRepo: UserRepository) {}
61
- getUser(): string {
62
- return 'user';
63
- }
64
- }
65
-
66
- class UserRepository {
67
- constructor() {}
68
- findUser(): any {
69
- return {};
70
- }
71
- }
72
-
73
- class EmailService {
74
- constructor(private logger: Logger) {}
75
- sendEmail(): void {}
76
- }
77
- `,
78
- onlyRegularClasses: `
79
- class UserRepository {
80
- constructor() {}
81
- findUser(): any {
82
- return {};
83
- }
84
- }
85
-
86
- class EmailService {
87
- constructor(private logger: Logger) {}
88
- sendEmail(): void {}
89
- }
90
-
91
- class Logger {
92
- log(message: string): void {
93
- console.log(message);
94
- }
95
- }
96
- `,
97
- // extractClassName test fixtures
98
- simpleClassName: `
99
- class UserService implements IUserService {
100
- constructor() {}
101
- }
102
- `,
103
- complexClassName: `
104
- class User_Service_123 implements IUserService {
105
- constructor() {}
106
- }
107
- `,
108
- interfaceOnly: `
109
- interface IUserService {
110
- getUser(): string;
111
- }
112
- `,
113
- // extractInterfaceName test fixtures
114
- singleInterface: `
115
- class UserService implements IUserService {
116
- constructor() {}
117
- }
118
- `,
119
- multipleInterfaces: `
120
- class UserService implements IUserService, ILoggable {
121
- constructor() {}
122
- }
123
- `,
124
- // extractConstructorParameters test fixtures
125
- constructorWithParams: `
126
- class UserService implements IUserService {
127
- constructor(private userRepo: UserRepository, public logger: Logger) {}
128
- }
129
- `,
130
- optionalParameters: `
131
- class UserService implements IUserService {
132
- constructor(private userRepo: UserRepository, logger?: Logger) {}
133
- }
134
- `,
135
- noConstructor: `
136
- class UserService implements IUserService {
137
- getUser(): string {
138
- return 'user';
139
- }
140
- }
141
- `,
142
- emptyConstructor: `
143
- class UserService implements IUserService {
144
- constructor() {}
145
- }
146
- `,
147
- protectedParameter: `
148
- class UserService implements IUserService {
149
- constructor(protected userRepo: UserRepository) {}
150
- }
151
- `,
152
- // extractJSDocComments test fixtures
153
- jsDocWithScope: `
154
- /**
155
- * @scope singleton
156
- */
157
- class UserService implements IUserService {
158
- constructor() {}
159
- }
160
-
161
- /**
162
- * @scope transient
163
- */
164
- class EmailService implements IEmailService {
165
- constructor() {}
166
- }
167
- `,
168
- noJSDoc: `
169
- class UserService implements IUserService {
170
- constructor() {}
171
- }
172
- `,
173
- regularComments: `
174
- /**
175
- * This is a regular comment
176
- * @param something
177
- */
178
- class UserService implements IUserService {
179
- constructor() {}
180
- }
181
- `,
182
- malformedJSDoc: `
183
- /**
184
- * @scope invalid_scope
185
- */
186
- class UserService implements IUserService {
187
- constructor() {}
188
- }
189
- `,
190
- // extractTypeAliases test fixtures
191
- typeAliases: `
192
- import { UserRepository as UserRepo } from './user-repository';
193
- import { Logger as AppLogger } from './logger';
194
- import { SomeClass } from './some-class';
195
-
196
- class UserService implements IUserService {
197
- constructor(private userRepo: UserRepo, private logger: AppLogger) {}
198
- }
199
- `,
200
- noAliases: `
201
- import { UserRepository } from './user-repository';
202
- import { Logger } from './logger';
203
-
204
- class UserService implements IUserService {
205
- constructor(private userRepo: UserRepository) {}
206
- }
207
- `,
208
- noImports: `
209
- class UserService implements IUserService {
210
- constructor() {}
211
- }
212
- `,
213
- complexImports: `
214
- import { UserRepository as UserRepo } from './user-repository';
215
- import {Logger as AppLogger} from './logger';
216
-
217
- class UserService implements IUserService {
218
- constructor() {}
219
- }
220
- `
221
- };
222
- //# sourceMappingURL=ast-parser-fixtures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast-parser-fixtures.js","sourceRoot":"","sources":["../../../../src/__tests__/analyser/fixtures/ast-parser-fixtures.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;AAExB,QAAA,gBAAgB,GAAG;IAC9B,0BAA0B;IAC1B,UAAU,EAAE;;;;CAIb;IAEC,SAAS,EAAE,EAAE;IAEb,kDAAkD;IAClD,kBAAkB,EAAE;;;;;;;;;;;;;;CAcrB;IAEC,gBAAgB,EAAE;;;;CAInB;IAEC,wBAAwB,EAAE;;;;;;;;;;;;;;;;;;CAkB3B;IAEC,+BAA+B;IAC/B,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;CAuBf;IAEC,kBAAkB,EAAE;;;;;;;;;;;;;;;;;;CAkBrB;IAEC,iCAAiC;IACjC,eAAe,EAAE;;;;CAIlB;IAEC,gBAAgB,EAAE;;;;CAInB;IAEC,aAAa,EAAE;;;;CAIhB;IAEC,qCAAqC;IACrC,eAAe,EAAE;;;;CAIlB;IAEC,kBAAkB,EAAE;;;;CAIrB;IAEC,6CAA6C;IAC7C,qBAAqB,EAAE;;;;CAIxB;IAEC,kBAAkB,EAAE;;;;CAIrB;IAEC,aAAa,EAAE;;;;;;CAMhB;IAEC,gBAAgB,EAAE;;;;CAInB;IAEC,kBAAkB,EAAE;;;;CAIrB;IAEC,qCAAqC;IACrC,cAAc,EAAE;;;;;;;;;;;;;;CAcjB;IAEC,OAAO,EAAE;;;;CAIV;IAEC,eAAe,EAAE;;;;;;;;CAQlB;IAEC,cAAc,EAAE;;;;;;;CAOjB;IAEC,mCAAmC;IACnC,WAAW,EAAE;;;;;;;;CAQd;IAEC,SAAS,EAAE;;;;;;;CAOZ;IAEC,SAAS,EAAE;;;;CAIZ;IAEC,cAAc,EAAE;;;;;;;CAOjB;CACA,CAAC"}
@@ -1,54 +0,0 @@
1
- import { ClassInfo, ConstructorParameter, InjectionScope } from '../../../types';
2
- export declare const testFileContents: {
3
- basicClassWithInterface: string;
4
- classWithJSDocScope: string;
5
- classWithTypeAliases: string;
6
- classWithOptionalParams: string;
7
- multipleClasses: string;
8
- classWithoutInterface: string;
9
- emptyFile: string;
10
- invalidSyntax: string;
11
- complexConstructorParams: string;
12
- nonMatchingInterface: string;
13
- };
14
- export declare const importPathTestCases: {
15
- filePath: string;
16
- expected: string;
17
- }[];
18
- export declare const generateImportPathTestCases: {
19
- sourceDir: string;
20
- filePath: string;
21
- expected: string;
22
- }[];
23
- export declare const dependencyResolutionTestParams: {
24
- name: string;
25
- type: string;
26
- isOptional: boolean;
27
- }[];
28
- export declare const typeAliasesForDependencyTest: Map<string, string>;
29
- export declare const constructorParamsWithAliases: {
30
- name: string;
31
- type: string;
32
- isOptional: boolean;
33
- }[];
34
- export declare const mockClassInfos: ClassInfo[];
35
- export declare const mockConstructorParams: ConstructorParameter[];
36
- export declare const mockTypeAliases: Map<string, string>;
37
- export declare const expectedResults: {
38
- basicClass: {
39
- name: string;
40
- interfaceName: string;
41
- dependencies: string[];
42
- importPath: string;
43
- };
44
- classWithScope: {
45
- name: string;
46
- interfaceName: string;
47
- scope: InjectionScope;
48
- };
49
- multipleClasses: {
50
- name: string;
51
- interfaceName: string;
52
- }[];
53
- };
54
- //# sourceMappingURL=class-analyzer-fixtures.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"class-analyzer-fixtures.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/analyser/fixtures/class-analyzer-fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGjF,eAAO,MAAM,gBAAgB;;;;;;;;;;;CAkJ5B,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;GAa/B,CAAC;AAGF,eAAO,MAAM,2BAA2B;;;;GAgBvC,CAAC;AAGF,eAAO,MAAM,8BAA8B;;;;GAK1C,CAAC;AAGF,eAAO,MAAM,4BAA4B,qBAGvC,CAAC;AAGH,eAAO,MAAM,4BAA4B;;;;GAGxC,CAAC;AAGF,eAAO,MAAM,cAAc,EAAE,SAAS,EAuCrC,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,oBAAoB,EAmBvD,CAAC;AAGF,eAAO,MAAM,eAAe,qBAI1B,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;;;;;eAUF,cAAc;;;;;;CAYvC,CAAC"}
@@ -1,285 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.expectedResults = exports.mockTypeAliases = exports.mockConstructorParams = exports.mockClassInfos = exports.constructorParamsWithAliases = exports.typeAliasesForDependencyTest = exports.dependencyResolutionTestParams = exports.generateImportPathTestCases = exports.importPathTestCases = exports.testFileContents = void 0;
4
- // Test file contents for different scenarios
5
- exports.testFileContents = {
6
- // Basic class implementing an interface
7
- basicClassWithInterface: `
8
- import { IUserService } from './interfaces/IUserService';
9
- import { IUserRepository } from './interfaces/IUserRepository';
10
- import { ILogger } from './interfaces/ILogger';
11
-
12
- export class UserService implements IUserService {
13
- constructor(
14
- private userRepository: IUserRepository,
15
- private logger: ILogger
16
- ) {}
17
-
18
- async getUser(id: string): Promise<User> {
19
- this.logger.log('Getting user');
20
- return this.userRepository.findById(id);
21
- }
22
- }
23
- `,
24
- // Class with JSDoc scope annotation
25
- classWithJSDocScope: `
26
- import { IEmailService } from './interfaces/IEmailService';
27
- import { ITemplateEngine } from './interfaces/ITemplateEngine';
28
-
29
- /**
30
- * @scope singleton
31
- */
32
- export class EmailService implements IEmailService {
33
- constructor(
34
- private templateEngine: ITemplateEngine
35
- ) {}
36
-
37
- async sendEmail(to: string, template: string): Promise<void> {
38
- const content = this.templateEngine.render(template);
39
- // Send email logic
40
- }
41
- }
42
- `,
43
- // Class with type aliases
44
- classWithTypeAliases: `
45
- import { IPaymentService } from './interfaces/IPaymentService';
46
- import { INotificationService as NotificationSvc } from './interfaces/INotificationService';
47
- import { ILogger as Log } from './interfaces/ILogger';
48
-
49
- export class PaymentService implements IPaymentService {
50
- constructor(
51
- private notificationService: NotificationSvc,
52
- private logger: Log
53
- ) {}
54
-
55
- async processPayment(amount: number): Promise<void> {
56
- this.logger.log('Processing payment');
57
- await this.notificationService.notify('Payment processed');
58
- }
59
- }
60
- `,
61
- // Class with optional parameters
62
- classWithOptionalParams: `
63
- import { IOrderService } from './interfaces/IOrderService';
64
- import { IInventoryService } from './interfaces/IInventoryService';
65
- import { ILogger } from './interfaces/ILogger';
66
-
67
- export class OrderService implements IOrderService {
68
- constructor(
69
- private inventoryService: IInventoryService,
70
- private logger?: ILogger
71
- ) {}
72
-
73
- async createOrder(items: string[]): Promise<void> {
74
- this.logger?.log('Creating order');
75
- await this.inventoryService.checkAvailability(items);
76
- }
77
- }
78
- `,
79
- // Multiple classes in one file
80
- multipleClasses: `
81
- import { IUserService } from './interfaces/IUserService';
82
- import { IAdminService } from './interfaces/IAdminService';
83
- import { ILogger } from './interfaces/ILogger';
84
- import { IDatabase } from './interfaces/IDatabase';
85
-
86
- export class UserService implements IUserService {
87
- constructor(private logger: ILogger) {}
88
- }
89
-
90
- export class AdminService implements IAdminService {
91
- constructor(
92
- private database: IDatabase,
93
- private logger: ILogger
94
- ) {}
95
- }
96
- `,
97
- // Class without interface (should be ignored)
98
- classWithoutInterface: `
99
- export class UtilityClass {
100
- constructor(private config: any) {}
101
-
102
- doSomething(): void {
103
- // Implementation
104
- }
105
- }
106
- `,
107
- // Empty file
108
- emptyFile: '',
109
- // File with syntax errors
110
- invalidSyntax: `
111
- import { IService } from './interfaces/IService';
112
-
113
- export class BrokenService implements IService {
114
- constructor(
115
- private dependency: IDependency
116
- ) {
117
- // Missing closing brace
118
- `,
119
- // Class with complex constructor parameters
120
- complexConstructorParams: `
121
- import { IComplexService } from './interfaces/IComplexService';
122
- import { ILogger } from './interfaces/ILogger';
123
- import { IConfig } from './interfaces/IConfig';
124
-
125
- export class ComplexService implements IComplexService {
126
- constructor(
127
- private readonly logger: ILogger,
128
- protected config: IConfig,
129
- public readonly name: string,
130
- private optional?: ILogger
131
- ) {}
132
- }
133
- `,
134
- // Class with interface pattern that should be filtered
135
- nonMatchingInterface: `
136
- import { IInternalService } from './interfaces/IInternalService';
137
-
138
- export class InternalService implements IInternalService {
139
- constructor() {}
140
- }
141
- `
142
- };
143
- // Test cases for import path generation
144
- exports.importPathTestCases = [
145
- {
146
- filePath: '/src/services/user.service.ts',
147
- expected: './services/user.service'
148
- },
149
- {
150
- filePath: '/src/repositories/user.repository.ts',
151
- expected: './repositories/user.repository'
152
- },
153
- {
154
- filePath: '/src/utils/logger.ts',
155
- expected: './utils/logger'
156
- }
157
- ];
158
- // Test cases for generateImportPath method
159
- exports.generateImportPathTestCases = [
160
- {
161
- sourceDir: '/project/src',
162
- filePath: '/project/src/services/user.service.ts',
163
- expected: './services/user.service'
164
- },
165
- {
166
- sourceDir: '/project/src',
167
- filePath: '/project/src/repositories/data/user.repository.ts',
168
- expected: './repositories/data/user.repository'
169
- },
170
- {
171
- sourceDir: '/app/source',
172
- filePath: '/app/source/utils/logger.ts',
173
- expected: './utils/logger'
174
- }
175
- ];
176
- // Mock constructor parameters for dependency resolution tests
177
- exports.dependencyResolutionTestParams = [
178
- { name: 'userRepo', type: 'IUserRepository', isOptional: false },
179
- { name: 'logger', type: 'ILogger', isOptional: false },
180
- { name: 'config', type: 'string', isOptional: false }, // Should be filtered out
181
- { name: 'count', type: 'number', isOptional: false } // Should be filtered out
182
- ];
183
- // Type aliases for dependency resolution tests
184
- exports.typeAliasesForDependencyTest = new Map([
185
- ['UserRepo', 'IUserRepository'],
186
- ['Log', 'ILogger']
187
- ]);
188
- // Constructor parameters with type aliases
189
- exports.constructorParamsWithAliases = [
190
- { name: 'userRepo', type: 'UserRepo', isOptional: false },
191
- { name: 'logger', type: 'Log', isOptional: false }
192
- ];
193
- // Mock ClassInfo objects for testing
194
- exports.mockClassInfos = [
195
- {
196
- name: 'UserService',
197
- filePath: '/src/services/user.service.ts',
198
- dependencies: ['IUserRepository', 'ILogger'],
199
- constructorParams: [
200
- {
201
- name: 'userRepository',
202
- type: 'IUserRepository',
203
- isOptional: false,
204
- accessModifier: 'private'
205
- },
206
- {
207
- name: 'logger',
208
- type: 'ILogger',
209
- isOptional: false,
210
- accessModifier: 'private'
211
- }
212
- ],
213
- interfaceName: 'IUserService',
214
- importPath: './services/user.service',
215
- scope: 'transient'
216
- },
217
- {
218
- name: 'EmailService',
219
- filePath: '/src/services/email.service.ts',
220
- dependencies: ['ITemplateEngine'],
221
- constructorParams: [
222
- {
223
- name: 'templateEngine',
224
- type: 'ITemplateEngine',
225
- isOptional: false,
226
- accessModifier: 'private'
227
- }
228
- ],
229
- interfaceName: 'IEmailService',
230
- importPath: './services/email.service',
231
- scope: 'singleton'
232
- }
233
- ];
234
- // Mock constructor parameters for testing
235
- exports.mockConstructorParams = [
236
- {
237
- name: 'userRepository',
238
- type: 'IUserRepository',
239
- isOptional: false,
240
- accessModifier: 'private'
241
- },
242
- {
243
- name: 'logger',
244
- type: 'ILogger',
245
- isOptional: true,
246
- accessModifier: 'private'
247
- },
248
- {
249
- name: 'config',
250
- type: 'string',
251
- isOptional: false,
252
- accessModifier: 'public'
253
- }
254
- ];
255
- // Mock type aliases for testing
256
- exports.mockTypeAliases = new Map([
257
- ['NotificationSvc', 'INotificationService'],
258
- ['Log', 'ILogger'],
259
- ['DB', 'IDatabase']
260
- ]);
261
- // Expected results for various test scenarios
262
- exports.expectedResults = {
263
- basicClass: {
264
- name: 'UserService',
265
- interfaceName: 'IUserService',
266
- dependencies: ['IUserRepository', 'ILogger'],
267
- importPath: './services/user.service'
268
- },
269
- classWithScope: {
270
- name: 'EmailService',
271
- interfaceName: 'IEmailService',
272
- scope: 'singleton'
273
- },
274
- multipleClasses: [
275
- {
276
- name: 'UserService',
277
- interfaceName: 'IUserService'
278
- },
279
- {
280
- name: 'AdminService',
281
- interfaceName: 'IAdminService'
282
- }
283
- ]
284
- };
285
- //# sourceMappingURL=class-analyzer-fixtures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"class-analyzer-fixtures.js","sourceRoot":"","sources":["../../../../src/__tests__/analyser/fixtures/class-analyzer-fixtures.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import { ClassInfo } from '../../../types';
2
- export declare const basicMockClasses: ClassInfo[];
3
- export declare const simpleClasses: ClassInfo[];
4
- export declare const circularClasses: ClassInfo[];
5
- export declare const selfRefClasses: ClassInfo[];
6
- export declare const classesWithExternal: ClassInfo[];
7
- export declare const simpleBinaryCircular: ClassInfo[];
8
- export declare const multiCircularClasses: ClassInfo[];
9
- export declare const externalDependencyClasses: ClassInfo[];
10
- export declare const standaloneClasses: ClassInfo[];
11
- export declare const diamondClasses: ClassInfo[];
12
- export declare const optionalDepClasses: ClassInfo[];
13
- //# sourceMappingURL=dependency-resolver-fixtures.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependency-resolver-fixtures.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/analyser/fixtures/dependency-resolver-fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,eAAO,MAAM,gBAAgB,EAAE,SAAS,EA0CvC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,SAAS,EASpC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,SAAS,EA+BtC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,EAWrC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,SAAS,EAoB1C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,SAAS,EAiB3C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,SAAS,EAmC3C,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,SAAS,EAiBhD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,SAAS,EASxC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,EAwCrC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,SAAS,EAoBzC,CAAC"}