motia 0.14.0-beta.165-285707 → 0.15.0-beta.165

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 (1424) hide show
  1. package/dist/cli.d.mts +2 -0
  2. package/dist/cli.mjs +128 -0
  3. package/dist/cli.mjs.map +1 -0
  4. package/dist/cloud/build/build-validation.mjs +46 -0
  5. package/dist/cloud/build/build-validation.mjs.map +1 -0
  6. package/dist/cloud/build/builder.mjs +86 -0
  7. package/dist/cloud/build/builder.mjs.map +1 -0
  8. package/dist/cloud/build/builders/archiver.mjs +64 -0
  9. package/dist/cloud/build/builders/archiver.mjs.map +1 -0
  10. package/dist/cloud/build/builders/include-static-files.mjs +25 -0
  11. package/dist/cloud/build/builders/include-static-files.mjs.map +1 -0
  12. package/dist/cloud/build/builders/node/index.mjs +110 -0
  13. package/dist/cloud/build/builders/node/index.mjs.map +1 -0
  14. package/dist/cloud/build/builders/python/index.mjs +111 -0
  15. package/dist/cloud/build/builders/python/index.mjs.map +1 -0
  16. package/dist/cloud/build/builders/python/python-data/constants.mjs +112 -0
  17. package/dist/cloud/build/builders/python/python-data/constants.mjs.map +1 -0
  18. package/dist/cloud/build/builders/python/python-data/convert-import-path.mjs +16 -0
  19. package/dist/cloud/build/builders/python/python-data/convert-import-path.mjs.map +1 -0
  20. package/dist/cloud/build/builders/python/python-data/extract-python-data.mjs +24 -0
  21. package/dist/cloud/build/builders/python/python-data/extract-python-data.mjs.map +1 -0
  22. package/dist/cloud/build/builders/python/python-data/get-dependencies-from-file.mjs +52 -0
  23. package/dist/cloud/build/builders/python/python-data/get-dependencies-from-file.mjs.map +1 -0
  24. package/dist/cloud/build/builders/python/python-data/python-errors.mjs +26 -0
  25. package/dist/cloud/build/builders/python/python-data/python-errors.mjs.map +1 -0
  26. package/dist/cloud/build/builders/python/python-data/read-requirements.mjs +26 -0
  27. package/dist/cloud/build/builders/python/python-data/read-requirements.mjs.map +1 -0
  28. package/dist/cloud/build/builders/python/python-data/resolve-dep-names.mjs +37 -0
  29. package/dist/cloud/build/builders/python/python-data/resolve-dep-names.mjs.map +1 -0
  30. package/dist/cloud/build/builders/python/python-data/traverse-tree.mjs +41 -0
  31. package/dist/cloud/build/builders/python/python-data/traverse-tree.mjs.map +1 -0
  32. package/dist/cloud/build/builders/python/uv-packager.mjs +65 -0
  33. package/dist/cloud/build/builders/python/uv-packager.mjs.map +1 -0
  34. package/dist/cloud/build/validations/api-endpoints.validator.mjs +32 -0
  35. package/dist/cloud/build/validations/api-endpoints.validator.mjs.map +1 -0
  36. package/dist/cloud/build/validations/constants.mjs +11 -0
  37. package/dist/cloud/build/validations/constants.mjs.map +1 -0
  38. package/dist/cloud/build/validations/cron-expressions.validator.mjs +26 -0
  39. package/dist/cloud/build/validations/cron-expressions.validator.mjs.map +1 -0
  40. package/dist/cloud/build/validations/duplicate-step-names.validator.mjs +22 -0
  41. package/dist/cloud/build/validations/duplicate-step-names.validator.mjs.map +1 -0
  42. package/dist/cloud/build/validations/infrastructure-configs.validator.mjs +27 -0
  43. package/dist/cloud/build/validations/infrastructure-configs.validator.mjs.map +1 -0
  44. package/dist/cloud/build/validations/router-bundle-sizes.validator.mjs +31 -0
  45. package/dist/cloud/build/validations/router-bundle-sizes.validator.mjs.map +1 -0
  46. package/dist/cloud/build/validations/step-bundle-sizes.validator.mjs +37 -0
  47. package/dist/cloud/build/validations/step-bundle-sizes.validator.mjs.map +1 -0
  48. package/dist/cloud/build/validations/step-name-lengths.validator.mjs +24 -0
  49. package/dist/cloud/build/validations/step-name-lengths.validator.mjs.map +1 -0
  50. package/dist/cloud/cli/build.mjs +16 -0
  51. package/dist/cloud/cli/build.mjs.map +1 -0
  52. package/dist/cloud/cli/deploy.mjs +48 -0
  53. package/dist/cloud/cli/deploy.mjs.map +1 -0
  54. package/dist/cloud/cli-output-manager.mjs +118 -0
  55. package/dist/cloud/cli-output-manager.mjs.map +1 -0
  56. package/dist/cloud/cli.mjs +8 -0
  57. package/dist/cloud/cli.mjs.map +1 -0
  58. package/dist/cloud/config-utils.mjs +53 -0
  59. package/dist/cloud/config-utils.mjs.map +1 -0
  60. package/dist/cloud/endpoints.mjs +95 -0
  61. package/dist/cloud/endpoints.mjs.map +1 -0
  62. package/dist/cloud/index.mjs +4 -0
  63. package/dist/cloud/new-deployment/build.mjs +47 -0
  64. package/dist/cloud/new-deployment/build.mjs.map +1 -0
  65. package/dist/cloud/new-deployment/cloud-api/create-deployment.mjs +13 -0
  66. package/dist/cloud/new-deployment/cloud-api/create-deployment.mjs.map +1 -0
  67. package/dist/cloud/new-deployment/cloud-api/endpoints.mjs +12 -0
  68. package/dist/cloud/new-deployment/cloud-api/endpoints.mjs.map +1 -0
  69. package/dist/cloud/new-deployment/cloud-api/index.mjs +14 -0
  70. package/dist/cloud/new-deployment/cloud-api/index.mjs.map +1 -0
  71. package/dist/cloud/new-deployment/cloud-api/start-deployment.mjs +11 -0
  72. package/dist/cloud/new-deployment/cloud-api/start-deployment.mjs.map +1 -0
  73. package/dist/cloud/new-deployment/cloud-api/upload.mjs +12 -0
  74. package/dist/cloud/new-deployment/cloud-api/upload.mjs.map +1 -0
  75. package/dist/cloud/new-deployment/constants.mjs +11 -0
  76. package/dist/cloud/new-deployment/constants.mjs.map +1 -0
  77. package/dist/cloud/new-deployment/deploy.mjs +42 -0
  78. package/dist/cloud/new-deployment/deploy.mjs.map +1 -0
  79. package/dist/cloud/new-deployment/listeners/build-printer.mjs +81 -0
  80. package/dist/cloud/new-deployment/listeners/build-printer.mjs.map +1 -0
  81. package/dist/cloud/new-deployment/listeners/cli-listener.mjs +93 -0
  82. package/dist/cloud/new-deployment/listeners/cli-listener.mjs.map +1 -0
  83. package/dist/cloud/new-deployment/listeners/print-deployment-status.mjs +89 -0
  84. package/dist/cloud/new-deployment/listeners/print-deployment-status.mjs.map +1 -0
  85. package/dist/cloud/new-deployment/listeners/printer.mjs +77 -0
  86. package/dist/cloud/new-deployment/listeners/printer.mjs.map +1 -0
  87. package/dist/cloud/new-deployment/listeners/streaming-deployment-listener.mjs +259 -0
  88. package/dist/cloud/new-deployment/listeners/streaming-deployment-listener.mjs.map +1 -0
  89. package/dist/cloud/new-deployment/streams/deployment-stream.mjs +100 -0
  90. package/dist/cloud/new-deployment/streams/deployment-stream.mjs.map +1 -0
  91. package/dist/cloud/new-deployment/upload-artifacts.mjs +24 -0
  92. package/dist/cloud/new-deployment/upload-artifacts.mjs.map +1 -0
  93. package/dist/cloud/new-deployment/utils/load-env-data.mjs +34 -0
  94. package/dist/cloud/new-deployment/utils/load-env-data.mjs.map +1 -0
  95. package/dist/cloud/new-deployment/utils/pretty-bytes.mjs +14 -0
  96. package/dist/cloud/new-deployment/utils/pretty-bytes.mjs.map +1 -0
  97. package/dist/cloud/new-deployment/utils/upload.mjs +39 -0
  98. package/dist/cloud/new-deployment/utils/upload.mjs.map +1 -0
  99. package/dist/constants.mjs +15 -0
  100. package/dist/constants.mjs.map +1 -0
  101. package/dist/create/index.mjs +177 -0
  102. package/dist/create/index.mjs.map +1 -0
  103. package/dist/create/interactive.mjs +67 -0
  104. package/dist/create/interactive.mjs.map +1 -0
  105. package/dist/create/pull-rules.mjs +26 -0
  106. package/dist/create/pull-rules.mjs.map +1 -0
  107. package/dist/create/setup-template.mjs +14 -0
  108. package/dist/create/setup-template.mjs.map +1 -0
  109. package/dist/create/templates/generate.mjs +115 -0
  110. package/dist/create/templates/generate.mjs.map +1 -0
  111. package/dist/create/templates/generate.ts +141 -0
  112. package/dist/create/templates/hello/motia.config.ts.txt +10 -0
  113. package/dist/create/templates/hello_js/motia.config.ts.txt +10 -0
  114. package/dist/create/templates/hello_python/motia.config.ts.txt +10 -0
  115. package/dist/create/templates/index.mjs +15 -0
  116. package/dist/create/templates/index.mjs.map +1 -0
  117. package/dist/create/templates/nodejs/motia.config.ts.txt +10 -0
  118. package/dist/create/templates/nodejs/steps/petstore/notification.step.ts.txt +35 -0
  119. package/dist/create/templates/python/motia.config.ts.txt +10 -0
  120. package/dist/create/utils.mjs +18 -0
  121. package/dist/create/utils.mjs.map +1 -0
  122. package/dist/create-step/getAnswers.mjs +142 -0
  123. package/dist/create-step/getAnswers.mjs.map +1 -0
  124. package/dist/create-step/index.mjs +39 -0
  125. package/dist/create-step/index.mjs.map +1 -0
  126. package/dist/create-step/teamplateUtils.mjs +50 -0
  127. package/dist/create-step/teamplateUtils.mjs.map +1 -0
  128. package/dist/create-step/templates/ui/overrides.mjs +28 -0
  129. package/dist/create-step/templates/ui/overrides.mjs.map +1 -0
  130. package/dist/create-step/templates/ui/overrides.ts +26 -0
  131. package/dist/create-step/types.mjs +23 -0
  132. package/dist/create-step/types.mjs.map +1 -0
  133. package/dist/create-step/utils.mjs +13 -0
  134. package/dist/create-step/utils.mjs.map +1 -0
  135. package/dist/dev-watchers.mjs +84 -0
  136. package/dist/dev-watchers.mjs.map +1 -0
  137. package/dist/dev.mjs +118 -0
  138. package/dist/dev.mjs.map +1 -0
  139. package/dist/docker/build.mjs +27 -0
  140. package/dist/docker/build.mjs.map +1 -0
  141. package/dist/docker/run.mjs +44 -0
  142. package/dist/docker/run.mjs.map +1 -0
  143. package/dist/docker/setup.mjs +86 -0
  144. package/dist/docker/setup.mjs.map +1 -0
  145. package/dist/docker/utils/build-docker-image.mjs +21 -0
  146. package/dist/docker/utils/build-docker-image.mjs.map +1 -0
  147. package/dist/docker/utils/print-intro.mjs +8 -0
  148. package/dist/docker/utils/print-intro.mjs.map +1 -0
  149. package/dist/docker/utils/promised-exec.mjs +26 -0
  150. package/dist/docker/utils/promised-exec.mjs.map +1 -0
  151. package/dist/generate-locked-data.d.mts +19 -0
  152. package/dist/generate-locked-data.d.mts.map +1 -0
  153. package/dist/generate-locked-data.mjs +128 -0
  154. package/dist/generate-locked-data.mjs.map +1 -0
  155. package/dist/generate-types.mjs +33 -0
  156. package/dist/generate-types.mjs.map +1 -0
  157. package/dist/index.d.mts +3 -0
  158. package/dist/index.mjs +5 -0
  159. package/dist/install.mjs +64 -0
  160. package/dist/install.mjs.map +1 -0
  161. package/dist/load-motia-config.mjs +22 -0
  162. package/dist/load-motia-config.mjs.map +1 -0
  163. package/dist/openapi/generate.mjs +69 -0
  164. package/dist/openapi/generate.mjs.map +1 -0
  165. package/dist/openapi/process-schema.mjs +31 -0
  166. package/dist/openapi/process-schema.mjs.map +1 -0
  167. package/dist/openapi/utils.mjs +10 -0
  168. package/dist/openapi/utils.mjs.map +1 -0
  169. package/dist/plugins/collect-plugin-steps.mjs +39 -0
  170. package/dist/plugins/collect-plugin-steps.mjs.map +1 -0
  171. package/dist/plugins/create-plugin-context.mjs +35 -0
  172. package/dist/plugins/create-plugin-context.mjs.map +1 -0
  173. package/dist/plugins/index.mjs +3 -0
  174. package/dist/plugins/install-plugin-dependencies.mjs +54 -0
  175. package/dist/plugins/install-plugin-dependencies.mjs.map +1 -0
  176. package/dist/plugins/load-config.mjs +30 -0
  177. package/dist/plugins/load-config.mjs.map +1 -0
  178. package/dist/plugins/plugin-dependencies.mjs +13 -0
  179. package/dist/plugins/plugin-dependencies.mjs.map +1 -0
  180. package/dist/plugins/process-plugins.mjs +22 -0
  181. package/dist/plugins/process-plugins.mjs.map +1 -0
  182. package/dist/plugins/process-steps.mjs +36 -0
  183. package/dist/plugins/process-steps.mjs.map +1 -0
  184. package/dist/redis-memory-manager.mjs +109 -0
  185. package/dist/redis-memory-manager.mjs.map +1 -0
  186. package/dist/start.mjs +76 -0
  187. package/dist/start.mjs.map +1 -0
  188. package/dist/utils/activate-python-env.mjs +39 -0
  189. package/dist/utils/activate-python-env.mjs.map +1 -0
  190. package/dist/utils/amplitude/enrichment-plugin.mjs +27 -0
  191. package/dist/utils/amplitude/enrichment-plugin.mjs.map +1 -0
  192. package/dist/utils/analytics.mjs +62 -0
  193. package/dist/utils/analytics.mjs.map +1 -0
  194. package/dist/utils/ensure-uv.mjs +65 -0
  195. package/dist/utils/ensure-uv.mjs.map +1 -0
  196. package/dist/utils/errors/build.error.mjs +20 -0
  197. package/dist/utils/errors/build.error.mjs.map +1 -0
  198. package/dist/utils/errors/compilation.error.mjs +13 -0
  199. package/dist/utils/errors/compilation.error.mjs.map +1 -0
  200. package/dist/utils/errors/locked-data-generation.error.mjs +13 -0
  201. package/dist/utils/errors/locked-data-generation.error.mjs.map +1 -0
  202. package/dist/utils/execute-command.mjs +24 -0
  203. package/dist/utils/execute-command.mjs.map +1 -0
  204. package/dist/utils/get-package-manager.mjs +13 -0
  205. package/dist/utils/get-package-manager.mjs.map +1 -0
  206. package/dist/utils/install-lambda-python-packages.mjs +30 -0
  207. package/dist/utils/install-lambda-python-packages.mjs.map +1 -0
  208. package/dist/utils/internal-logger.mjs +30 -0
  209. package/dist/utils/internal-logger.mjs.map +1 -0
  210. package/dist/utils/python-version-utils.mjs +47 -0
  211. package/dist/utils/python-version-utils.mjs.map +1 -0
  212. package/dist/version.mjs +13 -0
  213. package/dist/version.mjs.map +1 -0
  214. package/dist/watcher.mjs +140 -0
  215. package/dist/watcher.mjs.map +1 -0
  216. package/dist/workbench.d.mts +1 -0
  217. package/dist/workbench.mjs +3 -0
  218. package/package.json +25 -25
  219. package/dist/cjs/__tests__/openapi/generate.test.d.ts +0 -2
  220. package/dist/cjs/__tests__/openapi/generate.test.d.ts.map +0 -1
  221. package/dist/cjs/__tests__/openapi/generate.test.js +0 -287
  222. package/dist/cjs/__tests__/redis-memory-manager.test.d.ts +0 -2
  223. package/dist/cjs/__tests__/redis-memory-manager.test.d.ts.map +0 -1
  224. package/dist/cjs/__tests__/redis-memory-manager.test.js +0 -176
  225. package/dist/cjs/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
  226. package/dist/cjs/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
  227. package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
  228. package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
  229. package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.js +0 -83
  230. package/dist/cjs/__tests__/test-helpers/redis-test-helper.js +0 -101
  231. package/dist/cjs/cli.d.ts +0 -3
  232. package/dist/cjs/cli.d.ts.map +0 -1
  233. package/dist/cjs/cli.js +0 -190
  234. package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
  235. package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
  236. package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.js +0 -322
  237. package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
  238. package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
  239. package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.js +0 -571
  240. package/dist/cjs/cloud/build/build-validation.d.ts +0 -6
  241. package/dist/cjs/cloud/build/build-validation.d.ts.map +0 -1
  242. package/dist/cjs/cloud/build/build-validation.js +0 -44
  243. package/dist/cjs/cloud/build/builder.d.ts +0 -58
  244. package/dist/cjs/cloud/build/builder.d.ts.map +0 -1
  245. package/dist/cjs/cloud/build/builder.js +0 -94
  246. package/dist/cjs/cloud/build/builders/archiver.d.ts +0 -16
  247. package/dist/cjs/cloud/build/builders/archiver.d.ts.map +0 -1
  248. package/dist/cjs/cloud/build/builders/archiver.js +0 -77
  249. package/dist/cjs/cloud/build/builders/include-static-files.d.ts +0 -5
  250. package/dist/cjs/cloud/build/builders/include-static-files.d.ts.map +0 -1
  251. package/dist/cjs/cloud/build/builders/include-static-files.js +0 -28
  252. package/dist/cjs/cloud/build/builders/node/index.d.ts +0 -12
  253. package/dist/cjs/cloud/build/builders/node/index.d.ts.map +0 -1
  254. package/dist/cjs/cloud/build/builders/node/index.js +0 -141
  255. package/dist/cjs/cloud/build/builders/node/router-template.d.ts +0 -10
  256. package/dist/cjs/cloud/build/builders/node/router-template.d.ts.map +0 -1
  257. package/dist/cjs/cloud/build/builders/node/router-template.js +0 -6
  258. package/dist/cjs/cloud/build/builders/python/index.d.ts +0 -16
  259. package/dist/cjs/cloud/build/builders/python/index.d.ts.map +0 -1
  260. package/dist/cjs/cloud/build/builders/python/index.js +0 -129
  261. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
  262. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
  263. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.js +0 -24
  264. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
  265. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
  266. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.js +0 -41
  267. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
  268. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
  269. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.js +0 -64
  270. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
  271. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
  272. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.js +0 -94
  273. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
  274. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
  275. package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.js +0 -38
  276. package/dist/cjs/cloud/build/builders/python/python-data/constants.d.ts +0 -2
  277. package/dist/cjs/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
  278. package/dist/cjs/cloud/build/builders/python/python-data/constants.js +0 -110
  279. package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
  280. package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
  281. package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.js +0 -24
  282. package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
  283. package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
  284. package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.js +0 -24
  285. package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
  286. package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
  287. package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.js +0 -72
  288. package/dist/cjs/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
  289. package/dist/cjs/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
  290. package/dist/cjs/cloud/build/builders/python/python-data/python-errors.js +0 -28
  291. package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
  292. package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
  293. package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.js +0 -32
  294. package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
  295. package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
  296. package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.js +0 -52
  297. package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
  298. package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
  299. package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.js +0 -60
  300. package/dist/cjs/cloud/build/builders/python/uv-packager.d.ts +0 -13
  301. package/dist/cjs/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
  302. package/dist/cjs/cloud/build/builders/python/uv-packager.js +0 -69
  303. package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
  304. package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
  305. package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.js +0 -71
  306. package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
  307. package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
  308. package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.js +0 -96
  309. package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
  310. package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
  311. package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.js +0 -68
  312. package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
  313. package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
  314. package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.js +0 -66
  315. package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
  316. package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
  317. package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.js +0 -71
  318. package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
  319. package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
  320. package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.js +0 -69
  321. package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
  322. package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
  323. package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.js +0 -68
  324. package/dist/cjs/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
  325. package/dist/cjs/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
  326. package/dist/cjs/cloud/build/validations/api-endpoints.validator.js +0 -36
  327. package/dist/cjs/cloud/build/validations/constants.d.ts +0 -7
  328. package/dist/cjs/cloud/build/validations/constants.d.ts.map +0 -1
  329. package/dist/cjs/cloud/build/validations/constants.js +0 -9
  330. package/dist/cjs/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
  331. package/dist/cjs/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
  332. package/dist/cjs/cloud/build/validations/cron-expressions.validator.js +0 -62
  333. package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
  334. package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
  335. package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.js +0 -26
  336. package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
  337. package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
  338. package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.js +0 -32
  339. package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
  340. package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
  341. package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.js +0 -31
  342. package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
  343. package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
  344. package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.js +0 -36
  345. package/dist/cjs/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
  346. package/dist/cjs/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
  347. package/dist/cjs/cloud/build/validations/step-name-lengths.validator.js +0 -27
  348. package/dist/cjs/cloud/build/validations/types.d.ts +0 -8
  349. package/dist/cjs/cloud/build/validations/types.d.ts.map +0 -1
  350. package/dist/cjs/cloud/build/validations/types.js +0 -2
  351. package/dist/cjs/cloud/cli/build.d.ts +0 -2
  352. package/dist/cjs/cloud/cli/build.d.ts.map +0 -1
  353. package/dist/cjs/cloud/cli/build.js +0 -19
  354. package/dist/cjs/cloud/cli/deploy.d.ts +0 -2
  355. package/dist/cjs/cloud/cli/deploy.d.ts.map +0 -1
  356. package/dist/cjs/cloud/cli/deploy.js +0 -61
  357. package/dist/cjs/cloud/cli-output-manager.d.ts +0 -37
  358. package/dist/cjs/cloud/cli-output-manager.d.ts.map +0 -1
  359. package/dist/cjs/cloud/cli-output-manager.js +0 -131
  360. package/dist/cjs/cloud/cli.d.ts +0 -2
  361. package/dist/cjs/cloud/cli.d.ts.map +0 -1
  362. package/dist/cjs/cloud/cli.js +0 -5
  363. package/dist/cjs/cloud/config-utils.d.ts +0 -10
  364. package/dist/cjs/cloud/config-utils.d.ts.map +0 -1
  365. package/dist/cjs/cloud/config-utils.js +0 -64
  366. package/dist/cjs/cloud/endpoints.d.ts +0 -3
  367. package/dist/cjs/cloud/endpoints.d.ts.map +0 -1
  368. package/dist/cjs/cloud/endpoints.js +0 -93
  369. package/dist/cjs/cloud/index.d.ts +0 -3
  370. package/dist/cjs/cloud/index.d.ts.map +0 -1
  371. package/dist/cjs/cloud/index.js +0 -4
  372. package/dist/cjs/cloud/new-deployment/build.d.ts +0 -4
  373. package/dist/cjs/cloud/new-deployment/build.d.ts.map +0 -1
  374. package/dist/cjs/cloud/new-deployment/build.js +0 -61
  375. package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
  376. package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
  377. package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.js +0 -18
  378. package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
  379. package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
  380. package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.js +0 -10
  381. package/dist/cjs/cloud/new-deployment/cloud-api/index.d.ts +0 -36
  382. package/dist/cjs/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
  383. package/dist/cjs/cloud/new-deployment/cloud-api/index.js +0 -11
  384. package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
  385. package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
  386. package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.js +0 -13
  387. package/dist/cjs/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
  388. package/dist/cjs/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
  389. package/dist/cjs/cloud/new-deployment/cloud-api/upload.js +0 -13
  390. package/dist/cjs/cloud/new-deployment/constants.d.ts +0 -5
  391. package/dist/cjs/cloud/new-deployment/constants.d.ts.map +0 -1
  392. package/dist/cjs/cloud/new-deployment/constants.js +0 -11
  393. package/dist/cjs/cloud/new-deployment/deploy.d.ts +0 -14
  394. package/dist/cjs/cloud/new-deployment/deploy.d.ts.map +0 -1
  395. package/dist/cjs/cloud/new-deployment/deploy.js +0 -49
  396. package/dist/cjs/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
  397. package/dist/cjs/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
  398. package/dist/cjs/cloud/new-deployment/listeners/build-printer.js +0 -107
  399. package/dist/cjs/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
  400. package/dist/cjs/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
  401. package/dist/cjs/cloud/new-deployment/listeners/cli-listener.js +0 -97
  402. package/dist/cjs/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
  403. package/dist/cjs/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
  404. package/dist/cjs/cloud/new-deployment/listeners/listener.types.js +0 -2
  405. package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
  406. package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
  407. package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.js +0 -93
  408. package/dist/cjs/cloud/new-deployment/listeners/printer.d.ts +0 -17
  409. package/dist/cjs/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
  410. package/dist/cjs/cloud/new-deployment/listeners/printer.js +0 -98
  411. package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
  412. package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
  413. package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.js +0 -278
  414. package/dist/cjs/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
  415. package/dist/cjs/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
  416. package/dist/cjs/cloud/new-deployment/streams/deployment-stream.js +0 -108
  417. package/dist/cjs/cloud/new-deployment/upload-artifacts.d.ts +0 -4
  418. package/dist/cjs/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
  419. package/dist/cjs/cloud/new-deployment/upload-artifacts.js +0 -25
  420. package/dist/cjs/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
  421. package/dist/cjs/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
  422. package/dist/cjs/cloud/new-deployment/utils/load-env-data.js +0 -48
  423. package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
  424. package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
  425. package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.js +0 -19
  426. package/dist/cjs/cloud/new-deployment/utils/upload.d.ts +0 -2
  427. package/dist/cjs/cloud/new-deployment/utils/upload.d.ts.map +0 -1
  428. package/dist/cjs/cloud/new-deployment/utils/upload.js +0 -40
  429. package/dist/cjs/constants.d.ts +0 -3
  430. package/dist/cjs/constants.d.ts.map +0 -1
  431. package/dist/cjs/constants.js +0 -17
  432. package/dist/cjs/create/index.d.ts +0 -11
  433. package/dist/cjs/create/index.d.ts.map +0 -1
  434. package/dist/cjs/create/index.js +0 -215
  435. package/dist/cjs/create/interactive.d.ts +0 -9
  436. package/dist/cjs/create/interactive.d.ts.map +0 -1
  437. package/dist/cjs/create/interactive.js +0 -75
  438. package/dist/cjs/create/pull-rules.d.ts +0 -8
  439. package/dist/cjs/create/pull-rules.d.ts.map +0 -1
  440. package/dist/cjs/create/pull-rules.js +0 -28
  441. package/dist/cjs/create/setup-template.d.ts +0 -3
  442. package/dist/cjs/create/setup-template.d.ts.map +0 -1
  443. package/dist/cjs/create/setup-template.js +0 -15
  444. package/dist/cjs/create/templates/generate.d.ts +0 -5
  445. package/dist/cjs/create/templates/generate.d.ts.map +0 -1
  446. package/dist/cjs/create/templates/generate.js +0 -163
  447. package/dist/cjs/create/templates/generate.ts +0 -139
  448. package/dist/cjs/create/templates/hello/motia.config.ts.txt +0 -10
  449. package/dist/cjs/create/templates/hello_js/motia.config.ts.txt +0 -10
  450. package/dist/cjs/create/templates/hello_python/motia.config.ts.txt +0 -10
  451. package/dist/cjs/create/templates/index.d.ts +0 -3
  452. package/dist/cjs/create/templates/index.d.ts.map +0 -1
  453. package/dist/cjs/create/templates/index.js +0 -12
  454. package/dist/cjs/create/templates/nodejs/motia.config.ts.txt +0 -10
  455. package/dist/cjs/create/templates/nodejs/steps/petstore/notification.step.ts.txt +0 -35
  456. package/dist/cjs/create/templates/python/motia.config.ts.txt +0 -10
  457. package/dist/cjs/create/utils.d.ts +0 -3
  458. package/dist/cjs/create/utils.d.ts.map +0 -1
  459. package/dist/cjs/create/utils.js +0 -21
  460. package/dist/cjs/create-step/getAnswers.d.ts +0 -3
  461. package/dist/cjs/create-step/getAnswers.d.ts.map +0 -1
  462. package/dist/cjs/create-step/getAnswers.js +0 -170
  463. package/dist/cjs/create-step/index.d.ts +0 -4
  464. package/dist/cjs/create-step/index.d.ts.map +0 -1
  465. package/dist/cjs/create-step/index.js +0 -47
  466. package/dist/cjs/create-step/teamplateUtils.d.ts +0 -6
  467. package/dist/cjs/create-step/teamplateUtils.d.ts.map +0 -1
  468. package/dist/cjs/create-step/teamplateUtils.js +0 -50
  469. package/dist/cjs/create-step/templates/ui/overrides.d.ts +0 -6
  470. package/dist/cjs/create-step/templates/ui/overrides.d.ts.map +0 -1
  471. package/dist/cjs/create-step/templates/ui/overrides.js +0 -26
  472. package/dist/cjs/create-step/templates/ui/overrides.ts +0 -24
  473. package/dist/cjs/create-step/types.d.ts +0 -22
  474. package/dist/cjs/create-step/types.d.ts.map +0 -1
  475. package/dist/cjs/create-step/types.js +0 -6
  476. package/dist/cjs/create-step/utils.d.ts +0 -3
  477. package/dist/cjs/create-step/utils.d.ts.map +0 -1
  478. package/dist/cjs/create-step/utils.js +0 -13
  479. package/dist/cjs/dev-watchers.d.ts +0 -5
  480. package/dist/cjs/dev-watchers.d.ts.map +0 -1
  481. package/dist/cjs/dev-watchers.js +0 -101
  482. package/dist/cjs/dev.d.ts +0 -2
  483. package/dist/cjs/dev.d.ts.map +0 -1
  484. package/dist/cjs/dev.js +0 -128
  485. package/dist/cjs/docker/build.d.ts +0 -2
  486. package/dist/cjs/docker/build.d.ts.map +0 -1
  487. package/dist/cjs/docker/build.js +0 -59
  488. package/dist/cjs/docker/run.d.ts +0 -2
  489. package/dist/cjs/docker/run.d.ts.map +0 -1
  490. package/dist/cjs/docker/run.js +0 -83
  491. package/dist/cjs/docker/setup.d.ts +0 -2
  492. package/dist/cjs/docker/setup.d.ts.map +0 -1
  493. package/dist/cjs/docker/setup.js +0 -123
  494. package/dist/cjs/docker/utils/build-docker-image.d.ts +0 -2
  495. package/dist/cjs/docker/utils/build-docker-image.d.ts.map +0 -1
  496. package/dist/cjs/docker/utils/build-docker-image.js +0 -52
  497. package/dist/cjs/docker/utils/print-intro.d.ts +0 -2
  498. package/dist/cjs/docker/utils/print-intro.d.ts.map +0 -1
  499. package/dist/cjs/docker/utils/print-intro.js +0 -21
  500. package/dist/cjs/docker/utils/promised-exec.d.ts +0 -2
  501. package/dist/cjs/docker/utils/promised-exec.d.ts.map +0 -1
  502. package/dist/cjs/docker/utils/promised-exec.js +0 -28
  503. package/dist/cjs/generate-locked-data.d.ts +0 -18
  504. package/dist/cjs/generate-locked-data.d.ts.map +0 -1
  505. package/dist/cjs/generate-locked-data.js +0 -133
  506. package/dist/cjs/generate-types.d.ts +0 -2
  507. package/dist/cjs/generate-types.d.ts.map +0 -1
  508. package/dist/cjs/generate-types.js +0 -31
  509. package/dist/cjs/index.d.ts +0 -3
  510. package/dist/cjs/index.d.ts.map +0 -1
  511. package/dist/cjs/index.js +0 -21
  512. package/dist/cjs/install.d.ts +0 -11
  513. package/dist/cjs/install.d.ts.map +0 -1
  514. package/dist/cjs/install.js +0 -68
  515. package/dist/cjs/load-motia-config.d.ts +0 -4
  516. package/dist/cjs/load-motia-config.d.ts.map +0 -1
  517. package/dist/cjs/load-motia-config.js +0 -52
  518. package/dist/cjs/openapi/generate.d.ts +0 -3
  519. package/dist/cjs/openapi/generate.d.ts.map +0 -1
  520. package/dist/cjs/openapi/generate.js +0 -125
  521. package/dist/cjs/openapi/process-schema.d.ts +0 -3
  522. package/dist/cjs/openapi/process-schema.d.ts.map +0 -1
  523. package/dist/cjs/openapi/process-schema.js +0 -54
  524. package/dist/cjs/openapi/utils.d.ts +0 -3
  525. package/dist/cjs/openapi/utils.d.ts.map +0 -1
  526. package/dist/cjs/openapi/utils.js +0 -7
  527. package/dist/cjs/plugins/collect-plugin-steps.d.ts +0 -6
  528. package/dist/cjs/plugins/collect-plugin-steps.d.ts.map +0 -1
  529. package/dist/cjs/plugins/collect-plugin-steps.js +0 -44
  530. package/dist/cjs/plugins/create-plugin-context.d.ts +0 -3
  531. package/dist/cjs/plugins/create-plugin-context.d.ts.map +0 -1
  532. package/dist/cjs/plugins/create-plugin-context.js +0 -34
  533. package/dist/cjs/plugins/index.d.ts +0 -2
  534. package/dist/cjs/plugins/index.d.ts.map +0 -1
  535. package/dist/cjs/plugins/index.js +0 -5
  536. package/dist/cjs/plugins/install-plugin-dependencies.d.ts +0 -3
  537. package/dist/cjs/plugins/install-plugin-dependencies.d.ts.map +0 -1
  538. package/dist/cjs/plugins/install-plugin-dependencies.js +0 -61
  539. package/dist/cjs/plugins/load-config.d.ts +0 -3
  540. package/dist/cjs/plugins/load-config.d.ts.map +0 -1
  541. package/dist/cjs/plugins/load-config.js +0 -57
  542. package/dist/cjs/plugins/plugin-dependencies.d.ts +0 -2
  543. package/dist/cjs/plugins/plugin-dependencies.d.ts.map +0 -1
  544. package/dist/cjs/plugins/plugin-dependencies.js +0 -11
  545. package/dist/cjs/plugins/process-plugins.d.ts +0 -3
  546. package/dist/cjs/plugins/process-plugins.d.ts.map +0 -1
  547. package/dist/cjs/plugins/process-plugins.js +0 -20
  548. package/dist/cjs/plugins/process-steps.d.ts +0 -3
  549. package/dist/cjs/plugins/process-steps.d.ts.map +0 -1
  550. package/dist/cjs/plugins/process-steps.js +0 -40
  551. package/dist/cjs/redis-memory-manager.d.ts +0 -8
  552. package/dist/cjs/redis-memory-manager.d.ts.map +0 -1
  553. package/dist/cjs/redis-memory-manager.js +0 -126
  554. package/dist/cjs/start.d.ts +0 -2
  555. package/dist/cjs/start.d.ts.map +0 -1
  556. package/dist/cjs/start.js +0 -81
  557. package/dist/cjs/utils/activate-python-env.d.ts +0 -9
  558. package/dist/cjs/utils/activate-python-env.d.ts.map +0 -1
  559. package/dist/cjs/utils/activate-python-env.js +0 -48
  560. package/dist/cjs/utils/amplitude/enrichment-plugin.d.ts +0 -8
  561. package/dist/cjs/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
  562. package/dist/cjs/utils/amplitude/enrichment-plugin.js +0 -32
  563. package/dist/cjs/utils/analytics.d.ts +0 -7
  564. package/dist/cjs/utils/analytics.d.ts.map +0 -1
  565. package/dist/cjs/utils/analytics.js +0 -92
  566. package/dist/cjs/utils/build-tools-error.d.ts +0 -8
  567. package/dist/cjs/utils/build-tools-error.d.ts.map +0 -1
  568. package/dist/cjs/utils/build-tools-error.js +0 -51
  569. package/dist/cjs/utils/ensure-uv.d.ts +0 -2
  570. package/dist/cjs/utils/ensure-uv.d.ts.map +0 -1
  571. package/dist/cjs/utils/ensure-uv.js +0 -81
  572. package/dist/cjs/utils/errors/build.error.d.ts +0 -11
  573. package/dist/cjs/utils/errors/build.error.d.ts.map +0 -1
  574. package/dist/cjs/utils/errors/build.error.js +0 -21
  575. package/dist/cjs/utils/errors/compilation.error.d.ts +0 -5
  576. package/dist/cjs/utils/errors/compilation.error.d.ts.map +0 -1
  577. package/dist/cjs/utils/errors/compilation.error.js +0 -11
  578. package/dist/cjs/utils/errors/locked-data-generation.error.d.ts +0 -5
  579. package/dist/cjs/utils/errors/locked-data-generation.error.d.ts.map +0 -1
  580. package/dist/cjs/utils/errors/locked-data-generation.error.js +0 -11
  581. package/dist/cjs/utils/execute-command.d.ts +0 -6
  582. package/dist/cjs/utils/execute-command.d.ts.map +0 -1
  583. package/dist/cjs/utils/execute-command.js +0 -26
  584. package/dist/cjs/utils/get-package-manager.d.ts +0 -2
  585. package/dist/cjs/utils/get-package-manager.d.ts.map +0 -1
  586. package/dist/cjs/utils/get-package-manager.js +0 -19
  587. package/dist/cjs/utils/install-lambda-python-packages.d.ts +0 -7
  588. package/dist/cjs/utils/install-lambda-python-packages.d.ts.map +0 -1
  589. package/dist/cjs/utils/install-lambda-python-packages.js +0 -35
  590. package/dist/cjs/utils/internal-logger.d.ts +0 -6
  591. package/dist/cjs/utils/internal-logger.d.ts.map +0 -1
  592. package/dist/cjs/utils/internal-logger.js +0 -30
  593. package/dist/cjs/utils/python-version-utils.d.ts +0 -4
  594. package/dist/cjs/utils/python-version-utils.d.ts.map +0 -1
  595. package/dist/cjs/utils/python-version-utils.js +0 -74
  596. package/dist/cjs/version.d.ts +0 -2
  597. package/dist/cjs/version.d.ts.map +0 -1
  598. package/dist/cjs/version.js +0 -11
  599. package/dist/cjs/watcher.d.ts +0 -42
  600. package/dist/cjs/watcher.d.ts.map +0 -1
  601. package/dist/cjs/watcher.js +0 -155
  602. package/dist/cjs/workbench.d.ts +0 -2
  603. package/dist/cjs/workbench.d.ts.map +0 -1
  604. package/dist/cjs/workbench.js +0 -17
  605. package/dist/esm/__tests__/openapi/generate.test.d.ts +0 -2
  606. package/dist/esm/__tests__/openapi/generate.test.d.ts.map +0 -1
  607. package/dist/esm/__tests__/openapi/generate.test.js +0 -252
  608. package/dist/esm/__tests__/redis-memory-manager.test.d.ts +0 -2
  609. package/dist/esm/__tests__/redis-memory-manager.test.d.ts.map +0 -1
  610. package/dist/esm/__tests__/redis-memory-manager.test.js +0 -174
  611. package/dist/esm/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
  612. package/dist/esm/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
  613. package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
  614. package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
  615. package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.js +0 -81
  616. package/dist/esm/__tests__/test-helpers/redis-test-helper.js +0 -94
  617. package/dist/esm/cli.d.ts +0 -3
  618. package/dist/esm/cli.d.ts.map +0 -1
  619. package/dist/esm/cli.js +0 -188
  620. package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
  621. package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
  622. package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.js +0 -320
  623. package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
  624. package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
  625. package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.js +0 -569
  626. package/dist/esm/cloud/build/build-validation.d.ts +0 -6
  627. package/dist/esm/cloud/build/build-validation.d.ts.map +0 -1
  628. package/dist/esm/cloud/build/build-validation.js +0 -39
  629. package/dist/esm/cloud/build/builder.d.ts +0 -58
  630. package/dist/esm/cloud/build/builder.d.ts.map +0 -1
  631. package/dist/esm/cloud/build/builder.js +0 -90
  632. package/dist/esm/cloud/build/builders/archiver.d.ts +0 -16
  633. package/dist/esm/cloud/build/builders/archiver.d.ts.map +0 -1
  634. package/dist/esm/cloud/build/builders/archiver.js +0 -70
  635. package/dist/esm/cloud/build/builders/include-static-files.d.ts +0 -5
  636. package/dist/esm/cloud/build/builders/include-static-files.d.ts.map +0 -1
  637. package/dist/esm/cloud/build/builders/include-static-files.js +0 -21
  638. package/dist/esm/cloud/build/builders/node/index.d.ts +0 -12
  639. package/dist/esm/cloud/build/builders/node/index.d.ts.map +0 -1
  640. package/dist/esm/cloud/build/builders/node/index.js +0 -101
  641. package/dist/esm/cloud/build/builders/node/router-template.d.ts +0 -10
  642. package/dist/esm/cloud/build/builders/node/router-template.d.ts.map +0 -1
  643. package/dist/esm/cloud/build/builders/node/router-template.js +0 -3
  644. package/dist/esm/cloud/build/builders/node/router-template.ts +0 -14
  645. package/dist/esm/cloud/build/builders/python/index.d.ts +0 -16
  646. package/dist/esm/cloud/build/builders/python/index.d.ts.map +0 -1
  647. package/dist/esm/cloud/build/builders/python/index.js +0 -122
  648. package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
  649. package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
  650. package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.js +0 -22
  651. package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
  652. package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
  653. package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.js +0 -36
  654. package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
  655. package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
  656. package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.js +0 -62
  657. package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
  658. package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
  659. package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.js +0 -89
  660. package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
  661. package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
  662. package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.js +0 -33
  663. package/dist/esm/cloud/build/builders/python/python-data/constants.d.ts +0 -2
  664. package/dist/esm/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
  665. package/dist/esm/cloud/build/builders/python/python-data/constants.js +0 -107
  666. package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
  667. package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
  668. package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.js +0 -17
  669. package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
  670. package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
  671. package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.js +0 -20
  672. package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
  673. package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
  674. package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.js +0 -68
  675. package/dist/esm/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
  676. package/dist/esm/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
  677. package/dist/esm/cloud/build/builders/python/python-data/python-errors.js +0 -21
  678. package/dist/esm/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
  679. package/dist/esm/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
  680. package/dist/esm/cloud/build/builders/python/python-data/read-requirements.js +0 -25
  681. package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
  682. package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
  683. package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.js +0 -45
  684. package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
  685. package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
  686. package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.js +0 -53
  687. package/dist/esm/cloud/build/builders/python/router_template.py +0 -15
  688. package/dist/esm/cloud/build/builders/python/uv-packager.d.ts +0 -13
  689. package/dist/esm/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
  690. package/dist/esm/cloud/build/builders/python/uv-packager.js +0 -62
  691. package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
  692. package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
  693. package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.js +0 -69
  694. package/dist/esm/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
  695. package/dist/esm/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
  696. package/dist/esm/cloud/build/validations/__tests__/build-validation.test.js +0 -94
  697. package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
  698. package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
  699. package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.js +0 -66
  700. package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
  701. package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
  702. package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.js +0 -64
  703. package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
  704. package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
  705. package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.js +0 -69
  706. package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
  707. package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
  708. package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.js +0 -67
  709. package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
  710. package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
  711. package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.js +0 -66
  712. package/dist/esm/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
  713. package/dist/esm/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
  714. package/dist/esm/cloud/build/validations/api-endpoints.validator.js +0 -29
  715. package/dist/esm/cloud/build/validations/constants.d.ts +0 -7
  716. package/dist/esm/cloud/build/validations/constants.d.ts.map +0 -1
  717. package/dist/esm/cloud/build/validations/constants.js +0 -6
  718. package/dist/esm/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
  719. package/dist/esm/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
  720. package/dist/esm/cloud/build/validations/cron-expressions.validator.js +0 -22
  721. package/dist/esm/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
  722. package/dist/esm/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
  723. package/dist/esm/cloud/build/validations/duplicate-step-names.validator.js +0 -19
  724. package/dist/esm/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
  725. package/dist/esm/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
  726. package/dist/esm/cloud/build/validations/infrastructure-configs.validator.js +0 -25
  727. package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
  728. package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
  729. package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.js +0 -24
  730. package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
  731. package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
  732. package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.js +0 -29
  733. package/dist/esm/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
  734. package/dist/esm/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
  735. package/dist/esm/cloud/build/validations/step-name-lengths.validator.js +0 -20
  736. package/dist/esm/cloud/build/validations/types.d.ts +0 -8
  737. package/dist/esm/cloud/build/validations/types.d.ts.map +0 -1
  738. package/dist/esm/cloud/build/validations/types.js +0 -1
  739. package/dist/esm/cloud/cli/build.d.ts +0 -2
  740. package/dist/esm/cloud/cli/build.d.ts.map +0 -1
  741. package/dist/esm/cloud/cli/build.js +0 -17
  742. package/dist/esm/cloud/cli/deploy.d.ts +0 -2
  743. package/dist/esm/cloud/cli/deploy.d.ts.map +0 -1
  744. package/dist/esm/cloud/cli/deploy.js +0 -59
  745. package/dist/esm/cloud/cli-output-manager.d.ts +0 -37
  746. package/dist/esm/cloud/cli-output-manager.d.ts.map +0 -1
  747. package/dist/esm/cloud/cli-output-manager.js +0 -123
  748. package/dist/esm/cloud/cli.d.ts +0 -2
  749. package/dist/esm/cloud/cli.d.ts.map +0 -1
  750. package/dist/esm/cloud/cli.js +0 -2
  751. package/dist/esm/cloud/config-utils.d.ts +0 -10
  752. package/dist/esm/cloud/config-utils.d.ts.map +0 -1
  753. package/dist/esm/cloud/config-utils.js +0 -59
  754. package/dist/esm/cloud/endpoints.d.ts +0 -3
  755. package/dist/esm/cloud/endpoints.d.ts.map +0 -1
  756. package/dist/esm/cloud/endpoints.js +0 -89
  757. package/dist/esm/cloud/index.d.ts +0 -3
  758. package/dist/esm/cloud/index.d.ts.map +0 -1
  759. package/dist/esm/cloud/index.js +0 -2
  760. package/dist/esm/cloud/new-deployment/build.d.ts +0 -4
  761. package/dist/esm/cloud/new-deployment/build.d.ts.map +0 -1
  762. package/dist/esm/cloud/new-deployment/build.js +0 -54
  763. package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
  764. package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
  765. package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.js +0 -11
  766. package/dist/esm/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
  767. package/dist/esm/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
  768. package/dist/esm/cloud/new-deployment/cloud-api/endpoints.js +0 -7
  769. package/dist/esm/cloud/new-deployment/cloud-api/index.d.ts +0 -36
  770. package/dist/esm/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
  771. package/dist/esm/cloud/new-deployment/cloud-api/index.js +0 -8
  772. package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
  773. package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
  774. package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.js +0 -6
  775. package/dist/esm/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
  776. package/dist/esm/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
  777. package/dist/esm/cloud/new-deployment/cloud-api/upload.js +0 -6
  778. package/dist/esm/cloud/new-deployment/constants.d.ts +0 -5
  779. package/dist/esm/cloud/new-deployment/constants.d.ts.map +0 -1
  780. package/dist/esm/cloud/new-deployment/constants.js +0 -5
  781. package/dist/esm/cloud/new-deployment/deploy.d.ts +0 -14
  782. package/dist/esm/cloud/new-deployment/deploy.d.ts.map +0 -1
  783. package/dist/esm/cloud/new-deployment/deploy.js +0 -45
  784. package/dist/esm/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
  785. package/dist/esm/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
  786. package/dist/esm/cloud/new-deployment/listeners/build-printer.js +0 -100
  787. package/dist/esm/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
  788. package/dist/esm/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
  789. package/dist/esm/cloud/new-deployment/listeners/cli-listener.js +0 -90
  790. package/dist/esm/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
  791. package/dist/esm/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
  792. package/dist/esm/cloud/new-deployment/listeners/listener.types.js +0 -1
  793. package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
  794. package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
  795. package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.js +0 -85
  796. package/dist/esm/cloud/new-deployment/listeners/printer.d.ts +0 -17
  797. package/dist/esm/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
  798. package/dist/esm/cloud/new-deployment/listeners/printer.js +0 -91
  799. package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
  800. package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
  801. package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.js +0 -274
  802. package/dist/esm/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
  803. package/dist/esm/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
  804. package/dist/esm/cloud/new-deployment/streams/deployment-stream.js +0 -103
  805. package/dist/esm/cloud/new-deployment/upload-artifacts.d.ts +0 -4
  806. package/dist/esm/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
  807. package/dist/esm/cloud/new-deployment/upload-artifacts.js +0 -21
  808. package/dist/esm/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
  809. package/dist/esm/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
  810. package/dist/esm/cloud/new-deployment/utils/load-env-data.js +0 -41
  811. package/dist/esm/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
  812. package/dist/esm/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
  813. package/dist/esm/cloud/new-deployment/utils/pretty-bytes.js +0 -15
  814. package/dist/esm/cloud/new-deployment/utils/upload.d.ts +0 -2
  815. package/dist/esm/cloud/new-deployment/utils/upload.d.ts.map +0 -1
  816. package/dist/esm/cloud/new-deployment/utils/upload.js +0 -33
  817. package/dist/esm/constants.d.ts +0 -3
  818. package/dist/esm/constants.d.ts.map +0 -1
  819. package/dist/esm/constants.js +0 -11
  820. package/dist/esm/create/index.d.ts +0 -11
  821. package/dist/esm/create/index.d.ts.map +0 -1
  822. package/dist/esm/create/index.js +0 -208
  823. package/dist/esm/create/interactive.d.ts +0 -9
  824. package/dist/esm/create/interactive.d.ts.map +0 -1
  825. package/dist/esm/create/interactive.js +0 -68
  826. package/dist/esm/create/pull-rules.d.ts +0 -8
  827. package/dist/esm/create/pull-rules.d.ts.map +0 -1
  828. package/dist/esm/create/pull-rules.js +0 -21
  829. package/dist/esm/create/setup-template.d.ts +0 -3
  830. package/dist/esm/create/setup-template.d.ts.map +0 -1
  831. package/dist/esm/create/setup-template.js +0 -11
  832. package/dist/esm/create/templates/generate.d.ts +0 -5
  833. package/dist/esm/create/templates/generate.d.ts.map +0 -1
  834. package/dist/esm/create/templates/generate.js +0 -125
  835. package/dist/esm/create/templates/generate.ts +0 -139
  836. package/dist/esm/create/templates/hello/README.md.txt +0 -84
  837. package/dist/esm/create/templates/hello/motia-workbench.json +0 -16
  838. package/dist/esm/create/templates/hello/motia.config.ts.txt +0 -10
  839. package/dist/esm/create/templates/hello/steps/hello/hello-api.step.ts.txt +0 -46
  840. package/dist/esm/create/templates/hello/steps/hello/process-greeting.step.ts.txt +0 -41
  841. package/dist/esm/create/templates/hello_js/README.md.txt +0 -84
  842. package/dist/esm/create/templates/hello_js/motia-workbench.json +0 -16
  843. package/dist/esm/create/templates/hello_js/motia.config.ts.txt +0 -10
  844. package/dist/esm/create/templates/hello_js/steps/hello/hello-api.step.js.txt +0 -47
  845. package/dist/esm/create/templates/hello_js/steps/hello/process-greeting.step.js.txt +0 -42
  846. package/dist/esm/create/templates/hello_python/README.md.txt +0 -85
  847. package/dist/esm/create/templates/hello_python/motia-workbench.json +0 -16
  848. package/dist/esm/create/templates/hello_python/motia.config.ts.txt +0 -10
  849. package/dist/esm/create/templates/hello_python/requirements.txt +0 -2
  850. package/dist/esm/create/templates/hello_python/steps/hello/hello_api_step.py.txt +0 -74
  851. package/dist/esm/create/templates/hello_python/steps/hello/process_greeting_step.py.txt +0 -65
  852. package/dist/esm/create/templates/index.d.ts +0 -3
  853. package/dist/esm/create/templates/index.d.ts.map +0 -1
  854. package/dist/esm/create/templates/index.js +0 -9
  855. package/dist/esm/create/templates/index.ts +0 -10
  856. package/dist/esm/create/templates/nodejs/README.md.txt +0 -93
  857. package/dist/esm/create/templates/nodejs/motia-workbench.json +0 -27
  858. package/dist/esm/create/templates/nodejs/motia.config.ts.txt +0 -10
  859. package/dist/esm/create/templates/nodejs/src/services/pet-store.ts.txt +0 -29
  860. package/dist/esm/create/templates/nodejs/src/services/types.ts.txt +0 -22
  861. package/dist/esm/create/templates/nodejs/steps/petstore/api.step.ts.txt +0 -48
  862. package/dist/esm/create/templates/nodejs/steps/petstore/notification.step.ts.txt +0 -35
  863. package/dist/esm/create/templates/nodejs/steps/petstore/process-food-order.step.ts.txt +0 -46
  864. package/dist/esm/create/templates/nodejs/steps/petstore/state-audit-cron.step.ts.txt +0 -43
  865. package/dist/esm/create/templates/nodejs/tutorial/petstore/api.step.ts-features.json.txt +0 -50
  866. package/dist/esm/create/templates/nodejs/tutorial/petstore/process-food-order.step.ts-features.json.txt +0 -50
  867. package/dist/esm/create/templates/nodejs/tutorial/petstore/state-audit-cron.step.ts-features.json.txt +0 -20
  868. package/dist/esm/create/templates/nodejs/tutorial/tutorial.tsx.txt +0 -687
  869. package/dist/esm/create/templates/plugin/.gitignore.txt +0 -3
  870. package/dist/esm/create/templates/plugin/README.md.txt +0 -64
  871. package/dist/esm/create/templates/plugin/package.json.txt +0 -47
  872. package/dist/esm/create/templates/plugin/postcss.config.js.txt +0 -6
  873. package/dist/esm/create/templates/plugin/src/components/example-page.tsx.txt +0 -64
  874. package/dist/esm/create/templates/plugin/src/index.ts.txt +0 -4
  875. package/dist/esm/create/templates/plugin/src/plugin.ts.txt +0 -17
  876. package/dist/esm/create/templates/plugin/src/styles.css.txt +0 -3
  877. package/dist/esm/create/templates/plugin/tsconfig.json.txt +0 -27
  878. package/dist/esm/create/templates/plugin/vite.config.ts.txt +0 -30
  879. package/dist/esm/create/templates/python/README.md.txt +0 -94
  880. package/dist/esm/create/templates/python/motia-workbench.json +0 -27
  881. package/dist/esm/create/templates/python/motia.config.ts.txt +0 -10
  882. package/dist/esm/create/templates/python/requirements.txt +0 -2
  883. package/dist/esm/create/templates/python/src/__init__.py.txt +0 -0
  884. package/dist/esm/create/templates/python/src/services/__init__.py.txt +0 -0
  885. package/dist/esm/create/templates/python/src/services/pet_store.py.txt +0 -37
  886. package/dist/esm/create/templates/python/src/services/types.py.txt +0 -20
  887. package/dist/esm/create/templates/python/steps/petstore/api_step.py.txt +0 -50
  888. package/dist/esm/create/templates/python/steps/petstore/notification_step.py.txt +0 -40
  889. package/dist/esm/create/templates/python/steps/petstore/process_food_order_step.py.txt +0 -48
  890. package/dist/esm/create/templates/python/steps/petstore/state_audit_cron_step.py.txt +0 -39
  891. package/dist/esm/create/templates/python/tutorial/petstore/api_step.py-features.json.txt +0 -50
  892. package/dist/esm/create/templates/python/tutorial/petstore/process_food_order_step.py-features.json.txt +0 -50
  893. package/dist/esm/create/templates/python/tutorial/petstore/state_audit_cron_step.py-features.json.txt +0 -26
  894. package/dist/esm/create/templates/python/tutorial/tutorial.tsx.txt +0 -687
  895. package/dist/esm/create/utils.d.ts +0 -3
  896. package/dist/esm/create/utils.d.ts.map +0 -1
  897. package/dist/esm/create/utils.js +0 -13
  898. package/dist/esm/create-step/getAnswers.d.ts +0 -3
  899. package/dist/esm/create-step/getAnswers.d.ts.map +0 -1
  900. package/dist/esm/create-step/getAnswers.js +0 -163
  901. package/dist/esm/create-step/index.d.ts +0 -4
  902. package/dist/esm/create-step/index.d.ts.map +0 -1
  903. package/dist/esm/create-step/index.js +0 -41
  904. package/dist/esm/create-step/teamplateUtils.d.ts +0 -6
  905. package/dist/esm/create-step/teamplateUtils.d.ts.map +0 -1
  906. package/dist/esm/create-step/teamplateUtils.js +0 -44
  907. package/dist/esm/create-step/templates/api/template.javascript.txt +0 -25
  908. package/dist/esm/create-step/templates/api/template.python.txt +0 -29
  909. package/dist/esm/create-step/templates/api/template.ruby.txt +0 -22
  910. package/dist/esm/create-step/templates/api/template.typescript.txt +0 -31
  911. package/dist/esm/create-step/templates/cron/template.javascript.txt +0 -20
  912. package/dist/esm/create-step/templates/cron/template.python.txt +0 -19
  913. package/dist/esm/create-step/templates/cron/template.ruby.txt +0 -22
  914. package/dist/esm/create-step/templates/cron/template.type.txt +0 -22
  915. package/dist/esm/create-step/templates/cron/template.typescript.txt +0 -22
  916. package/dist/esm/create-step/templates/event/template.javascript.txt +0 -27
  917. package/dist/esm/create-step/templates/event/template.python.txt +0 -29
  918. package/dist/esm/create-step/templates/event/template.ruby.txt +0 -22
  919. package/dist/esm/create-step/templates/event/template.typescript.txt +0 -26
  920. package/dist/esm/create-step/templates/noop/template.javascript.txt +0 -8
  921. package/dist/esm/create-step/templates/noop/template.python.txt +0 -8
  922. package/dist/esm/create-step/templates/noop/template.ruby.txt +0 -10
  923. package/dist/esm/create-step/templates/noop/template.typescript.txt +0 -10
  924. package/dist/esm/create-step/templates/ui/api.step.txt +0 -20
  925. package/dist/esm/create-step/templates/ui/cron.step.txt +0 -15
  926. package/dist/esm/create-step/templates/ui/event.step.txt +0 -15
  927. package/dist/esm/create-step/templates/ui/noop.step.txt +0 -15
  928. package/dist/esm/create-step/templates/ui/overrides.d.ts +0 -6
  929. package/dist/esm/create-step/templates/ui/overrides.d.ts.map +0 -1
  930. package/dist/esm/create-step/templates/ui/overrides.js +0 -20
  931. package/dist/esm/create-step/templates/ui/overrides.ts +0 -24
  932. package/dist/esm/create-step/types.d.ts +0 -22
  933. package/dist/esm/create-step/types.d.ts.map +0 -1
  934. package/dist/esm/create-step/types.js +0 -3
  935. package/dist/esm/create-step/utils.d.ts +0 -3
  936. package/dist/esm/create-step/utils.d.ts.map +0 -1
  937. package/dist/esm/create-step/utils.js +0 -9
  938. package/dist/esm/cursor-rules/dot-files/.claude/agents/motia-developer.md +0 -95
  939. package/dist/esm/cursor-rules/dot-files/.cursor/architecture/architecture.mdc +0 -96
  940. package/dist/esm/cursor-rules/dot-files/.cursor/architecture/error-handling.mdc +0 -122
  941. package/dist/esm/cursor-rules/dot-files/.cursor/index.mdc +0 -34
  942. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/api-steps.mdc +0 -441
  943. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/cron-steps.mdc +0 -171
  944. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/event-steps.mdc +0 -234
  945. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/middlewares.mdc +0 -217
  946. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/motia-config.mdc +0 -359
  947. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/realtime-streaming.mdc +0 -401
  948. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/state-management.mdc +0 -136
  949. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/ui-steps.mdc +0 -76
  950. package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/virtual-steps.mdc +0 -251
  951. package/dist/esm/cursor-rules/dot-files/AGENTS.md +0 -215
  952. package/dist/esm/cursor-rules/dot-files/CLAUDE.md +0 -58
  953. package/dist/esm/cursor-rules/dot-files/opencode.json +0 -18
  954. package/dist/esm/dev-watchers.d.ts +0 -5
  955. package/dist/esm/dev-watchers.d.ts.map +0 -1
  956. package/dist/esm/dev-watchers.js +0 -94
  957. package/dist/esm/dev.d.ts +0 -2
  958. package/dist/esm/dev.d.ts.map +0 -1
  959. package/dist/esm/dev.js +0 -124
  960. package/dist/esm/docker/build.d.ts +0 -2
  961. package/dist/esm/docker/build.d.ts.map +0 -1
  962. package/dist/esm/docker/build.js +0 -22
  963. package/dist/esm/docker/run.d.ts +0 -2
  964. package/dist/esm/docker/run.d.ts.map +0 -1
  965. package/dist/esm/docker/run.js +0 -46
  966. package/dist/esm/docker/setup.d.ts +0 -2
  967. package/dist/esm/docker/setup.d.ts.map +0 -1
  968. package/dist/esm/docker/setup.js +0 -86
  969. package/dist/esm/docker/templates/.dockerignore.sample +0 -37
  970. package/dist/esm/docker/templates/MotiaDockerSample +0 -20
  971. package/dist/esm/docker/utils/build-docker-image.d.ts +0 -2
  972. package/dist/esm/docker/utils/build-docker-image.d.ts.map +0 -1
  973. package/dist/esm/docker/utils/build-docker-image.js +0 -15
  974. package/dist/esm/docker/utils/print-intro.d.ts +0 -2
  975. package/dist/esm/docker/utils/print-intro.d.ts.map +0 -1
  976. package/dist/esm/docker/utils/print-intro.js +0 -17
  977. package/dist/esm/docker/utils/promised-exec.d.ts +0 -2
  978. package/dist/esm/docker/utils/promised-exec.d.ts.map +0 -1
  979. package/dist/esm/docker/utils/promised-exec.js +0 -24
  980. package/dist/esm/generate-locked-data.d.ts +0 -18
  981. package/dist/esm/generate-locked-data.d.ts.map +0 -1
  982. package/dist/esm/generate-locked-data.js +0 -123
  983. package/dist/esm/generate-types.d.ts +0 -2
  984. package/dist/esm/generate-types.d.ts.map +0 -1
  985. package/dist/esm/generate-types.js +0 -24
  986. package/dist/esm/index.d.ts +0 -3
  987. package/dist/esm/index.d.ts.map +0 -1
  988. package/dist/esm/index.js +0 -2
  989. package/dist/esm/install.d.ts +0 -11
  990. package/dist/esm/install.d.ts.map +0 -1
  991. package/dist/esm/install.js +0 -60
  992. package/dist/esm/load-motia-config.d.ts +0 -4
  993. package/dist/esm/load-motia-config.d.ts.map +0 -1
  994. package/dist/esm/load-motia-config.js +0 -15
  995. package/dist/esm/openapi/generate.d.ts +0 -3
  996. package/dist/esm/openapi/generate.d.ts.map +0 -1
  997. package/dist/esm/openapi/generate.js +0 -89
  998. package/dist/esm/openapi/process-schema.d.ts +0 -3
  999. package/dist/esm/openapi/process-schema.d.ts.map +0 -1
  1000. package/dist/esm/openapi/process-schema.js +0 -51
  1001. package/dist/esm/openapi/utils.d.ts +0 -3
  1002. package/dist/esm/openapi/utils.d.ts.map +0 -1
  1003. package/dist/esm/openapi/utils.js +0 -4
  1004. package/dist/esm/plugins/collect-plugin-steps.d.ts +0 -6
  1005. package/dist/esm/plugins/collect-plugin-steps.d.ts.map +0 -1
  1006. package/dist/esm/plugins/collect-plugin-steps.js +0 -37
  1007. package/dist/esm/plugins/create-plugin-context.d.ts +0 -3
  1008. package/dist/esm/plugins/create-plugin-context.d.ts.map +0 -1
  1009. package/dist/esm/plugins/create-plugin-context.js +0 -30
  1010. package/dist/esm/plugins/index.d.ts +0 -2
  1011. package/dist/esm/plugins/index.d.ts.map +0 -1
  1012. package/dist/esm/plugins/index.js +0 -1
  1013. package/dist/esm/plugins/install-plugin-dependencies.d.ts +0 -3
  1014. package/dist/esm/plugins/install-plugin-dependencies.d.ts.map +0 -1
  1015. package/dist/esm/plugins/install-plugin-dependencies.js +0 -54
  1016. package/dist/esm/plugins/load-config.d.ts +0 -3
  1017. package/dist/esm/plugins/load-config.d.ts.map +0 -1
  1018. package/dist/esm/plugins/load-config.js +0 -17
  1019. package/dist/esm/plugins/plugin-dependencies.d.ts +0 -2
  1020. package/dist/esm/plugins/plugin-dependencies.d.ts.map +0 -1
  1021. package/dist/esm/plugins/plugin-dependencies.js +0 -8
  1022. package/dist/esm/plugins/process-plugins.d.ts +0 -3
  1023. package/dist/esm/plugins/process-plugins.d.ts.map +0 -1
  1024. package/dist/esm/plugins/process-plugins.js +0 -16
  1025. package/dist/esm/plugins/process-steps.d.ts +0 -3
  1026. package/dist/esm/plugins/process-steps.d.ts.map +0 -1
  1027. package/dist/esm/plugins/process-steps.js +0 -36
  1028. package/dist/esm/redis-memory-manager.d.ts +0 -8
  1029. package/dist/esm/redis-memory-manager.d.ts.map +0 -1
  1030. package/dist/esm/redis-memory-manager.js +0 -121
  1031. package/dist/esm/start.d.ts +0 -2
  1032. package/dist/esm/start.d.ts.map +0 -1
  1033. package/dist/esm/start.js +0 -74
  1034. package/dist/esm/utils/activate-python-env.d.ts +0 -9
  1035. package/dist/esm/utils/activate-python-env.d.ts.map +0 -1
  1036. package/dist/esm/utils/activate-python-env.js +0 -40
  1037. package/dist/esm/utils/amplitude/enrichment-plugin.d.ts +0 -8
  1038. package/dist/esm/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
  1039. package/dist/esm/utils/amplitude/enrichment-plugin.js +0 -25
  1040. package/dist/esm/utils/analytics.d.ts +0 -7
  1041. package/dist/esm/utils/analytics.d.ts.map +0 -1
  1042. package/dist/esm/utils/analytics.js +0 -84
  1043. package/dist/esm/utils/build-tools-error.d.ts +0 -8
  1044. package/dist/esm/utils/build-tools-error.d.ts.map +0 -1
  1045. package/dist/esm/utils/build-tools-error.js +0 -46
  1046. package/dist/esm/utils/ensure-uv.d.ts +0 -2
  1047. package/dist/esm/utils/ensure-uv.d.ts.map +0 -1
  1048. package/dist/esm/utils/ensure-uv.js +0 -77
  1049. package/dist/esm/utils/errors/build.error.d.ts +0 -11
  1050. package/dist/esm/utils/errors/build.error.d.ts.map +0 -1
  1051. package/dist/esm/utils/errors/build.error.js +0 -17
  1052. package/dist/esm/utils/errors/compilation.error.d.ts +0 -5
  1053. package/dist/esm/utils/errors/compilation.error.d.ts.map +0 -1
  1054. package/dist/esm/utils/errors/compilation.error.js +0 -7
  1055. package/dist/esm/utils/errors/locked-data-generation.error.d.ts +0 -5
  1056. package/dist/esm/utils/errors/locked-data-generation.error.d.ts.map +0 -1
  1057. package/dist/esm/utils/errors/locked-data-generation.error.js +0 -7
  1058. package/dist/esm/utils/execute-command.d.ts +0 -6
  1059. package/dist/esm/utils/execute-command.d.ts.map +0 -1
  1060. package/dist/esm/utils/execute-command.js +0 -22
  1061. package/dist/esm/utils/get-package-manager.d.ts +0 -2
  1062. package/dist/esm/utils/get-package-manager.d.ts.map +0 -1
  1063. package/dist/esm/utils/get-package-manager.js +0 -15
  1064. package/dist/esm/utils/install-lambda-python-packages.d.ts +0 -7
  1065. package/dist/esm/utils/install-lambda-python-packages.d.ts.map +0 -1
  1066. package/dist/esm/utils/install-lambda-python-packages.js +0 -28
  1067. package/dist/esm/utils/internal-logger.d.ts +0 -6
  1068. package/dist/esm/utils/internal-logger.d.ts.map +0 -1
  1069. package/dist/esm/utils/internal-logger.js +0 -24
  1070. package/dist/esm/utils/python-version-utils.d.ts +0 -4
  1071. package/dist/esm/utils/python-version-utils.d.ts.map +0 -1
  1072. package/dist/esm/utils/python-version-utils.js +0 -66
  1073. package/dist/esm/version.d.ts +0 -2
  1074. package/dist/esm/version.d.ts.map +0 -1
  1075. package/dist/esm/version.js +0 -5
  1076. package/dist/esm/watcher.d.ts +0 -42
  1077. package/dist/esm/watcher.d.ts.map +0 -1
  1078. package/dist/esm/watcher.js +0 -148
  1079. package/dist/esm/workbench.d.ts +0 -2
  1080. package/dist/esm/workbench.d.ts.map +0 -1
  1081. package/dist/esm/workbench.js +0 -1
  1082. package/dist/types/__tests__/openapi/generate.test.d.ts +0 -2
  1083. package/dist/types/__tests__/openapi/generate.test.d.ts.map +0 -1
  1084. package/dist/types/__tests__/redis-memory-manager.test.d.ts +0 -2
  1085. package/dist/types/__tests__/redis-memory-manager.test.d.ts.map +0 -1
  1086. package/dist/types/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
  1087. package/dist/types/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
  1088. package/dist/types/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
  1089. package/dist/types/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
  1090. package/dist/types/cli.d.ts +0 -3
  1091. package/dist/types/cli.d.ts.map +0 -1
  1092. package/dist/types/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
  1093. package/dist/types/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
  1094. package/dist/types/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
  1095. package/dist/types/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
  1096. package/dist/types/cloud/build/build-validation.d.ts +0 -6
  1097. package/dist/types/cloud/build/build-validation.d.ts.map +0 -1
  1098. package/dist/types/cloud/build/builder.d.ts +0 -58
  1099. package/dist/types/cloud/build/builder.d.ts.map +0 -1
  1100. package/dist/types/cloud/build/builders/archiver.d.ts +0 -16
  1101. package/dist/types/cloud/build/builders/archiver.d.ts.map +0 -1
  1102. package/dist/types/cloud/build/builders/include-static-files.d.ts +0 -5
  1103. package/dist/types/cloud/build/builders/include-static-files.d.ts.map +0 -1
  1104. package/dist/types/cloud/build/builders/node/index.d.ts +0 -12
  1105. package/dist/types/cloud/build/builders/node/index.d.ts.map +0 -1
  1106. package/dist/types/cloud/build/builders/node/router-template.d.ts +0 -10
  1107. package/dist/types/cloud/build/builders/node/router-template.d.ts.map +0 -1
  1108. package/dist/types/cloud/build/builders/python/index.d.ts +0 -16
  1109. package/dist/types/cloud/build/builders/python/index.d.ts.map +0 -1
  1110. package/dist/types/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
  1111. package/dist/types/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
  1112. package/dist/types/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
  1113. package/dist/types/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
  1114. package/dist/types/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
  1115. package/dist/types/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
  1116. package/dist/types/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
  1117. package/dist/types/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
  1118. package/dist/types/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
  1119. package/dist/types/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
  1120. package/dist/types/cloud/build/builders/python/python-data/constants.d.ts +0 -2
  1121. package/dist/types/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
  1122. package/dist/types/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
  1123. package/dist/types/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
  1124. package/dist/types/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
  1125. package/dist/types/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
  1126. package/dist/types/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
  1127. package/dist/types/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
  1128. package/dist/types/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
  1129. package/dist/types/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
  1130. package/dist/types/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
  1131. package/dist/types/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
  1132. package/dist/types/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
  1133. package/dist/types/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
  1134. package/dist/types/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
  1135. package/dist/types/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
  1136. package/dist/types/cloud/build/builders/python/uv-packager.d.ts +0 -13
  1137. package/dist/types/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
  1138. package/dist/types/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
  1139. package/dist/types/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
  1140. package/dist/types/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
  1141. package/dist/types/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
  1142. package/dist/types/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
  1143. package/dist/types/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
  1144. package/dist/types/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
  1145. package/dist/types/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
  1146. package/dist/types/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
  1147. package/dist/types/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
  1148. package/dist/types/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
  1149. package/dist/types/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
  1150. package/dist/types/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
  1151. package/dist/types/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
  1152. package/dist/types/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
  1153. package/dist/types/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
  1154. package/dist/types/cloud/build/validations/constants.d.ts +0 -7
  1155. package/dist/types/cloud/build/validations/constants.d.ts.map +0 -1
  1156. package/dist/types/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
  1157. package/dist/types/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
  1158. package/dist/types/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
  1159. package/dist/types/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
  1160. package/dist/types/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
  1161. package/dist/types/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
  1162. package/dist/types/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
  1163. package/dist/types/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
  1164. package/dist/types/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
  1165. package/dist/types/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
  1166. package/dist/types/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
  1167. package/dist/types/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
  1168. package/dist/types/cloud/build/validations/types.d.ts +0 -8
  1169. package/dist/types/cloud/build/validations/types.d.ts.map +0 -1
  1170. package/dist/types/cloud/cli/build.d.ts +0 -2
  1171. package/dist/types/cloud/cli/build.d.ts.map +0 -1
  1172. package/dist/types/cloud/cli/deploy.d.ts +0 -2
  1173. package/dist/types/cloud/cli/deploy.d.ts.map +0 -1
  1174. package/dist/types/cloud/cli-output-manager.d.ts +0 -37
  1175. package/dist/types/cloud/cli-output-manager.d.ts.map +0 -1
  1176. package/dist/types/cloud/cli.d.ts +0 -2
  1177. package/dist/types/cloud/cli.d.ts.map +0 -1
  1178. package/dist/types/cloud/config-utils.d.ts +0 -10
  1179. package/dist/types/cloud/config-utils.d.ts.map +0 -1
  1180. package/dist/types/cloud/endpoints.d.ts +0 -3
  1181. package/dist/types/cloud/endpoints.d.ts.map +0 -1
  1182. package/dist/types/cloud/index.d.ts +0 -3
  1183. package/dist/types/cloud/index.d.ts.map +0 -1
  1184. package/dist/types/cloud/new-deployment/build.d.ts +0 -4
  1185. package/dist/types/cloud/new-deployment/build.d.ts.map +0 -1
  1186. package/dist/types/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
  1187. package/dist/types/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
  1188. package/dist/types/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
  1189. package/dist/types/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
  1190. package/dist/types/cloud/new-deployment/cloud-api/index.d.ts +0 -36
  1191. package/dist/types/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
  1192. package/dist/types/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
  1193. package/dist/types/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
  1194. package/dist/types/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
  1195. package/dist/types/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
  1196. package/dist/types/cloud/new-deployment/constants.d.ts +0 -5
  1197. package/dist/types/cloud/new-deployment/constants.d.ts.map +0 -1
  1198. package/dist/types/cloud/new-deployment/deploy.d.ts +0 -14
  1199. package/dist/types/cloud/new-deployment/deploy.d.ts.map +0 -1
  1200. package/dist/types/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
  1201. package/dist/types/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
  1202. package/dist/types/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
  1203. package/dist/types/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
  1204. package/dist/types/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
  1205. package/dist/types/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
  1206. package/dist/types/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
  1207. package/dist/types/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
  1208. package/dist/types/cloud/new-deployment/listeners/printer.d.ts +0 -17
  1209. package/dist/types/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
  1210. package/dist/types/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
  1211. package/dist/types/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
  1212. package/dist/types/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
  1213. package/dist/types/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
  1214. package/dist/types/cloud/new-deployment/upload-artifacts.d.ts +0 -4
  1215. package/dist/types/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
  1216. package/dist/types/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
  1217. package/dist/types/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
  1218. package/dist/types/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
  1219. package/dist/types/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
  1220. package/dist/types/cloud/new-deployment/utils/upload.d.ts +0 -2
  1221. package/dist/types/cloud/new-deployment/utils/upload.d.ts.map +0 -1
  1222. package/dist/types/constants.d.ts +0 -3
  1223. package/dist/types/constants.d.ts.map +0 -1
  1224. package/dist/types/create/index.d.ts +0 -11
  1225. package/dist/types/create/index.d.ts.map +0 -1
  1226. package/dist/types/create/interactive.d.ts +0 -9
  1227. package/dist/types/create/interactive.d.ts.map +0 -1
  1228. package/dist/types/create/pull-rules.d.ts +0 -8
  1229. package/dist/types/create/pull-rules.d.ts.map +0 -1
  1230. package/dist/types/create/setup-template.d.ts +0 -3
  1231. package/dist/types/create/setup-template.d.ts.map +0 -1
  1232. package/dist/types/create/templates/generate.d.ts +0 -5
  1233. package/dist/types/create/templates/generate.d.ts.map +0 -1
  1234. package/dist/types/create/templates/index.d.ts +0 -3
  1235. package/dist/types/create/templates/index.d.ts.map +0 -1
  1236. package/dist/types/create/utils.d.ts +0 -3
  1237. package/dist/types/create/utils.d.ts.map +0 -1
  1238. package/dist/types/create-step/getAnswers.d.ts +0 -3
  1239. package/dist/types/create-step/getAnswers.d.ts.map +0 -1
  1240. package/dist/types/create-step/index.d.ts +0 -4
  1241. package/dist/types/create-step/index.d.ts.map +0 -1
  1242. package/dist/types/create-step/teamplateUtils.d.ts +0 -6
  1243. package/dist/types/create-step/teamplateUtils.d.ts.map +0 -1
  1244. package/dist/types/create-step/templates/ui/overrides.d.ts +0 -6
  1245. package/dist/types/create-step/templates/ui/overrides.d.ts.map +0 -1
  1246. package/dist/types/create-step/types.d.ts +0 -22
  1247. package/dist/types/create-step/types.d.ts.map +0 -1
  1248. package/dist/types/create-step/utils.d.ts +0 -3
  1249. package/dist/types/create-step/utils.d.ts.map +0 -1
  1250. package/dist/types/dev-watchers.d.ts +0 -5
  1251. package/dist/types/dev-watchers.d.ts.map +0 -1
  1252. package/dist/types/dev.d.ts +0 -2
  1253. package/dist/types/dev.d.ts.map +0 -1
  1254. package/dist/types/docker/build.d.ts +0 -2
  1255. package/dist/types/docker/build.d.ts.map +0 -1
  1256. package/dist/types/docker/run.d.ts +0 -2
  1257. package/dist/types/docker/run.d.ts.map +0 -1
  1258. package/dist/types/docker/setup.d.ts +0 -2
  1259. package/dist/types/docker/setup.d.ts.map +0 -1
  1260. package/dist/types/docker/utils/build-docker-image.d.ts +0 -2
  1261. package/dist/types/docker/utils/build-docker-image.d.ts.map +0 -1
  1262. package/dist/types/docker/utils/print-intro.d.ts +0 -2
  1263. package/dist/types/docker/utils/print-intro.d.ts.map +0 -1
  1264. package/dist/types/docker/utils/promised-exec.d.ts +0 -2
  1265. package/dist/types/docker/utils/promised-exec.d.ts.map +0 -1
  1266. package/dist/types/generate-locked-data.d.ts +0 -18
  1267. package/dist/types/generate-locked-data.d.ts.map +0 -1
  1268. package/dist/types/generate-types.d.ts +0 -2
  1269. package/dist/types/generate-types.d.ts.map +0 -1
  1270. package/dist/types/index.d.ts +0 -3
  1271. package/dist/types/index.d.ts.map +0 -1
  1272. package/dist/types/install.d.ts +0 -11
  1273. package/dist/types/install.d.ts.map +0 -1
  1274. package/dist/types/load-motia-config.d.ts +0 -4
  1275. package/dist/types/load-motia-config.d.ts.map +0 -1
  1276. package/dist/types/openapi/generate.d.ts +0 -3
  1277. package/dist/types/openapi/generate.d.ts.map +0 -1
  1278. package/dist/types/openapi/process-schema.d.ts +0 -3
  1279. package/dist/types/openapi/process-schema.d.ts.map +0 -1
  1280. package/dist/types/openapi/utils.d.ts +0 -3
  1281. package/dist/types/openapi/utils.d.ts.map +0 -1
  1282. package/dist/types/plugins/collect-plugin-steps.d.ts +0 -6
  1283. package/dist/types/plugins/collect-plugin-steps.d.ts.map +0 -1
  1284. package/dist/types/plugins/create-plugin-context.d.ts +0 -3
  1285. package/dist/types/plugins/create-plugin-context.d.ts.map +0 -1
  1286. package/dist/types/plugins/index.d.ts +0 -2
  1287. package/dist/types/plugins/index.d.ts.map +0 -1
  1288. package/dist/types/plugins/install-plugin-dependencies.d.ts +0 -3
  1289. package/dist/types/plugins/install-plugin-dependencies.d.ts.map +0 -1
  1290. package/dist/types/plugins/load-config.d.ts +0 -3
  1291. package/dist/types/plugins/load-config.d.ts.map +0 -1
  1292. package/dist/types/plugins/plugin-dependencies.d.ts +0 -2
  1293. package/dist/types/plugins/plugin-dependencies.d.ts.map +0 -1
  1294. package/dist/types/plugins/process-plugins.d.ts +0 -3
  1295. package/dist/types/plugins/process-plugins.d.ts.map +0 -1
  1296. package/dist/types/plugins/process-steps.d.ts +0 -3
  1297. package/dist/types/plugins/process-steps.d.ts.map +0 -1
  1298. package/dist/types/redis-memory-manager.d.ts +0 -8
  1299. package/dist/types/redis-memory-manager.d.ts.map +0 -1
  1300. package/dist/types/start.d.ts +0 -2
  1301. package/dist/types/start.d.ts.map +0 -1
  1302. package/dist/types/utils/activate-python-env.d.ts +0 -9
  1303. package/dist/types/utils/activate-python-env.d.ts.map +0 -1
  1304. package/dist/types/utils/amplitude/enrichment-plugin.d.ts +0 -8
  1305. package/dist/types/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
  1306. package/dist/types/utils/analytics.d.ts +0 -7
  1307. package/dist/types/utils/analytics.d.ts.map +0 -1
  1308. package/dist/types/utils/build-tools-error.d.ts +0 -8
  1309. package/dist/types/utils/build-tools-error.d.ts.map +0 -1
  1310. package/dist/types/utils/ensure-uv.d.ts +0 -2
  1311. package/dist/types/utils/ensure-uv.d.ts.map +0 -1
  1312. package/dist/types/utils/errors/build.error.d.ts +0 -11
  1313. package/dist/types/utils/errors/build.error.d.ts.map +0 -1
  1314. package/dist/types/utils/errors/compilation.error.d.ts +0 -5
  1315. package/dist/types/utils/errors/compilation.error.d.ts.map +0 -1
  1316. package/dist/types/utils/errors/locked-data-generation.error.d.ts +0 -5
  1317. package/dist/types/utils/errors/locked-data-generation.error.d.ts.map +0 -1
  1318. package/dist/types/utils/execute-command.d.ts +0 -6
  1319. package/dist/types/utils/execute-command.d.ts.map +0 -1
  1320. package/dist/types/utils/get-package-manager.d.ts +0 -2
  1321. package/dist/types/utils/get-package-manager.d.ts.map +0 -1
  1322. package/dist/types/utils/install-lambda-python-packages.d.ts +0 -7
  1323. package/dist/types/utils/install-lambda-python-packages.d.ts.map +0 -1
  1324. package/dist/types/utils/internal-logger.d.ts +0 -6
  1325. package/dist/types/utils/internal-logger.d.ts.map +0 -1
  1326. package/dist/types/utils/python-version-utils.d.ts +0 -4
  1327. package/dist/types/utils/python-version-utils.d.ts.map +0 -1
  1328. package/dist/types/version.d.ts +0 -2
  1329. package/dist/types/version.d.ts.map +0 -1
  1330. package/dist/types/watcher.d.ts +0 -42
  1331. package/dist/types/watcher.d.ts.map +0 -1
  1332. package/dist/types/workbench.d.ts +0 -2
  1333. package/dist/types/workbench.d.ts.map +0 -1
  1334. /package/dist/{cjs/cloud → cloud}/build/builders/node/router-template.ts +0 -0
  1335. /package/dist/{cjs/cloud → cloud}/build/builders/python/router_template.py +0 -0
  1336. /package/dist/{cjs/create → create}/templates/hello/README.md.txt +0 -0
  1337. /package/dist/{cjs/create → create}/templates/hello/motia-workbench.json +0 -0
  1338. /package/dist/{cjs/create → create}/templates/hello/steps/hello/hello-api.step.ts.txt +0 -0
  1339. /package/dist/{cjs/create → create}/templates/hello/steps/hello/process-greeting.step.ts.txt +0 -0
  1340. /package/dist/{cjs/create → create}/templates/hello_js/README.md.txt +0 -0
  1341. /package/dist/{cjs/create → create}/templates/hello_js/motia-workbench.json +0 -0
  1342. /package/dist/{cjs/create → create}/templates/hello_js/steps/hello/hello-api.step.js.txt +0 -0
  1343. /package/dist/{cjs/create → create}/templates/hello_js/steps/hello/process-greeting.step.js.txt +0 -0
  1344. /package/dist/{cjs/create → create}/templates/hello_python/README.md.txt +0 -0
  1345. /package/dist/{cjs/create → create}/templates/hello_python/motia-workbench.json +0 -0
  1346. /package/dist/{cjs/create → create}/templates/hello_python/requirements.txt +0 -0
  1347. /package/dist/{cjs/create → create}/templates/hello_python/steps/hello/hello_api_step.py.txt +0 -0
  1348. /package/dist/{cjs/create → create}/templates/hello_python/steps/hello/process_greeting_step.py.txt +0 -0
  1349. /package/dist/{cjs/create → create}/templates/index.ts +0 -0
  1350. /package/dist/{cjs/create → create}/templates/nodejs/README.md.txt +0 -0
  1351. /package/dist/{cjs/create → create}/templates/nodejs/motia-workbench.json +0 -0
  1352. /package/dist/{cjs/create → create}/templates/nodejs/src/services/pet-store.ts.txt +0 -0
  1353. /package/dist/{cjs/create → create}/templates/nodejs/src/services/types.ts.txt +0 -0
  1354. /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/api.step.ts.txt +0 -0
  1355. /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/process-food-order.step.ts.txt +0 -0
  1356. /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/state-audit-cron.step.ts.txt +0 -0
  1357. /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/api.step.ts-features.json.txt +0 -0
  1358. /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/process-food-order.step.ts-features.json.txt +0 -0
  1359. /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/state-audit-cron.step.ts-features.json.txt +0 -0
  1360. /package/dist/{cjs/create → create}/templates/nodejs/tutorial/tutorial.tsx.txt +0 -0
  1361. /package/dist/{cjs/create → create}/templates/plugin/.gitignore.txt +0 -0
  1362. /package/dist/{cjs/create → create}/templates/plugin/README.md.txt +0 -0
  1363. /package/dist/{cjs/create → create}/templates/plugin/package.json.txt +0 -0
  1364. /package/dist/{cjs/create → create}/templates/plugin/postcss.config.js.txt +0 -0
  1365. /package/dist/{cjs/create → create}/templates/plugin/src/components/example-page.tsx.txt +0 -0
  1366. /package/dist/{cjs/create → create}/templates/plugin/src/index.ts.txt +0 -0
  1367. /package/dist/{cjs/create → create}/templates/plugin/src/plugin.ts.txt +0 -0
  1368. /package/dist/{cjs/create → create}/templates/plugin/src/styles.css.txt +0 -0
  1369. /package/dist/{cjs/create → create}/templates/plugin/tsconfig.json.txt +0 -0
  1370. /package/dist/{cjs/create → create}/templates/plugin/vite.config.ts.txt +0 -0
  1371. /package/dist/{cjs/create → create}/templates/python/README.md.txt +0 -0
  1372. /package/dist/{cjs/create → create}/templates/python/motia-workbench.json +0 -0
  1373. /package/dist/{cjs/create → create}/templates/python/requirements.txt +0 -0
  1374. /package/dist/{cjs/create → create}/templates/python/src/__init__.py.txt +0 -0
  1375. /package/dist/{cjs/create → create}/templates/python/src/services/__init__.py.txt +0 -0
  1376. /package/dist/{cjs/create → create}/templates/python/src/services/pet_store.py.txt +0 -0
  1377. /package/dist/{cjs/create → create}/templates/python/src/services/types.py.txt +0 -0
  1378. /package/dist/{cjs/create → create}/templates/python/steps/petstore/api_step.py.txt +0 -0
  1379. /package/dist/{cjs/create → create}/templates/python/steps/petstore/notification_step.py.txt +0 -0
  1380. /package/dist/{cjs/create → create}/templates/python/steps/petstore/process_food_order_step.py.txt +0 -0
  1381. /package/dist/{cjs/create → create}/templates/python/steps/petstore/state_audit_cron_step.py.txt +0 -0
  1382. /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/api_step.py-features.json.txt +0 -0
  1383. /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/process_food_order_step.py-features.json.txt +0 -0
  1384. /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/state_audit_cron_step.py-features.json.txt +0 -0
  1385. /package/dist/{cjs/create → create}/templates/python/tutorial/tutorial.tsx.txt +0 -0
  1386. /package/dist/{cjs/create-step → create-step}/templates/api/template.javascript.txt +0 -0
  1387. /package/dist/{cjs/create-step → create-step}/templates/api/template.python.txt +0 -0
  1388. /package/dist/{cjs/create-step → create-step}/templates/api/template.ruby.txt +0 -0
  1389. /package/dist/{cjs/create-step → create-step}/templates/api/template.typescript.txt +0 -0
  1390. /package/dist/{cjs/create-step → create-step}/templates/cron/template.javascript.txt +0 -0
  1391. /package/dist/{cjs/create-step → create-step}/templates/cron/template.python.txt +0 -0
  1392. /package/dist/{cjs/create-step → create-step}/templates/cron/template.ruby.txt +0 -0
  1393. /package/dist/{cjs/create-step → create-step}/templates/cron/template.type.txt +0 -0
  1394. /package/dist/{cjs/create-step → create-step}/templates/cron/template.typescript.txt +0 -0
  1395. /package/dist/{cjs/create-step → create-step}/templates/event/template.javascript.txt +0 -0
  1396. /package/dist/{cjs/create-step → create-step}/templates/event/template.python.txt +0 -0
  1397. /package/dist/{cjs/create-step → create-step}/templates/event/template.ruby.txt +0 -0
  1398. /package/dist/{cjs/create-step → create-step}/templates/event/template.typescript.txt +0 -0
  1399. /package/dist/{cjs/create-step → create-step}/templates/noop/template.javascript.txt +0 -0
  1400. /package/dist/{cjs/create-step → create-step}/templates/noop/template.python.txt +0 -0
  1401. /package/dist/{cjs/create-step → create-step}/templates/noop/template.ruby.txt +0 -0
  1402. /package/dist/{cjs/create-step → create-step}/templates/noop/template.typescript.txt +0 -0
  1403. /package/dist/{cjs/create-step → create-step}/templates/ui/api.step.txt +0 -0
  1404. /package/dist/{cjs/create-step → create-step}/templates/ui/cron.step.txt +0 -0
  1405. /package/dist/{cjs/create-step → create-step}/templates/ui/event.step.txt +0 -0
  1406. /package/dist/{cjs/create-step → create-step}/templates/ui/noop.step.txt +0 -0
  1407. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.claude/agents/motia-developer.md +0 -0
  1408. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/architecture/architecture.mdc +0 -0
  1409. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/architecture/error-handling.mdc +0 -0
  1410. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/index.mdc +0 -0
  1411. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/api-steps.mdc +0 -0
  1412. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/cron-steps.mdc +0 -0
  1413. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/event-steps.mdc +0 -0
  1414. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/middlewares.mdc +0 -0
  1415. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/motia-config.mdc +0 -0
  1416. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/realtime-streaming.mdc +0 -0
  1417. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/state-management.mdc +0 -0
  1418. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/ui-steps.mdc +0 -0
  1419. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/virtual-steps.mdc +0 -0
  1420. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/AGENTS.md +0 -0
  1421. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/CLAUDE.md +0 -0
  1422. /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/opencode.json +0 -0
  1423. /package/dist/{cjs/docker → docker}/templates/.dockerignore.sample +0 -0
  1424. /package/dist/{cjs/docker → docker}/templates/MotiaDockerSample +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-locked-data.mjs","names":["invalidSteps: Step[]"],"sources":["../src/generate-locked-data.ts"],"sourcesContent":["import {\n getStepConfig,\n getStreamConfig,\n type JsonSchema,\n LockedData,\n MemoryStreamAdapterManager,\n NoPrinter,\n Printer,\n type Step,\n type StreamAdapterManager,\n type StreamAuthConfig,\n} from '@motiadev/core'\nimport { randomUUID } from 'crypto'\nimport { existsSync } from 'fs'\nimport { globSync } from 'glob'\nimport path from 'path'\nimport pc from 'picocolors'\nimport type { RedisClientType } from 'redis'\nimport { activatePythonVenv } from './utils/activate-python-env'\nimport { CompilationError } from './utils/errors/compilation.error'\nimport { LockedDataGenerationError } from './utils/errors/locked-data-generation.error'\n\nconst version = `${randomUUID()}:${Math.floor(Date.now() / 1000)}`\n\nconst getStepFilesFromDir = (dir: string): string[] => {\n if (!existsSync(dir)) {\n return []\n }\n return [\n ...globSync('**/*.step.{ts,js,rb}', { absolute: true, cwd: dir }),\n ...globSync('**/*_step.{ts,js,py,rb}', { absolute: true, cwd: dir }),\n ]\n}\n\nexport const getStepFiles = (projectDir: string): string[] => {\n const stepsDir = path.join(projectDir, 'steps')\n const srcDir = path.join(projectDir, 'src')\n return [...getStepFilesFromDir(stepsDir), ...getStepFilesFromDir(srcDir)]\n}\n\nconst getStreamFilesFromDir = (dir: string): string[] => {\n if (!existsSync(dir)) {\n return []\n }\n return [\n ...globSync('**/*.stream.{ts,js,rb}', { absolute: true, cwd: dir }),\n ...globSync('**/*_stream.{ts,js,py,rb}', { absolute: true, cwd: dir }),\n ]\n}\n\nexport const getStreamFiles = (projectDir: string): string[] => {\n const stepsDir = path.join(projectDir, 'steps')\n const srcDir = path.join(projectDir, 'src')\n return [...getStreamFilesFromDir(stepsDir), ...getStreamFilesFromDir(srcDir)]\n}\n\n// Helper function to recursively collect flow data\nexport const collectFlows = async (projectDir: string, lockedData: LockedData): Promise<Step[]> => {\n const invalidSteps: Step[] = []\n const stepFiles = getStepFiles(projectDir)\n const streamFiles = getStreamFiles(projectDir)\n const stepsDir = path.join(projectDir, 'steps')\n const srcDir = path.join(projectDir, 'src')\n const deprecatedSteps = [\n ...(existsSync(stepsDir) ? globSync('**/*.step.py', { absolute: true, cwd: stepsDir }) : []),\n ...(existsSync(srcDir) ? globSync('**/*.step.py', { absolute: true, cwd: srcDir }) : []),\n ]\n\n const hasPythonFiles =\n stepFiles.some((file) => file.endsWith('.py')) || streamFiles.some((file) => file.endsWith('.py'))\n\n if (hasPythonFiles) {\n activatePythonVenv({ baseDir: projectDir })\n }\n\n for (const filePath of stepFiles) {\n try {\n const config = await getStepConfig(filePath, projectDir)\n\n if (!config) {\n console.warn(`No config found in step ${filePath}, step skipped`)\n continue\n }\n\n const result = lockedData.createStep({ filePath, version, config }, { disableTypeCreation: true })\n\n if (!result) {\n invalidSteps.push({ filePath, version, config })\n }\n } catch (err) {\n const errorMessage = err instanceof Error ? err.message : String(err)\n if (errorMessage.includes('Executable ruby not found') || errorMessage.includes('Executable python not found')) {\n console.warn(pc.yellow(`! [WARNING] Skipping step ${filePath}: ${errorMessage}`))\n continue\n }\n throw new CompilationError(`Error collecting flow ${filePath}`, path.relative(projectDir, filePath), err as Error)\n }\n }\n\n for (const filePath of streamFiles) {\n const config = await getStreamConfig(filePath)\n\n if (!config) {\n console.warn(`No config found in stream ${filePath}, stream skipped`)\n continue\n }\n\n lockedData.createStream({ filePath, config }, { disableTypeCreation: true })\n }\n\n if (deprecatedSteps.length > 0) {\n const warning = pc.yellow('! [WARNING]')\n console.warn(\n pc.yellow(\n [\n '',\n '========================================',\n warning,\n '',\n `Python steps with ${pc.gray('.step.py')} extensions are no longer supported.`,\n `Please rename them to ${pc.gray('_step.py')}.`,\n '',\n pc.bold('Steps:'),\n ...deprecatedSteps.map((step) =>\n pc.reset(\n `- ${pc.cyan(pc.bold(step.replace(projectDir, '')))} rename to ${pc.gray(`${step.replace(projectDir, '').replace('.step.py', '_step.py')}`)}`,\n ),\n ),\n\n '',\n 'Make sure the step names are importable from Python:',\n `- Don't use numbers, dots, dashes, commas, spaces, colons, or special characters`,\n '========================================',\n '',\n ].join('\\n'),\n ),\n )\n }\n\n return invalidSteps\n}\n\ntype StreamAuthOptions = {\n authenticate: StreamAuthConfig['authenticate']\n contextSchema?: JsonSchema\n}\n\nexport const generateLockedData = async (config: {\n projectDir: string\n streamAdapter?: StreamAdapterManager\n redisClient?: RedisClientType\n printerType?: 'disabled' | 'default'\n streamAuth?: StreamAuthOptions\n}): Promise<LockedData> => {\n try {\n const {\n projectDir,\n streamAdapter = new MemoryStreamAdapterManager(),\n printerType = 'default',\n redisClient,\n streamAuth,\n } = config\n const printer = printerType === 'disabled' ? new NoPrinter() : new Printer(projectDir)\n /*\n * NOTE: right now for performance and simplicity let's enforce a folder,\n * but we might want to remove this and scan the entire current directory\n */\n const lockedData = new LockedData(projectDir, streamAdapter, printer, redisClient)\n lockedData.setStreamAuthConfig(streamAuth)\n\n await collectFlows(projectDir, lockedData)\n lockedData.saveTypes()\n\n return lockedData\n } catch (error) {\n console.error(error)\n\n throw new LockedDataGenerationError(\n 'Failed to parse the project, generating locked data step failed',\n error as Error,\n )\n }\n}\n"],"mappings":";;;;;;;;;;;AAsBA,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,KAAK,MAAM,KAAK,KAAK,GAAG,IAAK;AAEhE,MAAM,uBAAuB,QAA0B;AACrD,KAAI,CAAC,WAAW,IAAI,CAClB,QAAO,EAAE;AAEX,QAAO,CACL,GAAG,SAAS,wBAAwB;EAAE,UAAU;EAAM,KAAK;EAAK,CAAC,EACjE,GAAG,SAAS,2BAA2B;EAAE,UAAU;EAAM,KAAK;EAAK,CAAC,CACrE;;AAGH,MAAa,gBAAgB,eAAiC;CAC5D,MAAM,WAAW,KAAK,KAAK,YAAY,QAAQ;CAC/C,MAAM,SAAS,KAAK,KAAK,YAAY,MAAM;AAC3C,QAAO,CAAC,GAAG,oBAAoB,SAAS,EAAE,GAAG,oBAAoB,OAAO,CAAC;;AAG3E,MAAM,yBAAyB,QAA0B;AACvD,KAAI,CAAC,WAAW,IAAI,CAClB,QAAO,EAAE;AAEX,QAAO,CACL,GAAG,SAAS,0BAA0B;EAAE,UAAU;EAAM,KAAK;EAAK,CAAC,EACnE,GAAG,SAAS,6BAA6B;EAAE,UAAU;EAAM,KAAK;EAAK,CAAC,CACvE;;AAGH,MAAa,kBAAkB,eAAiC;CAC9D,MAAM,WAAW,KAAK,KAAK,YAAY,QAAQ;CAC/C,MAAM,SAAS,KAAK,KAAK,YAAY,MAAM;AAC3C,QAAO,CAAC,GAAG,sBAAsB,SAAS,EAAE,GAAG,sBAAsB,OAAO,CAAC;;AAI/E,MAAa,eAAe,OAAO,YAAoB,eAA4C;CACjG,MAAMA,eAAuB,EAAE;CAC/B,MAAM,YAAY,aAAa,WAAW;CAC1C,MAAM,cAAc,eAAe,WAAW;CAC9C,MAAM,WAAW,KAAK,KAAK,YAAY,QAAQ;CAC/C,MAAM,SAAS,KAAK,KAAK,YAAY,MAAM;CAC3C,MAAM,kBAAkB,CACtB,GAAI,WAAW,SAAS,GAAG,SAAS,gBAAgB;EAAE,UAAU;EAAM,KAAK;EAAU,CAAC,GAAG,EAAE,EAC3F,GAAI,WAAW,OAAO,GAAG,SAAS,gBAAgB;EAAE,UAAU;EAAM,KAAK;EAAQ,CAAC,GAAG,EAAE,CACxF;AAKD,KAFE,UAAU,MAAM,SAAS,KAAK,SAAS,MAAM,CAAC,IAAI,YAAY,MAAM,SAAS,KAAK,SAAS,MAAM,CAAC,CAGlG,oBAAmB,EAAE,SAAS,YAAY,CAAC;AAG7C,MAAK,MAAM,YAAY,UACrB,KAAI;EACF,MAAM,SAAS,MAAM,cAAc,UAAU,WAAW;AAExD,MAAI,CAAC,QAAQ;AACX,WAAQ,KAAK,2BAA2B,SAAS,gBAAgB;AACjE;;AAKF,MAAI,CAFW,WAAW,WAAW;GAAE;GAAU;GAAS;GAAQ,EAAE,EAAE,qBAAqB,MAAM,CAAC,CAGhG,cAAa,KAAK;GAAE;GAAU;GAAS;GAAQ,CAAC;UAE3C,KAAK;EACZ,MAAM,eAAe,eAAe,QAAQ,IAAI,UAAU,OAAO,IAAI;AACrE,MAAI,aAAa,SAAS,4BAA4B,IAAI,aAAa,SAAS,8BAA8B,EAAE;AAC9G,WAAQ,KAAK,GAAG,OAAO,6BAA6B,SAAS,IAAI,eAAe,CAAC;AACjF;;AAEF,QAAM,IAAI,iBAAiB,yBAAyB,YAAY,KAAK,SAAS,YAAY,SAAS,EAAE,IAAa;;AAItH,MAAK,MAAM,YAAY,aAAa;EAClC,MAAM,SAAS,MAAM,gBAAgB,SAAS;AAE9C,MAAI,CAAC,QAAQ;AACX,WAAQ,KAAK,6BAA6B,SAAS,kBAAkB;AACrE;;AAGF,aAAW,aAAa;GAAE;GAAU;GAAQ,EAAE,EAAE,qBAAqB,MAAM,CAAC;;AAG9E,KAAI,gBAAgB,SAAS,GAAG;EAC9B,MAAM,UAAU,GAAG,OAAO,cAAc;AACxC,UAAQ,KACN,GAAG,OACD;GACE;GACA;GACA;GACA;GACA,qBAAqB,GAAG,KAAK,WAAW,CAAC;GACzC,yBAAyB,GAAG,KAAK,WAAW,CAAC;GAC7C;GACA,GAAG,KAAK,SAAS;GACjB,GAAG,gBAAgB,KAAK,SACtB,GAAG,MACD,KAAK,GAAG,KAAK,GAAG,KAAK,KAAK,QAAQ,YAAY,GAAG,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,GAAG,KAAK,QAAQ,YAAY,GAAG,CAAC,QAAQ,YAAY,WAAW,GAAG,GAC5I,CACF;GAED;GACA;GACA;GACA;GACA;GACD,CAAC,KAAK,KAAK,CACb,CACF;;AAGH,QAAO;;AAQT,MAAa,qBAAqB,OAAO,WAMd;AACzB,KAAI;EACF,MAAM,EACJ,YACA,gBAAgB,IAAI,4BAA4B,EAChD,cAAc,WACd,aACA,eACE;EAMJ,MAAM,aAAa,IAAI,WAAW,YAAY,eAL9B,gBAAgB,aAAa,IAAI,WAAW,GAAG,IAAI,QAAQ,WAAW,EAKhB,YAAY;AAClF,aAAW,oBAAoB,WAAW;AAE1C,QAAM,aAAa,YAAY,WAAW;AAC1C,aAAW,WAAW;AAEtB,SAAO;UACA,OAAO;AACd,UAAQ,MAAM,MAAM;AAEpB,QAAM,IAAI,0BACR,mEACA,MACD"}
@@ -0,0 +1,33 @@
1
+ import { getStepFiles, getStreamFiles } from "./generate-locked-data.mjs";
2
+ import { LockedData, MemoryStreamAdapterManager, Printer, getStepConfig, getStreamConfig } from "@motiadev/core";
3
+ import { randomUUID } from "crypto";
4
+ import pc from "picocolors";
5
+
6
+ //#region src/generate-types.ts
7
+ const version = `${randomUUID()}:${Math.floor(Date.now() / 1e3)}`;
8
+ const generateTypes = async (projectDir) => {
9
+ const files = getStepFiles(projectDir);
10
+ const streamsFiles = getStreamFiles(projectDir);
11
+ const lockedData = new LockedData(projectDir, new MemoryStreamAdapterManager(), new Printer(projectDir));
12
+ for (const filePath of files) {
13
+ const config = await getStepConfig(filePath, projectDir);
14
+ if (config) lockedData.createStep({
15
+ filePath,
16
+ version,
17
+ config
18
+ }, { disableTypeCreation: true });
19
+ }
20
+ for (const filePath of streamsFiles) {
21
+ const config = await getStreamConfig(filePath, projectDir);
22
+ if (config) lockedData.createStream({
23
+ filePath,
24
+ config
25
+ }, { disableTypeCreation: true });
26
+ }
27
+ lockedData.saveTypes();
28
+ console.log(`${pc.green("✓ [SUCCESS]")} Types generated`);
29
+ };
30
+
31
+ //#endregion
32
+ export { generateTypes };
33
+ //# sourceMappingURL=generate-types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-types.mjs","names":[],"sources":["../src/generate-types.ts"],"sourcesContent":["import { getStepConfig, getStreamConfig, LockedData, MemoryStreamAdapterManager, Printer } from '@motiadev/core'\nimport { randomUUID } from 'crypto'\nimport pc from 'picocolors'\nimport { getStepFiles, getStreamFiles } from './generate-locked-data'\n\nconst version = `${randomUUID()}:${Math.floor(Date.now() / 1000)}`\n\nexport const generateTypes = async (projectDir: string) => {\n const files = getStepFiles(projectDir)\n const streamsFiles = getStreamFiles(projectDir)\n\n const lockedData = new LockedData(projectDir, new MemoryStreamAdapterManager(), new Printer(projectDir))\n\n for (const filePath of files) {\n const config = await getStepConfig(filePath, projectDir)\n\n if (config) {\n lockedData.createStep({ filePath, version, config }, { disableTypeCreation: true })\n }\n }\n\n for (const filePath of streamsFiles) {\n const config = await getStreamConfig(filePath, projectDir)\n\n if (config) {\n lockedData.createStream({ filePath, config }, { disableTypeCreation: true })\n }\n }\n\n lockedData.saveTypes()\n\n console.log(`${pc.green('✓ [SUCCESS]')} Types generated`)\n}\n"],"mappings":";;;;;;AAKA,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,KAAK,MAAM,KAAK,KAAK,GAAG,IAAK;AAEhE,MAAa,gBAAgB,OAAO,eAAuB;CACzD,MAAM,QAAQ,aAAa,WAAW;CACtC,MAAM,eAAe,eAAe,WAAW;CAE/C,MAAM,aAAa,IAAI,WAAW,YAAY,IAAI,4BAA4B,EAAE,IAAI,QAAQ,WAAW,CAAC;AAExG,MAAK,MAAM,YAAY,OAAO;EAC5B,MAAM,SAAS,MAAM,cAAc,UAAU,WAAW;AAExD,MAAI,OACF,YAAW,WAAW;GAAE;GAAU;GAAS;GAAQ,EAAE,EAAE,qBAAqB,MAAM,CAAC;;AAIvF,MAAK,MAAM,YAAY,cAAc;EACnC,MAAM,SAAS,MAAM,gBAAgB,UAAU,WAAW;AAE1D,MAAI,OACF,YAAW,aAAa;GAAE;GAAU;GAAQ,EAAE,EAAE,qBAAqB,MAAM,CAAC;;AAIhF,YAAW,WAAW;AAEtB,SAAQ,IAAI,GAAG,GAAG,MAAM,cAAc,CAAC,kBAAkB"}
@@ -0,0 +1,3 @@
1
+ import { collectFlows, generateLockedData } from "./generate-locked-data.mjs";
2
+ export * from "@motiadev/core";
3
+ export { collectFlows, generateLockedData };
package/dist/index.mjs ADDED
@@ -0,0 +1,5 @@
1
+ import { collectFlows, generateLockedData } from "./generate-locked-data.mjs";
2
+
3
+ export * from "@motiadev/core"
4
+
5
+ export { collectFlows, generateLockedData };
@@ -0,0 +1,64 @@
1
+ import { executeCommand } from "./utils/execute-command.mjs";
2
+ import { getPythonCommand } from "./utils/python-version-utils.mjs";
3
+ import { activatePythonVenv } from "./utils/activate-python-env.mjs";
4
+ import { getStepFiles, getStreamFiles } from "./generate-locked-data.mjs";
5
+ import { ensureUvInstalled } from "./utils/ensure-uv.mjs";
6
+ import { installLambdaPythonPackages } from "./utils/install-lambda-python-packages.mjs";
7
+ import fs from "fs";
8
+ import path from "path";
9
+
10
+ //#region src/install.ts
11
+ const pythonInstall = async ({ baseDir, isVerbose = false, pythonVersion = "3.13" }) => {
12
+ const venvPath = path.join(baseDir, "python_modules");
13
+ console.log("📦 Installing Python dependencies...", venvPath);
14
+ const requirementsList = [
15
+ path.join(baseDir, "node_modules", "motia", "dist", "requirements-core.txt"),
16
+ path.join(baseDir, "node_modules", "motia", "dist", "requirements-snap.txt"),
17
+ path.join(baseDir, "requirements.txt")
18
+ ];
19
+ try {
20
+ const pythonCmd = await getPythonCommand(pythonVersion, baseDir);
21
+ if (isVerbose) console.log(`🐍 Using Python command: ${pythonCmd}`);
22
+ if (!fs.existsSync(venvPath)) {
23
+ console.log("📦 Creating Python virtual environment...");
24
+ await executeCommand(`${pythonCmd} -m venv python_modules`, baseDir);
25
+ }
26
+ activatePythonVenv({
27
+ baseDir,
28
+ isVerbose,
29
+ pythonVersion
30
+ });
31
+ console.log("🔧 Checking UV installation...");
32
+ await ensureUvInstalled();
33
+ console.log("✅ UV is available");
34
+ installLambdaPythonPackages({
35
+ isVerbose,
36
+ requirementsList
37
+ });
38
+ console.log("📥 Installing Python dependencies...");
39
+ for (const requirement of requirementsList) if (fs.existsSync(requirement)) {
40
+ if (isVerbose) console.log("📄 Using requirements from:", requirement);
41
+ await executeCommand(`pip install -r "${requirement}" --only-binary=:all:`, baseDir);
42
+ }
43
+ } catch (error) {
44
+ const errorMessage = error instanceof Error ? error.message : String(error);
45
+ console.error("❌ Installation failed:", errorMessage);
46
+ process.exit(1);
47
+ }
48
+ };
49
+ const install = async ({ isVerbose = false, pythonVersion = "3.13" }) => {
50
+ const baseDir = process.cwd();
51
+ const steps = getStepFiles(baseDir);
52
+ const streams = getStreamFiles(baseDir);
53
+ if (steps.some((file) => file.endsWith(".py")) || streams.some((file) => file.endsWith(".py"))) await pythonInstall({
54
+ baseDir,
55
+ isVerbose,
56
+ pythonVersion
57
+ });
58
+ console.info("✅ Installation completed successfully!");
59
+ process.exit(0);
60
+ };
61
+
62
+ //#endregion
63
+ export { install, pythonInstall };
64
+ //# sourceMappingURL=install.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.mjs","names":[],"sources":["../src/install.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport { getStepFiles, getStreamFiles } from './generate-locked-data'\nimport { activatePythonVenv } from './utils/activate-python-env'\nimport { ensureUvInstalled } from './utils/ensure-uv'\nimport { executeCommand } from './utils/execute-command'\nimport { installLambdaPythonPackages } from './utils/install-lambda-python-packages'\nimport { getPythonCommand } from './utils/python-version-utils'\n\ninterface InstallConfig {\n isVerbose?: boolean\n pythonVersion?: string\n}\n\ntype PythonInstallConfig = InstallConfig & { baseDir: string }\n\nexport const pythonInstall = async ({\n baseDir,\n isVerbose = false,\n pythonVersion = '3.13',\n}: PythonInstallConfig): Promise<void> => {\n const venvPath = path.join(baseDir, 'python_modules')\n console.log('📦 Installing Python dependencies...', venvPath)\n\n const coreRequirementsPath = path.join(baseDir, 'node_modules', 'motia', 'dist', 'requirements-core.txt')\n const snapRequirementsPath = path.join(baseDir, 'node_modules', 'motia', 'dist', 'requirements-snap.txt')\n const localRequirements = path.join(baseDir, 'requirements.txt')\n\n const requirementsList = [coreRequirementsPath, snapRequirementsPath, localRequirements]\n\n try {\n // Get the appropriate Python command\n const pythonCmd = await getPythonCommand(pythonVersion, baseDir)\n if (isVerbose) {\n console.log(`🐍 Using Python command: ${pythonCmd}`)\n }\n\n // Check if virtual environment exists\n if (!fs.existsSync(venvPath)) {\n console.log('📦 Creating Python virtual environment...')\n await executeCommand(`${pythonCmd} -m venv python_modules`, baseDir)\n }\n\n activatePythonVenv({ baseDir, isVerbose, pythonVersion })\n\n // Ensure UV is installed\n console.log('🔧 Checking UV installation...')\n await ensureUvInstalled()\n console.log('✅ UV is available')\n\n installLambdaPythonPackages({ isVerbose, requirementsList })\n\n // Install requirements\n console.log('📥 Installing Python dependencies...')\n\n // Core requirements\n\n for (const requirement of requirementsList) {\n if (fs.existsSync(requirement)) {\n if (isVerbose) {\n console.log('📄 Using requirements from:', requirement)\n }\n await executeCommand(`pip install -r \"${requirement}\" --only-binary=:all:`, baseDir)\n }\n }\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error)\n console.error('❌ Installation failed:', errorMessage)\n process.exit(1)\n }\n}\n\nexport const install = async ({ isVerbose = false, pythonVersion = '3.13' }: InstallConfig): Promise<void> => {\n const baseDir = process.cwd()\n\n const steps = getStepFiles(baseDir)\n const streams = getStreamFiles(baseDir)\n if (steps.some((file) => file.endsWith('.py')) || streams.some((file) => file.endsWith('.py'))) {\n await pythonInstall({ baseDir, isVerbose, pythonVersion })\n }\n\n console.info('✅ Installation completed successfully!')\n\n process.exit(0)\n}\n"],"mappings":";;;;;;;;;;AAgBA,MAAa,gBAAgB,OAAO,EAClC,SACA,YAAY,OACZ,gBAAgB,aACwB;CACxC,MAAM,WAAW,KAAK,KAAK,SAAS,iBAAiB;AACrD,SAAQ,IAAI,wCAAwC,SAAS;CAM7D,MAAM,mBAAmB;EAJI,KAAK,KAAK,SAAS,gBAAgB,SAAS,QAAQ,wBAAwB;EAC5E,KAAK,KAAK,SAAS,gBAAgB,SAAS,QAAQ,wBAAwB;EAC/E,KAAK,KAAK,SAAS,mBAAmB;EAEwB;AAExF,KAAI;EAEF,MAAM,YAAY,MAAM,iBAAiB,eAAe,QAAQ;AAChE,MAAI,UACF,SAAQ,IAAI,4BAA4B,YAAY;AAItD,MAAI,CAAC,GAAG,WAAW,SAAS,EAAE;AAC5B,WAAQ,IAAI,4CAA4C;AACxD,SAAM,eAAe,GAAG,UAAU,0BAA0B,QAAQ;;AAGtE,qBAAmB;GAAE;GAAS;GAAW;GAAe,CAAC;AAGzD,UAAQ,IAAI,iCAAiC;AAC7C,QAAM,mBAAmB;AACzB,UAAQ,IAAI,oBAAoB;AAEhC,8BAA4B;GAAE;GAAW;GAAkB,CAAC;AAG5D,UAAQ,IAAI,uCAAuC;AAInD,OAAK,MAAM,eAAe,iBACxB,KAAI,GAAG,WAAW,YAAY,EAAE;AAC9B,OAAI,UACF,SAAQ,IAAI,+BAA+B,YAAY;AAEzD,SAAM,eAAe,mBAAmB,YAAY,wBAAwB,QAAQ;;UAGjF,OAAO;EACd,MAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AAC3E,UAAQ,MAAM,0BAA0B,aAAa;AACrD,UAAQ,KAAK,EAAE;;;AAInB,MAAa,UAAU,OAAO,EAAE,YAAY,OAAO,gBAAgB,aAA2C;CAC5G,MAAM,UAAU,QAAQ,KAAK;CAE7B,MAAM,QAAQ,aAAa,QAAQ;CACnC,MAAM,UAAU,eAAe,QAAQ;AACvC,KAAI,MAAM,MAAM,SAAS,KAAK,SAAS,MAAM,CAAC,IAAI,QAAQ,MAAM,SAAS,KAAK,SAAS,MAAM,CAAC,CAC5F,OAAM,cAAc;EAAE;EAAS;EAAW;EAAe,CAAC;AAG5D,SAAQ,KAAK,yCAAyC;AAEtD,SAAQ,KAAK,EAAE"}
@@ -0,0 +1,22 @@
1
+ import { globSync } from "glob";
2
+ import { createJiti } from "jiti";
3
+
4
+ //#region src/load-motia-config.ts
5
+ const jiti = createJiti(import.meta.url);
6
+ const loadMotiaConfig = async (baseDir) => {
7
+ const configFiles = globSync("motia.config.{ts,js}", {
8
+ absolute: true,
9
+ cwd: baseDir
10
+ });
11
+ if (configFiles.length === 0) return {};
12
+ try {
13
+ return await jiti.import(configFiles[0], { default: true });
14
+ } catch (error) {
15
+ console.warn("Failed to load motia.config.ts:", error);
16
+ return {};
17
+ }
18
+ };
19
+
20
+ //#endregion
21
+ export { loadMotiaConfig };
22
+ //# sourceMappingURL=load-motia-config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-motia-config.mjs","names":[],"sources":["../src/load-motia-config.ts"],"sourcesContent":["import type { Config } from '@motiadev/core'\nimport { globSync } from 'glob'\nimport { createJiti } from 'jiti'\n\nexport type LoadedMotiaConfig = Config\n\nconst jiti = createJiti(import.meta.url)\n\nexport const loadMotiaConfig = async (baseDir: string): Promise<LoadedMotiaConfig> => {\n const configFiles = globSync('motia.config.{ts,js}', { absolute: true, cwd: baseDir })\n\n if (configFiles.length === 0) {\n return {}\n }\n\n try {\n const appConfig: Config = (await jiti.import(configFiles[0], { default: true })) as Config\n return appConfig\n } catch (error) {\n console.warn('Failed to load motia.config.ts:', error)\n return {}\n }\n}\n"],"mappings":";;;;AAMA,MAAM,OAAO,WAAW,OAAO,KAAK,IAAI;AAExC,MAAa,kBAAkB,OAAO,YAAgD;CACpF,MAAM,cAAc,SAAS,wBAAwB;EAAE,UAAU;EAAM,KAAK;EAAS,CAAC;AAEtF,KAAI,YAAY,WAAW,EACzB,QAAO,EAAE;AAGX,KAAI;AAEF,SAD2B,MAAM,KAAK,OAAO,YAAY,IAAI,EAAE,SAAS,MAAM,CAAC;UAExE,OAAO;AACd,UAAQ,KAAK,mCAAmC,MAAM;AACtD,SAAO,EAAE"}
@@ -0,0 +1,69 @@
1
+ import { processSchema } from "./process-schema.mjs";
2
+ import { isHttpMethod } from "./utils.mjs";
3
+ import * as fs$1 from "fs";
4
+ import * as path$1 from "path";
5
+
6
+ //#region src/openapi/generate.ts
7
+ function generateOpenApi(projectDir, apiSteps, title, version, outputFile = "openapi.json") {
8
+ if (!title || !version) try {
9
+ const packageJsonPath = path$1.join(projectDir, "package.json");
10
+ const packageJson = JSON.parse(fs$1.readFileSync(packageJsonPath, "utf8"));
11
+ if (!title) title = packageJson.name;
12
+ if (!version) version = packageJson.version;
13
+ } catch (error) {
14
+ console.warn(`Could not read package.json in ${projectDir} to determine project name. Using default.`);
15
+ }
16
+ const openApi = {
17
+ openapi: "3.0.0",
18
+ info: {
19
+ title: title ?? "Motia Project API",
20
+ version: version ?? "1.0.0"
21
+ },
22
+ paths: {},
23
+ components: { schemas: {} }
24
+ };
25
+ for (const step of apiSteps) {
26
+ const pathItem = openApi.paths[step.config.path] || {};
27
+ const method = step.config.method.toLowerCase();
28
+ const operation = {
29
+ summary: step.config.name,
30
+ description: step.config.description,
31
+ requestBody: void 0,
32
+ responses: {}
33
+ };
34
+ if (step.config.queryParams) {
35
+ operation.parameters = operation.parameters || [];
36
+ for (const param of step.config.queryParams) operation.parameters.push({
37
+ in: "query",
38
+ name: param.name,
39
+ description: param.description,
40
+ required: false,
41
+ schema: { type: "string" }
42
+ });
43
+ }
44
+ if (step.config.bodySchema) {
45
+ const bodySchema = step.config.bodySchema;
46
+ delete bodySchema.$schema;
47
+ const processedSchema = processSchema(bodySchema, openApi);
48
+ operation.requestBody = { content: { "application/json": { schema: processedSchema } } };
49
+ }
50
+ if (step.config.responseSchema) for (const [statusCode, responseSchema] of Object.entries(step.config.responseSchema)) {
51
+ const resSchema = responseSchema;
52
+ delete resSchema.$schema;
53
+ const processedSchema = processSchema(resSchema, openApi);
54
+ operation.responses[statusCode] = {
55
+ description: `Response for status code ${statusCode}`,
56
+ content: { "application/json": { schema: processedSchema } }
57
+ };
58
+ }
59
+ if (isHttpMethod(method)) pathItem[method] = operation;
60
+ openApi.paths[step.config.path] = pathItem;
61
+ }
62
+ const openApiJson = JSON.stringify(openApi, null, 2);
63
+ fs$1.writeFileSync(path$1.join(projectDir, outputFile), openApiJson);
64
+ console.log(`✅ OpenAPI specification generated successfully at ${outputFile}`);
65
+ }
66
+
67
+ //#endregion
68
+ export { generateOpenApi };
69
+ //# sourceMappingURL=generate.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.mjs","names":["path","fs","openApi: OpenAPIV3.Document","operation: OpenAPIV3.OperationObject"],"sources":["../../src/openapi/generate.ts"],"sourcesContent":["import type { ApiRouteConfig, Step } from '@motiadev/core'\nimport * as fs from 'fs'\nimport type { OpenAPIV3 } from 'openapi-types'\nimport * as path from 'path'\n\nimport { processSchema } from './process-schema'\nimport { isHttpMethod } from './utils'\n\nexport function generateOpenApi(\n projectDir: string,\n apiSteps: Step<ApiRouteConfig>[],\n title?: string,\n version?: string,\n outputFile = 'openapi.json',\n) {\n // read package.json to get project name for default title & version\n if (!title || !version) {\n try {\n const packageJsonPath = path.join(projectDir, 'package.json')\n const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'))\n\n if (!title) title = packageJson.name\n if (!version) version = packageJson.version\n } catch (error) {\n console.warn(`Could not read package.json in ${projectDir} to determine project name. Using default.`)\n }\n }\n\n const openApi: OpenAPIV3.Document = {\n openapi: '3.0.0',\n info: {\n title: title ?? 'Motia Project API',\n version: version ?? '1.0.0',\n },\n paths: {},\n components: {\n schemas: {},\n },\n }\n\n for (const step of apiSteps) {\n const pathItem = openApi.paths[step.config.path] || {}\n const method = step.config.method.toLowerCase()\n\n const operation: OpenAPIV3.OperationObject = {\n summary: step.config.name,\n description: step.config.description,\n requestBody: undefined,\n responses: {},\n }\n\n if (step.config.queryParams) {\n operation.parameters = operation.parameters || []\n\n for (const param of step.config.queryParams) {\n operation.parameters.push({\n in: 'query',\n name: param.name,\n description: param.description,\n required: false,\n schema: {\n type: 'string',\n },\n })\n }\n }\n\n if (step.config.bodySchema) {\n const bodySchema = step.config.bodySchema as unknown as Record<string, unknown>\n\n delete bodySchema.$schema\n\n const processedSchema = processSchema(bodySchema, openApi)\n\n operation.requestBody = {\n content: {\n 'application/json': {\n schema: processedSchema,\n },\n },\n }\n }\n\n if (step.config.responseSchema) {\n for (const [statusCode, responseSchema] of Object.entries(step.config.responseSchema)) {\n const resSchema = responseSchema as unknown as Record<string, unknown>\n\n delete resSchema.$schema\n\n const processedSchema = processSchema(resSchema, openApi)\n\n operation.responses[statusCode] = {\n description: `Response for status code ${statusCode}`,\n content: {\n 'application/json': {\n schema: processedSchema,\n },\n },\n }\n }\n }\n\n if (isHttpMethod(method)) {\n pathItem[method] = operation\n }\n\n openApi.paths[step.config.path] = pathItem\n }\n\n const openApiJson = JSON.stringify(openApi, null, 2)\n fs.writeFileSync(path.join(projectDir, outputFile), openApiJson)\n\n console.log(`✅ OpenAPI specification generated successfully at ${outputFile}`)\n}\n"],"mappings":";;;;;;AAQA,SAAgB,gBACd,YACA,UACA,OACA,SACA,aAAa,gBACb;AAEA,KAAI,CAAC,SAAS,CAAC,QACb,KAAI;EACF,MAAM,kBAAkBA,OAAK,KAAK,YAAY,eAAe;EAC7D,MAAM,cAAc,KAAK,MAAMC,KAAG,aAAa,iBAAiB,OAAO,CAAC;AAExE,MAAI,CAAC,MAAO,SAAQ,YAAY;AAChC,MAAI,CAAC,QAAS,WAAU,YAAY;UAC7B,OAAO;AACd,UAAQ,KAAK,kCAAkC,WAAW,4CAA4C;;CAI1G,MAAMC,UAA8B;EAClC,SAAS;EACT,MAAM;GACJ,OAAO,SAAS;GAChB,SAAS,WAAW;GACrB;EACD,OAAO,EAAE;EACT,YAAY,EACV,SAAS,EAAE,EACZ;EACF;AAED,MAAK,MAAM,QAAQ,UAAU;EAC3B,MAAM,WAAW,QAAQ,MAAM,KAAK,OAAO,SAAS,EAAE;EACtD,MAAM,SAAS,KAAK,OAAO,OAAO,aAAa;EAE/C,MAAMC,YAAuC;GAC3C,SAAS,KAAK,OAAO;GACrB,aAAa,KAAK,OAAO;GACzB,aAAa;GACb,WAAW,EAAE;GACd;AAED,MAAI,KAAK,OAAO,aAAa;AAC3B,aAAU,aAAa,UAAU,cAAc,EAAE;AAEjD,QAAK,MAAM,SAAS,KAAK,OAAO,YAC9B,WAAU,WAAW,KAAK;IACxB,IAAI;IACJ,MAAM,MAAM;IACZ,aAAa,MAAM;IACnB,UAAU;IACV,QAAQ,EACN,MAAM,UACP;IACF,CAAC;;AAIN,MAAI,KAAK,OAAO,YAAY;GAC1B,MAAM,aAAa,KAAK,OAAO;AAE/B,UAAO,WAAW;GAElB,MAAM,kBAAkB,cAAc,YAAY,QAAQ;AAE1D,aAAU,cAAc,EACtB,SAAS,EACP,oBAAoB,EAClB,QAAQ,iBACT,EACF,EACF;;AAGH,MAAI,KAAK,OAAO,eACd,MAAK,MAAM,CAAC,YAAY,mBAAmB,OAAO,QAAQ,KAAK,OAAO,eAAe,EAAE;GACrF,MAAM,YAAY;AAElB,UAAO,UAAU;GAEjB,MAAM,kBAAkB,cAAc,WAAW,QAAQ;AAEzD,aAAU,UAAU,cAAc;IAChC,aAAa,4BAA4B;IACzC,SAAS,EACP,oBAAoB,EAClB,QAAQ,iBACT,EACF;IACF;;AAIL,MAAI,aAAa,OAAO,CACtB,UAAS,UAAU;AAGrB,UAAQ,MAAM,KAAK,OAAO,QAAQ;;CAGpC,MAAM,cAAc,KAAK,UAAU,SAAS,MAAM,EAAE;AACpD,MAAG,cAAcH,OAAK,KAAK,YAAY,WAAW,EAAE,YAAY;AAEhE,SAAQ,IAAI,qDAAqD,aAAa"}
@@ -0,0 +1,31 @@
1
+ //#region src/openapi/process-schema.ts
2
+ function processSchema(schema, openApi) {
3
+ if (!schema || typeof schema !== "object") return schema;
4
+ if (schema.$defs) {
5
+ if (!openApi.components) openApi.components = {};
6
+ if (!openApi.components.schemas) openApi.components.schemas = {};
7
+ for (const defName in schema.$defs) if (Object.prototype.hasOwnProperty.call(schema.$defs, defName)) openApi.components.schemas[defName] = schema.$defs[defName];
8
+ delete schema.$defs;
9
+ }
10
+ if (Array.isArray(schema.anyOf)) {
11
+ const nullIndex = schema.anyOf.findIndex((item) => item && item.type === "null");
12
+ if (nullIndex !== -1) {
13
+ schema.anyOf.splice(nullIndex, 1);
14
+ schema.nullable = true;
15
+ if (schema.anyOf.length === 1) {
16
+ const remainingSchema = schema.anyOf[0];
17
+ for (const key in remainingSchema) if (Object.prototype.hasOwnProperty.call(remainingSchema, key)) schema[key] = remainingSchema[key];
18
+ delete schema.anyOf;
19
+ }
20
+ }
21
+ }
22
+ for (const key in schema) if (Object.prototype.hasOwnProperty.call(schema, key)) {
23
+ if (key === "$ref" && typeof schema[key] === "string" && schema[key].startsWith("#/$defs/")) schema[key] = schema[key].replace("#/$defs/", "#/components/schemas/");
24
+ else if (typeof schema[key] === "object") schema[key] = processSchema(schema[key], openApi);
25
+ }
26
+ return schema;
27
+ }
28
+
29
+ //#endregion
30
+ export { processSchema };
31
+ //# sourceMappingURL=process-schema.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-schema.mjs","names":[],"sources":["../../src/openapi/process-schema.ts"],"sourcesContent":["import type { OpenAPIV3 } from 'openapi-types'\n\nexport function processSchema(schema: Record<string, unknown>, openApi: OpenAPIV3.Document) {\n if (!schema || typeof schema !== 'object') {\n return schema as OpenAPIV3.SchemaObject\n }\n\n if (schema.$defs) {\n if (!openApi.components) {\n openApi.components = {}\n }\n\n if (!openApi.components.schemas) {\n openApi.components.schemas = {} as Record<string, OpenAPIV3.SchemaObject | OpenAPIV3.ReferenceObject>\n }\n\n // copy all definitions to components/schemas for compatibility\n for (const defName in schema.$defs) {\n if (Object.prototype.hasOwnProperty.call(schema.$defs, defName)) {\n ;(openApi.components.schemas as Record<string, OpenAPIV3.SchemaObject | OpenAPIV3.ReferenceObject>)[defName] = (\n schema.$defs as Record<string, OpenAPIV3.SchemaObject | OpenAPIV3.ReferenceObject>\n )[defName]\n }\n }\n\n delete schema.$defs\n }\n\n if (Array.isArray(schema.anyOf)) {\n const nullIndex = schema.anyOf.findIndex((item: { type?: string }) => item && item.type === 'null')\n\n if (nullIndex !== -1) {\n schema.anyOf.splice(nullIndex, 1)\n\n schema.nullable = true\n\n if (schema.anyOf.length === 1) {\n // if only one schema remains, lift it up\n const remainingSchema = schema.anyOf[0]\n\n for (const key in remainingSchema) {\n if (Object.prototype.hasOwnProperty.call(remainingSchema, key)) {\n schema[key] = remainingSchema[key]\n }\n }\n\n delete schema.anyOf\n }\n }\n }\n\n for (const key in schema) {\n if (Object.prototype.hasOwnProperty.call(schema, key)) {\n if (key === '$ref' && typeof schema[key] === 'string' && schema[key].startsWith('#/$defs/')) {\n // convert $ref to OpenAPI components/schemas format\n schema[key] = schema[key].replace('#/$defs/', '#/components/schemas/')\n } else if (typeof schema[key] === 'object') {\n const result = processSchema(schema[key] as Record<string, unknown>, openApi)\n schema[key] = result\n }\n }\n }\n\n return schema as OpenAPIV3.SchemaObject\n}\n"],"mappings":";AAEA,SAAgB,cAAc,QAAiC,SAA6B;AAC1F,KAAI,CAAC,UAAU,OAAO,WAAW,SAC/B,QAAO;AAGT,KAAI,OAAO,OAAO;AAChB,MAAI,CAAC,QAAQ,WACX,SAAQ,aAAa,EAAE;AAGzB,MAAI,CAAC,QAAQ,WAAW,QACtB,SAAQ,WAAW,UAAU,EAAE;AAIjC,OAAK,MAAM,WAAW,OAAO,MAC3B,KAAI,OAAO,UAAU,eAAe,KAAK,OAAO,OAAO,QAAQ,CAC5D,CAAC,QAAQ,WAAW,QAA+E,WAClG,OAAO,MACP;AAIN,SAAO,OAAO;;AAGhB,KAAI,MAAM,QAAQ,OAAO,MAAM,EAAE;EAC/B,MAAM,YAAY,OAAO,MAAM,WAAW,SAA4B,QAAQ,KAAK,SAAS,OAAO;AAEnG,MAAI,cAAc,IAAI;AACpB,UAAO,MAAM,OAAO,WAAW,EAAE;AAEjC,UAAO,WAAW;AAElB,OAAI,OAAO,MAAM,WAAW,GAAG;IAE7B,MAAM,kBAAkB,OAAO,MAAM;AAErC,SAAK,MAAM,OAAO,gBAChB,KAAI,OAAO,UAAU,eAAe,KAAK,iBAAiB,IAAI,CAC5D,QAAO,OAAO,gBAAgB;AAIlC,WAAO,OAAO;;;;AAKpB,MAAK,MAAM,OAAO,OAChB,KAAI,OAAO,UAAU,eAAe,KAAK,QAAQ,IAAI,EACnD;MAAI,QAAQ,UAAU,OAAO,OAAO,SAAS,YAAY,OAAO,KAAK,WAAW,WAAW,CAEzF,QAAO,OAAO,OAAO,KAAK,QAAQ,YAAY,wBAAwB;WAC7D,OAAO,OAAO,SAAS,SAEhC,QAAO,OADQ,cAAc,OAAO,MAAiC,QAAQ;;AAMnF,QAAO"}
@@ -0,0 +1,10 @@
1
+ import { OpenAPIV3 } from "openapi-types";
2
+
3
+ //#region src/openapi/utils.ts
4
+ function isHttpMethod(method) {
5
+ return Object.values(OpenAPIV3.HttpMethods).includes(method);
6
+ }
7
+
8
+ //#endregion
9
+ export { isHttpMethod };
10
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","names":[],"sources":["../../src/openapi/utils.ts"],"sourcesContent":["import { OpenAPIV3 } from 'openapi-types'\n\nexport function isHttpMethod(method: string): method is OpenAPIV3.HttpMethods {\n return Object.values(OpenAPIV3.HttpMethods).includes(method as OpenAPIV3.HttpMethods)\n}\n"],"mappings":";;;AAEA,SAAgB,aAAa,QAAiD;AAC5E,QAAO,OAAO,OAAO,UAAU,YAAY,CAAC,SAAS,OAAgC"}
@@ -0,0 +1,39 @@
1
+ import { getStepConfig } from "@motiadev/core";
2
+ import { globSync } from "glob";
3
+ import fs from "node:fs";
4
+
5
+ //#region src/plugins/collect-plugin-steps.ts
6
+ const collectPluginSteps = async (dirname, stepPatterns, projectRoot, printer) => {
7
+ const pluginSteps = [];
8
+ if (!fs.existsSync(dirname)) {
9
+ printer.printPluginWarn(`Directory not found: ${dirname}`);
10
+ return pluginSteps;
11
+ }
12
+ for (const pattern of stepPatterns) try {
13
+ const stepFiles = globSync(pattern, {
14
+ absolute: true,
15
+ cwd: dirname
16
+ });
17
+ if (stepFiles.length === 0) {
18
+ printer.printPluginLog(`No files found matching pattern: ${pattern} in ${dirname}`);
19
+ continue;
20
+ }
21
+ for (const filePath of stepFiles) try {
22
+ const config = await getStepConfig(filePath, projectRoot);
23
+ if (config) pluginSteps.push({
24
+ filePath,
25
+ config
26
+ });
27
+ else printer.printPluginWarn(`No config found in step ${filePath}, step skipped`);
28
+ } catch (error) {
29
+ printer.printPluginError(`Error loading step ${filePath}:`, error);
30
+ }
31
+ } catch (error) {
32
+ printer.printPluginError(`Error processing pattern ${pattern}:`, error);
33
+ }
34
+ return pluginSteps;
35
+ };
36
+
37
+ //#endregion
38
+ export { collectPluginSteps };
39
+ //# sourceMappingURL=collect-plugin-steps.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collect-plugin-steps.mjs","names":["pluginSteps: Array<{ filePath: string; config: StepConfig }>"],"sources":["../../src/plugins/collect-plugin-steps.ts"],"sourcesContent":["import fs from 'node:fs'\nimport { getStepConfig, type Printer, type StepConfig } from '@motiadev/core'\nimport { globSync } from 'glob'\n\nexport const collectPluginSteps = async (\n dirname: string,\n stepPatterns: string[],\n projectRoot: string,\n printer: Printer,\n): Promise<Array<{ filePath: string; config: StepConfig }>> => {\n const pluginSteps: Array<{ filePath: string; config: StepConfig }> = []\n\n if (!fs.existsSync(dirname)) {\n printer.printPluginWarn(`Directory not found: ${dirname}`)\n return pluginSteps\n }\n\n for (const pattern of stepPatterns) {\n try {\n const stepFiles = globSync(pattern, { absolute: true, cwd: dirname })\n\n if (stepFiles.length === 0) {\n printer.printPluginLog(`No files found matching pattern: ${pattern} in ${dirname}`)\n continue\n }\n\n for (const filePath of stepFiles) {\n try {\n const config = await getStepConfig(filePath, projectRoot)\n if (config) {\n pluginSteps.push({ filePath, config })\n } else {\n printer.printPluginWarn(`No config found in step ${filePath}, step skipped`)\n }\n } catch (error) {\n printer.printPluginError(`Error loading step ${filePath}:`, error)\n }\n }\n } catch (error) {\n printer.printPluginError(`Error processing pattern ${pattern}:`, error)\n }\n }\n\n return pluginSteps\n}\n"],"mappings":";;;;;AAIA,MAAa,qBAAqB,OAChC,SACA,cACA,aACA,YAC6D;CAC7D,MAAMA,cAA+D,EAAE;AAEvE,KAAI,CAAC,GAAG,WAAW,QAAQ,EAAE;AAC3B,UAAQ,gBAAgB,wBAAwB,UAAU;AAC1D,SAAO;;AAGT,MAAK,MAAM,WAAW,aACpB,KAAI;EACF,MAAM,YAAY,SAAS,SAAS;GAAE,UAAU;GAAM,KAAK;GAAS,CAAC;AAErE,MAAI,UAAU,WAAW,GAAG;AAC1B,WAAQ,eAAe,oCAAoC,QAAQ,MAAM,UAAU;AACnF;;AAGF,OAAK,MAAM,YAAY,UACrB,KAAI;GACF,MAAM,SAAS,MAAM,cAAc,UAAU,YAAY;AACzD,OAAI,OACF,aAAY,KAAK;IAAE;IAAU;IAAQ,CAAC;OAEtC,SAAQ,gBAAgB,2BAA2B,SAAS,gBAAgB;WAEvE,OAAO;AACd,WAAQ,iBAAiB,sBAAsB,SAAS,IAAI,MAAM;;UAG/D,OAAO;AACd,UAAQ,iBAAiB,4BAA4B,QAAQ,IAAI,MAAM;;AAI3E,QAAO"}
@@ -0,0 +1,35 @@
1
+ //#region src/plugins/create-plugin-context.ts
2
+ const createPluginContext = (motiaServer) => {
3
+ const { motia, addRoute, removeRoute, printer } = motiaServer;
4
+ return {
5
+ printer,
6
+ tracerFactory: motia.tracerFactory,
7
+ state: motia.stateAdapter,
8
+ lockedData: motia.lockedData,
9
+ eventAdapter: motia.eventAdapter,
10
+ registerApi: (config, handler) => {
11
+ const apiConfig = {
12
+ type: "api",
13
+ name: `Plugin API: ${config.method} ${config.path}`,
14
+ path: config.path,
15
+ method: config.method,
16
+ emits: [],
17
+ flows: ["_plugin"]
18
+ };
19
+ const step = {
20
+ filePath: `__plugin_${Date.now()}_${config.method}_${config.path.replace(/\//g, "_")}.ts`,
21
+ version: "1",
22
+ config: apiConfig,
23
+ handler
24
+ };
25
+ addRoute(step);
26
+ return () => {
27
+ removeRoute(step);
28
+ };
29
+ }
30
+ };
31
+ };
32
+
33
+ //#endregion
34
+ export { createPluginContext };
35
+ //# sourceMappingURL=create-plugin-context.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-plugin-context.mjs","names":["apiConfig: ApiRouteConfig","step: PluginStep<ApiRouteConfig>"],"sources":["../../src/plugins/create-plugin-context.ts"],"sourcesContent":["import type {\n ApiResponse,\n ApiRouteConfig,\n ApiRouteHandler,\n MotiaPluginContext,\n MotiaServer,\n PluginApiConfig,\n PluginStep,\n UnregisterMotiaPluginApi,\n} from '@motiadev/core'\n\nexport const createPluginContext = (motiaServer: MotiaServer): MotiaPluginContext => {\n const { motia, addRoute, removeRoute, printer } = motiaServer\n return {\n printer,\n tracerFactory: motia.tracerFactory,\n state: motia.stateAdapter,\n lockedData: motia.lockedData,\n eventAdapter: motia.eventAdapter,\n registerApi: <\n TRequestBody = unknown,\n TResponseBody extends ApiResponse<number, unknown> = ApiResponse<number, unknown>,\n TEmitData = never,\n >(\n config: PluginApiConfig,\n handler: ApiRouteHandler<TRequestBody, TResponseBody, TEmitData>,\n ): UnregisterMotiaPluginApi => {\n const apiConfig: ApiRouteConfig = {\n type: 'api',\n name: `Plugin API: ${config.method} ${config.path}`,\n path: config.path,\n method: config.method,\n emits: [],\n flows: ['_plugin'],\n }\n\n const step: PluginStep<ApiRouteConfig> = {\n filePath: `__plugin_${Date.now()}_${config.method}_${config.path.replace(/\\//g, '_')}.ts`,\n version: '1',\n config: apiConfig,\n handler,\n }\n addRoute(step)\n return () => {\n removeRoute(step)\n }\n },\n }\n}\n"],"mappings":";AAWA,MAAa,uBAAuB,gBAAiD;CACnF,MAAM,EAAE,OAAO,UAAU,aAAa,YAAY;AAClD,QAAO;EACL;EACA,eAAe,MAAM;EACrB,OAAO,MAAM;EACb,YAAY,MAAM;EAClB,cAAc,MAAM;EACpB,cAKE,QACA,YAC6B;GAC7B,MAAMA,YAA4B;IAChC,MAAM;IACN,MAAM,eAAe,OAAO,OAAO,GAAG,OAAO;IAC7C,MAAM,OAAO;IACb,QAAQ,OAAO;IACf,OAAO,EAAE;IACT,OAAO,CAAC,UAAU;IACnB;GAED,MAAMC,OAAmC;IACvC,UAAU,YAAY,KAAK,KAAK,CAAC,GAAG,OAAO,OAAO,GAAG,OAAO,KAAK,QAAQ,OAAO,IAAI,CAAC;IACrF,SAAS;IACT,QAAQ;IACR;IACD;AACD,YAAS,KAAK;AACd,gBAAa;AACX,gBAAY,KAAK;;;EAGtB"}
@@ -0,0 +1,3 @@
1
+ import { processPlugins } from "./process-plugins.mjs";
2
+
3
+ export { };
@@ -0,0 +1,54 @@
1
+ import { executeCommand } from "../utils/execute-command.mjs";
2
+ import { version } from "../version.mjs";
3
+ import { pluginDependencies } from "./plugin-dependencies.mjs";
4
+ import { getPackageManager } from "../utils/get-package-manager.mjs";
5
+ import fs from "node:fs";
6
+ import path from "node:path";
7
+
8
+ //#region src/plugins/install-plugin-dependencies.ts
9
+ const installPluginDependencies = async (baseDir, printer) => {
10
+ const packageJsonPath = path.join(baseDir, "package.json");
11
+ if (!fs.existsSync(packageJsonPath)) {
12
+ printer.printPluginWarn("No package.json found, skipping plugin dependency installation");
13
+ return;
14
+ }
15
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf-8"));
16
+ if (!packageJson.dependencies) packageJson.dependencies = {};
17
+ const missingDependencies = [];
18
+ for (const dep of pluginDependencies) {
19
+ if (packageJson.devDependencies?.[dep]) delete packageJson.devDependencies[dep];
20
+ if (!packageJson.dependencies[dep]) {
21
+ packageJson.dependencies[dep] = version;
22
+ missingDependencies.push(dep);
23
+ }
24
+ }
25
+ if (missingDependencies.length === 0) {
26
+ printer.printPluginLog("All plugin dependencies already installed");
27
+ return;
28
+ }
29
+ printer.printPluginLog(`Adding missing plugin dependencies: ${missingDependencies.join(", ")}`);
30
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(packageJson, null, 2)}\n`);
31
+ printer.printPluginLog("Updated package.json with plugin dependencies");
32
+ let packageManager = getPackageManager(baseDir);
33
+ if (packageManager === "unknown") {
34
+ printer.printPluginError("No package manager found, using npm as default");
35
+ packageManager = "npm";
36
+ }
37
+ printer.printPluginLog(`Installing dependencies using ${packageManager}...`);
38
+ const installCommand = {
39
+ npm: "npm install",
40
+ yarn: "yarn install",
41
+ pnpm: "pnpm install"
42
+ }[packageManager] || "npm install";
43
+ try {
44
+ await executeCommand(installCommand, baseDir, { silent: false });
45
+ printer.printPluginLog("Plugin dependencies installed successfully");
46
+ } catch (error) {
47
+ printer.printPluginError("Failed to install plugin dependencies:", error);
48
+ printer.printPluginWarn(`Please run '${installCommand}' manually to install the dependencies`);
49
+ }
50
+ };
51
+
52
+ //#endregion
53
+ export { installPluginDependencies };
54
+ //# sourceMappingURL=install-plugin-dependencies.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-plugin-dependencies.mjs","names":["missingDependencies: string[]"],"sources":["../../src/plugins/install-plugin-dependencies.ts"],"sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\nimport type { Printer } from '@motiadev/core'\nimport { executeCommand } from '../utils/execute-command'\nimport { getPackageManager } from '../utils/get-package-manager'\nimport { version } from '../version'\nimport { pluginDependencies } from './plugin-dependencies'\n\nexport const installPluginDependencies = async (baseDir: string, printer: Printer): Promise<void> => {\n const packageJsonPath = path.join(baseDir, 'package.json')\n\n if (!fs.existsSync(packageJsonPath)) {\n printer.printPluginWarn('No package.json found, skipping plugin dependency installation')\n return\n }\n\n const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'))\n\n if (!packageJson.dependencies) {\n packageJson.dependencies = {}\n }\n\n const missingDependencies: string[] = []\n\n for (const dep of pluginDependencies) {\n if (packageJson.devDependencies?.[dep]) {\n delete packageJson.devDependencies[dep]\n }\n\n if (!packageJson.dependencies[dep]) {\n packageJson.dependencies[dep] = version\n missingDependencies.push(dep)\n }\n }\n\n if (missingDependencies.length === 0) {\n printer.printPluginLog('All plugin dependencies already installed')\n return\n }\n\n printer.printPluginLog(`Adding missing plugin dependencies: ${missingDependencies.join(', ')}`)\n\n fs.writeFileSync(packageJsonPath, `${JSON.stringify(packageJson, null, 2)}\\n`)\n printer.printPluginLog('Updated package.json with plugin dependencies')\n\n let packageManager = getPackageManager(baseDir)\n if (packageManager === 'unknown') {\n printer.printPluginError('No package manager found, using npm as default')\n packageManager = 'npm'\n }\n printer.printPluginLog(`Installing dependencies using ${packageManager}...`)\n\n const installCommands: Record<string, string> = {\n npm: 'npm install',\n yarn: 'yarn install',\n pnpm: 'pnpm install',\n }\n\n const installCommand = installCommands[packageManager] || 'npm install'\n\n try {\n await executeCommand(installCommand, baseDir, { silent: false })\n printer.printPluginLog('Plugin dependencies installed successfully')\n } catch (error) {\n printer.printPluginError('Failed to install plugin dependencies:', error)\n printer.printPluginWarn(`Please run '${installCommand}' manually to install the dependencies`)\n }\n}\n"],"mappings":";;;;;;;;AAQA,MAAa,4BAA4B,OAAO,SAAiB,YAAoC;CACnG,MAAM,kBAAkB,KAAK,KAAK,SAAS,eAAe;AAE1D,KAAI,CAAC,GAAG,WAAW,gBAAgB,EAAE;AACnC,UAAQ,gBAAgB,iEAAiE;AACzF;;CAGF,MAAM,cAAc,KAAK,MAAM,GAAG,aAAa,iBAAiB,QAAQ,CAAC;AAEzE,KAAI,CAAC,YAAY,aACf,aAAY,eAAe,EAAE;CAG/B,MAAMA,sBAAgC,EAAE;AAExC,MAAK,MAAM,OAAO,oBAAoB;AACpC,MAAI,YAAY,kBAAkB,KAChC,QAAO,YAAY,gBAAgB;AAGrC,MAAI,CAAC,YAAY,aAAa,MAAM;AAClC,eAAY,aAAa,OAAO;AAChC,uBAAoB,KAAK,IAAI;;;AAIjC,KAAI,oBAAoB,WAAW,GAAG;AACpC,UAAQ,eAAe,4CAA4C;AACnE;;AAGF,SAAQ,eAAe,uCAAuC,oBAAoB,KAAK,KAAK,GAAG;AAE/F,IAAG,cAAc,iBAAiB,GAAG,KAAK,UAAU,aAAa,MAAM,EAAE,CAAC,IAAI;AAC9E,SAAQ,eAAe,gDAAgD;CAEvE,IAAI,iBAAiB,kBAAkB,QAAQ;AAC/C,KAAI,mBAAmB,WAAW;AAChC,UAAQ,iBAAiB,iDAAiD;AAC1E,mBAAiB;;AAEnB,SAAQ,eAAe,iCAAiC,eAAe,KAAK;CAQ5E,MAAM,iBAN0C;EAC9C,KAAK;EACL,MAAM;EACN,MAAM;EACP,CAEsC,mBAAmB;AAE1D,KAAI;AACF,QAAM,eAAe,gBAAgB,SAAS,EAAE,QAAQ,OAAO,CAAC;AAChE,UAAQ,eAAe,6CAA6C;UAC7D,OAAO;AACd,UAAQ,iBAAiB,0CAA0C,MAAM;AACzE,UAAQ,gBAAgB,eAAe,eAAe,wCAAwC"}
@@ -0,0 +1,30 @@
1
+ import { installPluginDependencies } from "./install-plugin-dependencies.mjs";
2
+ import { globSync } from "glob";
3
+ import { createJiti } from "jiti";
4
+ import fs from "node:fs";
5
+ import path from "node:path";
6
+ import { fileURLToPath } from "node:url";
7
+
8
+ //#region src/plugins/load-config.ts
9
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
10
+ const jiti = createJiti(import.meta.url);
11
+ const loadConfig = async (baseDir, printer) => {
12
+ const configFiles = globSync("motia.config.{ts,js}", {
13
+ absolute: true,
14
+ cwd: baseDir
15
+ });
16
+ if (configFiles.length === 0) {
17
+ const templatePath = path.join(__dirname, "../create/templates/nodejs/motia.config.ts.txt");
18
+ const templateContent = fs.readFileSync(templatePath, "utf-8");
19
+ const configPath = path.join(baseDir, "motia.config.ts");
20
+ fs.writeFileSync(configPath, templateContent);
21
+ printer.printPluginLog("Created motia.config.ts");
22
+ await installPluginDependencies(baseDir, printer);
23
+ return await jiti.import(configPath, { default: true });
24
+ }
25
+ return await jiti.import(configFiles[0], { default: true });
26
+ };
27
+
28
+ //#endregion
29
+ export { loadConfig };
30
+ //# sourceMappingURL=load-config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-config.mjs","names":[],"sources":["../../src/plugins/load-config.ts"],"sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport type { Config, Printer } from '@motiadev/core'\nimport { globSync } from 'glob'\nimport { createJiti } from 'jiti'\nimport { installPluginDependencies } from './install-plugin-dependencies'\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url))\nconst jiti = createJiti(import.meta.url)\n\nexport const loadConfig = async (baseDir: string, printer: Printer): Promise<Config> => {\n const configFiles = globSync('motia.config.{ts,js}', { absolute: true, cwd: baseDir })\n if (configFiles.length === 0) {\n const templatePath = path.join(__dirname, '../create/templates/nodejs/motia.config.ts.txt')\n const templateContent = fs.readFileSync(templatePath, 'utf-8')\n const configPath = path.join(baseDir, 'motia.config.ts')\n fs.writeFileSync(configPath, templateContent)\n printer.printPluginLog('Created motia.config.ts')\n\n await installPluginDependencies(baseDir, printer)\n\n return (await jiti.import(configPath, { default: true })) as Config\n }\n\n return (await jiti.import(configFiles[0], { default: true })) as Config\n}\n"],"mappings":";;;;;;;;AAQA,MAAM,YAAY,KAAK,QAAQ,cAAc,OAAO,KAAK,IAAI,CAAC;AAC9D,MAAM,OAAO,WAAW,OAAO,KAAK,IAAI;AAExC,MAAa,aAAa,OAAO,SAAiB,YAAsC;CACtF,MAAM,cAAc,SAAS,wBAAwB;EAAE,UAAU;EAAM,KAAK;EAAS,CAAC;AACtF,KAAI,YAAY,WAAW,GAAG;EAC5B,MAAM,eAAe,KAAK,KAAK,WAAW,iDAAiD;EAC3F,MAAM,kBAAkB,GAAG,aAAa,cAAc,QAAQ;EAC9D,MAAM,aAAa,KAAK,KAAK,SAAS,kBAAkB;AACxD,KAAG,cAAc,YAAY,gBAAgB;AAC7C,UAAQ,eAAe,0BAA0B;AAEjD,QAAM,0BAA0B,SAAS,QAAQ;AAEjD,SAAQ,MAAM,KAAK,OAAO,YAAY,EAAE,SAAS,MAAM,CAAC;;AAG1D,QAAQ,MAAM,KAAK,OAAO,YAAY,IAAI,EAAE,SAAS,MAAM,CAAC"}
@@ -0,0 +1,13 @@
1
+ //#region src/plugins/plugin-dependencies.ts
2
+ const pluginDependencies = [
3
+ "@motiadev/core",
4
+ "@motiadev/plugin-logs",
5
+ "@motiadev/plugin-states",
6
+ "@motiadev/plugin-endpoint",
7
+ "@motiadev/plugin-observability",
8
+ "@motiadev/plugin-bullmq"
9
+ ];
10
+
11
+ //#endregion
12
+ export { pluginDependencies };
13
+ //# sourceMappingURL=plugin-dependencies.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-dependencies.mjs","names":[],"sources":["../../src/plugins/plugin-dependencies.ts"],"sourcesContent":["export const pluginDependencies = [\n '@motiadev/core',\n '@motiadev/plugin-logs',\n '@motiadev/plugin-states',\n '@motiadev/plugin-endpoint',\n '@motiadev/plugin-observability',\n '@motiadev/plugin-bullmq',\n]\n"],"mappings":";AAAA,MAAa,qBAAqB;CAChC;CACA;CACA;CACA;CACA;CACA;CACD"}
@@ -0,0 +1,22 @@
1
+ import { createPluginContext } from "./create-plugin-context.mjs";
2
+ import { loadConfig } from "./load-config.mjs";
3
+ import { processSteps } from "./process-steps.mjs";
4
+
5
+ //#region src/plugins/process-plugins.ts
6
+ const processPlugins = async (motiaServer) => {
7
+ const { printer, motia } = motiaServer;
8
+ const baseDir = motia.lockedData.baseDir;
9
+ const context = createPluginContext(motiaServer);
10
+ const appConfig = await loadConfig(baseDir, printer);
11
+ if (!appConfig?.plugins) {
12
+ printer.printPluginError("No plugins found in motia.config.ts");
13
+ return [];
14
+ }
15
+ const plugins = appConfig.plugins?.flatMap((item) => item(context)) || [];
16
+ await processSteps(motiaServer, plugins, baseDir);
17
+ return plugins;
18
+ };
19
+
20
+ //#endregion
21
+ export { processPlugins };
22
+ //# sourceMappingURL=process-plugins.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-plugins.mjs","names":["context: MotiaPluginContext","appConfig: Config","plugins: MotiaPlugin[]"],"sources":["../../src/plugins/process-plugins.ts"],"sourcesContent":["import type { Config, MotiaPlugin, MotiaPluginContext, MotiaServer } from '@motiadev/core'\nimport { createPluginContext } from './create-plugin-context'\nimport { loadConfig } from './load-config'\nimport { processSteps } from './process-steps'\n\nexport const processPlugins = async (motiaServer: MotiaServer): Promise<MotiaPlugin[]> => {\n const { printer, motia } = motiaServer\n const baseDir = motia.lockedData.baseDir\n\n const context: MotiaPluginContext = createPluginContext(motiaServer)\n\n const appConfig: Config = await loadConfig(baseDir, printer)\n if (!appConfig?.plugins) {\n printer.printPluginError('No plugins found in motia.config.ts')\n return []\n }\n\n const plugins: MotiaPlugin[] = appConfig.plugins?.flatMap((item) => item(context)) || []\n await processSteps(motiaServer, plugins, baseDir)\n return plugins\n}\n"],"mappings":";;;;;AAKA,MAAa,iBAAiB,OAAO,gBAAqD;CACxF,MAAM,EAAE,SAAS,UAAU;CAC3B,MAAM,UAAU,MAAM,WAAW;CAEjC,MAAMA,UAA8B,oBAAoB,YAAY;CAEpE,MAAMC,YAAoB,MAAM,WAAW,SAAS,QAAQ;AAC5D,KAAI,CAAC,WAAW,SAAS;AACvB,UAAQ,iBAAiB,sCAAsC;AAC/D,SAAO,EAAE;;CAGX,MAAMC,UAAyB,UAAU,SAAS,SAAS,SAAS,KAAK,QAAQ,CAAC,IAAI,EAAE;AACxF,OAAM,aAAa,aAAa,SAAS,QAAQ;AACjD,QAAO"}
@@ -0,0 +1,36 @@
1
+ import { collectPluginSteps } from "./collect-plugin-steps.mjs";
2
+ import { PLUGIN_FLOW_ID } from "@motiadev/core";
3
+ import { randomUUID } from "node:crypto";
4
+
5
+ //#region src/plugins/process-steps.ts
6
+ const processSteps = async (motiaServer, plugins, baseDir) => {
7
+ const { motia, addRoute, printer } = motiaServer;
8
+ for (const plugin of plugins) if (plugin.dirname && plugin.steps) {
9
+ printer.printPluginLog(`Loading steps from ${plugin.dirname}`);
10
+ try {
11
+ const pluginSteps = await collectPluginSteps(plugin.dirname, plugin.steps, baseDir, printer);
12
+ const version = `plugin_${randomUUID()}:${Math.floor(Date.now() / 1e3)}`;
13
+ for (const { filePath, config } of pluginSteps) try {
14
+ if (motia.lockedData.createStep({
15
+ filePath,
16
+ version,
17
+ config: {
18
+ ...config,
19
+ flows: [PLUGIN_FLOW_ID]
20
+ }
21
+ }, { disableTypeCreation: true })) {
22
+ const step = motia.lockedData.activeSteps.find((s) => s.filePath === filePath);
23
+ if (step && step.config.type === "api") addRoute(step);
24
+ } else printer.printPluginWarn(`Failed to register step: ${config.name} from ${filePath}`);
25
+ } catch (error) {
26
+ printer.printPluginError(`Error registering step ${filePath}:`, error);
27
+ }
28
+ } catch (error) {
29
+ printer.printPluginError(`Error loading steps from ${plugin.dirname}:`, error);
30
+ }
31
+ }
32
+ };
33
+
34
+ //#endregion
35
+ export { processSteps };
36
+ //# sourceMappingURL=process-steps.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-steps.mjs","names":[],"sources":["../../src/plugins/process-steps.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto'\nimport { type MotiaPlugin, type MotiaServer, PLUGIN_FLOW_ID } from '@motiadev/core'\nimport { collectPluginSteps } from './collect-plugin-steps'\n\nexport const processSteps = async (\n motiaServer: MotiaServer,\n plugins: MotiaPlugin[],\n baseDir: string,\n): Promise<void> => {\n const { motia, addRoute, printer } = motiaServer\n for (const plugin of plugins) {\n if (plugin.dirname && plugin.steps) {\n printer.printPluginLog(`Loading steps from ${plugin.dirname}`)\n try {\n const pluginSteps = await collectPluginSteps(plugin.dirname, plugin.steps, baseDir, printer)\n const version = `plugin_${randomUUID()}:${Math.floor(Date.now() / 1000)}`\n\n for (const { filePath, config } of pluginSteps) {\n try {\n const isCreated = motia.lockedData.createStep(\n { filePath, version, config: { ...config, flows: [PLUGIN_FLOW_ID] } },\n { disableTypeCreation: true },\n )\n\n if (isCreated) {\n const step = motia.lockedData.activeSteps.find((s) => s.filePath === filePath)\n if (step && step.config.type === 'api') {\n // biome-ignore lint/suspicious/noExplicitAny: Step type casting needed for route handler\n addRoute(step as any)\n }\n } else {\n printer.printPluginWarn(`Failed to register step: ${config.name} from ${filePath}`)\n }\n } catch (error) {\n printer.printPluginError(`Error registering step ${filePath}:`, error)\n }\n }\n } catch (error) {\n printer.printPluginError(`Error loading steps from ${plugin.dirname}:`, error)\n }\n }\n }\n}\n"],"mappings":";;;;;AAIA,MAAa,eAAe,OAC1B,aACA,SACA,YACkB;CAClB,MAAM,EAAE,OAAO,UAAU,YAAY;AACrC,MAAK,MAAM,UAAU,QACnB,KAAI,OAAO,WAAW,OAAO,OAAO;AAClC,UAAQ,eAAe,sBAAsB,OAAO,UAAU;AAC9D,MAAI;GACF,MAAM,cAAc,MAAM,mBAAmB,OAAO,SAAS,OAAO,OAAO,SAAS,QAAQ;GAC5F,MAAM,UAAU,UAAU,YAAY,CAAC,GAAG,KAAK,MAAM,KAAK,KAAK,GAAG,IAAK;AAEvE,QAAK,MAAM,EAAE,UAAU,YAAY,YACjC,KAAI;AAMF,QALkB,MAAM,WAAW,WACjC;KAAE;KAAU;KAAS,QAAQ;MAAE,GAAG;MAAQ,OAAO,CAAC,eAAe;MAAE;KAAE,EACrE,EAAE,qBAAqB,MAAM,CAC9B,EAEc;KACb,MAAM,OAAO,MAAM,WAAW,YAAY,MAAM,MAAM,EAAE,aAAa,SAAS;AAC9E,SAAI,QAAQ,KAAK,OAAO,SAAS,MAE/B,UAAS,KAAY;UAGvB,SAAQ,gBAAgB,4BAA4B,OAAO,KAAK,QAAQ,WAAW;YAE9E,OAAO;AACd,YAAQ,iBAAiB,0BAA0B,SAAS,IAAI,MAAM;;WAGnE,OAAO;AACd,WAAQ,iBAAiB,4BAA4B,OAAO,QAAQ,IAAI,MAAM"}