@reventlessdev/reventless-aws 3.0.0-alpha.167

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 (394) hide show
  1. package/CHANGELOG.md +1564 -0
  2. package/README.md +62 -0
  3. package/__mocks__/emptyModule.js +1 -0
  4. package/all-licenses.csv +565 -0
  5. package/docker-compose.dynamodb-local.yml +12 -0
  6. package/jest.setup.cjs +5 -0
  7. package/licenses-analysis.ods +0 -0
  8. package/package.json +73 -0
  9. package/rescript.json +39 -0
  10. package/reventless-licenses-analysis.xls +0 -0
  11. package/scripts/run-integration-tests.sh +43 -0
  12. package/src/Platform.res +1940 -0
  13. package/src/Platform.res.mjs +2281 -0
  14. package/src/Platform_Casts.res +106 -0
  15. package/src/Platform_Casts.res.mjs +13 -0
  16. package/src/Platform_Stack.res +153 -0
  17. package/src/Platform_Stack.res.mjs +121 -0
  18. package/src/Types.res +39 -0
  19. package/src/Types.res.mjs +21 -0
  20. package/src/adapter/AWS.res +96 -0
  21. package/src/adapter/AWS.res.mjs +186 -0
  22. package/src/adapter/AWS_Tags.res +16 -0
  23. package/src/adapter/AWS_Tags.res.mjs +48 -0
  24. package/src/adapter/Adapter_Helpers.res +19 -0
  25. package/src/adapter/Adapter_Helpers.res.mjs +37 -0
  26. package/src/adapter/Api/AppSync_EventsApi.res +172 -0
  27. package/src/adapter/Api/AppSync_EventsApi.res.mjs +96 -0
  28. package/src/adapter/Api/AppSync_Resolver_Native.res +93 -0
  29. package/src/adapter/Api/AppSync_Resolver_Native.res.mjs +67 -0
  30. package/src/adapter/Api/AppSync_Resolver_Retrying.res +653 -0
  31. package/src/adapter/Api/AppSync_Resolver_Retrying.res.mjs +462 -0
  32. package/src/adapter/Api/CommandSubscriptionResolvers_AppSync.res +29 -0
  33. package/src/adapter/Api/CommandSubscriptionResolvers_AppSync.res.mjs +15 -0
  34. package/src/adapter/Api/Platform_ComponentDefinitions_Lambda.res +238 -0
  35. package/src/adapter/Api/Platform_ComponentDefinitions_Lambda.res.mjs +179 -0
  36. package/src/adapter/Api/Platform_UIFragments_Lambda.res +229 -0
  37. package/src/adapter/Api/Platform_UIFragments_Lambda.res.mjs +245 -0
  38. package/src/adapter/Auth/Auth_Cognito.res +209 -0
  39. package/src/adapter/Auth/Auth_Cognito.res.mjs +135 -0
  40. package/src/adapter/CommandGenerator/CommandGeneratorResolvers.res +2 -0
  41. package/src/adapter/CommandGenerator/CommandGeneratorResolvers.res.mjs +12 -0
  42. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync.res +251 -0
  43. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync.res.mjs +126 -0
  44. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync_NoOp.res +20 -0
  45. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync_NoOp.res.mjs +23 -0
  46. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync_Runtime.res +1 -0
  47. package/src/adapter/CommandGenerator/CommandGeneratorResolvers_AppSync_Runtime.res.mjs +11 -0
  48. package/src/adapter/CommandGenerator/InboundTranslationResolvers_AppSync.res +95 -0
  49. package/src/adapter/CommandGenerator/InboundTranslationResolvers_AppSync.res.mjs +50 -0
  50. package/src/adapter/CommandTopic/CommandTopicChannel.res +6 -0
  51. package/src/adapter/CommandTopic/CommandTopicChannel.res.mjs +21 -0
  52. package/src/adapter/CommandTopic/CommandTopicChannel_Helpers.res +196 -0
  53. package/src/adapter/CommandTopic/CommandTopicChannel_Helpers.res.mjs +145 -0
  54. package/src/adapter/CommandTopic/CommandTopicChannel_SQS.res +91 -0
  55. package/src/adapter/CommandTopic/CommandTopicChannel_SQS.res.mjs +74 -0
  56. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Async.res +69 -0
  57. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Async.res.mjs +62 -0
  58. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_FIFO.res +60 -0
  59. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_FIFO.res.mjs +56 -0
  60. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Runtime.res +73 -0
  61. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Runtime.res.mjs +65 -0
  62. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Sync.res +88 -0
  63. package/src/adapter/CommandTopic/CommandTopicChannel_SQS_Sync.res.mjs +76 -0
  64. package/src/adapter/CommandTopic/CommandTopicRemoteChannel.res +1 -0
  65. package/src/adapter/CommandTopic/CommandTopicRemoteChannel.res.mjs +9 -0
  66. package/src/adapter/CommandTopic/CommandTopicRemoteChannel_SQS.res +7 -0
  67. package/src/adapter/CommandTopic/CommandTopicRemoteChannel_SQS.res.mjs +17 -0
  68. package/src/adapter/Counter/CounterHandler_DynamoDbStream.res +103 -0
  69. package/src/adapter/Counter/CounterHandler_DynamoDbStream.res.mjs +68 -0
  70. package/src/adapter/Counter/CounterHandler_DynamoDbStream_Runtime.res +107 -0
  71. package/src/adapter/Counter/CounterHandler_DynamoDbStream_Runtime.res.mjs +145 -0
  72. package/src/adapter/DcbEventLog/DcbEventLogStorage.res +1 -0
  73. package/src/adapter/DcbEventLog/DcbEventLogStorage.res.mjs +9 -0
  74. package/src/adapter/DcbEventLog/DcbEventLogStorage_DynamoDb.res +84 -0
  75. package/src/adapter/DcbEventLog/DcbEventLogStorage_DynamoDb.res.mjs +52 -0
  76. package/src/adapter/DcbEventLog/DcbEventLogStorage_DynamoDb_Runtime.res +1436 -0
  77. package/src/adapter/DcbEventLog/DcbEventLogStorage_DynamoDb_Runtime.res.mjs +1143 -0
  78. package/src/adapter/EventCollector/EventCollectorChannel.res +6 -0
  79. package/src/adapter/EventCollector/EventCollectorChannel.res.mjs +21 -0
  80. package/src/adapter/EventCollector/EventCollectorChannel_DynamoDbStream.res +63 -0
  81. package/src/adapter/EventCollector/EventCollectorChannel_DynamoDbStream.res.mjs +56 -0
  82. package/src/adapter/EventCollector/EventCollectorChannel_DynamoDbStream_Runtime.res +20 -0
  83. package/src/adapter/EventCollector/EventCollectorChannel_DynamoDbStream_Runtime.res.mjs +32 -0
  84. package/src/adapter/EventCollector/EventCollectorChannel_Helpers.res +266 -0
  85. package/src/adapter/EventCollector/EventCollectorChannel_Helpers.res.mjs +166 -0
  86. package/src/adapter/EventCollector/EventCollectorChannel_SQS.res +81 -0
  87. package/src/adapter/EventCollector/EventCollectorChannel_SQS.res.mjs +54 -0
  88. package/src/adapter/EventCollector/EventCollectorChannel_SQS_FIFO.res +59 -0
  89. package/src/adapter/EventCollector/EventCollectorChannel_SQS_FIFO.res.mjs +45 -0
  90. package/src/adapter/EventCollector/EventCollectorChannel_SQS_Runtime.res +91 -0
  91. package/src/adapter/EventCollector/EventCollectorChannel_SQS_Runtime.res.mjs +89 -0
  92. package/src/adapter/EventLog/EventLogStorage.res +3 -0
  93. package/src/adapter/EventLog/EventLogStorage.res.mjs +15 -0
  94. package/src/adapter/EventLog/EventLogStorage_DynamoDb.res +25 -0
  95. package/src/adapter/EventLog/EventLogStorage_DynamoDb.res.mjs +34 -0
  96. package/src/adapter/EventLog/EventLogStorage_DynamoDbStream.res +26 -0
  97. package/src/adapter/EventLog/EventLogStorage_DynamoDbStream.res.mjs +35 -0
  98. package/src/adapter/EventLog/EventLogStorage_DynamoDb_Runtime.res +121 -0
  99. package/src/adapter/EventLog/EventLogStorage_DynamoDb_Runtime.res.mjs +137 -0
  100. package/src/adapter/EventLogSubscription/EventLogSubscription_AppSync.res +265 -0
  101. package/src/adapter/EventLogSubscription/EventLogSubscription_AppSync.res.mjs +185 -0
  102. package/src/adapter/EventTopic/EventTopicPublisher.res +6 -0
  103. package/src/adapter/EventTopic/EventTopicPublisher.res.mjs +21 -0
  104. package/src/adapter/EventTopic/EventTopicPublisher_DynamoDbStream.res +25 -0
  105. package/src/adapter/EventTopic/EventTopicPublisher_DynamoDbStream.res.mjs +28 -0
  106. package/src/adapter/EventTopic/EventTopicPublisher_SNS.res +40 -0
  107. package/src/adapter/EventTopic/EventTopicPublisher_SNS.res.mjs +39 -0
  108. package/src/adapter/EventTopic/EventTopicPublisher_SNS_FIFO.res +39 -0
  109. package/src/adapter/EventTopic/EventTopicPublisher_SNS_FIFO.res.mjs +38 -0
  110. package/src/adapter/EventTopic/EventTopicPublisher_SNS_Runtime.res +5 -0
  111. package/src/adapter/EventTopic/EventTopicPublisher_SNS_Runtime.res.mjs +18 -0
  112. package/src/adapter/Mcp/MCP_Lambda.res +502 -0
  113. package/src/adapter/Mcp/MCP_Lambda.res.mjs +289 -0
  114. package/src/adapter/QueryDb/NodeResolver_AppSync.res +71 -0
  115. package/src/adapter/QueryDb/NodeResolver_AppSync.res.mjs +44 -0
  116. package/src/adapter/QueryDb/QueryDbResolvers.res +2 -0
  117. package/src/adapter/QueryDb/QueryDbResolvers.res.mjs +12 -0
  118. package/src/adapter/QueryDb/QueryDbResolvers_AppSync.res +434 -0
  119. package/src/adapter/QueryDb/QueryDbResolvers_AppSync.res.mjs +243 -0
  120. package/src/adapter/QueryDb/QueryDbResolvers_AppSync_NoOp.res +21 -0
  121. package/src/adapter/QueryDb/QueryDbResolvers_AppSync_NoOp.res.mjs +14 -0
  122. package/src/adapter/QueryDb/QueryDbResolvers_NoOp.res +21 -0
  123. package/src/adapter/QueryDb/QueryDbResolvers_NoOp.res.mjs +14 -0
  124. package/src/adapter/QueryDb/QueryDbStorage.res +5 -0
  125. package/src/adapter/QueryDb/QueryDbStorage.res.mjs +18 -0
  126. package/src/adapter/QueryDb/QueryDbStorage_DynamoDb.res +115 -0
  127. package/src/adapter/QueryDb/QueryDbStorage_DynamoDb.res.mjs +100 -0
  128. package/src/adapter/QueryDb/QueryDbStorage_DynamoDbStream.res +52 -0
  129. package/src/adapter/QueryDb/QueryDbStorage_DynamoDbStream.res.mjs +38 -0
  130. package/src/adapter/QueryDb/QueryDbStorage_DynamoDb_Runtime.res +271 -0
  131. package/src/adapter/QueryDb/QueryDbStorage_DynamoDb_Runtime.res.mjs +306 -0
  132. package/src/adapter/QueryDb/QueryInterceptor_Lambda.res +20 -0
  133. package/src/adapter/QueryDb/QueryInterceptor_Lambda.res.mjs +22 -0
  134. package/src/adapter/QueryEngine/QueryEngine.res +3 -0
  135. package/src/adapter/QueryEngine/QueryEngine.res.mjs +12 -0
  136. package/src/adapter/QueryEngine/QueryEngine_DynamoDb.res +184 -0
  137. package/src/adapter/QueryEngine/QueryEngine_DynamoDb.res.mjs +221 -0
  138. package/src/adapter/Runtime/AdminEventCollectorEntryPoint.mjs +879 -0
  139. package/src/adapter/Runtime/AggregateEntryPoint.mjs +313 -0
  140. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res +327 -0
  141. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res.mjs +239 -0
  142. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro_Async.res +331 -0
  143. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro_Async.res.mjs +240 -0
  144. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res +247 -0
  145. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res.mjs +185 -0
  146. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate_Async.res +244 -0
  147. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate_Async.res.mjs +185 -0
  148. package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res +347 -0
  149. package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res.mjs +244 -0
  150. package/src/adapter/Runtime/AggregateRuntime_Builder_Single_Async.res +285 -0
  151. package/src/adapter/Runtime/AggregateRuntime_Builder_Single_Async.res.mjs +212 -0
  152. package/src/adapter/Runtime/AutomationSliceEntryPoint.mjs +124 -0
  153. package/src/adapter/Runtime/AutomationSliceRuntime_Builder_Single.res +187 -0
  154. package/src/adapter/Runtime/AutomationSliceRuntime_Builder_Single.res.mjs +147 -0
  155. package/src/adapter/Runtime/CounterEntryPoint.mjs +91 -0
  156. package/src/adapter/Runtime/DcbCommandTopicEntryPoint.mjs +265 -0
  157. package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res +122 -0
  158. package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res.mjs +89 -0
  159. package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res +193 -0
  160. package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res.mjs +137 -0
  161. package/src/adapter/Runtime/EventMapperEntryPoint.mjs +97 -0
  162. package/src/adapter/Runtime/ExtensionPointEntryPoint.mjs +101 -0
  163. package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res +83 -0
  164. package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res.mjs +59 -0
  165. package/src/adapter/Runtime/HandlerFactoryHelpers.mjs +142 -0
  166. package/src/adapter/Runtime/HeartbeatEntryPoint.mjs +38 -0
  167. package/src/adapter/Runtime/PluginExtensionPointEntryPoint.mjs +137 -0
  168. package/src/adapter/Runtime/ReadModelEntryPoint.mjs +143 -0
  169. package/src/adapter/Runtime/RuntimeEnvironment.res +1 -0
  170. package/src/adapter/Runtime/RuntimeEnvironment.res.mjs +9 -0
  171. package/src/adapter/Runtime/RuntimeEnvironment_Lambda.res +254 -0
  172. package/src/adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs +169 -0
  173. package/src/adapter/Runtime/SideEffectEntryPoint.mjs +81 -0
  174. package/src/adapter/Runtime/SideEffectHandlerRuntime_Builder_Single.res +178 -0
  175. package/src/adapter/Runtime/SideEffectHandlerRuntime_Builder_Single.res.mjs +129 -0
  176. package/src/adapter/Runtime/StateChangeSliceRuntime_Builder_Single.res +166 -0
  177. package/src/adapter/Runtime/StateChangeSliceRuntime_Builder_Single.res.mjs +87 -0
  178. package/src/adapter/Runtime/StateViewSliceEntryPoint.mjs +136 -0
  179. package/src/adapter/Runtime/StateViewSliceRuntime_Builder_Single.res +344 -0
  180. package/src/adapter/Runtime/StateViewSliceRuntime_Builder_Single.res.mjs +242 -0
  181. package/src/adapter/Runtime/TaskBucketEntryPoint.mjs +150 -0
  182. package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res +123 -0
  183. package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res.mjs +74 -0
  184. package/src/adapter/ScheduledPublisher/ScheduledPublisher.res +2 -0
  185. package/src/adapter/ScheduledPublisher/ScheduledPublisher.res.mjs +12 -0
  186. package/src/adapter/ScheduledPublisher/ScheduledPublisher_CloudWatchEvents.res +54 -0
  187. package/src/adapter/ScheduledPublisher/ScheduledPublisher_CloudWatchEvents.res.mjs +41 -0
  188. package/src/adapter/ScheduledPublisher/ScheduledPublisher_CloudWatchEvents_Runtime.res +97 -0
  189. package/src/adapter/ScheduledPublisher/ScheduledPublisher_CloudWatchEvents_Runtime.res.mjs +85 -0
  190. package/src/adapter/StateTopic/StateTopic_AppSync.res +418 -0
  191. package/src/adapter/StateTopic/StateTopic_AppSync.res.mjs +295 -0
  192. package/src/adapter/Task/TaskBucket.res +1 -0
  193. package/src/adapter/Task/TaskBucket.res.mjs +9 -0
  194. package/src/adapter/Task/TaskBucket_S3.res +157 -0
  195. package/src/adapter/Task/TaskBucket_S3.res.mjs +108 -0
  196. package/src/adapter/Task/TaskBucket_S3_Runtime.res +11 -0
  197. package/src/adapter/Task/TaskBucket_S3_Runtime.res.mjs +15 -0
  198. package/src/components/Aggregate_Builder.res +1 -0
  199. package/src/components/Aggregate_Builder.res.mjs +25 -0
  200. package/src/components/Aggregate_Builder_Micro.res +63 -0
  201. package/src/components/Aggregate_Builder_Micro.res.mjs +80 -0
  202. package/src/components/Aggregate_Builder_NoResolver.res +61 -0
  203. package/src/components/Aggregate_Builder_NoResolver.res.mjs +80 -0
  204. package/src/components/Aggregate_Builder_PerAggregate.res +57 -0
  205. package/src/components/Aggregate_Builder_PerAggregate.res.mjs +80 -0
  206. package/src/components/Aggregate_Builder_Single.res +59 -0
  207. package/src/components/Aggregate_Builder_Single.res.mjs +80 -0
  208. package/src/components/Aggregate_Builder_Single_Async.res +59 -0
  209. package/src/components/Aggregate_Builder_Single_Async.res.mjs +80 -0
  210. package/src/components/Api/AppSync_Adapter.res +500 -0
  211. package/src/components/Api/AppSync_Adapter.res.mjs +396 -0
  212. package/src/components/AutomationSlice_Builder.res +52 -0
  213. package/src/components/AutomationSlice_Builder.res.mjs +72 -0
  214. package/src/components/AutomationSlice_Builder_Bundled.res.mjs +70 -0
  215. package/src/components/Counter_Builder.res +10 -0
  216. package/src/components/Counter_Builder.res.mjs +16 -0
  217. package/src/components/DataCleaner.res +170 -0
  218. package/src/components/DataCleaner.res.mjs +2 -0
  219. package/src/components/DcbEventLog_Builder.res +8 -0
  220. package/src/components/DcbEventLog_Builder.res.mjs +14 -0
  221. package/src/components/ExtensionPoint_Builder.res +16 -0
  222. package/src/components/ExtensionPoint_Builder.res.mjs +37 -0
  223. package/src/components/ForeignReadModel_Builder.res +19 -0
  224. package/src/components/ForeignReadModel_Builder.res.mjs +48 -0
  225. package/src/components/InboundTranslationSlice_Builder.res +25 -0
  226. package/src/components/InboundTranslationSlice_Builder.res.mjs +31 -0
  227. package/src/components/OutboundTranslationSlice_Builder.res +60 -0
  228. package/src/components/OutboundTranslationSlice_Builder.res.mjs +76 -0
  229. package/src/components/OutboundTranslationSlice_Builder_Bundled.res.mjs +75 -0
  230. package/src/components/Plugin.res +29 -0
  231. package/src/components/Plugin.res.mjs +63 -0
  232. package/src/components/ReadModel_Builder.res +1 -0
  233. package/src/components/ReadModel_Builder.res.mjs +19 -0
  234. package/src/components/ReadModel_Builder_NoResolver.res +55 -0
  235. package/src/components/ReadModel_Builder_NoResolver.res.mjs +64 -0
  236. package/src/components/ReadModel_Builder_NoResolver_Stream.res +60 -0
  237. package/src/components/ReadModel_Builder_NoResolver_Stream.res.mjs +64 -0
  238. package/src/components/ReadModel_Builder_PerReadModel.res +53 -0
  239. package/src/components/ReadModel_Builder_PerReadModel.res.mjs +66 -0
  240. package/src/components/ReadModel_Builder_Single.res +52 -0
  241. package/src/components/ReadModel_Builder_Single.res.mjs +66 -0
  242. package/src/components/ReadModel_Builder_Single_Stream.res +60 -0
  243. package/src/components/ReadModel_Builder_Single_Stream.res.mjs +66 -0
  244. package/src/components/Scheduler.res +1 -0
  245. package/src/components/Scheduler.res.mjs +13 -0
  246. package/src/components/SideEffectHandler.res +1 -0
  247. package/src/components/SideEffectHandler.res.mjs +19 -0
  248. package/src/components/SideEffectHandler_PerSideEffectHandler.res +13 -0
  249. package/src/components/SideEffectHandler_PerSideEffectHandler.res.mjs +52 -0
  250. package/src/components/SideEffectHandler_Single.res +54 -0
  251. package/src/components/SideEffectHandler_Single.res.mjs +60 -0
  252. package/src/components/StateChangeSlice_Builder.res +17 -0
  253. package/src/components/StateChangeSlice_Builder.res.mjs +23 -0
  254. package/src/components/StateViewSlice_Builder.res +46 -0
  255. package/src/components/StateViewSlice_Builder.res.mjs +68 -0
  256. package/src/components/StateViewSlice_Builder_Bundled.res.mjs +69 -0
  257. package/src/components/StateViewSlice_Builder_Stream.res +50 -0
  258. package/src/components/StateViewSlice_Builder_Stream.res.mjs +68 -0
  259. package/src/components/Task_Builder.res +1 -0
  260. package/src/components/Task_Builder.res.mjs +28 -0
  261. package/src/components/Task_Builder_PerBucket.res +22 -0
  262. package/src/components/Task_Builder_PerBucket.res.mjs +63 -0
  263. package/src/components/Vpc.res +214 -0
  264. package/src/components/Vpc.res.mjs +117 -0
  265. package/src/components/Vpc.resi +22 -0
  266. package/src/errors/AppSync_Error.res +36 -0
  267. package/src/errors/AppSync_Error.res.mjs +38 -0
  268. package/src/errors/Cognito_Error.res +36 -0
  269. package/src/errors/Cognito_Error.res.mjs +38 -0
  270. package/src/errors/DynamoDb_Error.res +75 -0
  271. package/src/errors/DynamoDb_Error.res.mjs +86 -0
  272. package/src/errors/Kinesis_Error.res +36 -0
  273. package/src/errors/Kinesis_Error.res.mjs +38 -0
  274. package/src/errors/SNS_Error.res +34 -0
  275. package/src/errors/SNS_Error.res.mjs +38 -0
  276. package/src/errors/SQS_Error.res +40 -0
  277. package/src/errors/SQS_Error.res.mjs +41 -0
  278. package/src/plugin/cloner/ClonerRunner.res +1 -0
  279. package/src/plugin/cloner/ClonerRunner.res.mjs +9 -0
  280. package/src/plugin/cloner/ClonerRunner_Fargate.res +362 -0
  281. package/src/plugin/cloner/ClonerRunner_Fargate.res.mjs +246 -0
  282. package/src/plugin/cloner/ClonerRunner_Fargate_Runtime.res +42 -0
  283. package/src/plugin/cloner/ClonerRunner_Fargate_Runtime.res.mjs +45 -0
  284. package/src/plugin/heartbeat/HeartbeatRunner.res +1 -0
  285. package/src/plugin/heartbeat/HeartbeatRunner.res.mjs +9 -0
  286. package/src/plugin/heartbeat/HeartbeatRunner_CloudWatchEvents.res +96 -0
  287. package/src/plugin/heartbeat/HeartbeatRunner_CloudWatchEvents.res.mjs +69 -0
  288. package/src/plugin/runtime/PluginExtensionPointRuntime_Builder.res +115 -0
  289. package/src/plugin/runtime/PluginExtensionPointRuntime_Builder.res.mjs +88 -0
  290. package/src/plugin/runtime/PluginRuntimeOperations.res +5 -0
  291. package/src/plugin/runtime/PluginRuntimeOperations.res.mjs +14 -0
  292. package/src/plugin/runtime/PluginRuntime_Builder.res +769 -0
  293. package/src/plugin/runtime/PluginRuntime_Builder.res.mjs +464 -0
  294. package/src/plugin/runtime/Util_PluginMessage_Runtime.res +13 -0
  295. package/src/plugin/runtime/Util_PluginMessage_Runtime.res.mjs +19 -0
  296. package/src/plugin/stack/Plugin_ExtensionPoint_Builder.res +28 -0
  297. package/src/plugin/stack/Plugin_ExtensionPoint_Builder.res.mjs +67 -0
  298. package/src/plugin/stack/Plugin_Stack.res +439 -0
  299. package/src/plugin/stack/Plugin_Stack.res.mjs +263 -0
  300. package/src/util/Util.res +29 -0
  301. package/src/util/Util.res.mjs +93 -0
  302. package/src/util/Util_AppSync.res +36 -0
  303. package/src/util/Util_AppSync.res.mjs +35 -0
  304. package/src/util/Util_AppSync_Caller.res +213 -0
  305. package/src/util/Util_AppSync_Caller.res.mjs +170 -0
  306. package/src/util/Util_Bundle.res +255 -0
  307. package/src/util/Util_Bundle.res.mjs +179 -0
  308. package/src/util/Util_Cloudwatch.res +14 -0
  309. package/src/util/Util_Cloudwatch.res.mjs +19 -0
  310. package/src/util/Util_CognitoGroupUser.res +39 -0
  311. package/src/util/Util_CognitoGroupUser.res.mjs +32 -0
  312. package/src/util/Util_CognitoGroupUser_Runtime.res +65 -0
  313. package/src/util/Util_CognitoGroupUser_Runtime.res.mjs +50 -0
  314. package/src/util/Util_Cognito_Runtime.res +52 -0
  315. package/src/util/Util_Cognito_Runtime.res.mjs +35 -0
  316. package/src/util/Util_DeadLetterQueue.res +154 -0
  317. package/src/util/Util_DeadLetterQueue.res.mjs +158 -0
  318. package/src/util/Util_DynamoDb.res +210 -0
  319. package/src/util/Util_DynamoDb.res.mjs +218 -0
  320. package/src/util/Util_DynamoDbStream.res +138 -0
  321. package/src/util/Util_DynamoDbStream.res.mjs +134 -0
  322. package/src/util/Util_DynamoDbStream_Runtime.res +94 -0
  323. package/src/util/Util_DynamoDbStream_Runtime.res.mjs +131 -0
  324. package/src/util/Util_DynamoDb_Runtime.res +216 -0
  325. package/src/util/Util_DynamoDb_Runtime.res.mjs +257 -0
  326. package/src/util/Util_DynamoDb_TableManager.res +23 -0
  327. package/src/util/Util_DynamoDb_TableManager.res.mjs +35 -0
  328. package/src/util/Util_DynamoDb_TableManager.resi +3 -0
  329. package/src/util/Util_Env.res +5 -0
  330. package/src/util/Util_Env.res.mjs +2 -0
  331. package/src/util/Util_EventSourceMapping.res +49 -0
  332. package/src/util/Util_EventSourceMapping.res.mjs +32 -0
  333. package/src/util/Util_HostUiDomain.res +28 -0
  334. package/src/util/Util_HostUiDomain.res.mjs +26 -0
  335. package/src/util/Util_IAM_Role.res +14 -0
  336. package/src/util/Util_IAM_Role.res.mjs +28 -0
  337. package/src/util/Util_Kinesis_Runtime.res +20 -0
  338. package/src/util/Util_Kinesis_Runtime.res.mjs +24 -0
  339. package/src/util/Util_Lambda.res +39 -0
  340. package/src/util/Util_Lambda.res.mjs +45 -0
  341. package/src/util/Util_LocalConfig.res +119 -0
  342. package/src/util/Util_LocalConfig.res.mjs +112 -0
  343. package/src/util/Util_ResourceNaming.res +15 -0
  344. package/src/util/Util_ResourceNaming.res.mjs +26 -0
  345. package/src/util/Util_S3.res +17 -0
  346. package/src/util/Util_S3.res.mjs +30 -0
  347. package/src/util/Util_S3_Runtime.res +11 -0
  348. package/src/util/Util_S3_Runtime.res.mjs +15 -0
  349. package/src/util/Util_SNS.res +33 -0
  350. package/src/util/Util_SNS.res.mjs +50 -0
  351. package/src/util/Util_SNS_FIFO.res +21 -0
  352. package/src/util/Util_SNS_FIFO.res.mjs +27 -0
  353. package/src/util/Util_SNS_Runtime.res +33 -0
  354. package/src/util/Util_SNS_Runtime.res.mjs +27 -0
  355. package/src/util/Util_SQS.res +70 -0
  356. package/src/util/Util_SQS.res.mjs +83 -0
  357. package/src/util/Util_SQS_FIFO.res +16 -0
  358. package/src/util/Util_SQS_FIFO.res.mjs +28 -0
  359. package/src/util/Util_SQS_Runtime.res +169 -0
  360. package/src/util/Util_SQS_Runtime.res.mjs +150 -0
  361. package/src/util/Util_SesPolicy_Runtime.res +54 -0
  362. package/src/util/Util_SesPolicy_Runtime.res.mjs +55 -0
  363. package/src/util/Util_StaticBundle.res +124 -0
  364. package/src/util/Util_StaticBundle.res.mjs +132 -0
  365. package/src/util/Util_Vpc.res +22 -0
  366. package/src/util/Util_Vpc.res.mjs +27 -0
  367. package/tests/AppSync_AdapterTest.res +396 -0
  368. package/tests/AppSync_AdapterTest.res.mjs +326 -0
  369. package/tests/AppSync_Resolver_RetryingTest.res +59 -0
  370. package/tests/AppSync_Resolver_RetryingTest.res.mjs +66 -0
  371. package/tests/Auth_CognitoTest.res +203 -0
  372. package/tests/Auth_CognitoTest.res.mjs +248 -0
  373. package/tests/DcbEventLogStorage_DynamoDb_RuntimeTest.res +602 -0
  374. package/tests/DcbEventLogStorage_DynamoDb_RuntimeTest.res.mjs +742 -0
  375. package/tests/EventLogStorage_DynamoDb_RuntimeTest.res +57 -0
  376. package/tests/EventLogStorage_DynamoDb_RuntimeTest.res.mjs +68 -0
  377. package/tests/MCP_LambdaTest.res +101 -0
  378. package/tests/MCP_LambdaTest.res.mjs +56 -0
  379. package/tests/Util_HostUiDomainTest.res +90 -0
  380. package/tests/Util_HostUiDomainTest.res.mjs +50 -0
  381. package/tests/Util_SQS_RuntimeTest.res +46 -0
  382. package/tests/Util_SQS_RuntimeTest.res.mjs +45 -0
  383. package/tests/Util_StaticBundleTest.res +136 -0
  384. package/tests/Util_StaticBundleTest.res.mjs +149 -0
  385. package/tests/integration/DcbCommandTopicEntryPoint_IntegrationTest.res +101 -0
  386. package/tests/integration/DcbCommandTopicEntryPoint_IntegrationTest.res.mjs +91 -0
  387. package/tests/integration/DcbEventLogStorage_DynamoDb_IntegrationTest.res +315 -0
  388. package/tests/integration/DcbEventLogStorage_DynamoDb_IntegrationTest.res.mjs +435 -0
  389. package/tests/integration/DcbIntegrationHarness.res +102 -0
  390. package/tests/integration/DcbIntegrationHarness.res.mjs +163 -0
  391. package/tests/integration/EpTestSlice.res +28 -0
  392. package/tests/integration/EpTestSlice.res.mjs +43 -0
  393. package/tests/integration/EpTestSliceBehavior.res +18 -0
  394. package/tests/integration/EpTestSliceBehavior.res.mjs +35 -0
@@ -0,0 +1,170 @@
1
+ /* let mode = #production // opposed to `debug
2
+ open PulumiAws.Lambda
3
+ open ReventlessInfra.Adapter
4
+
5
+ type tableConfig = {name: string, id: string, sort: option<string>}
6
+ type event = {tables: nullable<array<tableConfig>>}
7
+
8
+ let promiseToResult: promise<'a> => promise<result<'a, 'b>> = async p =>
9
+ switch await p {
10
+ | res => Ok(res)
11
+ | exception err => Error(err)
12
+ }
13
+
14
+ let handleDeleteResult = result => {
15
+ if mode == #debug {
16
+ Console.log("Handle delete result")
17
+ }
18
+ // Belt.Result removed — Ok/Error are global in RescriptCore
19
+ switch result {
20
+ | Error(err) =>
21
+ Console.log2("Couldn't delete item:", err)
22
+ Error("Couldn't delete item.")
23
+ | Ok(_x) => Ok()
24
+ }
25
+ }
26
+
27
+ let deleteAllItems = async (items: array<dict<string>>, tableConfig: tableConfig): unit =>
28
+ switch await items
29
+ ->Array.map(async (item: dict<string>) => {
30
+ let id = item->Dict.get(tableConfig.id)
31
+ let sort = tableConfig.sort->Option.flatMap(sortField => item->Dict.get(sortField))
32
+ switch (id, sort) {
33
+ | (Some(id), Some(sort)) =>
34
+ switch await AwsSdk.DynamoDb.DocumentClient.deleteByIdSort(
35
+ ~tableName=tableConfig.name,
36
+ ~id,
37
+ ~sortField=tableConfig.sort->Option.getExn,
38
+ ~sortKey=sort,
39
+ )->promiseToResult {
40
+ | res => res->handleDeleteResult
41
+ }
42
+ | (Some(id), None) =>
43
+ switch await AwsSdk.DynamoDb.DocumentClient.deleteById(
44
+ ~tableName=tableConfig.name,
45
+ ~id,
46
+ )->promiseToResult {
47
+ | res => res->handleDeleteResult
48
+ }
49
+ //Promise.handlePromise(handeDeleteResult)
50
+ | _ => Error("No valid Config found!")
51
+ }
52
+ })
53
+ ->Promise.all {
54
+ | result =>
55
+ result
56
+ ->Array.reduce(0, (state, item) =>
57
+ switch item {
58
+ | Ok(_) => state + 1
59
+ | Error(_) => state
60
+ }
61
+ )
62
+ ->Console.log3(
63
+ "Deleted",
64
+ _,
65
+ "of " ++
66
+ (result->Array.length->Int.toString ++
67
+ (" items in table " ++ tableConfig.name)),
68
+ )
69
+ }
70
+
71
+ let handleScanResult = async (
72
+ tableConfig: tableConfig,
73
+ scanResult: result<AwsSdk.DynamoDb.DocumentClient.QueryCommand.output, 'a>,
74
+ ): result<int, 'a> => {
75
+ if mode == #debug {
76
+ Console.log("Clean table " ++ tableConfig.name)
77
+ }
78
+ switch scanResult {
79
+ | Ok(scanResult) =>
80
+ if mode == #debug {
81
+ Console.log2("Items in scan-result:", scanResult.items->Array.length)
82
+ }
83
+ let _ = await scanResult.items->deleteAllItems(tableConfig)
84
+ Ok(-1)
85
+ | Error(error) =>
86
+ if mode == #debug {
87
+ Console.log2("Couldn't scan table " ++ (tableConfig.name ++ ":"), error)
88
+ }
89
+ Error(error)
90
+ }
91
+ }
92
+
93
+ let scanTableAndClean = async (tableConfig: tableConfig): promise<
94
+ result<string, string>,
95
+ > => {
96
+ if mode == #debug {
97
+ Console.log("Scan " ++ tableConfig.name)
98
+ }
99
+
100
+ let idKey = tableConfig.id
101
+ let (projectionExpression, expressionAttributeNames) = switch tableConfig.sort {
102
+ | Some(sortKey) => (
103
+ "#" ++ (idKey ++ (",#" ++ sortKey)),
104
+ [("#" ++ idKey, idKey), ("#" ++ sortKey, sortKey)]->Dict.fromArray,
105
+ )
106
+ | None => ("#" ++ idKey, [("#" ++ idKey, idKey)]->Dict.fromArray)
107
+ }
108
+
109
+ switch await AwsSdk.DynamoDb.DocumentClient.scan(
110
+ ~params=AwsSdk.DynamoDb.DocumentClient.ScanInput.make(
111
+ ~_TableName=tableConfig.name,
112
+ ~_ProjectionExpression=projectionExpression,
113
+ ~_ExpressionAttributeNames=expressionAttributeNames,
114
+ (),
115
+ ),
116
+ )->promiseToResult {
117
+ | res => {
118
+ let scanResult = await handleScanResult(tableConfig, res)
119
+ let deletedItemsCount = switch scanResult {
120
+ | Ok(deletedItemsCount) =>
121
+ Ok(tableConfig.name ++ (" [" ++ (Int.toString(deletedItemsCount) ++ "]")))
122
+ | Error(_err) => Error(tableConfig.name ++ " [ERROR]")
123
+ }
124
+ deletedItemsCount->Promise.resolve
125
+ }
126
+ }
127
+ }
128
+
129
+ let toTableConfig: resource => tableConfig = resource => {
130
+ let name = resource.name->Pulumi.Output.get
131
+ let (id, sort) = resource->Util_DynamoDb_Runtime.keysFromResource
132
+
133
+ {name, id, sort}
134
+ }
135
+
136
+ let cleanerFn = async (tablesToClean, _event, _context) =>
137
+ switch tablesToClean->Array.map(toTableConfig) {
138
+ | tableConfigs if tableConfigs->Array.length == 0 => "No tables to clean."
139
+ | tableConfigs =>
140
+ switch await tableConfigs->Array.map(scanTableAndClean)->Promise.all {
141
+ | results => {
142
+ let summary = results->Array.reduce(Promise.resolve(""), async (state, result) =>
143
+ (await state) ++
144
+ (" | " ++
145
+ switch await result {
146
+ | Ok(successMsg) => successMsg
147
+ | Error(errorMsg) => errorMsg
148
+ })
149
+ )
150
+ "Cleaned tables " ++ (await summary)
151
+ }
152
+ }
153
+ }
154
+
155
+ let stackName = prefix =>
156
+ switch prefix {
157
+ | Some(prefix) => prefix->String.replace("_", "-") ++ "-"
158
+ | None => ""
159
+ } ++
160
+ (Pulumi.Pulumi.getProjectName() ++
161
+ ("-" ++ Pulumi.Pulumi.getStackName()))
162
+
163
+ let make = (~prefix: option<string>, ~tablesToClean: array<resource>) => {
164
+ open CallbackFunction
165
+ make(
166
+ ~name="DataCleaner-" ++ stackName(prefix),
167
+ ~args=Args.make(~callback=cleanerFn(tablesToClean, ...), ~memorySize=1024->Pulumi.Input.make),
168
+ )
169
+ }
170
+ */
@@ -0,0 +1,2 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+ /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */
@@ -0,0 +1,8 @@
1
+ // AWS DcbEventLog builder — no longer used directly.
2
+ // The DcbEventLog is created internally by Dcb_Builder via ReventlessCore.DcbEventLog_Builder.
3
+ // This module is retained for potential future use.
4
+
5
+ include ReventlessCore.DcbEventLog_Builder.Make(
6
+ DcbEventLogStorage.DynamoDb,
7
+ EventTopicPublisher.DynamoDbStream,
8
+ )
@@ -0,0 +1,14 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as DcbEventLog_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/DcbEventLog/DcbEventLog_Builder.res.mjs";
4
+ import * as DcbEventLogStorage_DynamoDb$ReventlessAws from "../adapter/DcbEventLog/DcbEventLogStorage_DynamoDb.res.mjs";
5
+ import * as EventTopicPublisher_DynamoDbStream$ReventlessAws from "../adapter/EventTopic/EventTopicPublisher_DynamoDbStream.res.mjs";
6
+
7
+ let include = DcbEventLog_Builder$ReventlessCore.Make(DcbEventLogStorage_DynamoDb$ReventlessAws)(EventTopicPublisher_DynamoDbStream$ReventlessAws);
8
+
9
+ let make = include.make;
10
+
11
+ export {
12
+ make,
13
+ }
14
+ /* include Not a pure module */
@@ -0,0 +1,16 @@
1
+ module CommandTopicChannel = CommandTopicChannel.SQS_Sync
2
+ module RuntimeEnvironment = RuntimeEnvironment.Lambda
3
+ module ExtensionPointRuntimeBuilder = ExtensionPointRuntime_Builder_PerExtensionPoint
4
+
5
+ module Make = (
6
+ Spec: ReventlessInfra.ExtensionPointMapping.Spec,
7
+ Mappings: ReventlessInfra.ExtensionPoint.Mappings with module Spec := Spec,
8
+ ): ReventlessInfra.ExtensionPoint.T =>
9
+ ReventlessCore.ExtensionPoint_Builder.Make(
10
+ Spec,
11
+ Mappings,
12
+ RuntimeEnvironment,
13
+ CommandTopicChannel,
14
+ EventTopicPublisher.SNS,
15
+ ExtensionPointRuntimeBuilder,
16
+ )
@@ -0,0 +1,37 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as EventTopicPublisher_SNS$ReventlessAws from "../adapter/EventTopic/EventTopicPublisher_SNS.res.mjs";
4
+ import * as ExtensionPoint_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/ExtensionPoint/ExtensionPoint_Builder.res.mjs";
5
+ import * as RuntimeEnvironment_Lambda$ReventlessAws from "../adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs";
6
+ import * as CommandTopicChannel_SQS_Sync$ReventlessAws from "../adapter/CommandTopic/CommandTopicChannel_SQS_Sync.res.mjs";
7
+ import * as ExtensionPointRuntime_Builder_PerExtensionPoint$ReventlessAws from "../adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res.mjs";
8
+
9
+ function Make(Spec) {
10
+ return Mappings => ExtensionPoint_Builder$ReventlessCore.Make(Spec)(Mappings)({
11
+ make: RuntimeEnvironment_Lambda$ReventlessAws.make,
12
+ groupBySource: RuntimeEnvironment_Lambda$ReventlessAws.groupBySource,
13
+ extractCorrelationId: RuntimeEnvironment_Lambda$ReventlessAws.extractCorrelationId,
14
+ asEventHandler: prim => prim,
15
+ asEffectHandler: prim => prim
16
+ })({
17
+ make: CommandTopicChannel_SQS_Sync$ReventlessAws.make
18
+ })({
19
+ make: EventTopicPublisher_SNS$ReventlessAws.make
20
+ })({
21
+ forCommandTopic: ExtensionPointRuntime_Builder_PerExtensionPoint$ReventlessAws.forCommandTopic
22
+ });
23
+ }
24
+
25
+ let CommandTopicChannel;
26
+
27
+ let RuntimeEnvironment;
28
+
29
+ let ExtensionPointRuntimeBuilder;
30
+
31
+ export {
32
+ CommandTopicChannel,
33
+ RuntimeEnvironment,
34
+ ExtensionPointRuntimeBuilder,
35
+ Make,
36
+ }
37
+ /* EventTopicPublisher_SNS-ReventlessAws Not a pure module */
@@ -0,0 +1,19 @@
1
+ module EventCollectorChannel = EventCollectorChannel.SQS
2
+ module RuntimeEnvironment = RuntimeEnvironment.Lambda
3
+ module EventCollectorRuntimeBuilder = ReventlessCore.EventCollectorRuntime_Builder_PerEventCollector.Make(
4
+ RuntimeEnvironment,
5
+ EventCollectorChannel,
6
+ )
7
+
8
+ module Make = (
9
+ Spec: Reventless.ReadModel.Spec,
10
+ Mappings: Reventless.Projection.Mappings with module Target := Spec,
11
+ ) => ReventlessCore.ReadModel_Builder.Make(
12
+ Spec,
13
+ Mappings,
14
+ RuntimeEnvironment,
15
+ QueryDbStorage.DynamoDb,
16
+ QueryDbResolvers.AppSync,
17
+ EventCollectorChannel,
18
+ EventCollectorRuntimeBuilder,
19
+ )
@@ -0,0 +1,48 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as ReadModel_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/ReadModel/ReadModel_Builder.res.mjs";
4
+ import * as QueryDbStorage_DynamoDb$ReventlessAws from "../adapter/QueryDb/QueryDbStorage_DynamoDb.res.mjs";
5
+ import * as QueryDbResolvers_AppSync$ReventlessAws from "../adapter/QueryDb/QueryDbResolvers_AppSync.res.mjs";
6
+ import * as EventCollectorChannel_SQS$ReventlessAws from "../adapter/EventCollector/EventCollectorChannel_SQS.res.mjs";
7
+ import * as RuntimeEnvironment_Lambda$ReventlessAws from "../adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs";
8
+ import * as EventCollectorRuntime_Builder_PerEventCollector$ReventlessCore from "@reventlessdev/reventless-core/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res.mjs";
9
+
10
+ let EventCollectorRuntimeBuilder = EventCollectorRuntime_Builder_PerEventCollector$ReventlessCore.Make({
11
+ make: RuntimeEnvironment_Lambda$ReventlessAws.make,
12
+ groupBySource: RuntimeEnvironment_Lambda$ReventlessAws.groupBySource,
13
+ extractCorrelationId: RuntimeEnvironment_Lambda$ReventlessAws.extractCorrelationId,
14
+ asEventHandler: prim => prim,
15
+ asEffectHandler: prim => prim
16
+ })({
17
+ make: EventCollectorChannel_SQS$ReventlessAws.make,
18
+ connect: EventCollectorChannel_SQS$ReventlessAws.connect
19
+ });
20
+
21
+ function Make(Spec) {
22
+ return Mappings => ReadModel_Builder$ReventlessCore.Make(Spec)(Mappings)({
23
+ make: RuntimeEnvironment_Lambda$ReventlessAws.make,
24
+ groupBySource: RuntimeEnvironment_Lambda$ReventlessAws.groupBySource,
25
+ extractCorrelationId: RuntimeEnvironment_Lambda$ReventlessAws.extractCorrelationId,
26
+ asEventHandler: prim => prim,
27
+ asEffectHandler: prim => prim
28
+ })({
29
+ make: QueryDbStorage_DynamoDb$ReventlessAws.make
30
+ })({
31
+ make: QueryDbResolvers_AppSync$ReventlessAws.make
32
+ })({
33
+ make: EventCollectorChannel_SQS$ReventlessAws.make,
34
+ connect: EventCollectorChannel_SQS$ReventlessAws.connect
35
+ })(EventCollectorRuntimeBuilder);
36
+ }
37
+
38
+ let EventCollectorChannel;
39
+
40
+ let RuntimeEnvironment;
41
+
42
+ export {
43
+ EventCollectorChannel,
44
+ RuntimeEnvironment,
45
+ EventCollectorRuntimeBuilder,
46
+ Make,
47
+ }
48
+ /* EventCollectorRuntimeBuilder Not a pure module */
@@ -0,0 +1,25 @@
1
+ // InboundTranslationSlice_Builder (AWS)
2
+ // Wires AWS adapters and delegates to the core ReventlessCore.InboundTranslationSlice_Builder.
3
+
4
+ module Make = (Api: {
5
+ let api: unit => Types.AppSync.api
6
+ let apiRole: unit => Types.AppSync.role
7
+ }) => {
8
+ module Inner = ReventlessCore.InboundTranslationSlice_Builder.Make(
9
+ QueryDbStorage.DynamoDb,
10
+ QueryDbResolvers.AppSync,
11
+ Api,
12
+ )
13
+
14
+ module Make = (
15
+ Spec: Reventless.InboundTranslationSlice.Spec,
16
+ Translation: Reventless.InboundTranslationSlice.Translation with module Spec := Spec,
17
+ ): (ReventlessCore.InboundTranslationSlice.T with module Spec = Spec) => {
18
+ module InnerMake = Inner.Make(Spec, Translation)
19
+ module Spec = Spec
20
+ module Translation = Translation
21
+ type component = InnerMake.component
22
+ let queryDbName = InnerMake.queryDbName
23
+ let make = InnerMake.make
24
+ }
25
+ }
@@ -0,0 +1,31 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as QueryDbStorage_DynamoDb$ReventlessAws from "../adapter/QueryDb/QueryDbStorage_DynamoDb.res.mjs";
4
+ import * as QueryDbResolvers_AppSync$ReventlessAws from "../adapter/QueryDb/QueryDbResolvers_AppSync.res.mjs";
5
+ import * as InboundTranslationSlice_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/InboundTranslationSlice/InboundTranslationSlice_Builder.res.mjs";
6
+
7
+ function Make(Api) {
8
+ let Inner = InboundTranslationSlice_Builder$ReventlessCore.Make({
9
+ make: QueryDbStorage_DynamoDb$ReventlessAws.make
10
+ })({
11
+ make: QueryDbResolvers_AppSync$ReventlessAws.make
12
+ })(Api);
13
+ let Make$1 = Spec => (Translation => {
14
+ let InnerMake = Inner.Make(Spec)(Translation);
15
+ return {
16
+ Spec: Spec,
17
+ Translation: Translation,
18
+ queryDbName: InnerMake.queryDbName,
19
+ make: InnerMake.make
20
+ };
21
+ });
22
+ return {
23
+ Inner: Inner,
24
+ Make: Make$1
25
+ };
26
+ }
27
+
28
+ export {
29
+ Make,
30
+ }
31
+ /* QueryDbStorage_DynamoDb-ReventlessAws Not a pure module */
@@ -0,0 +1,60 @@
1
+ // OutboundTranslationSlice_Builder (AWS)
2
+ // Wires AWS adapters and delegates to the core ReventlessCore.OutboundTranslationSlice_Builder.
3
+
4
+ module EventCollectorChannel = EventCollectorChannel.DynamoDbStream
5
+ module RuntimeEnvironment = RuntimeEnvironment.Lambda
6
+
7
+ module EventCollectorRuntimeBuilder = {
8
+ module Inner = AutomationSliceRuntime_Builder_Single
9
+ type context = Inner.context
10
+ type runtimeParts = Inner.runtimeParts
11
+ module EventCollectorChannel = Inner.EventCollectorChannel
12
+
13
+ let forEventCollector = Inner.forEventCollector
14
+ let finish = Inner.finish
15
+ }
16
+
17
+ module Make = (Api: {
18
+ let api: unit => Types.AppSync.api
19
+ let apiRole: unit => Types.AppSync.role
20
+ }) => {
21
+ module Inner = ReventlessCore.OutboundTranslationSlice_Builder.Make(
22
+ RuntimeEnvironment,
23
+ QueryDbStorage.DynamoDb,
24
+ QueryDbResolvers.AppSync,
25
+ EventCollectorChannel,
26
+ EventCollectorRuntimeBuilder,
27
+ Api,
28
+ )
29
+
30
+ module Make = (
31
+ Spec: Reventless.OutboundTranslationSlice.Spec,
32
+ Translation: Reventless.OutboundTranslationSlice.Translation with module Spec := Spec,
33
+ ): (ReventlessCore.OutboundTranslationSlice.T with module Spec = Spec) => {
34
+ module InnerMake = Inner.Make(Spec, Translation)
35
+
36
+ module Spec = Spec
37
+ module Translation = Translation
38
+ type component = InnerMake.component
39
+ let queryDbName = InnerMake.queryDbName
40
+
41
+ let make = (~dcbEventLog, ~publishJsons, ~opts=?): component => {
42
+ let ots = InnerMake.make(~dcbEventLog, ~publishJsons, ~opts?)
43
+
44
+ let queryDbOutputs = (ots->ReventlessCore.Component.outputs).queryDb
45
+ let tableResource = queryDbOutputs.resources->Array.getUnsafe(0)
46
+ let queryDbTableName = tableResource.name
47
+
48
+ AutomationSliceRuntime_Builder_Single.registerAutomationSlice(
49
+ ~name=Spec.name,
50
+ ~specModulePath=Util_Bundle.getModuleSpecifier(Spec.moduleUrl),
51
+ ~callbackType="outbound",
52
+ ~queryDbTableName,
53
+ )
54
+
55
+ ots
56
+ }
57
+ }
58
+
59
+ let finish = () => EventCollectorRuntimeBuilder.finish()
60
+ }
@@ -0,0 +1,76 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as Component$ReventlessCore from "@reventlessdev/reventless-core/src/components/Component.res.mjs";
4
+ import * as Util_Bundle$ReventlessAws from "../util/Util_Bundle.res.mjs";
5
+ import * as QueryDbStorage_DynamoDb$ReventlessAws from "../adapter/QueryDb/QueryDbStorage_DynamoDb.res.mjs";
6
+ import * as QueryDbResolvers_AppSync$ReventlessAws from "../adapter/QueryDb/QueryDbResolvers_AppSync.res.mjs";
7
+ import * as RuntimeEnvironment_Lambda$ReventlessAws from "../adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs";
8
+ import * as OutboundTranslationSlice_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Builder.res.mjs";
9
+ import * as EventCollectorChannel_DynamoDbStream$ReventlessAws from "../adapter/EventCollector/EventCollectorChannel_DynamoDbStream.res.mjs";
10
+ import * as AutomationSliceRuntime_Builder_Single$ReventlessAws from "../adapter/Runtime/AutomationSliceRuntime_Builder_Single.res.mjs";
11
+
12
+ let EventCollectorRuntimeBuilder = {
13
+ Inner: undefined,
14
+ EventCollectorChannel: undefined,
15
+ forEventCollector: AutomationSliceRuntime_Builder_Single$ReventlessAws.forEventCollector,
16
+ finish: AutomationSliceRuntime_Builder_Single$ReventlessAws.finish
17
+ };
18
+
19
+ function Make(Api) {
20
+ let Inner = OutboundTranslationSlice_Builder$ReventlessCore.Make({
21
+ make: RuntimeEnvironment_Lambda$ReventlessAws.make,
22
+ groupBySource: RuntimeEnvironment_Lambda$ReventlessAws.groupBySource,
23
+ extractCorrelationId: RuntimeEnvironment_Lambda$ReventlessAws.extractCorrelationId,
24
+ asEventHandler: prim => prim,
25
+ asEffectHandler: prim => prim
26
+ })({
27
+ make: QueryDbStorage_DynamoDb$ReventlessAws.make
28
+ })({
29
+ make: QueryDbResolvers_AppSync$ReventlessAws.make
30
+ })({
31
+ make: EventCollectorChannel_DynamoDbStream$ReventlessAws.make,
32
+ connect: EventCollectorChannel_DynamoDbStream$ReventlessAws.connect
33
+ })({
34
+ EventCollectorChannel: {
35
+ make: EventCollectorChannel_DynamoDbStream$ReventlessAws.make,
36
+ connect: EventCollectorChannel_DynamoDbStream$ReventlessAws.connect
37
+ },
38
+ forEventCollector: AutomationSliceRuntime_Builder_Single$ReventlessAws.forEventCollector,
39
+ finish: AutomationSliceRuntime_Builder_Single$ReventlessAws.finish
40
+ })(Api);
41
+ let Make$1 = Spec => (Translation => {
42
+ let InnerMake = Inner.Make(Spec)(Translation);
43
+ let make = (dcbEventLog, publishJsons, opts) => {
44
+ let ots = InnerMake.make(dcbEventLog, publishJsons, opts);
45
+ let queryDbOutputs = Component$ReventlessCore.outputs(ots).queryDb;
46
+ let tableResource = queryDbOutputs.resources[0];
47
+ let queryDbTableName = tableResource.name;
48
+ AutomationSliceRuntime_Builder_Single$ReventlessAws.registerAutomationSlice(Spec.name, Util_Bundle$ReventlessAws.getModuleSpecifier(Spec.moduleUrl), "outbound", queryDbTableName);
49
+ return ots;
50
+ };
51
+ return {
52
+ Spec: Spec,
53
+ Translation: Translation,
54
+ queryDbName: InnerMake.queryDbName,
55
+ make: make
56
+ };
57
+ });
58
+ let finish = () => AutomationSliceRuntime_Builder_Single$ReventlessAws.finish();
59
+ return {
60
+ Inner: Inner,
61
+ Make: Make$1,
62
+ finish: finish
63
+ };
64
+ }
65
+
66
+ let EventCollectorChannel;
67
+
68
+ let RuntimeEnvironment;
69
+
70
+ export {
71
+ EventCollectorChannel,
72
+ RuntimeEnvironment,
73
+ EventCollectorRuntimeBuilder,
74
+ Make,
75
+ }
76
+ /* Component-ReventlessCore Not a pure module */
@@ -0,0 +1,75 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as Component$ReventlessCore from "@reventlessdev/reventless-core/src/components/Component.res.mjs";
4
+ import * as Util_Bundle$ReventlessAws from "../util/Util_Bundle.res.mjs";
5
+ import * as QueryDbStorage_DynamoDb$ReventlessAws from "../adapter/QueryDb/QueryDbStorage_DynamoDb.res.mjs";
6
+ import * as QueryDbResolvers_AppSync$ReventlessAws from "../adapter/QueryDb/QueryDbResolvers_AppSync.res.mjs";
7
+ import * as RuntimeEnvironment_Lambda$ReventlessAws from "../adapter/Runtime/RuntimeEnvironment_Lambda.res.mjs";
8
+ import * as OutboundTranslationSlice_Builder$ReventlessCore from "@reventlessdev/reventless-core/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Builder.res.mjs";
9
+ import * as EventCollectorChannel_DynamoDbStream$ReventlessAws from "../adapter/EventCollector/EventCollectorChannel_DynamoDbStream.res.mjs";
10
+ import * as AutomationSliceRuntime_Builder_Single$ReventlessAws from "../adapter/Runtime/AutomationSliceRuntime_Builder_Single.res.mjs";
11
+
12
+ let EventCollectorRuntimeBuilder = {
13
+ Inner: undefined,
14
+ EventCollectorChannel: undefined,
15
+ forEventCollector: AutomationSliceRuntime_Builder_Single$ReventlessAws.forEventCollector,
16
+ finish: AutomationSliceRuntime_Builder_Single$ReventlessAws.finish
17
+ };
18
+
19
+ function Make(Api) {
20
+ let Inner = OutboundTranslationSlice_Builder$ReventlessCore.Make({
21
+ make: RuntimeEnvironment_Lambda$ReventlessAws.make,
22
+ groupBySource: RuntimeEnvironment_Lambda$ReventlessAws.groupBySource,
23
+ extractCorrelationId: RuntimeEnvironment_Lambda$ReventlessAws.extractCorrelationId,
24
+ asEventHandler: prim => prim,
25
+ asEffectHandler: prim => prim
26
+ })({
27
+ make: QueryDbStorage_DynamoDb$ReventlessAws.make
28
+ })({
29
+ make: QueryDbResolvers_AppSync$ReventlessAws.make
30
+ })({
31
+ make: EventCollectorChannel_DynamoDbStream$ReventlessAws.make,
32
+ connect: EventCollectorChannel_DynamoDbStream$ReventlessAws.connect
33
+ })({
34
+ EventCollectorChannel: {
35
+ make: EventCollectorChannel_DynamoDbStream$ReventlessAws.make,
36
+ connect: EventCollectorChannel_DynamoDbStream$ReventlessAws.connect
37
+ },
38
+ forEventCollector: AutomationSliceRuntime_Builder_Single$ReventlessAws.forEventCollector,
39
+ finish: AutomationSliceRuntime_Builder_Single$ReventlessAws.finish
40
+ })(Api);
41
+ let Make$1 = Spec => {
42
+ let InnerMake = Inner.Make(Spec);
43
+ let make = (dcbEventLog, publishJsons, opts) => {
44
+ let ots = InnerMake.make(dcbEventLog, publishJsons, opts);
45
+ let queryDbOutputs = Component$ReventlessCore.outputs(ots).queryDb;
46
+ let tableResource = queryDbOutputs.resources[0];
47
+ let queryDbTableName = tableResource.name;
48
+ AutomationSliceRuntime_Builder_Single$ReventlessAws.registerAutomationSlice(InnerMake.Spec.name, Util_Bundle$ReventlessAws.getModuleSpecifier(InnerMake.Spec.moduleUrl), "outbound", queryDbTableName);
49
+ return ots;
50
+ };
51
+ return {
52
+ Spec: InnerMake.Spec,
53
+ queryDbName: InnerMake.queryDbName,
54
+ make: make
55
+ };
56
+ };
57
+ let finish = () => AutomationSliceRuntime_Builder_Single$ReventlessAws.finish();
58
+ return {
59
+ Inner: Inner,
60
+ Make: Make$1,
61
+ finish: finish
62
+ };
63
+ }
64
+
65
+ let EventCollectorChannel;
66
+
67
+ let RuntimeEnvironment;
68
+
69
+ export {
70
+ EventCollectorChannel,
71
+ RuntimeEnvironment,
72
+ EventCollectorRuntimeBuilder,
73
+ Make,
74
+ }
75
+ /* Component-ReventlessCore Not a pure module */
@@ -0,0 +1,29 @@
1
+ module EventCollectorChannel = EventCollectorChannel.SQS
2
+ module RuntimeEnvironment = RuntimeEnvironment.Lambda
3
+
4
+ module Make = (HooksConfig: ReventlessCore.Plugin_Helpers.HooksConfig) => {
5
+ include ReventlessCore.Plugin_Builder.Make(
6
+ {
7
+ let runtimeOps = PluginRuntimeOperations.operations
8
+ let resourceNaming = Util_ResourceNaming.operations
9
+ let environment = PulumiAws.Lambda.environment->Option.getOr("unknown")
10
+ let platformName = Pulumi.Pulumi.getProjectName()
11
+ let hooks = HooksConfig.hooks
12
+ },
13
+ {
14
+ type api = Types.AppSync.api
15
+ type role = Types.AppSync.role
16
+ },
17
+ AppSync_Adapter,
18
+ RuntimeEnvironment,
19
+ EventCollectorChannel,
20
+ QueryEngine.DynamoDb,
21
+ CommandTopicRemoteChannel.SQS,
22
+ HeartbeatRunner.CloudwatchEvents,
23
+ PluginRuntime_Builder.Make(EventCollectorChannel),
24
+ DcbEventLogStorage.DynamoDb,
25
+ EventTopicPublisher.DynamoDbStream,
26
+ CommandTopicChannel.SQS_Sync,
27
+ CommandTopicChannel.SQS_Async,
28
+ )
29
+ }