@nestia/sdk 1.0.0 → 1.0.2

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 (51) hide show
  1. package/assets/config/nestia.config.ts +70 -70
  2. package/lib/INestiaConfig.d.ts +28 -9
  3. package/lib/analyses/ControllerAnalyzer.js +21 -1
  4. package/lib/analyses/ControllerAnalyzer.js.map +1 -1
  5. package/lib/executable/internal/NestiaSdkConfig.js +168 -14
  6. package/lib/executable/internal/NestiaSdkConfig.js.map +1 -1
  7. package/lib/executable/sdk.js +16 -16
  8. package/lib/generates/FunctionGenerator.js +35 -15
  9. package/lib/generates/FunctionGenerator.js.map +1 -1
  10. package/lib/generates/SwaggerGenerator.d.ts +1 -1
  11. package/lib/generates/SwaggerGenerator.js +36 -16
  12. package/lib/generates/SwaggerGenerator.js.map +1 -1
  13. package/lib/structures/IRoute.d.ts +8 -0
  14. package/lib/structures/ISwaggerDocument.d.ts +95 -0
  15. package/lib/structures/{ISwagger.js → ISwaggerDocument.js} +1 -1
  16. package/lib/structures/ISwaggerDocument.js.map +1 -0
  17. package/package.json +3 -3
  18. package/src/INestiaConfig.ts +147 -120
  19. package/src/NestiaSdkApplication.ts +183 -183
  20. package/src/analyses/ControllerAnalyzer.ts +223 -203
  21. package/src/analyses/GenericAnalyzer.ts +53 -53
  22. package/src/analyses/ImportAnalyzer.ts +143 -143
  23. package/src/analyses/PathAnalyzer.ts +58 -58
  24. package/src/analyses/ReflectAnalyzer.ts +279 -279
  25. package/src/analyses/SourceFinder.ts +59 -59
  26. package/src/executable/internal/CommandParser.ts +15 -15
  27. package/src/executable/internal/NestiaConfigCompilerOptions.ts +18 -18
  28. package/src/executable/internal/NestiaSdkCommand.ts +174 -174
  29. package/src/executable/internal/NestiaSdkConfig.ts +35 -35
  30. package/src/executable/internal/nestia.config.getter.ts +12 -12
  31. package/src/executable/sdk.ts +74 -74
  32. package/src/generates/FileGenerator.ts +156 -156
  33. package/src/generates/FunctionGenerator.ts +322 -287
  34. package/src/generates/SdkGenerator.ts +50 -50
  35. package/src/generates/SwaggerGenerator.ts +422 -393
  36. package/src/index.ts +3 -3
  37. package/src/module.ts +2 -2
  38. package/src/structures/IController.ts +27 -27
  39. package/src/structures/IRoute.ts +33 -29
  40. package/src/structures/ISwaggerDocument.ts +117 -0
  41. package/src/structures/ITypeTuple.ts +6 -6
  42. package/src/structures/MethodType.ts +11 -11
  43. package/src/structures/ParamCategory.ts +1 -1
  44. package/src/structures/TypeEntry.ts +22 -22
  45. package/src/utils/ArrayUtil.ts +26 -26
  46. package/src/utils/ImportDictionary.ts +56 -56
  47. package/src/utils/MapUtil.ts +14 -14
  48. package/src/utils/StripEnums.ts +10 -10
  49. package/lib/structures/ISwagger.d.ts +0 -48
  50. package/lib/structures/ISwagger.js.map +0 -1
  51. package/src/structures/ISwagger.ts +0 -55
@@ -1,50 +1,50 @@
1
- import fs from "fs";
2
- import NodePath from "path";
3
- import ts from "typescript";
4
-
5
- import { INestiaConfig } from "../INestiaConfig";
6
- import { IRoute } from "../structures/IRoute";
7
- import { FileGenerator } from "./FileGenerator";
8
-
9
- export namespace SdkGenerator {
10
- export async function generate(
11
- _checker: ts.TypeChecker,
12
- config: INestiaConfig,
13
- routeList: IRoute[],
14
- ): Promise<void> {
15
- // PREPARE NEW DIRECTORIES
16
- try {
17
- await fs.promises.mkdir(config.output!);
18
- } catch {}
19
-
20
- // BUNDLING
21
- const bundle: string[] = await fs.promises.readdir(BUNDLE_PATH);
22
- for (const file of bundle) {
23
- const current: string = `${BUNDLE_PATH}/${file}`;
24
- const stats: fs.Stats = await fs.promises.stat(current);
25
-
26
- if (stats.isFile() === true) {
27
- const content: string = await fs.promises.readFile(
28
- current,
29
- "utf8",
30
- );
31
- await fs.promises.writeFile(
32
- `${config.output}/${file}`,
33
- content,
34
- "utf8",
35
- );
36
- }
37
- }
38
-
39
- // FUNCTIONAL
40
- await FileGenerator.generate(config, routeList);
41
- }
42
-
43
- export const BUNDLE_PATH = NodePath.join(
44
- __dirname,
45
- "..",
46
- "..",
47
- "assets",
48
- "bundle",
49
- );
50
- }
1
+ import fs from "fs";
2
+ import NodePath from "path";
3
+ import ts from "typescript";
4
+
5
+ import { INestiaConfig } from "../INestiaConfig";
6
+ import { IRoute } from "../structures/IRoute";
7
+ import { FileGenerator } from "./FileGenerator";
8
+
9
+ export namespace SdkGenerator {
10
+ export async function generate(
11
+ _checker: ts.TypeChecker,
12
+ config: INestiaConfig,
13
+ routeList: IRoute[],
14
+ ): Promise<void> {
15
+ // PREPARE NEW DIRECTORIES
16
+ try {
17
+ await fs.promises.mkdir(config.output!);
18
+ } catch {}
19
+
20
+ // BUNDLING
21
+ const bundle: string[] = await fs.promises.readdir(BUNDLE_PATH);
22
+ for (const file of bundle) {
23
+ const current: string = `${BUNDLE_PATH}/${file}`;
24
+ const stats: fs.Stats = await fs.promises.stat(current);
25
+
26
+ if (stats.isFile() === true) {
27
+ const content: string = await fs.promises.readFile(
28
+ current,
29
+ "utf8",
30
+ );
31
+ await fs.promises.writeFile(
32
+ `${config.output}/${file}`,
33
+ content,
34
+ "utf8",
35
+ );
36
+ }
37
+ }
38
+
39
+ // FUNCTIONAL
40
+ await FileGenerator.generate(config, routeList);
41
+ }
42
+
43
+ export const BUNDLE_PATH = NodePath.join(
44
+ __dirname,
45
+ "..",
46
+ "..",
47
+ "assets",
48
+ "bundle",
49
+ );
50
+ }