@bett3r-dev/pv3 1.0.0 → 1.1.7

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 (648) hide show
  1. package/CHANGELOG.md +329 -0
  2. package/build/adapters/cache/memory/index.d.ts.map +1 -1
  3. package/build/adapters/cache/memory/index.js +93 -20
  4. package/build/adapters/cache/memory/index.js.map +1 -1
  5. package/build/adapters/cache/memory/index.test.d.ts +2 -0
  6. package/build/adapters/cache/memory/index.test.d.ts.map +1 -0
  7. package/build/adapters/cache/memory/index.test.js +98 -0
  8. package/build/adapters/cache/memory/index.test.js.map +1 -0
  9. package/build/adapters/configuration/dotEnv.d.ts.map +1 -1
  10. package/build/adapters/configuration/dotEnv.js.map +1 -1
  11. package/build/adapters/database/memory/index.d.ts +5 -1
  12. package/build/adapters/database/memory/index.d.ts.map +1 -1
  13. package/build/adapters/database/memory/index.js +336 -44
  14. package/build/adapters/database/memory/index.js.map +1 -1
  15. package/build/adapters/database/memory/index.test.d.ts +2 -0
  16. package/build/adapters/database/memory/index.test.d.ts.map +1 -0
  17. package/build/adapters/database/memory/index.test.js +167 -0
  18. package/build/adapters/database/memory/index.test.js.map +1 -0
  19. package/build/adapters/database/memory/pagingCursorZero.test.d.ts +2 -0
  20. package/build/adapters/database/memory/pagingCursorZero.test.d.ts.map +1 -0
  21. package/build/adapters/database/memory/pagingCursorZero.test.js +60 -0
  22. package/build/adapters/database/memory/pagingCursorZero.test.js.map +1 -0
  23. package/build/adapters/database/memory/pagingVanishedCursor.test.d.ts +2 -0
  24. package/build/adapters/database/memory/pagingVanishedCursor.test.d.ts.map +1 -0
  25. package/build/adapters/database/memory/pagingVanishedCursor.test.js +72 -0
  26. package/build/adapters/database/memory/pagingVanishedCursor.test.js.map +1 -0
  27. package/build/adapters/endpoints/addAuthUser/index.d.ts +6 -4
  28. package/build/adapters/endpoints/addAuthUser/index.d.ts.map +1 -1
  29. package/build/adapters/endpoints/addAuthUser/index.js +12 -31
  30. package/build/adapters/endpoints/addAuthUser/index.js.map +1 -1
  31. package/build/adapters/endpoints/addDevAuthUser/index.d.ts +32 -0
  32. package/build/adapters/endpoints/addDevAuthUser/index.d.ts.map +1 -0
  33. package/build/adapters/endpoints/addDevAuthUser/index.js +39 -0
  34. package/build/adapters/endpoints/addDevAuthUser/index.js.map +1 -0
  35. package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.d.ts +2 -0
  36. package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.d.ts.map +1 -0
  37. package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.js +97 -0
  38. package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.js.map +1 -0
  39. package/build/adapters/endpoints/asyncLocalStorage/index.d.ts +22 -0
  40. package/build/adapters/endpoints/asyncLocalStorage/index.d.ts.map +1 -0
  41. package/build/adapters/endpoints/asyncLocalStorage/index.js +62 -0
  42. package/build/adapters/endpoints/asyncLocalStorage/index.js.map +1 -0
  43. package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.d.ts +2 -0
  44. package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.d.ts.map +1 -0
  45. package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.js +98 -0
  46. package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.js.map +1 -0
  47. package/build/adapters/endpoints/endpointValidation/index.d.ts +2 -2
  48. package/build/adapters/endpoints/endpointValidation/index.d.ts.map +1 -1
  49. package/build/adapters/endpoints/endpointValidation/index.js +19 -9
  50. package/build/adapters/endpoints/endpointValidation/index.js.map +1 -1
  51. package/build/adapters/endpoints/genericMiddleware/index.d.ts +23 -0
  52. package/build/adapters/endpoints/genericMiddleware/index.d.ts.map +1 -0
  53. package/build/adapters/endpoints/genericMiddleware/index.js +30 -0
  54. package/build/adapters/endpoints/genericMiddleware/index.js.map +1 -0
  55. package/build/adapters/endpoints/httpMethodOverride/index.d.ts +8 -0
  56. package/build/adapters/endpoints/httpMethodOverride/index.d.ts.map +1 -0
  57. package/build/adapters/endpoints/httpMethodOverride/index.js +44 -0
  58. package/build/adapters/endpoints/httpMethodOverride/index.js.map +1 -0
  59. package/build/adapters/endpoints/index.d.ts +5 -0
  60. package/build/adapters/endpoints/index.d.ts.map +1 -1
  61. package/build/adapters/endpoints/index.js +5 -1
  62. package/build/adapters/endpoints/index.js.map +1 -1
  63. package/build/adapters/endpoints/localAuthorization/index.d.ts +1 -0
  64. package/build/adapters/endpoints/localAuthorization/index.js +2 -0
  65. package/build/adapters/endpoints/localAuthorization/index.js.map +1 -1
  66. package/build/adapters/endpoints/mapQueryFromHeaders/index.d.ts +8 -0
  67. package/build/adapters/endpoints/mapQueryFromHeaders/index.d.ts.map +1 -0
  68. package/build/adapters/endpoints/mapQueryFromHeaders/index.js +36 -0
  69. package/build/adapters/endpoints/mapQueryFromHeaders/index.js.map +1 -0
  70. package/build/adapters/endpoints/tcpConsumer/index.d.ts.map +1 -1
  71. package/build/adapters/endpoints/tcpConsumer/index.js +8 -7
  72. package/build/adapters/endpoints/tcpConsumer/index.js.map +1 -1
  73. package/build/adapters/endpoints/userSession/__tests__/userSession.test.d.ts +2 -0
  74. package/build/adapters/endpoints/userSession/__tests__/userSession.test.d.ts.map +1 -0
  75. package/build/adapters/endpoints/userSession/__tests__/userSession.test.js +175 -0
  76. package/build/adapters/endpoints/userSession/__tests__/userSession.test.js.map +1 -0
  77. package/build/adapters/endpoints/userSession/index.d.ts +2 -2
  78. package/build/adapters/endpoints/userSession/index.d.ts.map +1 -1
  79. package/build/adapters/endpoints/userSession/index.js +36 -2
  80. package/build/adapters/endpoints/userSession/index.js.map +1 -1
  81. package/build/adapters/eventstore/database.d.ts.map +1 -1
  82. package/build/adapters/eventstore/database.js +261 -58
  83. package/build/adapters/eventstore/database.js.map +1 -1
  84. package/build/adapters/eventstore/database.test.d.ts +2 -0
  85. package/build/adapters/eventstore/database.test.d.ts.map +1 -0
  86. package/build/adapters/eventstore/database.test.js +123 -0
  87. package/build/adapters/eventstore/database.test.js.map +1 -0
  88. package/build/adapters/infrastructure/local/index.d.ts +2 -2
  89. package/build/adapters/infrastructure/local/index.d.ts.map +1 -1
  90. package/build/adapters/infrastructure/local/index.js +3 -3
  91. package/build/adapters/infrastructure/local/index.js.map +1 -1
  92. package/build/adapters/logger/__tests__/json.test.d.ts +2 -0
  93. package/build/adapters/logger/__tests__/json.test.d.ts.map +1 -0
  94. package/build/adapters/logger/__tests__/json.test.js +125 -0
  95. package/build/adapters/logger/__tests__/json.test.js.map +1 -0
  96. package/build/adapters/logger/console.d.ts.map +1 -1
  97. package/build/adapters/logger/console.js +4 -2
  98. package/build/adapters/logger/console.js.map +1 -1
  99. package/build/adapters/logger/http.d.ts +3 -0
  100. package/build/adapters/logger/http.d.ts.map +1 -0
  101. package/build/adapters/logger/http.js +49 -0
  102. package/build/adapters/logger/http.js.map +1 -0
  103. package/build/adapters/logger/index.d.ts +3 -0
  104. package/build/adapters/logger/index.d.ts.map +1 -1
  105. package/build/adapters/logger/index.js +3 -0
  106. package/build/adapters/logger/index.js.map +1 -1
  107. package/build/adapters/logger/json.d.ts +3 -0
  108. package/build/adapters/logger/json.d.ts.map +1 -0
  109. package/build/adapters/logger/json.js +41 -0
  110. package/build/adapters/logger/json.js.map +1 -0
  111. package/build/adapters/logger/stdout.d.ts +3 -0
  112. package/build/adapters/logger/stdout.d.ts.map +1 -0
  113. package/build/adapters/logger/stdout.js +52 -0
  114. package/build/adapters/logger/stdout.js.map +1 -0
  115. package/build/index.d.ts +3 -1
  116. package/build/index.d.ts.map +1 -1
  117. package/build/index.js +3 -1
  118. package/build/index.js.map +1 -1
  119. package/build/libraries/deployment-units/computeMDUs.d.ts +11 -0
  120. package/build/libraries/deployment-units/computeMDUs.d.ts.map +1 -0
  121. package/build/libraries/deployment-units/computeMDUs.js +695 -0
  122. package/build/libraries/deployment-units/computeMDUs.js.map +1 -0
  123. package/build/libraries/deployment-units/computeMDUs.test.d.ts +2 -0
  124. package/build/libraries/deployment-units/computeMDUs.test.d.ts.map +1 -0
  125. package/build/libraries/deployment-units/computeMDUs.test.js +996 -0
  126. package/build/libraries/deployment-units/computeMDUs.test.js.map +1 -0
  127. package/build/libraries/deployment-units/index.d.ts +6 -0
  128. package/build/libraries/deployment-units/index.d.ts.map +1 -0
  129. package/build/libraries/deployment-units/index.js +8 -0
  130. package/build/libraries/deployment-units/index.js.map +1 -0
  131. package/build/libraries/deployment-units/manifestWriter.d.ts +11 -0
  132. package/build/libraries/deployment-units/manifestWriter.d.ts.map +1 -0
  133. package/build/libraries/deployment-units/manifestWriter.js +28 -0
  134. package/build/libraries/deployment-units/manifestWriter.js.map +1 -0
  135. package/build/libraries/deployment-units/types.d.ts +43 -0
  136. package/build/libraries/deployment-units/types.d.ts.map +1 -0
  137. package/build/libraries/deployment-units/types.js +3 -0
  138. package/build/libraries/deployment-units/types.js.map +1 -0
  139. package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.d.ts +2 -0
  140. package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.d.ts.map +1 -0
  141. package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.js +17 -0
  142. package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.js.map +1 -0
  143. package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.d.ts +2 -0
  144. package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.d.ts.map +1 -0
  145. package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.js +13 -0
  146. package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.js.map +1 -0
  147. package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.d.ts +2 -0
  148. package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.d.ts.map +1 -0
  149. package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.js +12 -0
  150. package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.js.map +1 -0
  151. package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.d.ts +2 -0
  152. package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.d.ts.map +1 -0
  153. package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.js +21 -0
  154. package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.js.map +1 -0
  155. package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.d.ts +2 -0
  156. package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.d.ts.map +1 -0
  157. package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.js +16 -0
  158. package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.js.map +1 -0
  159. package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.d.ts +2 -0
  160. package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.d.ts.map +1 -0
  161. package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.js +14 -0
  162. package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.js.map +1 -0
  163. package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.d.ts +2 -0
  164. package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.d.ts.map +1 -0
  165. package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.js +88 -0
  166. package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.js.map +1 -0
  167. package/build/libraries/eventsourcing/__tests__/queryVisibility.test.d.ts +2 -0
  168. package/build/libraries/eventsourcing/__tests__/queryVisibility.test.d.ts.map +1 -0
  169. package/build/libraries/eventsourcing/__tests__/queryVisibility.test.js +82 -0
  170. package/build/libraries/eventsourcing/__tests__/queryVisibility.test.js.map +1 -0
  171. package/build/libraries/eventsourcing/commandHandlers/index.d.ts +40 -0
  172. package/build/libraries/eventsourcing/commandHandlers/index.d.ts.map +1 -0
  173. package/build/libraries/eventsourcing/commandHandlers/index.js +1065 -0
  174. package/build/libraries/eventsourcing/commandHandlers/index.js.map +1 -0
  175. package/build/libraries/eventsourcing/commandTemplates/index.d.ts.map +1 -0
  176. package/build/libraries/eventsourcing/commandTemplates/index.js.map +1 -0
  177. package/build/libraries/eventsourcing/commandTemplates/multiStream.d.ts +7 -0
  178. package/build/libraries/eventsourcing/commandTemplates/multiStream.d.ts.map +1 -0
  179. package/build/libraries/eventsourcing/commandTemplates/multiStream.js +116 -0
  180. package/build/libraries/eventsourcing/commandTemplates/multiStream.js.map +1 -0
  181. package/build/libraries/eventsourcing/commandTemplates/snapshot.d.ts +108 -0
  182. package/build/libraries/eventsourcing/commandTemplates/snapshot.d.ts.map +1 -0
  183. package/build/libraries/eventsourcing/commandTemplates/snapshot.js +127 -0
  184. package/build/libraries/eventsourcing/commandTemplates/snapshot.js.map +1 -0
  185. package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.d.ts +2 -0
  186. package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.d.ts.map +1 -0
  187. package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.js +77 -0
  188. package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.js.map +1 -0
  189. package/build/libraries/eventsourcing/eventHandlers/index.d.ts +52 -0
  190. package/build/libraries/eventsourcing/eventHandlers/index.d.ts.map +1 -0
  191. package/build/libraries/eventsourcing/eventHandlers/index.js +474 -0
  192. package/build/libraries/eventsourcing/eventHandlers/index.js.map +1 -0
  193. package/build/libraries/eventsourcing/executionContext.d.ts +50 -0
  194. package/build/libraries/eventsourcing/executionContext.d.ts.map +1 -0
  195. package/build/libraries/eventsourcing/executionContext.js +10 -0
  196. package/build/libraries/eventsourcing/executionContext.js.map +1 -0
  197. package/build/libraries/eventsourcing/idempotencyChecks/index.d.ts +5 -0
  198. package/build/libraries/eventsourcing/idempotencyChecks/index.d.ts.map +1 -0
  199. package/build/libraries/eventsourcing/idempotencyChecks/index.js +26 -0
  200. package/build/libraries/eventsourcing/idempotencyChecks/index.js.map +1 -0
  201. package/build/libraries/eventsourcing/index.d.ts +14 -0
  202. package/build/libraries/eventsourcing/index.d.ts.map +1 -0
  203. package/build/{ports → libraries}/eventsourcing/index.js +50 -15
  204. package/build/{ports → libraries}/eventsourcing/index.js.map +1 -1
  205. package/build/libraries/eventsourcing/invariants/combinators.d.ts +4 -0
  206. package/build/libraries/eventsourcing/invariants/combinators.d.ts.map +1 -0
  207. package/build/{ports → libraries}/eventsourcing/invariants/combinators.js +3 -3
  208. package/build/libraries/eventsourcing/invariants/combinators.js.map +1 -0
  209. package/build/libraries/eventsourcing/invariants/common.d.ts +15 -0
  210. package/build/libraries/eventsourcing/invariants/common.d.ts.map +1 -0
  211. package/build/libraries/eventsourcing/invariants/common.js +27 -0
  212. package/build/libraries/eventsourcing/invariants/common.js.map +1 -0
  213. package/build/libraries/eventsourcing/invariants/comparisons.d.ts +16 -0
  214. package/build/libraries/eventsourcing/invariants/comparisons.d.ts.map +1 -0
  215. package/build/libraries/eventsourcing/invariants/comparisons.js +35 -0
  216. package/build/libraries/eventsourcing/invariants/comparisons.js.map +1 -0
  217. package/build/libraries/eventsourcing/invariants/comparisons.test.d.ts +2 -0
  218. package/build/libraries/eventsourcing/invariants/comparisons.test.d.ts.map +1 -0
  219. package/build/libraries/eventsourcing/invariants/comparisons.test.js +25 -0
  220. package/build/libraries/eventsourcing/invariants/comparisons.test.js.map +1 -0
  221. package/build/libraries/eventsourcing/invariants/index.d.ts +17 -0
  222. package/build/libraries/eventsourcing/invariants/index.d.ts.map +1 -0
  223. package/build/libraries/eventsourcing/invariants/index.js +47 -0
  224. package/build/libraries/eventsourcing/invariants/index.js.map +1 -0
  225. package/build/libraries/eventsourcing/invariants/stateExistance.d.ts +4 -0
  226. package/build/libraries/eventsourcing/invariants/stateExistance.d.ts.map +1 -0
  227. package/build/libraries/eventsourcing/invariants/stateExistance.js +22 -0
  228. package/build/libraries/eventsourcing/invariants/stateExistance.js.map +1 -0
  229. package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.d.ts +2 -0
  230. package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.d.ts.map +1 -0
  231. package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.js +563 -0
  232. package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.js.map +1 -0
  233. package/build/libraries/eventsourcing/subscriptions/index.d.ts.map +1 -0
  234. package/build/libraries/eventsourcing/subscriptions/index.js.map +1 -0
  235. package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.d.ts +5 -0
  236. package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.d.ts.map +1 -0
  237. package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.js +198 -0
  238. package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.js.map +1 -0
  239. package/build/libraries/eventsourcing/utils/aggregateBuilder.d.ts +5 -0
  240. package/build/libraries/eventsourcing/utils/aggregateBuilder.d.ts.map +1 -0
  241. package/build/{ports → libraries}/eventsourcing/utils/aggregateBuilder.js +17 -3
  242. package/build/libraries/eventsourcing/utils/aggregateBuilder.js.map +1 -0
  243. package/build/libraries/eventsourcing/utils/commandBuilder.d.ts +3 -0
  244. package/build/libraries/eventsourcing/utils/commandBuilder.d.ts.map +1 -0
  245. package/build/{ports → libraries}/eventsourcing/utils/commandBuilder.js +44 -1
  246. package/build/libraries/eventsourcing/utils/commandBuilder.js.map +1 -0
  247. package/build/{ports → libraries}/eventsourcing/utils/eventHandlerBuilder.d.ts +2 -2
  248. package/build/libraries/eventsourcing/utils/eventHandlerBuilder.d.ts.map +1 -0
  249. package/build/libraries/eventsourcing/utils/eventHandlerBuilder.js.map +1 -0
  250. package/build/libraries/eventsourcing/utils/externalSystemBuilder.d.ts +5 -0
  251. package/build/libraries/eventsourcing/utils/externalSystemBuilder.d.ts.map +1 -0
  252. package/build/libraries/eventsourcing/utils/externalSystemBuilder.js +43 -0
  253. package/build/libraries/eventsourcing/utils/externalSystemBuilder.js.map +1 -0
  254. package/build/libraries/eventsourcing/utils/index.d.ts +22 -0
  255. package/build/libraries/eventsourcing/utils/index.d.ts.map +1 -0
  256. package/build/libraries/eventsourcing/utils/index.js +88 -0
  257. package/build/libraries/eventsourcing/utils/index.js.map +1 -0
  258. package/build/libraries/eventsourcing/utils/policyBuilder.d.ts +4 -0
  259. package/build/libraries/eventsourcing/utils/policyBuilder.d.ts.map +1 -0
  260. package/build/libraries/eventsourcing/utils/policyBuilder.js +53 -0
  261. package/build/libraries/eventsourcing/utils/policyBuilder.js.map +1 -0
  262. package/build/libraries/eventsourcing/utils/readmodelBuilder.d.ts +6 -0
  263. package/build/libraries/eventsourcing/utils/readmodelBuilder.d.ts.map +1 -0
  264. package/build/libraries/eventsourcing/utils/readmodelBuilder.js +68 -0
  265. package/build/libraries/eventsourcing/utils/readmodelBuilder.js.map +1 -0
  266. package/build/libraries/localOutbox/index.d.ts +6 -0
  267. package/build/libraries/localOutbox/index.d.ts.map +1 -0
  268. package/build/libraries/localOutbox/index.js +72 -0
  269. package/build/libraries/localOutbox/index.js.map +1 -0
  270. package/build/libraries/modulePath.d.ts +14 -0
  271. package/build/libraries/modulePath.d.ts.map +1 -0
  272. package/build/libraries/modulePath.js +21 -0
  273. package/build/libraries/modulePath.js.map +1 -0
  274. package/build/libraries/modules/fs.d.ts +2 -4
  275. package/build/libraries/modules/fs.d.ts.map +1 -1
  276. package/build/libraries/modules/fs.js +21 -84
  277. package/build/libraries/modules/fs.js.map +1 -1
  278. package/build/libraries/modules/index.d.ts +2 -0
  279. package/build/libraries/modules/index.d.ts.map +1 -1
  280. package/build/libraries/modules/index.js +2 -0
  281. package/build/libraries/modules/index.js.map +1 -1
  282. package/build/libraries/modules/scopedPortsView.d.ts +42 -0
  283. package/build/libraries/modules/scopedPortsView.d.ts.map +1 -0
  284. package/build/libraries/modules/scopedPortsView.js +55 -0
  285. package/build/libraries/modules/scopedPortsView.js.map +1 -0
  286. package/build/libraries/modules/scopedPortsView.test.d.ts +10 -0
  287. package/build/libraries/modules/scopedPortsView.test.d.ts.map +1 -0
  288. package/build/libraries/modules/scopedPortsView.test.js +103 -0
  289. package/build/libraries/modules/scopedPortsView.test.js.map +1 -0
  290. package/build/libraries/modules/selectiveLoader.d.ts +21 -0
  291. package/build/libraries/modules/selectiveLoader.d.ts.map +1 -0
  292. package/build/libraries/modules/selectiveLoader.js +164 -0
  293. package/build/libraries/modules/selectiveLoader.js.map +1 -0
  294. package/build/libraries/modules/selectiveLoader.test.d.ts +2 -0
  295. package/build/libraries/modules/selectiveLoader.test.d.ts.map +1 -0
  296. package/build/libraries/modules/selectiveLoader.test.js +471 -0
  297. package/build/libraries/modules/selectiveLoader.test.js.map +1 -0
  298. package/build/libraries/openApi/pruneUnusedRef.d.ts.map +1 -1
  299. package/build/libraries/openApi/pruneUnusedRef.js.map +1 -1
  300. package/build/libraries/tcp/index.d.ts +0 -1
  301. package/build/libraries/tcp/index.d.ts.map +1 -1
  302. package/build/libraries/tcp/index.js +32 -9
  303. package/build/libraries/tcp/index.js.map +1 -1
  304. package/build/libraries/tcp/types.d.ts +0 -1
  305. package/build/libraries/tcp/types.d.ts.map +1 -1
  306. package/build/libraries/validation/__tests__/readmodelQuerySchema.test.d.ts +2 -0
  307. package/build/libraries/validation/__tests__/readmodelQuerySchema.test.d.ts.map +1 -0
  308. package/build/libraries/validation/__tests__/readmodelQuerySchema.test.js +100 -0
  309. package/build/libraries/validation/__tests__/readmodelQuerySchema.test.js.map +1 -0
  310. package/build/libraries/validation/__tests__/validation.test.js +17 -7
  311. package/build/libraries/validation/__tests__/validation.test.js.map +1 -1
  312. package/build/libraries/validation/index.d.ts +3 -3
  313. package/build/libraries/validation/index.d.ts.map +1 -1
  314. package/build/libraries/validation/index.js +49 -15
  315. package/build/libraries/validation/index.js.map +1 -1
  316. package/build/ports/authentication/index.js.map +1 -1
  317. package/build/ports/authentication/index.test.d.ts +2 -0
  318. package/build/ports/authentication/index.test.d.ts.map +1 -0
  319. package/build/ports/authentication/index.test.js +38 -0
  320. package/build/ports/authentication/index.test.js.map +1 -0
  321. package/build/ports/base.d.ts.map +1 -1
  322. package/build/ports/base.js +39 -5
  323. package/build/ports/base.js.map +1 -1
  324. package/build/ports/base.test.d.ts +2 -0
  325. package/build/ports/base.test.d.ts.map +1 -0
  326. package/build/ports/base.test.js +92 -0
  327. package/build/ports/base.test.js.map +1 -0
  328. package/build/ports/cache/index.js.map +1 -1
  329. package/build/ports/cache/index.test.d.ts +2 -0
  330. package/build/ports/cache/index.test.d.ts.map +1 -0
  331. package/build/ports/cache/index.test.js +43 -0
  332. package/build/ports/cache/index.test.js.map +1 -0
  333. package/build/ports/configuration/__tests__/cliArgs.test.d.ts +2 -0
  334. package/build/ports/configuration/__tests__/cliArgs.test.d.ts.map +1 -0
  335. package/build/ports/configuration/__tests__/cliArgs.test.js +158 -0
  336. package/build/ports/configuration/__tests__/cliArgs.test.js.map +1 -0
  337. package/build/ports/configuration/__tests__/configurationPortEmitter.test.d.ts +2 -0
  338. package/build/ports/configuration/__tests__/configurationPortEmitter.test.d.ts.map +1 -0
  339. package/build/ports/configuration/__tests__/configurationPortEmitter.test.js +63 -0
  340. package/build/ports/configuration/__tests__/configurationPortEmitter.test.js.map +1 -0
  341. package/build/ports/configuration/__tests__/getArgsSync.test.d.ts +2 -0
  342. package/build/ports/configuration/__tests__/getArgsSync.test.d.ts.map +1 -0
  343. package/build/ports/configuration/__tests__/getArgsSync.test.js +85 -0
  344. package/build/ports/configuration/__tests__/getArgsSync.test.js.map +1 -0
  345. package/build/ports/configuration/args.d.ts +50 -43
  346. package/build/ports/configuration/args.d.ts.map +1 -1
  347. package/build/ports/configuration/args.js +76 -13
  348. package/build/ports/configuration/args.js.map +1 -1
  349. package/build/ports/configuration/common.js +1 -2
  350. package/build/ports/configuration/common.js.map +1 -1
  351. package/build/ports/configuration/index.d.ts +1 -1
  352. package/build/ports/configuration/index.d.ts.map +1 -1
  353. package/build/ports/configuration/index.js +85 -17
  354. package/build/ports/configuration/index.js.map +1 -1
  355. package/build/ports/configuration/localConfig.d.ts.map +1 -1
  356. package/build/ports/configuration/localConfig.js +46 -27
  357. package/build/ports/configuration/localConfig.js.map +1 -1
  358. package/build/ports/database/index.d.ts +1 -2
  359. package/build/ports/database/index.d.ts.map +1 -1
  360. package/build/ports/database/index.js +23 -17
  361. package/build/ports/database/index.js.map +1 -1
  362. package/build/ports/database/index.test.d.ts +2 -0
  363. package/build/ports/database/index.test.d.ts.map +1 -0
  364. package/build/ports/database/index.test.js +43 -0
  365. package/build/ports/database/index.test.js.map +1 -0
  366. package/build/ports/endpoints/__tests__/declarationSite.test.d.ts +2 -0
  367. package/build/ports/endpoints/__tests__/declarationSite.test.d.ts.map +1 -0
  368. package/build/ports/endpoints/__tests__/declarationSite.test.js +165 -0
  369. package/build/ports/endpoints/__tests__/declarationSite.test.js.map +1 -0
  370. package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.d.ts +9 -0
  371. package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.d.ts.map +1 -0
  372. package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.js +20 -0
  373. package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.js.map +1 -0
  374. package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.d.ts +10 -0
  375. package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.d.ts.map +1 -0
  376. package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.js +21 -0
  377. package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.js.map +1 -0
  378. package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.d.ts +15 -0
  379. package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.d.ts.map +1 -0
  380. package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.js +46 -0
  381. package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.js.map +1 -0
  382. package/build/ports/endpoints/__tests__/manifestEndpoints.test.d.ts +2 -0
  383. package/build/ports/endpoints/__tests__/manifestEndpoints.test.d.ts.map +1 -0
  384. package/build/ports/endpoints/__tests__/manifestEndpoints.test.js +117 -0
  385. package/build/ports/endpoints/__tests__/manifestEndpoints.test.js.map +1 -0
  386. package/build/ports/endpoints/declarationSite.d.ts +63 -0
  387. package/build/ports/endpoints/declarationSite.d.ts.map +1 -0
  388. package/build/ports/endpoints/declarationSite.js +126 -0
  389. package/build/ports/endpoints/declarationSite.js.map +1 -0
  390. package/build/ports/endpoints/health.d.ts +26 -0
  391. package/build/ports/endpoints/health.d.ts.map +1 -0
  392. package/build/ports/endpoints/health.js +96 -0
  393. package/build/ports/endpoints/health.js.map +1 -0
  394. package/build/ports/endpoints/index.d.ts +43 -7
  395. package/build/ports/endpoints/index.d.ts.map +1 -1
  396. package/build/ports/endpoints/index.js +317 -67
  397. package/build/ports/endpoints/index.js.map +1 -1
  398. package/build/ports/endpoints/openApi.d.ts +3 -2
  399. package/build/ports/endpoints/openApi.d.ts.map +1 -1
  400. package/build/ports/endpoints/openApi.js +184 -55
  401. package/build/ports/endpoints/openApi.js.map +1 -1
  402. package/build/ports/endpoints/utils.d.ts.map +1 -1
  403. package/build/ports/endpoints/utils.js.map +1 -1
  404. package/build/ports/eventstore/index.d.ts.map +1 -1
  405. package/build/ports/eventstore/index.js +37 -5
  406. package/build/ports/eventstore/index.js.map +1 -1
  407. package/build/ports/eventstore/index.test.d.ts +2 -0
  408. package/build/ports/eventstore/index.test.d.ts.map +1 -0
  409. package/build/ports/eventstore/index.test.js +68 -0
  410. package/build/ports/eventstore/index.test.js.map +1 -0
  411. package/build/ports/infrastructure/index.d.ts +61 -23
  412. package/build/ports/infrastructure/index.d.ts.map +1 -1
  413. package/build/ports/infrastructure/index.js +187 -37
  414. package/build/ports/infrastructure/index.js.map +1 -1
  415. package/build/ports/infrastructure/index.test.d.ts +2 -0
  416. package/build/ports/infrastructure/index.test.d.ts.map +1 -0
  417. package/build/ports/infrastructure/index.test.js +228 -0
  418. package/build/ports/infrastructure/index.test.js.map +1 -0
  419. package/build/ports/infrastructure/utils.d.ts +2 -1
  420. package/build/ports/infrastructure/utils.d.ts.map +1 -1
  421. package/build/ports/infrastructure/utils.js +48 -22
  422. package/build/ports/infrastructure/utils.js.map +1 -1
  423. package/build/ports/logger/__tests__/logger.test.d.ts +2 -0
  424. package/build/ports/logger/__tests__/logger.test.d.ts.map +1 -0
  425. package/build/ports/logger/__tests__/logger.test.js +69 -0
  426. package/build/ports/logger/__tests__/logger.test.js.map +1 -0
  427. package/build/ports/logger/index.d.ts.map +1 -1
  428. package/build/ports/logger/index.js +3 -2
  429. package/build/ports/logger/index.js.map +1 -1
  430. package/build/utils/__tests__/applyCollectionFilterInMemory.test.d.ts +2 -0
  431. package/build/utils/__tests__/applyCollectionFilterInMemory.test.d.ts.map +1 -0
  432. package/build/utils/__tests__/applyCollectionFilterInMemory.test.js +33 -0
  433. package/build/utils/__tests__/applyCollectionFilterInMemory.test.js.map +1 -0
  434. package/build/utils/__tests__/decodeObjectQueryParams.test.d.ts +2 -0
  435. package/build/utils/__tests__/decodeObjectQueryParams.test.d.ts.map +1 -0
  436. package/build/utils/__tests__/decodeObjectQueryParams.test.js +118 -0
  437. package/build/utils/__tests__/decodeObjectQueryParams.test.js.map +1 -0
  438. package/build/utils/index.d.ts +26 -34
  439. package/build/utils/index.d.ts.map +1 -1
  440. package/build/utils/index.js +159 -170
  441. package/build/utils/index.js.map +1 -1
  442. package/package.json +31 -11
  443. package/build/adapters/cache/memory/__tests__/memoryCache.test.d.ts +0 -1
  444. package/build/adapters/cache/memory/__tests__/memoryCache.test.d.ts.map +0 -1
  445. package/build/adapters/cache/memory/__tests__/memoryCache.test.js +0 -6
  446. package/build/adapters/cache/memory/__tests__/memoryCache.test.js.map +0 -1
  447. package/build/adapters/database/memory/__tests__/memoryDb.test.d.ts +0 -1
  448. package/build/adapters/database/memory/__tests__/memoryDb.test.d.ts.map +0 -1
  449. package/build/adapters/database/memory/__tests__/memoryDb.test.js +0 -36
  450. package/build/adapters/database/memory/__tests__/memoryDb.test.js.map +0 -1
  451. package/build/ports/endpoints/__tests__/endpointsCall.test.d.ts +0 -2
  452. package/build/ports/endpoints/__tests__/endpointsCall.test.d.ts.map +0 -1
  453. package/build/ports/endpoints/__tests__/endpointsCall.test.js +0 -21
  454. package/build/ports/endpoints/__tests__/endpointsCall.test.js.map +0 -1
  455. package/build/ports/endpoints/__tests__/test-client-library/base.d.ts +0 -77
  456. package/build/ports/endpoints/__tests__/test-client-library/base.d.ts.map +0 -1
  457. package/build/ports/endpoints/__tests__/test-client-library/base.js +0 -91
  458. package/build/ports/endpoints/__tests__/test-client-library/base.js.map +0 -1
  459. package/build/ports/endpoints/__tests__/test-client-library/index.d.ts +0 -29
  460. package/build/ports/endpoints/__tests__/test-client-library/index.d.ts.map +0 -1
  461. package/build/ports/endpoints/__tests__/test-client-library/index.js +0 -43
  462. package/build/ports/endpoints/__tests__/test-client-library/index.js.map +0 -1
  463. package/build/ports/endpoints/__tests__/test-client-library/services/service.d.ts +0 -106
  464. package/build/ports/endpoints/__tests__/test-client-library/services/service.d.ts.map +0 -1
  465. package/build/ports/endpoints/__tests__/test-client-library/services/service.js +0 -62
  466. package/build/ports/endpoints/__tests__/test-client-library/services/service.js.map +0 -1
  467. package/build/ports/endpoints/__tests__/utils.test.d.ts +0 -1
  468. package/build/ports/endpoints/__tests__/utils.test.d.ts.map +0 -1
  469. package/build/ports/endpoints/__tests__/utils.test.js +0 -53
  470. package/build/ports/endpoints/__tests__/utils.test.js.map +0 -1
  471. package/build/ports/eventsourcing/__tests__/eventhandlers.test.d.ts +0 -2
  472. package/build/ports/eventsourcing/__tests__/eventhandlers.test.d.ts.map +0 -1
  473. package/build/ports/eventsourcing/__tests__/eventhandlers.test.js +0 -35
  474. package/build/ports/eventsourcing/__tests__/eventhandlers.test.js.map +0 -1
  475. package/build/ports/eventsourcing/__tests__/invariants.test.d.ts +0 -2
  476. package/build/ports/eventsourcing/__tests__/invariants.test.d.ts.map +0 -1
  477. package/build/ports/eventsourcing/__tests__/invariants.test.js +0 -210
  478. package/build/ports/eventsourcing/__tests__/invariants.test.js.map +0 -1
  479. package/build/ports/eventsourcing/commandHandlers/index.d.ts +0 -25
  480. package/build/ports/eventsourcing/commandHandlers/index.d.ts.map +0 -1
  481. package/build/ports/eventsourcing/commandHandlers/index.js +0 -392
  482. package/build/ports/eventsourcing/commandHandlers/index.js.map +0 -1
  483. package/build/ports/eventsourcing/commandTemplates/index.d.ts.map +0 -1
  484. package/build/ports/eventsourcing/commandTemplates/index.js.map +0 -1
  485. package/build/ports/eventsourcing/commandTemplates/multiStream.d.ts +0 -4
  486. package/build/ports/eventsourcing/commandTemplates/multiStream.d.ts.map +0 -1
  487. package/build/ports/eventsourcing/commandTemplates/multiStream.js +0 -73
  488. package/build/ports/eventsourcing/commandTemplates/multiStream.js.map +0 -1
  489. package/build/ports/eventsourcing/commandTemplates/snapshot.d.ts +0 -9
  490. package/build/ports/eventsourcing/commandTemplates/snapshot.d.ts.map +0 -1
  491. package/build/ports/eventsourcing/commandTemplates/snapshot.js +0 -39
  492. package/build/ports/eventsourcing/commandTemplates/snapshot.js.map +0 -1
  493. package/build/ports/eventsourcing/eventHandlers/index.d.ts +0 -33
  494. package/build/ports/eventsourcing/eventHandlers/index.d.ts.map +0 -1
  495. package/build/ports/eventsourcing/eventHandlers/index.js +0 -276
  496. package/build/ports/eventsourcing/eventHandlers/index.js.map +0 -1
  497. package/build/ports/eventsourcing/index.d.ts +0 -9
  498. package/build/ports/eventsourcing/index.d.ts.map +0 -1
  499. package/build/ports/eventsourcing/invariants/combinators.d.ts +0 -4
  500. package/build/ports/eventsourcing/invariants/combinators.d.ts.map +0 -1
  501. package/build/ports/eventsourcing/invariants/combinators.js.map +0 -1
  502. package/build/ports/eventsourcing/invariants/common.d.ts +0 -10
  503. package/build/ports/eventsourcing/invariants/common.d.ts.map +0 -1
  504. package/build/ports/eventsourcing/invariants/common.js +0 -37
  505. package/build/ports/eventsourcing/invariants/common.js.map +0 -1
  506. package/build/ports/eventsourcing/invariants/comparisons.d.ts +0 -19
  507. package/build/ports/eventsourcing/invariants/comparisons.d.ts.map +0 -1
  508. package/build/ports/eventsourcing/invariants/comparisons.js +0 -83
  509. package/build/ports/eventsourcing/invariants/comparisons.js.map +0 -1
  510. package/build/ports/eventsourcing/invariants/index.d.ts +0 -5
  511. package/build/ports/eventsourcing/invariants/index.d.ts.map +0 -1
  512. package/build/ports/eventsourcing/invariants/index.js +0 -21
  513. package/build/ports/eventsourcing/invariants/index.js.map +0 -1
  514. package/build/ports/eventsourcing/invariants/stateExistance.d.ts +0 -4
  515. package/build/ports/eventsourcing/invariants/stateExistance.d.ts.map +0 -1
  516. package/build/ports/eventsourcing/invariants/stateExistance.js +0 -33
  517. package/build/ports/eventsourcing/invariants/stateExistance.js.map +0 -1
  518. package/build/ports/eventsourcing/subscriptions/index.d.ts.map +0 -1
  519. package/build/ports/eventsourcing/subscriptions/index.js.map +0 -1
  520. package/build/ports/eventsourcing/subscriptions/sseSubscriptions.d.ts +0 -3
  521. package/build/ports/eventsourcing/subscriptions/sseSubscriptions.d.ts.map +0 -1
  522. package/build/ports/eventsourcing/subscriptions/sseSubscriptions.js +0 -81
  523. package/build/ports/eventsourcing/subscriptions/sseSubscriptions.js.map +0 -1
  524. package/build/ports/eventsourcing/utils/aggregateBuilder.d.ts +0 -4
  525. package/build/ports/eventsourcing/utils/aggregateBuilder.d.ts.map +0 -1
  526. package/build/ports/eventsourcing/utils/aggregateBuilder.js.map +0 -1
  527. package/build/ports/eventsourcing/utils/commandBuilder.d.ts +0 -3
  528. package/build/ports/eventsourcing/utils/commandBuilder.d.ts.map +0 -1
  529. package/build/ports/eventsourcing/utils/commandBuilder.js.map +0 -1
  530. package/build/ports/eventsourcing/utils/eventHandlerBuilder.d.ts.map +0 -1
  531. package/build/ports/eventsourcing/utils/eventHandlerBuilder.js.map +0 -1
  532. package/build/ports/eventsourcing/utils/externalSystemBuilder.d.ts +0 -4
  533. package/build/ports/eventsourcing/utils/externalSystemBuilder.d.ts.map +0 -1
  534. package/build/ports/eventsourcing/utils/externalSystemBuilder.js +0 -34
  535. package/build/ports/eventsourcing/utils/externalSystemBuilder.js.map +0 -1
  536. package/build/ports/eventsourcing/utils/index.d.ts +0 -13
  537. package/build/ports/eventsourcing/utils/index.d.ts.map +0 -1
  538. package/build/ports/eventsourcing/utils/index.js +0 -45
  539. package/build/ports/eventsourcing/utils/index.js.map +0 -1
  540. package/build/ports/eventsourcing/utils/policyBuilder.d.ts +0 -3
  541. package/build/ports/eventsourcing/utils/policyBuilder.d.ts.map +0 -1
  542. package/build/ports/eventsourcing/utils/policyBuilder.js +0 -29
  543. package/build/ports/eventsourcing/utils/policyBuilder.js.map +0 -1
  544. package/build/ports/eventsourcing/utils/readmodelBuilder.d.ts +0 -5
  545. package/build/ports/eventsourcing/utils/readmodelBuilder.d.ts.map +0 -1
  546. package/build/ports/eventsourcing/utils/readmodelBuilder.js +0 -45
  547. package/build/ports/eventsourcing/utils/readmodelBuilder.js.map +0 -1
  548. package/build/ports/infrastructure/__tests__/fixture/index.d.ts +0 -3
  549. package/build/ports/infrastructure/__tests__/fixture/index.d.ts.map +0 -1
  550. package/build/ports/infrastructure/__tests__/fixture/index.js +0 -19
  551. package/build/ports/infrastructure/__tests__/fixture/index.js.map +0 -1
  552. package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.d.ts +0 -19
  553. package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.d.ts.map +0 -1
  554. package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.js +0 -76
  555. package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.js.map +0 -1
  556. package/build/ports/infrastructure/__tests__/fixture/structureState.d.ts +0 -177
  557. package/build/ports/infrastructure/__tests__/fixture/structureState.d.ts.map +0 -1
  558. package/build/ports/infrastructure/__tests__/fixture/structureState.js +0 -258
  559. package/build/ports/infrastructure/__tests__/fixture/structureState.js.map +0 -1
  560. package/build/ports/infrastructure/__tests__/infrastructure.test.d.ts +0 -2
  561. package/build/ports/infrastructure/__tests__/infrastructure.test.d.ts.map +0 -1
  562. package/build/ports/infrastructure/__tests__/infrastructure.test.js +0 -11
  563. package/build/ports/infrastructure/__tests__/infrastructure.test.js.map +0 -1
  564. package/src/adapters/cache/index.ts +0 -1
  565. package/src/adapters/cache/memory/__tests__/memoryCache.test.ts +0 -6
  566. package/src/adapters/cache/memory/index.ts +0 -142
  567. package/src/adapters/configuration/__tests__/.env +0 -4
  568. package/src/adapters/configuration/__tests__/dotEnv.test.ts +0 -38
  569. package/src/adapters/configuration/dotEnv.ts +0 -33
  570. package/src/adapters/configuration/index.ts +0 -1
  571. package/src/adapters/database/index.ts +0 -1
  572. package/src/adapters/database/memory/__tests__/memoryDb.test.ts +0 -37
  573. package/src/adapters/database/memory/index.ts +0 -279
  574. package/src/adapters/endpoints/addAuthUser/index.ts +0 -55
  575. package/src/adapters/endpoints/endpointValidation/index.ts +0 -26
  576. package/src/adapters/endpoints/index.ts +0 -4
  577. package/src/adapters/endpoints/localAuthorization/index.ts +0 -75
  578. package/src/adapters/endpoints/tcpConsumer/index.ts +0 -69
  579. package/src/adapters/endpoints/userSession/index.ts +0 -40
  580. package/src/adapters/eventstore/database.ts +0 -178
  581. package/src/adapters/eventstore/index.ts +0 -1
  582. package/src/adapters/infrastructure/index.ts +0 -1
  583. package/src/adapters/infrastructure/local/index.ts +0 -40
  584. package/src/adapters/logger/console.ts +0 -42
  585. package/src/adapters/logger/index.ts +0 -1
  586. package/src/index.ts +0 -25
  587. package/src/libraries/modules/fs.ts +0 -88
  588. package/src/libraries/modules/index.ts +0 -1
  589. package/src/libraries/openApi/index.ts +0 -1
  590. package/src/libraries/openApi/pruneUnusedRef.ts +0 -35
  591. package/src/libraries/tcp/index.ts +0 -98
  592. package/src/libraries/tcp/types.ts +0 -43
  593. package/src/libraries/validation/__tests__/validation.test.ts +0 -25
  594. package/src/libraries/validation/index.ts +0 -48
  595. package/src/ports/authentication/index.ts +0 -25
  596. package/src/ports/base.ts +0 -20
  597. package/src/ports/cache/index.ts +0 -17
  598. package/src/ports/configuration/__tests__/configurationPort.test.ts +0 -47
  599. package/src/ports/configuration/args.ts +0 -39
  600. package/src/ports/configuration/common.ts +0 -12
  601. package/src/ports/configuration/index.ts +0 -110
  602. package/src/ports/configuration/localConfig.ts +0 -117
  603. package/src/ports/database/index.ts +0 -25
  604. package/src/ports/endpoints/__tests__/endpointsCall.test.ts +0 -20
  605. package/src/ports/endpoints/__tests__/test-client-library/base.ts +0 -167
  606. package/src/ports/endpoints/__tests__/test-client-library/index.ts +0 -23
  607. package/src/ports/endpoints/__tests__/test-client-library/services/service.ts +0 -181
  608. package/src/ports/endpoints/__tests__/utils.test.ts +0 -54
  609. package/src/ports/endpoints/index.ts +0 -272
  610. package/src/ports/endpoints/openApi.ts +0 -191
  611. package/src/ports/endpoints/utils.ts +0 -31
  612. package/src/ports/eventsourcing/__tests__/eventhandlers.test.ts +0 -30
  613. package/src/ports/eventsourcing/__tests__/invariants.test.ts +0 -213
  614. package/src/ports/eventsourcing/commandHandlers/index.ts +0 -625
  615. package/src/ports/eventsourcing/commandTemplates/index.ts +0 -2
  616. package/src/ports/eventsourcing/commandTemplates/multiStream.ts +0 -70
  617. package/src/ports/eventsourcing/commandTemplates/snapshot.ts +0 -43
  618. package/src/ports/eventsourcing/eventHandlers/index.ts +0 -429
  619. package/src/ports/eventsourcing/index.ts +0 -98
  620. package/src/ports/eventsourcing/invariants/combinators.ts +0 -25
  621. package/src/ports/eventsourcing/invariants/common.ts +0 -42
  622. package/src/ports/eventsourcing/invariants/comparisons.ts +0 -90
  623. package/src/ports/eventsourcing/invariants/index.ts +0 -4
  624. package/src/ports/eventsourcing/invariants/stateExistance.ts +0 -34
  625. package/src/ports/eventsourcing/subscriptions/index.ts +0 -1
  626. package/src/ports/eventsourcing/subscriptions/sseSubscriptions.ts +0 -103
  627. package/src/ports/eventsourcing/utils/aggregateBuilder.ts +0 -49
  628. package/src/ports/eventsourcing/utils/commandBuilder.ts +0 -113
  629. package/src/ports/eventsourcing/utils/eventHandlerBuilder.ts +0 -22
  630. package/src/ports/eventsourcing/utils/externalSystemBuilder.ts +0 -42
  631. package/src/ports/eventsourcing/utils/index.ts +0 -25
  632. package/src/ports/eventsourcing/utils/policyBuilder.ts +0 -31
  633. package/src/ports/eventsourcing/utils/readmodelBuilder.ts +0 -52
  634. package/src/ports/eventstore/index.ts +0 -11
  635. package/src/ports/infrastructure/__tests__/fixture/index.ts +0 -2
  636. package/src/ports/infrastructure/__tests__/fixture/infrastructureServices.ts +0 -72
  637. package/src/ports/infrastructure/__tests__/fixture/structureState.ts +0 -254
  638. package/src/ports/infrastructure/__tests__/infrastructure.test.ts +0 -11
  639. package/src/ports/infrastructure/index.ts +0 -162
  640. package/src/ports/infrastructure/utils.ts +0 -130
  641. package/src/ports/logger/index.ts +0 -34
  642. package/src/utils/index.ts +0 -186
  643. package/tsconfig.json +0 -19
  644. /package/build/{ports → libraries}/eventsourcing/commandTemplates/index.d.ts +0 -0
  645. /package/build/{ports → libraries}/eventsourcing/commandTemplates/index.js +0 -0
  646. /package/build/{ports → libraries}/eventsourcing/subscriptions/index.d.ts +0 -0
  647. /package/build/{ports → libraries}/eventsourcing/subscriptions/index.js +0 -0
  648. /package/build/{ports → libraries}/eventsourcing/utils/eventHandlerBuilder.js +0 -0
@@ -1,33 +0,0 @@
1
- import { mergeDeepRight } from 'ramda';
2
- import { ConfigurationAdapter } from '@bett3r-dev/pv3-types';
3
-
4
- const deepFilterUndefined = ( obj: Record<string, any> ): Record<string, any> => {
5
- const result: Record<string, any> = {};
6
- Object.keys( obj ).forEach(( key ) => {
7
- if ( typeof obj[key] === 'object' && !Array.isArray( obj[key])) {
8
- const value = deepFilterUndefined( obj[key]);
9
- if ( Object.keys( value ).length > 0 ) {
10
- result[key] = value;
11
- }
12
- } else if ( typeof obj[key] !== 'undefined' ) {
13
- result[key] = obj[key];
14
- }
15
- });
16
- return result;
17
- };
18
-
19
- export const DotEnv = ( envFilePath:string, configMap: ( env: Record<string, any>, previous: Record<string, any> ) => Record<string, any> ): ConfigurationAdapter => {
20
- require( 'dotenv' ).config({ path: envFilePath });
21
- const applyConfig = async <CONFIG extends object>( config: CONFIG ): Promise<CONFIG> => {
22
- const envConfig = configMap( process.env, config );
23
- return mergeDeepRight( config, deepFilterUndefined( envConfig )) as CONFIG;
24
- };
25
-
26
- return {
27
- _adapter: () => {},
28
- start: async()=>{},
29
- stop: async()=>{},
30
- name: 'dotEnv',
31
- applyConfig
32
- };
33
- };
@@ -1 +0,0 @@
1
- export * from './dotEnv';
@@ -1 +0,0 @@
1
- export * from './memory';
@@ -1,37 +0,0 @@
1
- // import { Database } from '../../../../ports/database';
2
- // import { DatabaseAdapterTest } from '@bett3r-dev/pv3-library-tests';
3
- // import { MemoryDb } from '../index';
4
-
5
- // describe( 'MemoryDb tests', () => {
6
- // DatabaseAdapterTest( MemoryDb());
7
- // });
8
-
9
- // describe( 'Upsert', () => {
10
- // it( 'when upserting a dot notation nested value then it stores it respecting the structure', async () => {
11
- // const database = Database( MemoryDb());
12
- // await database.getCollection( 'test' ).upsert( '1', { 'id': '1', 'string.nested.value': 4 });
13
- // const result = await database.getCollection( 'test' ).readById( '1' );
14
- // expect( result ).toEqual({ id: '1', string: { nested: { value: 4 }}}
15
- // );
16
- // });
17
- // it( 'when upserting a dot notation nested value then it stores it respecting the structure', async () => {
18
- // const database = Database( MemoryDb());
19
- // await database.getCollection( 'test' ).upsert( 'processing', { events:
20
- // { 2: 'Carts-CartsReadmodel-1',
21
- // 3: null,
22
- // 4: 'Carts-CartsReadmodel-3',
23
- // 5: 'Carts-CartsReadmodel-0' },
24
- // lastProcessed: 3 });
25
- // const result = await database.getCollection( 'test' ).readById( 'processing' );
26
- // expect( result ).toEqual({
27
- // events: {
28
- // 2: 'Carts-CartsReadmodel-1',
29
- // 3: null,
30
- // 4: 'Carts-CartsReadmodel-3',
31
- // 5: 'Carts-CartsReadmodel-0'
32
- // },
33
- // id: 'processing',
34
- // lastProcessed: 3
35
- // });
36
- // });
37
- // });
@@ -1,279 +0,0 @@
1
- import { ensureArray, TypedEventEmitter } from '@bett3r-dev/bett3r-utils';
2
- import { Collection, CollectionFilter, CollectionFilterInstance, CollectionOperations, CollectionQueryParams, DatabaseAdapter, DatabaseChange, Document, filterOpMap, IndexOptions } from '@bett3r-dev/pv3-types';
3
- import { randomUUID } from 'crypto';
4
- import { assocPath, clone, path, pick, props } from 'ramda';
5
- import { DuplicatedValueInIndex } from '../../../ports/database';
6
- import { createError } from '../../../utils';
7
-
8
- export const MemoryDb = (): DatabaseAdapter => {
9
- let _db = {};
10
- const changeEmitters: Record<string, TypedEventEmitter<{'change': DatabaseChange}>> = {};
11
- type UniqueIndexes = {
12
- [collection: string]:{
13
- [index: string] : string[]
14
- }
15
- }
16
-
17
- const uniqueIndexes: UniqueIndexes = {};
18
-
19
- const start = async () => {
20
- };
21
-
22
- const stop = async () => {
23
- };
24
-
25
-
26
- const getCollection = <Model extends Document>( collection:string ): Collection<Model> => {
27
- const coll = _db[collection] ||= {};
28
-
29
- const validateIndex = ( data: any ) => {
30
- if ( !uniqueIndexes[collection]) return;
31
- const duplicatedIndex = Object.keys( uniqueIndexes[collection]).find( index => {
32
- const properties = uniqueIndexes[collection][index];
33
- const recordComparison = Object.values( coll ).find(( d: any )=> {
34
- const valueComparison = properties.every( p =>{
35
- return path( p.split( '.' ), d ) === path( p.split( '.' ), data );
36
- });
37
- return valueComparison;
38
- });
39
- return recordComparison;
40
- });
41
- return duplicatedIndex && {
42
- index: duplicatedIndex,
43
- properties: uniqueIndexes[collection][duplicatedIndex]
44
- };
45
- };
46
-
47
- const readById = async ( id: string|number ): Promise<Model | null> => {
48
- return coll[id] || null;
49
- };
50
-
51
- const filterData = ( results: any[], filter: CollectionFilter<Model>[]) => {
52
- const shouldFilter = ( row: any, filter: CollectionFilter<Model>[]) => filter.every( f=> {
53
- if ( f.AND ){
54
- return f.AND.every( andFilters=> shouldFilter( row, [andFilters]));
55
- }
56
- if ( f.OR ){
57
- return f.OR.some( orFilters=> shouldFilter( row, [orFilters]));
58
- }
59
- return filterOpMap[( f as any ).op]( path([f.field as string], row ), f.value );
60
- });
61
- return results.filter( row => shouldFilter( row, filter ));
62
- };
63
-
64
- const hashId = ( id: string|number ) => {
65
- let intId = Number( id );
66
- if ( !isNaN( intId )) return intId;
67
- const factor = 2;
68
- let hash = 0;
69
- for ( let i = 0; i < ( id as string ).length; i++ ) {
70
- hash = hash * factor + ( id as string ).charCodeAt( i );
71
- }
72
- return Math.abs( hash );
73
- };
74
-
75
- const query = async (
76
- queryParams: CollectionQueryParams<Model>
77
- ): Promise<Model[]> => {
78
- const { limit, filter, sort, after, select } = queryParams;
79
- let result = Object.values( coll );
80
-
81
- if ( after ){
82
- const sortedKeys = Object.keys( coll ).map(( key ) => [ key, hashId( key ) ])
83
- .sort(( a:any, b:any ) => a[1] - b[1])
84
- .map(( a:any ) => a[0]);
85
- const index = sortedKeys.indexOf( after.toString());
86
- result = props( sortedKeys.slice( index + 1 ), coll );
87
- }
88
-
89
- result = !filter ? result : filterData( result, filter );
90
-
91
- result = !sort ? result : sort
92
- .reduce(( result, sort ) => {
93
- return result.sort(( a: any, b: any ) => {
94
- return sort.direction === 'desc'
95
- ? ( a[sort.field] < b[sort.field] ? 1 : -1 )
96
- : ( a[sort.field] >= b[sort.field] ? 1 : -1 );
97
- });
98
- }, result );
99
-
100
- result = !limit ? result : result.slice( 0, limit );
101
-
102
- result = !select ? result : result.map( pick( ensureArray( select as string )));
103
-
104
- return result as Model[];
105
- };
106
-
107
- const forEach = async (
108
- queryParams: CollectionQueryParams<Model>,
109
- callback: ( record: Model, stop: () => void ) => void | Promise<void>
110
- ): Promise<void> => {
111
- let shouldStop = false;
112
- const stop = () => {
113
- shouldStop = true;
114
- };
115
- await query( queryParams )
116
- .then( async records =>{
117
- for ( let index = 0; index < records.length; index++ ) {
118
- const element = records[index];
119
- if ( shouldStop ) return;
120
- await callback( element, stop );
121
- }
122
- });
123
- };
124
-
125
- const upsert = async (
126
- id: string|number,
127
- data: Partial<Model>
128
- ): Promise<Model> => {
129
- const _data = clone( data );
130
- const changeType = coll[id] ? 'update' : 'insert';
131
- if ( changeType === 'insert' ){
132
- const index = validateIndex( _data );
133
- if ( index ) return Promise.reject( createError( DuplicatedValueInIndex(), {
134
- details: index.properties.reduce(( details, p ) => {
135
- details[p] = path( p.split( '.' ), _data );
136
- return details;
137
- }, {})
138
- }));
139
- }
140
- const previous = clone( coll[id]);
141
- const formatedData = Object.keys( _data ).reduce(( response, key ) => {
142
- return assocPath( key.split( '.' ), _data[key], response );
143
- }, clone( coll[id]) || {});
144
-
145
- coll[id] = { ...formatedData, id };
146
- changeEmitters[collection]?.emit( 'change', { changeType, data: coll[id], previous });
147
- return coll[id] as Model;
148
- };
149
-
150
- const destroyById = async ( id: string|number ) =>{
151
- const previous = coll[id];
152
- changeEmitters[collection]?.emit( 'change', { changeType: 'delete', previous });
153
- delete coll[id];
154
- };
155
-
156
- const createMany = async ( documents: Model[]): Promise<Model[]> => {
157
- return documents.map( data=>{
158
- const _data = clone( data );
159
- validateIndex( _data );
160
- coll[_data.id] = _data;
161
- changeEmitters[collection]?.emit( 'change', { changeType: 'insert', data: _data });
162
- return _data as Model;
163
- });
164
- };
165
-
166
- const updateMany = async ( filter: CollectionFilterInstance<Model>[], data: Partial<Model> ) => {
167
- return Object.keys( coll )
168
- .reduce(( response, rowId ) => {
169
- if ( filter.every( f=> filterOpMap[( f as any ).op]( path([f.field], coll[rowId]), f.value ))){
170
- const previous = coll[rowId];
171
- coll[rowId] = { ...coll[rowId], ...clone( data ) };
172
- changeEmitters[collection]?.emit( 'change', { changeType: 'update', previous, data: coll[rowId] });
173
- response.push( coll[rowId]);
174
- }
175
- return response;
176
- }, [] as any[]) as Model[];
177
- };
178
-
179
- const destroyMany = async ( filter: CollectionFilterInstance<Model>[]) => {
180
- return Object.keys( coll )
181
- .reduce(( response, rowId ) => {
182
- if ( filter.every( f=> filterOpMap[( f as any ).op]( path([f.field], coll[rowId]), f.value ))){
183
- const previous = coll[rowId];
184
- delete coll[rowId];
185
- changeEmitters[collection]?.emit( 'change', { changeType: 'delete', previous });
186
- response.push( rowId );
187
- }
188
- return response;
189
- }, [] as any[])
190
- .length;
191
- };
192
-
193
- const atomicIncrement = async ( name: string, filter: CollectionFilterInstance<Model>, amount = 1 ): Promise<number> => {
194
- const fnMap = filterOpMap[( filter as any ).op];
195
- const key = Object.keys( coll ).find( id => fnMap( path([filter.field], coll[id]), filter.value ));
196
- if ( !key ){
197
- const id = randomUUID();
198
- coll[id] = {
199
- [filter.field]: filter.value,
200
- [name]: amount
201
- };
202
- changeEmitters[collection]?.emit( 'change', { changeType: 'insert', data: coll[id] });
203
- return amount;
204
- } else {
205
- const previous = coll[key];
206
- coll[key][name] = ( coll[key][name] || 0 ) + amount;
207
- changeEmitters[collection]?.emit( 'change', { changeType: 'update', data: coll[key], previous });
208
- return coll[key][name];
209
- }
210
- };
211
-
212
- const ensureIndex = async ( properties: string[], options: IndexOptions = {} as IndexOptions ) =>{
213
- if ( options.isUnique === true ){
214
- uniqueIndexes[collection] ||= {};
215
- uniqueIndexes[collection][properties.join( '_' )] = properties;
216
- }
217
- };
218
-
219
- const destroyIndex = async ( properties: string[]) =>{
220
- if ( uniqueIndexes[collection] && uniqueIndexes[collection][properties.join( '_' )]){
221
- delete uniqueIndexes[collection][properties.join( '_' )];
222
- }
223
- };
224
-
225
- const watch = ( changeTypes: ( 'insert'|'update'|'delete' )[] = ['insert'], onData:( data: DatabaseChange<Model> )=>void, onError: ( e: Error ) => void ) => {
226
- changeEmitters[collection] ||= new TypedEventEmitter<{'change': DatabaseChange}>();
227
-
228
- const callback = ( change ) => {
229
- if ( changeTypes.includes( change.changeType ))
230
- onData( change );
231
- };
232
- changeEmitters[collection].on( 'change', callback );
233
-
234
- return Promise.resolve({
235
- close: () => changeEmitters[collection].off( 'change', callback )
236
- });
237
- };
238
-
239
- return {
240
- readById,
241
- query,
242
- upsert,
243
- forEach,
244
- destroyById,
245
- createMany,
246
- updateMany,
247
- destroyMany,
248
- atomicIncrement,
249
- ensureIndex,
250
- destroyIndex,
251
- watch
252
- };
253
- };
254
-
255
- const initTransaction = <Result = any>( operations: ( getCollection: <Model extends Document>( collection: string ) => CollectionOperations<Model> ) => Promise<Result | undefined> ): Promise<Result> => {
256
- let backupDb = clone( _db );
257
- const commitTransaction = async ( docs?: Result ) =>{
258
- return docs || null as Result;
259
- };
260
-
261
- const rollbackTransaction = async ( error: Error ) =>{
262
- _db = backupDb;
263
- return Promise.reject( error );
264
- };
265
-
266
- return operations( getCollection )
267
- .then( commitTransaction )
268
- .catch( rollbackTransaction );
269
- };
270
-
271
- return {
272
- _adapter: () => _db,
273
- name: 'memoryDb',
274
- start,
275
- stop,
276
- getCollection,
277
- initTransaction
278
- };
279
- };
@@ -1,55 +0,0 @@
1
- import { Endpoint, EndpointActionParams, EndpointsAdapter } from '@bett3r-dev/pv3-types';
2
- import { path } from 'ramda';
3
- import { AuthenticationError, createError } from '../../..';
4
-
5
- const propMapper = ( map: Record<string, string>, object: Record<string, any> ) => {
6
- const result = {};
7
- Object.keys( map ).forEach( key => {
8
- result[map[key]] = path( key.split( '.' ), object );
9
- });
10
- return result;
11
- };
12
-
13
- /**
14
- * Adds the user object to the request context
15
- * @param customTokenAttributes - Object with key as the path to the attribute in the token and value as the name of the attribute in the user object
16
- * @returns
17
- */
18
- export const AddAuthUserToRequest = ( customTokenAttributes: Record<string, string> ): EndpointsAdapter => {
19
- const addUserToContext = async ( params: EndpointActionParams ): Promise<EndpointActionParams> =>{
20
- const token: string = params.context?.req?.headers?.authorization as string || params.query?.access_token;
21
- if ( !token ) return params;
22
- try{
23
- const payload = JSON.parse( Buffer.from( token.split( '.' )[1], 'base64' ).toString());
24
- if ( !params.context )
25
- params.context = {};
26
- params.context.token = token.slice( token.lastIndexOf( ' ' ) + 1 );
27
- params.context.user = propMapper({
28
- 'email': 'email',
29
- 'realm_access.roles': 'roles',
30
- 'app_id': 'id',
31
- ...customTokenAttributes
32
- }, payload );
33
- return Promise.resolve( params );
34
- } catch ( err ) {
35
- return Promise.reject( createError( AuthenticationError(), { description: 'Invalid Token' }));
36
- }
37
- };
38
-
39
- const registerEndpoint = ( endpoint: Endpoint ) => {
40
- const originalAction = endpoint.action;
41
- endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
42
- return addUserToContext( params )
43
- .then( originalAction );
44
- };
45
- return endpoint;
46
- };
47
-
48
- return {
49
- _adapter: () => {},
50
- name: 'addAuthUser',
51
- start: async()=>{},
52
- stop: async()=>{},
53
- registerEndpoint
54
- };
55
- };
@@ -1,26 +0,0 @@
1
- import { BaseSchema } from '@bett3r-dev/jsonschema-definer';
2
- import { Endpoint, EndpointActionParams, EndpointsAdapter } from '@bett3r-dev/pv3-types';
3
- import { validateEndpoint } from '../../../libraries/validation';
4
-
5
- export const EndpointValidation = ( validateSchema: <T>( schema: BaseSchema<T> ) => ( value:T ) => T, onError: ( err:any, endpoint: Endpoint ) => void = () => {}): EndpointsAdapter => {
6
- const registerEndpoint = ( endpoint: Endpoint ) => {
7
- if ( endpoint.shouldValidate === false ) return endpoint;
8
- const originalAction = endpoint.action;
9
- endpoint.action = ( params: EndpointActionParams ) =>
10
- validateEndpoint( validateSchema, endpoint.schemas )( params )
11
- .catch( e => {
12
- onError( e, endpoint );
13
- return Promise.reject( e );
14
- })
15
- .then( originalAction );
16
- return endpoint;
17
- };
18
-
19
- return {
20
- _adapter: () => {},
21
- name: 'endpointValidation',
22
- start: async()=>{},
23
- stop: async()=>{},
24
- registerEndpoint
25
- };
26
- };
@@ -1,4 +0,0 @@
1
- export * from './addAuthUser';
2
- export * from './endpointValidation';
3
- // export * from './localAuthorization';
4
- export * from './userSession';
@@ -1,75 +0,0 @@
1
- // import S from '@bett3r-dev/jsonschema-definer';
2
- // import { compose, mergeRight } from 'ramda';
3
- // import { AuthenticationPort, /* EndpointMarkedAsPublicSchema, EndpointRolesUpsertedSchema, RouteManagerEndpointAuth */ } from '../../../ports/authentication';
4
- // import { DatabasePort } from '../../../ports/database';
5
- // import { Endpoint, EndpointActionParams, EndpointsAdapter, EndpointsPort } from '../../../ports/endpoints';
6
-
7
- // export type LocalAuthorizationType = EndpointsAdapter & {
8
- // registerRouteManagementEndpoints: ( endpoints: EndpointsPort ) => void;
9
- // }
10
-
11
- // /**
12
- // * Performs a local authorization of the incoming request by validating the JWT and performing RBAC authorization
13
- // * @param authentication Authentication Port
14
- // * @returns
15
- // */
16
- // export const LocalAuthorization = ( authentication: AuthenticationPort, database: DatabasePort ): LocalAuthorizationType => {
17
- // const routeManager = authentication.RouteManager( database );
18
- // const _authorizeRequest = authentication.authorizeRequest( routeManager );
19
-
20
- // const authorizeRequest = async ( params: EndpointActionParams<any, any, any> ) => {
21
- // await _authorizeRequest( params.context.token!, params.context.req?.method!, params.context.req?.route! );
22
- // return params;
23
- // };
24
-
25
- // const registerEndpoint = ( endpoint: Endpoint ) => {
26
- // const originalAction = endpoint.action;
27
- // endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
28
- // return authorizeRequest( params )
29
- // .then( originalAction );
30
- // };
31
- // return endpoint;
32
- // };
33
-
34
- // const registerRouteManagementEndpoints = ( endpoints: EndpointsPort ) => {
35
- // const upsertEndpointAuth = ( patchValue?: Partial<RouteManagerEndpointAuth> ) => ({ body } : {body: {id: string}[]}) => {
36
- // return Promise.all( body.map( compose(
37
- // routeManager.upsertRoute,
38
- // mergeRight( patchValue || {})
39
- // )));
40
- // };
41
-
42
- // endpoints.registerEndpoint({
43
- // module: 'Authorization',
44
- // name: 'Mark as Public',
45
- // description: 'Mark an endpoint as public',
46
- // route: '/authorization/mark-as-public',
47
- // method: 'POST',
48
- // schemas: {
49
- // body: S.array().items( EndpointMarkedAsPublicSchema )
50
- // },
51
- // action: upsertEndpointAuth({ isPublic:true })
52
- // });
53
-
54
- // endpoints.registerEndpoint({
55
- // module: 'Authorization',
56
- // name: 'Upsert Roles',
57
- // description: 'Upsert roles for endpoint',
58
- // route: '/authorization/upsert-roles',
59
- // method: 'POST',
60
- // schemas: {
61
- // body: S.array().items( EndpointRolesUpsertedSchema )
62
- // },
63
- // action: upsertEndpointAuth()
64
- // });
65
- // };
66
-
67
- // return {
68
- // _adapter: () => {},
69
- // name: 'localAuthorization',
70
- // registerRouteManagementEndpoints,
71
- // start: async()=>{},
72
- // stop: async()=>{},
73
- // registerEndpoint
74
- // };
75
- // };
@@ -1,69 +0,0 @@
1
- import S from '@bett3r-dev/jsonschema-definer';
2
- import {
3
- AppErrorInstance, ConfigurationPort, Endpoint,
4
- EndpointAction,
5
- EndpointsAdapter, LoggerPort,
6
- TcpEventMessageRequest, TcpEventMessageResponse
7
- } from '@bett3r-dev/pv3-types';
8
- import { Socket } from 'net';
9
- import { Tcp as TcpLib, TcpServerObject } from '../../../libraries/tcp';
10
-
11
- const TcpConsumerConfigSchema = S.shape({
12
- port: S.number().optional().default( 9520 ),
13
- });
14
-
15
-
16
- export const TcpConsumer = ( configuration: ConfigurationPort, loggerPort: LoggerPort ): EndpointsAdapter => {
17
- const { config } = configuration.getModuleConfig( 'tcpConsumer', TcpConsumerConfigSchema.optional());
18
- const logger = loggerPort.createLoggerInstance( 'TcpConsumer' );
19
- const tcp = TcpLib( loggerPort );
20
- let server: TcpServerObject;
21
- const endpointMap: Map<string, EndpointAction> = new Map();
22
-
23
- const registerEndpoint = ( endpoint: Endpoint ): Endpoint => {
24
- const { route, module, action } = endpoint;
25
- logger.log( 'Registering TCP Consumer endpoint:', module, route );
26
- endpointMap.set( route, action );
27
- return endpoint;
28
- };
29
-
30
- const start = async ( port: number | undefined = config.port || 9520 ): Promise<void> =>{
31
- tcp.createTCPServer( port ).then( _server => {
32
- server = _server;
33
- let broker: Socket;
34
- logger.info( 'TCP server listening on port', port );
35
- server.connectedStream.map(({ socket }) => broker = socket );
36
- server.dataStream.map(({ message }) => {
37
- const { endpoint, event } = JSON.parse( message ) as TcpEventMessageRequest;
38
- const action = endpointMap.get( endpoint );
39
- if ( !action ) logger.error( 'No endpoint found for', endpoint );
40
- action!({
41
- body: event,
42
- params: {},
43
- query: {},
44
- // TODO: Contemplar el contexto que viene del event?
45
- context: {},
46
- })
47
- .then(() => {
48
- broker.write( JSON.stringify({ id: event.id, status: 200 } as TcpEventMessageResponse ));
49
- })
50
- .catch(( e: AppErrorInstance ) => {
51
- broker.write( JSON.stringify({ id: event.id, status: e.status, error: e.message } as TcpEventMessageResponse ));
52
- });
53
- });
54
- });
55
- };
56
-
57
- const stop = () => new Promise<void>(( resolve, reject ) => {
58
- return server.close();
59
- });
60
-
61
- return {
62
- name: 'express',
63
- adapterType: 'httpHandler',
64
- _adapter: () => {},
65
- registerEndpoint,
66
- start,
67
- stop,
68
- };
69
- };
@@ -1,40 +0,0 @@
1
- import { CachePort, Endpoint, EndpointActionParams, EndpointsAdapter, LoggerPort } from '@bett3r-dev/pv3-types';
2
-
3
- /**
4
- * Adds the user session object to the request context
5
- * @param customTokenAttributes - Object with key as the path to the attribute in the token and value as the name of the attribute in the user object
6
- * @returns
7
- */
8
- export const UserSession = ( logger: LoggerPort, cache: CachePort, keyFormatter: ( user: Record<string, any> ) => string = ( user ) => user.id ): EndpointsAdapter => {
9
- const log = logger.createLoggerInstance( 'UserSessionEndpointsAdapter' );
10
- const addUserSessionToContext = async ( params: EndpointActionParams ): Promise<EndpointActionParams> =>{
11
- if ( !params.context?.user ) return params;
12
- try{
13
- const key = keyFormatter( params.context.user );
14
- const session = await cache.get( key );
15
- if ( !params.context )
16
- params.context = {};
17
- params.context.session = session;
18
- } catch ( err ) {
19
- log.error( err );
20
- }
21
- return Promise.resolve( params );
22
- };
23
-
24
- const registerEndpoint = ( endpoint: Endpoint ) => {
25
- const originalAction = endpoint.action;
26
- endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
27
- return addUserSessionToContext( params )
28
- .then( originalAction );
29
- };
30
- return endpoint;
31
- };
32
-
33
- return {
34
- _adapter: () => {},
35
- name: 'addUserSessionToContext',
36
- start: async()=>{},
37
- stop: async()=>{},
38
- registerEndpoint
39
- };
40
- };