transloadit 4.7.6 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) hide show
  1. package/README.md +46 -19
  2. package/dist/alphalib/assembly-linter.js +1 -1
  3. package/dist/alphalib/assembly-linter.js.map +1 -1
  4. package/dist/alphalib/stepParsing.js +2 -2
  5. package/dist/alphalib/stepParsing.js.map +1 -1
  6. package/dist/alphalib/types/assemblyReplay.d.ts +2 -7860
  7. package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
  8. package/dist/alphalib/types/assemblyReplayNotification.d.ts +2 -7860
  9. package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
  10. package/dist/alphalib/types/assemblyStatus.d.ts +4807 -298
  11. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
  12. package/dist/alphalib/types/assemblyStatus.js +36 -1
  13. package/dist/alphalib/types/assemblyStatus.js.map +1 -1
  14. package/dist/alphalib/types/robots/_index.d.ts +903 -72620
  15. package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
  16. package/dist/alphalib/types/robots/_index.js +62 -11
  17. package/dist/alphalib/types/robots/_index.js.map +1 -1
  18. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +41 -10
  19. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
  20. package/dist/alphalib/types/robots/_instructions-primitives.js +89 -3
  21. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
  22. package/dist/alphalib/types/robots/ai-chat.d.ts +33 -0
  23. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
  24. package/dist/alphalib/types/robots/ai-chat.js +28 -5
  25. package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
  26. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
  27. package/dist/alphalib/types/robots/assembly-savejson.js +8 -0
  28. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
  29. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
  30. package/dist/alphalib/types/robots/audio-artwork.js +4 -5
  31. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
  32. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
  33. package/dist/alphalib/types/robots/audio-concat.js +1 -2
  34. package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
  35. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
  36. package/dist/alphalib/types/robots/audio-encode.js +1 -2
  37. package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
  38. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
  39. package/dist/alphalib/types/robots/audio-loop.js +1 -2
  40. package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
  41. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
  42. package/dist/alphalib/types/robots/audio-merge.js +1 -2
  43. package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
  44. package/dist/alphalib/types/robots/audio-split.d.ts +2936 -0
  45. package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -0
  46. package/dist/alphalib/types/robots/audio-split.js +88 -0
  47. package/dist/alphalib/types/robots/audio-split.js.map +1 -0
  48. package/dist/alphalib/types/robots/audio-waveform.d.ts +92 -6
  49. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
  50. package/dist/alphalib/types/robots/audio-waveform.js +72 -6
  51. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
  52. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
  53. package/dist/alphalib/types/robots/azure-import.js +0 -1
  54. package/dist/alphalib/types/robots/azure-import.js.map +1 -1
  55. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
  56. package/dist/alphalib/types/robots/azure-store.js +0 -1
  57. package/dist/alphalib/types/robots/azure-store.js.map +1 -1
  58. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
  59. package/dist/alphalib/types/robots/backblaze-import.js +0 -1
  60. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
  61. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
  62. package/dist/alphalib/types/robots/backblaze-store.js +0 -1
  63. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
  64. package/dist/alphalib/types/robots/box-import.d.ts +150 -0
  65. package/dist/alphalib/types/robots/box-import.d.ts.map +1 -0
  66. package/dist/alphalib/types/robots/box-import.js +63 -0
  67. package/dist/alphalib/types/robots/box-import.js.map +1 -0
  68. package/dist/alphalib/types/robots/box-store.d.ts +455 -0
  69. package/dist/alphalib/types/robots/box-store.d.ts.map +1 -0
  70. package/dist/alphalib/types/robots/box-store.js +66 -0
  71. package/dist/alphalib/types/robots/box-store.js.map +1 -0
  72. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
  73. package/dist/alphalib/types/robots/cloudfiles-import.js +0 -1
  74. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
  75. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
  76. package/dist/alphalib/types/robots/cloudfiles-store.js +0 -1
  77. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
  78. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
  79. package/dist/alphalib/types/robots/cloudflare-import.js +0 -1
  80. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
  81. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
  82. package/dist/alphalib/types/robots/cloudflare-store.js +0 -1
  83. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
  84. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
  85. package/dist/alphalib/types/robots/digitalocean-import.js +0 -1
  86. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
  87. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
  88. package/dist/alphalib/types/robots/digitalocean-store.js +0 -1
  89. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
  90. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
  91. package/dist/alphalib/types/robots/document-autorotate.js +8 -1
  92. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
  93. package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
  94. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
  95. package/dist/alphalib/types/robots/document-convert.js +9 -3
  96. package/dist/alphalib/types/robots/document-convert.js.map +1 -1
  97. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
  98. package/dist/alphalib/types/robots/document-merge.js +0 -1
  99. package/dist/alphalib/types/robots/document-merge.js.map +1 -1
  100. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
  101. package/dist/alphalib/types/robots/document-ocr.js +0 -1
  102. package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
  103. package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
  104. package/dist/alphalib/types/robots/document-optimize.js +0 -1
  105. package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
  106. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
  107. package/dist/alphalib/types/robots/document-split.js +9 -1
  108. package/dist/alphalib/types/robots/document-split.js.map +1 -1
  109. package/dist/alphalib/types/robots/document-thumbs.d.ts +12 -0
  110. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
  111. package/dist/alphalib/types/robots/document-thumbs.js +23 -4
  112. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
  113. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
  114. package/dist/alphalib/types/robots/dropbox-import.js +0 -1
  115. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
  116. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
  117. package/dist/alphalib/types/robots/dropbox-store.js +0 -1
  118. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
  119. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
  120. package/dist/alphalib/types/robots/edgly-deliver.js +8 -1
  121. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
  122. package/dist/alphalib/types/robots/file-compress.d.ts +12 -0
  123. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
  124. package/dist/alphalib/types/robots/file-compress.js +8 -1
  125. package/dist/alphalib/types/robots/file-compress.js.map +1 -1
  126. package/dist/alphalib/types/robots/file-decompress.d.ts +24 -0
  127. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
  128. package/dist/alphalib/types/robots/file-decompress.js +30 -5
  129. package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
  130. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
  131. package/dist/alphalib/types/robots/file-filter.js +23 -6
  132. package/dist/alphalib/types/robots/file-filter.js.map +1 -1
  133. package/dist/alphalib/types/robots/file-hash.d.ts +24 -0
  134. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
  135. package/dist/alphalib/types/robots/file-hash.js +23 -1
  136. package/dist/alphalib/types/robots/file-hash.js.map +1 -1
  137. package/dist/alphalib/types/robots/file-preview.d.ts +12 -0
  138. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
  139. package/dist/alphalib/types/robots/file-preview.js +8 -1
  140. package/dist/alphalib/types/robots/file-preview.js.map +1 -1
  141. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
  142. package/dist/alphalib/types/robots/file-read.js +9 -1
  143. package/dist/alphalib/types/robots/file-read.js.map +1 -1
  144. package/dist/alphalib/types/robots/file-serve.d.ts +12 -0
  145. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
  146. package/dist/alphalib/types/robots/file-serve.js +38 -7
  147. package/dist/alphalib/types/robots/file-serve.js.map +1 -1
  148. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
  149. package/dist/alphalib/types/robots/file-verify.js +0 -1
  150. package/dist/alphalib/types/robots/file-verify.js.map +1 -1
  151. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
  152. package/dist/alphalib/types/robots/file-virusscan.js +5 -4
  153. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
  154. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
  155. package/dist/alphalib/types/robots/file-watermark.js +10 -0
  156. package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
  157. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
  158. package/dist/alphalib/types/robots/ftp-import.js +0 -1
  159. package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
  160. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
  161. package/dist/alphalib/types/robots/ftp-store.js +0 -1
  162. package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
  163. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
  164. package/dist/alphalib/types/robots/google-import.js +0 -1
  165. package/dist/alphalib/types/robots/google-import.js.map +1 -1
  166. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
  167. package/dist/alphalib/types/robots/google-store.js +0 -1
  168. package/dist/alphalib/types/robots/google-store.js.map +1 -1
  169. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
  170. package/dist/alphalib/types/robots/html-convert.js +0 -1
  171. package/dist/alphalib/types/robots/html-convert.js.map +1 -1
  172. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
  173. package/dist/alphalib/types/robots/http-import.js +0 -1
  174. package/dist/alphalib/types/robots/http-import.js.map +1 -1
  175. package/dist/alphalib/types/robots/image-bgremove.d.ts +8 -8
  176. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
  177. package/dist/alphalib/types/robots/image-bgremove.js +4 -2
  178. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
  179. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +465 -0
  180. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -0
  181. package/dist/alphalib/types/robots/image-copyrightdetect.js +136 -0
  182. package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -0
  183. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
  184. package/dist/alphalib/types/robots/image-describe.js +0 -1
  185. package/dist/alphalib/types/robots/image-describe.js.map +1 -1
  186. package/dist/alphalib/types/robots/image-enhance.d.ts +502 -0
  187. package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -0
  188. package/dist/alphalib/types/robots/image-enhance.js +146 -0
  189. package/dist/alphalib/types/robots/image-enhance.js.map +1 -0
  190. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
  191. package/dist/alphalib/types/robots/image-facedetect.js +0 -1
  192. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
  193. package/dist/alphalib/types/robots/image-generate.d.ts +4 -5
  194. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
  195. package/dist/alphalib/types/robots/image-generate.js +62 -8
  196. package/dist/alphalib/types/robots/image-generate.js.map +1 -1
  197. package/dist/alphalib/types/robots/image-merge.d.ts +12 -12
  198. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
  199. package/dist/alphalib/types/robots/image-merge.js +0 -1
  200. package/dist/alphalib/types/robots/image-merge.js.map +1 -1
  201. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
  202. package/dist/alphalib/types/robots/image-ocr.js +0 -1
  203. package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
  204. package/dist/alphalib/types/robots/image-optimize.d.ts +12 -0
  205. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
  206. package/dist/alphalib/types/robots/image-optimize.js +16 -3
  207. package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
  208. package/dist/alphalib/types/robots/image-resize.d.ts +20 -8
  209. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
  210. package/dist/alphalib/types/robots/image-resize.js +37 -1
  211. package/dist/alphalib/types/robots/image-resize.js.map +1 -1
  212. package/dist/alphalib/types/robots/image-upscale.d.ts +447 -0
  213. package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -0
  214. package/dist/alphalib/types/robots/image-upscale.js +65 -0
  215. package/dist/alphalib/types/robots/image-upscale.js.map +1 -0
  216. package/dist/alphalib/types/robots/mega-import.d.ts +244 -0
  217. package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -0
  218. package/dist/alphalib/types/robots/mega-import.js +84 -0
  219. package/dist/alphalib/types/robots/mega-import.js.map +1 -0
  220. package/dist/alphalib/types/robots/mega-store.d.ts +526 -0
  221. package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -0
  222. package/dist/alphalib/types/robots/mega-store.js +82 -0
  223. package/dist/alphalib/types/robots/mega-store.js.map +1 -0
  224. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
  225. package/dist/alphalib/types/robots/meta-read.js +8 -0
  226. package/dist/alphalib/types/robots/meta-read.js.map +1 -1
  227. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
  228. package/dist/alphalib/types/robots/meta-write.js +0 -1
  229. package/dist/alphalib/types/robots/meta-write.js.map +1 -1
  230. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
  231. package/dist/alphalib/types/robots/minio-import.js +0 -1
  232. package/dist/alphalib/types/robots/minio-import.js.map +1 -1
  233. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
  234. package/dist/alphalib/types/robots/minio-store.js +0 -1
  235. package/dist/alphalib/types/robots/minio-store.js.map +1 -1
  236. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
  237. package/dist/alphalib/types/robots/progress-simulate.js +13 -0
  238. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
  239. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
  240. package/dist/alphalib/types/robots/s3-import.js +0 -1
  241. package/dist/alphalib/types/robots/s3-import.js.map +1 -1
  242. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
  243. package/dist/alphalib/types/robots/s3-store.js +0 -1
  244. package/dist/alphalib/types/robots/s3-store.js.map +1 -1
  245. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
  246. package/dist/alphalib/types/robots/script-run.js +10 -1
  247. package/dist/alphalib/types/robots/script-run.js.map +1 -1
  248. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
  249. package/dist/alphalib/types/robots/sftp-import.js +0 -1
  250. package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
  251. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
  252. package/dist/alphalib/types/robots/sftp-store.js +0 -1
  253. package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
  254. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
  255. package/dist/alphalib/types/robots/speech-transcribe.js +0 -1
  256. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
  257. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
  258. package/dist/alphalib/types/robots/supabase-import.js +0 -1
  259. package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
  260. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
  261. package/dist/alphalib/types/robots/supabase-store.js +0 -1
  262. package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
  263. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
  264. package/dist/alphalib/types/robots/swift-import.js +0 -1
  265. package/dist/alphalib/types/robots/swift-import.js.map +1 -1
  266. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
  267. package/dist/alphalib/types/robots/swift-store.js +0 -1
  268. package/dist/alphalib/types/robots/swift-store.js.map +1 -1
  269. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
  270. package/dist/alphalib/types/robots/text-speak.js +0 -1
  271. package/dist/alphalib/types/robots/text-speak.js.map +1 -1
  272. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
  273. package/dist/alphalib/types/robots/text-translate.js +0 -1
  274. package/dist/alphalib/types/robots/text-translate.js.map +1 -1
  275. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
  276. package/dist/alphalib/types/robots/tigris-import.js +0 -1
  277. package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
  278. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
  279. package/dist/alphalib/types/robots/tigris-store.js +0 -1
  280. package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
  281. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
  282. package/dist/alphalib/types/robots/tlcdn-deliver.js +8 -1
  283. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
  284. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
  285. package/dist/alphalib/types/robots/tus-store.js +1 -14
  286. package/dist/alphalib/types/robots/tus-store.js.map +1 -1
  287. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
  288. package/dist/alphalib/types/robots/upload-handle.js +0 -1
  289. package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
  290. package/dist/alphalib/types/robots/video-adaptive.d.ts +32 -8
  291. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
  292. package/dist/alphalib/types/robots/video-adaptive.js +22 -6
  293. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
  294. package/dist/alphalib/types/robots/video-artwork.d.ts +2855 -0
  295. package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -0
  296. package/dist/alphalib/types/robots/video-artwork.js +66 -0
  297. package/dist/alphalib/types/robots/video-artwork.js.map +1 -0
  298. package/dist/alphalib/types/robots/video-concat.d.ts +36 -0
  299. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
  300. package/dist/alphalib/types/robots/video-concat.js +30 -1
  301. package/dist/alphalib/types/robots/video-concat.js.map +1 -1
  302. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
  303. package/dist/alphalib/types/robots/video-encode.js +0 -1
  304. package/dist/alphalib/types/robots/video-encode.js.map +1 -1
  305. package/dist/alphalib/types/robots/video-generate.d.ts +594 -0
  306. package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -0
  307. package/dist/alphalib/types/robots/video-generate.js +90 -0
  308. package/dist/alphalib/types/robots/video-generate.js.map +1 -0
  309. package/dist/alphalib/types/robots/video-merge.d.ts +24 -0
  310. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
  311. package/dist/alphalib/types/robots/video-merge.js +33 -1
  312. package/dist/alphalib/types/robots/video-merge.js.map +1 -1
  313. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
  314. package/dist/alphalib/types/robots/video-ondemand.js +3 -4
  315. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
  316. package/dist/alphalib/types/robots/video-split.d.ts +2939 -0
  317. package/dist/alphalib/types/robots/video-split.d.ts.map +1 -0
  318. package/dist/alphalib/types/robots/video-split.js +78 -0
  319. package/dist/alphalib/types/robots/video-split.js.map +1 -0
  320. package/dist/alphalib/types/robots/video-subtitle.d.ts +52 -4
  321. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
  322. package/dist/alphalib/types/robots/video-subtitle.js +61 -8
  323. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
  324. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
  325. package/dist/alphalib/types/robots/video-thumbs.js +0 -1
  326. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
  327. package/dist/alphalib/types/robots/vimeo-import.d.ts +4 -4
  328. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
  329. package/dist/alphalib/types/robots/vimeo-import.js +0 -1
  330. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
  331. package/dist/alphalib/types/robots/vimeo-store.d.ts +2 -2
  332. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
  333. package/dist/alphalib/types/robots/vimeo-store.js +14 -3
  334. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
  335. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
  336. package/dist/alphalib/types/robots/wasabi-import.js +0 -1
  337. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
  338. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
  339. package/dist/alphalib/types/robots/wasabi-store.js +0 -1
  340. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
  341. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
  342. package/dist/alphalib/types/robots/youtube-store.js +4 -5
  343. package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
  344. package/dist/alphalib/types/template.d.ts +41 -132175
  345. package/dist/alphalib/types/template.d.ts.map +1 -1
  346. package/dist/alphalib/types/template.js +16 -3
  347. package/dist/alphalib/types/template.js.map +1 -1
  348. package/dist/alphalib/types/templateCredential.d.ts +3 -3
  349. package/dist/alphalib/types/templateCredential.d.ts.map +1 -1
  350. package/dist/alphalib/types/templateCredential.js +1 -0
  351. package/dist/alphalib/types/templateCredential.js.map +1 -1
  352. package/dist/alphalib/zodParseWithContext.d.ts.map +1 -1
  353. package/dist/alphalib/zodParseWithContext.js +15 -11
  354. package/dist/alphalib/zodParseWithContext.js.map +1 -1
  355. package/dist/cli/generateIntentDocs.d.ts +5 -1
  356. package/dist/cli/generateIntentDocs.d.ts.map +1 -1
  357. package/dist/cli/generateIntentDocs.js +25 -9
  358. package/dist/cli/generateIntentDocs.js.map +1 -1
  359. package/dist/cli/intentCommandSpecs.d.ts.map +1 -1
  360. package/dist/cli/intentCommandSpecs.js +4 -6
  361. package/dist/cli/intentCommandSpecs.js.map +1 -1
  362. package/dist/cli/intentRuntime.d.ts.map +1 -1
  363. package/dist/cli/intentRuntime.js +4 -4
  364. package/dist/cli/intentRuntime.js.map +1 -1
  365. package/dist/cli/semanticIntents/imageDescribe.d.ts +3 -1
  366. package/dist/cli/semanticIntents/imageDescribe.d.ts.map +1 -1
  367. package/dist/cli/semanticIntents/imageDescribe.js +1 -1
  368. package/dist/cli/semanticIntents/imageDescribe.js.map +1 -1
  369. package/dist/cli/semanticIntents/imageGenerate.d.ts +94 -0
  370. package/dist/cli/semanticIntents/imageGenerate.d.ts.map +1 -0
  371. package/dist/cli/semanticIntents/imageGenerate.js +215 -0
  372. package/dist/cli/semanticIntents/imageGenerate.js.map +1 -0
  373. package/dist/cli/semanticIntents/index.d.ts +3 -1
  374. package/dist/cli/semanticIntents/index.d.ts.map +1 -1
  375. package/dist/cli/semanticIntents/index.js +2 -0
  376. package/dist/cli/semanticIntents/index.js.map +1 -1
  377. package/dist/cli/semanticIntents/markdownPdf.js +1 -1
  378. package/dist/cli/semanticIntents/markdownPdf.js.map +1 -1
  379. package/dist/cli.js +0 -0
  380. package/dist/robots.js +2 -2
  381. package/dist/robots.js.map +1 -1
  382. package/package.json +1 -1
  383. package/src/alphalib/assembly-linter.ts +1 -1
  384. package/src/alphalib/stepParsing.ts +2 -2
  385. package/src/alphalib/types/assemblyStatus.ts +41 -2
  386. package/src/alphalib/types/robots/_index.ts +211 -20
  387. package/src/alphalib/types/robots/_instructions-primitives.ts +93 -3
  388. package/src/alphalib/types/robots/ai-chat.ts +35 -5
  389. package/src/alphalib/types/robots/assembly-savejson.ts +8 -0
  390. package/src/alphalib/types/robots/audio-artwork.ts +4 -5
  391. package/src/alphalib/types/robots/audio-concat.ts +1 -2
  392. package/src/alphalib/types/robots/audio-encode.ts +1 -2
  393. package/src/alphalib/types/robots/audio-loop.ts +1 -2
  394. package/src/alphalib/types/robots/audio-merge.ts +1 -2
  395. package/src/alphalib/types/robots/audio-split.ts +130 -0
  396. package/src/alphalib/types/robots/audio-waveform.ts +90 -6
  397. package/src/alphalib/types/robots/azure-import.ts +0 -1
  398. package/src/alphalib/types/robots/azure-store.ts +0 -1
  399. package/src/alphalib/types/robots/backblaze-import.ts +0 -1
  400. package/src/alphalib/types/robots/backblaze-store.ts +0 -1
  401. package/src/alphalib/types/robots/box-import.ts +97 -0
  402. package/src/alphalib/types/robots/box-store.ts +94 -0
  403. package/src/alphalib/types/robots/cloudfiles-import.ts +0 -1
  404. package/src/alphalib/types/robots/cloudfiles-store.ts +0 -1
  405. package/src/alphalib/types/robots/cloudflare-import.ts +0 -1
  406. package/src/alphalib/types/robots/cloudflare-store.ts +0 -1
  407. package/src/alphalib/types/robots/digitalocean-import.ts +0 -1
  408. package/src/alphalib/types/robots/digitalocean-store.ts +0 -1
  409. package/src/alphalib/types/robots/document-autorotate.ts +8 -1
  410. package/src/alphalib/types/robots/document-convert.ts +10 -3
  411. package/src/alphalib/types/robots/document-merge.ts +0 -1
  412. package/src/alphalib/types/robots/document-ocr.ts +0 -1
  413. package/src/alphalib/types/robots/document-optimize.ts +0 -1
  414. package/src/alphalib/types/robots/document-split.ts +9 -1
  415. package/src/alphalib/types/robots/document-thumbs.ts +26 -4
  416. package/src/alphalib/types/robots/dropbox-import.ts +0 -1
  417. package/src/alphalib/types/robots/dropbox-store.ts +0 -1
  418. package/src/alphalib/types/robots/edgly-deliver.ts +8 -1
  419. package/src/alphalib/types/robots/file-compress.ts +8 -1
  420. package/src/alphalib/types/robots/file-decompress.ts +30 -5
  421. package/src/alphalib/types/robots/file-filter.ts +23 -6
  422. package/src/alphalib/types/robots/file-hash.ts +23 -1
  423. package/src/alphalib/types/robots/file-preview.ts +8 -1
  424. package/src/alphalib/types/robots/file-read.ts +9 -1
  425. package/src/alphalib/types/robots/file-serve.ts +39 -7
  426. package/src/alphalib/types/robots/file-verify.ts +0 -1
  427. package/src/alphalib/types/robots/file-virusscan.ts +6 -4
  428. package/src/alphalib/types/robots/file-watermark.ts +10 -0
  429. package/src/alphalib/types/robots/ftp-import.ts +0 -1
  430. package/src/alphalib/types/robots/ftp-store.ts +0 -1
  431. package/src/alphalib/types/robots/google-import.ts +0 -1
  432. package/src/alphalib/types/robots/google-store.ts +0 -1
  433. package/src/alphalib/types/robots/html-convert.ts +0 -1
  434. package/src/alphalib/types/robots/http-import.ts +0 -1
  435. package/src/alphalib/types/robots/image-bgremove.ts +4 -2
  436. package/src/alphalib/types/robots/image-copyrightdetect.ts +167 -0
  437. package/src/alphalib/types/robots/image-describe.ts +0 -1
  438. package/src/alphalib/types/robots/image-enhance.ts +185 -0
  439. package/src/alphalib/types/robots/image-facedetect.ts +0 -1
  440. package/src/alphalib/types/robots/image-generate.ts +74 -8
  441. package/src/alphalib/types/robots/image-merge.ts +0 -1
  442. package/src/alphalib/types/robots/image-ocr.ts +0 -1
  443. package/src/alphalib/types/robots/image-optimize.ts +16 -3
  444. package/src/alphalib/types/robots/image-resize.ts +37 -1
  445. package/src/alphalib/types/robots/image-upscale.ts +93 -0
  446. package/src/alphalib/types/robots/mega-import.ts +123 -0
  447. package/src/alphalib/types/robots/mega-store.ts +109 -0
  448. package/src/alphalib/types/robots/meta-read.ts +8 -0
  449. package/src/alphalib/types/robots/meta-write.ts +0 -1
  450. package/src/alphalib/types/robots/minio-import.ts +0 -1
  451. package/src/alphalib/types/robots/minio-store.ts +0 -1
  452. package/src/alphalib/types/robots/progress-simulate.ts +13 -0
  453. package/src/alphalib/types/robots/s3-import.ts +0 -1
  454. package/src/alphalib/types/robots/s3-store.ts +0 -1
  455. package/src/alphalib/types/robots/script-run.ts +11 -1
  456. package/src/alphalib/types/robots/sftp-import.ts +0 -1
  457. package/src/alphalib/types/robots/sftp-store.ts +0 -1
  458. package/src/alphalib/types/robots/speech-transcribe.ts +0 -1
  459. package/src/alphalib/types/robots/supabase-import.ts +0 -1
  460. package/src/alphalib/types/robots/supabase-store.ts +0 -1
  461. package/src/alphalib/types/robots/swift-import.ts +0 -1
  462. package/src/alphalib/types/robots/swift-store.ts +0 -1
  463. package/src/alphalib/types/robots/text-speak.ts +0 -1
  464. package/src/alphalib/types/robots/text-translate.ts +0 -1
  465. package/src/alphalib/types/robots/tigris-import.ts +0 -1
  466. package/src/alphalib/types/robots/tigris-store.ts +0 -1
  467. package/src/alphalib/types/robots/tlcdn-deliver.ts +8 -1
  468. package/src/alphalib/types/robots/tus-store.ts +1 -14
  469. package/src/alphalib/types/robots/upload-handle.ts +0 -1
  470. package/src/alphalib/types/robots/video-adaptive.ts +22 -6
  471. package/src/alphalib/types/robots/video-artwork.ts +100 -0
  472. package/src/alphalib/types/robots/video-concat.ts +30 -1
  473. package/src/alphalib/types/robots/video-encode.ts +0 -1
  474. package/src/alphalib/types/robots/video-generate.ts +120 -0
  475. package/src/alphalib/types/robots/video-merge.ts +33 -1
  476. package/src/alphalib/types/robots/video-ondemand.ts +3 -4
  477. package/src/alphalib/types/robots/video-split.ts +117 -0
  478. package/src/alphalib/types/robots/video-subtitle.ts +61 -8
  479. package/src/alphalib/types/robots/video-thumbs.ts +0 -1
  480. package/src/alphalib/types/robots/vimeo-import.ts +0 -1
  481. package/src/alphalib/types/robots/vimeo-store.ts +14 -3
  482. package/src/alphalib/types/robots/wasabi-import.ts +0 -1
  483. package/src/alphalib/types/robots/wasabi-store.ts +0 -1
  484. package/src/alphalib/types/robots/youtube-store.ts +4 -5
  485. package/src/alphalib/types/template.ts +47 -15
  486. package/src/alphalib/types/templateCredential.ts +1 -0
  487. package/src/alphalib/zodParseWithContext.ts +19 -12
  488. package/src/cli/generateIntentDocs.ts +28 -9
  489. package/src/cli/intentCommandSpecs.ts +4 -9
  490. package/src/cli/intentRuntime.ts +8 -3
  491. package/src/cli/semanticIntents/imageDescribe.ts +4 -1
  492. package/src/cli/semanticIntents/imageGenerate.ts +254 -0
  493. package/src/cli/semanticIntents/index.ts +6 -1
  494. package/src/cli/semanticIntents/markdownPdf.ts +1 -1
  495. package/src/robots.ts +2 -2
@@ -4,10 +4,29 @@ 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: 1,
9
8
  discount_factor: 1,
10
9
  discount_pct: 0,
10
+ example_code: {
11
+ steps: {
12
+ ':original': {
13
+ robot: '/upload/handle',
14
+ },
15
+ inpainted: {
16
+ robot: '/image/generate',
17
+ use: [
18
+ { name: ':original', as: 'image' },
19
+ { name: ':original', as: 'mask' },
20
+ ],
21
+ model: 'google/nano-banana-pro',
22
+ prompt:
23
+ 'Replace the masked area with a breaching whale. Keep the rest of the image unchanged.',
24
+ format: 'png',
25
+ },
26
+ },
27
+ },
28
+ example_code_description:
29
+ 'Inpaint an image by uploading an original image and a mask image, then use both files in /image/generate.',
11
30
  minimum_charge: 0,
12
31
  output_factor: 0.6,
13
32
  purpose_sentence: 'generates images from text prompts using AI',
@@ -30,23 +49,70 @@ export const meta: RobotMetaInput = {
30
49
  stage: 'ga',
31
50
  }
32
51
 
52
+ // Internal documentation (for public docs, see transloadit.com/docs)
53
+ //
54
+ // Inpainting: When input files are provided via `use`, file metadata (field name, mime) is
55
+ // prepended to the prompt so the model understands each file's role. Users should name upload
56
+ // fields semantically (e.g., "mask", "image") or use the `as` directive. Field is checked first,
57
+ // then `as`. Models that accept explicit image/mask inputs use these roles deterministically.
58
+ // Models that infer roles from prompt context receive this file metadata in the prompt.
33
59
  export const robotImageGenerateInstructionsSchema = robotBase
34
60
  .merge(robotUse)
35
61
  .extend({
36
62
  robot: z.literal('/image/generate'),
63
+ use: robotUse.shape.use.describe(
64
+ `
65
+ Specifies which Step(s) to use as input.
66
+
67
+ For inpainting, provide both the source image and mask through \`use\`, typically with:
68
+
69
+ \`\`\`json
70
+ {
71
+ "use": [
72
+ { "name": ":original", "as": "image" },
73
+ { "name": ":original", "as": "mask" }
74
+ ]
75
+ }
76
+ \`\`\`
77
+
78
+ Best practice:
79
+ - Tag source and mask inputs explicitly using \`as\` (or semantic upload field names)
80
+ - Keep the prompt focused on what should change in the masked/transparent region
81
+ - Leave the model/provider choice to the robot defaults unless you have a specific need
82
+ `,
83
+ ),
37
84
  model: z
38
85
  .string()
39
86
  .optional()
40
- .describe('The AI model to use for image generation. Defaults to google/nano-banana.'),
41
- prompt: z.string().describe('The prompt describing the desired image content.'),
87
+ .describe(
88
+ 'The AI model to use. Defaults to google/nano-banana. Supported models include flux-1.1-pro-ultra, flux-schnell, recraft-v3, google/nano-banana, google/nano-banana-2, google/nano-banana-pro, and stability-ai/stable-diffusion-inpainting.',
89
+ ),
90
+ prompt: z
91
+ .string()
92
+ .describe(
93
+ 'Prompt describing the desired image. For inpainting, describe what should appear in the masked/transparent region and that the rest should stay unchanged.',
94
+ ),
42
95
  format: z
43
96
  .enum(['jpeg', 'jpg', 'png', 'gif', 'webp', 'svg'])
44
97
  .optional()
45
- .describe('Format of the generated image.'),
98
+ .describe(
99
+ 'Output format. Defaults depend on model: png for Google models, svg for recraft-v3, jpeg for others. Google models currently return PNG only.',
100
+ ),
46
101
  seed: z.number().optional().describe('Seed for the random number generator.'),
47
- aspect_ratio: z.string().optional().describe('Aspect ratio of the generated image.'),
48
- height: z.number().optional().describe('Height of the generated image.'),
49
- width: z.number().optional().describe('Width of the generated image.'),
102
+ aspect_ratio: z
103
+ .string()
104
+ .optional()
105
+ .describe(
106
+ 'Requested output aspect ratio. For Google models, width/height can also be used and orientation is derived automatically when aspect_ratio is omitted.',
107
+ ),
108
+ height: z
109
+ .number()
110
+ .optional()
111
+ .describe('Requested output height in pixels (mainly used by Google image models).'),
112
+ width: z
113
+ .number()
114
+ .optional()
115
+ .describe('Requested output width in pixels (mainly used by Google image models).'),
50
116
  style: z.string().optional().describe('Style of the generated image.'),
51
117
  num_outputs: z
52
118
  .number()
@@ -54,7 +120,7 @@ export const robotImageGenerateInstructionsSchema = robotBase
54
120
  .min(1)
55
121
  .max(10)
56
122
  .optional()
57
- .describe('Number of image variants to generate.'),
123
+ .describe('Number of output variants to generate (1-10).'),
58
124
  })
59
125
  .strict()
60
126
 
@@ -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: 1,
15
14
  discount_factor: 1,
16
15
  discount_pct: 0,
@@ -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: 1,
15
14
  discount_factor: 1,
16
15
  discount_pct: 0,
@@ -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
  bytescount: 1,
14
13
  discount_factor: 1,
15
14
  discount_pct: 0,
@@ -30,13 +29,13 @@ export const meta: RobotMetaInput = {
30
29
  purpose_word: 'optimize',
31
30
  purpose_words: 'Optimize images without quality loss',
32
31
  service_slug: 'image-manipulation',
33
- slot_count: 15,
32
+ slot_count: 5,
34
33
  title: 'Optimize images without quality loss',
35
34
  typical_file_size_mb: 0.8,
36
35
  typical_file_type: 'image',
37
36
  name: 'ImageOptimizeRobot',
38
37
  priceFactor: 1,
39
- queueSlotCount: 15,
38
+ queueSlotCount: 5,
40
39
  isAllowedForUrlTransform: true,
41
40
  trackOutputFileSize: true,
42
41
  isInternal: false,
@@ -56,6 +55,9 @@ It works well together with [🤖/image/resize](/docs/robots/image-resize/) to b
56
55
 
57
56
  > [!Note]
58
57
  > This <dfn>Robot</dfn> accepts all image types and will just pass on unsupported image types unoptimized. Hence, there is no need to set up [🤖/file/filter](/docs/robots/file-filter/) workflows for this.
58
+
59
+ > [!Note]
60
+ > PNG optimization uses only lossless (optipng) compressors by default. To also enable lossy compression (pngquant), set \`lossy: true\`. When enabled, both lossy and lossless compressors compete and the smallest result wins, which may cause color shifts in some images.
59
61
  `),
60
62
  priority: optimize_priority.describe(`
61
63
  Provides different algorithms for better or worse compression for your images, but that run slower or faster. The value \`"conversion-speed"\` will result in an average compression ratio of 18%. \`"compression-ratio"\` will result in an average compression ratio of 31%.
@@ -77,6 +79,17 @@ Specifies if the image's metadata should be preserved during the optimization, o
77
79
  .default(true)
78
80
  .describe(`
79
81
  If set to \`true\` this parameter tries to fix images that would otherwise make the underlying tool error out and thereby break your <dfn>Assemblies</dfn>. This can sometimes result in a larger file size, though.
82
+ `),
83
+ lossy: z
84
+ .boolean()
85
+ .default(false)
86
+ .describe(`
87
+ When set to \`false\` (the default), only lossless PNG optimizers are used, disabling pngquant to preserve color accuracy.
88
+
89
+ When set to \`true\`, both lossy and lossless PNG optimizers compete and the smallest result wins. This allows pngquant, a lossy compressor that reduces PNGs to a 256-color palette, which may cause noticeable color shifts in images with rich color palettes, subtle gradients, or brand-specific colors.
90
+
91
+ > [!Note]
92
+ > This parameter only affects PNG optimization. JPEG, GIF, WebP, and SVG optimization is unaffected.
80
93
  `),
81
94
  })
82
95
  .strict()
@@ -17,7 +17,6 @@ import {
17
17
  } from './_instructions-primitives.ts'
18
18
 
19
19
  export const meta: RobotMetaInput = {
20
- allowed_for_url_transform: true,
21
20
  bytescount: 1,
22
21
  discount_factor: 1,
23
22
  discount_pct: 0,
@@ -545,6 +544,43 @@ Apply the clipping path to other operations in the resize job, if one is present
545
544
  .default(false)
546
545
  .describe(`
547
546
  Replace each pixel with its complementary color, effectively negating the image. Especially useful when testing clipping.
547
+ `),
548
+ clut: z
549
+ .boolean()
550
+ .default(false)
551
+ .describe(`
552
+ Applies a Color Look-Up Table (CLUT) image to remap the colors of the input image using ImageMagick's \`-clut\` operator. When enabled, a second input file must be supplied via the \`use\` parameter with \`"as": "clut"\`.
553
+
554
+ This operation currently runs via ImageMagick convert stack (not image-resizer daemon), even if \`stack: "daemon"\` is requested.
555
+
556
+ When using multiple inputs, you should provide your primary image as \`"as": "base"\`. If no explicit \`base\` alias is set, Transloadit will use the first non-auxiliary input (a file that is not tagged as \`watermark\` or \`clut\`) as the primary image.
557
+
558
+ The CLUT image acts as a gradient map: each pixel's color channels in the input are replaced with the corresponding color from the CLUT image, based on channel intensity. This is a powerful color grading technique widely used in photography and design workflows.
559
+
560
+ Example:
561
+
562
+ \`\`\`json
563
+ {
564
+ "steps": {
565
+ ":original": {
566
+ "robot": "/upload/handle"
567
+ },
568
+ "lut_image": {
569
+ "robot": "/upload/handle"
570
+ },
571
+ "color_graded": {
572
+ "robot": "/image/resize",
573
+ "use": {
574
+ "steps": [
575
+ { "name": ":original", "as": "base" },
576
+ { "name": "lut_image", "as": "clut" }
577
+ ]
578
+ },
579
+ "clut": true
580
+ }
581
+ }
582
+ }
583
+ \`\`\`
548
584
  `),
549
585
  density: z
550
586
  .string()
@@ -0,0 +1,93 @@
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
+ upscaled: {
13
+ robot: '/image/upscale',
14
+ use: ':original',
15
+ scale: 2,
16
+ face_enhance: true,
17
+ },
18
+ },
19
+ },
20
+ example_code_description: 'Upscale uploaded images and enhance faces:',
21
+ minimum_charge: 0,
22
+ output_factor: 0.6,
23
+ purpose_sentence: 'upscales images using AI',
24
+ purpose_verb: 'generate',
25
+ purpose_word: 'upscale',
26
+ purpose_words: 'Upscale images',
27
+ service_slug: 'artificial-intelligence',
28
+ slot_count: 10,
29
+ title: 'Upscale images',
30
+ typical_file_size_mb: 1.2,
31
+ typical_file_type: 'image',
32
+ name: 'ImageUpscaleRobot',
33
+ priceFactor: 1,
34
+ queueSlotCount: 10,
35
+ minimumChargeUsd: 0.06,
36
+ isAllowedForUrlTransform: true,
37
+ trackOutputFileSize: true,
38
+ isInternal: false,
39
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
40
+ stage: 'beta',
41
+ }
42
+
43
+ export const robotImageUpscaleInstructionsSchema = robotBase
44
+ .merge(robotUse)
45
+ .extend({
46
+ robot: z.literal('/image/upscale'),
47
+ model: z
48
+ .enum(['nightmareai/real-esrgan', 'tencentarc/gfpgan', 'sczhou/codeformer'])
49
+ .optional()
50
+ .describe('The AI model to use for image upscaling. Defaults to nightmareai/real-esrgan.'),
51
+ scale: z
52
+ .union([z.literal(2), z.literal(4)])
53
+ .optional()
54
+ .describe('Upscale factor. Defaults to 2.'),
55
+ face_enhance: z
56
+ .boolean()
57
+ .optional()
58
+ .describe('Enable face enhancement for better face restoration. Defaults to false.'),
59
+ })
60
+ .strict()
61
+
62
+ export const robotImageUpscaleInstructionsWithHiddenFieldsSchema =
63
+ robotImageUpscaleInstructionsSchema.extend({
64
+ provider: z.string().optional().describe('Provider for upscaling the image.'),
65
+ result: z
66
+ .union([z.literal('debug'), robotImageUpscaleInstructionsSchema.shape.result])
67
+ .optional(),
68
+ })
69
+
70
+ export type RobotImageUpscaleInstructions = z.infer<typeof robotImageUpscaleInstructionsSchema>
71
+ export type RobotImageUpscaleInstructionsWithHiddenFields = z.infer<
72
+ typeof robotImageUpscaleInstructionsWithHiddenFieldsSchema
73
+ >
74
+
75
+ export const interpolatableRobotImageUpscaleInstructionsSchema = interpolateRobot(
76
+ robotImageUpscaleInstructionsSchema,
77
+ )
78
+ export type InterpolatableRobotImageUpscaleInstructions =
79
+ InterpolatableRobotImageUpscaleInstructionsInput
80
+
81
+ export type InterpolatableRobotImageUpscaleInstructionsInput = z.input<
82
+ typeof interpolatableRobotImageUpscaleInstructionsSchema
83
+ >
84
+
85
+ export const interpolatableRobotImageUpscaleInstructionsWithHiddenFieldsSchema = interpolateRobot(
86
+ robotImageUpscaleInstructionsWithHiddenFieldsSchema,
87
+ )
88
+ export type InterpolatableRobotImageUpscaleInstructionsWithHiddenFields = z.infer<
89
+ typeof interpolatableRobotImageUpscaleInstructionsWithHiddenFieldsSchema
90
+ >
91
+ export type InterpolatableRobotImageUpscaleInstructionsWithHiddenFieldsInput = z.input<
92
+ typeof interpolatableRobotImageUpscaleInstructionsWithHiddenFieldsSchema
93
+ >
@@ -0,0 +1,123 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import {
5
+ files_per_page,
6
+ interpolateRobot,
7
+ megaBase,
8
+ page_number,
9
+ path,
10
+ recursive,
11
+ return_file_stubs,
12
+ robotBase,
13
+ robotImport,
14
+ } from './_instructions-primitives.ts'
15
+
16
+ export const meta: RobotMetaInput = {
17
+ bytescount: 10,
18
+ discount_factor: 0.1,
19
+ discount_pct: 90,
20
+ example_code: {
21
+ steps: {
22
+ imported: {
23
+ robot: '/mega/import',
24
+ credentials: 'YOUR_MEGA_CREDENTIALS',
25
+ path: 'path/to/files/',
26
+ recursive: true,
27
+ },
28
+ },
29
+ },
30
+ example_code_description:
31
+ 'Import files from the `path/to/files` directory and its subdirectories:',
32
+ has_small_icon: true,
33
+ minimum_charge: 0,
34
+ output_factor: 1,
35
+ override_lvl1: 'File Importing',
36
+ purpose_sentence: 'imports whole directories of files from your MEGA object storage bucket',
37
+ purpose_verb: 'import',
38
+ purpose_word: 'MEGA',
39
+ purpose_words: 'Import files from MEGA',
40
+ requires_credentials: true,
41
+ service_slug: 'file-importing',
42
+ slot_count: 20,
43
+ title: 'Import files from MEGA',
44
+ typical_file_size_mb: 1.2,
45
+ typical_file_type: 'file',
46
+ name: 'MegaImportRobot',
47
+ priceFactor: 6.6666,
48
+ queueSlotCount: 20,
49
+ isAllowedForUrlTransform: true,
50
+ trackOutputFileSize: false,
51
+ isInternal: false,
52
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: true,
53
+ stage: 'ga',
54
+ }
55
+
56
+ export const robotMegaImportInstructionsSchema = robotBase
57
+ .merge(robotImport)
58
+ .merge(megaBase)
59
+ .extend({
60
+ result: z
61
+ .boolean()
62
+ .optional()
63
+ .describe('Whether the results of this Step should be present in the Assembly Status JSON'),
64
+ robot: z.literal('/mega/import'),
65
+ path: path.describe(`
66
+ The path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: \`images/avatar.jpg\`.
67
+
68
+ If it points to a directory, indicated by a trailing slash (\`/\`), then all files that are direct descendants of this directory will be imported. For example: \`images/\`.
69
+
70
+ Directories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the \`recursive\` parameter.
71
+
72
+ If you want to import all files from the root directory, please use \`/\` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with \`/\`, you'll receive an error: \`A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.\`
73
+
74
+ You can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.
75
+ `),
76
+ recursive: recursive.describe(`
77
+ Setting this to \`true\` will enable importing files from subfolders and sub-subfolders, etc. of the given path.
78
+
79
+ Please use the pagination parameters \`page_number\` and \`files_per_page\` wisely here.
80
+ `),
81
+ page_number: page_number.describe(`
82
+ The pagination page number. For now, in order to not break backwards compatibility in non-recursive imports, this only works when recursive is set to \`true\`.
83
+
84
+ When doing big imports, make sure no files are added or removed from other scripts within your path, otherwise you might get weird results with the pagination.
85
+ `),
86
+ files_per_page: files_per_page.describe(`
87
+ The pagination page size. This only works when recursive is \`true\` for now, in order to not break backwards compatibility in non-recursive imports.
88
+ `),
89
+ return_file_stubs,
90
+ })
91
+ .strict()
92
+
93
+ export const robotMegaImportInstructionsWithHiddenFieldsSchema =
94
+ robotMegaImportInstructionsSchema.extend({
95
+ result: z
96
+ .union([z.literal('debug'), robotMegaImportInstructionsSchema.shape.result])
97
+ .optional(),
98
+ })
99
+
100
+ export type RobotMegaImportInstructions = z.infer<typeof robotMegaImportInstructionsSchema>
101
+ export type RobotMegaImportInstructionsWithHiddenFields = z.infer<
102
+ typeof robotMegaImportInstructionsWithHiddenFieldsSchema
103
+ >
104
+
105
+ export const interpolatableRobotMegaImportInstructionsSchema = interpolateRobot(
106
+ robotMegaImportInstructionsSchema,
107
+ )
108
+ export type InterpolatableRobotMegaImportInstructions =
109
+ InterpolatableRobotMegaImportInstructionsInput
110
+
111
+ export type InterpolatableRobotMegaImportInstructionsInput = z.input<
112
+ typeof interpolatableRobotMegaImportInstructionsSchema
113
+ >
114
+
115
+ export const interpolatableRobotMegaImportInstructionsWithHiddenFieldsSchema = interpolateRobot(
116
+ robotMegaImportInstructionsWithHiddenFieldsSchema,
117
+ )
118
+ export type InterpolatableRobotMegaImportInstructionsWithHiddenFields = z.infer<
119
+ typeof interpolatableRobotMegaImportInstructionsWithHiddenFieldsSchema
120
+ >
121
+ export type InterpolatableRobotMegaImportInstructionsWithHiddenFieldsInput = z.input<
122
+ typeof interpolatableRobotMegaImportInstructionsWithHiddenFieldsSchema
123
+ >
@@ -0,0 +1,109 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, megaBase, robotBase, robotUse } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ bytescount: 6,
8
+ discount_factor: 0.15000150001500018,
9
+ discount_pct: 84.99984999849998,
10
+ example_code: {
11
+ steps: {
12
+ exported: {
13
+ robot: '/mega/store',
14
+ use: ':original',
15
+ credentials: 'YOUR_MEGA_CREDENTIALS',
16
+ path: 'my_target_folder/${unique_prefix}/${file.url_name}',
17
+ },
18
+ },
19
+ },
20
+ example_code_description: 'Export uploaded files to `my_target_folder` on MEGA object storage:',
21
+ has_small_icon: true,
22
+ minimum_charge: 0,
23
+ output_factor: 1,
24
+ override_lvl1: 'File Exporting',
25
+ purpose_sentence: 'exports encoding results to MEGA object storage buckets',
26
+ purpose_verb: 'export',
27
+ purpose_word: 'MEGA',
28
+ purpose_words: 'Export files to MEGA',
29
+ service_slug: 'file-exporting',
30
+ slot_count: 10,
31
+ title: 'Export files to MEGA',
32
+ typical_file_size_mb: 1.2,
33
+ typical_file_type: 'file',
34
+ name: 'MegaStoreRobot',
35
+ priceFactor: 6.6666,
36
+ queueSlotCount: 10,
37
+ isAllowedForUrlTransform: true,
38
+ trackOutputFileSize: false,
39
+ isInternal: false,
40
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
41
+ stage: 'ga',
42
+ }
43
+
44
+ export const robotMegaStoreInstructionsSchema = robotBase
45
+ .merge(robotUse)
46
+ .merge(megaBase)
47
+ .extend({
48
+ robot: z.literal('/mega/store').describe(`
49
+ The URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.
50
+ `),
51
+ path: z
52
+ .string()
53
+ .default('${unique_prefix}/${file.url_name}')
54
+ .describe(`
55
+ The path at which the file is to be stored. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables). The path must not be a directory.
56
+ `),
57
+ acl: z
58
+ .enum(['private', 'public-read'])
59
+ .default('public-read')
60
+ .describe(`
61
+ The permissions used for this file.
62
+ `),
63
+ headers: z
64
+ .record(z.string())
65
+ .default({ 'Content-Type': '${file.mime}' })
66
+ .describe(`
67
+ An object containing a list of headers to be set for this file on MEGA object storage, such as \`{ FileURL: "\${file.url_name}" }\`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).
68
+
69
+ Object Metadata can be specified using \`x-amz-meta-*\` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).
70
+ `),
71
+ sign_urls_for: z
72
+ .number()
73
+ .int()
74
+ .min(0)
75
+ .optional()
76
+ .describe(`
77
+ This parameter provides signed URLs in the result JSON (in the \`signed_ssl_url\` property). The number that you set this parameter to is the URL expiry time in seconds. If this parameter is not used, no URL signing is done.
78
+ `),
79
+ })
80
+ .strict()
81
+
82
+ export const robotMegaStoreInstructionsWithHiddenFieldsSchema =
83
+ robotMegaStoreInstructionsSchema.extend({
84
+ result: z.union([z.literal('debug'), robotMegaStoreInstructionsSchema.shape.result]).optional(),
85
+ })
86
+
87
+ export type RobotMegaStoreInstructions = z.infer<typeof robotMegaStoreInstructionsSchema>
88
+ export type RobotMegaStoreInstructionsWithHiddenFields = z.infer<
89
+ typeof robotMegaStoreInstructionsWithHiddenFieldsSchema
90
+ >
91
+
92
+ export const interpolatableRobotMegaStoreInstructionsSchema = interpolateRobot(
93
+ robotMegaStoreInstructionsSchema,
94
+ )
95
+ export type InterpolatableRobotMegaStoreInstructions = InterpolatableRobotMegaStoreInstructionsInput
96
+
97
+ export type InterpolatableRobotMegaStoreInstructionsInput = z.input<
98
+ typeof interpolatableRobotMegaStoreInstructionsSchema
99
+ >
100
+
101
+ export const interpolatableRobotMegaStoreInstructionsWithHiddenFieldsSchema = interpolateRobot(
102
+ robotMegaStoreInstructionsWithHiddenFieldsSchema,
103
+ )
104
+ export type InterpolatableRobotMegaStoreInstructionsWithHiddenFields = z.infer<
105
+ typeof interpolatableRobotMegaStoreInstructionsWithHiddenFieldsSchema
106
+ >
107
+ export type InterpolatableRobotMegaStoreInstructionsWithHiddenFieldsInput = z.input<
108
+ typeof interpolatableRobotMegaStoreInstructionsWithHiddenFieldsSchema
109
+ >
@@ -5,6 +5,14 @@ import { interpolateRobot, robotBase } from './_instructions-primitives.ts'
5
5
  // @ts-expect-error - MetaReadRobot is not ready yet @TODO please supply missing keys
6
6
  export const meta: RobotMetaInput = {
7
7
  name: 'MetaReadRobot',
8
+ example_code: {
9
+ steps: {
10
+ metadata: {
11
+ robot: '/meta/read',
12
+ },
13
+ },
14
+ },
15
+ example_code_description: 'Read metadata from uploaded files:',
8
16
  priceFactor: 0,
9
17
  queueSlotCount: 15,
10
18
  isAllowedForUrlTransform: true,
@@ -5,7 +5,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
5
5
  import { interpolateRobot, robotBase, robotFFmpeg, robotUse } from './_instructions-primitives.ts'
6
6
 
7
7
  export const meta: RobotMetaInput = {
8
- allowed_for_url_transform: true,
9
8
  bytescount: 1,
10
9
  discount_factor: 1,
11
10
  discount_pct: 0,
@@ -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, minioBase, 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,
@@ -6,6 +6,19 @@ import { interpolateRobot, robotBase, robotUse } from './_instructions-primitive
6
6
  // @ts-expect-error - ProgressSimulateRobot is not ready yet @TODO please supply missing keys
7
7
  export const meta: RobotMetaInput = {
8
8
  name: 'ProgressSimulateRobot',
9
+ example_code: {
10
+ steps: {
11
+ simulate: {
12
+ robot: '/progress/simulate',
13
+ use: ':original',
14
+ duration: 10,
15
+ output_files: 3,
16
+ emit_progress: true,
17
+ predict_output: true,
18
+ },
19
+ },
20
+ },
21
+ example_code_description: 'Simulate Step progress and output generation for testing:',
9
22
  priceFactor: 1,
10
23
  queueSlotCount: 20,
11
24
  isAllowedForUrlTransform: false,
@@ -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, s3Base } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 10,
9
8
  discount_factor: 0.1,
10
9
  discount_pct: 90,
@@ -4,10 +4,20 @@ 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: 10,
9
8
  discount_factor: 0.1,
10
9
  discount_pct: 90,
10
+ example_code: {
11
+ steps: {
12
+ evaluate: {
13
+ robot: '/script/run',
14
+ use: ':original',
15
+ script:
16
+ '({ width: file.meta.width, height: file.meta.height, area: file.meta.width * file.meta.height })',
17
+ },
18
+ },
19
+ },
20
+ example_code_description: 'Run JavaScript against uploaded file metadata:',
11
21
  minimum_charge: 0,
12
22
  output_factor: 1,
13
23
  override_lvl1: 'Code Evaluation',
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { interpolateRobot, robotBase, robotImport, sftpBase } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 10,
9
8
  discount_factor: 0.1,
10
9
  discount_pct: 90,