@transloadit/node 4.7.6 → 4.7.7

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 (463) hide show
  1. package/dist/alphalib/assembly-linter.js +1 -1
  2. package/dist/alphalib/assembly-linter.js.map +1 -1
  3. package/dist/alphalib/stepParsing.js +2 -2
  4. package/dist/alphalib/stepParsing.js.map +1 -1
  5. package/dist/alphalib/types/assemblyReplay.d.ts +2 -7860
  6. package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
  7. package/dist/alphalib/types/assemblyReplayNotification.d.ts +2 -7860
  8. package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
  9. package/dist/alphalib/types/assemblyStatus.d.ts +4807 -298
  10. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
  11. package/dist/alphalib/types/assemblyStatus.js +36 -1
  12. package/dist/alphalib/types/assemblyStatus.js.map +1 -1
  13. package/dist/alphalib/types/robots/_index.d.ts +903 -72620
  14. package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
  15. package/dist/alphalib/types/robots/_index.js +62 -11
  16. package/dist/alphalib/types/robots/_index.js.map +1 -1
  17. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +41 -10
  18. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
  19. package/dist/alphalib/types/robots/_instructions-primitives.js +89 -3
  20. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
  21. package/dist/alphalib/types/robots/ai-chat.d.ts +33 -0
  22. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
  23. package/dist/alphalib/types/robots/ai-chat.js +28 -5
  24. package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
  25. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
  26. package/dist/alphalib/types/robots/assembly-savejson.js +8 -0
  27. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
  28. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
  29. package/dist/alphalib/types/robots/audio-artwork.js +4 -5
  30. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
  31. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
  32. package/dist/alphalib/types/robots/audio-concat.js +1 -2
  33. package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
  34. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
  35. package/dist/alphalib/types/robots/audio-encode.js +1 -2
  36. package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
  37. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
  38. package/dist/alphalib/types/robots/audio-loop.js +1 -2
  39. package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
  40. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
  41. package/dist/alphalib/types/robots/audio-merge.js +1 -2
  42. package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
  43. package/dist/alphalib/types/robots/audio-split.d.ts +2936 -0
  44. package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -0
  45. package/dist/alphalib/types/robots/audio-split.js +88 -0
  46. package/dist/alphalib/types/robots/audio-split.js.map +1 -0
  47. package/dist/alphalib/types/robots/audio-waveform.d.ts +92 -6
  48. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
  49. package/dist/alphalib/types/robots/audio-waveform.js +72 -6
  50. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
  51. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
  52. package/dist/alphalib/types/robots/azure-import.js +0 -1
  53. package/dist/alphalib/types/robots/azure-import.js.map +1 -1
  54. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
  55. package/dist/alphalib/types/robots/azure-store.js +0 -1
  56. package/dist/alphalib/types/robots/azure-store.js.map +1 -1
  57. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
  58. package/dist/alphalib/types/robots/backblaze-import.js +0 -1
  59. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
  60. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
  61. package/dist/alphalib/types/robots/backblaze-store.js +0 -1
  62. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
  63. package/dist/alphalib/types/robots/box-import.d.ts +150 -0
  64. package/dist/alphalib/types/robots/box-import.d.ts.map +1 -0
  65. package/dist/alphalib/types/robots/box-import.js +63 -0
  66. package/dist/alphalib/types/robots/box-import.js.map +1 -0
  67. package/dist/alphalib/types/robots/box-store.d.ts +455 -0
  68. package/dist/alphalib/types/robots/box-store.d.ts.map +1 -0
  69. package/dist/alphalib/types/robots/box-store.js +66 -0
  70. package/dist/alphalib/types/robots/box-store.js.map +1 -0
  71. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
  72. package/dist/alphalib/types/robots/cloudfiles-import.js +0 -1
  73. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
  74. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
  75. package/dist/alphalib/types/robots/cloudfiles-store.js +0 -1
  76. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
  77. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
  78. package/dist/alphalib/types/robots/cloudflare-import.js +0 -1
  79. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
  80. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
  81. package/dist/alphalib/types/robots/cloudflare-store.js +0 -1
  82. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
  83. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
  84. package/dist/alphalib/types/robots/digitalocean-import.js +0 -1
  85. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
  86. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
  87. package/dist/alphalib/types/robots/digitalocean-store.js +0 -1
  88. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
  89. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
  90. package/dist/alphalib/types/robots/document-autorotate.js +8 -1
  91. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
  92. package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
  93. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
  94. package/dist/alphalib/types/robots/document-convert.js +9 -3
  95. package/dist/alphalib/types/robots/document-convert.js.map +1 -1
  96. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
  97. package/dist/alphalib/types/robots/document-merge.js +0 -1
  98. package/dist/alphalib/types/robots/document-merge.js.map +1 -1
  99. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
  100. package/dist/alphalib/types/robots/document-ocr.js +0 -1
  101. package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
  102. package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
  103. package/dist/alphalib/types/robots/document-optimize.js +0 -1
  104. package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
  105. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
  106. package/dist/alphalib/types/robots/document-split.js +9 -1
  107. package/dist/alphalib/types/robots/document-split.js.map +1 -1
  108. package/dist/alphalib/types/robots/document-thumbs.d.ts +12 -0
  109. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
  110. package/dist/alphalib/types/robots/document-thumbs.js +23 -4
  111. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
  112. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
  113. package/dist/alphalib/types/robots/dropbox-import.js +0 -1
  114. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
  115. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
  116. package/dist/alphalib/types/robots/dropbox-store.js +0 -1
  117. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
  118. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
  119. package/dist/alphalib/types/robots/edgly-deliver.js +8 -1
  120. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
  121. package/dist/alphalib/types/robots/file-compress.d.ts +12 -0
  122. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
  123. package/dist/alphalib/types/robots/file-compress.js +8 -1
  124. package/dist/alphalib/types/robots/file-compress.js.map +1 -1
  125. package/dist/alphalib/types/robots/file-decompress.d.ts +24 -0
  126. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
  127. package/dist/alphalib/types/robots/file-decompress.js +30 -5
  128. package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
  129. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
  130. package/dist/alphalib/types/robots/file-filter.js +23 -6
  131. package/dist/alphalib/types/robots/file-filter.js.map +1 -1
  132. package/dist/alphalib/types/robots/file-hash.d.ts +24 -0
  133. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
  134. package/dist/alphalib/types/robots/file-hash.js +23 -1
  135. package/dist/alphalib/types/robots/file-hash.js.map +1 -1
  136. package/dist/alphalib/types/robots/file-preview.d.ts +12 -0
  137. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
  138. package/dist/alphalib/types/robots/file-preview.js +8 -1
  139. package/dist/alphalib/types/robots/file-preview.js.map +1 -1
  140. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
  141. package/dist/alphalib/types/robots/file-read.js +9 -1
  142. package/dist/alphalib/types/robots/file-read.js.map +1 -1
  143. package/dist/alphalib/types/robots/file-serve.d.ts +12 -0
  144. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
  145. package/dist/alphalib/types/robots/file-serve.js +38 -7
  146. package/dist/alphalib/types/robots/file-serve.js.map +1 -1
  147. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
  148. package/dist/alphalib/types/robots/file-verify.js +0 -1
  149. package/dist/alphalib/types/robots/file-verify.js.map +1 -1
  150. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
  151. package/dist/alphalib/types/robots/file-virusscan.js +5 -4
  152. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
  153. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
  154. package/dist/alphalib/types/robots/file-watermark.js +10 -0
  155. package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
  156. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
  157. package/dist/alphalib/types/robots/ftp-import.js +0 -1
  158. package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
  159. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
  160. package/dist/alphalib/types/robots/ftp-store.js +0 -1
  161. package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
  162. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
  163. package/dist/alphalib/types/robots/google-import.js +0 -1
  164. package/dist/alphalib/types/robots/google-import.js.map +1 -1
  165. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
  166. package/dist/alphalib/types/robots/google-store.js +0 -1
  167. package/dist/alphalib/types/robots/google-store.js.map +1 -1
  168. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
  169. package/dist/alphalib/types/robots/html-convert.js +0 -1
  170. package/dist/alphalib/types/robots/html-convert.js.map +1 -1
  171. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
  172. package/dist/alphalib/types/robots/http-import.js +0 -1
  173. package/dist/alphalib/types/robots/http-import.js.map +1 -1
  174. package/dist/alphalib/types/robots/image-bgremove.d.ts +8 -8
  175. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
  176. package/dist/alphalib/types/robots/image-bgremove.js +4 -2
  177. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
  178. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +465 -0
  179. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -0
  180. package/dist/alphalib/types/robots/image-copyrightdetect.js +136 -0
  181. package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -0
  182. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
  183. package/dist/alphalib/types/robots/image-describe.js +0 -1
  184. package/dist/alphalib/types/robots/image-describe.js.map +1 -1
  185. package/dist/alphalib/types/robots/image-enhance.d.ts +502 -0
  186. package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -0
  187. package/dist/alphalib/types/robots/image-enhance.js +146 -0
  188. package/dist/alphalib/types/robots/image-enhance.js.map +1 -0
  189. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
  190. package/dist/alphalib/types/robots/image-facedetect.js +0 -1
  191. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
  192. package/dist/alphalib/types/robots/image-generate.d.ts +4 -5
  193. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
  194. package/dist/alphalib/types/robots/image-generate.js +62 -8
  195. package/dist/alphalib/types/robots/image-generate.js.map +1 -1
  196. package/dist/alphalib/types/robots/image-merge.d.ts +12 -12
  197. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
  198. package/dist/alphalib/types/robots/image-merge.js +0 -1
  199. package/dist/alphalib/types/robots/image-merge.js.map +1 -1
  200. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
  201. package/dist/alphalib/types/robots/image-ocr.js +0 -1
  202. package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
  203. package/dist/alphalib/types/robots/image-optimize.d.ts +12 -0
  204. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
  205. package/dist/alphalib/types/robots/image-optimize.js +16 -3
  206. package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
  207. package/dist/alphalib/types/robots/image-resize.d.ts +20 -8
  208. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
  209. package/dist/alphalib/types/robots/image-resize.js +37 -1
  210. package/dist/alphalib/types/robots/image-resize.js.map +1 -1
  211. package/dist/alphalib/types/robots/image-upscale.d.ts +447 -0
  212. package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -0
  213. package/dist/alphalib/types/robots/image-upscale.js +65 -0
  214. package/dist/alphalib/types/robots/image-upscale.js.map +1 -0
  215. package/dist/alphalib/types/robots/mega-import.d.ts +244 -0
  216. package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -0
  217. package/dist/alphalib/types/robots/mega-import.js +84 -0
  218. package/dist/alphalib/types/robots/mega-import.js.map +1 -0
  219. package/dist/alphalib/types/robots/mega-store.d.ts +526 -0
  220. package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -0
  221. package/dist/alphalib/types/robots/mega-store.js +82 -0
  222. package/dist/alphalib/types/robots/mega-store.js.map +1 -0
  223. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
  224. package/dist/alphalib/types/robots/meta-read.js +8 -0
  225. package/dist/alphalib/types/robots/meta-read.js.map +1 -1
  226. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
  227. package/dist/alphalib/types/robots/meta-write.js +0 -1
  228. package/dist/alphalib/types/robots/meta-write.js.map +1 -1
  229. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
  230. package/dist/alphalib/types/robots/minio-import.js +0 -1
  231. package/dist/alphalib/types/robots/minio-import.js.map +1 -1
  232. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
  233. package/dist/alphalib/types/robots/minio-store.js +0 -1
  234. package/dist/alphalib/types/robots/minio-store.js.map +1 -1
  235. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
  236. package/dist/alphalib/types/robots/progress-simulate.js +13 -0
  237. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
  238. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
  239. package/dist/alphalib/types/robots/s3-import.js +0 -1
  240. package/dist/alphalib/types/robots/s3-import.js.map +1 -1
  241. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
  242. package/dist/alphalib/types/robots/s3-store.js +0 -1
  243. package/dist/alphalib/types/robots/s3-store.js.map +1 -1
  244. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
  245. package/dist/alphalib/types/robots/script-run.js +10 -1
  246. package/dist/alphalib/types/robots/script-run.js.map +1 -1
  247. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
  248. package/dist/alphalib/types/robots/sftp-import.js +0 -1
  249. package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
  250. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
  251. package/dist/alphalib/types/robots/sftp-store.js +0 -1
  252. package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
  253. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
  254. package/dist/alphalib/types/robots/speech-transcribe.js +0 -1
  255. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
  256. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
  257. package/dist/alphalib/types/robots/supabase-import.js +0 -1
  258. package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
  259. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
  260. package/dist/alphalib/types/robots/supabase-store.js +0 -1
  261. package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
  262. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
  263. package/dist/alphalib/types/robots/swift-import.js +0 -1
  264. package/dist/alphalib/types/robots/swift-import.js.map +1 -1
  265. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
  266. package/dist/alphalib/types/robots/swift-store.js +0 -1
  267. package/dist/alphalib/types/robots/swift-store.js.map +1 -1
  268. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
  269. package/dist/alphalib/types/robots/text-speak.js +0 -1
  270. package/dist/alphalib/types/robots/text-speak.js.map +1 -1
  271. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
  272. package/dist/alphalib/types/robots/text-translate.js +0 -1
  273. package/dist/alphalib/types/robots/text-translate.js.map +1 -1
  274. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
  275. package/dist/alphalib/types/robots/tigris-import.js +0 -1
  276. package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
  277. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
  278. package/dist/alphalib/types/robots/tigris-store.js +0 -1
  279. package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
  280. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
  281. package/dist/alphalib/types/robots/tlcdn-deliver.js +8 -1
  282. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
  283. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
  284. package/dist/alphalib/types/robots/tus-store.js +1 -14
  285. package/dist/alphalib/types/robots/tus-store.js.map +1 -1
  286. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
  287. package/dist/alphalib/types/robots/upload-handle.js +0 -1
  288. package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
  289. package/dist/alphalib/types/robots/video-adaptive.d.ts +32 -8
  290. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
  291. package/dist/alphalib/types/robots/video-adaptive.js +22 -6
  292. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
  293. package/dist/alphalib/types/robots/video-artwork.d.ts +2855 -0
  294. package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -0
  295. package/dist/alphalib/types/robots/video-artwork.js +66 -0
  296. package/dist/alphalib/types/robots/video-artwork.js.map +1 -0
  297. package/dist/alphalib/types/robots/video-concat.d.ts +36 -0
  298. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
  299. package/dist/alphalib/types/robots/video-concat.js +30 -1
  300. package/dist/alphalib/types/robots/video-concat.js.map +1 -1
  301. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
  302. package/dist/alphalib/types/robots/video-encode.js +0 -1
  303. package/dist/alphalib/types/robots/video-encode.js.map +1 -1
  304. package/dist/alphalib/types/robots/video-generate.d.ts +594 -0
  305. package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -0
  306. package/dist/alphalib/types/robots/video-generate.js +90 -0
  307. package/dist/alphalib/types/robots/video-generate.js.map +1 -0
  308. package/dist/alphalib/types/robots/video-merge.d.ts +24 -0
  309. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
  310. package/dist/alphalib/types/robots/video-merge.js +33 -1
  311. package/dist/alphalib/types/robots/video-merge.js.map +1 -1
  312. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
  313. package/dist/alphalib/types/robots/video-ondemand.js +3 -4
  314. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
  315. package/dist/alphalib/types/robots/video-split.d.ts +2939 -0
  316. package/dist/alphalib/types/robots/video-split.d.ts.map +1 -0
  317. package/dist/alphalib/types/robots/video-split.js +78 -0
  318. package/dist/alphalib/types/robots/video-split.js.map +1 -0
  319. package/dist/alphalib/types/robots/video-subtitle.d.ts +52 -4
  320. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
  321. package/dist/alphalib/types/robots/video-subtitle.js +61 -8
  322. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
  323. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
  324. package/dist/alphalib/types/robots/video-thumbs.js +0 -1
  325. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
  326. package/dist/alphalib/types/robots/vimeo-import.d.ts +4 -4
  327. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
  328. package/dist/alphalib/types/robots/vimeo-import.js +0 -1
  329. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
  330. package/dist/alphalib/types/robots/vimeo-store.d.ts +2 -2
  331. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
  332. package/dist/alphalib/types/robots/vimeo-store.js +14 -3
  333. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
  334. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
  335. package/dist/alphalib/types/robots/wasabi-import.js +0 -1
  336. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
  337. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
  338. package/dist/alphalib/types/robots/wasabi-store.js +0 -1
  339. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
  340. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
  341. package/dist/alphalib/types/robots/youtube-store.js +4 -5
  342. package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
  343. package/dist/alphalib/types/template.d.ts +41 -132175
  344. package/dist/alphalib/types/template.d.ts.map +1 -1
  345. package/dist/alphalib/types/template.js +16 -3
  346. package/dist/alphalib/types/template.js.map +1 -1
  347. package/dist/alphalib/types/templateCredential.d.ts +3 -3
  348. package/dist/alphalib/types/templateCredential.d.ts.map +1 -1
  349. package/dist/alphalib/types/templateCredential.js +1 -0
  350. package/dist/alphalib/types/templateCredential.js.map +1 -1
  351. package/dist/alphalib/zodParseWithContext.d.ts.map +1 -1
  352. package/dist/alphalib/zodParseWithContext.js +15 -11
  353. package/dist/alphalib/zodParseWithContext.js.map +1 -1
  354. package/dist/cli.js +0 -0
  355. package/dist/robots.js +2 -2
  356. package/dist/robots.js.map +1 -1
  357. package/package.json +2 -2
  358. package/src/alphalib/assembly-linter.ts +1 -1
  359. package/src/alphalib/stepParsing.ts +2 -2
  360. package/src/alphalib/types/assemblyStatus.ts +41 -2
  361. package/src/alphalib/types/robots/_index.ts +211 -20
  362. package/src/alphalib/types/robots/_instructions-primitives.ts +93 -3
  363. package/src/alphalib/types/robots/ai-chat.ts +35 -5
  364. package/src/alphalib/types/robots/assembly-savejson.ts +8 -0
  365. package/src/alphalib/types/robots/audio-artwork.ts +4 -5
  366. package/src/alphalib/types/robots/audio-concat.ts +1 -2
  367. package/src/alphalib/types/robots/audio-encode.ts +1 -2
  368. package/src/alphalib/types/robots/audio-loop.ts +1 -2
  369. package/src/alphalib/types/robots/audio-merge.ts +1 -2
  370. package/src/alphalib/types/robots/audio-split.ts +130 -0
  371. package/src/alphalib/types/robots/audio-waveform.ts +90 -6
  372. package/src/alphalib/types/robots/azure-import.ts +0 -1
  373. package/src/alphalib/types/robots/azure-store.ts +0 -1
  374. package/src/alphalib/types/robots/backblaze-import.ts +0 -1
  375. package/src/alphalib/types/robots/backblaze-store.ts +0 -1
  376. package/src/alphalib/types/robots/box-import.ts +97 -0
  377. package/src/alphalib/types/robots/box-store.ts +94 -0
  378. package/src/alphalib/types/robots/cloudfiles-import.ts +0 -1
  379. package/src/alphalib/types/robots/cloudfiles-store.ts +0 -1
  380. package/src/alphalib/types/robots/cloudflare-import.ts +0 -1
  381. package/src/alphalib/types/robots/cloudflare-store.ts +0 -1
  382. package/src/alphalib/types/robots/digitalocean-import.ts +0 -1
  383. package/src/alphalib/types/robots/digitalocean-store.ts +0 -1
  384. package/src/alphalib/types/robots/document-autorotate.ts +8 -1
  385. package/src/alphalib/types/robots/document-convert.ts +10 -3
  386. package/src/alphalib/types/robots/document-merge.ts +0 -1
  387. package/src/alphalib/types/robots/document-ocr.ts +0 -1
  388. package/src/alphalib/types/robots/document-optimize.ts +0 -1
  389. package/src/alphalib/types/robots/document-split.ts +9 -1
  390. package/src/alphalib/types/robots/document-thumbs.ts +26 -4
  391. package/src/alphalib/types/robots/dropbox-import.ts +0 -1
  392. package/src/alphalib/types/robots/dropbox-store.ts +0 -1
  393. package/src/alphalib/types/robots/edgly-deliver.ts +8 -1
  394. package/src/alphalib/types/robots/file-compress.ts +8 -1
  395. package/src/alphalib/types/robots/file-decompress.ts +30 -5
  396. package/src/alphalib/types/robots/file-filter.ts +23 -6
  397. package/src/alphalib/types/robots/file-hash.ts +23 -1
  398. package/src/alphalib/types/robots/file-preview.ts +8 -1
  399. package/src/alphalib/types/robots/file-read.ts +9 -1
  400. package/src/alphalib/types/robots/file-serve.ts +39 -7
  401. package/src/alphalib/types/robots/file-verify.ts +0 -1
  402. package/src/alphalib/types/robots/file-virusscan.ts +6 -4
  403. package/src/alphalib/types/robots/file-watermark.ts +10 -0
  404. package/src/alphalib/types/robots/ftp-import.ts +0 -1
  405. package/src/alphalib/types/robots/ftp-store.ts +0 -1
  406. package/src/alphalib/types/robots/google-import.ts +0 -1
  407. package/src/alphalib/types/robots/google-store.ts +0 -1
  408. package/src/alphalib/types/robots/html-convert.ts +0 -1
  409. package/src/alphalib/types/robots/http-import.ts +0 -1
  410. package/src/alphalib/types/robots/image-bgremove.ts +4 -2
  411. package/src/alphalib/types/robots/image-copyrightdetect.ts +167 -0
  412. package/src/alphalib/types/robots/image-describe.ts +0 -1
  413. package/src/alphalib/types/robots/image-enhance.ts +185 -0
  414. package/src/alphalib/types/robots/image-facedetect.ts +0 -1
  415. package/src/alphalib/types/robots/image-generate.ts +74 -8
  416. package/src/alphalib/types/robots/image-merge.ts +0 -1
  417. package/src/alphalib/types/robots/image-ocr.ts +0 -1
  418. package/src/alphalib/types/robots/image-optimize.ts +16 -3
  419. package/src/alphalib/types/robots/image-resize.ts +37 -1
  420. package/src/alphalib/types/robots/image-upscale.ts +93 -0
  421. package/src/alphalib/types/robots/mega-import.ts +123 -0
  422. package/src/alphalib/types/robots/mega-store.ts +109 -0
  423. package/src/alphalib/types/robots/meta-read.ts +8 -0
  424. package/src/alphalib/types/robots/meta-write.ts +0 -1
  425. package/src/alphalib/types/robots/minio-import.ts +0 -1
  426. package/src/alphalib/types/robots/minio-store.ts +0 -1
  427. package/src/alphalib/types/robots/progress-simulate.ts +13 -0
  428. package/src/alphalib/types/robots/s3-import.ts +0 -1
  429. package/src/alphalib/types/robots/s3-store.ts +0 -1
  430. package/src/alphalib/types/robots/script-run.ts +11 -1
  431. package/src/alphalib/types/robots/sftp-import.ts +0 -1
  432. package/src/alphalib/types/robots/sftp-store.ts +0 -1
  433. package/src/alphalib/types/robots/speech-transcribe.ts +0 -1
  434. package/src/alphalib/types/robots/supabase-import.ts +0 -1
  435. package/src/alphalib/types/robots/supabase-store.ts +0 -1
  436. package/src/alphalib/types/robots/swift-import.ts +0 -1
  437. package/src/alphalib/types/robots/swift-store.ts +0 -1
  438. package/src/alphalib/types/robots/text-speak.ts +0 -1
  439. package/src/alphalib/types/robots/text-translate.ts +0 -1
  440. package/src/alphalib/types/robots/tigris-import.ts +0 -1
  441. package/src/alphalib/types/robots/tigris-store.ts +0 -1
  442. package/src/alphalib/types/robots/tlcdn-deliver.ts +8 -1
  443. package/src/alphalib/types/robots/tus-store.ts +1 -14
  444. package/src/alphalib/types/robots/upload-handle.ts +0 -1
  445. package/src/alphalib/types/robots/video-adaptive.ts +22 -6
  446. package/src/alphalib/types/robots/video-artwork.ts +100 -0
  447. package/src/alphalib/types/robots/video-concat.ts +30 -1
  448. package/src/alphalib/types/robots/video-encode.ts +0 -1
  449. package/src/alphalib/types/robots/video-generate.ts +120 -0
  450. package/src/alphalib/types/robots/video-merge.ts +33 -1
  451. package/src/alphalib/types/robots/video-ondemand.ts +3 -4
  452. package/src/alphalib/types/robots/video-split.ts +117 -0
  453. package/src/alphalib/types/robots/video-subtitle.ts +61 -8
  454. package/src/alphalib/types/robots/video-thumbs.ts +0 -1
  455. package/src/alphalib/types/robots/vimeo-import.ts +0 -1
  456. package/src/alphalib/types/robots/vimeo-store.ts +14 -3
  457. package/src/alphalib/types/robots/wasabi-import.ts +0 -1
  458. package/src/alphalib/types/robots/wasabi-store.ts +0 -1
  459. package/src/alphalib/types/robots/youtube-store.ts +4 -5
  460. package/src/alphalib/types/template.ts +47 -15
  461. package/src/alphalib/types/templateCredential.ts +1 -0
  462. package/src/alphalib/zodParseWithContext.ts +19 -12
  463. package/src/robots.ts +2 -2
@@ -0,0 +1,120 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ bytescount: 1,
8
+ discount_factor: 1,
9
+ discount_pct: 0,
10
+ example_code: {
11
+ steps: {
12
+ generated_video: {
13
+ robot: '/video/generate',
14
+ prompt: 'A slow cinematic drone shot of ocean cliffs at sunrise, realistic lighting.',
15
+ duration: 5,
16
+ aspect_ratio: '16:9',
17
+ format: 'mp4',
18
+ },
19
+ },
20
+ },
21
+ example_code_description: 'Generate a short video from a text prompt:',
22
+ minimum_charge: 0,
23
+ output_factor: 0.6,
24
+ purpose_sentence: 'generates videos from text prompts using AI',
25
+ purpose_verb: 'generate',
26
+ purpose_word: 'generate',
27
+ purpose_words: 'Generate videos from text prompts',
28
+ service_slug: 'artificial-intelligence',
29
+ slot_count: 10,
30
+ title: 'Generate videos from text prompts',
31
+ typical_file_size_mb: 50,
32
+ typical_file_type: 'video',
33
+ name: 'VideoGenerateRobot',
34
+ priceFactor: 1,
35
+ queueSlotCount: 10,
36
+ minimumChargeUsd: 0.06,
37
+ isAllowedForUrlTransform: true,
38
+ trackOutputFileSize: true,
39
+ isInternal: false,
40
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
41
+ stage: 'ga',
42
+ }
43
+
44
+ export const robotVideoGenerateInstructionsSchema = robotBase
45
+ .merge(robotUse)
46
+ .extend({
47
+ robot: z.literal('/video/generate'),
48
+ model: z
49
+ .string()
50
+ .optional()
51
+ .describe('The AI model to use for video generation. Defaults to minimax/video-01.'),
52
+ prompt: z.string().describe('The prompt describing the desired video content.'),
53
+ format: z.enum(['mp4', 'gif']).optional().describe('Format of the generated video.'),
54
+ seed: z.number().optional().describe('Seed for the random number generator.'),
55
+ aspect_ratio: z.string().optional().describe('Aspect ratio of the generated video.'),
56
+ height: z.number().optional().describe('Height of the generated video.'),
57
+ width: z.number().optional().describe('Width of the generated video.'),
58
+ style: z.string().optional().describe('Style of the generated video.'),
59
+ num_outputs: z
60
+ .number()
61
+ .int()
62
+ .min(1)
63
+ .max(10)
64
+ .optional()
65
+ .describe('Number of video variants to generate.'),
66
+ duration: z.number().optional().describe('Duration of the generated video in seconds.'),
67
+ fps: z.number().optional().describe('Frames per second of the output video.'),
68
+ motion_amount: z
69
+ .number()
70
+ .optional()
71
+ .describe('Controls the intensity of motion in the generated video.'),
72
+ camera_motion: z
73
+ .string()
74
+ .optional()
75
+ .describe(
76
+ 'Camera movement type (e.g., pan-left, pan-right, zoom-in, zoom-out, orbit, static, dolly, crane).',
77
+ ),
78
+ negative_prompt: z
79
+ .string()
80
+ .optional()
81
+ .describe('Describes what should be avoided in the generated video.'),
82
+ reference_strength: z
83
+ .number()
84
+ .optional()
85
+ .describe('How closely the output should follow the reference input (0.0 - 1.0).'),
86
+ })
87
+ .strict()
88
+
89
+ export const robotVideoGenerateInstructionsWithHiddenFieldsSchema =
90
+ robotVideoGenerateInstructionsSchema.extend({
91
+ provider: z.string().optional().describe('Provider for generating the video.'),
92
+ result: z
93
+ .union([z.literal('debug'), robotVideoGenerateInstructionsSchema.shape.result])
94
+ .optional(),
95
+ })
96
+
97
+ export type RobotVideoGenerateInstructions = z.infer<typeof robotVideoGenerateInstructionsSchema>
98
+ export type RobotVideoGenerateInstructionsWithHiddenFields = z.infer<
99
+ typeof robotVideoGenerateInstructionsWithHiddenFieldsSchema
100
+ >
101
+
102
+ export const interpolatableRobotVideoGenerateInstructionsSchema = interpolateRobot(
103
+ robotVideoGenerateInstructionsWithHiddenFieldsSchema,
104
+ )
105
+ export type InterpolatableRobotVideoGenerateInstructions =
106
+ InterpolatableRobotVideoGenerateInstructionsInput
107
+
108
+ export type InterpolatableRobotVideoGenerateInstructionsInput = z.input<
109
+ typeof interpolatableRobotVideoGenerateInstructionsSchema
110
+ >
111
+
112
+ export const interpolatableRobotVideoGenerateInstructionsWithHiddenFieldsSchema = interpolateRobot(
113
+ robotVideoGenerateInstructionsWithHiddenFieldsSchema,
114
+ )
115
+ export type InterpolatableRobotVideoGenerateInstructionsWithHiddenFields = z.infer<
116
+ typeof interpolatableRobotVideoGenerateInstructionsWithHiddenFieldsSchema
117
+ >
118
+ export type InterpolatableRobotVideoGenerateInstructionsWithHiddenFieldsInput = z.input<
119
+ typeof interpolatableRobotVideoGenerateInstructionsWithHiddenFieldsSchema
120
+ >
@@ -11,10 +11,26 @@ import {
11
11
  } from './_instructions-primitives.ts'
12
12
 
13
13
  export const meta: RobotMetaInput = {
14
- allowed_for_url_transform: false,
15
14
  bytescount: 1,
16
15
  discount_factor: 1,
17
16
  discount_pct: 0,
17
+ example_code: {
18
+ steps: {
19
+ merged: {
20
+ robot: '/video/merge',
21
+ use: [
22
+ { name: ':original', as: 'image' },
23
+ { name: ':original', as: 'audio' },
24
+ ],
25
+ width: 1280,
26
+ height: 720,
27
+ resize_strategy: 'pad',
28
+ framerate: '1/4',
29
+ duration: 12,
30
+ },
31
+ },
32
+ },
33
+ example_code_description: 'Merge uploaded image and audio inputs into one video:',
18
34
  minimum_charge: 0,
19
35
  output_factor: 0.6,
20
36
  override_lvl1: 'Video Encoding',
@@ -101,6 +117,22 @@ Stacks the input media vertically. All streams need to have the same pixel forma
101
117
  .optional()
102
118
  .describe(`
103
119
  The URL of an image to be merged with the audio or video. When this parameter is provided, the robot will download the image from the URL and merge it with the other media.
120
+ `),
121
+ transition: z
122
+ .enum(['none', 'crossfade', 'fade_to_black'])
123
+ .default('none')
124
+ .describe(`
125
+ The type of transition effect to apply between concatenated video clips. Only applies when concatenating multiple videos (using \`video_1\`, \`video_2\`, etc. or \`pre_roll\`/\`post_roll\` inputs).
126
+
127
+ - \`"none"\` — No transition effect. Videos are joined end-to-end.
128
+ - \`"crossfade"\` — A gradual blend from one clip to the next (both video and audio).
129
+ - \`"fade_to_black"\` — The current clip fades out to black, then the next clip fades in from black.
130
+ `),
131
+ transition_duration: z
132
+ .number()
133
+ .default(1)
134
+ .describe(`
135
+ The duration of the transition effect in seconds. Only applies when \`transition\` is not \`"none"\`. Supports float values (e.g., \`0.5\` for a 500ms transition) and must be greater than \`0\` whenever transitions are enabled. The applied transition is automatically capped at half of the shorter clip in each transition pair to prevent overlapping transitions.
104
136
  `),
105
137
  })
106
138
  .strict()
@@ -9,7 +9,6 @@ import {
9
9
  } from './_instructions-primitives.ts'
10
10
 
11
11
  export const meta: RobotMetaInput = {
12
- allowed_for_url_transform: true,
13
12
  discount_factor: 1,
14
13
  discount_pct: 0,
15
14
  bytescount: 1,
@@ -84,7 +83,7 @@ export const robotVideoOndemandInstructionsSchema = robotBase
84
83
  .union([z.string(), z.array(z.string())])
85
84
  .optional()
86
85
  .describe(
87
- 'Specifies which variants, defined in the variants parameter, are enabled. Non-enabled variants will not be included in the master playlist.',
86
+ 'Specifies which variants, defined in the variants parameter, are enabled. Non-enabled variants will not be included in the multivariant playlist.',
88
87
  ),
89
88
  segment_duration: z
90
89
  .number()
@@ -96,13 +95,13 @@ export const robotVideoOndemandInstructionsSchema = robotBase
96
95
  .optional()
97
96
  .default(0)
98
97
  .describe(
99
- 'When signing URLs is enabled, the URLs in the generated playlist files will be signed. This parameter specifies the duration (in seconds) that the signed URLs will remain valid.',
98
+ 'When signing URLs is enabled, the URLs in the generated playlist files will be signed. This parameter specifies the duration (in seconds) that the signed URLs will remain valid. Use the modern `sig` + `exp` format for new integrations. Legacy `s` signatures are deprecated. Shorter expirations reduce the replay window, but they also reduce cache reuse and can increase segment re-generation and latency.',
100
99
  ),
101
100
  asset: z
102
101
  .string()
103
102
  .optional()
104
103
  .describe(
105
- 'Controls which file is generated. For example, if the parameter is unset, a master playlist referencing the variants is generated.',
104
+ 'Controls which file is generated. For example, if the parameter is unset, a multivariant playlist referencing the variants is generated.',
106
105
  ),
107
106
  asset_param_name: z
108
107
  .string()
@@ -0,0 +1,117 @@
1
+ import { z } from 'zod'
2
+
3
+ import { stackVersions } from '../stackVersions.ts'
4
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
5
+ import {
6
+ interpolateRobot,
7
+ robotBase,
8
+ robotFFmpegVideo,
9
+ robotUse,
10
+ } from './_instructions-primitives.ts'
11
+
12
+ export const meta: RobotMetaInput = {
13
+ bytescount: 1,
14
+ discount_factor: 1,
15
+ discount_pct: 0,
16
+ example_code: {
17
+ steps: {
18
+ split: {
19
+ robot: '/video/split',
20
+ use: ':original',
21
+ ffmpeg_stack: stackVersions.ffmpeg.recommendedVersion,
22
+ segments: [
23
+ { from: 0, to: 30 },
24
+ { from: 60, to: 90 },
25
+ ],
26
+ },
27
+ },
28
+ },
29
+ example_code_description:
30
+ 'Split a video into two segments, extracting the first 30 seconds and a segment from 1:00 to 1:30:',
31
+ minimum_charge: 0,
32
+ output_factor: 0.6,
33
+ override_lvl1: 'Video Encoding',
34
+ purpose_sentence: 'splits a video into multiple segments based on an array of from/to durations',
35
+ purpose_verb: 'split',
36
+ purpose_word: 'split',
37
+ purpose_words: 'Split video',
38
+ service_slug: 'video-encoding',
39
+ slot_count: 60,
40
+ title: 'Split video',
41
+ typical_file_size_mb: 80,
42
+ typical_file_type: 'video',
43
+ uses_tools: ['ffmpeg'],
44
+ name: 'VideoSplitRobot',
45
+ priceFactor: 1,
46
+ queueSlotCount: 60,
47
+ isAllowedForUrlTransform: false,
48
+ trackOutputFileSize: true,
49
+ isInternal: false,
50
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
51
+ stage: 'ga',
52
+ }
53
+
54
+ const segmentSchema = z
55
+ .object({
56
+ from: z
57
+ .union([z.number(), z.string()])
58
+ .describe(
59
+ 'Start time of the segment in seconds (e.g. `30`) or as a timecode string (e.g. `"00:00:30.000"`).',
60
+ ),
61
+ to: z
62
+ .union([z.number(), z.string()])
63
+ .describe(
64
+ 'End time of the segment in seconds (e.g. `60`) or as a timecode string (e.g. `"00:01:00.000"`).',
65
+ ),
66
+ })
67
+ .strict()
68
+
69
+ export const robotVideoSplitInstructionsSchema = robotBase
70
+ .merge(robotUse)
71
+ .merge(robotFFmpegVideo)
72
+ .extend({
73
+ robot: z.literal('/video/split').describe(`
74
+ Splits a video into multiple segments based on an array of from/to durations. Each segment produces a separate output file. This is useful for cutting a video into parts, for example to insert ads later via [🤖/video/concat](/docs/robots/video-concat/).
75
+ `),
76
+ segments: z
77
+ .array(segmentSchema)
78
+ .min(1)
79
+ .describe(`
80
+ An array of objects, each specifying a segment to extract from the input video. Each object must have a \`from\` and \`to\` key indicating the start and end time of the segment.
81
+
82
+ Times can be specified as numbers (seconds) or as timecode strings (e.g. \`"00:01:30.000"\`).
83
+ `),
84
+ })
85
+ .strict()
86
+
87
+ export const robotVideoSplitInstructionsWithHiddenFieldsSchema =
88
+ robotVideoSplitInstructionsSchema.extend({
89
+ result: z
90
+ .union([z.literal('debug'), robotVideoSplitInstructionsSchema.shape.result])
91
+ .optional(),
92
+ })
93
+
94
+ export type RobotVideoSplitInstructions = z.infer<typeof robotVideoSplitInstructionsSchema>
95
+ export type RobotVideoSplitInstructionsWithHiddenFields = z.infer<
96
+ typeof robotVideoSplitInstructionsWithHiddenFieldsSchema
97
+ >
98
+
99
+ export const interpolatableRobotVideoSplitInstructionsSchema = interpolateRobot(
100
+ robotVideoSplitInstructionsSchema,
101
+ )
102
+ export type InterpolatableRobotVideoSplitInstructions =
103
+ InterpolatableRobotVideoSplitInstructionsInput
104
+
105
+ export type InterpolatableRobotVideoSplitInstructionsInput = z.input<
106
+ typeof interpolatableRobotVideoSplitInstructionsSchema
107
+ >
108
+
109
+ export const interpolatableRobotVideoSplitInstructionsWithHiddenFieldsSchema = interpolateRobot(
110
+ robotVideoSplitInstructionsWithHiddenFieldsSchema,
111
+ )
112
+ export type InterpolatableRobotVideoSplitInstructionsWithHiddenFields = z.infer<
113
+ typeof interpolatableRobotVideoSplitInstructionsWithHiddenFieldsSchema
114
+ >
115
+ export type InterpolatableRobotVideoSplitInstructionsWithHiddenFieldsInput = z.input<
116
+ typeof interpolatableRobotVideoSplitInstructionsWithHiddenFieldsSchema
117
+ >
@@ -13,13 +13,12 @@ import {
13
13
  } from './_instructions-primitives.ts'
14
14
 
15
15
  export const meta: RobotMetaInput = {
16
- allowed_for_url_transform: false,
17
16
  bytescount: 1,
18
17
  discount_factor: 1,
19
18
  discount_pct: 0,
20
19
  example_code: {
21
20
  steps: {
22
- subtitled: {
21
+ add_english_subtitles: {
23
22
  robot: '/video/subtitle',
24
23
  use: {
25
24
  steps: [
@@ -30,17 +29,39 @@ export const meta: RobotMetaInput = {
30
29
  },
31
30
  {
32
31
  name: ':original',
33
- fields: 'input_srt',
32
+ fields: 'input_srt_en',
34
33
  as: 'subtitles',
35
34
  },
36
35
  ],
37
36
  },
37
+ language: 'eng',
38
+ name: 'English',
39
+ ffmpeg_stack: stackVersions.ffmpeg.recommendedVersion,
40
+ },
41
+ add_german_subtitles: {
42
+ robot: '/video/subtitle',
43
+ use: {
44
+ steps: [
45
+ {
46
+ name: 'add_english_subtitles',
47
+ as: 'video',
48
+ },
49
+ {
50
+ name: ':original',
51
+ fields: 'input_srt_de',
52
+ as: 'subtitles',
53
+ },
54
+ ],
55
+ },
56
+ language: 'deu',
57
+ name: 'Deutsch',
58
+ keep_subtitles: true,
38
59
  ffmpeg_stack: stackVersions.ffmpeg.recommendedVersion,
39
60
  },
40
61
  },
41
62
  },
42
63
  example_code_description:
43
- 'If you have two file input fields in a form — one for a video and another for an SRT or VTT subtitle, named `input_video` and `input_srt` respectively (with the HTML `name` attribute), hereʼs how to embed the subtitles into the video with Transloadit:',
64
+ 'If you have file input fields in a form — one for a video and one for each subtitle language (named `input_video`, `input_srt_en`, and `input_srt_de` via the HTML `name` attribute) hereʼs how to add multiple subtitle streams with language tags to the video. Chain multiple `/video/subtitle` Steps with `keep_subtitles` set to `true` so each new stream is added alongside existing ones:',
44
65
  minimum_charge: 0,
45
66
  output_factor: 0.6,
46
67
  override_lvl1: 'Video Encoding',
@@ -96,8 +117,11 @@ The font family to use. Also includes boldness and style of the font.
96
117
 
97
118
  [Here](/docs/supported-formats/fonts/) is a list of all supported fonts.
98
119
  `),
99
- font_color: color_without_alpha.default('FFFFFF').describe(`
100
- The color of the subtitle text. The first two hex digits specify the alpha value of the color.
120
+ font_color: z
121
+ .union([color_without_alpha, color_with_alpha])
122
+ .default('FFFFFF')
123
+ .describe(`
124
+ The color of the subtitle text in \`"rgb"\`, \`"rrggbb"\`, or \`"aarrggbb"\` format. If 8 hex digits are provided, the first two specify the alpha value of the color (\`"00"\` is fully opaque, \`"ff"\` is fully transparent).
101
125
  `),
102
126
  font_size: z
103
127
  .number()
@@ -106,6 +130,28 @@ The color of the subtitle text. The first two hex digits specify the alpha value
106
130
  .default(16)
107
131
  .describe(`
108
132
  Specifies the size of the text.
133
+ `),
134
+ bold: z
135
+ .boolean()
136
+ .default(false)
137
+ .describe(`
138
+ Specifies whether the subtitle text should be bold. Only applies to burned subtitles.
139
+ `),
140
+ italic: z
141
+ .boolean()
142
+ .default(false)
143
+ .describe(`
144
+ Specifies whether the subtitle text should be italic. Only applies to burned subtitles.
145
+ `),
146
+ outline_width: z
147
+ .number()
148
+ .int()
149
+ .min(0)
150
+ .max(10)
151
+ .optional()
152
+ .nullable()
153
+ .describe(`
154
+ Specifies the width of the text outline in pixels. Only applies to burned subtitles with \`"outline"\` or \`"box"\` border styles. If not specified, the default width is used.
109
155
  `),
110
156
  position: positionSchema.default('bottom').describe(`
111
157
  Specifies the position of the subtitles.
@@ -115,13 +161,20 @@ Specifies the position of the subtitles.
115
161
  .optional()
116
162
  .nullable()
117
163
  .describe(`
118
- Specifies the language of the subtitles. Only used if the subtitles are external.
164
+ Specifies the language of the subtitle stream using a three-letter language code (e.g. \`"eng"\`, \`"deu"\`, \`"spa"\`). Only used if the subtitles are external. When adding multiple subtitle streams, set a different language for each stream so that video players can offer language selection.
165
+ `),
166
+ name: z
167
+ .string()
168
+ .optional()
169
+ .nullable()
170
+ .describe(`
171
+ Specifies a human-readable name for the subtitle track (e.g. \`"English"\`, \`"Deutsch"\`, \`"Español"\`). Only used if the subtitles are external. This name is displayed in video player subtitle menus alongside the language.
119
172
  `),
120
173
  keep_subtitles: z
121
174
  .boolean()
122
175
  .default(false)
123
176
  .describe(`
124
- Specifies if existing subtitles in the input file should be kept or be replaced by the new subtitle. Only used if the subtitles are external.
177
+ Specifies if existing subtitles in the input file should be kept or be replaced by the new subtitle. Only used if the subtitles are external. Set this to \`true\` when chaining multiple \`/video/subtitle\` Steps to add several subtitle streams (e.g. different languages) to the same video.
125
178
  `),
126
179
  })
127
180
  .strict()
@@ -13,7 +13,6 @@ import {
13
13
  } from './_instructions-primitives.ts'
14
14
 
15
15
  export const meta: RobotMetaInput = {
16
- allowed_for_url_transform: false,
17
16
  bytescount: 10,
18
17
  discount_factor: 0.1,
19
18
  discount_pct: 90,
@@ -10,7 +10,6 @@ import {
10
10
  } from './_instructions-primitives.ts'
11
11
 
12
12
  export const meta: RobotMetaInput = {
13
- allowed_for_url_transform: true,
14
13
  bytescount: 10,
15
14
  discount_factor: 0.1,
16
15
  discount_pct: 90,
@@ -4,10 +4,10 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { interpolateRobot, robotBase, robotUse, vimeoBase } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 6,
9
8
  discount_factor: 0.15000150001500018,
10
9
  discount_pct: 84.99984999849998,
10
+ hideCredentialsWarning: true,
11
11
  example_code: {
12
12
  steps: {
13
13
  exported: {
@@ -24,7 +24,7 @@ export const meta: RobotMetaInput = {
24
24
  minimum_charge: 0,
25
25
  output_factor: 1,
26
26
  override_lvl1: 'File Exporting',
27
- purpose_sentence: 'exports encoding results to vimeo',
27
+ purpose_sentence: 'exports encoding results to Vimeo',
28
28
  purpose_verb: 'export',
29
29
  purpose_word: 'Vimeo',
30
30
  purpose_words: 'Export files to Vimeo',
@@ -47,7 +47,18 @@ export const robotVimeoStoreInstructionsSchema = robotBase
47
47
  .merge(robotUse)
48
48
  .merge(vimeoBase)
49
49
  .extend({
50
- robot: z.literal('/vimeo/store'),
50
+ robot: z.literal('/vimeo/store').describe(`
51
+ ## Getting started
52
+
53
+ Since Vimeo works with OAuth, you will need to generate [Template Credentials](https://transloadit.com/c/template-credentials/) to use this <dfn>Robot</dfn>.
54
+
55
+ To change the \`title\` or \`description\` per video, we recommend to [inject variables into your Template](/docs/topics/templates/).
56
+
57
+ > [!Warning]
58
+ > Vimeo's API limits the number of concurrent uploads per minute based on your Vimeo account plan. To see how many videos can be uploaded at once based on your plan, click the following [link](https://developer.vimeo.com/guidelines/rate-limiting#table-1).
59
+
60
+ Note that this <dfn>Robot</dfn> only accepts videos.
61
+ `),
51
62
  title: z.string().describe(`
52
63
  The title of the video to be displayed on Vimeo.
53
64
  `),
@@ -14,7 +14,6 @@ import {
14
14
  } from './_instructions-primitives.ts'
15
15
 
16
16
  export const meta: RobotMetaInput = {
17
- allowed_for_url_transform: true,
18
17
  bytescount: 10,
19
18
  discount_factor: 0.1,
20
19
  discount_pct: 90,
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { interpolateRobot, robotBase, robotUse, wasabiBase } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 6,
9
8
  discount_factor: 0.15000150001500018,
10
9
  discount_pct: 84.99984999849998,
@@ -4,10 +4,10 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 6,
9
8
  discount_factor: 0.15000150001500018,
10
9
  discount_pct: 84.99984999849998,
10
+ hideCredentialsWarning: true,
11
11
  example_code: {
12
12
  steps: {
13
13
  exported: {
@@ -49,15 +49,14 @@ export const robotYoutubeStoreInstructionsSchema = robotBase
49
49
  .merge(robotUse)
50
50
  .extend({
51
51
  robot: z.literal('/youtube/store').describe(`
52
- > [!Note]
53
- > This <dfn>Robot</dfn> only accepts videos.
54
-
55
- ## Installation
52
+ ## Getting started
56
53
 
57
54
  Since YouTube works with OAuth, you will need to generate [Template Credentials](/c/template-credentials/) to use this <dfn>Robot</dfn>.
58
55
 
59
56
  To change the \`title\`, \`description\`, \`category\`, or \`keywords\` per video, we recommend to [inject variables into your Template](/docs/topics/templates/).
60
57
 
58
+ Note that this <dfn>Robot</dfn> only accepts videos.
59
+
61
60
  ## Adding a thumbnail image to your video
62
61
 
63
62
  You can add a custom thumbnail to your video on YouTube by using our \`"as"\` syntax for the \`"use"\` parameter to supply both a video and an image to the step:
@@ -1,9 +1,22 @@
1
1
  import { z } from 'zod'
2
2
 
3
- import { robotsSchema, robotsWithHiddenBotsAndFieldsSchema } from './robots/_index.ts'
3
+ import {
4
+ robotsSchema,
5
+ robotsWithHiddenBotsAndFieldsSchema,
6
+ } from './robots/_index.ts'
7
+ import type {
8
+ RobotsSchema,
9
+ RobotsWithHiddenBotsAndFields,
10
+ } from './robots/_index.ts'
4
11
  import type { RobotUse } from './robots/_instructions-primitives.ts'
5
12
 
6
- export const stepSchema = z
13
+ export type Step = RobotsSchema
14
+ export type StepInput = Step
15
+ export type StepInputWithUse = StepInput & RobotUse
16
+ export type Steps = Record<string, Step>
17
+ export type StepsInput = Steps
18
+
19
+ export const stepSchema: z.ZodType<Step> = z
7
20
  .object({
8
21
  // This is a hack to get nicer robot hover messages in editors.
9
22
  robot: z
@@ -11,15 +24,17 @@ export const stepSchema = z
11
24
  .describe('Identifier of the [robot](https://transloadit.com/docs/robots/) to execute'),
12
25
  })
13
26
  .and(robotsSchema)
14
- export const stepsSchema = z.record(stepSchema).describe('Contains Assembly Instructions.')
15
- export type Step = z.infer<typeof stepSchema>
16
- export type StepInput = z.input<typeof stepSchema>
17
- export type StepInputWithUse = StepInput & RobotUse
18
- export type Steps = z.infer<typeof stepsSchema>
19
- export type StepsInput = z.input<typeof stepsSchema>
27
+ export const stepsSchema: z.ZodType<Steps> = z
28
+ .record(stepSchema)
29
+ .describe('Contains Assembly Instructions.')
20
30
  export const optionalStepsSchema = stepsSchema.optional()
21
31
 
22
- export const stepSchemaWithHiddenFields = z
32
+ export type StepWithHiddenFields = RobotsWithHiddenBotsAndFields
33
+ export type StepWithHiddenFieldsInput = StepWithHiddenFields
34
+ export type StepsWithHiddenFields = Record<string, StepWithHiddenFields>
35
+ export type StepsWithHiddenFieldsInput = StepsWithHiddenFields
36
+
37
+ export const stepSchemaWithHiddenFields: z.ZodType<StepWithHiddenFields> = z
23
38
  .object({
24
39
  // This is a hack to get nicer robot hover messages in editors.
25
40
  robot: z
@@ -27,13 +42,9 @@ export const stepSchemaWithHiddenFields = z
27
42
  .describe('Identifier of the [robot](https://transloadit.com/docs/robots/) to execute'),
28
43
  })
29
44
  .and(robotsWithHiddenBotsAndFieldsSchema)
30
- export const stepsSchemaWithHiddenFields = z
45
+ export const stepsSchemaWithHiddenFields: z.ZodType<StepsWithHiddenFields> = z
31
46
  .record(stepSchemaWithHiddenFields)
32
47
  .describe('Contains Assembly Instructions.')
33
- export type StepWithHiddenFields = z.infer<typeof stepSchemaWithHiddenFields>
34
- export type StepWithHiddenFieldsInput = z.input<typeof stepSchemaWithHiddenFields>
35
- export type StepsWithHiddenFields = z.infer<typeof stepsSchemaWithHiddenFields>
36
- export type StepsWithHiddenFieldsInput = z.input<typeof stepsSchemaWithHiddenFields>
37
48
  const optionalStepsWithHiddenFieldsSchema = stepsSchemaWithHiddenFields.optional()
38
49
 
39
50
  export const fieldsSchema = z
@@ -48,7 +59,27 @@ export const notifyUrlSchema = z
48
59
  .optional()
49
60
  .nullable()
50
61
  .describe(
51
- 'Transloadit can send a Pingback to your server when the Assembly is completed. Well send the Assembly status in a form url-encoded JSON string inside of a transloadit field in a multipart POST request to the URL supplied here.',
62
+ "Transloadit can send a Pingback to your server when the Assembly is completed. We'll send the Assembly status in a form url-encoded JSON string inside of a transloadit field in a multipart POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`); the same filtering applies to notification replays.",
63
+ )
64
+
65
+ export type NotificationPayloadFilter =
66
+ | 'without_result_meta_data'
67
+ | 'without_results'
68
+ | 'without_upload_meta_data'
69
+ | 'without_uploads'
70
+
71
+ export const notificationPayloadFilterValues = [
72
+ 'without_result_meta_data',
73
+ 'without_results',
74
+ 'without_upload_meta_data',
75
+ 'without_uploads',
76
+ ] as const satisfies readonly NotificationPayloadFilter[]
77
+
78
+ export const notificationPayloadSchema = z
79
+ .array(z.enum(notificationPayloadFilterValues))
80
+ .optional()
81
+ .describe(
82
+ 'Controls the size of the payload sent in Assembly notifications (both the initial notification and any notification replays). An empty array (default) sends the complete Assembly status. Add `"without_upload_meta_data"` to strip `meta` from files in `uploads`. Add `"without_result_meta_data"` to strip `meta` from files in `results`. Add `"without_uploads"` to strip `uploads` entirely. Add `"without_results"` to strip `results` entirely. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large assemblies.',
52
83
  )
53
84
 
54
85
  export const templateIdSchema = z
@@ -122,6 +153,7 @@ const assemblyInstructionsSharedShape = {
122
153
  'Set this to false to disallow Overruling Templates at Runtime. If you set this to false then template_id and steps will be mutually exclusive and you may only supply one of those parameters. Recommended when deploying Transloadit in untrusted environments. This makes sense to set as part of a Template, rather than on the Assembly itself when creating it.',
123
154
  ),
124
155
  notify_url: notifyUrlSchema,
156
+ notification_payload: notificationPayloadSchema,
125
157
  fields: fieldsSchema,
126
158
  quiet: z
127
159
  .boolean()
@@ -30,6 +30,7 @@ export const templateCredentialsSchema = z
30
30
  'ftp',
31
31
  'google',
32
32
  'http',
33
+ 'mega',
33
34
  'minio',
34
35
  'rackspace',
35
36
  's3',