atomservices 0.10.0-alpha.9 → 0.12.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/package.json +16 -34
  2. package/src/IEvent.ts +33 -0
  3. package/src/index.ts +1 -0
  4. package/tsconfig.json +24 -0
  5. package/tsup.config.ts +9 -0
  6. package/LICENSE +0 -21
  7. package/README.md +0 -1
  8. package/RELEASES.md +0 -1
  9. package/lib/Commands/DispatchResult.js +0 -38
  10. package/lib/Commands/DispatchResult.js.map +0 -1
  11. package/lib/Commands/ICommandDispatcher.js +0 -3
  12. package/lib/Commands/ICommandDispatcher.js.map +0 -1
  13. package/lib/Commands/ICommandDispatchers.js +0 -3
  14. package/lib/Commands/ICommandDispatchers.js.map +0 -1
  15. package/lib/Commands/ICommandHandlers.js +0 -3
  16. package/lib/Commands/ICommandHandlers.js.map +0 -1
  17. package/lib/Commands/combineCommandDispatchers.js +0 -28
  18. package/lib/Commands/combineCommandDispatchers.js.map +0 -1
  19. package/lib/Commands/composeCommandHandlers.js +0 -31
  20. package/lib/Commands/composeCommandHandlers.js.map +0 -1
  21. package/lib/Commands/index.js +0 -9
  22. package/lib/Commands/index.js.map +0 -1
  23. package/lib/Containers/Enhancement.js +0 -3
  24. package/lib/Containers/Enhancement.js.map +0 -1
  25. package/lib/Containers/IManagedServiceContainerResult.js +0 -4
  26. package/lib/Containers/IManagedServiceContainerResult.js.map +0 -1
  27. package/lib/Containers/createContainer.js +0 -75
  28. package/lib/Containers/createContainer.js.map +0 -1
  29. package/lib/Containers/createContainerCompose.js +0 -11
  30. package/lib/Containers/createContainerCompose.js.map +0 -1
  31. package/lib/Containers/index.js +0 -7
  32. package/lib/Containers/index.js.map +0 -1
  33. package/lib/Context/Factories/ServiceConfigurateFactory.js +0 -25
  34. package/lib/Context/Factories/ServiceConfigurateFactory.js.map +0 -1
  35. package/lib/Context/Factories/ServiceIdentifierFactory.js +0 -16
  36. package/lib/Context/Factories/ServiceIdentifierFactory.js.map +0 -1
  37. package/lib/Context/Factories/index.js +0 -11
  38. package/lib/Context/Factories/index.js.map +0 -1
  39. package/lib/Context/index.js +0 -5
  40. package/lib/Context/index.js.map +0 -1
  41. package/lib/Events/IEventHandlers.js +0 -3
  42. package/lib/Events/IEventHandlers.js.map +0 -1
  43. package/lib/Events/composeEventHandlers.js +0 -31
  44. package/lib/Events/composeEventHandlers.js.map +0 -1
  45. package/lib/Events/index.js +0 -5
  46. package/lib/Events/index.js.map +0 -1
  47. package/lib/Exceptions/Constants.js +0 -28
  48. package/lib/Exceptions/Constants.js.map +0 -1
  49. package/lib/Exceptions/Core.js +0 -41
  50. package/lib/Exceptions/Core.js.map +0 -1
  51. package/lib/Exceptions/ExtendException.js +0 -15
  52. package/lib/Exceptions/ExtendException.js.map +0 -1
  53. package/lib/Exceptions/IExtendException.js +0 -3
  54. package/lib/Exceptions/IExtendException.js.map +0 -1
  55. package/lib/Exceptions/createException.js +0 -7
  56. package/lib/Exceptions/createException.js.map +0 -1
  57. package/lib/GlobalScope.js +0 -5
  58. package/lib/GlobalScope.js.map +0 -1
  59. package/lib/Identifiers/UUIDIdentifier.js +0 -10
  60. package/lib/Identifiers/UUIDIdentifier.js.map +0 -1
  61. package/lib/Identifiers/index.js +0 -5
  62. package/lib/Identifiers/index.js.map +0 -1
  63. package/lib/Notifiers/NotifyLog.js +0 -30
  64. package/lib/Notifiers/NotifyLog.js.map +0 -1
  65. package/lib/Notifiers/NotifyObject.js +0 -35
  66. package/lib/Notifiers/NotifyObject.js.map +0 -1
  67. package/lib/Notifiers/composeNotifiers.js +0 -36
  68. package/lib/Notifiers/composeNotifiers.js.map +0 -1
  69. package/lib/Notifiers/data/ContainersNotifyData.js +0 -10
  70. package/lib/Notifiers/data/ContainersNotifyData.js.map +0 -1
  71. package/lib/Notifiers/data/ServicesNotifyData.js +0 -18
  72. package/lib/Notifiers/data/ServicesNotifyData.js.map +0 -1
  73. package/lib/Notifiers/data/common/ContainersData.js +0 -9
  74. package/lib/Notifiers/data/common/ContainersData.js.map +0 -1
  75. package/lib/Notifiers/data/common/IConstantData.js +0 -3
  76. package/lib/Notifiers/data/common/IConstantData.js.map +0 -1
  77. package/lib/Notifiers/data/common/ServicesData.js +0 -17
  78. package/lib/Notifiers/data/common/ServicesData.js.map +0 -1
  79. package/lib/Notifiers/data/common/composeNotifyData.js +0 -15
  80. package/lib/Notifiers/data/common/composeNotifyData.js.map +0 -1
  81. package/lib/Notifiers/data/common/index.js +0 -9
  82. package/lib/Notifiers/data/common/index.js.map +0 -1
  83. package/lib/Notifiers/data/index.js +0 -7
  84. package/lib/Notifiers/data/index.js.map +0 -1
  85. package/lib/Notifiers/index.js +0 -13
  86. package/lib/Notifiers/index.js.map +0 -1
  87. package/lib/Reactions/IReactions.js +0 -3
  88. package/lib/Reactions/IReactions.js.map +0 -1
  89. package/lib/Reactions/composeReactions.js +0 -41
  90. package/lib/Reactions/composeReactions.js.map +0 -1
  91. package/lib/Reactions/index.js +0 -5
  92. package/lib/Reactions/index.js.map +0 -1
  93. package/lib/SFComponents/createSFComponents.js +0 -147
  94. package/lib/SFComponents/createSFComponents.js.map +0 -1
  95. package/lib/SFComponents/index.js +0 -5
  96. package/lib/SFComponents/index.js.map +0 -1
  97. package/lib/Services/core/MetadataRefiner.js +0 -31
  98. package/lib/Services/core/MetadataRefiner.js.map +0 -1
  99. package/lib/Services/core/composeEventProcess.js +0 -31
  100. package/lib/Services/core/composeEventProcess.js.map +0 -1
  101. package/lib/Services/core/composeEventReactions.js +0 -56
  102. package/lib/Services/core/composeEventReactions.js.map +0 -1
  103. package/lib/Services/core/composeEventResulting.js +0 -5
  104. package/lib/Services/core/composeEventResulting.js.map +0 -1
  105. package/lib/Services/core/composeServiceContext.js +0 -126
  106. package/lib/Services/core/composeServiceContext.js.map +0 -1
  107. package/lib/Services/core/connectStream/connectStream.js +0 -26
  108. package/lib/Services/core/connectStream/connectStream.js.map +0 -1
  109. package/lib/Services/core/connectStream/index.js +0 -5
  110. package/lib/Services/core/connectStream/index.js.map +0 -1
  111. package/lib/Services/core/connectStream/mapHandlersEvents.js +0 -9
  112. package/lib/Services/core/connectStream/mapHandlersEvents.js.map +0 -1
  113. package/lib/Services/core/connectStream/mapReactionsEvents.js +0 -5
  114. package/lib/Services/core/connectStream/mapReactionsEvents.js.map +0 -1
  115. package/lib/Services/core/createCommandDispatcher.js +0 -56
  116. package/lib/Services/core/createCommandDispatcher.js.map +0 -1
  117. package/lib/Services/core/index.js +0 -13
  118. package/lib/Services/core/index.js.map +0 -1
  119. package/lib/Services/core/operateEventProcess.js +0 -39
  120. package/lib/Services/core/operateEventProcess.js.map +0 -1
  121. package/lib/Services/createService.js +0 -111
  122. package/lib/Services/createService.js.map +0 -1
  123. package/lib/Services/index.js +0 -5
  124. package/lib/Services/index.js.map +0 -1
  125. package/lib/States/IStateHandlers.js +0 -3
  126. package/lib/States/IStateHandlers.js.map +0 -1
  127. package/lib/States/composeStateApplier.js +0 -14
  128. package/lib/States/composeStateApplier.js.map +0 -1
  129. package/lib/States/composeStateHandlers.js +0 -27
  130. package/lib/States/composeStateHandlers.js.map +0 -1
  131. package/lib/States/index.js +0 -7
  132. package/lib/States/index.js.map +0 -1
  133. package/lib/Streams/LocalDirectStream.js +0 -16
  134. package/lib/Streams/LocalDirectStream.js.map +0 -1
  135. package/lib/Streams/LocalEventStream.js +0 -47
  136. package/lib/Streams/LocalEventStream.js.map +0 -1
  137. package/lib/Streams/LocalInMemoryEventStream.js +0 -13
  138. package/lib/Streams/LocalInMemoryEventStream.js.map +0 -1
  139. package/lib/Streams/endpoints.js +0 -9
  140. package/lib/Streams/endpoints.js.map +0 -1
  141. package/lib/Streams/index.js +0 -7
  142. package/lib/Streams/index.js.map +0 -1
  143. package/lib/index.js +0 -18
  144. package/lib/index.js.map +0 -1
  145. package/typings/Commands/DispatchResult.d.ts +0 -16
  146. package/typings/Commands/ICommandDispatcher.d.ts +0 -6
  147. package/typings/Commands/ICommandDispatchers.d.ts +0 -4
  148. package/typings/Commands/ICommandHandlers.d.ts +0 -6
  149. package/typings/Commands/combineCommandDispatchers.d.ts +0 -3
  150. package/typings/Commands/composeCommandHandlers.d.ts +0 -3
  151. package/typings/Commands/index.d.ts +0 -6
  152. package/typings/Containers/Enhancement.d.ts +0 -3
  153. package/typings/Containers/IManagedServiceContainerResult.d.ts +0 -5
  154. package/typings/Containers/createContainer.d.ts +0 -4
  155. package/typings/Containers/createContainerCompose.d.ts +0 -5
  156. package/typings/Containers/index.d.ts +0 -3
  157. package/typings/Context/Factories/ServiceConfigurateFactory.d.ts +0 -4
  158. package/typings/Context/Factories/ServiceIdentifierFactory.d.ts +0 -4
  159. package/typings/Context/Factories/index.d.ts +0 -8
  160. package/typings/Context/index.d.ts +0 -1
  161. package/typings/Events/IEventHandlers.d.ts +0 -6
  162. package/typings/Events/composeEventHandlers.d.ts +0 -3
  163. package/typings/Events/index.d.ts +0 -2
  164. package/typings/Exceptions/Constants.d.ts +0 -58
  165. package/typings/Exceptions/Core.d.ts +0 -12
  166. package/typings/Exceptions/ExtendException.d.ts +0 -6
  167. package/typings/Exceptions/IExtendException.d.ts +0 -7
  168. package/typings/Exceptions/createException.d.ts +0 -5
  169. package/typings/GlobalScope.d.ts +0 -1
  170. package/typings/Identifiers/UUIDIdentifier.d.ts +0 -2
  171. package/typings/Identifiers/index.d.ts +0 -1
  172. package/typings/Notifiers/NotifyLog.d.ts +0 -14
  173. package/typings/Notifiers/NotifyObject.d.ts +0 -17
  174. package/typings/Notifiers/composeNotifiers.d.ts +0 -2
  175. package/typings/Notifiers/data/ContainersNotifyData.d.ts +0 -12
  176. package/typings/Notifiers/data/ServicesNotifyData.d.ts +0 -52
  177. package/typings/Notifiers/data/common/ContainersData.d.ts +0 -5
  178. package/typings/Notifiers/data/common/IConstantData.d.ts +0 -6
  179. package/typings/Notifiers/data/common/ServicesData.d.ts +0 -13
  180. package/typings/Notifiers/data/common/composeNotifyData.d.ts +0 -9
  181. package/typings/Notifiers/data/common/index.d.ts +0 -4
  182. package/typings/Notifiers/data/index.d.ts +0 -2
  183. package/typings/Notifiers/index.d.ts +0 -5
  184. package/typings/Reactions/IReactions.d.ts +0 -6
  185. package/typings/Reactions/composeReactions.d.ts +0 -3
  186. package/typings/Reactions/index.d.ts +0 -2
  187. package/typings/SFComponents/createSFComponents.d.ts +0 -22
  188. package/typings/SFComponents/index.d.ts +0 -1
  189. package/typings/Services/core/MetadataRefiner.d.ts +0 -13
  190. package/typings/Services/core/composeEventProcess.d.ts +0 -2
  191. package/typings/Services/core/composeEventReactions.d.ts +0 -2
  192. package/typings/Services/core/composeEventResulting.d.ts +0 -2
  193. package/typings/Services/core/composeServiceContext.d.ts +0 -5
  194. package/typings/Services/core/connectStream/connectStream.d.ts +0 -2
  195. package/typings/Services/core/connectStream/index.d.ts +0 -1
  196. package/typings/Services/core/connectStream/mapHandlersEvents.d.ts +0 -5
  197. package/typings/Services/core/connectStream/mapReactionsEvents.d.ts +0 -6
  198. package/typings/Services/core/createCommandDispatcher.d.ts +0 -3
  199. package/typings/Services/core/index.d.ts +0 -5
  200. package/typings/Services/core/operateEventProcess.d.ts +0 -5
  201. package/typings/Services/createService.d.ts +0 -2
  202. package/typings/Services/index.d.ts +0 -1
  203. package/typings/States/IStateHandlers.d.ts +0 -5
  204. package/typings/States/composeStateApplier.d.ts +0 -5
  205. package/typings/States/composeStateHandlers.d.ts +0 -3
  206. package/typings/States/index.d.ts +0 -3
  207. package/typings/Streams/LocalDirectStream.d.ts +0 -2
  208. package/typings/Streams/LocalEventStream.d.ts +0 -2
  209. package/typings/Streams/LocalInMemoryEventStream.d.ts +0 -2
  210. package/typings/Streams/endpoints.d.ts +0 -13
  211. package/typings/Streams/index.d.ts +0 -2
  212. package/typings/index.d.ts +0 -11
@@ -1 +0,0 @@
1
- {"version":3,"file":"createSFComponents.js","sourceRoot":"","sources":["../../src/SFComponents/createSFComponents.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var createSFComponents_1 = require("./createSFComponents");
4
- Object.defineProperty(exports, "createSFComponents", { enumerable: true, get: function () { return createSFComponents_1.createSFComponents; } });
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SFComponents/index.ts"],"names":[],"mappings":";;AAAA,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MetadataRefiner = void 0;
4
- exports.MetadataRefiner = {
5
- consume: (metadata) => {
6
- const meta = metadata.__ || {};
7
- const now = Date.now();
8
- let duration;
9
- const { time } = meta.dispatch || {};
10
- if (time) {
11
- duration = now - time;
12
- }
13
- return Object.assign({}, metadata, {
14
- __: {
15
- ...meta,
16
- dispatch: {
17
- duration,
18
- time,
19
- },
20
- },
21
- });
22
- },
23
- dispatch: (metadata) => Object.assign({}, metadata, {
24
- __: {
25
- dispatch: {
26
- time: Date.now(),
27
- },
28
- },
29
- }),
30
- };
31
- //# sourceMappingURL=MetadataRefiner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MetadataRefiner.js","sourceRoot":"","sources":["../../../src/Services/core/MetadataRefiner.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAG;IAC7B,OAAO,EAAE,CAAC,QAAqC,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,QAAa,CAAC;QAElB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;QAErC,IAAI,IAAI,EAAE;YACR,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC;SACvB;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;YACjC,EAAE,EAAE;gBACF,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,QAAQ;oBACR,IAAI;iBACL;aACF;SACF,CAAC,CAAC;IACL,CAAC;IACD,QAAQ,EAAE,CAAC,QAAqC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;QAC/E,EAAE,EAAE;YACF,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE;aACjB;SACF;KACF,CAAC;CACH,CAAC"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.composeEventProcess = void 0;
4
- const composeEventHandlers_1 = require("../../Events/composeEventHandlers");
5
- const composeStateApplier_1 = require("../../States/composeStateApplier");
6
- const composeStateHandlers_1 = require("../../States/composeStateHandlers");
7
- const composeEventResulting_1 = require("./composeEventResulting");
8
- const composeServiceContext_1 = require("./composeServiceContext");
9
- const operateEventProcess_1 = require("./operateEventProcess");
10
- exports.composeEventProcess = (definition) => ((Definition) => {
11
- const EventHandlers = composeEventHandlers_1.composeEventHandlers(...Definition.EventHandlers)(Definition.type);
12
- const StateHandlers = composeStateHandlers_1.composeStateHandlers(...Definition.StateHandlers)(Definition.type);
13
- const StateApplier = composeStateApplier_1.composeStateApplier({ StateHandlers });
14
- const composingServiceContext = composeServiceContext_1.composeServiceContext(Definition);
15
- const { Notifiers } = Definition;
16
- const EventProcess = async (event, metadata, processAck) => {
17
- const processType = Definition.ServiceConfigurate.processType(event.name);
18
- if (processType === "asynchronous") {
19
- const EventHandler = EventHandlers.resolve(event);
20
- if (EventHandler) {
21
- const ServiceContext = composingServiceContext(metadata);
22
- const resulting = composeEventResulting_1.composeEventResulting(ServiceContext, event);
23
- await operateEventProcess_1.operateEventProcess(EventHandler, StateApplier, ServiceContext, resulting, Notifiers)(Definition, event, metadata);
24
- }
25
- }
26
- await processAck();
27
- };
28
- Object.freeze(EventProcess);
29
- return EventProcess;
30
- })(definition);
31
- //# sourceMappingURL=composeEventProcess.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composeEventProcess.js","sourceRoot":"","sources":["../../../src/Services/core/composeEventProcess.ts"],"names":[],"mappings":";;;AACA,4EAAyE;AACzE,0EAAuE;AACvE,4EAAyE;AAEzE,mEAAgE;AAChE,mEAAgE;AAChE,+DAA4D;AAE/C,QAAA,mBAAmB,GAAG,CAAC,UAA8B,EAAgC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAgC,EAAE;IACjJ,MAAM,aAAa,GAAG,2CAAoB,CAAC,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACzF,MAAM,aAAa,GAAG,2CAAoB,CAAC,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,yCAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IAE5D,MAAM,uBAAuB,GAAG,6CAAqB,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAEjC,MAAM,YAAY,GAAiC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;QACvF,MAAM,WAAW,GAAG,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE1E,IAAI,WAAW,KAAK,cAAc,EAAE;YAClC,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAElD,IAAI,YAAY,EAAE;gBAChB,MAAM,cAAc,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACzD,MAAM,SAAS,GAAG,6CAAqB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBAE/D,MAAM,yCAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;aAC1H;SACF;QAED,MAAM,UAAU,EAAE,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAE5B,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC"}
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.composeEventReactions = void 0;
4
- const Notifiers_1 = require("../../Notifiers");
5
- const composeReactions_1 = require("../../Reactions/composeReactions");
6
- const composeServiceContext_1 = require("./composeServiceContext");
7
- const MetadataRefiner_1 = require("./MetadataRefiner");
8
- exports.composeEventReactions = (definition) => ((Definition) => {
9
- const Reactions = composeReactions_1.composeReactions(...Definition.Reactions)(Definition.type);
10
- const ServiceContextComposing = composeServiceContext_1.composeServiceContext(Definition);
11
- const scopes = Definition.Reactions.reduce((result, each) => {
12
- if (result.indexOf(each.scope) < 0) {
13
- result.push(each.scope);
14
- }
15
- return result;
16
- }, []);
17
- const { Notifiers } = Definition;
18
- return scopes.reduce((result, scope) => {
19
- const processing = async (event, metadata, processAck) => {
20
- const reacts = [];
21
- const reactions = Reactions.resolve(event, scope);
22
- metadata = MetadataRefiner_1.MetadataRefiner.consume(metadata);
23
- for (const reaction of reactions) {
24
- const ServiceContext = ServiceContextComposing(metadata);
25
- reacts.push(reaction.react(event, ServiceContext, metadata));
26
- }
27
- await Promise.all(reacts);
28
- if (reacts.length) {
29
- Notifiers.emit(Notifiers_1.ServicesNotifyData.SERVICE_EVENT_REACTED(Definition.type, {
30
- service: {
31
- scope: Definition.scope,
32
- type: Definition.type,
33
- },
34
- event: {
35
- eventID: event._id,
36
- metadata,
37
- scope,
38
- type: event.type,
39
- name: event.name,
40
- aggregateID: event.aggregateID,
41
- _createdAt: event._createdAt,
42
- _createdBy: event._createdBy,
43
- _version: event._version,
44
- },
45
- }, {
46
- event,
47
- metadata,
48
- }));
49
- }
50
- await processAck();
51
- };
52
- result[scope] = processing;
53
- return result;
54
- }, {});
55
- })(definition);
56
- //# sourceMappingURL=composeEventReactions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composeEventReactions.js","sourceRoot":"","sources":["../../../src/Services/core/composeEventReactions.ts"],"names":[],"mappings":";;;AACA,+CAAqD;AACrD,uEAAoE;AACpE,mEAAgE;AAChE,uDAAoD;AAEvC,QAAA,qBAAqB,GAAG,CAAC,UAA8B,EAAqC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAqC,EAAE;IAC7J,MAAM,SAAS,GAAG,mCAAgB,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,uBAAuB,GAAG,6CAAqB,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,MAAM,GAAa,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACpE,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACzB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAc,CAAC,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAEjC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACrC,MAAM,UAAU,GAAiC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;YACrF,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAClD,QAAQ,GAAG,iCAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAE7C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAChC,MAAM,cAAc,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACzD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;aAC9D;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE1B,IAAI,MAAM,CAAC,MAAM,EAAE;gBACjB,SAAS,CAAC,IAAI,CAAC,8BAAkB,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,EAAE;oBACvE,OAAO,EAAE;wBACP,KAAK,EAAE,UAAU,CAAC,KAAK;wBACvB,IAAI,EAAE,UAAU,CAAC,IAAI;qBACtB;oBAED,KAAK,EAAE;wBACL,OAAO,EAAE,KAAK,CAAC,GAAG;wBAClB,QAAQ;wBACR,KAAK;wBACL,IAAI,EAAE,KAAK,CAAC,IAAI;wBAEhB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;wBAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;wBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;qBACzB;iBACF,EAAE;oBACD,KAAK;oBACL,QAAQ;iBACT,CAAC,CAAC,CAAC;aACL;YACD,MAAM,UAAU,EAAE,CAAC;QACrB,CAAC,CAAC;QAEF,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;QAE3B,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAuC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.composeEventResulting = void 0;
4
- exports.composeEventResulting = (ServiceContext, event) => (result) => ServiceContext.directTo(event._id, result);
5
- //# sourceMappingURL=composeEventResulting.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composeEventResulting.js","sourceRoot":"","sources":["../../../src/Services/core/composeEventResulting.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAG,CAAC,cAA+B,EAAE,KAAa,EAAE,EAAE,CACtF,CAAC,MAAW,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC"}
@@ -1,126 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.composeServiceContext = exports.isEventVersionDefined = void 0;
4
- const composeEventHandlers_1 = require("../../Events/composeEventHandlers");
5
- const composeStateApplier_1 = require("../../States/composeStateApplier");
6
- const composeStateHandlers_1 = require("../../States/composeStateHandlers");
7
- const Notifiers_1 = require("../../Notifiers");
8
- const LocalDirectStream_1 = require("../../Streams/LocalDirectStream");
9
- const MetadataRefiner_1 = require("./MetadataRefiner");
10
- const Core_1 = require("../../Exceptions/Core");
11
- const operateEventProcess_1 = require("./operateEventProcess");
12
- exports.isEventVersionDefined = (event) => (event._version && event._version > 0);
13
- exports.composeServiceContext = (definition) => ((Definition) => {
14
- const { EventStores, EventStream, Notifiers, ServiceConfigurate, ServiceIdentifier, scope, type, } = Definition;
15
- const EventHandlers = composeEventHandlers_1.composeEventHandlers(...definition.EventHandlers)(type);
16
- const StateHandlers = composeStateHandlers_1.composeStateHandlers(...definition.StateHandlers)(type);
17
- const StateApplier = composeStateApplier_1.composeStateApplier({ StateHandlers });
18
- return (options = {}) => {
19
- const isReplay = options.isReplay || false;
20
- const ServiceContext = {
21
- AggregateID: () => ServiceIdentifier.AggregateID(),
22
- EventID: () => ServiceIdentifier.EventID(),
23
- directTo: (ref, data) => EventStream.directTo(ref, data),
24
- dispatch: async (event) => {
25
- const versioning = ServiceConfigurate.versioning(event.name);
26
- let eventVersion = event._version;
27
- if (EventStores && !isReplay) {
28
- if (versioning === "none") {
29
- await EventStores.storeEvent(scope, event);
30
- }
31
- else {
32
- let version;
33
- try {
34
- version = (await EventStores.queryCurrentVersion(scope, type, event.aggregateID)).version;
35
- }
36
- catch (error) {
37
- throw Core_1.CurrentVersionQueryingErrorException(error, event.aggregateID, type, scope);
38
- }
39
- const currentVersion = version;
40
- if (!exports.isEventVersionDefined(event)) {
41
- if (versioning === "dynamic") {
42
- eventVersion = currentVersion + 1;
43
- event._version = eventVersion;
44
- }
45
- else {
46
- throw Core_1.NotAllowedDynamicVersionErrorException(event, scope);
47
- }
48
- }
49
- if (currentVersion + 1 === eventVersion) {
50
- try {
51
- await EventStores.storeEvent(scope, event);
52
- }
53
- catch (error) {
54
- throw Core_1.EventStoringErrorException(error, event, scope);
55
- }
56
- }
57
- else {
58
- throw Core_1.EventVersionConflictedConcurrentException(event, currentVersion, scope);
59
- }
60
- }
61
- }
62
- else {
63
- if (!exports.isEventVersionDefined(event)) {
64
- if (versioning === "dynamic") {
65
- eventVersion = -1;
66
- event._version = eventVersion;
67
- }
68
- else {
69
- throw Core_1.NotAllowedDynamicVersionErrorException(event, scope);
70
- }
71
- }
72
- }
73
- const metadata = MetadataRefiner_1.MetadataRefiner.dispatch({ isReplay });
74
- const processType = ServiceConfigurate.processType(event.name);
75
- if (processType === "synchronous") {
76
- const EventHandler = EventHandlers.resolve(event);
77
- if (EventHandler) {
78
- const resulting = (data) => LocalDirectStream_1.LocalDirectStream.directTo(event._id, data);
79
- await operateEventProcess_1.operateEventProcess(EventHandler, StateApplier, ServiceContext, resulting, Notifiers)(Definition, event, metadata);
80
- }
81
- }
82
- try {
83
- const on = { level: ServiceConfigurate.level(event.name), scope };
84
- await EventStream.publish({ event, metadata, on });
85
- Notifiers.emit(Notifiers_1.ServicesNotifyData.SERVICE_EVENT_DISPATCHED(type, {
86
- eventID: event._id,
87
- scope,
88
- type,
89
- name: event.name,
90
- aggregateID: event.aggregateID,
91
- _createdAt: event._createdAt,
92
- _createdBy: event._createdBy,
93
- _version: eventVersion,
94
- }, { event }));
95
- }
96
- catch (error) {
97
- throw Core_1.EventPublishingErrorException(error, event, scope);
98
- }
99
- },
100
- listenTo: async (ref, listener) => EventStream.listenTo(ref, listener),
101
- notify: (data) => Notifiers.emit({
102
- action: data.action,
103
- component: {
104
- name: definition.type,
105
- type: "Service",
106
- },
107
- fields: data.fields,
108
- level: data.level,
109
- message: data.message,
110
- obj: data.obj,
111
- }),
112
- queryCurrentVersion: (aggregateID) => {
113
- if (EventStores) {
114
- return EventStores.queryCurrentVersion(scope, type, aggregateID);
115
- }
116
- else {
117
- throw Core_1.NoEventStoresProvidedException();
118
- }
119
- },
120
- scope: () => scope,
121
- type: () => type,
122
- };
123
- return ServiceContext;
124
- };
125
- })(definition);
126
- //# sourceMappingURL=composeServiceContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composeServiceContext.js","sourceRoot":"","sources":["../../../src/Services/core/composeServiceContext.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.connectStream = void 0;
4
- const composeEventProcess_1 = require("../composeEventProcess");
5
- const composeEventReactions_1 = require("../composeEventReactions");
6
- const mapHandlersEvents_1 = require("./mapHandlersEvents");
7
- const mapReactionsEvents_1 = require("./mapReactionsEvents");
8
- exports.connectStream = async (definition) => (async (Definition) => {
9
- const EventProcess = composeEventProcess_1.composeEventProcess(Definition);
10
- const EventReactions = composeEventReactions_1.composeEventReactions(Definition);
11
- const StreamDefinition = Object.freeze({
12
- handlers: {
13
- events: mapHandlersEvents_1.mapHandlersEvents(Definition),
14
- processing: EventProcess,
15
- },
16
- reactions: {
17
- events: mapReactionsEvents_1.mapReactionsEvents(Definition),
18
- processes: EventReactions,
19
- },
20
- scope: Definition.scope,
21
- type: Definition.type,
22
- });
23
- Definition.EventStream.subscribe(StreamDefinition);
24
- await Definition.EventStream.connect();
25
- })(definition);
26
- //# sourceMappingURL=connectStream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectStream.js","sourceRoot":"","sources":["../../../../src/Services/core/connectStream/connectStream.ts"],"names":[],"mappings":";;;AACA,gEAA6D;AAC7D,oEAAiE;AACjE,2DAAwD;AACxD,6DAA0D;AAE7C,QAAA,aAAa,GAAG,KAAK,EAAE,UAA8B,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;IAC3F,MAAM,YAAY,GAAG,yCAAmB,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,6CAAqB,CAAC,UAAU,CAAC,CAAC;IAEzD,MAAM,gBAAgB,GAA6B,MAAM,CAAC,MAAM,CAAC;QAC/D,QAAQ,EAAE;YACR,MAAM,EAAE,qCAAiB,CAAC,UAAU,CAAC;YACrC,UAAU,EAAE,YAAY;SACzB;QACD,SAAS,EAAE;YACT,MAAM,EAAE,uCAAkB,CAAC,UAAU,CAAC;YACtC,SAAS,EAAE,cAAc;SAC1B;QACD,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,IAAI,EAAE,UAAU,CAAC,IAAI;KACtB,CAAC,CAAC;IAEH,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAEnD,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var connectStream_1 = require("./connectStream");
4
- Object.defineProperty(exports, "connectStream", { enumerable: true, get: function () { return connectStream_1.connectStream; } });
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Services/core/connectStream/index.ts"],"names":[],"mappings":";;AAAA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA"}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapHandlersEvents = void 0;
4
- exports.mapHandlersEvents = (definition) => definition.EventHandlers.reduce((result, { name }) => {
5
- const level = definition.ServiceConfigurate.level(name);
6
- result.push({ name, level });
7
- return result;
8
- }, []);
9
- //# sourceMappingURL=mapHandlersEvents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapHandlersEvents.js","sourceRoot":"","sources":["../../../../src/Services/core/connectStream/mapHandlersEvents.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAG,CAAC,UAA8B,EAAuD,EAAE,CACvH,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAE7B,OAAO,MAAM,CAAC;AAChB,CAAC,EAAE,EAAyD,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapReactionsEvents = void 0;
4
- exports.mapReactionsEvents = (definition) => definition.Reactions.map(({ scope, type, name }) => ({ scope, type, name }));
5
- //# sourceMappingURL=mapReactionsEvents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapReactionsEvents.js","sourceRoot":"","sources":["../../../../src/Services/core/connectStream/mapReactionsEvents.ts"],"names":[],"mappings":";;;AAEa,QAAA,kBAAkB,GAAG,CAAC,UAA8B,EAAoD,EAAE,CACrH,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC"}
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createCommandDispatcher = void 0;
4
- const composeCommandHandlers_1 = require("../../Commands/composeCommandHandlers");
5
- const DispatchResult_1 = require("../../Commands/DispatchResult");
6
- const Streams_1 = require("../../Streams");
7
- const composeServiceContext_1 = require("./composeServiceContext");
8
- exports.createCommandDispatcher = (definition) => ((Definition) => {
9
- const { ServiceConfigurate, type } = Definition;
10
- const CommandHandlers = composeCommandHandlers_1.composeCommandHandlers(...Definition.CommandHandlers)(type);
11
- const ServiceContextComposing = composeServiceContext_1.composeServiceContext(Definition);
12
- const CommandDispatcher = {
13
- dispatch: async (command, listening) => {
14
- const { name } = command;
15
- try {
16
- const CommandHandler = CommandHandlers.resolve(command);
17
- if (CommandHandler === undefined) {
18
- return DispatchResult_1.DispatchResult.unhandled(type, name);
19
- }
20
- else {
21
- const { invalidAttributes, isValid } = CommandHandler.validate(command);
22
- if (!isValid) {
23
- return DispatchResult_1.DispatchResult.invalid(invalidAttributes);
24
- }
25
- const ServiceContext = ServiceContextComposing({ isReplay: false });
26
- const event = CommandHandler.transform(command, ServiceContext);
27
- if (listening) {
28
- const processType = ServiceConfigurate.processType(event.name);
29
- if (processType === "synchronous") {
30
- Streams_1.LocalDirectStream.listenTo(event._id, listening);
31
- }
32
- else {
33
- ServiceContext.listenTo(event._id, listening);
34
- }
35
- }
36
- await ServiceContext.dispatch(event);
37
- return DispatchResult_1.DispatchResult.accept({
38
- _createdAt: event._createdAt,
39
- _id: event._id,
40
- _version: event._version,
41
- aggregateID: event.aggregateID,
42
- name: event.name,
43
- type: event.type,
44
- });
45
- }
46
- }
47
- catch (error) {
48
- return DispatchResult_1.DispatchResult.error(type, name, error);
49
- }
50
- },
51
- scope: () => Definition.scope,
52
- type: () => Definition.type,
53
- };
54
- return CommandDispatcher;
55
- })(definition);
56
- //# sourceMappingURL=createCommandDispatcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createCommandDispatcher.js","sourceRoot":"","sources":["../../../src/Services/core/createCommandDispatcher.ts"],"names":[],"mappings":";;;AACA,kFAA+E;AAC/E,kEAA+D;AAE/D,2CAAkD;AAClD,mEAAgE;AAEnD,QAAA,uBAAuB,GAAG,CAAC,UAA8B,EAAsB,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE;IAC7G,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAChD,MAAM,eAAe,GAAG,+CAAsB,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC;IACpF,MAAM,uBAAuB,GAAG,6CAAqB,CAAC,UAAU,CAAC,CAAC;IAElE,MAAM,iBAAiB,GAAuB;QAC5C,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;YACrC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;YAEzB,IAAI;gBACF,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAExD,IAAI,cAAc,KAAK,SAAS,EAAE;oBAEhC,OAAO,+BAAc,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;iBAC7C;qBAAM;oBAEL,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAExE,IAAI,CAAC,OAAO,EAAE;wBACZ,OAAO,+BAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;qBAClD;oBAED,MAAM,cAAc,GAAG,uBAAuB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;oBACpE,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;oBAGhE,IAAI,SAAS,EAAE;wBACb,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAE/D,IAAI,WAAW,KAAK,aAAa,EAAE;4BACjC,2BAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;yBAClD;6BAAM;4BACL,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;yBAC/C;qBACF;oBAED,MAAM,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAErC,OAAO,+BAAc,CAAC,MAAM,CAAC;wBAC3B,UAAU,EAAE,KAAK,CAAC,UAAU;wBAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;wBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;qBACjB,CAAC,CAAC;iBACJ;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,+BAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;aAChD;QACH,CAAC;QACD,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK;QAC7B,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI;KAC5B,CAAC;IAEF,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var connectStream_1 = require("./connectStream");
4
- Object.defineProperty(exports, "connectStream", { enumerable: true, get: function () { return connectStream_1.connectStream; } });
5
- var composeEventProcess_1 = require("./composeEventProcess");
6
- Object.defineProperty(exports, "composeEventProcess", { enumerable: true, get: function () { return composeEventProcess_1.composeEventProcess; } });
7
- var composeEventReactions_1 = require("./composeEventReactions");
8
- Object.defineProperty(exports, "composeEventReactions", { enumerable: true, get: function () { return composeEventReactions_1.composeEventReactions; } });
9
- var composeEventResulting_1 = require("./composeEventResulting");
10
- Object.defineProperty(exports, "composeEventResulting", { enumerable: true, get: function () { return composeEventResulting_1.composeEventResulting; } });
11
- var composeServiceContext_1 = require("./composeServiceContext");
12
- Object.defineProperty(exports, "composeServiceContext", { enumerable: true, get: function () { return composeServiceContext_1.composeServiceContext; } });
13
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Services/core/index.ts"],"names":[],"mappings":";;AAAA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAC5B,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA"}
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.operateEventProcess = void 0;
4
- const Notifiers_1 = require("../../Notifiers");
5
- const MetadataRefiner_1 = require("./MetadataRefiner");
6
- exports.operateEventProcess = (EventHandler, StateApplier, ServiceContext, resulting, Notifiers) => async (service, event, metadata) => {
7
- metadata = MetadataRefiner_1.MetadataRefiner.consume(metadata);
8
- try {
9
- const result = await EventHandler.process(event, metadata, StateApplier);
10
- if (EventHandler.processEffect) {
11
- await EventHandler.processEffect({ event, metadata, result }, resulting, ServiceContext);
12
- }
13
- Notifiers.emit(Notifiers_1.ServicesNotifyData.SERVICE_EVENT_HANDLED(event.type, {
14
- eventID: event._id,
15
- metadata,
16
- scope: service.scope,
17
- type: service.type,
18
- name: event.name,
19
- aggregateID: event.aggregateID,
20
- _createdAt: event._createdAt,
21
- _createdBy: event._createdBy,
22
- _version: event._version,
23
- }, {
24
- event,
25
- metadata,
26
- result,
27
- }));
28
- }
29
- catch (error) {
30
- Notifiers.error(Notifiers_1.ServicesNotifyData.SERVICE_COMMAND_ERROR(event.name, {
31
- scope: service.scope,
32
- type: service.type,
33
- name: event.name,
34
- }, {
35
- event,
36
- }), error);
37
- }
38
- };
39
- //# sourceMappingURL=operateEventProcess.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"operateEventProcess.js","sourceRoot":"","sources":["../../../src/Services/core/operateEventProcess.ts"],"names":[],"mappings":";;;AACA,+CAAqD;AACrD,uDAAoD;AAEvC,QAAA,mBAAmB,GAAG,CACjC,YAA2B,EAC3B,YAA2B,EAC3B,cAA+B,EAC/B,SAAyC,EACzC,SAAqB,EACrB,EAAE,CACF,KAAK,EAAE,OAAyC,EAAE,KAAa,EAAE,QAAqC,EAAE,EAAE;IACxG,QAAQ,GAAG,iCAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAEzE,IAAI,YAAY,CAAC,aAAa,EAAE;YAC9B,MAAM,YAAY,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;SAC1F;QAED,SAAS,CAAC,IAAI,CAAC,8BAAkB,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,EAAE;YAClE,OAAO,EAAE,KAAK,CAAC,GAAG;YAClB,QAAQ;YACR,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAElB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,EAAE;YACD,KAAK;YACL,QAAQ;YACR,MAAM;SACP,CAAC,CAAC,CAAC;KACL;IAAC,OAAO,KAAK,EAAE;QACd,SAAS,CAAC,KAAK,CAAC,8BAAkB,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,EAAE;YACnE,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAElB,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,EAAE;YACD,KAAK;SACN,CAAC,EAAE,KAAK,CAAC,CAAC;KACZ;AACH,CAAC,CAAC"}
@@ -1,111 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createService = void 0;
4
- const ServiceConfigurateFactory_1 = require("../Context/Factories/ServiceConfigurateFactory");
5
- const ServiceIdentifierFactory_1 = require("../Context/Factories/ServiceIdentifierFactory");
6
- const GlobalScope_1 = require("../GlobalScope");
7
- const UUIDIdentifier_1 = require("../Identifiers/UUIDIdentifier");
8
- const Notifiers_1 = require("../Notifiers");
9
- const Streams_1 = require("../Streams");
10
- const composeServiceContext_1 = require("./core/composeServiceContext");
11
- const connectStream_1 = require("./core/connectStream");
12
- const createCommandDispatcher_1 = require("./core/createCommandDispatcher");
13
- exports.createService = (service, container) => ((SERVICE, CONTAINER) => {
14
- const { CommandHandlers = [], EventHandlers = [], SFC = {}, StateHandlers = [], Reactions = [], EventStores = (CONTAINER && CONTAINER.EventStores), EventStream = (CONTAINER && CONTAINER.EventStream) || Streams_1.LocalInMemoryEventStream, Identifier = (CONTAINER && CONTAINER.Identifier) || UUIDIdentifier_1.UUIDIdentifier, configs = {}, scope = (CONTAINER && CONTAINER.scope) || GlobalScope_1.GlobalScope, type, } = SERVICE;
15
- const ContainerNotifiers = (CONTAINER && CONTAINER.Notifiers) || [];
16
- const ServiceNotifiers = SERVICE.Notifiers || [];
17
- const NOTIFIERS = Notifiers_1.composeNotifiers(...ServiceNotifiers, ...ContainerNotifiers);
18
- let definition = {
19
- CommandHandlers,
20
- EventHandlers,
21
- EventStores,
22
- EventStream,
23
- Notifiers: NOTIFIERS,
24
- Reactions,
25
- ServiceConfigurate: ServiceConfigurateFactory_1.ServiceConfigurateFactory.create(configs),
26
- ServiceIdentifier: ServiceIdentifierFactory_1.ServiceIdentifierFactory.create(Identifier, type),
27
- StateHandlers,
28
- configs,
29
- scope,
30
- type,
31
- };
32
- definition = Object.keys(SFC).reduce((result, key) => {
33
- const { Configs, CommandHandler, EventHandler, StateHandler } = SFC[key];
34
- if (definition.configs.events) {
35
- definition.configs.events[EventHandler.name] = Configs;
36
- }
37
- else {
38
- definition.configs.events = {
39
- [EventHandler.name]: Configs,
40
- };
41
- }
42
- definition.CommandHandlers.push(CommandHandler);
43
- definition.EventHandlers.push(EventHandler);
44
- definition.StateHandlers.push(StateHandler);
45
- return result;
46
- }, definition);
47
- const CommandDispatcher = createCommandDispatcher_1.createCommandDispatcher(definition);
48
- const Service = {
49
- connect: async () => {
50
- connectStream_1.connectStream(definition);
51
- NOTIFIERS.emit(Notifiers_1.ServicesNotifyData.SERVICE_CONNECTED(SERVICE.type));
52
- },
53
- context: (options) => composeServiceContext_1.composeServiceContext(definition)(options),
54
- dispatch: async (command, listening) => {
55
- NOTIFIERS.emit(Notifiers_1.ServicesNotifyData.SERVICE_COMMAND_DISPATCHING(SERVICE.type, {
56
- scope: SERVICE.scope,
57
- type: SERVICE.type,
58
- name: command.name,
59
- }, {
60
- command,
61
- }));
62
- const result = await CommandDispatcher.dispatch(command, listening);
63
- if (!result.accept) {
64
- if (result.status === "error") {
65
- NOTIFIERS.error(Notifiers_1.ServicesNotifyData.SERVICE_COMMAND_ERROR(SERVICE.type, {
66
- scope: SERVICE.scope,
67
- type: SERVICE.type,
68
- name: command.name,
69
- }, {
70
- command,
71
- }), result.error);
72
- }
73
- if (result.status === "invalid") {
74
- NOTIFIERS.emit(Notifiers_1.ServicesNotifyData.SERVICE_COMMAND_INVALID(SERVICE.type, {
75
- scope: SERVICE.scope,
76
- type: SERVICE.type,
77
- name: command.name,
78
- invalidAttributes: result.invalidAttributes,
79
- }, {
80
- command,
81
- }));
82
- }
83
- if (result.status === "unhandled") {
84
- NOTIFIERS.emit(Notifiers_1.ServicesNotifyData.SERVICE_COMMAND_UNHANDLED(SERVICE.type, {
85
- scope: SERVICE.scope,
86
- type: SERVICE.type,
87
- name: command.name,
88
- }, {
89
- command,
90
- }));
91
- }
92
- }
93
- return result;
94
- },
95
- scope: () => scope,
96
- type: () => type,
97
- };
98
- Object.freeze(Service);
99
- NOTIFIERS.emit(Notifiers_1.ServicesNotifyData.SERVICE_CREATED(type, {
100
- scope: SERVICE.scope,
101
- type: SERVICE.type,
102
- configs: SERVICE.configs,
103
- defined: {
104
- EventStores: (SERVICE.EventStores && true) || false,
105
- EventStream: (SERVICE.EventStream && true) || false,
106
- Identifier: (SERVICE.Identifier && true) || false,
107
- },
108
- }));
109
- return Service;
110
- })(service, container);
111
- //# sourceMappingURL=createService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createService.js","sourceRoot":"","sources":["../../src/Services/createService.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var createService_1 = require("./createService");
4
- Object.defineProperty(exports, "createService", { enumerable: true, get: function () { return createService_1.createService; } });
5
- //# sourceMappingURL=index.js.map