@nestia/sdk 2.0.0-dev.20230991 → 2.0.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.
- package/assets/bundle/api/utils/NestiaSimulator.ts +5 -14
- package/lib/INestiaConfig.d.ts +60 -47
- package/lib/NestiaSdkApplication.d.ts +6 -5
- package/lib/NestiaSdkApplication.js +30 -87
- package/lib/NestiaSdkApplication.js.map +1 -1
- package/lib/analyses/ControllerAnalyzer.js +8 -5
- package/lib/analyses/ControllerAnalyzer.js.map +1 -1
- package/lib/analyses/ReflectAnalyzer.js +9 -1
- package/lib/analyses/ReflectAnalyzer.js.map +1 -1
- package/lib/executable/internal/NestiaConfigLoader.d.ts +7 -0
- package/lib/executable/internal/NestiaConfigLoader.js +582 -0
- package/lib/executable/internal/NestiaConfigLoader.js.map +1 -0
- package/lib/executable/internal/NestiaProjectGetter.d.ts +3 -0
- package/lib/executable/internal/NestiaProjectGetter.js +28 -0
- package/lib/executable/internal/NestiaProjectGetter.js.map +1 -0
- package/lib/executable/internal/NestiaSdkCommand.d.ts +3 -3
- package/lib/executable/internal/NestiaSdkCommand.js +13 -104
- package/lib/executable/internal/NestiaSdkCommand.js.map +1 -1
- package/lib/executable/internal/{nestia.config.getter.js → nestia.project.getter.js} +3 -3
- package/lib/executable/internal/nestia.project.getter.js.map +1 -0
- package/lib/executable/sdk.js +3 -3
- package/lib/executable/sdk.js.map +1 -1
- package/lib/generates/SdkGenerator.d.ts +2 -1
- package/lib/generates/SdkGenerator.js +7 -3
- package/lib/generates/SdkGenerator.js.map +1 -1
- package/lib/generates/SwaggerGenerator.js +26 -9
- package/lib/generates/SwaggerGenerator.js.map +1 -1
- package/lib/generates/internal/E2eFileProgrammer.js +21 -15
- package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
- package/lib/generates/internal/{DistributionComposer.d.ts → SdkDistributionComposer.d.ts} +1 -1
- package/lib/generates/internal/{DistributionComposer.js → SdkDistributionComposer.js} +8 -12
- package/lib/generates/internal/SdkDistributionComposer.js.map +1 -0
- package/lib/generates/internal/SdkDtoGenerator.d.ts +9 -0
- package/lib/generates/internal/SdkDtoGenerator.js +264 -0
- package/lib/generates/internal/SdkDtoGenerator.js.map +1 -0
- package/lib/generates/internal/SdkFileProgrammer.js +8 -7
- package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkFunctionProgrammer.js +32 -22
- package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkImportWizard.d.ts +2 -0
- package/lib/generates/internal/SdkImportWizard.js +10 -0
- package/lib/generates/internal/SdkImportWizard.js.map +1 -1
- package/lib/generates/internal/SdkSimulationProgrammer.js +61 -25
- package/lib/generates/internal/SdkSimulationProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkTypeDefiner.d.ts +11 -0
- package/lib/generates/internal/SdkTypeDefiner.js +82 -0
- package/lib/generates/internal/SdkTypeDefiner.js.map +1 -0
- package/lib/generates/internal/SwaggerSchemaGenerator.d.ts +1 -1
- package/lib/generates/internal/SwaggerSchemaGenerator.js +67 -75
- package/lib/generates/internal/SwaggerSchemaGenerator.js.map +1 -1
- package/lib/generates/internal/SwaggerSchemaValidator.js +0 -8
- package/lib/generates/internal/SwaggerSchemaValidator.js.map +1 -1
- package/lib/structures/IController.d.ts +2 -0
- package/lib/structures/IRoute.d.ts +9 -2
- package/lib/utils/ImportDictionary.d.ts +1 -2
- package/lib/utils/ImportDictionary.js +28 -24
- package/lib/utils/ImportDictionary.js.map +1 -1
- package/package.json +8 -8
- package/src/INestiaConfig.ts +65 -50
- package/src/NestiaSdkApplication.ts +39 -84
- package/src/analyses/ControllerAnalyzer.ts +10 -8
- package/src/analyses/ReflectAnalyzer.ts +8 -0
- package/src/executable/internal/NestiaConfigLoader.ts +82 -0
- package/src/executable/internal/NestiaProjectGetter.ts +11 -0
- package/src/executable/internal/NestiaSdkCommand.ts +23 -146
- package/src/executable/internal/{nestia.config.getter.ts → nestia.project.getter.ts} +2 -2
- package/src/executable/sdk.ts +3 -3
- package/src/generates/SdkGenerator.ts +9 -2
- package/src/generates/SwaggerGenerator.ts +37 -9
- package/src/generates/internal/E2eFileProgrammer.ts +33 -20
- package/src/generates/internal/{DistributionComposer.ts → SdkDistributionComposer.ts} +3 -6
- package/src/generates/internal/SdkDtoGenerator.ts +384 -0
- package/src/generates/internal/SdkFileProgrammer.ts +8 -7
- package/src/generates/internal/SdkFunctionProgrammer.ts +71 -37
- package/src/generates/internal/SdkImportWizard.ts +14 -0
- package/src/generates/internal/SdkSimulationProgrammer.ts +71 -37
- package/src/generates/internal/SdkTypeDefiner.ts +120 -0
- package/src/generates/internal/SwaggerSchemaGenerator.ts +94 -92
- package/src/generates/internal/SwaggerSchemaValidator.ts +0 -12
- package/src/structures/IController.ts +2 -0
- package/src/structures/IRoute.ts +10 -2
- package/src/utils/ImportDictionary.ts +29 -26
- package/lib/executable/internal/NestiaConfigCompilerOptions.d.ts +0 -12
- package/lib/executable/internal/NestiaConfigCompilerOptions.js +0 -18
- package/lib/executable/internal/NestiaConfigCompilerOptions.js.map +0 -1
- package/lib/executable/internal/NestiaSdkConfig.d.ts +0 -4
- package/lib/executable/internal/NestiaSdkConfig.js +0 -1019
- package/lib/executable/internal/NestiaSdkConfig.js.map +0 -1
- package/lib/executable/internal/nestia.config.getter.js.map +0 -1
- package/lib/generates/internal/DistributionComposer.js.map +0 -1
- package/src/executable/internal/NestiaConfigCompilerOptions.ts +0 -19
- package/src/executable/internal/NestiaSdkConfig.ts +0 -36
- /package/lib/executable/internal/{nestia.config.getter.d.ts → nestia.project.getter.d.ts} +0 -0
|
@@ -7,6 +7,7 @@ export namespace NestiaSimulator {
|
|
|
7
7
|
host: string;
|
|
8
8
|
path: string;
|
|
9
9
|
method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
|
|
10
|
+
contentType: string;
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
export const assert = (props: IProps) => {
|
|
@@ -18,6 +19,7 @@ export namespace NestiaSimulator {
|
|
|
18
19
|
};
|
|
19
20
|
const param =
|
|
20
21
|
(props: IProps) =>
|
|
22
|
+
(name: string) =>
|
|
21
23
|
<T>(task: () => T): void => {
|
|
22
24
|
validate(
|
|
23
25
|
(exp) => `URL parameter "${name}" is not ${exp.expected} type.`,
|
|
@@ -51,6 +53,9 @@ export namespace NestiaSimulator {
|
|
|
51
53
|
props.method,
|
|
52
54
|
props.host + props.path,
|
|
53
55
|
400,
|
|
56
|
+
{
|
|
57
|
+
"Content-Type": props.contentType,
|
|
58
|
+
},
|
|
54
59
|
JSON.stringify({
|
|
55
60
|
method: exp.method,
|
|
56
61
|
path: path ?? exp.path,
|
|
@@ -63,17 +68,3 @@ export namespace NestiaSimulator {
|
|
|
63
68
|
}
|
|
64
69
|
};
|
|
65
70
|
}
|
|
66
|
-
|
|
67
|
-
interface IUuid {
|
|
68
|
-
/**
|
|
69
|
-
* @format uuid
|
|
70
|
-
*/
|
|
71
|
-
value: string | null;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
interface IDate {
|
|
75
|
-
/**
|
|
76
|
-
* @format date
|
|
77
|
-
*/
|
|
78
|
-
value: string | null;
|
|
79
|
-
}
|
package/lib/INestiaConfig.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import type ts from "typescript";
|
|
2
1
|
import type { ISwagger } from "./structures/ISwagger";
|
|
3
|
-
import { ISwaggerInfo } from "./structures/ISwaggerInfo";
|
|
4
|
-
import { ISwaggerSecurityScheme } from "./structures/ISwaggerSecurityScheme";
|
|
5
|
-
import type { StripEnums } from "./utils/StripEnums";
|
|
2
|
+
import type { ISwaggerInfo } from "./structures/ISwaggerInfo";
|
|
3
|
+
import type { ISwaggerSecurityScheme } from "./structures/ISwaggerSecurityScheme";
|
|
6
4
|
/**
|
|
7
5
|
* Definition for the `nestia.config.ts` file.
|
|
8
6
|
*
|
|
@@ -38,6 +36,20 @@ export interface INestiaConfig {
|
|
|
38
36
|
* Recommend to use `"packages/api"` value.
|
|
39
37
|
*/
|
|
40
38
|
distribute?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Allow simulation mode.
|
|
41
|
+
*
|
|
42
|
+
* If you configure this property to be `true`, the SDK library would be contain
|
|
43
|
+
* simulation mode. In the simulation mode, the SDK library would not communicate
|
|
44
|
+
* with the real backend server, but just returns random mock-up data
|
|
45
|
+
* with requestion data validation.
|
|
46
|
+
*
|
|
47
|
+
* For reference, random mock-up data would be generated by `typia.random<T>()`
|
|
48
|
+
* function.
|
|
49
|
+
*
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
simulate?: boolean;
|
|
41
53
|
/**
|
|
42
54
|
* Target directory that e2e test functions would be placed in.
|
|
43
55
|
*
|
|
@@ -49,26 +61,49 @@ export interface INestiaConfig {
|
|
|
49
61
|
*/
|
|
50
62
|
e2e?: string;
|
|
51
63
|
/**
|
|
52
|
-
*
|
|
64
|
+
* Whether to use propagation mode or not.
|
|
65
|
+
*
|
|
66
|
+
* If being configured, interaction functions of the SDK library would
|
|
67
|
+
* perform the propagation mode. The propagation mode means that never
|
|
68
|
+
* throwing exception even when status code is not 200 (or 201), but just
|
|
69
|
+
* returning the {@link IPropagation} typed instance, which can specify its body
|
|
70
|
+
* type through discriminated union determined by status code.
|
|
71
|
+
*
|
|
72
|
+
* @default false
|
|
73
|
+
*/
|
|
74
|
+
propagate?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Whether to clone DTO structures or not.
|
|
77
|
+
*
|
|
78
|
+
* If being configured, all of DTOs used in the backend server would be cloned
|
|
79
|
+
* into the `structures` directory, and the SDK library would be refer to the
|
|
80
|
+
* cloned DTOs instead of the original.
|
|
81
|
+
*
|
|
82
|
+
* @default false
|
|
83
|
+
*/
|
|
84
|
+
clone?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Whether to wrap DTO by primitive type.
|
|
87
|
+
*
|
|
88
|
+
* If you don't configure this property as `false`, all of DTOs in the
|
|
89
|
+
* SDK library would be automatically wrapped by {@link Primitive} type.
|
|
53
90
|
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
91
|
+
* For refenrece, if a DTO type be capsuled by the {@link Primitive} type,
|
|
92
|
+
* all of methods in the DTO type would be automatically erased. Also, if
|
|
93
|
+
* the DTO has a `toJSON()` method, the DTO type would be automatically
|
|
94
|
+
* converted to return type of the `toJSON()` method.
|
|
58
95
|
*
|
|
59
|
-
*
|
|
60
|
-
|
|
96
|
+
* @default true
|
|
97
|
+
*/
|
|
98
|
+
primitive?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Location of `tsconfig.json` file.
|
|
61
101
|
*
|
|
62
|
-
*
|
|
63
|
-
* const nestiaConfig: IConfiguration;
|
|
102
|
+
* If be configured, target file will replace the `tsconfig.json` file.
|
|
64
103
|
*
|
|
65
|
-
*
|
|
66
|
-
* ...tsconfig.compilerOptions,
|
|
67
|
-
* ...(nestiaConfig.compilerOptions ?? {})
|
|
68
|
-
* }
|
|
69
|
-
* ```
|
|
104
|
+
* @default tsconfig.json
|
|
70
105
|
*/
|
|
71
|
-
|
|
106
|
+
project?: string;
|
|
72
107
|
/**
|
|
73
108
|
* Whether to assert parameter types or not.
|
|
74
109
|
*
|
|
@@ -96,34 +131,6 @@ export interface INestiaConfig {
|
|
|
96
131
|
* @default false
|
|
97
132
|
*/
|
|
98
133
|
json?: boolean;
|
|
99
|
-
/**
|
|
100
|
-
* Whether to wrap DTO by primitive type.
|
|
101
|
-
*
|
|
102
|
-
* If you don't configure this property as `false`, all of DTOs in the
|
|
103
|
-
* SDK library would be automatically wrapped by {@link Primitive} type.
|
|
104
|
-
*
|
|
105
|
-
* For refenrece, if a DTO type be capsuled by the {@link Primitive} type,
|
|
106
|
-
* all of methods in the DTO type would be automatically erased. Also, if
|
|
107
|
-
* the DTO has a `toJSON()` method, the DTO type would be automatically
|
|
108
|
-
* converted to return type of the `toJSON()` method.
|
|
109
|
-
*
|
|
110
|
-
* @default true
|
|
111
|
-
*/
|
|
112
|
-
primitive?: boolean;
|
|
113
|
-
/**
|
|
114
|
-
* Allow simulation mode.
|
|
115
|
-
*
|
|
116
|
-
* If you configure this property to be `true`, the SDK library would be contain
|
|
117
|
-
* simulation mode. In the simulation mode, the SDK library would not communicate
|
|
118
|
-
* with the real backend server, but just returns random mock-up data
|
|
119
|
-
* with requestion data validation.
|
|
120
|
-
*
|
|
121
|
-
* For reference, random mock-up data would be generated by `typia.random<T>()`
|
|
122
|
-
* function.
|
|
123
|
-
*
|
|
124
|
-
* @default false
|
|
125
|
-
*/
|
|
126
|
-
simulate?: boolean;
|
|
127
134
|
}
|
|
128
135
|
export declare namespace INestiaConfig {
|
|
129
136
|
/**
|
|
@@ -179,5 +186,11 @@ export declare namespace INestiaConfig {
|
|
|
179
186
|
* @default false
|
|
180
187
|
*/
|
|
181
188
|
decompose?: boolean;
|
|
189
|
+
operationId?(props: {
|
|
190
|
+
class: string;
|
|
191
|
+
function: string;
|
|
192
|
+
method: "HEAD" | "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
|
|
193
|
+
path: string;
|
|
194
|
+
}): string;
|
|
182
195
|
}
|
|
183
196
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
1
2
|
import { INestiaConfig } from "./INestiaConfig";
|
|
2
3
|
export declare class NestiaSdkApplication {
|
|
3
|
-
private readonly
|
|
4
|
-
private readonly
|
|
5
|
-
|
|
4
|
+
private readonly config;
|
|
5
|
+
private readonly compilerOptions;
|
|
6
|
+
private readonly bundler_;
|
|
7
|
+
constructor(config: INestiaConfig, compilerOptions: ts.CompilerOptions);
|
|
8
|
+
private is_not_excluded;
|
|
6
9
|
e2e(): Promise<void>;
|
|
7
10
|
sdk(): Promise<void>;
|
|
8
11
|
swagger(): Promise<void>;
|
|
9
12
|
private generate;
|
|
10
|
-
private prepare;
|
|
11
|
-
private is_not_excluded;
|
|
12
13
|
}
|
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -38,13 +15,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
38
15
|
exports.NestiaSdkApplication = void 0;
|
|
39
16
|
const fs_1 = __importDefault(require("fs"));
|
|
40
17
|
const path_1 = __importDefault(require("path"));
|
|
41
|
-
const runner = __importStar(require("ts-node"));
|
|
42
18
|
const tstl_1 = require("tstl");
|
|
43
19
|
const typescript_1 = __importDefault(require("typescript"));
|
|
44
20
|
const AccessorAnalyzer_1 = require("./analyses/AccessorAnalyzer");
|
|
45
21
|
const ControllerAnalyzer_1 = require("./analyses/ControllerAnalyzer");
|
|
46
22
|
const ReflectAnalyzer_1 = require("./analyses/ReflectAnalyzer");
|
|
47
|
-
const NestiaConfigCompilerOptions_1 = require("./executable/internal/NestiaConfigCompilerOptions");
|
|
48
23
|
const E2eGenerator_1 = require("./generates/E2eGenerator");
|
|
49
24
|
const SdkGenerator_1 = require("./generates/SdkGenerator");
|
|
50
25
|
const SwaggerGenerator_1 = require("./generates/SwaggerGenerator");
|
|
@@ -52,14 +27,15 @@ const ArrayUtil_1 = require("./utils/ArrayUtil");
|
|
|
52
27
|
const NestiaConfigUtil_1 = require("./utils/NestiaConfigUtil");
|
|
53
28
|
const SourceFinder_1 = require("./utils/SourceFinder");
|
|
54
29
|
class NestiaSdkApplication {
|
|
55
|
-
constructor(
|
|
56
|
-
this.
|
|
57
|
-
this.
|
|
58
|
-
|
|
30
|
+
constructor(config, compilerOptions) {
|
|
31
|
+
this.config = config;
|
|
32
|
+
this.compilerOptions = compilerOptions;
|
|
33
|
+
this.bundler_ = new tstl_1.Singleton(() => __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
if (!this.config)
|
|
59
35
|
return () => false;
|
|
60
36
|
const bundles = yield fs_1.default.promises.readdir(SdkGenerator_1.SdkGenerator.BUNDLE_PATH);
|
|
61
37
|
const tuples = yield ArrayUtil_1.ArrayUtil.asyncMap(bundles, (file) => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
const relative = path_1.default.join(this.
|
|
38
|
+
const relative = path_1.default.join(this.config.output, file);
|
|
63
39
|
const location = path_1.default.join(SdkGenerator_1.SdkGenerator.BUNDLE_PATH, file);
|
|
64
40
|
const stats = yield fs_1.default.promises.stat(location);
|
|
65
41
|
return new tstl_1.Pair(relative, stats.isDirectory());
|
|
@@ -74,11 +50,20 @@ class NestiaSdkApplication {
|
|
|
74
50
|
};
|
|
75
51
|
}));
|
|
76
52
|
}
|
|
53
|
+
is_not_excluded(file) {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
if (this.config.output)
|
|
56
|
+
return (file.indexOf(path_1.default.join(this.config.output, "functional")) ===
|
|
57
|
+
-1 && (yield this.bundler_.get())(file) === false);
|
|
58
|
+
const content = yield fs_1.default.promises.readFile(file, "utf8");
|
|
59
|
+
return (content.indexOf(" * @nestia Generated by Nestia - https://github.com/samchon/nestia") === -1);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
77
62
|
e2e() {
|
|
78
63
|
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
if (!this.
|
|
64
|
+
if (!this.config.output)
|
|
80
65
|
throw new Error("Error on NestiaApplication.e2e(): output path of SDK is not specified.");
|
|
81
|
-
else if (!this.
|
|
66
|
+
else if (!this.config.e2e)
|
|
82
67
|
throw new Error("Error on NestiaApplication.e2e(): output path of e2e test files is not specified.");
|
|
83
68
|
const validate = (title) => (location) => __awaiter(this, void 0, void 0, function* () {
|
|
84
69
|
const parent = path_1.default.resolve(location + "/..");
|
|
@@ -86,36 +71,36 @@ class NestiaSdkApplication {
|
|
|
86
71
|
if (stats.isDirectory() === false)
|
|
87
72
|
throw new Error(`Error on NestiaApplication.e2e(): output directory of ${title} does not exists.`);
|
|
88
73
|
});
|
|
89
|
-
yield validate("sdk")(this.
|
|
90
|
-
yield validate("e2e")(this.
|
|
74
|
+
yield validate("sdk")(this.config.output);
|
|
75
|
+
yield validate("e2e")(this.config.e2e);
|
|
91
76
|
title("Nestia E2E Generator");
|
|
92
|
-
yield this.generate("e2e", (config) => config, () => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
|
|
93
|
-
yield SdkGenerator_1.SdkGenerator.generate(config)(routes);
|
|
77
|
+
yield this.generate("e2e", (config) => config, (checker) => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
yield SdkGenerator_1.SdkGenerator.generate(checker)(config)(routes);
|
|
94
79
|
yield E2eGenerator_1.E2eGenerator.generate(config)(routes);
|
|
95
80
|
}));
|
|
96
81
|
});
|
|
97
82
|
}
|
|
98
83
|
sdk() {
|
|
99
84
|
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
-
if (!this.
|
|
85
|
+
if (!this.config.output)
|
|
101
86
|
throw new Error("Error on NestiaApplication.sdk(): output path is not specified.");
|
|
102
|
-
const parent = path_1.default.resolve(this.
|
|
87
|
+
const parent = path_1.default.resolve(this.config.output + "/..");
|
|
103
88
|
const stats = yield fs_1.default.promises.lstat(parent);
|
|
104
89
|
if (stats.isDirectory() === false)
|
|
105
90
|
throw new Error("Error on NestiaApplication.sdk(): output directory does not exists.");
|
|
106
91
|
title("Nestia SDK Generator");
|
|
107
|
-
yield this.generate("sdk", (config) => config,
|
|
92
|
+
yield this.generate("sdk", (config) => config, SdkGenerator_1.SdkGenerator.generate);
|
|
108
93
|
});
|
|
109
94
|
}
|
|
110
95
|
swagger() {
|
|
111
96
|
var _a;
|
|
112
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
-
if (!((_a = this.
|
|
98
|
+
if (!((_a = this.config.swagger) === null || _a === void 0 ? void 0 : _a.output))
|
|
114
99
|
throw new Error(`Error on NestiaApplication.swagger(): output path of the "swagger.json" is not specified.`);
|
|
115
|
-
const parsed = path_1.default.parse(this.
|
|
100
|
+
const parsed = path_1.default.parse(this.config.swagger.output);
|
|
116
101
|
const directory = !!parsed.ext
|
|
117
102
|
? path_1.default.resolve(parsed.dir)
|
|
118
|
-
: this.
|
|
103
|
+
: this.config.swagger.output;
|
|
119
104
|
const stats = yield fs_1.default.promises.lstat(directory);
|
|
120
105
|
if (stats.isDirectory() === false)
|
|
121
106
|
throw new Error("Error on NestiaApplication.swagger(): output directory does not exists.");
|
|
@@ -125,10 +110,8 @@ class NestiaSdkApplication {
|
|
|
125
110
|
}
|
|
126
111
|
generate(method, config, archiver) {
|
|
127
112
|
return __awaiter(this, void 0, void 0, function* () {
|
|
128
|
-
// MOUNT TS-NODE
|
|
129
|
-
this.prepare(method);
|
|
130
113
|
// LOAD CONTROLLER FILES
|
|
131
|
-
const input = NestiaConfigUtil_1.NestiaConfigUtil.input(this.
|
|
114
|
+
const input = NestiaConfigUtil_1.NestiaConfigUtil.input(this.config.input);
|
|
132
115
|
const fileList = yield ArrayUtil_1.ArrayUtil.asyncFilter(yield SourceFinder_1.SourceFinder.find({
|
|
133
116
|
include: input.include,
|
|
134
117
|
exclude: input.exclude,
|
|
@@ -160,7 +143,7 @@ class NestiaSdkApplication {
|
|
|
160
143
|
.reduce((a, b) => a + b, 0)}`);
|
|
161
144
|
// ANALYZE TYPESCRIPT CODE
|
|
162
145
|
console.log("Analyzing source codes");
|
|
163
|
-
const program = typescript_1.default.createProgram(controllers.map((c) => c.file), this.
|
|
146
|
+
const program = typescript_1.default.createProgram(controllers.map((c) => c.file), this.compilerOptions);
|
|
164
147
|
const checker = program.getTypeChecker();
|
|
165
148
|
const routeList = [];
|
|
166
149
|
for (const c of controllers) {
|
|
@@ -180,47 +163,7 @@ class NestiaSdkApplication {
|
|
|
180
163
|
.join("\n"));
|
|
181
164
|
// DO GENERATE
|
|
182
165
|
AccessorAnalyzer_1.AccessorAnalyzer.analyze(routeList);
|
|
183
|
-
yield archiver(checker)(config(this.
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
prepare(method) {
|
|
187
|
-
var _a, _b, _c;
|
|
188
|
-
// CONSTRUCT OPTIONS
|
|
189
|
-
if (!this.config_.compilerOptions)
|
|
190
|
-
this.config_.compilerOptions =
|
|
191
|
-
NestiaConfigCompilerOptions_1.NestiaConfigCompilerOptions.DEFAULT_OPTIONS;
|
|
192
|
-
const absoluted = !!((_a = this.config_.compilerOptions) === null || _a === void 0 ? void 0 : _a.baseUrl);
|
|
193
|
-
// CHECK STRICT OPTION
|
|
194
|
-
const strict = ((_b = this.config_.compilerOptions) === null || _b === void 0 ? void 0 : _b.strictNullChecks) !== undefined
|
|
195
|
-
? !!this.config_.compilerOptions.strictNullChecks
|
|
196
|
-
: !!((_c = this.config_.compilerOptions) === null || _c === void 0 ? void 0 : _c.strict);
|
|
197
|
-
if (strict === false)
|
|
198
|
-
throw new Error(`Error on NestiaSdkApplication.${method}(): nestia requires \`compilerOptions.strictNullChecks\` to be true.`);
|
|
199
|
-
const ttsc = typescript_1.default.version < "5.0.0" &&
|
|
200
|
-
(() => {
|
|
201
|
-
try {
|
|
202
|
-
require.resolve("ttypescript");
|
|
203
|
-
return true;
|
|
204
|
-
}
|
|
205
|
-
catch (e) {
|
|
206
|
-
return false;
|
|
207
|
-
}
|
|
208
|
-
})();
|
|
209
|
-
// MOUNT TS-NODE
|
|
210
|
-
runner.register({
|
|
211
|
-
emit: false,
|
|
212
|
-
compiler: ttsc ? "ttypescript" : undefined,
|
|
213
|
-
compilerOptions: this.config_.compilerOptions,
|
|
214
|
-
require: absoluted ? ["tsconfig-paths/register"] : undefined,
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
is_not_excluded(file) {
|
|
218
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
219
|
-
if (this.config_.output)
|
|
220
|
-
return (file.indexOf(path_1.default.join(this.config_.output, "functional")) ===
|
|
221
|
-
-1 && (yield this.bundle_checker_.get())(file) === false);
|
|
222
|
-
const content = yield fs_1.default.promises.readFile(file, "utf8");
|
|
223
|
-
return (content.indexOf(" * @nestia Generated by Nestia - https://github.com/samchon/nestia") === -1);
|
|
166
|
+
yield archiver(checker)(config(this.config))(routeList);
|
|
224
167
|
});
|
|
225
168
|
}
|
|
226
169
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,8 +80,8 @@ var ControllerAnalyzer;
|
|
|
80
80
|
.toJSON()
|
|
81
81
|
.map((pair) => [pair.first, pair.second.toJSON()]);
|
|
82
82
|
// PARSE COMMENT TAGS
|
|
83
|
-
const
|
|
84
|
-
const security = SecurityAnalyzer_1.SecurityAnalyzer.merge(...controller.security, ...func.security, ...
|
|
83
|
+
const jsDocTags = signature.getJsDocTags();
|
|
84
|
+
const security = SecurityAnalyzer_1.SecurityAnalyzer.merge(...controller.security, ...func.security, ...jsDocTags
|
|
85
85
|
.filter((tag) => tag.name === "security")
|
|
86
86
|
.map((tag) => {
|
|
87
87
|
var _a;
|
|
@@ -103,12 +103,15 @@ var ControllerAnalyzer;
|
|
|
103
103
|
type: outputType.type,
|
|
104
104
|
typeName: outputType.typeName,
|
|
105
105
|
contentType: func.contentType,
|
|
106
|
-
}, imports, status: func.status, symbol:
|
|
106
|
+
}, imports, status: func.status, symbol: {
|
|
107
|
+
class: controller.name,
|
|
108
|
+
function: func.name,
|
|
109
|
+
}, location: (() => {
|
|
107
110
|
const file = declaration.getSourceFile();
|
|
108
111
|
const { line, character } = file.getLineAndCharacterOfPosition(declaration.pos);
|
|
109
112
|
return `${path_1.default.relative(process.cwd(), file.fileName)}:${line + 1}:${character + 1}`;
|
|
110
|
-
})(), description: CommentFactory_1.CommentFactory.description(symbol), operationId: (_b = (_a =
|
|
111
|
-
.find(({ name }) => name === "
|
|
113
|
+
})(), description: CommentFactory_1.CommentFactory.description(symbol), operationId: (_b = (_a = jsDocTags
|
|
114
|
+
.find(({ name }) => name === "operationId")) === null || _a === void 0 ? void 0 : _a.text) === null || _b === void 0 ? void 0 : _b[0].text.split(" ")[0].trim(), jsDocTags: jsDocTags, setHeaders: jsDocTags
|
|
112
115
|
.filter((t) => {
|
|
113
116
|
var _a;
|
|
114
117
|
return ((_a = t.text) === null || _a === void 0 ? void 0 : _a.length) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ControllerAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ControllerAnalyzer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,oDAAiD;AACjD,4DAA4B;AAE5B,uEAAoE;AAKpE,gDAA6C;AAC7C,2DAAwD;AACxD,uDAAoD;AACpD,qDAAkD;AAClD,iDAA8C;AAC9C,yDAAsD;AAEtD,IAAiB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"ControllerAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ControllerAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -73,6 +73,7 @@ var ReflectAnalyzer;
|
|
|
73
73
|
CONTROLLER
|
|
74
74
|
--------------------------------------------------------- */
|
|
75
75
|
function _Analyze_controller(file, name, creator) {
|
|
76
|
+
var _a;
|
|
76
77
|
//----
|
|
77
78
|
// VALIDATIONS
|
|
78
79
|
//----
|
|
@@ -94,6 +95,7 @@ var ReflectAnalyzer;
|
|
|
94
95
|
paths,
|
|
95
96
|
functions: [],
|
|
96
97
|
security: _Get_securities(creator),
|
|
98
|
+
swaggerTgas: (_a = Reflect.getMetadata("swagger/apiUseTags", creator)) !== null && _a !== void 0 ? _a : [],
|
|
97
99
|
};
|
|
98
100
|
// PARSE CHILDREN DATA
|
|
99
101
|
for (const tuple of _Get_prototype_entries(creator)) {
|
|
@@ -135,7 +137,7 @@ var ReflectAnalyzer;
|
|
|
135
137
|
FUNCTION
|
|
136
138
|
--------------------------------------------------------- */
|
|
137
139
|
function _Analyze_function(classProto, controller, name, proto) {
|
|
138
|
-
var _a, _b, _c, _d, _e, _f;
|
|
140
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
139
141
|
//----
|
|
140
142
|
// VALIDATIONS
|
|
141
143
|
//----
|
|
@@ -184,6 +186,12 @@ var ReflectAnalyzer;
|
|
|
184
186
|
h.name.toLowerCase() === "content-type")) === null || _e === void 0 ? void 0 : _e.value) !== null && _f !== void 0 ? _f : "application/json",
|
|
185
187
|
security: _Get_securities(proto),
|
|
186
188
|
exceptions: _Get_exceptions(proto),
|
|
189
|
+
swaggerTags: [
|
|
190
|
+
...new Set([
|
|
191
|
+
...controller.swaggerTgas,
|
|
192
|
+
...((_g = Reflect.getMetadata("swagger/apiUseTags", proto)) !== null && _g !== void 0 ? _g : []),
|
|
193
|
+
]),
|
|
194
|
+
],
|
|
187
195
|
};
|
|
188
196
|
// VALIDATE PATH ARGUMENTS
|
|
189
197
|
for (const controllerLocation of controller.paths)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReflectAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ReflectAnalyzer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAsD;AACtD,4BAA0B;AAC1B,+CAA2C;AAI3C,kDAA+C;AAC/C,iDAA8C;AAC9C,yDAAsD;AAMtD,IAAiB,eAAe,
|
|
1
|
+
{"version":3,"file":"ReflectAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ReflectAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { INestiaConfig } from "../../INestiaConfig";
|
|
3
|
+
export declare namespace NestiaConfigLoader {
|
|
4
|
+
const compilerOptions: (project: string) => Promise<ts.CompilerOptions>;
|
|
5
|
+
const config: (options: ts.CompilerOptions) => Promise<INestiaConfig>;
|
|
6
|
+
const project: () => Promise<string>;
|
|
7
|
+
}
|