@nestia/sdk 2.0.0-dev.20230904-2 → 2.0.0-dev.20230907

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 (54) hide show
  1. package/assets/bundle/api/utils/NestiaSimulator.ts +0 -14
  2. package/lib/INestiaConfig.d.ts +22 -0
  3. package/lib/NestiaSdkApplication.d.ts +1 -1
  4. package/lib/NestiaSdkApplication.js +5 -5
  5. package/lib/NestiaSdkApplication.js.map +1 -1
  6. package/lib/analyses/ControllerAnalyzer.js +4 -4
  7. package/lib/analyses/ControllerAnalyzer.js.map +1 -1
  8. package/lib/analyses/ReflectAnalyzer.js +9 -1
  9. package/lib/analyses/ReflectAnalyzer.js.map +1 -1
  10. package/lib/executable/internal/NestiaConfigLoader.js +9 -1
  11. package/lib/executable/internal/NestiaConfigLoader.js.map +1 -1
  12. package/lib/generates/SdkGenerator.d.ts +2 -1
  13. package/lib/generates/SdkGenerator.js +5 -1
  14. package/lib/generates/SdkGenerator.js.map +1 -1
  15. package/lib/generates/SwaggerGenerator.js +9 -6
  16. package/lib/generates/SwaggerGenerator.js.map +1 -1
  17. package/lib/generates/internal/E2eFileProgrammer.js +20 -14
  18. package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
  19. package/lib/generates/internal/SdkDtoGenerator.d.ts +9 -0
  20. package/lib/generates/internal/SdkDtoGenerator.js +264 -0
  21. package/lib/generates/internal/SdkDtoGenerator.js.map +1 -0
  22. package/lib/generates/internal/SdkFileProgrammer.js +8 -7
  23. package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
  24. package/lib/generates/internal/SdkFunctionProgrammer.js +15 -12
  25. package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
  26. package/lib/generates/internal/SdkImportWizard.d.ts +1 -0
  27. package/lib/generates/internal/SdkImportWizard.js +5 -0
  28. package/lib/generates/internal/SdkImportWizard.js.map +1 -1
  29. package/lib/generates/internal/SdkSimulationProgrammer.js +5 -1
  30. package/lib/generates/internal/SdkSimulationProgrammer.js.map +1 -1
  31. package/lib/generates/internal/SdkTypeDefiner.d.ts +10 -0
  32. package/lib/generates/internal/SdkTypeDefiner.js +92 -0
  33. package/lib/generates/internal/SdkTypeDefiner.js.map +1 -0
  34. package/lib/generates/internal/SwaggerSchemaGenerator.js +2 -2
  35. package/lib/generates/internal/SwaggerSchemaGenerator.js.map +1 -1
  36. package/lib/structures/IController.d.ts +2 -0
  37. package/lib/structures/IRoute.d.ts +5 -1
  38. package/package.json +6 -6
  39. package/src/INestiaConfig.ts +24 -0
  40. package/src/NestiaSdkApplication.ts +5 -9
  41. package/src/analyses/ControllerAnalyzer.ts +5 -5
  42. package/src/analyses/ReflectAnalyzer.ts +8 -0
  43. package/src/generates/SdkGenerator.ts +7 -0
  44. package/src/generates/SwaggerGenerator.ts +11 -7
  45. package/src/generates/internal/E2eFileProgrammer.ts +32 -19
  46. package/src/generates/internal/SdkDtoGenerator.ts +384 -0
  47. package/src/generates/internal/SdkFileProgrammer.ts +8 -7
  48. package/src/generates/internal/SdkFunctionProgrammer.ts +41 -16
  49. package/src/generates/internal/SdkImportWizard.ts +7 -0
  50. package/src/generates/internal/SdkSimulationProgrammer.ts +10 -1
  51. package/src/generates/internal/SdkTypeDefiner.ts +123 -0
  52. package/src/generates/internal/SwaggerSchemaGenerator.ts +2 -2
  53. package/src/structures/IController.ts +2 -0
  54. package/src/structures/IRoute.ts +7 -2
@@ -64,7 +64,7 @@ export namespace SwaggerSchemaGenerator {
64
64
  }
65
65
 
66
66
  // FROM COMMENT TAGS -> ANY
67
- for (const tag of route.tags) {
67
+ for (const tag of route.jsDocTags) {
68
68
  if (tag.name !== "throw" && tag.name !== "throws") continue;
69
69
 
70
70
  const text: string | undefined = tag.text?.find(
@@ -363,7 +363,7 @@ export namespace SwaggerSchemaGenerator {
363
363
  ) !== undefined
364
364
  : () => true;
365
365
 
366
- const tag: ts.JSDocTagInfo | undefined = route.tags.find(
366
+ const tag: ts.JSDocTagInfo | undefined = route.jsDocTags.find(
367
367
  (tag) => tag.name === tagName && tag.text && parametric(tag),
368
368
  );
369
369
  return tag && tag.text
@@ -6,6 +6,7 @@ export interface IController {
6
6
  paths: string[];
7
7
  functions: IController.IFunction[];
8
8
  security: Record<string, string[]>[];
9
+ swaggerTgas: string[];
9
10
  }
10
11
 
11
12
  export namespace IController {
@@ -23,6 +24,7 @@ export namespace IController {
23
24
  number | "2XX" | "3XX" | "4XX" | "5XX",
24
25
  IController.IException
25
26
  >;
27
+ swaggerTags: string[];
26
28
  }
27
29
 
28
30
  export type IParameter =
@@ -1,5 +1,7 @@
1
1
  import ts from "typescript";
2
2
 
3
+ import { Metadata } from "typia/lib/schemas/metadata/Metadata";
4
+
3
5
  import { IController } from "./IController";
4
6
 
5
7
  export interface IRoute {
@@ -18,16 +20,17 @@ export interface IRoute {
18
20
  symbol: {
19
21
  class: string;
20
22
  function: string;
21
- }
23
+ };
22
24
  description?: string;
23
25
  operationId?: string;
24
- tags: ts.JSDocTagInfo[];
26
+ jsDocTags: ts.JSDocTagInfo[];
25
27
  setHeaders: Array<
26
28
  | { type: "setter"; source: string; target?: string }
27
29
  | { type: "assigner"; source: string }
28
30
  >;
29
31
  security: Record<string, string[]>[];
30
32
  exceptions: Record<number | "2XX" | "3XX" | "4XX" | "5XX", IRoute.IOutput>;
33
+ swaggerTags: string[];
31
34
  }
32
35
 
33
36
  export namespace IRoute {
@@ -35,10 +38,12 @@ export namespace IRoute {
35
38
  optional: boolean;
36
39
  type: ts.Type;
37
40
  typeName: string;
41
+ metadata?: Metadata;
38
42
  };
39
43
  export interface IOutput {
40
44
  type: ts.Type;
41
45
  typeName: string;
46
+ metadata?: Metadata;
42
47
  description?: string;
43
48
  contentType: "application/json" | "text/plain";
44
49
  }