@nestia/sdk 1.4.12 → 1.4.13-dev.20230726-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 (43) hide show
  1. package/lib/INestiaConfig.d.ts +6 -15
  2. package/lib/NestiaSdkApplication.js +28 -0
  3. package/lib/NestiaSdkApplication.js.map +1 -1
  4. package/lib/analyses/ControllerAnalyzer.js +21 -2
  5. package/lib/analyses/ControllerAnalyzer.js.map +1 -1
  6. package/lib/analyses/ReflectAnalyzer.d.ts +1 -0
  7. package/lib/analyses/ReflectAnalyzer.js +8 -0
  8. package/lib/analyses/ReflectAnalyzer.js.map +1 -1
  9. package/lib/analyses/SecurityAnalyzer.d.ts +3 -0
  10. package/lib/analyses/SecurityAnalyzer.js +25 -0
  11. package/lib/analyses/SecurityAnalyzer.js.map +1 -0
  12. package/lib/executable/internal/NestiaSdkConfig.js +67 -67
  13. package/lib/executable/internal/NestiaSdkConfig.js.map +1 -1
  14. package/lib/generates/SdkGenerator.js +0 -28
  15. package/lib/generates/SdkGenerator.js.map +1 -1
  16. package/lib/generates/SwaggerGenerator.js +42 -0
  17. package/lib/generates/SwaggerGenerator.js.map +1 -1
  18. package/lib/structures/IController.d.ts +2 -0
  19. package/lib/structures/IRoute.d.ts +1 -0
  20. package/lib/structures/ISwaggerComponents.d.ts +26 -0
  21. package/lib/structures/ISwaggerComponents.js +3 -0
  22. package/lib/structures/ISwaggerComponents.js.map +1 -0
  23. package/lib/structures/ISwaggerDocument.d.ts +70 -86
  24. package/lib/structures/ISwaggerRoute.d.ts +43 -0
  25. package/lib/structures/ISwaggerRoute.js +3 -0
  26. package/lib/structures/ISwaggerRoute.js.map +1 -0
  27. package/lib/structures/ISwaggerSecurityScheme.d.ts +50 -0
  28. package/lib/structures/ISwaggerSecurityScheme.js +3 -0
  29. package/lib/structures/ISwaggerSecurityScheme.js.map +1 -0
  30. package/package.json +4 -3
  31. package/src/INestiaConfig.ts +6 -22
  32. package/src/NestiaSdkApplication.ts +29 -0
  33. package/src/analyses/ControllerAnalyzer.ts +24 -1
  34. package/src/analyses/ReflectAnalyzer.ts +10 -2
  35. package/src/analyses/SecurityAnalyzer.ts +20 -0
  36. package/src/generates/SdkGenerator.ts +0 -29
  37. package/src/generates/SwaggerGenerator.ts +90 -10
  38. package/src/structures/IController.ts +2 -0
  39. package/src/structures/IRoute.ts +1 -0
  40. package/src/structures/ISwaggerComponents.ts +29 -0
  41. package/src/structures/ISwaggerDocument.ts +77 -105
  42. package/src/structures/ISwaggerRoute.ts +47 -0
  43. package/src/structures/ISwaggerSecurityScheme.ts +57 -0
@@ -1,5 +1,6 @@
1
1
  import type ts from "typescript";
2
2
  import type { ISwaggerDocument } from "./structures/ISwaggerDocument";
3
+ import { ISwaggerSecurityScheme } from "./structures/ISwaggerSecurityScheme";
3
4
  import type { StripEnums } from "./utils/StripEnums";
4
5
  /**
5
6
  * Definition for the `nestia.config.ts` file.
@@ -162,21 +163,11 @@ export declare namespace INestiaConfig {
162
163
  servers?: ISwaggerDocument.IServer[];
163
164
  /**
164
165
  * Security schemes.
166
+ *
167
+ * When generating `swagger.json` file through `nestia`, if your controllers or
168
+ * theirs methods have a security key which is not enrolled in here property,
169
+ * it would be an error.
165
170
  */
166
- security?: Record<string, ISwaggerConfig.ISecurityScheme>;
167
- }
168
- namespace ISwaggerConfig {
169
- type ISecurityScheme = IApiKey | Exclude<ISwaggerDocument.ISecurityScheme, ISwaggerDocument.ISecurityScheme.IApiKey>;
170
- interface IApiKey {
171
- type: "apiKey";
172
- /**
173
- * @default header
174
- */
175
- in?: "header" | "query" | "cookie";
176
- /**
177
- * @default Authorization
178
- */
179
- name?: string;
180
- }
171
+ security?: Record<string, ISwaggerSecurityScheme>;
181
172
  }
182
173
  }
@@ -169,6 +169,15 @@ class NestiaSdkApplication {
169
169
  continue;
170
170
  routeList.push(...ControllerAnalyzer_1.ControllerAnalyzer.analyze(checker, file, c));
171
171
  }
172
+ // FIND IMPLICIT TYPES
173
+ const implicit = routeList.filter(is_implicit_return_typed);
174
+ if (implicit.length > 0)
175
+ throw new Error(`NestiaApplication.${method}(): implicit return type is not allowed.\n` +
176
+ "\n" +
177
+ "List of implicit return typed routes:\n" +
178
+ implicit
179
+ .map((it) => ` - ${it.symbol} at "${it.location}"`)
180
+ .join("\n"));
172
181
  // DO GENERATE
173
182
  AccessorAnalyzer_1.AccessorAnalyzer.analyze(routeList);
174
183
  yield archiver(checker)(config(this.config_))(routeList);
@@ -221,4 +230,23 @@ const title = (str) => {
221
230
  console.log(` ${str}`);
222
231
  console.log("-----------------------------------------------------------");
223
232
  };
233
+ const is_implicit_return_typed = (route) => {
234
+ const name = route.output.name;
235
+ if (name === "void")
236
+ return false;
237
+ else if (name.indexOf("readonly [") !== -1)
238
+ return true;
239
+ const pos = name.indexOf("__object");
240
+ if (pos === -1)
241
+ return false;
242
+ const before = pos - 1;
243
+ const after = pos + "__object".length;
244
+ for (const i of [before, after])
245
+ if (name[i] === undefined)
246
+ continue;
247
+ else if (VARIABLE.test(name[i]))
248
+ return false;
249
+ return true;
250
+ };
251
+ const VARIABLE = /[a-zA-Z_$0-9]/;
224
252
  //# sourceMappingURL=NestiaSdkApplication.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ const PathUtil_1 = require("../utils/PathUtil");
11
11
  const GenericAnalyzer_1 = require("./GenericAnalyzer");
12
12
  const ImportAnalyzer_1 = require("./ImportAnalyzer");
13
13
  const PathAnalyzer_1 = require("./PathAnalyzer");
14
+ const SecurityAnalyzer_1 = require("./SecurityAnalyzer");
14
15
  var ControllerAnalyzer;
15
16
  (function (ControllerAnalyzer) {
16
17
  function analyze(checker, sourceFile, controller) {
@@ -71,8 +72,26 @@ var ControllerAnalyzer;
71
72
  const imports = importDict
72
73
  .toJSON()
73
74
  .map((pair) => [pair.first, pair.second.toJSON()]);
74
- // CONSTRUCT COMMON DATA
75
+ // PARSE COMMENT TAGS
75
76
  const tags = signature.getJsDocTags();
77
+ const security = SecurityAnalyzer_1.SecurityAnalyzer.merge(...controller.security, ...func.security, ...tags
78
+ .filter((tag) => tag.name === "security")
79
+ .map((tag) => {
80
+ var _a;
81
+ return ((_a = tag.text) !== null && _a !== void 0 ? _a : []).map((text) => {
82
+ const line = text.text
83
+ .split(" ")
84
+ .filter((s) => s.trim())
85
+ .filter((s) => !!s.length);
86
+ if (line.length === 0)
87
+ return {};
88
+ return {
89
+ [line[0]]: line.slice(1),
90
+ };
91
+ });
92
+ })
93
+ .flat());
94
+ // CONSTRUCT COMMON DATA
76
95
  const common = Object.assign(Object.assign({}, func), { parameters, output: Object.assign(Object.assign({}, outputType), { contentType: func.contentType }), imports, status: func.status, symbol: `${controller.name}.${func.name}()`, location: `${declaration.getSourceFile().fileName}:${declaration.pos}`, description: CommentFactory_1.CommentFactory.description(symbol), tags, setHeaders: tags
77
96
  .filter((t) => {
78
97
  var _a;
@@ -92,7 +111,7 @@ var ControllerAnalyzer;
92
111
  type: "assigner",
93
112
  source: t.text[0].text,
94
113
  };
95
- }) });
114
+ }), security });
96
115
  // CONFIGURE PATHS
97
116
  const pathList = [];
98
117
  for (const controllerPath of controller.paths)
@@ -1 +1 @@
1
- {"version":3,"file":"ControllerAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ControllerAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ControllerAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ControllerAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import "reflect-metadata";
1
2
  import { IController } from "../structures/IController";
2
3
  export declare namespace ReflectAnalyzer {
3
4
  function analyze(unique: WeakSet<any>, file: string): Promise<IController[]>;
@@ -34,9 +34,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
35
  exports.ReflectAnalyzer = void 0;
36
36
  const Constants = __importStar(require("@nestjs/common/constants"));
37
+ require("reflect-metadata");
37
38
  const module_1 = require("tstl/ranges/module");
38
39
  const ArrayUtil_1 = require("../utils/ArrayUtil");
39
40
  const PathAnalyzer_1 = require("./PathAnalyzer");
41
+ const SecurityAnalyzer_1 = require("./SecurityAnalyzer");
40
42
  var ReflectAnalyzer;
41
43
  (function (ReflectAnalyzer) {
42
44
  function analyze(unique, file) {
@@ -91,6 +93,7 @@ var ReflectAnalyzer;
91
93
  name,
92
94
  paths,
93
95
  functions: [],
96
+ security: _Get_security(creator),
94
97
  };
95
98
  // PARSE CHILDREN DATA
96
99
  for (const tuple of _Get_prototype_entries(creator)) {
@@ -120,6 +123,10 @@ var ReflectAnalyzer;
120
123
  else
121
124
  return value;
122
125
  }
126
+ function _Get_security(value) {
127
+ const entire = Reflect.getMetadata("swagger/apiSecurity", value);
128
+ return entire ? SecurityAnalyzer_1.SecurityAnalyzer.merge(...entire) : [];
129
+ }
123
130
  /* ---------------------------------------------------------
124
131
  FUNCTION
125
132
  --------------------------------------------------------- */
@@ -148,6 +155,7 @@ var ReflectAnalyzer;
148
155
  contentType: (_f = (_e = (_d = Reflect.getMetadata(Constants.HEADERS_METADATA, proto)) === null || _d === void 0 ? void 0 : _d.find((h) => typeof (h === null || h === void 0 ? void 0 : h.name) === "string" &&
149
156
  typeof (h === null || h === void 0 ? void 0 : h.value) === "string" &&
150
157
  h.name.toLowerCase() === "content-type")) === null || _e === void 0 ? void 0 : _e.value) !== null && _f !== void 0 ? _f : "application/json",
158
+ security: _Get_security(proto),
151
159
  };
152
160
  // PARSE CHILDREN DATA
153
161
  const nestParameters = Reflect.getMetadata(Constants.ROUTE_ARGS_METADATA, classProto.constructor, name);
@@ -1 +1 @@
1
- {"version":3,"file":"ReflectAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ReflectAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReflectAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/ReflectAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare namespace SecurityAnalyzer {
2
+ const merge: (...entire: Record<string, string[]>[]) => Record<string, string[]>[];
3
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SecurityAnalyzer = void 0;
4
+ const MapUtil_1 = require("../utils/MapUtil");
5
+ var SecurityAnalyzer;
6
+ (function (SecurityAnalyzer) {
7
+ SecurityAnalyzer.merge = (...entire) => {
8
+ const dict = new Map();
9
+ for (const obj of entire)
10
+ for (const [key, value] of Object.entries(obj)) {
11
+ const set = MapUtil_1.MapUtil.take(dict, key, () => new Set());
12
+ for (const val of value)
13
+ set.add(val);
14
+ }
15
+ const output = [];
16
+ for (const [key, set] of dict) {
17
+ const obj = {
18
+ [key]: [...set],
19
+ };
20
+ output.push(obj);
21
+ }
22
+ return output;
23
+ };
24
+ })(SecurityAnalyzer || (exports.SecurityAnalyzer = SecurityAnalyzer = {}));
25
+ //# sourceMappingURL=SecurityAnalyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/SecurityAnalyzer.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAE3C,IAAiB,gBAAgB,CAiBhC;AAjBD,WAAiB,gBAAgB;IAChB,sBAAK,GAAG,CAAC,GAAG,MAAkC,EAAE,EAAE;QAC3D,MAAM,IAAI,GAA6B,IAAI,GAAG,EAAE,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,MAAM;YACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC5C,MAAM,GAAG,GAAG,iBAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;gBACrD,KAAK,MAAM,GAAG,IAAI,KAAK;oBAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACzC;QACL,MAAM,MAAM,GAA+B,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;YAC3B,MAAM,GAAG,GAAG;gBACR,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,EAjBgB,gBAAgB,gCAAhB,gBAAgB,QAiBhC"}