@nestia/sdk 2.3.0-dev.20231018-4 → 2.3.0-dev.20231019

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 (43) hide show
  1. package/assets/config/nestia.config.ts +13 -7
  2. package/lib/INestiaConfig.d.ts +8 -8
  3. package/lib/NestiaSdkApplication.d.ts +0 -2
  4. package/lib/NestiaSdkApplication.js +3 -42
  5. package/lib/NestiaSdkApplication.js.map +1 -1
  6. package/lib/analyses/ConfigAnalyzer.d.ts +2 -1
  7. package/lib/analyses/ConfigAnalyzer.js +97 -42
  8. package/lib/analyses/ConfigAnalyzer.js.map +1 -1
  9. package/lib/analyses/ControllerAnalyzer.d.ts +1 -1
  10. package/lib/analyses/ControllerAnalyzer.js +39 -24
  11. package/lib/analyses/ControllerAnalyzer.js.map +1 -1
  12. package/lib/analyses/PathAnalyzer.d.ts +2 -2
  13. package/lib/analyses/PathAnalyzer.js +19 -1
  14. package/lib/analyses/PathAnalyzer.js.map +1 -1
  15. package/lib/analyses/ReflectAnalyzer.d.ts +1 -1
  16. package/lib/analyses/ReflectAnalyzer.js +8 -5
  17. package/lib/analyses/ReflectAnalyzer.js.map +1 -1
  18. package/lib/executable/internal/NestiaConfigLoader.js +97 -97
  19. package/lib/executable/internal/NestiaConfigLoader.js.map +1 -1
  20. package/lib/generates/E2eGenerator.js +1 -1
  21. package/lib/generates/E2eGenerator.js.map +1 -1
  22. package/lib/generates/SwaggerGenerator.js +1 -2
  23. package/lib/generates/SwaggerGenerator.js.map +1 -1
  24. package/lib/structures/IController.d.ts +1 -0
  25. package/lib/structures/INormalizedInput.d.ts +19 -0
  26. package/lib/structures/INormalizedInput.js +3 -0
  27. package/lib/structures/INormalizedInput.js.map +1 -0
  28. package/lib/utils/SourceFinder.d.ts +7 -7
  29. package/lib/utils/SourceFinder.js +2 -2
  30. package/lib/utils/SourceFinder.js.map +1 -1
  31. package/package.json +4 -4
  32. package/src/INestiaConfig.ts +17 -36
  33. package/src/NestiaSdkApplication.ts +15 -67
  34. package/src/analyses/ConfigAnalyzer.ts +131 -46
  35. package/src/analyses/ControllerAnalyzer.ts +32 -19
  36. package/src/analyses/PathAnalyzer.ts +22 -3
  37. package/src/analyses/ReflectAnalyzer.ts +8 -2
  38. package/src/executable/internal/NestiaConfigLoader.ts +3 -1
  39. package/src/generates/E2eGenerator.ts +1 -1
  40. package/src/generates/SwaggerGenerator.ts +4 -8
  41. package/src/structures/IController.ts +1 -0
  42. package/src/structures/INormalizedInput.ts +20 -0
  43. package/src/utils/SourceFinder.ts +11 -10
@@ -41,7 +41,7 @@ var E2eGenerator;
41
41
  return;
42
42
  const location = path_1.default.join(__dirname, "..", "..", "assets", "bundle", "e2e", "index.ts");
43
43
  const content = yield fs_1.default.promises.readFile(location, "utf8");
44
- yield fs_1.default.promises.writeFile(output, content.replace("${input}", JSON.stringify(yield ConfigAnalyzer_1.ConfigAnalyzer.input(config.input))), "utf8");
44
+ yield fs_1.default.promises.writeFile(output, content.replace("${input}", JSON.stringify(yield ConfigAnalyzer_1.ConfigAnalyzer.input(config))), "utf8");
45
45
  });
46
46
  })(E2eGenerator || (exports.E2eGenerator = E2eGenerator = {}));
47
47
  const mkdir = (location) => __awaiter(void 0, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"E2eGenerator.js","sourceRoot":"","sources":["../../src/generates/E2eGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAGxB,+DAA4D;AAE5D,oEAAiE;AAEjE,IAAiB,YAAY,CAoD5B;AApDD,WAAiB,YAAY;IACZ,qBAAQ,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,SAAmB,EAAiB,EAAE;QACzC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAE7C,sBAAsB;QACtB,MAAM,MAAM,GAAW,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QACpB,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;QAE/D,2BAA2B;QAC3B,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAExD,2BAA2B;QAC3B,KAAK,MAAM,KAAK,IAAI,SAAS;YACzB,MAAM,qCAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrC,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAO,CAAC;gBACjC,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC;aAC7D,CAAC,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC,CAAA,CAAC;IAEN,MAAM,KAAK,GACP,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,MAAc,EAAiB,EAAE;QACpC,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO;QAElC,MAAM,QAAQ,GAAW,cAAI,CAAC,IAAI,CAC9B,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,UAAU,CACb,CAAC;QACF,MAAM,OAAO,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAC9C,QAAQ,EACR,MAAM,CACT,CAAC;QAEF,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACvB,MAAM,EACN,OAAO,CAAC,OAAO,CACX,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,MAAM,+BAAc,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAC3D,EACD,MAAM,CACT,CAAC;IACN,CAAC,CAAA,CAAC;AACV,CAAC,EApDgB,YAAY,4BAAZ,YAAY,QAoD5B;AAED,MAAM,KAAK,GAAG,CAAO,QAAgB,EAAiB,EAAE;IACpD,IAAI;QACA,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KACrC;IAAC,WAAM,GAAE;AACd,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"E2eGenerator.js","sourceRoot":"","sources":["../../src/generates/E2eGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAGxB,+DAA4D;AAE5D,oEAAiE;AAEjE,IAAiB,YAAY,CAoD5B;AApDD,WAAiB,YAAY;IACZ,qBAAQ,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,SAAmB,EAAiB,EAAE;QACzC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAE7C,sBAAsB;QACtB,MAAM,MAAM,GAAW,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QACpB,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;QAE/D,2BAA2B;QAC3B,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAExD,2BAA2B;QAC3B,KAAK,MAAM,KAAK,IAAI,SAAS;YACzB,MAAM,qCAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrC,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAO,CAAC;gBACjC,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC;aAC7D,CAAC,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC,CAAA,CAAC;IAEN,MAAM,KAAK,GACP,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,MAAc,EAAiB,EAAE;QACpC,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO;QAElC,MAAM,QAAQ,GAAW,cAAI,CAAC,IAAI,CAC9B,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,UAAU,CACb,CAAC;QACF,MAAM,OAAO,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAC9C,QAAQ,EACR,MAAM,CACT,CAAC;QAEF,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACvB,MAAM,EACN,OAAO,CAAC,OAAO,CACX,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,MAAM,+BAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CACrD,EACD,MAAM,CACT,CAAC;IACN,CAAC,CAAA,CAAC;AACV,CAAC,EApDgB,YAAY,4BAAZ,YAAY,QAoD5B;AAED,MAAM,KAAK,GAAG,CAAO,QAAgB,EAAiB,EAAE;IACpD,IAAI;QACA,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KACrC;IAAC,WAAM,GAAE;AACd,CAAC,CAAA,CAAC"}
@@ -15,7 +15,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.SwaggerGenerator = void 0;
16
16
  const fs_1 = __importDefault(require("fs"));
17
17
  const path_1 = __importDefault(require("path"));
18
- const path_2 = __importDefault(require("path"));
19
18
  const Singleton_1 = require("tstl/thread/Singleton");
20
19
  const typia_1 = __importDefault(require("typia"));
21
20
  const MetadataCollection_1 = require("typia/lib/factories/MetadataCollection");
@@ -84,7 +83,7 @@ var SwaggerGenerator;
84
83
  // REPORT ERRORS
85
84
  if (errors.length) {
86
85
  for (const e of errors)
87
- console.error(`${path_2.default.relative(e.route.location, process.cwd())}:${e.route.symbol.class}.${e.route.symbol.function}:${e.from} - error TS(@nestia/sdk): invalid type detected.\n\n` +
86
+ console.error(`${path_1.default.relative(e.route.location, process.cwd())}:${e.route.symbol.class}.${e.route.symbol.function}:${e.from} - error TS(@nestia/sdk): invalid type detected.\n\n` +
88
87
  e.messages.map((m) => ` - ${m}`).join("\n"), "\n\n");
89
88
  throw new TypeError("Invalid type detected");
90
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SwaggerGenerator.js","sourceRoot":"","sources":["../../src/generates/SwaggerGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SwaggerGenerator.js","sourceRoot":"","sources":["../../src/generates/SwaggerGenerator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { ParamCategory } from "./ParamCategory";
3
3
  export interface IController {
4
4
  file: string;
5
5
  name: string;
6
+ prefixes: string[];
6
7
  paths: string[];
7
8
  versions: Array<Exclude<VersionValue, Array<string | typeof VERSION_NEUTRAL>>> | undefined;
8
9
  functions: IController.IFunction[];
@@ -0,0 +1,19 @@
1
+ import { RouteInfo, VersionValue } from "@nestjs/common/interfaces";
2
+ export interface INormalizedInput {
3
+ include: INormalizedInput.IInput[];
4
+ globalPrefix?: {
5
+ prefix: string;
6
+ exclude?: Array<string | RouteInfo>;
7
+ };
8
+ versioning?: {
9
+ prefix: string;
10
+ defaultVersion?: VersionValue;
11
+ };
12
+ }
13
+ export declare namespace INormalizedInput {
14
+ interface IInput {
15
+ paths: string[];
16
+ file: string;
17
+ controller?: Function;
18
+ }
19
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=INormalizedInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"INormalizedInput.js","sourceRoot":"","sources":["../../src/structures/INormalizedInput.ts"],"names":[],"mappings":""}
@@ -1,9 +1,9 @@
1
1
  export declare namespace SourceFinder {
2
- const find: (props: IProps) => Promise<string[]>;
2
+ interface IProps {
3
+ exclude?: string[];
4
+ include: string[];
5
+ filter: (location: string) => Promise<boolean>;
6
+ }
7
+ export const find: (props: IProps) => Promise<string[]>;
8
+ export {};
3
9
  }
4
- interface IProps {
5
- exclude?: string[];
6
- include: string[];
7
- filter: (location: string) => boolean;
8
- }
9
- export {};
@@ -36,7 +36,7 @@ var SourceFinder;
36
36
  const stats = yield fs_1.default.promises.stat(file);
37
37
  if (stats.isDirectory() === true)
38
38
  yield iterate(filter)(closure)(file);
39
- else if (stats.isFile() && filter(file))
39
+ else if (stats.isFile() && (yield filter(file)))
40
40
  closure(file);
41
41
  }
42
42
  }
@@ -48,7 +48,7 @@ var SourceFinder;
48
48
  const stats = yield fs_1.default.promises.stat(next);
49
49
  if (stats.isDirectory() === true)
50
50
  yield iterate(filter)(closure)(next);
51
- else if (stats.isFile() && filter(next))
51
+ else if (stats.isFile() && (yield filter(next)))
52
52
  closure(next);
53
53
  }
54
54
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SourceFinder.js","sourceRoot":"","sources":["../../src/utils/SourceFinder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SourceFinder.js","sourceRoot":"","sources":["../../src/utils/SourceFinder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/sdk",
3
- "version": "2.3.0-dev.20231018-4",
3
+ "version": "2.3.0-dev.20231019",
4
4
  "description": "Nestia SDK and Swagger generator",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "homepage": "https://nestia.io",
37
37
  "dependencies": {
38
- "@nestia/fetcher": "^2.3.0-dev.20231018-4",
38
+ "@nestia/fetcher": "^2.3.0-dev.20231019",
39
39
  "cli": "^1.0.1",
40
40
  "get-function-location": "^2.0.0",
41
41
  "glob": "^7.2.0",
@@ -45,10 +45,10 @@
45
45
  "tsconfck": "^2.0.1",
46
46
  "tsconfig-paths": "^4.1.1",
47
47
  "tstl": "^2.5.13",
48
- "typia": ">=5.2.2 <6.0.0"
48
+ "typia": "^5.2.2"
49
49
  },
50
50
  "peerDependencies": {
51
- "@nestia/fetcher": ">=2.3.0-dev.20231018-4",
51
+ "@nestia/fetcher": ">=2.3.0-dev.20231019",
52
52
  "@nestjs/common": ">=7.0.1",
53
53
  "@nestjs/core": ">=7.0.1",
54
54
  "reflect-metadata": ">=0.1.12",
@@ -1,6 +1,6 @@
1
1
  import type { INestApplication } from "@nestjs/common";
2
- import type { VersionValue } from "@nestjs/common/interfaces";
3
2
 
3
+ import type { INormalizedInput } from "./structures/INormalizedInput";
4
4
  import type { ISwagger } from "./structures/ISwagger";
5
5
  import type { ISwaggerInfo } from "./structures/ISwaggerInfo";
6
6
  import type { ISwaggerSecurityScheme } from "./structures/ISwaggerSecurityScheme";
@@ -11,26 +11,26 @@ import type { ISwaggerSecurityScheme } from "./structures/ISwaggerSecurityScheme
11
11
  * @author Jeongho Nam - https://github.com/samchon
12
12
  */
13
13
  export interface INestiaConfig {
14
- /**
15
- * Building `swagger.json` is also possible.
16
- *
17
- * If not specified, you can't build the `swagger.json`.
18
- */
19
- swagger?: INestiaConfig.ISwaggerConfig;
20
-
21
14
  /**
22
15
  * Accessor of controller classes.
23
16
  *
24
- * You can specify it within two ways
17
+ * You can specify target controller classes within two ways
25
18
  *
26
19
  * - Asynchronous function returning `INestApplication` instance
27
20
  * - Specify the path or directory of controller class files
28
21
  */
29
22
  input:
30
- | string
31
- | string[]
23
+ | (() => Promise<INestApplication>)
32
24
  | INestiaConfig.IInput
33
- | (() => Promise<INestApplication>);
25
+ | string[]
26
+ | string;
27
+
28
+ /**
29
+ * Building `swagger.json` is also possible.
30
+ *
31
+ * If not specified, you can't build the `swagger.json`.
32
+ */
33
+ swagger?: INestiaConfig.ISwaggerConfig;
34
34
 
35
35
  /**
36
36
  * Output directory that SDK would be placed in.
@@ -155,6 +155,11 @@ export interface INestiaConfig {
155
155
  * @default false
156
156
  */
157
157
  json?: boolean;
158
+
159
+ /**
160
+ * @internal
161
+ */
162
+ normalized?: INormalizedInput;
158
163
  }
159
164
  export namespace INestiaConfig {
160
165
  /**
@@ -171,22 +176,6 @@ export namespace INestiaConfig {
171
176
  * List of files or directories to be excluded.
172
177
  */
173
178
  exclude?: string[];
174
-
175
- /**
176
- * @internal
177
- */
178
- globalPrefix?: {
179
- prefix: string;
180
- exclude?: Array<string | RouteInfo>;
181
- };
182
-
183
- /**
184
- * @internal
185
- */
186
- versioning?: {
187
- prefix: string;
188
- defaultVersion?: VersionValue;
189
- };
190
179
  }
191
180
 
192
181
  /**
@@ -241,11 +230,3 @@ export namespace INestiaConfig {
241
230
  }): string;
242
231
  }
243
232
  }
244
-
245
- /**
246
- * @internal
247
- */
248
- interface RouteInfo {
249
- path: string;
250
- method: string;
251
- }
@@ -1,6 +1,5 @@
1
1
  import fs from "fs";
2
2
  import path from "path";
3
- import { Pair, Singleton } from "tstl";
4
3
  import ts from "typescript";
5
4
 
6
5
  import { INestiaConfig } from "./INestiaConfig";
@@ -13,63 +12,13 @@ import { SdkGenerator } from "./generates/SdkGenerator";
13
12
  import { SwaggerGenerator } from "./generates/SwaggerGenerator";
14
13
  import { IController } from "./structures/IController";
15
14
  import { IRoute } from "./structures/IRoute";
16
- import { ArrayUtil } from "./utils/ArrayUtil";
17
- import { SourceFinder } from "./utils/SourceFinder";
18
15
 
19
16
  export class NestiaSdkApplication {
20
- private readonly bundler_: Singleton<Promise<(str: string) => boolean>> =
21
- new Singleton(async () => {
22
- if (!this.config) return () => false;
23
-
24
- const bundles: string[] = await fs.promises.readdir(
25
- SdkGenerator.BUNDLE_PATH,
26
- );
27
- const tuples: Pair<string, boolean>[] = await ArrayUtil.asyncMap(
28
- bundles,
29
- async (file) => {
30
- const relative: string = path.join(
31
- this.config!.output!,
32
- file,
33
- );
34
- const location: string = path.join(
35
- SdkGenerator.BUNDLE_PATH,
36
- file,
37
- );
38
- const stats: fs.Stats = await fs.promises.stat(location);
39
-
40
- return new Pair(relative, stats.isDirectory());
41
- },
42
- );
43
-
44
- return (file: string): boolean => {
45
- for (const it of tuples)
46
- if (it.second === false && file === it.first) return true;
47
- else if (it.second === true && file.indexOf(it.first) === 0)
48
- return true;
49
- return false;
50
- };
51
- });
52
-
53
17
  public constructor(
54
18
  private readonly config: INestiaConfig,
55
19
  private readonly compilerOptions: ts.CompilerOptions,
56
20
  ) {}
57
21
 
58
- private async is_not_excluded(file: string): Promise<boolean> {
59
- if (this.config.output)
60
- return (
61
- file.indexOf(path.join(this.config.output, "functional")) ===
62
- -1 && (await this.bundler_.get())(file) === false
63
- );
64
-
65
- const content: string = await fs.promises.readFile(file, "utf8");
66
- return (
67
- content.indexOf(
68
- " * @nestia Generated by Nestia - https://github.com/samchon/nestia",
69
- ) === -1
70
- );
71
- }
72
-
73
22
  public async e2e(): Promise<void> {
74
23
  if (!this.config.output)
75
24
  throw new Error(
@@ -152,26 +101,20 @@ export class NestiaSdkApplication {
152
101
  checker: ts.TypeChecker,
153
102
  ) => (config: Config) => (routes: IRoute[]) => Promise<void>,
154
103
  ): Promise<void> {
155
- // LOAD CONTROLLER FILES
156
- this.config.input = await ConfigAnalyzer.input(this.config.input);
157
- const fileList: string[] = await ArrayUtil.asyncFilter(
158
- await SourceFinder.find({
159
- include: this.config.input.include,
160
- exclude: this.config.input.exclude,
161
- filter: (file) =>
162
- file.substring(file.length - 3) === ".ts" &&
163
- file.substring(file.length - 5) !== ".d.ts",
164
- }),
165
- (file) => this.is_not_excluded(file),
166
- );
167
-
168
104
  // ANALYZE REFLECTS
169
105
  const unique: WeakSet<any> = new WeakSet();
170
106
  const controllers: IController[] = [];
171
107
 
172
108
  console.log("Analyzing reflections");
173
- for (const file of fileList)
174
- controllers.push(...(await ReflectAnalyzer.analyze(unique, file)));
109
+ for (const include of (await ConfigAnalyzer.input(this.config)).include)
110
+ controllers.push(
111
+ ...(await ReflectAnalyzer.analyze(
112
+ unique,
113
+ include.file,
114
+ include.paths,
115
+ include.controller,
116
+ )),
117
+ );
175
118
 
176
119
  const agg: number = (() => {
177
120
  const set: Set<string> = new Set();
@@ -212,7 +155,12 @@ export class NestiaSdkApplication {
212
155
  );
213
156
  if (file === undefined) continue;
214
157
  routeList.push(
215
- ...ControllerAnalyzer.analyze(this.config, checker, file, c),
158
+ ...(await ControllerAnalyzer.analyze(
159
+ this.config,
160
+ checker,
161
+ file,
162
+ c,
163
+ )),
216
164
  );
217
165
  }
218
166
 
@@ -1,59 +1,82 @@
1
1
  import { INestApplication, VersioningType } from "@nestjs/common";
2
+ import { MODULE_PATH } from "@nestjs/common/constants";
3
+ import { NestContainer } from "@nestjs/core";
4
+ import { Module } from "@nestjs/core/injector/module";
5
+ import fs from "fs";
6
+ import path from "path";
7
+ import { HashMap, Pair, Singleton } from "tstl";
2
8
 
3
9
  import { INestiaConfig } from "../INestiaConfig";
10
+ import { SdkGenerator } from "../generates/SdkGenerator";
11
+ import { INormalizedInput } from "../structures/INormalizedInput";
12
+ import { ArrayUtil } from "../utils/ArrayUtil";
13
+ import { MapUtil } from "../utils/MapUtil";
14
+ import { SourceFinder } from "../utils/SourceFinder";
4
15
 
5
16
  export namespace ConfigAnalyzer {
6
- export const input = async (
7
- config: INestiaConfig["input"],
8
- ): Promise<INestiaConfig.IInput> => {
9
- if (Array.isArray(config))
10
- return {
11
- include: config,
12
- exclude: [],
13
- };
14
- else if (typeof config === "function")
15
- return application(await config());
16
- else if (typeof config === "object")
17
- if (config === null) throw new Error("Invalid input config.");
18
- else return config as INestiaConfig.IInput;
19
- else if (typeof config === "string")
20
- return {
21
- include: [config],
22
- exclude: [],
23
- };
24
- else throw new Error("Invalid input config.");
25
- };
17
+ export const input = (config: INestiaConfig): Promise<INormalizedInput> =>
18
+ MapUtil.take(memory, config, async () => {
19
+ const input = config.input;
20
+ if (Array.isArray(input)) return transform_input(config)(input);
21
+ else if (typeof input === "function")
22
+ return analyze_application(await input());
23
+ else if (typeof input === "object")
24
+ if (input === null)
25
+ throw new Error("Invalid input config. It can't be null.");
26
+ else
27
+ return transform_input(config)(
28
+ input.include,
29
+ input.exclude,
30
+ );
31
+ else if (typeof input === "string")
32
+ return transform_input(config)([input]);
33
+ else throw new Error("Invalid input config.");
34
+ });
26
35
 
27
- const application = async (
36
+ const analyze_application = async (
28
37
  app: INestApplication,
29
- ): Promise<INestiaConfig.IInput> => {
30
- const files: string[] = await (async () => {
31
- const functions = new Set<Function>();
32
- for (const module of (app as any).container.modules.values())
33
- for (const controller of module._controllers.keys())
34
- functions.add(controller);
35
- const files: Set<string> = new Set();
36
- for (const f of functions)
37
- files.add(
38
- (await require("get-function-location")(f))?.source ?? "",
38
+ ): Promise<INormalizedInput> => {
39
+ const files: HashMap<
40
+ Pair<Function, string>,
41
+ Set<string>
42
+ > = new HashMap();
43
+ const container: NestContainer = (app as any)
44
+ .container as NestContainer;
45
+ const modules: Module[] = [...container.getModules().values()].filter(
46
+ (m) => !!m.controllers.size,
47
+ );
48
+ for (const m of modules) {
49
+ const path: string =
50
+ Reflect.getMetadata(
51
+ MODULE_PATH + container.getModules().applicationId,
52
+ m.metatype,
53
+ ) ??
54
+ Reflect.getMetadata(MODULE_PATH, m.metatype) ??
55
+ "";
56
+ for (const controller of [...m.controllers.keys()]) {
57
+ const file: string | null =
58
+ (await require("get-function-location")(controller))
59
+ ?.source ?? null;
60
+ if (file === null) continue;
61
+
62
+ const location: string = normalize_file(file);
63
+ if (location.length === 0) continue;
64
+
65
+ const key: Pair<Function, string> = new Pair(
66
+ controller as Function,
67
+ location,
39
68
  );
40
- return [...files]
41
- .map((str) =>
42
- str.substring(
43
- str.startsWith("file:///")
44
- ? 8
45
- : str.startsWith("file://")
46
- ? 7
47
- : 0,
48
- ),
49
- )
50
- .filter((str) => !!str.length);
51
- })();
52
- const versioning = (app as any).config?.versioningOptions;
69
+ files.take(key, () => new Set([])).add(path);
70
+ }
71
+ }
53
72
 
73
+ const versioning = (app as any).config?.versioningOptions;
54
74
  return {
55
- include: files,
56
- exclude: [],
75
+ include: files.toJSON().map((pair) => ({
76
+ controller: pair.first.first,
77
+ file: pair.first.second,
78
+ paths: [...pair.second.values()],
79
+ })),
57
80
  globalPrefix:
58
81
  typeof (app as any).config?.globalPrefix === "string"
59
82
  ? {
@@ -73,7 +96,69 @@ export namespace ConfigAnalyzer {
73
96
  versioning.prefix === false
74
97
  ? "v"
75
98
  : versioning.prefix,
99
+ defaultVersion: versioning.defaultVersion,
76
100
  },
77
101
  };
78
102
  };
103
+
104
+ const normalize_file = (str: string) =>
105
+ str.substring(
106
+ str.startsWith("file:///")
107
+ ? process.cwd()[0] === "/"
108
+ ? 7
109
+ : 8
110
+ : str.startsWith("file://")
111
+ ? 7
112
+ : 0,
113
+ );
114
+
115
+ const transform_input =
116
+ (config: INestiaConfig) =>
117
+ async (include: string[], exclude?: string[]) => ({
118
+ include: (
119
+ await SourceFinder.find({
120
+ include,
121
+ exclude,
122
+ filter: filter(config),
123
+ })
124
+ ).map((file) => ({
125
+ paths: [""],
126
+ file,
127
+ })),
128
+ });
129
+
130
+ const filter =
131
+ (config: INestiaConfig) =>
132
+ async (location: string): Promise<boolean> =>
133
+ location.endsWith(".ts") &&
134
+ !location.endsWith(".d.ts") &&
135
+ (config.output === undefined ||
136
+ (location.indexOf(path.join(config.output, "functional")) ===
137
+ -1 &&
138
+ (await (
139
+ await bundler.get(config.output)
140
+ )(location))) === false);
79
141
  }
142
+
143
+ const memory = new Map<INestiaConfig, Promise<INormalizedInput>>();
144
+ const bundler = new Singleton(async (output: string) => {
145
+ const assets: string[] = await fs.promises.readdir(
146
+ SdkGenerator.BUNDLE_PATH,
147
+ );
148
+ const tuples: Pair<string, boolean>[] = await ArrayUtil.asyncMap(
149
+ assets,
150
+ async (file) => {
151
+ const relative: string = path.join(output, file);
152
+ const location: string = path.join(SdkGenerator.BUNDLE_PATH, file);
153
+ const stats: fs.Stats = await fs.promises.stat(location);
154
+ return new Pair(relative, stats.isDirectory());
155
+ },
156
+ );
157
+ return async (file: string): Promise<boolean> => {
158
+ for (const it of tuples)
159
+ if (it.second === false && file === it.first) return true;
160
+ else if (it.second === true && file.indexOf(it.first) === 0)
161
+ return true;
162
+ return false;
163
+ };
164
+ });