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

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,432 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.prepareVideo = prepareVideo;
40
- const activity_1 = require("@temporalio/activity");
41
- const common_1 = require("@vertesia/common");
42
- const child_process_1 = require("child_process");
43
- const fs_1 = __importDefault(require("fs"));
44
- const os_1 = __importDefault(require("os"));
45
- const path_1 = __importDefault(require("path"));
46
- const util_1 = require("util");
47
- const ActivityContext_js_1 = require("../../dsl/setup/ActivityContext.js");
48
- const errors_js_1 = require("../../errors.js");
49
- const blobs_js_1 = require("../../utils/blobs.js");
50
- const api_fetch_client_1 = require("@vertesia/api-fetch-client");
51
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
52
- // Default configuration constants
53
- const DEFAULT_MAX_RESOLUTION = 1920; // Max resolution for video rendition (produces 1080p)
54
- const DEFAULT_THUMBNAIL_SIZE = 256; // Thumbnail longest side in pixels
55
- const DEFAULT_POSTER_SIZE = 1920; // Poster longest side in pixels
56
- const DEFAULT_GENERATE_AUDIO = true; // Generate audio-only rendition by default
57
- // Timestamp calculation constants for screenshots
58
- const THUMBNAIL_TIMESTAMP_RATIO = 0.25; // Extract thumbnail at 25% of video duration
59
- const POSTER_TIMESTAMP_RATIO = 0.05; // Extract poster at 5% of video duration
60
- const POSTER_TIMESTAMP_MAX = 2; // Maximum poster timestamp in seconds
61
- const MIN_SCREENSHOT_TIMESTAMP = 1; // Minimum timestamp for screenshots in seconds
62
- // FFmpeg configuration constants
63
- const FFMPEG_MAX_BUFFER = 1024 * 1024 * 10; // 10MB buffer for ffmpeg output
64
- const VIDEO_CRF = '23'; // Constant Rate Factor for video quality (18-28, lower = better)
65
- const AUDIO_BITRATE = '128k'; // Audio bitrate for AAC encoding
66
- const JPEG_QUALITY = '2'; // JPEG quality for screenshots (1-31, lower = better)
67
- /**
68
- * Extract comprehensive video metadata using ffprobe
69
- */
70
- async function getVideoMetadata(videoPath) {
71
- try {
72
- const command = `ffprobe -v quiet -print_format json -show_format -show_streams "${videoPath}"`;
73
- const { stdout } = await execAsync(command);
74
- const metadata = JSON.parse(stdout);
75
- const videoStream = metadata.streams.find((stream) => stream.codec_type === 'video');
76
- if (!videoStream) {
77
- throw activity_1.ApplicationFailure.nonRetryable('No video stream found in file');
78
- }
79
- const duration = parseFloat(metadata.format.duration ?? '0') || 0;
80
- const width = videoStream.width || 0;
81
- const height = videoStream.height || 0;
82
- const codec = videoStream.codec_name || 'unknown';
83
- const bitrate = parseInt(metadata.format.bit_rate ?? '0', 10) || 0;
84
- // Calculate FPS from r_frame_rate (e.g., "30/1" or "24000/1001")
85
- let fps = 0;
86
- if (videoStream.r_frame_rate) {
87
- const [num, den] = videoStream.r_frame_rate.split('/').map(Number);
88
- fps = den > 0 ? num / den : 0;
89
- }
90
- // Check if video has an audio stream
91
- const audioStream = metadata.streams.find((stream) => stream.codec_type === 'audio');
92
- const hasAudio = !!audioStream;
93
- return { duration, width, height, codec, bitrate, fps, hasAudio };
94
- }
95
- catch (error) {
96
- activity_1.log.error(`Failed to get video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
97
- if (error instanceof activity_1.ApplicationFailure) {
98
- throw error;
99
- }
100
- throw new Error(`Failed to probe video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
101
- }
102
- }
103
- /**
104
- * Calculate scaled dimensions maintaining aspect ratio
105
- * Scales based on longest side, ensuring dimensions are even (required for H.264)
106
- */
107
- function calculateScaledDimensions(width, height, maxResolution) {
108
- const longestSide = Math.max(width, height);
109
- let newWidth;
110
- let newHeight;
111
- if (longestSide > maxResolution) {
112
- // Scale down if video is larger than max resolution
113
- const scale = maxResolution / longestSide;
114
- newWidth = Math.floor(width * scale);
115
- newHeight = Math.floor(height * scale);
116
- }
117
- else {
118
- // Keep original dimensions if video is smaller
119
- newWidth = width;
120
- newHeight = height;
121
- }
122
- // Ensure dimensions are divisible by 2 (required for H.264/image processing)
123
- const adjustedWidth = newWidth % 2 === 0 ? newWidth : newWidth - 1;
124
- const adjustedHeight = newHeight % 2 === 0 ? newHeight : newHeight - 1;
125
- return { width: adjustedWidth, height: adjustedHeight };
126
- }
127
- /**
128
- * Generate a video rendition with resolution limited to maxResolution (e.g., 1080p)
129
- * Uses H.264 codec for broad compatibility
130
- */
131
- async function generateVideoRendition(videoPath, outputDir, metadata, maxResolution) {
132
- const outputFile = path_1.default.join(outputDir, `rendition_${maxResolution}p.mp4`);
133
- // Calculate scaled dimensions
134
- const dimensions = calculateScaledDimensions(metadata.width, metadata.height, maxResolution);
135
- activity_1.log.info(`Video rendition dimensions: ${metadata.width}x${metadata.height} -> ${dimensions.width}x${dimensions.height}`);
136
- // Combine scale with color space conversion for maximum web compatibility
137
- // format=yuv420p converts to 4:2:0 chroma subsampling (from ProRes 4:2:2 or higher)
138
- const videoFilters = `scale=${dimensions.width}:${dimensions.height},format=yuv420p`;
139
- const command = [
140
- 'ffmpeg',
141
- '-y', // Overwrite output
142
- '-i', `"${videoPath}"`,
143
- '-vf', `"${videoFilters}"`,
144
- '-c:v', 'libx264', // H.264 codec
145
- '-preset', 'medium', // Balance between speed and compression
146
- '-crf', VIDEO_CRF, // Constant Rate Factor (18-28, lower = better quality)
147
- '-pix_fmt', 'yuv420p', // Explicitly set pixel format for compatibility
148
- '-c:a', 'aac', // Audio codec
149
- '-b:a', AUDIO_BITRATE, // Audio bitrate
150
- '-movflags', '+faststart', // Enable streaming
151
- '-max_muxing_queue_size', '1024', // Prevent muxing issues
152
- `"${outputFile}"`,
153
- ].join(' ');
154
- activity_1.log.info(`Generating ${maxResolution}p video rendition`, { command });
155
- try {
156
- const { stderr } = await execAsync(command, { maxBuffer: FFMPEG_MAX_BUFFER });
157
- if (stderr && !stderr.includes('frame=')) {
158
- activity_1.log.debug(`FFmpeg stderr for video rendition: ${stderr}`);
159
- }
160
- // Verify output file was created
161
- try {
162
- await fs_1.default.promises.access(outputFile, fs_1.default.constants.F_OK);
163
- activity_1.log.info(`Generated ${maxResolution}p video rendition: ${outputFile}`);
164
- return {
165
- file: outputFile,
166
- width: dimensions.width,
167
- height: dimensions.height,
168
- };
169
- }
170
- catch {
171
- activity_1.log.warn(`Video rendition not generated`);
172
- return null;
173
- }
174
- }
175
- catch (error) {
176
- activity_1.log.error(`Failed to generate video rendition: ${error instanceof Error ? error.message : 'Unknown error'}`);
177
- return null;
178
- }
179
- }
180
- /**
181
- * Extract audio track from video as AAC audio file
182
- */
183
- async function generateAudioRendition(videoPath, outputDir) {
184
- const outputFile = path_1.default.join(outputDir, 'audio.m4a');
185
- const command = [
186
- 'ffmpeg',
187
- '-y', // Overwrite output
188
- '-i', `"${videoPath}"`,
189
- '-vn', // No video
190
- '-c:a', 'aac', // Audio codec
191
- '-b:a', AUDIO_BITRATE, // Audio bitrate
192
- `"${outputFile}"`,
193
- ].join(' ');
194
- activity_1.log.info('Generating audio-only rendition', { command });
195
- try {
196
- const { stderr } = await execAsync(command, { maxBuffer: FFMPEG_MAX_BUFFER });
197
- if (stderr && !stderr.includes('frame=')) {
198
- activity_1.log.debug(`FFmpeg stderr for audio rendition: ${stderr}`);
199
- }
200
- // Verify output file was created
201
- try {
202
- await fs_1.default.promises.access(outputFile, fs_1.default.constants.F_OK);
203
- activity_1.log.info(`Generated audio rendition: ${outputFile}`);
204
- return outputFile;
205
- }
206
- catch {
207
- activity_1.log.warn('Audio rendition not generated');
208
- return null;
209
- }
210
- }
211
- catch (error) {
212
- activity_1.log.error(`Failed to generate audio rendition: ${error instanceof Error ? error.message : 'Unknown error'}`);
213
- return null;
214
- }
215
- }
216
- /**
217
- * Extract a screenshot frame from the video at a specific timestamp
218
- */
219
- async function generateScreenshot(videoPath, outputDir, timestamp, maxSize, name, metadata) {
220
- const outputFile = path_1.default.join(outputDir, `${name}.jpg`);
221
- // Calculate scaled dimensions
222
- const dimensions = calculateScaledDimensions(metadata.width, metadata.height, maxSize);
223
- const scaleFilter = `scale=${dimensions.width}:${dimensions.height}`;
224
- const command = [
225
- 'ffmpeg',
226
- '-y',
227
- '-ss', timestamp.toString(),
228
- '-i', `"${videoPath}"`,
229
- '-vframes', '1',
230
- '-vf', `"${scaleFilter}"`,
231
- '-q:v', JPEG_QUALITY, // High quality JPEG
232
- `"${outputFile}"`,
233
- ].join(' ');
234
- activity_1.log.info(`Generating ${name} at ${timestamp}s`, { command });
235
- try {
236
- const { stderr } = await execAsync(command);
237
- if (stderr && !stderr.includes('frame=')) {
238
- activity_1.log.debug(`FFmpeg stderr for ${name}: ${stderr}`);
239
- }
240
- // Verify output file was created
241
- try {
242
- await fs_1.default.promises.access(outputFile, fs_1.default.constants.F_OK);
243
- activity_1.log.info(`Generated ${name}: ${outputFile}`);
244
- return {
245
- file: outputFile,
246
- width: dimensions.width,
247
- height: dimensions.height,
248
- };
249
- }
250
- catch {
251
- activity_1.log.warn(`${name} not generated`);
252
- return null;
253
- }
254
- }
255
- catch (error) {
256
- activity_1.log.error(`Failed to generate ${name}: ${error instanceof Error ? error.message : 'Unknown error'}`);
257
- return null;
258
- }
259
- }
260
- /**
261
- * Upload a file to the storage and return its URI
262
- */
263
- async function uploadFile(client, filePath, mimeType, fileName, storagePath) {
264
- const { NodeStreamSource } = await Promise.resolve().then(() => __importStar(require('@vertesia/client/node')));
265
- const fileStream = fs_1.default.createReadStream(filePath);
266
- const source = new NodeStreamSource(fileStream, fileName, mimeType, storagePath);
267
- const result = await client.files.uploadFile(source);
268
- activity_1.log.info(`Uploaded file to ${storagePath}`, { result });
269
- return result;
270
- }
271
- /**
272
- * Upload a media result and create a rendition entry
273
- */
274
- async function uploadMediaAsRendition(client, result, renditionName, fileName, mimeType, etag, pathSegment) {
275
- const storagePath = `renditions/${etag}/${pathSegment}/${fileName}`;
276
- const uri = await uploadFile(client, result.file, mimeType, fileName, storagePath);
277
- return {
278
- name: renditionName,
279
- dimensions: {
280
- width: result.width,
281
- height: result.height,
282
- },
283
- content: {
284
- source: uri,
285
- type: mimeType,
286
- name: fileName,
287
- },
288
- };
289
- }
290
- /**
291
- * Main activity: Prepare video by extracting metadata and generating renditions
292
- */
293
- async function prepareVideo(payload) {
294
- const { client, objectId, params, } = await (0, ActivityContext_js_1.setupActivity)(payload);
295
- const maxResolution = params.maxResolution ?? DEFAULT_MAX_RESOLUTION;
296
- const thumbnailSize = params.thumbnailSize ?? DEFAULT_THUMBNAIL_SIZE;
297
- const posterSize = params.posterSize ?? DEFAULT_POSTER_SIZE;
298
- const generateAudio = params.generateAudio ?? DEFAULT_GENERATE_AUDIO;
299
- activity_1.log.info(`Preparing video for ${objectId}`, {
300
- maxResolution,
301
- thumbnailSize,
302
- posterSize,
303
- });
304
- // Retrieve the content object
305
- const inputObject = await client.objects.retrieve(objectId).catch((err) => {
306
- activity_1.log.error(`Failed to retrieve document ${objectId}`, { err });
307
- if (err instanceof api_fetch_client_1.RequestError && err.status === 404) {
308
- throw new errors_js_1.DocumentNotFoundError(`Document ${objectId} not found`, [objectId]);
309
- }
310
- throw err;
311
- });
312
- if (!inputObject.content?.source) {
313
- activity_1.log.error(`Document ${objectId} has no source`);
314
- throw new errors_js_1.DocumentNotFoundError(`Document ${objectId} has no source`, [objectId]);
315
- }
316
- if (!inputObject.content.type || !inputObject.content.type.startsWith('video/')) {
317
- activity_1.log.error(`Document ${objectId} is not a video: ${inputObject.content.type}`);
318
- throw new errors_js_1.InvalidContentTypeError(objectId, 'video/*', inputObject.content.type || 'unknown');
319
- }
320
- // Download video to temp file
321
- const videoFile = await (0, blobs_js_1.saveBlobToTempFile)(client, inputObject.content.source);
322
- const tempOutputDir = fs_1.default.mkdtempSync(path_1.default.join(os_1.default.tmpdir(), 'prepare-video-'));
323
- try {
324
- // Step 1: Extract video metadata
325
- activity_1.log.info('Extracting video metadata');
326
- const metadata = await getVideoMetadata(videoFile);
327
- // Step 2: Generate video rendition
328
- activity_1.log.info('Generating video rendition');
329
- const renditionResult = await generateVideoRendition(videoFile, tempOutputDir, metadata, maxResolution);
330
- // Step 3 & 4: Generate thumbnail and poster in parallel
331
- activity_1.log.info('Generating thumbnail and poster');
332
- const thumbnailTimestamp = Math.max(metadata.duration * THUMBNAIL_TIMESTAMP_RATIO, MIN_SCREENSHOT_TIMESTAMP);
333
- const posterTimestamp = Math.max(Math.min(metadata.duration * POSTER_TIMESTAMP_RATIO, POSTER_TIMESTAMP_MAX), MIN_SCREENSHOT_TIMESTAMP);
334
- const [thumbnailResult, posterResult] = await Promise.all([
335
- generateScreenshot(videoFile, tempOutputDir, thumbnailTimestamp, thumbnailSize, 'thumbnail', metadata),
336
- generateScreenshot(videoFile, tempOutputDir, posterTimestamp, posterSize, 'poster', metadata),
337
- ]);
338
- // Step 5: Generate audio rendition (if video has audio and requested)
339
- let audioFile = null;
340
- if (generateAudio && metadata.hasAudio) {
341
- activity_1.log.info('Generating audio rendition');
342
- audioFile = await generateAudioRendition(videoFile, tempOutputDir);
343
- }
344
- else if (generateAudio && !metadata.hasAudio) {
345
- activity_1.log.info('Skipping audio rendition - video has no audio track');
346
- }
347
- // Step 6: Upload generated files
348
- const renditions = [];
349
- const etag = inputObject.content.etag ?? inputObject.id;
350
- if (renditionResult) {
351
- const videoRendition = await uploadMediaAsRendition(client, renditionResult, common_1.WEB_VIDEO_RENDITION_NAME, `${maxResolution}px.mp4`, 'video/mp4', etag, 'video');
352
- renditions.push(videoRendition);
353
- }
354
- if (thumbnailResult) {
355
- const fileName = 'thumbnail.jpg';
356
- const storagePath = `renditions/${etag}/${thumbnailSize}/${fileName}`;
357
- await uploadFile(client, thumbnailResult.file, 'image/jpeg', fileName, storagePath);
358
- }
359
- if (posterResult) {
360
- const posterRendition = await uploadMediaAsRendition(client, posterResult, common_1.POSTER_RENDITION_NAME, 'poster.jpg', 'image/jpeg', etag, `${posterSize}`);
361
- renditions.push(posterRendition);
362
- }
363
- if (audioFile) {
364
- const audioRendition = await uploadMediaAsRendition(client, { file: audioFile, width: 0, height: 0 }, common_1.AUDIO_RENDITION_NAME, 'audio.m4a', 'audio/mp4', etag, 'audio');
365
- renditions.push(audioRendition);
366
- }
367
- // Step 7: Update content object with metadata and renditions
368
- const videoMetadata = {
369
- type: common_1.ContentNature.Video,
370
- duration: metadata.duration,
371
- dimensions: {
372
- width: metadata.width,
373
- height: metadata.height,
374
- },
375
- renditions,
376
- hasAudio: metadata.hasAudio,
377
- generation_runs: inputObject.metadata?.generation_runs || [],
378
- };
379
- await client.objects.update(objectId, {
380
- metadata: videoMetadata,
381
- });
382
- activity_1.log.info(`Successfully prepared video ${objectId}`, {
383
- duration: metadata.duration,
384
- dimensions: `${metadata.width}x${metadata.height}`,
385
- codec: metadata.codec,
386
- bitrate: metadata.bitrate,
387
- fps: metadata.fps,
388
- hasAudio: metadata.hasAudio,
389
- renditionsGenerated: renditions.length,
390
- });
391
- return {
392
- objectId,
393
- metadata: {
394
- duration: metadata.duration,
395
- width: metadata.width,
396
- height: metadata.height,
397
- codec: metadata.codec,
398
- bitrate: metadata.bitrate,
399
- fps: metadata.fps,
400
- hasAudio: metadata.hasAudio,
401
- },
402
- renditions: renditions,
403
- status: 'success',
404
- };
405
- }
406
- catch (error) {
407
- const errorMessage = error instanceof Error ? error.message : 'Unknown error';
408
- activity_1.log.error(`Error preparing video: ${errorMessage}`, { error });
409
- // Re-throw known errors as-is
410
- if (error instanceof errors_js_1.DocumentNotFoundError || error instanceof errors_js_1.InvalidContentTypeError) {
411
- throw error;
412
- }
413
- // Wrap unknown errors in Error
414
- throw new Error(`Failed to prepare video ${objectId}: ${errorMessage}`);
415
- }
416
- finally {
417
- // Clean up temporary files
418
- const cleanupPromises = [];
419
- if (videoFile) {
420
- cleanupPromises.push(fs_1.default.promises.unlink(videoFile).catch((err) => {
421
- activity_1.log.warn(`Failed to cleanup video file: ${videoFile}`, { err });
422
- }));
423
- }
424
- if (tempOutputDir) {
425
- cleanupPromises.push(fs_1.default.promises.rm(tempOutputDir, { recursive: true, force: true }).catch((err) => {
426
- activity_1.log.warn(`Failed to cleanup temp directory: ${tempOutputDir}`, { err });
427
- }));
428
- }
429
- await Promise.allSettled(cleanupPromises);
430
- }
431
- }
432
- //# sourceMappingURL=prepareVideo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prepareVideo.js","sourceRoot":"","sources":["../../../../src/activities/media/prepareVideo.ts"],"names":[],"mappings":"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"}
@@ -1,49 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.probeMediaStreams = probeMediaStreams;
4
- const activity_1 = require("@temporalio/activity");
5
- const api_fetch_client_1 = require("@vertesia/api-fetch-client");
6
- const child_process_1 = require("child_process");
7
- const util_1 = require("util");
8
- const ActivityContext_js_1 = require("../../dsl/setup/ActivityContext.js");
9
- const errors_js_1 = require("../../errors.js");
10
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
11
- const FFPROBE_MAX_BUFFER = 1024 * 1024; // 1MB is more than enough for stream metadata JSON
12
- async function probeMediaStreams(payload) {
13
- const { client, objectId } = await (0, ActivityContext_js_1.setupActivity)(payload);
14
- const inputObject = await client.objects.retrieve(objectId).catch((err) => {
15
- activity_1.log.error(`Failed to retrieve object ${objectId}`, { err });
16
- if (err instanceof api_fetch_client_1.RequestError && err.status === 404) {
17
- throw new errors_js_1.DocumentNotFoundError(`Object ${objectId} not found`, [objectId]);
18
- }
19
- throw err;
20
- });
21
- const source = inputObject.content?.source;
22
- if (!source) {
23
- throw new errors_js_1.DocumentNotFoundError(`Object ${objectId} has no source`, [objectId]);
24
- }
25
- const { url } = await client.files.getDownloadUrl(source);
26
- if (!url) {
27
- throw new errors_js_1.DocumentNotFoundError(`Failed to get download URL for object ${objectId}`);
28
- }
29
- // ffprobe reads only the container headers via HTTP range requests.
30
- // -probesize 32k caps the amount read from the network to ~32 KB.
31
- let stdout;
32
- try {
33
- ({ stdout } = await execAsync(`ffprobe -v quiet -probesize 32k -print_format json -show_streams "${url}"`, { maxBuffer: FFPROBE_MAX_BUFFER }));
34
- }
35
- catch (err) {
36
- const message = err instanceof Error ? err.message : String(err);
37
- activity_1.log.error(`ffprobe failed for object ${objectId}: ${message}`);
38
- throw new Error(`Failed to probe media streams for object ${objectId}: ${message}`);
39
- }
40
- const { streams } = JSON.parse(stdout);
41
- const hasVideo = streams.some(s => s.codec_type === 'video');
42
- const hasAudio = streams.some(s => s.codec_type === 'audio');
43
- activity_1.log.info(`Media probe result for object ${objectId}`, { hasVideo, hasAudio });
44
- if (!hasVideo && !hasAudio) {
45
- throw activity_1.ApplicationFailure.nonRetryable(`No audio or video streams found in container for object ${objectId}`);
46
- }
47
- return { hasVideo, hasAudio };
48
- }
49
- //# sourceMappingURL=probeMediaStreams.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"probeMediaStreams.js","sourceRoot":"","sources":["../../../../src/activities/media/probeMediaStreams.ts"],"names":[],"mappings":";;AAgCA,8CAgDC;AAhFD,mDAA+D;AAE/D,iEAA0D;AAC1D,iDAAqC;AACrC,+BAAiC;AACjC,2EAAmE;AACnE,+CAAwD;AAExD,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AAElC,MAAM,kBAAkB,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,mDAAmD;AAsBpF,KAAK,UAAU,iBAAiB,CAAC,OAA6D;IACjG,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,kCAAa,EAA0B,OAAO,CAAC,CAAC;IAEnF,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QAC/E,cAAG,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5D,IAAI,GAAG,YAAY,+BAAY,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACpD,MAAM,IAAI,iCAAqB,CAAC,UAAU,QAAQ,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,GAAG,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,iCAAqB,CAAC,UAAU,QAAQ,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,MAAM,IAAI,iCAAqB,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,oEAAoE;IACpE,kEAAkE;IAClE,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACD,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CACzB,qEAAqE,GAAG,GAAG,EAC3E,EAAE,SAAS,EAAE,kBAAkB,EAAE,CACpC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,cAAG,CAAC,KAAK,CAAC,6BAA6B,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,4CAA4C,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAkB,CAAC;IACxD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC;IAE7D,cAAG,CAAC,IAAI,CAAC,iCAAiC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE9E,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzB,MAAM,6BAAkB,CAAC,YAAY,CACjC,2DAA2D,QAAQ,EAAE,CACxE,CAAC;IACN,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAClC,CAAC"}
@@ -1,103 +0,0 @@
1
- "use strict";
2
- /**
3
- * Use textract to convert a pdf into a data structure of the following format:
4
- * <document>
5
- * <page number="n">
6
- * <text/>
7
- * <table/>
8
- * <text/>
9
- * <figure/>
10
- * ...
11
- * </page>
12
- */
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.convertPdfToStructuredText = convertPdfToStructuredText;
15
- exports.getS3AWSCredentials = getS3AWSCredentials;
16
- const credential_providers_1 = require("@aws-sdk/credential-providers");
17
- const common_1 = require("@vertesia/common");
18
- const activity_1 = require("@temporalio/activity");
19
- const TextractProcessor_js_1 = require("../../conversion/TextractProcessor.js");
20
- const ActivityContext_js_1 = require("../../dsl/setup/ActivityContext.js");
21
- const errors_js_1 = require("../../errors.js");
22
- const result_types_js_1 = require("../../result-types.js");
23
- const blobs_js_1 = require("../../utils/blobs.js");
24
- const tokens_js_1 = require("../../utils/tokens.js");
25
- async function convertPdfToStructuredText(payload) {
26
- const { params, client, objectId } = await (0, ActivityContext_js_1.setupActivity)(payload);
27
- const object = await client.objects.retrieve(objectId, "+text");
28
- if (object.text && !params.force) {
29
- return { hasText: true, objectId, status: result_types_js_1.TextExtractionStatus.skipped, message: "text already present and force not enabled" };
30
- }
31
- if (!object.content?.source) {
32
- throw new errors_js_1.DocumentNotFoundError(`No source found for object ${objectId}`);
33
- }
34
- const pdfUrl = await client.store.objects.getContentSource(objectId).then(res => res.source);
35
- if (!pdfUrl) {
36
- throw new errors_js_1.DocumentNotFoundError(`Error fetching source ${object.content.source}`);
37
- }
38
- const project = await client.getProject();
39
- const awsConfig = (await client.projects.integrations.retrieve(project.id, common_1.SupportedIntegrations.aws));
40
- const credentials = await getS3AWSCredentials(awsConfig, payload.auth_token, project.id);
41
- const processor = new TextractProcessor_js_1.TextractProcessor({
42
- fileKey: objectId,
43
- region: "us-west-2",
44
- bucket: "cp-textract-tests",
45
- credentials,
46
- log: activity_1.log,
47
- detectImages: true,
48
- includeConfidenceInTables: true,
49
- });
50
- try {
51
- if (!object.content.source.startsWith("s3://")) {
52
- const buf = await (0, blobs_js_1.fetchBlobAsBuffer)(client, object.content.source);
53
- await processor.upload(buf);
54
- }
55
- const jobId = await processor.startAnalysis(objectId);
56
- let jobStatus = await processor.checkJobStatus(jobId);
57
- while (jobStatus === "IN_PROGRESS") {
58
- await new Promise(resolve => setTimeout(resolve, 5000));
59
- jobStatus = await processor.checkJobStatus(jobId);
60
- }
61
- if (jobStatus === "SUCCEEDED") {
62
- activity_1.log.info(`Job ${jobId} succeeded, saving results`, { jobId });
63
- const fText = await processor.processResults(jobId);
64
- const tokensData = (0, tokens_js_1.countTokens)(fText);
65
- const etag = object.content.etag ?? (0, blobs_js_1.md5)(fText);
66
- const updateData = {
67
- text: fText,
68
- text_etag: etag,
69
- tokens: {
70
- ...tokensData,
71
- etag: etag,
72
- }
73
- };
74
- await client.objects.update(objectId, updateData);
75
- console.log("Full text updated");
76
- return { hasText: true, objectId, status: result_types_js_1.TextExtractionStatus.success, message: "Text extracted successfully" };
77
- }
78
- else {
79
- throw new Error(`Job failed with status: ${jobStatus}`);
80
- }
81
- }
82
- catch (error) {
83
- console.error("Error processing document:", error);
84
- throw error;
85
- }
86
- }
87
- async function getS3AWSCredentials(awsConfig, composableAuthToken, projectId) {
88
- // fetch s3 role ARN
89
- if (!awsConfig || !awsConfig.enabled) {
90
- throw new errors_js_1.DocumentNotFoundError("AWS integration is not enabled for this project");
91
- }
92
- if (!awsConfig.s3_role_arn) {
93
- throw new errors_js_1.DocumentNotFoundError("S3 Role ARN is not defined in AWS project integration");
94
- }
95
- activity_1.log.info("Getting AWS credentials for Textract", { projectId, composableAuthToken, roleArn: awsConfig.s3_role_arn });
96
- const credentials = (0, credential_providers_1.fromWebToken)({
97
- webIdentityToken: composableAuthToken,
98
- roleArn: awsConfig.s3_role_arn,
99
- roleSessionName: `cp-project-textract-${projectId}`,
100
- });
101
- return credentials;
102
- }
103
- //# sourceMappingURL=processPdfWithTextract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"processPdfWithTextract.js","sourceRoot":"","sources":["../../../../src/activities/media/processPdfWithTextract.ts"],"names":[],"mappings":"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"}