@reventlessdev/reventless-core 3.0.0-alpha.134

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 (502) hide show
  1. package/CHANGELOG.md +1355 -0
  2. package/LICENSE +202 -0
  3. package/README.md +173 -0
  4. package/__mocks__/emptyModule.js +2 -0
  5. package/jest.setup.cjs +5 -0
  6. package/package.json +73 -0
  7. package/rescript.json +41 -0
  8. package/scripts/deploy.sh +6 -0
  9. package/scripts/post-deploy.sh +5 -0
  10. package/scripts/pre-deploy.sh +18 -0
  11. package/scripts/pulumi-up.sh +30 -0
  12. package/src/Behavior.res +18 -0
  13. package/src/Behavior.res.mjs +2 -0
  14. package/src/ComponentType.res +125 -0
  15. package/src/ComponentType.res.mjs +199 -0
  16. package/src/Env.res +5 -0
  17. package/src/Env.res.mjs +2 -0
  18. package/src/Mapper.res +36 -0
  19. package/src/Mapper.res.mjs +18 -0
  20. package/src/Mapper1toN.res +107 -0
  21. package/src/Mapper1toN.res.mjs +2 -0
  22. package/src/MapperNto1.res +78 -0
  23. package/src/MapperNto1.res.mjs +35 -0
  24. package/src/Message.res +353 -0
  25. package/src/Message.res.mjs +418 -0
  26. package/src/PluginRuntimeOperations.res +15 -0
  27. package/src/PluginRuntimeOperations.res.mjs +2 -0
  28. package/src/Projection.res +447 -0
  29. package/src/Projection.res.mjs +712 -0
  30. package/src/ProjectionMapper.res +44 -0
  31. package/src/ProjectionMapper.res.mjs +51 -0
  32. package/src/RequestContext.res +42 -0
  33. package/src/RequestContext.res.mjs +39 -0
  34. package/src/adapter/Adapter.res +178 -0
  35. package/src/adapter/Adapter.res.mjs +201 -0
  36. package/src/adapter/AdapterDeploytime.res +56 -0
  37. package/src/adapter/AdapterDeploytime.res.mjs +42 -0
  38. package/src/adapter/Auth/Auth_Adapter.res +42 -0
  39. package/src/adapter/Auth/Auth_Adapter.res.mjs +2 -0
  40. package/src/adapter/Runtime/AggregateRuntime_Builder.res +22 -0
  41. package/src/adapter/Runtime/AggregateRuntime_Builder.res.mjs +2 -0
  42. package/src/adapter/Runtime/AggregateRuntime_Builder_Common.res +259 -0
  43. package/src/adapter/Runtime/AggregateRuntime_Builder_Common.res.mjs +190 -0
  44. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res +92 -0
  45. package/src/adapter/Runtime/AggregateRuntime_Builder_Micro.res.mjs +59 -0
  46. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res +52 -0
  47. package/src/adapter/Runtime/AggregateRuntime_Builder_PerAggregate.res.mjs +49 -0
  48. package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res +64 -0
  49. package/src/adapter/Runtime/AggregateRuntime_Builder_Single.res.mjs +59 -0
  50. package/src/adapter/Runtime/EventCollectorRuntime_Builder.res +11 -0
  51. package/src/adapter/Runtime/EventCollectorRuntime_Builder.res.mjs +2 -0
  52. package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res +46 -0
  53. package/src/adapter/Runtime/EventCollectorRuntime_Builder_PerEventCollector.res.mjs +40 -0
  54. package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res +204 -0
  55. package/src/adapter/Runtime/EventCollectorRuntime_Builder_Single.res.mjs +150 -0
  56. package/src/adapter/Runtime/ExtensionPointRuntime_Builder.res +18 -0
  57. package/src/adapter/Runtime/ExtensionPointRuntime_Builder.res.mjs +2 -0
  58. package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res +36 -0
  59. package/src/adapter/Runtime/ExtensionPointRuntime_Builder_PerExtensionPoint.res.mjs +28 -0
  60. package/src/adapter/Runtime/PluginRuntime_Builder.res +23 -0
  61. package/src/adapter/Runtime/PluginRuntime_Builder.res.mjs +2 -0
  62. package/src/adapter/Runtime/PluginRuntime_Builder_Micro.res +97 -0
  63. package/src/adapter/Runtime/PluginRuntime_Builder_Micro.res.mjs +62 -0
  64. package/src/adapter/Runtime/PluginRuntime_Builder_Single.res +89 -0
  65. package/src/adapter/Runtime/PluginRuntime_Builder_Single.res.mjs +62 -0
  66. package/src/adapter/Runtime/Runtime.res +106 -0
  67. package/src/adapter/Runtime/Runtime.res.mjs +22 -0
  68. package/src/adapter/Runtime/TaskRuntime_Builder.res +32 -0
  69. package/src/adapter/Runtime/TaskRuntime_Builder.res.mjs +2 -0
  70. package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res +42 -0
  71. package/src/adapter/Runtime/TaskRuntime_Builder_PerBucket.res.mjs +29 -0
  72. package/src/admin/AdminApi.res +88 -0
  73. package/src/admin/AdminApi.res.mjs +89 -0
  74. package/src/admin/Admin_Callback.res +27 -0
  75. package/src/admin/Admin_Callback.res.mjs +20 -0
  76. package/src/admin/Platform_Admin.res +402 -0
  77. package/src/admin/Platform_Admin.res.mjs +250 -0
  78. package/src/admin/Platform_Admin_Structure.res +125 -0
  79. package/src/admin/Platform_Admin_Structure.res.mjs +182 -0
  80. package/src/admin/Platform_ComponentDefinitionsApi.res +160 -0
  81. package/src/admin/Platform_ComponentDefinitionsApi.res.mjs +299 -0
  82. package/src/admin/Platform_UIFragmentsApi.res +55 -0
  83. package/src/admin/Platform_UIFragmentsApi.res.mjs +124 -0
  84. package/src/admin/UIFragmentRegistryProjection.res +43 -0
  85. package/src/admin/UIFragmentRegistryProjection.res.mjs +81 -0
  86. package/src/admin/UIFragmentRegistryReadModelSpec.res +13 -0
  87. package/src/admin/UIFragmentRegistryReadModelSpec.res.mjs +40 -0
  88. package/src/components/Aggregate/Aggregate.res +96 -0
  89. package/src/components/Aggregate/Aggregate.res.mjs +82 -0
  90. package/src/components/Aggregate/Aggregate_Builder.res +175 -0
  91. package/src/components/Aggregate/Aggregate_Builder.res.mjs +119 -0
  92. package/src/components/Aggregate/Aggregate_Callback.res +273 -0
  93. package/src/components/Aggregate/Aggregate_Callback.res.mjs +208 -0
  94. package/src/components/Api/ApiAllowedStatesHelpers.res +19 -0
  95. package/src/components/Api/ApiAllowedStatesHelpers.res.mjs +16 -0
  96. package/src/components/Api/ApiNoApiHelpers.res +13 -0
  97. package/src/components/Api/ApiNoApiHelpers.res.mjs +29 -0
  98. package/src/components/Api/Api_Builder.res +40 -0
  99. package/src/components/Api/Api_Builder.res.mjs +33 -0
  100. package/src/components/Api/Api_Naming.res +92 -0
  101. package/src/components/Api/Api_Naming.res.mjs +103 -0
  102. package/src/components/Api/Api_Operations.res +13 -0
  103. package/src/components/Api/Api_Operations.res.mjs +12 -0
  104. package/src/components/Api/GraphQL_FragmentGenerator.res +612 -0
  105. package/src/components/Api/GraphQL_FragmentGenerator.res.mjs +503 -0
  106. package/src/components/Api/GraphQL_SchemaInspector.res +156 -0
  107. package/src/components/Api/GraphQL_SchemaInspector.res.mjs +123 -0
  108. package/src/components/Api/GraphQL_Stitcher.res +271 -0
  109. package/src/components/Api/GraphQL_Stitcher.res.mjs +229 -0
  110. package/src/components/Api/MCP_SchemaGenerator.res +185 -0
  111. package/src/components/Api/MCP_SchemaGenerator.res.mjs +146 -0
  112. package/src/components/Api/SchemaType.res +126 -0
  113. package/src/components/Api/SchemaType.res.mjs +143 -0
  114. package/src/components/Api/SuryToJsonSchema.res +142 -0
  115. package/src/components/Api/SuryToJsonSchema.res.mjs +210 -0
  116. package/src/components/AutomationSlice/AutomationSlice.res +39 -0
  117. package/src/components/AutomationSlice/AutomationSlice.res.mjs +24 -0
  118. package/src/components/AutomationSlice/AutomationSlice_Builder.res +207 -0
  119. package/src/components/AutomationSlice/AutomationSlice_Builder.res.mjs +123 -0
  120. package/src/components/AutomationSlice/AutomationSlice_Callback.res +212 -0
  121. package/src/components/AutomationSlice/AutomationSlice_Callback.res.mjs +189 -0
  122. package/src/components/Builder_Helpers.res +196 -0
  123. package/src/components/Builder_Helpers.res.mjs +142 -0
  124. package/src/components/Cloner.res +84 -0
  125. package/src/components/Cloner.res.mjs +88 -0
  126. package/src/components/CommandGenerator/CommandGenerator.res +54 -0
  127. package/src/components/CommandGenerator/CommandGenerator.res.mjs +15 -0
  128. package/src/components/CommandGenerator/CommandGenerator_Adapter.res +22 -0
  129. package/src/components/CommandGenerator/CommandGenerator_Adapter.res.mjs +2 -0
  130. package/src/components/CommandGenerator/CommandGenerator_Builder.res +70 -0
  131. package/src/components/CommandGenerator/CommandGenerator_Builder.res.mjs +68 -0
  132. package/src/components/CommandGenerator/CommandGenerator_Callback.res +191 -0
  133. package/src/components/CommandGenerator/CommandGenerator_Callback.res.mjs +161 -0
  134. package/src/components/CommandTopic/CommandTopic.res +79 -0
  135. package/src/components/CommandTopic/CommandTopic.res.mjs +68 -0
  136. package/src/components/CommandTopic/CommandTopic_Adapter.res +53 -0
  137. package/src/components/CommandTopic/CommandTopic_Adapter.res.mjs +2 -0
  138. package/src/components/CommandTopic/CommandTopic_Builder.res +146 -0
  139. package/src/components/CommandTopic/CommandTopic_Builder.res.mjs +127 -0
  140. package/src/components/CommandTopic/CommandTopic_Callback.res +38 -0
  141. package/src/components/CommandTopic/CommandTopic_Callback.res.mjs +49 -0
  142. package/src/components/CommandTopic/CommandTopic_Helpers.res +176 -0
  143. package/src/components/CommandTopic/CommandTopic_Helpers.res.mjs +195 -0
  144. package/src/components/CommandTopic/CommandTopic_Operations.res +40 -0
  145. package/src/components/CommandTopic/CommandTopic_Operations.res.mjs +49 -0
  146. package/src/components/Component.res +1 -0
  147. package/src/components/Component.res.mjs +34 -0
  148. package/src/components/Component.resi +1 -0
  149. package/src/components/Counter/Counter.res +47 -0
  150. package/src/components/Counter/Counter.res.mjs +55 -0
  151. package/src/components/Counter/Counter_Adapter.res +18 -0
  152. package/src/components/Counter/Counter_Adapter.res.mjs +2 -0
  153. package/src/components/Counter/Counter_Builder.res +142 -0
  154. package/src/components/Counter/Counter_Builder.res.mjs +112 -0
  155. package/src/components/Counter/Counter_Callback.res +94 -0
  156. package/src/components/Counter/Counter_Callback.res.mjs +70 -0
  157. package/src/components/Counter/Counter_Operations.res +70 -0
  158. package/src/components/Counter/Counter_Operations.res.mjs +91 -0
  159. package/src/components/Dcb/Dcb_Builder.res +971 -0
  160. package/src/components/Dcb/Dcb_Builder.res.mjs +572 -0
  161. package/src/components/DcbEventLog/DcbEventLog.res +43 -0
  162. package/src/components/DcbEventLog/DcbEventLog.res.mjs +24 -0
  163. package/src/components/DcbEventLog/DcbEventLog_Adapter.res +57 -0
  164. package/src/components/DcbEventLog/DcbEventLog_Adapter.res.mjs +2 -0
  165. package/src/components/DcbEventLog/DcbEventLog_Builder.res +72 -0
  166. package/src/components/DcbEventLog/DcbEventLog_Builder.res.mjs +67 -0
  167. package/src/components/DcbEventLog/DcbEventLog_Operations.res +160 -0
  168. package/src/components/DcbEventLog/DcbEventLog_Operations.res.mjs +121 -0
  169. package/src/components/EventCollector/EventCollector.res +34 -0
  170. package/src/components/EventCollector/EventCollector.res.mjs +9 -0
  171. package/src/components/EventCollector/EventCollector_Adapter.res +45 -0
  172. package/src/components/EventCollector/EventCollector_Adapter.res.mjs +2 -0
  173. package/src/components/EventCollector/EventCollector_Builder.res +91 -0
  174. package/src/components/EventCollector/EventCollector_Builder.res.mjs +64 -0
  175. package/src/components/EventLog/EventLog.res +27 -0
  176. package/src/components/EventLog/EventLog.res.mjs +13 -0
  177. package/src/components/EventLog/EventLog_Adapter.res +15 -0
  178. package/src/components/EventLog/EventLog_Adapter.res.mjs +2 -0
  179. package/src/components/EventLog/EventLog_Builder.res +65 -0
  180. package/src/components/EventLog/EventLog_Builder.res.mjs +57 -0
  181. package/src/components/EventLog/EventLog_Operations.res +209 -0
  182. package/src/components/EventLog/EventLog_Operations.res.mjs +202 -0
  183. package/src/components/EventLog/EventPublish_Callback.res +29 -0
  184. package/src/components/EventLog/EventPublish_Callback.res.mjs +32 -0
  185. package/src/components/EventMapper/EventMapper.res +72 -0
  186. package/src/components/EventMapper/EventMapper.res.mjs +54 -0
  187. package/src/components/EventMapper/EventMapper_Builder.res +128 -0
  188. package/src/components/EventMapper/EventMapper_Builder.res.mjs +81 -0
  189. package/src/components/EventMapper/EventMapper_Callback.res +323 -0
  190. package/src/components/EventMapper/EventMapper_Callback.res.mjs +231 -0
  191. package/src/components/EventTopic/EventTopic.res +69 -0
  192. package/src/components/EventTopic/EventTopic.res.mjs +50 -0
  193. package/src/components/EventTopic/EventTopic_Adapter.res +15 -0
  194. package/src/components/EventTopic/EventTopic_Adapter.res.mjs +2 -0
  195. package/src/components/EventTopic/EventTopic_Builder.res +53 -0
  196. package/src/components/EventTopic/EventTopic_Builder.res.mjs +46 -0
  197. package/src/components/EventTopic/EventTopic_Operations.res +37 -0
  198. package/src/components/EventTopic/EventTopic_Operations.res.mjs +39 -0
  199. package/src/components/Extension/Extension.res +32 -0
  200. package/src/components/Extension/Extension.res.mjs +9 -0
  201. package/src/components/Extension/Extension_Builder.res +82 -0
  202. package/src/components/Extension/Extension_Builder.res.mjs +57 -0
  203. package/src/components/Extension/Extension_Operations.res +203 -0
  204. package/src/components/Extension/Extension_Operations.res.mjs +154 -0
  205. package/src/components/ExtensionPoint/ExtensionPoint.res +49 -0
  206. package/src/components/ExtensionPoint/ExtensionPoint.res.mjs +25 -0
  207. package/src/components/ExtensionPoint/ExtensionPoint_Builder.res +163 -0
  208. package/src/components/ExtensionPoint/ExtensionPoint_Builder.res.mjs +113 -0
  209. package/src/components/ExtensionPoint/ExtensionPoint_Callback.res +110 -0
  210. package/src/components/ExtensionPoint/ExtensionPoint_Callback.res.mjs +76 -0
  211. package/src/components/ExtensionPoint/ExtensionPoint_Operations.res +146 -0
  212. package/src/components/ExtensionPoint/ExtensionPoint_Operations.res.mjs +122 -0
  213. package/src/components/Heartbeat/Heartbeat.res +25 -0
  214. package/src/components/Heartbeat/Heartbeat.res.mjs +9 -0
  215. package/src/components/Heartbeat/Heartbeat_Adapter.res +14 -0
  216. package/src/components/Heartbeat/Heartbeat_Adapter.res.mjs +2 -0
  217. package/src/components/Heartbeat/Heartbeat_Builder.res +43 -0
  218. package/src/components/Heartbeat/Heartbeat_Builder.res.mjs +47 -0
  219. package/src/components/Heartbeat/Heartbeat_Callback.res +32 -0
  220. package/src/components/Heartbeat/Heartbeat_Callback.res.mjs +40 -0
  221. package/src/components/InboundTranslationSlice/InboundTranslationSlice.res +34 -0
  222. package/src/components/InboundTranslationSlice/InboundTranslationSlice.res.mjs +24 -0
  223. package/src/components/InboundTranslationSlice/InboundTranslationSlice_Builder.res +98 -0
  224. package/src/components/InboundTranslationSlice/InboundTranslationSlice_Builder.res.mjs +87 -0
  225. package/src/components/InboundTranslationSlice/InboundTranslationSlice_Callback.res +191 -0
  226. package/src/components/InboundTranslationSlice/InboundTranslationSlice_Callback.res.mjs +175 -0
  227. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice.res +35 -0
  228. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice.res.mjs +24 -0
  229. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Builder.res +181 -0
  230. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Builder.res.mjs +137 -0
  231. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Callback.res +173 -0
  232. package/src/components/OutboundTranslationSlice/OutboundTranslationSlice_Callback.res.mjs +173 -0
  233. package/src/components/QueryDb/QueryDb.res +74 -0
  234. package/src/components/QueryDb/QueryDb.res.mjs +37 -0
  235. package/src/components/QueryDb/QueryDb_Adapter.res +78 -0
  236. package/src/components/QueryDb/QueryDb_Adapter.res.mjs +17 -0
  237. package/src/components/QueryDb/QueryDb_Builder.res +76 -0
  238. package/src/components/QueryDb/QueryDb_Builder.res.mjs +53 -0
  239. package/src/components/QueryDb/QueryDb_Callback.res +18 -0
  240. package/src/components/QueryDb/QueryDb_Callback.res.mjs +21 -0
  241. package/src/components/QueryDb/QueryDb_Operations.res +116 -0
  242. package/src/components/QueryDb/QueryDb_Operations.res.mjs +165 -0
  243. package/src/components/ReadModel/ReadModel.res +42 -0
  244. package/src/components/ReadModel/ReadModel.res.mjs +27 -0
  245. package/src/components/ReadModel/ReadModel_Builder.res +155 -0
  246. package/src/components/ReadModel/ReadModel_Builder.res.mjs +101 -0
  247. package/src/components/ReadModel/ReadModel_Callback.res +48 -0
  248. package/src/components/ReadModel/ReadModel_Callback.res.mjs +48 -0
  249. package/src/components/Scheduler/Scheduler.res +13 -0
  250. package/src/components/Scheduler/Scheduler.res.mjs +9 -0
  251. package/src/components/Scheduler/Scheduler_Adapter.res +13 -0
  252. package/src/components/Scheduler/Scheduler_Adapter.res.mjs +2 -0
  253. package/src/components/Scheduler/Scheduler_Builder.res +19 -0
  254. package/src/components/Scheduler/Scheduler_Builder.res.mjs +29 -0
  255. package/src/components/SideEffectHandler/SideEffectHandler.res +30 -0
  256. package/src/components/SideEffectHandler/SideEffectHandler.res.mjs +12 -0
  257. package/src/components/SideEffectHandler/SideEffectHandler_Builder.res +117 -0
  258. package/src/components/SideEffectHandler/SideEffectHandler_Builder.res.mjs +64 -0
  259. package/src/components/SideEffectHandler/SideEffectHandler_Callback.res +116 -0
  260. package/src/components/SideEffectHandler/SideEffectHandler_Callback.res.mjs +95 -0
  261. package/src/components/StateChangeSlice/StateChangeSlice.res +38 -0
  262. package/src/components/StateChangeSlice/StateChangeSlice.res.mjs +17 -0
  263. package/src/components/StateChangeSlice/StateChangeSlice_Builder.res +91 -0
  264. package/src/components/StateChangeSlice/StateChangeSlice_Builder.res.mjs +81 -0
  265. package/src/components/StateChangeSlice/StateChangeSlice_Callback.res +412 -0
  266. package/src/components/StateChangeSlice/StateChangeSlice_Callback.res.mjs +299 -0
  267. package/src/components/StateTopic.res +91 -0
  268. package/src/components/StateTopic.res.mjs +41 -0
  269. package/src/components/StateViewSlice/StateViewSlice.res +33 -0
  270. package/src/components/StateViewSlice/StateViewSlice.res.mjs +24 -0
  271. package/src/components/StateViewSlice/StateViewSlice_Builder.res +176 -0
  272. package/src/components/StateViewSlice/StateViewSlice_Builder.res.mjs +134 -0
  273. package/src/components/StateViewSlice/StateViewSlice_Callback.res +64 -0
  274. package/src/components/StateViewSlice/StateViewSlice_Callback.res.mjs +56 -0
  275. package/src/components/Task/Task.res +81 -0
  276. package/src/components/Task/Task.res.mjs +51 -0
  277. package/src/components/Task/Task_Adapter.res +31 -0
  278. package/src/components/Task/Task_Adapter.res.mjs +2 -0
  279. package/src/components/Task/Task_Builder.res +223 -0
  280. package/src/components/Task/Task_Builder.res.mjs +115 -0
  281. package/src/plugin/api/PluginBaseFragment.res +104 -0
  282. package/src/plugin/api/PluginBaseFragment.res.mjs +64 -0
  283. package/src/plugin/component/Plugin.res +100 -0
  284. package/src/plugin/component/Plugin.res.mjs +61 -0
  285. package/src/plugin/component/Plugin_Builder.res +1017 -0
  286. package/src/plugin/component/Plugin_Builder.res.mjs +608 -0
  287. package/src/plugin/component/Plugin_BuiltHook.res +141 -0
  288. package/src/plugin/component/Plugin_BuiltHook.res.mjs +39 -0
  289. package/src/plugin/component/Plugin_Callback.res +98 -0
  290. package/src/plugin/component/Plugin_Callback.res.mjs +55 -0
  291. package/src/plugin/component/Plugin_Helpers.res +1730 -0
  292. package/src/plugin/component/Plugin_Helpers.res.mjs +1010 -0
  293. package/src/plugin/component/Plugin_ResolverError.res +27 -0
  294. package/src/plugin/component/Plugin_ResolverError.res.mjs +21 -0
  295. package/src/plugin/component/Plugin_Structure.res +570 -0
  296. package/src/plugin/component/Plugin_Structure.res.mjs +458 -0
  297. package/src/plugin/component/Plugin_SubscriptionSchema.res +103 -0
  298. package/src/plugin/component/Plugin_SubscriptionSchema.res.mjs +71 -0
  299. package/src/plugin/component/SchemaWalker.res +164 -0
  300. package/src/plugin/component/SchemaWalker.res.mjs +183 -0
  301. package/src/plugin/connect/PluginConnectExtension_Builder.res +14 -0
  302. package/src/plugin/connect/PluginConnectExtension_Builder.res.mjs +36 -0
  303. package/src/plugin/connect/PluginConnectExtension_Mapping.res +76 -0
  304. package/src/plugin/connect/PluginConnectExtension_Mapping.res.mjs +89 -0
  305. package/src/plugin/connect/PluginExtensionPoint_Builder.res +39 -0
  306. package/src/plugin/connect/PluginExtensionPoint_Builder.res.mjs +33 -0
  307. package/src/plugin/connect/PluginExtensionPoint_Plugin.res +231 -0
  308. package/src/plugin/connect/PluginExtensionPoint_Plugin.res.mjs +353 -0
  309. package/src/plugin/lifecycle/PluginBehavior.res +250 -0
  310. package/src/plugin/lifecycle/PluginBehavior.res.mjs +391 -0
  311. package/src/plugin/lifecycle/PluginSpec.res +84 -0
  312. package/src/plugin/lifecycle/PluginSpec.res.mjs +148 -0
  313. package/src/plugin/lifecycle/PluginsProjection.res +154 -0
  314. package/src/plugin/lifecycle/PluginsProjection.res.mjs +230 -0
  315. package/src/plugin/lifecycle/PluginsReadModelSpec.res +66 -0
  316. package/src/plugin/lifecycle/PluginsReadModelSpec.res.mjs +58 -0
  317. package/src/util/AWS.res +7 -0
  318. package/src/util/AWS.res.mjs +20 -0
  319. package/src/util/CSV.res +27 -0
  320. package/src/util/CSV.res.mjs +56 -0
  321. package/src/util/CommandPublisher.res +133 -0
  322. package/src/util/CommandPublisher.res.mjs +161 -0
  323. package/src/util/CsvStream.res +39 -0
  324. package/src/util/CsvStream.res.mjs +42 -0
  325. package/src/util/EffectLogger.res +178 -0
  326. package/src/util/EffectLogger.res.mjs +171 -0
  327. package/src/util/FTP.res +69 -0
  328. package/src/util/FTP.res.mjs +101 -0
  329. package/src/util/FTPHandler.res +142 -0
  330. package/src/util/FTPHandler.res.mjs +136 -0
  331. package/src/util/Hash.res +1 -0
  332. package/src/util/Hash.res.mjs +10 -0
  333. package/src/util/Interstack.res +74 -0
  334. package/src/util/Interstack.res.mjs +126 -0
  335. package/src/util/Interstack.resi +25 -0
  336. package/src/util/LogFormat.res +222 -0
  337. package/src/util/LogFormat.res.mjs +257 -0
  338. package/src/util/Logger.res +196 -0
  339. package/src/util/Logger.res.mjs +238 -0
  340. package/src/util/Lru.res +51 -0
  341. package/src/util/Lru.res.mjs +59 -0
  342. package/src/util/Lru.resi +32 -0
  343. package/src/util/Metrics.res +32 -0
  344. package/src/util/Metrics.res.mjs +42 -0
  345. package/src/util/OutputFailsafeDeploytime.res +16 -0
  346. package/src/util/OutputFailsafeDeploytime.res.mjs +20 -0
  347. package/src/util/OutputFailsafeRuntime.res +6 -0
  348. package/src/util/OutputFailsafeRuntime.res.mjs +15 -0
  349. package/src/util/OutputLogger.res +9 -0
  350. package/src/util/OutputLogger.res.mjs +19 -0
  351. package/src/util/ResourceQuery.res +14 -0
  352. package/src/util/ResourceQuery.res.mjs +17 -0
  353. package/src/util/ResourceQueryRuntime.res +17 -0
  354. package/src/util/ResourceQueryRuntime.res.mjs +18 -0
  355. package/src/util/ScheduleOps.res +124 -0
  356. package/src/util/ScheduleOps.res.mjs +132 -0
  357. package/src/util/Util.res +12 -0
  358. package/src/util/Util.res.mjs +42 -0
  359. package/src/util/Util_Adapter.res +97 -0
  360. package/src/util/Util_Adapter.res.mjs +82 -0
  361. package/src/util/Util_AdapterRuntime.res +39 -0
  362. package/src/util/Util_AdapterRuntime.res.mjs +42 -0
  363. package/src/util/Util_Array.res +2 -0
  364. package/src/util/Util_Array.res.mjs +12 -0
  365. package/src/util/Util_Error.res +16 -0
  366. package/src/util/Util_Error.res.mjs +19 -0
  367. package/src/util/Util_Promise.res +67 -0
  368. package/src/util/Util_Promise.res.mjs +105 -0
  369. package/src/util/Util_Pulumi.res +35 -0
  370. package/src/util/Util_Pulumi.res.mjs +55 -0
  371. package/src/util/Util_Pulumi.resi +21 -0
  372. package/src/util/Util_QueryDb.res +14 -0
  373. package/src/util/Util_QueryDb.res.mjs +21 -0
  374. package/src/util/Util_QueryDbRuntime.res +11 -0
  375. package/src/util/Util_QueryDbRuntime.res.mjs +19 -0
  376. package/src/util/Util_ReadModel.res +2 -0
  377. package/src/util/Util_ReadModel.res.mjs +10 -0
  378. package/src/util/Util_StackRefs.res +24 -0
  379. package/src/util/Util_StackRefs.res.mjs +39 -0
  380. package/src/util/Validation.res +75 -0
  381. package/src/util/Validation.res.mjs +181 -0
  382. package/tests/.gitkeep +0 -0
  383. package/tests/IdentityTest.res +155 -0
  384. package/tests/IdentityTest.res.mjs +174 -0
  385. package/tests/admin/Platform_ComponentDefinitionsApiTest.res +237 -0
  386. package/tests/admin/Platform_ComponentDefinitionsApiTest.res.mjs +298 -0
  387. package/tests/admin/Platform_UIFragmentsApiTest.res +96 -0
  388. package/tests/admin/Platform_UIFragmentsApiTest.res.mjs +101 -0
  389. package/tests/aggregate/AggregateCallbackTest.res +81 -0
  390. package/tests/aggregate/AggregateCallbackTest.res.mjs +140 -0
  391. package/tests/aggregate/AggregateCausationTest.res +49 -0
  392. package/tests/aggregate/AggregateCausationTest.res.mjs +44 -0
  393. package/tests/aggregate/AggregateConflictTest.res +212 -0
  394. package/tests/aggregate/AggregateConflictTest.res.mjs +363 -0
  395. package/tests/aggregate/AggregateFixtures.res +177 -0
  396. package/tests/aggregate/AggregateFixtures.res.mjs +285 -0
  397. package/tests/aggregate/AggregateRejectionTest.res +139 -0
  398. package/tests/aggregate/AggregateRejectionTest.res.mjs +163 -0
  399. package/tests/api/ApiNoApiTest.res +62 -0
  400. package/tests/api/ApiNoApiTest.res.mjs +90 -0
  401. package/tests/api/GraphQL_StitcherTest.res +107 -0
  402. package/tests/api/GraphQL_StitcherTest.res.mjs +99 -0
  403. package/tests/api/SimpleTest.res +7 -0
  404. package/tests/api/SimpleTest.res.mjs +10 -0
  405. package/tests/api/SuryToJsonSchemaTest.res +405 -0
  406. package/tests/api/SuryToJsonSchemaTest.res.mjs +623 -0
  407. package/tests/commandgenerator/CommandGeneratorCallbackTest.res +128 -0
  408. package/tests/commandgenerator/CommandGeneratorCallbackTest.res.mjs +160 -0
  409. package/tests/commandgenerator/CommandGeneratorFixtures.res +139 -0
  410. package/tests/commandgenerator/CommandGeneratorFixtures.res.mjs +197 -0
  411. package/tests/commandtopic/CommandTopicCallbackFixtures.res +87 -0
  412. package/tests/commandtopic/CommandTopicCallbackFixtures.res.mjs +152 -0
  413. package/tests/commandtopic/CommandTopicCallbackTest.res +66 -0
  414. package/tests/commandtopic/CommandTopicCallbackTest.res.mjs +106 -0
  415. package/tests/commandtopic/CommandTopicHelpersRejectionTest.res +83 -0
  416. package/tests/commandtopic/CommandTopicHelpersRejectionTest.res.mjs +109 -0
  417. package/tests/counter/CounterCallbackTest.res +83 -0
  418. package/tests/counter/CounterCallbackTest.res.mjs +140 -0
  419. package/tests/counter/CounterFixtures.res +57 -0
  420. package/tests/counter/CounterFixtures.res.mjs +67 -0
  421. package/tests/dcb/DcbDecodeTest.res +122 -0
  422. package/tests/dcb/DcbDecodeTest.res.mjs +194 -0
  423. package/tests/dcb/DcbEventLogOperationsTest.res +195 -0
  424. package/tests/dcb/DcbEventLogOperationsTest.res.mjs +268 -0
  425. package/tests/dcb/DcbFixtures.res +422 -0
  426. package/tests/dcb/DcbFixtures.res.mjs +534 -0
  427. package/tests/dcb/DcbScopeInferenceTest.res +242 -0
  428. package/tests/dcb/DcbScopeInferenceTest.res.mjs +480 -0
  429. package/tests/dcb/DcbStateChangeSliceTest.res +362 -0
  430. package/tests/dcb/DcbStateChangeSliceTest.res.mjs +546 -0
  431. package/tests/dcb/DcbTagTest.res +978 -0
  432. package/tests/dcb/DcbTagTest.res.mjs +867 -0
  433. package/tests/dcb/DcbValidationTest.res +349 -0
  434. package/tests/dcb/DcbValidationTest.res.mjs +476 -0
  435. package/tests/eventlog/EventLogFixtures.res +113 -0
  436. package/tests/eventlog/EventLogFixtures.res.mjs +166 -0
  437. package/tests/eventlog/EventLogOperationsTest.res +96 -0
  438. package/tests/eventlog/EventLogOperationsTest.res.mjs +192 -0
  439. package/tests/eventlog/EventLogRetryTest.res +121 -0
  440. package/tests/eventlog/EventLogRetryTest.res.mjs +171 -0
  441. package/tests/eventmapper/EventMapperCallbackTest.res +134 -0
  442. package/tests/eventmapper/EventMapperCallbackTest.res.mjs +141 -0
  443. package/tests/eventmapper/EventMapperFixtures.res +255 -0
  444. package/tests/eventmapper/EventMapperFixtures.res.mjs +440 -0
  445. package/tests/eventmapper/EventMapperTest.res +53 -0
  446. package/tests/eventmapper/EventMapperTest.res.mjs +83 -0
  447. package/tests/eventtopic/EventTopicFixtures.res +36 -0
  448. package/tests/eventtopic/EventTopicFixtures.res.mjs +65 -0
  449. package/tests/eventtopic/EventTopicOperationsTest.res +48 -0
  450. package/tests/eventtopic/EventTopicOperationsTest.res.mjs +71 -0
  451. package/tests/extensionpoint/ExtensionPointCallbackTest.res +84 -0
  452. package/tests/extensionpoint/ExtensionPointCallbackTest.res.mjs +94 -0
  453. package/tests/extensionpoint/ExtensionPointFixtures.res +173 -0
  454. package/tests/extensionpoint/ExtensionPointFixtures.res.mjs +205 -0
  455. package/tests/extensionpoint/ExtensionPointOperationsTest.res +261 -0
  456. package/tests/extensionpoint/ExtensionPointOperationsTest.res.mjs +304 -0
  457. package/tests/ftp/FTPTest.res +64 -0
  458. package/tests/ftp/FTPTest.res.mjs +88 -0
  459. package/tests/logger/LogFormatTest.res +348 -0
  460. package/tests/logger/LogFormatTest.res.mjs +309 -0
  461. package/tests/message/MessageTest.res +95 -0
  462. package/tests/message/MessageTest.res.mjs +93 -0
  463. package/tests/message/MetaEnvelopeTest.res +200 -0
  464. package/tests/message/MetaEnvelopeTest.res.mjs +188 -0
  465. package/tests/plugin/ManifestVisibilityTest.res +137 -0
  466. package/tests/plugin/ManifestVisibilityTest.res.mjs +205 -0
  467. package/tests/plugin/PluginSpecExperiment.res +13 -0
  468. package/tests/plugin/PluginSpecExperiment.res.mjs +31 -0
  469. package/tests/plugin/PluginStructureTest.res +298 -0
  470. package/tests/plugin/PluginStructureTest.res.mjs +388 -0
  471. package/tests/plugin/PluginVersionTest.res +34 -0
  472. package/tests/plugin/PluginVersionTest.res.mjs +30 -0
  473. package/tests/plugin/SchemaWalkerTest.res +115 -0
  474. package/tests/plugin/SchemaWalkerTest.res.mjs +160 -0
  475. package/tests/plugin/StateChangeSlice/PsPlaceOrder.res +24 -0
  476. package/tests/plugin/StateChangeSlice/PsPlaceOrder.res.mjs +62 -0
  477. package/tests/plugin/StateChangeSlice/PsShipOrder.res +29 -0
  478. package/tests/plugin/StateChangeSlice/PsShipOrder.res.mjs +69 -0
  479. package/tests/plugin/StateViewSlice/PsAnnotatedView.res +24 -0
  480. package/tests/plugin/StateViewSlice/PsAnnotatedView.res.mjs +94 -0
  481. package/tests/plugin/StateViewSlice/PsAvailableProductsView.res +18 -0
  482. package/tests/plugin/StateViewSlice/PsAvailableProductsView.res.mjs +69 -0
  483. package/tests/plugin/StateViewSlice/PsCustomersView.res +22 -0
  484. package/tests/plugin/StateViewSlice/PsCustomersView.res.mjs +69 -0
  485. package/tests/plugin/StateViewSlice/PsOrdersView.res +20 -0
  486. package/tests/plugin/StateViewSlice/PsOrdersView.res.mjs +81 -0
  487. package/tests/poc/StructuralSubtypingPoc.res +211 -0
  488. package/tests/poc/StructuralSubtypingPoc.res.mjs +61 -0
  489. package/tests/querydb/QueryDbFixtures.res +65 -0
  490. package/tests/querydb/QueryDbFixtures.res.mjs +135 -0
  491. package/tests/querydb/QueryDbOperationsTest.res +94 -0
  492. package/tests/querydb/QueryDbOperationsTest.res.mjs +168 -0
  493. package/tests/sideeffecthandler/SideEffectHandlerCallbackTest.res +56 -0
  494. package/tests/sideeffecthandler/SideEffectHandlerCallbackTest.res.mjs +77 -0
  495. package/tests/sideeffecthandler/SideEffectHandlerFixtures.res +96 -0
  496. package/tests/sideeffecthandler/SideEffectHandlerFixtures.res.mjs +139 -0
  497. package/tests/util/CsvStreamTest.res +54 -0
  498. package/tests/util/CsvStreamTest.res.mjs +51 -0
  499. package/tests/util/LruTest.res +73 -0
  500. package/tests/util/LruTest.res.mjs +105 -0
  501. package/tests/util/MetricsTest.res +36 -0
  502. package/tests/util/MetricsTest.res.mjs +53 -0
@@ -0,0 +1,1010 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+
3
+ import * as S from "sury/src/S.res.mjs";
4
+ import * as Stdlib_Dict from "@rescript/runtime/lib/es6/Stdlib_Dict.js";
5
+ import * as Stdlib_JSON from "@rescript/runtime/lib/es6/Stdlib_JSON.js";
6
+ import * as Stdlib_Array from "@rescript/runtime/lib/es6/Stdlib_Array.js";
7
+ import * as Stdlib_JsExn from "@rescript/runtime/lib/es6/Stdlib_JsExn.js";
8
+ import * as Output$Pulumi from "@reventlessdev/rescript-pulumi-pulumi/src/Output.res.mjs";
9
+ import * as Pulumi$Pulumi from "@reventlessdev/rescript-pulumi-pulumi/src/Pulumi.res.mjs";
10
+ import * as Stdlib_Option from "@rescript/runtime/lib/es6/Stdlib_Option.js";
11
+ import * as Pulumi from "@pulumi/pulumi";
12
+ import * as Belt_SetString from "@rescript/runtime/lib/es6/Belt_SetString.js";
13
+ import * as Stdlib_JsError from "@rescript/runtime/lib/es6/Stdlib_JsError.js";
14
+ import * as DcbTag$Reventless from "@reventlessdev/reventless-spec/src/components/DcbTag.res.mjs";
15
+ import * as Plugin$Reventless from "@reventlessdev/reventless-spec/src/components/Plugin.res.mjs";
16
+ import * as Task$ReventlessCore from "../../components/Task/Task.res.mjs";
17
+ import * as Primitive_exceptions from "@rescript/runtime/lib/es6/Primitive_exceptions.js";
18
+ import * as Logger$ReventlessCore from "../../util/Logger.res.mjs";
19
+ import * as Adapter$ReventlessCore from "../../adapter/Adapter.res.mjs";
20
+ import * as Task$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/Task.res.mjs";
21
+ import * as Aggregate$ReventlessCore from "../../components/Aggregate/Aggregate.res.mjs";
22
+ import * as Component$ReventlessCore from "../../components/Component.res.mjs";
23
+ import * as ReadModel$ReventlessCore from "../../components/ReadModel/ReadModel.res.mjs";
24
+ import * as Api_Naming$ReventlessCore from "../../components/Api/Api_Naming.res.mjs";
25
+ import * as PluginSpec$ReventlessCore from "../lifecycle/PluginSpec.res.mjs";
26
+ import * as DcbEventLog$ReventlessCore from "../../components/DcbEventLog/DcbEventLog.res.mjs";
27
+ import * as EventMapper$ReventlessCore from "../../components/EventMapper/EventMapper.res.mjs";
28
+ import * as Aggregate$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/Aggregate.res.mjs";
29
+ import * as ReadModel$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/ReadModel.res.mjs";
30
+ import * as Util_QueryDb$ReventlessCore from "../../util/Util_QueryDb.res.mjs";
31
+ import * as ComponentType$ReventlessCore from "../../ComponentType.res.mjs";
32
+ import * as ExportMeta$ReventlessInterop from "@reventlessdev/reventless-interop/src/ExportMeta.res.mjs";
33
+ import * as DcbEventLog$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/DcbEventLog.res.mjs";
34
+ import * as EventCollector$ReventlessCore from "../../components/EventCollector/EventCollector.res.mjs";
35
+ import * as EventMapper$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/EventMapper.res.mjs";
36
+ import * as ExtensionPoint$ReventlessCore from "../../components/ExtensionPoint/ExtensionPoint.res.mjs";
37
+ import * as StateViewSlice$ReventlessCore from "../../components/StateViewSlice/StateViewSlice.res.mjs";
38
+ import * as Util_StackRefs$ReventlessCore from "../../util/Util_StackRefs.res.mjs";
39
+ import * as ApiNoApiHelpers$ReventlessCore from "../../components/Api/ApiNoApiHelpers.res.mjs";
40
+ import * as AutomationSlice$ReventlessCore from "../../components/AutomationSlice/AutomationSlice.res.mjs";
41
+ import * as Builder_Helpers$ReventlessCore from "../../components/Builder_Helpers.res.mjs";
42
+ import * as Plugin_Callback$ReventlessCore from "./Plugin_Callback.res.mjs";
43
+ import * as Plugin_BuiltHook$ReventlessCore from "./Plugin_BuiltHook.res.mjs";
44
+ import * as StateChangeSlice$ReventlessCore from "../../components/StateChangeSlice/StateChangeSlice.res.mjs";
45
+ import * as ExtensionPoint$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/ExtensionPoint.res.mjs";
46
+ import * as Extension_Builder$ReventlessCore from "../../components/Extension/Extension_Builder.res.mjs";
47
+ import * as StateViewSlice$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/StateViewSlice.res.mjs";
48
+ import * as AutomationSlice$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/AutomationSlice.res.mjs";
49
+ import * as StateChangeSlice$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/StateChangeSlice.res.mjs";
50
+ import * as ResourceQueryRuntime$ReventlessCore from "../../util/ResourceQueryRuntime.res.mjs";
51
+ import * as EventCollector_Builder$ReventlessCore from "../../components/EventCollector/EventCollector_Builder.res.mjs";
52
+ import * as InboundTranslationSlice$ReventlessCore from "../../components/InboundTranslationSlice/InboundTranslationSlice.res.mjs";
53
+ import * as OutboundTranslationSlice$ReventlessCore from "../../components/OutboundTranslationSlice/OutboundTranslationSlice.res.mjs";
54
+ import * as PluginExtensionPointSpec$ReventlessInfra from "@reventlessdev/reventless-infra/src/types/PluginExtensionPointSpec.res.mjs";
55
+ import * as InboundTranslationSlice$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/InboundTranslationSlice.res.mjs";
56
+ import * as OutboundTranslationSlice$ReventlessInterop from "@reventlessdev/reventless-interop/src/components/OutboundTranslationSlice.res.mjs";
57
+ import * as PluginExtensionPoint_Plugin$ReventlessCore from "../connect/PluginExtensionPoint_Plugin.res.mjs";
58
+ import * as PluginConnectExtension_Builder$ReventlessCore from "../connect/PluginConnectExtension_Builder.res.mjs";
59
+ import * as PluginConnectExtension_Mapping$ReventlessCore from "../connect/PluginConnectExtension_Mapping.res.mjs";
60
+
61
+ let log = Logger$ReventlessCore.fromEnv();
62
+
63
+ function getRemoteStorageResources(pluginName, queryDbName) {
64
+ let resources = Stdlib_Option.map(Util_StackRefs$ReventlessCore.get(pluginName), stackRef => {
65
+ let readModelsOutput = stackRef.getOutput("readModels");
66
+ return readModelsOutput.apply(readModelsOpt => {
67
+ if (readModelsOpt === undefined) {
68
+ return [];
69
+ }
70
+ let dict = Stdlib_JSON.Decode.object(readModelsOpt);
71
+ if (dict === undefined) {
72
+ return [];
73
+ }
74
+ let rawReadModel = dict[queryDbName];
75
+ if (rawReadModel === undefined) {
76
+ return [];
77
+ }
78
+ try {
79
+ let readModel = S.parseOrThrow(rawReadModel, ReadModel$ReventlessInterop.resolvedOutputsSchema);
80
+ return Adapter$ReventlessCore.fromInteropResources(readModel.queryDb.resources);
81
+ } catch (raw_exn) {
82
+ let exn = Primitive_exceptions.internalToException(raw_exn);
83
+ let msg = Stdlib_Option.getOr(Stdlib_Option.flatMap(Stdlib_JsExn.fromException(exn), Stdlib_JsExn.message), "parse error");
84
+ log.error("Plugin_Helpers", undefined, `getRemoteStorageResources: failed to parse readModel ` + queryDbName + ` from ` + pluginName + `: ` + msg);
85
+ return [];
86
+ }
87
+ });
88
+ });
89
+ if (resources !== undefined) {
90
+ return resources;
91
+ }
92
+ let known = Object.keys(Util_StackRefs$ReventlessCore.stackRefs).join(",");
93
+ log.error("Plugin_Helpers", undefined, `getRemoteStorageResources: plugin ` + pluginName + ` not found (check platform.stack config) known=[` + known + `]`);
94
+ return Pulumi.output([]);
95
+ }
96
+
97
+ function getStorageResources(allQueryDbs, pluginName, queryDbName) {
98
+ if (pluginName !== undefined) {
99
+ return getRemoteStorageResources(pluginName, queryDbName);
100
+ } else {
101
+ return Pulumi.output(Util_QueryDb$ReventlessCore.getLocalStorageResources(allQueryDbs, queryDbName));
102
+ }
103
+ }
104
+
105
+ let eventCollectorContextRef = {
106
+ contents: {}
107
+ };
108
+
109
+ function registerEventCollectorContext(componentName, context) {
110
+ eventCollectorContextRef.contents[componentName] = context;
111
+ }
112
+
113
+ let adminPluginExtensionPointSpecModule = "@reventlessdev/reventless-infra/src/types/PluginExtensionPointSpec.res.mjs";
114
+
115
+ function getIncomingJsonEventsHandler(jsonEventsHandlers) {
116
+ return jsonEventsHandlers.incoming;
117
+ }
118
+
119
+ function getOutgoingJsonEventsHandler(jsonEventsHandlers) {
120
+ return jsonEventsHandlers.outgoing;
121
+ }
122
+
123
+ function serviceNameToJsonEventsHandlers(outputs, getServiceNames, handlers, getEventHandler) {
124
+ let dict = {};
125
+ Stdlib_Array.zip(outputs, handlers).forEach(param => {
126
+ let outputs = param[0];
127
+ Stdlib_Option.forEach(getEventHandler(param[1]), jsonEventsHandler => {
128
+ getServiceNames(outputs).forEach(serviceName => {
129
+ let jsonEventsHandlers = dict[serviceName];
130
+ if (jsonEventsHandlers !== undefined) {
131
+ dict[serviceName] = jsonEventsHandlers.concat([jsonEventsHandler]);
132
+ } else {
133
+ dict[serviceName] = [jsonEventsHandler];
134
+ }
135
+ });
136
+ });
137
+ });
138
+ return dict;
139
+ }
140
+
141
+ function createExtensions(extensions, pluginName, publishToPluginExtensionPoint, publishToAggregates, publishToReadModels, queryEngine, opts) {
142
+ let groups = {};
143
+ extensions.forEach(bp => {
144
+ let epName = bp.Spec.name;
145
+ let existing = groups[epName];
146
+ if (existing !== undefined) {
147
+ existing.push(bp);
148
+ } else {
149
+ groups[epName] = [bp];
150
+ }
151
+ });
152
+ let triples = Object.entries(groups).map(param => {
153
+ let blueprints = param[1];
154
+ let First = blueprints[0];
155
+ let allMappings = blueprints.flatMap(bp => bp.mappings);
156
+ let Mappings_moduleUrl = First.moduleUrl;
157
+ let Mappings = {
158
+ name: pluginName,
159
+ moduleUrl: Mappings_moduleUrl,
160
+ mappings: allMappings
161
+ };
162
+ let ExtensionMaker = Extension_Builder$ReventlessCore.Make(First.Spec)(Mappings);
163
+ let extension = ExtensionMaker.make(publishToPluginExtensionPoint, publishToAggregates, Builder_Helpers$ReventlessCore.readModelNamesForSourceName, publishToReadModels, queryEngine, opts);
164
+ let ops = ExtensionMaker.operations(extension);
165
+ let registryInfo_specModule = First.Spec.moduleUrl;
166
+ let registryInfo_mappingsModule = First.moduleUrl;
167
+ let registryInfo_delegateModule = First.delegateModuleUrl;
168
+ let registryInfo = {
169
+ specModule: registryInfo_specModule,
170
+ mappingsModule: registryInfo_mappingsModule,
171
+ delegateModule: registryInfo_delegateModule
172
+ };
173
+ return [
174
+ ExtensionMaker.outputs(extension),
175
+ ops.apply(param => ({
176
+ outgoing: param.outgoingJsonEventsHandler,
177
+ incoming: param.incomingJsonEventsHandler
178
+ })),
179
+ registryInfo
180
+ ];
181
+ });
182
+ let outputs = triples.map(param => param[0]);
183
+ let handlers = triples.map(param => param[1]);
184
+ let registryInfos = triples.map(param => param[2]);
185
+ return [
186
+ outputs,
187
+ handlers,
188
+ registryInfos
189
+ ];
190
+ }
191
+
192
+ function extractExtensionPointDefinitions(extensionPointsOutputs) {
193
+ return Pulumi.all(extensionPointsOutputs.map(extensionPointOutputs => Pulumi.all([
194
+ Output$Pulumi.flatMap(extensionPointOutputs.commandTopic, param => {
195
+ let r = param.resources[0];
196
+ if (r !== undefined) {
197
+ return r.id;
198
+ } else {
199
+ return Pulumi.output("");
200
+ }
201
+ }),
202
+ Output$Pulumi.flatMap(extensionPointOutputs.eventTopic, param => {
203
+ let r = param.resources[0];
204
+ if (r !== undefined) {
205
+ return r.id;
206
+ } else {
207
+ return Pulumi.output("");
208
+ }
209
+ })
210
+ ]).apply(param => ({
211
+ name: extensionPointOutputs.name,
212
+ commandTopic: param[0],
213
+ eventTopic: param[1]
214
+ }))));
215
+ }
216
+
217
+ function extractExtensionDefinitions(extensionsOutputs) {
218
+ return extensionsOutputs.map(extensionOutputs => ({
219
+ name: extensionOutputs.name,
220
+ extensionPointName: extensionOutputs.extensionPointName,
221
+ dcbSources: []
222
+ }));
223
+ }
224
+
225
+ function createConnectPluginExtension(pluginDefinition, publishToPluginExtensionPoint, publishToAggregates, readModelNamesForSourceName, publishToReadModels, queryEngine, opts) {
226
+ return Output$Pulumi.unzip(pluginDefinition.apply(pluginDefinition => {
227
+ let ConnectPluginExtension = PluginConnectExtension_Builder$ReventlessCore.Make({
228
+ pluginDefinition: pluginDefinition
229
+ });
230
+ let connectPluginExtension = ConnectPluginExtension.make(publishToPluginExtensionPoint, publishToAggregates, readModelNamesForSourceName, publishToReadModels, queryEngine, opts);
231
+ let connectPluginExtensionOutputs = Component$ReventlessCore.outputs(connectPluginExtension);
232
+ let connectPluginExtensionIncomingEventHandler = Component$ReventlessCore.operations(connectPluginExtension).apply(param => param.incomingJsonEventsHandler);
233
+ return [
234
+ connectPluginExtensionOutputs,
235
+ connectPluginExtensionIncomingEventHandler
236
+ ];
237
+ }));
238
+ }
239
+
240
+ let tasksOutputs = {
241
+ contents: []
242
+ };
243
+
244
+ function createTasks(tasks, aggregatesOutputs, scheduler, schedulerRoleUrn, publishToAggregates, queryEngine, resourceNaming, opts) {
245
+ tasksOutputs.contents = tasks.map(SpecificTask => SpecificTask.outputs(SpecificTask.make((taskName, bucketNameOpt) => {
246
+ let bucketName = bucketNameOpt !== undefined ? bucketNameOpt : "Bucket";
247
+ return ResourceQueryRuntime$ReventlessCore.bucketNameOfTaskExn(tasksOutputs.contents, taskName, bucketName);
248
+ }, scheduler, schedulerRoleUrn, publishToAggregates, queryEngine, resourceNaming, aggregatesOutputs, opts)));
249
+ return tasksOutputs.contents;
250
+ }
251
+
252
+ function MakeEventCollectorHelper(RuntimeEnvironment) {
253
+ return EventCollectorChannel => (PluginRuntimeBuilder => {
254
+ let PluginEventCollector = EventCollector_Builder$ReventlessCore.Make(RuntimeEnvironment)(EventCollectorChannel);
255
+ let make = (name, eventTopics, opts) => {
256
+ let eventCollector = PluginEventCollector.make(name, eventTopics, opts);
257
+ let eventCollectorOutputs = Component$ReventlessCore.outputs(eventCollector);
258
+ let resources = eventCollectorOutputs.resources;
259
+ let r = resources[resources.length - 1 | 0];
260
+ let eventCollectorUrn = r !== undefined ? r.urn : Pulumi.output("");
261
+ return [
262
+ eventCollector,
263
+ eventCollectorOutputs,
264
+ eventCollectorUrn
265
+ ];
266
+ };
267
+ let connect = (eventCollector, eventTopics, extensionPointsOutputs, extensionsOutputs, pluginExtensionPointUnwrapped, pluginDefinition, connectPluginExtensionIncomingEventHandler, extensionsHandlers, extensionPointsHandlers, connectPluginExtensionOutputs, extensionRegistryInfosOpt, extensionPointRegistryInfosOpt, aggregateQueueUrlsOpt, readModelQueueUrlsOpt, readModelNamesForSourceNameOpt) => {
268
+ let extensionRegistryInfos = extensionRegistryInfosOpt !== undefined ? extensionRegistryInfosOpt : [];
269
+ let extensionPointRegistryInfos = extensionPointRegistryInfosOpt !== undefined ? extensionPointRegistryInfosOpt : [];
270
+ let aggregateQueueUrls = aggregateQueueUrlsOpt !== undefined ? aggregateQueueUrlsOpt : ({});
271
+ let readModelQueueUrls = readModelQueueUrlsOpt !== undefined ? readModelQueueUrlsOpt : ({});
272
+ let readModelNamesForSourceName = readModelNamesForSourceNameOpt !== undefined ? readModelNamesForSourceNameOpt : ({});
273
+ let resources = Pulumi.all(extensionPointsOutputs.map(extensionPoint => extensionPoint.eventTopic)).apply(eventTopics => {
274
+ let base = eventTopics.map(eventTopic => eventTopic.resources).flat();
275
+ if (pluginExtensionPointUnwrapped !== undefined) {
276
+ return base.concat(Adapter$ReventlessCore.fromInteropResources(pluginExtensionPointUnwrapped.commandTopic.resources));
277
+ } else {
278
+ return base;
279
+ }
280
+ });
281
+ let connectExtData = connectPluginExtensionIncomingEventHandler !== undefined && connectPluginExtensionOutputs !== undefined ? Pulumi.all([
282
+ connectPluginExtensionIncomingEventHandler,
283
+ connectPluginExtensionOutputs
284
+ ]).apply(param => [
285
+ param[0],
286
+ param[1]
287
+ ]) : Pulumi.output(undefined);
288
+ return Pulumi.all([
289
+ pluginDefinition,
290
+ connectExtData,
291
+ Pulumi.all(extensionsHandlers),
292
+ Pulumi.all(extensionPointsHandlers),
293
+ resources
294
+ ]).apply(param => {
295
+ let extensionsHandlers = param[2];
296
+ let connectExtData = param[1];
297
+ let pluginDefinition = param[0];
298
+ let incomingConnectExtensionEventHandlers = connectExtData !== undefined ? serviceNameToJsonEventsHandlers([connectExtData[1]], outputs => [outputs.extensionPointName], [{
299
+ incoming: connectExtData[0]
300
+ }], getIncomingJsonEventsHandler) : ({});
301
+ let outgoingExtensionPointEventHandlers = serviceNameToJsonEventsHandlers(extensionPointsOutputs, outputs => outputs.aggregateNames, param[3].map(extensionPointsHandler => ({
302
+ outgoing: extensionPointsHandler
303
+ })), getOutgoingJsonEventsHandler);
304
+ let outgoingExtensionEventHandlers = serviceNameToJsonEventsHandlers(extensionsOutputs, outputs => outputs.aggregateNames, extensionsHandlers, getOutgoingJsonEventsHandler);
305
+ let incomingExtensionEventHandlers = serviceNameToJsonEventsHandlers(extensionsOutputs, outputs => [outputs.extensionPointName], extensionsHandlers, getIncomingJsonEventsHandler);
306
+ let Callback = Plugin_Callback$ReventlessCore.Make({
307
+ pluginDefinition: pluginDefinition,
308
+ incomingConnectExtensionEventHandlers: incomingConnectExtensionEventHandlers,
309
+ outgoingExtensionPointEventHandlers: outgoingExtensionPointEventHandlers,
310
+ outgoingExtensionEventHandlers: outgoingExtensionEventHandlers,
311
+ incomingExtensionEventHandlers: incomingExtensionEventHandlers
312
+ });
313
+ let handler = PluginEventCollector.makeHandler(eventCollector, Callback.handleJsonEvents);
314
+ let ecResource = Component$ReventlessCore.toPulumiResource(eventCollector);
315
+ let ecName = ComponentType$ReventlessCore.nameOpt(ecResource.__name, EventCollector$ReventlessCore.componentType);
316
+ let pluginDefinitionJson = Pulumi.output(JSON.stringify(S.reverseConvertToJsonOrThrow(pluginDefinition, Plugin$Reventless.pluginDefinitionSchema)));
317
+ let pluginExtensionPointCmdTopicUrl;
318
+ if (pluginExtensionPointUnwrapped !== undefined) {
319
+ let r = pluginExtensionPointUnwrapped.commandTopic.resources[0];
320
+ pluginExtensionPointCmdTopicUrl = r !== undefined ? Pulumi.output(r.id) : Pulumi.output("");
321
+ } else {
322
+ pluginExtensionPointCmdTopicUrl = Pulumi.output("");
323
+ }
324
+ let connectExtension = connectExtData !== undefined ? ({
325
+ specModule: adminPluginExtensionPointSpecModule,
326
+ mappingsModule: PluginConnectExtension_Mapping$ReventlessCore.moduleUrl,
327
+ extensionPointName: PluginExtensionPointSpec$ReventlessInfra.name
328
+ }) : undefined;
329
+ let extensions = extensionsOutputs.length === extensionRegistryInfos.length ? extensionsOutputs.map((output, i) => {
330
+ let info = extensionRegistryInfos[i];
331
+ let rmNames = Stdlib_Option.getOr(readModelNamesForSourceName[output.extensionPointName], []);
332
+ return {
333
+ name: output.name,
334
+ specModule: info.specModule,
335
+ mappingsModule: info.mappingsModule,
336
+ delegateModule: info.delegateModule,
337
+ extensionPointName: output.extensionPointName,
338
+ aggregateNames: output.aggregateNames,
339
+ readModelNames: rmNames
340
+ };
341
+ }) : [];
342
+ let mergedAggregateUrls = {};
343
+ Object.entries(aggregateQueueUrls).forEach(param => {
344
+ mergedAggregateUrls[param[0]] = param[1];
345
+ });
346
+ if (connectExtData !== undefined) {
347
+ let match = mergedAggregateUrls[PluginSpec$ReventlessCore.name];
348
+ if (match !== undefined) {
349
+
350
+ } else {
351
+ mergedAggregateUrls[PluginSpec$ReventlessCore.name] = pluginExtensionPointCmdTopicUrl;
352
+ }
353
+ }
354
+ let extensionPointEntries = extensionPointsOutputs.length === extensionPointRegistryInfos.length ? extensionPointsOutputs.map((output, i) => {
355
+ let info = extensionPointRegistryInfos[i];
356
+ let eventTopicArn = Output$Pulumi.flatMap(output.eventTopic, param => {
357
+ let r = param.resources[0];
358
+ if (r !== undefined) {
359
+ return r.id;
360
+ } else {
361
+ return Pulumi.output("");
362
+ }
363
+ });
364
+ return {
365
+ specModule: info.specModule,
366
+ mappingsModule: info.mappingsModule,
367
+ eventTopicArn: eventTopicArn,
368
+ aggregateNames: output.aggregateNames
369
+ };
370
+ }) : [];
371
+ registerEventCollectorContext(ecName, {
372
+ pluginDefinitionJson: pluginDefinitionJson,
373
+ extensionPoints: extensionPointEntries,
374
+ connectExtension: connectExtension,
375
+ extensions: extensions,
376
+ pluginExtensionPointCmdTopicUrl: pluginExtensionPointCmdTopicUrl,
377
+ publishToAggregates: mergedAggregateUrls,
378
+ readModelQueueUrls: readModelQueueUrls,
379
+ readModelNamesForSourceName: readModelNamesForSourceName
380
+ });
381
+ PluginRuntimeBuilder.forPluginEventCollector(handler, eventTopics, param[4], undefined, undefined, eventCollector);
382
+ let r$1 = Component$ReventlessCore.outputs(eventCollector).resources[0];
383
+ if (r$1 !== undefined) {
384
+ r$1.urn.apply(urn => {
385
+ pluginDefinition.eventCollector = urn;
386
+ });
387
+ } else {
388
+ Pulumi.output();
389
+ }
390
+ });
391
+ };
392
+ return {
393
+ PluginEventCollector: PluginEventCollector,
394
+ make: make,
395
+ connect: connect
396
+ };
397
+ });
398
+ }
399
+
400
+ let onPluginDeployedHook = {
401
+ contents: undefined
402
+ };
403
+
404
+ function registerOnPluginDeployed(hook) {
405
+ onPluginDeployedHook.contents = hook;
406
+ }
407
+
408
+ function clearOnPluginDeployed() {
409
+ onPluginDeployedHook.contents = undefined;
410
+ }
411
+
412
+ let onPlatformDeployedHook = {
413
+ contents: undefined
414
+ };
415
+
416
+ let lastPlatformDeployedInfo = {
417
+ contents: undefined
418
+ };
419
+
420
+ function registerOnPlatformDeployed(hook) {
421
+ onPlatformDeployedHook.contents = hook;
422
+ }
423
+
424
+ function firePlatformDeployedHook(info) {
425
+ lastPlatformDeployedInfo.contents = info;
426
+ let hook = onPlatformDeployedHook.contents;
427
+ if (hook !== undefined) {
428
+ return hook(info);
429
+ }
430
+ }
431
+
432
+ function replayPlatformDeployedHook() {
433
+ let match = onPlatformDeployedHook.contents;
434
+ let match$1 = lastPlatformDeployedInfo.contents;
435
+ if (match !== undefined && match$1 !== undefined) {
436
+ return match(match$1);
437
+ }
438
+ }
439
+
440
+ function clearOnPlatformDeployed() {
441
+ onPlatformDeployedHook.contents = undefined;
442
+ lastPlatformDeployedInfo.contents = undefined;
443
+ }
444
+
445
+ let queryFieldNamesRegistry = {};
446
+
447
+ let stateSchemaRegistry = {};
448
+
449
+ let aggregateMutationFieldsRegistry = {};
450
+
451
+ let noHooks_adminExtensionPoints = {
452
+ contents: Pulumi.output({})
453
+ };
454
+
455
+ let noHooks_scheduler = {
456
+ contents: undefined
457
+ };
458
+
459
+ let noHooks_schedulerRoleUrn = {
460
+ contents: Pulumi.output("")
461
+ };
462
+
463
+ let noHooks_api = {
464
+ contents: undefined
465
+ };
466
+
467
+ let noHooks_apiRole = {
468
+ contents: undefined
469
+ };
470
+
471
+ let noHooks_deployTarget = {
472
+ contents: "Domain"
473
+ };
474
+
475
+ let noHooks = {
476
+ adminExtensionPoints: noHooks_adminExtensionPoints,
477
+ scheduler: noHooks_scheduler,
478
+ schedulerRoleUrn: noHooks_schedulerRoleUrn,
479
+ api: noHooks_api,
480
+ apiRole: noHooks_apiRole,
481
+ deployTarget: noHooks_deployTarget
482
+ };
483
+
484
+ let NoopHooksConfig = {
485
+ hooks: noHooks
486
+ };
487
+
488
+ function registerAdminAggregateMutations(aggregates, hooks) {
489
+ aggregates.forEach(M => {
490
+ let commandSchema = M.Spec.commandSchema;
491
+ if (ApiNoApiHelpers$ReventlessCore.isNoApi(commandSchema)) {
492
+ return;
493
+ }
494
+ let constructorNames = DcbTag$Reventless.extractAllVariantNames(M.Spec.commandSchema);
495
+ let filteredConstructorNames = ApiNoApiHelpers$ReventlessCore.filterNoApiVariants(constructorNames, commandSchema);
496
+ let fieldNames = filteredConstructorNames.map(cname => Api_Naming$ReventlessCore.adminField(M.Spec.name + "_" + cname));
497
+ aggregateMutationFieldsRegistry[M.Spec.name] = fieldNames;
498
+ if (fieldNames.length !== 0) {
499
+ return Stdlib_Option.forEach(hooks.mutationResolverHook, registerResolver => registerResolver("Aggregate", fieldNames, commandSchema, M.Spec.commandAuthorization));
500
+ }
501
+ });
502
+ }
503
+
504
+ let interopMetaOutput = {
505
+ contents: null
506
+ };
507
+
508
+ function taskFieldUnion(tasks) {
509
+ return Belt_SetString.toArray(Stdlib_Array.reduce(Object.values(tasks), undefined, (acc, taskOutput) => {
510
+ let match = taskOutput.bucketNames;
511
+ let match$1 = taskOutput.sideEffectSources;
512
+ let resolved = match !== undefined ? (
513
+ match$1 !== undefined ? ({
514
+ name: taskOutput.name,
515
+ bucketNames: {},
516
+ sideEffectSources: match$1
517
+ }) : ({
518
+ name: taskOutput.name,
519
+ bucketNames: {}
520
+ })
521
+ ) : (
522
+ match$1 !== undefined ? ({
523
+ name: taskOutput.name,
524
+ sideEffectSources: match$1
525
+ }) : ({
526
+ name: taskOutput.name
527
+ })
528
+ );
529
+ return Stdlib_Array.reduce(ExportMeta$ReventlessInterop.fieldNamesOf(resolved, Task$ReventlessInterop.resolvedOutputsSchema), acc, Belt_SetString.add);
530
+ }));
531
+ }
532
+
533
+ function toInteropMeta(outputs) {
534
+ let eventMapperMinimal_eventCollector = {
535
+ name: "",
536
+ resources: []
537
+ };
538
+ let eventMapperMinimal = {
539
+ name: "",
540
+ eventCollector: eventMapperMinimal_eventCollector
541
+ };
542
+ return {
543
+ version: ExportMeta$ReventlessInterop.version,
544
+ fields: Object.fromEntries([
545
+ [
546
+ "tasks",
547
+ taskFieldUnion(outputs.tasks)
548
+ ],
549
+ [
550
+ "eventMappers",
551
+ ExportMeta$ReventlessInterop.fieldNamesOf(eventMapperMinimal, EventMapper$ReventlessInterop.resolvedOutputsSchema)
552
+ ]
553
+ ])
554
+ };
555
+ }
556
+
557
+ function getInteropMeta() {
558
+ let v = interopMetaOutput.contents;
559
+ if ((v === null)) {
560
+ return Stdlib_JsError.throwWithMessage("getInteropMeta() called before Plugin_Builder.construct()");
561
+ } else {
562
+ return v;
563
+ }
564
+ }
565
+
566
+ function exportDeploymentMetadata() {
567
+ let metadata = Object.fromEntries([
568
+ [
569
+ "environment",
570
+ Pulumi.getStack()
571
+ ],
572
+ [
573
+ "region",
574
+ Stdlib_Option.getOr(new Pulumi.Config("aws").get("region"), "unknown")
575
+ ],
576
+ [
577
+ "timestamp",
578
+ new Date().toISOString()
579
+ ],
580
+ [
581
+ "gitSha",
582
+ Stdlib_Option.getOr(process.env["GITHUB_SHA"], "unknown")
583
+ ],
584
+ [
585
+ "actor",
586
+ Stdlib_Option.getOr(process.env["GITHUB_ACTOR"], "unknown")
587
+ ]
588
+ ]);
589
+ Pulumi$Pulumi.$$export("deploymentMetadata", Pulumi.output(Stdlib_Dict.mapValues(metadata, prim => prim)));
590
+ }
591
+
592
+ function serializePlainDictExport(dict, toResolved, schema) {
593
+ return Pulumi.all(Object.entries(dict).map(param => {
594
+ let name = param[0];
595
+ return toResolved(param[1]).apply(resolved => [
596
+ name,
597
+ S.reverseConvertToJsonOrThrow(resolved, schema)
598
+ ]);
599
+ })).apply(pairs => Object.fromEntries(pairs));
600
+ }
601
+
602
+ function serializeDictExport(dictOutput, toResolved, schema) {
603
+ return Output$Pulumi.flatMap(dictOutput, dict => Pulumi.all(Object.entries(dict).map(param => {
604
+ let name = param[0];
605
+ return toResolved(param[1]).apply(resolved => [
606
+ name,
607
+ S.reverseConvertToJsonOrThrow(resolved, schema)
608
+ ]);
609
+ })).apply(pairs => Object.fromEntries(pairs)));
610
+ }
611
+
612
+ function serializeTasksOutputs(pluginOutputs) {
613
+ return Output$Pulumi.flatMap(pluginOutputs.tasks, tasks => Pulumi.all(Object.values(tasks).map(task => Task$ReventlessCore.toResolvedOutputs(task).apply(resolved => S.reverseConvertToJsonOrThrow(resolved, Task$ReventlessInterop.resolvedOutputsSchema)))).apply(arr => arr));
614
+ }
615
+
616
+ function serializeEventMappersOutputs(pluginOutputs) {
617
+ return Output$Pulumi.flatMap(pluginOutputs.aggregates, aggregates => Pulumi.all(Stdlib_Array.filterMap(Object.values(aggregates), agg => Stdlib_Option.map(agg.eventMapper, eventMapperOutput => Output$Pulumi.flatMap(eventMapperOutput, em => EventMapper$ReventlessCore.toResolvedOutputs(em).apply(resolved => S.reverseConvertToJsonOrThrow(resolved, EventMapper$ReventlessInterop.resolvedOutputsSchema)))))).apply(arr => arr));
618
+ }
619
+
620
+ function exportPlatformOutputs(extensionPointsOutputs, aggregatesOutputs, readModelsOutputs, dcbEventLogOutputs, stateChangeSlicesOutputs, stateViewSlicesOutputs, automationSlicesOutputs, outboundTranslationSlicesOutputs, inboundTranslationSlicesOutputs) {
621
+ exportDeploymentMetadata();
622
+ Pulumi$Pulumi.$$export("extensionPoints", Output$Pulumi.flatMap(extensionPointsOutputs, eps => Pulumi.all(eps.map(ep => ExtensionPoint$ReventlessCore.toResolvedOutputs(ep).apply(resolved => [
623
+ ep.name,
624
+ S.reverseConvertToJsonOrThrow(resolved, ExtensionPoint$ReventlessInterop.resolvedOutputsSchema)
625
+ ]))).apply(pairs => Object.fromEntries(pairs))));
626
+ if (Object.keys(aggregatesOutputs).length !== 0) {
627
+ Pulumi$Pulumi.$$export("aggregates", serializePlainDictExport(aggregatesOutputs, Aggregate$ReventlessCore.toResolvedOutputs, Aggregate$ReventlessInterop.resolvedOutputsSchema));
628
+ }
629
+ if (Object.keys(readModelsOutputs).length !== 0) {
630
+ Pulumi$Pulumi.$$export("readModels", serializePlainDictExport(readModelsOutputs, ReadModel$ReventlessCore.toResolvedOutputs, ReadModel$ReventlessInterop.resolvedOutputsSchema));
631
+ }
632
+ if (dcbEventLogOutputs !== undefined) {
633
+ Pulumi$Pulumi.$$export("dcbEventLog", DcbEventLog$ReventlessCore.toResolvedOutputs(dcbEventLogOutputs).apply(resolved => S.reverseConvertToJsonOrThrow(resolved, DcbEventLog$ReventlessInterop.resolvedOutputsSchema)));
634
+ }
635
+ if (Object.keys(stateChangeSlicesOutputs).length !== 0) {
636
+ Pulumi$Pulumi.$$export("stateChangeSlices", serializePlainDictExport(stateChangeSlicesOutputs, StateChangeSlice$ReventlessCore.toResolvedOutputs, StateChangeSlice$ReventlessInterop.resolvedOutputsSchema));
637
+ }
638
+ if (Object.keys(stateViewSlicesOutputs).length !== 0) {
639
+ Pulumi$Pulumi.$$export("stateViewSlices", serializePlainDictExport(stateViewSlicesOutputs, StateViewSlice$ReventlessCore.toResolvedOutputs, StateViewSlice$ReventlessInterop.resolvedOutputsSchema));
640
+ }
641
+ if (Object.keys(automationSlicesOutputs).length !== 0) {
642
+ Pulumi$Pulumi.$$export("automationSlices", serializePlainDictExport(automationSlicesOutputs, AutomationSlice$ReventlessCore.toResolvedOutputs, AutomationSlice$ReventlessInterop.resolvedOutputsSchema));
643
+ }
644
+ if (Object.keys(outboundTranslationSlicesOutputs).length !== 0) {
645
+ Pulumi$Pulumi.$$export("outboundTranslationSlices", serializePlainDictExport(outboundTranslationSlicesOutputs, OutboundTranslationSlice$ReventlessCore.toResolvedOutputs, OutboundTranslationSlice$ReventlessInterop.resolvedOutputsSchema));
646
+ }
647
+ if (Object.keys(inboundTranslationSlicesOutputs).length !== 0) {
648
+ return Pulumi$Pulumi.$$export("inboundTranslationSlices", serializePlainDictExport(inboundTranslationSlicesOutputs, InboundTranslationSlice$ReventlessCore.toResolvedOutputs, InboundTranslationSlice$ReventlessInterop.resolvedOutputsSchema));
649
+ }
650
+ }
651
+
652
+ function exportPluginOutputs(pluginOutputs) {
653
+ exportDeploymentMetadata();
654
+ Pulumi$Pulumi.$$export("id", pluginOutputs.id.apply(v => v));
655
+ Pulumi$Pulumi.$$export("version", pluginOutputs.version.apply(v => v));
656
+ Pulumi$Pulumi.$$export("aggregates", serializeDictExport(pluginOutputs.aggregates, Aggregate$ReventlessCore.toResolvedOutputs, Aggregate$ReventlessInterop.resolvedOutputsSchema));
657
+ Pulumi$Pulumi.$$export("readModels", serializeDictExport(pluginOutputs.readModels, ReadModel$ReventlessCore.toResolvedOutputs, ReadModel$ReventlessInterop.resolvedOutputsSchema));
658
+ Pulumi$Pulumi.$$export("extensionPoints", serializeDictExport(pluginOutputs.extensionPoints, ExtensionPoint$ReventlessCore.toResolvedOutputs, ExtensionPoint$ReventlessInterop.resolvedOutputsSchema));
659
+ Pulumi$Pulumi.$$export("stateChangeSlices", serializeDictExport(pluginOutputs.stateChangeSlices, StateChangeSlice$ReventlessCore.toResolvedOutputs, StateChangeSlice$ReventlessInterop.resolvedOutputsSchema));
660
+ Pulumi$Pulumi.$$export("stateViewSlices", serializeDictExport(pluginOutputs.stateViewSlices, StateViewSlice$ReventlessCore.toResolvedOutputs, StateViewSlice$ReventlessInterop.resolvedOutputsSchema));
661
+ Pulumi$Pulumi.$$export("automationSlices", serializeDictExport(pluginOutputs.automationSlices, AutomationSlice$ReventlessCore.toResolvedOutputs, AutomationSlice$ReventlessInterop.resolvedOutputsSchema));
662
+ Pulumi$Pulumi.$$export("outboundTranslationSlices", serializeDictExport(pluginOutputs.outboundTranslationSlices, OutboundTranslationSlice$ReventlessCore.toResolvedOutputs, OutboundTranslationSlice$ReventlessInterop.resolvedOutputsSchema));
663
+ Pulumi$Pulumi.$$export("inboundTranslationSlices", serializeDictExport(pluginOutputs.inboundTranslationSlices, InboundTranslationSlice$ReventlessCore.toResolvedOutputs, InboundTranslationSlice$ReventlessInterop.resolvedOutputsSchema));
664
+ Pulumi$Pulumi.$$export("dcbEventLog", Output$Pulumi.flatMap(pluginOutputs.dcbEventLog, opt => {
665
+ if (opt !== undefined) {
666
+ return DcbEventLog$ReventlessCore.toResolvedOutputs(opt).apply(resolved => S.reverseConvertToJsonOrThrow(resolved, DcbEventLog$ReventlessInterop.resolvedOutputsSchema));
667
+ } else {
668
+ return Pulumi.output(null);
669
+ }
670
+ }));
671
+ Pulumi$Pulumi.$$export("tasks", serializeTasksOutputs(pluginOutputs));
672
+ Pulumi$Pulumi.$$export("eventMappers", serializeEventMappersOutputs(pluginOutputs));
673
+ let hook = onPluginDeployedHook.contents;
674
+ if (hook === undefined) {
675
+ return;
676
+ }
677
+ let actor = Stdlib_Option.getOr(Stdlib_Option.orElse(Stdlib_Option.orElse(process.env["GITHUB_ACTOR"], process.env["CI_COMMIT_AUTHOR"]), process.env["USER"]), "local");
678
+ let deploymentId = Stdlib_Option.getOr(Stdlib_Option.orElse(process.env["GITHUB_SHA"], process.env["CI_COMMIT_SHA"]), new Date().toISOString());
679
+ let resolveAggregates = Output$Pulumi.flatMap(pluginOutputs.aggregates, aggs => Pulumi.all(Object.entries(aggs).map(param => {
680
+ let name = param[0];
681
+ return Aggregate$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
682
+ name: name,
683
+ kind: "Aggregate",
684
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
685
+ resources: [],
686
+ subComponents: [
687
+ {
688
+ role: "commandGenerator",
689
+ resources: resolved.commandGenerator.resources
690
+ },
691
+ {
692
+ role: "commandTopic",
693
+ resources: resolved.commandTopic.resources
694
+ },
695
+ {
696
+ role: "eventLog",
697
+ resources: resolved.eventLog.resources
698
+ },
699
+ {
700
+ role: "eventTopic",
701
+ resources: resolved.eventLog.eventTopic.resources
702
+ }
703
+ ]
704
+ }));
705
+ })));
706
+ let resolveReadModels = Output$Pulumi.flatMap(pluginOutputs.readModels, rms => Pulumi.all(Object.entries(rms).map(param => {
707
+ let name = param[0];
708
+ return ReadModel$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
709
+ name: name,
710
+ kind: "ReadModel",
711
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
712
+ resources: [],
713
+ subComponents: [{
714
+ role: "queryDb",
715
+ resources: resolved.queryDb.resources
716
+ }]
717
+ }));
718
+ })));
719
+ let resolveExtensionPoints = Output$Pulumi.flatMap(pluginOutputs.extensionPoints, eps => Pulumi.all(Object.entries(eps).map(param => {
720
+ let name = param[0];
721
+ return ExtensionPoint$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
722
+ name: name,
723
+ kind: "ExtensionPoint",
724
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
725
+ resources: [],
726
+ subComponents: [
727
+ {
728
+ role: "commandTopic",
729
+ resources: resolved.commandTopic.resources
730
+ },
731
+ {
732
+ role: "eventTopic",
733
+ resources: resolved.eventTopic.resources
734
+ }
735
+ ]
736
+ }));
737
+ })));
738
+ let resolveStateChangeSlices = Output$Pulumi.flatMap(pluginOutputs.stateChangeSlices, slices => Pulumi.all(Object.entries(slices).map(param => {
739
+ let name = param[0];
740
+ return StateChangeSlice$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
741
+ name: name,
742
+ kind: "StateChangeSlice",
743
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
744
+ resources: resolved.resources,
745
+ subComponents: []
746
+ }));
747
+ })));
748
+ let resolveStateViewSlices = Output$Pulumi.flatMap(pluginOutputs.stateViewSlices, slices => Pulumi.all(Object.entries(slices).map(param => {
749
+ let name = param[0];
750
+ return StateViewSlice$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
751
+ name: name,
752
+ kind: "StateViewSlice",
753
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
754
+ resources: resolved.resources,
755
+ subComponents: [{
756
+ role: "queryDb",
757
+ resources: resolved.queryDb.resources
758
+ }]
759
+ }));
760
+ })));
761
+ let resolveAutomationSlices = Output$Pulumi.flatMap(pluginOutputs.automationSlices, slices => Pulumi.all(Object.entries(slices).map(param => {
762
+ let name = param[0];
763
+ return AutomationSlice$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
764
+ name: name,
765
+ kind: "AutomationSlice",
766
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
767
+ resources: resolved.resources,
768
+ subComponents: [{
769
+ role: "queryDb",
770
+ resources: resolved.queryDb.resources
771
+ }]
772
+ }));
773
+ })));
774
+ let resolveOutboundTranslationSlices = Output$Pulumi.flatMap(pluginOutputs.outboundTranslationSlices, slices => Pulumi.all(Object.entries(slices).map(param => {
775
+ let name = param[0];
776
+ return OutboundTranslationSlice$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
777
+ name: name,
778
+ kind: "OutboundTranslationSlice",
779
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
780
+ resources: resolved.resources,
781
+ subComponents: [{
782
+ role: "queryDb",
783
+ resources: resolved.queryDb.resources
784
+ }]
785
+ }));
786
+ })));
787
+ let resolveInboundTranslationSlices = Output$Pulumi.flatMap(pluginOutputs.inboundTranslationSlices, slices => Pulumi.all(Object.entries(slices).map(param => {
788
+ let name = param[0];
789
+ return InboundTranslationSlice$ReventlessCore.toResolvedOutputs(param[1]).apply(resolved => ({
790
+ name: name,
791
+ kind: "InboundTranslationSlice",
792
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry[name], {}),
793
+ resources: resolved.resources,
794
+ subComponents: [{
795
+ role: "queryDb",
796
+ resources: resolved.queryDb.resources
797
+ }]
798
+ }));
799
+ })));
800
+ let resolveDcbEventLog = Output$Pulumi.flatMap(pluginOutputs.dcbEventLog, opt => {
801
+ if (opt !== undefined) {
802
+ return DcbEventLog$ReventlessCore.toResolvedOutputs(opt).apply(resolved => [{
803
+ name: "DcbEventLog",
804
+ kind: "DcbEventLog",
805
+ schema: Stdlib_Option.getOr(Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry["DcbEventLog"], {}),
806
+ resources: resolved.resources,
807
+ subComponents: [{
808
+ role: "eventTopic",
809
+ resources: resolved.eventTopic.resources
810
+ }]
811
+ }]);
812
+ } else {
813
+ return Pulumi.output([]);
814
+ }
815
+ });
816
+ let resolveExtensionWirings = Output$Pulumi.flatMap(pluginOutputs.extensions, exts => pluginOutputs.id.apply(id => {
817
+ let pluginName = id.split("@")[0];
818
+ let pluginVersion = id.split("@")[1];
819
+ return Object.values(exts).map(ext => {
820
+ let providerPlugin = ext.extensionPointName.split(".")[0];
821
+ return {
822
+ extensionName: ext.name,
823
+ extensionPointName: ext.extensionPointName,
824
+ providerPlugin: providerPlugin,
825
+ providerVersion: "",
826
+ subscriberPlugin: pluginName,
827
+ subscriberVersion: pluginVersion
828
+ };
829
+ });
830
+ }));
831
+ let hookOutput = Output$Pulumi.flatMap(Output$Pulumi.flatMap(Pulumi.all([
832
+ pluginOutputs.id,
833
+ pluginOutputs.version,
834
+ resolveAggregates,
835
+ resolveReadModels,
836
+ resolveExtensionPoints,
837
+ resolveStateChangeSlices
838
+ ]), param => {
839
+ let scs = param[5];
840
+ let eps = param[4];
841
+ let rms = param[3];
842
+ let aggs = param[2];
843
+ let version = param[1];
844
+ let id = param[0];
845
+ return Pulumi.all([
846
+ resolveStateViewSlices,
847
+ resolveAutomationSlices,
848
+ resolveOutboundTranslationSlices,
849
+ resolveInboundTranslationSlices,
850
+ resolveDcbEventLog,
851
+ resolveExtensionWirings
852
+ ]).apply(param => {
853
+ let name = id.split("@")[0];
854
+ let meta = Plugin_BuiltHook$ReventlessCore.pluginMetadataRegistry.contents;
855
+ return hook({
856
+ name: name,
857
+ version: version,
858
+ environment: Pulumi.getStack(),
859
+ stackName: Pulumi.getStack(),
860
+ deployedAt: new Date().toISOString(),
861
+ actor: actor,
862
+ deploymentId: deploymentId,
863
+ kind: Stdlib_Option.flatMap(meta, m => m.kind),
864
+ displayName: Stdlib_Option.flatMap(meta, m => m.displayName),
865
+ vendor: Stdlib_Option.flatMap(meta, m => m.vendor),
866
+ architectureType: Stdlib_Option.flatMap(meta, m => m.architectureType),
867
+ components: [
868
+ aggs,
869
+ rms,
870
+ eps,
871
+ scs,
872
+ param[0],
873
+ param[1],
874
+ param[2],
875
+ param[3],
876
+ param[4]
877
+ ].flat(),
878
+ extensionWirings: param[5]
879
+ });
880
+ });
881
+ }), p => p);
882
+ Pulumi$Pulumi.$$export("_pluginDeployedSync", hookOutput);
883
+ }
884
+
885
+ let adminPluginExtensionPointMappingsModule = PluginExtensionPoint_Plugin$ReventlessCore.moduleUrl;
886
+
887
+ let pluginConnectExtensionMappingsModule = PluginConnectExtension_Mapping$ReventlessCore.moduleUrl;
888
+
889
+ let addEventMapperFns = Builder_Helpers$ReventlessCore.addEventMapperFns;
890
+
891
+ let aggregateResources = Builder_Helpers$ReventlessCore.aggregateResources;
892
+
893
+ let publishToAggregates = Builder_Helpers$ReventlessCore.publishToAggregates;
894
+
895
+ let aggregateFinishFns = Builder_Helpers$ReventlessCore.aggregateFinishFns;
896
+
897
+ let createAggregatesWithoutEventMappers = Builder_Helpers$ReventlessCore.createAggregatesWithoutEventMappers;
898
+
899
+ let finishAggregates = Builder_Helpers$ReventlessCore.finishAggregates;
900
+
901
+ let addEventMappers = Builder_Helpers$ReventlessCore.addEventMappers;
902
+
903
+ let readModelNamesForSourceName = Builder_Helpers$ReventlessCore.readModelNamesForSourceName;
904
+
905
+ let publishToReadModels = Builder_Helpers$ReventlessCore.publishToReadModels;
906
+
907
+ let finishReadModels = Builder_Helpers$ReventlessCore.finishReadModels;
908
+
909
+ let extractReadModelsOutputs = Builder_Helpers$ReventlessCore.extractReadModelsOutputs;
910
+
911
+ let createReadModels = Builder_Helpers$ReventlessCore.createReadModels;
912
+
913
+ let createExtensionPoints = Builder_Helpers$ReventlessCore.createExtensionPoints;
914
+
915
+ let createResolvers = Builder_Helpers$ReventlessCore.createResolvers;
916
+
917
+ let ApiNoApi;
918
+
919
+ let isNoApi = ApiNoApiHelpers$ReventlessCore.isNoApi;
920
+
921
+ let getExcludedVariants = ApiNoApiHelpers$ReventlessCore.getExcludedVariants;
922
+
923
+ let filterNoApiVariants = ApiNoApiHelpers$ReventlessCore.filterNoApiVariants;
924
+
925
+ let componentSchemaRegistry = Plugin_BuiltHook$ReventlessCore.componentSchemaRegistry;
926
+
927
+ let pluginMetadataRegistry = Plugin_BuiltHook$ReventlessCore.pluginMetadataRegistry;
928
+
929
+ let registerPluginMetadata = Plugin_BuiltHook$ReventlessCore.registerPluginMetadata;
930
+
931
+ let clearPluginMetadata = Plugin_BuiltHook$ReventlessCore.clearPluginMetadata;
932
+
933
+ let onPluginBuiltHook = Plugin_BuiltHook$ReventlessCore.onPluginBuiltHook;
934
+
935
+ let registerOnPluginBuilt = Plugin_BuiltHook$ReventlessCore.registerOnPluginBuilt;
936
+
937
+ let clearOnPluginBuilt = Plugin_BuiltHook$ReventlessCore.clearOnPluginBuilt;
938
+
939
+ export {
940
+ log,
941
+ getRemoteStorageResources,
942
+ getStorageResources,
943
+ eventCollectorContextRef,
944
+ registerEventCollectorContext,
945
+ adminPluginExtensionPointSpecModule,
946
+ adminPluginExtensionPointMappingsModule,
947
+ pluginConnectExtensionMappingsModule,
948
+ getIncomingJsonEventsHandler,
949
+ getOutgoingJsonEventsHandler,
950
+ serviceNameToJsonEventsHandlers,
951
+ addEventMapperFns,
952
+ aggregateResources,
953
+ publishToAggregates,
954
+ aggregateFinishFns,
955
+ createAggregatesWithoutEventMappers,
956
+ finishAggregates,
957
+ addEventMappers,
958
+ readModelNamesForSourceName,
959
+ publishToReadModels,
960
+ finishReadModels,
961
+ extractReadModelsOutputs,
962
+ createReadModels,
963
+ createExtensionPoints,
964
+ createResolvers,
965
+ ApiNoApi,
966
+ isNoApi,
967
+ getExcludedVariants,
968
+ filterNoApiVariants,
969
+ createExtensions,
970
+ extractExtensionPointDefinitions,
971
+ extractExtensionDefinitions,
972
+ createConnectPluginExtension,
973
+ tasksOutputs,
974
+ createTasks,
975
+ MakeEventCollectorHelper,
976
+ componentSchemaRegistry,
977
+ pluginMetadataRegistry,
978
+ registerPluginMetadata,
979
+ clearPluginMetadata,
980
+ onPluginBuiltHook,
981
+ registerOnPluginBuilt,
982
+ clearOnPluginBuilt,
983
+ onPluginDeployedHook,
984
+ registerOnPluginDeployed,
985
+ clearOnPluginDeployed,
986
+ onPlatformDeployedHook,
987
+ lastPlatformDeployedInfo,
988
+ registerOnPlatformDeployed,
989
+ firePlatformDeployedHook,
990
+ replayPlatformDeployedHook,
991
+ clearOnPlatformDeployed,
992
+ queryFieldNamesRegistry,
993
+ stateSchemaRegistry,
994
+ aggregateMutationFieldsRegistry,
995
+ noHooks,
996
+ NoopHooksConfig,
997
+ registerAdminAggregateMutations,
998
+ interopMetaOutput,
999
+ taskFieldUnion,
1000
+ toInteropMeta,
1001
+ getInteropMeta,
1002
+ exportDeploymentMetadata,
1003
+ serializePlainDictExport,
1004
+ serializeDictExport,
1005
+ serializeTasksOutputs,
1006
+ serializeEventMappersOutputs,
1007
+ exportPlatformOutputs,
1008
+ exportPluginOutputs,
1009
+ }
1010
+ /* log Not a pure module */