@hexabot-ai/api 3.2.2-alpha.9 → 3.2.2-beta.0

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 (311) hide show
  1. package/dist/actions/actions.service.d.ts +1 -0
  2. package/dist/actions/actions.service.js +19 -1
  3. package/dist/actions/actions.service.js.map +1 -1
  4. package/dist/actions/types.d.ts +3 -1
  5. package/dist/app.controller.d.ts +1 -0
  6. package/dist/app.controller.js +1 -0
  7. package/dist/app.controller.js.map +1 -1
  8. package/dist/app.module.js +13 -1
  9. package/dist/app.module.js.map +1 -1
  10. package/dist/config/index.js +14 -2
  11. package/dist/config/index.js.map +1 -1
  12. package/dist/config/types.d.ts +9 -0
  13. package/dist/extensions/actions/ai/agent.action.d.ts +1 -1
  14. package/dist/extensions/actions/ai/agent.action.js +6 -3
  15. package/dist/extensions/actions/ai/agent.action.js.map +1 -1
  16. package/dist/extensions/actions/ai/ai-base.action.d.ts +1 -1
  17. package/dist/extensions/actions/ai/ai-base.action.js +18 -5
  18. package/dist/extensions/actions/ai/ai-base.action.js.map +1 -1
  19. package/dist/extensions/actions/ai/generate-object.base.action.d.ts +1 -1
  20. package/dist/extensions/actions/ai/generate-object.base.action.js +3 -2
  21. package/dist/extensions/actions/ai/generate-object.base.action.js.map +1 -1
  22. package/dist/extensions/actions/ai/generate-text.base.action.d.ts +1 -1
  23. package/dist/extensions/actions/ai/generate-text.base.action.js +3 -2
  24. package/dist/extensions/actions/ai/generate-text.base.action.js.map +1 -1
  25. package/dist/extensions/actions/ai/mcp.binding.js +2 -0
  26. package/dist/extensions/actions/ai/mcp.binding.js.map +1 -1
  27. package/dist/extensions/actions/ai/memory.binding.js +2 -0
  28. package/dist/extensions/actions/ai/memory.binding.js.map +1 -1
  29. package/dist/extensions/actions/ai/retrieve-content-rag.action.js +2 -0
  30. package/dist/extensions/actions/ai/retrieve-content-rag.action.js.map +1 -1
  31. package/dist/extensions/actions/messaging/list.action.d.ts +2 -2
  32. package/dist/extensions/actions/messaging/list.action.js +7 -0
  33. package/dist/extensions/actions/messaging/list.action.js.map +1 -1
  34. package/dist/extensions/actions/subscriber/update-labels.action.js +3 -0
  35. package/dist/extensions/actions/subscriber/update-labels.action.js.map +1 -1
  36. package/dist/extensions/actions/web/http-request.action.js +12 -1
  37. package/dist/extensions/actions/web/http-request.action.js.map +1 -1
  38. package/dist/extensions/actions/workflow/call-workflow.action.d.ts +19 -0
  39. package/dist/extensions/actions/workflow/call-workflow.action.js +83 -0
  40. package/dist/extensions/actions/workflow/call-workflow.action.js.map +1 -0
  41. package/dist/extensions/actions/workflow/i18n/en.translations.json +9 -0
  42. package/dist/extensions/actions/workflow/i18n/fr.translations.json +9 -0
  43. package/dist/extensions/index.d.ts +1 -0
  44. package/dist/extensions/index.js +1 -0
  45. package/dist/extensions/index.js.map +1 -1
  46. package/dist/index.d.ts +1 -0
  47. package/dist/index.js +1 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/mcp/controllers/mcp-token.controller.d.ts +47 -0
  50. package/dist/mcp/controllers/mcp-token.controller.js +70 -0
  51. package/dist/mcp/controllers/mcp-token.controller.js.map +1 -0
  52. package/dist/mcp/decorators/mcp-permission.decorator.d.ts +8 -0
  53. package/dist/mcp/decorators/mcp-permission.decorator.js +11 -0
  54. package/dist/mcp/decorators/mcp-permission.decorator.js.map +1 -0
  55. package/dist/mcp/dto/mcp-token.dto.d.ts +17 -0
  56. package/dist/mcp/dto/mcp-token.dto.js +40 -0
  57. package/dist/mcp/dto/mcp-token.dto.js.map +1 -0
  58. package/dist/mcp/entities/mcp-token.entity.d.ts +111 -0
  59. package/dist/mcp/entities/mcp-token.entity.js +69 -0
  60. package/dist/mcp/entities/mcp-token.entity.js.map +1 -0
  61. package/dist/mcp/guards/hexabot-mcp-token.guard.d.ts +9 -0
  62. package/dist/mcp/guards/hexabot-mcp-token.guard.js +49 -0
  63. package/dist/mcp/guards/hexabot-mcp-token.guard.js.map +1 -0
  64. package/dist/mcp/guards/mcp-permission.guard.d.ts +9 -0
  65. package/dist/mcp/guards/mcp-permission.guard.js +47 -0
  66. package/dist/mcp/guards/mcp-permission.guard.js.map +1 -0
  67. package/dist/mcp/mcp-api.module.d.ts +2 -0
  68. package/dist/mcp/mcp-api.module.js +65 -0
  69. package/dist/mcp/mcp-api.module.js.map +1 -0
  70. package/dist/mcp/repositories/mcp-token.repository.d.ts +8 -0
  71. package/dist/mcp/repositories/mcp-token.repository.js +41 -0
  72. package/dist/mcp/repositories/mcp-token.repository.js.map +1 -0
  73. package/dist/mcp/services/mcp-token.service.d.ts +24 -0
  74. package/dist/mcp/services/mcp-token.service.js +106 -0
  75. package/dist/mcp/services/mcp-token.service.js.map +1 -0
  76. package/dist/mcp/tools/catalog-mcp.tools.d.ts +63 -0
  77. package/dist/mcp/tools/catalog-mcp.tools.js +135 -0
  78. package/dist/mcp/tools/catalog-mcp.tools.js.map +1 -0
  79. package/dist/mcp/tools/cms-mcp.tools.d.ts +128 -0
  80. package/dist/mcp/tools/cms-mcp.tools.js +242 -0
  81. package/dist/mcp/tools/cms-mcp.tools.js.map +1 -0
  82. package/dist/mcp/tools/credential-mcp.tools.d.ts +19 -0
  83. package/dist/mcp/tools/credential-mcp.tools.js +82 -0
  84. package/dist/mcp/tools/credential-mcp.tools.js.map +1 -0
  85. package/dist/mcp/tools/hexabot-mcp-tool.base.d.ts +22 -0
  86. package/dist/mcp/tools/hexabot-mcp-tool.base.js +48 -0
  87. package/dist/mcp/tools/hexabot-mcp-tool.base.js.map +1 -0
  88. package/dist/mcp/tools/hexabot-mcp.schemas.d.ts +41 -0
  89. package/dist/mcp/tools/hexabot-mcp.schemas.js +36 -0
  90. package/dist/mcp/tools/hexabot-mcp.schemas.js.map +1 -0
  91. package/dist/mcp/tools/hexabot-mcp.tools.d.ts +1 -0
  92. package/dist/mcp/tools/hexabot-mcp.tools.js +18 -0
  93. package/dist/mcp/tools/hexabot-mcp.tools.js.map +1 -0
  94. package/dist/mcp/tools/hexabot-mcp.utils.d.ts +2 -0
  95. package/dist/mcp/tools/hexabot-mcp.utils.js +21 -0
  96. package/dist/mcp/tools/hexabot-mcp.utils.js.map +1 -0
  97. package/dist/mcp/tools/index.d.ts +22 -0
  98. package/dist/mcp/tools/index.js +50 -0
  99. package/dist/mcp/tools/index.js.map +1 -0
  100. package/dist/mcp/tools/mcp-server-mcp.tools.d.ts +77 -0
  101. package/dist/mcp/tools/mcp-server-mcp.tools.js +130 -0
  102. package/dist/mcp/tools/mcp-server-mcp.tools.js.map +1 -0
  103. package/dist/mcp/tools/memory-definition-mcp.tools.d.ts +57 -0
  104. package/dist/mcp/tools/memory-definition-mcp.tools.js +128 -0
  105. package/dist/mcp/tools/memory-definition-mcp.tools.js.map +1 -0
  106. package/dist/mcp/tools/workflow-mcp.helper.d.ts +156 -0
  107. package/dist/mcp/tools/workflow-mcp.helper.js +128 -0
  108. package/dist/mcp/tools/workflow-mcp.helper.js.map +1 -0
  109. package/dist/mcp/tools/workflow-mcp.tools.d.ts +790 -0
  110. package/dist/mcp/tools/workflow-mcp.tools.js +227 -0
  111. package/dist/mcp/tools/workflow-mcp.tools.js.map +1 -0
  112. package/dist/mcp/tools/workflow-run-mcp.tools.d.ts +349 -0
  113. package/dist/mcp/tools/workflow-run-mcp.tools.js +242 -0
  114. package/dist/mcp/tools/workflow-run-mcp.tools.js.map +1 -0
  115. package/dist/mcp/tools/workflow-version-mcp.tools.d.ts +238 -0
  116. package/dist/mcp/tools/workflow-version-mcp.tools.js +368 -0
  117. package/dist/mcp/tools/workflow-version-mcp.tools.js.map +1 -0
  118. package/dist/mcp/types.d.ts +7 -0
  119. package/dist/mcp/types.js +3 -0
  120. package/dist/mcp/types.js.map +1 -0
  121. package/dist/static/assets/{browser-ponyfill-Qk7qpw-i.js → browser-ponyfill-AQYxeOz6.js} +1 -1
  122. package/dist/static/assets/{cssMode-CdhvY6oD.js → cssMode-CU7XHFDD.js} +1 -1
  123. package/dist/static/assets/{freemarker2-BPoURZH1.js → freemarker2-DA_oH4Qs.js} +1 -1
  124. package/dist/static/assets/{handlebars-C4oubER1.js → handlebars-DXFzBSlw.js} +1 -1
  125. package/dist/static/assets/{html-CDE5RgVN.js → html-CnQNXujK.js} +1 -1
  126. package/dist/static/assets/{htmlMode-C8edIUUq.js → htmlMode-BpX8KTMR.js} +1 -1
  127. package/dist/static/assets/{index-C1NxBXuS.js → index-BIqNbcu4.js} +2379 -2330
  128. package/dist/static/assets/{index-BI1BtkYv.css → index-D-b9KTZd.css} +1 -1
  129. package/dist/static/assets/{javascript-Wp5m7adK.js → javascript-DeoOxUBN.js} +1 -1
  130. package/dist/static/assets/{jsonMode-0eww5Srr.js → jsonMode-YGmaNoOG.js} +1 -1
  131. package/dist/static/assets/{liquid-DTktXITv.js → liquid-K6wF5n3k.js} +1 -1
  132. package/dist/static/assets/{lspLanguageFeatures-BzIRlKhn.js → lspLanguageFeatures-DFIoRPyQ.js} +1 -1
  133. package/dist/static/assets/{mdx-D508emqD.js → mdx-CWEgpRjI.js} +1 -1
  134. package/dist/static/assets/{python-BfhIq2kX.js → python-22vBz2Ov.js} +1 -1
  135. package/dist/static/assets/{razor-C7F8fOds.js → razor-CEUwDwv_.js} +1 -1
  136. package/dist/static/assets/{tsMode-B8zPu6Wl.js → tsMode-kpHfzhoP.js} +1 -1
  137. package/dist/static/assets/{typescript-Dew3VavZ.js → typescript-PCkEoDOe.js} +1 -1
  138. package/dist/static/assets/{xml-B_2tc6Mh.js → xml-OzOqd-hy.js} +1 -1
  139. package/dist/static/assets/{yaml-pHcw4KrS.js → yaml-B3P_vvCy.js} +1 -1
  140. package/dist/static/index.html +2 -2
  141. package/dist/static/locales/en/translation.json +89 -4
  142. package/dist/static/locales/fr/translation.json +90 -5
  143. package/dist/transfer/adapters/content-type-transfer.adapter.d.ts +14 -0
  144. package/dist/transfer/adapters/content-type-transfer.adapter.js +102 -0
  145. package/dist/transfer/adapters/content-type-transfer.adapter.js.map +1 -0
  146. package/dist/transfer/adapters/credential-transfer.adapter.d.ts +13 -0
  147. package/dist/transfer/adapters/credential-transfer.adapter.js +110 -0
  148. package/dist/transfer/adapters/credential-transfer.adapter.js.map +1 -0
  149. package/dist/transfer/adapters/label-transfer.adapter.d.ts +15 -0
  150. package/dist/transfer/adapters/label-transfer.adapter.js +189 -0
  151. package/dist/transfer/adapters/label-transfer.adapter.js.map +1 -0
  152. package/dist/transfer/adapters/mcp-server-transfer.adapter.d.ts +16 -0
  153. package/dist/transfer/adapters/mcp-server-transfer.adapter.js +169 -0
  154. package/dist/transfer/adapters/mcp-server-transfer.adapter.js.map +1 -0
  155. package/dist/transfer/adapters/memory-definition-transfer.adapter.d.ts +14 -0
  156. package/dist/transfer/adapters/memory-definition-transfer.adapter.js +111 -0
  157. package/dist/transfer/adapters/memory-definition-transfer.adapter.js.map +1 -0
  158. package/dist/transfer/index.d.ts +7 -0
  159. package/dist/transfer/index.js +24 -0
  160. package/dist/transfer/index.js.map +1 -0
  161. package/dist/transfer/workflow-transfer-adapter.registry.d.ts +27 -0
  162. package/dist/transfer/workflow-transfer-adapter.registry.js +164 -0
  163. package/dist/transfer/workflow-transfer-adapter.registry.js.map +1 -0
  164. package/dist/transfer/workflow-transfer-definition.service.d.ts +40 -0
  165. package/dist/transfer/workflow-transfer-definition.service.js +353 -0
  166. package/dist/transfer/workflow-transfer-definition.service.js.map +1 -0
  167. package/dist/transfer/workflow-transfer-resource-adapter.d.ts +33 -0
  168. package/dist/transfer/workflow-transfer-resource-adapter.js +81 -0
  169. package/dist/transfer/workflow-transfer-resource-adapter.js.map +1 -0
  170. package/dist/transfer/workflow-transfer.controller.d.ts +9 -0
  171. package/dist/transfer/workflow-transfer.controller.js +63 -0
  172. package/dist/transfer/workflow-transfer.controller.js.map +1 -0
  173. package/dist/transfer/workflow-transfer.module.d.ts +2 -0
  174. package/dist/transfer/workflow-transfer.module.js +47 -0
  175. package/dist/transfer/workflow-transfer.module.js.map +1 -0
  176. package/dist/transfer/workflow-transfer.service.d.ts +51 -0
  177. package/dist/transfer/workflow-transfer.service.js +509 -0
  178. package/dist/transfer/workflow-transfer.service.js.map +1 -0
  179. package/dist/transfer/workflow-transfer.types.d.ts +31 -0
  180. package/dist/transfer/workflow-transfer.types.js +35 -0
  181. package/dist/transfer/workflow-transfer.types.js.map +1 -0
  182. package/dist/tsconfig.build.tsbuildinfo +1 -1
  183. package/dist/types/event-emitter.d.ts +12 -5
  184. package/dist/user/dto/user.dto.d.ts +1 -1
  185. package/dist/user/guards/ability.guard.js +12 -2
  186. package/dist/user/guards/ability.guard.js.map +1 -1
  187. package/dist/utils/test/fixtures/label-group.d.ts +1 -1
  188. package/dist/utils/test/fixtures/label.d.ts +1 -1
  189. package/dist/utils/test/fixtures/subscriber.d.ts +1 -1
  190. package/dist/utils/test/fixtures/workflow-run.js +4 -1
  191. package/dist/utils/test/fixtures/workflow-run.js.map +1 -1
  192. package/dist/utils/test/port.d.ts +8 -0
  193. package/dist/utils/test/port.js +34 -0
  194. package/dist/utils/test/port.js.map +1 -0
  195. package/dist/websocket/websocket.gateway.d.ts +2 -1
  196. package/dist/websocket/websocket.gateway.js.map +1 -1
  197. package/dist/workflow/contexts/workflow-runtime.context.d.ts +3 -1
  198. package/dist/workflow/contexts/workflow-runtime.context.js +5 -0
  199. package/dist/workflow/contexts/workflow-runtime.context.js.map +1 -1
  200. package/dist/workflow/controllers/workflow-run.controller.js +2 -0
  201. package/dist/workflow/controllers/workflow-run.controller.js.map +1 -1
  202. package/dist/workflow/dto/workflow-run.dto.d.ts +1 -0
  203. package/dist/workflow/dto/workflow-run.dto.js +11 -0
  204. package/dist/workflow/dto/workflow-run.dto.js.map +1 -1
  205. package/dist/workflow/entities/memory-record.entity.d.ts +2 -0
  206. package/dist/workflow/entities/workflow-run.entity.d.ts +62 -0
  207. package/dist/workflow/entities/workflow-run.entity.js +15 -1
  208. package/dist/workflow/entities/workflow-run.entity.js.map +1 -1
  209. package/dist/workflow/index.d.ts +7 -0
  210. package/dist/workflow/index.js +7 -0
  211. package/dist/workflow/index.js.map +1 -1
  212. package/dist/workflow/repositories/workflow-run.repository.js +7 -1
  213. package/dist/workflow/repositories/workflow-run.repository.js.map +1 -1
  214. package/dist/workflow/resource-refs.d.ts +17 -0
  215. package/dist/workflow/resource-refs.js +15 -0
  216. package/dist/workflow/resource-refs.js.map +1 -0
  217. package/dist/workflow/services/agentic.service.d.ts +9 -2
  218. package/dist/workflow/services/agentic.service.js +142 -19
  219. package/dist/workflow/services/agentic.service.js.map +1 -1
  220. package/dist/workflow/services/workflow-run.service.d.ts +3 -0
  221. package/dist/workflow/services/workflow-run.service.js +75 -3
  222. package/dist/workflow/services/workflow-run.service.js.map +1 -1
  223. package/dist/workflow/services/workflow-version.service.d.ts +2 -0
  224. package/dist/workflow/services/workflow-version.service.js +19 -0
  225. package/dist/workflow/services/workflow-version.service.js.map +1 -1
  226. package/dist/workflow/services/workflow.service.d.ts +13 -9
  227. package/dist/workflow/services/workflow.service.js +64 -35
  228. package/dist/workflow/services/workflow.service.js.map +1 -1
  229. package/dist/workflow/types.d.ts +31 -0
  230. package/dist/workflow/types.js +2 -1
  231. package/dist/workflow/types.js.map +1 -1
  232. package/dist/workflow/workflow.module.js +3 -0
  233. package/dist/workflow/workflow.module.js.map +1 -1
  234. package/package.json +7 -5
  235. package/src/actions/actions.service.ts +34 -4
  236. package/src/actions/types.ts +6 -5
  237. package/src/app.controller.ts +1 -0
  238. package/src/app.module.ts +17 -1
  239. package/src/config/index.ts +17 -2
  240. package/src/config/types.ts +9 -0
  241. package/src/extensions/actions/ai/agent.action.ts +6 -1
  242. package/src/extensions/actions/ai/ai-base.action.ts +39 -5
  243. package/src/extensions/actions/ai/generate-object.base.action.ts +3 -0
  244. package/src/extensions/actions/ai/generate-text.base.action.ts +3 -0
  245. package/src/extensions/actions/ai/mcp.binding.ts +2 -0
  246. package/src/extensions/actions/ai/memory.binding.ts +2 -0
  247. package/src/extensions/actions/ai/retrieve-content-rag.action.ts +2 -0
  248. package/src/extensions/actions/messaging/list.action.ts +7 -0
  249. package/src/extensions/actions/subscriber/update-labels.action.ts +3 -0
  250. package/src/extensions/actions/web/http-request.action.ts +17 -1
  251. package/src/extensions/actions/workflow/call-workflow.action.ts +112 -0
  252. package/src/extensions/actions/workflow/i18n/en.translations.json +9 -0
  253. package/src/extensions/actions/workflow/i18n/fr.translations.json +9 -0
  254. package/src/extensions/index.ts +2 -0
  255. package/src/index.ts +2 -0
  256. package/src/mcp/README.md +277 -0
  257. package/src/mcp/controllers/mcp-token.controller.ts +64 -0
  258. package/src/mcp/decorators/mcp-permission.decorator.ts +23 -0
  259. package/src/mcp/dto/mcp-token.dto.ts +48 -0
  260. package/src/mcp/entities/mcp-token.entity.ts +60 -0
  261. package/src/mcp/guards/hexabot-mcp-token.guard.ts +55 -0
  262. package/src/mcp/guards/mcp-permission.guard.ts +61 -0
  263. package/src/mcp/mcp-api.module.ts +61 -0
  264. package/src/mcp/repositories/mcp-token.repository.ts +34 -0
  265. package/src/mcp/services/mcp-token.service.ts +138 -0
  266. package/src/mcp/tools/catalog-mcp.tools.ts +122 -0
  267. package/src/mcp/tools/cms-mcp.tools.ts +239 -0
  268. package/src/mcp/tools/credential-mcp.tools.ts +81 -0
  269. package/src/mcp/tools/hexabot-mcp-tool.base.ts +74 -0
  270. package/src/mcp/tools/hexabot-mcp.schemas.ts +55 -0
  271. package/src/mcp/tools/hexabot-mcp.tools.ts +7 -0
  272. package/src/mcp/tools/hexabot-mcp.utils.ts +29 -0
  273. package/src/mcp/tools/index.ts +51 -0
  274. package/src/mcp/tools/mcp-server-mcp.tools.ts +135 -0
  275. package/src/mcp/tools/memory-definition-mcp.tools.ts +125 -0
  276. package/src/mcp/tools/workflow-mcp.helper.ts +219 -0
  277. package/src/mcp/tools/workflow-mcp.tools.ts +271 -0
  278. package/src/mcp/tools/workflow-run-mcp.tools.ts +292 -0
  279. package/src/mcp/tools/workflow-version-mcp.tools.ts +459 -0
  280. package/src/mcp/types.ts +14 -0
  281. package/src/transfer/adapters/content-type-transfer.adapter.ts +154 -0
  282. package/src/transfer/adapters/credential-transfer.adapter.ts +158 -0
  283. package/src/transfer/adapters/label-transfer.adapter.ts +291 -0
  284. package/src/transfer/adapters/mcp-server-transfer.adapter.ts +255 -0
  285. package/src/transfer/adapters/memory-definition-transfer.adapter.ts +167 -0
  286. package/src/transfer/index.ts +19 -0
  287. package/src/transfer/workflow-transfer-adapter.registry.ts +250 -0
  288. package/src/transfer/workflow-transfer-definition.service.ts +587 -0
  289. package/src/transfer/workflow-transfer-resource-adapter.ts +132 -0
  290. package/src/transfer/workflow-transfer.controller.ts +86 -0
  291. package/src/transfer/workflow-transfer.module.ts +46 -0
  292. package/src/transfer/workflow-transfer.service.ts +858 -0
  293. package/src/transfer/workflow-transfer.types.ts +98 -0
  294. package/src/user/guards/ability.guard.ts +15 -3
  295. package/src/utils/test/fixtures/workflow-run.ts +4 -1
  296. package/src/utils/test/port.ts +48 -0
  297. package/src/websocket/websocket.gateway.ts +2 -1
  298. package/src/workflow/contexts/workflow-runtime.context.ts +12 -1
  299. package/src/workflow/controllers/workflow-run.controller.ts +2 -0
  300. package/src/workflow/dto/workflow-run.dto.ts +10 -0
  301. package/src/workflow/entities/workflow-run.entity.ts +22 -1
  302. package/src/workflow/index.ts +14 -0
  303. package/src/workflow/repositories/workflow-run.repository.ts +7 -1
  304. package/src/workflow/resource-refs.ts +44 -0
  305. package/src/workflow/services/agentic.service.ts +271 -30
  306. package/src/workflow/services/workflow-run.service.ts +120 -7
  307. package/src/workflow/services/workflow-version.service.ts +33 -0
  308. package/src/workflow/services/workflow.service.ts +86 -31
  309. package/src/workflow/types.ts +52 -0
  310. package/src/workflow/workflow.module.ts +3 -0
  311. package/types/event-emitter.d.ts +12 -5
@@ -0,0 +1,509 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.WorkflowTransferService = void 0;
16
+ const agentic_1 = require("@hexabot-ai/agentic");
17
+ const types_1 = require("@hexabot-ai/types");
18
+ const common_1 = require("@nestjs/common");
19
+ const event_emitter_1 = require("@nestjs/event-emitter");
20
+ const sanitize_filename_1 = __importDefault(require("sanitize-filename"));
21
+ const typeorm_1 = require("typeorm");
22
+ const yaml_1 = require("yaml");
23
+ const base_orm_repository_1 = require("../utils/generics/base-orm.repository");
24
+ const workflow_entity_1 = require("../workflow/entities/workflow.entity");
25
+ const workflow_version_service_1 = require("../workflow/services/workflow-version.service");
26
+ const workflow_service_1 = require("../workflow/services/workflow.service");
27
+ const types_2 = require("../workflow/types");
28
+ const workflow_transfer_adapter_registry_1 = require("./workflow-transfer-adapter.registry");
29
+ const workflow_transfer_definition_service_1 = require("./workflow-transfer-definition.service");
30
+ const workflow_transfer_resource_adapter_1 = require("./workflow-transfer-resource-adapter");
31
+ const workflow_transfer_types_1 = require("./workflow-transfer.types");
32
+ const WORKFLOW_RESOURCE_KIND = 'workflow';
33
+ const WORKFLOW_RESOURCE_KEY = 'workflows';
34
+ let WorkflowTransferService = class WorkflowTransferService {
35
+ constructor(dataSource, eventEmitter, workflowService, workflowVersionService, workflowTransferDefinitionService, workflowTransferAdapterRegistry) {
36
+ this.dataSource = dataSource;
37
+ this.eventEmitter = eventEmitter;
38
+ this.workflowService = workflowService;
39
+ this.workflowVersionService = workflowVersionService;
40
+ this.workflowTransferDefinitionService = workflowTransferDefinitionService;
41
+ this.workflowTransferAdapterRegistry = workflowTransferAdapterRegistry;
42
+ }
43
+ async exportWorkflow(id) {
44
+ const workflow = await this.workflowService.findOneAndPopulate(id);
45
+ if (!workflow) {
46
+ throw new common_1.NotFoundException(`Workflow with ID ${id} not found`);
47
+ }
48
+ const version = workflow.currentVersion;
49
+ if (!version?.definitionYml) {
50
+ throw new common_1.BadRequestException('Workflow must have a current version to be exported');
51
+ }
52
+ const definition = this.workflowTransferDefinitionService.parseWithLocalCatalog(version.definitionYml);
53
+ const dependencyExport = await this.buildWorkflowDependencyResources(workflow.id, definition);
54
+ const { bindingRefs, taskRefs } = this.collectDefinitionResourceRefs([
55
+ definition,
56
+ ...dependencyExport.definitions,
57
+ ]);
58
+ const resources = await this.buildExportResources(this.withoutResourceKind(bindingRefs, WORKFLOW_RESOURCE_KIND), this.withoutResourceKind(taskRefs, WORKFLOW_RESOURCE_KIND));
59
+ resources[WORKFLOW_RESOURCE_KEY] =
60
+ dependencyExport.resources;
61
+ const bundle = {
62
+ kind: types_1.WORKFLOW_EXPORT_BUNDLE_KIND,
63
+ schemaVersion: 1,
64
+ exportedAt: new Date().toISOString(),
65
+ workflow: {
66
+ exportId: workflow.id,
67
+ name: workflow.name,
68
+ description: workflow.description ?? null,
69
+ type: workflow.type,
70
+ schedule: workflow.schedule ?? null,
71
+ inputSchema: workflow.inputSchema,
72
+ layout: {
73
+ x: workflow.x,
74
+ y: workflow.y,
75
+ zoom: workflow.zoom,
76
+ direction: workflow.direction,
77
+ },
78
+ },
79
+ version: {
80
+ number: version.version,
81
+ checksum: version.checksum,
82
+ message: version.message ?? null,
83
+ exportedVersionId: version.id,
84
+ },
85
+ definitionYml: version.definitionYml,
86
+ resources,
87
+ };
88
+ return {
89
+ filename: this.buildExportFilename(workflow.name),
90
+ content: (0, yaml_1.stringify)(types_1.workflowExportBundleSchema.parse(bundle), {
91
+ lineWidth: 0,
92
+ }),
93
+ };
94
+ }
95
+ async importWorkflow(content, createdBy) {
96
+ const bundle = this.parseBundle(content);
97
+ this.assertUniqueWorkflowExportIds(bundle);
98
+ const definition = this.workflowTransferDefinitionService.parseWithLocalCatalog(bundle.definitionYml);
99
+ const sources = this.parseWorkflowImportSources(bundle, definition);
100
+ const { bindingRefs, taskRefs } = this.collectDefinitionResourceRefs(sources.map((source) => source.definition));
101
+ this.assertBundleResourceBucketsAreSupported(bundle.resources);
102
+ this.assertBundleContainsReferencedResources(bundle, bindingRefs, taskRefs);
103
+ const { workflowId, resources, warnings, postCreateEvents } = await this.dataSource.transaction(async (manager) => {
104
+ const importedResources = await this.importResources(manager, bundle.resources, createdBy);
105
+ const importedWorkflows = await this.importWorkflowDefinitions(manager, sources, importedResources, createdBy);
106
+ return {
107
+ workflowId: importedWorkflows.rootWorkflowId,
108
+ resources: [
109
+ ...importedResources.resources,
110
+ ...importedWorkflows.resources,
111
+ ],
112
+ warnings: importedResources.warnings,
113
+ postCreateEvents: [
114
+ ...importedResources.postCreateEvents,
115
+ ...importedWorkflows.postCreateEvents,
116
+ ],
117
+ };
118
+ });
119
+ await this.emitPostCreateEvents(postCreateEvents);
120
+ const workflow = await this.workflowService.findOne(workflowId);
121
+ if (!workflow) {
122
+ throw new Error(`Unable to load imported workflow ${workflowId}`);
123
+ }
124
+ return types_1.workflowImportResultSchema.parse({
125
+ workflow,
126
+ resources,
127
+ warnings,
128
+ });
129
+ }
130
+ parseBundle(content) {
131
+ let parsed;
132
+ try {
133
+ parsed = (0, yaml_1.parse)(content);
134
+ }
135
+ catch (error) {
136
+ throw new common_1.BadRequestException(error instanceof Error ? error.message : 'Invalid workflow bundle YAML');
137
+ }
138
+ const validation = types_1.workflowExportBundleSchema.safeParse(parsed);
139
+ if (!validation.success) {
140
+ throw new common_1.BadRequestException(validation.error.issues
141
+ .map((issue) => `${issue.path.join('.')}: ${issue.message}`)
142
+ .join('; '));
143
+ }
144
+ return validation.data;
145
+ }
146
+ async buildWorkflowDependencyResources(rootWorkflowId, rootDefinition) {
147
+ const resources = [];
148
+ const definitions = [];
149
+ const visitedWorkflowIds = new Set([rootWorkflowId]);
150
+ const pendingWorkflowIds = [
151
+ ...this.getWorkflowRefsFromDefinition(rootDefinition),
152
+ ];
153
+ for (let index = 0; index < pendingWorkflowIds.length; index += 1) {
154
+ const workflowId = pendingWorkflowIds[index];
155
+ if (visitedWorkflowIds.has(workflowId)) {
156
+ continue;
157
+ }
158
+ visitedWorkflowIds.add(workflowId);
159
+ const { workflow, version } = await this.loadWorkflowDependencyForExport(workflowId);
160
+ const definition = this.workflowTransferDefinitionService.parseWithLocalCatalog(version.definitionYml);
161
+ resources.push(this.buildWorkflowDependencyExportResource(workflow, version));
162
+ definitions.push(definition);
163
+ pendingWorkflowIds.push(...this.getWorkflowRefsFromDefinition(definition));
164
+ }
165
+ return { resources, definitions };
166
+ }
167
+ async loadWorkflowDependencyForExport(workflowId) {
168
+ const workflow = await this.workflowService.findOneAndPopulate(workflowId);
169
+ if (!workflow) {
170
+ throw new common_1.BadRequestException(`Unable to export workflow: missing workflow(s): ${workflowId}`);
171
+ }
172
+ const version = workflow.currentVersion;
173
+ if (!version?.definitionYml) {
174
+ throw new common_1.BadRequestException(`Called workflow "${workflow.name}" must have a current version to be exported`);
175
+ }
176
+ return { workflow, version };
177
+ }
178
+ buildWorkflowDependencyExportResource(workflow, version) {
179
+ const { exportId: _exportId, ...workflowMetadata } = this.buildWorkflowExportMetadata(workflow);
180
+ return {
181
+ exportId: workflow.id,
182
+ workflow: workflowMetadata,
183
+ version: this.buildWorkflowVersionExportMetadata(version),
184
+ definitionYml: version.definitionYml,
185
+ };
186
+ }
187
+ buildWorkflowExportMetadata(workflow) {
188
+ return {
189
+ exportId: workflow.id,
190
+ name: workflow.name,
191
+ description: workflow.description ?? null,
192
+ type: workflow.type,
193
+ schedule: workflow.schedule ?? null,
194
+ inputSchema: workflow.inputSchema,
195
+ layout: {
196
+ x: workflow.x,
197
+ y: workflow.y,
198
+ zoom: workflow.zoom,
199
+ direction: workflow.direction,
200
+ },
201
+ };
202
+ }
203
+ buildWorkflowVersionExportMetadata(version) {
204
+ return {
205
+ number: version.version,
206
+ checksum: version.checksum,
207
+ message: version.message ?? null,
208
+ exportedVersionId: version.id,
209
+ };
210
+ }
211
+ getWorkflowRefsFromDefinition(definition) {
212
+ return (this.workflowTransferDefinitionService.collectTaskResourceRefs(definition)[WORKFLOW_RESOURCE_KIND] ?? []);
213
+ }
214
+ collectDefinitionResourceRefs(definitions) {
215
+ let bindingRefs = {};
216
+ let taskRefs = {};
217
+ for (const definition of definitions) {
218
+ bindingRefs = this.mergeResourceRefs(bindingRefs, this.workflowTransferDefinitionService.collectBindingResourceRefs(definition));
219
+ taskRefs = this.mergeResourceRefs(taskRefs, this.workflowTransferDefinitionService.collectTaskResourceRefs(definition));
220
+ }
221
+ return {
222
+ bindingRefs,
223
+ taskRefs,
224
+ };
225
+ }
226
+ parseWorkflowImportSources(bundle, rootDefinition) {
227
+ return [
228
+ {
229
+ exportId: bundle.workflow.exportId,
230
+ workflow: bundle.workflow,
231
+ version: bundle.version,
232
+ definitionYml: bundle.definitionYml,
233
+ definition: rootDefinition,
234
+ isRoot: true,
235
+ },
236
+ ...bundle.resources.workflows.map((resource) => ({
237
+ exportId: resource.exportId,
238
+ workflow: resource.workflow,
239
+ version: resource.version,
240
+ definitionYml: resource.definitionYml,
241
+ definition: this.workflowTransferDefinitionService.parseWithLocalCatalog(resource.definitionYml),
242
+ isRoot: false,
243
+ })),
244
+ ];
245
+ }
246
+ assertUniqueWorkflowExportIds(bundle) {
247
+ const seen = new Set();
248
+ const exportIds = [
249
+ bundle.workflow.exportId,
250
+ ...bundle.resources.workflows.map((workflow) => workflow.exportId),
251
+ ].filter((id) => typeof id === 'string' && id.length > 0);
252
+ for (const exportId of exportIds) {
253
+ if (seen.has(exportId)) {
254
+ throw new common_1.BadRequestException(`Workflow bundle contains duplicate workflow export ID "${exportId}"`);
255
+ }
256
+ seen.add(exportId);
257
+ }
258
+ }
259
+ async importWorkflowDefinitions(manager, sources, importedResources, createdBy) {
260
+ const importedWorkflows = [];
261
+ const workflowIdMap = {};
262
+ const resources = [];
263
+ const postCreateEvents = [];
264
+ for (const source of sources) {
265
+ const localName = await this.buildImportedWorkflowName(manager, source.workflow.name);
266
+ const workflowPayload = this.buildImportedWorkflowPayload(source.workflow, localName, createdBy);
267
+ const workflowEntity = await this.workflowService.createWithManager(manager, workflowPayload);
268
+ if (source.exportId) {
269
+ workflowIdMap[source.exportId] = workflowEntity.id;
270
+ }
271
+ if (!source.isRoot && source.exportId) {
272
+ resources.push((0, workflow_transfer_types_1.buildResourceResult)({
273
+ kind: WORKFLOW_RESOURCE_KIND,
274
+ exportId: source.exportId,
275
+ localId: workflowEntity.id,
276
+ name: localName,
277
+ action: 'created',
278
+ }));
279
+ }
280
+ postCreateEvents.push((0, workflow_transfer_types_1.buildPostCreateEvent)('workflow', workflowEntity, workflowPayload));
281
+ importedWorkflows.push({
282
+ ...source,
283
+ localId: workflowEntity.id,
284
+ localName,
285
+ workflowEntity,
286
+ workflowPayload,
287
+ });
288
+ }
289
+ for (const importedWorkflow of importedWorkflows) {
290
+ const definitionYml = this.buildImportedDefinitionYml(importedWorkflow.definition, importedResources, workflowIdMap);
291
+ const workflowVersionPayload = {
292
+ workflow: importedWorkflow.localId,
293
+ definitionYml,
294
+ action: types_2.WorkflowVersionAction.import,
295
+ message: importedWorkflow.version.message ??
296
+ `Imported from workflow version ${importedWorkflow.version.number}`,
297
+ parentVersion: null,
298
+ createdBy,
299
+ };
300
+ const workflowVersion = await this.workflowVersionService.createSnapshotWithManager(manager, workflowVersionPayload);
301
+ postCreateEvents.push((0, workflow_transfer_types_1.buildPostCreateEvent)('workflowVersion', workflowVersion, workflowVersionPayload));
302
+ }
303
+ const rootWorkflow = importedWorkflows.find((workflow) => workflow.isRoot);
304
+ if (!rootWorkflow) {
305
+ throw new Error('Imported workflow bundle is missing a root workflow');
306
+ }
307
+ return {
308
+ rootWorkflowId: rootWorkflow.localId,
309
+ resources,
310
+ postCreateEvents,
311
+ };
312
+ }
313
+ buildImportedWorkflowPayload(workflow, name, createdBy) {
314
+ return {
315
+ name,
316
+ description: workflow.description ?? undefined,
317
+ type: workflow.type,
318
+ schedule: workflow.schedule,
319
+ inputSchema: workflow.inputSchema,
320
+ builtin: false,
321
+ x: workflow.layout.x,
322
+ y: workflow.layout.y,
323
+ zoom: workflow.layout.zoom,
324
+ direction: workflow.layout.direction,
325
+ createdBy,
326
+ };
327
+ }
328
+ buildImportedDefinitionYml(definition, importedResources, workflowIdMap) {
329
+ const remappedBindingDefinition = this.workflowTransferDefinitionService.remapBindingResourceRefs(definition, importedResources.bindingIdMaps);
330
+ const remappedDefinition = this.workflowTransferDefinitionService.remapTaskResourceRefs(remappedBindingDefinition, {
331
+ ...importedResources.taskIdMaps,
332
+ [WORKFLOW_RESOURCE_KIND]: workflowIdMap,
333
+ });
334
+ const definitionYml = agentic_1.Workflow.stringifyDefinition(remappedDefinition);
335
+ this.workflowTransferDefinitionService.parseWithLocalCatalog(definitionYml);
336
+ return definitionYml;
337
+ }
338
+ async buildExportResources(bindingRefs, taskRefs) {
339
+ const resources = this.createEmptyResourceBuckets();
340
+ const exportContext = new workflow_transfer_resource_adapter_1.WorkflowTransferExportContext(this.mergeResourceRefs(bindingRefs, taskRefs));
341
+ for (const adapter of this.workflowTransferAdapterRegistry.listInReverseDependencyOrder()) {
342
+ const adapterResources = await adapter.buildExportResources(exportContext);
343
+ this.mergeAdapterResources(resources, adapter, adapterResources);
344
+ }
345
+ return resources;
346
+ }
347
+ assertBundleContainsReferencedResources(bundle, refs, taskRefs) {
348
+ const mergedRefs = this.mergeResourceRefs(refs, taskRefs);
349
+ const workflowRefs = mergedRefs[WORKFLOW_RESOURCE_KIND] ?? [];
350
+ if (workflowRefs.length > 0) {
351
+ this.assertRefsAreBundled(WORKFLOW_RESOURCE_KIND, workflowRefs, this.getBundledWorkflowExportIds(bundle));
352
+ }
353
+ for (const [kind, resourceRefs] of Object.entries(this.withoutResourceKind(mergedRefs, WORKFLOW_RESOURCE_KIND))) {
354
+ if (resourceRefs.length === 0) {
355
+ continue;
356
+ }
357
+ const adapter = this.workflowTransferAdapterRegistry.get(kind);
358
+ if (!adapter) {
359
+ throw new common_1.BadRequestException(`Workflow bundle references unsupported resource kind "${kind}"`);
360
+ }
361
+ this.assertRefsAreBundled(kind, resourceRefs, this.getBundledExportIds(bundle.resources, adapter.resourceKeys[0]));
362
+ }
363
+ }
364
+ assertRefsAreBundled(resourceLabel, refs, bundledIds) {
365
+ const bundled = new Set(bundledIds);
366
+ const missing = Array.from(new Set(refs)).filter((id) => !bundled.has(id));
367
+ if (missing.length > 0) {
368
+ throw new common_1.BadRequestException(`Workflow bundle is missing referenced ${resourceLabel}(s): ${missing.join(', ')}`);
369
+ }
370
+ }
371
+ assertBundleResourceBucketsAreSupported(resources) {
372
+ const supportedResourceKeys = new Set([
373
+ ...this.workflowTransferAdapterRegistry.getResourceKeys(),
374
+ WORKFLOW_RESOURCE_KEY,
375
+ ]);
376
+ for (const [key, value] of Object.entries(resources)) {
377
+ if (supportedResourceKeys.has(key) || value.length === 0) {
378
+ continue;
379
+ }
380
+ throw new common_1.BadRequestException(`Workflow bundle contains unsupported resource section "${key}"`);
381
+ }
382
+ }
383
+ createEmptyResourceBuckets() {
384
+ return Object.fromEntries(this.workflowTransferAdapterRegistry
385
+ .listInDependencyOrder()
386
+ .flatMap((adapter) => adapter.resourceKeys.map((resourceKey) => [
387
+ resourceKey,
388
+ [],
389
+ ])));
390
+ }
391
+ mergeAdapterResources(resources, adapter, adapterResources) {
392
+ const declaredResourceKeys = new Set(adapter.resourceKeys);
393
+ for (const [key, value] of Object.entries(adapterResources)) {
394
+ if (!declaredResourceKeys.has(key)) {
395
+ throw new Error(`Workflow transfer adapter "${adapter.kind}" returned undeclared resource key "${key}"`);
396
+ }
397
+ if (!Array.isArray(value)) {
398
+ throw new Error(`Workflow transfer adapter "${adapter.kind}" returned non-array resources for "${key}"`);
399
+ }
400
+ resources[key] = value;
401
+ }
402
+ for (const resourceKey of adapter.resourceKeys) {
403
+ resources[resourceKey] ??= [];
404
+ }
405
+ }
406
+ mergeResourceRefs(refs, taskRefs) {
407
+ const merged = new Map();
408
+ for (const refSet of [refs, taskRefs]) {
409
+ for (const [kind, ids] of Object.entries(refSet)) {
410
+ const kindRefs = merged.get(kind) ?? new Set();
411
+ for (const id of ids) {
412
+ kindRefs.add(id);
413
+ }
414
+ merged.set(kind, kindRefs);
415
+ }
416
+ }
417
+ return Object.fromEntries(Array.from(merged.entries()).map(([kind, ids]) => [
418
+ kind,
419
+ Array.from(ids),
420
+ ]));
421
+ }
422
+ withoutResourceKind(refs, ignoredKind) {
423
+ return Object.fromEntries(Object.entries(refs).filter(([kind]) => kind !== ignoredKind));
424
+ }
425
+ getBundledWorkflowExportIds(bundle) {
426
+ return [
427
+ bundle.workflow.exportId,
428
+ ...bundle.resources.workflows.map((workflow) => workflow.exportId),
429
+ ].filter((id) => typeof id === 'string' && id.length > 0);
430
+ }
431
+ getBundledExportIds(resources, resourceKey) {
432
+ const resourceBucket = resources[resourceKey];
433
+ return (resourceBucket ?? []).flatMap((resource) => {
434
+ if (typeof resource === 'object' &&
435
+ resource !== null &&
436
+ 'exportId' in resource &&
437
+ typeof resource.exportId === 'string') {
438
+ return [resource.exportId];
439
+ }
440
+ return [];
441
+ });
442
+ }
443
+ async importResources(manager, resources, ownerId) {
444
+ const adapters = this.workflowTransferAdapterRegistry.listInDependencyOrder();
445
+ const importContext = new workflow_transfer_resource_adapter_1.WorkflowTransferImportContext(manager, resources, ownerId);
446
+ for (const adapter of adapters) {
447
+ importContext.addResult(adapter.kind, await adapter.importResources(importContext));
448
+ }
449
+ const results = importContext.getResultsInOrder(adapters.map((adapter) => adapter.kind));
450
+ const idMaps = importContext.getIdMaps();
451
+ return {
452
+ bindingIdMaps: idMaps,
453
+ taskIdMaps: idMaps,
454
+ resources: results.flatMap((result) => result.resources),
455
+ warnings: results.flatMap((result) => result.warnings),
456
+ postCreateEvents: results.flatMap((result) => result.postCreateEvents),
457
+ };
458
+ }
459
+ async emitPostCreateEvents(events) {
460
+ for (const event of events) {
461
+ await this.eventEmitter.emitAsync(`hook:${event.entityName}:postCreate`, {
462
+ action: base_orm_repository_1.EHook.postCreate,
463
+ entity: event.entity,
464
+ payload: event.payload,
465
+ entityName: event.entityName,
466
+ });
467
+ }
468
+ }
469
+ async buildImportedWorkflowName(manager, sourceName) {
470
+ const baseName = sourceName.trim() || 'Imported workflow';
471
+ const suffixes = [
472
+ '',
473
+ ' (imported)',
474
+ ...Array.from({ length: 999 }, (_, index) => {
475
+ return ` (imported ${index + 2})`;
476
+ }),
477
+ ];
478
+ for (const suffix of suffixes) {
479
+ const normalized = this.truncateWorkflowName(baseName, suffix);
480
+ const existing = await manager.findOne(workflow_entity_1.WorkflowOrmEntity, {
481
+ where: { name: normalized },
482
+ });
483
+ if (!existing) {
484
+ return normalized;
485
+ }
486
+ }
487
+ throw new common_1.ConflictException('Unable to generate a unique workflow name');
488
+ }
489
+ truncateWorkflowName(name, suffix = '') {
490
+ const maxBaseLength = Math.max(1, 255 - suffix.length);
491
+ const normalizedBase = name.length <= maxBaseLength ? name : name.slice(0, maxBaseLength);
492
+ return `${normalizedBase}${suffix}`;
493
+ }
494
+ buildExportFilename(name) {
495
+ const safeName = (0, sanitize_filename_1.default)(name.trim()) || 'workflow';
496
+ return `${safeName}.workflow.yml`;
497
+ }
498
+ };
499
+ exports.WorkflowTransferService = WorkflowTransferService;
500
+ exports.WorkflowTransferService = WorkflowTransferService = __decorate([
501
+ (0, common_1.Injectable)(),
502
+ __metadata("design:paramtypes", [typeorm_1.DataSource,
503
+ event_emitter_1.EventEmitter2,
504
+ workflow_service_1.WorkflowService,
505
+ workflow_version_service_1.WorkflowVersionService,
506
+ workflow_transfer_definition_service_1.WorkflowTransferDefinitionService,
507
+ workflow_transfer_adapter_registry_1.WorkflowTransferAdapterRegistry])
508
+ ], WorkflowTransferService);
509
+ //# sourceMappingURL=workflow-transfer.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-transfer.service.js","sourceRoot":"","sources":["../../src/transfer/workflow-transfer.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { WorkflowImportResourceResult } from '@hexabot-ai/types';
2
+ import { BaseOrmEntity } from "../database/entities/base.entity";
3
+ export declare const PLACEHOLDER_CREDENTIAL_VALUE = "__HEXABOT_IMPORTED_CREDENTIAL_PLACEHOLDER__";
4
+ export type WorkflowTransferPostCreateEvent<Entity extends BaseOrmEntity<any> = BaseOrmEntity<any>> = {
5
+ entityName: string;
6
+ entity: Entity;
7
+ payload: unknown;
8
+ };
9
+ export type WorkflowTransferImportAdapterResult = {
10
+ idMap: Record<string, string>;
11
+ resources: WorkflowImportResourceResult[];
12
+ warnings: string[];
13
+ postCreateEvents: WorkflowTransferPostCreateEvent[];
14
+ metadata?: Record<string, unknown>;
15
+ };
16
+ export type WorkflowTransferResourceIdMaps = Record<string, Record<string, string>>;
17
+ export type ImportedWorkflowTransferResources = {
18
+ bindingIdMaps: WorkflowTransferResourceIdMaps;
19
+ taskIdMaps: WorkflowTransferResourceIdMaps;
20
+ resources: WorkflowImportResourceResult[];
21
+ warnings: string[];
22
+ postCreateEvents: WorkflowTransferPostCreateEvent[];
23
+ };
24
+ type ResourceActionInput = Omit<WorkflowImportResourceResult, 'localId'> & {
25
+ localId?: string;
26
+ };
27
+ export declare const uniqueResourceIds: (ids: string[]) => string[];
28
+ export declare const assertFoundAll: (resourceLabel: string, expectedIds: string[], foundIds: string[]) => void;
29
+ export declare const buildResourceResult: (input: ResourceActionInput) => WorkflowImportResourceResult;
30
+ export declare const buildPostCreateEvent: <Entity extends BaseOrmEntity<any>>(entityName: string, entity: Entity, payload: unknown) => WorkflowTransferPostCreateEvent<Entity>;
31
+ export {};
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildPostCreateEvent = exports.buildResourceResult = exports.assertFoundAll = exports.uniqueResourceIds = exports.PLACEHOLDER_CREDENTIAL_VALUE = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ exports.PLACEHOLDER_CREDENTIAL_VALUE = '__HEXABOT_IMPORTED_CREDENTIAL_PLACEHOLDER__';
6
+ const uniqueResourceIds = (ids) => {
7
+ return Array.from(new Set(ids));
8
+ };
9
+ exports.uniqueResourceIds = uniqueResourceIds;
10
+ const assertFoundAll = (resourceLabel, expectedIds, foundIds) => {
11
+ const found = new Set(foundIds);
12
+ const missing = expectedIds.filter((id) => !found.has(id));
13
+ if (missing.length > 0) {
14
+ throw new common_1.BadRequestException(`Unable to export workflow: missing ${resourceLabel}(s): ${missing.join(', ')}`);
15
+ }
16
+ };
17
+ exports.assertFoundAll = assertFoundAll;
18
+ const buildResourceResult = (input) => {
19
+ if (!input.localId) {
20
+ throw new Error(`Missing local ID for imported ${input.kind}`);
21
+ }
22
+ return {
23
+ kind: input.kind,
24
+ exportId: input.exportId,
25
+ localId: input.localId,
26
+ name: input.name,
27
+ action: input.action,
28
+ };
29
+ };
30
+ exports.buildResourceResult = buildResourceResult;
31
+ const buildPostCreateEvent = (entityName, entity, payload) => {
32
+ return { entityName, entity, payload };
33
+ };
34
+ exports.buildPostCreateEvent = buildPostCreateEvent;
35
+ //# sourceMappingURL=workflow-transfer.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-transfer.types.js","sourceRoot":"","sources":["../../src/transfer/workflow-transfer.types.ts"],"names":[],"mappings":";;;AAOA,2CAAqD;AAYxC,QAAA,4BAA4B,GACvC,6CAA6C,CAAC;AAmCzC,MAAM,iBAAiB,GAAG,CAAC,GAAa,EAAY,EAAE;IAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEK,MAAM,cAAc,GAAG,CAC5B,aAAqB,EACrB,WAAqB,EACrB,QAAkB,EACZ,EAAE;IACR,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,4BAAmB,CAC3B,sCAAsC,aAAa,QAAQ,OAAO,CAAC,IAAI,CACrE,IAAI,CACL,EAAE,CACJ,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAdW,QAAA,cAAc,kBAczB;AAEK,MAAM,mBAAmB,GAAG,CACjC,KAA0B,EACI,EAAE;IAChC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,mBAAmB,uBAc9B;AAEK,MAAM,oBAAoB,GAAG,CAClC,UAAkB,EAClB,MAAc,EACd,OAAgB,EACyB,EAAE;IAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B"}