@motiadev/core 0.13.0-beta.161 → 0.13.0-beta.162-439402

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 (522) hide show
  1. package/dist/index.d.mts +38 -0
  2. package/dist/index.mjs +30 -0
  3. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.mts +17 -0
  4. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.mts.map +1 -0
  5. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.mjs +51 -0
  6. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.mjs.map +1 -0
  7. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.mts +19 -0
  8. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.mts.map +1 -0
  9. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.mjs +54 -0
  10. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.mjs.map +1 -0
  11. package/dist/src/adapters/defaults/index.d.mts +8 -0
  12. package/dist/src/adapters/defaults/index.mjs +10 -0
  13. package/dist/src/adapters/defaults/state/file-state-adapter.d.mts +27 -0
  14. package/dist/src/adapters/defaults/state/file-state-adapter.d.mts.map +1 -0
  15. package/dist/src/adapters/defaults/state/file-state-adapter.mjs +105 -0
  16. package/dist/src/adapters/defaults/state/file-state-adapter.mjs.map +1 -0
  17. package/dist/src/adapters/defaults/state/memory-state-adapter.d.mts +20 -0
  18. package/dist/src/adapters/defaults/state/memory-state-adapter.d.mts.map +1 -0
  19. package/dist/src/adapters/defaults/state/memory-state-adapter.mjs +58 -0
  20. package/dist/src/adapters/defaults/state/memory-state-adapter.mjs.map +1 -0
  21. package/dist/src/adapters/defaults/state/utils.mjs +40 -0
  22. package/dist/src/adapters/defaults/state/utils.mjs.map +1 -0
  23. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.mts +13 -0
  24. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.mts.map +1 -0
  25. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.mjs +16 -0
  26. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.mjs.map +1 -0
  27. package/dist/src/adapters/defaults/stream/file-stream-adapter.d.mts +24 -0
  28. package/dist/src/adapters/defaults/stream/file-stream-adapter.d.mts.map +1 -0
  29. package/dist/src/adapters/defaults/stream/file-stream-adapter.mjs +84 -0
  30. package/dist/src/adapters/defaults/stream/file-stream-adapter.mjs.map +1 -0
  31. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.mts +10 -0
  32. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.mts.map +1 -0
  33. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.mjs +12 -0
  34. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.mjs.map +1 -0
  35. package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.mts +20 -0
  36. package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.mts.map +1 -0
  37. package/dist/src/adapters/defaults/stream/memory-stream-adapter.mjs +58 -0
  38. package/dist/src/adapters/defaults/stream/memory-stream-adapter.mjs.map +1 -0
  39. package/dist/src/adapters/interfaces/cron-adapter.interface.d.mts +32 -0
  40. package/dist/src/adapters/interfaces/cron-adapter.interface.d.mts.map +1 -0
  41. package/dist/src/adapters/interfaces/event-adapter.interface.d.mts +19 -0
  42. package/dist/src/adapters/interfaces/event-adapter.interface.d.mts.map +1 -0
  43. package/dist/src/adapters/interfaces/observability-adapter.interface.d.mts +27 -0
  44. package/dist/src/adapters/interfaces/observability-adapter.interface.d.mts.map +1 -0
  45. package/dist/src/adapters/interfaces/state-adapter.interface.d.mts +28 -0
  46. package/dist/src/adapters/interfaces/state-adapter.interface.d.mts.map +1 -0
  47. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.mts +10 -0
  48. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.mts.map +1 -0
  49. package/dist/src/adapters/interfaces/stream-adapter.interface.d.mts +26 -0
  50. package/dist/src/adapters/interfaces/stream-adapter.interface.d.mts.map +1 -0
  51. package/dist/src/adapters/interfaces/stream-adapter.interface.mjs +17 -0
  52. package/dist/src/adapters/interfaces/stream-adapter.interface.mjs.map +1 -0
  53. package/dist/src/analytics/utils.d.mts +9 -0
  54. package/dist/src/analytics/utils.d.mts.map +1 -0
  55. package/dist/src/analytics/utils.mjs +35 -0
  56. package/dist/src/analytics/utils.mjs.map +1 -0
  57. package/dist/src/call-step-file.mjs +213 -0
  58. package/dist/src/call-step-file.mjs.map +1 -0
  59. package/dist/src/config.d.mts +7 -0
  60. package/dist/src/config.d.mts.map +1 -0
  61. package/dist/src/config.mjs +6 -0
  62. package/dist/src/config.mjs.map +1 -0
  63. package/dist/src/cron-handler.d.mts +18 -0
  64. package/dist/src/cron-handler.d.mts.map +1 -0
  65. package/dist/src/cron-handler.mjs +103 -0
  66. package/dist/src/cron-handler.mjs.map +1 -0
  67. package/dist/src/endpoints/analytics-endpoint.mjs +29 -0
  68. package/dist/src/endpoints/analytics-endpoint.mjs.map +1 -0
  69. package/dist/src/endpoints/flows-config-endpoint.mjs +38 -0
  70. package/dist/src/endpoints/flows-config-endpoint.mjs.map +1 -0
  71. package/dist/src/endpoints/flows-endpoint.mjs +39 -0
  72. package/dist/src/endpoints/flows-endpoint.mjs.map +1 -0
  73. package/dist/src/endpoints/step-endpoint.mjs +41 -0
  74. package/dist/src/endpoints/step-endpoint.mjs.map +1 -0
  75. package/dist/src/generate-trace-id.mjs +13 -0
  76. package/dist/src/generate-trace-id.mjs.map +1 -0
  77. package/dist/src/get-step-config.d.mts +9 -0
  78. package/dist/src/get-step-config.d.mts.map +1 -0
  79. package/dist/src/get-step-config.mjs +63 -0
  80. package/dist/src/get-step-config.mjs.map +1 -0
  81. package/dist/src/get-step-language.mjs +14 -0
  82. package/dist/src/get-step-language.mjs.map +1 -0
  83. package/dist/src/guards.d.mts +10 -0
  84. package/dist/src/guards.d.mts.map +1 -0
  85. package/dist/src/guards.mjs +9 -0
  86. package/dist/src/guards.mjs.map +1 -0
  87. package/dist/src/helper/flows-helper.mjs +126 -0
  88. package/dist/src/helper/flows-helper.mjs.map +1 -0
  89. package/dist/src/infrastructure-validator/defaults.mjs +17 -0
  90. package/dist/src/infrastructure-validator/defaults.mjs.map +1 -0
  91. package/dist/src/infrastructure-validator/index.d.mts +3 -0
  92. package/dist/src/infrastructure-validator/index.mjs +4 -0
  93. package/dist/src/infrastructure-validator/schemas.d.mts +1 -0
  94. package/dist/src/infrastructure-validator/schemas.mjs +77 -0
  95. package/dist/src/infrastructure-validator/schemas.mjs.map +1 -0
  96. package/dist/src/infrastructure-validator/types.d.mts +14 -0
  97. package/dist/src/infrastructure-validator/types.d.mts.map +1 -0
  98. package/dist/src/infrastructure-validator/validations.d.mts +7 -0
  99. package/dist/src/infrastructure-validator/validations.d.mts.map +1 -0
  100. package/dist/src/infrastructure-validator/validations.mjs +29 -0
  101. package/dist/src/infrastructure-validator/validations.mjs.map +1 -0
  102. package/dist/src/language-runner.mjs +44 -0
  103. package/dist/src/language-runner.mjs.map +1 -0
  104. package/dist/src/locked-data.d.mts +81 -0
  105. package/dist/src/locked-data.d.mts.map +1 -0
  106. package/dist/src/locked-data.mjs +223 -0
  107. package/dist/src/locked-data.mjs.map +1 -0
  108. package/dist/src/logger-factory.d.mts +16 -0
  109. package/dist/src/logger-factory.d.mts.map +1 -0
  110. package/dist/src/logger-factory.mjs +33 -0
  111. package/dist/src/logger-factory.mjs.map +1 -0
  112. package/dist/src/logger.d.mts +28 -0
  113. package/dist/src/logger.d.mts.map +1 -0
  114. package/dist/src/logger.mjs +64 -0
  115. package/dist/src/logger.mjs.map +1 -0
  116. package/dist/src/mermaid-generator.d.mts +9 -0
  117. package/dist/src/mermaid-generator.d.mts.map +1 -0
  118. package/dist/src/mermaid-generator.mjs +126 -0
  119. package/dist/src/mermaid-generator.mjs.map +1 -0
  120. package/dist/src/motia.d.mts +36 -0
  121. package/dist/src/motia.d.mts.map +1 -0
  122. package/dist/src/motia.mjs +6 -0
  123. package/dist/src/motia.mjs.map +1 -0
  124. package/dist/src/node/can-access.d.mts +1 -0
  125. package/dist/src/node/can-access.mjs +36 -0
  126. package/dist/src/node/can-access.mjs.map +1 -0
  127. package/dist/src/node/get-config.d.mts +1 -0
  128. package/dist/src/node/get-config.mjs +49 -0
  129. package/dist/src/node/get-config.mjs.map +1 -0
  130. package/dist/src/node/logger.mjs +47 -0
  131. package/dist/src/node/logger.mjs.map +1 -0
  132. package/dist/src/node/middleware-compose.mjs +10 -0
  133. package/dist/src/node/middleware-compose.mjs.map +1 -0
  134. package/dist/src/node/node-runner.d.mts +1 -0
  135. package/dist/src/node/node-runner.mjs +94 -0
  136. package/dist/src/node/node-runner.mjs.map +1 -0
  137. package/dist/src/node/rpc-state-manager.mjs +35 -0
  138. package/dist/src/node/rpc-state-manager.mjs.map +1 -0
  139. package/dist/src/node/rpc.mjs +55 -0
  140. package/dist/src/node/rpc.mjs.map +1 -0
  141. package/dist/src/observability/create-trace.mjs +26 -0
  142. package/dist/src/observability/create-trace.mjs.map +1 -0
  143. package/dist/src/observability/index.d.mts +7 -0
  144. package/dist/src/observability/index.d.mts.map +1 -0
  145. package/dist/src/observability/no-tracer.d.mts +15 -0
  146. package/dist/src/observability/no-tracer.d.mts.map +1 -0
  147. package/dist/src/observability/no-tracer.mjs +15 -0
  148. package/dist/src/observability/no-tracer.mjs.map +1 -0
  149. package/dist/src/observability/redis-trace-stream-adapter.mjs +76 -0
  150. package/dist/src/observability/redis-trace-stream-adapter.mjs.map +1 -0
  151. package/dist/src/observability/stream-tracer.mjs +87 -0
  152. package/dist/src/observability/stream-tracer.mjs.map +1 -0
  153. package/dist/src/observability/trace-manager.mjs +24 -0
  154. package/dist/src/observability/trace-manager.mjs.map +1 -0
  155. package/dist/src/observability/tracer.mjs +87 -0
  156. package/dist/src/observability/tracer.mjs.map +1 -0
  157. package/dist/src/observability/types.d.mts +14 -0
  158. package/dist/src/observability/types.d.mts.map +1 -0
  159. package/dist/src/pretty-print.mjs +50 -0
  160. package/dist/src/pretty-print.mjs.map +1 -0
  161. package/dist/src/printer.d.mts +65 -0
  162. package/dist/src/printer.d.mts.map +1 -0
  163. package/dist/src/printer.mjs +147 -0
  164. package/dist/src/printer.mjs.map +1 -0
  165. package/dist/src/process-communication/communication-config.mjs +26 -0
  166. package/dist/src/process-communication/communication-config.mjs.map +1 -0
  167. package/dist/src/process-communication/process-manager.mjs +67 -0
  168. package/dist/src/process-communication/process-manager.mjs.map +1 -0
  169. package/dist/src/queue-manager.d.mts +37 -0
  170. package/dist/src/queue-manager.d.mts.map +1 -0
  171. package/dist/src/queue-manager.mjs +209 -0
  172. package/dist/src/queue-manager.mjs.map +1 -0
  173. package/dist/src/run-stream-can-access.mjs +59 -0
  174. package/dist/src/run-stream-can-access.mjs.map +1 -0
  175. package/dist/src/schema-utils.mjs +30 -0
  176. package/dist/src/schema-utils.mjs.map +1 -0
  177. package/dist/src/server.d.mts +40 -0
  178. package/dist/src/server.d.mts.map +1 -0
  179. package/dist/src/server.mjs +332 -0
  180. package/dist/src/server.mjs.map +1 -0
  181. package/dist/src/socket-server/helpers.mjs +35 -0
  182. package/dist/src/socket-server/helpers.mjs.map +1 -0
  183. package/dist/src/socket-server.mjs +127 -0
  184. package/dist/src/socket-server.mjs.map +1 -0
  185. package/dist/src/state/create-state-adapter.d.mts +11 -0
  186. package/dist/src/state/create-state-adapter.d.mts.map +1 -0
  187. package/dist/src/state/create-state-adapter.mjs +11 -0
  188. package/dist/src/state/create-state-adapter.mjs.map +1 -0
  189. package/dist/src/step-handler-rpc-processor.mjs +56 -0
  190. package/dist/src/step-handler-rpc-processor.mjs.map +1 -0
  191. package/dist/src/step-handler-rpc-stdin-processor.mjs +71 -0
  192. package/dist/src/step-handler-rpc-stdin-processor.mjs.map +1 -0
  193. package/dist/src/step-handlers.d.mts +13 -0
  194. package/dist/src/step-handlers.d.mts.map +1 -0
  195. package/dist/src/step-handlers.mjs +93 -0
  196. package/dist/src/step-handlers.mjs.map +1 -0
  197. package/dist/src/step-validator.d.mts +15 -0
  198. package/dist/src/step-validator.d.mts.map +1 -0
  199. package/dist/src/step-validator.mjs +118 -0
  200. package/dist/src/step-validator.mjs.map +1 -0
  201. package/dist/src/steps/emit.step.mjs +20 -0
  202. package/dist/src/steps/emit.step.mjs.map +1 -0
  203. package/dist/src/steps/index.mjs +14 -0
  204. package/dist/src/steps/index.mjs.map +1 -0
  205. package/dist/src/streams/flows-config-stream.mjs +46 -0
  206. package/dist/src/streams/flows-config-stream.mjs.map +1 -0
  207. package/dist/src/streams/flows-stream.mjs +33 -0
  208. package/dist/src/streams/flows-stream.mjs.map +1 -0
  209. package/dist/src/streams/redis-logs-stream.d.mts +3 -0
  210. package/dist/src/streams/redis-logs-stream.mjs +97 -0
  211. package/dist/src/streams/redis-logs-stream.mjs.map +1 -0
  212. package/dist/src/streams/stream-factory.d.mts +7 -0
  213. package/dist/src/streams/stream-factory.d.mts.map +1 -0
  214. package/dist/src/types/app-config-types.d.mts +48 -0
  215. package/dist/src/types/app-config-types.d.mts.map +1 -0
  216. package/dist/src/types/generate-type-from-schema.mjs +30 -0
  217. package/dist/src/types/generate-type-from-schema.mjs.map +1 -0
  218. package/dist/src/types/generate-types-from-response.mjs +12 -0
  219. package/dist/src/types/generate-types-from-response.mjs.map +1 -0
  220. package/dist/src/types/generate-types.mjs +101 -0
  221. package/dist/src/types/generate-types.mjs.map +1 -0
  222. package/dist/src/types/merge-schemas.mjs +102 -0
  223. package/dist/src/types/merge-schemas.mjs.map +1 -0
  224. package/dist/src/types/schema.types.d.mts +13 -0
  225. package/dist/src/types/schema.types.d.mts.map +1 -0
  226. package/dist/src/types/schema.types.mjs +14 -0
  227. package/dist/src/types/schema.types.mjs.map +1 -0
  228. package/dist/src/types-stream.d.mts +46 -0
  229. package/dist/src/types-stream.d.mts.map +1 -0
  230. package/dist/src/types.d.mts +188 -0
  231. package/dist/src/types.d.mts.map +1 -0
  232. package/dist/src/utils.mjs +13 -0
  233. package/dist/src/utils.mjs.map +1 -0
  234. package/dist/src/validate-event-input.mjs +76 -0
  235. package/dist/src/validate-event-input.mjs.map +1 -0
  236. package/jest.config.cjs +20 -0
  237. package/package.json +20 -8
  238. package/tsdown.config.ts +52 -0
  239. package/dist/index.d.ts +0 -30
  240. package/dist/index.d.ts.map +0 -1
  241. package/dist/index.js +0 -72
  242. package/dist/jest.config.d.ts +0 -8
  243. package/dist/jest.config.d.ts.map +0 -1
  244. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts +0 -13
  245. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts.map +0 -1
  246. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.js +0 -53
  247. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts +0 -15
  248. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts.map +0 -1
  249. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.js +0 -49
  250. package/dist/src/adapters/defaults/index.d.ts +0 -9
  251. package/dist/src/adapters/defaults/index.d.ts.map +0 -1
  252. package/dist/src/adapters/defaults/index.js +0 -19
  253. package/dist/src/adapters/defaults/state/file-state-adapter.d.ts +0 -23
  254. package/dist/src/adapters/defaults/state/file-state-adapter.d.ts.map +0 -1
  255. package/dist/src/adapters/defaults/state/file-state-adapter.js +0 -149
  256. package/dist/src/adapters/defaults/state/memory-state-adapter.d.ts +0 -16
  257. package/dist/src/adapters/defaults/state/memory-state-adapter.d.ts.map +0 -1
  258. package/dist/src/adapters/defaults/state/memory-state-adapter.js +0 -69
  259. package/dist/src/adapters/defaults/state/utils.d.ts +0 -4
  260. package/dist/src/adapters/defaults/state/utils.d.ts.map +0 -1
  261. package/dist/src/adapters/defaults/state/utils.js +0 -66
  262. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts +0 -9
  263. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts.map +0 -1
  264. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.js +0 -14
  265. package/dist/src/adapters/defaults/stream/file-stream-adapter.d.ts +0 -22
  266. package/dist/src/adapters/defaults/stream/file-stream-adapter.d.ts.map +0 -1
  267. package/dist/src/adapters/defaults/stream/file-stream-adapter.js +0 -125
  268. package/dist/src/adapters/defaults/stream/index.d.ts +0 -5
  269. package/dist/src/adapters/defaults/stream/index.d.ts.map +0 -1
  270. package/dist/src/adapters/defaults/stream/index.js +0 -11
  271. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts +0 -6
  272. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts.map +0 -1
  273. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.js +0 -10
  274. package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.ts +0 -16
  275. package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.ts.map +0 -1
  276. package/dist/src/adapters/defaults/stream/memory-stream-adapter.js +0 -55
  277. package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts +0 -29
  278. package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts.map +0 -1
  279. package/dist/src/adapters/interfaces/cron-adapter.interface.js +0 -2
  280. package/dist/src/adapters/interfaces/event-adapter.interface.d.ts +0 -15
  281. package/dist/src/adapters/interfaces/event-adapter.interface.d.ts.map +0 -1
  282. package/dist/src/adapters/interfaces/event-adapter.interface.js +0 -2
  283. package/dist/src/adapters/interfaces/index.d.ts +0 -7
  284. package/dist/src/adapters/interfaces/index.d.ts.map +0 -1
  285. package/dist/src/adapters/interfaces/index.js +0 -5
  286. package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts +0 -23
  287. package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts.map +0 -1
  288. package/dist/src/adapters/interfaces/observability-adapter.interface.js +0 -2
  289. package/dist/src/adapters/interfaces/state-adapter.interface.d.ts +0 -24
  290. package/dist/src/adapters/interfaces/state-adapter.interface.d.ts.map +0 -1
  291. package/dist/src/adapters/interfaces/state-adapter.interface.js +0 -2
  292. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts +0 -6
  293. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts.map +0 -1
  294. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.js +0 -2
  295. package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts +0 -22
  296. package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts.map +0 -1
  297. package/dist/src/adapters/interfaces/stream-adapter.interface.js +0 -16
  298. package/dist/src/analytics/utils.d.ts +0 -6
  299. package/dist/src/analytics/utils.d.ts.map +0 -1
  300. package/dist/src/analytics/utils.js +0 -51
  301. package/dist/src/call-step-file.d.ts +0 -16
  302. package/dist/src/call-step-file.d.ts.map +0 -1
  303. package/dist/src/call-step-file.js +0 -194
  304. package/dist/src/config.d.ts +0 -3
  305. package/dist/src/config.d.ts.map +0 -1
  306. package/dist/src/config.js +0 -5
  307. package/dist/src/config.types.d.ts +0 -17
  308. package/dist/src/config.types.d.ts.map +0 -1
  309. package/dist/src/config.types.js +0 -2
  310. package/dist/src/cron-handler.d.ts +0 -14
  311. package/dist/src/cron-handler.d.ts.map +0 -1
  312. package/dist/src/cron-handler.js +0 -132
  313. package/dist/src/endpoints/analytics-endpoint.d.ts +0 -3
  314. package/dist/src/endpoints/analytics-endpoint.d.ts.map +0 -1
  315. package/dist/src/endpoints/analytics-endpoint.js +0 -28
  316. package/dist/src/endpoints/flows-config-endpoint.d.ts +0 -4
  317. package/dist/src/endpoints/flows-config-endpoint.d.ts.map +0 -1
  318. package/dist/src/endpoints/flows-config-endpoint.js +0 -34
  319. package/dist/src/endpoints/flows-endpoint.d.ts +0 -3
  320. package/dist/src/endpoints/flows-endpoint.d.ts.map +0 -1
  321. package/dist/src/endpoints/flows-endpoint.js +0 -29
  322. package/dist/src/endpoints/step-endpoint.d.ts +0 -4
  323. package/dist/src/endpoints/step-endpoint.d.ts.map +0 -1
  324. package/dist/src/endpoints/step-endpoint.js +0 -45
  325. package/dist/src/generate-trace-id.d.ts +0 -3
  326. package/dist/src/generate-trace-id.d.ts.map +0 -1
  327. package/dist/src/generate-trace-id.js +0 -14
  328. package/dist/src/get-step-config.d.ts +0 -5
  329. package/dist/src/get-step-config.d.ts.map +0 -1
  330. package/dist/src/get-step-config.js +0 -68
  331. package/dist/src/get-step-language.d.ts +0 -2
  332. package/dist/src/get-step-language.d.ts.map +0 -1
  333. package/dist/src/get-step-language.js +0 -27
  334. package/dist/src/guards.d.ts +0 -6
  335. package/dist/src/guards.d.ts.map +0 -1
  336. package/dist/src/guards.js +0 -11
  337. package/dist/src/helper/flows-helper.d.ts +0 -6
  338. package/dist/src/helper/flows-helper.d.ts.map +0 -1
  339. package/dist/src/helper/flows-helper.js +0 -143
  340. package/dist/src/infrastructure-validator/defaults.d.ts +0 -4
  341. package/dist/src/infrastructure-validator/defaults.d.ts.map +0 -1
  342. package/dist/src/infrastructure-validator/defaults.js +0 -16
  343. package/dist/src/infrastructure-validator/index.d.ts +0 -4
  344. package/dist/src/infrastructure-validator/index.d.ts.map +0 -1
  345. package/dist/src/infrastructure-validator/index.js +0 -13
  346. package/dist/src/infrastructure-validator/schemas.d.ts +0 -45
  347. package/dist/src/infrastructure-validator/schemas.d.ts.map +0 -1
  348. package/dist/src/infrastructure-validator/schemas.js +0 -100
  349. package/dist/src/infrastructure-validator/types.d.ts +0 -21
  350. package/dist/src/infrastructure-validator/types.d.ts.map +0 -1
  351. package/dist/src/infrastructure-validator/types.js +0 -2
  352. package/dist/src/infrastructure-validator/validations.d.ts +0 -4
  353. package/dist/src/infrastructure-validator/validations.d.ts.map +0 -1
  354. package/dist/src/infrastructure-validator/validations.js +0 -62
  355. package/dist/src/language-runner.d.ts +0 -15
  356. package/dist/src/language-runner.d.ts.map +0 -1
  357. package/dist/src/language-runner.js +0 -31
  358. package/dist/src/locked-data.d.ts +0 -78
  359. package/dist/src/locked-data.d.ts.map +0 -1
  360. package/dist/src/locked-data.js +0 -284
  361. package/dist/src/logger-factory.d.ts +0 -19
  362. package/dist/src/logger-factory.d.ts.map +0 -1
  363. package/dist/src/logger-factory.js +0 -27
  364. package/dist/src/logger.d.ts +0 -26
  365. package/dist/src/logger.d.ts.map +0 -1
  366. package/dist/src/logger.js +0 -60
  367. package/dist/src/mermaid-generator.d.ts +0 -5
  368. package/dist/src/mermaid-generator.d.ts.map +0 -1
  369. package/dist/src/mermaid-generator.js +0 -203
  370. package/dist/src/motia.d.ts +0 -32
  371. package/dist/src/motia.d.ts.map +0 -1
  372. package/dist/src/motia.js +0 -4
  373. package/dist/src/node/can-access.d.ts +0 -2
  374. package/dist/src/node/can-access.d.ts.map +0 -1
  375. package/dist/src/node/can-access.js +0 -44
  376. package/dist/src/node/get-config.d.ts +0 -2
  377. package/dist/src/node/get-config.d.ts.map +0 -1
  378. package/dist/src/node/get-config.js +0 -64
  379. package/dist/src/node/logger.d.ts +0 -16
  380. package/dist/src/node/logger.d.ts.map +0 -1
  381. package/dist/src/node/logger.js +0 -48
  382. package/dist/src/node/middleware-compose.d.ts +0 -2
  383. package/dist/src/node/middleware-compose.d.ts.map +0 -1
  384. package/dist/src/node/middleware-compose.js +0 -10
  385. package/dist/src/node/node-runner.d.ts +0 -2
  386. package/dist/src/node/node-runner.d.ts.map +0 -1
  387. package/dist/src/node/node-runner.js +0 -83
  388. package/dist/src/node/rpc-state-manager.d.ts +0 -12
  389. package/dist/src/node/rpc-state-manager.d.ts.map +0 -1
  390. package/dist/src/node/rpc-state-manager.js +0 -24
  391. package/dist/src/node/rpc.d.ts +0 -10
  392. package/dist/src/node/rpc.d.ts.map +0 -1
  393. package/dist/src/node/rpc.js +0 -50
  394. package/dist/src/observability/create-trace.d.ts +0 -4
  395. package/dist/src/observability/create-trace.d.ts.map +0 -1
  396. package/dist/src/observability/create-trace.js +0 -22
  397. package/dist/src/observability/index.d.ts +0 -4
  398. package/dist/src/observability/index.d.ts.map +0 -1
  399. package/dist/src/observability/index.js +0 -2
  400. package/dist/src/observability/no-tracer.d.ts +0 -10
  401. package/dist/src/observability/no-tracer.d.ts.map +0 -1
  402. package/dist/src/observability/no-tracer.js +0 -14
  403. package/dist/src/observability/redis-trace-stream-adapter.d.ts +0 -17
  404. package/dist/src/observability/redis-trace-stream-adapter.d.ts.map +0 -1
  405. package/dist/src/observability/redis-trace-stream-adapter.js +0 -65
  406. package/dist/src/observability/stream-tracer.d.ts +0 -22
  407. package/dist/src/observability/stream-tracer.d.ts.map +0 -1
  408. package/dist/src/observability/stream-tracer.js +0 -97
  409. package/dist/src/observability/trace-manager.d.ts +0 -13
  410. package/dist/src/observability/trace-manager.d.ts.map +0 -1
  411. package/dist/src/observability/trace-manager.js +0 -23
  412. package/dist/src/observability/tracer.d.ts +0 -19
  413. package/dist/src/observability/tracer.d.ts.map +0 -1
  414. package/dist/src/observability/tracer.js +0 -95
  415. package/dist/src/observability/types.d.ts +0 -75
  416. package/dist/src/observability/types.d.ts.map +0 -1
  417. package/dist/src/observability/types.js +0 -2
  418. package/dist/src/pretty-print.d.ts +0 -2
  419. package/dist/src/pretty-print.d.ts.map +0 -1
  420. package/dist/src/pretty-print.js +0 -63
  421. package/dist/src/printer.d.ts +0 -61
  422. package/dist/src/printer.d.ts.map +0 -1
  423. package/dist/src/printer.js +0 -164
  424. package/dist/src/process-communication/communication-config.d.ts +0 -8
  425. package/dist/src/process-communication/communication-config.d.ts.map +0 -1
  426. package/dist/src/process-communication/communication-config.js +0 -18
  427. package/dist/src/process-communication/process-manager.d.ts +0 -32
  428. package/dist/src/process-communication/process-manager.d.ts.map +0 -1
  429. package/dist/src/process-communication/process-manager.js +0 -88
  430. package/dist/src/process-communication/rpc-processor-interface.d.ts +0 -10
  431. package/dist/src/process-communication/rpc-processor-interface.d.ts.map +0 -1
  432. package/dist/src/process-communication/rpc-processor-interface.js +0 -2
  433. package/dist/src/queue-manager.d.ts +0 -42
  434. package/dist/src/queue-manager.d.ts.map +0 -1
  435. package/dist/src/queue-manager.js +0 -252
  436. package/dist/src/ruby/get-ruby-config.d.ts +0 -3
  437. package/dist/src/ruby/get-ruby-config.d.ts.map +0 -1
  438. package/dist/src/ruby/get-ruby-config.js +0 -34
  439. package/dist/src/run-stream-can-access.d.ts +0 -10
  440. package/dist/src/run-stream-can-access.d.ts.map +0 -1
  441. package/dist/src/run-stream-can-access.js +0 -59
  442. package/dist/src/schema-utils.d.ts +0 -9
  443. package/dist/src/schema-utils.d.ts.map +0 -1
  444. package/dist/src/schema-utils.js +0 -80
  445. package/dist/src/server.d.ts +0 -37
  446. package/dist/src/server.d.ts.map +0 -1
  447. package/dist/src/server.js +0 -318
  448. package/dist/src/socket-server/helpers.d.ts +0 -53
  449. package/dist/src/socket-server/helpers.d.ts.map +0 -1
  450. package/dist/src/socket-server/helpers.js +0 -28
  451. package/dist/src/socket-server.d.ts +0 -21
  452. package/dist/src/socket-server.d.ts.map +0 -1
  453. package/dist/src/socket-server.js +0 -127
  454. package/dist/src/state/create-state-adapter.d.ts +0 -8
  455. package/dist/src/state/create-state-adapter.d.ts.map +0 -1
  456. package/dist/src/state/create-state-adapter.js +0 -8
  457. package/dist/src/step-handler-rpc-processor.d.ts +0 -22
  458. package/dist/src/step-handler-rpc-processor.d.ts.map +0 -1
  459. package/dist/src/step-handler-rpc-processor.js +0 -63
  460. package/dist/src/step-handler-rpc-stdin-processor.d.ts +0 -23
  461. package/dist/src/step-handler-rpc-stdin-processor.d.ts.map +0 -1
  462. package/dist/src/step-handler-rpc-stdin-processor.js +0 -83
  463. package/dist/src/step-handlers.d.ts +0 -9
  464. package/dist/src/step-handlers.d.ts.map +0 -1
  465. package/dist/src/step-handlers.js +0 -77
  466. package/dist/src/step-validator.d.ts +0 -15
  467. package/dist/src/step-validator.d.ts.map +0 -1
  468. package/dist/src/step-validator.js +0 -135
  469. package/dist/src/steps/emit.step.d.ts +0 -12
  470. package/dist/src/steps/emit.step.d.ts.map +0 -1
  471. package/dist/src/steps/emit.step.js +0 -27
  472. package/dist/src/steps/index.d.ts +0 -3
  473. package/dist/src/steps/index.d.ts.map +0 -1
  474. package/dist/src/steps/index.js +0 -16
  475. package/dist/src/streams/flows-config-stream.d.ts +0 -14
  476. package/dist/src/streams/flows-config-stream.d.ts.map +0 -1
  477. package/dist/src/streams/flows-config-stream.js +0 -49
  478. package/dist/src/streams/flows-stream.d.ts +0 -12
  479. package/dist/src/streams/flows-stream.d.ts.map +0 -1
  480. package/dist/src/streams/flows-stream.js +0 -35
  481. package/dist/src/streams/redis-logs-stream.d.ts +0 -31
  482. package/dist/src/streams/redis-logs-stream.d.ts.map +0 -1
  483. package/dist/src/streams/redis-logs-stream.js +0 -84
  484. package/dist/src/streams/stream-factory.d.ts +0 -3
  485. package/dist/src/streams/stream-factory.d.ts.map +0 -1
  486. package/dist/src/streams/stream-factory.js +0 -2
  487. package/dist/src/types/app-config-types.d.ts +0 -44
  488. package/dist/src/types/app-config-types.d.ts.map +0 -1
  489. package/dist/src/types/app-config-types.js +0 -2
  490. package/dist/src/types/flows-config-types.d.ts +0 -10
  491. package/dist/src/types/flows-config-types.d.ts.map +0 -1
  492. package/dist/src/types/flows-config-types.js +0 -2
  493. package/dist/src/types/flows-types.d.ts +0 -39
  494. package/dist/src/types/flows-types.d.ts.map +0 -1
  495. package/dist/src/types/flows-types.js +0 -2
  496. package/dist/src/types/generate-type-from-schema.d.ts +0 -3
  497. package/dist/src/types/generate-type-from-schema.d.ts.map +0 -1
  498. package/dist/src/types/generate-type-from-schema.js +0 -49
  499. package/dist/src/types/generate-types-from-response.d.ts +0 -3
  500. package/dist/src/types/generate-types-from-response.d.ts.map +0 -1
  501. package/dist/src/types/generate-types-from-response.js +0 -13
  502. package/dist/src/types/generate-types.d.ts +0 -13
  503. package/dist/src/types/generate-types.d.ts.map +0 -1
  504. package/dist/src/types/generate-types.js +0 -127
  505. package/dist/src/types/merge-schemas.d.ts +0 -5
  506. package/dist/src/types/merge-schemas.d.ts.map +0 -1
  507. package/dist/src/types/merge-schemas.js +0 -183
  508. package/dist/src/types/schema.types.d.ts +0 -9
  509. package/dist/src/types/schema.types.d.ts.map +0 -1
  510. package/dist/src/types/schema.types.js +0 -14
  511. package/dist/src/types-stream.d.ts +0 -42
  512. package/dist/src/types-stream.d.ts.map +0 -1
  513. package/dist/src/types-stream.js +0 -2
  514. package/dist/src/types.d.ts +0 -184
  515. package/dist/src/types.d.ts.map +0 -1
  516. package/dist/src/types.js +0 -17
  517. package/dist/src/utils.d.ts +0 -3
  518. package/dist/src/utils.d.ts.map +0 -1
  519. package/dist/src/utils.js +0 -12
  520. package/dist/src/validate-event-input.d.ts +0 -3
  521. package/dist/src/validate-event-input.d.ts.map +0 -1
  522. package/dist/src/validate-event-input.js +0 -74
@@ -1,80 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.isStandardSchema = isStandardSchema;
37
- exports.isZodSchema = isZodSchema;
38
- exports.isJsonSchema = isJsonSchema;
39
- exports.schemaToJsonSchema = schemaToJsonSchema;
40
- const z = __importStar(require("zod"));
41
- function isStandardSchema(value) {
42
- if (!value || typeof value !== 'object') {
43
- return false;
44
- }
45
- const schema = value;
46
- return '~standard' in schema && schema['~standard'] !== null && typeof schema['~standard'] === 'object';
47
- }
48
- function isZodSchema(value) {
49
- return Boolean(value &&
50
- typeof value === 'object' &&
51
- typeof value.safeParse === 'function' &&
52
- '_zod' in value &&
53
- typeof value._zod === 'object' &&
54
- 'def' in value._zod);
55
- }
56
- function isJsonSchema(value) {
57
- if (!value || typeof value !== 'object') {
58
- return false;
59
- }
60
- const schema = value;
61
- return typeof schema.type === 'string' || Array.isArray(schema.type) || 'properties' in schema;
62
- }
63
- function schemaToJsonSchema(schema) {
64
- if (!schema) {
65
- return null;
66
- }
67
- if (isZodSchema(schema)) {
68
- return z.toJSONSchema(schema, { target: 'draft-7' });
69
- }
70
- if (isStandardSchema(schema)) {
71
- if ('toJSON' in schema && typeof schema.toJSON === 'function') {
72
- return schema.toJSON();
73
- }
74
- return null;
75
- }
76
- if (isJsonSchema(schema)) {
77
- return schema;
78
- }
79
- return null;
80
- }
@@ -1,37 +0,0 @@
1
- import { type Express } from 'express';
2
- import http from 'http';
3
- import type { Server as WsServer } from 'ws';
4
- import type { CronAdapter } from './adapters/interfaces/cron-adapter.interface';
5
- import type { EventAdapter } from './adapters/interfaces/event-adapter.interface';
6
- import type { StateAdapter } from './adapters/interfaces/state-adapter.interface';
7
- import type { StreamAdapterManager } from './adapters/interfaces/stream-adapter-manager.interface';
8
- import { type CronManager } from './cron-handler';
9
- import type { LockedData } from './locked-data';
10
- import type { Motia } from './motia';
11
- import { Printer } from './printer';
12
- import { type MotiaEventManager } from './step-handlers';
13
- import type { ApiRouteConfig, Step } from './types';
14
- export type MotiaServer = {
15
- printer: Printer;
16
- app: Express;
17
- server: http.Server;
18
- socketServer: WsServer;
19
- close: () => Promise<void>;
20
- removeRoute: (step: Step<ApiRouteConfig>) => void;
21
- addRoute: (step: Step<ApiRouteConfig>) => void;
22
- cronManager: CronManager;
23
- motiaEventManager: MotiaEventManager;
24
- motia: Motia;
25
- };
26
- type MotiaServerConfig = {
27
- isVerbose: boolean;
28
- printer?: Printer;
29
- };
30
- type AdapterOptions = {
31
- eventAdapter: EventAdapter;
32
- cronAdapter: CronAdapter;
33
- streamAdapter?: StreamAdapterManager;
34
- };
35
- export declare const createServer: (lockedData: LockedData, state: StateAdapter, config: MotiaServerConfig, adapters: AdapterOptions, configureApp?: (app: Express) => void) => MotiaServer;
36
- export {};
37
- //# sourceMappingURL=server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,KAAK,OAAO,EAA+B,MAAM,SAAS,CAAA;AAC5E,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,KAAK,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,IAAI,CAAA;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAA;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAA;AACjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA;AAGlG,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,gBAAgB,CAAA;AAOpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAGpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAG5E,OAAO,KAAK,EAA2B,cAAc,EAA4B,IAAI,EAAE,MAAM,SAAS,CAAA;AAStG,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAA;IACZ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;IACnB,YAAY,EAAE,QAAQ,CAAA;IACtB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;IACjD,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;IAC9C,WAAW,EAAE,WAAW,CAAA;IACxB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,cAAc,GAAG;IACpB,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,EAAE,WAAW,CAAA;IACxB,aAAa,CAAC,EAAE,oBAAoB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,YAAY,GACvB,YAAY,UAAU,EACtB,OAAO,YAAY,EACnB,QAAQ,iBAAiB,EACzB,UAAU,cAAc,EACxB,eAAe,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KACpC,WAqVF,CAAA"}
@@ -1,318 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createServer = void 0;
7
- const body_parser_1 = __importDefault(require("body-parser"));
8
- const express_1 = __importDefault(require("express"));
9
- const http_1 = __importDefault(require("http"));
10
- const utils_1 = require("./analytics/utils");
11
- const call_step_file_1 = require("./call-step-file");
12
- const cron_handler_1 = require("./cron-handler");
13
- const analytics_endpoint_1 = require("./endpoints/analytics-endpoint");
14
- const flows_config_endpoint_1 = require("./endpoints/flows-config-endpoint");
15
- const flows_endpoint_1 = require("./endpoints/flows-endpoint");
16
- const step_endpoint_1 = require("./endpoints/step-endpoint");
17
- const generate_trace_id_1 = require("./generate-trace-id");
18
- const guards_1 = require("./guards");
19
- const logger_1 = require("./logger");
20
- const logger_factory_1 = require("./logger-factory");
21
- const tracer_1 = require("./observability/tracer");
22
- const printer_1 = require("./printer");
23
- const run_stream_can_access_1 = require("./run-stream-can-access");
24
- const socket_server_1 = require("./socket-server");
25
- const step_handlers_1 = require("./step-handlers");
26
- const steps_1 = require("./steps");
27
- const redis_logs_stream_1 = require("./streams/redis-logs-stream");
28
- const createServer = (lockedData, state, config, adapters, configureApp) => {
29
- const printer = config.printer ?? new printer_1.Printer(process.cwd());
30
- const app = (0, express_1.default)();
31
- if (configureApp) {
32
- configureApp(app);
33
- }
34
- const server = http_1.default.createServer(app);
35
- const streamAuth = lockedData.getStreamAuthConfig();
36
- const authorizeSubscription = async (subscription, authContext) => {
37
- const stream = lockedData.getStreamByName(subscription.streamName);
38
- if (!stream) {
39
- throw new Error(`Stream ${subscription.streamName} not found`);
40
- }
41
- const accessContext = { groupId: subscription.groupId, id: subscription.id };
42
- if (typeof stream.config.canAccess === 'function') {
43
- try {
44
- const allowed = await stream.config.canAccess(accessContext, authContext);
45
- return Boolean(allowed);
46
- }
47
- catch (error) {
48
- logger_1.globalLogger.error('[Streams] Inline canAccess evaluation failed', {
49
- streamName: subscription.streamName,
50
- groupId: subscription.groupId,
51
- error,
52
- });
53
- return false;
54
- }
55
- }
56
- // @ts-expect-error - internal property, not part of the public API
57
- if (!stream.config.__motia_hasCanAccess) {
58
- logger_1.globalLogger.debug('[Streams] No canAccess function found, allowing access', {
59
- streamName: subscription.streamName,
60
- groupId: subscription.groupId,
61
- });
62
- return true;
63
- }
64
- try {
65
- const allowed = await (0, run_stream_can_access_1.runStreamCanAccess)({
66
- file: stream.filePath,
67
- subscription: accessContext,
68
- authContext,
69
- projectRoot: lockedData.baseDir,
70
- });
71
- return Boolean(allowed);
72
- }
73
- catch (error) {
74
- logger_1.globalLogger.error('[Streams] canAccess evaluation failed', {
75
- streamName: subscription.streamName,
76
- groupId: subscription.groupId,
77
- error,
78
- });
79
- return false;
80
- }
81
- };
82
- const { pushEvent, socketServer } = (0, socket_server_1.createSocketServer)({
83
- server,
84
- authenticate: streamAuth?.authenticate,
85
- authorize: authorizeSubscription,
86
- onJoin: async (streamName, groupId, id) => {
87
- const streams = lockedData.getStreams();
88
- const stream = streams[streamName];
89
- if (stream) {
90
- const result = await stream().get(groupId, id);
91
- delete result?.__motia; // deleting because we don't need it in the socket
92
- return result;
93
- }
94
- },
95
- onJoinGroup: async (streamName, groupId) => {
96
- const streams = lockedData.getStreams();
97
- const stream = streams[streamName];
98
- if (stream) {
99
- const result = stream ? await stream().getGroup(groupId) : [];
100
- return result.map(({ __motia, ...rest }) => rest);
101
- }
102
- },
103
- });
104
- lockedData.applyStreamWrapper((streamName, stream) => {
105
- return () => {
106
- const main = stream();
107
- const wrapObject = (groupId, id, object) => {
108
- if (!object) {
109
- return null;
110
- }
111
- return {
112
- ...object,
113
- __motia: { type: 'state-stream', streamName, groupId, id },
114
- };
115
- };
116
- const mainGetGroup = main.getGroup;
117
- const mainGet = main.get;
118
- const mainSet = main.set;
119
- const mainDelete = main.delete;
120
- main.send = async (channel, event) => {
121
- pushEvent({ streamName, ...channel, event: { type: 'event', event } });
122
- };
123
- main.getGroup = async (groupId) => {
124
- const result = await mainGetGroup.apply(main, [groupId]);
125
- return result.map((object) => wrapObject(groupId, object.id, object));
126
- };
127
- main.get = async (groupId, id) => {
128
- const result = await mainGet.apply(main, [groupId, id]);
129
- return wrapObject(groupId, id, result);
130
- };
131
- main.set = async (groupId, id, data) => {
132
- if (!data) {
133
- return null;
134
- }
135
- const exists = await main.get(groupId, id);
136
- const updated = await mainSet.apply(main, [groupId, id, data]);
137
- const result = updated ?? data;
138
- const wrappedResult = wrapObject(groupId, id, result);
139
- const type = exists ? 'update' : 'create';
140
- pushEvent({ streamName, groupId, id, event: { type, data: result } });
141
- return wrappedResult;
142
- };
143
- main.delete = async (groupId, id) => {
144
- const result = await mainDelete.apply(main, [groupId, id]);
145
- pushEvent({ streamName, groupId, id, event: { type: 'delete', data: result } });
146
- return wrapObject(groupId, id, result);
147
- };
148
- return main;
149
- };
150
- });
151
- const logStream = lockedData.createStream({
152
- filePath: '__motia.logs',
153
- hidden: true,
154
- config: {
155
- name: '__motia.logs',
156
- baseConfig: {
157
- storageType: 'custom',
158
- factory: () => {
159
- return new redis_logs_stream_1.RedisLogsStream(lockedData.redisClient);
160
- },
161
- },
162
- schema: null,
163
- },
164
- })();
165
- const allSteps = [...steps_1.systemSteps, ...lockedData.activeSteps];
166
- const loggerFactory = new logger_factory_1.BaseLoggerFactory(config.isVerbose, logStream);
167
- const tracerFactory = (0, tracer_1.createTracerFactory)(lockedData);
168
- const motia = {
169
- loggerFactory,
170
- eventAdapter: adapters.eventAdapter,
171
- state,
172
- lockedData,
173
- printer,
174
- tracerFactory,
175
- app,
176
- stateAdapter: state,
177
- };
178
- const cronManager = (0, cron_handler_1.setupCronHandlers)(motia, adapters?.cronAdapter);
179
- const motiaEventManager = (0, step_handlers_1.createStepHandlers)(motia, adapters.eventAdapter);
180
- const asyncHandler = (step) => {
181
- return async (req, res) => {
182
- const traceId = (0, generate_trace_id_1.generateTraceId)();
183
- const { name: stepName, flows } = step.config;
184
- const logger = loggerFactory.create({ traceId, flows, stepName });
185
- logger.debug('[API] Received request, processing step', { path: req.path });
186
- const data = {
187
- body: req.body,
188
- headers: req.headers,
189
- pathParams: req.params,
190
- queryParams: req.query,
191
- };
192
- try {
193
- let result;
194
- if ('handler' in step && typeof step.handler === 'function') {
195
- const context = {
196
- traceId,
197
- flows,
198
- state: state,
199
- emit: async (event) => {
200
- const eventObj = {
201
- ...event,
202
- traceId,
203
- flows,
204
- logger,
205
- tracer: null,
206
- };
207
- await adapters.eventAdapter.emit(eventObj);
208
- },
209
- logger,
210
- streams: lockedData.getStreams(),
211
- };
212
- result = await step.handler(data, context);
213
- }
214
- else {
215
- const tracer = await motia.tracerFactory.createTracer(traceId, step, logger);
216
- result = await (0, call_step_file_1.callStepFile)({ data, step, logger, tracer, traceId }, motia);
217
- }
218
- (0, utils_1.trackEvent)('api_call_success', { stepName });
219
- if (!result) {
220
- console.log('no result');
221
- res.status(500).json({ error: 'Internal server error' });
222
- return;
223
- }
224
- if (result.headers) {
225
- Object.entries(result.headers).forEach(([key, value]) => res.setHeader(key, value));
226
- }
227
- res.status(result.status);
228
- // Handle different body types
229
- if (Buffer.isBuffer(result.body) || typeof result.body === 'string') {
230
- res.send(result.body);
231
- }
232
- else {
233
- res.json(result.body);
234
- }
235
- }
236
- catch (error) {
237
- (0, utils_1.trackEvent)('api_call_error', {
238
- stepName,
239
- traceId,
240
- error: error instanceof Error ? error.message : 'Unknown error',
241
- });
242
- logger.error('[API] Internal server error', { error });
243
- console.log(error);
244
- res.status(500).json({ error: 'Internal server error' });
245
- }
246
- };
247
- };
248
- app.use(body_parser_1.default.json({ limit: '1gb' }));
249
- app.use(body_parser_1.default.urlencoded({ extended: true, limit: '1gb' }));
250
- const router = express_1.default.Router();
251
- const addRoute = (step) => {
252
- const { method, path } = step.config;
253
- logger_1.globalLogger.debug('[API] Registering route', step.config);
254
- const handler = asyncHandler(step);
255
- const methods = {
256
- GET: () => router.get(path, handler),
257
- POST: () => router.post(path, handler),
258
- PUT: () => router.put(path, handler),
259
- DELETE: () => router.delete(path, handler),
260
- PATCH: () => router.patch(path, handler),
261
- OPTIONS: () => router.options(path, handler),
262
- HEAD: () => router.head(path, handler),
263
- };
264
- const methodHandler = methods[method];
265
- if (!methodHandler) {
266
- throw new Error(`Unsupported method: ${method}`);
267
- }
268
- methodHandler();
269
- };
270
- const removeRoute = (step) => {
271
- const { path, method } = step.config;
272
- const routerStack = router.stack;
273
- const filteredStack = routerStack.filter((layer) => {
274
- if (layer.route) {
275
- const match = layer.route.path === path && layer.route.methods[method.toLowerCase()];
276
- return !match;
277
- }
278
- return true;
279
- });
280
- router.stack = filteredStack;
281
- };
282
- allSteps.filter(guards_1.isApiStep).forEach(addRoute);
283
- app.options('*', (_req, res) => {
284
- res.header('Access-Control-Allow-Origin', '*');
285
- res.header('Access-Control-Allow-Methods', '*');
286
- res.header('Access-Control-Allow-Headers', '*');
287
- res.header('Access-Control-Max-Age', '600');
288
- res.header('Access-Control-Allow-Credentials', 'true');
289
- res.header('Access-Control-Allow-Private-Network', 'true');
290
- res.status(204).end();
291
- });
292
- app.use((_req, res, next) => {
293
- res.header('Access-Control-Allow-Origin', '*');
294
- res.header('Access-Control-Allow-Methods', '*');
295
- res.header('Access-Control-Allow-Headers', '*');
296
- res.header('Access-Control-Max-Age', '600');
297
- res.header('Access-Control-Allow-Credentials', 'true');
298
- res.header('Access-Control-Allow-Private-Network', 'true');
299
- next();
300
- });
301
- app.use(router);
302
- (0, flows_endpoint_1.flowsEndpoint)(lockedData);
303
- (0, flows_config_endpoint_1.flowsConfigEndpoint)(app, process.cwd(), lockedData);
304
- (0, analytics_endpoint_1.analyticsEndpoint)(app, process.cwd());
305
- (0, step_endpoint_1.stepEndpoint)(app, lockedData);
306
- server.on('error', (error) => {
307
- console.error('Server error:', error);
308
- });
309
- const close = async () => {
310
- await cronManager.close();
311
- socketServer.close();
312
- if (adapters?.eventAdapter) {
313
- await adapters.eventAdapter.shutdown();
314
- }
315
- };
316
- return { app, server, socketServer, close, removeRoute, addRoute, cronManager, motiaEventManager, motia, printer };
317
- };
318
- exports.createServer = createServer;
@@ -1,53 +0,0 @@
1
- import type { WebSocket } from 'ws';
2
- export type BaseMessage = {
3
- streamName: string;
4
- groupId: string;
5
- id?: string;
6
- };
7
- export type JoinMessage = BaseMessage & {
8
- subscriptionId: string;
9
- };
10
- export type StreamEvent<TData> = {
11
- type: 'sync';
12
- data: TData;
13
- } | {
14
- type: 'create';
15
- data: TData;
16
- } | {
17
- type: 'update';
18
- data: TData;
19
- } | {
20
- type: 'delete';
21
- data: TData;
22
- } | {
23
- type: 'event';
24
- event: {
25
- type: string;
26
- data: unknown;
27
- };
28
- };
29
- export type EventMessage<TData> = BaseMessage & {
30
- timestamp: number;
31
- event: StreamEvent<TData>;
32
- };
33
- export declare const ACCESS_DENIED_CODE = "STREAM_ACCESS_DENIED";
34
- export declare const getRoom: (message: BaseMessage) => string;
35
- export declare const createErrorMessage: (data: BaseMessage, error: Error) => {
36
- timestamp: number;
37
- streamName: string;
38
- groupId: string;
39
- id: string | undefined;
40
- event: {
41
- type: string;
42
- event: {
43
- type: string;
44
- data: {
45
- code: string;
46
- message: string;
47
- };
48
- };
49
- };
50
- };
51
- export declare const sendAccessDenied: (socket: WebSocket, data: BaseMessage) => void;
52
- export declare const sendError: (socket: WebSocket, data: BaseMessage, error: Error) => void;
53
- //# sourceMappingURL=helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/socket-server/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAEnC,MAAM,MAAM,WAAW,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAC9E,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,CAAA;AAClE,MAAM,MAAM,WAAW,CAAC,KAAK,IACzB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,CAAA;AAC7D,MAAM,MAAM,YAAY,CAAC,KAAK,IAAI,WAAW,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;CAAE,CAAA;AAEhG,eAAO,MAAM,kBAAkB,yBAAyB,CAAA;AAExD,eAAO,MAAM,OAAO,GAAI,SAAS,WAAW,KAAG,MAE9C,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,WAAW,EAAE,OAAO,KAAK;;;;;;;;;;;;;;;CAQjE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,QAAQ,SAAS,EAAE,MAAM,WAAW,SAGpE,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,QAAQ,SAAS,EAAE,MAAM,WAAW,EAAE,OAAO,KAAK,SAG3E,CAAA"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sendError = exports.sendAccessDenied = exports.createErrorMessage = exports.getRoom = exports.ACCESS_DENIED_CODE = void 0;
4
- exports.ACCESS_DENIED_CODE = 'STREAM_ACCESS_DENIED';
5
- const getRoom = (message) => {
6
- return message.id ? `${message.streamName}:id:${message.id}` : `${message.streamName}:group-id:${message.groupId}`;
7
- };
8
- exports.getRoom = getRoom;
9
- const createErrorMessage = (data, error) => {
10
- return {
11
- timestamp: Date.now(),
12
- streamName: data.streamName,
13
- groupId: data.groupId,
14
- id: data.id,
15
- event: { type: 'event', event: { type: 'error', data: { code: exports.ACCESS_DENIED_CODE, message: error.message } } },
16
- };
17
- };
18
- exports.createErrorMessage = createErrorMessage;
19
- const sendAccessDenied = (socket, data) => {
20
- const resultMessage = (0, exports.createErrorMessage)(data, new Error('Access denied'));
21
- socket.send(JSON.stringify(resultMessage));
22
- };
23
- exports.sendAccessDenied = sendAccessDenied;
24
- const sendError = (socket, data, error) => {
25
- const resultMessage = (0, exports.createErrorMessage)(data, error);
26
- socket.send(JSON.stringify(resultMessage));
27
- };
28
- exports.sendError = sendError;
@@ -1,21 +0,0 @@
1
- import type { Server } from 'http';
2
- import { Server as WsServer } from 'ws';
3
- import { type EventMessage } from './socket-server/helpers';
4
- import type { StreamAuthRequest } from './types/app-config-types';
5
- type Props = {
6
- server: Server;
7
- onJoin: <TData>(streamName: string, groupId: string, id: string) => Promise<TData>;
8
- onJoinGroup: <TData>(streamName: string, groupId: string) => Promise<TData[] | undefined>;
9
- authenticate?: (request: StreamAuthRequest) => Promise<unknown | null> | unknown | null;
10
- authorize?: (subscription: {
11
- streamName: string;
12
- groupId: string;
13
- id?: string;
14
- }, authContext?: unknown) => Promise<boolean> | boolean;
15
- };
16
- export declare const createSocketServer: ({ server, onJoin, onJoinGroup, authenticate, authorize }: Props) => {
17
- pushEvent: <TData>(message: Omit<EventMessage<TData>, "timestamp">) => void;
18
- socketServer: WsServer<typeof import("ws"), typeof import("http").IncomingMessage>;
19
- };
20
- export {};
21
- //# sourceMappingURL=socket-server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket-server.d.ts","sourceRoot":"","sources":["../../src/socket-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,EAAkB,MAAM,IAAI,QAAQ,EAAE,MAAM,IAAI,CAAA;AAEvD,OAAO,EAEL,KAAK,YAAY,EAKlB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAIjE,KAAK,KAAK,GAAG;IACX,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;IAClF,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC,CAAA;IACzF,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAA;IACvF,SAAS,CAAC,EAAE,CACV,YAAY,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,EAClE,WAAW,CAAC,EAAE,OAAO,KAClB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;CAChC,CAAA;AAGD,eAAO,MAAM,kBAAkB,GAAI,0DAA0D,KAAK;gBAgH7E,KAAK,WAAW,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;;CAuB1E,CAAA"}