web_api_base 2.5.3 → 2.6.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 (53) hide show
  1. package/dist/Application.js +3 -0
  2. package/dist/Application.js.map +1 -1
  3. package/dist/dependencyInjection/DependecyService.d.ts +9 -0
  4. package/dist/dependencyInjection/DependecyService.js +55 -2
  5. package/dist/dependencyInjection/DependecyService.js.map +1 -1
  6. package/dist/index.d.ts +2 -0
  7. package/dist/{Index.js → index.js} +10 -1
  8. package/dist/index.js.map +1 -0
  9. package/dist/jest.config.js +5 -1
  10. package/dist/jest.config.js.map +1 -1
  11. package/package.json +37 -41
  12. package/readme.md +92 -33
  13. package/dist/App.js +0 -32
  14. package/dist/App.js.map +0 -1
  15. package/dist/Configuration.js +0 -69
  16. package/dist/Configuration.js.map +0 -1
  17. package/dist/Index.js.map +0 -1
  18. package/dist/__tests__/classes/Controller.d.ts +0 -8
  19. package/dist/__tests__/classes/Controller.js +0 -54
  20. package/dist/__tests__/classes/Controller.js.map +0 -1
  21. package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.d.ts +0 -1
  22. package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.js +0 -40
  23. package/dist/__tests__/decorators/controllers/ControllerDecorators.spec.js.map +0 -1
  24. package/dist/bin/create-webapi-app.d.ts +0 -1
  25. package/dist/bin/create-webapi-app.js +0 -4
  26. package/dist/bin/create-webapi-app.js.map +0 -1
  27. package/dist/config.json +0 -1
  28. package/dist/controllers/FileController.js +0 -162
  29. package/dist/controllers/FileController.js.map +0 -1
  30. package/dist/controllers/StatusController.js +0 -44
  31. package/dist/controllers/StatusController.js.map +0 -1
  32. package/dist/interfaces/entities/IDirectory.d.ts +0 -5
  33. package/dist/interfaces/entities/IDirectory.js +0 -3
  34. package/dist/interfaces/entities/IDirectory.js.map +0 -1
  35. package/dist/services/FileService.js +0 -45
  36. package/dist/services/FileService.js.map +0 -1
  37. package/dist/services/IFileService.js +0 -8
  38. package/dist/services/IFileService.js.map +0 -1
  39. package/dist/services/fileService/FileService.d.ts +0 -10
  40. package/dist/services/fileService/FileService.js +0 -96
  41. package/dist/services/fileService/FileService.js.map +0 -1
  42. package/dist/services/fileService/FileServiceBase.d.ts +0 -10
  43. package/dist/services/fileService/FileServiceBase.js +0 -7
  44. package/dist/services/fileService/FileServiceBase.js.map +0 -1
  45. package/dist/temp/Application.d.ts +0 -6
  46. package/dist/temp/Application.js +0 -33
  47. package/dist/temp/Application.js.map +0 -1
  48. package/dist/temp/Index.d.ts +0 -1
  49. package/dist/temp/Index.js +0 -8
  50. package/dist/temp/Index.js.map +0 -1
  51. package/dist/temp/controllers/StatusController.d.ts +0 -5
  52. package/dist/temp/controllers/StatusController.js +0 -33
  53. package/dist/temp/controllers/StatusController.js.map +0 -1
@@ -112,6 +112,9 @@ class Application {
112
112
  }
113
113
  }
114
114
  let controller = DependecyService_1.default.ResolveCtor(empty.constructor);
115
+ if (controller == undefined)
116
+ controller = new ctor();
117
+ DependecyService_1.default.CheckForDependenciesAndResolve(controller);
115
118
  controller.Request = context.Request;
116
119
  controller.Response = context.Response;
117
120
  controller[method](...params);
@@ -1 +1 @@
1
- {"version":3,"file":"Application.js","sourceRoot":"","sources":["../Application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Application.js","sourceRoot":"","sources":["../Application.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,18 @@
1
+ import 'reflect-metadata';
1
2
  export default class DependecyService {
2
3
  private static _services;
4
+ private static _injectableKey;
5
+ private static _injectableTypeKey;
3
6
  static RegisterFor(type: Function, ctor: {
4
7
  new (...args: any[]): any;
5
8
  }, builder?: () => any): void;
6
9
  static Register(type: Function, builder?: () => any): void;
7
10
  static Resolve<T>(type: Function, args?: any[]): T;
8
11
  static ResolveCtor(ctor: Function, args?: any[]): any;
12
+ static Injectable(): (target: Object, property: string | symbol) => void;
13
+ static IsInjectable(target: object, property: string): boolean;
14
+ static InjectOne(tp: Function): (target: Object, property: string | symbol) => void;
15
+ static GetDIType(target: object, property: string): any;
16
+ static CheckForDependenciesAndResolve(object: any): void;
17
+ static Build<T extends Function>(Ctor: T): T;
9
18
  }
@@ -1,13 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("reflect-metadata");
3
4
  class DependecyService {
4
5
  static RegisterFor(type, ctor, builder) {
5
6
  let defaultBuilder = () => Reflect.construct(ctor !== null && ctor !== void 0 ? ctor : type, []);
6
- this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
7
+ let exist = this._services.find(s => s.Type == type);
8
+ if (exist === undefined)
9
+ this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
10
+ else
11
+ exist.Builder = builder !== null && builder !== void 0 ? builder : defaultBuilder;
7
12
  }
8
13
  static Register(type, builder) {
9
14
  let defaultBuilder = () => Reflect.construct(type, []);
10
- this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
15
+ let exist = this._services.find(s => s.Type == type);
16
+ if (exist === undefined)
17
+ this._services.push({ Type: type, Builder: builder !== null && builder !== void 0 ? builder : defaultBuilder });
18
+ else
19
+ exist.Builder = builder !== null && builder !== void 0 ? builder : defaultBuilder;
11
20
  }
12
21
  static Resolve(type, args) {
13
22
  var _a;
@@ -17,7 +26,51 @@ class DependecyService {
17
26
  var _a;
18
27
  return (_a = this._services.find(u => u.Type == ctor)) === null || _a === void 0 ? void 0 : _a.Builder(args);
19
28
  }
29
+ static Injectable() {
30
+ return function (target, property) {
31
+ Reflect.defineMetadata(DependecyService._injectableKey, true, target.constructor, property);
32
+ };
33
+ }
34
+ static IsInjectable(target, property) {
35
+ var _a;
36
+ let marked = (_a = Reflect.getMetadata(DependecyService._injectableKey, target, property)) !== null && _a !== void 0 ? _a : false;
37
+ let type = Reflect.getMetadata(DependecyService._injectableTypeKey, target, property) != undefined;
38
+ return marked || type;
39
+ }
40
+ static InjectOne(tp) {
41
+ return function (target, property) {
42
+ Reflect.defineMetadata(DependecyService._injectableTypeKey, tp, target.constructor, property);
43
+ };
44
+ }
45
+ static GetDIType(target, property) {
46
+ let type = Reflect.getMetadata(DependecyService._injectableTypeKey, target.constructor, property);
47
+ if (!type)
48
+ type = Reflect.getMetadata("design:type", target, property);
49
+ return type;
50
+ }
51
+ static CheckForDependenciesAndResolve(object) {
52
+ for (let k of Object.keys(object)) {
53
+ if (object[k] != 'function') {
54
+ if (DependecyService.IsInjectable(object.constructor, k)) {
55
+ let tp = DependecyService.GetDIType(object, k);
56
+ if (tp == undefined)
57
+ throw new Error(`Can not resolve the dependecy of ${object.constructor.name}.${k}`);
58
+ let instance = DependecyService.Resolve(tp);
59
+ if (instance == undefined)
60
+ throw new Error(`Can not resolve the dependecy of ${object.constructor.name}.${k}`);
61
+ object[k] = instance;
62
+ }
63
+ }
64
+ }
65
+ }
66
+ static Build(Ctor) {
67
+ let object = Reflect.construct(Ctor, []);
68
+ this.CheckForDependenciesAndResolve(object);
69
+ return object;
70
+ }
20
71
  }
21
72
  exports.default = DependecyService;
22
73
  DependecyService._services = [];
74
+ DependecyService._injectableKey = "di:injectable";
75
+ DependecyService._injectableTypeKey = "di:injectable-type";
23
76
  //# sourceMappingURL=DependecyService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DependecyService.js","sourceRoot":"","sources":["../../dependencyInjection/DependecyService.ts"],"names":[],"mappings":";;AAAA,MAAqB,gBAAgB;IAI1B,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAsC,EAAE,OAAoB;QAEnG,IAAI,cAAc,GAAG,GAAG,EAAE,CAAE,OAAO,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,IAAI,EAAE,EAAE,CAAQ,CAAC;QAEvE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAe,EAAE,OAAoB;QAExD,IAAI,cAAc,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEvD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,OAAO,CAAI,IAAe,EAAE,IAAa;;QAEnD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAM,CAAC;IACxE,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAa;;QAEpD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;;AA1BL,mCA4BC;AA1BkB,0BAAS,GAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"DependecyService.js","sourceRoot":"","sources":["../../dependencyInjection/DependecyService.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAE1B,MAAqB,gBAAgB;IAO1B,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAsC,EAAE,OAAoB;QAEnG,IAAI,cAAc,GAAG,GAAG,EAAE,CAAE,OAAO,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,IAAI,EAAE,EAAE,CAAQ,CAAC;QAEvE,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAErD,IAAG,KAAK,KAAK,SAAS;YAClB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;;YAE1E,KAAK,CAAC,OAAO,GAAI,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,CAAC;IAEnD,CAAC;IAGM,MAAM,CAAC,QAAQ,CAAC,IAAe,EAAE,OAAoB;QAExD,IAAI,cAAc,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEvD,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAErD,IAAG,KAAK,KAAK,SAAS;YAClB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAG,IAAI,EAAE,OAAO,EAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,EAAE,CAAC,CAAC;;YAE1E,KAAK,CAAC,OAAO,GAAI,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,cAAc,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,OAAO,CAAI,IAAe,EAAE,IAAa;;QAEnD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAM,CAAC;IACxE,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,IAAe,EAAE,IAAa;;QAEpD,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,UAAU;QAEpB,OAAO,UAAS,MAAe,EAAE,QAA0B;YAEvD,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC/F,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,MAAe,EAAE,QAAiB;;QAEzD,IAAI,MAAM,GAAG,MAAA,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,CAAC,mCAAI,KAAK,CAAC;QAC7F,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC;QAEnG,OAAO,MAAM,IAAI,IAAI,CAAC;IAC1B,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,EAAa;QAEjC,OAAO,UAAS,MAAe,EAAE,QAA0B;YAEvD,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QACjG,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,MAAe,EAAE,QAAiB;QAEtD,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAElG,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC;IAChB,CAAC;IAGM,MAAM,CAAC,8BAA8B,CAAC,MAAY;QAErD,KAAI,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAChC;YACI,IAAG,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,EAC1B;gBACI,IAAG,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,EACvD;oBACI,IAAI,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAE/C,IAAG,EAAE,IAAI,SAAS;wBACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;oBAExF,IAAI,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAE5C,IAAG,QAAQ,IAAI,SAAS;wBACpB,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;oBAExF,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;iBACxB;aACJ;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CAAqB,IAAQ;QAE5C,IAAI,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC;QAE5C,OAAO,MAAW,CAAC;IACvB,CAAC;;AA7GL,mCAiHC;AA/GkB,0BAAS,GAAgB,EAAE,CAAC;AAE5B,+BAAc,GAAY,eAAe,CAAC;AAC1C,mCAAkB,GAAY,oBAAoB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -15,6 +15,8 @@ export declare function Run(midleware: IMidleware): (target: Object, methodName:
15
15
  export declare function Action(actionName: String): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
16
16
  export declare function Route(route: string): (target: Function) => void;
17
17
  export declare function Verb(verb: HTTPVerbs): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
18
+ export declare function Inject(): (target: Object, property: string | symbol) => void;
19
+ export declare function InjectAbstract(object: Function): (target: Object, property: string | symbol) => void;
18
20
  export declare function Argument<T>(argName1: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
19
21
  export declare function Argument<T, U>(argName1: string, argName2?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
20
22
  export declare function Argument<T, U, K>(argName1: string, argName2?: string, argName3?: string): (target: Object, methodName: string, propertyDescriptor: PropertyDescriptor) => void;
@@ -3,7 +3,7 @@ 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.Argument = exports.Verb = exports.Route = exports.Action = exports.Run = exports.Use = exports.DependecyService = exports.HTTPVerbs = exports.ControllerBase = exports.ControllersDecorators = exports.ApplicationConfiguration = exports.Application = void 0;
6
+ exports.Argument = exports.InjectAbstract = exports.Inject = exports.Verb = exports.Route = exports.Action = exports.Run = exports.Use = exports.DependecyService = exports.HTTPVerbs = exports.ControllerBase = exports.ControllersDecorators = exports.ApplicationConfiguration = exports.Application = void 0;
7
7
  var Application_1 = require("./Application");
8
8
  Object.defineProperty(exports, "Application", { enumerable: true, get: function () { return __importDefault(Application_1).default; } });
9
9
  var ApplicationConfiguration_1 = require("./ApplicationConfiguration");
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "HTTPVerbs", { enumerable: true, get: function ()
17
17
  var DependecyService_1 = require("./dependencyInjection/DependecyService");
18
18
  Object.defineProperty(exports, "DependecyService", { enumerable: true, get: function () { return __importDefault(DependecyService_1).default; } });
19
19
  const ControllerDecorators_2 = __importDefault(require("./decorators/controllers/ControllerDecorators"));
20
+ const DependecyService_2 = __importDefault(require("./dependencyInjection/DependecyService"));
20
21
  function Use(midleware) {
21
22
  return ControllerDecorators_2.default.Use(midleware);
22
23
  }
@@ -42,6 +43,14 @@ function Verb(verb) {
42
43
  }
43
44
  exports.Verb = Verb;
44
45
  ;
46
+ function Inject() {
47
+ return DependecyService_2.default.Injectable();
48
+ }
49
+ exports.Inject = Inject;
50
+ function InjectAbstract(object) {
51
+ return DependecyService_2.default.InjectOne(object);
52
+ }
53
+ exports.InjectAbstract = InjectAbstract;
45
54
  function Argument(argName1, argName2, argName3, argName4, argName5) {
46
55
  return ControllerDecorators_2.default.Argument(argName1, argName2, argName3, argName4, argName5);
47
56
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAsD;AAA7C,2HAAA,OAAO,OAAe;AAC/B,uEAAiF;AAAxE,qJAAA,OAAO,OAA4B;AAE5C,sFAAiG;AAAxF,8IAAA,OAAO,OAAyB;AACzC,oEAAmE;AAA1D,gHAAA,cAAc,OAAA;AAEvB,yDAAwD;AAA/C,sGAAA,SAAS,OAAA;AAElB,2EAAqF;AAA5E,qIAAA,OAAO,OAAoB;AAQpC,yGAAkF;AAClF,8FAAsE;AAItE,SAAgB,GAAG,CAAC,SAAsB;IAEtC,OAAO,8BAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC;AAHD,kBAGC;AAAC,CAAC;AAEH,SAAgB,GAAG,CAAC,SAAsB;IAEtC,OAAO,8BAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACnD,CAAC;AAHD,kBAGC;AAAC,CAAC;AAEH,SAAgB,MAAM,CAAC,UAAmB;IAEtC,OAAO,8BAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACpD,CAAC;AAHD,wBAGC;AAAC,CAAC;AAEH,SAAgB,KAAK,CAAC,KAAc;IAEhC,OAAO,8BAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAHD,sBAGC;AAAC,CAAC;AAGH,SAAgB,IAAI,CAAC,IAAgB;IAGjC,OAAO,8BAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAJD,oBAIC;AAAC,CAAC;AAEH,SAAgB,MAAM;IAElB,OAAO,0BAAgB,CAAC,UAAU,EAAE,CAAC;AACzC,CAAC;AAHD,wBAGC;AAED,SAAgB,cAAc,CAAC,MAAiB;IAE5C,OAAO,0BAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAHD,wCAGC;AAQD,SAAgB,QAAQ,CAAiB,QAAiB,EAAE,QAAkB,EAAE,QAAkB,EAAE,QAAkB,EAAE,QAAkB;IAEtI,OAAO,8BAAqB,CAAC,QAAQ,CAAiB,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC5G,CAAC;AAHD,4BAGC"}
@@ -3,6 +3,10 @@
3
3
  module.exports = {
4
4
  preset: 'ts-jest',
5
5
  testEnvironment: 'node',
6
- modulePathIgnorePatterns: ['<rootDir>/__test__/classes/'],
6
+ collectCoverage: true,
7
+ testPathIgnorePatterns: [
8
+ "__tests__/classes",
9
+ "__test__/*/*.d.ts"
10
+ ]
7
11
  };
8
12
  //# sourceMappingURL=jest.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jest.config.js","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";AAAA,gEAAgE;AAChE,MAAM,CAAC,OAAO,GAAG;IACf,MAAM,EAAE,SAAS;IACjB,eAAe,EAAE,MAAM;IACvB,wBAAwB,EAAE,CAAC,6BAA6B,CAAC;CAC1D,CAAC"}
1
+ {"version":3,"file":"jest.config.js","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";AAAA,gEAAgE;AAChE,MAAM,CAAC,OAAO,GAAG;IACf,MAAM,EAAE,SAAS;IACjB,eAAe,EAAE,MAAM;IACvB,eAAe,EAAE,IAAI;IACrB,sBAAsB,EAAG;QACvB,mBAAmB;QACnB,mBAAmB;KACpB;CAEF,CAAC"}
package/package.json CHANGED
@@ -1,41 +1,37 @@
1
- {
2
- "name": "web_api_base",
3
- "version": "2.5.3",
4
- "description": "web api base",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "files": [
8
- "/dist"
9
- ],
10
- "scripts": {
11
- "test": "jest",
12
- "debug": "node ./dist/Index.js",
13
- "transpile": "tsc -p tsconfig.json",
14
- "run:tests": "npx jest"
15
- },
16
- "bin":
17
- {
18
- "runs" : "./dist/bin/create-webapi-app.js"
19
- },
20
- "author": "adriano.marino1992@gmail.com",
21
- "repository": "https://github.com/adrianomarino1992/web_api_base.git",
22
- "license": "ISC",
23
- "dependencies": {
24
- "@types/express": "^4.17.15",
25
- "@types/jest": "^29.2.4",
26
- "@types/node": "^18.11.17",
27
- "@types/reflect-metadata": "^0.1.0",
28
- "cors": "^2.8.5",
29
- "express": "^4.18.2",
30
- "formidable": "^2.1.1",
31
- "jest": "^29.3.1",
32
- "platform-folders": "^0.6.0",
33
- "reflect-metadata": "^0.1.13",
34
- "ts-jest": "^29.0.3",
35
- "ts-node": "^10.9.1",
36
- "typescript": "^4.9.4"
37
- },
38
- "devDependencies": {
39
- "@types/formidable": "^2.0.5"
40
- }
41
- }
1
+ {
2
+ "name": "web_api_base",
3
+ "version": "2.6.0",
4
+ "description": "web api base",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "/dist"
9
+ ],
10
+ "scripts": {
11
+ "test": "jest",
12
+ "debug": "node ./dist/Index.js",
13
+ "transpile": "tsc -p tsconfig.json",
14
+ "run:tests": "npx jest"
15
+ },
16
+ "author": "adriano.marino1992@gmail.com",
17
+ "repository": "https://github.com/adrianomarino1992/web_api_base.git",
18
+ "license": "ISC",
19
+ "dependencies": {
20
+ "@types/express": "^4.17.15",
21
+ "@types/jest": "^29.2.4",
22
+ "@types/node": "^18.11.17",
23
+ "@types/reflect-metadata": "^0.1.0",
24
+ "cors": "^2.8.5",
25
+ "express": "^4.18.2",
26
+ "formidable": "^2.1.1",
27
+ "jest": "^29.3.1",
28
+ "platform-folders": "^0.6.0",
29
+ "reflect-metadata": "^0.1.13",
30
+ "ts-jest": "^29.0.3",
31
+ "ts-node": "^10.9.1",
32
+ "typescript": "^4.9.4"
33
+ },
34
+ "devDependencies": {
35
+ "@types/formidable": "^2.0.5"
36
+ }
37
+ }
package/readme.md CHANGED
@@ -21,20 +21,13 @@ After that, we need to create some controllers and they must inherit the abstra
21
21
  ```typescript
22
22
 
23
23
  import { ControllerBase, HTTPVerbs as verbs, Use, Verb, Route, Action } from "web_api_base";
24
- /*
25
24
 
26
- we can use this class to acess all decorators centralized
27
- import { ControllerDecorators as CD } from "web_api_base";
28
25
 
29
- */
30
-
31
- //@CD.Route("/sample")
32
26
  @Route("/sample")
33
27
  export default class SampleController extends ControllerBase
34
28
  {
35
- //@CD.Verb(verbs.GET)
36
- @Verb(verbs.GET)
37
- //@CD.Action("/hello")
29
+
30
+ @Verb(verbs.GET)
38
31
  @Action("/hello")
39
32
  public Hello() : void
40
33
  {
@@ -56,33 +49,12 @@ export default class App extends Application
56
49
  {
57
50
 
58
51
  public override Configure(appConfig: IApplicationConfiguration): void
59
- {
60
- //to define the host use this property, if that property is not changed, the default value will be 0.0.0.0
61
- appConfig.Host = "127.0.0.1";
62
- //to define the app port use this property, if that property is not changed, the default value will be 5555
63
- appConfig.Port = 1234;
64
-
52
+ {
65
53
  //allow CORS
66
54
  this.UseCors();
67
55
 
68
- //register in DI service
69
- DependecyService.Register(SampleController);
70
-
71
- */
72
- if the controlles follow the naming rules, the method UseControllers will automatically append them
73
-
74
- rootDir -
75
- |
76
- | - controllers -
77
- | - <Name>Controller.ts
78
- |
79
- | - App.ts //the class that inherit the Application
80
-
81
- */
82
- this.UseControllers();
83
-
84
- //if not, we can append manually using the method bellow
85
- //ControllerBase.AppendController(SampleController,this);
56
+ //if the controlles follow the naming rules, the method UseControllers will automatically append them
57
+ this.UseControllers();
86
58
 
87
59
  }
88
60
  }
@@ -96,7 +68,94 @@ import Application from './Application';
96
68
  new Application().StartAsync();
97
69
  ```
98
70
 
71
+ ## Dependecy injection service
72
+ Consider this abstraction of a service and some imnplementations
73
+
74
+ ### ./services/SampleService.ts
75
+
76
+ ```typescript
77
+ export abstract class SampleServiceAbstract
78
+ {
79
+ abstract DoSomething() : void;
80
+ }
81
+
82
+ export class SampleService extends SampleServiceAbstract
83
+ {
84
+ public DoSomething(): void {
85
+ console.log("Doing in SampleServices");
86
+ }
87
+ }
88
+
89
+ export class AnotherService extends SampleServiceAbstract
90
+ {
91
+ public DoSomething(): void {
92
+ console.log("Doing another job in AnotherService");
93
+ }
94
+ }
95
+ ```
96
+
97
+ We can use the DI service like this
98
+
99
+ ### ./controllers/SampleController.ts
100
+
101
+ ```typescript
102
+
103
+ import { ControllerBase, HTTPVerbs as verbs, Use, Verb, Route, Action } from "web_api_base";
104
+ import {SampleServiceAbstract } from '../services/SampleService.ts';
105
+
106
+ @Route("/sample")
107
+ export default class SampleController extends ControllerBase
108
+ {
109
+ @Inject() // say to DI that this property will be inject on the instance
110
+ public SomeDepency : SampleServiceAbstract;
111
+
112
+ constructor(someDependecy : SampleServiceAbstract)
113
+ {
114
+ super();
115
+ this.SomeDepency = someDependecy ;
116
+ }
99
117
 
118
+ @Verb(verbs.GET)
119
+ @Action("/hello")
120
+ public Hello() : void
121
+ {
122
+ this.OK({message: "Hello Word!"})
123
+ }
124
+
125
+ }
126
+ ```
127
+
128
+ And we can register our dependecies in Application ConfigureAsync method
129
+
130
+ ### App.ts
131
+
132
+ ```typescript
133
+
134
+ import { Application, IApplicationConfiguration, DependecyService, } from "web_api_base";
135
+
136
+ import { SampleService, SampleServiceAbstract } from './service/SampleService';
137
+
138
+
139
+ export default class App extends Application
140
+ {
141
+ constructor()
142
+ {
143
+ super();
144
+ }
145
+
146
+ public override async ConfigureAsync(appConfig: IApplicationConfiguration): Promise<void>
147
+ {
148
+ this.UseCors();
149
+
150
+ // everytime some class need a SampleServiceAbstract it will get a intance of SampleService
151
+ DependecyService.RegisterFor(SampleServiceAbstract, SampleService);
152
+
153
+ this.UseControllers();
154
+
155
+ }
156
+ }
157
+
158
+ ```
100
159
 
101
160
  ## Contributing
102
161
 
package/dist/App.js DELETED
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const Configuration_1 = __importDefault(require("./Configuration"));
16
- const express_1 = __importDefault(require("express"));
17
- class App {
18
- constructor() {
19
- this.Configuration = new Configuration_1.default();
20
- this.Express = (0, express_1.default)();
21
- }
22
- StartAsync() {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- yield this.Configuration.StartAsync();
25
- this.Express.listen(this.Configuration.Port, this.Configuration.Host, () => {
26
- console.log(`App running on ${this.Configuration.Host}:${this.Configuration.Port}`);
27
- });
28
- });
29
- }
30
- }
31
- exports.default = App;
32
- //# sourceMappingURL=App.js.map
package/dist/App.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../App.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oEAA2C;AAE3C,sDAAsC;AAGtC,MAAqB,GAAG;IAQpB;QAEI,IAAI,CAAC,aAAa,GAAG,IAAI,uBAAa,EAAE,CAAC;QAEzC,IAAI,CAAC,OAAO,GAAG,IAAA,iBAAe,GAAE,CAAC;IACrC,CAAC;IAEY,UAAU;;YAEnB,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;YAEtC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAE,EAAE;gBAEtE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YACxF,CAAC,CAAC,CAAA;QACN,CAAC;KAAA;CAEJ;AAzBD,sBAyBC"}
@@ -1,69 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const fs_1 = __importDefault(require("fs"));
16
- class Configuration {
17
- constructor() {
18
- this.Host = "0.0.0.0";
19
- this.Port = 5432;
20
- process.env["root_dir"] = __dirname;
21
- }
22
- StartAsync() {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- if (!(yield this.CheckFileAsync())) {
25
- yield this.CreateFileAsync();
26
- }
27
- else {
28
- yield this.ReadFileAsync();
29
- }
30
- });
31
- }
32
- CheckFileAsync() {
33
- return __awaiter(this, void 0, void 0, function* () {
34
- return new Promise((resolve, _) => resolve(fs_1.default.existsSync(`${__dirname}\\config.json`)));
35
- });
36
- }
37
- ReadFileAsync() {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- return new Promise((resolve, _) => {
40
- fs_1.default.readFile(`${__dirname}\\config.json`, 'utf-8', (error, data) => {
41
- if (error) {
42
- throw error;
43
- }
44
- let json = JSON.parse(data);
45
- for (let key in this) {
46
- if (json[key] != undefined) {
47
- this[key] = json[key];
48
- }
49
- }
50
- resolve(true);
51
- });
52
- });
53
- });
54
- }
55
- CreateFileAsync() {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- return new Promise((resolve, _) => {
58
- fs_1.default.writeFile(`${__dirname}\\config.json`, JSON.stringify(this), 'utf-8', error => {
59
- if (error) {
60
- throw error;
61
- }
62
- resolve(true);
63
- });
64
- });
65
- });
66
- }
67
- }
68
- exports.default = Configuration;
69
- //# sourceMappingURL=Configuration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Configuration.js","sourceRoot":"","sources":["../Configuration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4CAAsB;AAItB,MAAqB,aAAa;IAM9B;QAHO,SAAI,GAAY,SAAS,CAAC;QAC1B,SAAI,GAAY,IAAI,CAAC;QAIxB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;IACxC,CAAC;IAEY,UAAU;;YAEnB,IAAG,CAAC,CAAA,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA,EAC/B;gBACI,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;aAEhC;iBAAI;gBAED,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;aAC9B;QACL,CAAC;KAAA;IAEa,cAAc;;YAExB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,YAAI,CAAC,UAAU,CAAC,GAAG,SAAS,eAAe,CAAC,CAAC,CAAC,CAAC;QACvG,CAAC;KAAA;IAEa,aAAa;;YAEvB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;gBAEvC,YAAI,CAAC,QAAQ,CAAC,GAAG,SAAS,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBAEhE,IAAG,KAAK,EACR;wBACI,MAAM,KAAK,CAAC;qBACf;oBAED,IAAI,IAAI,GAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAElC,KAAI,IAAI,GAAG,IAAI,IAAI,EACnB;wBACI,IAAG,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EACzB;4BACI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;yBACzB;qBACJ;oBAED,OAAO,CAAC,IAAI,CAAC,CAAC;gBAElB,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;QACN,CAAC;KAAA;IAEa,eAAe;;YAGzB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,CAAC,EAAC,EAAE;gBAEtC,YAAI,CAAC,SAAS,CAAC,GAAG,SAAS,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;oBAG/E,IAAG,KAAK,EACR;wBACI,MAAM,KAAK,CAAC;qBACf;oBAED,OAAO,CAAC,IAAI,CAAC,CAAC;gBAElB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAA;QAEN,CAAC;KAAA;CAEJ;AA3ED,gCA2EC"}
package/dist/Index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAsD;AAA7C,2HAAA,OAAO,OAAe;AAC/B,uEAAiF;AAAxE,qJAAA,OAAO,OAA4B;AAE5C,sFAAiG;AAAxF,8IAAA,OAAO,OAAyB;AACzC,oEAAmE;AAA1D,gHAAA,cAAc,OAAA;AAEvB,yDAAwD;AAA/C,sGAAA,SAAS,OAAA;AAElB,2EAAqF;AAA5E,qIAAA,OAAO,OAAoB;AAQpC,yGAAkF;AAIlF,SAAgB,GAAG,CAAC,SAAsB;IAEtC,OAAO,8BAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC;AAHD,kBAGC;AAAC,CAAC;AAEH,SAAgB,GAAG,CAAC,SAAsB;IAEtC,OAAO,8BAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACnD,CAAC;AAHD,kBAGC;AAAC,CAAC;AAEH,SAAgB,MAAM,CAAC,UAAmB;IAEtC,OAAO,8BAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACpD,CAAC;AAHD,wBAGC;AAAC,CAAC;AAEH,SAAgB,KAAK,CAAC,KAAc;IAEhC,OAAO,8BAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAHD,sBAGC;AAAC,CAAC;AAGH,SAAgB,IAAI,CAAC,IAAgB;IAEjC,OAAO,8BAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAHD,oBAGC;AAAC,CAAC;AAMH,SAAgB,QAAQ,CAAiB,QAAiB,EAAE,QAAkB,EAAE,QAAkB,EAAE,QAAkB,EAAE,QAAkB;IAEtI,OAAO,8BAAqB,CAAC,QAAQ,CAAiB,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC5G,CAAC;AAHD,4BAGC"}
@@ -1,8 +0,0 @@
1
- import { ControllerBase } from "../../controllers/base/ControllerBase";
2
- import IApplication from "../../interfaces/IApplication";
3
- export declare class ControllerTest extends ControllerBase {
4
- constructor();
5
- TestAction(name: string): void;
6
- TestActionTwo(name: string, age: number): void;
7
- AppendSync(application: IApplication): void;
8
- }
@@ -1,54 +0,0 @@
1
- "use strict";
2
- /* istanbul ignore next */
3
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
4
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
6
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7
- return c > 3 && r && Object.defineProperty(target, key, r), r;
8
- };
9
- var __metadata = (this && this.__metadata) || function (k, v) {
10
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
11
- };
12
- var __importDefault = (this && this.__importDefault) || function (mod) {
13
- return (mod && mod.__esModule) ? mod : { "default": mod };
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ControllerTest = void 0;
17
- const ControllerBase_1 = require("../../controllers/base/ControllerBase");
18
- const ControllerDecorators_1 = __importDefault(require("../../decorators/controllers/ControllerDecorators"));
19
- const HttpVerbs_1 = require("../../enums/httpVerbs/HttpVerbs");
20
- let ControllerTest = class ControllerTest extends ControllerBase_1.ControllerBase {
21
- constructor() {
22
- super();
23
- }
24
- TestAction(name) {
25
- console.log(name);
26
- }
27
- TestActionTwo(name, age) {
28
- console.log(name, age);
29
- }
30
- AppendSync(application) {
31
- }
32
- };
33
- __decorate([
34
- ControllerDecorators_1.default.Action("Test"),
35
- ControllerDecorators_1.default.Verb(HttpVerbs_1.HTTPVerbs.GET),
36
- ControllerDecorators_1.default.Argument('name'),
37
- __metadata("design:type", Function),
38
- __metadata("design:paramtypes", [String]),
39
- __metadata("design:returntype", void 0)
40
- ], ControllerTest.prototype, "TestAction", null);
41
- __decorate([
42
- ControllerDecorators_1.default.Action("Test"),
43
- ControllerDecorators_1.default.Verb(HttpVerbs_1.HTTPVerbs.GET),
44
- ControllerDecorators_1.default.Argument('name', 'age'),
45
- __metadata("design:type", Function),
46
- __metadata("design:paramtypes", [String, Number]),
47
- __metadata("design:returntype", void 0)
48
- ], ControllerTest.prototype, "TestActionTwo", null);
49
- ControllerTest = __decorate([
50
- ControllerDecorators_1.default.Route("/test"),
51
- __metadata("design:paramtypes", [])
52
- ], ControllerTest);
53
- exports.ControllerTest = ControllerTest;
54
- //# sourceMappingURL=Controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../../__tests__/classes/Controller.ts"],"names":[],"mappings":";AAAA,0BAA0B;;;;;;;;;;;;;;;AAE1B,0EAAuE;AACvE,6GAAsF;AACtF,+DAA4D;AAK5D,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,+BAAc;IAE9C;QAEI,KAAK,EAAE,CAAC;IACZ,CAAC;IAKM,UAAU,CAAC,IAAa;QAE3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAKM,aAAa,CAAC,IAAa,EAAE,GAAY;QAE5C,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3B,CAAC;IAGM,UAAU,CAAC,WAAyB;IAG3C,CAAC;CACJ,CAAA;AAlBG;IAHC,8BAAqB,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,8BAAqB,CAAC,IAAI,CAAC,qBAAS,CAAC,GAAG,CAAC;IACzC,8BAAqB,CAAC,QAAQ,CAAS,MAAM,CAAC;;;;gDAI9C;AAKD;IAHC,8BAAqB,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,8BAAqB,CAAC,IAAI,CAAC,qBAAS,CAAC,GAAG,CAAC;IACzC,8BAAqB,CAAC,QAAQ,CAAiB,MAAM,EAAE,KAAK,CAAC;;;;mDAI7D;AArBQ,cAAc;IAD1B,8BAAqB,CAAC,KAAK,CAAC,OAAO,CAAC;;GACxB,cAAc,CA4B1B;AA5BY,wCAAc"}