@vertesia/workflow 1.3.0 → 1.4.0-dev.20260615.042549Z

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 (703) hide show
  1. package/README.md +1 -2
  2. package/lib/{types/activities → activities}/advanced/createDocumentTypeFromInteractionRun.d.ts +2 -2
  3. package/lib/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +1 -0
  4. package/lib/{esm/activities → activities}/advanced/createDocumentTypeFromInteractionRun.js +9 -9
  5. package/lib/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -0
  6. package/lib/{types/activities → activities}/advanced/createOrUpdateDocumentFromInteractionRun.d.ts +2 -2
  7. package/lib/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +1 -0
  8. package/lib/{esm/activities → activities}/advanced/createOrUpdateDocumentFromInteractionRun.js +29 -22
  9. package/lib/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -0
  10. package/lib/{types/activities → activities}/advanced/updateDocumentFromInteractionRun.d.ts +1 -1
  11. package/lib/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +1 -0
  12. package/lib/activities/advanced/updateDocumentFromInteractionRun.js +16 -0
  13. package/lib/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -0
  14. package/lib/{types/activities → activities}/chunkDocument.d.ts +3 -3
  15. package/lib/activities/chunkDocument.d.ts.map +1 -0
  16. package/lib/{esm/activities → activities}/chunkDocument.js +38 -33
  17. package/lib/activities/chunkDocument.js.map +1 -0
  18. package/lib/{types/activities → activities}/createDocumentFromOther.d.ts +1 -1
  19. package/lib/activities/createDocumentFromOther.d.ts.map +1 -0
  20. package/lib/{esm/activities → activities}/createDocumentFromOther.js +15 -13
  21. package/lib/activities/createDocumentFromOther.js.map +1 -0
  22. package/lib/{types/activities → activities}/executeInteraction.d.ts +19 -10
  23. package/lib/activities/executeInteraction.d.ts.map +1 -0
  24. package/lib/{esm/activities → activities}/executeInteraction.js +97 -78
  25. package/lib/activities/executeInteraction.js.map +1 -0
  26. package/lib/{types/activities → activities}/executeRemoteActivity.d.ts +4 -4
  27. package/lib/activities/executeRemoteActivity.d.ts.map +1 -0
  28. package/lib/{esm/activities → activities}/executeRemoteActivity.js +48 -23
  29. package/lib/activities/executeRemoteActivity.js.map +1 -0
  30. package/lib/{types/activities → activities}/extractDocumentText.d.ts +3 -3
  31. package/lib/activities/extractDocumentText.d.ts.map +1 -0
  32. package/lib/{esm/activities → activities}/extractDocumentText.js +65 -52
  33. package/lib/activities/extractDocumentText.js.map +1 -0
  34. package/lib/{types/activities → activities}/generateDocumentProperties.d.ts +4 -4
  35. package/lib/activities/generateDocumentProperties.d.ts.map +1 -0
  36. package/lib/{esm/activities → activities}/generateDocumentProperties.js +37 -33
  37. package/lib/activities/generateDocumentProperties.js.map +1 -0
  38. package/lib/{types/activities → activities}/generateEmbeddings.d.ts +3 -3
  39. package/lib/activities/generateEmbeddings.d.ts.map +1 -0
  40. package/lib/{esm/activities → activities}/generateEmbeddings.js +80 -80
  41. package/lib/activities/generateEmbeddings.js.map +1 -0
  42. package/lib/{types/activities → activities}/generateOrAssignContentType.d.ts +4 -4
  43. package/lib/activities/generateOrAssignContentType.d.ts.map +1 -0
  44. package/lib/{esm/activities → activities}/generateOrAssignContentType.js +51 -49
  45. package/lib/activities/generateOrAssignContentType.js.map +1 -0
  46. package/lib/{types/activities → activities}/getObjectFromStore.d.ts +1 -1
  47. package/lib/activities/getObjectFromStore.d.ts.map +1 -0
  48. package/lib/{esm/activities → activities}/getObjectFromStore.js +4 -3
  49. package/lib/activities/getObjectFromStore.js.map +1 -0
  50. package/lib/{types/activities → activities}/handleError.d.ts +1 -1
  51. package/lib/activities/handleError.d.ts.map +1 -0
  52. package/lib/activities/handleError.js +37 -0
  53. package/lib/activities/handleError.js.map +1 -0
  54. package/lib/activities/index-dsl.d.ts +31 -0
  55. package/lib/activities/index-dsl.d.ts.map +1 -0
  56. package/lib/activities/index-dsl.js +29 -0
  57. package/lib/activities/index-dsl.js.map +1 -0
  58. package/lib/{types/activities → activities}/index.d.ts +1 -1
  59. package/lib/activities/index.d.ts.map +1 -0
  60. package/lib/{esm/activities → activities}/index.js +1 -1
  61. package/lib/activities/index.js.map +1 -0
  62. package/lib/{types/activities → activities}/loadChildWorkflowSpec.d.ts +1 -1
  63. package/lib/activities/loadChildWorkflowSpec.d.ts.map +1 -0
  64. package/lib/{esm/activities → activities}/loadChildWorkflowSpec.js +4 -2
  65. package/lib/activities/loadChildWorkflowSpec.js.map +1 -0
  66. package/lib/{types/activities → activities}/media/prepareAudio.d.ts +1 -1
  67. package/lib/activities/media/prepareAudio.d.ts.map +1 -0
  68. package/lib/{esm/activities → activities}/media/prepareAudio.js +27 -23
  69. package/lib/activities/media/prepareAudio.js.map +1 -0
  70. package/lib/{types/activities → activities}/media/prepareVideo.d.ts +2 -2
  71. package/lib/activities/media/prepareVideo.d.ts.map +1 -0
  72. package/lib/{esm/activities → activities}/media/prepareVideo.js +72 -54
  73. package/lib/activities/media/prepareVideo.js.map +1 -0
  74. package/lib/{types/activities → activities}/media/probeMediaStreams.d.ts +2 -3
  75. package/lib/activities/media/probeMediaStreams.d.ts.map +1 -0
  76. package/lib/{esm/activities → activities}/media/probeMediaStreams.js +7 -5
  77. package/lib/activities/media/probeMediaStreams.js.map +1 -0
  78. package/lib/{types/activities → activities}/media/processPdfWithTextract.d.ts +3 -3
  79. package/lib/activities/media/processPdfWithTextract.d.ts.map +1 -0
  80. package/lib/{esm/activities → activities}/media/processPdfWithTextract.js +43 -26
  81. package/lib/activities/media/processPdfWithTextract.js.map +1 -0
  82. package/lib/{types/activities → activities}/media/saveGladiaTranscription.d.ts +2 -2
  83. package/lib/activities/media/saveGladiaTranscription.d.ts.map +1 -0
  84. package/lib/{esm/activities → activities}/media/saveGladiaTranscription.js +35 -25
  85. package/lib/activities/media/saveGladiaTranscription.js.map +1 -0
  86. package/lib/{types/activities → activities}/media/transcribeMediaWithGladia.d.ts +2 -2
  87. package/lib/activities/media/transcribeMediaWithGladia.d.ts.map +1 -0
  88. package/lib/{esm/activities → activities}/media/transcribeMediaWithGladia.js +26 -21
  89. package/lib/activities/media/transcribeMediaWithGladia.js.map +1 -0
  90. package/lib/{types/activities → activities}/mergeChildArtifacts.d.ts +1 -1
  91. package/lib/activities/mergeChildArtifacts.d.ts.map +1 -0
  92. package/lib/{esm/activities → activities}/mergeChildArtifacts.js +27 -26
  93. package/lib/activities/mergeChildArtifacts.js.map +1 -0
  94. package/lib/{types/activities → activities}/notifyWebhook.d.ts +6 -5
  95. package/lib/activities/notifyWebhook.d.ts.map +1 -0
  96. package/lib/{esm/activities → activities}/notifyWebhook.js +20 -17
  97. package/lib/activities/notifyWebhook.js.map +1 -0
  98. package/lib/{types/activities → activities}/rateLimiter.d.ts +1 -1
  99. package/lib/activities/rateLimiter.d.ts.map +1 -0
  100. package/lib/{esm/activities → activities}/rateLimiter.js +4 -3
  101. package/lib/activities/rateLimiter.js.map +1 -0
  102. package/lib/{types/activities → activities}/renditions/generateImageRendition.d.ts +3 -3
  103. package/lib/activities/renditions/generateImageRendition.d.ts.map +1 -0
  104. package/lib/activities/renditions/generateImageRendition.js +75 -0
  105. package/lib/activities/renditions/generateImageRendition.js.map +1 -0
  106. package/lib/{types/activities → activities}/renditions/generateVideoRendition.d.ts +3 -3
  107. package/lib/activities/renditions/generateVideoRendition.d.ts.map +1 -0
  108. package/lib/{esm/activities → activities}/renditions/generateVideoRendition.js +51 -54
  109. package/lib/activities/renditions/generateVideoRendition.js.map +1 -0
  110. package/lib/{types/activities → activities}/resolveRemoteActivities.d.ts +3 -4
  111. package/lib/activities/resolveRemoteActivities.d.ts.map +1 -0
  112. package/lib/{esm/activities → activities}/resolveRemoteActivities.js +16 -15
  113. package/lib/activities/resolveRemoteActivities.js.map +1 -0
  114. package/lib/{types/activities → activities}/setDocumentStatus.d.ts +1 -1
  115. package/lib/activities/setDocumentStatus.d.ts.map +1 -0
  116. package/lib/{esm/activities → activities}/setDocumentStatus.js +5 -3
  117. package/lib/activities/setDocumentStatus.js.map +1 -0
  118. package/lib/{types/bulk-import.d.ts → bulk-import.d.ts} +10 -1
  119. package/lib/bulk-import.d.ts.map +1 -0
  120. package/lib/bulk-import.js.map +1 -0
  121. package/lib/{types/conversion → conversion}/TextractProcessor.d.ts +7 -4
  122. package/lib/conversion/TextractProcessor.d.ts.map +1 -0
  123. package/lib/{esm/conversion → conversion}/TextractProcessor.js +38 -38
  124. package/lib/conversion/TextractProcessor.js.map +1 -0
  125. package/lib/conversion/image.d.ts.map +1 -0
  126. package/lib/{esm/conversion → conversion}/image.js +35 -35
  127. package/lib/conversion/image.js.map +1 -0
  128. package/lib/conversion/markitdown.d.ts.map +1 -0
  129. package/lib/{esm/conversion → conversion}/markitdown.js +11 -11
  130. package/lib/conversion/markitdown.js.map +1 -0
  131. package/lib/conversion/mutool.d.ts.map +1 -0
  132. package/lib/{esm/conversion → conversion}/mutool.js +19 -24
  133. package/lib/conversion/mutool.js.map +1 -0
  134. package/lib/conversion/pandoc.d.ts.map +1 -0
  135. package/lib/{esm/conversion → conversion}/pandoc.js +11 -11
  136. package/lib/conversion/pandoc.js.map +1 -0
  137. package/lib/dsl/conditions.d.ts +2 -0
  138. package/lib/dsl/conditions.d.ts.map +1 -0
  139. package/lib/dsl/conditions.js +90 -0
  140. package/lib/dsl/conditions.js.map +1 -0
  141. package/lib/{types/dsl → dsl}/dsl-workflow.d.ts +2 -2
  142. package/lib/dsl/dsl-workflow.d.ts.map +1 -0
  143. package/lib/{esm/dsl → dsl}/dsl-workflow.js +93 -65
  144. package/lib/dsl/dsl-workflow.js.map +1 -0
  145. package/lib/dsl/dslProxyActivities.d.ts +7 -0
  146. package/lib/dsl/dslProxyActivities.d.ts.map +1 -0
  147. package/lib/{esm/dsl → dsl}/dslProxyActivities.js +10 -1
  148. package/lib/dsl/dslProxyActivities.js.map +1 -0
  149. package/lib/dsl/projections.d.ts +4 -0
  150. package/lib/dsl/projections.d.ts.map +1 -0
  151. package/lib/{esm/dsl → dsl}/projections.js +22 -8
  152. package/lib/dsl/projections.js.map +1 -0
  153. package/lib/{types/dsl → dsl}/setup/ActivityContext.d.ts +4 -4
  154. package/lib/dsl/setup/ActivityContext.d.ts.map +1 -0
  155. package/lib/{esm/dsl → dsl}/setup/ActivityContext.js +22 -25
  156. package/lib/dsl/setup/ActivityContext.js.map +1 -0
  157. package/lib/{types/dsl → dsl}/setup/fetch/DataProvider.d.ts +3 -3
  158. package/lib/dsl/setup/fetch/DataProvider.d.ts.map +1 -0
  159. package/lib/{esm/dsl → dsl}/setup/fetch/DataProvider.js +2 -1
  160. package/lib/dsl/setup/fetch/DataProvider.js.map +1 -0
  161. package/lib/dsl/setup/fetch/index.d.ts +6 -0
  162. package/lib/dsl/setup/fetch/index.d.ts.map +1 -0
  163. package/lib/{esm/dsl → dsl}/setup/fetch/index.js +1 -1
  164. package/lib/dsl/setup/fetch/index.js.map +1 -0
  165. package/lib/{types/dsl → dsl}/setup/fetch/providers.d.ts +6 -6
  166. package/lib/dsl/setup/fetch/providers.d.ts.map +1 -0
  167. package/lib/{esm/dsl → dsl}/setup/fetch/providers.js +30 -16
  168. package/lib/dsl/setup/fetch/providers.js.map +1 -0
  169. package/lib/dsl/test/test-child-workflow.d.ts +4 -0
  170. package/lib/dsl/test/test-child-workflow.d.ts.map +1 -0
  171. package/lib/{esm/dsl → dsl}/test/test-child-workflow.js +1 -1
  172. package/lib/dsl/test/test-child-workflow.js.map +1 -0
  173. package/lib/{types/dsl → dsl}/validation.d.ts +1 -1
  174. package/lib/dsl/validation.d.ts.map +1 -0
  175. package/lib/{esm/dsl → dsl}/validation.js +8 -8
  176. package/lib/dsl/validation.js.map +1 -0
  177. package/lib/{types/dsl → dsl}/vars.d.ts +16 -16
  178. package/lib/dsl/vars.d.ts.map +1 -0
  179. package/lib/{esm/dsl → dsl}/vars.js +20 -15
  180. package/lib/dsl/vars.js.map +1 -0
  181. package/lib/dsl/walk.d.ts +18 -0
  182. package/lib/dsl/walk.d.ts.map +1 -0
  183. package/lib/{esm/dsl → dsl}/walk.js +37 -16
  184. package/lib/dsl/walk.js.map +1 -0
  185. package/lib/dsl.d.ts +4 -0
  186. package/lib/dsl.d.ts.map +1 -0
  187. package/lib/dsl.js +4 -0
  188. package/lib/dsl.js.map +1 -0
  189. package/lib/{types/errors.d.ts → errors.d.ts} +2 -2
  190. package/lib/errors.d.ts.map +1 -0
  191. package/lib/{esm/errors.js → errors.js} +22 -17
  192. package/lib/errors.js.map +1 -0
  193. package/lib/index.d.ts +36 -0
  194. package/lib/index.d.ts.map +1 -0
  195. package/lib/index.js +37 -0
  196. package/lib/index.js.map +1 -0
  197. package/lib/result-types.d.ts.map +1 -0
  198. package/lib/result-types.js.map +1 -0
  199. package/lib/security/ssrf.d.ts.map +1 -0
  200. package/lib/security/ssrf.js.map +1 -0
  201. package/lib/system/notifyWebhookWorkflow.d.ts +8 -0
  202. package/lib/system/notifyWebhookWorkflow.d.ts.map +1 -0
  203. package/lib/{esm/system → system}/notifyWebhookWorkflow.js +13 -12
  204. package/lib/system/notifyWebhookWorkflow.js.map +1 -0
  205. package/lib/{types/system → system}/recalculateEmbeddingsWorkflow.d.ts +1 -1
  206. package/lib/system/recalculateEmbeddingsWorkflow.d.ts.map +1 -0
  207. package/lib/{esm/system → system}/recalculateEmbeddingsWorkflow.js +7 -7
  208. package/lib/system/recalculateEmbeddingsWorkflow.js.map +1 -0
  209. package/lib/utils/activity-info.d.ts +12 -0
  210. package/lib/utils/activity-info.d.ts.map +1 -0
  211. package/lib/utils/activity-info.js +15 -0
  212. package/lib/utils/activity-info.js.map +1 -0
  213. package/lib/{types/utils → utils}/auth.d.ts +1 -1
  214. package/lib/utils/auth.d.ts.map +1 -0
  215. package/lib/utils/auth.js.map +1 -0
  216. package/lib/{types/utils → utils}/blobs.d.ts +1 -1
  217. package/lib/utils/blobs.d.ts.map +1 -0
  218. package/lib/{esm/utils → utils}/blobs.js +17 -16
  219. package/lib/utils/blobs.js.map +1 -0
  220. package/lib/utils/chunks.d.ts.map +1 -0
  221. package/lib/{esm/utils → utils}/chunks.js +1 -1
  222. package/lib/utils/chunks.js.map +1 -0
  223. package/lib/utils/client.d.ts +8 -0
  224. package/lib/utils/client.d.ts.map +1 -0
  225. package/lib/utils/client.js +64 -0
  226. package/lib/utils/client.js.map +1 -0
  227. package/lib/{types/utils → utils}/expand-vars.d.ts +1 -1
  228. package/lib/utils/expand-vars.d.ts.map +1 -0
  229. package/lib/{esm/utils → utils}/expand-vars.js +4 -1
  230. package/lib/utils/expand-vars.js.map +1 -0
  231. package/lib/{types/utils → utils}/renditions.d.ts +2 -2
  232. package/lib/utils/renditions.d.ts.map +1 -0
  233. package/lib/{esm/utils → utils}/renditions.js +29 -18
  234. package/lib/utils/renditions.js.map +1 -0
  235. package/lib/{types/utils → utils}/storage.d.ts +2 -2
  236. package/lib/utils/storage.d.ts.map +1 -0
  237. package/lib/{esm/utils → utils}/storage.js +13 -12
  238. package/lib/utils/storage.js.map +1 -0
  239. package/lib/{types/utils → utils}/text-preview-utils.d.ts +2 -2
  240. package/lib/utils/text-preview-utils.d.ts.map +1 -0
  241. package/lib/{esm/utils → utils}/text-preview-utils.js +4 -4
  242. package/lib/utils/text-preview-utils.js.map +1 -0
  243. package/lib/{types/utils → utils}/tokens.d.ts +1 -1
  244. package/lib/utils/tokens.d.ts.map +1 -0
  245. package/lib/{esm/utils → utils}/tokens.js +3 -3
  246. package/lib/utils/tokens.js.map +1 -0
  247. package/lib/vars.d.ts +3 -0
  248. package/lib/vars.d.ts.map +1 -0
  249. package/lib/vars.js +4 -0
  250. package/lib/vars.js.map +1 -0
  251. package/lib/workflows-bundle.js +5561 -2815
  252. package/lib/workflows.d.ts +7 -0
  253. package/lib/workflows.d.ts.map +1 -0
  254. package/lib/workflows.js +7 -0
  255. package/lib/workflows.js.map +1 -0
  256. package/package.json +47 -88
  257. package/src/activities/advanced/createDocumentTypeFromInteractionRun.ts +30 -17
  258. package/src/activities/advanced/createOrUpdateDocumentFromInteractionRun.ts +51 -37
  259. package/src/activities/advanced/updateDocumentFromInteractionRun.ts +12 -11
  260. package/src/activities/chunkDocument.ts +87 -77
  261. package/src/activities/createDocumentFromOther.ts +19 -25
  262. package/src/activities/executeInteraction.test.ts +81 -8
  263. package/src/activities/executeInteraction.ts +147 -102
  264. package/src/activities/executeRemoteActivity.test.ts +61 -67
  265. package/src/activities/executeRemoteActivity.ts +56 -29
  266. package/src/activities/extractDocumentText.ts +75 -64
  267. package/src/activities/generateDocumentProperties.ts +69 -50
  268. package/src/activities/generateEmbeddings.test.ts +114 -0
  269. package/src/activities/generateEmbeddings.ts +113 -141
  270. package/src/activities/generateOrAssignContentType.ts +219 -231
  271. package/src/activities/getObjectFromStore.ts +11 -10
  272. package/src/activities/handleError.ts +23 -11
  273. package/src/activities/index-dsl.ts +30 -30
  274. package/src/activities/index.ts +1 -1
  275. package/src/activities/loadChildWorkflowSpec.ts +8 -3
  276. package/src/activities/media/prepareAudio.ts +47 -56
  277. package/src/activities/media/prepareVideo.ts +107 -122
  278. package/src/activities/media/probeMediaStreams.test.ts +11 -13
  279. package/src/activities/media/probeMediaStreams.ts +13 -15
  280. package/src/activities/media/processPdfWithTextract.ts +65 -46
  281. package/src/activities/media/saveGladiaTranscription.test.ts +122 -121
  282. package/src/activities/media/saveGladiaTranscription.ts +52 -26
  283. package/src/activities/media/transcribeMediaWithGladia.test.ts +173 -165
  284. package/src/activities/media/transcribeMediaWithGladia.ts +44 -28
  285. package/src/activities/mergeChildArtifacts.ts +36 -38
  286. package/src/activities/notifyWebhook.test.ts +223 -217
  287. package/src/activities/notifyWebhook.ts +67 -40
  288. package/src/activities/rateLimiter.ts +31 -30
  289. package/src/activities/renditions/generateImageRendition.ts +54 -64
  290. package/src/activities/renditions/generateVideoRendition.ts +87 -141
  291. package/src/activities/resolveRemoteActivities.test.ts +96 -88
  292. package/src/activities/resolveRemoteActivities.ts +32 -23
  293. package/src/activities/setDocumentStatus.ts +11 -7
  294. package/src/bulk-import.ts +11 -5
  295. package/src/conversion/TextractProcessor.ts +69 -71
  296. package/src/conversion/image.test.ts +31 -31
  297. package/src/conversion/image.ts +41 -38
  298. package/src/conversion/markitdown.ts +11 -11
  299. package/src/conversion/mutool.test.ts +77 -62
  300. package/src/conversion/mutool.ts +27 -49
  301. package/src/conversion/pandoc.test.ts +5 -6
  302. package/src/conversion/pandoc.ts +11 -11
  303. package/src/dsl/conditions.ts +35 -17
  304. package/src/dsl/dsl-workflow.test.ts +49 -39
  305. package/src/dsl/dsl-workflow.ts +200 -112
  306. package/src/dsl/dslProxyActivities.test.ts +23 -0
  307. package/src/dsl/dslProxyActivities.ts +46 -26
  308. package/src/dsl/ms.d.ts +34 -3
  309. package/src/dsl/projections.test.ts +108 -100
  310. package/src/dsl/projections.ts +46 -26
  311. package/src/dsl/setup/ActivityContext.test.ts +22 -23
  312. package/src/dsl/setup/ActivityContext.ts +39 -82
  313. package/src/dsl/setup/fetch/DataProvider.ts +11 -8
  314. package/src/dsl/setup/fetch/index.ts +6 -8
  315. package/src/dsl/setup/fetch/providers.ts +38 -24
  316. package/src/dsl/test/test-child-workflow.ts +3 -2
  317. package/src/dsl/validation.test.ts +232 -213
  318. package/src/dsl/validation.ts +17 -12
  319. package/src/dsl/vars.test.ts +143 -140
  320. package/src/dsl/vars.ts +61 -54
  321. package/src/dsl/walk.test.ts +61 -56
  322. package/src/dsl/walk.ts +61 -35
  323. package/src/dsl/workflow-exec-child.test.ts +77 -61
  324. package/src/dsl/workflow-fetch.test.ts +40 -38
  325. package/src/dsl/workflow-import.test.ts +27 -27
  326. package/src/dsl/workflow.test.ts +34 -33
  327. package/src/dsl.ts +3 -4
  328. package/src/errors.ts +31 -23
  329. package/src/index.ts +28 -33
  330. package/src/result-types.ts +6 -9
  331. package/src/system/notifyWebhookWorkflow.ts +23 -23
  332. package/src/system/recalculateEmbeddingsWorkflow.ts +14 -17
  333. package/src/utils/activity-info.ts +15 -0
  334. package/src/utils/auth.ts +1 -1
  335. package/src/utils/blobs.ts +19 -18
  336. package/src/utils/chunks.ts +7 -8
  337. package/src/utils/client.ts +57 -17
  338. package/src/utils/expand-vars.ts +9 -6
  339. package/src/utils/renditions.ts +68 -72
  340. package/src/utils/storage.ts +18 -22
  341. package/src/utils/text-preview-utils.ts +9 -19
  342. package/src/utils/tokens.ts +9 -11
  343. package/src/vars.ts +2 -2
  344. package/src/workflows.ts +3 -4
  345. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js +0 -33
  346. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  347. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +0 -73
  348. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  349. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js +0 -19
  350. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  351. package/lib/cjs/activities/chunkDocument.js +0 -111
  352. package/lib/cjs/activities/chunkDocument.js.map +0 -1
  353. package/lib/cjs/activities/createDocumentFromOther.js +0 -64
  354. package/lib/cjs/activities/createDocumentFromOther.js.map +0 -1
  355. package/lib/cjs/activities/executeInteraction.js +0 -241
  356. package/lib/cjs/activities/executeInteraction.js.map +0 -1
  357. package/lib/cjs/activities/executeRemoteActivity.js +0 -126
  358. package/lib/cjs/activities/executeRemoteActivity.js.map +0 -1
  359. package/lib/cjs/activities/extractDocumentText.js +0 -196
  360. package/lib/cjs/activities/extractDocumentText.js.map +0 -1
  361. package/lib/cjs/activities/generateDocumentProperties.js +0 -109
  362. package/lib/cjs/activities/generateDocumentProperties.js.map +0 -1
  363. package/lib/cjs/activities/generateEmbeddings.js +0 -269
  364. package/lib/cjs/activities/generateEmbeddings.js.map +0 -1
  365. package/lib/cjs/activities/generateOrAssignContentType.js +0 -173
  366. package/lib/cjs/activities/generateOrAssignContentType.js.map +0 -1
  367. package/lib/cjs/activities/getObjectFromStore.js +0 -31
  368. package/lib/cjs/activities/getObjectFromStore.js.map +0 -1
  369. package/lib/cjs/activities/handleError.js +0 -29
  370. package/lib/cjs/activities/handleError.js.map +0 -1
  371. package/lib/cjs/activities/index-dsl.js +0 -59
  372. package/lib/cjs/activities/index-dsl.js.map +0 -1
  373. package/lib/cjs/activities/index.js +0 -21
  374. package/lib/cjs/activities/index.js.map +0 -1
  375. package/lib/cjs/activities/loadChildWorkflowSpec.js +0 -15
  376. package/lib/cjs/activities/loadChildWorkflowSpec.js.map +0 -1
  377. package/lib/cjs/activities/media/prepareAudio.js +0 -240
  378. package/lib/cjs/activities/media/prepareAudio.js.map +0 -1
  379. package/lib/cjs/activities/media/prepareVideo.js +0 -432
  380. package/lib/cjs/activities/media/prepareVideo.js.map +0 -1
  381. package/lib/cjs/activities/media/probeMediaStreams.js +0 -49
  382. package/lib/cjs/activities/media/probeMediaStreams.js.map +0 -1
  383. package/lib/cjs/activities/media/processPdfWithTextract.js +0 -103
  384. package/lib/cjs/activities/media/processPdfWithTextract.js.map +0 -1
  385. package/lib/cjs/activities/media/saveGladiaTranscription.js +0 -103
  386. package/lib/cjs/activities/media/saveGladiaTranscription.js.map +0 -1
  387. package/lib/cjs/activities/media/transcribeMediaWithGladia.js +0 -107
  388. package/lib/cjs/activities/media/transcribeMediaWithGladia.js.map +0 -1
  389. package/lib/cjs/activities/mergeChildArtifacts.js +0 -150
  390. package/lib/cjs/activities/mergeChildArtifacts.js.map +0 -1
  391. package/lib/cjs/activities/notifyWebhook.js +0 -167
  392. package/lib/cjs/activities/notifyWebhook.js.map +0 -1
  393. package/lib/cjs/activities/rateLimiter.js +0 -30
  394. package/lib/cjs/activities/rateLimiter.js.map +0 -1
  395. package/lib/cjs/activities/renditions/generateImageRendition.js +0 -66
  396. package/lib/cjs/activities/renditions/generateImageRendition.js.map +0 -1
  397. package/lib/cjs/activities/renditions/generateVideoRendition.js +0 -200
  398. package/lib/cjs/activities/renditions/generateVideoRendition.js.map +0 -1
  399. package/lib/cjs/activities/resolveRemoteActivities.js +0 -133
  400. package/lib/cjs/activities/resolveRemoteActivities.js.map +0 -1
  401. package/lib/cjs/activities/setDocumentStatus.js +0 -26
  402. package/lib/cjs/activities/setDocumentStatus.js.map +0 -1
  403. package/lib/cjs/bulk-import.js +0 -12
  404. package/lib/cjs/bulk-import.js.map +0 -1
  405. package/lib/cjs/conversion/TextractProcessor.js +0 -417
  406. package/lib/cjs/conversion/TextractProcessor.js.map +0 -1
  407. package/lib/cjs/conversion/image.js +0 -149
  408. package/lib/cjs/conversion/image.js.map +0 -1
  409. package/lib/cjs/conversion/markitdown.js +0 -42
  410. package/lib/cjs/conversion/markitdown.js.map +0 -1
  411. package/lib/cjs/conversion/mutool.js +0 -147
  412. package/lib/cjs/conversion/mutool.js.map +0 -1
  413. package/lib/cjs/conversion/pandoc.js +0 -39
  414. package/lib/cjs/conversion/pandoc.js.map +0 -1
  415. package/lib/cjs/dsl/conditions.js +0 -81
  416. package/lib/cjs/dsl/conditions.js.map +0 -1
  417. package/lib/cjs/dsl/dsl-workflow.js +0 -458
  418. package/lib/cjs/dsl/dsl-workflow.js.map +0 -1
  419. package/lib/cjs/dsl/dslProxyActivities.js +0 -23
  420. package/lib/cjs/dsl/dslProxyActivities.js.map +0 -1
  421. package/lib/cjs/dsl/projections.js +0 -59
  422. package/lib/cjs/dsl/projections.js.map +0 -1
  423. package/lib/cjs/dsl/setup/ActivityContext.js +0 -188
  424. package/lib/cjs/dsl/setup/ActivityContext.js.map +0 -1
  425. package/lib/cjs/dsl/setup/fetch/DataProvider.js +0 -51
  426. package/lib/cjs/dsl/setup/fetch/DataProvider.js.map +0 -1
  427. package/lib/cjs/dsl/setup/fetch/index.js +0 -16
  428. package/lib/cjs/dsl/setup/fetch/index.js.map +0 -1
  429. package/lib/cjs/dsl/setup/fetch/providers.js +0 -67
  430. package/lib/cjs/dsl/setup/fetch/providers.js.map +0 -1
  431. package/lib/cjs/dsl/test/test-child-workflow.js +0 -10
  432. package/lib/cjs/dsl/test/test-child-workflow.js.map +0 -1
  433. package/lib/cjs/dsl/validation.js +0 -122
  434. package/lib/cjs/dsl/validation.js.map +0 -1
  435. package/lib/cjs/dsl/vars.js +0 -341
  436. package/lib/cjs/dsl/vars.js.map +0 -1
  437. package/lib/cjs/dsl/walk.js +0 -100
  438. package/lib/cjs/dsl/walk.js.map +0 -1
  439. package/lib/cjs/dsl.js +0 -20
  440. package/lib/cjs/dsl.js.map +0 -1
  441. package/lib/cjs/errors.js +0 -89
  442. package/lib/cjs/errors.js.map +0 -1
  443. package/lib/cjs/index.js +0 -57
  444. package/lib/cjs/index.js.map +0 -1
  445. package/lib/cjs/iterative-generation/activities/extractToc.js +0 -47
  446. package/lib/cjs/iterative-generation/activities/extractToc.js.map +0 -1
  447. package/lib/cjs/iterative-generation/activities/finalizeOutput.js +0 -72
  448. package/lib/cjs/iterative-generation/activities/finalizeOutput.js.map +0 -1
  449. package/lib/cjs/iterative-generation/activities/generatePart.js +0 -78
  450. package/lib/cjs/iterative-generation/activities/generatePart.js.map +0 -1
  451. package/lib/cjs/iterative-generation/activities/generateToc.js +0 -86
  452. package/lib/cjs/iterative-generation/activities/generateToc.js.map +0 -1
  453. package/lib/cjs/iterative-generation/activities/index.js +0 -12
  454. package/lib/cjs/iterative-generation/activities/index.js.map +0 -1
  455. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js +0 -56
  456. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  457. package/lib/cjs/iterative-generation/types.js +0 -5
  458. package/lib/cjs/iterative-generation/types.js.map +0 -1
  459. package/lib/cjs/iterative-generation/utils.js +0 -121
  460. package/lib/cjs/iterative-generation/utils.js.map +0 -1
  461. package/lib/cjs/package.json +0 -3
  462. package/lib/cjs/result-types.js +0 -10
  463. package/lib/cjs/result-types.js.map +0 -1
  464. package/lib/cjs/security/ssrf.js +0 -34
  465. package/lib/cjs/security/ssrf.js.map +0 -1
  466. package/lib/cjs/system/notifyWebhookWorkflow.js +0 -53
  467. package/lib/cjs/system/notifyWebhookWorkflow.js.map +0 -1
  468. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js +0 -33
  469. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  470. package/lib/cjs/utils/auth.js +0 -15
  471. package/lib/cjs/utils/auth.js.map +0 -1
  472. package/lib/cjs/utils/blobs.js +0 -64
  473. package/lib/cjs/utils/blobs.js.map +0 -1
  474. package/lib/cjs/utils/chunks.js +0 -14
  475. package/lib/cjs/utils/chunks.js.map +0 -1
  476. package/lib/cjs/utils/client.js +0 -31
  477. package/lib/cjs/utils/client.js.map +0 -1
  478. package/lib/cjs/utils/expand-vars.js +0 -33
  479. package/lib/cjs/utils/expand-vars.js.map +0 -1
  480. package/lib/cjs/utils/memory.js +0 -65
  481. package/lib/cjs/utils/memory.js.map +0 -1
  482. package/lib/cjs/utils/renditions.js +0 -92
  483. package/lib/cjs/utils/renditions.js.map +0 -1
  484. package/lib/cjs/utils/storage.js +0 -54
  485. package/lib/cjs/utils/storage.js.map +0 -1
  486. package/lib/cjs/utils/text-preview-utils.js +0 -43
  487. package/lib/cjs/utils/text-preview-utils.js.map +0 -1
  488. package/lib/cjs/utils/tokens.js +0 -38
  489. package/lib/cjs/utils/tokens.js.map +0 -1
  490. package/lib/cjs/vars.js +0 -20
  491. package/lib/cjs/vars.js.map +0 -1
  492. package/lib/cjs/workflows.js +0 -15
  493. package/lib/cjs/workflows.js.map +0 -1
  494. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  495. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  496. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js +0 -16
  497. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  498. package/lib/esm/activities/chunkDocument.js.map +0 -1
  499. package/lib/esm/activities/createDocumentFromOther.js.map +0 -1
  500. package/lib/esm/activities/executeInteraction.js.map +0 -1
  501. package/lib/esm/activities/executeRemoteActivity.js.map +0 -1
  502. package/lib/esm/activities/extractDocumentText.js.map +0 -1
  503. package/lib/esm/activities/generateDocumentProperties.js.map +0 -1
  504. package/lib/esm/activities/generateEmbeddings.js.map +0 -1
  505. package/lib/esm/activities/generateOrAssignContentType.js.map +0 -1
  506. package/lib/esm/activities/getObjectFromStore.js.map +0 -1
  507. package/lib/esm/activities/handleError.js +0 -26
  508. package/lib/esm/activities/handleError.js.map +0 -1
  509. package/lib/esm/activities/index-dsl.js +0 -29
  510. package/lib/esm/activities/index-dsl.js.map +0 -1
  511. package/lib/esm/activities/index.js.map +0 -1
  512. package/lib/esm/activities/loadChildWorkflowSpec.js.map +0 -1
  513. package/lib/esm/activities/media/prepareAudio.js.map +0 -1
  514. package/lib/esm/activities/media/prepareVideo.js.map +0 -1
  515. package/lib/esm/activities/media/probeMediaStreams.js.map +0 -1
  516. package/lib/esm/activities/media/processPdfWithTextract.js.map +0 -1
  517. package/lib/esm/activities/media/saveGladiaTranscription.js.map +0 -1
  518. package/lib/esm/activities/media/transcribeMediaWithGladia.js.map +0 -1
  519. package/lib/esm/activities/mergeChildArtifacts.js.map +0 -1
  520. package/lib/esm/activities/notifyWebhook.js.map +0 -1
  521. package/lib/esm/activities/rateLimiter.js.map +0 -1
  522. package/lib/esm/activities/renditions/generateImageRendition.js +0 -63
  523. package/lib/esm/activities/renditions/generateImageRendition.js.map +0 -1
  524. package/lib/esm/activities/renditions/generateVideoRendition.js.map +0 -1
  525. package/lib/esm/activities/resolveRemoteActivities.js.map +0 -1
  526. package/lib/esm/activities/setDocumentStatus.js.map +0 -1
  527. package/lib/esm/bulk-import.js.map +0 -1
  528. package/lib/esm/conversion/TextractProcessor.js.map +0 -1
  529. package/lib/esm/conversion/image.js.map +0 -1
  530. package/lib/esm/conversion/markitdown.js.map +0 -1
  531. package/lib/esm/conversion/mutool.js.map +0 -1
  532. package/lib/esm/conversion/pandoc.js.map +0 -1
  533. package/lib/esm/dsl/conditions.js +0 -75
  534. package/lib/esm/dsl/conditions.js.map +0 -1
  535. package/lib/esm/dsl/dsl-workflow.js.map +0 -1
  536. package/lib/esm/dsl/dslProxyActivities.js.map +0 -1
  537. package/lib/esm/dsl/projections.js.map +0 -1
  538. package/lib/esm/dsl/setup/ActivityContext.js.map +0 -1
  539. package/lib/esm/dsl/setup/fetch/DataProvider.js.map +0 -1
  540. package/lib/esm/dsl/setup/fetch/index.js.map +0 -1
  541. package/lib/esm/dsl/setup/fetch/providers.js.map +0 -1
  542. package/lib/esm/dsl/test/test-child-workflow.js.map +0 -1
  543. package/lib/esm/dsl/validation.js.map +0 -1
  544. package/lib/esm/dsl/vars.js.map +0 -1
  545. package/lib/esm/dsl/walk.js.map +0 -1
  546. package/lib/esm/dsl.js +0 -4
  547. package/lib/esm/dsl.js.map +0 -1
  548. package/lib/esm/errors.js.map +0 -1
  549. package/lib/esm/index.js +0 -39
  550. package/lib/esm/index.js.map +0 -1
  551. package/lib/esm/iterative-generation/activities/extractToc.js +0 -44
  552. package/lib/esm/iterative-generation/activities/extractToc.js.map +0 -1
  553. package/lib/esm/iterative-generation/activities/finalizeOutput.js +0 -69
  554. package/lib/esm/iterative-generation/activities/finalizeOutput.js.map +0 -1
  555. package/lib/esm/iterative-generation/activities/generatePart.js +0 -75
  556. package/lib/esm/iterative-generation/activities/generatePart.js.map +0 -1
  557. package/lib/esm/iterative-generation/activities/generateToc.js +0 -83
  558. package/lib/esm/iterative-generation/activities/generateToc.js.map +0 -1
  559. package/lib/esm/iterative-generation/activities/index.js +0 -5
  560. package/lib/esm/iterative-generation/activities/index.js.map +0 -1
  561. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js +0 -53
  562. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  563. package/lib/esm/iterative-generation/types.js +0 -2
  564. package/lib/esm/iterative-generation/types.js.map +0 -1
  565. package/lib/esm/iterative-generation/utils.js +0 -112
  566. package/lib/esm/iterative-generation/utils.js.map +0 -1
  567. package/lib/esm/result-types.js.map +0 -1
  568. package/lib/esm/security/ssrf.js.map +0 -1
  569. package/lib/esm/system/notifyWebhookWorkflow.js.map +0 -1
  570. package/lib/esm/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  571. package/lib/esm/utils/auth.js.map +0 -1
  572. package/lib/esm/utils/blobs.js.map +0 -1
  573. package/lib/esm/utils/chunks.js.map +0 -1
  574. package/lib/esm/utils/client.js +0 -27
  575. package/lib/esm/utils/client.js.map +0 -1
  576. package/lib/esm/utils/expand-vars.js.map +0 -1
  577. package/lib/esm/utils/memory.js +0 -55
  578. package/lib/esm/utils/memory.js.map +0 -1
  579. package/lib/esm/utils/renditions.js.map +0 -1
  580. package/lib/esm/utils/storage.js.map +0 -1
  581. package/lib/esm/utils/text-preview-utils.js.map +0 -1
  582. package/lib/esm/utils/tokens.js.map +0 -1
  583. package/lib/esm/vars.js +0 -4
  584. package/lib/esm/vars.js.map +0 -1
  585. package/lib/esm/workflows.js +0 -8
  586. package/lib/esm/workflows.js.map +0 -1
  587. package/lib/tsconfig.tsbuildinfo +0 -1
  588. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +0 -1
  589. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +0 -1
  590. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +0 -1
  591. package/lib/types/activities/chunkDocument.d.ts.map +0 -1
  592. package/lib/types/activities/createDocumentFromOther.d.ts.map +0 -1
  593. package/lib/types/activities/executeInteraction.d.ts.map +0 -1
  594. package/lib/types/activities/executeRemoteActivity.d.ts.map +0 -1
  595. package/lib/types/activities/extractDocumentText.d.ts.map +0 -1
  596. package/lib/types/activities/generateDocumentProperties.d.ts.map +0 -1
  597. package/lib/types/activities/generateEmbeddings.d.ts.map +0 -1
  598. package/lib/types/activities/generateOrAssignContentType.d.ts.map +0 -1
  599. package/lib/types/activities/getObjectFromStore.d.ts.map +0 -1
  600. package/lib/types/activities/handleError.d.ts.map +0 -1
  601. package/lib/types/activities/index-dsl.d.ts +0 -31
  602. package/lib/types/activities/index-dsl.d.ts.map +0 -1
  603. package/lib/types/activities/index.d.ts.map +0 -1
  604. package/lib/types/activities/loadChildWorkflowSpec.d.ts.map +0 -1
  605. package/lib/types/activities/media/prepareAudio.d.ts.map +0 -1
  606. package/lib/types/activities/media/prepareVideo.d.ts.map +0 -1
  607. package/lib/types/activities/media/probeMediaStreams.d.ts.map +0 -1
  608. package/lib/types/activities/media/processPdfWithTextract.d.ts.map +0 -1
  609. package/lib/types/activities/media/saveGladiaTranscription.d.ts.map +0 -1
  610. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts.map +0 -1
  611. package/lib/types/activities/mergeChildArtifacts.d.ts.map +0 -1
  612. package/lib/types/activities/notifyWebhook.d.ts.map +0 -1
  613. package/lib/types/activities/rateLimiter.d.ts.map +0 -1
  614. package/lib/types/activities/renditions/generateImageRendition.d.ts.map +0 -1
  615. package/lib/types/activities/renditions/generateVideoRendition.d.ts.map +0 -1
  616. package/lib/types/activities/resolveRemoteActivities.d.ts.map +0 -1
  617. package/lib/types/activities/setDocumentStatus.d.ts.map +0 -1
  618. package/lib/types/bulk-import.d.ts.map +0 -1
  619. package/lib/types/conversion/TextractProcessor.d.ts.map +0 -1
  620. package/lib/types/conversion/image.d.ts.map +0 -1
  621. package/lib/types/conversion/markitdown.d.ts.map +0 -1
  622. package/lib/types/conversion/mutool.d.ts.map +0 -1
  623. package/lib/types/conversion/pandoc.d.ts.map +0 -1
  624. package/lib/types/dsl/conditions.d.ts +0 -2
  625. package/lib/types/dsl/conditions.d.ts.map +0 -1
  626. package/lib/types/dsl/dsl-workflow.d.ts.map +0 -1
  627. package/lib/types/dsl/dslProxyActivities.d.ts +0 -10
  628. package/lib/types/dsl/dslProxyActivities.d.ts.map +0 -1
  629. package/lib/types/dsl/projections.d.ts +0 -4
  630. package/lib/types/dsl/projections.d.ts.map +0 -1
  631. package/lib/types/dsl/setup/ActivityContext.d.ts.map +0 -1
  632. package/lib/types/dsl/setup/fetch/DataProvider.d.ts.map +0 -1
  633. package/lib/types/dsl/setup/fetch/index.d.ts +0 -6
  634. package/lib/types/dsl/setup/fetch/index.d.ts.map +0 -1
  635. package/lib/types/dsl/setup/fetch/providers.d.ts.map +0 -1
  636. package/lib/types/dsl/test/test-child-workflow.d.ts +0 -4
  637. package/lib/types/dsl/test/test-child-workflow.d.ts.map +0 -1
  638. package/lib/types/dsl/validation.d.ts.map +0 -1
  639. package/lib/types/dsl/vars.d.ts.map +0 -1
  640. package/lib/types/dsl/walk.d.ts +0 -18
  641. package/lib/types/dsl/walk.d.ts.map +0 -1
  642. package/lib/types/dsl.d.ts +0 -4
  643. package/lib/types/dsl.d.ts.map +0 -1
  644. package/lib/types/errors.d.ts.map +0 -1
  645. package/lib/types/index.d.ts +0 -38
  646. package/lib/types/index.d.ts.map +0 -1
  647. package/lib/types/iterative-generation/activities/extractToc.d.ts +0 -10
  648. package/lib/types/iterative-generation/activities/extractToc.d.ts.map +0 -1
  649. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts +0 -3
  650. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts.map +0 -1
  651. package/lib/types/iterative-generation/activities/generatePart.d.ts +0 -3
  652. package/lib/types/iterative-generation/activities/generatePart.d.ts.map +0 -1
  653. package/lib/types/iterative-generation/activities/generateToc.d.ts +0 -4
  654. package/lib/types/iterative-generation/activities/generateToc.d.ts.map +0 -1
  655. package/lib/types/iterative-generation/activities/index.d.ts +0 -5
  656. package/lib/types/iterative-generation/activities/index.d.ts.map +0 -1
  657. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts +0 -3
  658. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts.map +0 -1
  659. package/lib/types/iterative-generation/types.d.ts +0 -79
  660. package/lib/types/iterative-generation/types.d.ts.map +0 -1
  661. package/lib/types/iterative-generation/utils.d.ts +0 -26
  662. package/lib/types/iterative-generation/utils.d.ts.map +0 -1
  663. package/lib/types/result-types.d.ts.map +0 -1
  664. package/lib/types/security/ssrf.d.ts.map +0 -1
  665. package/lib/types/system/notifyWebhookWorkflow.d.ts +0 -8
  666. package/lib/types/system/notifyWebhookWorkflow.d.ts.map +0 -1
  667. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts.map +0 -1
  668. package/lib/types/utils/auth.d.ts.map +0 -1
  669. package/lib/types/utils/blobs.d.ts.map +0 -1
  670. package/lib/types/utils/chunks.d.ts.map +0 -1
  671. package/lib/types/utils/client.d.ts +0 -8
  672. package/lib/types/utils/client.d.ts.map +0 -1
  673. package/lib/types/utils/expand-vars.d.ts.map +0 -1
  674. package/lib/types/utils/memory.d.ts +0 -8
  675. package/lib/types/utils/memory.d.ts.map +0 -1
  676. package/lib/types/utils/renditions.d.ts.map +0 -1
  677. package/lib/types/utils/storage.d.ts.map +0 -1
  678. package/lib/types/utils/text-preview-utils.d.ts.map +0 -1
  679. package/lib/types/utils/tokens.d.ts.map +0 -1
  680. package/lib/types/vars.d.ts +0 -3
  681. package/lib/types/vars.d.ts.map +0 -1
  682. package/lib/types/workflows.d.ts +0 -8
  683. package/lib/types/workflows.d.ts.map +0 -1
  684. package/src/iterative-generation/activities/extractToc.ts +0 -63
  685. package/src/iterative-generation/activities/finalizeOutput.ts +0 -100
  686. package/src/iterative-generation/activities/generatePart.ts +0 -123
  687. package/src/iterative-generation/activities/generateToc.ts +0 -116
  688. package/src/iterative-generation/activities/index.ts +0 -4
  689. package/src/iterative-generation/iterativeGenerationWorkflow.ts +0 -68
  690. package/src/iterative-generation/types.ts +0 -99
  691. package/src/iterative-generation/utils.ts +0 -126
  692. package/src/utils/memory.ts +0 -61
  693. /package/lib/{esm/bulk-import.js → bulk-import.js} +0 -0
  694. /package/lib/{types/conversion → conversion}/image.d.ts +0 -0
  695. /package/lib/{types/conversion → conversion}/markitdown.d.ts +0 -0
  696. /package/lib/{types/conversion → conversion}/mutool.d.ts +0 -0
  697. /package/lib/{types/conversion → conversion}/pandoc.d.ts +0 -0
  698. /package/lib/{types/result-types.d.ts → result-types.d.ts} +0 -0
  699. /package/lib/{esm/result-types.js → result-types.js} +0 -0
  700. /package/lib/{types/security → security}/ssrf.d.ts +0 -0
  701. /package/lib/{esm/security → security}/ssrf.js +0 -0
  702. /package/lib/{esm/utils → utils}/auth.js +0 -0
  703. /package/lib/{types/utils → utils}/chunks.d.ts +0 -0
@@ -1,25 +1,26 @@
1
- import { log } from "@temporalio/activity";
2
- import { DSLActivityExecutionPayload, DSLActivitySpec } from "@vertesia/common";
3
- import { exec } from "child_process";
4
- import fs from "fs";
5
- import os from "os";
6
- import path from "path";
7
- import { promisify } from "util";
8
- import { setupActivity } from "../../dsl/setup/ActivityContext.js";
9
- import { DocumentNotFoundError, WorkflowParamNotFoundError } from "../../errors.js";
10
- import { saveBlobToTempFile } from "../../utils/blobs.js";
11
- import {
12
- ImageRenditionParams,
13
- uploadRenditionPages,
14
- } from "../../utils/renditions.js";
15
-
16
- const execAsync = promisify(exec);
17
-
18
- interface GenerateVideoRenditionParams extends ImageRenditionParams { }
19
-
20
- export interface GenerateVideoRendition
21
- extends DSLActivitySpec<GenerateVideoRenditionParams> {
22
- name: "generateImageRendition";
1
+ import { execFile as execFileCallback } from 'node:child_process';
2
+ import fs from 'node:fs';
3
+ import os from 'node:os';
4
+ import path from 'node:path';
5
+ import { promisify } from 'node:util';
6
+ import { log } from '@temporalio/activity';
7
+ import type { DSLActivityExecutionPayload, DSLActivitySpec } from '@vertesia/common';
8
+ import { setupActivity } from '../../dsl/setup/ActivityContext.js';
9
+ import { DocumentNotFoundError, WorkflowParamNotFoundError } from '../../errors.js';
10
+ import { saveBlobToTempFile } from '../../utils/blobs.js';
11
+ import { type ImageRenditionParams, uploadRenditionPages } from '../../utils/renditions.js';
12
+
13
+ const execFileAsync = promisify(execFileCallback);
14
+
15
+ interface GenerateVideoRenditionParams extends ImageRenditionParams {}
16
+
17
+ interface LegacyVideoRenditionParams {
18
+ maxHeightWidth?: number;
19
+ format_output?: ImageRenditionParams['format'];
20
+ }
21
+
22
+ export interface GenerateVideoRendition extends DSLActivitySpec<GenerateVideoRenditionParams> {
23
+ name: 'generateImageRendition';
23
24
  }
24
25
 
25
26
  interface VideoMetadata {
@@ -30,25 +31,22 @@ interface VideoMetadata {
30
31
 
31
32
  async function getVideoMetadata(videoPath: string): Promise<VideoMetadata> {
32
33
  try {
33
- const command = `ffprobe -v quiet -print_format json -show_format -show_streams "${videoPath}"`;
34
- const { stdout } = await execAsync(command);
35
- const metadata = JSON.parse(stdout);
34
+ const args = ['-v', 'quiet', '-print_format', 'json', '-show_format', '-show_streams', videoPath];
35
+ const { stdout } = await execFileAsync('ffprobe', args);
36
+ const metadata = JSON.parse(stdout.toString()) as {
37
+ streams?: Array<{ codec_type?: string; width?: number; height?: number }>;
38
+ format?: { duration?: string };
39
+ };
36
40
 
37
- const videoStream = metadata.streams.find(
38
- (stream: any) => stream.codec_type === "video",
39
- );
40
- const duration = parseFloat(metadata.format.duration) || 0;
41
+ const videoStream = metadata.streams?.find((stream) => stream.codec_type === 'video');
42
+ const duration = parseFloat(metadata.format?.duration ?? '') || 0;
41
43
  const width = videoStream?.width || 0;
42
44
  const height = videoStream?.height || 0;
43
45
 
44
46
  return { duration, width, height };
45
47
  } catch (error) {
46
- log.error(
47
- `Failed to get video metadata: ${error instanceof Error ? error.message : "Unknown error"}`,
48
- );
49
- throw new Error(
50
- `Failed to probe video metadata: ${error instanceof Error ? error.message : "Unknown error"}`,
51
- );
48
+ log.error(`Failed to get video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
49
+ throw new Error(`Failed to probe video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
52
50
  }
53
51
  }
54
52
 
@@ -59,39 +57,34 @@ async function generateThumbnail(
59
57
  maxSize: number,
60
58
  ): Promise<string | undefined> {
61
59
  //pad timestamp to 5 digits as filename
62
- const outputFile = path.join(
63
- outputDir,
64
- `thumb-${timestamp.toString().padStart(5, "0")}.jpg`,
65
- );
60
+ const outputFile = path.join(outputDir, `thumb-${timestamp.toString().padStart(5, '0')}.jpg`);
66
61
 
67
62
  // FFmpeg command to extract thumbnail at specific timestamp
68
63
  // Use proper scale filter syntax: scale=w:h:force_original_aspect_ratio=decrease
69
64
  const scaleFilter = `scale=${maxSize}:${maxSize}:force_original_aspect_ratio=decrease`;
70
65
 
71
66
  const command = [
72
- "ffmpeg",
73
- "-y", // Overwrite output files
74
- "-ss",
67
+ '-y', // Overwrite output files
68
+ '-ss',
75
69
  timestamp.toString(), // Seek to timestamp
76
- "-i",
77
- `"${videoPath}"`, // Input file
78
- "-vframes",
79
- "1", // Extract only 1 frame
80
- "-vf",
81
- `"${scaleFilter}"`, // Scale maintaining aspect ratio
82
- "-q:v",
83
- "2", // High quality
84
- `"${outputFile}"`,
85
- ].join(" ");
86
- log.info(`Generating thumbnail at ${timestamp}s`), { command };
70
+ '-i',
71
+ videoPath, // Input file
72
+ '-vframes',
73
+ '1', // Extract only 1 frame
74
+ '-vf',
75
+ scaleFilter, // Scale maintaining aspect ratio
76
+ '-q:v',
77
+ '2', // High quality
78
+ outputFile,
79
+ ];
80
+ log.info(`Generating thumbnail at ${timestamp}s`, { command: 'ffmpeg', args: command });
87
81
  try {
88
- const { stderr } = await execAsync(command);
82
+ const { stderr } = await execFileAsync('ffmpeg', command);
83
+ const stderrText = stderr.toString();
89
84
 
90
85
  // Log any warnings from ffmpeg
91
- if (stderr && !stderr.includes("frame=")) {
92
- log.debug(
93
- `FFmpeg stderr for thumbnail at ${timestamp}s: ${stderr}`,
94
- );
86
+ if (stderrText && !stderrText.includes('frame=')) {
87
+ log.debug(`FFmpeg stderr for thumbnail at ${timestamp}s: ${stderrText}`);
95
88
  }
96
89
 
97
90
  // Verify the file was created
@@ -104,28 +97,21 @@ async function generateThumbnail(
104
97
  }
105
98
  } catch (error) {
106
99
  log.error(
107
- `Failed to generate thumbnail at ${timestamp}s: ${error instanceof Error ? error.message : "Unknown error"}`,
100
+ `Failed to generate thumbnail at ${timestamp}s: ${error instanceof Error ? error.message : 'Unknown error'}`,
108
101
  );
109
102
  return undefined;
110
103
  }
111
104
  }
112
105
 
113
- export async function generateVideoRendition(
114
- payload: DSLActivityExecutionPayload<GenerateVideoRenditionParams>,
115
- ) {
116
- const {
117
- client,
118
- objectId,
119
- params: originParams,
120
- } = await setupActivity<GenerateVideoRenditionParams>(payload);
106
+ export async function generateVideoRendition(payload: DSLActivityExecutionPayload<GenerateVideoRenditionParams>) {
107
+ const { client, objectId, params: originParams } = await setupActivity<GenerateVideoRenditionParams>(payload);
121
108
 
122
109
  // Fix: Use maxHeightWidth if max_hw is not provided
110
+ const legacyParams = originParams as LegacyVideoRenditionParams;
123
111
  const params = {
124
112
  ...originParams,
125
- max_hw:
126
- originParams.max_hw || (originParams as any).maxHeightWidth || 1024, // Default to 1024 if both are missing
127
- format:
128
- originParams.format || (originParams as any).format_output || "png", // Default to png if format is missing
113
+ max_hw: originParams.max_hw || legacyParams.maxHeightWidth || 1024, // Default to 1024 if both are missing
114
+ format: originParams.format || legacyParams.format_output || 'png', // Default to png if format is missing
129
115
  };
130
116
 
131
117
  log.info(`Generating video rendition for ${objectId}`, {
@@ -133,12 +119,11 @@ export async function generateVideoRendition(
133
119
  params,
134
120
  });
135
121
 
136
- const inputObject = await client.objects.retrieve(objectId).catch((err) => {
122
+ const inputObject = await client.objects.retrieve(objectId).catch((err: unknown) => {
123
+ const message = err instanceof Error ? err.message : String(err);
137
124
  log.error(`Failed to retrieve document ${objectId}`, { err });
138
- if (err.message.includes("not found")) {
139
- throw new DocumentNotFoundError(`Document ${objectId} not found`, [
140
- objectId,
141
- ]);
125
+ if (message.includes('not found')) {
126
+ throw new DocumentNotFoundError(`Document ${objectId} not found`, [objectId]);
142
127
  }
143
128
  throw err;
144
129
  });
@@ -150,34 +135,19 @@ export async function generateVideoRendition(
150
135
 
151
136
  if (!inputObject.content?.source) {
152
137
  log.error(`Document ${objectId} has no source`);
153
- throw new DocumentNotFoundError(`Document ${objectId} has no source`, [
154
- objectId,
155
- ]);
138
+ throw new DocumentNotFoundError(`Document ${objectId} has no source`, [objectId]);
156
139
  }
157
140
 
158
- if (
159
- !inputObject.content.type ||
160
- !inputObject.content.type?.startsWith("video/")
161
- ) {
162
- log.error(
163
- `Document ${objectId} is not a video: ${inputObject.content.type}`,
164
- );
165
- throw new DocumentNotFoundError(
166
- `Document ${objectId} is not a video: ${inputObject.content.type}`,
167
- [objectId],
168
- );
141
+ if (!inputObject.content.type?.startsWith('video/')) {
142
+ log.error(`Document ${objectId} is not a video: ${inputObject.content.type}`);
143
+ throw new DocumentNotFoundError(`Document ${objectId} is not a video: ${inputObject.content.type}`, [objectId]);
169
144
  }
170
145
 
171
146
  //array of rendition files to upload
172
- let renditionPages: string[] = [];
147
+ const renditionPages: string[] = [];
173
148
 
174
- const videoFile = await saveBlobToTempFile(
175
- client,
176
- inputObject.content.source,
177
- );
178
- const tempOutputDir = fs.mkdtempSync(
179
- path.join(os.tmpdir(), "video-rendition-"),
180
- );
149
+ const videoFile = await saveBlobToTempFile(client, inputObject.content.source);
150
+ const tempOutputDir = fs.mkdtempSync(path.join(os.tmpdir(), 'video-rendition-'));
181
151
 
182
152
  try {
183
153
  // Get video metadata using command line ffprobe
@@ -208,26 +178,18 @@ export async function generateVideoRendition(
208
178
  timestamps.push(Math.max(timestamp, 1));
209
179
  }
210
180
 
211
- log.info(
212
- `Generating ${thumbnailCount} thumbnails for ${duration}s video`,
213
- {
214
- objectId,
215
- duration,
216
- thumbnailCount,
217
- timestamps: timestamps.map((t) => Math.round(t)),
218
- tempOutputDir,
219
- },
220
- );
181
+ log.info(`Generating ${thumbnailCount} thumbnails for ${duration}s video`, {
182
+ objectId,
183
+ duration,
184
+ thumbnailCount,
185
+ timestamps: timestamps.map((t) => Math.round(t)),
186
+ tempOutputDir,
187
+ });
221
188
 
222
189
  // Generate thumbnails using command line ffmpeg
223
190
  const generatedThumbnails = await Promise.all(
224
191
  timestamps.map(async (timestamp) => {
225
- return await generateThumbnail(
226
- videoFile,
227
- tempOutputDir,
228
- timestamp,
229
- params.max_hw,
230
- );
192
+ return await generateThumbnail(videoFile, tempOutputDir, timestamp, params.max_hw);
231
193
  }),
232
194
  );
233
195
 
@@ -237,28 +199,17 @@ export async function generateVideoRendition(
237
199
  thumbnailCount,
238
200
  tempOutputDir,
239
201
  });
240
- throw new Error(
241
- `No thumbnails were generated for video ${objectId}`,
242
- );
202
+ throw new Error(`No thumbnails were generated for video ${objectId}`);
243
203
  }
244
204
 
245
- renditionPages.push(
246
- ...generatedThumbnails.filter(
247
- (thumbnail) => thumbnail !== undefined,
248
- ),
249
- );
250
- log.info(
251
- `Successfully generated ${generatedThumbnails.length} thumbnails for ${objectId}`,
252
- {
253
- objectId,
254
- generatedCount: generatedThumbnails.length,
255
- requestedCount: thumbnailCount,
256
- },
257
- );
205
+ renditionPages.push(...generatedThumbnails.filter((thumbnail) => thumbnail !== undefined));
206
+ log.info(`Successfully generated ${generatedThumbnails.length} thumbnails for ${objectId}`, {
207
+ objectId,
208
+ generatedCount: generatedThumbnails.length,
209
+ requestedCount: thumbnailCount,
210
+ });
258
211
  } catch (error) {
259
- log.error(
260
- `Error generating thumbnails for video: ${error instanceof Error ? error.message : "Unknown error"}`,
261
- );
212
+ log.error(`Error generating thumbnails for video: ${error instanceof Error ? error.message : 'Unknown error'}`);
262
213
  throw new Error(`Failed to generate thumbnails for video: ${objectId}`);
263
214
  } finally {
264
215
  // Clean up temporary video file
@@ -266,7 +217,7 @@ export async function generateVideoRendition(
266
217
  if (fs.existsSync(videoFile)) {
267
218
  fs.unlinkSync(videoFile);
268
219
  }
269
- } catch (cleanupError) {
220
+ } catch {
270
221
  log.warn(`Failed to cleanup temporary video file: ${videoFile}`);
271
222
  }
272
223
  }
@@ -277,17 +228,12 @@ export async function generateVideoRendition(
277
228
  const etag = inputObject.content.etag ?? inputObject.id;
278
229
 
279
230
  // Update the final upload call to handle multiple thumbnails
280
- const uploaded = await uploadRenditionPages(
281
- client,
282
- etag,
283
- renditionPages,
284
- params,
285
- );
231
+ const uploaded = await uploadRenditionPages(client, etag, renditionPages, params);
286
232
 
287
233
  return {
288
234
  uploads: uploaded.map((u) => u),
289
235
  format: params.format,
290
236
  thumbnailCount: renditionPages.length,
291
- status: "success",
237
+ status: 'success',
292
238
  };
293
239
  }
@@ -1,16 +1,20 @@
1
- import { MockActivityEnvironment } from "@temporalio/testing";
2
- import { ContentEventName, DSLActivityExecutionPayload } from "@vertesia/common";
3
- import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest";
4
- import { resolveRemoteActivities, type RemoteActivityMap, ResolveRemoteActivitiesParams } from "./resolveRemoteActivities.js";
1
+ import { MockActivityEnvironment } from '@temporalio/testing';
2
+ import { ContentEventName, type DSLActivityExecutionPayload } from '@vertesia/common';
3
+ import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest';
4
+ import {
5
+ type RemoteActivityMap,
6
+ type ResolveRemoteActivitiesParams,
7
+ resolveRemoteActivities,
8
+ } from './resolveRemoteActivities.js';
5
9
 
6
- vi.stubGlobal("fetch", vi.fn());
10
+ vi.stubGlobal('fetch', vi.fn());
7
11
 
8
12
  // Mock getVertesiaClient
9
13
  const mockGetInstalledApps = vi.fn();
10
- vi.mock("../utils/client.js", () => ({
14
+ vi.mock('../utils/client.js', () => ({
11
15
  getVertesiaClient: vi.fn().mockReturnValue({
12
16
  apps: {
13
- getInstalledApps: (...args: any[]) => mockGetInstalledApps(...args),
17
+ getInstalledApps: (...args: unknown[]) => mockGetInstalledApps(...args),
14
18
  validateUrl: vi.fn().mockResolvedValue({ valid: true }),
15
19
  },
16
20
  }),
@@ -28,187 +32,191 @@ beforeEach(() => {
28
32
  });
29
33
 
30
34
  const createPayload = (): DSLActivityExecutionPayload<ResolveRemoteActivitiesParams> => ({
31
- auth_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwOi8vbW9jay10b2tlbi1zZXJ2ZXIiLCJzdWIiOiJ0ZXN0In0.sig",
32
- account_id: "acc-123",
33
- project_id: "proj-456",
34
- params: {},
35
+ auth_token:
36
+ 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwOi8vbW9jay10b2tlbi1zZXJ2ZXIiLCJzdWIiOiJ0ZXN0In0.sig',
37
+ account_id: 'acc-123',
38
+ project_id: 'proj-456',
39
+ params: {} satisfies ResolveRemoteActivitiesParams,
35
40
  config: {
36
- studio_url: "http://mock-studio",
37
- store_url: "http://mock-store",
41
+ studio_url: 'http://mock-studio',
42
+ store_url: 'http://mock-store',
38
43
  },
39
- workflow_name: "TestWorkflow",
44
+ workflow_name: 'TestWorkflow',
40
45
  event: ContentEventName.create,
41
46
  objectIds: [],
42
47
  vars: {},
43
- activity: { name: "resolveRemoteActivities", params: {} },
48
+ activity: { name: 'resolveRemoteActivities', params: {} satisfies ResolveRemoteActivitiesParams },
44
49
  });
45
50
 
46
- describe("resolveRemoteActivities", () => {
47
- it("returns empty map when no apps installed", async () => {
51
+ describe('resolveRemoteActivities', () => {
52
+ it('should return empty map when no apps installed', async () => {
48
53
  mockGetInstalledApps.mockResolvedValueOnce([]);
49
54
 
50
55
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
51
56
  expect(result).toEqual({});
52
- expect(mockGetInstalledApps).toHaveBeenCalledWith("tools");
57
+ expect(mockGetInstalledApps).toHaveBeenCalledWith('tools');
53
58
  });
54
59
 
55
- it("returns qualified activity map from single app", async () => {
56
- mockGetInstalledApps.mockResolvedValueOnce([{
57
- id: "install-1",
58
- manifest: {
59
- name: "my-nlp-app",
60
- endpoint: "https://nlp-server.test/api/package",
60
+ it('should return qualified activity map from single app', async () => {
61
+ mockGetInstalledApps.mockResolvedValueOnce([
62
+ {
63
+ id: 'install-1',
64
+ manifest: {
65
+ name: 'my-nlp-app',
66
+ endpoint: 'https://nlp-server.test/api/package',
67
+ },
68
+ settings: { api_key: 'test' },
61
69
  },
62
- settings: { api_key: "test" },
63
- }]);
70
+ ]);
64
71
 
65
72
  mockFetch.mockResolvedValueOnce(
66
73
  new Response(
67
74
  JSON.stringify({
68
75
  activities: [
69
- { name: "analyze_sentiment", description: "Analyze sentiment", collection: "nlp" },
70
- { name: "extract_entities", description: "Extract entities", collection: "nlp" },
76
+ { name: 'analyze_sentiment', description: 'Analyze sentiment', collection: 'nlp' },
77
+ { name: 'extract_entities', description: 'Extract entities', collection: 'nlp' },
71
78
  ],
72
79
  }),
73
- { status: 200, headers: { "Content-Type": "application/json" } },
80
+ { status: 200, headers: { 'Content-Type': 'application/json' } },
74
81
  ),
75
82
  );
76
83
 
77
84
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
78
85
 
79
86
  expect(Object.keys(result)).toHaveLength(2);
80
- expect(result["app:my-nlp-app:nlp:analyze_sentiment"]).toBeDefined();
81
- expect(result["app:my-nlp-app:nlp:extract_entities"]).toBeDefined();
82
-
83
- const entry = result["app:my-nlp-app:nlp:analyze_sentiment"];
84
- expect(entry.activity_name).toBe("analyze_sentiment");
85
- expect(entry.app_name).toBe("my-nlp-app");
86
- expect(entry.app_install_id).toBe("install-1");
87
- expect(entry.app_settings).toEqual({ api_key: "test" });
87
+ expect(result['app:my-nlp-app:nlp:analyze_sentiment']).toBeDefined();
88
+ expect(result['app:my-nlp-app:nlp:extract_entities']).toBeDefined();
89
+
90
+ const entry = result['app:my-nlp-app:nlp:analyze_sentiment'];
91
+ expect(entry.activity_name).toBe('analyze_sentiment');
92
+ expect(entry.app_name).toBe('my-nlp-app');
93
+ expect(entry.app_install_id).toBe('install-1');
94
+ expect(entry.app_settings).toEqual({ api_key: 'test' });
88
95
  // URL should target the collection-specific endpoint
89
- expect(entry.url).toBe("https://nlp-server.test/api/activities/nlp");
96
+ expect(entry.url).toBe('https://nlp-server.test/api/activities/nlp');
90
97
  });
91
98
 
92
- it("merges activities from multiple apps", async () => {
99
+ it('should merge activities from multiple apps', async () => {
93
100
  mockGetInstalledApps.mockResolvedValueOnce([
94
101
  {
95
- id: "install-1",
96
- manifest: { name: "app-one", endpoint: "https://one.test/api/package" },
102
+ id: 'install-1',
103
+ manifest: { name: 'app-one', endpoint: 'https://one.test/api/package' },
97
104
  },
98
105
  {
99
- id: "install-2",
100
- manifest: { name: "app-two", endpoint: "https://two.test/api/package" },
106
+ id: 'install-2',
107
+ manifest: { name: 'app-two', endpoint: 'https://two.test/api/package' },
101
108
  },
102
109
  ]);
103
110
 
104
111
  mockFetch
105
112
  .mockResolvedValueOnce(
106
- new Response(JSON.stringify({ activities: [{ name: "task_a", collection: "main" }] }), { status: 200 }),
113
+ new Response(JSON.stringify({ activities: [{ name: 'task_a', collection: 'main' }] }), { status: 200 }),
107
114
  )
108
115
  .mockResolvedValueOnce(
109
- new Response(JSON.stringify({ activities: [{ name: "task_b", collection: "main" }] }), { status: 200 }),
116
+ new Response(JSON.stringify({ activities: [{ name: 'task_b', collection: 'main' }] }), { status: 200 }),
110
117
  );
111
118
 
112
119
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
113
120
 
114
121
  expect(Object.keys(result)).toHaveLength(2);
115
- expect(result["app:app-one:main:task_a"]).toBeDefined();
116
- expect(result["app:app-two:main:task_b"]).toBeDefined();
122
+ expect(result['app:app-one:main:task_a']).toBeDefined();
123
+ expect(result['app:app-two:main:task_b']).toBeDefined();
117
124
  });
118
125
 
119
- it("skips app with no activities", async () => {
120
- mockGetInstalledApps.mockResolvedValueOnce([{
121
- id: "install-1",
122
- manifest: { name: "empty-app", endpoint: "https://empty.test/api/package" },
123
- }]);
126
+ it('should skip app with no activities', async () => {
127
+ mockGetInstalledApps.mockResolvedValueOnce([
128
+ {
129
+ id: 'install-1',
130
+ manifest: { name: 'empty-app', endpoint: 'https://empty.test/api/package' },
131
+ },
132
+ ]);
124
133
 
125
- mockFetch.mockResolvedValueOnce(
126
- new Response(JSON.stringify({ activities: [] }), { status: 200 }),
127
- );
134
+ mockFetch.mockResolvedValueOnce(new Response(JSON.stringify({ activities: [] }), { status: 200 }));
128
135
 
129
136
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
130
137
  expect(result).toEqual({});
131
138
  });
132
139
 
133
- it("skips app with no endpoint", async () => {
134
- mockGetInstalledApps.mockResolvedValueOnce([{
135
- id: "install-1",
136
- manifest: { name: "no-endpoint" },
137
- }]);
140
+ it('should skip app with no endpoint', async () => {
141
+ mockGetInstalledApps.mockResolvedValueOnce([
142
+ {
143
+ id: 'install-1',
144
+ manifest: { name: 'no-endpoint' },
145
+ },
146
+ ]);
138
147
 
139
148
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
140
149
  expect(result).toEqual({});
141
150
  expect(mockFetch).not.toHaveBeenCalled();
142
151
  });
143
152
 
144
- it("handles duplicate qualified names across apps (first wins)", async () => {
153
+ it('should handle duplicate qualified names across apps (first wins)', async () => {
145
154
  mockGetInstalledApps.mockResolvedValueOnce([
146
155
  {
147
- id: "install-1",
148
- manifest: { name: "same-app", endpoint: "https://one.test/api/package" },
156
+ id: 'install-1',
157
+ manifest: { name: 'same-app', endpoint: 'https://one.test/api/package' },
149
158
  },
150
159
  {
151
- id: "install-2",
152
- manifest: { name: "same-app", endpoint: "https://two.test/api/package" },
160
+ id: 'install-2',
161
+ manifest: { name: 'same-app', endpoint: 'https://two.test/api/package' },
153
162
  },
154
163
  ]);
155
164
 
156
165
  mockFetch
157
166
  .mockResolvedValueOnce(
158
- new Response(JSON.stringify({ activities: [{ name: "task", collection: "main" }] }), { status: 200 }),
167
+ new Response(JSON.stringify({ activities: [{ name: 'task', collection: 'main' }] }), { status: 200 }),
159
168
  )
160
169
  .mockResolvedValueOnce(
161
- new Response(JSON.stringify({ activities: [{ name: "task", collection: "main" }] }), { status: 200 }),
170
+ new Response(JSON.stringify({ activities: [{ name: 'task', collection: 'main' }] }), { status: 200 }),
162
171
  );
163
172
 
164
173
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
165
174
  expect(Object.keys(result)).toHaveLength(1);
166
- expect(result["app:same-app:main:task"].app_install_id).toBe("install-1");
175
+ expect(result['app:same-app:main:task'].app_install_id).toBe('install-1');
167
176
  });
168
177
 
169
- it("continues with other apps when one fetch fails", async () => {
178
+ it('should continue with other apps when one fetch fails', async () => {
170
179
  mockGetInstalledApps.mockResolvedValueOnce([
171
180
  {
172
- id: "install-1",
173
- manifest: { name: "failing-app", endpoint: "https://fail.test/api/package" },
181
+ id: 'install-1',
182
+ manifest: { name: 'failing-app', endpoint: 'https://fail.test/api/package' },
174
183
  },
175
184
  {
176
- id: "install-2",
177
- manifest: { name: "working-app", endpoint: "https://work.test/api/package" },
185
+ id: 'install-2',
186
+ manifest: { name: 'working-app', endpoint: 'https://work.test/api/package' },
178
187
  },
179
188
  ]);
180
189
 
181
190
  mockFetch
182
- .mockRejectedValueOnce(new Error("Connection refused"))
191
+ .mockRejectedValueOnce(new Error('Connection refused'))
183
192
  .mockResolvedValueOnce(
184
- new Response(JSON.stringify({ activities: [{ name: "task", collection: "main" }] }), { status: 200 }),
193
+ new Response(JSON.stringify({ activities: [{ name: 'task', collection: 'main' }] }), { status: 200 }),
185
194
  );
186
195
 
187
196
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
188
197
  expect(Object.keys(result)).toHaveLength(1);
189
- expect(result["app:working-app:main:task"]).toBeDefined();
198
+ expect(result['app:working-app:main:task']).toBeDefined();
190
199
  });
191
200
 
192
- it("returns empty map when getInstalledApps fails", async () => {
193
- mockGetInstalledApps.mockRejectedValueOnce(new Error("API error"));
201
+ it('should return empty map when getInstalledApps fails', async () => {
202
+ mockGetInstalledApps.mockRejectedValueOnce(new Error('API error'));
194
203
 
195
204
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
196
205
  expect(result).toEqual({});
197
206
  });
198
207
 
199
- it("skips activities without collection", async () => {
200
- mockGetInstalledApps.mockResolvedValueOnce([{
201
- id: "install-1",
202
- manifest: { name: "bad-app", endpoint: "https://bad.test/api/package" },
203
- }]);
208
+ it('should skip activities without collection', async () => {
209
+ mockGetInstalledApps.mockResolvedValueOnce([
210
+ {
211
+ id: 'install-1',
212
+ manifest: { name: 'bad-app', endpoint: 'https://bad.test/api/package' },
213
+ },
214
+ ]);
204
215
 
205
216
  mockFetch.mockResolvedValueOnce(
206
217
  new Response(
207
218
  JSON.stringify({
208
- activities: [
209
- { name: "no_collection" },
210
- { name: "has_collection", collection: "main" },
211
- ],
219
+ activities: [{ name: 'no_collection' }, { name: 'has_collection', collection: 'main' }],
212
220
  }),
213
221
  { status: 200 },
214
222
  ),
@@ -216,6 +224,6 @@ describe("resolveRemoteActivities", () => {
216
224
 
217
225
  const result: RemoteActivityMap = await testEnv.run(resolveRemoteActivities, createPayload());
218
226
  expect(Object.keys(result)).toHaveLength(1);
219
- expect(result["app:bad-app:main:has_collection"]).toBeDefined();
227
+ expect(result['app:bad-app:main:has_collection']).toBeDefined();
220
228
  });
221
229
  });