@buildvision/nest-sdk-generator 1.2.2 → 2.1.0

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 (74) hide show
  1. package/.eslintrc.js +63 -0
  2. package/README.md +2 -2
  3. package/build/analyzer/classdeps.js +1 -1
  4. package/build/analyzer/controller.d.ts +4 -4
  5. package/build/analyzer/controller.js +3 -3
  6. package/build/analyzer/controllers.d.ts +1 -1
  7. package/build/analyzer/controllers.js +10 -2
  8. package/build/analyzer/decorator.d.ts +2 -2
  9. package/build/analyzer/decorator.js +19 -19
  10. package/build/analyzer/extractor.d.ts +4 -4
  11. package/build/analyzer/extractor.js +6 -17
  12. package/build/analyzer/index.d.ts +1 -1
  13. package/build/analyzer/index.js +2 -2
  14. package/build/analyzer/methods.d.ts +7 -7
  15. package/build/analyzer/methods.js +6 -9
  16. package/build/analyzer/module.js +2 -2
  17. package/build/analyzer/params.d.ts +59 -17
  18. package/build/analyzer/params.js +150 -129
  19. package/build/analyzer/route.d.ts +5 -2
  20. package/build/analyzer/route.js +13 -7
  21. package/build/analyzer/typedeps.d.ts +6 -6
  22. package/build/analyzer/typedeps.js +3 -3
  23. package/build/bin.js +9 -13
  24. package/build/config.d.ts +29 -19
  25. package/build/config.js +2 -2
  26. package/build/generator/genmodules.d.ts +33 -10
  27. package/build/generator/genmodules.js +165 -113
  28. package/build/generator/gentypes.js +1 -1
  29. package/build/generator/index.d.ts +1 -1
  30. package/build/generator/index.js +23 -22
  31. package/build/generator/prettier.d.ts +1 -1
  32. package/build/generator/prettier.js +2 -2
  33. package/build/generator/sdk-interface.d.ts +1 -1
  34. package/build/generator/sdk-interface.js +5 -5
  35. package/build/logging.js +4 -2
  36. package/build/rtk-query-generator/genmodules.d.ts +54 -0
  37. package/build/rtk-query-generator/genmodules.js +252 -0
  38. package/build/rtk-query-generator/gentypes.d.ts +10 -0
  39. package/build/rtk-query-generator/gentypes.js +62 -0
  40. package/build/rtk-query-generator/index.d.ts +6 -0
  41. package/build/rtk-query-generator/index.js +84 -0
  42. package/build/rtk-query-generator/prettier.d.ts +16 -0
  43. package/build/rtk-query-generator/prettier.js +43 -0
  44. package/build/rtk-query-generator/sdk-interface.d.ts +1 -0
  45. package/build/rtk-query-generator/sdk-interface.js +36 -0
  46. package/build/tsconfig.tsbuildinfo +1 -1
  47. package/build/utils.js +1 -1
  48. package/bun.lockb +0 -0
  49. package/package.json +16 -5
  50. package/src/analyzer/classdeps.ts +3 -0
  51. package/src/analyzer/controller.ts +12 -6
  52. package/src/analyzer/controllers.ts +16 -1
  53. package/src/analyzer/extractor.ts +12 -23
  54. package/src/analyzer/index.ts +5 -2
  55. package/src/analyzer/methods.ts +12 -13
  56. package/src/analyzer/module.ts +4 -10
  57. package/src/analyzer/params.ts +212 -182
  58. package/src/analyzer/route.ts +10 -4
  59. package/src/analyzer/typedeps.ts +13 -11
  60. package/src/bin.ts +11 -13
  61. package/src/config.ts +35 -24
  62. package/src/generator/genmodules.ts +212 -129
  63. package/src/generator/gentypes.ts +1 -0
  64. package/src/generator/index.ts +23 -23
  65. package/src/generator/prettier.ts +4 -2
  66. package/src/logging.ts +4 -1
  67. package/src/rtk-query-generator/genmodules.ts +335 -0
  68. package/src/rtk-query-generator/gentypes.ts +74 -0
  69. package/src/rtk-query-generator/index.ts +92 -0
  70. package/src/rtk-query-generator/prettier.ts +48 -0
  71. package/src/rtk-query-generator/sdk-interface.ts +32 -0
  72. package/src/utils.ts +2 -2
  73. package/tsconfig.tsbuildinfo +1 -0
  74. package/src/analyzer/decorator.ts +0 -29
package/build/config.d.ts CHANGED
@@ -3,42 +3,52 @@
3
3
  * For details on what these options do, see the project's README
4
4
  */
5
5
  export interface Config {
6
- /** Enable verbose mode */
7
- readonly verbose?: boolean;
8
- /** Disable colored output */
9
- readonly noColor?: boolean;
10
6
  /** Path to the API's source directory */
11
7
  readonly apiInputPath: string;
12
- /** Path to generate the SDK at */
13
- readonly sdkOutput: string;
14
- /** Path to the SDK interface file */
15
- readonly sdkInterfacePath: string;
16
- /** List of magic types */
17
- readonly magicTypes?: MagicType[];
8
+ readonly controllerOutput?: {
9
+ exportName?: {
10
+ addSuffix?: string;
11
+ removeSuffix?: string;
12
+ };
13
+ fileName?: {
14
+ addSuffix?: string;
15
+ removeSuffix?: string;
16
+ };
17
+ };
18
+ /** If the SDK interface file does not exist yet, create one automatically (enabled by default) */
19
+ readonly generateDefaultSdkInterface?: boolean;
20
+ /** Write generation timestamp in each TypeScript file (enabled by default) */
21
+ readonly generateTimestamps?: boolean;
18
22
  /** Show a JSON output */
19
23
  readonly jsonOutput?: string;
20
24
  /** Prettify the JSON output */
21
25
  readonly jsonPrettyOutput?: boolean;
22
- /** Prettify the generated files (enabled by default) */
23
- readonly prettify?: boolean;
26
+ /** List of magic types */
27
+ readonly magicTypes?: MagicType[];
28
+ /** Disable colored output */
29
+ readonly noColor?: boolean;
30
+ /** If the output directory already exists, overwrite it (enabled by default) */
31
+ readonly overwriteOldOutputDir?: boolean;
24
32
  /** Path to Prettier's configuration file */
25
33
  readonly prettierConfig?: string;
34
+ /** Prettify the generated files (enabled by default) */
35
+ readonly prettify?: boolean;
36
+ /** Path to the SDK interface file */
37
+ readonly sdkInterfacePath: string;
38
+ /** Path to generate the SDK at */
39
+ readonly sdkOutputPath: string;
26
40
  /** Path to custom tsconfig file */
27
41
  readonly tsconfigFile?: string;
28
- /** If the output directory already exists, overwrite it (enabled by default) */
29
- readonly overwriteOldOutputDir?: boolean;
30
- /** If the SDK interface file does not exist yet, create one automatically (enabled by default) */
31
- readonly generateDefaultSdkInterface?: boolean;
32
- /** Write generation timestamp in each TypeScript file (enabled by default) */
33
- readonly generateTimestamps?: boolean;
42
+ /** Enable verbose mode */
43
+ readonly verbose?: boolean;
34
44
  }
35
45
  /**
36
46
  * Magic type used to replace a non-compatible type in the generated SDK
37
47
  */
38
48
  export interface MagicType {
39
49
  readonly nodeModuleFilePath: string;
40
- readonly typeName: string;
41
50
  readonly placeholderContent: string;
51
+ readonly typeName: string;
42
52
  }
43
53
  export declare const configPath: string;
44
54
  export declare const config: Config;
package/build/config.js CHANGED
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.config = exports.configPath = void 0;
4
- const chalk = require("chalk");
5
4
  const fs = require("fs");
6
5
  const path = require("path");
6
+ const chalk = require("chalk");
7
7
  /**
8
8
  * Load an existing configuration file and decode it
9
9
  * @param configPath
@@ -28,4 +28,4 @@ if (!exports.configPath) {
28
28
  process.exit(2);
29
29
  }
30
30
  exports.config = loadConfigFile(exports.configPath);
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBK0I7QUFDL0IseUJBQXdCO0FBQ3hCLDZCQUE0QjtBQTJENUI7OztHQUdHO0FBQ0gsU0FBUyxjQUFjLENBQUMsVUFBa0I7SUFDeEMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDOUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUN4RyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0tBQ2hCO0lBRUQsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFFaEQsSUFBSTtRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtLQUN4QjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLHNDQUFzQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDcEUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtLQUNoQjtBQUNILENBQUM7QUFFWSxRQUFBLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRXpDLElBQUksQ0FBQyxrQkFBVSxFQUFFO0lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxDQUFDLENBQUMsQ0FBQTtJQUMzRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0NBQ2hCO0FBRVksUUFBQSxNQUFNLEdBQUcsY0FBYyxDQUFDLGtCQUFVLENBQUMsQ0FBQSJ9
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBd0I7QUFDeEIsNkJBQTRCO0FBRTVCLCtCQUErQjtBQXFFL0I7OztHQUdHO0FBQ0gsU0FBUyxjQUFjLENBQUMsVUFBa0I7SUFDeEMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUMvQixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMscUNBQXFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3hHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDakIsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBRWhELElBQUksQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN6QixDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxzQ0FBc0MsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3BFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDakIsQ0FBQztBQUNILENBQUM7QUFFWSxRQUFBLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRXpDLElBQUksQ0FBQyxrQkFBVSxFQUFFLENBQUM7SUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxDQUFDLENBQUMsQ0FBQTtJQUMzRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2pCLENBQUM7QUFFWSxRQUFBLE1BQU0sR0FBRyxjQUFjLENBQUMsa0JBQVUsQ0FBQyxDQUFBIn0=
@@ -1,25 +1,48 @@
1
1
  /**
2
2
  * @file Generate SDK modules
3
3
  */
4
+ import { SdkController } from '../analyzer/controller';
4
5
  import { SdkModules } from '../analyzer/controllers';
5
6
  import { SdkMethod } from '../analyzer/methods';
6
- import { SdkMethodParams } from '../analyzer/params';
7
+ import { SdkMethodParam } from '../analyzer/params';
8
+ export declare function replaceSuffix(value: string, { addSuffix, removeSuffix }: {
9
+ addSuffix?: string;
10
+ removeSuffix?: string;
11
+ }): string;
12
+ export declare function controllerExportName(controller: SdkController): string;
13
+ export declare function controllerFileName(controller: SdkController): {
14
+ ext: string;
15
+ name: string;
16
+ };
17
+ export declare function controllerRelativePath({ controller, inputRelativePath, }: {
18
+ controller: SdkController;
19
+ inputRelativePath: string;
20
+ }): string;
7
21
  /**
8
22
  * Generate the SDK's module and controllers files
9
23
  * @param modules
10
24
  * @returns
11
25
  */
12
- export declare function generateSdkModules(modules: SdkModules): Map<string, string>;
13
- export declare function generateSdkMethod(method: SdkMethod): string;
14
- /**
15
- * Generate the method parameters for a given SDK method
16
- * @param params
17
- * @returns
18
- */
19
- export declare function generateSdkMethodParams(params: SdkMethodParams): string;
26
+ export declare function generateSdkModules({ inputRelativePath, modules, }: {
27
+ inputRelativePath: string;
28
+ modules: SdkModules;
29
+ }): Map<string, string>;
30
+ export declare function generateController({ controller, inputRelativePath, moduleName, }: {
31
+ controller: SdkController;
32
+ inputRelativePath: string;
33
+ moduleName: string;
34
+ }): string;
35
+ export declare function generateSdkMethod({ controller, inputRelativePath, method, }: {
36
+ controller: SdkController;
37
+ inputRelativePath: string;
38
+ method: SdkMethod;
39
+ }): string;
40
+ export declare function generateSdkMethodSignature(method: SdkMethod): string;
41
+ export declare function generateSdkMethodParams(method: SdkMethod): string;
20
42
  /**
21
43
  * Generate a request call to Central for the generated files
22
44
  * @param method
23
45
  * @returns
24
46
  */
25
- export declare function generateCentralRequest(method: SdkMethod): string;
47
+ export declare function generateSdkMethodBody(method: SdkMethod): string;
48
+ export declare function methodParamsToString(params: SdkMethodParam): string;
@@ -3,142 +3,166 @@
3
3
  * @file Generate SDK modules
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateCentralRequest = exports.generateSdkMethodParams = exports.generateSdkMethod = exports.generateSdkModules = void 0;
6
+ exports.methodParamsToString = exports.generateSdkMethodBody = exports.generateSdkMethodParams = exports.generateSdkMethodSignature = exports.generateSdkMethod = exports.generateController = exports.generateSdkModules = exports.controllerRelativePath = exports.controllerFileName = exports.controllerExportName = exports.replaceSuffix = void 0;
7
7
  const path = require("path");
8
8
  const methods_1 = require("../analyzer/methods");
9
+ const params_1 = require("../analyzer/params");
9
10
  const route_1 = require("../analyzer/route");
10
11
  const typedeps_1 = require("../analyzer/typedeps");
12
+ const config_1 = require("../config");
11
13
  const logging_1 = require("../logging");
14
+ function replaceSuffix(value, { addSuffix = '', removeSuffix = '' }) {
15
+ return value.replace(new RegExp(removeSuffix + '$'), '') + addSuffix;
16
+ }
17
+ exports.replaceSuffix = replaceSuffix;
18
+ function controllerExportName(controller) {
19
+ var _a, _b;
20
+ const suffixReplacement = (_b = (_a = config_1.config.controllerOutput) === null || _a === void 0 ? void 0 : _a.exportName) !== null && _b !== void 0 ? _b : {};
21
+ return replaceSuffix(controller.className, suffixReplacement);
22
+ }
23
+ exports.controllerExportName = controllerExportName;
24
+ function controllerFileName(controller) {
25
+ var _a, _b;
26
+ const { ext, name } = path.parse(controller.path);
27
+ const suffixReplacement = (_b = (_a = config_1.config.controllerOutput) === null || _a === void 0 ? void 0 : _a.fileName) !== null && _b !== void 0 ? _b : {};
28
+ const fileName = replaceSuffix(name, suffixReplacement);
29
+ return {
30
+ name: fileName,
31
+ ext: ext || '.ts',
32
+ };
33
+ }
34
+ exports.controllerFileName = controllerFileName;
35
+ function controllerRelativePath({ controller, inputRelativePath, }) {
36
+ return path.join(inputRelativePath, controller.path);
37
+ }
38
+ exports.controllerRelativePath = controllerRelativePath;
12
39
  /**
13
40
  * Generate the SDK's module and controllers files
14
41
  * @param modules
15
42
  * @returns
16
43
  */
17
- function generateSdkModules(modules) {
44
+ function generateSdkModules({ inputRelativePath, modules, }) {
18
45
  /** Generated module files */
19
46
  const genFiles = new Map();
47
+ /** Index file content: Exports all controllers */
48
+ const indexContent = [];
20
49
  // Iterate over each module
21
50
  for (const [moduleName, controllers] of modules) {
22
51
  // Iterate over each of the module's controllers
23
- for (const [controllerName, controller] of controllers) {
24
- /** Generated controller's content */
25
- const out = [];
26
- out.push('/// Parent module: ' + moduleName);
27
- out.push(`/// Controller: "${controllerName}" registered as "${controller.registrationName}" (${controller.methods.length} routes)`);
28
- out.push('');
29
- out.push('import { request } from "../central";');
30
- const imports = new Map();
31
- const depsToImport = new Array();
32
- // Iterate over each controller
33
- for (const method of controller.methods.values()) {
34
- const { parameters: args, query, body } = method.params;
35
- depsToImport.push(method.returnType);
36
- if (args) {
37
- depsToImport.push(...args.values());
38
- }
39
- if (query) {
40
- depsToImport.push(...query.values());
41
- }
42
- if (body) {
43
- if (body.full) {
44
- depsToImport.push(body.type);
45
- }
46
- else {
47
- depsToImport.push(...body.fields.values());
48
- }
49
- }
50
- }
51
- // Build the imports list
52
- for (const dep of depsToImport) {
53
- for (const [file, types] of dep.dependencies) {
54
- let imported = imports.get(file);
55
- if (!imported) {
56
- imported = [];
57
- imports.set(file, imported);
58
- }
59
- for (const typ of types) {
60
- if (!imported.includes(typ)) {
61
- imported.push(typ);
62
- }
63
- }
64
- }
65
- }
66
- for (const [file, types] of imports) {
67
- out.push(`import type { ${types.join(', ')} } from "../_types/${(0, typedeps_1.normalizeExternalFilePath)(file.replace(/\\/g, '/')).replace(/\\/g, '/')}";`);
52
+ for (const [_, controller] of controllers) {
53
+ const { ext: fileExt, name: fileName } = controllerFileName(controller);
54
+ genFiles.set(fileName + fileExt, generateController({ moduleName, controller, inputRelativePath }));
55
+ indexContent.push(`export { default as ${controllerExportName(controller)} } from "./${fileName}";`);
56
+ }
57
+ }
58
+ genFiles.set('index.ts', indexContent.join('\n'));
59
+ return genFiles;
60
+ }
61
+ exports.generateSdkModules = generateSdkModules;
62
+ function generateController({ controller, inputRelativePath, moduleName, }) {
63
+ const controllerName = controller.className;
64
+ /** Generated controller's content */
65
+ const out = [];
66
+ out.push('/// Module: ' + moduleName);
67
+ out.push(`/// Controller: ${controllerName}`);
68
+ out.push(`/// File Path: file:///./${controllerRelativePath({ controller, inputRelativePath })}`);
69
+ out.push('');
70
+ out.push('import { request } from "./central";');
71
+ const imports = new Map();
72
+ const depsToImport = new Array();
73
+ // Iterate over each controller
74
+ for (const method of controller.methods.values()) {
75
+ const { bodyParams, queryParams, routeParams } = method.params;
76
+ depsToImport.push(method.returnType);
77
+ depsToImport.push(...(0, params_1.getParamResolvedTypes)(routeParams));
78
+ depsToImport.push(...(0, params_1.getParamResolvedTypes)(queryParams));
79
+ depsToImport.push(...(0, params_1.getParamResolvedTypes)(bodyParams));
80
+ }
81
+ // Build the imports list
82
+ for (const dep of depsToImport) {
83
+ for (const [file, types] of dep.dependencies) {
84
+ let imported = imports.get(file);
85
+ if (!imported) {
86
+ imported = [];
87
+ imports.set(file, imported);
68
88
  }
69
- out.push('');
70
- out.push(`export default {`);
71
- const { mutations, queries } = controller.methods.reduce((acc, method) => {
72
- if (method.httpMethod === methods_1.SdkHttpMethod.Get) {
73
- acc.queries.push(method);
74
- }
75
- else {
76
- acc.mutations.push(method);
89
+ for (const typ of types) {
90
+ if (!imported.includes(typ)) {
91
+ imported.push(typ);
77
92
  }
78
- return acc;
79
- }, { mutations: [], queries: [] });
80
- out.push(` queries: {`);
81
- for (const method of queries) {
82
- out.push(generateSdkMethod(method));
83
93
  }
84
- out.push(' },');
85
- out.push(` mutations: {`);
86
- for (const method of mutations) {
87
- out.push(generateSdkMethod(method));
88
- }
89
- out.push(' },');
90
- out.push('');
91
- out.push('};');
92
- genFiles.set(path.join(moduleName, controller.camelClassName + '.ts'), out.join('\n'));
93
94
  }
94
- /** Generated module's content */
95
- const moduleContent = [];
96
- moduleContent.push('/// Module name: ' + moduleName);
97
- moduleContent.push('');
98
- for (const controller of controllers.keys()) {
99
- moduleContent.push(`export { default as ${controller} } from "./${controller}";`);
95
+ }
96
+ for (const [file, types] of imports) {
97
+ out.push(`import type { ${types.join(', ')} } from "../_types/${(0, typedeps_1.normalizeExternalFilePath)(file.replace(/\\/g, '/')).replace(/\\/g, '/')}";`);
98
+ }
99
+ out.push('');
100
+ out.push(`export default {`);
101
+ const { mutations, queries } = controller.methods.reduce((acc, method) => {
102
+ if (method.httpMethod === methods_1.SdkHttpMethod.Get) {
103
+ acc.queries.push(method);
104
+ }
105
+ else {
106
+ acc.mutations.push(method);
100
107
  }
101
- // Generate the SDK module file
102
- genFiles.set(path.join(moduleName, 'index.ts'), moduleContent.join('\n'));
108
+ return acc;
109
+ }, { mutations: [], queries: [] });
110
+ out.push(` queries: {`);
111
+ for (const method of queries) {
112
+ out.push(generateSdkMethod({ method, controller, inputRelativePath }));
103
113
  }
104
- return genFiles;
114
+ out.push(' },');
115
+ out.push(` mutations: {`);
116
+ for (const method of mutations) {
117
+ out.push(generateSdkMethod({ method, controller, inputRelativePath }));
118
+ }
119
+ out.push(' },');
120
+ out.push('');
121
+ out.push('};');
122
+ return out.join('\n');
105
123
  }
106
- exports.generateSdkModules = generateSdkModules;
107
- function generateSdkMethod(method) {
124
+ exports.generateController = generateController;
125
+ function generateSdkMethod({ controller, inputRelativePath, method, }) {
108
126
  const out = [];
109
- const ret = method.returnType.resolvedType;
110
- const promised = ret.startsWith('Promise<') ? ret : `Promise<${ret}>`;
111
127
  out.push('');
112
- out.push(` // ${method.httpMethod} @ ${(0, route_1.unparseRoute)(method.route)}`);
113
- out.push(` ${method.name}(${generateSdkMethodParams(method.params)}): ${promised} {`);
114
- out.push(generateCentralRequest(method).replace(/^/gm, ' '));
128
+ out.push(` /**`);
129
+ out.push(` * ${method.httpMethod} ${(0, route_1.unparseRoute)(method.route)}`);
130
+ out.push(` * ${controller.className}.${method.name}`);
131
+ out.push(` * file:///./${controllerRelativePath({ controller, inputRelativePath })}`);
132
+ out.push(` */`);
133
+ out.push(`${generateSdkMethodSignature(method)} {`);
134
+ out.push(generateSdkMethodBody(method));
115
135
  out.push(' },');
116
136
  return out.join('\n');
117
137
  }
118
138
  exports.generateSdkMethod = generateSdkMethod;
119
- /**
120
- * Generate the method parameters for a given SDK method
121
- * @param params
122
- * @returns
123
- */
124
- function generateSdkMethodParams(params) {
125
- // List of parameters (e.g. `id` in `/get/:id`, analyzed from the usages of the `@Param` decorator)
126
- const parameters = params.parameters ? [...params.parameters].map(([name, type]) => `${name}: ${type.resolvedType}`) : [];
127
- // List of query values (e.g. `id` in `?id=xxx`, analyzed from the usages of the `@Query` decorator)
128
- const query = params.query ? [...params.query].map(([name, type]) => `${name}: ${type.resolvedType}`) : [];
129
- // Body's content (type used with the `@Body` decorator)
130
- const body = params.body
131
- ? params.body.full
132
- ? params.body.type.resolvedType
133
- : '{ ' + [...params.body.fields].map(([name, type]) => `${name}: ${type.resolvedType}`).join(', ') + ' }'
134
- : null;
135
- // The ternary conditions below are made to eclipse useless parameters
136
- // For instance, if we're not expecting any query nor body, these two parameters can be omitted when calling the method
137
- return [
138
- `params: {${' ' + parameters.join(', ') + ' '}}${parameters.length === 0 && !body && query.length === 0 ? ' = {}' : ''}`,
139
- `body: ${body !== null && body !== void 0 ? body : '{}'}${!body && query.length === 0 ? ' = {}' : ''}`,
140
- `query: {${' ' + query.join(', ') + ' '}}${query.length === 0 ? ' = {}' : ''}`,
141
- ].join(', ');
139
+ function generateSdkMethodSignature(method) {
140
+ const ret = method.returnType.resolvedType;
141
+ const promised = ret.startsWith('Promise<') ? ret : `Promise<${ret}>`;
142
+ const paramsType = generateSdkMethodParams(method);
143
+ return `${method.name}(${paramsType}): ${promised}`;
144
+ }
145
+ exports.generateSdkMethodSignature = generateSdkMethodSignature;
146
+ function generateSdkMethodParams(method) {
147
+ const { httpMethod, name, params } = method;
148
+ if (httpMethod === methods_1.SdkHttpMethod.Get && params.bodyParams) {
149
+ (0, logging_1.panic)(`${httpMethod} ${name} should not have Body params`);
150
+ }
151
+ if (httpMethod !== methods_1.SdkHttpMethod.Get && params.queryParams) {
152
+ (0, logging_1.panic)(`${httpMethod} ${name} should not have Query params`);
153
+ }
154
+ const inputTypes = [];
155
+ if (params.routeParams) {
156
+ inputTypes.push(methodParamsToString(params.routeParams));
157
+ }
158
+ if (params.queryParams) {
159
+ inputTypes.push(methodParamsToString(params.queryParams));
160
+ }
161
+ if (params.bodyParams) {
162
+ inputTypes.push(methodParamsToString(params.bodyParams));
163
+ }
164
+ const mergedInputType = inputTypes.join(' &\n');
165
+ return mergedInputType ? `params: ${mergedInputType}` : '';
142
166
  }
143
167
  exports.generateSdkMethodParams = generateSdkMethodParams;
144
168
  /**
@@ -146,12 +170,40 @@ exports.generateSdkMethodParams = generateSdkMethodParams;
146
170
  * @param method
147
171
  * @returns
148
172
  */
149
- function generateCentralRequest(method) {
150
- const resolvedRoute = (0, route_1.resolveRouteWith)(method.route, (param) => '${params.' + param + '}');
173
+ function generateSdkMethodBody(method) {
174
+ const output = [];
175
+ const { httpMethod, route } = method;
176
+ const routeParams = (0, route_1.paramsFromRoute)(route);
177
+ const resolvedRoute = (0, route_1.resolveRouteWith)(route, (param) => '${' + param + '}');
178
+ const hasAnyParams = method.params.routeParams || method.params.queryParams || method.params.bodyParams;
151
179
  if (resolvedRoute instanceof Error) {
152
180
  (0, logging_1.panic)('Internal error: failed to resolve route: ' + resolvedRoute.message);
153
181
  }
154
- return `return request('${method.httpMethod}', \`${resolvedRoute}\`, body, query)`;
182
+ const routeParamsSpread = routeParams.length > 0 ? `${routeParams.join(', ')},` : '';
183
+ // Destructure parameters if they exist
184
+ if (hasAnyParams) {
185
+ output.push(`const { ${routeParamsSpread} ...rest } = params`);
186
+ }
187
+ const isGet = httpMethod === methods_1.SdkHttpMethod.Get;
188
+ const body = isGet || !hasAnyParams ? 'null' : 'rest';
189
+ const query = isGet && hasAnyParams ? 'rest' : '{}';
190
+ output.push(`return request('${httpMethod}', \`${resolvedRoute}\`, ${body}, ${query})`);
191
+ return output.join('\n');
192
+ }
193
+ exports.generateSdkMethodBody = generateSdkMethodBody;
194
+ function methodParamsToString(params) {
195
+ if (params === null) {
196
+ return '';
197
+ }
198
+ if ((0, params_1.isParamResolvedType)(params)) {
199
+ return params.resolvedType;
200
+ }
201
+ const output = ['{'];
202
+ for (const [name, type] of Object.entries(params)) {
203
+ output.push(`${name}: ${type.resolvedType},`);
204
+ }
205
+ output.push('}');
206
+ return output.join('\n');
155
207
  }
156
- exports.generateCentralRequest = generateCentralRequest;
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VubW9kdWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nZW5lcmF0b3IvZ2VubW9kdWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQUVILDZCQUE0QjtBQUU1QixpREFBOEQ7QUFFOUQsNkNBQWtFO0FBQ2xFLG1EQUFrRjtBQUNsRix3Q0FBa0M7QUFFbEM7Ozs7R0FJRztBQUNILFNBQWdCLGtCQUFrQixDQUFDLE9BQW1CO0lBQ3BELDZCQUE2QjtJQUM3QixNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQTtJQUUxQywyQkFBMkI7SUFDM0IsS0FBSyxNQUFNLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxJQUFJLE9BQU8sRUFBRTtRQUMvQyxnREFBZ0Q7UUFDaEQsS0FBSyxNQUFNLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxJQUFJLFdBQVcsRUFBRTtZQUN0RCxxQ0FBcUM7WUFDckMsTUFBTSxHQUFHLEdBQWEsRUFBRSxDQUFBO1lBRXhCLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsVUFBVSxDQUFDLENBQUE7WUFDNUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsY0FBYyxvQkFBb0IsVUFBVSxDQUFDLGdCQUFnQixNQUFNLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxVQUFVLENBQUMsQ0FBQTtZQUNwSSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ1osR0FBRyxDQUFDLElBQUksQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFBO1lBRWpELE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFBO1lBRTNDLE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxFQUFvQixDQUFBO1lBRWxELCtCQUErQjtZQUMvQixLQUFLLE1BQU0sTUFBTSxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2hELE1BQU0sRUFBRSxV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
208
+ exports.methodParamsToString = methodParamsToString;
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VubW9kdWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nZW5lcmF0b3IvZ2VubW9kdWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQUVILDZCQUE2QjtBQUk3QixpREFBOEQ7QUFDOUQsK0NBQStGO0FBQy9GLDZDQUFtRjtBQUNuRixtREFBa0Y7QUFDbEYsc0NBQWtDO0FBQ2xDLHdDQUFrQztBQUVsQyxTQUFnQixhQUFhLENBQUMsS0FBYSxFQUFFLEVBQUUsU0FBUyxHQUFHLEVBQUUsRUFBRSxZQUFZLEdBQUcsRUFBRSxFQUFpRDtJQUMvSCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQTtBQUN0RSxDQUFDO0FBRkQsc0NBRUM7QUFFRCxTQUFnQixvQkFBb0IsQ0FBQyxVQUF5Qjs7SUFDNUQsTUFBTSxpQkFBaUIsR0FBRyxNQUFBLE1BQUEsZUFBTSxDQUFDLGdCQUFnQiwwQ0FBRSxVQUFVLG1DQUFJLEVBQUUsQ0FBQTtJQUNuRSxPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLGlCQUFpQixDQUFDLENBQUE7QUFDL0QsQ0FBQztBQUhELG9EQUdDO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsVUFBeUI7O0lBQzFELE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDakQsTUFBTSxpQkFBaUIsR0FBRyxNQUFBLE1BQUEsZUFBTSxDQUFDLGdCQUFnQiwwQ0FBRSxRQUFRLG1DQUFJLEVBQUUsQ0FBQTtJQUNqRSxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUE7SUFDdkQsT0FBTztRQUNMLElBQUksRUFBRSxRQUFRO1FBQ2QsR0FB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
@@ -59,4 +59,4 @@ function generateSdkTypeFiles(sdkTypes) {
59
59
  return genFiles;
60
60
  }
61
61
  exports.generateSdkTypeFiles = generateSdkTypeFiles;
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2VuZXJhdG9yL2dlbnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsNkJBQTRCO0FBRTVCLG1EQUFnRTtBQUVoRTs7OztHQUlHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsUUFBK0I7SUFDbEUsMkJBQTJCO0lBQzNCLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFBO0lBRTFDLGdHQUFnRztJQUNoRyxvR0FBb0c7SUFDcEcsOENBQThDO0lBQzlDLEtBQUssTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxRQUFRLEVBQUU7UUFDcEMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFBO1FBRWQsMENBQTBDO1FBQzFDLE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFBO1FBRTNDLCtDQUErQztRQUMvQyxLQUFLLE1BQU0sU0FBUyxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN0Qyx3REFBd0Q7WUFDeEQsS0FBSyxNQUFNLEdBQUcsSUFBSSxTQUFTLENBQUMsWUFBWSxFQUFFO2dCQUN4QyxzRUFBc0U7Z0JBQ3RFLElBQUksR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEVBQUU7b0JBQzdCLFNBQVE7aUJBQ1Q7Z0JBRUQsMkNBQTJDO2dCQUMzQyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO2dCQUVqRCxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNiLFFBQVEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtvQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLENBQUE7aUJBQzdDO2dCQUVELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDcEMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUE7aUJBQzVCO2FBQ0Y7U0FDRjtRQUVELHNEQUFzRDtRQUN0RCxHQUFHLENBQUMsSUFBSSxDQUNOLENBQUMsR0FBRyxPQUFPLENBQUM7YUFDVCxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3hCLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFBLG9DQUF5QixFQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUN2RyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQUUsT0FBTyxHQUFHLElBQUksR0FBRyxPQUFPLENBQUE7WUFDcEQsT0FBTyxpQkFBaUIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFDdEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxPQUMzRSxHQUFHLENBQUE7UUFDTCxDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2QsQ0FBQTtRQUVELGlEQUFpRDtRQUNqRCxLQUFLLE1BQU0sU0FBUyxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN0QyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFBO1NBQ2pEO1FBRUQseUJBQXlCO1FBQ3pCLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtLQUNuQztJQUVELE9BQU8sUUFBUSxDQUFBO0FBQ2pCLENBQUM7QUEzREQsb0RBMkRDIn0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2VuZXJhdG9yL2dlbnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsNkJBQTRCO0FBRzVCLG1EQUFnRTtBQUVoRTs7OztHQUlHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsUUFBK0I7SUFDbEUsMkJBQTJCO0lBQzNCLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFBO0lBRTFDLGdHQUFnRztJQUNoRyxvR0FBb0c7SUFDcEcsOENBQThDO0lBQzlDLEtBQUssTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNyQyxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUE7UUFFZCwwQ0FBMEM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUE7UUFFM0MsK0NBQStDO1FBQy9DLEtBQUssTUFBTSxTQUFTLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDdkMsd0RBQXdEO1lBQ3hELEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN6QyxzRUFBc0U7Z0JBQ3RFLElBQUksR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDOUIsU0FBUTtnQkFDVixDQUFDO2dCQUVELDJDQUEyQztnQkFDM0MsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtnQkFFakQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNkLFFBQVEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtvQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLENBQUE7Z0JBQzlDLENBQUM7Z0JBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ3JDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUM3QixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFFRCxzREFBc0Q7UUFDdEQsR0FBRyxDQUFDLElBQUksQ0FDTixDQUFDLEdBQUcsT0FBTyxDQUFDO2FBQ1QsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUN4QixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBQSxvQ0FBeUIsRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDdkcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO2dCQUFFLE9BQU8sR0FBRyxJQUFJLEdBQUcsT0FBTyxDQUFBO1lBQ3BELE9BQU8saUJBQWlCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQ3RDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsT0FDM0UsR0FBRyxDQUFBO1FBQ0wsQ0FBQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUNkLENBQUE7UUFFRCxpREFBaUQ7UUFDakQsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUN2QyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFBO1FBQ2xELENBQUM7UUFFRCx5QkFBeUI7UUFDekIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCxPQUFPLFFBQVEsQ0FBQTtBQUNqQixDQUFDO0FBM0RELG9EQTJEQyJ9
@@ -3,4 +3,4 @@
3
3
  */
4
4
  import { SdkContent } from '../analyzer';
5
5
  import { Config } from '../config';
6
- export default function generatorCli(config: Config, sdkContent: SdkContent): Promise<void>;
6
+ export default function generateAPIClient(config: Config, sdkContent: SdkContent): Promise<void>;