@lerianstudio/sindarian-server 1.0.0-beta.1 → 1.0.0-beta.12

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 (199) hide show
  1. package/README.md +367 -0
  2. package/dist/constants/index.d.ts +1 -0
  3. package/dist/constants/index.d.ts.map +1 -1
  4. package/dist/constants/index.js +1 -0
  5. package/dist/constants/index.js.map +1 -1
  6. package/dist/constants/keys.d.ts +5 -0
  7. package/dist/constants/keys.d.ts.map +1 -1
  8. package/dist/constants/keys.js +6 -1
  9. package/dist/constants/keys.js.map +1 -1
  10. package/dist/constants/scopes.d.ts +6 -0
  11. package/dist/constants/scopes.d.ts.map +1 -0
  12. package/dist/constants/scopes.js +10 -0
  13. package/dist/constants/scopes.js.map +1 -0
  14. package/dist/context/arguments-host.d.ts +14 -0
  15. package/dist/context/arguments-host.d.ts.map +1 -0
  16. package/dist/context/arguments-host.js +28 -0
  17. package/dist/context/arguments-host.js.map +1 -0
  18. package/dist/context/execution-context.d.ts +10 -0
  19. package/dist/context/execution-context.d.ts.map +1 -0
  20. package/dist/context/execution-context.js +19 -0
  21. package/dist/context/execution-context.js.map +1 -0
  22. package/dist/context/http-arguments-host.d.ts +8 -0
  23. package/dist/context/http-arguments-host.d.ts.map +1 -0
  24. package/dist/context/http-arguments-host.js +17 -0
  25. package/dist/context/http-arguments-host.js.map +1 -0
  26. package/dist/context/index.d.ts +4 -0
  27. package/dist/context/index.d.ts.map +1 -0
  28. package/dist/context/index.js +20 -0
  29. package/dist/context/index.js.map +1 -0
  30. package/dist/controllers/base-controller.d.ts +0 -2
  31. package/dist/controllers/base-controller.d.ts.map +1 -1
  32. package/dist/controllers/base-controller.js +0 -15
  33. package/dist/controllers/base-controller.js.map +1 -1
  34. package/dist/controllers/decorators/body-decorator.d.ts +12 -17
  35. package/dist/controllers/decorators/body-decorator.d.ts.map +1 -1
  36. package/dist/controllers/decorators/body-decorator.js +55 -43
  37. package/dist/controllers/decorators/body-decorator.js.map +1 -1
  38. package/dist/controllers/decorators/controller-decorator.d.ts +5 -8
  39. package/dist/controllers/decorators/controller-decorator.d.ts.map +1 -1
  40. package/dist/controllers/decorators/controller-decorator.js +30 -66
  41. package/dist/controllers/decorators/controller-decorator.js.map +1 -1
  42. package/dist/controllers/decorators/param-decorator.d.ts +4 -9
  43. package/dist/controllers/decorators/param-decorator.d.ts.map +1 -1
  44. package/dist/controllers/decorators/param-decorator.js +33 -29
  45. package/dist/controllers/decorators/param-decorator.js.map +1 -1
  46. package/dist/controllers/decorators/query-decorator.d.ts +11 -15
  47. package/dist/controllers/decorators/query-decorator.d.ts.map +1 -1
  48. package/dist/controllers/decorators/query-decorator.js +24 -38
  49. package/dist/controllers/decorators/query-decorator.js.map +1 -1
  50. package/dist/controllers/decorators/request-decorator.d.ts +8 -12
  51. package/dist/controllers/decorators/request-decorator.d.ts.map +1 -1
  52. package/dist/controllers/decorators/request-decorator.js +21 -17
  53. package/dist/controllers/decorators/request-decorator.js.map +1 -1
  54. package/dist/controllers/decorators/route-decorator.d.ts +12 -1
  55. package/dist/controllers/decorators/route-decorator.d.ts.map +1 -1
  56. package/dist/controllers/decorators/route-decorator.js +24 -16
  57. package/dist/controllers/decorators/route-decorator.js.map +1 -1
  58. package/dist/dependency-injection/container.js +1 -1
  59. package/dist/dependency-injection/container.js.map +1 -1
  60. package/dist/dependency-injection/index.d.ts +2 -1
  61. package/dist/dependency-injection/index.d.ts.map +1 -1
  62. package/dist/dependency-injection/index.js +3 -2
  63. package/dist/dependency-injection/index.js.map +1 -1
  64. package/dist/dependency-injection/injectable-decorator.d.ts +7 -0
  65. package/dist/dependency-injection/injectable-decorator.d.ts.map +1 -0
  66. package/dist/dependency-injection/injectable-decorator.js +21 -0
  67. package/dist/dependency-injection/injectable-decorator.js.map +1 -0
  68. package/dist/exceptions/api-exception.d.ts +4 -7
  69. package/dist/exceptions/api-exception.d.ts.map +1 -1
  70. package/dist/exceptions/api-exception.js +8 -4
  71. package/dist/exceptions/api-exception.js.map +1 -1
  72. package/dist/exceptions/base-exception-filter.d.ts +8 -0
  73. package/dist/exceptions/base-exception-filter.d.ts.map +1 -0
  74. package/dist/exceptions/base-exception-filter.js +21 -0
  75. package/dist/exceptions/base-exception-filter.js.map +1 -0
  76. package/dist/exceptions/decorators/catch-decorator.d.ts +8 -0
  77. package/dist/exceptions/decorators/catch-decorator.d.ts.map +1 -0
  78. package/dist/exceptions/decorators/catch-decorator.js +14 -0
  79. package/dist/exceptions/decorators/catch-decorator.js.map +1 -0
  80. package/dist/exceptions/decorators/index.d.ts +3 -0
  81. package/dist/exceptions/decorators/index.d.ts.map +1 -0
  82. package/dist/exceptions/decorators/index.js +8 -0
  83. package/dist/exceptions/decorators/index.js.map +1 -0
  84. package/dist/exceptions/decorators/use-filters-decorator.d.ts +15 -0
  85. package/dist/exceptions/decorators/use-filters-decorator.d.ts.map +1 -0
  86. package/dist/exceptions/decorators/use-filters-decorator.js +47 -0
  87. package/dist/exceptions/decorators/use-filters-decorator.js.map +1 -0
  88. package/dist/exceptions/exception-filter.d.ts +6 -0
  89. package/dist/exceptions/exception-filter.d.ts.map +1 -0
  90. package/dist/exceptions/exception-filter.js +7 -0
  91. package/dist/exceptions/exception-filter.js.map +1 -0
  92. package/dist/exceptions/index.d.ts +3 -0
  93. package/dist/exceptions/index.d.ts.map +1 -1
  94. package/dist/exceptions/index.js +3 -0
  95. package/dist/exceptions/index.js.map +1 -1
  96. package/dist/index.d.ts +10 -0
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +15 -1
  99. package/dist/index.js.map +1 -1
  100. package/dist/interceptor/call-handler.d.ts +4 -0
  101. package/dist/interceptor/call-handler.d.ts.map +1 -0
  102. package/dist/interceptor/call-handler.js +3 -0
  103. package/dist/interceptor/call-handler.js.map +1 -0
  104. package/dist/interceptor/decorators/index.d.ts +2 -0
  105. package/dist/interceptor/decorators/index.d.ts.map +1 -0
  106. package/dist/interceptor/decorators/index.js +6 -0
  107. package/dist/interceptor/decorators/index.js.map +1 -0
  108. package/dist/interceptor/decorators/use-interceptor-decorator.d.ts +15 -0
  109. package/dist/interceptor/decorators/use-interceptor-decorator.d.ts.map +1 -0
  110. package/dist/interceptor/decorators/use-interceptor-decorator.js +76 -0
  111. package/dist/interceptor/decorators/use-interceptor-decorator.js.map +1 -0
  112. package/dist/interceptor/index.d.ts +4 -0
  113. package/dist/interceptor/index.d.ts.map +1 -0
  114. package/dist/interceptor/index.js +20 -0
  115. package/dist/interceptor/index.js.map +1 -0
  116. package/dist/interceptor/interceptor.d.ts +3 -5
  117. package/dist/interceptor/interceptor.d.ts.map +1 -1
  118. package/dist/interceptor/interceptor.js.map +1 -1
  119. package/dist/logger/console-logger.d.ts +24 -0
  120. package/dist/logger/console-logger.d.ts.map +1 -0
  121. package/dist/logger/console-logger.js +78 -0
  122. package/dist/logger/console-logger.js.map +1 -0
  123. package/dist/logger/index.d.ts +4 -0
  124. package/dist/logger/index.d.ts.map +1 -0
  125. package/dist/logger/index.js +8 -0
  126. package/dist/logger/index.js.map +1 -0
  127. package/dist/logger/logger-service.d.ts +34 -0
  128. package/dist/logger/logger-service.d.ts.map +1 -0
  129. package/dist/logger/logger-service.js +12 -0
  130. package/dist/logger/logger-service.js.map +1 -0
  131. package/dist/logger/logger.d.ts +21 -0
  132. package/dist/logger/logger.d.ts.map +1 -0
  133. package/dist/logger/logger.js +86 -0
  134. package/dist/logger/logger.js.map +1 -0
  135. package/dist/modules/module-decorator.d.ts +5 -3
  136. package/dist/modules/module-decorator.d.ts.map +1 -1
  137. package/dist/modules/module-decorator.js +78 -24
  138. package/dist/modules/module-decorator.js.map +1 -1
  139. package/dist/pipes/decorators/index.d.ts +2 -0
  140. package/dist/pipes/decorators/index.d.ts.map +1 -0
  141. package/dist/pipes/decorators/index.js +6 -0
  142. package/dist/pipes/decorators/index.js.map +1 -0
  143. package/dist/pipes/decorators/use-pipes.d.ts +19 -0
  144. package/dist/pipes/decorators/use-pipes.d.ts.map +1 -0
  145. package/dist/pipes/decorators/use-pipes.js +118 -0
  146. package/dist/pipes/decorators/use-pipes.js.map +1 -0
  147. package/dist/pipes/index.d.ts +3 -0
  148. package/dist/pipes/index.d.ts.map +1 -0
  149. package/dist/pipes/index.js +18 -0
  150. package/dist/pipes/index.js.map +1 -0
  151. package/dist/pipes/pipe-transform.d.ts +46 -0
  152. package/dist/pipes/pipe-transform.d.ts.map +1 -0
  153. package/dist/pipes/pipe-transform.js +3 -0
  154. package/dist/pipes/pipe-transform.js.map +1 -0
  155. package/dist/server/server-factory.d.ts +23 -6
  156. package/dist/server/server-factory.d.ts.map +1 -1
  157. package/dist/server/server-factory.js +114 -48
  158. package/dist/server/server-factory.js.map +1 -1
  159. package/dist/services/filters.d.ts +2 -0
  160. package/dist/services/filters.d.ts.map +1 -0
  161. package/dist/services/filters.js +5 -0
  162. package/dist/services/filters.js.map +1 -0
  163. package/dist/services/http-service.d.ts +68 -0
  164. package/dist/services/http-service.d.ts.map +1 -0
  165. package/dist/services/http-service.js +233 -0
  166. package/dist/services/http-service.js.map +1 -0
  167. package/dist/services/interceptor.d.ts +2 -0
  168. package/dist/services/interceptor.d.ts.map +1 -0
  169. package/dist/services/interceptor.js +5 -0
  170. package/dist/services/interceptor.js.map +1 -0
  171. package/dist/services/pipes.d.ts +2 -0
  172. package/dist/services/pipes.d.ts.map +1 -0
  173. package/dist/services/pipes.js +5 -0
  174. package/dist/services/pipes.js.map +1 -0
  175. package/dist/utils/form-data/get-form-data.d.ts +2 -0
  176. package/dist/utils/form-data/get-form-data.d.ts.map +1 -0
  177. package/dist/utils/form-data/get-form-data.js +11 -0
  178. package/dist/utils/form-data/get-form-data.js.map +1 -0
  179. package/dist/utils/search/create-query-string.d.ts +9 -0
  180. package/dist/utils/search/create-query-string.d.ts.map +1 -0
  181. package/dist/utils/search/create-query-string.js +26 -0
  182. package/dist/utils/search/create-query-string.js.map +1 -0
  183. package/dist/zod/create-zod-dto.d.ts +16 -0
  184. package/dist/zod/create-zod-dto.d.ts.map +1 -0
  185. package/dist/zod/create-zod-dto.js +14 -0
  186. package/dist/zod/create-zod-dto.js.map +1 -0
  187. package/dist/zod/index.d.ts +3 -0
  188. package/dist/zod/index.d.ts.map +1 -0
  189. package/dist/zod/index.js +8 -0
  190. package/dist/zod/index.js.map +1 -0
  191. package/dist/zod/zod-validation-pipe.d.ts +5 -0
  192. package/dist/zod/zod-validation-pipe.d.ts.map +1 -0
  193. package/dist/zod/zod-validation-pipe.js +35 -0
  194. package/dist/zod/zod-validation-pipe.js.map +1 -0
  195. package/package.json +7 -6
  196. package/dist/interceptor/decorators/use-interceptor.d.ts +0 -3
  197. package/dist/interceptor/decorators/use-interceptor.d.ts.map +0 -1
  198. package/dist/interceptor/decorators/use-interceptor.js +0 -9
  199. package/dist/interceptor/decorators/use-interceptor.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,9 +1,19 @@
1
1
  import 'reflect-metadata';
2
+ export * from './constants';
2
3
  export * from './utils/apply-decorators';
4
+ export * from './context';
3
5
  export * from './exceptions';
6
+ export * from './interceptor';
7
+ export * from './logger';
4
8
  export * from './controllers';
5
9
  export * from './dependency-injection';
6
10
  export * from './modules';
11
+ export * from './pipes';
7
12
  export * from './server';
13
+ export * from './zod';
8
14
  export { REQUEST } from './services/request';
15
+ export { APP_INTERCEPTOR } from './services/interceptor';
16
+ export { APP_FILTER } from './services/filters';
17
+ export { APP_PIPE } from './services/pipes';
18
+ export { FetchModuleOptions, HttpService } from './services/http-service';
9
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,kBAAkB,CAAA;AAEzB,cAAc,0BAA0B,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AAGxB,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,kBAAkB,CAAA;AAEzB,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA;AACtC,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AAGrB,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA"}
package/dist/index.js CHANGED
@@ -16,15 +16,29 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
17
  };
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.REQUEST = void 0;
19
+ exports.HttpService = exports.APP_PIPE = exports.APP_FILTER = exports.APP_INTERCEPTOR = exports.REQUEST = void 0;
20
20
  require("reflect-metadata");
21
+ __exportStar(require("./constants"), exports);
21
22
  __exportStar(require("./utils/apply-decorators"), exports);
23
+ __exportStar(require("./context"), exports);
22
24
  __exportStar(require("./exceptions"), exports);
25
+ __exportStar(require("./interceptor"), exports);
26
+ __exportStar(require("./logger"), exports);
23
27
  __exportStar(require("./controllers"), exports);
24
28
  __exportStar(require("./dependency-injection"), exports);
25
29
  __exportStar(require("./modules"), exports);
30
+ __exportStar(require("./pipes"), exports);
26
31
  __exportStar(require("./server"), exports);
32
+ __exportStar(require("./zod"), exports);
27
33
  // Services
28
34
  var request_1 = require("./services/request");
29
35
  Object.defineProperty(exports, "REQUEST", { enumerable: true, get: function () { return request_1.REQUEST; } });
36
+ var interceptor_1 = require("./services/interceptor");
37
+ Object.defineProperty(exports, "APP_INTERCEPTOR", { enumerable: true, get: function () { return interceptor_1.APP_INTERCEPTOR; } });
38
+ var filters_1 = require("./services/filters");
39
+ Object.defineProperty(exports, "APP_FILTER", { enumerable: true, get: function () { return filters_1.APP_FILTER; } });
40
+ var pipes_1 = require("./services/pipes");
41
+ Object.defineProperty(exports, "APP_PIPE", { enumerable: true, get: function () { return pipes_1.APP_PIPE; } });
42
+ var http_service_1 = require("./services/http-service");
43
+ Object.defineProperty(exports, "HttpService", { enumerable: true, get: function () { return http_service_1.HttpService; } });
30
44
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,0DAA0D;AAC1D,sEAAsE;;;;;;;;;;;;;;;;;AAEtE,4BAAyB;AAEzB,2DAAwC;AACxC,+CAA4B;AAC5B,gDAA6B;AAC7B,yDAAsC;AACtC,4CAAyB;AACzB,2CAAwB;AAExB,WAAW;AACX,8CAA4C;AAAnC,kGAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,0DAA0D;AAC1D,sEAAsE;;;;;;;;;;;;;;;;;AAEtE,4BAAyB;AAEzB,8CAA2B;AAC3B,2DAAwC;AACxC,4CAAyB;AACzB,+CAA4B;AAC5B,gDAA6B;AAC7B,2CAAwB;AACxB,gDAA6B;AAC7B,yDAAsC;AACtC,4CAAyB;AACzB,0CAAuB;AACvB,2CAAwB;AACxB,wCAAqB;AAErB,WAAW;AACX,8CAA4C;AAAnC,kGAAA,OAAO,OAAA;AAChB,sDAAwD;AAA/C,8GAAA,eAAe,OAAA;AACxB,8CAA+C;AAAtC,qGAAA,UAAU,OAAA;AACnB,0CAA2C;AAAlC,iGAAA,QAAQ,OAAA;AACjB,wDAAyE;AAA5C,2GAAA,WAAW,OAAA"}
@@ -0,0 +1,4 @@
1
+ export type CallHandler = {
2
+ handle: () => Promise<any>;
3
+ };
4
+ //# sourceMappingURL=call-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-handler.d.ts","sourceRoot":"","sources":["../../src/interceptor/call-handler.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;CAC3B,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=call-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-handler.js","sourceRoot":"","sources":["../../src/interceptor/call-handler.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export { UseInterceptors } from './use-interceptor-decorator';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interceptor/decorators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UseInterceptors = void 0;
4
+ var use_interceptor_decorator_1 = require("./use-interceptor-decorator");
5
+ Object.defineProperty(exports, "UseInterceptors", { enumerable: true, get: function () { return use_interceptor_decorator_1.UseInterceptors; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/interceptor/decorators/index.ts"],"names":[],"mappings":";;;AAAA,yEAA6D;AAApD,4HAAA,eAAe,OAAA"}
@@ -0,0 +1,15 @@
1
+ import { Interceptor } from '../interceptor';
2
+ import { ExecutionContext } from '../../context/execution-context';
3
+ import { Class } from '../../types/class';
4
+ import type { Container } from '../../dependency-injection';
5
+ export type InterceptorMetadata = {
6
+ interceptors: (Interceptor | Class<Interceptor>)[];
7
+ };
8
+ export declare class InterceptorHandler {
9
+ static getMetadata(target: object): InterceptorMetadata;
10
+ static register(container: Container, target: object): Promise<void>;
11
+ static fetch(container: Container, target: object): Promise<Interceptor[]>;
12
+ static execute(executionContext: ExecutionContext, middlewares: Interceptor[], action: () => Promise<any>): Promise<any>;
13
+ }
14
+ export declare function UseInterceptors(...interceptors: (Interceptor | Class<Interceptor>)[]): ClassDecorator;
15
+ //# sourceMappingURL=use-interceptor-decorator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-interceptor-decorator.d.ts","sourceRoot":"","sources":["../../../src/interceptor/decorators/use-interceptor-decorator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAEvD,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAA;CACnD,CAAA;AAED,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;WAQ1C,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;WAoB7C,KAAK,CAChB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,EAAE,CAAC;WAmBZ,OAAO,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW,EAAE,EAC1B,MAAM,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC;CA2B7B;AAED,wBAAgB,eAAe,CAC7B,GAAG,YAAY,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,GACpD,cAAc,CAUhB"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InterceptorHandler = void 0;
4
+ exports.UseInterceptors = UseInterceptors;
5
+ const keys_1 = require("../../constants/keys");
6
+ class InterceptorHandler {
7
+ static getMetadata(target) {
8
+ const metadata = Reflect.getOwnMetadata(keys_1.INTERCEPTOR_KEY, target);
9
+ if (metadata) {
10
+ return { interceptors: metadata };
11
+ }
12
+ return { interceptors: [] };
13
+ }
14
+ static async register(container, target) {
15
+ const metadata = InterceptorHandler.getMetadata(target);
16
+ if (!metadata || metadata.interceptors.length === 0) {
17
+ return;
18
+ }
19
+ metadata.interceptors.forEach((interceptor) => {
20
+ // If it's a class constructor (function), register it in the container
21
+ if (typeof interceptor === 'function') {
22
+ if (!container.isBound(interceptor)) {
23
+ container.bind(interceptor).toSelf().inSingletonScope();
24
+ }
25
+ }
26
+ else {
27
+ // If it's an instance, bind it to its constructor class as a constant value
28
+ container.bind(interceptor.constructor).toConstantValue(interceptor);
29
+ }
30
+ });
31
+ }
32
+ static async fetch(container, target) {
33
+ const metadata = InterceptorHandler.getMetadata(target);
34
+ if (metadata && metadata.interceptors.length > 0) {
35
+ return await Promise.all(metadata.interceptors.map((interceptor) => {
36
+ // If it's a class constructor (function), resolve from container
37
+ if (typeof interceptor === 'function') {
38
+ return container.getAsync(interceptor);
39
+ }
40
+ // If it's an instance, resolve from container using its constructor
41
+ return container.getAsync(interceptor.constructor);
42
+ }));
43
+ }
44
+ return [];
45
+ }
46
+ static async execute(executionContext, middlewares, action) {
47
+ if (middlewares.length === 0) {
48
+ return await action();
49
+ }
50
+ let i = 0;
51
+ const next = {
52
+ handle: async () => {
53
+ if (i >= middlewares.length) {
54
+ return await action();
55
+ }
56
+ const layer = middlewares[i++];
57
+ try {
58
+ return await layer.intercept(executionContext, next);
59
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
60
+ }
61
+ catch (error) {
62
+ return await next.handle();
63
+ }
64
+ }
65
+ };
66
+ return await next.handle();
67
+ }
68
+ }
69
+ exports.InterceptorHandler = InterceptorHandler;
70
+ function UseInterceptors(...interceptors) {
71
+ return (target) => {
72
+ const existingInterceptors = Reflect.getOwnMetadata(keys_1.INTERCEPTOR_KEY, target) || [];
73
+ Reflect.defineMetadata(keys_1.INTERCEPTOR_KEY, [...existingInterceptors, ...interceptors], target);
74
+ };
75
+ }
76
+ //# sourceMappingURL=use-interceptor-decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-interceptor-decorator.js","sourceRoot":"","sources":["../../../src/interceptor/decorators/use-interceptor-decorator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './decorators';
2
+ export * from './interceptor';
3
+ export * from './call-handler';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interceptor/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA"}
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./decorators"), exports);
18
+ __exportStar(require("./interceptor"), exports);
19
+ __exportStar(require("./call-handler"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interceptor/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,gDAA6B;AAC7B,iDAA8B"}
@@ -1,8 +1,6 @@
1
- type CallHandler = {
2
- handle: (request: any) => Promise<any>;
3
- };
1
+ import { ExecutionContext } from '../context/execution-context';
2
+ import { CallHandler } from './call-handler';
4
3
  export declare abstract class Interceptor {
5
- abstract intercept(context: any, next: CallHandler): Promise<any>;
4
+ abstract intercept(context: ExecutionContext, next: CallHandler): Promise<any>;
6
5
  }
7
- export {};
8
6
  //# sourceMappingURL=interceptor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptor/interceptor.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;CACvC,CAAA;AAED,8BAAsB,WAAW;IAC/B,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;CAClE"}
1
+ {"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptor/interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,8BAAsB,WAAW;IAC/B,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;CAC/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../../src/interceptor/interceptor.ts"],"names":[],"mappings":";;;AAIA,MAAsB,WAAW;CAEhC;AAFD,kCAEC"}
1
+ {"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../../src/interceptor/interceptor.ts"],"names":[],"mappings":";;;AAGA,MAAsB,WAAW;CAEhC;AAFD,kCAEC"}
@@ -0,0 +1,24 @@
1
+ import { LoggerService, LogLevel } from './logger-service';
2
+ export type ConsoleLoggerOptions = {
3
+ prefix?: string;
4
+ logLevels?: LogLevel[];
5
+ };
6
+ export declare class ConsoleLogger implements LoggerService {
7
+ protected logLevels: LogLevel[];
8
+ protected options: ConsoleLoggerOptions;
9
+ constructor(options?: ConsoleLoggerOptions);
10
+ log(message: any, ...optionalParams: any[]): void;
11
+ fatal(message: any, ...optionalParams: any[]): void;
12
+ error(message: any, ...optionalParams: any[]): void;
13
+ warn(message: any, ...optionalParams: any[]): void;
14
+ debug?(message: any, ...optionalParams: any[]): void;
15
+ verbose?(message: any, ...optionalParams: any[]): void;
16
+ /**
17
+ * Set log levels
18
+ * @param levels log levels
19
+ */
20
+ setLogLevels(levels: LogLevel[]): void;
21
+ protected printMessage(level: string | undefined, message: any, writeStreamType?: 'stdout' | 'stderr'): void;
22
+ protected formatMessage(level: string, message: any): string;
23
+ }
24
+ //# sourceMappingURL=console-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-logger.d.ts","sourceRoot":"","sources":["../../src/logger/console-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAY1D,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;CACvB,CAAA;AAED,qBACa,aAAc,YAAW,aAAa;IACjD,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAqB;IAEpD,SAAS,CAAC,OAAO,EAAE,oBAAoB,CAAA;gBAEd,OAAO,CAAC,EAAE,oBAAoB;IAQvD,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAIjD,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAInD,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAInD,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAIlD,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAIpD,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAItD;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE;IAO/B,SAAS,CAAC,YAAY,CACpB,KAAK,EAAE,MAAM,YAAQ,EACrB,OAAO,EAAE,GAAG,EACZ,eAAe,GAAE,QAAQ,GAAG,QAAmB,GAC9C,IAAI;IAMP,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,MAAM;CAM7D"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ConsoleLogger = void 0;
16
+ const inversify_1 = require("inversify");
17
+ const logger_1 = require("./logger");
18
+ const DEFAULT_LOG_LEVELS = [
19
+ 'log',
20
+ 'error',
21
+ 'warn',
22
+ 'debug',
23
+ 'verbose',
24
+ 'fatal'
25
+ ];
26
+ let ConsoleLogger = class ConsoleLogger {
27
+ constructor(options) {
28
+ this.logLevels = DEFAULT_LOG_LEVELS;
29
+ options = options ?? {};
30
+ options.logLevels = DEFAULT_LOG_LEVELS;
31
+ options.prefix ??= 'Sindarian';
32
+ this.options = options;
33
+ }
34
+ log(message, ...optionalParams) {
35
+ this.printMessage('log', message, ...optionalParams);
36
+ }
37
+ fatal(message, ...optionalParams) {
38
+ this.printMessage('fatal', message, ...optionalParams);
39
+ }
40
+ error(message, ...optionalParams) {
41
+ this.printMessage('error', message, ...optionalParams);
42
+ }
43
+ warn(message, ...optionalParams) {
44
+ this.printMessage('warn', message, ...optionalParams);
45
+ }
46
+ debug(message, ...optionalParams) {
47
+ this.printMessage('debug', message, ...optionalParams);
48
+ }
49
+ verbose(message, ...optionalParams) {
50
+ this.printMessage('verbose', message, ...optionalParams);
51
+ }
52
+ /**
53
+ * Set log levels
54
+ * @param levels log levels
55
+ */
56
+ setLogLevels(levels) {
57
+ if (!this.options) {
58
+ this.options = {};
59
+ }
60
+ this.options.logLevels = levels;
61
+ }
62
+ printMessage(level = 'log', message, writeStreamType = 'stdout') {
63
+ const logLevel = level.toUpperCase();
64
+ process[writeStreamType].write(this.formatMessage(logLevel, message));
65
+ }
66
+ formatMessage(level, message) {
67
+ const timestamp = logger_1.Logger.getTimestamp();
68
+ const logLevel = level.toUpperCase();
69
+ return `[${this.options.prefix}] - ${timestamp} [${logLevel}] ${message}\n`;
70
+ }
71
+ };
72
+ exports.ConsoleLogger = ConsoleLogger;
73
+ exports.ConsoleLogger = ConsoleLogger = __decorate([
74
+ (0, inversify_1.injectable)(),
75
+ __param(0, (0, inversify_1.unmanaged)()),
76
+ __metadata("design:paramtypes", [Object])
77
+ ], ConsoleLogger);
78
+ //# sourceMappingURL=console-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-logger.js","sourceRoot":"","sources":["../../src/logger/console-logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAiD;AAEjD,qCAAiC;AAEjC,MAAM,kBAAkB,GAAe;IACrC,KAAK;IACL,OAAO;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,OAAO;CACR,CAAA;AAQM,IAAM,aAAa,GAAnB,MAAM,aAAa;IAKxB,YAAyB,OAA8B;QAJ7C,cAAS,GAAe,kBAAkB,CAAA;QAKlD,OAAO,GAAG,OAAO,IAAI,EAAE,CAAA;QACvB,OAAO,CAAC,SAAS,GAAG,kBAAkB,CAAA;QACtC,OAAO,CAAC,MAAM,KAAK,WAAW,CAAA;QAE9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,GAAG,CAAC,OAAY,EAAE,GAAG,cAAqB;QACxC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,OAAY,EAAE,GAAG,cAAqB;QAC1C,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,OAAY,EAAE,GAAG,cAAqB;QAC1C,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC,OAAY,EAAE,GAAG,cAAqB;QACzC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAE,OAAY,EAAE,GAAG,cAAqB;QAC3C,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,CAAE,OAAY,EAAE,GAAG,cAAqB;QAC7C,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IAC1D,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,MAAkB;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAA;IACjC,CAAC;IAES,YAAY,CACpB,QAAgB,KAAK,EACrB,OAAY,EACZ,kBAAuC,QAAQ;QAE/C,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QAEpC,OAAO,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;IACvE,CAAC;IAES,aAAa,CAAC,KAAa,EAAE,OAAY;QACjD,MAAM,SAAS,GAAG,eAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QAEpC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,OAAO,SAAS,KAAK,QAAQ,KAAK,OAAO,IAAI,CAAA;IAC7E,CAAC;CACF,CAAA;AAhEY,sCAAa;wBAAb,aAAa;IADzB,IAAA,sBAAU,GAAE;IAME,WAAA,IAAA,qBAAS,GAAE,CAAA;;GALb,aAAa,CAgEzB"}
@@ -0,0 +1,4 @@
1
+ export { ConsoleLogger, ConsoleLoggerOptions } from './console-logger';
2
+ export { Logger } from './logger';
3
+ export { LoggerService, LogLevel } from './logger-service';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Logger = exports.ConsoleLogger = void 0;
4
+ var console_logger_1 = require("./console-logger");
5
+ Object.defineProperty(exports, "ConsoleLogger", { enumerable: true, get: function () { return console_logger_1.ConsoleLogger; } });
6
+ var logger_1 = require("./logger");
7
+ Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return logger_1.Logger; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AAAA,mDAAsE;AAA7D,+GAAA,aAAa,OAAA;AACtB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA"}
@@ -0,0 +1,34 @@
1
+ export declare const LOG_LEVELS: ["verbose", "debug", "log", "warn", "error", "fatal"];
2
+ export type LogLevel = (typeof LOG_LEVELS)[number];
3
+ export interface LoggerService {
4
+ /**
5
+ * Write a 'log' level log.
6
+ */
7
+ log(message: any, ...optionalParams: any[]): any;
8
+ /**
9
+ * Write an 'error' level log.
10
+ */
11
+ error(message: any, ...optionalParams: any[]): any;
12
+ /**
13
+ * Write a 'warn' level log.
14
+ */
15
+ warn(message: any, ...optionalParams: any[]): any;
16
+ /**
17
+ * Write a 'debug' level log.
18
+ */
19
+ debug?(message: any, ...optionalParams: any[]): any;
20
+ /**
21
+ * Write a 'verbose' level log.
22
+ */
23
+ verbose?(message: any, ...optionalParams: any[]): any;
24
+ /**
25
+ * Write a 'fatal' level log.
26
+ */
27
+ fatal?(message: any, ...optionalParams: any[]): any;
28
+ /**
29
+ * Set log levels.
30
+ * @param levels log levels
31
+ */
32
+ setLogLevels?(levels: LogLevel[]): any;
33
+ }
34
+ //# sourceMappingURL=logger-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger-service.d.ts","sourceRoot":"","sources":["../../src/logger/logger-service.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,uDAOM,CAAA;AAE7B,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAElD,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAEhD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAElD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAEjD;;OAEG;IACH,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAEnD;;OAEG;IACH,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAErD;;OAEG;IACH,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IAEnD;;;OAGG;IACH,YAAY,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;CACvC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LOG_LEVELS = void 0;
4
+ exports.LOG_LEVELS = [
5
+ 'verbose',
6
+ 'debug',
7
+ 'log',
8
+ 'warn',
9
+ 'error',
10
+ 'fatal'
11
+ ];
12
+ //# sourceMappingURL=logger-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger-service.js","sourceRoot":"","sources":["../../src/logger/logger-service.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,SAAS;IACT,OAAO;IACP,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;CACoB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { LoggerService, LogLevel } from './logger-service';
2
+ export declare class Logger implements LoggerService {
3
+ private logger;
4
+ private static staticLogger?;
5
+ log(message: any, ...optionalParams: any[]): void;
6
+ error(message: any, ...optionalParams: any[]): void;
7
+ warn(message: any, ...optionalParams: any[]): void;
8
+ debug?(message: any, ...optionalParams: any[]): void;
9
+ verbose?(message: any, ...optionalParams: any[]): void;
10
+ fatal?(message: any, ...optionalParams: any[]): void;
11
+ setLogLevels?(levels: LogLevel[]): void;
12
+ static log(message: any, ...optionalParams: any[]): void;
13
+ static error(message: any, ...optionalParams: any[]): void;
14
+ static warn(message: any, ...optionalParams: any[]): void;
15
+ static debug?(message: any, ...optionalParams: any[]): void;
16
+ static verbose?(message: any, ...optionalParams: any[]): void;
17
+ static fatal?(message: any, ...optionalParams: any[]): void;
18
+ static getTimestamp(): string;
19
+ static overrideLogger(logger: LoggerService | boolean): void;
20
+ }
21
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAa1D,qBACa,MAAO,YAAW,aAAa;IAC1C,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAe;IAE3C,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG1C,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG5C,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG3C,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG7C,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG/C,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAG7C,YAAY,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE;IAIhC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAGjD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAGnD,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAGlD,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAGpD,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAGtD,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE;IAIpD,MAAM,CAAC,YAAY;IAInB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;CAYtD"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var Logger_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Logger = void 0;
11
+ const inversify_1 = require("inversify");
12
+ const console_logger_1 = require("./console-logger");
13
+ const lodash_1 = require("lodash");
14
+ const dateTimeFormatter = new Intl.DateTimeFormat(undefined, {
15
+ year: 'numeric',
16
+ hour: 'numeric',
17
+ minute: 'numeric',
18
+ second: 'numeric',
19
+ day: '2-digit',
20
+ month: '2-digit'
21
+ });
22
+ let Logger = Logger_1 = class Logger {
23
+ constructor() {
24
+ this.logger = new console_logger_1.ConsoleLogger();
25
+ }
26
+ log(message, ...optionalParams) {
27
+ this.logger.log(message, ...optionalParams);
28
+ }
29
+ error(message, ...optionalParams) {
30
+ this.logger.error(message, ...optionalParams);
31
+ }
32
+ warn(message, ...optionalParams) {
33
+ this.logger.warn(message, ...optionalParams);
34
+ }
35
+ debug(message, ...optionalParams) {
36
+ this.logger.debug?.(message, ...optionalParams);
37
+ }
38
+ verbose(message, ...optionalParams) {
39
+ this.logger.verbose?.(message, ...optionalParams);
40
+ }
41
+ fatal(message, ...optionalParams) {
42
+ this.logger.fatal?.(message, ...optionalParams);
43
+ }
44
+ setLogLevels(levels) {
45
+ this.logger.setLogLevels?.(levels);
46
+ }
47
+ static log(message, ...optionalParams) {
48
+ this.staticLogger?.log(message, ...optionalParams);
49
+ }
50
+ static error(message, ...optionalParams) {
51
+ this.staticLogger?.error(message, ...optionalParams);
52
+ }
53
+ static warn(message, ...optionalParams) {
54
+ this.staticLogger?.warn(message, ...optionalParams);
55
+ }
56
+ static debug(message, ...optionalParams) {
57
+ this.staticLogger?.debug?.(message, ...optionalParams);
58
+ }
59
+ static verbose(message, ...optionalParams) {
60
+ this.staticLogger?.verbose?.(message, ...optionalParams);
61
+ }
62
+ static fatal(message, ...optionalParams) {
63
+ this.staticLogger?.fatal?.(message, ...optionalParams);
64
+ }
65
+ static getTimestamp() {
66
+ return dateTimeFormatter.format(Date.now());
67
+ }
68
+ static overrideLogger(logger) {
69
+ if ((0, lodash_1.isObject)(logger)) {
70
+ if (logger instanceof Logger_1 && logger.constructor !== Logger_1) {
71
+ const errorMessage = `Using the "extends Logger" instruction is not allowed. Please, use "extends ConsoleLogger" instead.`;
72
+ this.staticLogger?.error(errorMessage);
73
+ throw new Error(errorMessage);
74
+ }
75
+ this.staticLogger = logger;
76
+ }
77
+ else {
78
+ this.staticLogger = undefined;
79
+ }
80
+ }
81
+ };
82
+ exports.Logger = Logger;
83
+ exports.Logger = Logger = Logger_1 = __decorate([
84
+ (0, inversify_1.injectable)()
85
+ ], Logger);
86
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,21 @@
1
- import { Class, Constructor } from '../types/class';
2
- import { ControllerMetadata } from '../controllers/decorators/controller-decorator';
3
1
  import { ResolutionContext } from 'inversify';
2
+ import { Class, Constructor } from '../types/class';
3
+ import { Scope } from '../constants/scopes';
4
+ import { RouteMetadata } from '../controllers/decorators/route-decorator';
4
5
  export type InjectionToken<T = any> = symbol | string | Constructor<T>;
5
6
  type Provider = {
6
7
  provide: InjectionToken;
7
8
  useClass?: Class;
8
9
  useValue?: any;
9
10
  useFactory?: (context: ResolutionContext) => any | Promise<any>;
11
+ scope?: Scope;
10
12
  } | Class;
11
13
  export type ModuleOptions = {
12
14
  imports?: Class[];
13
15
  controllers?: Class[];
14
16
  providers?: Provider[];
15
17
  };
16
- export type ModuleMetadata = ControllerMetadata & {
18
+ export type ModuleMetadata = RouteMetadata & {
17
19
  controller: Class;
18
20
  };
19
21
  export declare function moduleHandler(target: Function, visited?: Set<Function>): ModuleMetadata[];
@@ -1 +1 @@
1
- {"version":3,"file":"module-decorator.d.ts","sourceRoot":"","sources":["../../src/modules/module-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AASlD,OAAO,EAEL,kBAAkB,EACnB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAG7C,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAEtE,KAAK,QAAQ,GACT;IACE,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;CAChE,GACD,KAAK,CAAA;AAET,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,KAAK,EAAE,CAAA;IACjB,WAAW,CAAC,EAAE,KAAK,EAAE,CAAA;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,kBAAkB,GAAG;IAChD,UAAU,EAAE,KAAK,CAAA;CAClB,CAAA;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAE,GAAG,CAAC,QAAQ,CAAa,GAAG,cAAc,EAAE,CA6BpG;AAED,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,CA2D9D"}
1
+ {"version":3,"file":"module-decorator.d.ts","sourceRoot":"","sources":["../../src/modules/module-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AASlD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAK1C,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAA;AAIxE,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAEtE,KAAK,QAAQ,GACT;IACE,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/D,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,GACD,KAAK,CAAA;AAET,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,KAAK,EAAE,CAAA;IACjB,WAAW,CAAC,EAAE,KAAK,EAAE,CAAA;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG;IAC3C,UAAU,EAAE,KAAK,CAAA;CAClB,CAAA;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,QAAQ,EAChB,OAAO,GAAE,GAAG,CAAC,QAAQ,CAAa,GACjC,cAAc,EAAE,CAmClB;AAED,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,CA+C9D"}