@nestia/core 1.1.2-dev.20230503 → 1.2.0-dev.20230503

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 (32) hide show
  1. package/lib/decorators/TypedParam.js +5 -5
  2. package/lib/decorators/TypedParam.js.map +1 -1
  3. package/lib/transform.d.ts +2 -1
  4. package/lib/transform.js +7 -8
  5. package/lib/transform.js.map +1 -1
  6. package/lib/transformers/FileTransformer.d.ts +1 -1
  7. package/lib/transformers/FileTransformer.js +28 -20
  8. package/lib/transformers/FileTransformer.js.map +1 -1
  9. package/lib/transformers/MethodDecoratorTransformer.d.ts +1 -1
  10. package/lib/transformers/MethodDecoratorTransformer.js +48 -43
  11. package/lib/transformers/MethodDecoratorTransformer.js.map +1 -1
  12. package/lib/transformers/MethodTransformer.d.ts +1 -1
  13. package/lib/transformers/MethodTransformer.js +51 -43
  14. package/lib/transformers/MethodTransformer.js.map +1 -1
  15. package/lib/transformers/NodeTransformer.d.ts +1 -1
  16. package/lib/transformers/NodeTransformer.js +9 -8
  17. package/lib/transformers/NodeTransformer.js.map +1 -1
  18. package/lib/transformers/ParameterDecoratorTransformer.d.ts +1 -1
  19. package/lib/transformers/ParameterDecoratorTransformer.js +41 -38
  20. package/lib/transformers/ParameterDecoratorTransformer.js.map +1 -1
  21. package/lib/transformers/ParameterTransformer.d.ts +1 -1
  22. package/lib/transformers/ParameterTransformer.js +23 -22
  23. package/lib/transformers/ParameterTransformer.js.map +1 -1
  24. package/package.json +2 -4
  25. package/src/decorators/TypedParam.ts +5 -8
  26. package/src/transform.ts +5 -8
  27. package/src/transformers/FileTransformer.ts +35 -39
  28. package/src/transformers/MethodDecoratorTransformer.ts +57 -58
  29. package/src/transformers/MethodTransformer.ts +72 -68
  30. package/src/transformers/NodeTransformer.ts +8 -10
  31. package/src/transformers/ParameterDecoratorTransformer.ts +50 -49
  32. package/src/transformers/ParameterTransformer.ts +36 -36
@@ -33,7 +33,7 @@ var common_1 = require("@nestjs/common");
33
33
  * @author Jeongho Nam - https://github.com/samchon
34
34
  */
35
35
  function TypedParam(name, type, nullable) {
36
- var deco = (0, common_1.createParamDecorator)(function TypedParam(_a, ctx) {
36
+ function TypedParam(_a, ctx) {
37
37
  var request = ctx.switchToHttp().getRequest();
38
38
  var str = request.params[name];
39
39
  if (nullable === true && str === "null")
@@ -59,10 +59,10 @@ function TypedParam(name, type, nullable) {
59
59
  }
60
60
  else
61
61
  return str;
62
- })(name);
63
- deco.nullable = !!nullable;
64
- deco.type = type;
65
- return deco;
62
+ }
63
+ TypedParam.nullable = !!nullable;
64
+ TypedParam.type = type;
65
+ return (0, common_1.createParamDecorator)(TypedParam)(name);
66
66
  }
67
67
  exports.TypedParam = TypedParam;
68
68
  var UUID_PATTERN = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
@@ -1 +1 @@
1
- {"version":3,"file":"TypedParam.js","sourceRoot":"","sources":["../../src/decorators/TypedParam.ts"],"names":[],"mappings":";;;AAAA,yCAIwB;AAGxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,UAAU,CACtB,IAAY,EACZ,IAA+C,EAC/C,QAAuB;IAEvB,IAAM,IAAI,GAAG,IAAA,6BAAoB,EAAC,SAAS,UAAU,CACjD,EAAO,EACP,GAAqB;QAErB,IAAM,OAAO,GAAoB,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACjE,IAAM,GAAG,GAAW,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,QAAQ,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;aAChD,IAAI,IAAI,KAAK,SAAS,EAAE;YACzB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;iBAC1C,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG;gBAAE,OAAO,KAAK,CAAC;;gBAElD,MAAM,IAAI,4BAAmB,CACzB,sCAA+B,IAAI,wBAAqB,CAC3D,CAAC;SACT;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;YAC1B,IAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,CAAC;gBACZ,MAAM,IAAI,4BAAmB,CACzB,uCAA+B,IAAI,wBAAoB,CAC1D,CAAC;YACN,OAAO,KAAK,CAAC;SAChB;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YACxB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK;gBAChC,MAAM,IAAI,4BAAmB,CACzB,uCAA+B,IAAI,4BAAwB,CAC9D,CAAC;YACN,OAAO,GAAG,CAAC;SACd;;YAAM,OAAO,GAAG,CAAC;IACtB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACR,IAAY,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IACnC,IAAY,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC;AAChB,CAAC;AAtCD,gCAsCC;AAED,IAAM,YAAY,GACd,qHAAqH,CAAC"}
1
+ {"version":3,"file":"TypedParam.js","sourceRoot":"","sources":["../../src/decorators/TypedParam.ts"],"names":[],"mappings":";;;AAAA,yCAIwB;AAGxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,UAAU,CACtB,IAAY,EACZ,IAA+C,EAC/C,QAAuB;IAEvB,SAAS,UAAU,CAAC,EAAO,EAAE,GAAqB;QAC9C,IAAM,OAAO,GAAoB,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACjE,IAAM,GAAG,GAAW,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,QAAQ,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;aAChD,IAAI,IAAI,KAAK,SAAS,EAAE;YACzB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;iBAC1C,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG;gBAAE,OAAO,KAAK,CAAC;;gBAElD,MAAM,IAAI,4BAAmB,CACzB,sCAA+B,IAAI,wBAAqB,CAC3D,CAAC;SACT;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;YAC1B,IAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,CAAC;gBACZ,MAAM,IAAI,4BAAmB,CACzB,uCAA+B,IAAI,wBAAoB,CAC1D,CAAC;YACN,OAAO,KAAK,CAAC;SAChB;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YACxB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK;gBAChC,MAAM,IAAI,4BAAmB,CACzB,uCAA+B,IAAI,4BAAwB,CAC9D,CAAC;YACN,OAAO,GAAG,CAAC;SACd;;YAAM,OAAO,GAAG,CAAC;IACtB,CAAC;IACA,UAAkB,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IACzC,UAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;IAChC,OAAO,IAAA,6BAAoB,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC;AAnCD,gCAmCC;AAED,IAAM,YAAY,GACd,qHAAqH,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformOptions } from "./options/INestiaTransformOptions";
3
- export default function transform(program: ts.Program, options?: INestiaTransformOptions): ts.TransformerFactory<ts.SourceFile>;
3
+ export declare const transform: (program: ts.Program, options?: INestiaTransformOptions) => ts.TransformerFactory<ts.SourceFile>;
4
+ export default transform;
package/lib/transform.js CHANGED
@@ -3,19 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.transform = void 0;
6
7
  var typescript_1 = __importDefault(require("typescript"));
7
8
  var FileTransformer_1 = require("./transformers/FileTransformer");
8
- function transform(program, options) {
9
- var project = {
9
+ var transform = function (program, options) {
10
+ return FileTransformer_1.FileTransformer.transform({
10
11
  program: program,
11
12
  compilerOptions: program.getCompilerOptions(),
12
13
  checker: program.getTypeChecker(),
13
14
  printer: typescript_1.default.createPrinter(),
14
15
  options: options || {},
15
- };
16
- return function (context) { return function (file) {
17
- return FileTransformer_1.FileTransformer.transform(project, context, file);
18
- }; };
19
- }
20
- exports.default = transform;
16
+ });
17
+ };
18
+ exports.transform = transform;
19
+ exports.default = exports.transform;
21
20
  //# sourceMappingURL=transform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":";;;;;AAAA,0DAA4B;AAI5B,kEAAiE;AAEjE,SAAwB,SAAS,CAC7B,OAAmB,EACnB,OAAiC;IAEjC,IAAM,OAAO,GAA4B;QACrC,OAAO,SAAA;QACP,eAAe,EAAE,OAAO,CAAC,kBAAkB,EAAE;QAC7C,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE;QACjC,OAAO,EAAE,oBAAE,CAAC,aAAa,EAAE;QAC3B,OAAO,EAAE,OAAO,IAAI,EAAE;KACzB,CAAC;IACF,OAAO,UAAC,OAAO,IAAK,OAAA,UAAC,IAAI;QACrB,OAAA,iCAAe,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IAAjD,CAAiD,EADjC,CACiC,CAAC;AAC1D,CAAC;AAbD,4BAaC"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,kEAAiE;AAE1D,IAAM,SAAS,GAAG,UACrB,OAAmB,EACnB,OAAiC;IAEjC,OAAA,iCAAe,CAAC,SAAS,CAAC;QACtB,OAAO,SAAA;QACP,eAAe,EAAE,OAAO,CAAC,kBAAkB,EAAE;QAC7C,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE;QACjC,OAAO,EAAE,oBAAE,CAAC,aAAa,EAAE;QAC3B,OAAO,EAAE,OAAO,IAAI,EAAE;KACzB,CAAC;AANF,CAME,CAAC;AAVM,QAAA,SAAS,aAUf;AACP,kBAAe,iBAAS,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace FileTransformer {
4
- function transform(project: INestiaTransformProject, context: ts.TransformationContext, file: ts.SourceFile): ts.SourceFile;
4
+ const transform: (project: INestiaTransformProject) => (context: ts.TransformationContext) => (file: ts.SourceFile) => ts.SourceFile;
5
5
  }
@@ -8,26 +8,34 @@ var typescript_1 = __importDefault(require("typescript"));
8
8
  var NodeTransformer_1 = require("./NodeTransformer");
9
9
  var FileTransformer;
10
10
  (function (FileTransformer) {
11
- function transform(project, context, file) {
12
- // ITERATE NODES
13
- return typescript_1.default.visitEachChild(file, function (node) { return iterate_node(project, context, node); }, context);
14
- }
15
- FileTransformer.transform = transform;
16
- function iterate_node(project, context, node) {
17
- return typescript_1.default.visitEachChild(try_transform_node(project, node), function (child) { return iterate_node(project, context, child); }, context);
18
- }
19
- function try_transform_node(project, node) {
20
- try {
21
- return NodeTransformer_1.NodeTransformer.transform(project, node);
22
- }
23
- catch (exp) {
24
- if (!(exp instanceof Error))
11
+ FileTransformer.transform = function (project) {
12
+ return function (context) {
13
+ return function (file) {
14
+ return typescript_1.default.visitEachChild(file, function (node) { return iterate_node(project)(context)(node); }, context);
15
+ };
16
+ };
17
+ };
18
+ var iterate_node = function (project) {
19
+ return function (context) {
20
+ return function (node) {
21
+ return typescript_1.default.visitEachChild(try_transform_node(project)(node), function (child) { return iterate_node(project)(context)(child); }, context);
22
+ };
23
+ };
24
+ };
25
+ var try_transform_node = function (project) {
26
+ return function (node) {
27
+ try {
28
+ return NodeTransformer_1.NodeTransformer.transform(project)(node);
29
+ }
30
+ catch (exp) {
31
+ if (!(exp instanceof Error))
32
+ throw exp;
33
+ var file = node.getSourceFile();
34
+ var _a = file.getLineAndCharacterOfPosition(node.pos), line = _a.line, character = _a.character;
35
+ exp.message += " - ".concat(file.fileName, ".").concat(line + 1, ":").concat(character + 1);
25
36
  throw exp;
26
- var file = node.getSourceFile();
27
- var _a = file.getLineAndCharacterOfPosition(node.pos), line = _a.line, character = _a.character;
28
- exp.message += " - ".concat(file.fileName, ".").concat(line + 1, ":").concat(character + 1);
29
- throw exp;
30
- }
31
- }
37
+ }
38
+ };
39
+ };
32
40
  })(FileTransformer = exports.FileTransformer || (exports.FileTransformer = {}));
33
41
  //# sourceMappingURL=FileTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileTransformer.js","sourceRoot":"","sources":["../../src/transformers/FileTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,qDAAoD;AAEpD,IAAiB,eAAe,CA2C/B;AA3CD,WAAiB,eAAe;IAC5B,SAAgB,SAAS,CACrB,OAAgC,EAChC,OAAiC,EACjC,IAAmB;QAEnB,gBAAgB;QAChB,OAAO,oBAAE,CAAC,cAAc,CACpB,IAAI,EACJ,UAAC,IAAI,IAAK,OAAA,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAApC,CAAoC,EAC9C,OAAO,CACV,CAAC;IACN,CAAC;IAXe,yBAAS,YAWxB,CAAA;IAED,SAAS,YAAY,CACjB,OAAgC,EAChC,OAAiC,EACjC,IAAa;QAEb,OAAO,oBAAE,CAAC,cAAc,CACpB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,EACjC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAArC,CAAqC,EAChD,OAAO,CACV,CAAC;IACN,CAAC;IAED,SAAS,kBAAkB,CACvB,OAAgC,EAChC,IAAa;QAEb,IAAI;YACA,OAAO,iCAAe,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;SACnD;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC;gBAAE,MAAM,GAAG,CAAC;YAEvC,IAAM,IAAI,GAAkB,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3C,IAAA,KAAsB,IAAI,CAAC,6BAA6B,CAC1D,IAAI,CAAC,GAAG,CACX,EAFO,IAAI,UAAA,EAAE,SAAS,eAEtB,CAAC;YACF,GAAG,CAAC,OAAO,IAAI,aAAM,IAAI,CAAC,QAAQ,cAAI,IAAI,GAAG,CAAC,cAAI,SAAS,GAAG,CAAC,CAAE,CAAC;YAClE,MAAM,GAAG,CAAC;SACb;IACL,CAAC;AACL,CAAC,EA3CgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QA2C/B"}
1
+ {"version":3,"file":"FileTransformer.js","sourceRoot":"","sources":["../../src/transformers/FileTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,qDAAoD;AAEpD,IAAiB,eAAe,CAuC/B;AAvCD,WAAiB,eAAe;IACf,yBAAS,GAClB,UAAC,OAAgC;QACjC,OAAA,UAAC,OAAiC;YAClC,OAAA,UAAC,IAAmB;gBAChB,OAAA,oBAAE,CAAC,cAAc,CACb,IAAI,EACJ,UAAC,IAAI,IAAK,OAAA,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAApC,CAAoC,EAC9C,OAAO,CACV;YAJD,CAIC;QALL,CAKK;IANL,CAMK,CAAC;IAEV,IAAM,YAAY,GACd,UAAC,OAAgC;QACjC,OAAA,UAAC,OAAiC;YAClC,OAAA,UAAC,IAAa;gBACV,OAAA,oBAAE,CAAC,cAAc,CACb,kBAAkB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EACjC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAArC,CAAqC,EAChD,OAAO,CACV;YAJD,CAIC;QALL,CAKK;IANL,CAMK,CAAC;IAEV,IAAM,kBAAkB,GACpB,UAAC,OAAgC;QACjC,OAAA,UAAC,IAAa;YACV,IAAI;gBACA,OAAO,iCAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;aACnD;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC;oBAAE,MAAM,GAAG,CAAC;gBAEvC,IAAM,IAAI,GAAkB,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3C,IAAA,KAAsB,IAAI,CAAC,6BAA6B,CAC1D,IAAI,CAAC,GAAG,CACX,EAFO,IAAI,UAAA,EAAE,SAAS,eAEtB,CAAC;gBACF,GAAG,CAAC,OAAO,IAAI,aAAM,IAAI,CAAC,QAAQ,cAAI,IAAI,GAAG,CAAC,cAC1C,SAAS,GAAG,CAAC,CACf,CAAC;gBACH,MAAM,GAAG,CAAC;aACb;QACL,CAAC;IAfD,CAeC,CAAC;AACV,CAAC,EAvCgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAuC/B"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace MethodDecoratorTransformer {
4
- function transform(project: INestiaTransformProject, type: ts.Type, decorator: ts.Decorator): ts.Decorator;
4
+ const transform: (project: INestiaTransformProject) => (type: ts.Type) => (decorator: ts.Decorator) => ts.Decorator;
5
5
  }
@@ -34,49 +34,54 @@ var typescript_1 = __importDefault(require("typescript"));
34
34
  var TypedRouteProgrammer_1 = require("../programmers/TypedRouteProgrammer");
35
35
  var MethodDecoratorTransformer;
36
36
  (function (MethodDecoratorTransformer) {
37
- function transform(project, type, decorator) {
38
- if (!typescript_1.default.isCallExpression(decorator.expression))
39
- return decorator;
40
- // CHECK SIGNATURE
41
- var signature = project.checker.getResolvedSignature(decorator.expression);
42
- if (!signature || !signature.declaration)
43
- return decorator;
44
- // CHECK TO BE TRANSFORMED
45
- var done = (function () {
46
- // CHECK FILENAME
47
- var location = path_1.default.resolve(signature.declaration.getSourceFile().fileName);
48
- if (LIB_PATHS.every(function (str) { return location.indexOf(str) === -1; }) &&
49
- SRC_PATHS.every(function (str) { return location !== str; }))
50
- return false;
51
- // CHECK DUPLICATE BOOSTER
52
- if (decorator.expression.arguments.length >= 2)
53
- return false;
54
- else if (decorator.expression.arguments.length === 1) {
55
- var last = decorator.expression.arguments[decorator.expression.arguments.length - 1];
56
- var type_1 = project.checker.getTypeAtLocation(last);
57
- if (isObject(project.checker, type_1))
58
- return false;
59
- }
60
- return true;
61
- })();
62
- if (done === false)
63
- return decorator;
64
- // CHECK TYPE NODE
65
- var typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
66
- if (typeNode === undefined)
67
- return decorator;
68
- // DO TRANSFORM
69
- return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, __spreadArray(__spreadArray([], __read(decorator.expression.arguments), false), [
70
- TypedRouteProgrammer_1.TypedRouteProgrammer.generate(project)(decorator.expression.expression)(type),
71
- ], false)));
72
- }
73
- MethodDecoratorTransformer.transform = transform;
74
- function isObject(checker, type) {
75
- return ((type.getFlags() & typescript_1.default.TypeFlags.Object) !== 0 &&
76
- !checker.isTupleType(type) &&
77
- !checker.isArrayType(type) &&
78
- !checker.isArrayLikeType(type));
79
- }
37
+ MethodDecoratorTransformer.transform = function (project) {
38
+ return function (type) {
39
+ return function (decorator) {
40
+ if (!typescript_1.default.isCallExpression(decorator.expression))
41
+ return decorator;
42
+ // CHECK SIGNATURE
43
+ var signature = project.checker.getResolvedSignature(decorator.expression);
44
+ if (!signature || !signature.declaration)
45
+ return decorator;
46
+ // CHECK TO BE TRANSFORMED
47
+ var done = (function () {
48
+ // CHECK FILENAME
49
+ var location = path_1.default.resolve(signature.declaration.getSourceFile().fileName);
50
+ if (LIB_PATHS.every(function (str) { return location.indexOf(str) === -1; }) &&
51
+ SRC_PATHS.every(function (str) { return location !== str; }))
52
+ return false;
53
+ // CHECK DUPLICATE BOOSTER
54
+ if (decorator.expression.arguments.length >= 2)
55
+ return false;
56
+ else if (decorator.expression.arguments.length === 1) {
57
+ var last = decorator.expression.arguments[decorator.expression.arguments.length - 1];
58
+ var type_1 = project.checker.getTypeAtLocation(last);
59
+ if (isObject(project.checker)(type_1))
60
+ return false;
61
+ }
62
+ return true;
63
+ })();
64
+ if (done === false)
65
+ return decorator;
66
+ // CHECK TYPE NODE
67
+ var typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
68
+ if (typeNode === undefined)
69
+ return decorator;
70
+ // DO TRANSFORM
71
+ return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, __spreadArray(__spreadArray([], __read(decorator.expression.arguments), false), [
72
+ TypedRouteProgrammer_1.TypedRouteProgrammer.generate(project)(decorator.expression.expression)(type),
73
+ ], false)));
74
+ };
75
+ };
76
+ };
77
+ var isObject = function (checker) {
78
+ return function (type) {
79
+ return (type.getFlags() & typescript_1.default.TypeFlags.Object) !== 0 &&
80
+ !checker.isTupleType(type) &&
81
+ !checker.isArrayType(type) &&
82
+ !checker.isArrayLikeType(type);
83
+ };
84
+ };
80
85
  var CLASSES = ["EncryptedRoute", "TypedRoute"];
81
86
  var LIB_PATHS = CLASSES.map(function (cla) {
82
87
  return path_1.default.join("node_modules", "@nestia", "core", "lib", "decorators", "".concat(cla, ".d.ts"));
@@ -1 +1 @@
1
- {"version":3,"file":"MethodDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodDecoratorTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MethodDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodDecoratorTransformer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace MethodTransformer {
4
- function transform(project: INestiaTransformProject, method: ts.MethodDeclaration): ts.MethodDeclaration;
4
+ const transform: (project: INestiaTransformProject) => (method: ts.MethodDeclaration) => ts.MethodDeclaration;
5
5
  }
@@ -8,48 +8,56 @@ var typescript_1 = __importDefault(require("typescript"));
8
8
  var MethodDecoratorTransformer_1 = require("./MethodDecoratorTransformer");
9
9
  var MethodTransformer;
10
10
  (function (MethodTransformer) {
11
- function transform(project, method) {
12
- var decorators = typescript_1.default.getDecorators
13
- ? typescript_1.default.getDecorators(method)
14
- : method.decorators;
15
- if (!(decorators === null || decorators === void 0 ? void 0 : decorators.length))
16
- return method;
17
- var signature = project.checker.getSignatureFromDeclaration(method);
18
- var original = signature && project.checker.getReturnTypeOfSignature(signature);
19
- var escaped = original && get_escaped_type(project.checker, original);
20
- if (escaped === undefined)
21
- return method;
22
- if (typescript_1.default.getDecorators !== undefined)
23
- return typescript_1.default.factory.updateMethodDeclaration(method, (method.modifiers || []).map(function (mod) {
24
- return typescript_1.default.isDecorator(mod)
25
- ? MethodDecoratorTransformer_1.MethodDecoratorTransformer.transform(project, escaped, mod)
26
- : mod;
27
- }), method.asteriskToken, method.name, method.questionToken, method.typeParameters, method.parameters, method.type, method.body);
28
- // eslint-disable-next-line
29
- return typescript_1.default.factory.updateMethodDeclaration(method, decorators.map(function (deco) {
30
- return MethodDecoratorTransformer_1.MethodDecoratorTransformer.transform(project, escaped, deco);
31
- }), method.modifiers, method.asteriskToken, method.name, method.questionToken, method.typeParameters, method.parameters, method.type, method.body);
32
- }
33
- MethodTransformer.transform = transform;
11
+ MethodTransformer.transform = function (project) {
12
+ return function (method) {
13
+ var decorators = typescript_1.default.getDecorators
14
+ ? typescript_1.default.getDecorators(method)
15
+ : method.decorators;
16
+ if (!(decorators === null || decorators === void 0 ? void 0 : decorators.length))
17
+ return method;
18
+ var signature = project.checker.getSignatureFromDeclaration(method);
19
+ var original = signature &&
20
+ project.checker.getReturnTypeOfSignature(signature);
21
+ var escaped = original && get_escaped_type(project.checker)(original);
22
+ if (escaped === undefined)
23
+ return method;
24
+ if (typescript_1.default.getDecorators !== undefined)
25
+ return typescript_1.default.factory.updateMethodDeclaration(method, (method.modifiers || []).map(function (mod) {
26
+ return typescript_1.default.isDecorator(mod)
27
+ ? MethodDecoratorTransformer_1.MethodDecoratorTransformer.transform(project)(escaped)(mod)
28
+ : mod;
29
+ }), method.asteriskToken, method.name, method.questionToken, method.typeParameters, method.parameters, method.type, method.body);
30
+ // eslint-disable-next-line
31
+ return typescript_1.default.factory.updateMethodDeclaration(method, decorators.map(function (deco) {
32
+ return MethodDecoratorTransformer_1.MethodDecoratorTransformer.transform(project)(escaped)(deco);
33
+ }), method.modifiers, method.asteriskToken, method.name, method.questionToken, method.typeParameters, method.parameters, method.type, method.body);
34
+ };
35
+ };
34
36
  })(MethodTransformer = exports.MethodTransformer || (exports.MethodTransformer = {}));
35
- function get_escaped_type(checker, type) {
36
- var symbol = type.getSymbol() || type.aliasSymbol;
37
- return symbol && get_name(symbol) === "Promise"
38
- ? escape_promise(checker, type)
39
- : type;
40
- }
41
- function escape_promise(checker, type) {
42
- var generic = checker.getTypeArguments(type);
43
- if (generic.length !== 1)
44
- throw new Error("Error on ImportAnalyzer.analyze(): invalid promise type.");
45
- return generic[0];
46
- }
47
- function get_name(symbol) {
48
- return explore_name(symbol.escapedName.toString(), symbol.getDeclarations()[0].parent);
49
- }
50
- function explore_name(name, decl) {
51
- return typescript_1.default.isModuleBlock(decl)
52
- ? explore_name("".concat(decl.parent.name.getFullText().trim(), ".").concat(name), decl.parent.parent)
53
- : name;
54
- }
37
+ var get_escaped_type = function (checker) {
38
+ return function (type) {
39
+ var symbol = type.getSymbol() || type.aliasSymbol;
40
+ return symbol && get_name(symbol) === "Promise"
41
+ ? escape_promise(checker)(type)
42
+ : type;
43
+ };
44
+ };
45
+ var escape_promise = function (checker) {
46
+ return function (type) {
47
+ var generic = checker.getTypeArguments(type);
48
+ if (generic.length !== 1)
49
+ throw new Error("Error on ImportAnalyzer.analyze(): invalid promise type.");
50
+ return generic[0];
51
+ };
52
+ };
53
+ var get_name = function (symbol) {
54
+ return explore_name(symbol.getDeclarations()[0].parent)(symbol.escapedName.toString());
55
+ };
56
+ var explore_name = function (decl) {
57
+ return function (name) {
58
+ return typescript_1.default.isModuleBlock(decl)
59
+ ? explore_name(decl.parent.parent)("".concat(decl.parent.name.getFullText().trim(), ".").concat(name))
60
+ : name;
61
+ };
62
+ };
55
63
  //# sourceMappingURL=MethodTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MethodTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MethodTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,2EAA0E;AAE1E,IAAiB,iBAAiB,CAwDjC;AAxDD,WAAiB,iBAAiB;IACjB,2BAAS,GAClB,UAAC,OAAgC;QACjC,OAAA,UAAC,MAA4B;YACzB,IAAM,UAAU,GACZ,oBAAE,CAAC,aAAa;gBACZ,CAAC,CAAC,oBAAE,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC1B,CAAC,CAAE,MAAc,CAAC,UAAU,CAAC;YACrC,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,CAAA;gBAAE,OAAO,MAAM,CAAC;YAEvC,IAAM,SAAS,GACX,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;YACxD,IAAM,QAAQ,GACV,SAAS;gBACT,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;YACxD,IAAM,OAAO,GACT,QAAQ,IAAI,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;YAE5D,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;YAEzC,IAAI,oBAAE,CAAC,aAAa,KAAK,SAAS;gBAC9B,OAAO,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CACrC,MAAM,EACN,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG;oBAC7B,OAAA,oBAAE,CAAC,WAAW,CAAC,GAAG,CAAC;wBACf,CAAC,CAAC,uDAA0B,CAAC,SAAS,CAAC,OAAO,CAAC,CACzC,OAAO,CACV,CAAC,GAAG,CAAC;wBACR,CAAC,CAAC,GAAG;gBAJT,CAIS,CACZ,EACD,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,IAAI,CACd,CAAC;YACN,2BAA2B;YAC3B,OAAQ,oBAAE,CAAC,OAAO,CAAC,uBAA+B,CAC9C,MAAM,EACN,UAAU,CAAC,GAAG,CAAC,UAAC,IAAI;gBAChB,OAAA,uDAA0B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAClD,IAAI,CACP;YAFD,CAEC,CACJ,EACA,MAAc,CAAC,SAAS,EACzB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,IAAI,CACd,CAAC;QACN,CAAC;IApDD,CAoDC,CAAC;AACV,CAAC,EAxDgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAwDjC;AAED,IAAM,gBAAgB,GAClB,UAAC,OAAuB;IACxB,OAAA,UAAC,IAAa;QACV,IAAM,MAAM,GACR,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QACzC,OAAO,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,SAAS;YAC3C,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;YAC/B,CAAC,CAAC,IAAI,CAAC;IACf,CAAC;AAND,CAMC,CAAC;AAEN,IAAM,cAAc,GAChB,UAAC,OAAuB;IACxB,OAAA,UAAC,IAAa;QACV,IAAM,OAAO,GAAuB,OAAO,CAAC,gBAAgB,CACxD,IAAwB,CAC3B,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YACpB,MAAM,IAAI,KAAK,CACX,0DAA0D,CAC7D,CAAC;QACN,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;AATD,CASC,CAAC;AAEN,IAAM,QAAQ,GAAG,UAAC,MAAiB;IAC/B,OAAA,YAAY,CAAC,MAAM,CAAC,eAAe,EAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAC7C,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAChC;AAFD,CAEC,CAAC;AAEN,IAAM,YAAY,GACd,UAAC,IAAa;IACd,OAAA,UAAC,IAAY;QACT,OAAA,oBAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAClB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAC5B,UAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,cAAI,IAAI,CAAE,CACrD;YACH,CAAC,CAAC,IAAI;IAJV,CAIU;AALd,CAKc,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace NodeTransformer {
4
- function transform(project: INestiaTransformProject, node: ts.Node): ts.Node;
4
+ const transform: (project: INestiaTransformProject) => (node: ts.Node) => ts.Node;
5
5
  }
@@ -9,13 +9,14 @@ var MethodTransformer_1 = require("./MethodTransformer");
9
9
  var ParameterTransformer_1 = require("./ParameterTransformer");
10
10
  var NodeTransformer;
11
11
  (function (NodeTransformer) {
12
- function transform(project, node) {
13
- if (typescript_1.default.isMethodDeclaration(node))
14
- return MethodTransformer_1.MethodTransformer.transform(project, node);
15
- else if (typescript_1.default.isParameter(node))
16
- return ParameterTransformer_1.ParameterTransformer.transform(project, node);
17
- return node;
18
- }
19
- NodeTransformer.transform = transform;
12
+ NodeTransformer.transform = function (project) {
13
+ return function (node) {
14
+ return typescript_1.default.isMethodDeclaration(node)
15
+ ? MethodTransformer_1.MethodTransformer.transform(project)(node)
16
+ : typescript_1.default.isParameter(node)
17
+ ? ParameterTransformer_1.ParameterTransformer.transform(project)(node)
18
+ : node;
19
+ };
20
+ };
20
21
  })(NodeTransformer = exports.NodeTransformer || (exports.NodeTransformer = {}));
21
22
  //# sourceMappingURL=NodeTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,yDAAwD;AACxD,+DAA8D;AAE9D,IAAiB,eAAe,CAW/B;AAXD,WAAiB,eAAe;IAC5B,SAAgB,SAAS,CACrB,OAAgC,EAChC,IAAa;QAEb,IAAI,oBAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,OAAO,qCAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aACjD,IAAI,oBAAE,CAAC,WAAW,CAAC,IAAI,CAAC;YACzB,OAAO,2CAAoB,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IAChB,CAAC;IATe,yBAAS,YASxB,CAAA;AACL,CAAC,EAXgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAW/B"}
1
+ {"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,yDAAwD;AACxD,+DAA8D;AAE9D,IAAiB,eAAe,CAS/B;AATD,WAAiB,eAAe;IACf,yBAAS,GAClB,UAAC,OAAgC;QACjC,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;gBAC5C,CAAC,CAAC,oBAAE,CAAC,WAAW,CAAC,IAAI,CAAC;oBACtB,CAAC,CAAC,2CAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;oBAC/C,CAAC,CAAC,IAAI;QAJV,CAIU;IALd,CAKc,CAAC;AACvB,CAAC,EATgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAS/B"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace ParameterDecoratorTransformer {
4
- function transform(project: INestiaTransformProject, type: ts.Type, decorator: ts.Decorator): ts.Decorator;
4
+ const transform: (project: INestiaTransformProject) => (type: ts.Type) => (decorator: ts.Decorator) => ts.Decorator;
5
5
  }
@@ -11,55 +11,58 @@ var TypedParamProgrammer_1 = require("../programmers/TypedParamProgrammer");
11
11
  var TypedQueryProgrammer_1 = require("../programmers/TypedQueryProgrammer");
12
12
  var ParameterDecoratorTransformer;
13
13
  (function (ParameterDecoratorTransformer) {
14
- function transform(project, type, decorator) {
15
- var _a;
16
- //----
17
- // VALIDATIONS
18
- //----
19
- // CHECK DECORATOR
20
- if (!typescript_1.default.isCallExpression(decorator.expression))
21
- return decorator;
22
- // SIGNATURE DECLARATION
23
- var declaration = (_a = project.checker.getResolvedSignature(decorator.expression)) === null || _a === void 0 ? void 0 : _a.declaration;
24
- if (declaration === undefined)
25
- return decorator;
26
- // FILE PATH
27
- var file = path_1.default.resolve(declaration.getSourceFile().fileName);
28
- if (file.indexOf(LIB_PATH) === -1 && file.indexOf(SRC_PATH) === -1)
29
- return decorator;
30
- //----
31
- // TRANSFORMATION
32
- //----
33
- // FIND PROGRAMMER
34
- var programmer = FUNCTORS[project.checker.getTypeAtLocation(declaration).symbol.name];
35
- if (programmer === undefined)
36
- return decorator;
37
- // GET TYPE INFO
38
- var typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
39
- if (typeNode === undefined)
40
- return decorator;
41
- // DO TRANSFORM
42
- return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, programmer(project, decorator.expression.expression)(decorator.expression.arguments)(type)));
43
- }
44
- ParameterDecoratorTransformer.transform = transform;
14
+ ParameterDecoratorTransformer.transform = function (project) {
15
+ return function (type) {
16
+ return function (decorator) {
17
+ var _a;
18
+ //----
19
+ // VALIDATIONS
20
+ //----
21
+ // CHECK DECORATOR
22
+ if (!typescript_1.default.isCallExpression(decorator.expression))
23
+ return decorator;
24
+ // SIGNATURE DECLARATION
25
+ var declaration = (_a = project.checker.getResolvedSignature(decorator.expression)) === null || _a === void 0 ? void 0 : _a.declaration;
26
+ if (declaration === undefined)
27
+ return decorator;
28
+ // FILE PATH
29
+ var file = path_1.default.resolve(declaration.getSourceFile().fileName);
30
+ if (file.indexOf(LIB_PATH) === -1 && file.indexOf(SRC_PATH) === -1)
31
+ return decorator;
32
+ //----
33
+ // TRANSFORMATION
34
+ //----
35
+ // FIND PROGRAMMER
36
+ var programmer = FUNCTORS[project.checker.getTypeAtLocation(declaration).symbol.name];
37
+ if (programmer === undefined)
38
+ return decorator;
39
+ // GET TYPE INFO
40
+ var typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
41
+ if (typeNode === undefined)
42
+ return decorator;
43
+ // DO TRANSFORM
44
+ return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, programmer(project)(decorator.expression.expression)(decorator.expression.arguments)(type)));
45
+ };
46
+ };
47
+ };
45
48
  })(ParameterDecoratorTransformer = exports.ParameterDecoratorTransformer || (exports.ParameterDecoratorTransformer = {}));
46
49
  var FUNCTORS = {
47
- EncryptedBody: function (project, modulo) { return function (parameters) { return function (type) {
50
+ EncryptedBody: function (project) { return function (modulo) { return function (parameters) { return function (type) {
48
51
  return parameters.length
49
52
  ? parameters
50
53
  : [TypedBodyProgrammer_1.TypedBodyProgrammer.generate(project)(modulo)(type)];
51
- }; }; },
52
- TypedBody: function (project, modulo) { return function (parameters) { return function (type) {
54
+ }; }; }; },
55
+ TypedBody: function (project) { return function (modulo) { return function (parameters) { return function (type) {
53
56
  return parameters.length
54
57
  ? parameters
55
58
  : [TypedBodyProgrammer_1.TypedBodyProgrammer.generate(project)(modulo)(type)];
56
- }; }; },
57
- TypedParam: TypedParamProgrammer_1.TypedParamProgrammer.generate,
58
- TypedQuery: function (project, modulo) { return function (parameters) { return function (type) {
59
+ }; }; }; },
60
+ TypedParam: function (project) { return function () { return TypedParamProgrammer_1.TypedParamProgrammer.generate(project); }; },
61
+ TypedQuery: function (project) { return function (modulo) { return function (parameters) { return function (type) {
59
62
  return parameters.length
60
63
  ? parameters
61
64
  : [TypedQueryProgrammer_1.TypedQueryProgrammer.generate(project)(modulo)(type)];
62
- }; }; },
65
+ }; }; }; },
63
66
  };
64
67
  var LIB_PATH = path_1.default.join("node_modules", "@nestia", "core", "lib", "decorators");
65
68
  var SRC_PATH = path_1.default.resolve(path_1.default.join(__dirname, "..", "decorators"));
@@ -1 +1 @@
1
- {"version":3,"file":"ParameterDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterDecoratorTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ParameterDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterDecoratorTransformer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
2
  import { INestiaTransformProject } from "../options/INestiaTransformProject";
3
3
  export declare namespace ParameterTransformer {
4
- function transform(project: INestiaTransformProject, param: ts.ParameterDeclaration): ts.ParameterDeclaration;
4
+ const transform: (project: INestiaTransformProject) => (param: ts.ParameterDeclaration) => ts.ParameterDeclaration;
5
5
  }