transloadit 4.14.0 → 5.0.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 (618) hide show
  1. package/README.md +38 -1
  2. package/dist/ApiError.d.ts +6 -2
  3. package/dist/ApiError.d.ts.map +1 -1
  4. package/dist/ApiError.js +6 -2
  5. package/dist/ApiError.js.map +1 -1
  6. package/dist/Transloadit.d.ts.map +1 -1
  7. package/dist/Transloadit.js +3 -2
  8. package/dist/Transloadit.js.map +1 -1
  9. package/dist/alphalib/aiMessages.d.ts +33254 -0
  10. package/dist/alphalib/aiMessages.d.ts.map +1 -0
  11. package/dist/alphalib/aiMessages.js +479 -0
  12. package/dist/alphalib/aiMessages.js.map +1 -0
  13. package/dist/alphalib/assembly-linter.d.ts.map +1 -1
  14. package/dist/alphalib/assembly-linter.js +20 -15
  15. package/dist/alphalib/assembly-linter.js.map +1 -1
  16. package/dist/alphalib/englishList.d.ts +3 -0
  17. package/dist/alphalib/englishList.d.ts.map +1 -0
  18. package/dist/alphalib/englishList.js +12 -0
  19. package/dist/alphalib/englishList.js.map +1 -0
  20. package/dist/alphalib/errors.d.ts +16 -0
  21. package/dist/alphalib/errors.d.ts.map +1 -1
  22. package/dist/alphalib/errors.js +124 -13
  23. package/dist/alphalib/errors.js.map +1 -1
  24. package/dist/alphalib/imagemagickDensity.d.ts.map +1 -1
  25. package/dist/alphalib/imagemagickDensity.js +2 -2
  26. package/dist/alphalib/imagemagickDensity.js.map +1 -1
  27. package/dist/alphalib/lib/zodInputSemantics.d.ts +18 -0
  28. package/dist/alphalib/lib/zodInputSemantics.d.ts.map +1 -0
  29. package/dist/alphalib/lib/zodInputSemantics.js +86 -0
  30. package/dist/alphalib/lib/zodInputSemantics.js.map +1 -0
  31. package/dist/alphalib/object.d.ts +42 -2
  32. package/dist/alphalib/object.d.ts.map +1 -1
  33. package/dist/alphalib/object.js +133 -0
  34. package/dist/alphalib/object.js.map +1 -1
  35. package/dist/alphalib/stepParsing.d.ts +1 -0
  36. package/dist/alphalib/stepParsing.d.ts.map +1 -1
  37. package/dist/alphalib/stepParsing.js +9 -1
  38. package/dist/alphalib/stepParsing.js.map +1 -1
  39. package/dist/alphalib/types/apiParameterDescription.d.ts +14 -0
  40. package/dist/alphalib/types/apiParameterDescription.d.ts.map +1 -0
  41. package/dist/alphalib/types/apiParameterDescription.js +20 -0
  42. package/dist/alphalib/types/apiParameterDescription.js.map +1 -0
  43. package/dist/alphalib/types/assembliesGet.d.ts +1 -1
  44. package/dist/alphalib/types/assemblyReplay.d.ts +4 -4
  45. package/dist/alphalib/types/assemblyStatus.d.ts +6718 -64966
  46. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
  47. package/dist/alphalib/types/assemblyStatus.js +68 -55
  48. package/dist/alphalib/types/assemblyStatus.js.map +1 -1
  49. package/dist/alphalib/types/errorReason.d.ts +7 -0
  50. package/dist/alphalib/types/errorReason.d.ts.map +1 -0
  51. package/dist/alphalib/types/errorReason.js +14 -0
  52. package/dist/alphalib/types/errorReason.js.map +1 -0
  53. package/dist/alphalib/types/file.d.ts +7 -0
  54. package/dist/alphalib/types/file.d.ts.map +1 -1
  55. package/dist/alphalib/types/file.js +15 -0
  56. package/dist/alphalib/types/file.js.map +1 -1
  57. package/dist/alphalib/types/fileHash.d.ts +16 -0
  58. package/dist/alphalib/types/fileHash.d.ts.map +1 -0
  59. package/dist/alphalib/types/fileHash.js +10 -0
  60. package/dist/alphalib/types/fileHash.js.map +1 -0
  61. package/dist/alphalib/types/responseErrors/HttpImportRobot.d.ts +23 -0
  62. package/dist/alphalib/types/responseErrors/HttpImportRobot.d.ts.map +1 -0
  63. package/dist/alphalib/types/responseErrors/HttpImportRobot.js +23 -0
  64. package/dist/alphalib/types/responseErrors/HttpImportRobot.js.map +1 -0
  65. package/dist/alphalib/types/robots/_ai-models.d.ts +28 -0
  66. package/dist/alphalib/types/robots/_ai-models.d.ts.map +1 -0
  67. package/dist/alphalib/types/robots/_ai-models.js +80 -0
  68. package/dist/alphalib/types/robots/_ai-models.js.map +1 -0
  69. package/dist/alphalib/types/robots/_index.d.ts +713 -1329
  70. package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
  71. package/dist/alphalib/types/robots/_index.js +4 -0
  72. package/dist/alphalib/types/robots/_index.js.map +1 -1
  73. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +504 -129
  74. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
  75. package/dist/alphalib/types/robots/_instructions-primitives.js +627 -280
  76. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
  77. package/dist/alphalib/types/robots/ai-chat.d.ts +952 -2189
  78. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
  79. package/dist/alphalib/types/robots/ai-chat.js +235 -368
  80. package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
  81. package/dist/alphalib/types/robots/assembly-savejson.d.ts +28 -16
  82. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
  83. package/dist/alphalib/types/robots/assembly-savejson.js +2 -11
  84. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
  85. package/dist/alphalib/types/robots/audio-artwork.d.ts +80 -67
  86. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
  87. package/dist/alphalib/types/robots/audio-artwork.js +9 -38
  88. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
  89. package/dist/alphalib/types/robots/audio-concat.d.ts +94 -81
  90. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
  91. package/dist/alphalib/types/robots/audio-concat.js +11 -25
  92. package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
  93. package/dist/alphalib/types/robots/audio-encode.d.ts +80 -67
  94. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
  95. package/dist/alphalib/types/robots/audio-encode.js +13 -43
  96. package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
  97. package/dist/alphalib/types/robots/audio-loop.d.ts +80 -67
  98. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
  99. package/dist/alphalib/types/robots/audio-loop.js +12 -40
  100. package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
  101. package/dist/alphalib/types/robots/audio-merge.d.ts +94 -81
  102. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
  103. package/dist/alphalib/types/robots/audio-merge.js +11 -25
  104. package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
  105. package/dist/alphalib/types/robots/audio-split.d.ts +80 -67
  106. package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -1
  107. package/dist/alphalib/types/robots/audio-split.js +15 -45
  108. package/dist/alphalib/types/robots/audio-split.js.map +1 -1
  109. package/dist/alphalib/types/robots/audio-waveform.d.ts +120 -107
  110. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
  111. package/dist/alphalib/types/robots/audio-waveform.js +15 -39
  112. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
  113. package/dist/alphalib/types/robots/azure-import.d.ts +48 -35
  114. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
  115. package/dist/alphalib/types/robots/azure-import.js +5 -35
  116. package/dist/alphalib/types/robots/azure-import.js.map +1 -1
  117. package/dist/alphalib/types/robots/azure-store.d.ts +87 -71
  118. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
  119. package/dist/alphalib/types/robots/azure-store.js +11 -50
  120. package/dist/alphalib/types/robots/azure-store.js.map +1 -1
  121. package/dist/alphalib/types/robots/backblaze-import.d.ts +48 -35
  122. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
  123. package/dist/alphalib/types/robots/backblaze-import.js +6 -39
  124. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
  125. package/dist/alphalib/types/robots/backblaze-store.d.ts +80 -67
  126. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
  127. package/dist/alphalib/types/robots/backblaze-store.js +8 -44
  128. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
  129. package/dist/alphalib/types/robots/box-import.d.ts +44 -27
  130. package/dist/alphalib/types/robots/box-import.d.ts.map +1 -1
  131. package/dist/alphalib/types/robots/box-import.js +7 -33
  132. package/dist/alphalib/types/robots/box-import.js.map +1 -1
  133. package/dist/alphalib/types/robots/box-store.d.ts +85 -68
  134. package/dist/alphalib/types/robots/box-store.d.ts.map +1 -1
  135. package/dist/alphalib/types/robots/box-store.js +8 -40
  136. package/dist/alphalib/types/robots/box-store.js.map +1 -1
  137. package/dist/alphalib/types/robots/cloudfiles-import.d.ts +48 -35
  138. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
  139. package/dist/alphalib/types/robots/cloudfiles-import.js +8 -45
  140. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
  141. package/dist/alphalib/types/robots/cloudfiles-store.d.ts +80 -67
  142. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
  143. package/dist/alphalib/types/robots/cloudfiles-store.js +5 -36
  144. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
  145. package/dist/alphalib/types/robots/cloudflare-import.d.ts +48 -35
  146. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
  147. package/dist/alphalib/types/robots/cloudflare-import.js +10 -57
  148. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
  149. package/dist/alphalib/types/robots/cloudflare-store.d.ts +80 -67
  150. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
  151. package/dist/alphalib/types/robots/cloudflare-store.js +11 -54
  152. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
  153. package/dist/alphalib/types/robots/digitalocean-import.d.ts +56 -43
  154. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
  155. package/dist/alphalib/types/robots/digitalocean-import.js +8 -49
  156. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
  157. package/dist/alphalib/types/robots/digitalocean-store.d.ts +88 -75
  158. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
  159. package/dist/alphalib/types/robots/digitalocean-store.js +8 -56
  160. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
  161. package/dist/alphalib/types/robots/document-autorotate.d.ts +80 -67
  162. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
  163. package/dist/alphalib/types/robots/document-autorotate.js +5 -32
  164. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
  165. package/dist/alphalib/types/robots/document-convert.d.ts +84 -71
  166. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
  167. package/dist/alphalib/types/robots/document-convert.js +7 -33
  168. package/dist/alphalib/types/robots/document-convert.js.map +1 -1
  169. package/dist/alphalib/types/robots/document-extract.d.ts +80 -67
  170. package/dist/alphalib/types/robots/document-extract.d.ts.map +1 -1
  171. package/dist/alphalib/types/robots/document-extract.js +10 -36
  172. package/dist/alphalib/types/robots/document-extract.js.map +1 -1
  173. package/dist/alphalib/types/robots/document-merge.d.ts +80 -67
  174. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
  175. package/dist/alphalib/types/robots/document-merge.js +4 -25
  176. package/dist/alphalib/types/robots/document-merge.js.map +1 -1
  177. package/dist/alphalib/types/robots/document-ocr.d.ts +80 -67
  178. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
  179. package/dist/alphalib/types/robots/document-ocr.js +10 -47
  180. package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
  181. package/dist/alphalib/types/robots/document-optimize.d.ts +80 -67
  182. package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
  183. package/dist/alphalib/types/robots/document-optimize.js +7 -31
  184. package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
  185. package/dist/alphalib/types/robots/document-split.d.ts +80 -67
  186. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
  187. package/dist/alphalib/types/robots/document-split.js +7 -34
  188. package/dist/alphalib/types/robots/document-split.js.map +1 -1
  189. package/dist/alphalib/types/robots/document-thumbs.d.ts +120 -101
  190. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
  191. package/dist/alphalib/types/robots/document-thumbs.js +24 -31
  192. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
  193. package/dist/alphalib/types/robots/dropbox-import.d.ts +40 -27
  194. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
  195. package/dist/alphalib/types/robots/dropbox-import.js +5 -35
  196. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
  197. package/dist/alphalib/types/robots/dropbox-store.d.ts +84 -68
  198. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
  199. package/dist/alphalib/types/robots/dropbox-store.js +8 -42
  200. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
  201. package/dist/alphalib/types/robots/edgly-deliver.d.ts +32 -19
  202. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
  203. package/dist/alphalib/types/robots/edgly-deliver.js +4 -24
  204. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
  205. package/dist/alphalib/types/robots/file-compress.d.ts +80 -67
  206. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
  207. package/dist/alphalib/types/robots/file-compress.js +4 -20
  208. package/dist/alphalib/types/robots/file-compress.js.map +1 -1
  209. package/dist/alphalib/types/robots/file-decompress.d.ts +96 -83
  210. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
  211. package/dist/alphalib/types/robots/file-decompress.js +10 -41
  212. package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
  213. package/dist/alphalib/types/robots/file-filter.d.ts +99 -87
  214. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
  215. package/dist/alphalib/types/robots/file-filter.js +11 -40
  216. package/dist/alphalib/types/robots/file-filter.js.map +1 -1
  217. package/dist/alphalib/types/robots/file-hash.d.ts +84 -71
  218. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
  219. package/dist/alphalib/types/robots/file-hash.js +12 -43
  220. package/dist/alphalib/types/robots/file-hash.js.map +1 -1
  221. package/dist/alphalib/types/robots/file-preview.d.ts +113 -100
  222. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
  223. package/dist/alphalib/types/robots/file-preview.js +14 -39
  224. package/dist/alphalib/types/robots/file-preview.js.map +1 -1
  225. package/dist/alphalib/types/robots/file-read.d.ts +80 -67
  226. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
  227. package/dist/alphalib/types/robots/file-read.js +5 -26
  228. package/dist/alphalib/types/robots/file-read.js.map +1 -1
  229. package/dist/alphalib/types/robots/file-serve.d.ts +81 -68
  230. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
  231. package/dist/alphalib/types/robots/file-serve.js +4 -21
  232. package/dist/alphalib/types/robots/file-serve.js.map +1 -1
  233. package/dist/alphalib/types/robots/file-verify.d.ts +88 -75
  234. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
  235. package/dist/alphalib/types/robots/file-verify.js +11 -41
  236. package/dist/alphalib/types/robots/file-verify.js.map +1 -1
  237. package/dist/alphalib/types/robots/file-virusscan.d.ts +83 -67
  238. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
  239. package/dist/alphalib/types/robots/file-virusscan.js +16 -42
  240. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
  241. package/dist/alphalib/types/robots/file-watermark.d.ts +81 -67
  242. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
  243. package/dist/alphalib/types/robots/file-watermark.js +10 -29
  244. package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
  245. package/dist/alphalib/types/robots/ftp-import.d.ts +40 -27
  246. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
  247. package/dist/alphalib/types/robots/ftp-import.js +5 -33
  248. package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
  249. package/dist/alphalib/types/robots/ftp-store.d.ts +85 -67
  250. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
  251. package/dist/alphalib/types/robots/ftp-store.js +7 -34
  252. package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
  253. package/dist/alphalib/types/robots/google-import.d.ts +48 -35
  254. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
  255. package/dist/alphalib/types/robots/google-import.js +10 -43
  256. package/dist/alphalib/types/robots/google-import.js.map +1 -1
  257. package/dist/alphalib/types/robots/google-store.d.ts +80 -67
  258. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
  259. package/dist/alphalib/types/robots/google-store.js +10 -41
  260. package/dist/alphalib/types/robots/google-store.js.map +1 -1
  261. package/dist/alphalib/types/robots/html-convert.d.ts +107 -89
  262. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
  263. package/dist/alphalib/types/robots/html-convert.js +6 -22
  264. package/dist/alphalib/types/robots/html-convert.js.map +1 -1
  265. package/dist/alphalib/types/robots/http-import.d.ts +76 -63
  266. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
  267. package/dist/alphalib/types/robots/http-import.js +14 -19
  268. package/dist/alphalib/types/robots/http-import.js.map +1 -1
  269. package/dist/alphalib/types/robots/http-request.d.ts +538 -0
  270. package/dist/alphalib/types/robots/http-request.d.ts.map +1 -0
  271. package/dist/alphalib/types/robots/http-request.js +162 -0
  272. package/dist/alphalib/types/robots/http-request.js.map +1 -0
  273. package/dist/alphalib/types/robots/image-bgremove.d.ts +80 -67
  274. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
  275. package/dist/alphalib/types/robots/image-bgremove.js +6 -33
  276. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
  277. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +92 -79
  278. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -1
  279. package/dist/alphalib/types/robots/image-copyrightdetect.js +9 -33
  280. package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -1
  281. package/dist/alphalib/types/robots/image-describe.d.ts +80 -67
  282. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
  283. package/dist/alphalib/types/robots/image-describe.js +8 -37
  284. package/dist/alphalib/types/robots/image-describe.js.map +1 -1
  285. package/dist/alphalib/types/robots/image-enhance.d.ts +80 -67
  286. package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -1
  287. package/dist/alphalib/types/robots/image-enhance.js +7 -31
  288. package/dist/alphalib/types/robots/image-enhance.js.map +1 -1
  289. package/dist/alphalib/types/robots/image-facedetect.d.ts +88 -75
  290. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
  291. package/dist/alphalib/types/robots/image-facedetect.js +16 -44
  292. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
  293. package/dist/alphalib/types/robots/image-generate.d.ts +96 -86
  294. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
  295. package/dist/alphalib/types/robots/image-generate.js +17 -22
  296. package/dist/alphalib/types/robots/image-generate.js.map +1 -1
  297. package/dist/alphalib/types/robots/image-merge.d.ts +96 -83
  298. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
  299. package/dist/alphalib/types/robots/image-merge.js +9 -40
  300. package/dist/alphalib/types/robots/image-merge.js.map +1 -1
  301. package/dist/alphalib/types/robots/image-ocr.d.ts +80 -67
  302. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
  303. package/dist/alphalib/types/robots/image-ocr.js +11 -47
  304. package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
  305. package/dist/alphalib/types/robots/image-optimize.d.ts +88 -75
  306. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
  307. package/dist/alphalib/types/robots/image-optimize.js +6 -32
  308. package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
  309. package/dist/alphalib/types/robots/image-resize.d.ts +217 -112
  310. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
  311. package/dist/alphalib/types/robots/image-resize.js +15 -42
  312. package/dist/alphalib/types/robots/image-resize.js.map +1 -1
  313. package/dist/alphalib/types/robots/image-upscale.d.ts +97 -81
  314. package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -1
  315. package/dist/alphalib/types/robots/image-upscale.js +23 -42
  316. package/dist/alphalib/types/robots/image-upscale.js.map +1 -1
  317. package/dist/alphalib/types/robots/mega-import.d.ts +48 -35
  318. package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -1
  319. package/dist/alphalib/types/robots/mega-import.js +12 -59
  320. package/dist/alphalib/types/robots/mega-import.js.map +1 -1
  321. package/dist/alphalib/types/robots/mega-store.d.ts +80 -67
  322. package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -1
  323. package/dist/alphalib/types/robots/mega-store.js +14 -60
  324. package/dist/alphalib/types/robots/mega-store.js.map +1 -1
  325. package/dist/alphalib/types/robots/meta-read.d.ts +30 -16
  326. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
  327. package/dist/alphalib/types/robots/meta-read.js +4 -20
  328. package/dist/alphalib/types/robots/meta-read.js.map +1 -1
  329. package/dist/alphalib/types/robots/meta-write.d.ts +80 -67
  330. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
  331. package/dist/alphalib/types/robots/meta-write.js +9 -32
  332. package/dist/alphalib/types/robots/meta-write.js.map +1 -1
  333. package/dist/alphalib/types/robots/minio-import.d.ts +48 -35
  334. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
  335. package/dist/alphalib/types/robots/minio-import.js +9 -60
  336. package/dist/alphalib/types/robots/minio-import.js.map +1 -1
  337. package/dist/alphalib/types/robots/minio-store.d.ts +80 -67
  338. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
  339. package/dist/alphalib/types/robots/minio-store.js +9 -50
  340. package/dist/alphalib/types/robots/minio-store.js.map +1 -1
  341. package/dist/alphalib/types/robots/progress-simulate.d.ts +34 -28
  342. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
  343. package/dist/alphalib/types/robots/progress-simulate.js +8 -28
  344. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
  345. package/dist/alphalib/types/robots/s3-import.d.ts +48 -35
  346. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
  347. package/dist/alphalib/types/robots/s3-import.js +7 -38
  348. package/dist/alphalib/types/robots/s3-import.js.map +1 -1
  349. package/dist/alphalib/types/robots/s3-store.d.ts +84 -68
  350. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
  351. package/dist/alphalib/types/robots/s3-store.js +14 -44
  352. package/dist/alphalib/types/robots/s3-store.js.map +1 -1
  353. package/dist/alphalib/types/robots/script-run.d.ts +83 -67
  354. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
  355. package/dist/alphalib/types/robots/script-run.js +9 -27
  356. package/dist/alphalib/types/robots/script-run.js.map +1 -1
  357. package/dist/alphalib/types/robots/sftp-import.d.ts +51 -35
  358. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
  359. package/dist/alphalib/types/robots/sftp-import.js +7 -36
  360. package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
  361. package/dist/alphalib/types/robots/sftp-store.d.ts +83 -67
  362. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
  363. package/dist/alphalib/types/robots/sftp-store.js +9 -41
  364. package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
  365. package/dist/alphalib/types/robots/speech-transcribe.d.ts +102 -85
  366. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
  367. package/dist/alphalib/types/robots/speech-transcribe.js +23 -44
  368. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
  369. package/dist/alphalib/types/robots/supabase-import.d.ts +48 -35
  370. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
  371. package/dist/alphalib/types/robots/supabase-import.js +12 -59
  372. package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
  373. package/dist/alphalib/types/robots/supabase-store.d.ts +80 -79
  374. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
  375. package/dist/alphalib/types/robots/supabase-store.js +12 -56
  376. package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
  377. package/dist/alphalib/types/robots/swift-import.d.ts +48 -47
  378. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
  379. package/dist/alphalib/types/robots/swift-import.js +14 -55
  380. package/dist/alphalib/types/robots/swift-import.js.map +1 -1
  381. package/dist/alphalib/types/robots/swift-store.d.ts +80 -79
  382. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
  383. package/dist/alphalib/types/robots/swift-store.js +14 -62
  384. package/dist/alphalib/types/robots/swift-store.js.map +1 -1
  385. package/dist/alphalib/types/robots/text-speak.d.ts +80 -67
  386. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
  387. package/dist/alphalib/types/robots/text-speak.js +11 -37
  388. package/dist/alphalib/types/robots/text-speak.js.map +1 -1
  389. package/dist/alphalib/types/robots/text-translate.d.ts +92 -79
  390. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
  391. package/dist/alphalib/types/robots/text-translate.js +9 -36
  392. package/dist/alphalib/types/robots/text-translate.js.map +1 -1
  393. package/dist/alphalib/types/robots/tigris-import.d.ts +48 -35
  394. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
  395. package/dist/alphalib/types/robots/tigris-import.js +9 -60
  396. package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
  397. package/dist/alphalib/types/robots/tigris-store.d.ts +80 -67
  398. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
  399. package/dist/alphalib/types/robots/tigris-store.js +7 -48
  400. package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
  401. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts +32 -19
  402. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
  403. package/dist/alphalib/types/robots/tlcdn-deliver.js +4 -25
  404. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
  405. package/dist/alphalib/types/robots/transloadit-import.d.ts +58 -45
  406. package/dist/alphalib/types/robots/transloadit-import.d.ts.map +1 -1
  407. package/dist/alphalib/types/robots/transloadit-import.js +17 -21
  408. package/dist/alphalib/types/robots/transloadit-import.js.map +1 -1
  409. package/dist/alphalib/types/robots/transloadit-store.d.ts +70 -57
  410. package/dist/alphalib/types/robots/transloadit-store.d.ts.map +1 -1
  411. package/dist/alphalib/types/robots/transloadit-store.js +14 -6
  412. package/dist/alphalib/types/robots/transloadit-store.js.map +1 -1
  413. package/dist/alphalib/types/robots/tus-store.d.ts +84 -71
  414. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
  415. package/dist/alphalib/types/robots/tus-store.js +8 -37
  416. package/dist/alphalib/types/robots/tus-store.js.map +1 -1
  417. package/dist/alphalib/types/robots/upload-handle.d.ts +32 -19
  418. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
  419. package/dist/alphalib/types/robots/upload-handle.js +4 -19
  420. package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
  421. package/dist/alphalib/types/robots/video-adaptive.d.ts +112 -99
  422. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
  423. package/dist/alphalib/types/robots/video-adaptive.js +4 -26
  424. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
  425. package/dist/alphalib/types/robots/video-artwork.d.ts +80 -67
  426. package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -1
  427. package/dist/alphalib/types/robots/video-artwork.js +7 -32
  428. package/dist/alphalib/types/robots/video-artwork.js.map +1 -1
  429. package/dist/alphalib/types/robots/video-concat.d.ts +104 -91
  430. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
  431. package/dist/alphalib/types/robots/video-concat.js +6 -27
  432. package/dist/alphalib/types/robots/video-concat.js.map +1 -1
  433. package/dist/alphalib/types/robots/video-encode.d.ts +121 -103
  434. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
  435. package/dist/alphalib/types/robots/video-encode.js +13 -38
  436. package/dist/alphalib/types/robots/video-encode.js.map +1 -1
  437. package/dist/alphalib/types/robots/video-generate.d.ts +96 -86
  438. package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -1
  439. package/dist/alphalib/types/robots/video-generate.js +11 -18
  440. package/dist/alphalib/types/robots/video-generate.js.map +1 -1
  441. package/dist/alphalib/types/robots/video-merge.d.ts +135 -119
  442. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
  443. package/dist/alphalib/types/robots/video-merge.js +12 -32
  444. package/dist/alphalib/types/robots/video-merge.js.map +1 -1
  445. package/dist/alphalib/types/robots/video-ondemand.d.ts +156 -139
  446. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
  447. package/dist/alphalib/types/robots/video-ondemand.js +11 -27
  448. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
  449. package/dist/alphalib/types/robots/video-split.d.ts +104 -91
  450. package/dist/alphalib/types/robots/video-split.d.ts.map +1 -1
  451. package/dist/alphalib/types/robots/video-split.js +11 -39
  452. package/dist/alphalib/types/robots/video-split.js.map +1 -1
  453. package/dist/alphalib/types/robots/video-subtitle.d.ts +104 -91
  454. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
  455. package/dist/alphalib/types/robots/video-subtitle.js +7 -30
  456. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
  457. package/dist/alphalib/types/robots/video-thumbs.d.ts +112 -95
  458. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
  459. package/dist/alphalib/types/robots/video-thumbs.js +46 -53
  460. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
  461. package/dist/alphalib/types/robots/vimeo-import.d.ts +30 -17
  462. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
  463. package/dist/alphalib/types/robots/vimeo-import.js +7 -17
  464. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
  465. package/dist/alphalib/types/robots/vimeo-store.d.ts +83 -67
  466. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
  467. package/dist/alphalib/types/robots/vimeo-store.js +11 -37
  468. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
  469. package/dist/alphalib/types/robots/wasabi-import.d.ts +48 -35
  470. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
  471. package/dist/alphalib/types/robots/wasabi-import.js +9 -56
  472. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
  473. package/dist/alphalib/types/robots/wasabi-store.d.ts +80 -67
  474. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
  475. package/dist/alphalib/types/robots/wasabi-store.js +10 -52
  476. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
  477. package/dist/alphalib/types/robots/youtube-store.d.ts +98 -85
  478. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
  479. package/dist/alphalib/types/robots/youtube-store.js +42 -63
  480. package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
  481. package/dist/alphalib/types/stackVersions.d.ts +40 -1
  482. package/dist/alphalib/types/stackVersions.d.ts.map +1 -1
  483. package/dist/alphalib/types/stackVersions.js +25 -3
  484. package/dist/alphalib/types/stackVersions.js.map +1 -1
  485. package/dist/alphalib/types/storageAsset.d.ts +28 -22
  486. package/dist/alphalib/types/storageAsset.d.ts.map +1 -1
  487. package/dist/alphalib/types/storageAsset.js +30 -12
  488. package/dist/alphalib/types/storageAsset.js.map +1 -1
  489. package/dist/alphalib/types/template.d.ts +16 -16
  490. package/dist/alphalib/types/templateCredential.d.ts +2 -2
  491. package/dist/alphalib/types/utility.d.ts +22 -0
  492. package/dist/alphalib/types/utility.d.ts.map +1 -0
  493. package/dist/alphalib/types/utility.js +2 -0
  494. package/dist/alphalib/types/utility.js.map +1 -0
  495. package/package.json +1 -2
  496. package/src/ApiError.ts +11 -4
  497. package/src/Transloadit.ts +6 -3
  498. package/src/alphalib/aiMessages.ts +554 -0
  499. package/src/alphalib/assembly-linter.ts +9 -2
  500. package/src/alphalib/englishList.ts +11 -0
  501. package/src/alphalib/errors.ts +159 -13
  502. package/src/alphalib/imagemagickDensity.ts +2 -1
  503. package/src/alphalib/lib/zodInputSemantics.ts +114 -0
  504. package/src/alphalib/object.ts +178 -3
  505. package/src/alphalib/stepParsing.ts +10 -2
  506. package/src/alphalib/types/apiParameterDescription.ts +41 -0
  507. package/src/alphalib/types/assemblyStatus.ts +115 -83
  508. package/src/alphalib/types/errorReason.ts +14 -0
  509. package/src/alphalib/types/file.ts +18 -0
  510. package/src/alphalib/types/fileHash.ts +10 -0
  511. package/src/alphalib/types/responseErrors/HttpImportRobot.ts +22 -0
  512. package/src/alphalib/types/robots/_ai-models.ts +91 -0
  513. package/src/alphalib/types/robots/_index.ts +14 -0
  514. package/src/alphalib/types/robots/_instructions-primitives.ts +839 -308
  515. package/src/alphalib/types/robots/ai-chat.ts +358 -460
  516. package/src/alphalib/types/robots/assembly-savejson.ts +2 -11
  517. package/src/alphalib/types/robots/audio-artwork.ts +35 -61
  518. package/src/alphalib/types/robots/audio-concat.ts +17 -25
  519. package/src/alphalib/types/robots/audio-encode.ts +35 -65
  520. package/src/alphalib/types/robots/audio-loop.ts +34 -61
  521. package/src/alphalib/types/robots/audio-merge.ts +17 -25
  522. package/src/alphalib/types/robots/audio-split.ts +37 -67
  523. package/src/alphalib/types/robots/audio-waveform.ts +42 -65
  524. package/src/alphalib/types/robots/azure-import.ts +26 -57
  525. package/src/alphalib/types/robots/azure-store.ts +48 -72
  526. package/src/alphalib/types/robots/backblaze-import.ts +30 -63
  527. package/src/alphalib/types/robots/backblaze-store.ts +37 -66
  528. package/src/alphalib/types/robots/box-import.ts +32 -55
  529. package/src/alphalib/types/robots/box-store.ts +40 -63
  530. package/src/alphalib/types/robots/cloudfiles-import.ts +34 -70
  531. package/src/alphalib/types/robots/cloudfiles-store.ts +28 -59
  532. package/src/alphalib/types/robots/cloudflare-import.ts +37 -83
  533. package/src/alphalib/types/robots/cloudflare-store.ts +37 -77
  534. package/src/alphalib/types/robots/digitalocean-import.ts +35 -75
  535. package/src/alphalib/types/robots/digitalocean-store.ts +35 -79
  536. package/src/alphalib/types/robots/document-autorotate.ts +36 -58
  537. package/src/alphalib/types/robots/document-convert.ts +37 -59
  538. package/src/alphalib/types/robots/document-extract.ts +45 -62
  539. package/src/alphalib/types/robots/document-merge.ts +25 -47
  540. package/src/alphalib/types/robots/document-ocr.ts +32 -70
  541. package/src/alphalib/types/robots/document-optimize.ts +38 -57
  542. package/src/alphalib/types/robots/document-split.ts +33 -56
  543. package/src/alphalib/types/robots/document-thumbs.ts +66 -67
  544. package/src/alphalib/types/robots/dropbox-import.ts +27 -57
  545. package/src/alphalib/types/robots/dropbox-store.ts +39 -65
  546. package/src/alphalib/types/robots/edgly-deliver.ts +26 -49
  547. package/src/alphalib/types/robots/file-compress.ts +31 -45
  548. package/src/alphalib/types/robots/file-decompress.ts +41 -68
  549. package/src/alphalib/types/robots/file-filter.ts +36 -65
  550. package/src/alphalib/types/robots/file-hash.ts +37 -64
  551. package/src/alphalib/types/robots/file-preview.ts +39 -65
  552. package/src/alphalib/types/robots/file-read.ts +33 -50
  553. package/src/alphalib/types/robots/file-serve.ts +32 -46
  554. package/src/alphalib/types/robots/file-verify.ts +37 -63
  555. package/src/alphalib/types/robots/file-virusscan.ts +49 -67
  556. package/src/alphalib/types/robots/file-watermark.ts +35 -54
  557. package/src/alphalib/types/robots/ftp-import.ts +26 -54
  558. package/src/alphalib/types/robots/ftp-store.ts +44 -63
  559. package/src/alphalib/types/robots/google-import.ts +32 -66
  560. package/src/alphalib/types/robots/google-store.ts +37 -63
  561. package/src/alphalib/types/robots/html-convert.ts +38 -49
  562. package/src/alphalib/types/robots/http-import.ts +21 -19
  563. package/src/alphalib/types/robots/http-request.ts +196 -0
  564. package/src/alphalib/types/robots/image-bgremove.ts +28 -55
  565. package/src/alphalib/types/robots/image-copyrightdetect.ts +38 -56
  566. package/src/alphalib/types/robots/image-describe.ts +31 -60
  567. package/src/alphalib/types/robots/image-enhance.ts +30 -56
  568. package/src/alphalib/types/robots/image-facedetect.ts +43 -71
  569. package/src/alphalib/types/robots/image-generate.ts +29 -22
  570. package/src/alphalib/types/robots/image-merge.ts +34 -65
  571. package/src/alphalib/types/robots/image-ocr.ts +33 -69
  572. package/src/alphalib/types/robots/image-optimize.ts +28 -54
  573. package/src/alphalib/types/robots/image-resize.ts +72 -96
  574. package/src/alphalib/types/robots/image-upscale.ts +52 -64
  575. package/src/alphalib/types/robots/mega-import.ts +36 -84
  576. package/src/alphalib/types/robots/mega-store.ts +44 -81
  577. package/src/alphalib/types/robots/meta-read.ts +21 -36
  578. package/src/alphalib/types/robots/meta-write.ts +35 -53
  579. package/src/alphalib/types/robots/minio-import.ts +34 -86
  580. package/src/alphalib/types/robots/minio-store.ts +37 -72
  581. package/src/alphalib/types/robots/progress-simulate.ts +14 -28
  582. package/src/alphalib/types/robots/s3-import.ts +32 -63
  583. package/src/alphalib/types/robots/s3-store.ts +53 -74
  584. package/src/alphalib/types/robots/script-run.ts +44 -55
  585. package/src/alphalib/types/robots/sftp-import.ts +34 -61
  586. package/src/alphalib/types/robots/sftp-store.ts +42 -65
  587. package/src/alphalib/types/robots/speech-transcribe.ts +53 -71
  588. package/src/alphalib/types/robots/supabase-import.ts +37 -84
  589. package/src/alphalib/types/robots/supabase-store.ts +41 -78
  590. package/src/alphalib/types/robots/swift-import.ts +38 -80
  591. package/src/alphalib/types/robots/swift-store.ts +44 -84
  592. package/src/alphalib/types/robots/text-speak.ts +36 -62
  593. package/src/alphalib/types/robots/text-translate.ts +35 -62
  594. package/src/alphalib/types/robots/tigris-import.ts +34 -86
  595. package/src/alphalib/types/robots/tigris-store.ts +35 -70
  596. package/src/alphalib/types/robots/tlcdn-deliver.ts +23 -47
  597. package/src/alphalib/types/robots/transloadit-import.ts +24 -29
  598. package/src/alphalib/types/robots/transloadit-store.ts +20 -7
  599. package/src/alphalib/types/robots/tus-store.ts +34 -58
  600. package/src/alphalib/types/robots/upload-handle.ts +23 -41
  601. package/src/alphalib/types/robots/video-adaptive.ts +28 -51
  602. package/src/alphalib/types/robots/video-artwork.ts +28 -54
  603. package/src/alphalib/types/robots/video-concat.ts +29 -52
  604. package/src/alphalib/types/robots/video-encode.ts +39 -62
  605. package/src/alphalib/types/robots/video-generate.ts +20 -18
  606. package/src/alphalib/types/robots/video-merge.ts +36 -55
  607. package/src/alphalib/types/robots/video-ondemand.ts +48 -62
  608. package/src/alphalib/types/robots/video-split.ts +32 -61
  609. package/src/alphalib/types/robots/video-subtitle.ts +30 -52
  610. package/src/alphalib/types/robots/video-thumbs.ts +74 -78
  611. package/src/alphalib/types/robots/vimeo-import.ts +12 -17
  612. package/src/alphalib/types/robots/vimeo-store.ts +46 -65
  613. package/src/alphalib/types/robots/wasabi-import.ts +33 -81
  614. package/src/alphalib/types/robots/wasabi-store.ts +38 -74
  615. package/src/alphalib/types/robots/youtube-store.ts +81 -91
  616. package/src/alphalib/types/stackVersions.ts +26 -3
  617. package/src/alphalib/types/storageAsset.ts +84 -36
  618. package/src/alphalib/types/utility.ts +52 -0
@@ -1,47 +1,37 @@
1
- import type { RobotMetaInput } from './_instructions-primitives.ts'
1
+ import type {
2
+ RobotDefinition,
3
+ RobotMetaInput,
4
+ RobotSchemaVariantTypes,
5
+ } from './_instructions-primitives.ts'
2
6
 
3
7
  import { z } from 'zod'
4
8
 
5
- import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
9
+ import {
10
+ createProcessingExample,
11
+ defineRobot,
12
+ robotBase,
13
+ robotFileFilteringMeta,
14
+ robotParameterDocs,
15
+ robotUse,
16
+ } from './_instructions-primitives.ts'
6
17
 
7
18
  export const meta: RobotMetaInput = {
8
- bytescount: 4,
19
+ ...robotFileFilteringMeta,
9
20
  description:
10
21
  '/file/verify is a simple Robot that helps ensure that the files you upload are of the type you initially intended. This is especially useful when handling user-generated content, where you may not want to run certain Steps in your Template if the user hasn’t uploaded a file of the correct type. Another use case for /file/verify is when a user uploads a ZIP file, but we find that it has a few damaged files inside when we extract it. Perhaps you don’t want to error out, but only send the good files to a next processing step. With /file/verify, you can do exactly that (assuming the default of `error_on_decline`: `true`).',
11
- discount_factor: 0.25,
12
- discount_pct: 75,
13
- example_code: {
14
- steps: {
15
- scanned: {
16
- robot: '/file/verify',
17
- use: ':original',
18
- error_on_decline: true,
19
- error_msg: 'At least one of the uploaded files was not the desired type',
20
- verify_to_be: 'image',
21
- },
22
- },
23
- },
22
+ example_code: createProcessingExample('scanned', '/file/verify', {
23
+ error_on_decline: true,
24
+ error_msg: 'At least one of the uploaded files was not the desired type',
25
+ verify_to_be: 'image',
26
+ }),
24
27
  example_code_description: 'Scan the uploaded files and throw an error if they are not images:',
25
- minimum_charge: 0,
26
- output_factor: 1,
27
- override_lvl1: 'File Filtering',
28
28
  purpose_sentence: 'verifies your files are the type that you want',
29
29
  purpose_verb: 'verify',
30
30
  purpose_word: 'verify the file type',
31
31
  purpose_words: 'Verify the file type',
32
- service_slug: 'file-filtering',
33
- slot_count: 10,
34
32
  title: 'Verify the file type',
35
- typical_file_size_mb: 1.2,
36
- typical_file_type: 'file',
37
33
  name: 'FileVerifyRobot',
38
34
  priceFactor: 4,
39
- queueSlotCount: 10,
40
- isAllowedForUrlTransform: true,
41
- trackOutputFileSize: true,
42
- isInternal: false,
43
- removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
44
- stage: 'ga',
45
35
  }
46
36
 
47
37
  export const robotFileVerifyInstructionsSchema = robotBase
@@ -51,15 +41,11 @@ export const robotFileVerifyInstructionsSchema = robotBase
51
41
  error_on_decline: z
52
42
  .boolean()
53
43
  .default(false)
54
- .describe(`
55
- If this is set to \`true\` and one or more files are declined, the Assembly will be stopped and marked with an error.
56
- `),
44
+ .describe(robotParameterDocs.error_on_decline.description),
57
45
  error_msg: z
58
46
  .string()
59
47
  .default('One of your files was declined')
60
- .describe(`
61
- The error message shown to your users (such as by Uppy) when a file is declined and \`error_on_decline\` is set to \`true\`.
62
- `),
48
+ .describe(robotParameterDocs.error_msg.description),
63
49
  repair_pdf: z
64
50
  .boolean()
65
51
  .default(false)
@@ -75,34 +61,22 @@ The type that you want to match against to ensure your file is of this type. For
75
61
  })
76
62
  .strict()
77
63
 
78
- export const robotFileVerifyInstructionsWithHiddenFieldsSchema =
79
- robotFileVerifyInstructionsSchema.extend({
80
- result: z
81
- .union([z.literal('debug'), robotFileVerifyInstructionsSchema.shape.result])
82
- .optional(),
83
- })
84
-
85
- export type RobotFileVerifyInstructions = z.infer<typeof robotFileVerifyInstructionsSchema>
86
- export type RobotFileVerifyInstructionsWithHiddenFields = z.infer<
87
- typeof robotFileVerifyInstructionsWithHiddenFieldsSchema
88
- >
64
+ export const robotDefinition: RobotDefinition<typeof robotFileVerifyInstructionsSchema.shape> =
65
+ defineRobot(meta, robotFileVerifyInstructionsSchema)
89
66
 
90
- export const interpolatableRobotFileVerifyInstructionsSchema = interpolateRobot(
91
- robotFileVerifyInstructionsSchema,
92
- )
93
- export type InterpolatableRobotFileVerifyInstructions =
94
- InterpolatableRobotFileVerifyInstructionsInput
67
+ export const {
68
+ withHiddenFields: robotFileVerifyInstructionsWithHiddenFieldsSchema,
69
+ interpolatable: interpolatableRobotFileVerifyInstructionsSchema,
70
+ interpolatableWithHiddenFields: interpolatableRobotFileVerifyInstructionsWithHiddenFieldsSchema,
71
+ } = robotDefinition
95
72
 
96
- export type InterpolatableRobotFileVerifyInstructionsInput = z.input<
97
- typeof interpolatableRobotFileVerifyInstructionsSchema
98
- >
73
+ type Instructions = RobotSchemaVariantTypes<typeof robotDefinition>
99
74
 
100
- export const interpolatableRobotFileVerifyInstructionsWithHiddenFieldsSchema = interpolateRobot(
101
- robotFileVerifyInstructionsWithHiddenFieldsSchema,
102
- )
103
- export type InterpolatableRobotFileVerifyInstructionsWithHiddenFields = z.infer<
104
- typeof interpolatableRobotFileVerifyInstructionsWithHiddenFieldsSchema
105
- >
106
- export type InterpolatableRobotFileVerifyInstructionsWithHiddenFieldsInput = z.input<
107
- typeof interpolatableRobotFileVerifyInstructionsWithHiddenFieldsSchema
108
- >
75
+ export type RobotFileVerifyInstructions = Instructions['output']
76
+ export type RobotFileVerifyInstructionsWithHiddenFields = Instructions['hiddenOutput']
77
+ export type InterpolatableRobotFileVerifyInstructions = Instructions['interpolatableInput']
78
+ export type InterpolatableRobotFileVerifyInstructionsInput = Instructions['interpolatableInput']
79
+ export type InterpolatableRobotFileVerifyInstructionsWithHiddenFields =
80
+ Instructions['interpolatableHiddenOutput']
81
+ export type InterpolatableRobotFileVerifyInstructionsWithHiddenFieldsInput =
82
+ Instructions['interpolatableHiddenInput']
@@ -1,44 +1,40 @@
1
- import type { RobotMetaInput } from './_instructions-primitives.ts'
1
+ import type {
2
+ RobotDefinitionWithHiddenFields,
3
+ RobotMetaInput,
4
+ RobotSchemaVariantTypes,
5
+ } from './_instructions-primitives.ts'
2
6
 
3
7
  import { z } from 'zod'
4
8
 
5
- import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
9
+ import {
10
+ createProcessingExample,
11
+ defineRobotWithHiddenFields,
12
+ robotBase,
13
+ robotFileFilteringMeta,
14
+ robotParameterDocs,
15
+ robotUse,
16
+ } from './_instructions-primitives.ts'
6
17
 
7
18
  export const meta: RobotMetaInput = {
8
- bytescount: 1,
19
+ ...robotFileFilteringMeta,
9
20
  description:
10
- 'While 100% security is a myth, having /file/virusscan as a gatekeeper bot helps reject millions of trojans, viruses, malware &amp; other malicious threats before they reach your platform.',
11
- discount_factor: 1,
12
- discount_pct: 0,
13
- example_code: {
14
- steps: {
15
- scanned: {
16
- robot: '/file/virusscan',
17
- use: ':original',
18
- error_on_decline: true,
19
- error_msg: 'At least one of the uploaded files is malicious and was declined',
20
- },
21
- },
22
- },
21
+ 'While 100% security is a myth, having /file/virusscan as a gatekeeper bot helps reject millions of trojans, viruses, malware & other malicious threats before they reach your platform.',
22
+ example_code: createProcessingExample('scanned', '/file/virusscan', {
23
+ error_on_decline: true,
24
+ error_msg: 'At least one of the uploaded files is malicious and was declined',
25
+ }),
23
26
  example_code_description:
24
27
  'Scan uploaded files and throw an error if a malicious file is detected:',
25
- minimum_charge: 1048576,
26
28
  ogimage: '/assets/images/robots/ogimages/file-virusscan.jpg',
27
- output_factor: 1,
28
- override_lvl1: 'File Filtering',
29
29
  purpose_sentence:
30
- 'rejects millions of trojans, viruses, malware &amp; other malicious threats before they reach your platform',
30
+ 'rejects millions of trojans, viruses, malware & other malicious threats before they reach your platform',
31
31
  purpose_verb: 'scan',
32
32
  purpose_word: 'scan for viruses and reject malware',
33
33
  purpose_words: 'Scan files for viruses',
34
- service_slug: 'file-filtering',
35
- slot_count: 16,
36
34
  title: 'Scan files for viruses',
37
- typical_file_size_mb: 1.2,
38
- typical_file_type: 'file',
39
35
  name: 'FileVirusscanRobot',
40
- priceFactor: 1,
41
36
  queueSlotCount: 16,
37
+ preserveInputFileUrls: true,
42
38
  minimumCharge: 1048576,
43
39
  lazyLoad: true,
44
40
  installVersionFile:
@@ -46,17 +42,13 @@ export const meta: RobotMetaInput = {
46
42
  ? process.env.API2_CLAMD_INSTALL_VERSION_FILE
47
43
  : '',
48
44
  isAllowedForUrlTransform: false,
49
- trackOutputFileSize: true,
50
- isInternal: false,
51
- removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
52
- stage: 'ga',
53
45
  }
54
46
 
55
47
  export const robotFileVirusscanInstructionsSchema = robotBase
56
48
  .merge(robotUse)
57
49
  .extend({
58
50
  robot: z.literal('/file/virusscan').describe(`
59
- This <dfn>Robot</dfn> is built on top of [ClamAV](https://www.clamav.net/), the best open source antivirus engine available. We update its signatures on a daily basis.
51
+ This <dfn>Robot</dfn> is built on top of [ClamAV](https://www.clamav.net/), the best open source antivirus engine available. We update its signatures on a daily basis.
60
52
 
61
53
  By default, this <dfn>Robot</dfn> excludes all malicious files from further processing without any additional notification. This behavior can be changed by setting \`error_on_decline\` to \`true\`, which will stop <dfn>Assemblies</dfn> as soon as malicious files are found. Such <dfn>Assemblies</dfn> will then be marked with an error.
62
54
 
@@ -65,52 +57,42 @@ We allow the use of industry standard [EICAR files](https://www.eicar.org/downlo
65
57
  error_on_decline: z
66
58
  .boolean()
67
59
  .default(false)
68
- .describe(`
69
- If this is set to \`true\` and one or more files are declined, the Assembly will be stopped and marked with an error.
70
- `),
60
+ .describe(robotParameterDocs.error_on_decline.description),
71
61
  error_msg: z
72
62
  .string()
73
63
  .default('One of your files was declined')
74
- .describe(`
75
- The error message shown to your users (such as by Uppy) when a file is declined and \`error_on_decline\` is set to \`true\`.
76
- `),
64
+ .describe(robotParameterDocs.error_msg.description),
77
65
  })
78
66
  .strict()
79
67
 
80
- export const robotFileVirusscanInstructionsWithHiddenFieldsSchema =
81
- robotFileVirusscanInstructionsSchema.extend({
82
- result: z
83
- .union([z.literal('debug'), robotFileVirusscanInstructionsSchema.shape.result])
84
- .optional(),
85
- can_use_daemon_fallback: z
86
- .boolean()
87
- .optional()
88
- .describe(`
68
+ const hiddenFields = {
69
+ can_use_daemon_fallback: z
70
+ .boolean()
71
+ .optional()
72
+ .describe(`
89
73
  Allow the robot to use a daemon fallback mechanism if the primary scanning method fails.
90
74
  `),
91
- })
75
+ }
92
76
 
93
- export type RobotFileVirusscanInstructions = z.infer<typeof robotFileVirusscanInstructionsSchema>
94
- export type RobotFileVirusscanInstructionsWithHiddenFields = z.infer<
95
- typeof robotFileVirusscanInstructionsWithHiddenFieldsSchema
96
- >
77
+ export const robotDefinition: RobotDefinitionWithHiddenFields<
78
+ typeof robotFileVirusscanInstructionsSchema.shape,
79
+ typeof hiddenFields
80
+ > = defineRobotWithHiddenFields(meta, robotFileVirusscanInstructionsSchema, hiddenFields)
97
81
 
98
- export const interpolatableRobotFileVirusscanInstructionsSchema = interpolateRobot(
99
- robotFileVirusscanInstructionsSchema,
100
- )
101
- export type InterpolatableRobotFileVirusscanInstructions =
102
- InterpolatableRobotFileVirusscanInstructionsInput
82
+ export const {
83
+ withHiddenFields: robotFileVirusscanInstructionsWithHiddenFieldsSchema,
84
+ interpolatable: interpolatableRobotFileVirusscanInstructionsSchema,
85
+ interpolatableWithHiddenFields:
86
+ interpolatableRobotFileVirusscanInstructionsWithHiddenFieldsSchema,
87
+ } = robotDefinition
103
88
 
104
- export type InterpolatableRobotFileVirusscanInstructionsInput = z.input<
105
- typeof interpolatableRobotFileVirusscanInstructionsSchema
106
- >
89
+ type Instructions = RobotSchemaVariantTypes<typeof robotDefinition>
107
90
 
108
- export const interpolatableRobotFileVirusscanInstructionsWithHiddenFieldsSchema = interpolateRobot(
109
- robotFileVirusscanInstructionsWithHiddenFieldsSchema,
110
- )
111
- export type InterpolatableRobotFileVirusscanInstructionsWithHiddenFields = z.infer<
112
- typeof interpolatableRobotFileVirusscanInstructionsWithHiddenFieldsSchema
113
- >
114
- export type InterpolatableRobotFileVirusscanInstructionsWithHiddenFieldsInput = z.input<
115
- typeof interpolatableRobotFileVirusscanInstructionsWithHiddenFieldsSchema
116
- >
91
+ export type RobotFileVirusscanInstructions = Instructions['output']
92
+ export type RobotFileVirusscanInstructionsWithHiddenFields = Instructions['hiddenOutput']
93
+ export type InterpolatableRobotFileVirusscanInstructions = Instructions['interpolatableInput']
94
+ export type InterpolatableRobotFileVirusscanInstructionsInput = Instructions['interpolatableInput']
95
+ export type InterpolatableRobotFileVirusscanInstructionsWithHiddenFields =
96
+ Instructions['interpolatableHiddenOutput']
97
+ export type InterpolatableRobotFileVirusscanInstructionsWithHiddenFieldsInput =
98
+ Instructions['interpolatableHiddenInput']
@@ -1,43 +1,35 @@
1
- import type { RobotMetaInput } from './_instructions-primitives.ts'
1
+ import type { RobotMetaInput, RobotSchemaVariantTypes } from './_instructions-primitives.ts'
2
2
 
3
3
  import { z } from 'zod'
4
4
 
5
- import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
+ import {
6
+ createProcessingExample,
7
+ createRobotSchemaVariants,
8
+ robotBase,
9
+ robotImageProcessingMeta,
10
+ robotUse,
11
+ } from './_instructions-primitives.ts'
6
12
 
7
13
  export const meta: RobotMetaInput = {
8
- bytescount: 4,
9
- discount_factor: 0.25,
10
- discount_pct: 75,
11
- example_code: {
12
- steps: {
13
- watermarked: {
14
- robot: '/file/watermark',
15
- use: ':original',
16
- randomize: true,
17
- },
18
- },
19
- },
14
+ ...robotImageProcessingMeta,
15
+ example_code: createProcessingExample('watermarked', '/file/watermark', {
16
+ randomize: true,
17
+ }),
20
18
  example_code_description: 'Apply randomized watermarking to uploaded files:',
21
- minimum_charge: 0,
22
- output_factor: 1,
23
- override_lvl1: 'Image Manipulation',
19
+ extended_description: `
20
+ Watermarking is best effort. Unsupported file types, or files that cannot be processed, are returned unchanged. An Assembly can complete successfully without a watermark being applied.
21
+ `,
24
22
  purpose_sentence: 'applies randomized watermarks to uploaded media',
25
23
  purpose_verb: 'write',
26
24
  purpose_word: 'watermark files',
27
25
  purpose_words: 'Watermark files',
28
- service_slug: 'image-manipulation',
29
- slot_count: 20,
30
26
  title: 'Apply watermarks to files',
31
27
  typical_file_size_mb: 1.2,
32
28
  typical_file_type: 'file',
33
29
  name: 'FileWatermarkRobot',
34
30
  priceFactor: 4,
35
31
  queueSlotCount: 20,
36
- isAllowedForUrlTransform: true,
37
32
  trackOutputFileSize: false,
38
- isInternal: false,
39
- removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
40
- stage: 'ga',
41
33
  }
42
34
 
43
35
  export const robotFileWatermarkInstructionsSchema = robotBase
@@ -48,34 +40,23 @@ export const robotFileWatermarkInstructionsSchema = robotBase
48
40
  })
49
41
  .strict()
50
42
 
51
- export const robotFileWatermarkInstructionsWithHiddenFieldsSchema =
52
- robotFileWatermarkInstructionsSchema.extend({
53
- result: z
54
- .union([z.literal('debug'), robotFileWatermarkInstructionsSchema.shape.result])
55
- .optional(),
56
- })
57
-
58
- export type RobotFileWatermarkInstructions = z.infer<typeof robotFileWatermarkInstructionsSchema>
59
- export type RobotFileWatermarkInstructionsWithHiddenFields = z.infer<
60
- typeof robotFileWatermarkInstructionsWithHiddenFieldsSchema
61
- >
62
-
63
- export const interpolatableRobotFileWatermarkInstructionsSchema = interpolateRobot(
64
- robotFileWatermarkInstructionsSchema,
65
- )
66
- export type InterpolatableRobotFileWatermarkInstructions =
67
- InterpolatableRobotFileWatermarkInstructionsInput
68
-
69
- export type InterpolatableRobotFileWatermarkInstructionsInput = z.input<
70
- typeof interpolatableRobotFileWatermarkInstructionsSchema
71
- >
72
-
73
- export const interpolatableRobotFileWatermarkInstructionsWithHiddenFieldsSchema = interpolateRobot(
74
- robotFileWatermarkInstructionsWithHiddenFieldsSchema,
75
- )
76
- export type InterpolatableRobotFileWatermarkInstructionsWithHiddenFields = z.infer<
77
- typeof interpolatableRobotFileWatermarkInstructionsWithHiddenFieldsSchema
78
- >
79
- export type InterpolatableRobotFileWatermarkInstructionsWithHiddenFieldsInput = z.input<
80
- typeof interpolatableRobotFileWatermarkInstructionsWithHiddenFieldsSchema
81
- >
43
+ const schemaVariants: ReturnType<
44
+ typeof createRobotSchemaVariants<typeof robotFileWatermarkInstructionsSchema.shape>
45
+ > = createRobotSchemaVariants(robotFileWatermarkInstructionsSchema)
46
+ export const {
47
+ withHiddenFields: robotFileWatermarkInstructionsWithHiddenFieldsSchema,
48
+ interpolatable: interpolatableRobotFileWatermarkInstructionsSchema,
49
+ interpolatableWithHiddenFields:
50
+ interpolatableRobotFileWatermarkInstructionsWithHiddenFieldsSchema,
51
+ } = schemaVariants
52
+
53
+ type Instructions = RobotSchemaVariantTypes<typeof schemaVariants>
54
+
55
+ export type RobotFileWatermarkInstructions = Instructions['output']
56
+ export type RobotFileWatermarkInstructionsWithHiddenFields = Instructions['hiddenOutput']
57
+ export type InterpolatableRobotFileWatermarkInstructions = Instructions['interpolatableInput']
58
+ export type InterpolatableRobotFileWatermarkInstructionsInput = Instructions['interpolatableInput']
59
+ export type InterpolatableRobotFileWatermarkInstructionsWithHiddenFields =
60
+ Instructions['interpolatableHiddenOutput']
61
+ export type InterpolatableRobotFileWatermarkInstructionsWithHiddenFieldsInput =
62
+ Instructions['interpolatableHiddenInput']
@@ -1,51 +1,32 @@
1
- import type { RobotMetaInput } from './_instructions-primitives.ts'
1
+ import type {
2
+ RobotDefinition,
3
+ RobotMetaInput,
4
+ RobotSchemaVariantTypes,
5
+ } from './_instructions-primitives.ts'
2
6
 
3
7
  import { z } from 'zod'
4
8
 
5
9
  import {
10
+ createStorageImportExample,
11
+ defineRobot,
6
12
  ftpBase,
7
- interpolateRobot,
8
13
  path,
9
14
  robotBase,
10
15
  robotImport,
16
+ robotImportMeta,
11
17
  } from './_instructions-primitives.ts'
12
18
 
13
19
  export const meta: RobotMetaInput = {
14
- bytescount: 10,
15
- discount_factor: 0.1,
16
- discount_pct: 90,
17
- example_code: {
18
- steps: {
19
- imported: {
20
- robot: '/ftp/import',
21
- credentials: 'YOUR_FTP_CREDENTIALS',
22
- path: 'path/to/files/',
23
- },
24
- },
25
- },
20
+ ...robotImportMeta,
21
+ example_code: createStorageImportExample('/ftp/import', 'YOUR_FTP_CREDENTIALS', false),
26
22
  example_code_description:
27
23
  'Import files from the `path/to/files` directory and its subdirectories:',
28
- minimum_charge: 0,
29
- output_factor: 1,
30
- override_lvl1: 'File Importing',
31
24
  purpose_sentence:
32
25
  'imports whole libraries of files from your FTP servers into Transloadit. This Robot relies on password access. For more security, consider our /sftp/import Robot',
33
- purpose_verb: 'import',
34
26
  purpose_word: 'FTP servers',
35
27
  purpose_words: 'Import files from FTP servers',
36
- service_slug: 'file-importing',
37
- slot_count: 20,
38
28
  title: 'Import files from FTP servers',
39
- typical_file_size_mb: 1.2,
40
- typical_file_type: 'file',
41
29
  name: 'FtpImportRobot',
42
- priceFactor: 6.6666,
43
- queueSlotCount: 20,
44
- isAllowedForUrlTransform: true,
45
- trackOutputFileSize: false,
46
- isInternal: false,
47
- removeJobResultFilesFromDiskRightAfterStoringOnS3: true,
48
- stage: 'ga',
49
30
  }
50
31
 
51
32
  export const robotFtpImportInstructionsSchema = robotBase
@@ -65,31 +46,22 @@ Determines if passive mode should be used for the FTP connection.
65
46
  })
66
47
  .strict()
67
48
 
68
- export const robotFtpImportInstructionsWithHiddenFieldsSchema =
69
- robotFtpImportInstructionsSchema.extend({
70
- result: z.union([z.literal('debug'), robotFtpImportInstructionsSchema.shape.result]).optional(),
71
- })
72
-
73
- export type RobotFtpImportInstructions = z.infer<typeof robotFtpImportInstructionsSchema>
74
- export type RobotFtpImportInstructionsWithHiddenFields = z.infer<
75
- typeof robotFtpImportInstructionsWithHiddenFieldsSchema
76
- >
49
+ export const robotDefinition: RobotDefinition<typeof robotFtpImportInstructionsSchema.shape> =
50
+ defineRobot(meta, robotFtpImportInstructionsSchema)
77
51
 
78
- export const interpolatableRobotFtpImportInstructionsSchema = interpolateRobot(
79
- robotFtpImportInstructionsSchema,
80
- )
81
- export type InterpolatableRobotFtpImportInstructions = InterpolatableRobotFtpImportInstructionsInput
52
+ export const {
53
+ withHiddenFields: robotFtpImportInstructionsWithHiddenFieldsSchema,
54
+ interpolatable: interpolatableRobotFtpImportInstructionsSchema,
55
+ interpolatableWithHiddenFields: interpolatableRobotFtpImportInstructionsWithHiddenFieldsSchema,
56
+ } = robotDefinition
82
57
 
83
- export type InterpolatableRobotFtpImportInstructionsInput = z.input<
84
- typeof interpolatableRobotFtpImportInstructionsSchema
85
- >
58
+ type Instructions = RobotSchemaVariantTypes<typeof robotDefinition>
86
59
 
87
- export const interpolatableRobotFtpImportInstructionsWithHiddenFieldsSchema = interpolateRobot(
88
- robotFtpImportInstructionsWithHiddenFieldsSchema,
89
- )
90
- export type InterpolatableRobotFtpImportInstructionsWithHiddenFields = z.infer<
91
- typeof interpolatableRobotFtpImportInstructionsWithHiddenFieldsSchema
92
- >
93
- export type InterpolatableRobotFtpImportInstructionsWithHiddenFieldsInput = z.input<
94
- typeof interpolatableRobotFtpImportInstructionsWithHiddenFieldsSchema
95
- >
60
+ export type RobotFtpImportInstructions = Instructions['output']
61
+ export type RobotFtpImportInstructionsWithHiddenFields = Instructions['hiddenOutput']
62
+ export type InterpolatableRobotFtpImportInstructions = Instructions['interpolatableInput']
63
+ export type InterpolatableRobotFtpImportInstructionsInput = Instructions['interpolatableInput']
64
+ export type InterpolatableRobotFtpImportInstructionsWithHiddenFields =
65
+ Instructions['interpolatableHiddenOutput']
66
+ export type InterpolatableRobotFtpImportInstructionsWithHiddenFieldsInput =
67
+ Instructions['interpolatableHiddenInput']
@@ -1,45 +1,30 @@
1
- import type { RobotMetaInput } from './_instructions-primitives.ts'
1
+ import type {
2
+ RobotDefinitionWithHiddenFields,
3
+ RobotMetaInput,
4
+ RobotSchemaVariantTypes,
5
+ } from './_instructions-primitives.ts'
2
6
 
3
7
  import { z } from 'zod'
4
8
 
5
- import { ftpBase, interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
9
+ import {
10
+ createStorageStoreExample,
11
+ defineRobotWithHiddenFields,
12
+ ftpBase,
13
+ robotBase,
14
+ robotStoreMeta,
15
+ robotUse,
16
+ } from './_instructions-primitives.ts'
6
17
 
7
18
  export const meta: RobotMetaInput = {
8
- bytescount: 6,
9
- discount_factor: 0.15000150001500018,
10
- discount_pct: 84.99984999849998,
11
- example_code: {
12
- steps: {
13
- exported: {
14
- robot: '/ftp/store',
15
- use: ':original',
16
- credentials: 'YOUR_FTP_CREDENTIALS',
17
- path: 'my_target_folder/${unique_prefix}/${file.url_name}',
18
- },
19
- },
20
- },
19
+ ...robotStoreMeta,
20
+ example_code: createStorageStoreExample('/ftp/store', 'YOUR_FTP_CREDENTIALS'),
21
21
  example_code_description: 'Export uploaded files to `my_target_folder` on an FTP server:',
22
- minimum_charge: 0,
23
- output_factor: 1,
24
- override_lvl1: 'File Exporting',
25
22
  purpose_sentence:
26
23
  'exports encoding results to your FTP servers. This Robot relies on password access. For more security, consider our /sftp/store Robot',
27
- purpose_verb: 'export',
28
24
  purpose_word: 'FTP servers',
29
25
  purpose_words: 'Export files to FTP servers',
30
- service_slug: 'file-exporting',
31
- slot_count: 10,
32
26
  title: 'Export files to FTP servers',
33
- typical_file_size_mb: 1.2,
34
- typical_file_type: 'file',
35
27
  name: 'FtpStoreRobot',
36
- priceFactor: 6.6666,
37
- queueSlotCount: 10,
38
- isAllowedForUrlTransform: true,
39
- trackOutputFileSize: false,
40
- isInternal: false,
41
- removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
42
- stage: 'ga',
43
28
  }
44
29
 
45
30
  export const robotFtpStoreInstructionsSchema = robotBase
@@ -76,44 +61,40 @@ Determines whether to establish a secure connection to the FTP server using SSL.
76
61
  })
77
62
  .strict()
78
63
 
79
- export const robotFtpStoreInstructionsWithHiddenFieldsSchema =
80
- robotFtpStoreInstructionsSchema.extend({
81
- result: z.union([z.literal('debug'), robotFtpStoreInstructionsSchema.shape.result]).optional(),
82
- use_remote_utime: z
83
- .boolean()
84
- .optional()
85
- .describe(`
64
+ const hiddenFields = {
65
+ use_remote_utime: z
66
+ .boolean()
67
+ .optional()
68
+ .describe(`
86
69
  Use the remote file's modification time instead of the current time when storing the file.
87
70
  `),
88
- version: z
89
- .union([z.string(), z.number()])
90
- .optional()
91
- .describe(`
71
+ version: z
72
+ .union([z.string(), z.number()])
73
+ .optional()
74
+ .describe(`
92
75
  Version identifier for the underlying tool used (2 is ncftp, 1 is ftp).
93
76
  `),
94
- allowNetwork: z.string().optional(), // For internal test purposes
95
- })
77
+ allowNetwork: z.string().optional(), // For internal test purposes
78
+ }
96
79
 
97
- export type RobotFtpStoreInstructions = z.infer<typeof robotFtpStoreInstructionsSchema>
98
- export type RobotFtpStoreInstructionsWithHiddenFields = z.infer<
99
- typeof robotFtpStoreInstructionsWithHiddenFieldsSchema
100
- >
80
+ export const robotDefinition: RobotDefinitionWithHiddenFields<
81
+ typeof robotFtpStoreInstructionsSchema.shape,
82
+ typeof hiddenFields
83
+ > = defineRobotWithHiddenFields(meta, robotFtpStoreInstructionsSchema, hiddenFields)
101
84
 
102
- export const interpolatableRobotFtpStoreInstructionsSchema = interpolateRobot(
103
- robotFtpStoreInstructionsSchema,
104
- )
105
- export type InterpolatableRobotFtpStoreInstructions = InterpolatableRobotFtpStoreInstructionsInput
85
+ export const {
86
+ withHiddenFields: robotFtpStoreInstructionsWithHiddenFieldsSchema,
87
+ interpolatable: interpolatableRobotFtpStoreInstructionsSchema,
88
+ interpolatableWithHiddenFields: interpolatableRobotFtpStoreInstructionsWithHiddenFieldsSchema,
89
+ } = robotDefinition
106
90
 
107
- export type InterpolatableRobotFtpStoreInstructionsInput = z.input<
108
- typeof interpolatableRobotFtpStoreInstructionsSchema
109
- >
91
+ type Instructions = RobotSchemaVariantTypes<typeof robotDefinition>
110
92
 
111
- export const interpolatableRobotFtpStoreInstructionsWithHiddenFieldsSchema = interpolateRobot(
112
- robotFtpStoreInstructionsWithHiddenFieldsSchema,
113
- )
114
- export type InterpolatableRobotFtpStoreInstructionsWithHiddenFields = z.infer<
115
- typeof interpolatableRobotFtpStoreInstructionsWithHiddenFieldsSchema
116
- >
117
- export type InterpolatableRobotFtpStoreInstructionsWithHiddenFieldsInput = z.input<
118
- typeof interpolatableRobotFtpStoreInstructionsWithHiddenFieldsSchema
119
- >
93
+ export type RobotFtpStoreInstructions = Instructions['output']
94
+ export type RobotFtpStoreInstructionsWithHiddenFields = Instructions['hiddenOutput']
95
+ export type InterpolatableRobotFtpStoreInstructions = Instructions['interpolatableInput']
96
+ export type InterpolatableRobotFtpStoreInstructionsInput = Instructions['interpolatableInput']
97
+ export type InterpolatableRobotFtpStoreInstructionsWithHiddenFields =
98
+ Instructions['interpolatableHiddenOutput']
99
+ export type InterpolatableRobotFtpStoreInstructionsWithHiddenFieldsInput =
100
+ Instructions['interpolatableHiddenInput']