@pristine-ts/core 0.0.174 → 0.0.178

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 (212) hide show
  1. package/dist/lib/cjs/core.module.js +7 -4
  2. package/dist/lib/cjs/core.module.js.map +1 -1
  3. package/dist/lib/cjs/dispatchers/dispatchers.js +14 -0
  4. package/dist/lib/cjs/dispatchers/dispatchers.js.map +1 -0
  5. package/dist/lib/cjs/dispatchers/event.dispatcher.js +108 -0
  6. package/dist/lib/cjs/dispatchers/event.dispatcher.js.map +1 -0
  7. package/dist/lib/cjs/enums/enums.js +14 -0
  8. package/dist/lib/cjs/enums/enums.js.map +1 -0
  9. package/dist/lib/cjs/enums/execution-context-keyname.enum.js +11 -0
  10. package/dist/lib/cjs/enums/execution-context-keyname.enum.js.map +1 -0
  11. package/dist/lib/cjs/errors/error-response-interception-execution.error.js.map +1 -1
  12. package/dist/lib/cjs/errors/errors.js +6 -4
  13. package/dist/lib/cjs/errors/errors.js.map +1 -1
  14. package/dist/lib/cjs/errors/event-dispatcher-no-event-handlers.error.js +20 -0
  15. package/dist/lib/cjs/errors/event-dispatcher-no-event-handlers.error.js.map +1 -0
  16. package/dist/lib/cjs/errors/event-dispatching.error.js +21 -0
  17. package/dist/lib/cjs/errors/event-dispatching.error.js.map +1 -0
  18. package/dist/lib/cjs/errors/event-mapping.error.js +23 -0
  19. package/dist/lib/cjs/errors/event-mapping.error.js.map +1 -0
  20. package/dist/lib/cjs/errors/event-post-mapping-interception.error.js +22 -0
  21. package/dist/lib/cjs/errors/event-post-mapping-interception.error.js.map +1 -0
  22. package/dist/lib/cjs/errors/event-post-response-mapping-interception.error.js +22 -0
  23. package/dist/lib/cjs/errors/event-post-response-mapping-interception.error.js.map +1 -0
  24. package/dist/lib/cjs/errors/event-pre-mapping-interception.error.js +23 -0
  25. package/dist/lib/cjs/errors/event-pre-mapping-interception.error.js.map +1 -0
  26. package/dist/lib/cjs/errors/event-pre-response-mapping-interception.error.js +22 -0
  27. package/dist/lib/cjs/errors/event-pre-response-mapping-interception.error.js.map +1 -0
  28. package/dist/lib/cjs/handlers/default-event.handler.js +28 -0
  29. package/dist/lib/cjs/handlers/default-event.handler.js.map +1 -0
  30. package/dist/lib/cjs/handlers/handlers.js +14 -0
  31. package/dist/lib/cjs/handlers/handlers.js.map +1 -0
  32. package/dist/lib/cjs/interceptors/event-logging.interceptor.js +21 -12
  33. package/dist/lib/cjs/interceptors/event-logging.interceptor.js.map +1 -1
  34. package/dist/lib/cjs/interceptors/interceptors.js +0 -2
  35. package/dist/lib/cjs/interceptors/interceptors.js.map +1 -1
  36. package/dist/lib/cjs/interfaces/{request-interceptor.interface.js → event-dispatcher.interface.js} +1 -1
  37. package/dist/lib/cjs/interfaces/event-dispatcher.interface.js.map +1 -0
  38. package/dist/lib/cjs/interfaces/{response-interceptor.interface.js → event-handler.interface.js} +1 -1
  39. package/dist/lib/cjs/interfaces/event-handler.interface.js.map +1 -0
  40. package/dist/lib/cjs/interfaces/{error-response-interceptor.interface.js → event-listener.interface.js} +1 -1
  41. package/dist/lib/cjs/interfaces/event-listener.interface.js.map +1 -0
  42. package/dist/lib/cjs/interfaces/event-mapper.interface.js +3 -0
  43. package/dist/lib/cjs/interfaces/event-mapper.interface.js.map +1 -0
  44. package/dist/lib/cjs/interfaces/events-execution-options.interface.js +3 -0
  45. package/dist/lib/cjs/interfaces/events-execution-options.interface.js.map +1 -0
  46. package/dist/lib/cjs/interfaces/execution-context.interface.js +3 -0
  47. package/dist/lib/cjs/interfaces/execution-context.interface.js.map +1 -0
  48. package/dist/lib/cjs/interfaces/interfaces.js +6 -3
  49. package/dist/lib/cjs/interfaces/interfaces.js.map +1 -1
  50. package/dist/lib/cjs/kernel.js +31 -393
  51. package/dist/lib/cjs/kernel.js.map +1 -1
  52. package/dist/lib/cjs/listeners/default-event.listener.js +27 -0
  53. package/dist/lib/cjs/listeners/default-event.listener.js.map +1 -0
  54. package/dist/lib/cjs/listeners/listeners.js +14 -0
  55. package/dist/lib/cjs/listeners/listeners.js.map +1 -0
  56. package/dist/lib/cjs/mappers/default-event.mapper.js +38 -0
  57. package/dist/lib/cjs/mappers/default-event.mapper.js.map +1 -0
  58. package/dist/lib/cjs/mappers/mappers.js +14 -0
  59. package/dist/lib/cjs/mappers/mappers.js.map +1 -0
  60. package/dist/lib/cjs/models/event.js +15 -0
  61. package/dist/lib/cjs/models/event.js.map +1 -0
  62. package/dist/lib/cjs/models/event.response.js +11 -0
  63. package/dist/lib/cjs/models/event.response.js.map +1 -0
  64. package/dist/lib/cjs/models/models.js +15 -0
  65. package/dist/lib/cjs/models/models.js.map +1 -0
  66. package/dist/lib/cjs/pipelines/event.pipeline.js +282 -0
  67. package/dist/lib/cjs/pipelines/event.pipeline.js.map +1 -0
  68. package/dist/lib/cjs/pipelines/pipelines.js +14 -0
  69. package/dist/lib/cjs/pipelines/pipelines.js.map +1 -0
  70. package/dist/lib/esm/core.module.js +7 -4
  71. package/dist/lib/esm/core.module.js.map +1 -1
  72. package/dist/lib/esm/dispatchers/dispatchers.js +2 -0
  73. package/dist/lib/esm/dispatchers/dispatchers.js.map +1 -0
  74. package/dist/lib/esm/dispatchers/event.dispatcher.js +105 -0
  75. package/dist/lib/esm/dispatchers/event.dispatcher.js.map +1 -0
  76. package/dist/lib/esm/enums/enums.js +2 -0
  77. package/dist/lib/esm/enums/enums.js.map +1 -0
  78. package/dist/lib/esm/enums/execution-context-keyname.enum.js +8 -0
  79. package/dist/lib/esm/enums/execution-context-keyname.enum.js.map +1 -0
  80. package/dist/lib/esm/errors/error-response-interception-execution.error.js.map +1 -1
  81. package/dist/lib/esm/errors/errors.js +6 -4
  82. package/dist/lib/esm/errors/errors.js.map +1 -1
  83. package/dist/lib/esm/errors/event-dispatcher-no-event-handlers.error.js +16 -0
  84. package/dist/lib/esm/errors/event-dispatcher-no-event-handlers.error.js.map +1 -0
  85. package/dist/lib/esm/errors/event-dispatching.error.js +17 -0
  86. package/dist/lib/esm/errors/event-dispatching.error.js.map +1 -0
  87. package/dist/lib/esm/errors/event-mapping.error.js +19 -0
  88. package/dist/lib/esm/errors/event-mapping.error.js.map +1 -0
  89. package/dist/lib/esm/errors/event-post-mapping-interception.error.js +18 -0
  90. package/dist/lib/esm/errors/event-post-mapping-interception.error.js.map +1 -0
  91. package/dist/lib/esm/errors/event-post-response-mapping-interception.error.js +18 -0
  92. package/dist/lib/esm/errors/event-post-response-mapping-interception.error.js.map +1 -0
  93. package/dist/lib/esm/errors/event-pre-mapping-interception.error.js +19 -0
  94. package/dist/lib/esm/errors/event-pre-mapping-interception.error.js.map +1 -0
  95. package/dist/lib/esm/errors/event-pre-response-mapping-interception.error.js +18 -0
  96. package/dist/lib/esm/errors/event-pre-response-mapping-interception.error.js.map +1 -0
  97. package/dist/lib/esm/handlers/default-event.handler.js +25 -0
  98. package/dist/lib/esm/handlers/default-event.handler.js.map +1 -0
  99. package/dist/lib/esm/handlers/handlers.js +2 -0
  100. package/dist/lib/esm/handlers/handlers.js.map +1 -0
  101. package/dist/lib/esm/interceptors/event-logging.interceptor.js +21 -12
  102. package/dist/lib/esm/interceptors/event-logging.interceptor.js.map +1 -1
  103. package/dist/lib/esm/interceptors/interceptors.js +0 -2
  104. package/dist/lib/esm/interceptors/interceptors.js.map +1 -1
  105. package/dist/lib/esm/interfaces/event-dispatcher.interface.js +2 -0
  106. package/dist/lib/esm/interfaces/event-dispatcher.interface.js.map +1 -0
  107. package/dist/lib/esm/interfaces/event-handler.interface.js +2 -0
  108. package/dist/lib/esm/interfaces/event-handler.interface.js.map +1 -0
  109. package/dist/lib/esm/interfaces/event-listener.interface.js +2 -0
  110. package/dist/lib/esm/interfaces/event-listener.interface.js.map +1 -0
  111. package/dist/lib/esm/interfaces/event-mapper.interface.js +2 -0
  112. package/dist/lib/esm/interfaces/event-mapper.interface.js.map +1 -0
  113. package/dist/lib/esm/interfaces/events-execution-options.interface.js +2 -0
  114. package/dist/lib/esm/interfaces/events-execution-options.interface.js.map +1 -0
  115. package/dist/lib/esm/interfaces/execution-context.interface.js +2 -0
  116. package/dist/lib/esm/interfaces/execution-context.interface.js.map +1 -0
  117. package/dist/lib/esm/interfaces/interfaces.js +6 -3
  118. package/dist/lib/esm/interfaces/interfaces.js.map +1 -1
  119. package/dist/lib/esm/kernel.js +32 -394
  120. package/dist/lib/esm/kernel.js.map +1 -1
  121. package/dist/lib/esm/listeners/default-event.listener.js +24 -0
  122. package/dist/lib/esm/listeners/default-event.listener.js.map +1 -0
  123. package/dist/lib/esm/listeners/listeners.js +2 -0
  124. package/dist/lib/esm/listeners/listeners.js.map +1 -0
  125. package/dist/lib/esm/mappers/default-event.mapper.js +35 -0
  126. package/dist/lib/esm/mappers/default-event.mapper.js.map +1 -0
  127. package/dist/lib/esm/mappers/mappers.js +2 -0
  128. package/dist/lib/esm/mappers/mappers.js.map +1 -0
  129. package/dist/lib/esm/models/event.js +11 -0
  130. package/dist/lib/esm/models/event.js.map +1 -0
  131. package/dist/lib/esm/models/event.response.js +7 -0
  132. package/dist/lib/esm/models/event.response.js.map +1 -0
  133. package/dist/lib/esm/models/models.js +3 -0
  134. package/dist/lib/esm/models/models.js.map +1 -0
  135. package/dist/lib/esm/pipelines/event.pipeline.js +279 -0
  136. package/dist/lib/esm/pipelines/event.pipeline.js.map +1 -0
  137. package/dist/lib/esm/pipelines/pipelines.js +2 -0
  138. package/dist/lib/esm/pipelines/pipelines.js.map +1 -0
  139. package/dist/types/core.module.d.ts +7 -0
  140. package/dist/types/dispatchers/dispatchers.d.ts +1 -0
  141. package/dist/types/dispatchers/event.dispatcher.d.ts +29 -0
  142. package/dist/types/enums/enums.d.ts +1 -0
  143. package/dist/types/enums/execution-context-keyname.enum.d.ts +6 -0
  144. package/dist/types/errors/error-response-interception-execution.error.d.ts +3 -2
  145. package/dist/types/errors/errors.d.ts +6 -4
  146. package/dist/types/errors/event-dispatcher-no-event-handlers.error.d.ts +8 -0
  147. package/dist/types/errors/event-dispatching.error.d.ts +8 -0
  148. package/dist/types/errors/event-mapping.error.d.ts +8 -0
  149. package/dist/types/errors/event-post-mapping-interception.error.d.ts +8 -0
  150. package/dist/types/errors/event-post-response-mapping-interception.error.d.ts +7 -0
  151. package/dist/types/errors/event-pre-mapping-interception.error.d.ts +8 -0
  152. package/dist/types/errors/event-pre-response-mapping-interception.error.d.ts +8 -0
  153. package/dist/types/handlers/default-event.handler.d.ts +7 -0
  154. package/dist/types/handlers/handlers.d.ts +1 -0
  155. package/dist/types/interceptors/event-logging.interceptor.d.ts +7 -11
  156. package/dist/types/interceptors/interceptors.d.ts +0 -2
  157. package/dist/types/interfaces/event-dispatcher.interface.d.ts +5 -0
  158. package/dist/types/interfaces/event-handler.interface.d.ts +23 -0
  159. package/dist/types/interfaces/event-interceptor.interface.d.ts +22 -3
  160. package/dist/types/interfaces/event-listener.interface.d.ts +17 -0
  161. package/dist/types/interfaces/event-mapper.interface.d.ts +9 -0
  162. package/dist/types/interfaces/events-execution-options.interface.d.ts +5 -0
  163. package/dist/types/interfaces/execution-context.interface.d.ts +5 -0
  164. package/dist/types/interfaces/interfaces.d.ts +6 -3
  165. package/dist/types/kernel.d.ts +11 -83
  166. package/dist/types/listeners/default-event.listener.d.ts +6 -0
  167. package/dist/types/listeners/listeners.d.ts +1 -0
  168. package/dist/types/mappers/default-event.mapper.d.ts +13 -0
  169. package/dist/types/mappers/mappers.d.ts +1 -0
  170. package/dist/types/models/event.d.ts +9 -0
  171. package/dist/types/models/event.response.d.ts +6 -0
  172. package/dist/types/models/models.d.ts +2 -0
  173. package/dist/types/pipelines/event.pipeline.d.ts +61 -0
  174. package/dist/types/pipelines/pipelines.d.ts +1 -0
  175. package/package.json +7 -10
  176. package/dist/lib/cjs/errors/request-handling.error.js +0 -21
  177. package/dist/lib/cjs/errors/request-handling.error.js.map +0 -1
  178. package/dist/lib/cjs/errors/request-interception-execution.error.js +0 -22
  179. package/dist/lib/cjs/errors/request-interception-execution.error.js.map +0 -1
  180. package/dist/lib/cjs/errors/response-interception-execution.error.js +0 -23
  181. package/dist/lib/cjs/errors/response-interception-execution.error.js.map +0 -1
  182. package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js +0 -89
  183. package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js.map +0 -1
  184. package/dist/lib/cjs/interceptors/request-logging.interceptor.js +0 -83
  185. package/dist/lib/cjs/interceptors/request-logging.interceptor.js.map +0 -1
  186. package/dist/lib/cjs/interfaces/error-response-interceptor.interface.js.map +0 -1
  187. package/dist/lib/cjs/interfaces/request-interceptor.interface.js.map +0 -1
  188. package/dist/lib/cjs/interfaces/response-interceptor.interface.js.map +0 -1
  189. package/dist/lib/esm/errors/request-handling.error.js +0 -17
  190. package/dist/lib/esm/errors/request-handling.error.js.map +0 -1
  191. package/dist/lib/esm/errors/request-interception-execution.error.js +0 -18
  192. package/dist/lib/esm/errors/request-interception-execution.error.js.map +0 -1
  193. package/dist/lib/esm/errors/response-interception-execution.error.js +0 -19
  194. package/dist/lib/esm/errors/response-interception-execution.error.js.map +0 -1
  195. package/dist/lib/esm/interceptors/request-body-converter.interceptor.js +0 -86
  196. package/dist/lib/esm/interceptors/request-body-converter.interceptor.js.map +0 -1
  197. package/dist/lib/esm/interceptors/request-logging.interceptor.js +0 -80
  198. package/dist/lib/esm/interceptors/request-logging.interceptor.js.map +0 -1
  199. package/dist/lib/esm/interfaces/error-response-interceptor.interface.js +0 -2
  200. package/dist/lib/esm/interfaces/error-response-interceptor.interface.js.map +0 -1
  201. package/dist/lib/esm/interfaces/request-interceptor.interface.js +0 -2
  202. package/dist/lib/esm/interfaces/request-interceptor.interface.js.map +0 -1
  203. package/dist/lib/esm/interfaces/response-interceptor.interface.js +0 -2
  204. package/dist/lib/esm/interfaces/response-interceptor.interface.js.map +0 -1
  205. package/dist/types/errors/request-handling.error.d.ts +0 -8
  206. package/dist/types/errors/request-interception-execution.error.d.ts +0 -8
  207. package/dist/types/errors/response-interception-execution.error.d.ts +0 -8
  208. package/dist/types/interceptors/request-body-converter.interceptor.d.ts +0 -9
  209. package/dist/types/interceptors/request-logging.interceptor.d.ts +0 -27
  210. package/dist/types/interfaces/error-response-interceptor.interface.d.ts +0 -21
  211. package/dist/types/interfaces/request-interceptor.interface.d.ts +0 -17
  212. package/dist/types/interfaces/response-interceptor.interface.d.ts +0 -20
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-event.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/default-event.mapper.ts"],"names":[],"mappings":";;;;;;;;;AACA,gDAAgF;AAChF,uCAAoC;AACpC,gEAAyD;AAKzD;;GAEG;AAKH,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAC3B,GAAG,CAAC,KAAa,EAAE,gBAAgD;QAC/D,OAAO;YACH,MAAM,EAAE,EAAE;YACV,cAAc,EAAE,YAAY;SAC/B,CAAC;IACN,CAAC;IAED,UAAU,CAAC,aAAsC,EAAE,QAAgB,EAAE,gBAAgD;IACrH,CAAC;IAED,eAAe,CAAC,KAAa,EAAE,gBAAgD;QAC3E,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,sBAAsB,CAAC,aAAsC,EAAE,QAAgB,EAAE,gBAAgD;QAC7H,OAAO,KAAK,CAAC;IACjB,CAAC;CAEJ,CAAA;AAnBY,kBAAkB;IAH9B,qBAAY,CAAC,uCAAiB,CAAC;IAC/B,YAAG,CAAC,iCAAwB,CAAC,WAAW,CAAC;IACzC,qBAAU,EAAE;GACA,kBAAkB,CAmB9B;AAnBY,gDAAkB"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./default-event.mapper"), exports);
14
+ //# sourceMappingURL=mappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mappers.js","sourceRoot":"","sources":["../../../../src/mappers/mappers.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Event = void 0;
4
+ /**
5
+ * This model defines what an Event is in the Pristine library.
6
+ * Once an event parsed, this should be the only object that will be handle inside the library.
7
+ */
8
+ class Event {
9
+ constructor(type, payload) {
10
+ this.type = type;
11
+ this.payload = payload;
12
+ }
13
+ }
14
+ exports.Event = Event;
15
+ //# sourceMappingURL=event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/models/event.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAa,KAAK;IACd,YAAmB,IAAY,EAAS,OAAgB;QAArC,SAAI,GAAJ,IAAI,CAAQ;QAAS,YAAO,GAAP,OAAO,CAAS;IACxD,CAAC;CACJ;AAHD,sBAGC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventResponse = void 0;
4
+ class EventResponse {
5
+ constructor(event, response) {
6
+ this.event = event;
7
+ this.response = response;
8
+ }
9
+ }
10
+ exports.EventResponse = EventResponse;
11
+ //# sourceMappingURL=event.response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.response.js","sourceRoot":"","sources":["../../../../src/models/event.response.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACtB,YAA4B,KAA0B,EAAkB,QAA8B;QAA1E,UAAK,GAAL,KAAK,CAAqB;QAAkB,aAAQ,GAAR,QAAQ,CAAsB;IACtG,CAAC;CACJ;AAHD,sCAGC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./event"), exports);
14
+ __exportStar(require("./event.response"), exports);
15
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/models/models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,mDAAiC"}
@@ -0,0 +1,282 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.EventPipeline = void 0;
25
+ const tsyringe_1 = require("tsyringe");
26
+ const event_1 = require("../models/event");
27
+ const common_1 = require("@pristine-ts/common");
28
+ const event_mapping_error_1 = require("../errors/event-mapping.error");
29
+ const event_pre_mapping_interception_error_1 = require("../errors/event-pre-mapping-interception.error");
30
+ const event_post_mapping_interception_error_1 = require("../errors/event-post-mapping-interception.error");
31
+ const event_dispatching_error_1 = require("../errors/event-dispatching.error");
32
+ const event_pre_response_mapping_interception_error_1 = require("../errors/event-pre-response-mapping-interception.error");
33
+ const event_post_response_mapping_interception_error_1 = require("../errors/event-post-response-mapping-interception.error");
34
+ const telemetry_1 = require("@pristine-ts/telemetry");
35
+ let EventPipeline = class EventPipeline {
36
+ constructor(eventInterceptors, eventMappers, logHandler, tracingManager) {
37
+ this.eventInterceptors = eventInterceptors;
38
+ this.eventMappers = eventMappers;
39
+ this.logHandler = logHandler;
40
+ this.tracingManager = tracingManager;
41
+ }
42
+ /**
43
+ * This method calls the interceptors that are to be executed just before the EventMappers are executed. It allows
44
+ * for changing the raw event coming directly into the kernel.
45
+ *
46
+ * @param event
47
+ * @param executionContext
48
+ * @private
49
+ */
50
+ preMappingIntercept(event, executionContext) {
51
+ var _a, _b;
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ let interceptedEvent = event;
54
+ const span = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventPreMappingInterception);
55
+ for (const eventInterceptor of this.eventInterceptors) {
56
+ try {
57
+ interceptedEvent = (_b = yield ((_a = eventInterceptor.preMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEvent, executionContext))) !== null && _b !== void 0 ? _b : interceptedEvent;
58
+ }
59
+ catch (error) {
60
+ throw new event_pre_mapping_interception_error_1.EventPreMappingInterceptionError("There was an error while executing the PreMapping Event interceptors", error, eventInterceptor.constructor.name, event, executionContext);
61
+ }
62
+ }
63
+ span.end();
64
+ return interceptedEvent;
65
+ });
66
+ }
67
+ /**
68
+ * This method calls the interceptors that are executed just after the EventMappers have mapped the raw event into
69
+ * an Event object.
70
+ *
71
+ * @param event
72
+ * @private
73
+ */
74
+ postMappingIntercept(event) {
75
+ var _a, _b;
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ let interceptedEvent = event;
78
+ const span = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventPostMappingInterception);
79
+ for (const eventInterceptor of this.eventInterceptors) {
80
+ try {
81
+ interceptedEvent = (_b = yield ((_a = eventInterceptor.postMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEvent))) !== null && _b !== void 0 ? _b : interceptedEvent;
82
+ }
83
+ catch (error) {
84
+ throw new event_post_mapping_interception_error_1.EventPostMappingInterceptionError("There was an error while executing the PostMapping Event interceptors", error, eventInterceptor.constructor.name, event);
85
+ }
86
+ }
87
+ span.end();
88
+ return interceptedEvent;
89
+ });
90
+ }
91
+ /**
92
+ * This method calls the interceptors that are to be executed just after the EventResponse has been returned from
93
+ * the EventDispatcher but before it is reverse mapped by the EventMappers.
94
+ *
95
+ * @param eventResponse
96
+ * @private
97
+ */
98
+ preResponseMappingIntercept(eventResponse) {
99
+ var _a, _b;
100
+ return __awaiter(this, void 0, void 0, function* () {
101
+ let interceptedEventResponse = eventResponse;
102
+ const span = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventPreResponseMappingInterception);
103
+ for (const eventInterceptor of this.eventInterceptors) {
104
+ try {
105
+ interceptedEventResponse = (_b = yield ((_a = eventInterceptor.preResponseMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEventResponse))) !== null && _b !== void 0 ? _b : interceptedEventResponse;
106
+ }
107
+ catch (error) {
108
+ throw new event_pre_response_mapping_interception_error_1.EventPreResponseMappingInterceptionError("There was an error while executing the PreResponseMapping Event interceptors", error, eventInterceptor.constructor.name, eventResponse);
109
+ }
110
+ }
111
+ span.end();
112
+ return interceptedEventResponse;
113
+ });
114
+ }
115
+ /**
116
+ * This method calls the interceptors that are executed after the EventResponse object has been mapped into a simple
117
+ * object.
118
+ *
119
+ * @param eventResponse The event response object to be returned from the handle method in the kernel.
120
+ * @private
121
+ */
122
+ postResponseMappingIntercept(eventResponse) {
123
+ var _a, _b;
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ let interceptedEventResponse = eventResponse;
126
+ const span = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventPostResponseMappingInterception);
127
+ for (const eventInterceptor of this.eventInterceptors) {
128
+ try {
129
+ interceptedEventResponse = (_b = yield ((_a = eventInterceptor.postResponseMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEventResponse))) !== null && _b !== void 0 ? _b : interceptedEventResponse;
130
+ }
131
+ catch (error) {
132
+ throw new event_post_response_mapping_interception_error_1.EventPostResponseMappingInterceptionError("There was an error while executing the PostResponseMapping Event interceptors", error, eventInterceptor.constructor.name, eventResponse);
133
+ }
134
+ }
135
+ span.end();
136
+ return interceptedEventResponse;
137
+ });
138
+ }
139
+ /**
140
+ * This method executes the postMappingInterceptors and then dispatches the Event by using the EventDispatcher.
141
+ *
142
+ * @param event This is the event that must be dispatched.
143
+ * @param eventDispatcher This is the eventDispatcher instance that will dispatch the Event.
144
+ * @private
145
+ */
146
+ executeEvent(event, eventDispatcher) {
147
+ return __awaiter(this, void 0, void 0, function* () {
148
+ // 1 - Run the post mapped interceptors on every single event before they get executed.
149
+ let interceptedEvent = yield this.postMappingIntercept(event);
150
+ try {
151
+ const eventExecutionSpan = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventExecution);
152
+ // 2 - Call the EventDispatcher and retrieve the Event Response
153
+ const response = yield eventDispatcher.dispatch(interceptedEvent);
154
+ eventExecutionSpan.end();
155
+ return response;
156
+ }
157
+ catch (error) {
158
+ this.logHandler.error("There was an error while dispatching the event", {
159
+ error,
160
+ interceptedEvent,
161
+ });
162
+ throw new event_dispatching_error_1.EventDispatchingError("There was an error while dispatching the event", error, interceptedEvent);
163
+ }
164
+ });
165
+ }
166
+ /**
167
+ *
168
+ * @param event
169
+ * @param executionContext
170
+ * @param container
171
+ */
172
+ execute(event, executionContext, container) {
173
+ return __awaiter(this, void 0, void 0, function* () {
174
+ const eventExecutions = [];
175
+ // If the event passed is already properly typed, we simply execute it, without mapping and without calling the pre-mapping interceptors
176
+ if (event instanceof event_1.Event) {
177
+ eventExecutions.push({
178
+ events: [event],
179
+ executionOrder: "sequential",
180
+ });
181
+ }
182
+ else {
183
+ // 1- We have the raw event, we start by executing the PreMapping Interceptors
184
+ const interceptedEvent = yield this.preMappingIntercept(event, executionContext);
185
+ // 2- With the intercepted raw event, run the Events Mapping to get all the Events and the EventsExecutionOptions.
186
+ // For each event mapper that supports the event, we batch the executions for each mapper. So it's possible to execute the same
187
+ // event twice. This is up to the EventMappers to properly identify when they map or don't map an event. Pristine
188
+ // isn't responsible to determine if two events are executed twice, so be careful.
189
+ let numberOfEventMappers = 0;
190
+ try {
191
+ const span = this.tracingManager.startSpan(telemetry_1.SpanKeynameEnum.EventMapping);
192
+ this.eventMappers.forEach(eventMapper => {
193
+ if (eventMapper.supportsMapping(interceptedEvent, executionContext)) {
194
+ eventExecutions.push(eventMapper.map(interceptedEvent, executionContext));
195
+ numberOfEventMappers++;
196
+ }
197
+ });
198
+ span.end();
199
+ }
200
+ catch (error) {
201
+ throw new event_mapping_error_1.EventMappingError("There was an error mapping the event into an Event object", event, interceptedEvent, executionContext, error);
202
+ }
203
+ if (numberOfEventMappers === 0) {
204
+ throw new event_mapping_error_1.EventMappingError("There are no Event Mappers that support the event", event, interceptedEvent, executionContext);
205
+ }
206
+ if (eventExecutions.length === 0 || eventExecutions.reduce((agg, eventExecution) => {
207
+ return agg + eventExecution.events.length;
208
+ }, 0) === 0) {
209
+ throw new event_mapping_error_1.EventMappingError("There are no events to execute.", event, interceptedEvent, executionContext);
210
+ }
211
+ }
212
+ const eventsExecutionPromises = [];
213
+ // 3- Loop over the EventExecutionOptions array and start executing the events
214
+ eventExecutions.forEach(eventExecutionOptions => {
215
+ switch (eventExecutionOptions.executionOrder) {
216
+ case 'sequential':
217
+ eventsExecutionPromises.push(new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
218
+ // await all events and then resolve.
219
+ const eventResponses = [];
220
+ for (const event of eventExecutionOptions.events) {
221
+ const childContainer = container.createChildContainer();
222
+ // It's important to register the CurrentChildContainer since even though it's not 100% recommended,
223
+ // some handlers might want to retrieve the container. For example, the RequestHandler needs this mechanism
224
+ // to dynamically load the controllers and not load all the containers all the time.
225
+ childContainer.register(common_1.ServiceDefinitionTagEnum.CurrentChildContainer, {
226
+ useValue: childContainer,
227
+ });
228
+ const eventDispatcher = childContainer.resolve("EventDispatcherInterface");
229
+ try {
230
+ eventResponses.push(yield this.executeEvent(event, eventDispatcher));
231
+ }
232
+ catch (error) {
233
+ return reject(error);
234
+ }
235
+ }
236
+ return resolve(eventResponses);
237
+ })));
238
+ break;
239
+ case 'parallel':
240
+ for (const event of eventExecutionOptions.events) {
241
+ eventsExecutionPromises.push(new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
242
+ const childContainer = container.createChildContainer();
243
+ // It's important to register the CurrentChildContainer since even though it's not 100% recommended,
244
+ // some handlers might want to retrieve the container. For example, the RequestHandler needs this mechanism
245
+ // to dynamically load the controllers and not load all the containers all the time.
246
+ childContainer.register(common_1.ServiceDefinitionTagEnum.CurrentChildContainer, {
247
+ useValue: childContainer,
248
+ });
249
+ const eventDispatcher = childContainer.resolve("EventDispatcherInterface");
250
+ this.executeEvent(event, eventDispatcher).then(eventResponse => resolve(eventResponse)).catch(error => reject(error));
251
+ })));
252
+ }
253
+ break;
254
+ }
255
+ });
256
+ // 4- For each event, call the PreResponseMapping Interceptors
257
+ const eventResponses = yield Promise.all((yield Promise.all(eventsExecutionPromises)).flat().map((eventResponse) => __awaiter(this, void 0, void 0, function* () { return yield this.preResponseMappingIntercept(eventResponse); })));
258
+ let finalResponse = {};
259
+ // 5 - Construct the final response by calling the events mapper (reverse map method) for each eventResponse;
260
+ // This method updates the response object that will be returned from the kernel.
261
+ eventResponses.forEach(eventResponse => {
262
+ this.eventMappers.forEach(eventMapper => {
263
+ if (eventMapper.supportsReverseMapping(eventResponse, finalResponse, executionContext)) {
264
+ finalResponse = eventMapper.reverseMap(eventResponse, finalResponse, executionContext);
265
+ }
266
+ });
267
+ });
268
+ // 6 - Call the PostResponseMapping interceptors and return the final intercepted response.
269
+ return this.postResponseMappingIntercept(finalResponse);
270
+ });
271
+ }
272
+ };
273
+ EventPipeline = __decorate([
274
+ tsyringe_1.injectable(),
275
+ __param(0, tsyringe_1.injectAll(common_1.ServiceDefinitionTagEnum.EventInterceptor)),
276
+ __param(1, tsyringe_1.injectAll(common_1.ServiceDefinitionTagEnum.EventMapper)),
277
+ __param(2, tsyringe_1.inject('LogHandlerInterface')),
278
+ __param(3, tsyringe_1.inject("TracingManagerInterface")),
279
+ __metadata("design:paramtypes", [Array, Array, Object, Object])
280
+ ], EventPipeline);
281
+ exports.EventPipeline = EventPipeline;
282
+ //# sourceMappingURL=event.pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.pipeline.js","sourceRoot":"","sources":["../../../../src/pipelines/event.pipeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./event.pipeline"), exports);
14
+ //# sourceMappingURL=pipelines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipelines.js","sourceRoot":"","sources":["../../../../src/pipelines/pipelines.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAAiC"}
@@ -1,21 +1,24 @@
1
- import { NetworkingModule } from "@pristine-ts/networking";
2
1
  import { CoreModuleKeyname } from "./core.module.keyname";
3
2
  import { TelemetryModule } from "@pristine-ts/telemetry";
4
- import { EventModule } from "@pristine-ts/event";
5
3
  import { ConfigurationModule, EnvironmentVariableResolver } from "@pristine-ts/configuration";
6
4
  import { LoggingModule } from "@pristine-ts/logging";
7
5
  export * from "./kernel";
6
+ export * from "./dispatchers/dispatchers";
7
+ export * from "./enums/enums";
8
8
  export * from "./errors/errors";
9
+ export * from "./handlers/handlers";
9
10
  export * from "./interceptors/interceptors";
10
11
  export * from "./interfaces/interfaces";
12
+ export * from "./listeners/listeners";
13
+ export * from "./mappers/mappers";
14
+ export * from "./models/models";
15
+ export * from "./pipelines/pipelines";
11
16
  export * from "./core.module.keyname";
12
17
  export const CoreModule = {
13
18
  keyname: CoreModuleKeyname,
14
19
  importModules: [
15
20
  ConfigurationModule,
16
- NetworkingModule,
17
21
  TelemetryModule,
18
- EventModule,
19
22
  LoggingModule,
20
23
  ],
21
24
  providerRegistrations: [],
@@ -1 +1 @@
1
- {"version":3,"file":"core.module.js","sourceRoot":"","sources":["../../../src/core.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,mBAAmB,EAAE,2BAA2B,EAAC,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAEnD,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAEtC,MAAM,CAAC,MAAM,UAAU,GAAqB;IACxC,OAAO,EAAE,iBAAiB;IAC1B,aAAa,EAAE;QACX,mBAAmB;QACnB,gBAAgB;QAChB,eAAe;QACf,WAAW;QACX,aAAa;KAChB;IACD,qBAAqB,EAAE,EAAE;IACzB,wBAAwB,EAAE;QACtB;YACI,aAAa,EAAE,iBAAiB,GAAG,6BAA6B;YAChE,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,2BAA2B,CAAC,6CAA6C,CAAC;aACjF;SACJ;KACJ;CACJ,CAAA"}
1
+ {"version":3,"file":"core.module.js","sourceRoot":"","sources":["../../../src/core.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,mBAAmB,EAAE,2BAA2B,EAAC,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAEnD,cAAc,UAAU,CAAC;AAEzB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,uBAAuB,CAAC;AAEtC,MAAM,CAAC,MAAM,UAAU,GAAqB;IACxC,OAAO,EAAE,iBAAiB;IAC1B,aAAa,EAAE;QACX,mBAAmB;QACnB,eAAe;QACf,aAAa;KAChB;IACD,qBAAqB,EAAE,EAAE;IACzB,wBAAwB,EAAE;QACtB;YACI,aAAa,EAAE,iBAAiB,GAAG,6BAA6B;YAChE,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE;gBACd,IAAI,2BAA2B,CAAC,6CAA6C,CAAC;aACjF;SACJ;KACJ;CACJ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from "./event.dispatcher";
2
+ //# sourceMappingURL=dispatchers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatchers.js","sourceRoot":"","sources":["../../../../src/dispatchers/dispatchers.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,105 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ import { injectable, injectAll, inject } from "tsyringe";
23
+ import { ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
24
+ import { CoreModuleKeyname } from "../core.module.keyname";
25
+ import { EventDispatcherNoEventHandlersError } from "../errors/event-dispatcher-no-event-handlers.error";
26
+ /**
27
+ * This class receives all the event handlers and listeners that were registered and calls them if they support the event.
28
+ */
29
+ let EventDispatcher = class EventDispatcher {
30
+ /**
31
+ * Dispatcher to dispatch the events to the event handlers that support them.
32
+ * @param eventHandlers All the event handlers that are tagged with ServiceDefinitionTagEnum.EventHandler
33
+ * @param eventListeners
34
+ * @param logHandler
35
+ */
36
+ constructor(eventHandlers, eventListeners, logHandler) {
37
+ this.eventHandlers = eventHandlers;
38
+ this.eventListeners = eventListeners;
39
+ this.logHandler = logHandler;
40
+ this.eventHandlers.sort((a, b) => { var _a, _b; return ((_a = b.priority) !== null && _a !== void 0 ? _a : 0) - ((_b = a.priority) !== null && _b !== void 0 ? _b : 0); });
41
+ }
42
+ /**
43
+ * This method receives an event, loops through its event handlers and listeners and if they support the event,
44
+ * will call their handle method.
45
+ * Resolves once all the event handlers and listeners have settled, but does not return a response.
46
+ *
47
+ * @param event
48
+ */
49
+ dispatch(event) {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ this.logHandler.debug("Dispatch the event", {
52
+ event,
53
+ eventHandlers: this.eventHandlers,
54
+ eventHandlerNames: this.eventHandlers.map(eventHandler => eventHandler.constructor.name),
55
+ }, CoreModuleKeyname);
56
+ // Notify the EventListeners that an event exists. The difference between a Handler and a Listener, is that a handler is
57
+ // expected to return an EventResponse, while a listener doesn't return anything. An EventListener simply does passive listening.
58
+ let eventListenerPromises = [];
59
+ this.eventListeners.forEach(eventListener => {
60
+ if (eventListener.supports(event)) {
61
+ eventListenerPromises.push(eventListener.execute(event));
62
+ }
63
+ });
64
+ const supportingEventHandlers = [];
65
+ for (const eventHandler of this.eventHandlers) {
66
+ if (eventHandler.supports(event)) {
67
+ this.logHandler.debug("The EventHandler supports the event", {
68
+ event,
69
+ eventHandler: eventHandler,
70
+ eventHandlerName: eventHandler.constructor.name,
71
+ }, CoreModuleKeyname);
72
+ supportingEventHandlers.push(eventHandler);
73
+ break;
74
+ }
75
+ else {
76
+ this.logHandler.debug("The EventHandler doesn't support the event", {
77
+ event,
78
+ eventHandler: eventHandler,
79
+ eventHandlerName: eventHandler.constructor.name,
80
+ }, CoreModuleKeyname);
81
+ }
82
+ }
83
+ if (supportingEventHandlers.length === 0) {
84
+ throw new EventDispatcherNoEventHandlersError("There are no EventHandlers that support this event.", event);
85
+ }
86
+ else if (supportingEventHandlers.length > 1) {
87
+ this.logHandler.warning("There are more than one EventHandler that support this event.");
88
+ }
89
+ // We only support executing the handler with the highest priority.
90
+ const eventResponse = yield supportingEventHandlers[0].handle(event);
91
+ yield Promise.allSettled(eventListenerPromises);
92
+ return eventResponse;
93
+ });
94
+ }
95
+ };
96
+ EventDispatcher = __decorate([
97
+ tag("EventDispatcherInterface"),
98
+ injectable(),
99
+ __param(0, injectAll(ServiceDefinitionTagEnum.EventHandler)),
100
+ __param(1, injectAll(ServiceDefinitionTagEnum.EventListener)),
101
+ __param(2, inject("LogHandlerInterface")),
102
+ __metadata("design:paramtypes", [Array, Array, Object])
103
+ ], EventDispatcher);
104
+ export { EventDispatcher };
105
+ //# sourceMappingURL=event.dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.dispatcher.js","sourceRoot":"","sources":["../../../../src/dispatchers/event.dispatcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./execution-context-keyname.enum";
2
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/enums/enums.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export var ExecutionContextKeynameEnum;
2
+ (function (ExecutionContextKeynameEnum) {
3
+ ExecutionContextKeynameEnum["AwsLambda"] = "AWS_LAMBDA";
4
+ ExecutionContextKeynameEnum["Cloudflare"] = "CLOUDFLARE";
5
+ ExecutionContextKeynameEnum["Express"] = "EXPRESS";
6
+ ExecutionContextKeynameEnum["Jest"] = "JEST";
7
+ })(ExecutionContextKeynameEnum || (ExecutionContextKeynameEnum = {}));
8
+ //# sourceMappingURL=execution-context-keyname.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-context-keyname.enum.js","sourceRoot":"","sources":["../../../../src/enums/execution-context-keyname.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,2BAKX;AALD,WAAY,2BAA2B;IACnC,uDAAwB,CAAA;IACxB,wDAAyB,CAAA;IACzB,kDAAmB,CAAA;IACnB,4CAAa,CAAA;AACjB,CAAC,EALW,2BAA2B,KAA3B,2BAA2B,QAKtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"error-response-interception-execution.error.js","sourceRoot":"","sources":["../../../../src/errors/error-response-interception-execution.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAmB,MAAM,qBAAqB,CAAC;AAEpE;;GAEG;AACH,MAAM,OAAO,uCAAwC,SAAQ,aAAa;IAEtE,YAAmB,OAAe,EAAE,KAAY,EAAE,OAAyB,EAAE,WAAgB,EAAE,aAAqB;QAChH,KAAK,CAAC,OAAO,EAAE;YACX,aAAa;YACb,KAAK;YACL,OAAO;YACP,WAAW;SACd,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,uCAAuC,CAAC,SAAS,CAAC,CAAC;IAAI,CAAC;CAC3F"}
1
+ {"version":3,"file":"error-response-interception-execution.error.js","sourceRoot":"","sources":["../../../../src/errors/error-response-interception-execution.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAGlD;;GAEG;AACH,MAAM,OAAO,uCAAwC,SAAQ,aAAa;IAEtE,YAAmB,OAAe,EAAE,KAAY,EAAE,OAAgB,EAAE,WAAgB,EAAE,aAAqB;QACvG,KAAK,CAAC,OAAO,EAAE;YACX,aAAa;YACb,KAAK;YACL,OAAO;YACP,WAAW;SACd,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,uCAAuC,CAAC,SAAS,CAAC,CAAC;IAAI,CAAC;CAC3F"}
@@ -1,9 +1,11 @@
1
1
  export * from "./error-response-interception-execution.error";
2
- export * from "./provider-registration.error";
2
+ export * from "./event-dispatcher-no-event-handlers.error";
3
+ export * from "./event-dispatching.error";
3
4
  export * from "./event-interception-execution.error";
5
+ export * from "./event-mapping.error";
6
+ export * from "./event-post-mapping-interception.error";
7
+ export * from "./event-pre-mapping-interception.error";
4
8
  export * from "./kernel-initialization.error";
5
- export * from "./request-handling.error";
6
- export * from "./request-interception-execution.error";
7
- export * from "./response-interception-execution.error";
9
+ export * from "./provider-registration.error";
8
10
  export * from "./runtime.error";
9
11
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":"AAAA,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":"AAAA,cAAc,+CAA+C,CAAC;AAC9D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,uBAAuB,CAAC;AACtC,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { LoggableError } from "@pristine-ts/common";
2
+ /**
3
+ * This Error is thrown when there are not event handlers that support this event.
4
+ */
5
+ export class EventDispatcherNoEventHandlersError extends LoggableError {
6
+ constructor(message, event) {
7
+ super(message, {
8
+ event,
9
+ });
10
+ // Set the prototype explicitly.
11
+ // As specified in the documentation in TypeScript
12
+ // https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
13
+ Object.setPrototypeOf(this, EventDispatcherNoEventHandlersError.prototype);
14
+ }
15
+ }
16
+ //# sourceMappingURL=event-dispatcher-no-event-handlers.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-dispatcher-no-event-handlers.error.js","sourceRoot":"","sources":["../../../../src/errors/event-dispatcher-no-event-handlers.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAIlD;;GAEG;AACH,MAAM,OAAO,mCAAoC,SAAQ,aAAa;IAElE,YAAmB,OAAe,EAAE,KAAiB;QACjD,KAAK,CAAC,OAAO,EAAE;YACX,KAAK;SACR,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,mCAAmC,CAAC,SAAS,CAAC,CAAC;IAC/E,CAAC;CACJ"}