@vertesia/workflow 0.78.0 → 0.79.1

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 (167) hide show
  1. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js +8 -7
  2. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -1
  3. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +10 -9
  4. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -1
  5. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js +2 -1
  6. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -1
  7. package/lib/cjs/activities/chunkDocument.js +2 -1
  8. package/lib/cjs/activities/chunkDocument.js.map +1 -1
  9. package/lib/cjs/activities/executeInteraction.js +11 -7
  10. package/lib/cjs/activities/executeInteraction.js.map +1 -1
  11. package/lib/cjs/activities/generateDocumentProperties.js +11 -6
  12. package/lib/cjs/activities/generateDocumentProperties.js.map +1 -1
  13. package/lib/cjs/activities/generateOrAssignContentType.js +12 -10
  14. package/lib/cjs/activities/generateOrAssignContentType.js.map +1 -1
  15. package/lib/cjs/activities/index-dsl.js +5 -3
  16. package/lib/cjs/activities/index-dsl.js.map +1 -1
  17. package/lib/cjs/activities/media/prepareVideo.js +429 -0
  18. package/lib/cjs/activities/media/prepareVideo.js.map +1 -0
  19. package/lib/cjs/activities/media/transcribeMediaWithGladia.js +48 -15
  20. package/lib/cjs/activities/media/transcribeMediaWithGladia.js.map +1 -1
  21. package/lib/cjs/activities/notifyWebhook.js +137 -12
  22. package/lib/cjs/activities/notifyWebhook.js.map +1 -1
  23. package/lib/cjs/activities/rateLimiter.js +30 -0
  24. package/lib/cjs/activities/rateLimiter.js.map +1 -0
  25. package/lib/cjs/conversion/image.js +4 -2
  26. package/lib/cjs/conversion/image.js.map +1 -1
  27. package/lib/cjs/dsl/dsl-workflow.js +66 -0
  28. package/lib/cjs/dsl/dsl-workflow.js.map +1 -1
  29. package/lib/cjs/dsl/setup/ActivityContext.js +7 -4
  30. package/lib/cjs/dsl/setup/ActivityContext.js.map +1 -1
  31. package/lib/cjs/errors.js +22 -1
  32. package/lib/cjs/errors.js.map +1 -1
  33. package/lib/cjs/index.js +2 -1
  34. package/lib/cjs/index.js.map +1 -1
  35. package/lib/cjs/iterative-generation/activities/extractToc.js +2 -2
  36. package/lib/cjs/iterative-generation/activities/extractToc.js.map +1 -1
  37. package/lib/cjs/iterative-generation/activities/finalizeOutput.js +7 -4
  38. package/lib/cjs/iterative-generation/activities/finalizeOutput.js.map +1 -1
  39. package/lib/cjs/iterative-generation/activities/generatePart.js +18 -13
  40. package/lib/cjs/iterative-generation/activities/generatePart.js.map +1 -1
  41. package/lib/cjs/iterative-generation/activities/generateToc.js +50 -55
  42. package/lib/cjs/iterative-generation/activities/generateToc.js.map +1 -1
  43. package/lib/cjs/iterative-generation/utils.js.map +1 -1
  44. package/lib/cjs/system/notifyWebhookWorkflow.js +10 -3
  45. package/lib/cjs/system/notifyWebhookWorkflow.js.map +1 -1
  46. package/lib/cjs/utils/blobs.js +4 -1
  47. package/lib/cjs/utils/blobs.js.map +1 -1
  48. package/lib/cjs/utils/client.js +3 -1
  49. package/lib/cjs/utils/client.js.map +1 -1
  50. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js +8 -7
  51. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -1
  52. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +10 -9
  53. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -1
  54. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js +2 -1
  55. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -1
  56. package/lib/esm/activities/chunkDocument.js +2 -1
  57. package/lib/esm/activities/chunkDocument.js.map +1 -1
  58. package/lib/esm/activities/executeInteraction.js +12 -8
  59. package/lib/esm/activities/executeInteraction.js.map +1 -1
  60. package/lib/esm/activities/generateDocumentProperties.js +11 -6
  61. package/lib/esm/activities/generateDocumentProperties.js.map +1 -1
  62. package/lib/esm/activities/generateOrAssignContentType.js +12 -10
  63. package/lib/esm/activities/generateOrAssignContentType.js.map +1 -1
  64. package/lib/esm/activities/index-dsl.js +2 -1
  65. package/lib/esm/activities/index-dsl.js.map +1 -1
  66. package/lib/esm/activities/media/prepareVideo.js +390 -0
  67. package/lib/esm/activities/media/prepareVideo.js.map +1 -0
  68. package/lib/esm/activities/media/transcribeMediaWithGladia.js +50 -17
  69. package/lib/esm/activities/media/transcribeMediaWithGladia.js.map +1 -1
  70. package/lib/esm/activities/notifyWebhook.js +137 -12
  71. package/lib/esm/activities/notifyWebhook.js.map +1 -1
  72. package/lib/esm/activities/rateLimiter.js +27 -0
  73. package/lib/esm/activities/rateLimiter.js.map +1 -0
  74. package/lib/esm/conversion/image.js +4 -2
  75. package/lib/esm/conversion/image.js.map +1 -1
  76. package/lib/esm/dsl/dsl-workflow.js +68 -2
  77. package/lib/esm/dsl/dsl-workflow.js.map +1 -1
  78. package/lib/esm/dsl/setup/ActivityContext.js +10 -7
  79. package/lib/esm/dsl/setup/ActivityContext.js.map +1 -1
  80. package/lib/esm/errors.js +19 -0
  81. package/lib/esm/errors.js.map +1 -1
  82. package/lib/esm/index.js +2 -1
  83. package/lib/esm/index.js.map +1 -1
  84. package/lib/esm/iterative-generation/activities/extractToc.js +3 -3
  85. package/lib/esm/iterative-generation/activities/extractToc.js.map +1 -1
  86. package/lib/esm/iterative-generation/activities/finalizeOutput.js +9 -6
  87. package/lib/esm/iterative-generation/activities/finalizeOutput.js.map +1 -1
  88. package/lib/esm/iterative-generation/activities/generatePart.js +19 -14
  89. package/lib/esm/iterative-generation/activities/generatePart.js.map +1 -1
  90. package/lib/esm/iterative-generation/activities/generateToc.js +50 -55
  91. package/lib/esm/iterative-generation/activities/generateToc.js.map +1 -1
  92. package/lib/esm/iterative-generation/utils.js.map +1 -1
  93. package/lib/esm/system/notifyWebhookWorkflow.js +11 -4
  94. package/lib/esm/system/notifyWebhookWorkflow.js.map +1 -1
  95. package/lib/esm/utils/blobs.js +4 -1
  96. package/lib/esm/utils/blobs.js.map +1 -1
  97. package/lib/esm/utils/client.js +4 -2
  98. package/lib/esm/utils/client.js.map +1 -1
  99. package/lib/tsconfig.tsbuildinfo +1 -0
  100. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +1 -1
  101. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts +1 -1
  102. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +1 -1
  103. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +1 -1
  104. package/lib/types/activities/chunkDocument.d.ts.map +1 -1
  105. package/lib/types/activities/executeInteraction.d.ts +5 -1
  106. package/lib/types/activities/executeInteraction.d.ts.map +1 -1
  107. package/lib/types/activities/generateDocumentProperties.d.ts.map +1 -1
  108. package/lib/types/activities/generateOrAssignContentType.d.ts.map +1 -1
  109. package/lib/types/activities/index-dsl.d.ts +2 -1
  110. package/lib/types/activities/index-dsl.d.ts.map +1 -1
  111. package/lib/types/activities/media/prepareVideo.d.ts +30 -0
  112. package/lib/types/activities/media/prepareVideo.d.ts.map +1 -0
  113. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts.map +1 -1
  114. package/lib/types/activities/notifyWebhook.d.ts +14 -3
  115. package/lib/types/activities/notifyWebhook.d.ts.map +1 -1
  116. package/lib/types/activities/rateLimiter.d.ts +11 -0
  117. package/lib/types/activities/rateLimiter.d.ts.map +1 -0
  118. package/lib/types/conversion/image.d.ts.map +1 -1
  119. package/lib/types/dsl/dsl-workflow.d.ts.map +1 -1
  120. package/lib/types/dsl/setup/ActivityContext.d.ts.map +1 -1
  121. package/lib/types/errors.d.ts +10 -0
  122. package/lib/types/errors.d.ts.map +1 -1
  123. package/lib/types/index.d.ts +2 -1
  124. package/lib/types/index.d.ts.map +1 -1
  125. package/lib/types/iterative-generation/activities/extractToc.d.ts.map +1 -1
  126. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts.map +1 -1
  127. package/lib/types/iterative-generation/activities/generatePart.d.ts.map +1 -1
  128. package/lib/types/iterative-generation/activities/generateToc.d.ts.map +1 -1
  129. package/lib/types/iterative-generation/utils.d.ts +3 -4
  130. package/lib/types/iterative-generation/utils.d.ts.map +1 -1
  131. package/lib/types/system/notifyWebhookWorkflow.d.ts +3 -2
  132. package/lib/types/system/notifyWebhookWorkflow.d.ts.map +1 -1
  133. package/lib/types/utils/blobs.d.ts.map +1 -1
  134. package/lib/types/utils/client.d.ts +2 -6
  135. package/lib/types/utils/client.d.ts.map +1 -1
  136. package/lib/workflows-bundle.js +8413 -5201
  137. package/package.json +128 -120
  138. package/src/activities/advanced/createDocumentTypeFromInteractionRun.ts +9 -8
  139. package/src/activities/advanced/createOrUpdateDocumentFromInteractionRun.ts +11 -9
  140. package/src/activities/advanced/updateDocumentFromInteractionRun.ts +2 -1
  141. package/src/activities/chunkDocument.ts +3 -1
  142. package/src/activities/executeInteraction.ts +23 -14
  143. package/src/activities/generateDocumentProperties.ts +12 -7
  144. package/src/activities/generateOrAssignContentType.ts +16 -11
  145. package/src/activities/index-dsl.ts +2 -1
  146. package/src/activities/media/prepareVideo.ts +622 -0
  147. package/src/activities/media/transcribeMediaWithGladia.ts +52 -21
  148. package/src/activities/notifyWebhook.test.ts +121 -19
  149. package/src/activities/notifyWebhook.ts +165 -16
  150. package/src/activities/rateLimiter.ts +41 -0
  151. package/src/conversion/image.ts +6 -3
  152. package/src/dsl/dsl-workflow.ts +86 -0
  153. package/src/dsl/workflow-exec-child.test.ts +1 -0
  154. package/src/dsl/workflow.test.ts +1 -0
  155. package/src/errors.ts +28 -0
  156. package/src/index.ts +2 -1
  157. package/src/iterative-generation/activities/generatePart.ts +1 -1
  158. package/src/iterative-generation/activities/generateToc.ts +7 -2
  159. package/src/iterative-generation/utils.ts +4 -5
  160. package/src/system/notifyWebhookWorkflow.ts +15 -6
  161. package/lib/cjs/activities/identifyTextSections.js +0 -48
  162. package/lib/cjs/activities/identifyTextSections.js.map +0 -1
  163. package/lib/esm/activities/identifyTextSections.js +0 -45
  164. package/lib/esm/activities/identifyTextSections.js.map +0 -1
  165. package/lib/types/activities/identifyTextSections.d.ts +0 -12
  166. package/lib/types/activities/identifyTextSections.d.ts.map +0 -1
  167. package/src/activities/identifyTextSections.ts +0 -71
@@ -1 +1 @@
1
- {"version":3,"file":"executeInteraction.js","sourceRoot":"","sources":["../../../src/activities/executeInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executeInteraction.js","sourceRoot":"","sources":["../../../src/activities/executeInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAgB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAIH,kBAAkB,GAIrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC7G,OAAO,EAAgB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,UAAU;AACV,YAAY;AACZ,MAAM,IAAI,GAAoB;IAC1B,IAAI,EAAE,oBAAoB;IAC1B,MAAM,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,WAAW,CAAC;IACnD,MAAM,EAAE;QACJ,YAAY,EAAE,UAAU;QACxB,eAAe,EAAE,iBAAiB;QAClC,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,OAAO;QACpB,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,aAAa,EAAE,0BAA0B;QACzC,WAAW,EAAE;YACT,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,kBAAkB;SAC/B;KACJ;IACD,KAAK,EAAE;QACH,SAAS,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE;gBACH,EAAE,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE;aAC9B;YACD,MAAM,EAAE,OAAO;SAClB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,CAAC;YACR,KAAK,EAAE;gBACH,EAAE,EAAE,eAAe;aACtB;YACD,MAAM,EAAE,OAAO;YACf,YAAY,EAAE,OAAO;SACxB;QACD,OAAO,EAAE;YACL,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,CAAC;YACR,KAAK,EAAE;gBACH,EAAE,EAAE,cAAc;aACrB;YACD,MAAM,EAAE,gBAAgB;SAC3B;KACJ;CACJ,CAAC;AAiEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAA8D;IACnG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAA2B,OAAO,CAAC,CAAC;IAElF,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;IACpF,IAAI,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACnB,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACjD,MAAM,IAAI,0BAA0B,CAAC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,WAAW,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAED,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,8BAA8B,CAC5C,MAAM,EACN,eAAe,EACf,MAAM,EACN,WAAW,EACX,OAAO,CAAC,UAAU,CACrB,CAAC;QAEF,IAAI,gBAAgB,GAAuB,GAAG,CAAC,MAAM,CAAC;QAEtD,4DAA4D;QAC5D,IAAI,GAAG,CAAC,eAAe,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE;gBACxC,wCAAwC;gBACxC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;gBACpE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAEjD,oBAAoB;gBACpB,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC,iBAAiB,CAAC;gBACnD,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,mBAAmB,KAAK,IAAI,UAAU,IAAI,KAAK,MAAM,CAAC;gBAEvE,2CAA2C;gBAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAErC,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAC/B,MAAM,EACN,QAAQ,EACR,WAAW,CACd,CAAC;gBAEF,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC,CAAC,CACL,CAAC;YACF,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;YACvC,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,gBAAgB;SAC3B,CAAC,CAAC;IAEP,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,GAAG,CAAC,KAAK,CAAC,iCAAiC,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,IAAI,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACjE,MAAM,IAAI,sBAAsB,CAAC,KAAK,CAAC,UAAU,EAAE,0CAA0C,CAAC,CAAC;QACnG,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,yCAAyC,CAAC,EAAE,CAAC;YAC3E,wCAAwC;YACxC,MAAM,IAAI,yBAAyB,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACxF,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAAE,CAAC;YACvE,wCAAwC;YACxC,MAAM,IAAI,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,gCAAgC,eAAe,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACzF,CAAC;IACL,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAChD,MAAsB,EACtB,eAAuB,EACvB,MAAkC,EAClC,WAAgB,EAChB,KAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;IAC7B,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;IAC3C,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,IAAI,QAAQ,EAAE,CAAC;QACX,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,QAAQ,GAAyB;QACnC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;QACpC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,UAAU;QAC9C,aAAa,EAAE,IAAI,CAAC,YAAY;KACnC,CAAC;IAEF,IAAI,0BAA0B,GAA6B,SAAS,CAAC;IACrE,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAChC,iCAAiC;QACjC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,sCAAsC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACzE,MAAM,OAAO,GAAqB;gBAC9B,KAAK,EAAE,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE;gBACpC,KAAK,EAAE,CAAC;aACX,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC/D,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC7C,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnD,CAAC,CAAC,CAAC;YAEH,IAAI,WAAW,EAAE,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBAChD,0BAA0B,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;QACL,CAAC;IACL,CAAC;IACD,IAAI,KAAK,IAAI,0BAA0B,EAAE,KAAK,EAAE,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,MAAM,GAAsC;QAC9C,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,WAAW,EAAE,MAAM,CAAC,eAAe;KACtC,CAAC;IACF,MAAM,IAAI,GAAG;QACT,GAAG,WAAW;QACd,cAAc,EAAE,0BAA0B,EAAE,KAAK;KACpD,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAE3C,GAAG,CAAC,KAAK,CAAC,gCAAgC,eAAe,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE9G,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY;SAChC,aAAa,CAAC,eAAe,EAAE;QAC5B,MAAM;QACN,IAAI;QACJ,aAAa;QACb,IAAI;QACJ,MAAM,EAAE,KAAK;QACb,QAAQ;KACX,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,GAAG,CAAC,KAAK,CAAC,+BAA+B,eAAe,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACrE,MAAM,GAAG,CAAC;IACd,CAAC,CAAC,CAAC;IAEP,IAAI,KAAK,EAAE,CAAC;QACR,GAAG,CAAC,IAAI,CAAC,wBAAwB,eAAe,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;QACxD,GAAG,CAAC,KAAK,CAAC,+BAA+B,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,gCAAgC,eAAe,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { log } from "@temporalio/activity";
2
2
  import { setupActivity } from "../dsl/setup/ActivityContext.js";
3
+ import { truncByMaxTokens } from "../utils/tokens.js";
3
4
  import { executeInteractionFromActivity } from "./executeInteraction.js";
4
5
  const INT_EXTRACT_INFORMATION = "sys:ExtractInformation";
5
6
  export async function generateDocumentProperties(payload) {
@@ -27,8 +28,11 @@ export async function generateDocumentProperties(payload) {
27
28
  log.info(`Object ${objectId} is not an image or pdf`);
28
29
  return undefined;
29
30
  };
31
+ const content = doc.text
32
+ ? truncByMaxTokens(doc.text, params.truncate || 30000)
33
+ : undefined;
30
34
  const promptData = {
31
- content: doc.text ?? undefined,
35
+ content: content,
32
36
  image: getImageRef() ?? undefined,
33
37
  human_context: project?.configuration?.human_context ?? undefined,
34
38
  };
@@ -44,11 +48,12 @@ export async function generateDocumentProperties(payload) {
44
48
  return undefined;
45
49
  }
46
50
  let text = "";
47
- if (infoRes.result.title) {
48
- text += infoRes.result.title + "\n";
51
+ const jsonResult = infoRes.result.object();
52
+ if (jsonResult.title) {
53
+ text += jsonResult.title + "\n";
49
54
  }
50
- if (infoRes.result.description) {
51
- text += infoRes.result.description;
55
+ if (jsonResult.description) {
56
+ text += jsonResult.description;
52
57
  }
53
58
  if (text) {
54
59
  return text;
@@ -60,7 +65,7 @@ export async function generateDocumentProperties(payload) {
60
65
  log.info(`Extracted information from object ${objectId} with type ${type.name}`, { runId: infoRes.id });
61
66
  await client.objects.update(doc.id, {
62
67
  properties: {
63
- ...infoRes.result,
68
+ ...infoRes.result.object(),
64
69
  etag: doc.text_etag,
65
70
  },
66
71
  text: getText(),
@@ -1 +1 @@
1
- {"version":3,"file":"generateDocumentProperties.js","sourceRoot":"","sources":["../../../src/activities/generateDocumentProperties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateDocumentProperties.js","sourceRoot":"","sources":["../../../src/activities/generateDocumentProperties.ts"],"names":[],"mappings":"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"}
@@ -68,10 +68,11 @@ export async function generateOrAssignContentType(payload) {
68
68
  content,
69
69
  image: fileRef,
70
70
  });
71
- log.info("Selected Content Type Result: " + JSON.stringify(res.result));
71
+ const jsonResult = res.result.object();
72
+ log.info("Selected Content Type Result: " + JSON.stringify(jsonResult));
72
73
  //if type is not identified or not present in the database, generate a new type
73
74
  let selectedType = undefined;
74
- selectedType = types.find((t) => t.name === res.result.document_type);
75
+ selectedType = types.find((t) => t.name === jsonResult.document_type);
75
76
  if (!selectedType) {
76
77
  log.warn("Document type not identified: starting type generation");
77
78
  const newType = await generateNewType(context, existing_types, content, fileRef);
@@ -79,7 +80,7 @@ export async function generateOrAssignContentType(payload) {
79
80
  }
80
81
  if (!selectedType) {
81
82
  log.error("Type not found: ", res.result);
82
- throw new Error("Type not found: " + res.result.document_type);
83
+ throw new Error("Type not found: " + jsonResult.document_type);
83
84
  }
84
85
  //update object with selected type
85
86
  await client.objects.update(objectId, {
@@ -102,17 +103,18 @@ async function generateNewType(context, existing_types, content, fileRef) {
102
103
  human_context: project?.configuration?.human_context ?? undefined,
103
104
  image: fileRef ? fileRef : undefined,
104
105
  });
105
- if (!genTypeRes.result.document_type) {
106
+ const jsonResult = genTypeRes.result.object();
107
+ if (!jsonResult.document_type) {
106
108
  log.error("No name generated for type", genTypeRes);
107
109
  throw new Error("No name generated for type");
108
110
  }
109
- log.info("Generated schema for type", genTypeRes.result.metadata_schema);
111
+ log.info("Generated schema for type", jsonResult.metadata_schema);
110
112
  const typeData = {
111
- name: genTypeRes.result.document_type,
112
- description: genTypeRes.result.document_type_description,
113
- object_schema: genTypeRes.result.metadata_schema,
114
- is_chunkable: genTypeRes.result.is_chunkable,
115
- table_layout: genTypeRes.result.table_layout,
113
+ name: jsonResult.document_type,
114
+ description: jsonResult.document_type_description,
115
+ object_schema: jsonResult.metadata_schema,
116
+ is_chunkable: jsonResult.is_chunkable,
117
+ table_layout: jsonResult.table_layout,
116
118
  };
117
119
  const type = await client.types.create(typeData);
118
120
  return type;
@@ -1 +1 @@
1
- {"version":3,"file":"generateOrAssignContentType.js","sourceRoot":"","sources":["../../../src/activities/generateOrAssignContentType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateOrAssignContentType.js","sourceRoot":"","sources":["../../../src/activities/generateOrAssignContentType.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,8 @@ export { getObjectFromStore } from "./getObjectFromStore.js";
15
15
  export { handleDslError } from "./handleError.js";
16
16
  export { convertPdfToStructuredText } from "./media/processPdfWithTextract.js";
17
17
  export { transcribeMedia } from "./media/transcribeMediaWithGladia.js";
18
+ export { prepareVideo } from "./media/prepareVideo.js";
18
19
  export { notifyWebhook } from "./notifyWebhook.js";
19
20
  export { setDocumentStatus } from "./setDocumentStatus.js";
20
- export { identifyTextSections } from "./identifyTextSections.js";
21
+ export { checkRateLimit } from "./rateLimiter.js";
21
22
  //# sourceMappingURL=index-dsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-dsl.js","sourceRoot":"","sources":["../../../src/activities/index-dsl.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,wCAAwC,EAAE,MAAM,wDAAwD,CAAC;AAClH,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index-dsl.js","sourceRoot":"","sources":["../../../src/activities/index-dsl.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,wCAAwC,EAAE,MAAM,wDAAwD,CAAC;AAClH,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,390 @@
1
+ import { log } from '@temporalio/activity';
2
+ import { POSTER_RENDITION_NAME, AUDIO_RENDITION_NAME, WEB_VIDEO_RENDITION_NAME, ContentNature } 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, InvalidContentTypeError } from '../../errors.js';
10
+ import { saveBlobToTempFile } from '../../utils/blobs.js';
11
+ import { RequestError } from '@vertesia/api-fetch-client';
12
+ const execAsync = promisify(exec);
13
+ // Default configuration constants
14
+ const DEFAULT_MAX_RESOLUTION = 1920; // Max resolution for video rendition (produces 1080p)
15
+ const DEFAULT_THUMBNAIL_SIZE = 256; // Thumbnail longest side in pixels
16
+ const DEFAULT_POSTER_SIZE = 1920; // Poster longest side in pixels
17
+ const DEFAULT_GENERATE_AUDIO = true; // Generate audio-only rendition by default
18
+ // Timestamp calculation constants for screenshots
19
+ const THUMBNAIL_TIMESTAMP_RATIO = 0.25; // Extract thumbnail at 25% of video duration
20
+ const POSTER_TIMESTAMP_RATIO = 0.05; // Extract poster at 5% of video duration
21
+ const POSTER_TIMESTAMP_MAX = 2; // Maximum poster timestamp in seconds
22
+ const MIN_SCREENSHOT_TIMESTAMP = 1; // Minimum timestamp for screenshots in seconds
23
+ // FFmpeg configuration constants
24
+ const FFMPEG_MAX_BUFFER = 1024 * 1024 * 10; // 10MB buffer for ffmpeg output
25
+ const VIDEO_CRF = '23'; // Constant Rate Factor for video quality (18-28, lower = better)
26
+ const AUDIO_BITRATE = '128k'; // Audio bitrate for AAC encoding
27
+ const JPEG_QUALITY = '2'; // JPEG quality for screenshots (1-31, lower = better)
28
+ /**
29
+ * Extract comprehensive video metadata using ffprobe
30
+ */
31
+ async function getVideoMetadata(videoPath) {
32
+ 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);
36
+ const videoStream = metadata.streams.find((stream) => stream.codec_type === 'video');
37
+ if (!videoStream) {
38
+ throw new Error('No video stream found in file');
39
+ }
40
+ const duration = parseFloat(metadata.format.duration ?? '0') || 0;
41
+ const width = videoStream.width || 0;
42
+ const height = videoStream.height || 0;
43
+ const codec = videoStream.codec_name || 'unknown';
44
+ const bitrate = parseInt(metadata.format.bit_rate ?? '0', 10) || 0;
45
+ // Calculate FPS from r_frame_rate (e.g., "30/1" or "24000/1001")
46
+ let fps = 0;
47
+ if (videoStream.r_frame_rate) {
48
+ const [num, den] = videoStream.r_frame_rate.split('/').map(Number);
49
+ fps = den > 0 ? num / den : 0;
50
+ }
51
+ // Check if video has an audio stream
52
+ const audioStream = metadata.streams.find((stream) => stream.codec_type === 'audio');
53
+ const hasAudio = !!audioStream;
54
+ return { duration, width, height, codec, bitrate, fps, hasAudio };
55
+ }
56
+ catch (error) {
57
+ log.error(`Failed to get video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
58
+ throw new Error(`Failed to probe video metadata: ${error instanceof Error ? error.message : 'Unknown error'}`);
59
+ }
60
+ }
61
+ /**
62
+ * Calculate scaled dimensions maintaining aspect ratio
63
+ * Scales based on longest side, ensuring dimensions are even (required for H.264)
64
+ */
65
+ function calculateScaledDimensions(width, height, maxResolution) {
66
+ const longestSide = Math.max(width, height);
67
+ let newWidth;
68
+ let newHeight;
69
+ if (longestSide > maxResolution) {
70
+ // Scale down if video is larger than max resolution
71
+ const scale = maxResolution / longestSide;
72
+ newWidth = Math.floor(width * scale);
73
+ newHeight = Math.floor(height * scale);
74
+ }
75
+ else {
76
+ // Keep original dimensions if video is smaller
77
+ newWidth = width;
78
+ newHeight = height;
79
+ }
80
+ // Ensure dimensions are divisible by 2 (required for H.264/image processing)
81
+ const adjustedWidth = newWidth % 2 === 0 ? newWidth : newWidth - 1;
82
+ const adjustedHeight = newHeight % 2 === 0 ? newHeight : newHeight - 1;
83
+ return { width: adjustedWidth, height: adjustedHeight };
84
+ }
85
+ /**
86
+ * Generate a video rendition with resolution limited to maxResolution (e.g., 1080p)
87
+ * Uses H.264 codec for broad compatibility
88
+ */
89
+ async function generateVideoRendition(videoPath, outputDir, metadata, maxResolution) {
90
+ const outputFile = path.join(outputDir, `rendition_${maxResolution}p.mp4`);
91
+ // Calculate scaled dimensions
92
+ const dimensions = calculateScaledDimensions(metadata.width, metadata.height, maxResolution);
93
+ log.info(`Video rendition dimensions: ${metadata.width}x${metadata.height} -> ${dimensions.width}x${dimensions.height}`);
94
+ // Combine scale with color space conversion for maximum web compatibility
95
+ // format=yuv420p converts to 4:2:0 chroma subsampling (from ProRes 4:2:2 or higher)
96
+ const videoFilters = `scale=${dimensions.width}:${dimensions.height},format=yuv420p`;
97
+ const command = [
98
+ 'ffmpeg',
99
+ '-y', // Overwrite output
100
+ '-i', `"${videoPath}"`,
101
+ '-vf', `"${videoFilters}"`,
102
+ '-c:v', 'libx264', // H.264 codec
103
+ '-preset', 'medium', // Balance between speed and compression
104
+ '-crf', VIDEO_CRF, // Constant Rate Factor (18-28, lower = better quality)
105
+ '-pix_fmt', 'yuv420p', // Explicitly set pixel format for compatibility
106
+ '-c:a', 'aac', // Audio codec
107
+ '-b:a', AUDIO_BITRATE, // Audio bitrate
108
+ '-movflags', '+faststart', // Enable streaming
109
+ '-max_muxing_queue_size', '1024', // Prevent muxing issues
110
+ `"${outputFile}"`,
111
+ ].join(' ');
112
+ log.info(`Generating ${maxResolution}p video rendition`, { command });
113
+ try {
114
+ const { stderr } = await execAsync(command, { maxBuffer: FFMPEG_MAX_BUFFER });
115
+ if (stderr && !stderr.includes('frame=')) {
116
+ log.debug(`FFmpeg stderr for video rendition: ${stderr}`);
117
+ }
118
+ // Verify output file was created
119
+ try {
120
+ await fs.promises.access(outputFile, fs.constants.F_OK);
121
+ log.info(`Generated ${maxResolution}p video rendition: ${outputFile}`);
122
+ return {
123
+ file: outputFile,
124
+ width: dimensions.width,
125
+ height: dimensions.height,
126
+ };
127
+ }
128
+ catch {
129
+ log.warn(`Video rendition not generated`);
130
+ return null;
131
+ }
132
+ }
133
+ catch (error) {
134
+ log.error(`Failed to generate video rendition: ${error instanceof Error ? error.message : 'Unknown error'}`);
135
+ return null;
136
+ }
137
+ }
138
+ /**
139
+ * Extract audio track from video as AAC audio file
140
+ */
141
+ async function generateAudioRendition(videoPath, outputDir) {
142
+ const outputFile = path.join(outputDir, 'audio.m4a');
143
+ const command = [
144
+ 'ffmpeg',
145
+ '-y', // Overwrite output
146
+ '-i', `"${videoPath}"`,
147
+ '-vn', // No video
148
+ '-c:a', 'aac', // Audio codec
149
+ '-b:a', AUDIO_BITRATE, // Audio bitrate
150
+ `"${outputFile}"`,
151
+ ].join(' ');
152
+ log.info('Generating audio-only rendition', { command });
153
+ try {
154
+ const { stderr } = await execAsync(command, { maxBuffer: FFMPEG_MAX_BUFFER });
155
+ if (stderr && !stderr.includes('frame=')) {
156
+ log.debug(`FFmpeg stderr for audio rendition: ${stderr}`);
157
+ }
158
+ // Verify output file was created
159
+ try {
160
+ await fs.promises.access(outputFile, fs.constants.F_OK);
161
+ log.info(`Generated audio rendition: ${outputFile}`);
162
+ return outputFile;
163
+ }
164
+ catch {
165
+ log.warn('Audio rendition not generated');
166
+ return null;
167
+ }
168
+ }
169
+ catch (error) {
170
+ log.error(`Failed to generate audio rendition: ${error instanceof Error ? error.message : 'Unknown error'}`);
171
+ return null;
172
+ }
173
+ }
174
+ /**
175
+ * Extract a screenshot frame from the video at a specific timestamp
176
+ */
177
+ async function generateScreenshot(videoPath, outputDir, timestamp, maxSize, name, metadata) {
178
+ const outputFile = path.join(outputDir, `${name}.jpg`);
179
+ // Calculate scaled dimensions
180
+ const dimensions = calculateScaledDimensions(metadata.width, metadata.height, maxSize);
181
+ const scaleFilter = `scale=${dimensions.width}:${dimensions.height}`;
182
+ const command = [
183
+ 'ffmpeg',
184
+ '-y',
185
+ '-ss', timestamp.toString(),
186
+ '-i', `"${videoPath}"`,
187
+ '-vframes', '1',
188
+ '-vf', `"${scaleFilter}"`,
189
+ '-q:v', JPEG_QUALITY, // High quality JPEG
190
+ `"${outputFile}"`,
191
+ ].join(' ');
192
+ log.info(`Generating ${name} at ${timestamp}s`, { command });
193
+ try {
194
+ const { stderr } = await execAsync(command);
195
+ if (stderr && !stderr.includes('frame=')) {
196
+ log.debug(`FFmpeg stderr for ${name}: ${stderr}`);
197
+ }
198
+ // Verify output file was created
199
+ try {
200
+ await fs.promises.access(outputFile, fs.constants.F_OK);
201
+ log.info(`Generated ${name}: ${outputFile}`);
202
+ return {
203
+ file: outputFile,
204
+ width: dimensions.width,
205
+ height: dimensions.height,
206
+ };
207
+ }
208
+ catch {
209
+ log.warn(`${name} not generated`);
210
+ return null;
211
+ }
212
+ }
213
+ catch (error) {
214
+ log.error(`Failed to generate ${name}: ${error instanceof Error ? error.message : 'Unknown error'}`);
215
+ return null;
216
+ }
217
+ }
218
+ /**
219
+ * Upload a file to the storage and return its URI
220
+ */
221
+ async function uploadFile(client, filePath, mimeType, fileName, storagePath) {
222
+ const { NodeStreamSource } = await import('@vertesia/client/node');
223
+ const fileStream = fs.createReadStream(filePath);
224
+ const source = new NodeStreamSource(fileStream, fileName, mimeType, storagePath);
225
+ const result = await client.files.uploadFile(source);
226
+ log.info(`Uploaded file to ${storagePath}`, { result });
227
+ return result;
228
+ }
229
+ /**
230
+ * Upload a media result and create a rendition entry
231
+ */
232
+ async function uploadMediaAsRendition(client, result, renditionName, fileName, mimeType, etag, pathSegment) {
233
+ const storagePath = `renditions/${etag}/${pathSegment}/${fileName}`;
234
+ const uri = await uploadFile(client, result.file, mimeType, fileName, storagePath);
235
+ return {
236
+ name: renditionName,
237
+ dimensions: {
238
+ width: result.width,
239
+ height: result.height,
240
+ },
241
+ content: {
242
+ source: uri,
243
+ type: mimeType,
244
+ name: fileName,
245
+ },
246
+ };
247
+ }
248
+ /**
249
+ * Main activity: Prepare video by extracting metadata and generating renditions
250
+ */
251
+ export async function prepareVideo(payload) {
252
+ const { client, objectId, params, } = await setupActivity(payload);
253
+ const maxResolution = params.maxResolution ?? DEFAULT_MAX_RESOLUTION;
254
+ const thumbnailSize = params.thumbnailSize ?? DEFAULT_THUMBNAIL_SIZE;
255
+ const posterSize = params.posterSize ?? DEFAULT_POSTER_SIZE;
256
+ const generateAudio = params.generateAudio ?? DEFAULT_GENERATE_AUDIO;
257
+ log.info(`Preparing video for ${objectId}`, {
258
+ maxResolution,
259
+ thumbnailSize,
260
+ posterSize,
261
+ });
262
+ // Retrieve the content object
263
+ const inputObject = await client.objects.retrieve(objectId).catch((err) => {
264
+ log.error(`Failed to retrieve document ${objectId}`, { err });
265
+ if (err instanceof RequestError && err.status === 404) {
266
+ throw new DocumentNotFoundError(`Document ${objectId} not found`, [objectId]);
267
+ }
268
+ throw err;
269
+ });
270
+ if (!inputObject.content?.source) {
271
+ log.error(`Document ${objectId} has no source`);
272
+ throw new DocumentNotFoundError(`Document ${objectId} has no source`, [objectId]);
273
+ }
274
+ if (!inputObject.content.type || !inputObject.content.type.startsWith('video/')) {
275
+ log.error(`Document ${objectId} is not a video: ${inputObject.content.type}`);
276
+ throw new InvalidContentTypeError(objectId, 'video/*', inputObject.content.type || 'unknown');
277
+ }
278
+ // Download video to temp file
279
+ const videoFile = await saveBlobToTempFile(client, inputObject.content.source);
280
+ const tempOutputDir = fs.mkdtempSync(path.join(os.tmpdir(), 'prepare-video-'));
281
+ try {
282
+ // Step 1: Extract video metadata
283
+ log.info('Extracting video metadata');
284
+ const metadata = await getVideoMetadata(videoFile);
285
+ // Step 2: Generate video rendition
286
+ log.info('Generating video rendition');
287
+ const renditionResult = await generateVideoRendition(videoFile, tempOutputDir, metadata, maxResolution);
288
+ // Step 3 & 4: Generate thumbnail and poster in parallel
289
+ log.info('Generating thumbnail and poster');
290
+ const thumbnailTimestamp = Math.max(metadata.duration * THUMBNAIL_TIMESTAMP_RATIO, MIN_SCREENSHOT_TIMESTAMP);
291
+ const posterTimestamp = Math.max(Math.min(metadata.duration * POSTER_TIMESTAMP_RATIO, POSTER_TIMESTAMP_MAX), MIN_SCREENSHOT_TIMESTAMP);
292
+ const [thumbnailResult, posterResult] = await Promise.all([
293
+ generateScreenshot(videoFile, tempOutputDir, thumbnailTimestamp, thumbnailSize, 'thumbnail', metadata),
294
+ generateScreenshot(videoFile, tempOutputDir, posterTimestamp, posterSize, 'poster', metadata),
295
+ ]);
296
+ // Step 5: Generate audio rendition (if video has audio and requested)
297
+ let audioFile = null;
298
+ if (generateAudio && metadata.hasAudio) {
299
+ log.info('Generating audio rendition');
300
+ audioFile = await generateAudioRendition(videoFile, tempOutputDir);
301
+ }
302
+ else if (generateAudio && !metadata.hasAudio) {
303
+ log.info('Skipping audio rendition - video has no audio track');
304
+ }
305
+ // Step 6: Upload generated files
306
+ const renditions = [];
307
+ const etag = inputObject.content.etag ?? inputObject.id;
308
+ if (renditionResult) {
309
+ const videoRendition = await uploadMediaAsRendition(client, renditionResult, WEB_VIDEO_RENDITION_NAME, `${maxResolution}px.mp4`, 'video/mp4', etag, 'video');
310
+ renditions.push(videoRendition);
311
+ }
312
+ if (thumbnailResult) {
313
+ const fileName = 'thumbnail.jpg';
314
+ const storagePath = `renditions/${etag}/${thumbnailSize}/${fileName}`;
315
+ await uploadFile(client, thumbnailResult.file, 'image/jpeg', fileName, storagePath);
316
+ }
317
+ if (posterResult) {
318
+ const posterRendition = await uploadMediaAsRendition(client, posterResult, POSTER_RENDITION_NAME, 'poster.jpg', 'image/jpeg', etag, `${posterSize}`);
319
+ renditions.push(posterRendition);
320
+ }
321
+ if (audioFile) {
322
+ const audioRendition = await uploadMediaAsRendition(client, { file: audioFile, width: 0, height: 0 }, AUDIO_RENDITION_NAME, 'audio.m4a', 'audio/mp4', etag, 'audio');
323
+ renditions.push(audioRendition);
324
+ }
325
+ // Step 7: Update content object with metadata and renditions
326
+ const videoMetadata = {
327
+ type: ContentNature.Video,
328
+ duration: metadata.duration,
329
+ dimensions: {
330
+ width: metadata.width,
331
+ height: metadata.height,
332
+ },
333
+ renditions,
334
+ hasAudio: metadata.hasAudio,
335
+ generation_runs: inputObject.metadata?.generation_runs || [],
336
+ };
337
+ await client.objects.update(objectId, {
338
+ metadata: videoMetadata,
339
+ });
340
+ log.info(`Successfully prepared video ${objectId}`, {
341
+ duration: metadata.duration,
342
+ dimensions: `${metadata.width}x${metadata.height}`,
343
+ codec: metadata.codec,
344
+ bitrate: metadata.bitrate,
345
+ fps: metadata.fps,
346
+ hasAudio: metadata.hasAudio,
347
+ renditionsGenerated: renditions.length,
348
+ });
349
+ return {
350
+ objectId,
351
+ metadata: {
352
+ duration: metadata.duration,
353
+ width: metadata.width,
354
+ height: metadata.height,
355
+ codec: metadata.codec,
356
+ bitrate: metadata.bitrate,
357
+ fps: metadata.fps,
358
+ hasAudio: metadata.hasAudio,
359
+ },
360
+ renditions: renditions,
361
+ status: 'success',
362
+ };
363
+ }
364
+ catch (error) {
365
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
366
+ log.error(`Error preparing video: ${errorMessage}`, { error });
367
+ // Re-throw known errors as-is
368
+ if (error instanceof DocumentNotFoundError || error instanceof InvalidContentTypeError) {
369
+ throw error;
370
+ }
371
+ // Wrap unknown errors in Error
372
+ throw new Error(`Failed to prepare video ${objectId}: ${errorMessage}`);
373
+ }
374
+ finally {
375
+ // Clean up temporary files
376
+ const cleanupPromises = [];
377
+ if (videoFile) {
378
+ cleanupPromises.push(fs.promises.unlink(videoFile).catch((err) => {
379
+ log.warn(`Failed to cleanup video file: ${videoFile}`, { err });
380
+ }));
381
+ }
382
+ if (tempOutputDir) {
383
+ cleanupPromises.push(fs.promises.rm(tempOutputDir, { recursive: true, force: true }).catch((err) => {
384
+ log.warn(`Failed to cleanup temp directory: ${tempOutputDir}`, { err });
385
+ }));
386
+ }
387
+ await Promise.allSettled(cleanupPromises);
388
+ }
389
+ }
390
+ //# sourceMappingURL=prepareVideo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareVideo.js","sourceRoot":"","sources":["../../../../src/activities/media/prepareVideo.ts"],"names":[],"mappings":"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"}